From 8b82935514f83fbb3f16ee9ad6b80efc2b15a2ef Mon Sep 17 00:00:00 2001 From: Seoyeon Kim Date: Wed, 17 Jul 2024 20:31:01 +0900 Subject: [PATCH 001/198] [NUI] Revert the legacy Autofill code - NUI Autofill code was not removed together with dali ones. - Now, all related codes should be deleted because there's no use case anywhere and they don't have their internal implementation. Signed-off-by: Seoyeon Kim --- .../Common/AuthenticationSignalType.cs | 114 ----- .../internal/Common/ListEventSignalType.cs | 110 ----- .../Interop.AuthenticationSignalType.cs | 47 -- .../Interop/Interop.AutofillContainer.cs | 77 --- .../Interop/Interop.ListEventSignalType.cs | 47 -- .../src/public/Input/AutofillContainer.cs | 464 ------------------ .../Common/TSAuthenticationSignalType.cs | 188 ------- .../internal/Common/TSListEventSignalType.cs | 52 -- .../public/Input/TSAutofillContainer.cs | 29 -- 9 files changed, 1128 deletions(-) delete mode 100755 src/Tizen.NUI/src/internal/Common/AuthenticationSignalType.cs delete mode 100755 src/Tizen.NUI/src/internal/Common/ListEventSignalType.cs delete mode 100755 src/Tizen.NUI/src/internal/Interop/Interop.AuthenticationSignalType.cs delete mode 100755 src/Tizen.NUI/src/internal/Interop/Interop.AutofillContainer.cs delete mode 100755 src/Tizen.NUI/src/internal/Interop/Interop.ListEventSignalType.cs delete mode 100755 src/Tizen.NUI/src/public/Input/AutofillContainer.cs delete mode 100755 test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSAuthenticationSignalType.cs delete mode 100755 test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSListEventSignalType.cs delete mode 100755 test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Input/TSAutofillContainer.cs diff --git a/src/Tizen.NUI/src/internal/Common/AuthenticationSignalType.cs b/src/Tizen.NUI/src/internal/Common/AuthenticationSignalType.cs deleted file mode 100755 index 1d82e1411e7..00000000000 --- a/src/Tizen.NUI/src/internal/Common/AuthenticationSignalType.cs +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Copyright(c) 2021 Samsung Electronics Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ -using System.ComponentModel; - -namespace Tizen.NUI -{ - internal class AuthenticationSignalType : Disposable - { - internal AuthenticationSignalType(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) - { - } - - /// - /// Dispose - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) - { - Interop.AuthenticationSignalType.DeleteAuthenticationSignalType(swigCPtr); - } - - /// - /// Queries whether there are any connected slots. - /// - /// True if there are any slots connected to the signal - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public bool Empty() - { - bool ret = Interop.AuthenticationSignalType.Empty(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Queries the number of slots. - /// - /// The number of slots connected to this signal - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public uint GetConnectionCount() - { - uint ret = Interop.AuthenticationSignalType.GetConnectionCount(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Connects a member function. - /// - /// The member function to connect - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public void Connect(System.Delegate func) - { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); - { - Interop.AuthenticationSignalType.Connect(SwigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - } - - /// - /// Disconnects a function. - /// - /// The function to disconnect - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public void Disconnect(System.Delegate func) - { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); - { - Interop.AuthenticationSignalType.Disconnect(SwigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - } - - /// - /// Emits the signal. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public void Emit(AutofillContainer arg) - { - Interop.AuthenticationSignalType.Emit(SwigCPtr, AutofillContainer.getCPtr(arg)); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - - /// - /// The constructor. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public AuthenticationSignalType() : this(Interop.AuthenticationSignalType.NewAuthenticationSignalType(), true) - { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - } -} diff --git a/src/Tizen.NUI/src/internal/Common/ListEventSignalType.cs b/src/Tizen.NUI/src/internal/Common/ListEventSignalType.cs deleted file mode 100755 index 22e1c1e8650..00000000000 --- a/src/Tizen.NUI/src/internal/Common/ListEventSignalType.cs +++ /dev/null @@ -1,110 +0,0 @@ -/* - * Copyright(c) 2021 Samsung Electronics Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ -using System.ComponentModel; - -namespace Tizen.NUI -{ - internal class ListEventSignalType : Disposable - { - internal ListEventSignalType(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) - { - } - - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) - { - Interop.ListEventSignalType.DeleteListEventSignalType(swigCPtr); - } - - /// - /// Queries whether there are any connected slots. - /// - /// True if there are any slots connected to the signal - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public bool Empty() - { - bool ret = Interop.ListEventSignalType.Empty(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Queries the number of slots. - /// - /// The number of slots connected to this signal - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public uint GetConnectionCount() - { - uint ret = Interop.ListEventSignalType.GetConnectionCount(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Connects a function. - /// - /// The function to connect - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public void Connect(System.Delegate func) - { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); - { - Interop.ListEventSignalType.Connect(SwigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - } - - /// - /// Disconnects a function. - /// - /// The function to disconnect - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public void Disconnect(System.Delegate func) - { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); - { - Interop.ListEventSignalType.Disconnect(SwigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - } - - /// - /// Emits the signal. - /// - /// The first value to pass to callbacks - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public void Emit(BaseComponents.View arg1) - { - Interop.ListEventSignalType.Emit(SwigCPtr, BaseComponents.View.getCPtr(arg1)); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - - /// - /// The constructor. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public ListEventSignalType() : this(Interop.ListEventSignalType.NewListEventSignalType(), true) - { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - } -} diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.AuthenticationSignalType.cs b/src/Tizen.NUI/src/internal/Interop/Interop.AuthenticationSignalType.cs deleted file mode 100755 index 4af29196986..00000000000 --- a/src/Tizen.NUI/src/internal/Interop/Interop.AuthenticationSignalType.cs +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright(c) 2021 Samsung Electronics Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -namespace Tizen.NUI -{ - internal static partial class Interop - { - internal static partial class AuthenticationSignalType - { - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AuthenticationSignalType_Empty")] - [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] - public static extern bool Empty(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AuthenticationSignalType_GetConnectionCount")] - public static extern uint GetConnectionCount(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AuthenticationSignalType_Connect")] - public static extern void Connect(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AuthenticationSignalType_Disconnect")] - public static extern void Disconnect(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AuthenticationSignalType_Emit")] - public static extern void Emit(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_AuthenticationSignalType")] - public static extern global::System.IntPtr NewAuthenticationSignalType(); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_AuthenticationSignalType")] - public static extern void DeleteAuthenticationSignalType(global::System.Runtime.InteropServices.HandleRef jarg1); - } - } -} diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.AutofillContainer.cs b/src/Tizen.NUI/src/internal/Interop/Interop.AutofillContainer.cs deleted file mode 100755 index 3f7ceed8123..00000000000 --- a/src/Tizen.NUI/src/internal/Interop/Interop.AutofillContainer.cs +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Copyright(c) 2021 Samsung Electronics Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -namespace Tizen.NUI -{ - internal static partial class Interop - { - internal static partial class AutofillContainer - { - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_AutofillContainer_New")] - public static extern global::System.IntPtr New(string jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_AutofillContainer__SWIG_1")] - public static extern global::System.IntPtr NewAutofillContainer(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AutofillContainer_Assign")] - public static extern global::System.IntPtr Assign(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_AutofillContainer")] - public static extern void DeleteAutofillContainer(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AutofillContainer_DownCast")] - public static extern global::System.IntPtr DownCast(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_AutofillContainer_AddAutofillItem")] - public static extern void AddAutofillView(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, int jarg3, string jarg4, string jarg5, uint jarg6, bool jarg7); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_AutofillContainer_RemoveAutofillItem")] - public static extern void RemoveAutofillItem(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_AutofillContainer_SaveAutofillData")] - public static extern void SaveAutofillData(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_AutofillContainer_RequestFillData")] - public static extern void RequestFillData(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AutofillContainer_GetAutofillServiceName")] - public static extern string GetAutofillServiceName(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AutofillContainer_GetAutofillServiceMessage")] - public static extern string GetAutofillServiceMessage(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AutofillContainer_GetAutofillServiceImagePath")] - public static extern string GetAutofillServiceImagePath(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AutofillContainer_GetListCount")] - public static extern uint GetListItemCount(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AutofillContainer_GetListItem")] - public static extern string GetListItem(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_AutofillContainer_SetSelectedItem")] - public static extern void SetSelectedItem(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AutofillContainer_AutofillServiceShownSignal")] - public static extern global::System.IntPtr AutofillServiceEventSignal(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_AutofillContainer_AutofillListShownSignal")] - public static extern global::System.IntPtr AutofillListEventSignal(global::System.Runtime.InteropServices.HandleRef jarg1); - } - } -} diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.ListEventSignalType.cs b/src/Tizen.NUI/src/internal/Interop/Interop.ListEventSignalType.cs deleted file mode 100755 index 43846b2b2b0..00000000000 --- a/src/Tizen.NUI/src/internal/Interop/Interop.ListEventSignalType.cs +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright(c) 2021 Samsung Electronics Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -namespace Tizen.NUI -{ - internal static partial class Interop - { - internal static partial class ListEventSignalType - { - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ListShownSignalType_Empty")] - [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] - public static extern bool Empty(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ListShownSignalType_GetConnectionCount")] - public static extern uint GetConnectionCount(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ListShownSignalType_Connect")] - public static extern void Connect(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ListShownSignalType_Disconnect")] - public static extern void Disconnect(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ListShownSignalType_Emit")] - public static extern void Emit(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_ListShownSignalType")] - public static extern global::System.IntPtr NewListEventSignalType(); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_ListShownSignalType")] - public static extern void DeleteListEventSignalType(global::System.Runtime.InteropServices.HandleRef jarg1); - } - } -} diff --git a/src/Tizen.NUI/src/public/Input/AutofillContainer.cs b/src/Tizen.NUI/src/public/Input/AutofillContainer.cs deleted file mode 100755 index 3068a5c4d0b..00000000000 --- a/src/Tizen.NUI/src/public/Input/AutofillContainer.cs +++ /dev/null @@ -1,464 +0,0 @@ -/* - * Copyright(c) 2021 Samsung Electronics Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -using System; -using System.Runtime.InteropServices; -using System.ComponentModel; - -namespace Tizen.NUI -{ - /// - /// AutofillContainer controls several text input boxes. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public class AutofillContainer : BaseHandle - { - private AuthenticationEventCallbackType authenticationCallback; - private ListEventCallbackType listCallback; - - private event EventHandler authenticationEventHandler; - private event EventHandler listEventHandler; - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - private delegate void AuthenticationEventCallbackType(IntPtr autofillContainer); - private delegate void ListEventCallbackType(IntPtr control); - - /// - /// AutofillContainer Authentication Service Event. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public event EventHandler ServiceEvent - { - add - { - if (authenticationEventHandler == null) - { - authenticationCallback = OnServiceEvent; - AutofillServiceEventSignal().Connect(authenticationCallback); - } - - authenticationEventHandler += value; - } - remove - { - authenticationEventHandler -= value; - - if (authenticationEventHandler == null && authenticationCallback != null) - { - AutofillServiceEventSignal().Disconnect(authenticationCallback); - } - } - } - - /// - /// AutofillContainer Fill List Event. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public event EventHandler ListEvent - { - add - { - if (listEventHandler == null) - { - listCallback = OnListEvent; - AutofillListEventSignal().Connect(listCallback); - } - - listEventHandler += value; - } - remove - { - listEventHandler -= value; - - if (listEventHandler == null && listCallback != null) - { - AutofillListEventSignal().Disconnect(listCallback); - } - } - } - - /// - /// Constructor. - /// - /// The AutofillContainer name - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public AutofillContainer(string name) : this(Interop.AutofillContainer.New(name), true) - { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - - internal AutofillContainer(global::System.IntPtr cPtr, bool cMemoryOwn) : this(cPtr, cMemoryOwn, cMemoryOwn) - { - } - - internal AutofillContainer(global::System.IntPtr cPtr, bool cMemoryOwn, bool cRegister) : base(cPtr, cMemoryOwn, cRegister) - { - } - - internal AutofillContainer(AutofillContainer autofillContainer) : this(Interop.AutofillContainer.NewAutofillContainer(AutofillContainer.getCPtr(autofillContainer)), true, false) - { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - - internal AutofillContainer Assign(AutofillContainer autofillContainer) - { - AutofillContainer ret = new AutofillContainer(Interop.AutofillContainer.Assign(SwigCPtr, AutofillContainer.getCPtr(autofillContainer)), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - internal static AutofillContainer DownCast(BaseHandle handle) - { - AutofillContainer ret = new AutofillContainer(Interop.AutofillContainer.DownCast(BaseHandle.getCPtr(handle)), true); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Adds View and its Autofill item information to Autofill Container. - /// - /// The view to be added to Autofill Container - /// The Property to be filled automatically of each View - /// A unique ID that does not always change on each launching - /// An auxiliary means to guess heuristically what data is - /// The Hint - id (username), name, password, phone, credit card number, organization, and so on - /// Whether this information is a sensitive data or not - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public void AddAutofillView(BaseComponents.View view, int propertyIndex, string id, string label, AutofillContainer.ItemHint hint, bool isSensitive) - { - Interop.AutofillContainer.AddAutofillView(SwigCPtr, BaseComponents.View.getCPtr(view), propertyIndex, id, label, (uint)hint, isSensitive); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - - /// - /// Removes View and its AutofillItem information to Autofill Container. - /// - /// The view to be removed to Autofill Container - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public void RemoveAutofillItem(BaseComponents.View view) - { - Interop.AutofillContainer.RemoveAutofillItem(SwigCPtr, BaseComponents.View.getCPtr(view)); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - - /// - /// Stores autofill data. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public void SaveAutofillData() - { - Interop.AutofillContainer.SaveAutofillData(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - - /// - /// Sends a request for filling the data. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public void RequestFillData() - { - Interop.AutofillContainer.RequestFillData(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - - /// - /// Gets the Autofill Service Name. - /// - /// Autofill Service Name - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public string GetAutofillServiceName() - { - string ret = Interop.AutofillContainer.GetAutofillServiceName(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Gets the Autofill Service Message. - /// - /// Autofill Service Message - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public string GetAutofillServiceMessage() - { - string ret = Interop.AutofillContainer.GetAutofillServiceMessage(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Gets the Autofill Service Image Path. - /// - /// Autofill Service Image Path - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public string GetAutofillServiceImagePath() - { - string ret = Interop.AutofillContainer.GetAutofillServiceImagePath(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Gets the number of list items. (The presentation text of Autofill) - /// - /// The number of list items - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public uint GetListItemCount() - { - uint ret = Interop.AutofillContainer.GetListItemCount(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Gets the list item of the index. - /// - /// The index for the list - /// The list item of the index - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public string GetListItem(uint index) - { - string ret = Interop.AutofillContainer.GetListItem(SwigCPtr, index); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Sets the selected item to fill out. - /// - /// The selected item - /// 5 - public void SetSelectedItem(string selected) - { - Interop.AutofillContainer.SetSelectedItem(SwigCPtr, selected); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - - internal AuthenticationSignalType AutofillServiceEventSignal() - { - - AuthenticationSignalType ret = new AuthenticationSignalType(Interop.AutofillContainer.AutofillServiceEventSignal(SwigCPtr), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - internal ListEventSignalType AutofillListEventSignal() - { - ListEventSignalType ret = new ListEventSignalType(Interop.AutofillContainer.AutofillListEventSignal(SwigCPtr), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - /// - /// Dispose. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - protected override void Dispose(DisposeTypes type) - { - if (disposed) - { - return; - } - - //Release your own unmanaged resources here. - //You should not access any managed member here except static instance. - //because the execution order of Finalizes is non-deterministic. - if (this != null) - { - if (authenticationCallback != null) - { - AutofillServiceEventSignal().Disconnect(authenticationCallback); - } - - if (listCallback != null) - { - AutofillListEventSignal().Disconnect(listCallback); - } - } - - base.Dispose(type); - } - - /// This will not be public opened. - [EditorBrowsable(EditorBrowsableState.Never)] - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) - { - Interop.AutofillContainer.DeleteAutofillContainer(swigCPtr); - } - - private void OnServiceEvent(IntPtr autofillContainer) - { - AuthenticationEventArgs e = new AuthenticationEventArgs(); - e.AutofillContainer = Registry.GetManagedBaseHandleFromNativePtr(autofillContainer) as AutofillContainer; - - if (authenticationEventHandler != null) - { - authenticationEventHandler(this, e); - } - } - - private void OnListEvent(IntPtr control) - { - ListEventArgs e = new ListEventArgs(); - e.Control = Registry.GetManagedBaseHandleFromNativePtr(control) as BaseComponents.View; - - if (listEventHandler != null) - { - listEventHandler(this, e); - } - } - - /// - /// Event arguments that passed via the Authentication event. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public class AuthenticationEventArgs : EventArgs - { - /// - /// The instance of AutofillContainer - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public AutofillContainer AutofillContainer - { - get; - set; - } - } - - /// - /// AutofillContainer list event arguments. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public class ListEventArgs : EventArgs - { - /// - /// The instance of AutofillContainer - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public BaseComponents.View Control - { - get; - set; - } - - } - - /// - /// Enumeration for hint of the autofill item. - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - public enum ItemHint - { - /// - /// Autofill hint for a credit card expiration date - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - CreditCardExpirationData, - /// - /// Autofill hint for a credit card expiration day - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - CreditCardExpirationDay, - /// - /// Autofill hint for a credit card expiration month - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - CreditCardExpirationMonth, - /// - /// Autofill hint for a credit card expiration year - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - CreditCardExpirationYear, - /// - /// Autofill hint for a credit card number - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - CreditCardNumber, - /// - /// Autofill hint for an email address - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - EmailAddress, - /// - /// Autofill hint for a user's real name - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - Name, - /// - /// Autofill hint for a phone number - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - Phone, - /// - /// Autofill hint for a postal address - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - PostalAddress, - /// - /// Autofill hint for a postal code - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - PostalCode, - /// - /// Autofill hint for a user's ID - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - Id, - /// - /// Autofill hint for password - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - Password, - /// - /// Autofill hint for a credit card security code - /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. - [EditorBrowsable(EditorBrowsableState.Never)] - CreditCardSecurityCode - } - } -} diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSAuthenticationSignalType.cs b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSAuthenticationSignalType.cs deleted file mode 100755 index b263b54f597..00000000000 --- a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSAuthenticationSignalType.cs +++ /dev/null @@ -1,188 +0,0 @@ -using global::System; -using NUnit.Framework; -using NUnit.Framework.TUnit; -using Tizen.NUI.Components; -using Tizen.NUI.BaseComponents; - -namespace Tizen.NUI.Devel.Tests -{ - using tlog = Tizen.Log; - - [TestFixture] - [Description("internal/Common/AuthenticationSignalType")] - public class InternalAuthenticationSignalTypeTest - { - private const string tag = "NUITEST"; - - private delegate bool dummyCallback(IntPtr signal); - private bool OnDummyCallback(IntPtr data) - { - return false; - } - - [SetUp] - public void Init() - { - tlog.Info(tag, "Init() is called!"); - } - - [TearDown] - public void Destroy() - { - tlog.Info(tag, "Destroy() is called!"); - } - - [Test] - [Category("P1")] - [Description("AuthenticationSignalType constructor.")] - [Property("SPEC", "Tizen.NUI.AuthenticationSignalType.AuthenticationSignalType C")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "CONSTR")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void AuthenticationSignalTypeConstructor() - { - tlog.Debug(tag, $"AuthenticationSignalTypeConstructor START"); - - using (View view = new View()) - { - var testingTarget = new AuthenticationSignalType(view.SwigCPtr.Handle, false); - Assert.IsNotNull(testingTarget, "Should be not null!"); - Assert.IsInstanceOf(testingTarget, "Should be an Instance of AuthenticationSignalType!"); - - testingTarget.Dispose(); - } - - tlog.Debug(tag, $"AuthenticationSignalTypeConstructor END (OK)"); - } - - // [Test] - // [Category("P1")] - // [Description("AuthenticationSignalType Empty.")] - // [Property("SPEC", "Tizen.NUI.AuthenticationSignalType.Empty M")] - // [Property("SPEC_URL", "-")] - // [Property("CRITERIA", "MR")] - // [Property("AUTHOR", "guowei.wang@samsung.com")] - // public void AuthenticationSignalTypeEmpty() - // { - // tlog.Debug(tag, $"AuthenticationSignalTypeEmpty START"); - - // var testingTarget = new AuthenticationSignalType(); - // Assert.IsNotNull(testingTarget, "Should be not null!"); - // Assert.IsInstanceOf(testingTarget, "Should be an Instance of AuthenticationSignalType!"); - - // try - // { - // testingTarget.Empty(); - // } - // catch (Exception e) - // { - // tlog.Debug(tag, e.Message.ToString()); - // Assert.Fail("Caught Exception: Failed!"); - // } - - // testingTarget.Dispose(); - - // tlog.Debug(tag, $"AuthenticationSignalTypeEmpty END (OK)"); - // } - - // [Test] - // [Category("P1")] - // [Description("AuthenticationSignalType GetConnectionCount.")] - // [Property("SPEC", "Tizen.NUI.AuthenticationSignalType.GetConnectionCount M")] - // [Property("SPEC_URL", "-")] - // [Property("CRITERIA", "MR")] - // [Property("AUTHOR", "guowei.wang@samsung.com")] - // public void AuthenticationSignalTypeGetConnectionCount() - // { - // tlog.Debug(tag, $"AuthenticationSignalTypeGetConnectionCount START"); - - // var testingTarget = new AuthenticationSignalType(); - // Assert.IsNotNull(testingTarget, "Should be not null!"); - // Assert.IsInstanceOf(testingTarget, "Should be an Instance of AuthenticationSignalType!"); - - // try - // { - // testingTarget.GetConnectionCount(); - // } - // catch (Exception e) - // { - // tlog.Debug(tag, e.Message.ToString()); - // Assert.Fail("Caught Exception: Failed!"); - // } - - // testingTarget.Dispose(); - - // tlog.Debug(tag, $"AuthenticationSignalTypeGetConnectionCount END (OK)"); - // } - - // [Test] - // [Category("P1")] - // [Description("AuthenticationSignalType Connect.")] - // [Property("SPEC", "Tizen.NUI.AuthenticationSignalType.Connect M")] - // [Property("SPEC_URL", "-")] - // [Property("CRITERIA", "MR")] - // [Property("AUTHOR", "guowei.wang@samsung.com")] - // public void AuthenticationSignalTypeConnect() - // { - // tlog.Debug(tag, $"AuthenticationSignalTypeConnect START"); - - // var testingTarget = new AuthenticationSignalType(); - // Assert.IsNotNull(testingTarget, "Should be not null!"); - // Assert.IsInstanceOf(testingTarget, "Should be an Instance of AuthenticationSignalType!"); - - // try - // { - // dummyCallback callback = OnDummyCallback; - // testingTarget.Connect(callback); - // testingTarget.Disconnect(callback); - // } - // catch (Exception e) - // { - // tlog.Debug(tag, e.Message.ToString()); - // Assert.Fail("Caught Exception: Failed!"); - // } - - // testingTarget.Dispose(); - - // tlog.Debug(tag, $"AuthenticationSignalTypeConnect END (OK)"); - // } - - // [Test] - // [Category("P1")] - // [Description("AuthenticationSignalType Emit.")] - // [Property("SPEC", "Tizen.NUI.AuthenticationSignalType.Emit M")] - // [Property("SPEC_URL", "-")] - // [Property("CRITERIA", "MR")] - // [Property("AUTHOR", "guowei.wang@samsung.com")] - // [Obsolete] - // public void AuthenticationSignalTypeEmit() - // { - // tlog.Debug(tag, $"AuthenticationSignalTypeEmit START"); - // var currentPid = global::System.Diagnostics.Process.GetCurrentProcess().Id; - // var currentTid = global::System.Threading.Thread.CurrentThread.ManagedThreadId; - - // tlog.Debug(tag, $"thread check! main pid={App.mainPid}, current pid={currentPid}, main tid={App.mainTid}, current tid={currentTid}"); - - // var testingTarget = new AuthenticationSignalType(); - // Assert.IsNotNull(testingTarget, "Should be not null!"); - // Assert.IsInstanceOf(testingTarget, "Should be an Instance of AuthenticationSignalType!"); - - // try - // { - // using (AutofillContainer container = new AutofillContainer("container")) - // { - // testingTarget.Emit(container); - // } - // } - // catch (Exception e) - // { - // tlog.Debug(tag, e.Message.ToString()); - // Assert.Fail("Caught Exception: Failed!"); - // } - - // testingTarget.Dispose(); - - // tlog.Debug(tag, $"AuthenticationSignalTypeEmit END (OK)"); - // } - } -} diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSListEventSignalType.cs b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSListEventSignalType.cs deleted file mode 100755 index 7f424f46b05..00000000000 --- a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSListEventSignalType.cs +++ /dev/null @@ -1,52 +0,0 @@ -using global::System; -using NUnit.Framework; -using NUnit.Framework.TUnit; -using Tizen.NUI.Components; -using Tizen.NUI.BaseComponents; - -namespace Tizen.NUI.Devel.Tests -{ - using tlog = Tizen.Log; - - [TestFixture] - [Description("internal/Common/ListEventSignalType")] - public class InternalListEventSignalTypeTest - { - private const string tag = "NUITEST"; - - [SetUp] - public void Init() - { - tlog.Info(tag, "Init() is called!"); - } - - [TearDown] - public void Destroy() - { - tlog.Info(tag, "Destroy() is called!"); - } - - [Test] - [Category("P1")] - [Description("ListEventSignalType constructor.")] - [Property("SPEC", "Tizen.NUI.ListEventSignalType.ListEventSignalType C")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "CONSTR")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void ListEventSignalTypeConstructor() - { - tlog.Debug(tag, $"ListEventSignalTypeConstructor START"); - - using (View view = new View()) - { - var testingTarget = new ListEventSignalType (view.SwigCPtr.Handle, false); - Assert.IsNotNull(testingTarget, "Should be not null!"); - Assert.IsInstanceOf(testingTarget, "Should be an Instance of ListEventSignalType !"); - - testingTarget.Dispose(); - } - - tlog.Debug(tag, $"ListEventSignalTypeConstructor END (OK)"); - } - } -} diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Input/TSAutofillContainer.cs b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Input/TSAutofillContainer.cs deleted file mode 100755 index c4e7b9f5fe0..00000000000 --- a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Input/TSAutofillContainer.cs +++ /dev/null @@ -1,29 +0,0 @@ -using NUnit.Framework; -using NUnit.Framework.TUnit; -using System; -using Tizen.NUI; -using Tizen.NUI.BaseComponents; - -namespace Tizen.NUI.Devel.Tests -{ - using tlog = Tizen.Log; - - [TestFixture] - [Description("public/Input/TSAutofillContainer")] - internal class PublicAutofillContainerTest - { - private const string tag = "NUITEST"; - - [SetUp] - public void Init() - { - tlog.Info(tag, "Init() is called!"); - } - - [TearDown] - public void Destroy() - { - tlog.Info(tag, "Destroy() is called!"); - } - } -} \ No newline at end of file From 2bfca4634838341da193dcc0fd9c845b192c77cd Mon Sep 17 00:00:00 2001 From: "joogab.yun" Date: Wed, 17 Jul 2024 15:21:07 +0900 Subject: [PATCH 002/198] Revert "[NUI] If the view had focus when it was unparented, the focus is cleared. (#4654)" This reverts commit 09f52bc8bdea3e4e50b610c0b6bc18b54104feb4. This operation is moved to the DALi. https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-toolkit/+/314664/ --- src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs | 6 ------ src/Tizen.NUI/src/public/Common/Layer.cs | 6 ------ 2 files changed, 12 deletions(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs b/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs index 34e7735bf3a..951381118c6 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs @@ -1144,12 +1144,6 @@ internal IntPtr GetPtrfromView() internal void RemoveChild(View child) { - // If the view had focus, it clears focus. - if (child == FocusManager.Instance.GetCurrentFocusView()) - { - Tizen.Log.Debug("NUI", $"ClearFocus due to View id:({child.ID}) removed from scene\n"); - FocusManager.Instance.ClearFocus(); - } // Do actual child removal Interop.Actor.Remove(SwigCPtr, View.getCPtr(child)); if (NDalicPINVOKE.SWIGPendingException.Pending) diff --git a/src/Tizen.NUI/src/public/Common/Layer.cs b/src/Tizen.NUI/src/public/Common/Layer.cs index 828ba478474..eadf02152ea 100755 --- a/src/Tizen.NUI/src/public/Common/Layer.cs +++ b/src/Tizen.NUI/src/public/Common/Layer.cs @@ -348,12 +348,6 @@ public override void Remove(View child) Tizen.Log.Error("NUI", "You have deleted a view that is not a child of this layer."); return; } - // If the view had focus, it clears focus. - if (child == FocusManager.Instance.GetCurrentFocusView()) - { - FocusManager.Instance.ClearFocus(); - } - Interop.Actor.Remove(SwigCPtr, View.getCPtr(child)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); From 05e599aed760ea139820e5e4c568bb941d1efa7a Mon Sep 17 00:00:00 2001 From: Seoyeon2Kim <34738918+Seoyeon2Kim@users.noreply.github.com> Date: Tue, 23 Jul 2024 13:48:07 +0900 Subject: [PATCH 003/198] [NUI] Remove the legacy AccessibilityActivate code (#6223) - `CSharp_Dali_ViewImpl_AccessibilityActivate` was removed in 2018 lol However, at that time, NUI codes couldn't be removed together (Not sure) - The reason `ViewImpl_AccessibilityActivate` was removed is `Remove functions which using internal apis Some binding functions use internal apis. It caused error when dlopen csharp binder.` - User can use Activated event with `View.AccessibilityActivated` Signed-off-by: Seoyeon Kim --- src/Tizen.NUI/src/internal/Common/ViewImpl.cs | 12 ------------ .../src/internal/Interop/Interop.ViewImpl.cs | 3 --- 2 files changed, 15 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Common/ViewImpl.cs b/src/Tizen.NUI/src/internal/Common/ViewImpl.cs index c8dc19854cd..1c786732702 100755 --- a/src/Tizen.NUI/src/internal/Common/ViewImpl.cs +++ b/src/Tizen.NUI/src/internal/Common/ViewImpl.cs @@ -178,18 +178,6 @@ public bool IsFocusGroup() return ret; } - /// - /// [Obsolete("Do not use this, that will be deprecated.")] - /// - /// Do not use this, that will be deprecated. - [Obsolete("Do not use this, that will be deprecated.")] - [EditorBrowsable(EditorBrowsableState.Never)] - public void AccessibilityActivate() - { - Interop.ViewImpl.AccessibilityActivate(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - /// /// [Obsolete("Do not use this, that will be deprecated.")] /// diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.ViewImpl.cs b/src/Tizen.NUI/src/internal/Interop/Interop.ViewImpl.cs index cd6b3609f84..bfc12279222 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.ViewImpl.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.ViewImpl.cs @@ -85,9 +85,6 @@ internal static partial class ViewImpl [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] public static extern bool IsKeyboardFocusGroup(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ViewImpl_AccessibilityActivate")] - public static extern void AccessibilityActivate(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ViewImpl_KeyboardEnter")] public static extern void KeyboardEnter(global::System.Runtime.InteropServices.HandleRef jarg1); From cb6e86193c229e30525c0b30133a439935b14b39 Mon Sep 17 00:00:00 2001 From: "joogab.yun" Date: Tue, 23 Jul 2024 14:26:20 +0900 Subject: [PATCH 004/198] [NUI] NUI Version up(nui22333) --- packaging/csapi-tizenfx.spec | 2 +- packaging/version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/csapi-tizenfx.spec b/packaging/csapi-tizenfx.spec index e17a246e84c..93645f5f123 100644 --- a/packaging/csapi-tizenfx.spec +++ b/packaging/csapi-tizenfx.spec @@ -1,7 +1,7 @@ # Auto-generated from csapi-tizenfx.spec.in by makespec.sh %define TIZEN_NET_API_VERSION 12 -%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22332 +%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22333 %define TIZEN_NET_NUGET_VERSION 12.0.0.99999 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework diff --git a/packaging/version.txt b/packaging/version.txt index d89dc7054e8..616b7914b8c 100755 --- a/packaging/version.txt +++ b/packaging/version.txt @@ -6,4 +6,4 @@ RPM_VERSION=12.0.0.999 NUGET_VERSION=12.0.0.99999 # RPM Version Suffix -RPM_VERSION_SUFFIX=nui22332 +RPM_VERSION_SUFFIX=nui22333 From a1db6651f6f530dec7e04e76a398d4a9667f1492 Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Thu, 18 Jul 2024 11:12:19 +0900 Subject: [PATCH 005/198] [WebRTC] Change state restriction (#6181) * [WebRTC] Change state restriction --- .../WebRTC/MediaFileSource.cs | 8 +-- .../WebRTC/MediaMicrophoneSource.cs | 7 +-- .../WebRTC/MediaNullSource.cs | 11 +--- .../WebRTC/WebRTC.cs | 50 +++++++++++-------- 4 files changed, 34 insertions(+), 42 deletions(-) diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaFileSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaFileSource.cs index 45921094074..40e6ea36f08 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaFileSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaFileSource.cs @@ -107,15 +107,11 @@ public TransceiverDirection GetTransceiverDirection(MediaType type) /// Sets the transceiver direction for receiving media stream. /// /// - /// The WebRTC must be in the state when transceiver direction is set. + /// This method does not throw state exception anymore(Since API Leve 12). It can be called in any state.
///
/// The media type. /// The transceiver direction. - /// - /// MediaSource is not attached yet.
- /// -or-
- /// The WebRTC is not in the valid state. - ///
+ /// MediaSource is not attached yet. /// The WebRTC has already been disposed. /// 10 public void SetTransceiverDirection(MediaType type, TransceiverDirection direction) diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaMicrophoneSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaMicrophoneSource.cs index d4cd5d082db..8823ef89ef1 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaMicrophoneSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaMicrophoneSource.cs @@ -66,8 +66,7 @@ internal override void OnDetached(WebRTC webRtc) /// /// The to apply. /// - /// The WebRTC must be in the state.
- ///
+ /// This method does not throw state exception anymore(Since API Level 12). It can be called in any state.
/// does not support all .
/// Supported types are , , /// , . @@ -77,7 +76,7 @@ internal override void OnDetached(WebRTC webRtc) /// -or-
/// has already been disposed. /// - /// The WebRTC is not in the valid state. + /// An internal error occurs. /// is null. /// /// of is not supported on the current platform. @@ -91,8 +90,6 @@ public void ApplyAudioStreamPolicy(AudioStreamPolicy policy) throw new ArgumentNullException(nameof(policy), "policy is null"); } - WebRtc.ValidateWebRTCState(WebRTCState.Idle); - var ret = NativeWebRTC.SetAudioStreamPolicyToMicrophoneSource(WebRtc.Handle, SourceId.Value, policy.Handle); if (ret == WebRTCErrorCode.InvalidArgument) diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaNullSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaNullSource.cs index c685439d604..cdd1d34c45f 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaNullSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaNullSource.cs @@ -64,16 +64,11 @@ public TransceiverCodec GetTransceiverCodec(MediaType type) /// Sets the transceiver codec for receiving media stream. /// /// - /// The WebRTC must be in the state when transceiver codec is set.
- /// + /// This method does not throw state exception anymore(Since API Level 12). It can be called in any state.
///
/// The media type. /// The transceiver codec. - /// - /// MediaSource is not attached yet.
- /// -or-
- /// The WebRTC is not in the valid state. - ///
+ /// MediaSource is not attached yet. /// The WebRTC has already been disposed. /// /// 10 @@ -84,8 +79,6 @@ public void SetTransceiverCodec(MediaType type, TransceiverCodec codec) throw new InvalidOperationException("MediaSource is not attached yet. Call AddSource() first."); } - WebRtc.ValidateWebRTCState(WebRTCState.Idle); - NativeWebRTC.SetTransceiverCodec(WebRtc.Handle, SourceId.Value, type, codec). ThrowIfFailed("Failed to set transceiver codec"); } diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs index 7564e86e78c..b7dc62b0449 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs @@ -226,7 +226,9 @@ public void Stop() /// /// Creates SDP offer asynchronously to start a new WebRTC connection to a remote peer. /// - /// The WebRTC must be in the + /// + /// The WebRTC must be in the or (Since API Level 12) + /// /// The SDP offer. /// The WebRTC is not in the valid state. /// The WebRTC has already been disposed. @@ -234,7 +236,7 @@ public void Stop() /// 9 public async Task CreateOfferAsync() { - ValidateWebRTCState(WebRTCState.Negotiating); + ValidateWebRTCState(WebRTCState.Negotiating, WebRTCState.Playing); var tcsSdpCreated = new TaskCompletionSource(); @@ -259,7 +261,9 @@ public async Task CreateOfferAsync() /// /// Creates SDP answer asynchronously with option to an offer received from a remote peer. /// - /// The WebRTC must be in the + /// + /// The WebRTC must be in the or (Since API Level 12) + /// /// The SDP answer. /// The WebRTC is not in the valid state. /// The WebRTC has already been disposed. @@ -267,7 +271,7 @@ public async Task CreateOfferAsync() /// 9 public async Task CreateAnswerAsync() { - ValidateWebRTCState(WebRTCState.Negotiating); + ValidateWebRTCState(WebRTCState.Negotiating, WebRTCState.Playing); var tcsSdpCreated = new TaskCompletionSource(); @@ -292,7 +296,9 @@ public async Task CreateAnswerAsync() /// /// Sets the session description for a local peer. /// - /// The WebRTC must be in the . + /// + /// The WebRTC must be in the or (Since API Level 12) + /// /// The local session description. /// The description is empty string. /// The description is null. @@ -303,7 +309,7 @@ public async Task CreateAnswerAsync() /// 9 public void SetLocalDescription(string description) { - ValidateWebRTCState(WebRTCState.Negotiating); + ValidateWebRTCState(WebRTCState.Negotiating, WebRTCState.Playing); ValidationUtil.ValidateIsNullOrEmpty(description, nameof(description)); @@ -313,7 +319,9 @@ public void SetLocalDescription(string description) /// /// Sets the session description of the remote peer's current offer or answer. /// - /// The WebRTC must be in the . + /// + /// The WebRTC must be in the or (Since API Level 12) + /// /// The remote session description. /// The description is empty string. /// The description is null. @@ -324,7 +332,7 @@ public void SetLocalDescription(string description) /// 9 public void SetRemoteDescription(string description) { - ValidateWebRTCState(WebRTCState.Negotiating); + ValidateWebRTCState(WebRTCState.Negotiating, WebRTCState.Playing); ValidationUtil.ValidateIsNullOrEmpty(description, nameof(description)); @@ -378,7 +386,7 @@ public void AddIceCandidates(IEnumerable iceCandidates) /// Adds media source. /// /// - /// The WebRTC must be in the .
+ /// This method does not throw state exception anymore(Since API Level 12). It can be called in any state.
/// Each MediaSource requires different feature or privilege.
/// needs camera feature and privilege.
/// needs microphone feature and recorder privilege.
@@ -393,7 +401,7 @@ public void AddIceCandidates(IEnumerable iceCandidates) /// http://tizen.org/privilege/recorder /// The media source is null. /// - /// The WebRTC is not in the valid state.
+ /// An internal error occurs.
/// - or -
/// All or one of was already detached. ///
@@ -415,8 +423,6 @@ public void AddSource(MediaSource source) throw new ArgumentNullException(nameof(source), "source is null"); } - ValidateWebRTCState(WebRTCState.Idle); - source?.AttachTo(this); _source.Add(source); @@ -426,7 +432,7 @@ public void AddSource(MediaSource source) /// Adds media sources. /// /// - /// The WebRTC must be in the .
+ /// This method does not throw state exception anymore(Since API Level 12). It can be called in any state.
/// Each MediaSource requires different feature or privilege.
/// needs camera feature and privilege.
/// needs microphone feature and recorder privilege.
@@ -441,7 +447,7 @@ public void AddSource(MediaSource source) /// http://tizen.org/privilege/recorder /// The media source is null. /// - /// The WebRTC is not in the valid state.
+ /// An internal error occurs.
/// - or -
/// All or one of was already detached. ///
@@ -473,12 +479,12 @@ public void AddSources(params MediaSource[] sources) /// Removes media source. /// /// - /// The WebRTC must be in the .
+ /// This method does not throw state exception anymore(Since API Level 12). It can be called in any state.
/// If user want to use removed MediaSource again, user should create new instance for it. ///
/// The media source to remove. /// The media source is null. - /// The WebRTC is not in the valid state. + /// An internal error occurs. /// The WebRTC has already been disposed. /// /// @@ -495,8 +501,6 @@ public void RemoveSource(MediaSource source) throw new ArgumentNullException(nameof(source), "source is null"); } - ValidateWebRTCState(WebRTCState.Idle); - source?.DetachFrom(this); _source.Remove(source); @@ -508,12 +512,12 @@ public void RemoveSource(MediaSource source) /// Removes media sources. /// /// - /// The WebRTC must be in the .
+ /// This method does not throw state exception anymore(Since API Level 12). It can be called in any state.
/// If user want to use removed MediaSource again, user should create new instance for it. ///
/// The media source to remove. /// The media source is null. - /// The WebRTC is not in the valid state. + /// An internal error occurs. /// The WebRTC has already been disposed. /// /// @@ -601,7 +605,9 @@ public ReadOnlyCollection GetTurnServer() /// /// Retrieves the current statistics information. /// - /// The WebRTC must be in the + /// + /// The WebRTC must be in the (Since API Level 12) or + /// /// The WebRTC statistics informations. /// The category of statistics to get. /// The WebRTC has already been disposed. @@ -609,7 +615,7 @@ public ReadOnlyCollection GetTurnServer() /// 10 public ReadOnlyCollection GetStatistics(WebRTCStatisticsCategory category) { - ValidateWebRTCState(WebRTCState.Playing); + ValidateWebRTCState(WebRTCState.Negotiating, WebRTCState.Playing); var stats = new List(); Exception caught = null; From cee50f0dcea153be4ac69130d4963e63fc6b254d Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Thu, 11 Jul 2024 13:39:10 +0900 Subject: [PATCH 006/198] [NUI] Support Shadow and ColorVisual cutout policy Let we support to BoxShadow and ColorVisual, to ignore rendering inside of View area. None is default, same as previous logics. CutoutView is cutout render area as bounding box of view. It is faster than CutoutViewWithCornerRadius. CutoutWithCornerRadius is cutout render area consider the corner radius of view. Required dali patch : https://review.tizen.org/gerrit/c/platform/core/uifw/dali-toolkit/+/314255 Signed-off-by: Eunki, Hong --- .../src/public/ViewProperty/Shadow.cs | 38 ++++++++++++++++-- .../src/public/Visuals/VisualConstants.cs | 39 ++++++++++++++++++- .../Visuals/VisualObject/ColorVisual.cs | 19 +++++++++ .../ShadowFrameTest/ShadowFrameTest1Page.xaml | 11 ++++++ .../ShadowFrameTest1Page.xaml.cs | 34 ++++++++++++---- 5 files changed, 129 insertions(+), 12 deletions(-) diff --git a/src/Tizen.NUI/src/public/ViewProperty/Shadow.cs b/src/Tizen.NUI/src/public/ViewProperty/Shadow.cs index eecbd12df3b..d6401bfb6ed 100755 --- a/src/Tizen.NUI/src/public/ViewProperty/Shadow.cs +++ b/src/Tizen.NUI/src/public/ViewProperty/Shadow.cs @@ -39,6 +39,7 @@ public class Shadow : ShadowBase, ICloneable public Shadow() : base() { BlurRadius = 0; + CutoutPolicy = ColorVisualCutoutPolicyType.None; Color = defaultColor; } @@ -50,9 +51,23 @@ public Shadow() : base() /// Optional. The position offset value (x, y) from the top left corner. See . /// Optional. The shadow will extend its size by specified amount of length. See . /// 9 - public Shadow(float blurRadius, Color color, Vector2 offset = null, Vector2 extents = null) : base(offset, extents) + public Shadow(float blurRadius, Color color, Vector2 offset = null, Vector2 extents = null) : this(blurRadius, ColorVisualCutoutPolicyType.None, color, offset, extents) + { + } + + /// + /// Create a Shadow with custom values. + /// + /// The blur radius value for the shadow. Bigger value, much blurry. + /// The policy of the shadow cutout. + /// The color for the shadow. + /// Optional. The position offset value (x, y) from the top left corner. See . + /// Optional. The shadow will extend its size by specified amount of length. See . + [EditorBrowsable(EditorBrowsableState.Never)] + public Shadow(float blurRadius, ColorVisualCutoutPolicyType cutoutPolicy, Color color, Vector2 offset = null, Vector2 extents = null) : base(offset, extents) { BlurRadius = blurRadius; + CutoutPolicy = cutoutPolicy; Color = color == null ? new Color(defaultColor) : new Color(color); } @@ -61,7 +76,7 @@ public Shadow(float blurRadius, Color color, Vector2 offset = null, Vector2 exte /// /// Thrown when other is null. [EditorBrowsable(EditorBrowsableState.Never)] - public Shadow(Shadow other) : this(other == null ? throw new ArgumentNullException(nameof(other)) : other.BlurRadius, other.Color, other.Offset, other.Extents) + public Shadow(Shadow other) : this(other == null ? throw new ArgumentNullException(nameof(other)) : other.BlurRadius, other.CutoutPolicy, other.Color, other.Offset, other.Extents) { } @@ -93,12 +108,24 @@ internal Shadow(PropertyMap propertyMap) : base(propertyMap) /// /// The blur radius value for the shadow. Bigger value, much blurry. /// - /// + /// /// Negative value is ignored. (no blur) - /// + ///
/// 9 public float BlurRadius { get; internal set; } + /// + /// The Cutout policy for this shadow. + /// + /// + /// ColorVisualCutoutPolicyType.None = Fully render the shadow color (Default)
+ /// ColorVisualCutoutPolicyType.CutoutView = Do not render inside bounding box of view
+ /// ColorVisualCutoutPolicyType.CutoutViewWithCornerRadius = Do not render inside view, consider corner radius value
+ /// We don't support this property for xaml yet. + ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public ColorVisualCutoutPolicyType CutoutPolicy { get; internal set;} + /// [EditorBrowsable(EditorBrowsableState.Never)] public override bool Equals(object other) @@ -127,6 +154,7 @@ public override int GetHashCode() int hash = base.GetHashCode(); hash = (hash * 7) + (Color == null ? 0 : Color.GetHashCode()); hash = (hash * 7) + (BlurRadius.GetHashCode()); + hash = (hash * 7) + (CutoutPolicy.GetHashCode()); return hash; } } @@ -152,6 +180,8 @@ protected override PropertyMap GetPropertyMap() map[ColorVisualProperty.BlurRadius] = new PropertyValue(BlurRadius < 0 ? 0 : BlurRadius); + map[ColorVisualProperty.CutoutPolicy] = new PropertyValue((int)CutoutPolicy); + return map; } } diff --git a/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs b/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs index e80aa64f4d6..c72f453283b 100755 --- a/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs +++ b/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs @@ -663,16 +663,24 @@ public struct ColorVisualProperty /// /// 3 public static readonly int MixColor = NDalic.ColorVisualMixColor; + /// /// Whether to render if the MixColor is transparent. /// /// 5 public static readonly int RenderIfTransparent = NDalic.ColorVisualMixColor + 1; + /// - /// Then radius value for the area to blur. + /// The radius value for the area to blur. /// [EditorBrowsable(EditorBrowsableState.Never)] public static readonly int BlurRadius = NDalic.ColorVisualMixColor + 2; + + /// + /// The policy value for the cutout of the visual. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public static readonly int CutoutPolicy = NDalic.ColorVisualMixColor + 3; } /// @@ -1370,4 +1378,33 @@ public enum ColorBlendingMode /// Multiply }; + + /// + /// Defines how a colorvisual cutout + /// + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. + [EditorBrowsable(EditorBrowsableState.Never)] + public enum ColorVisualCutoutPolicyType + { + /// + /// No cutout. (default) + /// + [EditorBrowsable(EditorBrowsableState.Never)] + None, + /// + /// Cutout as bounding box of view + /// + [EditorBrowsable(EditorBrowsableState.Never)] + CutoutView, + /// + /// Cutout as bounding box of view, include corner radius. + /// + /// + /// The CornerRadius and CornerRadiusPolicy will be used color visual itself's value. + /// If you are using this policy at Tizen.NUI.Visuals.ColorVisual, please be careful that CornerRadius value + /// is not same as View.CornerRadius. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + CutoutViewWithCornerRadius, + }; } diff --git a/src/Tizen.NUI/src/public/Visuals/VisualObject/ColorVisual.cs b/src/Tizen.NUI/src/public/Visuals/VisualObject/ColorVisual.cs index 9d6d8d7c12a..a3b0af8cca8 100644 --- a/src/Tizen.NUI/src/public/Visuals/VisualObject/ColorVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/VisualObject/ColorVisual.cs @@ -68,6 +68,25 @@ public float BlurRadius return ret; } } + + /// + /// Cutout policy of color visual + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public ColorVisualCutoutPolicyType CutoutPolicy + { + set + { + UpdateVisualProperty((int)Tizen.NUI.ColorVisualProperty.CutoutPolicy, new PropertyValue((int)value)); + } + get + { + int ret = (int)ColorVisualCutoutPolicyType.None; + var propertyValue = GetCachedVisualProperty((int)Tizen.NUI.ColorVisualProperty.CutoutPolicy); + propertyValue?.Get(out ret); + return (ColorVisualCutoutPolicyType)ret; + } + } #endregion #region Decorated Visual Properties diff --git a/test/NUITizenGallery/Examples/ShadowFrameTest/ShadowFrameTest1Page.xaml b/test/NUITizenGallery/Examples/ShadowFrameTest/ShadowFrameTest1Page.xaml index 43190c4aae5..a12e5abe4c8 100644 --- a/test/NUITizenGallery/Examples/ShadowFrameTest/ShadowFrameTest1Page.xaml +++ b/test/NUITizenGallery/Examples/ShadowFrameTest/ShadowFrameTest1Page.xaml @@ -327,6 +327,17 @@ + + + diff --git a/test/NUITizenGallery/Examples/ShadowFrameTest/ShadowFrameTest1Page.xaml.cs b/test/NUITizenGallery/Examples/ShadowFrameTest/ShadowFrameTest1Page.xaml.cs index 3224153d47f..b04d44a7c96 100644 --- a/test/NUITizenGallery/Examples/ShadowFrameTest/ShadowFrameTest1Page.xaml.cs +++ b/test/NUITizenGallery/Examples/ShadowFrameTest/ShadowFrameTest1Page.xaml.cs @@ -7,11 +7,15 @@ namespace NUITizenGallery public partial class ShadowFrameTest1Page : ContentPage { private bool shadowToggleShow; // true if we show shadow + + private ColorVisualCutoutPolicyType shadowCutoutPolicy; // The policy of cutout shadow as view + private Shadow CreateShadowFromeSliders() { return new Shadow ( ShadowBlurRadius.CurrentValue, + shadowCutoutPolicy, new Color( ShadowColorRed.CurrentValue / 255.0f, ShadowColorGreen.CurrentValue / 255.0f, @@ -26,6 +30,7 @@ public ShadowFrameTest1Page() { InitializeComponent(); shadowToggleShow = true; + shadowCutoutPolicy = ColorVisualCutoutPolicyType.None; // CornerRadius CornerTopLeft.ValueChanged += (o, e) => @@ -130,6 +135,21 @@ public ShadowFrameTest1Page() } } }; + // Shadow Cutout Toggle + ShadowCutoutButton.Clicked += (o, e) => + { + if(ShadowCutoutButton.IsSelected) + { + shadowCutoutPolicy = ColorVisualCutoutPolicyType.CutoutViewWithCornerRadius; + } + else + { + shadowCutoutPolicy = ColorVisualCutoutPolicyType.None; + } + + target.BoxShadow = CreateShadowFromeSliders(); + }; + // Shadow Offset ShadowOffsetX.ValueChanged += (o, e) => { @@ -141,7 +161,7 @@ public ShadowFrameTest1Page() return; } Vector2 currentOffset = currentShadow.Offset; - target.BoxShadow = new Shadow(currentShadow.BlurRadius, currentShadow.Color, new Vector2(ShadowOffsetX.CurrentValue, currentOffset.Y)); + target.BoxShadow = new Shadow(currentShadow.BlurRadius, shadowCutoutPolicy, currentShadow.Color, new Vector2(ShadowOffsetX.CurrentValue, currentOffset.Y)); }; ShadowOffsetY.ValueChanged += (o, e) => { @@ -153,7 +173,7 @@ public ShadowFrameTest1Page() return; } Vector2 currentOffset = currentShadow.Offset; - target.BoxShadow = new Shadow(currentShadow.BlurRadius, currentShadow.Color, new Vector2(currentOffset.X, ShadowOffsetY.CurrentValue)); + target.BoxShadow = new Shadow(currentShadow.BlurRadius, shadowCutoutPolicy, currentShadow.Color, new Vector2(currentOffset.X, ShadowOffsetY.CurrentValue)); }; // Shadow Color @@ -167,7 +187,7 @@ public ShadowFrameTest1Page() return; } Color currentColor = currentShadow.Color; - target.BoxShadow = new Shadow(currentShadow.BlurRadius, new Color(ShadowColorRed.CurrentValue / 255.0f, currentColor.G, currentColor.B, currentColor.A), currentShadow.Offset); + target.BoxShadow = new Shadow(currentShadow.BlurRadius, shadowCutoutPolicy, new Color(ShadowColorRed.CurrentValue / 255.0f, currentColor.G, currentColor.B, currentColor.A), currentShadow.Offset); }; ShadowColorGreen.ValueChanged += (o, e) => { @@ -179,7 +199,7 @@ public ShadowFrameTest1Page() return; } Color currentColor = currentShadow.Color; - target.BoxShadow = new Shadow(currentShadow.BlurRadius, new Color(currentColor.R, ShadowColorGreen.CurrentValue / 255.0f, currentColor.B, currentColor.A), currentShadow.Offset); + target.BoxShadow = new Shadow(currentShadow.BlurRadius, shadowCutoutPolicy, new Color(currentColor.R, ShadowColorGreen.CurrentValue / 255.0f, currentColor.B, currentColor.A), currentShadow.Offset); }; ShadowColorBlue.ValueChanged += (o, e) => { @@ -191,7 +211,7 @@ public ShadowFrameTest1Page() return; } Color currentColor = currentShadow.Color; - target.BoxShadow = new Shadow(currentShadow.BlurRadius, new Color(currentColor.R, currentColor.G, ShadowColorBlue.CurrentValue / 255.0f, currentColor.A), currentShadow.Offset); + target.BoxShadow = new Shadow(currentShadow.BlurRadius, shadowCutoutPolicy, new Color(currentColor.R, currentColor.G, ShadowColorBlue.CurrentValue / 255.0f, currentColor.A), currentShadow.Offset); }; ShadowOpacity.ValueChanged += (o, e) => { @@ -203,7 +223,7 @@ public ShadowFrameTest1Page() return; } Color currentColor = currentShadow.Color; - target.BoxShadow = new Shadow(currentShadow.BlurRadius, new Color(currentColor.R, currentColor.G, currentColor.B, ShadowOpacity.CurrentValue / 255.0f), currentShadow.Offset); + target.BoxShadow = new Shadow(currentShadow.BlurRadius, shadowCutoutPolicy, new Color(currentColor.R, currentColor.G, currentColor.B, ShadowOpacity.CurrentValue / 255.0f), currentShadow.Offset); }; // Shadow Radius ShadowBlurRadius.ValueChanged += (o, e) => @@ -216,7 +236,7 @@ public ShadowFrameTest1Page() return; } float currentRadius = ShadowBlurRadius.CurrentValue; - target.BoxShadow = new Shadow(currentRadius, currentShadow.Color, currentShadow.Offset); + target.BoxShadow = new Shadow(currentRadius, shadowCutoutPolicy, currentShadow.Color, currentShadow.Offset); }; } } From 2c4547fd7a926effa30f092d2a200aa767dccc92 Mon Sep 17 00:00:00 2001 From: jmm Date: Tue, 25 Jun 2024 13:03:50 +0900 Subject: [PATCH 007/198] [NUI] Support View BackgroundBlurEffect --- .../internal/Interop/Interop.RenderEffect.cs | 17 ++++ .../src/internal/Interop/Interop.View.cs | 6 ++ .../BaseComponents/ViewPublicMethods.cs | 22 +++++ .../src/public/Utility/RenderEffect.cs | 96 +++++++++++++++++++ 4 files changed, 141 insertions(+) create mode 100644 src/Tizen.NUI/src/internal/Interop/Interop.RenderEffect.cs create mode 100644 src/Tizen.NUI/src/public/Utility/RenderEffect.cs diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.RenderEffect.cs b/src/Tizen.NUI/src/internal/Interop/Interop.RenderEffect.cs new file mode 100644 index 00000000000..6165073e5fb --- /dev/null +++ b/src/Tizen.NUI/src/internal/Interop/Interop.RenderEffect.cs @@ -0,0 +1,17 @@ +namespace Tizen.NUI +{ + internal static partial class Interop + { + internal static partial class BackgroundBlurEffect + { + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_BackgroundBlurEffect_New__SWIG_0")] + public static extern global::System.IntPtr New(); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_BackgroundBlurEffect_New__SWIG_1")] + public static extern global::System.IntPtr New(uint pixelRadius); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_BackgroundBlurEffect")] + public static extern void Delete(global::System.Runtime.InteropServices.HandleRef self); + } + } +} diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.View.cs b/src/Tizen.NUI/src/internal/Interop/Interop.View.cs index 42d62003066..37833458039 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.View.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.View.cs @@ -51,6 +51,12 @@ internal static partial class View [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_View_ClearBackground")] public static extern void ClearBackground(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_View_SetRenderEffect")] + public static extern void SetRenderEffect(global::System.Runtime.InteropServices.HandleRef self, global::System.Runtime.InteropServices.HandleRef effectRef); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_View_ClearRenderEffect")] + public static extern void ClearRenderEffect(global::System.Runtime.InteropServices.HandleRef self); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_View__SWIG_2")] public static extern global::System.IntPtr NewViewInternal(global::System.Runtime.InteropServices.HandleRef jarg1); diff --git a/src/Tizen.NUI/src/public/BaseComponents/ViewPublicMethods.cs b/src/Tizen.NUI/src/public/BaseComponents/ViewPublicMethods.cs index 5da4b3bb996..954bb1a47b7 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ViewPublicMethods.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ViewPublicMethods.cs @@ -311,6 +311,28 @@ public void ClearBackground() if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Sets render effect to the view. The effect is applied to at most one view. + /// + /// A render effect to set. + [EditorBrowsable(EditorBrowsableState.Never)] + public void SetRenderEffect(RenderEffect effect) + { + Interop.View.SetRenderEffect(SwigCPtr, RenderEffect.getCPtr(effect)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + /// + /// Clears render effect. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public void ClearRenderEffect() + { + Interop.View.ClearRenderEffect(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + + } + /// /// Shows the view. /// diff --git a/src/Tizen.NUI/src/public/Utility/RenderEffect.cs b/src/Tizen.NUI/src/public/Utility/RenderEffect.cs new file mode 100644 index 00000000000..9ff734f2d58 --- /dev/null +++ b/src/Tizen.NUI/src/public/Utility/RenderEffect.cs @@ -0,0 +1,96 @@ +/* + * Copyright(c) 2024 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ +using System.ComponentModel; +using System; + +namespace Tizen.NUI +{ + /// + /// View's optional render effect. + /// Applications can apply RenderEffect as the example below : + /// + /// + /// RenderEffect effect = RenderEffect.CreateBackgroundBlurEffect(20.0f); + /// + /// view.SetRenderEffect(effect); + /// view.ClearRenderEffect(); + /// + /// + /// Note that a view owns at most one render effect. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public class RenderEffect : BaseHandle + { + internal RenderEffect(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) + { + } + + /// + /// Create a background blur effect + /// + /// + /// Created RenderEffect is immutable. + /// + /// The blur radius value. The unit is pixel for standard cases. + /// Background blur effect with given blur radius. + [EditorBrowsable(EditorBrowsableState.Never)] + public static RenderEffect CreateBackgroundBlurEffect(float blurRadius) + { + return new BackgroundBlurEffect((uint)Math.Round(blurRadius, 0)); + } + } + + + /// + /// Applications can create BackgroundBlurEffect as : + /// + /// RenderEffect.CreateBackgroundBlurEffect(blurRadius); + /// + [EditorBrowsable(EditorBrowsableState.Never)] + sealed class BackgroundBlurEffect : RenderEffect + { + /// + /// Create a BackgroundBlurEffect. + /// The default values are: + /// uint blurRadius = 5; + /// + internal BackgroundBlurEffect() : this(Interop.BackgroundBlurEffect.New(), true) + { + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + /// + /// Create a BackgroundBlurEffect. + /// + /// Size of gaussian kernel, determines blur intensity. + internal BackgroundBlurEffect(uint blurRadius) : this(Interop.BackgroundBlurEffect.New(blurRadius), true) + { + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + internal BackgroundBlurEffect(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) + { + } + + /// This will not be public opened. + [EditorBrowsable(EditorBrowsableState.Never)] + protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + { + Interop.BackgroundBlurEffect.Delete(swigCPtr); + } + } +} From fefd5090aa9603c8705af0b61b8768246141e0e2 Mon Sep 17 00:00:00 2001 From: Seoyeon2Kim <34738918+Seoyeon2Kim@users.noreply.github.com> Date: Fri, 26 Jul 2024 16:13:05 +0900 Subject: [PATCH 008/198] [NUI] Clean code for NUI Layouting (#6238) - Make intention revealing names for Some variables. Choosing names that reveal intent can make it much easier to understand. Signed-off-by: Seoyeon Kim --- src/Tizen.NUI/src/public/Layouting/GridLayout.cs | 10 +++++----- src/Tizen.NUI/src/public/Layouting/LayoutGroup.cs | 14 +++++++------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/Tizen.NUI/src/public/Layouting/GridLayout.cs b/src/Tizen.NUI/src/public/Layouting/GridLayout.cs index 87a22904df7..6f6272801c8 100755 --- a/src/Tizen.NUI/src/public/Layouting/GridLayout.cs +++ b/src/Tizen.NUI/src/public/Layouting/GridLayout.cs @@ -418,8 +418,8 @@ protected override void OnLayout(bool changed, LayoutLength left, LayoutLength t int row = child.Row.Start; int columnEnd = child.Column.End; int rowEnd = child.Row.End; - float l = hLocations[column] + Padding.Start + view.Margin.Start; - float t = vLocations[row] + Padding.Top + view.Margin.Top; + float childLeft = hLocations[column] + Padding.Start + view.Margin.Start; + float childTop = vLocations[row] + Padding.Top + view.Margin.Top; float width = hLocations[columnEnd] - hLocations[column] - ColumnSpacing - view.Margin.Start - view.Margin.End; float height = vLocations[rowEnd] - vLocations[row] - RowSpacing - view.Margin.Top - view.Margin.Bottom; bool needMeasuredWidth = false; @@ -431,7 +431,7 @@ protected override void OnLayout(bool changed, LayoutLength left, LayoutLength t } else { - l += (width - child.LayoutItem.MeasuredWidth.Size.AsDecimal()) * halign.ToFloat(); + childLeft += (width - child.LayoutItem.MeasuredWidth.Size.AsDecimal()) * halign.ToFloat(); width = child.LayoutItem.MeasuredWidth.Size.AsDecimal(); } @@ -441,7 +441,7 @@ protected override void OnLayout(bool changed, LayoutLength left, LayoutLength t } else { - t += (height - child.LayoutItem.MeasuredHeight.Size.AsDecimal()) * valign.ToFloat(); + childTop += (height - child.LayoutItem.MeasuredHeight.Size.AsDecimal()) * valign.ToFloat(); height = child.LayoutItem.MeasuredHeight.Size.AsDecimal(); } @@ -489,7 +489,7 @@ protected override void OnLayout(bool changed, LayoutLength left, LayoutLength t } } - child.LayoutItem.Layout(new LayoutLength(l), new LayoutLength(t), new LayoutLength(l + width), new LayoutLength(t + height)); + child.LayoutItem.Layout(new LayoutLength(childLeft), new LayoutLength(childTop), new LayoutLength(childLeft + width), new LayoutLength(childTop + height)); } } diff --git a/src/Tizen.NUI/src/public/Layouting/LayoutGroup.cs b/src/Tizen.NUI/src/public/Layouting/LayoutGroup.cs index a6768ad498d..ee259b1adaf 100755 --- a/src/Tizen.NUI/src/public/Layouting/LayoutGroup.cs +++ b/src/Tizen.NUI/src/public/Layouting/LayoutGroup.cs @@ -110,29 +110,29 @@ public virtual void Remove(LayoutItem layoutItem) if (LayoutWithTransition) { - var win = Window.Get(Owner); + var currentWindow = Window.Get(Owner); if (!childLayout.IsReplaceFlag()) { - if (win == null) + if (currentWindow == null) { NUIApplication.GetDefaultWindow().LayoutController.AddToRemovalStack(childLayout); } else { - win.LayoutController.AddToRemovalStack(childLayout); + currentWindow.LayoutController.AddToRemovalStack(childLayout); } } childLayout.ConditionForAnimation = childLayout.ConditionForAnimation | TransitionCondition.Remove; // Add LayoutItem to the transition stack so can animate it out. - if (win == null) + if (currentWindow == null) { NUIApplication.GetDefaultWindow().LayoutController.AddTransitionDataEntry(new LayoutData(layoutItem, ConditionForAnimation, 0, 0, 0, 0)); } else { - win.LayoutController.AddTransitionDataEntry(new LayoutData(layoutItem, ConditionForAnimation, 0, 0, 0, 0)); + currentWindow.LayoutController.AddTransitionDataEntry(new LayoutData(layoutItem, ConditionForAnimation, 0, 0, 0, 0)); } } @@ -696,8 +696,8 @@ internal static Binding.BindableProperty.ValidateValueDelegate ValidateEnum(int { return (Binding.BindableObject bindable, object value) => { - int @enum = (int)value; - return enumMin <= @enum && @enum <= enumMax; + int validEnum = (int)value; + return enumMin <= validEnum && validEnum <= enumMax; }; } } From e6cfbc5f17481611b9224d72893ae36d5f0e88de Mon Sep 17 00:00:00 2001 From: "huayong.xu" Date: Mon, 16 Oct 2023 10:46:38 +0800 Subject: [PATCH 009/198] [NUI] Add WebView APIs for fullscreen, text found, etc. --- .../src/internal/Interop/Interop.WebView.cs | 15 ++ .../WebView/WebViewPolicyDecidedEventArgs.cs | 21 ++- .../WebView/WebViewTextFoundEventArgs.cs | 40 +++++ src/Tizen.NUI/src/public/WebView/WebView.cs | 164 +++++++++++++++++- 4 files changed, 235 insertions(+), 5 deletions(-) create mode 100755 src/Tizen.NUI/src/internal/WebView/WebViewTextFoundEventArgs.cs diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs b/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs index 01c7d107672..0235d7c65ad 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs @@ -216,6 +216,9 @@ internal static partial class WebView [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_ClearHistory")] public static extern void ClearHistory(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_ExitFullscreen")] + public static extern void ExitFullscreen(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_SetScaleFactor")] public static extern void SetScaleFactor(global::System.Runtime.InteropServices.HandleRef jarg1, float jarg2, global::System.Runtime.InteropServices.HandleRef jarg3); @@ -292,6 +295,9 @@ internal static partial class WebView [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterNavigationPolicyDecidedCallback")] public static extern void RegisterNavigationPolicyDecidedCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterNewWindowPolicyDecidedCallback")] + public static extern void RegisterNewWindowPolicyDecidedCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterNewWindowCreatedCallback")] public static extern void RegisterNewWindowCreatedCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); @@ -310,6 +316,15 @@ internal static partial class WebView [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterContextMenuHiddenCallback")] public static extern void RegisterContextMenuHiddenCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterFullscreenEnteredCallback")] + public static extern void RegisterFullscreenEnteredCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterFullscreenExitedCallback")] + public static extern void RegisterFullscreenExitedCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterTextFoundCallback")] + public static extern void RegisterTextFoundCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_GetPlainTextAsynchronously")] public static extern void GetPlainTextAsynchronously(global::System.Runtime.InteropServices.HandleRef webViewRef, global::System.Runtime.InteropServices.HandleRef callbackRef); } diff --git a/src/Tizen.NUI/src/internal/WebView/WebViewPolicyDecidedEventArgs.cs b/src/Tizen.NUI/src/internal/WebView/WebViewPolicyDecidedEventArgs.cs index 43e719b6925..43ed244e34a 100755 --- a/src/Tizen.NUI/src/internal/WebView/WebViewPolicyDecidedEventArgs.cs +++ b/src/Tizen.NUI/src/internal/WebView/WebViewPolicyDecidedEventArgs.cs @@ -21,20 +21,33 @@ namespace Tizen.NUI { /// - /// Event arguments that passed via the WebView.ResponsePolicyDecided. + /// Event arguments that passed via the WebView.ResponsePolicyDecided, + /// WebView.NavigationPolicyDecided or WebView.NewWindowPolicyDecided. /// [EditorBrowsable(EditorBrowsableState.Never)] public class WebViewPolicyDecidedEventArgs : EventArgs { internal WebViewPolicyDecidedEventArgs(WebPolicyDecisionMaker maker) { - ResponsePolicyDecisionMaker = maker; + PolicyDecisionMaker = maker; } /// - /// The response policy decision maker. + /// Deprecated. The response policy decision maker. /// [EditorBrowsable(EditorBrowsableState.Never)] - public WebPolicyDecisionMaker ResponsePolicyDecisionMaker { get; } + public WebPolicyDecisionMaker ResponsePolicyDecisionMaker + { + get + { + return PolicyDecisionMaker; + } + } + + /// + /// The policy decision maker. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public WebPolicyDecisionMaker PolicyDecisionMaker { get; } } } diff --git a/src/Tizen.NUI/src/internal/WebView/WebViewTextFoundEventArgs.cs b/src/Tizen.NUI/src/internal/WebView/WebViewTextFoundEventArgs.cs new file mode 100755 index 00000000000..8c76f04f901 --- /dev/null +++ b/src/Tizen.NUI/src/internal/WebView/WebViewTextFoundEventArgs.cs @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2023 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +using System; +using System.ComponentModel; + +namespace Tizen.NUI +{ + /// + /// Event arguments that passed via the WebView.TextFound. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public class WebViewTextFoundEventArgs : EventArgs + { + internal WebViewTextFoundEventArgs(uint count) + { + Count = count; + } + + /// + /// The count of text found. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public uint Count { get; } + } +} diff --git a/src/Tizen.NUI/src/public/WebView/WebView.cs b/src/Tizen.NUI/src/public/WebView/WebView.cs index 9496aefb341..4d93f14803b 100755 --- a/src/Tizen.NUI/src/public/WebView/WebView.cs +++ b/src/Tizen.NUI/src/public/WebView/WebView.cs @@ -127,6 +127,9 @@ static WebView() private EventHandler navigationPolicyDecidedEventHandler; private WebViewPolicyDecidedCallback navigationPolicyDecidedCallback; + private EventHandler newWindowPolicyDecidedEventHandler; + private WebViewPolicyDecidedCallback newWindowPolicyDecidedCallback; + private EventHandlerWithReturnType newWindowCreatedEventHandler; private WebViewNewWindowCreatedCallback newWindowCreatedCallback; @@ -148,8 +151,16 @@ static WebView() private EventHandler contextMenuHiddenEventHandler; private WebViewContextMenuHiddenCallback contextMenuHiddenCallback; - private PlainTextReceivedCallback plainTextReceivedCallback; + private EventHandler fullscreenEnteredEventHandler; + private WebViewFullscreenEnteredCallback fullscreenEnteredCallback; + + private EventHandler fullscreenExitedEventHandler; + private WebViewFullscreenExitedCallback fullscreenExitedCallback; + private EventHandler textFoundEventHandler; + private WebViewTextFoundCallback textFoundCallback; + + private PlainTextReceivedCallback plainTextReceivedCallback; /// /// Creates a WebView. @@ -344,6 +355,15 @@ protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void WebViewContextMenuHiddenCallback(IntPtr menu); + [UnmanagedFunctionPointer(CallingConvention.StdCall)] + private delegate void WebViewFullscreenEnteredCallback(); + + [UnmanagedFunctionPointer(CallingConvention.StdCall)] + private delegate void WebViewFullscreenExitedCallback(); + + [UnmanagedFunctionPointer(CallingConvention.StdCall)] + private delegate void WebViewTextFoundCallback(uint count); + /// /// Event for the PageLoadStarted signal which can be used to subscribe or unsubscribe the event handler.
/// This signal is emitted when page loading has started.
@@ -624,6 +644,34 @@ public event EventHandler NavigationPolicyDecided } } + /// + /// Event for the NewWindowPolicyDecided signal which can be used to subscribe or unsubscribe the event handler.
+ /// This signal is emitted when new window policy would be decided.
+ ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public event EventHandler NewWindowPolicyDecided + { + add + { + if (newWindowPolicyDecidedEventHandler == null) + { + newWindowPolicyDecidedCallback = OnNewWindowPolicyDecided; + IntPtr ip = Marshal.GetFunctionPointerForDelegate(newWindowPolicyDecidedCallback); + Interop.WebView.RegisterNewWindowPolicyDecidedCallback(SwigCPtr, new HandleRef(this, ip)); + } + newWindowPolicyDecidedEventHandler += value; + } + remove + { + newWindowPolicyDecidedEventHandler -= value; + if (newWindowPolicyDecidedEventHandler == null) + { + IntPtr ip = IntPtr.Zero; + Interop.WebView.RegisterNewWindowPolicyDecidedCallback(SwigCPtr, new HandleRef(this, ip)); + } + } + } + /// /// Event for the NewWindowCreated signal which can be used to subscribe or unsubscribe the event handler.
/// This signal is emitted when a new window would be created.
@@ -820,6 +868,90 @@ public event EventHandler ContextMenuHidden } } + /// + /// Event for the FullscreenEntered signal which can be used to subscribe or unsubscribe the event handler.
+ /// This signal is emitted when fullscreen is entered.
+ ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public event EventHandler FullscreenEntered + { + add + { + if (fullscreenEnteredEventHandler == null) + { + fullscreenEnteredCallback = OnFullscreenEntered; + IntPtr ip = Marshal.GetFunctionPointerForDelegate(fullscreenEnteredCallback); + Interop.WebView.RegisterFullscreenEnteredCallback(SwigCPtr, new HandleRef(this, ip)); + } + fullscreenEnteredEventHandler += value; + } + remove + { + fullscreenEnteredEventHandler -= value; + if (fullscreenEnteredEventHandler == null) + { + IntPtr ip = IntPtr.Zero; + Interop.WebView.RegisterFullscreenEnteredCallback(SwigCPtr, new HandleRef(this, ip)); + } + } + } + + /// + /// Event for the FullscreenExited signal which can be used to subscribe or unsubscribe the event handler.
+ /// This signal is emitted when fullscreen is exited.
+ ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public event EventHandler FullscreenExited + { + add + { + if (fullscreenExitedEventHandler == null) + { + fullscreenExitedCallback = OnFullscreenExited; + IntPtr ip = Marshal.GetFunctionPointerForDelegate(fullscreenExitedCallback); + Interop.WebView.RegisterFullscreenExitedCallback(SwigCPtr, new HandleRef(this, ip)); + } + fullscreenExitedEventHandler += value; + } + remove + { + fullscreenExitedEventHandler -= value; + if (fullscreenExitedEventHandler == null) + { + IntPtr ip = IntPtr.Zero; + Interop.WebView.RegisterFullscreenExitedCallback(SwigCPtr, new HandleRef(this, ip)); + } + } + } + + /// + /// Event for the TextFound signal which can be used to subscribe or unsubscribe the event handler.
+ /// This signal is emitted when text is found.
+ ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public event EventHandler TextFound + { + add + { + if (textFoundEventHandler == null) + { + textFoundCallback = OnTextFound; + IntPtr ip = Marshal.GetFunctionPointerForDelegate(textFoundCallback); + Interop.WebView.RegisterTextFoundCallback(SwigCPtr, new HandleRef(this, ip)); + } + textFoundEventHandler += value; + } + remove + { + textFoundEventHandler -= value; + if (textFoundEventHandler == null) + { + IntPtr ip = IntPtr.Zero; + Interop.WebView.RegisterTextFoundCallback(SwigCPtr, new HandleRef(this, ip)); + } + } + } + /// /// Options for searching texts. /// @@ -2416,6 +2548,16 @@ public void ClearHistory() if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Exit fullscreen. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public void ExitFullscreen() + { + Interop.WebView.ExitFullscreen(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + /// /// Scales the current page, centered at the given point. /// @@ -2688,6 +2830,11 @@ private void OnNavigationPolicyDecided(IntPtr maker) navigationPolicyDecidedEventHandler?.Invoke(this, new WebViewPolicyDecidedEventArgs(new WebPolicyDecisionMaker(maker, true))); } + private void OnNewWindowPolicyDecided(IntPtr maker) + { + newWindowPolicyDecidedEventHandler?.Invoke(this, new WebViewPolicyDecidedEventArgs(new WebPolicyDecisionMaker(maker, true))); + } + private void OnNewWindowCreated(out IntPtr viewHandle) { WebView view = newWindowCreatedEventHandler?.Invoke(this, new EventArgs()); @@ -2730,5 +2877,20 @@ private void OnHitTestFinished(IntPtr test) hitTestFinishedCallback?.Invoke(new WebHitTestResult(test, true)); #pragma warning restore CA2000 // Dispose objects before losing scope } + + private void OnFullscreenEntered() + { + fullscreenEnteredEventHandler?.Invoke(this, new EventArgs()); + } + + private void OnFullscreenExited() + { + fullscreenExitedEventHandler?.Invoke(this, new EventArgs()); + } + + private void OnTextFound(uint count) + { + textFoundEventHandler?.Invoke(this, new WebViewTextFoundEventArgs(count)); + } } } From ddde596635bdd6b7c939069f06a45e3b97d5ccb1 Mon Sep 17 00:00:00 2001 From: "huayong.xu" Date: Fri, 19 Jan 2024 15:09:31 +0800 Subject: [PATCH 010/198] [NUI] Create Context/CookieManager when WebView is created. --- src/Tizen.NUI/src/public/WebView/WebView.cs | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/Tizen.NUI/src/public/WebView/WebView.cs b/src/Tizen.NUI/src/public/WebView/WebView.cs index 4d93f14803b..60d8b4be96f 100755 --- a/src/Tizen.NUI/src/public/WebView/WebView.cs +++ b/src/Tizen.NUI/src/public/WebView/WebView.cs @@ -1048,13 +1048,25 @@ public enum HitTestMode /// Context. ///
[EditorBrowsable(EditorBrowsableState.Never)] - public WebContext Context => context; + public WebContext Context + { + get + { + return new WebContext(Interop.WebView.GetWebContext(), false); + } + } /// /// CookieManager. /// [EditorBrowsable(EditorBrowsableState.Never)] - public WebCookieManager CookieManager => cookieManager; + public WebCookieManager CookieManager + { + get + { + return new WebCookieManager(Interop.WebView.GetWebCookieManager(), false); + } + } /// /// BackForwardList. From 33ee8388e420465b272a85b1e8887c9da9e118e0 Mon Sep 17 00:00:00 2001 From: sunghyun kim Date: Tue, 23 Jan 2024 19:24:57 +0900 Subject: [PATCH 011/198] [NUI] Support CornerRadius in WebView this patch supports cornerRadius in WebView refer to : https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-toolkit/+/304770/ --- src/Tizen.NUI/src/public/WebView/WebView.cs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/Tizen.NUI/src/public/WebView/WebView.cs b/src/Tizen.NUI/src/public/WebView/WebView.cs index 60d8b4be96f..c71f37c654c 100755 --- a/src/Tizen.NUI/src/public/WebView/WebView.cs +++ b/src/Tizen.NUI/src/public/WebView/WebView.cs @@ -2775,6 +2775,23 @@ internal WebView Assign(WebView webView) return ret; } + internal override void ApplyCornerRadius() + { + base.ApplyCornerRadius(); + + if (backgroundExtraData == null) + { + return; + } + + // Update corner radius properties to webView by ActionUpdateProperty + if (backgroundExtraData.CornerRadius != null) + { + Interop.View.InternalUpdateVisualPropertyVector4(this.SwigCPtr, WebView.Property.Url, Visual.Property.CornerRadius, Vector4.getCPtr(backgroundExtraData.CornerRadius)); + } + Interop.View.InternalUpdateVisualPropertyInt(this.SwigCPtr, WebView.Property.Url, Visual.Property.CornerRadiusPolicy, (int)backgroundExtraData.CornerRadiusPolicy); + } + private void OnPageLoadStarted(string pageUrl) { WebViewPageLoadEventArgs e = new WebViewPageLoadEventArgs(); From 06032c225384eb7e5a929453df7b124b322cb691 Mon Sep 17 00:00:00 2001 From: "huayong.xu" Date: Fri, 2 Feb 2024 19:44:55 +0800 Subject: [PATCH 012/198] [NUI] Add a WebView API for notifying orientation change. --- src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs | 3 +++ src/Tizen.NUI/src/public/WebView/WebView.cs | 10 ++++++++++ 2 files changed, 13 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs b/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs index 0235d7c65ad..c35ad24d03d 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs @@ -150,6 +150,9 @@ internal static partial class WebView [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_ResumeNetworkLoading")] public static extern void ResumeNetworkLoading(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_ChangeOrientation")] + public static extern void ChangeOrientation(global::System.Runtime.InteropServices.HandleRef jarg1, int orientation); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_AddCustomHeader")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] public static extern bool AddCustomHeader(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, string jarg3); diff --git a/src/Tizen.NUI/src/public/WebView/WebView.cs b/src/Tizen.NUI/src/public/WebView/WebView.cs index c71f37c654c..d0999046913 100755 --- a/src/Tizen.NUI/src/public/WebView/WebView.cs +++ b/src/Tizen.NUI/src/public/WebView/WebView.cs @@ -2298,6 +2298,16 @@ public void ResumeNetworkLoading() if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Change orientation. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public void ChangeOrientation(Window.WindowOrientation orientation) + { + Interop.WebView.ChangeOrientation(SwigCPtr, (int)orientation); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + /// /// Adds custom header. /// From 7d1ffce819cc590020abeace0b3e1e8203497b34 Mon Sep 17 00:00:00 2001 From: jeremy-jang <35089715+jeremy-jang@users.noreply.github.com> Date: Wed, 24 Jul 2024 17:15:56 +0900 Subject: [PATCH 013/198] [Tdbc] Fix static analysis issue (#6228) System.Reflection.Assembly.CreateInstance() can return null value. Signed-off-by: Sangyoon Jang --- src/Tizen.Data.Tdbc/Tizen.Data.Tdbc/DriverManager.cs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/Tizen.Data.Tdbc/Tizen.Data.Tdbc/DriverManager.cs b/src/Tizen.Data.Tdbc/Tizen.Data.Tdbc/DriverManager.cs index d7c1e113e5c..690f6dbb74b 100644 --- a/src/Tizen.Data.Tdbc/Tizen.Data.Tdbc/DriverManager.cs +++ b/src/Tizen.Data.Tdbc/Tizen.Data.Tdbc/DriverManager.cs @@ -58,6 +58,11 @@ public static IConnection GetConnection(Uri uri) throw new SystemException("Failed to open connection due to: " + ex); } + if (conn == null) + { + throw new SystemException("Failed to open connection"); + } + conn.Open(uri); return conn; } @@ -90,6 +95,11 @@ public static IConnection GetConnection(String connectionString) throw new SystemException("Failed to open connection due to: " + ex); } + if (conn == null) + { + throw new SystemException("Failed to open connection"); + } + conn.Open(connectionString); return conn; } From 14d3f14bb8ae9f7c294276c99507ad16051fdb30 Mon Sep 17 00:00:00 2001 From: Yelin Jeong Date: Mon, 22 Jul 2024 16:59:51 +0900 Subject: [PATCH 014/198] [NoACR][MachineLearning.Inference] Change internal tensor size limit This patch changes internal tensor size limit in MachineLearning.Inference. Tizen Native ML api's max tensor size has been changed to 256. Signed-off-by: Yelin Jeong --- .../Tizen.MachineLearning.Inference/Commons.cs | 2 +- .../Tizen.MachineLearning.Inference/TensorsInfo.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Tizen.MachineLearning.Inference/Tizen.MachineLearning.Inference/Commons.cs b/src/Tizen.MachineLearning.Inference/Tizen.MachineLearning.Inference/Commons.cs index 951ca333c56..ab655239b72 100755 --- a/src/Tizen.MachineLearning.Inference/Tizen.MachineLearning.Inference/Commons.cs +++ b/src/Tizen.MachineLearning.Inference/Tizen.MachineLearning.Inference/Commons.cs @@ -272,7 +272,7 @@ internal static class Tensor /// /// The maximum number of other/tensor instances that other/tensors may have. /// - internal const int SizeLimit = 16; + internal const int SizeLimit = 256; /// /// Unknown Type of Tensor information. It is internally used for error check. diff --git a/src/Tizen.MachineLearning.Inference/Tizen.MachineLearning.Inference/TensorsInfo.cs b/src/Tizen.MachineLearning.Inference/Tizen.MachineLearning.Inference/TensorsInfo.cs index 094c044eca6..c9927c84755 100755 --- a/src/Tizen.MachineLearning.Inference/Tizen.MachineLearning.Inference/TensorsInfo.cs +++ b/src/Tizen.MachineLearning.Inference/Tizen.MachineLearning.Inference/TensorsInfo.cs @@ -60,10 +60,10 @@ public TensorsInfo() } /// - /// Add a Tensor information to the TensorsInfo instance. Note that we support up to 16 tensors in TensorsInfo. + /// Add a Tensor information to the TensorsInfo instance. Note that we support up to 256 tensors in TensorsInfo. /// /// Data element type of Tensor. - /// Dimension of Tensor. Note that we support up to 4th ranks. + /// Dimension of Tensor. Note that we support up to 16th ranks. /// http://tizen.org/feature/machine_learning.inference /// Thrown when the number of Tensor already exceeds the size limits (i.e. Tensor.SizeLimit) /// Thrown when the method failed due to an invalid parameter. From efb8793e7416dc14f2fa1c50688af3c1f0143aec Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Wed, 31 Jul 2024 10:36:48 +0900 Subject: [PATCH 015/198] [NUI] Version update(22334) --- packaging/csapi-tizenfx.spec | 2 +- packaging/version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/csapi-tizenfx.spec b/packaging/csapi-tizenfx.spec index 93645f5f123..92dacd8a77a 100644 --- a/packaging/csapi-tizenfx.spec +++ b/packaging/csapi-tizenfx.spec @@ -1,7 +1,7 @@ # Auto-generated from csapi-tizenfx.spec.in by makespec.sh %define TIZEN_NET_API_VERSION 12 -%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22333 +%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22334 %define TIZEN_NET_NUGET_VERSION 12.0.0.99999 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework diff --git a/packaging/version.txt b/packaging/version.txt index 616b7914b8c..a5e5b6f56bc 100755 --- a/packaging/version.txt +++ b/packaging/version.txt @@ -6,4 +6,4 @@ RPM_VERSION=12.0.0.999 NUGET_VERSION=12.0.0.99999 # RPM Version Suffix -RPM_VERSION_SUFFIX=nui22333 +RPM_VERSION_SUFFIX=nui22334 From b77a9434da511db6cc9ac08f7f7ae14c82de6187 Mon Sep 17 00:00:00 2001 From: Seungho Baek Date: Mon, 29 Jul 2024 15:34:48 +0900 Subject: [PATCH 016/198] [NUI] Add Exclusive Option for Capture Signed-off-by: Seungho Baek --- .../src/internal/Interop/Interop.Capture.cs | 7 +++++++ src/Tizen.NUI/src/public/Utility/Capture.cs | 13 +++++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.Capture.cs b/src/Tizen.NUI/src/internal/Interop/Interop.Capture.cs index 180827d63d6..16bcddde8ac 100644 --- a/src/Tizen.NUI/src/internal/Interop/Interop.Capture.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.Capture.cs @@ -46,6 +46,13 @@ internal static partial class Capture [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Capture_SetImageQuality")] public static extern void SetImageQuality(HandleRef capture, uint quality); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Capture_SetExclusive")] + public static extern void SetExclusive(HandleRef capture, bool exclusive); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Capture_IsExclusive")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool IsExclusive(HandleRef capture); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Capture_Signal_Empty")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] public static extern bool SignalEmpty(HandleRef jarg1); diff --git a/src/Tizen.NUI/src/public/Utility/Capture.cs b/src/Tizen.NUI/src/public/Utility/Capture.cs index 885da7ea04d..5208986314e 100755 --- a/src/Tizen.NUI/src/public/Utility/Capture.cs +++ b/src/Tizen.NUI/src/public/Utility/Capture.cs @@ -64,6 +64,19 @@ internal Capture(IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) { } + /// + /// Gets or sets whether this capture source can be rendered on Screen or not. + /// If it is true, the source is not rendered on screen but it will be captured. + /// If it is false, the source is rendered on both of screen and captured result. + /// Default value is false. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public bool IsExclusive + { + get => Interop.Capture.IsExclusive(SwigCPtr); + set => Interop.Capture.SetExclusive(SwigCPtr, value); + } + /// /// Dispose /// From 60581fd876c6b682bad9c5ea87ef501cece24840 Mon Sep 17 00:00:00 2001 From: "joogab.yun" Date: Thu, 1 Aug 2024 14:53:37 +0900 Subject: [PATCH 017/198] [NUI] Add GetLastPanGestureState Use this when you want to know the status value of a pan gesture. https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-core/+/315444/ https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-adaptor/+/315445/ https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-csharp-binder/+/315446/ --- .../src/internal/Interop/Interop.Window.cs | 3 +++ src/Tizen.NUI/src/public/Window/Window.cs | 16 ++++++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs b/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs index 22c0a8c7c88..af549db0302 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs @@ -323,6 +323,9 @@ internal static partial class Window [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_InternalRetrievingLastHoverEvent")] public static extern void InternalRetrievingLastHoverEvent(global::System.Runtime.InteropServices.HandleRef window, global::System.Runtime.InteropServices.HandleRef hover); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_InternalRetrievingLastPanGestureState")] + public static extern int InternalRetrievingLastPanGestureState(global::System.Runtime.InteropServices.HandleRef window); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_SetNeedsRotationCompletedAcknowledgement")] public static extern void SetNeedsRotationCompletedAcknowledgement(global::System.Runtime.InteropServices.HandleRef window, bool needAcknowledgement); diff --git a/src/Tizen.NUI/src/public/Window/Window.cs b/src/Tizen.NUI/src/public/Window/Window.cs index c297b3d9024..80bf6cf9df2 100755 --- a/src/Tizen.NUI/src/public/Window/Window.cs +++ b/src/Tizen.NUI/src/public/Window/Window.cs @@ -425,7 +425,7 @@ public enum ResizeDirection /// /// Gets the default window. - /// The main window or default window is automatically created when the application is launched, + /// The main window or default window is automatically created when the application is launched, /// and it remains constant and unchanged throughout the application's operation. /// /// 12 @@ -2223,6 +2223,18 @@ public Hover GetLastHoverEvent() return internalLastHoverEvent; } + /// + /// Gets the last pan gesture state the window gets. + /// + /// The last pan gesture state the window gets. + [EditorBrowsable(EditorBrowsableState.Never)] + public Gesture.StateType GetLastPanGestureState() + { + Gesture.StateType ret = (Gesture.StateType)Interop.Window.InternalRetrievingLastPanGestureState(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + /// /// Sets the necessary for window rotation Acknowledgement. /// After this function called, SendRotationCompletedAcknowledgement() should be called to complete window rotation. @@ -2517,7 +2529,7 @@ public SafeHandle NativeHandle /// /// Gets or sets a value indicating whether the window is modal or not. - /// The modal property of a window requires that it be set to a parent window. + /// The modal property of a window requires that it be set to a parent window. /// The window modal function operates on the specified parent window. /// [EditorBrowsable(EditorBrowsableState.Never)] From 1d0b9a4a8cdfb6c2f2432e8bbe62acfd03ee9f28 Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Fri, 2 Aug 2024 16:06:12 +0900 Subject: [PATCH 018/198] [NUI.Scene3D.Sample] Remove useless looping animation Since some useless animation was running internally until GC comes, CPU usage might be increased for this sample. To avoid useless rendering, let we ensurely dispose not-using animation. Signed-off-by: Eunki, Hong --- test/Tizen.NUI.Scene3D.Sample/Scene3DSample.cs | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/test/Tizen.NUI.Scene3D.Sample/Scene3DSample.cs b/test/Tizen.NUI.Scene3D.Sample/Scene3DSample.cs index ea1f7751a2e..8edc3412fd0 100644 --- a/test/Tizen.NUI.Scene3D.Sample/Scene3DSample.cs +++ b/test/Tizen.NUI.Scene3D.Sample/Scene3DSample.cs @@ -290,6 +290,13 @@ protected void CreateModel(string modelUrl) } }; + if (mModelRotateAnimation != null) + { + mModelRotateAnimation.Stop(); + mModelRotateAnimation.Dispose(); + mModelRotateAnimation = null; + } + mModelRotateAnimation = new Animation(modelRotateAnimationDurationMilliseconds); mModelRotateAnimation.AnimateBy(mModel, "Orientation", new Rotation(new Radian(new Degree(360.0f)), Vector3.YAxis)); @@ -452,9 +459,9 @@ void OnKeyEvent(object source, Window.KeyEventArgs e) } case "f": { - if (mModelAnimation?.State == Animation.States.Playing) + if (mModel != null && mModelLoadFinished) { - if (mModel != null && mModelLoadFinished) + if (mModelAnimation != null && mModelAnimation.State == Animation.States.Playing) { mMotionAnimation = mModel.GenerateMotionDataAnimation(mAnimateMotionData); @@ -479,7 +486,7 @@ void OnKeyEvent(object source, Window.KeyEventArgs e) } else if (e.Key.State == Key.StateType.Up) { - if (mModelAnimation?.State == Animation.States.Stopped) + if (mModelAnimation != null && mModelAnimation.State == Animation.States.Stopped) { if (mMotionAnimation != null) { @@ -499,7 +506,7 @@ void OnKeyEvent(object source, Window.KeyEventArgs e) public void Activate() { - mWindow = Window.Instance; + mWindow = Window.Default; mWindow.BackgroundColor = Color.DarkOrchid; mWindowSize = mWindow.WindowSize; From 5d16e1e122a5d5bbedc9bdd9f7ca0c9826c427a3 Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Wed, 24 Jul 2024 20:09:53 +0900 Subject: [PATCH 019/198] [NUI] Unified EventHandler connect-disconnect code style (Phase 1) Make we use unified code style when we connect/disconnect native signal to C# EventHandler. It will be reduce some copy-paste the non-common style implementation. This PR will change below classes * (internal)Application and it's family * (internal)ObjectRegistry * (internal)Builder * (internal)GaussianBlurView * ImageView and it's family * View, ViewAccessibility * Clipboard * Capture Signed-off-by: Eunki, Hong --- .../src/internal/Application/Application.cs | 340 ++++++++++++------ .../Application/ComponentApplication.cs | 14 +- .../internal/Application/WatchApplication.cs | 9 +- .../src/internal/Common/ObjectRegistry.cs | 26 +- src/Tizen.NUI/src/internal/Utility/Builder.cs | 14 +- .../src/internal/Utility/GaussianBlurView.cs | 5 +- .../src/public/BaseComponents/ImageView.cs | 12 +- .../BaseComponents/LottieAnimationView.cs | 7 +- .../BaseComponents/ViewAccessibilityEvent.cs | 9 + .../src/public/BaseComponents/ViewInternal.cs | 108 ++++++ .../src/public/Clipboard/Clipboard.cs | 2 + .../src/public/Clipboard/ClipboardEvent.cs | 6 +- src/Tizen.NUI/src/public/Utility/Capture.cs | 17 +- 13 files changed, 421 insertions(+), 148 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Application/Application.cs b/src/Tizen.NUI/src/internal/Application/Application.cs index 5e406594c70..4d775bc9579 100755 --- a/src/Tizen.NUI/src/internal/Application/Application.cs +++ b/src/Tizen.NUI/src/internal/Application/Application.cs @@ -660,18 +660,25 @@ public event DaliEventHandler Initialized initSignal = this.InitSignal(); initSignal?.Connect(applicationInitEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.Initialized] Only one listener is allowed\n"); + } } remove { if (applicationInitEventHandler != null) { - initSignal?.Disconnect(applicationInitEventCallbackDelegate); - initSignal?.Dispose(); - initSignal = null; + applicationInitEventHandler -= value; + if (applicationInitEventHandler == null) + { + initSignal?.Disconnect(applicationInitEventCallbackDelegate); + initSignal?.Dispose(); + initSignal = null; + applicationInitEventCallbackDelegate = null; + } } - - applicationInitEventHandler -= value; } } @@ -724,23 +731,29 @@ public event DaliEventHandler Termin if (applicationTerminateEventHandler == null) { applicationTerminateEventHandler += value; - applicationTerminateEventCallbackDelegate = new NUIApplicationTerminateEventCallbackDelegate(OnNUIApplicationTerminate); terminateSignal = this.TerminateSignal(); terminateSignal?.Connect(applicationTerminateEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.Terminating] Only one listener is allowed\n"); + } } remove { if (applicationTerminateEventHandler != null) { - terminateSignal?.Disconnect(applicationTerminateEventCallbackDelegate); - terminateSignal?.Dispose(); - terminateSignal = null; + applicationTerminateEventHandler -= value; + if (applicationTerminateEventHandler == null) + { + terminateSignal?.Disconnect(applicationTerminateEventCallbackDelegate); + terminateSignal?.Dispose(); + terminateSignal = null; + applicationTerminateEventCallbackDelegate = null; + } } - - applicationTerminateEventHandler -= value; } } @@ -774,23 +787,29 @@ public event DaliEventHandler Paused if (applicationPauseEventHandler == null) { applicationPauseEventHandler += value; - applicationPauseEventCallbackDelegate = new NUIApplicationPauseEventCallbackDelegate(OnNUIApplicationPause); pauseSignal = this.PauseSignal(); pauseSignal?.Connect(applicationPauseEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.Paused] Only one listener is allowed\n"); + } } remove { if (applicationPauseEventHandler != null) { - pauseSignal?.Disconnect(applicationPauseEventCallbackDelegate); - pauseSignal?.Dispose(); - pauseSignal = null; + applicationPauseEventHandler -= value; + if (applicationTerminateEventHandler == null) + { + pauseSignal?.Disconnect(applicationPauseEventCallbackDelegate); + pauseSignal?.Dispose(); + pauseSignal = null; + applicationPauseEventCallbackDelegate = null; + } } - - applicationPauseEventHandler -= value; } } @@ -815,23 +834,29 @@ public event DaliEventHandler Resumed if (applicationResumeEventHandler == null) { applicationResumeEventHandler += value; - applicationResumeEventCallbackDelegate = new NUIApplicationResumeEventCallbackDelegate(OnNUIApplicationResume); resumeSignal = this.ResumeSignal(); resumeSignal?.Connect(applicationResumeEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.Resumed] Only one listener is allowed\n"); + } } remove { if (applicationResumeEventHandler != null) { - resumeSignal?.Disconnect(applicationResumeEventCallbackDelegate); - resumeSignal?.Dispose(); - resumeSignal = null; + applicationResumeEventHandler -= value; + if (applicationResumeEventHandler == null) + { + resumeSignal?.Disconnect(applicationResumeEventCallbackDelegate); + resumeSignal?.Dispose(); + resumeSignal = null; + applicationResumeEventCallbackDelegate = null; + } } - - applicationResumeEventHandler -= value; } } @@ -856,23 +881,29 @@ private void OnNUIApplicationResume(IntPtr data) if (applicationResetEventHandler == null) { applicationResetEventHandler += value; - applicationResetEventCallbackDelegate = new NUIApplicationResetEventCallbackDelegate(OnNUIApplicationReset); resetSignal = this.ResetSignal(); resetSignal?.Connect(applicationResetEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.Reset] Only one listener is allowed\n"); + } } remove { if (applicationResetEventHandler != null) { - resetSignal?.Disconnect(applicationResetEventCallbackDelegate); - resetSignal?.Dispose(); - resetSignal = null; + applicationResetEventHandler -= value; + if (applicationResetEventHandler == null) + { + resetSignal?.Disconnect(applicationResetEventCallbackDelegate); + resetSignal?.Dispose(); + resetSignal = null; + applicationResetEventCallbackDelegate = null; + } } - - applicationResetEventHandler -= value; } } @@ -897,23 +928,29 @@ public event DaliEventHandler La if (applicationLanguageChangedEventHandler == null) { applicationLanguageChangedEventHandler += value; - applicationLanguageChangedEventCallbackDelegate = new NUIApplicationLanguageChangedEventCallbackDelegate(OnNUIApplicationLanguageChanged); languageChangedSignal = this.LanguageChangedSignal(); languageChangedSignal?.Connect(applicationLanguageChangedEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.LanguageChanged] Only one listener is allowed\n"); + } } remove { if (applicationLanguageChangedEventHandler != null) { - languageChangedSignal?.Disconnect(applicationLanguageChangedEventCallbackDelegate); - languageChangedSignal?.Dispose(); - languageChangedSignal = null; + applicationLanguageChangedEventHandler -= value; + if (applicationLanguageChangedEventHandler == null) + { + languageChangedSignal?.Disconnect(applicationLanguageChangedEventCallbackDelegate); + languageChangedSignal?.Dispose(); + languageChangedSignal = null; + applicationLanguageChangedEventCallbackDelegate = null; + } } - - applicationLanguageChangedEventHandler -= value; } } @@ -938,23 +975,29 @@ public event DaliEventHandler Regi if (applicationRegionChangedEventHandler == null) { applicationRegionChangedEventHandler += value; - applicationRegionChangedEventCallbackDelegate = new NUIApplicationRegionChangedEventCallbackDelegate(OnNUIApplicationRegionChanged); regionChangedSignal = this.RegionChangedSignal(); regionChangedSignal?.Connect(applicationRegionChangedEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.RegionChanged] Only one listener is allowed\n"); + } } remove { if (applicationRegionChangedEventHandler != null) { - regionChangedSignal?.Disconnect(applicationRegionChangedEventCallbackDelegate); - regionChangedSignal?.Dispose(); - regionChangedSignal = null; + applicationRegionChangedEventHandler -= value; + if (applicationRegionChangedEventHandler == null) + { + regionChangedSignal?.Disconnect(applicationRegionChangedEventCallbackDelegate); + regionChangedSignal?.Dispose(); + regionChangedSignal = null; + applicationRegionChangedEventCallbackDelegate = null; + } } - - applicationRegionChangedEventHandler -= value; } } @@ -979,23 +1022,29 @@ public event DaliEventHandler Battery if (applicationBatteryLowEventHandler == null) { applicationBatteryLowEventHandler += value; - applicationBatteryLowEventCallbackDelegate = new NUIApplicationBatteryLowEventCallbackDelegate(OnNUIApplicationBatteryLow); batteryLowSignal = this.BatteryLowSignal(); batteryLowSignal?.Connect(applicationBatteryLowEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.BatteryLow] Only one listener is allowed\n"); + } } remove { if (applicationBatteryLowEventHandler != null) { - batteryLowSignal?.Disconnect(applicationBatteryLowEventCallbackDelegate); - batteryLowSignal?.Dispose(); - batteryLowSignal = null; + applicationBatteryLowEventHandler -= value; + if (applicationBatteryLowEventHandler == null) + { + batteryLowSignal?.Disconnect(applicationBatteryLowEventCallbackDelegate); + batteryLowSignal?.Dispose(); + batteryLowSignal = null; + applicationBatteryLowEventCallbackDelegate = null; + } } - - applicationBatteryLowEventHandler -= value; } } @@ -1019,23 +1068,29 @@ public event DaliEventHandler MemoryLo if (applicationMemoryLowEventHandler == null) { applicationMemoryLowEventHandler += value; - applicationMemoryLowEventCallbackDelegate = new NUIApplicationMemoryLowEventCallbackDelegate(OnNUIApplicationMemoryLow); memoryLowSignal = this.MemoryLowSignal(); memoryLowSignal?.Connect(applicationMemoryLowEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.MemoryLow] Only one listener is allowed\n"); + } } remove { if (applicationMemoryLowEventHandler != null) { - memoryLowSignal?.Disconnect(applicationMemoryLowEventCallbackDelegate); - memoryLowSignal?.Dispose(); - memoryLowSignal = null; + applicationMemoryLowEventHandler -= value; + if (applicationMemoryLowEventHandler == null) + { + memoryLowSignal?.Disconnect(applicationMemoryLowEventCallbackDelegate); + memoryLowSignal?.Dispose(); + memoryLowSignal = null; + applicationMemoryLowEventCallbackDelegate = null; + } } - - applicationMemoryLowEventHandler -= value; } } @@ -1059,23 +1114,29 @@ public event DaliEventHandler AppCont if (applicationAppControlEventHandler == null) { applicationAppControlEventHandler += value; - applicationAppControlEventCallbackDelegate = new NUIApplicationAppControlEventCallbackDelegate(OnNUIApplicationAppControl); appControlSignal = this.AppControlSignal(); appControlSignal?.Connect(applicationAppControlEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.AppControl] Only one listener is allowed\n"); + } } remove { if (applicationAppControlEventHandler != null) { - appControlSignal?.Disconnect(applicationAppControlEventCallbackDelegate); - appControlSignal?.Dispose(); - appControlSignal = null; + applicationAppControlEventHandler -= value; + if (applicationAppControlEventHandler == null) + { + appControlSignal?.Disconnect(applicationAppControlEventCallbackDelegate); + appControlSignal?.Dispose(); + appControlSignal = null; + applicationAppControlEventCallbackDelegate = null; + } } - - applicationAppControlEventHandler -= value; } } @@ -1141,24 +1208,30 @@ public event DaliEventHandler TaskInitializ // Restricted to only one listener if (applicationTaskInitEventHandler == null) { - Tizen.Log.Fatal("NUI", "TaskInitialized Property adding"); applicationTaskInitEventHandler += value; applicationTaskInitEventCallbackDelegate = new NUIApplicationInitEventCallbackDelegate(OnApplicationTaskInit); taskInitSignal = this.TaskInitSignal(); taskInitSignal?.Connect(applicationTaskInitEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.TaskInitialized] Only one listener is allowed\n"); + } } remove { if (applicationTaskInitEventHandler != null) { - taskInitSignal?.Disconnect(applicationTaskInitEventCallbackDelegate); - taskInitSignal?.Dispose(); - taskInitSignal = null; + applicationTaskInitEventHandler -= value; + if (applicationTaskInitEventHandler == null) + { + taskInitSignal?.Disconnect(applicationTaskInitEventCallbackDelegate); + taskInitSignal?.Dispose(); + taskInitSignal = null; + applicationTaskInitEventCallbackDelegate = null; + } } - - applicationTaskInitEventHandler -= value; } } @@ -1185,23 +1258,29 @@ public event DaliEventHandler TaskTe if (applicationTaskTerminateEventHandler == null) { applicationTaskTerminateEventHandler += value; - applicationTaskTerminateEventCallbackDelegate = new NUIApplicationTerminateEventCallbackDelegate(OnNUIApplicationTaskTerminate); taskTerminateSignal = this.TaskTerminateSignal(); taskTerminateSignal?.Connect(applicationTaskTerminateEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.TaskTerminating] Only one listener is allowed\n"); + } } remove { if (applicationTaskTerminateEventHandler != null) { - taskTerminateSignal?.Disconnect(applicationTaskTerminateEventCallbackDelegate); - taskTerminateSignal?.Dispose(); - taskTerminateSignal = null; + applicationTaskTerminateEventHandler -= value; + if (applicationTaskTerminateEventHandler == null) + { + taskTerminateSignal?.Disconnect(applicationTaskTerminateEventCallbackDelegate); + taskTerminateSignal?.Dispose(); + taskTerminateSignal = null; + applicationTaskTerminateEventCallbackDelegate = null; + } } - - applicationTaskTerminateEventHandler -= value; } } @@ -1227,23 +1306,29 @@ public event DaliEventHandler Ta if (applicationTaskLanguageChangedEventHandler == null) { applicationTaskLanguageChangedEventHandler += value; - applicationTaskLanguageChangedEventCallbackDelegate = new NUIApplicationLanguageChangedEventCallbackDelegate(OnNUIApplicationTaskLanguageChanged); taskLanguageChangedSignal = this.TaskLanguageChangedSignal(); taskLanguageChangedSignal?.Connect(applicationTaskLanguageChangedEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.TaskLanguageChanged] Only one listener is allowed\n"); + } } remove { if (applicationTaskLanguageChangedEventHandler != null) { - taskLanguageChangedSignal?.Disconnect(applicationTaskLanguageChangedEventCallbackDelegate); - taskLanguageChangedSignal?.Dispose(); - taskLanguageChangedSignal = null; + applicationTaskLanguageChangedEventHandler -= value; + if (applicationTaskLanguageChangedEventHandler == null) + { + taskLanguageChangedSignal?.Disconnect(applicationTaskLanguageChangedEventCallbackDelegate); + taskLanguageChangedSignal?.Dispose(); + taskLanguageChangedSignal = null; + applicationTaskLanguageChangedEventCallbackDelegate = null; + } } - - applicationTaskLanguageChangedEventHandler -= value; } } @@ -1269,23 +1354,29 @@ public event DaliEventHandler Task if (applicationTaskRegionChangedEventHandler == null) { applicationTaskRegionChangedEventHandler += value; - applicationTaskRegionChangedEventCallbackDelegate = new NUIApplicationRegionChangedEventCallbackDelegate(OnNUIApplicationTaskRegionChanged); taskRegionChangedSignal = this.TaskRegionChangedSignal(); taskRegionChangedSignal?.Connect(applicationTaskRegionChangedEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.TaskRegionChanged] Only one listener is allowed\n"); + } } remove { if (applicationTaskRegionChangedEventHandler != null) { - taskRegionChangedSignal?.Disconnect(applicationTaskRegionChangedEventCallbackDelegate); - taskRegionChangedSignal?.Dispose(); - taskRegionChangedSignal = null; + applicationTaskRegionChangedEventHandler -= value; + if (applicationTaskRegionChangedEventHandler == null) + { + taskRegionChangedSignal?.Disconnect(applicationTaskRegionChangedEventCallbackDelegate); + taskRegionChangedSignal?.Dispose(); + taskRegionChangedSignal = null; + applicationTaskRegionChangedEventCallbackDelegate = null; + } } - - applicationTaskRegionChangedEventHandler -= value; } } @@ -1311,23 +1402,29 @@ public event DaliEventHandler TaskBat if (applicationTaskBatteryLowEventHandler == null) { applicationTaskBatteryLowEventHandler += value; - applicationTaskBatteryLowEventCallbackDelegate = new NUIApplicationBatteryLowEventCallbackDelegate(OnNUIApplicationTaskBatteryLow); taskBatteryLowSignal = this.TaskBatteryLowSignal(); taskBatteryLowSignal?.Connect(applicationTaskBatteryLowEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.TaskBatteryLow] Only one listener is allowed\n"); + } } remove { if (applicationTaskBatteryLowEventHandler != null) { - taskBatteryLowSignal?.Disconnect(applicationTaskBatteryLowEventCallbackDelegate); - taskBatteryLowSignal?.Dispose(); - taskBatteryLowSignal = null; + applicationTaskBatteryLowEventHandler -= value; + if (applicationTaskBatteryLowEventHandler == null) + { + taskBatteryLowSignal?.Disconnect(applicationTaskBatteryLowEventCallbackDelegate); + taskBatteryLowSignal?.Dispose(); + taskBatteryLowSignal = null; + applicationTaskBatteryLowEventCallbackDelegate = null; + } } - - applicationTaskBatteryLowEventHandler -= value; } } @@ -1352,23 +1449,29 @@ public event DaliEventHandler TaskMemo if (applicationTaskMemoryLowEventHandler == null) { applicationTaskMemoryLowEventHandler += value; - applicationTaskMemoryLowEventCallbackDelegate = new NUIApplicationMemoryLowEventCallbackDelegate(OnNUIApplicationTaskMemoryLow); taskMemoryLowSignal = this.TaskMemoryLowSignal(); taskMemoryLowSignal?.Connect(applicationTaskMemoryLowEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.TaskMemoryLow] Only one listener is allowed\n"); + } } remove { if (applicationTaskMemoryLowEventHandler != null) { - taskMemoryLowSignal?.Disconnect(applicationTaskMemoryLowEventCallbackDelegate); - taskMemoryLowSignal?.Dispose(); - taskMemoryLowSignal = null; + applicationTaskMemoryLowEventHandler -= value; + if (applicationTaskMemoryLowEventHandler == null) + { + taskMemoryLowSignal?.Disconnect(applicationTaskMemoryLowEventCallbackDelegate); + taskMemoryLowSignal?.Dispose(); + taskMemoryLowSignal = null; + applicationTaskMemoryLowEventCallbackDelegate = null; + } } - - applicationTaskMemoryLowEventHandler -= value; } } @@ -1392,23 +1495,29 @@ public event DaliEventHandler TaskApp taskAppControlSignal = this.TaskAppControlSignal(); taskAppControlSignal?.Connect(applicationTaskAppControlEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Application.TaskAppControl] Only one listener is allowed\n"); + } } remove { if (applicationTaskAppControlEventHandler != null) { - taskAppControlSignal?.Disconnect(applicationTaskAppControlEventCallbackDelegate); - taskAppControlSignal?.Dispose(); - taskAppControlSignal = null; + applicationTaskAppControlEventHandler -= value; + if (applicationTaskAppControlEventHandler == null) + { + taskAppControlSignal?.Disconnect(applicationTaskAppControlEventCallbackDelegate); + taskAppControlSignal?.Dispose(); + taskAppControlSignal = null; + applicationTaskAppControlEventCallbackDelegate = null; + } } - - applicationTaskAppControlEventHandler -= value; } } diff --git a/src/Tizen.NUI/src/internal/Application/ComponentApplication.cs b/src/Tizen.NUI/src/internal/Application/ComponentApplication.cs index fb91e1fac06..c1d8917b68b 100755 --- a/src/Tizen.NUI/src/internal/Application/ComponentApplication.cs +++ b/src/Tizen.NUI/src/internal/Application/ComponentApplication.cs @@ -104,20 +104,26 @@ public event CreateNativeEventHandler CreateNative if (applicationCreateNativeEventHandler == null) { applicationCreateNativeEventHandler += value; - applicationCreateNativeEventCallbackDelegate = new NUIComponentApplicationCreatenativeEventCallbackDelegate(OnApplicationCreateNative); Connect(applicationCreateNativeEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[ComponentApplication.CreateNative] Only one listener is allowed\n"); + } } remove { if (applicationCreateNativeEventHandler != null) { - Disconnect(applicationCreateNativeEventCallbackDelegate); + applicationCreateNativeEventHandler -= value; + if (applicationCreateNativeEventHandler == null) + { + Disconnect(applicationCreateNativeEventCallbackDelegate); + applicationCreateNativeEventCallbackDelegate = null; + } } - - applicationCreateNativeEventHandler -= value; } } diff --git a/src/Tizen.NUI/src/internal/Application/WatchApplication.cs b/src/Tizen.NUI/src/internal/Application/WatchApplication.cs index 8aeef548a8d..8be5ed66f56 100755 --- a/src/Tizen.NUI/src/internal/Application/WatchApplication.cs +++ b/src/Tizen.NUI/src/internal/Application/WatchApplication.cs @@ -153,9 +153,10 @@ public event DaliEventHandler TimeTick { timeTickEventHandler -= value; - if (timeTickEventHandler == null && TimeTickSignal().Empty() == false) + if (timeTickEventHandler == null && timeTickCallback != null) { TimeTickSignal().Disconnect(timeTickCallback); + timeTickCallback = null; } } } @@ -225,9 +226,10 @@ public event DaliEventHandler AmbientTick { ambientTickEventHandler -= value; - if (ambientTickEventHandler == null && AmbientTickSignal().Empty() == false) + if (ambientTickEventHandler == null && ambientTickCallback != null) { AmbientTickSignal().Disconnect(ambientTickCallback); + ambientTickCallback = null; } } } @@ -297,9 +299,10 @@ public event DaliEventHandler AmbientChanged { ambientChangedEventHandler -= value; - if (ambientChangedEventHandler == null && AmbientChangedSignal().Empty() == false) + if (ambientChangedEventHandler == null && ambientChangedCallback != null) { AmbientChangedSignal().Disconnect(ambientChangedCallback); + ambientChangedCallback = null; } } } diff --git a/src/Tizen.NUI/src/internal/Common/ObjectRegistry.cs b/src/Tizen.NUI/src/internal/Common/ObjectRegistry.cs index 15f25f7ee62..37bad4c47ec 100755 --- a/src/Tizen.NUI/src/internal/Common/ObjectRegistry.cs +++ b/src/Tizen.NUI/src/internal/Common/ObjectRegistry.cs @@ -91,16 +91,23 @@ public event DaliEventHandler ObjectCreated objectRegistryObjectCreatedEventCallbackDelegate = new ObjectCreatedEventCallbackDelegate(OnObjectCreated); this.ObjectCreatedSignal().Connect(objectRegistryObjectCreatedEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[ObjectRegistry.ObjectCreated] Only one listener is allowed\n"); + } } remove { if (objectRegistryObjectCreatedEventHandler != null) { - this.ObjectCreatedSignal().Disconnect(objectRegistryObjectCreatedEventCallbackDelegate); + objectRegistryObjectCreatedEventHandler -= value; + if (objectRegistryObjectCreatedEventHandler == null) + { + this.ObjectCreatedSignal().Disconnect(objectRegistryObjectCreatedEventCallbackDelegate); + objectRegistryObjectCreatedEventCallbackDelegate = null; + } } - - objectRegistryObjectCreatedEventHandler -= value; } } @@ -131,16 +138,23 @@ public event DaliEventHandler ObjectDestroyed objectRegistryObjectDestroyedEventCallbackDelegate = new ObjectDestroyedEventCallbackDelegate(OnObjectDestroyed); this.ObjectDestroyedSignal().Connect(objectRegistryObjectDestroyedEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[ObjectRegistry.ObjectDestroyed] Only one listener is allowed\n"); + } } remove { if (objectRegistryObjectDestroyedEventHandler != null) { - this.ObjectDestroyedSignal().Disconnect(objectRegistryObjectDestroyedEventCallbackDelegate); + objectRegistryObjectDestroyedEventHandler -= value; + if (objectRegistryObjectDestroyedEventHandler == null) + { + this.ObjectDestroyedSignal().Disconnect(objectRegistryObjectDestroyedEventCallbackDelegate); + objectRegistryObjectDestroyedEventCallbackDelegate = null; + } } - - objectRegistryObjectDestroyedEventHandler -= value; } } diff --git a/src/Tizen.NUI/src/internal/Utility/Builder.cs b/src/Tizen.NUI/src/internal/Utility/Builder.cs index e31516aa9f7..9adb676daf3 100755 --- a/src/Tizen.NUI/src/internal/Utility/Builder.cs +++ b/src/Tizen.NUI/src/internal/Utility/Builder.cs @@ -51,21 +51,27 @@ public event DaliEventHandler Quit if (builderQuitEventHandler == null) { builderQuitEventHandler += value; - builderQuitEventCallbackDelegate = new QuitEventCallbackDelegate(OnQuit); quitSignal = this.QuitSignal(); quitSignal?.Connect(builderQuitEventCallbackDelegate); } + else + { + Tizen.Log.Error("NUI", "[Builder.Quit] Only one listener is allowed\n"); + } } remove { if (builderQuitEventHandler != null) { - quitSignal?.Disconnect(builderQuitEventCallbackDelegate); + builderQuitEventHandler -= value; + if (builderQuitEventHandler == null) + { + quitSignal?.Disconnect(builderQuitEventCallbackDelegate); + builderQuitEventCallbackDelegate = null; + } } - - builderQuitEventHandler -= value; } } diff --git a/src/Tizen.NUI/src/internal/Utility/GaussianBlurView.cs b/src/Tizen.NUI/src/internal/Utility/GaussianBlurView.cs index dc5f12ee030..c0cae03915c 100755 --- a/src/Tizen.NUI/src/internal/Utility/GaussianBlurView.cs +++ b/src/Tizen.NUI/src/internal/Utility/GaussianBlurView.cs @@ -109,12 +109,12 @@ public event DaliEventHandler Finished { add { - // Restricted to only one listener if (finishedEventHandler == null) { finishedCallback = new FinishedCallbackType(OnFinished); FinishedSignal().Connect(finishedCallback); } + finishedEventHandler += value; } @@ -122,9 +122,10 @@ public event DaliEventHandler Finished { finishedEventHandler -= value; - if (finishedEventHandler == null && FinishedSignal().Empty() == false) + if (finishedEventHandler == null && finishedCallback != null) { FinishedSignal().Disconnect(finishedCallback); + finishedCallback = null; } } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs b/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs index dc18df27ca6..9db7ef81c9e 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs @@ -305,12 +305,12 @@ public event EventHandler ResourceReady { _resourceReadyEventHandler -= value; - ViewResourceReadySignal resourceReadySignal = ResourceReadySignal(this); - if (_resourceReadyEventHandler == null && resourceReadySignal?.Empty() == false) + if (_resourceReadyEventHandler == null && _resourceReadyEventCallback != null) { + using ViewResourceReadySignal resourceReadySignal = ResourceReadySignal(this); resourceReadySignal?.Disconnect(_resourceReadyEventCallback); + _resourceReadyEventCallback = null; } - resourceReadySignal?.Dispose(); } } @@ -331,12 +331,12 @@ internal event EventHandler ResourceLoaded remove { _resourceLoadedEventHandler -= value; - ViewResourceReadySignal resourceReadySignal = this.ResourceReadySignal(this); - if (_resourceLoadedEventHandler == null && resourceReadySignal?.Empty() == false) + if (_resourceLoadedEventHandler == null && _resourceLoadedCallback != null) { + using ViewResourceReadySignal resourceReadySignal = this.ResourceReadySignal(this); resourceReadySignal?.Disconnect(_resourceLoadedCallback); + _resourceLoadedCallback = null; } - resourceReadySignal?.Dispose(); } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs index 2c8a788ab49..0c90bc22f6d 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs @@ -1166,11 +1166,8 @@ public event EventHandler Finished if (finishedEventHandler == null && visualEventSignalCallback != null) { using VisualEventSignal visualEvent = VisualEventSignal(); - visualEvent.Disconnect(visualEventSignalCallback); - if (visualEvent?.Empty() == true) - { - visualEventSignalCallback = null; - } + visualEvent?.Disconnect(visualEventSignalCallback); + visualEventSignalCallback = null; } } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/ViewAccessibilityEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/ViewAccessibilityEvent.cs index b0a84472228..0409033d109 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ViewAccessibilityEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ViewAccessibilityEvent.cs @@ -305,6 +305,7 @@ public event EventHandler AccessibilityGestureInfoReceived gestureInfoSignal?.Disconnect(gestureInfoCallback); gestureInfoSignal?.Dispose(); gestureInfoSignal = null; + gestureInfoCallback = null; } } } @@ -367,6 +368,7 @@ public event EventHandler AccessibilityDescriptionReque getDescriptionSignal?.Disconnect(getDescriptionCallback); getDescriptionSignal?.Dispose(); getDescriptionSignal = null; + getDescriptionCallback = null; } } } @@ -429,6 +431,7 @@ public event EventHandler AccessibilityNameRequested getNameSignal?.Disconnect(getNameCallback); getNameSignal?.Dispose(); getNameSignal = null; + getNameCallback = null; } } } @@ -491,6 +494,7 @@ public event EventHandler AccessibilityActivated ActivateSignal?.Disconnect(activateCallback); ActivateSignal?.Dispose(); ActivateSignal = null; + activateCallback = null; } } } @@ -540,6 +544,7 @@ public event EventHandler AccessibilityReadingSkipped ReadingSkippedSignal?.Disconnect(readingSkippedCallback); ReadingSkippedSignal?.Dispose(); ReadingSkippedSignal = null; + readingSkippedCallback = null; } } } @@ -589,6 +594,7 @@ public event EventHandler AccessibilityReadingPaused ReadingPausedSignal?.Disconnect(readingPausedCallback); ReadingPausedSignal?.Dispose(); ReadingPausedSignal = null; + readingPausedCallback = null; } } } @@ -638,6 +644,7 @@ public event EventHandler AccessibilityReadingResumed ReadingResumedSignal?.Disconnect(readingResumedCallback); ReadingResumedSignal?.Dispose(); ReadingResumedSignal = null; + readingResumedCallback = null; } } } @@ -687,6 +694,7 @@ public event EventHandler AccessibilityReadingCancelled ReadingCancelledSignal?.Disconnect(readingCancelledCallback); ReadingCancelledSignal?.Dispose(); ReadingCancelledSignal = null; + readingCancelledCallback = null; } } } @@ -736,6 +744,7 @@ public event EventHandler AccessibilityReadingStopped ReadingStoppedSignal?.Disconnect(readingStoppedCallback); ReadingStoppedSignal?.Dispose(); ReadingStoppedSignal = null; + readingStoppedCallback = null; } } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs b/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs index 951381118c6..4de15a6de21 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs @@ -1619,6 +1619,14 @@ private void DisConnectFromSignals() hitTestResultDataCallback = null; } + if (visibilityChangedEventCallback != null) + { + NUILog.Debug($"[Dispose] visibilityChangedEventCallback"); + + Interop.ActorSignal.VisibilityChangedDisconnect(SwigCPtr, visibilityChangedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + visibilityChangedEventCallback = null; + } if (interceptTouchDataCallback != null) { @@ -1629,6 +1637,15 @@ private void DisConnectFromSignals() interceptTouchDataCallback = null; } + if (layoutDirectionChangedEventCallback != null) + { + NUILog.Debug($"[Dispose] layoutDirectionChangedEventCallback"); + + Interop.ActorSignal.LayoutDirectionChangedDisconnect(SwigCPtr, layoutDirectionChangedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + layoutDirectionChangedEventCallback = null; + } + if (touchDataCallback != null) { NUILog.Debug($"[Dispose] touchDataCallback"); @@ -1685,6 +1702,97 @@ private void DisConnectFromSignals() backgroundResourceLoadedCallback = null; } + // For ViewAccessibility + if (gestureInfoCallback != null) + { + NUILog.Debug($"[Dispose] gestureInfoCallback"); + + gestureInfoSignal?.Disconnect(gestureInfoCallback); + gestureInfoSignal?.Dispose(); + gestureInfoSignal = null; + gestureInfoCallback = null; + } + + if (getDescriptionCallback != null) + { + NUILog.Debug($"[Dispose] getDescriptionCallback"); + + getDescriptionSignal?.Disconnect(getDescriptionCallback); + getDescriptionSignal?.Dispose(); + getDescriptionSignal = null; + getDescriptionCallback = null; + } + + if (getNameCallback != null) + { + NUILog.Debug($"[Dispose] getNameCallback"); + + getNameSignal?.Disconnect(getNameCallback); + getNameSignal?.Dispose(); + getNameSignal = null; + getNameCallback = null; + } + + if (activateCallback != null) + { + NUILog.Debug($"[Dispose] activateCallback"); + + ActivateSignal?.Disconnect(activateCallback); + ActivateSignal?.Dispose(); + ActivateSignal = null; + activateCallback = null; + } + + if (readingSkippedCallback != null) + { + NUILog.Debug($"[Dispose] readingSkippedCallback"); + + ReadingSkippedSignal?.Disconnect(readingSkippedCallback); + ReadingSkippedSignal?.Dispose(); + ReadingSkippedSignal = null; + readingSkippedCallback = null; + } + + if (readingPausedCallback != null) + { + NUILog.Debug($"[Dispose] readingPausedCallback"); + + ReadingPausedSignal?.Disconnect(readingPausedCallback); + ReadingPausedSignal?.Dispose(); + ReadingPausedSignal = null; + readingPausedCallback = null; + } + + if (readingResumedCallback != null) + { + NUILog.Debug($"[Dispose] readingResumedCallback"); + + ReadingResumedSignal?.Disconnect(readingResumedCallback); + ReadingResumedSignal?.Dispose(); + ReadingResumedSignal = null; + readingResumedCallback = null; + } + + if (readingCancelledCallback != null) + { + NUILog.Debug($"[Dispose] readingCancelledCallback"); + + ReadingCancelledSignal?.Disconnect(readingCancelledCallback); + ReadingCancelledSignal?.Dispose(); + ReadingCancelledSignal = null; + readingCancelledCallback = null; + } + + if (readingStoppedCallback != null) + { + NUILog.Debug($"[Dispose] readingStoppedCallback"); + + ReadingStoppedSignal?.Disconnect(readingStoppedCallback); + ReadingStoppedSignal?.Dispose(); + ReadingStoppedSignal = null; + readingStoppedCallback = null; + } + NDalicPINVOKE.ThrowExceptionIfExists(); NUILog.Debug($"[Dispose] DisConnectFromSignals END"); } diff --git a/src/Tizen.NUI/src/public/Clipboard/Clipboard.cs b/src/Tizen.NUI/src/public/Clipboard/Clipboard.cs index c0f84f8bed1..913c3db4dfe 100755 --- a/src/Tizen.NUI/src/public/Clipboard/Clipboard.cs +++ b/src/Tizen.NUI/src/public/Clipboard/Clipboard.cs @@ -214,11 +214,13 @@ protected override void Dispose(DisposeTypes type) if (clipboardDataReceivedCallback != null) { this.ClipboardDataReceivedSignal().Disconnect(clipboardDataReceivedCallback); + clipboardDataReceivedCallback = null; } if (clipboardDataSelectedCallback != null) { this.ClipboardDataSelectedSignal().Disconnect(clipboardDataSelectedCallback); + clipboardDataSelectedCallback = null; } } diff --git a/src/Tizen.NUI/src/public/Clipboard/ClipboardEvent.cs b/src/Tizen.NUI/src/public/Clipboard/ClipboardEvent.cs index bbf0bb3d3cc..c8583347d27 100755 --- a/src/Tizen.NUI/src/public/Clipboard/ClipboardEvent.cs +++ b/src/Tizen.NUI/src/public/Clipboard/ClipboardEvent.cs @@ -121,9 +121,10 @@ public event EventHandler DataSelected remove { clipboardDataSelectedEventHandler -= value; - if (clipboardDataSelectedEventHandler == null && ClipboardDataSelectedSignal().Empty() == false) + if (clipboardDataSelectedEventHandler == null && clipboardDataSelectedCallback != null) { ClipboardDataSelectedSignal().Disconnect(clipboardDataSelectedCallback); + clipboardDataSelectedCallback = null; } } } @@ -142,9 +143,10 @@ private event EventHandler ClipboardDataReceived remove { clipboardDataReceivedEventHandler -= value; - if (clipboardDataReceivedEventHandler == null && ClipboardDataReceivedSignal().Empty() == false) + if (clipboardDataReceivedEventHandler == null && clipboardDataReceivedCallback != null) { ClipboardDataReceivedSignal().Disconnect(clipboardDataReceivedCallback); + clipboardDataReceivedCallback = null; } } } diff --git a/src/Tizen.NUI/src/public/Utility/Capture.cs b/src/Tizen.NUI/src/public/Utility/Capture.cs index 5208986314e..9bd506b0d30 100755 --- a/src/Tizen.NUI/src/public/Utility/Capture.cs +++ b/src/Tizen.NUI/src/public/Utility/Capture.cs @@ -94,6 +94,13 @@ protected override void Dispose(DisposeTypes type) //Called by User //Release your own managed resources here. //You should release all of your own disposable objects here. + if (finishedCallback != null) + { + finishedSignal?.Disconnect(finishedCallback); + finishedSignal?.Dispose(); + finishedSignal = null; + finishedCallback = null; + } } base.Dispose(type); @@ -318,8 +325,8 @@ public event EventHandler Finished { if (finishedEventHandler == null && disposed == false) { - finishedSignal = new CaptureSignal(Interop.Capture.Get(SwigCPtr)); finishedCallback = onFinished; + finishedSignal = new CaptureSignal(Interop.Capture.Get(SwigCPtr)); finishedSignal.Connect(finishedCallback); } finishedEventHandler += value; @@ -328,10 +335,12 @@ public event EventHandler Finished { finishedEventHandler -= value; - if (finishedEventHandler == null && finishedSignal?.Empty() == false) + if (finishedEventHandler == null && finishedCallback != null) { - finishedCallback = onFinished; - finishedSignal.Disconnect(finishedCallback); + finishedSignal?.Disconnect(finishedCallback); + finishedSignal?.Dispose(); + finishedSignal = null; + finishedCallback = null; } } } From 5839c927959eec9d41f91f2135733f892f168bbc Mon Sep 17 00:00:00 2001 From: Seungho Baek Date: Tue, 16 Jul 2024 16:18:41 +0900 Subject: [PATCH 020/198] [NUI] Add InheritedVisibilityChanged Event Signed-off-by: Seungho Baek --- .../internal/Interop/Interop.ActorSignal.cs | 6 ++ .../src/public/BaseComponents/ViewEvent.cs | 68 ++++++++++++++++++- .../AggregatedVisibilityChangedEventArgs.cs | 38 +++++++++++ src/Tizen.NUI/src/public/Common/Layer.cs | 58 ++++++++++++++++ 4 files changed, 168 insertions(+), 2 deletions(-) create mode 100644 src/Tizen.NUI/src/public/Common/AggregatedVisibilityChangedEventArgs.cs diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.ActorSignal.cs b/src/Tizen.NUI/src/internal/Interop/Interop.ActorSignal.cs index 97e527c1bd9..ca88e612a3c 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.ActorSignal.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.ActorSignal.cs @@ -82,6 +82,12 @@ internal static partial class ActorSignal [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Actor_VisibilityChangedSignal_Disconnect")] public static extern void VisibilityChangedDisconnect(HandleRef actor, HandleRef handler); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Actor_InheritedVisibilityChangedSignal_Connect")] + public static extern void AggregatedVisibilityChangedConnect(HandleRef actor, HandleRef handler); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Actor_InheritedVisibilityChangedSignal_Disconnect")] + public static extern void AggregatedVisibilityChangedDisconnect(HandleRef actor, HandleRef handler); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Actor_LayoutDirectionChangedSignal_Connect")] public static extern void LayoutDirectionChangedConnect(HandleRef actor, HandleRef handler); diff --git a/src/Tizen.NUI/src/public/BaseComponents/ViewEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/ViewEvent.cs index 0b082de31f7..8234b1a1c66 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ViewEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ViewEvent.cs @@ -43,11 +43,12 @@ public partial class View private HoverEventCallbackType hoverEventCallback; private EventHandler visibilityChangedEventHandler; private VisibilityChangedEventCallbackType visibilityChangedEventCallback; + private EventHandler aggregatedVisibilityChangedEventHandler; + private AggregatedVisibilityChangedEventCallbackType aggregatedVisibilityChangedEventCallback; private EventHandler keyInputFocusGainedEventHandler; - private KeyInputFocusGainedCallbackType keyInputFocusGainedCallback; - private EventHandler keyInputFocusLostEventHandler; + private EventHandler keyInputFocusLostEventHandler; private KeyInputFocusLostCallbackType keyInputFocusLostCallback; private EventHandler onRelayoutEventHandler; private OnRelayoutEventCallbackType onRelayoutEventCallback; @@ -64,30 +65,43 @@ public partial class View [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void OffWindowEventCallbackType(IntPtr control); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate bool WheelEventCallbackType(IntPtr view, IntPtr wheelEvent); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate bool KeyCallbackType(IntPtr control, IntPtr keyEvent); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate bool TouchDataCallbackType(IntPtr view, IntPtr touchData); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate bool HoverEventCallbackType(IntPtr view, IntPtr hoverEvent); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void VisibilityChangedEventCallbackType(IntPtr data, bool visibility, VisibilityChangeType type); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + private delegate void AggregatedVisibilityChangedEventCallbackType(IntPtr data, bool visibility); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void ResourcesLoadedCallbackType(IntPtr control); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void _backgroundResourceLoadedCallbackType(IntPtr view); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void KeyInputFocusGainedCallbackType(IntPtr control); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void KeyInputFocusLostCallbackType(IntPtr control); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void OnRelayoutEventCallbackType(IntPtr control); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void OnWindowEventCallbackType(IntPtr control); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void LayoutDirectionChangedEventCallbackType(IntPtr data, ViewLayoutDirectionType type); @@ -477,6 +491,7 @@ public event EventHandler RemovedFromWindow } } } + /// /// An event for visibility change which can be used to subscribe or unsubscribe the event handler.
/// This event is sent when the visibility of this or a parent view is changed.
@@ -517,6 +532,43 @@ public event EventHandler VisibilityChanged } } } + /// + /// An event for aggregated visibility change which can be used to subscribe or unsubscribe the event handler.
+ /// This event is sent when visible property of this View, any of its parents (right up to the root layer) or Window changes.
+ ///
+ /// + /// + /// This event is NOT sent if the view becomes transparent (or the reverse), it's ONLY linked with Show() and Hide() of View and Window. + /// For reference, a view is only shown if the view, its parents (up to the root view) and Window are also visible, + /// they are not transparent, and the view has a non-zero size. + /// So if its parent is not visible, the view is not shown. + /// + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public event EventHandler AggregatedVisibilityChanged + { + add + { + if (aggregatedVisibilityChangedEventHandler == null) + { + aggregatedVisibilityChangedEventCallback = OnAggregatedVisibilityChanged; + Interop.ActorSignal.AggregatedVisibilityChangedConnect(SwigCPtr, aggregatedVisibilityChangedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + } + aggregatedVisibilityChangedEventHandler += value; + } + + remove + { + aggregatedVisibilityChangedEventHandler -= value; + if (aggregatedVisibilityChangedEventHandler == null && aggregatedVisibilityChangedEventCallback != null) + { + Interop.ActorSignal.AggregatedVisibilityChangedDisconnect(SwigCPtr, aggregatedVisibilityChangedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + aggregatedVisibilityChangedEventCallback = null; + } + } + } /// /// Event for layout direction change which can be used to subscribe/unsubscribe the event handler.
@@ -1024,6 +1076,18 @@ private void OnVisibilityChanged(IntPtr data, bool visibility, VisibilityChangeT } } + // Callback for View aggregated visibility change signal + private void OnAggregatedVisibilityChanged(IntPtr data, bool visibility) + { + AggregatedVisibilityChangedEventArgs e = new AggregatedVisibilityChangedEventArgs(); + e.Visibility = visibility; + + if (aggregatedVisibilityChangedEventHandler != null) + { + aggregatedVisibilityChangedEventHandler(this, e); + } + } + // Callback for View layout direction change signal private void OnLayoutDirectionChanged(IntPtr data, ViewLayoutDirectionType type) { diff --git a/src/Tizen.NUI/src/public/Common/AggregatedVisibilityChangedEventArgs.cs b/src/Tizen.NUI/src/public/Common/AggregatedVisibilityChangedEventArgs.cs new file mode 100644 index 00000000000..3edad7d9000 --- /dev/null +++ b/src/Tizen.NUI/src/public/Common/AggregatedVisibilityChangedEventArgs.cs @@ -0,0 +1,38 @@ +/* + * Copyright(c) 2024 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +using System; +using System.ComponentModel; + +namespace Tizen.NUI +{ + /// + /// Event arguments of aggregated visibility changed. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public class AggregatedVisibilityChangedEventArgs : EventArgs + { + /// + /// Whether the view is now visible or not. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public bool Visibility + { + get; set; + } + } +} diff --git a/src/Tizen.NUI/src/public/Common/Layer.cs b/src/Tizen.NUI/src/public/Common/Layer.cs index eadf02152ea..51e1374bfc9 100755 --- a/src/Tizen.NUI/src/public/Common/Layer.cs +++ b/src/Tizen.NUI/src/public/Common/Layer.cs @@ -29,11 +29,19 @@ public class Layer : Container { private Window window; private int layoutCount = 0; + private EventHandler visibilityChangedEventHandler; private VisibilityChangedEventCallbackType visibilityChangedEventCallback; + + private EventHandler aggregatedVisibilityChangedEventHandler; + private AggregatedVisibilityChangedEventCallbackType aggregatedVisibilityChangedEventCallback; + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void VisibilityChangedEventCallbackType(IntPtr data, bool visibility, VisibilityChangeType type); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + private delegate void AggregatedVisibilityChangedEventCallbackType(IntPtr data, bool visibility); + /// /// Creates a Layer object. /// @@ -69,6 +77,15 @@ protected override void Dispose(DisposeTypes type) visibilityChangedEventCallback = null; } + if (aggregatedVisibilityChangedEventCallback != null) + { + NUILog.Debug($"[Dispose] aggregatedVisibilityChangedEventCallback"); + + Interop.ActorSignal.AggregatedVisibilityChangedDisconnect(GetBaseHandleCPtrHandleRef, aggregatedVisibilityChangedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExistsDebug(); + aggregatedVisibilityChangedEventCallback = null; + } + LayoutCount = 0; base.Dispose(type); @@ -646,6 +663,35 @@ public event EventHandler VisibilityChanged } } } + /// + /// An event for aggregated visibility change which can be used to subscribe or unsubscribe the event handler.
+ /// This event is sent when visible property of this or any of its parents (right up to the root) and Window changes.
+ ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public event EventHandler AggregatedVisibilityChanged + { + add + { + if (aggregatedVisibilityChangedEventHandler == null) + { + aggregatedVisibilityChangedEventCallback = OnAggregatedVisibilityChanged; + Interop.ActorSignal.AggregatedVisibilityChangedConnect(SwigCPtr, aggregatedVisibilityChangedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + } + aggregatedVisibilityChangedEventHandler += value; + } + + remove + { + aggregatedVisibilityChangedEventHandler -= value; + if (aggregatedVisibilityChangedEventHandler == null && aggregatedVisibilityChangedEventCallback != null) + { + Interop.ActorSignal.AggregatedVisibilityChangedDisconnect(SwigCPtr, aggregatedVisibilityChangedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + aggregatedVisibilityChangedEventCallback = null; + } + } + } /// /// Event arguments of visibility changed. @@ -894,5 +940,17 @@ private void OnVisibilityChanged(IntPtr data, bool visibility, VisibilityChangeT visibilityChangedEventHandler(this, e); } } + + // Callback for Layer aggregated visibility change signal + private void OnAggregatedVisibilityChanged(IntPtr data, bool visibility) + { + AggregatedVisibilityChangedEventArgs e = new AggregatedVisibilityChangedEventArgs(); + e.Visibility = visibility; + + if (aggregatedVisibilityChangedEventHandler != null) + { + aggregatedVisibilityChangedEventHandler(this, e); + } + } } } From d4cfb01574ec8e75f64bc4e51272a438cdd26b78 Mon Sep 17 00:00:00 2001 From: Woochan <48237284+lwc0917@users.noreply.github.com> Date: Wed, 7 Aug 2024 15:35:38 +0900 Subject: [PATCH 021/198] [NUI] Version upate(22335) (#6253) Co-authored-by: Woochan Lee --- packaging/csapi-tizenfx.spec | 2 +- packaging/version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/csapi-tizenfx.spec b/packaging/csapi-tizenfx.spec index 92dacd8a77a..16897d6e0b4 100644 --- a/packaging/csapi-tizenfx.spec +++ b/packaging/csapi-tizenfx.spec @@ -1,7 +1,7 @@ # Auto-generated from csapi-tizenfx.spec.in by makespec.sh %define TIZEN_NET_API_VERSION 12 -%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22334 +%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22335 %define TIZEN_NET_NUGET_VERSION 12.0.0.99999 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework diff --git a/packaging/version.txt b/packaging/version.txt index a5e5b6f56bc..eb30501149a 100755 --- a/packaging/version.txt +++ b/packaging/version.txt @@ -6,4 +6,4 @@ RPM_VERSION=12.0.0.999 NUGET_VERSION=12.0.0.99999 # RPM Version Suffix -RPM_VERSION_SUFFIX=nui22334 +RPM_VERSION_SUFFIX=nui22335 From 5c60f25cc4ba718363f000fcb0318b20bb00a106 Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Thu, 1 Aug 2024 21:05:49 +0900 Subject: [PATCH 022/198] [NUI] Make VisibilityChangedEventArgs.View return visibility changed view Until now, VisibilityChangedEventArgs.View return sender itself. It is useless information for user. Follow up some other platform's behavior, ( reference : https://developer.android.com/reference/android/view/View#onVisibilityChanged(android.view.View,%20int) ) Let we make VisibilityChangedEventArgs.View return visibility changed view. Relative dali patch : - https://review.tizen.org/gerrit/c/platform/core/uifw/dali-core/+/315475 - https://review.tizen.org/gerrit/c/platform/core/uifw/dali-csharp-binder/+/315484 Signed-off-by: Eunki, Hong --- .../src/internal/Interop/Interop.Actor.cs | 3 + .../src/public/BaseComponents/ViewEvent.cs | 15 +- .../Samples/VisibilityChangedTest.cs | 174 +++++++++++++++--- 3 files changed, 164 insertions(+), 28 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.Actor.cs b/src/Tizen.NUI/src/internal/Interop/Interop.Actor.cs index 61c56d599f4..0f29b9f361c 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.Actor.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.Actor.cs @@ -134,6 +134,9 @@ internal static partial class Actor [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Actor_CurrentScreenExtents")] public static extern global::System.IntPtr CurrentScreenExtents(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Actor_GetVisiblityChangedActor")] + public static extern global::System.IntPtr GetVisiblityChangedActor(); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Actor_InternalRetrievingPropertyVector2")] public static extern int InternalRetrievingPropertyVector2(HandleRef actor, int propertyType, HandleRef retrievingVector2); diff --git a/src/Tizen.NUI/src/public/BaseComponents/ViewEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/ViewEvent.cs index 8234b1a1c66..e9c32177f11 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ViewEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ViewEvent.cs @@ -1063,9 +1063,18 @@ private void OffWindow(IntPtr data) private void OnVisibilityChanged(IntPtr data, bool visibility, VisibilityChangeType type) { VisibilityChangedEventArgs e = new VisibilityChangedEventArgs(); - if (data != IntPtr.Zero) + IntPtr changedViewCPtr = Interop.Actor.GetVisiblityChangedActor(); + if (changedViewCPtr != IntPtr.Zero) { - e.View = Registry.GetManagedBaseHandleFromNativePtr(data) as View; + e.View = Registry.GetManagedBaseHandleFromNativePtr(changedViewCPtr) as View; + if(e.View != null) + { + Interop.BaseHandle.DeleteBaseHandle(new global::System.Runtime.InteropServices.HandleRef(this, changedViewCPtr)); + } + else + { + e.View = new View(changedViewCPtr, true); + } } e.Visibility = visibility; e.Type = type; @@ -1265,7 +1274,7 @@ public class VisibilityChangedEventArgs : EventArgs private VisibilityChangeType _type; /// - /// The view, or child of view, whose visibility has changed. + /// The view, whose visibility has changed. /// /// 3 public View View diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisibilityChangedTest.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisibilityChangedTest.cs index 2e7d04f46a6..aed375334e0 100755 --- a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisibilityChangedTest.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisibilityChangedTest.cs @@ -9,7 +9,9 @@ namespace Tizen.NUI.Samples public class VisibilityChangedTest : IExample { Window win, subWin; - Timer t1, t2; + View dummy1, dummy2; + View subDummy1, subDummy2; + Timer t1, t2, t3, t4, t5, t6; const string t = "NUITEST"; public void Activate() { @@ -17,11 +19,21 @@ public void Activate() win.BackgroundColor = Color.Green; win.VisibilityChanged += Win_VisibilityChanged; - var dummy = new View(); - dummy.Size = new Size(200, 200); - dummy.Position = new Position(10, 10); - dummy.BackgroundColor = Color.Red; - win.Add(dummy); + dummy1 = new View(); + dummy1.Size = new Size(200, 200); + dummy1.Position = new Position(10, 10); + dummy1.BackgroundColor = Color.Red; + dummy1.Name = "dummy1"; + dummy1.VisibilityChanged += View_VisibilityChanged; + win.Add(dummy1); + + dummy2 = new View(); + dummy2.Size = new Size(100, 100); + dummy2.Position = new Position(10, 10); + dummy2.BackgroundColor = Color.Purple; + dummy2.Name = "dummy2"; + dummy2.VisibilityChanged += View_VisibilityChanged; + dummy1.Add(dummy2); subWin = new Window(); subWin.BackgroundColor = Color.Yellow; @@ -29,11 +41,23 @@ public void Activate() subWin.WindowPosition = new Position2D(100, 200); subWin.VisibilityChanged += SubWin_VisibilityChanged; - var dum2 = new View(); - dum2.Size = new Size(200, 200); - dum2.Position = new Position(10, 10); - dum2.BackgroundColor = Color.Blue; - subWin.Add(dum2); + subDummy1 = new View(); + subDummy1.Size = new Size(200, 200); + subDummy1.Position = new Position(10, 10); + subDummy1.BackgroundColor = Color.Blue; + subDummy1.Name = "subDummy1"; + subDummy1.VisibilityChanged += View_VisibilityChanged; + subWin.Add(subDummy1); + + subDummy2 = new View(); + subDummy2.Size = new Size(100, 100); + subDummy2.Position = new Position(10, 10); + subDummy2.BackgroundColor = Color.Crimson; + subDummy2.Name = "subDummy2"; + subDummy2.VisibilityChanged += View_VisibilityChanged; + subDummy1.Add(subDummy2); + + cnt1 = cnt2 = cnt3 = cnt4 = cnt5 = cnt6 = 0; t1 = new Timer(1300); t1.Tick += T1_Tick; @@ -42,25 +66,99 @@ public void Activate() t2 = new Timer(1700); t2.Tick += T2_Tick; t2.Start(); + + t3 = new Timer(2100); + t3.Tick += T3_Tick; + t3.Start(); + + t4 = new Timer(2500); + t4.Tick += T4_Tick; + t4.Start(); + + t5 = new Timer(2900); + t5.Tick += T5_Tick; + t5.Start(); + + t6 = new Timer(3100); + t6.Tick += T6_Tick; + t6.Start(); } - int cnt; + int cnt1, cnt2, cnt3, cnt4, cnt5, cnt6; + private bool T1_Tick(object source, Timer.TickEventArgs e) + { + l.Debug(t, $"T1_Tick. {dummy1.Name} visibility change started"); + if (++cnt1 %2 == 0) + { + dummy1.Show(); + } + else + { + dummy1.Hide(); + } + l.Debug(t, $"T1_Tick. {dummy1.Name} visibility change finished"); + return true; + } private bool T2_Tick(object source, Timer.TickEventArgs e) { - if(cnt++ %2 == 0) + l.Debug(t, $"T2_Tick. {dummy2.Name} visibility change started"); + if (++cnt2 %2 == 0) + { + dummy2.Show(); + } + else + { + dummy2.Hide(); + } + l.Debug(t, $"T2_Tick. {dummy2.Name} visibility change finished"); + return true; + } + private bool T3_Tick(object source, Timer.TickEventArgs e) + { + l.Debug(t, $"T3_Tick. {subDummy1.Name} visibility change started"); + if (++cnt3 %2 == 0) + { + subDummy1.Show(); + } + else + { + subDummy1.Hide(); + } + l.Debug(t, $"T3_Tick. {subDummy1.Name} visibility change finished"); + return true; + } + private bool T4_Tick(object source, Timer.TickEventArgs e) + { + l.Debug(t, $"T4_Tick. {subDummy2.Name} visibility change started"); + if (++cnt4 %2 == 0) + { + subDummy2.Show(); + } + else + { + subDummy2.Hide(); + } + l.Debug(t, $"T4_Tick. {subDummy2.Name} visibility change finished"); + return true; + } + private bool T5_Tick(object source, Timer.TickEventArgs e) + { + l.Debug(t, $"T5_Tick. win visibility change started"); + if (++cnt5 %2 == 0) { win.Show(); - }else + } + else { win.Hide(); } + l.Debug(t, $"T5_Tick. win visibility change finished"); return true; } - - int cnt2; - private bool T1_Tick(object source, Timer.TickEventArgs e) + private bool T6_Tick(object source, Timer.TickEventArgs e) { - if (cnt2++ % 2 == 0) + l.Debug(t, $"T5_Tick. subWin visibility change started"); + if (++cnt6 % 2 == 0) { subWin.Show(); } @@ -68,8 +166,8 @@ private bool T1_Tick(object source, Timer.TickEventArgs e) { subWin.Hide(); } + l.Debug(t, $"T5_Tick. subWin visibility change finished"); return true; - } private void SubWin_VisibilityChanged(object sender, Window.VisibilityChangedEventArgs e) @@ -82,18 +180,44 @@ private void Win_VisibilityChanged(object sender, Window.VisibilityChangedEventA l.Debug(t, $"main window visibility changed! e.Visibility={e.Visibility}"); } + private void View_VisibilityChanged(object sender, View.VisibilityChangedEventArgs e) + { + View self = sender as View; + l.Debug(t, $"{self.Name} visibility changed! e.View.Name={e.View.Name} e.Visibility={e.Visibility} e.Type={e.Type}"); + } + public void Deactivate() { - t1.Stop(); - t2.Stop(); - t1.Dispose(); - t2.Dispose(); - t1 = t2 = null; - + t1?.Stop(); + t2?.Stop(); + t3?.Stop(); + t4?.Stop(); + t5?.Stop(); + t6?.Stop(); + t1?.Dispose(); + t2?.Dispose(); + t3?.Dispose(); + t4?.Dispose(); + t5?.Dispose(); + t6?.Dispose(); + t1 = t2 = t3 = t4 = t5 = t6 = null; + + dummy1.VisibilityChanged -= View_VisibilityChanged; + dummy2.VisibilityChanged -= View_VisibilityChanged; + + subDummy1.VisibilityChanged -= View_VisibilityChanged; + subDummy2.VisibilityChanged -= View_VisibilityChanged; + + dummy1.Dispose(); + dummy2.Dispose(); + subDummy1.Dispose(); + subDummy2.Dispose(); + win.VisibilityChanged -= Win_VisibilityChanged; subWin.VisibilityChanged -= SubWin_VisibilityChanged; subWin.Hide(); + subWin.Dispose(); win.Show(); } } From 83fd848c1a0a8b47263959393df2a3d4e1d7fa01 Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Fri, 2 Aug 2024 15:26:48 +0900 Subject: [PATCH 023/198] [NUI] Remove various build warnings (phase 1) Found some build warning list by below command dotnet build /p:BuildWithAnalyzer=True -consoleloggerparameters:NoSummary Their are too many warnings occurs, let we remove them by multiple phases. Signed-off-by: Eunki, Hong --- .../Common/DefaultItemLayoutProperty.cs | 1 + .../src/internal/Common/RenderTask.cs | 3 ++ .../src/public/BaseComponents/ImageView.cs | 2 +- .../BaseComponents/LottieAnimationView.cs | 1 - .../src/public/BaseComponents/TextUtils.cs | 30 +++++++++++++++++++ .../src/public/BaseComponents/View.cs | 5 ++++ .../src/public/BaseComponents/ViewInternal.cs | 2 +- src/Tizen.NUI/src/public/Common/Matrix.cs | 1 + src/Tizen.NUI/src/public/Common/Matrix3.cs | 1 + .../src/public/Common/RelativeVector3.cs | 2 ++ src/Tizen.NUI/src/public/Common/TimePeriod.cs | 2 ++ src/Tizen.NUI/src/public/Common/WeakEvent.cs | 11 +++++++ .../src/public/DragAndDrop/DragAndDrop.cs | 8 ++--- src/Tizen.NUI/src/public/Images/ImageUrl.cs | 1 + src/Tizen.NUI/src/public/Images/PixelData.cs | 5 ++-- .../src/public/Images/PixelFormat.cs | 3 +- .../src/public/Rendering/VertexBuffer.cs | 2 +- .../src/public/Theme/ThemeManager.cs | 2 ++ src/Tizen.NUI/src/public/Utility/Capture.cs | 8 ++--- .../src/public/Utility/RenderEffect.cs | 1 + 20 files changed, 76 insertions(+), 15 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Common/DefaultItemLayoutProperty.cs b/src/Tizen.NUI/src/internal/Common/DefaultItemLayoutProperty.cs index ffec5b015d3..64cd221d920 100755 --- a/src/Tizen.NUI/src/internal/Common/DefaultItemLayoutProperty.cs +++ b/src/Tizen.NUI/src/internal/Common/DefaultItemLayoutProperty.cs @@ -21,6 +21,7 @@ namespace Tizen.NUI { /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1707: Identifiers should not contain underscores")] public enum DefaultItemLayoutProperty { /// diff --git a/src/Tizen.NUI/src/internal/Common/RenderTask.cs b/src/Tizen.NUI/src/internal/Common/RenderTask.cs index ac8fbca7986..99e65e28025 100755 --- a/src/Tizen.NUI/src/internal/Common/RenderTask.cs +++ b/src/Tizen.NUI/src/internal/Common/RenderTask.cs @@ -66,6 +66,7 @@ internal class Property internal static readonly int RequiresSync = Interop.RenderTask.RequiresSyncGet(); } +#pragma warning disable CA1707 internal static SWIGTYPE_p_f_r_Dali__Vector2__bool DEFAULT_SCREEN_TO_FRAMEBUFFER_FUNCTION { get @@ -148,6 +149,7 @@ public static uint DEFAULT_REFRESH_RATE return ret; } } +#pragma warning restore CA1707 public RenderTask() : this(Interop.RenderTask.NewRenderTask(), true) { @@ -405,6 +407,7 @@ internal RenderTaskSignal FinishedSignal() } /// 3 + [System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1707: Identifiers should not contain underscores")] public enum RefreshRate { REFRESH_ONCE = 0, diff --git a/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs b/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs index 9db7ef81c9e..f8b162623ca 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs @@ -2085,7 +2085,7 @@ internal void SetImageByPropertyMap(PropertyMap map) /// (Example : if we change SynchronousLoading property from 'true' to 'false', or if we call this function during UpdateImage) /// [EditorBrowsable(EditorBrowsableState.Never)] - protected virtual void UpdateImage(int key, PropertyValue value, bool requiredVisualCreation = true) + protected void UpdateImage(int key, PropertyValue value, bool requiredVisualCreation = true) { // Update image property map value as inputed value. if (key != 0) diff --git a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs index 0c90bc22f6d..21500212449 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs @@ -1507,7 +1507,6 @@ private struct states }; private states currentStates; - private const string tag = "NUITEST"; private event EventHandler finishedEventHandler; private void OnFinished() diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextUtils.cs b/src/Tizen.NUI/src/public/BaseComponents/TextUtils.cs index b1255b01418..e7deb1ed7c7 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextUtils.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextUtils.cs @@ -1214,11 +1214,16 @@ public static float GetFontSizeScale(SystemSettingsFontSize systemSettingsFontSi /// /// Copy the previously selected text from the text control into the clipboard. /// + /// Thrown when argument is null. /// The textEditor control from which the text is copied. /// The copied text. /// 9 public static string CopyToClipboard(TextEditor textEditor) { + if (textEditor == null) + { + throw new ArgumentNullException(nameof(textEditor), "TextEditor should not be null."); + } string copiedText = Interop.TextEditor.CopyText(textEditor.SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return copiedText; @@ -1227,11 +1232,16 @@ public static string CopyToClipboard(TextEditor textEditor) /// /// Copy the previously selected text from the text control into the clipboard. /// + /// Thrown when argument is null. /// The textField control from which the text is copied. /// The copied text. /// 9 public static string CopyToClipboard(TextField textField) { + if (textField == null) + { + throw new ArgumentNullException(nameof(textField), "TextField should not be null."); + } string copiedText = Interop.TextField.CopyText(textField.SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return copiedText; @@ -1240,11 +1250,16 @@ public static string CopyToClipboard(TextField textField) /// /// Cut the previously selected text from the text control into the clipboard. /// + /// Thrown when argument is null. /// The textEditor control from which the text is cut. /// The cut text. /// 9 public static string CutToClipboard(TextEditor textEditor) { + if (textEditor == null) + { + throw new ArgumentNullException(nameof(textEditor), "TextEditor should not be null."); + } string cutText = Interop.TextEditor.CutText(textEditor.SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return cutText; @@ -1253,11 +1268,16 @@ public static string CutToClipboard(TextEditor textEditor) /// /// Cut the previously selected text from the text control into the clipboard. /// + /// Thrown when argument is null. /// The textField control from which the text is cut. /// The cut text. /// 9 public static string CutToClipboard(TextField textField) { + if (textField == null) + { + throw new ArgumentNullException(nameof(textField), "TextField should not be null."); + } string cutText = Interop.TextField.CutText(textField.SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return cutText; @@ -1271,10 +1291,15 @@ public static string CutToClipboard(TextField textField) /// the text will be appended to the last cursor position and the text control will gain focus. /// If some text inside the text control is selected, it will be replaced by the pasted text. /// + /// Thrown when argument is null. /// The textEditor control into which the text is pasted. /// 9 public static void PasteTo(TextEditor textEditor) { + if (textEditor == null) + { + throw new ArgumentNullException(nameof(textEditor), "TextEditor should not be null."); + } Interop.TextEditor.PasteText(textEditor.SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1287,10 +1312,15 @@ public static void PasteTo(TextEditor textEditor) /// the text will be appended to the last cursor position and the text control will gain focus. /// If some text inside the text control is selected, it will be replaced by the pasted text. /// + /// Thrown when argument is null. /// The textField control into which the text is pasted. /// 9 public static void PasteTo(TextField textField) { + if (textField == null) + { + throw new ArgumentNullException(nameof(textField), "TextEditor should not be null."); + } Interop.TextField.PasteText(textField.SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } diff --git a/src/Tizen.NUI/src/public/BaseComponents/View.cs b/src/Tizen.NUI/src/public/BaseComponents/View.cs index 59740e6cce4..d0fa08a5587 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/View.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/View.cs @@ -637,6 +637,7 @@ protected ViewStyle ViewStyle /// If the classes that are not derived from Control (such as View, ImageView and TextLabel) want to use this system, /// please set to true. /// + /// Thrown when set null. /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public ControlState ControlState @@ -651,6 +652,10 @@ protected set { return; } + if (value == null) + { + throw new ArgumentNullException(nameof(value), "ControlState should not be null."); + } var prevState = ControlState; diff --git a/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs b/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs index 4de15a6de21..21e6956cf0a 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs @@ -1801,7 +1801,7 @@ private void DisConnectFromSignals() /// Apply initial style to the view. ///
[EditorBrowsable(EditorBrowsableState.Never)] - protected virtual void InitializeStyle(ViewStyle style = null) + protected void InitializeStyle(ViewStyle style = null) { if (style == null && ThemeManager.InitialThemeDisabled) { diff --git a/src/Tizen.NUI/src/public/Common/Matrix.cs b/src/Tizen.NUI/src/public/Common/Matrix.cs index 55e67607fd4..6b28fe08bf4 100755 --- a/src/Tizen.NUI/src/public/Common/Matrix.cs +++ b/src/Tizen.NUI/src/public/Common/Matrix.cs @@ -128,6 +128,7 @@ internal Matrix Assign(Matrix rhs) /// /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1065: Do not raise exceptions in unexpected locations")] public static Matrix Identity { get diff --git a/src/Tizen.NUI/src/public/Common/Matrix3.cs b/src/Tizen.NUI/src/public/Common/Matrix3.cs index ffba8b569e7..2adeeb2e079 100755 --- a/src/Tizen.NUI/src/public/Common/Matrix3.cs +++ b/src/Tizen.NUI/src/public/Common/Matrix3.cs @@ -135,6 +135,7 @@ internal Matrix3 Assign(Matrix rhs) /// /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1065: Do not raise exceptions in unexpected locations")] public static Matrix3 Identity { get diff --git a/src/Tizen.NUI/src/public/Common/RelativeVector3.cs b/src/Tizen.NUI/src/public/Common/RelativeVector3.cs index 744632f3bc6..3e24d233259 100755 --- a/src/Tizen.NUI/src/public/Common/RelativeVector3.cs +++ b/src/Tizen.NUI/src/public/Common/RelativeVector3.cs @@ -246,6 +246,7 @@ public float Z /// 3 public static implicit operator Vector3(RelativeVector3 relativeVector3) { + if (relativeVector3 == null) return null; return new Vector3(relativeVector3.X, relativeVector3.Y, relativeVector3.Z); } @@ -254,6 +255,7 @@ public static implicit operator Vector3(RelativeVector3 relativeVector3) /// 3 public static implicit operator RelativeVector3(Vector3 vec) { + if (vec == null) return null; return new RelativeVector3(vec.X, vec.Y, vec.Z); } diff --git a/src/Tizen.NUI/src/public/Common/TimePeriod.cs b/src/Tizen.NUI/src/public/Common/TimePeriod.cs index 028eb925fc7..0e1add1d044 100755 --- a/src/Tizen.NUI/src/public/Common/TimePeriod.cs +++ b/src/Tizen.NUI/src/public/Common/TimePeriod.cs @@ -55,6 +55,7 @@ public TimePeriod(int delayMilliSeconds, int durationMilliSeconds) : this(Intero /// A delay before the time period in milliseconds ///
/// 9 + [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1065: Do not raise exceptions in unexpected locations")] public int DelayMilliseconds { set @@ -74,6 +75,7 @@ public int DelayMilliseconds /// The duration of the time period in milliseconds ///
/// 9 + [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1065: Do not raise exceptions in unexpected locations")] public int DurationMilliseconds { set diff --git a/src/Tizen.NUI/src/public/Common/WeakEvent.cs b/src/Tizen.NUI/src/public/Common/WeakEvent.cs index 1a24c9c8cdf..c57e7e69124 100755 --- a/src/Tizen.NUI/src/public/Common/WeakEvent.cs +++ b/src/Tizen.NUI/src/public/Common/WeakEvent.cs @@ -45,6 +45,11 @@ public class WeakEvent where T : Delegate /// 12 public virtual void Add(T handler) { + if (handler == null) + { + // Do nothing. + return; + } handlers.Add(new WeakHandler(handler)); OnCountIncreased(); @@ -57,6 +62,12 @@ public virtual void Add(T handler) /// 12 public virtual void Remove(T handler) { + if (handler == null) + { + // Do nothing. + return; + } + int lastIndex = handlers.FindLastIndex(item => item.Equals(handler)); if (lastIndex >= 0) diff --git a/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs b/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs index c2ad8a358a5..b37a11c2afc 100755 --- a/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs +++ b/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs @@ -230,9 +230,9 @@ public void AddListener(View targetView, DragAndDropEventHandler callback) /// Removes listener for drop targets ///
/// The target view - /// The callback function to remove + /// The callback function to remove(Not used) /// 10 - public void RemoveListener(View targetView, DragAndDropEventHandler callback) + public void RemoveListener(View targetView, DragAndDropEventHandler _) { if (!targetEventDictionary.ContainsKey(targetView)) { @@ -300,9 +300,9 @@ public void AddListener(Window targetWindow, DragAndDropWindowEventHandler callb /// Removes listener for drop targets ///
/// The target window - /// The callback function to remove + /// The callback function to remove(Not used) [EditorBrowsable(EditorBrowsableState.Never)] - public void RemoveListener(Window targetWindow, DragAndDropWindowEventHandler callback) + public void RemoveListener(Window targetWindow, DragAndDropWindowEventHandler _) { if (!targetWindowEventDictionary.ContainsKey(targetWindow)) { diff --git a/src/Tizen.NUI/src/public/Images/ImageUrl.cs b/src/Tizen.NUI/src/public/Images/ImageUrl.cs index 120803c30c6..e68c713800b 100644 --- a/src/Tizen.NUI/src/public/Images/ImageUrl.cs +++ b/src/Tizen.NUI/src/public/Images/ImageUrl.cs @@ -66,6 +66,7 @@ protected override void ReleaseSwigCPtr(HandleRef swigCPtr) } [EditorBrowsable(EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1065: Do not raise exceptions in unexpected locations")] public override string ToString() { string ret = Interop.ImageUrl.GetUrl(SwigCPtr); diff --git a/src/Tizen.NUI/src/public/Images/PixelData.cs b/src/Tizen.NUI/src/public/Images/PixelData.cs index 9f915ad4b2a..fc824ab82e7 100755 --- a/src/Tizen.NUI/src/public/Images/PixelData.cs +++ b/src/Tizen.NUI/src/public/Images/PixelData.cs @@ -45,11 +45,12 @@ public class PixelData : BaseHandle /// Buffer width in pixels. /// Buffer height in pixels. /// The pixel format. - /// The function used to release the memory. + /// Not used parameter. /// 5 /// This will be deprecated after API level 9. ReleaseFunction is not useful in C#. [EditorBrowsable(EditorBrowsableState.Never)] - public PixelData(byte[] buffer, uint bufferSize, uint width, uint height, PixelFormat pixelFormat, PixelData.ReleaseFunction releaseFunction) : this(Interop.PixelData.New(buffer, bufferSize, width, height, (int)pixelFormat), true) + [Obsolete("Do not use this constructor. Use PixelData(byte[], uint, uint, uint, PixelFormat).")] + public PixelData(byte[] buffer, uint bufferSize, uint width, uint height, PixelFormat pixelFormat, PixelData.ReleaseFunction _) : this(Interop.PixelData.New(buffer, bufferSize, width, height, (int)pixelFormat), true) { if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); diff --git a/src/Tizen.NUI/src/public/Images/PixelFormat.cs b/src/Tizen.NUI/src/public/Images/PixelFormat.cs index d9392cd872c..9e2754c68de 100755 --- a/src/Tizen.NUI/src/public/Images/PixelFormat.cs +++ b/src/Tizen.NUI/src/public/Images/PixelFormat.cs @@ -21,7 +21,8 @@ namespace Tizen.NUI /// Enumeration for Pixel formats.
/// Pixel format, default color depth is RGBA 32 bit with alpha. ///
- /// /// 3 + /// 3 + [System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1707: Identifiers should not contain underscores")] public enum PixelFormat { /// diff --git a/src/Tizen.NUI/src/public/Rendering/VertexBuffer.cs b/src/Tizen.NUI/src/public/Rendering/VertexBuffer.cs index 25dd5d2d1cd..3e8542a3142 100755 --- a/src/Tizen.NUI/src/public/Rendering/VertexBuffer.cs +++ b/src/Tizen.NUI/src/public/Rendering/VertexBuffer.cs @@ -52,7 +52,7 @@ internal VertexBuffer(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, /// Thrown when vertices is null or length of the vertices is 0. /// Thrown when length of the vertices is overflow. /// 8 - + [System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1715: Identifiers should have correct prefix")] public void SetData(VertexType[] vertices) where VertexType : struct { if (null == vertices || vertices.Length == 0) diff --git a/src/Tizen.NUI/src/public/Theme/ThemeManager.cs b/src/Tizen.NUI/src/public/Theme/ThemeManager.cs index 9c3ae1201b2..df6cddfa935 100755 --- a/src/Tizen.NUI/src/public/Theme/ThemeManager.cs +++ b/src/Tizen.NUI/src/public/Theme/ThemeManager.cs @@ -36,7 +36,9 @@ namespace Tizen.NUI /// /// /// 9 +#pragma warning disable CA1724 public static class ThemeManager +#pragma warning restore CA1724 { /// /// The default light theme name preloaded in platform. diff --git a/src/Tizen.NUI/src/public/Utility/Capture.cs b/src/Tizen.NUI/src/public/Utility/Capture.cs index 9bd506b0d30..d74d7a71b8f 100755 --- a/src/Tizen.NUI/src/public/Utility/Capture.cs +++ b/src/Tizen.NUI/src/public/Utility/Capture.cs @@ -139,7 +139,7 @@ public void Start(Container source, Position position, Size size, string path, C } else if (null == path) { - throw new ArgumentNullException("path should not be null"); + throw new ArgumentNullException(nameof(path), "path should not be null"); } else if (null == position) { @@ -183,7 +183,7 @@ public void Start(Container source, Size size, string path, Color color, uint qu } else if (null == path) { - throw new ArgumentNullException("path should not be null"); + throw new ArgumentNullException(nameof(path), "path should not be null"); } else if (quality > 100) { @@ -226,7 +226,7 @@ public void Start(Container source, Size size, string path, Color color) } else if (null == path) { - throw new ArgumentNullException("path should not be null"); + throw new ArgumentNullException(nameof(path), "path should not be null"); } else if (null == color) { @@ -267,7 +267,7 @@ public void Start(Container source, Size size, string path) } else if (null == path) { - throw new ArgumentNullException("path should not be null"); + throw new ArgumentNullException(nameof(path), "path should not be null"); } if (source is View || source is Layer) diff --git a/src/Tizen.NUI/src/public/Utility/RenderEffect.cs b/src/Tizen.NUI/src/public/Utility/RenderEffect.cs index 9ff734f2d58..cd409bdb90b 100644 --- a/src/Tizen.NUI/src/public/Utility/RenderEffect.cs +++ b/src/Tizen.NUI/src/public/Utility/RenderEffect.cs @@ -60,6 +60,7 @@ public static RenderEffect CreateBackgroundBlurEffect(float blurRadius) /// /// RenderEffect.CreateBackgroundBlurEffect(blurRadius); /// + /// [EditorBrowsable(EditorBrowsableState.Never)] sealed class BackgroundBlurEffect : RenderEffect { From 5845c2d3d8e34673da0c9bda723a1affebacb562 Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Thu, 8 Aug 2024 20:53:51 +0900 Subject: [PATCH 024/198] [NUI] Fix TableView TC fail issue - TCT crash issue, log => E/STDERR (21795): Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object. E/STDERR (21795): at Tizen.NUI.BaseComponents.View.Dispose(DisposeTypes type) in Tizen.NUI.dll:token 0x6002b7c+0x591 E/STDERR (21795): at Tizen.NUI.BaseHandle.Dispose() in Tizen.NUI.dll:token 0x6000e5c+0xc E/STDERR (21795): at Tizen.NUI.DisposeQueue.ProcessDisposablesIncrementally() in Tizen.NUI.dll:token 0x6000238+0x79 E/STDERR (21795): at Tizen.NUI.DisposeQueue.ProcessDisposables() in Tizen.NUI.dll:token 0x6000237+0xd5 E/STDERR (21795): onSigabrt called --- src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs b/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs index 21e6956cf0a..e0a94fdef35 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs @@ -1463,7 +1463,7 @@ protected override void Dispose(DisposeTypes type) foreach (View view in Children) { - view.InternalParent = null; + if (view != null) { view.InternalParent = null; } } backgroundExtraDataUpdatedFlag = BackgroundExtraDataUpdatedFlag.None; From a5fc1d8765466169416f77e0d029eea7e8d2e0ce Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Mon, 5 Aug 2024 12:56:51 +0900 Subject: [PATCH 025/198] [NUI] Apply comments at VisualBase (phase 1) Apply some comments that report at PR #6079 - `Color.A` getter apply `Opacity` changeness - Make `VisualFittingMode` have no effect for `ColorVisual` and `BorderVisual` - `GetVisualProperty` return valid value after call `GetCurrentVisualProperty` - Make `VisualBase` class as abstract. Let we don't allow to call this class constructor. Signed-off-by: Eunki, Hong --- .../internal/Common/VisualObjectsContainer.cs | 4 - .../public/Visuals/VisualObject/VisualBase.cs | 79 +++++++++++++++---- 2 files changed, 62 insertions(+), 21 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Common/VisualObjectsContainer.cs b/src/Tizen.NUI/src/internal/Common/VisualObjectsContainer.cs index 767b2eb882b..2d1a31eeb79 100644 --- a/src/Tizen.NUI/src/internal/Common/VisualObjectsContainer.cs +++ b/src/Tizen.NUI/src/internal/Common/VisualObjectsContainer.cs @@ -159,10 +159,6 @@ private Tizen.NUI.Visuals.VisualBase GetVisualObjectAt(uint index) { Interop.BaseHandle.DeleteBaseHandle(new global::System.Runtime.InteropServices.HandleRef(this, cPtr)); } - else - { - ret = new Visuals.VisualBase(cPtr, true); - } NDalicPINVOKE.ThrowExceptionIfExists(); return ret; } diff --git a/src/Tizen.NUI/src/public/Visuals/VisualObject/VisualBase.cs b/src/Tizen.NUI/src/public/Visuals/VisualObject/VisualBase.cs index b82bcc0e274..fdb836ac80b 100644 --- a/src/Tizen.NUI/src/public/Visuals/VisualObject/VisualBase.cs +++ b/src/Tizen.NUI/src/public/Visuals/VisualObject/VisualBase.cs @@ -35,7 +35,7 @@ namespace Tizen.NUI.Visuals /// animation.AnimateTo(view, "BorderlineOffset", -1.0f); /// [EditorBrowsable(EditorBrowsableState.Never)] - public class VisualBase : BaseHandle + public abstract class VisualBase : BaseHandle { #region Internal And Private internal PropertyMap cachedVisualPropertyMap = null; @@ -186,15 +186,6 @@ internal void ConvertFromPropertyMap(PropertyMap inputMap) #endregion #region Constructor - /// - /// Creates an visual object. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public VisualBase() : this(Interop.VisualObject.VisualObjectNew(), true) - { - NDalicPINVOKE.ThrowExceptionIfExists(); - } - internal VisualBase(global::System.IntPtr cPtr, bool cMemoryOwn) : this(cPtr, cMemoryOwn, cMemoryOwn) { } @@ -237,7 +228,7 @@ public enum PropertyUpdateModeType /// and the visuals with larger sibling order are drawn top. /// /// It will be changed automatically when the visuals are added to the view. - /// The default value is 0. + /// It is 0 before being added to the view. /// [EditorBrowsable(EditorBrowsableState.Never)] public uint SiblingOrder @@ -337,7 +328,15 @@ public float Opacity { set { - UpdateVisualProperty((int)Tizen.NUI.Visual.Property.Opacity, new PropertyValue(value), false); + using Tizen.NUI.Color currentVisualColor = Color; + if (currentVisualColor.A != value) + { + using Tizen.NUI.Color visualColor = new Tizen.NUI.Color(currentVisualColor.R, currentVisualColor.G, currentVisualColor.B, value); + UpdateVisualProperty((int)Tizen.NUI.Visual.Property.MixColor, new PropertyValue(visualColor), false); + + // warning : We should set cached Opacity after set MixColor. + UpdateVisualProperty((int)Tizen.NUI.Visual.Property.Opacity, new PropertyValue(value), false); + } } get { @@ -358,20 +357,32 @@ public float Opacity /// The default value is VisualFittingModeType.DontCare. /// If user set one of Transform property, it will be set as VisualFittingModeType.DontCare automatically. /// + /// + /// Fitting mode is only available when the visual has original size. + /// For example, ImageVisual and TextVisual support FittingMode, but ColorVisual and BorderVisual don't support. + /// If visual doesn't have original size, Property set will be ignored. + /// [EditorBrowsable(EditorBrowsableState.Never)] public VisualFittingModeType FittingMode { set { - if (value != VisualFittingModeType.DontCare) + if (IsFittingModeAvailable()) { - visualFittingModeApplied = true; + if (value != VisualFittingModeType.DontCare) + { + visualFittingModeApplied = true; + } + else + { + visualFittingModeApplied = false; + } + UpdateVisualProperty((int)Tizen.NUI.Visual.Property.VisualFittingMode, new PropertyValue((int)value)); } else { - visualFittingModeApplied = false; + Tizen.Log.Error("NUI", $"Fitting mode is not supported by this visual type:{Type}. Set as DontCare\n"); } - UpdateVisualProperty((int)Tizen.NUI.Visual.Property.VisualFittingMode, new PropertyValue((int)value)); } get { @@ -1017,7 +1028,17 @@ internal PropertyValue GetVisualProperty(int key) if (ret == null) { // If we cannot find result from cached map, Get value from native engine. - GetCurrentVisualProperty(key); + ret = GetCurrentVisualProperty(key); + + // Update cached value here + if (ret != null) + { + if (cachedVisualPropertyMap == null) + { + cachedVisualPropertyMap = new PropertyMap(); + } + cachedVisualPropertyMap[key] = ret; + } } return ret; } @@ -1070,6 +1091,30 @@ internal void ReqeustProcessorOnceEvent() } } + /// + /// Check whether given visual object is available to be use fitting mode or not. + /// + internal bool IsFittingModeAvailable() + { + switch (internalType) + { + case (int)Tizen.NUI.Visual.Type.Image: + case (int)Tizen.NUI.Visual.Type.NPatch: + case (int)Tizen.NUI.Visual.Type.AnimatedImage: + case (int)Tizen.NUI.Visual.Type.Text: + { + return true; + } + case (int)Tizen.NUI.Visual.Type.Invalid: + case (int)Tizen.NUI.Visual.Type.Border: + case (int)Tizen.NUI.Visual.Type.Color: + { + return false; + } + } + return false; + } + /// /// Dispose for VisualObject /// From 1a121d42b94aa8019ea35fa99162b579a9ea7bba Mon Sep 17 00:00:00 2001 From: Eunki Hong Date: Tue, 30 Jul 2024 00:06:37 +0900 Subject: [PATCH 026/198] [NUI] Bind SynchronousSizing for ImageView / ImageVisual Add SynchrousSizing property - reload as size of visual. It will be useful when we want to load image as specific size of view, so the memory is reduced. Signed-off-by: Eunki Hong --- .../src/public/BaseComponents/ImageView.cs | 24 ++++++++++++++++++- .../ImageViewBindableProperty.cs | 17 +++++++++++++ .../src/public/Visuals/VisualConstants.cs | 9 +++++++ .../Visuals/VisualObject/ImageVisual.cs | 23 ++++++++++++++++++ .../Tizen.NUI.Samples/Samples/VisualTest.cs | 3 +-- 5 files changed, 73 insertions(+), 3 deletions(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs b/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs index f8b162623ca..dd8fbde624b 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs @@ -52,7 +52,7 @@ static ImageView() SynchronousLoadingProperty = BindableProperty.Create(nameof(SynchronousLoading), typeof(bool), typeof(ImageView), false, propertyChanged: SetInternalSynchronousLoadingProperty, defaultValueCreator: GetInternalSynchronousLoadingProperty); OrientationCorrectionProperty = BindableProperty.Create(nameof(OrientationCorrection), typeof(bool), typeof(ImageView), false, propertyChanged: SetInternalOrientationCorrectionProperty, defaultValueCreator: GetInternalOrientationCorrectionProperty); - + MaskingModeProperty = BindableProperty.Create(nameof(MaskingMode), typeof(MaskingModeType), typeof(ImageView), default(MaskingModeType), propertyChanged: SetInternalMaskingModeProperty, defaultValueCreator: GetInternalMaskingModeProperty); FastTrackUploadingProperty = BindableProperty.Create(nameof(FastTrackUploading), typeof(bool), typeof(ImageView), false, propertyChanged: SetInternalFastTrackUploadingProperty, defaultValueCreator: GetInternalFastTrackUploadingProperty); @@ -136,6 +136,7 @@ private static string ConvertResourceUrl(ref string value) Visual.Property.PremultipliedAlpha, ImageVisualProperty.OrientationCorrection, ImageVisualProperty.FastTrackUploading, + ImageVisualProperty.SynchronousSizing, NpatchImageVisualProperty.Border, NpatchImageVisualProperty.BorderOnly, }; @@ -773,6 +774,27 @@ public bool OrientationCorrection } } + /// + /// Gets or sets whether to automatically reload the image as the view size
+ /// If we set this value as true, view size will be works as desired size of image.
+ ///
+ /// + /// If we set this value as true, and will be invalidated. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public bool SynchronousSizing + { + get + { + return (bool)GetInternalSynchronousSizingProperty(this); + } + set + { + SetInternalSynchronousSizingProperty(this, value); + NotifyPropertyChanged(); + } + } + /// /// Gets or sets whether to apply mask on GPU or not.
///
diff --git a/src/Tizen.NUI/src/public/BaseComponents/ImageViewBindableProperty.cs b/src/Tizen.NUI/src/public/BaseComponents/ImageViewBindableProperty.cs index 14b121f421b..852d1e0b7d1 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ImageViewBindableProperty.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ImageViewBindableProperty.cs @@ -360,6 +360,23 @@ internal static object GetInternalOrientationCorrectionProperty(BindableObject b return ret; } + /// + /// SynchronousSizingProperty + /// + internal static void SetInternalSynchronousSizingProperty(ImageView imageView, bool newValue) + { + imageView.UpdateImage(ImageVisualProperty.SynchronousSizing, new PropertyValue(newValue)); + } + + internal static object GetInternalSynchronousSizingProperty(ImageView imageView) + { + bool ret = false; + + imageView.GetCachedImageVisualProperty(ImageVisualProperty.SynchronousSizing)?.Get(out ret); + + return ret; + } + /// /// MaskingModeProperty /// diff --git a/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs b/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs index c72f453283b..5b758d46a3c 100755 --- a/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs +++ b/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs @@ -1023,6 +1023,15 @@ public struct ImageVisualProperty ///
[EditorBrowsable(EditorBrowsableState.Never)] public static readonly int NotifyAfterRasterization = NDalic.ImageVisualOrientationCorrection + 17; + + /// + /// @brief Whether to synchronize image texture size to visual size. + /// @details Name "synchronousSizing", type Property::BOOLEAN. + /// If this property is true, ImageVisual ignores mDesiredSize. + /// @note Used by the ImageVisual. The default is false. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public static readonly int SynchronousSizing = NDalic.ImageVisualOrientationCorrection + 18; } /// diff --git a/src/Tizen.NUI/src/public/Visuals/VisualObject/ImageVisual.cs b/src/Tizen.NUI/src/public/Visuals/VisualObject/ImageVisual.cs index e31665ae813..c1f60836f13 100644 --- a/src/Tizen.NUI/src/public/Visuals/VisualObject/ImageVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/VisualObject/ImageVisual.cs @@ -174,6 +174,29 @@ public bool OrientationCorrection } } + /// + /// Gets or sets whether to automatically reload the image as the visual size.
+ /// If we set this value as true, Visual size will be works as desired size of image.
+ ///
+ /// + /// If this value is true, and will be invalidated. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public bool SynchronousSizing + { + set + { + UpdateVisualProperty((int)Tizen.NUI.ImageVisualProperty.SynchronousSizing, new PropertyValue(value), true); + } + get + { + bool ret = false; + var propertyValue = GetCachedVisualProperty((int)Tizen.NUI.ImageVisualProperty.SynchronousSizing); + propertyValue?.Get(out ret); + return ret; + } + } + /// /// Gets or sets the URL of the alpha mask.
/// Optional. diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisualTest.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisualTest.cs index 2f243127961..54dbea7b4be 100755 --- a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisualTest.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisualTest.cs @@ -312,8 +312,7 @@ private View CreateViewWithVisual(int id) Width = thumbnailSize, Height = thumbnailSize, - DesiredWidth = (int)thumbnailSize, - DesiredHeight = (int)thumbnailSize, + SynchronousSizing = true, OffsetXPolicy = VisualTransformPolicyType.Absolute, OffsetYPolicy = VisualTransformPolicyType.Absolute, From f9b5432c68522424fca88e07b2b769c0dfc0669f Mon Sep 17 00:00:00 2001 From: Seoyeon Kim Date: Tue, 13 Aug 2024 14:16:59 +0900 Subject: [PATCH 027/198] [NUI] Version Update (22336) Signed-off-by: Seoyeon Kim --- packaging/csapi-tizenfx.spec | 2 +- packaging/version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/csapi-tizenfx.spec b/packaging/csapi-tizenfx.spec index 16897d6e0b4..0459d29dd69 100644 --- a/packaging/csapi-tizenfx.spec +++ b/packaging/csapi-tizenfx.spec @@ -1,7 +1,7 @@ # Auto-generated from csapi-tizenfx.spec.in by makespec.sh %define TIZEN_NET_API_VERSION 12 -%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22335 +%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22336 %define TIZEN_NET_NUGET_VERSION 12.0.0.99999 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework diff --git a/packaging/version.txt b/packaging/version.txt index eb30501149a..874b625ffe1 100755 --- a/packaging/version.txt +++ b/packaging/version.txt @@ -6,4 +6,4 @@ RPM_VERSION=12.0.0.999 NUGET_VERSION=12.0.0.99999 # RPM Version Suffix -RPM_VERSION_SUFFIX=nui22335 +RPM_VERSION_SUFFIX=nui22336 From e0f17514adb6f292ec7c07f04d51b6cfb37b30ca Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Thu, 8 Aug 2024 17:48:37 +0900 Subject: [PATCH 028/198] [MediaContent] Deprecate all Bookmark and Playlist APIs (#6240) --- .../Interop/Interop.MediaInfo.cs | 4 +-- .../Tizen.Content.MediaContent/Bookmark.cs | 6 +++++ .../BookmarkCommand.cs | 10 ++++++++ .../Tizen.Content.MediaContent/Columns.cs | 9 +++++++ .../MediaInfoCommand.cs | 4 +++ .../Tizen.Content.MediaContent/PlayList.cs | 12 +++++++++ .../PlaylistCommand.cs | 25 +++++++++++++++++++ .../PlaylistMember.cs | 5 ++++ 8 files changed, 73 insertions(+), 2 deletions(-) diff --git a/src/Tizen.Content.MediaContent/Interop/Interop.MediaInfo.cs b/src/Tizen.Content.MediaContent/Interop/Interop.MediaInfo.cs index deed1a6eed5..f0f5edafafb 100644 --- a/src/Tizen.Content.MediaContent/Interop/Interop.MediaInfo.cs +++ b/src/Tizen.Content.MediaContent/Interop/Interop.MediaInfo.cs @@ -54,11 +54,11 @@ internal static extern MediaContentError ForeachTags(string mediaId, FilterHandl Common.ItemCallback callback, IntPtr userData = default); // Deprecated since API12 [DllImport(Libraries.MediaContent, EntryPoint = "media_info_get_bookmark_count_from_db")] - internal static extern MediaContentError GetBookmarkCount(string mediaId, FilterHandle filter, out int bookmarkCount); + internal static extern MediaContentError GetBookmarkCount(string mediaId, FilterHandle filter, out int bookmarkCount); // Deprecated since API12 [DllImport(Libraries.MediaContent, EntryPoint = "media_info_foreach_bookmark_from_db")] internal static extern MediaContentError ForeachBookmarks(string mediaId, FilterHandle filter, - Common.ItemCallback callback, IntPtr userData = default); + Common.ItemCallback callback, IntPtr userData = default); // Deprecated since API12 [DllImport(Libraries.MediaContent, EntryPoint = "media_info_get_face_count_from_db")] internal static extern MediaContentError GetFaceCount(string mediaId, FilterHandle filter, out int bookmarkCount); // Deprecated diff --git a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/Bookmark.cs b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/Bookmark.cs index 2da1b7ee598..db9b8687477 100644 --- a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/Bookmark.cs +++ b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/Bookmark.cs @@ -23,6 +23,7 @@ namespace Tizen.Content.MediaContent /// in media (video and audio) to enable fast searching. ///
/// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public class Bookmark { internal Bookmark(IntPtr handle) @@ -38,6 +39,7 @@ internal Bookmark(IntPtr handle) ///
/// The ID of the bookmark. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int Id { get; } /// @@ -45,6 +47,7 @@ internal Bookmark(IntPtr handle) /// /// The thumbnail path of the bookmark. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public string ThumbnailPath { get; } /// @@ -52,6 +55,7 @@ internal Bookmark(IntPtr handle) /// /// The offset of the bookmark in media in milliseconds. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int Offset { get; } /// @@ -59,6 +63,7 @@ internal Bookmark(IntPtr handle) /// /// The name of the bookmark. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public string Name { get; } internal static Bookmark FromHandle(IntPtr handle) => new Bookmark(handle); @@ -68,6 +73,7 @@ internal Bookmark(IntPtr handle) ///
/// A string representation of the current bookmark. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public override string ToString() => $"Id={Id}, Name={Name}, ThumbnailPath={ThumbnailPath}, Offset={Offset}"; } diff --git a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/BookmarkCommand.cs b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/BookmarkCommand.cs index 7037acc6048..9fb80815981 100644 --- a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/BookmarkCommand.cs +++ b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/BookmarkCommand.cs @@ -23,6 +23,7 @@ namespace Tizen.Content.MediaContent ///
/// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public class BookmarkCommand : MediaCommand { /// @@ -32,6 +33,7 @@ public class BookmarkCommand : MediaCommand /// is null. /// has already been disposed. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public BookmarkCommand(MediaDatabase database) : base(database) { } @@ -44,6 +46,7 @@ public BookmarkCommand(MediaDatabase database) : base(database) /// The has already been disposed. /// An error occurred while executing the command. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int Count() { return Count(null); @@ -58,6 +61,7 @@ public int Count() /// The has already been disposed. /// An error occurred while executing the command. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int Count(CountArguments arguments) { ValidateDatabase(); @@ -79,6 +83,7 @@ public int Count(CountArguments arguments) /// is a zero-length string, contains only white space. /// The caller has no required privilege. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public Bookmark Insert(string mediaId, int offset) { return Insert(mediaId, offset, null); @@ -99,6 +104,7 @@ public Bookmark Insert(string mediaId, int offset) /// is a zero-length string, contains only white space. /// The caller has no required privilege. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public Bookmark Insert(string mediaId, int offset, string name) { return Insert(mediaId, offset, name, null); @@ -123,6 +129,7 @@ public Bookmark Insert(string mediaId, int offset, string name) /// is a zero-length string, contains only white space. /// The caller has no required privilege. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public Bookmark Insert(string mediaId, int offset, string name, string thumbnailPath) { ValidateDatabase(); @@ -163,6 +170,7 @@ public Bookmark Insert(string mediaId, int offset, string name, string thumbnail /// is less than zero. /// The caller has no required privilege. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public bool Delete(int bookmarkId) { ValidateDatabase(); @@ -192,6 +200,7 @@ public bool Delete(int bookmarkId) /// The has already been disposed. /// An error occurred while executing the command. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public MediaDataReader Select() { return Select(null); @@ -206,6 +215,7 @@ public MediaDataReader Select() /// The has already been disposed. /// An error occurred while executing the command. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public MediaDataReader Select(SelectArguments filter) { ValidateDatabase(); diff --git a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/Columns.cs b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/Columns.cs index 0baea5630c4..40036e5bad8 100644 --- a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/Columns.cs +++ b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/Columns.cs @@ -465,6 +465,7 @@ public static class FolderColumns /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public static class PlaylistColumns { /// @@ -476,6 +477,7 @@ public static class PlaylistColumns /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public static string Name => "PLAYLIST_NAME"; /// @@ -487,6 +489,7 @@ public static class PlaylistColumns /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public static string Id => "PLAYLIST_ID"; /// @@ -498,6 +501,7 @@ public static class PlaylistColumns /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public static string MemberOrder => "PLAYLIST_MEMBER_ORDER"; /// @@ -510,6 +514,7 @@ public static class PlaylistColumns /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public static string Count => "PLAYLIST_MEDIA_COUNT"; } @@ -579,6 +584,7 @@ public static class TagColumns /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public static class BookmarkColumns { /// @@ -590,6 +596,7 @@ public static class BookmarkColumns /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public static string Offset => "BOOKMARK_MARKED_TIME"; /// @@ -601,6 +608,7 @@ public static class BookmarkColumns /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public static string Id => "BOOKMARK_ID"; /// @@ -612,6 +620,7 @@ public static class BookmarkColumns /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public static string Name => "BOOKMARK_NAME"; } diff --git a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/MediaInfoCommand.cs b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/MediaInfoCommand.cs index bafe885a953..6e470084b88 100644 --- a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/MediaInfoCommand.cs +++ b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/MediaInfoCommand.cs @@ -53,6 +53,7 @@ public MediaInfoCommand(MediaDatabase database) : base(database) /// is null. /// is a zero-length string, contains only white space. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int CountBookmark(string mediaId) { return CountBookmark(mediaId, null); @@ -70,6 +71,7 @@ public int CountBookmark(string mediaId) /// is null. /// is a zero-length string, contains only white space. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int CountBookmark(string mediaId, CountArguments arguments) { ValidateDatabase(); @@ -90,6 +92,7 @@ public int CountBookmark(string mediaId, CountArguments arguments) /// is null. /// is a zero-length string, contains only white space. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public MediaDataReader SelectBookmark(string mediaId) { return SelectBookmark(mediaId, null); @@ -107,6 +110,7 @@ public MediaDataReader SelectBookmark(string mediaId) /// is null. /// is a zero-length string, contains only white space. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public MediaDataReader SelectBookmark(string mediaId, SelectArguments filter) { ValidateDatabase(); diff --git a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlayList.cs b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlayList.cs index a762611cd92..0bb39f454d4 100755 --- a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlayList.cs +++ b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlayList.cs @@ -22,6 +22,7 @@ namespace Tizen.Content.MediaContent /// Represents the playlist that is a group of media (usually songs). /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public class Playlist { internal Playlist(IntPtr handle) @@ -39,6 +40,7 @@ internal Playlist(IntPtr handle) /// /// The unique ID of the playlist. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int Id { get; } /// @@ -46,6 +48,7 @@ internal Playlist(IntPtr handle) /// /// The name of the playlist. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public string Name { get; } /// @@ -53,6 +56,7 @@ internal Playlist(IntPtr handle) /// /// The path to the thumbnail. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public string ThumbnailPath { get; } /// @@ -60,6 +64,7 @@ internal Playlist(IntPtr handle) /// /// A string representation of the current playlist. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public override string ToString() => $"Id={Id}, Name={Name}, ThumbnailPath={ThumbnailPath}"; } @@ -72,6 +77,7 @@ public override string ToString() => /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public class PlaylistUpdateValues { /// @@ -80,6 +86,7 @@ public class PlaylistUpdateValues /// If the value is null, the update operation will have no effect on the field. /// A string for name; the field will not be updated if null. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public string Name { get; set; } /// @@ -88,6 +95,7 @@ public class PlaylistUpdateValues /// If the value is null, the update operation will have no effect on the field. /// A string for the thumbnail path; the field will not be updated if null. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public string ThumbnailPath { get; set; } } @@ -95,6 +103,7 @@ public class PlaylistUpdateValues /// Represents an order of a member of the playlist. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public class PlayOrder { /// @@ -108,6 +117,7 @@ public class PlayOrder /// is less than zero. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public PlayOrder(int memberId, int orderValue) { MemberId = memberId; @@ -124,6 +134,7 @@ public PlayOrder(int memberId, int orderValue) /// is less than or equal to zero. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int MemberId { get => _memberId; @@ -148,6 +159,7 @@ public int MemberId /// is less than zero. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int Value { get => _value; diff --git a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlaylistCommand.cs b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlaylistCommand.cs index 226534d6f93..edf452efdba 100644 --- a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlaylistCommand.cs +++ b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlaylistCommand.cs @@ -26,6 +26,7 @@ namespace Tizen.Content.MediaContent /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public class PlaylistCommand : MediaCommand { /// @@ -35,6 +36,7 @@ public class PlaylistCommand : MediaCommand /// is null. /// has already been disposed. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public PlaylistCommand(MediaDatabase database) : base(database) { } @@ -47,6 +49,7 @@ public PlaylistCommand(MediaDatabase database) : base(database) /// The has already been disposed. /// An error occurred while executing the command. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int Count() { return Count(null); @@ -61,6 +64,7 @@ public int Count() /// The has already been disposed. /// An error occurred while executing the command. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int Count(CountArguments arguments) { ValidateDatabase(); @@ -83,6 +87,7 @@ public int Count(CountArguments arguments) /// is less than or equal to zero. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int GetPlayOrder(int playlistId, int memberId) { ValidateDatabase(); @@ -116,6 +121,7 @@ public int GetPlayOrder(int playlistId, int memberId) /// is less than or equal to zero. /// The caller has no required privilege. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public bool Delete(int playlistId) { ValidateDatabase(); @@ -164,6 +170,7 @@ public bool Delete(int playlistId) /// does not exists. /// The caller has no required privilege. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public Playlist InsertFromFile(string name, string path) { ValidateDatabase(); @@ -222,6 +229,7 @@ public Playlist InsertFromFile(string name, string path) /// No matching playlist exists. /// The caller has no required privilege. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public void ExportToFile(int playlistId, string path) { ValidateDatabase(); @@ -268,6 +276,7 @@ public void ExportToFile(int playlistId, string path) /// is a zero-length string. /// The caller has no required privilege. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public Playlist Insert(string name) { return Insert(name, null); @@ -287,6 +296,7 @@ public Playlist Insert(string name) /// is a zero-length string. /// The caller has no required privilege. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public Playlist Insert(string name, string thumbnailPath) { ValidateDatabase(); @@ -333,6 +343,7 @@ public Playlist Insert(string name, string thumbnailPath) /// The has already been disposed. /// An error occurred while executing the command. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public MediaDataReader Select() { return Select(null); @@ -347,6 +358,7 @@ public MediaDataReader Select() /// The has already been disposed. /// An error occurred while executing the command. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public MediaDataReader Select(SelectArguments filter) { ValidateDatabase(); @@ -365,6 +377,7 @@ public MediaDataReader Select(SelectArguments filter) /// An error occurred while executing the command. /// is less than or equal to zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public Playlist Select(int playlistId) { ValidateDatabase(); @@ -407,6 +420,7 @@ public Playlist Select(int playlistId) /// An error occurred while executing the command. /// is less than or equal to zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int CountMember(int playlistId) { return CountMember(playlistId, null); @@ -423,6 +437,7 @@ public int CountMember(int playlistId) /// An error occurred while executing the command. /// is less than or equal to zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int CountMember(int playlistId, CountArguments arguments) { ValidateDatabase(); @@ -481,6 +496,7 @@ private static List GetMembers(int playlistId, SelectArguments a /// is null. /// is a zero-length string, contains only white space. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int GetMemberId(int playlistId, string mediaId) { ValidateDatabase(); @@ -512,6 +528,7 @@ public int GetMemberId(int playlistId, string mediaId) /// An error occurred while executing the command. /// is less than or equal to zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public MediaDataReader SelectMember(int playlistId) { return SelectMember(playlistId, null); @@ -528,6 +545,7 @@ public MediaDataReader SelectMember(int playlistId) /// An error occurred while executing the command. /// is less than or equal to zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public MediaDataReader SelectMember(int playlistId, SelectArguments filter) { ValidateDatabase(); @@ -556,6 +574,7 @@ public MediaDataReader SelectMember(int playlistId, SelectArgume /// is less than or equal to zero. /// The caller has no required privilege. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public bool Update(int playlistId, PlaylistUpdateValues values) { ValidateDatabase(); @@ -617,6 +636,7 @@ public bool Update(int playlistId, PlaylistUpdateValues values) /// is a zero-length string, contains only white space. /// is less than or equal to zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public bool AddMember(int playlistId, string mediaId) { ValidationUtil.ValidateNotNullOrEmpty(mediaId, nameof(mediaId)); @@ -644,6 +664,7 @@ public bool AddMember(int playlistId, string mediaId) /// /// is less than or equal to zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public bool AddMembers(int playlistId, IEnumerable mediaIds) { ValidateDatabase(); @@ -718,6 +739,7 @@ public bool AddMembers(int playlistId, IEnumerable mediaIds) /// is less than or equal to zero. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public bool RemoveMember(int playlistId, int memberId) { if (memberId <= 0) @@ -747,6 +769,7 @@ public bool RemoveMember(int playlistId, int memberId) /// /// is less than or equal to zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public bool RemoveMembers(int playlistId, IEnumerable memberIds) { ValidateDatabase(); @@ -814,6 +837,7 @@ public bool RemoveMembers(int playlistId, IEnumerable memberIds) /// is null. /// is less than or equal to zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public bool UpdatePlayOrder(int playlistId, PlayOrder playOrder) { if (playOrder == null) @@ -841,6 +865,7 @@ public bool UpdatePlayOrder(int playlistId, PlayOrder playOrder) /// /// is less than or equal to zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public bool UpdatePlayOrders(int playlistId, IEnumerable orders) { ValidateDatabase(); diff --git a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlaylistMember.cs b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlaylistMember.cs index 8ebf307ec72..35495f7273a 100644 --- a/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlaylistMember.cs +++ b/src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/PlaylistMember.cs @@ -14,12 +14,15 @@ * limitations under the License. */ +using System; + namespace Tizen.Content.MediaContent { /// /// Represents a member of the . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public class PlaylistMember { /// @@ -27,6 +30,7 @@ public class PlaylistMember /// /// The member ID of the playlist. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int MemberId { get; } /// @@ -34,6 +38,7 @@ public class PlaylistMember /// /// The of the member. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public MediaInfo MediaInfo { get; } internal PlaylistMember(int memberId, MediaInfo mediaInfo) From 62f74c2222db172c5f534cd45ba8a02899ad3c1f Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Thu, 8 Aug 2024 18:22:29 +0900 Subject: [PATCH 029/198] [WebRTC] Add debug log (#6256) --- .../WebRTC/MediaPacketSourceConfiguration.cs | 4 ++++ src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs | 12 ++++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSourceConfiguration.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSourceConfiguration.cs index 979e9caa346..d411a01fad1 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSourceConfiguration.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSourceConfiguration.cs @@ -76,8 +76,12 @@ private void RegisterBufferStatusChangedCallback() private void UnregisterBufferStatusChangedCallback() { + Log.Info(WebRTCLog.Tag, "Enter"); + NativeWebRTC.UnsetBufferStateChangedCb(Handle, SourceId). ThrowIfFailed("Failed to unset buffer status changed callback."); + + Log.Info(WebRTCLog.Tag, "Leave"); } } } \ No newline at end of file diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs index b7dc62b0449..df993899ff7 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs @@ -164,6 +164,8 @@ public void Start() /// 9 public async Task StartAsync() { + Log.Info(WebRTCLog.Tag, "Enter"); + ValidateWebRTCState(WebRTCState.Idle); var tcs = new TaskCompletionSource(); @@ -203,6 +205,8 @@ public async Task StartAsync() StateChanged -= stateChangedEventHandler; ErrorOccurred -= errorEventHandler; } + + Log.Info(WebRTCLog.Tag, "Leave"); } /// @@ -236,6 +240,8 @@ public void Stop() /// 9 public async Task CreateOfferAsync() { + Log.Info(WebRTCLog.Tag, "Enter"); + ValidateWebRTCState(WebRTCState.Negotiating, WebRTCState.Playing); var tcsSdpCreated = new TaskCompletionSource(); @@ -255,6 +261,8 @@ public async Task CreateOfferAsync() await Task.Yield(); } + Log.Info(WebRTCLog.Tag, "Leave"); + return offer; } @@ -271,6 +279,8 @@ public async Task CreateOfferAsync() /// 9 public async Task CreateAnswerAsync() { + Log.Info(WebRTCLog.Tag, "Enter"); + ValidateWebRTCState(WebRTCState.Negotiating, WebRTCState.Playing); var tcsSdpCreated = new TaskCompletionSource(); @@ -290,6 +300,8 @@ public async Task CreateAnswerAsync() await Task.Yield(); } + Log.Info(WebRTCLog.Tag, "Leave"); + return answer; } From 5c40f1bca72696a3999583601e7f09b278e09c92 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Tue, 9 Jul 2024 15:54:16 +0900 Subject: [PATCH 030/198] [NUI] Add RequestAsyncRenderWithFixedSize to text label Requests asynchronous rendering of text with a fixed size. Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 3 +++ .../src/public/BaseComponents/TextLabel.cs | 15 +++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index 7f6f6757f1d..cc53e8d8c66 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -192,6 +192,9 @@ internal static partial class TextLabel [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_CUTOUT_get")] public static extern int CutoutGet(); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedSize")] + public static extern void RequestAsyncRenderWithFixedSize(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width, float height); } } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index 8a86f8c2287..a9f077028e6 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -320,6 +320,21 @@ private bool HasStyle() return ThemeManager.GetStyle(this.GetType()) == null ? false : true; } + /// + /// Requests asynchronous rendering of text with a fixed size. + /// + /// The width of text to render. + /// The height of text to render. + /// + /// Only works when AsyncLoad is true. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public void RequestAsyncRenderWithFixedSize(float width, float height) + { + Interop.TextLabel.RequestAsyncRenderWithFixedSize(SwigCPtr, width, height); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + /// /// The TranslatableText property.
/// The text can set the SID value.
From 3a0689bb00fc3da7fed9ff304d1ce219d7820251 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Tue, 9 Jul 2024 16:53:18 +0900 Subject: [PATCH 031/198] [NUI] Add AsyncTextRendered to TextLabel Signal is emitted along with the size information once the async text rendering is complete. Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 3 ++ .../src/public/BaseComponents/TextEvent.cs | 23 ++++++++++ .../public/BaseComponents/TextLabelEvent.cs | 46 +++++++++++++++++++ 3 files changed, 72 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index cc53e8d8c66..8fb4a55d8c4 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -195,6 +195,9 @@ internal static partial class TextLabel [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedSize")] public static extern void RequestAsyncRenderWithFixedSize(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width, float height); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncTextRenderedSignal")] + public static extern global::System.IntPtr AsyncTextRenderedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); } } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/TextEvent.cs index f63d4857572..a2e45a918e5 100644 --- a/src/Tizen.NUI/src/public/BaseComponents/TextEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextEvent.cs @@ -47,4 +47,27 @@ public class InputFilteredEventArgs : EventArgs /// 9 public InputFilterType Type { get; set; } } + + /// + /// AsyncTextRenderedEventArgs is a class to record async text rendered event arguments which will be sent to user. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public class AsyncTextRenderedEventArgs : EventArgs + { + public AsyncTextRenderedEventArgs(float width, float height) + { + Width = width; + Height = height; + } + + /// + /// The rendered width. + /// + public float Width { get; } + + /// + /// The rendered height. + /// + public float Height { get; } + } } \ No newline at end of file diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs index 94a7ed71c45..e3ba6f594d7 100644 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs @@ -35,12 +35,58 @@ public partial class TextLabel private EventHandler textLabelTextFitChangedEventHandler; private TextFitChangedCallbackDelegate textLabelTextFitChangedCallbackDelegate; + private EventHandler textLabelAsyncTextRenderedEventHandler; + private AsyncTextRenderedCallbackDelegate textLabelAsyncTextRenderedCallbackDelegate; + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void AnchorClickedCallbackDelegate(IntPtr textLabel, IntPtr href, uint hrefLength); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void TextFitChangedCallbackDelegate(IntPtr textLabel); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + private delegate void AsyncTextRenderedCallbackDelegate(IntPtr textLabel, float width, float height); + + /// + /// The AsyncTextRendered signal is emitted when the async text rendered. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public event EventHandler AsyncTextRendered + { + add + { + if (textLabelAsyncTextRenderedEventHandler == null) + { + textLabelAsyncTextRenderedCallbackDelegate = (OnAsyncTextRendered); + AsyncTextRenderedSignal().Connect(textLabelAsyncTextRenderedCallbackDelegate); + } + textLabelAsyncTextRenderedEventHandler += value; + } + remove + { + textLabelAsyncTextRenderedEventHandler -= value; + if (textLabelAsyncTextRenderedEventHandler == null && AsyncTextRenderedSignal().Empty() == false) + { + AsyncTextRenderedSignal().Disconnect(textLabelAsyncTextRenderedCallbackDelegate); + } + } + } + + internal TextLabelSignal AsyncTextRenderedSignal() + { + TextLabelSignal ret = new TextLabelSignal(Interop.TextLabel.AsyncTextRenderedSignal(SwigCPtr), false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + private void OnAsyncTextRendered(IntPtr textLabel, float width, float height) + { + AsyncTextRenderedEventArgs e = new AsyncTextRenderedEventArgs(width, height); + + //here we send all data to user event handlers + textLabelAsyncTextRenderedEventHandler?.Invoke(this, e); + } + /// /// The AnchorClicked signal is emitted when the anchor is clicked. /// From b2f643154f80163ae50c0ce06150ed18cbd398a3 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Wed, 10 Jul 2024 10:26:33 +0900 Subject: [PATCH 032/198] [NUI] Add RequestAsyncRenderWithFixedWidth to TextLabel Requests asynchronous text rendering with a fixed width. The height is determined by the content of the text when rendered with the given width. The result will be the same as the height returned by GetHeightForWidth. Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 3 +++ .../src/public/BaseComponents/TextLabel.cs | 16 ++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index 8fb4a55d8c4..b321719fa23 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -196,6 +196,9 @@ internal static partial class TextLabel [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedSize")] public static extern void RequestAsyncRenderWithFixedSize(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width, float height); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedWidth")] + public static extern void RequestAsyncRenderWithFixedWidth(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncTextRenderedSignal")] public static extern global::System.IntPtr AsyncTextRenderedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index a9f077028e6..dc2ba066c6f 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -335,6 +335,22 @@ public void RequestAsyncRenderWithFixedSize(float width, float height) if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Requests asynchronous text rendering with a fixed width. + /// + /// The width of text to render. + /// + /// Only works when AsyncLoad is true.
+ /// The height is determined by the content of the text when rendered with the given width.
+ /// The result will be the same as the height returned by GetHeightForWidth. + ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public void RequestAsyncRenderWithFixedWidth(float width) + { + Interop.TextLabel.RequestAsyncRenderWithFixedWidth(SwigCPtr, width); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + /// /// The TranslatableText property.
/// The text can set the SID value.
From ee35b11f3819c9079e753a0e2fca9bab536fa5b2 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Wed, 10 Jul 2024 14:40:25 +0900 Subject: [PATCH 033/198] [NUI] Add RequestAsyncRenderWithConstraint to TextLabel Requests asynchronous rendering with the maximum available width using the given widthConstraint. If the width of the text content is smaller than the widthConstraint, the width will be determined by the width of the text. If the width of the text content is larger than the widthConstraint, the width will be determined by the widthConstraint. The height is determined by the content of the text when rendered with the given width. In this case, the result will be the same as the height returned by GetHeightForWidth. Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 3 +++ .../src/public/BaseComponents/TextLabel.cs | 17 +++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index b321719fa23..502eac09d77 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -199,6 +199,9 @@ internal static partial class TextLabel [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedWidth")] public static extern void RequestAsyncRenderWithFixedWidth(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithConstraint")] + public static extern void RequestAsyncRenderWithConstraint(global::System.Runtime.InteropServices.HandleRef textLabelRef, float widthConstraint); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncTextRenderedSignal")] public static extern global::System.IntPtr AsyncTextRenderedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index dc2ba066c6f..25677687834 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -351,6 +351,23 @@ public void RequestAsyncRenderWithFixedWidth(float width) if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Requests asynchronous rendering with the maximum available width using the given widthConstraint. + /// + /// The maximum available width of text to render. + /// + /// If the width of the text content is smaller than the widthConstraint, the width will be determined by the width of the text.
+ /// If the width of the text content is larger than the widthConstraint, the width will be determined by the widthConstraint.
+ /// The height is determined by the content of the text when rendered with the given width.
+ /// In this case, the result will be the same as the height returned by GetHeightForWidth. + ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public void RequestAsyncRenderWithConstraint(float widthConstraint) + { + Interop.TextLabel.RequestAsyncRenderWithConstraint(SwigCPtr, widthConstraint); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + /// /// The TranslatableText property.
/// The text can set the SID value.
From 5d75aa9cc0e2418c560ebee3c92867908b5c7bd2 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Wed, 10 Jul 2024 16:33:49 +0900 Subject: [PATCH 034/198] [NUI] Add heightConstraint to async text method heightConstraint is the maximum available height of text to render. By setting the maximum available value, we can determine size within one task. Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 4 ++-- src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs | 12 ++++++++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index 502eac09d77..48849662d90 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -197,10 +197,10 @@ internal static partial class TextLabel public static extern void RequestAsyncRenderWithFixedSize(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width, float height); [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedWidth")] - public static extern void RequestAsyncRenderWithFixedWidth(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width); + public static extern void RequestAsyncRenderWithFixedWidth(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width, float heightConstraint); [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithConstraint")] - public static extern void RequestAsyncRenderWithConstraint(global::System.Runtime.InteropServices.HandleRef textLabelRef, float widthConstraint); + public static extern void RequestAsyncRenderWithConstraint(global::System.Runtime.InteropServices.HandleRef textLabelRef, float widthConstraint, float heightConstraint); [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncTextRenderedSignal")] public static extern global::System.IntPtr AsyncTextRenderedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index 25677687834..f3e0a8b5471 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -339,15 +339,17 @@ public void RequestAsyncRenderWithFixedSize(float width, float height) /// Requests asynchronous text rendering with a fixed width. ///
/// The width of text to render. + /// The maximum available height of text to render. /// /// Only works when AsyncLoad is true.
/// The height is determined by the content of the text when rendered with the given width.
/// The result will be the same as the height returned by GetHeightForWidth. + /// If the heightConstraint is given, the maximum height will be the heightConstraint. ///
[EditorBrowsable(EditorBrowsableState.Never)] - public void RequestAsyncRenderWithFixedWidth(float width) + public void RequestAsyncRenderWithFixedWidth(float width, float heightConstraint = float.PositiveInfinity) { - Interop.TextLabel.RequestAsyncRenderWithFixedWidth(SwigCPtr, width); + Interop.TextLabel.RequestAsyncRenderWithFixedWidth(SwigCPtr, width, heightConstraint); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -355,16 +357,18 @@ public void RequestAsyncRenderWithFixedWidth(float width) /// Requests asynchronous rendering with the maximum available width using the given widthConstraint. ///
/// The maximum available width of text to render. + /// The maximum available height of text to render. /// /// If the width of the text content is smaller than the widthConstraint, the width will be determined by the width of the text.
/// If the width of the text content is larger than the widthConstraint, the width will be determined by the widthConstraint.
/// The height is determined by the content of the text when rendered with the given width.
/// In this case, the result will be the same as the height returned by GetHeightForWidth. + /// If the heightConstraint is given, the maximum height will be the heightConstraint. ///
[EditorBrowsable(EditorBrowsableState.Never)] - public void RequestAsyncRenderWithConstraint(float widthConstraint) + public void RequestAsyncRenderWithConstraint(float widthConstraint, float heightConstraint = float.PositiveInfinity) { - Interop.TextLabel.RequestAsyncRenderWithConstraint(SwigCPtr, widthConstraint); + Interop.TextLabel.RequestAsyncRenderWithConstraint(SwigCPtr, widthConstraint, heightConstraint); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } From 27c076efe4f0ceafbebefd054fba9f040188e648 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Wed, 10 Jul 2024 20:05:33 +0900 Subject: [PATCH 035/198] [NUI] Add RenderMode to TextLabel Sync : default, synchronous text loading. AsyncAuto : automatically requests an asynchronous text load in OnRelayout. AsyncManual : users should manually request rendering using the async text method. All text rendering processes (update/layout/render) are performed asynchronously in AsyncAuto and AsyncManual. Removed unnecessary properties. Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 3 ++ .../src/public/BaseComponents/TextLabel.cs | 46 ++++++++++++++++++- .../TextLabelBindableProperty.cs | 20 ++++++++ .../src/public/Common/NUIConstants.cs | 22 +++++++++ 4 files changed, 89 insertions(+), 2 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index 48849662d90..bbb09ebdcbf 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -193,6 +193,9 @@ internal static partial class TextLabel [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_CUTOUT_get")] public static extern int CutoutGet(); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_RENDER_MODE_get")] + public static extern int RenderModeGet(); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedSize")] public static extern void RequestAsyncRenderWithFixedSize(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width, float height); diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index f3e0a8b5471..16c0022a914 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -217,6 +217,9 @@ static TextLabel() CutoutProperty = BindableProperty.Create(nameof(Cutout), typeof(bool), typeof(TextLabel), false, propertyChanged: SetInternalCutoutProperty, defaultValueCreator: GetInternalCutoutProperty); + + RenderModeProperty = BindableProperty.Create(nameof(RenderMode), typeof(TextRenderMode), typeof(TextLabel), TextRenderMode.Sync, + propertyChanged: SetInternalRenderModeProperty, defaultValueCreator: GetInternalRenderModeProperty); } } @@ -326,7 +329,7 @@ private bool HasStyle() /// The width of text to render. /// The height of text to render. /// - /// Only works when AsyncLoad is true. + /// Only works when AsyncMode. /// [EditorBrowsable(EditorBrowsableState.Never)] public void RequestAsyncRenderWithFixedSize(float width, float height) @@ -341,7 +344,7 @@ public void RequestAsyncRenderWithFixedSize(float width, float height) /// The width of text to render. /// The maximum available height of text to render. /// - /// Only works when AsyncLoad is true.
+ /// Only works when AsyncMode.
/// The height is determined by the content of the text when rendered with the given width.
/// The result will be the same as the height returned by GetHeightForWidth. /// If the heightConstraint is given, the maximum height will be the heightConstraint. @@ -2563,6 +2566,44 @@ public bool Cutout } } + /// + /// The RenderMode property. + /// + /// + /// Sync : default, synchronous text loading.
+ /// AsyncAuto : automatically requests an asynchronous text load in OnRelayout.
+ /// AsyncManual : users should manually request rendering using the async text method.
+ /// All text rendering processes (update/layout/render) are performed asynchronously in AsyncAuto and AsyncManual. + ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public TextRenderMode RenderMode + { + get + { + if (NUIApplication.IsUsingXaml) + { + return (TextRenderMode)GetValue(RenderModeProperty); + } + else + { + return (TextRenderMode)GetInternalRenderModeProperty(this); + } + } + set + { + if (NUIApplication.IsUsingXaml) + { + SetValue(RenderModeProperty, value); + } + else + { + SetInternalRenderModeProperty(this, null, value); + } + NotifyPropertyChanged(); + } + } + + private TextLabelSelectorData EnsureSelectorData() => selectorData ?? (selectorData = new TextLabelSelectorData()); /// @@ -2789,6 +2830,7 @@ private void RequestLayout() internal static readonly int RemoveFrontInset = Interop.TextLabel.RemoveFrontInsetGet(); internal static readonly int RemoveBackInset = Interop.TextLabel.RemoveBackInsetGet(); internal static readonly int Cutout = Interop.TextLabel.CutoutGet(); + internal static readonly int RenderMode = Interop.TextLabel.RenderModeGet(); internal static void Preload() diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs index 7fa40904c24..1e94fac9b74 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs @@ -953,6 +953,26 @@ internal static object GetInternalCutoutProperty(BindableObject bindable) return Object.InternalGetPropertyBool(textLabel.SwigCPtr, TextLabel.Property.Cutout); } + /// + /// RenderModeProperty + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public static readonly BindableProperty RenderModeProperty = null; + internal static void SetInternalRenderModeProperty(BindableObject bindable, object oldValue, object newValue) + { + var textLabel = (TextLabel)bindable; + if (newValue != null) + { + Object.InternalSetPropertyInt(textLabel.SwigCPtr, TextLabel.Property.RenderMode, (int)newValue); + } + } + internal static object GetInternalRenderModeProperty(BindableObject bindable) + { + var textLabel = (TextLabel)bindable; + + return (TextRenderMode)Object.InternalGetPropertyInt(textLabel.SwigCPtr, TextLabel.Property.RenderMode); + } + internal Selector TranslatableTextSelector { get => GetSelector(selectorData?.TranslatableText, TextLabel.TranslatableTextProperty); diff --git a/src/Tizen.NUI/src/public/Common/NUIConstants.cs b/src/Tizen.NUI/src/public/Common/NUIConstants.cs index 0ece9f70b8f..65523d4d70a 100755 --- a/src/Tizen.NUI/src/public/Common/NUIConstants.cs +++ b/src/Tizen.NUI/src/public/Common/NUIConstants.cs @@ -2207,6 +2207,28 @@ public enum FontSizeType PixelSize } + /// + /// Enumeration for the render mode of text. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public enum TextRenderMode + { + /// + /// default, synchronous text loading. + /// + Sync, + + /// + /// automatically requests an asynchronous text load in OnRelayout. + /// + AsyncAuto, + + /// + /// users should manually request rendering using the async text method. + /// + AsyncManual + } + /// /// Pre-defined SlideTransition Direction /// From 3aad931cc7fb6490868730a51a5761fb9127317f Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Fri, 12 Jul 2024 14:03:31 +0900 Subject: [PATCH 036/198] [NUI] Add ManualRendered to TextLabel Whether the last async rendering result is a manual render. If it's false, the render result was automatically requested by OnRelayout. Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 3 +++ .../src/public/BaseComponents/TextLabel.cs | 18 ++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index bbb09ebdcbf..6a7ec9adba9 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -196,6 +196,9 @@ internal static partial class TextLabel [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_RENDER_MODE_get")] public static extern int RenderModeGet(); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_MANUAL_RENDERED_get")] + public static extern int ManualRenderedGet(); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedSize")] public static extern void RequestAsyncRenderWithFixedSize(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width, float height); diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index 16c0022a914..47c9f08861b 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -2603,6 +2603,23 @@ public TextRenderMode RenderMode } } + /// + /// Whether the last async rendering result is a manual render.
+ /// If it's false, the render result was automatically requested by OnRelayout. + ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public bool ManualRendered + { + get + { + bool manualRendered = false; + using (var propertyValue = GetProperty(TextLabel.Property.ManualRendered)) + { + propertyValue.Get(out manualRendered); + } + return manualRendered; + } + } private TextLabelSelectorData EnsureSelectorData() => selectorData ?? (selectorData = new TextLabelSelectorData()); @@ -2831,6 +2848,7 @@ private void RequestLayout() internal static readonly int RemoveBackInset = Interop.TextLabel.RemoveBackInsetGet(); internal static readonly int Cutout = Interop.TextLabel.CutoutGet(); internal static readonly int RenderMode = Interop.TextLabel.RenderModeGet(); + internal static readonly int ManualRendered = Interop.TextLabel.ManualRenderedGet(); internal static void Preload() From 66c496194cf8e9a43102a843c5434d6d3e013819 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Fri, 12 Jul 2024 19:56:11 +0900 Subject: [PATCH 037/198] [NUI] Add RequestAsyncNaturalSize to TextLabel RequestAsyncNaturalSize computes the natural size of text asynchronously. The result is received through the AsyncNaturalSizeComputed. Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 6 +++ .../src/public/BaseComponents/TextEvent.cs | 23 +++++++++ .../src/public/BaseComponents/TextLabel.cs | 10 ++++ .../public/BaseComponents/TextLabelEvent.cs | 47 +++++++++++++++++++ 4 files changed, 86 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index 6a7ec9adba9..82288048ad2 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -208,8 +208,14 @@ internal static partial class TextLabel [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithConstraint")] public static extern void RequestAsyncRenderWithConstraint(global::System.Runtime.InteropServices.HandleRef textLabelRef, float widthConstraint, float heightConstraint); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncNaturalSize")] + public static extern void RequestAsyncNaturalSize(global::System.Runtime.InteropServices.HandleRef textLabelRef); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncTextRenderedSignal")] public static extern global::System.IntPtr AsyncTextRenderedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncNaturalSizeComputedSignal")] + public static extern global::System.IntPtr AsyncNaturalSizeComputedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); } } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/TextEvent.cs index a2e45a918e5..7c0c0594a2c 100644 --- a/src/Tizen.NUI/src/public/BaseComponents/TextEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextEvent.cs @@ -70,4 +70,27 @@ public AsyncTextRenderedEventArgs(float width, float height) ///
public float Height { get; } } + + /// + /// AsyncTextSizeComputedEventArgs is a class to record async text size computed event arguments which will be sent to user. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public class AsyncTextSizeComputedEventArgs : EventArgs + { + public AsyncTextSizeComputedEventArgs(float width, float height) + { + Width = width; + Height = height; + } + + /// + /// The computed width. + /// + public float Width { get; } + + /// + /// The computed height. + /// + public float Height { get; } + } } \ No newline at end of file diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index 47c9f08861b..543af9d3f36 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -375,6 +375,16 @@ public void RequestAsyncRenderWithConstraint(float widthConstraint, float height if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Requests asynchronous text natural size computation. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public void RequestAsyncNaturalSize() + { + Interop.TextLabel.RequestAsyncNaturalSize(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + /// /// The TranslatableText property.
/// The text can set the SID value.
diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs index e3ba6f594d7..78eb8ff6e59 100644 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs @@ -38,6 +38,9 @@ public partial class TextLabel private EventHandler textLabelAsyncTextRenderedEventHandler; private AsyncTextRenderedCallbackDelegate textLabelAsyncTextRenderedCallbackDelegate; + private EventHandler textLabelAsyncTextNaturalSizeComputedEventHandler; + private AsyncTextNaturalSizeComputedCallbackDelegate textLabelAsyncTextNaturalSizeComputedCallbackDelegate; + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void AnchorClickedCallbackDelegate(IntPtr textLabel, IntPtr href, uint hrefLength); @@ -47,6 +50,50 @@ public partial class TextLabel [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void AsyncTextRenderedCallbackDelegate(IntPtr textLabel, float width, float height); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + private delegate void AsyncTextNaturalSizeComputedCallbackDelegate(IntPtr textLabel, float width, float height); + + + /// + /// The AsyncNaturalSizeComputed signal is emitted when the async natural size computed. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public event EventHandler AsyncNaturalSizeComputed + { + add + { + if (textLabelAsyncTextNaturalSizeComputedEventHandler == null) + { + textLabelAsyncTextNaturalSizeComputedCallbackDelegate = (OnAsyncNaturalSizeComputed); + AsyncNaturalSizeComputedSignal().Connect(textLabelAsyncTextNaturalSizeComputedCallbackDelegate); + } + textLabelAsyncTextNaturalSizeComputedEventHandler += value; + } + remove + { + textLabelAsyncTextNaturalSizeComputedEventHandler -= value; + if (textLabelAsyncTextNaturalSizeComputedEventHandler == null && AsyncNaturalSizeComputedSignal().Empty() == false) + { + AsyncNaturalSizeComputedSignal().Disconnect(textLabelAsyncTextNaturalSizeComputedCallbackDelegate); + } + } + } + + internal TextLabelSignal AsyncNaturalSizeComputedSignal() + { + TextLabelSignal ret = new TextLabelSignal(Interop.TextLabel.AsyncNaturalSizeComputedSignal(SwigCPtr), false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + private void OnAsyncNaturalSizeComputed(IntPtr textLabel, float width, float height) + { + AsyncTextSizeComputedEventArgs e = new AsyncTextSizeComputedEventArgs(width, height); + + //here we send all data to user event handlers + textLabelAsyncTextNaturalSizeComputedEventHandler?.Invoke(this, e); + } + /// /// The AsyncTextRendered signal is emitted when the async text rendered. /// From 8bad71da340a423a00785b6b1287ff29c8879bfc Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Mon, 15 Jul 2024 10:31:45 +0900 Subject: [PATCH 038/198] [NUI] Add RequestAsyncHeightForWidth to TextLabel RequestAsyncHeightForWidth computes the hegiht for width of text asynchronously. The result is received through the AsyncHeightForWidthComputed. Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 6 +++ .../src/public/BaseComponents/TextLabel.cs | 11 +++++ .../public/BaseComponents/TextLabelEvent.cs | 46 +++++++++++++++++++ 3 files changed, 63 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index 82288048ad2..3e7aee5d10d 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -211,11 +211,17 @@ internal static partial class TextLabel [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncNaturalSize")] public static extern void RequestAsyncNaturalSize(global::System.Runtime.InteropServices.HandleRef textLabelRef); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncHeightForWidth")] + public static extern void RequestAsyncHeightForWidth(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncTextRenderedSignal")] public static extern global::System.IntPtr AsyncTextRenderedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncNaturalSizeComputedSignal")] public static extern global::System.IntPtr AsyncNaturalSizeComputedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncHeightForWidthComputedSignal")] + public static extern global::System.IntPtr AsyncHeightForWidthComputedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); } } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index 543af9d3f36..0133a50a6a5 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -385,6 +385,17 @@ public void RequestAsyncNaturalSize() if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Requests asynchronous computation of the height of the text based on the given width. + /// + /// The width of text to compute. + [EditorBrowsable(EditorBrowsableState.Never)] + public void RequestAsyncHeightForWidth(float width) + { + Interop.TextLabel.RequestAsyncHeightForWidth(SwigCPtr, width); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + /// /// The TranslatableText property.
/// The text can set the SID value.
diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs index 78eb8ff6e59..5fd377a8b26 100644 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs @@ -41,6 +41,9 @@ public partial class TextLabel private EventHandler textLabelAsyncTextNaturalSizeComputedEventHandler; private AsyncTextNaturalSizeComputedCallbackDelegate textLabelAsyncTextNaturalSizeComputedCallbackDelegate; + private EventHandler textLabelAsyncTextHeightForWidthComputedEventHandler; + private AsyncTextHeightForWidthComputedCallbackDelegate textLabelAsyncTextHeightForWidthComputedCallbackDelegate; + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void AnchorClickedCallbackDelegate(IntPtr textLabel, IntPtr href, uint hrefLength); @@ -53,6 +56,49 @@ public partial class TextLabel [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void AsyncTextNaturalSizeComputedCallbackDelegate(IntPtr textLabel, float width, float height); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + private delegate void AsyncTextHeightForWidthComputedCallbackDelegate(IntPtr textLabel, float width, float height); + + + /// + /// The AsyncHeightForWidthComputed signal is emitted when the async natural size computed. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public event EventHandler AsyncHeightForWidthComputed + { + add + { + if (textLabelAsyncTextHeightForWidthComputedEventHandler == null) + { + textLabelAsyncTextHeightForWidthComputedCallbackDelegate = (OnAsyncHeightForWidthComputed); + AsyncHeightForWidthComputedSignal().Connect(textLabelAsyncTextHeightForWidthComputedCallbackDelegate); + } + textLabelAsyncTextHeightForWidthComputedEventHandler += value; + } + remove + { + textLabelAsyncTextHeightForWidthComputedEventHandler -= value; + if (textLabelAsyncTextHeightForWidthComputedEventHandler == null && AsyncHeightForWidthComputedSignal().Empty() == false) + { + AsyncHeightForWidthComputedSignal().Disconnect(textLabelAsyncTextHeightForWidthComputedCallbackDelegate); + } + } + } + + internal TextLabelSignal AsyncHeightForWidthComputedSignal() + { + TextLabelSignal ret = new TextLabelSignal(Interop.TextLabel.AsyncHeightForWidthComputedSignal(SwigCPtr), false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + private void OnAsyncHeightForWidthComputed(IntPtr textLabel, float width, float height) + { + AsyncTextSizeComputedEventArgs e = new AsyncTextSizeComputedEventArgs(width, height); + + //here we send all data to user event handlers + textLabelAsyncTextHeightForWidthComputedEventHandler?.Invoke(this, e); + } /// /// The AsyncNaturalSizeComputed signal is emitted when the async natural size computed. From 10aafbee98742a0c9a8bacd99cb24596c78ecbfd Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Mon, 15 Jul 2024 10:40:53 +0900 Subject: [PATCH 039/198] [NUI] Clean up text label event Signed-off-by: Bowon Ryu --- .../public/BaseComponents/TextLabelEvent.cs | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs index 5fd377a8b26..8c0e31cabac 100644 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs @@ -38,11 +38,11 @@ public partial class TextLabel private EventHandler textLabelAsyncTextRenderedEventHandler; private AsyncTextRenderedCallbackDelegate textLabelAsyncTextRenderedCallbackDelegate; - private EventHandler textLabelAsyncTextNaturalSizeComputedEventHandler; - private AsyncTextNaturalSizeComputedCallbackDelegate textLabelAsyncTextNaturalSizeComputedCallbackDelegate; + private EventHandler textLabelAsyncNaturalSizeComputedEventHandler; + private AsyncNaturalSizeComputedCallbackDelegate textLabelAsyncNaturalSizeComputedCallbackDelegate; - private EventHandler textLabelAsyncTextHeightForWidthComputedEventHandler; - private AsyncTextHeightForWidthComputedCallbackDelegate textLabelAsyncTextHeightForWidthComputedCallbackDelegate; + private EventHandler textLabelAsyncHeightForWidthComputedEventHandler; + private AsyncHeightForWidthComputedCallbackDelegate textLabelAsyncHeightForWidthComputedCallbackDelegate; [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void AnchorClickedCallbackDelegate(IntPtr textLabel, IntPtr href, uint hrefLength); @@ -54,10 +54,10 @@ public partial class TextLabel private delegate void AsyncTextRenderedCallbackDelegate(IntPtr textLabel, float width, float height); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - private delegate void AsyncTextNaturalSizeComputedCallbackDelegate(IntPtr textLabel, float width, float height); + private delegate void AsyncNaturalSizeComputedCallbackDelegate(IntPtr textLabel, float width, float height); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - private delegate void AsyncTextHeightForWidthComputedCallbackDelegate(IntPtr textLabel, float width, float height); + private delegate void AsyncHeightForWidthComputedCallbackDelegate(IntPtr textLabel, float width, float height); /// @@ -68,19 +68,19 @@ public event EventHandler AsyncHeightForWidthCom { add { - if (textLabelAsyncTextHeightForWidthComputedEventHandler == null) + if (textLabelAsyncHeightForWidthComputedEventHandler == null) { - textLabelAsyncTextHeightForWidthComputedCallbackDelegate = (OnAsyncHeightForWidthComputed); - AsyncHeightForWidthComputedSignal().Connect(textLabelAsyncTextHeightForWidthComputedCallbackDelegate); + textLabelAsyncHeightForWidthComputedCallbackDelegate = (OnAsyncHeightForWidthComputed); + AsyncHeightForWidthComputedSignal().Connect(textLabelAsyncHeightForWidthComputedCallbackDelegate); } - textLabelAsyncTextHeightForWidthComputedEventHandler += value; + textLabelAsyncHeightForWidthComputedEventHandler += value; } remove { - textLabelAsyncTextHeightForWidthComputedEventHandler -= value; - if (textLabelAsyncTextHeightForWidthComputedEventHandler == null && AsyncHeightForWidthComputedSignal().Empty() == false) + textLabelAsyncHeightForWidthComputedEventHandler -= value; + if (textLabelAsyncHeightForWidthComputedEventHandler == null && AsyncHeightForWidthComputedSignal().Empty() == false) { - AsyncHeightForWidthComputedSignal().Disconnect(textLabelAsyncTextHeightForWidthComputedCallbackDelegate); + AsyncHeightForWidthComputedSignal().Disconnect(textLabelAsyncHeightForWidthComputedCallbackDelegate); } } } @@ -97,7 +97,7 @@ private void OnAsyncHeightForWidthComputed(IntPtr textLabel, float width, float AsyncTextSizeComputedEventArgs e = new AsyncTextSizeComputedEventArgs(width, height); //here we send all data to user event handlers - textLabelAsyncTextHeightForWidthComputedEventHandler?.Invoke(this, e); + textLabelAsyncHeightForWidthComputedEventHandler?.Invoke(this, e); } /// @@ -108,19 +108,19 @@ public event EventHandler AsyncNaturalSizeComput { add { - if (textLabelAsyncTextNaturalSizeComputedEventHandler == null) + if (textLabelAsyncNaturalSizeComputedEventHandler == null) { - textLabelAsyncTextNaturalSizeComputedCallbackDelegate = (OnAsyncNaturalSizeComputed); - AsyncNaturalSizeComputedSignal().Connect(textLabelAsyncTextNaturalSizeComputedCallbackDelegate); + textLabelAsyncNaturalSizeComputedCallbackDelegate = (OnAsyncNaturalSizeComputed); + AsyncNaturalSizeComputedSignal().Connect(textLabelAsyncNaturalSizeComputedCallbackDelegate); } - textLabelAsyncTextNaturalSizeComputedEventHandler += value; + textLabelAsyncNaturalSizeComputedEventHandler += value; } remove { - textLabelAsyncTextNaturalSizeComputedEventHandler -= value; - if (textLabelAsyncTextNaturalSizeComputedEventHandler == null && AsyncNaturalSizeComputedSignal().Empty() == false) + textLabelAsyncNaturalSizeComputedEventHandler -= value; + if (textLabelAsyncNaturalSizeComputedEventHandler == null && AsyncNaturalSizeComputedSignal().Empty() == false) { - AsyncNaturalSizeComputedSignal().Disconnect(textLabelAsyncTextNaturalSizeComputedCallbackDelegate); + AsyncNaturalSizeComputedSignal().Disconnect(textLabelAsyncNaturalSizeComputedCallbackDelegate); } } } @@ -137,7 +137,7 @@ private void OnAsyncNaturalSizeComputed(IntPtr textLabel, float width, float hei AsyncTextSizeComputedEventArgs e = new AsyncTextSizeComputedEventArgs(width, height); //here we send all data to user event handlers - textLabelAsyncTextNaturalSizeComputedEventHandler?.Invoke(this, e); + textLabelAsyncNaturalSizeComputedEventHandler?.Invoke(this, e); } /// From c0b6c62f763fe0ce9de8446a5bc1e3969bdf7241 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Mon, 15 Jul 2024 20:35:10 +0900 Subject: [PATCH 040/198] [NUI] Add AsyncLineCount to TextLabel Number of lines after latest asynchronous computing or rendering of text. Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 3 ++ .../src/public/BaseComponents/TextLabel.cs | 33 +++++++++++++++++-- 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index 3e7aee5d10d..21b2de62737 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -199,6 +199,9 @@ internal static partial class TextLabel [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_MANUAL_RENDERED_get")] public static extern int ManualRenderedGet(); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ASYNC_LINE_COUNT_get")] + public static extern int AsyncLineCountGet(); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedSize")] public static extern void RequestAsyncRenderWithFixedSize(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width, float height); diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index 0133a50a6a5..1e007ce169a 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -329,7 +329,7 @@ private bool HasStyle() /// The width of text to render. /// The height of text to render. /// - /// Only works when AsyncMode. + /// Only works when AsyncAuto and AsyncManual. /// [EditorBrowsable(EditorBrowsableState.Never)] public void RequestAsyncRenderWithFixedSize(float width, float height) @@ -344,7 +344,7 @@ public void RequestAsyncRenderWithFixedSize(float width, float height) /// The width of text to render. /// The maximum available height of text to render. /// - /// Only works when AsyncMode.
+ /// Only works when AsyncAuto and AsyncManual.
/// The height is determined by the content of the text when rendered with the given width.
/// The result will be the same as the height returned by GetHeightForWidth. /// If the heightConstraint is given, the maximum height will be the heightConstraint. @@ -362,6 +362,7 @@ public void RequestAsyncRenderWithFixedWidth(float width, float heightConstraint /// The maximum available width of text to render. /// The maximum available height of text to render. /// + /// Only works when AsyncAuto and AsyncManual.
/// If the width of the text content is smaller than the widthConstraint, the width will be determined by the width of the text.
/// If the width of the text content is larger than the widthConstraint, the width will be determined by the widthConstraint.
/// The height is determined by the content of the text when rendered with the given width.
@@ -2642,6 +2643,33 @@ public bool ManualRendered } } + /// + /// Number of lines after latest asynchronous computing or rendering of text. + /// + /// + /// The following example demonstrates how to obtain the LineCount asynchronously. + /// + /// label.RequestAsyncHeightForWidth(label.Size.Width); + /// label.AsyncHeightForWidthComputed += (s, e) => + /// { + /// int lineCount = label.AsyncLineCount; + /// }; + /// + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public int AsyncLineCount + { + get + { + int asyncLineCount = 0; + using (var propertyValue = GetProperty(TextLabel.Property.AsyncLineCount)) + { + propertyValue.Get(out asyncLineCount); + } + return asyncLineCount; + } + } + private TextLabelSelectorData EnsureSelectorData() => selectorData ?? (selectorData = new TextLabelSelectorData()); /// @@ -2870,6 +2898,7 @@ private void RequestLayout() internal static readonly int Cutout = Interop.TextLabel.CutoutGet(); internal static readonly int RenderMode = Interop.TextLabel.RenderModeGet(); internal static readonly int ManualRendered = Interop.TextLabel.ManualRenderedGet(); + internal static readonly int AsyncLineCount = Interop.TextLabel.AsyncLineCountGet(); internal static void Preload() From 5caab9260e0085aa08fac64d7b21f077581c1f2b Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Tue, 16 Jul 2024 19:52:26 +0900 Subject: [PATCH 041/198] [NUI] Add description to text label Signed-off-by: Bowon Ryu --- .../src/public/BaseComponents/TextLabel.cs | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index 1e007ce169a..f693dc29c22 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -329,7 +329,9 @@ private bool HasStyle() /// The width of text to render. /// The height of text to render. /// - /// Only works when AsyncAuto and AsyncManual. + /// Only works when AsyncAuto and AsyncManual.
+ /// If another request occurs before the requested render is completed, the previous request will be canceled.
+ /// In AsyncAuto, the manual request is not canceled by an auto request caused by OnRealyout. ///
[EditorBrowsable(EditorBrowsableState.Never)] public void RequestAsyncRenderWithFixedSize(float width, float height) @@ -346,8 +348,10 @@ public void RequestAsyncRenderWithFixedSize(float width, float height) /// /// Only works when AsyncAuto and AsyncManual.
/// The height is determined by the content of the text when rendered with the given width.
- /// The result will be the same as the height returned by GetHeightForWidth. - /// If the heightConstraint is given, the maximum height will be the heightConstraint. + /// The result will be the same as the height returned by GetHeightForWidth.
+ /// If the heightConstraint is given, the maximum height will be the heightConstraint.
+ /// If another request occurs before the requested render is completed, the previous request will be canceled.
+ /// In AsyncAuto, the manual request is not canceled by an auto request caused by OnRealyout. ///
[EditorBrowsable(EditorBrowsableState.Never)] public void RequestAsyncRenderWithFixedWidth(float width, float heightConstraint = float.PositiveInfinity) @@ -366,8 +370,10 @@ public void RequestAsyncRenderWithFixedWidth(float width, float heightConstraint /// If the width of the text content is smaller than the widthConstraint, the width will be determined by the width of the text.
/// If the width of the text content is larger than the widthConstraint, the width will be determined by the widthConstraint.
/// The height is determined by the content of the text when rendered with the given width.
- /// In this case, the result will be the same as the height returned by GetHeightForWidth. - /// If the heightConstraint is given, the maximum height will be the heightConstraint. + /// In this case, the result will be the same as the height returned by GetHeightForWidth.
+ /// If the heightConstraint is given, the maximum height will be the heightConstraint.
+ /// If another request occurs before the requested render is completed, the previous request will be canceled.
+ /// In AsyncAuto, the manual request is not canceled by an auto request caused by OnRealyout. /// [EditorBrowsable(EditorBrowsableState.Never)] public void RequestAsyncRenderWithConstraint(float widthConstraint, float heightConstraint = float.PositiveInfinity) @@ -379,6 +385,9 @@ public void RequestAsyncRenderWithConstraint(float widthConstraint, float height /// /// Requests asynchronous text natural size computation. /// + /// + /// If another request occurs before the requested natural size computation is completed, the previous request will be canceled. + /// [EditorBrowsable(EditorBrowsableState.Never)] public void RequestAsyncNaturalSize() { @@ -390,6 +399,9 @@ public void RequestAsyncNaturalSize() /// Requests asynchronous computation of the height of the text based on the given width. ///
/// The width of text to compute. + /// + /// If another request occurs before the requested height for width computation is completed, the previous request will be canceled. + /// [EditorBrowsable(EditorBrowsableState.Never)] public void RequestAsyncHeightForWidth(float width) { From 8b719211aef22bde881890947edb6b598050e76c Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Mon, 12 Aug 2024 20:19:50 +0900 Subject: [PATCH 042/198] [NUI] Add missing code to text label Signed-off-by: Bowon Ryu --- .../src/public/BaseComponents/TextLabel.cs | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index f693dc29c22..1e6b69ac972 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -2739,10 +2739,30 @@ protected override void Dispose(DisposeTypes type) if (this.HasBody()) { + if (textLabelAnchorClickedCallbackDelegate != null) + { + AnchorClickedSignal().Disconnect(textLabelAnchorClickedCallbackDelegate); + } + if (textLabelTextFitChangedCallbackDelegate != null) { TextFitChangedSignal().Disconnect(textLabelTextFitChangedCallbackDelegate); } + + if (textLabelAsyncTextRenderedCallbackDelegate != null) + { + AsyncTextRenderedSignal().Disconnect(textLabelAsyncTextRenderedCallbackDelegate); + } + + if (textLabelAsyncNaturalSizeComputedCallbackDelegate != null) + { + AsyncNaturalSizeComputedSignal().Disconnect(textLabelAsyncNaturalSizeComputedCallbackDelegate); + } + + if (textLabelAsyncHeightForWidthComputedCallbackDelegate != null) + { + AsyncHeightForWidthComputedSignal().Disconnect(textLabelAsyncHeightForWidthComputedCallbackDelegate); + } } base.Dispose(type); From 8ed9db6df42d784169b87adbb2cc6e5de61ebb43 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Tue, 13 Aug 2024 20:52:43 +0900 Subject: [PATCH 043/198] Remove unnecessary codes to text label * Remove the Bindable property of RenderMode. * Optimize the signal code Signed-off-by: Bowon Ryu --- .../src/internal/Interop/Interop.TextLabel.cs | 190 +++++++++--------- .../src/public/BaseComponents/TextLabel.cs | 30 +-- .../TextLabelBindableProperty.cs | 20 -- .../public/BaseComponents/TextLabelEvent.cs | 72 +++---- 4 files changed, 141 insertions(+), 171 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs index 21b2de62737..d0605cb56ac 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.TextLabel.cs @@ -14,6 +14,7 @@ * limitations under the License. * */ +using System.Runtime.InteropServices; namespace Tizen.NUI { @@ -21,210 +22,219 @@ internal static partial class Interop { internal static partial class TextLabel { - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_TEXT_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_TEXT_get")] public static extern int TextGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_FONT_FAMILY_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_FONT_FAMILY_get")] public static extern int FontFamilyGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_FONT_STYLE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_FONT_STYLE_get")] public static extern int FontStyleGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_POINT_SIZE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_POINT_SIZE_get")] public static extern int PointSizeGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_MULTI_LINE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_MULTI_LINE_get")] public static extern int MultiLineGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_HORIZONTAL_ALIGNMENT_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_HORIZONTAL_ALIGNMENT_get")] public static extern int HorizontalAlignmentGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_VERTICAL_ALIGNMENT_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_VERTICAL_ALIGNMENT_get")] public static extern int VerticalAlignmentGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_TEXT_COLOR_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_TEXT_COLOR_get")] public static extern int TextColorGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ENABLE_MARKUP_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ENABLE_MARKUP_get")] public static extern int EnableMarkupGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ENABLE_AUTO_SCROLL_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ENABLE_AUTO_SCROLL_get")] public static extern int EnableAutoScrollGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_AUTO_SCROLL_SPEED_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_AUTO_SCROLL_SPEED_get")] public static extern int AutoScrollSpeedGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_AUTO_SCROLL_LOOP_COUNT_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_AUTO_SCROLL_LOOP_COUNT_get")] public static extern int AutoScrollLoopCountGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_AUTO_SCROLL_GAP_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_AUTO_SCROLL_GAP_get")] public static extern int AutoScrollGapGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_LINE_SPACING_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_LINE_SPACING_get")] public static extern int LineSpacingGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_RELATIVE_LINE_SIZE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_RELATIVE_LINE_SIZE_get")] public static extern int RelativeLineHeightGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_UNDERLINE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_UNDERLINE_get")] public static extern int UnderlineGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_SHADOW_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_SHADOW_get")] public static extern int ShadowGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_EMBOSS_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_EMBOSS_get")] public static extern int EmbossGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_OUTLINE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_OUTLINE_get")] public static extern int OutlineGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_New__SWIG_0")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_New__SWIG_0")] public static extern global::System.IntPtr New(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_New_With_Style")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_New_With_Style")] public static extern global::System.IntPtr New(bool hasStyle); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_New_With_String_Style")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_New_With_String_Style")] public static extern global::System.IntPtr New(string text, bool hasStyle); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_TextLabel")] - public static extern void DeleteTextLabel(global::System.Runtime.InteropServices.HandleRef jarg1); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_TextLabel")] + public static extern void DeleteTextLabel(HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_PIXEL_SIZE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_PIXEL_SIZE_get")] public static extern int PixelSizeGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_ELLIPSIS_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_ELLIPSIS_get")] public static extern int EllipsisGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_ELLIPSIS_POSITION_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_ELLIPSIS_POSITION_get")] public static extern int EllipsisPositionGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_LINE_COUNT_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_LINE_COUNT_get")] public static extern int LineCountGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_LINE_WRAP_MODE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_LINE_WRAP_MODE_get")] public static extern int LineWrapModeGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_TEXT_DIRECTION_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_TEXT_DIRECTION_get")] public static extern int TextDirectionGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_VERTICAL_LINE_ALIGNMENT_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_VERTICAL_LINE_ALIGNMENT_get")] public static extern int VerticalLineAlignmentGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_AUTO_SCROLL_STOP_MODE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_AUTO_SCROLL_STOP_MODE_get")] public static extern int AutoScrollStopModeGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_AUTO_SCROLL_LOOP_DELAY_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_AUTO_SCROLL_LOOP_DELAY_get")] public static extern int AutoScrollLoopDelayGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_MATCH_SYSTEM_LANGUAGE_DIRECTION_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_MATCH_SYSTEM_LANGUAGE_DIRECTION_get")] public static extern int MatchSystemLanguageDirectionGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_TEXT_FIT_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_TEXT_FIT_get")] public static extern int TextFitGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_TextFitChangedSignal")] - public static extern global::System.IntPtr TextFitChangedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_TextFitChangedSignal")] + public static extern global::System.IntPtr TextFitChangedSignal(HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_MIN_LINE_SIZE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_TextLabel_Property_MIN_LINE_SIZE_get")] public static extern int MinLineSizeGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_FONT_SIZE_SCALE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_FONT_SIZE_SCALE_get")] public static extern int FontSizeScaleGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ENABLE_FONT_SIZE_SCALE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ENABLE_FONT_SIZE_SCALE_get")] public static extern int EnableFontSizeScaleGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_GetTextSize")] - public static extern global::System.IntPtr GetTextSize(global::System.Runtime.InteropServices.HandleRef textLabelRef, uint start, uint end); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_GetTextSize")] + public static extern global::System.IntPtr GetTextSize(HandleRef textLabelRef, uint start, uint end); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_GetTextPosition")] - public static extern global::System.IntPtr GetTextPosition(global::System.Runtime.InteropServices.HandleRef textLabelRef, uint start, uint end); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_GetTextPosition")] + public static extern global::System.IntPtr GetTextPosition(HandleRef textLabelRef, uint start, uint end); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_SetTextFitArray")] - public static extern void SetTextFitArray(global::System.Runtime.InteropServices.HandleRef textLabel, bool enable, uint arraySize, float[] pointSizeArray, float[] minLineSizeArray); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_SetTextFitArray")] + public static extern void SetTextFitArray(HandleRef textLabel, bool enable, uint arraySize, float[] pointSizeArray, float[] minLineSizeArray); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_GetTextFitArray")] - public static extern global::System.IntPtr GetTextFitArray(global::System.Runtime.InteropServices.HandleRef textLabel); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_GetTextFitArray")] + public static extern global::System.IntPtr GetTextFitArray(HandleRef textLabel); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AnchorClickedSignal")] - public static extern global::System.IntPtr AnchorClickedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AnchorClickedSignal")] + public static extern global::System.IntPtr AnchorClickedSignal(HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabelSignal_Empty")] - [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] - public static extern bool TextLabelSignalEmpty(global::System.Runtime.InteropServices.HandleRef jarg1); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabelSignal_Empty")] + [return: MarshalAs(UnmanagedType.U1)] + public static extern bool TextLabelSignalEmpty(HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabelSignal_GetConnectionCount")] - public static extern uint TextLabelSignalGetConnectionCount(global::System.Runtime.InteropServices.HandleRef jarg1); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabelSignal_GetConnectionCount")] + public static extern uint TextLabelSignalGetConnectionCount(HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabelSignal_Connect")] - public static extern void TextLabelSignalConnect(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabelSignal_Connect")] + public static extern void TextLabelSignalConnect(HandleRef jarg1, HandleRef jarg2); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabelSignal_Disconnect")] - public static extern void TextLabelSignalDisconnect(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabelSignal_Disconnect")] + public static extern void TextLabelSignalDisconnect(HandleRef jarg1, HandleRef jarg2); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabelSignal_Emit")] - public static extern void TextLabelSignalEmit(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabelSignal_Emit")] + public static extern void TextLabelSignalEmit(HandleRef jarg1, HandleRef jarg2); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_TextLabelSignal")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_TextLabelSignal")] public static extern global::System.IntPtr NewTextLabelSignal(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_TextLabelSignal")] - public static extern void DeleteTextLabelSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_TextLabelSignal")] + public static extern void DeleteTextLabelSignal(HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_STRIKETHROUGH_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_STRIKETHROUGH_get")] public static extern int StrikethroughGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_CHARACTER_SPACING_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_CHARACTER_SPACING_get")] public static extern int CharacterSpacingGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ANCHOR_COLOR_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ANCHOR_COLOR_get")] public static extern int AnchorColorGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ANCHOR_CLICKED_COLOR_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ANCHOR_CLICKED_COLOR_get")] public static extern int AnchorClickedColorGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_REMOVE_FRONT_INSET_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_REMOVE_FRONT_INSET_get")] public static extern int RemoveFrontInsetGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_REMOVE_BACK_INSET_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_REMOVE_BACK_INSET_get")] public static extern int RemoveBackInsetGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_CUTOUT_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_CUTOUT_get")] public static extern int CutoutGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_RENDER_MODE_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_RENDER_MODE_get")] public static extern int RenderModeGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_MANUAL_RENDERED_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_MANUAL_RENDERED_get")] public static extern int ManualRenderedGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ASYNC_LINE_COUNT_get")] + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_Property_ASYNC_LINE_COUNT_get")] public static extern int AsyncLineCountGet(); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedSize")] - public static extern void RequestAsyncRenderWithFixedSize(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width, float height); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedSize")] + public static extern void RequestAsyncRenderWithFixedSize(HandleRef textLabelRef, float width, float height); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedWidth")] - public static extern void RequestAsyncRenderWithFixedWidth(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width, float heightConstraint); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithFixedWidth")] + public static extern void RequestAsyncRenderWithFixedWidth(HandleRef textLabelRef, float width, float heightConstraint); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithConstraint")] - public static extern void RequestAsyncRenderWithConstraint(global::System.Runtime.InteropServices.HandleRef textLabelRef, float widthConstraint, float heightConstraint); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncRenderWithConstraint")] + public static extern void RequestAsyncRenderWithConstraint(HandleRef textLabelRef, float widthConstraint, float heightConstraint); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncNaturalSize")] - public static extern void RequestAsyncNaturalSize(global::System.Runtime.InteropServices.HandleRef textLabelRef); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncNaturalSize")] + public static extern void RequestAsyncNaturalSize(HandleRef textLabelRef); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncHeightForWidth")] - public static extern void RequestAsyncHeightForWidth(global::System.Runtime.InteropServices.HandleRef textLabelRef, float width); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_RequestAsyncHeightForWidth")] + public static extern void RequestAsyncHeightForWidth(HandleRef textLabelRef, float width); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncTextRenderedSignal")] - public static extern global::System.IntPtr AsyncTextRenderedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncTextRenderedSignal_Connect")] + public static extern void AsyncTextRenderedConnect(HandleRef textLabelRef, HandleRef handler); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncNaturalSizeComputedSignal")] - public static extern global::System.IntPtr AsyncNaturalSizeComputedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncTextRenderedSignal_Disconnect")] + public static extern void AsyncTextRenderedDisconnect(HandleRef textLabelRef, HandleRef handler); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncHeightForWidthComputedSignal")] - public static extern global::System.IntPtr AsyncHeightForWidthComputedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncNaturalSizeComputedSignal_Connect")] + public static extern void AsyncNaturalSizeComputedConnect(HandleRef textLabelRef, HandleRef handler); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncNaturalSizeComputedSignal_Disconnect")] + public static extern void AsyncNaturalSizeComputedDisconnect(HandleRef textLabelRef, HandleRef handler); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncHeightForWidthComputedSignal_Connect")] + public static extern void AsyncHeightForWidthComputedConnect(HandleRef textLabelRef, HandleRef handler); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_TextLabel_AsyncHeightForWidthComputedSignal_Disconnect")] + public static extern void AsyncHeightForWidthComputedDisconnect(HandleRef textLabelRef, HandleRef handler); } } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index 1e6b69ac972..ceb07bdaca4 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -217,9 +217,6 @@ static TextLabel() CutoutProperty = BindableProperty.Create(nameof(Cutout), typeof(bool), typeof(TextLabel), false, propertyChanged: SetInternalCutoutProperty, defaultValueCreator: GetInternalCutoutProperty); - - RenderModeProperty = BindableProperty.Create(nameof(RenderMode), typeof(TextRenderMode), typeof(TextLabel), TextRenderMode.Sync, - propertyChanged: SetInternalRenderModeProperty, defaultValueCreator: GetInternalRenderModeProperty); } } @@ -2614,25 +2611,11 @@ public TextRenderMode RenderMode { get { - if (NUIApplication.IsUsingXaml) - { - return (TextRenderMode)GetValue(RenderModeProperty); - } - else - { - return (TextRenderMode)GetInternalRenderModeProperty(this); - } + return (TextRenderMode)Object.InternalGetPropertyInt(this.SwigCPtr, TextLabel.Property.RenderMode); } set { - if (NUIApplication.IsUsingXaml) - { - SetValue(RenderModeProperty, value); - } - else - { - SetInternalRenderModeProperty(this, null, value); - } + Object.InternalSetPropertyInt(this.SwigCPtr, TextLabel.Property.RenderMode, (int)value); NotifyPropertyChanged(); } } @@ -2751,17 +2734,20 @@ protected override void Dispose(DisposeTypes type) if (textLabelAsyncTextRenderedCallbackDelegate != null) { - AsyncTextRenderedSignal().Disconnect(textLabelAsyncTextRenderedCallbackDelegate); + Interop.TextLabel.AsyncTextRenderedDisconnect(this.SwigCPtr, textLabelAsyncTextRenderedCallbackDelegate.ToHandleRef(this)); + textLabelAsyncTextRenderedCallbackDelegate = null; } if (textLabelAsyncNaturalSizeComputedCallbackDelegate != null) { - AsyncNaturalSizeComputedSignal().Disconnect(textLabelAsyncNaturalSizeComputedCallbackDelegate); + Interop.TextLabel.AsyncNaturalSizeComputedDisconnect(this.SwigCPtr, textLabelAsyncNaturalSizeComputedCallbackDelegate.ToHandleRef(this)); + textLabelAsyncNaturalSizeComputedCallbackDelegate = null; } if (textLabelAsyncHeightForWidthComputedCallbackDelegate != null) { - AsyncHeightForWidthComputedSignal().Disconnect(textLabelAsyncHeightForWidthComputedCallbackDelegate); + Interop.TextLabel.AsyncHeightForWidthComputedDisconnect(this.SwigCPtr, textLabelAsyncHeightForWidthComputedCallbackDelegate.ToHandleRef(this)); + textLabelAsyncHeightForWidthComputedCallbackDelegate = null; } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs index 1e94fac9b74..7fa40904c24 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs @@ -953,26 +953,6 @@ internal static object GetInternalCutoutProperty(BindableObject bindable) return Object.InternalGetPropertyBool(textLabel.SwigCPtr, TextLabel.Property.Cutout); } - /// - /// RenderModeProperty - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly BindableProperty RenderModeProperty = null; - internal static void SetInternalRenderModeProperty(BindableObject bindable, object oldValue, object newValue) - { - var textLabel = (TextLabel)bindable; - if (newValue != null) - { - Object.InternalSetPropertyInt(textLabel.SwigCPtr, TextLabel.Property.RenderMode, (int)newValue); - } - } - internal static object GetInternalRenderModeProperty(BindableObject bindable) - { - var textLabel = (TextLabel)bindable; - - return (TextRenderMode)Object.InternalGetPropertyInt(textLabel.SwigCPtr, TextLabel.Property.RenderMode); - } - internal Selector TranslatableTextSelector { get => GetSelector(selectorData?.TranslatableText, TextLabel.TranslatableTextProperty); diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs index 8c0e31cabac..4f98707499c 100644 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabelEvent.cs @@ -70,34 +70,32 @@ public event EventHandler AsyncHeightForWidthCom { if (textLabelAsyncHeightForWidthComputedEventHandler == null) { - textLabelAsyncHeightForWidthComputedCallbackDelegate = (OnAsyncHeightForWidthComputed); - AsyncHeightForWidthComputedSignal().Connect(textLabelAsyncHeightForWidthComputedCallbackDelegate); + textLabelAsyncHeightForWidthComputedCallbackDelegate = OnAsyncHeightForWidthComputed; + Interop.TextLabel.AsyncHeightForWidthComputedConnect(SwigCPtr, textLabelAsyncHeightForWidthComputedCallbackDelegate.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); } textLabelAsyncHeightForWidthComputedEventHandler += value; } remove { textLabelAsyncHeightForWidthComputedEventHandler -= value; - if (textLabelAsyncHeightForWidthComputedEventHandler == null && AsyncHeightForWidthComputedSignal().Empty() == false) + if (textLabelAsyncHeightForWidthComputedEventHandler == null && textLabelAsyncHeightForWidthComputedCallbackDelegate != null) { - AsyncHeightForWidthComputedSignal().Disconnect(textLabelAsyncHeightForWidthComputedCallbackDelegate); + Interop.TextLabel.AsyncHeightForWidthComputedDisconnect(SwigCPtr, textLabelAsyncHeightForWidthComputedCallbackDelegate.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + textLabelAsyncHeightForWidthComputedCallbackDelegate = null; } } } - internal TextLabelSignal AsyncHeightForWidthComputedSignal() - { - TextLabelSignal ret = new TextLabelSignal(Interop.TextLabel.AsyncHeightForWidthComputedSignal(SwigCPtr), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - private void OnAsyncHeightForWidthComputed(IntPtr textLabel, float width, float height) { AsyncTextSizeComputedEventArgs e = new AsyncTextSizeComputedEventArgs(width, height); - //here we send all data to user event handlers - textLabelAsyncHeightForWidthComputedEventHandler?.Invoke(this, e); + if (textLabelAsyncHeightForWidthComputedEventHandler != null) + { + textLabelAsyncHeightForWidthComputedEventHandler(this, e); + } } /// @@ -110,34 +108,32 @@ public event EventHandler AsyncNaturalSizeComput { if (textLabelAsyncNaturalSizeComputedEventHandler == null) { - textLabelAsyncNaturalSizeComputedCallbackDelegate = (OnAsyncNaturalSizeComputed); - AsyncNaturalSizeComputedSignal().Connect(textLabelAsyncNaturalSizeComputedCallbackDelegate); + textLabelAsyncNaturalSizeComputedCallbackDelegate = OnAsyncNaturalSizeComputed; + Interop.TextLabel.AsyncNaturalSizeComputedConnect(SwigCPtr, textLabelAsyncNaturalSizeComputedCallbackDelegate.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); } textLabelAsyncNaturalSizeComputedEventHandler += value; } remove { textLabelAsyncNaturalSizeComputedEventHandler -= value; - if (textLabelAsyncNaturalSizeComputedEventHandler == null && AsyncNaturalSizeComputedSignal().Empty() == false) + if (textLabelAsyncNaturalSizeComputedEventHandler == null && textLabelAsyncNaturalSizeComputedCallbackDelegate != null) { - AsyncNaturalSizeComputedSignal().Disconnect(textLabelAsyncNaturalSizeComputedCallbackDelegate); + Interop.TextLabel.AsyncNaturalSizeComputedDisconnect(SwigCPtr, textLabelAsyncNaturalSizeComputedCallbackDelegate.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + textLabelAsyncNaturalSizeComputedCallbackDelegate = null; } } } - internal TextLabelSignal AsyncNaturalSizeComputedSignal() - { - TextLabelSignal ret = new TextLabelSignal(Interop.TextLabel.AsyncNaturalSizeComputedSignal(SwigCPtr), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - private void OnAsyncNaturalSizeComputed(IntPtr textLabel, float width, float height) { AsyncTextSizeComputedEventArgs e = new AsyncTextSizeComputedEventArgs(width, height); - //here we send all data to user event handlers - textLabelAsyncNaturalSizeComputedEventHandler?.Invoke(this, e); + if (textLabelAsyncNaturalSizeComputedEventHandler != null) + { + textLabelAsyncNaturalSizeComputedEventHandler(this, e); + } } /// @@ -150,34 +146,32 @@ public event EventHandler AsyncTextRendered { if (textLabelAsyncTextRenderedEventHandler == null) { - textLabelAsyncTextRenderedCallbackDelegate = (OnAsyncTextRendered); - AsyncTextRenderedSignal().Connect(textLabelAsyncTextRenderedCallbackDelegate); + textLabelAsyncTextRenderedCallbackDelegate = OnAsyncTextRendered; + Interop.TextLabel.AsyncTextRenderedConnect(SwigCPtr, textLabelAsyncTextRenderedCallbackDelegate.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); } textLabelAsyncTextRenderedEventHandler += value; } remove { textLabelAsyncTextRenderedEventHandler -= value; - if (textLabelAsyncTextRenderedEventHandler == null && AsyncTextRenderedSignal().Empty() == false) + if (textLabelAsyncTextRenderedEventHandler == null && textLabelAsyncTextRenderedCallbackDelegate != null) { - AsyncTextRenderedSignal().Disconnect(textLabelAsyncTextRenderedCallbackDelegate); + Interop.TextLabel.AsyncTextRenderedDisconnect(SwigCPtr, textLabelAsyncTextRenderedCallbackDelegate.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + textLabelAsyncTextRenderedCallbackDelegate = null; } } } - internal TextLabelSignal AsyncTextRenderedSignal() - { - TextLabelSignal ret = new TextLabelSignal(Interop.TextLabel.AsyncTextRenderedSignal(SwigCPtr), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - private void OnAsyncTextRendered(IntPtr textLabel, float width, float height) { AsyncTextRenderedEventArgs e = new AsyncTextRenderedEventArgs(width, height); - //here we send all data to user event handlers - textLabelAsyncTextRenderedEventHandler?.Invoke(this, e); + if (textLabelAsyncTextRenderedEventHandler != null) + { + textLabelAsyncTextRenderedEventHandler(this, e); + } } /// From 975e14cff1bb591474c6d26586e7ba9c2cdd85a5 Mon Sep 17 00:00:00 2001 From: Seungho Baek Date: Tue, 30 Jul 2024 15:32:58 +0900 Subject: [PATCH 044/198] [NUI.Scene3D] Fix Camera control in SceneView - Make the camera not be removed from SceneView when SelectCamera - Move CameraTransition to Native Signed-off-by: Seungho Baek --- .../src/internal/Interop/Interop.SceneView.cs | 12 ++ .../src/public/Controls/SceneView.cs | 200 +++++++----------- .../Samples/Scene3DCameraTransitionTest.cs | 111 ++++++++++ .../res/models/BoxAnimated.glb | Bin 0 -> 11944 bytes 4 files changed, 198 insertions(+), 125 deletions(-) create mode 100755 test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DCameraTransitionTest.cs create mode 100644 test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/models/BoxAnimated.glb diff --git a/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.SceneView.cs b/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.SceneView.cs index 0e0dfd11da6..0d10ba48259 100755 --- a/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.SceneView.cs +++ b/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.SceneView.cs @@ -105,6 +105,18 @@ internal static partial class SceneView [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_SceneView_GetSkyboxOrientation")] public static extern global::System.IntPtr GetSkyboxOrientation(global::System.Runtime.InteropServices.HandleRef sceneView); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_SceneView_StartCameraTransition_Index")] + public static extern void StartCameraTransitionByIndex(global::System.Runtime.InteropServices.HandleRef sceneView, uint index, int durationMilliSeconds, global::System.Runtime.InteropServices.HandleRef alphaFunction); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_SceneView_StartCameraTransition_Name")] + public static extern void StartCameraTransitionByName(global::System.Runtime.InteropServices.HandleRef sceneView, string name, int durationMilliSeconds, global::System.Runtime.InteropServices.HandleRef alphaFunction); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_SceneView_CameraTransitionFinishedSignal_Connect")] + public static extern void CameraTransitionFinishedConnect(global::System.Runtime.InteropServices.HandleRef actor, global::System.Runtime.InteropServices.HandleRef handler); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_SceneView_CameraTransitionFinishedSignal_Disconnect")] + public static extern void CameraTransitionFinishedDisconnect(global::System.Runtime.InteropServices.HandleRef actor, global::System.Runtime.InteropServices.HandleRef handler); } } } diff --git a/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs b/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs index 217a7a17be7..d3698100ebd 100755 --- a/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs +++ b/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs @@ -68,10 +68,14 @@ namespace Tizen.NUI.Scene3D /// 10 public class SceneView : View { - private bool inCameraTransition = false; - private Animation cameraTransition; private string skyboxUrl; + private EventHandler cameraTransitionFinishedEventHandler; + private CameraTransitionFinishedEventCallbackType cameraTransitionFinishedEventCallback; + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + private delegate void CameraTransitionFinishedEventCallbackType(IntPtr data); + internal SceneView(global::System.IntPtr cPtr, bool cMemoryOwn) : this(cPtr, cMemoryOwn, cMemoryOwn) { } @@ -80,6 +84,31 @@ internal SceneView(global::System.IntPtr cPtr, bool cMemoryOwn, bool cRegister) { } + /// + /// Dispose Explicit or Implicit + /// + [EditorBrowsable(EditorBrowsableState.Never)] + protected override void Dispose(DisposeTypes type) + { + if (Disposed) + { + return; + } + + if (cameraTransitionFinishedEventCallback != null) + { + NUILog.Debug($"[Dispose] cameraTransitionFinishedEventCallback"); + + Interop.SceneView.CameraTransitionFinishedDisconnect(GetBaseHandleCPtrHandleRef, cameraTransitionFinishedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExistsDebug(); + cameraTransitionFinishedEventCallback = null; + } + + LayoutCount = 0; + + base.Dispose(type); + } + /// /// Create an initialized SceneView. /// @@ -116,7 +145,30 @@ internal SceneView Assign(SceneView sceneView) /// // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] - public event EventHandler CameraTransitionFinished; + public event EventHandler CameraTransitionFinished + { + add + { + if (cameraTransitionFinishedEventHandler == null) + { + cameraTransitionFinishedEventCallback = OnCameraTransitionFinished; + Interop.SceneView.CameraTransitionFinishedConnect(SwigCPtr, cameraTransitionFinishedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + } + cameraTransitionFinishedEventHandler += value; + } + + remove + { + cameraTransitionFinishedEventHandler -= value; + if (cameraTransitionFinishedEventHandler == null && cameraTransitionFinishedEventCallback != null) + { + Interop.SceneView.CameraTransitionFinishedDisconnect(SwigCPtr, cameraTransitionFinishedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + cameraTransitionFinishedEventCallback = null; + } + } + } /// /// Set/Get the ImageBasedLight ScaleFactor. @@ -354,11 +406,6 @@ public Camera GetCamera(string name) /// 10 public void SelectCamera(uint index) { - if (inCameraTransition) - { - return; - } - this.GetSelectedCamera()?.Unparent(); Interop.SceneView.SelectCamera(SwigCPtr, index); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -370,11 +417,6 @@ public void SelectCamera(uint index) /// 10 public void SelectCamera(string name) { - if (inCameraTransition) - { - return; - } - this.GetSelectedCamera()?.Unparent(); Interop.SceneView.SelectCamera(SwigCPtr, name); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -384,7 +426,7 @@ public void SelectCamera(string name) /// Camera Position, Orientation and FieldOfView are smoothly animated. /// /// - /// The selected camera is switched to the Camera of the index when the transition is started. + /// The selected camera is switched to the Camera of the index when the transition is finished. /// During camera transition, Selected Camera should not be changed by using SelectCamera() or CameraTransition() method. /// During camera transition, Camera properties of Selected Camera should not be changed. /// @@ -395,14 +437,13 @@ public void SelectCamera(string name) [SuppressMessage("Microsoft.Design", "CA2000: Dispose objects before losing scope", Justification = "The ownership of camera object is not owned by this class.")] public void CameraTransition(uint index, int durationMilliSeconds, AlphaFunction alphaFunction = null) { - if (inCameraTransition || GetSelectedCamera() == GetCamera(index)) + AlphaFunction actualAlphaFunction = alphaFunction; + if(actualAlphaFunction == null) { - return; + actualAlphaFunction = new AlphaFunction(); } - Camera source = GetSelectedCamera(); - SelectCamera(index); - Camera destination = GetSelectedCamera(); - CameraTransition(source, destination, durationMilliSeconds, alphaFunction); + Interop.SceneView.StartCameraTransitionByIndex(SwigCPtr, index, durationMilliSeconds, actualAlphaFunction.SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } /// @@ -410,7 +451,7 @@ public void CameraTransition(uint index, int durationMilliSeconds, AlphaFunction /// Camera Position, Orientation and FieldOfView are smoothly animated. /// /// - /// The selected camera is switched to the Camera of the input name when the transition is started. + /// The selected camera is switched to the Camera of the input name when the transition is finished. /// During camera transition, Selected Camera should not be changed by using SelectCamera() or CameraTransition() method. /// During camera transition, Camera properties of Selected Camera should not be changed. /// @@ -421,14 +462,13 @@ public void CameraTransition(uint index, int durationMilliSeconds, AlphaFunction [SuppressMessage("Microsoft.Design", "CA2000: Dispose objects before losing scope", Justification = "The ownership of camera object is not owned by this class.")] public void CameraTransition(string name, int durationMilliSeconds, AlphaFunction alphaFunction = null) { - if (inCameraTransition || GetSelectedCamera() == GetCamera(name)) + AlphaFunction actualAlphaFunction = alphaFunction; + if(actualAlphaFunction == null) { - return; + actualAlphaFunction = new AlphaFunction(); } - Camera source = GetSelectedCamera(); - SelectCamera(name); - Camera destination = GetSelectedCamera(); - CameraTransition(source, destination, durationMilliSeconds, alphaFunction); + Interop.SceneView.StartCameraTransitionByName(SwigCPtr, name, durationMilliSeconds, actualAlphaFunction.SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } /// @@ -496,7 +536,7 @@ public void SetResolution(uint width, uint height) /// /// If the SceneView not uses FBO, this method returns SceneView's width. /// - /// Camera currently used in SceneView as a selected Camera. + /// Width of the SceneView resolution // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] public uint GetResolutionWidth() @@ -512,7 +552,7 @@ public uint GetResolutionWidth() /// /// If the SceneView not uses FBO, this method returns SceneView's height. /// - /// Camera currently used in SceneView as a selected Camera. + /// Height of the SceneView resolution. // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] public uint GetResolutionHeight() @@ -638,102 +678,6 @@ private Rotation GetSkyboxOrientation() return ret; } - private void CameraTransition(Camera sourceCamera, Camera destinationCamera, int durationMilliSeconds, AlphaFunction alphaFunction) - { - inCameraTransition = true; - - Position sourcePosition = sourceCamera.Position; - Rotation sourceOrientation = sourceCamera.Orientation; - - Position destinationPosition = destinationCamera.Position; - Rotation destinationOrientation = destinationCamera.Orientation; - - cameraTransition = new Animation(durationMilliSeconds); - - KeyFrames positionKeyFrames = new KeyFrames(); - positionKeyFrames.Add(0.0f, sourcePosition); - positionKeyFrames.Add(1.0f, destinationPosition); - - KeyFrames orientationKeyFrames = new KeyFrames(); - orientationKeyFrames.Add(0.0f, sourceOrientation); - orientationKeyFrames.Add(1.0f, destinationOrientation); - - cameraTransition.AnimateBetween(destinationCamera, "Position", positionKeyFrames, Animation.Interpolation.Linear, alphaFunction); - cameraTransition.AnimateBetween(destinationCamera, "Orientation", orientationKeyFrames, Animation.Interpolation.Linear, alphaFunction); - - if (destinationCamera.ProjectionMode == Camera.ProjectionModeType.Perspective) - { - Radian sourceFieldOfView = sourceCamera.FieldOfView; - Radian destinationFieldOfView = destinationCamera.FieldOfView; - - // If ProjectionDirection is not equal, match the value. - if (sourceCamera.ProjectionDirection != destinationCamera.ProjectionDirection) - { - float aspect = destinationCamera.AspectRatio; - if (destinationCamera.ProjectionDirection == Camera.ProjectionDirectionType.Vertical) - { - Camera.ConvertFovFromHorizontalToVertical(aspect, ref sourceFieldOfView); - } - else - { - Camera.ConvertFovFromVerticalToHorizontal(aspect, ref sourceFieldOfView); - } - } - - KeyFrames fieldOfViewKeyFrames = new KeyFrames(); - fieldOfViewKeyFrames.Add(0.0f, sourceFieldOfView.ConvertToFloat()); - fieldOfViewKeyFrames.Add(1.0f, destinationFieldOfView.ConvertToFloat()); - cameraTransition.AnimateBetween(destinationCamera, "FieldOfView", fieldOfViewKeyFrames, Animation.Interpolation.Linear, alphaFunction); - - sourceFieldOfView.Dispose(); - destinationFieldOfView.Dispose(); - fieldOfViewKeyFrames.Dispose(); - } - else - { - float sourceOrthographicSize = sourceCamera.OrthographicSize; - float destinationOrthographicSize = destinationCamera.OrthographicSize; - - // If ProjectionDirection is not equal, match the value. - if (sourceCamera.ProjectionDirection != destinationCamera.ProjectionDirection) - { - float aspect = destinationCamera.AspectRatio; - if (destinationCamera.ProjectionDirection == Camera.ProjectionDirectionType.Vertical) - { - sourceOrthographicSize = sourceOrthographicSize / aspect; - } - else - { - sourceOrthographicSize = sourceOrthographicSize * aspect; - } - } - - KeyFrames orthographicSizeKeyFrames = new KeyFrames(); - orthographicSizeKeyFrames.Add(0.0f, sourceOrthographicSize); - orthographicSizeKeyFrames.Add(1.0f, destinationOrthographicSize); - cameraTransition.AnimateBetween(destinationCamera, "OrthographicSize", orthographicSizeKeyFrames, Animation.Interpolation.Linear, alphaFunction); - - orthographicSizeKeyFrames.Dispose(); - } - - float destinationNearPlaneDistance = destinationCamera.NearPlaneDistance; - float destinationFarPlaneDistance = destinationCamera.FarPlaneDistance; - destinationCamera.NearPlaneDistance = Math.Min(sourceCamera.NearPlaneDistance, destinationCamera.NearPlaneDistance); - destinationCamera.FarPlaneDistance = Math.Max(sourceCamera.FarPlaneDistance, destinationCamera.FarPlaneDistance); - - cameraTransition.Finished += (s, e) => - { - this.GetSelectedCamera().NearPlaneDistance = destinationNearPlaneDistance; - this.GetSelectedCamera().FarPlaneDistance = destinationFarPlaneDistance; - inCameraTransition = false; - CameraTransitionFinished?.Invoke(this, EventArgs.Empty); - }; - cameraTransition.Play(); - - positionKeyFrames.Dispose(); - orientationKeyFrames.Dispose(); - } - /// /// Release swigCPtr. /// @@ -743,5 +687,11 @@ protected override void ReleaseSwigCPtr(global::System.Runtime.InteropServices.H { Interop.SceneView.DeleteScene(swigCPtr); } + + // Callback for camera transition finished signal + private void OnCameraTransitionFinished(IntPtr data) + { + cameraTransitionFinishedEventHandler?.Invoke(this, EventArgs.Empty); + } } } diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DCameraTransitionTest.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DCameraTransitionTest.cs new file mode 100755 index 00000000000..4ae7b88c68d --- /dev/null +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DCameraTransitionTest.cs @@ -0,0 +1,111 @@ +using System.Numerics; +using System.Reflection.Metadata.Ecma335; +using global::System; +using Tizen.NUI; +using Tizen.NUI.BaseComponents; +using Tizen.NUI.Scene3D; + +namespace Tizen.NUI.Samples +{ + using log = Tizen.Log; + public class Scene3DCameraTransitionTest : IExample + { + private Window window; + private SceneView sceneView; + private static readonly string resourcePath = Tizen.Applications.Application.Current.DirectoryInfo.Resource; + private Tizen.NUI.Scene3D.Camera[] cameras; + private string[] cameraName; + private int cameraIndex; + private bool inCameraTransition; + private int sourceCameraIndex, destinationCameraIndex; + + public void Activate() + { + window = NUIApplication.GetDefaultWindow(); + Size2D windowSize = window.Size; + + sceneView = new SceneView() + { + Size = new Size(windowSize.Width, windowSize.Height), + PivotPoint = PivotPoint.TopLeft, + ParentOrigin = ParentOrigin.TopLeft, + PositionUsesPivotPoint = true, + BackgroundColor = new Color(0.85f, 0.85f, 0.85f, 1.0f), + UseFramebuffer = true, + }; + window.Add(sceneView); + + Light light = new Light() + { + Color = new Vector4(0.4f, 0.4f, 0.4f, 1.0f), + Position = new Vector3(-1.0f, 0.0f, 1.1f), + PositionUsesPivotPoint = true, + }; + light.LookAt(new Vector3(0.0f, 0.0f, 0.0f)); + sceneView.Add(light); + + cameras = new Scene3D.Camera[2]; + cameraName = new string[] { "camera1", "camera2" }; + Vector3[] cameraPosition = new Vector3[] { new Vector3(1.5f, 0.0f, 1.5f), new Vector3(-1.5f, -1.5f, 1.5f) }; + Vector3 modelPosition = new Vector3(-1.5f, 0.0f, 0.0f); + + cameraIndex = 0; + for (uint i = 0; i < 2; ++i) + { + cameras[i] = new Scene3D.Camera() + { + Name = cameraName[i], + Position = cameraPosition[i], + NearPlaneDistance = 1.0f, + FarPlaneDistance = 10.0f, + }; + sceneView.AddCamera(cameras[i]); + } + cameras[1].FieldOfView = new Radian(new Degree(70.0f)); + + Model model = new Model(resourcePath + "models/BoxAnimated.glb") + { + PositionUsesPivotPoint = true, + Position = modelPosition, + Size = new Size(0.5f, 0.5f, 0.5f), + }; + sceneView.Add(model); + model.Add(cameras[0]); + sceneView.SelectCamera(cameraName[0]); + sceneView.Add(cameras[1]); + inCameraTransition = false; + + cameras[0].LookAt(modelPosition); + cameras[1].LookAt(modelPosition); + + sceneView.CameraTransitionFinished += (s, e) => + { + inCameraTransition = false; + Tizen.Log.Error("NUI", $"Camera transition finished from {cameraName[sourceCameraIndex]} to {cameraName[destinationCameraIndex]}.\n"); + }; + + window.TouchEvent += (s, e) => + { + if (e.Touch.GetState(0) == PointStateType.Down) + { + if (inCameraTransition) + { + return; + } + + inCameraTransition = true; + sourceCameraIndex = cameraIndex; + destinationCameraIndex = 1 - cameraIndex; + Tizen.Log.Error("NUI", $"Request to transition of Camera from {cameraName[sourceCameraIndex]} to {cameraName[destinationCameraIndex]}.\n"); + + cameraIndex = 1 - cameraIndex; + sceneView.CameraTransition(cameraName[cameraIndex], 2000); + } + }; + } + + public void Deactivate() + { + } + } +} diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/models/BoxAnimated.glb b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/models/BoxAnimated.glb new file mode 100644 index 0000000000000000000000000000000000000000..69481ec3caeb57428c806fdac08bfbe40d19ff55 GIT binary patch literal 11944 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 H0_=YRA*={7 literal 0 HcmV?d00001 From 358907b06fe22f25fd0be1d595f83f76607ad339 Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Wed, 24 Jul 2024 12:50:59 +0900 Subject: [PATCH 045/198] [NUI] Fix SVACE defects --- src/Tizen.AIAvatar/src/Lipsync/LipSyncer.cs | 13 ++++++++----- .../src/Lipsync/VowelConverter/VowelConverter.cs | 13 ++++++++++--- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/src/Tizen.AIAvatar/src/Lipsync/LipSyncer.cs b/src/Tizen.AIAvatar/src/Lipsync/LipSyncer.cs index 8a5fc8fb47e..b929ae89aa6 100644 --- a/src/Tizen.AIAvatar/src/Lipsync/LipSyncer.cs +++ b/src/Tizen.AIAvatar/src/Lipsync/LipSyncer.cs @@ -132,13 +132,16 @@ private void PlayLipSync(byte[] audio, int sampleRate) { DestroyLipAnimation(); var lipKeyFrames = CreateKeyFrame(audio, sampleRate); - var lipAnimation = CreatedKeyFrameAnimation?.Invoke(lipKeyFrames, false); - if (lipAnimation != null) + if (lipKeyFrames != null) { - ResetLipAnimation(lipAnimation); - PlayLipAnimation(); + var lipAnimation = CreatedKeyFrameAnimation?.Invoke(lipKeyFrames, false); + if (lipAnimation != null) + { + ResetLipAnimation(lipAnimation); + PlayLipAnimation(); + } + audioPlayer.Play(audio, sampleRate); } - audioPlayer.Play(audio, sampleRate); } private void PlayLipSync(string path) diff --git a/src/Tizen.AIAvatar/src/Lipsync/VowelConverter/VowelConverter.cs b/src/Tizen.AIAvatar/src/Lipsync/VowelConverter/VowelConverter.cs index 0b65da25465..c18bded2efb 100644 --- a/src/Tizen.AIAvatar/src/Lipsync/VowelConverter/VowelConverter.cs +++ b/src/Tizen.AIAvatar/src/Lipsync/VowelConverter/VowelConverter.cs @@ -40,13 +40,20 @@ internal AnimationKeyFrame CreateKeyFrames(string[] vowels, int sampleRate, bool { vowelClassifier = GetVowelClassifier(sampleRate); - if (isMic) + if (vowelClassifier != null) { - return animationConverter.ConvertVowelsToAnimationMic(vowels, vowelClassifier.GetStepTime()); + if (isMic) + { + return animationConverter.ConvertVowelsToAnimationMic(vowels, vowelClassifier.GetStepTime()); + } + else + { + return animationConverter.ConvertVowelsToAnimation(vowels, vowelClassifier.GetStepTime()); + } } else { - return animationConverter.ConvertVowelsToAnimation(vowels, vowelClassifier.GetStepTime()); + return null; } } From 924a35f18267164cf2b879c045a57a0a0d802f21 Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Fri, 16 Aug 2024 15:34:47 +0900 Subject: [PATCH 046/198] [NUI.Devel.Tests] Do not use ColorFormat.RGBA, which might the behavior will be changed Signed-off-by: Eunki, Hong --- .../testcase/public/Images/TSNativeImageQueue.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Images/TSNativeImageQueue.cs b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Images/TSNativeImageQueue.cs index 9d06ac88e41..d19c94bcc57 100755 --- a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Images/TSNativeImageQueue.cs +++ b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Images/TSNativeImageQueue.cs @@ -42,7 +42,7 @@ public void NativeImageQueueConstructor() try { - var testingTarget = new NativeImageQueue(100, 50, NativeImageQueue.ColorFormat.RGBA8888); + var testingTarget = new NativeImageQueue(100, 50, NativeImageQueue.ColorFormat.BGRA8888); Assert.IsNotNull(testingTarget, "Can't create success object NativeImageQueue"); Assert.IsInstanceOf(testingTarget, "Should be an instance of NativeImageQueue type."); @@ -130,7 +130,7 @@ public void NativeImageQueueDequeueBuffer() { tlog.Debug(tag, $"NativeImageQueueDequeueBuffer START"); - var testingTarget = new NativeImageQueue(100, 50, NativeImageQueue.ColorFormat.RGBA8888); + var testingTarget = new NativeImageQueue(100, 50, NativeImageQueue.ColorFormat.BGRA8888); Assert.IsNotNull(testingTarget, "Can't create success object NativeImageQueue"); Assert.IsInstanceOf(testingTarget, "Should be an instance of NativeImageQueue type."); @@ -162,7 +162,7 @@ public void NativeImageQueueEnqueueBuffer() { tlog.Debug(tag, $"NativeImageQueueEnqueueBuffer START"); - var testingTarget = new NativeImageQueue(100, 50, NativeImageQueue.ColorFormat.RGBA8888); + var testingTarget = new NativeImageQueue(100, 50, NativeImageQueue.ColorFormat.BGRA8888); Assert.IsNotNull(testingTarget, "Can't create success object NativeImageQueue"); Assert.IsInstanceOf(testingTarget, "Should be an instance of NativeImageQueue type."); From 1db685238cf01e7c641b98c98d0f357ec2ff95b8 Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Wed, 26 Jun 2024 13:05:01 +0900 Subject: [PATCH 047/198] [TCSACR-586][NUI] Add IWindowProvider to be used as a common window interface across different modules --- src/Tizen.Multimedia/Common/Display.cs | 10 +-- .../Tizen.NUI.WindowSystem.sln | 25 ++++++ .../src/internal/Interop/Interop.EcoreWl2.cs | 17 ++++ .../internal/Interop/Interop.KVMService.cs | 2 +- .../Interop/Interop.QuickPanelClient.cs | 2 +- .../Interop/Interop.QuickPanelService.cs | 2 +- .../internal/Interop/Interop.SoftkeyClient.cs | 2 +- .../Interop/Interop.SoftkeyService.cs | 2 +- .../Interop/Interop.TaskbarService.cs | 2 +- .../src/public/KVMService.cs | 38 ++++++++- .../src/public/QuickPanelClient.cs | 78 ++++++++++++++++++- .../src/public/QuickPanelService.cs | 38 ++++++++- .../src/public/SoftkeyClient.cs | 40 +++++++++- .../src/public/SoftkeyService.cs | 35 ++++++++- .../src/public/TaskbarService.cs | 42 +++++++++- src/Tizen.NUI/src/public/Window/Window.cs | 11 ++- .../Tizen.Common}/IWindowProvider.cs | 22 +++++- .../Tizen.NUI.WindowSystem.InputGenerator.sln | 25 ++++++ .../Tizen.NUI.WindowSystem.Samples.cs | 9 ++- .../Tizen.NUI.WindowSystem.Samples.sln | 4 - 20 files changed, 374 insertions(+), 32 deletions(-) create mode 100644 src/Tizen.NUI.WindowSystem/Tizen.NUI.WindowSystem.sln create mode 100644 src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.EcoreWl2.cs rename src/{Tizen.Multimedia/Common => Tizen/Tizen.Common}/IWindowProvider.cs (60%) create mode 100644 test/Tizen.NUI.WindowSystem.InputGenerator/Tizen.NUI.WindowSystem.InputGenerator.sln diff --git a/src/Tizen.Multimedia/Common/Display.cs b/src/Tizen.Multimedia/Common/Display.cs index 841595178a8..f000d49b038 100644 --- a/src/Tizen.Multimedia/Common/Display.cs +++ b/src/Tizen.Multimedia/Common/Display.cs @@ -15,6 +15,7 @@ */ using System; using ElmSharp; +using Tizen.Common; namespace Tizen.Multimedia { @@ -175,9 +176,9 @@ public Display(NUI.Window window, bool uiSync) } /// - /// Initializes a new instance of the class with an interface. + /// Initializes a new instance of the class with an interface. /// - /// An object that provides a handle to a window. + /// An object that provides a handle to a window. /// 12 public Display(IWindowProvider window) : this(window, false) @@ -185,9 +186,9 @@ public Display(IWindowProvider window) } /// - /// Initializes a new instance of the class with an interface. + /// Initializes a new instance of the class with an interface. /// - /// An object that provides a handle to a window. + /// An object that provides a handle to a window. /// A value indicating whether video and UI are in sync or not. /// /// UI sync is only for and @@ -208,7 +209,6 @@ public Display(IWindowProvider window, bool uiSync) UiSync = uiSync; } - private EvasObject EvasObject { get; } private DisplayType Type { get; } diff --git a/src/Tizen.NUI.WindowSystem/Tizen.NUI.WindowSystem.sln b/src/Tizen.NUI.WindowSystem/Tizen.NUI.WindowSystem.sln new file mode 100644 index 00000000000..d2b2920f0d4 --- /dev/null +++ b/src/Tizen.NUI.WindowSystem/Tizen.NUI.WindowSystem.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.5.002.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.NUI.WindowSystem", "Tizen.NUI.WindowSystem.csproj", "{4736851E-294E-4EBA-9DF1-79D2D78176B9}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {4736851E-294E-4EBA-9DF1-79D2D78176B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4736851E-294E-4EBA-9DF1-79D2D78176B9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4736851E-294E-4EBA-9DF1-79D2D78176B9}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4736851E-294E-4EBA-9DF1-79D2D78176B9}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {0EBD4ED2-63CC-4DCC-A57A-68DBC451B9F2} + EndGlobalSection +EndGlobal diff --git a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.EcoreWl2.cs b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.EcoreWl2.cs new file mode 100644 index 00000000000..0d7fad833db --- /dev/null +++ b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.EcoreWl2.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Tizen.NUI.WindowSystem +{ + internal static partial class Interop + { + internal static partial class EcoreWl2 + { + const string lib = "libecore_wl2.so.1"; + + [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "ecore_wl2_window_id_get")] + internal static extern int GetWindowId(IntPtr win); + } + } +} diff --git a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.KVMService.cs b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.KVMService.cs index 63eebfb407e..bd661204857 100644 --- a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.KVMService.cs +++ b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.KVMService.cs @@ -11,7 +11,7 @@ internal static partial class KVMService const string lib = "libtzsh_kvm_service.so.0"; [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_kvm_service_create")] - internal static extern IntPtr Create(IntPtr tzsh, IntPtr win); + internal static extern IntPtr Create(IntPtr tzsh, uint win); [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_kvm_service_destroy")] internal static extern int Destroy(IntPtr kvmService); diff --git a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.QuickPanelClient.cs b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.QuickPanelClient.cs index 0c541500b57..36f35668749 100644 --- a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.QuickPanelClient.cs +++ b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.QuickPanelClient.cs @@ -11,7 +11,7 @@ internal static partial class QuickPanelClient const string lib = "libtzsh_quickpanel.so.0"; [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_quickpanel_create_with_type")] - internal static extern IntPtr CreateWithType(IntPtr tzsh, IntPtr win, int type); + internal static extern IntPtr CreateWithType(IntPtr tzsh, uint win, int type); [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_quickpanel_destroy")] internal static extern int Destroy(IntPtr qpClient); diff --git a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.QuickPanelService.cs b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.QuickPanelService.cs index a0297f508eb..d12888c713a 100644 --- a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.QuickPanelService.cs +++ b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.QuickPanelService.cs @@ -11,7 +11,7 @@ internal static partial class QuickPanelService const string lib = "libtzsh_quickpanel_service.so.0"; [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_quickpanel_service_create_with_type")] - internal static extern IntPtr CreateWithType(IntPtr tzsh, IntPtr win, int type); + internal static extern IntPtr CreateWithType(IntPtr tzsh, uint win, int type); [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_quickpanel_service_destroy")] internal static extern int Destroy(IntPtr service); diff --git a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.SoftkeyClient.cs b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.SoftkeyClient.cs index 13e8e109585..5b27bd68628 100644 --- a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.SoftkeyClient.cs +++ b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.SoftkeyClient.cs @@ -11,7 +11,7 @@ internal static partial class SoftkeyClient const string lib = "libtzsh_softkey.so.0"; [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_softkey_create")] - internal static extern IntPtr Create(IntPtr tzsh, IntPtr win); + internal static extern IntPtr Create(IntPtr tzsh, uint win); [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_softkey_destroy")] internal static extern int Destroy(IntPtr softkeyClient); diff --git a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.SoftkeyService.cs b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.SoftkeyService.cs index f70ba6f185e..0835f287fc8 100644 --- a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.SoftkeyService.cs +++ b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.SoftkeyService.cs @@ -11,7 +11,7 @@ internal static partial class SoftkeyService const string lib = "libtzsh_softkey_service.so.0"; [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_softkey_service_create")] - internal static extern IntPtr Create(IntPtr tzsh, IntPtr win); + internal static extern IntPtr Create(IntPtr tzsh, uint win); [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_softkey_service_destroy")] internal static extern int Destroy(IntPtr softkeyService); diff --git a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.TaskbarService.cs b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.TaskbarService.cs index 139edbe58ee..33b631f1ac6 100755 --- a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.TaskbarService.cs +++ b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.TaskbarService.cs @@ -11,7 +11,7 @@ internal static partial class TaskbarService const string lib = "libtzsh_taskbar_service.so.0"; [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_taskbar_service_create")] - internal static extern IntPtr Create(IntPtr tzsh, IntPtr win); + internal static extern IntPtr Create(IntPtr tzsh, uint win); [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_taskbar_service_destroy")] internal static extern int Destroy(IntPtr taskbarService); diff --git a/src/Tizen.NUI.WindowSystem/src/public/KVMService.cs b/src/Tizen.NUI.WindowSystem/src/public/KVMService.cs index d9f51310327..1d5e2ce323c 100644 --- a/src/Tizen.NUI.WindowSystem/src/public/KVMService.cs +++ b/src/Tizen.NUI.WindowSystem/src/public/KVMService.cs @@ -18,6 +18,7 @@ using System; using System.ComponentModel; using System.Collections.Generic; +using Tizen.Common; namespace Tizen.NUI.WindowSystem.Shell { @@ -62,7 +63,7 @@ public enum DropTarget /// The TizenShell instance. /// The window to provide service of the quickpanel. /// Thrown when failed of invalid argument. - /// Thrown when a argument is null. + /// Thrown when an argument is null. public KVMService(TizenShell tzShell, Window win) { if (tzShell == null) @@ -80,7 +81,40 @@ public KVMService(TizenShell tzShell, Window win) _tzsh = tzShell; _tzshWin = win.GetNativeId(); - _kvmService = Interop.KVMService.Create(_tzsh.GetNativeHandle(), (IntPtr)_tzshWin); + _kvmService = Interop.KVMService.Create(_tzsh.GetNativeHandle(), (uint)_tzshWin); + if (_kvmService == IntPtr.Zero) + { + int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); + _tzsh.ErrorCodeThrow(err); + } + } + + /// + /// Creates a new KVM Service handle. + /// + /// The TizenShell instance. + /// The window provider for the quickpanel service. + /// Thrown when failed of invalid argument. + /// Thrown when an argument is null. + /// 12 + public KVMService(TizenShell tzShell, IWindowProvider win) + { + if (tzShell == null) + { + throw new ArgumentNullException(nameof(tzShell)); + } + if (tzShell.GetNativeHandle() == IntPtr.Zero) + { + throw new ArgumentException("tzShell is not initialized."); + } + if (win == null) + { + throw new ArgumentNullException(nameof(win)); + } + + _tzsh = tzShell; + _tzshWin = WindowSystem.Interop.EcoreWl2.GetWindowId(win.WindowHandle); + _kvmService = Interop.KVMService.Create(_tzsh.GetNativeHandle(), (uint)_tzshWin); if (_kvmService == IntPtr.Zero) { int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); diff --git a/src/Tizen.NUI.WindowSystem/src/public/QuickPanelClient.cs b/src/Tizen.NUI.WindowSystem/src/public/QuickPanelClient.cs index 4b8dcced27b..40e0c984e57 100644 --- a/src/Tizen.NUI.WindowSystem/src/public/QuickPanelClient.cs +++ b/src/Tizen.NUI.WindowSystem/src/public/QuickPanelClient.cs @@ -20,6 +20,7 @@ using System.Text; using Tizen.Applications.Exceptions; using Tizen.System; +using Tizen.Common; namespace Tizen.NUI.WindowSystem.Shell { @@ -118,6 +119,39 @@ public event EventHandler OrientationChanged } } + private event EventHandler _rotationChanged; + + /// + /// Emits the event when the rotation(orientation) of the quickpanel service window is changed. + /// The value of the event argument represents the rotation angle in degrees. + /// + /// Thrown when failed of invalid argument. + /// 12 + public event EventHandler RotationChanged + { + add + { + if(_rotationChanged == null) + { + OrientationChanged += OnRotationChanged; + } + _rotationChanged += value; + } + remove + { + _rotationChanged -= value; + if(_rotationChanged == null) + { + OrientationChanged -= OnRotationChanged; + } + } + } + + private void OnRotationChanged(object sender, Window.WindowOrientation e) + { + _rotationChanged?.Invoke(sender, (int)e); + } + /// /// Enumeration for type of quickpanel service window. /// @@ -228,7 +262,7 @@ private enum OrientationState /// The type of quickpanel service. /// Thrown when the memory is not enough to allocate. /// Thrown when failed of invalid argument. - /// Thrown when a argument is null. + /// Thrown when an argument is null. /// 8 public QuickPanelClient(TizenShell tzShell, Window win, Types type) { @@ -248,7 +282,7 @@ public QuickPanelClient(TizenShell tzShell, Window win, Types type) _tzsh = tzShell; _tzshWin = win.GetNativeId(); - _tzshQpClient = Interop.QuickPanelClient.CreateWithType(_tzsh.GetNativeHandle(), (IntPtr)_tzshWin, (int)type); + _tzshQpClient = Interop.QuickPanelClient.CreateWithType(_tzsh.GetNativeHandle(), (uint)_tzshWin, (int)type); if (_tzshQpClient == IntPtr.Zero) { int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); @@ -260,6 +294,46 @@ public QuickPanelClient(TizenShell tzShell, Window win, Types type) if (width > height) _screenOrientation = Window.WindowOrientation.Landscape; } + /// + /// Creates a new Quickpanel Client handle. + /// + /// The TizenShell instance. + /// The window provider for the quickpanel service. + /// The type of quickpanel service. + /// Thrown when there is not enough memory (to allocate). + /// Thrown when failed of invalid argument. + /// Thrown when an argument is null. + /// 12 + public QuickPanelClient(TizenShell tzShell, IWindowProvider win, Types type) + { + int width = 0, height = 0; + if (tzShell == null) + { + throw new ArgumentNullException((string)"tzShell"); + } + if (tzShell.GetNativeHandle() == IntPtr.Zero) + { + throw new ArgumentException("tzShell is not initialized."); + } + if (win == null) + { + throw new ArgumentNullException((string)"win"); + } + + _tzsh = tzShell; + _tzshWin = WindowSystem.Interop.EcoreWl2.GetWindowId(win.WindowHandle); + _tzshQpClient = Interop.QuickPanelClient.CreateWithType(_tzsh.GetNativeHandle(), (uint)_tzshWin, (int)type); + if (_tzshQpClient == IntPtr.Zero) + { + int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); + _tzsh.ErrorCodeThrow(err); + } + + Information.TryGetValue("http://tizen.org/feature/screen.width", out width); + Information.TryGetValue("http://tizen.org/feature/screen.height", out height); + if (width > height) _screenOrientation = (Window.WindowOrientation)(90); + } + /// /// Destructor. /// diff --git a/src/Tizen.NUI.WindowSystem/src/public/QuickPanelService.cs b/src/Tizen.NUI.WindowSystem/src/public/QuickPanelService.cs index 99863d916c0..46c99a2ccb0 100644 --- a/src/Tizen.NUI.WindowSystem/src/public/QuickPanelService.cs +++ b/src/Tizen.NUI.WindowSystem/src/public/QuickPanelService.cs @@ -19,6 +19,7 @@ using System.Collections.Generic; using System.ComponentModel; using System.Text; +using Tizen.Common; namespace Tizen.NUI.WindowSystem.Shell { @@ -103,7 +104,42 @@ public QuickPanelService(TizenShell tzShell, Window win, Types type) _tzsh = tzShell; _tzshWin = win.GetNativeId(); - _tzshQpService = Interop.QuickPanelService.CreateWithType(_tzsh.GetNativeHandle(), (IntPtr)_tzshWin, (int)type); + _tzshQpService = Interop.QuickPanelService.CreateWithType(_tzsh.GetNativeHandle(), (uint)_tzshWin, (int)type); + if (_tzshQpService == IntPtr.Zero) + { + int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); + _tzsh.ErrorCodeThrow(err); + } + } + + /// + /// Creates a new Quickpanel Service handle. + /// + /// The TzShell instance. + /// The window provider for the quickpanel service. + /// The type of quickpanel service. + /// Thrown when the memory is not enough to allocate. + /// Thrown when failed of invalid argument. + /// Thrown when a argument is null. + /// 12 + public QuickPanelService(TizenShell tzShell, IWindowProvider win, Types type) + { + if (tzShell == null) + { + throw new ArgumentNullException(nameof(tzShell)); + } + if (tzShell.GetNativeHandle() == IntPtr.Zero) + { + throw new ArgumentException("tzShell is not initialized."); + } + if (win == null) + { + throw new ArgumentNullException(nameof(win)); + } + + _tzsh = tzShell; + _tzshWin = WindowSystem.Interop.EcoreWl2.GetWindowId(win.WindowHandle); + _tzshQpService = Interop.QuickPanelService.CreateWithType(_tzsh.GetNativeHandle(), (uint)_tzshWin, (int)type); if (_tzshQpService == IntPtr.Zero) { int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); diff --git a/src/Tizen.NUI.WindowSystem/src/public/SoftkeyClient.cs b/src/Tizen.NUI.WindowSystem/src/public/SoftkeyClient.cs index f316a12eb07..09edc1002ad 100644 --- a/src/Tizen.NUI.WindowSystem/src/public/SoftkeyClient.cs +++ b/src/Tizen.NUI.WindowSystem/src/public/SoftkeyClient.cs @@ -17,6 +17,7 @@ using System; using System.ComponentModel; +using Tizen.Common; namespace Tizen.NUI.WindowSystem.Shell { @@ -61,7 +62,44 @@ public SoftkeyClient(TizenShell tzShell, Window win) _tzsh = tzShell; _tzshWin = win.GetNativeId(); - _softkeyClient = Interop.SoftkeyClient.Create(_tzsh.GetNativeHandle(), (IntPtr)_tzshWin); + _softkeyClient = Interop.SoftkeyClient.Create(_tzsh.GetNativeHandle(), (uint)_tzshWin); + if (_softkeyClient == IntPtr.Zero) + { + int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); + _tzsh.ErrorCodeThrow(err); + } + } + + /// + /// Creates a new Softkey Client handle. + /// + /// The TizenShell instance. + /// The window provider for the quickpanel service. + /// http://tizen.org/privilege/windowsystem.admin + /// Thrown when failed of invalid argument. + /// Thrown when a argument is null. + /// Thrown when failed because of an invalid operation or no service. + /// Thrown when the caller does not have privilege to use this method. + /// Thrown when the feature is not supported. + /// 12 + public SoftkeyClient(TizenShell tzShell, IWindowProvider win) + { + if (tzShell == null) + { + throw new ArgumentNullException(nameof(tzShell)); + } + if (tzShell.GetNativeHandle() == IntPtr.Zero) + { + throw new ArgumentException("tzShell is not initialized."); + } + if (win == null) + { + throw new ArgumentNullException(nameof(win)); + } + + _tzsh = tzShell; + _tzshWin = WindowSystem.Interop.EcoreWl2.GetWindowId(win.WindowHandle); + _softkeyClient = Interop.SoftkeyClient.Create(_tzsh.GetNativeHandle(), (uint)_tzshWin); if (_softkeyClient == IntPtr.Zero) { int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); diff --git a/src/Tizen.NUI.WindowSystem/src/public/SoftkeyService.cs b/src/Tizen.NUI.WindowSystem/src/public/SoftkeyService.cs index 22fd7771142..1ebd4cc776c 100644 --- a/src/Tizen.NUI.WindowSystem/src/public/SoftkeyService.cs +++ b/src/Tizen.NUI.WindowSystem/src/public/SoftkeyService.cs @@ -17,6 +17,7 @@ using System; using System.ComponentModel; +using Tizen.Common; namespace Tizen.NUI.WindowSystem.Shell { @@ -65,7 +66,39 @@ public SoftkeyService(TizenShell tzShell, Window win) _tzsh = tzShell; _tzshWin = win.GetNativeId(); - _softkeyService = Interop.SoftkeyService.Create(_tzsh.GetNativeHandle(), (IntPtr)_tzshWin); + _softkeyService = Interop.SoftkeyService.Create(_tzsh.GetNativeHandle(), (uint)_tzshWin); + if (_softkeyService == IntPtr.Zero) + { + int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); + _tzsh.ErrorCodeThrow(err); + } + } + + /// + /// Creates a new Softkey Service handle. + /// + /// The TizenShell instance. + /// The window provider for the quickpanel service. + /// Thrown when failed of invalid argument. + /// Thrown when a argument is null. + public SoftkeyService(TizenShell tzShell, IWindowProvider win) + { + if (tzShell == null) + { + throw new ArgumentNullException(nameof(tzShell)); + } + if (tzShell.GetNativeHandle() == IntPtr.Zero) + { + throw new ArgumentException("tzShell is not initialized."); + } + if (win == null) + { + throw new ArgumentNullException(nameof(win)); + } + + _tzsh = tzShell; + _tzshWin = WindowSystem.Interop.EcoreWl2.GetWindowId(win.WindowHandle); + _softkeyService = Interop.SoftkeyService.Create(_tzsh.GetNativeHandle(), (uint)_tzshWin); if (_softkeyService == IntPtr.Zero) { int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); diff --git a/src/Tizen.NUI.WindowSystem/src/public/TaskbarService.cs b/src/Tizen.NUI.WindowSystem/src/public/TaskbarService.cs index 50d0eef0176..3e8d41c136f 100755 --- a/src/Tizen.NUI.WindowSystem/src/public/TaskbarService.cs +++ b/src/Tizen.NUI.WindowSystem/src/public/TaskbarService.cs @@ -17,6 +17,7 @@ using System; using System.ComponentModel; +using Tizen.Common; namespace Tizen.NUI.WindowSystem.Shell { @@ -81,7 +82,46 @@ public TaskbarService(TizenShell tzShell, Window win, PlaceType type = PlaceType _tzsh = tzShell; _tzshWin = win.GetNativeId(); - _taskbarService = Interop.TaskbarService.Create(_tzsh.GetNativeHandle(), (IntPtr)_tzshWin); + _taskbarService = Interop.TaskbarService.Create(_tzsh.GetNativeHandle(), (uint)_tzshWin); + if (_taskbarService == IntPtr.Zero) + { + int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); + _tzsh.ErrorCodeThrow(err); + } + + Interop.TaskbarService.SetPlaceType(_taskbarService, (int)type); + } + + /// + /// Creates a new Taskbar Service handle. + /// + /// The TizenShell instance. + /// The window provider for the taskbar service. + /// The selected, predefined location on the screen the Taskbar should be placed on the screen. + /// Thrown when failed of invalid argument. + /// Thrown when a argument is null. + public TaskbarService(TizenShell tzShell, IWindowProvider win, PlaceType type = PlaceType.Bottom) + { + if (tzShell == null) + { + throw new ArgumentNullException(nameof(tzShell)); + } + if (tzShell.GetNativeHandle() == IntPtr.Zero) + { + throw new ArgumentException("tzShell is not initialized."); + } + if (win == null) + { + throw new ArgumentNullException(nameof(win)); + } + if (!(win is Tizen.NUI.Window)) + { + throw new ArgumentNullException("win should be NUI.Window because this is for NUI.WindowSystem"); + } + + _tzsh = tzShell; + _tzshWin = WindowSystem.Interop.EcoreWl2.GetWindowId(win.WindowHandle); + _taskbarService = Interop.TaskbarService.Create(_tzsh.GetNativeHandle(), (uint)_tzshWin); if (_taskbarService == IntPtr.Zero) { int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); diff --git a/src/Tizen.NUI/src/public/Window/Window.cs b/src/Tizen.NUI/src/public/Window/Window.cs index 80bf6cf9df2..e8692812adf 100755 --- a/src/Tizen.NUI/src/public/Window/Window.cs +++ b/src/Tizen.NUI/src/public/Window/Window.cs @@ -22,8 +22,8 @@ using System.ComponentModel; using System.Collections.Generic; using System.Runtime.InteropServices; - using Tizen.NUI.BaseComponents; +using Tizen.Common; namespace Tizen.NUI { @@ -32,7 +32,7 @@ namespace Tizen.NUI /// The window has an orientation and indicator properties.
///
/// 3 - public partial class Window : BaseHandle + public partial class Window : BaseHandle, IWindowProvider { private HandleRef stageCPtr; private Layer rootLayer; @@ -2568,5 +2568,12 @@ public bool IsAlwaysOnTop if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } } + + IntPtr IWindowProvider.WindowHandle => GetNativeWindowHandler(); + float IWindowProvider.X => WindowPosition.X; + float IWindowProvider.Y => WindowPosition.Y; + float IWindowProvider.Width => WindowSize.Width; + float IWindowProvider.Height => WindowSize.Height; + int IWindowProvider.Rotation => (int)GetCurrentOrientation(); } } diff --git a/src/Tizen.Multimedia/Common/IWindowProvider.cs b/src/Tizen/Tizen.Common/IWindowProvider.cs similarity index 60% rename from src/Tizen.Multimedia/Common/IWindowProvider.cs rename to src/Tizen/Tizen.Common/IWindowProvider.cs index 0a86da57650..e666ba15fdf 100644 --- a/src/Tizen.Multimedia/Common/IWindowProvider.cs +++ b/src/Tizen/Tizen.Common/IWindowProvider.cs @@ -1,9 +1,25 @@ -using System; +/* +* Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved +* +* Licensed under the Apache License, Version 2.0 (the License); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an AS IS BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ -namespace Tizen.Multimedia +using System; + +namespace Tizen.Common { /// - /// The IWindowProvider interface provides the window handle and information about the window's position, size, and rotation. + /// The IWindowProvider interface provides the window handle and information about the window's position, size, etc. /// /// 12 public interface IWindowProvider diff --git a/test/Tizen.NUI.WindowSystem.InputGenerator/Tizen.NUI.WindowSystem.InputGenerator.sln b/test/Tizen.NUI.WindowSystem.InputGenerator/Tizen.NUI.WindowSystem.InputGenerator.sln new file mode 100644 index 00000000000..68f443b7d87 --- /dev/null +++ b/test/Tizen.NUI.WindowSystem.InputGenerator/Tizen.NUI.WindowSystem.InputGenerator.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.5.002.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.NUI.WindowSystem.InputGenerator", "Tizen.NUI.WindowSystem.InputGenerator.csproj", "{3957344B-8BDF-4DA5-A299-F8CF5251BF8A}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {3957344B-8BDF-4DA5-A299-F8CF5251BF8A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3957344B-8BDF-4DA5-A299-F8CF5251BF8A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3957344B-8BDF-4DA5-A299-F8CF5251BF8A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3957344B-8BDF-4DA5-A299-F8CF5251BF8A}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {C811B5D5-B735-43BC-B299-9984D91237AF} + EndGlobalSection +EndGlobal diff --git a/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.cs b/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.cs index a38f80f1a25..b2ae9564be1 100644 --- a/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.cs +++ b/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.cs @@ -6,6 +6,7 @@ using Tizen.NUI.BaseComponents; using Tizen.NUI.Components; using Tizen.NUI.WindowSystem; +using Tizen.Common; namespace Tizen.NUI.WindowSystem.Samples { @@ -123,7 +124,7 @@ private void BtnClient_ClickEvent(object sender, Button.ClickEventArgs e) window.Remove(BtnClient); window.Remove(BtnSoftkeyService); window.Remove(BtnSoftkeyClient); - qpClient = new Shell.QuickPanelClient(tzShell, window, Shell.QuickPanelClient.Types.SystemDefault); + qpClient = new Shell.QuickPanelClient(tzShell, (IWindowProvider)window, Shell.QuickPanelClient.Types.SystemDefault); qpClient.VisibleChanged += OnVisibleEvent; qpClient.OrientationChanged += OnOrientationEvent; @@ -239,7 +240,7 @@ private void BtnService_ClickEvent(object sender, Button.ClickEventArgs e) window.Remove(BtnClient); window.Remove(BtnSoftkeyService); window.Remove(BtnSoftkeyClient); - qpService = new Shell.QuickPanelService(tzShell, window, type); + qpService = new Shell.QuickPanelService(tzShell, (IWindowProvider)window, type); //if ((type == Shell.QuickPanelService.Types.ContextMenu) || (type == Shell.QuickPanelService.Types.AppsMenu)) //window.AddAuxiliaryHint("wm.policy.win.user.geometry", "1"); @@ -410,7 +411,7 @@ private void BtnSoftkeyClient_ClickEvent(object sender, Button.ClickEventArgs e) window.Remove(BtnClient); window.Remove(BtnSoftkeyService); window.Remove(BtnSoftkeyClient); - softkeyClient = new Shell.SoftkeyClient(tzShell, window); + softkeyClient = new Shell.SoftkeyClient(tzShell, (IWindowProvider)window); textSoftkeyClientVisible = new TextLabel($"Visible: {softkeyClient.Visible}"); textSoftkeyClientVisible.Position = new Position(0, -100); @@ -554,7 +555,7 @@ private void BtnSoftkeyService_ClickEvent(object sender, Button.ClickEventArgs e window.Remove(BtnClient); window.Remove(BtnSoftkeyService); window.Remove(BtnSoftkeyClient); - softkeyService = new Shell.SoftkeyService(tzShell, window); + softkeyService = new Shell.SoftkeyService(tzShell, (IWindowProvider)window); textSoftkeyServiceVisible = new TextLabel($"Visible: None"); textSoftkeyServiceVisible.Position = new Position(0, -100); diff --git a/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.sln b/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.sln index a6eca93838f..a05da295eed 100644 --- a/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.sln +++ b/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.sln @@ -21,10 +21,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.NUI.Components", "..\ EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.System.Information", "..\..\src\Tizen.System.Information\Tizen.System.Information.csproj", "{1C93CF1D-452C-4EF8-BE4F-01023FC7318A}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "nunit.framework", "..\..\..\charp_api\tct-suite-vs\nunit.framework\nunit.framework.csproj", "{37B85E87-6F6B-410A-9471-0774C3263033}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "nunitlite", "..\..\..\charp_api\tct-suite-vs\nunitlite\nunitlite.csproj", "{5E92B3C2-BF09-4C15-943C-8E251D0A7B58}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.NUI.WindowSystem", "..\..\src\Tizen.NUI.WindowSystem\Tizen.NUI.WindowSystem.csproj", "{FB1E79E8-90E1-4AB4-8C69-D3A17E33865E}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.NUI.Samples", "..\Tizen.NUI.Samples\Tizen.NUI.Samples\Tizen.NUI.Samples.csproj", "{E43F3735-04C1-4BC6-84E1-7316D22AA488}" From 8dc4f504d321f64d02ffab543fdcc9df7e96ef5e Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Tue, 13 Aug 2024 18:11:11 +0900 Subject: [PATCH 048/198] [NUI] Remove internal ObjectRegistry that is not used --- .../src/internal/Common/ObjectRegistry.cs | 203 ------------------ .../Interop/Interop.ObjectRegistry.cs | 41 ---- .../src/internal/Interop/Interop.Stage.cs | 3 - src/Tizen.NUI/src/public/Window/Window.cs | 20 -- .../internal/Common/TSObjectRegistry.cs | 178 --------------- .../testcase/public/Window/TSWindow.cs | 23 -- 6 files changed, 468 deletions(-) delete mode 100755 src/Tizen.NUI/src/internal/Common/ObjectRegistry.cs delete mode 100755 src/Tizen.NUI/src/internal/Interop/Interop.ObjectRegistry.cs delete mode 100755 test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSObjectRegistry.cs diff --git a/src/Tizen.NUI/src/internal/Common/ObjectRegistry.cs b/src/Tizen.NUI/src/internal/Common/ObjectRegistry.cs deleted file mode 100755 index 37bad4c47ec..00000000000 --- a/src/Tizen.NUI/src/internal/Common/ObjectRegistry.cs +++ /dev/null @@ -1,203 +0,0 @@ -/* - * Copyright(c) 2021 Samsung Electronics Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -using System; -using System.Runtime.InteropServices; - -namespace Tizen.NUI -{ - internal class ObjectRegistry : BaseHandle - { - internal ObjectRegistry(global::System.IntPtr cPtr, bool cMemoryOwn) : this(cPtr, cMemoryOwn, cMemoryOwn) - { - } - - internal ObjectRegistry(global::System.IntPtr cPtr, bool cMemoryOwn, bool cRegister) : base(cPtr, cMemoryOwn, cRegister) - { - } - - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) - { - Interop.ObjectRegistry.DeleteObjectRegistry(swigCPtr); - } - - public class ObjectCreatedEventArgs : EventArgs - { - private BaseHandle baseHandle; - - public BaseHandle BaseHandle - { - get - { - return baseHandle; - } - set - { - baseHandle = value; - } - } - } - - public class ObjectDestroyedEventArgs : EventArgs - { - private RefObject refObject; - - public RefObject RefObject - { - get - { - return refObject; - } - set - { - refObject = value; - } - } - } - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - private delegate void ObjectCreatedEventCallbackDelegate(IntPtr baseHandle); - private DaliEventHandler objectRegistryObjectCreatedEventHandler; - private ObjectCreatedEventCallbackDelegate objectRegistryObjectCreatedEventCallbackDelegate; - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - private delegate void ObjectDestroyedEventCallbackDelegate(IntPtr fefObject); - private DaliEventHandler objectRegistryObjectDestroyedEventHandler; - private ObjectDestroyedEventCallbackDelegate objectRegistryObjectDestroyedEventCallbackDelegate; - - public event DaliEventHandler ObjectCreated - { - add - { - // Restricted to only one listener - if (objectRegistryObjectCreatedEventHandler == null) - { - objectRegistryObjectCreatedEventHandler += value; - - objectRegistryObjectCreatedEventCallbackDelegate = new ObjectCreatedEventCallbackDelegate(OnObjectCreated); - this.ObjectCreatedSignal().Connect(objectRegistryObjectCreatedEventCallbackDelegate); - } - else - { - Tizen.Log.Error("NUI", "[ObjectRegistry.ObjectCreated] Only one listener is allowed\n"); - } - } - - remove - { - if (objectRegistryObjectCreatedEventHandler != null) - { - objectRegistryObjectCreatedEventHandler -= value; - if (objectRegistryObjectCreatedEventHandler == null) - { - this.ObjectCreatedSignal().Disconnect(objectRegistryObjectCreatedEventCallbackDelegate); - objectRegistryObjectCreatedEventCallbackDelegate = null; - } - } - } - } - - // Callback for ObjectRegistry ObjectCreatedSignal - private void OnObjectCreated(IntPtr baseHandle) - { - ObjectCreatedEventArgs e = new ObjectCreatedEventArgs(); - - // Populate all members of "e" (ObjectCreatedEventArgs) with real data - //e.BaseHandle = BaseHandle.GetBaseHandleFromPtr(baseHandle); //GetBaseHandleFromPtr() is not present in BaseHandle.cs. Not sure what is the reason? - - if (objectRegistryObjectCreatedEventHandler != null) - { - //here we send all data to user event handlers - objectRegistryObjectCreatedEventHandler(this, e); - } - } - - public event DaliEventHandler ObjectDestroyed - { - add - { - // Restricted to only one listener - if (objectRegistryObjectDestroyedEventHandler == null) - { - objectRegistryObjectDestroyedEventHandler += value; - - objectRegistryObjectDestroyedEventCallbackDelegate = new ObjectDestroyedEventCallbackDelegate(OnObjectDestroyed); - this.ObjectDestroyedSignal().Connect(objectRegistryObjectDestroyedEventCallbackDelegate); - } - else - { - Tizen.Log.Error("NUI", "[ObjectRegistry.ObjectDestroyed] Only one listener is allowed\n"); - } - } - - remove - { - if (objectRegistryObjectDestroyedEventHandler != null) - { - objectRegistryObjectDestroyedEventHandler -= value; - if (objectRegistryObjectDestroyedEventHandler == null) - { - this.ObjectDestroyedSignal().Disconnect(objectRegistryObjectDestroyedEventCallbackDelegate); - objectRegistryObjectDestroyedEventCallbackDelegate = null; - } - } - } - } - - // Callback for ObjectRegistry ObjectDestroyedSignal - private void OnObjectDestroyed(IntPtr refObject) - { - ObjectDestroyedEventArgs e = new ObjectDestroyedEventArgs(); - - // Populate all members of "e" (ObjectDestroyedEventArgs) with real data - e.RefObject = RefObject.GetRefObjectFromPtr(refObject); - - if (objectRegistryObjectDestroyedEventHandler != null) - { - //here we send all data to user event handlers - objectRegistryObjectDestroyedEventHandler(this, e); - } - } - - - public ObjectRegistry() : this(Interop.ObjectRegistry.NewObjectRegistry(), true, false) - { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - - public ObjectRegistry Assign(ObjectRegistry rhs) - { - ObjectRegistry ret = new ObjectRegistry(Interop.ObjectRegistry.Assign(SwigCPtr, ObjectRegistry.getCPtr(rhs)), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - public ObjectCreatedSignal ObjectCreatedSignal() - { - ObjectCreatedSignal ret = new ObjectCreatedSignal(Interop.ObjectRegistry.ObjectCreatedSignal(SwigCPtr), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - - public ObjectDestroyedSignal ObjectDestroyedSignal() - { - ObjectDestroyedSignal ret = new ObjectDestroyedSignal(Interop.ObjectRegistry.ObjectDestroyedSignal(SwigCPtr), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - } -} diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.ObjectRegistry.cs b/src/Tizen.NUI/src/internal/Interop/Interop.ObjectRegistry.cs deleted file mode 100755 index fb498a3f5a7..00000000000 --- a/src/Tizen.NUI/src/internal/Interop/Interop.ObjectRegistry.cs +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright(c) 2021 Samsung Electronics Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -namespace Tizen.NUI -{ - internal static partial class Interop - { - internal static partial class ObjectRegistry - { - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_ObjectRegistry__SWIG_0")] - public static extern global::System.IntPtr NewObjectRegistry(); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_ObjectRegistry")] - public static extern void DeleteObjectRegistry(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ObjectRegistry_Assign")] - public static extern global::System.IntPtr Assign(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ObjectRegistry_ObjectCreatedSignal")] - public static extern global::System.IntPtr ObjectCreatedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ObjectRegistry_ObjectDestroyedSignal")] - public static extern global::System.IntPtr ObjectDestroyedSignal(global::System.Runtime.InteropServices.HandleRef jarg1); - } - } -} diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.Stage.cs b/src/Tizen.NUI/src/internal/Interop/Interop.Stage.cs index 9d65c051eb5..be9877ab291 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.Stage.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.Stage.cs @@ -43,9 +43,6 @@ static Stage() [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Stage_GetDpi")] public static extern global::System.IntPtr GetDpi(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Stage_GetObjectRegistry")] - public static extern global::System.IntPtr GetObjectRegistry(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Stage_SetRenderingBehavior")] public static extern void SetRenderingBehavior(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); diff --git a/src/Tizen.NUI/src/public/Window/Window.cs b/src/Tizen.NUI/src/public/Window/Window.cs index e8692812adf..4dce26fc600 100755 --- a/src/Tizen.NUI/src/public/Window/Window.cs +++ b/src/Tizen.NUI/src/public/Window/Window.cs @@ -1661,26 +1661,6 @@ internal Vector2 GetDpi() return ret; } - internal ObjectRegistry GetObjectRegistry() - { - global::System.IntPtr cPtr = Interop.Stage.GetObjectRegistry(stageCPtr); - - ObjectRegistry ret = Registry.GetManagedBaseHandleFromNativePtr(cPtr) as ObjectRegistry; - if (ret != null) - { - global::System.Runtime.InteropServices.HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); - Interop.BaseHandle.DeleteBaseHandle(CPtr); - CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); - } - else - { - ret = new ObjectRegistry(cPtr, true); - } - - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - internal void SetRenderingBehavior(RenderingBehaviorType renderingBehavior) { Interop.Stage.SetRenderingBehavior(stageCPtr, (int)renderingBehavior); diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSObjectRegistry.cs b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSObjectRegistry.cs deleted file mode 100755 index 09e7b568c04..00000000000 --- a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/internal/Common/TSObjectRegistry.cs +++ /dev/null @@ -1,178 +0,0 @@ -using global::System; -using NUnit.Framework; -using NUnit.Framework.TUnit; -using Tizen.NUI.Components; -using Tizen.NUI.BaseComponents; - -namespace Tizen.NUI.Devel.Tests -{ - using tlog = Tizen.Log; - - [TestFixture] - [Description("internal/Common/ObjectRegistry")] - public class InternalObjectRegistryTest - { - private const string tag = "NUITEST"; - - [SetUp] - public void Init() - { - tlog.Info(tag, "Init() is called!"); - } - - [TearDown] - public void Destroy() - { - tlog.Info(tag, "Destroy() is called!"); - } - - [Test] - [Category("P1")] - [Description("ObjectRegistry constructor.")] - [Property("SPEC", "Tizen.NUI.ObjectRegistry.ObjectRegistry C")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "CONSTR")] - [Property("COVPARAM", "")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void ObjectRegistryConstructor() - { - tlog.Debug(tag, $"ObjectRegistryConstructor START"); - - var testingTarget = new ObjectRegistry(); - Assert.IsNotNull(testingTarget, "null handle"); - Assert.IsInstanceOf(testingTarget, "Should return ObjectRegistry instance."); - - testingTarget.Dispose(); - tlog.Debug(tag, $"ObjectRegistryConstructor END (OK)"); - } - - [Test] - [Category("P1")] - [Description("ObjectRegistry ObjectCreatedEventArgs .")] - [Property("SPEC", "Tizen.NUI.ObjectRegistry.ObjectCreatedEventArgs A")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "PRW")] - [Property("COVPARAM", "")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void ObjectRegistryObjectCreatedEventArgs() - { - tlog.Debug(tag, $"ObjectRegistryObjectCreatedEventArgs START"); - - var testingTarget = new Tizen.NUI.ObjectRegistry.ObjectCreatedEventArgs(); - Assert.IsNotNull(testingTarget, "null handle"); - Assert.IsInstanceOf(testingTarget, "Should return ObjectCreatedEventArgs instance."); - - using (View view = new View()) - { - testingTarget.BaseHandle = view; - tlog.Debug(tag, "BaseHandle : " + testingTarget.BaseHandle); - } - - tlog.Debug(tag, $"ObjectRegistryObjectCreatedEventArgs END (OK)"); - } - - [Test] - [Category("P1")] - [Description("ObjectRegistry ObjectDestroyedEventArgs .")] - [Property("SPEC", "Tizen.NUI.ObjectRegistry.ObjectDestroyedEventArgs A")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "PRW")] - [Property("COVPARAM", "")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void ObjectRegistryObjectDestroyedEventArgs() - { - tlog.Debug(tag, $"ObjectRegistryObjectDestroyedEventArgs START"); - - var testingTarget = new Tizen.NUI.ObjectRegistry.ObjectDestroyedEventArgs(); - Assert.IsNotNull(testingTarget, "null handle"); - Assert.IsInstanceOf(testingTarget, "Should return ObjectDestroyedEventArgs instance."); - - using (View view = new View()) - { - RefObject obj = RefObject.GetRefObjectFromPtr(view.SwigCPtr.Handle); - testingTarget.RefObject = obj; - tlog.Debug(tag, "RefObject : " + testingTarget.RefObject); - } - - tlog.Debug(tag, $"ObjectRegistryObjectDestroyedEventArgs END (OK)"); - } - - [Test] - [Category("P1")] - [Description("ObjectRegistry ObjectRegistry .")] - [Property("SPEC", "Tizen.NUI.ObjectRegistry.ObjectRegistry C")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "PRW")] - [Property("COVPARAM", "")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void ObjectRegistryObjectRegistry() - { - tlog.Debug(tag, $"ObjectRegistryObjectRegistry START"); - - using (ObjectRegistry obj = new ObjectRegistry(new View().SwigCPtr.Handle, false)) - { - var testingTarget = new ObjectRegistry(obj); - Assert.IsNotNull(testingTarget, "null handle"); - Assert.IsInstanceOf(testingTarget, "Should return ObjectRegistry instance."); - - testingTarget.Dispose(); - } - - tlog.Debug(tag, $"ObjectRegistryObjectRegistry END (OK)"); - } - - [Test] - [Category("P1")] - [Description("ObjectRegistry Assign .")] - [Property("SPEC", "Tizen.NUI.ObjectRegistry.Assign M")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "MR")] - [Property("COVPARAM", "")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void ObjectRegistryAssign() - { - tlog.Debug(tag, $"ObjectRegistryAssign START"); - - using (ObjectRegistry obj = new ObjectRegistry(new View().SwigCPtr.Handle, false)) - { - var testingTarget = obj.Assign(obj); - Assert.IsNotNull(testingTarget, "null handle"); - Assert.IsInstanceOf(testingTarget, "Should return ObjectRegistry instance."); - - testingTarget.Dispose(); - } - - tlog.Debug(tag, $"ObjectRegistryAssign END (OK)"); - } - - [Test] - [Category("P1")] - [Description("ObjectRegistry ObjectCreatedSignal .")] - [Property("SPEC", "Tizen.NUI.ObjectRegistry.ObjectCreatedSignal M")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "MR")] - [Property("COVPARAM", "")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void ObjectRegistryObjectCreatedSignal() - { - tlog.Debug(tag, $"ObjectRegistryObjectCreatedSignal START"); - - using (View view = new View()) - { - var testingTarget = new ObjectRegistry(view.SwigCPtr.Handle, false); - Assert.IsNotNull(testingTarget, "null handle"); - Assert.IsInstanceOf(testingTarget, "Should return ObjectRegistry instance."); - - var createdSignal = testingTarget.ObjectCreatedSignal(); - Assert.IsInstanceOf(createdSignal, "Should return ObjectCreatedSignal instance."); - - var destroyedSignal = testingTarget.ObjectDestroyedSignal(); - Assert.IsInstanceOf(destroyedSignal, "Should return ObjectDestroyedSignal instance."); - - testingTarget.Dispose(); - } - - tlog.Debug(tag, $"ObjectRegistryObjectCreatedSignal END (OK)"); - } - } -} diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/public/Window/TSWindow.cs b/test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/public/Window/TSWindow.cs index 2c0f29d99c6..8dd7347deed 100755 --- a/test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/public/Window/TSWindow.cs +++ b/test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/public/Window/TSWindow.cs @@ -319,29 +319,6 @@ public void WindowGetRenderTaskList() Assert.Pass("WindowGetRenderTaskList"); } - [Test] - [Category("P1")] - [Description("Window GetObjectRegistry")] - [Property("SPEC", "Tizen.NUI.Window.GetObjectRegistry M")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "MR")] - public void WindowGetObjectRegistry() - { - tlog.Debug(tag, $"WindowGetObjectRegistry START"); - try - { - myWin.GetObjectRegistry(); - } - catch (Exception e) - { - Tizen.Log.Error(tag, "Caught Exception" + e.ToString()); - - Assert.Fail("Caught Exception" + e.ToString()); - } - tlog.Debug(tag, $"WindowGetObjectRegistry END (OK)"); - Assert.Pass("WindowGetObjectRegistry"); - } - [Test] [Category("P1")] [Description("Window SetWindowSize")] From 8acfce95ed983aa1ae8104f097e3281ad60ae7ba Mon Sep 17 00:00:00 2001 From: Seungho Baek Date: Fri, 16 Aug 2024 21:55:59 +0900 Subject: [PATCH 049/198] [NUI.Scene3D] Add Panel in Scene3D Signed-off-by: Seungho Baek --- .../src/internal/Interop/Interop.Model.cs | 3 - .../src/internal/Interop/Interop.Panel.cs | 73 ++++ .../src/public/Controls/Model.cs | 69 ++-- .../src/public/Controls/Panel.cs | 379 ++++++++++++++++++ .../Samples/Scene3DPanelTest.cs | 138 +++++++ 5 files changed, 632 insertions(+), 30 deletions(-) create mode 100755 src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.Panel.cs create mode 100755 src/Tizen.NUI.Scene3D/src/public/Controls/Panel.cs create mode 100755 test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DPanelTest.cs diff --git a/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.Model.cs b/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.Model.cs index 9786dda336f..f336d341243 100755 --- a/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.Model.cs +++ b/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.Model.cs @@ -35,9 +35,6 @@ internal static partial class Model [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_delete_Model")] public static extern void DeleteModel(global::System.Runtime.InteropServices.HandleRef model); - [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Model_Assign")] - public static extern global::System.IntPtr ModelAssign(global::System.Runtime.InteropServices.HandleRef model, global::System.Runtime.InteropServices.HandleRef sourceModel); - [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Model_GetModelRoot")] public static extern global::System.IntPtr GetModelRoot(global::System.Runtime.InteropServices.HandleRef model); diff --git a/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.Panel.cs b/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.Panel.cs new file mode 100755 index 00000000000..f10313781b0 --- /dev/null +++ b/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.Panel.cs @@ -0,0 +1,73 @@ +/* + * Copyright(c) 2024 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ +using System; +using System.Collections.Generic; +using System.Runtime.InteropServices; +namespace Tizen.NUI.Scene3D +{ + internal static partial class Interop + { + internal static partial class Panel + { + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_New_SWIG_0")] + public static extern global::System.IntPtr PanelNew(); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_delete_Panel")] + public static extern void DeletePanel(global::System.Runtime.InteropServices.HandleRef panel); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_SetPanelResolution")] + public static extern void SetPanelResolution(global::System.Runtime.InteropServices.HandleRef panel, global::System.Runtime.InteropServices.HandleRef resolution); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_GetPanelResolution")] + public static extern global::System.IntPtr GetPanelResolution(global::System.Runtime.InteropServices.HandleRef panel); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_SetContent")] + public static extern void SetContent(global::System.Runtime.InteropServices.HandleRef panel, global::System.Runtime.InteropServices.HandleRef resolution); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_GetContent")] + public static extern global::System.IntPtr GetContent(global::System.Runtime.InteropServices.HandleRef panel); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_CastShadow")] + public static extern void CastShadow(global::System.Runtime.InteropServices.HandleRef panel, bool castShadow); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_IsShadowCasting")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool IsShadowCasting(global::System.Runtime.InteropServices.HandleRef panel); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_ReceiveShadow")] + public static extern void ReceiveShadow(global::System.Runtime.InteropServices.HandleRef panel, bool receiveShadow); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_IsShadowReceiving")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool IsShadowReceiving(global::System.Runtime.InteropServices.HandleRef panel); + + + // For Property index + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_property_TRANSPARENT_get")] + public static extern int PropertyTransparentIndexGet(); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_property_DOUBLE_SIDED_get")] + public static extern int PropertyDoubleSidedIndexGet(); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_property_USE_BACK_FACE_PLANE_get")] + public static extern int PropertyUseBackFacePlaneIndexGet(); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_Panel_property_BACK_FACE_PLANE_COLOR_get")] + public static extern int PropertyBackFacePlaneColorIndexGet(); + } + } +} diff --git a/src/Tizen.NUI.Scene3D/src/public/Controls/Model.cs b/src/Tizen.NUI.Scene3D/src/public/Controls/Model.cs index 18cbf0524ab..e5e845c42dd 100755 --- a/src/Tizen.NUI.Scene3D/src/public/Controls/Model.cs +++ b/src/Tizen.NUI.Scene3D/src/public/Controls/Model.cs @@ -128,19 +128,6 @@ public Model(Model model) : this(Interop.Model.NewModel(Model.getCPtr(model)), t this.PositionUsesPivotPoint = model.PositionUsesPivotPoint; } - /// - /// Assignment operator. - /// - /// Source object to be assigned. - /// Reference to this. - internal Model Assign(Model model) - { - Model ret = new Model(Interop.Model.ModelAssign(SwigCPtr, Model.getCPtr(model)), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - ret.PositionUsesPivotPoint = model.PositionUsesPivotPoint; - return ret; - } - /// /// Get The original pivot point of the model /// @@ -188,6 +175,44 @@ public ModelNode ModelRoot } } + /// + /// Whether this Model casts shadow or not by directional light. + /// If it is true, this Model is drawn on Shadow Map. + /// Default value is true. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public bool ShadowCast + { + get + { + return IsShadowCasting(); + } + set + { + CastShadow(value); + } + } + + /// + /// Whether this Model receives shadow or not by directional light. + /// If it is true, shadows are drawn on this Model. + /// Default value is true. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public bool ShadowReceive + { + get + { + return IsShadowReceiving(); + } + set + { + ReceiveShadow(value); + } + } + /// /// Adds modelNode to this Model. /// @@ -601,9 +626,7 @@ public void SetMotionData(MotionData motionData) /// However, same property of each child ModelNode can be changed respectively and it not changes parent's property. ///
/// Whether this Model casts shadow or not. - // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) - [EditorBrowsable(EditorBrowsableState.Never)] - public void CastShadow(bool castShadow) + private void CastShadow(bool castShadow) { Interop.Model.CastShadow(SwigCPtr, castShadow); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); @@ -614,9 +637,7 @@ public void CastShadow(bool castShadow) /// Note: IBL does not cast any shadow. ///
/// True if this model casts shadow. - // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsShadowCasting() + private bool IsShadowCasting() { var isShadowCasting = Interop.Model.IsShadowCasting(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); @@ -630,9 +651,7 @@ public bool IsShadowCasting() /// However, same property of each child ModelNode can be changed respectively and it not changes parent's property. ///
/// Whether this Model receives shadow or not. - // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) - [EditorBrowsable(EditorBrowsableState.Never)] - public void ReceiveShadow(bool receiveShadow) + private void ReceiveShadow(bool receiveShadow) { Interop.Model.ReceiveShadow(SwigCPtr, receiveShadow); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); @@ -643,9 +662,7 @@ public void ReceiveShadow(bool receiveShadow) /// If it is true, this model is drawn on Shadow Map. ///
/// True if this model receives shadow. - // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsShadowReceiving() + private bool IsShadowReceiving() { var isShadowReceiving = Interop.Model.IsShadowReceiving(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); @@ -656,8 +673,6 @@ public bool IsShadowReceiving() /// Retrieves model root Actor. ///
/// Root View of the model. - // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) - [EditorBrowsable(EditorBrowsableState.Never)] private ModelNode GetModelRoot() { global::System.IntPtr cPtr = Interop.Model.GetModelRoot(SwigCPtr); diff --git a/src/Tizen.NUI.Scene3D/src/public/Controls/Panel.cs b/src/Tizen.NUI.Scene3D/src/public/Controls/Panel.cs new file mode 100755 index 00000000000..36059df181a --- /dev/null +++ b/src/Tizen.NUI.Scene3D/src/public/Controls/Panel.cs @@ -0,0 +1,379 @@ +/* + * Copyright(c) 2024 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +using System; +using System.Collections.Generic; +using System.Runtime.InteropServices; +using System.ComponentModel; +using Tizen.NUI; +using Tizen.NUI.Binding; +using Tizen.NUI.BaseComponents; + +namespace Tizen.NUI.Scene3D +{ + /// + /// Panel is a control to show 2D UI on 3D Scene. + /// 2D UI contents set on this Panel are rendered on a screen panel that is placed on 3D scene. + /// Each Panel has a single plane with defined resolution. + /// The plane is always placed at center to fit within the boundaries of the panel while maintaining the aspect ratio of the resolution. + /// + /// + /// + /// 2D UI Content can be added on Panel, but the result that another 3D SceneView is added on Panel is not guaranteed. + /// + /// + /// + /// + /// View contentRoot = CreateUIContent(); // Create 2D UI Scene + /// Panel panel = new Panel() + /// { + /// Size = new Size(width, height), + /// }; + /// panel.PanelResolution = new Vector2(resolutionWidth, resolutionHeight)); + /// panel.Content = contentRoot; + /// + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public partial class Panel : View + { + internal Panel(global::System.IntPtr cPtr, bool cMemoryOwn) : this(cPtr, cMemoryOwn, cMemoryOwn) + { + } + + internal Panel(global::System.IntPtr cPtr, bool cMemoryOwn, bool cRegister) : base(cPtr, cMemoryOwn, true, cRegister) + { + } + + /// + /// Create an initialized Panel. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public Panel() : this(Interop.Panel.PanelNew(), true) + { + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + this.PositionUsesPivotPoint = true; + } + + /// + /// Resolution of the Panel. + /// The resolution is independent from the Panel size property. + /// The resolution defines a plane that the 2D UI scene will be rendered. + /// And the shape of the panel plane is defined by aspect ratio of the input resolution. + /// The plane is cleared by white color. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public Vector2 PanelResolution + { + get + { + return GetPanelResolution(); + } + set + { + SetPanelResolution(value); + } + } + + /// + /// Root View of 2D UI content. + /// The content is rendered on the plane of the Panel by using off screen rendering. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public View Content + { + get + { + return GetContent(); + } + set + { + SetContent(value); + } + } + + /// + /// Whether Transparent background is used or not. Default value is false + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public bool Transparent + { + get + { + bool transparent = false; + using var pValue = GetProperty(Interop.Panel.PropertyTransparentIndexGet()); + pValue?.Get(out transparent); + pValue?.Dispose(); + return transparent; + } + set + { + using var transparent = new Tizen.NUI.PropertyValue(value); + SetProperty(Interop.Panel.PropertyTransparentIndexGet(), transparent); + transparent.Dispose(); + } + } + + /// + /// Whether the content is rendered as double sided or not. + /// Default value is false. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public bool DoubleSided + { + get + { + bool doubleSided = false; + using var pValue = GetProperty(Interop.Panel.PropertyDoubleSidedIndexGet()); + pValue?.Get(out doubleSided); + pValue?.Dispose(); + return doubleSided; + } + set + { + using var doubleSided = new Tizen.NUI.PropertyValue(value); + SetProperty(Interop.Panel.PropertyDoubleSidedIndexGet(), doubleSided); + doubleSided.Dispose(); + } + } + + /// + /// Whether to use back face plane or not. + /// If this property is true, an opaque plane will be displayed when viewed from behind the Panel. + /// Default value is true. + /// Default back face plane color is white. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public bool UsingBackFacePlane + { + get + { + bool isUsingBackFacePlane = true; + using var pValue = GetProperty(Interop.Panel.PropertyUseBackFacePlaneIndexGet()); + pValue?.Get(out isUsingBackFacePlane); + pValue?.Dispose(); + return isUsingBackFacePlane; + } + set + { + using var isUsingBackFacePlane = new Tizen.NUI.PropertyValue(value); + SetProperty(Interop.Panel.PropertyUseBackFacePlaneIndexGet(), isUsingBackFacePlane); + isUsingBackFacePlane.Dispose(); + } + } + + /// + /// Color of back face plane. + /// Default color is white. + /// + /// + /// Because back face plane is always opaque, alpha channel is ignored. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public Color BackFacePlaneColor + { + get + { + Vector3 backFacePlaneColorVector3 = new Vector3(1.0f, 1.0f, 1.0f); + using var pValue = GetProperty(Interop.Panel.PropertyBackFacePlaneColorIndexGet()); + pValue?.Get(backFacePlaneColorVector3); + pValue?.Dispose(); + Color backFacePlaneColor = new Vector4(backFacePlaneColorVector3); + backFacePlaneColor.A = 1.0f; + return backFacePlaneColor; + } + set + { + Vector3 backFacePlaneColorVector3 = new Vector3(value.R, value.G, value.B); + using var backFacePlaneColor = new Tizen.NUI.PropertyValue(backFacePlaneColorVector3); + SetProperty(Interop.Panel.PropertyBackFacePlaneColorIndexGet(), backFacePlaneColor); + backFacePlaneColor.Dispose(); + } + } + + /// + /// Whether this Panel casts shadow or not by directional light. + /// If it is true, this panel is drawn on Shadow Map. + /// Default value is true. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public bool ShadowCast + { + get + { + return IsShadowCasting(); + } + set + { + CastShadow(value); + } + } + + /// + /// Whether this Panel receives shadow or not by directional light. + /// If it is true, shadows are drawn on this panel. + /// Default value is true. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public bool ShadowReceive + { + get + { + return IsShadowReceiving(); + } + set + { + ReceiveShadow(value); + } + } + + /// + /// Sets whether this Panel casts shadow or not. + /// If it is true, this panels is drawn on Shadow Map. + /// + /// Whether this Panel casts shadow or not. + private void CastShadow(bool castShadow) + { + Interop.Panel.CastShadow(SwigCPtr, castShadow); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + /// + /// Retrieves whether the Panel casts shadow or not for Light. + /// Note: IBL does not cast any shadow. + /// + /// True if this model casts shadow. + private bool IsShadowCasting() + { + var isShadowCasting = Interop.Panel.IsShadowCasting(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return isShadowCasting; + } + + /// + /// Sets whether this Panel receives shadow or not. + /// If it is true, shadows are drawn on this panel. + /// + /// Whether this Panel receives shadow or not. + private void ReceiveShadow(bool receiveShadow) + { + Interop.Panel.ReceiveShadow(SwigCPtr, receiveShadow); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + /// + /// Retrieves whether the Panel receives shadow or not for Light + /// If it is true, this model is drawn on Shadow Map. + /// + /// True if this model receives shadow. + private bool IsShadowReceiving() + { + var isShadowReceiving = Interop.Panel.IsShadowReceiving(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return isShadowReceiving; + } + + /// + /// Sets defined resolution to the Panel. + /// The resolution is independent from the Panel size property. + /// The resolution defines a plane that the 2D UI scene will be rendered. + /// And the shape of the panel plane is defined by aspect ratio of the input resolution. + /// + /// The resolution defines panel plane. + /// True if this model receives shadow. + private void SetPanelResolution(Vector2 resolution) + { + Interop.Panel.SetPanelResolution(SwigCPtr, Vector2.getCPtr(resolution)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + /// + /// Retrieves panel resolution. + /// + /// Resolution of the panel plane. + private Vector2 GetPanelResolution() + { + Vector2 resolution = new Vector2(Interop.Panel.GetPanelResolution(SwigCPtr), true); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return resolution; + } + + /// + /// Sets root Actor of 2D UI content. + /// The content is rendered on the plane of the Panel by using off screen rendering. + /// + /// Root View of 2D UI content. + private void SetContent(View content) + { + Interop.Panel.SetContent(SwigCPtr, content.SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + + /// + /// Retrieves root View of 2D UI content. + /// + /// Root View of 2D UI content. + private View GetContent() + { + IntPtr cPtr = Interop.Panel.GetContent(SwigCPtr); + View ret = Registry.GetManagedBaseHandleFromNativePtr(cPtr) as View; + if (ret != null) + { + NUI.Interop.BaseHandle.DeleteBaseHandle(new HandleRef(this, cPtr)); + } + else + { + ret = new View(cPtr, true); + } + NDalicPINVOKE.ThrowExceptionIfExists(); + return ret; + } + + /// + /// To make transitionSet instance be disposed. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + protected override void Dispose(DisposeTypes type) + { + if (disposed) + { + return; + } + base.Dispose(type); + } + + /// + /// Release swigCPtr. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + protected override void ReleaseSwigCPtr(global::System.Runtime.InteropServices.HandleRef swigCPtr) + { + Interop.Panel.DeletePanel(swigCPtr); + } + } +} diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DPanelTest.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DPanelTest.cs new file mode 100755 index 00000000000..ce7bb8b5806 --- /dev/null +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DPanelTest.cs @@ -0,0 +1,138 @@ +using System.Numerics; +using System.Reflection.Metadata.Ecma335; +using global::System; +using Tizen.NUI; +using Tizen.NUI.BaseComponents; +using Tizen.NUI.Scene3D; + +namespace Tizen.NUI.Samples +{ + using log = Tizen.Log; + public class Scene3DPanelTest : IExample + { + private Window window; + private SceneView sceneView; + private static readonly string resourcePath = Tizen.Applications.Application.Current.DirectoryInfo.Resource; + private Color[] backFaceColors; + private int colorIndex; + private Animation animation; + private Panel panel; + private TextLabel guideText; + public void Activate() + { + window = NUIApplication.GetDefaultWindow(); + window.BackgroundColor = Color.White; + Size2D windowSize = window.Size; + + backFaceColors = new Color[3]; + backFaceColors[0] = Color.Red; + backFaceColors[1] = Color.Green; + backFaceColors[2] = Color.Blue; + + colorIndex = 0; + + sceneView = new SceneView() + { + Size = new Size(windowSize.Width, windowSize.Height), + PivotPoint = PivotPoint.Center, + ParentOrigin = ParentOrigin.Center, + PositionUsesPivotPoint = true, + BackgroundColor = Color.Beige, + UseFramebuffer = true, + }; + window.Add(sceneView); + + View parent = new View() + { + BackgroundColor = Color.Blue, + PivotPoint = PivotPoint.Center, + ParentOrigin = ParentOrigin.Center, + PositionUsesPivotPoint = true, + Size = new Size(100, 100), + }; + + View child = new View() + { + BackgroundColor = Color.Red, + PivotPoint = PivotPoint.Center, + ParentOrigin = ParentOrigin.Center, + PositionUsesPivotPoint = true, + Size = new Size(100, 100), + Position = new Position(25, 100), + }; + parent.Add(child); + + panel = new Panel() + { + Position = new Position(0.0f, 0.0f, 0.5f), + Size = new Size(2.0f, 1.0f), + PanelResolution = new Vector2(400, 500), + Content = parent, + BackFacePlaneColor = backFaceColors[colorIndex], + }; + sceneView.Add(panel); + + SetGuide(); + + animation = new Animation(15000); + animation.AnimateTo(panel, "orientation", new Rotation(new Radian(new Degree(180.0f)), Vector3.YAxis)); + animation.AnimateTo(panel, "size", new Vector3(1.0f, 2.0f, 0.0f)); + animation.Looping = true; + animation.LoopingMode = Animation.LoopingModes.AutoReverse; + animation.Play(); + + window.KeyEvent += WindowKeyEvent; + } + + void SetGuide() + { + if(guideText == null) + { + guideText = new TextLabel() + { + PositionUsesPivotPoint = true, + PivotPoint = PivotPoint.BottomLeft, + ParentOrigin = ParentOrigin.BottomLeft, + PointSize = 30.0f, + MultiLine = true, + }; + } + window.Add(guideText); + + string backFaceColor = string.Format($"({panel.BackFacePlaneColor.R}, {panel.BackFacePlaneColor.G}, {panel.BackFacePlaneColor.B})"); + string guide = string.Format($"Press 1 to convert transparency - Current value : {panel.Transparent}\nPress 2 to convert double sided - Current value : {panel.DoubleSided}\nPress 3 to convert back face - Current value : {panel.UsingBackFacePlane}\nPress 4 to convert back face color - Current value : {backFaceColor}\n"); + guideText.Text = guide; + } + + private void WindowKeyEvent(object sender, Window.KeyEventArgs e) + { + if (e.Key.State == Key.StateType.Down) + { + if (e.Key.KeyPressedName == "1") + { + panel.Transparent = !panel.Transparent; + } + else if (e.Key.KeyPressedName == "2") + { + panel.DoubleSided = !panel.DoubleSided; + } + else if (e.Key.KeyPressedName == "3") + { + panel.UsingBackFacePlane = !panel.UsingBackFacePlane; + } + else if (e.Key.KeyPressedName == "4") + { + colorIndex = ((colorIndex + 1) % 3); + panel.BackFacePlaneColor = backFaceColors[colorIndex]; + } + SetGuide(); + } + } + + public void Deactivate() + { + window.KeyEvent -= WindowKeyEvent; + sceneView?.DisposeRecursively(); + } + } +} From 1b4dddc7778c033123d623133f0fd5c55e215c0e Mon Sep 17 00:00:00 2001 From: Jiyun Yang Date: Mon, 19 Aug 2024 19:01:29 +0900 Subject: [PATCH 050/198] [NUI] Fix lottie dynamic property crash NUI should not dispose the return value of dynamic property callback. Signed-off-by: Jiyun Yang --- src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs index 21500212449..76a2a2dab87 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs @@ -1460,7 +1460,6 @@ static internal void RootCallback(int id, int returnType, uint frameNumber, ref //do nothing break; } - ret?.Dispose(); } internal void FlushLottieMessages() From 3b2b99633df1d5a14b3ea11d346f931dc52e24e7 Mon Sep 17 00:00:00 2001 From: Jiyun Yang Date: Wed, 21 Aug 2024 13:40:42 +0900 Subject: [PATCH 051/198] [NUI] Version Update (22337) Signed-off-by: Jiyun Yang --- packaging/csapi-tizenfx.spec | 2 +- packaging/version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/csapi-tizenfx.spec b/packaging/csapi-tizenfx.spec index 0459d29dd69..14583bb0204 100644 --- a/packaging/csapi-tizenfx.spec +++ b/packaging/csapi-tizenfx.spec @@ -1,7 +1,7 @@ # Auto-generated from csapi-tizenfx.spec.in by makespec.sh %define TIZEN_NET_API_VERSION 12 -%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22336 +%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22337 %define TIZEN_NET_NUGET_VERSION 12.0.0.99999 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework diff --git a/packaging/version.txt b/packaging/version.txt index 874b625ffe1..9a29610e966 100755 --- a/packaging/version.txt +++ b/packaging/version.txt @@ -6,4 +6,4 @@ RPM_VERSION=12.0.0.999 NUGET_VERSION=12.0.0.99999 # RPM Version Suffix -RPM_VERSION_SUFFIX=nui22336 +RPM_VERSION_SUFFIX=nui22337 From 4b76c14bce8a67743198fd86dbd08dceca9cbb42 Mon Sep 17 00:00:00 2001 From: "joogab.yun" Date: Thu, 22 Aug 2024 11:16:22 +0900 Subject: [PATCH 052/198] [NUI] Add RelativeMotionGrab and RelativeMotionUnGrab --- .../src/internal/Interop/Interop.Window.cs | 8 +++ src/Tizen.NUI/src/public/Window/Window.cs | 62 +++++++++++++++++++ 2 files changed, 70 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs b/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs index af549db0302..ffd7ce6f88f 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs @@ -384,6 +384,14 @@ internal static partial class Window [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_IsAlwaysOnTop")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] public static extern bool IsAlwaysOnTop(global::System.Runtime.InteropServices.HandleRef window); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_RelativeMotionGrab")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool RelativeMotionGrab(global::System.Runtime.InteropServices.HandleRef window, uint boundary); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_RelativeMotionUnGrab")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool RelativeMotionUnGrab(global::System.Runtime.InteropServices.HandleRef window); } } } diff --git a/src/Tizen.NUI/src/public/Window/Window.cs b/src/Tizen.NUI/src/public/Window/Window.cs index 4dce26fc600..1567a5ccc74 100755 --- a/src/Tizen.NUI/src/public/Window/Window.cs +++ b/src/Tizen.NUI/src/public/Window/Window.cs @@ -416,6 +416,44 @@ public enum ResizeDirection BottomRight = 8, } + /// + /// The Pointer edge boundary for grab. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public enum PointerBoundary + { + /// + /// Default value + /// + [EditorBrowsable(EditorBrowsableState.Never)] + None = 0, + + /// + /// Top + /// + [EditorBrowsable(EditorBrowsableState.Never)] + Top = 1, + + /// + /// Right + /// + [EditorBrowsable(EditorBrowsableState.Never)] + Right = 2, + + /// + /// Bottom + /// + [EditorBrowsable(EditorBrowsableState.Never)] + Bottom = 3, + + /// + /// Left + /// + [EditorBrowsable(EditorBrowsableState.Never)] + Left = 4, + + } + /// /// The stage instance property (read-only).
/// Gets the current window.
@@ -2549,6 +2587,30 @@ public bool IsAlwaysOnTop } } + /// + /// Requests relative motion grab + /// + /// True if RelativeMotionGrab succeeds. + [EditorBrowsable(EditorBrowsableState.Never)] + public bool RelativeMotionGrab(PointerBoundary boundary) + { + bool ret = Interop.Window.RelativeMotionGrab(SwigCPtr, (uint)boundary); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + /// + /// Requests relative motion ungrab + /// + /// True if RelativeMotionGrab succeeds. + [EditorBrowsable(EditorBrowsableState.Never)] + public bool RelativeMotionUnGrab() + { + bool ret = Interop.Window.RelativeMotionUnGrab(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + IntPtr IWindowProvider.WindowHandle => GetNativeWindowHandler(); float IWindowProvider.X => WindowPosition.X; float IWindowProvider.Y => WindowPosition.Y; From 1fc465988c002f97b7d32a03b33cbd50c67155a2 Mon Sep 17 00:00:00 2001 From: "joogab.yun" Date: Mon, 19 Aug 2024 09:04:57 +0900 Subject: [PATCH 053/198] [NUI] Added trim paths props --- .../BaseComponents/LottieAnimationView.cs | 16 +++++- .../LottieAnimationViewDynamicPropertyTest.cs | 56 ++++++++++++++++++- .../Tizen.NUI.Samples/res/100.json | 1 + .../Tizen.NUI.Samples/res/30.json | 1 + 4 files changed, 70 insertions(+), 4 deletions(-) create mode 100644 test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/100.json create mode 100644 test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/30.json diff --git a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs index 76a2a2dab87..62779ba4006 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs @@ -1306,7 +1306,19 @@ public enum VectorProperty /// Transform opacity of the Layer and Group object, Type of float ///
[EditorBrowsable(EditorBrowsableState.Never)] - TransformOpacity + TransformOpacity, + + /// + /// Trim Start property of Shape object, Type of float, Value range of [0..100] + /// + [EditorBrowsable(EditorBrowsableState.Never)] + TrimStart, + + /// + /// Trim End property of Shape object, Type of float, Type of , Value range of [0..100] + /// + [EditorBrowsable(EditorBrowsableState.Never)] + TrimEnd }; // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) @@ -1437,6 +1449,7 @@ static internal void RootCallback(int id, int returnType, uint frameNumber, ref case (int)(VectorProperty.TransformAnchor): case (int)(VectorProperty.TransformPosition): case (int)(VectorProperty.TransformScale): + case (int)(VectorProperty.TrimEnd): Vector2 tmpVector2 = new Vector2(-1, -1); if ((ret != null) && ret.Get(tmpVector2)) { @@ -1450,6 +1463,7 @@ static internal void RootCallback(int id, int returnType, uint frameNumber, ref case (int)(VectorProperty.StrokeWidth): case (int)(VectorProperty.TransformRotation): case (int)(VectorProperty.TransformOpacity): + case (int)(VectorProperty.TrimStart): float tmpFloat = -1; if ((ret != null) && ret.Get(out tmpFloat)) { diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/LottieAnimationViewDynamicPropertyTest.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/LottieAnimationViewDynamicPropertyTest.cs index d3da7c2e4f3..5571eb4ef85 100644 --- a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/LottieAnimationViewDynamicPropertyTest.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/LottieAnimationViewDynamicPropertyTest.cs @@ -39,9 +39,9 @@ public void Activate() bool OnTick(object sender, Timer.TickEventArgs e) { bool ret = false; - //ret = Test1(); + ret = Test1(); //ret = Test2(); - ret = Test3(); + // ret = Test3(); return ret; } @@ -132,7 +132,7 @@ void ForceFullGC() void MakeAll() { tlog.Debug(tag, $"MakeAll() start"); - int width = (int)(root.Size.Width / NUM_OF_VIEW); + int width = (int)(root.Size.Width / (NUM_OF_VIEW + 2)); for (int i = 0; i < NUM_OF_VIEW; i++) { var lav = new LottieAnimationView(); @@ -179,6 +179,42 @@ void MakeAll() } lav.Play(); } + + { + var lav = new LottieAnimationView(); + lav.Size2D = new Size2D(width, width); + lav.URL = Tizen.Applications.Application.Current.DirectoryInfo.Resource + "30.json"; + lav.LoopCount = -1; + lav.BackgroundColor = Color.Black; + root.Add(lav); + lav.Play(); + } + { + var lav = new LottieAnimationView(); + lav.Size2D = new Size2D(width, width); + lav.URL = Tizen.Applications.Application.Current.DirectoryInfo.Resource + "100.json"; + lav.LoopCount = -1; + lav.BackgroundColor = Color.Black; + root.Add(lav); + + LottieAnimationViewDynamicProperty pro = new LottieAnimationViewDynamicProperty + { + // KeyPath = "**", + KeyPath = "Shape Layer 1.Trim Paths 1", + Property = LottieAnimationView.VectorProperty.TrimEnd, + Callback = new Tizen.NUI.BaseComponents.LottieAnimationView.DynamicPropertyCallbackType(OnTrimEnd), + }; + lav.DoActionExtension(pro); + LottieAnimationViewDynamicProperty pro1 = new LottieAnimationViewDynamicProperty + { + // KeyPath = "**", + KeyPath = "Shape Layer 1.Trim Paths 1", + Property = LottieAnimationView.VectorProperty.TrimStart, + Callback = new Tizen.NUI.BaseComponents.LottieAnimationView.DynamicPropertyCallbackType(OnTrimStart), + }; + lav.DoActionExtension(pro1); + lav.Play(); + } tlog.Debug(tag, $"MakeAll() end"); } @@ -260,6 +296,20 @@ private PropertyValue OnTransformRotation(int returnType, uint frameNumber) return new PropertyValue(frameNumber * 20.0f); } + private PropertyValue OnTrimEnd(int returnType, uint frameNumber) + { + tlog.Debug(tag, $"OnTrimEnd() returnType={returnType} frameNumber={frameNumber}"); + + return new PropertyValue(new Vector2(0.0f, 30.0f)); + } + + private PropertyValue OnTrimStart(int returnType, uint frameNumber) + { + tlog.Debug(tag, $"OnTrimStart() returnType={returnType} frameNumber={frameNumber}"); + + return new PropertyValue(0.0f); + } + public void Deactivate() { root.Unparent(); diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/100.json b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/100.json new file mode 100644 index 00000000000..bf92e21a2dd --- /dev/null +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/100.json @@ -0,0 +1 @@ +{"v":"5.8.1","fr":60,"ip":0,"op":61,"w":1920,"h":1080,"nm":"100","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,540,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[640,640],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":64,"ix":5},"lc":2,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,2],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.33],"y":[0]},"t":0,"s":[0]},{"t":30,"s":[100]}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":6000,"st":0,"bm":0}],"markers":[]} \ No newline at end of file diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/30.json b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/30.json new file mode 100644 index 00000000000..64ade6a83ee --- /dev/null +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/res/30.json @@ -0,0 +1 @@ +{"v":"5.8.1","fr":60,"ip":0,"op":61,"w":1920,"h":1080,"nm":"30","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,540,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[640,640],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":64,"ix":5},"lc":2,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,2],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.33],"y":[0]},"t":0,"s":[0]},{"t":30,"s":[30]}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":6000,"st":0,"bm":0}],"markers":[]} \ No newline at end of file From 04d50d28e5f986de6ad916513f2d897f8029aa1a Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Tue, 13 Aug 2024 20:43:01 +0900 Subject: [PATCH 054/198] [NUI] Deprecate Scrollable and ScrollViewEffect classes --- .../src/public/BaseComponents/Scrollable.cs | 30 +++ .../src/public/Utility/ScrollViewEffect.cs | 4 + .../Components}/CubeTransitionEffect.cs | 43 ++--- .../Tizen.NUI.Samples/Components}/ItemView.cs | 17 +- .../Components}/ItemViewBindableProperty.cs | 50 ++--- .../Components}/ScrollView.cs | 173 +++++++++--------- .../Components}/ScrollViewBindableProperty.cs | 75 ++++---- .../Components}/ScrollViewEvent.cs | 29 +-- .../Components}/ScrollViewPagePathEffect.cs | 14 +- .../ScrollViewSnapStartedSignal.cs | 31 ++-- .../Tizen.NUI.Samples/Components}/SnapType.cs | 2 +- .../Interop/Interop.CubeTransitionEffect.cs | 2 +- .../Interop/Interop.ItemView.cs | 2 +- .../Interop/NDalicPINVOKE.cs | 4 +- .../Tizen.NUI.Samples/NuiSample.snk | Bin 0 -> 596 bytes .../Tizen.NUI.Samples.csproj | 5 +- .../Tizen.NUI.Samples/tizen-manifest.xml | 2 +- 17 files changed, 267 insertions(+), 216 deletions(-) rename {src/Tizen.NUI/src/public/Utility => test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components}/CubeTransitionEffect.cs (90%) rename {src/Tizen.NUI/src/internal/Utility => test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components}/ItemView.cs (98%) rename {src/Tizen.NUI/src/internal/Utility => test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components}/ItemViewBindableProperty.cs (85%) rename {src/Tizen.NUI/src/public/Utility => test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components}/ScrollView.cs (86%) rename {src/Tizen.NUI/src/public/Utility => test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components}/ScrollViewBindableProperty.cs (66%) rename {src/Tizen.NUI/src/public/Utility => test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components}/ScrollViewEvent.cs (87%) rename {src/Tizen.NUI/src/public/Utility => test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components}/ScrollViewPagePathEffect.cs (84%) rename {src/Tizen.NUI/src/internal/Common => test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components}/ScrollViewSnapStartedSignal.cs (56%) rename {src/Tizen.NUI/src/internal/Common => test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components}/SnapType.cs (96%) rename {src/Tizen.NUI/src/internal => test/Tizen.NUI.Samples/Tizen.NUI.Samples}/Interop/Interop.CubeTransitionEffect.cs (99%) rename {src/Tizen.NUI/src/internal => test/Tizen.NUI.Samples/Tizen.NUI.Samples}/Interop/Interop.ItemView.cs (99%) create mode 100644 test/Tizen.NUI.Samples/Tizen.NUI.Samples/NuiSample.snk diff --git a/src/Tizen.NUI/src/public/BaseComponents/Scrollable.cs b/src/Tizen.NUI/src/public/BaseComponents/Scrollable.cs index 26156b44bfc..046cd90f995 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/Scrollable.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/Scrollable.cs @@ -27,6 +27,7 @@ namespace Tizen.NUI.BaseComponents /// (via touch) or automatically. ///
/// 3 + [Obsolete("This has been deprecated in API12")] public class Scrollable : View { static Scrollable() @@ -58,6 +59,7 @@ static Scrollable() /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] public static readonly BindableProperty OvershootEffectColorProperty = null; internal static void SetInternalOvershootEffectColorProperty(BindableObject bindable, object oldValue, object newValue) @@ -79,6 +81,7 @@ internal static object GetInternalOvershootEffectColorProperty(BindableObject bi /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] public static readonly BindableProperty OvershootAnimationSpeedProperty = null; internal static void SetInternalOvershootAnimationSpeedProperty(BindableObject bindable, object oldValue, object newValue) @@ -100,6 +103,7 @@ internal static object GetInternalOvershootAnimationSpeedProperty(BindableObject /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] public static readonly BindableProperty OvershootEnabledProperty = null; internal static void SetInternalOvershootEnabledProperty(BindableObject bindable, object oldValue, object newValue) @@ -121,6 +125,7 @@ internal static object GetInternalOvershootEnabledProperty(BindableObject bindab /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] public static readonly BindableProperty OvershootSizeProperty = null; internal static void SetInternalOvershootSizeProperty(BindableObject bindable, object oldValue, object newValue) @@ -142,6 +147,7 @@ internal static object GetInternalOvershootSizeProperty(BindableObject bindable) /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] public static readonly BindableProperty ScrollToAlphaFunctionProperty = null; internal static void SetInternalScrollToAlphaFunctionProperty(BindableObject bindable, object oldValue, object newValue) @@ -163,6 +169,7 @@ internal static object GetInternalScrollToAlphaFunctionProperty(BindableObject b /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] public static readonly BindableProperty ScrollRelativePositionProperty = null; internal static void SetInternalScrollRelativePositionProperty(BindableObject bindable, object oldValue, object newValue) @@ -184,6 +191,7 @@ internal static object GetInternalScrollRelativePositionProperty(BindableObject /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] public static readonly BindableProperty ScrollPositionMinProperty = null; internal static void SetInternalScrollPositionMinProperty(BindableObject bindable, object oldValue, object newValue) @@ -205,6 +213,7 @@ internal static object GetInternalScrollPositionMinProperty(BindableObject binda /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] public static readonly BindableProperty ScrollPositionMaxProperty = null; internal static void SetInternalScrollPositionMaxProperty(BindableObject bindable, object oldValue, object newValue) @@ -226,6 +235,7 @@ internal static object GetInternalScrollPositionMaxProperty(BindableObject binda /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] public static readonly BindableProperty CanScrollVerticalProperty = null; internal static void SetInternalCanScrollVerticalProperty(BindableObject bindable, object oldValue, object newValue) @@ -247,6 +257,7 @@ internal static object GetInternalCanScrollVerticalProperty(BindableObject binda /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] public static readonly BindableProperty CanScrollHorizontalProperty = null; internal static void SetInternalCanScrollHorizontalProperty(BindableObject bindable, object oldValue, object newValue) @@ -277,6 +288,7 @@ internal static object GetInternalCanScrollHorizontalProperty(BindableObject bin /// Create an instance of scrollable. ///
/// 3 + [Obsolete("This has been deprecated in API12")] public Scrollable() : this(Interop.Scrollable.NewScrollable(), true) { if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); @@ -299,6 +311,7 @@ internal Scrollable(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cM /// The ScrollStarted event emitted when the Scrollable has moved (whether by touch or animation). ///
/// 3 + [Obsolete("This has been deprecated in API12")] public event DaliEventHandler ScrollStarted { add @@ -328,6 +341,7 @@ public event DaliEventHandler ScrollStarted /// The ScrollUpdated event emitted when the Scrollable has moved (whether by touch or animation). ///
/// 3 + [Obsolete("This has been deprecated in API12")] public event DaliEventHandler ScrollUpdated { add @@ -358,6 +372,7 @@ public event DaliEventHandler ScrollUpdated /// (whether by touch or animation). ///
/// 3 + [Obsolete("This has been deprecated in API12")] public event DaliEventHandler ScrollCompleted { add @@ -387,6 +402,7 @@ public event DaliEventHandler ScrollCompleted /// Sets and Gets the color of the overshoot effect. ///
/// 3 + [Obsolete("This has been deprecated in API12")] public Vector4 OvershootEffectColor { get @@ -418,6 +434,7 @@ public Vector4 OvershootEffectColor /// Sets and Gets the speed of overshoot animation in pixels per second. ///
/// 3 + [Obsolete("This has been deprecated in API12")] public float OvershootAnimationSpeed { get @@ -449,6 +466,7 @@ public float OvershootAnimationSpeed /// Checks if scroll overshoot has been enabled or not. ///
/// 3 + [Obsolete("This has been deprecated in API12")] public bool OvershootEnabled { get @@ -480,6 +498,7 @@ public bool OvershootEnabled /// Gets and Sets OvershootSize property. ///
/// 3 + [Obsolete("This has been deprecated in API12")] public Vector2 OvershootSize { get @@ -511,6 +530,7 @@ public Vector2 OvershootSize /// Gets and Sets ScrollToAlphaFunction property. ///
/// 3 + [Obsolete("This has been deprecated in API12")] public int ScrollToAlphaFunction { get @@ -542,6 +562,7 @@ public int ScrollToAlphaFunction /// Gets and Sets ScrollRelativePosition property. ///
/// 3 + [Obsolete("This has been deprecated in API12")] public Vector2 ScrollRelativePosition { get @@ -573,6 +594,7 @@ public Vector2 ScrollRelativePosition /// Gets and Sets ScrollPositionMin property. ///
/// 3 + [Obsolete("This has been deprecated in API12")] public Vector2 ScrollPositionMin { get @@ -604,6 +626,7 @@ public Vector2 ScrollPositionMin /// Gets and Sets ScrollPositionMax property. ///
/// 3 + [Obsolete("This has been deprecated in API12")] public Vector2 ScrollPositionMax { get @@ -635,6 +658,7 @@ public Vector2 ScrollPositionMax /// Gets and Sets CanScrollVertical property. /// /// 3 + [Obsolete("This has been deprecated in API12")] public bool CanScrollVertical { get @@ -666,6 +690,7 @@ public bool CanScrollVertical /// Gets and Sets CanScrollHorizontal property. /// /// 3 + [Obsolete("This has been deprecated in API12")] public bool CanScrollHorizontal { get @@ -719,6 +744,7 @@ internal ScrollableSignal ScrollCompletedSignal() /// /// DisposeTypes /// 3 + [Obsolete("This has been deprecated in API12")] protected override void Dispose(DisposeTypes type) { if (disposed) @@ -739,6 +765,7 @@ protected override void Dispose(DisposeTypes type) /// This will not be public opened. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) { Interop.Scrollable.DeleteScrollable(swigCPtr); @@ -853,6 +880,7 @@ private float GetOvershootAnimationSpeed() /// The scroll animation started event arguments. /// /// 3 + [Obsolete("This has been deprecated in API12")] public class StartedEventArgs : EventArgs { private Vector2 vector2; @@ -878,6 +906,7 @@ public Vector2 Vector2 /// The scrollable updated event arguments. /// /// 3 + [Obsolete("This has been deprecated in API12")] public class UpdatedEventArgs : EventArgs { private Vector2 vector2; @@ -903,6 +932,7 @@ public Vector2 Vector2 /// The scroll animation completed event arguments. /// /// 3 + [Obsolete("This has been deprecated in API12")] public class CompletedEventArgs : EventArgs { private Vector2 vector2; diff --git a/src/Tizen.NUI/src/public/Utility/ScrollViewEffect.cs b/src/Tizen.NUI/src/public/Utility/ScrollViewEffect.cs index d268a01aa3b..165b2bf9a9e 100755 --- a/src/Tizen.NUI/src/public/Utility/ScrollViewEffect.cs +++ b/src/Tizen.NUI/src/public/Utility/ScrollViewEffect.cs @@ -14,6 +14,7 @@ * limitations under the License. * */ +using System; using System.ComponentModel; namespace Tizen.NUI @@ -23,6 +24,7 @@ namespace Tizen.NUI /// ScrollView instance. /// /// 3 + [Obsolete("This has been deprecated in API12")] public class ScrollViewEffect : BaseHandle { @@ -30,6 +32,7 @@ public class ScrollViewEffect : BaseHandle /// The constructor. /// /// 3 + [Obsolete("This has been deprecated in API12")] public ScrollViewEffect() : this(Interop.ScrollView.NewScrollViewEffect(), true) { if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); @@ -41,6 +44,7 @@ internal ScrollViewEffect(global::System.IntPtr cPtr, bool cMemoryOwn) : base(In /// This will not be public opened. [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This has been deprecated in API12")] protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) { Interop.ScrollView.DeleteScrollViewEffect(swigCPtr); diff --git a/src/Tizen.NUI/src/public/Utility/CubeTransitionEffect.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/CubeTransitionEffect.cs similarity index 90% rename from src/Tizen.NUI/src/public/Utility/CubeTransitionEffect.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/CubeTransitionEffect.cs index d0949ac404a..00d8b356939 100755 --- a/src/Tizen.NUI/src/public/Utility/CubeTransitionEffect.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/CubeTransitionEffect.cs @@ -15,12 +15,13 @@ * */ -using System; -using System.Runtime.InteropServices; +using global::System; +using global::System.Runtime.InteropServices; using Tizen.NUI.BaseComponents; -using System.ComponentModel; +using global::System.ComponentModel; +using Tizen.NUI; -namespace Tizen.NUI +namespace Tizen.NUI.Samples { /// /// Cube Transition Effect base class, used to apply custom effects to a @@ -46,7 +47,7 @@ public CubeTransitionEffect() : this(Interop.CubeTransitionEffect.NewCubeTransit if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - internal CubeTransitionEffect(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) + internal CubeTransitionEffect(IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) { } @@ -198,7 +199,7 @@ private void OnTransitionCompleted(IntPtr cubeTransition, IntPtr cubeTexture) /// This will not be public opened. [EditorBrowsable(EditorBrowsableState.Never)] - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + protected override void ReleaseSwigCPtr(HandleRef swigCPtr) { Interop.CubeTransitionEffect.DeleteCubeTransitionEffect(swigCPtr); } @@ -246,7 +247,7 @@ public Texture CubeTransitonTexture internal class CubeTransitionEffectSignal : Disposable { - internal CubeTransitionEffectSignal(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) + internal CubeTransitionEffectSignal(IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) { } @@ -271,22 +272,22 @@ public uint GetConnectionCount() /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] - public void Connect(System.Delegate func) + public void Connect(Delegate func) { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); + IntPtr ip = Marshal.GetFunctionPointerForDelegate(func); { - Interop.CubeTransitionEffect.CubeTransitionEffectSignalConnect(SwigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); + Interop.CubeTransitionEffect.CubeTransitionEffectSignalConnect(SwigCPtr, new HandleRef(this, ip)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } } /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] - public void Disconnect(System.Delegate func) + public void Disconnect(Delegate func) { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); + IntPtr ip = Marshal.GetFunctionPointerForDelegate(func); { - Interop.CubeTransitionEffect.CubeTransitionEffectSignalDisconnect(SwigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); + Interop.CubeTransitionEffect.CubeTransitionEffectSignalDisconnect(SwigCPtr, new HandleRef(this, ip)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } } @@ -295,7 +296,7 @@ public void Disconnect(System.Delegate func) [EditorBrowsable(EditorBrowsableState.Never)] public void Emit(CubeTransitionEffect arg) { - Interop.TextField.TextFieldSignalEmit(SwigCPtr, CubeTransitionEffect.getCPtr(arg)); + Tizen.NUI.Interop.TextField.TextFieldSignalEmit(SwigCPtr, CubeTransitionEffect.getCPtr(arg)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -308,7 +309,7 @@ public CubeTransitionEffectSignal() : this(Interop.CubeTransitionEffect.NewCubeT /// This will be public opened. [EditorBrowsable(EditorBrowsableState.Never)] - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + protected override void ReleaseSwigCPtr(HandleRef swigCPtr) { Interop.CubeTransitionEffect.DeleteCubeTransitionEffectSignal(swigCPtr); } @@ -330,13 +331,13 @@ public CubeTransitionWaveEffect(uint numRows, uint numColumns) : this(Interop.Cu } - internal CubeTransitionWaveEffect(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) + internal CubeTransitionWaveEffect(IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) { } /// This will be public opened. [EditorBrowsable(EditorBrowsableState.Never)] - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + protected override void ReleaseSwigCPtr(HandleRef swigCPtr) { Interop.CubeTransitionWaveEffect.DeleteCubeTransitionWaveEffect(swigCPtr); } @@ -358,13 +359,13 @@ public CubeTransitionCrossEffect(uint numRows, uint numColumns) : this(Interop.C } - internal CubeTransitionCrossEffect(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) + internal CubeTransitionCrossEffect(IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) { } /// This will not be public opened. [EditorBrowsable(EditorBrowsableState.Never)] - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + protected override void ReleaseSwigCPtr(HandleRef swigCPtr) { Interop.CubeTransitionCrossEffect.DeleteCubeTransitionCrossEffect(swigCPtr); } @@ -386,13 +387,13 @@ public CubeTransitionFoldEffect(uint numRows, uint numColumns) : this(Interop.Cu } - internal CubeTransitionFoldEffect(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) + internal CubeTransitionFoldEffect(IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) { } /// This will not be public opened. [EditorBrowsable(EditorBrowsableState.Never)] - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + protected override void ReleaseSwigCPtr(HandleRef swigCPtr) { Interop.CubeTransitionFoldEffect.DeleteCubeTransitionFoldEffect(swigCPtr); } diff --git a/src/Tizen.NUI/src/internal/Utility/ItemView.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ItemView.cs similarity index 98% rename from src/Tizen.NUI/src/internal/Utility/ItemView.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ItemView.cs index 4226c0442cc..645b0c4e2f6 100755 --- a/src/Tizen.NUI/src/internal/Utility/ItemView.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ItemView.cs @@ -15,15 +15,18 @@ * */ -using System; -using System.Diagnostics.CodeAnalysis; -using System.Runtime.InteropServices; +using global::System; +using global::System.Diagnostics.CodeAnalysis; +using global::System.Runtime.InteropServices; +using global::System.ComponentModel; using Tizen.NUI.BaseComponents; -using System.ComponentModel; using Tizen.NUI.Binding; +using Tizen.NUI; -namespace Tizen.NUI +namespace Tizen.NUI.Samples { + using NDalicPINVOKE = Tizen.NUI.NDalicPINVOKE; + /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public partial class ItemView : Scrollable @@ -77,7 +80,7 @@ internal ItemView(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMem /// This will be public opened. [EditorBrowsable(EditorBrowsableState.Never)] - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + protected override void ReleaseSwigCPtr(HandleRef swigCPtr) { Interop.ItemView.DeleteItemView(swigCPtr); } @@ -191,7 +194,7 @@ public void RemoveLayout(uint layoutIndex) [EditorBrowsable(EditorBrowsableState.Never)] public new View GetChildAt(uint index) { - View ret = new View(Interop.ActorInternal.GetChildAt(SwigCPtr, index), true); + View ret = new View(Tizen.NUI.Interop.ActorInternal.GetChildAt(SwigCPtr, index), true); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } diff --git a/src/Tizen.NUI/src/internal/Utility/ItemViewBindableProperty.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ItemViewBindableProperty.cs similarity index 85% rename from src/Tizen.NUI/src/internal/Utility/ItemViewBindableProperty.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ItemViewBindableProperty.cs index 9694f73fdd7..1b8b0de9220 100755 --- a/src/Tizen.NUI/src/internal/Utility/ItemViewBindableProperty.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ItemViewBindableProperty.cs @@ -18,7 +18,7 @@ using System.ComponentModel; using Tizen.NUI.Binding; -namespace Tizen.NUI +namespace Tizen.NUI.Samples { public partial class ItemView { @@ -29,7 +29,7 @@ public partial class ItemView public static new BindableProperty LayoutProperty = null; internal static new void SetInternalLayoutProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalLayout = (Tizen.NUI.PropertyArray)newValue; @@ -37,7 +37,7 @@ public partial class ItemView } internal static new object GetInternalLayoutProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalLayout; } @@ -48,7 +48,7 @@ public partial class ItemView public static BindableProperty MinimumSwipeSpeedProperty = null; internal static void SetInternalMinimumSwipeSpeedProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalMinimumSwipeSpeed = (float)newValue; @@ -56,7 +56,7 @@ internal static void SetInternalMinimumSwipeSpeedProperty(BindableObject bindabl } internal static object GetInternalMinimumSwipeSpeedProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalMinimumSwipeSpeed; } @@ -67,7 +67,7 @@ internal static object GetInternalMinimumSwipeSpeedProperty(BindableObject binda public static BindableProperty MinimumSwipeDistanceProperty = null; internal static void SetInternalMinimumSwipeDistanceProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalMinimumSwipeDistance = (float)newValue; @@ -75,7 +75,7 @@ internal static void SetInternalMinimumSwipeDistanceProperty(BindableObject bind } internal static object GetInternalMinimumSwipeDistanceProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalMinimumSwipeDistance; } @@ -86,7 +86,7 @@ internal static object GetInternalMinimumSwipeDistanceProperty(BindableObject bi public static BindableProperty WheelScrollDistanceStepProperty = null; internal static void SetInternalWheelScrollDistanceStepProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalWheelScrollDistanceStep = (float)newValue; @@ -94,7 +94,7 @@ internal static void SetInternalWheelScrollDistanceStepProperty(BindableObject b } internal static object GetInternalWheelScrollDistanceStepProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalWheelScrollDistanceStep; } @@ -105,7 +105,7 @@ internal static object GetInternalWheelScrollDistanceStepProperty(BindableObject public static BindableProperty SnapToItemEnabledProperty = null; internal static void SetInternalSnapToItemEnabledProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalSnapToItemEnabled = (bool)newValue; @@ -113,7 +113,7 @@ internal static void SetInternalSnapToItemEnabledProperty(BindableObject bindabl } internal static object GetInternalSnapToItemEnabledProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalSnapToItemEnabled; } @@ -124,7 +124,7 @@ internal static object GetInternalSnapToItemEnabledProperty(BindableObject binda public static BindableProperty RefreshIntervalProperty = null; internal static void SetInternalRefreshIntervalProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalRefreshInterval = (float)newValue; @@ -132,7 +132,7 @@ internal static void SetInternalRefreshIntervalProperty(BindableObject bindable, } internal static object GetInternalRefreshIntervalProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalRefreshInterval; } @@ -143,7 +143,7 @@ internal static object GetInternalRefreshIntervalProperty(BindableObject bindabl public static BindableProperty LayoutPositionProperty = null; internal static void SetInternalLayoutPositionProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalLayoutPosition = (float)newValue; @@ -151,7 +151,7 @@ internal static void SetInternalLayoutPositionProperty(BindableObject bindable, } internal static object GetInternalLayoutPositionProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalLayoutPosition; } @@ -162,7 +162,7 @@ internal static object GetInternalLayoutPositionProperty(BindableObject bindable public static BindableProperty ScrollSpeedProperty = null; internal static void SetInternalScrollSpeedProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalScrollSpeed = (float)newValue; @@ -170,7 +170,7 @@ internal static void SetInternalScrollSpeedProperty(BindableObject bindable, obj } internal static object GetInternalScrollSpeedProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalScrollSpeed; } @@ -181,7 +181,7 @@ internal static object GetInternalScrollSpeedProperty(BindableObject bindable) public static BindableProperty OvershootProperty = null; internal static void SetInternalOvershootProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalOvershoot = (float)newValue; @@ -189,7 +189,7 @@ internal static void SetInternalOvershootProperty(BindableObject bindable, objec } internal static object GetInternalOvershootProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalOvershoot; } @@ -200,7 +200,7 @@ internal static object GetInternalOvershootProperty(BindableObject bindable) public static BindableProperty ScrollDirectionProperty = null; internal static void SetInternalScrollDirectionProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalScrollDirection = (Tizen.NUI.Vector2)newValue; @@ -208,7 +208,7 @@ internal static void SetInternalScrollDirectionProperty(BindableObject bindable, } internal static object GetInternalScrollDirectionProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalScrollDirection; } @@ -219,7 +219,7 @@ internal static object GetInternalScrollDirectionProperty(BindableObject bindabl public static BindableProperty LayoutOrientationProperty = null; internal static void SetInternalLayoutOrientationProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalLayoutOrientation = (int)newValue; @@ -227,7 +227,7 @@ internal static void SetInternalLayoutOrientationProperty(BindableObject bindabl } internal static object GetInternalLayoutOrientationProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalLayoutOrientation; } @@ -238,7 +238,7 @@ internal static object GetInternalLayoutOrientationProperty(BindableObject binda public static BindableProperty ScrollContentSizeProperty = null; internal static void SetInternalScrollContentSizeProperty(BindableObject bindable, object oldValue, object newValue) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; if (newValue != null) { instance.InternalScrollContentSize = (float)newValue; @@ -246,7 +246,7 @@ internal static void SetInternalScrollContentSizeProperty(BindableObject bindabl } internal static object GetInternalScrollContentSizeProperty(BindableObject bindable) { - var instance = (Tizen.NUI.ItemView)bindable; + var instance = (ItemView)bindable; return instance.InternalScrollContentSize; } } diff --git a/src/Tizen.NUI/src/public/Utility/ScrollView.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollView.cs similarity index 86% rename from src/Tizen.NUI/src/public/Utility/ScrollView.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollView.cs index 05a6395afec..5f04540b5df 100755 --- a/src/Tizen.NUI/src/public/Utility/ScrollView.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollView.cs @@ -15,12 +15,15 @@ * */ -using System.ComponentModel; +using global::System; +using global::System.Diagnostics.CodeAnalysis; +using global::System.Runtime.InteropServices; +using global::System.ComponentModel; using Tizen.NUI.BaseComponents; using Tizen.NUI; using Tizen.NUI.Binding; -namespace Tizen.NUI +namespace Tizen.NUI.Samples { /// /// ScrollView contains views that can be scrolled manually (via touch). @@ -76,7 +79,7 @@ static ScrollView() /// Create an instance of ScrollView. /// [EditorBrowsable(EditorBrowsableState.Never)] - public ScrollView() : this(Interop.ScrollView.New(), true) + public ScrollView() : this(Tizen.NUI.Interop.ScrollView.New(), true) { if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -635,7 +638,7 @@ public PropertyMap ScrollMode [EditorBrowsable(EditorBrowsableState.Never)] public AlphaFunction GetScrollSnapAlphaFunction() { - AlphaFunction ret = new AlphaFunction(Interop.ScrollView.GetScrollSnapAlphaFunction(SwigCPtr), true); + AlphaFunction ret = new AlphaFunction(Tizen.NUI.Interop.ScrollView.GetScrollSnapAlphaFunction(SwigCPtr), true); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -647,7 +650,7 @@ public AlphaFunction GetScrollSnapAlphaFunction() [EditorBrowsable(EditorBrowsableState.Never)] public void SetScrollSnapAlphaFunction(AlphaFunction alpha) { - Interop.ScrollView.SetScrollSnapAlphaFunction(SwigCPtr, AlphaFunction.getCPtr(alpha)); + Tizen.NUI.Interop.ScrollView.SetScrollSnapAlphaFunction(SwigCPtr, AlphaFunction.getCPtr(alpha)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -658,7 +661,7 @@ public void SetScrollSnapAlphaFunction(AlphaFunction alpha) [EditorBrowsable(EditorBrowsableState.Never)] public AlphaFunction GetScrollFlickAlphaFunction() { - AlphaFunction ret = new AlphaFunction(Interop.ScrollView.GetScrollFlickAlphaFunction(SwigCPtr), true); + AlphaFunction ret = new AlphaFunction(Tizen.NUI.Interop.ScrollView.GetScrollFlickAlphaFunction(SwigCPtr), true); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -670,7 +673,7 @@ public AlphaFunction GetScrollFlickAlphaFunction() [EditorBrowsable(EditorBrowsableState.Never)] public void SetScrollFlickAlphaFunction(AlphaFunction alpha) { - Interop.ScrollView.SetScrollFlickAlphaFunction(SwigCPtr, AlphaFunction.getCPtr(alpha)); + Tizen.NUI.Interop.ScrollView.SetScrollFlickAlphaFunction(SwigCPtr, AlphaFunction.getCPtr(alpha)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -681,7 +684,7 @@ public void SetScrollFlickAlphaFunction(AlphaFunction alpha) [EditorBrowsable(EditorBrowsableState.Never)] public float GetScrollSnapDuration() { - float ret = Interop.ScrollView.GetScrollSnapDuration(SwigCPtr); + float ret = Tizen.NUI.Interop.ScrollView.GetScrollSnapDuration(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -693,7 +696,7 @@ public float GetScrollSnapDuration() [EditorBrowsable(EditorBrowsableState.Never)] public void SetScrollSnapDuration(float time) { - Interop.ScrollView.SetScrollSnapDuration(SwigCPtr, time); + Tizen.NUI.Interop.ScrollView.SetScrollSnapDuration(SwigCPtr, time); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -704,7 +707,7 @@ public void SetScrollSnapDuration(float time) [EditorBrowsable(EditorBrowsableState.Never)] public float GetScrollFlickDuration() { - float ret = Interop.ScrollView.GetScrollFlickDuration(SwigCPtr); + float ret = Tizen.NUI.Interop.ScrollView.GetScrollFlickDuration(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -716,7 +719,7 @@ public float GetScrollFlickDuration() [EditorBrowsable(EditorBrowsableState.Never)] public void SetScrollFlickDuration(float time) { - Interop.ScrollView.SetScrollFlickDuration(SwigCPtr, time); + Tizen.NUI.Interop.ScrollView.SetScrollFlickDuration(SwigCPtr, time); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -727,7 +730,7 @@ public void SetScrollFlickDuration(float time) [EditorBrowsable(EditorBrowsableState.Never)] public void SetScrollSensitive(bool sensitive) { - Interop.ScrollView.SetScrollSensitive(SwigCPtr, sensitive); + Tizen.NUI.Interop.ScrollView.SetScrollSensitive(SwigCPtr, sensitive); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -739,7 +742,7 @@ public void SetScrollSensitive(bool sensitive) [EditorBrowsable(EditorBrowsableState.Never)] public void SetMaxOvershoot(float overshootX, float overshootY) { - Interop.ScrollView.SetMaxOvershoot(SwigCPtr, overshootX, overshootY); + Tizen.NUI.Interop.ScrollView.SetMaxOvershoot(SwigCPtr, overshootX, overshootY); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -750,7 +753,7 @@ public void SetMaxOvershoot(float overshootX, float overshootY) [EditorBrowsable(EditorBrowsableState.Never)] public void SetSnapOvershootAlphaFunction(AlphaFunction alpha) { - Interop.ScrollView.SetSnapOvershootAlphaFunction(SwigCPtr, AlphaFunction.getCPtr(alpha)); + Tizen.NUI.Interop.ScrollView.SetSnapOvershootAlphaFunction(SwigCPtr, AlphaFunction.getCPtr(alpha)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -761,7 +764,7 @@ public void SetSnapOvershootAlphaFunction(AlphaFunction alpha) [EditorBrowsable(EditorBrowsableState.Never)] public void SetSnapOvershootDuration(float duration) { - Interop.ScrollView.SetSnapOvershootDuration(SwigCPtr, duration); + Tizen.NUI.Interop.ScrollView.SetSnapOvershootDuration(SwigCPtr, duration); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -774,7 +777,7 @@ public void SetSnapOvershootDuration(float duration) [EditorBrowsable(EditorBrowsableState.Never)] public void SetViewAutoSnap(bool enable) { - Interop.ScrollView.SetActorAutoSnap(SwigCPtr, enable); + Tizen.NUI.Interop.ScrollView.SetActorAutoSnap(SwigCPtr, enable); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -786,7 +789,7 @@ public void SetViewAutoSnap(bool enable) [EditorBrowsable(EditorBrowsableState.Never)] public void SetWrapMode(bool enable) { - Interop.ScrollView.SetWrapMode(SwigCPtr, enable); + Tizen.NUI.Interop.ScrollView.SetWrapMode(SwigCPtr, enable); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -797,7 +800,7 @@ public void SetWrapMode(bool enable) [EditorBrowsable(EditorBrowsableState.Never)] public int GetScrollUpdateDistance() { - int ret = Interop.ScrollView.GetScrollUpdateDistance(SwigCPtr); + int ret = Tizen.NUI.Interop.ScrollView.GetScrollUpdateDistance(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -811,7 +814,7 @@ public int GetScrollUpdateDistance() [EditorBrowsable(EditorBrowsableState.Never)] public void SetScrollUpdateDistance(int distance) { - Interop.ScrollView.SetScrollUpdateDistance(SwigCPtr, distance); + Tizen.NUI.Interop.ScrollView.SetScrollUpdateDistance(SwigCPtr, distance); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -822,7 +825,7 @@ public void SetScrollUpdateDistance(int distance) [EditorBrowsable(EditorBrowsableState.Never)] public bool GetAxisAutoLock() { - bool ret = Interop.ScrollView.GetAxisAutoLock(SwigCPtr); + bool ret = Tizen.NUI.Interop.ScrollView.GetAxisAutoLock(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -837,7 +840,7 @@ public bool GetAxisAutoLock() [EditorBrowsable(EditorBrowsableState.Never)] public void SetAxisAutoLock(bool enable) { - Interop.ScrollView.SetAxisAutoLock(SwigCPtr, enable); + Tizen.NUI.Interop.ScrollView.SetAxisAutoLock(SwigCPtr, enable); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -848,7 +851,7 @@ public void SetAxisAutoLock(bool enable) [EditorBrowsable(EditorBrowsableState.Never)] public float GetAxisAutoLockGradient() { - float ret = Interop.ScrollView.GetAxisAutoLockGradient(SwigCPtr); + float ret = Tizen.NUI.Interop.ScrollView.GetAxisAutoLockGradient(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -861,7 +864,7 @@ public float GetAxisAutoLockGradient() [EditorBrowsable(EditorBrowsableState.Never)] public void SetAxisAutoLockGradient(float gradient) { - Interop.ScrollView.SetAxisAutoLockGradient(SwigCPtr, gradient); + Tizen.NUI.Interop.ScrollView.SetAxisAutoLockGradient(SwigCPtr, gradient); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -873,7 +876,7 @@ public void SetAxisAutoLockGradient(float gradient) [EditorBrowsable(EditorBrowsableState.Never)] public float GetFrictionCoefficient() { - float ret = Interop.ScrollView.GetFrictionCoefficient(SwigCPtr); + float ret = Tizen.NUI.Interop.ScrollView.GetFrictionCoefficient(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -885,7 +888,7 @@ public float GetFrictionCoefficient() [EditorBrowsable(EditorBrowsableState.Never)] public void SetFrictionCoefficient(float friction) { - Interop.ScrollView.SetFrictionCoefficient(SwigCPtr, friction); + Tizen.NUI.Interop.ScrollView.SetFrictionCoefficient(SwigCPtr, friction); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -897,7 +900,7 @@ public void SetFrictionCoefficient(float friction) [EditorBrowsable(EditorBrowsableState.Never)] public float GetFlickSpeedCoefficient() { - float ret = Interop.ScrollView.GetFlickSpeedCoefficient(SwigCPtr); + float ret = Tizen.NUI.Interop.ScrollView.GetFlickSpeedCoefficient(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -911,7 +914,7 @@ public float GetFlickSpeedCoefficient() [EditorBrowsable(EditorBrowsableState.Never)] public void SetFlickSpeedCoefficient(float speed) { - Interop.ScrollView.SetFlickSpeedCoefficient(SwigCPtr, speed); + Tizen.NUI.Interop.ScrollView.SetFlickSpeedCoefficient(SwigCPtr, speed); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -922,7 +925,7 @@ public void SetFlickSpeedCoefficient(float speed) [EditorBrowsable(EditorBrowsableState.Never)] public Vector2 GetMinimumDistanceForFlick() { - Vector2 ret = new Vector2(Interop.ScrollView.GetMinimumDistanceForFlick(SwigCPtr), true); + Vector2 ret = new Vector2(Tizen.NUI.Interop.ScrollView.GetMinimumDistanceForFlick(SwigCPtr), true); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -935,7 +938,7 @@ public Vector2 GetMinimumDistanceForFlick() [EditorBrowsable(EditorBrowsableState.Never)] public void SetMinimumDistanceForFlick(Vector2 distance) { - Interop.ScrollView.SetMinimumDistanceForFlick(SwigCPtr, Vector2.getCPtr(distance)); + Tizen.NUI.Interop.ScrollView.SetMinimumDistanceForFlick(SwigCPtr, Vector2.getCPtr(distance)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -946,7 +949,7 @@ public void SetMinimumDistanceForFlick(Vector2 distance) [EditorBrowsable(EditorBrowsableState.Never)] public float GetMinimumSpeedForFlick() { - float ret = Interop.ScrollView.GetMinimumSpeedForFlick(SwigCPtr); + float ret = Tizen.NUI.Interop.ScrollView.GetMinimumSpeedForFlick(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -958,7 +961,7 @@ public float GetMinimumSpeedForFlick() [EditorBrowsable(EditorBrowsableState.Never)] public void SetMinimumSpeedForFlick(float speed) { - Interop.ScrollView.SetMinimumSpeedForFlick(SwigCPtr, speed); + Tizen.NUI.Interop.ScrollView.SetMinimumSpeedForFlick(SwigCPtr, speed); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -970,7 +973,7 @@ public void SetMinimumSpeedForFlick(float speed) [EditorBrowsable(EditorBrowsableState.Never)] public float GetMaxFlickSpeed() { - float ret = Interop.ScrollView.GetMaxFlickSpeed(SwigCPtr); + float ret = Tizen.NUI.Interop.ScrollView.GetMaxFlickSpeed(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -983,7 +986,7 @@ public float GetMaxFlickSpeed() [EditorBrowsable(EditorBrowsableState.Never)] public void SetMaxFlickSpeed(float speed) { - Interop.ScrollView.SetMaxFlickSpeed(SwigCPtr, speed); + Tizen.NUI.Interop.ScrollView.SetMaxFlickSpeed(SwigCPtr, speed); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -994,7 +997,7 @@ public void SetMaxFlickSpeed(float speed) [EditorBrowsable(EditorBrowsableState.Never)] public Vector2 GetCurrentScrollPosition() { - Vector2 ret = new Vector2(Interop.ScrollView.GetCurrentScrollPosition(SwigCPtr), true); + Vector2 ret = new Vector2(Tizen.NUI.Interop.ScrollView.GetCurrentScrollPosition(SwigCPtr), true); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -1007,7 +1010,7 @@ public Vector2 GetCurrentScrollPosition() [EditorBrowsable(EditorBrowsableState.Never)] public uint GetCurrentPage() { - uint ret = Interop.ScrollView.GetCurrentPage(SwigCPtr); + uint ret = Tizen.NUI.Interop.ScrollView.GetCurrentPage(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -1019,7 +1022,7 @@ public uint GetCurrentPage() [EditorBrowsable(EditorBrowsableState.Never)] public void ScrollTo(Vector2 position) { - Interop.ScrollView.ScrollToVector2(SwigCPtr, Vector2.getCPtr(position)); + Tizen.NUI.Interop.ScrollView.ScrollToVector2(SwigCPtr, Vector2.getCPtr(position)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1031,7 +1034,7 @@ public void ScrollTo(Vector2 position) [EditorBrowsable(EditorBrowsableState.Never)] public void ScrollTo(Vector2 position, float duration) { - Interop.ScrollView.ScrollTo(SwigCPtr, Vector2.getCPtr(position), duration); + Tizen.NUI.Interop.ScrollView.ScrollTo(SwigCPtr, Vector2.getCPtr(position), duration); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1044,7 +1047,7 @@ public void ScrollTo(Vector2 position, float duration) [EditorBrowsable(EditorBrowsableState.Never)] public void ScrollTo(Vector2 position, float duration, AlphaFunction alpha) { - Interop.ScrollView.ScrollTo(SwigCPtr, Vector2.getCPtr(position), duration, AlphaFunction.getCPtr(alpha)); + Tizen.NUI.Interop.ScrollView.ScrollTo(SwigCPtr, Vector2.getCPtr(position), duration, AlphaFunction.getCPtr(alpha)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1058,7 +1061,7 @@ public void ScrollTo(Vector2 position, float duration, AlphaFunction alpha) [EditorBrowsable(EditorBrowsableState.Never)] public void ScrollTo(Vector2 position, float duration, DirectionBias horizontalBias, DirectionBias verticalBias) { - Interop.ScrollView.ScrollTo(SwigCPtr, Vector2.getCPtr(position), duration, (int)horizontalBias, (int)verticalBias); + Tizen.NUI.Interop.ScrollView.ScrollTo(SwigCPtr, Vector2.getCPtr(position), duration, (int)horizontalBias, (int)verticalBias); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1073,7 +1076,7 @@ public void ScrollTo(Vector2 position, float duration, DirectionBias horizontalB [EditorBrowsable(EditorBrowsableState.Never)] public void ScrollTo(Vector2 position, float duration, AlphaFunction alpha, DirectionBias horizontalBias, DirectionBias verticalBias) { - Interop.ScrollView.ScrollTo(SwigCPtr, Vector2.getCPtr(position), duration, AlphaFunction.getCPtr(alpha), (int)horizontalBias, (int)verticalBias); + Tizen.NUI.Interop.ScrollView.ScrollTo(SwigCPtr, Vector2.getCPtr(position), duration, AlphaFunction.getCPtr(alpha), (int)horizontalBias, (int)verticalBias); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1084,7 +1087,7 @@ public void ScrollTo(Vector2 position, float duration, AlphaFunction alpha, Dire [EditorBrowsable(EditorBrowsableState.Never)] public void ScrollTo(uint page) { - Interop.ScrollView.ScrollTo(SwigCPtr, page); + Tizen.NUI.Interop.ScrollView.ScrollTo(SwigCPtr, page); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1096,7 +1099,7 @@ public void ScrollTo(uint page) [EditorBrowsable(EditorBrowsableState.Never)] public void ScrollTo(uint page, float duration) { - Interop.ScrollView.ScrollTo(SwigCPtr, page, duration); + Tizen.NUI.Interop.ScrollView.ScrollTo(SwigCPtr, page, duration); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1109,7 +1112,7 @@ public void ScrollTo(uint page, float duration) [EditorBrowsable(EditorBrowsableState.Never)] public void ScrollTo(uint page, float duration, DirectionBias bias) { - Interop.ScrollView.ScrollTo(SwigCPtr, page, duration, (int)bias); + Tizen.NUI.Interop.ScrollView.ScrollTo(SwigCPtr, page, duration, (int)bias); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1120,7 +1123,7 @@ public void ScrollTo(uint page, float duration, DirectionBias bias) [EditorBrowsable(EditorBrowsableState.Never)] public void ScrollTo(View view) { - Interop.ScrollView.ScrollToView(SwigCPtr, View.getCPtr(view)); + Tizen.NUI.Interop.ScrollView.ScrollToView(SwigCPtr, View.getCPtr(view)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1132,7 +1135,7 @@ public void ScrollTo(View view) [EditorBrowsable(EditorBrowsableState.Never)] public void ScrollTo(View view, float duration) { - Interop.ScrollView.ScrollToViewDuration(SwigCPtr, View.getCPtr(view), duration); + Tizen.NUI.Interop.ScrollView.ScrollToViewDuration(SwigCPtr, View.getCPtr(view), duration); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1144,7 +1147,7 @@ public void ScrollTo(View view, float duration) [EditorBrowsable(EditorBrowsableState.Never)] public bool ScrollToSnapPoint() { - bool ret = Interop.ScrollView.ScrollToSnapPoint(SwigCPtr); + bool ret = Tizen.NUI.Interop.ScrollView.ScrollToSnapPoint(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -1156,7 +1159,7 @@ public bool ScrollToSnapPoint() [EditorBrowsable(EditorBrowsableState.Never)] public void ApplyEffect(ScrollViewEffect effect) { - Interop.ScrollView.ApplyEffect(SwigCPtr, ScrollViewEffect.getCPtr(effect)); + Tizen.NUI.Interop.ScrollView.ApplyEffect(SwigCPtr, ScrollViewEffect.getCPtr(effect)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1167,7 +1170,7 @@ public void ApplyEffect(ScrollViewEffect effect) [EditorBrowsable(EditorBrowsableState.Never)] public void RemoveEffect(ScrollViewEffect effect) { - Interop.ScrollView.RemoveEffect(SwigCPtr, ScrollViewEffect.getCPtr(effect)); + Tizen.NUI.Interop.ScrollView.RemoveEffect(SwigCPtr, ScrollViewEffect.getCPtr(effect)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1177,7 +1180,7 @@ public void RemoveEffect(ScrollViewEffect effect) [EditorBrowsable(EditorBrowsableState.Never)] public void RemoveAllEffects() { - Interop.ScrollView.RemoveAllEffects(SwigCPtr); + Tizen.NUI.Interop.ScrollView.RemoveAllEffects(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1189,7 +1192,7 @@ public void RemoveAllEffects() [EditorBrowsable(EditorBrowsableState.Never)] public void BindView(View child) { - Interop.ScrollView.BindActor(SwigCPtr, View.getCPtr(child)); + Tizen.NUI.Interop.ScrollView.BindActor(SwigCPtr, View.getCPtr(child)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1201,7 +1204,7 @@ public void BindView(View child) [EditorBrowsable(EditorBrowsableState.Never)] public void UnbindView(View child) { - Interop.ScrollView.UnbindActor(SwigCPtr, View.getCPtr(child)); + Tizen.NUI.Interop.ScrollView.UnbindActor(SwigCPtr, View.getCPtr(child)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1213,7 +1216,7 @@ public void UnbindView(View child) [EditorBrowsable(EditorBrowsableState.Never)] public void SetScrollingDirection(Radian direction, Radian threshold) { - Interop.ScrollView.SetScrollingDirection(SwigCPtr, Radian.getCPtr(direction), Radian.getCPtr(threshold)); + Tizen.NUI.Interop.ScrollView.SetScrollingDirection(SwigCPtr, Radian.getCPtr(direction), Radian.getCPtr(threshold)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1224,7 +1227,7 @@ public void SetScrollingDirection(Radian direction, Radian threshold) [EditorBrowsable(EditorBrowsableState.Never)] public void SetScrollingDirection(Radian direction) { - Interop.ScrollView.SetScrollingDirection(SwigCPtr, Radian.getCPtr(direction)); + Tizen.NUI.Interop.ScrollView.SetScrollingDirection(SwigCPtr, Radian.getCPtr(direction)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1235,7 +1238,7 @@ public void SetScrollingDirection(Radian direction) [EditorBrowsable(EditorBrowsableState.Never)] public void RemoveScrollingDirection(Radian direction) { - Interop.ScrollView.RemoveScrollingDirection(SwigCPtr, Radian.getCPtr(direction)); + Tizen.NUI.Interop.ScrollView.RemoveScrollingDirection(SwigCPtr, Radian.getCPtr(direction)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1246,7 +1249,7 @@ public void RemoveScrollingDirection(Radian direction) [EditorBrowsable(EditorBrowsableState.Never)] public void SetRulerX(RulerPtr ruler) { - Interop.ScrollView.SetRulerX(SwigCPtr, RulerPtr.getCPtr(ruler)); + Tizen.NUI.Interop.ScrollView.SetRulerX(SwigCPtr, RulerPtr.getCPtr(ruler)); } /// @@ -1256,12 +1259,12 @@ public void SetRulerX(RulerPtr ruler) [EditorBrowsable(EditorBrowsableState.Never)] public void SetRulerY(RulerPtr ruler) { - Interop.ScrollView.SetRulerY(SwigCPtr, RulerPtr.getCPtr(ruler)); + Tizen.NUI.Interop.ScrollView.SetRulerY(SwigCPtr, RulerPtr.getCPtr(ruler)); } internal void ApplyConstraintToChildren(Constraint constraint) { - Interop.ScrollView.ApplyConstraintToChildren(SwigCPtr, constraint.SwigCPtr); + Tizen.NUI.Interop.ScrollView.ApplyConstraintToChildren(SwigCPtr, constraint.SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -1293,9 +1296,9 @@ protected override void Dispose(DisposeTypes type) /// This will not be public opened. [EditorBrowsable(EditorBrowsableState.Never)] - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + protected override void ReleaseSwigCPtr(HandleRef swigCPtr) { - Interop.ScrollView.DeleteScrollView(swigCPtr); + Tizen.NUI.Interop.ScrollView.DeleteScrollView(swigCPtr); } /// @@ -1310,132 +1313,132 @@ protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int WrapEnabled = Interop.ScrollView.WrapEnabledGet(); + public static readonly int WrapEnabled = Tizen.NUI.Interop.ScrollView.WrapEnabledGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int PanningEnabled = Interop.ScrollView.PanningEnabledGet(); + public static readonly int PanningEnabled = Tizen.NUI.Interop.ScrollView.PanningEnabledGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int AxisAutoLockEnabled = Interop.ScrollView.AxisAutoLockEnabledGet(); + public static readonly int AxisAutoLockEnabled = Tizen.NUI.Interop.ScrollView.AxisAutoLockEnabledGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int WheelScrollDistanceStep = Interop.ScrollView.WheelScrollDistanceStepGet(); + public static readonly int WheelScrollDistanceStep = Tizen.NUI.Interop.ScrollView.WheelScrollDistanceStepGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollMode = Interop.ScrollView.ScrollModeGet(); + public static readonly int ScrollMode = Tizen.NUI.Interop.ScrollView.ScrollModeGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollPosition = Interop.ScrollView.ScrollPositionGet(); + public static readonly int ScrollPosition = Tizen.NUI.Interop.ScrollView.ScrollPositionGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollPrePosition = Interop.ScrollView.ScrollPrePositionGet(); + public static readonly int ScrollPrePosition = Tizen.NUI.Interop.ScrollView.ScrollPrePositionGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollPrePositionX = Interop.ScrollView.ScrollPrePositionXGet(); + public static readonly int ScrollPrePositionX = Tizen.NUI.Interop.ScrollView.ScrollPrePositionXGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollPrePositionY = Interop.ScrollView.ScrollPrePositionYGet(); + public static readonly int ScrollPrePositionY = Tizen.NUI.Interop.ScrollView.ScrollPrePositionYGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollPrePositionMax = Interop.ScrollView.ScrollPrePositionMaxGet(); + public static readonly int ScrollPrePositionMax = Tizen.NUI.Interop.ScrollView.ScrollPrePositionMaxGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollPrePositionMaxX = Interop.ScrollView.ScrollPrePositionMaxXGet(); + public static readonly int ScrollPrePositionMaxX = Tizen.NUI.Interop.ScrollView.ScrollPrePositionMaxXGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollPrePositionMaxY = Interop.ScrollView.ScrollPrePositionMaxYGet(); + public static readonly int ScrollPrePositionMaxY = Tizen.NUI.Interop.ScrollView.ScrollPrePositionMaxYGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int OvershootX = Interop.ScrollView.OvershootXGet(); + public static readonly int OvershootX = Tizen.NUI.Interop.ScrollView.OvershootXGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int OvershootY = Interop.ScrollView.OvershootYGet(); + public static readonly int OvershootY = Tizen.NUI.Interop.ScrollView.OvershootYGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollFinal = Interop.ScrollView.ScrollFinalGet(); + public static readonly int ScrollFinal = Tizen.NUI.Interop.ScrollView.ScrollFinalGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollFinalX = Interop.ScrollView.ScrollFinalXGet(); + public static readonly int ScrollFinalX = Tizen.NUI.Interop.ScrollView.ScrollFinalXGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollFinalY = Interop.ScrollView.ScrollFinalYGet(); + public static readonly int ScrollFinalY = Tizen.NUI.Interop.ScrollView.ScrollFinalYGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int WRAP = Interop.ScrollView.WrapGet(); + public static readonly int WRAP = Tizen.NUI.Interop.ScrollView.WrapGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int PANNING = Interop.ScrollView.PanningGet(); + public static readonly int PANNING = Tizen.NUI.Interop.ScrollView.PanningGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int SCROLLING = Interop.ScrollView.ScrollingGet(); + public static readonly int SCROLLING = Tizen.NUI.Interop.ScrollView.ScrollingGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollDomainSize = Interop.ScrollView.ScrollDomainSizeGet(); + public static readonly int ScrollDomainSize = Tizen.NUI.Interop.ScrollView.ScrollDomainSizeGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollDomainSizeX = Interop.ScrollView.ScrollDomainSizeXGet(); + public static readonly int ScrollDomainSizeX = Tizen.NUI.Interop.ScrollView.ScrollDomainSizeXGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollDomainSizeY = Interop.ScrollView.ScrollDomainSizeYGet(); + public static readonly int ScrollDomainSizeY = Tizen.NUI.Interop.ScrollView.ScrollDomainSizeYGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollDomainOffset = Interop.ScrollView.ScrollDomainOffsetGet(); + public static readonly int ScrollDomainOffset = Tizen.NUI.Interop.ScrollView.ScrollDomainOffsetGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int ScrollPositionDelta = Interop.ScrollView.ScrollPositionDeltaGet(); + public static readonly int ScrollPositionDelta = Tizen.NUI.Interop.ScrollView.ScrollPositionDeltaGet(); /// /// This should be internal, do not use. /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly int StartPagePosition = Interop.ScrollView.StartPagePositionGet(); + public static readonly int StartPagePosition = Tizen.NUI.Interop.ScrollView.StartPagePositionGet(); } } } diff --git a/src/Tizen.NUI/src/public/Utility/ScrollViewBindableProperty.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewBindableProperty.cs similarity index 66% rename from src/Tizen.NUI/src/public/Utility/ScrollViewBindableProperty.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewBindableProperty.cs index 4bd11bd30e6..6dbc45fe168 100755 --- a/src/Tizen.NUI/src/public/Utility/ScrollViewBindableProperty.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewBindableProperty.cs @@ -18,8 +18,9 @@ using System; using System.ComponentModel; using Tizen.NUI.Binding; +using global::System.Runtime.InteropServices; -namespace Tizen.NUI +namespace Tizen.NUI.Samples { /// /// ScrollView contains views that can be scrolled manually (via touch). @@ -34,7 +35,7 @@ internal static void SetInternalWrapEnabledProperty(BindableObject bindable, obj var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.WrapEnabled, new Tizen.NUI.PropertyValue((bool)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.WrapEnabled, new Tizen.NUI.PropertyValue((bool)newValue)); } } @@ -42,7 +43,7 @@ internal static object GetInternalWrapEnabledProperty(BindableObject bindable) { var scrollView = (ScrollView)bindable; bool temp = false; - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.WrapEnabled).Get(out temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.WrapEnabled).Get(out temp); return temp; } @@ -54,7 +55,7 @@ internal static void SetInternalPanningEnabledProperty(BindableObject bindable, var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.PanningEnabled, new Tizen.NUI.PropertyValue((bool)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.PanningEnabled, new Tizen.NUI.PropertyValue((bool)newValue)); } } @@ -62,7 +63,7 @@ internal static object GetInternalPanningEnabledProperty(BindableObject bindable { var scrollView = (ScrollView)bindable; bool temp = false; - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.PanningEnabled).Get(out temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.PanningEnabled).Get(out temp); return temp; } @@ -74,7 +75,7 @@ internal static void SetInternalAxisAutoLockEnabledProperty(BindableObject binda var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.AxisAutoLockEnabled, new Tizen.NUI.PropertyValue((bool)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.AxisAutoLockEnabled, new Tizen.NUI.PropertyValue((bool)newValue)); } } @@ -82,7 +83,7 @@ internal static object GetInternalAxisAutoLockEnabledProperty(BindableObject bin { var scrollView = (ScrollView)bindable; bool temp = false; - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.AxisAutoLockEnabled).Get(out temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.AxisAutoLockEnabled).Get(out temp); return temp; } @@ -94,7 +95,7 @@ internal static void SetInternalWheelScrollDistanceStepProperty(BindableObject b var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.WheelScrollDistanceStep, new Tizen.NUI.PropertyValue((Vector2)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.WheelScrollDistanceStep, new Tizen.NUI.PropertyValue((Vector2)newValue)); } } @@ -102,7 +103,7 @@ internal static object GetInternalWheelScrollDistanceStepProperty(BindableObject { var scrollView = (ScrollView)bindable; Vector2 temp = new Vector2(0.0f, 0.0f); - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.WheelScrollDistanceStep).Get(temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.WheelScrollDistanceStep).Get(temp); return temp; } @@ -114,7 +115,7 @@ internal static void SetInternalScrollPositionProperty(BindableObject bindable, var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPosition, new Tizen.NUI.PropertyValue((Vector2)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPosition, new Tizen.NUI.PropertyValue((Vector2)newValue)); } } @@ -122,7 +123,7 @@ internal static object GetInternalScrollPositionProperty(BindableObject bindable { var scrollView = (ScrollView)bindable; Vector2 temp = new Vector2(0.0f, 0.0f); - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPosition).Get(temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPosition).Get(temp); return temp; } @@ -134,7 +135,7 @@ internal static void SetInternalScrollPrePositionProperty(BindableObject bindabl var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPrePosition, new Tizen.NUI.PropertyValue((Vector2)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPrePosition, new Tizen.NUI.PropertyValue((Vector2)newValue)); } } @@ -142,7 +143,7 @@ internal static object GetInternalScrollPrePositionProperty(BindableObject binda { var scrollView = (ScrollView)bindable; Vector2 temp = new Vector2(0.0f, 0.0f); - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPrePosition).Get(temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPrePosition).Get(temp); return temp; } @@ -154,7 +155,7 @@ internal static void SetInternalScrollPrePositionMaxProperty(BindableObject bind var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPrePositionMax, new Tizen.NUI.PropertyValue((Vector2)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPrePositionMax, new Tizen.NUI.PropertyValue((Vector2)newValue)); } } @@ -162,7 +163,7 @@ internal static object GetInternalScrollPrePositionMaxProperty(BindableObject bi { var scrollView = (ScrollView)bindable; Vector2 temp = new Vector2(0.0f, 0.0f); - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPrePositionMax).Get(temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPrePositionMax).Get(temp); return temp; } @@ -174,7 +175,7 @@ internal static void SetInternalOvershootXProperty(BindableObject bindable, obje var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.OvershootX, new Tizen.NUI.PropertyValue((float)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.OvershootX, new Tizen.NUI.PropertyValue((float)newValue)); } } @@ -182,7 +183,7 @@ internal static object GetInternalOvershootXProperty(BindableObject bindable) { var scrollView = (ScrollView)bindable; float temp = 0.0f; - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.OvershootX).Get(out temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.OvershootX).Get(out temp); return temp; } @@ -194,7 +195,7 @@ internal static void SetInternalOvershootYProperty(BindableObject bindable, obje var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.OvershootY, new Tizen.NUI.PropertyValue((float)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.OvershootY, new Tizen.NUI.PropertyValue((float)newValue)); } } @@ -202,7 +203,7 @@ internal static object GetInternalOvershootYProperty(BindableObject bindable) { var scrollView = (ScrollView)bindable; float temp = 0.0f; - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.OvershootY).Get(out temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.OvershootY).Get(out temp); return temp; } @@ -214,7 +215,7 @@ internal static void SetInternalScrollFinalProperty(BindableObject bindable, obj var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollFinal, new Tizen.NUI.PropertyValue((Vector2)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollFinal, new Tizen.NUI.PropertyValue((Vector2)newValue)); } } @@ -222,7 +223,7 @@ internal static object GetInternalScrollFinalProperty(BindableObject bindable) { var scrollView = (ScrollView)bindable; Vector2 temp = new Vector2(0.0f, 0.0f); - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollFinal).Get(temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollFinal).Get(temp); return temp; } @@ -234,7 +235,7 @@ internal static void SetInternalWrapProperty(BindableObject bindable, object old var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.WRAP, new Tizen.NUI.PropertyValue((bool)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.WRAP, new Tizen.NUI.PropertyValue((bool)newValue)); } } @@ -242,7 +243,7 @@ internal static object GetInternalWrapProperty(BindableObject bindable) { var scrollView = (ScrollView)bindable; bool temp = false; - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.WRAP).Get(out temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.WRAP).Get(out temp); return temp; } @@ -254,7 +255,7 @@ internal static void SetInternalPanningProperty(BindableObject bindable, object var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.PANNING, new Tizen.NUI.PropertyValue((bool)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.PANNING, new Tizen.NUI.PropertyValue((bool)newValue)); } } @@ -262,7 +263,7 @@ internal static object GetInternalPanningProperty(BindableObject bindable) { var scrollView = (ScrollView)bindable; bool temp = false; - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.PANNING).Get(out temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.PANNING).Get(out temp); return temp; } @@ -274,7 +275,7 @@ internal static void SetInternalScrollingProperty(BindableObject bindable, objec var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.SCROLLING, new Tizen.NUI.PropertyValue((bool)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.SCROLLING, new Tizen.NUI.PropertyValue((bool)newValue)); } } @@ -282,7 +283,7 @@ internal static object GetInternalScrollingProperty(BindableObject bindable) { var scrollView = (ScrollView)bindable; bool temp = false; - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.SCROLLING).Get(out temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.SCROLLING).Get(out temp); return temp; } @@ -294,7 +295,7 @@ internal static void SetInternalScrollDomainSizeProperty(BindableObject bindable var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollDomainSize, new Tizen.NUI.PropertyValue((Vector2)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollDomainSize, new Tizen.NUI.PropertyValue((Vector2)newValue)); } } @@ -302,7 +303,7 @@ internal static object GetInternalScrollDomainSizeProperty(BindableObject bindab { var scrollView = (ScrollView)bindable; Vector2 temp = new Vector2(0.0f, 0.0f); - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollDomainSize).Get(temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollDomainSize).Get(temp); return temp; } @@ -314,7 +315,7 @@ internal static void SetInternalScrollDomainOffsetProperty(BindableObject bindab var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollDomainOffset, new Tizen.NUI.PropertyValue((Vector2)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollDomainOffset, new Tizen.NUI.PropertyValue((Vector2)newValue)); } } @@ -322,7 +323,7 @@ internal static object GetInternalScrollDomainOffsetProperty(BindableObject bind { var scrollView = (ScrollView)bindable; Vector2 temp = new Vector2(0.0f, 0.0f); - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollDomainOffset).Get(temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollDomainOffset).Get(temp); return temp; } @@ -334,7 +335,7 @@ internal static void SetInternalScrollPositionDeltaProperty(BindableObject binda var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPositionDelta, new Tizen.NUI.PropertyValue((Vector2)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPositionDelta, new Tizen.NUI.PropertyValue((Vector2)newValue)); } } @@ -342,7 +343,7 @@ internal static object GetInternalScrollPositionDeltaProperty(BindableObject bin { var scrollView = (ScrollView)bindable; Vector2 temp = new Vector2(0.0f, 0.0f); - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPositionDelta).Get(temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollPositionDelta).Get(temp); return temp; } @@ -354,7 +355,7 @@ internal static void SetInternalStartPagePositionProperty(BindableObject bindabl var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.StartPagePosition, new Tizen.NUI.PropertyValue((Vector3)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.StartPagePosition, new Tizen.NUI.PropertyValue((Vector3)newValue)); } } @@ -362,7 +363,7 @@ internal static object GetInternalStartPagePositionProperty(BindableObject binda { var scrollView = (ScrollView)bindable; Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f); - Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.StartPagePosition).Get(temp); + Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.StartPagePosition).Get(temp); return temp; } @@ -374,14 +375,14 @@ internal static void SetInternalScrollModeProperty(BindableObject bindable, obje var scrollView = (ScrollView)bindable; if (newValue != null) { - Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollMode, new Tizen.NUI.PropertyValue((PropertyMap)newValue)); + Tizen.NUI.Object.SetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollMode, new Tizen.NUI.PropertyValue((PropertyMap)newValue)); } } internal static object GetInternalScrollModeProperty(BindableObject bindable) { var scrollView = (ScrollView)bindable; - PropertyValue value = Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollMode); + PropertyValue value = Tizen.NUI.Object.GetProperty((HandleRef)scrollView.SwigCPtr, ScrollView.Property.ScrollMode); PropertyMap map = new PropertyMap(); value.Get(map); return map; diff --git a/src/Tizen.NUI/src/public/Utility/ScrollViewEvent.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewEvent.cs similarity index 87% rename from src/Tizen.NUI/src/public/Utility/ScrollViewEvent.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewEvent.cs index 2eaa0dfa5c6..f367dcf64a0 100755 --- a/src/Tizen.NUI/src/public/Utility/ScrollViewEvent.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewEvent.cs @@ -18,8 +18,9 @@ using System; using System.ComponentModel; using System.Runtime.InteropServices; +using Tizen.NUI; -namespace Tizen.NUI +namespace Tizen.NUI.Samples { /// /// ScrollView contains views that can be scrolled manually (via touch). @@ -69,7 +70,7 @@ public event DaliEventHandler SnapStarted internal ScrollViewSnapStartedSignal SnapStartedSignal() { - ScrollViewSnapStartedSignal ret = new ScrollViewSnapStartedSignal(Interop.ScrollView.SnapStartedSignal(SwigCPtr), false); + ScrollViewSnapStartedSignal ret = new ScrollViewSnapStartedSignal(Tizen.NUI.Interop.ScrollView.SnapStartedSignal(SwigCPtr), false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -93,7 +94,7 @@ private void OnSnapStarted(IntPtr data) /// Snaps signal event's data. /// [EditorBrowsable(EditorBrowsableState.Never)] - [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] + [global::System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] public class SnapEvent : Disposable { /// @@ -108,7 +109,7 @@ public class SnapEvent : Disposable /// Create an instance of SnapEvent. /// [EditorBrowsable(EditorBrowsableState.Never)] - public SnapEvent() : this(Interop.ScrollView.NewScrollViewSnapEvent(), true) + public SnapEvent() : this(Tizen.NUI.Interop.ScrollView.NewScrollViewSnapEvent(), true) { if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -127,12 +128,12 @@ public Vector2 position { set { - Interop.ScrollView.SnapEventPositionSet(swigCPtr, Vector2.getCPtr(value)); + Tizen.NUI.Interop.ScrollView.SnapEventPositionSet(swigCPtr, Vector2.getCPtr(value)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } get { - global::System.IntPtr cPtr = Interop.ScrollView.SnapEventPositionGet(swigCPtr); + global::System.IntPtr cPtr = Tizen.NUI.Interop.ScrollView.SnapEventPositionGet(swigCPtr); Vector2 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector2(cPtr, false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve()); return ret; @@ -147,12 +148,12 @@ public float duration { set { - Interop.ScrollView.SnapEventDurationSet(swigCPtr, value); + Tizen.NUI.Interop.ScrollView.SnapEventDurationSet(swigCPtr, value); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } get { - float ret = Interop.ScrollView.SnapEventDurationGet(swigCPtr); + float ret = Tizen.NUI.Interop.ScrollView.SnapEventDurationGet(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve()); return ret; } @@ -162,12 +163,12 @@ internal SnapType type { set { - Interop.ScrollView.SnapEventTypeSet(swigCPtr, (int)value); + Tizen.NUI.Interop.ScrollView.SnapEventTypeSet(swigCPtr, (int)value); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } get { - SnapType ret = (SnapType)Interop.ScrollView.SnapEventTypeGet(swigCPtr); + SnapType ret = (SnapType)Tizen.NUI.Interop.ScrollView.SnapEventTypeGet(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } @@ -205,7 +206,7 @@ protected override void Dispose(DisposeTypes type) if (swigCMemOwn) { swigCMemOwn = false; - Interop.ScrollView.DeleteScrollViewSnapEvent(swigCPtr); + Tizen.NUI.Interop.ScrollView.DeleteScrollViewSnapEvent(swigCPtr); } swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); } @@ -219,16 +220,16 @@ protected override void Dispose(DisposeTypes type) /// Event arguments that passed via the SnapStarted signal. /// [EditorBrowsable(EditorBrowsableState.Never)] - [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] + [global::System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] public class SnapStartedEventArgs : EventArgs { - private Tizen.NUI.ScrollView.SnapEvent snapEvent; + private ScrollView.SnapEvent snapEvent; /// /// SnapEventInfo is the SnapEvent information like snap or flick (it tells the target position, scale, rotation for the snap or flick). /// [EditorBrowsable(EditorBrowsableState.Never)] - public Tizen.NUI.ScrollView.SnapEvent SnapEventInfo + public ScrollView.SnapEvent SnapEventInfo { get { diff --git a/src/Tizen.NUI/src/public/Utility/ScrollViewPagePathEffect.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewPagePathEffect.cs similarity index 84% rename from src/Tizen.NUI/src/public/Utility/ScrollViewPagePathEffect.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewPagePathEffect.cs index 9d2abb2b095..033bab2fd87 100755 --- a/src/Tizen.NUI/src/public/Utility/ScrollViewPagePathEffect.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewPagePathEffect.cs @@ -16,8 +16,10 @@ */ using System.ComponentModel; using Tizen.NUI.BaseComponents; +using global::System.Runtime.InteropServices; +using Tizen.NUI; -namespace Tizen.NUI +namespace Tizen.NUI.Samples { /// /// ScrollView Page Path Effect. @@ -30,16 +32,16 @@ namespace Tizen.NUI public class ScrollViewPagePathEffect : ScrollViewEffect { - internal ScrollViewPagePathEffect(global::System.IntPtr cPtr, bool cMemoryOwn) : base(Interop.ScrollView.ScrollViewPagePathEffectUpcast(cPtr), cMemoryOwn) + internal ScrollViewPagePathEffect(global::System.IntPtr cPtr, bool cMemoryOwn) : base(Tizen.NUI.Interop.ScrollView.ScrollViewPagePathEffectUpcast(cPtr), cMemoryOwn) { } /// This will not be public opened. [EditorBrowsable(EditorBrowsableState.Never)] - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + protected override void ReleaseSwigCPtr(HandleRef swigCPtr) { - Interop.ScrollView.DeleteScrollViewPagePathEffect(swigCPtr); + Tizen.NUI.Interop.ScrollView.DeleteScrollViewPagePathEffect(swigCPtr); } /// @@ -53,7 +55,7 @@ protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef /// A handle to a newly allocated Dali resource. /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] - public ScrollViewPagePathEffect(Path path, Vector3 forward, int inputPropertyIndex, Vector3 pageSize, uint pageCount) : this(Interop.ScrollView.ScrollViewPagePathEffectNew(Path.getCPtr(path), Vector3.getCPtr(forward), inputPropertyIndex, Vector3.getCPtr(pageSize), pageCount), true) + public ScrollViewPagePathEffect(Path path, Vector3 forward, int inputPropertyIndex, Vector3 pageSize, uint pageCount) : this(Tizen.NUI.Interop.ScrollView.ScrollViewPagePathEffectNew(Path.getCPtr(path), Vector3.getCPtr(forward), inputPropertyIndex, Vector3.getCPtr(pageSize), pageCount), true) { if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -74,7 +76,7 @@ internal static ScrollViewPagePathEffect DownCast(BaseHandle handle) [EditorBrowsable(EditorBrowsableState.Never)] public void ApplyToPage(View page, uint pageOrder) { - Interop.ScrollView.ScrollViewPagePathEffectApplyToPage(SwigCPtr, View.getCPtr(page), pageOrder); + Tizen.NUI.Interop.ScrollView.ScrollViewPagePathEffectApplyToPage(SwigCPtr, View.getCPtr(page), pageOrder); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } } diff --git a/src/Tizen.NUI/src/internal/Common/ScrollViewSnapStartedSignal.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewSnapStartedSignal.cs similarity index 56% rename from src/Tizen.NUI/src/internal/Common/ScrollViewSnapStartedSignal.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewSnapStartedSignal.cs index f33a4afdebc..353549383c4 100644 --- a/src/Tizen.NUI/src/internal/Common/ScrollViewSnapStartedSignal.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/ScrollViewSnapStartedSignal.cs @@ -15,58 +15,61 @@ * */ -namespace Tizen.NUI +using global::System.Runtime.InteropServices; +using global::System; + +namespace Tizen.NUI.Samples { internal class ScrollViewSnapStartedSignal : Disposable { - internal ScrollViewSnapStartedSignal(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) + internal ScrollViewSnapStartedSignal(IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) { } - protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + protected override void ReleaseSwigCPtr(HandleRef swigCPtr) { - Interop.ScrollView.DeleteScrollViewSnapStartedSignal(swigCPtr); + Tizen.NUI.Interop.ScrollView.DeleteScrollViewSnapStartedSignal(swigCPtr); } public bool Empty() { - bool ret = Interop.ScrollView.ScrollViewSnapStartedSignalEmpty(SwigCPtr); + bool ret = Tizen.NUI.Interop.ScrollView.ScrollViewSnapStartedSignalEmpty(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } public uint GetConnectionCount() { - uint ret = Interop.ScrollView.ScrollViewSnapStartedSignalGetConnectionCount(SwigCPtr); + uint ret = Tizen.NUI.Interop.ScrollView.ScrollViewSnapStartedSignalGetConnectionCount(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - public void Connect(System.Delegate func) + public void Connect(Delegate func) { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); + IntPtr ip = global::System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); { - Interop.ScrollView.ScrollViewSnapStartedSignalConnect(SwigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); + Tizen.NUI.Interop.ScrollView.ScrollViewSnapStartedSignalConnect(SwigCPtr, new HandleRef(this, ip)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } } - public void Disconnect(System.Delegate func) + public void Disconnect(Delegate func) { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); + IntPtr ip = global::System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); { - Interop.ScrollView.ScrollViewSnapStartedSignalDisconnect(SwigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); + Tizen.NUI.Interop.ScrollView.ScrollViewSnapStartedSignalDisconnect(SwigCPtr, new HandleRef(this, ip)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } } public void Emit(ScrollView.SnapEvent arg) { - Interop.ScrollView.ScrollViewSnapStartedSignalEmit(SwigCPtr, ScrollView.SnapEvent.getCPtr(arg)); + Tizen.NUI.Interop.ScrollView.ScrollViewSnapStartedSignalEmit(SwigCPtr, ScrollView.SnapEvent.getCPtr(arg)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - public ScrollViewSnapStartedSignal() : this(Interop.ScrollView.NewScrollViewSnapStartedSignal(), true) + public ScrollViewSnapStartedSignal() : this(Tizen.NUI.Interop.ScrollView.NewScrollViewSnapStartedSignal(), true) { if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } diff --git a/src/Tizen.NUI/src/internal/Common/SnapType.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/SnapType.cs similarity index 96% rename from src/Tizen.NUI/src/internal/Common/SnapType.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/SnapType.cs index 9ecf44d9544..287d53317ce 100755 --- a/src/Tizen.NUI/src/internal/Common/SnapType.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Components/SnapType.cs @@ -15,7 +15,7 @@ * */ -namespace Tizen.NUI +namespace Tizen.NUI.Samples { internal enum SnapType { diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.CubeTransitionEffect.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Interop/Interop.CubeTransitionEffect.cs similarity index 99% rename from src/Tizen.NUI/src/internal/Interop/Interop.CubeTransitionEffect.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Interop/Interop.CubeTransitionEffect.cs index da41cc5485f..13e54653ef3 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.CubeTransitionEffect.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Interop/Interop.CubeTransitionEffect.cs @@ -15,7 +15,7 @@ * */ -namespace Tizen.NUI +namespace Tizen.NUI.Samples { internal static partial class Interop { diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.ItemView.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Interop/Interop.ItemView.cs similarity index 99% rename from src/Tizen.NUI/src/internal/Interop/Interop.ItemView.cs rename to test/Tizen.NUI.Samples/Tizen.NUI.Samples/Interop/Interop.ItemView.cs index 542ab651c1e..4c78ef23526 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.ItemView.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Interop/Interop.ItemView.cs @@ -15,7 +15,7 @@ * */ -namespace Tizen.NUI +namespace Tizen.NUI.Samples { internal static partial class Interop { diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Interop/NDalicPINVOKE.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Interop/NDalicPINVOKE.cs index 226c39d592a..4c745012f13 100644 --- a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Interop/NDalicPINVOKE.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Interop/NDalicPINVOKE.cs @@ -1,4 +1,5 @@ - +#if false +#error namespace Tizen.NUI.Samples { internal class NDalicPINVOKE @@ -6,3 +7,4 @@ internal class NDalicPINVOKE public const string Lib = "libdali2-csharp-binder.so"; } } +#endif \ No newline at end of file diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/NuiSample.snk b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/NuiSample.snk new file mode 100644 index 0000000000000000000000000000000000000000..d21014f1c58ee6ef115f9b939a7d75f2b6447cc3 GIT binary patch literal 596 zcmV-a0;~N80ssI2Bme+XQ$aES1ONa50097{y!QKGl@uSS6mG{&TMOv0ng&0QA2MJ| z5Z`V|hlm&`K)n^oJE5h(xvuVy;=V%aoC{y$E*))F0QSj4iC4U^><8<3Jz zShTpX1H%oMg9;a|kf|>;_6ia9dU$nyYalh}nZ8=KnnCU1e621kd1w3dn`l&0No(LS z(4I6y$h5*<>}>2zH@CY zyg+(q634ftCqN@CsiI}3{O(4+$U1gP+dc_fy@XG5J? z1j%7Gj`Qz7KG;^uf$b(~?5&u?kfZK_(vS1w`|`#?LxnTLDOA0_7MQ~TlG`O7zCTfD zq%FV8axHq9opXOdyJ=IiQ9)@v?7U6rtu)(d`xo6Cp9qOD$%H(sQCL#jYfbkD1(5gR z?Cfoq;({!gzI{vj>-9{YdmSC53*NV^-)I z^YVoKY$FVTQ?5xDsCA=BU=j0ng$rl8@@{L2qAn+>)Uur(+)gO-(2`txs16AUfY{e9 z^5TrfO~7X^(rWB(vSB8Y`Hus5q3jLOA=&q?ruPmj!TrrU{3mdd5d0qZ=|lz@9h#Y{ i^Ul>vU+6RiTdS^Udax97pMy5uv24tElw*w9g?lBM?Exe net6.0 Tizen.NUI.Samples - Tizen.NUI.Samples + NuiSample Tizen.NUI.Samples.Application + true + NuiSample.snk @@ -49,4 +51,3 @@ - diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/tizen-manifest.xml b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/tizen-manifest.xml index 5c4ea2f09f4..da4a714745c 100755 --- a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/tizen-manifest.xml +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/tizen-manifest.xml @@ -2,7 +2,7 @@ Date: Mon, 5 Aug 2024 21:58:58 +0900 Subject: [PATCH 055/198] [NUI] Add WebView Certificate policy decision error get and suspend --- .../Interop/Interop.WebCertificate.cs | 7 +++ .../src/internal/WebView/WebCertificate.cs | 46 +++++++++++++++++++ 2 files changed, 53 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.WebCertificate.cs b/src/Tizen.NUI/src/internal/Interop/Interop.WebCertificate.cs index b92c22bdf71..23e3965db12 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.WebCertificate.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.WebCertificate.cs @@ -37,6 +37,13 @@ internal static partial class WebCertificate [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebCertificate_IsContextSecure")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] public static extern bool IsContextSecure(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebCertificate_GetPolicyDecisionError")] + public static extern int GetPolicyDecisionError(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebCertificate_SuspendPolicyDecision")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool SuspendPolicyDecision(global::System.Runtime.InteropServices.HandleRef jarg1); } } } diff --git a/src/Tizen.NUI/src/internal/WebView/WebCertificate.cs b/src/Tizen.NUI/src/internal/WebView/WebCertificate.cs index 77670409b7e..06451a371fc 100755 --- a/src/Tizen.NUI/src/internal/WebView/WebCertificate.cs +++ b/src/Tizen.NUI/src/internal/WebView/WebCertificate.cs @@ -90,5 +90,51 @@ public void Allow(bool allowed) Interop.WebCertificate.Allow(SwigCPtr, allowed); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + + /// + /// Get certificate policy decision error. + /// + /// PolicyDecisionErrorType + [EditorBrowsable(EditorBrowsableState.Never)] + public PolicyDecisionErrorType PolicyDecisionError + { + get + { + int result = Interop.WebCertificate.GetPolicyDecisionError(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) return PolicyDecisionErrorType.Unknown; + return (PolicyDecisionErrorType)result; + } + } + + /// + /// Suspend certification policy decision. + /// + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public bool Suspend() + { + bool ret = Interop.WebCertificate.SuspendPolicyDecision(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + [EditorBrowsable(EditorBrowsableState.Never)] + public enum PolicyDecisionErrorType + { + CommonNameInvalid, //The server responded with a certificate whose common name did not match the host name. + DateInvalid, //The server responded with a certificate that by our clock, appears to either not yet be valid or to have expired. + AuthorityInvalid, // The server responded with a certificate that is signed by an authority we don't trust. + NoRevocationMechanism, // The certificate has no mechanism for determining if it is revoked. In effect, this certificate cannot be revoked. + UnableToCheckRevocation, // Revocation information for the security certificate for this site is not available. + Revoked, // The server responded with a certificate that has been revoked. + Invalid, // The server responded with a certificate that is invalid. + WeakAlgorithm, // The server responded with a certificate that is signed using a weak signature algorithm. + NonUniqueName, // The host name specified in the certificate is not unique. + WeakKey, // The server responded with a certificate that contains a weak key (e.g. a too-small RSA key). + PinnedKeyNotInChain, // The certificate didn't match the public key pins for the host name. + NameViolation, // The certificate claimed DNS names that are in violation of name constraints. + ValidityTooLong, // The certificate's validity period is too long. + Unknown = 1000 // Reported in case of wrong usage of ewk_certificate_policy_decision_error_get API. + } } } From ae10170f8f3ff0c1697138620585cdb18306f155 Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Wed, 7 Aug 2024 15:32:44 +0900 Subject: [PATCH 056/198] [NUI] Add WebView's JavascriptMessageHandler callback - JavascriptMessageHandler callback which has two arguments of msg name and body --- .../src/internal/Interop/Interop.WebView.cs | 3 +++ src/Tizen.NUI/src/public/WebView/WebView.cs | 20 +++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs b/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs index c35ad24d03d..93a471f79bb 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs @@ -195,6 +195,9 @@ internal static partial class WebView [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_AddJavaScriptMessageHandler")] public static extern void AddJavaScriptMessageHandler(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, global::System.Runtime.InteropServices.HandleRef jarg3); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_AddJavaScriptEntireMessageHandler")] + public static extern void AddJavaScriptEntireMessageHandler(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, global::System.Runtime.InteropServices.HandleRef jarg3); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterJavaScriptAlertCallback")] public static extern void RegisterJavaScriptAlertCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); diff --git a/src/Tizen.NUI/src/public/WebView/WebView.cs b/src/Tizen.NUI/src/public/WebView/WebView.cs index d0999046913..b0134213dbc 100755 --- a/src/Tizen.NUI/src/public/WebView/WebView.cs +++ b/src/Tizen.NUI/src/public/WebView/WebView.cs @@ -254,6 +254,13 @@ protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef [EditorBrowsable(EditorBrowsableState.Never)] public delegate void JavaScriptMessageHandler(string message); + /// + /// The callback function that is invoked when the message is received from the script. + /// + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + [EditorBrowsable(EditorBrowsableState.Never)] + public delegate void JavaScriptEntireMessageHandler(string messageName, string messageBody); + /// /// The callback function that is invoked when the message is received from the script. /// @@ -2470,6 +2477,19 @@ public void AddJavaScriptMessageHandler(string objectName, JavaScriptMessageHand if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Add a message handler into the WebView. + /// + /// The name of exposed object + /// The callback function + [EditorBrowsable(EditorBrowsableState.Never)] + public void AddJavaScriptMessageHandler(string objectName, JavaScriptEntireMessageHandler handler) + { + System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(handler); + Interop.WebView.AddJavaScriptEntireMessageHandler(SwigCPtr, objectName, new System.Runtime.InteropServices.HandleRef(this, ip)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + /// /// Registers a callback for JS alert. /// From 084ae8ddd3482cb3b0002ad6ed0ae5736756cf86 Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Wed, 21 Aug 2024 15:46:36 +0900 Subject: [PATCH 057/198] [NUI] Fix the handler's garbage collected exception in WebView --- src/Tizen.NUI/src/public/WebView/WebView.cs | 44 +++++++++++++++++---- 1 file changed, 37 insertions(+), 7 deletions(-) diff --git a/src/Tizen.NUI/src/public/WebView/WebView.cs b/src/Tizen.NUI/src/public/WebView/WebView.cs index b0134213dbc..bcbe42dbf9b 100755 --- a/src/Tizen.NUI/src/public/WebView/WebView.cs +++ b/src/Tizen.NUI/src/public/WebView/WebView.cs @@ -162,6 +162,7 @@ static WebView() private PlainTextReceivedCallback plainTextReceivedCallback; + /// /// Creates a WebView. /// @@ -232,6 +233,27 @@ protected override void Dispose(DisposeTypes type) //Called by User //Release your own managed resources here. //You should release all of your own disposable objects here. + + if(handlerRootMap != null) + { + foreach (string key in handlerRootMap?.Keys) + { + Interop.WebView.AddJavaScriptMessageHandler(SwigCPtr, key, new HandleRef(null, IntPtr.Zero)); + } + handlerRootMap?.Clear(); + handlerRootMap = null; + } + + if(_addJavaScriptEntireMessageHandlerMap != null) + { + foreach (string key in _addJavaScriptEntireMessageHandlerMap?.Keys) + { + Interop.WebView.AddJavaScriptEntireMessageHandler(SwigCPtr, key, new HandleRef(null, IntPtr.Zero)); + } + _addJavaScriptEntireMessageHandlerMap?.Clear(); + _addJavaScriptEntireMessageHandlerMap = null; + } + BackForwardList.Dispose(); Settings.Dispose(); } @@ -2443,6 +2465,9 @@ public void EvaluateJavaScript(string script) if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + private Dictionary _evaluateJavaScriptHandlerMap = new Dictionary(); + private int _evaluateJavaScriptCallbackId = 0; + /// /// Evaluates JavaScript code represented as a string. /// @@ -2451,7 +2476,14 @@ public void EvaluateJavaScript(string script) [EditorBrowsable(EditorBrowsableState.Never)] public void EvaluateJavaScript(string script, JavaScriptMessageHandler handler) { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(handler); + var id = ++_evaluateJavaScriptCallbackId; + JavaScriptMessageHandler wrapper = (msg) => + { + handler(msg); + _evaluateJavaScriptHandlerMap.Remove(id); + }; + _evaluateJavaScriptHandlerMap.Add(id, wrapper); + System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(wrapper); Interop.WebView.EvaluateJavaScript(SwigCPtr, script, new global::System.Runtime.InteropServices.HandleRef(this, ip)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } @@ -2464,12 +2496,7 @@ public void EvaluateJavaScript(string script, JavaScriptMessageHandler handler) [EditorBrowsable(EditorBrowsableState.Never)] public void AddJavaScriptMessageHandler(string objectName, JavaScriptMessageHandler handler) { - if (handlerRootMap.ContainsKey(objectName)) - { - return; - } - - handlerRootMap.Add(objectName, handler); + handlerRootMap[objectName] = handler; System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(handler); Interop.WebView.AddJavaScriptMessageHandler(SwigCPtr, objectName, new System.Runtime.InteropServices.HandleRef(this, ip)); @@ -2477,6 +2504,8 @@ public void AddJavaScriptMessageHandler(string objectName, JavaScriptMessageHand if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + private Dictionary _addJavaScriptEntireMessageHandlerMap = new Dictionary(); + /// /// Add a message handler into the WebView. /// @@ -2485,6 +2514,7 @@ public void AddJavaScriptMessageHandler(string objectName, JavaScriptMessageHand [EditorBrowsable(EditorBrowsableState.Never)] public void AddJavaScriptMessageHandler(string objectName, JavaScriptEntireMessageHandler handler) { + _addJavaScriptEntireMessageHandlerMap[objectName] = handler; System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(handler); Interop.WebView.AddJavaScriptEntireMessageHandler(SwigCPtr, objectName, new System.Runtime.InteropServices.HandleRef(this, ip)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); From 81de19efaad2be5a6ed814991fc1cf439741e00a Mon Sep 17 00:00:00 2001 From: Seungho Baek Date: Tue, 13 Aug 2024 18:40:13 +0900 Subject: [PATCH 058/198] [NUI.Scene3D] Add Capture for SceneView Signed-off-by: Seungho Baek --- .../src/internal/Interop/Interop.SceneView.cs | 9 + .../Controls/CaptureFinishedEventArgs.cs | 48 +++++ .../src/public/Controls/SceneView.cs | 176 ++++++++++++++++++ .../src/internal/Interop/Interop.ImageUrl.cs | 4 + .../BaseComponents/VisibilityChangeType.cs | 1 - .../Samples/Scene3DCaptureTest.cs | 171 +++++++++++++++++ 6 files changed, 408 insertions(+), 1 deletion(-) create mode 100644 src/Tizen.NUI.Scene3D/src/public/Controls/CaptureFinishedEventArgs.cs create mode 100755 test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DCaptureTest.cs diff --git a/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.SceneView.cs b/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.SceneView.cs index 0d10ba48259..d844df74cf3 100755 --- a/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.SceneView.cs +++ b/src/Tizen.NUI.Scene3D/src/internal/Interop/Interop.SceneView.cs @@ -117,6 +117,15 @@ internal static partial class SceneView [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_SceneView_CameraTransitionFinishedSignal_Disconnect")] public static extern void CameraTransitionFinishedDisconnect(global::System.Runtime.InteropServices.HandleRef actor, global::System.Runtime.InteropServices.HandleRef handler); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_SceneView_Capture")] + public static extern int Capture(global::System.Runtime.InteropServices.HandleRef sceneView, global::System.Runtime.InteropServices.HandleRef camera, global::System.Runtime.InteropServices.HandleRef size); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_SceneView_CaptureFinishedSignal_Connect")] + public static extern void CaptureFinishedConnect(global::System.Runtime.InteropServices.HandleRef actor, global::System.Runtime.InteropServices.HandleRef handler); + + [global::System.Runtime.InteropServices.DllImport(Libraries.Scene3D, EntryPoint = "CSharp_Dali_SceneView_CaptureFinishedSignal_Disconnect")] + public static extern void CaptureFinishedDisconnect(global::System.Runtime.InteropServices.HandleRef actor, global::System.Runtime.InteropServices.HandleRef handler); } } } diff --git a/src/Tizen.NUI.Scene3D/src/public/Controls/CaptureFinishedEventArgs.cs b/src/Tizen.NUI.Scene3D/src/public/Controls/CaptureFinishedEventArgs.cs new file mode 100644 index 00000000000..588f9cefbbd --- /dev/null +++ b/src/Tizen.NUI.Scene3D/src/public/Controls/CaptureFinishedEventArgs.cs @@ -0,0 +1,48 @@ +/* + * Copyright(c) 2024 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +using System; +using System.ComponentModel; + +namespace Tizen.NUI.Scene3D +{ + /// + /// Event arguments of SceneView capture finished event. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public class CaptureFinishedEventArgs : EventArgs + { + /// + /// Integer ID of the capture request. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public int CaptureId + { + get; set; + } + + /// + /// ImageUrl of the captured result + /// If the capture is failed, it is null. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public ImageUrl CapturedImageUrl + { + get; set; + } + } +} diff --git a/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs b/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs index d3698100ebd..e0086234e0a 100755 --- a/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs +++ b/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs @@ -22,6 +22,9 @@ using Tizen.NUI; using Tizen.NUI.Binding; using Tizen.NUI.BaseComponents; +using System.Threading.Tasks; +using System.Collections.Generic; +using System.Diagnostics; namespace Tizen.NUI.Scene3D { @@ -68,14 +71,24 @@ namespace Tizen.NUI.Scene3D /// 10 public class SceneView : View { + private Dictionary> asyncCaptureIds = new(); private string skyboxUrl; + // CameraTransitionFinishedEvent private EventHandler cameraTransitionFinishedEventHandler; private CameraTransitionFinishedEventCallbackType cameraTransitionFinishedEventCallback; [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void CameraTransitionFinishedEventCallbackType(IntPtr data); + // CaptureFinishedEvent + private EventHandler captureFinishedEventHandler; + private EventHandler asyncCaptureFinishedEventHandler; + private CaptureFinishedEventCallbackType captureFinishedEventCallback; + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + private delegate void CaptureFinishedEventCallbackType(IntPtr data, int captureId, IntPtr capturedImageUrl); + internal SceneView(global::System.IntPtr cPtr, bool cMemoryOwn) : this(cPtr, cMemoryOwn, cMemoryOwn) { } @@ -104,6 +117,15 @@ protected override void Dispose(DisposeTypes type) cameraTransitionFinishedEventCallback = null; } + if (captureFinishedEventCallback != null) + { + NUILog.Debug($"[Dispose] captureFinishedEventCallback"); + + Interop.SceneView.CaptureFinishedDisconnect(GetBaseHandleCPtrHandleRef, captureFinishedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExistsDebug(); + captureFinishedEventCallback = null; + } + LayoutCount = 0; base.Dispose(type); @@ -170,6 +192,64 @@ public event EventHandler CameraTransitionFinished } } + /// + /// An event emitted when Capture is finished. + /// If Capture is successed, CaptureFinishedEventArgs includes finished capture ID and ImageUrl of the captured image. + /// If Capture is failed, the ImageUrl is null. + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public event EventHandler CaptureFinished + { + add + { + if (captureFinishedEventHandler == null) + { + captureFinishedEventCallback = OnCaptureFinished; + Interop.SceneView.CaptureFinishedConnect(SwigCPtr, captureFinishedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + } + captureFinishedEventHandler += value; + } + + remove + { + captureFinishedEventHandler -= value; + if (captureFinishedEventHandler == null && captureFinishedEventCallback != null) + { + Interop.SceneView.CaptureFinishedDisconnect(SwigCPtr, captureFinishedEventCallback.ToHandleRef(this)); + NDalicPINVOKE.ThrowExceptionIfExists(); + captureFinishedEventCallback = null; + } + } + } + + /// + /// An event emitted when CaptureAsync is finished. + /// + private event EventHandler AsyncCaptureFinished + { + add + { + if (asyncCaptureFinishedEventHandler == null) + { + CaptureFinished += dummy; + } + asyncCaptureFinishedEventHandler += value; + } + + remove + { + asyncCaptureFinishedEventHandler -= value; + if (asyncCaptureFinishedEventHandler == null) + { + CaptureFinished += dummy; + } + } + } + + void dummy(object sender, CaptureFinishedEventArgs e) {} + /// /// Set/Get the ImageBasedLight ScaleFactor. /// Scale factor controls light source intensity in [0.0f, 1.0f] @@ -573,6 +653,82 @@ public void ResetResolution() if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Requests to capture this SceneView with the Camera. + /// When the capture is finished, CaptureFinished Event is emited. + /// includes and . + /// If the capture is successful, the contains url of captured image. + /// If the capture fails, the is null. + /// + /// Camera to be used for capture. + /// captured size. + /// + /// The input camera should not be used for any other purpose during Capture. + /// (Simultaneous usage elsewhere may result in incorrect rendering.) + /// The camera is required to be added in this SceneView. (Not need to be a selected camera) + /// If the SceneView is disconnected from Scene, the left capture requests are canceled with fail. + /// + /// capture id that id unique value to distinguish each requiest. + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public int Capture(Scene3D.Camera camera, Vector2 size) + { + int id = Interop.SceneView.Capture(SwigCPtr, camera.SwigCPtr, Vector2.getCPtr(size)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return id; + } + + /// + /// Requests to capture this SceneView with the Camera asynchronously. + /// + /// Camera to be used for capture. + /// captured size. + /// + /// The input camera should not be used for any other purpose during Capture. + /// (Simultaneous usage elsewhere may result in incorrect rendering.) + /// The camera is required to be added in this SceneView. (Not need to be a selected camera) + /// If the SceneView is disconnected from Scene, the left capture requests are canceled with fail. + /// + /// + /// A task that represents the asynchronous operation. The task result contains the URL of the captured image. + /// If the capture is successful, the task result is the ImageURL. + /// If the capture fails, the task will complete with an + /// + // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) + [EditorBrowsable(EditorBrowsableState.Never)] + public Task CaptureAsync(Scene3D.Camera camera, Vector2 size) + { + void Handler(object _, CaptureFinishedEventArgs e) + { + if (asyncCaptureIds.TryGetValue(e.CaptureId, out var tcs)) + { + try + { + if (e.CapturedImageUrl != null) + { + tcs.SetResult(e.CapturedImageUrl); + } + else + { + tcs.SetException(new InvalidOperationException("Fail to Capture")); + } + } + finally + { + AsyncCaptureFinished -= Handler; + asyncCaptureIds.Remove(e.CaptureId); + } + } + }; + + AsyncCaptureFinished += Handler; + var captureId = Interop.SceneView.Capture(SwigCPtr, camera.SwigCPtr, Vector2.getCPtr(size)); + TaskCompletionSource ret = new TaskCompletionSource(); + asyncCaptureIds.Add(captureId, ret); + + return ret.Task; + } + internal void SetUseFramebuffer(bool useFramebuffer) { Interop.SceneView.UseFramebuffer(SwigCPtr, useFramebuffer); @@ -693,5 +849,25 @@ private void OnCameraTransitionFinished(IntPtr data) { cameraTransitionFinishedEventHandler?.Invoke(this, EventArgs.Empty); } + + // Callback for capture finished signal + private void OnCaptureFinished(IntPtr data, int captureId, IntPtr capturedImageUrl) + { + CaptureFinishedEventArgs e = new CaptureFinishedEventArgs(); + ImageUrl imageUrl = new ImageUrl(NUI.Interop.ImageUrl.NewImageUrl(new ImageUrl(capturedImageUrl, false).SwigCPtr), true); + NDalicPINVOKE.ThrowExceptionIfExists(); + + e.CaptureId = captureId; + e.CapturedImageUrl = imageUrl.HasBody() ? imageUrl : null; + + if (asyncCaptureIds.ContainsKey(e.CaptureId)) + { + asyncCaptureFinishedEventHandler?.Invoke(this, e); + } + else + { + captureFinishedEventHandler?.Invoke(this, e); + } + } } } diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.ImageUrl.cs b/src/Tizen.NUI/src/internal/Interop/Interop.ImageUrl.cs index adec6aeb37c..7f2d38d13f8 100644 --- a/src/Tizen.NUI/src/internal/Interop/Interop.ImageUrl.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.ImageUrl.cs @@ -24,6 +24,10 @@ internal static partial class Interop { internal static partial class ImageUrl { + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_ImageUrl_Copy")] + public static extern global::System.IntPtr NewImageUrl(global::System.Runtime.InteropServices.HandleRef csImageUrl); + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_ImageUrl")] public static extern void Delete(HandleRef jarg1); diff --git a/src/Tizen.NUI/src/public/BaseComponents/VisibilityChangeType.cs b/src/Tizen.NUI/src/public/BaseComponents/VisibilityChangeType.cs index e700b444791..cba1079e63d 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/VisibilityChangeType.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/VisibilityChangeType.cs @@ -34,5 +34,4 @@ public enum VisibilityChangeType /// 3 PARENT } - } diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DCaptureTest.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DCaptureTest.cs new file mode 100755 index 00000000000..f2fc108e29a --- /dev/null +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/Scene3DCaptureTest.cs @@ -0,0 +1,171 @@ +using System.Numerics; +using System.Reflection.Metadata.Ecma335; +using System.Threading.Tasks; +using global::System; +using Tizen.NUI; +using Tizen.NUI.BaseComponents; +using Tizen.NUI.Scene3D; + +namespace Tizen.NUI.Samples +{ + using log = Tizen.Log; + public class Scene3DCaptureTest : IExample + { + private Window window; + private SceneView sceneView; + private static readonly string resourcePath = Tizen.Applications.Application.Current.DirectoryInfo.Resource; + private Tizen.NUI.Scene3D.Camera[] cameras; + private string[] cameraName; + private int cameraIndex; + int captureId; + ImageView imageView; + ImageUrl imageUrl; + bool inCapture = false; + + public void Activate() + { + window = NUIApplication.GetDefaultWindow(); + Size2D windowSize = window.Size; + + sceneView = new SceneView() + { + Size = new Size(windowSize.Width, windowSize.Height), + PivotPoint = PivotPoint.TopLeft, + ParentOrigin = ParentOrigin.TopLeft, + PositionUsesPivotPoint = true, + BackgroundColor = new Color(0.85f, 0.85f, 0.85f, 1.0f), + UseFramebuffer = true, + }; + window.Add(sceneView); + + Light light = new Light() + { + Color = new Vector4(0.4f, 0.4f, 0.4f, 1.0f), + Position = new Vector3(-1.0f, 0.0f, 1.1f), + PositionUsesPivotPoint = true, + }; + light.LookAt(new Vector3(0.0f, 0.0f, 0.0f)); + sceneView.Add(light); + + cameras = new Scene3D.Camera[2]; + cameraName = new string[]{"camera1", "camera2"}; + Vector3[] cameraPosition = new Vector3[]{new Vector3(1.5f, 0.0f, 1.5f), new Vector3(-1.5f, -1.5f, 1.5f)}; + Vector3 modelPosition = new Vector3(-1.5f, 0.0f, 0.0f); + + cameraIndex = 0; + for(uint i = 0; i<2; ++i) + { + cameras[i] = new Scene3D.Camera() + { + Name = cameraName[i], + Position = cameraPosition[i], + NearPlaneDistance = 1.0f, + FarPlaneDistance = 10.0f, + }; + sceneView.AddCamera(cameras[i]); + } + cameras[1].FieldOfView = new Radian(new Degree(70.0f)); + + Model model = new Model(resourcePath + "models/BoxAnimated.glb") + { + PositionUsesPivotPoint = true, + Position = modelPosition, + Size = new Size(0.5f, 0.5f, 0.5f), + }; + sceneView.Add(model); + model.Add(cameras[0]); + sceneView.SelectCamera(cameraName[0]); + model.ResourcesLoaded += (s, e) => + { + SceneCapture(1); + }; + sceneView.Add(cameras[1]); + + cameras[0].LookAt(modelPosition); + cameras[1].LookAt(modelPosition); + + sceneView.CaptureFinished += (s, e) => + { + Tizen.Log.Error("NUI", $"Finished Capture ID : {e.CaptureId}\n"); + if(e.CapturedImageUrl == null) + { + Tizen.Log.Error("NUI", $"Capture Failed\n"); + return; + } + CreateImageView(e.CapturedImageUrl); + }; + + window.KeyEvent += WindowKeyEvent; + } + + private void WindowKeyEvent(object sender, Window.KeyEventArgs e) + { + if (e.Key.State == Key.StateType.Down) + { + if (e.Key.KeyPressedName == "1") + { + SceneCapture(cameraIndex); + } + else if (e.Key.KeyPressedName == "2") + { + SceneCaptureAsync(cameraIndex); + } + else + { + return; + } + + cameraIndex = 1 - cameraIndex; + sceneView.SelectCamera(cameraName[cameraIndex]); + } + } + + void SceneCapture(int captureCameraIndex) + { + captureId = sceneView.Capture(cameras[captureCameraIndex], new Vector2(300, 300)); + Tizen.Log.Error("NUI", $"Requestd Capture ID : {captureId}\n"); + } + + async void SceneCaptureAsync(int captureCameraIndex) + { + try + { + var url = await sceneView.CaptureAsync(cameras[captureCameraIndex], new Vector2(300, 300)); + Tizen.Log.Error("NUI", $"Finished Capture url : {url.ToString()}\n"); + CreateImageView(url); + } + catch (InvalidOperationException e) + { + Tizen.Log.Error("NUI", "Oops Capture is failed.\n"); + } + } + + void CreateImageView(ImageUrl capturedImageUrl) + { + if (imageView != null) + { + imageView.Dispose(); + } + if (imageUrl != null) + { + imageUrl.Dispose(); + } + imageUrl = capturedImageUrl; + + imageView = new ImageView(imageUrl.ToString()) + { + Size = new Size(300, 300), + PositionUsesPivotPoint = true, + ParentOrigin = ParentOrigin.BottomLeft, + PivotPoint = PivotPoint.BottomLeft + }; + window.Add(imageView); + } + + public void Deactivate() + { + window.KeyEvent -= WindowKeyEvent; + sceneView?.DisposeRecursively(); + } + } +} From 903182662a7d8a03762ff43e56cca823b9516a0b Mon Sep 17 00:00:00 2001 From: Jaehyun Cho Date: Tue, 27 Aug 2024 16:18:41 +0900 Subject: [PATCH 059/198] [NUI] Version Update (22338) --- packaging/csapi-tizenfx.spec | 2 +- packaging/version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/csapi-tizenfx.spec b/packaging/csapi-tizenfx.spec index 14583bb0204..6de68baaf5b 100644 --- a/packaging/csapi-tizenfx.spec +++ b/packaging/csapi-tizenfx.spec @@ -1,7 +1,7 @@ # Auto-generated from csapi-tizenfx.spec.in by makespec.sh %define TIZEN_NET_API_VERSION 12 -%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22337 +%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22338 %define TIZEN_NET_NUGET_VERSION 12.0.0.99999 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework diff --git a/packaging/version.txt b/packaging/version.txt index 9a29610e966..7b0b6b62810 100755 --- a/packaging/version.txt +++ b/packaging/version.txt @@ -6,4 +6,4 @@ RPM_VERSION=12.0.0.999 NUGET_VERSION=12.0.0.99999 # RPM Version Suffix -RPM_VERSION_SUFFIX=nui22337 +RPM_VERSION_SUFFIX=nui22338 From 9b89f5777b8c7fc6fb2d3bc92d17b2def31a4ab6 Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Thu, 22 Aug 2024 17:05:18 +0900 Subject: [PATCH 060/198] [NUI] Binding FrameUpdateCallbackInterface change Orientation Let we allow to FrameUpdateCallback get and set Orientation. Signed-off-by: Eunki, Hong --- .../Interop.FrameUpdateCallbackInterface.cs | 12 ++++++ .../Common/FrameUpdateCallbackInterface.cs | 39 +++++++++++++++++++ .../Samples/FrameUpdateCallbackTest.cs | 9 ++++- 3 files changed, 58 insertions(+), 2 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.FrameUpdateCallbackInterface.cs b/src/Tizen.NUI/src/internal/Interop/Interop.FrameUpdateCallbackInterface.cs index 72f1273c9fe..2c0ff938491 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.FrameUpdateCallbackInterface.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.FrameUpdateCallbackInterface.cs @@ -39,6 +39,18 @@ internal static partial class FrameUpdateCallbackInterface [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] public static extern bool FrameCallbackInterfaceBakePosition(global::System.IntPtr proxy, uint id, global::System.Runtime.InteropServices.HandleRef vector); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_FrameCallbackInterface_GetOrientation")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool FrameCallbackInterfaceGetOrientation(global::System.IntPtr proxy, uint id, global::System.Runtime.InteropServices.HandleRef orientation); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_FrameCallbackInterface_SetOrientation")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool FrameCallbackInterfaceSetOrientation(global::System.IntPtr proxy, uint id, global::System.Runtime.InteropServices.HandleRef orientation); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_FrameCallbackInterface_BakeOrientation")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool FrameCallbackInterfaceBakeOrientation(global::System.IntPtr proxy, uint id, global::System.Runtime.InteropServices.HandleRef orientation); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_FrameCallbackInterface_GetPositionAndSize")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] public static extern bool FrameCallbackInterfaceGetPositionAndSize(global::System.IntPtr proxy, uint id, global::System.Runtime.InteropServices.HandleRef vector, global::System.Runtime.InteropServices.HandleRef vector2); diff --git a/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs b/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs index a066a823cbd..86405ba442a 100755 --- a/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs +++ b/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs @@ -136,6 +136,45 @@ protected bool BakePosition(uint id, Vector3 position) return ret; } + /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + [EditorBrowsable(EditorBrowsableState.Never)] + protected bool GetOrientation(uint id, Rotation rotation) + { + if (proxyIntPtr == IntPtr.Zero) + { + return false; + } + bool ret = Interop.FrameUpdateCallbackInterface.FrameCallbackInterfaceGetOrientation(proxyIntPtr, id, Rotation.getCPtr(rotation)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + [EditorBrowsable(EditorBrowsableState.Never)] + protected bool SetOrientation(uint id, Rotation rotation) + { + if (proxyIntPtr == IntPtr.Zero) + { + return false; + } + bool ret = Interop.FrameUpdateCallbackInterface.FrameCallbackInterfaceSetOrientation(proxyIntPtr, id, Rotation.getCPtr(rotation)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + + /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + [EditorBrowsable(EditorBrowsableState.Never)] + protected bool BakeOrientation(uint id, Rotation rotation) + { + if (proxyIntPtr == IntPtr.Zero) + { + return false; + } + bool ret = Interop.FrameUpdateCallbackInterface.FrameCallbackInterfaceBakeOrientation(proxyIntPtr, id, Rotation.getCPtr(rotation)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool GetSize(uint id, Vector3 size) diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/FrameUpdateCallbackTest.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/FrameUpdateCallbackTest.cs index 6217203440b..7e0aa690d03 100644 --- a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/FrameUpdateCallbackTest.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/FrameUpdateCallbackTest.cs @@ -65,6 +65,8 @@ public class FrameUpdateCallbackTest : IExample private const int DEFAULT_SPACE = 9; private const int DEVIDE_BAR_SIZE = 4; + private const float DEGREE_PER_POSITION = 0.05f; + private const uint FRAME_UPDATE_CALLBACK_VERSION = 1u; public class FrameUpdateCallback : FrameUpdateCallbackInterface @@ -268,17 +270,20 @@ private void ComputeNewPositions(int totalTime) // check views in screen are still moving or stopped. float newPosition = viewPosition[i] + movement - lastMovement; + float positionDiff = 0.0f; if (i >= leftIndex && i <= rightIndex) { Vector3 previousPosition = new Vector3(); GetPosition(viewId[i], previousPosition); - if (Math.Abs(previousPosition.X - newPosition) >= 1.0f) + positionDiff = newPosition - previousPosition.X; + if (Math.Abs(positionDiff) >= 1.0f) { isStillMoving = false; } } - // update new position. + // update new position and rotiation SetPosition(viewId[i], new Vector3(newPosition, 0.0f, 0.0f)); + SetOrientation(viewId[i], new Rotation(new Radian(new Degree(positionDiff * DEGREE_PER_POSITION)), Vector3.ZAxis)); positionChanged = true; } isResetTouchedViewPossible = isStillMoving; From f21ed714a66c7992d543dc6a6509d77be8fe7123 Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Wed, 21 Aug 2024 13:12:16 +0900 Subject: [PATCH 061/198] [NUI] Make NativeImageSourceQueue.ColorFormat RGBA works as RGBA order Until now, RGBA works as BGRA order internally. It will make confuse to user. So we make BGR format at this PR #4383 Now it spend 2 years, and version changed as tizen_9.0 It is good time to change behavior of ColorFormat.RGBA8888 Signed-off-by: Eunki, Hong --- src/Tizen.NUI/src/public/Images/NativeImageQueue.cs | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/Tizen.NUI/src/public/Images/NativeImageQueue.cs b/src/Tizen.NUI/src/public/Images/NativeImageQueue.cs index 2146259fc31..9cc8aa0b980 100644 --- a/src/Tizen.NUI/src/public/Images/NativeImageQueue.cs +++ b/src/Tizen.NUI/src/public/Images/NativeImageQueue.cs @@ -26,7 +26,7 @@ namespace Tizen.NUI /// /// /// - /// NativeImageQueue queue = new NativeImageQueue(width,height,ColorFormat.RGBA8888); + /// NativeImageQueue queue = new NativeImageQueue(width,height,ColorFormat.BGRA8888); /// if(queue.CanDequeueBuffer()) /// { /// var buffer = queue.DequeueBuffer(ref bufferWidth,ref bufferHeight,ref bufferStride); @@ -63,20 +63,17 @@ public enum ColorFormat /// /// 8 red bits, 8 green bits, 8 blue bits /// - [System.ObsoleteAttribute("This property is obsolete. It's behavior could be changed in a future version. Currently it is same as BGR888", false)] - RGB888 = 0, + RGB888 = 3, /// /// 8 red bits, 8 green bits, 8 blue bits, alpha 8 bits /// - [System.ObsoleteAttribute("This property is obsolete. It's behavior could be changed in a future version. Currently it is same as BGRA8888", false)] - RGBA8888 = 1, + RGBA8888 = 4, /// /// 8 red bits, 8 green bits, 8 blue bits, and 8 ignored bits /// - [System.ObsoleteAttribute("This property is obsolete. It's behavior could be changed in a future version. Currently it is same as BGRX8888", false)] - RGBX8888 = 2, + RGBX8888 = 5, } /// From 9ebf01ffbfaa0ef93dff8f1c29f3841c1035dca2 Mon Sep 17 00:00:00 2001 From: Wonsik Jung Date: Wed, 28 Aug 2024 17:40:08 +0900 Subject: [PATCH 062/198] [NUI] Supports window background blur. Supports window background blur. This new APIs is to request window blur to window manager. Next time, behind blur will be added. --- .../src/internal/Interop/Interop.Window.cs | 6 ++ .../Interop/Interop.WindowBlurInfo.cs | 61 ++++++++++++++ .../src/public/Common/NUIConstants.cs | 21 ++++- src/Tizen.NUI/src/public/Window/Window.cs | 40 ++++++++++ .../src/public/Window/WindowBlurInfo.cs | 80 +++++++++++++++++++ .../Tizen.NUI.Samples/Samples/WindowTest1.cs | 17 +++- 6 files changed, 223 insertions(+), 2 deletions(-) create mode 100644 src/Tizen.NUI/src/internal/Interop/Interop.WindowBlurInfo.cs create mode 100644 src/Tizen.NUI/src/public/Window/WindowBlurInfo.cs diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs b/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs index ffd7ce6f88f..19d41f90abd 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs @@ -392,6 +392,12 @@ internal static partial class Window [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_RelativeMotionUnGrab")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] public static extern bool RelativeMotionUnGrab(global::System.Runtime.InteropServices.HandleRef window); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_SetBlur")] + public static extern void SetBlur(global::System.Runtime.InteropServices.HandleRef window, global::System.IntPtr blurInfo); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_GetBlur")] + public static extern global::System.IntPtr GetBlur(global::System.Runtime.InteropServices.HandleRef window); } } } diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.WindowBlurInfo.cs b/src/Tizen.NUI/src/internal/Interop/Interop.WindowBlurInfo.cs new file mode 100644 index 00000000000..6114c1216e5 --- /dev/null +++ b/src/Tizen.NUI/src/internal/Interop/Interop.WindowBlurInfo.cs @@ -0,0 +1,61 @@ +/* + * Copyright(c) 2024 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +using System.Runtime.InteropServices; + +namespace Tizen.NUI +{ + internal static partial class Interop + { + internal static partial class WindowBlurInfo + { + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_WindowBlurInfo")] + public static extern global::System.IntPtr New(); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_WindowBlurInfo_SWIG_0")] + public static extern global::System.IntPtr New(int nuiBlurType, int nuiBlurRadius, int nuiCornerRadius); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_WindowBlurInfo_SWIG_1")] + public static extern global::System.IntPtr New(int nuiBlurType, int nuiBlurRadius); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_WindowBlurInfo")] + public static extern void DeleteWindowBlurInfo(global::System.IntPtr nuiWindowBlurInfo); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WindowBlurInfo_EqualTo")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool EqualTo(global::System.IntPtr nuiWindowBlurInfo1, global::System.IntPtr nuiWindowBlurInfo2); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WindowBlurInfo_SetBlurType")] + public static extern void SetBlurType(global::System.IntPtr nuiWindowBlurInfo, int nuiWindowBlurType); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WindowBlurInfo_GetBlurType")] + public static extern int GetBlurType(global::System.IntPtr nuiWindowBlurInfo); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WindowBlurInfo_SetBlurRadius")] + public static extern void SetBlurRadius(global::System.IntPtr nuiWindowBlurInfo, int nuiWindowBlurRadius); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WindowBlurInfo_GetBlurRadius")] + public static extern int GetBlurRadius(global::System.IntPtr nuiWindowBlurInfo); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WindowBlurInfo_SetBackgroundCornerRadius")] + public static extern void SetBackgroundCornerRadius(global::System.IntPtr nuiWindowBlurInfo, int nuiCornerRadius); + + [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WindowBlurInfo_GetBackgroundCornerRadius")] + public static extern int GetBackgroundCornerRadius(global::System.IntPtr nuiWindowBlurInfo); + } + } +} diff --git a/src/Tizen.NUI/src/public/Common/NUIConstants.cs b/src/Tizen.NUI/src/public/Common/NUIConstants.cs index 65523d4d70a..afbae4b2723 100755 --- a/src/Tizen.NUI/src/public/Common/NUIConstants.cs +++ b/src/Tizen.NUI/src/public/Common/NUIConstants.cs @@ -783,7 +783,7 @@ public enum WindowType /// This is a desktop type. No other windows can be placed below this type of window. /// [EditorBrowsable(EditorBrowsableState.Never)] - Desktop + Desktop } /// @@ -2294,4 +2294,23 @@ public static Vector2 Left } } } + + /// + /// Enumeration of window blur type. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public enum WindowBlurType + { + /// + /// None type. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + None = 0, + /// + /// background blur for the window. + /// It has a blur effect ot th background area of the window, making it appear blurred. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + Background = 1, + } } diff --git a/src/Tizen.NUI/src/public/Window/Window.cs b/src/Tizen.NUI/src/public/Window/Window.cs index 1567a5ccc74..02060893906 100755 --- a/src/Tizen.NUI/src/public/Window/Window.cs +++ b/src/Tizen.NUI/src/public/Window/Window.cs @@ -2611,6 +2611,46 @@ public bool RelativeMotionUnGrab() return ret; } + /// + /// Sets or gets the window blur using window blur information. + /// + /// It is designed to apply a blur effect to a window based on specified parameters. + /// This supports different types of blurring effects, including blurring the window's background only. + /// Or blurring the area surrounding the window while keeping the window itself clear. + /// The more information is written WindowBlurInfo struct. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public WindowBlurInfo BlurInfo + { + get + { + IntPtr internalBlurInfo = Interop.Window.GetBlur(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + + WindowBlurInfo blurInfo = new WindowBlurInfo(); + blurInfo.BlurType = (WindowBlurType)Interop.WindowBlurInfo.GetBlurType(internalBlurInfo); + blurInfo.BlurRadius = Interop.WindowBlurInfo.GetBlurRadius(internalBlurInfo); + blurInfo.BackgroundCornerRadius = Interop.WindowBlurInfo.GetBackgroundCornerRadius(internalBlurInfo); + + Interop.WindowBlurInfo.DeleteWindowBlurInfo(internalBlurInfo); + + return blurInfo; + } + set + { + IntPtr internalBlurInfo = Interop.WindowBlurInfo.New((int)value.BlurType, value.BlurRadius, value.BackgroundCornerRadius); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + + try { + Interop.Window.SetBlur(SwigCPtr, internalBlurInfo); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + finally { + Interop.WindowBlurInfo.DeleteWindowBlurInfo(internalBlurInfo); + } + } + } + IntPtr IWindowProvider.WindowHandle => GetNativeWindowHandler(); float IWindowProvider.X => WindowPosition.X; float IWindowProvider.Y => WindowPosition.Y; diff --git a/src/Tizen.NUI/src/public/Window/WindowBlurInfo.cs b/src/Tizen.NUI/src/public/Window/WindowBlurInfo.cs new file mode 100644 index 00000000000..206bd7cae25 --- /dev/null +++ b/src/Tizen.NUI/src/public/Window/WindowBlurInfo.cs @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2023 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +using System; +using System.ComponentModel; +using Tizen.NUI.Binding; + +namespace Tizen.NUI +{ + /// + /// WindowBlurInfo is a struct designed to encapsulate the information required to apply a blur effect to a window. + /// It contains three properties that define how the blur effect is applied to the window, + /// including the type of blur, its intensity, and the corner rounding for the background blur. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public struct WindowBlurInfo + { + /// + /// The construct with blur type, radius and corner radius for background type. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public WindowBlurInfo(WindowBlurType blurType, int blurRadius, int cornerRadius) + { + BlurType = blurType; + BlurRadius = blurRadius; + BackgroundCornerRadius = cornerRadius; + } + + /// + /// The construct with blur type and radius. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public WindowBlurInfo(WindowBlurType blurType, int blurRadius) + { + BlurType = blurType; + BlurRadius = blurRadius; + BackgroundCornerRadius = 0; + } + + /// + /// Gets or sets the blur type of the window. + /// + /// The window blur type of the window. + [EditorBrowsable(EditorBrowsableState.Never)] + public WindowBlurType BlurType {get; set;} + + /// + /// Gets or sets the blur radius of the window. + /// + /// The blur radius of the window. + [EditorBrowsable(EditorBrowsableState.Never)] + public int BlurRadius {get; set;} + + /// + /// Gets or sets the corner radius of the window. + /// It is only useful when window blur type is background. + /// + /// When applying the background corner radius, ensure that the window's own corner radius is applied first. + /// The blur effect will respect the window's pre-defined corner radius settings + /// before applying the specified background corner radius. + /// + /// The corner radius of the window. + [EditorBrowsable(EditorBrowsableState.Never)] + public int BackgroundCornerRadius {get; set;} + } +} diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/WindowTest1.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/WindowTest1.cs index bc61186a13c..1da43a490b9 100644 --- a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/WindowTest1.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/WindowTest1.cs @@ -291,6 +291,9 @@ void Initialize() mainWin.TouchEvent += WinTouchEvent; mainWin.BackgroundColor = Color.Cyan; + Rectangle rec = new Rectangle(20, 10, 400, 300); + mainWin.WindowPositionSize = rec; + Information.TryGetValue("http://tizen.org/feature/screen.width", out screenWidth); Information.TryGetValue("http://tizen.org/feature/screen.height", out screenHeight); log.Fatal(tag, $"Initialize= screenWidth {screenWidth}, screenHeight {screenHeight} "); @@ -416,6 +419,9 @@ void CreateSubWindow() return false; }; + subWindow.SetTransparency(true); + subWindow.BackgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f); + var root = new View() { Layout = new LinearLayout() @@ -424,7 +430,6 @@ void CreateSubWindow() }, WidthResizePolicy = ResizePolicyType.FillToParent, HeightResizePolicy = ResizePolicyType.FillToParent, - BackgroundColor = Color.Brown, }; var image = new ImageView() @@ -451,6 +456,8 @@ void CreateSubWindow() subWindow.KeyEvent += OnSubWindowKeyEvent; subWindow.MoveCompleted += OnSubWindowMoveCompleted; subWindow.ResizeCompleted += OnSubWindowResizeCompleted; + + subWindow.BlurInfo = new WindowBlurInfo(WindowBlurType.Background, 10, 50); } else { @@ -569,6 +576,14 @@ public void OnSubWindowKeyEvent(object sender, Window.KeyEventArgs e) break; case KEY_NUM_8: + WindowBlurInfo blurInfo = subWindow.BlurInfo; + log.Fatal(tag, $"blur type={blurInfo.BlurType}"); + log.Fatal(tag, $"blur radius={blurInfo.BlurRadius}"); + log.Fatal(tag, $"background Corner Radius={blurInfo.BackgroundCornerRadius}"); + blurInfo.BlurType = WindowBlurType.Background; + blurInfo.BlurRadius += 10; + blurInfo.BackgroundCornerRadius += 10; + subWindow.BlurInfo = blurInfo; break; case KEY_NUM_9: From 37e197841848ae2e52a2da2509d23beb82b23224 Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Sun, 25 Aug 2024 16:14:22 +0900 Subject: [PATCH 063/198] [NUI] Fix TableView TC fail issue again in proper way - Fix the https://github.com/Samsung/TizenFX/pull/6258 correctly - This is for https://github.sec.samsung.net/NUI/home/issues/25 - locally applied image has been passed the TCT --- .../src/public/BaseComponents/ViewInternal.cs | 158 +++++++++--------- 1 file changed, 79 insertions(+), 79 deletions(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs b/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs index e0a94fdef35..8e1eb8a28f4 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs @@ -1356,85 +1356,90 @@ protected override void Dispose(DisposeTypes type) //_mergedStyle = null; - internalMaximumSize?.Dispose(); - internalMaximumSize = null; - internalMinimumSize?.Dispose(); - internalMinimumSize = null; - internalMargin?.Dispose(); - internalMargin = null; - internalPadding?.Dispose(); - internalPadding = null; - internalSizeModeFactor?.Dispose(); - internalSizeModeFactor = null; - internalCellIndex?.Dispose(); - internalCellIndex = null; - internalBackgroundColor?.Dispose(); - internalBackgroundColor = null; - internalColor?.Dispose(); - internalColor = null; - internalPivotPoint?.Dispose(); - internalPivotPoint = null; - internalPosition?.Dispose(); - internalPosition = null; - internalPosition2D?.Dispose(); - internalPosition2D = null; - internalScale?.Dispose(); - internalScale = null; - internalSize?.Dispose(); - internalSize = null; - internalSize2D?.Dispose(); - internalSize2D = null; - - panGestureDetector?.Dispose(); - panGestureDetector = null; - longGestureDetector?.Dispose(); - longGestureDetector = null; - pinchGestureDetector?.Dispose(); - pinchGestureDetector = null; - tapGestureDetector?.Dispose(); - tapGestureDetector = null; - rotationGestureDetector?.Dispose(); - rotationGestureDetector = null; - - internalCurrentParentOrigin?.Dispose(); - internalCurrentParentOrigin = null; - internalCurrentAnchorPoint?.Dispose(); - internalCurrentAnchorPoint = null; - internalTargetSize?.Dispose(); - internalTargetSize = null; - internalCurrentSize?.Dispose(); - internalCurrentSize = null; - internalCurrentPosition?.Dispose(); - internalCurrentPosition = null; - internalCurrentWorldPosition?.Dispose(); - internalCurrentWorldPosition = null; - internalCurrentScale?.Dispose(); - internalCurrentScale = null; - internalCurrentWorldScale?.Dispose(); - internalCurrentWorldScale = null; - internalCurrentColor?.Dispose(); - internalCurrentColor = null; - internalCurrentWorldColor?.Dispose(); - internalCurrentWorldColor = null; - internalSizeModeFactor?.Dispose(); - internalSizeModeFactor = null; - internalCurrentScreenPosition?.Dispose(); - internalCurrentScreenPosition = null; - - if (visualContainers != null) - { - foreach (var visualContainer in visualContainers) - { - visualContainer?.Dispose(); - } - visualContainers = null; - } - if (type == DisposeTypes.Explicit) { //Called by User //Release your own managed resources here. //You should release all of your own disposable objects here. + internalMaximumSize?.Dispose(); + internalMaximumSize = null; + internalMinimumSize?.Dispose(); + internalMinimumSize = null; + internalMargin?.Dispose(); + internalMargin = null; + internalPadding?.Dispose(); + internalPadding = null; + internalSizeModeFactor?.Dispose(); + internalSizeModeFactor = null; + internalCellIndex?.Dispose(); + internalCellIndex = null; + internalBackgroundColor?.Dispose(); + internalBackgroundColor = null; + internalColor?.Dispose(); + internalColor = null; + internalPivotPoint?.Dispose(); + internalPivotPoint = null; + internalPosition?.Dispose(); + internalPosition = null; + internalPosition2D?.Dispose(); + internalPosition2D = null; + internalScale?.Dispose(); + internalScale = null; + internalSize?.Dispose(); + internalSize = null; + internalSize2D?.Dispose(); + internalSize2D = null; + + panGestureDetector?.Dispose(); + panGestureDetector = null; + longGestureDetector?.Dispose(); + longGestureDetector = null; + pinchGestureDetector?.Dispose(); + pinchGestureDetector = null; + tapGestureDetector?.Dispose(); + tapGestureDetector = null; + rotationGestureDetector?.Dispose(); + rotationGestureDetector = null; + + internalCurrentParentOrigin?.Dispose(); + internalCurrentParentOrigin = null; + internalCurrentAnchorPoint?.Dispose(); + internalCurrentAnchorPoint = null; + internalTargetSize?.Dispose(); + internalTargetSize = null; + internalCurrentSize?.Dispose(); + internalCurrentSize = null; + internalCurrentPosition?.Dispose(); + internalCurrentPosition = null; + internalCurrentWorldPosition?.Dispose(); + internalCurrentWorldPosition = null; + internalCurrentScale?.Dispose(); + internalCurrentScale = null; + internalCurrentWorldScale?.Dispose(); + internalCurrentWorldScale = null; + internalCurrentColor?.Dispose(); + internalCurrentColor = null; + internalCurrentWorldColor?.Dispose(); + internalCurrentWorldColor = null; + internalSizeModeFactor?.Dispose(); + internalSizeModeFactor = null; + internalCurrentScreenPosition?.Dispose(); + internalCurrentScreenPosition = null; + + if (visualContainers != null) + { + foreach (var visualContainer in visualContainers) + { + visualContainer?.Dispose(); + } + visualContainers = null; + } + + foreach (View view in Children) + { + view.InternalParent = null; + } + if (themeData != null) { themeData.selectorData?.Reset(this); @@ -1461,11 +1466,6 @@ protected override void Dispose(DisposeTypes type) DisConnectFromSignals(); - foreach (View view in Children) - { - if (view != null) { view.InternalParent = null; } - } - backgroundExtraDataUpdatedFlag = BackgroundExtraDataUpdatedFlag.None; LayoutCount = 0; From 90c2f3664ebd98f6e929842bd7e610e92cdb715f Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Mon, 26 Aug 2024 13:19:29 +0900 Subject: [PATCH 064/198] [NUI] Add missing privilege comments --- src/Tizen.NUI/src/public/Window/Window.cs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/Tizen.NUI/src/public/Window/Window.cs b/src/Tizen.NUI/src/public/Window/Window.cs index 02060893906..d00d5ccd577 100755 --- a/src/Tizen.NUI/src/public/Window/Window.cs +++ b/src/Tizen.NUI/src/public/Window/Window.cs @@ -869,6 +869,8 @@ public void SetInputRegion(Rectangle inputRegion) /// /// The notification window level. /// True if no error occurred, false otherwise. + /// http://tizen.org/privilege/window.priority.set + /// This exception can be thrown due to permission denied. /// 3 public bool SetNotificationLevel(NotificationLevel level) { @@ -923,6 +925,8 @@ public bool IsOpaqueState() /// /// The screen mode. /// True if no error occurred, false otherwise. + /// http://tizen.org/privilege/display + /// This exception can be thrown due to permission denied. /// 4 public bool SetScreenOffMode(ScreenOffMode screenOffMode) { @@ -948,6 +952,8 @@ public ScreenOffMode GetScreenOffMode() /// /// The preferred brightness (0 to 100). /// True if no error occurred, false otherwise. + /// http://tizen.org/privilege/display + /// This exception can be thrown due to permission denied. /// 3 public bool SetBrightness(int brightness) { @@ -1105,6 +1111,8 @@ public void KeepRendering(float durationSeconds) /// /// The key code to grab. /// True if the grab succeeds. + /// http://tizen.org/privilege/keygrab + /// This exception can be thrown due to permission denied. /// 3 public bool GrabKeyTopmost(int DaliKey) { @@ -1119,6 +1127,8 @@ public bool GrabKeyTopmost(int DaliKey) /// /// The key code to ungrab. /// True if the ungrab succeeds. + /// http://tizen.org/privilege/keygrab + /// This exception can be thrown due to permission denied. /// 3 public bool UngrabKeyTopmost(int DaliKey) { @@ -1137,6 +1147,8 @@ public bool UngrabKeyTopmost(int DaliKey) /// The key code to grab. /// The grab mode for the key. /// True if the grab succeeds. + /// http://tizen.org/privilege/keygrab + /// This exception can be thrown due to permission denied. /// 3 public bool GrabKey(int DaliKey, KeyGrabMode GrabMode) { @@ -1151,6 +1163,8 @@ public bool GrabKey(int DaliKey, KeyGrabMode GrabMode) /// /// The key code to ungrab. /// True if the ungrab succeeds. + /// http://tizen.org/privilege/keygrab + /// This exception can be thrown due to permission denied. /// 3 public bool UngrabKey(int DaliKey) { From 49533674a67d79977db4cb5be8c54e24198f7f26 Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Thu, 29 Aug 2024 18:52:39 +0900 Subject: [PATCH 065/198] [NUI] Support FrameSpeedFactor for AnimatedImage relative classes Let we make some property to control the speed of animated image. If we want to play animation 2x speed, Set this value as 2.0f. If we want to play animation 0.5x speed, Set this value as 0.5f. Note : For the platform safety reason, let we constraint the input value as 0.01f to 100.0f Relative dali patch : https://review.tizen.org/gerrit/c/platform/core/uifw/dali-toolkit/+/316847 Signed-off-by: Eunki, Hong --- .../BaseComponents/AnimatedImageView.cs | 45 +++++++++++++++ .../BaseComponents/LottieAnimationView.cs | 55 ++++++++++++++++++- .../src/public/Visuals/VisualConstants.cs | 14 +++++ .../VisualObject/AnimatedImageVisual.cs | 22 ++++++++ .../testcase/TSAnimatedImageView.cs | 29 ++++++++++ .../Samples/LottieAnimationTest.cs | 1 + 6 files changed, 165 insertions(+), 1 deletion(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/AnimatedImageView.cs b/src/Tizen.NUI/src/public/BaseComponents/AnimatedImageView.cs index 9f546335f88..3d47a406037 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/AnimatedImageView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/AnimatedImageView.cs @@ -42,6 +42,7 @@ public partial class AnimatedImageView : ImageView ImageVisualProperty.FrameDelay, ImageVisualProperty.LoopCount, ImageVisualProperty.StopBehavior, + ImageVisualProperty.FrameSpeedFactor, }; private List resourceURLs = new List(); #endregion Private @@ -284,6 +285,50 @@ private StopBehaviorType InternalStopBehavior } } + /// + /// Specifies a speed factor for the animated image frame. + /// + /// + /// The speed factor is a multiplier of the normal velocity of the animation. Values between [0,1] will + /// slow down the animation and values above one will speed up the animation. + /// + /// The range of this value is clamped between [0.01f ~ 100.0f]. + /// + /// Inhouse API. + /// The default is 1.0f. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public float FrameSpeedFactor + { + get + { + return InternalFrameSpeedFactor; + } + set + { + InternalFrameSpeedFactor = value; + NotifyPropertyChanged(); + } + } + + private float InternalFrameSpeedFactor + { + get + { + float ret = 1.0f; + + using PropertyValue frameSpeedFactor = GetCachedImageVisualProperty(ImageVisualProperty.FrameSpeedFactor); + frameSpeedFactor?.Get(out ret); + + return ret; + } + set + { + using PropertyValue setValue = new PropertyValue(value); + UpdateImage(ImageVisualProperty.FrameSpeedFactor, setValue); + } + } + /// /// Get the number of total frames /// diff --git a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs index 62779ba4006..3af4bd70e91 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs @@ -77,6 +77,7 @@ public LottieAnimationView(float scale = 1.0f, bool shown = true) : base() currentStates.loopCount = 1; currentStates.loopMode = LoopingModeType.Restart; currentStates.stopEndAction = StopBehaviorType.CurrentFrame; + currentStates.frameSpeedFactor = 1.0f; currentStates.framePlayRangeMin = -1; currentStates.framePlayRangeMax = -1; currentStates.totalFrame = -1; @@ -216,6 +217,7 @@ private string InternalURL using PropertyValue synchronousLoading = new PropertyValue(currentStates.synchronousLoading); using PropertyValue enableFrameCache = new PropertyValue(currentStates.enableFrameCache); using PropertyValue notifyAfterRasterization = new PropertyValue(currentStates.notifyAfterRasterization); + using PropertyValue frameSpeedFactor = new PropertyValue(currentStates.frameSpeedFactor); map.Add(Visual.Property.Type, type) .Add(ImageVisualProperty.URL, url) @@ -225,7 +227,8 @@ private string InternalURL .Add(ImageVisualProperty.RedrawInScalingDown, redrawInScalingDown) .Add(ImageVisualProperty.SynchronousLoading, synchronousLoading) .Add(ImageVisualProperty.EnableFrameCache, enableFrameCache) - .Add(ImageVisualProperty.NotifyAfterRasterization, notifyAfterRasterization); + .Add(ImageVisualProperty.NotifyAfterRasterization, notifyAfterRasterization) + .Add(ImageVisualProperty.FrameSpeedFactor, frameSpeedFactor); if (currentStates.desiredWidth > 0) { @@ -779,6 +782,53 @@ private bool InternalNotifyAfterRasterization return currentStates.notifyAfterRasterization; } } + + /// + /// Specifies a speed factor for the animated image frame. + /// + /// + /// The speed factor is a multiplier of the normal velocity of the animation. Values between [0,1] will + /// slow down the animation and values above one will speed up the animation. + /// + /// The range of this value is clamped between [0.01f ~ 100.0f]. + /// + /// Inhouse API. + /// The default is 1.0f. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public float FrameSpeedFactor + { + get + { + return InternalFrameSpeedFactor; + } + set + { + InternalFrameSpeedFactor = value; + NotifyPropertyChanged(); + } + } + + private float InternalFrameSpeedFactor + { + set + { + if (currentStates.frameSpeedFactor != value) + { + currentStates.changed = true; + currentStates.frameSpeedFactor = value; + + NUILog.Debug($"<[{GetId()}]SET currentStates.FrameSpeedFactor={currentStates.frameSpeedFactor}>"); + + Interop.View.InternalUpdateVisualPropertyFloat(this.SwigCPtr, ImageView.Property.IMAGE, ImageVisualProperty.FrameSpeedFactor, currentStates.frameSpeedFactor); + } + } + get + { + NUILog.Debug($"FrameSpeedFactor get! {currentStates.frameSpeedFactor}"); + return currentStates.frameSpeedFactor; + } + } #endregion Property @@ -1103,6 +1153,7 @@ protected override void UpdateImage() UpdateImage(ImageVisualProperty.SynchronousLoading, new PropertyValue(currentStates.synchronousLoading), false); UpdateImage(ImageVisualProperty.EnableFrameCache, new PropertyValue(currentStates.enableFrameCache), false); UpdateImage(ImageVisualProperty.NotifyAfterRasterization, new PropertyValue(currentStates.notifyAfterRasterization), false); + UpdateImage(ImageVisualProperty.FrameSpeedFactor, new PropertyValue(currentStates.frameSpeedFactor), false); // Do not cache PlayRange and TotalFrameNumber into cachedImagePropertyMap. // (To keep legacy implements behaviour) @@ -1495,6 +1546,7 @@ internal void FlushLottieMessages() ImageVisualProperty.RedrawInScalingDown, ImageVisualProperty.EnableFrameCache, ImageVisualProperty.NotifyAfterRasterization, + ImageVisualProperty.FrameSpeedFactor, }; private struct states @@ -1503,6 +1555,7 @@ private struct states internal int loopCount; internal LoopingModeType loopMode; internal StopBehaviorType stopEndAction; + internal float frameSpeedFactor; internal int framePlayRangeMin; internal int framePlayRangeMax; internal int totalFrame; diff --git a/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs b/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs index 5b758d46a3c..ae43965d2e0 100755 --- a/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs +++ b/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs @@ -1032,6 +1032,20 @@ public struct ImageVisualProperty /// [EditorBrowsable(EditorBrowsableState.Never)] public static readonly int SynchronousSizing = NDalic.ImageVisualOrientationCorrection + 18; + + /// + /// @brief Specifies a speed factor for the animated image frame. + /// @details Name "frameSpeedFactor", type Property::FLOAT. + /// + /// The speed factor is a multiplier of the normal velocity of the animation. Values between [0,1] will + /// slow down the animation and values above one will speed up the animation. + /// + /// @note The range of this value is clamped between [0.01f ~ 100.0f]. + /// It might be supported out of bound, and negative value in future. + /// @note Used by the ImageVisual and AnimatedVectorImageVisual. The default is 1.0f. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public static readonly int FrameSpeedFactor = NDalic.ImageVisualOrientationCorrection + 19; } /// diff --git a/src/Tizen.NUI/src/public/Visuals/VisualObject/AnimatedImageVisual.cs b/src/Tizen.NUI/src/public/Visuals/VisualObject/AnimatedImageVisual.cs index 3875bc53273..0f2f8d19ecb 100644 --- a/src/Tizen.NUI/src/public/Visuals/VisualObject/AnimatedImageVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/VisualObject/AnimatedImageVisual.cs @@ -142,6 +142,28 @@ public Tizen.NUI.BaseComponents.AnimatedImageView.StopBehaviorType StopBehavior } } + /// + /// Gets and sets the speed factor for the AnimatedImageVisual frame rendering. + /// The default is 1.0f. If the number is less than 1.0f then it will play slower than normal case. + /// If the number is greater than 1.0f then it will play faster than normal case. + /// We will clamp the value between [0.01f 100.0f] internally. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public float FrameSpeedFactor + { + set + { + UpdateVisualProperty((int)Tizen.NUI.ImageVisualProperty.FrameSpeedFactor, new PropertyValue(value)); + } + get + { + float ret = 1.0f; + var propertyValue = GetCachedVisualProperty((int)Tizen.NUI.ImageVisualProperty.FrameSpeedFactor); + propertyValue?.Get(out ret); + return ret; + } + } + /// /// Get the number of total frames. /// Or -1 if image is invalid, or not loaded yet. diff --git a/test/Tizen.NUI.Devel.Tests.Ubuntu/Tizen.NUI.Devel.Tests/testcase/TSAnimatedImageView.cs b/test/Tizen.NUI.Devel.Tests.Ubuntu/Tizen.NUI.Devel.Tests/testcase/TSAnimatedImageView.cs index a77db5fa837..0caba292f61 100644 --- a/test/Tizen.NUI.Devel.Tests.Ubuntu/Tizen.NUI.Devel.Tests/testcase/TSAnimatedImageView.cs +++ b/test/Tizen.NUI.Devel.Tests.Ubuntu/Tizen.NUI.Devel.Tests/testcase/TSAnimatedImageView.cs @@ -284,5 +284,34 @@ public void URLs_SET_GET_VALUE() testView.Dispose(); } + + [Test] + [Category("P1")] + [Description("internal API test in Ubuntu, AnimatedImageView.FrameSpeedFactor")] + [Property("SPEC", "Tizen.NUI.BaseComponents.AnimatedImageView.FrameSpeedFactor")] + [Property("SPEC_URL", "-")] + [Property("CRITERIA", "PRO")] + [Property("AUTHOR", "eunkiki.hong@samsung.com")] + public void FrameSpeedFactor_SET_GET_VALUE() + { + /* TEST CODE */ + AnimatedImageView testView = new AnimatedImageView(); + + Assert.AreEqual(1.0f, testView.FrameSpeedFactor, "FrameSpeedFactor should be 1.0f when ResourceUrl is not setup"); + + testView.ResourceUrl = animated_image_path; + + Assert.AreEqual(1.0f, testView.FrameSpeedFactor, "FrameSpeedFactor should be 1.0f even ResourceUrl is setup"); + + float expectSpeedFactor = 3.0f; + testView.FrameSpeedFactor = expectSpeedFactor; + Assert.AreEqual(expectSpeedFactor, testView.FrameSpeedFactor, "FrameSpeedFactor doesn't matched!"); + + expectSpeedFactor = 0.5f; + testView.FrameSpeedFactor = expectSpeedFactor; + Assert.AreEqual(expectSpeedFactor, testView.FrameSpeedFactor, "FrameSpeedFactor doesn't matched!"); + + testView.Dispose(); + } } } diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/LottieAnimationTest.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/LottieAnimationTest.cs index 3372215f9b7..485da106384 100755 --- a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/LottieAnimationTest.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/LottieAnimationTest.cs @@ -12,6 +12,7 @@ public void Activate() lav.NotifyAfterRasterization = true; lav.URL = Tizen.Applications.Application.Current.DirectoryInfo.Resource + "a.json"; lav.LoopCount = -1; + lav.FrameSpeedFactor = 2.0f; // 2x speed lav.BackgroundColor = Color.White; NUIApplication.GetDefaultWindow().GetDefaultLayer().Add(lav); Tizen.Log.Error("NUI", $"Total frame before resource ready : {lav.TotalFrame} / might be 0 if still load images. or, might be valid value if load finished during above logic running.\n"); From b0d0d4effa04450b3154ca87a956debc2b16acbd Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Wed, 4 Sep 2024 14:25:29 +0900 Subject: [PATCH 066/198] [NUI] Bind FrameUpdateCallback / EventThreadCallback / ProcessorController native release API Signed-off-by: Eunki, Hong --- src/Tizen.NUI/src/internal/Common/EventThreadCallback.cs | 3 ++- src/Tizen.NUI/src/internal/Common/ProcessorController.cs | 8 ++++++++ .../src/internal/Interop/Interop.EventThreadCallback.cs | 3 +++ .../Interop/Interop.FrameUpdateCallbackInterface.cs | 3 +++ .../src/internal/Interop/Interop.ProcessorController.cs | 3 +++ .../src/public/Common/FrameUpdateCallbackInterface.cs | 8 ++++++++ 6 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/Tizen.NUI/src/internal/Common/EventThreadCallback.cs b/src/Tizen.NUI/src/internal/Common/EventThreadCallback.cs index 9115d078f05..8ebd257d4a1 100755 --- a/src/Tizen.NUI/src/internal/Common/EventThreadCallback.cs +++ b/src/Tizen.NUI/src/internal/Common/EventThreadCallback.cs @@ -31,7 +31,8 @@ internal EventThreadCallback(global::System.IntPtr cPtr, bool cMemoryOwn) : base [EditorBrowsable(EditorBrowsableState.Never)] protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) { - //NDalicManualPINVOKE.DeleteEventThreadCallback(swigCPtr); + Interop.EventThreadCallback.DeleteEventThreadCallback(swigCPtr); + NDalicPINVOKE.ThrowExceptionIfExists(); } public EventThreadCallback(CallbackDelegate func) : this(Interop.EventThreadCallback.NewEventThreadCallback(func), true) diff --git a/src/Tizen.NUI/src/internal/Common/ProcessorController.cs b/src/Tizen.NUI/src/internal/Common/ProcessorController.cs index e40e9f72165..f59aea7e1e5 100755 --- a/src/Tizen.NUI/src/internal/Common/ProcessorController.cs +++ b/src/Tizen.NUI/src/internal/Common/ProcessorController.cs @@ -52,6 +52,14 @@ internal ProcessorController(global::System.IntPtr cPtr, bool cMemoryOwn) : base { } + /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + [EditorBrowsable(EditorBrowsableState.Never)] + protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + { + Interop.ProcessorController.DeleteProcessorController(swigCPtr); + NDalicPINVOKE.ThrowExceptionIfExists(); + } + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void ProcessorEventHandler(); diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.EventThreadCallback.cs b/src/Tizen.NUI/src/internal/Interop/Interop.EventThreadCallback.cs index af8a9c272a2..e50919882a4 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.EventThreadCallback.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.EventThreadCallback.cs @@ -24,6 +24,9 @@ internal static partial class EventThreadCallback [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_EventThreadCallback")] public static extern global::System.IntPtr NewEventThreadCallback(Tizen.NUI.EventThreadCallback.CallbackDelegate delegate1); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_EventThreadCallback")] + public static extern void DeleteEventThreadCallback(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_EventThreadCallback_Trigger")] public static extern void Trigger(global::System.Runtime.InteropServices.HandleRef jarg1); } diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.FrameUpdateCallbackInterface.cs b/src/Tizen.NUI/src/internal/Interop/Interop.FrameUpdateCallbackInterface.cs index 2c0ff938491..8a6dbf122bd 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.FrameUpdateCallbackInterface.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.FrameUpdateCallbackInterface.cs @@ -24,6 +24,9 @@ internal static partial class FrameUpdateCallbackInterface [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_FrameCallbackInterface")] public static extern global::System.IntPtr newFrameUpdateCallbackInterface(); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_FrameCallbackInterface")] + public static extern void DeleteFrameUpdateCallbackInterface(global::System.Runtime.InteropServices.HandleRef jarg1); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_FrameCallbackInterface_director_connect_with_return")] public static extern void FrameUpdateCallbackInterfaceDirectorConnectV1(global::System.Runtime.InteropServices.HandleRef jarg1, Tizen.NUI.FrameUpdateCallbackInterface.DelegateFrameUpdateCallbackInterfaceV1 delegate1); diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.ProcessorController.cs b/src/Tizen.NUI/src/internal/Interop/Interop.ProcessorController.cs index ce3f97c78f3..bc37d526c30 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.ProcessorController.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.ProcessorController.cs @@ -25,6 +25,9 @@ internal static partial class ProcessorController [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_ProcessorController_Without_Initialize")] public static extern global::System.IntPtr NewWithoutInitialize(); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_ProcessorController")] + public static extern void DeleteProcessorController(global::System.Runtime.InteropServices.HandleRef processorController); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_ProcessorController_Initialize")] public static extern void Initialize(global::System.Runtime.InteropServices.HandleRef processorController); diff --git a/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs b/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs index 86405ba442a..2a429715376 100755 --- a/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs +++ b/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs @@ -49,6 +49,14 @@ public FrameUpdateCallbackInterface(uint updateCallbackVersion) : this(Interop.F if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// This will not be public opened. + [EditorBrowsable(EditorBrowsableState.Never)] + protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr) + { + Interop.FrameUpdateCallbackInterface.DeleteFrameUpdateCallbackInterface(swigCPtr); + NDalicPINVOKE.ThrowExceptionIfExists(); + } + /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public uint UpdateCallbackVersion => onUpdateCallbackVersion; From d812d6db4ceb7f4905f9c7577c2bda8bf50675fc Mon Sep 17 00:00:00 2001 From: "everLEEst(SangHyeon Lee)" Date: Wed, 4 Sep 2024 17:22:53 +0900 Subject: [PATCH 067/198] Version Update (22339) --- packaging/csapi-tizenfx.spec | 2 +- packaging/version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/csapi-tizenfx.spec b/packaging/csapi-tizenfx.spec index 6de68baaf5b..50501757209 100644 --- a/packaging/csapi-tizenfx.spec +++ b/packaging/csapi-tizenfx.spec @@ -1,7 +1,7 @@ # Auto-generated from csapi-tizenfx.spec.in by makespec.sh %define TIZEN_NET_API_VERSION 12 -%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22338 +%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22339 %define TIZEN_NET_NUGET_VERSION 12.0.0.99999 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework diff --git a/packaging/version.txt b/packaging/version.txt index 7b0b6b62810..5edbefa92a4 100755 --- a/packaging/version.txt +++ b/packaging/version.txt @@ -6,4 +6,4 @@ RPM_VERSION=12.0.0.999 NUGET_VERSION=12.0.0.99999 # RPM Version Suffix -RPM_VERSION_SUFFIX=nui22338 +RPM_VERSION_SUFFIX=nui22339 From 16c960ebdcf7c9179ef7589229a1d3d492e1c32c Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Wed, 28 Aug 2024 09:03:36 +0900 Subject: [PATCH 068/198] [Multimedia] Add MediaPacket TBM surface APIs (#6278) * [Multimedia] Add MediaPacket TBM surface API --- .../Interop/Interop.MediaTool.cs | 7 ++++ src/Tizen.Multimedia/MediaTool/MediaPacket.cs | 41 +++++++++++++++++++ 2 files changed, 48 insertions(+) diff --git a/src/Tizen.Multimedia/Interop/Interop.MediaTool.cs b/src/Tizen.Multimedia/Interop/Interop.MediaTool.cs index d088bbff8bc..029ed1cc254 100644 --- a/src/Tizen.Multimedia/Interop/Interop.MediaTool.cs +++ b/src/Tizen.Multimedia/Interop/Interop.MediaTool.cs @@ -115,6 +115,13 @@ internal static class MediaPacket [DllImport(Libraries.MediaTool, EntryPoint = "media_packet_get_duration")] internal static extern int GetDuration(IntPtr handle, out ulong value); + + [DllImport(Libraries.MediaTool, EntryPoint = "media_packet_get_tbm_surface")] + internal static extern int GetTbmSurface(IntPtr handle, out IntPtr surface); + + [DllImport(Libraries.MediaTool, EntryPoint = "media_packet_has_tbm_surface_buffer")] + internal static extern int HasTbmSurface(IntPtr handle, out bool hasTbmSurface); + } internal static class MediaFormat diff --git a/src/Tizen.Multimedia/MediaTool/MediaPacket.cs b/src/Tizen.Multimedia/MediaTool/MediaPacket.cs index affdc4d77f2..7d49b8ff7c4 100644 --- a/src/Tizen.Multimedia/MediaTool/MediaPacket.cs +++ b/src/Tizen.Multimedia/MediaTool/MediaPacket.cs @@ -502,6 +502,47 @@ public MediaPacketBufferFlags BufferFlags } } + /// + /// Gets the pointer to the TBM surface object associated with the packet. + /// + /// + /// The pointer to the TBM surface object.
+ /// If packet doesn't have TBM surface, this will return IntPtr.Zero. + ///
+ /// The MediaPacket has already been disposed. + /// 12 + public IntPtr TbmSurface + { + get + { + ValidateNotDisposed(); + + int ret = Native.GetTbmSurface(_handle, out var value); + MultimediaDebug.AssertNoError(ret); + + return value; + } + } + + /// + /// Gets a value indicating whether the packet has TBM surface or not. + /// + /// true if the packet has TBM surface; otherwise, false. + /// The MediaPacket has already been disposed. + /// 12 + public bool HasTbmSurface + { + get + { + ValidateNotDisposed(); + + int ret = Native.HasTbmSurface(_handle, out var value); + MultimediaDebug.AssertNoError(ret); + + return value; + } + } + #region Dispose support /// /// Gets a value indicating whether the packet has been disposed. From 93b302fe0321ab26ab888367190884fddabdda66 Mon Sep 17 00:00:00 2001 From: Doyoun Kang Date: Wed, 14 Aug 2024 09:40:33 +0900 Subject: [PATCH 069/198] introduce the Screensaver service feature --- .../Interop/Interop.ScreensaverService.cs | 20 +++ .../src/public/ScreensaverService.cs | 144 ++++++++++++++++++ .../Tizen.NUI.WindowSystem.Samples.cs | 48 +++++- 3 files changed, 209 insertions(+), 3 deletions(-) create mode 100644 src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.ScreensaverService.cs create mode 100644 src/Tizen.NUI.WindowSystem/src/public/ScreensaverService.cs diff --git a/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.ScreensaverService.cs b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.ScreensaverService.cs new file mode 100644 index 00000000000..f01f0ea3ff3 --- /dev/null +++ b/src/Tizen.NUI.WindowSystem/src/internal/Interop/Interop.ScreensaverService.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Tizen.NUI.WindowSystem.Shell +{ + internal static partial class Interop + { + internal static partial class ScreensaverService + { + const string lib = "libtzsh_screensaver_service.so.0"; + + [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_screensaver_service_create")] + internal static extern IntPtr Create(IntPtr tzsh, uint win); + + [global::System.Runtime.InteropServices.DllImport(lib, EntryPoint = "tzsh_screensaver_service_destroy")] + internal static extern int Destroy(IntPtr ScreensaverService); + } + } +} diff --git a/src/Tizen.NUI.WindowSystem/src/public/ScreensaverService.cs b/src/Tizen.NUI.WindowSystem/src/public/ScreensaverService.cs new file mode 100644 index 00000000000..a31a1015440 --- /dev/null +++ b/src/Tizen.NUI.WindowSystem/src/public/ScreensaverService.cs @@ -0,0 +1,144 @@ +/* + * Copyright(c) 2023 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +using System; +using System.ComponentModel; +using System.Collections.Generic; +using Tizen.Common; +using Tizen.Applications; + +namespace Tizen.NUI.WindowSystem.Shell +{ + /// + /// Class for the Tizen screensaver service. + /// + /// This class is need to be hidden as inhouse API. + [EditorBrowsable(EditorBrowsableState.Never)] + public class ScreensaverService : IDisposable + { + private TizenShell _tzsh; + private IntPtr _screensaverService; + private int _tzshWin; + private bool disposed = false; + private bool isDisposeQueued = false; + + /// + /// Creates a new Screensaver Service handle. + /// + /// The TizenShell instance. + /// The window to provide service of the screensaver. + /// Thrown when failed of invalid argument. + /// Thrown when an argument is null. + public ScreensaverService(TizenShell tzShell, Window win) + { + if (tzShell == null) + { + throw new ArgumentNullException(nameof(tzShell)); + } + if (tzShell.GetNativeHandle() == IntPtr.Zero) + { + throw new ArgumentException("tzShell is not initialized."); + } + if (win == null) + { + throw new ArgumentNullException(nameof(win)); + } + + _tzsh = tzShell; + _tzshWin = win.GetNativeId(); + _screensaverService = Interop.ScreensaverService.Create(_tzsh.GetNativeHandle(), (uint)_tzshWin); + if (_screensaverService == IntPtr.Zero) + { + int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); + _tzsh.ErrorCodeThrow(err); + } + } + + /// + /// Creates a new Screensaver Service handle. + /// + /// The TizenShell instance. + /// The window provider for the screensaver service. + /// Thrown when failed of invalid argument. + /// Thrown when an argument is null. + public ScreensaverService(TizenShell tzShell, IWindowProvider win) + { + if (tzShell == null) + { + throw new ArgumentNullException(nameof(tzShell)); + } + if (tzShell.GetNativeHandle() == IntPtr.Zero) + { + throw new ArgumentException("tzShell is not initialized."); + } + if (win == null) + { + throw new ArgumentNullException(nameof(win)); + } + + _tzsh = tzShell; + _tzshWin = WindowSystem.Interop.EcoreWl2.GetWindowId(win.WindowHandle); + _screensaverService = Interop.ScreensaverService.Create(_tzsh.GetNativeHandle(), (uint)_tzshWin); + if (_screensaverService == IntPtr.Zero) + { + int err = Tizen.Internals.Errors.ErrorFacts.GetLastResult(); + _tzsh.ErrorCodeThrow(err); + } + } + + /// + /// Destructor. + /// + ~ScreensaverService() + { + Dispose(disposing: false); + } + /// + /// Dispose. + /// + public void Dispose() + { + if (disposed) + return; + + Dispose(disposing: true); + GC.SuppressFinalize(this); + } + /// + protected virtual void Dispose(bool disposing) + { + if (!disposed) + { + if (disposing) + { + ReleaseHandle(_screensaverService); + } + else + { + var handle = _screensaverService; + CoreApplication.Post(() => ReleaseHandle(handle)); + } + disposed = true; + } + } + + private void ReleaseHandle(IntPtr handle) + { + Interop.ScreensaverService.Destroy(handle); + } + } +} diff --git a/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.cs b/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.cs index b2ae9564be1..365bdd36cbf 100644 --- a/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.cs +++ b/test/Tizen.NUI.WindowSystem.Samples/Tizen.NUI.WindowSystem.Samples.cs @@ -36,6 +36,10 @@ class Program : NUIApplication TextLabel textSoftkeyServiceExpand; TextLabel textSoftkeyServiceOpacity; + Shell.ScreensaverService screensaverService; + Button BtnScreensaverService; + TextLabel textScreensaverServiceTitle; + protected override void OnCreate() { base.OnCreate(); @@ -60,7 +64,7 @@ void Initialize() { Text = "QuickPanelService", Size = new Size(400, 100), - Position = new Position(100, 400), + Position = new Position(100, 340), Margin = 10, }; @@ -68,7 +72,7 @@ void Initialize() { Text = "SoftkeyClient", Size = new Size(400, 100), - Position = new Position(100, 600), + Position = new Position(100, 480), Margin = 10, }; @@ -76,7 +80,15 @@ void Initialize() { Text = "SoftkeyService", Size = new Size(400, 100), - Position = new Position(100, 800), + Position = new Position(100, 620), + Margin = 10, + }; + + BtnScreensaverService = new Button() + { + Text = "ScreensaverService", + Size = new Size(400, 100), + Position = new Position(100, 760), Margin = 10, }; @@ -84,11 +96,13 @@ void Initialize() window.Add(BtnService); window.Add(BtnSoftkeyClient); window.Add(BtnSoftkeyService); + window.Add(BtnScreensaverService); BtnClient.ClickEvent += BtnClient_ClickEvent; BtnService.ClickEvent += BtnService_ClickEvent; BtnSoftkeyClient.ClickEvent += BtnSoftkeyClient_ClickEvent; BtnSoftkeyService.ClickEvent += BtnSoftkeyService_ClickEvent; + BtnScreensaverService.ClickEvent += BtnScreensaverService_ClickEvent; tzShell = new Shell.TizenShell(); @@ -122,6 +136,7 @@ private void BtnClient_ClickEvent(object sender, Button.ClickEventArgs e) window.Remove(BtnService); window.Remove(BtnClient); + window.Remove(BtnScreensaverService); window.Remove(BtnSoftkeyService); window.Remove(BtnSoftkeyClient); qpClient = new Shell.QuickPanelClient(tzShell, (IWindowProvider)window, Shell.QuickPanelClient.Types.SystemDefault); @@ -238,6 +253,7 @@ private void BtnService_ClickEvent(object sender, Button.ClickEventArgs e) window.Remove(BtnService); window.Remove(BtnClient); + window.Remove(BtnScreensaverService); window.Remove(BtnSoftkeyService); window.Remove(BtnSoftkeyClient); qpService = new Shell.QuickPanelService(tzShell, (IWindowProvider)window, type); @@ -409,6 +425,7 @@ private void BtnSoftkeyClient_ClickEvent(object sender, Button.ClickEventArgs e) window.Remove(BtnService); window.Remove(BtnClient); + window.Remove(BtnScreensaverService); window.Remove(BtnSoftkeyService); window.Remove(BtnSoftkeyClient); softkeyClient = new Shell.SoftkeyClient(tzShell, (IWindowProvider)window); @@ -553,6 +570,7 @@ private void BtnSoftkeyService_ClickEvent(object sender, Button.ClickEventArgs e window.Remove(BtnService); window.Remove(BtnClient); + window.Remove(BtnScreensaverService); window.Remove(BtnSoftkeyService); window.Remove(BtnSoftkeyClient); softkeyService = new Shell.SoftkeyService(tzShell, (IWindowProvider)window); @@ -647,6 +665,30 @@ private void BtnSoftkeyServiceHide_ClickEvent(object sender, Button.ClickEventAr softkeyService.Hide(); } + private void BtnScreensaverService_ClickEvent(object sender, Button.ClickEventArgs e) + { + Window window = NUIApplication.GetDefaultWindow(); + window.WindowSize = new Size(1920, 1080); + window.WindowPosition = new Position(0, 0); + + window.Remove(BtnService); + window.Remove(BtnClient); + window.Remove(BtnScreensaverService); + window.Remove(BtnSoftkeyService); + window.Remove(BtnSoftkeyClient); + screensaverService = new Shell.ScreensaverService(tzShell, (IWindowProvider)window); + + textScreensaverServiceTitle = new TextLabel($"Screen Saver"); + textScreensaverServiceTitle.Position = new Position(0, 0); + textScreensaverServiceTitle.HorizontalAlignment = HorizontalAlignment.Center; + textScreensaverServiceTitle.VerticalAlignment = VerticalAlignment.Center; + textScreensaverServiceTitle.TextColor = Color.Blue; + textScreensaverServiceTitle.PointSize = 12.0f; + textScreensaverServiceTitle.HeightResizePolicy = ResizePolicyType.FillToParent; + textScreensaverServiceTitle.WidthResizePolicy = ResizePolicyType.FillToParent; + window.Add(textScreensaverServiceTitle); + } + static void Main(string[] args) { var app = new Program(); From 0d2666fa5103a52c2d4ff29a8de193db8d08d589 Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Tue, 3 Sep 2024 11:45:05 +0900 Subject: [PATCH 070/198] [MediaVision] Deprecate all legacy APIs (#6279) * [MediaVision] Deprecate all legacy APIs --- .../Interop/Interop.MediaVision.Face.cs | 58 +++++++++---------- .../Interop/Interop.MediaVision.Image.cs | 42 +++++++------- .../Interop/Interop.MediaVision.Inference.cs | 38 ++++++------ .../Interop.MediaVision.Surveillance.cs | 34 +++++------ .../MediaVision/DeepLearningFaceRecognizer.cs | 2 +- .../MediaVision/EyeCondition.cs | 3 + .../MediaVision/FaceDetectionConfiguration.cs | 6 ++ .../MediaVision/FaceDetectionResult.cs | 5 +- .../MediaVision/FaceDetector.cs | 4 ++ .../FaceRecognitionConfiguration.cs | 3 + .../MediaVision/FaceRecognitionModel.cs | 13 +++++ .../MediaVision/FaceRecognitionModelType.cs | 3 + .../MediaVision/FaceRecognitionResult.cs | 7 +++ .../MediaVision/FaceRecognizer.cs | 9 +++ .../MediaVision/FaceTracker.cs | 2 + .../MediaVision/FaceTrackingModel.cs | 7 +++ .../MediaVision/FaceTrackingResult.cs | 6 ++ .../MediaVision/FacialExpression.cs | 3 + .../MediaVision/FacialLandmarkDetector.cs | 2 + .../MediaVision/ImageClassificationResult.cs | 6 +- .../MediaVision/ImageClassifier.cs | 2 + .../MediaVision/ImageFillConfiguration.cs | 6 ++ .../MediaVision/ImageObject.cs | 13 +++++ .../ImageRecognitionConfiguration.cs | 12 ++++ .../MediaVision/ImageRecognitionResult.cs | 5 ++ .../MediaVision/ImageRecognizer.cs | 3 + .../MediaVision/ImageTracker.cs | 3 + .../MediaVision/ImageTrackingConfiguration.cs | 14 +++++ .../MediaVision/ImageTrackingModel.cs | 8 +++ .../InferenceModelConfiguration.cs | 12 ++++ .../MediaVision/InferenceType.cs | 3 + .../MediaVision/MovementDetectedEventArgs.cs | 3 + .../MovementDetectionConfiguration.cs | 4 ++ .../MediaVision/MovementDetector.cs | 5 ++ .../MediaVision/ObjectDetectionResult.cs | 7 ++- .../MediaVision/ObjectDetector.cs | 2 + .../PersonAppearanceDetectedEventArgs.cs | 5 ++ .../PersonAppearanceDetectionConfiguration.cs | 4 ++ .../MediaVision/PersonAppearanceDetector.cs | 5 ++ .../PersonRecognitionConfiguration.cs | 3 + .../MediaVision/PersonRecognitionInfo.cs | 7 +++ .../MediaVision/PersonRecognizedEventArgs.cs | 3 + .../MediaVision/PersonRecognizer.cs | 4 ++ .../MediaVision/PoseLandmarkDetector.cs | 5 ++ .../MediaVision/SurveillanceConfiguration.cs | 3 + .../MediaVision/SurveillanceEngine.cs | 5 ++ .../MediaVision/SurveillanceSource.cs | 3 + 47 files changed, 312 insertions(+), 90 deletions(-) diff --git a/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Face.cs b/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Face.cs index 5babae13e62..be33d6b2474 100755 --- a/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Face.cs +++ b/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Face.cs @@ -35,49 +35,49 @@ internal static partial class Face { [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_detect")] internal static extern MediaVisionError Detect(IntPtr source, IntPtr engineCfg, - DetectedCallback detectedCb, IntPtr userData = default(IntPtr)); + DetectedCallback detectedCb, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognize")] internal static extern MediaVisionError Recognize(IntPtr source, IntPtr recognitionModel, IntPtr engineCfg, - IntPtr faceLocation, RecognizedCallback recognizedCb, IntPtr userData = default(IntPtr)); + IntPtr faceLocation, RecognizedCallback recognizedCb, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognize")] internal static extern MediaVisionError Recognize(IntPtr source, IntPtr recognitionModel, IntPtr engineCfg, - ref Rectangle faceLocation, RecognizedCallback recognizedCb, IntPtr userData = default(IntPtr)); + ref Rectangle faceLocation, RecognizedCallback recognizedCb, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_track")] internal static extern MediaVisionError Track(IntPtr source, IntPtr trackingModel, IntPtr engineCfg, - TrackedCallback trackedCb, bool doLearn, IntPtr userData = default(IntPtr)); + TrackedCallback trackedCb, bool doLearn, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_eye_condition_recognize")] internal static extern MediaVisionError RecognizeEyeCondition(IntPtr source, IntPtr engineCfg, - Rectangle faceLocation, EyeConditionRecognizedCallback eyeConditionRecognizedCb, IntPtr userData = default(IntPtr)); + Rectangle faceLocation, EyeConditionRecognizedCallback eyeConditionRecognizedCb, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_facial_expression_recognize")] internal static extern MediaVisionError RecognizeFacialExpression(IntPtr source, IntPtr engineCfg, - Rectangle faceLocation, MvFaceFacialExpressionRecognizedCallback expressionRecognizedCb, + Rectangle faceLocation, MvFaceFacialExpressionRecognizedCallback expressionRecognizedCb, // Deprecated in API 12 IntPtr userData = default(IntPtr)); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void DetectedCallback(IntPtr source, IntPtr engineCfg, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 3)] Rectangle[] facesLocations, - int numberOfFaces, IntPtr userData); + int numberOfFaces, IntPtr userData); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void RecognizedCallback(IntPtr source, IntPtr recognitionModel, - IntPtr engineCfg, IntPtr faceLocation, IntPtr faceLabel, double confidence, IntPtr userData); + IntPtr engineCfg, IntPtr faceLocation, IntPtr faceLabel, double confidence, IntPtr userData); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void TrackedCallback(IntPtr source, IntPtr trackingModel, IntPtr engineCfg, - IntPtr location, double confidence, IntPtr userData); + IntPtr location, double confidence, IntPtr userData); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void EyeConditionRecognizedCallback(IntPtr source, IntPtr engineCfg, - Rectangle faceLocation, EyeCondition eyeCondition, IntPtr userData); + Rectangle faceLocation, EyeCondition eyeCondition, IntPtr userData); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void MvFaceFacialExpressionRecognizedCallback(IntPtr source, - IntPtr engineCfg, Rectangle faceLocation, FacialExpression facialExpression, IntPtr userData); + IntPtr engineCfg, Rectangle faceLocation, FacialExpression facialExpression, IntPtr userData); // Deprecated in API 12 } /// @@ -86,39 +86,39 @@ internal delegate void MvFaceFacialExpressionRecognizedCallback(IntPtr source, internal static partial class FaceRecognitionModel { [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_create")] - internal static extern MediaVisionError Create(out IntPtr handle); + internal static extern MediaVisionError Create(out IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_destroy")] - internal static extern int Destroy(IntPtr handle); + internal static extern int Destroy(IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_clone")] - internal static extern int Clone(IntPtr src, out IntPtr dst); + internal static extern int Clone(IntPtr src, out IntPtr dst); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_save")] - internal static extern MediaVisionError Save(string fileName, IntPtr handle); + internal static extern MediaVisionError Save(string fileName, IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_load")] - internal static extern MediaVisionError Load(string fileName, out IntPtr handle); + internal static extern MediaVisionError Load(string fileName, out IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_add")] internal static extern MediaVisionError Add(IntPtr source, IntPtr recognitionModel, - ref Rectangle exampleLocation, int faceLabel); + ref Rectangle exampleLocation, int faceLabel); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_add")] internal static extern MediaVisionError Add(IntPtr source, IntPtr recognitionModel, - IntPtr exampleLocation, int faceLabel); + IntPtr exampleLocation, int faceLabel); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_reset")] - internal static extern MediaVisionError Reset(IntPtr recognitionModel, IntPtr faceLabel = default(IntPtr)); + internal static extern MediaVisionError Reset(IntPtr recognitionModel, IntPtr faceLabel = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_reset")] - internal static extern MediaVisionError Remove(IntPtr recognitionModel, ref int faceLabel); + internal static extern MediaVisionError Remove(IntPtr recognitionModel, ref int faceLabel); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_learn")] - internal static extern MediaVisionError Learn(IntPtr engineCfg, IntPtr handle); + internal static extern MediaVisionError Learn(IntPtr engineCfg, IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_recognition_model_query_labels")] - internal static extern MediaVisionError QueryLabels(IntPtr handle, out IntPtr labels, out uint numberOfLabels); + internal static extern MediaVisionError QueryLabels(IntPtr handle, out IntPtr labels, out uint numberOfLabels); // Deprecated in API 12 } /// @@ -127,27 +127,27 @@ internal static extern MediaVisionError Add(IntPtr source, IntPtr recognitionMod internal static partial class FaceTrackingModel { [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_tracking_model_create")] - internal static extern MediaVisionError Create(out IntPtr handle); + internal static extern MediaVisionError Create(out IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_tracking_model_destroy")] - internal static extern int Destroy(IntPtr handle); + internal static extern int Destroy(IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_tracking_model_prepare")] internal static extern MediaVisionError Prepare(IntPtr trackingModel, IntPtr engineCfg, - IntPtr source, ref Quadrangle location); + IntPtr source, ref Quadrangle location); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_tracking_model_prepare")] internal static extern MediaVisionError Prepare(IntPtr trackingModel, IntPtr engineCfg, - IntPtr source, IntPtr location); + IntPtr source, IntPtr location); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_tracking_model_clone")] - internal static extern int Clone(IntPtr src, out IntPtr dst); + internal static extern int Clone(IntPtr src, out IntPtr dst); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_tracking_model_save")] - internal static extern MediaVisionError Save(string fileName, IntPtr handle); + internal static extern MediaVisionError Save(string fileName, IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionFace, EntryPoint = "mv_face_tracking_model_load")] - internal static extern MediaVisionError Load(string fileName, out IntPtr handle); + internal static extern MediaVisionError Load(string fileName, out IntPtr handle); // Deprecated in API 12 } /// diff --git a/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Image.cs b/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Image.cs index 36bebd2ade2..e7de6c780d9 100755 --- a/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Image.cs +++ b/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Image.cs @@ -35,50 +35,50 @@ internal static partial class Image { [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_recognize")] internal static extern MediaVisionError Recognize(IntPtr source, IntPtr[] imageObjects, - int numberOfObjects, IntPtr engineCfg, RecognizedCallback recognizedCb, IntPtr userData = default(IntPtr)); + int numberOfObjects, IntPtr engineCfg, RecognizedCallback recognizedCb, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_track")] internal static extern MediaVisionError Track(IntPtr source, IntPtr imageTrackingModel, - IntPtr engineCfg, TrackedCallback trackedCb, IntPtr userData = default(IntPtr)); + IntPtr engineCfg, TrackedCallback trackedCb, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_object_create")] - internal static extern MediaVisionError Create(out IntPtr handle); + internal static extern MediaVisionError Create(out IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_object_destroy")] - internal static extern int Destroy(IntPtr handle); + internal static extern int Destroy(IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_object_fill")] - internal static extern MediaVisionError Fill(IntPtr handle, IntPtr engineCfg, IntPtr source, ref Rectangle location); + internal static extern MediaVisionError Fill(IntPtr handle, IntPtr engineCfg, IntPtr source, ref Rectangle location); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_object_fill")] - internal static extern MediaVisionError Fill(IntPtr handle, IntPtr engineCfg, IntPtr source, IntPtr location); + internal static extern MediaVisionError Fill(IntPtr handle, IntPtr engineCfg, IntPtr source, IntPtr location); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_object_get_recognition_rate")] - internal static extern MediaVisionError GetRecognitionRate(IntPtr handle, out double recognitionRate); + internal static extern MediaVisionError GetRecognitionRate(IntPtr handle, out double recognitionRate); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_object_set_label")] - internal static extern MediaVisionError SetLabel(IntPtr handle, int label); + internal static extern MediaVisionError SetLabel(IntPtr handle, int label); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_object_get_label")] - internal static extern MediaVisionError GetLabel(IntPtr handle, out int label); + internal static extern MediaVisionError GetLabel(IntPtr handle, out int label); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_object_clone")] - internal static extern int Clone(IntPtr src, out IntPtr dst); + internal static extern int Clone(IntPtr src, out IntPtr dst); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_object_save")] - internal static extern MediaVisionError Save(string fileName, IntPtr handle); + internal static extern MediaVisionError Save(string fileName, IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_object_load")] - internal static extern MediaVisionError Load(string fileName, out IntPtr handle); + internal static extern MediaVisionError Load(string fileName, out IntPtr handle); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void RecognizedCallback(IntPtr source, IntPtr engineCfg, IntPtr imageObjects, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 4)] - IntPtr[] locations, uint numberOfObjects, IntPtr userData); + IntPtr[] locations, uint numberOfObjects, IntPtr userData); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void TrackedCallback(IntPtr source, IntPtr imageTrackingModel, - IntPtr engineCfg, IntPtr location, IntPtr userData); + IntPtr engineCfg, IntPtr location, IntPtr userData); // Deprecated in API 12 } /// @@ -87,25 +87,25 @@ internal delegate void TrackedCallback(IntPtr source, IntPtr imageTrackingModel, internal static partial class ImageTrackingModel { [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_tracking_model_create")] - internal static extern MediaVisionError Create(out IntPtr imageTrackingModel); + internal static extern MediaVisionError Create(out IntPtr imageTrackingModel); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_tracking_model_set_target")] - internal static extern MediaVisionError SetTarget(IntPtr handle, IntPtr imageTrackingModel); + internal static extern MediaVisionError SetTarget(IntPtr handle, IntPtr imageTrackingModel); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_tracking_model_destroy")] - internal static extern int Destroy(IntPtr imageTrackingModel); + internal static extern int Destroy(IntPtr imageTrackingModel); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_tracking_model_refresh")] - internal static extern MediaVisionError Refresh(IntPtr imageTrackingModel, IntPtr engineCfg); + internal static extern MediaVisionError Refresh(IntPtr imageTrackingModel, IntPtr engineCfg); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_tracking_model_clone")] - internal static extern int Clone(IntPtr src, out IntPtr dest); + internal static extern int Clone(IntPtr src, out IntPtr dest); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_tracking_model_save")] - internal static extern MediaVisionError Save(string fileName, IntPtr imageTrackingModel); + internal static extern MediaVisionError Save(string fileName, IntPtr imageTrackingModel); // Deprecated in API 12 [DllImport(Libraries.MediaVisionImage, EntryPoint = "mv_image_tracking_model_load")] - internal static extern MediaVisionError Load(string fileName, out IntPtr imageTrackingModel); + internal static extern MediaVisionError Load(string fileName, out IntPtr imageTrackingModel); // Deprecated in API 12 } } } diff --git a/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Inference.cs b/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Inference.cs index 391afd929b5..2e5d9879231 100644 --- a/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Inference.cs +++ b/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Inference.cs @@ -37,19 +37,19 @@ internal static partial class Inference internal delegate void FaceDetectedCallback(IntPtr source, int numberOfFaces, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] float[] confidences, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] Rectangle[] location, - IntPtr userData = default(IntPtr)); + IntPtr userData = default(IntPtr)); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void FacialLandmarkDetectedCallback(IntPtr source, int numberOfLandmarks, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] Point[] locations, - IntPtr userData = default(IntPtr)); + IntPtr userData = default(IntPtr)); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void ImageClassifedCallback(IntPtr source, int numberOfClasses, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] int[] indices, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] string[] names, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] float[] confidences, - IntPtr userData = default(IntPtr)); + IntPtr userData = default(IntPtr)); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void ObjectDetectedCallback(IntPtr source, int numberOfObjects, @@ -57,60 +57,60 @@ internal delegate void ObjectDetectedCallback(IntPtr source, int numberOfObjects [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] string[] names, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] float[] confidences, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] Rectangle[] location, - IntPtr userData = default(IntPtr)); + IntPtr userData = default(IntPtr)); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate bool SupportedBackendCallback(string backend, bool isSupported, - IntPtr userData = default(IntPtr)); + IntPtr userData = default(IntPtr)); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void PoseLandmarkDetectedCallback(IntPtr source, IntPtr poses, - IntPtr userData = default(IntPtr)); + IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_create")] - internal static extern MediaVisionError Create(out IntPtr handle); + internal static extern MediaVisionError Create(out IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_destroy")] - internal static extern MediaVisionError Destroy(IntPtr handle); + internal static extern MediaVisionError Destroy(IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_configure")] - internal static extern MediaVisionError Configure(IntPtr handle, IntPtr engineConfig); + internal static extern MediaVisionError Configure(IntPtr handle, IntPtr engineConfig); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_prepare")] - internal static extern MediaVisionError Load(IntPtr handle); + internal static extern MediaVisionError Load(IntPtr handle); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_foreach_supported_engine")] internal static extern MediaVisionError ForeachSupportedBackend(IntPtr handle, - SupportedBackendCallback callback, IntPtr userData = default(IntPtr)); + SupportedBackendCallback callback, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_image_classify")] internal static extern MediaVisionError ClassifyImage(IntPtr source, IntPtr inference, - IntPtr roi, ImageClassifedCallback callback, IntPtr userData = default(IntPtr)); + IntPtr roi, ImageClassifedCallback callback, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_object_detect")] internal static extern MediaVisionError DetectObject(IntPtr source, IntPtr inference, - ObjectDetectedCallback callback, IntPtr userData = default(IntPtr)); + ObjectDetectedCallback callback, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_face_detect")] internal static extern MediaVisionError DetectFace(IntPtr source, IntPtr inference, - FaceDetectedCallback callback, IntPtr userData = default(IntPtr)); + FaceDetectedCallback callback, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_facial_landmark_detect")] internal static extern MediaVisionError DetectFacialLandmark(IntPtr source, IntPtr inference, - IntPtr roi, FacialLandmarkDetectedCallback callback, IntPtr userData = default(IntPtr)); + IntPtr roi, FacialLandmarkDetectedCallback callback, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_pose_get_number_of_poses")] - internal static extern MediaVisionError GetPoseNum(IntPtr result, out int numPose); + internal static extern MediaVisionError GetPoseNum(IntPtr result, out int numPose); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_pose_get_number_of_landmarks")] - internal static extern MediaVisionError GetLandmarkNum(IntPtr result, out int numLandmark); + internal static extern MediaVisionError GetLandmarkNum(IntPtr result, out int numLandmark); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_pose_get_landmark")] - internal static extern MediaVisionError GetLandmark(IntPtr result, int index, int part, out Point location, out float score); + internal static extern MediaVisionError GetLandmark(IntPtr result, int index, int part, out Point location, out float score); // Deprecated in API 12 [DllImport(Libraries.MediaVisionInference, EntryPoint = "mv_inference_pose_landmark_detect")] internal static extern MediaVisionError DetectPoseLandmark(IntPtr source, IntPtr inference, - IntPtr roi, PoseLandmarkDetectedCallback callback, IntPtr userData = default(IntPtr)); + IntPtr roi, PoseLandmarkDetectedCallback callback, IntPtr userData = default(IntPtr)); // Deprecated in API 12 } } } diff --git a/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Surveillance.cs b/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Surveillance.cs index 89f0d31d5c1..ad1db3da814 100755 --- a/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Surveillance.cs +++ b/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Surveillance.cs @@ -34,58 +34,58 @@ internal static partial class MediaVision internal static partial class Surveillance { [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_event_trigger_create")] - internal static extern MediaVisionError EventTriggerCreate(string eventType, out IntPtr trigger); + internal static extern MediaVisionError EventTriggerCreate(string eventType, out IntPtr trigger); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_event_trigger_destroy")] - internal static extern int EventTriggerDestroy(IntPtr trigger); + internal static extern int EventTriggerDestroy(IntPtr trigger); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_get_event_trigger_type")] - internal static extern int GetEventTriggerType(IntPtr trigger, out string eventType); + internal static extern int GetEventTriggerType(IntPtr trigger, out string eventType); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_set_event_trigger_roi")] - internal static extern MediaVisionError SetEventTriggerRoi(IntPtr trigger, int numberOfPoints, Point[] roi); + internal static extern MediaVisionError SetEventTriggerRoi(IntPtr trigger, int numberOfPoints, Point[] roi); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_get_event_trigger_roi")] - internal static extern MediaVisionError GetEventTriggerRoi(IntPtr trigger, out int numberOfPoints, out IntPtr roi); + internal static extern MediaVisionError GetEventTriggerRoi(IntPtr trigger, out int numberOfPoints, out IntPtr roi); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_subscribe_event_trigger")] internal static extern MediaVisionError SubscribeEventTrigger(IntPtr trigger, int videoStreamId, - IntPtr engineCfg, EventOccurredCallback callback, IntPtr userData = default(IntPtr)); + IntPtr engineCfg, EventOccurredCallback callback, IntPtr userData = default(IntPtr)); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_unsubscribe_event_trigger")] - internal static extern MediaVisionError UnsubscribeEventTrigger(IntPtr trigger, int videoStreamId); + internal static extern MediaVisionError UnsubscribeEventTrigger(IntPtr trigger, int videoStreamId); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_push_source")] - internal static extern MediaVisionError PushSource(IntPtr source, int videoStreamId); + internal static extern MediaVisionError PushSource(IntPtr source, int videoStreamId); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_foreach_supported_event_type")] - internal static extern int ForeachSupportedEventType(EventTypeCallback callback, IntPtr userData); + internal static extern int ForeachSupportedEventType(EventTypeCallback callback, IntPtr userData); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_foreach_event_result_name")] internal static extern int ForeachEventResultName(string eventType, EventResultNameCallback callback, - IntPtr userData); + IntPtr userData); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_get_result_value")] - internal static extern MediaVisionError GetResultValue(IntPtr result, string name, out int value); + internal static extern MediaVisionError GetResultValue(IntPtr result, string name, out int value); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_get_result_value")] - internal static extern MediaVisionError GetResultValue(IntPtr result, string name, [Out] int[] value); + internal static extern MediaVisionError GetResultValue(IntPtr result, string name, [Out] int[] value); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_get_result_value")] - internal static extern MediaVisionError GetResultValue(IntPtr result, string name, [Out] double[] value); + internal static extern MediaVisionError GetResultValue(IntPtr result, string name, [Out] double[] value); // Deprecated in API 12 [DllImport(Libraries.MediaVisionSurveillance, EntryPoint = "mv_surveillance_get_result_value")] - internal static extern MediaVisionError GetResultValue(IntPtr result, string name, [Out] Rectangle[] value); + internal static extern MediaVisionError GetResultValue(IntPtr result, string name, [Out] Rectangle[] value); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] internal delegate void EventOccurredCallback(IntPtr trigger, IntPtr source, - int videoStreamId, IntPtr eventResult, IntPtr userData); + int videoStreamId, IntPtr eventResult, IntPtr userData); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal delegate bool EventTypeCallback(string eventType, IntPtr userData); + internal delegate bool EventTypeCallback(string eventType, IntPtr userData); // Deprecated in API 12 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal delegate bool EventResultNameCallback(string name, IntPtr userData); + internal delegate bool EventResultNameCallback(string name, IntPtr userData); // Deprecated in API 12 } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/DeepLearningFaceRecognizer.cs b/src/Tizen.Multimedia.Vision/MediaVision/DeepLearningFaceRecognizer.cs index 0cf02725a51..5f65776d1b2 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/DeepLearningFaceRecognizer.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/DeepLearningFaceRecognizer.cs @@ -56,7 +56,7 @@ public DeepLearningFaceRecognizer() { Log.Error(MediaVisionLog.Tag, e.ToString()); InteropFace.Destroy(_handle); - throw e; + throw; } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/EyeCondition.cs b/src/Tizen.Multimedia.Vision/MediaVision/EyeCondition.cs index 556dc00f27a..cbac00d082e 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/EyeCondition.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/EyeCondition.cs @@ -14,12 +14,15 @@ * limitations under the License. */ +using System; + namespace Tizen.Multimedia.Vision { /// /// Specifies the eyes state types. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public enum EyeCondition { /// diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceDetectionConfiguration.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceDetectionConfiguration.cs index 6a841ab03d6..827e985cf63 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceDetectionConfiguration.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceDetectionConfiguration.cs @@ -23,6 +23,7 @@ namespace Tizen.Multimedia.Vision /// /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class FaceDetectionConfiguration : EngineConfiguration { private const string KeyModelFilePath = "MV_FACE_DETECTION_MODEL_FILE_PATH"; @@ -38,6 +39,7 @@ public class FaceDetectionConfiguration : EngineConfiguration /// /// The feature is not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public FaceDetectionConfiguration() : base("face_recognition") { } @@ -47,6 +49,7 @@ public FaceDetectionConfiguration() : base("face_recognition") /// /// is null. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public string ModelFilePath { get @@ -72,6 +75,7 @@ public string ModelFilePath /// /// is less than zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int? MinHeight { get @@ -100,6 +104,7 @@ public int? MinHeight /// /// is less than zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int? MinWidth { get @@ -140,6 +145,7 @@ public int? MinWidth /// The y position of is less than zero. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public Rectangle? Roi { get diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceDetectionResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceDetectionResult.cs index 899e1e60dcb..d338c4c2b16 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceDetectionResult.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceDetectionResult.cs @@ -14,7 +14,7 @@ * limitations under the License. */ -using System.Collections.ObjectModel; +using System; namespace Tizen.Multimedia.Vision { @@ -23,6 +23,7 @@ namespace Tizen.Multimedia.Vision /// . /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class FaceDetectionResult { internal FaceDetectionResult(float confidence, global::Interop.MediaVision.Rectangle location) @@ -35,12 +36,14 @@ internal FaceDetectionResult(float confidence, global::Interop.MediaVision.Recta /// Gets the confidence of detected face. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public float Confidence { get; } /// /// Gets the location of detected face. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public Rectangle Location { get; } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceDetector.cs index bec227f1385..d9bc59253a6 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceDetector.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceDetector.cs @@ -31,6 +31,7 @@ namespace Tizen.Multimedia.Vision /// please use . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static class FaceDetector { /// @@ -47,6 +48,7 @@ public static class FaceDetector /// /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task DetectAsync(MediaVisionSource source) { return await DetectAsync(source, (FaceDetectionConfiguration)null); @@ -63,6 +65,7 @@ public static async Task DetectAsync(MediaVisionSource source) /// The feature is not supported. /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task DetectAsync(MediaVisionSource source, FaceDetectionConfiguration config) { @@ -131,6 +134,7 @@ private static InteropFace.DetectedCallback GetCallback(TaskCompletionSourceThe caller has no required privilege. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task> DetectAsync(MediaVisionSource source, InferenceModelConfiguration config) { diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionConfiguration.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionConfiguration.cs index 9131053591e..97363be0f2e 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionConfiguration.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionConfiguration.cs @@ -23,6 +23,7 @@ namespace Tizen.Multimedia.Vision /// /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class FaceRecognitionConfiguration : EngineConfiguration { private const string KeyModelType = "MV_FACE_RECOGNITION_MODEL_TYPE"; @@ -32,6 +33,7 @@ public class FaceRecognitionConfiguration : EngineConfiguration /// /// The feature is not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public FaceRecognitionConfiguration() : base("face_recognition") { } @@ -42,6 +44,7 @@ public FaceRecognitionConfiguration() : base("face_recognition") ///
/// is not valid. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public FaceRecognitionModelType ModelType { get diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionModel.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionModel.cs index 4770a52c8ee..86fc1372bc1 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionModel.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionModel.cs @@ -26,6 +26,7 @@ namespace Tizen.Multimedia.Vision ///
/// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class FaceRecognitionModel : IDisposable { private IntPtr _handle = IntPtr.Zero; @@ -36,6 +37,7 @@ public class FaceRecognitionModel : IDisposable /// /// The feature is not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public FaceRecognitionModel() { InteropModel.Create(out _handle).Validate("Failed to create FaceRecognitionModel"); @@ -58,6 +60,7 @@ public FaceRecognitionModel() /// No permission to access the specified file. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public FaceRecognitionModel(string modelPath) { if (modelPath == null) @@ -82,6 +85,7 @@ public FaceRecognitionModel(string modelPath) /// /// The has already been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int[] Labels { get @@ -116,6 +120,7 @@ public int[] Labels /// The has already been disposed of. /// The directory for does not exist. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Save(string path) { if (path == null) @@ -159,6 +164,7 @@ private MediaVisionError InvokeAdd(MediaVisionSource source, int label, Rectangl ///
/// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Add(MediaVisionSource source, int label) { if (source == null) @@ -185,6 +191,7 @@ public void Add(MediaVisionSource source, int label) /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Add(MediaVisionSource source, int label, Rectangle area) { if (source == null) @@ -204,6 +211,7 @@ public void Add(MediaVisionSource source, int label, Rectangle area) /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public bool Remove(int label) { var ret = InteropModel.Remove(Handle, ref label); @@ -222,6 +230,7 @@ public bool Remove(int label) /// /// The has already been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Reset() { InteropModel.Reset(Handle).Validate("Failed to reset image example"); @@ -242,6 +251,7 @@ public void Reset() /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Learn() { Learn(null); @@ -266,6 +276,7 @@ public void Learn() /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Learn(FaceRecognitionConfiguration config) { InteropModel.Learn(EngineConfiguration.GetHandle(config), Handle). @@ -276,6 +287,7 @@ public void Learn(FaceRecognitionConfiguration config) /// Releases all the resources used by the object. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Dispose() { Dispose(true); @@ -289,6 +301,7 @@ public void Dispose() /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] protected virtual void Dispose(bool disposing) { if (_disposed) diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionModelType.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionModelType.cs index 2625ef0727c..667ea154694 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionModelType.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionModelType.cs @@ -14,12 +14,15 @@ * limitations under the License. */ +using System; + namespace Tizen.Multimedia.Vision { /// /// Specifies the face recognition model learning algorithms. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public enum FaceRecognitionModelType { /// diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionResult.cs index 283d6d119ad..5b5b6ae2fd4 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionResult.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionResult.cs @@ -14,12 +14,15 @@ * limitations under the License. */ +using System; + namespace Tizen.Multimedia.Vision { /// /// Represents the result of operations. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class FaceRecognitionResult { internal FaceRecognitionResult(bool recognized, double confidence, int label, Rectangle? area) @@ -34,18 +37,21 @@ internal FaceRecognitionResult(bool recognized, double confidence, int label, Re /// Gets the value indicating the recognition is successful. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public bool Success { get; } /// /// Gets the label of the recognized face. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int Label { get; } /// /// Gets the location of the recognized face. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public Rectangle? Area { get; } /// @@ -55,6 +61,7 @@ internal FaceRecognitionResult(bool recognized, double confidence, int label, Re /// then threshold can be reduced (0.5-0.85). /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double Confidence { get; } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognizer.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognizer.cs index 8ec7764b959..81cf97eff3d 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognizer.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceRecognizer.cs @@ -25,6 +25,7 @@ namespace Tizen.Multimedia.Vision /// Provides the ability to recognize faces, face expressions, and eye condition on image sources. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static class FaceRecognizer { @@ -44,6 +45,7 @@ public static class FaceRecognizer /// is untrained model. /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task RecognizeAsync(MediaVisionSource source, FaceRecognitionModel recognitionModel) { @@ -67,6 +69,7 @@ public static async Task RecognizeAsync(MediaVisionSource /// is untrained model. /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task RecognizeAsync(MediaVisionSource source, FaceRecognitionModel recognitionModel, Rectangle bound) { @@ -94,6 +97,7 @@ public static async Task RecognizeAsync(MediaVisionSource /// is untrained model. /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task RecognizeAsync(MediaVisionSource source, FaceRecognitionModel recognitionModel, FaceRecognitionConfiguration config) { @@ -123,6 +127,7 @@ public static async Task RecognizeAsync(MediaVisionSource /// is untrained model. /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task RecognizeAsync(MediaVisionSource source, FaceRecognitionModel recognitionModel, Rectangle bound, FaceRecognitionConfiguration config) { @@ -216,6 +221,7 @@ private static InteropFace.RecognizedCallback GetRecognizedCallback( /// The feature is not supported. /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task RecognizeEyeConditionAsync(MediaVisionSource source, Rectangle bound) { @@ -238,6 +244,7 @@ public static async Task RecognizeEyeConditionAsync(MediaVisionSou /// The feature is not supported. /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task RecognizeEyeConditionAsync(MediaVisionSource source, Rectangle bound, FaceRecognitionConfiguration config) { @@ -278,6 +285,7 @@ public static async Task RecognizeEyeConditionAsync(MediaVisionSou /// The feature is not supported. /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task RecognizeFacialExpressionAsync(MediaVisionSource source, Rectangle bound) { @@ -300,6 +308,7 @@ public static async Task RecognizeFacialExpressionAsync(MediaV /// The feature is not supported. /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task RecognizeFacialExpressionAsync(MediaVisionSource source, Rectangle bound, FaceRecognitionConfiguration config) { diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceTracker.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceTracker.cs index bc64764533a..d5710b0c4e8 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceTracker.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceTracker.cs @@ -25,6 +25,7 @@ namespace Tizen.Multimedia.Vision /// Provides the ability to track faces on image sources. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static class FaceTracker { @@ -51,6 +52,7 @@ public static class FaceTracker /// is not prepared. /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task TrackAsync(MediaVisionSource source, FaceTrackingModel trackingModel, bool doLearn) { diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceTrackingModel.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceTrackingModel.cs index 6f52d1e214d..2714af06687 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceTrackingModel.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceTrackingModel.cs @@ -25,6 +25,7 @@ namespace Tizen.Multimedia.Vision /// /// http://tizen.org/feature/vision.face_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class FaceTrackingModel : IDisposable { private IntPtr _handle = IntPtr.Zero; @@ -35,6 +36,7 @@ public class FaceTrackingModel : IDisposable /// /// The feature is not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public FaceTrackingModel() { InteropModel.Create(out _handle).Validate("Failed to create FaceTrackingModel."); @@ -57,6 +59,7 @@ public FaceTrackingModel() /// No permission to access the specified file. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public FaceTrackingModel(string modelPath) { if (modelPath == null) @@ -109,6 +112,7 @@ private MediaVisionError InvokePrepare(MediaVisionSource source, Quadrangle regi /// has already bean disposed of. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Prepare(MediaVisionSource source, Quadrangle region) { if (source == null) @@ -128,6 +132,7 @@ public void Prepare(MediaVisionSource source, Quadrangle region) /// The has already been disposed of. /// The directory for does not exist. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Save(string path) { if (path == null) @@ -149,6 +154,7 @@ public void Save(string path) /// Releases all the resources used by the object. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Dispose() { Dispose(true); @@ -162,6 +168,7 @@ public void Dispose() /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] protected virtual void Dispose(bool disposing) { if (_disposed) diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FaceTrackingResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/FaceTrackingResult.cs index 99545c11be8..a9938d88a80 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FaceTrackingResult.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FaceTrackingResult.cs @@ -14,12 +14,15 @@ * limitations under the License. */ +using System; + namespace Tizen.Multimedia.Vision { /// /// Represents the result of face tracking operation. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class FaceTrackingResult { internal FaceTrackingResult(bool success, double confidence, Quadrangle region) @@ -33,12 +36,14 @@ internal FaceTrackingResult(bool success, double confidence, Quadrangle region) /// Gets the value indicating the tracking is successful. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public bool Success { get; } /// /// Gets the region which determines the new position of the tracked face on the source. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public Quadrangle Region { get; } /// @@ -46,6 +51,7 @@ internal FaceTrackingResult(bool success, double confidence, Quadrangle region) /// (value from 0.0 to 1.0). If no location was determined during the last track iteration, then the value is 0.0. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double Confidence { get; } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FacialExpression.cs b/src/Tizen.Multimedia.Vision/MediaVision/FacialExpression.cs index 8a722c6de73..c24487a23fe 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FacialExpression.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FacialExpression.cs @@ -14,12 +14,15 @@ * limitations under the License. */ +using System; + namespace Tizen.Multimedia.Vision { /// /// Specifies the expression types for faces. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public enum FacialExpression { /// diff --git a/src/Tizen.Multimedia.Vision/MediaVision/FacialLandmarkDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/FacialLandmarkDetector.cs index 7a50bdf6d6c..27f53c49cff 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/FacialLandmarkDetector.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/FacialLandmarkDetector.cs @@ -28,6 +28,7 @@ namespace Tizen.Multimedia.Vision /// Provides the ability to detect facial landmarks on image source using inference engine. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static class FacialLandmarkDetector { /// @@ -51,6 +52,7 @@ public static class FacialLandmarkDetector /// The caller has no required privilege. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task> DetectAsync(MediaVisionSource source, InferenceModelConfiguration config) { diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ImageClassificationResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/ImageClassificationResult.cs index d7741b15eb1..fcaff0512cc 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ImageClassificationResult.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ImageClassificationResult.cs @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -using System.Collections.ObjectModel; +using System; namespace Tizen.Multimedia.Vision { @@ -22,6 +22,7 @@ namespace Tizen.Multimedia.Vision /// . /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class ImageClassificationResult { internal ImageClassificationResult(int indice, string name, float confidence) @@ -35,18 +36,21 @@ internal ImageClassificationResult(int indice, string name, float confidence) /// Gets the indice of detected object. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int Indice { get; } /// /// Gets the name of detected object. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public string Name { get; } /// /// Gets the confidence of detected object. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public float Confidence { get; } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ImageClassifier.cs b/src/Tizen.Multimedia.Vision/MediaVision/ImageClassifier.cs index 44ca7b67a52..8b71f375704 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ImageClassifier.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ImageClassifier.cs @@ -27,6 +27,7 @@ namespace Tizen.Multimedia.Vision /// Provides the ability to classify image objects on image source using inference engine. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static class ImageClassifier { /// @@ -47,6 +48,7 @@ public static class ImageClassifier /// The caller has no required privilege. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task> ClassifyAsync(MediaVisionSource source, InferenceModelConfiguration config) { diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ImageFillConfiguration.cs b/src/Tizen.Multimedia.Vision/MediaVision/ImageFillConfiguration.cs index 6a52f42b02d..6475c24fb68 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ImageFillConfiguration.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ImageFillConfiguration.cs @@ -23,6 +23,7 @@ namespace Tizen.Multimedia.Vision /// /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class ImageFillConfiguration : EngineConfiguration { private const string KeyScaleFactor = "MV_IMAGE_RECOGNITION_OBJECT_SCALE_FACTOR"; @@ -32,12 +33,14 @@ public class ImageFillConfiguration : EngineConfiguration /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly double DefaultScaleFactor = 1.2; /// /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly int DefaultMaxKeypoints = 1000; /// @@ -45,6 +48,7 @@ public class ImageFillConfiguration : EngineConfiguration /// /// The feature is not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public ImageFillConfiguration() : base("image_recognition") { } @@ -56,6 +60,7 @@ public ImageFillConfiguration() : base("image_recognition") /// /// The already has been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double ObjectScaleFactor { get @@ -76,6 +81,7 @@ public double ObjectScaleFactor /// /// The already has been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int ObjectMaxKeyPoints { get diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ImageObject.cs b/src/Tizen.Multimedia.Vision/MediaVision/ImageObject.cs index 61de3cca6cd..dcb48999814 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ImageObject.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ImageObject.cs @@ -25,6 +25,7 @@ namespace Tizen.Multimedia.Vision /// /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class ImageObject : IDisposable { private IntPtr _handle = IntPtr.Zero; @@ -35,6 +36,7 @@ public class ImageObject : IDisposable /// /// The feature is not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public ImageObject() { InteropImage.Create(out _handle).Validate("Failed to create image object"); @@ -57,6 +59,7 @@ public ImageObject() /// No permission to access the specified file. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public ImageObject(string path) { if (path == null) @@ -92,6 +95,7 @@ public ImageObject(string path) /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double RecognitionRate { get @@ -111,6 +115,7 @@ public double RecognitionRate /// The has already been disposed of. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int? GetLabel() { var ret = InteropImage.GetLabel(Handle, out var label); @@ -130,6 +135,7 @@ public double RecognitionRate /// The label which will be assigned to the image object. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void SetLabel(int label) { InteropImage.SetLabel(Handle, label).Validate("Failed to set label"); @@ -147,6 +153,7 @@ public void SetLabel(int label) /// has already been disposed of. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Fill(MediaVisionSource source) { InvokeFill(source, null, null); @@ -167,6 +174,7 @@ public void Fill(MediaVisionSource source) /// has already been disposed of. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Fill(MediaVisionSource source, ImageFillConfiguration config) { InvokeFill(source, config, null); @@ -186,6 +194,7 @@ public void Fill(MediaVisionSource source, ImageFillConfiguration config) /// has already been disposed of. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Fill(MediaVisionSource source, Rectangle rect) { InvokeFill(source, null, rect); @@ -208,6 +217,7 @@ public void Fill(MediaVisionSource source, Rectangle rect) /// has already been disposed of. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Fill(MediaVisionSource source, ImageFillConfiguration config, Rectangle rect) { InvokeFill(source, config, rect); @@ -245,6 +255,7 @@ private void InvokeFill(MediaVisionSource source, ImageFillConfiguration config, /// The has already been disposed of. /// The directory for does not exist. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Save(string path) { if (path == null) @@ -269,6 +280,7 @@ public void Save(string path) /// Releases all the resources used by the object. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Dispose() { Dispose(true); @@ -282,6 +294,7 @@ public void Dispose() /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] protected virtual void Dispose(bool disposing) { if (_disposed) diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognitionConfiguration.cs b/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognitionConfiguration.cs index aeaa3a67ae9..bae52578ea7 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognitionConfiguration.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognitionConfiguration.cs @@ -23,6 +23,7 @@ namespace Tizen.Multimedia.Vision /// /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class ImageRecognitionConfiguration : EngineConfiguration { private const string KeySceneScaleFactor = "MV_IMAGE_RECOGNITION_SCENE_SCALE_FACTOR"; @@ -36,30 +37,35 @@ public class ImageRecognitionConfiguration : EngineConfiguration /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly double DefaultSceneScaleFactor = 1.2; /// /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly int DefaultSceneMaxKeypoints = 5000; /// /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly int DefaultMinKeyPointMatches = 30; /// /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly double DefaultRequiredMatchPart = 0.05; /// /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly double DefaultTolerantPartMatchError = 0.1; /// @@ -67,6 +73,7 @@ public class ImageRecognitionConfiguration : EngineConfiguration /// /// The feature is not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public ImageRecognitionConfiguration() : base("image_recognition") { } @@ -80,6 +87,7 @@ public ImageRecognitionConfiguration() : base("image_recognition") /// /// The already has been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double SceneScaleFactor { get @@ -103,6 +111,7 @@ public double SceneScaleFactor /// The already has been disposed of. /// is less than zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int SceneMaxKeyPoints { get @@ -130,6 +139,7 @@ public int SceneMaxKeyPoints /// The already has been disposed of. /// is less than zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int MinKeyPointMatches { get @@ -164,6 +174,7 @@ public int MinKeyPointMatches /// is greater than one. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double RequiredMatchingPart { get @@ -195,6 +206,7 @@ public double RequiredMatchingPart /// is greater than one. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double TolerantPartMatchError { get diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognitionResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognitionResult.cs index 34667ca7da7..6f759de861a 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognitionResult.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognitionResult.cs @@ -14,12 +14,15 @@ * limitations under the License. */ +using System; + namespace Tizen.Multimedia.Vision { /// /// Represents a result of RecognizeAsync operations of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class ImageRecognitionResult { @@ -34,12 +37,14 @@ internal ImageRecognitionResult(bool success, Quadrangle region) /// /// The region of recognized image object if successful, otherwise null. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public Quadrangle Region { get; } /// /// Gets the value indicating the recognition is successful. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public bool Success { get; } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognizer.cs b/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognizer.cs index c2bc20bd1ed..101426bf186 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognizer.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ImageRecognizer.cs @@ -25,6 +25,7 @@ namespace Tizen.Multimedia.Vision /// Provides the ability to recognize images on image sources. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static class ImageRecognizer { /// @@ -45,6 +46,7 @@ public static class ImageRecognizer /// has already been disposed of. /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task> RecognizeAsync( MediaVisionSource source, ImageObject[] imageObjects) { @@ -74,6 +76,7 @@ public static async Task> RecognizeAsync( /// /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task> RecognizeAsync(MediaVisionSource source, ImageObject[] imageObjects, ImageRecognitionConfiguration config) { diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ImageTracker.cs b/src/Tizen.Multimedia.Vision/MediaVision/ImageTracker.cs index c888a52c229..2c2d6a60f6c 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ImageTracker.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ImageTracker.cs @@ -25,6 +25,7 @@ namespace Tizen.Multimedia.Vision /// Provides the ability to track images on image sources. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static class ImageTracker { /// @@ -48,6 +49,7 @@ public static class ImageTracker /// /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task TrackAsync(MediaVisionSource source, ImageTrackingModel trackingModel) { @@ -78,6 +80,7 @@ public static async Task TrackAsync(MediaVisionSource source, /// /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task TrackAsync(MediaVisionSource source, ImageTrackingModel trackingModel, ImageTrackingConfiguration config) { diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ImageTrackingConfiguration.cs b/src/Tizen.Multimedia.Vision/MediaVision/ImageTrackingConfiguration.cs index abb7f477532..5e56c7e0a8a 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ImageTrackingConfiguration.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ImageTrackingConfiguration.cs @@ -23,6 +23,7 @@ namespace Tizen.Multimedia.Vision /// /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class ImageTrackingConfiguration : ImageRecognitionConfiguration { private const string KeyHistoryAmount = "MV_IMAGE_TRACKING_HISTORY_AMOUNT"; @@ -36,36 +37,42 @@ public class ImageTrackingConfiguration : ImageRecognitionConfiguration /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly int DefaultHistoryAmount = 3; /// /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly double DefaultExpectedOffset = 0; /// /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly bool DefaultStabilizationEnabled = true; /// /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly double DefaultStabilizationTolerantShift = 0.00006; /// /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly double DefaultStabilizationSpeed = 0.3; /// /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly double DefaultStabilizationAcceleration = 0.1; /// @@ -73,6 +80,7 @@ public class ImageTrackingConfiguration : ImageRecognitionConfiguration /// /// The feature is not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public ImageTrackingConfiguration() { } @@ -87,6 +95,7 @@ public ImageTrackingConfiguration() /// The already has been disposed of. /// is less than zero. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int HistoryAmount { get @@ -113,6 +122,7 @@ public int HistoryAmount /// /// The already has been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double ExpectedOffset { get @@ -140,6 +150,7 @@ public double ExpectedOffset /// is greater than one. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double StabilizationAcceleration { get @@ -166,6 +177,7 @@ public double StabilizationAcceleration /// /// The already has been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double StabilizationSpeed { get @@ -191,6 +203,7 @@ public double StabilizationSpeed /// /// The already has been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double StabilizationTolerantShift { get @@ -212,6 +225,7 @@ public double StabilizationTolerantShift /// /// The already has been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public bool IsStabilizationEnabled { get diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ImageTrackingModel.cs b/src/Tizen.Multimedia.Vision/MediaVision/ImageTrackingModel.cs index 98f55914f9c..b1bc25680fd 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ImageTrackingModel.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ImageTrackingModel.cs @@ -25,6 +25,7 @@ namespace Tizen.Multimedia.Vision /// /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class ImageTrackingModel : IDisposable { private IntPtr _handle = IntPtr.Zero; @@ -35,6 +36,7 @@ public class ImageTrackingModel : IDisposable /// /// The feature is not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public ImageTrackingModel() { InteropModel.Create(out _handle).Validate("Failed to create FaceTrackingModel"); @@ -57,6 +59,7 @@ public ImageTrackingModel() /// No permission to access the specified file. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public ImageTrackingModel(string modelPath) { if (modelPath == null) @@ -87,6 +90,7 @@ public ImageTrackingModel(string modelPath) /// /// Internal error.(Since API level 10) /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void SetTarget(ImageObject imageObject) { if (imageObject == null) @@ -106,6 +110,7 @@ public void SetTarget(ImageObject imageObject) /// /// The has already been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Refresh() { InteropModel.Refresh(Handle, IntPtr.Zero).Validate("Failed to refresh state"); @@ -120,6 +125,7 @@ public void Refresh() /// The has already been disposed of. /// The directory for does not exist. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Save(string path) { if (path == null) @@ -141,6 +147,7 @@ public void Save(string path) /// Releases all resources used by the object. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Dispose() { Dispose(true); @@ -154,6 +161,7 @@ public void Dispose() /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] protected virtual void Dispose(bool disposing) { if (_disposed) diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceModelConfiguration.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceModelConfiguration.cs index e12c60a8f26..72bab33ead4 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/InferenceModelConfiguration.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceModelConfiguration.cs @@ -35,6 +35,7 @@ namespace Tizen.Multimedia.Vision /// http://tizen.org/feature/vision.inference.face /// http://tizen.org/feature/vision.inference.image /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class InferenceModelConfiguration : EngineConfiguration { private IntPtr _inferenceHandle = IntPtr.Zero; @@ -73,6 +74,7 @@ public class InferenceModelConfiguration : EngineConfiguration /// http://tizen.org/feature/vision.inference.image /// The feature is not supported. /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public InferenceModelConfiguration() : base("inference") { InteropInference.Create(out _inferenceHandle).Validate("Failed to create inference configuration"); @@ -101,6 +103,7 @@ public InferenceModelConfiguration() : base("inference") /// Internal operation error. /// The caller has no required privilege. /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void LoadInferenceModel() { InteropInference.Configure(_inferenceHandle, GetHandle(this)). @@ -130,6 +133,7 @@ internal IntPtr GetHandle() /// /// If there's no supported backend, empty collection will be returned. /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public IEnumerable SupportedBackend { get @@ -193,6 +197,7 @@ private void GetSupportedBackend() /// /// Input file path is null. /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public string ConfigurationFilePath { get @@ -215,6 +220,7 @@ public string ConfigurationFilePath /// /// Input file path is null. /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public string WeightFilePath { get @@ -240,6 +246,7 @@ public string WeightFilePath ///
/// Input file path is null. /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public string CategoryFilePath { get @@ -265,6 +272,7 @@ public string CategoryFilePath /// /// Metadata file path is null. /// 9 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public string MetadataFilePath { get @@ -340,6 +348,7 @@ public double StdValue /// The engine type is not supported. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public InferenceBackendType Backend { get @@ -370,6 +379,7 @@ public InferenceBackendType Backend /// /// is not valid. /// 8 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public InferenceTargetDevice Device { get @@ -601,6 +611,7 @@ public double ConfidenceThreshold /// /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public Rectangle? Roi { get @@ -651,6 +662,7 @@ private static void ValidateRoi(Rectangle roi) /// true to release both managed and unmanaged resources, otherwise false to release only unmanaged resources. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] protected override void Dispose(bool disposing) { base.Dispose(disposing); diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceType.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceType.cs index 29b844b611c..0d1f74147ba 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/InferenceType.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceType.cs @@ -22,6 +22,7 @@ namespace Tizen.Multimedia.Vision /// Specifies the type of inference backend. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public enum InferenceBackendType { /// @@ -77,6 +78,7 @@ public enum InferenceBackendType /// Specifies the target device which is used for running . /// /// 8 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public enum InferenceTargetDevice { /// @@ -99,6 +101,7 @@ public enum InferenceTargetDevice /// Specifies the data type. /// /// 8 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public enum InferenceDataType { /// diff --git a/src/Tizen.Multimedia.Vision/MediaVision/MovementDetectedEventArgs.cs b/src/Tizen.Multimedia.Vision/MediaVision/MovementDetectedEventArgs.cs index 0cb70fcc392..1b162a8427f 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/MovementDetectedEventArgs.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/MovementDetectedEventArgs.cs @@ -23,12 +23,14 @@ namespace Tizen.Multimedia.Vision /// Provides data for the event. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class MovementDetectedEventArgs : EventArgs { /// /// Initializes a new instance of the class. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public MovementDetectedEventArgs(IEnumerable areas) { Areas = areas; @@ -38,6 +40,7 @@ public MovementDetectedEventArgs(IEnumerable areas) /// Gets a set of rectangular regions where movement was detected. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public IEnumerable Areas { get; } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/MovementDetectionConfiguration.cs b/src/Tizen.Multimedia.Vision/MediaVision/MovementDetectionConfiguration.cs index 833a59e0732..d45417db880 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/MovementDetectionConfiguration.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/MovementDetectionConfiguration.cs @@ -24,6 +24,7 @@ namespace Tizen.Multimedia.Vision /// http://tizen.org/feature/vision.face_recognition /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class MovementDetectionConfiguration : SurveillanceEngineConfiguration { private const string KeyThreshold = "MV_SURVEILLANCE_MOVEMENT_DETECTION_THRESHOLD"; @@ -32,6 +33,7 @@ public class MovementDetectionConfiguration : SurveillanceEngineConfiguration /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly int DefaultThreshold = 10; /// @@ -39,6 +41,7 @@ public class MovementDetectionConfiguration : SurveillanceEngineConfiguration /// /// The required features are not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public MovementDetectionConfiguration() { } @@ -61,6 +64,7 @@ public MovementDetectionConfiguration() /// is greater than 255. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int Threshold { get diff --git a/src/Tizen.Multimedia.Vision/MediaVision/MovementDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/MovementDetector.cs index e49e994bd7c..ddd689b9653 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/MovementDetector.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/MovementDetector.cs @@ -26,6 +26,7 @@ namespace Tizen.Multimedia.Vision /// http://tizen.org/feature/vision.image_recognition /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class MovementDetector : SurveillanceEngine { private const string KeyNumberOfRegions = "NUMBER_OF_MOVEMENT_REGIONS"; @@ -38,6 +39,7 @@ public class MovementDetector : SurveillanceEngine /// /// The required features are not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public MovementDetector() : base(MovementDetectedEventType) { } @@ -47,6 +49,7 @@ public MovementDetector() : base(MovementDetectedEventType) /// /// The event handler will be executed on an internal thread. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public event EventHandler Detected; private void RegisterEvent() @@ -88,6 +91,7 @@ private static MovementDetectedEventArgs CreateMovementDetectedEventArgs(IntPtr /// The has already been disposed of. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void AddSource(SurveillanceSource source) { AddSource(source, null); @@ -106,6 +110,7 @@ public void AddSource(SurveillanceSource source) /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void AddSource(SurveillanceSource source, MovementDetectionConfiguration config) { RegisterEvent(); diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ObjectDetectionResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/ObjectDetectionResult.cs index 9922341cf7a..faec5aa6c04 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ObjectDetectionResult.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ObjectDetectionResult.cs @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -using System.Collections.ObjectModel; +using System; namespace Tizen.Multimedia.Vision { @@ -22,6 +22,7 @@ namespace Tizen.Multimedia.Vision /// . /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class ObjectDetectionResult { internal ObjectDetectionResult(int indice, string name, float confidence, @@ -37,24 +38,28 @@ internal ObjectDetectionResult(int indice, string name, float confidence, /// Gets the indice of detected object. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int Indice { get; } /// /// Gets the name of detected object. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public string Name { get; } /// /// Gets the confidence of detected object. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public float Confidence { get; } /// /// Gets the location of detected object. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public Rectangle Location { get; } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/ObjectDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/ObjectDetector.cs index 31caef671e1..4b356a416c8 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/ObjectDetector.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/ObjectDetector.cs @@ -26,6 +26,7 @@ namespace Tizen.Multimedia.Vision /// Provides the ability to detect objects and get its locations on image source using inference engine. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static class ObjectDetector { /// @@ -46,6 +47,7 @@ public static class ObjectDetector /// The caller has no required privilege. /// /// 6 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task> DetectAsync(MediaVisionSource source, InferenceModelConfiguration config) { diff --git a/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetectedEventArgs.cs b/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetectedEventArgs.cs index 70d4a09e83f..027ed74beb2 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetectedEventArgs.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetectedEventArgs.cs @@ -23,12 +23,14 @@ namespace Tizen.Multimedia.Vision /// Provides data for the event. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class PersonAppearanceDetectedEventArgs : EventArgs { /// /// Initializes a new instance of the class. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public PersonAppearanceDetectedEventArgs(IEnumerable appeared, IEnumerable disappeared, IEnumerable tracked) { @@ -41,18 +43,21 @@ public PersonAppearanceDetectedEventArgs(IEnumerable appeared, /// Gets a set of rectangular regions where appearances of the persons were detected. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public IEnumerable AppearanceAreas { get; } /// /// Gets a set of rectangular regions where disappearances of the persons were detected. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public IEnumerable DisappearanceAreas { get; } /// /// Gets a set of rectangular regions where persons were tracked. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public IEnumerable TrackedAreas { get; } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetectionConfiguration.cs b/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetectionConfiguration.cs index 4a713770047..29a2407cfa0 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetectionConfiguration.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetectionConfiguration.cs @@ -24,6 +24,7 @@ namespace Tizen.Multimedia.Vision /// http://tizen.org/feature/vision.face_recognition /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class PersonAppearanceDetectionConfiguration : SurveillanceEngineConfiguration { private const string KeySkipFramesCount = "MV_SURVEILLANCE_SKIP_FRAMES_COUNT"; @@ -32,6 +33,7 @@ public class PersonAppearanceDetectionConfiguration : SurveillanceEngineConfigur /// A read-only field that represents the default value of . /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static readonly int DefaultSkipFramesCount = 0; /// @@ -39,6 +41,7 @@ public class PersonAppearanceDetectionConfiguration : SurveillanceEngineConfigur /// /// The required features are not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public PersonAppearanceDetectionConfiguration() { } @@ -57,6 +60,7 @@ public PersonAppearanceDetectionConfiguration() /// is less than zero. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int SkipFramesCount { get diff --git a/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetector.cs index d6c4de3c17c..4525a08298c 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetector.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/PersonAppearanceDetector.cs @@ -26,6 +26,7 @@ namespace Tizen.Multimedia.Vision /// http://tizen.org/feature/vision.image_recognition /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class PersonAppearanceDetector : SurveillanceEngine { private const string KeyAppearedNumber = "NUMBER_OF_APPEARED_PERSONS"; @@ -42,6 +43,7 @@ public class PersonAppearanceDetector : SurveillanceEngine /// /// The required features are not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public PersonAppearanceDetector() : base(PersonAppearanceEventType) { } @@ -51,6 +53,7 @@ public PersonAppearanceDetector() : base(PersonAppearanceEventType) /// /// The event handler will be executed on an internal thread. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public event EventHandler Detected; private void RegisterEvent() @@ -93,6 +96,7 @@ private static Rectangle[] GetResultAreas(IntPtr result, string countKey, string /// The has already been disposed of. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void AddSource(SurveillanceSource source) { AddSource(source, null); @@ -111,6 +115,7 @@ public void AddSource(SurveillanceSource source) /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void AddSource(SurveillanceSource source, PersonAppearanceDetectionConfiguration config) { RegisterEvent(); diff --git a/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognitionConfiguration.cs b/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognitionConfiguration.cs index 792320d4aa6..88a2c435c2f 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognitionConfiguration.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognitionConfiguration.cs @@ -24,6 +24,7 @@ namespace Tizen.Multimedia.Vision /// http://tizen.org/feature/vision.face_recognition /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class PersonRecognitionConfiguration : SurveillanceEngineConfiguration { private const string KeyFaceRecognitionModelFilePath = "MV_SURVEILLANCE_FACE_RECOGNITION_MODEL_FILE_PATH"; @@ -35,6 +36,7 @@ public class PersonRecognitionConfiguration : SurveillanceEngineConfiguration /// is null. /// The required features are not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public PersonRecognitionConfiguration(string modelPath) { FaceRecognitionModelPath = modelPath; @@ -46,6 +48,7 @@ public PersonRecognitionConfiguration(string modelPath) /// is null. /// The already has been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public string FaceRecognitionModelPath { get diff --git a/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognitionInfo.cs b/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognitionInfo.cs index eb622bb0243..970f3456525 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognitionInfo.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognitionInfo.cs @@ -14,18 +14,22 @@ * limitations under the License. */ +using System; + namespace Tizen.Multimedia.Vision { /// /// Represents a result of instances. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class PersonRecognitionInfo { /// /// Initializes a new instance of the class. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public PersonRecognitionInfo(Rectangle area, int label, double confidence) { Area = area; @@ -37,18 +41,21 @@ public PersonRecognitionInfo(Rectangle area, int label, double confidence) /// Gets the rectangular location where person face was recognized. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public Rectangle Area { get; } /// /// Gets the label that correspond to the recognized person. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public int Label { get; } /// /// Gets the confidence value that correspond to the recognized person. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public double Confidence { get; } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognizedEventArgs.cs b/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognizedEventArgs.cs index e28e981a52b..1009d4d6ac9 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognizedEventArgs.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognizedEventArgs.cs @@ -23,12 +23,14 @@ namespace Tizen.Multimedia.Vision /// Provides data for the event. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class PersonRecognizedEventArgs : EventArgs { /// /// Initializes a new instance of the class. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public PersonRecognizedEventArgs(IEnumerable recognitionInfo) { Recognitions = recognitionInfo; @@ -38,6 +40,7 @@ public PersonRecognizedEventArgs(IEnumerable recognitionI /// Gets a set of information that correspond to the recognized persons. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public IEnumerable Recognitions { get; } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognizer.cs b/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognizer.cs index 69c4e25e65f..cd963373ce3 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognizer.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/PersonRecognizer.cs @@ -26,6 +26,7 @@ namespace Tizen.Multimedia.Vision /// http://tizen.org/feature/vision.image_recognition /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class PersonRecognizer : SurveillanceEngine { private const string KeyCount = "NUMBER_OF_PERSONS"; @@ -40,6 +41,7 @@ public class PersonRecognizer : SurveillanceEngine /// /// The required features are not supported. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public PersonRecognizer() : base(PersonRecognizedEventType) { @@ -51,6 +53,7 @@ public PersonRecognizer() : base(PersonRecognizedEventType) /// The event handler will be executed on an internal thread. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public event EventHandler Recognized; private void RegisterEvent() @@ -114,6 +117,7 @@ private PersonRecognizedEventArgs CreatePersonRecognizedEventArgs(IntPtr result) /// The model file is not supported format or file. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void AddSource(SurveillanceSource source, PersonRecognitionConfiguration config) { if (config == null) diff --git a/src/Tizen.Multimedia.Vision/MediaVision/PoseLandmarkDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/PoseLandmarkDetector.cs index 1ff688a221e..0e01df90db6 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/PoseLandmarkDetector.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/PoseLandmarkDetector.cs @@ -30,12 +30,14 @@ namespace Tizen.Multimedia.Vision /// Represents a Landmark in pose detection. /// /// 9 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public struct Landmark { /// /// Represents a location in the 2D space. /// /// 9 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public Point Location { get; @@ -45,6 +47,7 @@ public Point Location /// Confidence score of point. /// /// 9 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public float Score { get; @@ -55,6 +58,7 @@ public float Score /// Provides the ability to detect Pose landmarks on image source using inference engine. /// /// 9 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static class PoseLandmarkDetector { /// @@ -77,6 +81,7 @@ public static class PoseLandmarkDetector /// The caller has no required privilege. /// /// 9 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public static async Task DetectAsync(MediaVisionSource source, InferenceModelConfiguration config) { diff --git a/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceConfiguration.cs b/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceConfiguration.cs index 1fadd6d4063..2bbc1406071 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceConfiguration.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceConfiguration.cs @@ -14,6 +14,8 @@ * limitations under the License. */ +using System; + namespace Tizen.Multimedia.Vision { /// @@ -22,6 +24,7 @@ namespace Tizen.Multimedia.Vision /// http://tizen.org/feature/vision.face_recognition /// http://tizen.org/feature/vision.image_recognition /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class SurveillanceEngineConfiguration : EngineConfiguration { internal SurveillanceEngineConfiguration() : base("face_recognition", "image_recognition") diff --git a/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceEngine.cs b/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceEngine.cs index cfbd25abe22..6a05ff2142f 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceEngine.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceEngine.cs @@ -30,6 +30,7 @@ namespace Tizen.Multimedia.Vision /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public abstract class SurveillanceEngine : IDisposable { private IntPtr _handle = IntPtr.Zero; @@ -70,6 +71,7 @@ internal IntPtr Handle /// /// The has already been disposed of. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public Point[] Roi { get @@ -123,6 +125,7 @@ internal void InvokeAddSource(SurveillanceSource source, SurveillanceEngineConfi /// The has already been disposed of. /// has not been added. /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void RemoveSource(SurveillanceSource source) { if (source == null) @@ -136,6 +139,7 @@ public void RemoveSource(SurveillanceSource source) /// Releases all the resources used by the object. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Dispose() { Dispose(true); @@ -149,6 +153,7 @@ public void Dispose() /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] protected virtual void Dispose(bool disposing) { if (_disposed) diff --git a/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceSource.cs b/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceSource.cs index 7a1eb5031d5..815cc78e1c9 100755 --- a/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceSource.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/SurveillanceSource.cs @@ -26,6 +26,7 @@ namespace Tizen.Multimedia.Vision /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public class SurveillanceSource { private static int _nextStreamId = int.MinValue; @@ -47,6 +48,7 @@ private static int GetNextStreamId() /// Initializes a new instance of the class. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public SurveillanceSource() { StreamId = GetNextStreamId(); @@ -65,6 +67,7 @@ public SurveillanceSource() /// /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API15.")] public void Push(MediaVisionSource source) { if (source == null) From ae67d59e77a00e50916134b25c8077826500916d Mon Sep 17 00:00:00 2001 From: shmin Date: Wed, 4 Sep 2024 10:35:23 +0900 Subject: [PATCH 071/198] Update deploy documents workflow (#6301) --- .github/workflows/deploy-documents-for-tizen-docs.yml | 3 +-- .github/workflows/deploy-documents.yml | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy-documents-for-tizen-docs.yml b/.github/workflows/deploy-documents-for-tizen-docs.yml index ff84dce4f77..2c0c209b9a8 100644 --- a/.github/workflows/deploy-documents-for-tizen-docs.yml +++ b/.github/workflows/deploy-documents-for-tizen-docs.yml @@ -15,7 +15,7 @@ jobs: build: runs-on: ubuntu-20.04 container: - image: tizendotnet/tizenfx-build-worker:2.4 + image: tizendotnet/tizenfx-build-worker:2.5 options: --ulimit nofile=10240:10240 steps: @@ -37,7 +37,6 @@ jobs: - name: Build Documents if: steps.cache-site.outputs.cache-hit != 'true' run: | - cp docfx_config/docfx.json docfx.json ./build.sh restore ./build.sh build diff --git a/.github/workflows/deploy-documents.yml b/.github/workflows/deploy-documents.yml index ad7604338eb..28bc31b06a5 100644 --- a/.github/workflows/deploy-documents.yml +++ b/.github/workflows/deploy-documents.yml @@ -10,7 +10,7 @@ jobs: build: runs-on: ubuntu-20.04 container: - image: tizendotnet/tizenfx-build-worker:2.4 + image: tizendotnet/tizenfx-build-worker:2.5 options: --ulimit nofile=10240:10240 steps: @@ -31,7 +31,6 @@ jobs: - name: Build Documents if: steps.cache-site.outputs.cache-hit != 'true' run: | - cp docfx_config/docfx.json docfx.json ./build.sh restore ./build.sh build ./build.sh index From dd3e0484153bc8102b46773417bf4487f695c7ad Mon Sep 17 00:00:00 2001 From: shmin Date: Wed, 4 Sep 2024 13:31:56 +0900 Subject: [PATCH 072/198] Update deploy-documents-for-tizen-docs.yml (#6304) --- .github/workflows/deploy-documents-for-tizen-docs.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/deploy-documents-for-tizen-docs.yml b/.github/workflows/deploy-documents-for-tizen-docs.yml index 2c0c209b9a8..e2eb44f4dd8 100644 --- a/.github/workflows/deploy-documents-for-tizen-docs.yml +++ b/.github/workflows/deploy-documents-for-tizen-docs.yml @@ -6,7 +6,6 @@ on: workflow_dispatch: env: - DOCFX_FILE: docfx_tizen_docs.json DEPLOY_BRANCH: tizen-docs-pages CACHE_NAME: docfx-tizen-docs-pages-site From 8202627491f39aaff82db251bb8663be5a039a0a Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Mon, 2 Sep 2024 21:29:20 +0900 Subject: [PATCH 073/198] [NUI] Add more comments --- .../src/public/Accessibility/Accessibility.cs | 33 +++++++++------ .../src/public/Animation/AlphaFunction.cs | 23 +++++++++-- .../src/public/Animation/Animatable.cs | 40 ++++++++++++++++++- .../src/public/Animation/Animation.cs | 31 ++++++++++++++ .../src/public/Animation/KeyFrames.cs | 19 +++++++++ 5 files changed, 128 insertions(+), 18 deletions(-) diff --git a/src/Tizen.NUI/src/public/Accessibility/Accessibility.cs b/src/Tizen.NUI/src/public/Accessibility/Accessibility.cs index d86a9d27262..2fe5a1e341b 100755 --- a/src/Tizen.NUI/src/public/Accessibility/Accessibility.cs +++ b/src/Tizen.NUI/src/public/Accessibility/Accessibility.cs @@ -25,11 +25,11 @@ namespace Tizen.NUI.Accessibility { /// - /// Accessibility provides Dali-ATSPI interface which has functionality of Screen-Reader and general accessibility + /// Accessibility provides Dali-ATSPI interface which has functionality of Screen-Reader and general accessibility. /// // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [SuppressMessage("Microsoft.Design", "CA1724: Type names should not match namespaces")] - [SuppressMessage("Microsoft.Design", "CA1001:Types that own disposable fields should be disposable", Justification = "This is a singleton class and is not disposed")] + [SuppressMessage("Microsoft.Design", "CA1001: Types that own disposable fields should be disposable", Justification = "This is a singleton class and is not disposed")] [EditorBrowsable(EditorBrowsableState.Never)] public static class Accessibility { @@ -99,10 +99,10 @@ public static bool IsScreenReaderEnabled #region Method /// - /// Start to speak + /// Start to speak. /// - /// Content to be spoken - /// true to be stopped and discarded when other Say is triggered + /// Content to be spoken. + /// true to be stopped and discarded when other Say is triggered. /// // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] @@ -113,9 +113,9 @@ public static void Say(string sentence, bool discardable) } /// - /// To make Say be paused or resumed + /// To make Say be paused or resumed. /// - /// true to be paused, false to be resumed + /// true to be paused, false to be resumed. // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] public static void PauseResume(bool pause) @@ -125,9 +125,9 @@ public static void PauseResume(bool pause) } /// - /// Cancels anything screen-reader is reading / has queued to read + /// Cancels anything screen-reader is reading / has queued to read. /// - /// whether to cancel non-discardable readings as well + /// whether to cancel non-discardable readings as well. // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] public static void StopReading(bool alsoNonDiscardable) @@ -137,9 +137,9 @@ public static void StopReading(bool alsoNonDiscardable) } /// - /// Suppress reading of screen-reader + /// Suppress reading of screen-reader. /// - /// whether to suppress reading of screen-reader + /// whether to suppress reading of screen-reader. // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] public static bool SuppressScreenReader(bool suppress) @@ -150,7 +150,7 @@ public static bool SuppressScreenReader(bool suppress) } /// - /// Re-enables auto-initialization of AT-SPI bridge + /// Re-enables auto-initialization of AT-SPI bridge. /// /// /// Normal applications do not have to call this function. The AT-SPI bridge is initialized on demand. @@ -163,7 +163,7 @@ public static void BridgeEnableAutoInit() } /// - /// Blocks auto-initialization of AT-SPI bridge + /// Blocks auto-initialization of AT-SPI bridge. /// /// /// Use this only if your application starts before DBus does, and call it early in Main(). @@ -204,6 +204,7 @@ public static void SetHighlightFrameView(View view) /// /// Get highligted View. /// + /// The currently highlighted view. // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] public static View GetCurrentlyHighlightedView() @@ -218,6 +219,7 @@ public static View GetCurrentlyHighlightedView() /// /// Clear highlight. /// + /// true if the highlight was cleared successfully, otherwise false. // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] public static bool ClearCurrentlyHighlightedView() @@ -243,30 +245,35 @@ public enum SayFinishedState // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] Invalid = -1, + /// /// Cancelled /// // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] Cancelled = 1, + /// /// Stopped /// // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] Stopped = 2, + /// /// Skipped /// // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] Skipped = 3, + /// /// Paused /// // This will be public opened after ACR done. (Before ACR, need to be hidden as Inhouse API) [EditorBrowsable(EditorBrowsableState.Never)] Paused = 4, + /// /// Resumed /// diff --git a/src/Tizen.NUI/src/public/Animation/AlphaFunction.cs b/src/Tizen.NUI/src/public/Animation/AlphaFunction.cs index a37e21692f7..227f105d7c1 100755 --- a/src/Tizen.NUI/src/public/Animation/AlphaFunction.cs +++ b/src/Tizen.NUI/src/public/Animation/AlphaFunction.cs @@ -25,6 +25,21 @@ namespace Tizen.NUI /// Understanding an animation as a parametric function over time, the alpha function is applied to the parameter of /// the animation before computing the final animation value. /// + /// + /// View view = new View() + /// { + /// Size2D = new Size2D(100, 100), + /// Position2D = new Position2D(100, 100), + /// BackgroundColor = Color.Red, + /// }; + /// Window.Default.Add(view); + /// Animation animation = new Animation(); + /// const float destinationValue = 300.0f; + /// const int startTime = 0; // animation starts at 0 second point. no delay. + /// const int endTime = 5000; // animation ends at 5 second point. + /// animation.AnimateTo(view, "PositionX", destinationValue, startTime, endTime, new AlphaFunction(AlphaFunction.BuiltinFunctions.EaseIn)); + /// animation.Play(); + /// /// 3 public class AlphaFunction : Disposable { @@ -85,24 +100,24 @@ internal AlphaFunction(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, // } /// - /// This specifies the various types of BuiltinFunctions. + /// This specifies the various types of built-in alpha functions available for animations. /// /// 3 [System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1717:Only FlagsAttribute enums should have plural names")] public enum BuiltinFunctions { /// - /// Linear. + /// Default alpha function. Linear alpha function. /// [Description("DEFAULT")] Default, /// - /// No transformation. + /// Linear alpha function. (No transformation) /// [Description("LINEAR")] Linear, /// - /// Reverse linear. + /// Reverse linear alpha function. /// [Description("REVERSE")] Reverse, diff --git a/src/Tizen.NUI/src/public/Animation/Animatable.cs b/src/Tizen.NUI/src/public/Animation/Animatable.cs index 31441e057e0..fc2a77cce48 100755 --- a/src/Tizen.NUI/src/public/Animation/Animatable.cs +++ b/src/Tizen.NUI/src/public/Animation/Animatable.cs @@ -21,8 +21,46 @@ namespace Tizen.NUI { /// - /// Animatable. + /// The class that represents an object capable of animation is the parent class of the minimum unit of visual, View. + /// When a property is an animatable property, it means that its value can change continuously as the target of an animation. + /// In this case, if a property notification callback is set, you can receive the callback according to the changing values. + /// Additionally, users can also add their own properties. /// + /// + /// View view = new View() + /// { + /// Size2D = new Size2D(100, 100), + /// Position2D = new Position2D(100, 100), + /// BackgroundColor = Color.Red, + /// }; + /// + /// Window.Default.Add(view); + /// Animation animation = new Animation(); + /// const float destinationValue = 300.0f; + /// const int startTime = 0; // animation starts at 0 second point. no delay. + /// const int endTime = 5000; // animation ends at 5 second point. + /// animation.AnimateTo(view, "PositionX", destinationValue, startTime, endTime, new AlphaFunction(AlphaFunction.BuiltinFunctions.EaseInSine)); + /// animation.Play(); + /// + /// PropertyNotification propertyNotification = view.AddPropertyNotification("position", PropertyCondition.Step(10.0f)); + /// propertyNotification.Notified += (object source, PropertyNotification.NotifyEventArgs args) => + /// { + /// Animatable target = args.PropertyNotification.GetTarget(); + /// if (target is View viewTarget) + /// { + /// Tizen.Log.Debug("NUI", $"postion changed! ({viewTarget.CurrentPosition.X},{viewTarget.CurrentPosition.Y})"); + /// } + /// }; + /// + /// Animatable animatable = new Animatable(); + /// int myPropertyIndex = animatable.RegisterProperty("myProperty", new PropertyValue(100), PropertyAccessMode.ReadWrite); + /// animatable.GetProperty(myPropertyIndex).Get(out int aValue); + /// Tizen.Log.Debug("NUI", $"myProperty value : {aValue} (should be 100)"); + /// + /// animatable.SetProperty(myPropertyIndex, new PropertyValue(200)); + /// animatable.GetProperty(myPropertyIndex).Get(out aValue); + /// Tizen.Log.Debug("NUI", $"myProperty value : {aValue} (should be 200)"); + /// /// 3 public class Animatable : BaseHandle { diff --git a/src/Tizen.NUI/src/public/Animation/Animation.cs b/src/Tizen.NUI/src/public/Animation/Animation.cs index b8e4d321c9d..308560b121e 100755 --- a/src/Tizen.NUI/src/public/Animation/Animation.cs +++ b/src/Tizen.NUI/src/public/Animation/Animation.cs @@ -35,6 +35,23 @@ namespace Tizen.NUI /// The overall animation time is superseded by the values given in the animation time used when calling the AnimateTo(), AnimateBy(), AnimateBetween() and AnimatePath() methods.
/// If any of the individual calls to those functions exceeds the overall animation time (Duration), then the overall animation time is automatically extended.
/// + /// + /// View view = new View() + /// { + /// Size2D = new Size2D(100, 100), + /// Position2D = new Position2D(100, 100), + /// BackgroundColor = Color.Red, + /// }; + /// + /// Window.Default.Add(view); + /// Animation animation = new Animation(); + /// const float destinationValue = 300.0f; + /// const int startTime = 0; // animation starts at 0 second point. no delay. + /// const int endTime = 5000; // animation ends at 5 second point. + /// animation.AnimateTo(view, "PositionX", destinationValue, startTime, endTime); // position x animation. + /// animation.AnimateTo(view, "SizeHeight", destinationValue + 100, startTime + 1000, endTime + 2000); // size height animation. + /// animation.Play(); + /// /// 3 public class Animation : BaseHandle { @@ -1252,6 +1269,10 @@ public Animation() : this(Interop.Animation.New(0.0f), true) /// /// Plays the animation. /// + /// + /// var animation = new Animation(); + /// animation.Play(); + /// /// 3 public void Play() { @@ -1291,6 +1312,11 @@ public void PlayAfter(int delayMilliseconds) /// /// Pauses the animation. /// + /// + /// var animation = new Animation(); + /// animation.Play(); + /// animation.Pause(); + /// /// 3 public void Pause() { @@ -1301,6 +1327,11 @@ public void Pause() /// /// Stops the animation. /// + /// + /// var animation = new Animation(); + /// animation.Play(); + /// animation.Stop(); + /// /// 3 public void Stop() { diff --git a/src/Tizen.NUI/src/public/Animation/KeyFrames.cs b/src/Tizen.NUI/src/public/Animation/KeyFrames.cs index 818e1913ca4..1fd29ec8003 100755 --- a/src/Tizen.NUI/src/public/Animation/KeyFrames.cs +++ b/src/Tizen.NUI/src/public/Animation/KeyFrames.cs @@ -23,6 +23,24 @@ namespace Tizen.NUI /// A set of key frames for a property that can be animated using DALi animation.
/// This allows the generation of key frame objects from individual Property::Values.
/// + /// + /// View view = new View() + /// { + /// Size2D = new Size2D(100, 100), + /// Position2D = new Position2D(100, 100), + /// BackgroundColor = Color.Red, + /// }; + /// + /// Window.Default.Add(view); + /// Animation animation = new Animation(5000); // 5s duration. + /// KeyFrames keyFrames = new KeyFrames(); + /// keyFrames.Add(0.0f, new Rotation(new Radian(new Degree(-32.0f)), Vector3.ZAxis)); + /// keyFrames.Add(0.3f, new Rotation(new Radian(new Degree(133.0f)), Vector3.ZAxis)); + /// keyFrames.Add(0.75f, new Rotation(new Radian(new Degree(-12.0f)), Vector3.ZAxis)); + /// keyFrames.Add(1.0f, new Rotation(new Radian(new Degree(135.0f)), Vector3.ZAxis)); + /// animation.AnimateBetween(view, "Orientation", keyFrames); + /// animation.Play(); + /// /// 3 public class KeyFrames : BaseHandle { @@ -108,6 +126,7 @@ public void Add(float progress, PropertyValue value, AlphaFunction alpha) /// /// Get the number of added key frame. /// + /// The number of key frames currently added to the KeyFrames object. /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public uint GetKeyFrameCount() From e0cea770a452494df8dc0555e4a08e69ef08a187 Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Wed, 4 Sep 2024 10:07:37 +0900 Subject: [PATCH 074/198] [NUI] Deprecate Dali::Property constructor with componentwise Since those usecase break some logic, let we decide to deprecate the componentewise logic. Instead just create new property index - like COLOR_RED, SIZE_HEIGHT. Signed-off-by: Eunki, Hong --- .../src/internal/Interop/Interop.Property.cs | 12 -- src/Tizen.NUI/src/public/Common/Property.cs | 41 ------- .../testcase/public/Common/TSProperty.cs | 104 ------------------ 3 files changed, 157 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.Property.cs b/src/Tizen.NUI/src/internal/Interop/Interop.Property.cs index 697a0696ce6..9b7b4535594 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.Property.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.Property.cs @@ -33,15 +33,9 @@ internal static partial class Property [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_Property__SWIG_0")] public static extern global::System.IntPtr NewProperty(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_Property__SWIG_1")] - public static extern global::System.IntPtr NewProperty(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_Property__SWIG_2")] public static extern global::System.IntPtr NewProperty(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_Property__SWIG_3")] - public static extern global::System.IntPtr NewProperty(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, int jarg3); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_delete_Property")] public static extern void DeleteProperty(global::System.Runtime.InteropServices.HandleRef jarg1); @@ -57,12 +51,6 @@ internal static partial class Property [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Property_propertyIndex_get")] public static extern int PropertyIndexGet(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Property_componentIndex_set")] - public static extern void ComponentIndexSet(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); - - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Property_componentIndex_get")] - public static extern int ComponentIndexGet(global::System.Runtime.InteropServices.HandleRef jarg1); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_new_Property_Array__SWIG_0")] public static extern global::System.IntPtr NewPropertyArray(); diff --git a/src/Tizen.NUI/src/public/Common/Property.cs b/src/Tizen.NUI/src/public/Common/Property.cs index 50a210a0b71..437f06313ea 100755 --- a/src/Tizen.NUI/src/public/Common/Property.cs +++ b/src/Tizen.NUI/src/public/Common/Property.cs @@ -29,17 +29,6 @@ public Property(Animatable animatable, int propertyIndex) : this(Interop.Propert if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// - /// This constructor creates a property instance. - /// - /// A valid handle to the target object. - /// The index of a property. - /// Index to a sub component of a property, for use with Vector2, Vector3 and Vector4. -1 for the main property (default is -1). - public Property(Animatable animatable, int propertyIndex, int componentIndex) : this(Interop.Property.NewProperty(Animatable.getCPtr(animatable), propertyIndex, componentIndex), true) - { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - /// /// This constructor creates a property instance.
/// This performs a property index query and is therefore slower than constructing a property directly with the index.
@@ -51,18 +40,6 @@ public Property(Animatable animatable, string propertyName) : this(Interop.Prope if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// - /// This constructor creates a property instance.
- /// This performs a property index query and is therefore slower than constructing a property directly with the index.
- ///
- /// A valid handle to the target object. - /// The property name. - /// Index to a sub component of a property, for use with Vector2, Vector3 and Vector4. -1 for main property (default is -1). - public Property(Animatable animatable, string propertyName, int componentIndex) : this(Interop.Property.NewProperty(Animatable.getCPtr(animatable), propertyName, componentIndex), true) - { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - internal Property(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) { } @@ -85,24 +62,6 @@ public int PropertyIndex } } - /// - /// Gets or sets the component index of the property. - /// - public int ComponentIndex - { - set - { - Interop.Property.ComponentIndexSet(SwigCPtr, value); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - get - { - int ret = Interop.Property.ComponentIndexGet(SwigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } - } - internal static int InvalidIndex { get diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Common/TSProperty.cs b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Common/TSProperty.cs index 4b723f7cff8..bb47d0193d1 100755 --- a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Common/TSProperty.cs +++ b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/Common/TSProperty.cs @@ -60,31 +60,6 @@ public void PropertyConstructor() tlog.Debug(tag, $"PropertyConstructor END (OK)"); } - [Test] - [Category("P1")] - [Description("Property constructor. With sub component index")] - [Property("SPEC", "Tizen.NUI.Property.Property C")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "CONSTR")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void PropertyConstructorWithSubComponentIndex() - { - tlog.Debug(tag, $"PropertyConstructorWithSubComponentIndex START"); - - var animatable = new Animatable(); - Assert.IsNotNull(animatable, "Should be not null!"); - Assert.IsInstanceOf(animatable, "Should return PropertyValue instance."); - - var dummyIndex = 28000000; - var testingTarget = new Property(animatable, dummyIndex, -1); - Assert.IsNotNull(testingTarget, "Should be not null!"); - Assert.IsInstanceOf(testingTarget, "Should return PropertyValue instance."); - - testingTarget.Dispose(); - animatable.Dispose(); - tlog.Debug(tag, $"PropertyConstructorWithSubComponentIndex END (OK)"); - } - [Test] [Category("P1")] [Description("Property constructor. With property name")] @@ -109,30 +84,6 @@ public void PropertyConstructorWithPropertyName() tlog.Debug(tag, $"PropertyConstructorWithPropertyName END (OK)"); } - [Test] - [Category("P1")] - [Description("Property constructor. With property name and sub component index")] - [Property("SPEC", "Tizen.NUI.Property.Property C")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "CONSTR")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void PropertyConstructorWithPropertyNameSubComponentIndex() - { - tlog.Debug(tag, $"PropertyConstructorWithPropertyNameSubComponentIndex START"); - - var animatable = new Animatable(); - Assert.IsNotNull(animatable, "Should be not null!"); - Assert.IsInstanceOf(animatable, "Should return PropertyValue instance."); - - var testingTarget = new Property(animatable, "image", -1); - Assert.IsNotNull(testingTarget, "Should be not null!"); - Assert.IsInstanceOf(testingTarget, "Should return PropertyValue instance."); - - testingTarget.Dispose(); - animatable.Dispose(); - tlog.Debug(tag, $"PropertyConstructorWithPropertyNameSubComponentIndex END (OK)"); - } - [Test] [Category("P1")] [Description("Property propertyIndex. Get")] @@ -187,60 +138,5 @@ public void PropertyPropertyIndexSet() animatable.Dispose(); tlog.Debug(tag, $"PropertyPropertyIndexSet END (OK)"); } - - [Test] - [Category("P1")] - [Description("Property componentIndex. Get")] - [Property("SPEC", "Tizen.NUI.Property.componentIndex A")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "PRO")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void PropertyComponentIndexGet() - { - tlog.Debug(tag, $"PropertyComponentIndexGet START"); - - var animatable = new Animatable(); - Assert.IsNotNull(animatable, "Should be not null!"); - Assert.IsInstanceOf(animatable, "Should return PropertyValue instance."); - - var testingTarget = new Property(animatable, 28000000, -1); - Assert.IsNotNull(testingTarget, "Should be not null!"); - Assert.IsInstanceOf(testingTarget, "Should return PropertyValue instance."); - - var result = testingTarget.componentIndex; - Assert.IsTrue(-1 == result); - - testingTarget.Dispose(); - animatable.Dispose(); - tlog.Debug(tag, $"PropertyComponentIndexGet END (OK)"); - } - - [Test] - [Category("P1")] - [Description("Property componentIndex. Get")] - [Property("SPEC", "Tizen.NUI.Property.componentIndex A")] - [Property("SPEC_URL", "-")] - [Property("CRITERIA", "PRO")] - [Property("AUTHOR", "guowei.wang@samsung.com")] - public void PropertyComponentIndexSet() - { - tlog.Debug(tag, $"PropertyComponentIndexSet START"); - - var animatable = new Animatable(); - Assert.IsNotNull(animatable, "Should be not null!"); - Assert.IsInstanceOf(animatable, "Should return PropertyValue instance."); - - var testingTarget = new Property(animatable, 28000000, -1); - Assert.IsNotNull(testingTarget, "Should be not null!"); - Assert.IsInstanceOf(testingTarget, "Should return PropertyValue instance."); - - testingTarget.componentIndex = 30000000; - var result = testingTarget.componentIndex; - Assert.IsTrue(30000000 == result); - - testingTarget.Dispose(); - animatable.Dispose(); - tlog.Debug(tag, $"PropertyComponentIndexSet END (OK)"); - } } } From b59a776b7d4ec4acebc2ae2aa9a3bd153fdf7269 Mon Sep 17 00:00:00 2001 From: Taehyub Kim Date: Wed, 11 Sep 2024 13:22:01 +0900 Subject: [PATCH 075/198] [NUI] Add multi-mimetype feature for Drag and Drop (#6294) * [NUI] Add multi-mimetype feature for Drag and Drop Contents - Allow to set multi-mimetypes for source client (use DragInfo) - Target client receive source's mimetypes from source client when Enter, Move, Leave - Target client can set mimetype to receive - Refactoring code for readability - Refactoring codes for readability * Refactoring data structure and duplicated codes * Apply clean code for Drag and Drop --- .../internal/Interop/Interop.DragAndDrop.cs | 10 +- .../src/public/DragAndDrop/DragAndDrop.cs | 230 ++++++++++++------ .../src/public/DragAndDrop/DragEvent.cs | 14 ++ test/NUIDnDMultiWindow/NUIDnDMultiWindow.cs | 2 +- test/NUIDnDSource/NUIDnDSource.cs | 2 +- 5 files changed, 170 insertions(+), 88 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.DragAndDrop.cs b/src/Tizen.NUI/src/internal/Interop/Interop.DragAndDrop.cs index 1acf55699be..278ea1b2fed 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.DragAndDrop.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.DragAndDrop.cs @@ -33,11 +33,11 @@ internal enum DragType public static extern global::System.IntPtr New(); [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_DragAndDrop_StartDragAndDrop")] - public static extern bool StartDragAndDrop(global::System.Runtime.InteropServices.HandleRef dragAndDrop, global::System.Runtime.InteropServices.HandleRef sourceView, global::System.Runtime.InteropServices.HandleRef shadow, string mimeType, string data, global::System.Runtime.InteropServices.HandleRef callback); + public static extern bool StartDragAndDrop(global::System.Runtime.InteropServices.HandleRef dragAndDrop, global::System.Runtime.InteropServices.HandleRef sourceView, global::System.Runtime.InteropServices.HandleRef shadow, string [] mimeTypes, int mimeTypsSize, string [] dataSet, int dataSetSize, global::System.Runtime.InteropServices.HandleRef callback); [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_DragAndDrop_AddListener")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] - public static extern bool AddListener(global::System.Runtime.InteropServices.HandleRef dragAndDrop, global::System.Runtime.InteropServices.HandleRef targetView, global::System.Runtime.InteropServices.HandleRef callback); + public static extern bool AddListener(global::System.Runtime.InteropServices.HandleRef dragAndDrop, global::System.Runtime.InteropServices.HandleRef targetView, string mimeType, global::System.Runtime.InteropServices.HandleRef callback); [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_DragAndDrop_RemoveListener")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] @@ -45,7 +45,7 @@ internal enum DragType [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_DragAndDrop_Window_AddListener")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] - public static extern bool WindowAddListener(global::System.Runtime.InteropServices.HandleRef dragAndDrop, global::System.Runtime.InteropServices.HandleRef targetWindow, global::System.Runtime.InteropServices.HandleRef callback); + public static extern bool WindowAddListener(global::System.Runtime.InteropServices.HandleRef dragAndDrop, global::System.Runtime.InteropServices.HandleRef targetWindow, string mimeType, global::System.Runtime.InteropServices.HandleRef callback); [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_DragAndDrop_Window_RemoveListener")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] @@ -57,8 +57,8 @@ internal enum DragType [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_DragEvent_GetPosition")] public static extern global::System.IntPtr GetPosition(global::System.IntPtr dragAndDrop); - [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_DragEvent_GetMimeType")] - public static extern string GetMimeType(global::System.IntPtr dragAndDrop); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_DragEvent_GetMimeTypes")] + public static extern bool GetMimeTypes(global::System.IntPtr dragAndDrop, out global::System.IntPtr mimeTypes, out int count); [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_DragEvent_GetData")] public static extern string GetData(global::System.IntPtr dragAndDrop); diff --git a/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs b/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs index b37a11c2afc..c0d9120baaf 100755 --- a/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs +++ b/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs @@ -18,6 +18,7 @@ using System.ComponentModel; using System.Runtime.InteropServices; using System.Collections.Generic; +using System.Linq; using System.Diagnostics.CodeAnalysis; using Tizen.NUI.BaseComponents; @@ -32,10 +33,10 @@ public class DragAndDrop : BaseHandle { public delegate void SourceEventHandler(DragSourceEventType sourceEventType); private delegate void InternalSourceEventHandler(int sourceEventType); - public delegate void DragAndDropEventHandler(View targetView, DragEvent dragEvent); + public delegate void DragAndDropEventHandler(View targetView, DragEvent navtiveDragEvent); [EditorBrowsable(EditorBrowsableState.Never)] - public delegate void DragAndDropWindowEventHandler(Window targetWindow, DragEvent dragEvent); - private delegate void InternalDragAndDropEventHandler(global::System.IntPtr dragEvent); + public delegate void DragAndDropWindowEventHandler(Window targetWindow, DragEvent navtiveDragEvent); + private delegate void InternalDragAndDropEventHandler(global::System.IntPtr navtiveDragEvent); private InternalSourceEventHandler sourceEventCb; private Dictionary targetEventDictionary = new Dictionary(); private Dictionary targetWindowEventDictionary = new Dictionary(); @@ -46,11 +47,107 @@ public class DragAndDrop : BaseHandle private int dragWindowOffsetX = 0; private int dragWindowOffsetY = 0; - private bool initDrag = false; - private const int MinDragWindowWidth = 100; private const int MinDragWindowHeight = 100; + private void ProcessDragEventTargetCallback(IntPtr navtiveDragEvent, View targetView, DragAndDropEventHandler callback) + { + DragType type = (DragType)Interop.DragAndDrop.GetAction(navtiveDragEvent); + DragEvent dragEvent = new DragEvent(); + global::System.IntPtr cPtr = Interop.DragAndDrop.GetPosition(navtiveDragEvent); + dragEvent.Position = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, true); + + IntPtr nativeMimeTypes; + int count; + Interop.DragAndDrop.GetMimeTypes(navtiveDragEvent, out nativeMimeTypes, out count); + if (count > 0) + { + IntPtr [] nativeMimeTypesArrary = new IntPtr[count]; + Marshal.Copy(nativeMimeTypes, nativeMimeTypesArrary, 0, count); + + string [] managedMimeTypes = new string[count]; + + for (int iterator = 0; iterator < count; iterator++) + { + managedMimeTypes[iterator] = Marshal.PtrToStringAnsi(nativeMimeTypesArrary[iterator]); + } + + dragEvent.MimeType = managedMimeTypes[0]; + dragEvent.MimeTypes = managedMimeTypes; + } + + if (type == DragType.Enter) + { + dragEvent.DragType = type; + callback(targetView, dragEvent); + } + else if (type == DragType.Leave) + { + dragEvent.DragType = type; + callback(targetView, dragEvent); + } + else if (type == DragType.Move) + { + dragEvent.DragType = type; + callback(targetView, dragEvent); + } + else if (type == DragType.Drop) + { + dragEvent.DragType = type; + dragEvent.Data = Interop.DragAndDrop.GetData(navtiveDragEvent); + callback(targetView, dragEvent); + } + } + + private void ProcessDragEventWindowCallback(IntPtr navtiveDragEvent, Window targetWindow, DragAndDropWindowEventHandler callback) + { + DragType type = (DragType)Interop.DragAndDrop.GetAction(navtiveDragEvent); + DragEvent dragEvent = new DragEvent(); + global::System.IntPtr cPtr = Interop.DragAndDrop.GetPosition(navtiveDragEvent); + dragEvent.Position = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false); + + IntPtr nativeMimeTypes; + int count; + Interop.DragAndDrop.GetMimeTypes(navtiveDragEvent, out nativeMimeTypes, out count); + if (count > 0) + { + IntPtr [] nativeMimeTypesArrary = new IntPtr[count]; + Marshal.Copy(nativeMimeTypes, nativeMimeTypesArrary, 0, count); + + string [] managedMimeTypes = new string[count]; + + for (int iterator = 0; iterator < count; iterator++) + { + managedMimeTypes[iterator] = Marshal.PtrToStringAnsi(nativeMimeTypesArrary[iterator]); + } + + dragEvent.MimeType = managedMimeTypes[0]; + dragEvent.MimeTypes = managedMimeTypes; + } + + if (type == DragType.Enter) + { + dragEvent.DragType = type; + callback(targetWindow, dragEvent); + } + else if (type == DragType.Leave) + { + dragEvent.DragType = type; + callback(targetWindow, dragEvent); + } + else if (type == DragType.Move) + { + dragEvent.DragType = type; + callback(targetWindow, dragEvent); + } + else if (type == DragType.Drop) + { + dragEvent.DragType = type; + dragEvent.Data = Interop.DragAndDrop.GetData(navtiveDragEvent); + callback(targetWindow, dragEvent); + } + } + private DragAndDrop() : this(Interop.DragAndDrop.New(), true) { if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); @@ -92,14 +189,7 @@ private void ReleaseDragWindow() /// The source event callback /// 10 public void StartDragAndDrop(View sourceView, View shadowView, DragData dragData, SourceEventHandler callback) - { - if (initDrag) - { - Tizen.Log.Fatal("NUI", "Start Drag And Drop Initializing..."); - return; - } - initDrag = true; - + { if (Window.IsSupportedMultiWindow() == false) { throw new NotSupportedException("This device does not support surfaceless_context. So Window cannot be created."); @@ -155,7 +245,7 @@ public void StartDragAndDrop(View sourceView, View shadowView, DragData dragData { if ((DragSourceEventType)sourceEventType != DragSourceEventType.Start) { - Tizen.Log.Fatal("NUI", "DnD Source Event is Called"); + Tizen.Log.Fatal("NUI", "DnD Source Event is Called"); ReleaseDragWindow(); } @@ -165,15 +255,29 @@ public void StartDragAndDrop(View sourceView, View shadowView, DragData dragData //Show Drag Window before StartDragAndDrop mDragWindow.Show(); - if (!Interop.DragAndDrop.StartDragAndDrop(SwigCPtr, View.getCPtr(sourceView), Window.getCPtr(mDragWindow), dragData.MimeType, dragData.Data, + string [] mimeTypes; + string [] dataSet; + + if (string.IsNullOrEmpty(dragData.MimeType) && dragData.DataMap != null) + { + mimeTypes = dragData.DataMap.Keys.ToArray(); + dataSet = dragData.DataMap.Values.ToArray(); + } + else + { + mimeTypes = new string[1]; + mimeTypes[0] = dragData.MimeType; + + dataSet = new string[1]; + dataSet[0] = dragData.Data; + } + + if (!Interop.DragAndDrop.StartDragAndDrop(SwigCPtr, View.getCPtr(sourceView), Window.getCPtr(mDragWindow), mimeTypes, mimeTypes.Length, dataSet, dataSet.Length, new global::System.Runtime.InteropServices.HandleRef(this, Marshal.GetFunctionPointerForDelegate(sourceEventCb)))) { throw new InvalidOperationException("Fail to StartDragAndDrop"); } - - } - - initDrag = false; + } } /// @@ -184,42 +288,23 @@ public void StartDragAndDrop(View sourceView, View shadowView, DragData dragData /// 10 public void AddListener(View targetView, DragAndDropEventHandler callback) { - InternalDragAndDropEventHandler cb = (dragEvent) => - { - DragType type = (DragType)Interop.DragAndDrop.GetAction(dragEvent); - DragEvent ev = new DragEvent(); - global::System.IntPtr cPtr = Interop.DragAndDrop.GetPosition(dragEvent); - ev.Position = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, true); + AddListener(targetView, "*/*", callback); + } - if (type == DragType.Enter) - { - ev.DragType = type; - ev.MimeType = Interop.DragAndDrop.GetMimeType(dragEvent); - callback(targetView, ev); - } - else if (type == DragType.Leave) - { - ev.DragType = type; - callback(targetView, ev); - } - else if (type == DragType.Move) - { - ev.DragType = type; - ev.MimeType = Interop.DragAndDrop.GetMimeType(dragEvent); - callback(targetView, ev); - } - else if (type == DragType.Drop) - { - ev.DragType = type; - ev.MimeType = Interop.DragAndDrop.GetMimeType(dragEvent); - ev.Data = Interop.DragAndDrop.GetData(dragEvent); - callback(targetView, ev); - } - }; + /// + /// Adds listener for drop targets + /// + /// The target view + /// The mime type for target view + /// The callback function to get drag event when the drag source enters, moves, leaves and drops on the drop target + [EditorBrowsable(EditorBrowsableState.Never)] + public void AddListener(View targetView, string mimeType, DragAndDropEventHandler callback) + { + InternalDragAndDropEventHandler cb = (navtiveDragEvent) => ProcessDragEventTargetCallback(navtiveDragEvent, targetView, callback); targetEventDictionary.Add(targetView, cb); - if (!Interop.DragAndDrop.AddListener(SwigCPtr, View.getCPtr(targetView), + if (!Interop.DragAndDrop.AddListener(SwigCPtr, View.getCPtr(targetView), mimeType, new global::System.Runtime.InteropServices.HandleRef(this, Marshal.GetFunctionPointerForDelegate(cb)))) { throw new InvalidOperationException("Fail to AddListener for View"); @@ -256,40 +341,23 @@ public void RemoveListener(View targetView, DragAndDropEventHandler _) [EditorBrowsable(EditorBrowsableState.Never)] public void AddListener(Window targetWindow, DragAndDropWindowEventHandler callback) { - InternalDragAndDropEventHandler cb = (dragEvent) => - { - DragType type = (DragType)Interop.DragAndDrop.GetAction(dragEvent); - DragEvent ev = new DragEvent(); - global::System.IntPtr cPtr = Interop.DragAndDrop.GetPosition(dragEvent); - ev.Position = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false); + AddListener(targetWindow, "*/*", callback); + } - if (type == DragType.Enter) - { - ev.DragType = type; - callback(targetWindow, ev); - } - else if (type == DragType.Leave) - { - ev.DragType = type; - callback(targetWindow, ev); - } - else if (type == DragType.Move) - { - ev.DragType = type; - callback(targetWindow, ev); - } - else if (type == DragType.Drop) - { - ev.DragType = type; - ev.MimeType = Interop.DragAndDrop.GetMimeType(dragEvent); - ev.Data = Interop.DragAndDrop.GetData(dragEvent); - callback(targetWindow, ev); - } - }; + /// + /// Adds listener for drop targets + /// + /// The target Window + /// The mime type for target view + /// The callback function to get drag event when the drag source enters, moves, leaves and drops on the drop target + [EditorBrowsable(EditorBrowsableState.Never)] + public void AddListener(Window targetWindow, string mimeType, DragAndDropWindowEventHandler callback) + { + InternalDragAndDropEventHandler cb = (navtiveDragEvent) => ProcessDragEventWindowCallback(navtiveDragEvent, targetWindow, callback); targetWindowEventDictionary.Add(targetWindow, cb); - if (!Interop.DragAndDrop.WindowAddListener(SwigCPtr, Window.getCPtr(targetWindow), + if (!Interop.DragAndDrop.WindowAddListener(SwigCPtr, Window.getCPtr(targetWindow), mimeType, new global::System.Runtime.InteropServices.HandleRef(this, Marshal.GetFunctionPointerForDelegate(cb)))) { throw new InvalidOperationException("Fail to AddListener for Window"); diff --git a/src/Tizen.NUI/src/public/DragAndDrop/DragEvent.cs b/src/Tizen.NUI/src/public/DragAndDrop/DragEvent.cs index 6c705b90d3d..da4cc9ae183 100755 --- a/src/Tizen.NUI/src/public/DragAndDrop/DragEvent.cs +++ b/src/Tizen.NUI/src/public/DragAndDrop/DragEvent.cs @@ -16,6 +16,7 @@ */ using System; using System.ComponentModel; +using System.Collections.Generic; using Tizen.NUI.Binding; namespace Tizen.NUI @@ -60,6 +61,12 @@ public struct DragData /// The drag data to send /// public string Data { get; set; } + + /// + /// The mime types and drag data set + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public Dictionary DataMap; } /// @@ -106,6 +113,13 @@ public struct DragEvent /// The mime type of drag object /// public string MimeType { get; set; } + + /// + /// The mime types of drag object + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public string [] MimeTypes { get; set; } + /// /// The drag data to receive /// diff --git a/test/NUIDnDMultiWindow/NUIDnDMultiWindow.cs b/test/NUIDnDMultiWindow/NUIDnDMultiWindow.cs index 3d95b347b28..dec31805f78 100644 --- a/test/NUIDnDMultiWindow/NUIDnDMultiWindow.cs +++ b/test/NUIDnDMultiWindow/NUIDnDMultiWindow.cs @@ -89,7 +89,7 @@ void Initialize() Tizen.Log.Debug("NUIDnDMultiWindow", "StartDragAndDrop"); shadowView = new ImageView(Tizen.Applications.Application.Current.DirectoryInfo.SharedResource + "dragsource.png"); shadowView.Size = new Size(150, 150); - DragData dragData; + DragData dragData = new DragData(); dragData.MimeType = "text/uri-list"; dragData.Data = Tizen.Applications.Application.Current.DirectoryInfo.SharedResource + "dragsource.png"; dnd.StartDragAndDrop(sourceView, shadowView, dragData, OnSourceApp_SourceFunc); diff --git a/test/NUIDnDSource/NUIDnDSource.cs b/test/NUIDnDSource/NUIDnDSource.cs index 7bceebef55c..ae242037a8a 100644 --- a/test/NUIDnDSource/NUIDnDSource.cs +++ b/test/NUIDnDSource/NUIDnDSource.cs @@ -91,7 +91,7 @@ void Initialize() Tizen.Log.Debug("NUIDnDSource", "StartDragAndDrop"); shadowView = new ImageView(Tizen.Applications.Application.Current.DirectoryInfo.SharedResource + "dragsource.png"); shadowView.Size = new Size(150, 150); - DragData dragData; + DragData dragData = new DragData(); dragData.MimeType = "text/uri-list"; dragData.Data = Tizen.Applications.Application.Current.DirectoryInfo.SharedResource + "dragsource.png"; dnd.StartDragAndDrop(sourceView, shadowView, dragData, OnSourceEventFunc); From 2431e863bafc1c131943d0e7888a7b494b43f4b4 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Wed, 11 Sep 2024 15:55:35 +0900 Subject: [PATCH 076/198] [NUI] Add missing IsUsingXaml check to Text Signed-off-by: Bowon Ryu --- .../src/public/BaseComponents/TextEditor.cs | 130 +++++++++-- .../src/public/BaseComponents/TextField.cs | 209 +++++++++++++++--- .../TextFieldBindableProperty.cs | 22 +- .../src/public/BaseComponents/TextLabel.cs | 115 ++++++++-- 4 files changed, 386 insertions(+), 90 deletions(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextEditor.cs b/src/Tizen.NUI/src/public/BaseComponents/TextEditor.cs index 702230eec7c..b54f67d9668 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextEditor.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextEditor.cs @@ -570,7 +570,14 @@ public void SetFontStyle(FontStyle fontStyle) { using (var fontStyleMap = TextMapHelper.GetFontStyleMap(fontStyle)) { - SetValue(FontStyleProperty, fontStyleMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(FontStyleProperty, fontStyleMap); + } + else + { + SetInternalFontStyleProperty(this, null, fontStyleMap); + } } } @@ -585,7 +592,7 @@ public void SetFontStyle(FontStyle fontStyle) public FontStyle GetFontStyle() { FontStyle fontStyle; - using (var fontStyleMap = (PropertyMap)GetValue(FontStyleProperty)) + using (var fontStyleMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(FontStyleProperty) : (PropertyMap)GetInternalFontStyleProperty(this)) { fontStyle = TextMapHelper.GetFontStyleStruct(fontStyleMap); } @@ -1147,7 +1154,14 @@ public void SetSelectionHandleImage(SelectionHandleImage selectionHandleImage) { using (var leftImageMap = TextMapHelper.GetFileNameMap(selectionHandleImage.LeftImageUrl)) { - SetValue(SelectionHandleImageLeftProperty, leftImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandleImageLeftProperty, leftImageMap); + } + else + { + SetInternalSelectionHandleImageLeftProperty(this, null, leftImageMap); + } } } @@ -1155,7 +1169,14 @@ public void SetSelectionHandleImage(SelectionHandleImage selectionHandleImage) { using (var rightImageMap = TextMapHelper.GetFileNameMap(selectionHandleImage.RightImageUrl)) { - SetValue(SelectionHandleImageRightProperty, rightImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandleImageRightProperty, rightImageMap); + } + else + { + SetInternalSelectionHandleImageRightProperty(this, null, rightImageMap); + } } } } @@ -1171,8 +1192,8 @@ public void SetSelectionHandleImage(SelectionHandleImage selectionHandleImage) public SelectionHandleImage GetSelectionHandleImage() { SelectionHandleImage selectionHandleImage; - using (var leftImageMap = (PropertyMap)GetValue(SelectionHandleImageLeftProperty)) - using (var rightImageMap = (PropertyMap)GetValue(SelectionHandleImageRightProperty)) + using (var leftImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandleImageLeftProperty) : (PropertyMap)GetInternalSelectionHandleImageLeftProperty(this)) + using (var rightImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandleImageRightProperty) : (PropertyMap)GetInternalSelectionHandleImageRightProperty(this)) { selectionHandleImage = TextMapHelper.GetSelectionHandleImageStruct(leftImageMap, rightImageMap); } @@ -1274,7 +1295,14 @@ public void SetSelectionHandlePressedImage(SelectionHandleImage selectionHandleP { using (var leftImageMap = TextMapHelper.GetFileNameMap(selectionHandlePressedImage.LeftImageUrl)) { - SetValue(SelectionHandlePressedImageLeftProperty, leftImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandlePressedImageLeftProperty, leftImageMap); + } + else + { + SetInternalSelectionHandlePressedImageLeftProperty(this, null, leftImageMap); + } } } @@ -1282,7 +1310,14 @@ public void SetSelectionHandlePressedImage(SelectionHandleImage selectionHandleP { using (var rightImageMap = TextMapHelper.GetFileNameMap(selectionHandlePressedImage.RightImageUrl)) { - SetValue(SelectionHandlePressedImageRightProperty, rightImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandlePressedImageRightProperty, rightImageMap); + } + else + { + SetInternalSelectionHandlePressedImageRightProperty(this, null, rightImageMap); + } } } } @@ -1298,8 +1333,8 @@ public void SetSelectionHandlePressedImage(SelectionHandleImage selectionHandleP public SelectionHandleImage GetSelectionHandlePressedImage() { SelectionHandleImage selectionHandleImage; - using (var leftImageMap = (PropertyMap)GetValue(SelectionHandlePressedImageLeftProperty)) - using (var rightImageMap = (PropertyMap)GetValue(SelectionHandlePressedImageRightProperty)) + using (var leftImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandlePressedImageLeftProperty) : (PropertyMap)GetInternalSelectionHandlePressedImageLeftProperty(this)) + using (var rightImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandlePressedImageRightProperty) : (PropertyMap)GetInternalSelectionHandlePressedImageRightProperty(this)) { selectionHandleImage = TextMapHelper.GetSelectionHandleImageStruct(leftImageMap, rightImageMap); } @@ -1401,7 +1436,14 @@ public void SetSelectionHandleMarkerImage(SelectionHandleImage selectionHandleMa { using (var leftImageMap = TextMapHelper.GetFileNameMap(selectionHandleMarkerImage.LeftImageUrl)) { - SetValue(SelectionHandleMarkerImageLeftProperty, leftImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandleMarkerImageLeftProperty, leftImageMap); + } + else + { + SetInternalSelectionHandleMarkerImageLeftProperty(this, null, leftImageMap); + } } } @@ -1409,7 +1451,14 @@ public void SetSelectionHandleMarkerImage(SelectionHandleImage selectionHandleMa { using (var rightImageMap = TextMapHelper.GetFileNameMap(selectionHandleMarkerImage.RightImageUrl)) { - SetValue(SelectionHandleMarkerImageRightProperty, rightImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandleMarkerImageRightProperty, rightImageMap); + } + else + { + SetInternalSelectionHandleMarkerImageRightProperty(this, null, rightImageMap); + } } } } @@ -1425,8 +1474,8 @@ public void SetSelectionHandleMarkerImage(SelectionHandleImage selectionHandleMa public SelectionHandleImage GetSelectionHandleMarkerImage() { SelectionHandleImage selectionHandleImage; - using (var leftImageMap = (PropertyMap)GetValue(SelectionHandleMarkerImageLeftProperty)) - using (var rightImageMap = (PropertyMap)GetValue(SelectionHandleMarkerImageRightProperty)) + using (var leftImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandleMarkerImageLeftProperty) : (PropertyMap)GetInternalSelectionHandleMarkerImageLeftProperty(this)) + using (var rightImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandleMarkerImageRightProperty) : (PropertyMap)GetInternalSelectionHandleMarkerImageRightProperty(this)) { selectionHandleImage = TextMapHelper.GetSelectionHandleImageStruct(leftImageMap, rightImageMap); } @@ -1669,7 +1718,14 @@ public void SetInputFontStyle(FontStyle fontStyle) { using (var fontStyleMap = TextMapHelper.GetFontStyleMap(fontStyle)) { - SetValue(InputFontStyleProperty, fontStyleMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(InputFontStyleProperty, fontStyleMap); + } + else + { + SetInternalInputFontStyleProperty(this, null, fontStyleMap); + } } } @@ -1881,7 +1937,14 @@ public void SetUnderline(Underline underline) { using (var underlineMap = TextMapHelper.GetUnderlineMap(underline)) { - SetValue(UnderlineProperty, underlineMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(UnderlineProperty, underlineMap); + } + else + { + SetInternalUnderlineProperty(this, null, underlineMap); + } } } @@ -1896,7 +1959,7 @@ public void SetUnderline(Underline underline) public Underline GetUnderline() { Underline underline; - using (var underlineMap = (PropertyMap)GetValue(UnderlineProperty)) + using (var underlineMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(UnderlineProperty) : (PropertyMap)GetInternalUnderlineProperty(this)) { underline = TextMapHelper.GetUnderlineStruct(underlineMap); } @@ -1995,7 +2058,14 @@ public void SetShadow(Tizen.NUI.Text.Shadow shadow) { using (var shadowMap = TextMapHelper.GetShadowMap(shadow)) { - SetValue(ShadowProperty, shadowMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(ShadowProperty, shadowMap); + } + else + { + SetInternalShadowProperty(this, null, shadowMap); + } } } @@ -2010,7 +2080,7 @@ public void SetShadow(Tizen.NUI.Text.Shadow shadow) public Tizen.NUI.Text.Shadow GetShadow() { Tizen.NUI.Text.Shadow shadow; - using (var shadowMap = (PropertyMap)GetValue(ShadowProperty)) + using (var shadowMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(ShadowProperty) : (PropertyMap)GetInternalShadowProperty(this)) { shadow = TextMapHelper.GetShadowStruct(shadowMap); } @@ -2172,7 +2242,14 @@ public void SetOutline(Outline outline) { using (var outlineMap = TextMapHelper.GetOutlineMap(outline)) { - SetValue(OutlineProperty, outlineMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(OutlineProperty, outlineMap); + } + else + { + SetInternalOutlineProperty(this, null, outlineMap); + } } } @@ -2187,7 +2264,7 @@ public void SetOutline(Outline outline) public Outline GetOutline() { Outline outline; - using (var outlineMap = (PropertyMap)GetValue(OutlineProperty)) + using (var outlineMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(OutlineProperty) : (PropertyMap)GetInternalOutlineProperty(this)) { outline = TextMapHelper.GetOutlineStruct(outlineMap); } @@ -3073,7 +3150,14 @@ public void SetPlaceholder(Placeholder placeholder) { using (var placeholderMap = TextMapHelper.GetPlaceholderMap(placeholder)) { - SetValue(PlaceholderProperty, placeholderMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(PlaceholderProperty, placeholderMap); + } + else + { + SetInternalPlaceholderProperty(this, null, placeholderMap); + } } } @@ -3088,7 +3172,7 @@ public void SetPlaceholder(Placeholder placeholder) public Placeholder GetPlaceholder() { Placeholder placeholder; - using (var placeholderMap = (PropertyMap)GetValue(PlaceholderProperty)) + using (var placeholderMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(PlaceholderProperty) : (PropertyMap)GetInternalPlaceholderProperty(this)) { placeholder = TextMapHelper.GetPlaceholderStruct(placeholderMap); } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextField.cs b/src/Tizen.NUI/src/public/BaseComponents/TextField.cs index 75865f343cf..364d59ab829 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextField.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextField.cs @@ -256,6 +256,12 @@ static TextField() CharacterSpacingProperty = BindableProperty.Create(nameof(CharacterSpacing), typeof(float), typeof(TextField), default(float), propertyChanged: SetInternalCharacterSpacingProperty, defaultValueCreator: GetInternalCharacterSpacingProperty); + + RemoveFrontInsetProperty = BindableProperty.Create(nameof(RemoveFrontInset), typeof(bool), typeof(TextField), false, + propertyChanged: SetInternalRemoveFrontInsetProperty, defaultValueCreator: GetInternalRemoveFrontInsetProperty); + + RemoveBackInsetProperty = BindableProperty.Create(nameof(RemoveBackInset), typeof(bool), typeof(TextField), false, + propertyChanged: SetInternalRemoveBackInsetProperty, defaultValueCreator: GetInternalRemoveBackInsetProperty); } } @@ -715,7 +721,14 @@ public void SetFontStyle(FontStyle fontStyle) { using (var fontStyleMap = TextMapHelper.GetFontStyleMap(fontStyle)) { - SetValue(FontStyleProperty, fontStyleMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(FontStyleProperty, fontStyleMap); + } + else + { + SetInternalFontStyleProperty(this, null, fontStyleMap); + } } } @@ -730,7 +743,7 @@ public void SetFontStyle(FontStyle fontStyle) public FontStyle GetFontStyle() { FontStyle fontStyle; - using (var fontStyleMap = (PropertyMap)GetValue(FontStyleProperty)) + using (var fontStyleMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(FontStyleProperty) : (PropertyMap)GetInternalFontStyleProperty(this)) { fontStyle = TextMapHelper.GetFontStyleStruct(fontStyleMap); } @@ -895,7 +908,6 @@ public VerticalAlignment VerticalAlignment SetInternalVerticalAlignmentProperty(this, null, value); } NotifyPropertyChanged(); - NotifyPropertyChanged(); } } @@ -1031,7 +1043,14 @@ private Vector2 InternalShadowOffset map.Add("offset", value); var shadowMap = Shadow; shadowMap.Merge(map); - SetValue(ShadowProperty, shadowMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(ShadowProperty, shadowMap); + } + else + { + SetInternalShadowProperty(this, null, shadowMap); + } NotifyPropertyChanged(); } } @@ -1098,7 +1117,14 @@ private Vector4 InternalShadowColor map.Add("color", value); var shadowMap = Shadow; shadowMap.Merge(map); - SetValue(ShadowProperty, shadowMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(ShadowProperty, shadowMap); + } + else + { + SetInternalShadowProperty(this, null, shadowMap); + } NotifyPropertyChanged(); } } @@ -1560,7 +1586,14 @@ public void SetSelectionHandleImage(SelectionHandleImage selectionHandleImage) { using (var leftImageMap = TextMapHelper.GetFileNameMap(selectionHandleImage.LeftImageUrl)) { - SetValue(SelectionHandleImageLeftProperty, leftImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandleImageLeftProperty, leftImageMap); + } + else + { + SetInternalSelectionHandleImageLeftProperty(this, null, leftImageMap); + } } } @@ -1568,7 +1601,14 @@ public void SetSelectionHandleImage(SelectionHandleImage selectionHandleImage) { using (var rightImageMap = TextMapHelper.GetFileNameMap(selectionHandleImage.RightImageUrl)) { - SetValue(SelectionHandleImageRightProperty, rightImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandleImageRightProperty, rightImageMap); + } + else + { + SetInternalSelectionHandleImageRightProperty(this, null, rightImageMap); + } } } } @@ -1584,8 +1624,8 @@ public void SetSelectionHandleImage(SelectionHandleImage selectionHandleImage) public SelectionHandleImage GetSelectionHandleImage() { SelectionHandleImage selectionHandleImage; - using (var leftImageMap = (PropertyMap)GetValue(SelectionHandleImageLeftProperty)) - using (var rightImageMap = (PropertyMap)GetValue(SelectionHandleImageRightProperty)) + using (var leftImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandleImageLeftProperty) : (PropertyMap)GetInternalSelectionHandleImageLeftProperty(this)) + using (var rightImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandleImageRightProperty) : (PropertyMap)GetInternalSelectionHandleImageRightProperty(this)) { selectionHandleImage = TextMapHelper.GetSelectionHandleImageStruct(leftImageMap, rightImageMap); } @@ -1687,7 +1727,14 @@ public void SetSelectionHandlePressedImage(SelectionHandleImage selectionHandleP { using (var leftImageMap = TextMapHelper.GetFileNameMap(selectionHandlePressedImage.LeftImageUrl)) { - SetValue(SelectionHandlePressedImageLeftProperty, leftImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandlePressedImageLeftProperty, leftImageMap); + } + else + { + SetInternalSelectionHandlePressedImageLeftProperty(this, null, leftImageMap); + } } } @@ -1695,7 +1742,14 @@ public void SetSelectionHandlePressedImage(SelectionHandleImage selectionHandleP { using (var rightImageMap = TextMapHelper.GetFileNameMap(selectionHandlePressedImage.RightImageUrl)) { - SetValue(SelectionHandlePressedImageRightProperty, rightImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandlePressedImageRightProperty, rightImageMap); + } + else + { + SetInternalSelectionHandlePressedImageRightProperty(this, null, rightImageMap); + } } } } @@ -1711,8 +1765,8 @@ public void SetSelectionHandlePressedImage(SelectionHandleImage selectionHandleP public SelectionHandleImage GetSelectionHandlePressedImage() { SelectionHandleImage selectionHandleImage; - using (var leftImageMap = (PropertyMap)GetValue(SelectionHandlePressedImageLeftProperty)) - using (var rightImageMap = (PropertyMap)GetValue(SelectionHandlePressedImageRightProperty)) + using (var leftImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandlePressedImageLeftProperty) : (PropertyMap)GetInternalSelectionHandlePressedImageLeftProperty(this)) + using (var rightImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandlePressedImageRightProperty) : (PropertyMap)GetInternalSelectionHandlePressedImageRightProperty(this)) { selectionHandleImage = TextMapHelper.GetSelectionHandleImageStruct(leftImageMap, rightImageMap); } @@ -1814,7 +1868,14 @@ public void SetSelectionHandleMarkerImage(SelectionHandleImage selectionHandleMa { using (var leftImageMap = TextMapHelper.GetFileNameMap(selectionHandleMarkerImage.LeftImageUrl)) { - SetValue(SelectionHandleMarkerImageLeftProperty, leftImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandleMarkerImageLeftProperty, leftImageMap); + } + else + { + SetInternalSelectionHandleMarkerImageLeftProperty(this, null, leftImageMap); + } } } @@ -1822,7 +1883,14 @@ public void SetSelectionHandleMarkerImage(SelectionHandleImage selectionHandleMa { using (var rightImageMap = TextMapHelper.GetFileNameMap(selectionHandleMarkerImage.RightImageUrl)) { - SetValue(SelectionHandleMarkerImageRightProperty, rightImageMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(SelectionHandleMarkerImageRightProperty, rightImageMap); + } + else + { + SetInternalSelectionHandleMarkerImageRightProperty(this, null, rightImageMap); + } } } } @@ -1838,8 +1906,8 @@ public void SetSelectionHandleMarkerImage(SelectionHandleImage selectionHandleMa public SelectionHandleImage GetSelectionHandleMarkerImage() { SelectionHandleImage selectionHandleImage; - using (var leftImageMap = (PropertyMap)GetValue(SelectionHandleMarkerImageLeftProperty)) - using (var rightImageMap = (PropertyMap)GetValue(SelectionHandleMarkerImageRightProperty)) + using (var leftImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandleMarkerImageLeftProperty) : (PropertyMap)GetInternalSelectionHandleMarkerImageLeftProperty(this)) + using (var rightImageMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(SelectionHandleMarkerImageRightProperty) : (PropertyMap)GetInternalSelectionHandleMarkerImageRightProperty(this)) { selectionHandleImage = TextMapHelper.GetSelectionHandleImageStruct(leftImageMap, rightImageMap); } @@ -2128,9 +2196,16 @@ public void SetInputFontStyle(FontStyle fontStyle) { using (var fontStyleMap = TextMapHelper.GetFontStyleMap(fontStyle)) { - SetValue(InputFontStyleProperty, fontStyleMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(InputFontStyleProperty, fontStyleMap); + } + else + { + SetInternalInputFontStyleProperty(this, null, fontStyleMap); + } } - } + } /// /// Get InputFontStyle from TextField.
@@ -2143,7 +2218,7 @@ public void SetInputFontStyle(FontStyle fontStyle) public FontStyle GetInputFontStyle() { FontStyle fontStyle; - using (var fontStyleMap = (PropertyMap)GetValue(InputFontStyleProperty)) + using (var fontStyleMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(InputFontStyleProperty) : (PropertyMap)GetInternalInputFontStyleProperty(this)) { fontStyle = TextMapHelper.GetFontStyleStruct(fontStyleMap); } @@ -2244,7 +2319,14 @@ public void SetUnderline(Underline underline) { using (var underlineMap = TextMapHelper.GetUnderlineMap(underline)) { - SetValue(UnderlineProperty, underlineMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(UnderlineProperty, underlineMap); + } + else + { + SetInternalUnderlineProperty(this, null, underlineMap); + } } } @@ -2259,7 +2341,7 @@ public void SetUnderline(Underline underline) public Underline GetUnderline() { Underline underline; - using (var underlineMap = (PropertyMap)GetValue(UnderlineProperty)) + using (var underlineMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(UnderlineProperty) : (PropertyMap)GetInternalUnderlineProperty(this)) { underline = TextMapHelper.GetUnderlineStruct(underlineMap); } @@ -2320,7 +2402,7 @@ public PropertyMap Shadow } else { - return (PropertyMap)GetInternalShadowColorProperty(this); + return (PropertyMap)GetInternalShadowProperty(this); } } set @@ -2358,7 +2440,14 @@ public void SetShadow(Tizen.NUI.Text.Shadow shadow) { using (var shadowMap = TextMapHelper.GetShadowMap(shadow)) { - SetValue(ShadowProperty, shadowMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(ShadowProperty, shadowMap); + } + else + { + SetInternalShadowProperty(this, null, shadowMap); + } } } @@ -2373,7 +2462,7 @@ public void SetShadow(Tizen.NUI.Text.Shadow shadow) public Tizen.NUI.Text.Shadow GetShadow() { Tizen.NUI.Text.Shadow shadow; - using (var shadowMap = (PropertyMap)GetValue(ShadowProperty)) + using (var shadowMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(ShadowProperty) : (PropertyMap)GetInternalShadowProperty(this)) { shadow = TextMapHelper.GetShadowStruct(shadowMap); } @@ -2535,7 +2624,14 @@ public void SetOutline(Outline outline) { using (var outlineMap = TextMapHelper.GetOutlineMap(outline)) { - SetValue(OutlineProperty, outlineMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(OutlineProperty, outlineMap); + } + else + { + SetInternalOutlineProperty(this, null, outlineMap); + } } } @@ -2550,7 +2646,7 @@ public void SetOutline(Outline outline) public Outline GetOutline() { Outline outline; - using (var outlineMap = (PropertyMap)GetValue(OutlineProperty)) + using (var outlineMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(OutlineProperty) : (PropertyMap)GetInternalOutlineProperty(this)) { outline = TextMapHelper.GetOutlineStruct(outlineMap); } @@ -2664,8 +2760,16 @@ public void SetHiddenInput(HiddenInput hiddenInput) { using (var hiddenInputMap = TextMapHelper.GetHiddenInputMap(hiddenInput)) { - SetValue(HiddenInputSettingsProperty, hiddenInputMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(HiddenInputSettingsProperty, hiddenInputMap); + } + else + { + SetInternalHiddenInputSettingsProperty(this, null, hiddenInputMap); + } } + } /// @@ -2679,7 +2783,7 @@ public void SetHiddenInput(HiddenInput hiddenInput) public HiddenInput GetHiddenInput() { HiddenInput hiddenInput; - using (var hiddenInputMap = (PropertyMap)GetValue(HiddenInputSettingsProperty)) + using (var hiddenInputMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(HiddenInputSettingsProperty) : (PropertyMap)GetInternalHiddenInputSettingsProperty(this)) { hiddenInput = TextMapHelper.GetHiddenInputStruct(hiddenInputMap); } @@ -3322,7 +3426,14 @@ public void SetPlaceholder(Placeholder placeholder) { using (var placeholderMap = TextMapHelper.GetPlaceholderMap(placeholder)) { - SetValue(PlaceholderProperty, placeholderMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(PlaceholderProperty, placeholderMap); + } + else + { + SetInternalPlaceholderProperty(this, null, placeholderMap); + } } } @@ -3337,7 +3448,7 @@ public void SetPlaceholder(Placeholder placeholder) public Placeholder GetPlaceholder() { Placeholder placeholder; - using (var placeholderMap = (PropertyMap)GetValue(PlaceholderProperty)) + using (var placeholderMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(PlaceholderProperty) : (PropertyMap)GetInternalPlaceholderProperty(this)) { placeholder = TextMapHelper.GetPlaceholderStruct(placeholderMap); } @@ -3629,11 +3740,25 @@ public bool RemoveFrontInset { get { - return (bool)GetValue(RemoveFrontInsetProperty); + if (NUIApplication.IsUsingXaml) + { + return (bool)GetValue(RemoveFrontInsetProperty); + } + else + { + return (bool)GetInternalRemoveFrontInsetProperty(this); + } } set { - SetValue(RemoveFrontInsetProperty, value); + if (NUIApplication.IsUsingXaml) + { + SetValue(RemoveFrontInsetProperty, value); + } + else + { + SetInternalRemoveFrontInsetProperty(this, null, value); + } NotifyPropertyChanged(); } } @@ -3650,11 +3775,25 @@ public bool RemoveBackInset { get { - return (bool)GetValue(RemoveBackInsetProperty); + if (NUIApplication.IsUsingXaml) + { + return (bool)GetValue(RemoveBackInsetProperty); + } + else + { + return (bool)GetInternalRemoveBackInsetProperty(this); + } } set { - SetValue(RemoveBackInsetProperty, value); + if (NUIApplication.IsUsingXaml) + { + SetValue(RemoveBackInsetProperty, value); + } + else + { + SetInternalRemoveBackInsetProperty(this, null, value); + } NotifyPropertyChanged(); } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextFieldBindableProperty.cs b/src/Tizen.NUI/src/public/BaseComponents/TextFieldBindableProperty.cs index 492fb958e6e..2fab5e69c3c 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextFieldBindableProperty.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextFieldBindableProperty.cs @@ -1318,36 +1318,40 @@ internal static object GetInternalCharacterSpacingProperty(BindableObject bindab /// RemoveFrontInsetProperty /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly BindableProperty RemoveFrontInsetProperty = BindableProperty.Create(nameof(RemoveFrontInset), typeof(bool), typeof(TextLabel), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) => + public static readonly BindableProperty RemoveFrontInsetProperty = null; + internal static void SetInternalRemoveFrontInsetProperty(BindableObject bindable, object oldValue, object newValue) { var textField = (TextField)bindable; if (newValue != null) { - Object.InternalSetPropertyBool(textField.SwigCPtr, TextField.Property.RemoveFrontInset, (bool)newValue); + Object.InternalSetPropertyBool(textField.SwigCPtr, TextField.Property.RemoveFrontInset, (bool)newValue); } - }), - defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) => + } + internal static object GetInternalRemoveFrontInsetProperty(BindableObject bindable) { var textField = (TextField)bindable; + return Object.InternalGetPropertyBool(textField.SwigCPtr, TextField.Property.RemoveFrontInset); - })); + } /// /// RemoveBackInsetProperty /// [EditorBrowsable(EditorBrowsableState.Never)] - public static readonly BindableProperty RemoveBackInsetProperty = BindableProperty.Create(nameof(RemoveBackInset), typeof(bool), typeof(TextLabel), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) => + public static readonly BindableProperty RemoveBackInsetProperty = null; + internal static void SetInternalRemoveBackInsetProperty(BindableObject bindable, object oldValue, object newValue) { var textField = (TextField)bindable; if (newValue != null) { Object.InternalSetPropertyBool(textField.SwigCPtr, TextField.Property.RemoveBackInset, (bool)newValue); } - }), - defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) => + } + internal static object GetInternalRemoveBackInsetProperty(BindableObject bindable) { var textField = (TextField)bindable; + return Object.InternalGetPropertyBool(textField.SwigCPtr, TextField.Property.RemoveBackInset); - })); + } } } diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index ceb07bdaca4..186470e773c 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -641,7 +641,14 @@ public void SetFontStyle(FontStyle fontStyle) { using (var fontStyleMap = TextMapHelper.GetFontStyleMap(fontStyle)) { - SetValue(FontStyleProperty, fontStyleMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(FontStyleProperty, fontStyleMap); + } + else + { + SetInternalFontStyleProperty(this, null, fontStyleMap); + } } } @@ -656,7 +663,7 @@ public void SetFontStyle(FontStyle fontStyle) public FontStyle GetFontStyle() { FontStyle fontStyle; - using (var fontStyleMap = (PropertyMap)GetValue(FontStyleProperty)) + using (var fontStyleMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(FontStyleProperty) : (PropertyMap)GetInternalFontStyleProperty(this)) { fontStyle = TextMapHelper.GetFontStyleStruct(fontStyleMap); } @@ -889,11 +896,16 @@ private Vector2 InternalShadowOffset using (var map = new PropertyMap()) { map.Add("offset", value); - var shadowMap = Shadow; shadowMap.Merge(map); - - SetValue(ShadowProperty, shadowMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(ShadowProperty, shadowMap); + } + else + { + SetInternalShadowProperty(this, null, shadowMap); + } NotifyPropertyChanged(); } } @@ -961,7 +973,14 @@ private Vector4 InternalShadowColor map.Add("color", value); var shadowMap = Shadow; shadowMap.Merge(map); - SetValue(ShadowProperty, shadowMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(ShadowProperty, shadowMap); + } + else + { + SetInternalShadowProperty(this, null, shadowMap); + } NotifyPropertyChanged(); } } @@ -1021,9 +1040,16 @@ private bool InternalUnderlineEnabled using (var map = new PropertyMap()) { map.Add("enable", value); - var undelineMap = Underline; - undelineMap.Merge(map); - SetValue(UnderlineProperty, undelineMap); + var underlineMap = Underline; + underlineMap.Merge(map); + if (NUIApplication.IsUsingXaml) + { + SetValue(UnderlineProperty, underlineMap); + } + else + { + SetInternalUnderlineProperty(this, null, underlineMap); + } NotifyPropertyChanged(); } } @@ -1089,9 +1115,16 @@ private Vector4 InternalUnderlineColor using (var map = new PropertyMap()) { map.Add("color", value); - var undelineMap = Underline; - undelineMap.Merge(map); - SetValue(UnderlineProperty, undelineMap); + var underlineMap = Underline; + underlineMap.Merge(map); + if (NUIApplication.IsUsingXaml) + { + SetValue(UnderlineProperty, underlineMap); + } + else + { + SetInternalUnderlineProperty(this, null, underlineMap); + } NotifyPropertyChanged(); } } @@ -1151,9 +1184,17 @@ private float InternalUnderlineHeight using (var map = new PropertyMap()) { map.Add("height", value); - var undelineMap = Underline; - undelineMap.Merge(map); - SetValue(UnderlineProperty, undelineMap); + var underlineMap = Underline; + underlineMap.Merge(map); + if (NUIApplication.IsUsingXaml) + { + SetValue(UnderlineProperty, underlineMap); + } + else + { + SetInternalUnderlineProperty(this, null, underlineMap); + } + NotifyPropertyChanged(); } } @@ -1444,7 +1485,14 @@ public void SetUnderline(Underline underline) { using (var underlineMap = TextMapHelper.GetUnderlineMap(underline)) { - SetValue(UnderlineProperty, underlineMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(UnderlineProperty, underlineMap); + } + else + { + SetInternalUnderlineProperty(this, null, underlineMap); + } } } @@ -1459,7 +1507,7 @@ public void SetUnderline(Underline underline) public Underline GetUnderline() { Underline underline; - using (var underlineMap = (PropertyMap)GetValue(UnderlineProperty)) + using (var underlineMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(UnderlineProperty) : (PropertyMap)GetInternalUnderlineProperty(this)) { underline = TextMapHelper.GetUnderlineStruct(underlineMap); } @@ -1527,7 +1575,14 @@ public void SetShadow(Tizen.NUI.Text.Shadow shadow) { using (var shadowMap = TextMapHelper.GetShadowMap(shadow)) { - SetValue(ShadowProperty, shadowMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(ShadowProperty, shadowMap); + } + else + { + SetInternalShadowProperty(this, null, shadowMap); + } } } @@ -1542,7 +1597,7 @@ public void SetShadow(Tizen.NUI.Text.Shadow shadow) public Tizen.NUI.Text.Shadow GetShadow() { Tizen.NUI.Text.Shadow shadow; - using (var shadowMap = (PropertyMap)GetValue(ShadowProperty)) + using (var shadowMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(ShadowProperty) : (PropertyMap)GetInternalShadowProperty(this)) { shadow = TextMapHelper.GetShadowStruct(shadowMap); } @@ -1672,7 +1727,14 @@ public void SetOutline(Outline outline) { using (var outlineMap = TextMapHelper.GetOutlineMap(outline)) { - SetValue(OutlineProperty, outlineMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(OutlineProperty, outlineMap); + } + else + { + SetInternalOutlineProperty(this, null, outlineMap); + } } } @@ -1687,7 +1749,7 @@ public void SetOutline(Outline outline) public Outline GetOutline() { Outline outline; - using (var outlineMap = (PropertyMap)GetValue(OutlineProperty)) + using (var outlineMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(OutlineProperty) : (PropertyMap)GetInternalOutlineProperty(this)) { outline = TextMapHelper.GetOutlineStruct(outlineMap); } @@ -2098,7 +2160,14 @@ public void SetTextFit(TextFit textFit) { using (var textFitMap = TextMapHelper.GetTextFitMap(textFit)) { - SetValue(TextFitProperty, textFitMap); + if (NUIApplication.IsUsingXaml) + { + SetValue(TextFitProperty, textFitMap); + } + else + { + SetInternalTextFitProperty(this, null, textFitMap); + } } } @@ -2115,7 +2184,7 @@ public void SetTextFit(TextFit textFit) public TextFit GetTextFit() { TextFit textFit; - using (var textFitMap = (PropertyMap)GetValue(TextFitProperty)) + using (var textFitMap = NUIApplication.IsUsingXaml ? (PropertyMap)GetValue(TextFitProperty) : (PropertyMap)GetInternalTextFitProperty(this)) { textFit = TextMapHelper.GetTextFitStruct(textFitMap); } From 7c81c1644eadde658dbeac63c71ab342a86f6820 Mon Sep 17 00:00:00 2001 From: Taehyub Kim Date: Wed, 11 Sep 2024 19:55:41 +0900 Subject: [PATCH 077/198] Update deprecated actions (#6322) (#6324) Co-authored-by: Jay Cho --- .github/workflows/build-pull-request.yml | 6 +++--- .github/workflows/deploy-documents-for-tizen-docs.yml | 4 ++-- .github/workflows/deploy-documents.yml | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build-pull-request.yml b/.github/workflows/build-pull-request.yml index 05edec98fa0..1f71c11b340 100644 --- a/.github/workflows/build-pull-request.yml +++ b/.github/workflows/build-pull-request.yml @@ -55,7 +55,7 @@ jobs: -- print --format=json --include-hidden \ -o Artifacts/api.json Artifacts/bin/public/ - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v3 if: ${{ always() }} with: name: reports @@ -72,7 +72,7 @@ jobs: dotnet-version: 3.1.x - name: Download Artifacts - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: reports path: Artifacts @@ -120,7 +120,7 @@ jobs: base-file: Artifacts/base-api.json output: Artifacts/api-comp.json - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v3 with: name: reports path: Artifacts/api-comp.json diff --git a/.github/workflows/deploy-documents-for-tizen-docs.yml b/.github/workflows/deploy-documents-for-tizen-docs.yml index e2eb44f4dd8..67fe65a9cba 100644 --- a/.github/workflows/deploy-documents-for-tizen-docs.yml +++ b/.github/workflows/deploy-documents-for-tizen-docs.yml @@ -44,7 +44,7 @@ jobs: cp .gitattributes _site/ tar cfz site.tar.gz _site/ - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v3 with: name: documents path: site.tar.gz @@ -54,7 +54,7 @@ jobs: runs-on: ubuntu-20.04 steps: - - uses: actions/download-artifact@v2 + - uses: actions/download-artifact@v3 with: name: documents diff --git a/.github/workflows/deploy-documents.yml b/.github/workflows/deploy-documents.yml index 28bc31b06a5..017f9e0f6d2 100644 --- a/.github/workflows/deploy-documents.yml +++ b/.github/workflows/deploy-documents.yml @@ -37,7 +37,7 @@ jobs: - name: Archive Artifacts run: | tar cfz site.tar.gz _site/ - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v3 with: name: documents path: site.tar.gz @@ -47,7 +47,7 @@ jobs: runs-on: ubuntu-20.04 steps: - - uses: actions/download-artifact@v2 + - uses: actions/download-artifact@v3 with: name: documents From 38543aa0e730d9b8de8f4c944c0fe66b440326a1 Mon Sep 17 00:00:00 2001 From: Taehyub Kim Date: Wed, 11 Sep 2024 20:00:41 +0900 Subject: [PATCH 078/198] [NUI] version up (nui22340) (#6321) --- packaging/csapi-tizenfx.spec | 2 +- packaging/version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/csapi-tizenfx.spec b/packaging/csapi-tizenfx.spec index 50501757209..903a755efdd 100644 --- a/packaging/csapi-tizenfx.spec +++ b/packaging/csapi-tizenfx.spec @@ -1,7 +1,7 @@ # Auto-generated from csapi-tizenfx.spec.in by makespec.sh %define TIZEN_NET_API_VERSION 12 -%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22339 +%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22340 %define TIZEN_NET_NUGET_VERSION 12.0.0.99999 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework diff --git a/packaging/version.txt b/packaging/version.txt index 5edbefa92a4..818836a7c24 100755 --- a/packaging/version.txt +++ b/packaging/version.txt @@ -6,4 +6,4 @@ RPM_VERSION=12.0.0.999 NUGET_VERSION=12.0.0.99999 # RPM Version Suffix -RPM_VERSION_SUFFIX=nui22339 +RPM_VERSION_SUFFIX=nui22340 From a9fc46924e281b24b514617b8dd62754a25df935 Mon Sep 17 00:00:00 2001 From: Taehyub Kim Date: Wed, 11 Sep 2024 20:10:24 +0900 Subject: [PATCH 079/198] Enhancement of API description (#6312) (#6325) Signed-off-by: pjh9216 Co-authored-by: pjh9216 --- .../Tizen.Applications/AppControl.cs | 30 ++++++++++++------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/src/Tizen.Applications.Common/Tizen.Applications/AppControl.cs b/src/Tizen.Applications.Common/Tizen.Applications/AppControl.cs index 6f341d899f8..043fa7edf2c 100755 --- a/src/Tizen.Applications.Common/Tizen.Applications/AppControl.cs +++ b/src/Tizen.Applications.Common/Tizen.Applications/AppControl.cs @@ -102,7 +102,7 @@ public AppControl(bool enableAppStartedResultEvent) /// /// Initializes the instance of the AppControl class with the SafeAppControlHandle. /// - /// + /// A reference to the SafeAppControlHandle object. /// 3 public AppControl(SafeAppControlHandle handle) { @@ -169,6 +169,9 @@ private AppControl(IntPtr handle) /// /// Gets the SafeAppControlHandle instance. /// + /// + /// This property returns a reference to the underlying SafeAppControlHandle object. + /// /// 3 public SafeAppControlHandle SafeAppControlHandle { @@ -227,7 +230,8 @@ public string Operation /// Gets and sets the explicit MIME type of the data. ///
/// - /// (if the mime is null for setter, it clears the previous value.) + /// This property returns the explicitly set MIME type of the data. If no explicit MIME type is set, it will return null. + /// (Setting this property to null will clear any previously set explicit MIME types.) /// /// /// @@ -328,7 +332,8 @@ public string Uri /// Gets and sets the explicit category. ///
/// - /// (if the category is null for setter, it clears the previous value.) + /// This property returns the explicitly set category. If no explicit category is set, it will return null. + /// (Setting this property to null will clear any previously set explicit categories.) /// /// 3 public string Category @@ -363,7 +368,8 @@ public string Category /// Gets and sets the application ID to explicitly launch. /// /// - /// (if the application ID is null for setter, it clears the previous value.) + /// This property returns the explicitly set application ID. If no explicit application ID is set, it will return null. + /// (Setting this property to null will clear any previously set explicit application IDs.) /// /// /// @@ -446,7 +452,7 @@ public AppControlLaunchMode LaunchMode /// Gets the collection of the extra data. /// /// - /// Extra data for communication between AppControls. + /// The ExtraData property provides access to a collection of key-value pairs representing additional data associated with the application control. /// /// /// @@ -1023,9 +1029,9 @@ public static IEnumerable GetDefaultApplicationIds() } /// - /// Sets the window position. + /// Sets the position and size of the window. /// - /// The window position object. + /// A structure containing the coordinates and dimensions of the window. /// Thrown when the argument is null. /// Thrown when the argument is invalid. /// Thrown when the invalid operation error occurs. @@ -1054,7 +1060,7 @@ public void SetWindowPosition(WindowPosition windowPosition) /// /// Gets the window position. /// - /// The window position. + /// A structure containing the coordinates and dimensions of the window. /// Thrown when the invalid operation error occurs. /// 11 public WindowPosition GetWindowPosition() @@ -1357,9 +1363,13 @@ public bool TryGet(string key, out IEnumerable value) } /// - /// Removes the extra data. + /// Deletes a particular piece of extra data from the collection. /// - /// The name of the extra data. + /// Identifier of the data to remove. + /// + /// This method enables removal of individual items from the ExtraData collection. + /// It accepts only non-empty strings as valid input parameters. + /// /// Thrown when the key is a zero-length string. /// Thrown when the key is not found. /// Thrown when the key is rejected. From 09e3c214d3bc74aa1c25041c12fef5245144d0f6 Mon Sep 17 00:00:00 2001 From: sunghyun kim Date: Wed, 21 Aug 2024 18:50:57 +0900 Subject: [PATCH 080/198] [NUI] Add AddPrecompileShader() for adding precompile shader --- .../internal/Interop/Interop.VisualFactory.cs | 3 ++ .../src/public/Visuals/VisualFactory.cs | 40 +++++++++++++++++++ 2 files changed, 43 insertions(+) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.VisualFactory.cs b/src/Tizen.NUI/src/internal/Interop/Interop.VisualFactory.cs index 988953bf5b7..0be09007246 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.VisualFactory.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.VisualFactory.cs @@ -31,6 +31,9 @@ internal static partial class VisualFactory [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_VisualFactory_CreateVisual__SWIG_0")] public static extern global::System.IntPtr CreateVisual(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_VisualFactory_AddPrecompileShader")] + public static extern bool AddPrecompileShader(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_VisualFactory_UsePreCompiledShader")] public static extern void UsePreCompiledShader(global::System.Runtime.InteropServices.HandleRef jarg1); } diff --git a/src/Tizen.NUI/src/public/Visuals/VisualFactory.cs b/src/Tizen.NUI/src/public/Visuals/VisualFactory.cs index 7fb9c8d043c..0ca06449da4 100755 --- a/src/Tizen.NUI/src/public/Visuals/VisualFactory.cs +++ b/src/Tizen.NUI/src/public/Visuals/VisualFactory.cs @@ -136,5 +136,45 @@ public void UsePreCompiledShader() Interop.VisualFactory.UsePreCompiledShader(SwigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + + /// + /// Adds a list of pre-compiled shaders to the visual factory. + /// + /// + /// This API allows you to add the desired precompile shader to the list. + /// you can set it through PropertyMap. + /// you need to know the values for setting well to use them, so please refer to the explanation below. + /// + /// The property map consists of string keys. + /// + /// - shaderType: Set the desired shader type. we provides these type: "image","text","color","3d" and "custom" + /// - shaderOption(propertyMap): Set the desired shader option. we provides these flag: we provides a lot of shader options, so user need to check proper shader option. + /// - vertexShader: Set the vertext shader that user want. this is for custom shader. + /// - fragmentShader: Set the fragment shader that user want. this is for custom shader. + /// - shaderName: if user want to set shader name, use this. this is for custom shader.(optional) + /// + /// (example) + /// PropertyMap imageShader = new PropertyMap(); + /// imageShader.Add("shaderType", new PropertyValue("image")); + /// imageShader.Add("shaderOption", new PropertyValue(new PropertyMap().Add("ROUNDED_CORNER", new PropertyValue(true)) + /// .Add("MASKING", new PropertyValue(true)))); + /// + /// PropertyMap textShader = new PropertyMap(); + /// textShader.Add("shaderType", new PropertyValue("text")); + /// + /// VisualFactory.Instance.AddPrecompileShader(imageShader); + /// VisualFactory.Instance.AddPrecompileShader(textShader); + /// VisualFactory.Instance.UsePreCompiledShader(); + /// + /// The map contains the shader option for precompiling. + /// True if the pre-compiled shader is added, otherwise false. + [EditorBrowsable(EditorBrowsableState.Never)] + public bool AddPrecompileShader(PropertyMap option) + { + bool result = false; + result = Interop.VisualFactory.AddPrecompileShader(SwigCPtr, PropertyMap.getCPtr(option)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return result; + } } } From fefbaad1986b8d0e6d75a25a71333368306b4891 Mon Sep 17 00:00:00 2001 From: Wonsik Jung Date: Fri, 13 Sep 2024 17:07:19 +0900 Subject: [PATCH 081/198] [NUI] Add window behind blur type. Add window behind blur type and the window blur sample. --- .../src/public/Common/NUIConstants.cs | 6 + test/NUIWindowBlur/NUIWindowBlur.cs | 795 ++++++++++++++++++ test/NUIWindowBlur/NUIWindowBlur.csproj | 26 + .../res/gallery/gallery-medium-0.jpg | Bin 0 -> 55556 bytes .../res/gallery/gallery-medium-1.jpg | Bin 0 -> 74544 bytes .../res/gallery/gallery-medium-10.jpg | Bin 0 -> 32242 bytes .../res/gallery/gallery-medium-11.jpg | Bin 0 -> 71098 bytes .../res/gallery/gallery-medium-12.jpg | Bin 0 -> 90322 bytes .../res/gallery/gallery-medium-13.jpg | Bin 0 -> 71282 bytes .../res/gallery/gallery-medium-14.jpg | Bin 0 -> 100743 bytes .../res/gallery/gallery-medium-15.jpg | Bin 0 -> 100570 bytes .../res/gallery/gallery-medium-16.jpg | Bin 0 -> 99804 bytes .../res/gallery/gallery-medium-17.jpg | Bin 0 -> 71374 bytes .../res/gallery/gallery-medium-18.jpg | Bin 0 -> 52113 bytes .../res/gallery/gallery-medium-19.jpg | Bin 0 -> 50992 bytes .../res/gallery/gallery-medium-2.jpg | Bin 0 -> 37419 bytes .../res/gallery/gallery-medium-20.jpg | Bin 0 -> 57176 bytes .../res/gallery/gallery-medium-21.jpg | Bin 0 -> 90089 bytes .../res/gallery/gallery-medium-22.jpg | Bin 0 -> 106701 bytes .../res/gallery/gallery-medium-23.jpg | Bin 0 -> 62494 bytes .../res/gallery/gallery-medium-24.jpg | Bin 0 -> 49722 bytes .../res/gallery/gallery-medium-25.jpg | Bin 0 -> 65570 bytes .../res/gallery/gallery-medium-26.jpg | Bin 0 -> 42985 bytes .../res/gallery/gallery-medium-27.jpg | Bin 0 -> 122216 bytes .../res/gallery/gallery-medium-28.jpg | Bin 0 -> 76976 bytes .../res/gallery/gallery-medium-29.jpg | Bin 0 -> 84769 bytes .../res/gallery/gallery-medium-3.jpg | Bin 0 -> 39259 bytes .../res/gallery/gallery-medium-30.jpg | Bin 0 -> 81594 bytes .../res/gallery/gallery-medium-31.jpg | Bin 0 -> 64083 bytes .../res/gallery/gallery-medium-32.jpg | Bin 0 -> 123020 bytes .../res/gallery/gallery-medium-33.jpg | Bin 0 -> 79993 bytes .../res/gallery/gallery-medium-34.jpg | Bin 0 -> 70331 bytes .../res/gallery/gallery-medium-35.jpg | Bin 0 -> 35509 bytes .../res/gallery/gallery-medium-36.jpg | Bin 0 -> 89606 bytes .../res/gallery/gallery-medium-37.jpg | Bin 0 -> 66801 bytes .../res/gallery/gallery-medium-38.jpg | Bin 0 -> 56382 bytes .../res/gallery/gallery-medium-39.jpg | Bin 0 -> 86876 bytes .../res/gallery/gallery-medium-4.jpg | Bin 0 -> 75435 bytes .../res/gallery/gallery-medium-40.jpg | Bin 0 -> 66557 bytes .../res/gallery/gallery-medium-41.jpg | Bin 0 -> 74999 bytes .../res/gallery/gallery-medium-42.jpg | Bin 0 -> 87230 bytes .../res/gallery/gallery-medium-43.jpg | Bin 0 -> 54421 bytes .../res/gallery/gallery-medium-44.jpg | Bin 0 -> 53079 bytes .../res/gallery/gallery-medium-45.jpg | Bin 0 -> 94218 bytes .../res/gallery/gallery-medium-46.jpg | Bin 0 -> 53842 bytes .../res/gallery/gallery-medium-47.jpg | Bin 0 -> 70678 bytes .../res/gallery/gallery-medium-48.jpg | Bin 0 -> 86222 bytes .../res/gallery/gallery-medium-49.jpg | Bin 0 -> 66142 bytes .../res/gallery/gallery-medium-5.jpg | Bin 0 -> 97438 bytes .../res/gallery/gallery-medium-50.jpg | Bin 0 -> 69898 bytes .../res/gallery/gallery-medium-51.jpg | Bin 0 -> 87083 bytes .../res/gallery/gallery-medium-52.jpg | Bin 0 -> 72295 bytes .../res/gallery/gallery-medium-6.jpg | Bin 0 -> 76782 bytes .../res/gallery/gallery-medium-7.jpg | Bin 0 -> 60740 bytes .../res/gallery/gallery-medium-8.jpg | Bin 0 -> 48285 bytes .../res/gallery/gallery-medium-9.jpg | Bin 0 -> 82970 bytes test/NUIWindowBlur/res/images/Wing.jpg | Bin 0 -> 249387 bytes test/NUIWindowBlur/res/images/behind.jpg | Bin 0 -> 56382 bytes test/NUIWindowBlur/res/images/close.png | Bin 0 -> 216 bytes test/NUIWindowBlur/res/images/leftCorner.png | Bin 0 -> 446 bytes test/NUIWindowBlur/res/images/maximalize.png | Bin 0 -> 211 bytes test/NUIWindowBlur/res/images/minimalize.png | Bin 0 -> 148 bytes test/NUIWindowBlur/res/images/rightCorner.png | Bin 0 -> 434 bytes test/NUIWindowBlur/res/images/smallwindow.png | Bin 0 -> 258 bytes .../shared/res/NUIWindowBlur.png | Bin 0 -> 7887 bytes test/NUIWindowBlur/tizen-manifest.xml | 16 + 66 files changed, 843 insertions(+) create mode 100644 test/NUIWindowBlur/NUIWindowBlur.cs create mode 100644 test/NUIWindowBlur/NUIWindowBlur.csproj create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-0.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-1.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-10.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-11.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-12.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-13.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-14.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-15.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-16.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-17.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-18.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-19.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-2.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-20.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-21.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-22.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-23.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-24.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-25.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-26.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-27.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-28.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-29.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-3.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-30.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-31.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-32.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-33.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-34.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-35.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-36.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-37.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-38.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-39.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-4.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-40.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-41.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-42.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-43.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-44.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-45.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-46.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-47.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-48.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-49.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-5.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-50.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-51.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-52.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-6.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-7.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-8.jpg create mode 100755 test/NUIWindowBlur/res/gallery/gallery-medium-9.jpg create mode 100755 test/NUIWindowBlur/res/images/Wing.jpg create mode 100755 test/NUIWindowBlur/res/images/behind.jpg create mode 100644 test/NUIWindowBlur/res/images/close.png create mode 100644 test/NUIWindowBlur/res/images/leftCorner.png create mode 100644 test/NUIWindowBlur/res/images/maximalize.png create mode 100644 test/NUIWindowBlur/res/images/minimalize.png create mode 100644 test/NUIWindowBlur/res/images/rightCorner.png create mode 100644 test/NUIWindowBlur/res/images/smallwindow.png create mode 100644 test/NUIWindowBlur/shared/res/NUIWindowBlur.png create mode 100644 test/NUIWindowBlur/tizen-manifest.xml diff --git a/src/Tizen.NUI/src/public/Common/NUIConstants.cs b/src/Tizen.NUI/src/public/Common/NUIConstants.cs index afbae4b2723..c32a9c5dbeb 100755 --- a/src/Tizen.NUI/src/public/Common/NUIConstants.cs +++ b/src/Tizen.NUI/src/public/Common/NUIConstants.cs @@ -2312,5 +2312,11 @@ public enum WindowBlurType /// [EditorBrowsable(EditorBrowsableState.Never)] Background = 1, + /// + /// behind blur for the window. + /// It has a blur effect ot th beind area of except the window background. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + Behind = 2, } } diff --git a/test/NUIWindowBlur/NUIWindowBlur.cs b/test/NUIWindowBlur/NUIWindowBlur.cs new file mode 100644 index 00000000000..9497195a684 --- /dev/null +++ b/test/NUIWindowBlur/NUIWindowBlur.cs @@ -0,0 +1,795 @@ +using System.Collections.Generic; +using System.Collections.ObjectModel; +using Tizen.NUI.BaseComponents; +using Tizen.NUI.Components; +using Tizen.NUI.Binding; +using Tizen.NUI; +using System.ComponentModel; +using System; + +namespace NUIWindowBlur +{ + using log = Tizen.Log; + class Gallery : INotifyPropertyChanged + { + string sourceDir = Tizen.Applications.Application.Current.DirectoryInfo.Resource + "gallery/gallery-medium-"; + private int index; + private string name; + private bool selected; + + public event PropertyChangedEventHandler PropertyChanged; + + private void OnPropertyyChanged(string propertyName) + { + + PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); + } + + public Gallery(int galleryIndex, string galleryName) + { + index = galleryIndex; + name = galleryName; + } + + public string Name + { + get + { + return name; + } + set + { + name = value; + OnPropertyyChanged("Name"); + OnPropertyyChanged("ViewLabel"); + } + } + public string ViewLabel + { + get + { + return "[" + index + "] : " + name; + } + } + + public string ImageUrl + { + get + { + return sourceDir + (index % 20) + ".jpg"; + } + } + + public bool Selected + { + get + { + return selected; + } + set + { + selected = value; + OnPropertyyChanged("Selected"); + } + } + } + + class Album : ObservableCollection + { + private int index; + private string name; + private DateTime date; + private bool selected; + + public Album(int albumIndex, string albumName, DateTime albumDate) + { + index = albumIndex; + name = albumName; + date = albumDate; + } + + public string Title + { + get + { + return "[" + index + "] " + name; + } + } + + public string Date + { + get + { + return date.ToLongDateString(); + } + } + public bool Selected + { + get + { + return selected; + } + set + { + selected = value; + } + } + } + + class GalleryViewModel : ObservableCollection + { + string[] namePool = { + "Cat", + "Boy", + "Arm muscle", + "Girl", + "House", + "Cafe", + "Statue", + "Sea", + "hosepipe", + "Police", + "Rainbow", + "Icicle", + "Tower with the Moon", + "Giraffe", + "Camel", + "Zebra", + "Red Light", + "Banana", + "Lion", + "Espresso", + }; + public GalleryViewModel(int count) + { + CreateData(this, count); + } + + public ObservableCollection CreateData(ObservableCollection result, int count) + { + for (int i = 0; i < count; i++) + { + result.Add(new Gallery(i, namePool[i % 20])); + } + return result; + } + } + + class AlbumViewModel : ObservableCollection + { + string[] namePool = { + "Cat", + "Boy", + "Arm muscle", + "Girl", + "House", + "Cafe", + "Statue", + "Sea", + "hosepipe", + "Police", + "Rainbow", + "Icicle", + "Tower with the Moon", + "Giraffe", + "Camel", + "Zebra", + "Red Light", + "Banana", + "Lion", + "Espresso", + }; + + (string name, DateTime date)[] titlePool = { + ("House Move", new DateTime(2021, 2, 26)), + ("Covid 19", new DateTime(2020, 1, 20)), + ("Porto Trip", new DateTime(2019, 11, 23)), + ("Granada Trip", new DateTime(2019, 11, 20)), + ("Barcelona Trip", new DateTime(2019, 11, 17)), + ("Developer's Day", new DateTime(2019, 11, 16)), + ("Tokyo Trip", new DateTime(2019, 7, 5)), + ("Otaru Trip", new DateTime(2019, 3, 2)), + ("Sapporo Trip", new DateTime(2019, 2, 28)), + ("Hakodate Trip", new DateTime(2019, 2, 26)), + ("Friend's Wedding", new DateTime(2018, 11, 23)), + ("Grandpa Birthday", new DateTime(2018, 9, 14)), + ("Family Jeju Trip", new DateTime(2018, 7, 15)), + ("HongKong Trip", new DateTime(2018, 3, 30)), + ("Mom's Birthday", new DateTime(2017, 12, 21)), + ("Buy new Car", new DateTime(2017, 10, 18)), + ("Graduation", new DateTime(2017, 6, 30)), + }; + + public AlbumViewModel() + { + CreateData(this); + } + + public ObservableCollection CreateData(ObservableCollection result) + { + for (int i = 0; i < titlePool.Length; i++) + { + (string name, DateTime date) = titlePool[i]; + Album cur = new Album(i, name, date); + for (int j = 0; j < 20; j++) + { + cur.Add(new Gallery(j, namePool[j])); + } + result.Add(cur); + } + return result; + } + + } + + class Program : NUIApplication + { + string tag = "NUITEST"; + private const string KEY_BACK = "XF86Back"; + private const string KEY_ESCAPE = "Escape"; + private const string KEY_NUM_1 = "1"; + private const string KEY_NUM_2 = "2"; + private const string KEY_NUM_3 = "3"; + private const string KEY_NUM_4 = "4"; + private const string KEY_NUM_5 = "5"; + private const string KEY_NUM_6 = "6"; + private const string KEY_NUM_7 = "7"; + private const string KEY_NUM_8 = "8"; + private const string KEY_NUM_9 = "9"; + private const string KEY_NUM_0 = "0"; + CollectionView colView; + int itemCount = 500; + string selectedItem; + ObservableCollection gallerySource; + Gallery moveMenu; + + //static string title = "NUI Auto TCT \n\n"; + private Window mainWindow = null; + private Window windowForBackground = null; + private Window windowForBehind = null; + + private static readonly string imagePath = Tizen.Applications.Application.Current.DirectoryInfo.Resource + "/images/"; + + protected override void OnCreate() + { + base.OnCreate(); + Initialize(); + } + + public Program(WindowData windowData) : base(ThemeOptions.None, windowData) + { + log.Error("NUI", $"Application is created with default border\n"); + } + + class CustomBorder : DefaultBorder + { + private static readonly string ResourcePath = Tizen.Applications.Application.Current.DirectoryInfo.Resource; + private static readonly string MinimalizeIcon = ResourcePath + "/images/minimalize.png"; + private static readonly string MaximalizeIcon = ResourcePath + "/images/maximalize.png"; + private static readonly string RestoreIcon = ResourcePath + "/images/smallwindow.png"; + private static readonly string CloseIcon = ResourcePath + "/images/close.png"; + private static readonly string LeftCornerIcon = ResourcePath + "/images/leftCorner.png"; + private static readonly string RightCornerIcon = ResourcePath + "/images/rightCorner.png"; + + private int width = 500; + private bool hide = false; + private View borderView; + private TextLabel title; + + private ImageView minimalizeIcon; + private ImageView maximalizeIcon; + private ImageView closeIcon; + private ImageView leftCornerIcon; + private ImageView rightCornerIcon; + + private Rectangle preWinPositonSize; + + public CustomBorder() : base() + { + BorderHeight = 50; + OverlayMode = true; + BorderLineThickness = 0; + } + + public override bool CreateTopBorderView(View topView) + { + if (topView == null) + { + return false; + } + topView.Layout = new LinearLayout() + { + LinearOrientation = LinearLayout.Orientation.Horizontal, + VerticalAlignment = VerticalAlignment.Center, + HorizontalAlignment = HorizontalAlignment.Center, + CellPadding = new Size2D(20, 20), + }; + title = new TextLabel() + { + Text = "Gallery", + HorizontalAlignment = HorizontalAlignment.Center, + VerticalAlignment = VerticalAlignment.Center, + }; + + BorderWindow.EnableFloatingMode(true); + topView.Add(title); + return true; + } + + public override bool CreateBottomBorderView(View bottomView) + { + if (bottomView == null) + { + return false; + } + bottomView.Layout = new RelativeLayout(); + + minimalizeIcon = new ImageView() + { + ResourceUrl = MinimalizeIcon, + AccessibilityHighlightable = true, + }; + + maximalizeIcon = new ImageView() + { + ResourceUrl = MaximalizeIcon, + AccessibilityHighlightable = true, + }; + + closeIcon = new ImageView() + { + ResourceUrl = CloseIcon, + AccessibilityHighlightable = true, + }; + + leftCornerIcon = new ImageView() + { + ResourceUrl = LeftCornerIcon, + AccessibilityHighlightable = true, + }; + + rightCornerIcon = new ImageView() + { + ResourceUrl = RightCornerIcon, + AccessibilityHighlightable = true, + }; + + RelativeLayout.SetRightTarget(minimalizeIcon, maximalizeIcon); + RelativeLayout.SetRightRelativeOffset(minimalizeIcon, 0.0f); + RelativeLayout.SetHorizontalAlignment(minimalizeIcon, RelativeLayout.Alignment.End); + RelativeLayout.SetRightTarget(maximalizeIcon, closeIcon); + RelativeLayout.SetRightRelativeOffset(maximalizeIcon, 0.0f); + RelativeLayout.SetHorizontalAlignment(maximalizeIcon, RelativeLayout.Alignment.End); + RelativeLayout.SetRightTarget(closeIcon, rightCornerIcon); + RelativeLayout.SetRightRelativeOffset(closeIcon, 0.0f); + RelativeLayout.SetHorizontalAlignment(closeIcon, RelativeLayout.Alignment.End); + RelativeLayout.SetRightRelativeOffset(rightCornerIcon, 1.0f); + RelativeLayout.SetHorizontalAlignment(rightCornerIcon, RelativeLayout.Alignment.End); + bottomView.Add(leftCornerIcon); + bottomView.Add(minimalizeIcon); + bottomView.Add(maximalizeIcon); + bottomView.Add(closeIcon); + bottomView.Add(rightCornerIcon); + + + minimalizeIcon.TouchEvent += OnMinimizeIconTouched; + maximalizeIcon.TouchEvent += OnMaximizeIconTouched; + closeIcon.TouchEvent += OnCloseIconTouched; + leftCornerIcon.TouchEvent += OnLeftBottomCornerIconTouched; + rightCornerIcon.TouchEvent += OnRightBottomCornerIconTouched; + + minimalizeIcon.AccessibilityActivated += (s, e) => + { + MinimizeBorderWindow(); + }; + maximalizeIcon.AccessibilityActivated += (s, e) => + { + MaximizeBorderWindow(); + }; + closeIcon.AccessibilityActivated += (s, e) => + { + CloseBorderWindow(); + }; + + minimalizeIcon.AccessibilityNameRequested += (s, e) => + { + e.Name = "Minimize"; + }; + maximalizeIcon.AccessibilityNameRequested += (s, e) => + { + e.Name = "Maximize"; + }; + closeIcon.AccessibilityNameRequested += (s, e) => + { + e.Name = "Close"; + }; + leftCornerIcon.AccessibilityNameRequested += (s, e) => + { + e.Name = "Resize"; + }; + rightCornerIcon.AccessibilityNameRequested += (s, e) => + { + e.Name = "Resize"; + }; + + minimalizeIcon.SetAccessibilityReadingInfoTypes(Tizen.NUI.BaseComponents.AccessibilityReadingInfoTypes.Name); + maximalizeIcon.SetAccessibilityReadingInfoTypes(Tizen.NUI.BaseComponents.AccessibilityReadingInfoTypes.Name); + closeIcon.SetAccessibilityReadingInfoTypes(Tizen.NUI.BaseComponents.AccessibilityReadingInfoTypes.Name); + leftCornerIcon.SetAccessibilityReadingInfoTypes(Tizen.NUI.BaseComponents.AccessibilityReadingInfoTypes.Name); + rightCornerIcon.SetAccessibilityReadingInfoTypes(Tizen.NUI.BaseComponents.AccessibilityReadingInfoTypes.Name); + + return true; + } + + public override void CreateBorderView(View borderView) + { + this.borderView = borderView; + borderView.CornerRadius = new Vector4(0.30f, 0.30f, 0.30f, 0.30f); + borderView.CornerRadiusPolicy = VisualTransformPolicyType.Relative; + borderView.BackgroundColor = new Color(1, 1, 1, 0.3f); + } + + public override void OnCreated(View borderView) + { + base.OnCreated(borderView); + UpdateIcons(); + } + + public override bool OnCloseIconTouched(object sender, View.TouchEventArgs e) + { + base.OnCloseIconTouched(sender, e); + return true; + } + + public override bool OnMinimizeIconTouched(object sender, View.TouchEventArgs e) + { + if (e.Touch.GetState(0) == PointStateType.Up) + { + if (BorderWindow.IsMaximized() == true) + { + BorderWindow.Maximize(false); + } + preWinPositonSize = BorderWindow.WindowPositionSize; + BorderWindow.WindowPositionSize = new Rectangle(preWinPositonSize.X, preWinPositonSize.Y, 500, 0); + } + return true; + } + + public override void OnRequestResize() + { + if (borderView != null) + { + borderView.BackgroundColor = new Color(0, 1, 0, 0.3f); // 보더의 배경을 변경할 수 있습니다. + } + } + + public override void OnResized(int width, int height) + { + if (borderView != null) + { + if (this.width > width && hide == false) + { + title.Hide(); + hide = true; + } + else if (this.width < width && hide == true) + { + title.Show(); + hide = false; + } + borderView.BackgroundColor = new Color(1, 1, 1, 0.3f); // 리사이즈가 끝나면 보더의 색깔은 원래대로 돌려놓습니다. + base.OnResized(width, height); + UpdateIcons(); + } + } + + private void UpdateIcons() + { + if (BorderWindow != null && borderView != null) + { + if (BorderWindow.IsMaximized() == true) + { + if (maximalizeIcon != null) + { + maximalizeIcon.ResourceUrl = RestoreIcon; + } + } + else + { + if (maximalizeIcon != null) + { + maximalizeIcon.ResourceUrl = MaximalizeIcon; + } + } + } + } + } + + public void OnWindowForBehindKeyEvent(object sender, Window.KeyEventArgs e) + { + if (e.Key.State == Key.StateType.Down && (e.Key.KeyPressedName == "XF86Back" || e.Key.KeyPressedName == "Escape")) + { + Exit(); + } + } + + void CreateWindowForBehindBlur() + { + if (windowForBehind == null) + { + CustomBorder customBorder = new CustomBorder(); + windowForBehind = new Window("windowForBehind", customBorder, new Rectangle(100, 700, 500, 200), false); + windowForBackground.SetTransparency(false); + windowForBehind.BackgroundColor = new Color(1.0f, 1.0f, 1.0f, 1.0f); + windowForBehind.BlurInfo = new WindowBlurInfo(WindowBlurType.Behind, 60); + + windowForBehind.InterceptTouchEvent += (s, e) => + { + log.Error(tag, $"windowForBehind.InterceptTouchEvent\n"); + if (e.Touch.GetState(0) == PointStateType.Down) + { + customBorder.OverlayBorderShow(); + } + return false; + }; + + windowForBehind.KeyEvent += OnWindowForBehindKeyEvent; + + var viewContainer = new View() + { + PositionUsesPivotPoint = true, + PivotPoint = PivotPoint.Center, + ParentOrigin = ParentOrigin.Center, + Size = new Size(150, 180), + Layout = new LinearLayout() + { + HorizontalAlignment = HorizontalAlignment.Center, + VerticalAlignment = VerticalAlignment.Center, + LinearOrientation = LinearLayout.Orientation.Vertical, + }, + AccessibilityHighlightable = true, + }; + windowForBehind.Add(viewContainer); + + var imageViewB = new ImageView() + { + Size = new Size(150, 150), + ResourceUrl = imagePath + "behind.jpg", + CornerRadius = 0.3f, + CornerRadiusPolicy = VisualTransformPolicyType.Relative, + }; + var textViewB = new TextLabel() + { + Text = "Behind Test", + }; + + viewContainer.Add(imageViewB); + viewContainer.Add(textViewB); + + } + else + { + windowForBehind.Minimize(false); + } + } + + private void OnwindowForBackgroundKeyEvent(object sender, Window.KeyEventArgs e) + { + if (e.Key.State == Key.StateType.Down) + { + log.Error(tag, $"key down! key={e.Key.KeyPressedName}"); + + switch (e.Key.KeyPressedName) + { + case KEY_BACK: + case KEY_ESCAPE: + windowForBackground.Dispose(); + break; + + case KEY_NUM_1: + WindowBlurInfo blurInfo = windowForBackground.BlurInfo; + log.Fatal(tag, $"blur type={blurInfo.BlurType}"); + log.Fatal(tag, $"blur radius={blurInfo.BlurRadius}"); + log.Fatal(tag, $"background Corner Radius={blurInfo.BackgroundCornerRadius}"); + blurInfo.BlurType = WindowBlurType.Background; + blurInfo.BlurRadius += 10; + blurInfo.BackgroundCornerRadius += 10; + windowForBackground.BlurInfo = blurInfo; + break; + + case KEY_NUM_2: + CreateWindowForBehindBlur(); + break; + + default: + log.Debug(tag, $"no test!"); + break; + } + } + } + + void CreateWindowForBackgroundBlur() + { + if (windowForBackground == null) + { + CustomBorder customBorder = new CustomBorder(); + windowForBackground = new Window("windowForBackground", customBorder, new Rectangle(600, 100, 520, 760), false); + windowForBackground.SetTransparency(true); + windowForBackground.BackgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f); + windowForBackground.BlurInfo = new WindowBlurInfo(WindowBlurType.Background, 60, 60); + + windowForBackground.KeyEvent += OnwindowForBackgroundKeyEvent; + + windowForBackground.InterceptTouchEvent += (s, e) => + { + log.Error(tag, $"windowForBackground.InterceptTouchEvent\n"); + if (e.Touch.GetState(0) == PointStateType.Down) + { + customBorder.OverlayBorderShow(); + } + return false; + }; + + InitwindowForBackground(); + } + else + { + windowForBackground.Minimize(false); + } + } + + public void InitwindowForBackground() + { + moveMenu = new Gallery(10, "Move last item to 3rd"); + + var myViewModelSource = gallerySource = new GalleryViewModel(itemCount); + // Add test menu options. + gallerySource.Insert(0, moveMenu); + + colView = new CollectionView() + { + ItemsSource = myViewModelSource, + ItemsLayouter = new LinearLayouter(), + ItemTemplate = new DataTemplate(() => + { + var rand = new Random(); + DefaultLinearItem item = new DefaultLinearItem(); + //Set Width Specification as MatchParent to fit the Item width with parent View. + item.WidthSpecification = LayoutParamPolicies.MatchParent; + + //Decorate Label + item.Label.SetBinding(TextLabel.TextProperty, "ViewLabel"); + item.Label.HorizontalAlignment = HorizontalAlignment.Begin; + + //Decorate Icon + item.Icon.SetBinding(ImageView.ResourceUrlProperty, "ImageUrl"); + item.Icon.WidthSpecification = 60; + item.Icon.HeightSpecification = 60; + + return item; + }), + ScrollingDirection = ScrollableBase.Direction.Vertical, + WidthSpecification = LayoutParamPolicies.MatchParent, + HeightSpecification = LayoutParamPolicies.MatchParent, + }; + + windowForBackground.Add(colView); + } + + + public void SelectionEvt(object sender, SelectionChangedEventArgs ev) + { + //SingleSelection Only have 1 or nil object in the list. + foreach (object item in ev.PreviousSelection) + { + if (item == null) break; + Gallery unselItem = (Gallery)item; + + unselItem.Selected = false; + selectedItem = null; + //Tizen.Log.Debug("NUI", "LSH :: Unselected: {0}", unselItem.ViewLabel); + } + foreach (object item in ev.CurrentSelection) + { + if (item == null) break; + Gallery selItem = (Gallery)item; + //selItem.Selected = true; + selectedItem = selItem.Name; + + // Check test menu options. + if (selItem == moveMenu) + { + // Move last indexed item to index 3. + gallerySource.Move(gallerySource.Count - 1, 3); + } + } + } + + public void OnKeyEvent(object sender, Window.KeyEventArgs e) + { + if (e.Key.State == Key.StateType.Down && (e.Key.KeyPressedName == "XF86Back" || e.Key.KeyPressedName == "Escape")) + { + Exit(); + } + } + + void Initialize() + { + mainWindow = NUIApplication.GetDefaultWindow(); + mainWindow.SetTransparency(true); + mainWindow.BackgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f); + mainWindow.BlurInfo = new WindowBlurInfo(WindowBlurType.Background, 60, 10); + + mainWindow.KeyEvent += OnKeyEvent; + + var appFunctionList = new View() + { + PositionUsesPivotPoint = true, + PivotPoint = PivotPoint.BottomCenter, + ParentOrigin = ParentOrigin.BottomCenter, + BackgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f), + Size = new Size(520, 200), + CornerRadius = 0.3f, + CornerRadiusPolicy = VisualTransformPolicyType.Relative, + Layout = new LinearLayout() + { + HorizontalAlignment = HorizontalAlignment.Center, + LinearOrientation = LinearLayout.Orientation.Horizontal, + CellPadding = new Size(10, 10), + Padding = new Extents(10, 10, 10, 10), + } + }; + mainWindow.Add(appFunctionList); + + var customBorder = new View() + { + Size = new Size(150, 180), + Layout = new LinearLayout() + { + HorizontalAlignment = HorizontalAlignment.Center, + VerticalAlignment = VerticalAlignment.Center, + LinearOrientation = LinearLayout.Orientation.Vertical, + }, + AccessibilityHighlightable = true, + }; + + var imageViewB = new ImageView() + { + Size = new Size(150, 150), + ResourceUrl = imagePath + "Wing.jpg", + CornerRadius = 0.3f, + CornerRadiusPolicy = VisualTransformPolicyType.Relative, + }; + var textViewB = new TextLabel() + { + Text = "Gallery", + }; + + customBorder.Add(imageViewB); + customBorder.Add(textViewB); + appFunctionList.Add(customBorder); + customBorder.TouchEvent += (s, e) => + { + if (e.Touch.GetState(0) == PointStateType.Up) + { + CreateWindowForBackgroundBlur(); + } + return true; + }; + customBorder.AccessibilityActivated += (s, e) => + { + CreateWindowForBackgroundBlur(); + }; + } + + static void Main(string[] args) + { + WindowData newWindowData = new WindowData(); + newWindowData.BorderInterface = new DefaultBorder(); + newWindowData.WindowMode = WindowMode.Transparent; + newWindowData.PositionSize = new Rectangle(100, 100, 520, 300); + var app = new Program(newWindowData); + app.Run(args); + } + } +} diff --git a/test/NUIWindowBlur/NUIWindowBlur.csproj b/test/NUIWindowBlur/NUIWindowBlur.csproj new file mode 100644 index 00000000000..1714378b8ce --- /dev/null +++ b/test/NUIWindowBlur/NUIWindowBlur.csproj @@ -0,0 +1,26 @@ + + + + Exe + net6.0 + + + + portable + + + None + + + + + + + + + + True + + + + diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-0.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-0.jpg new file mode 100755 index 0000000000000000000000000000000000000000..c8400f7c0880f4389b04386c02ff653d1445762f GIT binary patch literal 55556 zcmce7byQnj^KNi=D-OY3io3hJQy_Q}Ah;DN?(U@&cXueXSn%Rr+^t1QiGBV&F@uosB10Yc{DN`W=0EhrYDnu`Ujl7$?Kg`+D$%~HFj*X6=mrsCB z-v;984Rxeb1l!wr!Q7zEcAlJc-cXP|jLyr+o=(=?#_pxjaJI9DdfIc+8QH@;o!y{x z{M@`^bWUDg?qWPVzP`TPHvhtLyTKfJ!2ia2@@S~aD{AR0a=l>x#q94nfIz|9&ei{g z{68c?FD~o=q7?m{9RL7TRdxXS%OCFAqRM+7AMz^ZB>;lE9ZSAe}wb&JE-Yb(91e8Yppz0HvicCH%zv zAnp)*FB`fSJk(RnPZIbqYho|`e};L0bpL{Qxk>^}G72z;5R`%iul_y02ffA#!-g1wv_{+r7GLjN=KuR#4z zILPk5OuKu-!2edx-YT<&0R zM`x(#OZo`DMEf7k|EwaW@8;m;YXh_YzoPzeolXK|C-$!__xzXo?^wu!z5cEJTLnA+ z696%=%|F}c#|5%?u<-_a0j2(bB-{V>6(Yg&&kli||AX?swEyHR!Sla7`Zx4{Z0^fB z{~miunwK2p`L86D!u-1qkbkKd|8GG=L_l~s5D@=U{=0|xkCFdj;eWyY6aN2f|9%D# zp#M|1kPrv}hy(~o1PFhJ0JJZ~=|zxU%GrMi8agTl3MLXV01@jSfHXb;0T}`5A3;P$ zMnOUWAR-_kqoAS@5CYJNi0OeOeEb-s46<^JuXXh>$(U>eY&~G%ufkH91?AJ4UkuP7 z{IlfC@zVZ>ARxY2_-7r=mwEXYHV8-v$f&5OXz2gu@uCwDBBRg)`B2e__+{mE^=xcC zexMV>!cvPF!qYx}8JHs>ecjYNyK}`TzkB_64S@Y}A|e420YDmX{}*tJ_8#FfF)h3^ zwll7n@Zy}^{7TXAFTgUpNKy=GI`pPU;u!D0JAkkl8-1RAL?T?)tW918E9L&5y6axl z8K0iFXo?+3dFXsSaL{tveoUG0d!t|^gFICHElP-#tW|E1=Yswm#SF z$<_REu>n%1$D=V1j_qNLAn+IB7{>qf>DNm4kxQzssYhg#jdP){dtK_=!iSzjt{_8q zMoE5|7Phas@h%L{jtG`B9e3;BpD$~=?bt5YkA8+CE#MBfeV|n556ClUt%)kG1Lnt&hP$7|i?R7aCx|g7 zn~JFFP2a-UIw++PFyOw~xg;pMZ>3Jzqk2LP&&=WF0M+s@M}H(8v>_vuC@cg)AY_HO z{9<6S-}2U9K$l53@AT(_sOf8b78IjA+w31nhlaJU_Rro0dSg^sYe2$P`i$&aU76NR z&INuHNkNQWN9E?fK~ee(=*DJGrzxu`nY|Djs^<>_MnW=%NBPyO9Z+Un6ra+Yy&K=i zmR-T)ws@uK#{?9OQotCv*{7&Er)9tOObrd+G<++IK+hG_2xQ?ahvv9G7vAYoTn^t9 zRW+u~4QQ!H+LF5XtZ7O4KYO}}djf8b}lv0w{M;{+R-MDy6L-EW#g zYcU$b6ttYs%W~c zuTI+KVurYt@zuNmWqK6+<~tc%Kf!N~Nn*u#&15Hb_PJsxPx4(If_3ovbM{SZA@P** zMT3EJPv-2e{pK^M9q&O>V6Ri_d%FZqd+W{AXyqUdq&wjMk4{J;U=mLldT?(gK4> z14DmssY>A^%k5u)Rj~t**)aogw$)P>%={YVw?Vy_CWA|Z-@@QVDvC;&&~CMQ|2LxS zF=6g5ntE%;#VckWzYhLgahD6=Ux0wOt#qO((M4k^mmqPf!J>@*2qP_lQLK;RlgBu0+XG5O%Ka zllq=b)`G_HXBkB=L*GZ(otCBZ>O$`28iI2t8r1KSOINw<`;1JcGh$>VE|y?zrBE*d z$r8yILqnm_l+55~Nx30St*@Ns5322F>D0=D@ft3O4a5~Ho))1x#WfnjrzR<9N?#+F zLWLlU22!l~>~!bq@Jgo)SMAe|wP!uiM;UKY7U$!mL(#+*!M4mshQaa}jhd`+m$>9{ zY2IQXsN@g#el+VyBOBb9>5XM&9+ zHT#aQ>)Bf8lM}wNt(%*SZn{l*$19~>o{A&PR^2OKsuI3TG`^=FWId+`U~u{n&-8*+ zV&o*c6-I>L&&bXWUx}`?@G@=~FX#;iw0Fhufy6dye62!KJJ%XnL)X_?uiU&0^=K?L zYUFCZn;cx1b;5qBau**im<6mG@k8l_5hY#uk5+m&loIT<==UsU=%M>RY|v89s~If< zng@G-H1zxh95?X1A$2pnJ(H@)6=tT$s-|f1?iAFIjN+tD-qnSfr_74hfH1~{X+gl} zPnN}cM(jVhF5F%R0VD%E3ODMk-fqIlJ|?6McQuYh+YzEmtX&1I@r<}8azBv-r*!ub z5#ex%tequ&4i=8DN7DSr4b?#0v2RB7LJ>w;f3 zt_LMn_CCyjeWwHFs3;M*a9$8+-KKvFm`q29RQ7|F<`@s8e?-)ge+xyUyrMUG=ym^+|f_BCGgxI5!RQ!am{IMbGYYY(`-@4S6vvr-56zW zdJx)~o?y|+a>P^^iW@~$QR0w98ME9;qFH#t>{da_vjn=Gvr)5OP*6be z&MxUh2ahMS)vc#2AL6<*8CgQi`~lCBfY$~FmYF0Zl9^4cce0AdSb2ZA`_%(!?)jrvM$6QSMm|d6teEo0w9wrXkcu~b z6mK>Gejw)4_BdFA=my4YmFB|F$At2&Kd&WY`~^gLYSa|%%~$Uxe{_^GK9o*JzF zrY^l061<+3&(6-hTMeul>K;BZ0^7AF7=H@+FewXOQ++UUa)`8nxo};*T6WUzI6i+* z%aN!efVwZ>Vtt?(Txv*f_!Nol!(A@$SjXiSO0D78QO7Ya);jK?7Uil~>AvRQ?A#I{ z&W+#kz3;5!8WM&2<>&?jxSoMQ(kW`Rvk`9kBP6Z8cF3rjk)ViGV*8$9Iz1E^*LQLK{OzHX-L$?%G&lvL@f-=zXnUl0L&0*)U?I&uR~}RL8#q*K zL~g1Np%##FvF&)JVrHFkEqhP+GgHiE)u8a=7e~;2Z1378GOm^|5z5f@d%FcEh$6_& z+;nHrJx6#YRgsW5o39HsS*Y}Ne$pAVIxxhlIySdP(a0?XkniMo^M5)!M~v4=ea~7& zs?uIXbzl2a3MYd>K)#jzob@Eelsg$Pn#~-xxe?ekWkUcaM9CdHz;_a^JlB( zE+cW-!$;qnoT9j@hG$RZRR-Cik43foBFAHpxM#FCd%|QrlKh=$Pp!{-sIe(nL|U9 zp(IU9&|n0p?rYbYOOpr@Km36e_tWv7yVFV*t+%(N5fli>_eF8*IGh7RRhe#rMbEqCZCW8W0QoLbfe3sM&|b%!=Q-R~LTe zpLKxFL%bkILn%UEF+Hfn{d|pYlifAZ%2SvyxqYEm?eO*m#t}M5j zGqp4v^Dxj!X5AW1&om*YXriYZMI#H?UiFWi0phkH6uuR;w|78sGe$+euk$0p*jE># z{lS3Rac7jz@pG=jEhpY(j)jI%g18&0PO(yJJ2%r*+7NZ2x_rpK$E?f9z~|>Map=T} zTRS*{dEMh9e@3OI#Bpp<($Ng*$MwRdW2+XUsbTLP)cDj%q48#t{4;BQubEV~U*V8E z0nT(&v?^{kZURPQJ-LWbLed9>w)qcpZcPP$0lLh>c^eKQb-`zSZ5&s>-h9(jddDx1 zN7ap$wW{T`5lLzR@u!5gZ^wivAg<^?Q@YLTo3#GSSwSsw^s85RL`?*N)$3cx$_K%@ z?p6^$*u|DJh5bu)f%hJ|r?pLi2Ye5oseK;*0x%BwD!QvhaqX&CE9!jKtI5)cQk_b#t0QgNP8F?#+45|vOWw9gqmV#+^{fnw1PcLVW>oGewu zcs;6}bk3_+$*drqb<$=}MJ#JNSz0Xw;rHySP>IBO@5lJq&Rf7Mo~>kUDcfPMhO3R3 zYX0)rOcc_n;SSs16bAdYx5`w^#Jc(;JHU&fZY1tuNaBdv9iOAcx*+FBw7^*gV;zFQSyf)V5|#2rS%LRQ7L%v=&-d<&X@`l%mxtq)7)ZGu`{obhM7c!rEsryt%NeW{MI ze%{{L~o}$uyyc%Pi5lrLWqB?UFvXj!8w_9@%Lo4OX%rw3dLZlbJ~H5$d(Y6g#m9 z3{^U_Wn7XUnx7kQMLsE+mUfHhC{FO48d)-zIm|FD_b0V^pqmAdG9`@XaF9Z%j0>Vr zxmuO^b_IWrIBORPB#hk%j$XTu)yu72tKZNx<}}mp4~J>^gR~Q=vKoR3 zdSYh;_dfj#K$${Yh`kD99~)h4EUOq{6;)y-1e!279Yx7+SOi|nGi?(H1=YKl%2taOW5i1S($0s*(&PW0=`3P!V(f_vQBeE~n0kKici;C2O)>ZdTZ=n`XrR}n zQI1saq~7?+q(rakN}*Tw+iNZw*T)f&3qbo<_tAfy)MbBdymX=YU@}fy?y5JeMyvLd-)-A7S&24T!P@JvlDUWhvmfEZiElH)(I!mo&|eK8@0?MxJsLXsdiaS zVE#%bsl0))eE(@FH?co&h&%VWsD#lmDv!A_VV0j$LD&Pih(y?{dJ=l82yx#U$XL3^ zq;~nJKZs$+Wt)LfC?WWhVanS~GX&wYjLmVi1#DO46KQ*Mly|X&$dVh(=J8;S9{Rh2 zdyau8kfHqgzWfaSgasbcd=F+0e*+9ihT6B*N941JyE~9dqZ92i317Dvt;Q~#68d`0 zmdp}~W^;`8p@sVoPorxOwa|i@ucxF)A&m2!MXo6wckfkjboR2I@UFxk}t#Z%Xtx zG80BI zGaep{vcOOjN~KQIUx$3dOMa=IcLt`qWxL4(NfAjFlBgg(r`T*)M>zri&vaUx3H~ap z;XKXsJUkc2*b3)j0vvgdN7b*gPfdb3ku_6?eiSBqOr>^l@CF z<%cWi*RqM!piGB(9amQ>Dhx6XtGkmW-AM4JklIdk$3)^Rv6!fMnN`#z?_BromE*K4NG}%&QvI95|k6$N6MW2MR&z!`I~%s9nH5{H1H{ zyb(8Q+pOItK$*y^ma85@opI;-DnVG#p|HVl#p>!Swrw^!ZKvEF24* zR8N3U>LW%26Tc(E`ZeOGe4nyG$9RG6gI6`GI(8%SonA>KiI&5Z873aaVo4D(>01g9 zg$6UDPKF(0IUCftwn1S52qDd71yjATFe6rZ`s*vdyhKuU#OkIIj;pC=lhFbLgY>K| zCc>>ElvQk{l1UGxX~yzzdra-GZtx;$)*UkZSTSO%+0WIxgF1d4V{ug01(MH0*wXoC z{U0VFtJvM)y*M?_j_jhHqs1|=nmLQvt3*`c!TmI$orw+u)8hJ;_`6CjMSE|bjA49) zatZ__vfq3(Q{o>3uCDr)u2585acO}r8rOnTmc|%x4fMrQ1uG~k@UedEKI9{ew!^H< zLXFs4CK%UM(){-UEd}f5@S1#rJg3I}R;qj-_1QwDT;OW)E_RieMexuA;3~mt zU&oDMWl2q}hJ`6uHmAj+srij+s8L}$Uk}^3j`n;?G4rDbPYPa#j1PA$>5sA$r9qa} z@D#OVM=A4+`Zm_F)^x2utsSJ4yC;O?RZwKM&pMJ12pZ#7t|Se#AJ^n#Q`B=_=h(K@ ze2&E#0g3J%F@JtSzDW++*e=BcGP2xzAvktyJ_t&8a18g2*uOTX|B9?pLGF&?0q)}{ z#ht*?NqUHU*T4Yvz@Xb!7Ve$GXQ4mF>5RxfCT_=Ykd3JBLi1 zii08&Cb}=9d(_?06`~c|*z3ua>TA}&En7|tYeX6@BhAwwFf!+eTZu)BPFaQzhA zjp%Y{8r%5jQFkbdg>;)5LCd6$#5_z}?W}#npe!H$2#&pft3E^Z7tncXX)Kc(ET-ul z6NO6{ohSbW%z=w=`9@*Sr3Xm&TSfih7CCODsRqO3YfV0NPHF;I#ejnfLt4p~m@`d| zaF@8cj1F=wU=MVS`wzkt4}BzsMLVua6AdG;_q(`lqR>4}&P+t-VJ(QrU}78rFtr=` zUEenVV^2@zdy37e-*Z-GGU=$uZ?yNjnp8XvG@uA*&zz|pt6G6PBn+hP>A)J0C^1Zazv4lr)TZ!t@jOu7Eu4 z6F0}`72nMcnMd7AN8IMs+o0-)^&%6Tb8WA{Di&O$YxXVQgcOab0%NY$i_ikzRU;+n zi>9dn;x&fNr^f?S^I2D?U*CR(A%ANx1b`5X&-V&K2#zryGOL?k*Ho^YW8F`K?&j!Z zqvjRjx%HX?EYw7A27uoCptV*wGZFhttK&=3#>k3)5|?XXT@ZCbqWHAf)1ZTLHG` zfeg);D%E9o$4I!s`8vkRw%FN9k(Ov?;;+VU;daS{kb`(`;*0=>@=yus&^67WyJHNs z&x2gW{5lsJw&QdGTs@?OW#drUyzfZ#wJ`A{Ou~;msjb_Q*Vd1Kz=qhz8q~>MRXA$aY^HYt097^!rKu8znL!?#%6Q@YWyq7 zp)q5kHHBkcK=8X6GSk9&!!4UvWmG5*BuQkti1mw9L7%O1t%;FSKYPYrBP(id&{({) zJ;rihLX8UY?`L$vr`?~UAc(u-(*Ga8IP}KLcNQ<9XLSwu7qV$BdPQQ1%8?sv>f?zx+zPi92hfxTJ5wtN7YN_-S za{~jt5JKAPtS1Dbby(dzTsznuUPGvl<0yI<=O(JS}*KYPy>L^pj>wq8=if7Vn!KH*HT9a>jOpM{)>J{5w}!Tam2>dPBYR zb@K;3VwcDTiGH6uku-D}d8D2=de|;kT!r?~hG0pBG-i#;ZKsg&B+Ia@{snmGgR~z0 zm=n?4+XKsv@kdw|!j~i-C@CxWVpz>H%*pgJ6jTqu`KFW=U0%pU8a;W_b>(}%3>I%n z6+R`#Z)eP2l6;9Y%s%8AZlpZZ!2^CG$nl80e3jW5{2WkGo(x{F^ZFm+z7$*#tF$xx8qd5FP_x4l8$R~eHLB8lhrrn5o&*UMI zrw&Bws^Fp5?`*S^3#w$L?=mA?ViWlj2QX%V{2J3?Z=5RkV%Fufgmy8TfkDw}(Yjn% zWQ8&c-s?SQb+3nx9qjlh+dBK;^)OwhQc5>NrLHP-vaw@sff~NQ08PEy;sjf9Eattq zaC7f`gUpRy?LRUG48N@F%%)^yaxW zOpBY%jx9#LWPaK)E9s#N* zxzq1u&TM%oAsemA!qgg-pd1?tsljPZHC*486T`~2&)!#i2P|$D){hK9FqdNUD(kH` zr-*FURez>avcZ-(jT3>rHv@t*Cg|T`Ch4W_6W;5_%k6f z7+;h>EwAGD4b;pKQkXp)nFJlkzn%Pyv!#jXE}usSL}fgK*-;SDJT}A{4nGEedH~eO z%f}tK?fo>!?tJF60}{78n1IUI5`uG+1hx$g%vLkV^z!BmLYd`EMKZVdqk7M%>m5Qp zbx?zot-B1S&Z*wYi8E7WnFmyhr*0(m2^0LjB3_JMh@IvxO4kaz0gYnd6;V;i_fUP% zex-KaLpyizrVd)gYW2=FSvYR%OSp^5`e4=`8>Zb|xROX-$NA=SP%LLd2uSVZ~&~{o|M;iglh$I<6y0vRJEX7qx@}>AB zadMd=zPEj>Xr$6nW%S%yWvVqTs}|>&7nK2hrnaIi!d=Fh2*zXc)QvEl{-NK-jeT;s z#;)Thf0>|&9J{ixwQ=4}4Qpjg_;xk0{N+nEt_Q?Te(;=PuGB6pxK&@@xdVHOd>saq z<=W(y@4hmSJ-FU#pg}=1;9Ae(C!l~z)6v~Ijp3`0MyNUeQqT?o?fnG=!^m`c zfbII!tIJf}_BYaQ`-Z=`#)RlrItY*$Q}^JW zY8;-7nwLCsYT9Au)mcG4v_U&6O^N1$xFhVqgEHv`<(iiSJglmtIZL4ZHuQn|IVn}p zTH|(!n*{+}^Ft#JYu+(f?xbSQ;{KW>_ryl;cl$|YGSC1uQ~y4niD8$CAfpwYMTg5= ziv*k0FlhMYhN?ID4J$ek{-{Ap zbXB}Am2Wz-%>r{h9ClOqR&WE$zFXPm+%X|)LJG+&GiFu|%@w_~O`72|Y|u+CR|VBE zzPV{IxnT0S{azF;K5fb=;-T|@ zHll&3@b>`COzvXsi_R>A7OoGYjLCEBk?Gicw2 zK8@vc!U{!|Yvauf4%`Ik2AL__8(Z_q?@Wz{+xugWjzoTpG8tS6Ohk5H{|+rZooYQb zHONRvl#Eh$#mqWnB#^9GH)6>Ju_@h@ViuBz@20Cn^qMPbPmvX&h?*~mwdp4-j2_Ks z^%ehF^48#eTJfuStyjHA>oQ`B5I3IZd!$u260B-@_3^Qt5*?kSjOo^|ORMOVR2Yey z^a3_YB4`LJtgSDp8eaWVuy8-Y^bD(E++4Nf1B#d0bHzSs=upzMDCWfX6Qv9FT`C}H zw16wLe-=;oqYt{q9~1lN3iLCyhT+%>=UJ$gz<)BBtnRC&u}sF0>g?1+a4S`pIhi{} z&eF7u?Utz+j)ge>N>LZ@zEmp^m4VkCY#wy9-v)%J+c{{5&8}LZ3veauGF` z$mjJ@Tk;-ubHu@*dI&^Si4heN0ZNh6aYj z#Isq8hN8*9=fcsRWZ)Tms#g?%R`uY|>8Proa3d$fn3zHy@~VFPERY?{9^!5J7f=DO zN_M+?2B>*T_>YUDIIS?Ekr0g^r`3dz7|8wl3ouk9USCfO>8Lx_4nVk2Pwe8Q{K3a= zL$7QMRMt|taXLD&jJReAhkua!Qo;5d!w%=Oj54iTMNkDTvxjemyI>zWBWST8i-u8epK z4EZoqG+VWBz!gJ6SSCc&>M<;A7h0;-6!i%s0i5LHYN zTCm@kiiHRoNox4*T2+%RQ_~3(XOcVcutZ1iaIZ)#WEOBG*B#!3@KQ=`HHpWNGm~T- z>}y)^8Rv|3<|lUj1y}?@ zel8yna9-Sddr>pKzoHB_dE#KPQ%%u`t!fk!s+ZVGEt64*g8T)z$8DgRciq6qrDca{ ze1teN6;m9S@vTg1HzvzRNpU5U(t#_VNF{b5BmUJv(V^GBbG;C7m%M|_*&RV@!ICKE zZ*y$;-NQePX^hz#2HTCQX;0d77Qb^G?M+T447_M04;qjc=2DeO(Jhrr2axEGOq5Q3xgjD04||6oH9V^9*7| zwV%xPkU00NYp_+jt*rOsyiI!H#WGn(4kM`EMuWjZk7QLJGHhn}D6T}cL0igI%q(oR zrQVd8WGu}Yj$G~W3#7xN*rGoTjHADUvJiLTPP5#QM62gkw*QzD9Ie8qZ`9}#Lvp9v zC;2AS*?Xm`gM2Y+L1LBra&fV!vO|s;P9QCFuXk6K6KqI7rINff+Goz2g`}}C}DESPr z-P_f=aN+zbXL7k8PB5e|#OzF!QoH7ZFQUAV+_)!bBkf@Hqe0h`q91F3|f-`gsB#vvA4r`F9KiZ_bAMHo52@jXhO436(?b;$>{`7jqCj}Pg%tsUXRS$rS|T{ zN{%rp65F0KWMcvTVuzK@XLuD8b>=&@!H2W=tEisAU)1z7hIhawwcEvs?o1%%eFt+M ze4yS{$+wOJJb} zi96`5VER$ln9KZn@^|JuOq}zEyf%h=MDtlf6$e2ly$E1TaA?#|O|!ipi%Ep29nM}Y zvcp3JRZv!+w8-a)4U9`(e;X=xvgpKIyau!Nv|W-I(>6^K;uhx*t(BZ)a|LXPXtg+3-im4)7r#uZ=~eGr+~Dq8kdkx;;FqKIu! zXeNEVrVwK&YMe@VW!2r?-D*g~FCHtY$F55RVeT3Bb)Ui%-nG{V0>nlsW7-=jzbsR+ z;sQflLM~5%KUM=dF@G&i&+eN|{M1m|jfbb35qjn{V%|m`cr(#gv6!^?2gp1DnPoDEV$6j zVyE*?kspp2U{jM9VrrIdDFq&VOFW~GjJe|sPaH~;=dfkC!9!SESS#hyQ{(%mbs5#|*~d7Z8Wp?KgTKzM>x>XP(x{H@RJy4R!}6Zb362#~XFI|#s2eTzRH`V(cnIUh6WAepZN)T%*dAx=?zQ%D zB1hP#tycSIYC&>}*i4hRQ3A0RUSuee(2YqeLJZ(*l^)?W9T`6zLhVIAcXeN5a_0Is zX2Wvgd&&&ml4W6FpAS>^s>s@ieWe{T)hirJKGvEIYf-FvDm@U%3=koE37pKP@u&&* z5MzIg=@J}#wYRF_%D%$9SduIL+ecjj`ay<0UuV?8_9DYM&f|kA>RBYU4iz2wD>1)z zwm=T1+Lk$uW+~Zvw(9N|fxgGLz|8iMDcnYu8pA zL>R^%&Tpd`14cY9c(FKT_uy_cpAyZ*GP{zL{JZmKgJ0DYx4Ex*<#lB84`uksLRJ>} zEwki6J*K(Ed`SXM`A<)coYdJZ*hcYGV{|5l7Q#$0i2x>lC6@g*bM{Hs?z0q8_5+(5R;V`FU1!6-FLW!JGxuUv^ z$I`%LgkykIRi61st&!sv|1|&boopb85XmK>Ul{hr)(fhd5WWs$-)z2laCgrvw~~a9 z_oCL$H2I^lpunZlt=eGcMQY=WLjmE3&){6Gg!S$m0&ZBo6Lv2;hAG!ly!QqQC{Az) zLx|0!mD8RpgcPx*hQGBK)sdZs1E{bJaah@0HBuIRvnYsRAkQ%&N?0zSu4!?pPIc5n zMS`jCFg-G)%AWgl6mr+5^MGBlu3!T4*mlvdK9yH5hDL5*4ffBN&W*6 ztBo7jWSd}MwqL5U$9<41(b@dX1fNmGFS9-DC@4{W8(PEyL}aR14iE(C@mpH7j<#sD zV<8)eKm}0+p?rKAPmoSuB5Klu--X6e2Du|#B^I4nLu{jnKYR1p`0AS{UGd>ZDz`t* zPRx7XTl))R!f98>+WbE8Qo4Wrx}PG|l%rQ*6fr~X^>rU$6V$H9HNZXQ$V= zyU2)PZ#F8vtn%%v(>{2DwmYLfV=#=5R=2YCd;*XZe{AoXu5=MnuQ1QW=xm~&fG)}L z??-w!3A;pY>0C=F#34<>)9`lR1FjEW9cbc~I^Y@V57$E%oNYf@qcd`N&+Qlt$G_Z5 z8|WP;&qkvsrz`9IHG87yl_buCCUPv~bJD!Blz1Y?07N~f?9zJtN862?#~lK z>c|>duHG0a9mi*8c2J?zYn7mL1b@tdEiRt?(tatR5Lya{(z*4R_rI_Qz_wBdgULN>&2<6*Y| zRfx`{KbJ_vI+UoKk?o3xG4gwNAVCAI*Q49KcSo(+TR+v9+v{mK8HZ+r))*{p$nr~i% z3X`>-dZ^#T70TxF4#AFdiv}A7&PLjNVw+JYZ5ibUBoV%qO9}cXMt1y^Nm%R}d2g8= z&_3_-kF~TlbbnU&Ue@>8k}T`4f^qs~FBr~ohWO6yk)@QW#VRoYSL4|`1?!a^#u{mL zU^#j)6aHTUDEHp(?0!&V!g-vAx`xI;{;r2eALE2wJ=bs50a)!VQgNANB*_E9Qn}p7 zS(ZOjsaKnWtDH1nWo--nX+Y(Qcg*(kaH&6mO=dH9)-;b)2u-Q$-aLVAH`;LG=`*&C z_xT-`R9GF9>V$2uY5oH6PK}FjyZ>w`NOCV$Pb!g8vL&<%ven*l5=u}8)Tql>Rzk-$ z{}8EoRI1HM{0d)e)y9J?q>OJKHEUSCJXF$z%d3;<)<=SKifOMrFKT`YSl-s!o`1G>O%NqKlR}WbV@2|L; z_|bna28pv}_oc;?rmCWfGf)la{}fV3h14EVpsbq-( zAJAbst5$v@?Qcg*RZz&SOk2Ej~Io$U!#=}xFTYlxT3e3YI zvo$h{pPG~BKPcdzvoP=9`>vfGzl|;=TuXBELj?LYo?G!}D?!sM zSd7}oxcq%5W+THPlsbdw ze@W&gDJSkt5L#+^TiR8<^Kk#hc3;ie9OOX56fO6jzp3#y_tvF4@5-jU@b;ohVDm8Q zG1L-Zw(D}|TM-}*i4{dbL!PST4^-c1AwJ?@8RhT*b29}SRAmk_44PB-h#$qtNQCl? z$86_T^8ctr{X^YH^#K5`bZ1`?nle&+?~!iRsmHfOS=97iJ;_-hkSknCos)iD_Jase zgu#wqv{CBSEP4Q9-B0eN37*lT`P43N9DdhI1Ms|2yHA(=Y-VSop-~AyYk8;9cCaA< z`(us64td8ps0hG9Hww~d%rKJWibu9QmICXT@K6Wh zd~3s}CwXm!s;}B!6`Ibq+mQyT!#n%UU``7Ec3bl#@$?QCy|Q<^o73a&Vc{uzn?%}Q zi+BV60=@~wo#K9gCt8=PO(cAEVDjRrYR@U;94xw3qHO!2DN5E3Ylj>-6?o-928B0y z-W(&eM=U!RiYA%ww~^dsbt#yzQT&|LDk24W@MQ`fRzZmK9_%!+z;T^Dl%ew1Of-zh z@Qz8~x+T9WEA&e$+L9=5UWG03IyoK@v%{FhN^a53{{dG(sK4BWb|O-7(*D)x0~OV|C#+rsJD|AZY9vd?enq+>3J1R4-;Yzj$Cv_{{{V1R5XoF_Tyty5 zxC@FZCZVw)2<`G!MgG!7-`{?Kw=dGWRH-#HBAZUtHAdmL-dRwZj?zglOUi34Hdi`ySQr=$<1lA(`J_}D;(pTF?x03jJCs-R* zR*6zz61x$%L}UYE1U&fi+9LH^9vneJo#pEmrOeM|V2tC>USt$)GihmmjzO>*Yc3=b z;+L?nEo|ETPSj< z*xZUhD2ZEfG?^(-pxH~8B2;$OOqu#zhCv0C2buu?07mAE;2p8x>`2I^Vp+C-o#wGD zZc@lEsOj|vrwaOg75wWN%sIVm9FD%0L&&Zq!-Ht-rit$X2>~k8Z6DLUU(|^Y>jedc z9v`VRnst=w71ed*srEEeD=|Azx@QNxDJ0{VR!eJH9!oLDcNR<-$pA&>ye0+?yGdi` zG|;fjP$t`IRy!u$qs!{Nc-xt#hS5>k(%kA8(K_-*Yc8?I?I47wT_%ynC|)uHIUK|b zN9>ypYaqqe7~o9ec=j28jbk{o)|L_^%#TMY`OeSBGCMMsL^okkT^1Sxs3@;8Yr|ki zdZW`ylXhICK*e5WtCeN3G|C+Hv7e)PRjhqPopHh^?mTYW>In{7NrvG!C7SrIw(PjB z@>fPbHpt6vGXeb~kNBpEq*6USST6eB63|4i0Rhm>>*X8ls zlWUCRc!ZlOsS;UN0gSo$609GlbvO~qjuPU=J!ooNn&cyn7~;51 z^2^|$lI3?&u$?5%CD&q9^qBSK#&uf;`Rl=UhLM;i<;05Iemn9Vb=QWV;n#pRjk_{= z10X;=hpwyHkr#3kMlVpfnM6bOI?u7q|?0-dg-R`sGP|22p2C7ITa?`Q>IgL z{QC*=#9=^+)aRLbqwugzIMb!Km_UGSB}lWzu$?583ifR^T^$CY-Rnj6FJCd-V(LBJ z6-`@MPLeWlgdMhtjzEP0spv!Jv$%FxI&8Q^Kw>d0Quh+4n*#>H>!500dlwJWn~Bk? z5asD*F0?G$4@8zP3M-kgRFrU+V9M}-%*USoKMNz!3q(rXDvKz$#WL(@e{pFRV)Z5> z)OCpKH)^tO5)^orDn6P9GZEM0&pA@PL-S;CX~#vDd|d$<9V@5K@%-BIB}OfYVps-s z;DJ))nQk7UHwFSglU0w~!iL=Y%LSB-`5qteje$KR{XZb)0{Q;{EgsG?D*DPv_ZCbx z+lE(i;LN|YcB+{TmzApcreO}W7Bj;RH#Jl8HR@e&%mN@Wdb!y4bE5c`GnQwIWX?Tv z3WCOlBsPMqviW(1TNib8)NKGbuVT_xsPed@QML~*$?tfN6T$>MdhK_@tqZG3tIXU@PoOvB-0QSv=M zsLFF^?n&to?S>o42%LaTJ7T~#rVXQDTpK{-WS`zhqP;}UEV1ic2j27hUC1NDqt!~h zX7px4BWs*4j{IQ^LCOzNnV(X%a^fxen;)MQVmKm{MGNMD^0z_o7?!>eci(mU^~}^;2A1M)U>uA$QY1%VuN&JDc#+fOsz`{@aurTUq^YqlzR10E+G2O# zgaug|%PJ&7XeGL+4JwMEp%^a{R8kqn?to9iAFNirRf@;1t&9Fag(z{>mXSb?chJzNQs?M&l z7_VfRRnw_2Dw{HN0XO1Avwa-&6{w_JD_jLceT$Oy(-hHS?%m*P*{hwe=32qr4c=38 zl$EBKSjhh?7XynzhD~8hg#w2(R zl4UhYkuOnV_F3V`2us@N$` z+}133ajR!z7SdBCb58Tc+?M&e+mdo#H-6tYAV?OV*a_|8*V==8{)j6HtVdm8E#Ptt1krLk+i;AfakS1iYD^fv&rr>Vd zEh~JAK_6EHm#}=}D%BlT$fa1hVJtNYzOt&mG-;2uHI&Jup*m7ub{aK4zBICrTGKBh zt}slWx;Ehuxy8IB77?Gq$);u+TVD;ylu>KqF=pz(zj*F3b{o}K>NO7D#-tfo?Mre% z!G_DqE*r5N-339C+nE|$vy`&Rvt?iyG4#joZsXP!JnWka#aNY$#2HiM&8(G|6jr9> zFI&MDK&HIJH=IEQRQ?JRc!dkZi!+CAysvH_we#ozx^_u_PjcN;k|^QBovBt@bx^Iw zhbGQu4z?B1D(+UYD{3PdW31v44oMw2seGC)q2<;o#_D_gId_38Vhz-JB}pRg6g#Zz zIjN6b6Dx8IiOgHE3Jr9NNEWV%I@KePU^zWR(215C4giFmQlv~iF4EB6k0=uyn(}-+ z_T(hqS7ec*F^wJY8BfRa#TJ-25=oWtm0EWBA2%jGl^cH&`7R|J zCBs_0cTZB$V!0OgP^^YPvf?VIqn^ME#?)xyodB2j2Lmmet=P4mqt?uWf#Ot2jOo8` zlk#?|=V6#qLabKujJk^)jSR1EWLGs7NHHCzq}aSE&%+U+bikSATCt>`h=XNMZ&z7WG(lDP)iY$d^_OEIDkI3xkcZ?zF?LsW5W9GXZ;4#L zCsuQti_C8V#-l-(XL9B*l3Lqh*&)?NiwJ@2j!Hc9kp2xEcsEVBBm4k;0cfA69)!?o z9*{jFFu?3`+{gE!Ma`;fDu()P8!_O;u&dJObHN<&WcGHB*S7o$^(j)Ek1XW6%ou!x z3ysOUQPhs%bAH|Ne8UonjYY1DI`-ncYo^#P2US5Q)8Tk_2Pv2yKz)gpPCY!qBD3lt zoBni-3>Df=d9N&d-|!1uf3wcewEGOkFszdV(~QpKYMqg3e=8cLonV$kYb7K*CFE_n zbKJ4=JoCf^a$RkmJtb?jpGRB@_c#06UDO}FQT4jam@#hdAXBe3~A z0;J1a3FB~+VL<98B6;`&^C-jNe=Hm<6onFE<0cLB0a zU}_w9aCQFkH7? z$ya6gf}wK!kh%=80KYoI>Ve0sXhz8y`&kphAEmD1=1*iJ}x`x%QJ z)M{m@NCI)DL>rOJMcD5Na{@#}MWc`?!@8Xt#_QX{b6r@T`a+?e?e0mF47qjJ*K}8N zSz<%bJurHu$eWt;Z#pW=sRe8$wIQPic=c9~U*R;_5CZLX zL8SQIG*`2n!ooD0n)Z^z3B9e3wO5j3&U7j-@Q5$CPEyToB&UtyjMGTucK&g<9xF$} zH@}zx+q8tX(rE7NLgu#`ypL&3lT<}&Oq^YYnzgpAhih3FnriDDjOhwTRaZlK9NRDy zR?|9-Fx1s~EtnOz-UPNR-g6-Rr2?^vIk(v@OBa&o)>hVK6}bF+3M&cg>vS-zjilKo@Z49dSu}owKnVRuGEG9$9X87#MEz^ z$t8J+ac0Q0F9?^FrH{wPLYwqk%tiTvqC0cP0v@pG)>D(kv9YSfEo0@00v0_WGIhbi zY8QY8VZwA2ifAk*vv2hv;vFUF~B zBG@czoBK-mH@d5lW6&bAPZAw$k|f8Qp0V7QXfa!QQz+pw^pbbtKmhc6Ni=s;ajQ*P z*F9F$Jv+;1+y*-^Fl;9O&%F1HcL5$RJLRj>nB6xhkkpcy& zy@u&#Q>S>we%2JO8u6|>5@al2K9f;j)PYV(bBw-z!SB6Zm zHy-97Q+IHBTZ>gyjzLA*&S9q)R3yno{{Wd6uGUM+-v`~2b~QM%J>hMMfD)!ndPL7c z$g;~`7oOqB0Z(lDdvlRnHLKIFt+d&2y2~8L5w?*vZCkAwR!3A1L8)zdGmk{8t#OB? zv<7ZSoZmC%APNTBKd1JUOTw@X9mSoIS(!OP{%Nh1I*~``JUWT&#z0okNU+H!IM>wj zW1|syV7SwB8*QLxwXMW?7%ihMad?)-8Wn8Rw+t(6umfOx}h?>ycp< zn~l2tPD1{jR!IVW9UV3yPT<3%vyTb5uRlIh#*xlO+_nw{JXtrZ;r{?2A>ul z6Ox^o2Oy-pjO=2umrCQ({agl##2D5t$Bw}x#tx{8HhXh1;MT^8$h?u_!)!se+jv)ZghT*ENOx2plK%jA zUC|K{Xygxhmq#i1@oJ`ed9Nr7Y?-&PAh;?CARPg1#a2C+Wi|Qn{JM|{HA2@AirbJb z1{zy9^2?-kBtK54WWkZM6`7UnDKjI=t|ByuuDB(z^5&qRYpJeQmG+qqb&1QvV_reX zqF*}>!uiXGpQqH%FRi1gs&ajzg=__3rg@WV-K^hHv+JBtIohlV=pd4v0WRDg5s;O9RlVlPiT}zc< zY%*qCPpyEuw?(Mhad%+>tgrViWzCCo9%lZnmMyEQ>>3HvYVjLv(U~)CDqVYnzL~de zAviCX3oV!d^^MtTaWt~e`TD;X{W zH5t0)kzY6@26sJ_25t$kI?VvsCJ-PL0!Cj-xk9W|ZtIqbacl7$vt7-4QH!;ZE zu#y%v5Z%dW=F(W!POF~Xd~`I6QcTjrf+a8nWH9VsQYc7-OEl(LGG>e4$_`J`vpIbA zzfs_xVUK10zV2+Bs96wt`}vjBkydOt>Zkc$hwnmk+G&R-hQJam*cXsv24{rp>RX;ARbvvBI6R+#W}z2 z0bj^0?<@5G04vC9>g($#Aie)gj1T1T%k2(|NUCOIzBR`K!ZV;(JgZo+8|l#w6= z{{X}(4^*g*&ysFd`+-vq>N^fZe)XO?4p2$mB+uAz89E z23+PL`iAytY0%kZ1QB}PFKE9oSs-PTu?!MKm=>0Hhg*&17WqTarnM%O%%X^38&RP_ zVU=z(E>blk#U$I^=S4}a#6X9h6ZDpKi?@g>*G4saES0J`eoJddr|h0!p(TZ(WtcXY z<;HOOvyEa-E8Lx8lFlMXNpYP~Uo1aX992htkOlt$QOwTqbp9mV+fn1)(Nkn_r(I$K zZNZIibuOj26mc>7+m^;ftoA5jL6UB(NYlY7*Hn;P_W>=?JpL60KA%I(vV5xMaztwC zHFb5Po^!vH484Hi**;RwC#vgWRlQ{}YwFcdBbS0oHRjnszHCZE6Kx{O#?vv$-1r4|=YTFNCc z4^FCbsS+VgJvwJ5jQHm{HX71fur)EGN{m&FS-%WgaM5o7#_(O}DdWHLM>lD!`O?c*neB1~-~Llp?5dwhUg``Dn! zFC^o-RioGzNsP2JtRm`MOv*gnMLWxC`xXJX!-3t+u#AvoM<&~n`-ID_y4Y~w+A5G0 z84bL*OSS&Kw%T2MTB=;q1%2*149vzZZE6{Y%=TZsqqd`u1*~=iW~Vr@E8dXPhTo`s z2W`v^hBQA`tTKznu)KO>xkEaZ{a!(j)M9Yn#%c3yI-`DUrfhsOY1TwsO)_aP$NVH{ zr+VvP^V1xRo)XTYyT&l^s=&G3IH<_khmA+D)omcg^9*u4YX)m$Su<%tj@QX226Wi9 zG}7G{F5Q&8Jzc1j#g`+-&d59x%ap?9X5WtpCsmSh{N^5NEIvnDRcmii04yNb$BmQS z2y(o6+;z7_+@;gDlAw}g6VMq#4h)f^0N4oqT?VH>%VgDG=C&4f(H@xXL`Gx!nyhvi z7`G}FTu_RSRk0p03u@xFjktW=G1z__?MdaDBBhci{=jp_b9j`lojy4?8@jQvHyyRH zCt^fwVm3=1xmNGLB}n9xz(~(CY+T#ft^z%04v4FRWX<_;Cev%%aq`561?h4@K@HH| z1b7ENAf%h}5!>(mH~#?FuEGbOx7{^wEw_UnN!V4svRP(1!ieL^CQ|%Z7ZjIh+p3Bw z2_ljYvT`Bo8nq!}Rw5fO$`7J9=tbJ>y+6~H)Z11LR5`JV4P1hdGZSR^%yLjHVR@$) z<+2ePFUR|L>pCklGR?_&=r@gnIxR@@!c+^ zw#AsQYPs86T4^oYWf@hwkAl2aZP(bw2jlv8IK2XUDCjUEE+GPna?PG*qSMJ&cX!tL z_JIY|%FSvFuDX)@62UVn=n>#1H<06wSQU*K3A7aplioLY5ONe?)yaL-j7$AkH+ku zzqP-x#xralMP5B!St~1PoNl_(zHDDgaVCaEe|pQ3Dipzk5S0|wrw4FsNJva{S!=Vd zFAEs)`rl+;FTQaqZ}lC-t`A9XvmHO5PX>lwc>=P!;L;>fzpMIl66>U4(kzIl)eL); zlF-WXq-1QKZ1{-^b)^_wW#gMk1{d^@sSJlX%XN~%Ei5+qIYX0VHMT4=6Yrtp66?ak z%B}*7t+KN0V#a;en>Hso6^DG>)XjATuThKyHL6uDwnht%YTb#Qy-KR#QihEd|WXoNgJcvt)tBobfa) zm=^K?&vX}bdWE8RzM<0MxBmc8JhG~?<1Vm~FDO_NaoQO;!%SC%w!J<|4oYTYp(-km zfwzH)WQxicKnc4V)(dK^+e>TaV4;}QQ9Q~e9yN+befrqd_R@ycT8RcUiFWhdjQ5e} zFIE?$=lOL-*Vk@#C z-ai&Zc4jvv8&zTN8%kef2;Vl2XGYf&rtSu|EsiZG9KDS6NiAYoUO^r0FVk4nwA60Z z;}a|#Vzv2~mFnxWrUP~+(G-RmM;hC5>MtIj9De@*K`^s3XyTCZqgciK496N8d2T0=pK-F1jJ$va7*Bq&n)K&~eaVGs zi^ngX_pAEHE@uA#ZI*TOH;NT8qs;j7e4diid{M{V-~-mNc#BNsi3M@$9RA*9v4H&}RW7b^jB;*r#r9b< z1(9=-Tt<^(+zQA{$h5B^ziKmcPD4*bH*BJ|$*hz(=!7x{(?&2YQNeWLk0H|9jc%cz zskSXbz3xjL${}TWc3+Cnu_PL^$*dnKVpQKrd{PBW84)4_b_K#X_=S1_nbU6W`(^F_ z08MVO_!3&i;aptCZ&R*cV!Ewtr7*52$+*ic>f}vpDvv!$Tdu2NBSZ%af~$%IRl*Tj zVX}ZV_?L3pQ6~|?Wn;JoqS7^R^?Mbw@)?;Onpopby5rDi(6=H}bEU|A<90x(wDJMS z1CbmIgcCTbi5yp1iSvB-Kv>ob`kD2R$=bZuzC2iME!~~#;#QXR(OxIpi7qS|Z#i=r z#~lO)xC0(dfXp}$^s9P_dT~5Io7Mzt57g~GtFC$_W**!ZUVBkR;*{~(Wy>}q%CdOm#IJ3KBs6XXh_dP-?$Q^>WFq^C zZ`N~r@8=-;hIXxw#lri1!D`|+T+8m!$1V^UcA0}!U=^pqxogbDK?M;{lDNMm<;$+B zF)>YU0wA|CZJIFkut|S_IP7VA3v1(X948h_d=NzeII0ijxBmcswF3VDuR4%;V{OA? zV1dn!ZP(6;3G9vNw)}+-zRHlLM=J;g5XgsulY)p_I-|cpRu*NRYFg?9D)~5-yvh+c z591cMaGTSpjx5-@EL> zS8cIra@qNYon@HyJ0B=!)G^xW%}zLs!QMWcIdu^h}5$Z6R$;=c_zNXEr-=0 zxQ!Ddv40x3$#`*2q2^*H+%x6)`9X{AgE#NHxeDm{<`SB*TZ*$`7T@l5#cw$0mlCT7STkT_9fxOdijg3ucV(sy0_XDHUsSndhNcj-K{E7pJR_c+45A5 zE>P3HcOLra7g3vkrQ155+ttvkquG@r>3FwnlftZ=JJvjBk#W>oY2Tyu`SwYOVsUjh zFU7H{+YGh*8}}?|u03}R*4G}3Sv}X2E4MXCO6%amQ32*n5X?zB@Eu?Ek z9T{b}QNZykxXVp*+#4n3*Ryr~XHn>`-_&$trnJ{*Z7m$4Os5iY#!2tZ{H)5iWo&MK zE{|7rw&uzH+vw#_?F|K*Rn~7F>dSHE>f*C_;R~9dBTqHU0*4jXG8hlbKcGjgue*a| zO7w?YH{n!Q)lU>rlW8Fyd9?r*i5(tKI`9aWw017t*_&2^)zIpbQB9)pgDZJ^+rMWP z-m}d0-oIt*wrx(wS*MyceP0dSEU?~{o*7YK?e?CdM>SI|fRz`P*vy!6(*&l0a?M?} zW!)5pp}CG`H4;53-COylw(MbX#*~?cs6JpGyz;a(BP&BIMb8{Hn!l`h4rf`L)Z8VG zeTO%r;?pnSG8KwUb5e4vpoSC>>YNWzF2$4=3?G6oBMB7bx{Jj_t6C#;asmlAU8}G> zYL1T~%q^)k6C1AzRjaD0d+XM>#X97ytd>m2LC0)gio-EoLTDIRam@UtXTLyIv^>_* zHQWHXfp<|yZF6ONNYsImT`KX(^Uz^fm!(2D^-N}75qtQZL;Ha<%kw*# z8f^3`ERy1r0jErZ7;go=vkMv6TXU>jWyGk*A=bF{OLo%4l2ftJB{GevI&F)@A_iBo z>Rg)_&#v>ks@HUu&o!u%Q3T?-I*wdg>YE0V$!pv+azl5L-EJc-xSU&Mw;fVYK1I`X zLrn0(lMypEf%VqT`tcYxj6#c6^@K<;o2#tCbwa{D-a(1OtTvWDMn_WW#mFzDTY9Gv zqBC*k{3>a{IQ8N7j@O}~qSacYD=c!|f3pIRwmQa_oo1gym2G7jSML zl|I?h8?o$iek@w~uL@;5v#7&uofT@yQ%@Rb?P+!_%I{q&cNca! zI(H#f-F*0`uoY1QH95A9f>sSs$G=`Hn9?|HSxjIILpUsATY%p%F5isV$Tz5H2sP6g)iKA{z zsI1Q09ZB8u&(ril(!8>-ysjTg@2dObUdg8Lh=sJ^!EsS$FQoC1dMJg(r0SU6n=U19pTG{Qna)RKbv6;Q4LrUnb`v95 zWsqsDsBAIW0K%g*abes_kdoN}PZy|aL#!K)e9#qrv!2moiIrpL5Dc=JaPVes?xYQz zhu@0x^XwweCl$%16w)KiR*9Ry3cekpC@P4F5Eoc)Oq(t*3wZj#)8ib)8g5v$tg_;( zsq;YOMot#r1y%Wx5A@sr0B-$P%DnLz!CP`ai%2MKKo4seViE56_Zy1efJnmI!N1w(3b1TK0JMgsRB){)^0a5 zB9l{xIg!3~GOSh;m9d(P^a#j}I4!YbyI|`sI*u@{xH1V{B4kuKbrUv;pFk_8E}ewG z5`8NUTjEW-PdY%?eRM|C7$X)u69XT&^Zib#W;rNalLc6Hwu|JVL?T?w+)Its+l$%u ze$W*yMeXL}RCL%eh*YvFam%BPLz+vvs)=D5w-$)|&e+uroM|#IBUE0Th^8`O#c(3| zznIJe#5+@t1)Qgf0a&nqNc??d>_Q`S^YHwePu`=$TF0pAYqD~K zE=6>6lmYbzY@BVfSH+DF zqx8no3@+!iZr*Z%$Juon#A=y?TVFAjshFPZCZpUxHajFKGHicLO^`mStU12~M|m$_ z!QP&9V!pGi&ayQ-e@|AXt#;O?iX~UZS`p>@Rh`|`#jw6D6U&KD>jQMB`#+*x7unk@ zRZCB$t+BLq9oCN?4Mk-srLL&1?Zqh*d~Ex#e?L}jVArn3J5JTU=DSkPozrbh#A@+M zmTzgH)?GH$HSS+mS3E2!FDs=&nHVF_bBCRyR$d@{IGT0r&!da&E`kS1{b25G2zqSJ8;?Hqb1iR)A5}-MCJrdN{*|M8d{*e1~W^L_{vo_YEwJNn8sM6HqD!PVN?!7J*uI=XC4~^$N z$LTs{)aJ+O2Fcn}q0{4579SYHDp@V_S(a&q?(nY*Pj)c|y}A~kcU_NA+0fWekCM^l zw{+PgHJYFyZxfq-Y>B9@dYRTS;7D_UCh0U}wqPPn`+sA4IkhKhY^@Hmr5Mt-s*+S> z%Im&4-_>p=kIa8MdO@pgs4*8};}kV*#*jGNnyHR%1gnWCR> zV;;slJaQcSVvR0)^pvkS#Pen)LT*t?b5fg#;1L_q`FV&zQ=ldp7EK~vn`Kov`*Z2# zM|<}ZMFG!CE(}T;(jrKRE!VFG4#K{1II8IGO-JMMH0T8Wc6)Ra7S^uDNn~@}l+!nk zMr76tYQWdVNROjr^dM-};X^TBC&AWupFkFH!qn`d%Dwz@rhJLD)fX>JxQrkSU)~z*nbzUpCdN2O}0OoAnhW1f~*I}nC6o+dbb%lE|Ut#HTVzT^pP}q7s zjCijDRuGk^c!<0XBCBFV8!unWEw9(VNb2n>@u}A`=+=1fTi#!aaeiyX8BQ|?*qbA( z-I1o#)6>$YPMvCtz8cu@t3))cuYGyu)@9+wN~!%Mv?Ea|d$8|!NU|H7XJ~YK#-_EL zZraYws+n!u`_RT^R@KUX!vIE!)hNygB7<)rHk??2Sw#Ghd1;Jy%W(GfLH_ zt2e!|Se@nc>lP0S7KL+S4%hlBDra51kz|4CBSmH_#_ZE|)lrW-<-d(d2%BV`ciXRm zv>K<>YBcow9Cg*TRO!*v(#gALx}tY@re1kOeh1e(KT5c25~8QnzOOG*w9oi46D-)} z>qa=b_iu`oUHWPEcZzE0cO7e}6f#`KuB+Curz+q){e^ZxmdcTLPaYdFm_(L=k9{3w z@bI|fQd7#iZ_E7>^b2O{Ha|qVH?y^~KU~x3bn9CAEW^q}VKB`$eCHOAFLeGq^!sV) z_ODF3MXl0q(pJ?}gtvDDx~?7HGRFS^6(sA~?wLl^e0v$qwEqAU!I?@b+-myD4kLMG zi&)xyQd~?b`eSe%jNE&dYSuhxPYJtBuOj zr>*fUR>9Y(ud*#mV#`n|<^+_VC7YO5es}62PvqiKNQWsKXdVHR%*)GL=SXkpwe*cZWKp?+RzkC1K?u`iIDqqq$w#0&I&+~A zsj~c5{%m~uz4!-r`+@5T(Qr%nxdRqy4&}!2`2gf7_0!!ZO@}Mh$7Kl^d6_a^AY6_* z>O`oOJabyMq(jGH&5pSiMH<^0y(Xg|H3`ZX$zaAKJsji7z?QsUXZZmfH6E(+u@`PY zfY<7E=~Y=&6l!`~d&=eYmh4(pHE8U$7X|XFlElYfix62s*v*y<)8q0UvRqoLSz{Id z09UFFc83x&kglksZMIw-dxCjIS`p*AiYEdTts5$72q z6cAEG+hp9ory(zXyn^zNfFn|^5*ov*d8!6k0Vm@|n{2E+!E7W%^KQjdbv8uUIVv9^ z9r<-2Ry7*CC$PxERT{Zp3S!wDsTNO9i6+Iwil-7HGQhap1#RNy!=TCDFQ?dv+_Db~3eod5xA&Wzp%w{yGB=j*PdO-(?UJz9l zzXGa8OO)A}d%(=!;TT3GHJso=9I2L(VabJc4#p)0S`lD_O_aMBmXjNAB8+R}BSxZ} zmHuNlcsbRgA~!%3oW4~IOrpMiW2TnQ!iSVl%1QW}mo4LYJ&O*saoUq&GJRYut|85l zE*TVqY~z!Fh9BjWOw2W*XW|Pd)c)AQe!{9Xsckex=8Uh{>luH;MMrKMvi)b(H&{>74v%U24X)Hm?f#GE`!VMn zwK_-NS4j-b8CIhzv!+ixOTw;Lt6k4@eZS)!$LKDn=ni#Fb8CibjRTm)gsNua&bN(F z?5MMnZA-5Ug51z`jpGr4apsQl**f^kQ(JEA9i_5%_eWc_+T9)2(bZ_)BkMReo%2Zz&j++LQL*-`_B&p+3DD{(Ri~+;Rpx>_RHpQ?X2*tB@bfF@NL+6u z?-|9_x*GgH6QC+eOn$1Cf}W?*jArWb>MFSP5g;&(GfQ5!KTgH zdrwcOri%Jr+NO28XqkDY-{M0w&Rg4w+H-eb6UnxtXY5a_*468iQ7aF|k9c~l`NLj2 z-1rxT7jpVaMg430n9`2lbVBz{>@5xargdX8>|3m|hvRLi@2rS4b08z$b1AY#zC=7o znjN@(*RHOwdc4(i zPJ+X4nN*8!Zx(MBKbSjDXjR&~PibvB-{Nfw&r_AHoXcbX0A~9-(c4x%pXsP?Dk{r} zlR_Q)ah831GMJ4bJQkkE-ZBa5M%yeKh^TF=f5t*1*K5*-m1vAvd3p~XYtfv3mJLpw zb&+BU`**V6ZY40?#WZ!6(U#f0D?+Vts4=S=dThx_7slh8_>sqW{CXtRoV!HB5LLdi zex7+=1$$DM+(vSk^spx=jbvEWvaaVH#JLYWS0D_Dm<`1NN4#nxi64;iZ;^GN6$S0f zE6HG5NPtiwl*?#_$qZ`>j{(Q=HDuFJfdFn>l7f!K=lqC5@4$zM^aA^icAIZEC-Au% zECrEZ>azmIM;9i8)^8&%ltx7rr_7rYK~h9Oct{WO;swj$-MDG4o@w2!ZGD?;+*{N% z`qa)tuCZcsRnA+4I5PO6wos)&ohgT%0~u_Wq>>vFA3$ow+!eXpYQ9+c$r+^8oR;34 zkroTK5|QIsQ{==WBxX~N^5lrBDa8AuAN@oXB^mZqI8siUW+)mfb) zdm4(d8N_)R;%vL6p_XL(JLtLAcFEZ_YIIMe6Gu-`rhchbt6;MaIXyXf;b~doRN-b@ zs$djLRP8HLrB$dkT{`x3qNQ0_js>*t@S-V{?%T!AJH{xz0{-vKZ?Fb-JNK1{3B5gvB>ciMEqhAc{JA!zpFIi z?A0;J>Tky*`QguVHgg>B>Gh06oK}MB!aaK9)sEBZ6@`O&9N#N0gQr@FKDNHkH?XLa z61x{yQNQ%e5YbOhez z#l`F+TxWTN3s{z}Qz}A(i%VvTT8Y@ZfiD7H~vD6(aQ za3;m@a9MUp?u-IBf{3g3Prltm-uIT>^WqKZw4*Xyvr4hsSP-DpxOH(+xYd$|&6dbo zXgo?}*pcq3x$dZ_g~)zAcT?^tA=!OHH@8)iio`0eDN!WIX{IC1Vb&LaQ5nec*gf7g z0VH$aTYfun>fjaTbEjO#n(96^lAKQ!WSaSn)Xj18{vej3#Evg3Y^Nb@MR@W2hkk$$ z*4J5Mp$4?_0<|2*L(nDIUEi`+&$j;nx<3jfiFjwvl3-p|i3vbQ?uJNRQ5P7nAldN6 z#9|WIgu`>}SdX{KNyz&6b z#`7b}G8p#SDCI@<6A>0ZS&eFx2JCC21SL!W|nPnC6WnEU&!^W%g{Axd^%Yt+!9te#|y_C|cl?*uH z7lro8=S+500u8#xr4_2J58Y_9D=a)p_^T^(iSDxbl+v9?r0Y_ZMyF9_WnEfUQI>Ls zMq6V)_Eq!`)06dl?Nx)L?IXQBGg!3Fq0nNN2iDpf7}*pi1;j<9#`1Y+Zp?t$@oYue zTogxuHUOP`)zd$s??8GVx%r>MnZ(Uzx7^qQ;suUTc+hZ*5A`Sz3l0K_Gz z)k%$3%I$MXR>54ZwaT$6_VcnQ+)xm9L~wkGAu`hfB2Dg%a(GY6xpC|8bpD6CGf`75 zuhWgIuAsKcjWwgCTA2B2)u)wfTf5mkDCfh(euqidk3}|YwSAk_u9CK=y+yV9n%c@b zZTHD2OeHF>m!7h|>|m}O&;A%qan-Awk5&7q?sCUgvL>o0WFW;}JAc(+r3#XndVXPVfDQE7!0e7LD!Q`Qq~2_4%+@ zZ+*z)Io_JmLdS9$nFW1?(|DAbcGZ<}Z0xF@d8qKpEj3~BsbTlxNNORL#^)ELyy*yn zbtu^)&N$o!?9VX9W=v-rh{T$z_~j-<=ZX@!Pbo?AuU9UlMjkR92)<_`MjeI3ALS!o zf>;ZVd8GI*WfR99O-y)ES#n(%MX4B$R?6f}44F^3K2U<>X4^wuxHingWl=eF1!uXY zSmL>wz@(w5%4*!Cu!nz6+$eQYY%(a5(YO$C%Lvh$lD4eCUq6r)0l{PknEUPpcxuIE zW)nJ1yR?NSO=W}$5u#ehN4}pW`*`(W+(&{MJOSv1#|)5OG!j%kKazlicd4)NW9XA{ zH1bPz*&aJD=$FpF4CZf9kUReXU!;RJz?I2Pvc#6;GW$x~?XxJi9s)_w6$^#nSgyC@ zc%DB`jszUyR-s!2+`7W)nDDKrt!rRJqoz39`B_-kEX;Yyj)<~jIDm|JbOy(|J^ug< zZJuL+Rb(fgu_qvYJr$j$O;ww&&3X)p2scu(L0E*$^Mu+Hf<~$MsR8UlV>5d+ZfI!6 z%^4*6+4|9M0%BQa85(KSUFy-^R*w{)2KJ0j8TthG)qu#4U8fzyo;1{17PBbc$f8bB zD3Bz_`csWr*K=)|vSTa807c{<3ZeXc`t>JBdXwtor8RXAw>m4Q)^_n{@XcqP*7)Pa z-LdU`gV$$R-5t}@(`>GhRnya_5sp~ZWwiIBHQ|}{zs!1YPxyXyTT(7@$$jZ}eVS?m zPa(-`8ljN$5k{$&QSpG1?A%9MaS)4VSZu++?c9ZWzeGBe>dT;P&Czaz?Cp0A}A49+P#=)>lgD_8VWN+NzpqhK|ac{a%wpca_qH3i7|F^Aknp`*8Q%G&*M7qK_t%%y}cJ$ZmgC@LSe zuH@E>$j_*bZW3_k!{U8IJ7bkQOfP%gDlQpbcS^=KnN7xViMdft4$9*K#5 z&UdV^uHn>U^Q+y5DzX)g-YYucB|1b%fgOhBNJDT@8(9a%(sY|qXh3=c2~(ZF6dGyg zk-3V3q=Kd6bC`*E&OJ+ks994uxP}n)+XF1>yLvFVo5GW(?X!z(ZwC&;|iuKs#_9r;=A$d zqfa-=egJ-RRT!4DCrgm+Bna`HY3b~fL`Lh4pd*J3csfn|b}tgDn)@fmu9*8d{PO}+ zjMuZ1XL4&S?e4B=r`Om%k{yIpOe~h3J}}_Ic1p@t90vS^ZUbVV&*oxXbHqc`-rcIK zaI|pc`oHP{S&GV^Q(G2gGmL^6O<- zShR8kLs+oOEaM88#+lwk$1dNlewE>~i+1waqB`r~zOCnxs~YEDF*m`mM_X4ES$GfI zs=PBJEH*OG1%j5}Td)cW>|W~np0Z{G3M{LOy+5dzl2WZKqjhJu66(FyCE~NZCM575 zsd2M^$OW<(^^z@WYfWL{vG;xN=^qkDj1XJOw9evM)KkvAu#D6gSi00+1ZkCK2`cK! z?;)*^>iCL^quy49^K-?-okHcbEJI}%{6K%lwN}ctX3w9K)7#h8JK>dU0;%MaO4zzd zIIZWvg8{IyCjLz;wdOp?fte-6RICYH9^!LksCoESZcC|81iHD6$lHpK%t(a6M3ZaZ7`VH7@)t1<;lj@9s-0h3h)>ZyI>RB7!!Z8~~85(i-;+_297_Dj5>!)!m%A7)5*Hh=ut*na*nfBOj2|Up} z5vE!|a1yT`WvA5TC^-D7>gR$t1zv#FAG|#e*1b~ApjHF+bhz$KsCKqh%_Vg0tMW?5 zm~sTgu8=YqN^!MrL%=4~maF4D;k*d(h&Pl{rwr2Id50*#F!07AIew+mwqav>5DI zubtFblc+2jiYAp8vMH@z1SZ--1vsYUe;a-?>E5kB+6TUD$>;(a_{c_uj&HTmgOzx*p=i` z#j7yfiu~tBO*y`##ImaUi)*=CLdtS``niJZSvxU(M1~q?eo`EaZ#aP2ZAodWw(h$5 zJ#P%X?0~kto@(}<94#@8kKuUB*AXH?dh*Ja_gr-r+aHS9EC9u6B1A~O206NtR+q^eUGl?n6F%5$JMUp(!hIjI$~?Bs!It zyxMw;3GeCUQMB(j?HllmsM&5U7>`;~iB)BlwA>YWlLL|AtI;(704BgnMQvPhjYT4T zlzg^aIU*BVuCpfHmvdb4I_e2Ya22v-9{_AO#fb1b3p;T zrTXG+0h){0NibQqkj~=Sx`eV8ZH4z{z&l~OCjWmcu4)U^9Q*qJRcJZ2m{f%T|@ihF( z+Ifw~pAlUY^7!6UAXx-H-2kUZrzl14z&0e?P9h&MMw5!6@-QEfs{a6|+v1-tym$gR z9!d0@BXv*2;YlS@M$nKNCE39sPjuZAZTI&=`xi~#Jb|%K=0}n@cvXM2iwM@u!xr}`tMnWjH7%s6&Gz5(wyXVCht4Efm4iC&Uxt7 z)$yH!Cdv4+41DD%CBEyaAQ)kuPk}ZFg~fTO_0LHjA1O>%co+}wdY+XhX> zq??h7DLT^dIOgZ)>J^?_D~PCST)6$Z=>$%;VOB9F99cB-KCIlS)|Mx5^KMr`BNtqQ z6d7&xWE~=8SBqld5pWXsE`VM#xxY@X%IIFjaeAzIY+_lgORITo*IF|rIJYh557Nps zLO+X7><+pp4(@8Qmb*9e&X1o*R&T$V{5RGtx; zb>Lu|emf*T0px-re-y>y(;K86bjn{^+S>S(&e+jLYAHcr>7z$lYt|JZG}b~fo);Xj zTSrM5brHtV*y!Oe4m~0*7Kq&dsE+b=S2e53qT!lz8V!bNn%^+Rh-8&{3v%GkuaLFw zw^?!}=;772DZ^b_9Wwfx~!b97(Fo6*QGP0Zf`1NpDrZ0=&^iNNnBERW24M}PBe)1%z&dtd( zk~8m2H4WZfh(vulHrV(};2<1&0z;AL%Qmxa@8I4zEg05UyX!%T(kU!Ow*(3rOl?u< z?l$L*vL*2YZgDH`Of{`|D(RYTv9{omKIH4$GdBeRUwTA>apxCs z0B?glcld!!UB-6#rFGd5*x~UaR$0?YeZjJeIRVKvkYsr!xaC6m4pn+tEP`N~6b9NN zqA`8hL_=GEeHDj+1P+=CRbbBq|Sx)EWGd}fRIhlmJ& zXb)B@;RZi_9>&KHjS9X!Epsz5IBw&$Cl1->>@j-GV;nfLZ7%M7Yv+BY8d$B5H=aMs zh!`zFdJQ$So4jZ-^l;!P*+9mlxfaqF&|GoMlq)2;G+UIC97bI?qL-DgBZ`s8m!DYF zM(?Hbi!T zQYvEBtl486KhzFeoXWnQG+2}vjZJlp^faKCV^ycN(b4LYRtY1#ro1fFV%;y;-nbO zSi6!G%r1Rwe3GGLWFbQNf)h2@nujai4V2o7o1>+lg5C&S7?=%$#>7B3ET8% z6|t3VsFl_dENdb|3oDxmRhRH?EFTK_YW+jbuq;y(Epbp$;@}f&&941ab8X3hGc<&sDr`$dnZ64nGO5+FL2Va*u!N( zaP^tYyNa#7kuc13e~YhHeL4`wY{Uq>+yi#kgNUM`!2oUY;GK^(TQ?N9wxYQ|8m+DL zTSAKJkgV@a-Mg|~X6u_oN$B0(NSxdVc%bwE{{T3Z79Db%UJ^8D*UCt|4AggN6%+1) zUfX<2aohbm@$nNgxCoAFO}}EZ1milU`gs{W)m`zrC~guc`~z=fP50a7@6=B&c!9a? zZzg88-leIu2ngMPdN8eJPR`NEK0Z+5w9AP5%_<1Ei^PGnY>d7?5}$xK!R#klt93U^ zA!1T4p}B2K9w@?z63W7N(&|b(ZL2<4({VK7NyK*ILSEn6JvwP=ii+M|=qy@-vK4&y zn5(CbNXRsvSaQ&eWn8Dw1$uU|N5CZznABjGxpl!hh$W7C)HL# z%$_2ZTW1bUOn+T!M;u*=4hT+yKC&xQ8{{NH+5xr%2;g$w&8Uc##bu)3o7DoRs*|T* zUQuK=_aTDcF(F-{(}>wCv@>k39E`&?rIE~|!<+}@5;Wlx3hQyu1Os(7->SPaO22l~ zx<8l&_VWEi$8pEvO*}e}HKdgZn;A6H&dek=aS0!Vlq~p;fjrE1#D&0qQi*dvAquA+ zwtmvng|q%1&_cg+9XQrw`1S5Nd63z9<}aD1ZI@_2~EN2!@r=FzwkJu}Ux!l5j`HO-(CPFh^XWCh0EYPKY4 zOX3NyHp+P=O^i~ES@8gfw%Di3evr#Ce4vS#j&ehCe(f1cZ32i?yz#c+IH-rour54BdYP$CBJ%MNOvW>7?}J|+ z{=1%Q7|3xfvkb9ze96`_vARl#Y%wI@)6Ry|6R#|Vo#kGm;`@StXwdPB@t`NgdbCVT zOywVm8|{?Z-#y`q)7=x7rM0rPZF|gEhZnh;vH=M7jqMtqT zazYBZC8UqcklijlFB3C|6sQ04cd8LgyV}9Z6&_@E~8EmgDT%0v;sAlN|k`jvZ>DH;Fgo! zwN_lo=T!d7Vy33L7%>j3Oe53Ck{R8gS15~*$@f=BnIoisED>EQT7O9v?@!L~2QJ>o zu*(~(_n)`O@w;0n_c7`(bq2l`MMXx_jMz<+7K}19JBH*ZgiVeqA;fcn0Ej3hW}XtQ zo>P|$f59NavaH}ArWf{A=`I3dnaGYV%<`JYg zK2h;J*uFxYZ4**v&alz(1VSHq9kO6^TcxhV?5peRDBcSASgioaVf#h_w#eOPOo4JM zBEq;s7&)s1-;dmWJryBeFAG}`Bl^4E{wtERCYMUFxE9vLvz>A*YSG3rS(U)yNP2W1 z@PLmTW<;D_$>$Hots7_`9*VCMz4Bj0xBk!+#x)*xWobSvyt^Bn9`w=c3aff{#@4P3 z?v9@=Yl{}MvE#C&g;Q$(0F9R) zvTzZ{qRkc%O@Jg2WSsFUhKI#K7X?-~PnSP;mDSwa!X`>hji1!tD==lnR-s-kY#QeP zc}Q$c*MZ@1nQ+b40JxC>i^+1B`8h@*22lV)k6t)^jZ90z^ ziSlJzPC`cLDDvn4=B-1ui(d4Y4y2gq-v!{S%~X`UWcq$+s!QyOn|%78-= z;W6islY*fcY$~V-h3=m&qWJMgr~QXNX}c2{4NcutOsa~)J8sR4(F~B0>kZ*}6xGuP z%g5s5@jzc~gn0XxUCPkWcmn?bs3CEYR@}Q4va*9^#w^*7i=^)%P9B!H25U}9_=l0u zX*h_t$jp8{RpFj6g~Q&+n43-Gz^&QF+#JeQHx>Z->Jee_UtWw1vDbG^J znGNQm9g^FuafO|z(pl;iTKZ)G=C8Y;6cWEqJP zC26GdVjYXmG|X4L=4em3OwUK{18_%lL!&>wvTv<&rq5?qo<;$v6cto^w zZ`uI&7O{6GkCIqrE$Ho}40^g$RxHHbcO;>#wIupRH2yP+H5r*VZ^?XIc?L%^7I-Oi=0xt^VHy|+nZXjVpLnu@b~dd8wZtlmxf$>3L2c@-TLqtWOX4nL6ORvH+R zPP&r9I!>*6?=^?F`+Qqxi*V4x4Y902pYFiVNAYu)xWs%u~ zCQTb{_=r8ZS%SOFOJq(wg??RfSNiH|eyEkZN4Ey#v#vQ`9J2L|(yoT3HI~rR(#^4E zt4d}euGZg{^;~hEHb+lfyTsP0Hn6E#)?HQ2rdhy*>u@LLH;D=hVDULp!Z#V@I|6Ks zm7rBb9)J6KjRv1vuk9)}tLplCGmmvz{rHCBPXbKkm%qacZ#M%Qigth6^u0Fi z>mJiPyz?N;@=B**#%=9EYIFYpR=1SWOIq3+D+wbavgi?BM#17n0Sm;6yt?w#DY7l* z{9aSXvrEnAnD*fK)6|sj!Ao0*Y8jaFWNdoBOJP%d)JI_~HrlVU172Yuzr#969HNiq zzgv|NYFztJYVvCgUlYXg*cy{dV><}btxT|H57RY^PcjPvIj&mVdZ~=kS=U&4e0W#W~LYyoDv_d}~VMyJBJ1nP^DW%Wtg{x zK-6M!>v}Ro7DvWy*h)@e9vdJ$hLhV}ZNZd&04P_T4tI*rmnR~@?JKUIB#iA%6gp<$ z*ch6~uEHZ^1Qs+ls7BIAhc9_CM{!4sVGgEZF`m`3$Q5&`nA|Nk&e^rc?XyhK8-Ca6 z*t3(V?%tZ@9zi;v9?0cZxgs@k%SVWn_8V5)CtYC31W&81EJc@;0dBk1TpKOLXO*^h zs<>sGw(KH9qNl&dEKd-x_02p`W=TlG-Ho`(Z^muMMDw&jPZ+p_Jy;cktl11piL+~9 z6_4%na$_-=oG}{pQ>c^qa-+o8ITG~W(hG<3NMhzY&cYrMFTYAt6|M5{q! zx)d1`OVvs!?lWpslU7@rddp~5^|x^zu$17v9kjI;WErW6 zn~ofW9xZ^6`tFPW0GH*^8)5#JJ<(iF82WFO+f;CQrei^BT+dr)In9g9>B>Zxj2ICD zBY6C1f$;!A+o`0?tg#aoY2pRD>Mc7+#PJJ<9Bx}m$VPw&FELhXCj63=iOHz$Jc1lr z;%=y*^5g7V*Oq35hKyUw>wVy_jd)@#xD~LI7rv;cu5^a#MKe!r8m-1jrsTz9wWi#& zu-u4~%=ZS|E-FN7J#%Gw&KG?8-d}f!6sz2n9a^ghQSb|?G?AFdiK@E1t2VjD}p3_#GD=fz=e*XYfL`=lq4UW5i#j<(~ zGOGUS{{SDzt6(rC7Z{I@nLl|crpQ{3&PxgHfn1)y$gDI%;xe4LiWgeaiHOTR&EP;8 z?ti%q;fa!HS<~HJmpx%gZym(6&l`-D*yQ*Tid35`$%SCkwlBObaZ(mqHsf+Hmo()y zCZ{CxM(Ou}E78n%B6*tY**ZgCyr9Z3wZ6a*|!an zaAUN~ugT{n-YFER%6^g3DpjdvX7qc&VzbO6R%4>zovQxSp<(1(9F%e@*;2wK#gnG> zwcGZR*lGhn<1D*j%08tmdj2DNhztQ-OeuIU8k

A zpxNQM4(K1%nV4+Baz&7k~G!+D2keMoci?7WsB++e(ZvO!L7azYK9DLZ@ zz34wsvr}no%9T4#DsYQ2j|?(8*}c|fo$(Rf;+@hP{{Tr2$83Ae?#~>O<`p9=!?ep7 zt+dT;-Lesu4-YeWy!fA#v$6|%k+pXng3EW+FG#PKk;6+jC>8@w z6brzLgws`f$#Ar;nBuKY;hb2Pf`$j?P1r-;N0POQXyP(xvR?fRQdKCt$L6s*j z!1V$)Nd^-XSC+C4J)C=%8*DBkT*!VaC0lAM=^1#CUK0Z4&&8vR1?y9u=U&S^uA z)4-WdIG(R#by&_{MMW~$#%#p8pKQSi-%Pq9Zey~^i30L&%Z3U&)s`MDJb^v5$J?w5 z!_`aNrt4JkqnQMA1-GxEiE$#W9v0rAdY@?z!*)xrDa9?B7k1=aSE8z{Sz{OlM)zB- zxDFhWs&b7Gw6X+}vc9J7ZFf^55;_7-$h9gs$jyOBmAQ&IK1EOSOREB-?|Yron<=4R zN!xxqV+LD~wDY+(qiTx6dRMY+Ls@Mb++G&V5lDeoZ;ssop2f1s*%UUh`MtjB6?Aq` zro(aQIfcxXX~9DBnOI7*KWz4CI9t4@w zoPdD*g@+dQ9VJwDpfMqtN-fA%xS{a^csM=FpbKGxW!2dnN*t3Bth>3A&7(203emJ? zy7brw9)|Qrq{t+JY>^9;m?h1L9GBud@#qN*%WNA-@r!qmtLrS8VP#FP#+`k}%vg?G z)r$G1FGrZ$z(S~is0bsm@d4Zl?5i?4BxJk^0XV(Lc%yBi?rK|okw<@TvJd0ekB)I* zPnfx?07tm_w-yD~NeQOOTTUoM;+U^3l)h{1pXj|!ruMe*MKauml2fQq{B;T9QE`P} z-Dylw0Nf|V!X+Xvbl7<9{W^e0Xf+1U&FLdrF!OD&tt*X7jlqcOh@25!BsN!M`zWUC z)W!UHupfTfbt>0Pa>~4}BiRW#1!Etks;H3so5>FvzLC-PFv)USs+bTMMpO~$hA+D0mywY}7J)o1aorPs zrWvPvwo~c(kWt>P#O$XTYFTI6r*B$V zY^tdllafu(kKjA;>uRk{mx*QNeb8-N*{&%cS37&BZcU`BJQdpqS)phxiHw4LRuE>K znD${T`83#qfU7bd6;_CmNWHq!jLfa4z#Ll7+{bF&u)vw8)|viAj7ggg-peA+a<|~# zUzB<5kvP;U)|1!2YWC6ChZ!4f2^>B*mmoku8B;Y6gRg;pG-}e^G-7g}Gjhlr@^t&Y44X@f z9L#Jj>9rQ(bX!Zf!Eq7D^CnG@r#enkVOZ*nmO>deE+h~^0u+z4i^$ShD$1>@V=MDu z6mfpt^?N(OvFKWblw*~27^+XDr4}qKX3URaKgSehIZ0C`8^*7>u4CM!9TuUPX^m*kU8wmh>rDpQo(zh)Q)!$u0Fcv9i>`C9FHkQw z!5R#9S`WZf6QDG`{d=@iPkVvZYOAUVct#_rb0@KPpV!yedW%ZxNoL(_7V_+o=VT}D zhU%dazYyIx(rdikkZ50CRSDj@msuX=$>}vTpIqsI1lMwMkW_4d9oz=9VqjPIbRQE+46?De<(+ zFukli#)BEiau9)SOBPht<^(rthHJhn69e%R>K+w!;TKy$>#W3q>pqTTxx-qMoMIZS zB9iMPol$*?vc;IWRPeTn;^CGpOO92sNyzCX=;+$C=b6P)B~sZUV)5R`+63!VdqwWg zGkT{v!8O}at+E>Wf|y!&irOT4zg17^WHoCdA$n(@q!^(g*MLq;qkXez5l4q90C!cx zyiGdN*EKs2tA8fRV!H~DDadLwwPM2K9I>c6`FA!?XwH^utsa_E{UBYrmqm+a^mdV9xRR@6N@`?cu%d96mxLK{ zOOk8^e~o~;HTuhIzCWBg)}-hiMn9#QY!QQbg}IHRah`}``x5G0$lPhTmc-=K6^`q~ zMlBKom^vt308FXVKGyq|lXsHo94Y!qo@C4|tu+p5nzxZdg_1uRTai>0Ubacp zaL($m8tT~4Yp^Ri+ZT<56N|*z^wCk#i3&^?c_~LVl`zUvUohg0I401Jz!+K1@?Aos zt!6??g#xa~oQsnBSs63f%o*s@?xme~i`7T356^bUkH*;>WbYC|0f~p(!*md;a_Mskg^-$&;8k zkn1nXRjstfh=qonbYsYp+LU=rtBwOQnKN;e_-u{z1v~e@+_Xz*&FS_tA@|@m>C9r@ zYBpDpq$^0$#$xgg%Q_+=Z@a>U^5ejM{Q%9#ou%+wx{VH*@O?= ziOAF!^7cgI$B$k*fm}^C$t9)Hzw*tjz+cHhLM{Zq~PVnxd?Y|Fy z^y)7+vd<7B7W$Lha}R9Znd;t7t#TFvM9abB#uxFNWxj5M;SB!Z*}VQAJ`SYs>Kd z-n3@2u1g$54W^LyS=?QTEPP`ts?%(JUPk7C0BHiV|4 zNTf;2mriqk5L_NDpSPJ-HHhjSafj4p65_K0C4EJ+89mI>6kj3CZykj!VYVn+sF9+o zh==3y>LMo7J>W0e@%nz%9u} ziA8d$&i?>tfFm=$j@B^Al631ybf;8x4>Puf77aFB7>p&x>8G(7!%{>bBdd65Qayl z#j$G2y3jV8j_Wm!R$_4;DbpNTi@~=ZHoVVmDbs1N;F{BymTaOPJgoo~RAid(C%NYx z$u-92H5AC!5vlavy84>NZDuE5BZTKCRx;|x#({~29l?@DPD+qGpLG5pwT5M>dYmxa zmmm#uol%k7`#QOjX|8W!km|$Ow1_RSd2YEbHs#IS@RoKM{Yc7jatopw`1&a~#uIbB#H-)S2((&_#;!>T9;P1k^%sh@;17S>!wutAa(_ez<2^MMxM1gkDwHB3WHED)xPc&D?6T<@bjb zw1%ykS3q_%wm`$qi>@LFJH!Bb0@$?6QuLEnbvB13)=YlpgHf;+VAojNJ8Ksp$Dze> zrd+EGf^>y!<50+MbYEw|(c>YfQ1~`nKy9-8k5hBKXvQwI*H!MC(;H*2m-}EXE92?q zW>lPI9T7aMVxCdLNch`TC2a-G;rL`$Foz3^t*`-IH6&G21Wyr;wPYRY+YaEhCU zsx9rTrK&-)feQJi*hx<-PB2WHK6vTwjwrqH=l~ugpZCLQI}Xe8%|ysuuA?3 zSmt+tw1(I==0yTS@t%|<>#VmWpnbJHII(vI5s|u;g0^^T(f%Ft`nh6eqZ_oyPG1dJG?jua@@vP*uo$E}& zlc34;<1GNeEiuf67;U&P*1A+>DmzJ%Ss5|svZBMP>J!Qe1U)Zp*R{ZoG1&CJ-SX!( zW~(8Wgksc|@5sBxZ89dTGRXB~{H;c0YTlC1E_6`TULppawMpctf5G)azihhV=fsKCy~xzYT5GW1Q!O; zCo(7DxuaUUU6VB-!8tm2md+hH&SRW%SrVFNyCs(8CHRoD{7VkW#~eaZMn~@aAh*rUvwEi)G4oZ=g@2)KfjcU*0JCSZKmf`E6ywG$b| zZL4me>Gl0=ipDD#hIBWHDzeVK7;&<0;uX|F8^vwc38$JTLF5*}*yqdQKr%1639MbX zDLTrh9JFNbt6pl79gKJ*XDME>r<$>(`KwiAD~*z{0>h$hJHU^TbOImTF1k}=nDOA) zzH3Eg4ScOhsI>ZxO0ZHz#?TshVkoL{UP!!@MR|Ye&=nDoQ)Dvbyl={bYCz$e3kK>9 zp_>kplWnjqNK<%06p?;Aj{H|{fPAuSqP8>c#(I6q0V+C%5TcN{JMJz6gEbJh<-Xs2 z{{SwtT57X+<`2wkB%qM{amsD`?eir;Sk>(z4-rm#yCuOy*>?O>eqVm2(OFvjdUg`}V}H#iagE1F~g1^7b<>qjk6Zzz@}R z8W*KrDSD%?Hu|xYtH_fnwA#|t>0>@BBrHzP@>r6l%T?QD^mU9Xr{OGpkE+e*ia56c z!qSfH@f=x!ji%U)ToK7b;%De>{WksR#tJBRS!I*f7oyvOgr*@rAC+9)BeW`=S{dRu zUjFC}jrUP`FZ>Ov2}_*fHT5KVLe6z$f0^X6ob&S^Fx?bU9Ohhj^7rX7%@>y5zEF3s z`)1a@;w~X%I4(1FlEOb*EZ|)>K&9wwU{nD;c?ci@iv-K z6~{3=g{LMCJci!y+`9rO%NBWrmyd{bY}xlU_<3YZ#K$w&4b=YGatcY8+ChCX>c3B6 zJ8N&K3q<1#Tjq8Tw4gRt_ij1jpnwmHb=6|oOS5&d-~s|dHinq)U3YKz_>e|l?nf!p z*i@NLjOpz8k_rslHgjyCYwV|6WLGbhWmLB7Wj^d|MyJ-5gsE;qN2Dup{9dF01p*P> zcYo|}H_r((ZvwJ%e(g0%s+T-#F@oZ1K2bK#MlF_N1;WoOxQz6P3~bZS1CQfm>rw@o z&Z$RMguNRi91Qv?)52M$yGC!ENICIr&c_MT5U|!wL|aUcQSLsAVh|*x$53=BBy`%W(mgCA{r|DVMUa>|o?0)xl5tpQ*Xct!>p2PLqyBfs#y$u2#UD)pM;_ ztAk@M!K8D`1msytD6TlZ#`u7Oat>VpDbS3QRkS}Ytk24^`EJpiw<3gTP0Nn#yN+#H z+uuBHkSxYv18swEqKK+1TsfaWTRxk2BL@Ef4RWtiaalFDdA1hDHF=ZOK_;eJ#(i_3C7 zl~v7Td9sKv8CE1tCz@o8&8Eo(j$^?9h1d5@t=T>d`}sWDeA=>pLsLgi&L=(Eh^jUe z?#}(0c`3jbscO;zJatH>O$o(ymP}Cy5D#33EzrG4l^MR`H18nO-A|y6L62m!F6G!* zwVGk}ZUZ$JkS(GM1uk?p%t@C?;BcCXei?2UaUc!0-G)fX=7`~$l{T>8%a3~Myl+q} zV>^=9S0rSWO2!wd9-*rNcV`7-wJe#C9EqhD$af$kPHS$4Vji{P09>Ty0;)N!j<|E%ioU&uMh=edC zha?nF#QFh@$3sIc@&5o@nb1F^4$G4*WKO^($;|L*c3Z4zW|*bS#hX_J@mBo93Tuo9 zjTIw_f^q?H*9?y)#c}zq=p4#zZ>yz<>A7*H*K#jxvHH_en>IdCfyx%GDjAOBeEh2v z;|jO&aJTmYj55rE(<8l?V`e5&oa9p)5>*6n-Q@Fv(TWpFq`UA`MFRNjgYoDHkb$a? zi*@oj#j;J1w?*6fdxq#k{{U}(fU-=J1S<#pBMI>_9wgHFM39t>cMwI~c!GRU5r6O1 zVb)_S@Pj9(8bOiRWOcaZO--fc#f#__^z{|8?rkQMg|lNCt^-ay>iZHBsPP}`)^k}I zd~G1PeJ<^%7}I!hr)zG1Q>S+AG7cu6(?^G&YJ&hA9c)g9n#0iIj+l?KTh5I0f8N6W zJ#tLO`+fjsW9v?mV(rHbFwAD^wWrE1*sTVFp>W zzQp+u@6_8J{{TNQ0S2UN9(SnIT$P*V7x|o@5H}2O?j_HQ5EXr**VK!N8ooLX$SuZb z0X`@x(~uxF`eTtxP_Va3oj$CRAna@XM6`{F#7)TG3N>2|%PrM+Kt9CGulGAvl}>8G)%S>!m+@YLLr znHY4UBH4t3B`K0B!#4wSJEbxxiAc-^BV@Mn2SphS!)-@A~~?Jj>3#D zdY4f+K54^`gg$$%74E}BLwx<;(g0NbWwXrk%qDetzrv<#*=_Z#lQ$+yH85$2yU7JM zqAA6WEP)aahBzk31R^`cOhiQUfJj3g3+UJlB)pcuF z^L}d-lUf6E{uOdYvNoiWII`Y*&ZcX``U9%hXtgz$cUdTkIffQg)iusFKJ4mbw;LLQ z+s}p5QsXN%Psx_~0(z7okt2hkV1F)vA7gazGhBjYq{*3GJDDT)0~#Ci8jEhQv8YE+ zD$0&?oSQ2;I|Cz@z$pZpr%}FMMQe}{X7rmJNO}NMqk4lXnm%=G+!#`4+}B%DP}g0vB>swQSvg~mOULA* zk=DyK^^7UBLMq_0DvE|epi65zw7k-*I62)*810>Txf&i#gj`i^Tz2690Ms9o5C@%X3+7z>EUVyGoNAh zv*_b%W;xLAt+jvSlaAhB*F5 zyL{CwiFp-bW-`fPWk3YhuFkdRKyX#oyhlB$)g2ay)Ohpt%R?;Y<=S>)(Q|;_rDD%Q z`j(p56EC>i@G^?F8%5o*kst*Rsacs@&A(TWDfd@3!xzYn{A~;VSKCWDBHmw)`Rp|A z`Q#Pd>zYU|9E@kmDvDAo)#kQ!6rhME>0npw$mduVNfyZMtSc==)s;<_p;v)W*9x+;Moj~)&J5-9Wp>c3bADGx`g_;n_si;2kcc8~VHqDB-{W<#;^s^+-d z%TVzu{Zc&TL{I6KMYZ#z?z4*Ji31hQn{?Rn97wX>khOUzw%3ST zMkF&S)h=Na3*pcgkmfI<_}tl2GTWE)n^qj%aXmGV5U5O*8#0e=sP=J5d?LRS8n{vm zeZ(av#QNchX~iaYH~N8($hFSy%C=r7r&ZYYl44E|jp{uziz<>`xd14L<$0`^-Mh+- z#=a)9rmGwN3;>TFrX|rLC2{*aARb~9EZ%)%R5dK5q9cyQhz7pKs;^6&^M-)KLZi93 z>xuo_^Dz~!M0shj#~6BB%)C3g-0Ygf3M5vM-^mziS*H!h zg7pBB()R^(LNcRaRn=H%y2(K+D#(pZ$X|%?3nnjR7QpO=c?yW|h>_5V!r+{Xpd1`e zw){UAuCLXO@Nx{F9e*K)&DJ5Jl=9L3;B_WEkw>7}+P!d(2999T7$GmJTLD-+(Q~h_ zb8&Sibh6)*dI2rY`aW9j~o;BaiMA-Q)fkQ$ib z0FyzrILM78?~Yy{FbSSftvXlQ9bD1WIk@Jv_W>0ITGNQuLvN#+ zFJR9t-_@Jy$NYM^sLVK=n#Jo~T38Q?ePVR81B5nQulD|b5H4xn#-nQHS4)3yd2N>D zcHAD5Dr>DY^K7-{D0PjpNReuB$aRg2o*3=Nixs_rmXQaSQpqX3*Mymwo?{6EQ7Lk^ z+=2BN@*B5w;aXls0%}E}zN%{#wNG|x1jV!tDk}Pqkp3zO)j8vCU&=u2K>a!^b{qB_$`S*xvNGo!#M zai+)|hCO^%=2O=MH`tEE2)-0*J)D=^BvlbVAE*XdK|XE`9v*R&^8R7*EeB6^pGxt} zem+Y(P^vOR(}>ql;6f)Ggw&fm;bX%Z#88#z>uY^8aru&|Iw*X9&MvvCHCTykW+i=J zF)?ouVU4etmF3QTZ!Yf`L(Z+n$;$f|o=7q!%XTfLlq)lqWL66)mWP9cJYl1RUcy{@ z+V!R~#xF7EAR6RO>E0~$fByig<3*vBd3T!8(nXp!uqke`D3O|;&3U{^<5;xFh$AtP zaS^huj$C;Lb*XXPh{+EZ7<7S? zRc&@`#K<`QJpdlIvB|Apn*6rsHpQQe9!FKfVdHh?-X|C%+@s3_B6YRdc_U;$WiEjI zqp7%~wnJBCH)9@ScC}U!S~YRBLKO!Y2GK;KIzz?g*WxA1n3mrlA8jGbFL4-uy`UxI9Y#}*oOw~nsg?3XB*2o&q7Oh@jo)s1Q{Sc; zUvsBZ(XQrjta`e*@tl^4KQ649cD5G<_Qg_~fxR9{z&5(SC5$y@K)74AIwOt} z$8ZcfEajBPlm<9G(_$Et`36(kZQ0Z3jMheLD9{{&Tug-W8nhER3}Q`Ofkf5(Nf>yS z>5{;2A%_Kz>UeWWZYZ;FfGjk<`05RYq`jH;V+-ITw^_BWL?GO5l+%1dn&87PQ|iz>qW{6T`h)=t;Efw{NFJJIdl*S5`WQc<(l z9@Md#ymmE}yNJ@Q_Nn%#ZzYN=m2pIfrs1=wJiy_&F{GOOqyV|yj%qCPon_kwb*8=I zY1jCP&*S=8V?CVuD{Y$ca^FL8uSJy6ShXE_J0i9$=2}s48kq2YKmerZ`|UFzarhRI zEo-D3SNIND73!?(AC}O#GP%}Dj?=c4V4_Hp+h|+?*krOFet;NQ*w1FwV_3jgqxppOoB|+jyBq2gl}Dk(mA@`^i^c*jW1)qKo3JVcP?bZ=I6sLpCHTC#`BkND zB`i7i_SPm4YU%5kId+y)r8~u#Fygd3lgdZ3D(nf%k?{c~>yBnt(;hNeala7U;+cj! z+YR#)p*@Udn(PpuS5}sD9am*oTUyO9nKdi&9>kN1rBzdcJc6Bt5kfz_ zvmRgMpa)lajOePX7ryWsVp~n4tazGuqO}+Rkwn*!xX%<$VoHiFsBDSt_v;{7&uRVk z-!}&3$ZS%w|9V9g@CJ zBYthSR@xO!(LWOS^F=PVTJaIazp@Gu)IBrJFh5yr+;?KikVN=8Abvq*vlD1qL~Rui zTwT{?*;GV%3VU_a6MgUm`c{9HQa3WJT$qfW@*Pre*VIdN$VA-)Rpf1flA@|?BhCmIT<@Q=cO=2(G#%yhgc_I~~(FG+fST{=NID3SmHY>kEauD5D`t-4(wqtUmhjIi3tmEB@SHy?wQ`0y9pr^kYh^+ zC6p6!1+|Qve54MjZTw`S=F9A;t`6Vb&>oSsFAOOP=#mc@NZCew+(lr}P=y)+P5h0J zii+>|B>cJqBAwmK#3j|v#B40Kh~`fQZ4^@m^mjfs@NI z3ye`JbF3cyyssGZ!*ZKbF;SIKkz&>aXrW1*)kAeAV7XT4JP_R|lGIG#OL%@L0pAqw zBVO^SQ)B8|_-}C3kQpJXi>?^V4M(%4aKsWT*yeE|wsJZb6@?)cV#s_(JT_724(>;3 z+Qzrk#>k%0?B_@F*zY?cQRyCX8D<>gXBi5{MRp~qaL!F+!jN0J5iPuGf_@$=@#q0A zX6zU@iqSgckv|_VA+L>qUt&iaU4;a9FSg#})I?e$JphiB_L@e#dxZ3g%;p8_yb`fREdf zq9_M=y1x@gap}$A)0DDny7yuhY#YY2N~gtHnKq5L5getabyeo8!{a7PeCNsg#%w6b z6TT89y>Fj%3(hsFPtCM$A{v`%Ba2{%y6{y+G%_!^@=eutU;h9-bG<28hVMs+E`zg( z@vND4{{SQhha0DTk&=x(jm^j{ooyeDiqsOKDx07_X^*0Cg%C~E;^DLp!6)M+s`NPKQwOAky6MsdPqk|F9N zeDC0%=oCF_)Lj1nQav6qMN%}FUN}z{F@xj6_|Q_D>A}lM9;nsZ{H{QM;;p8u(w$yF z1j{@c8+sys@1MtzBG?~n`F3PrHkC%Oqz>F1Xxw!iJ+?-TM`qPU3w7Ubmc`Hv^;cxp zwUtgY9vU?Krj9wj+;vrj5#A(F8Ta@b&9Czi`>3Z6_w^Am6L@dl2nJ8uRsAQ9K*M1e zj4FnUA7;%5-^av}QAJbw54wN;XW#`NP_#*3ku0OejS0XM0gM}iMr6M-@u>SaTdx)0 z{{V>eh_?KT+4C*r%JbOX!Te|8hF42mW- zVa%c%qa0$mgev+GvhizT^_m9Q{=Bh5o%juD8YH6 zyrPKXNU5?bV2khUn<{eZJKODyf}Z=g?XH3+)YX=OqK?T&0ak&;U>hDK;c2l|bCRaO ziTC`!x2vPdP2h9(n&|7UfxT06Irgeuj@lcm9hO@(b>wk>jl<*Z$KP__{o8fcuC2;I zi{)&}#2kki$ja@S3#>W>YT$z;@i`epHugR)5dQ$Gaq8gaNfB*f5n8xp@;022wuPXM zhKQvc$ki1~-|-(|U%7M!Au(7j#ScnG(!aR+#V$p@>&OKYel79-<@Vp8Jz|q_+YpRq zK&oxF>zstu*3*eN+iIw&*=$IvtM(smfa=eA_v(;2I@{_^MrU$WR{YPQ5fY00kpqhT zz8@q`fWf^9(UTEIK}ZMoVUHt;v#qv<+VV2@KvMEF;tO>JZmVKOS`JaA(73sqAYH+vtIB%?K##$goctQ-rL z6VOb27y%t!Ftx37X<$R*PtgjoxO%L zPi2lAR;{sXd7e9rN_d;qb6jB28?=U;yp(s05|FhrIX3EZ;C#d4Koaq*E1V+b?Ee5w z?SY!_Ld_NY8+hzk`RV5nwe&4Tpds}67CQMKjAScnJcLh^4~iE+5N@%2e>HC6=S*wf zp}K&H hhCE=aRuQ>RG%E7HCNioiwZq*BJ(r1YJcpn^|Jj{tW9R?? literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-1.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-1.jpg new file mode 100755 index 0000000000000000000000000000000000000000..efc563488047271c933fc683f8639bf47e829db7 GIT binary patch literal 74544 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 z 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 V{9}((E2Kkd6%*@@mKTJ7|Jj$!BLM&a literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-10.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-10.jpg new file mode 100755 index 0000000000000000000000000000000000000000..21e3079e6fea09046c6ad9bcab538930ffd8c21d GIT binary patch literal 32242 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
Pxa$Ls(=Y;B&cL{geGwpFdOPtm@?m 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

9?BP{YJz5Fd9xugVD7ek*Ny*ovAN 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 HwU7VV+g%HP literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-11.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-11.jpg new file mode 100755 index 0000000000000000000000000000000000000000..e27b056ff399f41f13c48213cf7a88b2913f5fa0 GIT binary patch literal 71098 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-14.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-14.jpg new file mode 100755 index 0000000000000000000000000000000000000000..9e5a791108b1398b77f50dca8ef433ce652183cc GIT binary patch literal 100743 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

dM89LJ~ILg#w~X84S4VrzSk;^BXo} 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-15.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-15.jpg new file mode 100755 index 0000000000000000000000000000000000000000..45939b8ce8a737e6aa9c3bb2c65ce6484d42ad32 GIT binary patch literal 100570 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 A!~g&Q literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-16.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-16.jpg new file mode 100755 index 0000000000000000000000000000000000000000..f0e4b31a548fab9aae12f05de51dd1c80fbcf7a9 GIT binary patch literal 99804 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-19.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-19.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b5bdc92a95c1129bdbc46bf37fbb1d8f260d0f0c GIT binary patch literal 50992 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 R==GfadK$19Hv809|JnT!A#DHv literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-2.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-2.jpg new file mode 100755 index 0000000000000000000000000000000000000000..92bd7fe7bb556642451a0e8d4363211e09a9db0f GIT binary patch literal 37419 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 Z&vs|=T5;`nw9lkeaj7~FLrxO<^8_h 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

?B25{=gl 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

`Tl&XgoG<8_$>g|xaA9_c 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

D6Z?OAo3<#JEzH-epX(8$+vF(v8hW;PYB( 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 A+yDRo literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-24.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-24.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b69d5d17e7f01b7854da57ae634538605484d3ab GIT binary patch literal 49722 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%0Au>`OQ1^+Wrmj=16# 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-25.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-25.jpg new file mode 100755 index 0000000000000000000000000000000000000000..5fcfe65a2ce7acdb16a48fc7a2d5ad86e075a460 GIT binary patch literal 65570 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

7EA5;~-t|?JsXOKjb-_QXw%wSD+ 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

ko{{Zdr&=rD@oH1XWzu>pBfC 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 TcnjtLJ;=JkBwTjyzQ6z3LzV`O literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-28.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-28.jpg new file mode 100755 index 0000000000000000000000000000000000000000..802eadccdcf46071c4bb54338080d5b3ed959eb2 GIT binary patch literal 76976 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�Dl$b0!DY5wo%*2av%vj6qz}BzNjl6%c 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-3.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-3.jpg new file mode 100755 index 0000000000000000000000000000000000000000..c4c17d0f5c4a308890acd0e27fcb2ac21e5eb2b6 GIT binary patch literal 39259 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 V+>#p(M*}C5x5jWlAM*48|Jj_0wm$#> literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-30.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-30.jpg new file mode 100755 index 0000000000000000000000000000000000000000..4c6b8d75d96473654a008de9af6d5e6d2d7022f7 GIT binary patch literal 81594 zcmce6byQnT_im8luEim^yB1m`xVuvzI0Om7DFup42(HE5p|}-ym*VbPpg^H|dB5+c zYu&Z(e|M6z&di?Y?EUOLd*+;z%-@y2I{*R|1!V;Q5)uG_^!x$*y#&;1Ik>^xJRRKJ z=>>WC0AjMr>ZquIe~K41k_iBXidm5w82~^AAX6j509JBt?tV~5dj}Xj8E&uqFYjUthC$t29l@Sl^j@wuworPQgDt&`yA}BPq~-{=b@jC6qBpRGdOEtf z(hKnLNzgmMVD1vUygoiYJXZh0@wh?ld0qaE_2gAkmXp`emFIrO{)^e)3jiU=3+(Lo zO#UB|HqS2X0wUyn9qj-BWn~Tk#E{Zw^5u5*Wc)|P zzjc6YJ;6{%ci2Az_K!|0Yd0^L6cG5_Pye6%AnyOA{Qv6t{{+Jv?f#p}|3d%M^RGbt zPq+>Ezf`+>L0$gE+6K&P>tYMBb%l98Hhp z=WG5gdrq3?9OV74Bz%qacO4-2ykh*n3o#{@jfu(1CDC=fgYkWf%i zkWo=lQBW~oJhMbWeZ~+H0f-qeNPzq@n4|*QjIvf9WI7><TMs*$NPi zm_dMFMi!k!TgRHw$^(i)8WNhABv??`(Aam)B-cMTPsS{yySsODi^)O`vPu5C2Eai< zdiD{85by?2t@+shqB8m--iw*h>*HFRF=#-|E`k>@V4l`&v6kHoymW4k9yc zgNDku9MhK8{$rJi5x0nu#)E75Qcq!BTJeDCFJQA={Iw>h<iXcz&dgYgAGk2ztEq6FmfRMBCO&G!y7b33_(ieO+evfGqZ^WO zNBNRQB(CJFP_D|%dqO6!t^N9Y(ns48857oZ$ja$eOuHGBhzj>>`iA*-L>R8tJPl}( znuE9eH^Zk-gTetQicCTapTb-2IVlvoCw-aLD{*kM#%0iqm`HQuuNAbXv6o5|s&!V_ z0!1w%h+kF&qr}WobR`hQV2_5z1fUNEMvf?b$QeUkpR8c~5Zaw~K*vb!+A8yS$t#6n zQgaqMv-k;xNP$$hbeTfW*WbAkSEkBNu7OF1DOTLT_iSU@8#b22G~!{~bc)q)j7<}a z)|U*t@#PoeC<5jm8lUa->*Ns@2>_TG4?no>hzS9hTStGt9J=5;Nqx= zSf8_C>7$YN{~X7u^;VSY(JB1y9ZNS148$m#&g!JkF8Ij`&|(K%ny=Iv@Z{neV;s=r5Z~f2r-gui z!5j4_D(TC-Z!j}%*1d)t4sD~414SO#{e2Gq(7{u0ad|pFRgKl>c*D)riVMP>Ra3fF z^_EZ?VhC3mG^`oN95J8pTgOU-E*T5$%294PSxQvPz6`?}(Je=y(;>V<4-rh#?6Uy9 zl*q4(E~b$2cFsA&6gF~U(gyrG_dD(Gbh->LI)AfSwR9u8*ivyEUlK2`wP-rZj}nXf z%OlpqXC^~g@G;On53#h_)Vw~VfqqqW=cDBQ7H`=c(_r;rN&;$m*A4+^ErxgjzHE!Z z`q`f^@QEB8WtPzpQwC()fGEvo=r@ft?Z-2nWhu$jljB7Yjc8?8NV<+yqm%ZN2M--I zfxh-rR_TH7lv={J5CeOBY(7tnXsdv{^qKHLs>9ZtSWts*Dx}A?}(aPjT*#gQ$a0NVTdbv+Do1271BbDi<4=2g#rvtLhb&7jVbfw(V!>9MJ zUpv*`;@Iu=%#hi*a^a%;-v{r1P^cM?J8sEJ%yHF9zy!`kGHiOroaVf_N_-5-`T$P` za7^P$=A_^rDadz;GGH)lK=1b9vEmxhCiXeKZ32bm$5}BeIH>D{)X7dnHfV3Cbz4=| z=*}4#YZj?LsR~=I4RjQL9dzc9SF|-8EwG`ikMzGO$FA*OVMN!Hw_pI_&RtbGl>tOG zN@gEB!%6n*_d~z4$x+YE1Cedffo5)LFVaNLcZ+uxk9!@z`jWU5yBrb3uuOzl%C~zC zADD|eO$f~xb9->hfpx6y#lySo&nk^$!$EoRJlU%er3yTk$1-a$JWz2s8VY+5yf14VYK%26__+F724ndM%@6OHCt8j0RO~DZ$(fC* zQ8mj$$mIkk_768Z)w$kajR_}Ss)rPlapoS2$xlwk3Jn59@r3tTq4(IS4=cab5{Fx?x+WObh_kOZ@!pcFAQs@Llwnb$cZwDs81`6Qkk4R&Q5)n);kno4 zSj;hUV5 zgxMv%MrT8}cZ@oza1NJ~OBwT$S#MLWuJeVV@7RU;+dbl`j4f)qi^Xz$l8&4s8%&`K zXxvoFs0C22Gn55G3~RkGqk=h_5Y|NLc~;D;2x%ErE!>k|)aSkV`4=D(^4oJnnDIKZ zIs1c2H@XoYw-&Y^B_w@l+lJiMN>R8vL?q@Ie&)>cfX=I>a^b01T0SrLt+@KQzCrv8f4blhysvbd zYR$)g0Y)38QP4IO#YpC{o*oaat0Q2hYw`aPj9Jj+R4lVI-9uS=Bqb`qq4n@G2{&i(Newl41RQ6 zjl$@{s9l}L;3y)DwXsQ@0rTKt3=gvx?^=%ng7tE{!yp7Q*Fe@60M!F2GnIP<2@xCV zYtiO)YJr6mLtf-ZwR!ZD#0|U0V*JCtzuj+KUz)juf zO+?ze!VI2lds2k+EiSg*Yq_UVl2JF7lMBrc zZ6Y@D{e8<5F$nHjVj!6J6cWvqzff3eCS8TrhE>(4F_y+?|J1~auD%-+>mRW)4pJ3V zn=%RX?Z8ca!8kWuKj1%ld+kg=>8fmh?w zzOD?^ok=S{I_}oXlG61ok6XogNS%{Xee+Y*lf?QAm*>x91 zh6%1NSBv6>B8jm^)nyM8$wG;Z#yk6>R*rEshx_Ks!Km|j+-w#CsdJ10CfiMCD4FI{ zY`!Ov>E(y3QI9d4;21hx?sb1wGmkMT11jfqIQU>RJ7y^!ur1d)R^zW}DQwb*B!-?7nV`#4T}Gy~0+G|kcrlRFHcSPnPn^>}WSPn} zYvZ^?Y$fw$!DbWaOx;=vqsx_XnU}W1y7=}0UvvUV`v>%{?xII5y^34WsI+9uo}#3b z0?riY4^R6sJRuSb)btNnQFju@VKLBT2}sP%v<@QL?HIN`SmQaSb{Nlhz_K8AoL^D14R6r%M3r>!x|PH&#@)z z6Esy-)$WrG4Q@ZSH+>`|@5oq;iWAm02<`q zw39Z}Bb7|#1!R`0&T4V*FYu%-tV#OfkNMhSyd6QgviK1H2l(M~Mf6{*ca>*2T}E4x=NVu{2G{jW^7o6Y4enXEFtU_NMS!>?_A>;g z^r7!hK3r>dmR7%^{0o@7T;kC=Fg>dl>*vX?w;d?qBeRU+j0GzC%U0=R%jg_n72TMJ z=}R0=Ki`8qq@`pFmdl_)8+l$_xfK?Qa;dAq;@Qfbx9Wdf7l+<|s^ISAN|qBQ`rVlo?MKRHG3NA;`6(7l z$o`e(ic*bxHW>px+N!%cq5Q*v2frK%PaJB6q$rn+TQXyl+LHF7#eif$)JQ80f$>7W zHhU`~ZGR+x6`eZr4;M_}u*1B1?Ok~*rC)VC*!Z=>6~1Ftq<-1V^vCGs1+T%>fk-L=fD5)~eC^};+bBY{InDi?ga$?yHSw^?dixO9bO<&TQ*0t{yS~Zx~ zjZVF_KP)Z{WNLHa>}`~F<{9X#^YN-!T8=naBsaE92%?UW=LsEQ6EYY$XqoKcdsr6} zseh9rWuixxkz9t<#Skl7FJe{*a7P1}B;2@be+*F$xTtI1*}{u9Ym5pI3T;OuenU*!J;Q*S0^mS~J-G4*Pa~Trm7G zy8Wb^oMF1I(Xx-i)Ze?BQewfFjAgNNzAD8T0GwdLj%!eK~F1B+}*}Ua;2uE{-o14Y-^_5IaoKN;x!A41>Bi!(6g80|iZCY7{ zo9O=XSR-C%%dk)T84G7_v?+hr&!g`GH zz#9UOiCK*_eoG~{jJrk|0YEQ?a<#__7I4n@a?~Yl!H|)#Wk(W(=Q0Dip`#w5D;wSp zLhxzoC*NF3F2+=K{3?w}vsKv_lk+AhHP!vBn`olwCg8CetEZKf2G^HU$a7ftpmqmP zKf)dwE^d~~w289$GvUM$cXOlw{$7mz;1KaiJw|OHb%2ap;mmLvVJ4;L)^(%E9upfI zdQ4uzi0d}(r6R@exL*o9xknP(&TeiY8*i1z;2rNKoPJ&{p}1`tYScuXjZ=;~-AXxPqYt4i zF}k$YlBarW6&2y>0t(-BWI>IXwTq~vlVP8IybC4qj?KDxyM1!?Mv^^3ZMAQ4bY2vQ z5)HrDPc`^O*_3LwlM)k+96$E1$rq`AXJ6^-8BekBs2TYscT|d@jVM|jT{8VTXGqJ! z6pu^jgIG)pM2{p*dk>Eo@k{S5=`2YQk&OApFx5v#d)2G6XHej2F(3%#%;nT z+5VNb{6ZzhW&08zJaO)aGxetXo-L`!y(b*wPZ#FRc`RJc86U(eA8+Q3hOHrEKcRu+ zsLFKTFewGUDv|xPHlJo))WQEmnX1yxk)uG;Y86ae+?Kq`vU`B>5s{-es5gl|<9^!2 zn9i^pYVbi)v643wznu3>^1aX5Y_sxt5sUW-Pk6aO?IF+S_qO)RNlQxUL>;mp8jT?t zsc9ZzE9HSwoi$_s*~V|>fM{YaWA zl=2s_`=o!>VM&H#(QMV%FEZ|D(@#efHAB|u%Me3OeBDhMFV(e>K)NYoz!?~l)r)m9LA(A-jjcIz`uWbZ1wlM ze?e3Qm^Z6q#|c77elKdzG;C!cD)AJ}dU46A&YcHJqfZi9LB9qAeO*s-=_ib6azlLlFJ+oVRJ&vBhNoGzOrTInu;yk=%D>pV-r;s0blUU1weF zi<`hT%RGOAQZ|v<)t#HhlB=4{GI6Gws$pxZC7+BdO$|`-hxI~WnbbgjD^KSy9SRbO zW4%jo*G=(DB3dUo?b*vVM27;zgH~!^z*0@sO82ZIabU?)#FmEHs+%Eb2KDTuFth?Y zK$*YiYD4h}#%z=|k6kPBByzhG`mTpIq3E06sU2GFm-i8L(8|*&BJI=qhL{A)v@hDP zA|@IRO()sai?r7e#S4S#1cj{hbex}(cFEQd`^iJgH1~U5`MgrG_xKL*!^?$YvOQ^5 zI?v5Xy~NTHy2*6l&BUPUQu!HcHM=l<#+Ifchww-9;tZX#xv|KL&6p$uStDfwJ@b#R zHVKKNc*@(p^rEp}pH%gXnWcTMX4emcGDRSU$_59&-ZJ>%kAuW917S7}I>iHV`vOS4 z^wWbcDcD_`fAQY?-OZw1@!ADo0061Y-et<;lpx=^-RK@74yJ<4#n_kQo04kmVi7AD$qj8Cs-Kn=!9-o*sU zoN_lFL^w{BFU#q<=D zs(al?M==W_kCTJ4cmk#|Tu~wLU!ywvk&2PBj^))u4#qKKoQ>EtN6Lvg5p{?ob6x7x z0GQ=YU(8OM4YFEuZ0S3&i94!CqqCq7rp`R6j`#+ar*dsUkl zyajuyN=)U%1F4VZ#yjl#>Ggyrm}=YbI1B0MA%^K%EzU`f`cZuSFQw3|4(yXx_v~H0 zwk{pqW|jO|Hk$f{O|$mhP2m<_0~jZ^f@(g?|FE{etOM)r|8SYhU`N-!ms6`(j$csf z#xg779jUm*^x|jCi7e^O|0u>{1Z*1k*kGG1s^{&X)FWm5N$hikW1nNHLfD`{{k=Ao zxdhARpww#!vDaff;+rkDt5_zMP5SS}o8Oyy+ZA7jzAl)Vi$JsIE*^ixSBkVW-n1&R z4_=)XfZcQAPF_sD6v1s2Cy8wFT#t1nXo=&TX(_1Z)*swj%1KruI}!SB`I$jA<6AEU zN)U!s=VzaCZ?e}ld@4z=!!~eoQaD|dcz^chR^fYZ7PdRjkeC@yUj7UWNz1MuB})4O z>v+7o%oiCDQI^>2+kw{vgg9G+gf@mMUetRyL{{cf`!I!1LO=4QF0fLo68L{PYsy3m^vZpjJl~_&_SC6x!5XM2{ZLnpjI(rMp>G(~O zQN{KCpoUeaKVd7HL60DZNscb+o?)*NtmeK*Ia!8zR;m_~VIv)Pb!Zd48@0y*Uhsx9 zqOhmYrd+q|vv&s~X>}62Rc?1yDwJp%@JU%6wcF`}Q;&UGHHIQHw%cVm@@S_x?D#23 z?T_>=2l$iVVzC;GvX;oCT>*I&SdQXwKuGWP2}#;YBpGEMyvO-3(+`91$2ali>d1IuGdhS* z6%ZGjhNVQQ5?+}#n=?+u*7Eg0LYdggfeIrF^guzu-V}pBv>!=ITNa!dV#1(YF;5K46Kw+Pv!G?K^tupJId4Nv zM~<|!uWv@C$)t%WYf3}NhE+99Y^qz-$3NOkdDiu%q83tch~NwDFpj&ttlfcT39WEV z$7<&55rNQOnETDU@Y(V6$l?-5;bRuALt`S$G08iX<&bRWttI;oMuA6^;8vn34@M%h za7lmgd)$sh2y8Bj61`+qLBbf-k>|6Ienkmc-|@w@S!qDcy4Ax?01qY_uSm#aJ%%mi zgN*=k$*>YZqQ|JN{UQhd4dQ|XAYz7eIA%kw#j5Da=10lXr{1r6Jy%g2PQLX(s5{|X zj;AnIQx|Ft1ieZg_znx6_P*zdb>?Ak;SqhCIMZj{>Vag z-@g$CF?};3t!DmPiGjU@HAYNBkLagT(BlJZRCHJ<@KAIs3^$81gV09&K`fHK|ZmpwdZ)paVb={!_~{L z)btV+nF)JhL{4y+*=K~#+KM4NmBH;VD-XasGHGJlt`cA~@boFFTVeV-%^4r#`jFWBKu$=8*+DD8mf^4+E7?{8RLfSsFGnFGk;VD~G)(iCD>Y;?3q`f6p5>_aP>$=6t0qVm> z4OMxl8s@&bu`h#Xq86~iSp?Rw>Cadp{SITex+5BojhG&qxT=YYWcCIo?zkzC%>hLG zn&5ggy=x1I$$}Dil6*nZEaNZT{^u)jh+n2L8jENbZuA#`YnoOAUg0Tm+_-%G{^hUn zT8KQ)+n9CmjjfE!2KyWn@!|tJwQQSBZz|iE2;XWWx%?9I`J@?*z$c|WQL&IvkwZCw z1ZJASFI!k>*lDvPOoWYhqpBK~oE-Sdetquk*5He z?2A^u6xwtsQp8k^Qx`k0j_xlMx308*LXyWm>0hFoFeG4FMIO}6ZGvlRa@Zy6JhORQVNiZx0K!~lIx7%}h`o#5iT4pZ=^$nql5UD+_xi6C zb%PU=T71LYI4|A>G9S+pBZDH{Gm$s%MHpA?u;bdjJadO5lcw2WFlXsQ<7|=-ug7POEPA3lY75~KYHu(sV^Q|$Y8L=}r%q!f}{KzpV z5n$DG^SX@hfayFXeHj@HB$uOYkng+VxUN|7&ad<7f~Oq7$&Uj;C% z%;q#rT3!>b4>R#(IC=@`xkz)Nb(s}CAW>`@pOVeK^jW34?BbuyN`o?f zy!~zoWKG3!6~B#Y;kfFp`M%QideE^;&@8CjV((jElG9*V*XE;W!ngtTOy6sf^Gc1< zy4vOx7jfnjr6uq!q27ycsp4TrE<#j=LQLar5HCrTBZuHCi2x{WXSR3 zk#hO!L)y9^P4&CSq>aj;O!&TgK9ijm#}_W69S!5Kh!@LdfSo$bia`J3$~*FkoHufN z^&b6+FvY~%E&HrWNe&fL992}(yZ!QkrdvqF*s}P(AU%WjwcgL=A^v;c!}4>X`N?$c z`qf^NG!HxL<>h;!BLaD1p;SXu3kS-iec4-4E-J_Yo*STNtdXV}nITQf`TEhd1ZM*Q zm#gEOSnmj^uR!E!tT(nIU$3`ACo~+-V42)qe|QA0ga63T6c@hXOEcVD>x7A&=4P7O z-ibSDjxeoIi-X_Nj9AZDPdBb2E=N5oxGFi%79c1Z^6yCV^$)uA$t#XYJcOL26p|K* zhdv=V&I$>rTt!q{_LtjQv5VS12Y@)2>?^K@l&ot>8yPezqEiv|f28~!?@t5fuk_De zD-`W#RIgTfM(awsi6nLJT)n}=l)#p-kr(>zv6eoljgt6{hdw7>!g<8Zoth0M&LfMd zwy4(tTNrR41kfdBkYAp@dsD8Sw4V5GF42z$XM{n2V!$D=RsKxbi$u@NPl6ers&YibELz?F!ZWu1HFo#Kzt*^4*1kpc&dMp&b+Pma!t| z(EQ4}NKLxc{fbs?%FcqJGsnwKKC0PYf2c_vTa2q}eThK+4<-)U%>h}h8+`Ke+Ux0B zLDXWT9Mz|@;h2`ZomA<}tkgt6k1#vbJlb-dzM(~ z^!=yMF(D3lp9kJXH-|;)+x1pseUxH-|$4oojX8IEV-}^3Bo>pXKsh|NO|rKCi<3>CWvtGa8Q@L80P#~k%i6w z0CbOQ*m?`yop{&svzRS7!L>5vvs&eKPP}@ho~?!~nX%}!i0n=0gjzU2w z8~35VoP`;?c`^<`81oCP**mrk%m*3IfR}Rv>3_&1-h62M{k4{N5F5E<(fqXnH`m=U zK_j=>H0$Z6^IT!fl5(=$+~62pgMcduG5YEUT3M>XN>m1L&qyO4iSh@D;_rld;ew!; zFnZ7{KWqdgGwDCnMsgCc z7g$n`jP%XZG`T=cz*Up8_%NZwmK4n8lzUVbRg^x&szBlp4$WBLp|b zH{wAxW$u%%G^Ooe1LLXXT*3|H^RnM$VsND|K>5wI9Qh2w6!Wr#PDBOatGqQVvN0t@1pFB%4W)bqLqM!C+h0xfn=!i*du0nDj3H zY(bDZQp@^>OKrdFQ&%$`LYuIgiRrV9vHnZ2?xeA1ra1R3OHm9PyO_$`Hz5?TKRpXm z*Bc2fc8m42@F9;bgK zPsC`wL{biG<6d zc6rk+yD&MxYJz#oTaz*1@x%TKvaO$r!cdLA`(lVu(9BpzzQkAul)dw$;4*cvQ;7Ct zUaD85D}TOVnjn12h67O{-B(mSivJIYl=m*a~lULx+I%r19${%L67WA-%P)_5<8L&)S4f!vfQPysUcu__V=(Q6uDl$4AW9Thr0g)Xs6h~37$Gi`+8Xq;o+4LXv6*#>5 z3N#|-B}YwNVz-3^h`y@gPwoE{w(z*!FqK#gOxCQqDgjUCyowTrFAU@y3Y$+rWP*Bb zf5;J16It`CG%9Wy$TwLf8Y+1oE_I?uRtk;dNG!m%gNBfn2}bpooEeXTUtC2gAwgC# zd8!tQUr~$^k>*oPRVVvOSq-gzt+ccoTJOPn390Hos<Dp8^_71Ia)rM0lFgT8wJtyF4p7r5}1PeyT?dvI#hnY##b68HrTGXG)eJ3_QifGa7a32#^*fed z-BL}eg6!wy;yQU5U@r=Zj2R-hkvga@^}UEh_<`xRv5AFx*yOLdCsF~+xD^jBqfag+ z^^MugY=J*#=||z)CR`b+m(`>+8s^4I~Wz>#^QFvHK3Lh%e;KS1{FNhoftT!wfPu ztBuSuH&t*Mistv%^&?wFl2r_VxHTa<1V#|%BB*9TJ}B9#)}v5>zl)W#JiNTE#?;kX z$77_{Wp9PUNNnMRkSqI=la#w%909>uDqU)HJVJO2g|TUKkaDCG>lVcdu&_$bJ%oVi zICc{;lAh-{FfceG} ze%F>AGn;2E@H;Ht7PS;Wh2Bq=q^9@~w(tG4(I?%yq|ie{^tDVP^=-71G_>jJu;R>q z0Z~i~NY^z!)?^{OEL-D^Xl!8^jMnCx9Jb^j5SBSRe&>%J3B7w~(g6NUD@3+Y5g()S%(3x=w;tQ$q9{%2uu&5$-1NFYBpb+wi-Om+01SL( zrkzHTOIf8DcZxD0c#$0oSAG}|cC%_iXF3U0=_YO#ibZS{j}nOznex2LWlek;?IR&I z5ra3Y{)LW)?se2(0DcX_J$9s(f7O}j60<%t|LU~sXZfAaCRYWAn)>qAu$8YC##3~T zSEDD;i&qh^}EIX3yn)poNVU%BDpz*r;gC z-+C;;`XF|8bDByf#%7}Wh+cj}X4#{(goI+wL>WoPeY8wbfEvRCMU_g)kF68~!v>W7 zvqz$w*T|?d{YQmoWmA@NyrT$anrbAh!@dl9V!O2KZW3=w1d|vj*TTfP;DPd6)!UAU z`k}_fR&j>;e&P18=eyUo)mI)EI!5Ys8Pkd)c%dav$i2Q7^p>X(*0HX`q++%AvT;L? zEYWOIV5FJ25bx?Uzr|Wu3@A`UPc2&+DmhR{2D$MzN;o_C9OUn41X3T+| ziF@C0bRoH9G={6qD!Z^q>3mx$mtu}R!K5yMB*KvI=%GAq15`KvrwUJ4E0g|Ey1a4G z$3)dGJVF1AiOH1wt9sRUuf^RWL7fI0a+*{-LTLns&iS%UDIa}i3k-h>R3yv5ezc~~4u`Gq zje1ifROXt>J+|lt_6Iw{uD>_xR=OwZW$&@t8z?ujBor_P@7P`qrH8zABJd?`Qs8LS z4f{5UB^VWzpL8`DrtAY7sa;%ae`k{H<-FvIaymml?4>G4-TSGfaYJUUYk{ybsOE^X z&P8!+sIx_+iq8J?R|d(6oEMnaJLNk`ybL+4yTn0j#f?`u>k+rI?Aq7>T9lHn<; zO_J2B;TEb!{o?1Ah*#nFNJ89-?L=e1I8CRZYdrzFbSh^hoL=dY18$|~EFTYvueqfs z1h|UpJ`S0?wqO%nY)4uzvU&Yd(&6p=j{Z#+#DMpT0D3-G=RQPRfXs_+U|C|FuI$7w zpn0H?*u+7RS<0Cv(!m0h+XyeL5uu)eaSu?xkT>j{l7wyd{g!d2{b*)qxDpZIWeh3T zK2V%I%#PFGirtj_6-n3VI#ed}6wRU*N#&>5w%P&0dUdB#)Zc_v?BrscGRwlw!TC~- z(XYWh+VD=q2Gzp%jx)~5;wyn8zfy!*4wT?dAhuKR4%3vRXRiV1AQj}yzb8&% zM*WeB@~t;&TTM@um*#*8#ghDkB4TwSmP`(DcD~Ok4W)q@#Vvq<1B&#^eyHk_do5T| zpMiwm4xMm1-ic)6rsqog>qbKR&>6W54s9+sqM?@ySTs6$lpk@+au3@X29SCV*VmKE z(j5-hlg_^@*%|RC%SRKTSkXcPAF5dx-HOI=;W`@5JOvym7j*Wvs31KO;>V;qlYJJj zxC(6honOO-OEz{P+_n{kE@gq2ZnfkwF%6GUVt-ttey1ECikz`yNH|y%p$Ika-t3TU z(h-i!P8S^YR+~E%le|vAvIQ>y$0P08(+;)Q`RUDAu)D^Sqbk-em29<1l9Rl&zDVy4 zS(Q@jgs=tAsT0)14<@&YJlTmA*2z*Ex)vn9v;^2SL@U1I!gj%k^ET@2x?Ml3uetL8 z_muqB(oQzScMd9DFe*f?-nOBt$Y#Es}x2CCnx~EhSe@ zj#q>7+LNsugjis>vWF1S+o{sSDRv4j&qI7G`xv~ff~L>Wram_d%pTWuAtKL`es5+dj2Gn$h5xY zZoS>r!vC;zU4Zn>gU<_zCXp*5{j0SSkJCp8_gd~9O9_<5xxfDhjm?I^F?TFnv;32S znO$Q9YE+%(F%!5+ZdztELOm4Nb^|E=$urE()k#~V3EPrMT8}@Tb=Nbs&eLCReMpNM zptg^--sT#ise;d$uS5rZH6Lo%H6VTr_V*dI0*jUUln5biPEyfXVr+~oH+((j{^(k& zGYc_LocBw!w=u=w-28Fnw7&V3_#1Q&$|Qp3%_b6xqI641`ST78C~_vY-xRfB6xM8V znU5hZXJ6!;(aHsGQACc}o-|bQuRU;l^tx5bjJ@ip?v?`elE@5IGsj6gqeTg8-rbF$H$v~pqSPr3NyTRiD2CNd_p&t1lcu;lfCy~SplCM%K` zci-@+oU8judkdL`k*C>&MD3w~b$k543E_8}OxO!Cdx@5bn5BM3&s%$6eLY>?eW&qK zo;$*vrmN0Cp;qY=Z9mt~3PWyv{XRN(m;I#?HzNmaYq8(Ws>%C;GaXzR_<&7+s@DP| zj>BvTFTdgDHE2zaNqk$B@rU%epKnwkwskH086=4^oqWUzQ4YBpw15`5G?lrOxc78w zjhiyhPaoj6b%K2>68tq#Rn;pIx=%fs=40)|42lGZZ{9EPbVt`Pf;+fdP6;mLml6l= zGZqIkwUeCmje|wFRLKAed#It(BDyj^L(wHC=p|%%ZdyZ)9BG#(;b540 z<_q+gZ&N9|T;4v1n@z&uH1PsW4YgK5z8T#TyzJe|aHu6}?k+=3fOa8Pm4+kDFLT9d z553_^Un<~ybB|QE5^Iu3EO$1b`4yV1X3sm6H?n7Dy{hjbpW$(J{xR0_!hhZOn>j0E z*E%FRZYDdh55wh$A7=46W^#TmuXESG7zp8dR@dp|$rM@rf`6AxB~= z%foaLs*t+^*5fJO{ewJs*oLPT!ZKcbE8ME6G;J z7kh{^zBA5*52edKHb`fE$smlyA1VHFxLDJ&`tY4ZMd86usML|^Q)@ADv&y{i7!tIs z1on&?xWJpuJcGKk^~3b*?k06pr#~2z0T~$!>PK~YE%z|45@)>1v0o5#7|Y7)yrvB! z)fI7~Dc-UJDz$}6!pT{qTbT0;poH4n#fu(es3*Bx_5xb(T6>IjOy`w#c_?eSqjs@k zKz$Bi(hR1)O=l7w9BQ@xh+Gs8Kq=niV@5#9uSRfucqf+rh-D)y3%Ee}!w zSy`1-M{$QAmRGI}zL48rH`uS_D7?qr$M~vTDJn0HCrH?j;bdn#3Ns`Hxaj-!Fa4aX z*~nTbbT1k`BAiU(V4EW^t1P`}xF;mSNBohX6IhSSHt-a?Z!B9gFf=#iJ$@?kn*R&n z@~&tt=r(tI-9SOM!#8jtwh$l*a1)T~!JNqX6OESMPa>N-=Bk&$^*c`3i?q*sm`7kC zldw&JInjlg#7y*dOtr7`2s=EzU1uxDYQJsV0l ztZWh!c35)&;^NRzAxv8WGZ$Bmq|&{c`S?*{!=hGdS~Mlq7b8ffhc4b54Vz1bTGK^Z zn+`4$SWYzRAz6LFspmXFz{#SB>+Y9D)vC_xj2`uoG|Lz?AOT|EG4!k$f(bHa{3wpV z@X+;jZ^@%x`86l)RUBoryTgMI?*$fgqH&*G6=Ug@pD;@8LS^XwW9E$<(Zo&eHRRr=s_vrmnPn34Aj$)L*I>IYN(RHh%pI&UxnJst$E0lH%#t*kcgJVZRH^FNY}EH!)=Dz_QG6Uk`6mBsU!!LJQ&wqv#zjDI5s?8Y^nNBn#9?7thy!0 zr#dEPqg6?+<~&bzSai?QmrBv|S9;VFPOEdivgX$%WEGFh=SGZ(ie!EAhENe(r#2(^ zv3A~QfYk(^_ndSErfA>~C9>z>_KgjC*&XOH7Uf>;tIV_C%JeyBD45Ea=#Lq!5}ASg z9l~itFD-1DsWUt*a-Xb`nF9g(YRG4DNe}sykj*C;mQ#yuvUNv%mLufe_Gzm3_WZ)* z$88h)r#HhS^Gy2>HbgS1`Ksjr3Pv#14wBI1UPLwcRFUnhu;`{p#H~(-QmoL5q$Sq&Lx+T_4+V~MDmUw`v%i2~G+8z;r zKn%7U+t?U_>rUNGX2y#9 zO(YK&@&qV4DaOKngQ96?DGz8CV^%S-#0N?Bw|H(2lov~Jp&uo>{|^9BK(4J2$q(>&_RTGlK<7N~M2u%>IWNnI(0pD_8)6q2^z{4-E z+b0=%wWrz?aVy`F)JX{#kXPOVA{<6Ksi(_*)pzmn>P0HG1_^zrxIkX91u?pMGQL?S z%cW)4Y4q|0cwA6%aps6*84rjlWtK_s$5QqQp@V8I{(BzMOyyT3ENY@{%HXXL9@M!r zQLZE;?=JxA5~t}EAtCA$#2kE((AEQuHo%~cZXt6O()0^=+hp|+_jhO<-YR(97OAmF zns9nJskOB^uyyq2g`)ouOTjB~X7B$F3+VDdH8PW*D8zxJPwj7HOW=wySKR4{{S=2{kljg&pQf36A4me&=hpk zL{L=@z_#2(uJaHk2`{klL6cS+e^?S+kgLY|_}69yc75r{ktU5==UH#&#}E zwz&h|oyEH)`H6mH+uSANqSINi95X<4_YHd=%d7J$yUb=4vW_7dUEXgV=37Z%k=TUG zCVjJXo)H%dlVB!cuxy=EoIEw2E2{DQ_L! zSIcPQivHa$X|@@OPt3IQ0LXJAX0sv6@mzZ>%}KSM9i*je5fTS^m*eWwQF1ptoM^Hb>tij~v14xJ zLR7kmeL6ioS7ADLq8_N|Dln(&thDnO{{Rfx&9=uf*w#MnW5h|8{{Wayf=;m=#FWH` zUttl)z}s!nL`MXAknwxecB@d^p*-B!BFjRc)yw)KPZcb8?Hr5M{4`c`jQjg$f(|2S z8LAfT*yEC?^IQ7#_Vowr;}FQS%O%3JPZD!co?8mpVV77iOBOVmi6J$oYw6r+9(oI{ zgMj3R38n0~?`^X}>#E&ot5GFTV>9k?B_KBOD*drGs*A992$2x}Jv8c}JYESAfxdGN zY!x3LxlkEZH*N zL~*1?Mlg{nn*4ZvRrrsBRS{{VOAB&EKYhbF|P0LiGTVjTpJ9;BK; zX%UT=BQt37^qm5rMvs`;7 zb-DZ`GYOHe6qG2BILLdZTOnRNNFHfWPSV)+dBzfDRAWbz4c8fD-7*o6?%-mnnOyNq zl`||9zpqZhJ5gP2@Nv)8`-BawIY6zYkC=v8W0oX1Cf&nrHDhbkTkP_si-ehus2oqp zINy z(mEHn6QR8Qgeh_sO^QmIFASdaM_v}%FmK#EK;OwY^kas2b^0?)KB*j>oZyjzt$=dD zmxVsekTAhShs1jmachY10c0>p%Z-XQ7@vz+kQY)+g+a`h)8VT&^#_Z7AD)|{)MQQ6 zW|TVRk7G30lhrs)TQ5a*snuK;D9M<)ZaqY-mD=LxC1aUOGL#Q2VJ;4e)$*0aP#)o^ zZK6JSnJT(X0CJTGM&X;*UYolY=hLYVHzw zWMlZ;98D?QpJwmm*xik@<4HZn&}G}mWXYJ7Y+0OU0!pAd(#}oIL*dkt6BW)LX@HjV z)#lBxLv_OtKrpgw%XUOJEPM*zHnc8PDTQ}Lsu9R;SlD?eDxWg^zsE^9&Is70ch_@lPc0ruj^c55vnoO*_weV#}_u9BAI90!u|RIfKtd-WwWiCvM@R8F_AF4cBp(gfi7$3NH6hYFn8T~Byp+q2 zLSpvb<{b=1$*TE<9NVjlT^ZAKT6!?P$vU8d=HTZp9~2&=)7zsvDnurU8ItT~StrkP zfqb1eNO8#wwuV7tNJQ$Bsw{c~b)$JWhev)$Ce@!^m zDjglq*8{cBEhw0}N7{8-x2C45vL~jS^BQmwqqLGjZwVnb{N*1YXaX17ggyxh)dcvS zmbH3)J+~JCG#p$vLzE|mC9o_Y9%!F-mZ(R9vY7#7RPVnNR`CK7+@ykCxb029n@Y~< z>`QGsw_JJ5i&HGC(nVHpZ#ud{1vRu#mks)sg|?C$XaRJDZ4$ibH|)#f%k>Hhr1-VQ zrcGsz8m2Z)95$OI$k{vyOv>cx88fhj5OPxZY9}HrnDbhb9w{)5sO64W^24B@9(fi+ z*DLP*x?|BZt`2F{ULi@SbatQNS+;g;W7B3WER1a=13kEDVC%iFW-oikBSUYs#GEtu zfe7^=t5x_)Rb9DtdQ7I{JOaxmBhG2T%I07Lyh!$;xLJ1m*VCy|DYZuea(wB^y?N1Ds6`fIBik7eo$NVM)20h!g-0xGZHBKHK zh*&oso|?ZPk!bo?R@Xa?Le88N=@rjtwQ4%(P8B7@(-ejCp0_k2u}sWL9;d0vm}U z>F*TPB-1#;b24NUsO~OHy$@+B{ib__l~WQV^2^hqGGC@ln_97)*DuDa-aRAJM2uOk zQC9$+dOA;!-GbC$7ZdXnD8wWRD5%*fc_Tp)cVG5_3Xxcb;|?r}gv0=4v$_Boo;ezP z2)uhs9i_KGsxnezjr)trK?=ul>t*izq?qmbdg{Klb5vwVlPaZbe#n?&SKl224sm#x)Qu^e{W$4_s_@!A}p9@FOHK#h=<$PJD` zI%LTfR_)1%4_Cn`jWmH28Z>c0c!DXojhK(ip)uvptHPOFc0r9R4XpqNC7e#i=0(*= zho{YMx^5vRr;pvjSDaM`dd4 zhuytY_RdL~utqqmZ9@=I6z09KH=H0sBI*fFb}tZd5Q&PA6~F*Q2nP}GKR?^u^KH|} zu~Fn^3qqp7IgU$~LIkQ;OLmvX`n+^7>DFIIr`g`JWZ;&5TZ?p)RPAo zSZtvxPg?MdQIv%NL9-++%c<8EQED^k+%rVs*!f0+gif!Cjl_q$pyH%O%`5odMCzpB zoO*Of>fy&kJP<#2=zYF@e*WzguW61G>N`s@TUTaVI{S6j)2N2Y$7`ji*Gnqtvl?(& zFLc4hY9gaW$pBgIh=}ezL!neFJP%TOGep@+bL`w_p|-f9IblBG$1jR*EeVY=`c#J^ z6WAE!q@1R2ww8yR@ELW;6VWmBTwlL$_S(|M49>^I|7A7kw z*Kv|`DpI$2M;M>%={f$H(apd9kX02S#mg|m3G;N`l0*wo8fwV@gp2~&= z$djg@u6XZ?g|{QaDbZU$v_Jzbr-=@BPT&>VgQq1XZ9*`DslF}&W9cKes~x>>;ifJh z>6g|npyN2!MO%c{V~(YyN1wKCeCju)S5|;~Lw>Hx3$3M#&j61$TmWqd#DIXd>TK5l zO#v#KYH&!}BN2HpcRX?K3~mYXnBVWx>``V5ZIC=IklQ881s{qo)xKT6n`&oca zON!L#v_}5`$5oV(>GP%|B&H!hk#Pvt&j`QTi(u0(dxRHTZKoYFEr|RNQ2r~dH&cEU zDFr>|DDvHqgKW%k?K0?IuOC*mRdil9c|xA>+9qf7ko?~qembb^%1#-qLUkA{%Yf1|$tAqoOm+s7MvHhz$j@EQ>TP*>o#?*p83iNOj(wbhAwJ>J5Lr zyVFcpA8OwAis{s{n;OR=dNfyE$EHY_$}*QOv+-eug;nQvK@Lb=SKLh-jH~=X2Db{5 zRXHvQ$J*L931Zl|A%8|4NQk6#NyaD{3|KdFMEZkg%#<>hZG!&+bCRjb+whuP=Hs7sO-3N zqcc}vdE!DcMWXC5Tvc!Rlli*ocpQi2wk|SFhfv+S5>A%?0M|zrh19(VS+6c-wKckX zpM1qkS+@}sV-%>f5-CSU!?|GbG$zRlym_Gsr!xWRw-43h9~N>(;$rECTkY}3^JG4L zoh?f-8iR=O2#!jFlKJ0iboFRFz_2}5z~bLZ)x5gjF3c8M$D^TcPrqYJD`}p7Jey=H zmj*0}Ga#82 zI>8iIkY1A65IkUcmws8_w<~QT9-6NluTXMrG|MgIh3#%lrFj;6YV<1xAU@Rkc^8EO z-f>sD>s`;wJ^lO! zy1-lxa$h>C!;^0vBFzG1SyXUGgR#wCPG+5S&mYU-rsUBVhg*u}ECHSFkmN`syzB*% z804dFI=%fAL?#52G05;^;Q)vE3&E4 zxt+UNu$z0DIVHDR2CHR*Xq@>xf~F*ZMbz3Kv?^SIf-<4VjPSmWbng#8SO{lqB(y6gpisxlc$u2Bp zLvA%aMI0#2ldn#athF99LLzQBf&hwZ)Y=R<#JJOAqh&R2m<5QH&){Bu9WnS0oi?$} zvwfelSH~>XEW4AU-Bb7{hux#@xjzw&GSb+ZUvZ~8i>10>lHSh1arqfmpG4E>f11sb z_5H3RBP+6{i8kh#0ojsVuX;p=7%3c@ZM1a&;#_G(qtnI={v??DEke!TcK4S{-Z@Eu z8b!$mkS%1+#ma*o z&g){;LX~4@Hy_My(O^>{)heDrS6o%jD}@bYJscTz#v3O}Kz#tYj7gY3to{0f6y882ORCWL=2E^@wn(wz?)Kxq|2PpXZ_y%&@wDZJeNFo2yQ{^+M3$0 z(%KDkJDd7SyJw2jV#LKE)=PP|oR>`d>`G=!(<@XXS2ok~8&{3NZNqI87s2hroIzXQ zhNuK! z#8rQNsZ3Vn%zf8DFvv}iLnSf`5jT!MX1;zY+oeidhC>*eK~hYd^zL6UUD@@%-J_-1 zm|k}MKC)@{1mz8F3>!E%QgSNNvV%qrS=YNY_%dREGwmitkykt=A~xtWRtBleOi!b6 z9fj@`UMH+Lvk7Z>?zzvpdzFG?;%|ll?FVyREl|@J!0l= z0{;L;plO=^J;)-TFOHL-YyPWYG?e&OL0%Hrqc&`Dq{-k;jcHF?VB*bsJOXXjQTpjd zeZ(i5du9IsvNR8mOU&R77q3o!uMR;+azZO_d$EGF;fGAk2@e+o&jJs>PbF~mBB#r7 zn+P(yaJ7(=@w%tfm(;6+YIPQClS#6HS0bM7jUnCD*xT1Nn9YdYOy;bO7@Sc9*spv* zkhwG42B`sNYV9ck_=Cb20ys*&K;3kC#GG1!fw{0OZER=Kr=@V#X z)6LWrTX5SQzc{aQg8u+tiXe|oTgT$|xrHaHjULZ(s+R9*wG-0Mr%aNYC&jL$4mp?N z84jI6OmQn8p2?ZL9y6{(ao}wayGCp{97C#`*;ffmpzu?aDveEtC6lKyfJSoUvgR%T zWGXl0iX%n^v=2LO64bleJm_y$W7KINPegJnS&Pa2E4Y2JraMqMokcs8d%ha4eLL4( zO29BYmr5}#!hR!;=XUdd#GxA1yNL5jFqA5|7cu5QVpV&r*FNJwZEqGv{LDm$ahTV5 zYMWH4MXk$+@6J;}vjD`Sl9uH+8z3?VP>FjS-aef`8GX2*^HE$#>hM^sCAf&PUYdj>&epKrpA+ZB`jHoE!N6Jc;XMV>oUb2trr;;4oW;twNg=3UPU z(^V=Z8#BqX$+*Q;xW{(#Ri-gM8b0-n9aI;mKaW>LZIJ>=Mj-@AL_~yRk$hLLOd2f; znL%QuF`R{wYDhU@ZbOD3k{vQH6ic2zF&2qPMyTx5~^O@!nPI5u;lNUw2*F07{#@QmP>Y+H@-bydOUNJYb{vyAx8 z8{z)|VYpV3QlVT#o{Xc1b<_b9E{MHIi)kWl+t*Fy%7#&j3_|yGXvG7?bLo<=)Sr#- zw7wd4YX+!f`fFi_zd=YAH#uY`2Ce(1$`wOVWJMPWwrQJ<@vvCVj}THH(kHV1o`(BA zpxpw8{mZvQ| zsmQeFO(0`4ZlH0tL}vn-mJ^84Sp(kI|!yxygwz%2zi9BfZDr)USs)&yILN z9tK--WH|_q8a&D1DyiNM0&NiUK~=x29d^}LYi|>XUhvS5W1^yfzN;99SbrT5o}+&h zoSRuR&Ssh7x+zJbITgi|vBxUG^9hz`S5pPzb!%&ya~+IO6i16Bibcg5 z=d~LBb~BW-DB`XvX6poEc>IEjOO5=?_G!XYCA%D%dA8eE5iTtemB;B)5$!L#Ku(l? z9v-eea7vktVD)lvj9SYRe(x>TO;n=4tfs$lE#j;iDl3zR+_0S`Ta;k)4LqC)!*tMi zsYo~@f#=C4XH{dII%8*>E|H;;o+XY=UoynEb;MKE*KW4WE=&B3h()&(Gc`p`!dnGB zUXk?f)xBb0gAR*&dBSk8%Grp z;#KOykwvFAyO~FyCCJ`C=}CS+CP;T-R7tS4YV) zIJV@}XoV^dI^&s8$T`Ylq*swmQBAZ5K3sWutvCXy9;-T3S%if#;V!nQ6p)tK%>4g_tGI4V3%1WDlgI;ltEGU5fVj9MI54f1WUQFk#E>5*+;5AAm8 z!<1oZ=`N+YLgzFKu4#`_99O&X_-eN)7>k!Ct7F&rRrx{2-u#Os$nGFJyqPkglWvaZW`Tz7RA&MH0fWRyCunc@1vaMV5`rZ(AAnK8?fpuD2UvQivWj6iWeq)%Op zaf3gqcBhYDPJ|i_A=8|DQ8K+CoH*WVO-TjWkmzL?WNPhhNfI=s zq_wEr!D>*6v}L+XEG3=*c#_~mDRLd7+tcRIMVVdaUXQg1u?l>?$0O2}wV81b3AAQZ zX>g!hybVb-hcY6!kK`@(1ln=44)Me0^J<*KtBZ$ZQvIgT+>t(-u%xo~%a?)=x&>qqGY=#qwP9 zBf@QT#}=D1j~LDEs^|++E??(8t4kXS^Kr|Xz;UZfH_6co7q^E2pXwI!7u)1ZXWXWtAZGe!i zkfqfC2#v+{VhQst*ZTDvek(qrojazTmdn#TN_DhGf512`0mNBx zWzbehA+DbIxgGL!oORhQ5RntK=80kck3A-7-YrF< z`gMwFeE09hfM8r@*?MD9pkz^=b=Z*_hdG-$4+Oc!uS&3e3Eq8;$$H}%HJY5LZ&t_k zeJ!_-lGW3i*CYoA3lcImh_8sCjv>`c)1kaYHgi0dn-FEBaR3C+Ox;u-ra_iS8?E=K z-_>mbxy>Y*x={-lxs@JPXG2?SUQ}5bJ22X98VE@-nXv)DgDQPv6>7gD@3{}=-uwun zwECSSssm7tM-``?X!(o^h!W?P1S@QXwKGw^C?o3AQ@VSfGIB>Fx}`MR^HLM zTStbEu7+j)l(MNbT7`^g>|GeaA*9VVlB|TgT)O2HvI!SMCO*V-Qo&trw?H40NLxx|!zv69O|ocB^)$)<#EnVV`!G;msxPEWN9??gV#@%140cYQi|W!W?xM#nWD9?_fY+sPL+7EyikQ0r?TX7TH< zW5Xn^3C^i3sW7Ct=#qdFPLiSSB!*Gi3^|-VHjg8UfGP2j_{#KRA}1MD0yeqm8*Bz5 zL|GT@)1oSJsVQ??d{lX&NwG}|{ivOVmhXpf>bPsOjDt@~UOj(Wb_G>mZ34bL=bZQW zq}!)k2|P=JBnj%=QWr#jQV^0VppRGd${jz5!I{uzazaC`nW%q9Bw6dxFJlX@MgBXr zsT9U4Nz92M8Ap``Q91!&S5pz|b<5SRtR{~by}>m|u5xQ=k5Jb@wZ&*5&jz8~UW|bS zc1%eDwAVtotQ8PA8Y5<+N=hQ6=gc^jDqX4KZ_Gt+o}qOB%rgQs6;VydseQN67hX1G z$5o8pPYMW{*$X8kOcLE}A-QyXVIH6~ZiCa_AAPHfjOuovTE(!bcNm*n9?v6*T}x{! zzM$l($0i{}NMOpRaauQ1=f&UE)mOy40a%$;kk<)RB+@|7oOU-FU<~&WW`}dgy%sMY zNa#eWbe?;IPs_imDOhnK`2EZK+T79&9Q3iSxyC<+V4Ao(dt<9o$-BzGd{hyk#cdv) zB8BSvB{6Gfnjv5qBv(=GndB?SsD}{O{itxHA)8#Gg?cv*jlxOC=O7+93)!|pN4Mu5 z?(Nz}K-37EY4lPk>-J>eU9Mqt9sUJnwi#V77CS9EB3}I>Os7{d++q&Oc?1u&pcJ_x2CZH+;YhA~GT>UQMpivma<~&5M}A>Z&;&yvXWarp_C=kQ$2x>sB6)vuw$RgkwMK0hv{?BQS{DVB5st_eD`p zkLl~(yfMP@{mML(aNCUFmJHmtr!ydU$hU4y*jsPMRZTaC5yTl2o>MeLOhaIn9R~LD z>ENAy{XO*3k%@Tn-Prp~LbM|kip88VZXUBXW6DVuBNU>OY=0GwEb~^>oD?82+kS&_ zG}30J?hLwBS$QHJB8-bjYBpyvB*}3t_Pxi&G%l>m4bFR;Jmg6cwkR0jid_cd;+E)F z+wr!Zb(()^n`9LK0REbTbv{j0tC&-)f;E0U0ft#gFSTPm{w>b3NGy}36<4?_;3=0c z(l9E)Pl+NldV$lM=KHyTpW8a4>S%mHtd|~Vfmo17Tt;T47+Vl~-Ogfl1T+nxnF%jT z3ghA;Sq|ThpL#AYm*~ff%G`c5rV+ucS#g9QQq8-9VY?QUpEm2s?L1fvYPWNKC6x+KFbs92-A&RH2`9| zb*1ALqT?XLRs(Wlw)QH=zhB82lPH~Ro`!KdMmC7xxy2nI?2&$*)Ot5MwZ$<4b`pwX zZYK8%*_sbrO)@0FhyMU~O*H1eVtwIJ_n{Oe$hY>{3)QtmdVSiNah*Gve^+k`uD`zB zbmnA8N9^X<+Dxo{k80{plO+^vB8)%b2)L?Z*5ZZ4lZ-B}(eu;Qc1Av%b(qC@fPmugvh7v1H3L~d8=#s~REA(m=I)S$y| zsO>5(Sf+|o(V8S)$=ggmfGADbTVQA~3267JE+6_>LmlHk6FT+j*=K~K;sz-coP&Y2M(Dd-VK!Ago+9m?a2#L zW+gE^~`)BgZU+G%C1I_;=!TAd+V$&;1Y)-4@XbiAIy;(k3AIR)ptc5>T#JV0tXe-$F8 z%?Xj2N1^aX3vejZE8)&@(QFzw9>mPISri0CET*Mp>*>>U24P1MkV@z>q*<4y{kv1l zwN855s@kXOyEU1BX$u*SMuU52?27SYk_ zx1Tn(#Fb2`thjKt{{XY*Jp@SvoHQPbmRT+I4olC}pC5M3TkiRBADFDYzsEy5iY`xg!}yrfD$WWZC28WroX}pXE}h?HjenU0Ug^xnjMdd}7KiqOu4rh{pkW z#Sa}XSgg*7{2Db>S*Ou#l2~Q7l0!typv)ZEw29E~EV4|O)ufpy>B~;7wU0F$GBZ>o zMCwPmHwB1(U+n2qG15@TDc_T*gNNVN#9|bSde_tZOEJq=;v0r6NNuosL!&M_w;|Aw zB!%Ei(1?1-+(O+psm-CteksVl2*~n52vZVFOQH?8ZogYEi0NrknN=xGJfz_GVUn&` zE<`=QFJG$I>Z-NVKximn-DWt=gqU)_J#B|DxcKC{=v9>xB0Tdl%2dfH?Q5pfC|#Kh z1ADxnFADGizqlukBuiLyT9~WSfudEGZvhdQk|s73-n*@^l(8GzX=&^Vv9uARN>X{p zSG`8oLhQZw7mhzS@Lfaj@oO5K4+*o$^4Q6ZW)pH78mt|M=T5MQw68~lU1@J$z+0@U zwYVuwG_5#KI^8?6TxeSM?zuRe;||PtsgXtcv~U*9?WxNHU$hiG**FdFL0bwbAfaV( z)5-V~;mK`1_(eor{{YJZ?_bSsf}W-6(^rS7pND2W>D$sSgJk#c@paYhV6?c#wY6w- zI((7*MpWdFcZcIJj*0i9)*{j};!8v|L^%W!9x~z`K)AlSPI6Txx=m@im+JF-Gi>>v zZV8pi47U?Q_IV)fEWaHKtF+^7#XxYLQa*}KZVwDiJG%aFEkT&RkiDte0V;kSr&#@1 z=`qE_H3~Iks8FZ>0EwbVob=q9bcf`$`oVG?e(m;20k@3NwLW3hSzfKliN&yF6y+8w zEpuDBT}v=rL_u>EBlTpTDEa6!upX!mVH5^jG|0@XrOe%m-^B9~`?1SaoikUm1~N>M zoPx&CT!%8sJyo1m7u+-5d15%_s4Jl5mnaOj4U>)%wp$SW2Wzd45vRFKrJX)IN)j7v z-fYXE?as{=h+4CRSF&y$x+D6PB*Le^9Fv|v1Yl-2zB{m7R>gaXecw`P^^e+Qdec2KswISIE;{%!#hhjiERi>!lm^%nc4EMc(Q}h3jgh=ulahy<3Z21^M|okRlH6>~ zF(OuS%?Lz9?{9WeyDEwVCEK*DjND-;a@i*sLUKSB?&QCU2>hxA=d@R8Y2jU?7L-ty z4nb{U29lPo$q`npS(z{`<~T2tQ6#Y8ELxV#+aOnvh4&jU;NNu#M9t#((qxnIBC>O) z8fGS236M)~_`Y^6qu85-%N=jtBT1->&fH9sGO#6!XJY)_M1SGY4?h^q^ph6T`@A}w zvMY*uN`t;)MM{;Ns@o_lBO-aKP;CUJG}NId1r1(*k90n5d4@MO4SK&;YNshF?Mx>I zDG8#-69FDby6=!>k|8MKK6_VE2aQRhijmQmo=)|-Zd4UUvGiNQ{{YRjbsTFoPL^uz zT_vRJdYpGNxMjJRfz%f<$ZG5*GT6YL1qB^?$}EEs?MO0t8;~jV;rXvssS#=q z;^(~%LZTKQ60(L~n|K#?NvS<5M2XP_`67a3q=-27*p(9%^(H7kw&|u1#E6Yi093hf z6kpP-VPp0e9j=p|6DWwMIEqud%srhUQ3bxyZLe!N5MC2xoDxxB<*%$5g=^|ug zG$Adpd%;yLaKDwW@cYu`G`cOkuAU3~HR$V1bq`S7{{YeN&+>~nHQ8<_ zr+%*~wBe+<$Rpdzqp~XC%rKep>K%-)V^Nx1uTUC7ZRBdt-4Jo+2EBPdh`pK&kJ1*O z#5B62w0eC>kZPqFkQ`ro-CrggR4%BTppqGlgFLcDR<$pWSBhL6RH4XaAClYc9Bbbe zfX$_Px>OO$Dk(#ahcVN9eMb|=U zu$e@aA;%IzMOE3pUWAKmvAKOo@R7Y%$kdEOB)ceEJqR0Vz6x79!uGY_!^CWGLEw&Y(NzB+Rm zU7t~9_nhXno=PZNLgKg$ybI<2C8lqpTuCdQ%C%NYjW`vNzrxkbwn7qXrCbwB`Q!3j z6$p?}*+w`0N8EJ~gY|VH_QP9n8G%5K!5YXebEZ90V3rM9+lbJWR^AD34H2!(9L6(b zs!iOF61FRCw_n2R`$cqh`aty{xprTw_}q!m>+P}WkY?eO$rY)OIMpp=`fP&cIzG{d zZTV>&pA{|wGXWQU$hxn1yMfk`!~8#PW6|m@syyfsh@qPEnhU1kuyntvM87VBy$Q%Z z=RF+UNCrjXIr>CX^7#1{r8%>o$nr}({cEVLYFvBrdkXc19=M*ku2bZ2s~P1Qu6XyG zZ53G#;PG>EMH1>ZkWHAR%Q78`f`V8c?2&OEtKE*?i|6v`twMaNtDxkC4r?od;@Gr@ zk5nv2rr(<$x_A0I^(Ti^fI^9}OT4eNb;7?9rEEY- zM1c`9Am}5PksRrkCb#ck~fO;y^jRc~NifP@=rSUmz$?5guH8Ccm@{L@dI(?bE z{AkrOBs%wLwn@bhbB}BUc&x&e?G}|spv9-sX|6|l5@0R5c?W`hp^)@aKTrt&0CtHt zUq&PHf(nbR_yL%r75-x!hQ_7a;v?N{P_AL>V!uu6bt5m*xAB_`T!bXn%+u`OA7bLB zbw!QC7jq~gKVA)cIdQmqShHfj+<@()fx$NpqZAXA{{Rv)`m*d;H9~k^unK^K+mw$! z=EV16s3b$QR`x9ji7B9aBHGk~EYU{ei-pvF1&MA;Zt19(3%<&AQx>wn)r=qfAu=r9 z-FZTRa@AYavR*qH=&@!wIq!0bACz-#;!|{6-P7H7>E(8c%`#MpR7Z|=AQLU1IW+NY zG_fFvhC`QX*h|MwCsLL#IzhIj1=S1)fQ5f1A1+^aZ*u6m(}cuqGAcRQom#}Jv58#- z=VMaA%G%n-(WO!fw~+q;Elw>Gyp8iVgiHAmIt!gTV==;|1g9dW+7J;nw7Zc6M%Pa~ zaro(WB-7mn)>Ktx(I4pmtOT9Co}IY*x@*;^p@kS{xXkmr*9{W@*clxI0UnEGwgi#<}-Jc>3ehElx_G`krQ-jgCtjMMDGs;q** zlauVEIq_|vP0xWTY$!xFT~?`0;n)sTsxK);WiiAC=48Es1Lv3W>CCxp#$ngq5^c8C zI@>M9;5|J>uR40ytA3{c02D1$%rGqIQw-nI;_JzauBmsb4Za&f{sZY99*YsE&5AaB$9&Yk zFNfv)b?3{|7M{82*ABalr!wqbzLAJr<5P1dAiTB{;#)7~E`t;UHK_4lSjt31ZYdit zm@A|xB0f9g9xkYH{Yk`@*hhm>bW7c`^Z<$#++L(N97J@?B&6w$B!?0UVuykH)l;r3 z_kVw$sviK?$Mi24jO+IbB%C_4Zab6tM z%u|0s)_6g#BBs!1vLzL$@uS27EPdSpl)!gmpNd&>Pn)+$zN`dD?zq~r<;ASTJI45m zk$77ky*~XB(lu(jwlxzs(&}j}awtsP#A=%6(nJf_WkfrNn26-KqB3mbz?dj;kND6| zVZ>hOyYa2upiPof3Jh1LN2a(sY>R-cr|lCa>q7AO{O zyA-xXZB3u!G9A!D+n^F?)T&il43--jgh?V~e(oeg$|EeZ+9rg9j%F#iu02a!RO2)O z9F9^-Vd4@16U4+mD1F$EYTxeE7wLZ$)y&H!a}Cp2ch+?m)^yjnt-M)p$!e-}>9xap zc^JV{Nv$z#MeYVr6Ko$M4fh_Gu2Q4cDipwBv>NLOOv(grXtF=h$Q!5Gf&zgF2U6OL zqLHJ>mG12Ua;3+(n)*iqOmE?FP*L2sTt`-WqaKAT^w%xQ>U~UMI(uV_=XDno^*zhy z8#;_?rmk~xsdHNF`cvXC!P`acywW(+;&K212Z;1WpC-3JsS6bsNht8zOFXEYyO9us zP2tp?%c6!iw&GRO`g|j&wIN@41+mD9a$Es&Qt6j(cHz=Sj_BW`+wDZv{A1GYF_1#J zwuNCPn(oT-MEphR*wMVu*5j}odByyVB_Fv%l#VOH@gNYhuyoFM6F(@;E`kP)yAu`&$anSK_muV=Klt=DdM6xd(3fDN+Ux71}>4tK~ zG|gQ-jO$XL9r#UOW7l#m+Mi`H>en0>B}ND+;Uh@uMretoQ4T#;^Iv7T0Bzp;!&A^bP4q{i$*f2io46Y{H$8cHVf*ag${ibmx5t@wy zh~T9@WN{{0lO>W76>kLlO{x-EAuLhB%jzP&oc^(P2{#&hX`92*QxfUBYOk4X`E)ec zIYEnLZB^@LpGk|0<&$2elb*Q52{{>zc2J_fkU_>(rf^ zWoD;Ek67Uf@SM0}u7oCyNsR8iz>dAb4)suE(2xj_azV#Q`-{ZUNQWSVw-AO~hW`L1 zwxXBi`gHcp{Ut(jG#g4P*_l0i^Q0uj$E3lC{D!+K+jcBA(7p~UY?Cf1GF_K`2Aoic zdWuqgtxRf5@M;e?PmPaw78dFxiy!mXnXvKjT{{RdHq7xBS+P$ZVmyp?5M zE;1tWHC-10EIw$zf&8b2XH-_f zN%z)8GD=t_m5VPhjAQW|YAb!KS0CgLbK(rP$#Py_6`RVhHB(t!N$(BFnn(;ZA`04o z5Ef4^<-0;XLfef?Rg}+rn(NKfNn^;4SQ}Wah{woR97fCW^=XfW#?+wJ)~?xwT>?y) z_N~7fO14npSH^kgV?&5cZjHPQBxk`K*+#x`x$a-}?7@azwC{g)<2Bbn_ zmgc%fT`nVtfQ^wmQ%%@Oa%IP92}lO{IGq6+PUS%DFO*4dq&)Wn%kl~wBN)geJvvmj z6t51w^kk&Xa!0s%oxv5djKj^7O>$BqR(W~oj}1?y!mm`Er;0~tix~XD%MlS&E~SZN zek#4Xc@WHMQA3g<7c5*Qy@R(RB-mSgHsmT@G=R>8vu&nUSmvB9?cP@1gYqpBuFTE~ zzgN4i<97_gF>Z1gr#R!qTnBzhxbM@axasH|Qq$Z>(=h4wM%z>R`c7vFdaE0f%Kiz4BGzQ2`raSeENeiYq+L zMZrC{Pn04*7RI2}T5a1CQjD?#4D-KXWWEKv9^GkOY1cUtTUQxxZX36kW%ExwgnYY; zM^B&y{5GyMiplL#mt%})SoMvJJM2F8f<{#>nU#_|5+qm4g$dL*9Cb-h99Et}142)a zUW=x2Uk*_jd8)l7*z%A>^8_bBz)`zc-y3>`dKK-{MqpLx>@X}9Jz}FMzhjPT(R;35 zqVmzTs+yDNBM{O1DqS_jX6l^0;+{-!r=ns$Idh94gRMuiv3m9qenoK8q1=wyFm4hE zp4z(*g+YaP0cd|lag-LLa6js=*N`UJwGR&uwl02Ywo=Kr88RjLB1@JW$Lm?aJY$TX# zDS=Vsx8Mc>ZM%GSmv8SVmyYcj+WYA*M?F4h<%YTFR=Q>w9qm~|8*Fg0*>OiC{Kdvw zOnVx*#|AXlS#EQLXp&Lj?Y1Un*^cXM@l_*(3XD@&aNyLLP{3Mr$t1i)BBCLZ7y&KH z;9GhjZPUq=Xi?hd1Irx6J2Tt$V7pG&`H6HZVhwuT_16xro^`gVYc`r-lW{6pG}Ceh zmZpxne8!q)eVg+hWGyVeDLY3!?1hmruw)hE@;ygrJUdN^NiBOF&PpK0ieEC z4DKiD`^WdRK08zD0?M}WyxS>>bzDVP^Lcj{sE1ynG~Y)wZ_@^!THqQ9j=fI~`b2vS zg2KYZ%Ztm2(c%m!u2@;Rh)#e7z*S-S}r&Fa^TpHRBsIyZ5FWcE$Kou!%d_VKv(@OyIR(O!FZBs(rcPZBK5 zW%w%Mhh#}3I?m0is(_D;I8TGmh#Rg)WJ~p(GZDA5FfaXzVh#sWHhn*R4a115>c>$XvH2hCmVdlOstG zo~**DF z=**N?iCkxD?oHjj!Iw{0pQ}Tbai9>ZD5?)MsA6UlS6JmVH`2lOrl6B^V^s}P?GJte z5rZW8i6JS-M0AXNbuy=MM8{jHRjAb@Dx7E82b#xj^&&24bpjM!qJ?{UbYcVXq_Xl5 z-T3H;8F+zRamhPLGR1xwXi}@tO3cqDZK@2O#-5svs$29J)d0NQ(g3SKI`@c#gwj13ZZ2C&DqTFlnF4|^DejYj_f2;9s!pPX3yS0T=@V&Nf} z)b-k%9)+myUh>B>O*@s2FtIY-GQ?cSW#J2F2F5guX!7@~;m@bT zF5t^`3bl-t!!{Xtw%B6>e8Uhef*gRkELv zk7jtQuR88yhh$>HnyEPKrdx5T4J(n{gbyJJf*LxgaT&E)dG=)!!BSphN(wmw-wYh> zB(f!o&_cZ}w;3Gfra+v{T0HH$RPyzSWtb3;s};9~+;uDK@2Fo3W+w=J?mGbWjPVS{tKS;8Ah7&$}DDyz$N`JV>wi-y6r*Rvo(`25iHUx z0x60Z`bf(nxf0)gBjKl#W7MnItT#XI+aaNf*m~a}KRmyiPAsoZuy0SgczCuEmt3*0 z_Eq(zlE$f%#;&TW!VkB)jFYM(#&KgHGA^1Mjv1+bfdWpU{77{8uSA0!-EyNHN1R}4 zsO`riXnb)I@f6c3@u~0{a9eTCdfPE(*<)?V{$=xO0+FFv#o*9b=J{nT)x2^{sw(Q# zv&beKNyRFqyBFAwz#_9Dw_}0`y7R9)9bHD#_>T0(K}V&PK0FvMIXbYduP)oIm=LRm zMRdr}jXPHb`A1BKBMpltO0uNLOu?)RG{m;5r_>nj)SX+HVmW25rs=hY6Md#nVV9BW z37mqaMea8~-HK|60Np49j=KAcUNaNh2=M`&%f_F@J_C5tk0PH_rp=A+!m}CZ%xAH7 zGk|w8JjZp+Z*?u*ei|=PASn?^@kUhF62o^Zw%G@g?ezZ53pd(9tbUyGDxF~Tl|gND ziD!6>#n12|ZQ1pn<^`kiUwjOU#=xRtR1MpsM*E$z)-%j&o_C=}gCpEIz;Rnb4cYRj!(~l&=bc@x# zEkkZ|a;zI!vMM2B(;990aFH^savYbWL$#%u99guA5?FFfR|Ez@F(AQJlW7N_FzZ#{ zW%U=J!{paEdOO5?;>F9f?gCB=jog`44XT1zDUFDF=x9ulNqNCH0HcZi@elcFk)xiT z^~Vs?O!rfAU3-9YSqh&m|cy!a#7_tTAiy5}SQ#H>d zBO~z_y9QeAZnMzlz7FyhBR$K5^qQ;^B4J zcBAGLInv|kOCtIXQz||71!+>mhg)DJ&c`hra~`-rwL(L^wTUyattguGIG_Yv-7i^&+~fy-{LsgMVTsH--4 zH6m2zn&h$rvzoh!!$a}`R6tJL_iCATo(zdpCb*@|#aRT)ZbCOh@KyZ27uL)Qn3}7r znSNUieVtyK=%l*a8fw;ov`J3FoDB>nCP)%yBy@GIFA*uafZ%+2nwlrgZ-)3*JXMA- zR=BCRiNd*E89vqV*Wb);DQe!O?gN#uDy2noOHRD%0$3u+GGJU_xCwINT!_c0vraw3HClYR(9%&0 zK<6a!?R5zUYJSDU_h>>YgOSa~M3j(S06oFDM#=e8BL4o}Ao_aItz*;5Je~YYQ1tRW zUDevE!?llPF3jxd+b+n?d6I1@r6{=HFhg;7`tR0p*AQ@r6|(_q^y!Sc%VGw7 zC)yTe6Do>4v<_&Zr$ZpiZMOL7iFc*?GpLW)mQfz%{Y9+3X-5u~b$-ZITC~}>QtdW8 zFAO=*QZvqTdN(FeTqQk+mq|jZ)TyN7QKK};N)r<{*=Uv2G98)Nh?8zaCAkZz=?0y2 z43J`$238>=$qafIZ*Dy|d^-GeOjP7~PL+Ex#wsXsYn*BweT_vXRXRl+7$(324T#KS z(a>1#_S^;$9A(vSkLfZlqSc7pHCU8YDRIt<{u`YHLlr!|LcN}Q$F#KR*%7&pJj^l3 zi!4{8WVwCYhvpp*+8^nAS}roZQq)S?K#?~u$!s#~+(pJ)uYE2r-j!u4Z2<@%ORNcw zNJWgId>SD%B;=h>8wNP)1XwYuj6GDPv@J9lmT$Bhko$k64(*~tiuKZ?2Qk}u$q2dU$A|c?fX`x$L%1aN zIUTxsigLMav}&u765=_!JC|}_Z=`gT$qv?Ek9NbHSfBvq+ud>bl{<)h^>crQefO_w z4Lrs%t#HS&YRpKI)m%9NzaF;*OD(mT^#KjsV04H2#ag3j?%)aue5~9vrQ}PbvLJ{X;@3HC|yR| zwR}2rjM-iUcb{eCB2gz%!CqvltK((*r&jzn2}3m-oxNW!r6h=@WiF}Z{=fOrhm2`> z_SiR~s_{WyDjo;M`}jmfRbTYz(@bm?LAvQ93!x8+YvymJnB~T$`W~;-{bh?^4g1_i zUOkIku`RiAE5f21GVy!YV#krRJdrTTJbpISvujqp<66h)s~E~L z+$v5kH8HPftRPA#&Sm*ct(B8r#lVu-lTjH9IP8-zeB5QRAwxmjR)nDYJmL-ys>gaw zS}f?bDIyXv1LU^I7cd?nD-jmbAE|#G4MBP|QE*%l_oYxb1W$M>*cbD7mrdU;s_PfZ zGG=lZwbE))C7_%J)oS_>y~$--O z*Wx$sR7_%}HauA2?&D$+E&1IuA~971$Ex1qqvSeh2KEh$@p&w`7BxZ02v;RTCG%DJ zS9Xg5^ntCH_`R-ID;RnFE;M{{`i^y4HuIK(gw)F`SeV^pryYK!S!0>9`ykmHZ9Lm8 z8M)KA)JoJ?Q07FA4me2WVV^X~lO32E?&;l@S#HO0py|sLIT1u>qhj-7sHh-4;J&OA zx6H9E-8H3<(#X8Ut?q0})>7imx)*XWd9A$cDyN1hldV)mHF0A09C-}g0Y!DgZPOC! z7Zrn7N=uD|$B6BjW8rl1@5c+A3&&WFRN4Dkmi+5 zWj0skQ5!nT0z``mldXT|nw0FO{i9@)UIH^=71ALCY+EFY{Jck~ixnyKxv^%(Xr6Zy z0!MK)703Etywk|PcSm{g7;(yQ`N(I6AZEv#Ue~L2%3x=fPgBaKxh0>j7O`~lCCuxkv}loBQij`IH8S%i@1{> zzn4MYdHC`UOTeV!5M)TWpkyhvKCg%J_-GHh)%)t)@`|GOG@;4uukwQCb=UBRvuNHy zTO5ZYesMPJ2beh11zca5gMFdqfFw4996S2nl{TyTx>Q7l&=IVroii}y8U2>0MteGY6_*){SMX`HMXqOTj|z*#k{#V#$R~rG^GbH zuaMNo)JW`mQrT^%UUe2vWnM=WlL6qorBbLIPr{FtJ>_n-4c40Xk!01|#xlf6!9gv! zY@``3OOWH!Or^ApJTPBWc-|2&nL6|n%fo8i>3 z+I_0J@S5ni4rAth#W?IMNTx%{#2!e6%dc3wTZv1KO;qM{r$KBv)&)XvupQu@8_NAW zwR-Shv(7Bz%7l0vKT9_S_Yew0smhE9t93Pa@j?I|r^`bm@UkwgAJ8UMVd%3{>oxxX zACVg<$#Lq~6C`6Zq9i)YH)G$_%R1=ST>GuTCu56J)v+adJB9|*ZW~fuf5b_}wD~jz zkM8iL610T7j|*jyhf!PNpO;?p;cw86B5=soUgKgOCSor&*3pniie};l5gjx`bldLj zOQv2Ox+wj3ej_;-u6&~-yU27q5WoV`E-PCiqZ7KncBGua>Q^7etm8xtIbv;*lC4a+7e1ky{WoBe5i>#s7JLT`dL_26UkwDSeuXflO?c?=<+o2@ z0IqV?MF6{VM~5!%TFaNE3YUhwqbD`1qTr{>L9(=w@pAehx9GtaQ^^k zr&c+Nd#quY4^5$xVQczSM&4R=CRbGZa@@i4ne-VJMk!Vp?rb35D+=1e!IvA!W+41! z%Wgk-303t19w_r=w$G#6xW z%GMcf{bIZ(eYp-yx*}v&66ykY`Hrju)n1P3EX^FS!?fQVV=2xg;xGm~_>FAin)?$X z#*vWBrfw1&QYv4J;E1p3X_-K~@ge12do8R~IIE8cCeYsZ2r>>v72yFRz*YD zD}M}f+p0(0Bu1D~Dp1uQ7k9E@fuS#O;JA?6A5ss7qTfV1O|05Irj~LwD+3&H>uXVo z8gz(DU6U#r-AdPpMrqhmhge{JLot74KeG6?FGoB*2Gl8eqDk z93(Wx&4RVZ<_W}9y18Re_Z zKtr)?d3O(O{{YWSKf^}%IIQ(58U>zd6q=b>wYEc)TiIk{DQq+$A#hXg*H@KY_^g~q6Quy>e830>A6u$s_5M6Tv^d%2{I)lgBHxYfW0C73p#LBBsMDR_VG)s^9Xk@W5^ zMITeKohzlJ%!$^eHE_f?ebr;#wP$M9`F7xk2V7DX#S?N>5$e;4!t|tkszFI&Jm-ru zF#*c|03Fx2?&I@lfI)^2Bgq^E`|Uh@KCjJ=k3Bxp>lf5k(kZ^?&Hn%q(R0Zz+bVM% z_Sn29*M6k2;hSU9#HFW7mQqCAm;UV<`gx~qR|{YApd+^=MFib8+luVIHrYSdZi=$Q zf>t5!*CeQ&M{#;}0RAJsvuQmI`gh2(%y#PmcUoq{ikfwWWwt}^Y(?4Z!m__-ACCA) zwuK3^aMVkNRk@t2Y%>~lxVT|APiZQG!T3ui ztMd8L;XblGpd-zj{jhA$+mLZk66??2(l{52>zq47sBnEH;+IeYGX#7yj_HV~ydqd) zm=3`b{C8_7DbA=fJ!AcamzDxKhrn_kn{D{%YckL*N7Yu9dYknpQD>+6ZGvEV1ui{H zQ41!K5>1Rbk1=l6M@?TK%&eV{O&y_im()3=t|($*)MAy!RnKRYt`DG8`PIt(VN{JB zYwcCy6KCDWr}SB6cXBK{mn{Q_8la~lphVMV+twySED13mPo#u@wfJah(iu0;=+n4; z=24I2HTC%oeO4&*7B4j06fmsXQIOna9y1?*-IJUQh1LbMN04~=vAF83A zce6Cp@``q`jOm6F>b8Q~eUx~xXGW5pxubzghbfdU>n=G4Sr98g(io(dg}9Yz^2!X? z3Fz`1nA~sl4xz6R|Jv7H)E0)5^V(oX@y^dAk83=PjMj3 z7c(Tn?4QggAN2nKE|h+X)PZp0kGsA^qloPcNOx^S+N!>+v?gfJ;X#mw3#x2tOXc_9R$2!t zS2ASUbgTj*Sa}X2tBy@=+xP2n=)&YTo0wd;MM*)x#^gBk>yJ=V`LDYr?$u>o;#uyE zU+}rcZScIRirv|E*ld`SQEg(zo=nG%SIwwsUbbg2Q)7AzX zj_Nj{v5=e7=CLZ%8==3QSqcrEG^q%6){r(8e&r>rUv#=ncN~I(>qA6UWHsocI4BUQ5cf%D9OdmbFiJ75b3uM?i;S5 z4JyuaT}{z8vfMH1N~eLh`A-VW$Fp;jX{~qak6?Nh`uA?+t(rZ zdbBv?KCks^bM509R+3=$H`J0vi#S<6BGh_X`*_Y27o`PkN19s^_M+IdubaYxMa3Ns z3)PJu*{2S-m0C9!Om3ebGLOiSk&{F@2J=G2P`ptG@x^*-VZ(mU>ReqkTBSrOthS&g zVUjiiWSFa`;3Sz}5Z*#L2>9tr^Dlc+D%y{Ci(qu{*hB`Z@a$4899NXwYFoo8(l;HN z*S!*SM9BaMh(G{1f&%1~9%9IeQh^h5B7eo@kUG?fiI?i^tZh(b6cEwlp5d#68&0tpfV zY$%9=iP8>Kr?`aIF?@2#NR+zGl`}Vrj@x4c|a}E8)cwWPCSHFe(A@c5~fT7ZLn>zR}hyWA3wc+yH>pi zhWJ`b6D2=7TdYIC1Rg%rEU^~BKK}q8y5+74%t$@PBZIPek~mMk+7Sb3<8VPw9uLp= z>%L@(HgUy9arB9Qew!R>O&6UOAe_&5AT@R1LLnZgn0;8T;$3x{(Lyg`BQ9>Qb2WHC zfq%`#6n7O-U*E1oTqm=1`eSP+`u_keY1t4OgYJ~*q@<3amp2s@@+=1%j=Q_U>LV@3 zR+Na533qV_Q4ogql^P%4N{ zM@`hE_ckXGMOr}z7iSt(6ja$ZMce-X`RNgxAWW49m&@t#%jIA7=c2{KG>4%Ga}J=g z7bC|eumdYP9Wuus6#k*t7cny_BEiOHR2H0U*>uQPy%^OE5KQ?iXT?bs7wElqHIM*8 zZQ^axxT<#b{{WVed)cIiWQ;dy?MtV!plrHi2a_eZa3#o)&{a^8cVD4uOu{q$MAAIQ zqW=I(^8BM3okHx<$K$hWKikA=!LG#W_aOtQ%Yz~^2pS7wC))x+LPR0kH8+$=^d*lV zx)aQn4t+K>>(k72So=)<89kbD)3PZwUKwsf(nAI$qkNf>&mRDi(4mQWf|g*Tw-wPt zhH9=|sX2}8EVCoX{{T6)hTD{Q{H%t2=~ox?`vWE|Ov^`+m5?o;ai$3yc}SI@CwO!^ zqU@678IjI(PjQiaeP@#O``2G7J-z;e-q5|8N(!F~GWQyAvxHYv6-m(V)j7af0kdtq z;Id`nBd+ZL)V&@n?S8|hP1J15J*?C@bEms)Jt9+7Rzr^hs>;3$XfA?Go+A>JPe7;fz9k(5L!faHhB#08@t5pbD zUCXDT)eLs24p&S(m2Gs@n0iO`m3yJttNE5AT`wilQi?DwF==xS2%M<0S!QK~MSZ76 z4U|Tdh?^mA+#}l={*~w_4)GmQi#PRzX2`ah6DO7iqNBXN1@iZN7eQK|BAXx$2OuQu zE0E*kmfpqqcIE2Vu>Sx}rK6g`M?tMvwmS?ga|#$1Q0(W`jeXa!lG>XsNNM0l7$hZK z#dlA-d`quV(5o!hY0zqb%C<6sk{NB}MHZeEG(t-*CHH8>k*Dq2 zGC)5OBu&u~6MdIq@Tui?==gxTqmNW1*Lp+$0M)}BwIFuFzB#xgs*Vs3C0{!ipFef~ z0B*D~n-v~lisHZP{d_dAy^n{$zpqjyK8fSit&1qjeW66+JX6A_(KbZ;f45!W$`Yyy z+WJRNs{9s~0wN0ylA`^1A}=4Zb(c<}gST0yM0)tKcI>u+u%M>MpKrg@t>j9UzO`h% z?blSh_<{ZtCF_gSHXW;0`o>y)hSOk-;#ZY5bY*Fg$dOw%%6tQ^S+bH6vh&ttFOz~M z*u@S4;{72UPr%g9DW6TK&Y1Ln)u3QN-M-LFvhOb2FVb2IQKJPx;dtIw)JEMc;rCx( zDO}qb(`;kc4rh<*D>E!K^{r67_sz?GY41GRZgX(ebCE$(<@tD~A=Ejth<@ z+9lU<38(P&Y1fl_daukb^ShaG=Cgf65h&n0Z*b-Fff}B!wtF(@-l}w?9gC`Mi(>08 zfV!mAjzh~~FgVIx8k~GD~-2y}d_KIaJ44j>v(kHtF+^ z&iC#8h@BI6G=FPFhmMOn21)@3k6(kn~gDKv)^ta8l$f4J98206T`InysjiFK)6uq zz5p&BCH7)A!2Kp-Ie&}0LS_@s$a*6p0&Tcz0$n#{aL3CbPTO?V-hLd^UbSFkIgU%} zizmI8i9108yBNpvS!*U?+Rk`vp1g`Jnxb)ONr!vrE&&$+5kxM%9l`uPTcNDyD)Y`k zN<av{f3_c5B3Y(K%m?3tJ!T|FX1Mo6nH zw<4BHVR@ueWXON>n-R&h+qbi6eibBl|D!$MTpaAJ(ED#NA-2xHM(1IL@4pv zW-ErKT%Q6m>c9MH+hEge2{UX-a@pEnQh(F06d#E$x#hm1eQddh17c8?bh+de7fnqulmn{Sw+TS=x^uPDB>3c z{R~PdvFqt2RERh{o^CXw7h=22w~q5A$zJ4qRCnqb%NoOujba$ei10Ymp(5FiYB;EQ zgQJL+Vo7gFYUcKL?EY^XBzn8>-;2Y|F zs-pZ9SI7Cfg+EdSB2!!9n)gL7gXDXxa)jS39x_geu?yFa;icv=xkh8jIErj4sq|7M z*$ZUwiT2;2uGJc`5-Me>oGt^XIP-Z5w%GJv8z~o_Ki{WJEPww1XUJe!Hy!s3mwix$ zTSVPlM%7pDi~hX`ex+$Gnw}$xZT{_96pjbA8e}%%lh2#YFE+}U2>0Nt^C5KB+Tv!d zFho0%3bdXVmhF=5x_?ka=>@D}P9hfD-9Oj3f{{W{={{UFL;2NN=A2y^BJ({x8jDl@Bt*DX>yuDw&r3m=jD1E-r zh#uv#qK}=?2|m6TbuaJN2|4#ou}aX&FY_E#7`Udhc?DSrOtqK@~rT z=ZYb2sDi(A@JrHXA>b=KJGQAUuie!b`E>Qp5*7ean+qf8{=S_xu-$Shqv8#cqA0HD ziub`j3JJFRB6v^j(}a5_vu4U-Yh)i2ztP?NG`mz#=JSoPaWJuDH!;Vwkn!^J*7_}b zkS9cuRTQtsfCZ}VOESSv*?2s6t8$g)5;v$EZSG!~QW$IHp zZ#mpY6}1OzYEAzD@P0T*OOQ1o)Ou^E)P~HgZV`tZR#6QR^w>Q7Iga>WQp(SA+}kK%?6#`0HXE;Ii}H366%Oudxvh2hr#vgMH)R?rr@&{QSw=2h)BdxGrjtj zHtinVve&5GO4coeW>1*zpeTvqJniFcw%^BB+YbqVk`ieZ6#_J06x5U(D59s7RQl|R zzxDCb+Dlxz&1SQ#)@z9p3M#J1o_@biqObb(n$0)nDLzCZiNIA+Nj#$Lh^nfeZ@*ha zy4zW=lQ-f&=t>5AjMQsJg4a8fY7A*iS7%gp^O#vBPZ}zWX{=WfZ#HvJ6MXwbPIlLI zMe3NLdr#o?WtnYNh8;RkWb-ccag#d>TRf1kF*|L_+8hoN$uD*5Ek%Sm{n-n$yn3C1CkWS2>ebUh2Bidv&p$2vAyV#UD2kOx9$Wt9u(< z{{T>UTE~p|tA_>;5Jsm|0!y4g!Lt>yOx2Jz44fqGLR13*%c^Zr>Ne2#sVhm5Dd`NO zGFvQ>r;^VJbX-(-c8Oo*-K#>c8fV?MdNp9qnLP4$-G?sCrdW?6drZo9$W~KH+i}%# z!V*TrI5=#wO%eH`*rrH%s9-6{W(a~bcU;H-?TV=NVU{?jP2V=7?y({D81clFB8n$c z?Gno$;ia~)%j&q5wOOT0mlA4JWE440I0qWk)lDlKk-;8zYfTE84I%&?V-$> zPn{|SD4cFfYHZ*mxh>zb!!h~4W{gvsksMhDx`84hiFFaj;6F0>>Pf>jqCT5vRS#uV zk?d0*l(TE=4^5?(&XK8sJJekmI*4zN~(44Ncjn;%k}S!Lg&#D9qt%J+zIP zqvKWKs`yRV4e;zimy4`0VtJ)^qa8za-KUcXTF4+_n52ddzXTRst0HBmNY zlV0H?6?wVaE!%Oh;-ZS`j{FmTtlC!*LRj&EYhd$@fT58tCZ@hC{{Rj;Fw%+ukG&*= z8*lB)RZaMc{t&u5tom)AYHy{@HmRxg17l*vyU^IlW!Gc(@y=koYQ<$c?wl&?mk7Bx z#G|sGG%h4vN!q9@KIZI601#PljoeH`OceMPztg6lej*qpOL`Tjo~7sMoH{(FRgC<8vnhJsHWz(H+ursEyJc29CO71= zBewg{-Yz_Vj0>vQj6J0AO(v?soD--?c?!bI{_fG1SmtUti64#x8E8wqx1|X-3CR+= zVDSL+L!l|Cjtk?r0_weYYPoM?YOY(Y+0*)qWS4nt9FA~iISK?dg=Hz}Za!{9j|HHM z%4z=q84N)-Y0_RIT~4IbIC>Wh!Ie%GWtyOKnQJ9i5Y0E4nQz#nzi}#b>8t11pRptM zvBb@=Q5DV_rMlbG-0uW>KU`0MKj4SObw9~ewihAS5a+GGaJHVBvHf_#Z@&E~q3 zY4GP*bvrC0K%$B~MNtKLuP>^3RWCo^sGQp3INh9gB_Eq!i{Wo&k|D^vXek}15ivm? z(#x;$Ub>nnF{Bu+w&HK?-gLxNcjT`sFCRbEe02<$G~~MHC%MEy+w|+zJRQKzu})=& z_arx6F%?ekZHR~VFNU5CQAb5x+Cf27-8N6Cs&PbLvTxIVTDXL{sGDnSSHk7e-}QXD zvDx9MD0vig5%TDsDXs9WWf0K?5J^>6WbyZ1({HNmoh9y$5t1n;J~#Wm1M$&@=}|yQ zTWuObUbger`%t3nD4>VOas}OY16{UVwnS3;{{T*jLS{G+9HuBABw2_c1_fa!t9&=l~n1EEM9f(s!fvRY;i1$r-qdG zEPCVpL#?%nikpfjg5Qd4s3=MMp8F~yC-3#>xHFVnnINc-ZL%a4^?z2C_a#LRUEIF4 z{iyDWgTBfrqNs?gkByBt z;=3v;C)0hCWbxsCohZ=@E;);0+A8*AijVJGZ|u`jfXa65Pxy46{dx<_z&R0+uOvwszy2`2$nm*qY zMIk1Oko*+BXs#fx-?v3^CPxNIaFB$h)jLp02yK?)FQ)j9O#+umMM6{^q@6t^zqek; zKL($~2D4CTagR)zuW8=QE21aM+Pt}lS>ZO^n$^4FjT@mdERl|HhbvIU&&j>5(zbU4!|n4+MZ z*-W&KOEmr5RaENp&zK^qYy~muoBr`q*USTT;$fBv(k92KqLD5>pI7*Y)2R;$Iknsx zG~E+mLSLeI$2_i{l1-Mvt0oZv0h4^ ze0_gp`>KBZZ530&ZLHVMp1(u&V>7sVPMTx3%TSC-axZIQgpOA%b|s^?PdFg;g35Pb zWq*tgN8HD6Bj9=`vl`zN(;TY8hMwms48t=K3_;RGWESG8L%6#7dvpY;4>I$7x0SKP zoJ9{MEP7-Rh-gZN6MPB<~ zHQ?Gf0H|rd6hCHlsZ@HT$S^^%qnn^Y@~AnOCTESucp(SXlzzyA!}Itd$FaO+!cNwId&|^ z@1sooW5(vDLOlhcwJoVF&x$r2OdkNx6JgNh4TX9Mh}??yvEyu)Or5T@Y)WP@t}dbj z+2UCM?otIFqrdj*TKqppIj8k=plSXd&2k)DQ8f{YOoBW-X7c=QC~~ZI_$M-5b8NWS zg*9!%H!>!V1%V1vlFZSxbPLe_%lJyI1Bf8hLXP7!_nDF$8&Z*MJcmUE?e0R{UjZ5$$u_5{aI>k^^c;uo9TmHnTM%!s%Fq#-&y9>GpgM0GjWR* z>xmWwrn?AGY{@vW@#KNW;(Sl4bBK6mN3&isiu{KLr0l0oXqXX?HL{RIES_Db^JDV$ z)PftUPmnF8+M;uS=webq`5mVH$ixQ`1+-U#j_RMp9f^Ki zSEEkwH8Mvn5L8INq%id$_b1#p-EZB~LZv`$TTWuKQPb1ZNW2&N^bYH9q^yfU>!Ia2 zZm`ng*vyHyvZ;ba-J(p9A_OO-ahDza}gpI}-3`&zJ z6aWAVD}i)fy}1zz7nh!Zy+ikNXPHpN3ndgIUZ!3Hx4WrrEU_IiJvaKB^?mAl4}10=PaS)D0j@>_QpD?2^$hZy*CBLftFVu@^Dtt9{IKDgR%h8sb&6Ax= ztkw-)jO1&JDq9EQorHTUI3%9U_%Pg7+ofoQ;wcja=MRV%)R8(BHSQ7NxZ=cmdlhQa zN&uYX2MAmw?#z>D32rP#>FMjEv_2myoobWAv=|3iu2m#87CRz@s;)eEjnH}sB9=;D zDBoUwwFavk%Qat6vutAqr_-8j$1SzU#|@%%fw+xxyBy`|>jc9Ukrhmi`eo%iBCHvXIV`uOQVY?}ufZzk8cmg!~0 zd<2u@sUt9vv=SEiVoUvhhPK)OPu7Y%uNB*VN?UKgpF910^!bqmXjR7XQQArKn(q8> z^=Zg}ik5zzexkBFwu`bN2_mZOoK(K*i~OXU{{U{AbKA%-yQcoQqRWW7uT3}MwzJ8VN9XV}~al99= zEqy&Qx(REnjR@6KkgqM(ReUD@0LqG=+oW8nI?0K+IXQAPOow2i_T4+W`DqnoTyn{A zPTt@3{{XjL$fnzBN-CUo`l{||TkNQd_TR1?_Lomrmfx36(T8rJjizKJ`$y)>T`P}StYVhPqm4An5{N+eb%vx#au}hv zzTjQf$rs0gF<;WXE|A|9yF`L+;b1(M%H?k^-&UDC(1s}e#m>8N_-@w;G`6rA2@@bn zipolMI!HE21YKZTSD7Lt*i3tjs;7<6zh&sGVvx@(H4a8xR1-aD9gmYo`OC?8{cnAzh zJUa-!tBNmnz36%(^&wg6hePNy$sW=kX;AUvdYefcg$B1Ys$rs+C4fR+-Cc}FW7tId zBU6c=t0&i^xDSa^y+;&(5~xBUW<{4FQpGTL74kIe`L+3^{Ud#k)IEuNO|9^W3CN6H$w-OzTD%()9B4Tw@2uu#?T--k5J|G>=O^AN3 zOVt;{Zb&#$;Bae=Md8RG41vCxmPhu7B-ZJXB9)XjNh5)jmvTrR@9I~EX{W2 zXLKW8n*>*OK7Fa8GB>WxV#+-XWg6Y7nsZ;J8P255IxR9{xycm4Dz5SvpyWudp~y3g zh1)k(0Zm>)5(FMdAB}j1p-JKY0M!%aBb9C-eA;D0?AP5A#O#Y?SPCLyH!O@*HInC4 z297RDY(`_|pw+u@^%7sLw)E(o+6iF(9a`0rXm&H}CJg&)Ol}!o&v#Dh8M$X8pny)j z7_}Ph+0h$!B*e@em<+^w zVrD`OYz$ixUslpfc;)HT#9U%DDDF9E?Bbovjw$8&wMJi!R=E0b*IV5eu+d#yrOs{7 z9LcKhY;h^)XHOQM72-Dqw#3;03u3#EI6129O}ET<0s`yIp4e*C9wMvJ3y%Fjq|+Q?OD+*9N05l@Sty1dXWR+} z>L6dTFO#7gN&LM#Vx?bYURZOVZy_wmk3EapIDh6AJ#D(%wSdFVHy{DU zCk1gq@FGtS#J~An3;Cm~m|8%w)hpTAbtF}CGD5LxLzT-lnab;sRoRk=qpXDum$ICc z8zB31tSY3a#qSH67xaKfmf^=~E%ILsaggEucu3ieiEBXCnOd`EsPQNQ=TCkl+%n!{6kI8^)h8GZ?WIUBYf54{oDsn$~~;wBo3ZuKZKZ z+jv#m>9_2keuci{j=V{VIm=AG8-DN0-LJp=J4TMnO$rV+3wUYL)L{?;`u#`8(G@%= zl>ICJ0GC`QHWE@I7ZFsi)2Q_S0Hs&|09{Wb#1L$8Z?9^8%_&Aj0#w--aY68@w)>)r zqA&CGi&DV};8NwGCgJ$oz=tpE(YSHk5*?^t^DS=vT`Ehd9yE6(KJl0`*a4HuK#J<| z0R2nHlK4-jLYq@J9smS#Nf)hpO@q`G^UsHz}|5{Q?Dl{a|(Ukz$mC^@w#;MVNN$w7S$YWJFm0{ALd+(On+3o zh07-ewImYA)I@S$0qg25Ntm96<@q93n%Bs$8%eUNSbAdw!yf&*#I}gj+?5ryd5~~G zh)`7iC`I~u&{7;W#N|E9aZ@D}+(17bpTLK?JoMgF`XwbCIdcKSiqA2?X++f-=8Jjl z@xc4jxJPk#>R`paB4>6(D5o(JxX?w|t0qE{nZDq;np!#p+_6NFe0uyVIr7d>7S!z;y0`>2@82yC||ap;=X{)sMF5t57B~;2e}t zU;9?o^l)49yEZ^SFD2Gt7n&$c+og}{?y(Ms&i0uRnC-p{p>p2E;8E&rFJUK*irC-a zS4~J*_oqBEDawIn9N(<7g=ZMRUwsIp#cdsk=^CKA4zj9;#Wq)26(0k~u8GkMK^sCM zOMU&mpUPf(kJP=S)k(OrY0>#@%51={qAR$FMANvDL-Fk;8*5h2(?%0^c9Yrn3 zOtC6EZ#*JG=Z+>Nil+PJaT|`^y}EW$=(ZmMlpx;2i7`f&9B0MBKy=ZGDDyG}_D_&D zFOeVsujp_`$J32cF&~1S zePWPU%dLys zR#R<5@fHp{i4m%*`K;Lcu0QR26`b1K1z?C$mS0H5K`>f{0hZR0^xi+QS+Iw>P zwex@f0LTZjz~et9Y3MT=72jYit$hB{r>>pry!}de8)_U6$`h|PDV|3L`}XZ zsj`268~)um5<*L+l2o}_cI$WxWZggOy8i%w@7G%AUEBEI>*sHepSM}8*Ud{#bi>o_ zCal%!zImhcnVwxwCd9_lMEQ?KfZ4RKw>niMww-2k>lxRQKQ!__SArn*^Vfnssnxxo zJu)qNo=?+7Spm$=3=bg^CWo~0ABuVCG$4%IOrb|=T%toVbaFyyK)NR>dMKt{H1E}H zhHt6uXvXn|YM!pZYQnajJ}(*fV?%14^jRry9P0$zj?#BTWOl`(Y+C>WLh4rvpzpM< zFNauhlx2l3nb^gaK(a1i7jYj{+lpkV^6qZaM^dPhuebIQ@e@mxxpv4%e)2Dt%kkCq z)B2Cmk4f5FjJuTBeqC8jQ(Z@g;gt%rvKu&%BKug;YhX!zTzV^Q$KvbGnxH1?q^tV9 z1H^vNs9Y4=X#2?`sPY#g8)h8U$gs=kX{G3^mPu_Fb@rjABYWFu{XSWJJvB}_o@479 z@nqC&vnTG%!88j`s9DON#_aDiOnXSNnrs2`e#T{`nN-P#d#Otve8{R_r2R`J?8$DzQpxSrNYeR%>C@@(w#OrBdO36>;~ zlf>h3TV^CU;w`qzuC(E~S<0zBSDzwmSS`}%u){Ts7sMm5B7kOVxX*vu8F-gnxZ|ve zA^B5VZJ6nUJxE8mS`Sft!XjBO)%^*mggMHdDUrX+^bilhwV-Ja~1 zEu~~$bgAD>*^c28QI0?M{hq(M*L@w)pE(%1Zma zMkuKh*mX>Yzpb(Pi@?5Z7`lap!oFv5$oh%$ST9oD^{{Z0$ z^HKF*)tB=2{{ZdR>NE5g_EY}=@yF=z?CuQM;LU2i9BQ+OK>&(Gt`?&@?l(dNMuqk>lc zQU3soEiOZbZ?puPaZ@eCe3Guox7WgMynnYs+w~9DQxj3h z9R1s5U2)xe{XZ^?w+=jVWwn$IIP&ZTG!iT~EwcG^QQ+R6@~O7C?89K7J?^V**_2(U zSS}C1kc|*DszPNE_fUksJMHq=xb$7dBQ`DDbHidH^(h8d!}qbvw{D|6N9_xSqtogQ zBZ(l{=8A%3CMScyt8z?8a{*K&>*kuU3d|Q1qkcSssff_QH$}MZh>s1$V;fGPj^?6? zA7R}Pdp&gAfnVuGd4xCJwLLx_TXp7XoKIh=i_DDY3*HeGOp7b}g;U|`zvj}cx2Ofd zR@i1S2W`+6n*eQOGDcC}-ALU4HUQhggzRYNi`bd`MWzs33|NGzicU=ej~Njy8P<+U%T zFVK*Llm$no-`%pO_rGsQSDDQ2u#$M+_%2;EKxnO$VMPQG70++nLR~z6mrd5Q zNpYDmFf@(LaA3bXi{Ga9eKOv9$Pip2F>i2> ztGlJg{*)ac-D(V$7@F&{Nt9?LHhUnEqaZ}8iOAD`0?O^<^ruTkZTB5)1H$RIsP05A z@0fJ?x^w^$A#E<0mRH-BJ>DADO;?bC*eCppB&1|ysvpH5ZBw#aBB+?Bg-<8>J7YZYfx7&TMit}w%9!-@{ z)0fMqqfL3y2gFkm$j2oi#djtpyCPElQPT1$pzB=cm`;jch0r$t0G67xTAIa%Un;g# zxuX{7p=7m2(||@Y)uMKEF5l^F9tJlccXU-F5f$m^!EspTjfk1ar*U1oi!8GGGQQu# zNxspGE#%mc^6)Xo$p>owQSiuhKGj{hMW`6IS4%C{Y+z(Gc~p5VkhW~O9Gg181SZi^ zLRvi)!%fjtn-yL{y)7R$;q#kv<|&eXU@X(Gm(!}FjA+m}f`d?^P6TotS(lwSfc3-IV>S`qAn@)o< zw=zi$0k5lak5v9`eq#8;hve|j67d%d$=LS~&Xo*=wyLCOjj$_xq=JQ_ZylVDa7Emc zWKESzif!~HMPDnv{Ye@zF}S9oj*cszlb`6dHB+j%g1o$ZHdSA@?Z4Y@oi$_|U#0ZH z!b_?rr%!n8rpT+l`!C<@o)gDTg#~vCTKaB%%dPPb3%8Hk`~COpt#htugov9ee{H;f zzgeu;&*qm&GEH@ZiMfu%gGCMvB~5zSOJYb*nvmLQf|VsBxY$?O6*3Ai!xwxh>z(MhNpJK|y#T%|85O{wYjWLGbP?U}8tNk?M@%ZVIdLUlF|q zJwe_}fz6CyL>VEKvHHjfEU2EZyG#t-X_96)*tq8Whrq!vY=pe>$JOcW(;ptiF>On~ zrag7k8@L#hiS?E?Z$bv{vKu3e?4?F4pgQ*`q^}dj%}Iv1x%y0qP=e8BaQto|_s%6b zZ!|8rQcafC*NDtTY$T;&6+YoF*`%Wcc__;hQnT5IXfwwv<|&l!pq%*n{EaygP?*<0juT9EVZqPrd{y2(68#L3nB!zVtI5-u`c4$6WCY%-W)tiGbn}2YqHJ> zWUJ}eqBkO6R<^1%YtxUSA4wLPnVscwE`3mIhL*#q#;{?50tJQzO_)nFc1&8OeBL-^ zR~VgoWTk1xyf)h)>Gd|^2;4ctTq@-m0mnGHy%COcCa6xvY2)UYWP`8_Lmk&EcKq7x z5w0GL^I0KIdlWKEZUB8qY@S%^oTu7Ny0jNb=I0Z$&0KDtQ6-}(Fj2vN!UGXraLF2U zRi=r)*(0C!z-YR*3l=jggJeDgq1s<^p5je#%DrIac~i0QEf2?RXJ1`Gb|X`U zJ94MTvY)#U+Jw_?sz-bPg~BpL#T3hY)=^qw-p1MSfkTNEfLuXD zMcqJJ9Xp$6SlEBg+E(xZkJ!I*!!+sZgkkQiUC{a!eH@5>v+# z$rBIQnRt4!(Rqnz)qWuqq4wiDE^RD0j>S>r3Qa!ai!cy?mANAxOU)vt#E94m{{19m z*_R}4IImJKBE%3!>LO6f>Azi5Ro`fGYp(<1MB5Q$xMFw3P*em&KJdr{?b~uC(HM1= zRJ5?8Fxw2IYUUe`%OHwsQPl)C{gaPxa`Cqh`@MH`My~CgFk%mp(_j zs(9-}BGmzuDWT4~s1jFI5LHA3z6P#e7)Uwk(e{az;eIn&dz6X{Y&|zsaT;lE_kzFj`~~8*mn8+o05FUP*D+AapTjp zX`po+3+}}_mB+Uc$XEPY+N^YamC0KnPz=m`Z3(EM|TxDqu0g zff<=1ZOFTPcl#Ilx+U(!*oX-81c;2X#D6jm;-h5K(_EFtM3KOAA|EZiQ{($Iix()E z-HZuqEZCC?nBv5S$xzsBqj5!0MHG!h6N>#y_@5OY9U@B7sWxq)GayK??JvXcB-&aR zD8mwO6mhg@dS7y6nD-a>e|ttQoadosYhx;Wk9Qhl^{m%QX^(D-aV5omUul$8QFwbq zO20%w9$bGG-K6iJ5q5Rj1HF5$<|)FQjS{a2N-R^n!)Ikuprm&(G0xAS!I`}OOO z&}LZW@271#7oJmck*i#JRb3-7W~$y;LSe#RJ<)>fRA2rcuD$?#U7<4^fBvI}AD6Cp z{{V0NI{fzjm-H5BzTY_LBespVRw&cP-~RxmkW>BAaUEL^s`|7{I!liBxuU9gMN#@M zoxX^k7j){#i|f~uUlI~>{uj|PkAn8Vck{9@{Rhha=!^dVheVr8DEv!9-sytsK#nMa ziN5|7f9tpVZPTqbRl2JDb+y)OTF$dsuMA#^Zf{%FNVovck#_v)5+qc_l3VeBafZR> z8SHK<;Bt|&7ZOo#^!4S>V*F_mwF;L(Sqd{_wqeV6ER-4%!w-sM=^ormTbT73=bL7f z>dJj(`bEcmOKA1(8WFrxoy>8oH5c6-O2;^i(rt;XFaB`duEBWOe7UYl;eZ-pUb25wm7^aUh7Ce;F8io$!4?wVfXcQYOIq>BB zdP&~h(kA4!?iy_C`I~>nMCz`NGttO00#S(*;O}^YK+*pIL_@bT$b5GuIw1Sssievn z&9dvh?2Mg-9>|Dt!4J@5-ErNhS5>REKU6GkbL{ITvVPW*s*(g#pJx(9g4Hog4Je}5 z#c|U)h}<`#lO!BojvV2WHIefF-27_YN9!EIaa zAh7#YZIg*9`H}@ero@f1bB6#e!6#fH#5BlNmZeOPMIKX62;+6l10ejvZ|d&UraeZR zPm9S(LCcUhh>u)x+E-6Xl6L%8P+j(xVOid@oi(`N!%KmobA4sz>h)_C;fuyz49O*#{42j2u(= zm&2!ZigfrD2VyfJ*4lK1L%2bFG3tx;cz9*?X?6+NbpaNfA_oLSPoNWnYku|~dXO`n zNA*XPK`b*-9?cgUx0v(R+~LWASo~^c`>|h!>rJ*x7rd&n871SyM9-3LT_-U(j2n=1 ziQMw&F*_vs1jZjULGCS`FYJc};O8+{#3-a=Sz{Mwat z15RGF3~wTC1Jam?@XmQ!QA7xb3Va(DiOtD2Nio~_stcQtaQ#cvO~+dlzfN&Ch>9U( z3SZglyY}n#zfr9-29Vd zYUpS%(jZqf!v!UWP>E%_(`>lz{{R&-%IhJ$=Lt_fa;o5IieLn!A&-)7)cn+FG}X|GFf$w2#ZZpW5R+vVI=1U<+wpJW5 zcw03@b+t}Si-L~}JR|T{}RZZIOAqse3COiJF zmTiJUZPtXW+81}<(6@H|+MPt<_gZbY4J-tTh4J+E{aF71cA~t?QlJY$^?a!FBfL!W z7R|Fh+ia<92tHguRBVrJl>|%qw&~k2o^{I@lN~nn+9Y4|(VAQoL~*xJnNdRAyKyY7 z`=owfFRM{qmaM~V7EnlelY?X2aikyRzNmZ#}=urCTVBQ=S)GLULkaB0iw*Lch(V zvDI^rJY@@Q?2$?^v_@?&Y1as(s-h8jdns6Wk6AQyh&N-JIKw94NNrm{CkQbvy-^QwC+Eul0JBia!T$iW z$gyC!30v{SKbu~=zYEJr59m9Ly6L)%X1500qy{QUI=-S=a0dklQ5+&o*XzftAA*Ut zSe42wo96WSyAVq+yoh!1*YxIujC){%EXVC8Qdqw4{FkHv_WjuE@bvVQ+F?}{2)L;t zuPvAM-|oFxu@?LCvKN-TCn*;v7cQ6o0AI&Njy%w#K)Zc5`u?O(DYpLrZ#@?dxZ6RT zCCHOcmeXPJ^!q2<`}E^T>$9xZYdXzlzHSmVR<4Iot=q}r8eK&Dj|?t6;axsxA%LryXv>rhvFaV5$K+pabd!1w4X1>F}z1Q&6Sa3DRw=m zHqESy`x2f>R}h*}Q+bd>G%v9qSN{MF`$ubwVlznM4kQ|UlKUgf1Q=g;L?U_Tjc#OQ z84ztk@X`*H+KiH7IRL^eQQW#J4X(Kt%jB5;_JQj?FoWsSA*`hT0364*vc)SJetpg; z?1pG*+K>{$Y|xndfaA#0HsGoYWTxSA`0dm~ia3HbQD#%9Mep&OE=b5G@#Z`h5(bmI zls`51{I(q@I?)VRj7xUIsV8lV`&uBfxVmSh8jFg*q}r7$J)y{|v5b>3ss>rHjR|Gc ziN4I{;m%g(#(CKf3J>tr8xm6Tju618ES+P9D{t`yKiy@)Q~)fjxwEv;ZR2k4ox`r$ zIP~~r<5HGXhRqxtfd_bX5LCZ!r|Q%Rlrs|l03n@Oa>LYCw?+^u-KR5yRUOL}Y3jOb zz(*WbqQ4M$wD_9HRE{QFk1*;@Ph@3NV!Z+{HXwjsAR#VjT@13fYV9rBX+B9$=FS$y zw%#DV8CXZR(x2aLbY+@LmQmxet}F^I)qMIU<-8Tvu*=)ERV`YNRLtt`Lj1IFIkzQ~ zd?Y6he*-Rv%%m+SsWSzXDxt>|uRXxyJ2;*BoGBaYcd3pz=T5zUO`hFd=GCdt10VoHQ7TJ^h1JwQ8w z-D)NMo|R;pe~?CXrXoas-HU2F6Jkfbf^YRVf4LX+ONiIiOFRWJuQAZubprnV_;JJ@Wd3SWnL%yc^?A6^u z*8F1_pK8`6rqePwxO5D5phd}90>0V9b&2jc)1BdYhgjz7A~uFx8xY(P~na z<9YT&n5>T2?6QZ^Z{BCoRDo2!Y)4mz=*z^_2*0GKv6;eFgBOWuyyPCz7bF9CW#iRc z>b;}+b$l8pg}}wDB2~bz2(|Mm;7L;@LpJOsM`>m@$S=&BH{-`~6p=ns6ufdysuezA zk}{+ySIhE`{_TF7c;dF~<;lqxehZ`mDcVh^VHc%HMMxL$?c1qE+sev9vWqH6#cp$K z8FKg&j>c%CwnQRZtBJxs%lGbb=_ej+S;U-IkdafO{KeF^_-ZiSE^SZTUymJLD5`0* zt%S%-yS+X-gR@;lW;0B)1@|O39mviDZ1P1RUDI@J2{#esJh$C;9r|KGubC!Xv=#l* zwq4%~{aUm*bA((s9(r47*|>^}mAVzv&%>{BTSIN;Vx(3MNhNHdJm9$Wlu{QN7RBh& zg~DHwlMayh{VLH9PDPV-hQlm@#7(H51?nm467$um3IkDx97Iz7TX7tFas1!Sq027R z8p$>gWJQu4zz189Y`QDKNug~TPzB)YsMF6c9hDJFj_LfSBgN$~;J)CFCL$N}FF&Yp z64ZtxjdGr4T*YjnnPZ76Vp#RuCABvvmhBHYK2+n4xgjS!>&l7ARns>XL~|7*9nazN zLR8rkVd<4dNU3|gd__y9-%5S@WnSVa(J7?sP6)UoYy!$iU|s`%=G1n%tLlUz@ehlEczwgVWLCT7><7FXmaZ>$09lEU7+8COV4|1sA>Q7(pg}=3=S^0su zU7}GiP&P|-Ro$nD<+^X>P`K>BZkBDit_CFMfRGN~Nfz(NQL3-BVRgY|tW7Eq7hd2| z^ZmL`ftAS+MhVw^kGC`uC2YVq;kc@%=!Sy6ck6D%Fj7%*akuQp<;Ov(Jbd>pn9pQp zIW?8?8*Z|v=GIu`Xyc8jk}I9C64?+_btDx+^RjvR_0J*cE^}X9!?&R0;r_lF?yts- zk+KXqlZXkIUktYH({1aSi1Cs-LMp1Lh)TSSwn9yl`wrjJr@wCAT|uRBJxOE| zw($s(2yRJzc%O_CFCEyZ%vvEn&}ZeXT+ zY@?EocT2DF(wu9jMWIwR?skYispUz{%~y2rNQM60c22xbT&;2OFZJW&qma0S#yd(b zDm{XS^DWCAEy1?u8;2oYO}DZ+x-Y=_5ibPszn|~Z_^&iUi@1*^195j>B@!>g9CUIG zT%C=}7Z8kt)!q1(I_!-+rAU0pm*6TqcJM^I?wtOcc)7|&! zSXBokzadS<6l_R85>e}l`D`z5q)2obvfX!d&5;Ebj?SxrDBw-|*NV^KJ z5L6c&fa!Vp1g0dKPMSR4wbCXP)V-ipbDr^b^%{zN1 zUP$&wLyyE0~K6?`dr)xUNDD89Fipu)^La@c&W^4v6p@2t~Jzt2b!o+%c?E0qU z1r!iO0J@_%`hyY$exMMIKUch_^kB$L6|%@s5XWksSL^EOu6@}YR~kW8Qc)!_#Y6)u zZnud1{&u-KK6k;gJ1wR+~d+Ub}o?TN@%Y#Vin(OO~7Lc?g= zi|&( zk2CJ^D-<}dhTRGu1yLyE{{XtT$a(SXb1DC5G z?C7WT_leYM)*qVVR?;cvy^Pt!2oM-`ryeLWW2A$Z1o^2HP>|-^g6rDh z0LQH6N^Ow}C2T zNw`mM?e%IeU8fTf{oZj}Mm?T8D~9-khwCjNLzPLL7Fd;*;^cV%@ELU5l7emY>(_ocE>=5L3S5Li zdNfAS(j-K1kWgcjM2OlCBtVV=Xo|Zw9eKJz96}%qHmw!}H^_$DY`^h*b^4zdqVZfv zGb0icRkj#?Fzw0aMd2|lycac6AC2_^=9wwIYhz~d5;hXH7F}NvT9SO&Bvc=hD1a&V z*+jM^ej{b+^Dp+3L!Nh8 z9BHWi#+_6)(`8U0?tmyNk|_s|=IE4Y3oB?AEs|M&WyjPd;rpfitxDlIs^=#Z7MVd` z$H{yz`LWxfhdI=UWi{X9xiS>^rygTMynAZy?!cJAZc2g=y6}+i@&`U&w?r3{PBvRL zx)PG#xca8$`FC5xAHv#RRb7f}jLRanDuQA?OO$y9)O|aVKPeW5Yh0uTLH1o&L8rNF zqC#IKRXx{l)w1osLmX-8Wo0GzdyxmncZ#py{)bhicaE8jEya%^UiV|kM;m4HZusel z{oJWt{(R9~bzI^rzreR0g$wpVAFtPLo(v{i#JiW`x~e5{WkP?wA&~;OWN0aFqPupY z{1HdtmO4ve(|ujoh*Wk>wnbG1Uq4@`$rq;%3IL7wp=bn24$N{=0jnn34^O2_t-QOF zuD=b36vWGlqHc-ExT@^GUmr#P0MD(1qKLm8aP%jM*3H{Eo4%cQqiD#A8KAE-*-;RM zK0L)0Q?4`1r~;~K;Kyz-wywO5su?C;l-rVi_m;S*vZAC#xgzeV$rM!!<+ty;fA{MV zO7=k42Fx=IoN-9UyX9N;{?53sWl=Xo-BnCfylg*jx7V)hNqZvcH5jCyP_9Bn-HyLD zK^>7k{{SRK@Vo7|(O1st*0rJ$5Zk*Q-Z=Q=%<5>X<1mJel!`4=l3i}51VVyN+gVBu~rFNmjdujNg98uSH1 z?mwZp3mYiAF{xILDxv=X6(&h8$|-S8#bdPI-*o;`>cQc5fMDGhmajNVm)+nx_+9!| z)tan(W8#9zU5OM~jGsX?*oou$OuDDuy1P9rL3TSQvZC&YLB8rLJ{NLNs&DjOtXKUmXd29F-VQ+(yua zHi~0^hC}^-R)%dE%dG0D^;;dWa!qzMf8Ba(j6N`JDJ#D(ax;-@!IM#uI$X})+`RH_ z2v_;Kf5tRcgVS#>5>wPo~*uA z)X|b<*a+j)E?Z1OlO~2vI^ByGYu?Cmmm)`OB*Tb6C0eebw%nIDBq!qbRl!}8s2xj& zID>ddPd^H>59Y2G`!N7`)@k*a}m>O!^3?21tE z=e{={mdnB%unYvqh>S?pHz@S=X`G3!Nd{ptgm&x*R_G_^lcnAJGY#mV9iH;^!D5N(ZlE`fsifV)cUk3)};c8b4aFr%M z5fp@|R;rDWMNtwk2Y?AI*r4nbG88jCqv4`Vz=cR{WE_NcQC|<1{-FW&b@=Pb7pcEg zIqtP;1gk5HIJrJqeQ34K$B;bSj|3;UvErmSq%A~*%V^>>Jh^VF@BQwk95urvK>dEZ zA?u4=<9O8tGQ*$&DrIfmq9QiippaXBr7A?pts8M$Pw7l?RbP<=wyy7|&%0JjRi?VH z>7srIHlDiTMdo)Fk21$fhR@tr+{V3&5`BC11h1IPuWmyRMUu)E;Nxlpoce*)Mp(*+ z6}vMmuyQ@RA+)_wP?N^xar{TFrU@LOzAFpuk?rHZ$27?{<={RVAt}EQ+Q~PM(rWDz z(n)elu%4L)BW<+~V-ABdV@`)5?rka|iYh8|T?*Gb$O9o>f#9!p&`XmrSngasn0Id#;1r`gyxg zK2&x&y3}bz{C7x%WFsnVNQgk$?mJ5c)e%uqd40MM6xB_%BE&3%m#9|#$**q1R#|bj zoN*C7HtJivKdV*2l0_ z)uw{Tz$G#6Z^)B$ z-4lu~^`^i# zU&CC?miuFX?NI&gs=xDHbd$#B`=~D8J(u=RqADUL>*J+R5PSyOW>VdEsge6 z*10%BuBX(AcSQSn`tF--iL&&n3N9p`T4Zt@LU|K$A5{5nzCXLJ1na7e0urgHuH~{W z!mGNk_223J`sn}_diZGqkp2y`mPAS1KMc2Pnn*BSO1@PQ2}{C?3MTuf*>?W`>g$zl z2`s3evr7!uS|ubc)=$icpYl)fCa`65B-`q|my-QBq9*(P{yNgLbnD^xdF!yM5xccJ zvfcFhwX_b2ZVFp+R4vnO%XHZhH{avuq{*^H$t|bM$!*`WBE>tl`h`<(c9kMJ<4&R? ze-D=hRPd^aza>>)w;#VqDkkmSej1QLkn2viirR}xzv1r7_jM#vwl5RhOXLkIw2GUe zkqU!gyZuQ__xt!2=FV9%+p5=%s_auKRcf4<(kyCQ24?A&B0wRLo&7xr!=h{27Jy@8jZxz?3<7p3YAWl5 zT3-s}2+goWn~umTVnm23w^m&tfMu52Ue?7j{N8%}{c-Jac#gkXt~g3AR3$$6-_i~m zk`LmEVf~u4{U?e@$ccdqsHjSdx5XE2i3{kWzw76z%{)^ZFHFC*o}Ex?`8F z1s0^Glv+wU70IP@2@zO&Dd{fhQ0ZDiQo2FfXaCQA&)joAGta9tXXni9@6E~Y=en+N z<_-u!;!;q%&+NP=Dfi&)-5SAc5<~XMhede_Wv%rji z@=Qa#=?^YK+FGR-`&?&qQ%~cmYZas_k;5|`o-FU>dcWkRXpR6c*V}$RQ+E9rVYxO> z#h>I6(@&R!E2l)dHJ~6^V|x!EseG}S+UD_HnafPN%T8ajK<{qOXN`HWqr$t_0YT?Y zQ{CA=z+)x7ik5z6(UdkSu1oQEl{`Be;{Hh8h;f)Jj1DjH*}dX6#cQK{J}HA`1+XLg zXSdT?Sf7*=;>MFPUxHbOD%)k5`R!mf?oE zs?2Gm&u}cL2(tM((~^?HE||QwVbhe^GffjTznuAaxXSr*nrV#@Ij~65BDFN_SWm@* z>TPq+A(qfs!Lb}B(Wf63gDj^UzDTmCt&(+9Xavo=k`)-GF)Bn^tgaS0XZZKTsUs*l}Q&^9iR-0uJ;JUVIG0=w>{nv0X+T0r;tD8 zf~oKA__!W0ULcBu^bWF%%ckwlBY>AbGa{!&v`jk&?6%$rb{)LO|GJ-)w73bK_~(WQ@jiw%+7g^`0Vc~k|?4x5S*WlVdeWE1?w zrblwSF1!4vs51OXr}a0wU1gkn%Hi3C1RyXAN$3}Vjed|ydz@)A-x5XGi!M5LhR3dH zm$ZKamcUZydf}WnAov;S#)mA|L}l8F4)X*0>sCG3u}!91!q%7ym5tD2_%j2UkluU> z&8bf$3kt`mNRXMb*aYEFJVPOUhfPy9v84NBba2PW?(9@NCNkz>a(;DLw9;R=R6{j>aUM(k+g5d9`H(_OXfwk>dYK0yB zZ$r60Z}DQAmqeP1-W=2p>=OBi>4nx#k^Sfq-FTlsnr=J_?!*TR<>P-?(q=2G)%jYco1^c~ zkVyt>k?M4d0E4f!KKPCcq!eb$IPRbbs-J^s=0TOVLHpz0UF@iPA`Wbedf6G{HYij_m@Inh-}!kO=PtVI&ja$bF;$Whcx&adp3RNtD>%3172JXO)i_Oe zfJW7|2dLNO^V_HfjPLy3-y7fUk}LMr+=azGzaQ_7%4a+?fB5K(X*9C;TqqEC8!bo} zzP6lQ{~=u+g9V!f!~bjufhuZW4fWYI9^|<)Mlo8*N`E@xanMwNlF%l^{7%HHb*MY1LW*)5ASzAG`e78Hvn182eBE99fB}#wwtfIFxCNJwLvmjQl z&J?5yXE360r*62enFpXG_)&{Q>d)KXqO_jPwmXA?W*%W8ybAhJxQLgoI-1i&X$o-J z#)k?e8sS`t3>4LD`a_PnQvL`BNXgUQ^Y!sgR(vd+v=+rr$W1 z8qSNDG6@sBPG*`GdwAJG4J$HqFJY^zg7yZK+c{~1scWjzou5)+rHH~N=0gnL`Yvq1 zQTm?J`fb!pqQ4Peh7kVj373_n2Fp(>jFO*yB8XyVHJ4It#Ca;kwq2r`ki-?}>ml6j ziJ-Ha*jP9}z7IRS7$+=$emf>FN|>~~gbLfite&1^_#vNaoWlA5qEPhDTmH!)?)9Q< zh(2PvGERhp=i>$A*|ldc^%8`D%F_(t0o5ifXiMH3@HlBan&CQtYPwF@0;}U31A@zb z-Br)x;rmo!>l=*3EgQO>VjNDOn;6H?Z;$}}sz7GeuC8Y5s8??=@t&PGr!yH?Zi*WP zzl(+?x!7)tcDc{dzwZ4!a=gnFvh9%ok0I6myLM3vdUi1>@-OmQlE@^aOCK2=cFTq0 z^!Ua*PWD5>jwk#W==MSZK@TGe#A>b5YLJ#yyIh?KZ9u3_G(8;m(zKvm@dRO_9g3b$+{6E;XxWNXWI zj6uO;f|qOA!j(Ua8cZ&rEz) z%_tzI-s*}OzdM=3P{N)~v4-Mv2gy?i>)*3Q%IdP}YbNiFqcjX_{}$4LFq+nYfv!%U zfR1~zFl^&@t5&Qd{H$>A=7)Aikf>4%yz2JW?VDPhG@1BWD19tnS?y-G&AkL=!C!`}(E zOq5&A%cNiJ@X(9(l(@YieiHpcNwXlq9{b(GpggBbC7M$ty02k!AI*91m#Le}@(xS~ z2J(&|+^Fu7M=YMVSKrEI9XyY5SXAX(rJmRXIePIbJ&TRp+zR{?50*BSiCvcgB5=@_ z`d3w9W{oWKGMrP(PwW)tt~{5jq^5Fq+@PR_a{lKil~Iva*fApm1R&*Oaj|RAMQGhv z(b-edi_o7LaW_+an?=Zet}QJ&Deb-|oQdJ~%Q4L{l1bfKmj1`N(*6D~Ev^X0A-B7l z)+YX2@6nEICt^2f4PEYe?@Q;}f@l-QwqoWJ1jW+kZ(9=`?Wq z2P0~^8H=YYS;R(aa7)I@B0;QmZX_V+(Oq|Zu^}gB0-lhL-F>fEkXA`FD{OXB{$dk# z>e*)Sod%@JYeXCx3JP~_;>W5(*%e?ohscXPbL`81SUqj>q&((K7=h8vVxb@l9b7Qd znF3GU6|iE*JHoP4%>RYunNRx&kqy#ch5z^Gjn+1z({0;}*b0X5nxWW=%UV6LO67jm z&3d1A0^DrFf*hV1PyL;|=!Hwf=`(#tlQdLOw@dx2Dw}BC-`ND~gq=0Rzo^E1>VLlU z97-`*(85G&wEv;%n}M1NX^3;Njt-!ZYv$QcN;C?-Clzue6bOX((xw@~_EtR}9PPb1 z?;NGs>^Fnlh_L%UXsQjJcS)$pl^8 zdC?qhUW23*x)RQ6y^n}`tX;1K^p0qdQH`iu734SJ3GGu$w7mWrH zYe4q;;xi6}PH_02TyPXeR)x1SZ!%=9wepsZ=iyPj@+|K1R{$Gh>x^}o7q^KR@R%I++vQz(bcLe4Rb9NVb3J_8@&Co&~meOs+3r2@trg_MeR z8IKMi{H^@jnT#t{?dPa=qL@EfmgbnYL`dWhl_~*Vo7MP-|64fSc61MEWWm z6j_3F9I-)nbKMi*NCk$8Y7=3y%IUYS*5f9D_3dx&MvnJ($BV6Kqnlcj`PVDsofH^l z;iz~P{kf0hA^_0J&%Hl49#a{v}YRVmi4XxzCpNBD|;x5 zxn!_b$`I~wSzJ1~X|ExLZMt}Q`(hAa3f!c~7s0}PZZxCGbAFC} zGC|TiuLTMpVD}eTM1G#7u;@8#?5h73eWG`=4rhCi)xtQFbs}7dCf<;)b%2XAB0q^` zB?hm~{MtOAvR%c4GLj$Vmq^!nJiRo4h?vt6Xa8ODb-xXy%T0XpmIc|#sC_c4IT2>| zx0o7gWk3)=oWF>a`BJOt{Gh&MFkUq4ItMTeOx3+#Ku2rq^`BtDN+M5{G0-!nF}sC zVF2bI+Y1g~c74^c>WucXWFb?3O< zsFyD)CzmNGm=n7iGG4G?Xx9wR)C?5JZ`#Gyz{0-6GCN<8@y% zStfx$Ff(d9JUqF=IElw9QSi|rVj(F2pzuKhL1(Lr{H`HiR9gEJKZ)}dDy=drv&9~= zVICUXIlL(|uQb}v&2@3PPOo#oOB3V|FZKuTZ+4m?vIU67 z_gA|Gf1c_T2jA2SjeLRe4aGABN}nwJ!}1O~8$3ClUfkZI(JGf-Kzm}Zm7t>TXAhRl-c&hxXbZ!HwJdMCJls>JI>a&_|-ufNT2`W<~1lmGQnVd0N1U+zHfz?&M@L zm}*RI^e~yNcWtYfNVF!h)@^qlf*ctrDu<}%M{6~(T@Sq2CC*|&hQNZpT4ftP{J8Q$ z^lOYp3eGT+^^keds>ipg@B3iNk7{&$E#XFK%}BU zBU6-vo|NhF?&xJ;cimSmu2h*ST|au~G!tsj<6f0iI^H#|H|tJ*-nJzlNSJ5hjnf3AR+bQbW*q?cIuztquU@~Bl z2VFALz&ziGb6xHTMr>_%Rb?0^Irk3>PnmiIC^?N=NQfUD5n1n|LxP_MKG8)Zf4FW+ z5qGn&XME@qY~bGIj{ku<)OuCmDV~dhgt%UF7A|fu z^aV7o)I9JHP7RSvktLj9kyr23`Ds#0!Y1A};=IB#e**^)DZ-g@d>^LGUc{3MS=RDI zbK9ur9x`c7=^pZusMhkSc4|=0k!7>e8lk>$wKw<77mj6w2io)me$(47lfOzd&a{PT^^e0(W2)3`1`;EF zc{vp^gTyXjrb4}gPn#ENVvkHHUizrw`{F5V>2QAFda9jB!H_|WL+de!k<%G8+B=_` zxw{!9XiDr!{mJK>98#LQQQx^y*K2RcR7#gZ!{>l*Aj&K`dHDwjgXBw02c%7KvK^iH z0sQ)ieo55+(gDu;r{acJDE<+JfmlhV?|j`7M0WD~z1NNsb8h83GhR%zr@@!#5Lq8| zvDrMy-ExI0^v$=v-;oO_=dj+y03aWllq&SNGbkI+4j$X$iSZ1qdsgMlW#rKQ4~yie z=lSD{=Fm4r&{i^vS(80Tj~F(-sM;R7(K`|S<}f(9dB)A~3-!#Fi}XmWz$Z^VEbTX6 zj$Qw6Z`K8NtJx@euk)-@KRkr_&SjD1j8BJVyxNw3XsIO_{e$BPF zQN(7k5t^ycKVBYcd^pLk$+M1~^a^W@f!$p5*9!_DneBEZ@Zl`n=cz2xP5WibHg??GI4*5}rI8m$!hcIWZMHRj94OSl>f zHeqBg#+J2YzpRE7=<;VH>~yF4`+&PhCFL86R&TF_D^Cq~jFXG7nCaS1z1!Vu#xhg2 z=6-UL1-C~g%3iMwhD>BEUV*jK-4(Cdwp)F668l)0cH62KgGsIvm8Wl8&~A`wKJyKi zyg(MS6^w~lIrA$W$FyxYACRp#M}H-F)8d9-okdh9!G!M9&%V3XPTRZL$x70+xF&Rz zmA=*y-2Tk0c+z<-26Z*OwSn9-?KKei6e2bm0zQH2ZgD?AEKU(xGd#{ZgiDR;J{LQ) zlebb2X0$ZqRO5A9EFT&zeFIjqwsuzk6l)ero@NbDCzBdU5)w>3IpSe#LOazAbGHxB84UHfPTiQ%+H`@xs8XNxL7lT|_8JFVR*UN-uzK8c7c&@60F0u{ z5vB`HCxhC2o6HnK{ojEGT>;j7th4`RrA*GB(}rV&h-c5 z?7B`>o_(IZ{CeYq!ty*S?%hwxdj5$hZ*w{Do0G&8QXp@lj@MOul800s8SbH@2PuHg zaI;r$G&Rt;VsFt*Iq!S6NT6y{!dm=7%c|9rdc$9|sW

N8y#~lkbbT7GJJo1`$c6 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 Du|?6P literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-31.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-31.jpg new file mode 100755 index 0000000000000000000000000000000000000000..9ff134714509489626c09e7fc5c384c7e075ae4f GIT binary patch literal 64083 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

?%zYDm{( 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-33.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-33.jpg new file mode 100755 index 0000000000000000000000000000000000000000..93bdda90492ca0fc78191bcde9ccb308fcdd4643 GIT binary patch literal 79993 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-34.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-34.jpg new file mode 100755 index 0000000000000000000000000000000000000000..e568294b3c271bf52ebaa8f809c0106bba535456 GIT binary patch literal 70331 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 LRLn{^O5gw4E?7%; literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-35.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-35.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b0a98f84d5455107bb19409e160d50beef90698d GIT binary patch literal 35509 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

WjP&{tggkrpZo61>Gs1y#3^KpP`_ zV^%zz^FLAjTYcSC2gIMoWlbFgs*jN!*?ENtBP^>Lk1Vk=g3<+2ACAC&T~g1gzY^Nh z)S2wo#=9&Q8A{obX+bDU0Q)NPjYvN5Jb~>T*KyQhZ3lNzbG4GQB=0=JQyWNq=fF-2 SF literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-36.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-36.jpg new file mode 100755 index 0000000000000000000000000000000000000000..870c42325ec5bc4bd36cf51a061a0d0cb31d552a GIT binary patch literal 89606 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 R!3dV77Yh6-t5>E!|Jn4OwO;@L literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-38.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-38.jpg new file mode 100755 index 0000000000000000000000000000000000000000..53839d6f3b42adeeda96f364c77c2dfc1d8b0a86 GIT binary patch literal 56382 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 z zIv=Ya$KKhWMsr4v&PK_8fPAgk&==DWwtOX28W3L`62>#bS(1T!jv1r-TO=z&QqsC> z_uT?2FPfBcLr*nR#sX|m(s~P&Gm>&_ z`susdUJ(BMHIWrsQaGKstG9+|{68KDGfHD=b-+~Cb(gbmh48kxmWeebnfz!PD7Lzz z{^Wy(hBm->n3u%D@|j-I-o&Fa%_n-bW96s&H$-5Wsc&zt{L6>X;c^=R{pI{%7!-*`S#`Di<|U1V)H z+6(_M!-x+Ehb@ayVY@j-PgEp>>3!(Iq`Bk26O*MFlY8Cvzv`##upRK}FO4#XRcz9B zxr2ET;q;ryk77SfCY9fRb-MQ^(&f{Q`OzD)=D!NydYAs#VL74yMk2{qZoxxEIXiS~ z=I2_}%G6sJi)tm4GK9BEC}R0EWQDTv95@yR$(_tfuZ#Q`CQIBF9vL*Qn~Ay^H2?V- zaM51(DoPDK>NN&Qp-k!el&g~DNsm)5=!~JuyX||d$o;$7wOdtV=BlMV<0AglrI6pbua_iD6P8H2I(RfBhOdx+HPXY?+Sr1aFOK_r5O?*L~4KL|=o!yjkfnJ9N6HYkg$3?ci#`yG5#pDQ! z8bOAqmVTQ)aP7r=bRZbXFWc3xDk^JnjZzGSmg_y?XZX!U0(!X5fTmL^SKDz(K|qdq z$41WSg9l1kyO)Ln!T0}Ze*UjVRgu|C7m5ARX=dEC`C}Xb#h=2TZC|AZB;;ydjD2CCn#-_a7 zpa0?Y$g931dmmFh`D~6OHKGdRxLzpeJn3()0dHtIv-38fJP4nKU<&+0D&qAvG}fs} zk43jHb6-yT`zrND1sPP+s7pdiSW6`oz6KrpJ9+b_JenY00Q1_XNv2-Tr+_Ogxloa$ zU!SbyPC%mE8Li+IHeNZF0^7QlN;$1btA3@|rP?A1r{~G`1;CP;u>I;|#|A>sGvN1e zB8KOym*xLE$bf*UkY#Ou?M_M5VXfhls>X||yy&kQkWv!<_LNAvXfwfK0~mm?1@tth zH`|^N=N04(zbZm4CChS~fjvyJFnUA)QoO>w`v#Ks8_X$wZ_Y7t$gEOmt4@Y}MrGAD z@4F1c9X`3DJeP3LtJ?3oe`$hUUc6JRX$X|nK`oGD7^mEfeD&)Y;H^Hpu%#~%S@Byo z`bfHVTmWG|Y48JuN*wIOmK(a(jz^j)_&yC(VZYTla`~qXm+tE=m>;)Sp;&-`pX`9h zDrM*yApV&x2`E>LNRqcBOV4A}?v()-H4Z#36xEe zwsWQ3C}Q(IE#R=u*J8P~kvCdRzn4bq&KQwU zX2}CAM|_@qQ*?f8PN3tez?YT5m@@?d%L7#mOA$PSt^f%Rl7NEdMBz$*srz3&q?Th6}c2fFSF`llEV7CQ4_Olb^3Nn|A$1)TrnG!9GIaNw!v zv8J%uXJQwS@D%I5^>z-6edtt{Hva9p$NKSWIl@p&3@1KDHj38%Kq1oZaj5tjAGWTS zIYyP?0;04gL;HZb9&fgoOe~d8Dq)wRplC8K)!=psfovaY<@&+J1b$*sGcAyyv%nGFZsE7$d6c8JC%2@MLr4>70A=unTvdu0JXsU6{qh;mt zZmaw0wXaZNdnd=YGe`WnAw$cG@aS5s9z=dhF5PE<2*O_q^H$Aae~N--W>tb^*6oJ= zm5i~;q}^56u4J24Z;T!F*a}C9r*puEYGJHXy_i$$(&)TkY!S$BO-tEcJkC$w+2JjK zmq=O%k}9~0S$I=ao!EZO<6}V5zBXY7#aVQ8ixL0BQ+0x|VAkyvu9@Fc+40G1|94=e zw$JpBeDa%z)84V=x^FPkG<17-ZgMPB?_c(2t<`i6k;+8p)&}ks$?adpN8--PPs+Z{ zof~RSJOj!n6#NgKa@&T*bZz|d;3s`1Hp>;#L%j3CUP;hKZ_6xbS;Qs(W7~Xf@s5u& zo6=a-D5j0`1@354%aoyyTz6VN5xpBz9VMybfU(1k0#x^<8WEP5_ z8J-{zsu1-vpyw-DUON9CrE{n*^sLXMH{7tc%k`weZ>^E3{@c1f2dvCMd#_J6rY06h zZAmKlvfRzvK#7QNhEtmWH9A9j83e0(s~V@JDHRZ8HiQBCvUu;^Rxy3nM}6;`p1JJ! zicCM4V(NFkc48E42H`XDegLKa?lvRC$Jk)sI8!;p!nc${Fc&i;Bi(j+z7iLF%dwtE z%bpT@HTC*Lw}F-jXZGuh*q11m`a-GkpeD&k)eo!PAELd{={Ge}hg+WpEXHt zoGz0|T)3umxFWfrG7jg6c>Ok%iOBs+yAC^VWy&YSXF!)f`qco1>nM<^;l_w!XCv4u zt-Szp3|(8AK`5ENL1LlKr;FWwCAwi|h2tyh0pu9jyI8vz!{#5(l&!*UZSkpwn`bw1 zy|E|=`E37ggGswv!b1G}lNe_z!_AMp#6ORgNimY;y9;i{@BMn#W4}+?hl8|{Te|k0 zLt-td-12v4I$#-ZkM1@x;Gcry&BspN{Y=h{QJw)ZI2%7hU6(E;htH@HE;n#@XY&k9 zoGJh8X2?pjPM1t+v90o!5XrZn^sB;v1H6(O!BUIGgblkPo+g)Zt z?4`P(;DdX)jo=1T#Tc$utDIV<{wUqAa}Tcy${3H=VP#PY_i5X~0nt99KKo@3xL;~% z3Rbj;Dx7VOUCbvav)<^EOA!QTQum{R(1hs5eJ#EzH|mqv1IqED4D~KttRH@c8(^_H z;9?OO+=t2D$KDO(-uFc_{jD1@fExWN%G+6kTHJCf+>gK_+T9(7*10`3)GA3=L!uzHZ_6cP^B?;a)@w

|Paq6ix)dEXUUUv@P~S~4=7^jDQ%!0b}z(EbSdL&i6D*}aBGH-7Uy zwTFaFgtz*7Bdc*n2u2j&Z2k_vzZ}sx=pigUA4S-}rQ(Rs+a(%OA{xo0%2Fws%wOkz ztehDy5Mtr5famIbZERB#a{b-61%9#yHnA8v;VV>txA1$&Wq~G<2*aN+E{2XLRx?~Z zOg)BMtcrg9P1>_RZ2g?0qZIE@L$K8zvwYhdGr4?L5i3}3CL4`PaxqAs%sue3IpTnq zUV9g82)^EpBu|G%Uz7}WLT;4(22|AZ7Q7H$_?VNuoE_ixuOgWDYXn_WeSHreBj;sk znq^{+>2Aj-)Dy`)>m~a(9W~$P(EM~gb&C!B`XxQ)=G(Ee@7wTGc@#(cM)W}$c^yr zDa^T~2b$H9I1{zR7C*=IW8)c}ckD3!53wTnvrL17#|sR+4GAnlf`*F8&wyN(*Kc&} zDgc~U-#;kbTST>|IDDsvcSDNM`ZKrK+D`h6aY#BBF= zrhX4;KLc!6kVpuvIH(KXnq(84jdNVT-$mJbbN|M^4Gc{8PTg@!r?%}6=(NZ&%N9Vc z)HKMze}ffWAxGQnwe+W@z-j@VM&pK$TP6+pp}KOM%N64RVOHT&%UirD0alM@&vdKP zvBx5k^La^}hq$+A5~tha0HHrAw~+MdlE$9nC{Q#npONdIXMn*XXA?hz-oAW(^sbG} z5a89-c6?%zXF)Y&&^654!OL$tgvEE5bOhZ2Y{OC5w?W+&?1^{zF()dqlO|E}4!N#i9K9&Bi6VWA%0TTC=S8AN@2# z6!G-fx;1@l2D`Ke8IvxK3|Tl(I`L^~7-Z`%q~t&aby}_O&r%D5Wtfv(6^2MiuckH9 zBZI$5un9qASwS0RJx}dkW+r0&(baUkghg_--((V@xZ*+^*Sm5+SUgvHVTo6Di|18B zb{*N1%xV>lIXiIp7#XMIW9Dn|0LDD-gui)ZsHQGDVeN_SQ<#K45SnI8r>A zD{x!EPU#~-!6fvTNdEaK?#)30b+)L7CgSKw)vODOsNV**GhA&|yLu7cJJ#=+{IgdS zf9G#RnE=c-fx;B8QtU0dghC_v$WsR!&Wza8j3LZMNugv>ss|`Ym#BuD5;RD)b~tV~ zR2mLvitIe_)1Ho}z*C5P?2Bb+4>|%I+^MZNrfDP=3zxd$E-)g!tjubW=~FnP*j-x~ z`kp9R(<(K3qRYv+!kDGMok65z1662^Gm4_WBZ5i#PftlmG&){(2;1k^2Rl25)xyUw z$undzAr4~rNO^^aoJ$*N)ORp;aB1^{aI}G{fom{fvu~4Rx8_9d_n8tk^~6k?w#G6; zIumgYY|YNKRTME!P)$|AjZyUtwj9f(2GtK;o|9BmGuMEPR{+$&uUZ_z83-+T>LycE zH;2JW?>HLhSDeMq1vUvSo7?Lxx4cWdty(Ej>ss*Hpn>*e;e6OXpI zp))xpwyw1cH2&zs+t;eqZtUJq*zs|efCvK}P1cs_x4O7{^#z_E%G$5a&GKV z+Qia#t&!xod+IBP3;Y${(YyWlx^~JPRbRm$#TE;HexUd}Z<1YZG=^l1O(CY>Go8us z46yuu8&>l%=w&w_QMDdBRmk^tt4MgjNbOuek2^~XVqUi5U?3aXv0!oqDf!tX=ww|z zcV9OLbFyA8JvXA-;=hy=Zn?$i-gH@*B9Bcc{i~IlHKR3nj9bLX>-?TK!^ZroJjuk# zzei<#))dXTpxKUs(QalIfjJCFgeBb5=%t45RXf1YOxbDU5|*7g{BtUJQn+a#>k#)& zn^W{FzG16(b4$h6fqRwkFiCO3?Wgp93^O&w-Jqd+XUf1B7=e@#B)x}NLlQN$0=KW3 z|FWd-q&IZx%`neYK~4mN;<76llnxDfKmXTJsSW66t<_A!Sub=s>R6d;b4)ebn)V$)ZwzdADy6b`Q=a<4A&;%6 z{>`@ItX!!+XTz)fvwR`#?(x;9wyP?kqNMp;Cl>;Rq-Ja)4X-HSrFN`{GAdD)r;omx zGp5a*9QJEu47@TXOHQuq*A%-JKlNn-ntNxaKJRI^&?&&H5{lfmzw%7_TG%FMS+FG}`h_pHmuT-^g3Jt(}>?&R1*U_R6v2_fJDQEr<1mb@+94 zVNqs68)LI7gHU48RYNE;fe?0k6>(~!q^7qn`dhq6r$0qTMK<9O#pWz8J~s^P;av0P z@Hx0#k!O#7jP-Q*2X}OMbRVrP$wy01sf&(FzCm$orVCtaz3^6B5jj+Ezms2r{g1CDJ;ME^!Sw zS9Z4$^gTEmhn=crR<{{_CnCDBlwlE*!CURm| z?yPPS<2#0)rRw08O}x(?IuE<6BAQze^lx2%-BU*u@_F&EV@TS?^|664^Cw&5xmybO_QWN5yd!9OWSJn$8v6M9du5qB76&r*B8E8B znCT%w7!L6l(D#+jR}T}#s9ZQUCjL;}< z5n(rUOVtRYryU89XleU4Zs6*#;X6B%+gu25UUn!*{!&Scz9&Q1iX4Wb9_+RsA3k+Y zGZdpZwwM*DgbX*BGv-$Isk@&kE2x(hI>~VLt6k4krZ`eRCA8rK43MjBp-Okfx`m6V z=c84zwu!50!U{@$pR;Md6DnpTCy-%)G?m}_f8g}w2$XwYt+VXTppnGr>rx|h=e#no zz&a>;6O+X?KZB{aI6D$;AEx87HE`4dCgOZh^VoM0aZ}WHs|k23VO^Y*$(YP%65$3F z-Ss}UF0>9ibZwALCCuY_W0zxZUbDdJ#op@4@H6|ADJ&pegw8LZz!PFUJ~L&;ZFDtX(H5@&hl_t2M)D_ZDNYW^;IJWCW|l83{fUn59YcGXd?YG zgh46u&I)7M*5I_=8~-E^y0_iv*?d&C>y5hmCsj2!N2Y^@d>Dv6E(D*rhH*dPCSpub z=yR6L0`!G6CKYiiJs~Hav%|I zU9Q4f8t_i67rjR9x z3m=;(f=>o}t<`UxD}>7WHxt6QFOuC8lY~JN6rdP6xu__-oDt&%#}cfwKJ&kmINj5? zXi}yocGHRsg}HN~J|dl^f*1L_zmHvpG9M`L*u&B+xy$IY{eyYgdQ`NJfakbIOYtcF zEQk61_G2=um7x{}c4QC2qsEA(x~^}N`RNe4O}|y`oW+|^&Md3e-aEb3!>}p;^bBB< zNOdN_8$m(-^G7!@uGx3XefHR?-uei`mH~|(Q931z?)W9M>zkMGIURN7JFskFyNYO3 zK=U1sH1{!vpHS89$4Ri`JiS7D8DrW?V>~Lk?U9hsK~ZJ~Jo=dHCh(H$8|;tX2hkB}aA3UcQrw7hi8=~lMAPzb zA;wb5V?=RM*%|Z zYJ-GGS)h_TGra6l z%OA9KW31-l)Jful*QyIllE#nUghjz=OqT8&Y%AjxRpN6d)dt0Nr{9R8=31ze>MzAX zqWu|cZj{}e)CfKkUz&;>ggFb_s@r4puFcj&+m)>j)0Icf#p9rx0q!4hypKvfY8}fn zHS~GB*O}%B)vy=R6tt@{9)Or^GIdXbSu0}E=R~K8=J5s2yFY+9xM<1WgiCT$AQmS5 zsgP>AZ7coJ3Le$Z>9m~!CeGgVmIRCoIPnP|JhiH?RPpjyM&9Wlk*t>8A}69#L2BPn z%w^=i#bt>yip3~>?{UcIVW+(M=z1Oa#Z~C=yu~-AA@`~S9HRyF`Fiy^G^%~&*7i>@ zm%{$QOx3-=px`{OTI4`TJU?3-3CR@qEsoU~bO1y|F?ybV|61LrBn%GjqfLv{;zo0{ zU!?y^joYk)#y|@(a>0;mRXa4%XswhdLpj$!cbDV#O+Lr@a`qKUD02jVGxEL?ZeX3e zl}iLtH_qU!y)CoUe8LHjKDtd{!H_bi+;|Y&qACdjw5W!9#b3hK4~Gw_q6@v zQ{v{|Y4I8UveUk0IEx!ie6YM$ZL<2AQmuqrUgaI1AmV9QO+mGWviMGgsL0TThw@Fl zPCMh;Sm26@?uV6JF?JnY?loIjJg=?p5`!|4ps5!M1aLLKy9CV?Q7xwVQ$;ewyIC_N zh^jB@vqr!c+ShJ%nJ@(wSssf!B~bMp+DI!lNyh*wCWC%i0om)TbgwLI>Mu5?4DD|@&}y{fes=Qu=W(EVEBrA>1|ou zYqL!L9QX!KfVl6~VU+%EWMcpIVO&RL)i>lSA^YSjVAJkt&r&4!gS;P&dX((DajL8_o-xZRw4|R%VH?_tCIK*;aBl1rhCZ6oKAmyel|*>WvL1(Z3P!s4?(sJ@gZl5aNC)b3f+IIHOt&a`B#U`+Hwp_;^H&=HqH<1+evkV-X% zAnT?@k95an6b4UI`nlRo$)~5;cI22EE+p@3rYkFDgFxM;DzdW!qdC`$hH3=yQ6Y?ayao6{uZfKf!yVH+D=hU1dXF+qy3)1KhbHI)Rq|p}vS-@^4tgOC z)j>FaAa^f`O#HhNI}+yW*DsG($TI&40;PGBh<55~+*%Zt(Kxt-?vo}KU?2}7S=3-|)Q%zI zZYinti_Xg*$s=C2{fC}uLKDad$#F$!19`sOMFf4yh_}$*Foy$BqYQ9uBz^s7#2W5d zQYTE9Rpiy@@$HcGK`n35ov#$E=RC~8jPa3G*`Nd2W|Od96N!<|rngkijQ~RJv}_?= zYle%7u8;lDz!)(NRpIrisv%P^n4|}WkgY+OAwbLRYw(8;y zN-4Bw!1h8uIEn^JE=L}=oyX2l%FMO?%^(Ug9DR zn1V~nOzmB!!F_WJTM06W;JOSaDktPfH^%zyvpx^siKo2T<;|U0L+NxDky#!-Id&6K z*2d2SM^-Pgo`hPJt0FBRaOJp637&BO91H}IGI-PDw= zW-ml(|K`0G5cM_SM<`2!rC>i=LYX$W>Dp>U*6el~?(BbDAco^>_@P!H zyS7Fr;PPN?BqPdnQ?EHhSgxj+OgH$U1ybvZ6Pt6eH_ZCxu0XLu9v`$*#$&UuZhK4Q z#*KTjd4`=a>)^m**)*YPT;C8FP9J5NQ%K=q#EhP)eL-9p@B)ZG}!~2`PWspa2HlvY? zV>J?G2uoLSy_rQuw6p(-fYWWS!41-Zfa2|&^wPTUXeI{?n`n4CUp$O)e0NAgfNFBb zvND%+nATdexgJf|B46QvxD>)g1a|N=IeI!-f(d%sPJeKDP!H4zzw>mkP(fB=$X?dL z?mq}IN4wmv1dlNkm1e=Y1Sl83q)horzn?CiZsPl~0=@@?YprOiqt>vtHzY_l}`y*>< z%aFe{qm4vS;g-M=9J0)(8kx|AxF*4L=!w35HtXHlIIGaupcWbO(>GaJIKLM-LRr~=}(GRV<-K)Tw0_aN; zvx3n*NTtfDTb!ghEfu24Ls2p@mOgb+OS59sS^d^Jxd~6lRVI93BoQhaG#B6p1wQDZ zBei1iMS7bweALe)cvCk4Ya~)rG3C+w9JesYE+4(`~ zXFqU3)x!ej8LWq>5DvsbVN>W@MtiYrnb`WH;D!d@kCXbTT+#}%X$Q{$NFWA!bl$}h zGgbjY?T>;XQ7D&7u#CTO+RL9CR-2|#g!WP~!(83hZXl;eYshuCpOpgVDoCpJB@juz zPF{*XT25%cje~l{&nl4EE*tA@X*HYO-8T8%6*7CAmss(T$k9hD{@!K^)6EXrhj<~b z3m%zI(O0;pY5Q2_Oanrx7q?CQ0*n_|sIs4?&+A>2pwJng{3-Kr!a+T zEj5PNB1GPb`CXN$_0x7=LROF1roDc^#;cT^q;XM7-!|}#h{g!Q2&xaOEWLN5J!BJX z(um&V;Y*`w-ySLsdav6ev`xM9>ME9MrfAq3h21gH>8?$J?G=%1)li@=R(6?v&q4|3 zr#iQm$3P(#R18u4eY!%7Tg;<$$>80!gg}Ia;%{0 zGZLnsb&VmzwF(xY5Zd`8;@_8?dz5TbW)$$*Xt9*D8upX6PfB5H`zepe6+7%3M_f~Db8e*IpQT}7O~=&wOnUTgzh!mNJy&J(OKF><-T`rr{a{Ur&3VUQ_N z8SOf|nRZRO-TR}L#ZEh#Us(%$fKHxXS1E>8pqbv8XeyE+Uef}rIh2PP`hitNLC$Ijn3U32;_~QX8(ehpYOMfmvm>u7j@Mdjcn`CW5I{^ zf{Lxs8KV{D<9qMwVxx*%yoO_KZJty0NUoP4dT?qMJ1eZX47Ke7la!#;{_JE+j@(ii zwyFsIoXQ9!HlAOnZ>Uv0+jRfc8+$rlL?lpYmM&FSi$X)a^LnC3h*GJULRiaX(xu;& z0_O`vIfJ)UfX6R`UtPdJq(?| z&BI4n#{021?+|iU=#A0%g)F{F%?G=hISp>4Tda*_XNq{&^~G|)PWl|T%CkuAivxoz z<<4HKq%+6nVOZ{e5ynY&^e|(syppT09&Dj)(G+8?oNtd=x=Q6d@;HmHoz!md;OaqQ zY$Z}UZYh5eVZ(KaN-bDOF+(Rc%vhp+Kt(A<1u%!rI*&k)L_w z@{&5!KteN!kF|J|on_`+hB9YrEOIgxl>MVMqQ28}P^j5!MOH^^4wyz4o{Km{<|=M4 zYe{m4v@Hhm6^82Q>wo?o=xwJyG8mMO*lZ)@7WcG&B=P?j%>ZYwmSR6mfpoQ$iNT%MF zfm_4RZr3ACrRgJ`|c^vC{w6N%Mg91pNR^u+Hh$)nOsqyCb z@jf+iuK)cNRALMY^I-KpH<`e>iFt32tzWVXw%aX+)8!Th8Sgug2bkx7{mW6An}$jW zg9~!W5C&+?LFV-NZY@2*P7mR zBp+4o**=cpwJuHnwD_~l0Pie8j^6}}j8D2|Rg(T4^b2E^)TC4iK`MmMM^I^^z zmZ1Op&u8(+3tzwVZU%%I+<=pqhJWi#~u`*gXy|~0t6^|oMpDanu zV&I>FphTAyL0_IabgZBqQ~F-1r5HY|Ub8$Bp=jX8jF&#(YW;{Dz48i}#7sw1#9_qo zuAhg;)wh-#+YJ7e!2`s}DF<%QY@2SjF>fo$2=!a=xrJ#i-B|aiA3fo_foz)9;ZDTI z7YSa^fXf?l0>e^xmqfa7bBWu%fFTA@G0N30hC2x6GeGoENqU$3))?GZh0@zT$z7-q zIR$a7DBgbzrf*&&ZsoZsQL$Y$HMHv~g4b`qBFpm~Rsrh(T^i)7kNS#yS()fUSp7w>E`L#r~OY3DYPCMcCw2qiiJkRB#YD-G8I)xVf!p z|Iut1(hZK>(ANK;P9Q$^X&CNbGpyo@%ILb|^81ibdA}e!Nk6-4+ZQ-SfE7(_a(4RN z8QbhWqTvlsk|9yc43AD4O9JgPpiY{nxJ;C4&le09P~@0nVcMP_BZ!Z)B8b$hjG13K zbSv`&dQg;1=@N~9)dVrR$9Y8&$rCAY6&i;G2at-o3xgTMAW}w(Zm)?Hc0yRwjQ-GD$JKu=6@`O#aHviDBaUXQbF;V#vMAaY4s6{Qbzq*8y4TB!F8f@iN~0E$ z7%#TtD8vzxL#qRhdXV&bHnc|)zg#(IO~e%`bwwo1RLkp5E`ovAZscm{X<_^|0~p9% zk}9y;Fi2t%NeQ3l)Ip<~Qq1Nmn<36lOdwGiw$!R+_a~#yoJ9+3W}?)0T`?og2HNo( zFl-V_;9xNN!t`e?b?cMaESJBN-qR?F$?)SDQkG2q$9l6w1w4zGNnH9`U8t!>EnN^9{ z;~Wp=j*3~PTUre%TyWv(h=y8W#>)3CDr`j^zB{pvZ)WZl(?ugr<#Cw{NbkFL&{T|! zk(`6hI%w$t8;1(R+>j$0p($IncW(ONT-~FjT6%bEXI5C(7&EFCOa&_Cj#vJwr>6e^ zP*fyQr9SW55P2G865Hd8hCeU5+p-xS_k@hUC!dybGT&@-`s1&!!gYp(ja*BM#viWi z1{f(Rl9G~T$7B+v)T8d)SotKCJmdSnZ?{2~mjEk}mX!8?Sen&Dz*E#oTEdpkcXHuO zj4_e{IOLxM5rTRyTTQrEDmj;&dLjqW#2SGu1v4es7k4y0I%4qN>U@qsL&?cMTmg^| z1FIHvn}xXL%j4mSXC@8Ba7=UcuFbo;OYcEav&Y-Fl{cQXJEK;6-; z&N`)w)(_fIQ#o>wrPmf~yD+;kZx`K(quWcou(dZQeq&Y3at=Vj<0>#Zl#G>bBdT-7 zEW#QgD$qoE_9*4)=q`(MVHS7U%dtO(RC2+HbLZm9;1(o!=XN@v(ltf9oWC&jU?!DN zNO3f+-M3cntFkTcu~*h6-rKM<5;-U0SQCy9kBf8qp1k`@u~Z@EBv`nYca5<@0mxSt z1grP3FMJ`tZ%1xVa=&Eez1LKcd%BC$p1bXDd#u$FD3Yd{3nr_h(>j2}$CQlN^(9kD zj19E;ZWphg43kFk#$1$sifEJz4xGdF#=2EW$zU`rW!wVZ%7A}FW%Z3c80Uva>S%8E zdJBy$O31bLdv(=zN;i8|aKTj(bq%=XWN$y+{=HpKiZuBqH52=*){8sMQm%jNxNC6R zcJSQ1Uu;VGbpp^@bnU{ZVma$H?KH~&0GJAj_#=W-kT5;gg_XXeZ}9bXqlH%>mSiQj z+@%9)15p~_Tbpxl6)nm=YfGXp+q6xq^=^UF*SmefM@ea^sbym>Oj1y*Q%$pQA@YeC z$NSx8XM$Q@Wx;f9Qd|BmZ+u#`Gep~N0U<3d?uw@ITj>7)n13`rn$+}_#-{5$(xXgs z?iSdnR}K*iXB)PVPaRcEIV-9ZZi$2+C=R29rk4RFEBN%nCt2uySy8KFxZA3VK(z|^ zeaxj*yzOTEr96@K=$S{Qg^Nt8YY*?s&Mvg^TIe2PKe$rDb?!66kVs)dm(wQH38JjWGq`Tw5U~=AqDerE<2A^p=?x+Y}=DJF9nk9)8^ETZW&9+o`B|97V7OW@29@mvb@BM(lN2Jo7HC zL~R&4NrwQO))mXso5!jO^@nUKbtT2Bl*(1yh{CW7A_JewK+Zn>HePkMTU-;* z4w#d9_ceq`S`G!VJaa)UKWVMhfC**4z&s9za%_(RtrImob)n76w$-)TOVe$8 zzHW#px@c_~RZ%TmvQd*DZOT`Avm64zZTP-6{+&$RXe|Sy3Y({8_T30sKQe;B>=jRaI7I?^JS30ud&qNeedjK=Bvp8Jnfg{>p-uE!hNn zN=`fiz>a@Rj*%N4cb0?2Y#_Z-5*F)scbnh4>VS2VUu6Ul04A>+&-M+fIR&?^(Xvg#RYDLFO(|c z7O8e-`>}%CE=*WYahPC|z{;u!80V3n`E-O#B3y$-jz*sXCeg|u?{@k(QGNMfs^Ms- zVf*^<8z;=!Cp>|LZ2tiE>QH=c%FU$Zs;+9ukf5zHm2KWjye~gYC@nV~vLOx+I9wc`9&$%H&rg+{RdZIQXn3{;W#m<% zIFu~3$D?h_4_2DEfat9Vvw?QOXWc z=C<11*fwnL|pcTt6v)7^`sw#34alrMX=-muzLFu8Uj6dx|&2vKS$UEc8iYkurbuTr`;m%N^WeOq?Q zu9()guk_vB>IyiN{G__lXp5cV*M=#GGkD^~(0iiRpR9%H2bteyizs z%^Iy9cQW&CP>6wP(}r!H$nkZfi9bwwi~S(%-)wGj1zM_|BSk}67%IBUZ-!b4QbGns zB&YGf&sLgQ(sZ?}LPZfjh)3D_qd<#8O<15^&2IOlm*(3OF5_7(XKZ)I^2;GM{t?mVp^Za$ zx^|S?=wyy~?e{Y(28=tbb&$s@70-Zn{{W9!-cm9iR@JpZW@mv zS||qIFkn_A>*pEd9Q3H$DT*rmP{VP>F}1r>3gyf(<5g;6IdnmRfRGLb+<60l2wJ1QM_TcJzJIJ7&sJFQbra_lM}Ql%GR>d_VDB`-z^ z<*`%mb2WP4lbqC&N!&Oj6X)nUl^(leYfNwza%KNqd0Ihs`qqS1%RM#!YzCK>;W%wHaQWUh9Ir!6)jBr3DzMUqu+Tb`-vKmP& zt%!@25#j3i>5WbOnGnnrQ@e%1V-l)?p8)+ZPfS;yRK}JU70`j?)WArTa*vO)2CRtD zum1q0NHOHIAOz=z;~hqh6@TqWc__-WOD$LuKo`l9G9$PV!o#Xf~&{Ww5O{M^kUB}>*l&l9mok)LU24N$;dl;atb9< z#2WU)6i&_J6eZr_TX<136ctMyVQdO|w#XovCJHcqm>zOQan!;hsk|bej6|1~Hyxv2 zS6LI%jiSwPW!?Bi0FR5j?!;$5KsY@@PYPm=B}cmwjJt|rH(a&AuHF5&eOSR=R-d@4 z7co<*LG(sqIM0%N1%nIFw0{J+R5^;O?w)2|&G)|;g%L@sA8lw!x~N0Nx|zMMXpx#f zQ6MnlWg)OWM;KBE10V)J_3KF?q(st+NE}^jywOQ8!Zu2qP`f(2DPFJF6FauriB@`l z-r)w#;1Rfkv=Rn~! z&O!QeI>c!)T97JX1`#c88Vag#{a0n$UsPRZWGLa(b~}cesa2MTP+4x4ij;B;Z%uZf zo`Q9F{4%sPk`LtFcuy}|6_s$3m2RD#zm_#x9TeRbK#*3OI%~sUYu_KApQd=F)A~~N zq$(Amn?iS2x;iD|!6p>b+S=3o+c~n%k z`r1H+g?cl4*DvOYyJfjW7LPGhJ|J0VhHyqVB+?`*G3S!%G1c~oqM}oJi52=m%L3D> zC2`8U`wN7*@VYt*{hNA%QKW8`)vB7Dn{~El_P{L9P5XuNcplrw{JN&)KqH95iYQBR z-R(w$ljLaIfTgP<0a~wjm{Kh$R!u4o^}4pe1P!A&ysu= z1<+u5$-(~spF|>pt!)unKtv~P+QJ~+%rt`X`(#xKTE(ydY4AJ(a6;!fKlyrG$|R^D zFx4zKjFz7bAaKDVF;640`Eyd(VaEdt`A7UZjR|eIi9Q%|5+I=1L`1teyS_P~NujEd zaEzWs5mMfWZC6 z2TT)eiqvf@=ZASaqnR90wh~o$`%N@w->as9RD9%`r4>h!oUuQCi5AsXiZxG06x67Q z7ZPKN;oxE|dWH1^Z0*LHimJ(1ZmO-WaRhTmGRz|Wcu3QI1!Fjm_lksx~X0cG|H z3MFy|2;2JSq2JIo@znvyJwp0BNLDUD7Od&s39FY7*N9>!kwKQcab|c|D)Hu@xKE<+N+nw^M29 zs&rwf{4?G~IT0t%Z@Ijw0dvND<$AgYeyo;R7A5||u-vW?2V$TX zs)m`Oiaef4a0gm#6(h=REUmkv^gGTnTy_u#q^5R{%>d3Mq@oc&G!perbxdvU-E>%= zZ$D-St}RtOK|5S5aLBQ+sMHsFS{T)2j7X)U<&=PMK^X_FlN^@QC_34RhNa6l{>#_o zAH5Xr>75?Zwg&dS3!rKv=i&EeiDzs5klwhhc6xiYEw4e{DjrFrlFLo0V+hP3eS8^(}ozj}gtu43RA$M1fC%5XmMaxgsv#XDYg6&Te zACTj2;Cj%pIdWR%!kwuUQ+hq&Tfjx-MBfZ<5#73*s+=|WqU=39>zYe|qA^Vypp6XS)~|KQ zC}GA~P5=O4k(@Radhs4y%c;psP-;{z8b+f;9VVsK32v{hsqt}fCp>Wx+zSh6Pgq{O z^e3{^(dmy`UFb@BVig2*x2x=T+GdGkRSOJ|SH~g&{1PwMtfq^79niWhZpW#drT7)V%++%{TSiPunZRP4Tobhhiw&1e9;x~JA^|aMY0AumYaJTZ$TD=Om*Q$fV z+i#ADtf6wegdTkKUg+E05=%vI`*L zC3R{k;Wz0Ea~egqx*E zZTLs!fD1~?ymkZ0LFlOuzpV+n?^pf1rCFL<;+0XUWutgz_gIXa1m_KpAFopmh?_-3 z)R&(u5B*JmTI+`|#q)UE4X&T{qk7a@g=lPAd+^X1OmS6KQ#_JLg#1soF}064Q(OH>-So`#>8|wDpV<`)88=uco))JJcrO_P z;sNq{s&_&os9sGm^qoRc$J&b#(xk~!a$eT@;)|Ek9`9Nnx-U}Qr=<2}YwZAnqB7tK zB4>;gEW%6=-JE#`sz)?j`LcC>S4e^`2nAa_^n9LxZMOWUNWH7SbW-8F;@yB|G|@ilOX%ix$~()#o^G@O zsqPP`%_&s1RhCGvG`j;yPf&&+i?=M%%8P;k7(Ox4NuzW_!$#&6lIv~vz{NME<;v$} z(qTHcTWIyFiMtBTCF-)4wQK2hZK8cUaHB_krkZ)-s8rql$&?)b02VqDV?eqp+OkV9 z1iasmL`ue*7cNK9CC$64BwXD-J{Usl{{T|@yHe?!#Ciut*IXn;k{W8sV0a=Yh4(_d zVC~O2d?ZIvR_fqOPi>p_ohTy<3V`!(_3A-10xiqnmwz3JYOzCiOAR-RyymLS)=TCls2x zxr;BJ-tSk}5(b-A-Yv8gw%Dtu_9$SE2-HuJh|mGR$sB!gj;n@Mr7dNtaVq>iZ{-%n zGUcMyYPOv=`|bPGq!w0cORU)@vGCmg0JV|$A3?|s{Jyo4*-5!#5EVgfHeJ2` zzYk! zGDt#LZR)Cbh7D^)OwP+Z_)H^HG|O=rZC8QKFxI?9|Tl zR5J!7$j&mV&Gq_qmYC9S29j~ds>qkbtg#CwyTbk+{C+67vGT+nIgzj7CU<=n3S z0Pl6^dMiWnXF(vQhR{um!k_odqD(%k({bc$*g-^$Eaxe7-jgc|Ysgt~Ni|I6!8%WU zeqS_O{{U}&FYA=FQ!j1%Ee4a*G1CdCt`#=x9)hs`85Ao^1#Y04jb@AFyv83px^(v{ zv{bp1Q@Usg;o8sSo!|8Fq$vHuj+cJvP*hI@oA#KeOKmep9GT;3kmv99>oqmY?GnS|D#nY_dP-#W z0}@16*Qt4;m#HIRqyGT${+FM{W*TixF0e$*@!cu_rKxqp&kp@3r5YPCLpQ2lOzS=X zNNP3IFbB!Pg=eVFPZ&E1{(V6I04lVAHcmPJ0FQY@%W1~CG|@flhs_sHf8wn>B(1E| z#VU4Tt(J5VQ>~hdyTmZ*TRS(Xw57gVv>n9k&aJo7K-0@EobD|Pv4%XBXrr!y5zagh za~VIIs zcBi_QXsw;u?PieHR%?t{Q+}~pZqU4MfYL!<0?X{+9PZqwA0_H}-6b;Gm-NjfQt!32 z6qJ5P6CYRA8RF4SvYO+UTS<4ozYs69cVac`Z`mQBt<_YTuhOosukF3owyoIc>z!Ri z_d?D#G~b7U8Kr6MC~<-8$f}{gCmjhR{{WKarHR>nJ1UyFajKXNq*&8;^sQnybU?Xp zlDTt^WzA@+{!;dm54#b4*WHlr1s897-D00gUAKx_3y_%9Y3tLZfF#!Ih61pWLX}6_ z_~V|A(vN8VQE1mDv|Gsf7}lKWe0db4A=cZ~IZb zW~}tjPiXF~=e51=(-j4?70%hLyMJl5+^Z?y9OF>w`=m}Y@p^n8;p@zFRGPJ-MVB!t zcisX^wr09F(r;@;(ibr$xVX2oY%aBWX$}65nmW5n(idelRh5+MxO~G&48cC9Ah7!X z0C%l+he`md63|lYJEaxcOoW{wal%!4pJrYvTlz%q(ORziYtx!yEjuekc)#DODa#cN z62%Q2ZFNwQ7=1!UMn0?6fwV77SX8h;i@m~w_QVL{qGct&3gd?r-%$E6x4G(`{#mL4 zp{$1E9bAfp)FeodM#rCRMMD!!3h_V>DQ=7pWJ zLSJN<&?P&eS@tV0?X=VDWjij(&_$4$M4P{E+JM|$0>?L>tx?7=qV z(|SI#;47LiWWdN$&OYbl$)7*3Pe&g?KoPs;@%F?eFD`BglW0y*b9HU|-&7jW+$_3! zx|Vt<;irx%e3}GTUn4rRWn<5#oN!*=|!{X#?W2U z?VTMx-YR;AdO-n|U@}b`GfQNa zmC~M$`&Xv#SIeC9+-qUHysjyo9(r{50Ra{{auG1tAY&a^Kc}YLX|}yCOW5R%t`a=cN|b?e&Py>2-;@*dAAYGc zwvy5sM$~YSP&gVMJ_MC(X|y0S&C?{*M(9W|tG6TMSuQYM@Ip~tSVC!!Yi*~Dvcjc%0^`a)VZSHKV#F6qbh}hte005u1Kc7~}04s7K z5)XF^Vz&8%D_1Ib?Yj>&C**?s^0;SYR^VY3aHQa$mN@EkP*fDgrQ)8r9Q>e&swyID zRUC+c~{)3oB@Dv-~uuVjF0_~{5?jbf|R0LUU=Y@bxcWIDtPLa?(HE?G`vn1 zbxe*}5_2Or(46u0=lb;)xlt7mP(#tW3|Uk)8;cK1d&jynhfPwbD$W}j4Y(3O$l#LP zlY{i?B_lE_1PFV_7pt*Py`5{06zaDf?-Q}>5!6$k1V^-ZSQ zCuQ$V@%=cW(?<|C=(I`nN0*D4pC94Wf=;a!5o_HT9PDi|F~L2r zcimXzufD#!y*YYQ($VS4?Lljbw$}%bmhia=mt4X_g+!ZC{l;W5zUJC#NTy5>oPJ32S=q7S3g1Klxw9lG>os& zi+)sOyW2i%uKOY!>#tuvw>#8}Pp&;d_d?-rQ6x!fq12ZPExIUV8yX=;XLv-2Q0>F+ zPCB<}Ay0ZeGwmm6)>o-#am)mJVXNd8!qoxiv1J3~h$w*LTirI0WR z)K&Fxv0osO1pfe+j~F@K)_!M^nodv%)?>;Sy^e2P(Lvy?|EUjNt64b#oa=KN<(o$9urZbVqh9cIUim&e7Q} zT2oO^Buv-q*KS2e_MN(hrH3_j7ORt1O9?qI4P1&kBwa&xU{C0dV$-y8ikRR$k^>!QCy6lsYuSATB>3I6U%C^2R!W!b*~k^&)oK0>wpWJGFzl zdrc^A3aXqEH^zsY`4|`(`*WU!Csb0E*%AX{maUejdYj!}^@F%5DB^WvBp?zC10s)z zAD2EnkFQKu6p?tpSVRIPsF3X0{Jz-Au8PdVaFPnNi7U6n~nFVxywE^q}?z2p4vLG=yWOBlAL zMI4HmQW0c)u^s^0arEe8Ze>=eBsg_ohMZwXD}!ZsZu_`EDyz<%Nr$!(ik57pEQB2K z{m;1SKyGH1t!TZY5xC^KDykA1jC^m_1W@Y)@*E5Wp&*i@$QT^;+Np)AEfd;^k;!{f z@1(=4(ZvNb>S_nc6gB?8SUSR^8#&&szbpcDN|M)Mu5~93P`(gwL(Tn|9dJY&ycEjkZ+`xEVXxkUpp4 zJb%ZheF|Ol$p}R-NbUbI9urFzExX0%aQb;f-5O0RWLy%o5$~)Z+1)7AvFd z<8+M&$AAe$!8qd|AM@aK8BIHsP?nx}c}p-m8^d?Uo8cJzXsRvx!?<_4tM;S2Rn}D2 zPV-gWZuK(C8QHhF4I_PX;YVLrazFn77HOVVI1@82CX3OPxaKAb#)NpS9x8TxQJIvI za%`_{MV3d1vVwZNdQg20qf1&9V5VogRi+G;C*e-Aa0OhyxZaOsZI}N5lw-8k+iTdDX725S+8Wsen_x)d zP{S)400$o&$v|BqW0AdGcLSF3gY_r;{PYaQ zl9>c6{*gP;pK@W~aH(k`rfe47rNh(c^vKHBz%4NqW_%UuWKZS_>96$s7m zK+J$gQ%N%6pqU)2D*`!QyeE~@Ov#xpu?4~Bi`fZThD;r0#VdD72)&!4n(Usi=0QE9Ryw8*cg%C-aCdRfLza?gakVI1Fy)YWZb3CA9Lqxad>3pj zt-hJl*;yJoiDUpCR#I2T0gE3e@6e^C5K9_+Q9qC>4t=y+cdj3I3d4bF^wmv1*P4z& zh5Df*BO{Q*&pvtu%`sw9>?{Snz)UWn8bcL=GXK;$IYaHDC)2?Ngu z{{SyS%;{5^WShS1B1wH5j6B&JcVn{ZA`dsS(S%C#VbkRX{{X{)%B(j{2xZ90@N?yl zAMbTRuXq-TShzMomWe_heVKdPAYG=0!A~TS?xa+24AaIloQ5C=@IF04^Uo3rqN=ZC zO3*etqLkvt;_ZWpX*BYyZ<5{!Q-af`GT9>o+!_8|K!-3yi(=L$P-=^qQ3uUWz4}5@ zrst>W<=QH(>dIMgWJdhBBWdJ-Kd(lhIzp8a_+VPH1RqF^QKh;JxvKxznDTv z2RsafKmK}KCT^g#S)tm=Y{;$!DYotI==Q-K>bpl*+p4J?#V@@JBLPbzf(Rh^jOWkO zsn|)ta{E+LzBr(F4pe~DOEoR=hcrdnzTW8(RUk+z92pBL#X%wXvHYa6jFF$ytK^)0 zQxQO4Nk4Q^lM?7wsabLL{{X*GxiISNct;NM#H|Biic7dd z=Kagh?7`w&El{i>EmrDulbGJ7wQ%Gd4WSq1<-Whqp-JZn3a>6)3W7@nt12oYEU5X+ zdOJF>GCE31YPe|LTLmpl?vTYzlJm&Y08x@RWh|#B1Y~s?xT*wcc_li(k7O%tkeIT9 z+iO&+U3PDai-s19p)axx%{>$-FmW9%INUkLH#T$7t2)TywIx3E94yQV3K0c^!)@Ny zWrIlcb^a9!m)eM6P+QxC#~Aty5Q*dbx`gJLRl8D-78}MDhg96EDc>B zG_f(Ny;iv^j7d>AI3t{GBOv(ehG-E*MqEa{(cXuH1gTdaA}>qF%O8!k*5g}QA%#mV zI)aG=e+a+>!2o=?Kg+MIbjK_?LCSa5MYoDpLA};l!7b{QyMCdJC{NA4l(y!T2thHW z-99djmikj1dz%W(JP-){yd0bi=c}n11(%Z-9&rTtN1yHZxS+-dRydWV)5Dw6gX?w# zyyeIvIRq1yz#pjR{5q}`PZ*I;cgcbbT0S5{WNf`q_anD+Irm}v&gfq*a@Xs9cdj*Nr_~jbNY6aidb{Okyz2Y8MF^os z<=Uek-RscwqZ%S^N>Tn#f5q~40<7Jdw&x`E`{P~YlI9~g!QwPQ0bY@<*8XlKi%<0X z-MerU$JZ4*sdml9M~)XXX8jL6uK z8WmlHa6@#HZVAh_W4cWU(0dBy_?M<5l0{d9ZAQxC`EvYTjC5b8^nKOr)F=B!kSvf! zSfv~a$(0!AY3K6}dh@xdfJccfE34LxrlHz4sz^glp#D3)m9P(7TrGXFrn1*+jX^y% z9pd2)vMQ>2SXw%1=KQZaEJNFje6o4K=_RW?yG-Q>!y-O8QZ}#K;@~IL7fyUmYT^~4JPf1}E zn6IjxZj7-BX&E-oVy+kbbrH#GiPvQdo)#JtxVmp$YI{zcx6*1@>MoGWR%NS_rWmQ9 zfQ`}0vSFjC55YnPHuVJLlhW)w@oMd7pm)4is<|Y}HO=&BMh03Xb@b`Ktwk1^# zhqOrKPHJQTVM&p}J9iA7&Q3Bq&K%>ZfQkym>vD{$<|EC+ac_7S5nrLS?%32q&Qs*Y z+a>$@!UVGeZG(4AF}jmo z+-+L;*ll_)vg@ZQL?*uJ9TWcLWKp;yn8&+;$=C_%*_kwQO5v8pB&zth=pKt813S+p|}vSMkY9Q&ULPuRpSm@G#sn6Oy8$KJPnUs)ef?0W?anW9$8g~3KBNG#jK04WQ zZJK2p65%a{yVKKjOmFOpVGxokI(24@FjkGT$lxEb&r}-H6-$XyF3qGw8wS<)zzJ;h zpa+(k6p@J`L}Sm#>NA75^yGN=P_IabQWPOA>h9a(k-cbO9~7sFaH?`5U!MS<1A))q z>C}46*pie=m?~I2$-@nIcyur)e4B?Z?-v z4Ieba69ntxs)C!nXah*g%uKUvv52k1n;y1ZnW+rKzMVC-ZMw^5uGTdlfwW51NmCkx zsghX$5=3PUlM52x5;)`So~#E-NhYv?nz-e>U0u@iz)ooSh1H?VC5@`)Dx%}OCDJ!; z!gIKjXg(`!cC$EmdCJYaLvur`wLMLBsA${8;i=kFQTC-1Z*f|H|fI6c+52Xa{SrfMFYvb=lqk3aSm|ioDiU{6=c58ar!fNg77qB*{sp=|q zv`rmsGEEtV2avQ;fLYJqImiQ&8>w65{*^nBW!8fWasU`&eDmj=pQlzbB5Jfk;))6C`9UFUw$#nCzvB(! zi7}wzKI}o11~|q6Jdk+Df_m6!rj^Hr;K38+fdRGEC>W(PVbD8wdeJiU6)w{QARrBd zkCDM7pRqqt){XgPK@~y3Q>_)w0GO#ZHi(UPRJVL|#f)}ZB4(moVwSy#}e>- z_4A)8gdNhdNcLv$OT8R<<53{x8`U`4YTQsAy<$P9PH5qO)7=D??$YRam5WVPWRBxf z7?RI5aLiT7yC&k4xQGf6?ASSDUAW+@B!ncTh236kYBcY4d(kFr z^%7bydUEqbeYtJa6;<NZx46bi=FiObF^zK&u=x^iK4E(TUbgWC8L)6ZKaYIsFp$bGWX)7rytD+L2tf!5d7E(q- z7ULras9Sy6cXh0lrb%gA)h)2+8D?O0ZVFIWi7pW?Xo|4wTKh$>Ok8Zef@QbW&vk<0 z65f){1%0woBXp+`Wnz^Cn;o(a<@@z~Y#XjT4rx>(v{X{O#oN1=Eol^>`3o$VXp|8v z#JWVn;<*rWXSa)Y2;6;9Rmpj+vgmHrn|`gLk~sEUXewcnX*Wh?qo>;l-sUEdk}wx< z=5Cle5Q(ulnd_y?s-thEy|7|a(@S}Tq?#1iY`VMFiBLO8eiDhR+f8?<^%Pe~b!MDx zH(hO>nIn|D3QL4Dz>=9Mo<`?uJ1Y$ESFFB}l4XrqGWNI%zL1hH;}=phEcQAu|F-n3;jD5YNv$```tYMc?Ae-P`c zRV3YnA+4l?QKzfb+1mo3dkr*kem;9uBi2Z;Kx*Ztr)sH>D-sEqd++rMGJoCb16hS! zml6tNOljNQf(2Q$ZXppR%W|SzUeRXuVYTk0mDPH7dVbzsZ4aw0Rn*mg*>ttEqM~Ra zm46dWEKxaV_r<};<9|IJqX;$Vv#l1P#8kM2Y28%wKpI!d5rQcv6UrJSDpfO6cuO3& zf3!wTX|6lFbG%$((-)m5rPh+)Mnx6E_iU1DWU*~~rB%ugY?BC0+xi=o9&Ut9+oiq08&brFBEenIeZN7JhUa@6L!f`0SngE~CvJ<+LnjLPeuLLWt zsPS};*lI0aiTyd*>*;Qk`Ucdsl##kZ<}%8#$o}MzpxuEOah{qNp zU#}6a$OLo-i(tgYRCS^|+t&?O0qh@#?1v7I)9+=ep^6wZ4xJIxNM?>Uwo?Ec9PR+a zgg7nZpO)T+Ju{_hRhl}IQniBH(b_pgQ6)l+saiC*z0nI4?WT)@jv8uhGi8F7Huou@ zN*Gc#m54il3&8{qf8FR$>N6yyMKVOZ`Jj}Pm$wGO+T1BiZ6)-*nEZ4krC)kB=W|9F zpB_LVfGf{mR_JD07u!b%SX9f!nlMbYW4LBfP45GiG1}ynQdL(Z5H}zF;Pt1Rb<$fz zQ315ehV&kYr9#4~;I?B1miVM;R|FBBI2g(P@WILd0O{(5;CEOkqnN!bOZLP{Bra7+ zET{3^hlfm3JGzW9;Yc7A*EUp-!EnKzBWOII)D;p(hsU#79@-C-_XZ(p1DM6S@* znt;(euNYDX1ny#RPB|F+_33&uL%fPE>aZl@^n7K89=9-`aCNYud9m7h!~+zOKsNiEy)%Y*{WiaQE`G9 z9ODFoxDC6$gB@lxgGvB|J8Kmp(V~hY*=u%Qe0q0;dA(6{-GPOQ(kLXWJbnSkBkRZ8 zuQ%lhRV!{b!Hnw?{ zrhsNN^s8=QH7L`_EgNKTt?gUgqWa^Fp4HNdO$DUs5Cuqd{jLC*&hWJHt_BDLJHPVv zXENbS%@E>Eiu|J*WI;i4?Sw_QF;#eeY&xY6EVS~P`o~tpFlm!Uk*)ww#HebCnDK+k zsN=1cj4@?~-VDr4QuOwtH!xbat9__BZKm#B?)LR!-F+z0)oFSi17wDzNlX%sq8-6l z%_Oi#6v&Lx?ic|}ZQGr@n}yreW|R;q$%ReZO5TcZ3|dNowxTNH5)~KTsc`=QedxNL z^W8hcW$iAXzIJAcqU);ZFM50NT5g__ma(rkNh@jp0JdQ=RuvSxZRTcI3=Zsh>&<0` zNzE!u&(LLw4?Zbs+ktlD%^KO_o(&u`5(BQ85(N+x6TJwtBHc?ebMV7wPkHrOZSS>~ z?{3o?itpKqi$%_}QrNF@*(mDLuu-hkFxj3d7@0*<%NMj&cx}d0(IC!;JsmI(%rrBC zqAi+UTwBCGZhw{rGt$lJ7KxT!cSoR+7#cQ(xlypL;Vv3uw&*YJR)_VOtUHfnzV?2$ zu8>7}K&K?w<2O;lq$6zp%}ewixnfR&Yftsvk`y4vJW z1*zw|Z+oZZh-O1hy*n=Skhv=^;Hen8VL`YkI9j-YEqIWj9S@}+T9-Rb;)yxg@8q_h zQOb*&ib!2+VkOahqakn>b5>S0olf;P1hd*mH#R0XTg?(ahp~R5wI5`wJ5R24HIkmb zvbLs3HBFB1b%OP7p@O10?Ub_DMvDE5zXLTbj*!a5i@dcj0dP!(DYZp?~9ZLr+`0R9sCfW25ORtwj7?THni zQOjHJ#Z7g4n%D%9O;2Tx>MNE|%`ADAULAvN-M6Bbl)4?KiQtnrHGxhV5$w8|xwv+A zKxfJAD>BP$yExl=w-m1WMLkzAUvQPzVnuGkqD7%;%T?0VWVBmu4Gl$Q9St=!wFvTi zaAyPvfF^uU}TOEi2ne!e^@-IrxJm= zfssiiP>rQe++cja!=?$UU6(3D-2@>OLb!*k=A<$G^z6lNc{FtMd?7%(**mB`9nk`gd4T0Q~hGMNod2;a?P-W zlI{rsfs$WgBG#j`(S~xb(l)t^yf$v{S-YZ^`?apcTR}alp3D~2daA3W5eaTk`}+#} z=&!;DCB9C2u?|qlE{}3W*%BZkN)n!7O7mg8Z>ba9<1p{7`kb;jvT)YX>ide?S%EJt?l!{wJN z=c}LoSim-*%#I=m0IIwoR|yhz`_W9CmvLXY>CgRy>w+PPDWwPm)qm;Yv1(9lY5kn~ zR^6s`hLEY(dWx%0>Zz>kEfk`jnwH;1XQ~xm%@|n0NhT<(EBR&WH#uIU^ACim>l;JN zT;zCT=ZbS1rDt!X@E_e{z3k_icN@U17Rwo4%*3s?%2V zv{=P8P^F69W{g0oLkdKL3IqywkC^#wexa1*W6}*c)U>;FaIPz=s;Ac5&vwn7kv!if z+0q8v(=R)$Y-~$tA^=w4m{TniHt_YKVWIsBb_2HhzSFI=or=DW`D&~;B>w>QTF=8& z-3=oh=rW_01{WuG30$m zN|&XoM1@VX@%F>B9m<1gbKP%`Ml>60D{hdome@Y530^=@I8o9R%AyhopYkdGl=`nJvgyEw^7;7efTut4A+xcz>e4Bm=4xsBUfZ*RYw{a{0VNQ4=* zh`5V~--X{~J(^~jBQYwdPzsE;a)0j=&z`nY5`x934Xp>ey%kG%om6g7_Oo;@^2D&v z>Wb9)$MB5cfJQN$z~Ftc*2YonqAK1wf5bxTy0?n@RJ{EWHM@HR4)7zWV0Pn^!59ah zt7P&zIoBI7a95rxUz-7Q7SM$@uEJg&?bY){`R#S35?W`2@`hF`lb!kck}`N5Vsz^w zphO#DrDhuyByN-?^LX3Ui+=R|PNEtzszU;sh7XLc(`EH;ypJ&@5fRZ%TfLXsUXO}76Yca$npaN(Mn$rO6P$8VFbi?O1$=Z|(yC05s3|3UaeUFFAp#c? z?A0Pt$Kv&MVbQo5MJ4hoRv!IjJ+|KiHy^y6k|2MUe@=SV$*BapEs;=MQH=A(DKg-R zeGsUZ79?KIZ**KIrW{ z>O`-#Q96GZT|@iobtVRPjm9}3s}qc|Ip;r2aykU6J4*tBg%MC!5>d@OmA?1tH?Mi|mC)iEggW_l(`x9YwK27j#C>J+^(QtN{!H z$iOe({{Vcj=v6`5zB5CRNfeQG{a?m6$yrTIcS&7E5DknyT{L8F@^I1sNdCPsK$U1M zsV`;G)mklRIL3)}U4|B5*ZUNH%zwXUyIZgsvK4Y?=N?Z?@@MKamoiU9VHNh15^x25 zB)2cM!vK!I(a8!Vy0cI2UNZM;M+&Wy#fXrC!16K2L?ooj6%tv>dIb&gwg@PXHb^_w zH1?O(%>mDG^c*j=>dPys112i3cQ^!+tr9UTah@_U)Sg2)sZ^IbuVg{xvPxEzz+2e2 z7uWe?T6ZTzJg@_)sj%&scCA+`3Hanv;gfG%Qd3sf$<~}%Q}u_8rU_-GZ3=i=j@( zT}w$TNV!kKrFBLMpk$ns%Be6nx!zLQ&26P$_T7(L zy1Gy^#ZN8TqEYctOQ-LXzk`!P7e!-isv$;7g zZxb$By1P@ywHV`4DUxYM+&$+ah|Bt$G5fvbA62n?UYO_>3Vl3*RUxT1_nj3HnpFiy%W(Of+nAp{QBR#s&TeEe6Y_!$Qs&y5z-YB4mL1MTi3?_6?<>f;QGtIE$;=pz0 z+VxkS4<`qlyNxUQM#)>qC$4Z>A)?W3_^>5X_YZam(CLqft<`$YwWP?|CattC?ukup-zKU~BPie!+FM9cz17Y4pllbu+rsip zx?4`WA&?4(ql#65oE8igLBJp!l0S>4t8?p>CJjrA9q#OKoRA=|lZB+B`ws7BnqG)%de4-9(n1dEjFl2u5;QV`>^14R8qc9-3uMS_H#gr zuHk9WA*X_h#~}a~NNDN)50SK&5sjmj2R~KmsUtAA84-#vO8!`K&bEta2oVpP_``?W z{ZV7pQCG$I3PVwCmNCMu7bqC*Bk~M=$OEdwM-_1_-qcuvh^3<1mKEV$=suxJ z8KDwKLlFqfr5Y%huG7mE+3`|&1NG=9wTO0;*e|Qq5}}CNK#NMyy55u(-fZ^D$ONC+ zkSoMNX(FVEl0Y94J)%fI<il?vlWcn<@@}$kmwas-g)f)V{v-L7ShcJuO2#$y2Lr zxrOCL3v{QJMv^H^GNFzMSSqPrey49*)X@);<(Dsat}}?kWwweu>(7Nnm@x+HsiC$MTUfQQvuCRD@WD60v41CW_J#Kq&wYV zh>?B$rrIp)?N!@u-{_9%cRNt%DB~K$=ZmbuR zgpIOqOf@dENl+6k#6Hdg1FoArYoNrt(@4tZFb&#t0jQCDK8!}~W$RD&f$Mu!zFyRN zZMJs$OSSE$hWFfkRc@?WJvmO!+wRsXU!4ukaEr!Y+Y)|U^lMrdL$Yoovnw`<dJ_ z9wp+qQvR@J#Al_v>Gr)iLn4MeGG^xax;#)JD%wZ@E}Pg(ov*u7KRxvrOJ zwC&ql*Va=_+v;o6g@{iD)}1AqJ6!UGF}t7%?rkTIoLrl25yx4WNr7c9$eFDz)ul&w ziX577($=4qR&~W~#93|~w8LlEF)9aryMK$=XNL82x;8BSeU` z7j9F{&?60Oi0*KUSbKYSVo_*_liY|52Hu$brz08L_22{5t7ICy#Du+AgvqsRg$q9R zTs=kFJY8s*S`ZJ!K%jqjAE6*)cOH22;~iAaxQTKRZ+P+EjO^>p66PDOMXIk!TW;@; z7_hF;#srk4e|Z#q0VkXvxjcRP%Fl?B5-&tnqd=C@nz2;Eh)bJqIeGiPR9sJBP$E%{ zqj52hra=dR!SjLqy7Jyrwu372pvMd*%sJn*-YDD9UcZh&F!aM2 z$L3l|NGs=zb@Qf+RW4MyZq!ez=)JUrWXU!OrE9$$jA(d$-78?IP!IZ*Dck@%FrYAF z=RXpDy=nPFBS)NZH*0t4Y+jft2Bj!fyNB;uzSYpS_KcO(2rvZKdS*BTF)G1813x7S zJaqX=BP^j6$|>&k@c8paa%^bv2-3Ihx3lo{V)y+x*U}6Agto~uM6VPQ9hmn5#)_)A zQ<6&`r_-$T)yw6_y+kjXG+H=;!k1`@)kGED?fl)5YJK>xywG-bzUgA3f~LO3H3i5; zTT>-GOF(6gmcB)5bdifJa;xC33a>q2t~%&Dl~m4La~REmi<~`dAB?Pn9mowcP@V@U-9c!k}~wFi-qux z@B2j$mP{(rtcovixU1%kGWSoo@~pdcU7np|Z}p)Do0>rJ;7JjPHRo(aO5C>YA7Y((8Rg6XApvQ=++-G!v@11*B5;!~wrd39VRMxNg{t`%H$5Q|u1UdIsa-2VU+kEOZZaTJGG z>p7W7iDg@*x{>8(VX(5tL;^N)2L*`fENm5O%W8$#OK;Z@IeOC9oVixpZUNr6Ht5^+ zz^JZQUukBj)LOCRLQc>0nxF~Pw1Jq4Wd{I;9}}I+%Js@ET|sOrUC-U)q9g)zQsW|_ zcgwAU+xYdN_w?ywg`&GkI>r-phQAuc#Q&(Oo#5Wp<)}n*u4N8$Qk}wJX0Q+@a zrWz!YalmE0WWGQ3ChBeQkY0`;S)mnq%U-~~l*Ev?hhpzndn{SyKWwa3D!cAl^KfSY z#=6wYBLo0$+}8kAPm*)N=d2lN2ZE%HvR8lfhwY6}$TV5C&y5o|(>g0#eE$HX8(X_s zr{R>x{jaR$jNs$_IMq1>V|M8lQkNP zzkkC9=e62QrX-hBOtNlo^_^p>W^Agi?~c$9 zRtWZ(I=STTYWuSGh~c)jTAsKZgGC8ilLD?5TUF}aj_M&hab3IqAy@wZ!mi!G9#8aA z)j0+~-PQZ`IgQx3KkHMm$q$_4o`+o}Ji8_dE759f^hPK083hu#ghcODyWMVhJd3v) zDl{)cqjb^*+aeKXqG7pC32o65M$kyf9Y&f;X%!L4#}cd8D0h%cHl%IIwzb{JK96{| zd*ht%ULD`KcHh+%K!kF%<4ykM%6JxV25c)SdpXx>UCa>%X&Pw%cu8pmRA4`f%ykAQCN@ zAlNFJX)3b2&zyB;FUmMX+p>t`txiUH<^PUD57#vD0@Ab>55pE!R*%r)#C8(>ijJ+GJQ@w^dz8sIRPcnnFv33b0?n|GFb9dP7ysXwMLGx2KYx-@%QldG#qSF5>1J>H>9FIu6UEW zEkJ0w@B#inc_aLOooK=00TmZ6NEu9!Y!N~MLd(VNdOe?HOfKII(!zFbB&i3FBmFLQ0$5M3(uBy<2ULPWx*LNun%=0|t_x8?XS!fIuf0C-u)>o21zn zwbk8RBIpHB98#d5mQgEy!N=|4g=mF^>eQ`~8dn(tV1;6;#Ak8)ay<1yj4J{tl`J>C zuQX;S2#RNV>r}G-v2Pxpt}QQeG%O&l1tche&%`l=ZDzsAT>0xcGKh^%7h?J`WuvV( z*)bf2mo^_XbO{!lO+lpY7Fw!!XQjE=>TL}i>9Q@Alx8usv23Q|gg!w8?)=I+@`;B? z9w&sB;X3>!a(M8*l#L03w5_G67LbT9a5m#2dw((m?+ILqtq^Yi=xK%ZVq6#Pl zB}A01GrfF}?b^v9EZng9Zv4G^LnaO|(u;s9LW(I|*@n9_Mi7*nJ4utuq=Z&w%2x4a zwh_1f`S$ZnP*v1w3)POtOHNt|4dYyP=G`ET)sO)NPOf=mDHx2g5$7^(AH~#xEc=?Z zOvr1ASm*4wd$t<<%Wa7v3buv2i+Q=a_hsu_4hDwqH4d(@QEE*sLuu4jJG62`YQEF! zjXy0d#djFJnrUcWWT~CKmL*B|B4x$`^p7x2o~_puNqB5u?efAj;TWTW-o)BY1=n^C zH+i|CZqsW?5#obKT13)DBNET6(Kp8l9^`b!DyaU{rm?m=?v9dD6s? za~2(9rd9NdcQGUycFWXNzqnNT&M7PO$89wqZ5m0tlcPJ4{i~<%no5C|No2XztkMW7 z?Mhidt%6x0liV9yE}NeGu!1(Z<^{~4VQPslM_5#nBW2}ObreC8ZF33KR7Z(!*hrlJ z0OA|%6W#ApzNT+C%a>p;dVjRNtkE}!Xze}nmdjmLsCDJSnxzy?p{-YBXz1u8_9Q=z zmN}6CPvU=VUTjH818vQ=vkyEtwyHLQbBT2L^r1m#r^&}9+!;V@hK`_>#hWdgZP~;% zP9oupqonLl?EukQI>X&RPu{BP`=@@E*+Z%>-M8=E;kBlg?v!%Ud-WP>-(4P*w@KT& z`OfIzs-%=t!y=%P0<2tM<}`;UotSb!sh++X@b!c2LOQFAO{{U}l^i8Ji-373Am%G&+%d70|`_q%@j^pdT z@oC=WQAZ<9VNEfn;S=6%^Fon5Ep%gZKwq@uQK(r(&%P=P=3&zW9qK$+y4MVo{F{J zjk$M6)hrsLNo&n<2AS8oKT~>f(KZ$K_0@K&)B1+3YwcRE`ynpT$4xCHE|Cv$AAHa{ zm7}>gDWKYWPidAMY&2SlwAnbzp!uleA+Ttna*Z+H-oQ!*ozoKz9cG2LS%w<6%?R$sFX^GzhqBhA?$9O?5vhP-p-ayIYVqc&9-*UZT;JuP|(J* zjc*RVeNgrEdYP_4szjnw60-<>riFGIwz+dQlg>>MJM@KJS-o?1F9nDe*-X7WRk{s# zk@`Jk(p4E?P(ViTmk@gK#{FgY3fDJRhTCDhu>Q)v`1X4FRo$M$`tR?go$;x7X)ZTz z`#rO`-MZD3` zxC{#F)Cj$G>vY2!4gQhW_e)K7H@f=D)qd{<=BAv*V})b2XzM(dEk3dceadO8s+u)vN;|uP zvIi+SIilp|zoN<)^*5Akapq99U_3P=Ja(xPTU-ZZM7j%1={c!%(=!9)453^Mykdr> zxh~THo(_r%%$MfvGMR zE5-In4J-{ja_mB&EG$1NuGZ*|R?p9A2Ic3TM-jjwZy*hZnXnpj+fULZpXB7Etf4t5 zDl{=u&TDXbR}VV>04Ri~wi++oWvI2qBRa<^YnoS7$kRFvpM{dXrOc`opL-l`3y=4@ z*bL*yB$usw7cO43XOBm=JHmpUn6^EBn7SK4?*4v>_{0mZ+IXvte!=JAPg${P_E8PaO7tawXo4wYb~xZKU9WG7lbl z{Roqm8G~*4TS=!ep!0hF0Bj4Tn;m$%jiCyb@p?6+E-I-L+ik#t2n39kAfEtW1>-;A z(Yi`awgTi4ap$of%<(gInNExShUb6OHq1?unTg? zPF_3P-Dq~K7RL;XvMPnaz|MDlGxzb)p`qUt%J`+eGQ{t(KpUJyUE$tesUk>d`bi@( zvo?0Fcq1wb;2wPOo{w2~CEFBmkd^>6Azft&6jIujTH(*u-ph3^tV~YbL`;?^9Y`l8>v1mFCkg1O8X0|$|h(||$i&G}S{a&Iop=+Q~I zN<@o65>9M!{$7`!9KYIIN^5->>N;V_YFeTYfW!X)lOevG@OtqsM9U1vhKvS};t_MfQpb^ub%dD_MrSHm(7zZm zL==sjs@furtLyl`Y;^wsXJ}%E-xS6%`-)a|K^iIsMFFMu$SwQ9{_)D=uNi$R>9f2Y*Y$ngtEZ@XD$O<6H@!nYX8R?l_58A0HMO#! z?~`Bac{IeZJx}6fhN4Ba)J>RLquG)s5O0^zGz{dkIwD;q+}BPwaJZ@;_1nxf-rKx6 zc(|~`=?Q1t(o+jC+P1+ekTrS|5cQVdySBM_b1Q6}sr2)tV52rZ+xCx4G#hDTtEbai zMl%rh*-~h#E9u0t%qfoLXL1gV;DVyIG_e$G`b|YvdMQDNzh~?NAW#0Ez z++rNueG7I*>)o&PqMN(vLD?v-mz`wYjkD@kwOeg^?(=V3d*1DLdP~$M*Fhx4o_}g6 z;*}(i+lFBZ{8WN(b|z(2vT^;QpAA_ ztt$m(jM>v1PXQAduVV#J!(1N)5{}Bw*r|*D9T>Qrm*%?Gl1+@A`H0@9G0k zSaol3Ejq5@d$Ge6zIimQpIX}?);3s;Elo9pSDSX6V|lX*=-~n^#^|lFCJFgm6EhNs zK+}K%OI*eoSDcd`h+@mjzPiUXgyVTI1I>n8^7}UrS|xp+_ou8jnmZkrPwFdOnueN= z+edGs(0Zzd*+EB64HY#to}Mi^u_-?d3aAPg##sJlZNMTDH#Lqt21S^aOci~s-oDs0 z4W(?GMx3V1plR8aETRwH$EGbO(${@7yr>A zz}xh^fnp0J$`q0Q$Kts8b&J#bG0~mZuuWSqJnu3Xj#Aob+54kMqUTyUdmYwX(Nq4H z7Y(Dj1U)cYseL?pFxEb%^pC6x?$m3lj{E3ZK$gv2LEFyiQqx>&l9qdI1>W;vhfXCm z_fgT&R!topWYL+SU4>lxG5cY)JEt1au4sasW5^!3ZC9DO6L^G5^-%(*Wc^|1EuqUu zH>7->-zpknEV*eC4pLOIgkqbk`(i-bZM}_$xs!Lc*Vqg1{{R^4>{4mE&gfG1F6V02 zw+j(4Gh1r)6@8uxiC|@h1#fa(vcRZYU<=ht!K6Hw$PY@jftoUC~ANe&{u_ zl}G%rG+}4dTZH)>jDkV34Sph=X z!tmJsEOZBuH^ro-n?dh5zjdO5R%p~!22Ju(>;e1cl=`Doy8B!(h){N8Q%4g9%-5Y& z+xtu~vf!@x==CLJxFhN!Bz?MnkV;)gG_VmbQK!%E04LWCNrzI15+ozqY>IU7n*EWf zH5Yg)K@fKHL|P=7lp|exlV4ayRaKebv*>vgWAv0~E6!V|EWV2!>F1t7>ac_N+=WLp zg5%_^HYwI{i`Qti_`y}q*WN8pXSv$0mA$95(OlrFw^Y-c7P8cPXsV%-mGLCE%VNnW zSKO=-R1m%o%c&Z3MoUaK<3Td%HljkevK3Lym~1>fs2#zact{*^hS9`PB(=lAdM+>? z+pXq`oYY>MJGDi0y;y5C#g3+~j<%|uq@>Zd`gvM4nWTb5Hw&duWs;o6z_wp>o_49* z=nd(K7eHJFR9kg2+-g?WhbWJZ*vy`coEwDZ6E56?Tr%aji|x$`%6`Ik61t(q!&&Nh zf?sx+=ly_(|6R@%9ft97Z*Y#PvdQMf`~<-P0r)tHUq zt5xbcaTq1RWq4}hFB8eNh)xtq@!?9V3r{k;HErtppaj2W^|3GXbsMTiNK4l~F7;E= z?2R*eN~0!KN%gH|E4wb(b-u2SprXl=;RV!uS~bftD$HXWGmNZ%*B4<}i{1w5QuSl` zdE=KxHl#`ykdo}y9o<^(AGhTg{MtJ??xmrCC6Fe3WMmSfE6*SG>-0C1zELd2%@x8t zF;Ars5#g(sAymDdg&rSD9ZIGRAI?9ncHk8x^TFc)gVvWxPY05VjyIbx4rr!vY8dR{ zPalM1MI=7r_)(nTbKvoxC&yX#r{vJHw!Xg~dLn3r7OLH({_K96-Uxo)S`ZW*FXX^VUel)s0NIc3W#fx~=! zl6)L=c9W2iai&U9?PjqtfT!7Q8f+SINZcI4otR_hiFez3c@n{axRRI$00Eqw5he&-{SKS9+*<4E1an_=y? zLbeWM;vrAlz2KtQdlaH4q!~E|E^sh71n>_$W3MyiH407YcE$9OwuCK-T(t3U_CvS( zLQ7S8PQ22O`$}4^x##8hQn(;v9ChRTf)yTA&k!agf}dK(tq6=|M;*P}a?`7AxOJnF zF5JY_x_*gEad?6DmYXnaiaLL@poHG|R9tR3;!5vUp>FH+)%hx33DDm?3e_8&NL%l{q-CXr?C2Y-0O*pT%!!c*Tg=DI&`R!~k!}z){Lur|b zbeLrx)q~0=JIQM7T2s0s75YO*OSnxwOy28bZFh@$;k({hp`EaLQ_xl%!)?(TYL_Oa z3TJ~(TZ0*9oGYaB!%U_zvG?bBKeM>6&95B|V0fU)Vp0dP*4S)+us`l0vB(m#B1fQa2V>Q183PKpvNPmZatt z;#&JRc7JG}$XgTmdtRCkdm;*F(KDPg?5TWgAYUZ^~# z>~v5{n<(QkI?oid3RvY@cpeoCUdzPHS_&}JM$x>D6lzt`f;nbr;smw}V>|-9jm?6;)j<$Y z%GAVRR#J(OZpWiH_lIk=+A6a{S5~6a$kes;#bpTzh&<@=%M{XW3Wc``m*SuSHa6i$ zRa#PLCt3?l5n5b7H+$a`%CJ)ER2!6&Hq3l}F#HhaAt0v16@Afe!xDL53XhXyaD4OC zA|fGLu3^@Lmi6Jct=Z=3^rHnzm|~JhY2bN%xh3{vCJ|FnwXqp_2kt`^QMiMR#Ip2? zKx=6dpx0{SYIOI!V-7?l8m40C*%-Zi6x7j8a;T)XxrG{`C#;2Hr*@1yk%`9_SEmog`Cta?jHvDtvq#YkJi$i^e{PPU{ zQzeHi%SM?SaH-JQr`jV3yRM+3)HP3A7ioL3QBukAl3guiwj`3ktcxUq{{X1zaN7ca zTrcGxFX8CcM3@k5bd<6Wrs;jg%k6=Q<#OfnH;Dx~zy`k&kKKTZ_xb5@N7*jmyQ`hc zb<{npwJNYwIcKNVwN8r46@DuC{{X|&l-RC)B+hQ5PnCV`hVQcq3gV)oNtq{Uwl=S* z%kxI{r`LusBkZjz#~euvLgC!&6+Do}tPU7Z*s2yH7jG)1si?TzG0Wc}+-EDSBIC;ui(oTgRpoPu#i|rn}r}XgebGT6)NJHle7O z)C@B%qfh?;Yut3|-Y#_({@>1NED3wCUMUSsg<+1O&r=MJuMDb&CXaPoWux-6dE+L* zJdpCZ(#_LWHo2p%!l>qd*0WtkSlMK%xFjAb;dK#q+vfb;YCD01uIjFFZ49AQU4 zOrAbG_~)T?sEvXoIbwy;Wd|`?)wF(P{{U;2JfWhE!GGdZHP5Wjg9o zu^6@`ml_W6t#^8TqKB_f(88h?F?@(n4mkjM$D9Il)#DOUf-R{wg-x)wOABTc$scZum?i*MQYhLAT}Z8)R+_m`ZSL;7&v7op9JIo09RF0XpXj2BqZ+oFx8a;JBFmR?`%wctU037`z#hSOh>?e?1SR~ z1^am-d}1Rk6dVLeKl3YtGG!7;I47z40z9u zPI~fwL4};DoURtAed3Kfgg_GNnUt5!P2U#g`lFP6DQ;LTGbmhpR|>QPfI&)$Fb+WA z5!bbH*G36A+r0Lne7Um4{_B+9)*>!#?7eN63^^8M4RE&{d_`LB7zE&fxF4`Bx2)Wg zYKU(?mLiMzk0u57U_RBdg`ApF^ z(}aV8SMI@bR2S}|2v;pv$ITs4SmBCGHL^9DP$Z_i`>{u>J`3Q9|3w89TtyT<0|0LvY{v{r&Lzb`zaBdYC~ggAgK3l-tPYZ zC`!lM4&k*laZTN8WC2t%$!hIxoTUpOb$H~BZg*PGZcU(o2_Wv|eL7RpQfj458n+Vh z%sO41$Pmp#$S9suYL7rB-kjHapyrddTA3w=O78OO$!1v5O3_*SX=+zwb0f@BEePzb zmtpzN1Ai^BmXc_MkThc=mFqlStX_`tV%A)fPHfngQ|?wP*HL=K(e_Ot-YcWjdX1mB z{haR2$F)h>&-9~2+BFYxXQ9>-SSHna7P8-9{5|HvEvaz1PNQt}u-n!us3J8Kl2mLZ z^aJw_=+zOESq&u4xTbuZ%gORq#{kZwj!;_Avs$+Th|s&Gnr*3qO>s<1I8ExW6jM<( z6(k`VQ4*z2Y`Jk5Kh-{^^i{9AwLPn_U%R`kMMjwI)yl=Hk9lo+dd+>+z007g)p}z> z31zin!E~H|;ey=6gB->oyIZJO&*XnP3NebUvookM%5(KSn8)irl5Ge=bnnn|g(g)REpw6zk+ zEdK!5ty#5Uo*dHYWp_lmD9t4wdFFxQvQec0M>7ScNV?mbwC=Sny4~a`Hbk49ZRb9e z8Ak{P=Z>ppQmP82lsb*IEthk{@BaY7jVG|I*M8+yBZOCuUhH=neZqjKE-7_9d(X(^ z6SR;w4yw~i&0%1&DnI`KU5q{8UN%9=D%R@XPyYaGzq&TZ*{uV;7)Pt8c-11=Q{3L= z&ID>5KY0||wU$$Y#1f>O=k@Eqs_6ktNwGrcVUM*Nh9rcluHjTt-}@Zl_T$0XF55)h z+i#3F7WSmqdiGeiIXj7lT~NwYh8z{gT$*D@sx2NGfBKpGY=-#^u$57@&4yz#`^6fE zWV=O9;Uv-4*`$=9MXsv4*GnPXQF7I_(iizV1NuH2m72!&VC^MM^H9*}4Q*)Fx-(oP^{q)G z)$1KA-0eH3?=`fvwDZ(dX_b7 zn3pna2}nd<4eZ1*N{+gduOo6`_K$7QsUta+qXQGgXrye+0ufM2RkKVo-5BZ1{{X0} z&h1f6+uZ@8E`6w_?q_#2O*FR-&qt)R=CRXKXuq$Y9;oe~bZTxo8(31>^bWeRP+e#>r)srLwwijG>MHG2_b%SezJeI59wwG} z`7%toMvIsS!sYe0NCP#!=B-~5=?Z)xwV=XiIEEwZvOz- z+lxX=4WwOjMmefMdqtLu7STmrHC+w9wt6bdT(yu>)J<%-eiYZxJw-5((ANG2rg%RW z6pR(jGfN)m*d&fHPoIz?832+R1#=B(R<80~g0x=pBF3B*R4!3aQcBTzyE516fxF!0 zf%t_V9i(&Nzc3tU`SjW%V7q?E>Z+y5TSx2sV>XZ=%L3W@3?Cjj;136+K~>ofMcqxL zv7sbZf0OevGb}}2Mk7B-2*ZQBBknw9d^m+rXq!=YyljSvDylAuX{9y3jy5d?TMdqa^IjUcC!xvkY)3aS$hG+AwmP|-v)ZqAI- z48gjN)LO&-y;0N@u3d9N7urdSAY+;n`diWluF(3q`=zD3v8U<#fi3sF)py%D?OR+l z1e`-5e#zfjaqbd|putFIBXD@|9iCYsaC&Vb5H$SBJS z$`fbh3NC}P%oMV^ZX-ogeVtM}Kt%c$Nizv4MAnNraw&;1&d&=W2w{p_oN;8^MDGHWiB}_MY zxJx&SVgCTBpx(@-2idcn`4~7SgVFD>P9TewAvK^}hI};fxh4}d#Vg4!zQNZKx{9R2$ zKtVx)gv>$2R_G*|b|xG?b?)7}-iZsO=?>6J0NX}J58Edn%nv;WI3%o=-{anjNy9bP z7OxRan?$nlTXiz_#G=r#JWUQ!cp-@!xW+kO1b+`$xu;E{$V;{}g7b)~O3fQpxN_UN zJ9urZSPy9G3OzT18*WKBJANdOx}5!b4JR=qBIe5%l8+{>w-$+YJo$&^>|XR*hi0n4 ziklvD2q*awf#U@8)+dyTFSO#KS9&ca5w$T;$A{+awjZxniYq-mRY#4$MJ@puVTgX- zIsJO_UPXnxshX!1zj`m+MRB=vUAKAx&KEK0`J*akQh!ax+yvklb2=w`Tm6lBh3r3t=FtMbC(U1`l_S#t=+K0@ni}5U5DIq`Ow}I7b zhKogBWcMUaHzJBHDGG{D-$A&?gGO|^vQxp$&3_bGigcGq8a@~5~OBS~7dFL5=- zufJ(scVDJ0Q&Q0P7N0{!M|rHRzSJpuUZlEci)7TO$O~6NWtJIR_i3B09^RIomzxXTv1*kQ9B0%pzjqcaV7)k!&Ric zLwZ2C*tMmU>AfwbG}V36Q)zukX1HlvaHQ2Y4$|sfFWOb4HY;Tu#`8%HCBwI3*yR`{ zy76t;AxOxI)?-0(i5!!Cxx$)!b#8$Ri*sI32KCpeC98Nihi@3J^+o||dqyC<+RLLM zRT4`#m7+$(XoI%fDP7UGq7@eJRy~2znwI|nrR=u*?Y`R$pSZoizv?Sag}kMl-n34j zq@nKQcUnq2V5o}sX{fqdYp&H&z|lz^(PR_ND!PbVBy!T%P}bAMSw~+Gu9zaxGH@!WJQ=$Gv^q(r46Wm8sD+de6B!KKWgC>=m|~ zP3jwNneIN6)S6=7deQc3jYn>_%}Y&kq10`Cv)m?{XcQY{6U^|fNR(-t(Yi8Z^fUfc zlCl#Gh|Vsw6~Kgmqx3;~%(IUYt-LtmZHMX(Rw~Y~Xv)5{Cy){m^z1HYWO{(R4 z?UzqlXltn}V5g~yTEl&%tF=^5B^^`}77X%9mf3P?$6S~}e2u1^)`HrE42HNH3Mr8b zh*p&l6dV-1X%eoQBXAnEwrbU;K!|Bl5;d}BXaIpVUm6KTY>4 z{{XDDptfnN73SSnZKTuZQQX%?*=;rH3=e;(O*0j~N0FixEYq-^1gQN{=_X|yns~G` zF1e%S+is>pb-KjXID5z!xpLCBj}8!gvAQg_GtU6cJg0?6u2u-{saiBmm0m1i!M67c zK;AVq$3DZE8HxU^{-P#5#*0?c$aUuo4kyO?2Pjg z?M=TX>r$_7IBk%D*JY%sLa)uu5;Zczt{W}B4mcY`R;rypT|CgRRUDF~c`N~JfO+|G zz~G;+Ln^B6=7KFk#cLi9ivR}YDxWrd(5sP$R_nErm)r+v1AuS|$pqjG^T$yuV2Y`|@Wc<5%_<=x+PO$ad$PUK=!aWQ z(U#f5{W!topFeG*9Q7beir|zRc&QcQ$riAjDxmjxe+ZCzT9XW*bH*DZ0I}KuI42!a z&oH@>IHNy0ii$#xEf$5l_p@bA_R@(*qOGr(iAH0A$OL44K*#W&f5WU!k&v#Hx?*_(NODF7aCsg)XX*6MSvmLa7ZFQ&7Bq4X38<11XHn|(TesPXG3rqJ z{e-JeBtszQft7@e@$~z3=bV$He5#mL*@xbZpg1HfmG~ zSOFRjmf}zMeqDUErpHyJrom}MRaCk?7D-UpZ#Emh${j--w4jBPb1aK1s-lxA_`5R& zT&O6c893^WqG^E977HX@i03>XL+-SU85tu`8aF=M1`aZ)2i?{K9Z)&rV7!W1$MY(G!Sfg)QMN1Vy{T)FCf&_rFkB~ zD5#57;Sr+TzT~7NJy-YYgF#sP1*w}#ueoq(C}`}TiM(Ddl=@cFMS0CUUgKKn!_yaEcded}Xg5qUPLh&{fvGBvY^tk_QOxN{Cy5DU6ISrt%E7TXqx);dy}o}#z# z@|TIBfv#~0Q*yzjbX)WKDe0+gD5WyXKxURvA9PO^Z@7%jlm7syl!+BpP$^h^l>1Wi zV=nZPgKiO}*p{qmw3CMMrTIlL#<3w}^}Sc1y+BxfEcUxY_HS3|TYZfw^yGR!x}q7h zE`z7i4^i9e=Bb|TYKqqlEyn3jLv5q9P*&B~`!gjjXtAMB&hG!jWWJVaDfHNru~bu^hJCmZdTxmpZRhM+E1Ex1-Nodb7V; z_OrEJ+wI*KZTpaPKl*n?V$$_;>kAFOhTVIYPih-g`&v-kC#9p*5M2x+DmkL0nplzM zM06Yn$}UYv=-Dx!(bGoz2<3#2S`L*(6bu0XZVr+~E@+!ZX*rq4&54FlqY=9*6}!|_ zB3>@f)-0He?KZ8Z?GC@J(6ze0hgMtk?PbEu+5*F1)cV${ zu81vH_Fk8>YNP$1ReGzAC#HbaW+7wDQxTll@J-knJe4dV7(w(*ZEkZEK%t_K_QBT+Fc*q|C_!pc>O0z@VsB z?_#hsa{6`F$+s>MZN|?#i*ut&I^96B4?1-9V4quhEA^+{{?Ke75Q~?nbt5 zz-s+R-`l)>(Cv3=E@?$~(zb0~bkml~%T}qp(`s1eM!2h+)HbNrkuDC-*qT$7S`I>e z4q25}4VJaQ%%}@bOj~2l2oWNJTeu5W>Q|^-F&p|LNIfc`?7)kcorY#aV$E)B2)L=o zN-FHx5@WwUn!CN7m_lobsHCfz>oY3FwwFceX>A+*Ls6qAW+k+fPqys28Y3!>FVQYQ-)K^` zRNIv>tQ|Kd{L;#j&oIl9CfSREIr5HlEc8J&U5O2^XT1yAyA$4;KJ4i~S2l|cuD83| ztGoK+P0<>9iM1TM@(Cr@{j7TXrn8=%yLVBjV~1k5VWg;3lmV9n}qsp2}3LhDqp&c`2smMtMkCCklg>>&q}6^}vL; z4;9=|YSZ^$wooBywf2&UbF?wP+YiWi18qs?j+i(sd=M!Vx>c6Bb$cEU!eY7NSZT9?#ohVgA_semhxN z1QlwAPD7FaC!F!*_~7x^?L^GPQUh7&UC5-t^HJAjhGP`b3>g5{N-YDHkbU@)rDs$nv@%nh%kJFBX9XnS= z7h)_3PuM!Wrdh1Syy`t+POLh*a_bQ>g4iQ(AIl%F2OU|;=_ijWiqMyALes*ic2!V! zgtxi3de?qvlA1cck)98d;{kkw^z-yN!TOGjai<={wq=35oJ`82nY>c!kykGY@h4Y@ zwk8gSsH80hNFZ$FWRbX>5(yXwS1aYK6H6kdw%uAn%2vn~4ZsN-mZ@2AE z{>BIgYI!(0{XRb;GBKX8I%h>F+)6h^9L$Lemu4gsxifq`KIAOXVV$a)B!(h{94Zi@ zzQB1r=aJwKr(Q{>CCRImcGebMMWO=|QbOkF@$9TW-TkYQqp}ssiOHsrfWVWLiLu8x z8T!w3$je)_-k0DPyWB&j* zUq?yl<|i~%xFKTNN2zG}mYtSli#wz{$=3YC^~1Gok|`=+Xn}4>D8L!=9_Ir zx088!qP3e+XDF={YrVX@CEfP6$3Yc2#em zsxR7gSc2F9s@0Ml4sp~DNy&|?{Yf)_^&jgTjy$)01-{quhQqntuF}2VxM_?30CD{{ z+O@swMM+sEldQk$3pe8Q{I?*H*3?>NilhBjrQ?P$&bWP}3g5y@lb9(5aAfr1%M07~ z0i|iOxv_{GXeKC6N}&^bE1UAcJUx`t%{}f(JvL}52BfC2QQZ>ts^GiR)zj&EY3ZyY zdPRgT9OXFD51Wz%4#g40!Pj^RaPjo;mW?5b$=;>SY9f17(jcfZY>cgvs_ zYFQ1(7IJ8f-J~jltLMdQ6AMltAnMx`9f@se^L>z|Z5^nluA1>Kj_mQiPfTd$yGd%U zn!0K^BlaYunzY-*&rD$W6fRV+#ID{tiC>Xa)$1m8eHVw>vLvy}5~YY-IT!2A0io^X z+B%wQrP6(srl_Y_k~*q=Av;x5r7%%Qw9{o8KW$V60Dz%J&AmBhq}KJiXq38K9DMm< zx~HpKgW&r1?SuMlKd&iesHmj4=qqgXau%tYhe_5f)gEy3$}b3JeBkA?(>3}zQ4pox zaRoS?{t$={CdU%0tHO!rqB3(;T4M2 zRpU=FDn{1OUf>?~v)8h7lebYCZQr5%9UOZ{=rPxMa;EI71OEW|BK_*am4RKPUm1R} z;qBF?P(@AWS=Da*!lPMgAREV#PjF0l`eUw5BKXqA+D|hre%R$&>O2$It1l+=&8Al{p|`WA_| z(&+6m41q%XiDI^UrBq-qxM_D|A3%D9=O+(-WyAK%^@od1iYf>oqQT4-3l%Eurn1^; z*Cg$N-A53~IVTAS=RHEMnJrbtCG*445fX@$NEEi~dgE;k8so;=SO!0q6ONLr(y+0R zqN7q-X(^SnyK=!0Z09-1PdVu!whu&Z5X25dXbv%uia7glI_PwMFWtMMt%265$;&qF zpJ9(UKVEwMU(-W2>!jekqjGP45#{=H%ErNdkjZ#=Vd;Cm!lk4i90EZbjyM@VUVQaM zF4KbOo29zELgqV;7`sX>vo=$k{(9k3ZSu`QMZT5;R#o?wR zmv)c(!;53os$`F2gMhig{M@K3w14^QPbT!4n`DMGE^M%EtQy=Fl9j4Sl|B;P^m?%( zbcOn5c$ry_7wAak#{_LYc^zn4X``;nD#VP-h`c1CmFeQgE^g83*s(4&HlwIkgD!d7 z$=ot>4m^TChx+uh63x_WLhi#!o0OWhXgG8g-Q?c;B5-#5R?QfJcja)nfA2p4kzRS4%Jj4#LNPCRF?66GF> z3khkAQ8?8t5UAUmHt&Sy;)&OFjB9?@*4yLVB#R4@r<1j#+T(BEclmYm?wQf+Eu=)y z5D>8WqGpj-DhT$f{@bIP&i(ePx3>M#xau(zCARM~$5Pv0Y*Q-`va@{w&I#+$c{`~Y z7Z_5b+hfqQBl^j39bnbJJ=E(j54sZ8isls%xRA25CftmTt;xa1kLlA2WVMA&k=jKS z;JAqiy_S`}t9i=Uo_(ILd_?HwSr#xD5s(HlcX%TmXS9>bSQ25+6--sNuxJIc?AK6} zw}$PJ(Wj&fw3XUIl9)QoRyfs3Z=prxvHZB&KbReS`O9{ZA160bvAodcssbreS`VWW zW;zYBEnM;$C5)1RiC|-4fPj)Q&uw57PaOL2Dz?k=UpAxQD!RwxuoFTd|Q z=iGDFI&0nk?j%`zq0F>{&B^m;ZhT;3>;1$pes(005-t58&@9pjN}q*~8i0 z&e?^A7sL$^l2%efMFsqmJSmZk04NlU3Y5qI05SlX64?V_A>-`g>t=6j=Rw0_#YzL_ z=Ha8!wt%{O!fa{eoFG;nZq6`!D|ZeWPnb2tjmE}Jd5^lz*?m#UJCoVvCg=QH+S%Kn}JfU=%e zj=s<0{}E~ZY{C{GOwPyN1^`e}VgsN*S0Vv2f{_81&pGnv-#_X9hv>gs$V>lW4a^;6 zVeM=Q0a-aixqK{KxOhO^TmUgiAE*}p$H|Mh- zyufr4m^5N;);1zqvhx2y@mvz8`){uH=KYtOd4z?9xwyexU@+%1g45j>=3(K(33I3a zhvMHHvJiJGH+vV4e+KLyP76zCPY-cAy61M9|I`O{`7iSS)$;!i_OQ44zf%4O`k$76 zIqJW|t*!ox+Qrk&>0hd?t+*gg5GVxZ;r@*0;rbW;*<~U!ZV(F(XEz;ZXD4ww6?+$Z zP8TOnTYH%MbNKK-d;1^F|MViF?QG-WZQ%y_Us3;vSvvxE$IIXum&kB=jd-n zu|2pQDu3NgN}@nUUq!4Jhj;nam>8k`7zozCc>PMm)vEN&k(xDF#r&={A|gt@OHS5% zEkWV5_qPX`Q&S@hh_^vpBUgGZn6(z@rK04DmE}I?&7B6){j;*u4?%rG7HX`dk z-xlE(9LjEdS7R<;i5l)cf(CCH<#b>7suEaM;>4Z)*q^oaCVCVMSoWGqkzYY_1Xtw7~2y;4i>L<@|I_+3!)T^LDt0WK)S+ zQwh!(e;pg#7BzA9YJ6@jZ669t_hiFI*riWTiQijRG;-y4>fr3_Et#-)c8VsG*$bK; zmluziH?oz5jkH&6pZbHyDkA0(87_k&fGTL#g zioqk8C($e+l(YlwEh!wsjmR$g$x*>wJqlMxgH74sq+^d;r6lV}j|`^W5Se1^b|oU& z1i$*EDkgCO5UiE)9QobPxSjhh2_b*~_}nDBjhvxK&*Xzlm_M#iqchv*>E`t=Gg+>3 z?Zhwz5)->CjMVhmBA*1uf_u${E8yq%&gud?D+rfgyo};Z+7Dk*HqlBf+)WNm1R*Px z+ZV$klo4~*3M3SYPHX7~+cwhdRZ_n7A1qCm_U2C)dM!t4CZIWy=^VxS5W?G=#zXQX zhChyYC5vQl(wu0a^qH>UdnC`i_dm$l=jaRirNJO$e}yte*`1s1Je%NKirax-MKMn0uW@sY)lG0u zCt+>LCygk<*E>IMn!`H`+!~Od}O98v0xLyot4jVwPr*^(|fk>*uJN zijfV+He&jWIm_7OLWZ5_BsQ*#y`AuU*@qHax}iofLB`Y%yswOJYWl2>4uJQZQ*kxu zeV@z+<#^nr>Gp2&?&*&nX|byR zCw!3CNld%m*6h2}2Un9IDO>;%2`})=xu5_klzs7!aAxcjWgWd2)x%ZJ$Dg+g8HsW~ zxU&sY)r%nGZLbtA+g4bMxY*uUdS$8fHr35}{j|4Z zZzxDcCR9o&dskr@*P)(-sZ)7Rp||8NMX1hx!m@Sb^;PH4t+*Y{auQld?ynglYieJ@ zj&vNZ_Bcdexu&-ZCMfn#=8UMouqi1~KYP3$2M;*?+NLU6hxev^>mRx-`#F)>vFtQn ztNi;hOx|bm(p-Y);7#0ac8;d)u=^Ze`9S?!iZ5-S2CJTCPO2w{C2$xSo8#1R{ zlA&xc-I&%B;F)NsJ&EasjcVE+i~%!x7VE`xL{)(l$hyuGA4X&Kt9jq@J>pB^!I!R9CRn6V4_3)3WLeeeqQW^GSS@P>> zI`KMO3MA-l(bZKGsG_*)hb|W1#?uprSQ_gluBb7$?2++L?m$HRj34c{we)c%tj$Wy zAU}6XzkJ?JvVH>z%cgj_OljkIg)t6QD-HgEU$0jAxswzr%oO&fl4SP^|HsQ6A+t+5 zRh?X%ZP9EBnA1y9T`^sS>`_XQ{koD}v?)~I@P)qsp+6tUsNZ@*VkR3yNoe!=5t-fs z+NPg$tua3e(CEi=euNv_r)w(eyK$u}I<$~hpF9e8HpWwD7|Ei+*1fEy#nxiVxnWlkx<6I^1nFF8r-_Xp8<^0drpOL#&oBZ z`7sXV!-;a-mWZ=MA;i4LC(z<*ku=NxcKc)P4`ae+a;T$6Z+3V}xbZWgn`HE6-0C#S zA>vpqbmcg}#p$f6edkSFgO%Kx*KT`dbPHbebZ-4vsc;q1h~|i=_Y$OEB2P8i$vuno zbmEkWP35ilf@Cy_?@7vB(ytbReng*jJ2T75hZ zp4zON5r)kN=!1=_GECp7K=a3xnedTbv5CFiL|$zEr7ZaYIjjZZnEG-=Zw6=Ax2XKh zoy()QzW7l*Mx~8A#l=>P&YLf7vJ+}__J~~TeagDE3z(eBmNk`Ee)A)Ebx1H zzi1C8O)$L4kmr09)Wr{o1qug)#;WG6ciS0>8rNGl^w{%q9+U!>)fhuIO~T?#AA+1N z_~X{Hj}gnB_0=^t`rQ_c<@2hF?E#gA_{nMNqakr5#n2Wamv4kp1a8~nqSM863KF3O z?EE*7<@b72vas6_a;IPI_!sj%BwS@wjL8I3z%VgtzM*_m|7v$e@)L1*q=G$`ycO^WmP%CK#aR?1vNKACH9cfDBMIO0^E zNt7Xr1cFM3ov3{F`eSX>LPMI7mRBr>c{B;P#yU<(1qA7S>R3l=c>4C9jrJ?#BkPSE zxA(5ciTStU*hQB61W>HKX%bTNEt6XD3?&aPyq$2N3yC3e@;c_+Q;*mXg0SI?bxu_ER^ zmx!O9gc&!~Y_`&_rMjETJ1+8#frG@Cw4*i)qj?tnGQ^3BnGE=ny?RtNl`*S>@hB_^ zo*@d|0}?_4_H#AHi{baSv=iZ29zQajG1O;O)KDYRwE}oYUdUoY zU0rQr{5UMNiiF=`I3@yL7s%vIZXX_ke)Li&jmf7T;0>4Iv~U`7_WIPfrqdoKj!2D4 zxx@@X&ktu_!L8L7_SP3}&*M@{!svw<<@}&~)6E$|bLokwB_pvshuCevQgS4LogRKU zEhK8Wh0>@YCEZmDjdkKZ0c6Y5MR*rsJN~x1+m83h8eQJ}*f$6DaqApsx+bwm=sRqO z%^iQo8lUMG!G@n!#Pu>EjWv!`U7`MlNfyGo^Dm^vIGZF;BgWq)6uKDl@`G7fvuNXSPtBS>ge5uXEG}v_F1IllSJ$efr$qWH zj1or;IwxCoMAbB}{v^SdJ)0cFzTt9O?}sdrM;ezddiko0mSCfuK@+!y3DOO8M6Lo$ zjl7=M_{&qCOQH3)Lvhg`%)7i8kH&RN`@_z*(ott0U=DLwliehHckbpwNfjq>sxkvT z-KRHv#UzrkXY*8u9@9fDWE^k1Ht6_mL!FjaktwnKUSD_QhB;ysYafZFhKXkcbH+1 zN*dji1pmf-tB7FwfFVs-D67SyWkM1oXOz3j70#bo@#1=VJQ61~;Rd247lTAb^CjV1 z$7Iyqd80s0C1!wjrOL+4tuH0?$FJ67$0_L?pF7+I#7AqVwjyK%42eC+bu9YyHHiDT z3-;wk63+UBJ>AyaTzHimC-s8i-lewiURO-XhEk4kOxAizC9<_T5g9KDR~hn^UfVV$ zI5=Jo*esUMpU1dA3@VaJSNGe7@-ncC4oXt=mNM`~PEG3Y%?LJDrGdkSCu+nv48sfC z*1SeQm%JVJyz@5lbqVuY@to-zBVw_+DBrI>*dpG&HD4HSzWeb#V&m5<)#PFYtUUYS zuvJ<12)zR|kE6r6y*@>2N9s6-AX=mGPE%)OzFYOQMc(8ybN$a9GXs_?LTBT|8#Gq& zLz)FzXvZ8jX49tv;}ecI$rJ&KR1O!OsdgE*CC zcGGmj>AQK}jE%Q`?#ETjb90@|tr1|b5@JaVh2etJL>uK&c%vp_v*`y$dI$hC?j zbz%7iE5-e|n&%LAhTX6|PWsWOR)4vEqW)T~ZF1u?PQRD%!v$xDXM?D|R5qK$Oilx{ zci33PD=q8{?uk)yy7%3+YLX#|apZ~7(beiCsXCXObS8DMi-6TB)| z6H|%LR>z-6aV?R{*p1!UW{MtEOsYfe*!Xs1{?bsC)j`fz&JF5$YBbFVTo?u92`25?oC9f>mx9KlfX%l4f~2jJlQMthI}_; zkFApFTPtI6D6hYsW!bt5`gH&g0!ozL!NM73BnIXRuFD1qtj9UYxBe!|@p5-W9w}cp zSiEqvwfLjPPUfXC95tCx)Dg#(iV}s4flSL9h4-^V{@Y|CVSbUEVbbSJq-J^AAXApy zBl=;2CIW&tP@Iqu!(Ttk9>1TL3q2()X)lb|PMv9B;(F(LmZLoUER%i?-M`;|Xv+jo>uQZD1E3H|;iW!DLZ6BmR ztlFrp>Kl75c_Ai~UXgGd9T3&jHphxmdUB+>!sFFMKl_bz0IS|9rKNrmkmE2-nLno` zN4_f&C~ExaHPM&yhsH3JwbZ23>us7L*+)oQ% zHFTec*i`0vc+xN$2aaaVi!*O7=#d+!goGxkRhT{+Py68U7w}UhlD6$6k+Lj2@V%bY z=P}&2x7qiu!Xv1(P9ysp)MVe$v!Gtp5_9`6<}Bq|08uZ#*9{5BA=q#ce>!>z+s4wO zfB9fAZ|`iyE1VG}P4hDNhZW4yr{8ZklZw^TvGS-IF)ptWr$lH6wtqftIO%jg?^%~l zqR?^Doy?hO_Jdvyp^*WGCt+aq+M)ZPY6F_@;83C>`*h&0G-UpjTF2(e8)H~h^htTo zkDm2F*9+J-uj=*w85e~sLK#u47iE;CGKDJPEZFZVOrXY8oap0dEa4ELu&s+Hg|J$Y zxnbU{)vBUY4cmgCfp+%qd|~~ClTN!ew~3s~puSl+WJrD`lnhRJ&(TXf{!0qX^oB?i zC>bAA`iBiu#{a{zC(z6I#=;>gySO~0kbQFhwK|uPZQ-I5WPXgU^dD4nUz1XO4o-@21BYU=4PH10pE{sZ`4y9oOIvi~o z1lJ0je7_!h^9{G}L63hvX94ux4Xc`-B#Zx4Y2pSyD|4#D7*&mL5a)g;VXP+&1|{d^ z;n>`j<`N5E7!dPGuoC!&VLx9}0Q?IO1Yy!7>m{*W6wN}LL^Xw&DNm(ZHwjE&agjmf zRKa$rC+}aB4cK!vR-DR4?WLJdTkNL4aElD>eO@4={`LpGjk$)p*vSPj$ZY}k=D8M_ zMZ)S&<0egI9$Bv~P8?KSU2)4TKg6BIAIS@U+vrYrs>`J zHCUJOD`xiC8v^wd_$R{>_kK@K&xOtzwul;PoxlBAW%l4*o0xBUm_}70GU^?o&A4lV z892G9rnybRfs7|E!td`i<@Jtgl{tRz^s;djJ&7Do5Kn2?%(L~_FI)_uxs@PH2P)sS zUPdalYrSTvTMBXPq#oz)YGnssVMTR$^Cg?zgb}WLEd2msC=rd7{}KCOXJ)@)9?%7u zjHhu=Uk_O9Ug7!`yMvrbV3w~=(yJKBh-Mt8xiO;|58257IfCSPh7@&p8%UnDc+One zjyZ<23)|4g77KjvGLm1*M_x&b9fJM@YVXc+B`6N-=S#o8O((NG#Li=2PxL^>cT3%I zb=$7t%+%Om%AakoO;vZ+3o3qO4`qD7Vpkzb+FPUN-3L-8KfRtIDxz`9^6Y!f>)5*1 zo8LQGc|_?-l4G&QI902T@Ok$65q#w>qt7SuOmnf4>!K_c2&;~kE|2RjtxukE-bUL z=4YL!V+e%)TFkp@Ud6=n0%mG{DD~_4-dCo^-9>6i1%&3arch%oI-fJuv#r6{l0R(~Cryb~9A%|q zAa4K;+;m&+k@drE`mJ2?eSA<`X}H&4fN8m*4T<5O*Uo{7vr3<*oGZqTw$xh3NLxo! zXm||i`Va6$2zs|ZC{ojLGaOYl)w4OzN0bmG(hl=~~)x{$veUA!Or>BWJJn1b@)!#h-s@`+FX6pKui;`Q5 z?z>7JNI9a{L+&rYL+*&fJ!0IIp}kQi^~cxl9D!A2E(_CGL0MS_Gs(cYoz`{tMAO_g z9)vZ(;mzdIemguc_jx6_e%DxexL=+5hyKiG6d7cR0V*E(h|*6%J56rFESgbs#8%T7FU2 zhq7S}q7Zg{Sk78nscyt`GM3%nv9uixKGn>8%P4%#O|xuWuC_N}Xb*f?F441lSEw4< z|IRZZMBkIi1P(zQnmy9~{^%IG$Fc}J>GW4!WhXtIp2FaQV~Y7Qo1aubmsJGYs{s)W zZvuk$4?reTFW++x6zbZ|7Rz~2mH+(Y3v&wF1-HL^i?$OpA4UO7EV9{dtIEVn%WoP4 z&47fmmb_24N?9pLD#g6X#%g($+FxB}G$o4sr1y(p*s<6*_?(zcJdK`wgkf7WfP3OxKaW_3IY2vx?}LG=}+nvjRx-u z<}r8~%O7I8XaSMebTrayhHdFJy|oyCQe_`(6ET7>Cw(kC>Mr3#yUv;vwXCdcX|iyp z+BFS#qfRjqCnf#q-Bj<}go2pLDl~&ereTG=51VnuAbeJu#?{AE3>53-Pm!K$8Iu}@ zXz~el1Q9QjKnb0S5<~u1XD! zpW_ zXndJ?xwNq-1G&30uGuo1ow)(N1A|0QySgqaV=2WigX@qg-_5@O7;}{JSloq12nl0n zTYyfzO31ul0BFGMZJbCmUlP0PZN?s*ggy^Lwi5riFRE!0k+cMln(9yv)h*wfdr##m zr`q{>hlagWsVff^H=30KURa=|NE7Y;jQUF&1!{b!)Ir#}ma#W7*Uc!7SG@7g{e!`h z3;FvDT~mvSgY4)DNNXee#C<*S45_kj8IH2a?uQ+BE9c#K5kAk$pxWwG)&(~A2K!k2 ziCi@lGAA~JBLLbGVp&ndZDEv3XsbTE)I?=mAzQa-sw5IeZg!kpGPN(9L({K|?lo#C`ejD~@%ifh=F7OhOk!){iDI%Lc?{2+b*jD}tsOpb zc`EKRcqyr#g2CGnc!fqLi@%Jw7Ot&8x>fQ<4DR#Dw9K8BM=e*S~$l_u{HIE#=F zWMU@iNpONXF&KArie9>fQ@nN)9#F7p+zzsKmD>DxI=QV_(UJ7@&j@uyG*WG#6uvU` z(#O>=Ti6P{k|n1NKyPB));om1Rg&rZ9f#_+(vdKWiNNnQTP!!Q5V3PqpedmJWpC);XmaLgDtY_aNR~ zG7P>I8*$sONx{2F#?2cj3n_)2?kdIO`?nQMkH`pVSW_7HJ2BA5vYt;L_$0YPU#31$ ziR3Cm>friAc9P>TpT%XJzCFe>!ijzd=XE$+23$+iks}=S4 z{36JR>$jnzBtYNd#Z za59n z*dn=2`|GkSv;r8_=9->!Vd_G%wr~YHFwgj?MC|*FjvnW`LAFo$#4S$%_Dd+Q znKNS(OpcbQ=>SZ9!?8^m7gv8PWGKu_m{8x4N{hlqTjNot4ubO{+?!nKw52`6Lti?02 z$}Uv?%=rCzbJ+|7lUKEIN>7tAZtRMSnz6hg^?gLIk8LHVu1#ZZ3_*ptj9uP`3aT*y zUHs6;POAaI`Z%=11!W!SWc=$F=Qkyo69`4rs} zIdm&=1#`zES-LAiyZ)Vi5!9?f^%UtAX207MCmT{=h7*OLWNmqa5Gyd!!iCNm^n-OIg6 z2{ngLU3|qN^5iwne7E}9Cl!{4QwFl6a9ZTFl(S{+HJ#x)reamN(>7OmNHt%Nx`Tw| za(h5>mD#|6TVPPWb!aN}6&<&zx1#tq{YH152}(1+VwrkM!zmF|DB-HIHrxNYlRDu6 z@lEWZt7p4ezcp9*Q_fyH^=qV3UaVtbU0OMXm$ZOrD>ly?N9=Y7j*%#~-%1MDk*)nD z_`0B$^~NZ$wfu*jxYj8idO-~0L85)^pGT8(h?w8OeH8Jmqa?_t5tOSsKELeYlJ}!! zurX2e)9ZRuo~PJZY%Nq#gyPrYqZjX)gou^0*5qOUC!H9j#ZG-BVo^gHTm;hZAmZb8 zv!&V7O*jQ>{qbX8ugZqHMof3x=E#uk6YQ0DDMjMc>?kch(&}52M!jT^1JcqnBJQQ| zO*=5qVJ)Jr;-S!c`(c0Dsl&^!GTDrur4r_FEAZ*K-@>PRg8l;5iYbCNL1BKzs>HHz zE^WV&$z%@t55jDs3|k$@EREAzqW)){K-entRms=$`79_{ z%47~SgYC8UQnkjEee{=wR?k^uRvq0`W$*x&tLtHn92u8dELEYGw(BmT+1s}4E(EA; z%PIQu_H|H7iRN`c^?XQ_Of;{KfNsPucxGEx*QOwL;P#*8@Ap-}l+zt;`VG$T&IjfN2mqPf3bhxHy2DwSQZr=_5(A%VOC-O;Lw43A$)R1b329I5uoMWa! z*$5>M1I{3!>Vctk$gz_26~1?9R$5PEsqm*1Eo+7B@3rl4&Y|cMcgC)%{_9qFfj7zY ztjwpyxM}5lx_k!jzOg`HIvB~}_Z=u-t?lx71C+b?L%v2-KTT!)VB1*$ZU9m+HgBoF z$`XBnh{@M6m)z?`3udB@Ko@%rRg8S^daSF|qBtaw--HbXEo~_S=%Yz#yc5P5J zZ$9mZY{0hR#n@f2?&{k(iu0*itGc`?f{dt@J*p`}`x`-vCPdlhje(x{;qeK%2cAiN zkntunP?)rfaY|0;CUMNLLT8PSWhW$k?WUr{PscADWTIiSM>I3pZdl z`0~ZsXEyaS5Q7IzHFQ1N^)ks-nz~oHl%ssKEupndF<9nsj}h2Hh+8*E70a{tVt9oF z?}@|@NC@w5G0E9&#SNcoV$_<}Kkn+Rdz%k0=OGs@-MYZ!qv$>$z=KWmXw zH9=f;pM`1_>=8aAI6?!tlE;^x3VvlO8o1Ihzbyvp z#-Q}$ExK^7wrm$EB8RgG$ZIcXR|&n~2=n^%nK-lJ_Cpe9|Ex*-cI6yw%Kt~yzO^H~ z9NjlkyRBZJadyS+#Bc#=s=llBC=gnrlXZXVYPr0$Ic0my!H)-F&_uFC2S0*eqEj0J zBx}Afa5!|F{bM5XgR^AlIGs!FRFCsB^Oi3-0}9zKC!)eHn}T-7XNQ}AE2o47^-@5qJXna6z! zZ~T|jD>)Ram5R1sIh1uy0*?Ms;zTnxwSiq_^= zd1eIivzbih7Nlm}$Y<f9ToU;6Y~hDpJ?RNMDJCY#j_2?|(7r zLt~5k8im~+ljH0=qXeiR-rK0^z)RM|d?id;xR&qZ5jpJ2`5N@zf37baOF*G!(O29H zqWOZem^5wabnk9MobuHyKTfqjO(N^Q&X9M4?wKNV=?$9c72O3MbwO;?yold$U5-Y) zfV%}%dL{*iLC2Q9=#$w32f1dbx5Ew#%eE2Op>FH!&fa7hs#15ojk7?Z4l+x{6``%G z?25PPH*baqE;Vf@np$ZvAFi|KMvhYukH#%kIPu zbNy_Jr8}@!O{D!($ybM4mGHUsqeLx;{_ntq<>hffmuk9-#K@HWnjJ0KV8Ux=WSqc4 zR*@p>EACmLJdK{OE5zmJIvdVjS|Lu@Ew-CgS!<>&3Et(hGO&~CDNnPiWeo3A-I4qw z=WUhO>U=NTM8(uwdC3zYIm^*nD#faIILm*No)xT94`2d5c9D&G3)fosq70 zyfQigChA(T%T%j?s8!mP%Up4A)W*o+ky`y?_ftr`qMlN0ex-Pm38$SmhJ z$rc`q+Ga67;}3EU`;ur&U_#M9*(a2A^a%e2q)D_eBpXJdv(+XYBHcZ%OPFY|i4J!S z^J_HOH&Tsdx64r|C=Fihd4gC&{OzW$H82tpsZ^@(C#ifc-^IU?30ptS$67grE8a)) zAez3Bc*O-`eYy((Kb^2OwEUtKUF#8JJs%Wa%{&y-P6tPy?#Ie1-$vvX zxlvL(f(bX;Hgp9-B>nX{9Vp7}t|S*MDlm5^b^^G^h1iEbxU{D8NR1Y;(zCG6=Zdcc zEJGihmN+(*TA0DnQP!cdbF}X>W{VEcDS!S-6!YfeuC6xkiMd~wlD3!m6gBf2X40YC zTr09btsT>*7X3z%KA)BJ+AZ}qU7Z)#E~TGI{HHPdP$SRD_wMMw052|)clmo+iR-C^ zGINyYT+PYJddo_sv)L;d>h`*xP&QP*154|9?5^6fiXf3T)QFLD(V1WjCxxcv?^6?2 zc8FwPTHn+P*!n{>oi;t?&-+jx+bA8GXppl-~y#X}(_9Ca$DyJJD1w03uJjo-Ud zL4CkfR&M`tFgB|=8izlx$k*fIWTtXcAMw1HPhK|@kKfeUu>x~X)D!H^cA#%z`+QMJ z>QV_DMm2ityxcL9x}-KrkG1o z_SAvi;ki6=Z3;c(4Z703U4|A$7GiMbmp~)tkF`>r@{D^seI3VM$`2omwASwa0zd$IrX@yWC|&2RwZW*k!CC3Z zUQCt_<^v|t$117Vv9UcBn3ypFgaR5+@0WVUtLEooAe`KB3WNXO`e z(Rg@1^H6_=wS=AwGqKKG&KY3IaUuT(I=r+Z9=e-K5Fl#$h4vJy?BJR{gsO%t)>b`qm zabu@7%U9%-Ry|$yR!X1fUY%&TrWO2E)tyOzTvss-r*Zug-Rh<1NKqsk3GE>inu_b0 zhTd5^B-?znFnDX8Wi`YkOGfK}ef3=e>4>_n4(oJpL~sozDoQ%V=5P)=Dh_lLtYgw2 zC07Z4+${XU!>`CCFv;~$`q+*cK3Tb7#&>`$TCd{HCj9Dr!lA>B$5h;4>QC|9SNc@L z)aLCY2EuK<+dn5XrelycjzG|8138ivUMKp{T9F&eq&tr{LHkEzl5d@48tiHbAuCtF zUDqKDU*CuhvarbXqrSTqma#r$xuxY;NY9(A)c}dpwyU-Fms*}3Nti}2iqZ9fN2mDI z#x89QR__!<&PKQqJ97-WIn~f3z;25>2isQ4_zv2VZoj2UE#XHb+Fywmw`l5NQR-Y> zq~Ij7I8a;qD??hB#^KJ^a&Z7W&FW@=SCIuMY5OkjpPpP zJp1ib^k~uy{urFGQG!g|ZF`E@_MM-GQi;^&-!3d2irTBh1EM_Me{)#eB|PGrm#)Y*+4g_boWLsP*Y$-clrgtH4zW=@SPBJ zq^N5|Yowb%(~-`gLM2ekSfZ5q5DNbk={pEz{@U7DV^pZK?8XVhvY98N_gDPsivn|s z|6`4OI@Tj3dy*C=<4Gc$y-dThWQMh9@nn0RcpDhf|Va0aPGAWlKUip>2%HWX+ zJi(`8dSe=5qQqB=9)~UFO#cdI;?mSxFG25oZ;oT=X`3=MI3TKVRn_T>M=u(^%+Qqg zQ@Io&rWW~P6FKgOjO&jA8frR$A~x~yMC7Asd{n{P4wEXq1}*m=vN&sB%_y8bRzVs~ zv6+Xoqv(hjC1xqjQC+7d3CnYxzW`Ouii@nrvsuTa6-$(>#lwB22QKls?sH(u3U&7@~WGH0l$nczaq7r~YKoE^1vQ;N;MEPe4`@zB9D z!CNeCl*MS5*OrrY8MQpYCUTjDI2$`cPr7Aqp0uOh#5>XewxSC|z!K>EGIC-L+ej z+c_Pru`E)J)%l?Lv3u?$0guf@HVmuu`yK;jrx>?(Q4*FpT1Q*AQSxuAfD`veSXcCd zR1+Sdt^#?)CG#faA->};pzLxHk3+>rR!TOZadL08R^GC;mKJPESCz)f%dZXa7?5OV z5S$r7*cv^Zv2qatk#N=+-&xD5{pMy(&X)F@hZdZ7rZ0G>*_18`TKwC^K4~ydzGW4V+lg#EGbAX9mmO2l!dmOzIn3ByO+|`eeA_ zm5pLj)Q-H&Lw$)k-;VQQKP9LaymPE>-|0L97Mnp|6xYeC;-aWZESvSXDm(hh<(A1c z>SreC=7lZb5?UViJ$oz|0Rxv!%Sjl?&&-(!pAIK>zcgbCtwP?Cp!b5TA!i;Osj{RR zrE9JYTZ*hg5^1lEy-Xw|Ot^nDRtXRqekpKJk#6B8Wy=*DvTx7v!M1-w(WNygw6Tj6 zK!7>kK}Qo6uC0~vdGF#jVzd00tomaFMj)I&lkO0)J?Yr?DRw7kK6{y-oWq+tE<21j zh&C)o(yYq)Y4qM~Nb?#v9b+7i$oSV$4%$eT#ycJ%GYem)9U?+O-NQk2^c{Kn zE&*-6W{(RBmD3?EMM6hWjTDWZfqhCMfBG|#B{&sYVz6VZXjb%Un4EvQ)k^hI*u>SQ z?9Dqyn_AH&L3$jeU(L6(v8@Q-W+(+2&#DI{3AK)9CAXGE@)Ss${u1d>^Xkv0pt?kV z3P&@;Ax)eYwZ3UaBL2IJ3($ELnbbN=WFyA`?L>_3cNyMT<{S76uE0Zkv`I1w-_hf z;L$Y?41UOHKo$>Z)cZbdm>_o`%+787(Cl=@*^io%&37xk9XeV_Na_?JsaKfqAAfBc zb*bv1D`nE&x)eG-5nY1XBb4Q>v7YkBsXwMd9F8C(7=^qRj2`--?C5b-frQD*+~E4_ z-lOD_5v*X+GBPLrZtx*s*=AU(biDap5v@w?L+j-zwPrQ}5UsrN`Amw@WwOd}+5zA1 z?C&_GkKV{Szy1Owsl#GcdJ0QczDtO-hxEen)l;*bVoa`lJn+4VR%&5hd9>JOR^ zx$nE?B;K7m5v)Zd2Zm~BdmLt~t*#&uC%zppbJimico=)Kxx$QCEtW~B>Frg2oy+-! zXR#$;5lm5S8P8N+H_>2o6`<@l;Z?>oN|pPf$4O-dHElyHyFttnQC*(=d^G%3_$te{ zy_0E6FnMEk>UMq&HTm1)HW*hO)hS-_?|?onX=&Kn@2;RJf8fd6i@w=)?D@_whZR@R zkF8A7*u#CCbgVkWsWxOP;QUF}UA-38pYY0$x-6D+k}L~59-3d#T=0I61?Dat2S0!* zh%5;l&&uHi=g@un=H@yaL9ZPk^kBCNFB^(hI;J3*(up6^~q^jyFow z4_uRHN*$gT2Kub$pmQ$-dqvRgyWW>w{zGH;3TnN=kh?aot)NF~FxkaJTKzOjwRMxJ zRq5T6XQZ{p28{zv17~;@qri?oexeeaJ07)3l4blaHV+h6yi5{2eI8DIPv)iI@6)sq z+vF8u3LWr1=*82Cf<3j0af(-a%G#S|2OKBL!n8TT?nn?HW7WiY9lcs=nAJt-kU`{^ zMsxnwCxKIjaaA7&6YrvmZWX$YCJ8ta=N6>_yycp)HDA zwvItfTC;=(g=}~#e4e<<78W*?+QRs8$v<+@q`GW?4{&SLAmKT_uNw&r@r|z~AeM}WvF#4;PoUD(_e%yBO1p8lX)q`s zL?)ay@Fm&IF0QoKorEC4t5$sc0`0kfL17 zL8MRXob^G(oh#cSWU$&u^uN>1YghL>M9AHO+SO%uOJiC_LjH5Yvi+2e!OeMntHbxAFTZkKP zGiy9i#b5}AFI?P@qItIzyMi$6f} zB<@6O9CzW_r6*v)+g7~}Q%qB$b$;FqoYQ@FpUInZUF($P6H)o2 zIL7GM%9u(U#wyuWr?mtJ*U}MD5<|pKXO~s!s44wy%t84dIzS)dDr^SaKg^nbzrVR+ zN9@jRt2e48_l1EjX*%oM{T`PcJWv!JxE*9nifF#IwHk^oJ29@GuGg46y44c-Gp zSQN_FWwi@#7_}iu?@sjX(w><+o$cUjS=s3_^KglFWDDT)8Tm&hQN#?WQ*g12`_37%0S1{T5mmfeNbiRmFTlQxm(iMFeH%;Z98Y3v z)2dtZ_W_a@yRn~>Bb|{>*xUXBzW6m%W=gdDwqe9Bt)Q=hWm_VD6)I^x+{Z`!tPJe_ z)6r*CB%xr3AAzt-IDBZk`P6tSO@fAo6;=2v@a$3g`Mgl2d)>_@YUya%&iQVgY69t$ zaXD~*P(?5yG@OFSd^nSnEjhO1doq;8UDD!5R@h8C8->R;$%cakI%%s{t;+PUpV;tR zRPEO>C;Qo&8J7bd4BPvA*Ol}4puV4Q6YzwRn%raw$=vSRJApqQ#r5q$+?*>d;O$cKDzO6tYY3V~QXEKbDe|k7K1(IW}g6LtkA`l{Ghy!fcrbW=8>v=(O8%&;+DBExO{WpSp`) z>(;rll<93$qLb*N+*^xRH;AB@X<+I*YaXo(4ab2|<4F*PWOhsbZ6c>Fw)lK-y zhTt0U-aUq+Dt z%b9T$ArXnmJNI)TLIL8o@YR=S_;lyyTd~l{Hvn|5n{{;Ly}EpGBA+3dhL5y}%J5M& zB2*O~Je)%%U(?HxB7WTZ`t-GO(NWSl7f(0yVmR^cHyq-~a|#z8{?f-uF3qTB+94BW z$|?u}3vMebxEMG?@35!c7vG?YGF;)7q%R-x!L7u(UPKJYb$V2P+m4FMDF7l)k}}|t zp`!BQ>Y^&Bru!)p`+uiWs&0t{MKt$gl4OK#w#P*Tbls4rh9bUK z1+m!GcVBefJ^ui8>+58oZV3vLZg>`-m(o}en{9QNu0+0WTpjd=)_k1O6o}6f$dM|f zBRKerEgXoFqxwZXl~JTq2GiUA?x3hVD;ePJ2LyzZypXh(e|H1Byfm0X;uw+^pO+r) z`!UsxYq4`r+SHtm&g#Mq0 z4V-MQn@pbR4%0#=$_A z@l84W*4u_8(r$%OQ>*x}e3uf1?P7z0U(vf44v~(PG}~OZMU2#NZqC5r-!TzXTd#p% zCP_C5sGuU@H|Kdw&3YmsT(QOWu8ev(`SoibDC2=p5FC$#d^5J?Qt!L@aMWSf6jSq! zB+PX7@FUkdj<0^$#w9c&CN0k|yI!py$B5vDmAaMqo9h&N^v@EcXN@6>R zOy_s(PM_(4-f)4rpzCTX;1^+CcAj6okF96H)OlaSW}G?&x-8g1o{9o@eF3 zF&L*zMrJt4TsNYsuPSw2>d#gjoI|&mJ-ums-C5LZZqA1$w8kDh&K0$>yO83!24G5( zu!-2)&8XDdvtDrANd&?<9wo9g$(JJIP}zC)3Et4wnBnnza z-eQ^!WooMxHItfg#W^P2e~6JP600hEZoO}A)1u1vhvCO+EJ4iDJ7Z?+J_3WQj-5l^ zT-atT3<_}5mEe#J+&j`6U3FD%E17m)Q@g+zGfLyusT60@B^v6qnLZ{v`ipF>FOajuxvtd^)+xwko~~}l3Xf%+;SmKJT-G&ghO3* zEOXm-qSiDtw3L%}i3YlKz=I^4f>qGnZV|p<0=0;Y?1Q%v;Jm}D+3c#os1->kD1*aq zZz&H!DDwh_kZs_H00Z^|X*O`9G&e%&yhYH1#HQvU!A4M|J^b%CcdtE%D~aHM3qMmGZ7-{m;< zU5$;yJ9@gH!fTwHkk(`xL6X(sxc)mQC1w?!{F>aph5Ov%EDFf727KHtvV$;Nd0Bcq zc}=$SMh-Mw{MA$1dTnw%>WeQMH41F^n0z7@rDe4f2V5SKUJ0wYbzwu}l8nbPwHzTf zkhT2Q{{Ws4du>k3uiKSlA{2ySl5990x^9SypDwm|`zTDd$v01U zmirFz(mHcN@y&XF?Z=@iTTY<#QEWlwJCMm%(Lwooh>NoY{TS}*MgvP%g~-dnOmNlaC{2;jlBVCjJ7KCf(^I@%Xcb$ z>}9^Tw`U5>D&;!wimr3e6$#>XBM&zcGu%~I#?td4{{TTD{{XkGW<#XHi-C}cmPK#d zs_bhp_r}KU3+S%ZpEbYJw*#jQ>$)asrAJ9^!*tw4G34}OG~)YlUElKJxW6?YwZosgjb4X&&3KJWU_IvT{tCrV>&p@IWutpo)sxl8@Mv zZ*RZo=_$%|)SE%f8(fp(So~CX3+V(%QO!RsxC~uXNTRlWw$dw%Nob5*W#QroW~=YS zwov70=%Vdzc1B`p3Tz6RQPVmZsrMXFdmfc z{%mM7H1v6uRfQg7h+?fRdxrwU9gAIB6R24NR#=}}>}G}5+Cf&!iGHE~05@I6n>v6}5I0bv<9$e{*y_F;7v%u%UtA@N`&Huo=N zQcy$`CEIoRDI$NrM+?F!yBvs%yjS^rF`dY4v$z{Vxkv8j`OgJRG4G=>Ut*$Opk9i5 zY`jF4LO9x@B6}))RTKW6hJF3}$bd<6d@cICa5*v{gcopeZBgan_2bkZXT8zp81&sc z)LV1Bx;%Qz9T`#_Y~QbL1>{EBI_lm|Z)JHNBt6^|PAmS8C z9Rc|j+Kl4LOmS3DSoOC6t0fTdR06B0Otn9OXKd0E+V$? zfe%t*QyP^~jOtcBi%_{OF?@##otO!_;G~+&rzU*wt+AIFQ#A=y)y~$(*!DF>#FRQ7 zb)g-UMB>fYXX^ES9CYo-!;8AqC2#vz6rSU=i5I$;gy3+hX|bGN60D5^#3`d}Oh=yS z8|*VWNh^}95lc5mDIY$ zx9@PZaKS9yj%8_*@gCAI0{A8kn)5j=ZmM$UF0Sk^PZ6Y$?0HgUKMECiL1k;kE0S9k zkK=tL0SjGilo+q8|Po`3Oy*fk@0ZMX$ReL8#o_6ohcU$Z9% zx2Nz(X))bJq{-nvM$yMeR*~YQxb3eE#r1vSCHZkt;ql}<^rEc@1>v;T(q4Zp+(>@H zz_WnV+c70^2^B8yoKi^H5oMeOY~H&L1BI5gpR?EZ55(!s`M_U%c*!{%=<%; z)CdK{7g})iE|o1@!?;WlUQM*{ z$6S|5WtOkbqQqZxox?(U(<^fhT;8V*xx^t*OR3esw;Z=WY8y!p6~B4&=fc`Ea@m#1 z$JHGcz#LQH0o0olMq!qw3s0R%sSfBRU3<=v9J*8R+m6{~_M|x;NTZ56h{KO(iueBj zZZlLbCDF!=BQ>b@&RDSAnj2V!4da0GTfJc|_nSj7M@YB|0&+(IMS9sErHkz|03|yf zpv{hQsAM3V$|e3-DdCOPF{rqO)!@nq5M))~ z%8cY@tt;+i)Yz)W#_Zcs;%v=`(y0r3?h*ra<+^qHwsIoHZlf8soMeJRBd2_6qjpL0 z9cyoX4~Agbj_{Nj^LOXjf66{l?ZKbC?OT6Q^(?F@8D|u&u5MU0jxt0wF%HT{tgvbw zSU619#|PZ-tY$^AZ^kHJG~b~8+!%eDnzrP3+z>wP*xp<~t;>~oYQU9oC`vKC>wMdG z>Q4Op-&a-?25C~sBgu2fMIgK^%!1dIsKYEaHs-V{D%^8)OT;PeiSp>=p9WLgqFpjH zWszi8a66Mtxt5{y;XAIa{4%*p(G0qK(F>RE<6Sflw<*nO{+;T4+Dbh@((2kvOAON` zhi6}PbEX+rplczw@+}`w|PWNxEpzl zlNdIhfk{OMzCc-2RpIWGfADd}ieqwBN!1tGcbA2hNKsS6+4k9oPpZ*r;X0jA6M53i zLwMt9uX>pZnJ%Q&_TWj36*$`@6$pekgN4rEo|5?UaOK8mN~6y-mcJdQ)hQVbBbk0S z&D%*fZEUrAH0tn?R?~Jh{GDP)pf;TJ(o4u7;QR#_uT;u>>B~z}al=A%x2kzsMnWWr ziUW1RJVZ7S+G%m@=0Y}~8IdBt`2|elvE34WI0!Ui zqMsEnaV|Y)^O}cLb2ehQ*t}(x#g`IGb43#6a>P5oqsnjubdr)g#pqWhvAiicyjH@4X zTd9Bq%Yr!(Cyk*M`KP)f5+d$B1lmXX zM;R?e-EZO{#e^7ER7B3=?(g}qtan4C-n6T8inxSC$Bs3aG#?@p_7_cf`=|Qt*Vm;W zGDzo!ukHRUET~dV*M?JTq*QeIlg<8^VEcN-qcMn6%xq1GGvc-~901tF+BF3(N}Hnb z_fKw+yzsnR)5x11f$GJ=p9#c{%dEJqsUYc2Z&o>AV|nGyqUCSPeltvA*R02dV-mev zdg7960&(jkIzznYxT$h2)d!|9;xuhJAcoO%JiOXd`EdP*W}NX6)YB@Qyw;aVeAt)O zd|n-$HQNrwNphpYXoUynjlSGu@{hN<7@{J7`E_4vQWVFVMMVO+Q@gXkv1P8YykX%6 z(((_(r;erS##KLvKPkIFM)yV>BIB~43!IfxaorU*O})B3xk%EsisrISIddn$ag4bM z9N#L6+AGtfyS%8qXu_e$S&-NQr^H-!uu|C(eUx@Z`}OeTwAm37+N6rV-Gq)t zH3dK$t>wp~T?ohKS73dvU=rh)xOLI)a!4((K_u;RD@N>VX2^CxafcKsTCeiFi?EA- zaUJ?vGa<@;p4pPN>{kZzE>+A_g>>rC^Rky67Roi6p*azBuS&wIt*~Dq3d9opp-=tqaMASev#b zB!)$^QA>Y4SR-Z3LQ{e{jn>=zCH{Yh2}X_MPF0R>;fJC-nD+4FD{7?Sv;YsulIoYU zV%%p5q1)Y6@A`TI14xw8H#5%rzRy?m#?4ujPkW0pf9_y z>wzE%5j8RuW9-Idhg}pz7=Yt0setZ;jh^2X>-P9JXOST;thDnF&FM@qr;Cq7aUEqx zc4f!MRs(tU49vSZu*+>ER#)SUyNlUcTHnp|bT!qD!iOxPz5pisvB_HTt1()2(iaQH z245bPL5$>ygy|9s19il@d%w#QMFDJEK|&`wkW2IV?!fm=a{9v5Jw%OPX(uR>pVS#a z=H(IU__D30{{V!ZIGr4zZQ82Wn~~#3Bq+LJ8L~!W{+_s&ag<-N#d&TdGwJ(1Jvd`h zY_~Dpw{lkqqec`{lUQn@!@V|9=di?_uAspQfUZ}#Kk zRsH&ny~#guWpik$c7M9xvxW+7r3S|(kYZm5#k$Fu77f2KH$8HthoCk5kmx%|Ey zF$vqn%Eiqq=%hZ424jYuIW*~hTb8xvYYfCU_jw)>+xO{I$M?hyqiRc5Iz4tF6#u6>asIEA(tx&6fIAq-4`!s@A}?k@SvwbGIID+X#Q6>ysvg zee=#BkQdH2iF#Abf$e^*Y4$;>kg$u3%nM0$??iBC&rc&&<1(cNPnBf}9s7)rB;_R} z+GOn;?WB0%`Y{c<(HPAUZYqOon2hmthZPv~;E0ZFe$dA{plt^b5L~1y1I4X}vAwqH0J;~IM z`9<;Tz5yv8ea2D1=iVG^d&wwWBZj~@ufZOi8 zjx!aZG8;=PvRkaTtM*{IFEGqxeZnW59tJrQC%}U~&rUd{F<`e62I{f2`b=eEgcWW@ zGp#JAA-Hj739l!eoZH5Ts$9-LHRL@72DJ^kLo*!z0P!XcLmJU7Wu94ghJC+Y7F^0i zSww5RB@qC-GW$pO;%gPAX3U`18+H+&a(SftXpT9?BW)-XPOL;8FSLG79~Ai~_WrJ` zQYR%Xmn6J9#$)Dpu6h#O(&Xk|+keXl+*5Jl5xk5?J4B08{&-_l`&YyD&AQ7QJSP~1 zi(hE|7n5ajGw9E}%xu#NtC1sk)3Ka>bcWzr#c|GUg{uVQ#)uts6a#Lkv)^X51<91j zPE7%DRRQfTfv@X9gf3Qxs7CH=@YHBBCPX=mNFr!cTO_?f)S9&kCx#|+JeCH3MVjX@ z@8-v1C#G`G9;2md4ojTmj>C^%bo}-iFHHu*JyU!n6jobTYvF@U03vRu!YZT*MN4Wh zeusPMka$`Kx?BOz@g7>SU48b|>t(8#$K<>IkdC1N@3f1})r{e}(A_cBC<9Z9YrV!* zk6{$wU7@v$8tPoTyE&EO4@Y{U&U&?5DJ8KU5fbru(XrqJ0*ThaBCQ%8;iuw~#NLsM zphkLm5Zx8H0Zgq<;RHHT2f@fcuPj z?Om{t%EgM>kqp?w6r4pj1VoT_{Yrf^rp6l6P7JozIJUP53Gh!a+P3O13|NMx9!wcU zAdE$|(bdiV+#a*dC9bkMdptm4GIFLh0z@ejJhpSDx`V}t)#8idL1ajXd7rU;`4SIP zJnK>5GT!aDzU=npZ!e`aBGG7c+B{0$->(X3dq8Z+awLLM26TrucYn7XyXmv=Y*mbY zB#096YgtWLGX+%8EQ<%k?qw^GcCB{dvh{U zKCKY8X}21V+h@L&A(1T2If~rwRPOn4vF!WK#-!8Kh>TlHZtOBa<6j<+lQQ!&HmhKbc8qAWY>_tyQHxMQR7QRk1>X1 z#&lE2%!Y;5NjWDKCX4R8zxL{%F-(`ZM1LuZvk?$l5w`oj(Z!~!Gzf8mEp%34M+ILK zEV3;$h4vyu1w;{2UH!UP;E-BLsj}_2rwm$b1qDw^7ni%!j#;zi!RB%NWRC1Bx_h?r zCc@$Se321TZTkAJ$lbjh99_>JyY*q+J=l=mCl#IJ!WP}!n4+w75RkGITvvBDO~q0t zjMY?$QGai8{{T*xw#Gw$6DP7#s2J9B*JM%LW^oD^5#ARfO7!P=D+9IFgOh(MexGD!`JS7IIQ)N_z_~y&Zy{ho~VNzR{dOgIeb{Z!1wyOlM z)T#_@qq@az5s1`TO>o{DlbI}H%1HB~I*2hM3k(p4i<4%I?hYR!B5ASJ7pl>#jhkxN z#ZUn)S^Q8}sXOs<*{F6p;bn3}lT72YrATWL)RJxj69;_I1yAF*+b5<%_!4?;Dc zyS$0mIrQW|oQInXYJv*WF+t5*i~a}wdU0ROSaN2#*^r`>XPCP35-#eg9ur_{yZ+q0 zz4}(lmSSY6B1A=MFD{WBuuOIkDXpMsTSuzw1+ogmNmVG*W#*4hlgwe%+hBd$X^1;} z`0N|3ZXdAlV1^1Ub%~C857NWPTH4;_x|crjoA**w3fR$L1UiZ+`0^Y=t&17p5p2tzVD)ycFsImiF^3e;L7Q{8D~sY^FZIMulWBHE zt(wP*Vwm+@0c%q%CeuN)w216EFQf(fjK)NvCl)*~Yujz0UBnh=mF4$RN_AGhPM}gJ zM`??<%{qJn=kHBdk|$s^B9;j0%eMm*g=M#t-YZ$pn~LfD`LJNsO#;+RdmPE<=2qCn z%XyYRX_Zva(o1$rnrUYa-op^BqPAFVAi&A1)uvunl##g&xyiCM->mav_QIjH#UhbT zhcIJO-(|;Ty48Yt26qWAUqtSCBKd@q3mlq}q(^^IGU9^fTrcww{68y>^zPR+ey0S} zTtY^lHw#lSxKS3%H^*jE)i-9&VHL}oXt^22u{5%nb!-dG%oAajn=cFD&ygMKqg#x| z(YV1^1?QfOg0K_>Eg{lI3)px*e6X7($44gP<(dHYsV8a@^<{w!tvzcUmvP3N{){-ldx{h4= zB$o%gXoSKLFX>)~+B%dvn;z>=C6)x$%68ZWE*-n1>>@BuY(V7J2%D1Ft7v*l%%EHp zZpNU(!tw1Y!R+yhNHQy|^12omQD2jLI-=Vu$!+g1XJOgBtax)3_i5{`YMGAAVT#*L zjNmB-_dSO{r+fU@MhG&jr5<7XvLM}SAfHID7dB3ErQP`bGii)z&A?@nWyan!0_7!Y z(a~`B>RiX_#I=g(_BW40w8ZAx9#LAMbDB|P1WvZrMR^&f@(_bAwTRA}3F)G?k_-TW zx1MX{B8FNn;!ROx9OoL{Q&fsJ?7vhNTx9ZgUaO-|^J1q^l(H9k)y}@~ruOvZv$Egx z#yv!?l|>&e#-rCstzvxWv!~MItSm^p>6li|-b{Grs|q?uSG+(@e0@jx#7nKVs~w7A zxlWN48wrnzxvWHoawGo$O?23*mveCWv2~F9a?!amIh)V*or8Dv^5dm_RY#1;h}Dfg zHDz^^!L52B#Fpi}jBb`V3C4$HEWS;}n;=Y{P!lJE{{TCQFCL|vvM>IUrpb)+A5NRp zVUym7HsCG0*T{wAjfUN24k3Q<{~!L5x-;UdO>DEyxgY7I}NzgPdux8it?Et1AQPmvoiGd z;#NqN@H4sOx6D6uuJ~ZBkzDDEwKV}NPiW<2w%1m5$1Zi$p@9~CZ9m7@lJ;X&QR`(IO-xxiAZitynHd$%4`D4#BE#hdOOAv#=Y|t6(*lfYT2gC zv*2W);Qi2ts!e`zI`LlGqeQve*uOS@UrsLcG>B1~P%Uk!foko`)6@R|j8jRZQbR!G zDBkYuCO{ zcHeSA*%xw6{@n=UqNBi6h<@mf817pWu}hm*#Ye}}j%kS7s*RGS=!>$Cws=u=T z0KY@FB1$Tvq~|tC%jv|1Xbg!U+#~pl%DAgp14twwM61OGP*;8{w#)l|>-+RzHG1&+ zHRj{h_FzWeLn0$-M2qvQ%YposjrWbTQ~_yrdD8gYaSCX&;V4m(ux5t)SYxPZ$bQR1|I=7{#d{D%b*cXX545k2>Fiha7b zQX6eu-L~2h7IyqSS7M_u4oVXuHr%6;b#VOh9a5(}&&Y?jUn3L~wmr&Fs@S*JMj-tir>K{m2B zg;$tJ3r`-bVjENJ>ODqPLZMHxJcq5m)cs?~nw4zhaF5r5_DQ9kz+yLAksDm}`r4Ky z8FiW7vABh}*Y83vg?1dU1+@dgcZ@O~h)U%vYXm2GUZB;zEYAjpWQf@Gnx=BGk?c8+wv7J*f z^awdM%$AW!w&jI-mG5l z1W2MKz-_p_KQEgLcDm#4PM2KCF5w=J7bP_nHy&}ZLvY+8_aavp-=$7#eZV}&v+;P~ znnEK$;iGAN=k;5joL8%{9!R3B>2HX|Q&<MC)I#syxVTP={agL zs#gxJSgc^zP-dgG;IJ#;TfEs%rjq&vb23%HCud`p4hK5ocz_Amk0M5Nhug$kuR^;P zQv;H-yH-~2ZYAmXee5$}24iC6bkbVUK0cNHikRLW+B+H5`~rhZ^GpOr%M{d0OAGod z7g?V+n*z!`3{|qA%iCtVXc*=}Lo8c;k#a!1J{gRMCU}}!oj4~qa}O+ejhYpwm*X6| zdza&b#M_8(Gc})hWyb6<)AXRaR?+hZHU)k3cEf$9nuS-MKa4p7n%atW`bYH6T2n>L z;yiHLsEK<(>9F}ba+Rz$gpBzK=85ghUEAxUF{W8r?p(0-4zjl*<;=C`+F)XXWnsu>jUPTpH);X0AX)EAX`*&9Q%bcZNzHZr70UFb<`CP*FQYcFNa&nW;A7oJx@KDI4C#M?NSaccm~j`-sFK;uD$h zMd@3*kGJK;M%PJlTsqt@vTRZXU9{zTbzrd?95ymZ?NZ2w1sXJHAfJOO2+lVhAGj3jM#R~7*y`NSrRZ^15{hK_x zz-CUS#&T)XE#7U`Lhl-{OAAVxn`-GTmpN80pv#8yP6D*Q^FwWmp$=SS-xkbGZRv_6 zj^-t;l`VIA#Cm#h1LU&Vk88x+juHxL&egk@(kaV|1+EtJ^>_AF)y~4IX_(S78Li4! z=Dz%iPs|29vt$>R88ah`s?q^%4M2cH=1d=w+c6Q8a3R#EM-gR_xUa~rQgl0VK9b{) zvRagGGU{3)DQ&lKJwMH-3LPF{bAd+6s+_xu+)UZiYbo^KN|74xABqn>T?QM;86B*B zN%c}}9N_OBZtul9)wZIa7NZ`Y6}O&}r~m)*c+y9!Fk7c|pr+G=%%%u!u~K;lD;t|7XF=%|Q3Z77Pqpkzz%LHFOQH7;n= zq0Xkin{E_VnTYd2ZI%|K^(uyfJxhreBY@i?1cEH{prUsA{%lIh!l2UQ&D+=8Lzy#; zQ!muNDlDQmqzs7;S}Y<&KN<)M0Hb6ge7Tx(9+Fe46IoY+d?1k>!yy#{xX^7<%z(Ov z+>w0Q;$^s&_amciqI8!WzuSoGsBb~D!l+zng`JSH%r|Y~Hzj}&nEPuDWF&u-qijvZ zRbSiV{k;%Up~|A=9w|3b6g1uLM1%A9R-kyhgdO42&nIIqeiQ`yb~`Z;wSGO;MA)OPAGIzoc_8UP5G z87-r`w}{*~US-Et1dh&TP7zw7npArbZsr`k*f{AHBZ<~&T%7gy=ES$LyS2iag>M~; zI$G>j%AKWuAc4I0<+YQOhD}2wj`TLbjQA_6J5nlpX&Yy@sw*49{T@-w6{KX`eP1p> z5<#~!&m!1J6X`Eavm-wamLq8+v~8o~pq zCLG7fKRyiC+XHqYw45GA6h$Hu*hxCn(4Lt@i!x&*G9GORkjBz&e2dlD+mBLgj@3u5 zQ{dHNhQUzhf;%lO~yoBsV0+6cNTgKFh>-M|wnYS4%!qsLFFJW~=) zva=(b{!bW)`<~)TJ15-*SKPmZ{rX@WNV3a6jsj*uZiIt36qi@~f2JT7B1$li9iu=O zMFEi&arfOX{KMj#y5g!Y5&I7=Bh#pjtCu#3adi0MWVs@wS&|Z}ucziuyN83aJt4OL z0FBgns%c>A+?_g}&E&jx*@bgXu{+q{lIZ2<^G9}VCB`K6=TwBd3@`};xsn6O@Ku)> zU|c3;O7!snyHcl>OPAqAZ7E~qtD#0kYw(kMMTOHLr3$~4W5=08Ny zrN2@Z6illUo)1~dSP~~ejhVkgDkKQ5JYxb&O_TE4VSpuA?E{`uEx3TU$i0V`Rq#bc zwRuT6dW64}v0{aBG|GV?6V2Q=dQ*?_U@fWIb0W(qX1*jBUnW_uQwBjdSd9pxzA9gK zLBDm|+v2?l^9J0aQ^~#JWyhx6cS(7{jOD_)ikV%_@wBl$3%3`u%r92;#!ZA;>^HWW zI1E<7a#VQkT;!GtEXN4!yh`Pp=PF+`ZJ^jeqcb#5)GWr|bXnau^mkj@Bd4`j{kUxf znJEd$EJs3eQQYd6NL|zRa^WDb!7QNF&d~G-M(B}B4Ol2+hj(+&DG8&I9Lf)J>a%6Q2+%~JMT+>5T<{_ildUv z`mH8~5t1XQUh9SmL%VIYw^z(vnd5VR3E#m!e|!}68qKS?#zCdJ05jccEYiv3J(TC? z6jdGml8G{?#x+RG6m8j$d{^cSiI9?{4a1DhvL=6saos@D-NVX8w|)`u#*0&WF3Cn^ zWjXJ4M~3!dDE_Dmk=Z7MggN$r4y8^jYGc?Im;N34VW9N0>9lhz&1j%cZmeWcjEj)~nqk<{8{8OYgS|m!5Z(1L5kT+Vb@}=FPL*AH1-rk&x zTB^~b%#Fv93AYmNIf>@HP`IXe&JOQ;Y^|FX$4;{bsi`t|rboBK^ZUBQmj*wH?;KyP zlT9mEc;4nL4E1Sd))=xALFV>#GOCbDp*l=d)pu_Y*&z!}ne?Y;*@E_~W@2sL&y?yD zicZD<0HfGqd2;!L$vZj^q_Klm_;pSrsuHq2L)5DbT8A7v{6`!(RT1rEVbhwHe^`3D zmTOIvDK?IoH1zZafKpeLqVXzqSFTEw)ESM?W_#qzfUb4K1VKBGdI}<07Cd2DFs30< zB*#*nb)|6FqCKRjD1zVi6 z5yu)P(L~%AP|Jasl~-rlt z6T&YmPLCI_$1i1B+fRO*0)EN3ZpCsdZh}dTk4ut-*h_GIJ1tCD$oUT*vg#(-?Ts?2 zQg_-FOaB1t&%CY1P!VcQtG7Uz{ z(^-}^Hy|`M*%a!jwRudqu>S!2R`h>Qbp30d$u6DZM;CNK^x!P{NnJE9wHiG-Qg*nXzTVhyct-BV(4fH%iwmmk@{^xxY%mppg-I9Rva%t|3RJvaw-8iV}ejzXibBiK6J5NDAk12V#W>8t!1Spoa zZM2op;@3-%q+%e`LW>ksjXc~?$Ow8(R*uZ{D03sMT8weAmzp%*UWB%YuWnZ-CvG}c zqod7>jw@`D3h`A{Z$5oKtY_0%J!~0?7XBlbMpmIM+Sq8@GbFm>W-V5F#u{-EvlMMP zASrR=3G(@MxXe^at0?=6P>TlNp#;d?QVtA(fbj%Ov+ORMXr&RtaRNE+g_QE@FPHPn zkEb%0s&6DXbPPRd9*)LG(_bjgL#d@`z-2ia9M?RBaUIfaw#f^dLPlT&Ug*l6FTW0< zB_fH(wb}=%Tn_G}PE;&P%rhp*S|Z&F+>aNu%tNS^x-Z}%Wsv7O&ClL#gbPYBIDz6@}5u?f%$-Vu|y0;5= z2K0{mb#oA5e5R#uZdVkUXMl!!*VBs?rG`IjjatQiC9YKM-Ch@oV>S`wJtD?StN~7v z!85uXKy6!Pv=7WDB@%#t6Gei}K8;?K$eik&sR0@T7F=g|Yk2bVj+D!*js{_gWceZe z3>MIh(=)g35cOiOsJT-V+1m`*My?AeRf$IISTGzWDy1}L)s%1tmB9`T88ogsocRv^ z%kt`?EIrP&w6tdT36$x#G$`0?pQR)sAjvksvk#-_+4s8vR;F$jab(vndmQjN0{#^D?l;iPh3r{Sk$F7MN z>8u=&s!-OX2#ljriKm%$1ov0{DRB4VC4AY5uN)eS6$chekAA30Ze1hFo@MbatZV+t z%qbNoqP$4VX+v=LAsF^>z=|w6w-#|JY2w)5-p!PeYiX!!rrO<3l<9D4Bs$m)IP{4G z;_QMTrN2SB8TT9}BgIrQ>9;F>W$9m5J!uW2uwJ8j$Qp*=0sBiW{m zk=$2z055SA6|j6yKQH>=>29z@uAXlqE|5-RKPBDBgQ(BAakYBUm0=WmWmVdjWEIhI zEh)stL=3|+AaUHMQ0*6iTFjAn4WZdtSkG6TvYu1n%iQpM-lIc!;s&|b=s(xJewBrY9?kRJT z+0KkdmS0phN66@@Y0O!ALVjPaykrp6+byoK_f5tZ0F>3hBR>T4p?Pm!!T4v2eDnuo z$BVq)7I&I?e3yL1)9}X+;pbl~CD(kKbjc1REPGG#D|skfjGu9dFx}+fqHaon9?AY< z5&rJ0JJpc;jyQ@$tHnQUzw?1Mus1tDo!W`e6#2Zi`EhBgYQlCcIz6RZmGa)mGN~1i zB?&b)zP2^6Ob1_!x+qF~2C8Xew*RPxHx3>y5qupL& z`T%i2j=yD|;IX6|bhlRTl++#~HWpzHzA_;S7v>9O(kdtRuP^g-uBOVi(2@@9MMLot z^8R~qWnyTzPLB|Z;+XI7r}Fx6p~`^ecl1mdF1bDRnGQSBkCKv$ZYUvqiB%g<(x1W) zL#%Uicm>w5fJ}q+Z4Fp+>8RM@9}RFA?=uF=S2@PqLq- zZb_%`jh9vm93qzMZM0V@T0NcwH)Z#3z%?mtMWneU$pYIVnceF0kM`idqFuLM_jTSj zn`pi*912CvwRS$Up945lbxb%{8MZ?u5LaMgI?i3!?oEjQ0C!djo1&ugNJ!jPNQp%> z+^L~IX<*HRffcN)(?v*GXL@>dC=Rh`ekN*&nEsnuU58-$L8katnBk!gyB5H)dW>?K zBP7@haB5+-934I%cibT-951=J`4an=N`dioM6S6>F;c3XQnOQ;Qk2P)^Bf{x3&TE9 zAApWXo&t%BEPSrEZJ1X^d`-mMk77hl3Gq@TRNIc~J#a4}I-;DtpL-un}Z0_fys-FWUR6ePR4G*4TO^4zvjRv6UQlnUJo)#iafZG z*LH>+Io{{WTOo){3> z`rL{wX^r5?;0x2}w(gR}Q`^SE!md$A+8)j}o7T}i=F!(^mZivfOgN$b+-Hslgvd;% z8k1WBNm^w(R^)nH{5HGP$iuTFv8F2;*Qgyb8~S+kvK)}XiU`go-DDJ9Z1!hes8K3A zCQ}}UvD}JVkhxS{aFp%0FT1DVj~m1hN$)tX6O0lSz+Vv4l8>vm1xT7Zjl)c*C&;py zwwb(ZTDxa)+lsYk7`BIV0hE`NQ$!9+QXiJ%Zjs4t)=ase7@-PMCDdfYqZ5uc%|7PO z+{lP{NXWEl>@`sy3(a-}No}6-85C`8$cH^gs@(qXGT^VL`gN(5ZDy2pU!42aNk@<5 zxfR&Tr^@POQ!V@q7E`iaBvO8=wa2} zr}?lsF%48+be(8iX-7b5-v*%q@gEb#3s9bZIeZLo#^&yzQRG! zqs%|&jiy|;Av)PWU|t~=436*INSd&Z>I^)3(;<_O+`*pG*P4_VtTt0@nUd_EBSj|4 zEU_Ya&U}cMn*RWA9VW! z-=8*{c>dp)1_`;qCsx(!EX%BG4G59MGc4xc7#5wkNOf%sl9i?#ayc54 zVk&}$id=e28)<0>5~-Eud;poJhQ^Ub*KTe^4%MA}~Gn7Y-?M}hc`CVmWgQJXgz-ba*HsSi-E`+E}%4w`na zr23zfW7$FXFNR3NvYUx?#ZgMOby}$}Aqwa3WKmAVFRKU+0zzrRdfAtrh2+=?&Taw} z66q1+L;Wc2X|j$fYsPD8foUVWbzVo`mo@~H(!i%UVI3ZZ$yt5Fpn7icUrt%zL#S=w z7@nYH82+Ew=NVKwQ-@V#)=p4gtG>8Hd}OlRn33ZQI1y{sJ76lWlcpwo+Co6+DY2te zrc-Lr-a3P%pe}-rK>q*>P!yKi2Eo&T-xdxebBtEJ@@8B)emFO@v-YULuH8CWdRyA#_nV>BuJfhwj+e7(wVd7l*#er*IIVP!==MwrL?~4 ztiH|cw#tzhA@vdoUCHJhIKBHXp;W8V-dTARSgJbERBu7|PvXOJ~w-?LuWFKOFKdjzjJdY`Eg zBp)X)G3vf-9aST(sG}2QzSopXn=##Nxsd@+eY6v($RTqsERX*H^j?zmj;sqJy|Mc$ z;sk076-uBkdcaf~Ug1?-(&6%oeR$EhS$uBEG^Z2O?8{kiHMT}1uc77|k2V{5?3fR_ zuKH)?SGI#Gwg`w>H$44MkK}JM{d%C}i37u)ZrI9MC^cLuT_=B5ljjSno z>|Vk?tg(un{{Z$A+vjt59;tU_+GDF9G)PI7Y8IMfXv?g%YRAswFsh(oIWrneenn`^ zVL|c_t^h;w@`6NEp7*;>C1zV`q0;Kecn_=laE?7HtwXKF-Aodr%*;(P&`Z!jfArny zw74JFgy*tW<6wP*YlJ%MA*{>uooI&#HMC$(MBnNBe;tHa^%F+fp(H_*V`%Rk&{X6R zFS>M%fkmoChbWLqvCoH|>}oL>amXJ0)O2u}18fJEB_q~r<|0H9^x*HIv9XFs(d0h@ zL(yZ4ZM`nd&lFTQemvWY84#U)RaHPdi@LABw^s7qZwUl*KOa^SJPxRmy5b`AfR3-d zfbVo!P0nF;KFUmJ(dnFRihO7p=F4Vd>UMr<;r^zOoJ(uZaF4v*IAiAk-ZV)byUs9 zs|uMNQrlvXs=qFlBThcUW1jNl8;391kCkE%cC1fAPo#5p+ILve2oZiOwP4WpOt>~N zsgUcDv41wRtJ5fwqnfuZn&xIe$TCwB1wwK=ky>qn9ncHRqP)2DqNGBSo89GBKF1KEQ>tGL+ueFa*IokGdAU@ywhY&=Giyo z{t=W*C-D_dtNTdP`BTuetcP>q`%>?^n13EPjY2(zyjbm8 zz899FFT2Zvq^x8dm0E5#g(0-9jL4{u7L0|dPwltAEr^qU+isdbjI6UU!ete)619F* z?MyaiL6Z|4wFFBv`IDCddcbYm&m@t-KA%ZlahPP16|y7pw;-$OYf;7aPa`K~zW)F% z#CY{4&ehf`z3y#}^nj4A9$UN@q^-tnT%6rzp-b8JNkmyO%{V zGcA=9-xHT7*={e5&)NAP+d~jpGVLsf8=cwDdMs+Z+;na15Fip+=33b_+b-t0z%JT0GgV?ZUo#HbFBx^%hsTq$JtViJ|Z;=MQuZ4lv8 znT|Zs+W`ASb$)+#27SR)U|R1xB*$@S6=&Qwi9m^D?kHx%cKJ>bbs5QT<5HtLu}+OT zy(W4BR3_E-m7T|u@vLoL&at%g!89GsN(zxOeMgr;e{I-M#Aj)dNhde&n=f9tALX}(c0V&lv>q1CEsmz6m zf(yjlh~nCl&LU)25~7bbXoJm`TD&p&skT$(+R47b@{F>$ar~x63zX$EEg(|TR!y4S zCOv=Y>;ftWuYbc!HQ30KfeXs>+zmu}(dhpGrfJe)`<&+ric!Pf8dF=&_OoO{(b63j zj-fHT776=3AZQS3@#-H=E|X6&*g!dcy6m}6lHP8tXO3wDP<0abH^+?fN3O9CNvfE> zC3K%#fu2@V+e)y>8OE+#XnYoKQwYkG(@nPHiv{6m5D~rgJ)78?oH(*;2-}UvA@_~V z*Quf1!QWbN$hoq`NZLl@5;jJ=#U|7bf|r=b%p;24lWIKMP;(Bm#+Zc+?K0NGDvs3m zZ6(6gI>}L3#Tce!lmgzm-I#2%V>MfGJvcMt@tUen4`JXJ>5ZVMIMX#*j2mMa(GwH~ z^EQYGxm9~@9ypZR24hDU?5mRAR1yUe$N)5wm&~8Vfo3zSx=q{k?L*Vdc9z#T(ww^5 z%4Iz3IZ(qrt_e^Ex)Rw-Z<7{L7*Q!H6u?xSdy2WR^!B9LS0urxHtT{=h>X6GKwUK+ zS3JYtX=8GcPLWt)mtJ{eN@s$IYBebvj>T`c=g?HXsWczb8;caIY#A;8zOhRnCZ=s zLF~5OJvQdJRZ%LODKE9YQb(J$EwqI_LMz@_;J4QuCbG|{G|DA@tL9k61*A#Yg|;5} zV%Z8;RnJM(D_@tc95Zm}w6P^K5_H&V4NoRa-F4>FOQ{$MRVUk>v=W$YhnNI;%Pca} zz)fux(yAzfftrGhLn+dj2F()13%qpe)oPJ*VQq6uBWj;_*%oc5nlqDkS5bs!l7HeG zOuv7h;dwp7&$||hGc4iIWGrck!iU8T_Wepj<@yV5tdAE0g}iStsTEd zVJ{8|Y7fSg(5?aJbqVPA!rxw&qu3OC__|7osmo? zi+T=_g1jPMt;ux?>EV`0So)FS)akCYvl|sVoFvTIMr7b^5(S<7O!pLbHzCx4nU7UX~SfpytBA-4x@Sbjcr9XR4I*= z83NcGR|!BFFzhyjdDQzdE?iWXe#E%#Hs8HREWtsp?^4~X8U?3X~|f#?U3Q(2;wnFgnFYo)< z^^dbC3{xo)*6TgtF8jV;nK0>g!-sa~_>X1rvrS0SD=cqJbT1^KvCH#`_Td&Dd6b#` zO0!C0#~uE!4ns@~t7KK$JV5{@6_7nBr9^!dY8psI7R@=8!`JY)r_5N;>NPi*j4_}} zSEkHGKt&!6rz*SlXOMWW%Z;G!U-1mV^s5D(69JJ0k*$O^unN7l*@X-vG?Aj$!ey~Q zX_lI8umJ?(B0CREV?`I;y}?rITZ>T_`mQSwwo!;GGU`RXc({lf@|SrpnR>D0*Is+r z)I9$HFSEL|wUuh*`A-r9&YO+4(kl4C6PCa}+jPQRNFg9M9v<);Pq#lDSc)q~qS%sI zm8t0*R`fr;T~pC~+PgNy>|Lds0q{4XBj)XOtS7ytR@v7%`EsE=(KrqPilT`q^paGg zsIrA2uXj;hK5<-qXkxRxWx@BjZg6l5!8(V*e75qgG%qR5`+0Xnbst+aS?G99Kdcwn z(&~PVIPW+*W30lmh7L`Hx<$w^JMel$cOjp~4DU>gmxbN|O{hBKGhw>$ue`KY-Twf% z&nVsM0>!&$;utqF8ZW#;akX)mdk-Y$Y2^O^-Ay){bBb}}fF=p85bRm0h~vuRF+9B3 zV36HeW(Ly)Y0Hk_;*RV0K_8D-IPQbH$5pk})zgZj;40&T$~Rm^{V>pJ=8InUEtl3} zu%-?%g;Y6S{&SoYVC&TN@?J*TgIEs|B&@1yq>MpjH&iD)#3TT{S!i(`H7Cq&XH|kj z&FLZ@j}paOYAZ0PkX&`*-${82#>BOKe<1Z@;oL4sgK8d8A5QUV$0>V6?9!zv)tIg+ zHJoY;hx}~PJ2ZDo8{1pfTnQ34Cz3leWqd@Frm}+7Cd=s_e6BSeAVJrL+~|(3bwCk1`KPpz6gtwrn2HA+pqd;quqTvU((_xa<}hA#QZ1-ZQnC6cv9W z2pGeU9Y^flc>w!#tl0>tFJ_`8a)-cEu~+6SL9{LdP)Zv`#w~)j^%?Nh_j4lp@V^z~ znKnUiv1EDU!O1L0MM+VZ?{F5}bhqE!jlI3S_Go&i5*&+4-VT`=@a^OKu_Z;dfli~v zFQXJ@@ z8sfQtgGjo=jN_DWL9KKvpXBi9(CmB)RI^r$8I<`!XmOb`;iwwz>6L< zGI$A5#|VtqyUUmTxL-x1#SN%tSg!J8-737ck59+`>~-Ydw;s+NIWGW}1@(yUvLQVk zP~@^ipJ#k$$rJbj=}fn`rmEILo?lmvHSlQBL`7|MZn;a2N#Bb6x5_iB@;InXmo~Rg zWkg@H`|P`y+o6HpHYYFdLht)A%9EgNxQ->c@c8B5hs(77>#{8~q|_!FoTB3C)^Q54 zRQSIdZH*J~8<0e+x*!y{Vp&@MxdhSGpl8&rgqE!-1CS$&-b8fVytDy{6`eT1P zFYjv?vcT{fwyxV(pkuUEuC}`%w)9vr*^rKWgP+)ZCf8{WuDu0F;$&DA-1D%(?5?AS zv+P31N>n9qzDPICAeY4#q8oI9vOV3+0SOTDlBZ&=-wxbS<}mFsCey9nLzKSo0n&zp zlcGH-ckm_eed)X>LodIDIuueoFFQrcH@A5xEhV)H1ASvTFK`_?>fCtQVC@ zqic618S)h#yzA{ck1fi>FVfo=3BnmIf#qqX);ifQE#x|oyx8;CwQ3|Y_AtH=Kxf zF=93i+pp~AEcfE@@aypvWR!umyR50O2s=bpnY?0DP6*KAX zMtkPtL+p}y7l?QbLYF#@=GAQ`%uN<|yE;+l6WVV!q;M;my5rO~+i7sZ<#ozzg?DyM ztHgq~@v|hiA@b*+5yw+F?LRuc)hu5P#;)$A<9fbHkYTjV}n{~f7Hp6-nRsr zYJ>WhDve}Fl3NK8E9*R_z9b#=4XmzJ;L_=GA;U?H$9Nvy#1OpOH!Qa+bekb@h!-|l zaKm}=t1i&u#A55DJY)=xR}mLsx?}tzU6^yQzSnYXDu;j;7exwgL5rJui({9tb8oCE zGaQo6D^>WNdX#W)CC4LT>`VyF#4XukQ7g?pCCyYo_KjYx?8e+pfg)1~tqfXtiC6>f z#zN$fxO3kb@G#}evmc(O&!)FWY}rXtg*9cXbVtK8E~|OCb1pd>?Tmw`OUXYgow#sR7_)~HMLSDU0?N1_Z63n@WzxIc8R;QI$ ztIdr9p)$sqW-BD#?RklAB2NTB0rT%)1*ALQyHY+YBjl6_gm1!zLtN~~1074@)(l`i}%->U&VDaU}E zBwu-DG9mf7OX|T_MV!ubOHyq$7gZ^+y4pP~C~Zf698 zBy!avF)tF+aQ^^IFnW!sou%pK9g|_by#z`3!be6ER^*Yr-N@IXXwN?{a3b1~$%A;KZoSuT8cv+UN^RsQ@84dt8JlV~`l- z&7KO(4lJM-q{;^cvEjf5)VPquuF{3cjC%Y-C&Yw$dtYxPzn zEH@^?Eu%*)#yl941Jf{uB5I8BMA&-cWovb~5vonCQD#MuLBR7y*}wjfUBrZcm~aId zqh>^dHdo!;O(bJ-p>p=~VmCa;Gplx$-En%3C#V)FZQO z*$Cb}ULIIZqH=7D$|cXE>pOPM0;@;NSgAPhfI5Ma?g?E%L(Ov4^6Iyga9p8wHC4Bp z`bI<&;Y^0_Rlb}m9l+l?ag#l59Z%6prm2+(7jh(H=~2Bf5-KMZ5kW;CZMgO7>66;1 zvkl9ThC^YNtvpb9ap_%|fByir!CbTxVqDsVaj|+$nNsMNY5FIEOrEs#RM^a{_accI z{{T%RC(pCjR@%yZw;NPfiKs^oAgZdUvj_lwJ!x%I*^5L2ESqqIM~`@j{{XHSjYQq5 z{Q)kUK}*3Clz$d8kGW3l-p=H;kJAFiq=H65462~GWV>=Lm*=ql>(wGnMItWkvHC^3 zKI~hgiO3Og!@A{B&3N`(wc+hkHjAKiWb0QBFa?Nr@0c~9vFJxHA2 zixMbjb79P1#f~X92J#`c=dkcnP+ohA@3L%*?z{c^?Bws1M2SVO=3kCDR>`Cr2JRki z82q}-ZQ|e=hCdo)k%N&_y~YWHK)>Ef}d} znw5XI?%|X=vByo&IeJ=GeAw-Fp{=ELF1&JERjhiZU(@n=92MtVksH|GjT_&{{DBcB zw@xUo{FjKYM^ltrHDW=18)?;~wE2IV37vIK*A=o`} z^%5$u3icdFn5nwEXyM;#rcUabE#6Zaon9Dxw-z3l9uz@qtrnG67u#|;{S0A24^rFy zrHXBGfJRYG;VF-ip}u~A)DhZFPy;T1hB_AUD)Ov<494kMnM0#=wk!QR736WNT~5qp zsx^6<+Y^h(iY@hC$G5K#gyXd z(jqpEq$pj>ib7VFvcRuEHR?$&k zNbM9@5gn3W`D*mfs2ZyM`1Mu@irjH}-B}`A=+71{zkRT&#oY-HyS53dl=B@!>B%j- z8CCd^XG~<++FMdMl54c{Fqc6MeNhO@d8mxTS%VxLM3&m*2OR-P2?ZJDw<7BCv#}YP z#YwQq$%wJQ5f;)wB`n9ckH;C#(S*t{(n-Nq<4kSmozt2&;s?;*^5=433)y6s;^|IG zbAe)$dZARR(kh~YeI_ZGnlJZ!$$52E_L&9dHlB(m%8ItlzFwc@!Jf@d`YfeshM6k5Alz&BK3#ddH=ktoTP z6Jo8h<~%*>Xu&??F}G?V9CH)txpgWp=T;WZsTFf;h8vOG7!-C%BR!c28^g{v{1^PN zh4*`yMA6)%OUb0KXo2XG-1Bz=E^|eueyAPr1Ea}f?%>0&xgRjt~a%Dw?IrBxL;dt{Qm$JEYK}m zzpalowGGTu%o~5pczunMAMG?${r>=Nhux_3t=>JD{QgFQDB6vyo+8|SZF$OA&l4dn zw_~})wpUtnWH2;E--4yH0x;oQ zsRy(^zHhG>#Sdb@JfLh{{T+gt;uhS6LJvH{w3Bw?H!5nQI{Zyo3O-)v+UiG zUG{0^TzO;KgoTMqjO%Xw8=6k+(0G=Ml{ryMPuGG@p7!sNY7Qli*5y}EQA*3$$Kl1z zC0s9u6}*0;9z_Nla}Bqj8&@WzScGmVG)%lmCM&s*m$qs7H9Dn3X{n;o!P-eDO#^to zhWOd4k!Q=9T$h)AoblyI)YqPM^BHLs(t9yAHMDf{XU%eQ-G=VZ8)FK>B2s7D%)~4t z)1=9nHCQD3`sYdxIeyfN_ah7RcndY@;GFtA5*%;D+a^sfKB>EJvb5S)wtbu0Qhb}6 zDk?WUw)7){(yFq0w3!jCnkE+ZSr`;BuhA_84lov5joruwou zon|=(3@Lb27csi5ZgJJ)uHvxXi32D*8X2HYM6|Diad_-xBS)oIKO6u!r^`o^8)%}_ z+mwVkn-0FyEghhMWO@ve>)h0zFP9IXki{}pZ5wEjObks#Oig=o_zy0tl@}6PUq_Tv z>PBOT-&@(!;m~pc$=jlvQEPAoia}cW3}G>5MT^18AY+PY{rbTl~y3~Q`XU7$y4=yo_(SD8hbLv2oTWE6+%Cgbn2+})okQN_t3 z3Wi*I%V9#Jf9q4I(cU^OJ8H&5X4$i0xnORdOFKo|k3W=d?82&mNLkIl8OGy`R?hVs zO-YmQM7xO=db)=hBR+x+9ab%zNz62g=K96wPEH|Sc^h}Q%EdA8OUTq2Yy`-^2}Y2zeR%EA>-Dyeywry6+04dDP?X!S2)mxd}j?W_iFPFtadM~Mg_RzzDxMs!%FEbJzrK3=_zzE z9$3c;x7IvEEesucYmXs&BCq1z)U`jWlYE>?rd-{{VE3J$hSV>d|M@8-mly^R%@A);jFzFR42&#qG|+uCmtB>3xqA78s-E|HeYl^PjBa~*1uCDr$cR$ zQ3DP(`2PT&EPFODIWA$kHYW9Td4zg!khvCoug_H@-Bh<-(~AE9axb^K@78qtPpS*e z>GYR=G$4FI97Ghi!w}v%E~yE7@kK%fP1JW^-}w0c{V!>k0pfDy5pj9CbMoV%cudq4 zJG%$4aU&JUO$s!IO5V%v=eYtW?24a#)9uq(z*~GTEFUG zPDxdh<+BSWavOqBqc*M}w>Vrv+4q@niiF<8jjRjvVxIw&PPGu-Lxawah+(>}*Vx z2gxjjJwUGpH{_;`;JWoFH_|`+l}#XB%DwCT2Nnk1N81)#72cA4c8{y(z(2i?;*T%S zoTEL2uu#jFV2QZYBgcp_}5qsYEpaP?Y4R<=(ltA%lw8@asL zExK%R9n*q@M7LU8e{LTu9YxcfMD0hnjXct8TIZtTbQBoAqrtEV5iRPn=8>7UOcYlC z05ZaKxpQn4w_Fiv=OlRn(jZ=|+iz8t$w4Tt6OmptA{5j_J~{sYHZ#~z8fLp*{WSoa zdSaW9-ssD)6W}SA%s9aSr3O>nN_s;%8U|w2W!lQ|sNXgY@C6kt-Z#o*T@8 zi^E=xI!^4VBxN-r6-3b1*-M+hrIBzqGSW-dJv=@fw|C)A(?oV%PiAB}V8wAp@fFO8 za~t#dx_mK`d1NTLUI=h*BYK8MGZCKDfCpu^%=$0!Pr~!35S|ko2b)#jXITzkzd%y! z@@S8@RYBt&)CUtTHWz7p!n%_U_OoZ>Z6gvX0#>WdXw_}R9HXC3e5H!Mg3@19(`EQP znagDTgv)%Mp6;x{zp5o`P$1R1;|>aqeS*B}Y)FpcAu`~e+`xdA$F|jltyQV@7cG*m z0A%1>VTHWb^cRYGv5Zid9gx}ikpdf$or>|^)2XSPlu>x~2T~tWW4Wv%#+2n)?kPm; z<&o-)sLb4Cww9vp^*oFAT9%Y`%r>aC)gDOhMQG7?{FlT45ce^qn7K-9BeH{O73MrX z@5cQeOKCDdwaJwVq>Y%eA}l;YUsmy&AhsF`YOM`cqU zutl3joitcAZo_HjoRZq|YmzAm4^?z0m}SS9$cu>Fz8pI~HsGzKsLi5MrA~{wWwtcC zev;#mi30hMu~nHrB+^QI{D)4e?w!Tl%52=7MR_5YD(LCsk+Kal5FGLZm3;+K_LqT( z`y%ui#BQLPoJLH0)BLUGA}<^#*zajlo2^Bn)TcJ{V$iB0Ar|%0)x`NlQ95vY(cMRp zZV;Teg3U2xta_H=IVDJ#c}YdJP%sq_C@PXCy8i&1sO9Y3xX}t=7V(x*Gex@OyZdpc zQ2nS-Ya2r&W?8wJZK~vIw>0S@aX>E-^5F9|phYAlY@ z7YuIWl6*XF!7zx%WOmacP6_EBH|_DqtbWgFVq%O{GXh+A5+HmCnlk65`4 z%PmXOS|+iq%97HZO&Gq7^n|6IBo}D|9(2h8=CO&3S~6fm_RlA0E?yybDX% z*3lqc<#MrXg2M*Jr8_Sd$)vSbQz9d^4!W*l*)$Vw3~MlDMTgjUov@u@GwGM>FRe zOHeu-F7t6LOKN^hnfo*Jy6RRWndUE#<5MkhynUu^8oa8tdPqHMh~zd7AY~C-lNsoi zaaF@6LL7~O(*~Uu-rFL^sqCd%SyP#7YH2Mpu9E?A0ot15J9Wmbu9Hi+Tg!r~kDI8? zHefO$+hEg-wj!pE<<5(6->ZQpd^KQGd6edwZ!=BktE;JPt}iL_NSCeII?GS0K%y8G zQYs}{#`O6eX*MTepnjT_ygI{XF=UejO`@Ho2xels z*NbEXnn`l%94dXvl`vqo89YP^B#Io_a@wRhTmz+kyk7KBWn&cZX672FWo)`FFCnd$ z1=V@nuB>vhq?R~^voCnsdd3~YD2n@m;7IZsCS2fd3TvAOG58xAx(&u)(2|e|uP+?6iD@pIO9FjR!ExICWV3$$ zY^cxWb+vhRF^W|_5iK4FHX$NfQ#{v^tD09}kdx6EY-Pe0UXs|U2E&>AK&MnTGIr1H z4H>lBNzNngn<8Kin{o_q+!24&K`Su6p-xt64=E1xssKjFirJbH^!b%XnFr!n!t0E; z1g~Mp(lq+zn%PY@)q_yx5w$6(>O=z}d2;xlzUZm?de|6s>F$YW)`Ne5{h#TLVd(Cy z$lJqp*C}V+{_IlQ$#ja|!X;KYjc2eW$sPjan=nfFiXu)rAdVrb331p77u|OD>N?Fd zK8?fOgm%*VuFm4{OpE!uG0V)(6fb!pR*5xf?egG*Z8sUtYh1Lk#&UP7v6}jtiMI80 z&>}>oQZoY#FzhSOQKZv)b-YZ=olYQs9iYqE_hjyCh^Z&nsNndMPkd8*v{8;@5Tw^iPr zM5Z2A&7>||0e>u4s$C{Dxe@A(d%{ivT&PHZCpn5_S>udFvwbV<40Shl$k{QzW}h!?Hhq$I74tAId!=F_~iY4%&Rus zD7!pL*f!CayhKKxA@MIq!=Ev!jtCQN$7K-+9J_e$RqYaKP|KTEV!b%*Cp#tABeu}) zn_ElI_IiFeU*+jzhmB=yScMA`EGlF)3__BgrTGxg)kN^aHxJ!7ns2&ng~WQ;y^?JT zHMRp1Mnev)D&JOOX~i*SqD(4u_@n}&B(|1(NQAg?EG1fn8h%rZV$zXGPaJdlTG*RK zC1se-5y5eN{vxaw6#M(P*Q{l$kG9x}YKm5u{n*u`y0M>m6G}a-2l|iqU^S86K&?fs zh^mGFttl!Z5fUfK0XF-uO6nC0UEJ>O7DnAVc=+PeO#?I+-*)5GX$Y;WfX$|2);&5h z*c!CN$2@5xZJQSfMMbwy>?*(O(qfl(NR95*blu(m0FuLvz&Ix25((vkemLExWnmtp z7^$C;+|Joz)loxw!g{94phVPhUke`o?iz?D`>Ap1o?x$0tR9v-BodUvOeLci2|$m)tj##59yMPG`vW3nV@ z$uZr(=9m}2bXar#K8wu(IOKdYG2lvx(9TiEAJ#FohlwK;LQ?~Pl}i;3hFav2Dh=}x+k3e(m` zWLpkv(KQNvWsij!rkc*sB?Y-O>K~6BJH69)Ssw_~Nsz+Txmjh@G_Hvn8Mf4D5u0nm z5#h#XVTTQ{;vm~%A}BiwbzQ0%H0YsbO$zbxRr6hoF3+%55x!QAe7#4HIay9z`}R)F zpF6~FNOobVI;!iA5h;>@3i3~y7rxzBB+5A?LV~U@aERxZsIhB}0pvFnT2}~{xO2%q zIM#2&Gd9zn*)-!d?}J~oipyHG=Q+4dDZ^n+LlxL5zB|WR z=gI)R*>ECG{{Xv&6TE#x(oXFiuFN}b%<_EiE6kg|m7LL7;b2(~KS|3SrNrY}+hY+H zJW6PFE=pp&WeX3h1Ou?FbLno%KJqgnFgE3`5oSib8(#4qUat&i@~D*o`O-PHiVO8LU6$)-k2LR`~yKZ-f}M`b5YCYWuuv#?6*Zn&-Zd2PmR zwHrG8`A`CM?o&Xxf)nE- zZM}0?(}pV({5UdvqwMQ`BH|_T>P2#6f$m7&hDAtiUSEzd(%On!V?&`a5UKLpQeY5s z5+h}8)?GJt=hck@hLPm1C;ExIUzR~HrhBaJnRY{D4jmQe4+@**(?AdBgCtT)Jl1Pu0 z)Y8YK#;dE^ksFH@50mkxWbuelC(2ObDf^>i%(*J`(k&^;hDypKZjTOKTt7N|xX0>M zHg-z3=u#--Dv3GW9$xyH*_T}lF&lW#J)%3#vI)K=J$S!B~!HjT+`i1H;=st`F^ zqCP`u$xVu$!?waeKdY;(8hf=!Wd+95bY)}SyL^Ss+iK#!9+<|**5*|hn4mwrNc{j1JC(Qed%f*|my z^+?+~WA*Kl+6ojlz@=2;JPo0yV6NG4XZ4o>@~$Wz(`bLDHfo_B#c-Sg8%Kc`cwXLY@*7k%GtUtI&4Ct(!<_Z1hJH;kqDZ{ z@+7u~#{jd}VJ2Fz_N3IWdxFF(35ad)0Z9aNB~3s|x(KY`XkK0zvqG`uCn3JIXBUo{ z{+r^Ld7PM*@S;b7WkCBhHtp6-80jIWUu_w7y-}kTI#Z745p_$UrqvsrA9}7fRGG}h z3Bco`)WLLZY==@M#Ey;NiKN9XyB*V-2b^+LhFjdtU_jKAE)}}o3y}C`iar+IfYz~N zGo8qB3;Nrr@~N80G3$IT&Db#U)vR_+1e&*9k2-CcoMr~f+AEGS%WsLCfDsaCj5?=# zN!eL7sdQAQRGi&WUPX-IvJD}lf(K|?e@ZA{^7CfszIHZ{rNf3@~btXv>?4TVa$9tWUW!aSN`!!b;Jy59)rG*Oe}#DtOCUU;hDIb}HjxmI zHj*txiBQ{d8_0yWE0C3|y%g}p+Y+!#{@*eyyq6-ECoeW>u!~3*T3sV6To(*J*?UVMlYv!x_}TTw;{SIRP%yPRSp59hZvIrCl}Te zfZK}bx5dF|iFZQxOL#z_Tr%d>H+#k5dXWiST)A@<%Z9t8ZLvMzh`7AhFAs;u8XHNg zk7(m9UPsY=7QLvHs)c_$WyN0eYsKV9iAa60j_BLUIKhat|>C8 zk>)nkXM$0~Gh5BER9lgB7?%_r*M| z!-gyNX(X}A_Z@U$#gO6*hGRbA5;ock&TY?%53up}>F&?TiAZK&QES_XZd>Sb4kP#Qf2>J2Z2~%!gAKTq}M^R%b4>mdP94^A@^rl#{(&bVl52<&8dBex zknC2yo7m@Pue{HBA;c8c3zg=H)9L73^?Nwn8>o*e8q0E z%lDVfgqyRFV=`li^Q5;Gyn*s2D~@VYkyTufPI4tuBvRkxUu7jF+_wF?2<8xu^tA}} zDBzOc7Ht69*>-mq&FRP4_Y-4I$t`q+X~h*q*~LW_*+fv(e@{ZcSO(c4T!=|HeYoJ@ z6OOhjS_dsRe>csKjRMi#W$(jXaqTI=q#{VRmJ%|I%Gn-zg9OJ_&F0+CPj5W02s!Cv z3ZXvW{{UzSFG%7;ezxnzt;L4hO*RUMT*(yF zcV!wak@ANebfPAn1LD1;zHCscn?<$td9DOK^*$*shFDSoMD>zdMqVmQ+t?|LS^RhO zith)-sr7ree6JC}baGvEO*_>s9>k!*#iisImbWk3K*}lL*F^~SOt=j)-H3{|{{R}+ zT~T;YxTktlnK?BD%cV!m%I?ArQn%tgKQ=WTgp_ehr$#zxh~#l%I@Ht^Nv%NFFP(kg1LHsH9;t8$p?9Q>u-_i@zKe)DykQKa6)%QyQ}Zs^ zE27$k!w=j{D2CBSc&58BSX+vug^)nv14NIKuQyd(MdVAlBKv!%R)(wc8yuJx z?o_)xv(No;Kwo7vMjX84NRZJcOL5vFohfc4BU4}$><~nPu7H^s1J9DRxsscRpxGh{ zb5i!}>TLx{w#A@%TLQZ@0k3!CM`AohQ=z~MafG?4B>m%2o2r%3Q#tWD!tg=Iyf zaU(-&4OFK%l0^;;GV-c%eZWuExi86A@5`!%Rkx}JCPGA7wHFe`fkSP&Ix7q|jmC4Z zMFdek&g>rRBm~#v4={LKaTH7qb|Bn+iNXB~`*mM!wG!NhmCSAaql+!5hOQv?@y{AJ zgCwkGmJ5$adJxEnz(%-`+9Dxjx^=1t83NDtApb@ zU?kxRp5#w$ujHY z&=nL(!OdIlPHj5BW+It2`AtY*#SeJdTW*_e;yCo5+77xdrRdIwQ{{O)yqek$5vlr3 zsTJCnIf;0lF_~$;S&jxDlE;l@AVa|y7^|>#rkO*MPLJgfI;cgM`$ewNX^J%YDpCrl z*lu^N@0#9|ngkJf5OrtSX=RTsZLK_G)b}Rf=Q&B%iTywp<;t1-$!}_}E*ZQp9&yY+ zJ+8%RZ!R+st*FSf?;yFz<3q=6U3Lt1(`N;roRn zY04B5l~Jnzy2+EGEXLdguWo~#NW*)ZU5ZxXg-dI8HA7}8{*fz)3{NIdPVISf4ce{_ zTu|U%TI0ALDT~d$qoB(0tgkh$V-&iIbxho0xgU<^mk~3qfcfCFB+8aAR=8+N`!u8= ziVm2jVeMaP&IZKn%y>{rsXCs9>&%FXNQYqk3x+n`#R}yDwF=y>90U4k&(Z9}dFIAg zp`kQlS&$cJVixF&yFQ*=R%X$jrPE{CW*MmYpd9u#pNYdGYX-t zDq4xR=O*(VxS~5;jIxHdihwDQ0WE zWDru<2`v&7bC)iztTu;Jksh4eRVb$Q#)u#&s-#`FU2c%VxaOc}WzL+;VxhesuheGo zMyZ>TXNp)!Vodg3U|z@|TpPgERl~vR4MdnW(0?dP^sh`~Oma`XO&1Vny4WB#=q|f5 zxxrlYkq&nbEol3QDkR}NC9cHmADdPpF=a>y0&kgb>(2R;q6$w_)&GMvq0-Daq z;G;($v{unU8-ng+x0>(v;3Qfxta%LhnX2jAHdw6T3Z`?Jxs<5b%~K4vo=LXWCCLef zqY4)Q`!?Dj^-$XVqNi-#HlJ6V@=@A(@Qm8_d(4-YAdUgl;rDznE8Do>P6LU&aS)X< zMbG8%yZ-<<63x2Iarv1ZDH7)2AjX@L?RAVSPW#V{UNqM31h^Ak;E%J(e=OAnQ}py~ z+FMiq07g4L3f#(xv}9LUWI2)L(tfN+H1K>Ga`fKib*0RnoL{tWSnIGjc?9^{M;;{F zv36~iax;b&rdPq09UxcKW3%K=QH23zyUJO`jnl^rEh3nnGOvQwT`E39LUIvPuQOfRdqY?W$s_OjYrH=g`@qJs)b9D6)sk`oIy)q)c*0-I6WF>F+wMEC2_`ymob6rqb)6@su`F=SfE zh}*lH)9|~e9)#F}I!zWk73Y=7d48#(Lp8gYddP7( z78|I;gpGTgQdO}RS=;3!>G?ClpSstx7Rzw%5at*Y*4{#OBmpRv08~NAg4SV?VC5Rw1DyTzy8~QEi>_H8PTd3Arh5p9T9b zw*LUP?bU8oTvp^l-XSip_Kq6^ZGu?fuKT;?z{cxPnugoFuO_nQ4+2}OF$(KksuXL5?t0MC)tHT9T z(mdIcB)CJliiiQ;nGZ1h%2*p{mw8`^r+S+8j%cQbUY*WIlT3PgMV78HjN*8_Cr9ep zHd$hbs|JQEE;Y=NJdZd)%P4Lbk5q{8#(Rz{na7DAi>6lQVh5+l3l(NIuRwDp+}iRux>N><+1>ICvq>5Nlg zcZr7a!yjK15zop!o@^#sx%dVC8@BMJRaRPR#+=$H8;#vz`l=J`qe>uD=KM^CzFc>c z_aNdsugBZ2o|4m}bcn4JUQ`Pg@h4U!r|kt`zL~hdBwl7n65mcm_)8_m33n;~0EeSq z@wYB+yGZU=5!cvt?>g{l{-jqXpXvazoA}yd`UCPSEuRtMD5envl($|zBz=l&i$iKbog-1Cd^_dl-mvnk2u?YPG$B)=eqv@r$;jQiv1g$E$`E6{{Y>Nn}*qw zVDDp#!#;2L!?oRC;lGOLHk#?~tz%gY4s(lS@3BjiH36VWc!m7B@UegrPz_PY5``rI zIG>>6@h{drPYR|oibFRm4hmh8_L6d{r_14wlc%0|#7Bf+~orj{g7-TMtO2 zKe{qfE(4I~`SjsbhusGWQNQug1?<}@qRX`3RcB=AuEnIzvE1@IPgt!@d}lJM z0jA0brxQ!#ZR2(43{6>W#AJnD4qNq}?bR)b%~5L!6y7>p<#-OO+U6oe>QG)HIL5uF zQ5v1I(QB>=ICOW&RFj54Ys|hV1;-wbu)L=dnNO5U(<=IWhf*W3-b%!XiDedArZEYe zZl=aQKOoxmc>JoU@|fBKF2s4?&LcBEU3rq1H*IIX6yefdja$xS#$R8wilO18&!LoCTMYg_3J-n%>_$70gX#kT|yn>S_sN$1!|=;1h&{2U`v z;FO(|+8F-NVpOV|IZuA9FzQlcAd5@hNq9@d4O1U?KfMh?z4a2TP7dd3d@)T0UG) zBCN|2WGfN|VM7tg$5Tk=R~O7;tHAucFoR(j6*Zwtuburl9?HrDwZq`R2dy8-a&I`r zt;Q!bU`bo%Re5}dUj%QFeflmOYJ;ZWN05%aX;?WHS9J%advRoQa@eeZZAh}zBho+j zU?i9cUC7TZAJXbJThn)2XD^V$mAGkXr{#TS~{>Z3B=X!<}B&Ff*x zra9+#+lZWw1f+laeM!~zeOLqMnq!XQ8iA3}WBT)kUsBgZjb#S%1g93dR7ng2sU2cN zClxFO(&CK*8Y&MpG3!B-5}$j~qLhc*Y_vEkS!MqKXz;@b2rotvb1+uPer_JGRyfJ@ zvKov}7mFt^y`7Z37Nb&X>YuiYl|zcdO`RoOGqHty;PZg!nyNmC;0d+vh0t-R&%aX` zupW2bNe4ilN2`>wyS;cOoG?IX!qVD0>1h-$ZC}?K#oK4$nV)6VwV7VLWw&@X7ca#! zmli;FK67Uk<3o5}s&M^2B+>E|=HNRcXMRmJ@h-1hNwM_piJ`N!n|D@r3@3>IV=z0} z4>-MzDRKs5%w$@8xUY^e^P$jYJQO69i(=@b7_oeo;uu3 zLb-<;%Iqu_efCoP28q^U%9~*+4I;o70p#W!193iIZoL=mqN}pIOR=>2w#zrWhn0p7 zsvGRQJPD_dE@brNE8UBDY{a!ebKTm73AM;f5JvBpte57+AGrSWt1t>_X6{vr(!ogn zq$b6?^u2$Mtoht7PF=pGINZo-Gur1wJ}9@gX|#dC^n%FJ?Td zcZ>Lvv6xG{r^RkwylzX+1NM%Zw$i8)hRi1a03rSrJ-RigBE>@9xvwt4{_H+Ejf&-P z+#|}Isf<9(wQ5DAnG+<;Gbf2$B_}x#BqjYT%i<~T(9$a+w>QK8e988P>U5L z3{Z2oy?t4Ft-{LnT&U1Wq3%lHx6D4T^uylfi)dznN2kiNd)QWX1#??p3fDN33>Mbb zT!x#E3mv3z#gdjpV4^6F7zpmC?bgEH#8I|*S)MK{jx(5WhRg_}4_bzatxNOEjE$=NOK5UyHe)qC!db7Hyz|ZvlbMn#fPB5x zH~0SlyQRo)I;LlqL-B7*oZ5GIm5Eu}s^))(SM18@{2p-^L_369p{PDtylBGC_ zr?M(+g|vxBlh>be4}Lrg>$hq*`dN_M*ELaPg5?z!GhQB?rGN8nKi&6?@%sOuRu!2-qAUsG8D7Thisl*HvbeF2`k{m1WwGQJE zne^)xw^fNyUSyoy7V|E}PLb;Quv2vx8YcbYEQLFI zeK)i+%88;o{NFFzo&l}jVj8CJh7=V7CfOLiRy#Nvv&AF*w^b@XSDE#ydqOPAM= zvR-)GRvvQT%zp2y0{84+c@LND?mgKv~Kk0!L6{Ox6 zsTlSZ-MEey=L5{jiu=q+ZBW6%aDn!Wc2rO_UD0=6ZiW3WsiN)TXU+3tp;b}Mcp-BA zU-sj%CF#~rBlDy>`-`xl$x<^>K~0rQb=Z*;s2`S&ke%8`hMzV$Q&c+>P`00(v0$d~ z`lh4D{MS5!q=JX+tFnB)+k5Q3-70_S!g^w(D(4o%F;>5?TRtR7=ZQB4a-xR8??9gomhQv{UGBM!e&c zrpyJ@&fp>v5il<@7cK#rOZ_9Wb;@)4z3@-Fw}(&O$Dx_}eO01ao;8rQs`&ku0g^iH z29sj1Q%r|{rW&h|qq4Cp9BS?Ykz!af$2n0gYg|WRSWB2I9gsH=1J6!W7zfA0S#)rVf z)QA7X89nO6O0<^-O0;KiOYAF1W%?5#4613ZS0SU5eWOm zyy8pPC(G&6i-e6(g2n-cVYxFHE@LX1;$=n5+)vXpmP4@zVj*PlhPCo$du)v2a>s#^ z`ayC?$mP35pH=qKHs4So(5et&Qg-`g<%wAt>+fa4$i_*AK;TJg;VZ7yXXGRIdO(>0>Y#}judz;eog%BvFU)C>ds4OUxtGCCXOzU<0SIZZy9nuF3IM+_1Eyi)#iwZt|yAsom7e ztA4K?TXo2p5t$#SC2G~Pl3LcDT8Q$iJ7zFu5xG55`$ z@d*o#r0x8sB=MK?oI@SRsj)w9%8#LWL^bjv}t9?IYZj&_}A{ z)V3wdZhMm!I>%BFLb*gp%RbFqM<0w-lyYSNg?Mnl2KKR8krE9hc2f-z=hj4vI;fM` zkkal%Oau@_cVZ&gSMUAZ7W;uu7e7eU5ynd^Id8Y9yE%V)VDSe9y)6Lm7f}&*Vz`*K zq}wKjEX-?#(+{(kw?a*G6#KoT`@cRIMn*pffso-Cn?ouG{Jy z;wMfz*m{}K;kd1UHrv!;`pg8=YW6v^aO9MYxU9!)rxK)S?gA*>&=D==p9L|yAuf@| zuk80=DjQJSmCzw#0IGq$;)tpWc7O`%BVQim!V{~1_>naY?Nui6-8-T@4jsJOm_>5* zq&amK0QGWCahPg_&8NyNkwjEg@bLKZ>f!CfWTI{M!c=x_3;a;1$YjHv4Xs%xn)K6+ zg{_~Wz+jlC$1;7jyL;zU>G@apSE=uDPa>}+L zB#9W^f{8{Zpy_!^G$!d|cLQ1Zg5sYc==^f^J zL`+88v-z=eqR}HeL76({*;3PKYk+$78H#9-wyteE5AywOIWi_98tJWBXh&PSK2xN#n!>Z*=d@+pe zC3X!V*OseNZYnX_W@4HAN6n6HSnW5uO);XwvRzuh-P4*aLa$p)LF<`J%9m$YLM}5k zBSCP+Gj6tAn(`VcpqKEyETQdHJ89pP6zOIq6dE$P2zQLVosT!4J7tk2>89)_qirQ8 zXdRFg`AGBe#T2yUga^pzbrLU|3+7Fx4ATTh-?W)>+_;GQFRCP1>iTYyW2+6S`-9wt zQA>4Cm-lq(_JOwqRmE|8?!zY^kR(kWSGS~-zXF?Rj5N_CRz^FFmluRbi6ZT?k|x`d zFCM<+q~Qn;(U*5-4T|WZl8~tRe7F$gIW4|2{Z>zo%_tYxwWJJ!rf(G`k7H9HB{q(x z-zerFK;ZuXa5zF;Jf=)~pC$~Zkww-_NPSr@uew~g=Cc`U6p2xt$d$pjhlVVD(dJOK z{{SYW)NJcfpVEpL)s%8DY&O#szPdNz9Cl{T$#4mjjk^Zq8)?)2fZ%rglZ zhl}7^qReZdftAp(knArYHCbVD7=Ua@DWJ4#Bv2@T;&OD2b{bk!(dQRW4 z;*$>sk}>AXvriNfTxqmvFDxNp+?jcvZz>^nTjP&jABMK4;ItoyPKIN$Y@#!cX@)DE z>UO3JG6AA;>eDm5l^P`CLPZyeQYs*q>JS~iJvxS)$Z_PL@Fu_jOU-Vj`wHw^<4bKN z39#}L(hvha^g%(-`?2SLzmDr{yNA_VYxpvxwT;Df*i_KO$Qc$8h#D^%F5jUC_URmi zOWbL>7YLTJ{Pg(X>csIBZaWTG*z+3p5qM!i)9YE#?W0)BmQdhAa838zGDQ_nbwMOw z)BFDbE7#W87K7HW4vyaz+9=vSMdb3~o}VrEI2_x}J6EiFxD8x>OG+J1j-HIMM<{6TSgONjWC{Ee8w z>Hy#i(*?9%N9+uel5iwnxBGOqOUgt?ZN^>+m)^rRz1FQA#?Xf2PEzgtomXK00QkD- zCIj3iisoAPrgSkU=8@74MV!@BHqzM3vV$F%VW@Qo%5rhTu0e}+9Ti4PZL=$HGbBYL zHA7oiEUqpIpYr_0(zsm~nsMPhOOPt-45F-MUS@>2?tYNwj?)YQ1O{=yr zWrPfZt;nyM@EHt}lTPfL7ZfkCf9uj&G{RBdL3t!LE6dcD^8Cq;0;3>Rzj)M~w|{mG zRT-Upq-}hzv+uvjvqDr~?c^!#_ur(CDYtWyN9o5d!r-1aday#y%`M&BrQBVgcNYk^ z@QAsLhLBZv+?7y~e&1qE`G3Ff*CyivnGsuP-Twe~I~j^AZtX}pfANb=ZH-Kl+s_yY zc2QRy5aqwJ5)S_WeZP*l)D{>xjv(_})pwU4R$FRW>jS&^a8IO_j8<`yjxzj))0Y5G zAvk`@gUJ(Q9!vLLmPv~ySvG><2oYweSe+eU8F0DCm2yv;oAzTudn#%z^xW$HO^2no z#~{YIr{f`6MU;{`xErGUky&qo{{Yfo`?xpKB1HyONLeHT4!LR@vr$~4HprWO| zoO)ioV;j~!-TQmXoylicfAqlSL;2nzH#q~NaMlj&qTEfvx{3kvJ9SY|m# z2TEh|g}dHFOLu*tYF+;TODk^Xx2qhOWUhYJQ&2m~mmhHBrK>es?FE@e8WS+fOrZAk>msLT072 zly%=a+G!@EnQ=JAT;$hjg6hibwP933DMTz0BP|Wci_juv#iB0Jx1{=T{?X%lcc+*Ld8Cp;q-1Wr3|?l5IW}Krh(LN&kCIyIMV75 z#{qLE-AztqpZylsu`=z?n^rbv4HZz^dw9dhw-#2ATlM;}K!v9{erZKBBaf45l>I)1 zGEI8Fm0ep>&VekWN||2e^cV#xV1wli=<(e|{L|Qnl5SluN$ta_MS$$Xk1^&A;L)Ap z-kp9^HU2Djyt{U1rE>L8Dsa5vWHrwv$r)k&SO7V zSn5%|Nh>DG{7Dg#M+4``YTH}3Zc^Bb3~1+8txR+*Z=A)ExSlWs=QK|2bosE;84vh_ zZ7#WaQ_Y{N1#La;gHJUUJ*Gb8PHxt7R>ghgg-u0~%DAS)9hgnbEQ(jBNTDUxqqvdP zWFiY(B)i2uy0?2DgDcwR(lJk`Qrv??q@C4iZxw(!axmDca5C&v@hfo8WGSufC0Z;n za2tx*kGwi)Rst6&d`$U72U6n}e;Qp?!809p!gR+>oTjVCw0{V%(>N4#))DM}pJnGM zwr!o;E8?@7@yQc%N}7|8IH>N&*SV@}#fHN)nq*zfNF!*74p|8Dsawjw9DhN5pL;c# z5|vG5StemP>6zR%UIogwbQP)D@WwMPD=IbAIoS|2%OTCM2f+Mo%Vj-;-yuOG6#ZYa zm+#apK#*3*=pL?bo9_-L+UjLGkS{kDJ)|nVx>npcUAJjBaedZU=J+0t(Uq<&8e)`j8&+>bKSA$EP+luyUJ*}2B^_HWp7m{5`>IM$0!_n0ZEJxzLF!l*>Uv(ZYNniW}{cC)OLc2 zTY}ibqm)n4_3;9FF~)J5+m7=~X|$)xZzhpm;>Vb_maIETHdEDtYu(&#=B-6^01P=@ zO)GfYox($E^p+xj5iZ`BxC%WW(+U)-i$yYy-xkGks??P^iFu9bC0dyct z;Q?!=k|GYw85%G5DI%i%lkB_y0Q$NhfyDwca?u{|0rC3qbIvpovr*n4isnjI=@II{ ze;TjUyz=`B?dGkkrWZHLvFglU4ZUp*tbTRttN`3Ya$8FEU1O}e^qrX?17yBvU0(vT zQ+k-qASEl%1rYaUHz<5Si-?X~cxlFS1`R#=&QFZsxZxQhm}wHbk1v|u{{X#>($+{g zUOZUNhEl6d(BYWvZXu7%LlNO^O9&ZuXC+T_n>Zw^o9)P?33M$>a$?+N%HmA*Y9Yxq z{aCcPh9KOQG7%eiby}Kn_oMo^lF?|kr0Fz!xo}&OF`bcK!^FtgRz{pply{I76~tyy zxI{kNqu(xEdWxM;-O}X6O)tg2E4ytk&kT0drDmZXOHM0d<-%SZd48-a)=mtGq$H|9 zB&27*_bTo7RQ?yL^DnmR#HyD#er-141tEPK$Fc%$cv?a%RdYj>+Uv1VI!PGi|WMAFR0R~tm8K|Y%zPr zq%={CoF)XFZBbC-OKi|wR8(JW_h0h#D}gR9?YEPUFqVAZd&`0tmTfrPh6!45e~0~U z#=-XK_>}4fov_|Ns4`~dc-*EEsmEM*b8fOgD-&9f$qJ;9CJ0d%e{LnXmiw94eNz%*f=10!l@=d{^R| zewF?9>Q`-Xp(Pzdc4Az(g%!Y3TaXA-R-6hi@Wv*g`54^|J_@3UqN(;KkM1O&&)ZInFW6a;zWYD7 zvKQHU5n{6XIlXNW!tEP%ecUg6U18hoLPB2d&ztVxy$G3>0Ij&6A^4z&B0^oa+wIWq zQ+I+QI-1MDHGO~61aC_rL@p$kf6vW}Bo;-7liTh)iu`v)AKgF8^5|u!3IOId?#QiP zk;hxxtySk9{{V;jmI_o&IUxakhh#%C_Tp*opKrRVZ~T7ULio1Yk{Ig#z1b!u&?+jq zis$ww8Vw}Ot?+r0maXJyELil@MHlrlrS7Dj%eTL``*gA5QXABeTpm>ExVpdHgCk2e z8G6t9$Xb7@dU5IVNj3VG58>;ktX$>cGnfpB4#e7E-^MVCW*v} zWmj~}-#lidoJFfoA_%@4X8UJVpw;T7M5sz>#ETC1u57XbB0(IU;DUb-y^kC1^Nj}5 zS6fm?+q_*d)u6Hw`9}Qz0EZA7iJ7@kNk?rW?-jx_Jj)-#=~FPpUaocnI#qPVtF z(KmKr07-u?Tro~{S&b3t2=Zq02%?P*`D)Y_^x#Kds`-vLrcKyrhM`2#?2xV*)7>bb zWaC)r)zewrTUIS9FKccBU_!ZMYBEGLlH(99osk=5WkNch->@zmD!nG9QrUBIxefuv zep^ODOBu2RK_KrF4O#OF-GCy=A$6G!intNmG9+u`r4)zCT*^Ot3q}E_xQ1()<=OT` z-dWq`rs&NsQBNZYVl|cSmQAoKxzB}_Gwj8B)}sfwwwdZCxYL$xQ`tx#C^ZfAHnhs5 z-IyA@t&yy_*u<_hF4LSBccLzSu%kVak^zrEE?0_ran1J4hRU)n$9m!wQX&&F=q$Rt zx#Mmz{ThL*x{P@KqTj$#sCv|`GDuG)l8iu3aBU zn$oK+K0Ka1c0Z;S*wy{5&R1jzP0qG@TShU~(le19<_t6+Ce+$hLcJ zVf~YB$@Ftr{{W;W8a=){6kc_rxlyaFw%*>%uxv*uO^Z!Qj_brmh+6cPT*`x$x^a|U z)b}0ukyv*5s5Kb>0B(@9(zi&TrL)U5BTBL*i>@$na~EsfuzwGyv37O729e%uW`xMk z6C^)G@1O@A!5^1>y}Zkr4>yX?FrHV#lGqm~Ae?Y|QtT z1jgh|aC3e;jG@OK!b2l5v|bhEQC=D2IXg_(<&#IMm_`klXbzj|i@JYdU7O*3$zg0w z#(S>BXxX>QZlJ%ZSsYmsa9v-Rv*$2k>(%im12tn@<1$%ZTPqXels(isf;8gmQ*=a< zPM)&z^ACrHJy9EJDf>lF{U8uz*PLcZJkZCOt(`d5(B8Dz8&}5*MR{DaGb0?ZFzm~; z{L{aTmc^+#GukDhIGM|l4 zb?L{DW^D~aYAZ9Hs5mj-6dg?wkYqxp)`jdsEi1z@#otb9=<;6N^(xyfsfAx>GYzt` z8)r$#a@@@D%(CW2GbUAkA$~+ym(@-L87-19^b2oIyQm5yWA<^h$5p58RTF7NiA_t4 z>I9pG45T(FUoR;USzruOS?J9)4iXeas(p!AVO&Bkutu8|WJER!uHTt~GySXeRD zTv6p!`c)xvcQM?XPO}&-M9T5vuAPQWzO$U&W=7Iin~p3E=H5KZBIfA(5}qRf;ziYu zV11!dtMzII%hcvIK=zGAGi8{}oy<8H&c#Is2S#G4qfnTUV5&ezsSE^%Aqqt-_h?{< zOr~q}xgm9NwFP@caphm}M$$FJyMf3vCh1t9kE+8rF_TdOIx!O;%Nn+sSCrJlXj5im z{Z1FFWLM;j*f-0sXKXBrjM^KJstmObp-pwx9Apel8?egDe76rzPj)w*hO3oEmnssD zQYo&hPJ(I3d513q^y4M7IBehJ@5^uzXGQ-22V|<7BDmP6r>sH zMzy}rpuS&7Hbu2buT#Nt$;Mwo8P_a=4b3T(6N>KT59Kr%<{e+dJSC&BE3G+!D*gcDDGdZ#KQ1mwLY|fyCrj-(Ec0URx1v zq}m{_^X!|izd|ZnJI5RnLQN^v@XHMp!5QKlN2kl5hxcL;c4@^`Qz8Xbp9F5clu&++2|N2ozm6*PR~8tArfROAdTk7cQJULF3-ckmrLe@F z=lOlU4tYL~#Nz8WN34~e<&3vI|ZSiZjxPCIlu-Svqqw_A$jQ~Zv!4miYj zB(lqDNRB@FvWks18}cvo9;}r8jHy**M`}DW7N09`w3P<#7Z#i;sqJ+tkjsxsl-pbs ztTPZIEVu~fT*cvsTNQeH6J3oqJVqIe(=Vm5O=N53MtB9#Rt%S#5(y$0s38i9@70o{ z>;r6;Ug5%z3Kt7xy6Om7ChU9g5z7MFFwsTta%1oaFv6m_&YbwEtx46CieVj=0>Mx+VHYy)BmNbxfU5N9k z%WTKm&$Bv@vqOS1Cj~+sNiJ!?QMA0O3M8ma7cwtzh>kBl%Dt>my{Iu>{SgLbCVtPp zjZ2L+z0<*Xsp5{b^ zZr2-W)Zk;q1T)P?F}oFba%3e1=;REL708(glz|n?oN~I(?Kcg>fhI$O&}hcLX;p5K zVwZWAGg=uIb&TVevLa-4+1^Jjm{$+s7j0FWY}-YVO2o$DM|q%=UnRu{TtCy)8z1cg zwY2qGPIjg#74pHz)1p81K2CAPaEt9TP8ny=zE`mqFZavF%MH%f+}MRu!#-o^Cs zOb7KpG}fF-EZlEDXARG=tBUNqP;d)OdQMkTm?k5eNRwqsRgtUYu^z6u!Sziv*|zI~ z{anh)MjjptF4V$vXWIQUv(p&eO?kDMXak$Wdw><^aiyG~ttg6Jh1CY$VRw$5$l)Q_ z3Mv4O{%zCCjh>~|3Z}H)!&Iwo9-y5IQA+l&A8xWNI@y&4R`o4}6S$Tt>6AlOJPrIv z*Uhn$swvRb9hreS-Sc$=r|m$2000R4xkN5=BP{^qL?{3j@l0#ZghR)dz7o9;F`L3a9vvs-d5B0Up0;=yNt&c6+cu?|edQAB7^Q=~o4dS+LG=|DM zk=z#DjPm-z7k*uShY}Sv=4o{og^?zJz2t)StRm-98&C{7gmTF_aJlE>vP_7|Nf4VP zCvD?zz;gcpEE+J}#POYT(+00IR;p=iYI7Rqv3mGYvGa+O>6KtLX>`$B&N2R;wu0ig z$^tB~SLA?l01_(B(N#7cmqvPHOvVxyw?ysA`y1g=-I)MpPH$G+?d;Cn2>p5pJj^t6 z+{~2RLn6|k3334U-esp1Z6xj@&o8~zok_X6!SYOkMqfuCGt<%Z^}3Z?fmy!;5yo%m zb|~Tf8xPGL=S+>(B|Q|?;1_uxLTv>XXlvA%^@!C7@#e(@2U!vr;HA1<-GDZbg}y?& zmh3EvUso7*qcnsDL91rS^O6Yg<;zNGTwQfLMSD`q<+qmWwukA4qhuFUSXeo!Ic^~U z@?3WEHksEdRF_$b zOt^Qvs~zIJB4?zdy3T2FWxdv(#%+s46MX3FZhL})c7rE#Kke1`Wt95vZ_2i+Vv*J{U$NjyIZoY&Z*R$t3|2AWS+g!xuOCUGHt{aG?N_4;UctqM-_E>$rUL} zGE3GH z{=*c#Z!5*n9sViSYnwas9316;CC34bV(-@tTx&h$08cmMKKZOAS17v<~-6bVgAc@%i5mM zxmJ;}>m0UvKp9t!echK#G#CJqA)ip7U82OhHNm?r7F|u^W|d8Gu+0e1l>x+Dt`+X# z%syT`*u_rwyTsF;>N3Y_v3kd$6C%q-bbT1Lg$iTN)3Crrop!O$ZrtHg=8Bfdii4{Z} z(R(!bUCdW6HZmUl<*2YAl6>m!TUyD&swuCx&SnE`61d`^s&xt{f8ED!I^1?0aqTG_dwoCMo-{91-Ko&cE5$o| z#VrQXE-M`$$nH?KE3A?B`P<7+b^ibgk`$X@Rab*dp!Idy1BXgsnp8ITVk2Svd`W)x zDv_eDQfF>al$2L~er{}L=3kH*8@yc+Roz#S{KR)vEsOZu`RhBBpuiR1OgZqkzYWpl z07YDtNBy`5uBeVNXtL^T0r#1X>Dg42Lws**lm2abOXcHbmHkBO?&DeB-uRs?ocr?|AgCDb*dLLwJHIt<0F@d0dBYXo-1n#A)`R)iAL#YH4yOVR<}c zX4Vk?W0A!ECfue)SI2D%N69|QLOZMs!d2~#6oG-)P1%g_x}KXl)Rgg$jaUp<;|bo?;H@z z!szB{s8-VRW<5BrJ-DeDw4l2donA?)3Toe0o z8^e-<5Q-uqilQnZudym@A9O_BI+>@kClE-SEV{Zxuu36`I98!MnCj^tfZ{sBxrxyv zLX^@y9ro3-LP6P45m1Q>-(vSom-*@uba)TzRlBs}S5ZxEB0?PQ%doLo#V;gLSgtK{ z>A24VI(cuZud9ll-WN@My-Q=o7x@(B(2|W3(B0ZZw+Sctda)ak!ClDtt-I6pf5r<= zMhBQh5ke##(2%#>Nk5(ai*!xDp127ru3NlOy+38R2*gmFw@7Ez%ZlX6#o5ByHbF)E zZc3=TB76PU{d!>JfV6Herd+=F)q)w|BD=ej&3AqvWJ5JlMGi`X#Z^7F-`m|0e{X(| zW#-icP_kDOQF^?if`nQmTS-Mn!<4$R!1mJ;#ih<8&1xiGQM3yvE2AQkNSe_Ju-uLc zhw1iG-+>CM{7d82`(vv6KTMkBiu_WV!yu~AblyFe`G?btpW4(7xu{S*+u8e#N2@&G z3&iET87|WcxL!ZyiCkkb9HR63V;RL*#<9wxZJC}%*{X*X3vW&lp~G+dahR{NDf|7+ z7q3ZdWpUl1b{$G3vFZ8iL`w+-dk_IRwBy2iZL(D@jgKk)udcgR+82{B1XXnp#MI4l zY!l3h^5=_&QFaHVMIOkvORj1L$3+ z_JL4^Rjfk@ZA@71WZQBOwE+rtYUX>~xP4sD0}C`Uyg+PTtFygX!;Bl!D=_Xi815 zi;9r-f^9uYm9{TO{{Yp%qOs7&cF`@2g}P8vl@$uo<>kks{hdPFJ(3NkXW8p3R%)Sa zgR0GOqxY!+*a9Ki(T0%KrE$DHvEq5gt9IXetbMjUTX~#f7j?A`O3bQZ(9vIG?c2n; z$ngAjT<4X%mc{yXj83eEn2@pT4T$3E4$zUDT0E{WE;J=6vp52Y=V)sc&@DY zb&m`KRh;why)Yv#{zCC^I1e^NiqP_pR$VyH-sZEMqZw-*)F$brQR8}znPl$XBegIt z0&Y8D27Vh4D6689`kWX^nzhB>Ni`xhCdx=~^AMj*b`A_C;y1G!Pf2t1+=%SD4!r4< zcbUI~MMSn?m{%##panQWad zB)Ws1&o+)zNhUjl>5;u?NR0i@Ms^H=?U2c6w6rOWhrqEn2smAa2EeE6`uuSumP{+G)E znBEhZO}N`Hi%q=A`kpJ0dvTuD%v7PMY|8Cb5_3$(kmLqdA*eK}3ot-9B)H>d^ld?O zhdXehc{Nb4G7}MjYM#P?s*1FdH(98bogni0mri5H3ErjXkI=OpPXweaZkH#<^0>)q zXC^zj9O?|Rv5R<^jBJh8QY%ct$!TV`$x1}zl1RTS+zqObJ*jMt*X-Ml((4i{P19H0 z<%D?TkFekowUgnM$Y9d_Di78;O;$81ky%Dg3r=e05+xq3T&t%@mmE2Hb9L6P>7)7N zEb9@8t+)(|3_m8Spi5|3QsLANS4hN<5P1Ipz~zx59khs&A3*Z?iMEZ<01^A_{{UeJ zX5s8y&8$VE?4;-3T5V7)c%Ex|Mmd<5{^=kPxyYKaZm381`4qX55y-KoH;@{ADiE*; z0+tVd3%Kg}v6xf)i^zLf)J--8fv8rReT!LK)KU6~t;Mr*9m#8DW4VkpeV1glIt;jS zaeH>60XX9&jI|g@OnG(cI+ns!rtHOHi?g+4r0oSk?etfW5P{|GL00(`UT;aDePhQJ z*t1SNq9K2F1-uKh)yIXxJaX(yus~y8wKF;HVXZsEqr%iHm>49SIW2VcSf6K=;dWn4 zwZZJHZ62B6ugvk*@{yA?-;^sEr8v?JUSR{J(*2Lh+7sAXMH+(`>hyOL-`yl98GYjv z_mX=1hqr)T#4R5#9KwUN6^Zfb(3u&}5Rm36c7hei??TdDTD1+SgEcp76Z=bvZ8<`5fqkQ>)Klv?2}^l zc55|_r59?I7SRAf9w7ihPC)9gJF&iO$FNDO4eEr6j*PO)d@UAt+i6-$-bl8WHaxy} zecqO{YQCXmEob+WoXDzj3tIe&6sORhV#*|^7=3v&#kZrXwyN5IpePa${rcGF)uP8> zV9=tCHk{8RZHfiNU8X{u#pYhpENRpomu`%XMJW5eHmO_8zCT}^38n+7_C=~#LyGab z+m~!alpgA?F*sa}Aq^Mx{!^r>{+%X>`nfVXnJF%1%l=v7$0{%bL^)idqi@yayACE% z1|{S&2KXp?hk>M2MK2p_N4k=ta76p>(H0A?7VLhQi|~m50G@b7Al)?)9E$GSdTr_X zu}7@Ps5CP?uF0T2}=*%CWHz3l94$Ohs__{NygT z{fqW5S6^j&S?wM>Xq5+z8I0Kt?;9bh;%mG}Q|}PtD%uZd5W{Y1dnEq=(8P|_@?Pi} z2l|#v;gV)uBbsN0%T;v<>@B9qkv$!B$lNyx-h1;U*+lo)(`6sG`MUCrPC==-^xWEW zJgqKax6{p@G^HR!5?qxE+k7(aEF(IVo6fMR$Qz_1dB`m^-1#l@MFwOzEf<8rHbWj; zl77k3*!1V+2fn)EGaO3r1-VqdE9K+eisfoktq$!zjj~%v^X66Q#R$!qSnCsw&~iid z?KHtE>}uqO#8nfQy0(hG{{Z&&R956jtNW-npwgY|<+OUf?lY|1aLGVzLH<$xU(eNo zb~|^M;+c$GUWO!T*exXmB3-ca@gP?@Hr^w1Wm_ezk`NnpdBR5dAIw-l+pP{`A|l%> zke~>S$)}2n7NzVThAlLz%QTjTN!*USqBf6VbzQ`?mK+RQCyH^HsD5;Lb*_=EErTzE z?6TsLk-;b0B^3`U{>rE&%WsPHUY!{nxmqifS4xe%y;#3A<5L;^BMHQDr#n$RdYA0# z#goJc+)Cqwo!viYej{Ed z8&PwDHfV%9BBB1IMf;-t_T|)~;wca=rrgqsnoI4$Kt`7d<|CeYa+ZEM>X?z<@M(5@mTg(Yt5l}NkQJ25#Zyn^CsKEcoY@k`9A7T&R5h^oz{c_g?m z0uLtSG>WK*qxS<(i6`!b*Tprofio-DGGC9w{V~!as)`wK6w~5M=K8%jm(#4cE^Ax$ zP9VPC?8#t@VrD~2!Pbmd?1*Apf2Us_X>Gl+3%YN|WHRE3 z$Nf=PWa)!4EK3P(ch!l(vs*6vT+LxYq#ljKhT6@?=FtLYNC~XL}^kLx^+E+dBy1qdrsb7TzND90IGUCW_BcM4M)DSIzuqpFil1-m+HsV zYm#7%k7JnbX`5W?UNb(reZ54)=1qf z!-sDI63De-8_e_iU1inUM{{UviDHpvF^tbTH<+I~6hWF%=H7bZj)`Diau+sH+rr+% z{%*6{jF;SGWw$m#LqoGDGz zNB;oIQ*(87+p{IShW=&rm)*s2toiJ_E6Oz&1&c3BGI-b#Ns&7mFs_Gk$WU84;MqAE zII(80R6}i*Z2{-~MS&}i0Rr`c>`uYgXpBdojcJ)sVZL&1k(-Y)$}U0)cBL_1PMdJH zEH#XLM|cEU1xDrc7CV|k-G6Xch7+fnlc?5swkfAsEo;|!E!1lXRyI0T669VrcaPn) zzF?(C+UMu!xWky=ZSV?#yi zeRewDE>NYq4B~>|`i6~^MqYKpe7QPB(fcVylNpVbp>0!dN32ldH0sHa1@zJ$Z#R%k zcqk&72=UX7efe3E%Q9P1IOA`b0`Alm>07^MJ#A^0Jq~sY{W*}_<#!kcwCJ1BCb@YH zXVX#7$)djWa*o6|mJIGoX!Ef*CiyE!9$!#9b?5!L_K`baB~~A-ldSADa!awDl@>d$ ztZ;XbNukhM)isYCxpiXs3|^kHBfjFi%!Y_i-Qi`)!<4d7@@Bk#yeQhCl;%CP>3)Lh z+#Nz|F~fA<6wEPl^{vBlMP!QXqBC)rmwX^B(tys(6*@YRnIj}7^%z&6v&Wm6)$%p8x+dY)dS$sd$u0(Hi=5Yg$!FHYgaR zsTJ+Zj@h~*M13)zXbvpubw_06L94b-$UvCd9CT~3Vmk3~Q*=jr9Me%1w_$B~Pu>KQ zFVnZA?L9dvUBkZXdaw?!?nTXH(aBZ0yr=QJw@Y$-+fTL5yVi?$lo!>bjXoegooNLSLa%N+g7_??t*R%fsVd1ep({{?avvM77gSSis*CV(WGR(_K9s@o( z9`yKK#6F_LByG=fEJbk%1vHsDEFilc!jVo9I`%?MdD@948)gJR>#d&euzM>yp|F)Lg4;Se!G4P| z=}a_WTcF+&ka~iY7t`S^)V)(96x#SX;YI?7LR` z;$2~Zf$Js{MgjddagJk|=0j+flj<+$4Vzkzj!1E*TZ+wXdr~1j$*4Op;h3TRS#{}% z8xFN*wngKV?G2i0gN~vJDOd@W!s>8C)1?V{actSGig#)oDwKH$$VYTR;jv9p?$H~2 z`jZ}qFiiyQL-4TD3{xV?ZYE_EHdzfcyq@C>n^`H0uQrcU8aw$7x*d|f#T%;!%H&2& zV;k*?x<8~>X@d65(4#pPnDbE0%*>rN5|Hw*IhDOx_T$p~KMtL;)aNPGN_jIbU7&JZ zX;tL&ThbSF^$6n`zZPw4YrDNgrO7*E&T(fkTzeiu9Cm&Dd^0G!zZF#huQ|#v-G+>) z@$yP-ekvPux=IY<6JoI2W<|(KNIJa5$~e|GZ*M5OKTC3%Rf{X%96m1yUeP7Gc#fp? zU5_i7o{($fSvFgl>L!_I)fM%U{Fw#qjZB$z=KJQO9qCytL~)vEU)H;NIKiZhp%>>b>bza~t?!497Wr;Z4+{WM>R*J>m3n7e7u*nmh zjFb<~B>w>J@zl+JL$jhU2O1FAXl??8L*?;K}Uy@hJBjLwYZ)u9zdzlQmFxUX@ca{Sig6mPOD z+LBw9RuF871WmT1Ne3P<1RsI4;&S9E`+wWkbGIyeJKE{;YEdLL9zia5wy4%+cQJzZ zs$;re{-mO|Fy&vHX~^*3m&(8MrxBFu{ZT`mbcDy;#N)^sRHRE zddu4yXGTjDQDp>YAD}k;i(^`*CbHWEEzP#kNKp6Nj{OBojMYpWlGyI$k2rFziOfUh z`ms!oB2E-@bKT9ICcM{p{w!78$=rJzp{t5Anu!`r*_SLnuL)#~uU5`ndNnNrZ&Atk+6bz=8|YB1ujw#?FT{C0b& zlVkH!awChdw>~(c{#$~pxuR{zNBrF`ZKqi$8?`rM$0YvWSEs86?EPX@5@!&)8_V>q z7kIA=kvwquP~?nFj}{!cO-dJ|wCz=p5_spwbP$@y`qmO|x=9NZjTMh$+aCQAtPLHdNgOH~#=_`ubvO1WYRZCo%ee*UgC?AtfaN zwF^mG{_IY*BurIP*}u{yvMM&Js5>s}`j`3YH!cKhPg3W0Ys_A(d`7KNP%V8!=>Gsr zbcv8PL@oKEBJIA&io34rtNN3F{ke4!I9Cy>uNBJ@w{fWr+^M9zaXF4N9vzB2;g|;= zJi!prP_|VCO_yUU%i}d%`0T*)uh%@%O^r|G6;B>kd^-cW-*U#`xmrZbF#GB zcFYT3q~O$JN?q|}fQ*=}$X+}4XrsF9`m$Q>icM#EktG(=9KXcdb=(ZGB3u zqzifAq)}+#PG~@j#BRUD!BdKJRY6>rQfVnmlsS(Ik)M<~QzY^Gw_=wUYAaRvarSyh zj9Ik?miYr*xlV7T>`PXe-zbf#LJ9>FK& zFipo}3=2x$4AF6FZJfeL!h5`&l9g5%Z3uwJ+}F1b7?tZ{fCiR#NzC%EPOC?^5xmL+ zg4wpa$3sQE#GImDWnbNhJv)PQgymDRSvbB|aiy)3cpz9tZTDj|2G+-)M%nmvxM{OYPFUwNH)On9?fO&u(jT(fAOIO!`=Wu%Ar8<;$_V~4>gk2@oOvCz9 zG{+=YmL!boJ5gJ9`xGXbSi?z-WmmyzY#ZHGcm@VJ=t2@+|fG>$AAc<2Q1Bf{Ek z5h@!+QlQl-8$|cLQ)Nj*WK^w_96->5=d`JU8d^hkR@|8U3pMj%Nw!3+p%WKzBLW?0 ze^*X@m;>cH&0nY)jjp9?ew&HR)$5Adcd_cFl>FOECTQA;7S3#HiLFUuJ-fc0>szrecJd_6-2Q!jMew%u= zTDp2iP71hAooQ~P>6qgBVQ-kty0z3dO0usdhhtkus4yt#+-}Q9lTe{J+$wyiiRivI ztil9)7C5x*fsolYS$I|I^0uNZk=mx|FMf|`LZ2nfz^^>Wx4mt%#=-0!RV;jh4~Yt` ztV|$40JlMbmZH14Q_G94n8*A;I~&k^Urw6I`_Y5pbFHrRT znD#H}==B7S^yon`vO(SrqM3PDPk0Xu4IS0o+8Z^g0>({si_M#*38``&ZGdm&2n@&~ zKm`QlvM;i9wie7uY{3?+ZUC<#b0DXVew;0rPuZ%D^oVi! z?iA&>8o1WCz`}cap~Ry!l`(B?T@O%zFzt}=r;c2|}FLWECvgj+&CbRGgf6dtsd z+IH#mcOesN9p*%Ti!N*+H~})N@5h-1>2mxKbb$T3v5gw>tR66vDgsHfRz&FM1aKl(|b!b-kLpZNe8DaBe_F)Pu!;$bQ{Jinv!{^TNKy z1Zl9Mye*8UMss!%+I@CHTUz&lx1;P|sG9PEkI6rD>b)>od8KS+q$LC%Ww?jomX*7~ zM-nP31L$1MrbBm|;mW9)_Tb~DnWP6NOTlN&h(iE}`hIIWiw$txooCE~h}=>o5@d^I zLM^|$p(%kNNMkvh&1)fadon`)Brfb)_DZsFjk;{?$}EemF53^vCFEQ)G?$_U^y@9W zgh~y*;_QS%DuNEGuIl2V9}@lg;;BnlohMk&f0tnQXW`R#n;J2+OzzYOiH8@byXE?^ z&tyQ!DKaE2F6x4+s=M#M9lwqGMeg>Mj-{sGZyj0q{&{fJ7kH(+FL)v9xAWbICml2u zaX!WIEzy1=tNM1|+i%;UjjV`lRTUM_=Klco$6}VL4>9F;;>A-atB-$IA_K^(CM1Ap zzaSv}Bn7%E7?N&_`!8HLt|0@X`oUk_-al$-!29b`(`EGOqZL@gJdhloD%m% z5fs@s`6}12TvG7>HFXKtS1Towu-nzbmdJJ7NQnS2wFDsngnYsn)KQ<=0Z}(-V%K%4~H@j$Cnvi*}z(?Sx^F3yPJw6tJT$` z@nZd9t2COH?N%jAbzcKZ=FnATx|@$B zZbY3ci%EJ5oB1r5)Hl1f-7?aQ`O4lNtYfh0vgpl~N=qbFR!elj8vPdM#Io| znhmX)Hk9PFR2jAdGN%i*o^*jlV;dpFD)f>rWS1Aff41y= z<~pgDV(~L9Y%y4s8ex}u%M#1#nR3$#qr)AuhhvOnbU)MWJb3gv8>r3LwDb^R_g?cu zaDGBPS9Wt{+n-0J)JnPU74m!?lW=`Bce<32hT#KE1U#k9f>?sv&|=AQrM#7Xwv{q4 z^`e(T;wg~dA2R4SJnAEojiW`9Ghp3%hWt7spAo+JD5+E z$uS^UVoZqu>9mH*2};Dxs@S>pifkxQnQgIOIi7 zc!vnXSX+8stwl(Aguf8>V0#hVF0M@JwJ>b!Zw;$imQ<4FyJHa~-8UI*CL>m{nO0rk z{{RMf3P%=X7rAjBosCXQn>^%#d8ekzBLa941ar?$mD6|eVSJ|&p)84~6~@a|pf=g* zx0jm?6`nbDsCad@Rj7d8BMS2mul|UwYSi(`nR|FdD!fw0Tw3|gnV?7m2`)CRqqCi_ zaGBfJfL8w}ExpbM>L`1>u@=RJagYu5sGRrY`G95U}CE_xOrDG9~4Vi4q zmK&3DO}|b=4zwxIJ6T(5GgO$SPercCdwdTTV$;p!BdegEY>&qB6&@HWVD3TYlOk$L zg{Y&EExlh*`E$XSAJM#OMz3kT{xy%s%Cwgvq#TPhqNoLyxh5%<;)!_nFI>!KxkLk) zl8MH7`J<$BG2%(ftct0%yI&t-q*1Du7SKp_z>OpjwWvrWJBybw5zR-ljuf*dLcYrn z+(gQ#k9K38t8(=Ac;JVUc15f7nf^7XdU3A!Rc1M-xmFbuw^sE#3A~0>n8UUKsWdY3 zTjMvpB*tryLms9cN_fl&!VcnGJ0StuDS)_hXnFXfC3lt66Uo zUQZsNL)4ccV%r?)(a~RW;Vh4Jc=D+6LO(F5>9-FCa(c0(I$4!wx=$Ms)7*)Sn^3hA zSg}8;W6#y~7n6^=0QXXavkrrQcy(29Hn~`~{gR<^Q+IoEtXs0P8 zHXM&i6*3o@HbA$)^Zjw(6U%f&yg+Tjlt<(-7GXE;?mXd>styI7ga*64R`%joRoch9 zuG0g+u$=DePO{h(6eEPpO-~BvQ ztDeQFZMU`iL|)}ssLygEt{bM%M|IK$L6cjTE0Vw;*@xRJT5gZDQ0h#_Nm;74Oq%2_ zCsKiOqTS1nJbl-80o-G=hfcE*t6CmzeNi%6HJPOs^LC2a$;1;){ZZL;uNRa4dJ z^y5qQA5h)QFbpG9En#|T8737+VU)vdUUe7@rnRYJfZ^;$Ew~<5_f7U}zqNW-S}>CF zDrPR4Tl+*y?eyVME*omjUOq^6y zR3K1ub>+9d+jU)z+bkS`Po!56P`ugy0H>Q4p>4@v%Y^l!+FD*>w*o7ea4?80UlsvNE>b?#Sm0cJ=#=HZ9o?ww3+A)*l_s$91&qQy$16(cw+u5>?fi*2lPwR7D)!A6BGIxZt9I189l1=v+{hc0?5A^5fNdukP^T`{V4Z z!Y6K?+$5=cylCSg#_mB>9Pu*6HMCiiC}o+_%#;#jRQ7Gl)@K4LNh$<@{g25;ZO|j`&>OHrgeCow~oSG-9^8e62gdva5D| zJ*CwfawRh0_|?;l;m3_Rv_<&?@!M_TUu0B!r%|IgP~p67*rbJ?X~dU4V*9w$Xj0yp zO=ZbBmA4J!!$|cI_^v)+U$LY5arr1OFO0TF-FPqWB?s=G+@Ef%^(uO!g!=-d zMf|vF9rIwfSCy_U$^M0p(v!u*0N>0AK$Ao{>1w6}gS)mo^!qi=?O{ znRoqP(;YbqWw?TIRYegWx^22IE%x_C=m!}mdjWfG{rKVJT$*?qs=I_5<=T3m-UwMySEIvGrgHoK<9{$FA)t@EQKD3IW?i@az~>w1Y(wQ-VdG_yGo z%^p;eM5W-Ld*$iF4^4ZD(&Qm7vY_$j5;&BZbmH1bl5I5UNA%+Hptj?WsH5tNoREwD z-jY+r$0N8?r8q4LmR96SBs{lg)6%%1%#~1+6(gIaW%-J8a<5PB(~UUoGc?rAMSo3n z(!ReOGlxlGjp3Fzj6N8Ek5L=4A{;Hm*M==_8Ll(D2FBA&l|OBx+?d$T+4KV|)4t?i z(9K%K230Kj+Z!l1R@A1>nqyjjc?QBhcar56%{~O}sJkw|%)Xgm(8ou7m?L>4{mQNym5waX(NCM-La|-tL0+tjj%_xka6c-#m!Y<7^Qr>PH*l2T% zCr@x4IF;MGFpjEbZvyg$izA0MiyGUgoN6IsQ!uF+8je4-UBU7ABIDZ%}Fs?QH(%^2`(>>H!5=p zc;h|t-rlpVOR&c)H1h>^-kU)*9>XuyEk&W2GV!XpINjp9{yi%7KoKon$K}$f*SXBv zTY}<68J5GM>iZ*Bjk4(4xwfl^R;yH@(7eR(Qb&dD1LYFlRp*1E# zGS8KkgJW~7Pi9@2vDEoNN00B&V3E5umw=Ly0;;HKEnXt4s6FNO)#yKU6kYLAyP&;dt;D3 zPGGeJ{KQ#`;J4?32()(I zsv;$46X~}<--_*S9>%D}tdn1HXB#-R%&gyHc6#Gd?4;?#Z2CO0E~ZI~;%REq9ikXL z;bdHFT?IEeFI9b~lSrf$a(oS*azV#spi%)LWZrc5Y>aEJG&kKYDcqQeplE_YqbSGg8rRu5(iC>BH6Ad!4&uxvj3I7H5g(xn7(`IW;gf2I$(;y(p6@<2!7!J~>AF zN2>XCgTODilOzlnYT^T6TzQwWy_0(tYKyWow|4cI)s3N)4LbC48-TwgoAzJ6(^!&p| z^n(G)dxg?|-{6jUnaiid=VVmT->+%LAJki%PP`n2S4$DXlof40FOvw%uQp0xMxKhM zxXcKzevOLT&by;}c4VLYO^J0|+?dvD8#NG}7Af%Ag4q><0ziso%#7Yzo;^9`-dOX) zH?>(B`7*y8w8tf2Q!-l_Iesf*buK`$xT`qQB3eIHOkOdNK6=)Wjm`~<@FOq+5+qTn zH7QlmjXko9??PtQVk3BZ1$)!08H@47Yh?ygdy+&U73Cwh;pQI9up=JPEwFf3SUvVr zKozz&cGZl{uXaWBoOMjTbPa`TEi9Py`tsS~eP7H{opvxpc z>G35c9bYPyymCUtYO_I|PpQS2_D#i@wg8tlVW@LYh~~JOw){PD>bm!2yR0&XrZft< zhm}gk{XKn@tbvJ6Rnb6#!wx@9KnSkLIR)xtuavXUP z6e5ZXtH6t8CF8_;`qZXoLy+SxYG;N?ck^`pc$zg|denhs<+YSt(HBqI`TKEc$#MMt z6o*6=+bX4-X%HQ!Ww+jK$e>TeVp~dE#y42ve>6l;6Hw*HsbR<&5x1?ff&!M2U3VQq ze=eRnuuN^EZT;}tjJOGD687-$RpF-)@NoNEEP@QytDI^j#Stvw2GtvZDA+hphYzu; zz8*mY`=gyEZeqxbDmyMDhvJ&qtC$6D75$ohON1`ffnzwOC|-THIC{qGllOm?ChN5A zVoR@WzHx1;ql~PMa&%XJu2-i)|e?I{Jic*Dr$~eb}{S-<4iG zPA1Jh=%enn@c`Rn>cK$vc;qE2)o7f8$!ZvREyR9&`T)Ca!&*kk&6?oLcwA;b1uzuI ziF#0c5PucC3mxr4%%R#%P+%B=SzQ^L>YC`np%SjH6DY(g=zyQ0w%7qg{r*1vJ(;_C z>y(o$tw0?jo}6ltnQkaE9Wrc0P;KQQ%L@I~oc{o;)SW*gl_tU{#3q4B)tEAy2AF6? zcX86>D2e-_{+_Ew+P^4cGVvRvNufPh5>&MZoNY5~g?Wq0z4&Ui4;Cs5$Ko4{0QjAb+bnWRa0dURNWPJPL(7lkwv7)txh~OW50M%A_UE{E^JgXmZHBIS_ed2 zP0h6-O@Ngb;zjMreZABEu7;M%AP~9w#7mOl>K>uQ$}BnrNtQ?}tKv9UGrS^981H42 zQQt97&bEgPkV&TY`ORUK9h@OV+{G0?&DZLF@#d_MiEdhM{{UQ8B&4Ejq%o6gU|AmaYp9-{b8@5m`3;U`A*9=N@Y)e)y16nf!R5)?GL(O#Wcsa6$(k(0uAh!SRv;Se)Hf8;#4L)E-A4lVG;y zKvwH;2!B*J0fM68F4InGs{1cOru(Zy%vofHWAzr2PExwud}_a7IF2U@9)`))OsZb7 z-Cz#p?&=OxTI;%0xP<=kD% zrxCgxqL|J@psiuKNwb*5%OT|2VXw?+zona+zZ$YsNIHFzYK}8qBC+cxO}5^FFypfN zJ6cSfhm6`I=t{=PP-WNYHNBMD$y7a{8028Ax=%9WL^+s~PTU)wtv!larUht*V_x>l z%LT~ol4Rc(NXG3X3S0n7wR|;WFfm;X!*abB)ExT^qRBOe{{TsKGA=Et`g4QS*v!?% zz~74cW4gJ9!(g3XK`rQ3UZapBUTW};zCT(8(JgHD((Q+{*!6l1QK)-V{9rSSD_DIn z34tDZivCh0TZao`(_~L+xeU3xnIQ!%H2p}bT#M6k5b4E|vl7$Xt-M-hl2!z|s>}-$ z%R>jwa!X1p-EPNOw3gm)WRY_B-AWsn^rFb57$&R(vD85g38fm`%0|+&2WHD^C~E}i z>=L@nb-jn4EWq{jWIFYBCOF+Y5=?TaLRMIgrpXv)LgM(LcNVL#a?CqY(^$A3u4;ym zJE#~XR+?b=PNv~b6uRqZ$qOdAY9?(BvU`75 zoX_YweJ!~VDX3>9QQ=u^wQ)4AiH`zc`V@Y=u*rqrBi6@kqC`+z@BL!({vqXGy@a2* zi)VDJST&}ysvb871+}r#$?Jb$p)!6e71rR|Lbt1>H``(}GcB=~q)Cj}xecXz(*yhz z4OfL8M%cio?IbpziuTUPA!(&?1$gGrZ*?e;A2t3wZNf<@?{6~WY;H(RavQpJYV!OO z0{J?{6f)bmmCXg*{K2{jvJT4G_z%mOW@{5XxOvLOCn4jK4CIN5qnGvgP%8+ z?ikN5;&1VdEbe}%0;tL^wJSn$mxAvx)crqV!n(e?ipqvDTeV!;y7EX$J4s~Z#!%i~ z5ecv*boL)iZ068yC1YZ$5@AU9ddyKFWtjv!*A<=?nRQ+xZhtO4CA0p~HnnJ^j7&k3 z6c8D_br_)P6Sq$)WJT)LgC>x79o)C!=^I|Om$!?&qWc=x>T0XJ#_G13q01-n7iz5I z;Ht-oF1I}Ioc}D*#pH1yPc=n4~BO8yWyqKFkV9v z?&?iL!Etx?d+k(Ssz`fisBP5U9ZZ^y!wup80IC41ma9jPHwl>%X`gMm@5=gGK5EsS zz62aRLCd{(-Y5FOQs&p$mttZ+7S^p?%rJ_5I=jUZJp~>` zmR;G~Kvvc~{DP(9vMF}10eObhn0`Afn~S-|A@Te<4@hepM(ecL@LZJAi)xMlo|7Xk zJw06|issX8y(XtjZR3iARVN#CJT2A0Q{XyR)rLYYb(}6qO>>Y|&CK+xP!^L;HE$e! z9+6>=I1nRA)4auNq|?!|)Z{{Z|Y z*r@c2VsQ(MiCmpjJ}ABX)zml zQEoyt=DOaL^5x<{_+H5?>1 z$(ZiTl0eh;=(cL&EI%PgVw=Ug5HHplh}x&8)!FsoeNMdW$Hp@RvD=VBM$jgOBpoN| z%(KrNc&3~=U5Unvi%N+5Xyv@x>t~x8p-mn2SxZ|cH`-LPlu`hQzfYJ<2bbxoPTEkM z4>eNFxlxQj+vQU7D0i1p2&Mv^Qz-^VD?RO_%fPgJIDb?}|Az;$>!NKvbv&^{5Y9FC`c^_yFmpS%QL3^vswjprZrUn}H`d9B=kHuJ! z*t{tr3L}YcE<{6b68pWFm|Z`}E1)?R9TawM?Ls~5!&&j0e$I+Glz8UANp(@RX$9{a zW`gsA@|W31ql&FP4pkVOZJ5<2uLTo9w1Y9!UShWEcw%y>i5o(WCgg{mI2G30ZaDB= z8Orne9K$J;?Y(0S>TV^a_(V9dR0?iSlKn!;VM{%gVpl<{tZ?0Rt=aBE)qvB2-}tEl7od+GRq68mcrs^>T4?*XxRPnUF9S8H z$R$zbIfadjQnHrarfs+_*VNZK**8a4^Jv_!Q|~GAlexNq#X9u%$L+qyY!1)3AEQR0 zGDGg8vXlgZ;3XXdNpcRII6fxLRBBM$ttCs`TP4U^LM*T8BP1OhKj#4p%%1k*qawMw zgycw7P$Wr9+d0lk8)uqjd<|6#ZgY9HG4c5}KoTA!%a0zW+MjIuIWC_ZpwnBCE@2>8 zs5e-g#pbm!Jvw&LP~L2#)}9g~=yLE}*4C!*6yST5KLSu*>me$ zlI?>a@!QrpfgVJl3qMQKn`dC5B0C z1Q-ai-DLvq=aO?bPi7l2*|A5K8`=p3hE}+3`BZ(fi4Djk)lL((ywTteExoriME_l9n}qjUIqMp zk$t+X&ooP$Z%Oxv{{XuJum@z;$9<(+FWgmSu2XXY({e=V5=(TNil9bd)GvUshI{z#kjI0D918i zVf6xK@gAd{9zLcSE2$Ilnf)TmWJ4W(k)iJe(rcHPd9uQ>r2U?1 zUb)EBx}7VR8pm8T-hG_q&_?3Ug{T=;HAXT|D7nGZ*+`dmRW7oLE~CsAFE;0rBQgXH z2jrTaIurXdog##=syaUD8n)s;p;G6Mg>xOQF#-6njgC&+4;x%YLyF)>M|~V}el&-WQ;4}Iku=)ws(bPH zpHy0#q%D@{P@+oUYMjC=rr;js&&`U+t7OBO=JFET_k7=7#gACufq-Xt>)NBDImJZ= zU8Q+eiaD#8{y9rNJ9JmNqb<`q)>?YvQO0y%lrkVnZ9OX>@dGlzlYtkSy{&sQq5DXu zI1W`G*^R5FUX+P!x^ef)g0=*m*E(rSZ{;3bbdOTxqm;?xuEP+v=7ilrC2sQ`QUd&3 zxZFD;sMzH)f`6@3d;*PKQt;k9aNZ41*g0+A=H9olPg2S(#^c z6VoYm_%S6&p2`(4PW2?T$XrCwL#r|#lDkd?TCd%fkL&I>#-C94Coc}QZv@D4N+HCn z8e;q=;*Pp(x0}%12tJh-?!~3DuNWL(dOVLSqb4vr(0fm_FsgE1qgUKG`#2QucW4Ge z7z4!Mh&JGIk(lx6Q7={<6vk>$LrDk7*nokl#Qou$oy zE`X+n>ArE1DrB06q58p)$!iV^I~O`X^e;Ez{QAK;sK-*J)Aj#8FsoK+@d(Af!$> z*qgc9JGIl1pz;|0%(Y{)n#$6=HXg8P#-L{vwb@;kK*qRsp{^8U<<({x8ctIFBdb_s z%P&;p*7(C`KEEQ14iWy>y1w_r>`wT6z z-rVxTeXN}hY$0wNHZ48UkMu?+j*<91|8rp3jAqr7Y$+qJ!4Vm@D3=3!l=mUteb z=>_F*TV2n#lVUZQE`O%^jg+<;pNHhIBr!dKHePzE+MfVMCwMwQdocEKv$T5q)2QP7 zIJ-aw4}qoVHjmJ>$#%5QR$V9CijximYCNa`6vbRnHk9ov2zkcsIU!>zswU3v&njI! zhXUs7Q19!Q!t~a57)0P#g&ZdzjgPxoV)JGK`Nwd8A9%(zk}nE?e0tO#+14nEOiYH2 zvnY(o=1S&lXPbIDY%Z-@Zox265!mdLXhQaCdb(4=bmgax8Q#XbKE!SR01ylhLv{5X z&uN{|?C&VaWW+f!C1rQCG_n$1HDgiaBaBOla|P&cNml`;k|D1oBMzYUaVuwb(kyw5 z5IIa`_nF+O4fo&MXLaN`p-W3&ftxlZIT$2TJ0@bM!Gi<*RfopK}wgDzH?~{65)3B0Nyc-u9CZ?oW5#M~I zkOx~v*1t&E{h$38M28K!gDOTR#bgzuaiNZABo^utyPHlvLz!2mIL%2*eoi8^5jy}p z#5Zv-j;yrcz1+2aiDJFJV|sa8Q%{%aWb9(@!y&xQGg|o?fq`Z9@#x;f>a;f?g-#MK zs+yZ+Xxz%%cg4FC^@SKC$Y}`tr|iAIX%yX|u5D^pBGBhmq!#X+OPh5FgK-f|YUSNY zP`7emLZgB@{uge&2>*qkj!ORExlH0^yrdWM?Wq@ z)o-YI3uH8o+7j|lmSHxkRcf=;CIN;TCDq-WPqv8 zw{vIUL;LZ|OFC68)1oX)odY3mL@OHA-T4xL$z)baZ*f#fk>!hSHd}J#A7u9G2(l-Q zWM5&!7Ui}=nJ-%D%jR6Vu@kOuZB^2*DRTDOy{fpWWL7o~q=5!!$Plb=MgrnmV_o$cz!3fn6M%vvwG^@)5^VmFY$CMBPE89XLh6sz}w=t7nHiaIC}--T1`RaZ+RiZWw9>|xa6K5q4MLaia$|(F1HcI67lz# zb0xdEk5?HhKEJEiLDliO7u`B_TEeB2VzlpnQ57dC%Gk%X3aRwymXr0Em~{ z&hVd{%e(9waI_hbCSgAFCi0c#z-=8Vi%aWf#aG5jvhuWw!!8)9aoeXA6sOXp4s83`IK_;Mpt*rux|Mlt)tWDU z3T~R@hNPJi2uA@TMdrCzB)8Mwi%yH^=A(BNn&ehhRF@a{`;Z#LYi#KG+Sp?mw8$@7 z(MY(XhU&f;%gxtVH9B{V#vwB!&gQ_oAKH44we%OC7PMg*se{8zjsZm=_ulAJ!8< zhhP_-)8U=iX3X{mOzMR_;btR>%V64Ed({LJJ8tnii%$+19K!8`AlI(o@3D6^gA~JY z>Z^PF7a`QF?z;AMb&g+yT(OHh%<;#fNgA7(Ew>%`fgqb|N(i&%Cy0lv&ZX^b-JPX3 zB7HVg>WqgOFr~x|?3V%kSF*~Mu>>sL$h|{@8`=t#D3Ymu?oK@^%fXh1S>K;0!&a=Y z$ZPLv_>P;~=9(9g;I|6qo{#kQXLES`fY0>?=xXY0v58m~7zGS4>iPKXyLLnCpK-R| zkUU9wpB<~&9?iY9m6mqLYTG(~&lQff7|@bQ>MOv|vat(Dk1krU+h_JmX)1Ba&D(VM z3yVnkrJ`I&voB9iFCG|Giw@S-*m8#l{*cfeDyp0*O{I9fn^`=jq%_Gk60>}UDe=nk z#~Cs?PANFkMB=vE3LuYOtzT$0YI~;#X1&^rPHyEEK`t~7rC%I}n%-PnmteM5Oi1n4 z_myh1W1Ft<3q*OW6z)$PPU)_X<+-*|ClI#JF`S|u?j@C86loQ{oYu;l9k92oawUQx zc$#(SV#}zgNx{Y9h-jT>+j;*0)E3a}jTySj?lV?oCPQSv#I-Xa)M-gS7I~L0Dz*KL z*{IN4nMfC6?#+-B&rPnH2%nAs(b=4M-cc4-4PyIPW;Z(9BWjNyw7mLNQo2>qZmuWS zvg0*z8JQ`qr5b{QHVB+oaVuL2w`ui1(5--A|o zSRPYo%|&~%H04~&&G&G)V|tU|IMA+ND^`uP^zXCETkWa|5P8+HUn@Klbv0eZJ=d%n zy&jCz=bnsKi;B7~;2$rW(~Vw_wt-S6S*^A(=D4VZA*)5VeM%iG{3V9xC&aOwQa5fn z9j%4aSXR4WP3Bg2aVwHg;s%-B)&(v@-xP1@Em&9AyUo=eK|6{U>FXV$?S#s^`)vi7 zU{f|uVzAH+*F4>V<=!H8FJgFOmo}0#b+0S#2KtidgF-9%Cj+QYlTaPP!kcB^A7u~h6JGWaC*ykpkk?!cK2Z;-qR?OZE6j~%Z({IrYeEp zd`p-|Rth(ru4MS0jA&CLOm zgN@39_bM)=QF7&0vM%AnQ>b!Rxy&Ad*4rD?8l8K|=gEN1QH3=g8xrSaY&6}}ip+7x zmPh!v+X>R^8W&z^=w{?$bc~gJr59>r)3&ZvMln7##z38Qk^{+Xxf#!=H02fW=H-#%yXXh1=s{V-jUmU6q9tSu2!fnCh#w*Kb1x+eZwh zw1FyP2+uDUjUN;@LDBe@+T|y0XVsw0szqd(g`QsQc_Q0yYF*5~=9qa2^Lfh!&+y`e zqSq-1kB^%ctuV**#@1$^(`sgqv8Z;LM4D*0vn}WIH0n-5iMG)PbEI9ZIJW!f~e~Bg~_~hDt&gkcSN0BIP0bxI-#jha^bfIAbC@k{BJg zg`DZYd3{)F;m&tWyKBGAyJ*z!_*b6eIUN=+pJ}c;k!0B>mTK-Pdxu(8=GgXMrOpqe=MyA&3gR-vF>TY|*TDc&RlQu+Emff^>Z3lxymm-kg zr<)8MuD=BtYzbR#aAt^{MFm2_(7Xt6w^zc#Csb-KVOK`Fb&FtHYRebRdJvm)hh_Ox zWUGOW;-+$QrSaLDe>G>HJIaksNS9-Iq%SkH4BD*Z*JrNO9dwBpwvN^GVr zg=f`Z)xjAcGcDk(gK^wN*&?uBa$8{QLU6;88q$=Z8no;>ru@A$iC-%s8D1rRF9DarvbFaQ9IhY#R>7f`BUij58UCwS6e7yz)SLGm=1001TclLpfRU@qhA;^Suf&c=g*&61sg z|0SOwgSNS&yQkAT2CxIn(!$3g*V(VFP23axu4jxTx4#!kpY;Tnsue zH+NfSCkB3=m*NaI9v&{@yu9zxk{yd51Fy#B5IYv4l~kOAgo>1<`|^zJnf3X$U$ z1-_9aknk4wc64!sd6+Xi;GNvXybgCLI} z&r9wHJ9zN}B?%ZL+^np{wPfY~gW@6f8u;H#{a)Z-X66$U6XSi!&&$ux{ea+h_i^$t z_vUtTXZnZY-yE_qcS|>07mt4`>>o~Z3ujM{*FfMyKEr>?=jifZjZ{4Z)3PdA5uNo{4x3v+-u!kj$ZAMkv<|H40*OkBndX71ta261+F zcnwsxb+P4kaqxU+>*W5>e1smX{g2H5lp?O}Z0+&h+zs}>qW)2xLBh&X{9moy{a?|4 z+d|60%zsG! z8^iyA{U`kYdAthU=d;5w*%-OdOSAPKji=J>;S+c99%qnENlYI z#~6SIfDGXS00RpP3lkd$;}H%PHWnrZ7BEMBc=Am4i|5gS7@DJT1Tnqr-L#`$f00R>n3kM4q5BJd{ z01gh|p$Gsr5it%U@DT|gzqFK=1um(kxvN_M8Pk`z`0uC#0Yt^`*5MIyW*N)HBML!n z_oYKTkdQ2d1ss@=b3X%kf`##*BNh?h4PdVl2TG*T=i68Sn)AC8p7VD;9P3Te<-56c zrEf6Mxw)-qp?$s+^fBHYvfzvYI%WB7W#60-=V>JttVgoBOZ1W&&{>DoeG1({nmUh* zsP9etkA9;%`@r}sYP`&f?b-E>cIQS|J@T$+-Sf8I3D$1=DAGx&2a*KU-9s|xW+R;x zTlTL#7X{UrXf(mgR9l1H$PoA|$J?If?W@vzz}ZIk5)y{SuXxS*B5|0ARM8)1Dhd7c zN!XNrtI3lL5;~4$;3ds9K{^(Z5Y%Fc4Wu2{-O18EQKyxJjp1k-Xi-Ye(4K(m%LO?0 zUwl8u+~@3KpQBAOsPEabr?v6tXRi^rA@n{zl06)bYV))iWmeq64gWSM*g} z?Gn%tMU=G_c5XcUY4=XMRI3qpPY*~H1?e3>&v~4n5~o=cb65DT=BAffTioHA6;=Od<8+kHe?vz>APl!9?^W(`9x-H*SrF4RkRp?pQe&Z5?x7IFWFMG`0 z12U(5-RL~x7j$(Gn0T!P+5OW&-@QFgM(awZ>3@@3m{)%f$i~YOSvcF&iSd-|=ZIL~ zEft<-)s5*HzlAEcLD1dzfUh?N3e2PfI70IHWZvJg=6gW?EpT`V z0WYG(074CuwCCB*kTzirAsI*nE7QX6s-{Nuaf4$^0JNuN!9 z%pE6jD2w*J2iyak5|cs5fPm~?VuWHm@x&X_s84P}^r#g6Td!;1BrnJ&L8B&^QGq#a zQt(htjfcP~e+})B4OFeU^}7d@E?j%A{0vcQngRmL2u9~44VzllUMKjmg&6uK^p=6P z)83P8MRTNJgL3^phOS?ga@BHqB{>~nsUB=&Klm$U=uTC*@)2y=x$-`xH3?iKb zue_n$J)eMn4Yx@WybFI6J=06SC^%kJ=s8#nFVC|DyHL778Zv6rLs$J_^r#9!<;3;Yz9Cy?up0( zp8asRQ=?1&h?|u{nVVo|yg~#@wq14q5b;gnGK`G42^fkLi`y#zSK%snlv@9ogo%=Q zebdpmtgcQKRB^RM&4?^AbC+^3-f?YLdH#T-cHG{Qy|Kz%VSX*QD0*_{Axfrq#2!^bzI?A_3 z^_-qokRLf&nM^B;7ooLE`ok%QS+UyEnW_UE9W=icMcAA0>p!S&Xc|ggPW6DNQtyNzuKdj2sNviA?%y(@S;^R9c+9ELIL>|nUexML;+;?95ttm&P)&4Zv#F*IRn{55psG3NN1pb#^+*k*QDVp_E zK0GJph!=>d_#^k(0}1d4hnqGP#)MG}F3dt9e#RmS0?o%LdS%7L?zn1psnLF>Yl}Dc zfYW!oeBHmIf9;=RTA4Z#3PwI5^F!7=^VYIUQat_-(SSm` z5E`iDtzz}xbbO4*2x*R>2sdJScF-{W%eF}I60vsAXSqCLCvCmVk9$aZ9I`!bdb53p z{XOmh>!rM;1-v_-SCcsPPKcl#ruD$m>->8_lJ?DQieJ3k=Q_JwZYoff@5=(Z=XAh; zq8<_$L|xKr!Si9pm=h5}fg0FE`3*Eh<6YV8&5Ri0uS3F>ijJhAq|n22$n8~S6ALn+ zBr1%|iG`Q3E`FqWsA z`04#&{cWQU{o%P=My0E-#-kKlrT3K;}4_bGq#oVMk1gJ4dV(Lidr zeHl%k#|HH;T;f3NC`HsCPWyEiUHjjDI1+-cLSvi*W@f7*!EBNn#nsmwWnZQxE=;TE zxTy~c)~E4UA@N00k?_Cdz058C$$ib+DCFH{bzh4jUvKhEdDD{DL=oLrSAh13agug- z>FPNzeNFc1CU6eQq2C1`CWqH>xteaLWDoo}CFov!YsVRiD_uEL=!bxQHJ6Vw8^0OK zpqk3mBU(Z5lHmgs{*t#cH)#upgKG+M=NYwFWJ~ted}XMTdzTWlG9*`uwG%DOkD3~I zcANtaC&%l@lDEQ%n@0LmG!N`2t&o3M*-R_SKTKS48?d}0{@#bbqKZa6BemH%l8xJE zQooTZ*J7s2f#G~wt){B{TEwxjc!O{zP6a2VW@M098$J3p`7N_PIqsPn^4PG0J=5_0 z!O4e#vxS+McWGS?uSa3}zVzs0e{aKe?a8=J3e>vZ*>PUi#_f^BV>s~-OZMW(wGq<2_{S!KvaECA??bxm@n z*f%3iGj62((#PY`L1%_Pp7nkJs@djyWX(Z0!qqXUt+j~AeB?haxA4YXs)dVY1`fnM zV&^qWN@~1pLNnr`MB9G`^tacd)E*u3xF%7*7FYEv6dm$68f?FgoNRiz+lCQWT$Q$0 zp|3w?HX)XboqEOxlSHD7Gva1ZUj6;}ze1L|St}c}869emwg*}`oFtwM3JI>%&YMvb z5!h}qNYzKY7vTckU^*7@zOEI)S*9wSn1LT#RXC4W#PL=m?TYFtu%|V_x@Hj5y^8{M zsYTL~!Z;(>JW%y^ypUGeEQrh%?4`x*?l@_63zfM0%9Rf$MsRjw#|P+hlc4E~)R2t^ zJoZtSCpXZB-0rObK2q~M$bE2u>v?EE{Vvn zp7q(Vd8i`+!!1(%8MGYAxg~f9BXdP0(>e0G8?%#}_Y-8OxqJ0=nWdbc9{E$| zzIA*tN(3bB`EAppVX;0Hz7DG&(v8_f6SUnJ@k%ITnB*Ev82nR#wdV+#Ee-9}7PxR++`Qb&K&p>&$9hR^>!(J$_~r%&IO<)!0LoqjKQj9LnZ4XapE=1x40df8t}-Ej9VR*|kb_*(BUt=wid z<3;!Udvr5`A2D?M#3IWWJc#QmG;^Uo;MD79a8r6OiCvxt?rYI_?&dAzlmcZI9{LYORGYVv$_K<__$ z8FDf;koikbN{Miin`xu6>E$tfO2XySG%;HdkeFYT{PWn$jdE)Pjmlu1mJkZ9mnkN@{A-ecgYCY!hx%}m(R zS!YBn6_!Y*2eotbb^M`}Ecn{-wy$M#Jty)v(jd_FEi`##)#NdT_G%|33;GR92Ogx) zH|afn?4j{Eg>QY5nc776#jzn#O!3D)Ln>*S98FE(jHB?3y@>j~@P?hd^#Y(xrD3Up zope!aRb)x?;9GVA+YcXOUP#U@j7#f_S2R+v=84iDRwBgmBhG4KB5 z>sUkFVY=Uk=-&Lzb$|RT4kVB_s__IQ-CG}z7nr0K5JA2Bjf0Wu1}eGHs0}-=NxG!C z+`wK!u9TbGxRufE@5Q`h&ll#tK8d}n369qQ#Te&!JJD(6;VX8HY3qDapyAi}6ce!YVPnZgk5<4a$Hetr-5?)A-_zw&+k zCw2iEC_j?tqAJ(gLT!ai^N5Yfl`0v6EiRwOoJjdhfX@;koVz6_Nqt~a`Go2o5Lez& z;W!t2G|umFamB`YF6$-A@RO@#I#B9D*5cB@8;pYi)+Ew)uDO__=$h8PYm#7wo~7)= zC%UEVT6Uu*=1Cy3WYX&OK!jiMx^H8dl%}Sd!}ni>SvEeMqiR5Qj{NS3RSBn}>h6qE z^m7>qQuCv^B?R;$hAahp`Rz>f77`xO6*Dc_opGUBKfGo&MDydF)-fExk=c@6PmrU` zWE@)??vPP{-d`k5IDx7mXkl2AQwfeE%-<+p0O4z!N2VO%id|Mm+4aZ^<7V{T9KWCm zR(yMoeb$d*Mx!UB+O3F-X$glcA`$61k>gP&lKQW)o7`Il^6@T&=i19C-Y>>yvc~^- zMeZUdgLG!T%~o_Ug7b!>9A1Ep$DkqyjR~HnsM5YmT?_it?cSc&_h04}js#wSR`NPN zA%Uem%@5-}@XWt2mUJS4Fj6?B=L)uv&mhE}3Q$I3LDoKWp3y(y54-bAtvdPRUX%=2Q5tQA`F-2y&Z>T9Ii=jsw% zDYYh5f12!A3Y@2weA2|BEvstuIZY3$MY9zsy|tw<_vx$IsA%$^o+Yj0FkpA{u5tb9 zdp$-*yxH$ty=}YUGJ9U3?A8lUio#s!{3xPVJTLC#Q>SUo#CLy|{$k8F)W)wU_bOVa zy~O&)L=t~MTeC%hlTpW;O6Isu820V)n5^R%2P}U-oa>`{D7DqG+j6scgT$(;Ar^GO zM$j>5C~z!5#FH2-yr%c@#SYpbya~Sg-ms9Dnm3;w}?@_Eaz&ry;l^Esc%* z7gmj~m~GQy=k$N>_!2Gjv`|0QzwdKvFBXJqq^wVpV;Dw`>n--H)O~(W9=kolVHs1{Af6NBY?=NTfR8Qxj=X|LAK_PPno# zFp)BDWnOqR-qwpygZ$j8o|8Ns@}I4GmcLzmrH{DM)u#*O9dFE`9llYfW-s4z9q#7A zuip4(^ospF4bx55*>T+jEa&5*s~#$uW~N#_yWCq!`kPD@sy*SzBr*)=69K8@kR z20Jzy-=V7)f) zZH}XpbUjZVCFp{r9r$>$3di(S0kb-_^tB5F zJT0;WZ=r8_yG(%8s_NzIWycH2Ilv%cyeN7YB3Z5K3y z|F|zwTK1AnRa^~s4RnZD+hfDSxyd&gy&%T54?A!-X5$AZg*vUM!?3{O(^)AH$H|$r zHqpZSc)Zxpi03!_Q%S-%MKy`X_kbFC)>jnO*laTg%(;%4xN$^==aTGoL?S)-notpD z@Ej3EmjZ>NxZ4lHbYhipPJDIwlV4GsM@%mB0+2i~{qXbhhvb`+A~V$T0=4u@I`diq0j0RZBWHF)3jGWsOVDfZBD z1SAWE;K-7y-T|`_4o#wjQcA!z<;&ZHv21ArcGoCReaZEj-Lyu9{HSm2#Bd}#Vd!iJ znY^d$Vc+V=&#h%Vl|3kDd}Tw&_U4Q5roWa_3AV{hd}pbyKir{w$`jV?1*38{ONJvo z@zK>Lx-&mrNd6>oH{Z%wB8o#)*$%1~nt;j#e3Xk0l|}fBtj{SR+N%>R^CU^Fz3eNm zEkZxqonEx1-oWpAP`?8Szl$q9>`g?YzI;arj|iI#9f5dIZG00V#?HDC=*xQUt?(T1 zXlxe)6@|Ze#-yowhTDwlN9`uH6I83tEBwnSeHCg>MJX!V`myh}S7#INsyEVkd65@4 zWN*u^MHhW?zm^&hJd)7K3?(9|6Tkf+f8jqOS)wLk%dbT2cy|nXO7zJgrWTIOMlZfm z%MT+SK0(S#bIa&+%0Ow`+WqnA_j^BBmx;}7HnS~aw?;TNZ`ja(j^A-RclI_dQ+stVwlpjcs}%1k72`uvUT+H z0CV;*gBe}7wr1h0zm!)G|7xp5~AZnZ_ zM(@LsL`^80vVz=U2SEuX~%ysSAqP3(;8AI0<8z{cl z^K55%8R<2@Bq&m9z8be=+u@7+VW)QtK-6IhWaD=R?ldlbG+R84b8H(>wRrlIe@YcA z3Ij`daAv)D`5Tv}Y{eGN?Xj{eZM*H#;sB zwHT5=tBqy!ShBYv%T7!7F(hp49VU~q@s1zURg4|RMaFUd%m4`v)d}$NjD{c7@Nm}# z=&HOf1Zdm?HbGB2Xk}$^89PF3R zZ}a%KavjD*cSl!-9hEzD26J{Y=*SN-=axqAph@<%)4%auEiF!#pXNJrshG;A$GN(& zg|dU!tc8{Ex?fadIu`Daxn~&0kf<><0!!fI4v)*YrP*{&qN-k?ViI=aysV5Qgo>?c z>N2RRd%Q+QnWTprMhds6L*a$L^I8g@d)l)Xm2PP#jYi`R(WZ$GwXdMax)U-&_^G28 z5uz*svfuv3;RD&=CmjPNU6Ff~9mGywa^*&N5RhtgXiA7CBk#&JEG<#z&tuDhOo6oW z8JiLttuY-d3Qba8gaRmqSN z)1lyrclE3Lv~_WB9rug6yq`!}5BJZ@)KP0KOSiLsFBBmDwUQv?OlN7f^kW0jFCRP4 z%oM)!`ETxPI#WBoDxZqu{j?&YIJ~YSVXF`_2zVBa`*3u`XM z=|kvwW^BbGwq#||-&kKCI*!KWj+yRaq49O8Q_i1f9Omiy)EzY#h8JAL-yf0s!LrQ+F}L)~ zV;wvp_P+YhvW~D$^5J2|i+*f2*<;c-dtN{yqbBEfuMcD$3&N!xW>V-PU#UhR;}Z`B z>NI4jgBAMgnuAYeT&H%EjnTM)mB-IX2JeCZQn}PNAeejr5x0|`HOf@Ojk#$^DW+h(7kY8XKRSYq!W^BW_r zWAEyPFFi!q-O5GiktxmVFSDq8>-b%h_n^-y`mKZFp00-9SwW||d%GF-VW%?*9Q2D( zmM5FOvG1V|@ONz};T zMWZNa@dZ)KQYVsM$*_gCpEV`l6o7cX*2D~ASt$!{WNoNG26wJd@Sdo&I9D{L ziE%Q4&6kO^6j-@uIn9?bqQT(bJ|jEHk3Qn>71TTG?DtjPaPp5k%$9Rn4DRzAsqh=> zr&itresS!jU!ldrp3_*_a$CJr6*LTJxYeZlB%W&b!F*apLCIy_w%no6s8D$>a=|_~ zZz{QMUQw1}-t}*j(z=3diE?-*LR?cc++AKPty%ObR5=P`eNA75{fU_5D}XkB(H?y# zjXZ9EWHez~{Z?t~0>;gpuHpe?NW`cGJgoH=RJ|+a=eMyKZ22bi>Ta__(RxH+{Ojcg zM?HUV5X#fE*CwflX$KdZ1Og&`9{%00C8LDGI($=6h{F|9>FWu10FxPi7~8meaW&FI zri|a1(%PR0hZmz_#wZ3`TV z{Q=|PtSvcCs6-%_6dYiKFbWe{@Mp_F6vQt$v)@Vfw5TdV)jI>v*?X_b24UyGwAgRme-y}F98?1bROikBHUAOl4_Nv$LJoA*mu{;^l&((9*y9Xq2=p(@ycde zPcxbP*`mo>L$ebCsM>wwf44nd~wKqq612KP|XGv*(C@eSgAObt%GpULvlxP6pb>?9+P zoFnNdex@3=9qlSFMpN$RtD;4+U(a)k;E;cx2;@E#>Ev2l1 zwv=%A3pRm3yvUcHQvVT+Ygx*9^)l-)&PisdT!qSd+C|J0w)j}(Pm@!#^LQw=a`g-M zl0jIUC6rtV&ajdTVol$Zlz{n8M4N$4v&w35aYz5|#yi)$iAHx?W*3_=@;jVYFi?;+Q@qGC# z*=byH{W+C`OgL?1NKj_%<~^Xkkt=&kYFy3Tc1}M4mXi6-SA%3t>iHqv87n}IiK>%g zWzaZ`@_l~!87sM}=DH!H^7wGCf%>RPK}_OtJt#TZ2)ac!1I3r+OU@F`+eTGlQTkxh3oNL7~I*I-O}#*=y;gW_td(4)yI zJg()Wa|eEGv(d+*V9kFc+b63(HPE9;Q#tpHTe=PEALUR14(v6(6Q;1z);!Df=2p)=&L%jIUhP;m2 zXl=Iq(DS*s?f`uIT(HePp4RZ?$m(;WSHf8?9dE&?^f$to#$M$U1+)k8Nkci*&+6Qi z%TdLJXQVOh9~tc`(nG0Bf?iHYRga}HY}GEot6ru>n_|<^kMY6_q)r^2AMLWp4LZth z9**{TS(;7*SnyA)))NC9(V@)Bpy^uq4Nm3xQGzko&CD3OH_N-T17Vcg9;F{Lw?D5K z)v8YD>a@rH{TOwt&`q{hIP>JMY1(rWX1;mgObFYT`H9Akeb(n8H2ha|D;=#4Mj-D! z#wJ5sK^9|zI`~$U6r1NrYy4JvT_0Ri3X_W{hH|mCiq|~Z=#h~~a{JTz^MOPLTR;nk z&vx|V^dHQmJ@qN``kN=Ycz95KkJ8lcHFa*_n??93k=w~SW}T4Ck6YNM*>tdAT2kbs z#GI?LIl1w#Kz0rphiZRCh9zZET-s|I-)5z+WR;lmWb)oM@Nb*OjM;qd@8&)eiQ`Q( zI?1>>r5_nNouIRjJQ|_&&l1PIWDMabuNWvc6%{y6=(ml5tP?EI*6`%>FJe)W#7ssh zeperY<4rYHrrcq14xoIWv%*1t!`wnC6?O#b+uFJos(ZVMc-?487(IR7`E@N*{VRtI z>PR2OV_aG6*84-pgAiW`j>Q0z_dSSu3XBAwk&2xAxGtV;sz{Wg^FU}2Q)yBaNlJ+8 zW|5V7K@vhgl-f35)?O(txv@@*`l{caq^GO^V?qfPC&2ARq9Q2ve5i1_qz=D4`J`DQ zN{Q>e7=JWV);ir=+Bc-aGgfi!oUyaDg`7wr&0F8gl}CeX<7pqBwzI3TFP#)gb2+F+ z_-M>@v9oRJSNz$r>aM7X;72A)5KJ;l#}hKwH+KBKnp&9&sBb;g(js1Z4aj1tvAU(X zM2NGLN;vJ^6-k}j@+Zi!O=IrQ*s3L})IIoNb|S+H5-G)(RcZtn+-$5wrb#PHbdjLP z2lG-E0$OYG>c~i&LtbGpc2F>Q;A}%-sWR8z5!_H%A53@;c&)M9*=k0u9G1wQuA3O) z*_pI?de(-^s!+5E+C0|PQ?sRVlDEvXBGSJy^Swqnu?JQV_DcIQvu$N9qtt(YPDc>2 zsuL|Ud`JMW^K?I_BgpHzd;$(?c-q3j#Iq?uea&n~)R8k}^X*L5?(U4@$o>$_qwL}OG>8_2*2;4v5u1}Ba$V+wdeg{vY znax9tgmGx=cDTBG#Bja)XjoC3C93!0FJc-CCcNCaJP9aqA|BhdrBm4mC(ftPJS!gq57CQX5!uZ97yf_ASZ%TJvR# zb|i%9*z3gGl}s<#(NPdA0GnG^$5$@fpNQ9cX1Gx*Bvo9UN1dq zd$Ko~*x$Kbr{VMrMyn8Pmtxk6xZ3qHG`P`O8?!USUbbYh40@pgANRal3SAVp78z6%=~u6pDu%3ESPq4y;t~Q`LUOGuo))jrRD>!I_`n6ibh}SaZgMs6dA8O z1{P`26q(e~27=+J^gjiv(PR13iL3TxqXg7EFJt&Pl%MLmlZTON65%M4HcNlyr*VG* zVPd6m#1W{=p`W`!K)tAmz|}qz@vf?| zFZ+)=)}a3^ln7bl^AlGwQ7YPZ7ONAG+Ni-5rV7fVL(%5b-aCcOxTosWWpc2YQkY$v zI}Sus=k7%t{pQS67?B2CEQWXmo}KimEL+0gr2a@$(P)wT8-b?aZ$U-qwVMDKG7W`( zDnL6wuEB;#skS(!Q9BWAk+H=(P85MRgT3b9g;`P($Y&cx^_SDSwO3dv?{-!yT$75a88?*m~0d&{b1e&nKC0u47#e_Y)AsOaC($I z8(5~D*98Br75GZE1~O1`>s??^4w-r-={<S&P@lC!Irvte^iB=G4AYQT)65@kiwlhU(I@l5cajopR|yta!|M!#jqU z@yQTZ_JF!z zU2RQIKpV*EE(v4HO8I4V=I*u3!>HI(GPu>4f5<9EMJUTmnDRF;7LJhllVrOCPko}2 zLty|cw%;<_$G)y=O6~z3mukZ|?#;>lmAt>X{wVFkgLKGI^3Sy@&l4k#cAA0@JtdffF=73xv7p3!yk2Run6alPuKFg(nEf242&N=)q3_?LR(N64 zP?W1N<}D2)_AQPfoO^unp%5ormi3LmwuxhRiV!yqf^zxxuUAn)dJ?Z<#iX;N5XG~s zU9SA%3P8~}m_@?=YFhh`pq2WP<-?^PJ=}c{$29X3pZTkYw23x|MO&!)^esD7jy$f9 zgr75{2##QSl0)fEw3K`4y3BschbV<7vxdegW8_G4T`q?pPI?;k4X__xDcU;&=g5R6 zt|WS&$%iU;&~!U7VC__*!%$a#~C~cpfAB_LZZK$6f5^f{9eweh~Y2l5k$YQLpmc ztdesk)!{ursgq+PW=$AGHAv1X+-#?q&EY_qt?JRqi#zq6?)@S1Vg;9(EOiU<3^R=1 zw!bScKC*#px=}G?PhdFjNdv)tJt06qTl-mhUt&f(m-5YCQ=icu#&eHiNCWEOtW;R7 z223&kN}lMbkGYmhsXWl_6PNk-+PC4bu!l zc!WB~vAeYMGNaR=aMYZ7rw+5&Wug49WmVmzl=1FWSz=}aQS{bW1hcFs&C@d=34|`W zgydsejgO5%4LUxntg0{5rJFS_d921(fbRn#N7CP3&%&7ikdsTyO^0E?Pbm@6l-Rb?No=bhV!kb28$U;NRS$@67eYn|l`qzQ#UAmBOI`3-xN*eL*AAWnbu4vWABFnLzg0ent{GldzeV5@nZT7d7yF5fvp&9T)rX zyl-IK=g>u@$8GK#36IT4Za$?aNXf*=5clb1`0C%}lIm}V*BWB)B%eaLEDG$Vowi(S zX1kd5f7g6<&{b(sO*)MLLGsBJ~9H!j;q)TsG>^sv#!vl6cThT~YdX272!Ys=gI#f&9a-@d*6K%tYXBIH7!i%N&qV^PHLbpuWckG?$cib)Lc zmm!X^nI3VHax-1=(M9@v5TJ|PDN}`ZaD|IYUJF7%t(lHDDWi?923MGe&p9 zQdlGHhi$ri#Ym{z39Bi*uOgqlcB2Dn9_KnaBIZg=Z|?>qSuypiN6H-~1UKnQ51;$O zM&9fOqq?#5yhXS^4=Xn!i)^A1pZjLrILGzLgc%aP4~c}dg)*2%A9IYQ{)p%j35?>H ze)VUwKf}|9xTZZYMoWv?o`1TTZF$~q zE3=hI^t=CH8o_k8tmL!79j9f#_^&^8SJWk&inh;S(cqsqW(+g$-ULoO{f5BOA!2?D zkLDa8a8>&laJatf!H|^&DthfU4a3HUl2qD{z0_quQk&;yj*@@#{50go6xGJ)9vKa~+iESE@cHRTBIiEqP8!ZUck}ibD{z^P(>ECp z>SJeHz_#6R&4?^?&63A405M9dr$kr9cO4{mh6<)95BH_{(r=TId*RxxJptE|pL@;c ztK%S;(%zw+p*(-s$SY3+b{>Itp};NlkwNx8HhSZPWEz?C$%45st^oTp#k`+1FX34R zBlxJe{ey#{YOrvn{7`}}w{8$+3u}hr%ZKg$)2w(Ren>4v>9$Qk=ByL1EWb}m$-|2R z1K8+77a`1R;Lp#O9Y2D#RcxsllE?TGr8~litFSf4&)y&#uA7DDWIw$6_%3J4dcfFXH^rDqxN@>p_R!Q6Mrp9z#J{vlWhq!I* zDP;&-OGZ9pC6<8soI8BaxH}1ztU*Ul!CC9ooak#*Q=D964WVt!q_w*$p~qXHVJq%- ziUlifQ zQt0AvCRY`Rek9Zib7N(XeVn}j?vB#$PCUvz_)cb6o$k(A=cta}2pyT1^U7?6BoHPO zdWSt{Rgl68KiZ-)syX_AZ-yySR%Y2wnqx?z&GSy#DQzdvw$NJ$v=D9NfU~zSw1+N;5xWMp~GO zX=QlDtj+};%Z0?M_)8QnciK3@mp+YxdSUbYYF|vUP@`F{RA(KW-WPwpsHR0 zfpOfeE6Yb*S^meh68wrckVDE8mNj1A0vg6zP3%m;zeBJ*&VCd4mG-+c^OEc~$~G7a zCFP?1hkVaU=UXmxVYqm=o0T~6)Ix5Q(v(a@qGIGWWGLQOhIhDy9Mz2245l`UtJSo; z2Q;g@O!j3of0KJoj7uI`7&_~T-$pRL^!7t?8E_-{`EwuN3I_{mqfTQUVtlV2SZSTu zJwWjdf0Ob(K*9T{?F-mdCZs${2I)_O$ky0Np>=Fkl-D_q$yJHj(2uBDQd2m`uOud< zV_d#s>{e%rE=G3|wSuI?jdWP=0nr4F^T1G4RNu>ZM2F$*cTVZ0yg{nNOi$cIZ74j& zqbs1BUom<_rnK{&ewVdiJ|A+E6$pxgahe?;JD24a2jS9;@Vz>vc|4`?{g4;tb1`j$ zv*c!uy?eQ3N8VKtyINGn{`@#tgn!$fix_2fK$M;CEEoE6?c;P!LrDk%M|1Owz0$Of z%Pg|Ayrtl)c*sYHQH6r ze`Z+^W4B})lk-JnakR0=rHFaKro3+!cMlZf4P;NI$4oLgD@8E68nMiH*+e z40`2G85%4P%vzGaNc*yUa=Mt@T)eBdLR_}akJ9U)u>yy_V3JLB`Y3s|vvF$o`bT?| z#1N%zLf+bUgP+`vh@lvE2^sY0Mr1_{C_{v6+dCyoWl3)4vawb|Ay6y~e|G2hIV_!H zb=+Cx#m^_t@jGAMaMFFjkH|uxgl;rg5V8@6!dSP>WsSl1FIi=sOsOrZ+ zJEPMCVkbqDVl&^2Uv7&opEgX~o5_!!Gcn1a41_ghnCgZzH_J>Dp}d%H4No;}8nnFPZerWWdZ-n& zm!>@CxwavaM3XYos+DrPWzG3Is-uE z`in%-?+tA_3qinCQ{nsJ)3z|#Zixu6mi*iV?IJnHxX`>hwRo+7Sr@rLeiCpNw;7|% zN(LDkEprk700^a^fHJ=nc74qF;Fj;rPsJ1%0b!>7osPO(XJVPPcC32WVx{8fa}Pm-(o@RL;73xuD65%zGd|rlzT4ZDsiX03cF2 zGv)get6{kNcXHf@$%+);sVjeM-PyoM?eXTESD`AI+N)O5Y0Ld$0mD~|C|F9hCQb{k zDIO0kVO@|M%gLn(N71X65u|E%I}Yz7!STA1k7qtjW)DLm6n1AjS1z~=uT-6v6w!hP z-?Bt?WEqjb;DO0HDoQ&0Lojq8oN}XH;CM&f9#MfT+cGbdvwD6-mifynNKZY{tD4)F zI>Ag$K(eKJ$`mUnWE|$$rlmxuk0Q<~vS=31gt*O$L>6T}@f#?d#aS~I<+%tAlyGV- zsJQc#P9ufPXu=MR;uw%bkX-8peBOAP+F&c?Gk%(494FCV&@M&_GV z3Po}X)5*Mw@6}y7S3QDwWTDzfHp%q{rg07=L(|Dt-&b3(M2cbLKWK-$r?WonN6v(! za?UG;t;=DuC3>MH1m-lNcdJ^`v0nAvk?CxIrpeo+{&~f4tXe~}?Boj=oxV|)N|xPH z*2Iex+jh7jJ1~wowxEuz9$z3*-p)HyK8*~xSj&$;yK13*jizLzUA6V{-5HbKOmGF7 zDc6c(VYyi!IhY`DKwOwLP0|2cqR#4MYLO?j^8`#Y51B=ZY5j{$*TaEQ?n`lClVi%X zo}zEdw|-QGWuahe%CvGjJ_E}=(R4G<5aybs(yRUT0oXMWw$D zAzLGGB*L-_OI&jirx>)5WYtNrj2SfGB5Bor6ek^U=SMPpm0m50zoT<^TjSCa zo<07P=udA-LBZtRORzHn+iysjT11t&t-8waPfQR`r_;tpRG9f~?5AT=Lt)4tidR2U z{iD!HB3ejSBq%4f{b5xSbCS2fi+>3xB2T2lb!=Py^b4n%2i@^STNwaMDdvV@9#=4_ zlpORKQ-JzPI_=R~diZ*Cr+~~>;~`+UYogqCn+C|s9)cwDwgQ4hzxOJCcaEod?53vb8?mo(sP0IR%z$#rq+Uc@*v+!@X#rkv zRBQhLtmAHzpWcn^zvaZkD%k>nsSODS+FYgZ$7PMPM_YK1SJTT*TZ`8KRaljko&BLr zmktbirDe#mg~!6cU$AJAh9x*F?eW=M4NfJU5tF9Re z8LyAAbsCa5lAD!8uO4kx_kB?R0M9VtXj6Kmm94gC>$>l_Mm}+Lx~Ga`)~qs@n0Twj zHWQJluiz7i(1NKo0YSAzmOBr)yp>sOluN+%(~x!X5)pISV|U{0_4m1Ba!hhfhqq46 zOSTlv0MRt`sSl}n8%`X@8uNRB#;&c{g&NwSxnT$%2^F$yG9lv);(6b~rr4Oa$G5ng zxdJ9)s7)utdg@^ggLj?VvRi0KO$mLSRQI(kB=)jU-6k7(vY2kyZbAoa`tny)dbt8J z&ei&~q_Bkj<_%Qbzo?uqh0Rns7p|ZbfVg6O5*F*|l|zfJ0{evXd`Nu!l9B}Ji3?`( z@U(!m+ow9}%cVPDvl!g8vqmK2GUMOg2hLxe8nb~f_>T5)7*lI2pB!MnZIkH*Bsn!P zXWCt5SsOOefD9Of|qD%I*ED826a<8tC5QDyxC?{uoOpv2$wJqFQT!PZ7$Sfm~`sP%99Pr zINplb^Pohly;CteMdd8@W+JqSBM;OsNEyd*tU{mDD+r5MjpXlNOP2n1ug+iOQ{zN( z1Ruq2VPvsQi43$`A+~_xBOnC4MNp?nmTX4caa?ZNT1ed~>`{!{c|LPRHZ#sP`-(+S zv`XUU&yVXvWsvt9rnz*xOAJTT>f;KS5(0gE>}OZIjW-d8feG8=8S>i(>G4&-PczTI6{ zX?n4YMXxirqlX7vb=~)AGJ{6a$0J3Nl9giovz8+Z5Timot_GX2@Zymr{8@UUaZBx;8%U9~$rM@

}mNUqz4x!pKws$aB9WiAX?BNVZ}|}MIK#s zaI7?~Rh4Fy<)M1%8k;bC}rAr9rO*>sahtKQYA zd#B7Wf!Zyu6BoW-diIx2d5U!i>YyQZf?6xog$q|5*yvtWV+O}lGy}ZchTHKP`&)}2 z{7GdDeN5VSexkUsx~K3b7@&d@42+>5{V9=hHp{NHAtKX6(@nO}xy_(;FKy*piF!o4 zJ0LT7#?(!|%*&Y5jyo^e7q^-mbM+9?X>4Z|Z{a=r%!`#+SHCUn zd$v)vSH1 z2BFq78H&l6O_W^~6v6HhmfT5lU?VQf_zQ+xbQRgm4Nyg8+aVtH>vyQWcUbsV2s?AP z!bG1h6>D(Opc_l5lU9@Q4sawr=V<;s7c;R8Prmv)Jcfq55j!h=LBsN&D(B-|k=$Eq2W+%ZCj zEmo&4)oI>5hqVB2$bC`4+ugkjEya?KQFR4wH0vU+qRW|id$8Tv_nU{@jx81IuK6X= zRzR{FX!cilBR4nKvYmBXxw)~0q-*@aZqUe(Elr%S%4^*In}A#NX7F4+l2-yO0rqOE}1M6Lu+%+9HC(3qXPw~DU1bcu4t=y&@9PCE5oSiRg`)&;w^tTzJp8LMW(C{KE2MRr#s z{f#S`1Q?Dx{U9<{#dz=pL=-`{v-ndc+n~q^wNe_X5TdSG{PM>s17ZPQLZ~c9p<%;zie3*^*Lskgz1-drzN>8M#wB| zw0T^%#L;;RRgZFDP#X9O01rxcXYiSaMaLOzjCd}wr)5PD@;_V+jk4RRW{sxtt5M!- znYfe_fUU)-VS4Y>gX`i+jSar>$!)D+THG;xbEneb%8Ob|{RInR){7yABn>dw6=^Ti zC^jSQ5d3-=?Cuf+yGBC6DxirUI`!SW0&x5gX7I~yg*dhhmk z22~rS#l>xEl_M&bc(w8IM;C6k_vaLGuoZDEuHZC>aCK=O@WK!NHEHreva-k-?{-C` z`O#5lQRH}3HsVrO5EEGTJVm3(SnfRJRBUBeM<(IPB6VJ5#l;mU;22sBsV>!owY5mf zr{67li_pAM0`A#u+m0!QG@3(o`Vi#w0^OuE=ABTBdE9P?=eCxQ=Qt;SxA11egBG=l zeO;i(n52zeEni}$p1P|_7-kJSif$9k#|DK=jL8q0^mZ`mIaT?QU{s3rQUy{q9?~K` zN}ZL6`HXjKrh&AY#FfKjR0BaEfEN%H6B<{PyV25@ZokC`h_jn%W{+xbW?F-YVDfRc zaVi|Hn<1N#=dL-1V{NluZex>ZVY6_LwFG{s+jI%CaGVy%emxERHLzvLhNf?T!-SXoYybrg-KAG1f48gP{np#*1_ z%c4n~vna^U68X&1nxFxR4HLvZ9%z$m2bjbqCTC?ENy$t-09`V?HJND?8@hD+c*G`^ z{6L<(a^l{^tJWQR)#B`dmd#?fPasPRpC^-IVk$(xJ4;D5U2RsrLTc#+2tsfZLH*DmYW-k1C<%IeAxtv~9A^MaR?IhE3wk`i@kJB#(B zeU8by)S4|i^qdjaT8u!x5e`z5n~RINB8qwV^pE(XgjfDdt}pYN z{-{!UGM&}`0L&7e>Hh#%?16i($~)Jlte<+_^t!h(y4m)?I2HwGjao`>6DKj&-g*@~ z4ag8}93=XJUMM~b^ys1GCkcJVSs8uWzDO4vph>8$>00|BW#ry%mR>TNM}$RIf(6;1 zYOi)PU^q5ud~oJx6D;)Vq4`yTX7#3^S=~=^C6!!DX_b59F*je;~%?iG1Uw&KdzhuNKrcW7jr#KRbs!sJS5*iv@;&;y;& z0m$fCS}Rgmk(HVqp4BEb298ypO<|tf+15v^!!<7E;%sUP;RjjCrZEnY8+pfsoI$Ha zDJ_$0&yP_7wbBTaBvNj&65uAJU?_@Z%-GbrORttKr{sGYC6yL&nHi;=eA)p6G9hGj zZ9T3LyA zW!tcn&A=28G5-JvYFf#AErYk@duZG@hDLf$c-wFQ1*IY*0xLHrGrx*R8TBQ=LX zV;;Jy+Rphe>*%6T)9Vd{>r0A>Zn(wl`E^4sICP1a$ zX_7)RH3Sev9#QdM*h3PJc?#PT38ZTf!{(o1zy?_YJKYlJKLRt%S6x^`%X@9g=<0JR z6MED$!yGmpmZQ27^DK@^w3c)#uVZEWv=IQL5l)z*!{o>VeYj@V&t6E@1c zV&N|IsFt(|!2Ne=(we@^G??-+w6euGCyGglFwiR_bDuovW=(i3&ZfF*KDfg(Lvq?V zIVCN8n+eB5kJDJm{6jW_Qx?xBwP~e$6s?nQLdu9R*|?)*?-+80o!K%)PLw-YgqSj` zF7WT1AWaB#0sjCLs9dGo<{0CiMs}&QnlYY}FEf`1isLr#aQMrGdWZh6A#}kNZ*AJ2 zb(OP)V=Yd?X=G*7t6N{Fom517-_ZC0M?XBhXpG%93*8c#ujJpa58cOXgMI|PzBx^{L12#70y(=h9U!K7|3oVZ=_~5?# z4b;ePKf$n19VAFxaBmT9uTO8pJ=kvG;^M%}Gcct1s@xXnv(ajIx>l;G2YRdM>8o)T zyHLAX)eN&=G%q8olbFiS5U_gLc&tWPdBhu-?J}d4O5(t>Cs+io5do`UimHg6A(Uas zft4x5Z=sz=zTl~J^Lw!GXU&{z5thPcu?8?1hnB)Q$4Di>t*TsNl}q_X;pQzxNUdt# z*>zrXnA5Z37=!6ffemmCm@Y-(=|Xd zQE{ai+_+fV(_!Tn?%!oLbqrEL&9JGGYpQCBGcD&fPC|}tF^)P1>5S>2xUawQbz%^>M5^W5|x)8xJc}QX;KP3m`l4wa{HE{r2eq^cH2= z4IN$sGbGfUn@({!`94*U(_6}^{8~0^h`_JOqSQRCOtPhsEI|=~X`*lfN49PN`~-`q z<+K=E5)$+8wrw!*iQ1uY1>6LMA`Lv6?MwL9C4tDjEj=}dp6EdqZI zZ2;A;#B+-3SeKbnVpbKfBFe||oL%TygOkt|^~ax(f{r9bR}xRUpq!(c2QEED4%pyp z=B_+PFXu=_Ljo0Qo%>5o-7#Y?A{%Zih$Otb6G?~etx%XNU%#7kqdPk53Rj)5YZW*1 z-~w7)NX8P4)o!mU#f{9m;@9Y7odr8DfT~$T`oTxd^l6ny=k1yNdgD85fjly_BWz{} z^%HBL6Rh*#y_CGMIONrl>pXgYF)OHC%rv1=TI z6P;hFGA!sZ_&G$|2p4$p%@tF4{S|$~bK=(~=j#<>S+-EOQ8& zA#7De#~$2@Dsw9EKXqa&7xHno7-KF>Jlij@%%`0?Z91wT2}{G5QHNDB@kB_`Jil9R z^>#86u0E?Aj#7&S`Ae#|%AzvD zC5^yqHiuz!#cT;!@$qu&8;M;+(n|WJZOE@1jmT6Xci9jQJYUGpp)rQHF!OS=JI5{y zH7XYYT~8lzz}hHG&VQM|7Jpbe%@Qc{aZx5=_3X;o=G}N(#Of z(H8n}UxzzlaojRZ8^_;%Sf%kd21&)Vs3E9G!`@qNUdZW#M&@CeEv5df>LS_>U7Y0C zIX%5~1p(Prel3$vesaZW#uWxMHa*{E3FT5gBD@!uSw=YX_>A=A>(;a93PvNAUD4Iu z9%72S0Nkv!tdj%0VpKuCG%Ha#z2b=_b5*AfSF;{G5{+uE`;1b_sdhE1k)D#Owk$$* zk#=K((X@xK@I>H&{oPh3WoATMCo>lpQ6XG}JwNS0V!CGTqQYr_+wtdy~qafHU63^ot|>Frv0X zR(5kC6gHY}P^gL7y7S`NG>Ps109WP5rCQy7()nn1;Y$u}Of%!N$tLgYm(?D0l|#?0*N?BQVM29mR~ z^6KbIwMLo~aXkTOZwj?v7ZQLP94jr-%}~+&HjbNKar;IwcP;DUu_F#<-c+pg>>&V7 zHr!ChU039a1036u@U!`TeK>x17 zH|F5`=bA33QAX3Z&_(qO801})>u6ciz{7O&R;1YF343zg)bzqxZr*emlinuHw^0KP zua8?DRUddkWV^(LNQpWjV(fo--aI1PEdyCsNa^bBTK=qc%ovqq)uB=+CY_iwD;B3x zpq8AdHrvKG^!FFF(3th}T*q~49lmnIbu?miII|92+tk`d{9d((-C^Bn$T3#OE$a! zG|RnoG_}}oaB^c+W$t47w;py&st-k}i~OTg09mpr0P0sh5!v@_TXl;~-Ll*0{jxuo zCF)dWaQSChWgcvIGHY>NeRT8DauphBPB&W>cX0f36qcNHC0%jpj7_TmK5ujYVuBfbMtaKPE^AlSqpknjT!EwiMQEFS*>N&s_4BV(1kdtdB3l@+~gJD6*YirNuE4wS$SfkVFlz z3YoSLBgKsC5uBG2D~zkEylW(xbS+~#GuemoPD-XF66YoVcCX6`sqe@H2NGT+e01pbzzVm&>5dH2lq|+{c>$ ztw>Zvl)qZviW4r<;lW94C0sgE%f)>lb%dml+H#m=-JSn(}U)%^{~&^^Uzx3S@(2^iIbjUa(NTe!3 z4OJ^uCF$n4_XSH`GCl=~cKuPPc*ZGfs8+UYSI4KJ%JRHwIn>u!Opr4khi254y_lR0 z;$6B#{uPAcTf{kZX~&Y%bVUWx`n?@1)98s!mfBsn*}1k`lb&e9L4ukpO~?w7q+$rs6#%-Hn^cca$0ITWDLs zXE63zk#NE5fgLjvH-APeTddV>i>B&8{qJoZwA|qs#F-kcm|Nu8PM}80rG-wE0JV)W z>{uspQlQ-+B4lYH{wUIrwhHGIjK7n})7Rcdm zBhNZ6i!WjTXkt3V?h;l-Izrwf>xVBm(;YF#w2djKv+K-$f_9?gR(Iu>X<4fkZ2bgS zpjlImKnD{k80be5GX~3loQab{9-yTsW}Tj7pJg6(wp_Nu7RH6e&L z!1<#tOfsgYs>?~Cr9GXTE{K(7rPLUnNvoNaE$deBU&!Do*xl&$sIw{+!~Bz)H2|;7`mtXlhoG7j$XW>|cf~Ps#k6)bcJM<1I_ev$|yo zLc+IM53EFMU$qDJ88(X3X1NwImG>ClJ(AlFF8=`FAMDx4c^sj+j|OFZs=!#qE$mx~gTCflblgCJ@IR~iwOq6U2{ zrFC^eO=g%|W|$@Hy+whj6nRXI7RYJg<22ew2A-oKr3^Yui4E0VN{ma7QbMqX;lKES z43`s^)1MwC(}S5=DcZ=8yu)*CJ9!<%KRL`v)pB|?`eHB4*`L8loJ@BvJ%>y%>MCe8 zHg#LfqpOna?v6xss4ZC4>hq*((8CYPZSSmP)HC%?)K@}gQWdN2qYi|4t%Kvt+yVsU zvh}G=0Ho}|J7|Q#S~nFDZ{UgVN6Pp)JLYmOvL0kdxfx4GD4TpE|+GO;nr^ zIeDy?Nog(#aTmksjlT+fF^LL@lalk8b){5HodTheTAxVwV5*ghx{S*luAqPzosFiL zqj*j!8g_Xw%P$O)Kl3wZ(>O>tvtJ|gvYV?0rr)!;q);ex7F&xiHA!PS? zc0-EhGHan$w;b9RAghv9*i#bGsO*#R!Dg5jKcxWW&<1`@yf#!4aZYYlY`_~r8`l08 zblY!F4-_rTE_v*05Or|&*~4)RF_U!3Du`jx>A%Gn2aI}mX?=vosP#uLU1rHConKO-)r}P5LTdzL zHJO-IzY)Pl~w_GqtDBVOU?=@ULt}k zPAFr_L+D;32g0_pbzT;y2YksbDoH}Srs5lJ4)B*O0cyx54XQ8iwMDo6vkV_fx@xMn}^lA z9*Xpuu1cw?1~hq`MZ7-^Ir)arLgf^n5f?Wt1`_apOpOQB5qmhy#m!y0mh-14 zR(pfXEb>g(IItu3ipGZzjWw7!9vYAG`dG1>YlLAzY!hK#x5+J-!z3kJX{lD(8ghsa z>nibB$)|R^7?_xH*NwCkEiK%LJ|A369Dlaz-rcb&5wHuWv9VaDj$UcwnS8994UG}< zMxDyE`Rkc3%)+NP$O3J8xKO1sTY!6lh1EA~_F_$(I%^Tbn{Ain#Z1!M0pRNg5Om#d zDvwl8?B3E$;uDO@;zn-~+92&da1W!}HSOY&yN%^o%(9tVe6@mAk&e1N@_gPW(mVX) zyI~=x7mMFaL%=sp)IZN(H$2-wWYAQb>0Lw3pVJ!~YVkDLtx(Bz52k}@TkkHYgubd6 z^a^#KhWVvfQ^WuD(v> z89l9$b;kr{B*oW@dRC5*pmEd8Tq3!(GnkTKQ;p$_y7ngWSlG*fE7cOzLW8SF^(0X) z6L~?W{kCA5cZ1-R4rkLFqmLr?`&O-^+040%Hf`;ttO}_PE3{egG6Kw(WbN#Ti(+Ic z@z5sQa&HxR_hv1TC)`v7YEZ5j;Wrl=>_iIt5Qd9 zy1p$iRe)r)_u7SF9^XzHz0`)5B_)1l?yAp`jg9St)o)Y-Q^?e(Y7_>UmF+yO`)xR6 zV17Cj%(<~4zG`6^k|(ZEvs#GVS|?x^YF*O~CFYgvcw}E?9G{hx72aJ|hW%E1GbL5>42Ee&uU(gE=`7NwA-8OJfaOfBzQ&EoWjilxGgYG(o4w zBQe$fn&tXWR7k4K6sZ}D;;v56iu+YF zP6{jfJw31`mnBw>6^^N9I$x?3_BT3*TY*(Sjq4OkJ1k}rQxo9_Ph-ot5x%K?P2rn0 z{{U&hR~z^c{!+<{v*m}#u`tmKY`XH^*$AmrvoaLX;Ye?a%mxw|#w|3E3VeC%&kimD%NUqa;8(j>#`{^;K8w*CO*>Ti4x6r(#hm-*OH2= zZMNN84UnkZT-L=nO7|R85~#0xn7^hPj_$ig(H_t;ycbUM{NGlxyqfDsw3kt`yQ+HZ z9=vg^gH^EjnUG?#Xx*r@oOZyLatNOFNXn`;yDFvr=>VtDf8R(yLS?M9;B2VqFHHq>S4g#iruO zHR#)|doiy@L$CXUpsj##FL$HMl*7)@+X4mVwznsXS4<(vQ5LI0yMlO@7_Q-TV?M>O z%|E)V#_?H<*JjljZG_Bvk=i!tA=KN$j?YTAdHBqIOgzZ(AShpwQ{5cMbgZFL@H_W9ef_+F)VW=$f=`Ly3R$7+1)dh z3DwxYjXhUb^Qg=Pgvhex$*3s0;0U}!=d4W@YIW;n#g~W}G*KNo672K0=pVX1^PI$F zr6fcfm~(tnfa>oMlt9l&4a29LXkFo~MeRq`xfkheQCDHF?&8??qeFxEXtjsRvag_! z$}rPb4N7p2F1r&ZMJ!x1HW?%@cXD2&WMnr-D(3B>C#B4UuPaEkaPAL=8RFQqyRul5 zZ8-Cf%FVDY&;)I*ms@u>t{v2ai8-bg-5u=)L6Y||TVod4y5Xw`IK}Nw2R-SQ66MXA zYZ--1=_SID$O$4z2xj*X_J|2ln-X(GSbM=P&5M1fRZI9}C|QN8?7ANoDJ1ZFlY=bd*t?izthj``q#@I2 zjl!4x(KxhUNVCg5D@pp5iED(cj?RiB@u9`bG0b`d%66KFtj<`qlA26*!L*LqN2}Od zanWqu0^GWQ#hz%f2NF<&b-zsLq(Y=cmaaENbGh@?0313sA&>4|KMPuA(mT70XYe zIM~2q<@nyWS5)El*4XOmGRb!+c1k!E5b9#b_GHX5fXcWOjiav{h|-q#&2)SW-m zOs5)R1!U_?Ug3*Ot(Sh5hC}}VjATwfGD0{Pj3cgdlA_z>uK0|opsTQ%qMZgQpi;Aesv_}WqWqfqU5tPI5)+ZGOw&n%k zQMm+4)6+!eqIY=v(KUc#7>+GJgx*BtiAcOBuHiBc{{Sw%QQO7`U8)um+p5bb^zCuS zq`dmR$|RX_t3(Kb8&E!huyw^TZB&iL*+`U>xb?9ELI6vdDSD}&c0MXeq;W+AR8)Oy z0ogV?sB%*!sc#X}YCL_~`@*ueueZ57rXfa%`=j&`*qz`8|iXz1pnjMCx=!KRQOI@dS&}8ZcPU^#1rCphXJY~w0 zugL%|4l<=}L6uqq_YikS3ukv>I>3Lirho|6p*EFv$9#l)2Z@+T$b*6337 zN^ci9$=aL(xi@M`J-0y4RgCBP1{aY>$z8{w(7}lk+I%X0H&d+&zQQRpR*~mdHU$*i zUP`1(u?YNnukC!Q4$Weut}WY@w@){_68kqkE@QZOqbpnas-w-@3>F!K)TCQ%wxS(v zWQln-tVtN_ahYMsQ)EXbqmQ1X2@!h1@p$8B1HWtZyCU2&DgDtjEZrK%iP9{drxj8jnn zy)J1^yp9YKCj~cn8m}Vi^{^Ow6K~^_Z`R3KaRAhVS4{4;Rdn)+M_9x$2|Qm43_YFW zgm)PzDUh5v9$UJq_YDsx_tOz z_O1)BaE9L}ol!K{zCBvO#b$0*H!nET0)0c05q5X@b4Il|Z##uzYJv>CFl`Acf{7BR zV%^Kl(^Bc}hb9i6RnWg}lt|4xYsg_bHLDf1ubYir3CEt%hsB zOHB)mdDf2NuzVb|SLfl~y{#2?nPZs#OP!77m9!jTx$$bNEb3rY)>l0$b>ttZdwa1Z zM;+qtv++UbxNaQoAX2Q1!;D8ytPp>@UL^4kke=}cJMYQ=iZk|#&Fy_d~|l> zHONVn^ms_Jh}T!${{Uu`0Y?s-Q2S@fY#gDl!RcYWl z-7wvyyebopFNU!*vDLt%O`xU6C_8@0Dm3>Fu#sVs2C7b-2Dc`?s=S(2Su?^M^C@k! zCL?UN+O`nVaI{~MdZ0}V!ThA*KI>-kfLpre08t%1(aYkE;|~dU8o@$TTX~sX>E13> zfzv{-E!T5f;m#7FWBD#KXQJbCj_GuV?QNtvI+8ZCWCZ3RTUhkDai(RrV1RcR9HfZi zg-c-DZK(Xr)y3o2yxc<&PPwsjF$q2H;-R*-vQGAH#%_Q*Ocy zjD^E4WS<_HH#A^ulM@e1qcX&o?zpX|aIL&aeJc;2&vQ)SlXd? zFAJ^a7=YKgb;P|K?=rd{;Ls}aDvLahzLybcvBn`a{?i+b(^&Ip0^9Ur!(;3krtTpL zm&m%`ut445SR-gEN-TxSTu&6N^XQHxh(mkhr!l|HgFcGD#*Z70k%jCgu9bl$3Rz`Q1bGXIebx4-^3w;-N!t;RxN6##E+2Db_++1UpUK5HESLZZ8yhk z%OxC_>7+F&wpG~VqF{~z@#08C2ay(ZRcKWc{7D8PAv-SNcW;V0L;CsRh^abaCyxmw z^i970KdI4ZJ;aYyeJdTG`Woo^-TGno1)N2%M=dh))@(k;;r7Uzd5D=mZ!#&Xro6kG zqEgzNt%&ckk*Rb9YL3hjDhk~S&OF1tOzt_Ush`0B4mVm#Z3lK z)Wm}6hB<|r3RFs;AA7Ps@|I7PP@6_ckdvLd&Fya_G1cf6{TFI3J+NO3MBrFr5bi1T zYVKUS+^!Xn#f_}vUw1yDxuRmpojXF9KT$$9JWflG8wy}4!Ls5b&<1hV-j@ew1yQz0 zN9Od6-}N%%-K0oNNlHC0JW|+dkvTF1W4zXOQ}lYdYnfb{qFKZ3;~%2L@;rwu?ZL{` zgJErJXKh>Da>;Ju4Qn>Cp;T!^m!)py@`#YjjO$TbQ`|Y4FHC&&$S}}mc`M34GeWqD zE>j-wQYu{!iI$sx8g<-0)3ix`cKgH;Xep~rJHC>NZ9h;PdKRVUxfKs-o!Zf1bol^; z>{AiFx3-0)?Nq=osmb7FaV$N7$z&=FiJXXAXWn>y)lVgR9hBTLCnq(HN(Le;eaf1T zdB_=$1dLJNE8y$6ldy*tDKmuh;c;F>_!)aR&-X)ghI`^J4+}&oJWcWUq zRZ-WajuUmR3pXmsEOA*C?Zv*bwU0As+J|B)%j~z!LA3-EKbKLHvdv)f^B5G%p)rY* z`8m6wHM|8p_I6_z+UbcsxR!9`_H<zd8y}m={>44vW;kK3;m(B1?5xA<+d@}W7#zUN2949Amh}0 zjvm~UmLTNFw>0?7Xi#da!#&mAKJ-{7=VtLtTLBq2j!sS4LpO!ev;$WI5#nSyaqWpG zuB%rwB%#FH!Su$$T#OFtBAmTuy0QE+woD6Oa$bKa_I9)s9kZ_*g2=oYC*Bf4p$*`9KVf=}FE0x$ zN4PCG)LRL#q14>7D;9eJ%PldRXfj`@kWO5{knBjVGbO!=1?1$<$CB>2q3-0#!V$j4 zO)EjFs(SfXy&ntgqY8NZ^r*OEBIM8=iPD#s#632bG&*`|qxRC}>4ua(iHcV*dcQB53fO+O{6kC;66prOLY46Wl0mtZL&M}P{xc>l#*jqg|^;&Yl`C>yYyA*ECS!4;0Jb`*|IP)mpB+GW< zPNS_{^O|kDpnIYz!reNxM3ju2`_o%DIP+z*^5ZKrY@0Mx%aq8vuI)nX;T^j`%;Ox# z%I7_%YaXqP>(UsHBBH&?MA-<7UtF?OiI8x_ltmR!+uN;`X}h+&%JBZ8kB8bdCsh%& z3iU^wRn<)?(cL`Gbw^e;s}aUD`i8c7-DG!G^vy8aQUKa+BOc4d^_1rj__o6ho3Agy z0E?#64V$vBFxabvZIFofwA1Xue&vYcqk5aBnx(2Z22G@zorvZ51*V$i z_qe^?ExZRBXYo<37ZBpQ@;Oy46#cV{BwKwPWQ9Oetczf9$=oj=#hIO#IbjhCZb|~w ztDw17G@Y-UmzlvO3AYi$-fPvXNR=-buv~gu5n@@bmT6h;SVwLYb8>YoBl?FO9k?jS z{M<)w3*&CKCkZVSy6^qQUcreeA~u4w{N(^yyz0DX0?J*LoK;3{bQpE)I+j%nA(?hI zFdIK^VZXv@tNTU5^ksr46JOGs4<;b}xqV@7C>gSw1AUef( zCTVX1??=*2*pkeNjiEu!bd`AKJ&Edy9Q8lc3QY69jR4Ymdp$;{g@I_83k~VrO5`)$ zmz-o4R+cf{kZ9{Q(%dX=8aDIaFl0>Aml002jfZ8)eU-*1hF!8rhyMV@(t<654QZu# znQ-HjBL-xrcD6=UW}I#JEKixwNmbiaxFyI5&B~R7diOC$@+=mX*H|@qYBBj0Z?*}c zt(Gx=kEjcgel=$3h-bos756fLs+V+Uf#Bf!rX z%Cb88{FY6OYAmB5u_j?rS1VP6AOrv&b(TO2egs7^vodKrjA3(#DkNLijV}@a(`gbX z64bv6tW|ubPc93wyG0~Mt~MhtD%*_y9`Nz=w)*3O!ZzZp)$2vHa!S*% zR=JmjBjky9CY+gNw&Yyq3g}ebT%$v9lynAs%k)K|c4?FU04M1+emfUZG)C3DUmiDD zcC$<+SXom^vX>BTapx>lxl6>FCthY%%Z>9San25o!d+ndPxI5WE)1*f`OBi5+DJt- zsE=ax2uIyp0XA|N78@j!Qqx{-EJj8Hs0hl6Bwe6A{$h&)%e5yQZs;-(#WW6UIQE_2 zWEAl#bpF-B$L9?dv6^78Nd3&NEQic}=|(0D8;0jJ5aKmKmV8EOwcm+2KpCj(5;5lP z+ue(&oi|K9L6U6kzNZB2MyGWKU9MSm8f>wQ>O5%+bhcaKDz?Gom*va zZo4VTHS_+Z4p5w9_t7zof!%WKB zw>^g@Qwo4I74OuG$fW5awytmhQBC^W@cC`ztcayIQs^V`SR>8b9|~gb9M(IEOf71& zGY4vqP3QTxEDEj6Dx(gzqRnYtx{r-ie=B14wJb`s#%uD&sOu`7M`bXg%E?HA$ZYS$ z90TLak5ewotFAJlH(I0q=w&A`O*LXTO{2?ka@3OTJ}9X#UyM61xS`g-uEnz(Ph&dl z76o8Ip~xk{d4@YhwmGt)Hq=6CNhBL>I^ZVgVl5i-5l)*rpWX?5H-0EN3aR8ipT!)O zo|@`7s)L$;n~4V7fnt}Uzjg4awfm2by&P0jS}IXvy5B{5shC%!Blg$zw)p$8?)B9t zxjLHOE3o3p)cp_kRjrshKn_+(Rf_# z?d&N>E~vq=w&5XAWpReW{eki*^=*;j?l>ZPM~Js!&4 z%@?mF_-w`@v<-xt<0|C2w5NL8a4WYEb7#YrELTUed=d9;s_c7v?VXDH>CIooJ8Mae zIJp}GT;+}IdnAIPXIKoj$vsRWj)E`A-Nq95N#}^kt9X8|z2lFzq{+6xOr%+5 zl9(+iYE^q&Rr~GtVVcD79B)_bvidl-9lYT-mRY>~k}af-QJ)G-+KRZU>yKgN)2Mj0 zD6GPC>(F*}Kcw%>I++)aQ_Nj4H-)wp6jhx!FMqzH%7xh#HYJb%&#b<>Iq7hWYm_hn){1(qv_MJ z-%@^b;&i^TrVDO7xpeAWCFWkjcdj`iWDgOR=u}&_ger6$Xja-Grq~qo_>LR>r3pDU zalr$Y5NO_3N@DFMAgfVig6ov|N|1W}#;Tqls2H+i5h3>c?jc2~`J^mUJ<|3i>J8J+ z#l_}e_})%Y(q(nDYdG=+_>!G&JfN&IIS!-9OMGu@_IQd-T#;Fcl5rTknavLG~ zPs^OeqVS;t1p?;ztS&Y$h<)h#FUgJ*h~T>$CxT){E>4uPniD6y(&m3SH0MsbExssE zm!kM4mbr|_%5y%|UXxpiahW#MU$Fj7DH0vw2%|kG{{Yt?R`Z(-&x4WG!x0aMOp0=1 zbI&&{z9Qqnq%_y;@>9Fp7W^ft2{!Q4oN`=Tmu1ufI#g~B!6LZDOT7l!gd86YztQ!k z%{yVp_CvM9Bu?R2LyV7DJ_!Tgh2&2t@c4bQJJk9+aX)n4%u_q#$WZ z?Ke<{w^o$*p}Nf?jt9CBb9Upv3&%ABxmxBeE2M;?gtfC)V&zrcglQB?Ydn5#hEi+Y zI^?tFNP4#-nU>_UG6+KkC2Vke8i^Z=jr(#H$3@SVE>Ez^V56@Mv9l_w|}-IMv3W0qGj4^rx@G|ETwesAgj%?D@{Rz11FOL zHeAY#d3B9OS-{nVb|j-BPe&w_Lgyi5lzDZR&rZuTJmad^`Ov-y43Y{|I#;}eqthQt z;P`aYm@KmaG((3uBI>&~hgwV)n^UJv3LLF4!nFSYOR{|x!|ij+QOoWrvgaF%U8bdT zkhhj(u8~s8VJBH57PY4H1gG^T7Oghfa4<3soK4J3&&Xm^X)1!tZ?>78sbF>&XqUTk zL~a_?mJNyEICFTBJuu{h^eQ5r@zUq+^xdgowb(US)~4t#F`C<0-!+%h+dYs;e-wch z#rr&g9fAVXSvKwq5W$$_jk9KjW-4FOd*mB2`RR!)Vq#sL-1V`@swZ-elC?CYzPq8tpX;Bk^s+1=-($VHi#WMR_a;&49xo;o z>m)R412v9Mp+UHgs77ytVv1_XD7*kX`q=RDa%G`?*;18ckVtPmYK6_DczAzge3i5~ zY>o>wIDDQoIMm>(i`$@3ZK6(810uNBzm*Yk&M9-aZshxq^#RofGK|i1S%Sxqtw5}< zgA)+a+-55ZZZjFGTydtM3!*E!u@oMVq+iyT%crkA4FL#_=|0haP{SEnNry`zxj%2y z%wMW7JA`T;vv#GBDJwJR@tY}8-MougF3N5o^TObPJ_fEMl(LlzlVbX-e7Ny=IvWnQ z=-PB~I&|mo!DeOV8gl!0X5X<#?3SO3Ce(i7H7_%gHu&bPM{flR_pc>cT3tx|Zj_?7 z;mmI8vBPaWhT1_ub(3`q^9d?+InbMA3F#)*Xtn*oc~(cAfF$Jk-N zZMM)zh|O1^N=*?7Ir0lq=)!6w214atTWUNLw6$vGhO_$@BE!wghT6L{?7^Znqj;hT z`cicPN~WdB!!Jx?&^#M0)NKCaDxGm@Q+t=yR4qi>={k{8&OX|dikx=B(#fV|{Tl%h zn~ANs^nw=M_!}zHko5N+d}Xlt79DIyea-?QZmnu5ZMR*QWIgg{hPdu2v=ee}zT+5s zhAqr3z^Y(7pi)l?-$d_oMZ@EH4X&2e=eHL+o0jCcEe<5)YdLvFMQ;z>Mr&P2mTtlf zWM793C0w$NS=F@_qV`2!b$qF3QxfviE>)>fZK5#*vpcnLt#xT03SPL~rKTn%S!P;d zVab=pvU$TgTAnR5AB*^+Em2Zt+4J~3*m|#N9wk$gZ|@!pkjN}%D#}?jO~7s*CQ)R_ zjMZDtIOHIDcE!#^q@%?q-AP$DCj^;Kn`s&jWadg2GTo}~Qpzi>CLxM5gE%uvB{4E@ z8rmyRMYt2XI#ZjP33UzZPHvs!_=Z=Uj$d7pfop5F+n_LfkE*F~Kc8HzBQps(v8@siGvmt}cH?>mI!q_GtjWXe# zf)@x<+Nj*OCAxdb3xxJ5r<3yN_{9BNg5^wHQx=0uT*ep_>_>|9LW^$OlWB%sv~g*a zBCC|#O4q%`AeceHNDA4$+^eT$?mlKpMs@c~uvb1QsC%$!rbbe45Nb$I%_QX6XaE3h zEjH-tA=AoTQ0LX$YCd0as5cQVty1`O+I=NVTiJSfRXyvO^s(a9vl!z;J= zWHx3;djvGW^Nh;4pd<-(ND|At z0B+|PZ#2V8^@9px9fxw4^p$xWoO$W7AmDH5;aA`k^>D7#=32>|YzB;<-aFgQKr&V*8Qj;2bXkcjismc_Os@L9}Z`D{J?qZY_QrAK5|=ywv8-U6!m!mQ zr;269P167aY!0e@w9p6m#`muQ)2O@YNnIRthvcp!LfSFy$jT@#u4~n#7Ko@ z74{7w)gx~?jC6k0R_MCH@4+Ds(P=xLd&5>ab zx#p~k#zJifkS|~r`Jbc*R~Qx1tou_k495h{d!z1lKB7mbC-UknIzMl@ZFWCPL2Hjs zi87tbWt8i1uUTRC&6<8+T8_LT4D((3>g^^7DkihYO3Bzo+i`lkQ^(3N(DHM)3WN=8 z%cJMg{&Q7zyKG7xt$JPX7NU>t;xkNFG}SKOhe&I0Wzj&>`S_L(kzHx9LAi?}w<3Pt z*C=u(c_D(sjyNN5m?_9VQx0>-?3cj0uWddhhhkWK@G&%l<^&30hml@7Qsk}m?x$9m zx_L6${iDJ5iw}De!dzvYq8A2S=n9~%>QW(6`K=;VHR&v_i8X@PcbnZJL#fIe!8EL} z2ck}ikKq^%Tk)I}ZWJ5rvoCqvlw?;VxM3Z}W;jDwO4$+o1$k!k4dEDZymBJ!@i^AC zbww<@ltWFrOPW4|lKF2Fmu+$BrZAn{)vbdoG%pJ&QHIN?BtzePWG|PZ4Aqn#7!}!J_ zHpHBy^tj2(vdzMx?zJmQ+}D&zIgqs%OcMmztQQ8I#j#v2aObAyrap9C3z}$1ke1QY zuDqq$!jUp3={9wHrxuo%JG2%ywPrHzbT=2W8ATd(qY_IekxOEyn?`Cl2*qlE71*eM z?>vN8s8Km^azvXVr3?IG9&Y8_zPsYdIke9oEF1Lv5Ge6-lnmzpwgi@*?`w$Psm`KbuE>fcR}U)aO7dpXCFC-W`wR3a$=-Pd<9i* zJA1>@BXV(rU>8YY(yWH;Rhcc&2nvmD1k$C`cX#*1aMZ^$ZAiJm^6ud=YAqHldlRyO zisSf}4G876Oj0GJN2=D^z|w{HEo3%MxpBp#ZSB}ymwu*Ynrca`N?!|@a}XDZ2+Zh- z!8G@{dLo`exQqA`lot#7~0r<9i4dUU5W zTCkU9W!l4UAuZe1jl*rXDv1$W>9}jv6fdlrN-?sESWvGP&f=2GSL`wiCo7+x)LSb1 z%S3@9vTim?GF8gQBD&;;#AEX(PzR3=wONU#ayee|0O)=QjwNN}8E2+p#MH~A9tP#BFJi{>cg{X{Sc_cgWb zSc7sVw>7dsIO+A|rO25ri>&f#=_aOTCSG_Y=LTbSbp(wErs6IYABWc;MB%MYy@kl( z^0KQvhZKUlaGjuLT^8vQTex*YPpSAGeT(WQmA#eG&c$W9f;nW#9Sgx{0vQ{=%F!{Y~%S(bqdoqzQJjyUqWffQPOo>TWiZgSkS(n zIV%yT2+rCvg8ISLqf7q`GyeS@xw%$Dm_43?sFZX=y&i(T>JB8RD}DgaRTY z`TPU~NjLuhn@-u;w3))COh~lc7Z-=UA2|6!!~D-`aTQ8Y#0M1wL^Tle+uAEjm&Ft6 zqtmoshn6jTywLv3jOHstT376i8G#EDIN7SW8cws|0@6P&GNYk^$t4Z;jeN^uNt8>LY`A%~fNpn)8SNEvtm@02LjD58Pg} z>_-NlS>#+gOgBVVZxvFas#)AC%0A1Zd)d9a!5hIuc9R%;&s%SE=KG~lHbFGnVZ~3- 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 F|JhsY7x4f9 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-40.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-40.jpg new file mode 100755 index 0000000000000000000000000000000000000000..1b5a29433c55b7d4a652112028a24069ac8661ca GIT binary patch literal 66557 zcmce7byQp5vv2SgD^T2u7YlC1p~Z`nAVGt)5C|>>ibHXi0yT;U*93wVEz%a(;IxH8 zkmCCI{(kq~ckfzvt@q#CIaz1RCo{8W&zUn@ayxsw0-(@V*HQ=I-~a$PcOSs*E}+`r zrMr*2_e*yVHgO>lfQ+h^E(LXZQ;R z4v>jDP=-TEkyt)JHo(op&C$n>?G6w3mJLwg_!l+VyZk@Z!W?Y>g80A`ILven*q*w3 zIkHIzNeGDm@ATj&#-T{eChz6oBy03c{XamAtgT1h$tD~DE+{gP4FDm>m{GG~VpL#jk z`M7(TxVyV5aOgODI0HRgeP1}kz3imxaWL@q48NL9ZgQJt3ud5G-;{Ok0`(K|BdEtLX$kq8j zME+OlKV_B|{vSR1H}t;^?%i+xU3X_RcQz>eUq+}%e7gX6dgn3z-w78N2j}j>!Trzl ze{;D15czKu{s-(o;s4M3Z5M#@-amc|4~G(fONoO=iF4ZvV7+rrIQV#X-t0dUE*?Gr zhk%Ii-hJY`c4dmYc061HT>O77d>jG*&K-b~ihvM6^pKrHRO}wLit2qDPD3L*sJN$B z1TELov~;@g&-DfL+&uRC|8T&$qd;&c{(mw6;NG#rCmf4y@$m@o3Gd_I zF(bI+KuHC_XXhXg6;pkvVnk?Y2lXPN_Ke^RPfP#2e^0!iuD<)r*f)77;DV_Jzr zZWH^+hTC}n=^bTUN<2z{65xE9qE67Yd~x<8)q@j6it2KEwQ$ZOW9ugd7RN@BFmIba z{lCv&Q5{$q%#cxJ$R^(n2E2aANtQ-JsbsWax6dM!Ezm3zzQ}*+gqzU}sPT8nDCCHnX+e&86)sq{Fnd zvD9b1gMfhAy3Q15gJ_>onOx#VMMJl{~Y8P** z#r@5?I2`-nW|1O0U^Ce-N@8Sq;%i6oZ_v%uuUMS2J_xC1CeFmjuLNr23kM-pwPT_s z_l=;ylU08{F+lOKJrJ{FCisq;N_U{-?09)Qs186>MT?!Bgki*sD-ldUn7k99cVcZR*ds z0PKuA8~w%U?m{d|yuMqqL>#-gW9k;9+n%*C3tZCiI9(axO29|6d$ngi>BJtA_u6CW z7fCy?oEHrpNt`q|OukK6%=UI4{1<#VG@HKeg`dYmP7K+A`%4h~RBABweuuU7pZ)!2 zEiStzrxtS){;@1mm_Hn%jTG9^BPqzWp|UBDlad~ie9UxupVH{dz(g#6W4&DVjMHn3 zg&{ih+alTbNw?0e@kNm@x`QdhU8y5|dub-hD(ySWH@&xj=;(J^iLMS_E@kttz+klX%3?wp>&igqEx_?Dkc>Jl{;%U<(?{pC3%4`7w>%{$ zv6-_4+^UFXQ(}?FeY(-;Q|2e#iO-*xAlj>($Ct3hS16K5ads9NukmI*kd6pj6yY~` zby8}Ymw@-5CCn{gs{7$;{rCsQ=vHjuHs)_&Eh-64_8ph)yR=!CLz^HDKTa*_5a38r z=@#$?FwCGXO_OWx{^$YrER>d1q_ul9`eXMUJ`$*ao6{sij*j*5u^w=dm{+%dn*Uf#(@890BG6U9~6=^R|-3kLX-6_;bprn zfkFPZW(mHFA}}2`g*E7>&t?FMY}Ju&;6{gGsQW~Co=7EvuGhlK4JlwXw27t093FO6 z%&0UR^wDRM;2UV7p`VEOD_&%v2;Ad3f4mEY6A&+b8L#IBx%r_3)iC^Y=^w`8Q;9|Y zmeB9>;qyBUr=yvb3H7dbm&8<0>kbv0|qEwi|pS567X%) zu%Gx+3D5<2b!_Uyslq&ppEq82ZZt`sr4pKI`k`H_3uKMjQowsW^!6s)ulqk<_O%jB zX7`yA0Qj3j#-GSP zJ7v}N(&00L2a(`*t1evBloF@0dG(TjC4ZPAra@a+CDvtmDqI}yMpttvJI!#(W6}hX zuijFJy{rX_A0fAZ^{yV14|KFYA||gSCN>?nk6A0Fb9%^n1eFPtjZ-bPjKm0Nrx}7? zYuI)y2IR@RTY+ihmu(f__beYCot#32N}98;2xg1IqFu96o)5;GYo&{>zvy!n)Pk>1 z3=f2hO2ik>Hoovwrk0#qEIKt^4)2&Ypq)4t4^3c}Q7@GGGE`(SLf@|)X45O`;6NOd zkJHa9Vnd<9Ih2m$w_EzV832=cJzI@%r&(7}D z?9EuEzPVe$Xwi0K+s-)^FQ|!!iFlcs4c#UVhnWip$@sT0P{f?>1YLH#Qves)ps+1d zZt9INkMlZ{#*E;T0WI^rDNHf}gaYL>8wFV8@ck;fM8x^nStDCXcHh9(d zqgze!Ge?%F{MZufyq%zDQA0iWgS84N!2wj2TDCVNGap;`_L1lc$~RTA59EC539tZZ zV&XGe0E8O)S_vJO6#NV|B(GM5nfkTx7jiS3PK&^U8cm33CFIhMeD22Md9I4dK5(qIbjUn8ISpQJpq?aC`4wHn9qZ%3)?n@kYDkycKnT%8P!}K318>wh)$II_ z!@S3*FG8oTWJ;t7h>-Zs45lJKdC`=1o3Y=ypLr<5Drl4pqU6P3g$i@IY zXA^NA{Xn8IU5!HBT8q;WXchEypTAjQj=^FN$$^Sg$*w>252coVz~19jXWS=`TlmSY zsy2wch_bDpcnYjxU|MTH*MbJO;PCBRfF5ISxM7@)5CbS%T9K`CpzmR`5M*1~RiiYB zN%~M${VN&!izMr*z&}Wo8^q+MjaTd1u~(p4D6_ul-2ek9HLQ<8g^hf+39D4$r=%~4 zf-%ra9ZcogBMK&tO@E?`A?_Yu5aCmWu;|c_t6e_83@Q~;Z%9CTX-flBajMw^!};ZT zVuB216L6e!$stxj_ZAS}+B5@;F-fma8b#b#iuCyavw5j`>#(1fqy>e*du*4lXV<$_ z)iQhO;AM~eA%||qUru%=&eC10UgE2T!AQ6VC2I%vdyi$o9TuJhpWz%pS%1z z=C4gH?q5CS*->#OkAB(t4VB*bCvBgP$$FdX`ne#Sf!g|fbNLqVW&e=IJZlOLYM#cz zn&hz)#UYkP`93VHS9C)gtGVwgvXe0Ht3RpI^O3k(0>W^PZvl$9_Z*}-eg?nrb;Puk zFCx!_+nc&|oFVzyz#q?^q0F+hzk0;$P{5apfODYA2ceJrDU5j1m8msrv)C8%t3H9+ zdG^k2NkoZL8f&LsE9HMb==<>A%K(?p2@en68{xh@Awbo9aoxsJSClx)(!s*yuWNy| z-s>r)MxXdq3v8NIwls)CdP)-=xVvzMAu@9ov*EL+YfA=2l1deBebrkK)w1Ti`UUhl zniQ-6YgkX*=`9x#6KMt0`Nr_moa)se}u8|ZUhM*~(@lXbgc zeTSzC9z>d9@t-n9!zy?i@+)k9z&eO`%C$UVVJT?Z|~o zWR zorTYqC0+!*wR{achStJ}6aRu7NjBGnC%Kvus5I;S_EKvvtJXBBIp5NkITep?{~AYH zNF8DOOy28@$8_U<_<2@5mE^IUvNKW+8h%Dls%)oi)! zwV52^o}K4zPZU|c17&1*yaPaW2#4#TJ;NjGX(YMk=cZQEmo6~ho?AdNDp8ivE-r~$ zrp{@Ao0LYAyB;_Tsof2F?P*ONbNq@SqVkPKlbS10$-8L`*=$nRB%fXKkEcUqc*bWU zKZ$xr&D)OIl{p0Pz8=MIZ4Mz_b)Sa-p5Aov)f--?9n zqrVeQo(&e3nbh+CCTIAxwAY2|g~1x3<2aW+N#?rg2PsZ=le5m8F_60T`>p>0Mr zQrIp2sHE>rQ$7kgd9mLJY=d0Dw5%boWx-SK*=vvwIMr55I#X}Bl?p`@MFefc`n1_P z9BL1qh^43m2cQ~(bu=wA5W*-cm?_%%3&U)CxAub&dOrK1O_tn3<5$F%nSemb7o60! z`~)@EkO=*;_*pwidmE)CEW|IX$?f`W{31A!$p+J{cF%Px_g5IN{{7V z86KX3Kpc>XV-0w3#@iQX55D-&x~ej!b1s5<1UwU*Df$A`E0$%vhESUy`4oy2qD_s( zn&%caVPz+ok|tR#%ZC<4hAI(Nt&0*ygDh!zvk3Fq4I~>cegsbERv6@m^cX6@eO$d( z#D`#h$~wqr8(4NTwAYT8;W@ z$Xgmi8eQz6r!Q!2Xr)P%&>V*D{|$1@boxC6a0mZCed zF;9c$cY}jbJfUqGrv{zVF-RDE!P;j5iMBMVV{UoJ+q;UTXUfJ;RSixNsTjHiifJ-%fa0R%236=_no^W*zRk$I*_D)Yspr4E7rhl?lowE$;x5nFhz*V z$N2~hf3LWHK6Rya?g7;t;JyiU63oOlXU-jxESG2_>Ob-jw7+%SvU3*@zAxHj!E?>w zANqRqEYxc)&rY|MS>C9;FY9hC$-sN3mz3J#JmLg^8+z&S1GliQ(uuk?JNao{hfOj; zo-&KK>*Mq{qCaMgbynp$}Im)fG zZCicjMsvEtgfsl;EX}J=XV6IMd-BPT4i6%F)kpMmO^K*E zyXujJV%Z1nZ;nqr6d4DII};EMaCeZj_+`#SSh-NyL-ii2yfI!B&R39;wpg<=#yp&y zgydRzAa1Nmm<{x~B2cfh9kgB6%{1`bF$HBe)>Tgx!$GMLvYOwTh*wL?H^H)_xMLb& z*{TV_4$14xkzq#zFHW7^C&HYWX-KEeYmZC$zZkvws!gRSxXnD*p=(09e$-3{TJ$F_0*yy2GcY%$J}E_ zUWL*1?!gRsZLvQdTZZGi2GfR1fBY>NS3k+FQSdi0>VT5>diMYJhS(i`{22Iv`_r#) zhi9z6ih@6nm(E?}|D{a`a0Lz<7r9&@N7d?l$=sjDo0m-Z<{=dH_%Vv_e`k%-cIujN zYP+0S*t}(i%!fMvedIi*-+Pw2ra14x_sx)UHQt$W4AVyKkd&5dF%L1&CiS~YUHuh3 znmTk4V7uD#nP%ds?iqH>1rZ3p@0BgP{;;8BN>ZT;c}xaPFfN)pW)aG(02NM`^Zu69 zM3`m2{IkW!^RgTfktIYi=XHX&(y7s&J9;2E)3EqJvOoLzN2>3Rh7I=xRp>`Hvvp%f z%0_xz=Ft|r?J^t8+PrMve-#WrZ*W{six9K2e~^h3QLql!_(SfmW}o0t!JRG5`Yehq z5b}FS?iO$|SD5sN3tl2w2tT{*WNHbjOY|yQq!-m&RN63%WUB?4Y{m5DzO|U{+bJru z_nhB`#ECTZ*}rXc6>@`bVI13AcV!;2M%w(kteq;ozeZXQMIB8p64naRfLw(JknR;U ztBuC^BwRjmZx_olX?DQyimURdbbWD4RzSr=2G0rNZGy^_rCoZZGQ_?1Z)OXRS^}I6 zIE?D%k6n^Wp0%#ceh zq3X-K&ME&M#QRxh;{IXZru4l8vqAe8YyqO2Uv>sMJs6jEP(|~J9gm70D;Z%28}5HmS$x<{*$H)Kg#4GE!Ga14VhNWT(?T-%hl#TRmH@|lHJbg3ysY@$6V!h zeq?;J(Ktc8zFhW9ymsjjxmN-HoRh-HbM5}F+UC{6Kp#iHTYxg_^I60nZIaH9LS_=B zof9Y{-BlP%;5BChA5%bjkfQh#X`$GWOMTpekQb|OTW!H)!jzt`cbZ)$`UY}krJFh zJJj=IarxSkC4I3=)Cr0hZv9C*l!&fCRPQd&#qvayW(ysy^9ZbM#?0L4oAVW8o_S zRbIb^NP^gqkoM=!UJd?G!pQCI^I9^Tt_TKu1C!MW5S5TW^b>RZ$#6^Uz;M)jI>${` zYt`hU+h16F7o;gvh?CC30s6qJg0Y}J#+1v_fqL%KK#Mflu1#suJ<`OXL~6z4P~!RQ znpJ%;*REVlBrWweHy-_X@EMMdqrrHS)rho=XuMesQPnIoF)j zXh>NdghG^7QJU^CE1)t%eT?9M&?>205{>q}_Ps)Vo^mR*7`>S-&`pW_R4c%i1R6G< z#G@xw>lav`T|koZ^6+n*1sY{%8z~5WaNBn3{c|45B6MsU@=V4FU>ikMIe>$8x&@GR z-YwB`E?mnC9Hmz9i(Suu-Z1`#g|;^mqY!xIR{9@gY)h{t`^50tmu8Mn3GtbQbIxBY zR`iSUZgM)j94XbC^q%NM@&EmM-qg2REIBVSMqEbRr^TOG5IaoT8YK#Q_cWSpF+KEP zwNPk?#tzz-GztTLRa?sMd<8=L+mZ-yYwz}EC1%j%Me|bVM^a4 z*=e-}Kfg2=0_|!*%uV;vFv88PUfF#3p7E6usm&+O_9-2b!lkcJO%Mp_MVx@QfL$wg z#(N{+nVR&i$tM5%VWKM2@8Tr7hg2Wrufo-xaHz`mHeUd!L(kdQfV54_+K<*MEIX=J>+XoA+Rjb(cVDZfJKDX8cGRmpV&@-Q$^80h+gI zrtw4Nh9B3#v6K=q=)l3g$!&Ui8;+^K{7Qxek;$qHHg2L;FEr0cKNy| zBBRHreVr6iJ_#JwZGyG7K(0~zsk+QH6XDcVchC1Bzml)=LoOrYul#&F9pJ|&H;QdS zO-&Gm_P!z@@yxRvtu`-o?uXgX|3HK{4oDYl z7wOW0(n9L1?doX_#7JEU@~(&l=oD!RXd10e39mY@p(F%Sf52DEqoV4$7yeuAS(6e; z^!U0Qk!f563OOfx$vP=h+1cqL3%VAScv{Lh&GS~C+`136dg~(^-Ny-LCTz~uev&>5 z<75LFdqt>^zI~X!I_Ie{S}A(7#AnW;quVUtqG`3zkq>k87b1wnd-Ue3-%567#stV2 zKoXA#8;ZRj6cZe26~uadvuDjA^Uaq3zR*iGez~SY^h+Dl3d4A3D)FbNTY&#nt$Jo0 zi*jqUK$O!g6J>DbyJ`)1k6f$wEyw^dCqxkV6uF3hma21I`> zYRNWH-~iC#U(BB3_CngzLZ(&=f}ix+nBD zfHJagL3JqXc_@U!3BML6tM16l_a$eJ#au*(V2b^DG23YTpApJx-LF>H;%FQRIlgg8 zV+{=n(g)?BPqUhK6qJ(AUaAid^-DPm*|D?j=%Q~xHgB|>2{&`$j*Z}t*LKh>u3+;h zmm)gBwH-}`l<->8N*w81z~4F2Z%X>UV>YN`OICEpZod-;iYS-(XS2U zZ;eVu$f`EC6_|L)%4v>10WK6KD=tOs`IMx}T0v;5w zcC0M>)fY3^`&D|0Uhqw{ff=77_Vlr+0Nl|s0x_DTFEG=?yqayjg1b#&A!K; zmF1f~E713~E(Wr%S-UKZLbmUDDFBNbR9(;s+$>jVd>y1^!oEa#DUoMq`E#CT&fNLEgAHRth0t1$G%)3 zsqQP>6vn*qb3m}g5V@B38uoVKJKT+5BFTJcxMsU?QW8YPpR!+2{K5GnGX9GfT++t% zx*%cB#z_X*NZ6MWy}6lT6If{RUhZq^=NRjsrEsA$IOy-I!NZE8xtx27vh$5Ld#*vZ zfV2I-w*ZeFG8>1RM+-VnCw{*&MYb4!W!Vy{BLlf9mT=D<=MQU4oSY7Rxdi|Xi<^Yr zfBI$~G0dD73jdTzfA!>=p*?BzQvW2nSE1qiFVd&8r=}Ug&L#HJ?_yqb92DHcZcbre z%rmh(+QqeL36K|hl0e#KsN$}j&OvIu1gaYZH?JC3qs|)w9Ej7;sMW=6MSJV>BWO1k z@csmaFHEEqAbxkzrS!)uBc$g2jx9S=fYO0=LtikSavrPCt7aoCZk&_ma?Q26*cG)u z<-gVq@1)bKZ5>3Ys7cpa0d4dB4$0KOXdH|V(yk;c@MW2Zxjbho@Att%f?fFfBbCLN z(*Pt@*%+Za)er47Uj`&z2`Z7YxPzFIUdp8poj|3>UfB^LXTPv;>bLT{I;}7iJnG)( zhk1G&*j8s&QslaDq?Y*!l8NdA_kTGH%k}THyF#U9J2TD|@^d!#JCP2-e2K&4z=a2R z>#@$bB#myKToVC>%sPl1{(;VHZaj40+0yjUg{N0HL!PAlx>SMjODF8srY`M*N7-;1 zy9*-a7@D0G(KPgSsD1h^U4B4z^n`pD&iv&l;II7L%c02f9C*dqf`==Qlyo_; z%2PEdgU7+vypDUO&o#GNo9Tx=>{_N-vjzlfqv(q{YEJxMvMWeJQ2{aC?#VNV$v*6% z{n#%GXvlc?37`?5$*x_K9hLx~L_?{mLBnkV!DtA4Pg%!p5t^e@uruVBUUDcJWuv#YV8+zE;4Ul@7{j-T z!_Z?%4Na0hi;hU!@}U1Z@qDo<3`M-VG`)9uiGuNJMtOwfsksfs{4{9SN6dfT^=Qo{ ziuH@yJzW_U&FXe+73Ckn^oVB#V5*nPU0rcH9S^Lpo*N=Y`Qs9RhzBSToa@k{M*nMzk=i8{=fOEWQhd!CXK&cJRG( z`dCGk7&nJ|76T{kHJ+)%r)!QcL?=a(UEXIm`1>J8(CwhEGE+faJuaWFR;`DmkEm2D zxHHSsrmCDQQ$kUfZ7DRcusQ(-s)BeHHy7+#QriHUc>E)?yz*0t$kJ@7?$|?fny|j7 z*4wBEOqe2gZ8uY!o(arHHthV_f_7?AsPRgOUJ_c8P)*+$Mo}QDt~~zOwr&M&P=Ocd3+N2G8Wei=h; zono7{$ncjWlCn5Z4EoiCU(_+VF1Az;Kiy&tW7ELe6habQGwt6wa0__c#IMWmf)UO> zTF4K<5`T5xIA?jRH_<4&tC;K(-#HNJE}gx9UOD>;7%GrsHfjX7oE-~6)!K0(5b$Kuy?7dX0-e!v(SFrt>Qi^R^>3YH z1G^-1dk%kDCtn17r(}@-$e5=wUK6-+xJ^k(SH5JZ z*pa^_V1+g(vtGV*q%tVhMz_mqD)HirZ1O-0h_Xx>PXKL(!qH-zQ-0jR-?_aWkd!ZM zl3~_>cNCuGgZ@cJ%xVSdr@z}e)6CBmWm6q288mxim%5`GAy+prA#l=Jb!HyLV3BAZ z1aHoFV?N(nI9i$B24ZaH5(XX$xokk^BoI2Zd%x>qSp97vq+zRr3<;c1eZEdtAWv=t zVx5$MPGd2wwe$GUVm$F|BQG4of%I~fEr<5YbLqpit8hV4LW=N*#z15Av@`@W~ zb|^vPO$}}%(lZqTFriU=PU0j+F8@w|j}*X9eC|>9BkVJ1f6mp-l4(8*spIUg3rA*? zz0I9%+0(owU$$ z1(}7fG7_aSPW7x=t@dlCctmfw$shGxq0S zGx&k%TnaPFY!xH(~_Gtt{xaC7#*+~Ni z5j1so%U6$hZULs0M!K|;75v*S&DlR^h!2leb+z-n`fe=bL=$;AB~Yg7b&8@;*8Xiw z-Vl-T)tP1g`wvzYTa!<470i58?px$3I42Ol{A+M87P{j|2E{RY%AAz4O+zGXS$Ct; z=a_*1mQWqsiopHdeCk~&43f?NYs*~|e{-?cpNs#>YzAaz;~5C~u44Ztm6Hvr5f z0dDzuXg6Q+tyL&#YBGeLL>KA&9I^=jJFz`(o85dz>?H;z%17jzrOF39gFBd0Y-0CE zN1Kbc7XI>I%Xz@VRVVVHqdE`I1`!VGyTLX2OIseL#|oeOyU0gVsP+Xqx7LkulQgEu z2=gWbTdbzSjkch4$R^;~mRQ0EN6?UXGFA-OB)cXCfjC8ELL-VF@2-ukv&kd>s(j`%L8-|AabP z7ksybtswsuBKxs)ocPVs{MLKAobXQ{fh6(nTAGrs4Xt8NHIMNQn1&0lf zCXXh@m8AI6%mNacmj&h35nXN14-vB*QA3hY?RNx`@1pCGr6>EpBjkMIfP%~I<8(id zZUI-dH2in(8iQ!%djlL?8ehr62($&CQV>*r(DAmV3$KYiq^N)G(-U=4xz9-7|`p z{2CkhJByIKdo`}D(@)`3t@B9pzx)botuXjK zHl7^DTL8J@FD23r{qFsN;nyu+Wu*F8cvdD~J+6DQKFV^etL=r!-^-Uvv3X7BW&oq& zxOr9TcKse%?rhfgUQ+&eGc9te!$u%v_BHZbkm*Te|4*%t*jx#|oR~^n{Jbx&aJ5~* zQ&?O1K*4p^Pz~|m=3#tiQE;R2keZNxZcUvHio-zIr9pIHNPpdKfA#zO_Jd8`cAlE? z)8_TFsu@X!^Ppi2A8AmA%TuH;P~2gsoxhk9VN&tYXhMmv+`LFYm$@~naiCqk{@{Ci z8YMYPj&lJ?#qomL3!d%Z4jcZ3L_cuwH!~;p_j=Zvf8K`P0_Ftrbrsl6SwnZ-2s@vT z9sTx|L6rOQzx-)2q$NNGl8_WK6YH(jh9-G!lTr%_KDg|tf1T%H`JLcIWA5tXL)U?2 zv2(MrwI`)Hf*+irJ{n$`VZ}+UaP8XE;}J-!ktNxRUjUoQExY4Iorx`rE^n%e>d}>CWxoIr%{*PFz&lKQX{}9a}N1=vk+d4 z@w(Uab;?vn8)+QJV4uT74fgtXiSuza$~VSs3d|M#ES1+1sN5>3ft=v0IS6hYn3%u(k1jO|r; z2KfwG$V}Z@A-;g%^QLGwyQy}I8E?H4xW)vWeYSyC5|+&9Txr-#_XL30Hi?2b#u+>f z+bIfnx(qtdcHmKN&IQt1p-am?Otbo3iEzUTEGbG^)U_yXatW@?Qkmbyam_YO%-oEI zuof6-vg)KIxz9F2&C!x^ddVZ)* ztG;DeT=mtwt;G*%*h^Tk0B6h`ii#qAEt^~BD6Yt}asm7iKAXLkW&T_QU{8g_nQTklBG}BvtbbRLt371$Bk@p3Q-FAWVOUDzInp}*DW)qe1 zVLi|SkS2eZzrqkx7Ru>y%U;N$iS~G9*};~MvX0v56moOn`noE<{PB{foeqJ0`q!*W(qQLcmy^}RDlSOT`$OjNd>wAl2^s7VqykM2XU+$NtM27<$2Naa(#HWd_ zz4iPROgVxPw*X7jTdd;<)2YeKLCG|%EpOUQu6c!5zycN?=y4L{u*aDNku!4`>2>@~ zG^GU)JHW&KV5_}hF=G8K1Xb2McVMrTE&ZH5oFfY z;c?Toe^u&3y-YSZlmS<;d*1@sFmk(#`M#ju$sZ}9=XQLmqYlt?D%9#6$SSr$@{JS! z%!-iYCV5zc`^og-u}%0!LhB!_jCiwDf=uEha!UBR2u7EJTFSRiOvj9A0yd0 zNrrOFJVvQ~^VtT_6(>EdVPPT}z(!}z$qEM$i{Vrc5Q6bD?!wF1M}E5fc_gZko|Xj5 z@&&JXH{j2XKS9;~b_p_0$fD2>tc{NU1G`Qij@r$Gm3CbMiCYoS?r{yI4V zv_X%rO&NbUxMP`zcEY++C<{ftD9M-AbuTeVK)Z5-*6AxQS9Ca`s#h)1k5{4YR4I%c zXns|$1^2+K8e|z#2mwuc`EzZc$zxsni)2!*I{1Dnt1?~pSFea+Op4uxO+o!B*&Oafnf&Mgp> z0(Bm31M@qSI$5i$J-4Y3UGK1UwTg#5)V10~H)AJ1w7yy`E}hsq##pE5merJhD5#C& zC`CBaw@1VVec14PbCRI&h-}4DCm~iS={oc!kxLP{en~PKQ ze_!Pq=V%B7#e$VGVJVdz!B+u)Ec0X^^LCI*!RLQ@xne%Fby$s=Dv2Du7fxrA%dv3! zSc(*TRaFIVPhm}~c{v}PX8LU3$i*F0rq7|GgMUn=M%qaeuuMDR30LZsNt}x{FLBDU zkaSTv3>d+-65zb8>aPP#!Wu38TLLoA^~d&GK0OI;B`~k_!q;q0$o*ZZW9kxbwN1Oe z30ZHj4Yv97k=Ezk$XV_Z6Qafg`@Xo;*$~c{N6%JVQ8;-rWxZCtAklh%yv%OSB9Ypn zPnWCJ#Guh6^9bHJK6%yoP1@&@`ov#gce#1-apW&=5^^hR%f;AO#^3cvKFayk@v6<@ zh(joN5oT!<+pH1o>D=&m&r%zjL%87K`RrQDqZz}GnpVx`-hPTpU~(_D$fejrC6zS1 z+EcX@X_tZtQ7roeuuNF}3-cQbF;s6c0V3L(2H2g5rKLJ*j6+YuwS7|%2I3gnhwKI$ z6;zn{)3ia7pg`%A1-OvKL$hg`ZG)Ym$?cybm`1DSCN=O5B+$+iJ6+mz33s`WpJ|7&&p^m=p2~(Yg_8*foRLIq#Do7jYm zzmYy9RVIf|+ZdRhd(0AlJ0!@pcmjYt8qJ!Y7yH{7RGSXEJBl{u{|XjUB^y?`I`WEs z>@uCh+)P_#&x^VYt9x+7DleL4lnw5Oxs}g{;+3^DA00!&ds^`Xj^1i8q^8GZM)Au5 z69QYd{U3E6t`w$$GP(Gg@&|WHxt9tdZP!-wLISvr?eQol2Q??CtRuE~u?0#UrUboz ze2t>>jVrPvj|VRK)oe?49=Kc;(!2?7<#@>6+fVVXi$xNjqs9P0&<$XU&^i_Ow5C#7 z{rNs-vysEf7gFB7sWNfq$z~GvWbM!MK2Rm8c4bS950zyYO;7b>rgFeT@9WnkIs&~` zsSItiHyf+GU4BTb zMnEuFQ4E=Cx~cFxhvM-{Jhth}Ig6op_AX$H{(=OI_LC7p!oJt9k0_CZNVu z5jZU~JEL3~4f5N)fMKTMaa&1=hWVh$VR!<3?P(&Ulwi^Ar&QDU=Z|i9!sNY_cPk`$ z<463eFzSf6{RIFi_I9rkWLXq}X<8;_G4zAQz7WGY?1+)Crn7 zy@Auy^U~DdBdk?hEiue<*AiES&9?>RV1V?b^pK8Ik&I6@ z8iiLi1$Iht{pNpVo5Z<@4+0x;nr3hy)cLg(>VoQ*Rw6gIdeZTj1dF5c=84J&O!xQ- zS-QwjpIjt1Jlu8iXM3%*IUxO8vzL3@TEt+?j#noYAaRj;3}X1#XW{BD9>9ULsVTIZ zA&1Qmc-TdH9n-XMRA-#}YUZ>PBJK@boLW0_ikgEDIHf5HGTq@Np|8W`$)Y7Hl{bIP4)y}k*WYvcYFDv#J8bZos34J`5-=vE z$Z#<0jV->9%h9L%)#waheBr#QQ&+ehMze8yV1XTyCL7BuDOCM^%& z9dn|+@9f|i2N3hWM-cJOylbGA#C~z%CJ&i*lGX4mu^6oKmPBo#R=`AZNzcsfaABCL zk10RYv?b*6M3UQh3&CJ8c>D7#A@t!_?|Qu59fFRJmQ54~XNd1c2`EZKnBSJWhTozi zqDKWur7K2DUuF)lUg2x4h1s+3z!NL}zy}79_%wNtLOX`IsT*71p9SzO03>nlNo~<2 z7v6)<$4U!(HFt^U$Lq<)TT83(bq|Y7!Q+S`)i80J8JUN89G&a}V`&go{xZEyMQo*u zpTcs;oaHinDQ9VjJ4|=PhFOJhXmZE22bioYX8cWoNT$)wzS!QZlBCcc9TF-yUi#pm zC_swqe344&Y`@V5Ab|+B@ZuOl9dcgV^u+f}r^VyqXy`5Jyr_SbSa*6(>;Bi~8s!ZCk&FwJO7AIMXr2hu2EF)9N3`#KtFhKBu+CmQo&(pTp!G zADe1pOXT*bMpXay=eo9}aSBp0DiPB-N|nPpEBPR;&Qs^UH&R6mDPj=RKbb zYvbns0jNM%zg1Qa)x)^%dw~e}#zQpRKaOR>O_$7Ns}sj*WkgildRPtU)knXRX>Dh+ zSxnCb%tfAGzh@YSW>vMzvnW+sbfvp#$wf^SvGM!Q&QjEJmzmqwYR4=OL8WfZ*`USp zb@Y0qx?Ns@uj+bbZr{}^DIA8bqn?Urnm`dM79W{}V&zxrH`xc;j|%%u_GzftwX~WWx}lvG@k68DnlKpi-xJ}oWHXaNBxRse`Zs2~f8iKabh{2jz-bV2~ znL`E*YojTR+pq*(uHDJ9-yd9@q{JGvk~s?U+P9|FxtVLAJ5>tn&9QBRjt2#u7@V9k zNJn+G&IT_hLmVE6WWu&lxPjH9l$_fghe~ z)}F%lBhts!xB~G*HCPrsYRPVkb8RKADC7HaAXRJs0OPe!)ov^05hb(wez&IdRL~u2HSzd8Vnr*79~jm2c5BNqYz0EjB@lI zzT?By#4lrqm6&c93sm(Fn@t(D{wBoUdTkW-dEtu<*~uWkin2B(9f=H#%59H+_fzW2 z{{XS7NbJlT#u;IjdX(W4N` z#cb1SU1+D{w`%n6xZ)It8fZVCE)T2!0F|Od6joL~Ee_o% zZ8q+sTBFM4^X%^ppC6mIeaMP0^ zexB>J+pkqETX$)QBnkuFf;8BMM=Ks61vmob!E#JjHzby0*nkFK($(RdyDaQ&Sja%E z+g(n&9d2(=__+)dHO*rvYrDI#QPO^bJYhtWewb%qsx5(V3z3@n+;;-a-!3MX3&j}R zcCT@3ZdLqMZRO>PpaGP0wiuM+K*dz5TI4#QlodHW!2>c>t%uQjkEaW|XusJg>dmDfswEV?ru9;>wEXGZX8u;q}Rq()18P^(b!kF zMe^Ox03L_ZzMuYBCWWLeBB5N&UBj}5YY<5zzhcS_@BUm#U}l+FsUtGAXx6ePNT+Z5 zxwBvaAX+(KV~B{>NA}1Y2E>p75~}8n?jWegA_w*0-P(+expN2iRYKi&&0e0GVU~{$ z?>gYj1&&Inp!o=)J=#DCXLt3?6z;eEv+?4jj;gL0D#p8m+^op0TkZ8+eLAlrh*x2t zQs0Me6ww8F0+|jVAt%7c*pO}Lz1rU53BQnBhXLXiC?gHvEmq%OrLA6-W7BhX^TASr zLnh{+r^~w(u{kOdJeaU8a(%01HEHFm2 z^I=?FVZ~bLT3fG8*eH_cB*}p{b8LnC5tom*h*Cq*O0u!k-o9Nvc8{BI#A8~;Oo|uu z+_piOc2%%BGpaLLjl$af?c>I%3$l2Ss?1lUcUk6^{`c_XG{J$X#J`h}Mv_VTk;Ww$ z{-U&K&U$XFxp)RDZb0<@;5Z^P5km}XNL7)YnwM-1X5=3~P&>KH&>LC*0DdjhD|ms}v`j5+Znds9ih5aj`BA&-RE5$pOuo><>NhKD2DA(2+J)S3yh})9jzJ8F;Ywtk!}S#b zIRL;Y1fNS-h2rTX6ln8ndwF@&pK$8ug-RHz+wa7Mraen^$Y!z1)*>aa2;>58PD3B5 zALqoWkq>}BNbwu$wksoBP2J2q?e$=vU($yDs~(ho7Cem7`OEQbvn#heKQXcSJ*U=l zn{~iKG3${{W6WfBx@^kGm&L z%F?Z5RJ*yM1s0ms!0yK1>^?y_j~vU-n2-M3hK9_Q?Rzvu^zMqlPgbGQW2MvTC9c)AD!3>#?IMzrnakGK*VM3%k^~hhE=eJ(7Rtn1jP7XVXxU*W z{oKGM*KI(8u2}g|THluZAiQZ7V3xFnp>9fxPU3y*kBJ|S3O&)ex%bU(Wo%Ac?wt?e z?{DjRXD+sFPP?|`(swrds@s}A<>$9GIo+sf8kmN&NZQqBo7Gy9J$gl`OQmUPQfYBf z2<|^%-rw-=v#)C7pFNn7csCG=T)uF`o+E{p*UPv{j)`GXth&+K(T+>U^04M!Or#fm z;n&R<9h5_s3G1u4R(+SXgZW|)M?uG z+1F^^T0P65RlzKB)7MbXJv6BzGC5p$`e(pBr1o#xjFw-B@GdbA63I@Xn#QB0+nF5& zSsvx&;Z4i&$32@bnaWDbJS?S8ny~)-aL<)r6mlIx^pKLv+%%pcih*->C%^vyUNfrM znA%uMtccrBf5z4H?cJsl;Y!{bjNQJRIjPF2DuldNaTx3z1^_V@Y-3lk2ExT#$F~fX zf*8wX%82M%iWbq?V7vI2>cA+ul}{{PXxk{nmclSB4V03_y}3IPDD_X|8;h7t<~9|m zHTZUw(%rXP$lP}}CPWG(jA?NVU!-Azj7BhEJaPA3jDXlO0#B%4sO~Xi>*K*hV)15- z(zE$nUX|$hd;b6~7FMJmP8unaGWh2u$hskC@VEdRz4jqN>`k%l;$jV?QJLi2fL7Wox8Ka-8wumzdb6c%906tQLMD-dj_D-e8xUmhJRJdD41t4X6= z4bHtRE;id=r)vhlD%WxHIA_Y(oRT#$_zW0_#4u(zCiq;~AGaUkqU%Xoz6(fITDqpu zOS+Y+-QGu9;$F6zVZScHNlaDcVTzc}atRvUMPu!dIrOj=Z`p6c#DZ6jF;-~LnCe~I zek|8+PnQO0MFVvVIMcF%$%*p_-6dBh{hv22bK5S!cH-o@1S%++)?h8JydV~vW7`{d;-rlPl#Q)kY3UxNxqo`>9at(+ZWy_sSrms>Oi5>q zva=I>(Nz1oMll`laqhNR9u6{t^ro{b6-xo?-)meyn{~p=nozB!u}uRPi4a)}0_%#f zVlGvki(HHLu(?0K2PvvZ)39L0R^C=_+AjVIU;w6r7g!ogmR11fsDkB{om44cw#Z$s zayB;me0ZZG7R;e{kHo60D~p+c(Ft3;_R|uI*2hX(t-I+x*ld)`6oGIk3@dz}q{{VLtBDH)V zrs^L~+kNRxeChg|1Pur{*C|YKRk*nwCRb&3B#QzMbCEs!ck#cV<4BCh;=-{=vS|HV zpO^0LZ%#98%+}YR^GrHAX%_;g98oUBW77m%Hwp#T;^zIm8B^}!w-jhqsPWp#a~o`B zYSx;!%TGS62HNXde82p$A!&kOqUX)ZFbtp&iiOAk=9VvO1K+p$SXIPgMYKrFScT~= zPTxPv(!JZU7-~{F2E{SU$x+mH1Qc);fh-6f;5)Ma0ODl0k(Na(0^8)FnXT0FyTa}F z`nH@MEmb-&VRqb16oCLPjP_)BqzBS2))HREGmY?zEOSQIE`{l%%92=&-f_nWcMb)%DdrjOl zf1AOl(n~!(B=OT!1e8Y09Ys7nOfS?=H~#=g?_{{AwqD3XHw?;*^6fjl^vAh67ve?9Zhcd3 zt(Wj^9K83`_92UJ$FA*-ud8VsqfNmk5yM4IxoZ+SNc5^#o3B$;)BL)@M=Mi&%&$)j zzcDA`ljY#b@XU@xW)i^ZWL8F=ZTc#^bsMi|wVJe5$4}02c{2dy_)bxz3ba`rR6>Kc z)#_?>Zs%@00kyW4o2KmA9ZQ~DqL*}3ZO5qT4!cMx8@ht!^!8Ddko9sp8Y= zbxA&EUN;kzwzTREMrry~lr)mm?r5p>byxivTHMyFR4*`h8nJJ94US%IxKoxH^5sq> zA#)i31Jhy_?d16j`mr|k%l+I;xq%|cuD3&FEDuI)zI4yP;Uj zO4oL_0VWeO62X@L07Kt4{?Wt;X(Hw0kgHEiZKXwSEN?w68rrMxy6&aLGn(F5S6-{B z{5Wz_*&g>&k7(`Lh+|?2C{NedwkQ7piyfnQ+BoB7Sj8Il+{d}DRa;J#Yio6FYzmep zrk|GtDBWz*Dze=bdWA?VLl){Xf*kqwCc%3*ejHeMYRaXfnuHL&NS$A^y10dZ(zU$Q zYx?mgY|Z zvS0+EgOvi!cMWh<9}#v|y}fa3Hvp(fnD}BPkl&}DRnK>)rq%Ubfh?fVopA4#X%Sh} zi30%26$G)`!|wFEHO;+$jr_Q{A&dBT6lMzU#^z;9c?BBXZ@YE?u%+jnZ5S_+V~JG+ zBKK@EOS>Z^WlEa@JCeYk3|sb6Na7L3P0)s2*D$t~V!M}cX1lojrx00)p}>kHW=uq? zWiN7tNfHKpkwdx3ulq2$TvrjoU}0O=aAQE~eqBKPy8EslHYK?y;r`eoOkMkj37V8D zuNYx}8Cfw3{;msszMfn(hHnjRvMAc{THD!_bu%d4^sa-`i17j;_mhg2kvf1ZO)F&> zxhKi70zkh~d~Q@5_}?G5g%|?EjGD`?E-1^hjDs_hO~uLpF;ZL+ zVTfV{g~;#a!-}x+EBZyPSOpfZEqaRV+g7U+)zr99Bpp{(^Sj@tPvCGuk%w6#V#s^~ zz=g;M92)Fx*bcy2{^no1fgxltp-|JQ`WcjNW+is+^p1XbH71lCn*b>T6u_KN_&v)i zNn+TA1e~rGX-ckvTe*W;D!-YrG}Iq8z)ecv5)KCA42V?(oUPc|Y(JnRw`^^G z0V9a5VsAfW>IS?eXdT5)n!tJeEhIGfzwm*!;+g93x3Ka0GUZ;#ASATM~E!B5TIhJzAeKb zbPYw=V+M`X_vjgG)oAUz&k;s#)VaI6R-aBKtO2}9W@1YlCe7p%-H0S2?OhkQ5004mGos?;iEPExfpKtSAFJelVPRqG zj}2FanPAaUMGF1ShqXn%s$H?PH>ouCjv8zQ4Qo0CgDyNcIv2K)9%^Wo1I3kWD z_}jx)DC5pbh2u#ln^~E5s=EM{TB@p2o!=dC=>{2P-wb{ZUP4`N_c7|`cKUV3rRHvf zTh85YOytcw)oGl+tfr&Z`SZFOp=l_zeoazWMX9$hzHQ_Jn{@B}LrJHksZw*H*_v*l zG`$(MYE^qT&Y9;k&rw6`5lsg=AmQDg7huq;W3ea~_i~ zPf6RSn`1`)B%6j#V{A`{O|!DM4Nl$Ed7IA77iewmcSEPs-%zB|H4GDUBmsI%XV^P{`_tPph(@wY9CAq-Mq!V-hUnO{a~`)VwSZB}rx=m0gR8gs?ZduRnTAn=`fRTwDO5t_ zs)j9cgb!)C_jtEv;X&bx#8-`NUD}5Imkyh``j1uz1hh=0)k7dwZ)<>MHZnT`tPWXZ z2WuZ3Tg!(Ak!5F9H?SP_CgGz+rrSo=AFP|OOb6)h+*-ev>i4!TkPxLpn@5NRlp#=5 zoV!@EhF0uJ_O?IVYcr~_Xh$Fy#JNhf+j?#dcg))03fA9p;!&lMZr4^IND2iRiAn(O zVm4Opdw-|h{GO6Zd|1|20x_U%yW6tmrq3b%tQReG_kL0SEG{@0EQP=U8suDn<;n?s zgA5P?x3_yUSX+T)bsN=UmUUDD=Gwk{mXxaUK3G$;8-PQJZ%V+D3V=xQ2+M44kC824 z#f6Fci+N?m!z>aD(S(S`i0NrPD^}O3x=maB@HJ&LYTUg;U*zDSrc-daO29L}uT|s3 z1d%gf3zseQ?~?cNJT5{)s7Z{>qN3B?(%LGoSCuZeTW!SB=5E{=qgAlLg&>D=Zsd{; znQ|VDkOX>#;D930;`n|Typg%A9V<_(s5jw&0;NIaU+4U=(@5d+0I6F>K`IdjAbA!R zxh>>JWAyRivM^B_P&ASyt!p*hw%&&27B8o#-GL2JUY&5ilnTnqU70e-kgBEBg}xaQ zt}?N)vs*3|OIkK1V`U#5O*xyrK3Z}#!vlNwVo0N8jSASaG~j_|a*XegkOANg?gyvw z?ZZ%`1(jqKj_Vbbirw+){_mFxy02*!7+TYj8mw{0A~MK9BJFP=_qhdZfp2?zl>XdO znQf}5R*-#5?&tKFpln;sgF%PZcbZ7X`z_I%fQ zDg4({%N2r>oUC!Oqma2J(%CZ^L}M@#_W=5U0q^@?gh}A9iJ4fLmNjdYPkySbptr== z--rc^s`jzBLDTuLYfJ}G@nu-iKr!JW+>}{VNKKW%GF&c11^Z8z1dP_I_+SPc`jiIK z)9>cEqeay1w*~TnWi5yj7{*~*(OHXPR4EM0-{`>GA78Y*H^20dqdk-$a_YD@E^009 z+lsh0Ll@x`z8`+R)3n*erU7?a1o+q4$#?rzqvpSuufy>(Oj za6*Bz2#lgg(HYb$vUxI`t_cOK7+cc+0M&uwSTgVKP&6(6 z{{Xvi67108fn$tDtRogT&1_hc-_@`7@uT?9Ad-UCkCNNdZ*APDPU54d)vh)d zRZ@fauxk`!pHcs`b)fQ(kt51Om|!A^n$fpa1NuXdT}T~ z!Zv1rMo1t5;))ystXAIAxizobFDv?Sa%Wu6hGJ7)tgk==8?A1t9X}n|3Q$~mVpLS@ ztz+Uvi6s?H*jSKNt#VZTR@naMf)YbkH(rsJT`gwauHREv@Y4`$ufGqDkg~c2%#g0l zVnLLV(oW~dvzZ0d*kga?#3Hn2L}e;i_3heyR*#nwZLXZLDmpoz97-~(m1(btW+pt# zn|D!vqWUlTxHz1YVlI+OGXfi$fz;i)9-i9aQoR{e=&jX_qsjfcyNjAUwcB%aitC&2 zW@%6JOBx}Lw{vN9lgQK59ASt-D*{OY7Wu1LxWM~M#12c@&N-WRZx=6>%st%MStEBB zkT$WmtEYEWTNj)%1e1tlQANu%sD`|)Ce!>r{C%l&13{Nk)}+$usKqXa4yGibfXcB^ z?h480dFjP;6o%`xsY}AfFjVR?!WGx$zsC5hnG-@Jh-KC|vl6>HlTQ@QD=<}6C43OA z)VALDcH`0+tg>b2k|;n}E@}^`{>vAt(bV3YXzqJY28YU;-dpX*lB00*Cv#A3VIl{P zr(V|gEp;s}p{r_D5TP@Ig{{T&fQ@44G%?$`GJC2(}2K?41qlzRT z5EoCZrwP~qJQp7PeN+CAyhU@rWq!@wF;~mYnt`3Y2{9-(^4jVZO{>j@IIp!a7n1Rzx~M!6>|Gx)`{kk7)XjwCAas5Hx>8Wy6rb& zODgi`<%_i^U|DcntY$=KB})t71^jYF9;3bT%gck6(M&_e6q!RaTE#}~rr)cp5(7-C zthSY@w-P=;HgX09GH?_n*_lWUi(EEVHa79K#y81$lOw%kiCI-%)2jt`BfF9K^-*xK zAQwh;3=XX{L z`i8EQ7<$u+DlJ~D+UV4fSoFRY!uyA{_FyPT|;Yk zPvyXhTQ&~2Vk1j}02qLL8sykx>vC8x(YQG#calJM!zIeyHoX@{^)GXEVykOZb5nve zjL`)+DrII;36ZP{q3&!A)q9)!m2JVafmbbbhr^5uOEV7JxvuMdKCV~_Q2bccztx65 zoXS%>dEdJWi6QBtm3)5uiwj=ZoU!uYmOFF0{>(t16^t z8`zN}19b>5{v2UKf=_Xg`+Wvhf!5)_#AUM0+q=Ofhixd9?dRQy!3qfh7-1)JR24{> z*yWURD*_%>2E+qme{UWRHc+)OmbbL|8^3p_-H0k_qg(WxF=)c9!e6EYI^HnKtJBLB z?8*nxYzbTX@VG*Ym&7qD?b_Dp-yBfnr>HgwDKc<~V{A!O4H|RIn;Y z78YM0r~wuL=DBw7 zjyZ4vEs3CZ7P~9$YtaXKo43_Zl{Vr@Cto}zp>-_~2>7sQ>`FR-4ojAIvbpsa7H;d? ziWAD^V|k2=T`06e_%j}#k#0TRI9WhSw>Dqm{Bf$5k;{UNrA|zWvKunBn7cdNq=H8J zfDg1U8e*KtkSuaXYco2v+ivb->1_qdaj{B62*|H5F>V-?s}N3_g4bqiCMryTKZs@_ z!ifWthcKI`(V* zMXne9JTSXK6bKkHQ%iicrt#-i+wg7Jito8bxRjJA>E#&eUO7oPv3IZ;fuD#WJCEDP z>%po9d81XkFw3%=Se{J5xhJoJIFcbmD6Y~cV6hbd1z>zb1q8g9l_RjR{#L&Y zLJG+iw=JvqvF85(;uuSpr-^X^u{IhUOGI<++^IJOfnghcNw(Me3Hh?L1Jf<;9!*{>s(P!toBdaoAw zpsfs%%!_2pY?q6WrM8xF?zf$G`mpGdL~uvx0+F?U7023VCw6cADa#&BY}pj)^;>UX za`#M|OL0?MEew>J9+b6uY$Cd;TK+$CQd@UhqtxN9LoxW|#?pRMcxzEWyLuz_Hugo1@ zeb>KaoKf=6k=(z8?~ZS8&Cy!3r3DVu*z^;8!_4T+TDGuKX_QfCJzZTjG*2qx^86nv z{6%y8N@QHFUD=WaYu(a>ez^$6kEMO2K~En@@w$A=6xTUl#|NxO{Vj^nGignCTv@9>I_HMayM)KrsbHjnE-@abE@6QV^;dV z#q)hVIBZ&Y40CH^U|3}3l^wFQu0o}xE!^Ag@;pptk}(r2cq_MaDL$M1Y`WLxrX`tn z)qJqUqf)`y2vuZ44n%cGQW_-+L#Qa?;9|K3KfebAYGYPaEbFybwN~o>U3Xz++O*cJyhl@)*h zli^^pFkbnRmID6(YTW&JT)rGKc)O`oUCnZ^Zj=`D^JZiCE+T{6Fz2Bv&O~xz3ZNZQ z)+&O{9iwj^E7G)Stqe0>LZPUX|5=ERB$X{H6KK|so>hn0f^lQ?NR5G4$& zk;mv6Tle;gE?kD0=%GsWcS~AbPM(mUH$Oh?Em(%I^INxJ!j>i}BP+6&jQ3V6{uR-q zTih_R<@dfV00$o#!krWuO)0!dN`DJ7ARo}2XzfE`}rA0kQh@;CZ% z4;v%MrA557dYgKvRPGC3{y3}@wAL(+0FO0w3PHXgsAC&2A$pB*+V@;|Qi2&;X&N%7 z=$h`9^P>G-HR;7*g%dDF4c_hgj#Y6asU^aaEJ^M@qWA6P!AMVs7z{i{YMOIvdDF`4 zMH#*KVzBtB7DQN_6pe{4%tF{m6TEFW?eXt&zAPJySBw!PT_tME)XiXK zX6LtUM&6ycpejoq>=RLpnlimyfjKe@bpS1iQET>o{m8nn@#6A3mPVbfV;HD<(Oebk z@cKzB$n|0vF&j;_`KyJs0-zw?B`0=3J>uLxDoI(vDH<|j;1FHUW;xs-VnzKy?d@gZj<+u9ygvm+XjzX} zO}x*|igvVD3zC)+vBw}Kh|1`yWMS%^M$78mke=YT^5LZTj@6N5xLIghO~Yy{4xXLD z@6Cx*P!GQW@=F@NK^d0E1u=(7q{K*ADGDr%w*FpMIdG+0WK@@QYQoOjJ8ie7-|=D? z5-2gM7L~)s3P=MrmlXsXSR=Emk{N?~`VV&+g0w0!@jF`@w;~Ud5TuUlL0+6^4aV&* zY)uqXM-un~wD}|T6lLU(CDe=k8@m=DVm!My1{5UC1WF_|b#SXeUfZkBZr!b*!qJI9 z?YG3~_>4JdI<6ve%_|kl#@5Jn6f}SgNo8Ljp}z$hBE5|-{l?`hx6-S3@Zera6`OD9 z)Gq8uN+og8DyBfLtW&z10Fq+2{Z_@jrG0(2w*`A;<%||BDGbYTZOf%Y4qW`M4$xu@a` zb!IKKu`V4sM@skVwDi!-_=M54(@{@TQ95Mp zP}KD3%H2|)UH*|jX$iqNB%a7{?9)lbxbz>UbaqF|WnA0Tg-Di4Fkeh}9(LoS`wi^* z;*-h6bHFY`hq|h#bklRNd=qIW9@cXQaC0h$N7g7g4YV{WozN(CTE*R4x65s4)jC+7 zC=!=%#ZbD2_S`1EIMyiRFj1tAk6EZhnQ`+wjOH?MvkZ<^R$RHhX-Xa56}GBgTH+4t zsMIvBI%an_nxu)s<5iX&<@TKik|A4}?&Nt6c;lZ89}l#grmx%^&Zkzd=3h5=P^h8b zJk{LalgFuQ+qYIH^NkB>ohpV1G<~(DPu5DQDbUnc)S^?g!VNiT)f_7`n;D4w9KG3@ zg_kSaSDQ-(*Az&rbGQCi^RZ}WgF+gCw)tDi?n?Y3^V^u!dd|I4(9)!{L85FOJ5JK5V(L_C zdhJ^4burS>(#17hWUGWJE95xbGFd~F&)X$fv`{@ORc3b``=(PttJ zvoDhHQ2N}(uzVQyj!(h#}d4E-`)tzZ;d4sz5e=#a4HM(Of~BB0&|3 zZ4G0qz0G~c-9^U{_Lqtr=6&H7csUjOxOEpXvf7)zx~|-B<)jicM4&8+7p6{30XZCO z4~|2`To(TT#PQrxGbv#%(+^W4QLECbzlCVL#=i_|QH9Z@ zQ00_%$T7L@*FS2v5@WfQLt8JsjjF-5RrOcZ{5UdDik^|_#DPNUis_J2LaPjc&6QMm zxhK8-O4tVapB@@h!jchc-MJ4lR$gS5>8EeJVFaNhMy#QIUEfX|x_yZ+9i$BE9JxSp z1iLl;O0u_Z*Wrwi$fkb{p=mdrbUs}pcI6r?ZL45IDKrC9hQ~mz%EmWjAfDuqR|5S< zIGbbzkD&K<{xZHSYx*iiYqTo2OD^k;+mE;%p|Dstq98`g8A}^P{UQi3oQtBC0}B@I zV!!=CgI^9eW>F^9ztY}HKyI_Rt91IY0f96JTo9sM+WCgcJDVJ2MMeN2Ao-Rn^;?|0 zd+{C^j7Emblr0POw{T|qzB=M@Bv2M&vP3W;V>1x_isW!ZVy+1*jy|W#`0z|5mSi$1 zWsUlgiqWa1{-vk!ZorpSYBO3!4jL9xWAaP*Mr0(rY;(TWpXjFE!}R!{{U|dLl{_GuxD+H zwU8Z*O76Se)#=1DFt*jY>{%#`j<}x|V#9eXf1$G3G%EI1&d%voDPYQVCSp_s* zHx;{WK9%>kKXAmb1xP%xMvY`=0hNl#@ufB|!qm+<&!hC$>abre6*J z0P?q|=3jEL-SPY|2tgdGl+gReDA9XZmT;)0SOjKAcXb8v_OSl|x`wel0cj=7Lny48 z*QUK&g{kTJcCHB#Q$f*@wVmu z9@;kRPf}>Ro}D;+v}Ch7q7u1!r%hSFWhAwTvH^=;{+&E+!(=5PYDi@BQZ;ULxs`fHZ@&Y4zy3UGNa;XW z<>(RyK(*vW$FUMHKWi6raBpmW-*%-Nhn6~3jBjsM3YuD5b5tg@D@}2pYSFCcOiPNH z$O!6|yraY`DMTcz`4eO}QbT&G+v&uaB4m;{?uDe(S93djt>^y$90G|dw=iX2?D%3- zba%2(jA7O_VnHe+$h3?Yk=$89{)?B73Z!wmuw|1|Z*^{Nqh6a=L2suMAaW>_BhR1e z!;+APNfyPNpVUTYlc3gAHexPHhOrg^97nGXVNVQ+8Osy5ZEaRts^339t51#u-A09m z=IK1H`F~gVaUwbZR{pDC_bf_)pgIRg&wo}wQ^8g`y<;?BM&hSWcO}A|fK`ljDaS9_ z`zKxAyNhn^9lJwQs_sq8t5RtiKAlXDQ7uJXbe%L*SP+pKKw0G?{Wzd^>@sdKJZp+@ z{sqGGTxW_jd3=Wtji#B|kvtFwE03AccU&$wxXVQ*YIxwwDY{0o-r{bzA6eYG*!p)O zIX$qsF}LbrsEcN3(bH<0oh(K));ASo?Wk@oVNtG8YIRzwr$F7-BNCr)A1Hmk_NO!L z$Fy8)j!w;&ZX+u)1*hoZS|lmkTO&}lw$?kb=_qOls z$0*yIMxGrba7Uw8>XbUh=bET$d!45Ft$LQ0wy~;aq|$2Yl!`dfCYm~RRq4}~SrHl0 zc;@i%R8-D9Qw+qp>(Ql{7G#Q{h(+bPma$%+n-d;N6j>4~$1Y^i`MUjGR-fCs=(;}V@U732tx63zib`7vMXvR-1G&y^vo{+=C;_#vFwF2Do zB8}YiV#6OAUmN=N&iLW{U}f6-n@i@7+2t;a_N{6!SJXK(S8eSQwnh>V1l4*~JkpP7 z5$DzJ39vZ^Za&BGdERan!b`{FO(s_;?7g*kBBkq2=IN(st~dr^e@&QE%fyrXXBqzh z%i7855JIFTAa#P`Q40%?35vb_Zbm;|GaTckw#^}@(^}i=>QHX&S_?)kivrxKQq zF>s-rg>?-gsu3etxO0z*F?la@VBhKD<|2+`V8Na+e79+_tg80*ZerM7#a5%GjkvT_ zKpZnSl~p{3A!Baug}WCdsUQG+y*MSH3bLtTT^Xx&$Fz!DYO1d5t~;xMYl?!Vmg|W> zB3%TEg5(vAgLwjSE-nBWF&DY)Li@OBlJ>X6X_Zvbl||n}zo*foHriqo3uq3lt_^4v zLP&u+Z5AXvXjrRbinL)!G6EYDa6OIpHxeXxnlmJ2l7mNd>26zeKZnN*!=Rz=mo6GK zV4*=HH6WI2T&ZOYp#{50-dFMBi%27A^Dvew$gA~rDQ5E1y9nl3N3@=-HE6*v)QRk5 zRwOmb7JlN^xpqT#AOUPv#ki9SlC1ER4P^?oLZbY4Ufx}!0P-8HUfsBPrC`g`0q!qi z#z0h)BlJg#wkI>`-`cChpBlH85QZ*pW*dDAPNvi8-Q9zZ$I!0k+}Lr`SR*KCfk{d` z=j73W7(F#;!DLopV82Ye@CkCqX;8U|v}l+3X?LHcd0>O9D;soNQ&AGY#HteEOS*{M z9`b&gxb5VsLAP@!skago1dW|;GX-74RIzlmQ*GbNU__CDKus`E(L@zcD#jW{mBO=v zq9taGn~MwI+6Awdjyw%ij}4<{fqhnszde8QdTpDA9^5V;S!3 zT~11KAupSLz~lD)q#`54D{7?|!#hHO>0e#G`)c2p5~Z1LeaVZp0n8Qvl>i)+7a}m~ z5v1-}ambgsQd`}R36&Yg=^Es1xBG|i^ZCCv8nOp87$u>Ig$>hCW504R3)O298pVMG zlk_<+VUGtDZjs7~T9%GtjY?b9Mzwjcw@gzO2*;7d(t+7i9KuN$Mo<7wns!p8M`c^R zyLyKHJQcF|u*RyaD9o2T1w~NWt=&r7uIATrTr0#vsu*5y^`k=lFmGZ>jZs_|>=-&) z%V6T91Ij#G=;8&C71=15*XQ>IqZ{I zf06$HSGf{B#a>Afnn86a%S~*zO}bmPi*9bJU}Rtgip5X!>ca&a<_ZPHPk4KkF~Jb+ zCGo&0?|X}%-^TYS)P-G}^olnq?YF1%dact57ZGUXiZp0ljtZq@1j68>T5NH3Dz+9U zxhCM*tlnG#yV)etF$}_&G3mR>hs)I39UBgDsEu}M{8&TKsV{XlbX=U-Wz9%rvzwJ) z7Ruf6{{S(>M-+v@iFIpq=SBFBKfTVmTX7%q@pda949w~lGt*_UQi_&RS+Q0Z zBe2WM(~6M3R(TmVtFaAg{%&>C@VAy2u4G!LJ8s6G`B|NctVNMQ#y2HY3{`!oSEj(P zVtW$H5GOX578Os%tAvjgTNNWN z<&DFAI1=v3m00V1d#)u}t^=i6cAL9>_>c)S7?tuJR$0|Ex|<-tI*`f=wm|(^dxPH$ zcx;)A;#QK>ECCk{%Du&XRq0XuIE+3jFV%&jiOrX*Di%?btFQqb)7VB|z4&vumMSZ% z$fWkGAJpAT?rI-;;OYkBN-i=>5=cT29?I&f(STMgR5XOIau~gbVQi24O=VLeqR~Y? zT#vi=b;X;-LvpcV*!BQbZL$HO3fI$~Cp zvt=gCKZP4OUtjf~1t=MZtDY?L8I{Yemk8v{5Q zJ!5_H_i*jaIO?-aC3oc8yH=ZR=#?6cOp^5@$3WI$tdTNN9!#eYhRDdn7u~qW6-Wy< zU@}C_%%Hp>LTD{(wy5~)P{amC zB#=>~+PZE~s-=Kk8NF;8-mF-aS+Y~QQBHD7LN4n=Ix7C`Xi52Q$1d6sJR3V_uqqMu zmfks>BNjR>2nIqsF?%Tl3!IPlarOg(yoZKxxYDt-nLMLYXHw;(BX=Z4=>WE@bjP1F zt7Q454RvIf{{Z^8__4{w8aY?RosbU&0Z@85ngeUDB&i*}GPXu9o}Y^ zEy}&2cQWnn7{`%TQ(X{Shebq%*ea{c(RE3U%Y_UJ#;ES#yW$ktt^jT+raOFQ7shTt zyT2=UTk&0RSZBx;NFM-JOJES8XJ=!0-G8f$x(U6lb~w`EcZ?e6<{xptY_L8{3o?^?RhDekB1w+3tF&ky-Y zVvi8+q7@__0jOB7h-#aWoCATxRv7QdzVp)GgJ$K+~u`n^j309FXbhofl24GM&Q#92J# zV8GZ)2zw(Ctk&&`^kL$>6nTaQsMjjitQzIyp@rU>j%oR@1{ECJ7aD!d&?*$giyPdd zv)P*c*-x#l=+>W<41^lgU^R zsBTBNU5)WlNge+HZUD@a84PXWBqLRBf0yv*ZX?1AZtV#l&-2d=`6mj%ss$ZSD|HkS ziUO8voUS9d7gZ78%NF5nm}OOVlf;dbBHg!sq*Z-lyt-T8hY}dKB{&183{gnxS%5-8 zkUxQ28?SN=!312NFK-N*V$idAmlg9xV5?m%#46gf>cOo&gP7Dv7Z6;rCCeq{De2N& zk*ucU#@TS8eb-Vh$m04`%myW5$OG zX(eeSCC5wTLZqMQ=U7Bmi>?#QOYu~o$V4+kj< zuM*LPJ;v4gd#b*s>g~i>*4^cdg*_QUL~((LIg+J=WTM9vAe#(q0sjD|Pl+YCbW^j1 z@Xv(Gpj}RtZ%Y352M&&iq@70WL3@S-jIkib%*N`V3*Pozd#}5S7X?x_gm+f|02SYu zo4!+~D2s)sQHwAHvZaU9w~rS5Q;KBxKM&3E zJmz6CSuP(Olg%{Fk;N5>X?b1yD`NVI!*cLTJkaH`(7s|x4FV#wx%>cDIQkdZ6`ujW z4|^wY^5<=QKfhRG3_4_$r&=C<6i;>7evfhBe}Vrk8`W`vm0^g-)Fs(%5ZFpW%4i5VWz9DrquREy{T#Skfg~SEY#GM ziHtZhM)ABNGLM4>6S6B_^A@v{ABTs zWEp5?SklBsjhWY_8@X-i=g8wqIp1jbXNK9H4=iIZeTT!@LtCDT8&h*@)w}j~8+!5& zNZFewL)@D`aZv6pucv9+T?I-(Tc_4F3}Q-cKTG)v${LAAp{6tsN;8pTkT;7f*;|jG ze__AUJ1gz)72$rxabIQT;JjzRf4fZ--X>aP%0$7IRdq=sc2vD}l`6Kaw&R%bJg`Ta zQ6auYxPq*`Tdmc4wXQV0bfW4oLf}PVB#cgG?4j1+nK2RH>2I$dxmkm;9wAW6cHUt5 zul!pWVhH9i{{WIDtqO?CIPr0G%woRsKzOV!2)co6y*M)@q@u;UE!PMkoc zHR{8~42gkM0FM`s5$2?_%227ZwbvVhds^RKC0Zv64@#9gt97?-rF^M(_F}OqD3k_c z8oIoQ7=sv+R}raI0ZqE0Uco^KwEShGmQsN0dWR?$~;?(M`AL0lX(Y)`Ss>=d$)#Xu^GSJh=Qb|Tl{ z+Blkim5jThsdAQb(qit+-4(K^vV?2kE^N53 zZVE#%WmKe+E!!#wh7UcxE7CRi;;uENrxHaB;9v@oZ`5?b{{ZF6v$`o)w2r})<8K>_ zjv&iNRWc6}HdfoJ-MeqqwTL}FtU{`0=1Yqq5uO5zzyH4jD@X-wGSox=tUy@AP1!IsN#75@OC_gf`g zcw)}X(laQ&lp)kz^!;93us!KEE94RH0%LH->2wUh_WqU3> zTK({o;dMmU8+OxQa{RwH<--^PHRXjp66W$C42buX!dN(9xcInmI(^gTc7|1gaFZ zHme2w?>qxgkvfG*0SPNe*&?f^BqEk7d$0!V7auHmX?2`Pw}?Ws5H9Hopb-A6uKcaf z0K(4OqrzT*p*__|3d{gP$r)0?71&upE7+1P{jAI-3?8oXX+*yeukVt{)pxnKqyZ66`4L4l0>GQ^s zj)>kei-_*5v8~nA8wN%<4`~rcYuvs+w;GUFrR^fY6g{D?s;_Bh>1Ok8t#sv#^01=< zw-&^;pjik)QB|FyM?+%b#iCYAc!7zYcrKcTLU6U;D(5*E-1){6?ZLV&jBZ4*m_&bibfGh;PlIF%)X6TZ7t{et!xP< zwLI}CP&|m?LC5?<)UvyU06ro#2E+>z6cgX;!7TDLm%JtwxGSi8kzIn?O7@eb7vtTE zEELr27@bG8bp62enog}o^?GihS*O8S2ol8Y6qT?A#z5-P)U=Vu(tLvlj5c7dTyx*G z&M(4vciE4(dEaP}Kk2aW-1=cD2^yzq?yWJrsAhj+VO8CHr*J8ZOCmB-W) zLbTGM5XS&ux9Mfe%=@X&UD(lkcjB|)#i})FcFvK!DzqJEchBGwTTu;0n>}?ML(o#qPK6yRtR~Io{h9WD%ze!Iq9Bj^@j}jTf0W(P0;sNv8L)9(xRtd*z|Mh)7D2mq;(A>$Rd`FSqIC-9IUTpM|q$+OTEOSTj1ejb9|`YeQ>Yew=9UkcG0ID2<)#y_FmEN$)L9 zpz`wfV|;u&?M=@IFg7H6E1!JF(e_^F)pR307Mr^Cn#x^YN_o<@qfVBNvZdMzX+ko{ zS{}M}7^>zKxapr|+)G5)?58MHHYuO<})T|@mY7Z6ouQjrJmm3Rk(#fH0s2N>6oww>IrF35K=`17*Q3D z3PX1muy6bDay=xH8CjM!q9NUWrnf71d%Z1*ARc14Y&1=El1SK)ZnhT)T|{xoDzFx} zqZ4of_ioJGJ{f{Kq;dyqj^%EEE^Yd4H1hed4`|ZeTN2ucFN2km?HH0Mq{%=iJgmvx za*3=7#>;;$1v7BnCBo~4s@2*p`ECAN5E7%S4f!Qp`r{BtQ-)4%*cEgo`}ng9b|fnM zST_X;W2$Zu{;p=foBWq<1g*69VwRD5g)wtvXn3{e|s*9*sM!h zIN1zkKtSwrE@LUtIP~pn1@6J_Z)Wiscj69U%(RLIQj1nrZhQ8t`j@)XfMTnwy{n2! zITj*a5nz!)nH@k9Mywp*4cRPJnOGa%KQBYXyow}{Tol506L4R_Te*R?ZTYK-wU0H^ z%g;;-)1Y!NX)N7H(lvtV)2y4odpr4D00Qi^sC6`EkyWlf{m1uO+iCM+Fvg&gC6KHjfEfT(C0X5+IypuG zJ2H~D9xLVJ!c6g)WLJ=Qk{+9Ut+bDYdbGs~ijiD3Xi+5-I4VX;2~rLuJFJ+C4+K`R zC;o}Y$HkO+>R-bduqz-3-;9J5;g&bVhE*(k;O+)2hD)zvRIwQo--f1Us?t4H z6uE0kn{Dz7{5JB#BvR54InxY=nH^nOOEW2QWA43(kTZJTw?6r-V zD)yVG#A#!7erBs&-!28n3aUA-Gjv+ze#xNKHHs~lL(CtC-u9DT3H;z&=Xym>t$DhBYHwWY1(0z|_Y^Sr_OEHn+Sscz!IFFM|!{#l^ z%&l^y7fkPa+^eYDuF;OG_AkV^M+*Bu;q!5fyjiXvn1eG5E@hEnSCS(}W|3$sZ5O)c zRqn>R+dmw;4^ghy_Rf>YkB3Mp=&R+|>NL%JpE^FdL$AZ2JwVd*OK5 zHV%)f?v2R5mumD)Q&+9SM^{M=H7=IUR-E+SFz;CE+4Wht);Mplc_}j!OPThQicK2F zd6a}j8@9#NX|DPO+S{?5&3jdugjPNe1k=pQrY2T@%*{l<>TfN$!NKv(@o_GRvuP+c z*Td${s?n(@(du-qKa^XOaLu-&tE#BfX=x}aYHI~81zhy6=J4JF^5dvcle9_pd+f9l zW06fsoG-LAfE z^zFybr^KJe9=d)mcb@6oy25L_n!9jq>YY{&X>$8m+BI~~w)CAfdM1=Ux-`#tQW5c?~W%H*Rk#D~XXu)~tIRDgT%)MgG#$qU9Y7kEmO|=27#_)@n+b)x4Yz-@IX&lAa6?-rXnORGy9+E$UE((M{Z zwOVDH=k$tVHBPMzrRgGeSyneP<-+ojaacI6V>={}O_)`O!4BK5M`B%7fEBq^+&5@C zt;J>^hvzbjlXWr0Ab%R(<#Az8%r3hgmGbxT8miR!oi2f0y>RtB$d@;mu1TtWfsh(Qm(7r@bkyC z^zca~Jv)+a(JaMH-Bo0bdpfBWkOp7le&5~4(D*aUBw2Z6+>C+Ew<%_&T8q@4l~%4i znqzp`jlCrQ0A?npo}`AwkW4^`E0FhOY*<31-u=zTWuT2uv6VvvHnINvNE9gR8#?8IUZfx}1TX2tTLN!+8Cu?+S$Fc`qc?n3M@wqA zT~2G=cAI`JRbl6WD@P1@t>49ot3@MzoPscfIY}6$gsh~tWj({xeOoC7?TO-+Sc0#J zqV2aLdcEh|zfHlhMzl2Nf)vpLhT{Gv$}WuRqB83X3##Gb1-qEq-?t6%f$?SWI!E(w z^LM`xMZw6f!^ z#>-5~lz$TC40;aMH28KhpI1`g3WCbSYPi4U%QR7m703edw{S#k!vt9fBKhV02>!fD z%(?|&%X0O&TUDCcYudYZk+)n?Ku?~ykSGH5!>YDGc90dbJ(lVT1zWe1UlJqiIAY5P z*v+-BJg(EL`!=7K3bD`2{kXg7n72kTW_AFATNXrNAw>)S08I6k-PDl2nJz4dFQ)$h;)gWX96%}cLL>@N(O6eu0@U4`D2aKOi*SBYoUxS z)N51}ZM49IYU|4mGz#WJ9wa6cGBS*2wcK>n5CaBg`>lU3ZvfJTD__zUHnjq+ zta^7gtjxQ8*lh?DUU*!TQHfe0xwK5K4cV3BV8F97s)Y(`o+VRF-0=yh1K{eV)x${WmUoeZJ9r}dBC|S+5H5YbJS8(AN~v-(ZjK#LD-&^&eE>c2y@>JQ&pWfxsLNUat!XRt^Xl{4(~4-( zR->54jQM6|bjV8Bk`=|n*;J_v5Om(yf=C_P72{D8%PTC2GSN+@=I3qIQSnx()2Jw1 zY#|hKL5b@~S-L_TN{k4_T?0%*gtS8^RSkaY+aIO)2(wY5!cnb-SU0_GD(i2{sQq=o z6k^va(-M}9^u2-OB1rm}D06#ai*woR8?}$Pb{ThGUok0>kZthxwcWZ`XsL_* zogma@Dv|}I3ZdbQ%FT*CUm1U!{N+ja#Br}f&3_MY`UwsKvvt^ zd$8Wl=S+P8{*Tf(5%vd!!=Hptno099!!vGjiuWxGd8O3dri0y%s`3}&2jVZ8`VZoB zzbiR^@Kr^yejN4P)3G@rtwG8yFF@5a&39(#4Z35SSJ8D?qodq(GEnOpD!|n>5!AI! z6p^hgkjcjj;`|?gWOKg2@YwU5OEH?`%M|(KY|FC#nXDE%TVc5k>Z(CQ&g^u!r_Z)e zjb>z2jk0X%3o0`?ad6*OeZALh0jQK}+5QVUNU`Sg5+r6?ZB>!Q zs@HRCTXENJI~Va4FFd&|&dx~bTE8)4-20{_xRl>>lP{NC+xRg&%*>FyL6SE$UX82W zqW&1n=jP1h^VuSfs_hJS>`&`=24(nT$S;ZAu~WMKJvEh&X6-FsSJyUX=cudKIhC_u z+`8t|)%D&=)K=DNT3r?}AD23m5_IY&P!heqT9~0$iF+rrS*DNJjvpkMhgjpyBC2KO zC>$nbqEu}ecCO+))Lqq%d!B$lv{~hKSsHkp-pIEGbib#TJjAclG}!(S_YcKqGkzU8 zOUxQd4~c#6$*sAzG-_(ygGd&J0 z`Ip+i{{T(pIJEgV;mAXrc5<@X(xmRe>u6n(t1r!sU}Y@fFz4SYvn4n(_8ZwhXkgEAz9*A!8-eDM zC}Byg2_i(9ku&&5df!D{{R-pzDF;dmN(6`k}p~y zas~GH`j*l8jvkVlQ2N}7>i=^26nrfnH8=}4CEkVVUP4y<0}DZ zkyKc*SQSlf3Dn=Ij(}HojczQ24P97s!;?>rIn1Uq&Ob@OC8TG%lYkjuzD#fF;#(oa zoZyxfl35PxcMV$Gt?u00wEWv~4waVG+ol?{i89LXm@C-~D8K+Qe6GYUS!6r^04B@r z;wP9a*?TSUqqkd*?|8XaarfP(4mfviqg+{kFu}BN^;4|Pm?~8sC1UH9*vQUQFb$2s zAfL1a^5JcnmPw>oIv4S)e+|HVTLl~{01dn8>cbL|37ZvS@)ivgi0s)AhR6^bl7jdH za9h&LmkV6$$f}u${54*hFHIFyMa!#eUCoGS5QP!ezZ^&uYY$B$G8`3{HJdWAI@%_9 z@d1k~GZNP;9kTvck;q(ll5TdguFR^;S+pMgzb*tq;7~OKVe3U0S>=u#Q0J3I#7vB& z;==vfHu4yN2n&;TE5jE*;u}ncHDS|5saEP++nwJISX;!(D_Y@#nmeL|X__@)TnBV2 z5S0akcWgr6)Q|JG34GIlp_oS-3oP!SKK}rjX+!eiU{ug~;p?^*@)(~l}%gCnMJm@zT7pUWLlbQ{ON;^nLrt&wv23KkDy7tJ}0!jYt zS#Az#6+me(l0{LwUzCRJr=`5HDusg)+lb#H>VSxmP=bmqROR64jqOwbVnxXWt^GJZ z6_19I)~bJWd&jG9JHIXl#-(jGd+}eDH&3DiU%;zHGBbf1x)MOR>5yy0T$BPlGe16#C;>ZyR~k&|Xrkln1Nz0jbvEvzC~c6 zX<_)ITdPw;cRqN43%00N83?GE-Bb%lDZnG5pq4TVx^$5Z;mafHKV`@_50Yk#qUDHZ z^ai%dbnfXi)o~sjO9RUpAw?q_vl;FTaj18V6ym_iGOPA$C#C+-xi1waX;@Zm#?>yo z?cGuGoqMqiv^sJ)-@LJ|uiM+-m2{I;3G{7yaM3|FkE+M0$3rVqb*d+aN2r2Cr-xGg zezVIzQaK^KYD=T19~wWU=5j3e+W!FB0fsSlPAr^PhN)U*q0@EM+)9Dfw_JS;`vc0p zU+nMMwljU%^4pHP@(eTT7>< zHucaq2QRk1+}l<9B=FWcNR_(nEmRRKuNw!a&jdzSZXd=t)sQHH1!fB&H783 zYw-NHwSLd#KG8j{;<9l7+%t<75CjS7@e-JKhZzbEb#=Gk`K5OtFnE+0iWAZuxlSU$p)$n_@;sHNi5-81xxp%VrVNP1Qzp zQawhP!3dRonc*g+OP9}`JgscSYTuV%O)bZ$({9ZNbAByf9-EI#s)JL~w~yhk&3SbF zR*zSu)M+&-A?ANBwP%)-QHoh2s&0sx)I{b%yVVjW-`2YDvqv& zO8$an+`Cy-bX%Jl{KPp^?I*Pnq>JH6k!I0_8jiNx^=&x8{td4cUn%*crlfC6B@XM_ z)kcwM=Aev;HswVLo{~9hW@?IdI&LCW5hTYsiUL~SPyYa;c5x!%Ue;w>cZZzIvh7v@ zS{ALrzHE52?UEn=0I2XeKrG*Pl^FZ%n{Vq?IQBY95X{$Bc5ai&;LKQ-Wbl*LRLdi9 zp-woT<;SFkWvyuz*zGp01ug#o1?(tzF^2er{@x$mi=Gd&jo3v*6E3VmS(a9h=&=hh5|E@0RYO&bMMWkqvn)tz%ffR`%vCm!LN-**(uBoVge zDs*pl>#Oj$nx{zf#bMFut(<1+k;>8-#xIhGSF~Z3O0pMbw_-*>Wr-(;$(RP~Hwf)z z+`)^FRXLA_41xtpY5M;F-v-(+sgZ=Ja2@geHC1x0(v?hhF*1k)yN`L9whD9u8+cN7xCCh4>1#aH1 zcONFf79~}Dh9s_-BW5=pIHOz|Y(qM*3<->>V!?Y54}P9JFyMrfw zw|9025`Nt6cg;-R9lsSRkjkMqFc@1?S{E5zWvgR-L*x~fPS z)H0WsEJG@vPuqZxHyOG~RD#6X-6GM_N2OP(Tg%;w#F3{G>oO#TE{ij^D97i*Pz429LRr~Sb$(d-PSjvd+ExNZ7tJBl!=Y`81!r%!wV(Bdyki&SQSuhUqi#r5t zq%pGC0)pec$W^_*sWKxq#f@a;Mzy@IA2q{I&4NHeC^$JOSTmT>T$2atMhFAi=#i5Z zz(1@=vWqq&x{R7+1H;TR>qZ;er}Hama<5JZii#1VU}d6oT%J7C6pls?E-ZlrZFajH z+w35ZUgLpW+6k3|Z6PdHE{V@zN z%~g0P^9lra$SsewZmpyHHuCixTQahb4OFuG@fgr_mDB`jVR3MyFcDM-bW~g1tqDvoIliv7$dMS7ahJoJfop^w1R{9!UZy zP)va%wjsM^+RS+8Nk54!fuyu6S~YFUT z3d@blBxQ}QZ_`!&-UahEW(Ca;sanYjf(vfJa)DIGD6j0tyVB9EhXH z0PLhTY_X{rU>h3}PFR*(c$_pZ;SH@Y2bFyN>UzsCQrhj;s}YQv=~i|oHhCGA$`{3> zNf=8s${O}JVi?(gZ*QY;UL$yG;K|}Fi&t&8DPf{7Qu8X!PV5i@svC0qz4rE>#}oDz z{Myz0-k{psT8M3}`wq1vRP~ys)-~HoN%ZYDD8)RG)NZ0KSe95HL>kTk|ecN5xEMbd$)Zn`!H;p`wi@v%0l@S zk0*K~wN*>D@EwKsGm_Ugs}nYk-{$WzHLdrpSM$S~`bM9n*HLKuQ$y0V4ZBC7>B~VS zbV%ABlUuiHs%dF{c7ji$

-Jl5HyB#B&DVa+t<=C|vNX5$k0Fko9caAw7 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

QJLnORew!u5v$@SLo5%Up2 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 z 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-46.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-46.jpg new file mode 100755 index 0000000000000000000000000000000000000000..a1ac0445715e043a4ca64cd182b03c908e05e24a GIT binary patch literal 53842 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-47.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-47.jpg new file mode 100755 index 0000000000000000000000000000000000000000..5417ae2ece83bcd6258235412d657216e7a7db9b GIT binary patch literal 70678 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∨@U73Nol>=!lY_ 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

ejhz#Vp^3eb zDT}eaEzsT20m#O}3IqrUyW853x&B*wL5lY>3NlkWV|x=zJ99w_kh&x@4~4K0l7Ks( zyRCz*sk0&3JKoNT&s~t>Uu=Bu*Z&j)Daif>akdtu&{R++6SIeyl5w(dvamA0+rgEc zLI{aW0Agasrz$S_9~AF7L5lxoYB!F5nVF53mlw#&4rFI%en&7ndDuA{x-;83QT{{m zZw_%&Cu4}EgY!Qf_7A6_k-dwvAO*#HJ=uTCXY24^o7~LQMZx)IX||378o3{maXp{+0c=Ektab|DF4H z*2eN51Mt}x{?mQ#%qFI0hAuYF6hi+$ob7*oLIi;S^pK6^e~A3A+<(d}0Q?^s{Tuq< zI`{paf0w;G&ASf*|H}!5klt1RV(%ly|2siLLqWa&p`iaW{ogC-e@Olt!~cN&C;b0; ze)|bPNBC#lf`LK@K%+y!phLa&14!QoCzyBc_tJkq?SKymaPWvourL59XykW*02%-a z4gduU1p^HS0}T%i1qTBK4GRbV0f2yxfr&*v!=)y2vLk zAD=jRgZAX;qqE$l54Y04*l2Eful?)IBn_FZ)~)mn%p;&a3#o>xkWdZTx4(QH8|Y|Y zIdWeglQP0Co0I!~!A-s#nAA(B5+VAzmqFGzet7Qpa)CV2QU%Y9%VYf@`j_I90+L9#-iC1^yiAT>z zpeVC-a2g6B4-VM5e!_J(kCT6Y!>F>?Sxt;LVKquAE|#0hG=~#uM^7~h{&1qYPdcx> z;k>ll*McRl$oT@SfOobc*DiYUWpbMHo7DVNRMoKBH$8#YMA6aBQ#R;G)v2jkZoB_! zK1TtE>%n#)idDL)i%bUxUw7l{fKwV>9~ih3ammoCcBgJ{04J$Gz{Vu25TF8oL%KHm zL(5XxOw&AjS;z0_EMz~0=L#DbV1I*^7pqlC;=>GQN%{uRyHZApn?hGRy?6o!DZLU~ zcEvP*Yo}WD6u}y^i^Fr3$eh*$=QZKc!7k; zYTJ;)j2;RP$(q=AMoNY&8y|9$Y zfJ!SxnWa^pbcl{Jt+`T&0QOa(`ifHDAtz5y|}{|Ld>0#RQt(g@L}W|;Nr0P z_e6!h;mW;Zc;EeWb!X@}N)dJ87+&VH3cpQrWBY&=&nXNul~fB%iD<~J$0Gzimp((} z;aRsIQuDGi;53Iw8*5PbZ1SJ53Ogi`_8bq~ z!1G!}q%O_drhN�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 z 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-52.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-52.jpg new file mode 100755 index 0000000000000000000000000000000000000000..8359456884ae374aac38b87a6c47895d285daa2c GIT binary patch literal 72295 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 D>PCx9 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-6.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-6.jpg new file mode 100755 index 0000000000000000000000000000000000000000..f5a1a18dcaaad6dc37d2b8d58bd7a7815638ccb1 GIT binary patch literal 76782 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%0AV{?e94JH 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 GG5^`VouhF8 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-7.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-7.jpg new file mode 100755 index 0000000000000000000000000000000000000000..36b4bbfdddaaa4d88d4bfbae3f329977a7f8baa4 GIT binary patch literal 60740 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 z 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%0Amdu^(Y~+vPM01h_&VLINBV|1XP7n)LiJ* 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Π$QJ@#fQS6lM~>U8xwxXDo>f=0 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 U{#5y^SFdI=$02&$qpgnwm`$M2k*V)t0 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%0D_8g++?SGlR8+e=>SL1a-Jn1~7+PoF!- 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-9.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-9.jpg new file mode 100755 index 0000000000000000000000000000000000000000..a61fd25dbb734e6acc86b8bc1902c9cd537196b8 GIT binary patch literal 82970 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 +UT9k+w9rtC z#kESJmyfo}V^(B`9XRz?HAyNT5@BrO*2%DbJFiJbe%J8^-ywtiX4_Kr8&l$3STi6p z>lQ5v-lFpw6+X!pFo;f7w}f11mX`uusutAlR0ZlD{;YdQ*np*6dl;5(*g0qRvR#Jj z{{V%uQP_GbOpR)~rtJy~O7qVm2>OM&pOGH0zC@`H?|${Vd$6*cIyO~hMO#`ux`ITV z2~K3!nMZasnw17jh6)?P^-Omxe&Oo`Qa?%{zVNphv2c~ZUu$LuxuP;00X}-!Qott0 zrE**Lv6Lht64rzyWGO`+oxCEqY7gEVd6Q3A#dA(JP$W9s(v#{*l;v!ygq0MCfi zec1-6+^Lb@ahL2!iN03MF#4AikYdq1E;+FJBh0v`UQrbbkw}D7nST#9Hc~Qgh%^uq zLQ&dlvymmq`t9n*+}N%=NI3j!qNm3)881Y+sDVB+b$8a$NQv7yax2BhSXN8!3vd+& zPt_3OsqRQZhtieqE!O^}+y0zvM6R~oq>ZD_QQqJ(sSt~;rr|_Rp5^vnDYh(|eSw85 z9I!?hWso}+OE;g550EzWaCMMoJc5v$DZHNO;y-ZExV>bVGb?UeiF`iqiyAPXj+2Dt z85Lg%eMpEsHu-&+CQrsH)9I5CMD^K zGM;+c+r&`Y*eUj_gwexNa*hcVR^zti`8M?1?Mx&Rdq&axmgsIR@s(lgI0r7$>leGd zptxn0VS|5$NtatGrL=NE{{X}zU_B-rLO?VU>%`F1R2fIE_;vktO}Kjx9We&mX(O)- zzeeabXe00;riJuwz`h^Z&Vga4I?}%buS;oBSg&q(;xq2X6H@m#=G)DiZT=<+0Wc0V z9L2$PzGNt#-nnrtP=3_?%bG(KdLr@H;h^0I^T}Lju38Ii-u=O6x@B(wqc`MD_P{N z@O9UtvnnaR4k|cMT2eq$9#HX(QAO=+CAa?gKFSeF+Qms9F5-!X*6UE0*EL;ku(uC- zqL!3QL)?hsrbOQSRW}{Hd~!}Jx_Dpr>76K*s$ldSR1vKU{4uE6nu$kJR8U@N$dNY` zUDSO405UJ>)~m~=>?~q6;-^Vz{#YD}TuE2nyZ*bPr-V({_3_r_s*Obk?=J7XhAyJ0 z5~Vh;gAhnLKjuH4l$Dm zi~j%>*2N53RaNoH5qy7D>C;Gxw(C;FBzhwT+xFa*xAp!$oLMKfDD~AEE28ywgMNUx zBrEpe)i#R?H{D8k$I|Xg3~nImrs5CmjjP<#$Bw1INK>a;VzG#F>4am6LS8Y_(%hbF z$HW?WOX|Yt^2TtY$QB)eCDM^T?v!98`7VR<9Fipcw;~pqWY~^qakoVV`EEOxN!m)f z30Roj1-HSHK|&`HRa#D!-Kle>!?uDx+yu1S@t{hVXDNr2{S&rvw3jY9BkJUcwqWX^ zA_0=^%uixRlb5**t;Mtz71p?EMN}ndZwgv>kdoTI?Feb*RmM?}Z?LkWq?Z2ah{A48 zfiAio6Vk*6ElaYOaFF}x)8xmdT)je0E9b2^YO7T%hq{|}^5Jz~P)+bfw&*t)l3Fh7 zZ+_7tuTR5(`BXu4mO|U2As#2L{Kp=MmN7z(VlZuxvU1bm( zT}SkswO_^G77;-=0aJn_!yC~`+y2nq`xEBJkKIZ^fZW!g{v%~sBDNfwiBld|BukXn z2H}i_ZBf~B49NJAuf3gwhpeFjDInCmE3}Ims|{Ixgrb^?5bRE+QLV{&FLl`S_#A+U z+wkk_r)&-^mGr=YU17% zCp}dy0V{92%2reDe)imIl}+eZ$YxkLQ)EULVz$ExHW%G8^YI}NJ(k5BHowZZEUo<3w0GM(yBXrI0=VQHGN41S}-hHn9P~c z>T6}c4!wx*j16T0yejQ{d5w{{?*6v!a}y#?u&A3;QdZY@&Gh)OsR5BVl|=zt%?H9o z)Ih1`>ML-1ew5`w6}%IDzw>^B4ZMwK>ST*PLU*0mcn|Wat8US`f41*&sa*P!X?6Lslq6d XZ-Rr>VG4%T(3L2pw{+X5yC47ABPklo literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/images/Wing.jpg b/test/NUIWindowBlur/res/images/Wing.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b27abbf2e55d2a6a621f962e4f0bd96363ca3c33 GIT binary patch literal 249387 zcmce7cT`hfvuNnOSEU6A(yL1EMVj=gfRq3NKOhjQbP$lSt&0f$2&!T#Vd8DK=Pw+|E;?&ky43-JV#zHa-2 zeS*V$WPpx7&@g{UFi=TOK^^E99v-4DFCP^ZCFl7sI5`OPzI@=nVZ-Ean;IBd+8N1` zVE;wgB@V!57y{#0H&r=09w*bGQi^$a)1}<>MH5;xBdSh z`f{0k?mxH*4wLirhIskNfgwTi(VijligF6_08O3fpg>^czq!{EA>9)J`UHa^-u}V& zwL~23Z^^2P=xEbxMyp2$g#`J8djd)D!C~srS|b0#rcS#4ds|)v_%D#~f3!rLEv$hC z5U3CEhTIJ~1zD0DB9%n6>4BP1Z(ns=!(0D>g4ELz`ER0*y8bUQE2^of$tx(yD=Ep6 zAY{WH1c!S@%La#u{zdU`9ELt&V5omc_}>Zpi__B!5)rN?B0_o&{7?FVLjDW+|H}D) z2M+i5{lBFA59q&7{w1jY4(<*9FVrCs(7=CD?G2Xq3G@l_2@Ve zEf4!w_usP63k?5v@88`(|GxrI5A^&yebKVsKE9q2f#D+B|38%Ne_bJ(@_%P2(EmS3 z{#WlmY1Wkg9~}J~^uJ9m={NtrM^YM+4$A+R5^B?5VgLpti}C+%~aVoL|XAw|Hl3A)efMcproRv zC8r|;&@+$#%vb>=(kLj&D99-(Xvj%FCL{j~!Nv}t;Sd(#R8*qX;}X@k;kNap16}tD zg(mZ)h#3@Cx8Eq@g-!3%U%P2HpllS@@qvU(fDAxF@VEWPSO5x2aw=*v01Yi2>9Hjn zfQ&Q!{CReEzIyhhSQq|u|n8zm(VRTJyGL7&WYEoaw>R-bIlimMHM(Ua<2}V|__RNq_6Q^WH|`{4>v? z-A1jV@e_1>Mu_euz@ppd3i;jVVJ-6ozwTWEDnD|cTk1;cSFux2dFk=R5RL^u6V$hE z^gIfu^Ht5;Di05r{8$T6_EKK$Vj17tNQA0iw>^|MH#9pOiM zwqbDbJ9DnZfnyEbnr{rBkm--R7Yp)d@C7Re0|{^dJIy8F{;jQ@jLnrijwMN3nPpF# z&LWoMH5K#)oL?7xa0&SAN_U?n0w}KZ{d-3CbD4ia=!d!T23(S5suCt8Je2vE;6mMp z_i9f<;x|&%ppF+s+;{&un77YGfcDye0If?vqWL9YuJwr1(1^^uN?O_8P|U$7Z?#tI z5!nM~y-&-d8Wnw*kQ033?soqN<&x-N+hw@w8)1xlWvdRo(r$FVA=%{fP|AGxqN|zfTip(l)G*t zv7b+Tq$7A@f~(&Szth8X2}pQfG%5W|<9Z(Frig>|bLdQoNwZB>8@;u{(n2I#`GUZs zOF&pdbB)Q{H^(Sjzo~zsj`ETE$DlfrIgAG6Z&SuUd5kUP_k7xcvI2XlKK4 zn-3#v#j#B%2FlBd@>+!;F;z27E{VLE?+;qdDg!0{d0{!$FCA)2OOv6o)4y{jC>}=a z z>VD*!!&o|*w!{d_+b2}T`~;zC>~{} zpkl*%Yu26n@zz8m@y(-IhG7Riko>jP(Fcj;XxTRG&Lv=RE2u;F#$87MggLyCQDjy- zP*qhUKM%iy9AWCa$i&BDg1cd_YLrJ~JvM&B=<|6#e~yzBV4e7+MveWk-G|e{MQLYj zH%^ZFXZip9DIY_PTh2Q-Ubb$hZ$exHk!|GviP7;K56)sA-so4+>LE;%KX%)C>+EXp zqd_(lJUSFV&Z?D5BcI(r5A38-7)YTd~_U%l8-;_!ZRLa!3z;y{2z}EAD7>sI7 zDmahz3uo-fjVZf@;^2Ph*n7Z07J>QhBJ<8WYncMypSDnb^+g7TNIeoxl57thI&iS2 zqqiqFIM?ai?!AL`!U&36-^y|ljt|97iR?4?u%-rIfybZ8_x26#ZA09T?)A>P;_86^ zC_A{Qf=e6i1ABH^_wUdG$+nZ}sd2`b^E}CEtgfPT=c^LmUT+CM^`%QoABj9YD z-?P`BW;8or9+xF>(>9ee7Y3!5=X&bZdO0<1}KBcf#cvg`)+YWH3I2 z^hgIY5C|j^dLJ0saCyagE&M2Twlu4{SQhLjB4c-NEhRod=!DG`IM}uWAH(kc{O8^$ zUZci#F9DwTN8EZHt*EsqinS<>2x*20kNR^F`+&BZuV=tq@K2ruzC?MPp1VhJ-yj6% z@;Y!bYA-LM*1Y7@#*@Qg`ty)z!-`Fmurq1Wr6 z1lEW$8mkK))e!FKcgc`iNDi5xULqt(S-t7Qo^JQh#3^`3ycGnEsoh<7Q?Y(lZ$0$K z?N}75d(_Q>#D-2y(6TqN8z+_e+3fotEUxG8k)2-F$W!O# zLhK;`pWvrVEaM~BsyM;UVS-ESdAL7tAr@0|CY$V6Qgf|DIodSxg!@5_$sOXa%{O}q z=Ts^7eAdA!G9Rk&qVU?r=Z^A;Q5sOfiHv=$R_Le)8H~OEgQv-;>F~?Q4-L+@$xH9K z#4g$mahdR=gAf9jfIm}#hCl2x_{Jz3LGahjO+CNx!D-xCWe1wKxd3O)9^{iFl2BwQ z9P1Gujvj|U`Dr8i{C%K-dHGKMhsLHi@&_Z#yq#DNT@e0Ik19Ug;^95sq=`<6%%M7g zo9t|n*eEH!<)Jo)4nP(yLmPHiNA9JBh%&G)AtB1}d}FH6-}&OLkB}VyY=U7aWnc>~ z3=?`R)Hhgt1mz!vCP$Q=+P{-;np6`%k97mj+Iit=H0x zwhmN-B;Iz#Ik46sgoT--ci{bGxV`O$2r>QENRj?-G^}n2W-u=Fv^b0mz_;_(JMSOD zxIiz{=ko+Nz9vNXdJl$UJ2}Yz)xq5Hc{SKBCx>6bm+V=@p#jr)=|X%tA!c_#)0|>E z%9lP>p}tjld6mjJkXPasAU>Pz1eACZBjgy$UH?QE-r`zo$?blBUckuK+MM_7joc7> zU;0uzov$?g0YjBc;~u5O2t0dWG6)~S`cBp3E`qj4mQ%SftHN5?hv zz6oNQU0X}PzX@tfyJQ#QRDfsJDC{G7ZftN8W3sHAeP&I+8r&&%dci)09977c;)-Lq zr7YdPkb;rKhV3=fRx!Z#*>R{Wk+so9Jx(L%%}r`Y{&=PnvB;(PGC7v{-rab@vua+E zCqQ}j&E%Ycds;_$?BFcFkpu0udlX*PPEY8KF(t9`$W86;;@bk|0g_fv2i&5&qVz8T zx>;2PsHv6r8Pc8ji^TX#0C;=uc0|ao)f@Z=g2#zZc-SFZ*;158ZK+sFE?gsx28@ua zo;4UkrdqWMu%}dd8m}7Giz(CFXM!OGiTUgMmw=|Az1A9Xx{vMC&tGv#lQbf|Kg3aE ze~~zV>NAPLpjVVhMyhUh{3ch`P*F5b&wgI6NC&kip5+PX^$@Nv{UW|HG4cFRpUfV% z&VOg-8QHQ zYWq47e+7xgDyLGln(8~*2WN!`x?J&;_#MIkI=}M-aTb%(k@@6mV;mklwlxPbI$yT2 zi7s_dAmVrxPLLg(=jfp04H)`qc0d=;k0hB<;l|dz7pG@p0#lq+Jm}LGV$TT!ZYLC2 zEUcuUF-FPOq+pU>&L`%4b>*u^mCj9|pvwWo7>g$Kk~AG?4#dqALVVkYpE}rESA%3q zIV=4?hs1gIlJi^w%9JtKUczCwl+?5eirc$k-o5g9O=XR&sLG1!zKrI>OwEJ=mbSlv zyUn$!Z%u-9wO55BKNQ)o?ngMTB*+d&3&n=f8xMC9l1~nZ1XK1I*!{q;=Au&FwP0$Cp`%V>p*v>IEst>k_VZopw;EQn7kbfWWNQ=A2iDb@7ziog{%qvm zu6WaS*17Vo#rR7N&PT%q55+!cy_YWqwC(RCdKih75-7j@iybLj6(wB zYCkc7&(zSkmXQhsA#V{BR9&YEuJFd!oJ?_phdH@`zxhW&v7j`ugkRXbnMk@7=Piq> zEbJ3wQ&ax9hmgMIKCI`au13%v+_g=rxEI*$=C7ZIa}*>F7$ za(rgg44oyvqI?Vr2A)$T>un}$B##$h!85mRQw5~fwu7EfEtvCbYndnWYNXvWvg|L? zHZe~;S66sTVF=$ianUn-ajLg*J)O4s)o2$VIeBs4$g2ZBQY4KuQ@ggz#+o%%cC9!! zE30)qzsXcrxIFT3FkH%%Pku>@3ZMAO`c6b}s(CqM$jkSv#j}>i9{f}*<`DQgd?7wN z2;RRl!&NKR5>TiZw^(twzf58HMzVlQ<2nEz>LdQMCm$)iaS8B>c{!_LE0bjI{eAZpo^>tQrJGfIrBvrTB-ae)bSf)8iP5O2_q4;6gpFw!dTnh>D( zalpiV(pbbEFAgar5Ml&$>q@@m=2*4zK=l(1tEe&ry$>Y&FpxIs@i}fRPLI$Hgl_;} zPAcI(X?+`OY-|XO&&#@)Pv45tNOB?`Y7lkv4M~n3TVE`7KYB}I(^AevqSSfA+E#Zz z&6asW&$A6rwzt0!PaLdo?kL}ul4iZr{nI#LFsfzWLlughmcp{_g?0*J=U~i>Tz51a zIBmxuJGK075VIW~2~#NrY&ei>K{{o^3R|#>V?shO3F$>OqqZk7Z@l;WNW5rSZAS<@ z)NMeq8WRD^k4-+&h)2$~f;z&)xYe&4O6paE;(2%Sc2yOuAG{EKtc?hE54!~Db!w6E zQ95+Kt&OS8N(>+xNEusmI1g0);{xo|SEP5eM`Mz2{qU3g7cv zHLpt;nZ0~$KVvVR1V}sV-|M8n4kmgh9!K1{y^&ISc4Qc{EOoaBVLa0Khr(lQc*GZ! zPT@tjKuVRLc-GyNLPRw1OO`-vVVrRR-T=P!;gozsHGXsQD89nI>TYy{Y*oe!+yfz7 zBk7j3FK>`acP*s`?xYVS44y|Foe&WC!!HamHe^zLZu{gnI6M8F!w%`QyD~cYP4KM! zOkII=s~ZtoMTzC7`s)hj!F9CfZ)xvbu`b1|zF}p{TzDbAON}8V_BjeB_^jpytlS-A z`XFh8YR>q(%{f;xLROQ}+@9mpM<++qbmfeWEwASZ=h%3ea)bgsgExvj{GUtS*aTdy_B$s4_a9C^I_j4(Z!L!n6_- zp5Dr3&yZ>$Q?cEZaM?6*lwBj^|1T<#4wtrcDp;MF} z9G^5+H$XVurEe!L1??SgezczE-dMJP?PocCE5z6ki<(;|Gd!?aJDpVHK_|xvmjH;{ z)gk-VNqVhs&_-s{t<+%$8eje=iDx;H+Ie_MBBt_adt`)u?YsOeyJ-q&GAO^{cAB{7 zP|TuzsD{8XNB|i$vOPwg8IWbnHEi30&5=Ho!HGp1lhg35qQ2*T8i%8x@ez|5B5T-X z3h^n!LjKPffjR(gaH&VyBu5v$b7FPovK#YaGEVYTmpibKD%ckHqbp_=xeO)G9Zd*m zrCoR-*OQ_ZdrHJ^&dCTJ6yx$Eh8uI!ocA^hJ*pzM;X?>&J6%*rJ$y@#S_C12>51^DR6D@GEqQ!MYtUTO?eUT!u zL=a6=eQ1by^o&$iX*Zp{!p??DFiL?FGftD3F?$G7kkf4;5_;p|k?uEtrsx*=z({|! zrT1n{!O9>Bi(_nv2^Jdjl=e&6wCFQ$!|$%C?We1?;*WB0uRQpO&&q6R-kp)AXcJ)& zniR?k`mJj+YfS~%BDk}-gC`*9g#QlKvjaD{gXj-E23!K{j_OxnMSwuo{ z9u;yX&CQs0qQkzXutKL%IiHS2y6Ik>^DU{R6E_Fhyt4t>`k!JEYQg#Ax&=!rvLo{a ze{@1OPcC`^@v)ZxlpFVGw9EJ`|DCay{*_NTI8{wM*YxvH0ylb?J_OnzCy9Ni z+ck!gkJoqmzj@kOmojv3EP>}WYj?-DePzrz_NIZmq>4)dY^|pj{&NxOczSTVCbNFW zA-~DUa<@O-0s$FEADSg26g$y^-AWsh2C>ekWk9>g)=3F{o8MChz%?2KW0aI}^=5Qs zXk|NI==^9PaI2Inv-#s^MVVRc*cx0(jzkr}zUcGDc~J7=r@_^>BV_el4joT=Ngila zy=&7xFCholOeWmRPSZXT_W+>mc>LpdOA;FOMg6tNwSdBdz_1imadhsOBDyGnS;xcb zSo_gEEt8b)S+BrP!oHdFwAXZeKtst7;6qgqd}k4v_#8T7EikCA!RTPKh$m zYgWNydk8?&fy0V{1R7vK(Rp-?-?z4qSbEe!Oei!Wk`Axy89ZS8RDs>dha%# zXct5v$|CnJ0n6bkVuQXWIo0y@UZ#rv_gZbFY3a3ZdQ8L8nZd$BKbeUL&<-vL*;>YJ zqRI!~V-yfC=!}T^;BM$l>0_H#zKZPl@g&);&!uqtqUN=<)Saeq+sva`7|cO9^5ucj zu;f}ji=bvcbzX(y8YVV~VfwQUX>eZD_$LRF4o+rZ-`wVYDh zTtPML;$K*T6aCqEvJm0_A(8D%VVu7XLhavFsV5AHLOfML*NV#mjE}R1Fxc zg~xmwI@nBK=L?bc$>zV4W(H#ien`oQ?UwKw+I51Aq+x%cAZ?d`oei^b|01S3a#Iu= zXGvp0ea-f>hFr6xSCGDbe26v%Ax!AgdeCJ6-8Q{3WENyf@sy{xCB_Ht{Q40jH!LNZkB_;4$NiT6JmxVb z;5SBmzi%-(aM_mH?x4Z{@GfdLRO>2y*i>zzjef(%f!Jk?@8l@o$4H{YA8@S#Sc)-AIA6uq-F*b8MFJV2sqdZ$nq${CRsg^*H(JUR!2l| zktgGO#0o2~?>4$Y66BLq4t&z4qBZ%!dZKA@&vIAUndZVq6wz!OF`@)g9iX>~|H@O> zm+Q7XcNtA>RWJ$Wa1<6TiJiU#wBir@mCRD!ny^{2wosOpe&xReFle;yA2|4~3bB3~ z^q4%0Vfb4+(z0qQo$Zo59Xg-3Mcn^$gu*UQ<1k760Ov=Jy2HtA9f4|W`x=KF9@EfS z{%z{a^C4b`cI@ww1&yEyTDU#~J7+?Fhz~k>n%%WfwWyt=BFOsd1O28v<~yl@(KwiL zu#Dx!1EzG;G0COR95bw#xU@8iaSah!+lGr&I~tjd9&0a2ViTkW=T8tAocbfDu!vEs zN_(UGoB;?|SmEjFd?|oxE;YNOF*mDJn1bv;`$UMe^BKt;{b)b0_KUc>un&nfW{V^b zWk;+>l@fcTXaPROX&%p9Wx)&l=XpsS~IN^Qzm{r%Kp7&O2x;_e*oUtH; zZ4jkyaH(<&HFDsb20z}w&)XXN9n;(S?3Ymnjh~2u3Fo4Lk4x=~=)O^RKQ}W5^NC86 zKTy+;7I@T#(Gev+i^U(T&ph|HFtY9uVNgcfX*4XS=G_4Lf+vsBc^XtYvgL)^GeX1) z1CKsXUc`1O2UNcyCo*DfYP= zm@?d_jOwa5Pn_(WDN~EF@Ri~r2f4UO zDWAc_RKZ1D<8+Di1wC<31%;n;0n#b3!xfK!R=C9d8K!r}^wVFRz3(Rjf+rdX;H8hG zYE*)*sKWYAByb-@^w=Go>&se_%x(DI#`O$%cM)nlt$%ZY_Lx6Y)AWvg`|1fE25=%G z^Ig3;*=%AR)#mu?fKJg^kc0w;vu^|xJV85cCIhQZ204_8aA#2p!g209x6Mb72ri5^7l&uDpq zI>|)T{W&%6o^Q0akQPu@=t$Wzv9|xC@e;L5hmEvDVs@t7%0zAKK_>Zb3a;6>{K-69 zxz$B{Gc6>D%a;`o?MQ6fl@Z30NH7f-XcL``@RXqtqoq6OUOI|H^SM-Mf z`09T~k=%R2VpyZlS>~T3J?bDn*dlEU71Iz!M`bZ&pJHEz2U3V8Be{es+fO2E{sNL6 zt}}1)D+fg(>mQxwH3Z2r`Ph{~#KBig&kT*?fkgqetoNCCw5E?jYrdndWS&rQ8z8IO z9y}oS7yRg3&DY}|lB!ZGF?l(vR!}_7gyCg-ZYsE|r68Jz3K_`GH#%O4xifuJ$$pXJ z$_M+F5rxWWD191$lH%HgP)ZF;fP*o&4q|726LHmnUJ}@B>T7gU_`Z;fpk|C-kL<(rEJGbJ7%!DY7ebU!@cW{*hlZeL zp4UDWFGCNf=qc3JOr%6Ht0yPj=bDySk|TTMe`>dr2ikmcH!UFQ19eI|`Au}Nv-q`@ zx?BCK*j;;)1$aeN2X+{(Ka8kx`{iEg8i}4g5HH>tlD~$QaYbk-P^@X~;T~>w?>R~B ziy>WOTe#TdKL5g{ek=Kh4^Tud6zmhFtMf}EmQt`*MqGWNaJM63b&RbnnI1XDm~6Vp z0&E)h>>`ZnoE=TMva!FlGaLHolQ;ppz=JoduZ?y{U_-QjbOJRhdMO5qN!#8uKPvMN z^CD7PeV_*Z5~?1P2l|$)R}s>JTUJv7`545380?yLjS7xS^rN^z2iv zo!7$*IrnMN%>ga=QjIp~kDneaBS9yGZo%Qc@BMSE#&m|+R-YX5$_hg==-WXJYqb?8 z^ToI*8fcV8V(?3hu9`@wp{38;29bI~;!~cy3=q^or>N4^r3{sUhK%FX3vIakySXLP z?CXoZ&YhwR_}y3pN~$TcMGI6Yi6%5yFuoFLIG^urA%2yr%PLN$6YIj7oYDr>1s&W2 z7H>zcCH7$=7U#vJ|IAZB_5lFPv8tHuta{T5Y4$7AK>=!#;$z0>{p?Pkbc=Cr zU-}+-bljcZvPEO;+<3l?uF)iq#PSND>&e&I=juc*AJrHvsZ;bR0;Wo}kG z#a(-|`Bd0j@oLssah&&tb<{=rWSpAp;!JD zP+js7JEIoVu2G4ZYt0&)ZSPS{{!};D(2@`>$bJTY7)BR zO{m;eWt+B0o1K*8OMt=nOR_dyLsHt9=@Q`f=ehjFjRLL#jX*sB`*i!d=)+^igdYUR z%oKH3f6PkOtYZy7W4OnesygmU5`9uf#iKU8`2`SMtu!wudFU7KUOzsJ zI=$#T8ri$c)tGu2}8rKTajVq`oN?LLO3r{2#&e;A)j+l z>?sU2J5+y=eovl508M?SR9Qs+0zo(y2cxo%$TWAWI+ll zlgd63kBfvnLXk}4G_Riky93sJo=oMrSwP+#*8w&q1Q>nBwHEiHptxOw;)F6{KGPuh z3lq?hP;l#|?!b6cH0=0~G1TkKRHXElb3ex80oQTA95HVTQ-K_xF|>AUD6>yy{F*Cf z_%3GkVAas4)SC8l2S52E4_&(c+=2r__cA^EY!oWb2gSWIL9jUs9dkHw^vbCQ@o`a| z7y%U)_HaRj@`krlg&D0ITenr4f|TSdD_c2E7NhCPL&Izxl0q89NJmX*y}CHdnq|%-&jv%DwYg8csyL z#x%G#retNnQH6huniEtXc9T{PZBgs6<|7|>U3pQ0@f142eRi(Z+@BBw87 z&NbQhIeiozD5OYL2cb6?A#n-7#OE8d#lol*wqpwZq&{Qb!Zqi3`*j80iT;D8(qIW# z7=$2O9!G4`bPJj$>2ckhC?bV!qwD$(g}ku6tLZC)yIMFp9nzL(uv^T)ZW8C{oP{L+ zOMz#FIg}2Ca5=`jrQ+e|L2b5uA4!KD%EV)a=>2W9uI0;$3nP$>3- z{w}N?J#5kcMpz2@;)8-cmlp_fZ7`2iqZE!&xN$8laz79BL5RwTW|9=w(^K7X@rkzA zzAz`p)s{lq@}W*%@!?9GR5li)g4_Bx*E2J2p_fDVCS8XZSk?>MJXAnu4pB6Pwtd9Gm&(Em?VyUlDE%+1(PW!84hX4R zI6Zvv=kH|r3IcQ!Y^V>i7-ieemHJ)u8qQuU(C*J@E;6DAQmU6lpam0wR<8~5M>F6> zkLRN>8*A+D2S|<$57TUg_Ao0ofMbLgyIYeuKDUahFQ9{%Y)qzK%xyadU5I(R4^*DT zl}sSBgULHWDCSV4(-?LFBD&JG_$5O85?6~v#o{!2==Yfgi?SF6Z*+_!P5uo~Auccy zf2hIH3x23+SmIazaOJ%Eiei0LlXM6(ZUGZNpFmL{gkZzP6SXWPL=DYAv90P&4tESXfO~~8{8uaNL$N^zn=Jb z_km!S$J{I%ru=QsGDkiQgg;;p7o%}NNV3@u(LGGS3Y80Xc||p|UZaN>`ndKbM4=dR z>~^d*Xd`t8N?uPi*y=Q-V-w+{({lHg@jCAXMqy+|A}~ia;#EFPhF*vTvT-oQoYU)nqMEx@Fzk{hRup=eu&?;WF)_ZJ}hYe;PMk#BEe zpn#y(m_2V?XwDV`6~lOC9WZ~la`Dl5_~RyTnApp`%BLTC!^>}6B@}FFKA;rm#M9BY zSs4T+OOHd5iJe;k7`^k3UJtoXMdXr^afG(6;gnifsZHk@`;fqFr#@=R08TvF(x*4I z;V+}SUJHMD2^icnUe0ltpQk_L!P;Qq5;dp_7&|;$E2oGx&36?GsK;=pR{1A}armLil6+TuKi@6gW&y&r9 zYg0zFMNNO^>7P$uk*cnTp$s^mDdpV*{xBGNa)q}+Fmr`gN9a5})aR{571!tyDrUdc zaqB|IJ6tifO|dyqkZLF+Iuo!^ZMR7()xm!yyoY6@3(24Bxp_A*JpV^N%ZfoGt}BF3 z>LF_3{;taUu{M1B8%sDtbJi@|CyABY(M)d(3sAnaJX6*^dlT$*7x6KFpL4n^7~0Iz z8)V4?R~gj1WOS|KbQk1hdn*ygLh?x4yoj3Jv|?U!wYvww54|1ro3jiQg)M&&WeJx6 zq4Cyipjg6JRXWXmSuUvCZ{+WJ2UEUwF=Z+00XlRSNKk{2fjN&UtZ$L*BbSGpM$9`t zpE{Q@0krEb6n0koE+gN{QUA#ML1Jh763|m`!vVDwdDAHEv2Ai1QY-aFxnI>wZzWqa zX2oG{h1Pv<`pXw7k-F*i=ME!p^E>#B(iT5$0wXnbrJ}+n0Lg4oGJHEoH(BYXIJ!}o z`)rKi*}i^uy1P;XUpu|!mUY2)r@z?ATQDRsSnJmQUM6VSB_RL)qtn56AJl#_GQJ;r zq1a>E7(%_;G3KSNdC{++WnGmgu?3o^ZZtgG@#-s_yK>Kb(6lcp4Hc zCT#ufyFIFBm;v?ZsWbLtL5iDQCRG>6yIksuUZ(aES>LbM_q6so6=a89JdKBX^Gup} z*+y}O48if_?Oks3U8R%>sJ*|q>?iC;^`LoQS-*kkr=p!!+w_J%lQX=BMRP>`RTI5e=60lM+Q^P zdG#=zFuh?q&zp*bncaO@_HR9zfUrh=J=vl!CcUFnL7lg~FU1EmM}Ei&`CS zpb*}{OqxN$)ht-w*XiT_fAD>j2B8@mv*tStER?Od{W5Csx#z0t=l-4rc)(F549ets;1jq%NhyZYpv%}!jkD*o4u^#BozK$ zQInLU1!(|2VQviuRWoakC67yjcCE%&XQ=4jHEedPGe7^pL?dM%@AV%0gR_`|{o;#C zfj&Q#N@`1@ePs?*E z9@jI{r%`y&?^>N~(bhK^-fiZ5@r1JL&iHbkrJ$kpYueKk6}IL;w+w9*w@e?h6HMsd zlxa^||`KbCITEB16xu~#B zZVvKm18CYD7`@GQgtNfXlEu*zdb1|+r?0VL!_W4&Qj?_*bFZ?}F-mk>GFJnu`) z3FW3sT63s{l;m8YUFQ=td4KCdfX<7Q^p;=r-sW-$Zw^@u>Jx$Q#chzbB>8JOO?Yw${4z`!s7u!`a-L_S88_gn^&-r8E#+{LxHAoolAFAk9lmr`f$J zf$>+W=Z_m+vWZ9``!zF#AtF?OQ2qY%vvWee+jsM@j>dZu2fYy=@7k-J*Q|O*F3}vU zOAJ8)expYDO9UsO@?jGf7Rx62BzGnwH51 zS?V(CQ%nBqX~e(;-30^SntsY9z{9~x2+>Q_3X5Z{q+0kHI@1{}!5D}s_*CzZ>Cd^p zUleuBlTAAFR4%BKUlr@A^p1WdeUSBQbDE7nl#=onGWbMaAzY(VGzf`syU|vEht06e z_XjCk-9?+Wi>dABNu{HyJya_R6}RoJ`Hkw#)9EKx(;}Z$>nsoJH;GiB zO-Sy7r100h``)n8IU=tx{{p(c11QAhCpt7j@i%$?JLcQpkw1o;oVzXmbXZRrg zkxfB)6Os!0A{ypJdyMkbth)vhsRC#4tt)F}3BrB1jLzgP5H~4+dbZgQBaStFoaL4yzlS9= znvGn%oXcrjKI(7PEFjB<0+lgyu9)+_1a#Syp>nKNK-uEYeS?y(yIC32=`v#s1+CQ? zRMxB*(&>A2e%|)M(M;O118md8m0vl>KHD$trS@=&j~&NrIst4-he8HQs!U%Dlh20o z>{?XWPCXErzHSn-*zO+$eZ;mTCNWXSZhF1BMI;kMvCMa!Jo+PF`D+V==$ta~btRlF zG2lyXt7~f8mh6pvwMYt-=zF^mOTk-(rpBSjq2}i$Wu)K_g0R_U2+4hKPW6CIpe;PN z9?7ZZ%5S?{o95U5Fq?L|K!S3l<74$bg_;vAhU)atAVRkV5l(9m;Hd1RvFwVxA%8(h zp=nEHyDWrd8`H10IgyGBB;PeXG)R25L;k=);$Z;lsejQ9u6doBE7nA3F^l`Qs-Uz-z68iRAz!#J)RmFmP~Ze-2E&{S)3uo=r7eU55DJm#(EWyo z?~&CvSUKn;L1L3{v~c-R2|0XVFQ(kByPR_e$i?Twp;iaKwE} zUYp@CwG!yilKuXJ)-+N|^YvBE)r&Hdb#_akV0J)OhYHzr%TzP#;@dJ%efYOH4t7%1EhZCv>f^dwJrmwD}hRxrtO-T|hgq zljJI3Mnu0D%x1?Rp-vNm5A zhYI)GK-^Y&KMk|T^mhib$_hshQ^!>C*u*~(AD)PfQlrTkyvN7Dp+5f6;6t=p&8=KV zl{=h6jy@bW%*J=h(TeGsk)YB`fPBlD0K!PuepH$P(U5-kp2N!dYVAP!eA@lBz8?zq znoz2hPi)Lv&98i|RdElb!?odyH|oYom8Hk+(6yU>W?%LV-u2UIhTgCo(6cB}681u} z(_+0|dGPM)d>(JDoeJAby8Uf=9&!84@!*3Shxi(^YSxC_((E3P%z>yvuERqJLLPkJ z?iSmEn5PVy&#lN02q^o#Yqc5}dG1#uVwgVwliw(KR=STmpiJQ{)rcioyG2whXzHb* za_xhckHtX7oF%rnFO`!5qp$MwRG*ZOO>P)pt%}M?(HvC-O3cUq>z_Gs<*m{uKdJPR zu4WZ|SFR23WCLkawKjp6bJ(0edi&1bUs_|u%O4VT5cix)qMzH)rog5edf7bfzbb-! za$*I}x(hj|K)9sppk#3mV-AEt_=~p|40<7Fef1^v&phiBZE3ZSVa_{;c!VJ}ct5(IxA8Ptmz?vXgV_E-vEZpf|TG1;Tu{hLp9 zW&A2Nqg_zR{&v%i+9y;^Bq?V+>3Pc_1LrQb?DTt12l{EODAI7J!gOV0tXbH@7`p-> z!11TPrgELZ=fuPuHZd8tME{81lDyTgMP|PKYOp4%d7*NcsW4jdlzS}-7z^Hv(MHpC zFQn8K-usis(U;lO>dwPL0Ix;s+dtu&O85CA3M6{fJKpkmSh%{ub@6Do7nmM53^i&B z!hO{;#xm&)e$aovEi9&Q@&e%q?Qa}uHPMkbe0TsUw`lW9a^mXx@P?^c9c0n;(2}oV zkzx2{;T5p+`w0`p7lFC^rMC;uEEk+Ip=vC~)qHD>rep2gGcLx|6ItDH+OHdR%wL() zajQPAF1={2&MzD+lX_mlqdSP^lN%=nzaO2+cKj^y`#ZwE<(=^LSBt9!%|cdmc3mud z-39h#$@=H{5y38nNcqCe>JW*HR$&=Bz1h3C1CyQbucu~8ZNWg6^@593!}R>bYzW6* z7wOzN>G*o{hsgX@lO(vG_pLIO@pbnTeQ^u5Q%%dtiQIyW)wRay^VUy2MJgv<7|%07 zm=#;dW(sbAdyb6uBR}fpf=)Uw*xB1Rfh>~f6&tMBLB7k2Xg}W0$hbQ@)a7BgoGihh zZahguuODuYN|mL`2p8Eg09a2az~4q5sBmF|Qc_|RZvP_QeRbmjYq>CA8J8+I{aAyr z^@9=T6fV{_2OAM;vB%QvW`(N)x<*fnx_?fU#yR%8KKOR~)?&d^NBAOBUPb9QZ7G0E zPN5XleyEqtnSwCF>&M3>p|VA;Ylh*p8~liaL6HnUv4|1ZZzwzeC;tZ*LFm4|oq5+1 zSmM%1hzAK7O zs1(Sc)M#H^4YhEJ(r(m-*0g=8U)6A;5+WfG0FgR_5ZzahE6ZSif61GuBjS8oX%lZerJmxTMvK!2-az|I$V{kaN8}REtR6j%KB1g zCPWoucDrDupppa^*GRa!{-{{SXZ z%eUNy3-RlzGToxLYw*O36jZ6H7lnLL#JXP0GOcM+$#{`i$t-(CCmuw3cH73^Wg89l z`EvKyI@4X__N+yOcKxY0V)%WK$@JXJWGI3%vAZ}}OR8`HFj5nE!3Dm@a(~U&Ms2%I z43LYks}fK>>KRw|#~Vf&T&aqBuyI4WAQtT$jP&~+zaLXlvggpl-Qk#_$8 zh=KV=9R5=CP9xa+?#E{2dgk5V6nVv$a0#?-jy9F9sFz(ik7K#0SgVAKc}L4|8H8M- zJYV16@7ERgYx>OA6lZ}ws~wybd3KR&*j7*o<<7)pr^QlY3GxC4+k8SF?%hcy9s#uq z(I{lw2Qx9bW09xpk0@G`ET0yURk*7Xr}EuFJWw5g`v%+l^#q%kZNWi%BI4nLqPC*q z7@@dHrF)@RG|ebb%EClhQOWXGW{@5BW%~|9h5rDdUW)7QZA8$nR?|!b+CY}HxSiwk zM1pBpren@|f0qnp43Th1ijq*FPv436zWZ|io|JNB;q;EOf|a)GyWlMY0i~yu{JWtc zryfRsBNkII1PBKeXxG%Gx7d$M{kII=STyK30->cjpvLK)pbjHsI=Og9mLH~+0wpTK zMotR5B*6n7A!Q}O18^7vx!f`3&>VfhBGsiKbr#)Q(0H?jhL)4b98n@fgOg8T$_3kl zH!t655B$HsLpjk_oK;N0GLCFpCm9tTBv6WJyHUKTK`J97gwgI~V9FJ@00N}Hu3Hi~ zj$D_f8Jlfd1-CLt3+SlpiOMTMhbKuqPL8m#EbGog81(V{g2^WlyD2TXKc65!ZlEuj zI0>}VSb`!tVvcG=hmmRN;sv8ax;F-4%XX0Mw(=5rH}AV_IwP;_?Or9UK$>;u+#zz& zZ4&P=_d}YxW5XOE!jjCP$Ck&Ey6gwrbNAnu`g9VXRa%z#WB?7l9+3PTH2TIC zk4?z$6BzdMDlFq=kn?6N19}As-0Vl8$EH$b4@wP-3L|10N(~jw@a?qHM~S&ijAO)V7P_Pr@J!w%U?_+NZu9MW)!io5M5iV`Yj%D1fj+tbne| zzsuSDfo@+emO0Bz!?a+i!-|(9mXCCIUrxpt2_igEofa_Mf^v-T^guEw4fiL0q1KEu zGP))WE2g5HTv7OGb_!%zIZWk?C~y*F4kGd>;#2O-3aK9z>z_z^zX&U=xX}r?l>ts4 z`oo0Nb{F4(h50mygeoM;;a|p#n{pAdk_iW8^ncCHwko*}wB~`jBD)X~wYL=rhuaDr zG7-xdlt!b3r3TxNO|k$uf*r#BxA}a!@l7gm>PT%HDq7Z?K6#;Wr`)Q^BxtJ17=%WE ztVKfda!A~#kR7(%?B4kG1(;=4s+CpuqAMurEl85E;k3)i5of4fxop$2ZY2dkWOYP4 zGN9xS+>c!o=>Vm@t-nqvqrerH1Fcd>B?l~&6fe})Qfj0@miBQ{bz_DJr z)>Y08Hp62sO(CL<$WW9Ta%JM;6AWt_MFzmiNaVn*g*F9<3RjUE1#i1`!kZM(S(J2T z+7bO$VeR*!{CaLy9-wb~b8iz8cWsz#k@96J$KJ$jzmN5G0dQMYJ@65HUUIgo7mHLY zCX|!J(Z?82(ldC{9wtbWbtIwuhok77zB}ySk5Va?&1yqc_@RxHr<-Y%eO)%rrPqfk zOb{VfQloMCpmiIdcH43L7XJXdsN6N$ChjgM>MPB9Gb@$Mhsz4Cl#!%h$V@JrWMp3m zM%b%(m*2!U9k=zxe;&B(<7y*O?TNO9GNz5H3N(~oS$L!DdOlSQ85@3F1GGD%9&Q;O zxi|9n_S*n{UjG1Yq|ET3(Kl8AiBxO;SK0&txfZzfM4y-rae@|0f zO$Sm^sT@W|sDL{E0Gb|+6*xW<6e?L2>-+}ljN&y|!3SZiykbHFMLCjJCOJMk00#RqxB7L(pR@Iaa>s-a z{Sr32LhaQHe}kR5^NEA*!KL|a$c|FViqL?=p1|+x;(8!rBBUrulq~eHppe^ZpT;y~(t5zsdBNfWDcjECQee~+>D=xd1jQXXHQpZSP=9(y+2;!#?{acO354z<-o ztFMvan5a@+A8Oz{yACCm87lu5)<9Mqv?(tLMSNL%^e%#9BxB#_~v+=2)|p||^S z`+s;hiJ@IWtO%tX6rz#}d5SuHD<2T@M%<%l_&Y`kJMtss+m;1K$&bJN-3;*nyr~lw z5hyA*LvQfvnPN?fmXbsayQpN7i#x{0{vl?KKpueUf|(*pE2zJB`a~6=YGQykr6G9q z(wCdk1q=%_MM1ZStqCrUJZDQ0beE|=q;lG3vE-&V0S6+& z1WsQtf-@OUlKb3k_B_9*srA&QDU>cFRT0jS%$iz2S&q`7XvfH}l}Y~q=57w;0mSZo zg1)|6bUw7-hxWs+ia3`RrEN0h{n&2$esId9JgpJ}80{>BW(ZXbNw{6k%s%Ii{{WZc z)SGQNAt5&$xo%e-tq==!J?P-+*Fy0mO(d+7qSXCT8Rmt1urBKwX>PE~eY6 zt_s|gtaV(PB%_k(BhBiD&|qX`c^)GKyOm(b>_V_&?y@l@b_3gPeK$sU)lg_vj|n(E zpM-GONffiZ2$8IDqDG-4B$Xw}VXy!WI}L~B{{Syb-d*u6vHGF8!Lexk!;*;}(!KQCQ5csH$g3_^yx>Ne{8HA6?i%AA?Oc;R(aVIKlf`4@AMU^3k-8*T1 zb%t`_SvQpM6BVjxw0Kesi8{y?NI+Y#)1kG?%Jf(yAfd7=#&5S82O2|fr*%t)d> zUes`LA0=R2gB4ywi1{-6-FWiqB%%mJB$o^jsG_L6D+)H8AO-Xjc#5+YDdS#6)DphW zHuQaM%Vp_y-2pN;H7O){R8<5rpsrBTZ8@~3`J7C=eT|H(vmfRi&%MEA+tB{5yiQ!V zH&Ga1T~$oYEA>QEY1Q7uaT%j$eje4msNEEWQW@EYzFYBb9F=-yL{TcKlnjWBR98|$ zZKv7eWmzWivzI)8S21x4RFF4A@o%}@{#|)qX_{7rcbYt{qp0DO&cwwN;)Eo@mJ1i8 zF{p`BLTm%)CQ#-x`JiFA`|arU-nz==Zx@;q7heRhURMNptsP&M5^NDgjK>g`b#WOS z6}g5C%1GPfcJ?>e1IzE!gJdgH3z8Uo%|nYij7vqQk|^Vem7#sPjw-$aU6>K$UuB3N zxZA1|b=s0GHh;?oM$Y?ImsTW3msuj>DhT-k<7Q`;Mc?pXt+$W%=UPzXYPLAZ^M+iW`GlZTno?`#1T4a*aM;q#O#G}^>Y z(MsY)ERk%)2501@K=eQB_Z*x0diK%c(o{kBqp9Q-DF1D7GPV#s;r^Bp3I*X zZNT-n+was0(c)Byk)ZE|Vbba3AIl-shB6jzDulGk`=Q;N$aV+t-F{tjteB#p(#8B^ zsHjO)hpnd=I})+P5Dz1s1drUZ0CttgKX1ejf78&0VWL_h=N*ryOOj+FDI{>JKz0gP zg&s7SW8Z&mzxwh20K2A|n%N?tmPHH9%Ztqk66ORjv^r@|mL3j+#>yj(H&mNv3}aIx z{8xw|k@%nLUWRjIBwIB~Imi6a#YWnX4K%~V(-O#2U`1XVd-1yhLbu5QEOzCvBXhS= z+5&S?VgP8avPoJB+_CWKNw*CwO(HC1IixSJQb8wXke^#N-vuE4KsO${)<`mJ(vU+< zpgC^xGGD4CMw*#PRfUOATjs7K2oJ}L9m^e#+y4Nj{cxTHL?z$l-wO=6AqgD>J7bm7 zbGTp>M9IPC;CXN_?0?X0@c?c<{J8ZFxPh1okGwR39J2v1us`ZdZ(Q#{)aZ8jake_{THE zl=Siq!5jVkdIBdrq%<FJD!TYFeT$>W}c+2(J%Z={{Z}@`&J!}%gr9%3zW8P(m4YX z-1!cC0z^oRso&x`Z~mQmI$qanD&;weJ(1DqdxVwiDNk%atJ!%3tYp7bnD|D5%sK&d=?OAzTVGN`tn@6~LQt5SAXX6;Jc7O*|{kn-1?SB4~A79m>{uJzU*f9Si#Fq%b-pUqez~VhP3&bDXa`^rF z8g$Ias4b&w-xB`-!vJ*?%Hk(saKrxq{TQdV=+y^}PZ?A14^M+LvY72Wz47>Xb=@Z`iPk_EQ}rNZ-j=*eUW2wq9XXrbP$x3_c-2{{V^Czw;M_ zY*Mt5Eu*} zFQ2w1od%a&nYc^U;g74>>T$}cBVHl*@J5^*J9{r1l!-`Pj{J!pzs%@P;RV)h1Rx(;P5(27rALjdYFZ`Nk#E@0!l%iUXHomJyus{VykQ4D*;XU6@*YKzl%2o(yY=7vwtR8}OMS7`=yo0}MG{2zEJ(xI?L5q6 z3{(hq`SBr~$jZo3Hwa5aqz`BI<a;Mu9HG3zf=0P#F z8EwKLj%9HvKtqufjKyONH#;ule@pS{ce-JTDvBtu^560c%vw; zRga!1xw5xCiUi-8P`fcrzvk#C(`nKg31UQV$o zUTYhwm2^9oCzqf-xBRWp3#QYev{KLNhMVXVt8R*z*I4X9*}y z19kxv4<76BVe%gyh`*#9Nd-X*Dn!%tcZa^_(b3MiN7?@XPM8O7HQ%i?1XW~Zwzth)D%l?uGuKxfIFq6Nc(XF83f{y#zQ~M$Y$LY>UT3Eik$jP*b z=D#}aGe}#0NC{-wmu>y+)rfwP)esR|0s7*yZ}eR14P~aB+IG>R08i-CB<;7qxL?0aH~L1D6f1-`#}o8vJXEFm`C=+=!e=WXB8XNGvNA|GuwXo# zcT#0w<8Zu&-Qw_Bw4keIU6YBtZWFN7#`jk|I@vBTz>MYQcagN&We3KY2P} zI$MW0q9Zt!fKGH58x`9tWZ(~ER^{yet3_`n8gx*8VPGae9b@Ge1^)nv3r!!sLuDUx z$n@(yCy_)i@k95bwa$s+ZH>h$boRqR+MMc{SuxV=z(m2LZTniCx1$w%O7v=Z7B@AwM*E>+|_^A{~%o1Z9(lFc659z+!FdLnS zX64rhq*5=g&1Mjxa=5?xj~7DPw+g9!kDq;lLJd;Gd0It4{iN|XeI zfdx&wkdueS2rdK215Fz?RrwEslx=}Q{VnZxAKTdX>#udUJVExPafxsTE_hb&DAo`PJT zvvnavRJnL#yI>s)TcH%wQ90ymu^hLG!YFeQ0F9b3L3ZK?-*p^)bjMi~T7hav^jg2e z3n@_~WJF65>6?H>E=QAz_?P(*f9>lev#D(mwIni?1Fdeh9z~^CkU>NNc|pv19np6z zSJ%(k*z7%Z)Se^(Y|7CXfsN&I?};e%>`}aNmyCZPvz`t(q>s4?>=c-<@4m$K&b%II zi8h1?DW!Y+Va!@)E!|g-p~cye;}IwM6Or^uZ(qL5-0pYwFP^W>J;cR|^gs+QPyZii86I_}cM=ZIb(HHlT(SQqx+ z{N5_d@n2i@5Ses=OS&eqz>8Eh6o((-7@!E zosFQc#UARR;$OlgBhnPeZ}*02B=amqL5%E+ys09QySf(mpSb@3o2d2Yy-_rmmq9Uk z!fgwLlHM;2E&dh9m_jt3K^pv{2n#nQ`58oxJV%QABXW5wb>E~O?oYBJGK?UKZ5E^1 zlsd1bD1XClK}PIC$PrakaZ?G~+<`{NVm~gq*Piu3gk)Muo!d_25su$a;t`_}i=`us zD=29|MPlWU5$(p~e_MO&zeqjYpJYVVNS3~l7u`s3nrj-7BN*>V<>U(;)tGOvXuxlN zj>CP4_Pr1336s()jgf9%?eJ2UlM&jhgyK@RP<44>RMVJ+k~m?C)ND$-D>FLopebgH z+czQm{gbFUGd_qaa{%YX{+NSdhnWiO&R*XL@qOrBG{!tL$go)rFjAz<$|GU%F0NDH zgbjf{w^shHhLf`hwvi=$Rkj#ei6C2TGPWN_r*Vjj8pUUq2|S6-2ziLyqwOI(F0Dg9#y3{Q4vOzA$f z&T}jkr`Z)JL6aS#ZsizW97s_le@nbhOQIHFL#ZkeL+)39mmqf7_079JFQ2joQ-&xx zB}*=7m8qv}JVB8oF0v>5P6SBIz$lP81ypUh+w2#mUz};P5kk0W4KlM%5DBt^g~Jaa z!A%fDG9X524(hz)0eQs4f(T{`cN=a`C1AZKJ(YK~HVrC_)!x9y6wj_x}RpnzS zWCRCP5<(Z&&9iU|#CqG|7sa|o>84f6p&;cBFmnW#5U8??#Jl2pwl3UC3qX;83jr|> z`y;azCP`SaLdrdU%sB4dEbEQ93J6)O9kZKnQI5V*@A(+B*7|th<8HdVd#fFzMdHOv zxlrs1j%vGX4T+2O&xJV@D4{y$KbEl`r3Z^_oOba! zbvse@XJI96RHjlQ<<7GIkNe$Q3NUj^4K)E}-1>(l4Xd zzPKUC%hS<4v0q)kb~yh42vLo|TZqV2PmzRzebDk=TaQ3~{{Um_+VoDhGP#*rUBe3= z6w9iFIBApjeCax4I72A1VoIkU9H) z7rDg2d8uc+{kU!GN-C0cPTxe=xCc z^8Wyrq^_Iw{lDHVQQ2DhB0?`Whx)>S@$r_A=>xG{gmDH%_s5A{X4@_{&D4ufmlbbl zGXUDtmOETRKaC8~n37fuVg^-NAKY6rHs|c1s*Z$j0To76?T#`@X1Spisdqwh(1}X| z&^iLEBgqE<46J-*82$M#v;P3)4wxXA5VOPW6EFOCP1fs0Bn(kgMutj2;pZ zuw^Z_(Jy#&aViaIk4(`JN(g~jIgp^(G4Dq5sy$C!|C+BQ`!u^|CvZY2G_zku(9~hG~tH@pO$<RChDgJZA&b%ZZhfEa*D4+l%wN_8YpmRdvem;6 zO%6!Wm|$TLXv=VhAF^Bah}-4wscj87Nk_X<#NF!7fT5^ePYy-?*l#Wto65#Y zwNDgoG6>UYqzuffz#YgE9h7bMUVo3Sh||-Rpgcshgq#^>M&xaz_hK4sH55S;W9l;~ zC0;M(y0DNpGD?m}r0?-(Uie z8TS7GUtf>2*FfG($>MX~j~dH5qAM;19sd9Y#_}kzktrOiM!N%oXai3`0-GgCM;o3{gu zpsz9rj-v019z#bgaXd(=VHQ#3Xt=7%U8Dhcud~0zbKGoxJ!qT7R>5(z*`0Y;mNRo$ zFb&Owx)O>&$2HsdUP+-99<<9L-c*O`d}b||`HV>A8y8{zqyBDPX{0gd+jX_tT$GF? z_6Sob;jFqhYSSpB*zM9pP(1Ldm5=;N%s9wF4q6p`({w7y?_t0By1oAZ$nGj_EmGyx z8HaFDyj8}@v}JgSGSlMiq$@+W6sAK1JSs^>A(6|+$qSfwas#0}o7bQ^>zyEUb3#J- z`R#)G<0roGsQl$GFx&d^Y!Dv;l zmLFb>%ZnR9aSE%=ZDKCRWMy=TBD-DYVjIfazR~P~{DD5(A^Q$MpO;ND(=<>cHdJ)CHwJD@6(KQ;f1=aseR~3 z`Ux=ET*JUB=M_pSSw7QbYP^yvSFpT)l_I*6#Yj$2j~jdo4agx#2k+DJ-6@uuJj9## zVy1hdQ<96cb-{59lr=?eT?KL(R0v2hp=l*U?PGt$ZLue5kH~^RAN_i_a~PK-wF=U# zAedyrQA}+}xK`6>JaIG}hQWCvaZ&N�LKR{^zW3(j3T{q+6_;Xef%xDGxQgQ1(3~ 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%0DOW7 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%0Aneq@gsUqk%H^W-izC6=CL0GQ6kHV4 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 z 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 MGe@xn1skLP*+#sxL;wH) literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/images/behind.jpg b/test/NUIWindowBlur/res/images/behind.jpg new file mode 100755 index 0000000000000000000000000000000000000000..53839d6f3b42adeeda96f364c77c2dfc1d8b0a86 GIT binary patch literal 56382 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 z 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/images/maximalize.png b/test/NUIWindowBlur/res/images/maximalize.png new file mode 100644 index 0000000000000000000000000000000000000000..c5cbbaf0009a8fcbd914fb673c04c9cb79f60c32 GIT binary patch literal 211 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC&H|6fVg?3oVGw3ym^DWND9BhG z%&TLZ!Z<$^ISw#V$al20N!*ns$EbtG-FS7xy%;<=weer1#>K<$slFVdQ&MBb@0P^D|WdHyG literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/images/rightCorner.png b/test/NUIWindowBlur/res/images/rightCorner.png new file mode 100644 index 0000000000000000000000000000000000000000..68d837f44bf20b6bc52aba7ab9f502794bc3de3d GIT binary patch literal 434 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/tizen-manifest.xml b/test/NUIWindowBlur/tizen-manifest.xml new file mode 100644 index 00000000000..47a6c16ea49 --- /dev/null +++ b/test/NUIWindowBlur/tizen-manifest.xml @@ -0,0 +1,16 @@ + + + + + + NUIWindowBlur.png + + + From 0b18460cf829c6184e350223aeb431102ad60635 Mon Sep 17 00:00:00 2001 From: ANZ1217 Date: Mon, 23 Sep 2024 16:47:45 +0900 Subject: [PATCH 082/198] [NUI] Add Outline Offset and BlurRadius at struct Outline --- .../src/public/BaseComponents/TextConstants.cs | 16 +++++++++++++++- .../src/public/BaseComponents/TextMapHelper.cs | 8 ++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextConstants.cs b/src/Tizen.NUI/src/public/BaseComponents/TextConstants.cs index 85b0b0d0c3d..bcd69f4e9a9 100644 --- a/src/Tizen.NUI/src/public/BaseComponents/TextConstants.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextConstants.cs @@ -416,6 +416,20 @@ public struct Outline : IEquatable [EditorBrowsable(EditorBrowsableState.Never)] public float? Width { get; set; } + /// + /// The offset in pixels of the offset (if null, the default value is 0, 0).
+ /// If not provided then the offset is not enabled.
+ ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public Vector2? Offset { get; set; } + + /// + /// The radius of blurring effect applied to the outline of the text. A higher value results in a more blurred outline.
+ /// If not specified, the default value is 0 which means no blurring effect will be applied.
+ ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public float? BlurRadius { get; set; } + /// /// Determines whether the specified object is equal to the current object. /// @@ -430,7 +444,7 @@ public struct Outline : IEquatable /// The Outline to compare with the current Outline. /// true if equal Outline, else false. [EditorBrowsable(EditorBrowsableState.Never)] - public bool Equals(Outline other) => Color == other.Color && Width == other.Width; + public bool Equals(Outline other) => Color == other.Color && Width == other.Width && Offset == other.Offset && BlurRadius == other.BlurRadius; /// /// The == operator. diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextMapHelper.cs b/src/Tizen.NUI/src/public/BaseComponents/TextMapHelper.cs index cf0454940f1..7683ab462d4 100644 --- a/src/Tizen.NUI/src/public/BaseComponents/TextMapHelper.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextMapHelper.cs @@ -384,6 +384,12 @@ public static PropertyMap GetOutlineMap(Outline outline) if (outline.Width != null) map.Add("width", (float)outline.Width); + if (outline.Offset != null) + map.Add("offset", outline.Offset); + + if (outline.BlurRadius != null) + map.Add("blurRadius", (float)outline.BlurRadius); + return map; } @@ -401,6 +407,8 @@ public static Outline GetOutlineStruct(PropertyMap map) { outline.Color = GetColorFromMap(map, "color"); outline.Width = GetFloatFromMap(map, "width", 0.0f); + outline.Offset = GetVector2FromMap(map, "offset"); + outline.BlurRadius = GetFloatFromMap(map, "blurRadius", 0.0f); } return outline; From 29b2c1b5c9bc88a0a522aed514bbde59959731a6 Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Fri, 20 Sep 2024 21:30:36 +0900 Subject: [PATCH 083/198] [NUI] Add comments (2nd patch) --- src/Tizen.NUI/src/public/Animation/Path.cs | 16 ++- .../src/public/Animation/TransitionOptions.cs | 4 +- .../src/public/Application/NUIApplication.cs | 89 +++++++++++---- .../Application/NUIWidgetApplication.cs | 31 ++++-- .../ApplicationTransitionManager.cs | 1 + .../src/public/BaseComponents/CameraView.cs | 10 ++ .../src/public/BaseComponents/CustomView.cs | 4 +- .../BaseComponents/LottieAnimationView.cs | 17 ++- .../public/BaseComponents/Style/Selector.cs | 24 ++-- .../public/BaseComponents/Style/ViewStyle.cs | 35 +++--- .../src/public/BaseComponents/TableView.cs | 20 ++-- .../src/public/BaseComponents/TextEditor.cs | 12 +- .../TextEditorBindableProperty.cs | 104 +++++++++--------- .../public/BaseComponents/TextEditorEvent.cs | 6 +- .../src/public/BaseComponents/TextField.cs | 19 ++-- .../TextFieldBindableProperty.cs | 102 ++++++++--------- .../public/BaseComponents/TextFieldEvent.cs | 8 +- .../src/public/BaseComponents/TextLabel.cs | 16 +-- .../TextLabelBindableProperty.cs | 52 ++++----- .../VectorGraphics/ColorStop.cs | 8 +- .../VectorGraphics/PathCommands.cs | 2 + .../BaseComponents/VectorGraphics/Picture.cs | 1 + .../BaseComponents/VectorGraphics/Shape.cs | 4 +- .../src/public/BaseComponents/VideoView.cs | 18 +-- .../src/public/BaseComponents/View.cs | 34 +++--- .../BaseComponents/ViewPublicMethods.cs | 37 +++++-- 26 files changed, 409 insertions(+), 265 deletions(-) diff --git a/src/Tizen.NUI/src/public/Animation/Path.cs b/src/Tizen.NUI/src/public/Animation/Path.cs index 44f760bcf95..6c84cddbd98 100755 --- a/src/Tizen.NUI/src/public/Animation/Path.cs +++ b/src/Tizen.NUI/src/public/Animation/Path.cs @@ -21,14 +21,14 @@ namespace Tizen.NUI { /// - /// A 3D parametric curve.
- /// Paths can be used to animate the position and orientation of actors.
+ /// A 3D parametric curve. + /// Paths can be used to animate the position and orientation of views. ///
/// 3 public class Path : BaseHandle { /// - /// Creates an initialized path handle. + /// The default constructor. Creates an initialized path handle. /// /// 3 public Path() : this(Interop.Path.New(), true) @@ -41,7 +41,8 @@ internal Path(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryO } /// - /// Enumeration for the Points. + /// Gets or sets the array of points defining the path. + /// The property value is a PropertyArray containing the points that define the path. /// /// 3 public PropertyArray Points @@ -63,7 +64,8 @@ public PropertyArray Points } /// - /// Enumeration for the ControlPoints. + /// Gets or sets the control points of the path. + /// The property value represents the array of control points defining the path. /// /// 3 public PropertyArray ControlPoints @@ -96,7 +98,7 @@ public void AddPoint(Position point) } /// - /// Adds a control point. + /// Adds a control point to the path. /// /// The new control point to be added. /// 3 @@ -139,6 +141,7 @@ public void Sample(float progress, Vector3 position, Vector3 tangent) /// An accessor for the interpolation points. ///
/// The index of the interpolation point. + /// The interpolation point at the specified index. /// 3 public Vector3 GetPoint(uint index) { @@ -151,6 +154,7 @@ public Vector3 GetPoint(uint index) /// An accessor for the control points. /// /// The index of the control point. + /// The control point at the specified index. /// 3 public Vector3 GetControlPoint(uint index) { diff --git a/src/Tizen.NUI/src/public/Animation/TransitionOptions.cs b/src/Tizen.NUI/src/public/Animation/TransitionOptions.cs index 7436842619a..8c0e9152923 100755 --- a/src/Tizen.NUI/src/public/Animation/TransitionOptions.cs +++ b/src/Tizen.NUI/src/public/Animation/TransitionOptions.cs @@ -58,9 +58,9 @@ public TransitionOptions() /// /// Hidden API (Inhouse API). - /// Dispose. + /// Releases unmanaged and optionally managed resources. /// - /// + /// true to release both managed and unmanaged resources. false to release only unmanaged resources. [EditorBrowsable(EditorBrowsableState.Never)] protected virtual void Dispose(bool disposing) { diff --git a/src/Tizen.NUI/src/public/Application/NUIApplication.cs b/src/Tizen.NUI/src/public/Application/NUIApplication.cs index 44e2ebe7df8..e7fb82753b1 100755 --- a/src/Tizen.NUI/src/public/Application/NUIApplication.cs +++ b/src/Tizen.NUI/src/public/Application/NUIApplication.cs @@ -70,7 +70,8 @@ static NUIApplication() } /// - /// The default constructor. + /// Initializes a new instance of the class. + /// This is the default constructor that initializes the NUI application using the NUICoreBackend. /// /// 3 [SuppressMessage("Microsoft.Design", "CA2000: Dispose objects before losing scope", Justification = "NUICoreBackend is disposed in the base class when the application is terminated")] @@ -84,8 +85,7 @@ public NUIApplication() : base(new NUICoreBackend()) /// /// The window size. /// The window position. - /// 5 - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened in the future after ACR done. Before ACR, need to be hidden as inhouse API. [SuppressMessage("Microsoft.Design", "CA2000: Dispose objects before losing scope", Justification = "NUICoreBackend is disposed in the base class when the application is terminated")] [EditorBrowsable(EditorBrowsableState.Never)] public NUIApplication(Size2D windowSize, Position2D windowPosition) : base(new NUICoreBackend("", NUIApplication.WindowMode.Opaque, windowSize, windowPosition)) @@ -95,8 +95,9 @@ public NUIApplication(Size2D windowSize, Position2D windowPosition) : base(new N /// /// The constructor with a stylesheet. + /// This constructor initializes a new instance of the Tizen.NUI.NUIApplication class with the specified stylesheet. /// - /// The styleSheet url. + /// The URL of the stylesheet to apply to the application. /// 3 [SuppressMessage("Microsoft.Design", "CA2000: Dispose objects before losing scope", Justification = "NUICoreBackend is disposed in the base class when the application is terminated")] public NUIApplication(string styleSheet) : base(new NUICoreBackend(styleSheet)) @@ -110,8 +111,7 @@ public NUIApplication(string styleSheet) : base(new NUICoreBackend(styleSheet)) /// The styleSheet URL. /// The window size. /// The window position. - /// 5 - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened in the future after ACR done. Before ACR, need to be hidden as inhouse API. [SuppressMessage("Microsoft.Design", "CA2000: Dispose objects before losing scope", Justification = "NUICoreBackend is disposed in the base class when the application is terminated")] [EditorBrowsable(EditorBrowsableState.Never)] public NUIApplication(string styleSheet, Size2D windowSize, Position2D windowPosition) : base(new NUICoreBackend(styleSheet, WindowMode.Opaque, windowSize, windowPosition)) @@ -121,6 +121,7 @@ public NUIApplication(string styleSheet, Size2D windowSize, Position2D windowPos /// /// The constructor with a stylesheet and window mode. + /// This constructor initializes the NUIApplication with a specified stylesheet and window mode. /// /// The styleSheet url. /// The windowMode. @@ -138,8 +139,7 @@ public NUIApplication(string styleSheet, WindowMode windowMode) : base(new NUICo /// The windowMode. /// The window size. /// The window position. - /// 5 - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened in the future after ACR done. Before ACR, need to be hidden as inhouse API. [SuppressMessage("Microsoft.Design", "CA2000: Dispose objects before losing scope", Justification = "NUICoreBackend is disposed in the base class when the application is terminated")] [EditorBrowsable(EditorBrowsableState.Never)] public NUIApplication(string styleSheet, WindowMode windowMode, Size2D windowSize, Position2D windowPosition) : base(new NUICoreBackend(styleSheet, windowMode, windowSize, windowPosition)) @@ -309,14 +309,39 @@ public NUIApplication(ThemeOptions option, WindowData windowData) : base(new NUI } /// - /// Occurs whenever the application is resumed. + /// The Resumed event handler. + /// This event is triggered when the application resumes from being paused or stopped. + /// It can be used to perform actions that need to be executed when the application becomes active again. /// + /// + /// + /// NUIApplication app = new NUIApplication(); + /// app.Resumed += OnAppResumed; + /// + /// void OnAppResumed(object sender, EventArgs e) + /// { + /// // Perform actions when the application is resumed + /// } + /// + /// /// 4 public event EventHandler Resumed; /// - /// Occurs whenever the application is paused. + /// The event handler that gets called when the application is paused. + /// This event is triggered when the application transitions to a paused state. /// + /// + /// + /// NUIApplication app = new NUIApplication(); + /// app.Paused += OnAppPaused; + /// + /// void OnAppPaused(object sender, EventArgs e) + /// { + /// // Perform actions when the application is paused + /// } + /// + /// /// 4 public event EventHandler Paused; @@ -393,7 +418,7 @@ public static string CurrentLoadedXaml } /// - /// ResourceManager to handle multilingual. + /// The MultilingualResourceManager property provides access to a System.Resources.ResourceManager instance that can be used to manage resources for different languages. /// /// 4 public static System.Resources.ResourceManager MultilingualResourceManager @@ -470,8 +495,9 @@ internal Application ApplicationHandle } /// - /// Register the assembly to XAML. + /// Registers the specified assembly to XAML, allowing types within the assembly to be used in XAML files. /// + /// The assembly to register. /// 5 public static void RegisterAssembly(Assembly assembly) { @@ -479,9 +505,18 @@ public static void RegisterAssembly(Assembly assembly) } /// - /// Runs the NUIApplication. + /// This method starts the main loop of the application, allowing it to receive events and run its lifecycle. /// - /// Arguments from commandline. + /// Arguments from commandline. These arguments can be used to customize the application behavior at startup. + /// + /// + /// static void Main(string[] args) + /// { + /// NUIApplication app = new NUIApplication(); + /// app.Run(args); + /// } + /// + /// /// 4 public override void Run(string[] args) { @@ -493,6 +528,7 @@ public override void Run(string[] args) /// /// Exits the NUIApplication. + /// This method causes the application to terminate gracefully. /// /// 4 public override void Exit() @@ -557,8 +593,10 @@ static public Size GetScreenSize() } /// + /// The OnLocaleChanged method is called when the system locale settings have changed. /// Overrides this method if you want to handle behavior. /// + /// The event arguments containing the new locale information. /// 3 protected override void OnLocaleChanged(LocaleChangedEventArgs e) { @@ -566,8 +604,10 @@ protected override void OnLocaleChanged(LocaleChangedEventArgs e) } /// + /// The OnLowBattery method is called when the system is under Low Battery status. /// Overrides this method if you want to handle behavior. /// + /// The event arguments containing the battery status. /// 3 protected override void OnLowBattery(LowBatteryEventArgs e) { @@ -575,8 +615,10 @@ protected override void OnLowBattery(LowBatteryEventArgs e) } /// + /// The OnLowMemory method is called when the system is under Low Memory status. /// Overrides this method if you want to handle behavior. /// + /// The event arguments containing low memory status information. /// 3 protected override void OnLowMemory(LowMemoryEventArgs e) { @@ -584,8 +626,11 @@ protected override void OnLowMemory(LowMemoryEventArgs e) } /// + /// This method is called when the system's region format settings have changed. + /// It provides an opportunity to handle any necessary adjustments or updates based on the new region format. /// Overrides this method if you want to handle behavior. /// + /// The event arguments containing information about the region format change. /// 3 protected override void OnRegionFormatChanged(RegionFormatChangedEventArgs e) { @@ -594,7 +639,6 @@ protected override void OnRegionFormatChanged(RegionFormatChangedEventArgs e) /// /// This method is to handle behavior when the device orientation is changed. - /// /// When device is rotated to ccw or cw, this event occurs. /// In addition, this event is different to window orientation changed event. /// The window orientation event is for per a window and occurs when some flags should be set before. @@ -607,6 +651,7 @@ protected override void OnDeviceOrientationChanged(DeviceOrientationEventArgs e) } /// + /// This method is called when the application is terminated. /// Overrides this method if you want to handle behavior. /// /// 3 @@ -617,7 +662,7 @@ protected override void OnTerminate() } /// - /// Overrides this method if you want to handle behavior. + /// Overrides this method if you want to handle behavior when the application is paused. /// /// 3 protected virtual void OnPause() @@ -627,7 +672,7 @@ protected virtual void OnPause() } /// - /// Overrides this method if you want to handle behavior. + /// Overrides this method if you want to handle behavior when the application is resumed. /// /// 3 protected virtual void OnResume() @@ -637,7 +682,8 @@ protected virtual void OnResume() } /// - /// Overrides this method if you want to handle behavior. + /// Overrides this method if you want to handle behavior before the application is created. + /// This method is guaranteed to be called before is called. /// /// 3 protected virtual void OnPreCreate() @@ -653,8 +699,9 @@ protected virtual void OnPreCreate() } /// - /// Overrides this method if you want to handle behavior. + /// This method is overridden to handle the application control event received. /// + /// The event arguments containing the received application control. /// 3 protected override void OnAppControlReceived(AppControlReceivedEventArgs e) { @@ -667,7 +714,9 @@ protected override void OnAppControlReceived(AppControlReceivedEventArgs e) } /// - /// Overrides this method if you want to handle behavior. + /// The OnCreate method of NUIApplication class. + /// This method is called when the application is created. + /// Override this method to handle custom initialization logic. /// /// 3 protected override void OnCreate() diff --git a/src/Tizen.NUI/src/public/Application/NUIWidgetApplication.cs b/src/Tizen.NUI/src/public/Application/NUIWidgetApplication.cs index 612fabefcfc..f8a352a2b56 100755 --- a/src/Tizen.NUI/src/public/Application/NUIWidgetApplication.cs +++ b/src/Tizen.NUI/src/public/Application/NUIWidgetApplication.cs @@ -115,7 +115,8 @@ internal WidgetApplication ApplicationHandle } /// - /// Run NUIWidgetApplication. + /// Runs the NUI widget application. + /// This method starts the main loop of the application. /// /// Arguments from commandline. /// 4 @@ -126,8 +127,12 @@ public override void Run(string[] args) } /// - /// Exit NUIWidgetApplication. + /// The Exit method of NUIWidgetApplication. /// + /// + /// Note that calling this method will terminate the entire application. + /// Ensure that all necessary cleanup operations are performed before calling this method. + /// /// 4 public override void Exit() { @@ -150,8 +155,9 @@ public void FlushUpdateMessages() } /// - /// Overrides this method if want to handle OnLocaleChanged behavior. + /// Override this method to implement custom behavior when the system locale changes. /// + /// The event arguments containing the new locale information. /// 4 protected override void OnLocaleChanged(LocaleChangedEventArgs e) { @@ -160,8 +166,10 @@ protected override void OnLocaleChanged(LocaleChangedEventArgs e) } /// - /// Overrides this method if want to handle OnLowBattery behavior. + /// The OnLowBattery method is called when the device's battery level is low. + /// This method can be overridden to implement custom behavior when the device's battery level is low. /// + /// The event arguments containing the battery status. /// 4 protected override void OnLowBattery(LowBatteryEventArgs e) { @@ -170,8 +178,10 @@ protected override void OnLowBattery(LowBatteryEventArgs e) } /// + /// This method is called when the system is running low on memory. /// Overrides this method if want to handle OnLowMemory behavior. /// + /// The event arguments containing the memory status. /// 4 protected override void OnLowMemory(LowMemoryEventArgs e) { @@ -180,8 +190,9 @@ protected override void OnLowMemory(LowMemoryEventArgs e) } /// - /// Overrides this method if want to handle OnRegionFormatChanged behavior. + /// This method can be overridden to implement custom behavior when the region format changes. /// + /// The event arguments containing information about the region format change. /// 4 protected override void OnRegionFormatChanged(RegionFormatChangedEventArgs e) { @@ -191,7 +202,6 @@ protected override void OnRegionFormatChanged(RegionFormatChangedEventArgs e) /// /// This method is to handle behavior when the device orientation is changed. - /// /// When device is rotated to ccw or cw, this event occurs. /// In addition, this event is different to window orientation changed event. /// The window orientation event is for per a window and occurs when some flags should be set before. @@ -205,7 +215,8 @@ protected override void OnDeviceOrientationChanged(DeviceOrientationEventArgs e) } /// - /// Overrides this method if want to handle OnTerminate behavior. + /// This method is called when the application is terminated. + /// This method is overridden to perform custom actions when the application terminates. /// /// 4 protected override void OnTerminate() @@ -215,7 +226,8 @@ protected override void OnTerminate() } /// - /// Overrides this method if want to handle OnPreCreate behavior. + /// Overrides this method if you want to handle behavior before the application is created. + /// This method is guaranteed to be called before is called. /// /// 4 protected virtual void OnPreCreate() @@ -224,7 +236,8 @@ protected virtual void OnPreCreate() } /// - /// Overrides this method if want to handle OnCreate behavior. + /// This method is called when the application is created. + /// Override this method to handle custom initialization logic. /// /// 4 protected override void OnCreate() diff --git a/src/Tizen.NUI/src/public/ApplicationAnimation/ApplicationTransitionManager.cs b/src/Tizen.NUI/src/public/ApplicationAnimation/ApplicationTransitionManager.cs index c2fb041634b..a443685d4ff 100755 --- a/src/Tizen.NUI/src/public/ApplicationAnimation/ApplicationTransitionManager.cs +++ b/src/Tizen.NUI/src/public/ApplicationAnimation/ApplicationTransitionManager.cs @@ -39,6 +39,7 @@ public class ApplicationTransitionManager : IDisposable /// /// ApplicationTransitionManager Instance for singleton /// + [EditorBrowsable(EditorBrowsableState.Never)] public static ApplicationTransitionManager Instance { get diff --git a/src/Tizen.NUI/src/public/BaseComponents/CameraView.cs b/src/Tizen.NUI/src/public/BaseComponents/CameraView.cs index 84f85ff96f6..43a6fcf1c03 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/CameraView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/CameraView.cs @@ -26,10 +26,20 @@ namespace Tizen.NUI.BaseComponents /// 9 public class CameraView : View { + /// + /// Enumeration for specifying the display type of the CameraView. + /// /// 9 public enum DisplayType { + /// + /// The camera view will be displayed using hardware overlay. + /// Window = 0, // HW overlay + + /// + /// The camera view will be displayed using texture stream. + /// Image // texture stream }; diff --git a/src/Tizen.NUI/src/public/BaseComponents/CustomView.cs b/src/Tizen.NUI/src/public/BaseComponents/CustomView.cs index 73939b6f5c7..43030022b12 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/CustomView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/CustomView.cs @@ -26,7 +26,7 @@ namespace Tizen.NUI.BaseComponents /// 3 public class CustomView : ViewWrapper { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static BindableProperty FocusNavigationSupportProperty = null; internal static void SetInternalFocusNavigationSupportProperty(BindableObject bindable, object oldValue, object newValue) @@ -43,7 +43,7 @@ internal static object GetInternalFocusNavigationSupportProperty(BindableObject return customView.IsKeyboardNavigationSupported(); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static BindableProperty FocusGroupProperty = null; internal static void SetInternalFocusGroupProperty(BindableObject bindable, object oldValue, object newValue) diff --git a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs index 3af4bd70e91..7467bac35fb 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/LottieAnimationView.cs @@ -326,7 +326,8 @@ private string InternalURL } /// - /// Gets the playing state + /// Gets the playing state of the LottieAnimationView. + /// This property returns the current play state of the LottieAnimationView. /// /// 7 public PlayStateType PlayState @@ -556,7 +557,8 @@ private int InternalLoopCount } /// - /// Sets or gets the stop behavior. + /// Sets or gets the stop behavior of the LottieAnimationView. + /// This property determines how the animation behaves when it stops. /// /// 7 public StopBehaviorType StopBehavior @@ -859,7 +861,8 @@ public void SetMinMaxFrame(int minFrame, int maxFrame) } /// - /// Play Animation. + /// Plays the Lottie animation. + /// This method starts the playback of the Lottie animation. /// /// 7 public new void Play() @@ -871,7 +874,8 @@ public void SetMinMaxFrame(int minFrame, int maxFrame) } /// - /// Pause Animation. + /// Pauses the Lottie animation. + /// This method pauses the animation without resetting its progress. /// /// 7 public new void Pause() @@ -883,7 +887,8 @@ public void SetMinMaxFrame(int minFrame, int maxFrame) } /// - /// Stop Animation. + /// Stops the Lottie animation. + /// This method stops the currently playing Lottie animation. /// /// 7 public new void Stop() @@ -1194,7 +1199,7 @@ protected override void MergeCachedImageVisualProperty(PropertyMap map) #region Event, Enum, Struct, ETC /// - /// Animation finished event. + /// The event handler for the animation finished event. /// /// 7 public event EventHandler Finished diff --git a/src/Tizen.NUI/src/public/BaseComponents/Style/Selector.cs b/src/Tizen.NUI/src/public/BaseComponents/Style/Selector.cs index d54b9ba34c5..bc0772b14f1 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/Style/Selector.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/Style/Selector.cs @@ -53,6 +53,7 @@ public static implicit operator Selector(T value) /// /// Create an empty selector. + /// This constructor returns an empty selector object which can be used to define various selectors for different states and conditions. /// /// 9 public Selector() @@ -149,9 +150,9 @@ public T DisabledFocused set => Add(ControlState.DisabledFocused, value); } /// - /// SelectedFocused State. + /// Gets or sets the value associated with the SelectedFocused state. /// - /// This is for XAML. Do not ACR this. + /// This property is intended for internal use within XAML files and should not be subject to ACR. public T SelectedFocused { get => GetSafely(x => x.State == ControlState.SelectedFocused); @@ -311,7 +312,7 @@ public void CopyTo(SelectorItem[] items, int startIndex) /// /// Returns an enumerator that iterates through the collection. /// - /// An enumerator that can be used to iterate through the collection. + /// An enumerator that can be used to iterate through the collection. [EditorBrowsable(EditorBrowsableState.Never)] public IEnumerator> GetEnumerator() { @@ -332,9 +333,10 @@ System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() /// Get value by State. /// It will traverse from the first item to find proper fit when there is no perfect state match. /// + /// The state to query for the value. + /// The output parameter to store the resulting value if found. /// Thrown when state is null. - /// 6 - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. /// True if the selector has a given state value, false otherwise. [EditorBrowsable(EditorBrowsableState.Never)] public bool GetValue(ControlState state, out T result) @@ -390,7 +392,10 @@ public void Clear() SelectorItems.Clear(); } - /// + /// + /// Converts the Selector object to its string representation. + /// + /// A string that represents the current selector. [EditorBrowsable(EditorBrowsableState.Never)] public override string ToString() { @@ -408,8 +413,8 @@ public override string ToString() /// Clone itself. /// If type T implements ICloneable, it calls Clone() method to clone values, otherwise use operator=. /// - /// 6 - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// A new Selector T instance that is a clone of the current selector. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Selector Clone() { @@ -466,6 +471,8 @@ private bool EqualsItem(T a, T b) /// /// Determines whether the specified object is equal to the current object. /// + /// The object to compare with the current object. + /// true if the specified object is equal to the current object; otherwise, false. /// 9 public override bool Equals(object other) { @@ -497,6 +504,7 @@ public override bool Equals(object other) /// /// Serves as the default hash function. /// + /// An integer value that specifies the hash code for this instance. [EditorBrowsable(EditorBrowsableState.Never)] public override int GetHashCode() { diff --git a/src/Tizen.NUI/src/public/BaseComponents/Style/ViewStyle.cs b/src/Tizen.NUI/src/public/BaseComponents/Style/ViewStyle.cs index d7a0b61640d..b1fc21ddd17 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/Style/ViewStyle.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/Style/ViewStyle.cs @@ -23,6 +23,7 @@ namespace Tizen.NUI.BaseComponents { /// /// The base class of style attributes for a view. + /// This class provides a base for defining styles that can be applied to views. /// /// 9 public partial class ViewStyle : BindableObject, IDisposable @@ -69,11 +70,12 @@ static ViewStyle() { } /// /// Create an empty style instance. + /// This constructor initializes an empty style object for a view. /// /// 9 public ViewStyle() { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public ViewStyle(ViewStyle viewAttributes) { @@ -102,7 +104,7 @@ public Selector BackgroundImage set => SetValue(BackgroundImageProperty, value); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public bool? Focusable { @@ -133,7 +135,7 @@ public bool? FocusableInTouch set => SetValue(FocusableInTouchProperty, value); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [Obsolete("This has been deprecated. Use Size instead.")] [EditorBrowsable(EditorBrowsableState.Never)] public Size2D Size2D @@ -144,6 +146,8 @@ public Size2D Size2D /// /// Defines view's opacity value. + /// This property allows you to specify different opacity values for various states of the view, + /// such as normal, pressed, focused, etc. /// /// 9 public Selector Opacity @@ -156,7 +160,7 @@ public Selector Opacity set => SetValue(OpacityProperty, value); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [Obsolete("This has been deprecated. Use Position instead.")] [EditorBrowsable(EditorBrowsableState.Never)] public Position2D Position2D @@ -232,7 +236,7 @@ public Position Position set => SetValue(PositionProperty, value); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public float? PositionX { @@ -240,7 +244,7 @@ public float? PositionX set => SetValue(PositionXProperty, value); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public float? PositionY { @@ -248,7 +252,7 @@ public float? PositionY set => SetValue(PositionYProperty, value); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Rotation Orientation { @@ -256,7 +260,7 @@ public Rotation Orientation set => SetValue(OrientationProperty, value); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public DrawModeType? DrawMode { @@ -296,7 +300,7 @@ public ResizePolicyType? HeightResizePolicy set => SetValue(HeightResizePolicyProperty, value); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public bool? WidthForHeight { @@ -304,7 +308,7 @@ public bool? WidthForHeight set => SetValue(WidthForHeightProperty, value); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public bool? HeightForWidth { @@ -342,7 +346,7 @@ public Size2D MaximumSize set => SetValue(MaximumSizeProperty, value); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public ClippingModeType? ClippingMode { @@ -396,7 +400,7 @@ public Selector Color } /// View BackgroundBorder - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Selector BackgroundImageBorder { @@ -551,7 +555,8 @@ public ViewStyle Clone() } /// - /// Release instance. + /// Releases all resources used by the ViewStyle instance. + /// The Dispose method releases all resources used by the ViewStyle instance. /// /// 9 public void Dispose() @@ -600,9 +605,9 @@ public override void CopyFrom(BindableObject other) } /// - /// Release instance. + /// Releases unmanaged and optionally managed resources. /// - /// If it true, the method has been called by a user's code. Otherwise the method has been called by the finalizer. + /// If it true, the method has been called by a user's code to release both managed and unmanaged resources. Otherwise the method has been called by the finalizer to release only unmanaged resources. /// 9 protected virtual void Dispose(bool disposing) { diff --git a/src/Tizen.NUI/src/public/BaseComponents/TableView.cs b/src/Tizen.NUI/src/public/BaseComponents/TableView.cs index 5c923034a59..72c86b0b77d 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TableView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TableView.cs @@ -275,7 +275,8 @@ public int Columns } } /// - /// Padding between cells. + /// Gets or sets the padding between cells in the TableView. + /// The padding vector specifying the horizontal and vertical padding. /// /// 3 public Vector2 CellPadding @@ -306,7 +307,7 @@ public Vector2 CellPadding } /// - /// The number of layout rows. + /// This property allows setting the number of rows in the table view layout, which can affect how child views are arranged within the table. /// /// 3 public PropertyMap LayoutRows @@ -337,7 +338,7 @@ public PropertyMap LayoutRows } /// - /// The number of layout columns. + /// Gets or sets the number of layout columns. /// /// 3 public PropertyMap LayoutColumns @@ -747,6 +748,7 @@ public CellPosition(uint rowIndex) : this(Interop.TableView.NewTableViewCellPosi /// /// The default constructor. + /// Initializes the cell position with default values. /// /// 3 public CellPosition() : this(Interop.TableView.NewTableViewCellPosition(), true) @@ -780,7 +782,7 @@ public uint rowIndex } /// - /// The index or position of a row. + /// Gets or sets the index or position of a row. /// /// 5 public uint RowIndex @@ -795,7 +797,7 @@ public uint RowIndex /// - /// The index of a column. + /// Gets or sets the index of a column. /// /// 3 [Obsolete("Do not use this, that will be deprecated. Use ColumnIndex instead.")] @@ -816,7 +818,7 @@ public uint columnIndex } /// - /// The index or position of a column. + /// Gets or sets the index or position of a column. /// /// 5 public uint ColumnIndex @@ -851,7 +853,7 @@ public uint rowSpan } /// - /// The span of a row. + /// Gets or sets the span of a row. /// /// 5 public uint RowSpan @@ -865,7 +867,7 @@ public uint RowSpan } /// - /// The span of a column. + /// Gets or sets the span of a column. /// /// 3 [Obsolete("Do not use this, that will be deprecated. Use ColumnSpan instead.")] @@ -886,7 +888,7 @@ public uint columnSpan } /// - /// The span of a column. + /// Gets or sets the span of a column. /// /// 5 public uint ColumnSpan diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextEditor.cs b/src/Tizen.NUI/src/public/BaseComponents/TextEditor.cs index b54f67d9668..de14c9b91f9 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextEditor.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextEditor.cs @@ -219,6 +219,7 @@ static TextEditor() /// /// Creates the TextEditor control. + /// This returns a handle to the TextEditor control. /// /// 3 public TextEditor() : this(Interop.TextEditor.New(ThemeManager.GetStyle(defaultStyleName) == null ? false : true), true) @@ -931,7 +932,7 @@ public float CursorBlinkDuration } /// - /// The CursorWidth property. + /// Gets or sets the width of the cursor. /// /// 3 public int CursorWidth @@ -2497,7 +2498,7 @@ public float PixelSize } /// - /// The line count of the text. + /// Gets the line count of the text. /// /// 3 public int LineCount @@ -3558,7 +3559,7 @@ public InputMethodContext GetInputMethodContext() } /// - /// Select the whole text. + /// Selects the entire text within the TextEditor control. /// /// 9 public void SelectWholeText() @@ -3812,7 +3813,12 @@ public bool RemoveBackInset /// /// Dispose. + /// Releases unmanaged and optionally managed resources. /// + /// + /// When overriding this method, you need to distinguish between explicit and implicit conditions. For explicit conditions, release both managed and unmanaged resources. For implicit conditions, only release unmanaged resources. + /// + /// Explicit to release both managed and unmanaged resources. Implicit to release only unmanaged resources. /// 3 protected override void Dispose(DisposeTypes type) { diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextEditorBindableProperty.cs b/src/Tizen.NUI/src/public/BaseComponents/TextEditorBindableProperty.cs index 9a107f486b9..04a1c8918d4 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextEditorBindableProperty.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextEditorBindableProperty.cs @@ -26,7 +26,7 @@ namespace Tizen.NUI.BaseComponents /// 3 public partial class TextEditor { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty TextProperty = null; @@ -49,7 +49,7 @@ internal static object GetInternalTextProperty(BindableObject bindable) return Object.InternalGetPropertyString(textEditor.SwigCPtr, TextEditor.Property.TEXT); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty TextColorProperty = null; @@ -75,7 +75,7 @@ internal static object GetInternalTextColorProperty(BindableObject bindable) return textEditor.internalTextColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty FontFamilyProperty = null; @@ -94,7 +94,7 @@ internal static object GetInternalFontFamilyProperty(BindableObject bindable) return textEditor.InternalFontFamily; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty FontStyleProperty = null; @@ -115,7 +115,7 @@ internal static object GetInternalFontStyleProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PointSizeProperty = null; @@ -136,7 +136,7 @@ internal static object GetInternalPointSizeProperty(BindableObject bindable) return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.PointSize); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty HorizontalAlignmentProperty = null; @@ -181,7 +181,7 @@ internal static object GetInternalVerticalAlignmentProperty(BindableObject binda return temp.GetValueByDescription(); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty ScrollThresholdProperty = null; @@ -202,7 +202,7 @@ internal static object GetInternalScrollThresholdProperty(BindableObject bindabl return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.ScrollThreshold); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty ScrollSpeedProperty = null; @@ -223,7 +223,7 @@ internal static object GetInternalScrollSpeedProperty(BindableObject bindable) return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.ScrollSpeed); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PrimaryCursorColorProperty = null; @@ -249,7 +249,7 @@ internal static object GetInternalPrimaryCursorColorProperty(BindableObject bind return textEditor.internalPrimaryCursorColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SecondaryCursorColorProperty = null; @@ -275,7 +275,7 @@ internal static object GetInternalSecondaryCursorColorProperty(BindableObject bi return textEditor.internalSecondaryCursorColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableCursorBlinkProperty = null; @@ -296,7 +296,7 @@ internal static object GetInternalEnableCursorBlinkProperty(BindableObject binda return Object.InternalGetPropertyBool(textEditor.SwigCPtr, TextEditor.Property.EnableCursorBlink); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty CursorBlinkIntervalProperty = null; @@ -317,7 +317,7 @@ internal static object GetInternalCursorBlinkIntervalProperty(BindableObject bin return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.CursorBlinkInterval); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty CursorBlinkDurationProperty = null; @@ -338,7 +338,7 @@ internal static object GetInternalCursorBlinkDurationProperty(BindableObject bin return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.CursorBlinkDuration); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty CursorWidthProperty = null; @@ -359,7 +359,7 @@ internal static object GetInternalCursorWidthProperty(BindableObject bindable) return Object.InternalGetPropertyInt(textEditor.SwigCPtr, TextEditor.Property.CursorWidth); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty GrabHandleImageProperty = null; @@ -380,7 +380,7 @@ internal static object GetInternalGrabHandleImageProperty(BindableObject bindabl return Object.InternalGetPropertyString(textEditor.SwigCPtr, TextEditor.Property.GrabHandleImage); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty GrabHandlePressedImageProperty = null; @@ -421,7 +421,7 @@ internal static object GetInternalSelectionPopupStyleProperty(BindableObject bin return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandleImageLeftProperty = null; @@ -442,7 +442,7 @@ internal static object GetInternalSelectionHandleImageLeftProperty(BindableObjec return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandleImageRightProperty = null; @@ -463,7 +463,7 @@ internal static object GetInternalSelectionHandleImageRightProperty(BindableObje return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandlePressedImageLeftProperty = null; @@ -484,7 +484,7 @@ internal static object GetInternalSelectionHandlePressedImageLeftProperty(Bindab return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandlePressedImageRightProperty = null; @@ -505,7 +505,7 @@ internal static object GetInternalSelectionHandlePressedImageRightProperty(Binda return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandleMarkerImageLeftProperty = null; @@ -526,7 +526,7 @@ internal static object GetInternalSelectionHandleMarkerImageLeftProperty(Bindabl return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandleMarkerImageRightProperty = null; @@ -547,7 +547,7 @@ internal static object GetInternalSelectionHandleMarkerImageRightProperty(Bindab return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHighlightColorProperty = null; @@ -573,7 +573,7 @@ internal static object GetInternalSelectionHighlightColorProperty(BindableObject return textEditor.internalSelectionHighlightColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty DecorationBoundingBoxProperty = null; @@ -594,7 +594,7 @@ internal static object GetInternalDecorationBoundingBoxProperty(BindableObject b return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableMarkupProperty = null; @@ -615,7 +615,7 @@ internal static object GetInternalEnableMarkupProperty(BindableObject bindable) return Object.InternalGetPropertyBool(textEditor.SwigCPtr, TextEditor.Property.EnableMarkup); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputColorProperty = null; @@ -641,7 +641,7 @@ internal static object GetInternalInputColorProperty(BindableObject bindable) return textEditor.internalInputColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputFontFamilyProperty = null; @@ -662,7 +662,7 @@ internal static object GetInternalInputFontFamilyProperty(BindableObject bindabl return Object.InternalGetPropertyString(textEditor.SwigCPtr, TextEditor.Property.InputFontFamily); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputFontStyleProperty = null; @@ -683,7 +683,7 @@ internal static object GetInternalInputFontStyleProperty(BindableObject bindable return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputPointSizeProperty = null; @@ -704,7 +704,7 @@ internal static object GetInternalInputPointSizeProperty(BindableObject bindable return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.InputPointSize); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty LineSpacingProperty = null; @@ -725,7 +725,7 @@ internal static object GetInternalLineSpacingProperty(BindableObject bindable) return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.LineSpacing); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputLineSpacingProperty = null; @@ -766,7 +766,7 @@ internal static object GetInternalRelativeLineHeightProperty(BindableObject bind return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.RelativeLineHeight); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty UnderlineProperty = null; @@ -787,7 +787,7 @@ internal static object GetInternalUnderlineProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputUnderlineProperty = null; @@ -809,7 +809,7 @@ internal static object GetInternalInputUnderlineProperty(BindableObject bindable } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty ShadowProperty = null; @@ -830,7 +830,7 @@ internal static object GetInternalShadowProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputShadowProperty = null; @@ -851,7 +851,7 @@ internal static object GetInternalInputShadowProperty(BindableObject bindable) return Object.InternalGetPropertyString(textEditor.SwigCPtr, TextEditor.Property.InputShadow); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EmbossProperty = null; @@ -872,7 +872,7 @@ internal static object GetInternalEmbossProperty(BindableObject bindable) return Object.InternalGetPropertyString(textEditor.SwigCPtr, TextEditor.Property.EMBOSS); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputEmbossProperty = null; @@ -893,7 +893,7 @@ internal static object GetInternalInputEmbossProperty(BindableObject bindable) return Object.InternalGetPropertyString(textEditor.SwigCPtr, TextEditor.Property.InputEmboss); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty OutlineProperty = null; @@ -914,7 +914,7 @@ internal static object GetInternalOutlineProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputOutlineProperty = null; @@ -935,7 +935,7 @@ internal static object GetInternalInputOutlineProperty(BindableObject bindable) return Object.InternalGetPropertyString(textEditor.SwigCPtr, TextEditor.Property.InputOutline); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SmoothScrollProperty = null; @@ -956,7 +956,7 @@ internal static object GetInternalSmoothScrollProperty(BindableObject bindable) return Object.InternalGetPropertyBool(textEditor.SwigCPtr, TextEditor.Property.SmoothScroll); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SmoothScrollDurationProperty = null; @@ -977,7 +977,7 @@ internal static object GetInternalSmoothScrollDurationProperty(BindableObject bi return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.SmoothScrollDuration); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableScrollBarProperty = null; @@ -998,7 +998,7 @@ internal static object GetInternalEnableScrollBarProperty(BindableObject bindabl return Object.InternalGetPropertyBool(textEditor.SwigCPtr, TextEditor.Property.EnableScrollBar); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty ScrollBarShowDurationProperty = null; @@ -1019,7 +1019,7 @@ internal static object GetInternalScrollBarShowDurationProperty(BindableObject b return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.ScrollBarShowDuration); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty ScrollBarFadeDurationProperty = null; @@ -1040,7 +1040,7 @@ internal static object GetInternalScrollBarFadeDurationProperty(BindableObject b return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.ScrollBarFadeDuration); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PixelSizeProperty = null; @@ -1061,7 +1061,7 @@ internal static object GetInternalPixelSizeProperty(BindableObject bindable) return Object.InternalGetPropertyFloat(textEditor.SwigCPtr, TextEditor.Property.PixelSize); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PlaceholderTextProperty = null; @@ -1082,7 +1082,7 @@ internal static object GetInternalPlaceholderTextProperty(BindableObject bindabl return Object.InternalGetPropertyString(textEditor.SwigCPtr, TextEditor.Property.PlaceholderText); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PlaceholderTextColorProperty = null; @@ -1108,7 +1108,7 @@ internal static object GetInternalPlaceholderTextColorProperty(BindableObject bi return textEditor.internalPlaceholderTextColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableSelectionProperty = null; @@ -1129,7 +1129,7 @@ internal static object GetInternalEnableSelectionProperty(BindableObject bindabl return Object.InternalGetPropertyBool(textEditor.SwigCPtr, TextEditor.Property.EnableSelection); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PlaceholderProperty = null; @@ -1150,7 +1150,7 @@ internal static object GetInternalPlaceholderProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty LineWrapModeProperty = null; @@ -1171,7 +1171,7 @@ internal static object GetInternalLineWrapModeProperty(BindableObject bindable) return Object.InternalGetPropertyInt(textEditor.SwigCPtr, TextEditor.Property.LineWrapMode); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableShiftSelectionProperty = null; @@ -1193,7 +1193,7 @@ internal static object GetInternalEnableShiftSelectionProperty(BindableObject bi return Object.InternalGetPropertyBool(textEditor.SwigCPtr, TextEditor.Property.EnableShiftSelection); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty MatchSystemLanguageDirectionProperty = null; diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextEditorEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/TextEditorEvent.cs index 8a37327e047..dea6e2d8563 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextEditorEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextEditorEvent.cs @@ -163,7 +163,7 @@ public event EventHandler CursorPositionChanged /// /// The MaxLengthReached event. /// - /// This will be public opened in tizen_6.5 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public event EventHandler MaxLengthReached { @@ -552,7 +552,7 @@ public ScrollState ScrollState /// /// The MaxLengthReached event arguments. /// - /// This will be public opened in tizen_6.5 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class MaxLengthReachedEventArgs : EventArgs { @@ -561,7 +561,7 @@ public class MaxLengthReachedEventArgs : EventArgs /// /// TextEditor. /// - /// This will be public opened in tizen_6.5 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public TextEditor TextEditor { diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextField.cs b/src/Tizen.NUI/src/public/BaseComponents/TextField.cs index 364d59ab829..638115f9838 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextField.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextField.cs @@ -286,7 +286,7 @@ public TextField() : this(Interop.TextField.New(ThemeManager.GetStyle(defaultSty /// Creates the TextField with setting the status of shown or hidden. /// /// false : Not displayed (hidden), true : displayed (shown) - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public TextField(bool shown) : this(Interop.TextField.New(ThemeManager.GetStyle(defaultStyleName) == null ? false : true), true) { @@ -1301,7 +1301,7 @@ public float CursorBlinkDuration } /// - /// The CursorWidth property. + /// Gets or sets the width of the cursor. /// /// 3 public int CursorWidth @@ -2860,7 +2860,7 @@ public bool EnableSelection /// Enables the grab handles for text selection.
/// The default value is true, which means the grab handles are enabled by default.
/// - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public bool EnableGrabHandle { @@ -2894,7 +2894,7 @@ public bool EnableGrabHandle /// Enables the grab handle popup for text selection.
/// The default value is true, which means the grab handle popup is enabled by default.
/// - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public bool EnableGrabHandlePopup { @@ -2986,7 +2986,7 @@ public int SelectedTextEnd /// /// Enable editing in text control. /// - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public bool EnableEditing { @@ -3491,7 +3491,7 @@ public bool Ellipsis /// /// Enables selection of the text using the Shift key. /// - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public bool EnableShiftSelection { @@ -3680,7 +3680,7 @@ public InputMethodContext GetInputMethodContext() } /// - /// Select the whole text. + /// Selects the entire text within the TextField. /// /// 9 public void SelectWholeText() @@ -3800,7 +3800,12 @@ public bool RemoveBackInset /// /// Dispose. + /// Releases unmanaged and optionally managed resources. /// + /// + /// When overriding this method, you need to distinguish between explicit and implicit conditions. For explicit conditions, release both managed and unmanaged resources. For implicit conditions, only release unmanaged resources. + /// + /// Explicit to release both managed and unmanaged resources. Implicit to release only unmanaged resources. /// 3 protected override void Dispose(DisposeTypes type) { diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextFieldBindableProperty.cs b/src/Tizen.NUI/src/public/BaseComponents/TextFieldBindableProperty.cs index 2fab5e69c3c..20ff6ad6f2c 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextFieldBindableProperty.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextFieldBindableProperty.cs @@ -83,7 +83,7 @@ internal static object GetInternalTranslatablePlaceholderTextFocusedProperty(Bin return textField.translatablePlaceholderTextFocused; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty TextProperty = null; internal static void SetInternalTextProperty(BindableObject bindable, object oldValue, object newValue) @@ -104,7 +104,7 @@ internal static object GetInternalTextProperty(BindableObject bindable) return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.TEXT); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PlaceholderTextProperty = null; internal static void SetInternalPlaceholderTextProperty(BindableObject bindable, object oldValue, object newValue) @@ -123,7 +123,7 @@ internal static object GetInternalPlaceholderTextProperty(BindableObject bindabl return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.PlaceholderText); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PlaceholderTextFocusedProperty = null; internal static void SetInternalPlaceholderTextFocusedProperty(BindableObject bindable, object oldValue, object newValue) @@ -142,7 +142,7 @@ internal static object GetInternalPlaceholderTextFocusedProperty(BindableObject return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.PlaceholderTextFocused); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty FontFamilyProperty = null; internal static void SetInternalFontFamilyProperty(BindableObject bindable, object oldValue, object newValue) @@ -159,7 +159,7 @@ internal static object GetInternalFontFamilyProperty(BindableObject bindable) return textField.InternalFontFamily; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty FontStyleProperty = null; internal static void SetInternalFontStyleProperty(BindableObject bindable, object oldValue, object newValue) @@ -178,7 +178,7 @@ internal static object GetInternalFontStyleProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PointSizeProperty = null; internal static void SetInternalPointSizeProperty(BindableObject bindable, object oldValue, object newValue) @@ -197,7 +197,7 @@ internal static object GetInternalPointSizeProperty(BindableObject bindable) return Object.InternalGetPropertyFloat(textField.SwigCPtr, TextField.Property.PointSize); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty MaxLengthProperty = null; internal static void SetInternalMaxLengthProperty(BindableObject bindable, object oldValue, object newValue) @@ -216,7 +216,7 @@ internal static object GetInternalMaxLengthProperty(BindableObject bindable) return Object.InternalGetPropertyInt(textField.SwigCPtr, TextField.Property.MaxLength); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty ExceedPolicyProperty = null; internal static void SetInternalExceedPolicyProperty(BindableObject bindable, object oldValue, object newValue) @@ -235,7 +235,7 @@ internal static object GetInternalExceedPolicyProperty(BindableObject bindable) return Object.InternalGetPropertyInt(textField.SwigCPtr, TextField.Property.ExceedPolicy); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty HorizontalAlignmentProperty = null; internal static void SetInternalHorizontalAlignmentProperty(BindableObject bindable, object oldValue, object newValue) @@ -256,7 +256,7 @@ internal static object GetInternalHorizontalAlignmentProperty(BindableObject bin return temp.GetValueByDescription(); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty VerticalAlignmentProperty = null; internal static void SetInternalVerticalAlignmentProperty(BindableObject bindable, object oldValue, object newValue) @@ -277,7 +277,7 @@ internal static object GetInternalVerticalAlignmentProperty(BindableObject binda return temp.GetValueByDescription(); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty TextColorProperty = null; internal static void SetInternalTextColorProperty(BindableObject bindable, object oldValue, object newValue) @@ -301,7 +301,7 @@ internal static object GetInternalTextColorProperty(BindableObject bindable) return textField.internalTextColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PlaceholderTextColorProperty = null; internal static void SetInternalPlaceholderTextColorProperty(BindableObject bindable, object oldValue, object newValue) @@ -363,7 +363,7 @@ internal static object GetInternalEnableGrabHandlePopupProperty(BindableObject b return Object.InternalGetPropertyBool(textField.SwigCPtr, TextField.Property.EnableGrabHandlePopup); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PrimaryCursorColorProperty = null; internal static void SetInternalPrimaryCursorColorProperty(BindableObject bindable, object oldValue, object newValue) @@ -387,7 +387,7 @@ internal static object GetInternalPrimaryCursorColorProperty(BindableObject bind return textField.internalPrimaryCursorColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SecondaryCursorColorProperty = null; internal static void SetInternalSecondaryCursorColorProperty(BindableObject bindable, object oldValue, object newValue) @@ -411,7 +411,7 @@ internal static object GetInternalSecondaryCursorColorProperty(BindableObject bi return textField.internalSecondaryCursorColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableCursorBlinkProperty = null; internal static void SetInternalEnableCursorBlinkProperty(BindableObject bindable, object oldValue, object newValue) @@ -430,7 +430,7 @@ internal static object GetInternalEnableCursorBlinkProperty(BindableObject binda return Object.InternalGetPropertyBool(textField.SwigCPtr, TextField.Property.EnableCursorBlink); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty CursorBlinkIntervalProperty = null; internal static void SetInternalCursorBlinkIntervalProperty(BindableObject bindable, object oldValue, object newValue) @@ -449,7 +449,7 @@ internal static object GetInternalCursorBlinkIntervalProperty(BindableObject bin return Object.InternalGetPropertyFloat(textField.SwigCPtr, TextField.Property.CursorBlinkInterval); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty CursorBlinkDurationProperty = null; internal static void SetInternalCursorBlinkDurationProperty(BindableObject bindable, object oldValue, object newValue) @@ -468,7 +468,7 @@ internal static object GetInternalCursorBlinkDurationProperty(BindableObject bin return Object.InternalGetPropertyFloat(textField.SwigCPtr, TextField.Property.CursorBlinkDuration); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty CursorWidthProperty = null; internal static void SetInternalCursorWidthProperty(BindableObject bindable, object oldValue, object newValue) @@ -487,7 +487,7 @@ internal static object GetInternalCursorWidthProperty(BindableObject bindable) return Object.InternalGetPropertyInt(textField.SwigCPtr, TextField.Property.CursorWidth); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty GrabHandleImageProperty = null; internal static void SetInternalGrabHandleImageProperty(BindableObject bindable, object oldValue, object newValue) @@ -506,7 +506,7 @@ internal static object GetInternalGrabHandleImageProperty(BindableObject bindabl return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.GrabHandleImage); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty GrabHandlePressedImageProperty = null; internal static void SetInternalGrabHandlePressedImageProperty(BindableObject bindable, object oldValue, object newValue) @@ -525,7 +525,7 @@ internal static object GetInternalGrabHandlePressedImageProperty(BindableObject return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.GrabHandlePressedImage); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty ScrollThresholdProperty = null; internal static void SetInternalScrollThresholdProperty(BindableObject bindable, object oldValue, object newValue) @@ -544,7 +544,7 @@ internal static object GetInternalScrollThresholdProperty(BindableObject bindabl return Object.InternalGetPropertyFloat(textField.SwigCPtr, TextField.Property.ScrollThreshold); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty ScrollSpeedProperty = null; internal static void SetInternalScrollSpeedProperty(BindableObject bindable, object oldValue, object newValue) @@ -581,7 +581,7 @@ internal static object GetInternalSelectionPopupStyleProperty(BindableObject bin return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandleImageLeftProperty = null; internal static void SetInternalSelectionHandleImageLeftProperty(BindableObject bindable, object oldValue, object newValue) @@ -600,7 +600,7 @@ internal static object GetInternalSelectionHandleImageLeftProperty(BindableObjec return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandleImageRightProperty = null; internal static void SetInternalSelectionHandleImageRightProperty(BindableObject bindable, object oldValue, object newValue) @@ -619,7 +619,7 @@ internal static object GetInternalSelectionHandleImageRightProperty(BindableObje return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandlePressedImageLeftProperty = null; internal static void SetInternalSelectionHandlePressedImageLeftProperty(BindableObject bindable, object oldValue, object newValue) @@ -638,7 +638,7 @@ internal static object GetInternalSelectionHandlePressedImageLeftProperty(Bindab return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandlePressedImageRightProperty = null; internal static void SetInternalSelectionHandlePressedImageRightProperty(BindableObject bindable, object oldValue, object newValue) @@ -657,7 +657,7 @@ internal static object GetInternalSelectionHandlePressedImageRightProperty(Binda return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandleMarkerImageLeftProperty = null; internal static void SetInternalSelectionHandleMarkerImageLeftProperty(BindableObject bindable, object oldValue, object newValue) @@ -676,7 +676,7 @@ internal static object GetInternalSelectionHandleMarkerImageLeftProperty(Bindabl return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHandleMarkerImageRightProperty = null; internal static void SetInternalSelectionHandleMarkerImageRightProperty(BindableObject bindable, object oldValue, object newValue) @@ -695,7 +695,7 @@ internal static object GetInternalSelectionHandleMarkerImageRightProperty(Bindab return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty SelectionHighlightColorProperty = null; internal static void SetInternalSelectionHighlightColorProperty(BindableObject bindable, object oldValue, object newValue) @@ -719,7 +719,7 @@ internal static object GetInternalSelectionHighlightColorProperty(BindableObject return textField.internalSelectionHighlightColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty DecorationBoundingBoxProperty = null; internal static void SetInternalDecorationBoundingBoxProperty(BindableObject bindable, object oldValue, object newValue) @@ -738,7 +738,7 @@ internal static object GetInternalDecorationBoundingBoxProperty(BindableObject b return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputMethodSettingsProperty = null; internal static void SetInternalInputMethodSettingsProperty(BindableObject bindable, object oldValue, object newValue) @@ -757,7 +757,7 @@ internal static object GetInternalInputMethodSettingsProperty(BindableObject bin return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputColorProperty = null; internal static void SetInternalInputColorProperty(BindableObject bindable, object oldValue, object newValue) @@ -781,7 +781,7 @@ internal static object GetInternalInputColorProperty(BindableObject bindable) return textField.internalInputColor; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableMarkupProperty = null; internal static void SetInternalEnableMarkupProperty(BindableObject bindable, object oldValue, object newValue) @@ -800,7 +800,7 @@ internal static object GetInternalEnableMarkupProperty(BindableObject bindable) return Object.InternalGetPropertyBool(textField.SwigCPtr, TextField.Property.EnableMarkup); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputFontFamilyProperty = null; internal static void SetInternalInputFontFamilyProperty(BindableObject bindable, object oldValue, object newValue) @@ -819,7 +819,7 @@ internal static object GetInternalInputFontFamilyProperty(BindableObject bindabl return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.InputFontFamily); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputFontStyleProperty = null; internal static void SetInternalInputFontStyleProperty(BindableObject bindable, object oldValue, object newValue) @@ -838,7 +838,7 @@ internal static object GetInternalInputFontStyleProperty(BindableObject bindable return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputPointSizeProperty = null; internal static void SetInternalInputPointSizeProperty(BindableObject bindable, object oldValue, object newValue) @@ -857,7 +857,7 @@ internal static object GetInternalInputPointSizeProperty(BindableObject bindable return Object.InternalGetPropertyFloat(textField.SwigCPtr, TextField.Property.InputPointSize); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty UnderlineProperty = null; internal static void SetInternalUnderlineProperty(BindableObject bindable, object oldValue, object newValue) @@ -876,7 +876,7 @@ internal static object GetInternalUnderlineProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputUnderlineProperty = null; internal static void SetInternalInputUnderlineProperty(BindableObject bindable, object oldValue, object newValue) @@ -895,7 +895,7 @@ internal static object GetInternalInputUnderlineProperty(BindableObject bindable return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.InputUnderline); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty ShadowProperty = null; internal static void SetInternalShadowProperty(BindableObject bindable, object oldValue, object newValue) @@ -914,7 +914,7 @@ internal static object GetInternalShadowProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputShadowProperty = null; internal static void SetInternalInputShadowProperty(BindableObject bindable, object oldValue, object newValue) @@ -933,7 +933,7 @@ internal static object GetInternalInputShadowProperty(BindableObject bindable) return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.InputShadow); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EmbossProperty = null; internal static void SetInternalEmbossProperty(BindableObject bindable, object oldValue, object newValue) @@ -952,7 +952,7 @@ internal static object GetInternalEmbossProperty(BindableObject bindable) return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.EMBOSS); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputEmbossProperty = null; internal static void SetInternalInputEmbossProperty(BindableObject bindable, object oldValue, object newValue) @@ -971,7 +971,7 @@ internal static object GetInternalInputEmbossProperty(BindableObject bindable) return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.InputEmboss); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty OutlineProperty = null; internal static void SetInternalOutlineProperty(BindableObject bindable, object oldValue, object newValue) @@ -990,7 +990,7 @@ internal static object GetInternalOutlineProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty InputOutlineProperty = null; internal static void SetInternalInputOutlineProperty(BindableObject bindable, object oldValue, object newValue) @@ -1009,7 +1009,7 @@ internal static object GetInternalInputOutlineProperty(BindableObject bindable) return Object.InternalGetPropertyString(textField.SwigCPtr, TextField.Property.InputOutline); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty HiddenInputSettingsProperty = null; internal static void SetInternalHiddenInputSettingsProperty(BindableObject bindable, object oldValue, object newValue) @@ -1028,7 +1028,7 @@ internal static object GetInternalHiddenInputSettingsProperty(BindableObject bin return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PixelSizeProperty = null; internal static void SetInternalPixelSizeProperty(BindableObject bindable, object oldValue, object newValue) @@ -1047,7 +1047,7 @@ internal static object GetInternalPixelSizeProperty(BindableObject bindable) return Object.InternalGetPropertyFloat(textField.SwigCPtr, TextField.Property.PixelSize); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableSelectionProperty = null; internal static void SetInternalEnableSelectionProperty(BindableObject bindable, object oldValue, object newValue) @@ -1066,7 +1066,7 @@ internal static object GetInternalEnableSelectionProperty(BindableObject bindabl return Object.InternalGetPropertyBool(textField.SwigCPtr, TextField.Property.EnableSelection); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PlaceholderProperty = null; internal static void SetInternalPlaceholderProperty(BindableObject bindable, object oldValue, object newValue) @@ -1085,7 +1085,7 @@ internal static object GetInternalPlaceholderProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EllipsisProperty = null; internal static void SetInternalEllipsisProperty(BindableObject bindable, object oldValue, object newValue) @@ -1123,7 +1123,7 @@ internal static object GetInternalEllipsisPositionProperty(BindableObject bindab return Object.InternalGetPropertyInt(textField.SwigCPtr, TextField.Property.EllipsisPosition); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableShiftSelectionProperty = null; internal static void SetInternalEnableShiftSelectionProperty(BindableObject bindable, object oldValue, object newValue) @@ -1142,7 +1142,7 @@ internal static object GetInternalEnableShiftSelectionProperty(BindableObject bi return Object.InternalGetPropertyBool(textField.SwigCPtr, TextField.Property.EnableShiftSelection); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty MatchSystemLanguageDirectionProperty = null; internal static void SetInternalMatchSystemLanguageDirectionProperty(BindableObject bindable, object oldValue, object newValue) diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextFieldEvent.cs b/src/Tizen.NUI/src/public/BaseComponents/TextFieldEvent.cs index 2999f1f8e83..54ad326ffbe 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextFieldEvent.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextFieldEvent.cs @@ -74,7 +74,7 @@ public partial class TextField private bool invokeTextChanged = true; /// - /// The TextChanged event. + /// The TextChanged event is triggered whenever the text in the TextField changes. /// /// 3 public event EventHandler TextChanged @@ -124,7 +124,7 @@ public event EventHandler CursorPositionChanged } /// - /// The MaxLengthReached event. + /// The MaxLengthReached event is triggered when the text entered in the TextField exceeds its maximum allowed length. /// /// 3 public event EventHandler MaxLengthReached @@ -429,7 +429,7 @@ public class TextChangedEventArgs : EventArgs private TextField textField; /// - /// TextField. + /// Gets or sets TextField. /// /// 3 public TextField TextField @@ -454,7 +454,7 @@ public class MaxLengthReachedEventArgs : EventArgs private TextField textField; /// - /// TextField. + /// Gets or sets TextField. /// /// 3 public TextField TextField diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs index 186470e773c..d1e033ecd49 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabel.cs @@ -256,7 +256,7 @@ public TextLabel() : this(Interop.TextLabel.New(ThemeManager.GetStyle(defaultSty if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public TextLabel(TextLabelStyle viewStyle) : this(Interop.TextLabel.New(ThemeManager.GetStyle(defaultStyleName) == null ? false : true), true, viewStyle) { @@ -266,7 +266,7 @@ public TextLabel(TextLabelStyle viewStyle) : this(Interop.TextLabel.New(ThemeMan /// Creates the TextLabel with setting the status of shown or hidden. /// /// false : Not displayed (hidden), true : displayed (shown) - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public TextLabel(bool shown) : this(Interop.TextLabel.New(ThemeManager.GetStyle(defaultStyleName) == null ? false : true), true) { @@ -290,7 +290,7 @@ public TextLabel(string text) : this(Interop.TextLabel.New(text, ThemeManager.Ge /// /// The text to display /// false : Not displayed (hidden), true : displayed (shown) - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public TextLabel(string text, bool shown) : this(Interop.TextLabel.New(text, ThemeManager.GetStyle(defaultStyleName) == null ? false : true), true) { @@ -1966,7 +1966,7 @@ public AutoScrollStopMode AutoScrollStopMode } /// - /// The line count of the text. + /// Gets the line count of the text. /// /// 3 public int LineCount @@ -2017,7 +2017,7 @@ public LineWrapMode LineWrapMode /// /// The direction of the text such as left to right or right to left. /// - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public TextDirection TextDirection { @@ -2035,7 +2035,7 @@ public TextDirection TextDirection /// /// The vertical line alignment of the text. /// - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public VerticalLineAlignment VerticalLineAlignment { @@ -2106,7 +2106,7 @@ public bool MatchSystemLanguageDirection /// fontSize (string)The size type of font, You can choose between "pointSize" or "pixelSize". (the default value is "pointSize") /// /// - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] [System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1721: Property names should not match get methods")] public PropertyMap TextFit @@ -2295,7 +2295,7 @@ public TextFitArray GetTextFitArray() /// The height of the line in points.
/// If the font size is larger than the line size, it works with the font size.
/// - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public float MinLineSize { diff --git a/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs b/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs index 7fa40904c24..1f34d22c221 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/TextLabelBindableProperty.cs @@ -53,7 +53,7 @@ internal static object GetInternalTranslatableTextProperty(BindableObject bindab return textLabel.translatableText; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty TextProperty = null; internal static void SetInternalTextProperty(BindableObject bindable, object oldValue, object newValue) @@ -78,7 +78,7 @@ internal static object GetInternalTextProperty(BindableObject bindable) return textLabel.textIsEmpty ? "" : Object.InternalGetPropertyString(textLabel.SwigCPtr, TextLabel.Property.TEXT); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty FontFamilyProperty = null; internal static void SetInternalFontFamilyProperty(BindableObject bindable, object oldValue, object newValue) @@ -101,7 +101,7 @@ internal static object GetInternalFontFamilyProperty(BindableObject bindable) return textLabel.InternalFontFamily; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty FontStyleProperty = null; internal static void SetInternalFontStyleProperty(BindableObject bindable, object oldValue, object newValue) @@ -121,7 +121,7 @@ internal static object GetInternalFontStyleProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PointSizeProperty = null; internal static void SetInternalPointSizeProperty(BindableObject bindable, object oldValue, object newValue) @@ -145,7 +145,7 @@ internal static object GetInternalPointSizeProperty(BindableObject bindable) return Object.InternalGetPropertyFloat(textLabel.SwigCPtr, TextLabel.Property.PointSize); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty MultiLineProperty = null; internal static void SetInternalMultiLineProperty(BindableObject bindable, object oldValue, object newValue) @@ -165,7 +165,7 @@ internal static object GetInternalMultiLineProperty(BindableObject bindable) return Object.InternalGetPropertyBool(textLabel.SwigCPtr, TextLabel.Property.MultiLine); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty HorizontalAlignmentProperty = null; internal static void SetInternalHorizontalAlignmentProperty(BindableObject bindable, object oldValue, object newValue) @@ -202,7 +202,7 @@ internal static object GetInternalHorizontalAlignmentProperty(BindableObject bin } } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty VerticalAlignmentProperty = null; internal static void SetInternalVerticalAlignmentProperty(BindableObject bindable, object oldValue, object newValue) @@ -239,7 +239,7 @@ internal static object GetInternalVerticalAlignmentProperty(BindableObject binda } } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty TextColorProperty = null; internal static void SetInternalTextColorProperty(BindableObject bindable, object oldValue, object newValue) @@ -352,7 +352,7 @@ internal static object GetInternalRemoveBackInsetProperty(BindableObject bindabl return Object.InternalGetPropertyBool(textLabel.SwigCPtr, TextLabel.Property.RemoveBackInset); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableMarkupProperty = null; internal static void SetInternalEnableMarkupProperty(BindableObject bindable, object oldValue, object newValue) @@ -371,7 +371,7 @@ internal static object GetInternalEnableMarkupProperty(BindableObject bindable) return Object.InternalGetPropertyBool(textLabel.SwigCPtr, TextLabel.Property.EnableMarkup); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EnableAutoScrollProperty = null; internal static void SetInternalEnableAutoScrollProperty(BindableObject bindable, object oldValue, object newValue) @@ -390,7 +390,7 @@ internal static object GetInternalEnableAutoScrollProperty(BindableObject bindab return Object.InternalGetPropertyBool(textLabel.SwigCPtr, TextLabel.Property.EnableAutoScroll); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty AutoScrollSpeedProperty = null; internal static void SetInternalAutoScrollSpeedProperty(BindableObject bindable, object oldValue, object newValue) @@ -409,7 +409,7 @@ internal static object GetInternalAutoScrollSpeedProperty(BindableObject bindabl return Object.InternalGetPropertyInt(textLabel.SwigCPtr, TextLabel.Property.AutoScrollSpeed); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty AutoScrollLoopCountProperty = null; internal static void SetInternalAutoScrollLoopCountProperty(BindableObject bindable, object oldValue, object newValue) @@ -428,7 +428,7 @@ internal static object GetInternalAutoScrollLoopCountProperty(BindableObject bin return Object.InternalGetPropertyInt(textLabel.SwigCPtr, TextLabel.Property.AutoScrollLoopCount); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty AutoScrollGapProperty = null; internal static void SetInternalAutoScrollGapProperty(BindableObject bindable, object oldValue, object newValue) @@ -447,7 +447,7 @@ internal static object GetInternalAutoScrollGapProperty(BindableObject bindable) return Object.InternalGetPropertyFloat(textLabel.SwigCPtr, TextLabel.Property.AutoScrollGap); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty LineSpacingProperty = null; internal static void SetInternalLineSpacingProperty(BindableObject bindable, object oldValue, object newValue) @@ -485,7 +485,7 @@ internal static object GetInternalRelativeLineHeightProperty(BindableObject bind return Object.InternalGetPropertyFloat(textLabel.SwigCPtr, TextLabel.Property.RelativeLineHeight); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty UnderlineProperty = null; internal static void SetInternalUnderlineProperty(BindableObject bindable, object oldValue, object newValue) @@ -504,7 +504,7 @@ internal static object GetInternalUnderlineProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty ShadowProperty = null; internal static void SetInternalShadowProperty(BindableObject bindable, object oldValue, object newValue) @@ -523,7 +523,7 @@ internal static object GetInternalShadowProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty TextShadowProperty = null; internal static void SetInternalTextShadowProperty(BindableObject bindable, object oldValue, object newValue) @@ -548,7 +548,7 @@ internal static object GetInternalTextShadowProperty(BindableObject bindable) return temp.Empty() ? null : new TextShadow(temp); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EmbossProperty = null; internal static void SetInternalEmbossProperty(BindableObject bindable, object oldValue, object newValue) @@ -567,7 +567,7 @@ internal static object GetInternalEmbossProperty(BindableObject bindable) return Object.InternalGetPropertyString(textLabel.SwigCPtr, TextLabel.Property.EMBOSS); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty OutlineProperty = null; internal static void SetInternalOutlineProperty(BindableObject bindable, object oldValue, object newValue) @@ -586,7 +586,7 @@ internal static object GetInternalOutlineProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty PixelSizeProperty = null; internal static void SetInternalPixelSizeProperty(BindableObject bindable, object oldValue, object newValue) @@ -610,7 +610,7 @@ internal static object GetInternalPixelSizeProperty(BindableObject bindable) return Object.InternalGetPropertyFloat(textLabel.SwigCPtr, TextLabel.Property.PixelSize); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty EllipsisProperty = null; internal static void SetInternalEllipsisProperty(BindableObject bindable, object oldValue, object newValue) @@ -648,7 +648,7 @@ internal static object GetInternalEllipsisPositionProperty(BindableObject bindab return (EllipsisPosition)Object.InternalGetPropertyInt(textLabel.SwigCPtr, TextLabel.Property.EllipsisPosition); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty AutoScrollLoopDelayProperty = null; internal static void SetInternalAutoScrollLoopDelayProperty(BindableObject bindable, object oldValue, object newValue) @@ -667,7 +667,7 @@ internal static object GetInternalAutoScrollLoopDelayProperty(BindableObject bin return Object.InternalGetPropertyFloat(textLabel.SwigCPtr, TextLabel.Property.AutoScrollLoopDelay); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty AutoScrollStopModeProperty = null; internal static void SetInternalAutoScrollStopModeProperty(BindableObject bindable, object oldValue, object newValue) @@ -688,7 +688,7 @@ internal static object GetInternalAutoScrollStopModeProperty(BindableObject bind return temp.GetValueByDescription(); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty LineWrapModeProperty = null; internal static void SetInternalLineWrapModeProperty(BindableObject bindable, object oldValue, object newValue) @@ -707,7 +707,7 @@ internal static object GetInternalLineWrapModeProperty(BindableObject bindable) return (LineWrapMode)Object.InternalGetPropertyInt(textLabel.SwigCPtr, TextLabel.Property.LineWrapMode); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty VerticalLineAlignmentProperty = null; internal static void SetInternalVerticalLineAlignmentProperty(BindableObject bindable, object oldValue, object newValue) @@ -726,7 +726,7 @@ internal static object GetInternalVerticalLineAlignmentProperty(BindableObject b return (VerticalLineAlignment)Object.InternalGetPropertyInt(textLabel.SwigCPtr, TextLabel.Property.VerticalLineAlignment); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty MatchSystemLanguageDirectionProperty = null; internal static void SetInternalMatchSystemLanguageDirectionProperty(BindableObject bindable, object oldValue, object newValue) diff --git a/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/ColorStop.cs b/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/ColorStop.cs index 7dfb793d867..11d0ff592b5 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/ColorStop.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/ColorStop.cs @@ -29,8 +29,10 @@ public class ColorStop private Color color; //The color value. /// - /// Initialize ColorStop. + /// Initializes a new instance of the ColorStop class with the specified offset and color. /// + /// The offset at which the color stop applies. + /// The color to apply at the specified offset. /// 9 public ColorStop(float offset, Color color) { @@ -39,7 +41,7 @@ public ColorStop(float offset, Color color) } /// - /// The relative position of the color. + /// Gets or sets the relative position of the color stop along the gradient line. /// /// 9 public float Offset @@ -55,7 +57,7 @@ public float Offset } /// - /// The color value. + /// Gets or sets the color value of the gradient stop. /// /// 9 public Color Color diff --git a/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/PathCommands.cs b/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/PathCommands.cs index 8ac8df3bd60..4e0f98e0d63 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/PathCommands.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/PathCommands.cs @@ -54,6 +54,7 @@ public PathCommands(IEnumerable commands, IEnumerable po /// /// The commands array. + /// This property returns an enumerable collection of PathCommandType representing the path commands. /// /// Thrown when commands is null. /// 9 @@ -75,6 +76,7 @@ public IEnumerable Commands /// /// The points array + /// This returns an enumerable collection of floating-point numbers representing the points. /// /// Thrown when points is null. /// 9 diff --git a/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/Picture.cs b/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/Picture.cs index 90735a3a500..09260325371 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/Picture.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/Picture.cs @@ -29,6 +29,7 @@ public class Picture : Drawable { /// /// Creates an initialized Picture. + /// This constructor initializes a new instance of the Picture class. /// /// 9 public Picture() : this(Interop.Picture.New(), true) diff --git a/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/Shape.cs b/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/Shape.cs index 56f9941621a..0a28f205d97 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/Shape.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/VectorGraphics/Shape.cs @@ -35,6 +35,7 @@ public class Shape : Drawable /// /// Creates an initialized Shape. + /// This constructor initializes a new instance of the Shape class. /// /// 9 public Shape() : this(Interop.Shape.New(), true) @@ -100,7 +101,8 @@ public Gradient FillGradient } /// - /// The current fill rule of the shape. + /// Gets or sets the fill rule type for the shape. + /// The fill rule type which determines how the interior of a shape is determined. /// /// 9 public FillRuleType FillRule diff --git a/src/Tizen.NUI/src/public/BaseComponents/VideoView.cs b/src/Tizen.NUI/src/public/BaseComponents/VideoView.cs index 3546a45c144..42534a02006 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/VideoView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/VideoView.cs @@ -27,7 +27,7 @@ namespace Tizen.NUI.BaseComponents /// 3 public class VideoView : View { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static BindableProperty VideoProperty = null; internal static void SetInternalVideoProperty(BindableObject bindable, object oldValue, object newValue) @@ -46,7 +46,7 @@ internal static object GetInternalVideoProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static BindableProperty LoopingProperty = null; internal static void SetInternalLoopingProperty(BindableObject bindable, object oldValue, object newValue) @@ -65,7 +65,7 @@ internal static object GetInternalLoopingProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static BindableProperty MutedProperty = null; internal static void SetInternalMutedProperty(BindableObject bindable, object oldValue, object newValue) @@ -84,7 +84,7 @@ internal static object GetInternalMutedProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static BindableProperty VolumeProperty = null; internal static void SetInternalVolumeProperty(BindableObject bindable, object oldValue, object newValue) @@ -103,7 +103,7 @@ internal static object GetInternalVolumeProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static BindableProperty UnderlayProperty = null; internal static void SetInternalUnderlayProperty(BindableObject bindable, object oldValue, object newValue) @@ -122,7 +122,7 @@ internal static object GetInternalUnderlayProperty(BindableObject bindable) return temp; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static BindableProperty ResourceUrlProperty = null; internal static void SetInternalResourceUrlProperty(BindableObject bindable, object oldValue, object newValue) @@ -533,8 +533,12 @@ internal VideoViewSignal FinishedSignal() /// /// Dispose. + /// Releases unmanaged and optionally managed resources. /// - /// DisposeTypes + /// + /// When overriding this method, you need to distinguish between explicit and implicit conditions. For explicit conditions, release both managed and unmanaged resources. For implicit conditions, only release unmanaged resources. + /// + /// Explicit to release both managed and unmanaged resources. Implicit to release only unmanaged resources. /// 3 protected override void Dispose(DisposeTypes type) { diff --git a/src/Tizen.NUI/src/public/BaseComponents/View.cs b/src/Tizen.NUI/src/public/BaseComponents/View.cs index d0fa08a5587..91b7a75cbb7 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/View.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/View.cs @@ -493,6 +493,7 @@ private static IntPtr NewWithAccessibilityMode(ViewAccessibilityMode accessibili /// /// Creates a new instance of a view. + /// The default constructor for the View class. /// /// 3 public View() : this(ViewAccessibilityMode.Default) @@ -505,7 +506,7 @@ public View(ViewAccessibilityMode accessibilityMode) : this(NewWithAccessibility if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public View(ViewStyle viewStyle) : this(Interop.View.New(), true, viewStyle) { @@ -515,7 +516,7 @@ public View(ViewStyle viewStyle) : this(Interop.View.New(), true, viewStyle) /// Create a new instance of a View with setting the status of shown or hidden. /// /// false : Not displayed (hidden), true : displayed (shown) - /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). + /// This will be public opened after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI). [EditorBrowsable(EditorBrowsableState.Never)] public View(bool shown) : this(Interop.View.New(), true) { @@ -571,7 +572,7 @@ internal View(ViewImpl implementation, bool shown = true) : this(Interop.View.Ne /// /// Flag to indicate if layout set explicitly via API call or View was automatically given a Layout. /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public bool LayoutSet { @@ -586,7 +587,7 @@ public bool LayoutSet /// Once a View has a Layout set then any children added to Views from then on will receive /// automatic Layouts. /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static bool LayoutingDisabled { get; set; } = true; @@ -638,7 +639,7 @@ protected ViewStyle ViewStyle /// please set to true. /// /// Thrown when set null. - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public ControlState ControlState { @@ -766,7 +767,7 @@ protected set /// /// Gets / Sets the status of whether the view is excluded from its parent's layouting or not. /// - /// This will be public opened later after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public bool ExcludeLayouting { @@ -980,7 +981,7 @@ public string BackgroundImage /// /// Get or set the border of background image. /// - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Rectangle BackgroundImageBorder { @@ -1010,7 +1011,8 @@ public Rectangle BackgroundImageBorder } /// - /// The background of view. + /// Gets or sets the background of the view. + /// This property value is the PropertyMap representing the background. /// /// 3 public Tizen.NUI.PropertyMap Background @@ -1398,7 +1400,7 @@ internal float GetInternalBorderlineOffset() } /// - /// The current state of the view. + /// Gets or sets the current state of the view. /// /// 3 public States State @@ -1488,6 +1490,7 @@ internal States GetInternalSubState() /// /// Displays a tooltip + /// This property allows setting the tooltip properties such as text. /// /// 3 public Tizen.NUI.PropertyMap Tooltip @@ -3492,8 +3495,7 @@ public string Name } /// - /// Gets the view's ID. - /// Read-only + /// Gets The unique identifier of the view. (Read-only) /// /// 3 public uint ID @@ -3999,7 +4001,7 @@ internal SizeScalePolicyType GetInternalSizeScalePolicy() } /// - /// Gets or sets the status of whether the width size is dependent on the height size. + /// Gets or sets the status of whether the width size is dependent on the height size. /// /// 3 public bool WidthForHeight @@ -5219,7 +5221,7 @@ public float Weight /// If not specified, the default is false, i.e. the BackgroundImage is loaded asynchronously. /// Note: For Normal Quad images only. /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public bool BackgroundImageSynchronosLoading { @@ -5274,7 +5276,7 @@ private bool InternalBackgroundImageSynchronosLoading /// If not specified, the default is false, i.e. the BackgroundImage is loaded asynchronously. /// Note: For Normal Quad images only. /// - /// This will be public opened in tizen_7.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public bool BackgroundImageSynchronousLoading { @@ -5336,7 +5338,7 @@ private bool InternalBackgroundImageSynchronousLoading } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Vector4 UpdateAreaHint { @@ -5638,7 +5640,7 @@ private bool InternalAllowOnlyOwnTouch /// Determines which blend equation will be used to render renderers of this actor. /// /// blend equation enum currently assigned - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public BlendEquationType BlendEquation { diff --git a/src/Tizen.NUI/src/public/BaseComponents/ViewPublicMethods.cs b/src/Tizen.NUI/src/public/BaseComponents/ViewPublicMethods.cs index 954bb1a47b7..aa9392309cd 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ViewPublicMethods.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ViewPublicMethods.cs @@ -303,6 +303,7 @@ public string GetStyleName() /// /// Clears the background. + /// This method removes any background properties set on the view, such as color or image. /// /// 3 public void ClearBackground() @@ -437,6 +438,7 @@ public void LowerToBottom() /// /// Most resources are only loaded when the control is placed on the stage. /// + /// True if all resources are ready, otherwise false. /// 3 public bool IsResourceReady() { @@ -623,6 +625,11 @@ public void GetPadding(PaddingType paddingOut) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Adds a renderer to the view. + /// + /// The renderer to add. + /// The index of the Renderer that was added to the view. /// 3 public uint AddRenderer(Renderer renderer) { @@ -632,6 +639,14 @@ public uint AddRenderer(Renderer renderer) return ret; } + /// + /// Retrieves the renderer at the specified index. + /// + /// The index of the renderer to retrieve. + /// A Renderer object at the specified index. + /// + /// The index must be between 0 and GetRendererCount()-1 + /// /// 3 public Renderer GetRendererAt(uint index) { @@ -649,6 +664,10 @@ public Renderer GetRendererAt(uint index) return ret; } + /// + /// Removes the specified renderer from the view. + /// + /// The renderer to remove. /// 3 public void RemoveRenderer(Renderer renderer) { @@ -657,6 +676,10 @@ public void RemoveRenderer(Renderer renderer) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } + /// + /// Removes a renderer at the specified index from the view. + /// + /// The index of the renderer to remove. /// 3 public void RemoveRenderer(uint index) { @@ -665,7 +688,7 @@ public void RemoveRenderer(uint index) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void RotateBy(Degree angle, Vector3 axis) { @@ -674,7 +697,7 @@ public void RotateBy(Degree angle, Vector3 axis) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void RotateBy(Radian angle, Vector3 axis) { @@ -683,7 +706,7 @@ public void RotateBy(Radian angle, Vector3 axis) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void RotateBy(Rotation relativeRotation) { @@ -692,7 +715,7 @@ public void RotateBy(Rotation relativeRotation) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void ScaleBy(Vector3 relativeScale) { @@ -710,7 +733,7 @@ public void ScaleBy(Vector3 relativeScale) /// The up vector after target look at. If it is null, up vector become +Y axis /// The forward vector of view when it's orientation is not applied. If it is null, localForward vector become +Z axis /// The up vector of view when it's orientation is not applied. If it is null, localUp vector become +Y axis - /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void LookAt(Vector3 target, Vector3 up = null, Vector3 localForward = null, Vector3 localUp = null) { @@ -719,7 +742,7 @@ public void LookAt(Vector3 target, Vector3 up = null, Vector3 localForward = nul throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void SetColorMode(ColorMode colorMode) { @@ -728,7 +751,7 @@ public void SetColorMode(ColorMode colorMode) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void ObjectDump() { From c3d5df31bff21f8de519987d7be80d49cf66d98c Mon Sep 17 00:00:00 2001 From: Seungho Baek Date: Wed, 25 Sep 2024 10:20:26 +0900 Subject: [PATCH 084/198] [NUI.Scene3D] Fix miss used method in SceneView - DeleteCameraProperty has been used for the case that should use DeleteCamera. Signed-off-by: Seungho Baek --- src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs b/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs index e0086234e0a..d7a72f20558 100755 --- a/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs +++ b/src/Tizen.NUI.Scene3D/src/public/Controls/SceneView.cs @@ -446,7 +446,7 @@ public Camera GetCamera(uint index) { // We found matched NUI camera. Reduce cPtr reference count. HandleRef handle = new HandleRef(this, cPtr); - Interop.Camera.DeleteCameraProperty(handle); + Interop.Camera.DeleteCamera(handle); handle = new HandleRef(null, IntPtr.Zero); } if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); @@ -472,7 +472,7 @@ public Camera GetCamera(string name) { // We found matched NUI camera. Reduce cPtr reference count. HandleRef handle = new HandleRef(this, cPtr); - Interop.Camera.DeleteCameraProperty(handle); + Interop.Camera.DeleteCamera(handle); handle = new HandleRef(null, IntPtr.Zero); } if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); @@ -569,7 +569,7 @@ public Camera GetSelectedCamera() { // We found matched NUI camera. Reduce cPtr reference count. HandleRef handle = new HandleRef(this, cPtr); - Interop.Camera.DeleteCameraProperty(handle); + Interop.Camera.DeleteCamera(handle); handle = new HandleRef(null, IntPtr.Zero); } if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); From 1fb0aae4bf33a3ff768907666b1c32f0c45ecfd5 Mon Sep 17 00:00:00 2001 From: Wonsik Jung Date: Wed, 25 Sep 2024 12:51:21 +0900 Subject: [PATCH 085/198] [NUI] Supports to set window layer to bottom Supports to set window layer to bottom. The related patches are the belows. https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-adaptor/+/318118/ https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-csharp-binder/+/318127/ --- .../src/internal/Interop/Interop.Window.cs | 7 +++++ src/Tizen.NUI/src/public/Window/Window.cs | 26 +++++++++++++++-- .../Tizen.NUI.Samples/Samples/WindowTest1.cs | 28 +++++++++++++++++-- 3 files changed, 57 insertions(+), 4 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs b/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs index 19d41f90abd..9caff4253d3 100755 --- a/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs +++ b/src/Tizen.NUI/src/internal/Interop/Interop.Window.cs @@ -385,6 +385,13 @@ internal static partial class Window [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] public static extern bool IsAlwaysOnTop(global::System.Runtime.InteropServices.HandleRef window); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_SetBottom")] + public static extern void SetBottom(global::System.Runtime.InteropServices.HandleRef window, bool enable); + + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_IsBottom")] + [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] + public static extern bool IsBottom(global::System.Runtime.InteropServices.HandleRef window); + [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_Window_RelativeMotionGrab")] [return: global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.U1)] public static extern bool RelativeMotionGrab(global::System.Runtime.InteropServices.HandleRef window, uint boundary); diff --git a/src/Tizen.NUI/src/public/Window/Window.cs b/src/Tizen.NUI/src/public/Window/Window.cs index d00d5ccd577..cf165fce230 100755 --- a/src/Tizen.NUI/src/public/Window/Window.cs +++ b/src/Tizen.NUI/src/public/Window/Window.cs @@ -2582,8 +2582,9 @@ public bool IsModal /// - /// Gets or sets a value indicating whether the window is alwats on top of other windows or not. - /// Its behavior is effective among windows with the same notification level. + /// Gets or sets a value indicating whether the window is always on top of other windows or not. + /// This is valid between windows that have no notification level or a notification level of 'none'. + /// If it has a notification level, this will not do anything. /// [EditorBrowsable(EditorBrowsableState.Never)] public bool IsAlwaysOnTop @@ -2601,6 +2602,27 @@ public bool IsAlwaysOnTop } } + /// + /// Gets or sets a value indicating whether the window is the bottom of other windows or not. + /// If the enable flag is true, this window will be placed below other windows. + /// Otherwise, if it's called with a false value, it will be located above other windows.. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public bool IsBottom + { + get + { + bool ret = Interop.Window.IsBottom(SwigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + set + { + Interop.Window.SetBottom(SwigCPtr, value); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + } + /// /// Requests relative motion grab /// diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/WindowTest1.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/WindowTest1.cs index 1da43a490b9..3f99ed8ddd6 100644 --- a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/WindowTest1.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/WindowTest1.cs @@ -18,7 +18,7 @@ public class WindowTest1 : IExample int screenHeight; int addingInput; - private Window subWindow = null; + Window subWindow = null; private const string KEY_NUM_1 = "1"; private const string KEY_NUM_2 = "2"; @@ -483,6 +483,15 @@ private void OnSubWindowResizeCompleted(object sender, WindowResizeCompletedEven log.Fatal(tag, $"OnSubWindowResizeCompleted() called!, width:{size.Width}, height:{size.Height}"); } + bool testOnTick(object o, Timer.TickEventArgs e) + { + if(subWindow.IsBottom) + { + log.Fatal(tag, $"current bottom flag is true and change to false"); + subWindow.IsBottom = false; + } + return false; + } public void OnSubWindowKeyEvent(object sender, Window.KeyEventArgs e) { @@ -563,7 +572,7 @@ public void OnSubWindowKeyEvent(object sender, Window.KeyEventArgs e) case KEY_NUM_7: log.Fatal(tag, $"Always On Top Window Test"); - if(mainWin.IsAlwaysOnTop) + if(subWindow.IsAlwaysOnTop) { log.Fatal(tag, $"current AlwaysOnTop is true and change to false"); subWindow.IsAlwaysOnTop = false; @@ -587,6 +596,21 @@ public void OnSubWindowKeyEvent(object sender, Window.KeyEventArgs e) break; case KEY_NUM_9: + log.Fatal(tag, $"Set Bottom Test"); + if(subWindow.IsBottom) + { + log.Fatal(tag, $"current bottom flag is true and change to false"); + subWindow.IsBottom = false; + } + else + { + log.Fatal(tag, $"current bottom is false and change to true"); + subWindow.IsBottom = true; + + Timer timer = new Timer(5000); + timer.Tick += testOnTick; + timer.Start(); + } break; default: From 404cc82cb23f32e5b8eed3341bb4482cb86edf6f Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Mon, 23 Sep 2024 19:51:12 +0900 Subject: [PATCH 086/198] [NUI] Support ImageView and ImageVisual the SamplingMode Let we add property for change sampling mode when we change desired size of given image. Relative dali patch https://review.tizen.org/gerrit/c/platform/core/uifw/dali-core/+/317969 https://review.tizen.org/gerrit/c/platform/core/uifw/dali-adaptor/+/317993 https://review.tizen.org/gerrit/c/platform/core/uifw/dali-toolkit/+/317992 https://review.tizen.org/gerrit/c/platform/core/uifw/dali-demo/+/318001 Signed-off-by: Eunki, Hong --- .../src/public/BaseComponents/ImageView.cs | 27 ++++++++ .../src/public/Visuals/VisualConstants.cs | 12 +++- .../Visuals/VisualObject/ImageVisual.cs | 22 +++++++ .../Tizen.NUI.Samples/Samples/VisualTest.cs | 66 +++++++++++++++++++ 4 files changed, 126 insertions(+), 1 deletion(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs b/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs index dd8fbde624b..8297bb9cf3a 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/ImageView.cs @@ -125,6 +125,7 @@ private static string ConvertResourceUrl(ref string value) ImageVisualProperty.AlphaMaskURL, ImageVisualProperty.CropToMask, Visual.Property.VisualFittingMode, + ImageVisualProperty.SamplingMode, ImageVisualProperty.DesiredWidth, ImageVisualProperty.DesiredHeight, ImageVisualProperty.ReleasePolicy, @@ -1288,6 +1289,32 @@ private FittingModeType InternalFittingMode } } + /// + /// Gets or sets filtering options used when resizing images to the sample original pixels.
+ /// If not supplied, the default is SamplingModeType.BoxThenLinear.
+ /// For normal quad images only.
+ /// Optional. + ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public SamplingModeType SamplingMode + { + get + { + int ret = (int)SamplingModeType.BoxThenLinear; + + using PropertyValue samplingMode = GetCachedImageVisualProperty(ImageVisualProperty.SamplingMode); + samplingMode?.Get(out ret); + + return (SamplingModeType)ret; + } + set + { + using PropertyValue setValue = new PropertyValue((int)value); + UpdateImage(ImageVisualProperty.SamplingMode, setValue); + NotifyPropertyChanged(); + } + } + /// /// This method allows users to configure the blending of two images(previous and currnet) using alpha values. /// diff --git a/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs b/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs index ae43965d2e0..16ce53074b1 100755 --- a/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs +++ b/src/Tizen.NUI/src/public/Visuals/VisualConstants.cs @@ -199,7 +199,17 @@ public enum SamplingModeType /// /// For caching algorithms where a client strongly prefers a cache-hit to reuse a cached image. /// - DontCare + DontCare, + /// + /// Use Lanczos resample algorithm. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + Lanczos, + /// + /// Iteratively box filter to generate an image of 1/2, 1/4, 1/8 etc width and height and approximately the desired size, then apply Lanczos resample algorithm. + /// + [EditorBrowsable(EditorBrowsableState.Never)] + BoxThenLanczos, } /// diff --git a/src/Tizen.NUI/src/public/Visuals/VisualObject/ImageVisual.cs b/src/Tizen.NUI/src/public/Visuals/VisualObject/ImageVisual.cs index c1f60836f13..2b1c51168e8 100644 --- a/src/Tizen.NUI/src/public/Visuals/VisualObject/ImageVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/VisualObject/ImageVisual.cs @@ -331,6 +331,28 @@ public ReleasePolicyType ReleasePolicy } } + /// + /// Gets or sets filtering options used when resizing images to the sample original pixels.
+ /// If not supplied, the default is SamplingModeType.BoxThenLinear.
+ /// For normal quad images only.
+ /// Optional. + ///
+ [EditorBrowsable(EditorBrowsableState.Never)] + public SamplingModeType SamplingMode + { + set + { + UpdateVisualProperty((int)Tizen.NUI.ImageVisualProperty.SamplingMode, new PropertyValue((int)value)); + } + get + { + int ret = (int)SamplingModeType.BoxThenLinear; + var propertyValue = GetCachedVisualProperty((int)Tizen.NUI.ImageVisualProperty.SamplingMode); + propertyValue?.Get(out ret); + return (SamplingModeType)ret; + } + } + /// /// Gets or sets the desired image width.
/// If not specified, the actual image width is used.
diff --git a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisualTest.cs b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisualTest.cs index 54dbea7b4be..32fe162a98a 100755 --- a/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisualTest.cs +++ b/test/Tizen.NUI.Samples/Tizen.NUI.Samples/Samples/VisualTest.cs @@ -90,6 +90,18 @@ private void WinKeyEvent(object sender, Window.KeyEventArgs e) { focusIndicatorVisual.ResourceUrl = focusIndicatorImageUrl; } + else if(e.Key.KeyPressedName == "6") + { + View focusedView = FocusManager.Instance.GetCurrentFocusView(); + if(focusedView != null) + { + var thumbnailVisual = focusedView.FindVisualByName("thumbnailImage") as Visuals.ImageVisual; + if(thumbnailVisual != null) + { + thumbnailVisual.SamplingMode = GetNextSamplingModeType(thumbnailVisual.SamplingMode); + } + } + } } } @@ -314,6 +326,8 @@ private View CreateViewWithVisual(int id) SynchronousSizing = true, + SamplingMode = SamplingModeType.BoxThenLanczos, + OffsetXPolicy = VisualTransformPolicyType.Absolute, OffsetYPolicy = VisualTransformPolicyType.Absolute, WidthPolicy = VisualTransformPolicyType.Absolute, @@ -390,5 +404,57 @@ private View CreateViewWithVisual(int id) return view; } + + static private SamplingModeType GetNextSamplingModeType(SamplingModeType currentSamplingMode) + { + SamplingModeType nextSamplingMode = SamplingModeType.DontCare; + switch(currentSamplingMode) + { + case SamplingModeType.Box: + { + nextSamplingMode = SamplingModeType.Nearest; + break; + } + case SamplingModeType.Nearest: + { + nextSamplingMode = SamplingModeType.Linear; + break; + } + case SamplingModeType.Linear: + { + nextSamplingMode = SamplingModeType.BoxThenNearest; + break; + } + case SamplingModeType.BoxThenNearest: + { + nextSamplingMode = SamplingModeType.BoxThenLinear; + break; + } + case SamplingModeType.BoxThenLinear: + { + nextSamplingMode = SamplingModeType.Lanczos; + break; + } + case SamplingModeType.Lanczos: + { + nextSamplingMode = SamplingModeType.BoxThenLanczos; + break; + } + case SamplingModeType.BoxThenLanczos: + { + nextSamplingMode = SamplingModeType.DontCare; + break; + } + case SamplingModeType.DontCare: + default: + { + nextSamplingMode = SamplingModeType.Box; + break; + } + } + Tizen.Log.Error("NUI", $"Change sampling mode from [{currentSamplingMode}] to [{nextSamplingMode}]\n"); + + return nextSamplingMode; + } } } From ab6434c63e36ea42fbe2e86903f28720f7d3a919 Mon Sep 17 00:00:00 2001 From: Seungho Baek Date: Wed, 25 Sep 2024 20:22:32 +0900 Subject: [PATCH 087/198] [NUI] Version 2.3.42 Signed-off-by: Seungho Baek --- packaging/csapi-tizenfx.spec | 2 +- packaging/version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/csapi-tizenfx.spec b/packaging/csapi-tizenfx.spec index 903a755efdd..59e9ae34386 100644 --- a/packaging/csapi-tizenfx.spec +++ b/packaging/csapi-tizenfx.spec @@ -1,7 +1,7 @@ # Auto-generated from csapi-tizenfx.spec.in by makespec.sh %define TIZEN_NET_API_VERSION 12 -%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22340 +%define TIZEN_NET_RPM_VERSION 12.0.0.999+nui22342 %define TIZEN_NET_NUGET_VERSION 12.0.0.99999 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework diff --git a/packaging/version.txt b/packaging/version.txt index 818836a7c24..159e7781971 100755 --- a/packaging/version.txt +++ b/packaging/version.txt @@ -6,4 +6,4 @@ RPM_VERSION=12.0.0.999 NUGET_VERSION=12.0.0.99999 # RPM Version Suffix -RPM_VERSION_SUFFIX=nui22340 +RPM_VERSION_SUFFIX=nui22342 From d30f8022222fff8ab491e5b4b728011ad40cffeb Mon Sep 17 00:00:00 2001 From: Inhong Date: Thu, 12 Sep 2024 18:04:54 +0900 Subject: [PATCH 088/198] [TCSACR-598][InputMethod] Remove deprecated APIs (#6313) --- .../Interop/Interop.InputMethod.cs | 6 -- .../Tizen.Uix.InputMethod.csproj | 1 - .../Tizen.Uix.InputMethod/EditorWindow.cs | 87 ------------------- .../InputMethodEditor.cs | 28 ------ 4 files changed, 122 deletions(-) delete mode 100755 src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/EditorWindow.cs diff --git a/src/Tizen.Uix.InputMethod/Interop/Interop.InputMethod.cs b/src/Tizen.Uix.InputMethod/Interop/Interop.InputMethod.cs index fab0f67b45f..f1dab944d0b 100644 --- a/src/Tizen.Uix.InputMethod/Interop/Interop.InputMethod.cs +++ b/src/Tizen.Uix.InputMethod/Interop/Interop.InputMethod.cs @@ -201,9 +201,6 @@ public void Dispose() [DllImport(Libraries.InputMethod, EntryPoint = "ime_set_selection")] internal static extern ErrorCode ImeSetSelection(int start, int end); - [DllImport(Libraries.InputMethod, EntryPoint = "ime_get_main_window")] - internal static extern IntPtr ImeGetMainWindow(); - [DllImport(Libraries.InputMethod, EntryPoint = "ime_request_hide")] internal static extern ErrorCode ImeRequestHide(); @@ -219,9 +216,6 @@ public void Dispose() [DllImport(Libraries.InputMethod, EntryPoint = "ime_set_dotnet_flag")] internal static extern ErrorCode ImeSetDotnetFlag(bool set); - [DllImport(Libraries.InputMethod, EntryPoint = "ime_set_size")] - internal static extern ErrorCode ImeSetSize(int portraitWidth, int portraitHeight, int landscapeWidth, int landscapeHeight); - [DllImport(Libraries.InputMethod, EntryPoint = "ime_context_get_layout")] internal static extern ErrorCode ImeContextGetLayout(IntPtr context, out InputPanelLayout layout); diff --git a/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod.csproj b/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod.csproj index feac9a6af4f..d82d90a7dd4 100644 --- a/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod.csproj +++ b/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod.csproj @@ -7,7 +7,6 @@ - diff --git a/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/EditorWindow.cs b/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/EditorWindow.cs deleted file mode 100755 index 8b1fc6c5765..00000000000 --- a/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/EditorWindow.cs +++ /dev/null @@ -1,87 +0,0 @@ -/* -* Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved -* -* Licensed under the Apache License, Version 2.0 (the License); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an AS IS BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ - -using Tizen; -using System; -using ElmSharp; -using static Interop.InputMethod; - -namespace Tizen.Uix.InputMethod -{ - /// - /// The editor window class. - /// - /// 4 - [Obsolete("Deprecated since API10. Will be removed in API12. Use NUIApplication.GetDefaultWindow() to get window in NUI application")] - public class EditorWindow : Window - { - internal static IntPtr _handle = IntPtr.Zero; - private IntPtr _realHandle = IntPtr.Zero; - - internal EditorWindow():base("Edit") - { - _realHandle = _handle; - } - - /// - /// This API creates a handle for the editor window. - /// - /// Parent EvasObject. - /// Handle IntPtr. - /// 4 - [Obsolete("Deprecated since API10. Will be removed in API12.")] - protected override IntPtr CreateHandle(EvasObject parent) - { - return _handle; - } - - /// - /// This API gets a handle for the editor window. - /// - /// Handle IntPtr. - /// 4 - [Obsolete("Deprecated since API10. Will be removed in API12.")] - public IntPtr GetHandle() - { - return _handle; - } - - /// - /// This API updates the input panel window's size information. - /// - /// - /// http://tizen.org/privilege/ime - /// - /// The width in the portrait mode. - /// The height in the portrait mode. - /// The width in the landscape mode. - /// The height in the landscape mode. - /// This exception can be due to an invalid parameter. - /// This exception can be due to permission denied. - /// The IME main loop has not started yet. - /// 4 - [Obsolete("Deprecated since API10. Will be removed in API12.")] - public static void SetSize(int portraitWidth, int portraitHeight, int landscapeWidth, int landscapeHeight) - { - ErrorCode error = ImeSetSize(portraitWidth, portraitHeight, landscapeWidth, landscapeHeight); - if (error != ErrorCode.None) - { - Log.Error(LogTag, "SetSize Failed with error " + error); - throw InputMethodExceptionFactory.CreateException(error); - } - } - } -} diff --git a/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/InputMethodEditor.cs b/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/InputMethodEditor.cs index 146c49b4efa..124ee94d659 100644 --- a/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/InputMethodEditor.cs +++ b/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/InputMethodEditor.cs @@ -1877,34 +1877,6 @@ public static void SetSelection(int start, int end) } } - /// - /// This API returns the input panel main window. - /// - /// - /// http://tizen.org/privilege/ime - /// - /// The input panel main window object on success, otherwise null. - /// This exception can be due to permission denied. - /// - /// This can occur due to the following reasons: - /// 1) The IME main loop has not started yet. - /// 2) Operation failed. - /// - /// 4 - [Obsolete("Deprecated since API10. Will be removed in API12.")] - public static EditorWindow GetMainWindow() - { - EditorWindow._handle = ImeGetMainWindow(); - EditorWindow obj = new EditorWindow(); - ErrorCode error = (ErrorCode)Tizen.Internals.Errors.ErrorFacts.GetLastResult(); - if (error != ErrorCode.None) - { - Log.Error(LogTag, "GetMainWindow Failed with error " + error); - throw InputMethodExceptionFactory.CreateException(error); - } - return obj; - } - /// /// Sends the request to hide the IME. /// From f3f622d879eed199cac5a6d27a48c32aafdf58dc Mon Sep 17 00:00:00 2001 From: Inhong Date: Thu, 12 Sep 2024 18:29:03 +0900 Subject: [PATCH 089/198] [TCSACR-599][InputMethod] Deprecate RotationChanged event (#6315) --- .../Tizen.Uix.InputMethod/InputMethodEditor.cs | 1 + .../Tizen.Uix.InputMethod/RotationChangedEventArgs.cs | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/InputMethodEditor.cs b/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/InputMethodEditor.cs index 124ee94d659..d9e27b801ca 100644 --- a/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/InputMethodEditor.cs +++ b/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/InputMethodEditor.cs @@ -1462,6 +1462,7 @@ public static event EventHandler DisplayLanguag /// Called when the device is rotated. ///
/// 4 + [Obsolete("Deprecated since API12. Will be removed in API14. Please use Window.Resized instead.")] public static event EventHandler RotationChanged { add diff --git a/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/RotationChangedEventArgs.cs b/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/RotationChangedEventArgs.cs index b9a966d6aa2..dc3f96c07c6 100755 --- a/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/RotationChangedEventArgs.cs +++ b/src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/RotationChangedEventArgs.cs @@ -14,12 +14,15 @@ * limitations under the License. */ +using System; + namespace Tizen.Uix.InputMethod { /// /// This class contains the data related to the RotationChanged event. /// /// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public class RotationChangedEventArgs { internal RotationChangedEventArgs(int degree) @@ -31,6 +34,7 @@ internal RotationChangedEventArgs(int degree) /// The rotation degree. ///
/// 4 + [Obsolete("Deprecated since API12. Will be removed in API14.")] public int Degree { get; From 73d0f355791b1a89759a6d0182b67809164a8202 Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Fri, 13 Sep 2024 09:44:25 +0900 Subject: [PATCH 090/198] [MetadataExtractor] Add a StitchedContent360 metadata API (#6292) * [MetadataExtractor] Add a StitchedContent360 metadata API --- .../MetadataExtractor/Metadata.cs | 9 +++++++++ .../MetadataExtractor/MetadataExtractorAttr.cs | 1 + 2 files changed, 10 insertions(+) diff --git a/src/Tizen.Multimedia.Metadata/MetadataExtractor/Metadata.cs b/src/Tizen.Multimedia.Metadata/MetadataExtractor/Metadata.cs index d5ca764fefc..0d10a12f376 100644 --- a/src/Tizen.Multimedia.Metadata/MetadataExtractor/Metadata.cs +++ b/src/Tizen.Multimedia.Metadata/MetadataExtractor/Metadata.cs @@ -215,6 +215,8 @@ internal Metadata(MetadataExtractor extractor) DateRecorded = extractor.GetMetadata(MetadataExtractorAttr.RecordingDate); Rotation = extractor.GetMetadata(MetadataExtractorAttr.Rotate); Content360 = extractor.GetMetadata(MetadataExtractorAttr.ContentFor360); + var stitched = ValueConverter.ToNullableInt(extractor.GetMetadata(MetadataExtractorAttr.StitchedContentFor360)); + StitchedContent360 = stitched == 0 || stitched == null ? null : stitched; _description = new Lazy(() => ObjectDescriptionBuilder.BuildWithProperties(this)); } @@ -402,6 +404,13 @@ internal Metadata(MetadataExtractor extractor) /// A string representing the information for 360 content, or null if the information does not exist. public string Content360 { get; } + /// + /// Gets the information about 360 video content being stitched or not. + /// + /// 12 + /// 1 : not stitched, 2 : stitched, or null if the information does not exist. + public int? StitchedContent360 { get; } + private Lazy _description; /// diff --git a/src/Tizen.Multimedia.Metadata/MetadataExtractor/MetadataExtractorAttr.cs b/src/Tizen.Multimedia.Metadata/MetadataExtractor/MetadataExtractorAttr.cs index c2d325c2c00..148522372ad 100644 --- a/src/Tizen.Multimedia.Metadata/MetadataExtractor/MetadataExtractorAttr.cs +++ b/src/Tizen.Multimedia.Metadata/MetadataExtractor/MetadataExtractorAttr.cs @@ -53,5 +53,6 @@ internal enum MetadataExtractorAttr VideoCodec, AudioCodec, ContentFor360, + StitchedContentFor360, } } From d2f9959f3d79fe761ed3eae00402d0cc9af89735 Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Fri, 13 Sep 2024 12:38:15 +0900 Subject: [PATCH 091/198] [AudioManager] Add new SoundEffect APIs (#6329) --- .../AudioManager/AudioStreamPolicy.cs | 100 ++++++++ .../AudioManager/SoundEffect.cs | 236 ++++++++++++++++++ .../Interop/Interop.StreamPolicy.cs | 14 ++ 3 files changed, 350 insertions(+) create mode 100644 src/Tizen.Multimedia/AudioManager/SoundEffect.cs diff --git a/src/Tizen.Multimedia/AudioManager/AudioStreamPolicy.cs b/src/Tizen.Multimedia/AudioManager/AudioStreamPolicy.cs index 9d450f638bb..0d8ada32706 100644 --- a/src/Tizen.Multimedia/AudioManager/AudioStreamPolicy.cs +++ b/src/Tizen.Multimedia/AudioManager/AudioStreamPolicy.cs @@ -15,7 +15,9 @@ */ using System; +using System.Collections.Generic; using System.Diagnostics; +using System.Linq; namespace Tizen.Multimedia { @@ -421,6 +423,104 @@ public bool HasStreamOnDevice(AudioDevice device) return isOn; } + /// + /// Sets the sound effect. + /// + /// + /// If is true, must be or + /// or . + /// And must not be null.
+ /// If is false, must be or + /// or . + ///
+ /// See . + /// A reference device for sound effect. + /// When is true, A reference device is null. + /// The current is not supported for sound effect with reference. + /// The has already been disposed. + /// 12 + public void SetSoundEffect(SoundEffectInfo info, bool withReference) + { + if (withReference) + { + var set = new SoundEffectType[] { SoundEffectType.ReferenceCopy, SoundEffectType.AecSpeex, SoundEffectType.AecWebrtc }; + if (!set.Contains(info.Type)) + { + Log.Error(Tag, $"Type={info.Type} is not supported for setting with reference."); + throw new ArgumentException($"{info.Type} is not supported for setting with reference."); + } + if (info.ReferenceDevice == null) + { + throw new ArgumentNullException(nameof(info.ReferenceDevice)); + } + + Log.Info(Tag, $"{info.ReferenceDevice}"); + + Interop.AudioStreamPolicy.SetSoundEffectWithReference(Handle, (SoundEffectWithReferenceNative)info.Type.ToNative(), + info.ReferenceDevice.Id).ThrowIfError("Failed to set audio effect with reference"); + } + else + { + var set = new SoundEffectType[] { SoundEffectType.NoiseSuppression, SoundEffectType.AutoGainControl, SoundEffectType.NsWithAgc }; + if (!set.Contains(info.Type)) + { + throw new ArgumentException($"{info.Type} is not supported for setting without reference."); + } + + Interop.AudioStreamPolicy.SetSoundEffect(Handle, info.Type.ToNative()). + ThrowIfError("Failed to set sound effect with reference"); + } + } + + /// + /// Gets the sound effect. + /// + /// + /// If is false, of returned value will be null. + /// + /// + /// The sound effect is not set yet.
+ /// - or -
+ /// There's no matched AudioDevice. + ///
+ /// Sound effect is not set yet. + /// The has already been disposed. + /// 12 + public SoundEffectInfo GetSoundEffect(bool withReference) + { + AudioManagerError ret = AudioManagerError.None; + SoundEffectInfo soundEffectInfo; + int deviceId = 0; + + if (withReference) + { + ret = Interop.AudioStreamPolicy.GetSoundEffectWithReference(Handle, out SoundEffectWithReferenceNative nativeEffect, out deviceId); + if (ret == AudioManagerError.InvalidParameter) + { + throw new InvalidOperationException("There's no sound effect with reference"); + } + ret.ThrowIfError("Failed to get sound effect with reference"); + + Log.Info(Tag, $"Device ID : {deviceId}"); + + soundEffectInfo = new SoundEffectInfo(nativeEffect.ToPublic(), + AudioManager.GetConnectedDevices().Where(d => d.Id == deviceId).Single()); + } + else + { + ret = Interop.AudioStreamPolicy.GetSoundEffect(Handle, out int nativeEffect); + if (ret == AudioManagerError.InvalidParameter) + { + throw new InvalidOperationException("There's no sound effect"); + } + ret.ThrowIfError("Failed to get sound effect"); + + soundEffectInfo = new SoundEffectInfo(((SoundEffectNative)nativeEffect).ToPublic()); + } + + return soundEffectInfo; + } + /// /// Releases all resources used by the . /// diff --git a/src/Tizen.Multimedia/AudioManager/SoundEffect.cs b/src/Tizen.Multimedia/AudioManager/SoundEffect.cs new file mode 100644 index 00000000000..25f6277eb02 --- /dev/null +++ b/src/Tizen.Multimedia/AudioManager/SoundEffect.cs @@ -0,0 +1,236 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; + +namespace Tizen.Multimedia +{ + /// + /// Specifies the sound effect types. + /// + /// 12 + public enum SoundEffectType + { + /// + /// Noise suppression for voice call. + /// + NoiseSuppression, + + /// + /// Auto Gain Control for normal capturing. + /// + AutoGainControl, + + /// + /// Noise suppression + Auto Gain Control. + /// + NsWithAgc, + + /// + /// Includes the output sound from the reference device in the recorded audio. + /// + /// + /// This effect should be used with . + /// + ReferenceCopy = 0x1001, + + /// + /// AEC (Acoustic Echo Cancellation) with Speex. + /// + /// + /// This effect should be used with . + /// + AecSpeex, + + /// + /// AEC (Acoustic Echo Cancellation) with WebRTC. + /// + /// + /// This effect should be used with . + /// + AecWebrtc + } + + /// + /// Specifies the sound effect information. + /// + /// 12 + public struct SoundEffectInfo + { + /// + /// Initializes a new instance of . + /// + /// The SoundEffectType. + /// Invalid input enum type. + /// 12 + public SoundEffectInfo(SoundEffectType type) + { + ValidationUtil.ValidateEnum(typeof(SoundEffectType), type, nameof(type)); + + Type = type; + ReferenceDevice = null; + } + + /// + /// Initializes a new instance of with a reference audio device. + /// + /// The SoundEffectType. + /// The AudioDevice to be refered. + /// 12 + public SoundEffectInfo(SoundEffectType type, AudioDevice device) + { + ValidationUtil.ValidateEnum(typeof(SoundEffectType), type, nameof(type)); + + Type = type; + ReferenceDevice = device; + } + + /// + /// The SoundEffectType. + /// + /// 12 + public SoundEffectType Type { get; } + + /// + /// The AudioDevice used by the SoundEffect as additional source of audio data. + /// + /// 12 + public AudioDevice ReferenceDevice { get; } + } + + [Flags] + internal enum SoundEffectNative + { + NoiseSuppression = 1, + AutoGainControl = 2 + } + + internal enum SoundEffectWithReferenceNative + { + ReferenceCopy = 1, + AecSpeex = 2, + AecWebrtc = 4 + } + + internal static class EnumExtensions + { + private const string Tag = "Tizen.Multimedia.AudioManager"; + + internal static int ToNative(this SoundEffectType effect) + { + int ret = 0; + + /* Native enum values are defined as below: + typedef enum { + SOUND_EFFECT_REFERENCE_COPY = 0x0001, //< Including reference source + SOUND_EFFECT_ACOUSTIC_ECHO_CANCEL_SPEEX = 0x0002, //< Acoustic echo cancel with speex + SOUND_EFFECT_ACOUSTIC_ECHO_CANCEL_WEBRTC = 0x0004, //< Acoustic echo cancel with webrtc + } sound_effect_method_with_reference_e; + + typedef enum { + SOUND_EFFECT_NOISE_SUPPRESSION_VOIP = 0x0001, //< Noise suppression for voice call + SOUND_EFFECT_AUTOMATIC_GAIN_CONTROL_CAPTURE = 0x0002, //< Auto Gain Control for normal capturing + } sound_effect_method_e; + */ + switch (effect) + { + case SoundEffectType.NoiseSuppression: + ret = 1; + break; + case SoundEffectType.AutoGainControl: + ret = 2; + break; + case SoundEffectType.NsWithAgc: + ret = 3; + break; + case SoundEffectType.ReferenceCopy: + ret = 1; + break; + case SoundEffectType.AecSpeex: + ret = 2; + break; + case SoundEffectType.AecWebrtc: + ret = 4; + break; + default: + Log.Error(Tag, "Invalid sound effect type."); + break; + } + + return ret; + } + + internal static SoundEffectType ToPublic(this SoundEffectNative effect) + { + SoundEffectType ret = SoundEffectType.NoiseSuppression; + + /* Native enum values are defined as below. And these can be set together. + typedef enum { + SOUND_EFFECT_NOISE_SUPPRESSION_VOIP = 0x0001, //< Noise suppression for voice call + SOUND_EFFECT_AUTOMATIC_GAIN_CONTROL_CAPTURE = 0x0002, //< Auto Gain Control for normal capturing + } sound_effect_method_e; + */ + switch (effect) + { + case SoundEffectNative.NoiseSuppression: + ret = SoundEffectType.NoiseSuppression; + break; + case SoundEffectNative.AutoGainControl: + ret = SoundEffectType.AutoGainControl; + break; + case SoundEffectNative.NoiseSuppression | SoundEffectNative.AutoGainControl: + ret = SoundEffectType.NsWithAgc; + break; + default: + Log.Error(Tag, "Invalid sound effect type."); + break; + } + + return ret; + } + + internal static SoundEffectType ToPublic(this SoundEffectWithReferenceNative effect) + { + SoundEffectType ret = SoundEffectType.ReferenceCopy; + + /* Native enum values are defined as below. And these cannot be set together. + typedef enum { + SOUND_EFFECT_REFERENCE_COPY = 0x0001, //< Including reference source + SOUND_EFFECT_ACOUSTIC_ECHO_CANCEL_SPEEX = 0x0002, //< Acoustic echo cancel with speex + SOUND_EFFECT_ACOUSTIC_ECHO_CANCEL_WEBRTC = 0x0004, //< Acoustic echo cancel with webrtc + } sound_effect_method_with_reference_e; + */ + switch (effect) + { + case SoundEffectWithReferenceNative.ReferenceCopy: + ret = SoundEffectType.ReferenceCopy; + break; + case SoundEffectWithReferenceNative.AecSpeex: + ret = SoundEffectType.AecSpeex; + break; + case SoundEffectWithReferenceNative.AecWebrtc: + ret = SoundEffectType.AecWebrtc; + break; + default: + Log.Error(Tag, "Invalid sound effect type."); + break; + } + + return ret; + } + } + +} diff --git a/src/Tizen.Multimedia/Interop/Interop.StreamPolicy.cs b/src/Tizen.Multimedia/Interop/Interop.StreamPolicy.cs index ede35629858..1c8f91b97a9 100644 --- a/src/Tizen.Multimedia/Interop/Interop.StreamPolicy.cs +++ b/src/Tizen.Multimedia/Interop/Interop.StreamPolicy.cs @@ -91,6 +91,20 @@ internal static extern AudioManagerError AddFocusStateWatchCallback(AudioStreamF [DllImport(Libraries.SoundManager, EntryPoint = "sound_manager_is_stream_on_device_by_id")] internal static extern AudioManagerError IsStreamOnDevice(AudioStreamPolicyHandle streamInfo, int deviceId, out bool isOn); + + [DllImport(Libraries.SoundManager, EntryPoint = "sound_manager_set_effect_method_with_reference_by_id")] + internal static extern AudioManagerError SetSoundEffectWithReference(AudioStreamPolicyHandle streamInfo, + SoundEffectWithReferenceNative effect, int deviceId); + + [DllImport(Libraries.SoundManager, EntryPoint = "sound_manager_get_effect_method_with_reference")] + internal static extern AudioManagerError GetSoundEffectWithReference(AudioStreamPolicyHandle streamInfo, + out SoundEffectWithReferenceNative effect, out int deviceId); + + [DllImport(Libraries.SoundManager, EntryPoint = "sound_manager_set_effect_method")] + internal static extern AudioManagerError SetSoundEffect(AudioStreamPolicyHandle streamInfo, int effect); + + [DllImport(Libraries.SoundManager, EntryPoint = "sound_manager_get_effect_method")] + internal static extern AudioManagerError GetSoundEffect(AudioStreamPolicyHandle streamInfo, out int effect); } } } \ No newline at end of file From 83f91c72f48887b92b8908d245b5579662c8658f Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Fri, 13 Sep 2024 12:45:26 +0900 Subject: [PATCH 092/198] [WebRTC] Add descrition and payload APIs (#6284) * [WebRTC] Add descrition and payload APIs --- .../Interop/Interop.WebRTC.cs | 13 ++++- .../WebRTC/MediaSource.cs | 52 ++++++++++++++++++ .../WebRTC/WebRTC.cs | 54 ++++++++++++++++++- 3 files changed, 116 insertions(+), 3 deletions(-) diff --git a/src/Tizen.Multimedia.Remoting/Interop/Interop.WebRTC.cs b/src/Tizen.Multimedia.Remoting/Interop/Interop.WebRTC.cs index 9b6e81607d0..a682accafa6 100755 --- a/src/Tizen.Multimedia.Remoting/Interop/Interop.WebRTC.cs +++ b/src/Tizen.Multimedia.Remoting/Interop/Interop.WebRTC.cs @@ -148,6 +148,12 @@ internal static extern WebRTCErrorCode ForeachSupportedTransceiverCodec(IntPtr h [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_media_source_get_transceiver_codec")] internal static extern WebRTCErrorCode GetTransceiverCodec(IntPtr handle, uint sourceId, MediaType type, out TransceiverCodec codec); + [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_media_source_set_payload_type")] + internal static extern WebRTCErrorCode SetPaylodType(IntPtr handle, uint sourceId, TransceiverCodec codec, uint payloadType); + + [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_media_source_get_payload_type")] + internal static extern WebRTCErrorCode GetPaylodType(IntPtr handle, uint sourceId, TransceiverCodec codec, out uint payloadType); + [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_media_source_set_pause")] internal static extern WebRTCErrorCode SetPause(IntPtr handle, uint sourceId, MediaType type, bool pause); @@ -256,9 +262,15 @@ internal static extern WebRTCErrorCode ForeachSupportedTransceiverCodec(IntPtr h [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_set_local_description")] internal static extern WebRTCErrorCode SetLocalDescription(IntPtr handle, string description); + [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_get_local_description")] + internal static extern WebRTCErrorCode GetLocalDescription(IntPtr handle, out IntPtr description); + [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_set_remote_description")] internal static extern WebRTCErrorCode SetRemoteDescription(IntPtr handle, string description); + [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_get_remote_description")] + internal static extern WebRTCErrorCode GetRemoteDescription(IntPtr handle, out IntPtr description); + [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_add_ice_candidate")] internal static extern WebRTCErrorCode AddIceCandidate(IntPtr handle, string candidate); @@ -268,7 +280,6 @@ internal static extern WebRTCErrorCode ForeachSupportedTransceiverCodec(IntPtr h [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_foreach_stats")] internal static extern WebRTCErrorCode ForeachStats(IntPtr handle, int typeMask, RetrieveStatsCallback callback, IntPtr userData = default); - [DllImport(Libraries.WebRTC, EntryPoint = "webrtc_set_error_cb")] internal static extern WebRTCErrorCode SetErrorOccurredCb(IntPtr handle, ErrorOccurredCallback callback, IntPtr userData = default); diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaSource.cs index 8798eb2b012..8be7c1f3c1a 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaSource.cs @@ -552,6 +552,58 @@ public int EncoderBitrate } } + /// + /// Sets the RTP payload type of given . + /// + /// + /// should be greater than or equal to 96 and less than or equal to 127. + /// + /// The transceiver codec. + /// The RTP payload type. + /// MediaSource is not attached yet. + /// The WebRTC has already been disposed. + /// + /// is less than 96 or greater than 127. + /// + /// + /// 12 + public void SetPayloadType(TransceiverCodec codec, uint payloadType) + { + if (!SourceId.HasValue) + { + throw new InvalidOperationException("MediaSource is not attached yet. Call AddSource() first."); + } + if (payloadType < 96 || payloadType > 127) + { + throw new ArgumentOutOfRangeException(nameof(payloadType), payloadType, "Valid range : 96 <= payloadType <= 127"); + } + + NativeWebRTC.SetPaylodType(WebRtc.Handle, SourceId.Value, codec, payloadType). + ThrowIfFailed("Failed to set payload type"); + } + + /// + /// Gets the RTP payload type of given . + /// + /// The transceiver codec. + /// The RTP payload type. + /// MediaSource is not attached yet. + /// The WebRTC has already been disposed. + /// + /// 12 + public uint GetPayloadType(TransceiverCodec codec) + { + if (!SourceId.HasValue) + { + throw new InvalidOperationException("MediaSource is not attached yet. Call AddSource() first."); + } + + NativeWebRTC.GetPaylodType(WebRtc.Handle, SourceId.Value, codec, out uint payloadType). + ThrowIfFailed("Failed to get payload type"); + + return payloadType; + } + /// /// Enables the audio loopback. The local audio will be played with . /// diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs index df993899ff7..0590d0f0faa 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs @@ -318,6 +318,7 @@ public async Task CreateAnswerAsync() /// The WebRTC has already been disposed. /// /// + /// /// 9 public void SetLocalDescription(string description) { @@ -325,7 +326,31 @@ public void SetLocalDescription(string description) ValidationUtil.ValidateIsNullOrEmpty(description, nameof(description)); - NativeWebRTC.SetLocalDescription(Handle, description).ThrowIfFailed("Failed to set description."); + NativeWebRTC.SetLocalDescription(Handle, description).ThrowIfFailed("Failed to set local description."); + } + + /// + /// Gets the session description for a local peer. + /// + /// The local session description string + /// The WebRTC has already been disposed. + /// + /// 12 + public string GetLocalDescription() + { + ValidateNotDisposed(); + + IntPtr description = IntPtr.Zero; + try + { + NativeWebRTC.GetLocalDescription(Handle, out description).ThrowIfFailed("Failed to get local description."); + + return Marshal.PtrToStringAnsi(description); + } + finally + { + Marshal.FreeHGlobal(description); + } } /// @@ -341,6 +366,7 @@ public void SetLocalDescription(string description) /// The WebRTC has already been disposed. /// /// + /// /// 9 public void SetRemoteDescription(string description) { @@ -348,7 +374,31 @@ public void SetRemoteDescription(string description) ValidationUtil.ValidateIsNullOrEmpty(description, nameof(description)); - NativeWebRTC.SetRemoteDescription(Handle, description).ThrowIfFailed("Failed to set description."); + NativeWebRTC.SetRemoteDescription(Handle, description).ThrowIfFailed("Failed to set remote description."); + } + + /// + /// Gets the session description of the remote peer's current offer or answer. + /// + /// The remote session description string + /// The WebRTC has already been disposed. + /// + /// 12 + public string GetRemoteDescription() + { + ValidateNotDisposed(); + + IntPtr description = IntPtr.Zero; + try + { + NativeWebRTC.GetRemoteDescription(Handle, out description).ThrowIfFailed("Failed to get remote description."); + + return Marshal.PtrToStringAnsi(description); + } + finally + { + Marshal.FreeHGlobal(description); + } } /// From 950228cc4313befa15560369327dbcb0e436bb7d Mon Sep 17 00:00:00 2001 From: Yunhee Seo Date: Thu, 12 Sep 2024 11:30:44 +0900 Subject: [PATCH 093/198] [System] Add handling code for internal APIs Power related EventArgs classes were used at internal APIs in Power.cs module. These classes and all properties(attributes) should be treated as internal API code. Thus, this patch is necessary. Signed-off-by: Yunhee Seo --- src/Tizen.System/Device/DeviceEventArgs.cs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/Tizen.System/Device/DeviceEventArgs.cs b/src/Tizen.System/Device/DeviceEventArgs.cs index 499cac421f7..6c08d3a504b 100644 --- a/src/Tizen.System/Device/DeviceEventArgs.cs +++ b/src/Tizen.System/Device/DeviceEventArgs.cs @@ -15,6 +15,7 @@ */ using System; +using System.ComponentModel; namespace Tizen.System { @@ -94,25 +95,30 @@ internal LedBrightnessChangedEventArgs() {} /// This class contains event arguments for the (PowerState)StateWaitCallback event from the Power class. /// /// 10 + [EditorBrowsable(EditorBrowsableState.Never)] public class PowerStateWaitEventArgs : EventArgs { internal PowerStateWaitEventArgs() {} /// /// PrevState indicates reason power state where transition has started /// + [EditorBrowsable(EditorBrowsableState.Never)] public PowerState PrevState { get; internal set; } /// /// NextState indicates power state to be changed by transition /// + [EditorBrowsable(EditorBrowsableState.Never)] public PowerState NextState { get; internal set; } /// /// WaitCallbackId indicates unique id for each callback invocation. /// It is used to confirm or cancel about subscribed callback. /// + [EditorBrowsable(EditorBrowsableState.Never)] public UInt64 WaitCallbackId { get; internal set; } /// /// TransitionReason indicates reason for what triggered the transition /// + [EditorBrowsable(EditorBrowsableState.Never)] public PowerTransitionReason TransitionReason { get; internal set; } } @@ -121,21 +127,25 @@ internal PowerStateWaitEventArgs() {} /// This class contains event arguments for the (PowerTransientState)StateWaitCallback event from the Power class. /// /// 10 + [EditorBrowsable(EditorBrowsableState.Never)] public class PowerTransientStateWaitEventArgs : EventArgs { internal PowerTransientStateWaitEventArgs() {} /// /// TransientState indicates transient state to be changed by the transition /// + [EditorBrowsable(EditorBrowsableState.Never)] public PowerTransientState TransientState { get; internal set; } /// /// WaitCallbackId indicates unique id for each callback invocation. /// It is used to confirm or cancel about subscribed callback. /// + [EditorBrowsable(EditorBrowsableState.Never)] public UInt64 WaitCallbackId { get; internal set; } /// /// TransitionReason indicates reason for what triggered the transition /// + [EditorBrowsable(EditorBrowsableState.Never)] public PowerTransitionReason TransitionReason { get; internal set; } } @@ -144,16 +154,19 @@ internal PowerTransientStateWaitEventArgs() {} /// This class contains event arguments for the (PowerLock)StateChangedCallback event from the Power class. ///
/// 10 + [EditorBrowsable(EditorBrowsableState.Never)] public class PowerLockStateChangedEventArgs : EventArgs { internal PowerLockStateChangedEventArgs() {} /// /// PowerLockType indicates Type of power lock /// + [EditorBrowsable(EditorBrowsableState.Never)] public PowerLock PowerLockType { get; internal set; } /// /// PowerLockState indicates locked or unlocked about power lock type. /// + [EditorBrowsable(EditorBrowsableState.Never)] public PowerLockState PowerLockState { get; internal set; } } @@ -162,17 +175,20 @@ internal PowerLockStateChangedEventArgs() {} /// This class contains event arguments for the (PowerState)StateChangeRequestCallback event from the Power class. /// /// 10 + [EditorBrowsable(EditorBrowsableState.Never)] public class PowerStateChangeRequestEventArgs : EventArgs { internal PowerStateChangeRequestEventArgs() {} /// /// PowerState indicates state to be changed that was requested. /// + [EditorBrowsable(EditorBrowsableState.Never)] public PowerState PowerState { get; internal set; } /// /// Retval indicates return of change state result from deviced. /// If Retval is negative, it means failure, 0 means success. /// + [EditorBrowsable(EditorBrowsableState.Never)] public int Retval { get; internal set; } } } From 9aa1bc4de58b197c1e223f1dac97c18f478434a5 Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Thu, 19 Sep 2024 11:26:21 +0900 Subject: [PATCH 094/198] [MediaVision] Add new inference APIs (#6316) * [MediaVision] Add new inference APIs --- .../Interop/Interop.Libraries.cs | 7 +- .../Interop/Interop.MediaVision.Inference.cs | 140 ++++++++++++ .../MediaVision/InferenceFaceDetector.cs | 208 ++++++++++++++++++ .../InferenceFaceDetectorResult.cs | 61 +++++ .../InferenceFacialLandmarkDetector.cs | 207 +++++++++++++++++ .../InferenceFacialLandmarkDetectorResult.cs | 61 +++++ .../MediaVision/InferenceImageClassifier.cs | 208 ++++++++++++++++++ .../InferenceImageClassifierResult.cs | 61 +++++ .../MediaVision/InferenceObjectDetector.cs | 208 ++++++++++++++++++ .../InferenceObjectDetectorResult.cs | 61 +++++ .../InferencePoseLandmarkDetector.cs | 208 ++++++++++++++++++ .../InferencePoseLandmarkDetectorResult.cs | 61 +++++ 12 files changed, 1490 insertions(+), 1 deletion(-) create mode 100644 src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetector.cs create mode 100755 src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetectorResult.cs create mode 100644 src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetector.cs create mode 100755 src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetectorResult.cs create mode 100644 src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifier.cs create mode 100755 src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifierResult.cs create mode 100644 src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetector.cs create mode 100755 src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetectorResult.cs create mode 100644 src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetector.cs create mode 100755 src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetectorResult.cs diff --git a/src/Tizen.Multimedia.Vision/Interop/Interop.Libraries.cs b/src/Tizen.Multimedia.Vision/Interop/Interop.Libraries.cs index 3a22309b08f..647eac18612 100644 --- a/src/Tizen.Multimedia.Vision/Interop/Interop.Libraries.cs +++ b/src/Tizen.Multimedia.Vision/Interop/Interop.Libraries.cs @@ -20,12 +20,17 @@ internal static partial class Libraries { public const string MediaVisionCommon = "libmv_common.so"; public const string MediaVisionFace = "libmv_face.so"; - public const string MediaVisionInference = "libmv_inference.so"; public const string MediaVisionImage = "libmv_image.so"; public const string MediaVisionSurveillance = "libmv_surveillance.so"; public const string MediaVisionBarcodeDetector = "libmv_barcode_detector.so"; public const string MediaVisionBarcodeGenerator = "libmv_barcode_generator.so"; public const string MediaVisionRoiTracker = "libmv_roi_tracker.so"; public const string MediaVisionFaceRecognition = "libmv_face_recognition.so"; // It's based on machine learning + public const string MediaVisionInference = "libmv_inference.so"; + public const string MediaVisionInferenceImageClassification = "libmv_image_classification.so"; // Inference image classification + public const string MediaVisionInferenceObjectDetection = "libmv_object_detection.so"; + public const string MediaVisionInferenceFaceDetection = MediaVisionInferenceObjectDetection; // Inference object detection and face detection + public const string MediaVisionInferenceFacialLandmarkDetection = "libmv_landmark_detection.so"; + public const string MediaVisionInferencePoseLandmarkDetection = "libmv_landmark_detection.so"; // Inference facial landmark detection and pose landmark detection } } diff --git a/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Inference.cs b/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Inference.cs index 2e5d9879231..dbd93354e86 100644 --- a/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Inference.cs +++ b/src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Inference.cs @@ -112,5 +112,145 @@ internal static extern MediaVisionError DetectFacialLandmark(IntPtr source, IntP internal static extern MediaVisionError DetectPoseLandmark(IntPtr source, IntPtr inference, IntPtr roi, PoseLandmarkDetectedCallback callback, IntPtr userData = default(IntPtr)); // Deprecated in API 12 } + + internal static partial class InferenceImageClassification + { + // Newly added inferernce APIs + [DllImport(Libraries.MediaVisionInferenceImageClassification, EntryPoint = "mv_image_classification_create")] + internal static extern MediaVisionError Create(out IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceImageClassification, EntryPoint = "mv_image_classification_destroy")] + internal static extern MediaVisionError Destroy(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceImageClassification, EntryPoint = "mv_image_classification_configure")] + internal static extern MediaVisionError Configure(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceImageClassification, EntryPoint = "mv_image_classification_prepare")] + internal static extern MediaVisionError Prepare(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceImageClassification, EntryPoint = "mv_image_classification_inference")] + internal static extern MediaVisionError Inference(IntPtr handle, IntPtr source); + + [DllImport(Libraries.MediaVisionInferenceImageClassification, EntryPoint = "mv_image_classification_inference_async")] + internal static extern MediaVisionError InferenceAsync(IntPtr handle, IntPtr source); + + [DllImport(Libraries.MediaVisionInferenceImageClassification, EntryPoint = "mv_image_classification_get_result_count")] + internal static extern MediaVisionError GetResultCount(IntPtr handle, out ulong requestOrder, out uint count); + + [DllImport(Libraries.MediaVisionInferenceImageClassification, EntryPoint = "mv_image_classification_get_label")] + internal static extern MediaVisionError GetLabels(IntPtr handle, uint index, out IntPtr label); + } + + internal static partial class InferenceFaceDetection + { + // Newly added inferernce APIs + [DllImport(Libraries.MediaVisionInferenceFaceDetection, EntryPoint = "mv_face_detection_create")] + internal static extern MediaVisionError Create(out IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceFaceDetection, EntryPoint = "mv_face_detection_destroy")] + internal static extern MediaVisionError Destroy(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceFaceDetection, EntryPoint = "mv_face_detection_configure")] + internal static extern MediaVisionError Configure(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceFaceDetection, EntryPoint = "mv_face_detection_prepare")] + internal static extern MediaVisionError Prepare(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceFaceDetection, EntryPoint = "mv_face_detection_inference")] + internal static extern MediaVisionError Inference(IntPtr handle, IntPtr source); + + [DllImport(Libraries.MediaVisionInferenceFaceDetection, EntryPoint = "mv_face_detection_inference_async")] + internal static extern MediaVisionError InferenceAsync(IntPtr handle, IntPtr source); + + [DllImport(Libraries.MediaVisionInferenceFaceDetection, EntryPoint = "mv_face_detection_get_result_count")] + internal static extern MediaVisionError GetResultCount(IntPtr handle, out ulong requestId, out uint count); + + [DllImport(Libraries.MediaVisionInferenceFaceDetection, EntryPoint = "mv_face_detection_get_bound_box")] + internal static extern MediaVisionError GetBoundingBoxes(IntPtr handle, uint index, out int left, out int top, out int right, out int bottom); + } + + internal static partial class InferenceObjectDetection + { + // Newly added inferernce APIs + [DllImport(Libraries.MediaVisionInferenceObjectDetection, EntryPoint = "mv_object_detection_create")] + internal static extern MediaVisionError Create(out IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceObjectDetection, EntryPoint = "mv_object_detection_destroy")] + internal static extern MediaVisionError Destroy(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceObjectDetection, EntryPoint = "mv_object_detection_configure")] + internal static extern MediaVisionError Configure(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceObjectDetection, EntryPoint = "mv_object_detection_prepare")] + internal static extern MediaVisionError Prepare(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceObjectDetection, EntryPoint = "mv_object_detection_inference")] + internal static extern MediaVisionError Inference(IntPtr handle, IntPtr source); + + [DllImport(Libraries.MediaVisionInferenceObjectDetection, EntryPoint = "mv_object_detection_inference_async")] + internal static extern MediaVisionError InferenceAsync(IntPtr handle, IntPtr source); + + [DllImport(Libraries.MediaVisionInferenceObjectDetection, EntryPoint = "mv_object_detection_get_result_count")] + internal static extern MediaVisionError GetResultCount(IntPtr handle, out ulong requestId, out uint count); + + [DllImport(Libraries.MediaVisionInferenceObjectDetection, EntryPoint = "mv_object_detection_get_bound_box")] + internal static extern MediaVisionError GetBoundingBoxes(IntPtr handle, uint index, out int left, out int top, out int right, out int bottom); + } + + internal static partial class InferenceFacialLandmarkDetection + { + // Newly added inferernce APIs + [DllImport(Libraries.MediaVisionInferenceFacialLandmarkDetection, EntryPoint = "mv_facial_landmark_create")] + internal static extern MediaVisionError Create(out IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceFacialLandmarkDetection, EntryPoint = "mv_facial_landmark_destroy")] + internal static extern MediaVisionError Destroy(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceFacialLandmarkDetection, EntryPoint = "mv_facial_landmark_configure")] + internal static extern MediaVisionError Configure(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceFacialLandmarkDetection, EntryPoint = "mv_facial_landmark_prepare")] + internal static extern MediaVisionError Prepare(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferenceFacialLandmarkDetection, EntryPoint = "mv_facial_landmark_inference")] + internal static extern MediaVisionError Inference(IntPtr handle, IntPtr source); + + [DllImport(Libraries.MediaVisionInferenceFacialLandmarkDetection, EntryPoint = "mv_facial_landmark_inference_async")] + internal static extern MediaVisionError InferenceAsync(IntPtr handle, IntPtr source); + + [DllImport(Libraries.MediaVisionInferenceFacialLandmarkDetection, EntryPoint = "mv_facial_landmark_get_result_count")] + internal static extern MediaVisionError GetResultCount(IntPtr handle, out ulong requestId, out uint count); + + [DllImport(Libraries.MediaVisionInferenceFacialLandmarkDetection, EntryPoint = "mv_facial_landmark_get_position")] + internal static extern MediaVisionError GetPoints(IntPtr handle, uint index, out uint posX, out uint posY); + } + + internal static partial class InferencePoseLandmarkDetection + { + // Newly added inferernce APIs + [DllImport(Libraries.MediaVisionInferencePoseLandmarkDetection, EntryPoint = "mv_pose_landmark_create")] + internal static extern MediaVisionError Create(out IntPtr handle); + + [DllImport(Libraries.MediaVisionInferencePoseLandmarkDetection, EntryPoint = "mv_pose_landmark_destroy")] + internal static extern MediaVisionError Destroy(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferencePoseLandmarkDetection, EntryPoint = "mv_pose_landmark_configure")] + internal static extern MediaVisionError Configure(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferencePoseLandmarkDetection, EntryPoint = "mv_pose_landmark_prepare")] + internal static extern MediaVisionError Prepare(IntPtr handle); + + [DllImport(Libraries.MediaVisionInferencePoseLandmarkDetection, EntryPoint = "mv_pose_landmark_inference")] + internal static extern MediaVisionError Inference(IntPtr handle, IntPtr source); + + [DllImport(Libraries.MediaVisionInferencePoseLandmarkDetection, EntryPoint = "mv_pose_landmark_inference_async")] + internal static extern MediaVisionError InferenceAsync(IntPtr handle, IntPtr source); + + [DllImport(Libraries.MediaVisionInferencePoseLandmarkDetection, EntryPoint = "mv_pose_landmark_get_result_count")] + internal static extern MediaVisionError GetResultCount(IntPtr handle, out ulong requestId, out uint count); + + [DllImport(Libraries.MediaVisionInferencePoseLandmarkDetection, EntryPoint = "mv_pose_landmark_get_position")] + internal static extern MediaVisionError GetPoints(IntPtr handle, uint index, out uint posX, out uint posY); + } } } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetector.cs new file mode 100644 index 00000000000..a5fede9d8c8 --- /dev/null +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetector.cs @@ -0,0 +1,208 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Threading; +using System.Threading.Tasks; +using InteropFD = Interop.MediaVision.InferenceFaceDetection; + +namespace Tizen.Multimedia.Vision +{ + /// + /// Provides the ability to detect faces. + /// + /// http://tizen.org/feature/vision.inference + /// http://tizen.org/feature/vision.inference.face + /// 12 + public class InferenceFaceDetector : IDisposable + { + private IntPtr _handle; + private bool _disposed; + + /// Initializes a new instance of the class. + /// The required features are not supported. + /// 12 + public InferenceFaceDetector() + { + ValidationUtil.ValidateFeatureSupported(VisionFeatures.Inference); + ValidationUtil.ValidateFeatureSupported(VisionFeatures.InferenceFace); + + InteropFD.Create(out _handle).Validate("Failed to create inference face detector."); + + try + { + InteropFD.Configure(_handle).Validate("Failed to configure inference face detector."); + InteropFD.Prepare(_handle).Validate("Failed to prepare inference face detector."); + } + catch (Exception e) + { + Log.Error(MediaVisionLog.Tag, e.ToString()); + InteropFD.Destroy(_handle); + throw; + } + } + + /// + /// Finalizes an instance of the InferenceFaceDetector class. + /// + ~InferenceFaceDetector() + { + Dispose(false); + } + + /// + /// Detects faces on the source image synchronously. + /// + /// + /// can be empty, if there's no detected face. + /// + /// The image data to detect faces. + /// The BoundingBoxes of detected face. + /// The InferenceFaceDetector already has been disposed. + /// is null. + /// 12 + public InferenceFaceDetectorResult Inference(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropFD.Inference(_handle, source.Handle).Validate("Failed to inference face detection."); + + return new InferenceFaceDetectorResult(_handle); + } + + /// + /// Detects faces on the source image asynchronously. + /// + /// + /// can be empty, if there's no detected face.
+ /// This method uses about twice as much memory as . + ///
+ /// The image data to detect faces. + /// The InferenceFaceDetector already has been disposed. + /// is null. + /// 12 + public async Task InferenceAsync(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropFD.InferenceAsync(_handle, source.Handle).Validate("Failed to inference face detection."); + + return await Task.Factory.StartNew(() => new InferenceFaceDetectorResult(_handle), + CancellationToken.None, + TaskCreationOptions.DenyChildAttach | TaskCreationOptions.LongRunning, + TaskScheduler.Default); + } + + private ulong _requestId = 1; + /// + /// Requests detecting faces to get their bounding boxes asynchronously. + /// + /// + /// This function does not guarantee that inference is done when this method returns. The user can get the result by using .
+ /// If the user calls this method again before the previous one is finished internally, the call will be ignored.
+ /// can be empty, if there's no detected face.
+ /// Note that this method could use about twice as much memory as . + ///
+ /// The image data to detect faces. + /// The request ID that indicates the order of requests. + /// The InferenceFaceDetector already has been disposed. + /// is null. + /// + /// 12 + public ulong RequestInference(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropFD.InferenceAsync(_handle, source.Handle).Validate("Failed to inference face detection."); + + return _requestId++; + } + + /// + /// Gets the bounding boxes as a result of . + /// + /// + /// If there's no detected face, will be empty.
+ /// This method uses about twice as much memory as . + ///
+ /// The bounding boxes of detected face. + /// The InferenceFaceDetector already has been disposed. + /// + /// 12 + public InferenceFaceDetectorResult GetRequestResults() + { + return new InferenceFaceDetectorResult(_handle); + } + + /// + /// Releases the unmanaged resources used by the InferenceFaceDetector. + /// + /// true to release both managed and unmanaged resources; false to release only unmanaged resources. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + // to be used if there are any other disposable objects + } + + if (_handle != IntPtr.Zero) + { + InteropFD.Destroy(_handle); + _handle = IntPtr.Zero; + } + + _disposed = true; + } + } + + /// + /// Releases all resources used by the InferenceFaceDetector. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + internal void ValidateNotDisposed() + { + if (_disposed) + { + Log.Error(MediaVisionLog.Tag, "InferenceFaceDetector handle is disposed."); + throw new ObjectDisposedException(nameof(InferenceFaceDetector)); + } + } + } +} \ No newline at end of file diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetectorResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetectorResult.cs new file mode 100755 index 00000000000..7050d37226c --- /dev/null +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetectorResult.cs @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Collections.Generic; +using InteropFD = Interop.MediaVision.InferenceFaceDetection; + +namespace Tizen.Multimedia.Vision +{ + /// + /// Represents the result of operations. + /// + /// 12 + public class InferenceFaceDetectorResult + { + internal InferenceFaceDetectorResult(IntPtr handle) + { + InteropFD.GetResultCount(handle, out ulong requestId, out uint count). + Validate("Failed to get result count."); + + RequestId = requestId; + var boundingBoxes = new List(); + + for (uint i = 0 ; i < count ; i++) + { + InteropFD.GetBoundingBoxes(handle, i, out int left, out int top, out int right, out int bottom). + Validate("Failed to get bounding boxes."); + boundingBoxes.Add(new Rectangle(left, top, right - left, bottom - top)); + } + + BoundingBoxes = boundingBoxes; + } + + /// + /// Gets the request ID which is matched with request ID of RequestInference() return value.
+ /// It represents the order of request. + ///
+ /// The request ID that indicates the order of request. + /// 12 + public ulong RequestId { get; } + + /// + /// Gets the bounding boxes of the detected face. + /// + /// 12 + public IEnumerable BoundingBoxes { get; } + } +} diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetector.cs new file mode 100644 index 00000000000..a963a62199b --- /dev/null +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetector.cs @@ -0,0 +1,207 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Threading; +using System.Threading.Tasks; +using InteropFLD = Interop.MediaVision.InferenceFacialLandmarkDetection; + +namespace Tizen.Multimedia.Vision +{ + /// + /// Provides the ability to detect facial landmarks. + /// + /// http://tizen.org/feature/vision.inference + /// http://tizen.org/feature/vision.inference.face + /// 12 + public class InferenceFacialLandmarkDetector : IDisposable + { + private IntPtr _handle; + private bool _disposed; + + /// Initializes a new instance of the class. + /// The required features are not supported. + /// 12 + public InferenceFacialLandmarkDetector() + { + ValidationUtil.ValidateFeatureSupported(VisionFeatures.Inference); + ValidationUtil.ValidateFeatureSupported(VisionFeatures.InferenceFace); + + InteropFLD.Create(out _handle).Validate("Failed to create inference facial landmark detector."); + + try + { + InteropFLD.Configure(_handle).Validate("Failed to configure inference facial landmark detector."); + InteropFLD.Prepare(_handle).Validate("Failed to prepare inference facial landmark detector."); + } + catch (Exception e) + { + Log.Error(MediaVisionLog.Tag, e.ToString()); + InteropFLD.Destroy(_handle); + throw; + } + } + + /// + /// Finalizes an instance of the InferenceFacialLandmarkDetector class. + /// + ~InferenceFacialLandmarkDetector() + { + Dispose(false); + } + + /// + /// Detects facial landmarks on the source image synchronously. + /// + /// + /// can be empty, if there's no detected facial landmark. + /// + /// The image data to detect facial landmarks. + /// The coordinates of detected facial landmarks. + /// The InferenceFacialLandmarkDetector already has been disposed. + /// is null. + /// 12 + public InferenceFacialLandmarkDetectorResult Inference(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropFLD.Inference(_handle, source.Handle).Validate("Failed to inference facial landmark detection."); + + return new InferenceFacialLandmarkDetectorResult(_handle); + } + + /// + /// Detects facial landmarks on the source image asynchronously. + /// + /// + /// can be empty, if there's no detected facial landmark.
+ /// This method uses about twice as much memory as . + ///
+ /// The image data to detect facial landmarks. + /// The InferenceFacialLandmarkDetector already has been disposed. + /// is null. + /// 12 + public async Task InferenceAsync(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropFLD.InferenceAsync(_handle, source.Handle).Validate("Failed to inference facial landmark detection."); + + return await Task.Factory.StartNew(() => new InferenceFacialLandmarkDetectorResult(_handle), + CancellationToken.None, + TaskCreationOptions.DenyChildAttach | TaskCreationOptions.LongRunning, + TaskScheduler.Default); + } + + private ulong _requestId = 1; + /// + /// Requests detecting facial landmarks to get their points asynchronously. + /// + /// + /// This function does not guarantee that inference is done when this method returns. The user can get the result by using .
+ /// If the user calls this method again before the previous one is finished internally, the call will be ignored.
+ /// can be empty, if there's no detected facial landmark.
+ /// Note that this method could use about twice as much memory as . + ///
+ /// The image data to detect facial landmarks. + /// The request ID that indicates the order of requests. + /// The InferenceFacialLandmarkDetector already has been disposed. + /// is null. + /// + /// 12 + public ulong RequestInference(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropFLD.InferenceAsync(_handle, source.Handle).Validate("Failed to inference facial landmark detection."); + return _requestId++; + } + + /// + /// Gets the points as a result of . + /// + /// + /// If there's no detected facial landmark, will be empty.
+ /// This method uses about twice as much memory as . + ///
+ /// The points of detected facial landmarks. + /// The InferenceFacialLandmarkDetector already has been disposed. + /// + /// 12 + public InferenceFacialLandmarkDetectorResult GetRequestResults() + { + return new InferenceFacialLandmarkDetectorResult(_handle); + } + + /// + /// Releases the unmanaged resources used by the InferenceFacialLandmarkDetector. + /// + /// true to release both managed and unmanaged resources; false to release only unmanaged resources. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + // to be used if there are any other disposable objects + } + + if (_handle != IntPtr.Zero) + { + InteropFLD.Destroy(_handle); + _handle = IntPtr.Zero; + } + + _disposed = true; + } + } + + /// + /// Releases all resources used by the InferenceFacialLandmarkDetector. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + internal void ValidateNotDisposed() + { + if (_disposed) + { + Log.Error(MediaVisionLog.Tag, "InferenceFacialLandmarkDetector handle is disposed."); + throw new ObjectDisposedException(nameof(InferenceFacialLandmarkDetector)); + } + } + } +} \ No newline at end of file diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetectorResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetectorResult.cs new file mode 100755 index 00000000000..67b7b752ac8 --- /dev/null +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetectorResult.cs @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Collections.Generic; +using InteropFLD = Interop.MediaVision.InferenceFacialLandmarkDetection; + + +namespace Tizen.Multimedia.Vision +{ + /// + /// Represents the result of operations. + /// + /// 12 + public class InferenceFacialLandmarkDetectorResult + { + internal InferenceFacialLandmarkDetectorResult(IntPtr handle) + { + InteropFLD.GetResultCount(handle, out ulong requestId, out uint count). + Validate("Failed to get result count."); + + RequestId = requestId; + var points = new List(); + + for (uint i = 0 ; i < count ; i++) + { + InteropFLD.GetPoints(handle, i, out uint x, out uint y).Validate("Failed to get points."); + points.Add(new Point((int)x, (int)y)); + } + + Points = points; + } + + /// + /// Gets the request ID which is matched with request ID of RequestInference() return value.
+ /// It represents the order of request. + ///
+ /// The request ID that indicates the order of request. + /// 12 + public ulong RequestId { get; } + + /// + /// Gets The coordinates of detected facial landmarks. + /// + /// 12 + public IEnumerable Points { get; } + } +} diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifier.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifier.cs new file mode 100644 index 00000000000..57b7db8dceb --- /dev/null +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifier.cs @@ -0,0 +1,208 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Threading; +using System.Threading.Tasks; +using InteropIC = Interop.MediaVision.InferenceImageClassification; + +namespace Tizen.Multimedia.Vision +{ + /// + /// Provides the ability to classify image. + /// + /// http://tizen.org/feature/vision.inference + /// http://tizen.org/feature/vision.inference.image + /// 12 + public class InferenceImageClassifier : IDisposable + { + private IntPtr _handle; + private bool _disposed; + + /// Initializes a new instance of the class. + /// The required features are not supported. + /// 12 + public InferenceImageClassifier() + { + ValidationUtil.ValidateFeatureSupported(VisionFeatures.Inference); + ValidationUtil.ValidateFeatureSupported(VisionFeatures.InferenceImage); + + InteropIC.Create(out _handle).Validate("Failed to create inference image classifier."); + + try + { + InteropIC.Configure(_handle).Validate("Failed to configure inference image classifier."); + InteropIC.Prepare(_handle).Validate("Failed to prepare inference image classifier."); + } + catch (Exception e) + { + Log.Error(MediaVisionLog.Tag, e.ToString()); + InteropIC.Destroy(_handle); + throw; + } + } + + /// + /// Finalizes an instance of the InferenceImageClassifier class. + /// + ~InferenceImageClassifier() + { + Dispose(false); + } + + /// + /// Classifies image synchronously. + /// + /// + /// can be empty, if image is not classified. + /// + /// The image data to classify. + /// The labels of classified image. + /// The InferenceImageClassifier already has been disposed. + /// is null. + /// 12 + public InferenceImageClassifierResult Inference(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropIC.Inference(_handle, source.Handle).Validate("Failed to inference image classification"); + + return new InferenceImageClassifierResult(_handle); + } + + /// + /// Classifies image asynchronously. + /// + /// + /// can be empty, if image is not classified.
+ /// This method uses about twice as much memory as . + ///
+ /// The image data to classify. + /// The InferenceImageClassifier already has been disposed. + /// is null. + /// 12 + public async Task InferenceAsync(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropIC.InferenceAsync(_handle, source.Handle).Validate("Failed to inference image classification"); + + return await Task.Factory.StartNew(() => new InferenceImageClassifierResult(_handle), + CancellationToken.None, + TaskCreationOptions.DenyChildAttach | TaskCreationOptions.LongRunning, + TaskScheduler.Default); + } + + private ulong _requestId = 1; + /// + /// Requests classifing image to get its labels asynchronously. + /// + /// + /// This function does not guarantee that inference is done when this method returns. The user can get the result by using .
+ /// If the user calls this method again before the previous one is finished internally, the call will be ignored.
+ /// can be empty, if image is not classified.
+ /// Note that this method could use about twice as much memory as . + ///
+ /// The image data to classify. + /// The request ID that indicates the order of requests. + /// The InferenceImageClassifier already has been disposed. + /// is null. + /// + /// 12 + public ulong RequestInference(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropIC.InferenceAsync(_handle, source.Handle).Validate("Failed to inference image classification."); + + return _requestId++; + } + + /// + /// Gets the labels as a result of . + /// + /// + /// If image is not classified, will be empty.
+ /// This method uses about twice as much memory as . + ///
+ /// The labels of classified image. + /// The InferenceImageClassifier already has been disposed. + /// + /// 12 + public InferenceImageClassifierResult GetRequestResults() + { + return new InferenceImageClassifierResult(_handle); + } + + /// + /// Releases the unmanaged resources used by the InferenceImageClassifier. + /// + /// true to release both managed and unmanaged resources; false to release only unmanaged resources. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + // to be used if there are any other disposable objects + } + + if (_handle != IntPtr.Zero) + { + InteropIC.Destroy(_handle); + _handle = IntPtr.Zero; + } + + _disposed = true; + } + } + + /// + /// Releases all resources used by the InferenceImageClassifier. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + internal void ValidateNotDisposed() + { + if (_disposed) + { + Log.Error(MediaVisionLog.Tag, "InferenceImageClassifier handle is disposed."); + throw new ObjectDisposedException(nameof(InferenceImageClassifier)); + } + } + } +} \ No newline at end of file diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifierResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifierResult.cs new file mode 100755 index 00000000000..70b59184c68 --- /dev/null +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifierResult.cs @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Collections.Generic; +using System.Runtime.InteropServices; +using InteropIC = Interop.MediaVision.InferenceImageClassification; + +namespace Tizen.Multimedia.Vision +{ + /// + /// Represents the result of operations. + /// + /// 12 + public class InferenceImageClassifierResult + { + internal InferenceImageClassifierResult(IntPtr handle) + { + InteropIC.GetResultCount(handle, out ulong requestId, out uint count). + Validate("Failed to get result count."); + + RequestId = requestId; + var labels = new List(); + + for (uint i = 0 ; i < count ; i++) + { + InteropIC.GetLabels(handle, i, out IntPtr label).Validate("Failed to get labels."); + labels.Add(Marshal.PtrToStringAnsi(label)); + } + + Labels = labels; + } + + /// + /// Gets the request ID which is matched with request ID of RequestInference() return value.
+ /// It represents the order of request. + ///
+ /// The request ID that indicates the order of request. + /// 12 + public ulong RequestId { get; } + + /// + /// Gets the labels of the classified image. + /// + /// 12 + public IEnumerable Labels { get; } + } +} diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetector.cs new file mode 100644 index 00000000000..3945e79a657 --- /dev/null +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetector.cs @@ -0,0 +1,208 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Threading; +using System.Threading.Tasks; +using InteropOD = Interop.MediaVision.InferenceObjectDetection; + +namespace Tizen.Multimedia.Vision +{ + /// + /// Provides the ability to detect object. + /// + /// http://tizen.org/feature/vision.inference + /// http://tizen.org/feature/vision.inference.image + /// 12 + public class InferenceObjectDetector : IDisposable + { + private IntPtr _handle; + private bool _disposed; + + /// Initializes a new instance of the class. + /// The required features are not supported. + /// 12 + public InferenceObjectDetector() + { + ValidationUtil.ValidateFeatureSupported(VisionFeatures.Inference); + ValidationUtil.ValidateFeatureSupported(VisionFeatures.InferenceImage); + + InteropOD.Create(out _handle).Validate("Failed to create inference object detector."); + + try + { + InteropOD.Configure(_handle).Validate("Failed to configure inference object detector."); + InteropOD.Prepare(_handle).Validate("Failed to prepare inference object detector."); + } + catch (Exception e) + { + Log.Error(MediaVisionLog.Tag, e.ToString()); + InteropOD.Destroy(_handle); + throw; + } + } + + /// + /// Finalizes an instance of the InferenceObjectDetector class. + /// + ~InferenceObjectDetector() + { + Dispose(false); + } + + /// + /// Detects objects on the source image synchronously. + /// + /// + /// can be empty, if there's no detected object. + /// + /// The image data to detect object. + /// BoundingBoxes of detected object. + /// The InferenceObjectDetector already has been disposed. + /// is null. + /// 12 + public InferenceObjectDetectorResult Inference(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropOD.Inference(_handle, source.Handle).Validate("Failed to inference object detection."); + + return new InferenceObjectDetectorResult(_handle); + } + + /// + /// Detects objects on the source image asynchronously. + /// + /// + /// can be empty, if there's no detected object.
+ /// This method uses about twice as much memory as . + ///
+ /// The image data to detect object. + /// The InferenceObjectDetector already has been disposed. + /// is null. + /// 12 + public async Task InferenceAsync(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropOD.InferenceAsync(_handle, source.Handle).Validate("Failed to inference object detection."); + + return await Task.Factory.StartNew(() => new InferenceObjectDetectorResult(_handle), + CancellationToken.None, + TaskCreationOptions.DenyChildAttach | TaskCreationOptions.LongRunning, + TaskScheduler.Default); + } + + private ulong _requestId = 1; + /// + /// Requests detecting objects to get their bounding boxes asynchronously. + /// + /// + /// This function does not guarantee that inference is done when this method returns. The user can get the result by using .
+ /// If the user calls this method again before the previous one is finished internally, the call will be ignored.
+ /// can be empty, if there's no detected object.
+ /// Note that this method could use about twice as much memory as . + ///
+ /// The image data to detect object. + /// The request ID that indicates the order of requests. + /// The InferenceObjectDetector already has been disposed. + /// is null. + /// + /// 12 + public ulong RequestInference(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropOD.InferenceAsync(_handle, source.Handle).Validate("Failed to inference object detection."); + + return _requestId++; + } + + /// + /// Gets the bounding boxes as a result of . + /// + /// + /// If there's no detected object, will be empty.
+ /// This method uses about twice as much memory as . + ///
+ /// The bounding boxes of detected object. + /// The InferenceObjectDetector already has been disposed. + /// + /// 12 + public InferenceObjectDetectorResult GetRequestResults() + { + return new InferenceObjectDetectorResult(_handle); + } + + /// + /// Releases the unmanaged resources used by the InferenceObjectDetector. + /// + /// true to release both managed and unmanaged resources; false to release only unmanaged resources. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + // to be used if there are any other disposable objects + } + + if (_handle != IntPtr.Zero) + { + InteropOD.Destroy(_handle); + _handle = IntPtr.Zero; + } + + _disposed = true; + } + } + + /// + /// Releases all resources used by the InferenceObjectDetector. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + internal void ValidateNotDisposed() + { + if (_disposed) + { + Log.Error(MediaVisionLog.Tag, "InferenceObjectDetector handle is disposed."); + throw new ObjectDisposedException(nameof(InferenceObjectDetector)); + } + } + } +} \ No newline at end of file diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetectorResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetectorResult.cs new file mode 100755 index 00000000000..090031aa46a --- /dev/null +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetectorResult.cs @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Collections.Generic; +using InteropOD = Interop.MediaVision.InferenceObjectDetection; + +namespace Tizen.Multimedia.Vision +{ + /// + /// Represents the result of operations. + /// + /// 12 + public class InferenceObjectDetectorResult + { + internal InferenceObjectDetectorResult(IntPtr handle) + { + InteropOD.GetResultCount(handle, out ulong requestId, out uint count). + Validate("Failed to get result count."); + + RequestId = requestId; + var boundingBoxes = new List(); + + for (uint i = 0 ; i < count ; i++) + { + InteropOD.GetBoundingBoxes(handle, i, out int left, out int top, out int right, out int bottom). + Validate("Failed to get bounding boxes."); + boundingBoxes.Add(new Rectangle(left, top, right - left, bottom - top)); + } + + BoundingBoxes = boundingBoxes; + } + + /// + /// Gets the request ID which is matched with request ID of RequestInference() return value.
+ /// It represents the order of request. + ///
+ /// The request ID that indicates the order of request. + /// 12 + public ulong RequestId { get; } + + /// + /// Gets the bounding boxes of the detected object. + /// + /// 12 + public IEnumerable BoundingBoxes { get; } + } +} diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetector.cs new file mode 100644 index 00000000000..a16a3f67474 --- /dev/null +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetector.cs @@ -0,0 +1,208 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Threading; +using System.Threading.Tasks; +using InteropPLD = Interop.MediaVision.InferencePoseLandmarkDetection; + +namespace Tizen.Multimedia.Vision +{ + /// + /// Provides the ability to detect pose landmark. + /// + /// http://tizen.org/feature/vision.inference + /// http://tizen.org/feature/vision.inference.face + /// 12 + public class InferencePoseLandmarkDetector : IDisposable + { + private IntPtr _handle; + private bool _disposed; + + /// Initializes a new instance of the class. + /// The required features are not supported. + /// 12 + public InferencePoseLandmarkDetector() + { + ValidationUtil.ValidateFeatureSupported(VisionFeatures.Inference); + ValidationUtil.ValidateFeatureSupported(VisionFeatures.InferenceFace); + + InteropPLD.Create(out _handle).Validate("Failed to create inference pose landmark detector."); + + try + { + InteropPLD.Configure(_handle).Validate("Failed to configure inference pose landmark detector."); + InteropPLD.Prepare(_handle).Validate("Failed to prepare inference pose landmark detector."); + } + catch (Exception e) + { + Log.Error(MediaVisionLog.Tag, e.ToString()); + InteropPLD.Destroy(_handle); + throw; + } + } + + /// + /// Finalizes an instance of the InferencePoseLandmarkDetector class. + /// + ~InferencePoseLandmarkDetector() + { + Dispose(false); + } + + /// + /// Detects pose landmarks on the source image synchronously. + /// + /// + /// can be empty, if there's no detected pose landmark. + /// + /// The image data to detect pose landmark. + /// The coordinates of detected pose landmarks. + /// The InferencePoseLandmarkDetector already has been disposed. + /// is null. + /// 12 + public InferencePoseLandmarkDetectorResult Inference(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropPLD.Inference(_handle, source.Handle).Validate("Failed to inference pose landmark detection."); + + return new InferencePoseLandmarkDetectorResult(_handle); + } + + /// + /// Detects pose landmarks on the source image asynchronously. + /// + /// + /// can be empty, if there's no detected pose landmark.
+ /// This method uses about twice as much memory as . + ///
+ /// The image data to detect pose landmark. + /// The InferencePoseLandmarkDetector already has been disposed. + /// is null. + /// 12 + public async Task InferenceAsync(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropPLD.InferenceAsync(_handle, source.Handle).Validate("Failed to inference pose landmark detection."); + + return await Task.Factory.StartNew(() => new InferencePoseLandmarkDetectorResult(_handle), + CancellationToken.None, + TaskCreationOptions.DenyChildAttach | TaskCreationOptions.LongRunning, + TaskScheduler.Default); + } + + private ulong _requestId = 1; + /// + /// Requests detecting pose landmarks to get their points asynchronously. + /// + /// + /// This function does not guarantee that inference is done when this method returns. The user can get the result by using .
+ /// If the user calls this method again before the previous one is finished internally, the call will be ignored.
+ /// can be empty, if there's no detected pose landmark.
+ /// Note that this method could use about twice as much memory as . + ///
+ /// The image data to detect pose landmark. + /// The request ID that indicates the order of requests. + /// The InferencePoseLandmarkDetector already has been disposed. + /// is null. + /// + /// 12 + public ulong RequestInference(MediaVisionSource source) + { + ValidateNotDisposed(); + + if (source == null) + { + throw new ArgumentNullException(nameof(source)); + } + + InteropPLD.InferenceAsync(_handle, source.Handle).Validate("Failed to inference pose landmark detection."); + + return _requestId++; + } + + /// + /// Gets the points as a result of . + /// + /// + /// If there's no detected pose landmark, will be empty.
+ /// This method uses about twice as much memory as . + ///
+ /// The points of detected pose landmark. + /// The InferencePoseLandmarkDetector already has been disposed. + /// + /// 12 + public InferencePoseLandmarkDetectorResult GetRequestResults() + { + return new InferencePoseLandmarkDetectorResult(_handle); + } + + /// + /// Releases the unmanaged resources used by the InferencePoseLandmarkDetector. + /// + /// true to release both managed and unmanaged resources; false to release only unmanaged resources. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + // to be used if there are any other disposable objects + } + + if (_handle != IntPtr.Zero) + { + InteropPLD.Destroy(_handle); + _handle = IntPtr.Zero; + } + + _disposed = true; + } + } + + /// + /// Releases all resources used by the InferencePoseLandmarkDetector. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + internal void ValidateNotDisposed() + { + if (_disposed) + { + Log.Error(MediaVisionLog.Tag, "InferencePoseLandmarkDetector handle is disposed."); + throw new ObjectDisposedException(nameof(InferencePoseLandmarkDetector)); + } + } + } +} \ No newline at end of file diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetectorResult.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetectorResult.cs new file mode 100755 index 00000000000..d7c9c16d713 --- /dev/null +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetectorResult.cs @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Collections.Generic; +using InteropPLD = Interop.MediaVision.InferencePoseLandmarkDetection; + + +namespace Tizen.Multimedia.Vision +{ + /// + /// Represents the result of operations. + /// + /// 12 + public class InferencePoseLandmarkDetectorResult + { + internal InferencePoseLandmarkDetectorResult(IntPtr handle) + { + InteropPLD.GetResultCount(handle, out ulong requestId, out uint count). + Validate("Failed to get result count."); + + RequestId = requestId; + var points = new List(); + + for (uint i = 0 ; i < count ; i++) + { + InteropPLD.GetPoints(handle, i, out uint x, out uint y).Validate("Failed to get points."); + points.Add(new Point((int)x, (int)y)); + } + + Points = points; + } + + /// + /// Gets the request ID which is matched with request ID of RequestInference() return value.
+ /// It represents the order of request. + ///
+ /// The request ID that indicates the order of request. + /// 12 + public ulong RequestId { get; } + + /// + /// Gets the coordinates of detected pose landmarks. + /// + /// 12 + public IEnumerable Points { get; } + } +} From 00244d7d5dda9a550ba14c215b57e75d30c04d91 Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Thu, 19 Sep 2024 12:17:14 +0900 Subject: [PATCH 095/198] [MediaVision] Check instance is disposed (#6331) --- .../MediaVision/InferenceFaceDetector.cs | 2 ++ .../MediaVision/InferenceFacialLandmarkDetector.cs | 2 ++ .../MediaVision/InferenceImageClassifier.cs | 2 ++ .../MediaVision/InferenceObjectDetector.cs | 2 ++ .../MediaVision/InferencePoseLandmarkDetector.cs | 2 ++ 5 files changed, 10 insertions(+) diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetector.cs index a5fede9d8c8..5d423c9ce1d 100644 --- a/src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetector.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFaceDetector.cs @@ -159,6 +159,8 @@ public ulong RequestInference(MediaVisionSource source) /// 12 public InferenceFaceDetectorResult GetRequestResults() { + ValidateNotDisposed(); + return new InferenceFaceDetectorResult(_handle); } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetector.cs index a963a62199b..31c34e05a9b 100644 --- a/src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetector.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceFacialLandmarkDetector.cs @@ -158,6 +158,8 @@ public ulong RequestInference(MediaVisionSource source) /// 12 public InferenceFacialLandmarkDetectorResult GetRequestResults() { + ValidateNotDisposed(); + return new InferenceFacialLandmarkDetectorResult(_handle); } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifier.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifier.cs index 57b7db8dceb..95e5b516e29 100644 --- a/src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifier.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceImageClassifier.cs @@ -159,6 +159,8 @@ public ulong RequestInference(MediaVisionSource source) /// 12 public InferenceImageClassifierResult GetRequestResults() { + ValidateNotDisposed(); + return new InferenceImageClassifierResult(_handle); } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetector.cs index 3945e79a657..ee41d7c0ac4 100644 --- a/src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetector.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferenceObjectDetector.cs @@ -159,6 +159,8 @@ public ulong RequestInference(MediaVisionSource source) /// 12 public InferenceObjectDetectorResult GetRequestResults() { + ValidateNotDisposed(); + return new InferenceObjectDetectorResult(_handle); } diff --git a/src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetector.cs b/src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetector.cs index a16a3f67474..73fc5fbb44a 100644 --- a/src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetector.cs +++ b/src/Tizen.Multimedia.Vision/MediaVision/InferencePoseLandmarkDetector.cs @@ -159,6 +159,8 @@ public ulong RequestInference(MediaVisionSource source) /// 12 public InferencePoseLandmarkDetectorResult GetRequestResults() { + ValidateNotDisposed(); + return new InferencePoseLandmarkDetectorResult(_handle); } From 99a968c3c69f5d3a3848bd87cf2092f07c9465d7 Mon Sep 17 00:00:00 2001 From: hjhun <36876573+hjhun@users.noreply.github.com> Date: Thu, 19 Sep 2024 13:03:04 +0900 Subject: [PATCH 096/198] [Tizen.Core] Add new API for providing a new main loop model (#6296) * [Tizen.Core] Add new Tizen.Core library Signed-off-by: Hwankyu Jhun * Remove example code from TCoreTask.Running property Signed-off-by: Hwankyu Jhun * Update descriptions Signed-off-by: Hwankyu Jhun * Save unsaved code Signed-off-by: Hwankyu Jhun * Update markdown file Signed-off-by: Hwankyu Jhun * Update descriptions Signed-off-by: Hwankyu Jhun --------- Signed-off-by: Hwankyu Jhun --- src/Tizen.Core/Interop/Interop.Libraries.cs | 23 + src/Tizen.Core/Interop/Interop.TizenCore.cs | 331 ++++++++ src/Tizen.Core/Tizen.Core.csproj | 12 + src/Tizen.Core/Tizen.Core.sln | 37 + src/Tizen.Core/Tizen.Core/Channel.cs | 105 +++ src/Tizen.Core/Tizen.Core/ChannelObject.cs | 174 +++++ .../Tizen.Core/ChannelReceivedEventArgs.cs | 57 ++ src/Tizen.Core/Tizen.Core/ChannelReceiver.cs | 133 ++++ src/Tizen.Core/Tizen.Core/ChannelSender.cs | 134 ++++ src/Tizen.Core/Tizen.Core/Event.cs | 173 +++++ src/Tizen.Core/Tizen.Core/EventObject.cs | 148 ++++ .../Tizen.Core/EventReceivedEventArgs.cs | 50 ++ src/Tizen.Core/Tizen.Core/Log.cs | 45 ++ src/Tizen.Core/Tizen.Core/Task.cs | 717 ++++++++++++++++++ src/Tizen.Core/Tizen.Core/TizenCore.cs | 168 ++++ src/Tizen.Core/doc/api/Tizen.Core.md | 177 +++++ 16 files changed, 2484 insertions(+) create mode 100644 src/Tizen.Core/Interop/Interop.Libraries.cs create mode 100644 src/Tizen.Core/Interop/Interop.TizenCore.cs create mode 100644 src/Tizen.Core/Tizen.Core.csproj create mode 100644 src/Tizen.Core/Tizen.Core.sln create mode 100644 src/Tizen.Core/Tizen.Core/Channel.cs create mode 100644 src/Tizen.Core/Tizen.Core/ChannelObject.cs create mode 100644 src/Tizen.Core/Tizen.Core/ChannelReceivedEventArgs.cs create mode 100644 src/Tizen.Core/Tizen.Core/ChannelReceiver.cs create mode 100644 src/Tizen.Core/Tizen.Core/ChannelSender.cs create mode 100644 src/Tizen.Core/Tizen.Core/Event.cs create mode 100644 src/Tizen.Core/Tizen.Core/EventObject.cs create mode 100644 src/Tizen.Core/Tizen.Core/EventReceivedEventArgs.cs create mode 100644 src/Tizen.Core/Tizen.Core/Log.cs create mode 100644 src/Tizen.Core/Tizen.Core/Task.cs create mode 100644 src/Tizen.Core/Tizen.Core/TizenCore.cs create mode 100644 src/Tizen.Core/doc/api/Tizen.Core.md diff --git a/src/Tizen.Core/Interop/Interop.Libraries.cs b/src/Tizen.Core/Interop/Interop.Libraries.cs new file mode 100644 index 00000000000..1280560ce0c --- /dev/null +++ b/src/Tizen.Core/Interop/Interop.Libraries.cs @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +internal static partial class Interop +{ + internal static partial class Libraries + { + public const string TizenCore = "libtizen-core.so.0"; + } +} diff --git a/src/Tizen.Core/Interop/Interop.TizenCore.cs b/src/Tizen.Core/Interop/Interop.TizenCore.cs new file mode 100644 index 00000000000..b3eace0361a --- /dev/null +++ b/src/Tizen.Core/Interop/Interop.TizenCore.cs @@ -0,0 +1,331 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Runtime.InteropServices; + +using Tizen; +using Tizen.Internals.Errors; + +internal static partial class Interop +{ + internal static partial class LibTizenCore + { + internal enum ErrorCode + { + None = Tizen.Internals.Errors.ErrorCode.None, + InvalidParameter = Tizen.Internals.Errors.ErrorCode.InvalidParameter, + OutOfMemory = Tizen.Internals.Errors.ErrorCode.OutOfMemory, + InvalidContext = -0x01100000 | 0x01, + } + + internal enum Priority + { + High = -100, + Default = 0, + HighIdle = 100, + DefaultIdle = 200, + Low = 300, + } + + internal enum PollEvent + { + In = 0x0001, + Pri = 0x0002, + Out = 0x0004, + Err = 0x0008, + Hup = 0x0010, + Nval = 0x0020, + } + + internal static partial class TizenCore + { + // typedef void (*tizen_core_channel_receive_cb)(tizen_core_channel_object_h object, void *user_data); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate void ChannelReceiveCallback(IntPtr channelObject, IntPtr userData); + + // typedef bool (*tizen_core_task_cb)(void *user_data); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate bool TaskCallback(IntPtr userData); + + // typedef bool (*tizen_core_source_prepare_cb)(tizen_core_source_h source, int *timeout, void *user_data); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate bool SourcePrepareCallback(IntPtr source, out int timeout, IntPtr userData); + + // typedef bool (*tizen_core_source_check_cb)(tizen_core_source_h source, void *user_data); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate bool SourceCheckCallback(IntPtr source, IntPtr userData); + + // typedef bool (*tizen_core_source_dispatch_cb)(tizen_core_source_h source, void *user_data); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate bool SourceDispatchCallback(IntPtr source, IntPtr userData); + + // typedef void (*tizen_core_source_finalize_cb)(tizen_core_source_h source, void *user_data); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate void SourceFinalizeCallback(IntPtr source, IntPtr userData); + + // void tizen_core_init(void); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_init")] + internal static extern void Init(); + + // void tizen_core_shutdown(void); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_shutdown")] + internal static extern void Shutdown(); + + // bool tizen_core_ready(void); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_ready")] + internal static extern bool Ready(); + + // int tizen_core_task_create(const char *name, bool use_thread, tizen_core_task_h task); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_task_create")] + internal static extern ErrorCode TaskCreate(string name, bool useThread, out IntPtr handle); + + // int tizen_core_task_destroy(tizen_core_task_h task); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_task_create")] + internal static extern ErrorCode TaskDestroy(IntPtr handle); + + // int tizen_core_task_run(tizen_core_task_h task); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_task_run")] + internal static extern ErrorCode TaskRun(IntPtr handle); + + // int tizen_core_task_is_running(tizen_core_task_h task, bool *running); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_task_is_running")] + internal static extern ErrorCode TaskIsRunning(IntPtr handle, out bool running); + + // int tizen_core_task_quit(tizen_core_task_h task); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_task_quit")] + internal static extern ErrorCode TaskQuit(IntPtr handle); + + // int tizen_core_task_get_tizen_core(tizen_core_task_h task, tizen_core_h *core); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_task_get_tizen_core")] + internal static extern ErrorCode TaskGetTizenCore(IntPtr handle, out IntPtr coreHandle); + + // int tizen_core_find(const char *name, tizen_core_h *core); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_find")] + internal static extern ErrorCode Find(string name, out IntPtr handle); + + // int tizen_core_find_from_this_thread(tizen_core_h *core); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_find_from_this_thread")] + internal static extern ErrorCode FindFromThisThread(out IntPtr handle); + + // int tizen_core_add_idle_job(tizen_core_h core, tizen_core_task_cb callback, void *user_data, tizen_core_source_h *source); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_add_idle_job")] + internal static extern ErrorCode AddIdleJob(IntPtr handle, TaskCallback callback, IntPtr userData, out IntPtr source); + + // int tizen_core_add_timer(tizen_core_h core, unsigned int interval, tizen_core_task_cb callback, void *user_data, tizen_core_source_h *source); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_add_timer")] + internal static extern ErrorCode AddTimer(IntPtr handle, uint interval, TaskCallback callback, IntPtr userData, out IntPtr source); + + // int tizen_core_add_channel(tizen_core_h core, tizen_core_channel_receiver_h receiver, tizen_core_channel_receive_cb callback, void *user_data, tizen_core_source_h *source); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_add_channel")] + internal static extern ErrorCode AddChannel(IntPtr handle, IntPtr channel, ChannelReceiveCallback callback, IntPtr userData, out IntPtr source); + + // int tizen_core_add_event(tizen_core_h core, tizen_core_event_h event, tizen_core_source_h *source); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_add_event")] + internal static extern ErrorCode AddEvent(IntPtr handle, IntPtr eventHandle, out IntPtr source); + + // int tizen_core_emit_event(tizen_core_h core, tizen_core_event_object_h object); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_emit_event")] + internal static extern ErrorCode EmitEvent(IntPtr handle, IntPtr eventObject); + + // int tizen_core_add_source(tizen_core_h core, tizen_core_source_h source); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_add_source")] + internal static extern ErrorCode AddSource(IntPtr handle, IntPtr source); + + // int tizen_core_remove_source(tizen_core_h core, tizen_core_source_h source); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_remove_source")] + internal static extern ErrorCode RemoveSource(IntPtr handle, IntPtr source); + + // int tizen_core_source_create(tizen_core_source_h *source); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_source_create")] + internal static extern ErrorCode SourceCreate(out IntPtr source); + + // int tizen_core_source_destroy(tizen_core_source_h source); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_source_destroy")] + internal static extern ErrorCode SourceDestroy(IntPtr source); + + // int tizen_core_source_add_poll(tizen_core_source_h source, tizen_core_poll_fd_h poll_fd); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_source_add_poll")] + internal static extern ErrorCode SourceAddPoll(IntPtr source, IntPtr pollFd); + + // int tizen_core_source_remove_poll(tizen_core_source_h source, tizen_core_poll_fd_h poll_fd); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_source_remove_poll")] + internal static extern ErrorCode SourceRemovePoll(IntPtr source, IntPtr pollFd); + + // int tizen_core_source_set_prepare_cb(tizen_core_source_h source, tizen_core_source_prepare_cb callback, void *user_data); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_source_set_prepare_cb")] + internal static extern ErrorCode SourceSetPrepareCallback(IntPtr source, SourcePrepareCallback callback, IntPtr userData); + + // int tizen_core_source_set_check_cb(tizen_core_source_h source, tizen_core_source_check_cb callback, void *user_data); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_source_set_check_cb")] + internal static extern ErrorCode SourceSetCheckCallback(IntPtr source, SourceCheckCallback callback, IntPtr userData); + + // int tizen_core_source_set_dispatch_cb(tizen_core_source_h source, tizen_core_source_dispatch_cb callback, void *user_data); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_source_set_dispatch_cb")] + internal static extern ErrorCode SourceSetDispatchCallback(IntPtr source, SourceDispatchCallback callback, IntPtr userData); + + // int tizen_core_source_set_finalize_cb(tizen_core_source_h source, tizen_core_source_finalize_cb callback, void *user_data); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_source_set_finalize_cb")] + internal static extern ErrorCode SourceSetFinalizeCallback(IntPtr source, SourceFinalizeCallback callback, IntPtr userData); + + // int tizen_core_source_set_priority(tizen_core_source_h source, tizen_core_priority_e priority); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_source_set_priority")] + internal static extern ErrorCode SourceSetPriority(IntPtr source, int priority); + + // int tizen_core_poll_fd_create(tizen_core_poll_fd_h *poll_fd); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_poll_fd_create")] + internal static extern ErrorCode PollFdCreate(out IntPtr handle); + + // int tizen_core_poll_fd_destroy(tizen_core_poll_fd_h poll_fd); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_poll_fd_destroy")] + internal static extern ErrorCode PollFdDestroy(IntPtr handle); + + // int tizen_core_poll_fd_set_fd(tizen_core_poll_fd_h poll_fd, int fd); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_poll_fd_set_fd")] + internal static extern ErrorCode PollFdSetFd(IntPtr handle, int fd); + + // int tizen_core_poll_fd_get_fd(tizen_core_poll_fd_h poll_fd, int *fd); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_poll_fd_get_fd")] + internal static extern ErrorCode PollFdGetFd(IntPtr handle, out int fd); + + // int tizen_core_poll_fd_set_events(tizen_core_poll_fd_h poll_fd, uint16_t events); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_poll_fd_set_events")] + internal static extern ErrorCode PollFdSetEvents(IntPtr handle, UInt16 events); + + // int tizen_core_poll_fd_get_events(tizen_core_poll_fd_h poll_fd, uint16_t *events); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_poll_fd_get_events")] + internal static extern ErrorCode PollFdGetEvents(IntPtr handle, out UInt16 events); + + // int tizen_core_poll_fd_set_returned_events(tizen_core_poll_fd_h poll_fd, uint16_t returned_events); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_poll_fd_set_returned_events")] + internal static extern ErrorCode PollFdSetReturnedEvents(IntPtr handle, UInt16 returnedEvents); + + // int tizen_core_poll_fd_get_events(tizen_core_poll_fd_h poll_fd, uint16_t *returned_events); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_poll_fd_get_returned_events")] + internal static extern ErrorCode PollFdGetReturnedEvents(IntPtr handle, out UInt16 returnedEvents); + } + + internal static partial class TizenCoreChannel + { + // int tizen_core_channel_make_pair(tizen_core_channel_sender_h *sender, tizen_core_channel_receiver_h *receiver); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_make_pair")] + internal static extern ErrorCode MakePair(out IntPtr sender, out IntPtr receiver); + + // int tizen_core_channel_sender_send(tizen_core_channel_sender_h sender, tizen_core_channel_object_h object); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_sender_send")] + internal static extern ErrorCode SenderSend(IntPtr sender, IntPtr channelObject); + + // int tizen_core_channel_sender_destroy(tizen_core_channel_sender_h sender); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_sender_destroy")] + internal static extern ErrorCode SenderDestroy(IntPtr sender); + + // int tizen_core_channel_sender_clone(tizen_core_channel_sender_h sender, tizen_core_channel_sender_h *cloned_sender); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_sender_clone")] + internal static extern ErrorCode SenderClone(IntPtr sender, out IntPtr clonedHandle); + + // int tizen_core_channel_receiver_receive(tizen_core_channel_receiver_h receiver, tizen_core_channel_object_h *object); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_receiver_receive")] + internal static extern ErrorCode ReceiverReceive(IntPtr receiver, out IntPtr channelObject); + + // int tizen_core_channel_receiver_destroy(tizen_core_channel_receiver_h receiver); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_receiver_destroy")] + internal static extern ErrorCode ReceiverDestroy(IntPtr receiver); + + // int tizen_core_channel_object_create(tizen_core_channel_object_h *object); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_object_create")] + internal static extern ErrorCode ObjectCreate(out IntPtr handle); + + // int tizen_core_channel_object_destroy(tizen_core_channel_object_h object); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_object_destroy")] + internal static extern ErrorCode ObjectDestroy(IntPtr handle); + + // int tizen_core_channel_object_set_id(tizen_core_channel_object_h object, int id); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_object_set_id")] + internal static extern ErrorCode ObjectSetId(IntPtr handle, int id); + + // int tizen_core_channel_object_get_id(tizen_core_channel_object_h object, int *id); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_object_get_id")] + internal static extern ErrorCode ObjectGetId(IntPtr handle, out int id); + + // int tizen_core_channel_object_set_data(tizen_core_channel_object_h object, void *data); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_object_set_data")] + internal static extern ErrorCode ObjectSetData(IntPtr handle, IntPtr data); + + // int tizen_core_channel_object_get_data(tizen_core_channel_object_h object, void **data); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_object_get_data")] + internal static extern ErrorCode ObjectGetData(IntPtr handle, out IntPtr data); + + // int tizen_core_channel_object_get_sender_task_name(tizen_core_channel_object_h object, const char **task_name); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_channel_object_get_sender_task_name")] + internal static extern ErrorCode ObjectGetSenderTaskName(IntPtr handle, out IntPtr taskName); + } + + internal static partial class TizenCoreEvent + { + // typedef bool (*tizen_core_event_handler_cb)(tizen_core_event_object_h object, void *user_data); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate bool EventHandlerCallback(IntPtr eventObject, IntPtr userData); + + // typedef void (*tizen_core_event_object_destroy_cb)(void *event_data, void *user_data); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate void EventObjectDestroyCallback(IntPtr eventData, IntPtr userData); + + // int tizen_core_event_create(tizen_core_event_h *event); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_create")] + internal static extern ErrorCode Create(out IntPtr handle); + + // int tizen_core_event_destroy(tizen_core_event_h event); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_destroy")] + internal static extern ErrorCode Destroy(IntPtr handle); + + // int tizen_core_event_add_handler(tizen_core_event_h event, tizen_core_event_handler_cb handler, void *user_data, tizen_core_event_handler_h *event_handler); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_add_handler")] + internal static extern ErrorCode AddHandler(IntPtr handle, EventHandlerCallback callback, IntPtr userData, out IntPtr eventHandler); + + // int tizen_core_event_prepend_handler(tizen_core_event_h event, tizen_core_event_handler_cb handler, void *user_data, tizen_core_event_handler_h *event_handler); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_prepend_handler")] + internal static extern ErrorCode PrependHandler(IntPtr handle, EventHandlerCallback callback, IntPtr userData, out IntPtr eventHandler); + + // int tizen_core_event_remove_handler(tizen_core_event_h event, tizen_core_event_handler_h event_handler); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_remove_handler")] + internal static extern ErrorCode RemoveHandler(IntPtr handle, IntPtr eventHandler); + + // int tizen_core_event_emit(tizen_core_event_h event, tizen_core_event_object_h object); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_emit")] + internal static extern ErrorCode Emit(IntPtr handle, IntPtr eventObject); + + // int tizen_core_event_object_create(tizen_core_event_object_h *object, int id, void *data); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_object_create")] + internal static extern ErrorCode ObjectCreate(out IntPtr handle, int id, IntPtr data); + + // int tizen_core_event_object_destroy(tizen_core_event_object_h object); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_object_destroy")] + internal static extern ErrorCode ObjectDestroy(IntPtr handle); + + // int tizen_core_event_object_set_destroy_cb(tizen_core_event_object_h object, tizen_core_event_object_destroy_cb callback, void *user_data); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_object_set_destroy_cb")] + internal static extern ErrorCode ObjectSetDestroyCallback(IntPtr handle, EventObjectDestroyCallback callback, IntPtr userData); + + // int tizen_core_event_object_get_id(tizen_core_event_object_h object, int *id); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_object_get_id")] + internal static extern ErrorCode ObjectGetId(IntPtr handle, out int id); + + // int tizen_core_event_object_get_data(tizen_core_event_object_h object, void *data); + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_event_object_get_data")] + internal static extern ErrorCode ObjectGetData(IntPtr handle, out IntPtr data); + } + } +} diff --git a/src/Tizen.Core/Tizen.Core.csproj b/src/Tizen.Core/Tizen.Core.csproj new file mode 100644 index 00000000000..37f8af30eec --- /dev/null +++ b/src/Tizen.Core/Tizen.Core.csproj @@ -0,0 +1,12 @@ + + + + net6.0 + + + + + + + + diff --git a/src/Tizen.Core/Tizen.Core.sln b/src/Tizen.Core/Tizen.Core.sln new file mode 100644 index 00000000000..7dd607db6ab --- /dev/null +++ b/src/Tizen.Core/Tizen.Core.sln @@ -0,0 +1,37 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.0.31903.59 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tizen.Core", "Tizen.Core.csproj", "{1BA08908-7B2B-42D1-A124-092CB177BF4C}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen", "..\Tizen\Tizen.csproj", "{2E04FB0F-03F4-40B0-BB25-5ADFB08C8DF3}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.Log", "..\Tizen.Log\Tizen.Log.csproj", "{8DA5B43B-63E9-460C-B64F-0B691539DC5D}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {1BA08908-7B2B-42D1-A124-092CB177BF4C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1BA08908-7B2B-42D1-A124-092CB177BF4C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1BA08908-7B2B-42D1-A124-092CB177BF4C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1BA08908-7B2B-42D1-A124-092CB177BF4C}.Release|Any CPU.Build.0 = Release|Any CPU + {2E04FB0F-03F4-40B0-BB25-5ADFB08C8DF3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2E04FB0F-03F4-40B0-BB25-5ADFB08C8DF3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2E04FB0F-03F4-40B0-BB25-5ADFB08C8DF3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2E04FB0F-03F4-40B0-BB25-5ADFB08C8DF3}.Release|Any CPU.Build.0 = Release|Any CPU + {8DA5B43B-63E9-460C-B64F-0B691539DC5D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8DA5B43B-63E9-460C-B64F-0B691539DC5D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8DA5B43B-63E9-460C-B64F-0B691539DC5D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8DA5B43B-63E9-460C-B64F-0B691539DC5D}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {E9B5E719-0EB7-430C-97DC-3FE2E50EE668} + EndGlobalSection +EndGlobal \ No newline at end of file diff --git a/src/Tizen.Core/Tizen.Core/Channel.cs b/src/Tizen.Core/Tizen.Core/Channel.cs new file mode 100644 index 00000000000..402710595c5 --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/Channel.cs @@ -0,0 +1,105 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; + +namespace Tizen.Core +{ + /// + /// The class for managing communication channels between tasks of Tizen Core. + /// + /// 12 + public class Channel : IDisposable + { + private bool _disposed = false; + + /// + /// Constructor for creating a new channel with a sender and a receiver. + /// + /// Thrown when out of memory. + /// + /// + /// + /// try + /// { + /// var channel = new Channel(); + /// } + /// catch (OutOfMemoryException) + /// { + /// Console.WriteLine("Exception occurs"); + /// } + /// + /// + /// + /// 12 + public Channel() + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreChannel.MakePair(out IntPtr sender, out IntPtr receiver); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to make a channel pair"); + Sender = new ChannelSender(sender); + Receiver = new ChannelReceiver(receiver); + } + + /// + /// Finalizer of the class Channel. + /// + ~Channel() + { + Dispose(false); + } + + /// + /// Gets the channel sender instance. + /// + /// 12 + public ChannelSender Sender { get; private set; } + + /// + /// Gets the channel receiver instance. + /// + /// 12 + public ChannelReceiver Receiver { get; private set; } + + /// + /// Release any unmanaged resources used by this object. + /// + /// If true, disposes any disposable objects. If false, does not dispose disposable objects. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + Sender.Dispose(); + Receiver.Dispose(); + } + + _disposed = true; + } + } + + /// + /// Release any unmanaged resources used by this object. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + } +} diff --git a/src/Tizen.Core/Tizen.Core/ChannelObject.cs b/src/Tizen.Core/Tizen.Core/ChannelObject.cs new file mode 100644 index 00000000000..64a35b975af --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/ChannelObject.cs @@ -0,0 +1,174 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Collections.Concurrent; +using System.Runtime.InteropServices; + +namespace Tizen.Core +{ + /// + /// Represents a channel object used for inter-task communication. + /// + /// 12 + public class ChannelObject : IDisposable + { + private IntPtr _handle = IntPtr.Zero; + private bool _disposed = false; + private static readonly ConcurrentDictionary _dataMap = new ConcurrentDictionary(); + private static readonly object _dataLock = new object(); + private static int _dataId = 0; + + /// + /// Constructor for creating a new channel object with specified ID and data. + /// + /// The ID. + /// The data object. + /// Thrown when out of memory. + /// + /// + /// + /// int id = 0; + /// string message = "Test message"; + /// var channelObject = new ChannelObject(id++, message); + /// + /// + /// + /// 12 + public ChannelObject(int id, object data) + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreChannel.ObjectCreate(out _handle); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to create channel object"); + Id = id; + Data = data; + IsUsed = false; + } + + internal ChannelObject(IntPtr handle) + { + _handle = handle; + IsUsed = false; + } + + /// + /// Finalizer of the class ChannelObject. + /// + ~ChannelObject() + { + Dispose(false); + } + + /// + /// Gets and sets the ID. + /// + /// 12 + public int Id + { + get + { + Interop.LibTizenCore.TizenCoreChannel.ObjectGetId(_handle, out int id); + return id; + } + set + { + Interop.LibTizenCore.TizenCoreChannel.ObjectSetId(_handle, value); + } + } + + /// + /// Gets and sets the data object. + /// + /// 12 + public object Data + { + get + { + Interop.LibTizenCore.TizenCoreChannel.ObjectGetData(_handle, out IntPtr handle); + int id = (int)handle; + if (_dataMap.TryGetValue(id, out var data)) + { + return data; + } + return null; + } + set + { + int id; + lock (_dataLock) + { + id = _dataId++; + } + _dataMap[id] = value; + Interop.LibTizenCore.TizenCoreChannel.ObjectSetData(_handle, (IntPtr)id); + } + } + + /// + /// Gets the name of the sender task. + /// + /// 12 + public string Sender { + get + { + Interop.LibTizenCore.TizenCoreChannel.ObjectGetSenderTaskName(_handle, out IntPtr taskName); + return Marshal.PtrToStringAnsi(taskName); + } + } + + internal bool IsUsed { set; get; } + + internal IntPtr Handle { get { return _handle; } } + + /// + /// Release any unmanaged resources used by this object. + /// + /// If true, disposes any disposable objects. If false, does not dispose disposable objects. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + if (_handle != IntPtr.Zero) + { + if (!IsUsed) + { + Interop.LibTizenCore.TizenCoreChannel.ObjectGetData(_handle, out IntPtr handle); + int id = (int)handle; + _dataMap.TryRemove(id, out var data); + } + + Interop.LibTizenCore.TizenCoreChannel.ObjectDestroy(_handle); + _handle = IntPtr.Zero; + } + } + + _disposed = true; + } + } + + /// + /// Release any unmanaged resources used by this object. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + } +} diff --git a/src/Tizen.Core/Tizen.Core/ChannelReceivedEventArgs.cs b/src/Tizen.Core/Tizen.Core/ChannelReceivedEventArgs.cs new file mode 100644 index 00000000000..4c5fdf13eb4 --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/ChannelReceivedEventArgs.cs @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; + +namespace Tizen.Core +{ + /// + /// Arguments for the event raised when an object has been received through a channel. + /// + /// 12 + public class ChannelReceivedEventArgs : System.EventArgs + { + internal ChannelReceivedEventArgs(ChannelObject channelObject) + { + if (channelObject == null) + { + throw new ArgumentNullException(nameof(channelObject)); + } + + Id = channelObject.Id; + Data = channelObject.Data; + Sender = channelObject.Sender; + } + + /// + /// Gets the ID of the received object. + /// + /// 12 + public int Id { get; private set; } + + /// + /// Gets the Data of the received object. + /// + /// 12 + public object Data { get; private set; } + + /// + /// Gets the name of the sender task of the received object. + /// + /// 12 + public string Sender { get; private set; } + } +} \ No newline at end of file diff --git a/src/Tizen.Core/Tizen.Core/ChannelReceiver.cs b/src/Tizen.Core/Tizen.Core/ChannelReceiver.cs new file mode 100644 index 00000000000..c8169954131 --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/ChannelReceiver.cs @@ -0,0 +1,133 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Threading.Tasks; + +namespace Tizen.Core +{ + /// + /// Represents the channel receiver used for inter-task communication. + /// + /// 12 + public class ChannelReceiver : IDisposable + { + private bool _disposed = false; + + internal ChannelReceiver(IntPtr handle) + { + Handle = handle; + Source = IntPtr.Zero; + Id = 0; + } + + /// + /// Finalizer of the class ChannelReceiver. + /// + ~ChannelReceiver() + { + Dispose(false); + } + + /// + /// Occurrs whenever the channel object is received in the main loop of the task. + /// + /// + /// The registered event handler will be invoked when the channel receiver is added to the specific task. + /// + /// + /// + /// + /// var channel = new Channel(); + /// var receiver = channel.Receiver; + /// receiver.Received += (s, e) => { + /// Console.WriteLine("OnChannelObjectReceived. Message = {}", (string)e.Data); + /// }; + /// + /// + /// + /// 12 + public event EventHandler Received; + + /// + /// Receives the channel object from the sender asynchronously. + /// + /// The received channel object. + /// + /// + /// + /// var channel = new Channel(); + /// var task = TizenCore.Find("Test"); + /// task.Send(async () => { + /// var channelObject = await channel.Receiver.Receive(); + /// Console.WriteLine("Message = {}", (string)channelObject.Data); + /// }); + /// + /// + /// + /// 12 + public async Task Receive() + { + return await System.Threading.Tasks.Task.Run(() => + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreChannel.ReceiverReceive(Handle, out IntPtr channelObject); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to receive channel object"); + return new ChannelObject(channelObject); + }).ConfigureAwait(false); + } + + internal IntPtr Handle { get; set; } + internal IntPtr Source { get; set; } + internal int Id { get; set; } + + internal void InvokeEventHandler(object sender, ChannelReceivedEventArgs e) + { + Received?.Invoke(sender, e); + } + + /// + /// Release any unmanaged resources used by this object. + /// + /// If true, disposes any disposable objects. If false, does not dispose disposable objects. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + if (Handle != IntPtr.Zero) + { + Interop.LibTizenCore.TizenCoreChannel.ReceiverDestroy(Handle); + Handle = IntPtr.Zero; + } + } + + _disposed = true; + } + } + + /// + /// Release any unmanaged resources used by this object. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + } +} diff --git a/src/Tizen.Core/Tizen.Core/ChannelSender.cs b/src/Tizen.Core/Tizen.Core/ChannelSender.cs new file mode 100644 index 00000000000..45be966a802 --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/ChannelSender.cs @@ -0,0 +1,134 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; + +namespace Tizen.Core +{ + /// + /// Represents the channel sender used for inter-task communication. + /// + /// 12 + public class ChannelSender : IDisposable + { + private bool _disposed = false; + + internal ChannelSender(IntPtr handle) + { + Handle = handle; + } + + /// + /// Finalizer of the class ChannelSender. + /// + ~ChannelSender() + { + Dispose(false); + } + + /// + /// Sends the channel object to the receiver. + /// + /// The channel object instance. + /// Thrown when the argument is null. + /// + /// It's important to call the Dispose() method on the passed channel object to release resources. + /// + /// + /// + /// + /// var channel = new Channel(); + /// var sender = channel.Sender; + /// string message = "Test"; + /// using (var channelObject = new ChannelObject(1, message)) + /// { + /// sender.Send(channelObject); + /// } + /// + /// + /// + /// 12 + public void Send(ChannelObject channelObject) + { + if (channelObject == null) + { + throw new ArgumentNullException(nameof(channelObject)); + } + + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreChannel.SenderSend(Handle, channelObject.Handle); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to send channel object"); + channelObject.IsUsed = true; + } + + /// + /// Creates and returns a copy of the channel sender object. + /// + /// A newly created channel sender instance. + /// Thrown when the argument is invalid. + /// Thrown when out of memory. + /// + /// + /// + /// var channel = new Channel(); + /// var sender = channel.Sender; + /// var clonedSender = sender.Clone(); + /// + /// + /// + /// 12 + public ChannelSender Clone() + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreChannel.SenderClone(Handle, out IntPtr clonedHandle); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to clone channel sender"); + + return new ChannelSender(clonedHandle); + } + + internal IntPtr Handle { get; private set; } + + /// + /// Release any unmanaged resources used by this object. + /// + /// If true, disposes any disposable objects. If false, does not dispose disposable objects. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + if (Handle != IntPtr.Zero) + { + Interop.LibTizenCore.TizenCoreChannel.SenderDestroy(Handle); + Handle = IntPtr.Zero; + } + } + + _disposed = true; + } + } + + /// + /// Release any unmanaged resources used by this object. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + } +} diff --git a/src/Tizen.Core/Tizen.Core/Event.cs b/src/Tizen.Core/Tizen.Core/Event.cs new file mode 100644 index 00000000000..d9fc25b184b --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/Event.cs @@ -0,0 +1,173 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; + +namespace Tizen.Core +{ + /// + /// Represents the event using for broadcasting events. + /// + /// 12 +#pragma warning disable CA1716 + public class Event : IDisposable +#pragma warning restore CA1716 + { + private IntPtr _handle = IntPtr.Zero; + private bool _disposed = false; + private Interop.LibTizenCore.TizenCoreEvent.EventHandlerCallback _callback = null; + + /// + /// Constructor for creating a new event instance. + /// + /// Thrown when out of memory. + /// + /// + /// + /// var coreEvent = new Event(); + /// + /// + /// + /// 12 + public Event() + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreEvent.Create(out _handle); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to create event"); + + _callback = new Interop.LibTizenCore.TizenCoreEvent.EventHandlerCallback(EventHandlerCallback); + error = Interop.LibTizenCore.TizenCoreEvent.AddHandler(_handle, _callback, IntPtr.Zero, out IntPtr _); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to add event handler"); + + Source = IntPtr.Zero; + Id = 0; + } + + /// + /// Finalizer of the class Event. + /// + ~Event() + { + Dispose(false); + } + + private bool EventHandlerCallback(IntPtr eventData, IntPtr userData) + { + using (var eventObject = new EventObject(eventData)) + { + EventReceived?.Invoke(this, new EventReceivedEventArgs(eventObject)); + } + return true; + } + + /// + /// Occurrs whenever the event is received in the main loop of the task. + /// + /// + /// The registered event handler will be invoked when the event is added to the specific task. + /// + /// + /// + /// + /// var coreEvent = new Event(); + /// coreEvent.EventReceived += (s, e) => { + /// Console.WriteLine("OnEventReceived. Message = {}", (string)e.Data); + /// }; + /// + /// + /// + /// 12 + public event EventHandler EventReceived; + + /// + /// Emits an event object to the event. + /// The emitted event object is queued and delivered to the registered EventHandlers on the main loop of the task. + /// + /// The event object instance. + /// Thrown when the argument is null. + /// + /// If the event is not added to the task, the emitted event object will be pended until the event is added to the task. + /// + /// + /// + /// + /// var coreEvent = new Event(); + /// coreEvent.EventReceived += (s, e) => { + /// Console.WriteLine("OnEventReceived. Message = {}", (string)e.Data); + /// }; + /// + /// var task = TizenCore.Find("EventTask"); + /// if (task != null) + /// { + /// task.AddEvent(coreEvent); + /// string message = "Test Event"; + /// using (var eventObject = new EventObject(1, message)) + /// { + /// coreEvent.Emit(eventObject); + /// } + /// } + /// + /// + /// + /// 12 + public void Emit(EventObject eventObject) + { + if (eventObject == null) + { + throw new ArgumentNullException(nameof(eventObject)); + } + + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreEvent.Emit(_handle, eventObject.Handle); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to emit event object"); + eventObject.Handle = IntPtr.Zero; + } + + internal IntPtr Handle { get { return _handle; } set { _handle = value; } } + internal IntPtr Source { get; set; } + internal int Id { get; set; } + + /// + /// Release any unmanaged resources used by this object. + /// + /// If true, disposes any disposable objects. If false, does not dispose disposable objects. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + if (_handle != IntPtr.Zero) + { + Interop.LibTizenCore.TizenCoreEvent.Destroy(_handle); + _handle = IntPtr.Zero; + } + } + + _disposed = true; + } + } + + /// + /// Release any unmanaged resources used by this object. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + } +} diff --git a/src/Tizen.Core/Tizen.Core/EventObject.cs b/src/Tizen.Core/Tizen.Core/EventObject.cs new file mode 100644 index 00000000000..804a7e08a30 --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/EventObject.cs @@ -0,0 +1,148 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Collections.Concurrent; + +namespace Tizen.Core +{ + /// + /// Represents an event object used for broadcasting the event. + /// + /// 12 + public class EventObject : IDisposable + { + private IntPtr _handle = IntPtr.Zero; + private bool _disposed = false; + private static readonly ConcurrentDictionary _dataMap = new ConcurrentDictionary(); + private static readonly object _dataLock = new object(); + private static int _dataId = 0; + private static Interop.LibTizenCore.TizenCoreEvent.EventObjectDestroyCallback _destroyCallback = new Interop.LibTizenCore.TizenCoreEvent.EventObjectDestroyCallback(NativeObjectDestroyCallback); + + /// + /// Constructor for creating a new event object with specified ID and data. + /// + /// The ID. + /// The data object. + /// Thrown when out of memory. + /// + /// + /// + /// int id = 0; + /// string message = "Test event"; + /// var eventObject = new EventObject(id++, message); + /// + /// + /// + /// 12 + public EventObject(int id, object data) + { + int dataId; + lock (_dataLock) + { + dataId = _dataId++; + } + + _dataMap[dataId] = data; + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreEvent.ObjectCreate(out _handle, id, (IntPtr)dataId); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to create channel object"); + + Interop.LibTizenCore.TizenCoreEvent.ObjectSetDestroyCallback(_handle, _destroyCallback, (IntPtr)dataId); + } + + internal EventObject(IntPtr handle) + { + _handle = handle; + } + + /// + /// Finalizer of the class EventObject. + /// + ~EventObject() + { + Dispose(false); + } + + /// + /// Gets the ID of the event object. + /// + public int Id + { + get + { + Interop.LibTizenCore.TizenCoreEvent.ObjectGetId(_handle, out int id); + return id; + } + } + + /// + /// Gets the Data of the event object. + /// + public object Data + { + get + { + Interop.LibTizenCore.TizenCoreEvent.ObjectGetData(_handle, out IntPtr handle); + int id = (int)handle; + if (_dataMap.TryGetValue(id, out var data)) + { + return data; + } + return null; + } + } + + internal IntPtr Handle { get { return _handle; } set { _handle = value; } } + + /// + /// Release any unmanaged resources used by this object. + /// + /// If true, disposes any disposable objects. If false, does not dispose disposable objects. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + if (_handle != IntPtr.Zero) + { + Interop.LibTizenCore.TizenCoreEvent.ObjectDestroy(_handle); + _handle = IntPtr.Zero; + } + } + + _disposed = true; + } + } + + /// + /// Release any unmanaged resources used by this object. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + private static void NativeObjectDestroyCallback(IntPtr eventData, IntPtr userData) + { + int dataId = (int)eventData; + _dataMap.TryRemove(dataId, out var _); + } + } +} diff --git a/src/Tizen.Core/Tizen.Core/EventReceivedEventArgs.cs b/src/Tizen.Core/Tizen.Core/EventReceivedEventArgs.cs new file mode 100644 index 00000000000..fb561bbd686 --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/EventReceivedEventArgs.cs @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; + +namespace Tizen.Core +{ + /// + /// Arguments for the event raised when the event data is received. + /// + /// 12 + public class EventReceivedEventArgs : System.EventArgs + { + internal EventReceivedEventArgs(EventObject eventObject) + { + if (eventObject == null) + { + throw new ArgumentNullException(nameof(eventObject)); + } + + Id = eventObject.Id; + Data = eventObject.Data; + } + + /// + /// Gets the ID of the received object. + /// + /// 12 + public int Id { get; private set; } + + /// + /// Gets the Data of the received object. + /// + /// 12 + public object Data { get; private set; } + } +} diff --git a/src/Tizen.Core/Tizen.Core/Log.cs b/src/Tizen.Core/Tizen.Core/Log.cs new file mode 100644 index 00000000000..17d57a62df2 --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/Log.cs @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System.Runtime.CompilerServices; + +namespace Tizen.Core +{ + internal class Log + { + private static string LogTag = "Tizen.Core"; + + public static void Error(string message, [CallerFilePath] string file = "", [CallerMemberName] string func = "", [CallerLineNumber] int line = 0) + { + Tizen.Log.Error(LogTag, message, file, func, line); + } + + public static void Warn(string message, [CallerFilePath] string file = "", [CallerMemberName] string func = "", [CallerLineNumber] int line = 0) + { + Tizen.Log.Warn(LogTag, message, file, func, line); + } + + public static void Info(string message, [CallerFilePath] string file = "", [CallerMemberName] string func = "", [CallerLineNumber] int line = 0) + { + Tizen.Log.Info(LogTag, message, file, func, line); + } + + public static void Debug(string message, [CallerFilePath] string file = "", [CallerMemberName] string func = "", [CallerLineNumber] int line = 0) + { + Tizen.Log.Debug(LogTag, message, file, func, line); + } + } +} \ No newline at end of file diff --git a/src/Tizen.Core/Tizen.Core/Task.cs b/src/Tizen.Core/Tizen.Core/Task.cs new file mode 100644 index 00000000000..1e8b52299ae --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/Task.cs @@ -0,0 +1,717 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; +using System.Collections.Concurrent; +using System.Diagnostics.Tracing; +using System.Threading.Channels; +using System.Threading.Tasks; + +namespace Tizen.Core +{ + /// + /// Represents the task used for creating, running and terminating the thread with the main loop. + /// The state of the task can be changed as follows: Constructed -> Running -> Terminated. + /// To start the task, use 'Task.Run()' method. Once started, the task enters into 'Running' state. To terminate the task, use 'Task.Quit()' method. + /// After termination, the task returns back to 'Constructed' state. + /// + /// 12 + public class Task : IDisposable + { + private IntPtr _handle = IntPtr.Zero; + private bool _disposed = false; + private static readonly ConcurrentDictionary _coreTaskMap = new ConcurrentDictionary(); + private static readonly ConcurrentDictionary> _taskMap = new ConcurrentDictionary>(); + private static readonly ConcurrentDictionary _actionkMap = new ConcurrentDictionary(); + private static readonly ConcurrentDictionary _timerMap = new ConcurrentDictionary(); + private static readonly ConcurrentDictionary _channelMap = new ConcurrentDictionary(); + private static readonly ConcurrentDictionary _eventMap = new ConcurrentDictionary(); + private static Object _idLock = new Object(); + private static int _id = 1; + + /// + /// Initializes the Task class. + /// + /// The ID of the task. + /// Thrown when the is invalid or a Task with that ID already exists. + /// Thrown when out of memory. + /// + /// The constructor throws an exception when the id already exists. + /// By default, the task creates a thread. However, if the is "main", a thread is not created. + /// The 'main' task will be operated in the main thread. + /// + /// + /// + /// + /// TizenCore.Initialize(); + /// var task = new Task("Worker"); + /// task.Run(); + /// + /// + /// + /// 12 + public Task(string id) + { + bool useThread = (id == "main") ? false : true; + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.TaskCreate(id, useThread, out _handle); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to create task"); + _coreTaskMap[id] = this; + } + + internal Task(IntPtr handle) + { + _handle = handle; + _disposed = true; + } + + /// + /// Finalizes the Task class. + /// + /// 12 + ~Task() + { + Dispose(false); + } + + + /// + /// Posts an action to be executed later. + /// + /// The action callback to post. + /// Thrown when the action argument is null. + /// Thrown when failed because of the instance is invalid. + /// Thrown when out of memory. + /// + /// The action callback will be executed by the main loop of the task. + /// If there was any error during this process, an appropriate exception will be thrown. + /// In order to prevent the from throwing an exception, you should add a try/catch block. If not, it may cause the application to crash or terminate. + /// + /// + /// + /// + /// var task = TizenCore.Find("Test") ?? TizenCore.Spawn("Test"); + /// task.Post(() => + /// { + /// Console.WriteLine("Test task"); + /// }); + /// + /// + /// + /// 12 + public void Post(Action action) + { + if (action == null) + { + throw new ArgumentNullException(nameof(action)); + } + + int id; + lock (_idLock) + { + if (_id + 1 < 0) _id = 1; + id = _id++; + } + _actionkMap[id] = action; + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.AddIdleJob(_handle, NativeActionCallback, (IntPtr)id, out IntPtr handle); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to add idle job"); + } + + /// + /// Posts a task to be executed later. + /// + /// The task to post. + /// Thrown when the task argument is null. + /// Thrown when failed because of the instance is invalid. + /// Thrown when out of memory. + /// + /// The task will be stored in the internal map using its unique identifier. + /// Then it will be added as an idle job to the main loop of the task. + /// If there was any error during this process, the task will be removed from the map and an appropriate exception will be thrown. + /// In order to prevent the from throwing an exception, you should add a try/catch block. If not, it may cause the application to crash or terminate. + /// + /// + /// + /// + /// var channel = new Channel(); + /// var task = TizenCore.Find("Sender") ?? TizenCore.Spawn("Sender"); + /// + /// int id = 0; + /// task.Post(async () => + /// { + /// var channelObject = await channel.Receiver.Receive(); + /// var message = (string)channelObject.Data; + /// Console.WriteLine("Received message = " + message); + /// }); + /// + /// + /// + /// 12 + public void Post(Func task) + { + if (task == null) + { + throw new ArgumentNullException(nameof(task)); + } + + int id; + lock (_idLock) + { + if (_id + 1 < 0) _id = 1; + id = _id++; + } + _taskMap[id] = task; + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.AddIdleJob(_handle, NativeTaskCallback, (IntPtr)id, out IntPtr handle); + if (error != Interop.LibTizenCore.ErrorCode.None) + { + _taskMap.TryRemove(id, out var _); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to add idle job"); + } + } + + /// + /// Adds a recurring timer to a main loop of the task. + /// + /// The interval of the timer in milliseconds. + /// The recurring timer callback function which returns whether or not to continue triggering the timer. + /// The registered timer ID to be used with . + /// Thrown when the callback argument is null. + /// Thrown when failed because of the instance is invalid. + /// Thrown when out of memory. + /// + /// The callback function will be called every time the specified interval elapses. It should return true to keep the timer running, otherwise the timer will be stopped. + /// + /// + /// + /// + /// var task = TizenCore.Find("TimerTask") ?? TizenCore.Spawn("TimerTask"); + /// var timerId = task.AddTimer(1000, () => { + /// Console.WriteLine("Timer callback is invoked"); + /// return true; + /// }); + /// + /// + /// + /// 12 + public int AddTimer(uint interval, Func callback) + { + if (callback == null) + { + throw new ArgumentNullException(nameof(callback)); + } + + int id; + lock (_idLock) + { + if (_id + 1 < 0) _id = 1; + id = _id++; + } + var timerSource = new TimerSource(id, IntPtr.Zero, callback); + _timerMap[id] = timerSource; + lock (timerSource) + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.AddTimer(_handle, interval, NativeTimerCallback, (IntPtr)id, out IntPtr handle); + if (error != Interop.LibTizenCore.ErrorCode.None) + { + _timerMap.TryRemove(id, out var _); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to add a timer"); + } + + timerSource.Handle = handle; + } + return id; + } + + /// + /// Removes the registered timer from the main loop of the task. + /// If the specified timer was already stopped, no action occurs. + /// + /// The registered timer ID. + /// + /// + /// + /// var task = TizenCore.Find("TimerTask") ?? TizenCore.Spawn("TimerTask"); + /// var timerId = task.AddTimer(1000, () => { + /// Console.WriteLine("Timer handler is invoked"); + /// return true; + /// }); + /// ... + /// task.RemoveTimer(timerId); + /// + /// + /// + /// 12 + public void RemoveTimer(int id) + { + if (_timerMap.TryRemove(id, out var timerSource)) + { + lock (timerSource) + { + if (timerSource.Handle != IntPtr.Zero) + { + Interop.LibTizenCore.TizenCore.RemoveSource(_handle, timerSource.Handle); + timerSource.Handle = IntPtr.Zero; + } + } + } + } + + /// + /// Adds a channel receiver to a main loop of the task. + /// + /// The channel receiver instance. + /// Thrown when the argument is null. + /// Thrown when the argument is invalid. + /// Thrown when out of memory. + /// + /// + /// + /// var channel = new Channel(); + /// var task = TizenCore.Find("ReceivingTask") ?? TizenCore.Spawn("ReceivingTask"); + /// var receiver = channel.Receiver; + /// receiver.Received += (sender, args) => { + /// Console.WriteLine("OnChannelMessageReceived. Message = " + (string)args.Data); + /// }; + /// task.AddChannelReceiver(receiver); + /// + /// + /// + /// 12 + public void AddChannelReceiver(ChannelReceiver receiver) + { + if (receiver == null) { throw new ArgumentNullException(nameof(receiver)); } + + if (receiver.Handle == IntPtr.Zero) + { + throw new ArgumentException("The receiver is already added"); + } + + int id; + lock (_idLock) + { + if (_id + 1 < 0) _id = 1; + id = _id++; + } + receiver.Id = id; + _channelMap[id] = receiver; + lock (receiver) + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.AddChannel(_handle, receiver.Handle, NativeChannelReceiveCallback, (IntPtr)id, out IntPtr handle); + if (error != Interop.LibTizenCore.ErrorCode.None) + { + _channelMap.TryRemove(id, out var _); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to add a channel to the task"); + } + + receiver.Source = handle; + receiver.Handle = IntPtr.Zero; + } + } + + /// + /// Removes the registered channel receiver from the main loop of the task. + /// + /// The channel receiver instance. + /// Thrown when the argument is null. + /// Thrown when the argument is invalid. + /// + /// + /// + /// var channel = new Channel(); + /// var task = TizenCore.Find("ReceivingTask") ?? TizenCore.Spawn("ReceivingTask"); + /// var receiver = channel.Receiver; + /// receiver.Received += (sender, args) => { + /// Console.WriteLine("OnChannelMessageReceived. Message = " + (string)args.Data); + /// }; + /// + /// task.AddChannelReceiver(receiver); + /// task.RemoveChannelReceiver(receiver); + /// + /// + /// + /// 12 + public void RemoveChannelReceiver(ChannelReceiver receiver) + { + if (receiver == null) + { + throw new ArgumentNullException(nameof(receiver)); + } + + if (receiver.Id == 0 || receiver.Source == IntPtr.Zero) + { + throw new ArgumentException("Invalid argument"); + } + + if (_channelMap.TryRemove(receiver.Id, out var _)) + { + lock (receiver) + { + if (receiver.Source != IntPtr.Zero) + { + Interop.LibTizenCore.TizenCore.RemoveSource(_handle, receiver.Source); + receiver.Source = IntPtr.Zero; + receiver.Id = 0; + } + } + } + } + + /// + /// Adds an event to a main loop of the task. + /// If the event is successfully added, its unique identifier is assigned to the event. The identifier can then be used later to identify the specific event among others. + /// + /// The event instance. + /// Thrown when the argument is null. + /// Thrown when the argument is invalid. + /// Thrown when out of memory. + /// + /// This method allows you to associate an event with a specific task. By adding an event to a task's main loop, other threads can utilize this event to communicate with the task. + /// However, note that once an event is attached to a task, it cannot be reused or attached to another task. + /// If the argument passed to this method is null, an exception will be thrown. Additionally, if the event has been previously added, an argument exception will be raised. + /// + /// + /// + /// + /// var coreEvent = new Event(); + /// coreEvent.EventReceived += (sender, args) => { + /// Console.WriteLine("OnEventReceived. ID = {}, Message = {}", args.Id, (string)args.Data); + /// }; + /// + /// var task = TizenCore.Find("EventTask") ?? TizenCore.Spawn("EventTask"); + /// task.AddEvent(coreEvent); + /// + /// + /// + /// 12 + public void AddEvent(Event coreEvent) + { + if (coreEvent == null) + { + throw new ArgumentNullException(nameof(coreEvent)); + } + + if (coreEvent.Handle == IntPtr.Zero) + { + throw new ArgumentException("The event is already added"); + } + + int id; + lock (_idLock) + { + if (_id + 1 < 0) + { + _id = 1; + } + id = _id++; + } + coreEvent.Id = id; + _eventMap[id] = coreEvent; + lock (coreEvent) + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.AddEvent(_handle, coreEvent.Handle, out IntPtr handle); + if (error != Interop.LibTizenCore.ErrorCode.None) + { + _eventMap.TryRemove(id, out var _); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to add an event to the task"); + } + + coreEvent.Source = handle; + coreEvent.Handle = IntPtr.Zero; + } + } + + /// + /// Removes the registered event from the main loop of the task. + /// + /// The event instance. + /// Thrown when the argument is null. + /// Thrown when the argument is invalid. + /// + /// + /// + /// var coreEvent = new Event(); + /// coreEvent.EventReceived += (sender, args) => { + /// Console.WriteLine("OnEventReceived. ID = {}, Message = {}", args.Id, (string)args.Data); + /// }; + /// + /// var task = TizenCore.Find("EventTask") ?? TizenCore.Spawn("EventTask"); + /// task.AddEvent(coreEvent); + /// task.RemoveEvent(coreEvent); + /// + /// + /// + /// 12 + public void RemoveEvent(Event coreEvent) + { + if (coreEvent == null) + { + throw new ArgumentNullException(nameof(coreEvent)); + } + + if (coreEvent.Id == 0 || coreEvent.Source == IntPtr.Zero) + { + throw new ArgumentException("Invalid argument"); + } + + if (_eventMap.TryRemove(coreEvent.Id, out var _)) + { + lock (coreEvent) + { + if (coreEvent.Source != IntPtr.Zero) + { + Interop.LibTizenCore.TizenCore.RemoveSource(_handle, coreEvent.Source); + coreEvent.Source = IntPtr.Zero; + coreEvent.Id = 0; + } + } + } + } + + /// + /// Emits the event object to all registered event handlers of the task. + /// It's similar to Event.Emit(), but EmitAllEvent() sends the event object to every event handler of the task while Event.Emit() sends the event object only to the target event's event handler. + /// + /// The event object instance. + /// Thrown when the argument is null. + /// Thrown when the argument is invalid. + /// + /// + /// + /// int id = 0; + /// string message = "Test Event"; + /// using (var eventObject = new TCoreEventObject(id++, message)) + /// { + /// var task = TizenCore.Find("EventTask") ?? TizenCore.Spawn("EventTask"); + /// task.EmitEvent(eventObject); + /// } + /// + /// + /// + /// 12 + public void EmitEvent(EventObject eventObject) + { + if (eventObject == null) + { + throw new ArgumentNullException(nameof(eventObject)); + } + + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.EmitEvent(_handle, eventObject.Handle); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to emit event"); + eventObject.Handle = IntPtr.Zero; + } + + private static bool NativeTaskCallback(IntPtr userData) + { + int taskId = (int)userData; + if (_taskMap.TryRemove(taskId, out Func task)) + { + task(); + } + return false; + } + + private static bool NativeActionCallback(IntPtr userData) + { + int actionId = (int)userData; + if (_actionkMap.TryRemove(actionId, out Action action)) + { + action(); + } + return false; + } + + private static bool NativeTimerCallback(IntPtr userData) + { + int timerId = (int)userData; + if (_timerMap.TryGetValue(timerId, out TimerSource timerSource)) + { + bool result = false; + lock (timerSource) + { + if (timerSource.Handle != IntPtr.Zero) + { + result = timerSource.Handler(); + if (!result) + { + _timerMap.TryRemove(timerId, out TimerSource unusedSource); + } + } + } + return result; + } + return false; + } + + private static void NativeChannelReceiveCallback(IntPtr nativeObject, IntPtr userData) + { + int channelId = (int)userData; + if (_channelMap.TryGetValue(channelId, out ChannelReceiver receiver)) + { + lock (receiver) + { + if (receiver.Source != IntPtr.Zero) + { + using (var channelObject = new ChannelObject(nativeObject)) + { + var eventArgs = new ChannelReceivedEventArgs(channelObject); + receiver.InvokeEventHandler(null, eventArgs); + } + } + } + } + } + + internal static Task Find(string id) + { + if (_coreTaskMap.TryGetValue(id, out Task task)) { return task; } + + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.Find(id, out IntPtr handle); + if (error == Interop.LibTizenCore.ErrorCode.None) + { + return new Task(handle); + } + + return null; + } + + internal static Task Spawn(string id) + { + if (id == "main") + { + Log.Error("Invalid argument. id = {}", id); + return null; + } + + var task = new Task(id); + task.Run(); + return task; + } + + /// + /// Checks whether the task is running or not. + /// + /// 12 + public bool Running { + get + { + Interop.LibTizenCore.TizenCore.TaskIsRunning(_handle, out bool running); + return running; + } + } + + /// + /// Runs the main loop of the task. + /// + /// Thrown when the unmanaged handle is invalid. + /// Thrown when failed because of an invalid operation. + /// + /// + /// + /// var coreTask = new TCoreTask("Runner"); + /// coreTask.Run(); + /// + /// + /// + /// 12 + public void Run() + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.TaskRun(_handle); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to run task"); + } + + /// + /// Quits the main loop of the task. + /// + /// Thrown when the unmanaged handle is invalid. + /// Thrown when failed because of an invalid operation. + /// + /// This function can be called from any thread. + /// It requests the task to finish the current iteration of its loop and stop running. + /// All pending events in the event queue will be processed before quitting. Once the task quits, it's finished. + /// To start another task, you need to create a new one and call the method on it. + /// + /// + /// + /// + /// var coreTask = new TCoreTask("Runner"); + /// coreTask.Run(); + /// if (coreTask.Running) + /// { + /// coreTask.Quit(); + /// } + /// + /// + /// + /// 12 + public void Quit() + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.TaskQuit(_handle); + TCoreErrorFactory.CheckAndThrownException(error, "Failed to quit task"); + } + + /// + /// Release any unmanaged resources used by this object. + /// + /// If true, disposes any disposable objects. If false, does not dispose disposable objects. + /// 12 + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + if (_handle != IntPtr.Zero) + { + if (Running) + { + Quit(); + } + + Interop.LibTizenCore.TizenCore.TaskDestroy(_handle); + _handle = IntPtr.Zero; + } + } + + _disposed = true; + } + } + + /// + /// Release any unmanaged resources used by this object. + /// + /// 12 + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + internal class TimerSource + { + public TimerSource(int id, IntPtr handle, Func handler) + { + Id = id; + Handle = handle; + Handler = handler; + } + + public int Id { get; set; } + + public IntPtr Handle { get; set; } + + public Func Handler { get; set; } + } + } +} diff --git a/src/Tizen.Core/Tizen.Core/TizenCore.cs b/src/Tizen.Core/Tizen.Core/TizenCore.cs new file mode 100644 index 00000000000..62057768979 --- /dev/null +++ b/src/Tizen.Core/Tizen.Core/TizenCore.cs @@ -0,0 +1,168 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using System; + +namespace Tizen.Core +{ + /// + /// The class which provides functions related to the Tizen Core. + /// + public static class TizenCore + { + /// + /// Initializes Tizen Core. + /// This method should be called once per application before creating any Tasks. + /// Calling this method more than one time will increase internal reference counts which need to be matched by calling Shutdown(). + /// Failing to call Shutdown() in corresponding number of calls may cause resource leakages. + /// + /// + /// + /// + /// TizenCore.Initialize(); + /// var task = TizenCore.Spawn("Worker"); + /// + /// + /// + /// 12 + static public void Initialize() + { + Interop.LibTizenCore.TizenCore.Init(); + } + + /// + /// Shuts down Tizen Core. + /// + /// + /// + /// + /// TizenCore.Shutdown(); + /// + /// + /// + /// 12 + static public void Shutdown() + { + Interop.LibTizenCore.TizenCore.Shutdown(); + } + + /// + /// Finds the task instance. + /// + /// The ID of the task. + /// + /// + /// + /// TizenCore.Initialize(); + /// var task = TizenCore.Find("Test") ?? TizenCore.Spawn("Test"); + /// + /// + /// + /// On success the task instance, othwerwise null. + public static Task Find(string id) + { + return Task.Find(id); + } + + /// + /// Finds the task instance running in the thread of the caller or the "main" task. + /// + /// On success the task instance, othwerwise null. + /// + /// + /// + /// TizenCore.Initialize(); + /// var coreTask = TizenCore.FindFromThisThread(); + /// if (coreTask != null) + /// { + /// coreTask.Post(() => { + /// Console.WriteLine("Idler invoked"); + /// }); + /// } + /// + /// + /// + /// 12 + public static Task FindFromCurrentThread() + { + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.FindFromThisThread(out IntPtr handle); + if (error == Interop.LibTizenCore.ErrorCode.None) + { + return new Task(handle); + } + + return null; + } + + /// + /// Creates and runs the task. + /// + /// The ID of the task. + /// On succes the created task instance, othwerwise null. + /// + /// + /// + /// TizenCore.Initialize(); + /// var task = TizenCore.Spawn("Worker"); + /// if (task != null) + /// { + /// task.AddTimer(5000, () => { + /// Console.WriteLine("Timer expired"); + /// return true; + /// }); + /// } + /// + /// + /// + /// 12 + public static Task Spawn(string id) + { + return Task.Spawn(id); + } + } + + internal static class TCoreErrorFactory + { + internal enum TCoreError + { + None = Interop.LibTizenCore.ErrorCode.None, + InvalidParameter = Interop.LibTizenCore.ErrorCode.InvalidParameter, + OutOfMemory = Interop.LibTizenCore.ErrorCode.OutOfMemory, + InvalidContext = Interop.LibTizenCore.ErrorCode.InvalidContext, + } + + static internal void CheckAndThrownException(Interop.LibTizenCore.ErrorCode error, string message) + { + if ((TCoreError)error == TCoreError.None) + { + return; + } + + if ((TCoreError)error == TCoreError.InvalidParameter) + { + throw new ArgumentException(message); + } + else if ((TCoreError)error == TCoreError.OutOfMemory) + { + throw new OutOfMemoryException(message); + } + else if ((TCoreError)error == TCoreError.InvalidContext) + { + throw new InvalidOperationException(message); + } + } + } +} diff --git a/src/Tizen.Core/doc/api/Tizen.Core.md b/src/Tizen.Core/doc/api/Tizen.Core.md new file mode 100644 index 00000000000..2ec04f67c0a --- /dev/null +++ b/src/Tizen.Core/doc/api/Tizen.Core.md @@ -0,0 +1,177 @@ +--- +# Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved +# +# Licensed under the Apache License, Version 2.0 (the License); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +uid: Tizen.Core +summary: Tizen Core (TCore) is a new main loop model that provides per thread loops, message and event transmission, uniquely named threads. +remarks: *content +--- +## Overview +Tizen Core (TCore) is a new main loop that improves the existing main loop model. It supports creating and running the main loop in multiple threads. Tizen Core provides an API that supports secure communication between threads. + +## Preparation +To use the Tizen Core API, you must define `using Tizen.Core`, as shown below: +```cs +using Tizen.Core; +``` + +## Initializing Tizen Core +Before using Tizen Core, Calls TizenCore.Initialize() as shown below: +```cs +TizenCore.Initialize(); +``` + +## Shutting down Tizen Core +When Tizen Core is no longer needed, shut down Tizen Core with the code below: +```cs +TizenCore.Shutdown(); +``` + +## Managing Tizen Core tasks +This section will cover creating, executing, and terminating the CoreTask objects, It will also cover adding idle jobs and timers to the main loop. + +### Creating a task +Here` an example on how to create a Task object: +```cs +{ + TizenCore.Initialize(); + var task = new Task("task1"); +} +``` +`task` was created with the name "task1" and configured to use its own thread. The created `task` instance should be removed using `Dispose()` method when it is no longer needed. + +### Running a task +In this example, we'll cover the code to execute a previously created task: +```cs +{ + task.Run(); +} +``` +`task` creates and runs a thread named "task1". After calling `Run()` method, the thread is created and the loop starts running. + +### Checking if a task is running +An example of checking if a task is running using `Running` property: +```cs +{ + if (task.Running) + { + Log.Debug(LogTag, "task1 is running"); + } + else + { + Log.Debug(LogTag, "task1 is not running"); + } +} +``` + +### Adding an timer job to Tizen Core +Here's an example of registering a timer that calls the handler every 100 ms. +```cs +{ + var timerId = task.AddTimer(100, () => { + Log.Debug(LogTag, "timer handler is invoked"); + return true; + }); +} +``` + +### Adding an action to Tizen Core +Let'w write an example that adds an action to `Task`. +```cs +{ + var task = TizenCore.Find("Test") ?? TizenCore.Spawn("Test"); + task.Post(() => { + Log.Debug(LogTag, "Action is invoked"); + }); +} +``` + +## Managing Tizen Core channels +Tizen Core channel Provides a communication channel that allows safe sending and receiving of data between threads. This channel can be used to exchange information in a synchronized state without data conflict. This section describes how to create a channel sender and receiver pair, send and receive data, and destroy the channel sender and receiver pair. + +### Creating a channel +Here'a an example on how to create a Channel object: +```cs +{ + try { + var channel = new Channel(); + } + catch (OutOfMemoryException) + { + Log.Error(LogTag, "Exception occurs"); + } +} +``` + +### Creating and transmitting a channel object +This example show how to create and transmit a channel object: +```cs +{ + TizenCore.Initialize(); + var channel = new Channel(); + var receiver = channel.Receiver; + receiver.Received += (s, e) => { + Log.Debug(LogTag, "OnChannelObjectReceived. Message = {}", (string)e.Data); + }; + + var task = TizenCore.Find("ReceivingTask") ?? TizenCore.Spawn("ReceivingTask"); + task.AddChannelReceiver(receiver); + + var sender = channel.Sender; + string message = "Test message"; + using (var channelObject = new ChannelObject(1, message)) + { + sender.Send(channelObject); + } +} +``` +The example shows adding a receiver to a ReceivingTask and delivering a message using a ChannelSender. +The channel event is passed to the main loop of the ReceivingTask, causing the event handler to be called. + +## Managing Tizen Core events +A feature to deliver events to specific tasks, which can be used to wait for completion of tasks or send notifications to other threads. This section covers creating events, registering event handlers with them, attaching them to the main loop, and receiving events. + +### Creating an event and registering an event handler +Here's an example of creating an event and registering an event handler: +```cs +{ + var coreEvent = new Event(); + coreEvent.EventReceived += (s, e) => { + Log.Debug(LogTag, "OnEventReceived. Message = {}", (string)e.Data); + } +} +``` +The example shows creating an event and registering an event handler for it. The created event is added to the EventTask. + +### Creating an event object and delivering it to the task. +```cs +{ + TizenCore.Initialize(); + var coreEvent = new Event(); + coreEvent.EventReceived += (s, e) => { + Log.Debug(LogTag, "OnEventReceived. Message = {}", (string)e.Data); + } + + var task = TizenCore.Find("EventTask") ?? TizenCore.Spawn("EventTask"); + task.AddEvent(coreEvent); + + string message = "Event message"; + using (var eventObject = new EventObject(1, message)) + { + task.EmitEvent(eventObject); + } +} +``` +The generated event is added to an EventTask, and a corresponding EventObject is passed to it. +The event is then delivered to the main loop of the EventTask where the EventHandler is called. From ef36f7be1dd833508c4de4e6e9613ba7a5440bea Mon Sep 17 00:00:00 2001 From: hjhun <36876573+hjhun@users.noreply.github.com> Date: Thu, 19 Sep 2024 18:49:05 +0900 Subject: [PATCH 097/198] [Core] Fix a bug about releasing the task (#6333) Signed-off-by: Hwankyu Jhun --- src/Tizen.Core/Interop/Interop.TizenCore.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Tizen.Core/Interop/Interop.TizenCore.cs b/src/Tizen.Core/Interop/Interop.TizenCore.cs index b3eace0361a..80a1fea238c 100644 --- a/src/Tizen.Core/Interop/Interop.TizenCore.cs +++ b/src/Tizen.Core/Interop/Interop.TizenCore.cs @@ -94,7 +94,7 @@ internal static partial class TizenCore internal static extern ErrorCode TaskCreate(string name, bool useThread, out IntPtr handle); // int tizen_core_task_destroy(tizen_core_task_h task); - [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_task_create")] + [DllImport(Libraries.TizenCore, EntryPoint = "tizen_core_task_destroy")] internal static extern ErrorCode TaskDestroy(IntPtr handle); // int tizen_core_task_run(tizen_core_task_h task); From 8dff1965a2dcd3e23bc656952fd7f6f1782d874f Mon Sep 17 00:00:00 2001 From: Filip Skrzeczkowski <110346745+feedop@users.noreply.github.com> Date: Thu, 19 Sep 2024 14:04:46 +0200 Subject: [PATCH 098/198] [WebAuthn] Add WebAuthn API (#6311) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [WebAuthn] Add WebAuthn module and public API Provide the implementation and documentation for the public API of the WebAuthn module implementing the passkey functionality. Co-authored-by: Piotr Szydełko --- .../Interop/Interop.Libweabuthn.cs | 49 ++ .../Interop/Interop.Types.cs | 521 ++++++++++++++++++ .../Tizen.Security.WebAuthn.csproj | 11 + .../Tizen.Security.WebAuthn.sln | 25 + .../AuthenticationExtension.cs | 58 ++ .../AuthenticationSelectionCriteria.cs | 62 +++ .../Tizen.Security.WebAuthn/Authenticator.cs | 283 ++++++++++ .../AuthenticatorAssertionResponse.cs | 65 +++ .../AuthenticatorAttestationResponse.cs | 69 +++ .../AuthenticatorStorage.cs | 370 +++++++++++++ .../Tizen.Security.WebAuthn/ClientData.cs | 52 ++ .../Enums/AttestationPref.cs | 46 ++ .../Enums/AuthenticatorAttachment.cs | 42 ++ .../Enums/AuthenticatorTransport.cs | 62 +++ .../Enums/CoseAlgorithm.cs | 70 +++ .../Enums/HashAlogithm.cs | 35 ++ .../Enums/PubkeyCredHint.cs | 46 ++ .../Enums/PubkeyCredType.cs | 35 ++ .../Enums/ResidentKeyRequirement.cs | 46 ++ .../Enums/UserVerificationRequirement.cs | 46 ++ .../Enums/WauthnError.cs | 92 ++++ .../Tizen.Security.WebAuthn/ErrorFactory.cs | 58 ++ .../GetAssertionCallbacks.cs | 101 ++++ .../HybridLinkedData.cs | 124 +++++ .../MakeCredentialCallbacks.cs | 101 ++++ .../NullSafeMarshal.cs | 34 ++ .../PubkeyCredAssertion.cs | 102 ++++ .../PubkeyCredAttestation.cs | 102 ++++ .../PubkeyCredCreationOptions.cs | 153 +++++ .../PubkeyCredDescriptor.cs | 56 ++ .../PubkeyCredParam.cs | 49 ++ .../PubkeyCredRequestOptions.cs | 133 +++++ .../RelyingPartyEntity.cs | 50 ++ .../UnmanagedMemory.cs | 86 +++ .../Tizen.Security.WebAuthn/UserEntity.cs | 61 ++ .../doc/api/Tizen.Security.WebAuthn.md | 21 + 36 files changed, 3316 insertions(+) create mode 100644 src/Tizen.Security.WebAuthn/Interop/Interop.Libweabuthn.cs create mode 100644 src/Tizen.Security.WebAuthn/Interop/Interop.Types.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn.csproj create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn.sln create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticationExtension.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticationSelectionCriteria.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Authenticator.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorAssertionResponse.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorAttestationResponse.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorStorage.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/ClientData.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AttestationPref.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AuthenticatorAttachment.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AuthenticatorTransport.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/CoseAlgorithm.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/HashAlogithm.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/PubkeyCredHint.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/PubkeyCredType.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/ResidentKeyRequirement.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/UserVerificationRequirement.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/WauthnError.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/ErrorFactory.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/GetAssertionCallbacks.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/HybridLinkedData.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/MakeCredentialCallbacks.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/NullSafeMarshal.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredAssertion.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredAttestation.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredCreationOptions.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredDescriptor.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredParam.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredRequestOptions.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/RelyingPartyEntity.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/UnmanagedMemory.cs create mode 100644 src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/UserEntity.cs create mode 100644 src/Tizen.Security.WebAuthn/doc/api/Tizen.Security.WebAuthn.md diff --git a/src/Tizen.Security.WebAuthn/Interop/Interop.Libweabuthn.cs b/src/Tizen.Security.WebAuthn/Interop/Interop.Libweabuthn.cs new file mode 100644 index 00000000000..27ba520ba03 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Interop/Interop.Libweabuthn.cs @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; +using System.Runtime.InteropServices; + +internal static partial class Interop +{ + internal static partial class Libraries + { + public const string Libwebauthn = "libwebauthn-client.so.1"; + } + + internal static partial class Libwebauthn + { + [DllImport(Libraries.Libwebauthn, EntryPoint = "wauthn_set_api_version", CallingConvention = CallingConvention.Cdecl)] + public static extern int SetApiVersion(int apiVersionNumber); + // int wauthn_set_api_version(int api_version_number); + + [DllImport(Libraries.Libwebauthn, EntryPoint = "wauthn_supported_authenticators", CallingConvention = CallingConvention.Cdecl)] + public static extern int SupportedAuthenticators(out uint supported); + // int wauthn_supported_authenticators(unsigned int *supported); + + [DllImport(Libraries.Libwebauthn, EntryPoint = "wauthn_make_credential", CallingConvention = CallingConvention.Cdecl)] + public static extern int MakeCredential([In] WauthnClientData clientData, [In] WauthnPubkeyCredCreationOptions options, [In, Out] WauthnMcCallbacks callbacks); + // int wauthn_make_credential( const wauthn_client_data_s *client_data, const wauthn_pubkey_cred_creation_options_s *options, wauthn_mc_callbacks_s *callbacks); + + [DllImport(Libraries.Libwebauthn, EntryPoint = "wauthn_get_assertion", CallingConvention = CallingConvention.Cdecl)] + public static extern int GetAssertion([In] WauthnClientData clientData, [In] WauthnPubkeyCredRequestOptions options, [In, Out] WauthnGaCallbacks callbacks); + // int wauthn_get_assertion( const wauthn_client_data_s *client_data, const wauthn_pubkey_cred_request_options_s *options, wauthn_ga_callbacks_s *callbacks); + + [DllImport(Libraries.Libwebauthn, EntryPoint = "wauthn_cancel", CallingConvention = CallingConvention.Cdecl)] + public static extern int Cancel(); + // int wauthn_cancel(); + } +} diff --git a/src/Tizen.Security.WebAuthn/Interop/Interop.Types.cs b/src/Tizen.Security.WebAuthn/Interop/Interop.Types.cs new file mode 100644 index 00000000000..c85dbd09d19 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Interop/Interop.Types.cs @@ -0,0 +1,521 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; +using System.Runtime.InteropServices; +using Tizen.Internals; +using Tizen.Security.WebAuthn; + +internal static partial class Interop +{ + private const string pkg = "webauthn"; + + #region Delegates + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate void WauthnDisplayQrcodeCallback([In][MarshalAs(UnmanagedType.LPStr)] string qrContents, IntPtr userData); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate void WauthnMcOnResponseCallback([In] WauthnPubkeyCredentialAttestation pubkeyCred, WauthnError result, IntPtr userData); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate void WauthnGaOnResponseCallback([In] WauthnPubkeyCredentialAssertion pubkeyCred, WauthnError result, IntPtr userData); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate void WauthnUpdateLinkedDataCallback([In] IntPtr linkedData, WauthnError result, IntPtr userData); + + #endregion + #region Classes + + [NativeStruct("wauthn_rp_entity_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnRpEntity + { + public readonly IntPtr name; // string + public readonly IntPtr id; // string + + public WauthnRpEntity(IntPtr name, IntPtr id) + { + this.name = name; + this.id = id; + } + } + + [NativeStruct("wauthn_user_entity_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnUserEntity + { + public readonly IntPtr name; // string + public readonly IntPtr id; // WauthnConstBuffer* + public readonly IntPtr displayName; // string + + public WauthnUserEntity(IntPtr name, IntPtr id, IntPtr displayName) + { + this.name = name; + this.id = id; + this.displayName = displayName; + } + } + + [NativeStruct("wauthn_pubkey_cred_params_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnPubkeyCredParams + { + public readonly nuint size; + public readonly IntPtr parameters; // WauthnPubkeyCredParam[] + + public WauthnPubkeyCredParams(nuint size, IntPtr parameters) + { + this.size = size; + this.parameters = parameters; + } + } + + [NativeStruct("wauthn_pubkey_cred_descriptors_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnPubkeyCredDescriptors + { + public readonly nuint size; + public readonly IntPtr descriptors; // WauthnPubkeyCredDescriptor[] + + public WauthnPubkeyCredDescriptors(nuint size, IntPtr descriptors) + { + this.size = size; + this.descriptors = descriptors; + } + } + + [NativeStruct("wauthn_authenticator_sel_cri_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnAuthenticationSelCri + { + public readonly AuthenticatorAttachment attachment; + public readonly ResidentKeyRequirement residentKey; + public readonly byte requireResidentKey; + public readonly UserVerificationRequirement userVerification; + + public WauthnAuthenticationSelCri( + AuthenticatorAttachment attachment, + ResidentKeyRequirement residentKey, + byte requireResidentKey, + UserVerificationRequirement userVerification) + { + this.attachment = attachment; + this.residentKey = residentKey; + this.requireResidentKey = requireResidentKey; + this.userVerification = userVerification; + } + } + + [NativeStruct("wauthn_pubkey_cred_hints_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnPubkeyCredHints + { + public readonly nuint size; + public readonly IntPtr hints; // PubkeyCredHint[] + + public WauthnPubkeyCredHints(nuint size, IntPtr hints) + { + this.size = size; + this.hints = hints; + } + } + + [NativeStruct("wauthn_attestation_formats_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnAttestationFormats + { + public readonly nuint size; + public readonly IntPtr attestationFormats; // WauthnConstBuffer[] + + public WauthnAttestationFormats(nuint size, IntPtr attestationFormats) + { + this.size = size; + this.attestationFormats = attestationFormats; + } + } + + [NativeStruct("wauthn_pubkey_cred_creation_options_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnPubkeyCredCreationOptions + { + public readonly IntPtr rp; // WauthnRpEntity* + public readonly IntPtr user; // WauthnUserEntity* + public readonly IntPtr pubkeyCredParams; // WauthnPubkeyCredParams* + public readonly nuint timeout; + public readonly IntPtr excludeCredentials; // WauthnPubkeyCredDescriptors* + public readonly IntPtr authenticatorSelection; // WauthnAuthenticationSelCri* + public readonly IntPtr hints; // WauthnPubkeyCredHints* + public readonly AttestationPref attestation; + public readonly IntPtr attestationFormats; // WauthnAttestationFormats* + public readonly IntPtr extensions; // WauthnAuthenticationExts* + public readonly IntPtr linkedDevice; // WauthnHybridLinkedData* + + public WauthnPubkeyCredCreationOptions( + IntPtr rp, + IntPtr user, + IntPtr pubkeyCredParams, + nuint timeout, + IntPtr excludeCredentials, + IntPtr authenticatorSelection, + IntPtr hints, + AttestationPref attestation, + IntPtr attestationFormats, + IntPtr extensions, + IntPtr linkedDevice) + { + this.rp = rp; + this.user = user; + this.pubkeyCredParams = pubkeyCredParams; + this.timeout = timeout; + this.excludeCredentials = excludeCredentials; + this.authenticatorSelection = authenticatorSelection; + this.hints = hints; + this.attestation = attestation; + this.attestationFormats = attestationFormats; + this.extensions = extensions; + this.linkedDevice = linkedDevice; + } + } + + [NativeStruct("wauthn_pubkey_cred_request_options_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnPubkeyCredRequestOptions + { + public readonly nuint timeout; + [MarshalAs(UnmanagedType.LPStr)] + public readonly string rpId; + public readonly IntPtr allowCredentials; // WauthnPubkeyCredDescriptors* + public readonly UserVerificationRequirement userVerification; + public readonly IntPtr hints; // WauthnPubkeyCredHints* + public readonly AttestationPref attestation; + public readonly IntPtr attestationFormats; // WauthnAttestationFormats* + public readonly IntPtr extensions; // WauthnAuthenticationExt* + public readonly IntPtr linkedDevice; // WauthnHybridLinkedData* + + public WauthnPubkeyCredRequestOptions( + nuint timeout, + string rpId, + IntPtr allowCredentials, + UserVerificationRequirement userVerification, + IntPtr hints, + AttestationPref attestation, + IntPtr attestationFormats, + IntPtr extensions, + IntPtr linkedDevice) + { + this.timeout = timeout; + this.rpId = rpId; + this.allowCredentials = allowCredentials; + this.userVerification = userVerification; + this.hints = hints; + this.attestation = attestation; + this.attestationFormats = attestationFormats; + this.extensions = extensions; + this.linkedDevice = linkedDevice; + } + } + + [NativeStruct("wauthn_pubkey_credential_attestation_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnPubkeyCredentialAttestation + { + public readonly IntPtr id; // WauthnConstBuffer* + public readonly PubkeyCredType type; + public readonly IntPtr rawId; // WauthnConstBuffer* + public readonly IntPtr response; // WauthnAuthenticatorAttestationResponse* + public readonly AuthenticatorAttachment authenticatorAttachment; + public readonly IntPtr extensions; // WauthnAuthenticationExts* + public readonly IntPtr linkedDevice; // WauthnHybridLinkedData* + + public WauthnPubkeyCredentialAttestation( + IntPtr id, + PubkeyCredType type, + IntPtr rawId, + IntPtr response, + AuthenticatorAttachment authenticatorAttachment, + IntPtr extensions, + IntPtr linkedDevice) + { + this.id = id; + this.type = type; + this.rawId = rawId; + this.response = response; + this.authenticatorAttachment = authenticatorAttachment; + this.extensions = extensions; + this.linkedDevice = linkedDevice; + } + } + + [NativeStruct("wauthn_pubkey_credential_assertion_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnPubkeyCredentialAssertion + { + public readonly IntPtr id; // WauthnConstBuffer* + public readonly PubkeyCredType type; + public readonly IntPtr rawId; // WauthnConstBuffer* + public readonly IntPtr response; // WauthnAuthenticatorAssertionResponse* + public readonly AuthenticatorAttachment authenticatorAttachment; + public readonly IntPtr extensions; // WauthnAuthenticationExts* + public readonly IntPtr linkedDevice; // WauthnHybridLinkedData* + + public WauthnPubkeyCredentialAssertion( + IntPtr id, + IntPtr rawId, + IntPtr response, + AuthenticatorAttachment authenticatorAttachment, + IntPtr extensions, + IntPtr linkedDevice) + { + this.id = id; + this.rawId = rawId; + this.response = response; + this.authenticatorAttachment = authenticatorAttachment; + this.extensions = extensions; + this.linkedDevice = linkedDevice; + } + } + + [NativeStruct("wauthn_client_data_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnClientData + { + public readonly IntPtr clientDataJson; // WauthnConstBuffer* + public readonly HashAlgorithm hashAlgo; + + public WauthnClientData(IntPtr clientDataJson, HashAlgorithm hashAlgo) + { + this.clientDataJson = clientDataJson; + this.hashAlgo = hashAlgo; + } + } + + [NativeStruct("wauthn_mc_callbacks_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnMcCallbacks + { + [MarshalAs(UnmanagedType.FunctionPtr)] + public readonly WauthnDisplayQrcodeCallback qrcodeCallback; + [MarshalAs(UnmanagedType.FunctionPtr)] + public readonly WauthnMcOnResponseCallback responseCallback; + [MarshalAs(UnmanagedType.FunctionPtr)] + public readonly WauthnUpdateLinkedDataCallback linkedDataCallback; + public readonly IntPtr userData = IntPtr.Zero; + + public WauthnMcCallbacks( + WauthnDisplayQrcodeCallback qrcodeCallback, + WauthnMcOnResponseCallback responseCallback, + WauthnUpdateLinkedDataCallback linkedDataCallback) + { + this.qrcodeCallback = qrcodeCallback; + this.responseCallback = responseCallback; + this.linkedDataCallback = linkedDataCallback; + } + } + + [NativeStruct("wauthn_ga_callbacks_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal class WauthnGaCallbacks + { + [MarshalAs(UnmanagedType.FunctionPtr)] + public readonly WauthnDisplayQrcodeCallback qrcodeCallback; + [MarshalAs(UnmanagedType.FunctionPtr)] + public readonly WauthnGaOnResponseCallback responseCallback; + [MarshalAs(UnmanagedType.FunctionPtr)] + public readonly WauthnUpdateLinkedDataCallback linkedDataCallback; + public readonly IntPtr userData = IntPtr.Zero; + + public WauthnGaCallbacks( + WauthnDisplayQrcodeCallback qrcodeCallback, + WauthnGaOnResponseCallback responseCallback, + WauthnUpdateLinkedDataCallback linkedDataCallback) + { + this.qrcodeCallback = qrcodeCallback; + this.responseCallback = responseCallback; + this.linkedDataCallback = linkedDataCallback; + } + } + #endregion + #region Structs + + [NativeStruct("wauthn_const_buffer_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal struct WauthnConstBuffer + { + public readonly IntPtr data; // byte[] + public readonly nuint size; + + public WauthnConstBuffer(IntPtr data, nuint size) + { + this.data = data; + this.size = size; + } + + public readonly byte[] ToArray() + { + var ret = new byte[size]; + Marshal.Copy(data, ret, 0, (int)size); + return ret; + } + } + + [NativeStruct("wauthn_authenticator_attestation_response_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal struct WauthnAuthenticatorAttestationResponse + { + public readonly IntPtr clientDataJson; // WauthnConstBuffer* + public readonly IntPtr attestationObject; // WauthnConstBuffer* + public readonly uint transports; + public readonly IntPtr authenticatorData; // WauthnConstBuffer* + public readonly IntPtr subjectPubkeyInfo; // WauthnConstBuffer* + public readonly CoseAlgorithm pubkeyAlg; + + public WauthnAuthenticatorAttestationResponse( + IntPtr clientDataJson, + IntPtr attestationObject, + uint transports, + IntPtr authenticatorData, + IntPtr subjectPubkeyInfo, + CoseAlgorithm pubkeyAlg) + { + this.clientDataJson = clientDataJson; + this.attestationObject = attestationObject; + this.transports = transports; + this.authenticatorData = authenticatorData; + this.subjectPubkeyInfo = subjectPubkeyInfo; + this.pubkeyAlg = pubkeyAlg; + } + } + + [NativeStruct("wauthn_authenticator_assertion_response_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal struct WauthnAuthenticatorAssertionResponse + { + public readonly IntPtr clientDataJson; // WauthnConstBuffer* + public readonly IntPtr authenticatorData; // WauthnConstBuffer* + public readonly IntPtr signature; // WauthnConstBuffer* + public readonly IntPtr userHandle; // WauthnConstBuffer* + public readonly IntPtr attestationObject; // WauthnConstBuffer* + + public WauthnAuthenticatorAssertionResponse( + IntPtr clientDataJson, + IntPtr authenticatorData, + IntPtr signature, + IntPtr userHandle, + IntPtr attestationObject) + { + this.clientDataJson = clientDataJson; + this.authenticatorData = authenticatorData; + this.signature = signature; + this.userHandle = userHandle; + this.attestationObject = attestationObject; + } + } + + [NativeStruct("wauthn_pubkey_cred_param_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal struct WauthnPubkeyCredParam + { + public readonly PubkeyCredType type; + public readonly CoseAlgorithm alg; + + public WauthnPubkeyCredParam(PubkeyCredType type, CoseAlgorithm alg) + { + this.type = type; + this.alg = alg; + } + } + + [NativeStruct("wauthn_pubkey_cred_descriptor_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal struct WauthnPubkeyCredDescriptor + { + public readonly PubkeyCredType type; + public readonly IntPtr id; // WauthnConstBuffer* + public readonly AuthenticatorTransport transport; + + public WauthnPubkeyCredDescriptor(PubkeyCredType type, IntPtr id, AuthenticatorTransport transport) + { + this.type = type; + this.id = id; + this.transport = transport; + } + } + + [NativeStruct("wauthn_authentication_ext_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal struct WauthnAuthenticationExt + { + public readonly IntPtr extensionId; // WauthnConstBuffer* + public readonly IntPtr extensionValue; // WauthnConstBuffer* + + public WauthnAuthenticationExt(IntPtr extensionId, IntPtr extensionValue) + { + this.extensionId = extensionId; + this.extensionValue = extensionValue; + } + } + + [NativeStruct("wauthn_authentication_exts_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal struct WauthnAuthenticationExts + { + public readonly nuint size; + public readonly IntPtr descriptors; // WauthnAuthenticationExt[] + + public WauthnAuthenticationExts(nuint size, IntPtr descriptors) + { + this.size = size; + this.descriptors = descriptors; + } + } + + [NativeStruct("wauthn_hybrid_linked_data_s", Include="webauthn-types.h", PkgConfig=pkg)] + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] + internal struct WauthnHybridLinkedData + { + public readonly IntPtr contactId; // WauthnConstBuffer* + public readonly IntPtr linkId; // WauthnConstBuffer* + public readonly IntPtr linkSecret; // WauthnConstBuffer* + public readonly IntPtr authenticatorPubkey; // WauthnConstBuffer* + public readonly IntPtr authenticatorName; // WauthnConstBuffer* + public readonly IntPtr signature; // WauthnConstBuffer* + public readonly IntPtr tunnelServerDomain; // WauthnConstBuffer* + public readonly IntPtr identityKey; // WauthnConstBuffer* + + public WauthnHybridLinkedData( + IntPtr contactId, + IntPtr linkId, + IntPtr linkSecret, + IntPtr authenticatorPubkey, + IntPtr authenticatorName, + IntPtr signature, + IntPtr tunnelServerDomain, + IntPtr identityKey) + { + this.contactId = contactId; + this.linkId = linkId; + this.linkSecret = linkSecret; + this.authenticatorPubkey = authenticatorPubkey; + this.authenticatorName = authenticatorName; + this.signature = signature; + this.tunnelServerDomain = tunnelServerDomain; + this.identityKey = identityKey; + } + } + + #endregion +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn.csproj b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn.csproj new file mode 100644 index 00000000000..bb1db212d74 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn.csproj @@ -0,0 +1,11 @@ + + + + library + net6.0 + + + + + + diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn.sln b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn.sln new file mode 100644 index 00000000000..c045ea994f6 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.5.002.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.Security.WebAuthn", "Tizen.Security.WebAuthn.csproj", "{CEC2F310-E4BA-4FDB-8B06-8AA73C006ABC}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {CEC2F310-E4BA-4FDB-8B06-8AA73C006ABC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {CEC2F310-E4BA-4FDB-8B06-8AA73C006ABC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {CEC2F310-E4BA-4FDB-8B06-8AA73C006ABC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {CEC2F310-E4BA-4FDB-8B06-8AA73C006ABC}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {52E8477B-782E-40D2-B5F2-9047EE144C1A} + EndGlobalSection +EndGlobal diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticationExtension.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticationExtension.cs new file mode 100644 index 00000000000..630461152db --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticationExtension.cs @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using static Interop; +using static Tizen.Security.WebAuthn.ErrorFactory; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Authenticator extension. + /// + /// 12 + public class AuthenticationExtension + { + /// + /// Initializes a new instance of the class. + /// + /// 12 + /// + /// Extension Identifier defined in the following registry: + /// https://www.iana.org/assignments/webauthn/webauthn.xhtml#webauthn-extension-ids + /// + /// Extension value. + public AuthenticationExtension(byte[] extensionId, byte[] extensionValue) + { + ExtensionId = extensionId; + ExtensionValue = extensionValue; + } + + internal AuthenticationExtension(WauthnAuthenticationExt ext) + { + ExtensionId = NullSafeMarshal.PtrToArray(ext.extensionId); + ExtensionValue = NullSafeMarshal.PtrToArray(ext.extensionValue); + } + + /// + /// Extension identifier. + /// + public byte[] ExtensionId { get; init; } + /// + /// Extension value. + /// + public byte[] ExtensionValue { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticationSelectionCriteria.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticationSelectionCriteria.cs new file mode 100644 index 00000000000..1f4714caa56 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticationSelectionCriteria.cs @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// Authenticator selection criteria. + /// + /// 12 + public class AuthenticationSelectionCriteria + { + /// + /// Initializes a new instance of the class. + /// + /// 12 + /// Authenticator attachment modality. + /// Specifies the extent to which the Relying Party desires to create a client-side discoverable credential. + /// Relying Parties SHOULD set it to true if, and only if, residentKey is set to required. + /// Specifies the Relying Party's requirements regarding user verification. + public AuthenticationSelectionCriteria( + AuthenticatorAttachment attachment, + ResidentKeyRequirement residentKey, + bool requireResidentKey, + UserVerificationRequirement userVerification) + { + Attachment = attachment; + ResidentKey = residentKey; + RequireResidentKey = requireResidentKey; + UserVerification = userVerification; + } + + /// + /// Authenticator attachment modality. + /// + public AuthenticatorAttachment Attachment { get; init; } + /// + /// The extent to which the Relying Party desires to create a client-side discoverable credential. + /// + public ResidentKeyRequirement ResidentKey { get; init; } + /// + /// Whether residentKey is required. + /// + public bool RequireResidentKey { get; init; } + /// + /// The Relying Party's requirements regarding user verification. + /// + public UserVerificationRequirement UserVerification { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Authenticator.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Authenticator.cs new file mode 100644 index 00000000000..68707c8b3a7 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Authenticator.cs @@ -0,0 +1,283 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.InteropServices; +using static Interop; +using static Tizen.Security.WebAuthn.ErrorFactory; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Public web authentication API. + /// + /// 12 + public static class Authenticator + { + private const int API_VERSION_NUMBER = 0x00000001; + private static bool _apiVersionSet = false; + private static bool _busy = false; + private static object _userData = null; + private static WauthnDisplayQrcodeCallback _qrCodeCallback; + private static WauthnMcOnResponseCallback _mcResponseCallback; + private static WauthnGaOnResponseCallback _gaResponseCallback; + private static WauthnUpdateLinkedDataCallback _linkedDataCallback; + private static WauthnMcCallbacks _wauthnMcCallbacks; + private static WauthnGaCallbacks _wauthnGaCallbacks; + + #region Public API + /// + /// Gets information on authenticator types that the client platform supports. + /// + /// 12 + /// http://tizen.org/feature/security.webauthn + /// An enum with the collection of all supported authenticator types. + /// The required feature is not supported. + public static AuthenticatorTransport SupportedAuthenticators() + { + int ret = Libwebauthn.SupportedAuthenticators(out uint supported); + CheckErrNThrow(ret, "Get supported authenticators"); + + return (AuthenticatorTransport)supported; + } + + /// + /// Makes a new web authentication credential and stores it to authenticator. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#sctn-createCredential + /// + /// 12 + /// http://tizen.org/privilege/bluetooth + /// http://tizen.org/privilege/internet + /// public + /// + /// http://tizen.org/feature/security.webauthn + /// http://tizen.org/feature/network.bluetooth.le + /// and at least one of the following: + /// http://tizen.org/feature/network.wifi + /// http://tizen.org/feature/network.ethernet + /// http://tizen.org/feature/network.telephony + /// + /// UTF-8 encoded JSON serialization of the client data. + /// Specifies the desired attributes of the to-be-created public key credential. + /// The callback functions to be invoked. + /// The required feature is not supported. + /// Required privilege is missing. + /// Input parameter is invalid. + /// Operation invalid in current state. + /// Canceled by a cancel request. + public static void MakeCredential(ClientData clientData, PubkeyCredCreationOptions options, MakeCredentialCallbacks callbacks) + { + CheckPreconditions(); + try + { + CheckNullNThrow(clientData); + CheckNullNThrow(clientData.JsonData); + CheckNullNThrow(options); + CheckNullNThrow(options.Rp); + CheckNullNThrow(options.User); + CheckNullNThrow(options.PubkeyCredParams); + CheckNullNThrow(callbacks); + CheckNullNThrow(callbacks.QrcodeCallback); + CheckNullNThrow(callbacks.ResponseCallback); + CheckNullNThrow(callbacks.LinkedDataCallback); + + // Create callback wrappers + WrapMcCallbacks(callbacks); + AuthenticatorStorage.SetDataForMakeCredential(clientData, options); + + int ret = Libwebauthn.MakeCredential( + AuthenticatorStorage.WauthnClientData, + AuthenticatorStorage.WauthnPubkeyCredCreationOptions, + _wauthnMcCallbacks); + CheckErrNThrow(ret, "Make Credential"); + } + catch + { + Cleanup(); + throw; + } + } + + /// + /// Gets assertion from the authenticator. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#sctn-getAssertion + /// + /// 12 + /// http://tizen.org/privilege/bluetooth + /// http://tizen.org/privilege/internet + /// public + /// + /// http://tizen.org/feature/security.webauthn + /// http://tizen.org/feature/network.bluetooth.le + /// and at least one of the following: + /// http://tizen.org/feature/network.wifi + /// http://tizen.org/feature/network.ethernet + /// http://tizen.org/feature/network.telephony + /// + /// UTF-8 encoded JSON serialization of the client data. + /// Specifies the desired attributes of the public key credential to discover. + /// The callback functions to be invoked. + /// The required feature is not supported. + /// Required privilege is missing. + /// Input parameter is invalid. + /// Operation invalid in current state. + /// Canceled by a cancel request. + public static void GetAssertion(ClientData clientData, PubkeyCredRequestOptions options, GetAssertionCallbacks callbacks) + { + CheckPreconditions(); + try + { + CheckNullNThrow(clientData); + CheckNullNThrow(clientData.JsonData); + CheckNullNThrow(options); + CheckNullNThrow(callbacks); + CheckNullNThrow(callbacks.QrcodeCallback); + CheckNullNThrow(callbacks.ResponseCallback); + CheckNullNThrow(callbacks.LinkedDataCallback); + + // Create callback wrappers + WrapGaCallbacks(callbacks); + AuthenticatorStorage.SetDataForGetAssertion(clientData, options); + + int ret = Libwebauthn.GetAssertion( + AuthenticatorStorage.WauthnClientData, + AuthenticatorStorage.WauthnPubkeyCredRequestOptions, + _wauthnGaCallbacks); + CheckErrNThrow(ret, "Get Assertion"); + } + catch + { + Cleanup(); + throw; + } + } + + /// + /// Stops the previous or call. + /// + /// 12 + /// http://tizen.org/feature/security.webauthn + /// The required feature is not supported. + /// Not allowed in the current context. + public static void Cancel() + { + int ret = Libwebauthn.Cancel(); + CheckErrNThrow(ret, "Cancel operation"); + } + + #endregion + #region Helper methods + + private static void SetApiVersion(int apiVersionNumber) + { + int ret = Libwebauthn.SetApiVersion(apiVersionNumber); + CheckErrNThrow(ret, "Set API version"); + _apiVersionSet = true; + } + private static void WrapMcCallbacks(MakeCredentialCallbacks callbacks) + { + _userData = callbacks.UserData; + + void qrCodeWrapper(string qrContents, IntPtr _) + { + callbacks.QrcodeCallback(qrContents, _userData); + } + + void onResponseWrapper(WauthnPubkeyCredentialAttestation pubkeyCred, WauthnError result, IntPtr _) + { + PubkeyCredAttestation pubkeyCredManaged = pubkeyCred is not null ? new(pubkeyCred) : null; + callbacks.ResponseCallback(pubkeyCredManaged, result, _userData); + + if (result != WauthnError.None) + Cleanup(); + } + + void linkedDataWrapper(IntPtr linkedData, WauthnError result, IntPtr _) + { + HybridLinkedData linkedDataManaged = linkedData != IntPtr.Zero ? new(Marshal.PtrToStructure(linkedData)) : null; + callbacks.LinkedDataCallback(linkedDataManaged, result, _userData); + + if (result != WauthnError.NoneAndWait) + Cleanup(); + } + + _qrCodeCallback = new WauthnDisplayQrcodeCallback(qrCodeWrapper); + _mcResponseCallback = new WauthnMcOnResponseCallback(onResponseWrapper); + _linkedDataCallback = new WauthnUpdateLinkedDataCallback(linkedDataWrapper); + + _wauthnMcCallbacks = new WauthnMcCallbacks(_qrCodeCallback, _mcResponseCallback, _linkedDataCallback); + } + + private static void WrapGaCallbacks(GetAssertionCallbacks callbacks) + { + _userData = callbacks.UserData; + + void qrCodeWrapper(string qrContents, IntPtr _) + { + callbacks.QrcodeCallback(qrContents, _userData); + } + + void onResponseWrapper(WauthnPubkeyCredentialAssertion pubkeyCred, WauthnError result, IntPtr _) + { + PubkeyCredAssertion pubkeyCredManaged = pubkeyCred is not null ? new(pubkeyCred) : null; + callbacks.ResponseCallback(pubkeyCredManaged, result, _userData); + + if (result != WauthnError.None) + Cleanup(); + } + + void linkedDataWrapper(IntPtr linkedData, WauthnError result, IntPtr _) + { + HybridLinkedData linkedDataManaged = linkedData != IntPtr.Zero ? new(Marshal.PtrToStructure(linkedData)) : null; + callbacks.LinkedDataCallback(linkedDataManaged, result, _userData); + + if (result != WauthnError.NoneAndWait) + Cleanup(); + } + _qrCodeCallback = new WauthnDisplayQrcodeCallback(qrCodeWrapper); + _gaResponseCallback = new WauthnGaOnResponseCallback(onResponseWrapper); + _linkedDataCallback = new WauthnUpdateLinkedDataCallback(linkedDataWrapper); + + _wauthnGaCallbacks = new WauthnGaCallbacks(_qrCodeCallback, _gaResponseCallback, _linkedDataCallback); + } + + private static void CheckPreconditions() + { + if (!_apiVersionSet) + SetApiVersion(API_VERSION_NUMBER); + if (_busy) + throw new InvalidOperationException("Authenticator busy"); + + _busy = true; + } + + private static void Cleanup() + { + _busy = false; + AuthenticatorStorage.Cleanup(); + } + + #endregion + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorAssertionResponse.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorAssertionResponse.cs new file mode 100644 index 00000000000..c8bc6723d9f --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorAssertionResponse.cs @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using static Interop; + +namespace Tizen.Security.WebAuthn +{ + /// + /// The response of GetAssertion(). + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#authenticatorassertionresponse + /// + /// 12 + public class AuthenticatorAssertionResponse + { + internal AuthenticatorAssertionResponse(WauthnAuthenticatorAssertionResponse wauthnResponse) + { + ClientDataJson = NullSafeMarshal.PtrToArray(wauthnResponse.clientDataJson); + AuthenticatorData = NullSafeMarshal.PtrToArray(wauthnResponse.attestationObject); + Signature = NullSafeMarshal.PtrToArray(wauthnResponse.signature); + UserHandle = NullSafeMarshal.PtrToArray(wauthnResponse.userHandle); + AttestationObject = NullSafeMarshal.PtrToArray(wauthnResponse.attestationObject); + } + + /// + /// JSON-compatible serialization of client data. + /// + public byte[] ClientDataJson { get; init; } + /// + /// The authenticator data contained within attestation_object. + /// For more information, refer to https://www.w3.org/TR/webauthn-3/#sctn-authenticator-data + /// + public byte[] AuthenticatorData { get; init; } + /// + /// The raw signature returned from the authenticator. + /// For more information, refer to https://www.w3.org/TR/webauthn-3/#sctn-op-get-assertion + /// + public byte[] Signature { get; init; } + /// + /// The user handle returned from the authenticator, + /// or null if the authenticator did not return a user handle. + /// + public byte[] UserHandle { get; init; } + /// + /// This OPTIONAL attribute contains an attestation object, + /// if the authenticator supports attestation in assertions. + /// + public byte[] AttestationObject { get; init; } + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorAttestationResponse.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorAttestationResponse.cs new file mode 100644 index 00000000000..e4209c00f52 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorAttestationResponse.cs @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using static Interop; + +namespace Tizen.Security.WebAuthn +{ + /// + /// The response of MakeCredential(). + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#authenticatorattestationresponse + /// + /// 12 + public class AuthenticatorAttestationResponse + { + internal AuthenticatorAttestationResponse(WauthnAuthenticatorAttestationResponse wauthnResponse) + { + ClientDataJson = NullSafeMarshal.PtrToArray(wauthnResponse.clientDataJson); + AttestationObject = NullSafeMarshal.PtrToArray(wauthnResponse.attestationObject); + Transports = (AuthenticatorTransport)wauthnResponse.transports; + AuthenticatorData = NullSafeMarshal.PtrToArray(wauthnResponse.authenticatorData); + SubjectPubkeyInfo = NullSafeMarshal.PtrToArray(wauthnResponse.subjectPubkeyInfo); + PubkeyAlg = wauthnResponse.pubkeyAlg; + } + + /// + /// JSON-compatible serialization of client data. + /// + public byte[] ClientDataJson { get; init; } + /// + /// The CBOR encoded Attestation Object to be returned to the RP. + /// + public byte[] AttestationObject { get; init; } + /// + /// To represent multiple transports, can be ORed multiple times. + /// + public AuthenticatorTransport Transports { get; init; } + /// + /// The authenticator data contained within attestation_object. + /// For more information, refer to https://www.w3.org/TR/webauthn-3/#sctn-authenticator-data + /// + public byte[] AuthenticatorData { get; init; } + /// + /// DER SubjectPublicKeyInfo of the new credential, or null if this is not available. + /// For more information, refer to https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.7 + /// + public byte[] SubjectPubkeyInfo { get; init; } + /// + /// The COSEAlgorithmIdentifier of the new credential. + /// + public CoseAlgorithm PubkeyAlg { get; init; } + + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorStorage.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorStorage.cs new file mode 100644 index 00000000000..a47c6718f89 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/AuthenticatorStorage.cs @@ -0,0 +1,370 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.InteropServices; +using static Interop; +using static Tizen.Security.WebAuthn.ErrorFactory; + +namespace Tizen.Security.WebAuthn +{ + internal static class AuthenticatorStorage + { + #region Internal unmanaged memory + private static UnmanagedMemory[] _credentialsIdUnmanagedDataArray; + private static UnmanagedMemory[] _credentialsIdUnmanagedConstBufferArray; + private static UnmanagedMemory[] _attestationFormatsUnmanagedDataArray; + private static UnmanagedMemory[] _attestationFormatsUnmanagedConstBufferArray; + private static UnmanagedMemory[] _extensionIdUnmanagedDataArray; + private static UnmanagedMemory[] _extensionIdUnmanagedConstBufferArray; + private static UnmanagedMemory[] _extensionValueUnmanagedDataArray; + private static UnmanagedMemory[] _extensionValueUnmanagedConstBufferArray; + private static UnmanagedMemory _jsonDataUnmanaged = new(); + private static UnmanagedMemory _jsonDataConstBufferUnmanaged = new(); + private static UnmanagedMemory _rpNameUnmanaged = new(); + private static UnmanagedMemory _rpIdUnmanaged = new(); + private static UnmanagedMemory _rpUnmanaged = new(); + private static UnmanagedMemory _userNameUnmanaged = new(); + private static UnmanagedMemory _userIdDataUnmanaged = new(); + private static UnmanagedMemory _userIdConstBufferUnmanaged = new(); + private static UnmanagedMemory _userDisplayNameUnmanaged = new(); + private static UnmanagedMemory _userUnmanaged = new(); + private static UnmanagedMemory _pubkeyCredParamsParametersUnmanaged = new(); + private static UnmanagedMemory _pubkeyCredParamsUnmanaged = new(); + private static UnmanagedMemory _credentialsDescriptorsUnmanaged = new(); + private static UnmanagedMemory _credentialsUnmanaged = new(); + private static UnmanagedMemory _authenticatorSelectionUnmanaged = new(); + private static UnmanagedMemory _hintsArrayUnmanaged = new(); + private static UnmanagedMemory _hintsUnmanaged = new(); + private static UnmanagedMemory _attestationFormatsArrayUnmanaged = new(); + private static UnmanagedMemory _attestationFormatsUnmanaged = new(); + private static UnmanagedMemory _extensionsArrayUnmanaged = new(); + private static UnmanagedMemory _extensionsUnmanaged = new(); + private static UnmanagedMemory _contactIdDataUnmanaged = new(); + private static UnmanagedMemory _contactIdUnmanaged = new(); + private static UnmanagedMemory _linkIdDataUnmanaged = new(); + private static UnmanagedMemory _linkIdUnmanaged = new(); + private static UnmanagedMemory _linkSecretDataUnmanaged = new(); + private static UnmanagedMemory _linkSecretUnmanaged = new(); + private static UnmanagedMemory _authenticatorPubkeyDataUnmanaged = new(); + private static UnmanagedMemory _authenticatorPubkeyUnmanaged = new(); + private static UnmanagedMemory _authenticatorNameDataUnmanaged = new(); + private static UnmanagedMemory _authenticatorNameUnmanaged = new(); + private static UnmanagedMemory _signatureDataUnmanaged = new(); + private static UnmanagedMemory _signatureUnmanaged = new(); + private static UnmanagedMemory _tunnelServerDomainDataUnmanaged = new(); + private static UnmanagedMemory _tunnelServerDomainUnmanaged = new(); + private static UnmanagedMemory _identityKeyDataUnmanaged = new(); + private static UnmanagedMemory _identityKeyUnmanaged = new(); + private static UnmanagedMemory _linkedDeviceUnmanaged = new(); + #endregion + + public static void SetDataForMakeCredential(ClientData clientData, PubkeyCredCreationOptions options) + { + CopyClientData(clientData); + CopyCredCreationOptions(options); + } + + public static void SetDataForGetAssertion(ClientData clientData, PubkeyCredRequestOptions options) + { + CopyClientData(clientData); + CopyCredRequestOptions(options); + } + + public static void Cleanup() + { + CleanupArray(_credentialsIdUnmanagedDataArray); + CleanupArray(_credentialsIdUnmanagedConstBufferArray); + CleanupArray(_attestationFormatsUnmanagedDataArray); + CleanupArray(_attestationFormatsUnmanagedConstBufferArray); + CleanupArray(_extensionIdUnmanagedDataArray); + CleanupArray(_extensionIdUnmanagedConstBufferArray); + CleanupArray(_extensionValueUnmanagedDataArray); + CleanupArray(_extensionValueUnmanagedConstBufferArray); + + _jsonDataUnmanaged.Dispose(); + _jsonDataConstBufferUnmanaged.Dispose(); + _rpNameUnmanaged.Dispose(); + _rpIdUnmanaged.Dispose(); + _rpUnmanaged.Dispose(); + _userNameUnmanaged.Dispose(); + _userIdConstBufferUnmanaged.Dispose(); + _userDisplayNameUnmanaged.Dispose(); + _userUnmanaged.Dispose(); + _pubkeyCredParamsParametersUnmanaged.Dispose(); + _pubkeyCredParamsUnmanaged.Dispose(); + _credentialsDescriptorsUnmanaged.Dispose(); + _credentialsUnmanaged.Dispose(); + _authenticatorSelectionUnmanaged.Dispose(); + _hintsArrayUnmanaged.Dispose(); + _hintsUnmanaged.Dispose(); + _attestationFormatsArrayUnmanaged.Dispose(); + _attestationFormatsUnmanaged.Dispose(); + _extensionsArrayUnmanaged.Dispose(); + _extensionsUnmanaged.Dispose(); + _contactIdDataUnmanaged.Dispose(); + _contactIdUnmanaged.Dispose(); + _linkIdDataUnmanaged.Dispose(); + _linkIdUnmanaged.Dispose(); + _linkSecretDataUnmanaged.Dispose(); + _linkSecretUnmanaged.Dispose(); + _authenticatorPubkeyDataUnmanaged.Dispose(); + _authenticatorPubkeyUnmanaged.Dispose(); + _authenticatorNameDataUnmanaged.Dispose(); + _authenticatorNameUnmanaged.Dispose(); + _signatureDataUnmanaged.Dispose(); + _signatureUnmanaged.Dispose(); + _tunnelServerDomainDataUnmanaged.Dispose(); + _tunnelServerDomainUnmanaged.Dispose(); + _identityKeyDataUnmanaged.Dispose(); + _identityKeyUnmanaged.Dispose(); + _linkedDeviceUnmanaged.Dispose(); + } + + private static void CopyClientData(ClientData clientData) + { + _jsonDataUnmanaged = UnmanagedMemory.PinArray(clientData.JsonData); + _jsonDataConstBufferUnmanaged = new UnmanagedMemory(new WauthnConstBuffer(_jsonDataUnmanaged, (nuint)clientData.JsonData.Length)); + WauthnClientData = new WauthnClientData(_jsonDataConstBufferUnmanaged, clientData.HashAlgo); + } + + private static void CopyCredCreationOptions(PubkeyCredCreationOptions options) + { + CopyRp(options.Rp); + CopyUser(options.User); + CopyCredParams(options.PubkeyCredParams); + CopyCredentials(options.ExcludeCredentials); + CopyAuthenticatorSelection(options.AuthenticatorSelection); + CopyHints(options.Hints); + CopyAttestationFormats(options.AttestationFormats); + CopyExtensions(options.Extensions); + CopyLinkedDevice(options.LinkedDevice); + + WauthnPubkeyCredCreationOptions = new WauthnPubkeyCredCreationOptions( + _rpUnmanaged, + _userUnmanaged, + _pubkeyCredParamsUnmanaged, + (nuint)options.Timeout, + _credentialsUnmanaged, + _authenticatorSelectionUnmanaged, + _hintsUnmanaged, + options.Attestation, + _attestationFormatsUnmanaged, + _extensionsUnmanaged, + _linkedDeviceUnmanaged); + } + + private static void CopyCredRequestOptions(PubkeyCredRequestOptions options) + { + CopyCredentials(options.AllowCredentials); + CopyHints(options.Hints); + CopyAttestationFormats(options.AttestationFormats); + CopyExtensions(options.Extensions); + CopyLinkedDevice(options.LinkedDevice); + WauthnPubkeyCredRequestOptions = new WauthnPubkeyCredRequestOptions( + (nuint)options.Timeout, + options.RpId, + _credentialsUnmanaged, + options.UserVerification, + _hintsUnmanaged, + options.Attestation, + _attestationFormatsUnmanaged, + _extensionsUnmanaged, + _linkedDeviceUnmanaged); + } + + private static void CopyRp(RelyingPartyEntity rp) + { + _rpNameUnmanaged = new UnmanagedMemory(rp.Name); + _rpIdUnmanaged = new UnmanagedMemory(rp.Id); + _rpUnmanaged = new UnmanagedMemory(new WauthnRpEntity(_rpNameUnmanaged, _rpIdUnmanaged)); + } + + private static void CopyUser(UserEntity user) + { + _userNameUnmanaged = new UnmanagedMemory(user.Name); + _userIdDataUnmanaged = UnmanagedMemory.PinArray(user.Id); + _userIdConstBufferUnmanaged = new UnmanagedMemory(new WauthnConstBuffer(_userIdDataUnmanaged, (nuint)user.Id.Length)); + _userDisplayNameUnmanaged = new UnmanagedMemory(user.DisplayName); + _userUnmanaged = new UnmanagedMemory(new WauthnUserEntity( + _userNameUnmanaged, + _userIdConstBufferUnmanaged, + _userDisplayNameUnmanaged)); + } + + private static void CopyCredParams(IEnumerable credParams) + { + if (credParams is null || !credParams.Any()) + return; + + WauthnPubkeyCredParam[] pubkeyCredParamStructArray = credParams.Select((PubkeyCredParam param) => new WauthnPubkeyCredParam(param.Type, param.Alg)).ToArray(); + _pubkeyCredParamsParametersUnmanaged = UnmanagedMemory.PinArray(pubkeyCredParamStructArray); + _pubkeyCredParamsUnmanaged = new UnmanagedMemory(new WauthnPubkeyCredParams((nuint)pubkeyCredParamStructArray.Length, _pubkeyCredParamsParametersUnmanaged)); + } + + private static void CopyCredentials(IEnumerable credentials) + { + if (credentials is null || !credentials.Any()) + return; + + var credentialsCount = credentials.Count(); + _credentialsIdUnmanagedDataArray = new UnmanagedMemory[credentialsCount]; + _credentialsIdUnmanagedConstBufferArray = new UnmanagedMemory[credentialsCount]; + var credentialsStructArray = new WauthnPubkeyCredDescriptor[credentialsCount]; + + for (int i = 0; i < credentialsCount; i++) + { + PubkeyCredDescriptor descriptor = credentials.ElementAt(i); + _credentialsIdUnmanagedDataArray[i] = UnmanagedMemory.PinArray(descriptor.Id); + var credentialIdUnmanagedConstBuffer = new UnmanagedMemory(new WauthnConstBuffer(_credentialsIdUnmanagedDataArray[i], (nuint)descriptor.Id.Length)); + _credentialsIdUnmanagedConstBufferArray[i] = credentialIdUnmanagedConstBuffer; + credentialsStructArray[i] = new WauthnPubkeyCredDescriptor(descriptor.Type, credentialIdUnmanagedConstBuffer, descriptor.Transport); + } + _credentialsDescriptorsUnmanaged = UnmanagedMemory.PinArray(credentialsStructArray); + _credentialsUnmanaged = new UnmanagedMemory(new WauthnPubkeyCredDescriptors((nuint)credentialsCount, _credentialsDescriptorsUnmanaged)); + } + + private static void CopyAuthenticatorSelection(AuthenticationSelectionCriteria selection) + { + if (selection is null) + return; + + _authenticatorSelectionUnmanaged = new UnmanagedMemory(new WauthnAuthenticationSelCri( + selection.Attachment, + selection.ResidentKey, + (byte)(selection.RequireResidentKey ? 1 : 0), + selection.UserVerification)); + } + + private static void CopyHints(IEnumerable hints) + { + if (hints is null || !hints.Any()) + return; + + int[] hintsArray = hints.Select((PubkeyCredHint hint) => (int)hint).ToArray(); + _hintsArrayUnmanaged = UnmanagedMemory.PinArray(hintsArray); + _hintsUnmanaged = new UnmanagedMemory(new WauthnPubkeyCredHints((nuint)hintsArray.Length, _hintsArrayUnmanaged)); + } + + private static void CopyAttestationFormats(IEnumerable attestationFormats) + { + if (attestationFormats is null || !attestationFormats.Any()) + return; + + var attestationFormatsCount = attestationFormats.Count(); + _attestationFormatsUnmanagedDataArray = new UnmanagedMemory[attestationFormatsCount]; + _attestationFormatsUnmanagedConstBufferArray = new UnmanagedMemory[attestationFormatsCount]; + var attestationFormatConstBufferStructArray = new WauthnConstBuffer[attestationFormatsCount]; + + + for (int i = 0; i < attestationFormatsCount; i++) + { + byte[] attestationFormat = attestationFormats.ElementAt(i); + _attestationFormatsUnmanagedDataArray[i] = UnmanagedMemory.PinArray(attestationFormat); + attestationFormatConstBufferStructArray[i] = new WauthnConstBuffer(_attestationFormatsUnmanagedDataArray[i], (nuint)attestationFormat.Length); + _attestationFormatsUnmanagedConstBufferArray[i] = new UnmanagedMemory(attestationFormatConstBufferStructArray[i]); + } + _attestationFormatsArrayUnmanaged = UnmanagedMemory.PinArray(attestationFormatConstBufferStructArray); + _attestationFormatsUnmanaged = new UnmanagedMemory(new WauthnAttestationFormats((nuint)attestationFormatsCount, _attestationFormatsArrayUnmanaged)); + } + + private static void CopyExtensions(IEnumerable extensions) + { + if (extensions is null || !extensions.Any()) + return; + + var extensionCount = extensions.Count(); + var extensionStructArray = new WauthnAuthenticationExt[extensionCount]; + _extensionIdUnmanagedDataArray = new UnmanagedMemory[extensionCount]; + _extensionIdUnmanagedConstBufferArray = new UnmanagedMemory[extensionCount]; + _extensionValueUnmanagedDataArray = new UnmanagedMemory[extensionCount]; + _extensionValueUnmanagedConstBufferArray = new UnmanagedMemory[extensionCount]; + + for (int i = 0; i < extensionCount; i++) + { + AuthenticationExtension ext = extensions.ElementAt(i); + _extensionIdUnmanagedDataArray[i] = UnmanagedMemory.PinArray(ext.ExtensionId); + var extensionIdUnmanagedConstBuffer = new UnmanagedMemory(new WauthnConstBuffer(_extensionIdUnmanagedDataArray[i], (nuint)ext.ExtensionId.Length)); + _extensionIdUnmanagedConstBufferArray[i] = extensionIdUnmanagedConstBuffer; + + _extensionValueUnmanagedDataArray[i] = UnmanagedMemory.PinArray(ext.ExtensionValue); + var extensionValueUnmanagedConstBuffer = new UnmanagedMemory(new WauthnConstBuffer(_extensionValueUnmanagedDataArray[i], (nuint)ext.ExtensionValue.Length)); + _extensionValueUnmanagedConstBufferArray[i] = extensionValueUnmanagedConstBuffer; + + extensionStructArray[i] = new WauthnAuthenticationExt(extensionIdUnmanagedConstBuffer, extensionValueUnmanagedConstBuffer); + } + _extensionsArrayUnmanaged = UnmanagedMemory.PinArray(extensionStructArray); + _extensionsUnmanaged = new UnmanagedMemory(new WauthnAuthenticationExts((nuint)extensionCount, _extensionsArrayUnmanaged)); + } + + private static void CopyLinkedDevice(HybridLinkedData linkedDevice) + { + if (linkedDevice is null) + return; + + _contactIdDataUnmanaged = UnmanagedMemory.PinArray(linkedDevice.ContactId); + _contactIdUnmanaged = new UnmanagedMemory(new WauthnConstBuffer(_contactIdDataUnmanaged, (nuint)linkedDevice.ContactId.Length)); + + _linkIdDataUnmanaged = UnmanagedMemory.PinArray(linkedDevice.LinkId); + _linkIdUnmanaged = new UnmanagedMemory(new WauthnConstBuffer(_linkIdDataUnmanaged, (nuint)linkedDevice.LinkId.Length)); + + _linkSecretDataUnmanaged = UnmanagedMemory.PinArray(linkedDevice.LinkSecret); + _linkSecretUnmanaged = new UnmanagedMemory(new WauthnConstBuffer(_linkSecretDataUnmanaged, (nuint)linkedDevice.LinkSecret.Length)); + + _authenticatorPubkeyDataUnmanaged = UnmanagedMemory.PinArray(linkedDevice.AuthenticatorPubkey); + _authenticatorPubkeyUnmanaged = new UnmanagedMemory(new WauthnConstBuffer(_authenticatorPubkeyDataUnmanaged, (nuint)linkedDevice.AuthenticatorPubkey.Length)); + + _authenticatorNameDataUnmanaged = UnmanagedMemory.PinArray(linkedDevice.AuthenticatorName); + _authenticatorNameUnmanaged = new UnmanagedMemory(new WauthnConstBuffer(_authenticatorNameDataUnmanaged, (nuint)linkedDevice.AuthenticatorName.Length)); + + _signatureDataUnmanaged = UnmanagedMemory.PinArray(linkedDevice.Signature); + _signatureUnmanaged = new UnmanagedMemory(new WauthnConstBuffer(_signatureDataUnmanaged, (nuint)linkedDevice.Signature.Length)); + + _tunnelServerDomainDataUnmanaged = UnmanagedMemory.PinArray(linkedDevice.TunnelServerDomain); + _tunnelServerDomainUnmanaged = new UnmanagedMemory(new WauthnConstBuffer(_tunnelServerDomainDataUnmanaged, (nuint)linkedDevice.TunnelServerDomain.Length)); + + _identityKeyDataUnmanaged = UnmanagedMemory.PinArray(linkedDevice.IdentityKey); + _identityKeyUnmanaged = new UnmanagedMemory(new WauthnConstBuffer(_identityKeyDataUnmanaged, (nuint)linkedDevice.IdentityKey.Length)); + + _linkedDeviceUnmanaged = new UnmanagedMemory(new WauthnHybridLinkedData( + _contactIdUnmanaged, + _linkIdUnmanaged, + _linkSecretUnmanaged, + _authenticatorPubkeyUnmanaged, + _authenticatorNameUnmanaged, + _signatureUnmanaged, + _tunnelServerDomainUnmanaged, + _identityKeyUnmanaged)); + + if (_linkedDeviceUnmanaged == IntPtr.Zero) + throw new TimeoutException("linked null"); + } + + public static void CleanupArray(UnmanagedMemory[] array) + { + if (array is null) + return; + foreach (var memory in array) + memory.Dispose(); + } + + public static WauthnClientData WauthnClientData { get; private set; } + public static WauthnPubkeyCredCreationOptions WauthnPubkeyCredCreationOptions { get; private set; } + public static WauthnPubkeyCredRequestOptions WauthnPubkeyCredRequestOptions { get; private set; } + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/ClientData.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/ClientData.cs new file mode 100644 index 00000000000..609cfb4e749 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/ClientData.cs @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using static Tizen.Security.WebAuthn.ErrorFactory; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Client data JSON. + /// + /// + /// Refer to the following W3C specification about how to encode jsonData. + /// https://www.w3.org/TR/webauthn-3/#collectedclientdata-json-compatible-serialization-of-client-data + /// + /// 12 + public class ClientData + { + /// + /// Initializes a new instance of the class. + /// + /// 12 + /// UTF-8 encoded JSON serialization of the client data. + /// Hash algorithm used to hash the JsonData property. + public ClientData(byte[] jsonData, HashAlgorithm hashAlgo) + { + JsonData = jsonData; + HashAlgo = hashAlgo; + } + + /// + /// UTF-8 encoded JSON serialization of the client data. + /// + public byte[] JsonData { get; init; } + /// + /// Hash algorithm used to hash the JsonData property. + /// + public HashAlgorithm HashAlgo{ get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AttestationPref.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AttestationPref.cs new file mode 100644 index 00000000000..72e82da87be --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AttestationPref.cs @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// WebAuthn attestation preference. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#enumdef-attestationconveyancepreference + /// + /// 12 + public enum AttestationPref + { + /// + /// Relying party not interested in authenticator attestation. + /// + None = 0, + /// + /// Indirect attestation preferred. + /// + Indirect = 1, + /// + /// Direct attestation preferred. + /// + Direct = 2, + /// + /// Enterprise attestation preferred. + /// + Enterprise = 3, + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AuthenticatorAttachment.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AuthenticatorAttachment.cs new file mode 100644 index 00000000000..ca0b6d85a07 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AuthenticatorAttachment.cs @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// WebAuthn authentication attachment value. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#enumdef-authenticatorattachment + /// + /// 12 + public enum AuthenticatorAttachment + { + /// + /// No attachment. + /// + None = 0, + /// + /// Platform attachment. + /// + Platform = 1, + /// + /// Cross-platform attachment. + /// + CrossPlatform = 2, + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AuthenticatorTransport.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AuthenticatorTransport.cs new file mode 100644 index 00000000000..1204281e79b --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/AuthenticatorTransport.cs @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; + +namespace Tizen.Security.WebAuthn +{ + /// + /// WebAuthn authenticator transports. + /// + /// + /// Multiple transport values can be combined using bit-wise operation. + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#enum-transport + /// + /// 12 + [Flags] + public enum AuthenticatorTransport : uint + { + /// + /// No transport specified. + /// + None = 0x00000000, + /// + /// Authenticator reachable over USB. + /// + Usb = 0x00000001, + /// + /// Authenticator reachable over NFC. + /// + Nfc = 0x00000002, + /// + /// Authenticator reachable over BLE. + /// + Ble = 0x00000004, + /// + /// Authenticator reachable using Smart Card. + /// + Smartcard = 0x00000008, + /// + /// Authenticator reachable using a combination of mechanisms. + /// + Hybrid = 0x00000010, + /// + /// Authenticator reachable using a client device-specific transport. + /// + Internal = 0x00000020, + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/CoseAlgorithm.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/CoseAlgorithm.cs new file mode 100644 index 00000000000..cf88cde620d --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/CoseAlgorithm.cs @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// WebAuthn COSE (CBOR Object Signing and Encryption) algorithms. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#sctn-alg-identifier + /// + /// 12 + public enum CoseAlgorithm + { + /// + /// ES256 + /// + EcdsaP256WithSha256 = -7, + /// + /// ES384 + /// + EcdsaP384WithSha384 = -35, + /// + /// ES512 + /// + EcdsaP521WithSha512 = -36, + /// + /// EdDSA + /// + Eddsa = -8, + /// + /// PS256 + /// + RsaPssWithSha256 = -37, + /// + /// PS384 + /// + RsaPssWithSha384 = -38, + /// + /// PS512 + /// + RsaPssWithSha512 = -39, + /// + /// RS256 + /// + RsaSsaPkcs1V1_5WithSha256 = -257, + /// + /// RS384 + /// + RsaSsaPkcs1V1_5WithSha384 = -258, + /// + /// RS512 + /// + RsaSsaPkcs1V1_5WithSha512 = -259, + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/HashAlogithm.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/HashAlogithm.cs new file mode 100644 index 00000000000..1ca2a480726 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/HashAlogithm.cs @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// WebAuthn hash algorithms. + /// Currently one hash algorithm is used, namely "SHA-256". + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#collectedclientdata-hash-of-the-serialized-client-data + /// + /// 12 + public enum HashAlgorithm + { + /// + /// SHA-256 + /// + Sha256 = 1, + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/PubkeyCredHint.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/PubkeyCredHint.cs new file mode 100644 index 00000000000..cc09494f162 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/PubkeyCredHint.cs @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// WebAuthn public key credential hint value. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#enumdef-publickeycredentialhints + /// + /// 12 + public enum PubkeyCredHint + { + /// + /// None. + /// + None = 0, + /// + /// Physical security key. + /// + SecurityKey = 1, + /// + /// Platform authenticator attached to a client device. + /// + ClientDevice = 2, + /// + /// General-purpose authenticator. + /// + Hybrid = 3, // Hybrid + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/PubkeyCredType.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/PubkeyCredType.cs new file mode 100644 index 00000000000..6a4207a46d5 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/PubkeyCredType.cs @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// WebAuthn credential type. + /// Currently one credential type is defined, namely "public-key". + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#enumdef-publickeycredentialtype + /// + /// 12 + public enum PubkeyCredType + { + /// + /// Public-key. + /// + PublicKey = 1, + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/ResidentKeyRequirement.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/ResidentKeyRequirement.cs new file mode 100644 index 00000000000..8def5ff56bf --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/ResidentKeyRequirement.cs @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// WebAuthn resident key requirement value. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#enum-residentKeyRequirement + /// + /// 12 + public enum ResidentKeyRequirement + { + /// + /// None. + /// + None = 0, + /// + /// Resident key discouraged. + /// + Discouraged = 1, + /// + /// Resident key preferred. + /// + Preferred = 2, + /// + /// Resident key required. + /// + Required = 3, + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/UserVerificationRequirement.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/UserVerificationRequirement.cs new file mode 100644 index 00000000000..9052bd771da --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/UserVerificationRequirement.cs @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// WebAuthn user verification requirement value. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#enumdef-userverificationrequirement + /// + /// 12 + public enum UserVerificationRequirement + { + /// + /// None. + /// + None = 0, + /// + /// User verification required. + /// + Required = 1, + /// + /// User verification preferred. + /// + Preferred = 2, + /// + /// User verification discouraged. + /// + Discouraged = 3, + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/WauthnError.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/WauthnError.cs new file mode 100644 index 00000000000..abd7e816349 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/Enums/WauthnError.cs @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using Tizen.Internals.Errors; +using static Tizen.Security.WebAuthn.ErrorFactory; + +namespace Tizen.Security.WebAuthn +{ + /// + /// WebAuthn error code. + /// + public enum WauthnError + { + /// + /// Successful. + /// + None = ErrorCode.None, + /// + /// Unknown error. + /// + Unknown = ErrorCode.Unknown, + /// + /// Invalid function parameter. + /// + InvalidParameter = ErrorCode.InvalidParameter, + /// + /// Permission denied. + /// + PermissionDenied = ErrorCode.PermissionDenied, + /// + /// Not supported operation. + /// + NotSupported = ErrorCode.NotSupported, + /// + /// Memory error. + /// + OutOfMemory = ErrorCode.OutOfMemory, + /// + /// Canceled by cancel request. + /// + Canceled = ErrorCode.Canceled, + /// + /// Timeout. + /// + TimedOut = ErrorCode.TimedOut, + /// + /// Authenticator is uncontactable. + /// + ConnectionRefused = ErrorCode.ConnectionRefused, + /// + /// Successful and needs to wait for other result. + /// + NoneAndWait = TizenErrorWebAuthn | 0x01, + /// + /// Not allowed in the current context. + /// + NotAllowed = TizenErrorWebAuthn | 0x02, + /// + /// Invalid State. + /// + InvalidState = TizenErrorWebAuthn | 0x03, + /// + /// Encoding operation failed. + /// + EncodingFailed = TizenErrorWebAuthn | 0x04, + /// + /// Socket error. + /// + Socket = TizenErrorWebAuthn | 0x05, + /// + /// Socket operation on non-socket error. + /// + NoSuchDevice = TizenErrorWebAuthn | 0x06, + /// + /// Socket access denied. + /// + AccessDenied = TizenErrorWebAuthn | 0x07, + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/ErrorFactory.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/ErrorFactory.cs new file mode 100644 index 00000000000..0015d130d9c --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/ErrorFactory.cs @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; +using System.Runtime.CompilerServices; +using Tizen.Internals.Errors; + +namespace Tizen.Security.WebAuthn +{ + internal static class ErrorFactory + { + internal const int TizenErrorWebAuthn = -0x03100000; + private const string LogTag = "Tizen.Security.WebAuthn"; + + internal static void CheckErrNThrow(int err, string msg) + { + string fullMessage = $"[{LogTag}] {msg}, error={ErrorFacts.GetErrorMessage(err)}"; + + switch (err) + { + case (int)WauthnError.None: + return; + case (int)WauthnError.InvalidParameter: + throw new ArgumentException(fullMessage); + case (int)WauthnError.PermissionDenied: + throw new UnauthorizedAccessException(fullMessage); + case (int)WauthnError.NotSupported: + throw new NotSupportedException(fullMessage); + case (int)WauthnError.Canceled: + throw new OperationCanceledException(fullMessage); + case (int)WauthnError.TimedOut: + throw new TimeoutException(fullMessage); + default: + throw new InvalidOperationException(fullMessage); + } + } + + internal static void CheckNullNThrow(object obj, [CallerArgumentExpression("obj")] string name = null) + { + if (obj is null) + throw new ArgumentNullException(name); + } + } +} + diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/GetAssertionCallbacks.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/GetAssertionCallbacks.cs new file mode 100644 index 00000000000..b3a79daa60b --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/GetAssertionCallbacks.cs @@ -0,0 +1,101 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Callback function list used to get assertion with . + /// + /// 12 + public class GetAssertionCallbacks + { + /// + /// Initializes a new instance of the class. + /// + /// + /// Provided callbacks MUST NOT THROW. + /// + /// 12 + /// + /// Callback function for displaying QR code. + /// The qr_contents are encoded as you can see in the encodeQRContents() function of the + /// FIDO specification: + /// https://fidoalliance.org/specs/fido-v2.2-rd-20230321/fido-client-to-authenticator-protocol-v2.2-rd-20230321.html#hybrid-qr-initiated. + /// The qr_contents is encoded like "FIDO:/0254318383..........7406596245". + /// The image to be displayed shall be created from qr_contents + /// with media vision API (). + /// If the request does not need to display a QR code + /// then this callback function won't be invoked. + /// + /// + /// Callback function for getting the final response. + /// Invoked when the response for the GetAssertion request need to be returned. + /// The result of the GetAssertion request may be one of the following: + /// * if the request is completed well, + /// * if the request is cancelled by a Cancel() request. + /// * if the server entered invalid state. Known causes: + /// - proxy issues, + /// - reached the limit of credentials stored by the authenticator. + /// * if the request times out. Known causes: + /// - authenticator does not respond during state assisted transactions due to + /// lack of push notifications support (e.g. missing Google Account). + /// + /// + /// Callback function for getting the updated linked device data. May be called multiple times. + /// Invoked when the response for the request + /// needs to be returned. The result of this request may be one of the following: + /// * if the request is completed well, + /// * if the request is cancelled by a Cancel() request. + /// * if the server entered invalid state. Known causes: + /// - proxy issues, + /// - reached the limit of credentials stored by the authenticator. + /// * if the request times out. Known causes: + /// - authenticator does not respond during state assisted transactions due to + /// lack of push notifications support (e.g. missing Google Account). + /// + /// User data to be passed to , and . + public GetAssertionCallbacks( + Action qrcodeCallback, + Action responseCallback, + Action linkedDataCallback, + object userData) + { + QrcodeCallback = qrcodeCallback; + ResponseCallback = responseCallback; + LinkedDataCallback = linkedDataCallback; + UserData = userData; + } + + /// + /// Callback function for displaying QR code. + /// + public Action QrcodeCallback { get; init; } + /// + /// Callback function for getting the final response. + /// + public Action ResponseCallback { get; init; } + /// + /// Callback function for getting the updated linked device data. + /// + public Action LinkedDataCallback { get; init; } + /// + /// User data to be passed to , and . + /// + public object UserData { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/HybridLinkedData.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/HybridLinkedData.cs new file mode 100644 index 00000000000..f12d8852cc0 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/HybridLinkedData.cs @@ -0,0 +1,124 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using static Interop; +using static Tizen.Security.WebAuthn.ErrorFactory; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Linked device data. + /// + /// + /// The linked device data is used for state assisted transaction. + /// From the successful QR initiated transaction, the linked device data + /// might be returned from an authenticator to a webauthn client + /// via or . + /// Then the client can store the linked device data and use it in the next call + /// for or . + /// Then the stated assisted transaction will start instead of QR initiated transaction. + /// + /// For more information, find a section with the keyword, "linking map", + /// from the following specification. + /// https://fidoalliance.org/specs/fido-v2.2-rd-20230321/fido-client-to-authenticator-protocol-v2.2-rd-20230321.html + /// + /// For more information about state assisted transaction, refer to the following. + /// https://fidoalliance.org/specs/fido-v2.2-rd-20230321/fido-client-to-authenticator-protocol-v2.2-rd-20230321.html#hybrid-state-assisted + /// + /// 12 + public class HybridLinkedData + { + /// + /// Initializes a new instance of the class. + /// + /// + /// More information on the CBOR format can be found in the following specification: + /// https://www.rfc-editor.org/rfc/rfc8949.html + /// + /// CBOR:"1". + /// CBOR:"2". + /// CBOR:"3". + /// CBOR:"4". + /// CBOR:"5". + /// CBOR:"6". + /// Domain String of tunnel server. + /// Identity Key created during QR initiated transaction. + public HybridLinkedData( + byte[] contactId, + byte[] linkId, + byte[] linkSecret, + byte[] authenticatorPubkey, + byte[] authenticatorName, + byte[] signature, + byte[] tunnelServerDomain, + byte[] identityKey) + { + ContactId = contactId; + LinkId = linkId; + LinkSecret = linkSecret; + AuthenticatorPubkey = authenticatorPubkey; + AuthenticatorName = authenticatorName; + Signature = signature; + TunnelServerDomain = tunnelServerDomain; + IdentityKey = identityKey; + } + + internal HybridLinkedData(WauthnHybridLinkedData linkedData) + { + ContactId = NullSafeMarshal.PtrToArray(linkedData.contactId); + LinkId = NullSafeMarshal.PtrToArray(linkedData.linkId); + LinkSecret = NullSafeMarshal.PtrToArray(linkedData.linkSecret); + AuthenticatorPubkey = NullSafeMarshal.PtrToArray(linkedData.authenticatorPubkey); + AuthenticatorName = NullSafeMarshal.PtrToArray(linkedData.authenticatorName); + Signature = NullSafeMarshal.PtrToArray(linkedData.signature); + TunnelServerDomain = NullSafeMarshal.PtrToArray(linkedData.tunnelServerDomain); + IdentityKey = NullSafeMarshal.PtrToArray(linkedData.identityKey); + } + + /// + /// CBOR:"1". + /// + public byte[] ContactId { get; init; } + /// + /// CBOR:"3". + /// + public byte[] LinkId { get; init; } + /// + /// CBOR:"3". + /// + public byte[] LinkSecret { get; init; } + /// + /// CBOR:"4". + /// + public byte[] AuthenticatorPubkey { get; init; } + /// + /// CBOR:"5". + /// + public byte[] AuthenticatorName { get; init; } + /// + /// CBOR:"6". + /// + public byte[] Signature { get; init; } + /// + /// Domain String of tunnel server. + /// + public byte[] TunnelServerDomain { get; init; } + /// + /// Identity Key created during QR initiated transaction. + /// + public byte[] IdentityKey { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/MakeCredentialCallbacks.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/MakeCredentialCallbacks.cs new file mode 100644 index 00000000000..9d3ecf19485 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/MakeCredentialCallbacks.cs @@ -0,0 +1,101 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Callback function list used to make credential with . + /// + /// 12 + public class MakeCredentialCallbacks + { + /// + /// Initializes a new instance of the class. + /// + /// + /// Provided callbacks MUST NOT THROW. + /// + /// 12 + /// + /// Callback function for displaying QR code. + /// The qr_contents are encoded as you can see in the encodeQRContents() function of the + /// FIDO specification: + /// https://fidoalliance.org/specs/fido-v2.2-rd-20230321/fido-client-to-authenticator-protocol-v2.2-rd-20230321.html#hybrid-qr-initiated. + /// The qr_contents is encoded like "FIDO:/0254318383..........7406596245". + /// The image to be displayed shall be created from qr_contents + /// with media vision API (). + /// If the request does not need to display a QR code + /// then this callback function won't be invoked. + /// + /// + /// Callback function for getting the final response. + /// Invoked when the response for the request + /// needs to be returned. The result of this request may be one of the following: + /// * if the request is completed well, + /// * if the request is cancelled by a Cancel() request. + /// * if the server entered invalid state. Known causes: + /// - proxy issues, + /// - reached the limit of credentials stored by the authenticator. + /// * if the request times out. Known causes: + /// - authenticator does not respond during state assisted transactions due to + /// lack of push notifications support (e.g. missing Google Account). + /// + /// + /// Callback function for getting the updated linked device data. May be called multiple times. + /// Invoked when the response for the get assertion request needs to be returned. + /// The result of the MakeCredential request may be one of the following: + /// * if the request is completed well, + /// * if the request is cancelled by a Cancel() request. + /// * if the server entered invalid state. Known causes: + /// - proxy issues, + /// - reached the limit of credentials stored by the authenticator. + /// * if the request times out. Known causes: + /// - authenticator does not respond during state assisted transactions due to + /// lack of push notifications support (e.g. missing Google Account). + /// + /// User data to be passed to , and . + public MakeCredentialCallbacks( + Action qrcodeCallback, + Action responseCallback, + Action linkedDataCallback, + object userData) + { + QrcodeCallback = qrcodeCallback; + ResponseCallback = responseCallback; + LinkedDataCallback = linkedDataCallback; + UserData = userData; + } + + /// + /// Callback function for displaying QR code. + /// + public Action QrcodeCallback { get; init; } + /// + /// Callback function for getting the final response. + /// + public Action ResponseCallback { get; init; } + /// + /// Callback function for getting the updated linked device data. + /// + public Action LinkedDataCallback { get; init; } + /// + /// User data to be passed to , and . + /// + public object UserData { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/NullSafeMarshal.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/NullSafeMarshal.cs new file mode 100644 index 00000000000..36dc2f6d90e --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/NullSafeMarshal.cs @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; +using System.Runtime.InteropServices; +using static Interop; + +namespace Tizen.Security.WebAuthn +{ + internal static class NullSafeMarshal + { + internal static byte[] PtrToArray(IntPtr ptr) + { + if (ptr == IntPtr.Zero) + return null; + + return Marshal.PtrToStructure(ptr).ToArray(); + } + } +} + diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredAssertion.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredAssertion.cs new file mode 100644 index 00000000000..292a30e66a0 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredAssertion.cs @@ -0,0 +1,102 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; +using System.Collections.Generic; +using System.Runtime.InteropServices; +using static Interop; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Public key credential response for . + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#iface-pkcredential + /// https://www.w3.org/TR/webauthn-3/#sctn-credentialrequestoptions-extension + /// + /// 12 + public class PubkeyCredAssertion + { + internal PubkeyCredAssertion(WauthnPubkeyCredentialAssertion assertion) + { + Id = NullSafeMarshal.PtrToArray(assertion.id); + Type = assertion.type; + RawId = NullSafeMarshal.PtrToArray(assertion.rawId); + Response = assertion.response != IntPtr.Zero ? new AuthenticatorAssertionResponse( + Marshal.PtrToStructure(assertion.response)) : + null; + AuthenticatorAttachment = assertion.authenticatorAttachment; + + if (assertion.extensions != IntPtr.Zero) + { + var wauthnExts = Marshal.PtrToStructure(assertion.extensions); + var extensionsArray = new AuthenticationExtension[wauthnExts.size]; + unsafe + { + var extPtr = (WauthnAuthenticationExt*)wauthnExts.descriptors; + for (int i = 0; i < (int)wauthnExts.size; i++) + { + var wauthnExt = Marshal.PtrToStructure(new IntPtr(extPtr + i * sizeof(WauthnAuthenticationExt))); + extensionsArray[i] = new AuthenticationExtension(wauthnExt); + } + } + Extensions = extensionsArray; + } + else + { + Extensions = null; + } + + LinkedDevice = assertion.linkedDevice != IntPtr.Zero ? + new HybridLinkedData(Marshal.PtrToStructure(assertion.linkedDevice)) : + null; + } + + /// + /// The base64url encoding of credential’s identifier. + /// + public byte[] Id { get; init; } + /// + /// The credential’s type. + /// + public PubkeyCredType Type { get; init; } + /// + /// The raw value of credential’s identifier. + /// + public byte[] RawId { get; init; } + /// + /// Authenticator's response. + /// + public AuthenticatorAssertionResponse Response { get; init; } + /// + /// Authenticator attachment modality. + /// + public AuthenticatorAttachment AuthenticatorAttachment { get; init; } + /// + /// The results of processing client extensions requested by the Relying Party + /// upon the Relying Party's invocation of GetAssertion(). (optional) + /// + public IEnumerable Extensions { get; init; } + /// + /// Linked Device Connection Info (optional). + /// If not null, the caller has to store this value and use this + /// in the next transaction to invoke state assisted transaction. + /// + public HybridLinkedData LinkedDevice { get; init; } + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredAttestation.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredAttestation.cs new file mode 100644 index 00000000000..12368be29f2 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredAttestation.cs @@ -0,0 +1,102 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; +using System.Collections.Generic; +using System.Runtime.InteropServices; +using static Interop; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Public key credential response for . + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#iface-pkcredential + /// https://www.w3.org/TR/webauthn-3/#sctn-credentialcreationoptions-extension + /// + /// 12 + public class PubkeyCredAttestation + { + internal PubkeyCredAttestation(WauthnPubkeyCredentialAttestation attestation) + { + Id = NullSafeMarshal.PtrToArray(attestation.id); + Type = attestation.type; + RawId = NullSafeMarshal.PtrToArray(attestation.rawId); + Response = attestation.response != IntPtr.Zero ? + new AuthenticatorAttestationResponse(Marshal.PtrToStructure(attestation.response)) : + null; + AuthenticatorAttachment = attestation.authenticatorAttachment; + + if (attestation.extensions != IntPtr.Zero) + { + var wauthnExts = Marshal.PtrToStructure(attestation.extensions); + var extensionsArray = new AuthenticationExtension[wauthnExts.size]; + unsafe + { + var extPtr = (WauthnAuthenticationExt*)wauthnExts.descriptors; + for (int i = 0; i < (int)wauthnExts.size; i++) + { + var wauthnExt = Marshal.PtrToStructure(new IntPtr(extPtr + i * sizeof(WauthnAuthenticationExt))); + extensionsArray[i] = new AuthenticationExtension(wauthnExt); + } + } + Extensions = extensionsArray; + } + else + { + Extensions = null; + } + + LinkedDevice = attestation.linkedDevice != IntPtr.Zero ? + new HybridLinkedData(Marshal.PtrToStructure(attestation.linkedDevice)) : + null; + } + + /// + /// The base64url encoding of credential’s identifier. + /// + public byte[] Id { get; init; } + /// + /// The credential’s type. + /// + public PubkeyCredType Type { get; init; } + /// + /// The raw value of credential’s identifier. + /// + public byte[] RawId { get; init; } + /// + /// Authenticator's response. + /// + public AuthenticatorAttestationResponse Response { get; init; } + /// + /// Authenticator attachment modality. + /// + public AuthenticatorAttachment AuthenticatorAttachment { get; init; } + /// + /// The results of processing client extensions requested by the Relying Party + /// upon the Relying Party's invocation of MakeCredential(). (optional) + /// + public IEnumerable Extensions { get; init; } + /// + /// Linked Device Connection Info (optional). + /// If not null, the caller has to store this value and use thi + /// in the next transaction to invoke state assisted transaction. + /// + public HybridLinkedData LinkedDevice { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredCreationOptions.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredCreationOptions.cs new file mode 100644 index 00000000000..9f812041609 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredCreationOptions.cs @@ -0,0 +1,153 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System.Collections.Generic; +using static Tizen.Security.WebAuthn.ErrorFactory; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Make credential options. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#dictdef-publickeycredentialcreationoptions + /// + /// 12 + public class PubkeyCredCreationOptions + { + /// + /// Initializes a new instance of the class. + /// + /// /// 12 + /// Contains a name and an identifier for the Relying Party responsible for the request. + /// Contains names and an identifier for the user account performing the registration. + /// + /// Lists the key types and signature algorithms the Relying Party supports, + /// ordered from most preferred to least preferred. + /// + /// + /// Specifies a time, in milliseconds, + /// that the Relying Party is willing to wait for the call to complete. + /// This is treated as a hint, and MAY be overridden by the client. + /// The value, '0', means no timeout is set. (optional) + /// + /// + /// The Relying Party SHOULD use this argument to list any existing credentials mapped + /// to this user account (as identified by user.id). (optional) + /// + /// + /// The Relying Party MAY use his argument to specify capabilities and settings that the + /// authenticator MUST or SHOULD satisfy to participate in this operation. (optional) + /// + /// + /// Contains zero or more elements from to + /// guide the user agent in interacting with the user. (optional) + /// + /// + /// The Relying Party MAY use this argument to specify a preference regarding attestation conveyance. + /// The default value is . (optional) + /// + /// + /// The Relying Party MAY use this argument to specify a preference regarding the attestation + /// statement format used by the authenticator. The default value is the empty list, which + /// indicates no preference. (optional) + /// + /// + /// The Relying Party MAY use this argument to provide client extension inputs requesting + /// additional processing by the client and authenticator. (optional) + /// + /// + /// Linked Device Connection Info. Optional. + /// If not null, the state assisted transaction will start. + /// + public PubkeyCredCreationOptions( + RelyingPartyEntity rp, + UserEntity user, + IEnumerable pubkeyCredParams, + ulong timeout = 0, + IEnumerable excludeCredentials = null, + AuthenticationSelectionCriteria authenticatorSelection = null, + IEnumerable hints = null, + AttestationPref attestation = AttestationPref.None, + IEnumerable attestationFormats = null, + IEnumerable extensions = null, + HybridLinkedData linkedDevice = null) + { + Rp = rp; + User = user; + PubkeyCredParams = pubkeyCredParams; + Timeout = timeout; + ExcludeCredentials = excludeCredentials; + AuthenticatorSelection = authenticatorSelection; + Hints = hints; + Attestation = attestation; + AttestationFormats = attestationFormats; + Extensions = extensions; + LinkedDevice = linkedDevice; + } + + /// + /// Contains a name and an identifier for the Relying Party responsible for the request. + /// + public RelyingPartyEntity Rp { get; init; } + /// + /// Contains names and an identifier for the user account performing the registration. + /// + public UserEntity User { get; init; } + /// + /// Lists the key types and signature algorithms the Relying Party supports, + /// ordered from most preferred to least preferred. + /// + public IEnumerable PubkeyCredParams { get; init; } + /// + /// Specifies a time, in milliseconds, that the Relying Party is willing to wait for the + /// call to complete. This is treated as a hint, and MAY be overridden by the client. + /// The value, '0', means no timeout is set. + /// + public ulong Timeout { get; init; } + /// + /// Lists any existing credentials mapped to this user account (as identified by user.id). + /// + public IEnumerable ExcludeCredentials { get; init; } + /// + /// Specifies capabilities and settings that the authenticator MUST or SHOULD satisfy + /// to participate in this operation. + /// + public AuthenticationSelectionCriteria AuthenticatorSelection { get; init; } + /// + /// Contains zero or more elements from to + /// guide the user agent in interacting with the user. + /// + public IEnumerable Hints { get; init; } + /// + /// Specifies a preference regarding attestation conveyance. + /// + public AttestationPref Attestation { get; init; } + /// + /// Specifies a preference regarding the attestation statement format used by the authenticator. + /// + public IEnumerable AttestationFormats { get; init; } + /// + /// Client extension inputs requesting additional processing by the client and authenticator. + /// + public IEnumerable Extensions { get; init; } + /// + /// Linked Device Connection Info. If not null, the state assisted transaction will start. + /// + public HybridLinkedData LinkedDevice { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredDescriptor.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredDescriptor.cs new file mode 100644 index 00000000000..f1a6523318b --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredDescriptor.cs @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using static Tizen.Security.WebAuthn.ErrorFactory; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Public key credential descriptor. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#dictdef-publickeycredentialdescriptor + /// + /// 12 + public class PubkeyCredDescriptor + { + /// + /// Initializes a new instance of the class. + /// + /// The type of the public key credential. + /// The credential ID of the public key credential. + /// To represent multiple transports, this enum can be ORed multiple times. + public PubkeyCredDescriptor(PubkeyCredType type, byte[] id, AuthenticatorTransport transport) + { + Type = type; + Id = id; + Transport = transport; + } + /// + /// The type of the public key credential. + /// + public PubkeyCredType Type { get; init; } + /// + /// The credential ID of the public key credential. + /// + public byte[] Id { get; init; } + /// + /// Transport types. + /// + public AuthenticatorTransport Transport { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredParam.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredParam.cs new file mode 100644 index 00000000000..762b1195b55 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredParam.cs @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// Parameter for credential generation. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#dictdef-publickeycredentialparameters + /// + /// 12 + public class PubkeyCredParam + { + /// + /// Initializes a new instance of the class. + /// + /// 12 + /// Well-known credential type specifying a credential to create. + /// Well-known COSE algorithm specifying the algorithm to use for the credential. + public PubkeyCredParam(PubkeyCredType type, CoseAlgorithm alg) + { + Type = type; + Alg = alg; + } + /// + /// Well-known credential type specifying a credential to create. + /// + public PubkeyCredType Type { get; init; } + /// + /// Well-known COSE algorithm specifying the algorithm to use for the credential. + /// + public CoseAlgorithm Alg { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredRequestOptions.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredRequestOptions.cs new file mode 100644 index 00000000000..3df50f33ae0 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/PubkeyCredRequestOptions.cs @@ -0,0 +1,133 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System.Collections.Generic; + +namespace Tizen.Security.WebAuthn +{ + /// + /// Get assertion options. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#dictionary-assertion-options + /// + /// 12 + public class PubkeyCredRequestOptions + { + /// + /// Initializes a new instance of the class. + /// + /// 12 + /// + /// Specifies a time, in milliseconds, that the Relying Party is willing to wait for the + /// call to complete. This is treated as a hint, and MAY be overridden by the client. + /// The value, '0', means no timeout is set. (optional) + /// + /// + /// Specifies the RP ID claimed by the Relying Party. (optional) + /// + /// + /// Used by the client to find authenticators eligible for this authentication ceremony. (optional) + /// + /// + /// Specifies the Relying Party's requirements regarding user verification for the + /// GetAssertion() operation. The default value is . (optional) + /// + /// + /// Contains zero or more elements from to + /// guide the user agent in interacting with the user. (optional) + /// + /// + /// The Relying Party MAY use this argument to specify a preference regarding + /// attestation conveyance. The default value is . (optional) + /// + /// + /// The Relying Party MAY use this argument to specify a preference regarding the attestation + /// statement format used by the authenticator. The default value is the empty list, + /// which indicates no preference. (optional) + /// + /// + /// The Relying Party MAY use this argument to provide client extension inputs requesting + /// additional processing by the client and authenticator. (optional) + /// + /// + /// Linked Device Connection Info. Optional. + /// If not null, the state assisted transaction will start. + /// + public PubkeyCredRequestOptions( + ulong timeout = 0, + string rpId = null, + IEnumerable allowCredentials = null, + UserVerificationRequirement userVerification = UserVerificationRequirement.Preferred, + IEnumerable hints = null, + AttestationPref attestation = AttestationPref.None, + IEnumerable attestationFormats = null, + IEnumerable extensions = null, + HybridLinkedData linkedDevice = null) + { + Timeout = timeout; + RpId = rpId; + AllowCredentials = allowCredentials; + UserVerification = userVerification; + Hints = hints; + Attestation = attestation; + AttestationFormats = attestationFormats; + Extensions = extensions; + LinkedDevice = linkedDevice; + } + + /// + /// Specifies a time, in milliseconds, that the Relying Party is willing to wait for the + /// call to complete. This is treated as a hint, and MAY be overridden by the client. + /// The value, '0', means no timeout is set. + /// + public ulong Timeout { get; init; } + /// + /// Specifies the RP ID claimed by the Relying Party. + /// + public string RpId { get; init; } + /// + /// Used by the client to find authenticators eligible for this authentication ceremony. + /// + public IEnumerable AllowCredentials { get; init; } + /// + /// Specifies the Relying Party's requirements regarding user verification for the GetAssertion() operation. + /// + public UserVerificationRequirement UserVerification { get; init; } + /// + /// Contains zero or more elements from to + /// guide the user agent in interacting with the user. + /// + public IEnumerable Hints { get; init; } + /// + /// Specifies a preference regarding attestation conveyance. + /// + public AttestationPref Attestation { get; init; } + /// + /// Specifies a preference regarding the attestation statement format used by the authenticator. + /// + public IEnumerable AttestationFormats { get; init; } + /// + /// Client extension inputs requesting additional processing by the client and authenticator. + /// + public IEnumerable Extensions { get; init; } + /// + /// Linked Device Connection Info. If not null, the state assisted transaction will start. + /// + public HybridLinkedData LinkedDevice { get; init; } + } +} \ No newline at end of file diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/RelyingPartyEntity.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/RelyingPartyEntity.cs new file mode 100644 index 00000000000..f00fdec4fc6 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/RelyingPartyEntity.cs @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +namespace Tizen.Security.WebAuthn +{ + /// + /// Relying Party entity. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#dictdef-publickeycredentialrpentity + /// + /// 12 + public class RelyingPartyEntity + { + /// + /// Initializes a new instance of the class. + /// + /// 12 + /// The name of RP. + /// The RPID. + public RelyingPartyEntity(string name, string id) + { + Name = name; + Id = id; + } + + /// + /// The name of RP. + /// + public string Name { get; init; } + /// + /// The RPID. + /// + public string Id { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/UnmanagedMemory.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/UnmanagedMemory.cs new file mode 100644 index 00000000000..2ada7c055f6 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/UnmanagedMemory.cs @@ -0,0 +1,86 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using System; +using System.Runtime.InteropServices; + +namespace Tizen.Security.WebAuthn +{ + internal class UnmanagedMemory : IDisposable + { + private bool _disposed = false; + IntPtr _memory = IntPtr.Zero; + + public UnmanagedMemory() + {} + + public UnmanagedMemory(object obj) + { + _memory = Marshal.AllocHGlobal(Marshal.SizeOf(obj)); + Marshal.StructureToPtr(obj, _memory, false); + } + + + public UnmanagedMemory(string obj) + { + _memory = Marshal.StringToHGlobalAnsi(obj); + } + + unsafe private UnmanagedMemory(IntPtr pinned, int size) + { + _memory = Marshal.AllocHGlobal(size); + Buffer.MemoryCopy((void*)pinned, (void*)_memory, size, size); + } + + ~UnmanagedMemory() + { + Dispose(false); + } + + public static UnmanagedMemory PinArray(T[] array) where T : struct + { + if (array is null) + return new UnmanagedMemory(); + + GCHandle pinnedArray = GCHandle.Alloc(array, GCHandleType.Pinned); + var ret = new UnmanagedMemory(pinnedArray.AddrOfPinnedObject(), Marshal.SizeOf(array[0]) * array.Length); + pinnedArray.Free(); + return ret; + } + + public static implicit operator IntPtr(UnmanagedMemory pinned) + { + return pinned._memory; + } + + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + protected virtual void Dispose(bool disposing) + { + if (_disposed) + return; + if (_memory != IntPtr.Zero) + Marshal.FreeHGlobal(_memory); + + _memory = IntPtr.Zero; + _disposed = true; + } + } +} diff --git a/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/UserEntity.cs b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/UserEntity.cs new file mode 100644 index 00000000000..6eb65e12145 --- /dev/null +++ b/src/Tizen.Security.WebAuthn/Tizen.Security.WebAuthn/UserEntity.cs @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2024 Samsung Electronics Co., Ltd All Rights Reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License + */ + +using static Tizen.Security.WebAuthn.ErrorFactory; + +namespace Tizen.Security.WebAuthn +{ + /// + /// User entity. + /// + /// + /// Refer to the following W3C specification for more information. + /// https://www.w3.org/TR/webauthn-3/#dictdef-publickeycredentialuserentity + /// + /// 12 + public class UserEntity + { + /// + /// Initializes a new instance of the class. + /// + /// 12 + /// A human-palatable name for the entity. + /// + /// The ID of the user account. An ID is a byte sequence with a maximum size of 64 bytes, + /// and is not meant to be displayed to the user. + /// + /// A human-palatable name for the user account, intended only for display. + public UserEntity(string name, byte[] id, string displayName) + { + Name = name; + Id = id; + DisplayName = displayName; + } + + /// + /// A human-palatable name for the entity. + /// + public string Name { get; init; } + /// + /// The ID of the user account. + /// + public byte[] Id { get; init; } + /// + /// A human-palatable name for the user account, intended only for display. + /// + public string DisplayName { get; init; } + } +} diff --git a/src/Tizen.Security.WebAuthn/doc/api/Tizen.Security.WebAuthn.md b/src/Tizen.Security.WebAuthn/doc/api/Tizen.Security.WebAuthn.md new file mode 100644 index 00000000000..1a66141c89b --- /dev/null +++ b/src/Tizen.Security.WebAuthn/doc/api/Tizen.Security.WebAuthn.md @@ -0,0 +1,21 @@ +--- +uid: Tizen.Security.WebAuthn +summary: The Web Authentication module provides a C# API enabling the creation and use of + strong, attested, scoped, public key-based credentials by web applications, for the + purpose of strongly authenticating users +remarks: *content +--- +## Overview +It provides an [Authenticator](xref:Tizen.Security.WebAuthn.Authenticator) class containing methods for creating public key-based credentials +([Authenticator.MakeCredential()](xref:Tizen.Security.WebAuthn.Authenticator.MakeCredential(Tizen.Security.WebAuthn.ClientData,Tizen.Security.WebAuthn.PubkeyCredCreationOptions,Tizen.Security.WebAuthn.MakeCredentialCallbacks))) and using them ([Authenticator.GetAssertion()](xref:Tizen.Security.WebAuthn.Authenticator.GetAssertion(Tizen.Security.WebAuthn.ClientData,Tizen.Security.WebAuthn.PubkeyCredRequestOptions,Tizen.Security.WebAuthn.GetAssertionCallbacks))). Both these operations are performed asynchronously. Callbacks passed as arguments are used to notify about the progress +or when user's interaction is necessary. Due to significant amount of time required to complete both +requests, cancelation is also possible with the help of Authenticator.Cancel(). The module also +provides a variety of data types based on W3C Web Authentication API (https://www.w3.org/TR/webauthn-3/) +used to control the credential creation and assertion process. + +## Related features +This module is related with the following features: + * http://tizen.org/feature/security.webauthn + * http://tizen.org/feature/network.bluetooth.le + * and network connection features (http://tizen.org/feature/network.wifi, http://tizen.org/feature/network.ethernet, http://tizen.org/feature/network.telephony) + From 2a2cdf7f8ee93c2d199a58ff87398363e2684780 Mon Sep 17 00:00:00 2001 From: hjhun <36876573+hjhun@users.noreply.github.com> Date: Fri, 20 Sep 2024 11:03:54 +0900 Subject: [PATCH 099/198] [Tizen.Core] Fix double free issues (#6335) * [Tizen.Core] Fix double free issues The received object in the callback function should not be released. Signed-off-by: Hwankyu Jhun * Prevent double free using an internal property Signed-off-by: Hwankyu Jhun --------- Signed-off-by: Hwankyu Jhun --- src/Tizen.Core/Tizen.Core/ChannelObject.cs | 9 ++++++++- src/Tizen.Core/Tizen.Core/Event.cs | 1 + src/Tizen.Core/Tizen.Core/Task.cs | 1 + 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Tizen.Core/Tizen.Core/ChannelObject.cs b/src/Tizen.Core/Tizen.Core/ChannelObject.cs index 64a35b975af..98730fa1952 100644 --- a/src/Tizen.Core/Tizen.Core/ChannelObject.cs +++ b/src/Tizen.Core/Tizen.Core/ChannelObject.cs @@ -55,12 +55,14 @@ public ChannelObject(int id, object data) Id = id; Data = data; IsUsed = false; + IsDestroyable = true; } internal ChannelObject(IntPtr handle) { _handle = handle; IsUsed = false; + IsDestroyable = true; } /// @@ -128,6 +130,8 @@ public string Sender { } } + internal bool IsDestroyable { set; get; } + internal bool IsUsed { set; get; } internal IntPtr Handle { get { return _handle; } } @@ -152,7 +156,10 @@ protected virtual void Dispose(bool disposing) _dataMap.TryRemove(id, out var data); } - Interop.LibTizenCore.TizenCoreChannel.ObjectDestroy(_handle); + if (IsDestroyable) + { + Interop.LibTizenCore.TizenCoreChannel.ObjectDestroy(_handle); + } _handle = IntPtr.Zero; } } diff --git a/src/Tizen.Core/Tizen.Core/Event.cs b/src/Tizen.Core/Tizen.Core/Event.cs index d9fc25b184b..b0a473dd5e6 100644 --- a/src/Tizen.Core/Tizen.Core/Event.cs +++ b/src/Tizen.Core/Tizen.Core/Event.cs @@ -68,6 +68,7 @@ private bool EventHandlerCallback(IntPtr eventData, IntPtr userData) using (var eventObject = new EventObject(eventData)) { EventReceived?.Invoke(this, new EventReceivedEventArgs(eventObject)); + eventObject.Handle = IntPtr.Zero; } return true; } diff --git a/src/Tizen.Core/Tizen.Core/Task.cs b/src/Tizen.Core/Tizen.Core/Task.cs index 1e8b52299ae..0be1f06fd5e 100644 --- a/src/Tizen.Core/Tizen.Core/Task.cs +++ b/src/Tizen.Core/Tizen.Core/Task.cs @@ -567,6 +567,7 @@ private static void NativeChannelReceiveCallback(IntPtr nativeObject, IntPtr use { var eventArgs = new ChannelReceivedEventArgs(channelObject); receiver.InvokeEventHandler(null, eventArgs); + channelObject.IsDestroyable = false; } } } From 118857b6b4afb92db7eed9100ef58e30901576a4 Mon Sep 17 00:00:00 2001 From: hjhun <36876573+hjhun@users.noreply.github.com> Date: Fri, 20 Sep 2024 13:04:19 +0900 Subject: [PATCH 100/198] [Tizen.Core] Fix memory leak (#6336) The problem is that if the setter of ChannelObject's Data Property is called twice in a row, the previous data will not be removed. To prevent this, this patch is made it so that when the setter is called, the previous data is erased. Signed-off-by: Hwankyu Jhun --- src/Tizen.Core/Tizen.Core/ChannelObject.cs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/Tizen.Core/Tizen.Core/ChannelObject.cs b/src/Tizen.Core/Tizen.Core/ChannelObject.cs index 98730fa1952..cc967effb7f 100644 --- a/src/Tizen.Core/Tizen.Core/ChannelObject.cs +++ b/src/Tizen.Core/Tizen.Core/ChannelObject.cs @@ -17,6 +17,7 @@ using System; using System.Collections.Concurrent; using System.Runtime.InteropServices; +using System.Security.Cryptography; namespace Tizen.Core { @@ -30,7 +31,7 @@ public class ChannelObject : IDisposable private bool _disposed = false; private static readonly ConcurrentDictionary _dataMap = new ConcurrentDictionary(); private static readonly object _dataLock = new object(); - private static int _dataId = 0; + private static int _dataId = 1; /// /// Constructor for creating a new channel object with specified ID and data. @@ -109,8 +110,19 @@ public object Data set { int id; + Interop.LibTizenCore.TizenCoreChannel.ObjectGetData(_handle, out IntPtr handle); + if (handle != IntPtr.Zero) + { + id = (int)handle; + _dataMap.TryRemove(id, out var _); + } + lock (_dataLock) { + if (_dataId + 1 < 0) + { + _dataId = 1; + } id = _dataId++; } _dataMap[id] = value; From 590a9a8a8ef5d0b5ed47a4edf398f1aa864539d8 Mon Sep 17 00:00:00 2001 From: hjhun <36876573+hjhun@users.noreply.github.com> Date: Fri, 20 Sep 2024 13:43:02 +0900 Subject: [PATCH 101/198] [Tizen.Core] Fix managing native handle of Event (#6337) The native handle should not be null before calling Dispose() method. Signed-off-by: Hwankyu Jhun --- src/Tizen.Core/Tizen.Core/Event.cs | 2 +- src/Tizen.Core/Tizen.Core/Task.cs | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/Tizen.Core/Tizen.Core/Event.cs b/src/Tizen.Core/Tizen.Core/Event.cs index b0a473dd5e6..89c3d84af03 100644 --- a/src/Tizen.Core/Tizen.Core/Event.cs +++ b/src/Tizen.Core/Tizen.Core/Event.cs @@ -135,7 +135,7 @@ public void Emit(EventObject eventObject) eventObject.Handle = IntPtr.Zero; } - internal IntPtr Handle { get { return _handle; } set { _handle = value; } } + internal IntPtr Handle { get { return _handle; } } internal IntPtr Source { get; set; } internal int Id { get; set; } diff --git a/src/Tizen.Core/Tizen.Core/Task.cs b/src/Tizen.Core/Tizen.Core/Task.cs index 0be1f06fd5e..5b05fbb1e58 100644 --- a/src/Tizen.Core/Tizen.Core/Task.cs +++ b/src/Tizen.Core/Tizen.Core/Task.cs @@ -402,7 +402,7 @@ public void AddEvent(Event coreEvent) throw new ArgumentNullException(nameof(coreEvent)); } - if (coreEvent.Handle == IntPtr.Zero) + if (coreEvent.Source != IntPtr.Zero) { throw new ArgumentException("The event is already added"); } @@ -428,7 +428,6 @@ public void AddEvent(Event coreEvent) } coreEvent.Source = handle; - coreEvent.Handle = IntPtr.Zero; } } From c8675ca167dc60e7405c0196d04f72519e1f377b Mon Sep 17 00:00:00 2001 From: hjhun <36876573+hjhun@users.noreply.github.com> Date: Fri, 20 Sep 2024 21:13:03 +0900 Subject: [PATCH 102/198] [Tizen.Core] Add missing descriptions related to Exception (#6338) * [Tizen.Core] Add missing descriptions related to Exception Signed-off-by: Hwankyu Jhun * Separate try catch blocks Signed-off-by: Hwankyu Jhun --------- Signed-off-by: Hwankyu Jhun --- src/Tizen.Core/Tizen.Core/Channel.cs | 1 + src/Tizen.Core/Tizen.Core/ChannelObject.cs | 1 + src/Tizen.Core/Tizen.Core/Event.cs | 6 ++++++ src/Tizen.Core/Tizen.Core/EventObject.cs | 1 + src/Tizen.Core/Tizen.Core/Task.cs | 24 +++++++++++++++++++--- 5 files changed, 30 insertions(+), 3 deletions(-) diff --git a/src/Tizen.Core/Tizen.Core/Channel.cs b/src/Tizen.Core/Tizen.Core/Channel.cs index 402710595c5..0079e83e7e7 100644 --- a/src/Tizen.Core/Tizen.Core/Channel.cs +++ b/src/Tizen.Core/Tizen.Core/Channel.cs @@ -30,6 +30,7 @@ public class Channel : IDisposable /// Constructor for creating a new channel with a sender and a receiver. /// /// Thrown when out of memory. + /// Thrown when failed because of an invalid operation. /// /// /// diff --git a/src/Tizen.Core/Tizen.Core/ChannelObject.cs b/src/Tizen.Core/Tizen.Core/ChannelObject.cs index cc967effb7f..a721c60018b 100644 --- a/src/Tizen.Core/Tizen.Core/ChannelObject.cs +++ b/src/Tizen.Core/Tizen.Core/ChannelObject.cs @@ -39,6 +39,7 @@ public class ChannelObject : IDisposable /// The ID. /// The data object. /// Thrown when out of memory. + /// Thrown when failed because of an invalid operation. /// /// /// diff --git a/src/Tizen.Core/Tizen.Core/Event.cs b/src/Tizen.Core/Tizen.Core/Event.cs index 89c3d84af03..21755d97df4 100644 --- a/src/Tizen.Core/Tizen.Core/Event.cs +++ b/src/Tizen.Core/Tizen.Core/Event.cs @@ -34,6 +34,7 @@ public class Event : IDisposable /// Constructor for creating a new event instance. /// /// Thrown when out of memory. + /// Thrown when failed because of an invalid operation. /// /// /// @@ -98,6 +99,7 @@ private bool EventHandlerCallback(IntPtr eventData, IntPtr userData) /// /// The event object instance. /// Thrown when the argument is null. + /// Thrown when failed because of an invalid operation. /// /// If the event is not added to the task, the emitted event object will be pended until the event is added to the task. /// @@ -131,6 +133,10 @@ public void Emit(EventObject eventObject) } Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreEvent.Emit(_handle, eventObject.Handle); + if (error == Interop.LibTizenCore.ErrorCode.InvalidParameter) + { + error = Interop.LibTizenCore.ErrorCode.InvalidContext; + } TCoreErrorFactory.CheckAndThrownException(error, "Failed to emit event object"); eventObject.Handle = IntPtr.Zero; } diff --git a/src/Tizen.Core/Tizen.Core/EventObject.cs b/src/Tizen.Core/Tizen.Core/EventObject.cs index 804a7e08a30..9012bc9094a 100644 --- a/src/Tizen.Core/Tizen.Core/EventObject.cs +++ b/src/Tizen.Core/Tizen.Core/EventObject.cs @@ -38,6 +38,7 @@ public class EventObject : IDisposable /// The ID. /// The data object. /// Thrown when out of memory. + /// Thrown when failed because of an invalid operation. /// /// /// diff --git a/src/Tizen.Core/Tizen.Core/Task.cs b/src/Tizen.Core/Tizen.Core/Task.cs index 5b05fbb1e58..40ed62cea8e 100644 --- a/src/Tizen.Core/Tizen.Core/Task.cs +++ b/src/Tizen.Core/Tizen.Core/Task.cs @@ -48,6 +48,7 @@ public class Task : IDisposable /// The ID of the task. /// Thrown when the is invalid or a Task with that ID already exists. /// Thrown when out of memory. + /// Thrown when failed because of an invalid operation. /// /// The constructor throws an exception when the id already exists. /// By default, the task creates a thread. However, if the is "main", a thread is not created. @@ -594,9 +595,26 @@ internal static Task Spawn(string id) return null; } - var task = new Task(id); - task.Run(); - return task; + try + { + var task = new Task(id); + task.Run(); + return task; + } + catch (ArgumentException) + { + Log.Error("ArgumentException occurs"); + } + catch (OutOfMemoryException) + { + Log.Error("OutOfMemoryException occurs"); + } + catch (InvalidOperationException) + { + Log.Error("InvalidOperationException occurs"); + } + + return null; } /// From 235cf3f66ae9f209e4868620a7b0abec3b7c4237 Mon Sep 17 00:00:00 2001 From: hjhun <36876573+hjhun@users.noreply.github.com> Date: Wed, 25 Sep 2024 10:19:29 +0900 Subject: [PATCH 103/198] [Core] Remove wrong descriptions (#6348) The Run() & Quit() methods of Task do not throw InvalidOperationException. Signed-off-by: Hwankyu Jhun --- src/Tizen.Core/Tizen.Core/Task.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/Tizen.Core/Tizen.Core/Task.cs b/src/Tizen.Core/Tizen.Core/Task.cs index 40ed62cea8e..a0bbf61fb74 100644 --- a/src/Tizen.Core/Tizen.Core/Task.cs +++ b/src/Tizen.Core/Tizen.Core/Task.cs @@ -633,7 +633,6 @@ public bool Running { /// Runs the main loop of the task. /// /// Thrown when the unmanaged handle is invalid. - /// Thrown when failed because of an invalid operation. /// /// /// @@ -653,7 +652,6 @@ public void Run() /// Quits the main loop of the task. /// /// Thrown when the unmanaged handle is invalid. - /// Thrown when failed because of an invalid operation. /// /// This function can be called from any thread. /// It requests the task to finish the current iteration of its loop and stop running. From 60647d931ed314259d312449dc1cf3981f79d800 Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Wed, 25 Sep 2024 13:52:57 +0900 Subject: [PATCH 104/198] [WebRTC] Improve documentation (#6347) --- .../WebRTC/MediaCameraSource.cs | 4 ++-- .../WebRTC/MediaCustomSource.cs | 5 +++- .../WebRTC/MediaFileSource.cs | 2 +- .../WebRTC/MediaMicrophoneSource.cs | 2 +- .../WebRTC/MediaNullSource.cs | 6 +++-- ...MediaPacketBufferStatusChangedEventArgs.cs | 4 ++-- .../WebRTC/MediaPacketSource.cs | 2 +- .../WebRTC/MediaPacketSourceConfiguration.cs | 4 ++-- .../WebRTC/MediaScreenSource.cs | 2 +- .../WebRTC/MediaStreamTrack.cs | 6 ++--- .../WebRTC/MediaTestSource.cs | 2 +- .../WebRTC/WebRTC.cs | 24 +++++++++---------- ...WebRTCDataChannelErrorOccurredEventArgs.cs | 2 +- .../WebRTC/WebRTCEnums.cs | 7 +++--- .../WebRTC/WebRTCFrameEncodedEventArgs.cs | 2 +- .../WebRTC/WebRTCTrackAddedEventArgs.cs | 2 +- 16 files changed, 41 insertions(+), 35 deletions(-) diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaCameraSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaCameraSource.cs index 50a34111a76..2efc12409cb 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaCameraSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaCameraSource.cs @@ -21,7 +21,7 @@ namespace Tizen.Multimedia.Remoting { /// - /// Represents a camera source. + /// Represents a media source that makes video data using camera device internally. /// /// The camera privilege(http://tizen.org/privilege/camera) is required. /// @@ -36,7 +36,7 @@ public sealed class MediaCameraSource : MediaSource public MediaCameraSource() : base(MediaType.Video) {} /// - /// Gets or sets the camera device id. + /// Gets or sets the camera device id that identifies each camera device. /// /// A value that specifies the camera device id. /// MediaSource is not attached yet. diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaCustomSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaCustomSource.cs index 4f42fd930f1..112beb5a5d3 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaCustomSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaCustomSource.cs @@ -22,8 +22,11 @@ namespace Tizen.Multimedia.Remoting { /// - /// Represents a audio, video custom source. + /// Represents a media source that makes audio, video data internally. /// + /// + /// This supports the product infrastructure and is not intended to be used directly from application code. + /// /// /// /// 9 diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaFileSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaFileSource.cs index 40e6ea36f08..4cc04bb1b7b 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaFileSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaFileSource.cs @@ -21,7 +21,7 @@ namespace Tizen.Multimedia.Remoting { /// - /// Represents a media source with contents read from a file. + /// Represents a media source that reads media data from a file. /// /// /// Depending on where the source file is located either the media storage privilege (http://tizen.org/privilege/mediastorage) is required or
diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaMicrophoneSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaMicrophoneSource.cs index 8823ef89ef1..7c0cf06f7ef 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaMicrophoneSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaMicrophoneSource.cs @@ -21,7 +21,7 @@ namespace Tizen.Multimedia.Remoting { /// - /// Represents a microphone source. + /// Represents a media source that makes audio data using microphone. /// /// The recorder privilege(http://tizen.org/privilege/recorder) is required. /// diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaNullSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaNullSource.cs index cdd1d34c45f..586aede9c94 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaNullSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaNullSource.cs @@ -21,7 +21,9 @@ namespace Tizen.Multimedia.Remoting { - /// Represents a null source. + /// + /// Represents a media source that only receives media streams from peer. + /// /// /// If you add this source, WebRTC only receives media stream.
/// is set by default. @@ -84,7 +86,7 @@ public void SetTransceiverCodec(MediaType type, TransceiverCodec codec) } /// - /// Retrieves the supported transceiver codecs. + /// Retrieves the supported transceiver codecs for receiving media stream. /// /// The media type. /// The supported transceiver codecs. diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketBufferStatusChangedEventArgs.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketBufferStatusChangedEventArgs.cs index 2f293e478b7..50a93a2cf95 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketBufferStatusChangedEventArgs.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketBufferStatusChangedEventArgs.cs @@ -31,14 +31,14 @@ internal MediaPacketBufferStatusChangedEventArgs(uint sourceId, MediaPacketBuffe } /// - /// Gets the source ID. + /// Gets the source ID of media packet. /// /// The source ID. /// 9 public uint SourceId { get; } /// - /// Gets the media packet buffer status. + /// Gets the media packet buffer status that indicates underrun or overflow. /// /// The media packet buffer status. /// 9 diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSource.cs index 09fea0058ed..8f31f186b2c 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSource.cs @@ -23,7 +23,7 @@ namespace Tizen.Multimedia.Remoting { /// - /// Represents a media packet source. + /// Represents a media source that wraps media data into MediaPacket. /// /// /// diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSourceConfiguration.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSourceConfiguration.cs index d411a01fad1..3e0edbded23 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSourceConfiguration.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaPacketSourceConfiguration.cs @@ -20,7 +20,7 @@ namespace Tizen.Multimedia.Remoting { /// - /// Provides means to configure properties and handle events for . + /// Provides means to configure properties and handle event for . /// /// /// 9 @@ -35,7 +35,7 @@ internal MediaPacketSourceConfiguration(MediaPacketSource owner) } /// - /// Occurs when the buffer underruns or overflows. + /// Occurs when the status of buffer is underruns or overflows. /// /// The event handler will be executed on an internal thread. /// 9 diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaScreenSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaScreenSource.cs index 391a13a5aa3..ad51dfb8fe0 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaScreenSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaScreenSource.cs @@ -21,7 +21,7 @@ namespace Tizen.Multimedia.Remoting { /// - /// Represents a screen source. + /// Represents a media source to share screen data. /// /// /// MediaScreenSource is not allowed to be used by third-party applications due to the security reasons. (Since Tizen 7.0) diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaStreamTrack.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaStreamTrack.cs index be62bebf236..fcd12909121 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaStreamTrack.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaStreamTrack.cs @@ -21,7 +21,7 @@ namespace Tizen.Multimedia.Remoting { /// - /// Provides the ability to control audio/video track. + /// Provides the ability to control audio or video track from peer. /// /// 9 public sealed class MediaStreamTrack : IDisplayable @@ -38,7 +38,7 @@ internal MediaStreamTrack(WebRTC webRtc, MediaType type, uint trackId) } /// - /// Gets the the of media stream track. + /// Gets the type of media stream track. /// /// /// 9 @@ -55,7 +55,7 @@ private void ReplaceDisplay(Display newDisplay) } /// - /// Gets or sets the display to show remote video. + /// Gets or sets the display to show video data from peer. /// /// A that specifies the display. /// diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/MediaTestSource.cs b/src/Tizen.Multimedia.Remoting/WebRTC/MediaTestSource.cs index d3226b83c7d..a7c514770db 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/MediaTestSource.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/MediaTestSource.cs @@ -21,7 +21,7 @@ namespace Tizen.Multimedia.Remoting { /// - /// Represents an audio or a video test source. + /// Represents a media source that makes test audio or video stream. /// /// /// diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs index 0590d0f0faa..a6d3ce2857e 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTC.cs @@ -129,7 +129,7 @@ internal void ValidateNotDisposed() #endregion /// - /// Starts the WebRTC. + /// Starts the WebRTC with specific media source. /// /// /// The WebRTC must be in the state.
@@ -150,7 +150,7 @@ public void Start() } /// - /// Starts the WebRTC asynchronously. + /// Starts the WebRTC asynchronously with specific media source. /// /// /// The WebRTC must be in the state.
@@ -228,7 +228,7 @@ public void Stop() } /// - /// Creates SDP offer asynchronously to start a new WebRTC connection to a remote peer. + /// Creates SDP(Session Description Protocol) offer asynchronously to start a new WebRTC connection to a remote peer. /// /// /// The WebRTC must be in the or (Since API Level 12) @@ -267,7 +267,7 @@ public async Task CreateOfferAsync() } /// - /// Creates SDP answer asynchronously with option to an offer received from a remote peer. + /// Creates SDP(Session Description Protocol) answer asynchronously with option to an offer received from a remote peer. /// /// /// The WebRTC must be in the or (Since API Level 12) @@ -354,7 +354,7 @@ public string GetLocalDescription() } /// - /// Sets the session description of the remote peer's current offer or answer. + /// Sets the offer or answer session description from the current remote peer. /// /// /// The WebRTC must be in the or (Since API Level 12) @@ -378,7 +378,7 @@ public void SetRemoteDescription(string description) } /// - /// Gets the session description of the remote peer's current offer or answer. + /// Gets the offer or answer session description from the current remote peer. /// /// The remote session description string /// The WebRTC has already been disposed. @@ -445,7 +445,7 @@ public void AddIceCandidates(IEnumerable iceCandidates) } /// - /// Adds media source. + /// Adds media source to the current WebRTC. /// /// /// This method does not throw state exception anymore(Since API Level 12). It can be called in any state.
@@ -491,7 +491,7 @@ public void AddSource(MediaSource source) } /// - /// Adds media sources. + /// Adds media sources from the current WebRTC. /// /// /// This method does not throw state exception anymore(Since API Level 12). It can be called in any state.
@@ -538,7 +538,7 @@ public void AddSources(params MediaSource[] sources) } /// - /// Removes media source. + /// Removes media source from the current WebRTC. /// /// /// This method does not throw state exception anymore(Since API Level 12). It can be called in any state.
@@ -571,7 +571,7 @@ public void RemoveSource(MediaSource source) } /// - /// Removes media sources. + /// Removes media sources from the current WebRTC. /// /// /// This method does not throw state exception anymore(Since API Level 12). It can be called in any state.
@@ -598,7 +598,7 @@ public void RemoveSources(params MediaSource[] sources) } /// - /// Sets a turn server. + /// Sets a turn server for signalling with remote peer which cannot be connected directly. /// /// The is null. /// The WebRTC has already been disposed. @@ -617,7 +617,7 @@ public void SetTurnServer(string turnServer) } /// - /// Sets turn servers. + /// Sets turn servers for signalling with remote peer which cannot be connected directly. /// /// The one of is null. /// The WebRTC has already been disposed. diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCDataChannelErrorOccurredEventArgs.cs b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCDataChannelErrorOccurredEventArgs.cs index ddae8b4d3e0..8963ea7c93f 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCDataChannelErrorOccurredEventArgs.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCDataChannelErrorOccurredEventArgs.cs @@ -30,7 +30,7 @@ internal WebRTCDataChannelErrorOccurredEventArgs(WebRTCError error) } /// - /// Gets the error. + /// Gets the error of data channel. /// /// The error. /// 9 diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCEnums.cs b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCEnums.cs index 24796c35b57..61cafb38f2a 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCEnums.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCEnums.cs @@ -20,7 +20,7 @@ namespace Tizen.Multimedia.Remoting { /// - /// Specifies errors. + /// Specifies WebRTC errors. /// /// /// @@ -361,7 +361,7 @@ public enum IceTransportPolicy } /// - /// Specifies the display type. + /// Specifies the display mode that indicates the way of displaying video data. /// /// 9 public enum WebRTCDisplayMode @@ -383,7 +383,8 @@ public enum WebRTCDisplayMode } /// - /// Specifies the bundle policy. + /// Specifies the bundle policy that affects which media tracks are negotiated if the remote endpoint is not bundle-aware, + /// and what ICE candidates are gathered. /// /// /// The details of bundle policy enum is described in https://www.w3.org/TR/webrtc/#rtcbundlepolicy-enum. diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCFrameEncodedEventArgs.cs b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCFrameEncodedEventArgs.cs index 455009c5154..aea9583b980 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCFrameEncodedEventArgs.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCFrameEncodedEventArgs.cs @@ -31,7 +31,7 @@ internal WebRTCFrameEncodedEventArgs(MediaStreamTrack track, MediaPacket packet) } /// - /// Gets the track information. + /// Gets the information of media stream track from remote peer. /// /// The media type. /// 9 diff --git a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCTrackAddedEventArgs.cs b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCTrackAddedEventArgs.cs index e95c70eb113..dce812cca78 100755 --- a/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCTrackAddedEventArgs.cs +++ b/src/Tizen.Multimedia.Remoting/WebRTC/WebRTCTrackAddedEventArgs.cs @@ -30,7 +30,7 @@ internal WebRTCTrackAddedEventArgs(MediaStreamTrack track) } /// - /// Gets the media type. + /// Gets the media stream track from reemote peer. /// /// The media type. /// 9 From b1cfee95b7c39a34b0afcb09c88235361abd8464 Mon Sep 17 00:00:00 2001 From: hjhun <36876573+hjhun@users.noreply.github.com> Date: Wed, 25 Sep 2024 16:23:53 +0900 Subject: [PATCH 105/198] [Core] Modify exceptions (#6355) * [Core] Modify exceptions Some methods should throw InvalidOperationException. This patch modifies that. Signed-off-by: Hwankyu Jhun * [Core] Add a missing exception to ChannelReceiver.Receive() Signed-off-by: Hwankyu Jhun * [Core] Fix ambiguous error messages Signed-off-by: Hwankyu Jhun * [Core] Fix wrong description & implementation Signed-off-by: Hwankyu Jhun * [Core] Modify ambiguous log message Signed-off-by: Hwankyu Jhun * [Core] Convert error to C# exception Signed-off-by: Hwankyu Jhun * [Core] Fix wrong log message Signed-off-by: Hwankyu Jhun * [Core] Fix wrong error handling Signed-off-by: Hwankyu Jhun --------- Signed-off-by: Hwankyu Jhun --- src/Tizen.Core/Tizen.Core/ChannelReceiver.cs | 11 +++- src/Tizen.Core/Tizen.Core/ChannelSender.cs | 18 ++++- src/Tizen.Core/Tizen.Core/Task.cs | 69 ++++++++++++++++---- 3 files changed, 84 insertions(+), 14 deletions(-) diff --git a/src/Tizen.Core/Tizen.Core/ChannelReceiver.cs b/src/Tizen.Core/Tizen.Core/ChannelReceiver.cs index c8169954131..c1c62d435be 100644 --- a/src/Tizen.Core/Tizen.Core/ChannelReceiver.cs +++ b/src/Tizen.Core/Tizen.Core/ChannelReceiver.cs @@ -66,6 +66,8 @@ internal ChannelReceiver(IntPtr handle) /// Receives the channel object from the sender asynchronously. /// /// The received channel object. + /// Thrown when out of memory. + /// Thrown when failed because of an invalid operation. /// /// /// @@ -84,7 +86,14 @@ public async Task Receive() return await System.Threading.Tasks.Task.Run(() => { Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreChannel.ReceiverReceive(Handle, out IntPtr channelObject); - TCoreErrorFactory.CheckAndThrownException(error, "Failed to receive channel object"); + if (error != Interop.LibTizenCore.ErrorCode.None) + { + if (error == Interop.LibTizenCore.ErrorCode.InvalidParameter) + { + error = Interop.LibTizenCore.ErrorCode.InvalidContext; + } + TCoreErrorFactory.CheckAndThrownException(error, "Failed to receive channel object"); + } return new ChannelObject(channelObject); }).ConfigureAwait(false); } diff --git a/src/Tizen.Core/Tizen.Core/ChannelSender.cs b/src/Tizen.Core/Tizen.Core/ChannelSender.cs index 45be966a802..ae170bac46d 100644 --- a/src/Tizen.Core/Tizen.Core/ChannelSender.cs +++ b/src/Tizen.Core/Tizen.Core/ChannelSender.cs @@ -44,6 +44,8 @@ internal ChannelSender(IntPtr handle) /// /// The channel object instance. /// Thrown when the argument is null. + /// Thrown when the argument is invalid. + /// Thrown when failed because of an invalid operation. /// /// It's important to call the Dispose() method on the passed channel object to release resources. /// @@ -68,8 +70,16 @@ public void Send(ChannelObject channelObject) throw new ArgumentNullException(nameof(channelObject)); } + if (channelObject.Handle == IntPtr.Zero) + { + throw new ArgumentException("Invalid argument"); + } + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreChannel.SenderSend(Handle, channelObject.Handle); - TCoreErrorFactory.CheckAndThrownException(error, "Failed to send channel object"); + if (error != Interop.LibTizenCore.ErrorCode.None) + { + throw new InvalidOperationException("Failed to send channel object"); + } channelObject.IsUsed = true; } @@ -77,7 +87,7 @@ public void Send(ChannelObject channelObject) /// Creates and returns a copy of the channel sender object. /// /// A newly created channel sender instance. - /// Thrown when the argument is invalid. + /// Thrown when failed because of an invalid operation. /// Thrown when out of memory. /// /// @@ -92,6 +102,10 @@ public void Send(ChannelObject channelObject) public ChannelSender Clone() { Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCoreChannel.SenderClone(Handle, out IntPtr clonedHandle); + if (error == Interop.LibTizenCore.ErrorCode.InvalidParameter) + { + error = Interop.LibTizenCore.ErrorCode.InvalidContext; + } TCoreErrorFactory.CheckAndThrownException(error, "Failed to clone channel sender"); return new ChannelSender(clonedHandle); diff --git a/src/Tizen.Core/Tizen.Core/Task.cs b/src/Tizen.Core/Tizen.Core/Task.cs index a0bbf61fb74..4ca4cc81dd4 100644 --- a/src/Tizen.Core/Tizen.Core/Task.cs +++ b/src/Tizen.Core/Tizen.Core/Task.cs @@ -93,7 +93,7 @@ internal Task(IntPtr handle) /// /// The action callback to post. /// Thrown when the action argument is null. - /// Thrown when failed because of the instance is invalid. + /// Thrown when failed because of an invalid operation. /// Thrown when out of memory. /// /// The action callback will be executed by the main loop of the task. @@ -127,7 +127,14 @@ public void Post(Action action) } _actionkMap[id] = action; Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.AddIdleJob(_handle, NativeActionCallback, (IntPtr)id, out IntPtr handle); - TCoreErrorFactory.CheckAndThrownException(error, "Failed to add idle job"); + if (error != Interop.LibTizenCore.ErrorCode.None) + { + if (error == Interop.LibTizenCore.ErrorCode.InvalidParameter) + { + error = Interop.LibTizenCore.ErrorCode.InvalidContext; + } + TCoreErrorFactory.CheckAndThrownException(error, "Failed to add idle job"); + } } /// @@ -135,7 +142,7 @@ public void Post(Action action) /// /// The task to post. /// Thrown when the task argument is null. - /// Thrown when failed because of the instance is invalid. + /// Thrown when failed because of an invalid operation. /// Thrown when out of memory. /// /// The task will be stored in the internal map using its unique identifier. @@ -178,6 +185,10 @@ public void Post(Func task) if (error != Interop.LibTizenCore.ErrorCode.None) { _taskMap.TryRemove(id, out var _); + if (error == Interop.LibTizenCore.ErrorCode.InvalidParameter) + { + error = Interop.LibTizenCore.ErrorCode.InvalidContext; + } TCoreErrorFactory.CheckAndThrownException(error, "Failed to add idle job"); } } @@ -189,7 +200,7 @@ public void Post(Func task) /// The recurring timer callback function which returns whether or not to continue triggering the timer. /// The registered timer ID to be used with . /// Thrown when the callback argument is null. - /// Thrown when failed because of the instance is invalid. + /// Thrown when failed because of an invalid operation. /// Thrown when out of memory. /// /// The callback function will be called every time the specified interval elapses. It should return true to keep the timer running, otherwise the timer will be stopped. @@ -227,7 +238,7 @@ public int AddTimer(uint interval, Func callback) if (error != Interop.LibTizenCore.ErrorCode.None) { _timerMap.TryRemove(id, out var _); - TCoreErrorFactory.CheckAndThrownException(error, "Failed to add a timer"); + throw new InvalidOperationException("Failed to add timer"); } timerSource.Handle = handle; @@ -275,6 +286,7 @@ public void RemoveTimer(int id) /// The channel receiver instance. /// Thrown when the argument is null. /// Thrown when the argument is invalid. + /// Thrown when failed because of an invalid operation. /// Thrown when out of memory. /// /// @@ -296,7 +308,12 @@ public void AddChannelReceiver(ChannelReceiver receiver) if (receiver.Handle == IntPtr.Zero) { - throw new ArgumentException("The receiver is already added"); + if (receiver.Source != IntPtr.Zero) + { + throw new ArgumentException("The receiver is already added"); + } + + throw new ArgumentException("Invalid argument"); } int id; @@ -313,6 +330,10 @@ public void AddChannelReceiver(ChannelReceiver receiver) if (error != Interop.LibTizenCore.ErrorCode.None) { _channelMap.TryRemove(id, out var _); + if (error == Interop.LibTizenCore.ErrorCode.InvalidParameter) + { + error = Interop.LibTizenCore.ErrorCode.InvalidContext; + } TCoreErrorFactory.CheckAndThrownException(error, "Failed to add a channel to the task"); } @@ -376,6 +397,7 @@ public void RemoveChannelReceiver(ChannelReceiver receiver) /// The event instance. /// Thrown when the argument is null. /// Thrown when the argument is invalid. + /// Thrown when failed because of an invalid operation. /// Thrown when out of memory. /// /// This method allows you to associate an event with a specific task. By adding an event to a task's main loop, other threads can utilize this event to communicate with the task. @@ -403,6 +425,11 @@ public void AddEvent(Event coreEvent) throw new ArgumentNullException(nameof(coreEvent)); } + if (coreEvent.Handle == IntPtr.Zero) + { + throw new ArgumentException("Invalid argument"); + } + if (coreEvent.Source != IntPtr.Zero) { throw new ArgumentException("The event is already added"); @@ -425,6 +452,10 @@ public void AddEvent(Event coreEvent) if (error != Interop.LibTizenCore.ErrorCode.None) { _eventMap.TryRemove(id, out var _); + if (error == Interop.LibTizenCore.ErrorCode.InvalidParameter) + { + error = Interop.LibTizenCore.ErrorCode.InvalidContext; + } TCoreErrorFactory.CheckAndThrownException(error, "Failed to add an event to the task"); } @@ -486,6 +517,7 @@ public void RemoveEvent(Event coreEvent) /// The event object instance. /// Thrown when the argument is null. /// Thrown when the argument is invalid. + /// Thrown when failed because of an invalid operation. /// /// /// @@ -507,8 +539,17 @@ public void EmitEvent(EventObject eventObject) throw new ArgumentNullException(nameof(eventObject)); } + if (eventObject.Handle == IntPtr.Zero) + { + throw new ArgumentException("Invalid argument"); + } + Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.EmitEvent(_handle, eventObject.Handle); - TCoreErrorFactory.CheckAndThrownException(error, "Failed to emit event"); + if (error != Interop.LibTizenCore.ErrorCode.None) + { + throw new InvalidOperationException("Failed to emit event"); + } + eventObject.Handle = IntPtr.Zero; } @@ -632,7 +673,7 @@ public bool Running { /// /// Runs the main loop of the task. /// - /// Thrown when the unmanaged handle is invalid. + /// Thrown when failed because of an invalid operation. /// /// /// @@ -645,13 +686,16 @@ public bool Running { public void Run() { Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.TaskRun(_handle); - TCoreErrorFactory.CheckAndThrownException(error, "Failed to run task"); + if (error != Interop.LibTizenCore.ErrorCode.None) + { + throw new InvalidOperationException("Failed to run task"); + } } /// /// Quits the main loop of the task. /// - /// Thrown when the unmanaged handle is invalid. + /// Thrown when failed because of an invalid operation. /// /// This function can be called from any thread. /// It requests the task to finish the current iteration of its loop and stop running. @@ -674,7 +718,10 @@ public void Run() public void Quit() { Interop.LibTizenCore.ErrorCode error = Interop.LibTizenCore.TizenCore.TaskQuit(_handle); - TCoreErrorFactory.CheckAndThrownException(error, "Failed to quit task"); + if (error != Interop.LibTizenCore.ErrorCode.None) + { + throw new InvalidOperationException("Failed to quit task"); + } } /// From 4fc5d2f62909597521133647593e161c87b851ec Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Wed, 25 Sep 2024 22:17:54 +0900 Subject: [PATCH 106/198] [NUI] Add comments (3rd patch) --- .../src/public/BaseComponents/VisualView.cs | 8 +-- .../src/public/Clipboard/Clipboard.cs | 8 ++- src/Tizen.NUI/src/public/Common/BaseHandle.cs | 43 ++++++++++++---- src/Tizen.NUI/src/public/Common/Color.cs | 2 + src/Tizen.NUI/src/public/Common/Container.cs | 2 +- src/Tizen.NUI/src/public/Common/Degree.cs | 5 +- src/Tizen.NUI/src/public/Common/Extents.cs | 26 +++++----- .../Common/FrameUpdateCallbackInterface.cs | 50 +++++++++---------- src/Tizen.NUI/src/public/Common/Layer.cs | 17 ++++--- .../src/public/Common/PropertyArray.cs | 3 +- .../src/public/Common/PropertyKey.cs | 8 +-- .../src/public/Common/PropertyMap.cs | 3 +- .../src/public/Common/PropertyValue.cs | 2 +- src/Tizen.NUI/src/public/Common/Radian.cs | 3 +- src/Tizen.NUI/src/public/Common/Rectangle.cs | 4 +- .../src/public/Common/RelativeVector2.cs | 6 ++- .../src/public/Common/RelativeVector3.cs | 6 +-- .../src/public/Common/RelativeVector4.cs | 6 +-- src/Tizen.NUI/src/public/Common/Rotation.cs | 8 +-- src/Tizen.NUI/src/public/Common/TypeInfo.cs | 2 +- src/Tizen.NUI/src/public/Common/Vector2.cs | 6 ++- src/Tizen.NUI/src/public/Common/Vector3.cs | 8 +-- src/Tizen.NUI/src/public/Common/Vector4.cs | 15 ++++-- src/Tizen.NUI/src/public/Common/WeakEvent.cs | 5 +- .../public/CustomView/CustomViewRegistry.cs | 39 +++++++++------ .../src/public/CustomView/ViewWrapper.cs | 5 +- .../src/public/DragAndDrop/DragAndDrop.cs | 11 ++++ .../src/public/DragAndDrop/DragEvent.cs | 12 ++--- src/Tizen.NUI/src/public/Events/Gesture.cs | 6 +-- src/Tizen.NUI/src/public/Events/Hover.cs | 2 +- src/Tizen.NUI/src/public/Events/PanGesture.cs | 2 +- src/Tizen.NUI/src/public/Events/TapGesture.cs | 2 +- src/Tizen.NUI/src/public/Events/Touch.cs | 2 +- src/Tizen.NUI/src/public/Events/Wheel.cs | 2 +- .../src/public/Input/FocusManagerArgs.cs | 6 +-- src/Tizen.NUI/src/public/Input/InputMethod.cs | 2 +- .../src/public/Input/InputMethodContext.cs | 23 +++++---- src/Tizen.NUI/src/public/Input/Key.cs | 8 +-- src/Tizen.NUI/src/public/Input/KeyValue.cs | 50 +++++++++---------- .../src/public/Layouting/AbsoluteLayout.cs | 6 +-- .../src/public/Layouting/ILayoutParent.cs | 1 - .../src/public/Layouting/LayoutGroup.cs | 6 +-- .../src/public/Layouting/LayoutItem.cs | 19 ++++--- .../src/public/Layouting/LayoutLength.cs | 16 +++--- .../src/public/Layouting/LinearLayout.cs | 14 +++--- .../public/Layouting/MeasureSpecification.cs | 2 +- .../src/public/Layouting/MeasuredSize.cs | 2 +- .../src/public/Layouting/PaddingType.cs | 10 ++-- .../src/public/Rendering/FilterModeType.cs | 2 +- .../src/public/Rendering/Renderer.cs | 18 +++---- src/Tizen.NUI/src/public/Rendering/Shader.cs | 4 +- .../src/public/Rendering/TextureType.cs | 2 +- .../src/public/Rendering/VertexBuffer.cs | 2 +- .../src/public/Template/DataTemplate.cs | 2 +- src/Tizen.NUI/src/public/Theme/Theme.cs | 2 +- .../src/public/Theme/ThemeChangedEventArgs.cs | 7 +-- .../src/public/Transition/Transition.cs | 2 +- .../src/public/Transition/TransitionBase.cs | 2 +- .../src/public/Utility/DirectionBias.cs | 1 + src/Tizen.NUI/src/public/Utility/TTSPlayer.cs | 8 +-- src/Tizen.NUI/src/public/Utility/Timer.cs | 5 ++ .../src/public/ViewProperty/ShadowBase.cs | 2 +- .../src/public/Visuals/AnimatedImageVisual.cs | 2 +- .../src/public/Visuals/BorderVisual.cs | 2 +- .../src/public/Visuals/ColorVisual.cs | 2 +- .../src/public/Visuals/GradientVisual.cs | 2 +- .../src/public/Visuals/ImageVisual.cs | 2 +- .../src/public/Visuals/MeshVisual.cs | 2 +- .../src/public/Visuals/NPatchVisual.cs | 2 +- .../src/public/Visuals/PrimitiveVisual.cs | 2 +- src/Tizen.NUI/src/public/Visuals/SVGVisual.cs | 2 +- .../src/public/Visuals/TextVisual.cs | 2 +- src/Tizen.NUI/src/public/WebView/WebView.cs | 2 +- src/Tizen.NUI/src/public/Widget/Widget.cs | 2 +- .../src/public/Window/WindowEvent.cs | 12 ++--- .../src/public/Xaml/IMarkupExtension.cs | 10 ++-- .../src/public/Xaml/IProvideValueTarget.cs | 6 +-- .../src/public/Xaml/IReferenceProvider.cs | 4 +- .../src/public/Xaml/IRootObjectProvider.cs | 4 +- .../src/public/Xaml/IValueProvider.cs | 4 +- .../src/public/Xaml/IXamlTypeResolver.cs | 6 +-- .../src/public/Xaml/IXmlLineInfoProvider.cs | 4 +- .../ApplicationResourcePathExtension.cs | 2 +- .../Xaml/MarkupExtensions/ArrayExtension.cs | 10 ++-- .../Xaml/MarkupExtensions/BindingExtension.cs | 22 ++++---- .../DynamicResourceExtension.cs | 6 +-- .../NUIResourcePathExtension.cs | 2 +- .../Xaml/MarkupExtensions/NullExtension.cs | 4 +- .../MarkupExtensions/ReferenceExtension.cs | 6 +-- .../MarkupExtensions/ResourcePathExtension.cs | 2 +- .../Xaml/MarkupExtensions/StaticExtension.cs | 6 +-- .../TemplateBindingExtension.cs | 12 ++--- .../public/Xaml/StaticResourceExtension.cs | 6 +-- .../public/Xaml/TypeConversionAttribute.cs | 6 +-- .../src/public/Xaml/XamlFilePathAttribute.cs | 4 +- .../src/public/Xaml/XamlParseException.cs | 6 +-- .../public/Xaml/XamlResourceIdAttribute.cs | 10 ++-- .../src/public/Xaml/XamlServiceProvider.cs | 40 +++++++-------- src/Tizen.NUI/src/public/Xaml/XmlLineInfo.cs | 12 ++--- .../XamlBinding/BindableObjectExtensions.cs | 4 +- .../XamlBinding/BindablePropertyConverter.cs | 4 +- .../src/public/XamlBinding/Binding.cs | 16 +++--- .../src/public/XamlBinding/BindingBase.cs | 14 +++--- .../XamlBinding/BindingTypeConverter.cs | 4 +- .../CollectionSynchronizationCallback.cs | 2 +- .../public/XamlBinding/ColorTypeConverter.cs | 10 ++-- .../src/public/XamlBinding/Command.cs | 22 ++++---- .../public/XamlBinding/ElementEventArgs.cs | 6 +-- .../XamlBinding/FloatGraphicsTypeConverter.cs | 6 +-- .../public/XamlBinding/IResourcesProvider.cs | 2 +- .../src/public/XamlBinding/IValueConverter.cs | 2 +- .../XamlBinding/IntGraphicsTypeConverter.cs | 6 +-- .../XamlBinding/Interactivity/Behavior.cs | 20 ++++---- .../Interactivity/BindingCondition.cs | 8 +-- .../XamlBinding/Interactivity/Condition.cs | 2 +- .../XamlBinding/Interactivity/DataTrigger.cs | 10 ++-- .../XamlBinding/Interactivity/EventTrigger.cs | 8 +-- .../XamlBinding/Interactivity/MultiTrigger.cs | 8 +-- .../Interactivity/XamlPropertyCondition.cs | 8 +-- .../XamlBinding/Internals/DynamicResource.cs | 6 +-- .../Internals/IDynamicResourceHandler.cs | 4 +- .../XamlBinding/Internals/INameScope.cs | 10 ++-- .../public/XamlBinding/Internals/NameScope.cs | 8 +-- .../public/XamlBinding/NameScopeExtensions.cs | 6 +-- .../XamlBinding/PointSizeTypeConverter.cs | 4 +- .../src/public/XamlBinding/Registrar.cs | 20 ++++---- .../public/XamlBinding/ResourceDictionary.cs | 32 ++++++------ .../public/XamlBinding/SizeTypeConverter.cs | 12 ++--- .../src/public/XamlBinding/Trigger.cs | 15 ++---- .../src/public/XamlBinding/TriggerAction.cs | 9 ++-- .../src/public/XamlBinding/TriggerBase.cs | 20 ++++---- .../src/public/XamlBinding/TypeConverter.cs | 10 ++-- .../src/public/XamlBinding/TypedBinding.cs | 8 +-- .../XamlBinding/XmlnsDefinitionAttribute.cs | 12 ++--- 134 files changed, 597 insertions(+), 524 deletions(-) diff --git a/src/Tizen.NUI/src/public/BaseComponents/VisualView.cs b/src/Tizen.NUI/src/public/BaseComponents/VisualView.cs index 7657a9a0b52..41f6813a5f8 100755 --- a/src/Tizen.NUI/src/public/BaseComponents/VisualView.cs +++ b/src/Tizen.NUI/src/public/BaseComponents/VisualView.cs @@ -49,13 +49,14 @@ public class VisualView : CustomView /// /// Constructor. + /// This constructor initializes the VisualView with default behavior and support for touch events. /// /// 3 public VisualView() : this(CustomViewBehaviour.ViewBehaviourDefault | CustomViewBehaviour.RequiresTouchEventsSupport) { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public VisualView(ViewStyle viewStyle) : this(CustomViewBehaviour.ViewBehaviourDefault | CustomViewBehaviour.RequiresTouchEventsSupport, viewStyle) { @@ -99,6 +100,7 @@ public int NumberOfVisuals /// /// Overrides the parent method. + /// This method is called by the framework when the instance is created. /// /// 3 public override void OnInitialize() @@ -187,7 +189,7 @@ public void RemoveVisual(string visualName) } /// - /// Removes all visuals of the visual view. + /// This method removes all visuals associated with the VisualView instance. /// /// 3 public void RemoveAll() @@ -410,7 +412,7 @@ public Animation AnimateVisualAddFinish() } /// - /// temporary fix to pass TCT. + /// Applies an animation to the specified visual map properties. /// /// Thrown when visualMap is null. /// 3 diff --git a/src/Tizen.NUI/src/public/Clipboard/Clipboard.cs b/src/Tizen.NUI/src/public/Clipboard/Clipboard.cs index 913c3db4dfe..ddb1b7e38d0 100755 --- a/src/Tizen.NUI/src/public/Clipboard/Clipboard.cs +++ b/src/Tizen.NUI/src/public/Clipboard/Clipboard.cs @@ -26,7 +26,7 @@ namespace Tizen.NUI { /// - /// Clipboard. + /// This class provides methods to interact with the system clipboard, allowing users to get and set clipboard content. /// [EditorBrowsable(EditorBrowsableState.Never)] public partial class Clipboard : BaseHandle @@ -195,7 +195,13 @@ private void OnClipboardDataReceived(object sender, ClipboardEventArgs e) /// /// Dispose. + /// Releases unmanaged and optionally managed resources. /// + /// + /// When overriding this method, you need to distinguish between explicit and implicit conditions. For explicit conditions, release both managed and unmanaged resources. For implicit conditions, only release unmanaged resources. + /// + /// Explicit to release both managed and unmanaged resources. Implicit to release only unmanaged resources. + [EditorBrowsable(EditorBrowsableState.Never)] protected override void Dispose(DisposeTypes type) { if (disposed) diff --git a/src/Tizen.NUI/src/public/Common/BaseHandle.cs b/src/Tizen.NUI/src/public/Common/BaseHandle.cs index 9ffb8568d16..b724019f8bc 100755 --- a/src/Tizen.NUI/src/public/Common/BaseHandle.cs +++ b/src/Tizen.NUI/src/public/Common/BaseHandle.cs @@ -156,7 +156,8 @@ internal BaseHandle(global::System.IntPtr cPtr) } /// - /// Dispose. + /// Finalizes the instance of the BaseHandle class. + /// This method implements the finalization pattern for proper disposal of resources. /// /// 3 // following this guide: https://docs.microsoft.com/ko-kr/dotnet/fundamentals/code-analysis/quality-rules/ca1063?view=vs-2019 (CA1063) @@ -225,6 +226,9 @@ public static explicit operator bool(BaseHandle handle) /// /// Equality operator /// + /// The first BaseHandle instance to compare. + /// The second BaseHandle instance to compare. + /// true if both instances are equal; otherwise false. /// 3 public static bool operator ==(BaseHandle x, BaseHandle y) { @@ -254,8 +258,11 @@ public static explicit operator bool(BaseHandle handle) } /// - /// Inequality operator. Returns Null if either operand is Null + /// Inequality operator. Returns true if the operands are not equal, false otherwise. Returns true if either operand is null. /// + /// The first BaseHandle instance to compare. + /// The second BaseHandle instance to compare. + /// True if the operands are not equal, false otherwise. Returns true if either operand is null. /// 3 public static bool operator !=(BaseHandle x, BaseHandle y) { @@ -263,9 +270,12 @@ public static explicit operator bool(BaseHandle handle) } /// - /// Logical AND operator.
- /// It's possible when doing a operator this function (opBitwiseAnd) is never called due to short circuiting.
+ /// Logical AND operator. + /// It's possible when doing a logical AND operation, this function (opBitwiseAnd) might never be called due to short circuiting. ///
+ /// The first BaseHandle instance. + /// The second BaseHandle instance. + /// Returns the first BaseHandle instance if both instances are equal; otherwise, returns null. /// 3 public static BaseHandle operator &(BaseHandle x, BaseHandle y) { @@ -277,9 +287,12 @@ public static explicit operator bool(BaseHandle handle) } /// - /// Logical OR operator for ||.
- /// It's possible when doing a || this function (opBitwiseOr) is never called due to short circuiting.
+ /// Logical OR operator for ||. + /// It's possible when doing a || this function (opBitwiseOr) is never called due to short circuiting. ///
+ /// The first BaseHandle to be compared. + /// The second BaseHandle to be compared. + /// A BaseHandle that contains either of the non-null bodies of the two operands. /// 3 public static BaseHandle operator |(BaseHandle x, BaseHandle y) { @@ -299,8 +312,10 @@ public static explicit operator bool(BaseHandle handle) } /// - /// Logical ! operator + /// Logical ! operator for BaseHandle class. /// + /// The BaseHandle instance to check. + /// True if the handle is null or has no body; otherwise, false. /// 3 public static bool operator !(BaseHandle x) { @@ -317,10 +332,10 @@ public static explicit operator bool(BaseHandle handle) } /// - /// Equals + /// Compares the current instance with another object of the same type and returns true if they represent the same handle. /// - /// The object should be compared. - /// True if equal. + /// The object to compare with the current instance. + /// true if the specified object is equal to the current object; otherwise, false. /// 5 public override bool Equals(object o) { @@ -361,12 +376,13 @@ public void Dispose() /// /// Hidden API (Inhouse API). /// Dispose. + /// Releases any unmanaged resources used by this object. Can also dispose any other disposable objects. /// /// /// Following the guide of https://docs.microsoft.com/en-us/dotnet/standard/garbage-collection/implementing-dispose. /// This will replace "protected virtual void Dispose(DisposeTypes type)" which is exactly same in functionality. /// - /// true in order to free managed objects + /// If true, disposes any disposable objects. If false, does not dispose disposable objects. // Protected implementation of Dispose pattern. [EditorBrowsable(EditorBrowsableState.Never)] protected virtual void Dispose(bool disposing) @@ -570,7 +586,12 @@ internal void UnregisterFromRegistry() /// /// Dispose. + /// Releases unmanaged and optionally managed resources. /// + /// + /// When overriding this method, you need to distinguish between explicit and implicit conditions. For explicit conditions, release both managed and unmanaged resources. For implicit conditions, only release unmanaged resources. + /// + /// Explicit to release both managed and unmanaged resources. Implicit to release only unmanaged resources. /// 3 protected virtual void Dispose(DisposeTypes type) { diff --git a/src/Tizen.NUI/src/public/Common/Color.cs b/src/Tizen.NUI/src/public/Common/Color.cs index 8e09d8ca7c7..dc843bb7118 100755 --- a/src/Tizen.NUI/src/public/Common/Color.cs +++ b/src/Tizen.NUI/src/public/Common/Color.cs @@ -24,6 +24,8 @@ namespace Tizen.NUI { /// /// The Color class. + /// This class represents a color using red, green, blue, and alpha components. + /// It provides methods to create and manipulate colors. /// [Tizen.NUI.Binding.TypeConverter(typeof(ColorTypeConverter))] public class Color : Disposable, ICloneable diff --git a/src/Tizen.NUI/src/public/Common/Container.cs b/src/Tizen.NUI/src/public/Common/Container.cs index fa07385377d..1cd6b835206 100755 --- a/src/Tizen.NUI/src/public/Common/Container.cs +++ b/src/Tizen.NUI/src/public/Common/Container.cs @@ -142,7 +142,7 @@ internal MergedStyle MergedStyle } /// - /// List of children of Container. + /// Gets the list of children of Container. /// /// 4 public List Children diff --git a/src/Tizen.NUI/src/public/Common/Degree.cs b/src/Tizen.NUI/src/public/Common/Degree.cs index 85e1c37a408..b91d2558c17 100755 --- a/src/Tizen.NUI/src/public/Common/Degree.cs +++ b/src/Tizen.NUI/src/public/Common/Degree.cs @@ -28,7 +28,7 @@ public class Degree : Disposable { /// - /// The constructor. + /// Default constructor of Degree class. /// /// 3 public Degree() : this(Interop.Degree.NewDegree(), true) @@ -61,7 +61,8 @@ internal Degree(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemor } /// - /// The value of degree. + /// Gets or sets the value of the degree. + /// This property value is the angle in degrees. /// /// 3 public float Value diff --git a/src/Tizen.NUI/src/public/Common/Extents.cs b/src/Tizen.NUI/src/public/Common/Extents.cs index 1c1e9cea4cd..8515e04f6c0 100755 --- a/src/Tizen.NUI/src/public/Common/Extents.cs +++ b/src/Tizen.NUI/src/public/Common/Extents.cs @@ -31,7 +31,7 @@ public class Extents : Disposable, ICloneable /// - /// Constructor. + /// Default constructor of Extents class. /// /// 4 public Extents() : this(Interop.Extents.NewExtents(), true) @@ -62,10 +62,10 @@ public static implicit operator Extents(ushort value) /// /// Constructor. - /// Start extent. - /// End extent. - /// Top extent. - /// Bottom extent. + /// The start extent value horizontally. + /// The end extent value horizontally. + /// The top extent value vertically. + /// The bottom extent value vertically. /// /// 4 public Extents(ushort start, ushort end, ushort top, ushort bottom) : this(Interop.Extents.NewExtents(start, end, top, bottom), true) @@ -81,10 +81,10 @@ internal Extents(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemo /// Constructor ///
/// - /// - /// - /// - /// + /// The start extent value horizontally. + /// The end extent value horizontally. + /// The top extent value vertically. + /// The bottom extent value vertically. /// Only used by Tizen.NUI.Components, will not be opened [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)] public Extents(ExtentsChangedCallback cb, ushort start, ushort end, ushort top, ushort bottom) : this(Interop.Extents.NewExtents(start, end, top, bottom), true) @@ -115,10 +115,10 @@ public void CopyFrom(Extents that) /// /// Constructor /// - /// - /// - /// - /// + /// The start extent value horizontally. + /// The end extent value horizontally. + /// The top extent value vertically. + /// The bottom extent value vertically. /// Only used by Tizen.NUI.Components, will not be opened [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)] public delegate void ExtentsChangedCallback(ushort start, ushort end, ushort top, ushort bottom); diff --git a/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs b/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs index 2a429715376..6f8de7ff9e7 100755 --- a/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs +++ b/src/Tizen.NUI/src/public/Common/FrameUpdateCallbackInterface.cs @@ -21,26 +21,26 @@ namespace Tizen.NUI { - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class FrameUpdateCallbackInterface : Disposable { private uint onUpdateCallbackVersion = 0u; - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] internal FrameUpdateCallbackInterface(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn) { if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public FrameUpdateCallbackInterface() : this(0u) { } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public FrameUpdateCallbackInterface(uint updateCallbackVersion) : this(Interop.FrameUpdateCallbackInterface.newFrameUpdateCallbackInterface(), true) { @@ -57,7 +57,7 @@ protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef NDalicPINVOKE.ThrowExceptionIfExists(); } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public uint UpdateCallbackVersion => onUpdateCallbackVersion; @@ -90,13 +90,13 @@ private bool DirectorOnUpdate(global::System.IntPtr proxy, float elapsedSeconds) internal delegate bool DelegateFrameUpdateCallbackInterfaceV1(global::System.IntPtr proxy, float elapsedSeconds); private DelegateFrameUpdateCallbackInterfaceV1 Delegate1; - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public virtual void OnUpdate(float elapsedSeconds) { } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public virtual bool OnUpdate(FrameUpdateCallbackInterface obj, float elapsedSeconds) { @@ -105,7 +105,7 @@ public virtual bool OnUpdate(FrameUpdateCallbackInterface obj, float elapsedSeco return false; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool GetPosition(uint id, Vector3 position) { @@ -118,7 +118,7 @@ protected bool GetPosition(uint id, Vector3 position) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool SetPosition(uint id, Vector3 position) { @@ -131,7 +131,7 @@ protected bool SetPosition(uint id, Vector3 position) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool BakePosition(uint id, Vector3 position) { @@ -144,7 +144,7 @@ protected bool BakePosition(uint id, Vector3 position) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool GetOrientation(uint id, Rotation rotation) { @@ -157,7 +157,7 @@ protected bool GetOrientation(uint id, Rotation rotation) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool SetOrientation(uint id, Rotation rotation) { @@ -170,7 +170,7 @@ protected bool SetOrientation(uint id, Rotation rotation) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool BakeOrientation(uint id, Rotation rotation) { @@ -183,7 +183,7 @@ protected bool BakeOrientation(uint id, Rotation rotation) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool GetSize(uint id, Vector3 size) { @@ -196,7 +196,7 @@ protected bool GetSize(uint id, Vector3 size) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool SetSize(uint id, Vector3 size) { @@ -209,7 +209,7 @@ protected bool SetSize(uint id, Vector3 size) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool BakeSize(uint id, Vector3 size) { @@ -222,7 +222,7 @@ protected bool BakeSize(uint id, Vector3 size) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool GetScale(uint id, Vector3 scale) { @@ -235,7 +235,7 @@ protected bool GetScale(uint id, Vector3 scale) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool SetScale(uint id, Vector3 scale) { @@ -248,7 +248,7 @@ protected bool SetScale(uint id, Vector3 scale) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool BakeScale(uint id, Vector3 scale) { @@ -261,7 +261,7 @@ protected bool BakeScale(uint id, Vector3 scale) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool GetColor(uint id, Vector4 color) { @@ -274,7 +274,7 @@ protected bool GetColor(uint id, Vector4 color) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool SetColor(uint id, Vector4 color) { @@ -287,7 +287,7 @@ protected bool SetColor(uint id, Vector4 color) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool BakeColor(uint id, Vector4 color) { @@ -300,7 +300,7 @@ protected bool BakeColor(uint id, Vector4 color) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool GetPositionAndSize(uint id, Vector3 Position, Vector3 Size) { @@ -313,7 +313,7 @@ protected bool GetPositionAndSize(uint id, Vector3 Position, Vector3 Size) return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool GetWorldPositionScaleAndSize(uint id, Vector3 Position, Vector3 Scale, Vector3 Size) { @@ -326,7 +326,7 @@ protected bool GetWorldPositionScaleAndSize(uint id, Vector3 Position, Vector3 S return ret; } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected bool GetWorldTransformAndSize(uint id, Vector3 Position, Vector3 Scale, Rotation Orientation, Vector3 Size) { diff --git a/src/Tizen.NUI/src/public/Common/Layer.cs b/src/Tizen.NUI/src/public/Common/Layer.cs index 51e1374bfc9..00771c934d0 100755 --- a/src/Tizen.NUI/src/public/Common/Layer.cs +++ b/src/Tizen.NUI/src/public/Common/Layer.cs @@ -43,7 +43,7 @@ public class Layer : Container private delegate void AggregatedVisibilityChangedEventCallbackType(IntPtr data, bool visibility); /// - /// Creates a Layer object. + /// Default constructor of Layer class to create a Layer object. /// /// 3 public Layer() : this(Interop.Layer.New(), true) @@ -58,8 +58,13 @@ internal Layer(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemory } /// - /// Dispose Explicit or Implicit + /// Dispose. + /// Releases unmanaged and optionally managed resources. /// + /// + /// When overriding this method, you need to distinguish between explicit and implicit conditions. For explicit conditions, release both managed and unmanaged resources. For implicit conditions, only release unmanaged resources. + /// + /// Explicit to release both managed and unmanaged resources. Implicit to release only unmanaged resources. [EditorBrowsable(EditorBrowsableState.Never)] protected override void Dispose(DisposeTypes type) { @@ -572,7 +577,7 @@ public void MoveBelow(Layer target) LowerBelow(target); } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void SetAnchorPoint(Vector3 anchorPoint) { @@ -581,7 +586,7 @@ public void SetAnchorPoint(Vector3 anchorPoint) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void SetSize(float width, float height) { @@ -590,7 +595,7 @@ public void SetSize(float width, float height) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void SetParentOrigin(Vector3 parentOrigin) { @@ -599,7 +604,7 @@ public void SetParentOrigin(Vector3 parentOrigin) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void SetResizePolicy(ResizePolicyType policy, DimensionType dimension) { diff --git a/src/Tizen.NUI/src/public/Common/PropertyArray.cs b/src/Tizen.NUI/src/public/Common/PropertyArray.cs index f4d5f35e27b..b499d38e97b 100755 --- a/src/Tizen.NUI/src/public/Common/PropertyArray.cs +++ b/src/Tizen.NUI/src/public/Common/PropertyArray.cs @@ -25,7 +25,7 @@ namespace Tizen.NUI public class PropertyArray : Disposable { /// - /// The constructor. + /// Default constructor of PropertyArray class. /// /// 3 public PropertyArray() : this(Interop.Property.NewPropertyArray(), true) @@ -94,6 +94,7 @@ public bool Empty() /// /// Clears the array. + /// This method removes all elements from the PropertyArray, resulting in an empty array. /// /// 3 public void Clear() diff --git a/src/Tizen.NUI/src/public/Common/PropertyKey.cs b/src/Tizen.NUI/src/public/Common/PropertyKey.cs index 0779b75235e..5e5277cdd5b 100755 --- a/src/Tizen.NUI/src/public/Common/PropertyKey.cs +++ b/src/Tizen.NUI/src/public/Common/PropertyKey.cs @@ -51,7 +51,7 @@ internal PropertyKey(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, c } /// - /// The type of key. + /// Represents the type of key used in property-related operations. /// /// 3 /// Can't fix because it's already used by other GBM. @@ -72,6 +72,7 @@ public enum KeyType /// /// The type of the key. + /// This property returns the type of the key, which can be PropertyMap, PropertyArray, or PropertyValue. /// /// 3 public PropertyKey.KeyType Type @@ -90,7 +91,8 @@ public PropertyKey.KeyType Type } /// - /// The index key. + /// Gets the index key. + /// The integer value representing the index key. /// /// 3 public int IndexKey @@ -109,7 +111,7 @@ public int IndexKey } /// - /// The string key. + /// Returns the string key. /// /// 3 public string StringKey diff --git a/src/Tizen.NUI/src/public/Common/PropertyMap.cs b/src/Tizen.NUI/src/public/Common/PropertyMap.cs index b37e30b483d..bd96e0ddd7f 100755 --- a/src/Tizen.NUI/src/public/Common/PropertyMap.cs +++ b/src/Tizen.NUI/src/public/Common/PropertyMap.cs @@ -26,7 +26,7 @@ namespace Tizen.NUI public class PropertyMap : Disposable { /// - /// The constructor. + /// Default constructor of PropertyMap class. /// /// 3 public PropertyMap() : this(Interop.PropertyMap.NewPropertyMap(), true) @@ -363,6 +363,7 @@ public PropertyValue Find(int indexKey, string stringKey) /// /// Clears the map. + /// This method removes all key-value pairs from the PropertyMap. /// /// 3 public void Clear() diff --git a/src/Tizen.NUI/src/public/Common/PropertyValue.cs b/src/Tizen.NUI/src/public/Common/PropertyValue.cs index 267f86172dc..6f1199322ad 100755 --- a/src/Tizen.NUI/src/public/Common/PropertyValue.cs +++ b/src/Tizen.NUI/src/public/Common/PropertyValue.cs @@ -68,7 +68,7 @@ public PropertyValue(Color vectorValue) : this(Interop.PropertyValue.NewProperty } /// - /// The default constructor. + /// The default constructor of PropertyValue class. /// /// 3 public PropertyValue() : this(Interop.PropertyValue.NewPropertyValue(), true) diff --git a/src/Tizen.NUI/src/public/Common/Radian.cs b/src/Tizen.NUI/src/public/Common/Radian.cs index a4a14b39796..e4e38ca6c4c 100755 --- a/src/Tizen.NUI/src/public/Common/Radian.cs +++ b/src/Tizen.NUI/src/public/Common/Radian.cs @@ -20,7 +20,7 @@ namespace Tizen.NUI { /// - /// An angle in radians. + /// This class represents an angle in radians. /// /// 3 public class Radian : Disposable @@ -61,6 +61,7 @@ internal Radian(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemor /// /// The value in radians. + /// The float value representing the angle in radians. /// /// 3 public float Value diff --git a/src/Tizen.NUI/src/public/Common/Rectangle.cs b/src/Tizen.NUI/src/public/Common/Rectangle.cs index 77caf5a2bd4..ef7ef81b621 100755 --- a/src/Tizen.NUI/src/public/Common/Rectangle.cs +++ b/src/Tizen.NUI/src/public/Common/Rectangle.cs @@ -22,13 +22,15 @@ namespace Tizen.NUI { /// /// The Rectangle class. + /// This class is used to define and manipulate rectangular areas in graphics or UI components. + /// It manages the position (x, y coordinates) and size (width, height) of the rectangle, and provides various methods to set or inspect the properties of the rectangle. /// /// 3 [Binding.TypeConverter(typeof(RectangleTypeConverter))] public class Rectangle : Disposable, ICloneable { /// - /// The constructor. + /// The default constructor of Rectangle class. /// /// 3 public Rectangle() : this(Interop.Rectangle.NewRectangle(), true) diff --git a/src/Tizen.NUI/src/public/Common/RelativeVector2.cs b/src/Tizen.NUI/src/public/Common/RelativeVector2.cs index 84885959c42..f927c550db0 100755 --- a/src/Tizen.NUI/src/public/Common/RelativeVector2.cs +++ b/src/Tizen.NUI/src/public/Common/RelativeVector2.cs @@ -29,7 +29,7 @@ namespace Tizen.NUI public class RelativeVector2 : Disposable { /// - /// The constructor. + /// The Default constructor of RelativeVector2 class. /// /// 3 public RelativeVector2() : this(Interop.Vector2.NewVector2(), true) @@ -213,6 +213,7 @@ public float Y } /// + /// Implicitly converts a RelativeVector2 instance to a Vector2 instance. /// /// 3 public static implicit operator Vector2(RelativeVector2 relativeVector2) @@ -225,6 +226,7 @@ public static implicit operator Vector2(RelativeVector2 relativeVector2) } /// + /// Implicitly converts a Vector2 object to a RelativeVector2 object. /// /// 3 public static implicit operator RelativeVector2(Vector2 vec) @@ -303,6 +305,8 @@ public bool NotEqualTo(RelativeVector2 rhs) } /// + /// Retrieves a RelativeVector2 object from a given pointer. + /// This method creates a new RelativeVector2 instance using the provided pointer. /// internal static RelativeVector2 GetRelativeVector2FromPtr(global::System.IntPtr cPtr) { diff --git a/src/Tizen.NUI/src/public/Common/RelativeVector3.cs b/src/Tizen.NUI/src/public/Common/RelativeVector3.cs index 3e24d233259..d2e5e97a5a9 100755 --- a/src/Tizen.NUI/src/public/Common/RelativeVector3.cs +++ b/src/Tizen.NUI/src/public/Common/RelativeVector3.cs @@ -30,7 +30,7 @@ public class RelativeVector3 : Disposable { /// - /// The constructor. + /// The default constructor of RelativeVector3 class. /// /// 3 public RelativeVector3() : this(Interop.Vector3.NewVector3(), true) @@ -242,6 +242,7 @@ public float Z } /// + /// Implicitly converts a RelativeVector3 instance to a Vector3 instance. /// /// 3 public static implicit operator Vector3(RelativeVector3 relativeVector3) @@ -251,6 +252,7 @@ public static implicit operator Vector3(RelativeVector3 relativeVector3) } /// + /// Implicitly converts a Vector3 instance to a RelativeVector3 instance. /// /// 3 public static implicit operator RelativeVector3(Vector3 vec) @@ -325,8 +327,6 @@ public bool NotEqualTo(RelativeVector3 rhs) return ret; } - /// - /// internal static RelativeVector3 GetRelativeVector3FromPtr(global::System.IntPtr cPtr) { RelativeVector3 ret = new RelativeVector3(cPtr, false); diff --git a/src/Tizen.NUI/src/public/Common/RelativeVector4.cs b/src/Tizen.NUI/src/public/Common/RelativeVector4.cs index 6981ad0404b..ad2e2cb87d6 100755 --- a/src/Tizen.NUI/src/public/Common/RelativeVector4.cs +++ b/src/Tizen.NUI/src/public/Common/RelativeVector4.cs @@ -30,7 +30,7 @@ public class RelativeVector4 : Disposable { /// - /// The constructor. + /// The default constructor of RelativeVector4 class. /// /// 3 public RelativeVector4() : this(Interop.Vector4.NewVector4(), true) @@ -290,6 +290,7 @@ public float W } /// + /// Implicitly converts a RelativeVector4 instance to a Vector4 instance. /// /// 3 public static implicit operator Vector4(RelativeVector4 relativeVector4) @@ -302,6 +303,7 @@ public static implicit operator Vector4(RelativeVector4 relativeVector4) } /// + /// Implicitly converts a Vector4 instance to a RelativeVector4 instance. /// /// 3 public static implicit operator RelativeVector4(Vector4 vec) @@ -379,8 +381,6 @@ public bool NotEqualTo(RelativeVector4 rhs) return ret; } - /// - /// internal static RelativeVector4 GetRelativeVector4FromPtr(global::System.IntPtr cPtr) { RelativeVector4 ret = new RelativeVector4(cPtr, false); diff --git a/src/Tizen.NUI/src/public/Common/Rotation.cs b/src/Tizen.NUI/src/public/Common/Rotation.cs index 3eac9a41ed3..559d3b4fe8c 100755 --- a/src/Tizen.NUI/src/public/Common/Rotation.cs +++ b/src/Tizen.NUI/src/public/Common/Rotation.cs @@ -21,7 +21,7 @@ namespace Tizen.NUI { /// - /// The Rotation class. + /// The Rotation class represents a rotation of a UI Component. /// /// 3 [Binding.TypeConverter(typeof(RotationTypeConverter))] @@ -29,7 +29,7 @@ public class Rotation : Disposable { /// - /// The default constructor. + /// The default constructor of Rotation class. /// /// 3 public Rotation() : this(Interop.Rotation.NewRotation(), true) @@ -85,7 +85,7 @@ public Rotation(Vector4 vector) : this(Interop.Rotation.NewRotation4(Vector4.get } /// - /// (0.0f,0.0f,0.0f,1.0f). + /// The identity rotation, which represents no rotation. Actual value is (0.0f,0.0f,0.0f,1.0f). /// /// 3 public static Rotation IDENTITY @@ -414,6 +414,7 @@ public Rotation Normalized() /// /// Conjugates this rotation. + /// This method computes the conjugate of the current rotation. /// /// 3 public void Conjugate() @@ -424,6 +425,7 @@ public void Conjugate() /// /// Inverts this rotation. + /// This method computes the invert of the current rotation. /// /// 3 public void Invert() diff --git a/src/Tizen.NUI/src/public/Common/TypeInfo.cs b/src/Tizen.NUI/src/public/Common/TypeInfo.cs index 23f50200902..160a53bc553 100755 --- a/src/Tizen.NUI/src/public/Common/TypeInfo.cs +++ b/src/Tizen.NUI/src/public/Common/TypeInfo.cs @@ -27,7 +27,7 @@ public class TypeInfo : BaseHandle { /// - /// Creates TypeInfo object. + /// Default constructor which creates TypeInfo object. /// /// 3 public TypeInfo() : this(Interop.TypeInfo.NewTypeInfo(), true, false) diff --git a/src/Tizen.NUI/src/public/Common/Vector2.cs b/src/Tizen.NUI/src/public/Common/Vector2.cs index 68115d8762f..bb76d1ebd15 100755 --- a/src/Tizen.NUI/src/public/Common/Vector2.cs +++ b/src/Tizen.NUI/src/public/Common/Vector2.cs @@ -107,7 +107,8 @@ internal Vector2(Vector2ChangedCallback cb, Vector2 other) : this(cb, other.X, o private Vector2ChangedCallback callback = null; /// - /// (1.0f,1.0f). + /// Returns a Vector2 instance where both the x and y components are set to 1.0f. + /// Actual value is (1.0f,1.0f). /// /// 3 public static Vector2 One @@ -182,7 +183,8 @@ public static Vector2 NegativeYAxis } /// - /// (0.0f, 0.0f). + /// A Vector2 object representing the zero vector. + /// Actual value is (0.0f, 0.0f). /// /// 3 public static Vector2 Zero diff --git a/src/Tizen.NUI/src/public/Common/Vector3.cs b/src/Tizen.NUI/src/public/Common/Vector3.cs index 5271bf1ce0f..6cf28940be8 100755 --- a/src/Tizen.NUI/src/public/Common/Vector3.cs +++ b/src/Tizen.NUI/src/public/Common/Vector3.cs @@ -29,7 +29,7 @@ namespace Tizen.NUI public class Vector3 : Disposable, ICloneable { /// - /// The constructor. + /// The default constructor of Vector3 class. /// /// 3 public Vector3() : this(Interop.Vector3.NewVector3(), true) @@ -92,7 +92,8 @@ internal Vector3(Vector3ChangedCallback cb, float x, float y, float z) : this(In private Vector3ChangedCallback callback = null; /// - /// (1.0f,1.0f,1.0f). + /// Returns a Vector2 instance where both the x and y components are set to 1.0f. + /// Actual value is (1.0f,1.0f,1.0f). /// /// 3 public static Vector3 One @@ -197,7 +198,8 @@ public static Vector3 NegativeZAxis } /// - /// (0.0f, 0.0f, 0.0f). + /// A Vector2 object representing the zero vector. + /// Actual value is (0.0f, 0.0f, 0.0f). /// /// 3 public static Vector3 Zero diff --git a/src/Tizen.NUI/src/public/Common/Vector4.cs b/src/Tizen.NUI/src/public/Common/Vector4.cs index 7893562b6bc..325a46332e3 100755 --- a/src/Tizen.NUI/src/public/Common/Vector4.cs +++ b/src/Tizen.NUI/src/public/Common/Vector4.cs @@ -94,7 +94,8 @@ internal Vector4(Vector4ChangedCallback cb, float x, float y, float z, float w) private Vector4ChangedCallback callback = null; /// - /// (1.0f,1.0f,1.0f,1.0f). + /// Returns a Vector2 instance where both the x and y components are set to 1.0f. + /// Actual value is (1.0f,1.0f,1.0f,1.0f). /// /// 3 public static Vector4 One @@ -109,7 +110,8 @@ public static Vector4 One } /// - /// (1.0f,0.0f,0.0f,0.0f). + /// The vector representing the x-axis. + /// Actual value is (1.0f,0.0f,0.0f,0.0f). /// /// 3 public static Vector4 XAxis @@ -124,7 +126,8 @@ public static Vector4 XAxis } /// - /// (0.0f,1.0f,0.0f,0.0f). + /// The vector representing the y-axis. + /// Actual value is (0.0f,1.0f,0.0f,0.0f). /// /// 3 public static Vector4 YAxis @@ -139,7 +142,8 @@ public static Vector4 YAxis } /// - /// (0.0f,0.0f,1.0f,0.0f). + /// The vector representing the z-axis. + /// Actual value is (0.0f,0.0f,1.0f,0.0f). /// /// 3 public static Vector4 ZAxis @@ -154,7 +158,8 @@ public static Vector4 ZAxis } /// - /// (0.0f, 0.0f, 0.0f, 0.0f). + /// A Vector2 object representing the zero vector. + /// Actual value is (0.0f, 0.0f, 0.0f, 0.0f). /// /// 3 public static Vector4 Zero diff --git a/src/Tizen.NUI/src/public/Common/WeakEvent.cs b/src/Tizen.NUI/src/public/Common/WeakEvent.cs index c57e7e69124..2ae7ce92af7 100755 --- a/src/Tizen.NUI/src/public/Common/WeakEvent.cs +++ b/src/Tizen.NUI/src/public/Common/WeakEvent.cs @@ -40,7 +40,7 @@ public class WeakEvent where T : Delegate protected int Count => handlers.Count; /// - /// Add an event handler. + /// Adds an event handler to the list of weak references. /// /// 12 public virtual void Add(T handler) @@ -59,6 +59,7 @@ public virtual void Add(T handler) /// /// Remove last stored event handler equal to . /// + /// The event handler to remove. /// 12 public virtual void Remove(T handler) { @@ -80,6 +81,8 @@ public virtual void Remove(T handler) /// /// Invoke event handlers. /// + /// The source of the event. + /// An object that contains event data. /// 12 public void Invoke(object sender, object args) { diff --git a/src/Tizen.NUI/src/public/CustomView/CustomViewRegistry.cs b/src/Tizen.NUI/src/public/CustomView/CustomViewRegistry.cs index 506250057a5..1a40e45cf51 100755 --- a/src/Tizen.NUI/src/public/CustomView/CustomViewRegistry.cs +++ b/src/Tizen.NUI/src/public/CustomView/CustomViewRegistry.cs @@ -97,6 +97,11 @@ public class ScriptableProperty : System.Attribute [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1051:Do not declare visible instance fields", Justification = "")] public readonly ScriptableType type; + + /// + /// Initializes a new instance of the class. + /// + /// The type of the scriptable property. /// 3 public ScriptableProperty(ScriptableType type = ScriptableType.Default) { @@ -114,7 +119,7 @@ public enum ScriptableType /// /// 3 Default, // Read Writable, non-animatable property, event thread only - // Animatable // Animatable property, Currently disabled, UK + // Animatable // Animatable property, Currently disabled, UK } /// @@ -165,22 +170,21 @@ public sealed class CustomViewRegistry /// /// Lookup table to match C# types to DALi types, used for the automatic property registration. /// - private static readonly Dictionary daliPropertyTypeLookup - = new Dictionary + private static readonly Dictionary daliPropertyTypeLookup = new Dictionary { - { "float", PropertyType.Float }, - { "int", PropertyType.Integer }, - { "Int32", PropertyType.Integer }, - { "Boolean", PropertyType.Boolean }, - { "string", PropertyType.String }, - { "Vector2", PropertyType.Vector2 }, - { "Vector3", PropertyType.Vector3 }, - { "Vector4", PropertyType.Vector4 }, - { "Size", PropertyType.Vector2 }, - { "Position",PropertyType.Vector3 }, - { "Color", PropertyType.Vector4 }, - { "PropertyArray", PropertyType.Array }, - { "PropertyMap", PropertyType.Map }, + { "float", PropertyType.Float }, + { "int", PropertyType.Integer }, + { "Int32", PropertyType.Integer }, + { "Boolean", PropertyType.Boolean }, + { "string", PropertyType.String }, + { "Vector2", PropertyType.Vector2 }, + { "Vector3", PropertyType.Vector3 }, + { "Vector4", PropertyType.Vector4 }, + { "Size", PropertyType.Vector2 }, + { "Position",PropertyType.Vector3 }, + { "Color", PropertyType.Vector4 }, + { "PropertyArray", PropertyType.Array }, + { "PropertyMap", PropertyType.Map }, // { "Matrix3", PropertyType.MATRIX3 }, commented out until we need to use Matrices from JSON // { "Matrix", PropertyType.MATRIX }, }; @@ -220,6 +224,9 @@ private CustomViewRegistry() [UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void SetPropertyDelegate(IntPtr controlPtr, IntPtr propertyName, IntPtr propertyValue); + /// + /// Gets the singleton instance of the CustomViewRegistry. + /// /// 3 public static CustomViewRegistry Instance { diff --git a/src/Tizen.NUI/src/public/CustomView/ViewWrapper.cs b/src/Tizen.NUI/src/public/CustomView/ViewWrapper.cs index 5192c670983..0a9651f9117 100755 --- a/src/Tizen.NUI/src/public/CustomView/ViewWrapper.cs +++ b/src/Tizen.NUI/src/public/CustomView/ViewWrapper.cs @@ -20,8 +20,9 @@ namespace Tizen.NUI { /// - /// ViewWrapper. - /// + /// ViewWrapper provides a way to wrap a custom view implementation within the Tizen NUI framework. + /// This class is intended for advanced users who need to extend the functionality of the View class by implementing their own rendering logic. + /// /// 3 public class ViewWrapper : View { diff --git a/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs b/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs index c0d9120baaf..fb93dab2145 100755 --- a/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs +++ b/src/Tizen.NUI/src/public/DragAndDrop/DragAndDrop.cs @@ -31,8 +31,19 @@ namespace Tizen.NUI [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Reliability", "CA2000: Dispose objects before losing scope", Justification = "It does not have ownership.")] public class DragAndDrop : BaseHandle { + /// + /// A delegate representing the method that will handle the drag source event. + /// + /// The type of the drag source event. public delegate void SourceEventHandler(DragSourceEventType sourceEventType); + private delegate void InternalSourceEventHandler(int sourceEventType); + + /// + /// Delegate representing the method that will handle drag and drop events. + /// + /// The view where the drag event occurred. + /// The native drag event containing details about the drag operation. public delegate void DragAndDropEventHandler(View targetView, DragEvent navtiveDragEvent); [EditorBrowsable(EditorBrowsableState.Never)] public delegate void DragAndDropWindowEventHandler(Window targetWindow, DragEvent navtiveDragEvent); diff --git a/src/Tizen.NUI/src/public/DragAndDrop/DragEvent.cs b/src/Tizen.NUI/src/public/DragAndDrop/DragEvent.cs index da4cc9ae183..dd2f80cca2f 100755 --- a/src/Tizen.NUI/src/public/DragAndDrop/DragEvent.cs +++ b/src/Tizen.NUI/src/public/DragAndDrop/DragEvent.cs @@ -22,25 +22,25 @@ namespace Tizen.NUI { /// - /// Drag source event type. + /// Enumeration for the drag source event types. /// /// 10 public enum DragSourceEventType { /// - /// Drag and drop is started. + /// Indicates that the drag and drop operation has started. /// Start, /// - /// Drag and drop is cancelled. + /// Indicates that the drag and drop operation has been cancelled. /// Cancel, /// - /// Drag and drop is accepted. + /// Indicates that the drag and drop operation has been accepted by the target. /// Accept, /// - /// Drag and drop is finished. + /// Indicates that the drag and drop operation has finished. /// Finish } @@ -70,7 +70,7 @@ public struct DragData } /// - /// Drag event type. + /// This enumeration defines the different types of drag events that can occur when a drag-and-drop operation is performed on a target view. /// /// 10 public enum DragType diff --git a/src/Tizen.NUI/src/public/Events/Gesture.cs b/src/Tizen.NUI/src/public/Events/Gesture.cs index 7488c899206..0cdff93d8df 100755 --- a/src/Tizen.NUI/src/public/Events/Gesture.cs +++ b/src/Tizen.NUI/src/public/Events/Gesture.cs @@ -163,7 +163,7 @@ public enum SourceDataType } /// - /// The gesture type. + /// Gets the type of gesture. /// /// 3 public Gesture.GestureType Type @@ -175,7 +175,7 @@ public Gesture.GestureType Type } /// - /// The gesture state. + /// Gets the state of gesture. /// /// 3 public Gesture.StateType State @@ -187,7 +187,7 @@ public Gesture.StateType State } /// - /// The time the gesture took place. + /// Get the time when the gesture took place. /// /// 3 public uint Time diff --git a/src/Tizen.NUI/src/public/Events/Hover.cs b/src/Tizen.NUI/src/public/Events/Hover.cs index b202e84b9ca..cbbbff86d13 100755 --- a/src/Tizen.NUI/src/public/Events/Hover.cs +++ b/src/Tizen.NUI/src/public/Events/Hover.cs @@ -30,7 +30,7 @@ public class Hover : BaseHandle { /// - /// The default constructor. + /// The default constructor of Hover class. /// /// 3 public Hover() : this(Interop.Hover.New(0u), true) diff --git a/src/Tizen.NUI/src/public/Events/PanGesture.cs b/src/Tizen.NUI/src/public/Events/PanGesture.cs index 8587a69af1b..88c6875933f 100755 --- a/src/Tizen.NUI/src/public/Events/PanGesture.cs +++ b/src/Tizen.NUI/src/public/Events/PanGesture.cs @@ -32,7 +32,7 @@ public class PanGesture : Gesture { /// - /// The default constructor. + /// The default constructor of PanGesture class. /// /// 3 public PanGesture() : this(Interop.PanGestureDetector.PanGestureNew(0), true) diff --git a/src/Tizen.NUI/src/public/Events/TapGesture.cs b/src/Tizen.NUI/src/public/Events/TapGesture.cs index f9fe9818147..8818627ebde 100755 --- a/src/Tizen.NUI/src/public/Events/TapGesture.cs +++ b/src/Tizen.NUI/src/public/Events/TapGesture.cs @@ -28,7 +28,7 @@ public class TapGesture : Gesture { /// - /// Creates a TapGesture. + /// Default constructor to creates a TapGesture. /// /// 3 public TapGesture() : this(Interop.TapGesture.New(0), true) diff --git a/src/Tizen.NUI/src/public/Events/Touch.cs b/src/Tizen.NUI/src/public/Events/Touch.cs index 69168ff356d..535d7a06931 100755 --- a/src/Tizen.NUI/src/public/Events/Touch.cs +++ b/src/Tizen.NUI/src/public/Events/Touch.cs @@ -253,7 +253,7 @@ internal static Touch GetTouchFromPtr(global::System.IntPtr cPtr) return ret; } - /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Degree GetAngle(uint point) { diff --git a/src/Tizen.NUI/src/public/Events/Wheel.cs b/src/Tizen.NUI/src/public/Events/Wheel.cs index ab2d3be73d4..a07b7b67220 100755 --- a/src/Tizen.NUI/src/public/Events/Wheel.cs +++ b/src/Tizen.NUI/src/public/Events/Wheel.cs @@ -30,7 +30,7 @@ public class Wheel : BaseHandle { /// - /// The default constructor. + /// The default constructor of Wheel class. /// /// 3 public Wheel() : this(Interop.Wheel.New(0, 0, 0u, Vector2.getCPtr(new Vector2(0.0f, 0.0f)), 0, 0u), true) diff --git a/src/Tizen.NUI/src/public/Input/FocusManagerArgs.cs b/src/Tizen.NUI/src/public/Input/FocusManagerArgs.cs index 8bf48609b70..ea2cc977f70 100755 --- a/src/Tizen.NUI/src/public/Input/FocusManagerArgs.cs +++ b/src/Tizen.NUI/src/public/Input/FocusManagerArgs.cs @@ -31,7 +31,7 @@ public class FocusChangingEventArgs : EventArgs private View.FocusDirection direction; /// - /// The view which is currently focused. + /// Gets or sets the view which is currently focused. /// /// 10 public View Current @@ -47,7 +47,7 @@ public View Current } /// - /// The proposed view. + /// Gets or sets the proposed view for focus change. /// /// 10 public View Proposed @@ -63,7 +63,7 @@ public View Proposed } /// - /// The focus move direction. + /// Gets or sets the focus move direction. /// /// 10 public View.FocusDirection Direction diff --git a/src/Tizen.NUI/src/public/Input/InputMethod.cs b/src/Tizen.NUI/src/public/Input/InputMethod.cs index bfe555d75b4..eaf00a6f2cf 100755 --- a/src/Tizen.NUI/src/public/Input/InputMethod.cs +++ b/src/Tizen.NUI/src/public/Input/InputMethod.cs @@ -28,7 +28,7 @@ public class InputMethod private int? variation = null; /// - /// The default constructor. + /// The default constructor of InputMethod. /// /// 3 public InputMethod() diff --git a/src/Tizen.NUI/src/public/Input/InputMethodContext.cs b/src/Tizen.NUI/src/public/Input/InputMethodContext.cs index c188e3006e5..faffaacac80 100755 --- a/src/Tizen.NUI/src/public/Input/InputMethodContext.cs +++ b/src/Tizen.NUI/src/public/Input/InputMethodContext.cs @@ -68,7 +68,7 @@ internal InputMethodContext(IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOw private event EventHandler contentReceivedEventHandler; /// - /// InputMethodContext activated. + /// Event handler for the activation of the InputMethodContext. /// /// 5 public event EventHandler Activated @@ -95,7 +95,7 @@ public event EventHandler Activated } /// - /// InputMethodContext event received. + /// This event handler is used to receive events related to the InputMethodContext. /// /// 5 public event EventHandlerWithReturnType EventReceived @@ -122,7 +122,7 @@ public event EventHandlerWithReturnType - /// InputMethodContext status changed. + /// The StatusChanged event is triggered when the input method context status changes. /// /// 5 public event EventHandler StatusChanged @@ -149,7 +149,7 @@ public event EventHandler StatusChanged } /// - /// InputMethodContext resized. + /// Event handler for the InputMethodContext resized event. /// /// 5 public event EventHandler Resized @@ -176,7 +176,7 @@ public event EventHandler Resized } /// - /// InputMethodContext language changed. + /// This event is triggered when the language of the InputMethodContext changes. /// /// 5 public event EventHandler LanguageChanged @@ -203,7 +203,7 @@ public event EventHandler LanguageChanged } /// - /// InputMethodContext keyboard type changed. + /// Event handler for InputMethodContext keyboard type changed. /// /// 5 public event EventHandler KeyboardTypeChanged @@ -232,7 +232,7 @@ public event EventHandler KeyboardTypeChanged /// /// InputMethodContext content received. /// - /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public event EventHandler ContentReceived { @@ -258,7 +258,7 @@ public event EventHandler ContentReceived } /// - /// The direction of the text. + /// Enumeration for the direction of the text. /// /// 5 public enum TextDirection @@ -274,7 +274,7 @@ public enum TextDirection } /// - /// Events that are generated by the IMF. + /// Enumeration for the events that are generated by the IMF. /// /// 5 public enum EventType @@ -667,6 +667,7 @@ public void ShowInputPanel() /// /// Hides the input panel. + /// This method hides the on-screen keyboard or input panel associated with the current InputMethodContext instance. /// /// 5 public void HideInputPanel() @@ -1013,7 +1014,7 @@ public class EventData : Disposable private global::System.Runtime.InteropServices.HandleRef swigCPtr; /// - /// The default constructor. + /// The default constructor of EventData class. /// /// 5 public EventData() : this(Interop.InputMethodContext.NewInputMethodContextEventData(), true) @@ -1173,7 +1174,7 @@ public class CallbackData : Disposable private global::System.Runtime.InteropServices.HandleRef swigCPtr; /// - /// The default constructor. + /// The default constructor of CallbackData class. /// /// 5 public CallbackData() : this(Interop.InputMethodContext.NewInputMethodContextCallbackData(), true) diff --git a/src/Tizen.NUI/src/public/Input/Key.cs b/src/Tizen.NUI/src/public/Input/Key.cs index ab703231200..c473935a3ab 100755 --- a/src/Tizen.NUI/src/public/Input/Key.cs +++ b/src/Tizen.NUI/src/public/Input/Key.cs @@ -27,7 +27,7 @@ namespace Tizen.NUI public class Key : BaseHandle { /// - /// The default constructor. + /// The default constructor of Key class. /// /// 3 public Key() : this(Interop.Key.New("","",0,0,0u,0), true) @@ -81,7 +81,7 @@ public enum StateType } /// - /// Device name + /// Gets the device name /// /// 3 public string DeviceName @@ -95,7 +95,7 @@ public string DeviceName } /// - /// Name given to the key pressed. + /// Gets or sets the name given to the key pressed. /// /// 3 public string KeyPressedName @@ -223,7 +223,7 @@ public uint Time } /// - /// State of the key event. + /// Gests or sets the state of the key event. /// /// 3 public Key.StateType State diff --git a/src/Tizen.NUI/src/public/Input/KeyValue.cs b/src/Tizen.NUI/src/public/Input/KeyValue.cs index 24cf408ea4d..28821455284 100755 --- a/src/Tizen.NUI/src/public/Input/KeyValue.cs +++ b/src/Tizen.NUI/src/public/Input/KeyValue.cs @@ -23,7 +23,7 @@ namespace Tizen.NUI { /// - /// KeyValue class. + /// The KeyValue class provides functionality for managing key-value pairs. /// public class KeyValue : IDisposable { @@ -57,13 +57,13 @@ public class KeyValue : IDisposable private object originalKey = null; /// - /// Default Constructor. + /// The default Constructor of KeyValue class. /// public KeyValue() { } /// - /// Key property. + /// Gets or sets the key value. /// public string Key { @@ -79,7 +79,7 @@ public string Key } /// - /// OriginalKey property. + /// Gets or sets the original key associated with the KeyValue object. /// /// Thrown when value is null. public object OriginalKey @@ -116,7 +116,7 @@ public object OriginalKey } /// - /// Value property. + /// Gets or sets the value associated with the key. /// public object Value { @@ -181,7 +181,7 @@ public PropertyValue PropertyValue } /// - /// IntergerValue property. + /// Gets or sets the integer value associated with the key. /// public int IntergerValue { @@ -201,7 +201,7 @@ public int IntergerValue } /// - /// BooleanValue property. + /// Gets or sets the boolean value associated with the key. /// public bool BooleanValue { @@ -221,7 +221,7 @@ public bool BooleanValue } /// - /// SingleValue property. + /// Gets or sets the Single(float) value associated with the key. /// public float SingleValue { @@ -241,7 +241,7 @@ public float SingleValue } /// - /// StringValue property. + /// Gets or sets the string value associated with the key. /// public string StringValue { @@ -261,7 +261,7 @@ public string StringValue } /// - /// Vector2Value property. + /// Gets or sets the value associated with the key. /// public Vector2 Vector2Value { @@ -282,7 +282,7 @@ public Vector2 Vector2Value } /// - /// Vector3Value property. + /// Gets or sets the value associated with the key. /// public Vector3 Vector3Value { @@ -303,7 +303,7 @@ public Vector3 Vector3Value } /// - /// Vector4Value property. + /// Gets or sets the value associated with the key. /// public Vector4 Vector4Value { @@ -324,7 +324,7 @@ public Vector4 Vector4Value } /// - /// PositionValue property. + /// Gets or sets the value associated with the key. /// public Position PositionValue { @@ -345,7 +345,7 @@ public Position PositionValue } /// - /// Position2DValue property. + /// Gets or sets the value associated with the key. /// public Position2D Position2DValue { @@ -366,7 +366,7 @@ public Position2D Position2DValue } /// - /// SizeValue property. + /// Gets or sets the value associated with the key. /// public Size SizeValue { @@ -387,7 +387,7 @@ public Size SizeValue } /// - /// Size2DValue property. + /// Gets or sets the value associated with the key. /// public Size2D Size2DValue { @@ -408,7 +408,7 @@ public Size2D Size2DValue } /// - /// ColorValue property. + /// Gets or sets the value associated with the key. /// public Color ColorValue { @@ -429,7 +429,7 @@ public Color ColorValue } /// - /// RectangleValue property. + /// Gets or sets the value associated with the key. /// public Rectangle RectangleValue { @@ -450,7 +450,7 @@ public Rectangle RectangleValue } /// - /// RotationValue property. + /// Gets or sets the value associated with the key. /// public Rotation RotationValue { @@ -471,7 +471,7 @@ public Rotation RotationValue } /// - /// RelativeVector2Value property. + /// Gets or sets the value associated with the key. /// public RelativeVector2 RelativeVector2Value { @@ -492,7 +492,7 @@ public RelativeVector2 RelativeVector2Value } /// - /// RelativeVector3Value property. + /// Gets or sets the value associated with the key. /// public RelativeVector3 RelativeVector3Value { @@ -513,7 +513,7 @@ public RelativeVector3 RelativeVector3Value } /// - /// RelativeVector4Value property. + /// Gets or sets the value associated with the key. /// public RelativeVector4 RelativeVector4Value { @@ -534,7 +534,7 @@ public RelativeVector4 RelativeVector4Value } /// - /// ExtentsValue property. + /// Gets or sets the value associated with the key. /// public Extents ExtentsValue { @@ -555,7 +555,7 @@ public Extents ExtentsValue } /// - /// PropertyArrayValue property. + /// Gets or sets the value associated with the key. /// public PropertyArray PropertyArrayValue { @@ -576,7 +576,7 @@ public PropertyArray PropertyArrayValue } /// - /// PropertyMapValue property. + /// Gets or sets the value associated with the key. /// public PropertyMap PropertyMapValue { diff --git a/src/Tizen.NUI/src/public/Layouting/AbsoluteLayout.cs b/src/Tizen.NUI/src/public/Layouting/AbsoluteLayout.cs index d6675dfd65c..2ab9b409683 100755 --- a/src/Tizen.NUI/src/public/Layouting/AbsoluteLayout.cs +++ b/src/Tizen.NUI/src/public/Layouting/AbsoluteLayout.cs @@ -17,13 +17,13 @@ namespace Tizen.NUI { /// - /// [Draft] This class implements a absolute layout, allowing explicit positioning of children. - /// Positions are from the top left of the layout and can be set using the View.Position and alike. + /// This class implements a absolute layout, allowing explicit positioning of children. + /// Positions are from the top left of the layout and can be set using the View.Position and alike. /// public class AbsoluteLayout : LayoutGroup { /// - /// [Draft] Constructor + /// The default constructor of AbsoluteLayout class /// /// 6 public AbsoluteLayout() diff --git a/src/Tizen.NUI/src/public/Layouting/ILayoutParent.cs b/src/Tizen.NUI/src/public/Layouting/ILayoutParent.cs index 34108235c95..e3f21dfe19e 100755 --- a/src/Tizen.NUI/src/public/Layouting/ILayoutParent.cs +++ b/src/Tizen.NUI/src/public/Layouting/ILayoutParent.cs @@ -18,7 +18,6 @@ namespace Tizen.NUI { /// - /// [Draft] /// Interface that defines a layout Parent. Enables a layout child to access methods on its parent, e.g. Remove (during unparenting) /// public interface ILayoutParent diff --git a/src/Tizen.NUI/src/public/Layouting/LayoutGroup.cs b/src/Tizen.NUI/src/public/Layouting/LayoutGroup.cs index ee259b1adaf..754ed1e8f00 100755 --- a/src/Tizen.NUI/src/public/Layouting/LayoutGroup.cs +++ b/src/Tizen.NUI/src/public/Layouting/LayoutGroup.cs @@ -26,18 +26,18 @@ namespace Tizen.NUI { /// - /// [Draft] LayoutGroup class providing container functionality. + /// LayoutGroup class providing container functionality. /// public class LayoutGroup : LayoutItem, ILayoutParent { /// - /// [Draft] List of child layouts in this container. + /// List of child layouts in this container. /// /// 6 protected List LayoutChildren { get; } // Children of this LayoutGroup /// - /// [Draft] Constructor + /// Default constructor of LayoutGroup class. /// /// 6 public LayoutGroup() diff --git a/src/Tizen.NUI/src/public/Layouting/LayoutItem.cs b/src/Tizen.NUI/src/public/Layouting/LayoutItem.cs index 7f9e69a9fea..b512e849d71 100755 --- a/src/Tizen.NUI/src/public/Layouting/LayoutItem.cs +++ b/src/Tizen.NUI/src/public/Layouting/LayoutItem.cs @@ -34,7 +34,7 @@ enum LayoutFlags : short }; /// - /// [Draft] Base class for layouts. It is used to layout a View + /// Base class for layouts. It is used to layout a View /// It can be laid out by a LayoutGroup. /// public class LayoutItem : IDisposable @@ -56,18 +56,18 @@ public class LayoutItem : IDisposable private bool setPositionByLayout = true; /// - /// [Draft] Condition event that is causing this Layout to transition. + /// Condition event that is causing this Layout to transition. /// internal TransitionCondition ConditionForAnimation { get; set; } /// - /// [Draft] The View that this Layout has been assigned to. + /// The View that this Layout has been assigned to. /// /// 6 public View Owner { get; set; } // Should not keep a View alive. /// - /// [Draft] Use transition for layouting child + /// Use transition for layouting child /// /// 6 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API. @@ -75,7 +75,7 @@ public class LayoutItem : IDisposable public bool LayoutWithTransition { get; set; } /// - /// [Draft] Set position by layouting result + /// Set position by layouting result /// [EditorBrowsable(EditorBrowsableState.Never)] public bool SetPositionByLayout @@ -95,7 +95,7 @@ public bool SetPositionByLayout } /// - /// [Draft] Margin for this LayoutItem + /// Margin for this LayoutItem /// /// 6 public Extents Margin @@ -112,7 +112,7 @@ public Extents Margin } /// - /// [Draft] Padding for this LayoutItem + /// Padding for this LayoutItem /// /// 6 public Extents Padding @@ -129,7 +129,7 @@ public Extents Padding } /// - /// [Draft] Constructor + /// Default constructor of LayoutItem class. /// /// 6 public LayoutItem() @@ -138,7 +138,7 @@ public LayoutItem() } /// - /// [Draft] Set parent to this layout. + /// Set parent to this layout. /// /// Parent to set on this Layout. internal void SetParent(ILayoutParent parent) @@ -370,7 +370,6 @@ public void RequestLayout() /// /// Predicate to determine if this layout has been requested to re-layout.
///
- internal bool LayoutRequested { get diff --git a/src/Tizen.NUI/src/public/Layouting/LayoutLength.cs b/src/Tizen.NUI/src/public/Layouting/LayoutLength.cs index a412195f1ac..9ec4290c6d5 100755 --- a/src/Tizen.NUI/src/public/Layouting/LayoutLength.cs +++ b/src/Tizen.NUI/src/public/Layouting/LayoutLength.cs @@ -20,14 +20,14 @@ namespace Tizen.NUI { /// - /// [Draft] A type that represents a layout length. Currently, this implies pixels, but could be extended to handle device dependant sizes, etc. + /// A type that represents a layout length. Currently, this implies pixels, but could be extended to handle device dependant sizes, etc. /// public struct LayoutLength : IEquatable { private float value; /// - /// [Draft] Constructor from an int + /// Constructor from an int /// /// Int to initialize with. /// 6 @@ -37,7 +37,7 @@ public LayoutLength(int value) } /// - /// [Draft] Constructor from a float + /// Constructor from a float /// /// Float to initialize with. /// 6 @@ -47,7 +47,7 @@ public LayoutLength(float value) } /// - /// [Draft] Constructor from a LayoutLength + /// Constructor from a LayoutLength /// /// LayoutLength object to initialize with. /// 6 @@ -57,7 +57,7 @@ public LayoutLength(LayoutLength layoutLength) } /// - /// [Draft] Return value as rounded value (whole number), best used as final output + /// Return value as rounded value (whole number), best used as final output /// /// The layout length value as a rounded whole number. /// 6 @@ -67,7 +67,7 @@ public float AsRoundedValue() } /// - /// [Draft] Return value as the raw decimal value, best used for calculations + /// Return value as the raw decimal value, best used for calculations /// /// The layout length value as the raw decimal value. /// 6 @@ -77,7 +77,7 @@ public float AsDecimal() } /// - /// [Draft] The == operator. + /// The == operator. /// /// The first value. /// The second value @@ -89,7 +89,7 @@ public float AsDecimal() } /// - /// [Draft] The != operator. + /// The != operator. /// /// The first value. /// The second value diff --git a/src/Tizen.NUI/src/public/Layouting/LinearLayout.cs b/src/Tizen.NUI/src/public/Layouting/LinearLayout.cs index 3450182e90d..5a5db22d201 100755 --- a/src/Tizen.NUI/src/public/Layouting/LinearLayout.cs +++ b/src/Tizen.NUI/src/public/Layouting/LinearLayout.cs @@ -23,14 +23,14 @@ namespace Tizen.NUI { /// - /// [Draft] This class implements a linear box layout, automatically handling right to left or left to right direction change. + /// This class implements a linear box layout, automatically handling right to left or left to right direction change. /// public class LinearLayout : LayoutGroup { private Alignment linearAlignment = Alignment.Top; /// - /// [Draft] Enumeration for the direction in which the content is laid out + /// Enumeration for the direction in which the content is laid out /// /// 6 public enum Orientation @@ -46,7 +46,7 @@ public enum Orientation } /// - /// [Draft] Enumeration for the alignment of the linear layout items + /// Enumeration for the alignment of the linear layout items /// /// 6 [Obsolete("This has been deprecated in API9 and will be removed in API11. Use HorizontalAlignment and VerticalAlignment instead.")] @@ -95,7 +95,7 @@ public HeightAndWidthState(MeasuredSize.StateType width, MeasuredSize.StateType } /// - /// [Draft] Get/Set the orientation in the layout + /// Get/Set the orientation in the layout /// /// 6 public LinearLayout.Orientation LinearOrientation @@ -112,7 +112,7 @@ public LinearLayout.Orientation LinearOrientation } /// - /// [Draft] Get/Set the padding between cells in the layout + /// Get/Set the padding between cells in the layout /// /// 6 public Size2D CellPadding @@ -135,7 +135,7 @@ public Size2D CellPadding /// - /// [Draft] Get/Set the alignment in the layout + /// Get/Set the alignment in the layout /// /// 6 [Obsolete("This has been deprecated in API9 and will be removed in API11. Use HorizontalAlignment and VerticalAlignment properties instead.")] @@ -202,7 +202,7 @@ public LinearLayout.Alignment LinearAlignment private Orientation linearOrientation = Orientation.Horizontal; /// - /// [Draft] Constructor + /// Default constructor of LinearLayout class. /// /// 6 public LinearLayout() diff --git a/src/Tizen.NUI/src/public/Layouting/MeasureSpecification.cs b/src/Tizen.NUI/src/public/Layouting/MeasureSpecification.cs index f58f4f77c8d..50cf621e176 100755 --- a/src/Tizen.NUI/src/public/Layouting/MeasureSpecification.cs +++ b/src/Tizen.NUI/src/public/Layouting/MeasureSpecification.cs @@ -22,7 +22,7 @@ namespace Tizen.NUI { /// - /// [Draft] A MeasureSpecification is used during the Measure pass by a LayoutGroup to inform it's children how to be measured. + /// A MeasureSpecification is used during the Measure pass by a LayoutGroup to inform it's children how to be measured. /// For instance, it may measure a child with an exact width and an unspecified height in order to determine height for width. /// public struct MeasureSpecification diff --git a/src/Tizen.NUI/src/public/Layouting/MeasuredSize.cs b/src/Tizen.NUI/src/public/Layouting/MeasuredSize.cs index ca464a1b6c1..381dd35fe58 100755 --- a/src/Tizen.NUI/src/public/Layouting/MeasuredSize.cs +++ b/src/Tizen.NUI/src/public/Layouting/MeasuredSize.cs @@ -21,7 +21,7 @@ namespace Tizen.NUI { /// - /// [Draft] Class that encodes a measurement and a measure state, which is set if the measured size is too small. + /// Class that encodes a measurement and a measure state, which is set if the measured size is too small. /// public struct MeasuredSize { diff --git a/src/Tizen.NUI/src/public/Layouting/PaddingType.cs b/src/Tizen.NUI/src/public/Layouting/PaddingType.cs index 6cdc71df37c..e324d375b9d 100755 --- a/src/Tizen.NUI/src/public/Layouting/PaddingType.cs +++ b/src/Tizen.NUI/src/public/Layouting/PaddingType.cs @@ -20,7 +20,7 @@ namespace Tizen.NUI using System.ComponentModel; /// - /// The gesture state. + /// The PaddingType class represents padding properties used in layouting. /// /// 3 public class PaddingType : Disposable @@ -53,7 +53,7 @@ internal PaddingType(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, c } /// - /// The Start value. + /// The Start value horizontally. /// /// 4 public float Start @@ -69,7 +69,7 @@ public float Start } /// - /// The End value. + /// The End value horizontally. /// /// 4 public float End @@ -85,7 +85,7 @@ public float End } /// - /// The Top value. + /// The Top value vertically. /// /// 3 public float Top @@ -101,7 +101,7 @@ public float Top } /// - /// The Bottom value. + /// The Bottom value vertically. /// /// 3 public float Bottom diff --git a/src/Tizen.NUI/src/public/Rendering/FilterModeType.cs b/src/Tizen.NUI/src/public/Rendering/FilterModeType.cs index 945a4bd6e29..e645b259f30 100755 --- a/src/Tizen.NUI/src/public/Rendering/FilterModeType.cs +++ b/src/Tizen.NUI/src/public/Rendering/FilterModeType.cs @@ -18,7 +18,7 @@ namespace Tizen.NUI { /// - /// The filter mode type. + /// Enumeration of the type of possible filter modes. /// /// 3 public enum FilterModeType diff --git a/src/Tizen.NUI/src/public/Rendering/Renderer.cs b/src/Tizen.NUI/src/public/Rendering/Renderer.cs index fbc4b3f26bf..f6a6441e808 100755 --- a/src/Tizen.NUI/src/public/Rendering/Renderer.cs +++ b/src/Tizen.NUI/src/public/Rendering/Renderer.cs @@ -812,33 +812,27 @@ protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef Interop.Renderer.DeleteRenderer(swigCPtr); } - /// 6.0 - /// This will be changed internal API after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be opened API after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public sealed class Ranges { - /// 6.0 - /// This will be changed internal API after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be opened API after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly int BackgroundEffect = Interop.Renderer.RangesBackgroundEffectGet(); - /// 6.0 - /// This will be changed internal API after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be opened API after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly int BACKGROUND = Interop.Renderer.RangesBackgroundGet(); - /// 6.0 - /// This will be changed internal API after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be opened API after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly int CONTENT = Interop.Renderer.RangesContentGet(); - /// 6.0 - /// This will be changed internal API after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be opened API after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly int DECORATION = Interop.Renderer.RangesDecorationGet(); - /// 6.0 - /// This will be changed internal API after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be opened API after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly int ForegroundEffect = Interop.Renderer.RangesForegroundEffectGet(); diff --git a/src/Tizen.NUI/src/public/Rendering/Shader.cs b/src/Tizen.NUI/src/public/Rendering/Shader.cs index ccbb4d95e5b..b3e090a920a 100755 --- a/src/Tizen.NUI/src/public/Rendering/Shader.cs +++ b/src/Tizen.NUI/src/public/Rendering/Shader.cs @@ -20,7 +20,7 @@ namespace Tizen.NUI { /// - /// Shader. + /// Shader allows custom vertex and color transformations in the GPU. /// /// 3 public class Shader : Animatable @@ -83,7 +83,7 @@ protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef } /// - /// Hint. + /// The Hint class is used to provide additional information to the shader. /// /// 3 public sealed class Hint diff --git a/src/Tizen.NUI/src/public/Rendering/TextureType.cs b/src/Tizen.NUI/src/public/Rendering/TextureType.cs index 3982e9b190c..8ad423d1b10 100755 --- a/src/Tizen.NUI/src/public/Rendering/TextureType.cs +++ b/src/Tizen.NUI/src/public/Rendering/TextureType.cs @@ -18,7 +18,7 @@ namespace Tizen.NUI { /// - /// The texture type. + /// The TextureType enumeration defines the types of textures. /// /// 3 public enum TextureType diff --git a/src/Tizen.NUI/src/public/Rendering/VertexBuffer.cs b/src/Tizen.NUI/src/public/Rendering/VertexBuffer.cs index 3e8542a3142..ed16450f2d7 100755 --- a/src/Tizen.NUI/src/public/Rendering/VertexBuffer.cs +++ b/src/Tizen.NUI/src/public/Rendering/VertexBuffer.cs @@ -30,7 +30,7 @@ public class VertexBuffer : BaseHandle { /// - /// Creates a VertexBuffer. + /// The constructor to creates a VertexBuffer. /// /// The map of names and types that describes the components of the buffer. /// 8 diff --git a/src/Tizen.NUI/src/public/Template/DataTemplate.cs b/src/Tizen.NUI/src/public/Template/DataTemplate.cs index 54664da18f6..bed1d05af5c 100755 --- a/src/Tizen.NUI/src/public/Template/DataTemplate.cs +++ b/src/Tizen.NUI/src/public/Template/DataTemplate.cs @@ -28,7 +28,7 @@ namespace Tizen.NUI.Binding public class DataTemplate : ElementTemplate { /// - /// Base constructor. + /// The default constructor of DataTemplate class. /// /// 9 public DataTemplate() diff --git a/src/Tizen.NUI/src/public/Theme/Theme.cs b/src/Tizen.NUI/src/public/Theme/Theme.cs index b4379bc5074..48852b62437 100755 --- a/src/Tizen.NUI/src/public/Theme/Theme.cs +++ b/src/Tizen.NUI/src/public/Theme/Theme.cs @@ -46,7 +46,7 @@ public class Theme : BindableObject, IResourcesProvider ResourceDictionary resources; /// - /// Create an empty theme. + /// The default constructor to create an empty theme. /// /// 9 public Theme() diff --git a/src/Tizen.NUI/src/public/Theme/ThemeChangedEventArgs.cs b/src/Tizen.NUI/src/public/Theme/ThemeChangedEventArgs.cs index 368c22dc0d8..d5db7f7b6c0 100755 --- a/src/Tizen.NUI/src/public/Theme/ThemeChangedEventArgs.cs +++ b/src/Tizen.NUI/src/public/Theme/ThemeChangedEventArgs.cs @@ -36,19 +36,20 @@ public ThemeChangedEventArgs(string themeId, string platformThemeId, bool isPlat } /// - /// The new theme's Id. + /// Gets the new theme's Id. /// /// 9 public string ThemeId { get; } /// - /// The platform theme's Id. + /// Gets the platform theme's Id. /// [EditorBrowsable(EditorBrowsableState.Never)] public string PlatformThemeId { get; } /// - /// Whether this event is trigger by platform theme change. + /// Returns whether the event was triggered by a platform theme change. + /// The value is true if the event is triggered by a platform theme change, otherwise false. /// /// [EditorBrowsable(EditorBrowsableState.Never)] diff --git a/src/Tizen.NUI/src/public/Transition/Transition.cs b/src/Tizen.NUI/src/public/Transition/Transition.cs index 37a78cf7736..77bacaa5d68 100644 --- a/src/Tizen.NUI/src/public/Transition/Transition.cs +++ b/src/Tizen.NUI/src/public/Transition/Transition.cs @@ -28,7 +28,7 @@ namespace Tizen.NUI public class Transition : TransitionBase { /// - /// Create a Transition for the View pair. + /// Default constructor to create a Transition for the View pair. /// /// 9 public Transition() diff --git a/src/Tizen.NUI/src/public/Transition/TransitionBase.cs b/src/Tizen.NUI/src/public/Transition/TransitionBase.cs index de7c251e597..3ed937787a3 100644 --- a/src/Tizen.NUI/src/public/Transition/TransitionBase.cs +++ b/src/Tizen.NUI/src/public/Transition/TransitionBase.cs @@ -35,7 +35,7 @@ public class TransitionBase : Disposable private TimePeriod timePeriod = null; /// - /// Create a TransitionBase + /// Default constructor to create a TransitionBase /// /// 9 public TransitionBase() diff --git a/src/Tizen.NUI/src/public/Utility/DirectionBias.cs b/src/Tizen.NUI/src/public/Utility/DirectionBias.cs index 13a591589c2..6e1ec4ccf57 100755 --- a/src/Tizen.NUI/src/public/Utility/DirectionBias.cs +++ b/src/Tizen.NUI/src/public/Utility/DirectionBias.cs @@ -19,6 +19,7 @@ namespace Tizen.NUI { /// /// The Direction Bias type. + /// This enum is used to specify the direction bias for scroll snapping. /// /// 3 [System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1712: Do not prefix enum values with type name")] diff --git a/src/Tizen.NUI/src/public/Utility/TTSPlayer.cs b/src/Tizen.NUI/src/public/Utility/TTSPlayer.cs index 5d8bec1f382..967090f0d48 100755 --- a/src/Tizen.NUI/src/public/Utility/TTSPlayer.cs +++ b/src/Tizen.NUI/src/public/Utility/TTSPlayer.cs @@ -53,7 +53,7 @@ internal TTSPlayer(TTSPlayer handle) : this(Interop.TtsPlayer.NewTtsPlayer(TTSPl private event EventHandler stateChangedEventHandler; /// - /// State changed event. + /// The StateChanged event is triggered when the state of the TTS player changes. /// /// 3 public event EventHandler StateChanged @@ -288,13 +288,13 @@ private void OnStateChanged(TTSState prevState, TTSState nextState) } /// - /// State changed argument. + /// This class represents the event arguments used when the state of the TTS player changes. /// /// 3 public class StateChangedEventArgs : EventArgs { /// - /// PrevState. + /// The previous state of the TTS player before the change. /// /// 3 public TTSState PrevState @@ -304,7 +304,7 @@ public TTSState PrevState } /// - /// NextState. + /// The new state of the TTS player after the change. /// /// 3 public TTSState NextState diff --git a/src/Tizen.NUI/src/public/Utility/Timer.cs b/src/Tizen.NUI/src/public/Utility/Timer.cs index e796e3847e0..9c2ea2ae1ff 100755 --- a/src/Tizen.NUI/src/public/Utility/Timer.cs +++ b/src/Tizen.NUI/src/public/Utility/Timer.cs @@ -259,7 +259,12 @@ internal TimerSignalType TickSignal() /// /// Dispose. + /// Releases unmanaged and optionally managed resources. /// + /// + /// When overriding this method, you need to distinguish between explicit and implicit conditions. For explicit conditions, release both managed and unmanaged resources. For implicit conditions, only release unmanaged resources. + /// + /// Explicit to release both managed and unmanaged resources. Implicit to release only unmanaged resources. /// 3 protected override void Dispose(DisposeTypes type) { diff --git a/src/Tizen.NUI/src/public/ViewProperty/ShadowBase.cs b/src/Tizen.NUI/src/public/ViewProperty/ShadowBase.cs index deec0e1c2d8..2390192ca56 100755 --- a/src/Tizen.NUI/src/public/ViewProperty/ShadowBase.cs +++ b/src/Tizen.NUI/src/public/ViewProperty/ShadowBase.cs @@ -32,7 +32,7 @@ public abstract class ShadowBase private static readonly Vector2 noExtents = new Vector2(0, 0); /// - /// Constructor + /// The default constructor of ShadowBase class. /// [EditorBrowsable(EditorBrowsableState.Never)] protected ShadowBase() : this(noOffset, noExtents) diff --git a/src/Tizen.NUI/src/public/Visuals/AnimatedImageVisual.cs b/src/Tizen.NUI/src/public/Visuals/AnimatedImageVisual.cs index 9e2edbf8cd8..32dcf8bcc5a 100755 --- a/src/Tizen.NUI/src/public/Visuals/AnimatedImageVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/AnimatedImageVisual.cs @@ -31,7 +31,7 @@ public class AnimatedImageVisual : VisualMap private float? loopCount = null; /// - /// Constructor. + /// Default constructor of AnimatedImageVisual class. /// /// 3 public AnimatedImageVisual() : base() diff --git a/src/Tizen.NUI/src/public/Visuals/BorderVisual.cs b/src/Tizen.NUI/src/public/Visuals/BorderVisual.cs index 25eef6b7887..c458a053cd8 100755 --- a/src/Tizen.NUI/src/public/Visuals/BorderVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/BorderVisual.cs @@ -28,7 +28,7 @@ public class BorderVisual : VisualMap private bool? antiAliasing = null; /// - /// Constructor. + /// Default constructor of BorderVisual class. /// /// 3 public BorderVisual() : base() diff --git a/src/Tizen.NUI/src/public/Visuals/ColorVisual.cs b/src/Tizen.NUI/src/public/Visuals/ColorVisual.cs index d2b58836db6..1607bd188a5 100755 --- a/src/Tizen.NUI/src/public/Visuals/ColorVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/ColorVisual.cs @@ -27,7 +27,7 @@ public class ColorVisual : VisualMap private bool? renderIfTransparent = false; /// - /// Constructor. + /// Default constructor of ColorVisual class. /// /// 3 public ColorVisual() : base() diff --git a/src/Tizen.NUI/src/public/Visuals/GradientVisual.cs b/src/Tizen.NUI/src/public/Visuals/GradientVisual.cs index 097052959e1..cd2738872d6 100755 --- a/src/Tizen.NUI/src/public/Visuals/GradientVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/GradientVisual.cs @@ -33,7 +33,7 @@ public class GradientVisual : VisualMap private GradientVisualSpreadMethodType? _spreadMethod = null; /// - /// Constructor. + /// Default constructor of GradientVisual. /// /// 3 public GradientVisual() : base() diff --git a/src/Tizen.NUI/src/public/Visuals/ImageVisual.cs b/src/Tizen.NUI/src/public/Visuals/ImageVisual.cs index be1e741c2c8..db7ea5fedf2 100755 --- a/src/Tizen.NUI/src/public/Visuals/ImageVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/ImageVisual.cs @@ -44,7 +44,7 @@ public class ImageVisual : VisualMap private bool? atlasing = false; /// - /// Constructor. + /// Default constructor of ImageVisual class. /// /// 3 public ImageVisual() : base() diff --git a/src/Tizen.NUI/src/public/Visuals/MeshVisual.cs b/src/Tizen.NUI/src/public/Visuals/MeshVisual.cs index d85f815630d..ca515f4005a 100755 --- a/src/Tizen.NUI/src/public/Visuals/MeshVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/MeshVisual.cs @@ -34,7 +34,7 @@ public class MeshVisual : VisualMap private Vector3 lightPosition = null; /// - /// Constructor. + /// Default constructor of MeshVisual class. /// /// 3 public MeshVisual() : base() diff --git a/src/Tizen.NUI/src/public/Visuals/NPatchVisual.cs b/src/Tizen.NUI/src/public/Visuals/NPatchVisual.cs index b06f9cf0972..473c36a57ad 100755 --- a/src/Tizen.NUI/src/public/Visuals/NPatchVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/NPatchVisual.cs @@ -28,7 +28,7 @@ public class NPatchVisual : VisualMap private Rectangle border = null; /// - /// Constructor. + /// Default constructor of NPatchVisual class. /// /// 3 public NPatchVisual() : base() diff --git a/src/Tizen.NUI/src/public/Visuals/PrimitiveVisual.cs b/src/Tizen.NUI/src/public/Visuals/PrimitiveVisual.cs index 7f881adb546..e099479e4a4 100755 --- a/src/Tizen.NUI/src/public/Visuals/PrimitiveVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/PrimitiveVisual.cs @@ -37,7 +37,7 @@ public class PrimitiveVisual : VisualMap private Vector3 _lightPosition = null; /// - /// Constructor. + /// Default constructor of PrimitiveVisual class. /// /// 3 public PrimitiveVisual() : base() diff --git a/src/Tizen.NUI/src/public/Visuals/SVGVisual.cs b/src/Tizen.NUI/src/public/Visuals/SVGVisual.cs index c951cadf415..3e17c88041f 100755 --- a/src/Tizen.NUI/src/public/Visuals/SVGVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/SVGVisual.cs @@ -26,7 +26,7 @@ public class SVGVisual : VisualMap private string url = null; /// - /// Constructor. + /// Default constructor of SVGVisual class. /// /// 3 public SVGVisual() : base() diff --git a/src/Tizen.NUI/src/public/Visuals/TextVisual.cs b/src/Tizen.NUI/src/public/Visuals/TextVisual.cs index b224299d2db..801a9b3a2b7 100755 --- a/src/Tizen.NUI/src/public/Visuals/TextVisual.cs +++ b/src/Tizen.NUI/src/public/Visuals/TextVisual.cs @@ -39,7 +39,7 @@ public class TextVisual : VisualMap private PropertyMap background = null; /// - /// Constructor. + /// Default constructor of TextVisual class. /// /// 3 public TextVisual() : base() diff --git a/src/Tizen.NUI/src/public/WebView/WebView.cs b/src/Tizen.NUI/src/public/WebView/WebView.cs index bcbe42dbf9b..afa2f3751cf 100755 --- a/src/Tizen.NUI/src/public/WebView/WebView.cs +++ b/src/Tizen.NUI/src/public/WebView/WebView.cs @@ -164,7 +164,7 @@ static WebView() /// - /// Creates a WebView. + /// Default constructor to create a WebView. /// /// 9 public WebView() : this(Interop.WebView.New(), true) diff --git a/src/Tizen.NUI/src/public/Widget/Widget.cs b/src/Tizen.NUI/src/public/Widget/Widget.cs index ce65cb5cf79..fb2bace9bff 100755 --- a/src/Tizen.NUI/src/public/Widget/Widget.cs +++ b/src/Tizen.NUI/src/public/Widget/Widget.cs @@ -29,7 +29,7 @@ public class Widget : BaseHandle internal WidgetImpl widgetImpl; /// - /// Creates a Widget handle. + /// Default constructor to create a Widget handle. /// /// 4 public Widget() : this(new WidgetImpl(), true) diff --git a/src/Tizen.NUI/src/public/Window/WindowEvent.cs b/src/Tizen.NUI/src/public/Window/WindowEvent.cs index 36e7b8427f0..5cb61ef37e4 100755 --- a/src/Tizen.NUI/src/public/Window/WindowEvent.cs +++ b/src/Tizen.NUI/src/public/Window/WindowEvent.cs @@ -97,7 +97,7 @@ public partial class Window /// - /// FocusChanged event. + /// This event is triggered when the focus changes on the window. /// /// 3 public event EventHandler FocusChanged @@ -1402,7 +1402,7 @@ public Touch Touch } /// - /// Wheel event arguments. + /// The Wheel event arguments. /// /// 3 public class WheelEventArgs : EventArgs @@ -1427,7 +1427,7 @@ public Wheel Wheel } /// - /// Key event arguments. + /// The Key event arguments. /// /// 3 public class KeyEventArgs : EventArgs @@ -1478,7 +1478,7 @@ public Size2D WindowSize } /// - /// MouseInOut evnet arguments. + /// The MouseInOut evnet arguments. /// [EditorBrowsable(EditorBrowsableState.Never)] public class MouseInOutEventArgs : EventArgs @@ -1503,7 +1503,7 @@ public MouseInOut MouseInOut } /// - /// MouseRelative evnet arguments. + /// The MouseRelative evnet arguments. /// [EditorBrowsable(EditorBrowsableState.Never)] public class MouseRelativeEventArgs : EventArgs @@ -1529,7 +1529,7 @@ public MouseRelative MouseRelative /// - /// PointerConstraints evnet arguments. + /// The PointerConstraints evnet arguments. /// [EditorBrowsable(EditorBrowsableState.Never)] public class PointerConstraintsEventArgs : EventArgs diff --git a/src/Tizen.NUI/src/public/Xaml/IMarkupExtension.cs b/src/Tizen.NUI/src/public/Xaml/IMarkupExtension.cs index e9709900b9b..7c4e0777fba 100755 --- a/src/Tizen.NUI/src/public/Xaml/IMarkupExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/IMarkupExtension.cs @@ -20,25 +20,25 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface IMarkupExtension : IMarkupExtension { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] new T ProvideValue(IServiceProvider serviceProvider); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface IMarkupExtension { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] object ProvideValue(IServiceProvider serviceProvider); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [AttributeUsage(AttributeTargets.Class, Inherited = false)] [EditorBrowsable(EditorBrowsableState.Never)] public sealed class AcceptEmptyServiceProviderAttribute : Attribute diff --git a/src/Tizen.NUI/src/public/Xaml/IProvideValueTarget.cs b/src/Tizen.NUI/src/public/Xaml/IProvideValueTarget.cs index d2b98879f6c..18864349960 100755 --- a/src/Tizen.NUI/src/public/Xaml/IProvideValueTarget.cs +++ b/src/Tizen.NUI/src/public/Xaml/IProvideValueTarget.cs @@ -19,15 +19,15 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface IProvideValueTarget { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] object TargetObject { get; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] object TargetProperty { get; } } diff --git a/src/Tizen.NUI/src/public/Xaml/IReferenceProvider.cs b/src/Tizen.NUI/src/public/Xaml/IReferenceProvider.cs index 08ade5dd2eb..a4f56d46e61 100755 --- a/src/Tizen.NUI/src/public/Xaml/IReferenceProvider.cs +++ b/src/Tizen.NUI/src/public/Xaml/IReferenceProvider.cs @@ -19,11 +19,11 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface IReferenceProvider { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] object FindByName(string name); } diff --git a/src/Tizen.NUI/src/public/Xaml/IRootObjectProvider.cs b/src/Tizen.NUI/src/public/Xaml/IRootObjectProvider.cs index f2fb8129996..0746d6b00a3 100755 --- a/src/Tizen.NUI/src/public/Xaml/IRootObjectProvider.cs +++ b/src/Tizen.NUI/src/public/Xaml/IRootObjectProvider.cs @@ -19,11 +19,11 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] internal interface IRootObjectProvider { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] object RootObject { get; } } diff --git a/src/Tizen.NUI/src/public/Xaml/IValueProvider.cs b/src/Tizen.NUI/src/public/Xaml/IValueProvider.cs index d641cf8a1d6..b2f1f2c9386 100755 --- a/src/Tizen.NUI/src/public/Xaml/IValueProvider.cs +++ b/src/Tizen.NUI/src/public/Xaml/IValueProvider.cs @@ -20,11 +20,11 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface IValueProvider { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] object ProvideValue(IServiceProvider serviceProvider); } diff --git a/src/Tizen.NUI/src/public/Xaml/IXamlTypeResolver.cs b/src/Tizen.NUI/src/public/Xaml/IXamlTypeResolver.cs index 2d404a36a8e..976468df26f 100755 --- a/src/Tizen.NUI/src/public/Xaml/IXamlTypeResolver.cs +++ b/src/Tizen.NUI/src/public/Xaml/IXamlTypeResolver.cs @@ -20,15 +20,15 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface IXamlTypeResolver { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] Type Resolve(string qualifiedTypeName, IServiceProvider serviceProvider = null); - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] bool TryResolve(string qualifiedTypeName, out Type type); } diff --git a/src/Tizen.NUI/src/public/Xaml/IXmlLineInfoProvider.cs b/src/Tizen.NUI/src/public/Xaml/IXmlLineInfoProvider.cs index bf2ff6e7422..60827b0f50b 100755 --- a/src/Tizen.NUI/src/public/Xaml/IXmlLineInfoProvider.cs +++ b/src/Tizen.NUI/src/public/Xaml/IXmlLineInfoProvider.cs @@ -20,11 +20,11 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface IXmlLineInfoProvider { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] IXmlLineInfo XmlLineInfo { get; } } diff --git a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ApplicationResourcePathExtension.cs b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ApplicationResourcePathExtension.cs index 41349d1e8a0..bc601d22afa 100755 --- a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ApplicationResourcePathExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ApplicationResourcePathExtension.cs @@ -21,7 +21,7 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty(nameof(FilePath))] [AcceptEmptyServiceProvider] diff --git a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ArrayExtension.cs b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ArrayExtension.cs index 0300ba64004..62f0a105767 100755 --- a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ArrayExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ArrayExtension.cs @@ -23,28 +23,28 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty("Items")] [AcceptEmptyServiceProvider] public class ArrayExtension : IMarkupExtension { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public ArrayExtension() { Items = new List(); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public IList Items { get; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Type Type { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Array ProvideValue(IServiceProvider serviceProvider) { diff --git a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/BindingExtension.cs b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/BindingExtension.cs index efb246c4eea..16f06cd8a7e 100755 --- a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/BindingExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/BindingExtension.cs @@ -22,49 +22,49 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty("Path")] [AcceptEmptyServiceProvider] public sealed class BindingExtension : IMarkupExtension { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string Path { get; set; } = Binding.Binding.SelfPath; - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public BindingMode Mode { get; set; } = BindingMode.Default; - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public IValueConverter Converter { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object ConverterParameter { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string StringFormat { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object Source { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string UpdateSourceEventName { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object TargetNullValue { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object FallbackValue { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public TypedBindingBase TypedBinding { get; set; } diff --git a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/DynamicResourceExtension.cs b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/DynamicResourceExtension.cs index b7482522e9d..7098c1a5a4b 100755 --- a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/DynamicResourceExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/DynamicResourceExtension.cs @@ -22,16 +22,16 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty("Key")] public sealed class DynamicResourceExtension : IMarkupExtension { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string Key { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object ProvideValue(IServiceProvider serviceProvider) { diff --git a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/NUIResourcePathExtension.cs b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/NUIResourcePathExtension.cs index 3633f5039cd..9a2e6159116 100755 --- a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/NUIResourcePathExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/NUIResourcePathExtension.cs @@ -21,7 +21,7 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty(nameof(FilePath))] [AcceptEmptyServiceProvider] diff --git a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/NullExtension.cs b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/NullExtension.cs index d6622d4fedc..f73b019434a 100755 --- a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/NullExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/NullExtension.cs @@ -20,13 +20,13 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ProvideCompiled("Tizen.NUI.Xaml.Build.Tasks.NullExtension")] [AcceptEmptyServiceProvider] public class NullExtension : IMarkupExtension { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object ProvideValue(IServiceProvider serviceProvider) { diff --git a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ReferenceExtension.cs b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ReferenceExtension.cs index f2111e66570..f28357e886a 100755 --- a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ReferenceExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ReferenceExtension.cs @@ -23,16 +23,16 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty("Name")] public class ReferenceExtension : IMarkupExtension { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string Name { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object ProvideValue(IServiceProvider serviceProvider) { diff --git a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ResourcePathExtension.cs b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ResourcePathExtension.cs index 7c91e61a4e4..a31acf4e5db 100755 --- a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ResourcePathExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/ResourcePathExtension.cs @@ -21,7 +21,7 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty(nameof(FilePath))] [AcceptEmptyServiceProvider] diff --git a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/StaticExtension.cs b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/StaticExtension.cs index 09e1cd01317..3ba2f992cdb 100755 --- a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/StaticExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/StaticExtension.cs @@ -24,17 +24,17 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty(nameof(Member))] [ProvideCompiled("Tizen.NUI.Xaml.Build.Tasks.StaticExtension")] public class StaticExtension : IMarkupExtension { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string Member { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object ProvideValue(IServiceProvider serviceProvider) { diff --git a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/TemplateBindingExtension.cs b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/TemplateBindingExtension.cs index 5dad6fb615e..90250704d34 100755 --- a/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/TemplateBindingExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/MarkupExtensions/TemplateBindingExtension.cs @@ -21,7 +21,7 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty("Path")] [AcceptEmptyServiceProvider] @@ -33,23 +33,23 @@ internal TemplateBindingExtension() Path = Tizen.NUI.Binding.Binding.SelfPath; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string Path { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public BindingMode Mode { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public IValueConverter Converter { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object ConverterParameter { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string StringFormat { get; set; } diff --git a/src/Tizen.NUI/src/public/Xaml/StaticResourceExtension.cs b/src/Tizen.NUI/src/public/Xaml/StaticResourceExtension.cs index 12ee8ed1c69..1beac968047 100755 --- a/src/Tizen.NUI/src/public/Xaml/StaticResourceExtension.cs +++ b/src/Tizen.NUI/src/public/Xaml/StaticResourceExtension.cs @@ -24,16 +24,16 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty("Key")] public sealed class StaticResourceExtension : IMarkupExtension { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string Key { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object ProvideValue(IServiceProvider serviceProvider) { diff --git a/src/Tizen.NUI/src/public/Xaml/TypeConversionAttribute.cs b/src/Tizen.NUI/src/public/Xaml/TypeConversionAttribute.cs index 1460e446ca2..36017f3f062 100755 --- a/src/Tizen.NUI/src/public/Xaml/TypeConversionAttribute.cs +++ b/src/Tizen.NUI/src/public/Xaml/TypeConversionAttribute.cs @@ -20,16 +20,16 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [System.AttributeUsage(AttributeTargets.Class, Inherited = true, AllowMultiple = false)] public sealed class TypeConversionAttribute : Attribute { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Type TargetType { get; private set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public TypeConversionAttribute(Type targetType) { diff --git a/src/Tizen.NUI/src/public/Xaml/XamlFilePathAttribute.cs b/src/Tizen.NUI/src/public/Xaml/XamlFilePathAttribute.cs index dcbe7c83023..ca0ff47fde9 100755 --- a/src/Tizen.NUI/src/public/Xaml/XamlFilePathAttribute.cs +++ b/src/Tizen.NUI/src/public/Xaml/XamlFilePathAttribute.cs @@ -23,12 +23,12 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = false)] public sealed class XamlFilePathAttribute : Attribute { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public XamlFilePathAttribute([CallerFilePath] string filePath = "") => FilePath = filePath; diff --git a/src/Tizen.NUI/src/public/Xaml/XamlParseException.cs b/src/Tizen.NUI/src/public/Xaml/XamlParseException.cs index 168bbba6ea6..b3c3624e0d1 100755 --- a/src/Tizen.NUI/src/public/Xaml/XamlParseException.cs +++ b/src/Tizen.NUI/src/public/Xaml/XamlParseException.cs @@ -23,7 +23,7 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class XamlParseException : Exception { @@ -64,7 +64,7 @@ public XamlParseException(string message, Exception innerException = null) : bas unformattedMessage = message; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public XamlParseException(string message, IXmlLineInfo xmlInfo, Exception innerException = null) : base(FormatMessage(message + GetStackInfo(), xmlInfo), innerException) { @@ -77,7 +77,7 @@ internal XamlParseException(string message, IServiceProvider serviceProvider, Ex { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public IXmlLineInfo XmlInfo { get; private set; } diff --git a/src/Tizen.NUI/src/public/Xaml/XamlResourceIdAttribute.cs b/src/Tizen.NUI/src/public/Xaml/XamlResourceIdAttribute.cs index 15c20fb4480..a50a6baed99 100755 --- a/src/Tizen.NUI/src/public/Xaml/XamlResourceIdAttribute.cs +++ b/src/Tizen.NUI/src/public/Xaml/XamlResourceIdAttribute.cs @@ -21,24 +21,24 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [AttributeUsage(AttributeTargets.Assembly, Inherited = false, AllowMultiple = true)] public sealed class XamlResourceIdAttribute : Attribute { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string ResourceId { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string Path { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Type Type { get; set; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public XamlResourceIdAttribute(string resourceId, string path, Type type) { diff --git a/src/Tizen.NUI/src/public/Xaml/XamlServiceProvider.cs b/src/Tizen.NUI/src/public/Xaml/XamlServiceProvider.cs index 6c66ccd8643..f0326f1cd09 100755 --- a/src/Tizen.NUI/src/public/Xaml/XamlServiceProvider.cs +++ b/src/Tizen.NUI/src/public/Xaml/XamlServiceProvider.cs @@ -26,7 +26,7 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class XamlServiceProvider : IServiceProvider { @@ -54,7 +54,7 @@ internal XamlServiceProvider(INode node, HydrationContext context) IValueConverterProvider = new ValueConverterProvider(); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public XamlServiceProvider() { @@ -97,7 +97,7 @@ internal IValueConverterProvider IValueConverterProvider set { services[typeof(IValueConverterProvider)] = value; } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object GetService(Type serviceType) { @@ -105,7 +105,7 @@ public object GetService(Type serviceType) return services.TryGetValue(serviceType, out service) ? service : null; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void Add(Type type, object service) { @@ -156,21 +156,21 @@ IEnumerable IProvideParentValues.ParentObjects } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class SimpleValueTargetProvider : IProvideParentValues, IProvideValueTarget, IReferenceProvider { readonly object[] objectAndParents; readonly object targetProperty; - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [Obsolete("SimpleValueTargetProvider(object[] objectAndParents) is obsolete as of version 2.3.4. Use SimpleValueTargetProvider(object[] objectAndParents, object targetProperty) instead.")] public SimpleValueTargetProvider(object[] objectAndParents) : this(objectAndParents, null) { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public SimpleValueTargetProvider(object[] objectAndParents, object targetProperty) { @@ -192,7 +192,7 @@ object IProvideValueTarget.TargetObject object IProvideValueTarget.TargetProperty => targetProperty; - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object FindByName(string name) { @@ -210,7 +210,7 @@ public object FindByName(string name) } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class XamlTypeResolver : IXamlTypeResolver { @@ -218,7 +218,7 @@ public class XamlTypeResolver : IXamlTypeResolver readonly GetTypeFromXmlName getTypeFromXmlName; readonly IXmlNamespaceResolver namespaceResolver; - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public XamlTypeResolver(IXmlNamespaceResolver namespaceResolver, Assembly currentAssembly) : this(namespaceResolver, XamlParser.GetElementType, currentAssembly) @@ -305,18 +305,18 @@ public XamlRootObjectProvider(object rootObject) public object RootObject { get; } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class XmlLineInfoProvider : IXmlLineInfoProvider { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public XmlLineInfoProvider(IXmlLineInfo xmlLineInfo) { XmlLineInfo = xmlLineInfo; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public IXmlLineInfo XmlLineInfo { get; } } @@ -341,30 +341,30 @@ public object FindByName(string name) } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ObsoleteAttribute(" ", false)] public class NameScopeProvider : INameScopeProvider { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public INameScope NameScope { get; set; } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class XmlNamespaceResolver : IXmlNamespaceResolver { readonly Dictionary namespaces = new Dictionary(); - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public IDictionary GetNamespacesInScope(XmlNamespaceScope scope) { throw new NotImplementedException(); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string LookupNamespace(string prefix) { @@ -374,14 +374,14 @@ public string LookupNamespace(string prefix) return null; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string LookupPrefix(string namespaceName) { throw new NotImplementedException(); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void Add(string prefix, string ns) { diff --git a/src/Tizen.NUI/src/public/Xaml/XmlLineInfo.cs b/src/Tizen.NUI/src/public/Xaml/XmlLineInfo.cs index e7af646fcee..451c4c8b017 100755 --- a/src/Tizen.NUI/src/public/Xaml/XmlLineInfo.cs +++ b/src/Tizen.NUI/src/public/Xaml/XmlLineInfo.cs @@ -20,19 +20,19 @@ namespace Tizen.NUI.Xaml { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class XmlLineInfo : IXmlLineInfo { readonly bool hasLineInfo; - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public XmlLineInfo() { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public XmlLineInfo(int linenumber, int lineposition) { @@ -41,18 +41,18 @@ public XmlLineInfo(int linenumber, int lineposition) LinePosition = lineposition; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public bool HasLineInfo() { return hasLineInfo; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public int LineNumber { get; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public int LinePosition { get; } } diff --git a/src/Tizen.NUI/src/public/XamlBinding/BindableObjectExtensions.cs b/src/Tizen.NUI/src/public/XamlBinding/BindableObjectExtensions.cs index f011036e33f..89cd54489c6 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/BindableObjectExtensions.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/BindableObjectExtensions.cs @@ -21,11 +21,11 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static class BindableObjectExtensions { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static void SetBinding(this BindableObject self, BindableProperty targetProperty, string path, BindingMode mode = BindingMode.Default, IValueConverter converter = null, string stringFormat = null) diff --git a/src/Tizen.NUI/src/public/XamlBinding/BindablePropertyConverter.cs b/src/Tizen.NUI/src/public/XamlBinding/BindablePropertyConverter.cs index 98a4d4cd1c9..ae38975207d 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/BindablePropertyConverter.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/BindablePropertyConverter.cs @@ -26,7 +26,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ProvideCompiled("Tizen.NUI.Xaml.Core.XamlC.BindablePropertyConverter")] [TypeConversion(typeof(BindableProperty))] @@ -92,7 +92,7 @@ object IExtendedTypeConverter.ConvertFromInvariantString(string value, IServiceP throw new XamlParseException($"Can't resolve {value}. Syntax is [[prefix:]Type.]PropertyName.", lineinfo); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public override object ConvertFromInvariantString(string value) { diff --git a/src/Tizen.NUI/src/public/XamlBinding/Binding.cs b/src/Tizen.NUI/src/public/XamlBinding/Binding.cs index 2e13748227b..098e494d1e9 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Binding.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Binding.cs @@ -27,7 +27,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [SuppressMessage("Microsoft.Design", "CA1724: Type names should not match namespaces")] [EditorBrowsable(EditorBrowsableState.Never)] public sealed class Binding : BindingBase @@ -41,13 +41,13 @@ public sealed class Binding : BindingBase object source; string updateSourceEventName; - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Binding() { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Binding(string path, BindingMode mode = BindingMode.Default, IValueConverter converter = null, object converterParameter = null, string stringFormat = null, object source = null) { @@ -64,7 +64,7 @@ public Binding(string path, BindingMode mode = BindingMode.Default, IValueConver Source = source; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public IValueConverter Converter { @@ -77,7 +77,7 @@ public IValueConverter Converter } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object ConverterParameter { @@ -90,7 +90,7 @@ public object ConverterParameter } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string Path { @@ -104,7 +104,7 @@ public string Path } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object Source { @@ -121,7 +121,7 @@ public object Source } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string UpdateSourceEventName { diff --git a/src/Tizen.NUI/src/public/XamlBinding/BindingBase.cs b/src/Tizen.NUI/src/public/XamlBinding/BindingBase.cs index 49f468b4436..d6ae7b1d617 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/BindingBase.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/BindingBase.cs @@ -42,7 +42,7 @@ internal BindingBase() /// /// Gets or sets the mode for this binding. /// - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public BindingMode Mode { @@ -65,7 +65,7 @@ public BindingMode Mode /// /// Gets or sets the string format for this binding. /// - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string StringFormat { @@ -78,7 +78,7 @@ public string StringFormat } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object TargetNullValue { @@ -90,7 +90,7 @@ public object TargetNullValue } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object FallbackValue { @@ -112,7 +112,7 @@ public object FallbackValue /// Stops synchronization on the collection. /// /// The collection on which to stop synchronization. - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static void DisableCollectionSynchronization(IEnumerable collection) { @@ -122,7 +122,7 @@ public static void DisableCollectionSynchronization(IEnumerable collection) SynchronizedCollections.Remove(collection); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static void EnableCollectionSynchronization(IEnumerable collection, object context, CollectionSynchronizationCallback callback) { @@ -137,7 +137,7 @@ public static void EnableCollectionSynchronization(IEnumerable collection, objec /// /// Throws an InvalidOperationException if the binding has been applied. /// - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected void ThrowIfApplied() { diff --git a/src/Tizen.NUI/src/public/XamlBinding/BindingTypeConverter.cs b/src/Tizen.NUI/src/public/XamlBinding/BindingTypeConverter.cs index 2c74460a9fc..db86252534a 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/BindingTypeConverter.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/BindingTypeConverter.cs @@ -20,13 +20,13 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ProvideCompiled("Tizen.NUI.Xaml.Core.XamlC.BindingTypeConverter")] [TypeConversion(typeof(Binding))] public sealed class BindingTypeConverter : TypeConverter { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public override object ConvertFromInvariantString(string value) { diff --git a/src/Tizen.NUI/src/public/XamlBinding/CollectionSynchronizationCallback.cs b/src/Tizen.NUI/src/public/XamlBinding/CollectionSynchronizationCallback.cs index fa9c27f245d..4c9685a77f9 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/CollectionSynchronizationCallback.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/CollectionSynchronizationCallback.cs @@ -21,7 +21,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public delegate void CollectionSynchronizationCallback(IEnumerable collection, object context, Action accessMethod, bool writeAccess); } diff --git a/src/Tizen.NUI/src/public/XamlBinding/ColorTypeConverter.cs b/src/Tizen.NUI/src/public/XamlBinding/ColorTypeConverter.cs index 6b59a3bb076..f45ce4e8a37 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/ColorTypeConverter.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/ColorTypeConverter.cs @@ -22,7 +22,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ProvideCompiled("Tizen.NUI.Xaml.Core.XamlC.ColorTypeConverter")] [TypeConversion(typeof(Color))] @@ -32,7 +32,7 @@ public class ColorTypeConverter : TypeConverter // HEX #rgb, #argb, #rrggbb, #aarrggbb // float array 0.5,0.5,0.5,0.5 // Predefined color case insensitive - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public override object ConvertFromInvariantString(string value) { @@ -95,7 +95,7 @@ static uint ToHexD(char c) return (j << 4) | j; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static Color FromRgba(int r, int g, int b, int a) { @@ -106,7 +106,7 @@ public static Color FromRgba(int r, int g, int b, int a) return new Color(red, green, blue, alpha); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static Color FromRgb(int r, int g, int b) { @@ -152,7 +152,7 @@ static Color FromHex(string hex) } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public override string ConvertToString(object value) { diff --git a/src/Tizen.NUI/src/public/XamlBinding/Command.cs b/src/Tizen.NUI/src/public/XamlBinding/Command.cs index ecc7368902e..5c6fd816965 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Command.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Command.cs @@ -22,11 +22,11 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public sealed class Command : Command { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Command(Action execute) : base(o => @@ -43,7 +43,7 @@ public Command(Action execute) } } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Command(Action execute, Func canExecute) : base(o => @@ -94,7 +94,7 @@ public class Command : ICommand /// Initializes a new instance of the Command class. /// /// An instance to execute when the Command is executed. - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Command(Action execute) { @@ -108,7 +108,7 @@ public Command(Action execute) /// Initializes a new instance of the Command class. /// /// An Action to execute when the Command is executed. - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Command(Action execute) : this(o => execute()) { @@ -121,7 +121,7 @@ public Command(Action execute) : this(o => execute()) /// /// An Action to execute when the Command is executed. /// A instance indicating if the Command can be executed. - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Command(Action execute, Func canExecute) : this(execute) { @@ -136,7 +136,7 @@ public Command(Action execute, Func canExecute) : this(exe /// /// An Action to execute when the Command is executed. /// A instance indicating if the Command can be executed. - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Command(Action execute, Func canExecute) : this(o => execute(), o => canExecute()) { @@ -151,7 +151,7 @@ public Command(Action execute, Func canExecute) : this(o => execute(), o = /// /// An Object used as parameter to determine if the Command can be executed. /// true if the Command can be executed, false otherwise. - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public bool CanExecute(object parameter) { @@ -164,7 +164,7 @@ public bool CanExecute(object parameter) /// /// Occurs when the target of the Command should reevaluate whether or not the Command can be executed. /// - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public event EventHandler CanExecuteChanged; @@ -172,7 +172,7 @@ public bool CanExecute(object parameter) /// Invokes the execute Action. /// /// An Object used as parameter for the execute Action. - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void Execute(object parameter) { @@ -182,7 +182,7 @@ public void Execute(object parameter) /// /// Send a CanExecuteChanged. /// - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void ChangeCanExecute() { diff --git a/src/Tizen.NUI/src/public/XamlBinding/ElementEventArgs.cs b/src/Tizen.NUI/src/public/XamlBinding/ElementEventArgs.cs index c968b60f9f0..36eef26ebd5 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/ElementEventArgs.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/ElementEventArgs.cs @@ -20,11 +20,11 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class ElementEventArgs : EventArgs { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public ElementEventArgs(Element element) { @@ -34,7 +34,7 @@ public ElementEventArgs(Element element) Element = element; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Element Element { get; private set; } } diff --git a/src/Tizen.NUI/src/public/XamlBinding/FloatGraphicsTypeConverter.cs b/src/Tizen.NUI/src/public/XamlBinding/FloatGraphicsTypeConverter.cs index 1b4dbdecef0..b25c9c278e4 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/FloatGraphicsTypeConverter.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/FloatGraphicsTypeConverter.cs @@ -31,13 +31,13 @@ namespace Tizen.NUI.Binding /// dp, sp suffix is converted to pixel value with Dpi and ScalingFactors by GraphicsTypeManager. /// /// - /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ProvideCompiledAttribute("Tizen.NUI.Xaml.Core.XamlC.FloatGraphicsTypeConverter")] public class FloatGraphicsTypeConverter : TypeConverter { /// - /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public override object ConvertFromInvariantString(string value) { @@ -50,7 +50,7 @@ public override object ConvertFromInvariantString(string value) } /// - /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public override string ConvertToString(object value) { diff --git a/src/Tizen.NUI/src/public/XamlBinding/IResourcesProvider.cs b/src/Tizen.NUI/src/public/XamlBinding/IResourcesProvider.cs index c2d473fa7a8..c47edd7bfae 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/IResourcesProvider.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/IResourcesProvider.cs @@ -19,7 +19,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface IResourcesProvider { diff --git a/src/Tizen.NUI/src/public/XamlBinding/IValueConverter.cs b/src/Tizen.NUI/src/public/XamlBinding/IValueConverter.cs index 937ff820ab9..907219b6d0f 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/IValueConverter.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/IValueConverter.cs @@ -21,7 +21,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface IValueConverter { diff --git a/src/Tizen.NUI/src/public/XamlBinding/IntGraphicsTypeConverter.cs b/src/Tizen.NUI/src/public/XamlBinding/IntGraphicsTypeConverter.cs index 4484b008e2f..7e58cdc0a93 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/IntGraphicsTypeConverter.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/IntGraphicsTypeConverter.cs @@ -26,12 +26,12 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ProvideCompiledAttribute("Tizen.NUI.Xaml.Core.XamlC.IntGraphicsTypeConverter")] public class IntGraphicsTypeConverter : TypeConverter { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public override object ConvertFromInvariantString(string value) { @@ -43,7 +43,7 @@ public override object ConvertFromInvariantString(string value) throw new InvalidOperationException($"Cannot convert \"{value}\" into {typeof(int)}"); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public override string ConvertToString(object value) { diff --git a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/Behavior.cs b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/Behavior.cs index 2ce1f16b790..28b9f48dde6 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/Behavior.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/Behavior.cs @@ -21,7 +21,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public abstract class Behavior : BindableObject, IAttachedObject { @@ -32,7 +32,7 @@ internal Behavior(Type associatedType) AssociatedType = associatedType; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected Type AssociatedType { get; } @@ -50,30 +50,30 @@ void IAttachedObject.DetachFrom(BindableObject bindable) OnDetachingFrom(bindable); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected virtual void OnAttachedTo(BindableObject bindable) { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected virtual void OnDetachingFrom(BindableObject bindable) { } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public abstract class Behavior : Behavior where T : BindableObject { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected Behavior() : base(typeof(T)) { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected override void OnAttachedTo(BindableObject bindable) { @@ -81,13 +81,13 @@ protected override void OnAttachedTo(BindableObject bindable) OnAttachedTo((T)bindable); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected virtual void OnAttachedTo(T bindable) { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected override void OnDetachingFrom(BindableObject bindable) { @@ -95,7 +95,7 @@ protected override void OnDetachingFrom(BindableObject bindable) base.OnDetachingFrom(bindable); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] protected virtual void OnDetachingFrom(T bindable) { diff --git a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/BindingCondition.cs b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/BindingCondition.cs index 23c6692e533..77c72edfa46 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/BindingCondition.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/BindingCondition.cs @@ -21,7 +21,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ProvideCompiled("Tizen.NUI.Xaml.Core.XamlC.PassthroughValueProvider")] [AcceptEmptyServiceProvider] @@ -32,14 +32,14 @@ public sealed class BindingCondition : Condition, IValueProvider BindingBase binding; object triggerValue; - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public BindingCondition() { boundProperty = BindableProperty.CreateAttached("Bound", typeof(object), typeof(BindingCondition), null, propertyChanged: OnBoundPropertyChanged); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public BindingBase Binding { @@ -54,7 +54,7 @@ public BindingBase Binding } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object Value { diff --git a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/Condition.cs b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/Condition.cs index dd1c2a37cb3..53f2bd7d11e 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/Condition.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/Condition.cs @@ -20,7 +20,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public abstract class Condition { diff --git a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/DataTrigger.cs b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/DataTrigger.cs index c8ab3ece116..9363c843408 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/DataTrigger.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/DataTrigger.cs @@ -22,20 +22,20 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty("Setters")] [ProvideCompiled("Tizen.NUI.Xaml.Core.XamlC.PassthroughValueProvider")] [AcceptEmptyServiceProvider] public sealed class DataTrigger : TriggerBase, IValueProvider { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public DataTrigger([TypeConverter(typeof(TypeTypeConverter))][Parameter("TargetType")] Type targetType) : base(new BindingCondition(), targetType) { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public BindingBase Binding { @@ -52,14 +52,14 @@ public BindingBase Binding } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public new IList Setters { get { return base.Setters; } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [Obsolete("This has been deprecated in API9 and will be removed in API11. Use GetValue() instead.")] public object Value diff --git a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/EventTrigger.cs b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/EventTrigger.cs index 983f073faca..9aaa9cbf9a7 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/EventTrigger.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/EventTrigger.cs @@ -23,7 +23,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty("Actions")] public sealed class EventTrigger : TriggerBase @@ -36,18 +36,18 @@ public sealed class EventTrigger : TriggerBase string eventname; Delegate handlerdelegate; - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public EventTrigger() : base(typeof(BindableObject)) { Actions = new SealedList(); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public IList Actions { get; } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string Event { diff --git a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/MultiTrigger.cs b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/MultiTrigger.cs index 58fbe534ff7..a3d3f299320 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/MultiTrigger.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/MultiTrigger.cs @@ -21,25 +21,25 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ContentProperty("Setters")] public sealed class MultiTrigger : TriggerBase { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public MultiTrigger([TypeConverter(typeof(TypeTypeConverter))][Parameter("TargetType")] Type targetType) : base(new MultiCondition(), targetType) { } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public IList Conditions { get { return ((MultiCondition)Condition).Conditions; } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public new IList Setters { diff --git a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/XamlPropertyCondition.cs b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/XamlPropertyCondition.cs index 8389ca2b3a1..b2a3b2e14ee 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Interactivity/XamlPropertyCondition.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Interactivity/XamlPropertyCondition.cs @@ -22,7 +22,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ProvideCompiled("Tizen.NUI.Core.XamlC.PassthroughValueProvider")] [AcceptEmptyServiceProvider] @@ -33,14 +33,14 @@ public sealed class XamlPropertyCondition : Condition, IValueProvider BindableProperty property; object triggerValue; - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public XamlPropertyCondition() { stateProperty = BindableProperty.CreateAttached("State", typeof(bool), typeof(XamlPropertyCondition), false, propertyChanged: OnStatePropertyChanged); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public BindableProperty Property { @@ -62,7 +62,7 @@ public BindableProperty Property } } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public object Value { diff --git a/src/Tizen.NUI/src/public/XamlBinding/Internals/DynamicResource.cs b/src/Tizen.NUI/src/public/XamlBinding/Internals/DynamicResource.cs index 328476f7520..b1707e1107b 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Internals/DynamicResource.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Internals/DynamicResource.cs @@ -19,18 +19,18 @@ namespace Tizen.NUI.Binding.Internals { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class DynamicResource { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public DynamicResource(string key) { Key = key; } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public string Key { get; private set; } } diff --git a/src/Tizen.NUI/src/public/XamlBinding/Internals/IDynamicResourceHandler.cs b/src/Tizen.NUI/src/public/XamlBinding/Internals/IDynamicResourceHandler.cs index aaa96de5d11..e44de49018f 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Internals/IDynamicResourceHandler.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Internals/IDynamicResourceHandler.cs @@ -20,11 +20,11 @@ namespace Tizen.NUI.Binding.Internals { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface IDynamicResourceHandler { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] void SetDynamicResource(BindableProperty targetProperty, string key); } diff --git a/src/Tizen.NUI/src/public/XamlBinding/Internals/INameScope.cs b/src/Tizen.NUI/src/public/XamlBinding/Internals/INameScope.cs index 31175cb903c..2616768dbb1 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Internals/INameScope.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Internals/INameScope.cs @@ -21,23 +21,23 @@ namespace Tizen.NUI.Binding.Internals { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public interface INameScope { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] object FindByName(string name); - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] void RegisterName(string name, object scopedElement); - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] void UnregisterName(string name); - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] [ObsoleteAttribute(" ", false)] void RegisterName(string name, object scopedElement, IXmlLineInfo xmlLineInfo); diff --git a/src/Tizen.NUI/src/public/XamlBinding/Internals/NameScope.cs b/src/Tizen.NUI/src/public/XamlBinding/Internals/NameScope.cs index 69f9683242d..13e9ca75f3a 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Internals/NameScope.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Internals/NameScope.cs @@ -24,11 +24,11 @@ namespace Tizen.NUI.Binding.Internals { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class NameScope : INameScope { - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static readonly BindableProperty NameScopeProperty = BindableProperty.CreateAttached("NameScope", typeof(INameScope), typeof(NameScope), default(INameScope)); @@ -97,7 +97,7 @@ void INameScope.UnregisterName(string name) names.Remove(name); } - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static INameScope GetNameScope(BindableObject bindable) { @@ -105,7 +105,7 @@ public static INameScope GetNameScope(BindableObject bindable) } /// Thrown when bindable is null. - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static void SetNameScope(BindableObject bindable, INameScope value) { diff --git a/src/Tizen.NUI/src/public/XamlBinding/NameScopeExtensions.cs b/src/Tizen.NUI/src/public/XamlBinding/NameScopeExtensions.cs index a83d1265cff..4a10f440d90 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/NameScopeExtensions.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/NameScopeExtensions.cs @@ -21,11 +21,11 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static class NameScopeExtensions { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static T FindByName(this Element element, string name) { @@ -52,7 +52,7 @@ internal static void PopElement() /// /// Used to find the object defined in Xaml file. /// - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static T FindByNameInCurrentNameScope(string name) { diff --git a/src/Tizen.NUI/src/public/XamlBinding/PointSizeTypeConverter.cs b/src/Tizen.NUI/src/public/XamlBinding/PointSizeTypeConverter.cs index 8e6a8707159..44852b61618 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/PointSizeTypeConverter.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/PointSizeTypeConverter.cs @@ -31,7 +31,7 @@ namespace Tizen.NUI.Binding [ProvideCompiledAttribute("Tizen.NUI.Xaml.Core.XamlC.PointSizeTypeConverter")] public class PointSizeTypeConverter : TypeConverter { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public override object ConvertFromInvariantString(string value) { @@ -43,7 +43,7 @@ public override object ConvertFromInvariantString(string value) throw new InvalidOperationException($"Cannot convert \"{value}\" into {typeof(float)}"); } - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public override string ConvertToString(object value) { diff --git a/src/Tizen.NUI/src/public/XamlBinding/Registrar.cs b/src/Tizen.NUI/src/public/XamlBinding/Registrar.cs index 8bc42b0e86c..bf5e11fbaa7 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/Registrar.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/Registrar.cs @@ -26,7 +26,7 @@ namespace Tizen.NUI.Binding.Internals /// For internal use. /// /// - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class Registrar where TRegistrable : class { @@ -37,7 +37,7 @@ public class Registrar where TRegistrable : class /// /// The type of the view /// The type of the render. - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public void Register(Type tview, Type trender) { @@ -78,7 +78,7 @@ internal TRegistrable GetHandler(Type type, params object[] args) /// The type of the handler /// The type. /// The handler instance. - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public TOut GetHandler(Type type) where TOut : TRegistrable { @@ -92,7 +92,7 @@ public TOut GetHandler(Type type) where TOut : TRegistrable /// The type. /// The args of the type /// The handler instance. - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public TOut GetHandler(Type type, params object[] args) where TOut : TRegistrable { @@ -105,7 +105,7 @@ public TOut GetHandler(Type type, params object[] args) where TOut : TRegi /// The type /// The object instance. /// The handle of the obj. - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public TOut GetHandlerForObject(object obj) where TOut : TRegistrable { @@ -125,7 +125,7 @@ public TOut GetHandlerForObject(object obj) where TOut : TRegistrable /// The object instance /// The args of the type /// The handler of the object. - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public TOut GetHandlerForObject(object obj, params object[] args) where TOut : TRegistrable { @@ -143,7 +143,7 @@ public TOut GetHandlerForObject(object obj, params object[] args) where TO /// /// The view type. /// The type of the handle. - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Type GetHandlerType(Type viewType) { @@ -185,7 +185,7 @@ public Type GetHandlerType(Type viewType) /// /// The object instance. /// The type of the handler. - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public Type GetHandlerTypeForObject(object obj) { @@ -221,7 +221,7 @@ bool LookupHandlerType(Type viewType, out Type handlerType) /// /// For internal use /// - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static class Registrar { @@ -231,7 +231,7 @@ static Registrar() internal static Dictionary Effects { get; } = new Dictionary(); - /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public static IEnumerable ExtraAssemblies { get; set; } } diff --git a/src/Tizen.NUI/src/public/XamlBinding/ResourceDictionary.cs b/src/Tizen.NUI/src/public/XamlBinding/ResourceDictionary.cs index 10510906cc9..0e7c088662f 100755 --- a/src/Tizen.NUI/src/public/XamlBinding/ResourceDictionary.cs +++ b/src/Tizen.NUI/src/public/XamlBinding/ResourceDictionary.cs @@ -29,7 +29,7 @@ namespace Tizen.NUI.Binding { - /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API. + /// This will be public opened after ACR done. Before ACR, need to be hidden as inhouse API. [EditorBrowsable(EditorBrowsableState.Never)] public class ResourceDictionary : IResourceDictionary, IDictionary { @@ -39,7 +39,7 @@ public class ResourceDictionary : IResourceDictionary, IDictionary

>M@aO6CCsW&vKihgrsQlw&Hi^gHzBg_5J!G5OXI+GCU9j^=t*jZC_~Si|8epvW@Y z8NwhQHtS==+7cp>c#zx%_8wkEA^B7={57WzXa(mRVY`S^b<6c-63&?{zJl5*T83gm zA_?PpWWN;g;f8ZHUfFeO;<83_iDNYxy<<#BjFGD%Sx8`z)5QlOpBPEDrSdaD!UBF2e9me%ZKeyL#dgx~}j+X`Q|R z*4r|^G8Err-Fjg!J%)>KHz-CyCYn;4$h=86=L5RaprS_L+~U(oZi!qeHaOZk#0e4< z0h8v?rr_I~mcVbJF6N?%?w-rHN?vK4K(BJqGF>a)L(OVabQZ&_E;}~(N2sfJ-Gb&9 ztWs*Jq{DtYP~;bcT6xevQU3rHw;q@dilLjFM{!M;{{Sg_^saXZ_wDSSCp+pphru9$ zbw=STHih22Bv3@G)e5V(n};>G#x;A+&sWk(i@+}mq5~j?oCU*OwjM;DPAENYQVzJy z=;DjqAeyLFrgtJ~%hdtxh#YWMt|@2fj;$5IE3QYDt=Pt~H9(g8??-wlDFe*05JkoL zt7N={kwsJY9CVL|*%+9;PI4nl%a$5iO!a!*5Jv5O$Sv z?Oi{_qC4NNrqJT}mYrxlGnLXWZ1Q+Hre`7q2*({NXuYxOd9NHnH|Mn~K`HTb`F@v) z^5i>M`!vI^6O)dLkO-wb*S$n~VN}s6KH&pvxd2x3xe&ODo2k?L*Fvw|WdunQdsNj* zdGRgluW-5e=3Px1x)4joGHgpCv7WJ6k>cdB=F?e2eUmfyb-4k{h=_L< z%v%zOb@N(4btOwCMmf#$6T;#&^PEePa`^Gm5o zWnn7Nd3PqN)6GRbSn}%jX^iP@D;hPWBag(*avBTiIHgI5jXg7nT%5JBc}w|h1c$*) zL04oX+$%n)n)eYq;{RSwVw2IDI*41lEscLDjK+oq3}*DWu%eGxruhAKxLjm z*$cW<2b$ZxP&Cx*K`A)u5!}gu3hjt3Q7#*OL&RM%c|ED-4$`?YjO?LBpO#NzMETIG zU`2;d1fE)#e9SP@YaZ@nE+a7p94P8_bw?$#7JiKEYm7^yZY zq8B==T&r*;RW0>atG?8W>B6Do>`}sh8J)L~~(otk~_L0?wW(8Dc0kNurW?YzQz!CE}NV_AS5ZyYbQM zWKjfKaXt(Cr$3iYyFZ1CD05DY#9SRe5rwmpX8DqLReu>m5s&3}IGpH~bXIS`w2b0E z9!mwXGDHZ`fFh!z5dk=asqDPEvuxWx@{p+ulTl_l3fuO0#>Tr#)qJx&(R>Ew>&wM8 z#p^4l3qFmtu9ht}K4Fm|v{9VkhcqVK=eNZ8{yODY?6@~MG>o<_oz=Ljkosc5Ds3R_ z)R2_-X1{80hQ_ABO~o0LCrN!>SKemir_Y^bH3<2-<$wx|awHc0li7TKE^>;%8Yy}BXu@L1%O+Q!TbVV|)Hg_PTj?}En5P@Sh2bQk(y*}?$)nmoM ze5(yyT31R@veU1dX7ULS1VL0a=`Qw8K%BXz%3aa7P1hk8APQTdOQn9;sY&*RYjU&g zLsA@<@~r&>klQMFj}UWc`PiTgqVgl)El7 zGbls^ils|bP>Z04eZH6}*Q6%JvX`7`!Ec1Y#3V)OHLg%A#&owo&NT*Iy=IwZkzb!4 zOHRLS5+yrP`Kq~N9r<^Twh~xXEzI`ZQ`ksHqVXIj5KJs(n-s8B4$`}obgJ9KZuk|s z=^tuCb;iY8(~|8L?;%UFgZ7x{8+d20smN@xTu1IxQfWk?wf-r$@*x)ii|ENAvZzR^ zN$Nw7Ki8q2!Eq_wo0F5u^OECkgsrvi;i@Nhd|~WDRhKT6ZCob_61Iy#raGvkd5@@U zk6ulT%Vx#we$9#53>J@+D~nl64U2Y-P@rgB(D7TavP zOzkEGMQknA9xs;Y8QHm~m;5_|+fJt!?~?KUeJfd*cD zeI-nTXw=YnR8+Fvfk$3KiiJ90ukF(pWF?+4Mr>rsKST?}sl*~yj;LNwI;h|%oWQlG zu7%=8dIROzqz5%CRMETGr*}4ewwmY2BO2ESuWKHP-Fc!m>+)`k!t%J=OS_zzBXmVm z&Cu*Dv%vI|L9v{cUKQf>uQkK>V`rOm6`8j1iad$rB5!wu`5KUq_j}i--BNg3n3X{`Pu`d( zy(0N{W{}OZX>B&%CT`WQSa?uCw2z*Wh}${Nrz`d$pH)Do$FZDxD!|5%ci4JNpD0b9 z;l4_8Vk3a@5jaLhtpb@ZK+TRCU_{Q*=Ug%o8e3qO2qYK?_-yPXs;Q|M^p6w+u-!Jk z*6XLF)3WVOBU0?QT$>G~h;|Kmkew*#3A}i!DY7biFYVFB>R}S@sj@FlkP6V&pwCJb zc#r=85%RpV4hSVlvMw(lnj!kNr8RhExgBm>B5VhmL5C69B|bwE0XROxuWqV}j{g9U ziYNDVCJByAPbagk9@~zJ)XYHxPpCyVq+(`Gp$)MTwjucWpiv^9Bg7tM=UH~nxQt(x z({2=zMw5%2T~uAzMBj8(MC!x0l*Jk#FYvDlS_(;Se~wsMw=}hEw3qV1Dk5X~`$WYw zrH5->31kFmN-QdvqAAB|7un?H_*C6~Jyx7zcLg*j+gGKYRk+7j!oBGX+L&r-3AZRc zH+cU5ScyA6;*PEU#fH>orJY+;BQJVHeZanmOepM5mnNq&HF8f_qQB2b)2Kj3F^#xs7dQnkue3D zw(07@!<%a=M6=-?#+Z!Z0jjD9im7o;i2?vAmndXJ;TGY_-k>h8bi8EzvbZ86AJlk0H#tqY*r^wFg}DPqeKT|WX!bzFH9brkat4{f^X za?N`zn=BCPqFwR%p-3qr3YjBr65MI=?z_q)xZbl=L8_UI=M|A=MF@qD zqDdOYx?^ZQo%ADfkpZHbIAC8DE{7SsLQ-M3CBs~uVG(hgZ;2M#7(&ot5ts?CHNDS*jE%v*x<>%C-mMac3!iCGg8H4c9LNs7w3 ziAf=;C$u+DyIoOTo(AQgYH20zFxBk{h}Eb(zxU>jhH>8B5u&u1&NGb3ft=?wAjMWMkGEjir3`TtVW;vr&4$q!J)0s^ zlbpF zcCz2x24d6KHVoFwd9!|~;jq|?5~yO8L^L+MM%jmwGbGxx>?9;B)dLj7CfW&!UJ)CS zJmHM2gH5$BYih{~Tu4`|iOa6@H6KoVI-#XJi})i+@_gC(j8xr5#jIpkLzIE`_Sj}5 zm5QVg_X4nR+i#E>ps~qA`}uWVX}jE&X=q60wYQ5`bRRGx(+(*Tk~g}g`y)45W=s5U zm0aaE5g3Ic;qsj^h=hKbWVnKoUTIBKm&l?-h)Sx2Ugg(SWu%v3mH?K6l0{UA>PniF zm-TogM(gX}x3z^|UfQgQ(wU7I5mb+xt{{S{ChAA;x}qlQ{i)RCTOcDn!j)gggl;w5 zyW?KHrO_@Eq)?uVfgjPvDt>4 zntAWj1Iv}W!{p1>4PS7p5WMRZRSCFmP^E|AVg+!bDgDSwdL_7?bZqjpbsI;xjA(R0ZL zJ~YF0H2CH*Rs0K(W$~c4*Q-~h*~*<(cc6*qIj_fIxo+@9Q6wivr%O-KN@4q)ZRI0Y zg!Y1q%6i0A1v!8Wi3@=us``Z6Zc5Cy43$SWO&vg9P%AcX3q`_Nn)L6aCOL(a{5w-5 zz|>5SS2X(gpO)w`su;!A9?gVi4M0{lsA=5dk85D!j>v-ym^2bKGvuYz($lO=3&z1T z@>bV2MrHOBE``yw#v3-n7L1s@$Yi9^gvbw;$>9TO6O>8OF-HN z*f<`VWZM?DPauk_fo!-_!r)rbcl*U8@F+yJpXuGGnZ+}fUA$%3PM|WfUbL&J&6u4F zFpU8pCOuPicUKZZd{-R;@smw1$Um;#VpYkRclLnViZ@E7YPz^aE%LzLPqU zvF7V%(X7~z(lfSk*=JxVB{V)_L!icyD*@3A!o&QzOSY= zWWY>qE4CU+-k~4vfQ?NI`#F{O*Kj3Eud_yDxmNg-GLgs+0nb(3w^m$4MR1dfDjKO4 z{WM|57&2%rv`Jkf5uz1x5c*e^HFVrG)=Gq(U+shVC7k6T#<3!JMVZ4lfb5kUt86uA=dkJx4%l)2ZEuQ;YYg7GioP8ft{1RbzJ2!wLg zmZ(|vKS^BEdzNe~iRjH;FW)I4lj2jMR?8%l9=+$-ErviaT!|Ci2jIUhnM=;QGM>dU zh)FI824l~a2+2BY84~{hFb2}E(^&d>J8aB2H}M)NE=DtpW{UDiR=|~2m)DQTR8wJ8 z{QGrYb)RE&ot1G!1ht1M^r-s3wy@Qw)md#G)t3*4_h%fMy1F^i8)qH7G?)%Lg9^l5 zj6~onnE*IIf(QJvMMK+{x69?xZaIm7IOOb@*n&EnR9wCs-%jYl9H|hf2{vN6^IP*n zL#Fu-Le#jJ-Kg$zpNSD9N@yKHZDa$E0|ZLE+EMpaMIkOIgZ|!>JYLq=?3H+uiFH1% z?L+$FOGI{tgL7hpUysEhnC@p@tg1BD<3n(l8m6?j2IFT|LpiAFTZxb>_7%o29?Z8q zNwnK^cpK&g$Da{#gaFDa%+0o{q*el3aXMa0-3W=anV1t#(X&<7T5nDttMSDZg^uS? z=x4D95~p(d$&lg_6|@-7I2&!@X$4n;Dr|&)z#`w8&W<7 zxQ5%S_UGdc7M5veaa!eHFCC!M8bfO3=hj>HYZ5#tXxw#_PD<6_W}I_AYGo|4@bMWEkFVbi(z-hTeMw*yq845V$GRmSP4 z>6~z6F(DdKMSmr)kqFQpXwo?fxIk(87gkwJMp|G>&E?9!!YR|(kqd7&ID4;24YgM; zG9tT$ZMj3sBTqizO8dptF6^}HR_}BNB+2XAs;6Qbm6v$r1BCWrk6pBc#JMvbbe$1U zM;mbgMN`G?(B~+^IIgQ|PLCJ+sRzoGqq5AtfMSkZv|b=2P8AWzz7Vz7>0_?Y&Pln1 z+;(iq@P{aCjwEDjRBTR7Aw`Nzxw+&Ey-`~rRMKFj;CZvMjgi4PV(Y03gmW@EJ zT#J}Ycts-PbQ7{2Qp|JxEZ3YrRb)W^AB$8nAUy!DYSIiy?35$)b`q50$a7{zTsDc7 zajp1&UWyiMxR7pA^<@hm#wDe|rCw(uxoty6?&?A%sN3~drZ!*npnF-d-A$Q}>RwXT zdtY=iWl~RV;)yParlO>WLP)ZTk2$+!DhtF29{7(DO}=D|cA{yOH1mJrG{b$0Vsc&C z8FgfvO+rb?z688NJzPuU18@69eZf>y=u4QElXpFsX&hkamb<< zbotJg+m_i>R)OJo77DGbWsYXcE+Qfh4Qy}TX-5`=P`>XiIgiJLV(sml2|39zlWt+> zgbenTY=NQNOw3#;j+*H}J3z+jn3bYmo92M#xt3>{+A)ycwJsD%9&0-Z0I?mJ!RHVi zX`^gNWWH(Sc+CM-w)ij4+p33Yn3ip}-72>0n~^z-yY8eBg*iec6DwTRnOvw#)kRd( z(j=+V7I~T66{eSE_3&k?+{?lySHKTX#i%vYBf8f1ExEcAv%#kfc3wL+KPJ?=sWzy~ z?Yeq)W}14vP}THT8E`*HmC1Xn6gg{%yIowdm%!_;xcjkG9c5fHjB3l~0vw4WtF5>p zxqSGk2l?xwg#OXgJ)gVYzbew7cbY4t-KMIksvaK5yH?1uoT|4`@>-LJNkJ`}3dd|n z*lqc-9pnxSQ3Y~KB17)tD7Fi-sTbp=c;+;X2}{b7DN{B6kZioM6{KR7HK338Mvkds z=@7zs@l_AK?5#QvA3+a z1g%1`NV$eLa(ZRK+5>Xc03MM>IsB2GbxPVctir(L- zG@~o8^)csCV|G^WVfN!G{jAoe<+%2a)Z4@qBtkbBW#;}M1Nj*mainxm-gTmQL{jt} zt-Hn1T_|F`{ARpM5jy12zfqV++BK@Y&<*H>mfCFsv_=l(pnwNqaW5<L48>GtHVvP`u6_J!{np&FaVT=CXCu#AB#799(V9LR2@#J!k4(T#um={`gqMwL zdWi2EQ$YUgCwti&*6h33eAR1nXhYSN52Bc1?~vjhxB%mSOQL;=Yr%n`kqh?Q<1x}v*?&~)(d z_ry(ug!7FiJ#dz)Y=}&)?l72B1N9?TA#n}G0mvQ6X4q`#%x8KNl1i@`a$dTHmf1?b zrHaxKH1F`XV_!8Lqj9FpTa6#b;@RcrAN{b0=JPT!cw7=fO-W&VYBwQQaR~_xI$(s9 zn>8S5=Gt|6*#@jt?%K;36$yLH6%S5J9t}rM)wOmzjUJ9=*eRP0#*8CX(5RkJJ5EisuPoDzOe2NH zniJEi^gq73S4|?l^X|m75TAbQ5x8oSJm{q{n_7H<7`v;OuA@&!x1eECOKpR$adBF% zA!!u|i*B@XR%n|c686U2O3?Lb;#+vB^%Nf5;i3}EOOTONO7K-eE#YF-Efe|SS=27Y zwJwUN^6Yacb2P_+_hJ=;O*d%d109Z7$!uF@N^xx)PAeS|5za!p^tBk5U1=+^D`+~c zOuV3yeHF235{IO$M*vA~)k{}T?<^)6j+yH1bXv%-Vm1>XLEYFP0yD(?^Ytk6v)qJX zK8j6a$Ta;W zK%Iy?S0$M)3&}FI*u=xe9yi!F-vRJB!`uAt(C%Q0`ig|myq2i(a`{B%b;L>;FNAky z>&zP`)z_o26~+?ZHzLMVlMZCiZBQF%mv(_%Y(YskP5w#L64*r3NKF|ix|{;Jg4$hQ zE`3oOj}a))b>y18JMH@*o7=U{ACOwuNXV<%NuG*f*BhoT8a_%(Dp5S{5@qHl!{k4127%`**=+foQaa z`cI}6xYc$NR=8&jn6l0bB|n!IS%N?yz{dpH2_Idz9k{3R{{ZuJG|5XL%xuXVY)ar8 zs%v)aR?7vh6v3s-nKe+D$Wdc~j052AMY*ohCCo0}7&pw7wVp*_P~Jb*hTaL z5F`~XI=Q^PF&>?y8k?0~N^>N$jIwe`k6GCRG7O5wbB-a&lCD2w{$@sGPzXCk@$Y{}K!JSkPEP z$6s~=1R$TaexpjC& zMG@v#5jB6fV!4Hx8z$3^do9iwsvi;+x^w+`_{3iZ({oOGtsccEmuEF%s)X zRZ6S0R@3h!C~9a_=0Vvpn0je%9%0QhRT^k9i-YWExq02WWVSiBY@?9T#>ZZHw-|I> zPqR%25;Us+006k;%A}G4(#&bMeK9yqNC01cwU=?!LT&9s-9h2|V7Wt=kS5=0m1V*k z6gi6BN(d{EExN5WOSyB?8QS{xeMfsv@8ZtU14C!w+KqwvE3w^B!)3x;ydSM`Q1Sfs zoRyTh$0fYu&qTFsl0}#c4IQ%!FN1g0GW^AFb_!G*a@*y@t(zvEOp(2Wc zr};(N7Vc%UO+?z|So%zaQ3xB@sxF~QQvU!A+P-cWdwY}A7Q&WLuoYz4Iq|r{ia9 z0@}X8`lxf;hV)rM8dxGDt+I-s5*33KbXSomkGB*reqSzEG{c0ObVbdYxFk7uSEd#V zgo>qGvyC=(uas2WU|4=f9<{b!vZIGN=>DO&D;hE|g0*Y|?4Uao)d>@dBB(eUm+RLy zp9PYbm|Wo*xYax&ntrDYgH@QDwNAly8xjZC*h)Ze zAd$nAc7$0|UkLKtiARc(IG>NlS5C}i;R2P&NJ=T)cg7G+nj55oHvO@ujQ;>aYH_T& znoKVs)_n`PxD|;Ciz%6q*;QUZLRiOI^AcjrsHXL&6zRS>Uh$p-I~U>mR1QFBSQDV_H3Q>_%3{8&<< zYNnM;tgguk$xW)vcFGMg3)R;^@Su>i+wBW1p^A?q5z(V3O7|N%b>Ur|+cLM*L|2gg zh25NNjJV1yytX=mvfgSXxaPe2u6I@qM@3Tlb6f7zpn`_kCgD!Ce`z<-n-=3tSVLm+B zqb9oHN)R{U23=Pi5*{r9k5UwpI7E9jW#!_qt{;V#pU^2v#T!bbbc15>PR90cO z<{8;?Em_&jHX+V#G$@2zMI1?#dLdIT5a<29<~lJhqG-*4x6zxwqkh?@_Hxz+MG;xG zrj)Pqa21k3CpY2jsy%8Vdg5B^6p*E-(5g zb1sLidAO?)M6T2Jn7W68=9)8|QQSP#!===0R+8evpkxBH^U+Txj~?PN`BZ$a$CeyZ z=g807t%Gb0l|>3%i;N7dx2N3|$@QfpCaoHat~Wo1ydh?RFcY+f(IN}wjC>VBzM4Y$ zGqon}U5fo}ovjWSuSs!cX?~$WdK@Wlx|>|MnGI}*9)KvVi;$)|tO{{aQ9&+;S7?{p zcl}1hm-lTI`K|MbRnRapCmJW*OGykI3$4>YR@U3U>4nh%&O15O+-EG1;^*|%F>Fj> z)Y$3i^JNhXL#n=3|T2ghp37pmAu^)I%aT+?{=5Oe)6wI{45%bdhNM^T#M7g*;q zj@6bwky5`XX1&1$#c){_16_!R^UyO4vI%QqEx0SLw*maXC8nRU32tSFlwM|V9u31| zny>J6yo?DtR_wTULXP)rIF54kwR=yUrkQxlk}1{&%_i}jVYd_09d&%PkzHczts#tA zje&7eMBK}dUnQMzdhbgfCphlCT{^bz6EYSqjKK8Nvi1Qs6>7h)l<=R&*v-$(E6Ov@Wv#-2VVv zWPulE>#d@ot=9+axj2a;F)i(A)1DKi)GOoSVwln#qjEg60auO50t$rbn6Bu2z5f8G zLIkXVsj_Z3+iw-+c>U28O~^ew(XxROHdkDYr8Nz!Z!hDDBlY@`V}BxBH;yG``pWX6 zSu*2s&cBx*OBIeNp0HcufM3*iE=autJ%fV+Q!Ed(G`W?WLRRr<%tU*}4Po*Hu!_`j z+I=uj(#=P1<2GWWIj*gJs)ikbkI#Hj&$bN10eC2mf^}6a&FXi;47Ejg6WGLq19agD+E`r7} zq)U#%gOg^qhi#Kp#&D-tjFAe~>&OMinu`c_MR7?RRaHe(FT!kHS0?8#aprLLeU44V zsJ6M1pK%d%`FBGZaz;d3QrbK@UP=70I-8%nt@)%(3Z{NXjAGP^wic0688sImjb9`S zYZ(ZM&z~RFRS^WZ{=&U8Vn_2#gOk%j%)`?oU{LNMB2FY9C>))uipmPy*=D`pdKl|0 zvK8yJnn#64sd|WI3mKGVEJc!mLi2t(9yVjD5V-5YNxJQ_In;7XNm6vt=1(n=i0LEv ztUzcU(X`qn1vOpFiQx}siQCmcYLd4evALwfFvm`&Ju8ruShpsa@hF^`B&X@yQYOLC zMF$D)N~O0?q-K>|W?;!4SJ#i4itM}dJ52U=Ox00E zEj6aCBjxJ0D!;jpsYKlhzMrKHY5oIBHJBnxdT z?6Ui6sK_7lP{n$dT=rrpRlDZ48Z{ZMfiuf!P+(1ga!kW}FJ!TS-K^a#4!4 z)E??I-&O6U++^LaXi8emj!~Sw!1K*l#fnLmW}>qk8;;qiw1N)2f~oz! z$?^6?cmqNQG~$h}lIL&qrkHZ_-0qS~M0iugyWtE!=D3ZvifioHDksR*S7iAA0M&Lx z{)yF$avbuFV?+J5WD_wxBEf31XZ<Ise%{bG3?z~^zDmJ3K|lls4MbMko3i#&OYp;b60H5#JNU_rS$mxu^QqAmkN^8 zcCMfGhJQc7w4=DZI+pFZtCC&MuSsxNH%eN0+w znc0hKBq~B@!inTV!Ydzak@US)1)tvjko#g^U244g%;0BOwFJwnGKw$HlOk;tHv%CF zF*VVNCA6!W&;Wp-IHU3}F)DIitcg1FM{&xNBA02mb$Gb0QooD76dn#j0u8vk7U^nR zwITG89YTsEEXt#C`|{KK(T} z*>>YnMnqLZ#*4y83InF^SnBG9&7Q^al5TW`2Z5V~4=yAEP;?INU^fMO)21f+HQa`W z=4`md9Zr-f*~eF>Sz%J1tjV0QHu;36;>(E+KsJQqh~j#3G(z_y`E@8fjG(DFg41^8 zZl9Y)b6#rkMD9NMt8Klu7b#n20WG%W;ki^6-d%R6-IPaWmLskC6^1P%3DjI>Wn%>M zHa9I}`4udQXxq*=G9{#RlH>`g<5g%J^zOKXf+#-Y(Mn9sx3mInz^zIng)wkTE++~%O z;@~3}c*F4{usI`2(HT3qI7Z(w0_C?%o5UpNfK=y%T`nYC@*Z^FAzok-;e^lOGtv&Y z7g1d*3ZO$KDDwsO#KPXb6%`-;=O8Pr8*?K1N0Qz*vaK&!>AeI_Y+kGoig z(aRZl-?W;ZC+QCDJC^ISJ77g7kp5>q&%A}qZx za?q|z-fCoT;jrGkEU5CmL9RkD7Q^v+SPog&9nq&RLWi8b;PEf!gZfLz-YxsNa?yb7I432~3bMFu8WiNbI|2<6#x zjhsQJU1(3dgAtY~jg8#5*dyZ+SuNuju0;|RMz3nlkCs6l*O{T!oJ%Ifs4@uRZZ|2p zwbwLKX};zzkn%XBgR`I73-TSwbJ(~mv78cHmxKY~kC0xW*2{%I5 zn|9lfY7p2}R_jh?OyiDbO0e$Cimh%wc+rbY11iNJ-lRd8J0Ra8re{Gu{ol$=RW zxy1Qy^(DD|TjO@bn^F>QW`%B+_)6`|X=xz+kiOVqI+K9{W4fcJ75c$R4lIUS$gp=M zRAl80RF$V@aEwh^z5tu4tA1^p6gA(MQKM4x3P_@@5T~TtyZe1qiHzOc#KMqPk(77HZ z{AO%pKI>{?)3N3oPM^3CmdadLkH5cLi|)3B+{~zzy0r#hvgEtvjs2ouQmfk))yHte zW}44jG;bq|2Qa~GvKQdTb;u3d#W_=<#N>>*F1p2{HCB`tigHy%LjK->o|3^Qn{h&E zFy~xBy4;0w%A=AkB4&(|*IOiTQ|{{hS;zLJcO`3-RW3UozRrpHGT3?N-j?)7;*RDo zM|4-%+ucWP{gDU$T`IymBe9q%r>25xU9~DvFTXA8=LWq#X4wL_YSWj0(or|ky+sTw z4QA%%^_dU7T`{$CVuPOtr#__Fn}0Xdh0#R*sG-u#Zx38U7j9BgOn?T6q9R{;D;Sk{ z8FK*)Y|$=Te~?f^2)QEpee0yY9y>#kf_~piLjoCLcYX`#G&8vym<8K z>>gp`W<`@G`BmuK^3y6Af}>$tk5#bU^I;&-LT zVo8rvDopfOZ=*KboIc>vAggj)n(L+r;&C!B+x6Pe`2xFC@%)O9CZ6=U4&)YjRojT-MwY_7$hizyR6W=cXxZn- zf0KLv0C9EDSZ!5_aZM)5{g-#eS=ZZFTXnHQX}bhzyNgk3<-3|JRz*%Xdx$%Tt*h13 zCQC@tC$#D`^Y2s?X&z?Z1wxAc#|=3O>|!Fj{I}|7(M?Xmw8d`l)$xU`%o|P#lXn9x z+=x23m22}vGgh@)UXkHXHg=Kbi_jc{=_ShpmalR2&pO1{3y#hZf}p>!I9ma5GTlvK zvP7wG<{#lFJgVtrMFQRlEQ*^Jkx;*o;-|#6QRd5nF0`ey zfGgJOBB@GUY&2qJsjwtVf!5PgWu?IQr|=|I74BFrX}qZNr$;zV3v!=nTTxerJall~ z29yc&_h@!M>Z*mm^ywVjnUlH-mbUAhp1DFLVv~{{UXGgn=^qqGfgIlKeNu%sP*y=r*cjzpLqj^^6bi{TtV^m3aE%<^NCw(D6+GNk8Od$a zppbbSfqO>h7ZpHTAy-HV6PNP27goiRcyk|oHPp9s^4XaFqF4j`N(k&`2wH78EL+CB zB}1Z*-Ot85^tv(GcB&1lI%9d5>CDRaUuq1T4<`GKf;Q@TUa)SK#pO3yZbBP-{{S>l z3vN69qqyBfT$pT|63CIj(4r-#s+^_eYQ(8KI?`;M7A6r>G$bZhR}HE;5&r;QC@X2^ zg(fAD#;vsO5zM-wX{O4opP09CgIp0;C!P&0p;WrDjGk}@gQn|Bg}@pWRokdhq$GLS zd2(g8RS`wAye;Y!JxOYHT?3oOfZfvPDy|ilkhb-{1yZHe=CwX*L^CndyEolo1`|CCH8$mm3jMnR4bwPRLp@ zH08R)A{Ts)%c2wpQ5+qLOQ~tI*~o!^{JlawR*;CqikCPoFSmZnBhP!5(wvG>rHr!6 zs3&E$@Gm0>lbR2gO-x$1R9rR<)aJdUzLpoK ze-sRIq^-8mVe<1#iqqXYa(Yg}7c9HxLN4-$j|}>RY9mn=jt-|<fK~jz5pDEQ>hmdniM8p{T*tAq6*P^ZqRvpll8zygUYJy z(oI=bS5Y+X$G>pw@40@2f+c@;+5M!(sIqKA9nCCaC`*#9QQlQr>!#Tgz%8=z3ev?D`+Zk*j->CR!R;~)r5TzoE3BxQTU8Pg2Gta` zX}twkstZ_#X^v{M;VKr2znjf+7uw^`i=I(jH9AF7pQ;-=#yQEab(I1Ib%j77*+=BN zbVQ?=i!1LX4aBC>!3`t@>AI=#-vi<=$uI>h<}louiiv6xXzG4vOa2ze%DQ%;L^}4F z()ms^2H0I7ecU}`($;G`P2)z_PyAsi7@M<6y%f{8ivUVS+XQH9a7CR$X@6{93o z@zNwdo+w=I97KxZ%{MUPf;SKvo1}s}-chiSdTp3B9uZ1GO4l&^^VOKvO@d{ZnYA8N zgU3>;yDh*iAwI*NxUK6=_v5hJ;@=Tgk(YV4Tv^|bQ#$0Emb%ku4G5*SW=cirD~Y1> zfI?Pe5S&S-UYKzI07_Q2{lKGU&CL#|Cxf{c{{U$~gBH&dPbbIz5}~5V^rCYUpj=_l zsw3aE0r@DNioRZ(<#O1O8o6B}K`=JKqb2YUxbm1LoNTOFg%KgkYCBQ8!B>mQv6+b{ z=3PmdwpFZIwWz!%+YTyop4brCAraJ76{=}9jy^@NJ+#_6kWuH_Tdcjj+S5*jA0NKQ z@tld>G|4Mpj`V3Z&Qjj1kf|#DauB-9uSRj9Ez#dCWfJuTqvD?F-!F*GO6&&)12-UgLb2fX8!Sgv35hCKa z_Avx4ah$r&sxcwN$L=lb99S}%jvhm8@tGjEw#iZ3hy?Je@XKgVqCv5bUr*_G|2m^4}Y z52QBPClp+&qsw5YIWt*!i~!`W?g=Uv_K{7vTPN9CQzc7AzcBZZ`15qZ1cK>{CMqK0 z=d)BW%y*ELPSfU4t)ry0z&hu+OFQUp6}E~CH!)ppi>54GDHzkPxW|#-1E~YZ$oh5p zs=8zI<;P;{U}dK&rAL6cQr&-Lw#GItfG9Tlhz-IP3F+$U)zXV^lrC2|9*$}pXL2U6 zTFheI-z$S7Px5x-z6#sK?4Jc|jWnSpqU2j{NPno34^g}Z(rCKD>q?K+X+dD?#$qPs z*f@2!X?m_wxN2ST#F?a0V^FjsZZjsbR~6r3-3gQ-QR2U{^jmm_ zAuMEG(6d0=WQGafoi82f`(jfUEdxfy#2l4JO}=^YKppKV$ZFkGjPer>s5ryMF9^3L zIrENAG)?XfBcBD`Hrc}C(Lvf)Q3q_wiI+})5ryu&3PgyCLf;bG%3MkR0591bDOmPx z719WCEn~F%!be<$;P93NZjeWBeVu2@E-0tvM7XH*OL&G5=?Rg6Itj;acCU|u{t_kv zRBRDzr+1kCKWsNWwd=)}lGx^He+luEkj}^UkYH--Rd0EsTKH7|0O6v?eUdNeir(7~ zMvIcJ01HzBW2=O`VMNOYi7IUhTHh}!5^A-4ZskaC?mNe=I@@O;x=hccw~+xNvb(u1 zlhGqpSFIs0^IdI0)*lr2Q5MO0a`?u8n>)~z%S*&_{C+ZkPzaPLDk$=D^o3(gai<)kWzlETN;nU@;gXDkGac6$aeis(kO6n(gg+AFu=EVX_==#T$|cSJ z0GQpT+h9q@G8~HD@gDkpTu3yzG{CZ>B)4w4D6(p}S#~Zau8lq5IOMw3aCo^Ug6*;y zH8K#r{9^Bc#S{~5f42?eASf+3YVZ>AU6`->M&w&EDTW;Od6|MMj1u8IxSV9J0=v>8 zqsp=5kp_md%E(n-jy+`PzVsoV7RIW?0ezGhki%}&+O{f4q>d|~rTZI2?t56HBbd4F zi%$)IkM73GQ!@#A?8ar0pqPb*)~-@gF*b|THm`yZ$I}Z5#u4_XP-Isu)i_4u<7rtK zWn+ym6OeW(8gVR!!Iaz`Xf|`(kbCt}JaB7Q#=ieGy_um?5xNQAcTc8maPe#pBGsUVy|A>BrqyXe~CB1m*jEUT{KA zw!#q>n|QnJyZNAx-Oij`<@#5Z;`UWhW>!aza^c(5$coeRrNC&-O|}B*v1@ID89zXw429!fH;KMi-XURbZtnB(NIqFzvV*BbckcVJb(NH7lW|#2!Lrk>L&lQ*#-+8Gxrp83 z7IRU?+K|dapAlu_(@{Psk2d5~9m@P`Z z!(^K_B2t0InRuIRwIU=@LN1GXa%2d$gzF^bM1xTQTc}V_$Bk2o61SHPutb}!feg4z zIWTSwRUWy(;^h}?G4rD3;|ab~MXtCkxv7Y1<)(902ZSf_%}rv~r!j-N^KGiUl4W4U zwuXks!N-6NSM~x9C)6k@FoN#Bs!y_FYCH`W zexX@+=uO%+B+E^re?cRfzETfOurkTYs45$RE(u>kOUOjMN;^S9?$-h6*>*K7WHDs&8A7QU4??h@h1 z`_^xVT-Qpatd}9w-T4*Kk;8^ET=AJ0nlBL{`4>ftO$xSqJ)X~)6bN(O##9)9r55*35+S5kmz70$oaBkeKyV3IaKE z+R0Uw*gI9Jc?!3{+*jBKj!QBcwxjX=s#?0Kw~WCEe{lBOp>8QVTx_jN z#YJyWyTvLcX%E1ZRtPrH;MqSe>w(NAX`!cy1GTL*>m)Bs8T9w+72kFg6Y-Y=7zRb43S$!e38TQlDoskfTTmwt2X+y*^RC?inm@Ow^ew0u1(@r zq$pe$3wVjf#bnHumolo?7ZDH%aVJRG)G+aB-_%Q3wPpkwrP6E6e>;}jvTUb@Alpsx5rLA9Y?Mh&2Fg320jIh&A@b@M74RE@mYa0AluU(m?p_kR;TpFn%&FM+Ag(YO zGz3B>S@WxfpO-NBtT~w9bvUK2FmG!9pJ=8>snOvaXc+w3qs6nU_^RtneXhmJ2+J9P zkqq7-aiWD5+nAJ#&ZC62!YIc!gFGy~4RcV}-PmIzy{BR{^WLIKNDAg*4LIJ@U z6?>X+{kj!#Hr;b45U8E`e%0?E#`u@>YCG?VmS-l2Z8Zk$GW89F8oH=Ad|^|crqtEB zL^(I~v@+{#q(5a#lbaB#CP#WhZMf?#U#< zb!y)ig9YPwkAzx`o{r8Oix|z4i9%Vd`MHM&1;QcdxpN0j)<)eLhfrH^_i>3YO`{9u zY{Qs(a%r?~R9qUIzS-S2+LyFoL<84h2#<1%1SY}0(mUH&*=!7$Mv~%HOg8GPB4p6g zGl%7J^k5uF_I5R9(Q!!)6rmLOpgO+}qaj7P2vxKmdse?zsttWWFmRu@GTF0X1DTOs zVj+L^T~%yMM^XZ+9(t5x)nA8cexXZZ;4r*bB$FkiaU?ZGKDE{(M3So(MT}a>6;=!* ziklZEiOt*D(J>_+v>CBz3WS7(m4-`c`mPT6)#+J{n6@rGCPcSdwizmU?RLYLf++e+ zD2Zo1y)zVLeZEzTzH3P{XR}v!(=lo3<+iS+1WHVrt=64}2&ApZN5q8(fqaLk)^1Ab zIWDdAu0>Mm>OoIb6pT#Ts*?y!iY0Gp){ed+sA`8^l?=H_U>_GuWZ|zcb@h^R5w#~B zkshTSs=SR942&en^m9##FRKV21_{m6^#tX&TRJTwUXN#`R_#fuJ{_S3%*A%Kxi}O{ z$6W-6>ZC~G(Pb8~2EDAhqwV&ugKGmJp<->NA-5q7!ZDd0iEXf_%p5id)f0(u`1C7{ zwhKpD7m$DqLh(e>We7-#nj^Yx}oUFx2o76_q=wA=0d*N); zuFJkHE0!=wmYNO0cMZdr7c6lc(;C=nJ}@Sg!VnZ?#)YR9#Zpw_;-UlMii6`-O}{1i z=vADXaqXVc(!2c8+&x-(U}BkQk5s@E)etupo@Fh?A5-{*CPnpRh0$#g701OGb+-t1 z2GzbQk8mU;UO&{o!gYXIgLcwnfpe{yhsV;3#h>hfiS-&P0Gb$XLawW|8GJ`QT)Jb- z_A@dpcUQtML34>qi1Ka*Y@#D?0xBBinh#^kuu5z2+{$O;?yS_lH&?ok~7BJWHI?U@^{Jb zF%;p|j}LW_WyN9Rc*S!r!CMZ-d#pvC$B80IVYE`0HXE`L6`Khyh_ul+>4zDdvu>QZOMwpw z{{Rn%r&K^sT0%(i5|2ogM(zP5A3i*&T1Toa8x+-AHsMU9pcp3XhF%Pd>~FZ>kXE*h zJyupKn+zzf5QDF)h_623aRMaj8OD`%iT+6-m*e3DwBV@fW$fwvyoNgl`UELefergWj|Iix+)#%HkuxNPcM(t{y^&ct1@%x8Z^qn1*x{iM z_86is9zXfIM?CY*T`Gj4gQZjcP{oCprS6T!ThTeaS93tqyD65m`a6`)knpX9c&|Kx z8RrF<-bTcHMA-XC7YC9mB5c1E-`I?Mu`>Rf3h(sHlyj57aC#Tr^Ty z%(TKZ4l^-aW<{=1lhVSitCrL5wvgmr$)3I`&l;$chHB}M4#Zy(>gvlx4Tz&;NaE@n z^qKVnT$*~cf|I(n zq>yXXs@T&SMRp7khU0V=70t(g$>Eaf$x(Bfa&$QLti+(&Cax^F@K|@-TJN)4)gHEs zF6}X+GwO&c%g($4xg5!&UP;SU{{RpN@&%pOLHi?iu8&Ib*^S_~`m~{FHLxRD)K@Wl z{8VUOl_tJX$O!(P2z*Qp!}6~Ng@0bYa#0&5NS>k8wE{Xd^&LcRPnyzRXn~2g9+;R0 zo?=}1ofI)45-w5`P5uR^sbP4|b#FrJYT>(@_SKo-(%nXhyPIgKGYqi`<5H9*Uk4!v zA)Dj>03JU4n*0G8AoOCnF3V!oRoRkC+I1V3s0dSX_*zu)h}uk1=OzkU5|^5mw1kC% z1b8ph7w9ls6Pn?;Zh_=|O6@-(fR+?EW|uZ*Qn?mAmgG40NmUpeXa&htljVeteiC_2 z0Gua4zf(l&C7e@4M;SK7@wBcWBpp`pDqZs2C|&U){&2e29(0s#-pgbLw$zAsr^{{M zVL_`O?e7QAv3lFBJkB&#iS>qa>7m(3Nw+U<`95%^+tPz?C33QikR+yF+0H0iZ_$$N zOREIxObaALgO$4N(`lmJx)ZyLIV&@=eokncnB%dM5Fa`?Ba-?JF69^rX4qeN7~R_! zvFcmHYhDIqy_aZo*8|N4C~p<1_|?2LX2N+A2}o5`BThVs6-9c9*)?PvcI0`w*3%Gh zE~hGLv*v@@n89Yinrdif2y|NYE<*1SG%AXGe)LDGwW_l)$mP)Y4AzR|(&X2+*WPmI z?qZqcy<{Qrv;!n73MA`y5gr9)$JjR1z`2SKLK7{RkvS%k^8YB zuyR{9llFmNSAYRrY!AY>iJ}h`+J~fWj}hXXfn~9+(+RoM4%qYW4~>eM(48s^)t1?{ zE^Br(5!QwoK0u8))9y9#6K9J4CfGAD*(f}d23ZZnL}Fbf!%KZh8TPzkr8!HS!{oh_2X2~Sf|buL}CYe7kpy*?!6uxJ80S;e@5 zn=sFfOUmnvh`6nXK1!VsZ%T*?qieD%+9S*3N>wfIw5U-A%6gozx0q3f;}5RXsP? z$`y+Q#KgnyOPH%@wyCeXEA*%#f{0kDb;RYTP9lYN+bMoUvHjN}#Igy(^EIV5&A;J% zz9Blih8xZ_%r~7fX?UZA=B8753>~sxK`(ZHAKUgu6qsdFfWg zRY)(|0@tKWPNF=twLBtCS91#^yq#G^l}&fjR}2UdC*HCaSl5t6*4lPN)FvmRXupaXHnd<7~bPLO|r!dAQ=s;)Ft67mmZoi;qJP-gE-Co%Y;vKvoe6o}~}i~A^&p4*ua zq6nuhm&{AcJuc#@DLh^}7v)X#`J$~b_{<3qN~3NP>n;Pj?p^w0&czF|S(GbE^^9V5 z2<5CUKA+<2ZN_;vRER~xcE^u0@sjWEy)Al8&68*oO3uYZ2HMc8#ZuUah@7c+1CNmlh%keA$;ae1TOtEE#WG2ipS0B!S9v2jBkVO+^ z668bF^06%i^0=i)|amlBu8 zkvwBiKkoAzDmu(|bcoEs+C-P+bF#gW#Z2eB6*m}_;^C4-jEbr9M^BroMb)*A(Bab( z%?8nSW2U9P=sg}s9#vNqP*o@$B3eT2C2`i5_$3knm}YX`Gn&P*royf5GMRH0O^v$_ z*3~fynI!mnt`e4K{MJo5{OTV@n3-04}()kk@)GPcy zHieHvI$*_fmw$t^xK&RWBueH!_7PdKWgc^iHfZs-WxA0Gbivfb+?TlJeW8(Cgyn8@ zE*`y-)Qjo-xKxoaP~DcX1FPs0k5&nUToHYX{IQMT;N-#B<ia`)a0=aHqm>tNfT^Y4rAJ1bvG=rt%*&H9s`6Dtj?!saA>>_Sq7d2#DKU&RBzMXyg^@@)#^ly zoYc{_@(V3Y0IG^BB##IeHqs=lBt(6}#b+g$J)JS&yB9lTS8by~1o|GM@c`w2OcN%e} z5hQ)1CDM$F?Pnt_(aWu@nUPS?1IkG2lHG#KsTi9j+!#o^fR_^x{gZKZks&Lsc!uk^ zRFl$I5SPZWuq5j10tQ8YN+&=y>Pt$?ZQE|os>^i$05PYRjz+h)k5zQtd-g61V=Agsb*&)T zw9#@$Rp(i41Di-C`i|oxFa)CI&NfNkMXGm)c)=dP$vV{Q1VUq-m2h(6*Ku=nh@!&B z8whA6GfdNc1-4pu!n@FprIgHP)$g%5J&D$7u7_CzaO){;w#Y$z( zRh)Lj+hO%=o8r8Peg6PeB1nkbVQVtjj?b#|&$`nUxGm;E`%5^=1F8b@3xvrc7PGL! z(l=bBWy~d~rWD{48fYn{bAtM9KVn{Z@`Hcm{2Gz>rG2)9L zCisxsBSQU?sl>%vAz59b)KyKBE5&=Q71dwA0hEb6@jS0g$iK`4yJn0zRPOgyk9b%o z0^HNQZrgH|hgY0p83r*NCOaPY7zmV^u0vm9+8eCPrO29)4o#&8RlZKRjk);Z;jb=P z2i!8Qw?$HgdMGPetsCv*CGw5NN@1~h+p*&*FHgYy zzpfxMd)gdJky%AVOHgjia}Zl;sFS`dOG<0*GODqikGrHfE}BxcR}&{I3ldln>v*#~w^>ocqyq~yWrA^TV6OMk2{!`@>JU|5x9$0d+ec+T|Z%Swzb z&Fc13mOX0RiZ&cMcMR9iq-LSI;5_j+6l)u7pC_M=rUZ>6qzDfF5Pj37WN6qnq~f8t zi^S5B)6;hU0M`XKir%7+GFCj7E|nX;QQWz4L+jetXj%L!oT#;8m7II{!pW$x%6i4H zu#094Nta&&S^$t%Qxgoh54_;Jz@-Ns8xfB>?GI`gB4s2dM2=hx)Lk8rSkVZUm7#4^ zw1w9EQ+mjftv(?(+ayfWkgl+M%E8S2HVX52LW|s9GdoCghwJ21HsuA=?81rn77Y{5 z+idb0$JliJJcdk}RTEGZ2NPvo%chtt*_EEyB=iM9kptE;v;IqEu(evf+>*iA_%@fJOR;ONUB@> zxbYscQv~G0jY~W`A}WZ{bgwr5021Ma=d%FW>~5;n2`wT4A>dAw>h#B<+A+IniO1+9 zx+YIWCZ1*l!e0`Ki*EyB5?EGC=lwoEo?N<oJ{@bB(zKSY~ zQ99P);jc26^x^mnMeZ?XBRtVp`k0aeSTQy}&C6^>TRt2Rc!!P7d#aKT6A=9M2HZ9d zvgKJs+-szZ(nY%{(Wi!vRgrq(A}-|n3zpc9SYmcDoCc**KIACi8%=asdB9-DlW)iH zI!fz`gg-r%5k0v3mryL=qR^(3XjLE!R*P?W=v~zD)e<(g4FZBMC3=fbMc=oF$_4kB z%$8*wIJOhwPIgHvawUU+m&fDOgD{f_FFf0G3L~r%m#X?Z zi>osEbB%!81-Zc$N_A)S{{X1!7!k+7@`vmnlS?|dQEZ%BOIu{}!f61I93fc(4NGai z*|SyMRJIOZ9Wl5Z)mh+8xe9v`<7>5I~-HSb8R zTeA_>RW9-JhBA+csXBlyiD?&ITSxBk5qi7(h9w&J+pR9HWVn?J&Psr<*ufcbpj5wR zX&lJ~&~^7^$7EFzeY}RyZSo@PY(0gRe`@fl18PDyaenUcgOY7cq9J&%BvkGc_}gg| z5a#zMq*{-9a65_8{I-^&O<~3UA#Sv?T*|U*0tkrBQ|yZ^*RKZ#LYD6Sh$XP~0L<*k z$5F&>Lora``iMwKRK5vVV6wAqv_8Wy+sGk2NL7Z*~(LjiveCQm`6% z9FE>W_f0>30Xn?>7!_=}FkG%Sz)02Ds5^0MkRQKN4kFvbW6U=-w98uGRbAspLfgF1 z(%#~T-ER@KwU`tY6{%Pt@)t^~m5wU?S#-qi&kn+M4N0WHBwP?eish@-_|+C_GMjP! zKB0+_tYbXW#3RT501i(QkeBxk;gqHrrXsYLAzdPhZPUKn!4y6mHI15`o|YFYFqb*P zhUqoCeQFk`sH;d9T4^?#TgzGz&`nvwpvOm^Tkw|c6zcb550PDiRLh9@pQR5WqK?X= z?3}uj^I#9YV-O347R%5~ZC)*FRaNle_(4O6P9Dw4rYK1sIm&7Kn}Q92wwy%6a_D!FnQ=74nMa64 z1YHD2O*LuskL!ruYGlNTg=$68MI9k}FP%qE<4Hw})O}2}_Km0*{M>rrwCZgGGg)$y zbW7ZVh(cEvB3VP6)5TFBq9q>FI+6uuFm zNi48j{tqu#487<~8udfHWo8&9 z)M(qAV-?~Rb<4pH-Yy>vG4x}3YZo`S4l}MgjYlfc)p|>pBIS)UQxyfz6y7T?7jU z^i^7~cA|oODme|-Hm>Gc#ZycW6{F1YOrmAPNrfO*LxW*RaM^7d=4G-=gep9E2Ov@7 zk|j-`I$IW~Hs}$!d-V>FmsR~k8w(&tCQQmsIs~LL=FN_ZcOKM?$gTAmK#wpyn$~gB zV;Z+3C6wz8OU5z$uM$XhElFSp)J_m-4mdhax3ZTu%Xc{k`$cn;NQy-);yBX_!X>DF zlqBN&VWLVQfP~H#vi(j9+?JMhnH4HM-?9SJw47`kx2Dw$I-NrLII}cntyO zlx?>p5>rC1X{cdn&O0ox#w=uIT63&fE+u1mF1AWnWmxT%jaf5Z;v8#Ko)DFn5t0(~ zGEIN1PuRI}PMHxlO4wO5_z~}3p+(L%mtYtXHcDb&XoGON?e^2uq<&++CQAp=lTs# zXwFha}{xh{5u@(Pt~a6rSQZQ(zKw{*bvQe z^{B|Oaz`AroRRMsWJjEWgC(ax877gf_@O}idoUGo!)%-8P*qIx9b>PH#7QGko}3AQ z_HFgG0pT`@RJlOFR)yRk;#fMA z#iBOjyEt5gjPNrjTu^MhocQzVB4+WV!)w!c<{59g%f)8GQ{ z0z0ftUTO9~V|`ZTfc{DCpUXDnHYYTI^;C!WSE~2ZL3+`b`$4@)AT!+hU`# zn%S*wBFJv(y?9GL_$XKAIz^g4X=8h*`h_NC+z%Zr>}Hu8vxeV^8)>YJV*`GBBzSfg znIdh*NI}L_(|)%0LNOz_h2c>lQ7!#Z0i)C%i8M&wlT$HEeonOXuH}PPpJaMN3I#qe zZ{=Z-#}Y|1viuH94o-0u792wwxZ&pp5JjYs{I`eXJb%Baj0nlIS%G_IgVY+izvUCB zwM*J9%d26-K_pR2y=9l!RrtZ`k37OFvwR+Gg}|oL;#RS(F6gQ%EnKnyLKbZ!Rg)5w zpSvcP)U^%N$_68Eqd3vF=M!oLTZIes&Dd1l zmuU+{I)^GzSA1zdLVJbNjbXxQCF9hWG&ma=j$v{4D=b0=J!LMcEo_?E(QB#OeI3YV z9MPDDta#stCKxyl2&%GtXSF?+MO*e`F^CGadb74WLDd!a&aRXV#llKMQAX5tLDG}Y z%B5!%7$P7_I_nF1uLz(b)DqFsgfwv$(krc4q@Sq1g=4Zpm$;2N$r;bI$5QMk&!Eg{ z$BrEgs0|bzr&s$0eA(|ESpAG zUdz^qkIR)SLK}v#ixzdJ%$DmMZ$Yy%0MV&bz48NMCWB6+R8diiqlElu$jrM5b`LDS z5Gzj{afr_}MR|#`7>*=Lh^{D`XrsWsA??+T)(z&#W$S%OL2a=t>Ml`=@fw;FZL)%- zrD+Kkuh)5fg>RH}aq5@yOQeL$aHY{#O0x3WzbEZTUY;DOY(;t4<+M?d=#x$C08SSa zQcr%HVc2>pZ8Dd2!L@RzA5m)3YtyPBL_|%fJ83z@-71$|s_OLbBK>_){$%YpCQVzI z^vsT3bk?d)JiD}R4b&;+3zd~~gbgZ5SklqPqY@*c<8i?GZd>)N%k42X^GuLUHm%=c zwQ%2c2ozS)&&aFbQK=$Y@}P@K-x2`SNJz4x68%M6WA6(rxlyXcp|!Vz1(rc(z9U^K z8AvsG5$9t9i-6|a0sttg4=;~M=P>L!(J7y5Ts~l`VgMvVmvRZ|OG}pJfgNGH-9&QL z6riQo3fr3W*4}G|qqt%*V`Ca~ip_%Zkq6Z}j5`!eRfBb7Dz=S^l$Y89_Awul59`a9 zL9vI-Hqh0;7ThZcw;j5Q(^063E|QERN*P;gbwxGjPxM0Nfo4GtGE9=#%#8ILY=nU} zBgu;58zN!hXb44KA}}qvBK*gS{=G7mX|Zlp0o4mC^oMLOlG?UBCIl+Bil~z5qIz=} z-s%f(Ad|~o*Ib$S+qw(dYn5Kt%B`otDXOU^c>+^z+`9cNd4(Yq1@>(HL}uhqR3YGm zpSy{~iFoyUk)Cp0g;$v&ZM`LJF3W_zQr{0{r4DO1svs$y*4RJHRD&HCbQq2?Hu6@f zTwT=N<8a=1DB(<)#bxLixf;f%Y;Z(*n?qKc7UYQvD{p+y;wnTG#?dX7C98?P)Ka&{ zJuvt%>p`<7#$mNo;T=MkaUys6lf#ArHT}e4x9`0T!^iEhsl*WJAAscScOfvfM*bcQ8$=cM$Y7(%F0hozjVJC>(+LJ2bILnHxsk^FXc zU9z=ATWv{6DhOPB;#QFRr5<4sx4TRX4mc}oZ!EA;R8a2K^K|-ch=kWOI@YEwU}LpZ z)}q@rt;nBWj>%!xA0M?$YE&r(Y~2DNa`P{RO}-)eZi6F6BqJ{6u8P_uh-+^#TXBg9 z^wO(M+M;oINCb_`gpqHyuO_YILK}p7vX5+dUD?F7g#@Ut^Km-XY~@u|YAqI04qMUQjVnP*B*m>SC9~2%Hj_M;qa^*&!aHAtf8G^ARF}1#mGDd8e9{ zAyu_(Ft^8uEw`&d7s~;?Y17QdBnb0$7qP? zMw1M-PB=tDmkK%a4G9Sdyh}+zC9o8ugbyI^)(Ll~U-Vev(%tLUlZ)5s4^Zr=9dLQs@&oO7F|zr zL3KD00m9EZ*{KJx#53otuxwk&)mvZ`RC*9!p#Yg=)%ir}#PoWGV-`{=9lUr<915;8`*r zEuOGWk~)n>Galx&{x97oMr^J%cOIj= zs;X^CLHL;MoHn9PNXZ<$YSY5{nI{1EBwn;`U|vg3O{tmhM`9b?6Up&K6COKzLqK~_ZDr9HP3p_3a`+0`Mn0um<8O4RDK&@8 zJ+`;>lIjLrw-GX8NpDgGVjpimxjNc5Z${G%)tpw=DnI-|0@Sf9(P89lWfk>cs>B&> zlDHyZ4Wo)Xhs8S3rU?L@d`MQi$5;_B4VAjzH09kB6F6CzG~1;v<7;SxqNZc=np$d~ zAGQS%E1PlVQtm}ZRdFf)uaisnsyrz?5m(y!fcX7yH6{Qvid4EXe160 zapl*;Hm?7X|gMA5Czr6ZxX2G-nmD*c8|@+ zZDY^EE?&$j+=BCvVlH^rMvOJdvUSHP=1EbF4GmY+q=Mpnh*0+Uj$Xu-ryBye(D-gj zfhzivi)wnUiGe`bBD5PMRX41%Q=7-2E@NHDNnSR66<2FD^SFKW}l2TDp>8kEeFQzm?mm5W0D$|JG zyo5MwuS)${{ZJ&zv?|9idUZ~FsF@@DmUL06?r=bhQC8au?@aYh_<7{{Pu#q_d+K{9l$>d_m{H3}>o0?S{%}wa|3u2mg0kMkVK z^`A7GUc}4nnhiWli4I7g9?i&dvG)2mg-oN5j~ky&Z% zX9X*#O>Sb=20&;v(Z(%&Ss=}Yd%w$1GiVA#;g^t$k4)1HooZWK+Yqk#bb@m@cb-B;EHy*RBea2=$Y~{L( zUS72bg@*);qc|i6yt#A}jksdsxGGH52EjV1msXUe6TShTCsB)~*=$k>Ociw8YAbc3Lrjv|_uCc2Z2=qFwym3$x4YrxPhOb^0}3S@we5`Vb5 zTRiqAZp({84+|n%jjNw*t>AFSLWz!{({~PWqr}>is7(uJXxc+tZ~1o!l5bSco0dH! z#e>%BP~J3}GhL9u*E-0X(A$Y%gGv&VO z)PtJQ;kGc+HfSaSJ6AZWS1(RQ%sn?05bvrhl&)7?JtEW2Xxbi;{ z-wT5VduFPB2a)K{BJylK$U3=U@>1A=59bMSWTnKCpc^$?bfF@O>ILsb;T{-bEw~PC z0fO7Ilu=F+rw!Jv4_5RYL#T=(9mM3*aVSjbW)S^GX<=;+!}xk*5Fw1uEH>IH(c(sq z!7Q8fArcm2Dj6eUO*hRDQQK{1O|@5;W`d+5M1m{TUBJAhsJf!fhDs~;zJg4V4r!{@ zU+ffJ%2^a8w!NWuGjoi;oV`gR&h~pv%Ub6w%Es!_src;_D`?T%=1b=XnQa+94u=va xM0V&macnu6ftPTUSQX!DAc6A@d%#D%Ikd%yC1?&JI3nd~zxI57TBoW%|JgGSU1tCQ literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-49.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-49.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b3d7f68d3d87a04572c33cb72f42075d00efe109 GIT binary patch literal 66142 zcmce7byQr<)8^nB+?`#WH1H*I8v}I87u$*3xFkq^#GVlI=lF~*?zF`prW^ApyFib;HJ_v zcXao3`amV^0I~FNb9S<|bZ4gWbh3iDQF+)vsKi~&E#EFmww4elcL+0;4#dsf*4c@Q zla*b7%ErUPMSzXX+uNJf{9hcav)czYhyP&R*_7lZrByVgS>CY!YWDgIfGy=|Y47`{ z{69)sy_v8Lh?4fPwFUs>`tT0%B#oHap+vlJ3|3m55ZP*|G(;6ptR&y(7 z3ka*Fvm=|2xeFTyD?1xNNYuyCfy(PY)(ZpQ%79c5Crf85Tc;1gKy57<7CxY;2&#~e zfRCe#BgDg;>J9JYF5n{!{8yU5+xLT*;p0vb{>|5L6yV?!HbQ<~}S=?lk|1 z_>T-Jh`Xhmt&7J$9rlk*a|>rr4`Cqit)A+?^mBCiU&8;dmj8FKhpqMhR^|Ud|5Nj? zqy9VG%JP4ScJXv`_*ZKyOE!oD#1Z1;;r@o_VEY&U<}v|EH;B21vzwN)vx6{D(bmP5 z#l^w%gRPVMTlnz2dHWxo|7k@))7jd?+uRNEe?|RcI+c)>rNF;Y?*4D~KfVxm@c2*e zKUoLce;gp-VE#|{`LI|)tj#?gJb)tqKZ5Q5Izoil{^=nH+yANZzq$X?S%~fbu;@R~ z|JJ#0zxhwuThP44Alv^6LJ`#0Reu+E12#83?D5!9-Flc}`fGidO z76uLu79JiB0Ra&K9u^J;77iW(8xe;ZfP{<-AjT-?#3U8WHSn%!SJZ1dePL_Oa*GG?^72EH|@X_$kUjfw& zY+*ROyF zkDrdoCx@7yeZ8GfuA6WbKcV64n8^(T*7)ewT#Ul!27O8vdIB)9H4H(BWr;M5LqME9 zZ^m+pe9U^Gkb&Y2kJ(W6x&jkiHT-~Ze6Up5XQ>LzOdMblZ~52a6iO;W=c4OBe@+d& z=lHhMM`e&yOOMqMd!^XLVL7C!(6PkH4oT}=#QH!KiS+ljdN?tk-aTv(l8^(TFACMa z2nhVjf8-XF%4E>?zF3I0&1fHN@a=NK(hHHz-crK8sGB)tHEHhEqVDmkw{{4L8tLgq zKc#7`RWu7P<*f(wd>@ilSC=)wrOk^g)URoLrU{tuNhdw0S&&Gm`N4gbYFJ8^n(nf{ zHyR_ADz`4pg>P!DcbpiqjHF?;oSl>5WP2+XX5xF zptB|qa|XIWlet?Qwl_HimRexeW@1GZ?S@JN>3_S~8FPS$T){9h3AEfjzik+bT;Tlj*j6DL`4A zdAhk7XM`V0440e!bG)P_ytU}6iOx>aY}k0?2nT4od?8lxx!5T$i>PSSdus5T&gK04 zBm1GOlVQS3=s z4O_O0M|H~VDn+emUlzWsxRb^5z`dA(bz#cYZ~Jn#&CFg^B9)bbHlEE0$HO>WM4x9hSo+F7w$gT-A?5h?UA`zWX~8Cjb!ED-7zhE%vA2MKx@KdB>3K< zaf>LS;yXq4Bp3R{7k_~Q;lfj|eaPc-M>GZ`1xsZn|gRd%P zWj_QnZzV>azf6QF4WX>F-^xc>fXt7Jo{f6qu_)f^sw{ov*jd-GonDH#DC=v3(At25 z62@hkYYj~hBpBY*+~bJ~G`GN>jv$K=S8ekiUj4eTGLS2Lq*VdX5(iRVH|G!kB%7y0 zK7^ntmq;&i);UJ@jnk%AH|0}^_5lBY8;ljw8V=sx6QxtydZ-@&A|v8@2}oR|M03<>=HhmRNoa*Hoi0lw8@b8_&xVI#P7A~c%UBe->+W0x+sRA z4Vr8|j5KD!pSw@Ob^Eq8@7DV{92&nBjC91HoZod67_-OuJddU)2(ntjpF??( z5b4%`O`P40Xtb1KlMtd+626z}RYp>vrElw_FC_*s<&vGR6q8Z7et{6b0z@)y>s83q zsXG+u9Dm%(*2`%f=9)K#AbodH;Ttiz{XTv=MI%xh*Twp6G4Y#3)B|z*w7iLM_x&T~ z?dkXlC7xl)83nObcgE$uR%*IY>!ou(9aP3ehT}zGl71d}ITkW5jJ$_YJ4F)G#yHs* zGP+0q9F&rXDXQK}m+P@)rtaDU ziZno%cAm^^y-3vlX(!Ok_%=uKe`@`(f0c`cGE#Lq@1_FZU4_;hc;tTg3ixsx*^G~F zF(dPfh&PjAmlVT}w$Jk7_Q=p$aN^I#J5{buI)JZ)MmM}tKXw!`1ZTv+#HeJ4aHh>Pn{hVD}gf5})--DKH~!)XbOE;}bwc zWevSxnjKTod910gUJ=Bh!vzF(UH7$fppn z$Vm|#S>WUPAljY^BuPO61N(hp%zGlL4(%8`&AI&8LMPfWE-tI5)}JpOH=Q5}#$&6< z_48eHYin#m>^bj~FkFZ&AcK4KMESj*xyY(Xv6+lwt{$;6!1le7Q(uyQDO z%=~DFMh@o$H82pzYg+Z?vo%vw+l>N?(|lP!#UXwFfQ>!HKnOFWtGi}|%AxsnqHt%S zk`u$zyaH{17K^KFJT4w<|p?`LuqUk*}FrGR$J_$t7}wI^@c9HRpRkZPKm zE|A~fohWizhe07iI=6@PUEAh*Z$aDw{(?k(t)Iy$0)9VPN<(7pCXYfGTFEd>R>`f4 z99>d+NA_sbpNqv4&dO`>1{k+>Y(K_ow;H$jIlO;$HzNlNr>vC~yFatTv}q@9sPb5Z zqy;HWV-k;ZifoguPYHngIPcwNM(VV7v;C4S^YI5mk~0x&@l|G4>hI);+S#HLjda@C zR>LFe3%btWmwX7s^J^PHb^=oX(5rQD_=lb`w2(gWmlV`xKbca}Jt?^sQ;u_O3d73I z&6})aB#W?1etcN1KCRnHd)#43#pxVqOm|C|WkGz}O=DbWPk|bFAEywdQ_zN-m0doq zCaH$`*Pul9#?9N)MXmDcwk6WwkvDtG5n}K4`;u}Uuh}c)U`9aZsCq!E9j! z;`4pr+Ha(C8IMgEU)6>&zsBd=-7KChz}e!bs`iPW8X;pV;@&9- z<_cj4$XiZA<;IIcCf)kv)LbJi+q2Mr`=~D!hNowiP;2ssiNk;R7y%0Ni9=2z-TcBT zPXRwHTm-6wJ0(K-ri6P;!;C209VIZ$&%lzZFEAgy$-`R9WIgmd} zER+$=4FR+>0(@om5gMU{#ojU_D*39*T@+;tIRONE^EltqN85JypWUJvEE0JDQlQZf z`h;L((%kdElz&ct2(CPv&B0bOmKJmcaR1a6RBxqr!xUAb2+lh7kfK(+zKk|0ud0AA zItqn?U8-^c>UBR^&VBB7OLDxuKzx5jx|P`m<%21W+@lh85aKGymx+v0bDx+0($$Qc zyS5e6FN9!Q=ynlFI@oGY3|EUI^P-zks{eUB6s9?~%N=#bcm;r)GL+;}4?;~FlL2iO z0JtzdfNLTjjgUv!f=S0unN8%NhLBa74}@YP;F7*%B$mP zEL8D_Yf_Sof_?Co5NS-|C8EP0sI8VRV_#L8$s2Gn0Lv78*^b+%g10YDq)NDZU>5OSNvdtX0vpfmEzt%+xGD^|?W{ZJOOZ z>G$cVTvyTeg1H}ztHK+rK277&bMwZ^uKCD&nN=m9APMrS8nC(tWCqINDV$=fOrc=p?d|ntOv-A< zFKV{|%db=#eO9Sp4df2cfFwW73!`#vj5s|sJ60Kk)5fz0afTaFfhm@j)3aR zwu!fEk-;QA_>oQ7+d;Gp{jz5PCuHID$&C$oykkRY? zlECyc9$PInM(6Ly&3EK*GlrJcTGC$f^uP?hpA4%Y2W_JMRo^}Ha6eT|yAQ?2U$Q(5 zU9_PWXcbRi`z$&u9@(oWTAbeVJI!}w?PGn_JFdFTF7y-JXK|!G&Y4vU8Ejxhoj{PF zHA{X!pNu5RtJ6(ULe0n0O}oWE(7BitR_05nV zn3NW#X|$W-BdG+55!o?mGa^>f>&CL8AU_WQh+)swJInAqY>&jbvJ!yNo>1{$N3x(ag*eB6+y0Q)ne`2b@;+oQ)Eze>yGWxKbXX!-< z^7@vatk4q0O^UP%vrDGW2U}Uk+wJdM&o|a)Wh=ovGW(ScA*Y);z6~tKv)2K$D7V(x z74yvwg&vj7le}uWhqTfbVo{!ViJt0B;pe(lrKuWrh2L2j*G6xnqr37>uHzV+rGq|k zSvAhpx*`nvZ-{8israfYf|9i$n=Y;%n#8K zvJ{Ts$X?H>1BDDRwoXx^Gis_Tbg4;o`M!h#cPOTGyrM+Ld;k1OhO-HK9yo=25E0>2IT&SoPGt!rmE{ee{etBD4O}spoeVt z)5au-krN8Y(*?B>uYG)MxmfIK<-HwWf<2(MMg8ASvXa0<=hJr$Pp5)i?6_au#f<#^Y z1FB{yR9=H$`wtDp;qkm?78qx7c8QprYoA0#XMBKz9o<2Oj0$5vJ24EL*zoK$4 zGb9W-DBiz(KUN=l16p82sP7;Q2DQ z>8&kb~-K3Ufns?F(l33RvYB zamT+UQvti2^)|txq&2pt09q!yY{)yep>Ko;J6uX z!drMybImX*53DMhS7_rxT|xUbVJ0WSN^B;ZP#}@kqD$PI*@L<#N{s{o(oe2HS9~|HlJhT0 z=WfDCn1?W&z&k9h4!DV(dP3Iju2Sb1TbnJ9tL4Jcb*ik?gdL@afG<755(h`4q2bV1 zfc)c+W!wWh-XY$P6`nqp=mafi-5J-4>dM-VVU{FK8j%TT+|j7H*e9bWg2M7}gWimM zU%jUgW^cstn6NTEnx%Q~dw-`C+tZ)pr)Bu8I=B%d2&thQe=w7?&E^@^OvG&QvsJ3l z`eP9wpP5j4b;PtAA@#n|YL9VF>S3Y)zgeFLBWudkt*K_W`SF{&oo~65j@_=VgEbOF zW(1SW?S+I6t+{QF3!`Jz+HNjKR?&GWcu-L}iq$vjc}%!ynM}87q2hB^MaqQLjLR#sK5f0M=Z8m`<=LTt|hXom#BMF6Xwf$P9PbD}bec zu(uZTQ`bAFc-1qFV@G?HgP-pj$@*fA0=p4|3I|QRxk}P!IW&BNoQhS6NIGc z?CtubaDW$nKBmy;z>YPKeCX!Mv%e*LVg(Ry883-m(MBc+1v(p zT~lFemv0J8!jcdLO5e@lk;roIF<4r6>xA1>hi>q)gD1z^V#9x5B$6WWw45U z1t{SxsYi}q6=x7_eXyB!!R%@A<6zy%($@hf$Fvm75&QQfoxxwv6H8RYYSE)TjU2aO z-w5U9aX+@?%F?5s%AHi!=0Z_ui?cwTVGo9*R9}gZkhy+gs6O0C;Tw@HPBZml2C)T>UZf@7ypd? z!*g*-n;`VFR~qN)uEOHrthVB5MhclHsuJxz{T7%z-bqO@kt?{}0O)*gs)yoj8(Mqq zvGeouiEO=md!a(?+{M0(YGh^zr4UNhqGsiu!E-mGET;n?&cLmnp3N@vY7@dr#SF<9 z#Yp2NbC|MqmLih~PvPP=C!-gkhvz0N(}mBr^eV~yP>2i6f-Nt%__&MI(m@Q#v2x6C z))*Ye`!?T}&fh1>Mh>6-iJ5iRPqt^BGM+LmU8zrcO1kO=hxfxhrLCRG=wHeXXZ;`5 z_NE&Nt`$5b4sx)Z>W0?FydMzRR0|68QyNrhWt0h*n zg(e@wXfV+3vSfM_9UWVB1E0<%Y1g@A=i{jRF@elMa_#u6ad5**)*E%Q`0t&>iJ(&2 zac0R$LX&2QwXkAm^v+IzT*5WK0M*Z~XgD*|eH(B+uii8~; zzMW3bU5~}zuYeBpj|oIZMzSRC>CLnpir@GG1Xi7aMFz)}#1t)yc-L$6#}*FC=ppA= zTjsI)aM2aBC@InTM*F`SyH^o+(se}?Fexh%kyzwpI#QpRF&VmukWj;}%5 zKkQBq;&we1$}=a5;|%=T*a1;_1%vc)HKQ8Uz2RqzyG_4f6vuPG&`CQ4ic9xIpXF9E zJ2xNlz4iVLwTSnvEjc0uDSY?dP&>yb`88@cOC8NgB{RrCU}h1wd|GZ9CT5A#P|}F% zk65vqA_$}s7{GBIw4>*E(Nb=22`NX~t{l|_maiiySz;@b?oyBAk8V*EH$Aixaj*aN z%)7`{EVlq_L7mJS99Bn7F1$j$PnJDp&-p#p~^H+q_qUc$O*;P zEvNZXnf@m1PFIY-1k>>!iqfu8rvsL z&nZzBbhkXPu9NNkZ``;8+WlI+{i^Z2Q50qnB1bOZ&fy~w6cTF&~VYzyWX(*N3IF(`)3p52M^lXi<|g(d|R`0q%o244q{2c0pxwM1XI5^?PX@PQ<E$A?PQjl!&xiLOiYf(vQFwn~>oglW4HW8f;_LHtqYSI=6@6e#A9nvT znu@f!c^}BJG+YT(+$Q-51c9N)dY%{~B&evyp1?@ zY6U#sz38@rdM57m;8<|+GT5~vI@3asS5N5pn8psj9L{aj58&0652rFCC+2ub*j0|v zIKN1yq(EhR<|#IxJgT_RoCIoMax;`_i=blKEkbtfM%8xwRJjx|Tk$aAa~pNvHb;J- z6xZ$db*^6C?~)gn$puVRoyX~-{h4;Z6Y{@3yV?xdizW4IfCO$5A#jgV141)2^nPR9 zQX!&U+|rc%1k;SaD3Wxtk`^pvwr1lH`XOdLv5wrqZ+la!4HJgH0xpCJrzDF$Nm&=L zW})b_Vnx*y`;fPUAv1;W6Tu06I3A%iiK}NXCS$X=dn#moqDtJPKrWg`H6VHGxBDT9 zRQj-dg^KwD@>$YUROMCDzQdDJz8lhD)M(wxSHh+go zE~SOF((cU~TfhyhwXa+o%#)QE~4>L63KY#xYaXn_arvlW3h@zR*=h_n z9WfV1u+*xPAIEegRRNLX{6t6A-n=!G(kpz_2!@J&OGP%_9{xE6azuqRvBDynnSG=tzkJf z$jCzBGtb@9B}4%eJov0+J5#nLgRzB!Mh*9vM|Wne9gjLcl$5TQlhrbPOclMT?k>HKn|kXfHI6Z4pLjJk? zspO?Gx-WRi!-O#2pigg0)*M$XYF3bIukSgJG6>x;Kv0l zXnaj_iJWr)8yz3KCzGw%Dz3zq;;(J257HOzURJF z`r<+ruCweGlODEt1Hmc+*yPwpYG;{RsEuE+JA@d1*M@8tsT{@4G{S_4Fe2b8>q?I3 zFI{MIVCx6I5tWjQP}B5R0A(c}mbPS9u&)v_h!p_ZqF|SU#|nHj5prDpT(ljzAA#2k zGTRl3rx3p*A~%=E&F*Jc27y?u9Q$}fkIlr00DJx(r;%SXEyRv%p})Iu7DGy6`k(xU z-9-NG?UrO6m?D#q?~O#@O%EM8F;BJCfK^D(Vm3ot*IehOJqY`GO?WS(hv|#rrsNWE z+pqQ^kdfl-*x)2`-6>X9oK3co>)2nbb}MZW48bpEwfQ4VF$3if?qlfeWpi?ru8E1< zK6;(%RKymb_rLUh+pZ%O5HE!N)Tr(vgUg`UL%->%CKU1+cDvI&Pju^757OGK``mD7 z&%4|b=o0*L_?5ZeO?(%b`I}<;V?L=g2Ovhxa&!F2@)lNRyLUu|_!FKiwnwq;$tZsz zs<^NO!nJWL0~$5J4Dku}+dzqqnKFk&iyHU=llB^S3mR}J%hO%PEDI%TQ;6gRRV3) z`#)0a)V=&`x}j&i3gz8(E9R+c9hgMURX{Z~cIVG6dF=8cBSMGX!laOGwT7Po zvlKzb(tX;8KI9HsQRYme+CMPjB=@thyb6rA>(Azi>!fXa)klp+b@!v86F2R5kxm>g zJ>lNbXUaRc!>#t*`;`yn9)DxL6Y6!Yulr@4^O6{{bV}M(3x5_ zv~uRR=I~V2*;{=sUd6>ZQyOh(|5P4o_7219Kq|WqhH50wnvui7VPS8fDJN-M=xDMh zhI^Fwg?pf?12DkCPi!SUA3|VMq}@F~>&M$gKL15?$S#yc&7?|%0HtD)CL?FkEL9+c zSEeFL&39O!=yQSm(kVpUyvf>lmlJTLXw>-)XlmrS&riEY-*AQN#5C{FK%9QH6g#3j zOeGr>j47yi`qb*i?Uc}D0$K28Bwf30))Zo9DyO6EWpdIUi8hIkDm%O6D zfR|g8sH90MxmK3S*}ggsGV&Q9u=Nl~NxjA?I9)cnV!|d$1ojl6ip=|Hmd|l@?>tGW zq+k0c9cXBVs*-R$^dKhU5zTtLp1VJG5DbZU-V&BNS^l0s8#7y|P8U$B{l2&VXuiIn zeIww8LO)uD6N7esLnDhqOSOu%b?C%@n3w5g+oH@G!^p5cf18wZCY7z7;)}*s^ibIC zKU1mG;8%iE+lQ@#C|q7H&o9=F89MXL_ptnF-sbuasDWdG7SET6_%Y}? z%w3URj+2qBlZF*_Ge+XbkCtfpa}Cpc@k_lDwlj>MoL^5A|I8dV$46`FZgrvh?~34_#^_^a+0it8 zzjb18L|ZIoYl~n5CW|+#SEMBrSwn0!gnvbrXoj4MvArgfa>PM+J(QD57u>*@1bG5V z`Z#7_{%Prm9hYWNM&l9k@4E&Y5A#U|5`8hhJ>hTKv1OfzbtB#Buo$|r`yHg=+d#hT zG#_Q!h%1qoZi$O@)6qs>{CQ~MDwhI7R!y%vV`7X27RrfP1XVfED5B0X3%?T#TBm2t zw_;S_58~@bTwySl2Ut!fbB9{GHU_!=a&L;FVY<0{1yp@?hL4pZ1SjAZV|PHwpQ+eG zdWzi$seUtlnfz` z1N+3nR=FBDQv2^hnD3gvITsLO%mkL-l${c=Yp;ycZFZ&aw4VLfi zf3(MHklxBfa3cnB8m}6ME01qcTPyLh)f&E5n09gGRg8{X+SvPZ-S+>CY3|x)N=u;TY(3Hx* zA$mtd4USugyT-V}P6bsl@9o0*ycM-t7J6Co02x_meEcmqo%^wnhl5oW4i`N1Y5rEII1(J7W4lT|qb1Yq8aXRm*IM6h>$E9Fe#c@gt+dmz zOLv;G6T$kkqo`%4I~}~A8an|2mP$__qIB5uudvlL$^ljs+)8ke-u_A!(?nan&L! z{_>?wO5G6Y?i;Ie(w=Q8IMt8(Lh|m}FW8Pw)zvxyH^!?VAHTW`s#mBQtY8V;y~4sYp{}b zMlsJxG(2=YhBB**_Yn~h?@{>G94f^aJ*vQW`Pe;36?#=Khc#Dk2ycM#uh%{sb4fD; zow=AE+_{VK-~b~u_G;>u;^ED4KEBeJ~k%UtFdG8_G_{&=#h(z2{W9Tc*0@uLe2uH+FnX z9K0RdB(e(E2BW8(s=F*#%A-1Lk--`j29ljX9&5qrXTLUQ=T<%KsZjhAss{g|^(3d+ zvXmWsYWz`M7WqsK2}~0;VvB1FfI#D9L~2Gfg2MU8ME~w)1;)%|J^|RD;7cuVRg>jZ z%rKPJh!pEdUBt%jng*6=`_p_nKX$I`sAv`C;X*66#P$#p+t-U2)SRDswW|@`LTCF= zTS}>-nV4lMU3D~blf72I`KZV&FXn)6B*0f>zr=6Qvo^^ttvTa4wik2V5@&5c>q4}t z4w=NtxRwlUbh-3howdv87X`7umgJaUtmp{cF0eUFOhjy$ls+-)x2mN933E7@*nIr^ zew$pR6@F*oxoJIhYr0F6LOo+a-yQuMvkTuWh01t}tz=ULYwd)Yq9+@4<{?_OuHGav*8g6J0yfwtWes* z>{JQ_ghmYnQhlLehcgc(v^xz-A&+|sD)q(XccoUTM{jE-#hMC8>kN@ zI2_!;VF}b?;uYY*ZQxg^kAirLkTHu-u3?yI zhR#bCYq{QjhLrSV$?}5pa(lYi1ZDZ^%~5jjz>6CGbi@6Koeix;XIP>f*~Ltwc~7FB z1m*a~*$Uo*+N8wSIzISF;!%FUxyUj(uSwDUE5IfY4qRjlqk}&1Go{tL{4m}h?(R5e z#!1DPFf}t;nX?v!(1F%z=?|PulvpM5+6YDR`zX5ARbi3zPwK<#VA#^1Xz7uhZ&cd7 zBP(7gdUZ@F(e6=DI0!fX6+lr8O+}4k7|ft?=lr9jDbY)UYHcgQOy?@dDN>vph4iK1 zZNJX~;_YqBn7kNkrOW!|7|rL`k?qH=s5k1`FvEJQmLv7zuP`ccxa6D;J+p?ylTB9X zmywGImboR`4HC|{p%BpL?H+Z9(A&3VL6U+}1y!vcj(MU=J)N~S z@gOBusJh;f=(`A+NWBAJmDCTWg6GL|#8(3#Im_+Xx5S@x#D;#kqAO{;ab7a(hFb83 zzLb6Q*)DISOEnI-?t+3gOU!G1ta0?6uP_PqfY>zVu4er% zimVX*v{;3sOGlR#1^tU>^ApIE@qDFF{ z{qI=yOoTeZVR^H0e}8lo8YFRq>U?DB;zjtpaK?191$9qm7r>}Ijm^ou=-(Vvj~z>O zM8-{%5!`3~!DmOHmxN?b==OaS216SQRw8*V^<4MPFPL#BJPh&*P>2^loIFrVOT}@% zFGRd6l9SB767FZ_I&wVR&XVzuSM?s|2(IMCn;l;_m>74AM3R9^aiT${pk zn^S`~2S@6BFL#IWG)|uZQkowNN}Vaj*=6ef9N)kPz|kJG9npah4|*5{#3GO~2a$_b zX=z;dyY1n`F}1sR+DQ-jToPHb`Wv0Osh6V8W~>+pWQ7BM1w|&a27OimtEECANw5#P zf3w0C^o8Ub@trmF7X4+DpTA>H*;-l{QHo%U=TN4p7n-*MItMb)a^tP8Z*FdzipIx;Pz}yM-a?S4 zVkZ?FR4F7@ZjID@l90_93+xm!Wne6Eoe)$(4-w{K+fl*MIyAIwO^n%bv${&`4HwW9 z8Y`xNR3OijFgtCYC1*nm4ePc!{BO_X`$kjx4MY2Bz|w3+rm39Gp{eH0Ls{SVRfu%6{x`3gI5M z3})Oq{6!w)uBgOPhO<1*4251F_&dmwwFKZQfp*do?DmTMTKfk}6pYAp} z{?Uf*$e%!B*CAK%1~(4tpvh=5_kb6#OFSGkKa%Zspyb+N`SvAP(d8q$fCjw0Dwd4Z z8s^kB!LU4h+GAjFrk=ExVHw{TDpC1YV92Q|F+jfU7pc}Ek>F`2f`d;6^TqMy!&1hYr_7Sn7EQ4kR+-x*isYC1_y#xC>O=Ug;QQOi zEX{?kqVex-;7sa7o;0diZJaXK;_}hW;kWJYv0dluQ`lDkeiH<2$n3Gs25W0`La?p? zy3RUt>v{j4B(`Ob(u>@d_1b%e?CmT=Wc;LJ`e&)FIunaen4g%KEJ0V^*CTNJLY77P zQ76atj8bm4MJ+V0hP^9q`><;WDd9Bid_pa*zr@Ez$a!TAyWb9Jf{8u(vGoMa&BZ2_ z9L6U;_i*%w4FKX(lY+vPx`4GfgbqZRRtvwRit~PIOXG1;frd-G&Z!VtZl^h(QT`eu z>Zj2;NzdGy_18%NV@r|GZ}!dyxac*8g-aTuPn&{rZ|sb>*gG&ugG4E{c!KoOQ@b1R zo=r%es?n%Y#L&XqaNam{H8M8=Hu^_>PuFMnnCi)Pl+_Xiz7+=faw5{`@nUogLLr#= zm%zt>r=y}}bJfnv=Yr}+_-HG#&MxZNj8)8DiOx(uT{AHgJuFTck)G4V{ehOUM#(*t-8n7zc0SDYZNMs=-`u4`JraEk>7pzt*Ww!`ORbD zsk*8}sQF*CszUNFCkWowZ^d+_YtNt5rCefNv=)qi$|#6`9mgqkC~3gn5^x)5WBcv1 zz}=xZyy;@c#%%lRZhFzQdVZ08SylMYWbz5AGCK1l{s~U@vX)2Joy7ofFF#)2E zfo-tR!fFk|NI8ruO%L;rFrT4xIu;%djdJwz6uzU0mJW|n6^t~KHA(td zb1fMaM^sS1(!_?+!ZquP3jGa*@gjJ)sK~Ad!#U1DzmA&lD<5n@pvpR7$o7h~CyP+C zw`EZ7%k_pja^Jg8rz~j_EM&TXAu^|P{FXiekAE<};J>E3y zES3+1eP_-yAP_Nwz_-Xhcn9>1||{jm#1f7P@L`b$je)8-;{N9Eq8Du4?IyQ2(`j!{W=L7^#TN?RV4p9UmQq#(N3P z6cwQFhIp~w!(Ac3A&J}{?{(Gl6_)aYQ1Yk{jntiw(FTU8tvkEsPTm zPi+Wl*Csqa`jnsJ2mor1@)H>;8PaNz50ox*ziw8cW<+g_O)Co)r}Sc9jx7R#FS8mt zypl}~8Z4Nz=aXrQ<*f!mJ27W#Ow2l~LxDo@@G0?iA*j`m{!v`_>ybx{vL|8QQyhmj z`xIEc?mddzLSoZo+txfw=AkKz$ob&6Csver(gj-D#x zK9zCCOu+u;(-_pN@b0Ymn`}#;zSlbUjc_t$)cWQe2DKbOfroiHqAZC=9Q|FZUdczC zFij1z;!iMi+mc2mV4katBab1}H$kojYh})3>WnRW@ z+CauiCkM4B$*45M>urBWIPxdAVHY?~R*NI_y*(ZIcHYo*d-ey5eT7G{^xg;;SVk@+ zO*hG+tc75KP*gxPI(RxYW`}>J*MIw-^t&acX{*>~dT*mLjeX|sFgowYqn5D&hx+Y- z=**Lkh`+$u9jgV_PTg#6#*Fw&Lq&P1LXS5_xqiLB)jLC*Y!{&ap@!~}RMZhL zm_R&`MGBfdprqSvp(HU&+!v=vaoc z7yDzG$WM+TYeZZyHbm8W5g7u57E-dMsZr_HXE=!{oX@aA3jH~9xp(s`4^IU=L~R6n zzY7B{{(0K`!;WB0TMU4n6kPWTFlpU@Eg9qMy@qIw_w}Prs#lGAMKg;r+U zng)WXs_WvfCgjBN$nU@;IjTME43U8l8Lykot8kR*V^qblwiO%_@V2a?4YA%bUZWYS z8y;u;mFpj2)a*~P@%3%RxOT?UYH@=fk&eYuq)(;!1I$UidswtONtYGC>P*){6%&^ppU zn#1Y(?dTjlb?@8h(TkhM8$S&zd1;M@c&USuj5V`&_&H-faa8D?;uBbypoILVr!T*c zPg9BCHN5ddI-pTPAGxe*Ca~J~2BQ9LSbWzIeM924qD{)vd0eh{#`-?uVzx#P8E96K z*x~qS&75NB8v`_`x|Y12 zqq$S2l9rT^?7;Uq<#si0BAe40g` zI^GY|tQws#HScOI88di7aMo?VauYD68)_O>mEs$M66yPyBs3E`{cLqUDJbR73Ts2` z@wV5Mpp?9l<=>@zOeYAZr#q!{3nK$p!c-JzV1>p>5>q&Ouuqu$eR~sEy~>)@G8UkJ zE)F{XPGyhOhY-9630EIw$zmY#CEJ(gY36q2B{Kdm$4mt+Y zN)8a37Uun3FzlTmXq#-Z5$);5BBkc~ZP82TG-Z&hZ#z^(rAZPp1Iv~z&;4B(U^C#H zkG8-yA1)}s=O@hSaaY1x zjt#4yO7ob0m4!ZG%Pao?<|&5e)}vf`!EFj&TytL(LCeRzjg@hRN`j=+_lNd`ir!2b zQsY-62Hz}gTX1Qc&L;pdX2wsqQzr#SW67i}oN{TQP94w=>{rKmovLnUi8U_4;(hFl z_@ay=d)r2@QRY#g2^uOnFl8?Oy z4uPtugG5v;Q;@)AnPYO_tC5g+{v9$B#fgO8YE=~b?f$U+$P zEmwCWs>Li)@Wn|95#A? zEl}}^Bl8JC^~hx;{{Yq17dHAE?kf40_@lCEvgF-9OaxF+TMi#o4UI%H?*N2!3~|ZN zEr!U!I2q}YycV+af~>Scms?&BDN%%6fLGDNfJRu72H&T@LmzCOHwZatg@i1;c%&Uf zh{_8CoB{HT9&*R}bb_%l$!+(-kP+cR9|A&HoMi#_Ip-&V&s!wJgQZiZ7Dg_LxoRjb zG@%QzQHD7@a#(t~9>5R#^hQnG(A2rZNtt8Ps7Z_!T;cNQ>)4NOI_6rZ#FnQ4G+#t!t7O# z;}%3Hh^-uX%%?l0-M}r5H(>SWW;F3Ez1ZEMQ!y3Q22_+Wvne@D5ylsQbMMawBOl0g z+t!Dt9x&_GlJ>=K2TM*9YbqAt02^*!0E_|u0Ph_$S*=7_DnqoE;5@l|AYYTUm5Ksc z8`HD}$@yC#dxO@<;<%Y)q>Bz&Z*+xwYJ!@`*%U99j;aqWf?pgq;5yk04SrbN!QM7Q z=15J|QB5YsjWg( znQ|om0PYq!7yyiYFgn^aUOX38P_FGwj-vbATO=O}MYhC!EaGQYhM!^SSM ztJONNQidj)nZ&U`gJnE4@4`dnk?4jf5;)KgaTf2@(Jw^w@RN~pWkoW3x0?Ph#v;Cx z>JGf)a`NK4rq?V}qvb313|z0_FM zR-;T%T@jgflIn=vHExesYA(dcgh$yHL04+ib}A*Pp=x%CA|g3d2;zn^306fo2hykM zk5^RafVLSMXhL1T4=i*hB8o^Y;v?DB5P!Zs(W0gmQJKp@5Rq{Nft0c!*hUY?OE3f2 z9+)=SPRt6osTY(pnwkk#giL;!#pT_!R|c!@C&c_z`_eK_?0 z0L|3ipG71#(Dfj$uW!rch($`OB996#@SI&M-5=5KC$b`a_Ul=xu8U6w_k+(4WCsD( zIX5z&a=?<`%XZ$ZX(@JOSx23)oxcSY&0cBerXF41Cfa3?^sYbN7J6zFv1$EXsHas! zb-i0Oy{2%)kt3tjTs9Wq4<YFIQ~eKk5B?qAe(lF)vb|P`XT- zG(31_yh%5_sv3|tHAkKnn_gG(`l2{iQOJ@rC@UMWM{E-swsLU8+as$rmqk*_nuaN5C#Y{td$8zC`Jcht-KK(YR%mlQX@0HXWMTeA% zbCXp{drgp&jyM*>PnV2b^i;Ca($G*i$HCiaDA~qxUJ7X9&IuC+OovEDx6sWPthAd*r~%J<;Vjn2~`=u=aMi<&-rxG)Z#1Rkn9sr#tdVRY86&& zWpYkADggmcu^bQZ>kac%@r|HlPT32Qw+C?KkO>0>{qj20*CMxv@{d5xh&{(6lEnM- zx1Xj-82-HtUZeQ`0BC#)n2oq4qnU|ZoT`OhR|nOD!)3nU4wPx_)>?YMf7J*~-tBm5 z{C@Z%y++>$a9jYbODekq>I#rH7!&My>13KCPy`;hZi#GuK5uL&EoJ4UqXJTqECmE) zfCCBU$>-_EOb~%br4>w9Y;v%aG%eH&r zw>v@II-!<4sojiY2kw5Gf2TupPbl8dO0nBY|~-`pR9*$S`xs1P~ke z;QR7_&#z{SrAsWMWdX5ifRNC!EH(uP7~>cu`<>i@{{Y8I3yKSIELIx&wri|Vqp6_a zvqmyG-GPvB*!uI+gqU1)5|KiKEWm)GHj4#9*}hqbPbh5#m?0&y2c!&eGw=R=Z|h{7 zK(4UfYE`U7LA1E66;xW}lWceds09_HYPdcP1rKFb7#bwt~3rLtGJe{|- zzLxEtrPZ|u{r>=5SIKRHyp;hoj+Ky0Uky6r<*K|iahKyOM#I#-RvT$HwF>mDHM05| zXo`^eo^fm|_EIFY069u*#Os)ktSztQ1k}G$muyxadZ(7-Rdc$?R84c5MupogB0(&S zv7~B0`)d?@e?G3wix8Fxd11K=DXQGE5!HM9N-1r;Q+cvBYbjA8lHNRZT8N& zwX|ZRGcYpq@~ATmowV-@n+|zF(Hp9dNg^ypeHiU=>`i0x!`E^`b2c0V>QqiU;P=y| zGWLvH7QgZH+uQxEMw``?^wbGLieRfUQ`A#=aVzE0=TQuyr&9_!*u*W+Z;7N4LBL(UCq6zDN6PgC(uPt|REXfR^ z-w@R`Os-gxspQ5986*M5I+)VE9PK(E(Cquf;IABq0r=f?#7eE{BV_O=U)pI_fy6CY z=C|_VIdw#5pTtgyy=oe5FK0J8$!g^>CBkSv9@`}B82Kn=^fBd_$(-jtI(j@DS%ozsz3|SQ}?aNVL;SWZgqY={7-Wm}U zRPj$y9HVhrB#J$X@DO-KmPpWX>ODi|9Yr=}i1H#_aZ%&;;$HKuteCDyJabMP7Zhb;tnIa{Sjn%>of95TKi?b|7BNeuyN>1x6aLDn?R`-Qwj{_o}GSuqs zgOw$Iy;!d{C$i2N^tLT1{bj55MP|tpdqygRVsCE|ecXCKN((PDLsdb0fvTDR0A^~M z--b{EIf9}HXJAp7;uV-MC+pI(U~Ii2>NbdzQo)k@M2LS#lGwwdv+YzFef{Cfx@0!z zi6R#i@}YBv5_w{V;Vfmhvj$aAN%TvV$sl@DmB-Vm;0ctlk`6fb{2~No49yXff=Jl# z0Zmx1d44|5nBcN35KHDOdZQ4qKQwYk+_K5W;1O5&4wWDyCe%xSu3s2k1Vy=%al|#Z zNqK)A*f@p|mTSBli+SlBi1+~rr`p5}0mvn?I%H-`J0|B!GDIu(q3p9Jl)2$-Q8$Ca z+H{X(HTIe~Dq)feibrTCl4O=dLRK;us4l@zrAb^7^&Lwl-*uuFTX8dO6HWN9ZwRmC zrRCk;H8vkc;*uHp2(;?+Adz-Mz2WD#Re$)QYOJ}!W3^iAOq6cm5pbwfc8J7Fe2e;+ zdl9#wTU)ep=SbYkxs=?%>O}4jZeQ9Yy9ctf61!h254OIeC|QB3esyi#T)IXq&RRyA zLe4V#w`BbWNGcE0=sK!Yi4cC1E)mme!uQtJVBB22M>Q3Cpvm9Sjo9P`OLdev1` zZoK0-C}}QmIY#yhqyvMv;~XlFN&0(^wRs2|B26o3-K0Y>MdVN>7{r0hctV&`i z+BnYKHs(A7jSN9R7URIL{onKpL460$t`wcq{4-890K7JYdiEV)}T-(g4XH zrwi;4A8-9VYW%>XM7Q7&vobC=;Fk?BJ~|jn#!!&Knpoazmr+YT#0N@f%;0H;eKDqS>pG0TPH#?{kLIOQrt&WZZtP{%4j+Bhwqlx0mF43CB3E!v{pdSC#F8c9G>-!6V- zBX$V(_Z$w1?*p)}3Vj{BZS_E=p@KyWqE9_JknY54K;5-LIAPCCjlxqTQOG`QVI@Hm zOLBn;6*@rDvnj!N!sUT!2;<-1820NTYKfAM555z!D%oKpeU7?&g}TLVrJd_8^ThR*qm;(7)t7KVoW~~ESL*H4SLd6PZejD%Qt6O_>dd>TZ{k>N_1=7G><%u>CZiGP zAMRa0Y8;;DOHJ@}`b$j-64_$23nc>bs`Qj-emJJx>?DDa$Fi$5Jt&m9VO<+#v>i>ktkxOp@o5p zo{eeYal^YAcf5?i^6e(}Zb{2^X30Kt4mkUoN#n_ViH?!`Bc&pws>>X>vo70e%Ppp! z@fml%T~MsJP^g?UMln%A7n~X(n`U}Ph0&CZ7vWA%zd~i^RYaF1yKa|BcSQ0?D>*Ll zD`e>1CYuo@$0QvXi2Z+#$ceW)C8eIIZCuAIQ*IG}!Q-27;E$VcR{XQ7;I_FhEZ0|v z#W_7JEIjZasczR4;qCIlj-7?uP}yr4j8M~Et#edPaElx;RYm3u@s?oN0DI@A)dEDP z&NYri>rSALYN-mtigQF$@-FnNFSJTsI#81@wHIGmrka+9-D#$$*$v0`dd3i8){=Q4 z*koh!`IR%S7wS0cjGCTT9+-K;`bO04=DJ^p)FU0iH7E|rwk+5I=D>&L)79@Oa)$4^ zmw4)~)zd&cxaF^`wcBaYP@uNysNuI$qQ$!beApWwPI&4;v$Di2x4pTLf;eS<``WSl zq90wDzVO#biC~G$R9dhOn2D8jNky;icR4pACD=tdE#<7jSlTftaluBBxd(yOpu>C0 z6x^^bWxBYJRg;~*=&WZEW$Q97s4HQ;<8tPtJTZiw%C%`Px}u(_aXn2vWSa?MOoCOC zG6?1}I6uXDB`(Q7PoY>^FX7rD}7EZL5g#3aKX&G~<>1(uT72`9@mW zLaQO8c%zRe02zLKwsGz4^gT+XS2PwL6~{4EU$YT_9mvJ zlHrS`eLKyA4Z@UAOe&}Y9Ejy$t0Z{Gt~J}zwI_&_UP4{jU_S5?E=l3?lmmX2p)D{- zDC5#1Wx#S5fqB~8hzn8_J>DB>>NO4K(-d*fC1sAP3gaq39IgoEvJbK2 z{JM@St>39FWQ*RxYwr^)_&`}fcV9sT zHvUtMxHw`amvLNU1FF@Dj9VLPiOG%zLyv5Kd?5oT8EkXqpQ*qn2cAbt8|q?$oUa&< zandq6lD^B30*|R-`i}q(nn$2Cio<`?k}wsx^$-CV89C^JEx=Q<(dY{Cm5gPBY+^~< z^9-IaMsvr%UXMU^8zmEw=_Ayb;0?azkJui1SrIg<3}|*iC66y8QL&L<=E!f9V6Ipd z=iAtIv@`A1cmq7@3Y0%V=-t6$Gwu(mw{f3*9=#ZY8%+eaO3Eu$8p%^#TT+QkgK$Gr zP(q>%d*B{P9WIE1k+LG1**L5_nya@}`dd^b*5g$`mi;*NvCgQwsxDXIM+`L9`emu@!^2Q%aNIVmsxLR3d68_WdME>xA zxGa_Q+JfZ_5^kmx_PQE%BqXg@x_3K>20)Oaw-~{hw{$VTp*coL!Ly1+YCL!+PY-IZ z?843&IyswnVa*eX`ehvAqX;_ z{PlHgcsV~kC#N}iRJellk$H@KqZMY@EWDhFJfe-h;T6nRhzFHD_=OU)$x{l+34)#` zriM7C!^a#ul90p(cdadY1HptF1ILocL z%)+nIqKPOUB_9zVWLUL-R6wVkoYE6&$lnFNu^m}?SJ~Z&Tc~UeG%s|LXyJl8jQ)5a znPn=ZgBlEhlIzQ3tDc!rM#yDQRmVxO$I2+aXr^k^$0i*q$4FV-IBG-QAwly00M(`u z_L@4KNq({E+gdU;#_dH;h1dt!YET(vVZts(bN>Je=c6-EHBFG7s7)S7!$w}rvFT43 z11i(C3F#RLVaL`T1QG8Jtt;;PV?gr4uv@HE^$J4U;iju-m;2_X(iUGo(ho98E$*V) zzd(PVTq*^e)b{MSJVuG}nR6f18OL}VMd}g_;+Zxfkgo#z7P7b2c8FQ5gEbD2mSr%> zH7(prD>mg>s;ZhwxsZ-nZf4uhC#yn`sE*YU3nXn@wx1~2Vza7Ct8GdfzecVhplv zkQDy_tf?00nE@g#S!Kj+_5RE@cZOpcMY2hLB0#bEd~hE!fPNFCaI|ExD;e^*=^h9E9_ zS+TPug1HsRe)wejh_emm=!lXEWva)A%N=eI#+HS>TrN#OYUh$WWxXOTHF%HGWhXg? z0fEjibJmi?MLJS4(!2CzZsUr)8^33~utso2DUMbrXT47&-Al3wkv---dW8lPRMj=o zGWMr`VOUv;#C@Er&IDCq@ zt6?!!Du9wGjJ8&z^&DqAdQ_-SH;V5Jl$OdEY9DEPu*yr)N<3r}a;U(z0%&*V<{z0M z+_CEW4xk7r>SIc=3K=P-9$bOs8;%r{xqVzPC)=S;OT5VvINp(7abVLcQdK5fHXcmO zP^?AA?D?TiszFl7SO(#fds$6dqVuqV_ z4ZI@y2z7iM9Es&15PAOqKB<;TQK7dbi&9|_+;Eqi5B-@51xoo~XDnHc2=xGSk(~9u zW}J%9j_5o;clLl1)3EabI?J^QRv$te*!}tIbuz}tT7^GUWg81~Tf%y(p;cWmoPf{A zxdd+78{0VOm@UDz=C)7A?u5BPJe4uF08rT*cIO8GdQ^L3->tzew_eCa!ZGE_3g);$ z6BJ>!20j-8pPT+-yixvRFinu{~T;3TCb@-hfP8Y&ZnM2LzmbG1KK?yRMjQ zhG@LtMJzQJ10qrniFm?{B7ntC34d-s_v>MnY_hU+$G3;iJ`n46%0$xlnRRW>jMdZF zV>86gRcPV3v0+M;60?PN^EQBrNn$qi188bvN|xO+B2)88W`_4KY5iV3kp4xIc~$3b zGVJp{&via!?xc6_RrdE^aI@U6aoiT^sB7i9EhSX2FO@{$LRA_XbBZGQaG;&uTJAkn z@=b%UPJJRcD483gH@Wo^A$P6r!5Oy|N>s5n+jFE#NaM>adp>AFUoWE5rK(njWUijF zdb*h|9%C#JG20tO1c2je1=w70#apNHlAHPV^Bvyp1W-G~H_8w<23}Fu8*v;(MWBY z8{}K;TtZQ><&u444Ew_jb+q8k3erVe7%wRcPSGnFXJ(fi4{ULRj;26lY>_CI@WiYm z%?px6dguvE5Q!km%kfYy1Bmmo^?gv_{57IGa!;q~DeGXYskziU(+BbvvFVZ}iCK^r zkN~8RG0-A*ZDt9oi)7g{AcBRDMel#d>w>Kem^9n+gfk61N@PeRLMo$cCyp?I?mdQ* z#iQ-k+k9DVHOp7({kFpmY4tpJU)?Le^zum3!ix!oC+g0@qOk<|2 ztfNPk-)&My3T4{zf$p*NKhnn9N>es@=@}=Grs@c-f+1v}E7oiFcqC`hX28zRZ4(o7 zQsy$W)ZaQ*;6>a7RquC~?u$m%O;IhsQAbUWiKeo{NBN&Dmn!KRJS7(xqZgJTy*Tn5ftEuHULL1Kt{ZA9}Kj_QSlRCZ6|!v zmIU(BJvBvVp{~Oe-BT^Cr<@QD7z%~UAN@UA8xJ@6LRzslM5MDuWC~owcesw9mMg8g zlo>LSmLlCGx;7{5Qw1e2(u)58sdt=Qnd6nrPgf%@eJrL{c*1Qw0#6-YfP&wuq7n{B z3Hvy#QBM|SG>FQ$M5~R6x=W|;=Lz}>^I07+d2uBg`SR1BN%BOj5;91@U`m1S!(*Z| zEF%Wy1CYG9p(l;Mh6hT`B-%FH+Fh5hsAbfNmq~U)a<$%T>NIS^I&&wP8n*@KIZ%KS z2GjnX5nxa$V>!fut-Ja-W^x@s(%vC>}0h+cNSe`ahBS_B0a(4md z5DNb3A#suP9XV-|bXtMsOac6; zqD~SO{n*0b6M%m7R4@B=kmjar!1E{#me1hv|Dah zYt8QAO=qxJtrT?^JJs^@ahWNt_IpjbmNt^M;Wb05#~P_WR@xVLLeYtegu^m&jV#2= zi^&tEJbqvOQ&b(4Q6v?0vSkOPd&hFe5x0B)0BE0HC%h$9cpB}#l&A0Jv81H&Vcgqn zH{Cbk*GSY-T$i)jDC}m`z46qH`y^9RPQVSl#Mo8#Z;BxC>Ks3$D@j_w0+2Lqx>C_hHiO`~Fo!xZUAt>#^A;q{lC z-Wz(dQ`BYb5#f)PI-1(q#8q-lFgZs?IaKn_MixkNi-W->MmFx<(rD8{q|k~HcKN>I z)%xLb8Hd%EnQ*lt7ZDK=0@KFYf1Ej5Ke)FIH#`y4IG&aV2h5UYGgB!ed(z6ReAfsR zo=jwZmFOi(j?CzjjQtzmFITYr-*=oHrB+KZr+N!mSq_+$@d@O)muL#^qkX;yf|V})D#-S6^e6nEE1k5nR&T( z!G*@)vB>`b4*LNLSYyl^kJMxwu*X`XE! zKt5rC@WkWW=HsI*w%CUrh!*>fD~g#V)ndV|bka>pO5s?il1Ab3owG}v9D)u%)2bX_ zmv45{j$-AyV%&K?nNbtB`9ZYw@)g@6?HLg%sTR{NFOLa ze2$$mNxg2x+YOBg0ma7Hq!WW9`rp|47B5IBtID$gKp>Cs=$)3=?1p)d!W{nC=^Bkq zUt3jGIJN29EgaVi?cPT)(^Ffik))W(B9XO9hR@gcdTT#8l=&%%vmBMN&;!)r@&?1q zYD=Xd#Ir**^K6MGrPN(0iQZLTD8k=E>Iw~Q9p75XXtY~9U!&{f(_Oo_-D`G7tTnx0 z#XaWh2m==CXiC(yKuIh5BUTN+s=m4e(GRZ7IW=CW4rb5-{{V(%I+_yIsCsXtNU~Th zD=^&BIN-M1bc%Uk1nS#<_lnzwJ_D$sjqZiwq}?fW=9Z|c)w;IxbW0pprV9(*D`uO| zyWFVYW1Ci;p@_}B+<=k8kKxnJoTr0=MFpq zEi08udSLfqj|_=;lA!lmZ8#}(*&rUeS}16zp`zU_rpZecB_ND6bk#Kwszc{UO68)O zw8-cW%p0syl+s{dEiTLvF0Dj>tHC{rDI3oiwJzI0OJ-Z)k4Al>UO5(6#e4TMYC3z0 zQF-q(#sxFF4|yN+C0Nx*qy{^A{oXpgwrRPAmM7Fua$K?Ur@X%3WKx?}{JUGW-6h^$ z%1O+1d11VLA8^%@!EC1g0Cu7iC+$m%$du5*3laH2+XbAbI3G@=O;#nTBIMJ*Nd7iy zyJSSZZ)PzSdX+a=b(uy58*X5boO7nYozf!isQV%6x>z*kmA6c@Reomh?4oOD5R~2;#z7*CxzXqqp4g*?6N1WX*RDUV0(Lxt6j0% z3Hf<}rcve=T?GXkFz;i>v3gQ14T{*gX|!%;pgy!$$-J_}a_~j(V-|bdp2O(A#`bRQ zcC%Y(tyOX&TOu@}AZKd98ckCs2dY(w?fv3gs!tizhBJ>cVMM;fkv9_H_Mm4zzD?&Y-W-l(Qn#O|7+EwtCn|c66bJr}m9p&J^TB z@D#M+ar@2kuTGz+8*fY?=}8t__8n65vdAlOeDIMoLYmzq&^{){_X>+E9=E& z;;Q-GopU7!foSX+!s}*@j>d^)pjiMYig3(e4Ulp()z|3mS*c1Sj`rm3L6CJZ(n=~_ zQBL|qb@`gzL0WJ`Wn56{zBW!6{G*mpTa`64Bg%k)hXBYj9%9Q4O~n~Etut&c^5cJ#P3T~S|$PGnSAatv&Ww?$vp0lZzO#> zDngF8X9px9)9#lcfMBT9?(mCvx8|L{fr3`7h#Qr`N0hTkAc+=Dz-}Zrtgb?Z_WN$> z@-lXnmcB~b4ayq1H+Lqc#^}-HBYvXAaa~{4`Y=ud)yo{H+r!3=6^A4MKnhPg6o&qN zK2=5ln^EMv;7XCY=J0fhcS}~EFWH0Y3N7r6TL6z!1tmjppg2FLJq~^J9HGRx?fm0fzlDE-8z+N~%h34h@8zn3i^LakH0{Re;r{?jYIvdpvK_RJ*)78D-7AeH zaM??(YwXMBQ^?>NDtfq3Vrd_1ow(Xre??mwE;L)nekF*n-NgQyHU;$~MUsms2eL zz~QZaSQj;1G)W}!6{nel25Ko}jK>irPAR1H$fP&09^D`Sa|$A%kPn~7=1ws1NLdko z6_;_vB3{B2SVwfoASkRx#oGJAv!0G1esdB{!mP6C^_K%dI zHptp8KjJr+)GKr^ZXA;slD-^!n_+;!)}pwLyl^#4(M?0OO1S_vz}s(@hc+ zhzD;7VvU=RjfHU{PBCGYiP}4LD2O6OvCiiqxiZQR%ldv^sC8;xcP8eN6pLxaRhV#9 zI2JL{5}!E=;mIiXJ<{T$9-a(l^9MG|}JyP9x;7B|sao z$5_QzyVDGKTiXfQCCOIU<6$I*E64{NXWQTF(RAq#hxd#@Wm2ZnT!LJ)C|#;XM%*@6 z{{WtyvyLa`;R(6f37d^S#0bGsy8sJ-dB*_1{qfVLl?B0DaYck2OMxeh7A>NtXHM|`U;E-?I`7Uisan%h>$5-n3g*KmpC2Fd=8$C-1WS7esTRjwr zt&+eyC}(5xuS2V&ERHix$v-Dkb-Y}F-4x2%f0};kX&zi)jRhZiVfvZmvr|L<7(3W> zkyv;%3Ytj1)CKOX-bxxlW1-xZ`wU)n#^+lyQp0(_2(lugcWg~d13L}m@_oAY&dN0N z!#48d^wQ!01DQ16nNWI2hmV>bRvjj#38m7KVyb3Kjojvfidt0@%@Cbzw%U_;)m8UM z?$;VQmTHfOkiEK!x}gh2OB}1kOo;&9v=RaL_v+&Hxu$|rn8cdN%RDv$KC=N`OK$E( z$zq^NWUSkhl{uP#PE5D-ssMQa8FYpD8C$#Eff^RgsC9j9AZl0zzDm{jJ4^X!WnJLC zU1H=GVz@XzMeADB)Quz@5G5(40?FSlo{{`>jM3%iDw8dtGJ?)XAj&URuCp)XQ7v>= zXm9<|*NHpP$4R5?6);0BQbh{KT|Foe(_86C`G7I+d}nI1jBY(vl?|hmqS9~&7GkA2 zmAI9~7mAwsdDwi>Xj67-YOz%o5tMG9DyU>#+{gT(_j}(6(I18m&{F63%*|Z02XjD?2PpTrPsF{)=(@7bQo@zQrlI0 z26+~o&z?%1)E-{gLb8Ii_EM3r|vM>uCuNw zshKGnI*N)qam2n|1ss7~@IxQo=rI%Sw={t2ZzgiN#hk{xs@YW{$Ac_XguVDPVmbd8lb5AwcrofKidb`FiU*e3Nn`vC=9# zvh^U(kA;hevoFF&Ayj9MZf|TS71Vnflid$+OIKNb&X|R@lBx42+!bk_ZRok(x@KZY z9{&I{az6cB%nGI<)UF`@uMhlxr4cZwWKWxd+j8W2AoX1Ocz1^=OkAb-S{9L5d`(14 z6ie#$Go8}Tc=V`K{D(zlK^>XFQ|MV-i|XW%8TWTA6TnI);#df|`^yO;TBFFNiQmgo z#zTMsetlnJLEVq%(UeWzPLQT$)9`>VI^*Lm&^eQ0q@+I|;)NXr0UlbMfU115c{s?) zTzdi!1KXieuq?!_cD9u|ButUbu@1@7|87M{Oe zZ1KJ0Oz3*4rozog(o!{j#YT40(X38CHC2yL7-m_yt)iYG8CrO$2^Wq$OYGTr@)7xx zB^0Vl^%nyXQgzc1ZKVGIIQxn2peC{}W-(;njL(co>wG@yT}x(XvX2qhX6=`1?G;fh zQ(5~fWX(-|!kUpVC@QXWwD8n9z}pqV7*}r1y>o1(PIJU^g*UZR$nIt1q*>=#~%fZdcjUi3qtV`x00f`gMVnp*$?Fp zBs5g7Ch!;qmY%I}8Zz0)jnCgab%a$yR4q;leMBBV5&m(wsR$7^O50b<9C)Lhq3)qa zWO?bOg07L?IpLGch=wsTO&J8n`98C}0uS4*RRO^!oD?A>U^`QdOB?rq0eZ92kIkqqu^^~J3~uLPw#wJyQ;RJMah4M&=_QjH71I?7SRQu=o^-|2q&b?v|n_4GZ&^L=KUhwe$ z0JXYar%lH}HIf=zqZZV(b&_*QYWv4~uMGRnzq&tE^?ZzADj+iS* zuY$pY2#ygzIoe0I@BR8PPrkf5a)HoCQA-)&Gx?dvIB*x$!9K$|=)kyGj!DMR=pd`4 z%*i3%cJBiXv;&-u067`y%PyKBW73hTfRduBL0xCV$K{Dxl(61GZ&pDk1QF>yIc>*O z#S+R_`%sI{FvDbS7AT3{hC@{M@~ceTXf&^F1T}iz^$=IwK%p_{i_O5(e3{g8=-)YMtO44oF@L1Z!0kpwf{p5_$xT+q{L9nSEU= zv@_*KIp>+0^^Kvc8n(({L_p41-@uSljw!<{K$--A?E%ZNFv7D+lL2yI(c1|c^9y;; zr!NcpVQsDaLFvsYr|$P#FrcTm(xclqT32JqBx(X$?Q^p3timjDv->K1pMHQ*_8O&D zs7lIBW==e)e@n=3saWQsaYw0vu8OPahTWU=OEZ-AMM}ug+IqLV4w!nH;#P>C3tS-9bpP9HRh9 z%hBnqgu7fh21$Q0msU&sF#iB{%e2+-y}I9PrSf$J;58M3RvX@e*6I@HtM2ME;6 zl*)0BexVydw2jOwhU1&bR&H;5<~#f2aKW-uIf~uA|Ypdr0O;yinkBX`1-sRuu%D*c0U9S40H00#@9#192 zQ_I}}_9tXq5^^&1sc@8+Z8x1nW!kIHD6?B8l%uz;IhATH(av3FyGKVQc(BqkGRIo* zK%bvd&Z@DZ`?C$8?dm}#PLzDxN08-F#QIaji`B=lh)2#^L}SzQD$@@-&NEXDriL>X ziQ-P;5|)weFNYY1{m|`wySbhFs)lQ&zQLorN1)(}hV6d3G;#jfyIQBzw=0dx31}kn zwGB#7M^79?8I|fkS3v3%#$T(?O3Td*ysIs1c=GNB^#i)OI9$Tr|_yIa<1Ypn&Hs|H?gs@Vih^)27 zMwUWKc`g~`c?sGx>fmRBdbRC~j}We=F~{54j8cxN7&c_)@LpBREN+F*Pq2S#5Vso1 zE|t^4P722xY>B>Yu_+2bBjqdxPeTJ2G=K1j8efZRzt{-WWEw z+7={Mby7|}jxguy*v>QW{C-}UOwJLKifKWG7?lt~Rk>o9$`v%UiWyyy;9gRHzO22}>R8*|_py2>!as(7+5Q}zp019%uIE=`zj&tZG#jC+)i?X9M|Zy1 znvhkaoSzB0j~fG^rSdoxI> z{{Y$-X$GgY4bYl#eNSgvMpO%k`oU^-aZk|maJ*G)<)*2I0R#D4nn{)?AO%h~?c^}} zkFW0abqXK>9`jdsE~w|`lvMIYRGWBIR1*9#>0Mo3Xz6#V6jTyN{`9jxN>Anx7MyeI zLGu%wbd;l8>5R1CJ)YRvA3&CI6ptp?5Fz7=4>IHTLVkuHCY&un+K;}nim32Rz!ux@ zk_#0X=!55*mu)!o82ckoX~9AQZEz&a9lgItz`S78H^r8jki$(OMVtonJi4KQ=9E9A zllI6RHN{#@*p@^+KPQGz=@g$G`Yz~6Yyn|5C`dls@Gwt7U&X>8LF(^8X5Uk8*(4iA=*n{2c{x(wF#`aATabEZ>i+;A zx-)d~Na-`ED8a!Bne@LuL6L$0<$7_6X-rn@8HApo)V7Nq9JTkFx@&a}Ix|aIS5UAZ z!TDEl21yycfXO-O^pvafE;h`&B=fE8h{HA|vM?wpuX&Cqa+g)=Oa%G|I{ z;`YP&sA^%N(Hcj#_RES0>ci^YZ+N99m8ztgluN#N&$3d`0UU9jOU%7NWgA(V)k?hc zIV8Fiw3}4V;suw&(bn%w2ua(R`ChB6n~P>4?v$s_i1wu3 zauzK=Zh)I@zsVJsddQ=ctd(y9WVEur-Oq&tw%qk%)7hM-%1q6-FYD9KDsLUW42E6I zm&l!(ykf7cO-j^eWn_kFBxEJiLTYwl<;#n!@n1Ashk^e93wm>3(p+`Uxu~~jZqR5U z9e$;~>N$ioS1Xu{;?{u7#7SQ~RPnR4Fsm~>$ema7id6}z$?AK-|lkmRL)& z8EP|KI(me1Tyl$>WvNol%84YIOEafD`j6V-bm>i4j5|6zu=Snd)%T9zP}-%q+qD(q zx(x-T>0lPv>a?}8p{eZ`eM2gs7L7k0JW)*O0FrO7r;e%GzR;US{+ypn`(F#sQB*1#UW*};h5!M%zL5R_OXjQ@Xz3}UhzHd{*5)h7KJM- z-kZoeimnITDXs7yRW6-{f~+8rWZAv__VmV;Oq!~Zy8YXgmrR6LyuGBqH<~3+dZhuK z+hmVUkn28TId@0ABAmUkY!rGbhR;g`RPe)31X1}i(=vq-z))@E4Wj@62;`qnQ_!b2 z(`~rsEw(9j{z>&fcIpc4#ED!_GIE1SQRr<|W{&r9vQd~Cw&7Q2mMVJ6T1!xB@i~%I zb%?@YR#wJUmxfm9>utF!Cpj?O*~+VdnX7$RwX6$|l)6d~HYMif87bK|=L|`3M>OA=7UhxlkVClIlAW0`q5S5f=NeEfeBad+hx&zCE zR`=sEscJN5hUd|?>9zo#Kw-aJ`-gn7>56JpI1DZoi%7Aoag6PG=9*7WDzW-{kZk0# zOnO0}$v!K%ri0Z7xo8<+A`~w-9+(NX^Xo0K6)n)@bpi=t_leTO_+u{}`MtwQb-3yK zOUL^@+xrVaTh%bAX|&z7X|6R&FbsZeSdohIag6nSY;2jl(=`dJ?_S?d9r@<-w*X&& zV;sG=bB7}?>;Wlm7s*O&vB=k^_ywn7Ei7yEL>U!GXXJX!VNbr z2pJZkYsQMZUS7{H*^Nm4 z4E`P{JTZ2EP<|p^#Ir?m?k2CMm$v>D^ot1Rs;<0WCYIW6kkgef1!Y}gF?j~ohTTUa zovQsyC7vCZ*-6czK^dy8V2VzcFMUqT8DM5u_XEr26JGRM+ZVEBQJa%#*4H_~6M0Le zwiCQQQ**uU#NP1%ui)_i0NbwZcPmz1h4)bQlehP4?yJ4l%Nstb@20q>O8c_X$VcX- zHEmUvf|f9UDheHnzMi=^(wQA^Y^WOpN|;%Rrpcxzp5uwmOs?{wFkS3g44VWkBZ3Td zOuXA0IYF$~+!Pr)Jh_u2$ZP|PVm{J4X^bphFE=~g#_y?bGEG-^zSq~??sYXYi6pML zT&iTNtCgIL?=sBXo_gweNl9r|C28`uZdyzMut83cZ4d_D%`x+4vr(I=RA;KMiV@8j zn~JBb$jMjsd!(A7IYk_XNosafDn`JGV>~h_F5B{WJH3D$j)=NKq9BAhB6Pr}_lP85 z+nc#`Oie68yga3<{e|NR>!kBdT^b~dG-DDhcmNpvf^8s?9yuWN{#B;If+8FXrvCSg zFnPyS)={@ECET#54y=68HW*MUK_dedR$7h0CO9Vtm|u6u3HpEP=@T+VQ$g0>T6dIu zVcG&Bj$}>mOAyIbKz)dw^c^A?WO)o=x?(D*2*6^%F7UqDBys*dGBrm4MG0(4ke8MS zs5;4$jW@kHeFO`p;=Ne;lz(ant`Z+Pmy#n~9j6&N%wRG1;{&J6CC2N_mIs@NPYYry zGVG5}yu5$&60^cir+O`OM`n@t$6S*lXM(%E)j&S~04{%*P))y+L#DYhgQ>L~z38}o z5Y-L3<8=2N%YDbdbn&;gEuKqfn`^5$9%E6?!8U`*jqq{q4?f*lL)a)$*^`FEQf(*5eA*!x+~j%*Ni%}6;SW= zk`5U1qvgf`W0TJZpboH2mDjrlTDCkO?Hy(Xg6#tfw2-U_0F#0JdT$$|A|;YMF_joB zh}(W+k5Uymz{&Oij<)apf6g5CU$dMr9wEDRQ`}t*UlpC7{h+c#HGQTg!Gf{lQ!Mmy zKu8iyVoXL)v-K$1YRgort1is1_*a($^CkPq{a)->-jViPwv%V38kW^ik-M#qR|B@C z$vRh0FM26Xt=05bg8*KLPOWY`GPTSl*JNe*CyM-O`qJ~4Le7|6)6O=JYc zDo$mkOGr!Hi4}XppV=5e=rySBcX#WrH#zFwm-giI)PK3gk;O$#C!JR-O@Zgr#}X(A z2`pqC9jxxQYh!sE6U^;x+9pcQ}%DlZES;=WKY-VP(i;gZkmbi%H?;7~`QWTyS z`%T-AB7XAsLg6(Po8l>KS}iVR=S@$j7DSF$v)jxoHSQ#xqrp++B#f%>*1nMTmcHww zvKu!m>l1{E>*&`uTP~0?P7M1lcE>L43rLY-Q4 z`J-yk_#e`Jg8VzRH+HpsovwPOO$AL=r|lPdQBg}lf7h~7TWumMWPnHU$oClJd5Rf9 zgd#9S+tzElF+tdEhpIPFAIjTV>cDRqE!&rU>`)m2=~HM|ud4B4Q?~iKuG!OeQjo~{ zi>9Dujzp;4%-kq=y9?oZ&D;Lg=_^WG5o+es_PU$(OT-?ovZ8n+ki}CsC1MQC`C|$L zZR)V6?3lADDBGf_EOJxW*eELroLOfAg4F3}D$Pg2CEw`q%gs-BjflAR#( zA}F!Os~m9!8w_MGxC4-WolGUE%(B~JlIS4S#7D$=aZdM)M_-?L<#63C=1b$w3a<8` z9ZXTIq@fKH5~<~nP&p$%QODn=ue1{CMY|G0)5SS`m?0rJs3ofuzMp%?7;5#!6qU9~ zH2pmP00{cJYF#+Z0u$s>R!AQ3Re&eUG-)#D>ARq{fg_dmHk>xjq~lDEI&luO#~#Ze zW%@BAka4werVYK~$)UTe&5n=P3flX8bdb>scvaw}q=ud-e6=y6Q9@}cQ4vVU*|#Iu z4xi2Ll^Jwf#jz0&X=0X4e;QzXqln_YlbCVKE@W9P)-sv+%J*?~2Z=o=pdqS9wf2tB zTdl7)_}_ZVexSD+Yb7*;IBCVgty~Yk@m_@NOuEigHo~$^*r%LkkuH8f$rfOReglbP z;}QP=NOQ$3-p$imm_ivaIro8kO*FEF^{Pg5^__f^-R3UsRaHZ8k}2hrF3oMn1;*9mJTW147Fw6BJn6W zN=>Cg$%Sp(eIt1zKF8b+J&)6-D=~hdz8|v=8)X291iF)_r}n+E*&}6jjd>((C|BnC zkl#W`9{Bg^G9)2K3i^9tVFDkc;fa11FRmuHfjst`TzDwnOAHYWW1w7*8r}SxgN$L4nYJ|eeu`pr*iWY7W z-+-2pL(_;{lTm5Q7&}F!EkbR!O_yAkWL4KyvA8B9lVC;Jz3KO3RIwc|p?pK?YYv;G zlH1wO3nHq=ru3xMGF01XbuGTn4Emm~ht2>R%6dehqlQDdzdBV6rJJZ5)pqIoYg(OU z!)s^uM4lO0XA3cH!Awm;{ql3EW3F~`R8o@M!P|T+0%nLQax}>Vy?~qt-imDeVteOQ zotEvFX6dS*kg9#T93QSa7)C^8eJ?ZnNd>V++b4)_+sTpdVYfs_nj~sL~qSP2cI9tI^zPgyRHC`jNMr^oU5;RW_?u5^0cKBm|CE+Q?m)R)y77q?f^+;q)7&W#c2 zt~P|Jf>asYlhS#CiTB1`hxF@=Dx`9AGfX%*n<`1hK8w*@ZgNsib%Mwq5I@rH!#ks@ znQd0Y%ALyV$zXrIkcK1MspQC_tBSD&m2q1x1KX53)H24QWe&`nwy_x83lIh~{Q3bf z&^Vao!_5)~+|rg?EyfQiYH=b-7~BgT%Gp3!S%BKW4tZ=dZO7yL1d|#c_K?jiMd)wn87BNYmG~zBvjyn7FM0TWQHiM`d6p> zM@yQRcA(G-WidG0pDF?m9KFnXd|(F2RhR~8;I3}cnJVK%H%!QnE<@GCi>s+2(D3hS zqM@zTm&=oHqp@1*JCZX z#VnUkFEv<}dN7aztJSIxI4&_J(Wvpra_TE5vyiWhF}mBh7TWDyU3t9O=&v=xfO{h4!y(sw&+sNSz;4kz;y7*8tCxV3_a`S5$O)K(Esuq9@`Fq+rxu zAFSFUmKfop)IHzrHKu4|MG?nsrPMH0tV)V7iWZqc7{)rM>)YD zOMe*K(2V1Sx5Ga9DIBbn>)B=A-SJU`HR8)nY>6%KAPGqXaVb&@?1@Bb20nl<^7M5i zooTUk=Fz-&JQJ1i@ceYe)ge6O+odvPb$FMlIC0eso#wul-p)2kB=wY1Llf#5W#EJF z!Ou~Nht-p}mrvR8ivmT5X2*s&r#NY@x`t}P=&~^zgQ-y4<4E^qTo2S3{{SyfLY|v( z(r-@iuc*9nr;4V&npVukkdE4WqN3+ta?(>U#PBC za+0v6C90X`Xo)A(WR(>^i#Mm~(;cLp8f`veb)i9SR96hUUB?sw%czxnus)WpJovDM zcU&w!$#GNqgYJw2c&zS)$GH8=?tgTyAXMGEi>oUnwMQqUrJ|CmXQ5>y1u34bw=Qrz zs&(D^dXRcQrV~;WnI}nGRz+rJSN{Or{Y0NIfn&pw6jobzK9dz1jX(ulY*b~~62{x6 zG>NCMk5{}Y5L@9f4M>@iqIlX#s%Q4iRI-+yKuO#|c5lB6)x@tM8+hHe%SflVBcx-W z9RoF(H#IthL|-v3qW6cw3#AC&g;K?ROj~H<2RlFm3Qr((sH&$G;42NBR752P@=tYp zQ{Bf*a9G`(;|ey7hz>wQf(Zcp{{X$tMmkWO97lro!YZ6a6me2Zem?j-v01CH_j_%c z)k{6X>2^8^xgM2EtxKn6jI^)lf`?eovWr7 zm0{_ZS!JeFpLoOoJ@V=Jr;oBXMd16u9iPLW;hS}}R>e;rc6F63J<-(H-z8e2+pla@ zBIl**A_k%T$3n`Z0U;wK z(`X?u=!z$I04#`0;cQ3djQ05c?-gHlyhduu{{S*Ur*vH;8YfOeDOoAfD|ThNRM9f= zhYD%zd5D_Xpf8XIhsHT4)2`FITH9HPV87)0 zSOl|4eI;zO!{V_3WRa$GF5Qc{aAEb#xWh@jkbMO?=bUlX&q$r11a?#r;q;tF0nA;87i)(UeaF0g&Iczv;+*C z70{{Fe(qelVBVc!aCUDn&itzkG!ti)B(FGbc=~k7#Ux%f7aLA~DGP(L#-xpljy1@G zsYLv`ycf0xOhhnlejFBtUu>x)g?*>r3;r4D5xJd{k!v4ki2gpfa-ho~+o$xd^pYud z`^gCE#xgm6Gq?a3oQ2#sfJYm?zsH`9Gh`fb?18T?@U4#T75yYG-?ahaa~nY`dRiw} z9$7oR@^Zr%82-I(Ns>4Mya_wpp}Mw+jH<36+Wn&UZ_+=HuS6alWS>xYf6*1r(7dL{ zQ%W}y@*jrtV~=xx%Z|8<(i#l5)YTYWB0sesMg0}bxiPU+10h?u+7CPQls8&XhPKdT zwpKSP8}$BkpD*110PWP-aD|{wZc~U|Gk5D9f zmw-UW@gL8jaOoEOxZVts-{(p_Ouz%YV7Dah2l)R0{{VVrHtK?i^+Ty<(9zN%?SLB7 zwpJeFX&d&3)DbDP>MLaQlS(5EB^^@4(p&BkFF2YS#f`_;kNCP)kz1Og)a2??j$-_w zi6pvTHWSguh@o&4~L-!BS1!qNICyjHPn zr`Fmg-`ssKdbL#xg}VErE80lm*;Ij2D~uC`hO(UH>ExIO^ssKa%9FKJO{1heP^W*y z%aF8f7}(l)#SBW_pkt^Hkz!rsju_fKj@k{7pKexpz2MEFkUZ9uCV;q!7o0Sq4_2Wr zm^9K?7Sp|@*Eji=A^U#q4XOgpOFR@nNF#u5#9++Pt0~TUh1Qr_mex?@1OEV|-uU=- zuAGbN%GQbY$2=5mmakSF#0BHshi^3O^6KED=7?OfEqS5IOD72w5jm1) z-bczKQ;hw6JzUtNy*UN3LQw$$w>47WJUn8KnV9vOpp(W;lfS~T z=vS)0(gjFbYFB2Zj7VifU6~=$Ch>Q8b|?KYy+PA(+(H!`RTW3dSl9#N0oCu3#)12- zp=rC9qplih=2}|V>utB2EnJ&Q(_buAk=I*hec9U^O&-TS`(*zBhpN%A`bJ2sq}hX@ zL((P$gqaU-gd5o^`jpxnwGi} zDlZZr74n$$ki<^avq~j-rVEX&8Z)*FAoS#Y0M2>-JwYms7(KjbS0_5S@W;!Kgk4mT z1aA>uJ+ReHDl5$k0_mIPEwWpZPY*YQNrNQ>wx;a9-?Qw8 zGeJ}QTgJ@3bJHuxBa9heB#{y-L^9-)_UEZBCRN4W88U?9V{*kbsd;bX{4p7>x{RS- z%!y;vNQj?VV~kg);`iO^{@nH^gSB)NwbVC$=@VOXf=K11sFO)rYGaL|hMq#Q80)W1 zPfr=+e%IT=^#I#9>I2C0{k8U7VPf^(wVpsm7-qlK%h> z0@EoTO$QRSP5bBcSkW?q> zZmw;IrkPV)sW>VvO{p6wywopk=a^8slkbWP(j{zKsGS~CW9cQ{s6d+dt2#$^s&)D0cnPR;!tB1V3b;7;NoQKvRPz)jLT5 zW9!KS?Z-=6>whdaCmR!O2)AlUV)*<#(b1$)xtImQ(%zjS4HU!Lq%0#X(_kGRdJ=LTvwH40ijn6s(Dg< zT}gH>i8Wl>M9VtGMf#4LEZ831B5H3s;pi-d#<6{J3Nx{#zRtqwVUzFMcooPwg z;CoH=VnA7a+H#Hdc%EWynbQ&%8+iziO5@A;i}7g02YLH}CunYc*N1A;Qs_t5Yp39L zF_~`HyUfujMZ~ZC1q1dS3LC{xWGPv zjFL8i(NVE-ER|Q6ga>`X3{lV)*l~Y5q>tcVG$&5VsAzr$9#lx>5y9-&)LIGtp-%d2DI<=F_S+Wf7HZ%#fLQlwHJiW!>_sVqH`O;62pl zuqtHLvfx}vbz{f&d%tElqBtO#a0}#y0Gv4lCg#EC5Wkj^M(ok?@(tYQ>(>){YL_Z@(@ejPD*Jc%{3GZO zpb6!j*y&aY@WzFd!3-2w*T*jC2}q z=wa~ue)v5r-}?UmsvH|VE)^M*YWkZ4X($N6E01ys=p4$bH^a6bOQ+Isw>5=rJSei~ zdD=>{pP@MRAP;f&=t($@j-udS7%U8%ii9h|CC`Ko$IITH@>!_vbW%&9w7^YCtYuQW zYAC4BnMG;c`dX%`BUT6AIL}_CvFlT4^Ma)>FQ~jP+{^7l8S^P&#CSO3;*l8t0JJ&Y ztvz_v-Ieh1W~0;8_4-oHa@W`Eq%qPx*G^mRXf2j)HA?aRWeqHp)NfHOD-~IcQ9j>J z?yb*7(r?VwYgOaP#$}KtMFUGuJX*|&I(~$34)z%qF-v-EsLM*xX!|(XHS4p6QzmEm z&}cM{3*FCBsxMjy^R#Dcx!3w@cWbmJo3w`zPP1QYWPC^Q65J$Yq++-Qq7ldHC*7NO zR-VpCIWx5ts*KgQjoFY-E**A?TWBf_NbGGUpC@}vF8S>^=1RDMs(E;Id7?vp4}K0C z$7kXn;qSx!!k%fgWy4h+b=_w2yyz3Q-M=GIYC1W7k)?OS($IoV39iTL>du;dxj7k$ z=WV-^1tIzI(qCpO*(F8}Y5cNK1u_#%z=&)h1MxLZKQw;8iygkvZ=<%_Dd4r+t#ovj z>s1GMS zyQrm>rN5bazW4|GVkz8!_@5)pkB#M2aU?#$!5ok|J>UDhu=msy5r5@( zf7j)LyRE-X>PQVG_TO%}#GsEZ;Y}QlnI9--0ps`Jf;!)KG|GJ)%nS5?YfL(lnX6Kq z7wNN(%bog~GDKgFI!o<#Lp^)&>Dn9C4PKTQ^%#vM_UTTccW(+3I)k)s9>cBGwqO4M zh?PW9OLSxS7@f)bQQMg`#hTF)4xMbaq@M0XkXuLLi?LL53FPhlwyt19dG|W|rFl>Y zTririYYZ5#y-ndZmJ*aKg}pRODVlh2G9Z+>drEfto^4%_Jix>0Vs#)_S{(eqK3Ej3lP)iYjhn>{UGSg^OS9aWTCB=*_u zjO5Ju6Kpt`o?JazL9U_CxM$E_@tk!$*~$7Y*cmz_KjJDaretH)Gd}h?A`dkd%TW6O z5;N(qdlB7BEv+?$%2TQDcUx-fZEb0!no6BnVO!+$)X8_e+S@ZvMDiACY9b7 zb#zen?`A4fj?$PP$?}q}l$@-=q71abG9o*+UF0S_5dg_E<~NEax3QZ|B+GSmC7zs` zZ`P(+MgIU00^uoZkMa zQgd|3_79!K@{2){YVTtbt&`c(+B%^m$nI%$^xn*#Tto+migqaP%Fo}-<{L}vHvprq+i+dD~@+3J7OHX^F) ztHoYzw27q}03S-CW>hD6M#J&1^b)M68o?yvtndxf` zL0&U%s{_iB-#Co7oVYp0VLN(Y%7rRerh`jlWG8E&l*dS35w6D2c#-AF4TlTmW#D8!uQQ6xYYAn(ERk1ocf6QOFU2ev)&Bg}Ij*fo1LEg1;MIu`iYKk5<|>jy0(yO9flJ zHBcOuf=BeD9R94FkNI)dvrlAX(rIzD$P2|16qIdQA$SLVFD@?t_cHGn!W58Gy5U{S zl2UCOhIbejJAJX0$3Jn<({xobLBt;ZFLoaKu$CeYE6B>K=_?TXGV;Na!VYlhNup3S|3P|IReuBR4t78V*V-yt2C|_F9W|T24^Dp;@aZ!Ls z2N=h{L1tdzl8hRaWf5$J)ecRiSgBUp0Xs(-+rYr%?~m!!a%O2&G2Qh0dBGNCiK4o> zlq~5e!C0C`$zoVUs7!;8LZ}(s%y=Jt-34*Qm=Zx1(!D-nf>Q5`Ss@NepJ(rl1^8U; z&6lvA9&J~f^3&S&KBu)+Ypru|t7WG)>smu4O%1-LX$~pr>FtoKNt1xm6YtcW(MnA* zkxL8W1oPf(*Q7BXcfT*^0;OA8omInM_(lr=%cTW4srh}E?2HTe)$gUtzdj>7(cR0G z)DX$5b*qPVN^zCn^jFLw_XSZE3=>CQjx&oX0jQtm4)7>;X%zJO5d#}O>or;JA4>D{U7;<3}k zI>|ITdcZ1T3xO0%L|D277)E!ISmWDo?{z5InNw-m=MB6YC!WLJTc-l~akNGDrfs)n z>CGd`;iRi1Yi=0)y*_BxNA@@SV{N&3h4G2s3d&WQx3|5X(Vf1r)=3+GyUW}SM>WRe zVU+P4?MGmQH`K0vjNL7^uDBFHm26ij!_|*XlTIu1Vz!9&J)QiUs-H+NOf(lBu@G$D z#BbdtK>2YP-tEHe8ip+(zh=od^}(iP5f@PLgnYW@?@H!4=Ay1e1O&LQWY_@0 z{8cy%PY31%`o31 z$PWeXMO>-^LMy|P4oC;3lVs(MbX1DtV${h001%WZ{_iwr!h0{7zJE6u{vE}?R4@@) zEmZ!N3-Nb4%ECzXVWWW%62oVwJ$ZI!NwgtZ=Uhwo8Ug+*$C806+A0+Bl9!YPK5a{p zMLGT`ek|`4x;s;L;w?u74u#S*beB%#L1KyvXx19`Wm|@Z?Ti-#BTFT!l_8S%s6lX% z(pzDL+cgRrp7e<`Aj?luY0fy?QY6z)WMofF&%3H#O|>4ze?2i_;iOhC4@TP+O`%ZyJ{2kwp`jP~;?Oqz}5CJyC|8Gp_8N`SA&S)fcPvs_S*rD|5JZhf8Z3 z(`~ow?RRmnBI~KHS2+ob<57I-s#;=v>Vr>BPYzgZ>78DkQ`udMW>r~!)q@|)Q7@J5- zERA)|s;CUa!?amRl{rU5oSiwd5fsEaPFl(-q;LUVBa}wY`}k_^J^GhIYda@yEvLBJ zr%qRDUgP%fw-$P+pwpD>=Az%KDyb!ZhoX|EHfm{U>4;hCsO5NLRo&G4VtpcP{EM~9 zROZk)-p|rzLRvz8qUv4q>2_QT9L)f}kPY63h($^(-LTk-)m55BUPou!{I^hO-kFt? zY`%#(gu;Pn46oHkLha5K@ zUhTFn2)isu;JBAX6%`T^OXMrat~^H`>{7e;5ksa8Glcuy4tBt7paqi@}}&EG2$s_x#C|i-ACnyAY&;u zBrK^JcX_S5(S$F=pSq2${7LFtXiq9G-&6xFpa4Hs20ooR%_Z4zme{WksvES@KQPXX+pVWhVyS)x9E~ldFPg6TXR&Fk z4cAfX4Ow-e(^gG0VxgYrd%fyAok~*MtyYU&Dj6;p8R}g`aiWu-n+hADN~ZCoyF{DD z^`Uog^D6gIKVOC5#IqABZW1<*DQLu2*pYXLQ>#x;x+F!WBu|Jx2tFpfBi}6=Tg1m> zJA>IRLwUC)=Ep;>Z2|~&1*M2qn%Q!rmRfq&iJ1h@iG0`#ZFJ}=RO#~*voccE2Il5v z{{T4HDG9Wt$cPOD@GVv}6#`MVSAue~PXvh1qd3dui8z=TnI}7#DxxpArJgohLAPOi z6Zop}MW^-VtnmBTooC#=727oP_2#{zYh{B&X$ER@Rq%IxS*WXNsM6plkC^ZzuPP%U za5t`8O}{Nor@2|HPd7`a%Z^5F+?7Yn0-B2Dq zEOAoj-YX`QOqUppTEk4!mqwjXlqng8^q3lAVyWFl??{HDR@XwEfoZrRsvB=Vk5gmsvcDRumM>uXogy)hf|j z=vG8&3cRv7jTyQ=udy#K+eoB3u~WyY-MEU_bf;GVhB6d+>GgSJ+xi(X5_J2i znPSi<5fU@Ru@zAfK~pU~M?Z;g;iaqp01lq>U%PW%-0dsgT^DTBjixP{=TFj4W4Xt2 z{g+L7{gUq2Yl;{W3X1unLtWSkr4E5W+KHD1>Q!J!S}vEFbB;|ti4s{vZYBz-NslOa{{RcB zIYyf9^GW7;5*kKS9;~>IKuIHk$NF_g{{Xa%$fMLXLCAy^e~LOU{g>DvZoG?eY@7wZ zx4>b}u*tgLL_y=oaC!IJJlnV){B*R)@ZdZmYGZfG*R|97VaK$(8j6yg1P#2wF+Hdog+WZOQvV<7jS+gP(GmYw8klNape&Ve;wGE-;8&D z2WPw;cMjV_EgdcMxbaeU{?+DIif4+7?BTC-&{LzVm0}xQG6oBUK-~P>dX-2?oo{OB z^!Ei^XMO7q>AwbbqA!;>aT}Ki5ww%(v%3#kpKZYzhZ@{8i>D)dfvEYELn4d{-s{l4 zM3nUt2jZ9ETAZ{q+uRYloyhgO4{%4f*LPiSB+iz_*3-mQ7f_mc{hg7(v#tQT6cXw(9_C&H*ge?WKlVK}Jq@~t$7Yjr92aWqe`d9WF|z|K zmdbjqM`oG7;f*R9JdbS2&<&;%o0n~ryMW7>-yJ>T)%T1`D6+tGxltBych+*pEVP>> zB1oPIfkwtJ8m0HhHx3wx$I5-l1Uqn}-~OJNNKt^1yN@2&no85eRCMA+2rAuH?;7Rf zQ=FCroPcseHhDQGlhNjA;)ih+As8wWT_~2fdI=%B8ORviu0iK^%y4i32m! zt)TZ5VRe@qWzv`NfdWw@Dz5bdAo;ANSz8!YV0|l*$JCCohB}3OlQl)}P+njxUK{?PoJT2*+ccJ# zDWFwQcJ)haMJ3Iqsx!3ntgqy1Q93l>JdmbdBO-pH=&v(zdV0H}I#MJamiD}9a*k}B zIM>(a07_?eLv|Tdz$LODcT%U9k9sI-Nw6bKdoXk==07E%3edefrW!dEs+C|v2I}t= zxe+NREO?J%^$B-N!AFwEFg?6RfL|mN6zfID3|EE(o$u<2%i50`7d<&Pk^cb2{WDkH zXtaH8yjk@`H@U4E%xTJbS*kSFq^LPfWo?K*okq1pNVCSCWXuBXruL)JB&A8ZvTU_L zc4X?nd*(M{pt!F%I(=F4WW8?gCWh6PX84;|Ztd~i zKx$nzIQVl_O7iY9wM$XE#Ld+MNZCE5mD^37*~-4l$~{}9q{sri&-e-XXS6v!=>_tA zy+X^D>BD-0QF+d77S7DoR5X%2yi-L5JPH+ISmKKVoz3cP#kY0Yw22CK%TVO# z^utkNMY0Bj%}mG4N=wah`-Z}i$u%juhSk?5t8oRj%MCuE)HRYvA^@)<(TJ&42?HWA<*?7!o}`|LW?gq^Hn9m)bmMG?%wex3 z_ec7pqc(m^cd-=q)NxlIbg@3nM-hv^)VF91CP6Wc14zQ6MsTVGYTj!wAcqQLaHJ4S z#lF2>#tJ2pIlDp~HsycE5m;`5;E`FpM#d1JX%S9UtCX^aCc18p?66c*73nQ+I7eODrmX{tKp#N*RO@;nY?XLab+ zeLiBh0gFlS>-Z3UDV`_nBUb273pec>rD`Lml8aGyp7U(&bQeXeq=w-}*2_))VP9Dk zv=tQctcICTq`>a!+|>OtK}jbn0)!=wEv9xWT~SL&iuT*fst1TX^4ujd7l)|J4BN`c zXo7}V+-$4n;nfdaclK;Q7tJ?3+dMewJyS9_n@v@vd(GSW*x2XO8b>|SHVcpVew_+? zXekfkjLkc{w-nsoOl9cdL z$sv_0ptjSbW<^lFN;a~iA+{{Z%`HfOAWOb`kPM0K^I%Qx-P9x9CmHkePNjsX&NZ+V zDH-RsYG?i9s7VeEJVEM24=B2Bw1@`dMAgL~LMwvhbjA*JxAt^@4=qb{wQ7#&SNE^P zEq$uhOC2E8I?{``IwtK;P{p8*s@lTjZ&7r{{Vlz&r@G`sf{L)SI?QY z7JZ>fZk?{tR4S~@Ju>kr%aMq$uoK?Dk9QQx4s52*Qktboy45j}JYv?(c@q-T0BNmY+rUOHFq&;iGkh{?$z!cKv$=Y*du?i{7xc zKtQd$Q$0*@HEIDki*lXnyLyGo)qmZMy4hLUMLn0-ZzSgiaj?*6?13Yj=F70m6-4i# z$pFNnZvV$P5V_}BK`KFtb$^QT!ex%DV2!(%X zd}3sxDKpb#{{TpIEYKJMY!XWBAf8S^8*!hn)1c43C?u#TtKkG&vZH8RuCV7?V-lq+ zY)8WtA=$xD04I(>UO&gE)Z@UM`Tjo_gOaI`l3Reoi$H_RkUH&H)tQ?aREj@SIR#1T zF*Nw5@l#TNcrYR=g1DzBzK;XFj(*Vgj+40>ra36}cXXkK_fKe+EKhFJ0a`6L1yYfe zo><+gnRv&j}#QqLl!wAP2lpl>eTc} zOL}$6hSNF<->o7`unWu8z{=)V=0E+K{xaB%_j92I#UuSjY+kdWio3tFDTdmH`_ejo$0BbNqkiIXZ4_!Zyf= zn+aYhhmREQ2&Z9X+vSAIJIy=C>?V>u@rF`9Ahry#k?aXQ6G2A6dsK4c?)WSUN8Blg z99>(r9FZ3+GU_jCd1Fc6*`)Ci2WGz#+D_MAE5$8?#8+qaA8IiyinPzGboh@~={UnF z!K-?!eRL_DmNi)Ux)dz>%!7iK)b4*afAt>%4sW~Wxk+{f^UxHnN&jIAzfLEi0n1kT;eP?kutvAeIBzg006zDbmP@EtRj%ExC4(6X_g58)fZJ2yZHDXEHAN zUHrm!7dTOa%8UWVcOHH5)RCEHalc77XmW@Of}mND>c6rNEi;&lMl!}s4qpc>21v*0 z804Sn(D~MYlyu{Y!#C9gGEQX*TDz^j#c8a*UgwUU-EF4$nu$z^uE>L!VBSZWRQTHx zj#-=cdIL0U%b_~yBP=o`Mqe*r-@Lup+E!iqjMFkwf~4fpA`U5*Dg8M0ag6nTD4sHp zYP%PxJF|7NwbJda@AbXC?A?N@Mvlj-ZnPi$Md+laW?3#e0>c2OuDwp7W4qkEnlxvp zMsBH!q?zq=(z6p}qfVMrP2lvsEXj^i?FamzTM4>JXP!SGMZ-H)k@R=7vkc0Jxl?2U z%`X-8gB1~d#qIA9hj3HIFxRVZSB*`1yXsv>cBs7SO+j|6ykD<1Su@=(HPU&NGdLVX zo11J%Ju$}`qVTKK-c6>Z!I@cRMqW}_P+Ms+un6+Ez2^6_DCBv`w<@zvPfkrMlh3?H z@u-n+SG~uuya&ss5`h!s8Do}pBxI`b%Mp*Rc=`^V=C}4k3AX@1WeV;JsV#@g^LI<# zk4(jtm>tBh+NE(4@q(md<{y8*UecT}u>QEv1e`7FS9wJ(uR?o7{hstL`*EVK-N3w6 z>DpS!Xzf(CtA?f2C1#vce$KH|yvZr1L$ap0%Hbj|3n!S^JqoQ<<*5>ZKI>@o$`~@r z;+f|02;wW$A&(Wufp)}}jY59CFckKPnvyXmrVxp6zy(Vy4Yg&Bg<;RMX*yW+{m$-@ zIi$8$Y0GMmCE6+@q4Q*mnISO_=>HvLFysl)G=a8 zP{1WgTDdaWGy|naiVsSsNSE;>YIpGJSoAMtbalC1sh&GhO;YjhM`>!^s_O)fM69m+=WGSKQ?J1H187W=k$yY5Tm>~*zv5LEIsw(fR z?EIvu%}kZ%9TtF#caH%RE<~8>)L!&k=iwLqpIaAiDzuM^pTs9j)N8$S98_ATwLTK8 z@U=ygOjk*=uFtDG`X+bQYSlLMGR zumG6q-KwbKqn85Ws=Ztj7_Dg=9afy3ZQ17-rL!vNmTs6ks7m4@*k5?MZFRFiBv^^A zp|f7?)cCUSY2yC?TX(Df0317$cFknElsHyOfZaq z9zf2pQZzkT31`!It=m6(d`GW4pMe|Zzbq;sc}hKq`IpuH=eeEqZAW(8zR)&0;42$QWCMnwD#{_*n82~ z?JKD4H$5M%Y?sX+ZnWy#(D-YuuB!J1stENpqUw`Mki&M4wdP6b-HXJ-pI27H=^;5! zks*1yl_GI~`a(>B+(1#lG+SKq>hSKsr(_R=r5u!ZKmcY92y{C8${GwhS^!1v z-0@7H{XTADp+u3T?JFrIRC&h%>8X`vpupE0B)|)rKjF9EdcO2{ zCGD4VH3w-mH*aa8($;M})9b6SsiW6(>AP(xq}19`Em8?Vns<>P(6;$xk)ZZ^2bwxECBtdSa+aBp>cXuM1f)w>hB#bbs zUE8D>lu2+oad1h;GI7Fium*t>S*r8^2Nfb+B%WxUQy5~GBPPkX;7G`(8FjpCeIw(U zmNpbkDZ(*t{h^;4nom*1pnM|s<50nWi%VR_sMi-;bla(FE-}k2?NK08z^l7UA%$Di zDQ)pcM%P||`a5BE>u;)CcEfn=cFM|~B93Z0W}Y&<{OevVDyAS^?&`xYNVSC7&6oU_ zFk8K%+K0kr=70XP0j61l_psKZ(~(6T_&D!nS8u!7r+zM|M@xH(D_zJtA1uV^%ZbN1 zWsSK0ok~3|Y=c#;h^vb&>E%L6d9wO}Ba62r^7FmG(ct^<2F$BdabE((X%=KXoLv;ncO*g5}Xmvpj8wC4OIV zllA$r)N*cUQzBf73b80;m$F*$=UJ@go-}7qnnoKJkON_hG5sKW5!708co6M^-V94h zk_lLn@iDwCb`Gn)9n7|Ar-6=}v4N=d&BK`Bg2zuX{51nhj3q@)PnR06xn1q-I!2W& zH95-|Doe1N!}}|weq}G&ye(HUr^@XK z6>=enms=@wAVTbhP|`;s!#O07@srL*Sb^=;lFA}=^Hg0!{ZURky*D0V2#G}QLTlEf zT_C+#4~I;2u~R)|#+EhtH~GZKrzR+Ye^aSHLD#2@8)3!mwYYe%y9-G&^NQGlsIo_O z6}DVF*5XMI_lG|3TzduLTd`gBvrg2NU9ax`hSm=>GVC7#Z`2fm=@XO44{w&K8-tZ* z-PV#kQ5YrEV8425AK`;iZ>*hKpI1u~Ht^@=-J0Ne53oyu$Ln)nS3`cMqSTg&1y!F^ zTWy+>-83wQ32oQv2riWJMCtRPj;Tl^+;y2(Y-S2uv{h0ZwMFc~q5(8z#kC>-0HzR? z)X_(@AEC$%!zzwXm%#VWx47v04;tyVDGr(=Q6+3s%cp?xfOITln_(&>Bq|Yr4spDl z=k4xE00rIj>3M)BfwXLRm-P9(xW-KvI}L{}uJ`E0Q+V6)hZS8-$F~|zzK(-N*qy1h z2CsXBU|p}TIG{Fb6dSQqS5Z|e($kT-+Y-EE^>xTzlXlv3Xsa_jBeTvVwI*DVADSEI zFk)DcGmmgfh5L0XMe(s4Hzl(Y16`~*EzisbK#Ptnw56we@2K&LAN+W)b?w~`3w?r? zr_QYGzlXYOj;VqfgwWG#t#eqnOQkX);5{u8P|{=oa|^FUHg=%FR4Wp4*WGN}a+KA` ziv@9@-%KcXM_ZzWZzND&l&UXO+mV_wCfTe#F*7b2MNyo$EUEXF=mcZgV~p#yhPw5r zs5I5EK|RvzaEgYFDk|WkrAmoQ7JBN+h6zVS8YGV-jzWcB-s7twm)d2QCY{pLV5Uk! zx5Rvd%}IG8Cpf1@QTdYzd3OC`VZuQH%t1ZnQt1&+@{A=a=~|Yqs*F^_JJVE6OD#n? zK1Ea0NMmU!;Dl=?yr z=r5Pv?SWL5`unwI6}H<+Ez0$Dtf95qEi}kwsJdM46Rj-;1v;q7nW|-sWPG5pZ%XyE zL^+Z!kQaEMB5k(np5oo9EteLg1Z-LxWK}O3pVn#1x6RcfwHrz`M{f{n61|BeH`+S&0KIs!vG*yhd4lEXvyiF3r+uNYEd5wRdN`ccE=w6MKK# z9UXSkI(pATqav|TX?taL$6D9ZQbSL5yIllSty6ryS5~BzQdP+8@w;ylqAygne{LtM z)hVEpWLp}0xJ$m(!*_=ZiRIqy)V^5k9h%u)nAy4?sZTN!M^b4C=AA)2wCMp7>9F>O zE8ZxRKZkFJ?H}Ea>00#F#z`z)xX{{iZD-vbGh23A`im{1*NQkarRP&w-C(17+q~5A zh@p|{QV8T5w+8Cd^j)=&OG{P+#Yy>4$V@W8T|FbcHR~c?kxgGLQC^oSO>D-^GL#&O zrC5ArBwHI3qGq`ffOnCQ%Taf+i&7p2`+wZ+XpKYLx{EfJSSl(mvG(^<(F=X50F5S| zrh9g@o~EWZuZ;)0ji8)qAet4!HAtiJJhynHh<#Q7&>d3M8Vv?!t zLwi3;mSC#H4wz<&+eb4p!qDIB_w zx;Lt*HBO+pyQiqsUm}7^uO=~)(9%Uu5b7=!7EFkxNx2av$laJSEk$xw5gdrTG2l5s zxk-(a+7G9$?Sr)^$x{h14^$2sP;gvR^vK~acK-ltHGO2C?KgF`hM<;rV)}2kbPuO( z#rKWW)fZYAC$6ahhStShHyPcxr)n)ewmOsbPVxk>lOd1AyP17vB0cD^C8eY(%!%o}SSm0^~eH?WnLlSzRjKKYsu3bBG8zNLx*0sA%T5TP?u)S4mo@HHQvn5T&rQQA9 zl#_3#a<5xTQ_5aj)a6?yWu?ikPo2C8io#N($h{KG`LIJ__YE_Athvz7s&A`gy29{RP}+4yubQrX zHq4KdmfDokB#N$#7%xqVjVMjL(~YL?bMvYxcTUB0`e!pS#JX_AU?5g!3GsP{9nM{M zsl-@oJ7bc|$_q&64#!CE9(y(6>#;r=dvB)uLD{_pY|=fv(&D;nHMV-X>*VcQa;P;o zE45|L^HD69E7eU=-%&gI*zNgMSEmm;FP<+5ZdpuQ;D|t-;t_uY5nH&`{Jlf%PMmxpgKVIY84#18rG|YfX~{A!mA$Rr^1yv_sFH_I>FW-cj-rm1 z=Jiq1TO+jD>=csFM~Fe7w_D-@mWraGrjkiqs_lj4{{V=MMvi8qFD^njt7b+DxS%zw z49k!-BayF2h>l4E_GXj+0LoP->btj&Ktou#^TrPzwGwgC)Z=4hKtV1fi5W%wWxp5O zCx?3_>%-q*ZnW2~;oqsHqSShtmVY)UP)s!&WkMPaCrvnHiZE5~Q^H;U03msWF(*Cg zlC3pFq)Z(*(RCf<3HiXdJzAJ+O3N^O(o7U_TzC?3T(XNUty+}WI&8gWu-MFPOyK2C zkUc{zC&4DBdlkb>O5NU+j5+G9Q+d`G+qSONR~qZ(^7CCa#^Z6Xk*2S?SI+yTd0oC( z#uor#Q58`YR4VnuRvAx}MntXyXy@sLVx?GbDwG zIOO%oK|HRoPAMw!FXE4&4ls!_NVd=a09bP^7TH~Pyi4UVIO7C>4%Q@|fzM2?B&thz zf4ITCm!12t?bvKGN+~Jm=&EY#?h?UCNk>kmS!$}PU16t&2*Q)+GqM5HR%Pc5_f3xR z$2vthu2Aw+g#eVz1UpyCol6(**v{C|cxUW&CY-rNL^a;2E2(w0Oiq$itzB9vp|i^{ zUtAQFn@}b~?`LnDsmphv(uP4W8RHDz>B{6hvh2ioez+YX!PhF@zPCv>bTl}YHXdj8 zqN=|WKNNEIlf(YMyV6`djZvy;C(!yxd4@TqufIg_)YU*2kp(@d)X2@o3XfLi9SzwE zW7}J`G`ew$l$f6WWk3AdAtk!|=ZIt51-&6{6t2YVC1Rr6!pzjuWh*S2wLJ25d500m zy^)9ALpx18j--%77Le^%XD8hL;3V$-=G~U-y=kqBZHg+Ty9eF={{X0C<=sFD_nw?} z<;b{}t7DfE)BO3u7G`q`0SDjwIyeZ8fgR9?`~LuFkDF?aV1v8f zCX(hyj-ttZzA&t_#qjjCwS#1CkcuV2aM8^<+6W`tF^1&(=b=-Fy>+ISQWEFv#UQku zg{}K)f^Fy_)G9t~OT0exCvFP!NYv=g7182n+QaioosYPEHkEPmRO;4?#JrG_+0med;9oscs}l2)0(R3`!T0&aQ)az(N}n{?;*)HHxQ>y?g#`ZqSd>h=jVN_xAqs^h zHv;8(&g0Gi`ebvSpUS?z*d*J9r%o;M`u_lYRd?bo;~Pi#S?zUtT(5E4tFN^6RFlC& zRI7ftz_5b$n?kFDMdvdr)z$p8@NegPDC#HaGifF%w5d8hKk2I#Wd3xq$FiG+e26!WhD5rCB+QKxU%#XM0k>r0D=i*W;}>ce0jxY z_{8yvru{XHt*9wyIC_Bu_etpEBWOrr z%Jn$(bFh>23QW8EO5wRbRwpV`%_mYk?aXC|+9DzgtEovMl=OwRa$7@RDLN>F6uC4B z1|G1XUvgxu!mGQmU{{RfMnpatCzY6`Huy*6IU9hC1(|Sj_Hw|rez4uSL zl{3U3ZBMSExK>FO-fOe0)evpMMDyv>SrQ zQ+Lr%aeOh$Y1r5Vd!EQ%wwn}K~XNEZ|Wb*_wNsXRr z?dzNCHL7%+jXfS!nj&@M!8C!EcRhNzB6rYn)r@oug(b%&1l@DP}pcDO!95go8aZQqon{D;7unTKs{MTjz0|^+*0XJ20AZQ z*y+;8SK@wqcCxf->GaJtl3Pb>6&{C1P}ACu=cJ0Jgf+#QsidiI+GEab`Re%DZJnB- z$c(*J;VHRMS;@5j#3y|_UE$xg zx{J6y*zR4IwEB9UhI%`8pu3{iSJd8W5Q-WNGp1rDr&eF(l&aIvQb#1!5;CY>lDY_y zAuDe=AWsul76tDj7g#9OtdMj=dj=#@A*C7*BA5jQyv!-I;j-M|tpK}{cUThWOruR=rb(-mDxYb)=G`8tm z%$nJ7l9EQY)qizXtQ8LaI*+%t5)M;_rzqmQ!^C2t$>DTVtOkYAz7e}wCcLrd4Qo=9 z`#U!yBRwN9NjL!Dn@y3j07-Mm$4>E_tndz?>g56sy|rJg)VDo5B(=1cyK$?u+^DGP zD^$T%3HV!$EPhE>D9yVE(n{@aiz)iVvu?IZ->x(+HdrZH4Kf8F$Gev*qbee4ng_%Pvfw10=&x-@-rpDA7Q6odQCr+gmv6hT+n*8^T8rmxF4dMe?bJFp zy1{3sw}-9L8`^CJXS347HEyH3Rn!|*Y%ColhNIEdels;Ds`FF{`jSosP!4UUk)ch( zw1OF!W%P3P5)%UJK2WODc0Xz96$v&HYiH&*Hep+Mf@GK00n;NUcfb9I9xu!yYh^vy znSKm>Lg*h8eYCjut4M1dKdUX&-O26+uGePLmpV$jg*6oxpslxQdp@F}MtLkSRnSpM zSdmm9ccH9@W^JAE9|jl07d*1EMC!}R|EM;kcujdN^VH!3q%*C9k~wV7km zN8zNy`-_udr!0zmHLe3Uas;JjxKpAX%#-e$huRcZQX{#O2(d7^Fp&> zQBgN8*mIGF7}@|oPjl3v7)Hc#zCB-DSMxK-MB{FbM|2So;Giqgc|)t&dYNcDt)i!= zn4H~wv~8PCB#E*l40DWb&+zIiwv7w>DO_xarIIL>?2)?0)X+ej-x$2#B(n33Wn4RF z4ZUmSB3O+w2%0gL+S}Q;XB-yKAAY`iN^Jt0EwI_CDJTA8>8$LNThf@t1)-A`$Vws zS9HToRprYoz8o=jI3Wh#K1l;*lLPC(3)2du+mkMt5g3j5mRTMt-AJC&DecKHD7Fx{ z51Y&U;~k%g4~ohT^Y>z^!E2~%mWl23HFj%6$tLPsjrvC-_j*M3Sj331MV>a(=RU2y zbibkvjGL#@zbj4s4Mwb@OOWDCu%DU_n7Y^IjxO}?=?R+kXsA-;k5ee3Xe2xk-pgB` zD0HHhsHe*J4^q=Nt8kFFm`|6n$pA(ND*WV=&Ii-3kYN=W5FTmx{3LRNi~!9!F!?Rq zLb&5`P+pQ1?ynSpl+JQ~ZPR%PQ8OI$mWQBLrZxX!Q z0=S6v9g`(M`OAVsr)7-&R$5#{N#YwVk4hGsmvnLJhhxM?XK8ysu3)3nw-cyz75@ND z>C5(t)#*CaQR*1#ZS?;Dw`7gf{!xzXwTfYHTx++WTOqYh8D zDki(UlgeR@i;+Q{vDtU_T7F+AJ#tE6mR^^cZ&Pk)P3Wh*hnEhkM(cmG8QitjpNAc1 zZ_M*eTiTBHYr6u{ubCmHwrT-KscrFq0Vx?Zl}taIbuFE2+(~(c#Yo#*7ux|Z-QV%5B1_^i-A6m%)OU#1sbcc}$Mx3>MfrL3lg{{X9Q z{!>4kkxKct>H1VHEym+8T53vo%d@kxAqiR9I(Ey`o~TqvTz#?8EJejvxTZZq-THgR zyb>&(pP|fErkQc^CgcRT<)n=Jz#eRRl=%X4D9sJqN$9^2(p31$@r`zqQTEeK+-vT7 zS4LD+OJ~wu*}Pb#dXQP zy~godsIK-M6>_Yy_I}o@VS-CNH|$Gg!qY_FT{V)+YNXhjcSgq=sDhX(y+~d27S7(S zZ%1B=#)B~4)NRwlR@+(crAA7`)Sg^W8Xl4`Ofv-i`Vk-iru29j-jQ8;nJRGjU)4E(_~V4YlJdVsK9-rk_SCo^8%rZ zib~)DlH$BeS3Q4@F;hx|GfMM2wQb=|COSmbdU8*AxyFtE01cnQo&Nw3j{|+})|#Ka zUCz_G%Sd--*V`V$X^KkvQ`);_#Wd9=?)j;;)uN`E>Th(BrFyEQGDK;TpD}ND>H}Ri zXl_c@sGC0}HBz3KX{nc-(CIQtr0@%=`I1J(3p*}-w~MD^=#`D8r;Qr3w39M)b{Uy8 zZ3#>P#?i24Nxqk^;gW8MlN$*S7}g$-@U7Y1G5B?MAHy!P(wZN*I!ChIv8bT6wxQA1 zp$4JuZMs?IhqyG<6%_3yvf(w*)KtYL^DCKErYCcC5ZhX`y!9}4jh7skpY=z|SOCp8 zMruezrUWEFsmTk1jyY+Ie`B^jR)@5%QeTyBsl0Ycr-+*s4_B9HG7<&2W<{*DE_CEWwvrrOos_!QtIg41_R$x(-DWbw#%2|1LJc- zcv|hv#%(>}dfVJx4cphIv!z6kT=Z6$s)EsP)5&n!TH{r7ir09qAqSNj)K%5W{;l0x zyAMp1pRY`98}j1u0^uOh{{WXQE;uqG9Fq_n$ydI9Xr=awy-<~+IZT+IUBxYf)f#2QdJRkoTXzeVy?BmYQ3(v~3e?)5~YjeXX-;{TW@XZgsI~x@c+Z z^yZk;7N{CZ`R#8TXEZy2lg zdt|Eh8ZaPILTD!t=4VOipH~#$Ww|4B$SYz{6e2VnMjD&L*>UElK9czr#ofifQaAmwTTmW#uT2mp*s$s-VpvZ{VytzZ6qP$i3ckT~rbWe0_n!;LyRb^!mvly6k!MgiZ1E#GyP05g{C}g%i7c>X6Upr=8 zIfm|>LSM0ujFV`t<`H)7s)BK62SHDn!Cf6Vu)DgdY5#$ z3IJ&wltu{1Z81|eW>%A0s10JGMs4%FEin z3_Y}=@x7|M7va;p8g9W!r!Jkb(Ax4YAa|6z*iy6b4Wj(N)PM3zb%SXJs2=t?eswvx7fM^m|pT8)CQ=#igZ&{p=4F zUldhbM7Y`>tp&+v9&&4GD0?|F;*R*)5}TY=O+91uV7AkchJN%_H*dcj-^0Jb)u*`q zx$sBfQmeP}YmHNL*ZP{a@2f6#5neS#!Y76{T8g<4ExL}LUm}Ku3RBX;-dsa&dXzsg z>4K?5m1a+7nY73Nm4~G}S5aiJJ(`E3`h3*Xtp3xzTzFKRCR&sU zc1()ILI&xXYQ%223TaCS#&LXlcBsAUKnbbrL5O5A-jLFMDWeYP*l3Xz3nCt(N^k z4KwX3vC7SY><7%dH)r^D9@=yk_GY~6gNq|9=@9vo9#JRRlSz%EqKvb<#RuBORB^Fp zI*Yv_ll0p_D4r|BSh$*4%(`xxD=X#$8VDDTT@h(u|-{8 z<*C9nD~Mh=L1$le3$?nR?GtqW0A6NBMa}b%W7*yB{m}>5!`canCueIiV@_7c#DhG_ z!nzAD{{T*LE2wOC&d_$=*Vsh`URqNZsv=n_a-m>*!nqA!zD60L(8 z3f4g_c3&L7bXc1|B(FMCF9MR15k0sY;OD#)MoH z{{St}6hjYoK4E%6raMF0I;4!lF1X8&8H0{#&7v%jl)FW5h^KlPaTL`q&yql3#Na9% za-fbvs9*6vH>;_Nn2K2v%McW4_t21BBLY$5Y^?BXHWs72&I(`Y|67wuB#IE@T;%!`bv1~h3i!4N~ z%Mk5@svA7Z2$G}*tf)KZJ98w3&n)@Q)yDvF$3rG3fSn|4v1z^o<%=R#fiX>yCtei^ zm$4G*)Rxt!u|1Jy5q1{m-9N(*Tz6iYDC=&0gYHqKrv@_hG&VYdxlim7OzbTt?r z$8S{|6;^0omg(!fCgrx30$yN8r#D(%(XY2Lwab#k;(mhlYtd};;MkPa1dZmdI)Shu z&fe{pQh7!guMOS)@q5`l0eI0}mF_OT?dF>9UaPd+hKAC&y4^cd+?_)7@mnC7-rlQJ zC}O1%`Pr5fXd@+?0h_Bfw^)%UpO9LyvfR67vn0`|gs=tpo-2;@vQZAD$gD8|*vUPq zMq6%`E4yN8)F4IRQwF$+C@rpyc9%*J#nO09?3MGp6#AdUPm6x%YHr~6>cEd|*Shlk zsO#RNy*iG-sZgDW?Ty;Ld}*%5Sp1cJPj{!-m8}a?BfB1`J-XWIDtmJC(=zUy!6G$B zrItrCGV1UNxvZ{c@$gU*%XS)35R_x0c6y68>#oX;L0nN1T7>x)Ewlr~<)sIJ1h@$6 zQR3?AT#_n#@g@90@4hLuomPPD{bV*?$7xoM&1|5sL~T}mO;2PZlHEsbw?G2hv@Hrm zvCvWh{_*AfO-5bUs~6EHqW7pf&9vJgNxitNAeJVVN^?e+7MdPH^}5J<6GCykQht@a zC6#9_n%PoTc3z%JieaRu%vTaKA^!j*dlSFZTrrBYpsKF4)EdeOQ*67UsivqU>1v{o zDEL`vf&B7YgjEHz@^jVV>uk-4u=7evodi8%zF{u!wSP(}X?2~FaHd$q1?1Kyx)m3> zk0LC(Q=D5*g&)Gd#HWbMZAWu&+I~L|-I}skVbyo-b=PN06#JhpbEjiCq%pY_-?AOnT207~Ch}-{EIV_$=_hCuFod`lf4^v$)px zKU(SyX;Bki>#v%Q*GolgnxcxI{och{`xc&yeFZ6HfGAgXece_SZK$c&C7h-lnA6?e ziMZ2TgD}aq#JQ1x7DlQ>s;gq@j*Fmdg(GHCO=YH?sWB?)h`N1mIz%M%xQ>wmF%$&p zu&F1S97r`q>gicFo4&GJ^wqMMSg3(=WcbQJvD7@$UMwoJmbQ=6fmdQVW#=ZdA~Lo)4ePTq#d?K7^kQm44f8#7dxEy{$r zC<~Iq#SoodKHeQ!d$AyIvOa#2jI&#C33^LkdM)uP}O{;s0 zrmgj{>k7>UskGgS*Kxf0)_pNstmyv$X5Fsu&JjeFvD!(H` z_2s8DzOv&RjI-3r8GSbD%9lvB zo+f`SqMWq%i@gKj3%fVo<=m>Smrm{J2(>kf!*-n06}8m*f442FZAQhad#$bm&_+9t z+=`1q6qfaoqP1F~X;uiOd0pDl*($YWr9`MxwhL#{USfCwx2m(QBBZik^Kz`Fue4of zthC~h%^O{_)Y^4t*0#=b)+D9O$SIAsq};|`PRu%3iJI7P?uc*=N<|OXYCjoo6@B~F zT2oS3bYE!ORCe+^jXs|5A9Em^_KmW8)Fz(kT|r>C69o6E>Di-c)*&LRGOMn4b&aE| zZ4S&aBK2cvh3cf6O3NcHC<^um)`aSo0!!XJFN_zW%Si1&zavfA^p&JIpr^ce(UP}9 zAP&4o$$WB&r(pbfwa15E;r8ao<2J>m_5T26`-OFFJ*qpU+pBe5i%@pDvPmFRzSQaI zrIcz7Jdw=O)EL<&jwoG`T#das^j)-dZL*lGNX$HwM<#$^4gj|><3({j)4`)KEPjl{ zbK)XGP(RXk&QdlyMwd{RyopRXy5E5kvJTrI34lI3ljXe&t9?WynMR=W>{cqs^rpSh z6?FQh%X6o+>Wwvfv{%b;vFd$2bb)KFcM4j%W---S>h1H#xw1m6tggH=^<+#iN+pUC zt&}ppB1!KlcT2Ya09;lJP+FBfdYL@n%eOQJ+qoc#GJWeOJjAsHw3=!jah;zUy_m7~ z`t_(a?x*p=pnMZ8tG$-a?dd%Y+pA57x|*7uEcchXh$Nw;j)u#lsHxG~TXm*5CR&?> z&0ThqXGB3$((BtZv1&4tRRh{e^OH^=h}eWeV3uLr(=5-!NMw;7JWzjXE4Q7#piLj)zeZ25wFL#f zDoM50r-mBKg?(K#2@Ln^lu<_&1s%q&b!v$tg(ZqNnSu?VbtYgvEA4}hy&*}J^nXQg ztlN`?>ocZ3q%4krB2OOJicY=g_JWtGRvp@@{(h?=d3iDNhVgZ%2O+*W3PyE2Nd7jy zKRiq|dffY&dehc9+Ej+yVxFQ}Xcke#Fe>?UkVqGR5)#0Eu8zt27@(WYy|wkp-LRUy z$Y$mhwg*;RCE8IOJTibYK9uTgOE}icZ2Ydvuv$gNSrdHzFS;Z|e(q5TG*vH&Ul8}% zHH(<6-QNov_ zvrA=HE%Qv-p)OX-QRVo&0hX$5-qV|IJ5zq7N(GZd=0{=XSZPFrhQ8CV=xZ$_-E|#( zPOiB+RZDA$DJiL}_PG(HmZGj$^6|NCqA+4_ptr(N}0V`E8|&@K|06Yh6J z6QxJIxW?N>K$6+|WVz2&pDm!M0vIv^f(^6Os_E)2KeZB5!SCVW;&a5WbhK@@9}d0G zrR|odrLDbQJE5w3f2!rrkCV{z=xQ0G=)?a}LrSTHAgo~U`w&|v}Qi{a}g4&Z)gz8LA zZnGtAc{VR&j%AN4rj&~FjU0iJ2kMQRF*+#VfwW=A^ZRvjkqTbdw{Lr&-4qt+m0L9{ zkzY~hP#>41m(3kvPcRc8CNz*SShg=Ea3v=h_V@aAsg?_I=BeBJqa!NXkdvaVnsj5U z5&r<2r}q>({gTUfgFty??T+-5G?@x^M+BHEKo}}E^X__z?V%uScF_^(FIF`A$|idf zJI$)0w#hCV@FLI4m-mgd_YMc7ysJjbBRq19f#u~MQq!Y9C8JWj1N1$7v7?jhHp}f2 zj}Fg_eK-dc~2oqSubRBlZY5&-4WDgJ8wS4jIHLAVI&(j^B^Tc>Xhkju;C1|9s? zjXA1Xb23MVKBfj2SixT_BN!uVXFt8xlhe7(DIn-o%c}nXwf!+Wr8Y9GU_E2X->-~Q z*L!tyNgZ;Urt;bn1ALDg6NwanM$>?DKFij$#@u#jbcrc;c6C5{>0c#VA(tT-r9TlG za?`G=Jj&?6sJ4fa-&})iyIG4pERr5tormh> z?T%~onL&}-X##3(v=^B_qjY+Jzll@b`$-U9S}i$kmKbh77Lp{wC~fqrvo&RJm{tUZ z$FjCnKw*$ucUPMeGxI`6DTxUtL}s|)9pztya*X{Ux?A3;!Z|U zT#!epeb~Ic8TvSza0_Uw(mR&hQW9V5Eqlqh%^^;zjwC zkErNcysfZ1%c81%e=a^gFixpWZmCglB}8`}iVKok!u{?Yu=jTR#1DDE$Kex5h5+UwRrcN#uF`qKmYny73EUUE& zg=ULOrPMa6ydcKR(RGtzBmO#MG_u&I`KX7%u+)UPI9vi0c8szUk{dHZac3(t>$+1_ zTeKhM7G1#s)amvHAUcW}-^JVU1GM)7@h62o!9i@$y_fB^H8zpDTQr=DMW^ldTRtGQ z_SV5H1PY2eaT>keuO>@{YdCW14&mO3HZH5Q)pGQ|w(KcXYFU0qkT4P%8E)jp9&!)O zDJDs&(&D2K{{TwcZ6!#jm!rLxn7pi)3Y5?lyETqIa1j-9fY#eS}=ox-VtelgISk26dw7`OK zBLPtrGV=F&e9@;*3ZI6Lgg*o~%B^R2wNiJ#xIL%Rc1=U9dzIaLEggNbi@6$(IN{TJ z1GkzcZ#v&YR4%m?t>@IGO%BV<+O2|>#Y&}>n^wkISH7shG zE7&UJd1>IfW2ClU(C*GqS*NW=^-9fBVZdf$V^B9P-xp>@o{-Wy3yJCiMTw!Rt(vWM z2WmSxTU!OEU-w4;07czy?@f1#ddl4$rLCc^+E&X~XO?i3lvEm0mf>`k3WA9g_lP5n zM$kH|XDJV{Rio^r{KAa%x&BhCx*E}=5#EDmlH2H8$do+ho)KvcX_N}K&`a6sRXhel zMHi{(uY;zT{{YQ)&7t(-1h~bPYW;q&y^^-Zjr$__)Q>@3HrU#wg)%~-ZdqZLNCa=Q zCj_$Rj-|CKlcO@r?GLN7P)+Em^F`?#zGSk)x=k!xmv`2QJ!z5F3DTG2!^IG?OT>Hc zm22riX}nZR9V|MkPlK8ynRkBEfk&4*CUCOJ7{Mc!+6Pemqj@DJW!!j?R&fYPGS#Qe z{JUaVLlm2CVWAaxq2glYZ^ZrNtp{S(td|H>Sae|+IJZ_^Oqv(R3c1^x7ii_ zaM-M^rsYy$eV~dXZq6z9LMp*-he}E=^a7sQ8nkLC>6H;&?+t~GKvGV9z|J~%Jv8k2 z6Auwg5+_>Zq(5Ic9Z!}?Gac44=&Pt~B9`}re~LV7%@3x$M$pu0U2A{1>DVadhPK6e zwFoNBy7Y-G1YBt5Kkt+c44_JYt6{w@()%@DpV%4Us#By}oGGACb*FAS*76m*WSs^j z$yWNI9jw`EXQT>Sv}x(1lWDTer-H?Uqkd>z-*>ek$?X3Caz7RR#rA%$!)Ir_Ktrs1 zDQgw&qvD~}%9lMEOHj^Q*J!ie>SB;-*rc0Dm6rV>vlXh(;rD*cBt)y&I=x2=^S;lbE1B1!* zfo_z@lsh;iL>*V)_wgX^<^3kq);di?f4Nk#rmVi}`fKINx}sRxc?Gu8vN(x+pv+@f zhnA|v&ebQWCeCe-p*k>nr2!wwP?vWpAYyg|xe=J_bKWu~h}Cn^pQlRcIX72sT3wd( zlhZTJAPO&e8(jcB-kz=l1v(?ZKCijidzq~D&E_jbA8YK;R%&bN)!MJtE7kg@cBZyz z3sqIUnmS2ko+-TFI7cF+B~eau(J8-4(r(EMltwp_YG@6HF0}J%dU8=dCcWUcL*6Kl zG3cJBEi=BX)BshH#K;M!S$7^HjS%TiYL+^AMUH+9egu3oej)xSd$ZcE{eIW3?bnBH z&aZH7UA)p)kM>3Tjj8V1j+0JS*4=K_&?=KmTPc`3Lr%#g(oBX&R2y1rvCN!}IqLmE zvYe?_3js$6i*nH7L(fiRrQphsb!Ccn#4~Pbbw_G4wP~r5dS0mNf;cx21q9FrC8YorL07sXsy|Pf{{RsF8XvdN z>&s_;J10%sTDw&>($}eC?iP`w(=lo0q)Ll>(j-;uvYBYiVIoMfs=F04>FTSQsvNA- zlN0qu$)?P;6WI}1x3zqSx}<#5Ef0T-Ksdi8P8-Mkl4wmfA&`javj2 zbI7|FVuofLJpE^EHujG{AltHZy`2-y^BfGo@l(w@tmYyh(PXHZ86fG4p~-m-lh{h^ z*44~6HB;Iqge4>d(aq5X&<#j`&P=m24I|KsQH-}~RsahJiO$f>PSlkYGZr9vR~!$& zT`VFBYi07Z`bYAKW_!a j*!u8+BfG}Gyi2wKh25>8i>#cx%)Mb7{?)vz)gS-aae`%Y literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-5.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-5.jpg new file mode 100755 index 0000000000000000000000000000000000000000..d19c4453865f84075579905faf01cca2b10e8334 GIT binary patch literal 97438 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�$uIV#D+@jI=NMAZ#rJw0_Z|Kv-FyT)it}Y^JnLob9_+hF*xNNAYR~8=asADJ zUc|vDG1#|@buw-Nd_x`(*t!y@2n4~AAsl<|5<^~?0!q$mkGW2j?DC487qxbpscX&> zA+Qp9Z!a+5FVK~lduTZu(F7NwE+zafTg3>Z3uvlaLfdlJ6^*d(Fg?MVK6>v7-S26v zWSObMsPD51#jRSHDasa0kx$O-SUiq-`imW?(c{Ke>AP=qjQ{P}X3z z(HfH>u?DSXsJAJ`oq5nzXsF}hli2by+$F#w5$~Z{}3A=NFr8%6kc%8ft8rK*V;q1gSNMjn5I+c9;kBuFckR zZJ^vYXO!v6Mux7jv{$MJ zmZ)G3+QoPo81{%oM6pe~iw4GNFiR?kiI^SW>$I?TgFLW@X`f9=?X-dLggjXN6oBTyULi+am@*L5I1b?Tpa~P)fklKtx049k}AW z1zX9?vh^m$^tH8&%mmHV2i?)h+6LC|ED6xLTu504823a_wvtP7TNN~4N4cE^OFXR8+Nqm%O9m}AMmxxFqIpZ^TpAaB$LpM4 zG!col_4UEWJIr!Qx@c;Ooque+eS!I58L2;Z_kN1K(e}w z#44GnuBBvMT4FR8jLN~VB_bj(FXC9BOp}b0GirnMYpv5%R6rl)A1jthMKd_WLf(06 z+M3}ek9^l=S#*{ttzgT>>UE{2Nstm-*Zs^Jh*FVSf-$4KMIL!H(~UkaDi}7XXdVQY zqX#sgZ!xM=Cf>_wvev87L1cF`DFG5~L=@c~sA3|x8m5lCa^Y~D~9f8m2SOP}e4N`Yy4)TZL8>=j9b%ZHW;6 zvD||#N2csOCmd>udh4rKe#Ql}&PA<}I8HOx@}oy;ZG&~O4H4O{u@&KVN-`>pxAJj# ziuEg5=2lfXeq6bOU!?N}MdsL-y)b~9nsraww=U$suWO-%iS!#h0P*izr^={mD_#<)21Zr|+)`M1w)b~@yRimKlhx*x?9tJXHsjuRi(oCKa`BhP z;fj;W{;GSsD>(tH^yUMt>fCsliEXeiWNa*z)CWWzb!e)FJO*D8E=mOHAbfoF&uTdH zFgA|+&m_m+}lpWKG>95^$tg#VmfmTrp2+@_J;=cp=VYGOw;=vaI*OYxH=^Hi4^D2bQMDr>#Yux}K2_c!GNVjX+LMWXCuzq3mXO!kSdufuk89j3@MO}ED zaTT-;!byFmMPioJ(j}te7uI`cyj``oHKZ8Y!?#R3x9qcJ{{Xv;qjT%s=Zg0cD;%Em zc?D4#-m-)3Ql`#rgKe~p8hHj>^~0N8OPKvFW)Za>Qk14hQA(6u+DJs9+iia~A*A{w zq5lBNUBu4)Eu+RlGFono+8v7nt2=un>0^rMuEQ zvCL?4cbAF=j*+vkOunfkQb4dW;KpmyaHooE;f^(XwC--VJl{IcZ{pbHZlt}yApOfV zS*~4=Z2Z3KB7wT3!vlzVXtSNDIdb@tb+ z+ME9XSm$}&u0fL1TixUEDk-o`UL_-*rDN5&o;hnWOvZ8ru5^wIwvL#^CH2*!Bpx+Y z*@HDFQCChQ?Jyw+NOqz02nTS*SI^?DzKdx9Lt-BDnv4nP7_NiGpY@P zJs4E33t4D3Nb!&XyiAIKT$6l_NOu%UGV9wMJZjX=xQV_>w|FDOBvF)B$SK<&0P)wZ z9i7VTjc>TOE+Zlo+uWA2iyVoF(&8Aiu_tUyhyn0^ww-O=G=WC~IeNnTyT&RXtThXWb=V}od#)j^p=P3y$_id~ zabH@EI^|PA8g@wu7ungJq-$##M#J^tw;L=fT*}WU*UWB|x5%=*iz%07v?b#DlUX}y zd0gFWX!P`J5_QV9)DP{6$nf)uBk<%zoiTWpiKM9HJoCaTrd^F95`~bZX>JtPtc4>T zaPrA2>Q$1jr(%tzPyo3Zx`HaFxKn8F+(d&Pn;zms*tfX^On(_`P~bN9b~9OGmrZIH zv;CcSX=?JlJfviqI83m}Zsy2${w+cpHoiE3HUq^o^&DK|0dS>ij4!y3Gb`@vsS%lK zDH6ADZZuSUDue=c6;%~T%3V};2}HJ!f(Uw53(LD50)08YncdFo{3~D<$k}u~nqF?% z4>OVN?UiSa+V>RRmpW39Hv-mpJwqcCKv!70`-g97CC030L~vn)AY?=}-2CFXf;Su- zyqw$<0TgUIh}&diCzrs_K~30=R)&J8oTvVf@aaBb85jQmY}`2%6Xg57xW9hVdmZ{$ z_OAvF&1OlA?fmEMAXhh??A4KxMTE-$j<+8c#sUIY(bcShb?;`KBXj2C#%s%}#$3u; zI~8+v4+2_7@Jr{sdt_bR*qy?9BIAOi6!;%+_m|%O99eYU>U(joSE0SQu^7o)5;N%7 z4T?vL5<}l?z%bhoJv2{I1brsc`)EJ3N2?&Lq6D&4G)r&#q3YZFFewQ*mqQ~Tm<)f@ zj9>gxcIu_){qbT1WgR6UlG&%2>mg$Uf=L7NkEf15pC6xZmrnNDB^fKt!|HH@@j#U_fWu4n%MkT3Q`zx}WF;ls@oLI*j2Sj>K<)20K>x7sJtr+b9E4VS6A zXuFXiv-PhiVm*f3ktiUOgJp^gVr}F>4=RnSuO6aylPGdW5Ea@|5(K<@c9!fM8LfLj zqwO5+BfLnGKMO}{ecVn6?j`>+6uW*VUBMF`RD_fc0WYwaG1NZY9W& z%NA2@1m?>YJhZJR0TKCVNt}_a$Xm#$)tXOdiGqW~Cihb!RhKZuI_^ZU;0kB+Dy+5P z%xfE}%o`*qqo8I2Jw^!v5g6=I8>o`Wa1KV@617|Q_|3K@Q*r9lY&uHVajs$D<;vuGgU*bIN?;zCyiPW!cNwdnHWHTD8T^GDA9oZMeMIG(pKhB_t3n zq&k6q_64rXMz!W@lQ3?SY{{W==3;c}s)|Hw)kR4xQu(#Ug?4j!mrll0V#KC}fZ+HB zEw8Yem~2a{3_BRAc;Zx8TiDBa+4ngEKztrI6%@#W$`6$4zc8%KbEjxg(qL0AU|D4V zZYtYdsNoSv&&r*@H(Xielyq55FD0>ds)6^7^Cyi)%IPG@03xi9q&~4a5A3GZt+SQJj~jr?(nruG-@_ zwJ$M()a0X#SVyt_HR`JQ@+!_Vsvz7rZjnf{ClH0_%!%?B36TCvrWG4BwF1*Eq)7$T zL3Tt&n~7c3cEw1e-6R}JjyYC>t}czH!9a*7*ePq5tIgL2XJ+o(UiO`fRaZ&$!pjr2 z#jN?TkG1x3Z5(P$Wdk8N;z<@MgNR~HI3h{;F1fqpRN3WHG2X+wPUM9nPW_`R#Z)~) z7}sT-m$Ifs=J}0lG(a6ww&o?F1-hd5d2uvWWB5)PJua_u%BrgRfiY%kFfGXbATxtJ}8<2%`C;9^5@0%Bb3H zwh5M1#U&JqCqmn>B?PwM0UuYF746$j0jx1y$*yMSS?<5jwWRFp6Nj5Oe6sPQuEy5r zT%BcT#Nv?Mo+_=AYhv1yudvtm_!~fIod$}!wzn~0D)M)zRmD*gG!tkHgtj@N2$2<_ zav>6oixjmvJry=zROVa6RJoC|D<)bfJZy^YQJHRsout%I5Bu!y_OFE%W@5@S4}%pyBXoGdA2GVVd7<~pcc-`ri$I}0|JnsN<>JX z9=MJwyB_YMuKP3E74bVPibBdgT5(qDs?EPnthI&_ci!tT6z*RX=Pcjt5MggNC*w_GwL`TePBO>!* zr;udND?Hq_mU(Y`NkGh$>U^)9%&cNNL{n-G9NoZnhnwh5*|rYm!)`l?xRapuetoia z)gIK@*4ZAfiz2F_XB8$%NbXXWZ{u%_7TT2=wO8L31W1XpKQT4MdDc-@)^bV}HI%5x z2s#1^ZK8-kh;TstjD!mYYgaA5JRz*Rg$xdABHc9sSL{Ll{*RY-|r01-4;`5+lfv z{zq+V78@lI*X*Jjj5@^CMUD&$#$ZY#)n#uVaCTo>PX=sRwM%gj3ScLCmgUezvYHmn z#S#(uv8K!Zi+J-kr?=>I$XT+Iopa2ysVDV;z1^xSAwd;H+E!TN=5W2mvM>(TFFQ-5 z#AD_spDf&t{_fbaELR4hs>y;q&8<|6CT*FL{i`+6V)K#lt(et=vCrK4r(Q0|Dl4c& zQOvHSh&gSWWbu*6pa8%LIBz&zz_9>Jl*C65{{Z;Yh+3k|DtXj-mR(CQdC+r~$i)+y zO8Ka^6zz_v;Vsta7Fi|-?#rF6#qKx0NfUQV#NWg#afx`vF1Dq{XtA69w}j-yV~^w3 zbP_Swj@DE*tS36mxq_xp-WOhZ=t>-|IJ-R@uAFLfdZ2BpRnQ>cv^cA}z#EL+4N`rg zTSoZJ@W%*LaRqSEaPD5^Lc9bnR11#sDdI^IamBCz5ZPfF5OybaDOgQ!` zJAaPZriVmS{Efo&z`Cu0$D%ot%+Ns|rs-f*Qs2yBc(WEMD|HR_iu;*8^p za>{zwN%t9T*I8+qNLyqJLS3U`w{Q$bUTb3WiufNZ;0)*VTSZP)6@gDu>&Vgyxbwrk zH(o%8*sJC0gMl|2jhan(Yq4BtV6km8j9D1P96_&q{U;UI8=a2EaHYytnsA8ZNaiiK z$j{H7rfQz4-dG#MODPqRW_R&8jr+Xic!>IOpK;c}NW@gNSsbBd=?!-HcSp;JgF4o^ zl&8{Q_Vx#rSRn98 zcIws3c`rH+qfW)HpoJs~V`$=vdScQ5FYYliC=LrdQ2V4+IbRCJmO}CYk z=D|$`BPDuz5u1Cif<+%xRd$HmUAo;i<6|+wtmyScmQNoBSh(~U(XuM}SByul8HG=Y7Rxw~G{rY2sC+ znH2iYFut5ZL+wqlB>nKfmzY8ftCWJ<=JPcb3AA}*%m|jA@3jx)UoVpt^;y*oE@)3> zBE@AJC2=xBRPqzwrP6%XMCn`pAO{tf} zHdGw@jKWZz(Gos>r==C@$cjRv_UHx0Ea_<;rV{o#G^ZqwynIOBFN&0wKwgv>3U=B! z&sSB{W_2X>bwN0UNU#Cr)1q6T0(U3Df4>$pth+PQxD24T$)n5L*>}n3uk-d;l~mlN zRVQTD<6-{*4ljC(?BnY5yhrzue7Ymp8$Gp-9by-B%S(JBHvTQxjk0a26CfgfqTF9p ze#}oUYt3uql{MZBqF<35a=EnO`%n-?pB_B^5j~Tq{)Wny=-yt*N90U+YU&az&MW@_ zKhKU6Pgv_dJ{MeID7?tL7B5}IRMW?w9+#3L{#T~{gUa_?D`WEq{kZqFR1ryP2(<2B z=0C%P7c}0TS5^N2_eZZ?c!<20^y>xbnxY|}1XV@ypX7Xa{k?c{T&*Gtl{6+P;5%^N zYph-1@e@PpOe_Wmts}DAEbA?P5&57DZ|Rz~Wx(Ony5mWQvRG0=3{J0w?{sdFdA= z%8^D{YfekjAK&o9y`|zpA$X>%+qWOCw9cEpj1evMW*V{DFD)Eew5pN^@f87)Tj`lE z$K45hcrSA4r;uePHcB>-eh4Z3{c!cFs1+$Vq<*6E{hthL9+1-t@k>o<0GvQ$zmLRK zVYmV@7JLTOBcTAHGZt8gyhy$k&k9DLxl5?Shq8cH)w&dIMLUF)NPflt02UEzD!x)d z^$JN#=2-s#55ogC)B0(4E4XR$dOYX1>hH16n~c_6xZYu!V^Z=K;*b*zTfJ9y2|b{B zrc?pMHq+A{NWC827_wZ(YMy1m5&=lDD3@K`$$2ii zr^|}q+@I{`c1^Gq+dX}q?p;riH5xPu^Oa#+uqoh1h)OV`zXtL!KO#F~MaRsKB&0l- zgR#t|uCfy`;#Cc*kO+JqkH?65AWzUZP@t(^Y={h9vcsVy!n zb!T;Yr(@&tE9bEb7s{~<9d9+~ra01}&ajL#d=v`352ff4E!%P^;TvvQTE z8*g$eN6R^sw?lT{Q2DGf!3yqFKt!%TPUx(++0d8Faug)!F^_6s0?EFDJ>%eGT^C~O z9KR+zE2knx$}o6MZg|jJZ_nGBAb?ou91N3CSxhDlP1)=f@f-FucZuqJ<(dJoCP&ybk)S=Z{6xwNAj1Gf_Ng% z)@@evAAbBQxiTZnknBq9kFb=?iP4nZA5oDpQeSW2ORPr{zI0U;kGAr%?Lvf16a~~0 zuo0oI(Cr~hma>TYv1gU?-pigx948&8C5jRW2@d77dx%Tz+C4FQ-MxK1Hb&i#a}yQq zX40a&9n2~*_BIZ1^==)3<=Cx;IK=rG)-7owsAt&0YQV}9@O(>mkn;5$x_FS(bWYEZ6|S8dG#83Xc-RhMeq9#O2&Ov5{Q+I7b^rprE5=;AO-?k(kJ>P|5BX zIs>=}Wwm?@ZYzry`g3--x7RhJ)|-kI-bF=->}-w{d~VZQXHGK4A&J~vxsX^=SHq0$ zZaCcNO+>J5(gzzii5m4h4<=PrW)zf8R~u{Wz=&k3CIPx2AW8;Z;#+@uI%96jIc;S? zup)#x2INLgRx9sy# zV;H_qiCNmprM1d$F~+Q=urAPEg97_<91$iPc1P}BwS*4T*H=;sBgsmaGghKVfYKaJ z1?3I03tzf2#sx!`*wjgB*K#5Yv)rfLf}*=r{0Oj7@808bZ6V%vr|eRryI9yBRoty6 zF>%}ey0Glm4cItb3QJdHP+rzvXD}>ctal_|(c}_ITxn7->Ocp@q-&;5)#;3#cjJmE2(bMNH~}_r*}Iyw~q34cVl>8 zbGm;I&ij(9t;qX+)mcAj*)~B;)f|{IAz3aHD~|4(svvvaZcH<|C0y z<&5My7dpqUa#Ver>CUMs-JB= zo|H-A1=c_jEy>)ftF&TY3lPT^`86WfXLK|Tx-Hb!JPipF^3WB+u&Fz$SwGWke?1SV z7EhF58Q*VDXl%B#RpENi0jr&iVYqFLrdLwc*u6=Fy>#rER+7syonebBg8u+6b?kcX z{eum1=hcS^{+P}k&a-UyDGao0m8O|up#~#B^~w&kqy1`((bu<@gehUZFZkt*gNGA` zGQJt&Cv#_MMxp2G*&+^RX4&;&&_cH<2?Rl%h)R2=N`q{ACrxgP?3M-e?aj7k>-t)j z?%l_-Cvd4!@^~OonUD+O<)m|d22vcRhwtYb@L^F0$rh1?UtD8oEt^QneIwChtdXY{{ZM5*|Mgg%b#t( zXw7O|4WX+j@KOYMt`vpSh17(1D9PLornI>3(niP3JGadwX|=`dme;rEGn<@xZatnk z7EBiDDXlTmVmv%Kn5hnWH7&=Drw8o#I@zHhd?&=&@iA3dm+*PkXVpf0ti_fh2n2}- z42)(*F|hrQ92y6I{H8ir-bQS9)4WyOvl<=9q7mb$Cha#nF6?qkRL80 z{oUWDnA8=MD{*Y8?US9y$6Na>ZacCv3)}0M4FfQ1Eo4>%sij_n;gXd!QS(MgR!619 zI+VCai?h1#(tKr@Q|0ct=XKF~pxNyXSTZXEPcW%ON6J`;K9cwYg|hm5uYhuTyvmlH zxQGKhnr~>j4Atkix*n~hMb`meZ#h2I-dToMw>yl)D*phhS&IC;29ElUR5}cM5<6(M zqgzo_)9c~`Ct=~WaZW?#+N_cgK1tHJcOuFu+IudbZ`vEB0wE(3MR3UMWL96WL+>Ty zjwQxCOPc3dm+5Tb;APjG7GxH)Y_t+ao04`(d%KN%*q`w_w{9hC+~hZbihjkckn$K8Rb3!>zjO zi+XC#RWG$5h`KXv5hI}~ln_w5cXtV3+}D&Ctc_u^vgd0hMtAL>$2txXX(1hR}JeqRMHiC^N@hY{~k4T0&TW#yihjAr<0Ea?^FC ziK_D#+O5ga9#+BSBy&+)$XBO&+zK-C;Mt-2cJB`LbaYG`QEQ11WZz-75r5u3bT-(= zxW*f^i%#3tGVWzGg8Ho3gy=?y%k!O5aM=$AeOf%zFXUW46fKL7wo^0$L@vlo$$B6b zkzVmB4%NUkbq7zH=LJ&Xa`YC6MM`lcQHozuATI5wCH7+Q`&{}6X*?4y!ZxmLpY1)H zv++zV>@sxBBP5xp^>9~O1arHodPQS@t=(5V>qHKq&V+KAUJl0Uwu*tu3P&kl%oKU0 zb>sknC@OYyN=F|o(%(^H+c(ZnKd)}IXhxlBVFP#GSwpnrXeoKSR^JR>{-f>3Olc}e zboeF(iO{hTlm_BZ(8sNWiVNhHL(U0Hx{=L)=T3FU5BCsqFFi?4(=?(@(bJ797raxr zzGF4sOX?zA0_%>x@xN5zR#aY7Eu;ILx_D`(CgxpTqz1#>5K>DkyFT*g+UV}=gAcjK0?2> zQ9O0!6jj~V2nv2>OC~f+-3@Octcb)Ur*oj$H$Jmh%41>xMHT;h}~DqraTF_*#{93QZFcCTm(%O zQBYApe13l@UhCJai=z2`KkCDE7@Q)bx9?$Dn_ftXJ-1#_UM;=~D)^83l#vw%K#H&J zRq~1ZOQbbk2q;^RUH*Rujl<=HZV3P92bI{Zx<0$7f;n6 z2);phsvxhiDvyQtE~HZKk#~PTG{3hDRn(A%C2cL-KY4Gj_xwuIWHV#6@wjB^BFnPTx#^KQ~-Gr{8F#!^ckr zx*(YVil@Lw&HLDaF;3FERlu^TnYI<%UXa8x`LiCelYNhC$~wn?R+Or9ZrO_-GDV4g z@sF1!w!prB$(KR7l;vkqHEz*^jUW> zu%Vo4jEgFB{{XXhrq{+q$dO>ha*j+EBNF-a;(e4@Pe*K1*aci9PM+%(#*nAYj+L8< zA_FY+^j;Dlz1`t~$!T{BlzNqlLg9II?OX2kDJqn){O$gZJ-u$70pBjmx7`|7YHGYM zXXu{ewVgIwk!zf`zMkIqHycOss-v8h3KhS1SO%@RB-&vTID^gyj~!6vH8hTJ)pav( z54H;}k~KY4nTnX0lv8N$x0*gU-{n+Kx0}<|8zt=IN4u(T6^7B*ckIDkSGKkuUEL>S z9rj7UD&lND&NQACsxS;L1^dH?>^i&^jHC%!Jwd+f}0oJ=P-?FPN7x?CF%zKd;(=aJjInRv+ET-v_enx!c- zu9l!Gn;;-c!Jg5A5b51-{NEF; zF9JTtA^s%HMCBkq(VG=fZ`dzN-)1fMKKi`s{jI0=2BWm?(`-Z?gM(zaalW}ex1CV* zoVuEAQ_^oy0JCaJzz{{Ts9L(^1Pkx4wI zZ?tf^Sa9VQWlxwd6#)Ayg7B$j&!`zDu^>YgB=sfHKD==G+>d@6`%LWX{X2l*`a2G= z){aELYO>sFiiYW^)p+G>S0GhmmUjmsig++!I@lX<-d39-P!~c>CTh&7>suD;T}|szS}2q3BS3{7g{jco7o~)W zVnZ4ziV`w!a{k|*uPK2jDN3G}j+UND=X`(>V~H= z%`0oFz@(0yT|$^k%mjuo+vpLJZC$uD-q3jO^_DkBu&lOr)wIdxJtke2OPAQYi?JcL z71>9BQq-oICmrJAwj#-^geB@1P#WeH6x9apQ8qN-BqBQ^Bk2){i21D>_zopTa+-H( zkf_1uYY1dyDn~xInM=3KL|T{4f};wS|aJ*nmUxQjPlW1r!)7#)>m*W2ZDDso(A_EWV@Plaa|CHfqeB~?6}D@i28 zhT{a<^F!p)@&rz!ex=?R&NF5x)800Gq2~yiM?x}&od{AZ>eAQ}Bc5ehTeW1OQd1@R z_d@On*z{FH9)p2t#`27c^}J?QO_}Ai_7%`z<8?MRjw>$F^GG!$+60;TVf#{mE2zk*)nm zDnh$O65ZBGV(2?Z`Y3nty7JaG7E6iZ+7DJ_8s5(ZnV9ahu>P}pw#L#dvYSP$s~r78 z`eTq9A!bdRk%zz!AS47HmVoQQ#@-rrdG^;seboSoNhG8j%!k8X=#uTgwT{u7e3E;V zE^bt45QuH?mci}wc8^SSf2h8leUtVzujgdj07GinSA=QS89vyrgKq`d*z{(eg%=Ul z(R{=?%{>{nBden&)N_HnVbzN?ty8sD>#l!Cc}dr|d#QY2TfVy~YF)#M$EsYZI(RmM zZ*;zcPx9pAHC_t zf}%~UUv}H4m+|d{@B~n3@_M#R%Zo`R$72Z+qAH5GVZ=#9y^&Yl z2ci(r?3$7eB16*A-~2z7eBaODpc#%X_q$h66OkGTw;&t>;)&&XimE8|wiI3WB({m& z{v0VvJ#es+mA^-3H<&T(L9?S4;=1mP*FVb8Ds74fP@GFo_{}&9^EQy zWJKMF?u3MhN=f|o;hB`~9YupdTRhij>&!O2T9G5~^BlUP9EedOFZ^tV-L;U~oJLdr zW1>6+z8-lm9+@IofR6INm{YgPGK`Dv_NQEUK%7_rkvd6hAgT28MG{}ku(bbQT^XBZ9kUYtbF@IAtdC9%fPy#qD#dK$#`Er z-=E|BbgGJ-0?Yew%?U`CaSDGn`u$k^<$KC%fXS*4l^-fRc&EB42>Dh200^t?@#z&8 zs@tdWVHWBlhE_{n#r_;>ewy(SAEe@QUrjl-B#x5%@%KbPA3b`@=GudgM(RXvY4diD zIhn+J`z-)+Z`L;v zO!;+&%p7*BFRo;%TOuHF&`@=vISLj0cVE()T16anS}JDPt*59Oqf$ozb!5`_u%t&+ z5$(i5-5+$j1F;^=`w`uh+ZR^gnvY=VY)1>StIo8(O}4VfHl=e`)=xPSO%=p)iI2NO z7ssQ=%y*!Xaz9(!TJpTrQ&jB(9Jd$;QA?X004{(*ePlzs_p#3zMSt4~NZB@CbSw~w zZav$EL%YKS4#@6*erg}4jGYDW-d}< zZCm_<9!p0pPa%z9Fvh*62Z^>XDz^B7dGH zWl74X8W##A8-37;TvFxHZ5w>u*eiaQ8;}10mPr~jN-*+AvV|}t_!8}4h7Ky#68>8qRBaU>V`InYqrNL{Yiya z2;YJ|CfgrGEKBJT+1umsEPpy4>npU?9@yP@HEkqg&2WzAH~YB@P~**g$1v#IHt?&d zTxA#rgVFR5SYQ=70eq1@U0cz9kNppny4{?s7NYpYWgceDswKJ-?q8P>zwHBCSke-U zWT-5W^c9Bx0R2l6+)VRc_Yd7H4TrDsdyHco7*ts-ntYO;wvux$V7SCwZY0EmTH!Gk zGq&X@+7xq<17c_M>(zh+aBIoTeV10FmXxAGfn>2E6r-=h!*||XDq>p> zzh~`RJTFhsZav|#^4fOsI-D0$;)?yvL>C+f-a6?~k-4n9>j;_4bv-5(Ie7sNT|`xN zOjA-cL=$1#7_Y#?ilb2FseJ9fqEiHxie&u&gg(__}=;JEokdPSVJQNc%J zwqD&r(;1~xByL)+&Vv8_toVRn5m_Iq@II zMAPKWvg?jiI8{#$s&1UE_H_Z5l>SMA1qo%IyQ z+Q_p!MueVwDZ^^z-Q=R{QlnPX&{ou)&4ulS+?5l4h9z*guS$*TgKjply`SO>Ip&#t zElE(g;+1o9LTAqyU$lns^*PW>YAm+nUzhzG@qTZWWqI2aZByi#tWm0?csWfGIm$t) z*W8gVs1HEMVq>vUaZ+1Dx%>X%qtx3&%w%O)o;=m@9SI{UrSTv!in*v7%8*7!~3PCp^?i4sFi$*YwSsUrlXIW`k$ z{8v<(ckP~RxR|dVUm^4I>GZ&Kt%w2<2b#%i^@(*Z-qe+g6-@{^%upaTn(2LIWRmWQ zN?u>$#eli9^UTv+Ov@F$n~&L+KVtm1V`LN=9B2>9$8NFQf+F~F#;qBShQpkJ z=G-=%Xn=@%nb9iBcd5b0Dc^8T4v%mcq=eJc73=kF#orC)jAWcclI9tXP{w(dP}Wl& zWgGjcs_4n&3YJ{9@w-H729Y2;5R``i$8Ud8J6*A&C^CJII;IY2-t>vu<(oS?k_JhO z*zFq{#)}NNzQ`#nBG}@zclLtxN1X(i6|$a=zM01(FwSL}>#yZP{XnAE4M0(%N0HrPnDArT zy4s4(%3F9vX_Vzx)VB`fDU?&yMaH7TfEg6a7){PICK>5DpE4B!e3yDQDJ49d4Yrp*VK*fQNc0}nDa1x)j& zRP(h&z%pVyxjp9z(?03pL_vQ|-Rc`?U@OtL;Ov?o>q(z(8O!fONrKZByL- zG_IjvPLLpJIs*!Q>D2w4d3V8lk^VgQ8^}4vqC+}i2Z4m6P6^=j2 zX@n_V!0l+>KT)JoPa-7aY!DYDPs*r*se67?@z;i^t=g!VL}=HUXAp>dFqLWC-a%7O zZ+Ux9GCh42CB5~N%|~)Wjn`6F$g{F2(OGYlnICBt&rP63HxJ@J=cz^HB0x*DL`XL) zN9NmcA=B?`g{P-^_ZelP-%vt{_tk8OUYp_?ce?xvvwA%3VC|QgBjY9XuGD_ z8Fuhyq387mnb%lV#EoU9w)QVRaYAj&%-M!*p<=Ks0@EOg={D?ic{~u06Lp}<3n^6Q zWa3k@hN21#GIFVU(*kOp$k^VN@R98ai)(b09I8bL~Xuf9hRo_s10R0SY5 z8K#OPi|WRH)V`)!UKxw_&7tZw^>{q##(}gc_9Ho{?5I{5MFr;M$?UbwB~(y@i0dkx zYGykcrJHml6Ul-odT}b8H%1)Vm}!Z@<<&Uz#i*Dx03`7=(^QO&$;P0BcaVt46L#Xn zb=e|SJ(yPW6kn)xU1|U#!;Ly{1eCOJ(G}7W=vzCN5-q>h3wJ`qFbnKsSYo;QZHXDQ zOd7_k3)nbiM2lh0pqE4c9dB)2)YdusQ|jlJ46*!U~A>-GQ?|) z_uIFu^ZTvEndu#eGy0b#+gthBEn>SZ$Qr(Gk%k&ePg2&^RlOCfOih>0^1}WrsQTM2 zgE8SY@1nC370sEcc~QqA$r~(_VCjJJmx_p(+98l(z_?1s%5 zj9Hnq)LwbvQYj;fXC{ma;sU9!ZYMWBqTTdHqXB`hHZ-iEt!b!Qx?3*VmC8(SHrleB zD{ZT7eN8Y~wW^_mDhSBMYnX8vepGL~F$nYd_%r5|3C9JG)w*JW4i_~$S`Ol};04H3ea*Yj_K`28Cco20dm%MGuZ0nxD8|sHQ{SoeoKw>gvSAIK~1pH^_1tdAzUW?TtX$nBASm-Z2X7;WR}hn>_u zxkxicZNA8muem;5-if+oM+m5Zh)u#YWL6_}Tr)DD%IUI7P-?hpDyiHn8W3}b+Be=d zv%vutRdf(5tVGtyZ-crvx}k({G3KA2)EzZZBKBWp_@a;f{PlE|B#I=xm;BhvARw;N zQTx76yXqpwNc)R)IEt-ER@JgqAt_Jz74h*jRdqQpkI$Z;&vismM^Z00!yZv>P`Q;C zlIgcy$?5XrY&M4BAyS!q^ZS5$8Gh1j& z<-hlOacrMcEfu>v!1_#mKlGPx8dGlVjgy90Ma*nh8^olRCkGv^hneECoSBxq;71ET zyM8gZ6%Af-r-jr)4vi-S9?9!mB6*>sZeoH(erqj|h})q^cX_^CXBZ|}tj-%J07R=C z?lF`^-2VW_hjs}a;i~s0$^QUn-lwway%WFR?p_89to6%!-d?J`3FDbzaw~3ZTw9(W zY?zqEjN?sO`hywwL|GN*(K)m2y;DbA!`{#w@q417iU7pY3Z2p-jFRe`wJbrFp*K-f zP7(-2gi2!_=cI4)>9@nW*i7t`RPCKv^eFBJvt7ZZH;x;>t}%U$h}7%%^=4IXBI4&` z&6gt&3R?=ut}|;4-DCbe*3X4_kSu}$H0T`R_Nu8{cA3P06*>^ug?-Y@q=b`{Z}zU- z7fvGHU?z6ud&xwTsV0%~py0Is0B5fO+5NQkKP$JL`K~q=rrNmf%(BXZ9L+HsdYBTi z+q={{*|m4F03l8{d^oO07ZJt;Q<``o>dES=TC=7)cLhn15O@n?pi?-hd~{!%5eq~$ zFA_B-+)-H!qqZsA_~V05sFOMV58l6cFoKgGuZ+FSZ{en%F@EMumm_Q&2LeOnZj(S| z`h#id`0zvLtasN3=CPDPSey>(NdetQ^6g1!BA{S`vDZA zGe1IVkuNST;~=x`^RRtS7g+Y+t~LJvZrJ`x>s67eHH}vCfx8^CLwrUn zPC4cDoC*Lu6uL&UR_f}+X_+or2}MXqd3x&Us&}rNN9!KAeO66Pms4|Us~abo5+oLt z2%SGD3SCHHeZ*3b_h8A-vsx@W1-sap&5N|yjweSl{2mx>Md52YfqA@uhy>{aD-shVaqId8Q$myTfQfja3y zrkY;&98&ENNlWU-I(^1>QNBBj#$MApyGrFW8d>Rg^KO$S%S!~f*fO$d5w$!Y5x zIxN6jZk%b^4`*dvY{r=c8!#6+R}%pdF7E=K=!?fxw9c>88qZ!mCb+Dz3?`!&uy!QX zu#f6P^^l@Mn&1J+gvb~+E)WSAwuj((ds9DKPQxVCG$bJcg3O4=Rg7$1dRp70y|}^G zB30&9mCA%H)H>;e<8i*EBqb>nqDnpz9ZMG@+edQLxPGF+tMb_)4g`qSj7GWPK0LT` zsph!?D>G4+JyzJAQyx2!h{uE9ZhRNyo=&2x=2NncX;31vEA5xgn#9o~-QB4nVw9<` zQBc?lID$!GkC$;t7sfUi})|wjmH~+%ZeW*T31){{Xxth@1o=CSJ2D_RjvY+ij(%+Fc6(gSek- zo^z_o%&&c8)j77m8(b z+Fi;FIZjekue76P4-e~0m31jbI9!5yX00;mbo;}&>ciNX9IUS}ax1ox+sN`+B?a3X ziRVuuE7bDkKUrRKg@t8_PD2BEqg3V7+sdk0CyY3XtD8`yZppAhQ&`BA^#Hd?(AM0flw$o*20*mft03_jfDfqXk%>cDqk)<}B3oBu zMzWRTy{ROBi_08Q)cq#8R+Dpu@`j|}Bt;mA7zn}#$uLDy4)ZA*=t@@<#OvGt0B{|> zX`I(8&Er~T&fI3$^c-&~gzZ)#S&Q49WwhIPnG~w*Qi>@on$n$D8J&z@M*Qtm~ zrPtX<+6JDc2Wnn&6yE3zSp*RWZbRHyHS7D=?ZYGTk}n~|Bu)+tw;Nzn)K4SJ)?Xrs zKacx$Y6Bs-5|Ik}Vlw>SRB?eS#3WTF*7w4Z?he>;L2(+-u-1#1viMB5fY>ni5ixD| zMbC+FQD1cY7g8fGDqBkz)+LF3rIjTDR2Oa1KaLRW9PQr4v^3b7+)+!yDP?r4;Zu@% zZBg{{3W?+Vr}NT#IR;mS?Zc8Pr5>cRRJjQecq)&V@YfLZ z4%>T8s)3PJV>G?G*VE*;Y~@)cU2P`6Zl?bLAYwwvi;&(|1V2V~%QA?aYEy`=u;CK6 zpsUb}l~5?uD$}zXiy@K2sP@EVvv-tYBZ7{;y~hQANIXx#nn5KpGx~(WI$Nx}yx7~f z$MnS_Eb9${s$e6&JxSAYjCvB91Ad6BlS$5IV#8ts^74&}2jknR2AY%zNXDJRXQYLZ zjkb(TibG-AE2i8F@Ajbc9=hLb#zp4(w%}jQG(T*4{_NK~zVmeAmr`|u(eAN)1&r4e zn}Q~5SrU8-EbY-o7JCz+!?T&`KyC1@c1blk=1xN(qAT<*R4qCkQ$t3=%$Wmb#-g(e zo%U`KBZ?_GZusrQ;aKxjPf(32lGGAR_lu?iS42HEK`+KSbi~PTwshV&<1J6zI_?CS zj|jvGIYoSTm*lMY2Q=R zmn2wE9!q) zdlFraHYZ~aB-5=Y<4tX;2RLJ_w^?cfKyDYM1Z2Le4y~> zFisnSyq0e=u@_F#+vPGV4}hv}z+KuWWE&4weMvEm(+^@&SZvsvw>`MBrLn-I1{XTV zHg;upY{hIi)@d#kK+{Z=?PwE*`%jZ5@Dg(BRnDJ(C~};r!<6+ogsx)%Fx*5!JEB51 zODcM?wx!5vsj~@%V}n%7(;b3RDM*Ggkjmw+YGb3G+&i}ItG6E2duqftrsu}>jitQ~ z#ynaMNe?S_Mb$<#va$+Uvm!Y|O(~)DB#5@)83Tf%JVU{A>qSoZEe>9&`*i9wl!k*i zEIC4+J!Ys$xBaotGa5>VGhERcrB{TiY9yf*u`8RmTg!hD!AS$^DcO+VZ*1W1Ulu)f z)@vJCKbWOA~w=?P$@0e$+TtKKMXC?{YiT#vBh$%#=p9ZG5k{lJbApY zAP~=E*5hlI%zD2bV#W8d;WkQqxY7ZU5hZY$`S?yfK!yY)@3b~4aS4;aB8pqAr7fhr z-dq#xuC(Z~teCk1i1L(*B13)M#Ub-`97%eoy&l^8j(a4;v}X9lHqJwh(#FXx=`rb9 z8?IGSExbrUYdo%M*ajmk(`}LBL_|(|4-_R&4T)za$XO(j0SmS-D3T#}7j@Umf&>kt zZ3<%>=%}Ed#cQTNn_tzM{{RD(-`{jtR2lYiGc13(jq7ccLRvX;V?d~zGKTe;5F`O` zv3z2+Y)&*Ngow*teUHf6Qqp#du7g}fqWN;^j#V->gH%K!wCPT6G-G#w#J1>5yiGL%j`+vJ60p!Z+tkiB zk2g>zk=#I{yA7f-81(P9qbznqt9!V?=f?iGw8AnvtL)i`R�(`}gdmrkI;yV=2bn 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 YU(yJQ10g~5iV)~94#8NIcJ9aj*=QO_n*aa+ literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-50.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-50.jpg new file mode 100755 index 0000000000000000000000000000000000000000..7b391cde387f21389da52c40ea427b2c67af0ec1 GIT binary patch literal 69898 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 z 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-51.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-51.jpg new file mode 100755 index 0000000000000000000000000000000000000000..21963c90b16543b4b1699903ffb2d266eb067261 GIT binary patch literal 87083 zcmce6WmFtZx9*@p0>Rzg2M>WHHmgW}DWOT;#WbCYLoMdW- zwoWc~=428!rpC??dpk>GCnho%I}=j~nX`o{nTUg-@%u^M(%96_$&`sq!xZ9VX>Uiy z&cez^X5sAYzy}1nxw)|z{tL%q4>1SY{2S{8l$Q~cP*js(e#ibxvbSRZy10w6wa2^g z{|IUFuEHiDM8e(D3;>XkVE`b!7eWEj0-ym#?^gux$3N-+htO}E&

8uL|2* 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 GfB)H-7>U{d literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-41.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-41.jpg new file mode 100755 index 0000000000000000000000000000000000000000..5cd3e9635340019436105d702cce4ec4a3a1d714 GIT binary patch literal 74999 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:o+9A&dW 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 N5Qx{*QeSO<|Jgj#V4na0 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-44.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-44.jpg new file mode 100755 index 0000000000000000000000000000000000000000..eb9009b1ba86347db41fd27483d6083e29b08e42 GIT binary patch literal 53079 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%0A;Z+aE#%u2|1Eg=ZQJ+Sv^wXPGLmi21+2ur zK29W0plu?(1H?OC@_6euxOXboqY$P1MTxzdi-P0p{pEQ5{V=`+@o!%i7o|75vbP#! z=%ePuO<%efTeF^39vr!Oxua^b;h(wWnK!R! zr-e}>DIo)JNbFPC?Ef%18qZe)k4@NG(o=wYI6^>Z9V#60&?K(nz2Oo8vqCyAwH1 z0YVmCCRrG`8ypZQgJ0Rc$_&!PwfY_nnnEwxj4o|a8KzT{e$(Crnzop~rq}P$^CC!9 zb9;Q&$Caf^S372`53F=m<1QP4IDs}W$0N9vjz=6()LmhHa&(J24{n?3Qi;&AF~Cvx zRqMi~lbusL%=7odiRJxMvK@(a4v~0w}+K2ni@x_uPra3&a;XGW2 zkLzE}(x+CIZ*?S;3f=*_K8cOVigw*N?6~+@o<;j$*9xTJ)>y6c*nW|H9lT2Qg?E}4 znC7?`~!%#%8B|-aV?FOMK3JBySSb z`DJ0G?TeO9%3=?Mfbcbd#0*v-46~twUwV{MJTnzyj=%m`+Yu*-OW%V>BR=ytJkIt-y z)ig6gqvxPiGPiHJ{dlCcSE93^Gq>nw*IkClkNv+}1|QNJHh_nPty61+r%#|$Y!cfx zYMPPKiAPI&?*v3=i_kjLgVD83%a@Iu=O3*JYI3;K*|cRV=G(P9Kbiz{o_wiox(^rl zy_jMk#M4sa<5AD)yKSD&nR8EynA5gws0f{P`RXqCrnseylzB z$hMPE zqyja6WQ3A^C_N6*4%uk5kqJ1hz6f?m%4H6tv3|7ncl_zl6K4s%S}BWoqOAj05MPB< zB|?Rc=SpdJS*GUEpDkiQszpx$o7MF z2E24g-I%+vgE>F%=Yg@hluRt7C^T7}KbhGlZHt%_pR1vMFf8!$D)>9P&%Sts1Z3-A zuJ&oY>kayE_cyfp_nnLw`<*_#lm}#eRJv zT9}qA+2r+JJ@|cUmtmA|crZtdYfADVc15FNJj!WB1^LI z6=GVxKexzk zHPM&xZ!7PZoj3C*E@o$$0uYG$k=9V++e$C2+yO}Z+vvai6f5q0WTWlUxa&3gDtADJ zO0=GyZsHo#+F_GpWsuI@5uMa+6cksqMM>S*ef`Wov1XfDVrWsms0c$hvIkh&aGB+5 zf!5O?U{Xt8VIgVfYCybftngau9U=3>H!G+jcK)k`u|su+ zdE4jqaEfSIx+6V(4O^|>wojpudlx}#bivvUR?oP`#@6;?21g&V7JRSa zN|r<>7uFmA&U%>)g+>$mLM<=r&n?jVv5w-~q7AgQvWQ$I8mz;RZtj!j6`dHYJW^3j zk_GogSd>p=ub2qcO<~o$)av*x~w4-F616ByU15AZvu`bP+2rSv~FeNHNwXBTQK$P zygp02-kywrr?`4sjvP#mZ62TJ|A;I{EHY6~+4oWO#~JoVVAD_{wQ@FI9C&iSr_^*S zt~iAQckHas4k}M{ej1y+Zz3{OpdBsu>1N)cQsD|$uQ;JxkXpp~@;AYn}VW*p{Ij@p)2YC5pQ2cXoaaPkQxk<-iFo>O3KrG7K_;CHU zLay+zDOZ~@rH(>cpMZUP*_LpHQFYzS7_B4g+NQPR+VxRTY`6mbp)TRn(}IZZ2Q7%K zkGeKlJsl8kOub0WeEn7v5v0vMQ)J-H|96v$*FxbD?PN0;3=zVyB}1@d<7g@#i#19V zI1&ln0ouG4vj6NfZ|`BK9)FeCQ8QZ$f!+>b$(~JV>Vf>^o9VU!E~8A;^Qn3 z7(AV`XmNG?)?T}|?O~!t?^(mQ-DeUN8ij%3$~%jRFKWbCI8Dw@rRgGG=zvkxPQbC} z#%%N@Tb4sWaBw|xa{fC4{L#cPo)+4{t$G=L4Ob&f!_lkm+0=IQt$B{ZTJkHI?8ktj z%$69NDhefsE>Oj?^@*~3(Rmb1&(x^PsQ-4{0c2(fvvb6Z!9-{A=dhEj<+D#NG0=vQ zl2!jknG7<|b+mD@>ZR(C!6x5#sE8*sLOx$%ZfI8ny?x1TPFd*OOLP06yrHYcr*Wxb0r)B?tNF_F z&iz*>KFtmh1H)ipk>eu>=Ge_g!n^N%?E=vZ&}urHlZGoo*0JW1pTYIdl?`3qjCc!L zBhracb6~W0)8=M~v3nvL%U`8ow+~Nb82eGcVt3DT`_*Stj`*qufFV)SkcffYqP~5` zC6bOuodPBm@IxyWb!x(xxi8IGzqA#!!azX|ad!ZwPfAa^KDL}WINN1`8b>~LSV^A< zqhx8E*_rYr36)v!(e1Oggo8sBfn_MR`7Y43q%%QVus`}R=EEg>n zaMb4j<-hf@Q2Dk1e$#T~6zAz=d>xq;*Lb0>y>5D3uB;jo+P}}|PH+x)nQMPAe9Qim zY0A8zutBCwvNEbr+gF=Bw>?xzSblQ2YMym`HbGn`Yc-bCN_F?mb|Re!WGw51_j8o@ z^O!&AUNA9-yJslurRtVFls)Gmp~8FfoI4+-S5?`ORxl>w7+i{FUl{_pL!mjR)N zeynfJ+?Af*0m|%=A^Q^g&`6b?)DjsE61=qI{REB38CjKW!bnj;5uiE|o<6Ih#CGVfAS$ z4@Nh05u}NRyE(lGJ++H_Wa@;NYUwW~1l@ih`v`#VU82-lohwxOrZ%CA+mr>#K zSvPJ62#O>h^FM`7lI0ga5ITilE4>ZfAi$+8@e`Y}Js>!vP;z4pWf7)YpLvgPO^2Kp zFxhDFk~Urwe)_jWU}sa5V+ zwX2in$Cg(OzF|rZD{8M;A}kP%7__W`}T+Z zp=?HFb^{1y-$Js6zSxDJ>#J9$0#!~HTE#G- zoUjbEo7T6KP-A~2@z_902~qWIol4qCu6q`?m@!pxjGGj%MYCRE{FVgFtWr>!NNDfK z>LQ83OufS75iPxOgb*$w@rH+Bf_&rwa^J){Wg(OfJlrH7q7wy z1!H<_s_vQ|u1!w<P`Q)EDd=J*bfRJV{Iun>V*v|b{H((K5jY0Y*H)9M6SG+#Pk{P21+>Wa{7?+M>5 zpqDZ3S4nK{fvSE{UsE{DzmcqsJLYPj7t$@1bNA1E*aZ+oy|# zm;Gy$7;Xdj&ibjcRO8bFA}l+qgm_67(V4 z7nH^sj>Cvp00TnxK#DFmWw-OcXSs92=hCpFXSgW3%SJ{teE&;g;z3SEsBjyr{% zBLW|%{LZOpElwBnXjPAF)%XT*j;tmh3GE&nWcD6WKsGtaW%YB_tlcQ=uaFSgrCJG~ zT*0t0udBtHMn16dK4AcHZ3K?S1dp_h;ojqQ#d6oPkhi+ua)gcJz$G#kmZ4pWCsyf# zc{0X|tW=bFcZAdmYp6&Saoowt_}8tr60- z;RDwf6{N1-o6>0pc~9k@EOYx(%bl%U{$8syMky9buEVt~FdK?r=syUl&bGF+gthY^ z%`oxEG7X-`w+xFhIP0C65pV8;eQ@jkp~`)D8KKcbJYa@zwM)D6_FO$Lo)mwidfX1D z0WOTC!EeB9f*+xq1YJN^2{VVi6}K4nL|Ipun}z%}hpoRJ9w_sA2EdJRva)gu=3SY* zsea0-4MD*TiebxznMqZ&-|8P*rif~r$XIQeZ-nvQiWZLQ324>KbyM?byOTHt!yOpX z7(dwwX!^Rs3T|fYG2Tw~qmM;MyQ2JUgFgSsbklIbx6j+Fb|}4fdqV3o+g;?#CtYtO zRnr|Ij!SkE%ay3VN6Me_Oj%3#Wq9!I%J!L0?f^|V(i%8woo~B@T@TqdTW9TR%zFyf zcN$6aJ-OnC2WNf7RQ>RPudk6Q^P*nsr5dPXUcQ5dmf&wS;sb@+4a{wwWWuP=z?5Y_ zvj=J{Kk&A>guh=p;G+EL1sS#%OaJuh^z5*_O5I;ktjvb*Mwz!_hV$mLHEB4)P%8tjPNjfD#!pO$u@-|s~!aDOjZK8Z+`*5J!I!+lVd zdju|e8!=MUhXZOSprce12_3#BmCFYna=r!z5kzK$i)wH}CS^cM{YTsx37glb-xD>w zENOC?BWq5#6c9huJ{bT{GF@f{3SIh0ZwvgmVdfcaRs;XK$mZ%_ zJ1c?gsSLZ8*LKXxxO@I2DhK`pFH@V$QKR88XkHNL_d)3@jz{Z{#(8+t`0B>F?R+}Q z7|_O0dQE_f5WrP)XMXkY8CMq37+gp8uTsX743ew(bqVzMzwP=3pKPZhtBk~1e=$(6 zICIYGU3QV-BHdQBjI^fnKTHxS@HepO|2_)2cHpcY%R%9h>+?Sm9d!hZ+6VJR9Clum ziUVtB8Ry?8QG?dTqnlst^n4M<)T2h0Hc$Fx0+x?H^nc=L{wYdmZK00ll)YRt1cnX;^N0VQ->?c-;2!xKocU_s7xxRotO)||}StfRVa=}Qq2lroY zK(ya91ILD{Oop{ao})4am3kV3glBJu(WUeeS zJ`P}5-Ye(2DUG${iWZt+k#su$Fj2kR>SX3Ozu%fQEs9=T&H;kWUrUhAs*kPskx98< zef=2f{fmBY-|rPGNP?M5tl&ds@wqQ?OWShn$`6kb9-vi&QSb8Knb6sO;bZLKv5NX3 z1Rhregh!k{o;Qk}pqo}v>Q4RPd*LieMO83JbQ(l=Y~!Bvvg4jg)#cupJ|L;&1D zSc#aOei;#uYvz*=JVn}cPKA8>?Hoa!fq9w+SY*YjsSJ`>MGQH%^@w!%MR=rXL-vMI zzfHIA^&?@bh3&+F>t)kCku5~ww|*K3zMrq9Sukc13s}m=tzE$P-Uw9e;NUg;dMwRZ#NAT( zRT*hA!vW!Ab6Q+8#d;K%`rC4a=Lyzdw~9iVRMx zcF{M^6ua?2bJtI2a3u!T-nzaDBS`I18?bAx+--pFyaN>=qZEG7B@;xlCmKCc>BGwh zn_KmHU4JKbLne4iS4V-V^2=nCetI@H zy)jW4-dQ!b7&ZJH&d#FnQ{#Y(Eu$2dsHj-E;9~{y9oRRp(v&iNQa5lSN1q>vy@M=k zyfU$yV25(KMky(-WKb9cBwC1RTPP@W$voqhjdpUYv+@5bSN&w-Dzh0EVW=}Sdp&yK zcO#ZH((-GB$dr{uX)spMEsflhTuX%tj9iYSUw7YLbC3B*wJSHg5ojNGnfQ3*{;tPcxR zS~jc%V*n61?GfH;G$4D_U_qm(e15X5IZL2jXXjjE@}een>7(SF*8zFS8_v{2@Fc3b zq$TP>LHfE)o3(*nBLE8dmWMFZlzL&Ch~m-Ujxf!srXNudkP;{r{OY>Y7X8Xsc?W1n zTO#BOX`5SG+l{7q^dbB!0hjhu)fX;{i9@#+G9M3J=Yb~Ue)mxoLB&gF8B}Wo(&SC6 zyb_AMeAs5Jq?;%>89T3JFw~BJ$<{w@ed%rrLm1WcK~DJ{XZX`3eHESY?F%HA`kG# zPY2{OzyiYGMcp0Dt-5$Qq?1tdC1N|bzXPhygFe!E(ZmF9HBL$oB`g<$+hFLrPv1(GO!6UnmDeMgAX)7zGv?W>)uy*pqjBn%S zRmCBQ>xqPb-PV_<8@?}u%{pDCw+_CB^k`F;ADBWBTvQAxEi0^hwFyMd5`MRAwmXTh zc%Z{T4z-r_p@90cfd;gH?hzc~o-%9P+J+4D)Jw8+Q*ta%2s^L*(Z z9kkE#`18AGLkQYvwk`J6!LyFXDrCGcW9>`-Rsi#FE*A^4BR%Tbx=#iR2H|Nz;EH`rdlX|>8 zfy-YMJ95dx7MF7cW)ZeNnUv{8FQpoPwdhRa<# zQVqMthEh2qEr6)D@|_9)@WH^v7c;19cEPVGvrm{+8XLvRJ#H&Af$w!hMzp3}hh5D(!ehd*kOXhmsX=Co3=S6wNn0dzEnfqEwj`4JQ9t z+t*EGV`88)9>heVyUg)hm7%G=XWcO5(3$7YQSC{cM&xw7{3b*cotFc z_G$d-#dApS+!!%O3<|q9sER-7u!PpgC#V>Qb^>c34Jt|Otn1{d;I^trJ4i01B`kTd zOvTO%-~*pMV)%hu=$rq1x4-|D4OmL8PC@~ZDC2co()K2yZ6k_r#)M|ar#(*45pSxN z1Z$pb<*x@`L%qAzt^0W|6%PhsYoN?N95GRv$*o@*d$JuRuE8whz8%Rw0>2DpeRa5F zn&u^ChGX@C%qHf6wt;=#fg{DkWIEmbJ>~Sn2xPH2qA?%3PNB>*mTtj69+hRqrE2WI$<^rKi<^3i8UN@G@dyHPS zTWGgN>9@PvZ4FUW_C848o~rsskrM} z1eZ)gS1L)NCHcNU!#o^0SUY6ik^Ivp6|3d9+Ww&D<1fo!1dD9C5jvxR+Km2I`@^4n zccNVI0684n+4fYb2a{8J9%`?eyPG)qGF^eTgB}eH1}61tsIm+}{ZTDP+AbxV?L!p| zZ}JvVTZM85F*)ZkHbYw19l!+N%sYX{ZR#YXs)C_E-GwWf=Hx?&{0QEzG0B+TFf6rL zyfp8@DV0Bj0hsEJh>G*Ifc0l2g!N!<4djYrpaQ(D`y9ya-Dm=auc@P4IDkDz3T6n7 z?<_1bvl1AQ1LZSn1LFH%ujAN{nQ@?om$J6+7hZYTmh-;$Xf@ReAJntMh30ObGFWbd zUue39atvd34xw#48yg8^AXNh=%lRhY`zlZvrsS#0+QXsUY3ZqrLb)xX?6(Mhtl6&x zat_PJ!|4J=vf|B)ODjE36Z7Lbe+d#;GkcxeuPZ)e#dm+w_-8!xp&6nvdtA4;V7h?F zs6aM?<4xzUYwCC7VVCzITn?yJ_No3cY#ZW#0e4TIJ=wB<(#;MNEzW2tvBP#lfy&EjrnNQV6a3Y-* zBu41GW~%yc#R^<)cu`Uq7k*%IiFt6E9G*M;;#!6<2B?}KT%HGz>#f3oi6m@dWS}$A z4=R9FwalN+jXw>VO?Dy;YYjbO%ePec1iR7TE`iZ1kru-XFvl ztAX+LIiP8+w4g-x`}={*9zt)*T4QWg8~00BcTlt8b^ zwYIQN4?vNvj6sQTi;j=_Lb^3&YyzO!7(!GrF%M7^%`HOZU*f; zoFv_~Do{#GwEndAe*GBulP49jELS{Tq0pgGO1!as+b^rZadEUMZgr4yRL7#6Cx{m0Qk{# z1?=DGtI=6IDukL_w)hN;Z=CV@e!oafgEFx-%Vj1jL9)6|h!8N=zdwMjjb4hoG1{ToiPrcCh* z5Y2a_{^QL0aEBdP)r=`ej%iu-tbI(lon_BF_j*af@6Vhk_GS6)#&Fj0Karnmq-4`P zX?nD=TDXT>&t&~rs*M;b>QVE;4Pi3zk7|du8Q}uMgQu$5aR!kP<%FrN;;09uT+diX zxp>p=0Hs9yW^k!$)&<*GNHl0t$YR~0dm!x+PN1Aey+M(q73BLmO^_z15Ic|72`IS= zRxn%FUC7HJ)|Q^I;A`*=Z8!4|u(OiWPBiDsaM?nwr$f-`xSFgfdAzvYk4gNAXlfIe zK)JCHsY@5P_9vvJ1_ltrIb*-j#?Of*>HPF~c~~PiD@(1)_EOT|1Q*2IF#n3bZh6;H=Y zYQ8AuV(H>3lz-EkE0bu4jkchvxnzth>U-W4(GW5T!L_x!zvy?{Yzpd7v2&{?s$O*mh7D=1*Z4=*~Wa3r64H!@r;3a%}hiyX|gk^ zv6?ZL%s{Z*w9E-%p}p94^YGEi3mQJ86>B1nK{%>`0EtwM#@*9O5#;nf?Th;wVYoIt z7^g>n9!JU>1C1dqLPLu5A4iarJe`UC1X(|IodZ?%&ME9OHA#_*Pw``DX;5k^*v`Ln zCGP-#B+foZ-DF*|$r{?L?hD$BN0&8|548OpIr}6XQB=s9?JU&L;Lu2>|Hp`T{hW9` zi_FA9H{N1Fzu0D^MCMz3H32ow%I>@F`)70_ zQ@D*qD#m(Rc9LSO)LQwo5(R^o$A6yNp(=W6WX&nWNQzj7PZ=VbDca5!m_M6oO0XFM*_uYt7Hd?C}htpi!09m<3fud(jX zwoy7;i%y5T($YY4#k0U1e_MFp|9loa9Imf%{^V=?rU{c)LeLBb!|*xkN^4km=^K& z;2AGx!fOjUN6xX#T5jr)ed1lOg(cu_xu3#nS89md>hb&brz4}NY^?XDL@mYFkAy-7 zCCkyE+dt@NrlkYo7wcBCp1nWCMB;KMVubv1few=%44MIgf?0%y#!eP-AF{GKjR}fY zV$b{BGcCo&Toug%eAfns7Q#iSni!90)8$+jLS~*OHbb*(#XE>S?*Qu%j)ZDWCJPqU zFLS9I0x$dd=Le=NI(fhoi)Ml@X9F|2k%3+wbqz>#0}B2d3bLV0bRX7B%#{r=-}t)l z;V(|=k)Oc^Z|7J53=L*1SinYC2p-4}(@Uk>CY#}~CeOkj4~+^CRz&wR`g_ET{{~9m znpVa9K|%P%OntI)`FLR$TDd_hTKzS@Z^k3XV>huk%+`Jd0&iWl(wSZN=D&73wuko6 zAF3&(+=mM?%P^q4`R7_v_(kc1@_&wkWu9W*8*fh)$sY6Pn7>+4gY($=!51^cW{j8V zpk`vsH7#AVE+saMx7f`qJs2%{?fcavKVKPd_-lf}{Q|IGR=;FuXEC+I7cui6iM?{Aesp&cb%Y2Du05J`^EgiIN}V8d{&F!lwS&{STH{k#NKQzRyCF66lISP z%8SdSasV6@O*=5LEMeAHFciMDL@nLhm@2o`42w%31EYjSelmz)t3D0w`x_H%rm#llSuXW3Bz@xBuYq@cqOqJ-|$;;H=8# zRGqMLxO=84;my@+X4SL!&&LeLMGQvy<{6pU+7PG~)`D#j%dK@ev4-2Qfi@hrLZX`H zeiMW4>DanjZft!$75w^`$skk05G4NW(iXd0Hr(XO)?X-%X~RlqzVrTneCH2LCTQ8p z(sIQz*sx7%WjQ;Rki!5!T{E7dnA)!Bl_3eqbN)2qYWN3@HNj57Hu1GsYDS_Di2}uT z-i1^78~h69sjkAUv04+>5ifs@Ym(q5>we00W75gs(?N_EEsdc&N(3v4#qEL7rV#fX z*H@?)=^=x8e3w94WNI?XDxB$~Je27z+tz&bd-26l2^vThxlD)q0**H?Jn?zQecUe} z=9(h~i;zSH`WO~UF###F-xG!gwL($J?CwuQ&$VHbxE+sHMs(|Me-HYaAPN>3z{;&J zL>fA5{tp0nK!?9<2Bl35X;K%C1$`>@!dF3CS?ubZd}T}BGZ5;6 zQYvZRTKc_;-waq588wuw)7aeCYScMYEgSLiMBMmmcsk2@AmA!i+0QSQE8x4N;?)llRm&eAdS2K02V$vo3%$tSGuzgvN{2W3Mk-T%@MD}R}=5AuuD3cx!C8=JdN!`AKVkDjWc1um{B)u_yA5gJ4SKw&JArX=n#>aHTtSO(($ zAMd*o2t}|~s>Yt(>Q}S7-Gr@hx|K%AS|MgigCHr~YJuD4xUyB0vVv%%eQx-B!_Slu zs6CEGbgPqZKs?Qo+cb3$QwbkV0u6J*U-xtw)&Zh?r_DE0XwVurN@e2`sUw>Xp<~ zYiM{U)T&Q>2zlKdsJ$4d>?_6D7@>_UWn`t-GVu3+?-(E2N_l3Xa9Faa))f!~>oox& zQ-j#R5&5*P2#~UoS%nbq<~er8Y9h;xwcM>wksTI%C%h%63~=Qy5S(|GRHMZFQAXz1 zf$T47)JMtqS&F4x+}qVaDBj=Hro~vv7V3o`bSfCwn@|mVerg_{h{-x&eM``5t z%mEu4HLEseNVVZkwztIGE!~MT@f-1fm-ukyE!IWD`JF0!)Z_X$nJ))fP;%ExBHFi!3@e@q!x+y$L-F|4^?OmWSI60FQ$4b`(UmZVB z<7{$c zV9QTNT(-xa&Y06tUTtr<^J+b<3M$&ss-a$;DoTW?Mlggk7^hUYkdF-{NFJ#COa!+U z;T4sNnyIzdhugj_r{LGXJY{*$t~29Isk0j{49NIWu1%iRN|l=|%=3KC^46|ZVO0x+ zxw)lpZE;;ng4C9xomy&)X|~+S2MVZdV=x9=xRd7C>AadVpAj-*g3HYMu4}rkt)+Wb zo_M@p9<7kn@RiPl;u`i#mQ&#y+JIg?B}L5WJtoSUfUgKIPGBuoj2(VsE|u1Cq1kFq zAys#=T6?~$EOgshRj`wRBTAh;vB+r@7$8zBD%;boPOR2abcGd3T_5n&)2JDsK#|qdO=EQv*zdra@Q=Tc!{3 zVCH1CGD0nQuGQ?iF=~j+8>5)VHLttHrr*K}`(l<>WgruzRhQ6oiFGan>rzJhcfq1) zH_N%Wt@A)$6pdQ?{buvR+I2$)6xĻ+1eDcGqq+ghvw4{vNO<&@}@YCq-rRxkoj z7Io(N`TF5zRbiOtnU-IX+Sb;LwZ+3$G}Td5 zvwmO2h$&*U)@xIT#C=#|tFd6JS!=m|>^gBz3-NCP=C!guHsPG-hO^ph<{YbuGOLWI zGN7$dm&|OxF{G6l38ukZ4KwL1xRh}A^lj0vH6muqo~E-Ul`C%bq+`@>YE^QHN|6vt zR9#&rsC}v{2xSP~kf(JEJvb?fWx8LiuJtWXS5G&~K!R$_ZMC^n>R(&K2PJ1(bWpIS zU8*ayF#*IaHWhU?tuR|~N2#@b94xslaLB-=08({RiVUN>(^RU>qf&Jus;^Nr$X!Ii zW~M_=whyIBQ=`{TFYnb5G>e8!-u&8s0}F+>pHY7BhNgzHD}&^ha>`H|p+yQmcH0<& zy9nySS%_Bc-{;S(yB2eq(X`DXSnK8u2WkW|s#1EjD7;fdQ!WZHYDJhAp1_l*SMce; zlFchhg>h?n{Z-{Ye^xO``ejfUP^yjD9?uf;uM2ZPss*G_YN!}e(^8PsV@WDXR_?}i z5Ua5K*p;Yu&ow*yeQwsTH+C}O5l~Azt=_y}Jg{hIsZY$V!l-IA=!$MguTRUT?9~~~ zHPxgK#Co^tj0g`|g#8&~RXy(8Y5kyq0aR&cRkqd|u3pb>K)|R}^4ipcRLYqa`T5is#;ma;v@U>zdT)^gGZf06qJUXMO zo&(^D8GV(lwHsuoN`)F!QB^?Fh_C{kqhNo0e=QqlZA`{uXU%EXO__16ch|$>j#fmV zlGjbSM#avoZE_rv{{S<&2}+%%yVh!q+D4jcPpFua?Tuyu=3=o@aO%Ay%w=BPMY|%> z8ECT$Qi?j`pRX8v;c-KWGnc(I>)lkXmt@EZ2BXz)Emn{cb!ihYU@kvN{{Z7>?Bo9c zoAQfbY;J?3kcDwLn(tJXojv1f+vkl$gnUHmm&vtra`%3Hu~K%m{?N56Gc&oU)ftUY zS1Pp7YxvMAem9@vI2+?xG)xeM-gtDqIVjBoGANZ^rB0?4u{i^7<+sp?;cn)|6-}jr4#$Dp*5tt|wxrOP4CM zrZ*3q$EGSIq(PFbwYI!GKZHZxU~1YHEqfZZ7QLUDU(9MZcJ2|YPL*;oa$N19v${bxOxbrEbuN~tV_M4IXrVs`v-XE;Nz%YklD9XvPOq{wxW6V{+`NoHT&-o(Mz{K7UvMwMbDdeHVQ6`g z%+&n@Y#BB>APw{GaV(h80c!P zH20T(treyDH;XQ!WW-cm^vp5$t+p>ClzgJ)2Zg>^TJVnsTifJ(HIUoX%yWF_HOy&? zyu$gFDrTAXf0|u7E7z>)sf!h-MHOjNRHTC%DVT}dMs2D(MwoPu7i4u(WMTGvl|@@h z_jPe|TO9g)O#UD_4~QG89FXMZXfrNcaNcwF?lj{oW-FEPc5|1zi!8GyeG_$&S=|P% z_cP?(T-(v|wbP_3KS8o~b74WSO%wD4(? z@b>^eIyte!wwbpRa|bE=9}eVs)=_U>mO;VywDzxF-sm#byUeJ)HmVB3+p1FT@2alR z$4W_`yUJpsy0iT@#m$ehr3rm3`Ful9s(PW5#NWbGEYCR7pA&d=;%*e+Y?nK`xU0n6 z8O665jSQcM-niEHoF#LX+1yk)bGWDuUsM4={{Z;)mY3b2NZQD$sg5D#^%l2JdY1CS zaehy%*|*3&4c$X7zOPwgIoy03x$^mS&Hn%j^GB3CPjtwhPE5DC_DyqE*vWtT_G6S9 zO2bO&MpO=4*0I#z{&G`1wOTMib5*k~;kj0tVw?Fbic>M}Ruect_;og>;pK|r=RYHP ztKs8}6N5Rm!dF}?o!7Q(!o}Y1*D=a7tgUV;Ta3>qzRPRXp?7QMAOtH1R$Vm^cE-|1 zCQdCKimM|1-&pXrtd`j4@t7P=&vusTC^s7YoHu=OBfcMe^ziY>UU6RY51v)?yA00G z+~vFra+xhm&xbNg%*o9R$2YutYBej{=Bq=@r$(?~L9)peCpu%S_|s+vzl+sIl05CMn}x zHRd$aSo7rpwPh$VYK~>@f_BFA*lxej0Fv?h|(Md*ohrjuM)}^DtYd^ z^1!U<624_wTA+$TlDeug0?{2uL(2F0dwwiQQauqXOD0`QxnXagN}W1%Jj!87VDy%1 z6ex|S%yJKy9#{iA6+g>}yaQXcaKwh7P+sK#n}1KeA5*DHlZFi5QFjU{1@jq0ZUuKR z2yHMJg2V9Y(}Fvz*I$zYCJy`H(^wr4z19v4{zXaQw$0= zywuTs>aU^*y0EmZ$Kq%#)~KSH6zNk6uCV5zYJtj~$$-v)F;-asPN;8Gu%TuO6qA^* zS2nLSVfr;yGVNvS_p)d-SE}SzrurIc3XG}&YK+=cqqQ;_N){SparlR;7;Y-acinf1 zSF$BbxNoF7N6Nx_bsmH`2n12NRxLDIh8;Q}3$ zW^}OA9hz|dNk)ymF#xitf)+v_);2i)O|cV+n9X+KPgXUOr7g84_>0~%IM$yBa`fdk z)mEMMc~DS5n>a|4+D_n!kCr`0_D8VaYk5N|Y}LL_40MF}M^XCg?24O3yytV{$UTO~B{ggVcamp~x)jQ(!7EmTi!O<*)_>Pp23y)qOx{km##KOFl2l{V*e5 zs8LW$77RlWU8!E+JN@NFNkr6{y4$xnVCXp=q!k*V>ssA+f=QEJ*5%xE8eU<~@VO9{Kf^i;+F! zN!A1%wh9R8J8iz7^sELZf|T)TwljaBd|xXWrvmVA6!SBSvK|EB?5e(R#Jo?LTV)wd zjRhL&++E5wdd_50w53QjTGb3KDs)}jwjt(pV!a@j?fh4}55uEPn6jnIx!Ct>9hi7Z z@a@7r8o52gyu8Wk+FoXM_UAIx;K zIq$@I#kHWfDQ(48mK;VJ+Jqw7HPz*}omClWsVwyxr1ej$R-$$XW=?6Y*f7%>TUOy; zinWcd8*k&}X=&Xe6J6JPB0$jiyLi;FvNlg!mY4SoH2(mJ-Efua+)@rTFWlQ_DN3sl z8BD13sR}h5R~}F7b~g)`B^f`r?BUZJ1@fm8OysQ37HjqhihSeoPvTF+H5#^j)#i?G zcahyxYSnl@Cm-~4gsPRP(3g2mT0>@Zf|em}s#ac=)Cj$70XQXjkvEe%lL1GI6ow~%g?p;u()YzqF8CX-#u}~ zjcthstc7mKu$#pk3b5!KHvJQI$2wr;MAkc77$UoreoGsjYGJNN$o{)+eoZ zFNlrS-5EWVt$Iw0R)uI2+pHgO+NQDO0Fbs)o|FS)c}0)2NBn1;qYdtSVSW zE2Jrx#m#W-tYa$gRt=w5Yz~F`>8R9#5`edy?z*KzY9UBbaAtM`@b~YAHW&kS*4?Vw zeEP5ehPI8x1SRyaCYTQ1hE-J*kP)refJ%b@08Y(5tW3o$j8{lrUl9J7g=>bfY3rxY z7m62Ex~oQ>whY5qb`7Nv>s4n-0u^DqfxpuWSydMXxUUfXFvVp+>{j*feAW!5d>G53 zElPe-RI8f>(1*(3@}WUc9j%U#S6v4y0uFFT{?x; z=&FX7YK0Xc>FMee!kCdIe-~2WW>ZmuQKc_8_`@!jFt9vIZT|ozg6dRyElC3!dbHFO z;gnQGVxd=}6adY*CvQ|R#0Ly&>?~dNg%GmcK$&*yvZuQS2TI1Pq@q!QrlV6jw5qJ> zGK{6_Fq1L_{IF9cnQK;SuI7fYl6bU`_)glOsb`e=R&Hp#p{(RRcQHGK5s$0CW4k4`Ka%*( zu{C~|6j_I%bfvztYVk)uwB{>MWqrymUt7$-HpeoYdBm&5-09{kv7pV-W%-#ki&x{9}cKI}s%YeCF|%+$}DKf}Eq7lo0m z6Hqg1G9f@ER4Vms$|tZNhZ0MjX16bU@bd_k54u{GH1B5u47#+JV7YgmJF<|-b|g(*93C1wAJ2+QNwC& zE5fwgdh_1ih%rZ)=T6J901yDv(m+|5fZs1x2&Ba}GU}(MGPTH#9olH#_wa{Iql$RL zgY$b1C*W=*&G=i0@^@<4W^t0;HI@CfN~-jo7P7JXr$SZLTReaT8@anH8*~s@fZVFSaJ{EIulpFgb6QK2e)yTs6#fsFyV8-*Hx5R?jxK zHEDTP)!z3hG*<9Zg)Fa3m(vVa)YT{K9hW?|ASqDASF?wUcX~InJfy`TaXQ(}o~|3d zd14gb=XuW-=b7&p@jdNa$B6i&IKR(x?84#OUG`_0*L#b~(7<_V=2V0L!lH#9oLgyf z@Zn`5eH5`p{;yli-wbGRSedxl^Cv#1nBVAqUsN2lzwaOJEVZLcQA(FJ zl^*KgC^{|aQY}&2vWjJkVRPn*Qf50fp|f8TMVuxb=g*fYHK^QKa&@=)M`qp@`4PgN z896V*oCTLtxBFdp!_cS2Di3sS;0`6;Kj%Q>LJH#|4eXHX?OI%{)G_ z?|zu{&7Xypg~M=_WnR9){7iG_@k;T9SDpOHx#X7xX6<#$J_5`Yc$TG`D^TKYGqfzo zKF|-}WwtumLi$?aS=hFLj;CW_8cdOkn3k~OBJZ`l zF;;?~kxH7iI)D{mDnSy2?xuc4TlL1?w_mGLol(dzt5H~QE5#XK2ymut#+*-)aE}ex zU0&yT{$ppCWmeQFnw6^D)~Kr`0-Y2_t#0ihRavl!(>fVuVWS#17v1*wd13fjGci-v zSy8BPt!-@g>ZhytM`B(L{4{W%hJH|G`5mB2++UhdqndHXYACW*&NGU%WvUvifHkEM zT9qURp;xz7I6Ph?;%7X=`D4-WI5ok_m%3W7FZceasSk?ZjJs|myKfF0y3Ld9w*FPm zGcy}1%UY4GZBxy%;mURCu+;u~D_sdXL#iKqZ+1q`0$1-?iD%UdcM;QfyPun`HJf`G z(WJ?1Fx)_*j_Yw(yXJ_^@aFKLSHv$hZ8QEYu&(^J;EI;n)^F!2He5@XinD8!EozEI zdTmmktAYtWTIfCS-Lr}^14|4#Dh~DQY31r#ubwr#3um;({pNg-qWa3YtM6Op-mTvC zW1~KIcz^J-#+)xwr#84JgzPPH%N4Y@;|o!3!x^SaZBCe{L(9%>MKUQQC{(Il2w2k? z=VjvN+=W=Owrfr*c$ZiAj<#+NOQOpPDND7j{*t|Y>#boG2gLsX3;tDc{d~#%I(V1i z%+yk@?@u7&iq@C!Kvh8LY}vL?T3qx(wMsh1BzDzcsU$&84Z!8Y%k= z2{e5b(%Fk}>Q5CFvtO;E0&|POUx*GvinsiGz!jf|ttO>DEyz6F{{V)KBsEr@dX@6x zTG^@{G3G5jBDn|;NXw|D}ZtQ4hY#I1&mTa{B=_QuQTT-g_qiXk- z=!vG_ikgZ)mPpVAMrH%Pk_Zr{G@s?wjg+dBMXOz^+Hm~##*GBZGdo?X)mv#rSXQ;z z(x%i~WY)D}XQ;}GvIdend+xu*h7&+b&-}@q$`1%Uha_yG~zS-)^q#4GU5$Nb0HOkx>mTFAAVk z>0$(|6(`&kiNd9&T4UR4%oOmR&#DT-lNAMP)u-b0TOK{ZHGJx{p;yW&PNhP_sQ_0( z)isAMHwUH@`LJeLV6v?jR8Z4bH*TN2t>J+rGcXD!8@=C)epLRbTD2(GsLK9TBTlL{ zM3yL9%?{dM{_de8-0A+<&WI|lb#!5^U!H5D0RS^yZN}R|$7X4pQnj(n^D3lyS$;cTNn z&Gos2TGXgqJ+&pM-L+JwO-IPLPCoDQOUZV`?C&BxmBOz{h}&3EkwwlJYAz_r1+etO_y zrBI77AZpgyncK_~3arZw#6a8q*aQkP3~l1&Z_NrQ#Il)zt<=`>N8V{!I#wzWe7`e! zY2BEezi>NZd#2{9`aaL^6IRX5X~RzJdKuZ3LMND{9aFFaa;qeVB0Gb=tVlNG7?9oT zVpUvy9|>M>(+cS^1fwpkOi8IHNE?z2Km?!H2Q9igtg9=2KG9-8k(CyZOH}%up_ZE6W;|cQ6;Zk2sKxz^66Lym?er|sg72y-m10M(u0~2v?~{8 zKv3y|tOAcn5!{jwarv;E_w_N#4j!$lDWpRyH=9XPnbj%^^)e{aw&rB_!7wJ{FzOlj zzu#pdFLdbwYAkqrzGyk_8k4V_R;GpoGPy2Qp<$2AbnI~qDtyQ0-xLv;RNBlHy(;lY2S8^B+Axx`MXC0N95;B$fpCJzMt}mQ@Z% zSBI<3bU-z`!*AY;;`mB(kCvHb3*K|_4tU8J{{^x|LNmyVdai zSl;bCe5@uKbi<`&kBPd3a(!wVyH~GsR<&!J%bM3!s@8J#YTR5^H7+aGZS^zMW}oKA zf6^5Tx}SBw%h4WPI%~|I(+W3C&33-pYV~30`72EWR(-(*n8%dCh|>jz`%n3QOaQG| z*l2EVbW-nztMNe_CIz`l%vQCy0^3bC+rR6&=;$xuP2oP4Rb<@#<6ND;#j`2`--9UT zGyr=HyvN!zIy7pp-Q3m&0Wd5>52)jQujP8 zyiF4);t}HOFYw{YOv2A2yh^;o;|qG(Hw##!fpcwA;Y~WZn<6PFl$5h6h%Bp$+b0Cr zsmjd8i{a8eXxMEmOuRgkGGkjOhtg}MetBb;K2Y-0jyeAT&1|=Xa{3opuMqKGYWEqo zXLB{GTT;8Y6|)T5@~o2DL$TcM(75aI6D46V<&~{vI&&1=%&p5DUJnmDYGNn!>}gF- zcvn`HRrBs&t~)F6^~mlF@Y~8fmx6e5-rm~ZDX>cUrSm|of0&fldw+3Mo~C+*iS`)b z@lziWKc(p|X0M@`{{U2Xk|oQPE?5iE^kUQ<)m~pbP$$I~#(mc`IHIp2`F)*}!TBA_ zQsYd**@9bU`K2nFsO9vkqa9Qzkfr^LZTfUu8)h`1v#}(orwXe3xwkL7oO9b_XoU@i zl*MOagDzKGxq11IdMYo5^FA=(d*sjfONqFHhw~ddlr%1KOv>)j$fk99b$pt@FcUK2 zhBxyPMCDmM4Wp@6p7U`1kzq*9v}JYC~$o>x8Y7PvpN1>l^_HBCcLn^ zwxAS9v=v>-uW&KE*>j#^^e^<5u2kwywcmDK=;HSF6Qi3Za@9**rE)iRGjj&*-x{Nr z9t%7`b61y7%>D=9`q_^T2d(5%OPX}^49zHNYPS|PHFv8=R-g$YPty&ZwB<;7ie;w?qg%`OyRmjhllbO!>1FgX)C}0I zxqtkrsFu@}JW()wV)!ED--Z53r{F*9t>n)ml~ZRq8??Wtv%#d?7n?wy8Spf$CX z1zngDTivl!0gA-Tn=FMapy%DAc(`)ntXbL{F9n9exf0Jvx|!Iu?B0$ZE}_d6HD2OY zmBR%|rqHk|l2f66e|SNeJANj|M|oZ)7dO1C;%|oEY;zL?(7LEf?pv2WR%6|^@4W{V z^DTvD(7LG=ATgIJ=3LV)vz03!RsR4=Qel*ANp+Xr?C}qK^*|hgfkJD<4S%$C^~D*Q zTkFVm!kJUfe4#kzVe{B9s;aNjT@?QioB!B+XGL!m`dO6;Vz9v%4m>4^+*gu?Ak1m%& zvODT>lRj5jM@oRGP-w-5ZN>20*Bfls4Ov+9 ztv1vFP+APPV%w569{Xy-Wg{}oHitzQZ{hJln+!LhE<4iQ2i1fx96-2dC z!B3vLeO0?Gp(QJHRf1+uRlV49w5g_-Q&cPz6!s8S9#%R;VPQZtTCnjk{8da4r5J&xx_url z@4X6Y7G#tv!Vaw<%8*E%$OOw1IKVGtL#1Vdsk~IkeyV$6Bchnr8Fw_HP0L27H9u4q z9vMuzD;h}C0oGNu4{fACnHXh{EwWOjg%`b_o4XA)4=rxu({7z7#gQK)R2y2WRHvq! z5Lgkc4YffGyF|o)OhmEKt+S--;;r@5=!v;a)T8$Ls|a$e+l)9%H>aC$e-r0CGnr9g zQk~XOe{pU1y$(wvR0&WLWQI~B`eD;nMj}mHO^C~^E8iGPTVMvDw3VV-B%P$;66E2q z-6G-Th0Ec)g>`p%mLhi5pNnNltAG5Ve9Cr6tOlih9ewtJ__3|p__V`GVytgqZqjK_4_t2c1`#IW7HhC+a>dr$ zcCHoG;o>Xdjt;++lbwYvpvSRmu1|!jW=qtyZ|F zN$Js@>sF1l!6Q!Jo6xX0VTO})uSYS4qQcD{FAs`1ZLN(s{7>$9Vii6a3WRLlI^9M;v^KfO&*cPXN+ zH)Y%FcGfzbn}J*ug~E+RH9K;X%c>uKC7v;;a#NSJxEF-;7fwCmx;3n=g$6A7eVux3 zPQA+y!aTNk{#~&fCucS?YK-ld&CA~Y(VIsZBMm8@ZwiZ7&S|IN{{R@}lT~Wf?r*NE zRJy#quTt{rwQ|o=wZ&uRRjBODdYQ`-M{QW{C9I)!DP+E?-Ios+>W?^^HRjE|n9Y4J zf6p)B8!wjpzv5nKab8KmyeDmOb(!axg}t>ZbWy6(rms{bd#b{j1InjFvlb(B)9S@+ zZYoX^OH6rwq2^NDDts;ZV)oC#Hqyl`nG)?<-0gP?S5t4VqTXoiZ^HioCGsB)oS4XX zKHO5JR?fjMGn?v)s`ojKT3&74&1aD;YU=MMKZhQFHhj!X`HojPt@B9qc`~Kp@bcx! z(PX*b3f?HftBg?B&lOI3JF)RT)#Ez_X8y-T- zlFd4-%4j&MJsuV79q8jW{NsF?c9nH3ZsKd3mfy=8ui=f(9~8Vp%&eD}JU^RLz2#;> zMx|WoFK9B;%I#dgl|s_GZCb0mKyAXWs}%O;7Y8k6&0Cs!>I-gGo$Ys3JTbiTdlfo- zsmne}thrz+w>|yd>s`Ft!m-kZamATO1mzbQzYyNpWm#fU6)!Jt8ilR80^7AlA`FAH zoN{RM81!PTc9o8RNtIOslIC?~sFN0i za=H{#%(|;$)T$j0!DNyT>M^?6xXIE>N)lC(g{M}pSzCp?@z3pS1iVa@GiN>?a)w*1 zxgS^EVZ(G#ZS5DZys2fc?`-Nlt-|S3Og+6{E~4sENji}AZH}#IWva_tvgXtA57YOf zgq$8zG>dLkHa3>JyrSdS`ZFf;XApZcv6>Cgvda?ZZ zH|)xG$nxXKoNVO=QkJ&vra2nMoOGzY0pXbH-iv=UbIb7*<9f7tQOKSEv95yMI9mIO zv#J!Sstb(Ai8zMptq(q;F1D(+d3`e=%vAYf^f&$}>^uCw^4rP@tFC4;UKUB!rdAgW zms6A}cRyEbX;x&}IOUWalw~E;sr6*X)r$S)eqdIT)2UThx}X4R>SZ7wQJ&j-jj{SQ zGF1i0w;F2m$3-VgQJU#g_`UB8Z$B_Ieh@lIhV7?d2lT>GC6xp%p`qKAuGI$$t*wF5 z03p+17M5Se2Ez2KMt02fhxf{3>B4m>%^}#%(CjKt< zT9)=x@rZ7U#lBsmmb$<53h7iJtg1nf%)k(!_VlzwkJGCOSzxrp>2*^oH{<5;!xUJn zs4-uupkk;}XH7^Xo#RqWk?G&FcK-l&45d0Sj1|>rd{825gjOq7ZXgHSpYntJZp8M*;`XU8D3VRyw@zwTQY-3HJye?+%O}sm}bq*-_)GDm{i0SG8 z9sS^H9UvY507k^1y@{Hk1wB=Shbn3+(-tNp_a(&dx>zgzOdl{%;nhb>V*0Fcl?KBkx{^WHG3+A6ibwRnFl6uXzC zlWoP9i@WCadwHPoaLNLJ45)~0jWz_gQ9EpZaM*xBR$FdnH!=R007cfKgdM!!;@-4; z9Y9u6By31fO0g|0vZqkn-xF6NTRgRCa`$H0dKSNSC3MXCM%1fob+5LWdpluG0Iszq z;3|dyi4sP^K_L77y;#YY+@R322HbT8uL}W}iW=jGP*267aiW3Gx_sBqi3XV=!SCVG_uhB}B=Bo>yZ3k6VjD}TY zduLLhtC^@!85oYBt*1!_U^nq%rW0XdP#C@{B0MQ*?a_QwwpZttOm}ZENeqWf%W8gU9EW&?=T3jm zj%a7RXPjL9lsAwEzFpqRfQBP)7Iw7 zH8PRdFhw(_%+fhm(Wku~DEu%yC{yL{3NJMH$1bKgn}`BduoqN8Y`(?7dP0bBbhxHT zZ{loln_nK-xtAo$%Uue#_j#Fm%{VDC<*^+#E|}kWQoLTyt{B;05`Pxfyqe{; z?+S3Vs@rIQ5Pm)No@JJjCIlAhr?D$;k%TXb){QsEyVeywLHg&a~4$< z>ReT(Dmt?^;+mb57=exp5sRIPpVB>8%sOpaWz-|lBw=OYrAv}1vhd-ReQw(I#Z>%Q zJYQGO?rHKXfirD3bgKEBQ*&ojsAWddEZU_v5H)QdEm+>{902J*d7mUU9-k9(udToG z#)EES`YCpXEjnhaSCwvM&(^ou6$!z--RAEGp>fha0}D6*0Lkc4nMJhpdb(qqU9F6HT@$m;Pl|)qy5{t>V)biQ zc5064Qma+fRm*BM0n*IX3lSudB=?*Ul8G{9DX1^7f4;A5X^S|V&BAKUxO0AQY%di- zT56QREMTyimV(V2nLGTjuo7*xUaE%d)o;ZCV$oPCOS_pye)liK6Z3^QuI0Eph;r+? zuFqQ1^59cuDWokRiWN(S1E+nYX~*Tqm)ipjn@`ESWSMy^%3K$AcKwhzj6J`)%@tN> zp!Tm7J3VNrPal=5RLM9`Hmuqesc@D}XhCqI+S?$1^$J_3Vim$>KiG91{eJQe*F1b|cyDzWxM5DJN<(8T#T{PCKFd_&(;-dcm!v;_9 zs~Y=V3bRf6Jy}KSsTuQj3!y@qdSO_GC64eEfJaObxSjiN{jkL>R^kff+pFjOK+!^3 zb+>Sj4~MP|6)6g9ppx)pw!~@&c=|B?BMM;idNa{dQypvGKb!D?1*y?w%)C|RUo;GP z+Ec4i?pa_Ry`n^z{{WsPWtB4srmhuHyFT$q3lg4MQQ(ixbA8wk?JW48MR`Qk{SENR`l#pwM|PR8DmR@P$! zpr>AdtaUcRAdOKWLF{y|>;9Yt9F~`J&BMtfwcY{CdVkHjZ_}bz2bl%%$;nu7dKtdu_{nf-eG104I)|ulfIHfnCy4N zsxX;EVM=id{5rnBTf+<~CsC+wkGkAZ;#CSm2Gj`Eq-;-A08e$?`ySt>07)gND^C~A zAZ3-kn&V@em~I}ftl-h+GfJ`15Er-3R(-c+++pTiqnxTpX+|XIFcwCT2F5>JDP_`S3kF(w#(#HIFbZ59i!z-YT3fwze9*`xPNJj% z@{mA{jP~~Jr&cm(TC~Ksm(z0kGWD*yB48WcdP{sp@1MN^RuE_0g3G?(X(X%2GJcp` z!o=QmE1P{>p>o!2rlH_$`^&56h6GR)kewxolBJ7D*lB4VqX+fFW=yy$l`7wdqpmDl zb6j|kd_SfPr%san?!kavC3NgSJB`k{U_Q8jTDq7{3_7zm{{ZSFGJ-C(gK(t`yBXn@W`^R!0%AdQB!ynfd-)6C}P?RR@SQTj#Id8N;OF9!b7b<0fZO z2H4E*`JK!x{{SJU!dbT#=J}pSKy77raaO2xR*_AM8ERmii8Jklt`1z8wHS40WYgXB z{;1ft*2PaPDsCf8wbV|QHxA#&I(K6qqFUKiv;`_O5x&Aq$G^CPw&xj3mgkwPv9){~ zw8o_zl(p8@T~`mfx!w6myWm^^>NyrSie z{$^|2T3F<{TP>|MWI*pmgdk8L9-+QC*)ks%$c1f6wyte0_nYU>9gO2@s)pAv-Cxrj zdH9g$ZgtN-XlJ}vn%q{cV@C4k+bN*VO*FTsQHPkQe=_Vn;KtuerDjC0~~CQ|UrHm`}YxuV^^7Je2eW>-}C&&3&LpD2IWG;U~^qec{p;1EG~ zKIeTtta96T9?vzTr~Op$@pB&Zb$b(MHWLi9CaC@A5Hs+vC|=6-`QpkvZup$axdF<| z(xnTUX`kO&SF_74)qtqgYEv}OB7?C6uhSZhn}ayKMKw~qz39J=pU_IUu(5ehTXM%C z`SyRA@t+W998;XusdbrV_jT`XDpX?3eAj1H8qC7>$D_!@^a;@sqFuUs)Q>U8<2rmq z$;PU$zdWrUrW4TA;Od!`s2uI2{MSh701u~ZHI|Q2QmuAFc=f+jQDJ3|nylZq*$a`i z79g=MfdqSkeMI+-N8kG5v*<={s^{-R=_whF!uom7i+#PH?hi`G$TU_MQY64SdzfX_ z`Hx}qErXUS)n&ChtCyj@*g-7J#I-`|;{80aEwU=#WXu-Mv#0&7XPD7Wr3`KjwzXQF zUV=|a8$!0&{QC0O2(va;9~UZFZ`|ewJ`r;8{93CUJW?#ATjmlr`S)|A8pP>c`IG~KR$+yvJqO9(xCqUj7%z7@%^>IMUD$`}D{{X7DQJeU}mZ%(s8$WHg(z_Te zPjY|ff_FqU4VQ?1ZfH4xFlD$a2fJ4_cvWCaT+?7fFk%S=gP~{D9igXf#sOG3sL(1p z{8s&4=vrPCkX26=&A1&ay5EZCfePZKLSz|}15uIzRR(`A>%Iooevyr{q^^3oecky) zbbTeZHKS8gx>R#&8~UK_Wk@6tp%hHC5$;F0f!asD1&>Gw3u)rc*Du#c)T$At`3G$(5PGlQ3eK? zAQ)-t1Zps25*3vwvjuC#Y+}t0XjID`;k)gFt?Gb5s5To(1hjxP6a5%ZZ{@~0Gjx?J z-SeK$4~3#7%)HplNv~Bnd$6XRU>$*ik<%OL+jI@`)ZeBn5J=Rvx(*cuZt-16kkxhp zv@V|Y-Y;YlYJKzQI#plrlfSoeWRvafi*IYKt7{hGs~Y{?(GDD3LuXw-Jy36$-6>3I z24tS4?+Q+l(a}1lt3om;eu%ox8}Abx-xi6am<>+&9`iZXe>% zU?399QA+UFh80`=o{cct6xSr3MR(T+NmqbTB!TihyW$dKbhB4oC4twvzGlgw=*rAP zEX%&{hr8#3o~2ik%p{mtI-n3iFh6tkkMm+#tt~EHZEi0;J}Y39HE2}Jy!d-Lc%viW z&S`P?D{}*xa87q|msKvcD$*`m-mn|NSsFWgVkY6RxV2QpC|gGo@$S>?Wn{82KVZD+j6Yx}&m z`tyP;HTiXIyy}##>Ie$;sExt}+%NuTTpBcJk; zMk;0!Tgp<>Nz|&szMk|{y#iD$LbR12ks6Ooj`0WfIP8fo>WegAEOA|J-i~UldF00z znQXlqFWc$rx)ln95)|qG0EZw3Qb-_a)i4bA?Y1lQrG;)?A(u@w>eS3UL#`GOfVz!4 zYhSBQpNa%39m>R#G{loVinyNVR>Tp8OF?r6TiJIndfn{54-a-BS)8n;Z7Lh8+`6t& z;_+u#U2R^HQemZu3KBwF3e4jHiE6ucKGJ z5_gT&a(cWMo>I7_Y%O@Y#@@cMP$9Iv6sb5al-pFYD25>8;n`sAErqr)QzZ1We|MV7 ztD9+B>E*2#@#~A&@}fk^hO5!%-mF*G#Pcqrm2$h0m6gZZX>pG+a$AK}B1Tu3)Jt+1 zgu$e;K8=pI{w89Z7vbv1*knl z_EG>U2IK$;l?1fv-*~~5SC+s&mhcor6sp&MZyRiM97$GoKjMWy?i>-cqIm4peBBTW%9-?HOk76W}1pb2+*x0u! z-1+IEijHb{l<_P$O;Rcq*nIWpSoVcjI)T!6j^vO7H1v)4G4#Zgt6W#3J*)Y9w!o~k zc2)w^?7GtjeWT0=yn=d4iSHUj#Hj;+=D^s+R6S-EyH76<>8*TFy;9kg0IhhJ=jS+4 zPO=?Df(i&4Op`JJpOGWH{IClsOC?Jz!A|e>MXF0Jaet(sySwiGs5YC^X$6ZA!BI?h zCVS6g3M1PX&n(J2*l^n2?pk?=*9o;A>jkBI&BgA*g{>eNCZbN#PVpqDCt)8WxWKLH zC60G|_n?-=9Wt+n{Xpq7opMi3;1j>RL2i*dk-vORS!JlY>8wRKng&>s7V=ERugdxO zpv9;duAo5@CPuNiEipQW_MA&f65RsK3pa7!#L!4wt6bK)`m_rR8R-SpAefQTLYdgB zto5;m*#2xqlR8B+8#AZH_C_#QR=RMxkDicA)fF`Fv=s&$c`8DHur^cJ`?u!6tgFLa zFQW?E*QvYOxx7$KYTD(hvd3e3KCWm|94Y{$k)(ji1TSsKB+p6z0B!+GD_R>lz3-j+ zeOSf_?x3yL2G#T4yG#~q4NJ1Ih3uktfv5=Cqkq>1FGFigw708EyyxffiAG&jVglqY z??J-qoDjosKrd*51o#>Tidxh48Yi=GGBT^PDR23zA zj>VKfh>!vI-)uTs%uuh=T9XccCro6uWViv>UyD~Xd*vje1!yy=l#l@%oiVvt?~DvV znA0X&vd?zqZ(F_c&}__QsAcH_o4&XW!a#LdBdBZ#Z)SrqK|Qlr# z-}b}q3Kb9v_qnwE@Wh7XpNsBlaw6u^hF5uWnBV_Xr=EV$t z#F4ZWnp<=;r+1VKnS9!}(|24ArEP6g?=GuPE}KrMIYmXL zwHej54T24v8R}N~_uJ;UQ4YI~ue>}_lQ9ljUF;?u%cu2k`xXpJq%mT8U=Yw`5MX`S znIxa~{{Wi?wOLAAQ70_h)@uI%XkrCW8B__g4x0U~L*5Z8`L#^n@Fx^mSyw@Qm)ctA z*?xlM-lkbzox!I{1f@|ztwu5k`@KHvkBYpFkdrY_Dsj^}9#g6Ay4z0gUo38B1$AU| z^m7rFH1M4^^>c9cYKqPHig9xBZzK5=nH!a_UauDM9o6dwU1Iw8CCh%^8U$)Lw)LI6 zL8;S@>;5+E6S043KeQ|_KxNC9g2Jj@%!!DY6Yj7B%(3UVgcA0WsH+1ijNT+Rd%8&a zqO0;-*{4hbCY4PGb2}g0>e4&?HGV98p7KIDYFf-L``vMNSPHByyDzFFhXe5kmEqUn_p*aUK~9r1G#zOn+8LP3YLE}%0zlq=n8PW$ zj(Pt85Auu%W?Jtu!|dwegOci6Daxq?1`t=VlMDvhH3PT)><`h0nOfR-S6AMQnKEE| zRf!pH=4dgh>{J1$LbGZxK@lvnbf1^L7^*{YTxrAG*uM-A5@t-+##=X`g?*oT2>?G_ zO9LR2Bp3vfBiA3f#tN;-(~7GGv~sVAFUS>zsg}22EYiB0cnjVi!su47ssSA=yR$Hb zZKQt)!yb@1+mv}tQuW_2K*q-kKx#7yenao_&{E*94^&@oY8V*L5@hRZ zZMj(6Q+c6`#Kl-s;%XFjE7WkW2@%vyy zBZ+Evuxgt9-<;slRKpU$Nn;=r1R0nIxF4tG#H6M+%ng%nWz^p{K=f@!mW&xZJ>K`_ z5P7Pwr~w8y_bi=@G>D&Z@3&W0CB)WRWZo6#@kUFr5@0OMI9k7_y8&9Pz-ukM>E239 z9dIN8^7roAn*h?C)=TEBF1fd5-S0twQ=tN?vktCnd4(?O{xD{}Jxt5hsh2_QH5vKN z#BUw2#kE0xgk3LBH4I~_U(uB_lqYzsTz87{cVbiEL`w z>RuLH{_JB)4$Dm=nvK8Vhe9Z=B100uAm5}g{v$hrc8oxFmfDywVav+ijWFN}>CHjr z-hT8D^_fTknETG{v>1e)!6$y+j7h#>WivV?=H(YD%`#Y1sEf5Pn(ohbIu>LI#f{3Qr-^rb^+itj z+u`ibBH&ly3xMzc0P){3?`x%0(rG?domy40^XP?8DkD~-YQdmwSoGuCKW2+6N0#`k zbjDYiwlEzDw14)=GPb)T_>~XtdMVN+~sl*kLt)`wYdrx{RYbU!DZnUvKc`T(# zC)2l5_L21bD>ILxo<~WBXA4rLZuq;gtCu*FMi*ThV}`R~ZC0E>Qea6cNsmbUtvaXr z;*`^BHEBitQDWewYevt-{31{ApAaQ#bZP1$8a5_IuF%umkAGo}RM{q~S;E}EtKR%! zz>P#LE;_p7Z(3ajgCvtW6gi0g)ml-fTy(rf;S2ol5a<=#-Qs=tLJsdu0RJT1yV1uv(4fdG=H(5RB`(kqH zPz!2h)u++h50^)ks*7)Q?({bJIcsTvR46Q90U*I7uYS^YJ@@|rQrrTQ73C{S)9d+) z_ip>VHo`+nM_VO_lt+20Tj%1B4OmjlKw+prZOZ~d>7K$HeYU`@6`6vD7Tv_v&+u+* zd^yB38Zl-SnM$i^Z>gbInix-EAP`7}+t@MfG5W#8scC3f%Pf`Obu9GpHm<8jTp2ie zkgR4Oo*xSE-5*n^Nh(-w`xB%n?Gp?)fYNvF*n>+@y)@}Ix5Mv1%f9LcHK#GV_y~2X zC{s;CSYW^%hu#DD*T2udx4s5gVmdclMx(2Xy`=B;RbimX=gt-NS~B*PxsgKyd!2BltRbZoh` ze@rP@25F%}trb~U^wqoB!PINH@2SZLNSRn9012Is)(HOqRt2Rj#A>imr&Y~rl^s>y z-fuh$x-{KD(E^P=5eFq+qGZTbRtpm#LmuQrm7F2ELo$iEy5bK;%V<`==XHDC==Ev> z_rU+&h8h-az6ew5JN#9DTDksa4`Ib9Q8dz0{Ay0IxGkA4y#5BrW1mL!xTis@* zzhc6Kt0hd!AIe8e%ntGa6Wl?JLcL1@x~1vg#a;0&Xmyxet1#hS7xS{){Geu|(~Wf? zf>||nY~G#bL66uK!1Qv;Z|q-yUBPjE<3J*TU4-0l8cE#dJ1q?dY+Zc$re!8swO&)$=rPZ!4o?Rkdrw*BO3O znG?3H4KfFPhzenkc9Jno(d8PjC0O@X-{xZxfGiVD!zkQ5DWAQqN@~>z-B?R(4{oAl zME?L>Ql1Y~wWDs+77Joj-$IJJ|ye%1}%w8&d z`mtaaI+;wg?v{;>Lg+fm)b2G#pd^)zTZlpJiu0}$tP66f>ecr5VZh71w3|Nn#S7BD z^uQ(=ik94uOHP^g4W#ei^J4*K&05u6K6?KEPptr0F{-Vi6)TRA2$l*YvoO*Q@@L%k z-)^iyVy#Bi7*u^7YQ?#IQwJ?T7p7xCI%ihOV7BMg2mRQ|g6B}GGhEqQufuLthfPIA zsIAo-?#`YsGe@md1_M^DQieo#1f2uCi0!@_>cOg5EyBHR`EH~DX(}k%d`Fw=G3r#@ zGmy=)>C{18y+M7JXY|HAlBqzb;%(V8eSg{jTx&|qC+Fez!O2=+GnRr`jF<|hKp!O| zSIhXYf=fP?8b{8axDaxw(%px<{V;mnNiYOWZvj0!@k4z1^w?(+{9 zVze5uQ&GMh7XFISWeZJ#Lb4B0ebzxUq-rhgBMWgd%B>ZyQ5Po6aV>~IzJC|b6d^Tw z)!Db&eOij??hc;g-S*QtjjM^bb>^b_A$}1*pu%b_{%ji znT4B>aR9z97W76C?6v0Q%gZJIz$nn5}-o`urEMdr!7^&{k;R2;=uC{)zrud;n8i!8W7%Gy)9m{I(BteDJHva%rU{p?J znW!ma4U=_PmI|zMs@(%?hYhiUNF!i&^$68ESd;$j6}2weDdzWnb#I2=z}s+Q$4_K9 zQmP)AEXvItUEq*A4MXZX%wQVpmVhdC+P~A@=Iw?WvfA>(-Q6wsV81-Bp{RnV)6{3& z2nu?pB!3PKEw!$tMb^_#qp!OQl++UxsAZONfhE%@I=rB|`Z|CxRFSa)4*vlCY$;ew z4MKD9t;^w7h%W8Xw6?b4TYTOx3@P*7M?{d)?=i3|B#&Xg{%lPa)>LfM+i%6!3@pGq zR9*)E0PO{(!zpdR=_Lw{PFX?Teaz_|;}Qs=ilio7QII0ql6k0W0ohvvAOEjPwy$Z0~QXztqzTt}gY*NR`n1bmkbj4xK z%>-R2E>O8q-@)SWsr%7Ielj^Nn{tDjIn|x+T=rtE{dyOa0+6(CsksbCx0dP^l*|y* zzCHW)bGOdY*^7gi*5YvOxwqIOkK3C(;Agi+m<=tDrh?6VCC1W3bLJmJAzcm><;i(Z`v`anC(qEZ#4PrhO4}{ zR1{$wbA`B-?aHM`*pOpeNfHUtCIJDvVw}ZgHmxi3_oC1&c||*G5+@i(E#OC%OxrIkcEQ>o>VC1s2dSoQ>vb{qEX{{Z=g+E@U*FxiVSS!Od(>EZN8 zrs4xAC77`SAR#PCkSD1?BpKWNIA~RAiZfna+^RbaD3w(NDY=UlWpB)IOqDp{4Gt>bZi%;bpx9%`Pvd>-C z+eXsNz2EN=^7=Nm`;2-j69HYIwCM~c2_;6`Y1AX=Fb41xFAa5hmz%`~37atPR;PQr z%0CD&R8}phJdg~5Dm1_lv(!(q+xy}QR8Tg9s+WGIrf|AiDAc6DJoN0{+1UbGgI2B2 zKvM^E+GGF(=^g%fmb&J)+I^rz8;DR^>wdrW?!x0yAz9Re+>&I#3n~J)M#tqCfLxZR z1wJdgu_Ef)7Pn+aHN3;q2HV#~eOhNoEJ*DvNP+rC^jt5a1#5L~HBsjAMk6KmGMakX z{6DG`wR2SH3`h(K4uI)blNw0cVmJJ_%UC-pUs}`eZ?@=VX)Tqjb#l8_pXu|*hTtF? zyHwtH15ys;hzcb84euT|-e;Vc|c<*!3<#=u*-f{vcpB1wkN^L~rglz)ecf zIW%iqEk3U=<+dKg3$wb>cAgsl05Jpe`hW}}Ky3`$M^hb3?sjjk_ytm?hGAs`yK^sh zKEFgPeImFz5xw8-cfC^t)Vc(P)S_iX20%jr9VSM{Q2zK}QkjM|neO+ScPtvHTR_up z<*i{g<@Gyya#${eZ7nh#mPlFrU0S}l7G-ys5sKPJ)z)GgBQd%$GcD(L!wab2BU>#N z)Q?27FfphFsvr^vaVzX29vYxIm~GOdPgNS-KD2aVVhsx{BW}A%R`t1Z>gMduGTt2G zJFXwhvd%5andx3-S5#^!R?=CiRSv}Uf5U2J!QMK*)S0qse|B~V8(;eK_hMO{5kq}7 z$57=_>vL1@MBVYt;fBM-pN1^I#Lom-Sw3f#WfbhV&nmGZt@|9ln5Mb+l%jn4Rf`In zmh#(I;J|DRwLi)IuDHoUUV{3`ol6Jnxc}%xs@F`hK*E(NuPkDK6 zr*&hK%;P4!$TLgauQ8(3uB>alHw>k9ify4?RG&c_dl>5f05(3Q!DEvdg_l1L!fdI7 z;qyn4&6P4-#=P2trwp2j+BzmBNtND7BUf;H1A}W;(pzx5#S8a}`Xe*5 zzG`hu(<>=hcY`>n$R)cs zOw8TUYUR~jzbsiv-6CA8Y3B8#GPcZCrkyWL11C|`U;s$cW>{?Bt|Ypxx(v+ox0QZ* zp@D%Gvju%xbsafdxqWDLrCmyf)L7{NZvmi8M`Ar&P9dFDXnu@Witi1y_rA^(1So=n ztxhh_M`KnM{j`bF6pf&O2--(zl~~w+KCB9;txpn)E~eGpALSWP)hnh1wT|RQ{Y0q% zk?A5y5+_N5W;mvqT^q?7+BQRLwLE`1}g#yGCKf0bxy>`cu6 z0Bi*%^h#d!R?SwIYTb5RE9Qn7Oj%G+uMpzw>#fiS74&6z)XK!)+j+Z~0)5iZ~T+9wzT)NWkHrU0GCGuqCP) zppX@WfTVYT03vs33*X%13YKD4jLWCazAsh)oop1APU+_KtSqHeLV$Kt5C8;{N$dXr znBNBU3TzsfYPr2%>5FoT+eO^4bFos;>n=f10V7G0z$u6yU*f`Vqg&hy^1bRnI`n4s z<6Ca^Ph=F;*(YX=lmI$=kOg zm78gj7ttVW7#*YB$dA(sV|HMgjxJI2-uoepE77ttt)n1*f2I}vtbwOd^lIE~0ko(x zM0Fpo=MaTL>Qct6F5UNFZ*+RTOGe9oXLbaS3JE2EQ`Ib34M%03=i9V&;Wbv7T7TAl zR-KLB<%|j{)0>BSz+T`Tf!n-+24+W3ylpY>hlKzw*HOCJs}hqE>ZvtoBBl9JycQsW z<8!1TKY0hzL7WXU;Vap9H-_%&@q4i>4RzLFs5vhQUSrJOZvUUWw z$YR`y6q9|2yPp-^-_`Ak6B^v4p{0A@m`3KSaBf^?G?-|0(n5xlt9dg0L+kU$g5lZZ zk%x8FOQWk5DJg>5t=GTn9Z>U<<~l2jYNbuR!u1kn8HUaDh*R{_?}lO}B-B^ob*pgk zdeM@nDzhN^MFUa%2#b{XRrBM7_#>P4yrSn4(#-i&%&L{Ls+JekN7yOmH}sm4TU7G^ z6sTN+s2gsz15)eNjT2$;tv*WQP|ex%GMp8yBJIUnw!M4%BY(4Jz8Tt98~*^_mZ9Xk z@Rz#lDeC8MTSQCv?fe?}hrbt z0-zM`tB;wC*?99q|RTU>7=WuJ4}gJT#yv z2*2B3>4&O!0f}HwsPz&7l_ErM9nZPJBf5pu8I)6YpQ)~lW^1TgArF_jh@1gI2r|-07JUw9J4`s13i!`mk3t#wu7STdDJ2 zC|Q}*6w|SDZ?B3BO2G9EI=3(ZEfS;|J8Fji0L_3^bu#A)So@UfyO!vh-fiXlzOR}V zrENM`6dIRF1i_BubG(0e!LcD0UD~U=m&0v2y>E67x{;M_x5ab_R#qUe1(qSogVd#D z7$AWLJK#mdnpjn`R}%W!d+~;2Rg|H&VYs!t&@VY)HpH1RJ3@iG5GE%`Bjb$<(yRzjq!HXSz&nnhHEh4oV5*f`?yb2sekdHenSOiFZ<@N~>`@6P zaj=yNM1OJa*n&ICRDN$(CbX=2D(c-%l1ObLPjISt9p!#wZ){4MHA08=sdvw-1EeC6 z-nZ<7makA=lB!6JCr~p68K6eYey0M$tHli?W4i)6@)h>IOk1fMicd+X)h?WtD4&{a%i) z^K!+BZ85XRs`|HoQG*3${A~-c)CRx}^qG>d-#_%66Dm2psAgsj_I&A#RSh=zd@J*p zt@mIrSOr~Wi3EiKPLr`P#Gi6vBkPQqOFhO}x6`Qjq72EJh@~av_P6yxX1Oe)S7rsH zY3U@NkR^)uh#!Xp57KmFdete_y7q5Qd{Cx)@@rMRE35pykZ7;70z`nlDvkyIjE(4{{TN!U6vNvbZvIi)`7laih!Lv251Zh?gSC5cKUl_M5~&wq_;O-ULD$o zlF+hcwxXtz{(gGln&&m9qD?}i3Y)?7z<|eA!%_bLXY*i!sLtB|GDN)F z&_`5Z*~b+ns4QK)#gI&uB?vG}YMsBi!%z}v7UlWV!wD`!UNo508TT+XYgMT#1CTZD zA_TxcR^PrZB!Mw(D{3j>;e@op#fje0rL(Rosa>i$sij9rI-pOyp66}1!`4EhSZif8 z=lPyOh6Q6~1gHE5=F32p*P%TZgu!0l@CKgw@8}(zsc8(5WPpMXtW%qf#XzFB% zvc889dOY|^wHO|zzJ5hTPv2UQiXe3lq*oHP1$QudTxzMvegh(l&^iXm0#By4XEK& zm1u%s<@!<)-7>v;bXzNLOWG9Jds~I%S zIyKh@Lmeg;ABe%?7i;Xvf?hFr(9omTDWTD{yt#{$hSF~IM=)O-kAc4z_!iD+c!1=w zyyNc*{K3qtwnv=Oqf(}K%gn;>{;@}dxYa2k(Fn}8S%8W+YfnpPtI~bn$$u%adn5N< zm$xP^BMpoP_dH^iRGV&|ieTbQLgjBH!KoUdgmd0gc{Q^(?hhU1Cz7~#!Oq$GwwBA{ zI6K=cP7$}x+0NBdb2RKD(I;GmCcieVZ&KOHXli8{wT&gT74D2Zm>++as~(;wEakY; z%4wu|7)D~i>16Q3oxN!QsVG6zbcx;~V2EV|V!IaHyVr^!|VbX}_Bc3Ioo)VPqURg_lZJT$k% z&2(A6QztTyozbweZYg?j8leUN?n?Lc_Vma8+%Is+E&1a2q4MTik>QPzW5p>^PDfVA79%Ub*6DjtV2>EwqRVD)F7!PcWFN; z#1Tt%UEYVJ#VW6G@g7^D;*H%l0D>n_3>fNW24j7|AE2I`OOzK7rA0kDpn$HRwDVoX z??U9b)C$Z_zN6FgAnE{uq!#}GPBEEpP>XHBTHY&sK5s-dS2n1wUkiEsJ}59I z)BR2qLW0g)Q64XMO2ZjRwTCdQ7`0jFQw<?wx@AGEF76Gm6r!M96`J!n< zTY{e!=rWC1WhAKp2_&c}yPbiPu|H4p;@FlJW#Wr=rte+i^`Zg+zcUIv#?nf%vXBG< z3kiYkyup2h0)37Ys_oILv633JyFRwMJ?y5sA(9SKHZ@uwAR^+HyF+D`;Z7juQ zx7d{gcI~zsE?H8u46{`=UZMA4Zb3i|6;#$1Q?5upWGsOIot^;D6<}}G-|K{#KsBhv zZtc$B3c)D>bg#DW?Ft3bpjHTs!dMd^k_praJL%uK+fw2tsYboIwEQZ)TsL@k^Fzgw zRcS8grcGEiuXLSC!*X=#fK`uiqz%?j=`HoZ6I}9BMdIC*U^6B%%(N+6t*?p+H$br( zlaGuwrYtoRA~hnOKKzmCvbXH>YuO8af+x-t-ikO zGU2HaLiC3!wKDTVW#16er7PxuM1|_=Bd2u$5I6VSPpbxH5ZXADS2$F;%$Fki-xtnt zhvqzOMuKft7zi?VAxKgHJM2DVY&9g@I#pm=wBqaZLPDPdSt~Zs zXvn-*a{3G)O?4Kd8!H&ie9EnQf*MH>y+wV@0w7OTlN)Y-hYT`oH!Z6!UvDq13na0) z?`XB&J>iSohW)OnP^uMbJ5(sWAc&G!#2HnOp~sYMJPTq{>2m`+E}%D$Reoz8owjyd z#Acq0s#|aKdVf?a;VvbmaP;V1I4-0k3V~%r2_;yKpf=ry?~gv(cuBIAm?=`$+QUxn z>guCLo=o6RLTFiO{a(*MdL;h<4AiCeRk*e)wJEZ@CiJfC!}qiSweT|bUfh-^PL_+Sfv(|6(n9dsbu$hIwz)>{1oLn+rR~jy zi0Ed>KS{#;ORh}RZ8IdzTa}TOk<&{@9e)>Zfu9t3WKJXT9pT2E-yHaJY{)iyXG{LM z#5}3F%<8jR<@xBPPIE3CB&|Da$rd`1E>#~(zodCJ<$fn-G`*L$XLR^``Z+j|bogaW zCrER}cMI;xw8o3deZ8(nY<$IaA=gRXPq_zhdt=srdX+v>x-f9vV{~}agDlc!lBN{Cl^Qxj z7L_|5@3B~Kbq(7H%<65zAP~X@NRy~8aYaQ6tyqwx5*+E=OcG4PY1`^BZ1-DL&0@lrrnaw}sxx~YEnNV+6EOo& z5&_?$cOPG-*ikH8fk=Fr((LQs8C9_x@w6w*J^^y@uf|`YvDN78Yo2 zHx?XPq3(`zMxqbA1ZZXik)>4k0zKdv-Y^XGBIYbl&#MNLD!Lm@cwu5@w97FS000kk z0I3Vyd+a|<8lYyNQ8TW$Efs$?-H-~wt|6`!)0H80Jl2pPEkyyRTNaWffj_yH{c$=A zR9wMD-KD?t54>)--u}>IU()kWTnRfC)hq!rSj3P<{{T;(1W>aYn^#cn%T{qEmddva z9~IRL;TyBn9{&J{(<(w0*gw320UJmsr(XX6OgsdeZmVq+?yt7&{;Z%y=H88NJlp%d zkT16*>4F0`k_aPcF#iBQ%iH9*0j^+IB?8@V>4PdbuNQZB!k_UfaR#6yKm_hIl6xIq zz<#@a*o0RmsYSGly#D~@MU0@_TG0fI+K>fStOPq2V!E7n3LEf=9pK;#5i;dsrAvJN zn3`99>SW!%&LL>+_jJKkv)T*Zr%*CUU_d*PPUCM*-SF;;WYhluS4OthpmBM}9RNZOepk`n<*(E;y>)RG&3rwd`C#=^`~KnIi2Eluk)z*zI4Lb#-!-QJKQbl zq+|DdWk4w_SxEo}4Btj30ULU|e-0cZP9svZPyYMw-#CYzGxZK%cixoDZ5Ny8IK-UsIs+~%Cr&c+EkbW z-VKBW>`r&xF_R5Mkp4#hOX^@ zraC?Nk$g2clfzdRW)0^4peZ^W~ltD0kV{V*!M2t|w zO#RCerAsxT{4J+C-MiBtOkyzmJIWjs&7-qetfnfnWHLaJByc z2WEBZP^QU9RA#DzVwsj=qhll6vELN2yETX1}^E zTfI~LQJ8Z3m`+}momzx8u%T)>QxO0`_m7^$V}jcoBwWtAm=4aq_Wkj!leFA)i8W2^ zEYj8l!l-)$ek~hssTbv$ozV6^z;P{{Z;hTN|w3CGO91 zpQ3BKxko>IW6RDa;M~^hEaE(_=Em~UyHT%7;*-*JW$A`ef+P)y+iZL0$=lmIYDt$f z35Z#W!t9!{<(P~34)^~5UPsO zxx$nlW}-|O2dQ_|J>+kuARlvpnB@g{s9;&CklzO_vj7M^B0(xU&harLafPh)p}16- z%g14Z6>2P!`{`(HyY>fj^zYjY7^DKw4I#-nlSupDKNK#db8w7U5&?rKq5;ei*@tW00lam&FcLGm5mklcja=L=|Yi^?dd0Fvj@35nCFlh}j4{rh6d%SXD< zXuo>sdd^yF-(IM4{{W^y1?mKXPL)>EKJD`x9sRKjBy)ECkt>KcJ2bqj+X#;v1$j!2 zbcoV4h7qyv+CU%E7KFBCQ!R2OwRyb|VZ$v^jeN~--hduD9oDB{(swdoY7iS>K-^)C zB~)CpLj@H+$PSqWyXpVsLKg$C-~4E6ZxvxpT4 z_h1`Tl3)N#6#x&{Y*b;CevH?Az4p__X~{!F9%!j^eA5HFhvWh&lw2!aJCb zoHE7h)GG_=57JB<*4tr*=Zh-pU}_SisA3OOG;gfx=`uc;o`TetM-yF3d$(}!TUfANiqw?ow>}hjC&PJH3&Au3lSn%9B^;;I_;m5)DS(etbyUlFURg$9z zr>W`@rUMob%t&pAe|&s>`$GM&V|Iehk%yep(Xy?6X%1-y>1dqB?k?%`oal?GL z@k`5#&KKg$rpr0Xa~p3hsn%3`ns+s50=4NfjZ`iXnV^Cd^D6Z! z*=Lsa%~0j+#IoAvWmNe!2pT~!t*4~ow7gQR#lhp)DVKGP+vxE}VT#%K9le0WV|HY) ztcrSRO4XSwJE}Q~aN2ctG;^WHoE?3^nVoC9Y85CESn2^;LlrHuFSAas^kDJ(HE{`Q z%M6|FE4y_s40y)d*z+*X^O1FP72-eT4xA&*`jpb0wbe%qp;efZq;7hQk5Gd#v7CA4 z)YyTX+CqjLyjpx-DA7vCGu*7LT6@cH=8fl+=kzlX=F+UCm?Djfr`Ih-Olz>rFG&tB0yH{I5H?vACyR-o08CY1CJzT8&nxQk7Ap zij<#Xgf`+2Y;yRkTQyPA5vRrJg(UMP=0+-5+eV>q=f) zQ?Fckj6h`#=74=e-1k2C<~D~EZmmyR+|s8>D>YK2YiC94V%z?hX2 z^BT}BYw=E)kjD_ALww~GQOy4U2YgGz_cs?g4JWv@F3zZ^!C(ne%0|aeyyMz@o&B+3 zXRN$F*KUq_<#9X5nmLR_nQ|sfWU8W%vLYULz{=gPA(SoLlqiD2n5Q9B!D3A8xUeA z>N#B7b3>MG6R!I8{{U)1Et^&(D!eh)Ne5#p3189*{`j*gP;afUX*r##Wug$&%%4d< zVI%@%%(I>PgGcdi?~5|X4PtP%tx#(#gh&uuf{{Sw>6hA0de3aC-b>3}A=gtT^XLRZaPtZN5l zF$PHoeZi0ppZ5O%HVh`EP@#i-Fk#46QMsWL=9;6dI)NkKa!W}cFPGJD#gOFcTUY0X z6s#KRbr?ZYFm9$X^HnFgI}_=WAmY%J8Kr@dULW#;gf(wo2rdbp>mni}V={lQ=ELR7 zmPrhjy=blI;*6_q=?y!um9CtEcO?6QK@c~C-`@}Y-6}z=0T~}rx4gS=F52F$Qv!5` zEO#-5nYdgqW@&+aZ#QIQZC(@P-xYB!YEfxg-i1vtbQf?NV=Eot_xAq)!;;$`TWrmr zE@wqKX3Sf;vmP&cA1+P8t=GCIzbO12E{l8Y%GIh8Rh!MEHAc*&$T~J1@!=j-e%EF@ zOvA{XX=}8rZnvAo;5I_T90_h7QX;_nw zDB2DhV;PEOGZU5CR9w|z;)W`!jMjwq^+tbA{lbS>E`*Il!m5(Gb!;RKua@}GO`9fA zX?cN_tHj>5+qk)6?i879%qYc&W=mes+FRECG1HeQ`NMU=S2nF)twUzjX?>=EeTW5@ z%%>9!s%L$h`EmL|g2f31guP3Z%k$SB!HvQ6%U9n<5o1+vxqr`20?e`;_J&)YgvU8 zB-~B_G^|}_$V0t<3uCwF_Ggtidt@?Uc8wb3aYb|9L(0c{B|PgKtaC$?d`H09oy|41 zx}j3usTC+SCPmqsV!A{$h}tn{5rLD4mvpIW^4ps3ZYp}QIjB&2hB|k+y z1hT`#-ml*CM3~4p=F2!*B-E!)s?(;06t7VbOQ?aQ>I`7X$Cd4El`{)+tg~v>0Wu5C z^sCIrtI_DS-ewweT(zdC zLp;V>J70I>^>F)RG|qe_^6!{d45ulysamLQF+~Hss9~hW$+q7tbC^Hd7nHtD;wAKW z$&&5uF+y~SN~#m+*|$@#z5U`K@$bTl*ExFkTsP;~Rc%2$uuujtU_!wg`%XQR$=~^l zGXk>ZZA)&g|V?X%$&Ei%cKU^(#ivq%Qlc$E=U)%3QWa5twT<_p< zQTUIRyisdHgAr2dj#*yn-AFy!wX!rMZX^wx9<{Om0BQa}?dwL(@~a6xWWkad%8&4p zu;kh}M>$QQ?y|D9Y1@lx_RQ3-maV-+EDbvJ9+gC3BTKDC2lH(h?q$uFId78dIT%*u zA(!sOg=uIg8nKLKbjgrPouC04noP-A-0l4_u)}d>z8#-?F37_#mrJqURKZXtTS(QW zBmP+EWEQI1lX#-!qAXICA)^<#U4UQExsM&f0l5_@bn#>Plcx<$enEQMf9AZvyY zNjm~TAa6RGbKhpgfE1g7tXNR$txfgH6V$mSwmn0t0V8H0m>_hKAHFO~m6|gx$r2Tr zNPRx6Bx>!`5hYxZcOV15v=Vw}4^&0mGyJ}+7OJQmG=%K#z$&3J?4Y0A$EcEVWTJyE z<}_idCn4q#uG=lluAor0xU5^GA10xaL;?n%Onk5takv?2NtlH|H2L9{Jydu8^k(@t zDtNOwAXBobO&o}nByLD7!1_k<^u~`F=TulYRZyf$Gd*3(->N0A z3UarG@;Y|mC{tpZO0Iwb1Lh#X{S0*D%eJSKJ5Lm51ejDz+}8DKt!enQ8c1hVwQLn@ zo15+apNb?Up|i5FMWaTYB~_5hG{MqzfCL$UKYV$fAkCeKtFW0eWob|H=KNyNlVM^h zL)GYpbj@f{xK?V4z&4=FNCaw~f!IVg{{Z@NGi1A?7Tm*zh9HJt`r6#S*vx40HKi&` zRMkWQNiI(A09FDZKni>J$0>=yOnJ5}vaH=*);fQt5+_<%Oiq#e*?d3V8S|cTliD#uE(Ai>z~4EO5Ac|J(v@ouZpw)*bkig=7yMXecXbyH49n@}11(bN@c zwktpY-+mDm0RR#PxnQ$9f+jt&_kd;~fiFXLdp@Z5#b;KS2*_~8!sUN6^R5ZZ=vTD7 zsBGQYZmn7V?4v*?oQ{SXwjLa~@>Se0v*;MRq2;}%=OyvE@^ zKgd4Ac+_qx-CLSfsMpZiwW=*dsEsnjy9n(V-%Fh%7@Z3)bh_PNjB^t(_?!&>l2cGF ztv@}HQ~ovn6dbbWy}oJ0oEKwjkZ~(hsZouc6k8km?5Aq9=>g@wquob#{{S{M(IHxbs-2GG`e3ADCE}Q~Ev%q-RX)!|PF?}bs?kaW6^@Yw zq|dkzdPtw7r@j*Xc z`0zg|a5I$5c@r(_`T6RHVQ0!_sngPLu6Fu=rX|k_@b?5~G?dl0wGPl4oqAN*8Qsjd zfw%RXc-Gh2J8uCpiHMlC^C@BZV{Wuq5_eA^!m84%3{H zQ)yd>I&*4%F|1rpGFFC}(s|CG;rt@Id4=%(;=UfKSX$PvTdBf^rnB4$jVJMHi2T_4 zbIG6iC$ct}mL@2dmwGmMO{heWc#RRjS)9y7{!jrLTuP z_Pd01tE9xr#F%WepP zx6JQ7&FrD?L8Ui_o3d;Hla){N|lrz+Diyx0FbaGfJgrTENgKKIhBmH z=`O9!%}&AH{Ll=&8r7E5U;RPZpBPzCw_t0e1ZYE14`4NHM{x@S8g<#T-ekfhpQJrY zYY$lds7&WxjjU01JAY3X)w(oa5c5MXv3II2k&3fG4xu}MC1a!m-Z9r;{F_KHPz=TejZ=uv8Z^D#14uzDbu>uq%sO?Q9ww6C8W#|{qfXn-`USh$^?>! zyvwP&;;hNY8p2{Z@i#he?)9SFu~JBeb0Q>eBiwuc0H+?4vi|^Q(j{in_4ZryNUty? K+A6QDNdMUn=X)>! literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-45.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-45.jpg new file mode 100755 index 0000000000000000000000000000000000000000..8d2b329e412314b7dd9f9be44e4f12213b17d27a GIT binary patch literal 94218 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

~h0{d(9YJWFwJ(!;9k|&vEjtX~xCbHZnoBETUa_ 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 uYZ$+@WA#Cd(8W2DAFa%|Ns$vzjg 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%0A~X(g3t%z<*9joe@%EAJ62y*i3)8;dI^Q_Y6u}F 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 literal 0 HcmV?d00001 diff --git a/test/NUIWindowBlur/res/gallery/gallery-medium-23.jpg b/test/NUIWindowBlur/res/gallery/gallery-medium-23.jpg new file mode 100755 index 0000000000000000000000000000000000000000..0df5854066d325347e14dc2b771bdac66490c4c3 GIT binary patch literal 62494 zcmce6cT`hfv*-Z=2@&a4DFK2&kZz%cUJ}62v7ks5Q3wz^NDD>4ND0jndT&ycF3mz! zkfulx5HPd=QUwHFe&2WRefO?)*LwfGon+ZA1m8X5qg zp?-i<3h>JGzK4&8_k9mfn4*jvprnny1_A;9G+%z2TL9g8F#~>D0H6hE`DuLsdmRtY zK%A?~eIJ;Fqa;j0PW}?i!rtB67wZDkb8~j|!Fga^9lbBYe6dc>IGE3UXPB0!y(9I{ z*wxV)>+O6IX6=mgcJ;u*6lCO7VE27|JXK_6{r&xA?EeKPeV^w@1OSn zgXz;b+He0c8mzaBy_1K7vy7vMyKI2Hr>wk;oGhTG5#a6y^ZWPcks{Q4A~0vHqlc3# z)&(hIWvMT%B%+}XRSQrFaQAd~_OXXi;j!K-0Z5U5VN;=A|8rYb1okfwpNB}18`n%> zIvzM@*d>`uGIG*XIru4vs6%0DIH!9m=DPa-fr8pYiu^ZG`z!uS%<{_0%Cd3_vI+{) zR0wJBK&+2_fHc-y^dA)e#-Z!%?TB;r^!Z0&|KPND@bL9Piil93!~T;$chCPq{=bg= zzXSWY-uu6-{151Vp8QKt{~g@P@xM@e`r_RF#kG^8th1Z5yEE3un+h*4`!9H^$W(N2 z&h|bYI7<%?H>8M>tEa29r<<>fE7qH8K9{M|{)gv(sHj+Y-1G6b$2tG6Q2z`arsm|R z@-Hj*{#WOgZ$&S=xEpgS~eOwHk#89fDm&Xz1e>@8d@-f z5ul@IfP&6Y0rXh`8ag^US`Y|C#{iLHZZ#|AP?aX(c)AvvuEVe_7aWA z<%TPoC)e;e49!7td7Ybh;yJMk7PUWrQ}GB;NrUMAJ0U6}1~3&BgpvB#kd4}Hz8301aUFiLwdKpIJ2}@fG9jZncdrI*8K&bMw2hUMe{# z(KCnT5%b@utPdy0tj~DfNs!xsHOm|=rNMfo4azBSRaecZr|BYHp-r`B7khxP!3;rg zd|x9pRvT`1H2arwFzSiXM8lY{WMt#~flpMdQJ9Pu5nz>H284XdRkili-$x`Qq0-#) z6W_0(+`lvhmT9Iu=1fg8j8#51NNm_z>ZaWAp#jL^{N(_JUR6JkOxlURQ6>VtVHe*^ zkC^VIH$cn^f<3$j+tDwow8$XFg(I&ur9DaV>X#V9daaYNN352`N&3oesS zy=Axfyn@CGR#RqVt*3WHc3AFF=wF|b_;{nx>W};xa0%7|f&>XjAqK-s9Qn6!L0JFA zr*o!e+{;{zM8gJqwQw(jpO})`DKN6XWC34M%l!gYQgh$u>kb<`Rt=p7N{W3smrnr+ z5AF7}oF5elUX#$Co}TOWlkHliFyj2;@5g#=;OU#|9F(2zZ|c+HXWbBL85Nh(%-kaT zm>Ij(f|*r?JOfWMn|oqQ3d&mTu^Dv-omV2e0wyEhIQj+ir=(0Kq;pF_L9->|!>Yvz zs{3T5JWJb=rEr-hcQ7M*HXD*C~KS#ZGV3z-bP45!VqH#9fow6fX)`M zgv}I-2-IJBc5?q799bSfn@p0_iEM-)dUYJq5tv{4TGhtee)+wW?E{e@pBV`3=E z4y(GRDgP_-p+09b786J7nPAQ_<4UCl76-46)WWZIJ^KvO=1Lbj~JuCSC^)2i1-e$wLq=-)2oxNqC501)S;d z&!AdxcIdMZ>1}-!Y#zE`7ap*N3C(PFcmWG>B!liil@8(%05P|bM00XC$!>4;5-Tr1 z6N$aG8_u~16B>6s4tf{T53(`q8p;Ya^%DdDN6`iWIyd4mY)7!oGKNE{V$2915{ebRu z#$`pBCvVzV`+1UaZ#j5-lm^V1QD8U`$E-QHyWEraq$hCuap$0h1;Jezbhi6^IB&Or zTC#OdTNs5_tQq%)b9R1_-!5TxP79tD(z%=y_we97OW$#|cLD@4XrDS8gzgxu^=c`& zOpf1?S$bpx=g9oP@=_?@eooX=up0@D*NgYz#Gehvn0x;-PdoTS*u6%qEUmvq)e(F9 zAcnPoEi-NG{DP=Zf6CwHKD94q!Ucv;oG{hU>1g*JGc&BEdF(L=cp35pqoEPN;=Wt8B-74-&t7ogh-4iDhC7K2$ehFI6D=8hl*AJhzDhGsLQE1L^6TV4r zrL0*IUPzdwNy-WoZGQc?z1R>@5cTAh9WB=6&31g z7g>zBSG^vUML`@+%-=ujzR;fu$aDxIMm8R**TFl-tvwdzWBJry-$6 zP8Iy4w!fz01TBlTUhI=#@}rQlf`9MqsUM3F#l>#CD=Qy!oC&9mVW9(D>J<|L$YaMU z-}TxrJ>Hgi*yAt+k_;JX3{S}pbHjOkDfL;fzM;9;6r@L&(giVbOi5x9>LDX9v#-R4 z{CF04mV&LeqU*(2Mb7Z!8T11eyoPfTg`bG?Odl%4EN{P~)w0(2ifGJ2^>l%okdTsA zZiSC*#57QeAZ-(cgqH)rHOujF>FeoHGEesP@)-1KdaZxbsL^zxj)HeM%8DeOoMp3Y zot@(1%1#q++oBQZ>{2ERKrcKbLf^3xtKf@V1XkqlCbdmQHF|%6L;*;=h|!QE98gbl zaw3b0PI0s}@e1uOO?-C+u5Hqj&{$PFWFie1 zJj1t}WXWv6OD=kMhofu)^tXJS6h+unbyQLs2;w1r59;*!Q@|<(MI(FO5nstAw|vV= zv)=1|5H`RubfnQI3HP(UvM*^$Nm=(E0G|T=1u^4yKJ(7(Yx^OiQZ zc=Jm8xgrJi1H|sc2Os;h95g#A>6uyoUWF%-_~(UhTvuM0JtBclj-4$yZNyPQ;!?6o z0E(Z$RZ>C$X6nPnSkT%7Zh=VKJSX9TV$FYX+4aIl6)4 z!yv>A*XnOPoupwf4vhc_hGM4=b_EGZt%#EL!5c94P!Df{5PDYN!=st2q0g@D=DFhm zDPE;ntO4A`j{#${3>HvkRC{TL5?SUGuf^r$cOsNDmI*%WKd)-xp|7;#QD%4DygNI( zXMo)}jyw@9E)sj_>@l+!Vf!f9=k1W*^#WF?TDWSKD$WxFog}eC z+}1T#=ZPtqHuK<&NFMAR+&t(sg<(6_a6uN9=3%G0NPR}C$FVsyKy8g4mZYT z2Bm^frA{bBDvdI4FNjvb#Qw-<)Yf0j{Bd4k3|%;js$WG?ZbE3^e#d}{`^e9v=f$0N zE%o!me#u>d2)_M2rNiBn7+Z9}?Y6Yzp>?qv7$jmkIt0U@fFg^pju?LDDU_u}OeH_c zYv5u{d7ZV~E1uXE61UuA6q1+mMumxiGbK4Hxl^(O#N3fsb9zc zFkP(w7Yg=R6v{hTg8=ivUHDIC+A)@TMzVT%kQhQdjg>3h6QW_4KT}i&+u;;8A@6I^ zT5QzZmG#sI(-DMTwi|=QFnYb#kOFcMNWJNX-JZvMhmO` zE$|0~$iosjg~R)Jnwu~-JTqz@?%xaBQr#JAjxRg3i)0Nk9K;zQPl3hWy`#`+q!ve& zdiLNp8N{$*KlnLGbI^?#8Yy~wXjkmTbARvn_Y(!%IKael;FHV9O0Pf)UR6*K z?{o+kDGS({(OSwo;>=yo zB(1KI>}Pbuu%u-+Mb+esh|1*ab6nd}54wIZnv`sX+~hx@RzJn8B4WexrBxXcoM|+8 zMt)Lc;`7@H)6Lgn>-$MgnEOvaQgC;rceP4_-5QUw3{cM^r1wLGc6H=18Dt=esK1fB zCg10kXm%*Ev#aX28&i@o!vkS_rw;*27Q%6iWWp&hQ{hx*j?_yR7Be9pM*Z#IHha=WP6n;qm1A2tK$YQSPdLw}#2y@~_IW8+x*|BDc+_vaHwAH5~;V-aiIEX~b5d59*&1+&z^BHM@bokF@* zM6Fp?)s&gNWwVP7nCel{wmIX_KXR&gl+yXyg1wF|H19t6(C1cv=o6L&^lucR7V5R! zyAX94?AB0H4!u=a4rRju@ zxtjxW)R+=d9Te2$TwC^@hq!y&p*A^+B#||B7y)kf44(CkZFDPBs~RIGcy)&SV>ZXWZ}_MM(n3;FO_GU*< zxUd)o_e^%Jckm!?bzqh#kVC&)Dc%rp&T;;k^qk zRMqev?lk2}GWtkxN%ta6actv&oIHWaE4y)jnfu_T|1Ewby}HyX;BoXZ54a^io-jVY zN;Ef_ET)A(R0B+L~U*6hHxs1sl;4R*m`^Bh5Cz# z?BZ8Fj^=tF;+A=6M+Q{S=A=fmH6A$$dKzfE>seh)7PfoV*V}zw&eIc3mp$bh7u*z- z4xyI<75LGC6Gt%|kqJ~~g_7{723_)za4EKYdYHa837Cf^1(UE{a_j+v7`PTYrVP#e zq$L8ZW|uq_(J63zr-_=rzKAMGM~MufdnKo%{pkQQf0|UiirZxluIiKVJfatoRtuv< zf3ruhB1`d@#e}(hUnj>O9u1%t2<4Ha?*5J2x45vFImr*KXm{Nru!OrD?uprRwZ%^`BoQe)js@BY_2aw~~Ows0X z1De7hLB=ivrHvsFbkm$caibG94;)&81*chm1hOAoqzw^WM8?i?F?)q`?UJ)+@&q_* zRhe+D3+I$laAFStS1*=D?Q6EBe(o=S{tf^T|arl@oDs;*=AQagoE zvJtiE)f8r@-lSpdn-aIDkCLRZ&0S*{M$cotCff}YyeV%*@(?zCboNvE@8a8X7D8vd z$9=dLCI@KrbaijY$c5U`%z_B`3Qy8Ph(__X+XkghaRXnfB@vR=bAzH(cVdY18c!L9 z-f;)f0PI?ZTi`As>TvQk$DBaeFy62PHp2Ew%!tRaslk1;4}y_&Hn z-~j*V4w3SCYjeN|cY!lAs0P(~_m~Krv`UnTR1R}X-rV>b3$8|8FZXxz;Tlue!b`b| z@(z~!q1Kt1J6I+QKYF#@rhqsvRenbRte(jcQTxc2`H>M=q&r-kUKz$o3?>MgteNPt zny1Y#q6bv%=0#J9%;!M+C7`e=!Ara5?;i6jQ7Ria^xi5<7_?txPF z2dRYcTsVf24k3A^F2znE`$1hc4?nLrcG0Zt3RaUOB8CQ>2l+IwstG#uWHtewzK7$q zkVsRG40Thj#80HGzmlT(ERC=u=I0L!N9rMxfZbvEnkRZa$pGZi<~0)S)_{kyD=QBc zkF$02iZ6Mp9+4|z^Qg-+VH7-QU33u+fZaIoENa`6Imrh16W_{&)t<-o^>5-MQl3sp zI4buAs6KYgGP!0T-4m^w`$b}+P$JQpKcaCvahq+AGLjVi=&+Nvnu|n+Eo=o?gCDUJ zqlqCJ(|Aa`A%-D9JRzhjke7VY>JUZ7#(BI4sdmD`p2OG(gzOBW=JC-^NqnnXuES3g zfOOKvFhml_*WnZP6{Paq_p0(;BCcAb)v9qNBm#v`X#!H>L-c6Nlj zIoj8#X+2w#e7Ip8Kj78Cw@%w^+&4Z$O%vcwi#PhxrZ)Wwyb`hR8?NDL(1NwxS(B|j zz1CjGB};3^S%=*nCqDG6tDABEYJ}4@=FDW(I?Zic@Ug z4HBz#+1zi_UJVLSGT}4fQ{D%#OLzz|&#Q6E6EZ7Bh>RdHQ_)t}B_(HeC*^3016w)3 zeB=EG_tla@bd1lljGc<~7bLDNkD;*hpDNsR^br{Qc7Op5dtKcZ5U-zvF#SIbSD#Qf}5i zm7AWKJDCN~Nm!5q1N;QC`d?<{g5y1% z^Yz0JDnY6+>_zJ>1IHD6uD2Od7srM`LTZsM%0Qw?LHVv-h&R<$Io8aQz35>{7Svse zjw2r}T3YSa7SiARYVfG4oePznsHc;fu#!{)VG*3g!vFh-Y7==33lbGH9gKsYkB(7P zFCZhAx*(K!vzN@Pq%5vVrDDVT&RVgvgKxl(EH1vYO%2oHqio9q?EWt5q~tX(LiX|y zh$EV^ODpGTLL+3#(%91#_KWJrwh9*5(%1t;c@Jm3m&sJb4D4-aZGV?)auRx9h|1m9 zQ^4t#cu+%0P%7jQknbAmE~ge4T7b4Cqxwx{ASKOv3U8oH%@wFdcRvZz6$m=i>g)># zg$Euvj{C&Nw%Ucy`;Bx0o4IfHkb4P#eMCgWh>&`AhN(&={w)ZCw|kpf=h;PO*QSxY z>qL_yx~E(YvtmW<4fW>;q(adopoa{lM9m*JhxU7~{yph|c`svt!Br)|o8&&ANDzDu z;?m{ED}<;qd8bfTH1?=5jRpwU*RocCh^Ho5hGCdzsPW(|VVg3!F{#|`wtkYys_E8q zzM3bhK!RO?W>FmLl{~(q#bbD-U_KFzQSLJFA}V7H4ymTLY-Xi$kyTHeuLqzY$cyAi zQW%B=Zux=b73l=c66^yeln0dd$jc)zyhLW_ZLdzc#@+JlN8Sz85Wxgh&;-gC*K)49 zi?@fR?q~rRoF9RSRrB~x%oQzMcY0#2cH^P%{_$WCQm z#Go!Buh`a9RB+bmh*=-aw{Y^Fns?a7qGTDnaJV-_O)(vRfZmVlcA%*Sc1lpVQ^6s6 zuvo*`M+-DnC@u<+Bybo5f$hO9DnHOdX3agg1YuG9zA{GRI=>J#x#L@eCubS@WzCaV zSysqJr6SVlkUW2hv)zrN!<>xW_B-=4h1z<{w1rI<&1=oQQ<5O&iJwe(VZn66ot!@w zxq^a=C3`w0$;$KXZaZUey*CJG6{?<85LFNki1L@<3tj4!c!m0lwKYM756s>TOtETF z1NE>0T~?ylU3j!^bKWDnLAWS{uaB8I&@f^FD_T9f8+F@Cs@PR0jWh6WvcF#K6>*R^ zX?Ff;AD?(i_sCSjYaNjRh~Z;C^G^N+cd}|5iMj`+XQ|u#E)P*jglN&D;dbmS@FaGm zDw<#1VmiM1``rzc;m-3szE149c&(0!tl9PXG#@RlIzuShgkF*nPS+t2uQ(Mp znFpbbOlhD~#c4rc;$vCN%t69tT-Loj+Bn7m2s|Zu7m7US7C_|XeYdl;T%~38?iH*c zC#NnPYIe7U9HLN7J#z;B~NJ-5XJjAYf56xI}!kLW~9C$Wf%M@3RsHn6dxpNW<@ zMpaL(>*d)cl$29ouu4}|ph>S#!pS>I9KOFtgTz1P$Az}Cj@PxM4CpH+0E5aMCkE7{ zMg*5Y7L1W zluBgYu8$JUC)kMXDb?f(*|yO}FF~*KG*h~^$%IeUYyF?)Iu=%+#1?-(1)hB`vp(Bt zQkUXu6klZbs%TN{n$kqlwuQ}f6EoeGq$;x(A82S0-^Z-eU z6OuH0y507yRgCa<`SyQOX*2HDGA%fBVHu|>JwRdLd9)~=80W}8=QX`0HF#_pByNB#ZSh;i4?EYnT?^r1N&Bb&G$u`>udEQ&^SN-+I%9=rHu z3GRg}*ZKqA93hxF;Vg66rsDqMwaL5W$w{R0Su0)pWY=qygH+UV~H`T~vhv+r=ArPB;ct8i=6q?_Q()~!Pph2~h zp|hu#Z-V7p^OkCeff2}MV4+kTh$2WN1kd6N*1NrrRbWqS;xXLl*@Xm-!Baq)oG0L( zu^2`^ILcdw6@%NeO#+H%2=u!<-JalttS|W(q!WDepvq{uJGv6ZFBiX@b@}!6}q& zb};Y!!O1ZszsaC7_a~y@ex@`JgZV3qZUkD8{I|8m=L5VJ(U?;`N5d4=otDE8V0J#$ zKw`m8kmbSV%aFU5F0=6jteb4(@yyddlFak+SLeq%2GozmK3F__^2ZTD3r*%h zRS+#X(K4S+_G2u_JW+cgOSZZ~7>$qY(*n9G6s*2k+{fZiSC*Q(jB&2j{3JCak83S$@|~(y5e)+|3hz$RCxw1yTez4Q*#O1Wa=%&Z0XXvQbr)ELV|)=d0g=I zkygo=j_J|^+2weFOUUPA;x;WBcBBRqFYQC zO<2Rl>W!QNokkz86bEF+&BZ6OCt|O!_*>Ku?!8(HS@DI=_?=n5df{4EYEEMZqkHFK zF5=c$RDPPTuPY0uYjct3{a%qp^~Ud>SsB4thHs%_+dPG8-yZ0hm0bdT%}P4H^l9D~ zDixW6xxD%l>t?bhq_Aa_ihg_w#5B)-$+Ro|ej@4{`u&xedk^RL%F7N{<+CZt6}5E+ z&lwMv442IuRno+MIf+S`*8`qy)n9jawO?A5nNAnwd-O$yZnCH$^JUJr%Er#eQ>wE? z65J6HB0CjNjsJ}F>}hWT-;*?s)BLNxGW&FU+?c4S`YYAkRK+eE+@M$Ysw={ILbveJ z%a70dUs*}ToGYV!Y?y*}_Uf1JvT(InPfAlMpv?QJHse}vR1A^DV~j7flB#LgI|f<4 zN*^Skr(?Hdek_et^qMV*i!GwN&x1iv*QB3>!D#MYmO80(e_ENa^mv9NEUKvWep)Yc z+(V1v6_XF0+bdY}iWmH@~F>-+1{<&%%UW zUDR^ygV9EAy}im~E8!-#`T9PR*M|ela~q3j*zOIX#5b4Hi#|&?rZ7m%!&^FdO2_?0 z9#3+E9!Do!GqG|lVDA59^visZhZ=0RAo0$+RJ0$YncsVck*WiOy&o9}Q@P(|P5w*Y&UQxQ{aMwIpTkh| z4Mkkf&JM6_Zp}nNqU*WG*w`OG|(4Y)iltrzQv&C@M5k*yH|)IP=KSsMIn32hwa7 zO*DPBrm{|pCyqS0HJY7iFx0bFk&S(ZeG{v!CY}G>LAOM-pCScEp7(Ws?|fUNuQ$G= zvdzsw*XQA8-EXT`Ukg;*F_rOp`iY2Wk+y~hbup66McD#3&MJt(1BcUJ*Fn}zKG&)3 z-pq(^wnx-GFgKR1x9AR7ASnv(Bu=#1nkmb&tUm3xa1nSPZEjW_zD{%Z`kaYU5-JQo zmaS;$6IyXn{8i#G-}|=DpNUL#+PO>3*IKnxglQj*vzcZtC-X%+)5s`gq^8m5_%c-n z%%h47gSF~KMw~xe4tz>9Cg?P&{~TPDAoc`YH+>Q0mHXl+XG>tr%vYh?Y(~#^x`fU? zJO!Bdqk`&7hA);Iea!rBIPzW2(dc>E<+6)>36IBP8VW}^w6%1?xP)h`q~EQu_TIRk zj|+-HodT#n$HSGxLj6KndE+uLmy2cN#RyN5Kf7o*JLee(BjT}PO_TZNYDD1!tAb+V zt7gesTB$+-*o-eBI$PbB+Z5iyYy~;%E)=_tecin^iF>qT!(;Fcp?bO5(R>=q8C@IJ zk=hvN>b{PrQyF)nR?om{`$#*v7ojk-X=Tg4XB3ydu zrI_^T$a?Kg_lf*noh#Cuv^3ZGGkXE{tUzEPLFKg>Hsg)f5Eh0&=-#AGbqSf_oC<-J zF0FZ9W$MA4=g6xs1lnsK$A6a>t0B7ID0F88tKzhAG`#{X93-K|ue!#m$u$ddU3-$k z-exAh@g;M@wr{f(G=(*V(4y4>G){2cMW}8;x@{8UEGzZk5sB3z!8hQTM zlA8fgy~2-|x6c`#M6hrAvthD!aF zp7lXq(np-Nouzp1!+YHUrl+A+Q%R=vVS&MpOVWQV?*x%ccUM{?^KNyXH=4W@MnS%3 zDC@gmj=+hid@@nbq<2q4RVqFHKHV_P=WeJWYwNIy_pliJwt7h#X$$3VIScPp*cT3b zXM3BiJ7C|drtdvZdmQeCZyDE>h8qQGTHX9}5pQl^#Y(0#I5xiMF8=vOMfGau(=pMH zQwWCQ2WQ(cO)}r44x`VV)UHFgphvGI(pVptZaFBKp7Yw@XX3A{E5C189aMW?MN{Wi z{la?Q{grLd!uJ-L*$vOL3T!pE-47gCZj2S3q|DWz=Woq71B zwN>wt_g9P27cH0Y$?0BBov$T3ylD1;(bVsr7Jgz|Y`BX?V*+;>eg2rBnp8Mmv(L`` zB<88FO6{|3PeKR7tJuy5D5K-fA`=)?uWkRjs7x~@9q`? z3ZoNKhIayuoKxZX$Q!n-tCgx{KBJizGRE=6g+6QEwOt10htiEDT(tRZSu2urIT3hb|vK8P{XBfX7JUv+FO_hLNRBE8%=93 zoXsCPSdHmdAPQxqRo0rMQL)-PB`yf`MKlU6#)EhS8<th^MC5P-10sv{U*6)w5p2DQ<8Io z1EKlrx$?5Ix^EM-Ovf^#} zXrJZaew|%`@A9|H>gmZBP618xo(wr~Y31wAtJj7;)+ZNEz$cvUxvtl5kU5RlTHT9o zKdbnxG&}A292`)DWwd$Nzz#EC;b}vb-oNn*vh^@jaCNUOck*)P<=QIM-2R}S#b!Jv zWjzhcmmd&s3hGwD4IEw~9KJ)n>UF$E3)iNISuJ(Fd8J<#7Vedjjq<%cY%iV^&RF7tYb!c8<*obwx79|y|0CLG56T_o>lms-eYRrecQeEr>EDz`rB1`d8^I$w~&X-Wr~)5 zUJ9;cAdV*Z(NSukq{%1# zu>awK9x=fLTzwD|C~*8cyN$(&5&Fpp`ZM*YqQRgv>J70v0+U|)@ILGC=m>pgA7)ql zpnPQVmGGEr=ch7h7P;NWRmCJfV%lYIniSuUT-|Wm2FhKN=`-oX0G)3k4xtaPV6v_k zd?>EoiMtF@AF?7zj-dyaW3l!1=j^^Lx9L*A4ehUBa_M>@@80BF&gxNK$ zBqe>S>5*eg@f(3)3(gUrJ?&x16#TuXtn&+~mZ&Fn3UT0?c90PFxt9UM6jg?aH19f# zH_@ZJ<}W6VI2oQzh}C!skHM?cGtDhh7gEb{HKW!hUDHUFlt@^wi84Y>o8htO`%fQ2 zvs0gJcHb+WE7T^uSFA&Kxo&y$CbF4G@%iDyi|$4T+s{sg{c%$>UoQXZo>;0_x%=Q% zaSP2PZL+I%{-}G?kW14d0_jk)#kR@u!t)def)_R}VHP9@8XlfpP}Ng0ZZvD$ei73v zA?bYG^6_l+a(`IwR867wFuSjxOHp4z#Yo9gp+do#*NfePYriM|nq6sQI|XPnRX6A6 z%0FDreO?_GP1HMg}1c58aq9>6WK!gyvTgSn=*KPa&5M|K$IYjSgl+81)b zJf3Udk3)m_YeAiKr9l1MqSSj7n+v6`wa?S3N3uR6lC^M2`PUNGZkJt3QC+x^_)A#z zWyfIYoq)8`z>lTINJX^;!fKzkZeWCsta-9H^^~B}E__qYz5k_KgWUVz6sBt|Se*o9 zc2rLNF?WVZw%~c+t5|69v(!Z4;_DD~PX8!LyQiIc?}EuY<&|f33W`2w(0|sfV~~AO zJM=vN{gzFb#osPxT zpDdc?8CfrH@?4&I@SOv0^=y=T>7krtQs~t_`!d4P99lP8xJ#!LqvL$T_D6Flx9dd4 z{IgPt7KG}x4l?CLT3e7^asz?W(3irx5l?IVqw z&N~r{4fFhWSFpq%x2$ek32qnk77i#$Y_n>^;p9J0i6jtHahjv@>XeGN)v)iSoX-{) zh>rY$(Cxowzdq{~Atrn#v3b3<@S@0&=|T_LmyPyfzG?;Hbc8Kt4C8=Y;N2QzbNUtZ zBd^wUk&j-YHhUji3&=!I6Q5*!=)Br&m~FNXeKX7D$HHQ-3Y(=_Q3H^fzS=^282 zPna~GPYLG?(bCC&38JCyZI0Rh^WQgXKGAZcyr0}mYJH=ulcHMN%dRQ zC222%&da~bJpYw9HEpDPYaM#_^21~-Bjo-;qFGfw=+$bqNJ+NEJpQfS4jId)(Jn}DJ(BGUU~6sH}ELr$UND+ zP*FsYEgg$MBHC6Wg_vWk>c;y$C86ei;z2=!+F!VcrJtl_8rRc;-XiW#3U?~f>h%_N zf6@zL@xls4IgP$}ZK7zzTH4c40)3G~^U-gzg@@KZs!hHg z753Gol)SlBeoHoBEVH=oLgVzcBGIvP5eg_Suyc=j^>+{EOOx3jXGZG{v}58^ibhRt znhdInU;2L8_<5TecD4SSA9kT=*)Ke#w2#s1tNXWmMFkwj{YL!*MlWSeszFs}v?eN( zw%F*$Z6DlqGCWSMQWr*i6R0z8y5wqV7G(PA(1*vo#OtRjUsU5l4XRc++W|sTe>f4d@e~5_z)PqWm4pq;JP1A_-S)MQ1JDOeo)cnyO zaavwnzG@-yBD(UmJ7e8F$FZ>o9~~kE<5ZH7=AQymf34tewO?^=#u1bH!_&(D#Jx*d z87nYzu^D|jx(k0VGa8q7fdFV(1wCV2D6pgP*wsg`5OOU9hy_=c`WR`E#8Tm#hF#V> zi*Ld>gR#$k@NY<^|Gegq{}A!B9V+efgZq0(^A4X6XS%NQ)aDm6-Ezf?l4$5HPNQI+ zCZyj5*9nI_MT;N9J)cKeqEd{ZO7XrzR27h64JN8E2a_wI`mM8T-@Uz6|4* zV%@7 zizC-cw91sIDPEtuVZltML8IiD&O%J=nVYWHWO)az_FipPVKB?zdnZI;+plL6qCRx8 zAwx$4_+=?p)_uJPMQdmgU+u5HoW3u(Zdvx}-sa$T`iOI(|H%gt#%Xg}DBP96hq0*` zl>Oj(P)|>1b;seFNVx~5<#~f^T1FXT?UG0TJA7V-Wk1t~dD`Ez9sGsVBJ|p~AKVXB zB(4fyuLuq>s+EDH6edUw$qQ=hOgbg%xFYQf>sa1=HWx!?xx~fXgYXq=$=`k7;3^c&WO_G!Z z*L!A7hnN=|GwqNnzHp;vT{1G1HjQ_ZQ3Ici1U6&>LN}B;D2!qOW+ryIq@X5@IXHjg z>(8`Qi(gM~9QrIHlXEk;vC5~uZ+@1$vz^C=Y_Ci zzk5{U%}Ln0{+etRFuZF#f2i+)9=X(VSlg~N_r&5INCf&YYaVX1d5bdLhrD^KC^aFk zcm<}$*Xl%X$SqiiPTozEH+pW& zvCwKNS6C=5X7oaB|7yz9PDfm7K|<*Ut8Z6hNuAM9ogY3$tk`1eb&QEH_vk0;im$HT z;IFtJFLRcES$mtBPw{ml9;b}(jQdT0QnBUNh`fgOMq?*Va&M2{j5T>rh4#D1U=C?8+z zd1brU+J}-ToMubpkt7}_B#IlQlp6Jao$`(_92dLYUiUM({7TyVoiQW7Wrw{2GuKob z!8)fe4kOZE%Ps^H5eYwfU8~a!y&9C%328wgs?CMjRYnhqU%{?=RxQ-#{Q&|Fu+#;zshM{LJ%hLaI5Eg!_k zQXMO)d>j7&hTl4kHQhU^q-9+8XIpsONw;yytQtWeNAHSa=0ZTFYeZ{M>F*PUxh~w5 zKMw*eP%0VgrX&K%`$S@ciEwv=fWklCNv+e=Yx>si{p$6SR-dXrU; zb5mLPcIhrHNJy+AT9B9C8E_T6l@8rc(^zR;VIf7KQHooN%)3VW?69EVO(-Io8%hF4 zyS)KRBFZ6?T1!;usL3|atmY@lPx#z0xy9FVrfTd3wI=Ji;=Op$$=sdw;YR1bPK0%BqD5cOhRBZd#f z+rpg+Y)wOQfk&SXwWe21Vv@=#jl*4O+9WA%3M9IV^yi#vORhmmO4fy`A$z*=wt%m_ z;pd4H6erv$D*|bDRq{Hmz-QCDowSXVcMi4ziDm^ens8t zymEUvhZvCKP9w`(Yg2Bdl8}OuP(nuDJze_u%)5Z#fdOQl*?ie<$~=WI3d^rFy<1yz z`y<2~AeA0{ltyu!f)liNA1_-2N>i9jJaC9v|)9Th^Ttr(HGrO(NZx-8NO^{c@r0XaQ*M@!LJuXunos+)oO1YdQ>8a<-!8Ll6U?TAOQsui=K=tt_ZlBD$O zY=8zU+NaAkACMHTUr3a9wP}CCy(_V3ww0|WjcHnT-L3hxDuS1g%;;9!c77?^oA4hc z_gy=bG_wWX1qF5=yyFwRp?qrdACT?Yl7#u+ND@`Ezs0G zLZm{a#f>7ZbLrK@#D`N$jN_qRoGngyD^lLxLb~0f(urQFID_pC@hr;Q})8QsGchPJ>44Zrq{RjXI8Gc?6V%7{h3Qorru_!Hd`<$?^mb` zaH89+MXiS0E=f};Q;ef}wrx?`kgRFSuC*HDExzK-N&w4mGHKUdRRJYzwo7*5xkSq= zkoLx#bgIi5app&cl6hus1{tbYmkw$q;$k90hio*O_Oj~Vg`HK_Yf{&uQz#Ly+wr|f zn`G6jJD&2WTQe>c%3=8S)O0OuRNARCEk$oK9Y>nZP!g1@u6+T$NhJQDW>8p_kd>R_ z6K5>x%*q4V3bYKDGehnd1eGt%Hpb)AT4PYts5J+|aHpGKrOPEraCqg`%5xdpgea@$ ze8$R{quotXO;)20GHK5sQ)_D*mmP2KY@tbe%u~7QEmqP%%Z^azDh@1^!_Lgf z%X>?o)-Fl1>PRAJrF9Z4JnepQ+@tE*ghuK#ntN|d8!ZIn?+Kwn%!Ck4Fv|=%Wc^Syb_Duh(_#Z<~^ZB8Q{3dc^9L*HyQvR0AqKBHFE6bKG%?f>$b^JU(1W z@?toYtc9c1r>bdGT{)!YD)W!MBVM0unwE9krd%S&6lB?TT?_}-yOc+oFQzwi?Mkax z)UD9zBG2fCUpHNCtQlz0OA~uBvZ9Yb9lg6nW1Bg5jC#vA&92kgwXSw6H3+{E9Kxs5 zYL2OI7TRE^WEk$RacLVtqg?4$0mPGja#=+6+{(b|$!9;c7~v4SWz zj~UDc+=w_UuyOTzgkd%DuNPDAjcT~HK9goyRqJ*&Ue98e3Xd|J)q3Eg)+DzM*o6F9 zDnyEfR;TdpA$yxEKyf>QQ;xPgN~6tcirqq|CrOi-_E2e6dnOEX1RMnMB_j0Yw)oyM zcy&~x$xzv+Jyw2Q_X1-gv6C#4ddnVLFLjIz-9wW4^;U_eZ>K>n*j0uq8sp(o;)?>2 zYqMw$A-g|EtTE#L|9Aju`lV$8PwXC&tgP4UjuEt1aPL3iDk8l%fm5i~5J#6Z=Q&jJp zo{*hCpLgl{s}oe%M$2`FucTtub4sNOl}&YPsY$6|l2VfnHc#;Z z;?IQgZe7K6%=sr$_(CPBmo}YHbke|`r`nTp*6Y>EmCIbaElQjz37w}?Sg0X1I&yAj z5>sAG*hMcWfrixDw{^;_Y6@diDtp>itvoeJ$%js6T*o1k5hCEJOnUQ7ZOYoOO__I3ko-4gxn8GG zlGmF$*i1CU@@U9^v@b}HA%@>)&~-wOR(iWfk3HB?9C8}&YCM;l zi2`vzbxka_+=bbJ6H)bdxw{usx^utV z+YqwVdPz*PqnaF=lTExpilLHjFw3a?e#le&bLqSdAJWY@@a?Epq*|7z-&Fc;quiRC zRD`-+S(-J?NqQ3+V;P|8+N;H-)wdVst!oQ$N%F!sZ0o1ueGGIZB8Nt)QPyiwHlaMt zRkOp4(T}{AUs{wKZ0`UzC_BdNs;Z*fY!o!Eq^-zi%6=1~wSr z^TlS9Nzz?dxoA$uQevufha>JmN>+mDDJVawI6d$)*R6ah)y(RxDJL<+{Fq?~0H*?Ah>(3dm0_@LP{151S=ynJ2H~DPT!1>Z6*21-lp6}|m3ttN zPXvzPC$ZzVNdy%marFXyL~=bj9{KkrKK}sAq6ibg2XIfTIM056emi&i^U(wdNE~g> zPEIgJPDbPJou>!?0K1|Hx|DBPaz^aq)sc<4@BUGOIv|a%+*?rURQYd$;Ey^p%1QZF z+fSiuA57sr`*o=}%D*i5hwDfTNB1mbWyERFBORikU&S4Qcx%-tv+av|;EGQ@Y%bVO@R6&1)1Nr~DitcXNuL#T7wR)Auf~f{egSG_Ql{eEQ~Q;?xX?jbqHz$kW#T6+cyOVtR`> z3{+lFQDns%VNko%G#t2#%eZhGeXzFbXN?;Y_n=R$xuzF|R=mY?`#(fAJMHG^lxqTs zHA$nvkeIQAnN|M)gI2{juiz9sl&5yY^(AxqL(>t4>MiM4Do+ukN)F5eNNowKVq76F zN5>L~^rwTh0D0+0t4zzGGK4Ga<(p3!?@&wPLW|s8*!p2EynIto>ELoY2)o2S<62V7!cL`N2dmOVQ*U_6Q22_C$`rDB-4V97D#!_7_Lt`jwWbDY%&~TK}hi1O~^_&D^y|4 zK=iqZwCu{BDQn`{HVcY2x3c_U9JV!!TXg>Yw)H~UziU+s!rNUrx^&yRO73=qdNO>N zP#uj}acAL@!BRG*X(cL3v)4L{;?B3A&Mi(-y7SX6Z1>*y53eoda?6_A@3O~IdqQbR z`g4?LsO`zf5od(5aPczdw*2;&Pfx-;jcew!H>ilzx}AD8!*Qyr-9Z$ZjS7(}+mY?vNokW|cOv_XrM&~8SQLMe|C7F5lI75mW50H#_qWJQW zI`pQ^xb#y?{{Z1#85CI*Z5W|9QgWL`sZ-L@Dz&?2OsOhnmYL2pmgTl%sizrp%5{~j zseN`Nymgs&sWCBD(-PB^oZ2~AK-^Nnw=xQKXT+$fRHo$#5Vke6;kyzH%0 zh-Ccr$r_o@a0AT`F~hY82^5#?hGFCWsb%Z1W@(K(N2u;m>20@X+tATYYFuQ~ z+Vg8Q=nO|oeKpSM8FZRc>o6vd-Pg831(={gK*{u%@<{UIG z4t(-q-gp@*{MW~9N%a#&Yu-FG#*M8$BBM}rO67LmsK?XuU_zBby=ylmCQ{v`Ts5e( zq%BjUM?+D>2u%L~c+0C^XHeTa3*~eR#7lwG7 zO$ir1yrP?%)C~A}SDd40>4U6E?DmwH5HJ)j@nv@Gcrwh@Ieqa6^;;D-Ua)G-ui^^T zz3&^|n(F4$YKgh0QmU*=rXiWLYZr{V%PUpFN2Zox=hBDsY}r1gn(USnFDMUZ|>R= z#DK*8Xe2(Yq5R#x7Br{QKT9^Q7SCAVZY8yH#wh;cbedZd7~{*-27S%!U}r$1dSFv;Da z%a&P+F7DLJckPR=a&D!lR3;FXRVBoIo@0r~h?Cx6toZ?YyKNH(V_3cmwYEoxdcCzL zPc$aSi%Gko>P-_SJHTk|rsiYpTOic-GwY{|OwEWX(|tbizp6G9`jl!w!9T_Y_z za(_@f=98)EwjO$VU6-*n7N*@U@*_U=B)3oeLpOusx~oI8&9P|4sob;(I+aA!$yKV& zkeVeWs`RLdW}8f{RcevYXInDjG~0@Trb=H<^{HwK>NvWsx?3;F$jm)ZPB=ZjO#lSM zM-w+p2N1VVF1^t<9VW9g!%&%(m!uOit13JviQ>S$Z2>CbG9!p5pbauuaJo~h_l?7^ zzZrAUteZ~MxGGdcT~^JfW>eu)ZWvWz8lg>zN25!5s)a4OjJ9?*?KvorfWI}hhL)V< zl+=#SR+(2g0t}Fuw<^#8%zA~q-8RfcPaKF5P*OP)nqo>`f>P2>PE;pZ1K`ZO@ty~6 z;{Y5=$(GgSlx<&+7l>*F#arpO(d^pe7i{8|@Eec$BQ##s#U2#!@ z7x8UWVKVL;Qa)t@R7ma>xjk222y2$KJiS^*qT;-QssNYzyP|L6ZjUWkl=5M|2{*et zT!_9OhAen|{{X|A;;+O_g>Y(34&<@ysx2y+BBMj4U0)PxcSEs~cE_i=8KRiTQ}}GD z!T>)qvDdfsKB%JV$zqr~g2|I%mR3_k%g~=!%$`x>O-U(H)Af3lB3hP}2WcV1Te>Nk z8De9Je1pt>FoAfT{0=-&_-E1jrmxj1)-B^rwHc)U0Bz{@)mXV)wddECzk!CRa!`-W zSwa$g$r04F1H!#Y>C364CFZ9Yb>JrDTt<~|v<$m{{{T^unmtM4l~t#>*v_|hi?~-2 zy4-y{q7`)!qX#M@j1k8w1Pk`|J%3EC8$*y*aGD|IC9#JTiex8?bAE?3(R;hOUiQW8$& z?fbI%zL@s1MgYh>6brAt1dP=zOG>*o)TfGulElP&sGOn(}Hm0Ent}cSCCI-B`irDV1UW6%WyWNb`O;j(U7Ux3DMNq+{K`s|>Q8aCUrwnBW{Ky8 z2vkYJ!8Wer`4j8MQiB3@aL0;jdG#tw*u!`)Zj^smQr%v{-Jf>au6pXylEkH;f&VNT8Qrx@KgI1DwSpqdo&e$PX$qxb&Bxr{Y``emxc(CsokYttTU zuxYUh*;{WH+j<+As4}+y0KifXt`GXCa0RE_s`0wougsxq&TCL#@>e3p+ zg0}6_t9{7N%#U+icC33=1zIB_5r^