diff --git a/Prefabs/ImageTab.prefab b/Prefabs/ImageTab.prefab index d96b03e..d1990a1 100644 --- a/Prefabs/ImageTab.prefab +++ b/Prefabs/ImageTab.prefab @@ -1304,7 +1304,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 0} + - m_Target: {fileID: 1061264739079975055} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -1601,7 +1601,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 0} + - m_Target: {fileID: 1061264739079975055} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -1847,7 +1847,7 @@ GameObject: - component: {fileID: 328689077210539682} - component: {fileID: 5885815362106339373} m_Layer: 13 - m_Name: Root + m_Name: _Root m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -2883,7 +2883,7 @@ GameObject: - component: {fileID: 756687671811862761} - component: {fileID: 7938467624753538088} m_Layer: 13 - m_Name: Root + m_Name: _Root m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3527,7 +3527,7 @@ GameObject: m_Component: - component: {fileID: 4977822125850337398} m_Layer: 13 - m_Name: Controls + m_Name: _Controls m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3675,7 +3675,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 0} + - m_Target: {fileID: 1061264739079975055} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -4599,6 +4599,7 @@ MonoBehaviour: controller: {fileID: 0} splashImage: {fileID: 0} splashImageFitter: {fileID: 0} + splashImageTexture: {fileID: 0} deviceUuid: dc8143a8-39ec-4a92-bc65-b57e543c6783 arWatchInterval: 0.2 arAnchorTop: {fileID: 6787314649853063368} @@ -4767,7 +4768,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 0} + - m_Target: {fileID: 1061264739079975055} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -5068,7 +5069,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 0} + - m_Target: {fileID: 1061264739079975055} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -5220,7 +5221,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 0} + - m_Target: {fileID: 1061264739079975055} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -5355,7 +5356,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 0} + - m_Target: {fileID: 1061264739079975055} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -5865,7 +5866,7 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 1 m_CallState: 2 - - m_Target: {fileID: 0} + - m_Target: {fileID: 1061264739079975055} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -5973,7 +5974,7 @@ GameObject: - component: {fileID: 1762988244292847304} - component: {fileID: 8864945229062523116} m_Layer: 13 - m_Name: Root + m_Name: _Root m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -8566,7 +8567,7 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 1 m_CallState: 2 - - m_Target: {fileID: 0} + - m_Target: {fileID: 1061264739079975055} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -10405,7 +10406,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 0} + - m_Target: {fileID: 1061264739079975055} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -12782,6 +12783,10 @@ PrefabInstance: propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size value: 1 objectReference: {fileID: 0} + - target: {fileID: 3392491913851663145, guid: 270ab47512fe7934196f541695ef2907, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 1061264739079975055} - target: {fileID: 3392491913851663145, guid: 270ab47512fe7934196f541695ef2907, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName value: SendCustomEvent @@ -13285,6 +13290,10 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 9022346983763826733} m_Modifications: + - target: {fileID: 4079871079577843496, guid: 4725a69d5693c4c4492e0f6d05cbe4fe, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 1061264739079975055} - target: {fileID: 4079871079577843496, guid: 4725a69d5693c4c4492e0f6d05cbe4fe, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName value: SendCustomEvent diff --git a/Prefabs/parts/Settings.About.Content.prefab b/Prefabs/parts/Settings.About.Content.prefab index f5abb03..428eab3 100644 --- a/Prefabs/parts/Settings.About.Content.prefab +++ b/Prefabs/parts/Settings.About.Content.prefab @@ -663,7 +663,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: ImageTab v0.2.1 + m_text: ImageTab v0.2.2 m_isRightToLeft: 0 m_fontAsset: {fileID: 11400000, guid: 7758130c7e489894db77d74ac7b81c3c, type: 2} m_sharedMaterial: {fileID: -6069958157732398970, guid: 7758130c7e489894db77d74ac7b81c3c, type: 2} diff --git a/Runtime/Editor/ImageTabEditor.cs b/Runtime/Editor/ImageTabEditor.cs index a89bc17..9a138c0 100644 --- a/Runtime/Editor/ImageTabEditor.cs +++ b/Runtime/Editor/ImageTabEditor.cs @@ -12,24 +12,25 @@ namespace jp.ootr.ImageTab.Editor public class ImageTabEditor : CommonDeviceEditor { private SerializedProperty _arWatchInterval; + private SerializedProperty _uiBookmarkNames; + private SerializedProperty _uiBookmarkUrls; public override void OnEnable() { base.OnEnable(); _arWatchInterval = serializedObject.FindProperty("arWatchInterval"); + _uiBookmarkNames = serializedObject.FindProperty("uIBookmarkNames"); + _uiBookmarkUrls = serializedObject.FindProperty("uIBookmarkUrls"); } protected override void ShowContent() { EditorGUILayout.Space(); - var so = new SerializedObject(target); + serializedObject.Update(); EditorGUILayout.PropertyField(_arWatchInterval, new GUIContent("Rotation Check Interval")); - so.ApplyModifiedProperties(); + serializedObject.ApplyModifiedProperties(); EditorGUILayout.Space(); - EditorGUI.BeginChangeCheck(); BuildBookmark((ImageTab)target); - if (!EditorGUI.EndChangeCheck()) return; - EditorUtility.SetDirty(target); } protected override void ShowScriptName() @@ -42,29 +43,26 @@ private void BuildBookmark(ImageTab script) var newSize = Mathf.Max(script.uIBookmarkNames.Length, script.uIBookmarkUrls.Length); if (script.uIBookmarkNames.Length != newSize || script.uIBookmarkUrls.Length != newSize) { - Array.Resize(ref script.uIBookmarkNames, newSize); - Array.Resize(ref script.uIBookmarkUrls, newSize); + _uiBookmarkNames.arraySize = newSize; + _uiBookmarkUrls.arraySize = newSize; } EditorGUILayout.LabelField("Bookmarks", EditorStyles.boldLabel); + serializedObject.Update(); for (var i = 0; i < newSize; i++) { EditorGUILayout.BeginHorizontal(); - script.uIBookmarkNames[i] = EditorGUILayout.TextField(script.uIBookmarkNames[i]); - script.uIBookmarkUrls[i] = new VRCUrl(EditorGUILayout.TextField(script.uIBookmarkUrls[i].ToString())); - + + EditorGUILayout.PropertyField(_uiBookmarkNames.GetArrayElementAtIndex(i), GUIContent.none); + EditorGUILayout.PropertyField(_uiBookmarkUrls.GetArrayElementAtIndex(i), GUIContent.none); + + if (GUILayout.Button("Remove")) { newSize--; - var tmpNames = new string[newSize]; - var tmpUrls = new VRCUrl[newSize]; - Array.Copy(script.uIBookmarkNames, tmpNames, i); - Array.Copy(script.uIBookmarkNames, i + 1, tmpNames, i, newSize - i); - Array.Copy(script.uIBookmarkUrls, tmpUrls, i); - Array.Copy(script.uIBookmarkUrls, i + 1, tmpUrls, i, newSize - i); - script.uIBookmarkNames = tmpNames; - script.uIBookmarkUrls = tmpUrls; + _uiBookmarkNames.DeleteArrayElementAtIndex(i); + _uiBookmarkUrls.DeleteArrayElementAtIndex(i); } EditorGUILayout.EndHorizontal(); @@ -75,19 +73,20 @@ private void BuildBookmark(ImageTab script) if (GUILayout.Button("Add Element")) { newSize++; - Array.Resize(ref script.uIBookmarkNames, newSize); - Array.Resize(ref script.uIBookmarkUrls, newSize); + _uiBookmarkNames.arraySize = newSize; + _uiBookmarkUrls.arraySize = newSize; } if (GUILayout.Button("Remove Last Element")) if (newSize > 0) { newSize--; - Array.Resize(ref script.uIBookmarkNames, newSize); - Array.Resize(ref script.uIBookmarkUrls, newSize); + _uiBookmarkNames.arraySize = newSize; + _uiBookmarkUrls.arraySize = newSize; } EditorGUILayout.EndHorizontal(); + serializedObject.ApplyModifiedProperties(); } } } diff --git a/Runtime/jp.ootr.ImageTab/Scripts/12_LogicDeviceList.cs b/Runtime/jp.ootr.ImageTab/Scripts/12_LogicDeviceList.cs index 0e62417..7a79281 100644 --- a/Runtime/jp.ootr.ImageTab/Scripts/12_LogicDeviceList.cs +++ b/Runtime/jp.ootr.ImageTab/Scripts/12_LogicDeviceList.cs @@ -1,4 +1,5 @@ -using UnityEngine; +using jp.ootr.common; +using UnityEngine; using UnityEngine.UI; using VRC.Udon.Common.Enums; using static jp.ootr.common.UI; @@ -23,6 +24,8 @@ public override void InitController() public virtual void UpdateDeviceList() { + uIDeviceListContainer.ClearChildren(); + DeviceListButtonToggles = new Toggle[devices.Length]; DeviceListButtonSliders = new Slider[devices.Length]; for (var i = 0; i < devices.Length; i++) @@ -43,9 +46,11 @@ public virtual void UpdateDeviceList() button.transform.Find("Image").GetComponent().sprite = uIDeviceScreenIcon; break; } + + button.name = device.deviceUuid; } - uIDeviceListContainer.ToListChildrenVertical(adjustHeight: true); + uIDeviceListContainer.ToListChildrenVertical(0,0,true); } } } diff --git a/Runtime/jp.ootr.ImageTab/Scripts/21_UIBookmark.cs b/Runtime/jp.ootr.ImageTab/Scripts/21_UIBookmark.cs index 4826dbc..10780ca 100644 --- a/Runtime/jp.ootr.ImageTab/Scripts/21_UIBookmark.cs +++ b/Runtime/jp.ootr.ImageTab/Scripts/21_UIBookmark.cs @@ -55,7 +55,7 @@ protected virtual void UpdateBookmark() _uiBookmarkButtonToggles[i] = toggle; } - uIOriginalBookmarkButton.transform.parent.ToListChildrenVertical(adjustHeight: true); + uIOriginalBookmarkButton.transform.parent.ToListChildrenVertical(0,0,true); SendCustomEventDelayedFrames(nameof(UpdateFooter), 0, EventTiming.LateUpdate); } diff --git a/Runtime/jp.ootr.ImageTab/Scripts/23_UIHistory.cs b/Runtime/jp.ootr.ImageTab/Scripts/23_UIHistory.cs index 9f47447..a8a2e83 100644 --- a/Runtime/jp.ootr.ImageTab/Scripts/23_UIHistory.cs +++ b/Runtime/jp.ootr.ImageTab/Scripts/23_UIHistory.cs @@ -40,7 +40,7 @@ public virtual void UpdateHistoryUI(string[] urls, string[] filenames) } else if (_uiHistoryButtons.Length > urls.Length) { - for (var i = urls.Length; i < _uiHistoryButtons.Length; i++) Destroy(_uiHistoryButtons[i]); + for (var i = urls.Length; i < _uiHistoryButtons.Length; i++) DestroyImmediate(_uiHistoryButtons[i]); _uiHistoryButtons = _uiHistoryButtons.Resize(urls.Length); _uiHistoryButtonToggles = _uiHistoryButtonToggles.Resize(urls.Length); _uiHistoryButtonInputFields = _uiHistoryButtonInputFields.Resize(urls.Length); @@ -53,7 +53,7 @@ public virtual void UpdateHistoryUI(string[] urls, string[] filenames) if (!_uiHistoryButtonToggles[i].isOn) _uiHistoryButtonToggles[i].isOn = false; } - uIOriginalHistoryButton.transform.parent.ToListChildrenVertical(reverse: true, adjustHeight: true); + uIOriginalHistoryButton.transform.parent.ToListChildrenVertical(0,0,true,true); } public virtual void OnHistoryListClicked() diff --git a/Runtime/jp.ootr.ImageTab/Scripts/27_UIError.cs b/Runtime/jp.ootr.ImageTab/Scripts/27_UIError.cs index 8eac2e2..d6320fc 100644 --- a/Runtime/jp.ootr.ImageTab/Scripts/27_UIError.cs +++ b/Runtime/jp.ootr.ImageTab/Scripts/27_UIError.cs @@ -12,6 +12,11 @@ public class UIError : UIAnimatorHandler public override void OnFilesLoadFailed(LoadError error) { base.OnFilesLoadFailed(error); + ShowError(error); + } + + protected void ShowError(LoadError error) + { error.ParseMessage(out var title, out var message); uIErrorTitle.text = title; uIErrorMessage.text = message; diff --git a/Runtime/jp.ootr.ImageTab/Scripts/ImageTab.cs b/Runtime/jp.ootr.ImageTab/Scripts/ImageTab.cs index 4f909b4..b093891 100644 --- a/Runtime/jp.ootr.ImageTab/Scripts/ImageTab.cs +++ b/Runtime/jp.ootr.ImageTab/Scripts/ImageTab.cs @@ -45,7 +45,7 @@ public void OnUrlEndEdit() if (_isLoading || urlStr.IsNullOrEmpty() || _syncSource == url.ToString()) return; if (!urlStr.IsValidUrl(out var error)) { - OnFilesLoadFailed(error); + ShowError(error); return; } diff --git a/Runtime/jp.ootr.ImageTab/Udon/ImageTab.asset b/Runtime/jp.ootr.ImageTab/Udon/ImageTab.asset index 7841004..739930d 100644 --- a/Runtime/jp.ootr.ImageTab/Udon/ImageTab.asset +++ b/Runtime/jp.ootr.ImageTab/Udon/ImageTab.asset @@ -43,7 +43,7 @@ MonoBehaviour: Data: - Name: Entry: 12 - Data: 64 + Data: 65 - Name: Entry: 7 Data: @@ -649,10 +649,64 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: deviceUuid + Data: splashImageTexture - Name: $v Entry: 7 Data: 42|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: splashImageTexture + - Name: k__BackingField + Entry: 9 + Data: 17 + - Name: k__BackingField + Entry: 9 + Data: 17 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 43|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 44|UnityEngine.SerializeField, UnityEngine.CoreModule + - Name: + Entry: 8 + Data: + - Name: + Entry: 13 + Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 7 + Data: + - Name: $k + Entry: 1 + Data: deviceUuid + - Name: $v + Entry: 7 + Data: 45|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: deviceUuid @@ -676,7 +730,7 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 43|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 46|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -700,13 +754,13 @@ MonoBehaviour: Data: _queueList - Name: $v Entry: 7 - Data: 44|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 47|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _queueList - Name: k__BackingField Entry: 7 - Data: 45|System.RuntimeType, mscorlib + Data: 48|System.RuntimeType, mscorlib - Name: Entry: 1 Data: VRC.SDK3.Data.DataList, VRCSDK3 @@ -715,7 +769,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 45 + Data: 48 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -730,7 +784,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 46|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 49|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -754,7 +808,7 @@ MonoBehaviour: Data: _retryCount - Name: $v Entry: 7 - Data: 47|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 50|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _retryCount @@ -778,7 +832,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 48|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 51|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -802,7 +856,7 @@ MonoBehaviour: Data: arWatchInterval - Name: $v Entry: 7 - Data: 49|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 52|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: arWatchInterval @@ -826,13 +880,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 50|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 53|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 3 - Name: Entry: 7 - Data: 51|UnityEngine.HeaderAttribute, UnityEngine.CoreModule + Data: 54|UnityEngine.HeaderAttribute, UnityEngine.CoreModule - Name: header Entry: 1 Data: "\u540C\u671F\u9593\u9694" @@ -841,13 +895,13 @@ MonoBehaviour: Data: - Name: Entry: 7 - Data: 52|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 55|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: - Name: Entry: 7 - Data: 53|UnityEngine.RangeAttribute, UnityEngine.CoreModule + Data: 56|UnityEngine.RangeAttribute, UnityEngine.CoreModule - Name: min Entry: 4 Data: 0.01 @@ -877,13 +931,13 @@ MonoBehaviour: Data: arAnchorTop - Name: $v Entry: 7 - Data: 54|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 57|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: arAnchorTop - Name: k__BackingField Entry: 7 - Data: 55|System.RuntimeType, mscorlib + Data: 58|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.Transform, UnityEngine.CoreModule @@ -892,7 +946,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 55 + Data: 58 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -907,13 +961,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 56|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 59|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 57|UnityEngine.HeaderAttribute, UnityEngine.CoreModule + Data: 60|UnityEngine.HeaderAttribute, UnityEngine.CoreModule - Name: header Entry: 1 Data: "\u56DE\u8EE2\u691C\u77E5\u7528" @@ -922,7 +976,7 @@ MonoBehaviour: Data: - Name: Entry: 7 - Data: 58|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 61|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -946,16 +1000,16 @@ MonoBehaviour: Data: arAnchorBottom - Name: $v Entry: 7 - Data: 59|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 62|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: arAnchorBottom - Name: k__BackingField Entry: 9 - Data: 55 + Data: 58 - Name: k__BackingField Entry: 9 - Data: 55 + Data: 58 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -970,13 +1024,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 60|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 63|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 61|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 64|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1000,16 +1054,16 @@ MonoBehaviour: Data: arAnchorLeft - Name: $v Entry: 7 - Data: 62|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 65|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: arAnchorLeft - Name: k__BackingField Entry: 9 - Data: 55 + Data: 58 - Name: k__BackingField Entry: 9 - Data: 55 + Data: 58 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1024,13 +1078,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 63|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 66|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 64|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 67|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1054,16 +1108,16 @@ MonoBehaviour: Data: arAnchorRight - Name: $v Entry: 7 - Data: 65|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 68|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: arAnchorRight - Name: k__BackingField Entry: 9 - Data: 55 + Data: 58 - Name: k__BackingField Entry: 9 - Data: 55 + Data: 58 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1078,13 +1132,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 66|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 69|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 67|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 70|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1108,7 +1162,7 @@ MonoBehaviour: Data: _animatorDirection - Name: $v Entry: 7 - Data: 68|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 71|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _animatorDirection @@ -1132,13 +1186,13 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 69|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 72|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 70|UnityEngine.HeaderAttribute, UnityEngine.CoreModule + Data: 73|UnityEngine.HeaderAttribute, UnityEngine.CoreModule - Name: header Entry: 1 Data: "\u30A2\u30CB\u30E1\u30FC\u30B7\u30E7\u30F3\u7528\u5B9A\u6570" @@ -1165,7 +1219,7 @@ MonoBehaviour: Data: _animatorLockRotation - Name: $v Entry: 7 - Data: 71|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 74|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _animatorLockRotation @@ -1189,7 +1243,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 72|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 75|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1213,13 +1267,13 @@ MonoBehaviour: Data: _autoRotateDevicePrefix - Name: $v Entry: 7 - Data: 73|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 76|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _autoRotateDevicePrefix - Name: k__BackingField Entry: 7 - Data: 74|System.RuntimeType, mscorlib + Data: 77|System.RuntimeType, mscorlib - Name: Entry: 1 Data: System.String[], mscorlib @@ -1228,7 +1282,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1243,7 +1297,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 75|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 78|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1267,13 +1321,13 @@ MonoBehaviour: Data: _arDirection - Name: $v Entry: 7 - Data: 76|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 79|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _arDirection - Name: k__BackingField Entry: 7 - Data: 77|System.RuntimeType, mscorlib + Data: 80|System.RuntimeType, mscorlib - Name: Entry: 1 Data: jp.ootr.ImageTab.TabletDirection, jp.ootr.ImageTab @@ -1297,13 +1351,13 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 78|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 81|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 79|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 82|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -1327,13 +1381,13 @@ MonoBehaviour: Data: _arIsHolding - Name: $v Entry: 7 - Data: 80|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 83|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _arIsHolding - Name: k__BackingField Entry: 7 - Data: 81|System.RuntimeType, mscorlib + Data: 84|System.RuntimeType, mscorlib - Name: Entry: 1 Data: System.Boolean, mscorlib @@ -1342,7 +1396,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 81 + Data: 84 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1357,7 +1411,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 82|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 85|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1381,16 +1435,16 @@ MonoBehaviour: Data: _arIsLockRotate - Name: $v Entry: 7 - Data: 83|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 86|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _arIsLockRotate - Name: k__BackingField Entry: 9 - Data: 81 + Data: 84 - Name: k__BackingField Entry: 9 - Data: 81 + Data: 84 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1405,13 +1459,13 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 84|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 87|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 85|UnityEngine.HeaderAttribute, UnityEngine.CoreModule + Data: 88|UnityEngine.HeaderAttribute, UnityEngine.CoreModule - Name: header Entry: 1 Data: "\u540C\u671F\u7528" @@ -1420,7 +1474,7 @@ MonoBehaviour: Data: - Name: Entry: 7 - Data: 86|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 89|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -1444,16 +1498,16 @@ MonoBehaviour: Data: _arIsLockRotateLocal - Name: $v Entry: 7 - Data: 87|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 90|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _arIsLockRotateLocal - Name: k__BackingField Entry: 9 - Data: 81 + Data: 84 - Name: k__BackingField Entry: 9 - Data: 81 + Data: 84 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1468,7 +1522,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 88|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 91|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1492,13 +1546,13 @@ MonoBehaviour: Data: _arLocalDirection - Name: $v Entry: 7 - Data: 89|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 92|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _arLocalDirection - Name: k__BackingField Entry: 9 - Data: 77 + Data: 80 - Name: k__BackingField Entry: 9 Data: 4 @@ -1516,7 +1570,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 90|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 93|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1540,13 +1594,13 @@ MonoBehaviour: Data: uIDeviceListContainer - Name: $v Entry: 7 - Data: 91|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 94|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIDeviceListContainer - Name: k__BackingField Entry: 7 - Data: 92|System.RuntimeType, mscorlib + Data: 95|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.RectTransform, UnityEngine.CoreModule @@ -1555,7 +1609,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 92 + Data: 95 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1570,13 +1624,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 93|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 96|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 94|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 97|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1600,13 +1654,13 @@ MonoBehaviour: Data: uIOriginalDeviceListButton - Name: $v Entry: 7 - Data: 95|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 98|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIOriginalDeviceListButton - Name: k__BackingField Entry: 7 - Data: 96|System.RuntimeType, mscorlib + Data: 99|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.GameObject, UnityEngine.CoreModule @@ -1615,7 +1669,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 96 + Data: 99 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1630,13 +1684,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 97|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 100|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 98|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 101|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1660,13 +1715,13 @@ MonoBehaviour: Data: uIDeviceScreenIcon - Name: $v Entry: 7 - Data: 99|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 102|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIDeviceScreenIcon - Name: k__BackingField Entry: 7 - Data: 100|System.RuntimeType, mscorlib + Data: 103|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.Sprite, UnityEngine.CoreModule @@ -1675,7 +1730,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 100 + Data: 103 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1690,14 +1745,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 101|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 104|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 102|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 105|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1721,16 +1776,16 @@ MonoBehaviour: Data: uIDeviceTabletIcon - Name: $v Entry: 7 - Data: 103|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 106|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIDeviceTabletIcon - Name: k__BackingField Entry: 9 - Data: 100 + Data: 103 - Name: k__BackingField Entry: 9 - Data: 100 + Data: 103 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1745,14 +1800,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 104|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 107|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 105|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 108|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1776,13 +1831,13 @@ MonoBehaviour: Data: DeviceListButtonSliders - Name: $v Entry: 7 - Data: 106|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 109|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: DeviceListButtonSliders - Name: k__BackingField Entry: 7 - Data: 107|System.RuntimeType, mscorlib + Data: 110|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.UI.Slider[], UnityEngine.UI @@ -1791,7 +1846,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 107 + Data: 110 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1806,7 +1861,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 108|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 111|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -1831,13 +1886,13 @@ MonoBehaviour: Data: DeviceListButtonToggles - Name: $v Entry: 7 - Data: 109|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 112|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: DeviceListButtonToggles - Name: k__BackingField Entry: 7 - Data: 110|System.RuntimeType, mscorlib + Data: 113|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.UI.Toggle[], UnityEngine.UI @@ -1846,7 +1901,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 110 + Data: 113 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1861,7 +1916,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 111|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 114|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -1886,16 +1941,16 @@ MonoBehaviour: Data: uIFooter - Name: $v Entry: 7 - Data: 112|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 115|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIFooter - Name: k__BackingField Entry: 9 - Data: 55 + Data: 58 - Name: k__BackingField Entry: 9 - Data: 55 + Data: 58 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1910,14 +1965,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 113|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 116|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 114|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 117|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1941,16 +1996,16 @@ MonoBehaviour: Data: uICastModalButton - Name: $v Entry: 7 - Data: 115|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 118|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uICastModalButton - Name: k__BackingField Entry: 9 - Data: 96 + Data: 99 - Name: k__BackingField Entry: 9 - Data: 96 + Data: 99 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1965,14 +2020,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 116|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 119|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 117|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 120|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1996,13 +2051,13 @@ MonoBehaviour: Data: uIDeviceNameInputField - Name: $v Entry: 7 - Data: 118|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 121|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIDeviceNameInputField - Name: k__BackingField Entry: 7 - Data: 119|System.RuntimeType, mscorlib + Data: 122|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.UI.InputField, UnityEngine.UI @@ -2011,7 +2066,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 119 + Data: 122 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2026,14 +2081,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 120|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 123|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 121|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 124|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -2057,13 +2112,13 @@ MonoBehaviour: Data: uIBookmarkUrls - Name: $v Entry: 7 - Data: 122|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 125|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIBookmarkUrls - Name: k__BackingField Entry: 7 - Data: 123|System.RuntimeType, mscorlib + Data: 126|System.RuntimeType, mscorlib - Name: Entry: 1 Data: VRC.SDKBase.VRCUrl[], VRCSDKBase @@ -2072,7 +2127,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 123 + Data: 126 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2087,14 +2142,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 124|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 127|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 125|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 128|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -2118,16 +2173,16 @@ MonoBehaviour: Data: uIBookmarkNames - Name: $v Entry: 7 - Data: 126|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 129|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIBookmarkNames - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2142,14 +2197,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 127|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 130|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 128|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 131|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -2173,16 +2228,16 @@ MonoBehaviour: Data: uIOriginalBookmarkButton - Name: $v Entry: 7 - Data: 129|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 132|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIOriginalBookmarkButton - Name: k__BackingField Entry: 9 - Data: 96 + Data: 99 - Name: k__BackingField Entry: 9 - Data: 96 + Data: 99 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2197,14 +2252,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 130|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 133|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 131|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 134|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -2228,7 +2283,7 @@ MonoBehaviour: Data: _animatorHasBookmark - Name: $v Entry: 7 - Data: 132|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 135|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _animatorHasBookmark @@ -2252,7 +2307,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 133|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 136|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2277,16 +2332,16 @@ MonoBehaviour: Data: _uiBookmarkPrefix - Name: $v Entry: 7 - Data: 134|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 137|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _uiBookmarkPrefix - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2301,7 +2356,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 135|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 138|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2326,16 +2381,16 @@ MonoBehaviour: Data: _uiBookmarkButtonToggles - Name: $v Entry: 7 - Data: 136|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 139|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _uiBookmarkButtonToggles - Name: k__BackingField Entry: 9 - Data: 110 + Data: 113 - Name: k__BackingField Entry: 9 - Data: 110 + Data: 113 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2350,7 +2405,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 137|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 140|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2375,16 +2430,16 @@ MonoBehaviour: Data: uIOriginalHistoryButton - Name: $v Entry: 7 - Data: 138|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 141|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIOriginalHistoryButton - Name: k__BackingField Entry: 9 - Data: 96 + Data: 99 - Name: k__BackingField Entry: 9 - Data: 96 + Data: 99 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2399,14 +2454,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 139|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 142|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 140|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 143|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -2430,16 +2485,16 @@ MonoBehaviour: Data: _uiHistoryPrefix - Name: $v Entry: 7 - Data: 141|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 144|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _uiHistoryPrefix - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2454,7 +2509,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 142|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 145|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2479,13 +2534,13 @@ MonoBehaviour: Data: _uiHistoryButtonInputFields - Name: $v Entry: 7 - Data: 143|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 146|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _uiHistoryButtonInputFields - Name: k__BackingField Entry: 7 - Data: 144|System.RuntimeType, mscorlib + Data: 147|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.UI.InputField[], UnityEngine.UI @@ -2494,7 +2549,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 144 + Data: 147 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2509,7 +2564,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 145|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 148|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2534,13 +2589,13 @@ MonoBehaviour: Data: _uiHistoryButtons - Name: $v Entry: 7 - Data: 146|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 149|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _uiHistoryButtons - Name: k__BackingField Entry: 7 - Data: 147|System.RuntimeType, mscorlib + Data: 150|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.GameObject[], UnityEngine.CoreModule @@ -2549,7 +2604,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 147 + Data: 150 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2564,7 +2619,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 148|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 151|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2589,16 +2644,16 @@ MonoBehaviour: Data: _uiHistoryButtonToggles - Name: $v Entry: 7 - Data: 149|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 152|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _uiHistoryButtonToggles - Name: k__BackingField Entry: 9 - Data: 110 + Data: 113 - Name: k__BackingField Entry: 9 - Data: 110 + Data: 113 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2613,7 +2668,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 150|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 153|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2638,16 +2693,16 @@ MonoBehaviour: Data: _historyFileNames - Name: $v Entry: 7 - Data: 151|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 154|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _historyFileNames - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2662,7 +2717,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 152|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 155|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2687,16 +2742,16 @@ MonoBehaviour: Data: _historyUrls - Name: $v Entry: 7 - Data: 153|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 156|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _historyUrls - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 9 - Data: 74 + Data: 77 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2711,7 +2766,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 154|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 157|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2736,7 +2791,7 @@ MonoBehaviour: Data: _animatorCastModalState - Name: $v Entry: 7 - Data: 155|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 158|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _animatorCastModalState @@ -2760,7 +2815,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 156|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 159|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2785,7 +2840,7 @@ MonoBehaviour: Data: _animatorErrorModalState - Name: $v Entry: 7 - Data: 157|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 160|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _animatorErrorModalState @@ -2809,7 +2864,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 158|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 161|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2834,7 +2889,7 @@ MonoBehaviour: Data: _animatorLibraryModalState - Name: $v Entry: 7 - Data: 159|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 162|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _animatorLibraryModalState @@ -2858,7 +2913,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 160|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 163|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2883,7 +2938,7 @@ MonoBehaviour: Data: _animatorSettingsModalState - Name: $v Entry: 7 - Data: 161|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 164|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _animatorSettingsModalState @@ -2907,7 +2962,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 162|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 165|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -2932,16 +2987,16 @@ MonoBehaviour: Data: uIErrorTitle - Name: $v Entry: 7 - Data: 163|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 166|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIErrorTitle - Name: k__BackingField Entry: 9 - Data: 119 + Data: 122 - Name: k__BackingField Entry: 9 - Data: 119 + Data: 122 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2956,14 +3011,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 164|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 167|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 165|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 168|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -2987,16 +3042,16 @@ MonoBehaviour: Data: uIErrorMessage - Name: $v Entry: 7 - Data: 166|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 169|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: uIErrorMessage - Name: k__BackingField Entry: 9 - Data: 119 + Data: 122 - Name: k__BackingField Entry: 9 - Data: 119 + Data: 122 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -3011,14 +3066,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 167|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 170|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 168|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 171|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -3042,13 +3097,13 @@ MonoBehaviour: Data: inputField - Name: $v Entry: 7 - Data: 169|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 172|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: inputField - Name: k__BackingField Entry: 7 - Data: 170|System.RuntimeType, mscorlib + Data: 173|System.RuntimeType, mscorlib - Name: Entry: 1 Data: VRC.SDK3.Components.VRCUrlInputField, VRCSDK3 @@ -3057,7 +3112,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 170 + Data: 173 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -3072,14 +3127,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 171|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 174|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 172|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 175|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -3103,7 +3158,7 @@ MonoBehaviour: Data: image - Name: $v Entry: 7 - Data: 173|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 176|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: image @@ -3127,14 +3182,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 174|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 177|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 175|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 178|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -3158,7 +3213,7 @@ MonoBehaviour: Data: aspectRatioFitter - Name: $v Entry: 7 - Data: 176|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 179|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: aspectRatioFitter @@ -3182,14 +3237,14 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 177|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 180|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 178|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 181|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -3213,7 +3268,7 @@ MonoBehaviour: Data: _animatorIsLoading - Name: $v Entry: 7 - Data: 179|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 182|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _animatorIsLoading @@ -3237,7 +3292,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 180|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 183|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -3262,16 +3317,16 @@ MonoBehaviour: Data: _isLoading - Name: $v Entry: 7 - Data: 181|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 184|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _isLoading - Name: k__BackingField Entry: 9 - Data: 81 + Data: 84 - Name: k__BackingField Entry: 9 - Data: 81 + Data: 84 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -3286,7 +3341,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 182|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 185|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -3311,7 +3366,7 @@ MonoBehaviour: Data: _localFileName - Name: $v Entry: 7 - Data: 183|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 186|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _localFileName @@ -3335,7 +3390,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 184|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 187|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -3360,7 +3415,7 @@ MonoBehaviour: Data: _localSource - Name: $v Entry: 7 - Data: 185|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 188|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _localSource @@ -3384,7 +3439,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 186|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 189|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -3409,16 +3464,16 @@ MonoBehaviour: Data: _shouldPushHistory - Name: $v Entry: 7 - Data: 187|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 190|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _shouldPushHistory - Name: k__BackingField Entry: 9 - Data: 81 + Data: 84 - Name: k__BackingField Entry: 9 - Data: 81 + Data: 84 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -3433,14 +3488,14 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 188|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 191|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 189|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 192|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -3464,7 +3519,7 @@ MonoBehaviour: Data: _syncFileName - Name: $v Entry: 7 - Data: 190|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 193|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _syncFileName @@ -3488,14 +3543,14 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 191|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 194|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 192|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 195|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -3519,7 +3574,7 @@ MonoBehaviour: Data: _syncSource - Name: $v Entry: 7 - Data: 193|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 196|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _syncSource @@ -3543,14 +3598,14 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 194|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 197|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 195|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 198|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: diff --git a/Runtime/jp.ootr.ImageTab/Udon/bc7986dfa9245594181d180dd319649d.asset b/Runtime/jp.ootr.ImageTab/Udon/bc7986dfa9245594181d180dd319649d.asset deleted file mode 100644 index 134beab..0000000 --- a/Runtime/jp.ootr.ImageTab/Udon/bc7986dfa9245594181d180dd319649d.asset +++ /dev/null @@ -1,18 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!114 &11400000 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: bf61d954ecb803046953c666facfb904, type: 3} - m_Name: bc7986dfa9245594181d180dd319649d - m_EditorClassIdentifier: - serializedProgramCompressedBytes: 1f8b080000000000000aecbd077c15c5f73ebc9bdcd015942a45221d4108bd23bd6868a189a81048e84d129a5850b1a088a8d81b2af6debb626fd8ebd78a28f682bda1be3bb333f7ce4eceb377e7ce067ebe9f7ff884cdcece3e73da9c395337abbde3fdb86dbdff263805ce40a79d33de2972163a0bbcbf067ad7f9de3fff4ea68f76167bd799deff85deb3b64e6e9a37d94f4bb79ef7ff70efaec429f5de5ce24cf7aeb3f9f3b14eb1f7f770efdd62ef8ea5cef07e8bbd5c6ec27b69bc33c819e58c74eabab5d3404ce02f95883497f1e556f2fe1fe0acf09e1673a25821edf9a3bade7f63bd2725fcd97c8f68996fb27338676bbef76cbaf7ce62679e87398d2356da728dc3ff70fccb60711d22ae83bcdfcae2ef6cf17725f1374a9318c3c475a805c6c1e23a525c0bfc6bd6b5deb582e3241e54ee5d2e01ff5a513c7f487b3e5aa1e520711da3a40d17f9af1369398e933f55496379f295fca3c475442affc13745e06b82b84ed2f8ba5ee3ebfa347cc9e72a5fe309bec689fc37107cdd20f24c24f83a24957f64bf087c1d26ae5334be6ed4f8ba310d5ff2b9cad76482af4345fe9b08bea41e0e27f83a42e16b6704bea6896bb1c6d7cd1a5f37a7e14b3e57f92a24f8923cdc42f0758bc8339de0ab28957fd47d11f89a25ae7335be6ed5f8ba350d5ff2b9cad74c82af1922ff6d045fb7893cb309bee6a4f28f2e8dc0d73c8179bba0f361e5def3c289df7dac9c5c917e87c8f788722f7158faa3e27ebeb8df2cee1788eb42715d24ae478a7c8f45a0b544c328c800a354f0f36984bc4bfcbc63f2c57d3f711d2878bf4b94fbb872efc9acc22091ef40711d10929f5def4ce991ffcd3016f9655790be7469b06c67794acf63d68bb46521783b449e15e2ba525c8f4ae11c2c7d122593a3c5f59890f704bf5977a7ca9732cbba4749ab2aaec72a79985c9ed09e1fa7e052cf5789f427c5fdf1a2ac7b89f2ef23ca3f41c94fe19f9886bed55af90395fcb2ac010a0f32ed242dbfb48ffb83f691a4fd41459ff7fbfaacb449e45923d21f48e9a392f467a769cf24167b76b292f680483b45a1f174713d35855be59d10fb9075a6a2b8ae55b04c63993dc5f50c0b8c753ecd6324cd67faf7cd9f15f7ebfdfb960d2360499b3fcb829e0de2da5fc1385bb10399768e621332ed5c8d0eaaee9de7df27247f61b4843d3bdf49d907bb5ea8d071aab85ea4a49d22ae17a7682aa825d22ef0af590f29f92f11d7eae2d9c3a96759a2ed712e55d244bbe95c96c21f3b5ac3606d11ab374f29f7ecb96ca31f15cf9f56eebd3a54756b883c64fb5d43a1fd72bffc6ab911e4b8515cafd668ddacf0b6593cbb56294396abc4d5e3de1769d788eb150ac66322ed4a254dfa8fab9434e9bb362972dca0bc2bb12a2bef4aaccacabb124ba689b83aeb49254dfac71b946794ffbc5129977a7e93521ef5fc668546eaf92d4ed03fcb741183653d2d9e3fa3dcb3eb538adc9ef26d65cf6a213aaf21ae39e29d6704eeb3ca3dc390f1988cdf64ec747b4a2735a74628a740b967e53c27eeef14571157b067fc7ab7c8f77c08b6b4db7b9ca0bd3eabc842fa16d9be7af44e68a6e57fce09d645499bb0ebace7c5f317947b4f36d5e785d026db33c997e45ff2f558c8bb517c9e6c13fb099a5e10b85b947b8fc61a3542b01ed6b01e49c9cd913eec51456e8788b4fe025bb6e79b83b4386a9d94f1e4e3299c4152272b153c99bfa7a07f8b9226797cd1295b5f9f50f250f549d663bd3e495dbfec04ebd3cbe2fa9262435b943496f7c5206f59af12b4be46d0fa741a5a9f5170a9e7cf025e84bd66bda1f1f286b8beaef0f2bab8bea2a4bd22ae6f8af75f52ee3d3def3dccd7dbde21b17612e32d85ef5e4a1ac37d59cbfbb64857efd9f51d91feaa96ff7f22fd35e59e5ddfd5f2bfa3a4b3eb7be2b9e0dde9ada50b3939d2d798f633649d14fe81fb4676dd927a7fc26a91f6a26519329eaaafc859e8cb11f275f672cc7de84a02372c7f7ddf366a15f9b4d75a1ef2ce2b11e97b55606d89507e0351fe8e90bc7b0b3d7f20ca7953b967d70f45fa5bca3dbbbe2fd2853d3a3545fa560d67abb87eace17c2cae1f693822c6ccfa44c3f9445c3fd570447f3f6b9b86535ba47fa6e17c26ae9f6b389f8beb760d47d4a3643b27f97e477b5ea0f1a33f7f5da3537ffe8656bef63ceb0b912eeab3f3661abade4c43d79b69e87a330d5d529e5f8af477957b492fbb7e259ebfa7dcb3f7a5dcbf16cfdf57ee3d9bad2bdb4dca8fcabc1f89ebb71ac6b702e3672dffb690fcecfa8d93f2f7dff818f5ba6b18db95e72a86cc5f24e896f6b38f93f45df52fd1e896ef7eaf617d2fb0eed2f26f0bc9cfaedf29f47f27307ed730b62bcf550c917f1f19f7bd1342ff368dfe1f34ac1f0456a996ffa390fcecba43a17f87c0b84fc3d8ae3c5731647e39fef7bf10fab76bf4ffa461fde463d5eface5ff28243fbbfea8d0ffa3c058ae616c539eab1832bfec47bfabd1cffe6ea4a4b1777e768231f7cf02632bae3bce7b4ef4f104bdbc5fb4f27ef1cb6b303a044bf6713f0098bf0acc0f947bf67cb8c2773d713d28a54b677d1087e3cafcf25a47c9c3ca106d9723af429f8e94971c6f8e120bc8f1a50682eedfc4bb1f29f79e6c1ade15ccc7dfd3e9acabe461185b957b86b1c9e73989f5b1631603a8d81f8bfb6d0676f0899f77a28c5f3ef5ef9bce8af06e15218fdf45f9db947bf6bca948ff44cbff8796ff0ff1bc894897f55cb67f7f2af294187f69187f2ae9ecba533cdfaedc7bf26ef28e8623dffb5be4ff4cb967d77f95b205161343d217fcaba4b1fb7f04cee7cabd57eebe6b7db9eebb3588ef88f2b25d27d077e1f7ec9a952a8bffcdd2f7d4ca7a5c2b4bccff34b94d2b4bc6454f6ae9a23dcf4e683424c4355ba121db2fa3f1617e198d8b8265395f6ad83f8232855fcdaea09529c63fb27314190b1d395f297488711be76b453f8dc55569ebb3e5d8f6b74a5a2591a6b4a9d912e37b254dd888a3b45dd9b2cff98393f457135f51ca90655656ca9065aa65c8322b2b65c8322b2b65c832655ad3a04cf833263fa1435e87d4e75582cf93f297ed8bae975fc47b7b687ad9435cab29b290e36bc2af67ef19b4477ecfeadc75415d645717f9be54ee19ce6fe25e8e917da5dcb3eb5e4e20decf96fd28e16fb2f716cfbf56eed9f3fd44fa378aade61074d5d4e8aaa9d1554ba34bf467b26b6b74d5d6e8aaa3d125dbae5c40573dcdee0b947b3976e8e56b24c741a4ffdc575c557f29c7a6ff22d2762a69b2fffb3791f64fcad60f0d89dd93ed82f0898e8837d99f7ad9aeaba4897e8a9b952aa730cabc95c0caaeeb94691fb2655cb04dcbabf4eff9df322fbbd673026d06bff7ecb77991862ddf93edee67ca3dbbaa7180c4526298ec864a1abbeeeb04da0c7eef95db6cb32f8be6bd83f8ba1f4fa64b3f2eedea19e59e5d1b2b343416bc496c19a71428f7ca38b5e439f9bc7ed0169bd5003852a672ecafb9962e7ca69bede3cc89b2fea1a5c090f57a9b72afea5ac6132f28f71ecf2d9a859421b19b3ab4fd345364d84cc9cbaecd35fb69ee97c72003d8f2bd1622bf6823e478a69bd09e6be3a06e8ea67fc94f8172afe8a645580cafcbb4a5c6772b91de4a93754b259d5d5b8be7df2bf71e1fad84edb915b472da80720e08a6bb1595fcf239bbe63981be05bf6738e352fa71c43b7ccd98f02b6e585c0b689365276d607fcdaef617d7b64e300e9774e8cfb72aef3119dd1581264d2e520e8ec4fc44a3b18352bec4e8a8617450d2d9b59366bf9d7cfada4cd570e47b9d35fb6da53def229eef50f2ab3eb1ab78fe8372ef95d7fa3e5f57adbfd1f2e7a578e2d88ade93588f07b1f64ff8586dc4588f5b29486320a614988198b2b5b8aa31653791a6c694023f1053f610696a4c29e6770231a59827088d29bb29347da794a9c7943d94b41d4a997a4cd94b496babe9ad9713881993b22a50ee15ffd24ac439ae26b3ec764e309e6a27aeed45fa8fca3d7b6f17c42dae68c3ddaa1aa6c17a3457c6bd426eee9e8a2e457bea564f953d67b39226f388fc2e8bab3d1b6d7b939fb7ede690f25b06cbc8eee304ea1fbf57eb4b5f2758bffafa651d10d6fec936a6865686de06c958fcc960d9d972ee4ef4efdcbd9574f6fed98aac64da398aeee4fcce8694fcaae485d02b752262f5ec7e4eb0fd90317aff603acf27d3d97580136cbf06f8b26ab755e0d4d6ca1908ca19a4a5d751f2cbe7ec7ab0136cbfe45a70b5fd12f52572fb950768ab49d35686a6c14ed0ff0ff665d07193869fafe1d7d5ca19127c2edf7395f14e9e87a5c978dce36d9e58abecd653de93f5a48156c650ad0ce1a35c35ce1e2ad2f64d95b140b4296e43e53d594663ad8c115a19c24fb9fb29658c10694d52652c12e3a26eaef29ecc2fd6a5668f54ca95e58dd2f433524967d7619a7e8609fd887165b7a9668bf27d696b3b82e981b64fda9fdaf6c918436dfb642ca9b67d63449adaf6c9f51e6adb277daddaf689b5fba16d9fbaeefa3ba54cbded2b50d2762865ea6d9f5ac7a44d8f54ca52c7533a68cfc769cfdb6bcf0b82cf93b22e50ee95b633ef02ffda79a7468f568790ddcb7a246d3d69234f076d44e22771463a641dd56d3ec997b0f3ec099a0d4ef0f13bbde2d0f29ce804fbc813c555eebd907fb33c3f479359275177dd661a4f7a7da5fc8eacaf51fd4e73ad0cad8e927e47d4d7c87ea78556c67827bddf11fb60a2fa9d64bf40f13bb63aef8aeac0244de7621f50d20f8931c6327eea5027e8a70e56d2d975b278be45b967747407741c16a4a34c79876be51da6a5cbf92add071ca1f17784b84e11e9bf29f78cbe537dfd74dd0cf0a66a785345be9522fdf7607e542fba8898cd1571a2f4dfd9c39d601c3e5c5c0f728271b8dc33b69bc70fdd56413905e2eb429116165f17a6f2cbf8ba7b353f6ff75c5cbedb5a2ba34daa0cd625e269b22f3f4da149ec9fca9eee04ebd1f4a0bcb28b9ce0b84191a02da4ffefb60d9691c42ad66c573e97b631437b5e2c9eabf1f70c91a6c6df5267a6f1b78c15289dcd8ca0b3996575d663b39fb7c71bb87cb79d5646fb54193d6be1f792744bde3a89fb8e0a1dd2ef764a6196c836a583f29ecc2fc7373a6688a5e6efa2d15553d191c4af95c23a40cec5878df109acec599a9d8a3e852bc7d8668be77f28f79e3e7ac9b15939862fc7c11e0c29fb7590b79356e69ca0bdca7a96b477f95caecbeda8bd3f17bc5fa03d7f2884d6303be92aee658caddaf73cc596917dcf73cad877ef8d7edede61e37f4d8265642f70826d85d8a397bd50a4ffa9dcb3eb2291fe9772cfae72bc63a772cfae720fe0dfcabdaa87c54e301658ecf3d2679ecf4b1fe9dfe55c4989666bf3957415ef590d2f6ced42150dab549389b0d3ec25299927c744962a7a5ba2a4b1eb3227380fb3cca7a5ef384c8b2cabcc9c8c4c97fd80154e704e46ece9cb5eaed0b35c9427c63ffb86ac0171bb05cb71e558a0f7de8161fb1e062bf9956bf651293a745e649e242f476bbc887d86d92b155e56fabc1cb85ad07441084d621c28fb1885867e22edd8545a928ea7953ccad854f23958479ee4598ecbae04cf7b06f98fb20626fb38879e2f5aa5c8649592975d8f778275e9785f6603966bd8f2bd139ca09d8bbd90d9273a65ed7cb552ee894a1abb9ee404edfc24bfdcfe79beae068c0ee297b16d992eede114cd1ec4feb2ec93151a4e16656cf0cbe82ff7c852754ae0bbbde8725d39feb9462b778db89eaa942bf7bf893533d9a739c17982d384ccdb067977fb686512f54bea25d9c6ac7202f1783ff93c8afd9c0eec47d993c9ff9679d9f50ccd7ecef079197493862ddf5ba7d9cf3a713d93b09ff54ab9672a69ec7a96663f67f9e50e14fb9f07ad0ee297b11f992eede71c4d8f623f65b61aab9e2dca78c32f63a0ec7b52f6b30ed88f4c97f673ae56aed8b399bd412957eeb793f6739e663fe70999cfa37977fb6a34acd56c666dd066066c4e6f33ae1c379731547f457f8f8934b91795c59942566e3fe53de953c51870329e52b11e8f80a5c6ac8334bae28859e5fb32b61e2be4f56106ef1664f06e578b72bbc650eeeb16efbe91f9bbeee00cde95f3a299c84abe9b89ace4bb99c84abe9b89ac641f2d137ee5bb26fc8ab9e3ecf3c53bff28f7ec7a8113987b73fa8a7465ef37ffdbf357c3d938a45707878bd8d61da260b07743ceaa2883c7aeca9e73fe372b639528e33e8dce8b353a072ae9f27dd5c74abc107fe10e0dd2ef0e57e891f323ca1af3d22d4a9acc23fd9818333fa89f9ff720118fb90707f122ef01d6e754a5fed2cca9ba72ae48ea446d0f655a0c73a7d9978a72e5babd9e5afa8be931f83e3e6973921e79eda3e461785b23e0893550c938e83227382671999f275fc8c895e3fa722e4acaeef2942c02692caf3a162ee70a4729691273740a63a9a48ba25dce8dc9186aa3a0f907e59ed12ce67cf25f09be977d8513ec2b5fa1c940e2bd10c41b21d7334bde551e283a653e49e7951a9d570adc7e3e9d239607dfcbbe4aa3f32a8dce2b353a259e5c233e3a1a9d6e4130bfabcedb095adcf14a9a18bb7427a4f4b54c8cf7b863a39519c5265d596f366936b9c9cf3372abc827e6ba5c79b6979cfbba9ab0c9ab455e655e2c6993939434b107dd3d3485b142ee4b8f529fc4586af6351aedd7f87946495f29e642dca9e2bdc345be6b9db2b48bf3e75cf52c3249fb114a9a982771a728b447890125ed622c31fb3a8df6ebfc3ca3a56c0ac5558e798b71f8eceb09daaf177995f1fc24edd39534b106d82d4a611c256513857619efdfa0d17e839f678c18ab76c598bc3b47bc375be4bb91a05d9cc5e12a63e749da67296902cb9dadd02ef7d884d11ed60799ebe334147335aee8ff34107d6377be7f3f26acfd917e458cbb31d632a997ee02bfac95f27c32319f9a3cc7ed578c917d9328db155872dc549c7d9723f7dc5c28d26f09a667dfa4e4579f4b1f26c75b6fd5f064dc741bc0bb557b2ef1e438eded1a9e8c9dc4596f39090def76ed7976f0393ff7c7d42f5e2630ee14983922fd522dbd02c648cafb2e8d9f2b947476157be5732a2af72c9f686b722a69f2be07e089b352b2efd5f0ee15f9aed2f0a4bcef037832b6bd5fc3bb5f5c1f10e995957b767dc8098ebf8b762afb412738fe2ee74b36a5d18f1c4f936df0c34e706c88dd7b36319ef9194f4fe3e5f978c277676be73149bcec4734bc67353c31de2163097ede51189dd76af8e29ca79c2aca3dbb6e16e95595fb28f8617ea2c4e77dcfb0bd25d20e449f2e27ca587a69045c9957cc3938b2ffb1d849fa6416b6f0b4a55a9e65299eb31f1369eabc811ca75991c25a7997924fbe5759c927df93b2ecaee4537d660f25af92ee1ee597334cea3fc3762419b329730751f5eacaf30dc5da9aec279ce03a07d1bfca7ed209ac7390f95d656e215bf6b98e4bc9f018b99e42f6ab94356f726d1aef7331ec6f83e9d94f69b4887ae5ae12f9e41efdafb5f79ed6de13731deef1e25e9e53f59572cfaecf8af437957bf69e1cabff1e94f79c56de73e23d3967f0bc569ed83f9dfd82569e88f55d690f3b40795bb4f2a48d9f24ee5fd4ca137dcfec97b4f2c4992feec902ff07ad3cf9be3cdfe855852e253d670f453eec2acfacf855c19576cad2e5dee6b03a2ee61c5cf56cc6a8be4acedfbe2ae8db53b967d7d734f9893344dc35e2fe95a01cb2451f335b8c6fe55457eed9559c799423cfc992eb1065ac2dce2ecad94bb967577976d1ab0a8e4c67573916f75e10375b9c6194b3b772cfaeda9947c9764c5d8f2a6523cee7c8a9a9e491e9ec2acf00d9aedc7b6dd594fb341c651daa23f64e1fb656cbf38356d60f5a99627f734e2de59ebd2fe3fdef95e79e4f396ca3f6beba3e768792c6aec247e4d456eed9f527cd36e45e6ab1a737a78e72eff1747825bfecc36bf8d729eb35bc5f353cb99f579e7bf0a572afda9a3c3342d639a963795ecdabcabdd431bb8a738772ea2a386a7a3d2dfd3dcd76854d657f10b4dd64fead227d1fe59e5dc5393939f5b5fce21c9b9c06ca3dbb7eace5ff484967d74f82369efd8192ceaee25c841cb9dff375259d5d3fd5de97f488f311721a29f7ecba5da4efabbc2fd3d9f54f205799de584bdfa6c9558ee77c26d273855ee5da11398ff7aa924fa6b3eb17e2bdfd347d7fa1dcabfc4abb2950ee2ba4e6c2266f16cffff6ed78ca2bc27e43faae497f876ce67dcd66647e697bfb28f7aa8dd5d7f24b1b6ba0dc5336f68192aed85442a547b5a977359b91e5215d7da2f1f3898243d998d489b4a5269a8e3fd374bc5d49576d40f7eb5f68efa936c1ae5f6ab6f1a992aed64169bbaf68e9f26c07aacd946d05b146355b59a3ca92799a383723e9d3e53c8a380324a7a9c82fce62cefeb72c46c20d62c8f212caf90d892a4a5e7695e71a6c57ee3dbb2eaea561cbf7c47c80f4ff09d10627c43907d25f27445b9a10e71748ffcfef3dfce9c2ff4f17febfe81b0dafb68627cbcb7602fe3f21e36eb1fe2021cf43f85ab96757753fbee4b59e2297ba4a1abb8af311729a29f78cee1d1a6e0591afb972afe82989d322885374938653318893fdaf922eef555b157523a1ec2348c8b3890a943cd277a96555d2cafa3bf8be7ccecf5e537423cb44f8d93bb5e73bb5f2ab049f27aa28cfbd72a62da2cb49dab5b449574977fde14c351e4cdaacb49537355b11b14222a1d98a189f4ae43801bf96c8d1745d23a8eb80ae143f9490744879be1ad469428ce7242a07df73e578ceeb413949fe9275b1aa865b594967d76a415ca99fc41eda7bd5947476cd12cf5f0fd293d833f85ed2bfc835a6aaecc55917657c9172d645a2be6677c017cd3944c396efc5e48b668af55f332ff1af73f2343ce48b1a3a415f24f70049fb92677148fb12ef277d432327d0be241a68e9d217493b54ceca48c8b6a740c9a3d6c5bf83f912e23c8f9c96ca7d043f357b9146db7e4e200e4c087f94c8750271a0c4e7e9ecda04f02ad3e53e4759a79b6a36baaf92ceaee23c09e90fa56c13cd947bf95cd5a9291f5931f39165c18762fb49bd6b679ecc88f06d1d579cfb758c1c5f3a435cd705b123ed3f97f5ba79ca365dc9430bf1fe36258f4c675779aec776e5deb3b979eb351cf95e2b91ff33e59e5d5b3b65dbf6fd95bad25a4963577996c6e7cabd57ee5c51ffe7cd02e5b7d5ca17fb6012f21c8cdf947b8627ce509afb731adc761aaedc63ad8defc8fcaee26fe5fa0abe7e3f645c47be9bb49be641bb9923c65edc33893256462bc374bcd5957e5f9ebdb04db967cfa59f97e7aabca0dc7bf29d3f2f88e3d60ba74fe2256d569e19b15db9f77017c83d3062cda7bb41a3479c2192d34ab967cf95b96657acdb54e79addf3c495986b36e52121ce4dc969adc9529e97b24db957df13e7a3e4ec1f7c2f29938edabdccdf26f83c1d9d24edd2d776d56894ebfba4cfeda6e9bb9baf9785870571dc86e13448bc242fdd357d77f77117e58afce76bfa96f4f4d6f42dcfd3b0d1b7210f891e82f64f3459ca7d01db947bf5bd5e9abee579a863155cf55ee66f137c9e8e4e92f6fd04461f8d46b1f6ca15fdfc845c8ffc8272efe9e5c8fc208e9b9b465672dc40f222f75a6c57ee3ddcc5720e45aecbdba0d13350d3f7c018f46dc843a29fa0a16df0fd447f4d96fdb5f70668fade4f93493fed5ee66f137c9e8ece505f2ff7e2c93593617bf14cdb0cb91648fa21f93d1ff6b7f47597a7d21262fdb7bb31a59363de51d2641e8921d609b8ea595571d02df49418a2e96f887847b6cbf22c85e7947b761d1c9465124f9539d3e301daf3615a79839574964f9e31f350f0b9dbcf9c7ff74a711d2eae727d8027f355620f9ecbd63278757089f4a1728dd9414a7932de18164e837b8d56de754a79723ef55a51de723f7d899c83bedea2dc1b88778f89f62e8927d74c89f530eecd8a3d8afdf5ee2d4a9a3ccbe156254dae47bc2d2583e3c51e0357ae276a174297d4fb9dfebb8e5cbf29eb8f949b58e392182e30db2bf7ec2af7ef6f53ee557f23cf5b785ab9f7f4b36c9186a39de793906b43643d11e743c831a1e47b727dacfcbee40e9f9f65d2c7df03f8bb2303bd8975ea09edfc0d579c8391181d4c4f8c52d2d9758c13aceb62fd68429ea1f0a0564e81568edc033a56794fbd17f9a56f4fe28c05f48ea3d375fcc4d860fe24be388363851c07b937f89e7b7fca364f90f3d162fed31d9b7ab6224f7b4f3d2f27aa6ec49a2657ca50ad53723c49ad53e23c90409d12677c84d6a990b584ae5ce7fb3041c3e1040d4710344c89404387101ac45a29f751828669040dd3091a8a22d010e25bdccde2fa1841c34c828659040db3ed6848fab7c7fd77e599aeee13fe7d5331b7e33e29ee6785f0f3949f67b5b461e1cb5cb1ee2521cfca7941b9f7eac5d1e22c2157ae83117b57dce7143ee5be8ee79534b136ca7d21c5fb49bd957cf2bdca4a3ef99ec87ff44e7195346cd1687891a0e12582869753986b2a29f9741a5e0ea121e4bb44aed483f8a6abfb5aeafdb5728c428ea54d48959710dff74ec8b39dbe54eed93bf21bb0624c25a763f03d57dde71d47bc27f673247da73c4f6abb72efd9c4b162feeb58198f89f5ab09795ed1b6205e629286f76c10efb85c91ff750d6fb286f786862bf603240a45be0f947be9af32edfb88f997640caed0e52adfe824e57859904e8e21dbf510fe243fc978419cbb948c17c45842429eeff460102fa9b74383f79c0eb5cdbb5c2b479ed3f49c46df111a7d4704df4f4cd1e8d3bee79e981a7c9ec43d3c4867126f6a90cee4f334f22675206377b1ce8ac7f00cbb93218e585feb8af5583c36cf0447ae69953a91df4e17f3faae58bfe58abd3dee7b299b3ca3968621e4ebbeab6148db156be8dd0f5318eb121a86ac6b1f6818f2b9ac6bb768cf3f0ae64bb663726fb0a11f723f16d7ad19e858ac0d4f4cd7ec54c40389694eb02f2feb4751aaac24467110239977462a2fff5be665d7994ed03fb27b4fceab6b69d8f2bd594ed00f6c53e864f79f2a65c978627b4a8767cab44ffc724e14fbdf4efc46e18b5d672b38b38336c3f3a8f1fbb460be248d0f05694fbe3f43799fc5c4f2cce2cf345ebe506890b1d897295ed64b7b14f319aefa8df288fa4f88b38c72ba28f70c4bac3b4bc8b38a1e57eebd724fca15f944ecc3632154768e92ffeb68f95787ac6d759fd3ec6b9e136c13e7f9349e9a08e677a58ee5b9427f28f76afe6f83ef25c43947395d7d3a12e29c2357ac590cc46c62bda41ab39d2a63af1d44fe1f42f2ff48e4ff2924ffcf44fe5f42f2ff4ae4ff2d24ffef86f87f10f9ff0cc9ff17917f6748febf0de9f987c8ff2fcecfa66cf5fc596e48fe2c227f76083dc2beb2e4fa13796ed6d3ca3db34b3186919543e057d4b02aa7ca394bd255415c2b29b4307beea6d15f85c0af1a1f3e5997e57e6e5997e51961cf2af79e0c4e7f25983f5997e55cf51fcabd923fab5af0bd8438e32b5997178b7c620d8cdaf7c992eb3694becfdacde25975227f8d90fc7b11f9f70ec95f93c85f2b247f6d227f9d90fc750df1eb11f9f709c95f9fc8df20247f43437a1a11f9c3e4bf2f91bf7148fe5c22ff7e38bfb4af645d9667cd3daddc7bcfd64e15f99a10f8cd342caaae357582754dee1de9a6d1df9cc06f111f3e5997e5fe0fb95fa43bce4bbe2fd7f1ca58509ea5f78372efc9f08c7c9f96335607df4b2c718231acdcdf3656c37b41c393e7308ab5a4bc4f10124765b50c962bfb10393df03b24bf1f6af42d7582be6fa94fdf996d83f9e59eff843c23f00fe55ec99fd52af85e62b913f47df29ba1ad45be0fd2f0bd7fc47c6d22e66b1b31df01d1f291ef8ab14157acf1ce52cfd3167696a5ccf925c47857963c4bcab3b36b8a94349947d629b966e51373da5cd11f4cc8b348b629f7ecf997e25eae077a41b9f7f4bcbe3488c3fb01213448bca4bdc9b313b72bf71eee59f25bc4725e758346cf2a27384fbe4a3cb7192b32e42121f73a3e187c3f71ac26cb63b5f7c4d988c979f22f34991ca3ddcbfc6d82cfd3d149daa2948398474c1cafe9f5785ffe678b39af2c311ec07d7158fd90b8d70b9c1334dc1304ae18cfc9ea62869b25d6e9244ed4704f14b82246cfea66882bec2cb15ac35dede39e23e6adb27a18e28ab530899334dc9304ae58839fd5cb10578cbd274ed6704ff6713788b63fab8f21ae381b2b718a867b8ac015639659071ae2f61338a76ab8a70a5c31b79bd5df107780c059a3e1aef171cf153177d640335ce70e81739a862bcec53c57fae14166b872ad41e2740df774812bdaffacc18672106b38126b35dcb53eee79227ecd1a6a882be604126768b8e24ccdf3c4fac7ace186b8624e3eb14ec35d2770c5bae0ac830d7185bf4a9ca9e19ee9e39e2f62fbac1186b872de79bd86bb5ee08af62f6b9421ae9c873f4bc31567879e2fe6c8b2c618e2caf1bdb3355c715ee80522becf1a6b882be7efcfd170cf11b8e2ec81acf186b872ee6c8386bb41e08af1ebac8986b8629e3d71ae867bae8f7ba18c4f2719e28ab98cc4791aae38f7f442d11fc89a6c882be784ced770cf17b82246c93adc1057ccf5242ed0702ff0712f92edfb1443dca902e7420d579c4d7891d8379e5568882bc7b12fd270c5398d17c9187aba21ae1c53bf58c3bdd8c7bd58b4ab59c586b8724ee0120df712812bc7cd661ae28a3982c4a51aeea502578c3d65cd36c41563eb89cb345c717ee025b25d9b6b882bda83c4e51aeee50257ac9dcc9a6f882bc6b9131b35dc8d02578e192c34c4956bbeaed070aff0712f95f1ef9186b8622c2fa19df9971067fe5d2ae3df12435cd1ce24aed270af12b832fe5d62882bced6496cd27037f9b897c9f8779921aee8d727aed670af16b832fe5d61882bfaa5896b34dc6b7cdccb65fcbbd21057b45f896b355cb186f37219ff1e63882bfa7e89eb34dceb04ae8c7f8f33c45d2570aed770aff77137caf8f778435c713e4ee2060d579ccbb751c6bf271ae28a763171a3867ba3c095f1ef4986b8270b9c9b34dc9b7cdc2b64fc7b8a21eea902e7660df766812be3df3586b872cfe32d1aee2d0257c6bfa71be28af63671ab867bab8f7ba58c7fcf30c415fbf212b769b8b7095c19ff9e69882bf6d9256ed7706f17b832fe3dcb10f76c817387867b878f7b958c7fcf31c415ed78e24e0df74e812be3df730d71c57854e22e0df72e812be3dff30d71c5fe92c4dd1aeedd3eee2619ff5e68882bce694cdca3e1de237065fc7bb121ae880f12f76ab8f70a5c19ff5e6a882bd72adda7e1dee7e35e2de3dfcb0d71370a9cfb35dcfb05ae8c7faf30c415fb18120f68b80ff8b8d7e48a7c5745c0cd51f26fd2caa9e404c64fa977affe06d32be747b2ae4ec39758a39c25d60967c9bd833d957bef2af77e66c9fd98df87941d48cb715dd6e60f738a9d426791d39e4f80b776d8f18105ce40a79d33de2972163a0bbcbf067ad7f9de3fff4ea6cb37db3ab969dee16713f01979efa7252fb6d459e1bd5aec7ff377ac7753e225157bf919c670ef9d52a793d39163cff79e4df770163bf39cd9ce34671ffedd6c59fa40fe7fa197633607ed9553a688fbcb14c1889be7fd2bf65e2bf55e64449678e943bd9405deef622f6dba779fef5dd95b539d0ece64ef5f10658257ec3c67897737cefb7f11c79bea915d36673a960ef752f5770a3ccc059cbaf95e8a14e822ef7e1ea7702cff7f29a7b498533fdc4b2bf5d21837339d01de75392fad2cef8bbdbfa932c70991d1341e6e94eeba9514350df2b861d4b7e7b6f8ff34b23b34c2445f81d50ff69368cf23fed3ca68e2ffc9d077324c4ec30546072e323790d6d169cfd7f4149491a0398f6539a4eddb977757a773282fb46498ba1b700e521a6ef0e3e20d8d6b5cbc2527c85a27a73d5f16d4300d6b61826578adf857eb4d58c8c949e4314275f1bb94f8f9f2a9b1bb50fc7ebed93c9fb9022af0c62fa800be957f8e475c3b2fd3420ecf4434dfcb30930bb8d0832d9b52465f790cbc221779d906351dd948e85994d09953e79bd276bdcd4f4ee3ef68b1574a7291127b7b1e79d50b314e54160f9faa8b184a569f87f26f78afebb797f66db6e5b9d61d1a1f3abbde65cdbf3a7dfbdfa38f7e70c1c98d4e58d46bdae22ddb5f7bf4e06fdb3fb1b2c227f9ef3cfdd0d0d2adcffdbae3a73deb7ebf7ad9ed9f6c5c75c8efd7de3e654aa5aeb54ff9eca2effebaf091239e9b3f7cf88a3595563f54f3b14bbbac3deac70a6f1cb8eeb2c76f5ddee492affbcda89543ebbf0ad77f265c210bc8a62ca0caaeae76e9db9930fd574df295d23ffba165580dd4a17434200926280956dd3ded4666f2638b2beb4696df9ea16edf547a3984f4f298f4aa1344f1de57658d28460f00af40a9a6daae6f537cc73c2f4d80422b87ad9a6c5c563907d2cad90b3610e13420f554a4d4c312f7a69a3a87d24f45ac9f4a947ef852dfd9e5aa9ff15e9adf971ccc9fcee61d101646167bb94abd9298e43b7a5d1a262b945b6a6884772df2de99c783d3305db255c3076842a3f5588beb91adac2b3f5a91ce2b535ae18bade7ef16adf4e7e92c3c2ae55c84f1a9e6f5bb98d1b5533bb276ea70ed7408d14e7c34232d55a1b4c497bdcfdd2d5a92980bf93d2b4d8622f1d59fba54a0c79795b70fd1453c94b1a0ab82237e2a82f86c1f6e18e54f0c328aaa9451f0bd0d8795ab51941d1c947f0df0de9de5296b2937ed25a22ae8f9c3d55e3f72c56cc0e59feb50439c6614210957a324cc778a4cdf2dd58e45adaca4426799d2870cb327f646b8bc1b469677232eef9621f69e197d48fa7b50d2e77b71e6ed46e9f7f7de6683246c5cb320e9c687f0374a792976fad837b23e1a737de4a5d5873dc548437ba28031378e80b13aa57f3e8f3d7997f8b7b15e9875b047623befcaa456a8fc25c7ad53de44e60ed7ee7e54a3c6f78b3556fc5866253789d26835e546635f1832891a9449b0968a4d3893fd4e832ede5e143873d26c8795de6f7a714b7edf32e07b61f0bd2973e3dbf67657ff64b1c70b9b3699c18d677eccf1558bc88ea6a593be7f624b2bb2a79a94ca79484e91afabbb2556772d04dcda12b83602dedf12b80eaa5a6d88aa5563ec830f9954adba08bc2d01deecbd23de3701af47552d5ee2f872ad5a78dc3cb3b1e70328efcd99dba70c1f514ae3874ebbc263b7e2df01efef81b25e64019f3e28e47083bc5fc930f2ebed39426664a0bab70fb289bc187c797dca267889bb723662009fa76128cc7d995b041b1668a34b82d65047871ece4f4f02d24f034a3f4c849d48aa74e574c4ca6988903bdb22374236d525069bda97b2296e68bb6730ab4044dde5dd9477a55a16d208bb39e906b3e2a319996d634a4bdc96e7ec162d0df5f864e8a3bcaa3647701faf7eba47d64f0fae9f7621fa89835aa4995c4a33dc17ccd82d9a19ebe12de64fc24711cc35d233b2467a718dec1fa2111b2a9126f6233491c734d19b225c7791bdb08b6c42a9983be5dd39a43596b774451c2fdd1069fa21943e5498c6db86f48357a6948873f3fd1f149c1de8441b39332d1c594f534ac98d77b792c77979678a69497b25f7a3949c1b4dc9a694f48fa2e40111956c5a38527233ca45b03ee2c0282e22a49fd99c0266edf3a028c03d30700bca2cb9a72bde8d66c996322ce2bd2e36245aece117599ae6e0c88dcb106e33add3da4c263422bb69496981370bbb66dac81f411ce049a68463fae9e3796f47d60775ac51e60c97f950ca1d703f98ebe8639de6650f8be200863bfa7c54a6c521d5b5a26a261b473988e03e8f75350fd608d76b6b7b5c5b5b2337906fe906f6a7805917909d49a077017bfedae11e932e601b24a2914844fccb01a941982abc320e17ddf2b90e9bc55aec5dcd84d7962283b5c0a3293298cd8c49a3a901b8b003a8c298a60a2c35d50e09732c12e6b8a0302b0b610e13f308acaeae3014657bca5ff1c66f66b9fa2b738f6c1fd48ca7bc186f8fdb3899b41151289a10c5b74de4ea2c3f2290c7cba394cfe388dd33074cf5bee35ffa72086506bcdd0e9bed8d8bb649510ce25027dde4735ce420d3e8805cec64e4620fcbdcc576449ef070e4098f48535888c7eb840a9b820a9b9a79619da9c2586b5ce8946d8d7fe97cd62c93d6b80b029f4680bfb0aeeb7013f0ae087c3a017ee3b41f5e3101ef86c08b08f0cdbdaf7ac404bc3b05ce3a42ac1f94b6c11e82817b20e01996c03d293fccc3d1f29d1c2fbb48a1ec9aba122db2469d2593751a332979918e70962327c7cb8f56e4027b51ea66eb186647517723aceede14309b8a9f1305b83106ee4301b36a3597a8566f7f39e14e936ad5970267b3562c56b09ab53a9042664b97d8bc92f542a77e087d411ce8fd9154161252714da43200d1bd280eba0722f423e3401f84d01747b1f010e0c11430eb54962433a780fff57eca8057c3e04310d5a5944c9a38996c4624b6271ab03f1451b8c452aec310f0528af54a3c5fe66c0c47a52db364e3200a98c576cba30087c4710723bb5b41d85dbe4bd49610bbcb47e238ca521c239038565a8a632412c7d184381a1a8a6314a2fa184baa4723e0632d81c720e0e32c810b2860d6a0af72ca36e8cc4b9b34e86311f8f104b863083e0ed9f40996363d9e0266b23ed152d613904daf266cba5996994d4f44e238c9521c8720719c6c298e49481ca710e2f8d9b08a1f8ac471aaa538262371acb114c761481ca711e2d869681d8723719c6e298e239038d65a8a630a12c7198438b6188a632a12c73a4b711422719c69298e69481ceb0971bc916d268ee9481c67598aa30889e36c4b711423719c43886393a1386620716cb014c74c248e732dc5310b89e33c421c3725ccc4311b89e37c4b71cc41e2b8c0521c7391382e24c471b4a138e611e0edf9642b8b6a76e5b64dfa1c386adcbeec40963c088c2d179dc1a960e98c8af4e7c7850fbd5d94948f32f9c1e78c073bd14fb32b7f2ed8c98e55f8e4293d30c84e726cf57f8c663490389f327866939712cac863ca60e7495669c0b9d76dff126cfb0b503997a372366654ce42e472ae7088c10236623ac593fa02bed3a2c4f18fa72be48bf18e72523bf54d7cd3228a02d67561075bea5d177667d275399272217ce5c382ddea42d8641e3b17b084ffbd5418ec385e76eabc2a1be7c08efb6c44f42ad90f5d0d37f16ad83142358c837a54c116531ae38b4416ed568d8d85c65ec0b1d9146ca9b5d6aef678ccd65d3a5fb5d239825ee2a2b18dcbea2bcb3f5d48ae845545b646659a4736239a65f785ef60c77e0db7a85d4939b2aa12e44eaf45eef4ba8cdc69298a87ae27e2a16773cce2a12508fc0602fc6743f0a508fc46027c430533f06514389b596187ae5bcd372d47ed173b76dd26645e81e4710b218ff70de5711492c7adb6f25889906fb3453e1a09e4764220b52a9a09e41844f61d04d946536fc7220361e7b0970970d896e429debf3cefb7c4f1cf41611e70a40838d9b3457c9d23bb37b1a7e3101d775174d4147474f47e6788f6cc9e86558886bb291a6a29b218e8498179627ff3250bfcc639ea415b26541c4f51c17cf13d0ef0c5ec4877735f7c02e2f63e8adbea82db0e5cf38cd31916923e11957d3f55f6dec9b27b6876973905ab11050f5014d45174cd969ccdf36828f45ad821c2f64abcbf16f376d65f8d6142c949c8713c48388e9d95cc1cc7c9884df679101bff7f0a05ccba250f3bf6332aa722aa1fb1a47a0da2fad118a83e0d816f26c04d67b04e4722798cb25792f410b9ac45e88f5b0afc0c04fc8425f03a546b9e246acd6d95cd6acd9908fc29027cb321f87a04fe3401fe8a21f85914380b149e712ce39bb391269fb5d4e43908f8394be00d4816cfdbcae25ca4c2170815aeaf62a6c2f310f816027ca321f8f908fc4502bc595533f00b08f0f67cebc7ae3c9d855a266e7616c74b94e1913df8971dfab0942834a0bef885a83ebc62591f2e42c0af5a025f4c01b386ef35c7be55bd0459eceb84c5ae36b4d84b297066b16f4411c9cb18f83204fca625f0e5481c6f11e248543313c74604fe3601bec510fc0a2492772c457225b2ebff59daf55508f85d4be04da8c2bc174385b91a29f17d4289a5864abc0629f1034b255e8b803fb404be0ec9faa318647d3d05cefaea5b930fb4befac74e267df51b90256e7342faea79b1f4d56f44657f42959deaab778fadaf7e13a2e0d374dccb4f7d655ef6cda8ecede1dc4ff1385fe4a4be58953905b7200a3ea3285047a5f2631ca5b81551f139454523858aa8d4b07c2cfa2a35a2eb36e4edbe20bcddd43dcdbcddedc8777c1983efb803817f4580573204bf1339a6af9163fa2623c77417328b6f51f518c2553cdd99e5a496d5fb1f016101ff029ed9c400eea6286053d8df39656778e54f990236e102eea10a6016f63d616135aa9b59d8bd14386bf6763876cdde7dc8007e4006f0634606703f32809fa23010a2d70728602649f68172e2d32665c1438ee87d1051fd8b25d50f51c06c25d9af51804356923d8cacf037c20a87d530b3c24790387eb714c7a3481c7f588a633312c79f8438d61b8ae331248ebf2cc5f13802de6909fc0402fedb21dc306b3764abbc24d9f666169d3c894afe872ab99aa3cea394f0af789666108d3c854afd972a559db544a567167d3c8de86043f065e8d8cba1674f3397fe33a87c972abfa6527e7cb3a6cf221ab2281a6a38c159535f07e39c4c674b9f43a56753a5ef435802a222338b781e39a6845bd6310daa69e6985e40e03904f86a43f02d14388b47d9313cb6c1ee8b88f28a04e5d71952fe1205ce629d4a2e88752abb99c43a2f235bab42d91aeb894de42bb558b0ab8e08973d11d7c4c25e41dc5645dc56cb88db5791caf62054765b2d3395bd4680b7e70734edda83dc53dfb7cb6caa604f42e6edf95943d409eae94babeee15562024b38657fc032c21a2e3ab13d7d796812e275e40cf6229c4196a133780381ef4d809b7ebdf14d0a9c59564daa7a3055d50a97b95e36133728fb2daa6c560b6abbe46745fa98f459de4652ab1383d4de41e0756370feff43e0f56230a67711f83e04b8e9aa8bf7900fac4ff8c01df5cd7ce0fb08bc01e5601b98817f4081b356a521d556b1f1ba22cf212c162d943f6a99cb5bae42ee448abde73dbd94955ecc748c773dc0e9cbefd8da4493d6eb438a2ed67a3542add7be19b55e1f21fe1b53fcb381297fdb862e838101099870ba1539835cc21938ce2aa36f0c7d8c6c673fc276ee6a68663bdb10781302fc7743f04f10785302bc592333f04f11783302bcb321f87602bc3d3f3c6e577e17583faedf2c5e69ee465ddad0c2a5bf099cae7c14517c862a644baa4256e10e29f5b59af15ef26cc30af8392ab115ea980ef77819e814726ed9412f4c57ea37734c4aff0295de3a5dc7341d1599754cbf4455637fa26a4ccd35ab1a5f51e0fc8b5231840f5f2349b6a58cd94024df50c0aca539200a70c871b7df22e07696c0df51c04c74eda300d7c1c0df53c0ecbcbfbc28c021e7fdeda09c263f04b3b05c9d66f4ef23d81db4db21b243edc81d6a73c7e4db0d999e76fb0325f54ebb5beaea070beca4de29b2d43b4794ba096d48ea3f2247d58572f9ec813fee28c7604d7cd74fa8acaee9465d836566d698fc8c4aef46955e2dc9e9402fa990ef97cc84e75f50a9dda9526b97e1b96ce99971ff2ba2a3074507ebc3a43f3c8f05516c87275b335212fb617abf218a7b5214fbf9646926e5fc4ef91d7e30f09872f53b41e47162d58f7978dc8bea843237d29bbb916669dd88c9c7aa497fd5871754bb8cb4c27842fee80f4aeb2ce4eb4b847cf94dcd42be3f297016611c182562688981ffa280592cd92f8658722702ef1f03f8df14388bec07b8961b0efe41c8036d91ff453632881a4830b411c7053632d8d2465c0a98a971480c6acc42e0436300cfa6c099bc8711f2bea9b999bc13143873d7c329372f9701748c6119400e2af9a07413e16c22bebf17ee16898978b64c70baf12ab00a48ac071362add6ca4cac151173f914732ccc9ee604bff9922b045ce2fdc546138bbceb021183b034d6e2b106a2d499c5fd3bfbc8c9fce4dca13aeeba9fd327a371d74a484023a87abebf99802a23f0910478a2ad1978150a9c8d188f4223c6a3331a31ae8ab43c06c5b4e3bdca52e4f89f561e22a23b16b398e8a51a125d0121ba5586a2db8302e71385b6cdc69e14323bae7d5c14cf1ef27d8ceac8f98e8fc1f9d6402a9e10e61f3bc4e01ff742254f44c685fca349a97b23e33a8430aecd079819574d0a9c8d174f8a6202216bfb6a21e0432d816b23714c26c4b1a59d9938ea200d1f4669987d726496a37ecb8a6a22e422ad5ddb54d445623a9c10d375edcdc4548f0267df613a228a720fc5c0fb20e02996c0f591479a1a83476a80645d48c52d7966b26e889cf4344b27dd08014fb704de17c9ba2806593746b22e2664bdc850d6b914381b2f981145241331f07e0878a625701324eb5931c8ba2992f56c42d6b77530937533043e8700cfed6c06de1c81cf25c0571b82b740e0f308f02f0cc15b22f0f904f8da6e66e0ad10f802027cab21786b04be90001fd4dd0c7c7f144e2cb20c27daa00a74640c15a82d12c9624224fd7a9889e400045e42806f30046f87c04b09f0df0dc1db23992f8941e67988f2a5d478694f33ca3b20335c6669861d11f0724be04e48d62b6290756724eba308595f6028eb2e087c2501fea9217857047e34015edadb0cbc1b023f8600dfd1d70cbc3b05cec6e28e8d62290d30700fd4f7398eeafb3474d46d30b3f84618f6b9bad1de95dd07bff19b799fbb27a26a1545d51e4ed98dd3994d82f542e51e8fcaf5a727d5353e99ac77ea8dca3d812a573dd20e979fd904691f64c52712563c7a809915f7456cae46833863b9912df3aed33933ac039dc9fcf38188ad9308b6d8f7db4cd8ea87dcf8c9966ebc3f023ec512780052c4a9518043e43c10c9790dd50e1bca7910023f8d6a780cc107a326f374a2c96400264de61044f95a2a241c6e46f950047e06015eeb2033f061681c7a9ded38f4706483675adae0414893eb63087e0e46c23e8b107691a1b0f311f8d904f84e43f01108fc1caa6ae69b818f44cadc60a9cc5108f85c4be0d1c8b79e67e95bc720399f4fc8b992a19c0b10f80594858c30031f8b4472a1a548c621e08b2c81c723e08b2d812720b77789addb9b88347829351a33d24c8387a0da7299656d9984802fb7043e146970a3a5062723395f41c8f91243391f86c0afa4c04799811f8e647d95a5ac8f40c09b2c81a720255e6da9c4a948ced710723ec450ce8508fc5a0a7cb419f83424ebeb2c653d1d015f6f095c84947883a5128b919c6fa4e2534339cf40e03751e063ccc0672259df6c29eb5908f8164be0d94889b75a2a710e92f36d849c5f3154e25c047e3b017e98a112e721f03b08f07986e0f311f89d04f8d186e00b10f85d04f81786e00b9109de4d8dc5b0f5cdeab9372636b90895740f55127b103c7fd1a4ac235159f75265310479cea449298b510ff3be187a982548ebf7135aaf31c14ceba508fc01027c9621f81204fe20017e9d21f85204fe1001feb321f832a4d0876350e87264938f583afb1508f8514be0a390ac3753fe78a299ac57a2aed563b65daba311d98f1364773fc48cec63287036b1f2441461876c0c3d16013f69097c1c05cce60e9e8a021cb2847f1505ccb60a3dedb2f39982c075a8dac2661900f8f1c8a89f41ad059be898e0f477f29df1ce60233b3f0131f22cc1c81043464e448c3c17c6c87067a433c863e31023465623469e271861b3ce268c9c8418798162a45a9211c6c648679cf7d710ef77b05360c4d2c988a52d044b9d0d593a05b1f4a2a5e73c1501bf44c98a9d168bf7178e700af9f251f6f762ed6b90ea841f7e6242f91a24ef9709797733ac0ba751e0cc525e71ed4f843d1d51fe6af2410a9cefd47bcd653bf5d8a757c3b704e67bafade0516fa9f77c1ec7f6bf089b7e8ba08174d6a276eb75a2dd5a3dc7acdd3a8302677b30dea0a4c3f660bce966b207631db2fcb728cbafe104f760a8569b2f16119858ef9928807b9b08e0fef57e4c02b8f588b5772cbdc55908f87f96c067a318eb5ddb18eb1c64abef11b65a698199ad6e40f2781f794fff1bbaecbbbac55e04b0982f3559c197d28fe30b4f98ef2c75f4a5f7b393cbf14bf85fa5e2a4a85c274f59866f22f07311e51f5094ef43f8fde981af06a77819cf7bc2f30cfbc1e7a171a00f2dc781ce47faff88d0ffef0bcdf47f0102df4a0d781c69067e2112c9c79622b908f99e6d31741e2f46e09fc4007e0992f7a7d4e8558999bc2f45f2de6e29efcb10f06796c09723597f1e83ac37220ff185a5afbf820266e1d29751804396065e89ace32bc23a76949a59c755a885fadab685da8404fd8da5a0af46e6f12d611e150ccde31a24ecef08614f5d6226ec6b91b0bfb715f67548d83b2c857d3d12f60f84b05d4361df80c07f8ca1a2df8834f913a1c9a2a5669abc09c9fb674b79df8c44f24b0c22b90551fdab25d5b722e0df2c816f436dccef966dcced48ce7fc420e73b9038feb414c79dc8a6ff226c7aa3a14ddf85a8de49c5ceacaeb73322fe6e02bf7d17efd69de2ecca03cb4bf929512cdf580f711e1f3b181598e9323ff5e86f37e44b49ae26233ef6f10f1ffb685a86f34ce9432718dd834ce65fc264562d3333997b11383b835a07f7d83402bf0fd57d37cbaeeedf8f80b32c811f40e2c826c4719fa1381e441e2b9165bf30fa2144790e4179efa3cc287f18515e81a0dcf4d8f54710e51509ca371b52fe28a2bc1241b9e9b1eb9b11e59509ca07ad34a3fc314479158272d3b8ed7144795582f25586943f81c0ab11e0eb0dc19f44e07b10e01b0dc19f42e07b12e04f1a823f8d145a9d50a863a8d06710788d18c09f4562d98b104bbfa3cdc4f21ca27cef18287f1e454435a3341421a1d00b08b89625f01624ebda94091acafa4524eb3a31c8fa252492ba9622791901d7b3047e05c97a1f42d69d8f3193f5ab14381b24aa1f85ea90d508af21e00696c0af23713424c4f1e9b166e2780329b15116d13739d0f16724d828fe52a738f98efc5a6e708662383f2a887db72c57cc31b2eb0cef7fff1b536cee22351bc162efc2e4fbc1190d3f97e961416f22def6b534d0b71070634a68ecc12c2f5fa9d7d5e8e945b9ed8dca7a1b95954b95554929ab2483d2dea14a63f350fb65959d4c6dcf4e8a223eeea47e86017ddca989875721e1f83fedbc9f8a652763433e21fb3f54279a127562f9f16675e25d24f2669676f31eea1f35b7ec1fbd8fc4d18210c74386e2f80089a3a5a5383e44cd5eab189abd8f10d5ada97ac316834d767a73139dc7cdb40f37543648d25738a8de9e0652cffb7a862d9d52aef7ee4a0fff1891d6c9d0516d45b4ee6f29e18f11701b4a08f59c74b3b6031c764679b1725ab90935db9095b6a57a37279a59e927680ae0802ccb29804f51ad6d67596bb723edb4b754fb6748d07984a0f3579b09fa73248e0e96e2f8020177b404fe12f9994e31f899af90123ba3f6f920ef76110f808a796532d1ecd788952e318c3e7c83c0bb12e0550dc1bfa506a9d9323b77577e55733c0f4a4b7985cfecab9adda840a8bb430642514aebeee15562d58d09edc9931ce767efb7d9c98e33cefb5dedfddee5fd7eeafdd63ac5710679bfa5deef26eff70def171cd4df238bfeea66147ad070f777c8ce7b5276ce4e8ed97fe6f6650bf2aecbfb326f675e7ede514b1b2f9998776cdec4bc29792616ff3d2ab717556e7defb679c182bc5e4b5e1e7d76de8cd326e51d9ce7e60d9871ceb967e71d9437286f46de1963ae3962c66913bdbf8ef37e47e54dcd1befa59b50b40351d49ba2c83f8cb9c0c977f2f3a6cf9de8953820ef344f0e93f3ce312af507546a1f2487e23117173069cbd22b8d9bee713c28ef744f264c0a0f2c3fc34a0e3f228afa22395c99776bde8379f77bd6f0dab416e3c6e7adcdc01e7e42a51e48959aebddf6f76ee6f1437672855f59ec2c11b5829d64ebcba7c4393baff2ccfb0be6e6d9c8e467445d3f544b36e75d93f753deb75e1d792e6f6e5e8749138b33a925bfa072fb53e5b2c533f1d6895f51f903a8f2592872c4f9ff4c7e7fcab429d5a7f8b57566de24a3127f43250ea44a64d1c1579e9c6fcd1b36265f9437202f551f5c9e969fe761389d9dee5efb21ffda3eb2eac8b9792f8d3d56c96d5b737e47b40fa268afca69bfd5f3a4f7e73debd59dfa9326e58df46cc44c5e7fa03207230dad993c6bccccbc391e6f7e0d31d5d09fa8c42154896cbeba89364ed2c42bf38549c77a32f7295898d7e1b4efc732bfc134e1fbd0acbc2665463cf4f7cece3b6e54ab251333d4d65f888fa1141f95bddb17cfaab826e5794de5b61395370cf9906ae30e494a68e5d28ee7cccc1b91410bf3372a773855ee9e4abb566d5ce399be376765ce34f65effa0920f42f5e13d51174e5f53e4d5c74cdad37f5199075365d6d05af1418a17c8c4a69c2c507a3e2afdabbccd799bf2bef1fcc0b379543d3029dd45a58fa04aafa395bed6f3d8b25ef93146e69e300b513212d9dc9b795778947c9d77b7f7ff039e05b49c34222f137f988d4a1e4595dc9828b983d742e43923bcfe46581b91895412146dccec47131d31761aaf49472c07313e06897c9833cefb37dab10de52ba0920b5057d92ff14e1e1cb1390093d22a52a5b1766d2c310832ef54b341904a8895719643379591eac7c730565105513d012940edc399b66355910226120ad862a8806a14381b4e3884e89fe7b1fef924b5a3bd7e8d17797bbf3bbcdfdcd3bc8ae5fdaef27e6ff37eb77abf354ef74276ef7791f7bbf17487d829c6fad880b63d90980f45ee95edb49bebfdb24e0adba553cce7c158a73c977f726abab384a7987ee77d4f44c9648a9266cc7ec5073f0a39356ceead9853c18662fc9d9ab982aed264ce99deef6c4e371b152e754cbf33541d5179186afed930c6529e345be9c29994590395793855269bc61dc865319d7f316b369fc5f4a5234b97bbaefcc194c58e3fff6542d35e88a62350e0d79fdb86dce5c5e65ad98e4d532bd91b953b852a773fc54afccfbf4ce37a60436fb9913bdb26f4d544f44da5e8abeedd0e1235699e382c997daea6500c1f9ac9a6162abb10953d2eb67a511b953d0dd9835e2f52b5d6a4dc3aa8dce954b9fd43eb866f197393b5c3df8558d69b04df529ffbef2de3ab7567097996eda69bf05717f15784064bc6f119b15c4ed502ae5d56bf8fe419986d9bd9733d547e311a381bce5727178b76a038238fb70f2a750655ea44c749d6d55cce235b9b519aace7521fb944a7dd5fc7c1a8f4db905c0eeb7b0556ffda71fa4b143ea29751a294329b4b85f1526858abeb2359cc44356b90f7a7bf667cbaa8cb99e8a0012a7716f6b47e8d2871fc33c153adcd746e8b52c2d3f83326f5996277797106f1424344dfecf0218094a64bbcdab180b7496625374225cfc1bd92859ccf54d933f82aa3058625ef8b4a9e4b955ccbf15740157952966d3cb273132a1a232ae6a161edc1bc752d16b158301229f464a13f5bac516d425d2ea26e3e455d4def7688686d7393bbd71925be179de7c89deb2634ec87685840d1d022b4559a415047b533a92ebe09a54d10a50b91b4640f3bbec8bf29a261116a63062b25b318964593a67dee66a8cb7724d1e5ebbed6accbd71cb1b418396ddcad3261aa0562aa8460ea0243a65a22a64a29a6d88cbe99465aa17ef212d44f5ecafac92c9dc1b53dd3bb7abfefaf739cbbbcdfb5eb0cfbc2ad117fcbd00aa4e0222cdff2fb2ad6a92fc33291c6fe889ae568123548cd0a2f597af8bece44eec7165851d40651b482a2a86e198aa689477df98761665ad1d216d1721445cb3e65689999fc82495f1eb1b2f6d8869e03103d2ba3d3c3d612f7e5a7ef4cf3b2d9c9a71d720447138ee0ae33cd1c417b0a9cf1744c96e5fab53c0a9959d2b196ebaa3a20fd1c673908da110d82ae8a6110b413d2e2f184166b9c65a6c5ce482427a0a1ac095ec836d06b68836d9589b4baa0324f44a1b32c33385c60de9de98af4b49ad05396a19eba21b64e425364922d75546c9093d9985877c4dac9046ba65b2b7b20d64e41031092357d606b7046114d4fc4dca904730943e67a21e6d6a4d35bd01c33fbc0596fc4da69046b3986acf541ac9d8e027bc99a3f8034420c1fb10e64a683477d11836b09062b1b32782062f00c8ac1bd1df57cc19ec91ef948de1b1e92516fbc1f626f1dc15e1543f6fa23f6ce44c1a8ca9edeedf7d94c0d789bba980188d5f504aba6cb6d072256cfc2233929567d73cdcfa89f3e08957c36726e72b7414fd104f9821d9be148d26054fe39c8ffa4cad7c759cd9bc42148a91b08a5563454ea50c4dab9e9455b7600d39cb96188b9f308e6aa1932371c31773e72ae29e646f0d19b1231723cdeb318b614fc50ef7e9111830721062f2018dcc390c183118317a66730d834fa8cc921361306f3118317110cee6dc8e008c4e0c514838d4334e8379bfdbdeb681ede4ce06c177b7f8de6a387ac1f6e16f28c448c5f42305ed390f15188f14bd1b0428a7176182cdb4a9b6251ba3f565f17f1d8aed4d8098e46ec5e46b05bcb90dd3188ddcbd19ca80c8354ed6516ba1620c636128cd536646c2c62ec8a748c15089f9acfa72e6767a0b17188b12b09c6d61baef91a8f18bb0a053e7244ba3d1bf76033004e673e169ecbf700b2b9e560106bc2ea04c4ea2682d5b30c599d8858bd1a0d1ad1ac7670fc03b00b1db6717d1637547faac04caf872066af21983ddb90d94988d96b29661b41663b7ad7d1bc66caf3bf53fa9d9dc1ecc3a188e9eb08a6cf31647a3262fa7a8ae93a90e94ede7508d7eb34ee7bfde533266c1e86d8bc81607383219b8723366f3463b3b3771d29e62733eb931d81d8bc8960f35c4336a720366f464103cd6617ef3ac2291675b548613af31eda54c4f82d04e3e719325e8818bf9562bc0164bc6b80557fe48b9d69e7afcb320b0fa721866f23183edf90e1e988e1db2986f7870c77e3ce6a31dfe5b98233ed7be862b167d4efdff847fad9b9b122248e3b08715c60288e62248e3b29713484e2e85ea62d6667c3fb5b67fd53574c589e8158be8b60f9424396672296efa658ae0d59eee15d0772fdce103d5a3326672126ef2198bcc890c9d988c97b51279d62b2038fb5867226cdeaf01cc4dc7d0473171b3237173177bf89d176e0d77c47fd64814d3d9d87587e8060f9124396e723961fa458ce852c77146eab98cf3f2ee04389293735c4c96c7dea02c4fa4304eb971ab2be10b1fe30c5fabe90f54ec9f032b520572ea9cc6c90711162fb1182edcb0cd93e12b1fda84917a2038fbcd820dbf000bbfe210526cc2e46cc6e2698bddc90d912c4ec6314b34d21b35d447fa9a4ccb8851f9731732fe48230ff1c652912c0e38400361a0a600912c01394009a400174e54e4c9e6b968ac9c68a70a484af3acb242a5b8ad87f9260ff0a43f69721f69f3289bf3bf0a86cb017912d72fcd9113506cbd4b92d478c3f4d307ea521e32b10e3cf84c5df033dc6072699cf13ccb3186cb8d3d2c3c8e546cef00a7925300b4c8e420c3f4b307cb521c32b11c3cf9934641df9d51fae5567c38a2d07858e46ac3f4fb07e8d21ebc720d65fa058df0fb2de5138b945bcfb21d718c83a9d2bd6e4b2767d8511f3c722e6b710cc5f6bc8fc7188f917d1bc03cd7c27d17cb105b5a635791562f02582c1eb0c193c1e31f8b24998d291b7d7aaabcae5ab4716f130d51f1c9a6ea8d71310dbaf106c5f6fc8f68988ed574d06883af2965b862783793436cf90cdd588cdd708366f3064f324c4e6eb26639c1d79fbccbec8e7af0a2ce2f5d5a6d3713262fa0d82e99b0c993e0531fda64950d291374cb8d361c3fea988fdb708f66f36647f0d62ff6db31add43316db9f8466fa4cc96df9c86d87e8760fb5643b64f476cff8f62bb2d60bb13bfea4342c39c6261f68bb99b634be2e679f725d67db1b54824ef122279c25024672091bc673268d84599ce592a3c7caad51e22763db00189991ccc171f3be1d2ff2e888938d62171bc4f88e36743719c89c4f14174bfd0454ce40d4f6e205a209896e7eaf93692d904ed7ac4fe8704fbbf18b27f1662ffa3e8c34f5dc4e49eec9fb175868b1cf5dbb7a6aef06cc4f25682e55f0d593e07b1fc71f4a9db2e628a4f4edd0e15b3d5cbf8988c09ab1b10abdb08567f3364f55cc4ea27d13b285dc4c45ef0884854f74d583f0fb1fe29c1faef86ac9f8f58df6e66d89dcb68d76632e002c4f26704cb7f18b27c2162f9738ae59690e52ebc7193fbe72670bd9724439cd4288ccd729a8b9020be2004f1a7a1202e4682f8921244332888ae9cfd42be4ea1504ce2b3b9cf12deb68fe48ddb421efdf9f661d6ac5d8244f0152182bf0c45702912c1d7d1fbe75dc4d4e070310839838fb74de781ce026103a55cffe6abca2f43cc7f4330bfd390f9cb11f3df52ccd787cc7717fdf3859e99fb5d5786363d0373df88d8fd8e60f71f4376af40ec7e1f7d74bd8b981f93b59b0d3c963ab29f6ec6ec9588d91d04b3ff1a327b1562f687e8117d17315f36926b741937e1b94e79ce7b6f4254ff88628ede65f6daa6a2c79e7caed6ef70fb27e99b6dbbbb9aa2868dc7fe9465f761956b10f0cf96c0d752c06cc7dd2f51804376dc5d8714f36b14e010195f8f28fecd92e21b10c5bf5b527c23a2f80f4b8a6f4214ff6949f1cd88e2bf2c29be0551bcd392e25b11c57f5b527c1ba2f81f4b8a6fa780591bf26f96e52eda3b08e4f6cc07b8539df23cbfde5f61cc720c720e4e7e80a39d48571754f7e725b4e551207b167c23fc547bb685b18cdc5d4d3afc6c79379b9d2ddfcc7162a30c9d387f27d26556b6a52eef42c8d9b6c87723c34e50023630ec7b10708e25f0bd14305b9554210a70030c7c1fa2b8a225c5f723ed55b2d5de032814ac9c6dbfeffc41248f2a96f278880266dfecaa1a0538e4235b0f23e06a96c08f2039ef11839c1f45e6b1a7ad796c46f2a86e298fc79069d4b0348dc711f05e96c04f200dee1d83069f442ea9a6a54b7a0a99462d5bd3789a42eee0ddd68e42720b17023f8348ae634bf2b3c89aeb5a5af373c836eac5601bcf2379ec632b8f1710727d5be42d14722befb6411449cfc2c02fa2eaddd0b27abf4405bb3dbd5bf75067f705bbe3f9d284cc02dc469103dc7d7980bbaf932ec00da70605b52f2347d1d8d251bc4201b32dcab951806b615b781519d97e9646f61a026e6209fc3a1245534b51bc8194d7cc52796f22dfd3dcd6f7bc45d5e45eac26cf2cd79a9c3a4d62307f3a9bef6368e78c738af958ad7fbe425b313347e5943577041f3c5cc26908afe32d22d7f196bc8eb7719c72a213d5feb751d3d82a86a6f11d0a9c9dc2d0da036f1c057c2f0cfe3f44f9fe3150fe2ea2bc4d0c94bf87c0dbc600fe3e023f2006f00f2870b68eaf5d1477d312037f483985debbcf29b0495b364fc52a52a7989d427b4f56d99aacdaf761bc86557f3b8a7299a653ff81af34e6a5754276542027f411b2d90e31d8ec5664b31d2d6df6630a98d96c2742c1797d020a105ad04b630a00a56d4332ea1c838c3e4132ea6229a34f918cba96878cb62319758b41469f211975b794d1e748463dca43465f2019f58c41465f22f05e31807f85c07bc700fe358a77fbd8c6bbdf20e4beb6c8df22e4036d91bf43c8fd6c91bf47c8fd6d917720e401b6c83f20e481b6c83f22e441b6c83f21e4c1b6c83f23e421b6c8bf20e4a1b6c8bfa28efd30cb8efd6f88e4e1b624ff8eba3707c5d0bdf903811f1c03f89f083c3f06f0bf10f88818c077226d8eb4d5e6df68026194e504c23f88e4d1b624ff4b75c9fa7ab7ee0c677774c94639d39c398edffd88b7433626f2284d01ef20b13d1de54125ea1eb1a5106574cc3431368af114e058d0a580d9e8e138cbd1c32c0a98b9d1f196fe369b0266e63ec1d6dc134816132d659183647188a52c2a208a2759525c9102663ee8d028c021ab102b51c0cc1f4f8e025c070357a680d9a2ecc3a2000fc1c05528606645874701ee88655c9502eee4dd1e1105b83306ae86cc6d8aa5b9ed81cc6daaa5b9ed89ea74a16d9dae4e2133339a66d965af8180a75b02ef85808b2c81f72680db1fe894fb6241d4fe8df7e868e7a44ed40f6b2b59def016bc388a747a6313ac89c43ec352ecb510f04c4be0da08789625701d0a9819ca6c4b19d7a58059e43e2786c8bd1ef221736d7dc83e88ec7931905d1f81cf8f01bc0105cefa1c0b2cfb1c0d513cbad0321e6d8480175902ef8bcce3485bf3688c9017db22e7a2f6b6c4b2bddd0f195d690c46d704c96389ad3c9a22b297c640763304be2c06f0e64826cb6d65d2824266aba25644b1917d71856989e471540cf26885c057c600de1a09fb685b61ef8f908fb1456e8304726c0c02698bc83ece96ec0310d9ab6220bb1d0a708eb70c70da23e0132c81f350cfeb44cb9e570724e7d531c8b923023f2906f04ec8f64eb6b5bdcec8f39d62e9f9ba202d9e6aa9c5ae48166b6c65d10d8dd79c66395ed31d8dd79c6e395ed3038dd7acb51cafe989c66bceb01cafe985c66bd6598ed7f446f5efcc18ea5f1f544bd65bd692bec898cfb235e60351fd3bdbb2fef543823e270641f747e01b62001f80847daeadb00722b2cf8b81ec4108fcfc18c00723995c602b932188ec0b63207b2802bf2806f061482617dbca64388a992eb18c990e42c0975a021f8cdcc865966e241f69f0f218343802816f8c017c2402bf2206f05108fcca18c047a300e72acb00670c0a70365906380528c0b9da32c0198b029c6b2c039c7128c0b9d632c0198f2ce3ba182c63027279d7dbbabc89c8e66eb0b4b943d020e78d96839c9390cddd64697387225f7ab3a52f9d8cb4778badf60e43b2b8d55216872359dc66298b2350fdbbddb2fe4d4142bec356c85311c9775a925c885cc65d31b88c6914383b42e6ee2854871c21331d517d4f0c5417212dde6babc56264d1f7595af40c047cbf25f04c24e8076210f42c04fe600ce0b391161fb2d5e21c24ec872d853d17013f62093c0f09fad118043d1f816f8e017c018ac11eb38cc11652c06c87c3e3d9f63b1c1611e0edfb79b7ee58a73c5780049107f1435ffdb36ed97a8ef9deb3e97c1507fb6cdab434eb3c9ef078d88f90039705b962f3c96cb662b36e190ed3d181d6621e49a98849f1a930d274353d89a3b8c5c8453c6deb224a509d7826863a514a81336b7c364a9d08596cb00485cbcf5986cb4b11f0f396c0cb90065fb0d5e07284bcc516790585cc161bbc184518218b0d8e4276f192a55dac44b278d95616472359bc62298b635053faaa65537a2c027ecd12f838e4325e8fc165ac42e06fc4007e3c328f376dcde30464d16f595af489c821bd6de9905623e0772c814f4242fe9fad904f46c8efda229f826af77b96b5fb545409dfb7ac846b10c51f58527c1a12f287b6423e1d55ed8f62a8da6b11f8d618c0cf4032f9d85626eb90dfd866e937ce44d5fb13cbeabd1e017f6a097c1612f2765b219f8d903fb3453e07d5c2cf2d6be106e437beb0f41be7228abfb4a4f83c24e4af6c857c3e85ccd62b7c1d85e490f50a1720217f6329e40b912cbeb595c54508f93b5be48b9130beb714c625c833ef88c1335f8a6ce3074bdbb80c09fa475b415f8e04fd93a5a03722927fb625f90aa4c25f6250e19588ec5f6dc9be0a91fd5b0c646f4264ff6e4bf6d5c840feb034906b10c97fda927c2d22f92f4b92af4324efb425f97a44f2df9624df8048fec796e41b11c9ff5a927c1301dcbebf77eb163abbee1cd54e7c04967d1ca650f96b1047921f8c619f8d5a51e634d34ee93e1b9088fcd980041b196ece73c6451b1a35be9992fa0046c461bb5deaec539becf3c90b8c659d95200eb21bc8b8ca8d28d5b0b2f7e2c8531cb61f7411af3fb41eb3b91ee3281169ef16aa3232ed250801e4310110b4eb7594910dcabb159597533ee5dd86caab503ee5dd8ecaab583ee5dd81caab543ee5dd89caab5c3ee5dd85caab523ee5dd8dcaab5a3ee5dd83caab563ee5dd8bcadba37ccabb0f95b767f994773f2aaf7af994f700555e3fefb646229e39d30751f4bf57c23efa7f0851bf774cd43f8ca2c89a09cb28f21124975a31c8e5516445b5cbc78a3653e5b1c8b50e15f2e9c02e067e0cc5da75a300877deb0401d7b3047e820266ab91f789021cb26afe49045cdf12f82904dcc012f86904dcd012f81904dcc812f85904bcaf25f07308b8b125f0f30838d712f80504bc9f25f01604dcc412f84504dcd412f82504dccc12f8650a98ad296b9eb05f53f60a05cebe07dc220ad5dd30f0ab14309b036b19053864f5fd6b48cead2ce5fc3a9273eb18e4fc06357e30c8bb758b9cdd717a13fb946ffce730ee4f8d270c665cb24f13c54d4b2e5382f61f186268c38718ca830834e4f026b2a6b63158d35b282c3c2086b0f06d4479bb18287f0781b78f01fc7f482c793188e55d44798718287f8f0267eea123158a0f2e6bf7c2f8f522dbe0a0f97dc44fa718f8f90081778e01fc43ca97b21d3fff073e35d231668fda85f2a84319af513ff2614e515a6fda3561f295117302e057469055758bc1aab652e0ccaaba535570689a8ad71557bc8f11173d62e0621b72243dcbcd917c82f8e915033f9f22f0de31806f47e07d6200ff0c81f78d01fc73047e600ce05f20f07e31807f89c0fbc700fe15aac30362aec35fa34863600c91c637087c500ce0dfa2b1cac1b66395dfa18ed910cb8ed9f7481e436390c70e44f5304baa7f40540f8f81ea1f11f8413180ff84baee075b76dd7f46b6976f6b7bbfa0618c1196c318bf22598cb494c56fc8ee4659daddefc8c18e8ec1c1fe811cec98981dec9fa8a082980bfa0bd5a4b131d4a49d087c5c0ce07f53e06c77fbf828165403af0efe07513d2106aaff45e6393106f3646b8748ca0f89817217814f8a013c8b026762393406b16453e0ccd74cb6f435090a98b9ddc32cdd6e0e05ccba3187975b37a602d2c0113168a022029f12037825043e3506f0ca08bc3006f02aa84a4d8ba14a5545944f8f81f26a08bc2806f03d1078710ce07b22f019318057470a9d1983426b50e02c7c9c651b3eee851ce46c4b07b93705ccc2c73996e1634d248bb9b6b2a84520b71fe6ddbab39cddf79d917c8f9915fcc48752eff93c5e7e312fdbeebb23f3a2e8e1351c2bd5460a9e6fa9e03a48c10b6c155c9742e61f7f884272c8a6c07a08789125f03ec8ab1c198357a98fc017c700de0005482596015243e4b14a2d3d56230a9875bc96c4dcf1da17b5434b6368871a23a52e8b41a9b988f2e53150be1f92ff8a98e5df04157454cc053545e25a1983b89a21f0a363006f8eace89818aca805023f3606f096a8f538ceb6f5684521b323035745713c214706b646adc7f196adc7fe08f8044be03648c827da0ab92d12f26a4b211f80483ec996e47688e4932d496e8feac92931d4933c248f536de5d10121afb145ee4821b7f06e4f8b22e94331702724e9d36390746704be3606f02e14385b7e7d461491847df20351bd2e06aabb211339d3d644ba23e4f5b6c83d28e4c6deed5951243d0003f744923e3b0649f742e0e7c400de1b19df064be3eb83a83e3706aafb221339cfd6440e44c8e7db22f7a3909b79b7174491f4440cdc1f49fac218243d00815f1403f840647c175b1adf20047c8925f0600a981def796914e090d39b8720395f16839c8722f0cb63001f86c037c6003e1cc9fb0a4b791f84a8be3206aa0f464ee42a5b27928fc8de1403d92310f8d531808f449abcc65293a310d5d7c640f568047e5d0ce06310f8f531801720f01b62001f8bc06f8c017c1c02bf2906f0f1a86ade6c5b352750c86c30fd9628061e32983e910266a3a5b746010e192d3d04c9e2365b594c422abc3d06151e8a3cc91d969e6432a2face18a83e0c81df1503f8e108fcee18c08f40e0f7c4003e0581df1b03f854047e5f0ce08528c6bcdf32c69c86ecfb014bfb9e8ec4f1600ce22842e00fc5005e8cc01f8e017c06027f2406f099c8c73e6aeb636721fbdb6c697fb3913c1e8b411e7310d58f5b523d1709fa095b41cf43c84fda22cf47c84fd9222fa090ab78b74f2764e6343aac86c11722b29fb1257b11427ed616f94884fc9c2df26224eae76310750922fb055bb24b11f2165be425c87fbc1883ff588ac87ec996ec6508f9655be4e5c8425e89c142562069bf1a83b48f42e0afc500be1209fc755b811f8d90dfb0453e06c5666f5ac666c72249bf1583a48f43e06fc700be0ab5e8ef58b6e8c7232dfecf568b2720e4776d914f44c8efd922af46c8efdb229f84903fb0453e19217f688b7c0a42fec816f95484bcd516790d42fed816f93484bccd16f97484fc892df25a84fca92df2190879bb2df23a84fc992df29908f9735be4f508f90b5be4b310f297b6c86723e4af6c91cf41c85fdb226f40c8dfd8229f8b90bfb5453e0f217f678b7c3e42fede16f90284bcc316f94284fc832df24508f9475be48b11f24fb6c89720e49f6d912f45c8bfd8225f86907fb545be1c21ff668bbc1121ff6e8b7c0542fec316f94a84fca72df25508f92f5be44d0879a72df2d508f96f5be46b10f23fb6c8d722e47f6d91af43c84e8eed773410b26b8b7c0342ceb245be112167db22df849013b6c83723e41c5be45b1072055be45b1172455be4db1072255be4db1172655be43b1072155be43b1172555be4bb1072355be4bb11f21eb6c8f720e43d6d91ef45c8d56d91ef43c8356c91ef47c87bd9223f8090f7b6457e904266639235bdb4961ab2dbdd09ee21f6f703cfe6bb76fb7b7f2d76d83edf76ce14ef9f3c4090fdadbe339ceffb6544e94f68349311d3871037b5286efa1870c3f6429786f28290f47726785299ed1419f1f530e2ab36c5d7207e9bfab2ce00ef5189f76024e76119d7ca5c419dcfdd70eff928ef09db77ed6b8cde933dd443623bb74739d39c398e7f48a4ce1fdb17bed0617bbc0bbd774cb87c04715987e2b2af319733850ef3bd67d339d068ef97e958724de1f9696acefe7c8fbc09678f22ceea529c4d32e6ccb7cea0064d78b1d17726f6bc19c9a31e258ffca43cc67be5b0d307fc930ae6f3bffd3ac87899e1bde29f54303c9973b0b3d4f14f1af08f882ef6685dca73fb9263a947f262183ffe8907b379d1b39da31cf6cd2aff8b637170fd18e27a1f8aebb5e5c8f558feb4c8435cc23962b8a977067957692145ce10ee07e7f312c23c36f68c980b666b4bbcbf4b94d2c7f1f328e2f39d8f23a9d747be1371e8cb6ea15763a678f432abf1ed84d59ae892096b1b32f79d4f202e1b505c1697b36d957a3e869d133253d80e2bdaaf57d33877d1a515b7e77912c9a92125a7f1bbad0e864bc85e0e4f213934a2e4d0566b913a29df65f4aff91e058c9e604b3b909ff942f193f20f26543f8da8de374a5d4e95a9d6e4a1fc249942a1c971ce2c5ef7a2467a389acdbc2e3f83b86c4c71796839dae850ebba8c6bb389449e4512c9a52472b085de47797fa77cfbeeb482e710cffb513c1f1889e7fe9ede8b788b454735e6fc65568f9f47bc35a1785bf77f24121acb1116f2fc26b1d05891ead796dd1b0dbd8024df94927cff4856952e16da95b5660be2af19c5df9088d1de70de1bfabf15f1bd88386d4e713aac4c0b2e4f7b5bc879639a2849dae662ef35c6f322879dd836c4a39dd583a24084e7e70aef69a6f2d8daed4b88db16c86ee91eadda020535cc64318f9f75375bc42be911e2d3e6cb88bf96147f03217fecccbc022fe332ce51218fc47c3e4b444cc6d0977bff2fe1ed1fe6735c997cb63a7c05f1d88ae2117fa024485930e25cc6a92af55af3785aaa5711cdad299a3b69fe6420af5d7e7b23ed8d7d013bd822441f1f4dbd65c2c36b8887fd51ac6f2ef759bc659de95de38af55f4754b7413502c94aade78378fbcffa2a740414d40c7e128f66de403cb6a5783c28b4d6f7f7a85924fc524172e46a08cf5daa443cd20f1492f9c3e561ef03de441c1f4071dc13725cb6f50ada6329efad2cf0689dc1c74be7877a3a3daf09476f218eda511c750ba95d3a15418e18af255aec4e23a99f6fea64c4cbdb8897f6142ff8837c410a827c50915366b5e71d446d1e456dd9d99e54a9b6b33df1d691ff21be3a9859d4085eab6779f6e4733582a787493f2587b874f42ee2a5a32d2f855e5bb46b79790ff1d2295adf826e91c67ad9a7097f35dd413df35ddb2ebd8f38ed1c659c0d719aefb0be79091c63cb8cc7cc63ee0f10975da28c2a95ed2b0e117ebb90f01d5147b8a38e7dab78263c7f8878ee4af13c18d6c7fe3cd5e775a136f62f4764663a722ed26e3420131ffa11e2b31bc5e7704db7419b321d0908be1dfe2c2e5bde8af8ed8e6aacb95e257551351ace6b265afd1871d983e2b26f64ad3259b051ed157c8e7d66c8bc6f79e96f1be2ac27c559738d333d7e49ad7428e6ba8daf3ffc09a2b3176a03718f651c9f55a023b068ab874cb14d38fd1471dadb9cd3b1dc571439fe8a8b7839a5b14d38dd8e38ed83c6d6d28f09a76beb77e598f06788bfbe147f1d35fed45658d7dd50275d3f219ef9afcf110707521c8c85b688463fa911fc28a39fbb7284f40b24837e517a7b615a34ebedc5bd22e14bc4577f8aaf5e50b7d45aaddd3526f215e26900c5d3819027342632843f2f4a1365970f6f5f23de0652bcb580bca1112cdfa7947dea8f1d9b50fa0da274108a96702b836613d818e262fe4ed85cc2582d976d9df916713698e2ac770675c6f709fd458f7c294177fcd1ed7788ab21686c34ddcc5b26ed553a4c138ebe471c0da538d2c7f0e9c8224a0f6c5746173b108fc3a24417aac7b28d2e321d13f80171303cca688f494c613fee91b99e7e445c1e643612997e9cbe90cf8f499f5d1e6dd04f889783295e5a47f014eadc245ead90a985fd8ce8cd479e2d6afcca56e89438fe57e9a2c7adf6befa17c4d1088aa3bc346d2b5a69918adcfc99d7b8f4f12ba27ea459fb194ebdbee2205db466ab93df1057a328ae0e08e54a1d3f08ea82cd1d8f8a75ece77744f7688aee1e86749718d11d871efe40fc8ca1f81916a9d5d7c713feefacd3fc13715b606e75ea584ed0ea962621e29ae3f90bd13d96a2bbb3136d65cb2067219fcf4a371ba53f53df33e16227e2621cc545078d0b39ab28e95fcc57ab4f77fc55c16134c645ffdf88fef151a247a4056ce7613c643622fc0fe260026a4be25a87e8c7c7d1d7219a70f52fe26a22c555bbc81196accf8339cf322e8e937276cc0449f921a835099fd5647b43477a99e779ff7cafab525efeeb5c5dc4cf2434ee17be5385ad004bcdb3fbb33e6547e275ad44c331e12b0bf17528c5d790b47cb17a3f97d7a074eb5ac37416b50c134eb311a793294e275b6850c63ab21c138e4c72dac748092493c328990c2e27ede3919fb8749f83f83c9ce2736c8c7c9adb5079c9a00292c111940c7aa5954170af9dbfa7c7ccd2ededb722e2690ac5d3688b3a3dd3aa4e978f462b21eea752dcb737b66ac973798cc55446b417c64b7b7944cb5510edd328dafb1bd624cad276adb7ac8af89b4ef137c84237365ed036f2a986b82ca2b8ec66a8c5028eb890f78afaa76df36cfde01e889762f3b19bb2bd7f19cf44ebfdc7c1cf9e889f19a83797d9fa7cb6c68a3a5924fa3c9d0957d5115733d158074d4781283bdd1cc0e2b41c1564c0450dc4c52c8a8bd669b988ba732ad311a6bd10bdb3518c9b7e1c7004ef8932df23e33dbc56cf7c1430b31190bd119f73283ebb44e233b522d15fb5cf762747f76499f15113f13197e2a323b4af74b563ba6763b3f9384edce743d4421ccca33818104913d1d6e7ef2a5bab8d389c8f3834d3915c7d2235146e73e531b7590771b800d5a64cd743152aab3bd87a8f791ebdf18d5bd5457c2ca4f81806f950f752752446aa32db4111a52c136eeb216e1751dc8ecab8854ded5e5cc0fdc842ded61639a39d4c76c7c51303ee83783fd22c668a1a5da8bca7f641c5add1fa88abc51457d1f60276d43809dfc165426d03446dc9aed0c16c038b33e1aa21e2aa94e24adfc582f66199c450bb76df5923c4ef92f2d122f31847797ffbe7bcb0be647968715fc4d5d2f86a527cbb1c1b236a9799b55b513d79e63a88c377e7226e9753dcee6fd8a70a3b152153fdec87285e41511cf55c84742743ed5a3fd004f17814c563d95389691ea3f4a9ca839ba6889b95a6dcc471c6328566c24d33c4cdd11437e3618dc127f1d0eb7bffafed47698ee4700c25873e500e6ce42f9f6b61215fe5309853c37a2e6547cd16f168778653cc35c7e2de89b18fdab4407c1d4bf1353462dd8b76cae2aede01de12f17a1c1af1885a33cdd76e67a6ad568883551407fa8ed8b2ab3de2d8c31ecf3c556bc4d9f11467f86c1c6a1c20ce3d98e1f8261cef8f383ec12cfa8d76eec7ae1ab16a83b83a91e26ab213beb37920f72765a35df5b48f285c9ae68f77d6a82d92c96a4a262343db0e6a7d5cdc7b8cc3cb30e1fc00c4f94914e7faea34640d6c9e33138bb0d7643bc4cfc9143f781f00ebfd4cf332493f9ccfd771eb14c6bd8ba13da2fe146487e1adc75831a260d276a84f52ef8fe26b0cfdbe48f859ab99d9611ee2fc548a733cca4ceb6d30a789aa71716bb003e2630dc507ded544f33191f7971624f556bebc7444bc9c46f1321af282461ce4c9f499edcf2aef5d139d10f7a753dc778d50174b39a76c3df544ce21d547288f15bb9d11276ba38d50c41f93869d05965974da05f178066ac74cbec7129c8b5b227a7bcc62f3b93666f2de31eb15c6c54f57c4cfba283da1f14aab6adb1352b14c38e88638383333ab8b3a2e96c9a9cf996aa93be2713dea13f916369c7bb2526e3b8c13bf1f2ed7f753cfccfa3be5b772a707e2f82c8a63fd6c9ab25a3d887be64cf518bf1fe989f83b1bf5f9c2e261a64bb67e6cb927efb273d928220e6bc7d3d5c58ade3fd7adeafd3998e764a3aba3858c59cbd39e4d4af1b8d7b7c476c993efdb05cebe4fa5b3d2e77b14b1b6679c23bf32d1d6c94d83708e475d852cc7ff69e9326133636447dcba3334b9f96fcee3c8a9351d255efa50ee67fdaf404df7eee5dac2a99eae267bffd271e1cb2bf83502964a71979ea7c3bd7f2c17fb26c074de0ab2e8789a673115054712cb9334abeeffbfe37403d36a5ba1d5acf6ec10467e327826d6949e8a735969d9b40dd52d2359b5ce53b4fb0023850774f7e4006cca7899779dce9b74a60299216d796a3da5ca3b80038c130069e1d4869682db871b99df002e76fcedb77755615f94cdca637a38af3c8555dbbb61bb95fd28742e8ffed857efa4950e1433d76c7573d17f4274fddaa644777e798aae0117dd226e5bf93cc3e2e4b4d7428f20d69a0c13625c281cb61f4cfe17c478c99094182f284f31eeeddd4ce136e89f3181be0cf85f10dafb3929a15d589e42db43b1bd81bc9353aa58dd7f41545f0c4e89eaa2f2145575ef8679b185dcb6522346ff2d71f51b9612d7c5e5dd7afa5dc941dc772d129de6ff52ebc936ec48615d529ec2aa255acfa09bffefb69d1bbba5047769790aae86c37a382549df25bb1fac0958ca85f6dfb0b44f2ba7047659793b7c592d53221aef755767ff476c6b9c22aacbcbdbb682c7122fe155b3c0fb2d15c32eff05813ddb3025b08de52db0f11e5691108e6a61d297fd170436ac514a605794a7c06a3a0e1fc0c9e3c37129c1059b01c6c27f416c6f1c9012db95e529b6ca5c6c2c961f2ddac5251ef27f41440fd54c89e8aaf2ee0cf95da1d98edcdce8777f068aa55c33ff33c14435a53a6e2aef903515e1ff37bb433729dda1abcb5358159381c47f29a2afa1040fd794a778ea38e18387a3f858672afdbf20bcb50352c2bbb6bcbb43b2faa50eb266b1587f3e34fe5f135c7ebf94e0ae2befe85e3d4f211848fc174435ae474a54d797f780b58cbd5865640be5e67122d8529affafbdfb808fa278fb00be8160a1882845ba08c259492e97bb44452584262048b56348429184601210ecbdf7de7befbdf7de7befbdf7de7d67f6eeb8df25b990f8f737fb3cf7aa1f89247b9bcb37b3bb33cf3cf34c99794ba3cc9ff1cfe9784e6e0d9d8bcbd89d8bd473329ea5539f78799db2e7e5a4d129b4cb99685dbc54a45537d9114076858b39251c4796f883f0fa4457565b5c2cb2498aee4a765736d9dab486aaf78050f555ecfbd928ff92b42b84531d8ed48cf90235686b744ca15dcd0ef6245b587a3743572beb0a77b36b9860e617b32c43b0caefdcd6a91a3ad97f9250d732a1fab4e849393ef14058e0774234cd88e7c27ded3af618b4f92eaead9553ee9527de9806bc073aa7f0ae670fa5927849aed4a341035508727f6e607736ecdb9be7d5272a9cc7f7f78867b1d5aac03a05024337b2c701a9c153a67c1f0d648320b3e7a620ee63c9cb7292dfdae62c7b631af02e81fbd8cd4cbc5e2d7a9a0ef76ccaa51d5a697a923e027db75bf8b9653559915b760de496ddcaeef0dacb35be25824d37af307fc617676880ba05fa69b7b91a4a697e20ec040f84dbd92d0be7cbed82b31aaf5e4d6763a78129a83bd81329c999f21aff345354dfbbaae0de75271b6e868f634342f893375e68aa01aeb46b0aee2e5783f74cf7b2866b043475395e817bdcdd4cc895bcf838a1d2478a3f433500ad3a2e05740f3b0121d927b3fd7f1d19405dfd0b71c5760d4e3eaad1c94778ff6c1958eb4c332f58b3e9ee23bd25de42ffb3f67c15feb96101db787388b8777e2f2e400b351b750d2d37493dd4aa2768a8c5e384e491cb5fad126a22d126b49c2cded0722332a116254e879613048b7f9fe6b25c422d9e5b09b57a949ff91599e29ba1564efa8732641a869ab8f7845ad56508b528b938d4e234be508b726f43cd769c43ad5cc3176a45fa6aa8552b1c42cbc96309b5726638d4aa84a250ab73b742cbcd1c0c2d67a155a88561c1508bc68aa1ff614961e87feac1855a342d186a710649a8856913a17f1ce60afd4fd34da116ac0a0b2d77323ed46ca824d4645730b58e1f1fcaa9f5f779761dff7dffcf97d8e7d925f6f75b84db73e308f17ee903cc7e697bf3970ab82f6598e3edd3e8fb4c4e6cad31cf3f3cd90b6dea3bae9cd64f5db1253fc43fe9abdacf24bbf20fb20360f64152e015fa1fe3c52816988317fa4dbeacf128fbdfe32b66f17d097c0fb1c7dce96c2dadc71de6b1467349ac9fb54db13ecc645d2bc15a650eb2a4f5d05d6baef8e2d4b4e3f278c4911c127107207e8449bc46132d174fd8b06a5b91f931689c61d68d604e6e8af351499cc52a397705cec72471e6abe4fcaa4d8af371499c61959c7f01e71392380b547216c0a3e849499c11959cf380f329499c852a398f05cea725714655725e029ccf48e28ca9e4dc003a4acfba18bf474c8fd2f9f8bd84c5b74a4e8aef39265fbf265a634bf709b76d9346db963586bf012ef4e75db44cdb3577de327923202fc5f7828bfbe49c8c774a7cfb764019e571766471ee0117fa8b92388b5472ee0c9c2f49e22c54c93918385f96c41951c9b93270be228933a692730270be2a8933aa92330a9caf49e2cc57c9791474945e97c459a092f35de07c4312675825e735c0f92693b387d77cb8237db3ce3073ceb20b0b73450876bc2509335f21e64a80f9b6244c62c2020d7365c07c47122631a649c3ec0098ef4ac28c28c4ec0898ef49c22c5488d90930df978449ec1ad130d704cc0f246112a3ed34cc8180f9a124cc2285988300f32317552f3261a68fce8977cc555894ebc12cd0c752280b54529e0f949f48a1a43ec769941381f2532994852a2937827be5675228232a297380f27329943195943b00e5175228a32a292700e59752288b5452ee05945fb10bd0c55362f283586e455bad76354c9d7dcd6e8b8bcc1bc4c5c7c92fdab7bdd05f606a9796579a13342a4cfdef518e62510ef65294df30290778e94bac167b7627ea0af38c6e6e81d514ff64768d65addf8e79095c3924e029d0c7fc563a3071368806bc11007fe722c1302f711f8defe66e3fe3e05e4a7b180d857be9f72e96ae669ee8c598d170afd6275dcabdec5765b5ca17e1befa83cbcbde66b197fb152d6abd19fea55d6ffe96df6c784ee324f02f70d9ffe8a613150922b378280b300f56affde422c3c31eb2c03f4dc3b6983a5d3cfb881879a7f5498f04ce9f2571c654729e0b9cbf48e28ca8e4ac04ce5f257116aae45c0a9cbf49e2a4ce5ad2383703cedf257116a8e4dc0a38ff90c499a792b32f70fe2989335f25e7bac0f91793737d2f7d6454e33557a7315390a4a92389e3a5212cf6191074fe9bbf81423c4c62cb65a6eacb390a95d05aee215e8ad05b21c029908637027d9497c14d20874939d06b181e89573cb4a546c7264e3ac2ab49f8649e69225ef2b4d0deef102269c3446e5c3eadda9c194378995aafa3301f2d88b225dc55db32893b2788a3591481da1aeea7b94cbcb5bda6a7460a9a9d1a696a828f7a23a04df215c38da01d131a63a5795934e1bc123cae566002b6bcbe27561d8f8ffc69ac93db9258d780bbe78a2eee9e455974f7dc11ee9e2b31f1ba7acd0f4b933f29f5093e8c3551b70fcc7faecc64ecb11cc6f44e3db5e202ed3eb90960b69784a93150b22960769084495cff46c3dc08303b4ac2242630d2303706cc4e9230899d201a6677c05c45122671cd300db318303b4bc2240e1b6998ab02e6aa923035463cbb0066174998c4959934cc1ac05c4d1266b142cc8580b97ab0d31ada93125f8138515726657b9fd26ece94dccd2efe521a19adc0e9a65e8aac9b9bd8649e9f0eeb380e449be5390d2edfee4cc055bcd4c4ee22ff20ed13baf742dbebe122fe98a273361b4e8b3fae0eed6e8d201f1be99170e26363302b06f9103c367af2dba16d7363138f0ebb71266e44aaef01d21b2ee25e2efa82e9b3dcd99532b01466647abb781ae7f97741fbed679bc39c2da7a2dd15b780d6d8870f6877814edf7b15f7c6ade3016ecb02cc03c0be4cc0d44e1601e454f08a47c053b91f7b56d09ec0ae369b661cc6fbbb38d7fb6d30feb6ed92d2c59eddf556df406e056885fd5db4c2681073d3b456b805b4c2355d0dea0200a4756ace07c0012eda5fbccb922dedef33b87cd772c1579455976f2db4be812e86762d0baf6a9c4319052d71908b96685780654f4bbc04f8d666f2f5f45abb012c35d84f7bb0dc0403bcc1d24089535134d01b017488345066c11c16e855001a9206ca2c90c302bd1240d79106aa71b3cd6b00745d69a0c414281ae8d500ba9e345062821e0df43a005d5f1a28317d94067a2d806e200d9498dc4c03bd01403794064a4cbda7815e0fa04399a04d6d619cdd4be7df84e9d93c26ed865efa0ca37d03adab5630b9995710070331167d6f68d5f94cfade0de867f973e2761aad3aebb2d4de86f61c0e36bca79df2252f45591064124ca9676b18cc4a501247550fb01683de018b9423ec3c0e2ce83cde8bcf9fe3cc3996c525cea26fc66a976b41bb2c646226abbdd88ccaeac4372f332fad549f1c381508a36ee6300b82a8d24e4b85f9006691624cc0d5bdf45ca21af3b2e49b70d40a690f98dba01516b9a83c90ec0035bc98b36b5aee3e78d814cb28e8303dd175b7a78aefb842638de6b21e3bd05ddf88c99a2c9597cac5b4a5c6b2ad77f90674d4376672f66dc0392f71a2e401d976f917c2e5bf898b76dad2e85391cad853355cf6c3247116abe4dc17383795c499af92f35bb88b6e268993ba5f2f8d730db8776e2e89b340256709700e97c4a9731a6409709648e22c54c9792a708e90c41955c9f92570964ae28ca9e48c414769a4eb39cfe9c663843951a937cebce9527ffd64d9b28f53cdc9e69b97c69ff334dab6ac91fcd5d05247f12b19ec627efe4affbf64349e463690d51aede2da24d968376b8602a863400b1787215c3c26c859c9d45b8f6fb240a3a465cdbf062d71ac14ca0295949bc3e0710b2994619594f7c2053e4e0a65a14aca9da1558e9742495d6e40a39c0e9413a450c654521e07945b4aa18caaa4dc0b2827ca989f8c6f8950bd6c429838ef63cb485358578351cd2417b562328dbf1b56ef27266cd1aa169d08985b49c2248eb76998c703e6644998c4bb270df350c09c2209536371b2830173aa9b5a0ad914d69809a39e6941b6c5f474186a5be465ae435b9c2e09937897a461be0b98332461129fdf34ccf701736b4998c49e250df303c0dc46122671e92a0df343c0dc5612267161350df323c0dc4e122671fa9686f931606e2f0993987a4dc3fc0430779084492cea43c3fc1430779484492c39c5aba5999bc29c19e41ac9f4895d622f9316161e04ed72272994052a290f07ca322994619594a380729614ca4295940570af2c9742492d2a45a3fc165a658514ca984aca6da055564aa18caaa41c0394b3a55016a9a49c0794735c4c4ce407b1a73d6d62a2c24bf1cd6567f8c63335eccb6cd6b91dcdd4f2c87ab3c83a00d9bc6077cac315b81a371d7c12125c766657d7a833e7aa329fa8f3e6420acb28cf26b9d473db627f166027688bf39980bdbc864bed2d5b3c2091b94d6a5c157e2ff418ab5c245dcdc97881e3db1f6e4e631f324bb9acc56d588b9e6006bcda4d219d7056edf0f828002e705106a265c9807689d31c17f53522acd4961de182af910a4b4c2da0c1ee04b00ba5c212c73c34d8108c7976910a4b4c39a0c1ae0fb0b5526189e90734d80d01b6cec5283d1644113dda12e7e9f0ecaf97b339bbc649dd37e0a1b4c8c5a46ecbbaf7d4f17b4716e67c2f85b9581226b165d230e702e6ae923089295a34cc9980b9441226f1e94dc3dc1e30974ac224a668d1302b0173374998c4e4411ae62cc0dc5d122671bc4ec3dc1230f79084498c2ad130c701e69e923089e3721ae63680b997244c62f48886391d30f76662aee5359c33aa3667c6898c4c3347780c919836abbe2d843bf67111ee280e22dc41db6a696f0877ecebe2728f2726d8d3345f204fe3c69fbbc3e5be9f244c8ddbd2ee0998fbcba8c8e170a9fe64d6ae3f3de07e79808b128ef114aef8c7d1e60bf5de182f5e71d0be74a969ab4bfd1fc3eefdb3c43fb2d63f4adfa3685db8971ee8e2515468de5ef6ccbaf702be83987c5d9773f74cfea4d40ed130d6fccf7ec078b08b9da8ec855ded65d34e5463e1d1734890cf713c1d7973051ae66a907878a8244c62449386b93a601e260993186ba761ae0a98874bc224ce02d130bb00e611923089cf701ae62a8079a4244c62449386d919308f9284a93165bb3d601e2d09933816a7617602cc63246112733a68985d01f35849981a570b7503cce35c2d2128721fcc2866013e07a3f0e3dd00e6675534e84a003c8109d8d36bb815672a1689277694594403ed0c81df13a5816a2c195e06e9ad27490325f62d69a09b00e8c9d24089231f1a6835809e220d5463058439007aaa9b0a08c5ee9fe94fb3f8cef4527ca7b9e91445bc5816f52a2f826ef9e9ae7a9501d4e0a025155c0cbdca339880766fba45e60dc63331e67bd53edafc6507d4299cdf0ec1e57b6690dbcda48fb03546cbf701cab35cdd0923ee2f641a603edc09cf76f1240e07c147ebc85c00edef1c37ed6fa639b0c638d49ac3f5a7081c0480e7ba01cc0b22f194d602cf8627f17952f62ea3d6fba551de0994e74ba12c504939191e2b1748a10caba4dc04282f944259a8927237a0bc480a654425e56ca0bc580a654c25e57940798914caa84acaa380f25226e51a5e6b2b65685cc3b8083a449749e22c52c959069c974be22c54c9391038af90c41951c9d91638af94c41953c9391a38af92c41955c999079c574be2a46e5448e35ceaa538af91c459a092f359e0bc5612675825e7d9c0791d3bdfc28e8526993fed49a67895fecbcbfcc377331fad8a3d62b2ffd61699cf1357d45ec402ad05d0eb65ac019feec5d77fdb53915301a3b924d6df208de50626ebba5ee3bca08546a3dedf0ba0d27cae2223b4fdc1c636793c31b76d14ab25af0ce437b2130f66fa0fa4ecd9396512dc066e62e2f56ef16d20bd140431e6442b047134b4c89b25a21217a1d0500f00d45b24a212173dd350f707d45b25a21297e5d3501703ea6d125189695d34d445807abb4454626f9586ba35a0de2111953854a5a1f605d43b25a2129707d050fb00ea5d125135162cf300f56e89a8c4e1280df56f9870bec7451538449d6e3c469813957ae3cc9b2ef5a35565cb3e4ef5f3e52b3d72ddc2b6ace0ca55d05eef95921691cfeca3d2d2222e83c993fba45016a8a41c0f17fcfd5228c32a29a340f98014ca429594f540f9a014ca884aca9d80f22129943195946700e5c35228a32a290f01ca475c74de93334de96b8df0d47862a5db2603eaa32e76a2ced4792ff1ec16df9589cf4df34f43edb4f7638d87ce844efb636e364d0c67d104dd14e8a83fee66138600f878fb0600df132ef8a2415445e0956b06be275d6431657a5ea73f5aec985b63f1d1fde1f1f29424ce984ace9381f369499c11959cdb01e73392380b5572d600e7b39238c32a390b81f339499c052a394703e7f39238f35472ae019c2f48e2cc57c9b91670bee8621c9e0c6ed478b3cdbf76e4dd5cc4486309c82a1887bfe462245414c44888360e9f0723a1975d442e33ade648bfc0356e5b73135cdcafb829f518cda231f9a95e8aef55498f1a6a81001ae7b1d01a5f93c4492d5d41e3bc00385f97c4492daa42e39c079c6f48e2a496fba171ee099c6f4ae2a416a2a2718e00ceb72471524ba4d138a701e7db9238f35472f607ce772471526b21d238d707ce775d7026c7e4c93367d778fc7ee07ccfc528a820885d80c23924be6fbc14dffb72f6a4a26603d32eed1b00f30349981a3792bd1f303f9484a97123d9ab00f32349981a4be35f0d981f4bc2d438457105607e220953e346b25702e6a792303526b15e06989f49c2d4b891ece580f9b9244c8d1bc93e00985f48c2d4381e7f1030bf74b34f464110b58f6880efc094ee572e0a47e5a505339cecd2420b5f1c0cadefeb60e7c3e3a7aaf2518903c62e2cca972133e31b26e59a4d50665e7432c97cbdcc7c3b5bff70b87907f3b881b61cd60294eb20d0f6ad8c4a870d4b4768ac1db36e6e8af53b266ba704abfdc6b3d302c2f3ccdba1c1b5635dee1edc39bf0ff2cee9ac7cd9605610784db873fec07e82db67f50cbf9246b93737f166edbd71b15f1b56df63a70bb4c31f5df51f03d8f1949612f83af41f7f7231835318041fad07d919f87e76c117096297bf21b4c708f0fdc2e46b6ffe620f6e582d9846369745b611dcf17e65926de0359cc1ae36671e6e0eaff5bbd4ad2dcc8caf2476c167b0e03787bee26fc1d4c49a66de8e8d05253f96f80dadcc3cbd6d35775bcf805a18af378b7637e802fdcea45dbb419bae5dd6736cba2d4f4e7c7daadf726d106eb67ff26a6e1b8eb1a07f04e83ff8b1cb45e64b63cc7ff634f6d0a5a6c5da9b42bddf7a6d25b73989a00771bff31216663edc89ff747d4368babd36d54e8993bcb47ec1aad04eff729357949f45bdd227a065feed6654140ea25f4a8baa3f05fd52fb5d6880831a3c90669b8396982f54987e8c8d0cd59be7fb747f6cbec86b5ca90883c6c4c7116df4de0fba54394ce655bce6c26fc4874f7b165d1bb8c4db30e93afa74f6521e6b0e1c630eb49df9f8cb7919972cb65ec0d696c936a0c1853d2f71a2d63cb989a906b4277717b8a473a50313ef9934e0afa06bd48e09dcbf058fa66c7b20fd0db82b30719757da317dbb3b22256db3bb9170a75d9149b992e7f917b6fdc9cb12034d1a577716d7cac0b51293cb9ea0d4fc8f8d19d9ea97e313e3f36c1a990f04cc959998c9553e9966274bcc4b6b7c46db426d3909e2339dd6699a06cff4f692388b5572d6036707499cd4e4561ae717901ad35112675825e7cfc0d9491267814ace75a047b98a24ce884ace99c0d9591267a14acec3807355499c51959c17006717499c31959c43a0a3b41a9333be3b40f3b3954da53410c746b434069b4996445ddd45fce89fcd5a5297b3d082738fc00da0ab645ce2c22b1aeec380db4d322e71f12a0d770bc0ed2e199798df44c31d0bb83d24e36a9c711a0ab86b48c6d538dbb421e0f6948c4b5cf941c37d08707b49c6259603a2e13e08b8bd25e36acccf7b0070fb48c6252e4aa4e1de0fb87d99b8ffdbe6cbc4f159db5c12ed4d40db8f49dbd54bad96b78913361493fc629de768dd3c6dd1d81d5e8ab1bf8b38d79c8c91aef4448962e6054f4b95580cd9a66b4ae22c52c959099c03247116aae41c049c6b49e28ca8e45c0138074ae28ca9e41c079c8324714655724680736d499cd4ae3c8d730fe8280d96c459a092f375e01c228933ac92f31ce00c313953cbc46ca02e7b96895d0777cb755ca48b676a8de9774a622c94b664310c23f375a55016a8a4bc0b28d79342195649590e94eb4ba12c5449392c3745b98114ca884aca9e40b9a114ca984aca994039540a655425e524a0cc6352a62a8915bbef4bd2f8d682be643e7b41b7651a6e5e608b00da03c77b765d7cbdc2c9323bd192640b33d97a7ae9cb61ab1264d9b604f63d58ff51e06a5018c9a241e1557021479880431ab4c85dfc1a21f13a21cd4fe3967a76eda735b399cd969a5c942d8735a17b0574d00b5d4484cabd96eea0a571a3887de1e28f4ae2a42e60a0719e089c31499cd4c55f34ce6d80b348122775f1178db31a388b25715217ced23823c0b991244eeac2591ae748e0dc5812679e4ace1ec0b989244e9d3b6a0d00ce6141c68dd239356e9b7715506ecaa45cd34b1f2fd579f19ac9e55ee3ca8aa9133b2a5b4dcbd59c0523a4cd5c84e5a2418ce6697cc36134bf3993af9717afb3985ec86abc7f686d628c3ec17caec2af066a4f5ee67f2b7d91cea897221dce24c52dcbb225ba341ef04a9878f65b5778a93a61c4b5ee3d5958ed016b848b7b5f5156ddfb2ae0de57ea26141cf127c01c03d20a580c85aecd48979313957ea7c51e9e799691d899a13d3ace80cecc2817ebce9a8aade38971fb31473dc5a759b877406b1dcd5f1cd5b0ab33c6b31b37c62bd7ccf73f5f6b3eea6ba3ebc243678c8b874e20f74c1adf1fc03796c9d7c36b4da022ca5c044deb2d7e054ff02d246112135c68985f03e6384998c4dc731ae6bb80395e122671393e0df333c09c20099358ac8786f932606e2909536370f76dc09c280993d841a761be08989324616a9cc1790930b79284492ccd47c3fc0630274bc2241629a1617e0b9853829d5bc46456e2b39c96ccfa3a8434a6ba8960e69937983d21e033a12d4e733157934dcb4377f05278d383bc90314a49bd9007e790285f800b79868b7618c0d2125a3b2c8776b8b58b886438887b208def7ce0dbc6d5432480396bda43e45478886ccb045c7d1960e3aa6b8e6aaed15ae17dd00ab793f3302176b0690f933d6016717b26e5c02628ffbfacccb9079077e0df35ede60d0de70e2779f1fd7eedbe95faee9aebc105bf2313b09b974a931a6d3e516fda67953f195b9776f7acf5bfa6efce590a9033999083bcf4a48159b07d48a6b2b5a3132f4ebfab12036ac52ce64970c1efc464ce5cb6769a793b163bf9b1c41c3ed7bc6cb17f3fb5b9be54dade2cda0760f453e666697d348b520afa41ff73968bae53cba2931a27c76ae05e5aee22a32d532fb4f1de9561665f949622785e6e0ab4421a28712a82067a2e80564a03d5b80bdb69003a5b1a28716444033d1540e74803252619d040cf00d0b9d240894f791ae8e9003a4f1a2831418b067a1680ee2c0d94983e48033d1340e74b032526b7d240cf01d02a69a0c4d46b1ae8d9005aed3a1cd2f22d92346ea7f83e8443163069fbb482b6d25b623ebbc87f93d488fd90b6ac8c3860ade147991a6fb7ac3b5ebfa197e25be822481733e3f3ec9924de168274bb30f97a2fe7019469491ff14e495bd2f7085cd2b5125135ae93bc1350eb24a212a34c34d47b00b53ed818bdf6a4d7c3e04eba28c84c91527fd26d568292d82a1f607589768139cdc52e9ee9c5413cd369b345c7424bdcd54de65c411019c4b44ed1c700b8840998acdad6d2517991cac9b65d604cbe541267b14ace03807337499cf92a397f802ed0ee923875ceacaf05cfee3d247116a8e49c0e9c7b4ae28ca8e43c1038f792c459a892f31ce0dc5b122775092a8d737578b2ef238933a6927333e0dcd7c530329051d02816dfd75e8a6f3f19f33dd3bd78d8cd9eaa801bc7cc630537de82fee6fe2e16ed67bac8f17433b96987b450c7e9f0003a4012a6c60a086703e681923035d6803b04300f9284a9b106dc098079b0244c8d35e0f604cc4324616aac01b717601e2a0953e332979d01f33049981a6bc0cd07ccc325616aac015709984748c2d458036e36601ec9c41ce0a5af0c9eed873496f887daff1be1cf94dbb79f5df5daff00e0a398c0c97aedcb1fb937bde09a785fa52db8fe09708f968c4bec01d070bf07dc6324e36a2c15f02ce01e2b199778cfa5e1ce00dce324e312475934dc6e10c93f5e322e311e40c35d0d704f9017e70f73efb6d15c12eb3b704338d1056bb297bbc83f30bde455895f58a87259c196f811c4fb6c3fd6f4c960603d89c9ba560356db1ae72ccb506ebaddda1f686ada71c4961bc921116f0cc4274b9a862e52b968763edc5f4f91c459ac927377e03c551267be4aceaf613afa34499c3a57c8b7857be7e992380b54724681f30c499c11959cb5c079a624ce42959cc701e7599238a99b93d1382f03ceb32571c65472e64147e91c2667df2638338f8fa6f827b17b5cd77287a061d6f86801b4d3735dadaf0b60876b5acb7c3f2705789eeb222dcd5702b7a3f7f9e6a50bb8c1bcb6aca8d3b5d036cf0f724137cea1e63327fa68b3a847432bbd400a65814aca5130c8bc500a2535ad8746f939b4ca8ba45016aaa45c00adf2622994119594db02e5255228632a294f02ca4ba55052b7c1a551ee07949705599225bd3344ec57d22843d0afbc5c0a2535a649a33c1728af9042498db6d3282700e5955228a9b14c1a6514a2455749a1a446d969947f41abbc5a0a25358649a3dc1e5ae5355228a9d1751ae578a0bc560a2535a38346b91b505ec7a41ce4a5e72095f951f56a3f5659e3c7cf9b8eb30f6f741c31cede9dc5bc12dc47af771167b75bf1d98909bb7159b9e76cf352da066645102bbac145018c98bf076cb694019c047c37bae02b0e828fb6cc6b29f0dd24e58143ad51477be00c873be1cd5228a905d56894af02e52d5228a9f5426894754079ab144a6a21351a6509f4286f9342492df147a3ec0f94b74ba1a41650a3519603e51d5228a9a5fd68949381f2ce2067759cadb41ccc4abffad04b51dee56261d59c8ced12772d70b4bfc6aa2cd6e780f56e26eb6ae62f8bcc1b2cf55223eda9e68bf19a0cf5e62bf1b64b23dc9875910f00c27b5c24b066bac8f17476cc438d58d2069007c3f4edbd9238a9b1741ae7e9c0799f244eea2c0f8d732670de2f89933aff48e3ac03ce072471ea2cf2570c9c0f4ae2a4e66cd038c701e7439238f35472f602ce8725715293b3689c6b03e7236e16a484fdfadbd93255f1384c553cea62a6c73ea59df3d176113cc54bf13d16649c28fd72d65868f212b8941f6752e679e9a905557ee8c2d643acf746fa23717bd802ff8e997931dff8665e45e47f8e1504e90a61ba27dc5697a93667c61852a676ed28ce449b551f09c44fca2837d5b0b41f31d77d32ab2ed23ac0fa1493b5a3170fdf8df4dba13d6caa4f6a2f7e1a1b6d93932278743dedaaeb94e7fed94f9bd87808ba4ecf3001bb7acd77e5933f29f5ae388cf5e0f905dae1b34cc69e2dbe2b4ef61c143b5d2f9704fa3a24273c270d94d84269a02f00e8f3d240894f6c1a683b7862bf200d94583c9a06fa1eb4d017831d86a6a685a9774fda66f6afc130f42517dd221b4d5ae87ffbd9e6b0259ea3d46bda28a70c9ee72f07d9169d952da7e57b3c0d6df1159763f21affc5f17b6399f9cc78afd23f55bd37b799fc248d1b468c873be7abecdc8f997e6ae14cff13f14b658ee76cad052d70371b2ef8d75c8490031946d242c86701dfeb6ec6e1f9fee59a2d531857c038fc0d266037af71fad678f3d19e70843f36b775b4e2fdc95a1e648c05d90f5ae29b41666aa64f6668dcb6717fa07ccbf508074fd8b8547321b32b442b9c770b0c19df9606ca2ce5c802bd1940df91064a0c6ad0406f03d077a58112831a34d05b01f43d2668672fd535cf9615bc5bc103e87d265e72dfa0e4d07157cf96b86d3c50cca605037fc2a0f103375df6881775df3a691b2f5d08818d0f99801b36689df60dd878d0549f6e813f7ab52fae5e6e60b8a95710db2ead93ff0cb4dd8f82ede46b0f15bf03f7d88f838c7496fa7948b31294c467fd03ac1c8edba0557ee2e68e9a67ae31e777545ac193732108f22913b0930f58674eb1c01c36ca1c625b5df2cbfa46ea2570117fc684eb900637c5bf646bfd18923eb41180f6b98b2cf6cc0b51a7a54d4114331f241d599c7570f17e2189b34825e7f6c0f9a5244e6ae88dc6d91b38bf92c41951c9f92bdc3bbf96c41953c9590aadf31b499c51959c1b00e7b79238f355722e828bfd3b499c052a391f07ceef25718655729e0c9c3f3039db9bbf6079517aa193ae2cb29580ec4717c92ed120969bd2a6253687c7cb4f3296404df7e2015e7baaf8739bc66a2bcd535807c054d9cf2e5a6520bbf2d1a623be808bfa17178f95964edd1631935f6813b735d01a7f95c459ac92733fe0fc4d1267be4aceef60eef177499c61959cfd60e6e60f499c052a394702e79f9238232a397707cebf247116aae43c0d38ff96c41955c9f90370da91a518ce984ace22e828e5303993a3a0a2ac2a05550e63f3364cbeff6d6f72626e705bd6f8fc1ab8d0dbba689911d3369db74cda85dd095a662e930fb383b2291bf82c006cc7046ccdcebaf92a178cbeeaa52857904259a09272531889af288532ac92f26eb8c0579242495d1845a39c0bad726529941195945381b2bd14ca984aca6380b28314caa84aca3d80b22393b297d7faa551d44525b49510cfc3f8a61393744813ad333e749c66de8efddc08f367b5f9d7febf9de65de49f72a4b7d88b57679deaabc5bf2115fb0216f62e5e0a7b154dd8c414191af68d80ddd9c5c83d90da1cb481e7cec0b72a93cf3e2d2c93ddffb9dcdc61ed8136aa59efd5fb6d9446378445b73ad07561d20d6af098b2a75962fe5ce4bf954c693353d38e0a7ba5dcbb292da1eb19e80dacc664b6996355e6cb73fc6a5af60e59a5b0f3940bad727517fdd04c5316ce7283699403a1d3d4550a25352f9846b90f5076934249cd09a651960265772994d4855334caa1301fd9430a2575d1148df26b68956b48a1a42e98e205e5a055f69442495d2c45a31c0d94bda45052d7ecd2286703656ff640d116718ca7bccc379fb4c3c6f9e64ddb17d4f1e8c6b2e8ec083449d7c7458822ec156751dacb5dc0d737c88b184f672f637d94b7c358ba9f8b96180ba2860b8d6f1b98c4edcfe45bfef6eef8f6b15a1bf1d162f76da5b0768456b9a60bd6f49dcdec1bb66b1f9734f3ccd6388d56014fec012ed205edc4992db6dc701222f9b1c41c3cd7bcc82e328d17d721478668c59c8e841bc15a2eeea3c559751f3d06f80632f93afa7c16aad47c39595b709e475dda4cbba07b424768908b6cf4e47d323e43986d73e29fc063676d26670faf35d5d40b980b9c6997742e5cd28325616a2c4edf0e308748c2d4b803f94f70d70c49c22c5488f93360ae23099358539586f90360ae2b0993b8828786f92360ae270953e356efdf01e6fa92308983451ae6f780b981244c8d11cc15a16bb4a124cc6285981d007368b091751c4c12296983c93761fe3b8f4999dc5ca635651989173aadf4dd33d036f3a581125b280df479000d4b03250e2c69a00f0068813450e2e09206fa208046a48112837234d04700b4501a28313047037d0240a3d24089034d1ae85d001a9306aab162f03d005a240d9418a4a381de07a0c5d24089813a1ae8fd00ba919b523bf9eee7ce6993c0bf7b29be8d997c6b79e993c075fe613651c6e66d34bde6ccfe4053d28e63eebc9b43226e0f63f94de4c4988a544e0cb78159f6619230354e0cb705cc4d25616a9c18f600733349981a27867300737349981a2786ff822ed27049981a2786ff06cc1249981a2786ff00cc119230354e0cff0998a59230354e0cb78307d04849981a27865700cc516eeab91604515687364a7f0b2eedd1ecd592768c5e630e2a331ff5eff7bc9997a21bc3aef762179a8ef2ec42537b925a1e17ad0ad120e01acbe41ae035cee1b06f225e616881b7855f5c6c61b3314b8d53146d01780bd755d7339576aaf5f701a8f366fba7abf66632c319bc0a5a10681be7e631130e6221156d5fb467e13133de452cbdd0fceb9caf84c5d717f8260459b335bdcfa83198b637dc25b7e42fe94b7578a678f1a5a4e52a3b3b9b03db4437a521a2ee2fe0a7597c1703df24265f7f2f7d326c41e20b75cd5cc8b82c9fd8f1a195061d9b9bc2dd8a7f49c7d78ec7b7795dcaaff642632b803639d9c52add96260c14ab4c5b3d199ed153247152233b34ce6ae09c2a89b35025e73ac0394d126744256737e09c2e8933a692730670ce90c41955c9b919706e2d8953e7829413a1a3b48d244eea623e1ae707c0b9ad24ceb04ace7b80733b57b1c900b634a44d813d0977cbed5d24aa2e3f6e3ed98b17806a2a7e4e1ca1c758c4b93042dfc145f8e39f4d4d506b20d02627fa00ee8e5236f4a2aee5a5dd0a6e875bc14c2994d4fa0734ca499099b19314cab04aca8d80b24c0a65a14aca2540394b0a654425650550964ba18ca9a43c07282ba4504655521e019495920697c52a1795d6438768b6244eea7a091ae74ec039471267a14acefec0395712674425e7df5e8a739e24ce984ace51d03a7796c41955c9b92170ce97c4a9b35cc462b8d8ab2471524be4d2389f04ce6a499c61959c6700e7022667d704679ef96fb6175f92823973335d4c6dd052bcbac23db326c8ba99fa57572c8028fb42f6b23dbbda67a2ffa2f8656ef387c778987658628e89ef484edc2084b61c6003b8bc776162aeeba5a7c3da172ef4e9ecfa33bb717645c61922fb838d6df278e21ade512cf2c9b084a59649dead117973b344fa224cf90059270552e3b65fbf41a8ae5e0a24b170040df27368918ba440127b9d34c82d0172b11448e2222b1ae4dad059da55ca8406b5d6308df252e8c22f914249dd138846b9053c70964aa10caba4cc05cadda45016aaa4ac05cadda550465452ee08947b48a18ca9a43c0d28f79442195549791050eee562e974d48f663a4ecfa6c530f3a103b43793af83f98b651a6e5e50eecdf50f9c6afe5cc843a3e504afe6a5d0f671b328203f8805fbb456770db4ba7d5d5cb445415cb4b472113b02df7e2ea6c3323d3ef07433fd36aab134e881f008d95f12674c25e7a9c0798024ce884ace1d80f340499c852a397701ce832471865572c680f360499c3ab72f1e0b9c8748e2cc53c9d913380f95c449ddb387c63910380f0b76a358e4d4b851c28d4079b88b11901dffd8d2b6b5fea18e52af68519f6bbd14df114cbedead688958e98d7879d346e557429b3c52222a71d69b867a39a01e25119598254443bd14508f9688aab1d0e3c5807a8c445462ae060df56a403dd645aa75a61e68f227a5769786e590180f8588e7712e7a9ec9dca1258dda66fc54553e25f132efc26a91abe4a6288f77d1f38c0551cf8876414f83967842b063206c89c47b23ad25d64042e089b2f6d4a59632e12de28387cd49d24035567f2b00d093a581122f791ae88a007a8a345062c78806da01404f95064adca898063a08404f93064adcdd87063a18404f9706aa71ade4abd0033d431a28319a44037d0340cf9406aa717df97b007a96345062649e06fa11809ecddfd5b4cc5f935b631cec868865fec94acd7f8bcd4bec064b93fc376617f42f513882b773b549cc7398989dbd64f666f6843f2600deb92ea247c541448f684bf3f7820bf9bc20a34713cd4b76f6e275b0a9d1a3c1ac90702e448fce6752e6798dab1cd4f9f7c5b847fcfe58d180b4e9aa07a313274d3f96d80ba5b5e4e91046bec0cd9e9301ec0cbd2d8baf27dc082e74c117f102d8f19496ffd106f82e72b302232f88f647033c1d002f660276f21aaffb99ecd9d23b73cd896870b4b53fdda00374093fa57091f952896777269f6f3e6d21e7a75527b24ba8e624668188db24d2f6de5d1f382f75b37cafd8fd654c4b23dc122ee3cb5cf0d9b4eaece1fb1c5adfe56ed6a105d0fa680f915da1f55de122ce93693413bf43da7ba0ed94c79fd6c4f9c6300bf428e8545f290d9438234e033d1240af92064a8c95d3400f02d0aba58112c7d134d00301f41a69a0c458390df41000bd561a28713687067a30805e270d9498b341033d0c40af97064a0c05d3400f05d01ba48112733668a04700e88dd24089594534d0c301f42657156302186ad2e61d6f85a1e6cd4cc07e4db4c896ef714abc7bd2229a9d6122ed16174110bb7b69f604414ef7527cb70659cb0d4f379319fea085e30e07cadbe45ee4445adeb4055ce4b73369fbb49876ba179fffb6a7b24165e2d828af2d89f503486ebdc3c59ac96412c222ffc0f8499abb0d104322b4dbc066d056ef94884a0cdcd1504f01d4bbf80b51edf37cac3970bc39b0dc9b9f964a18ff9cdd75455f47be0f3ca2ee96771f256fb210cd25b1fe0aadf31e17ace997fc4c8338d91b614e56ea8d3383ce327392cac4e7a6258e203e9efab11e4f2703ebbd2eea1fb5741c4fdd609676f16f0da3f8fb247152b73fa6712e06cefb257152f79ca4717e097dd10724715217b1d038ff00ce07257152b7f0a471ae0f8fa2872471527793a6715600e7c39238a97b9df3f24480f311499cd4dda4699c1701e7a39238a97b9dd338d7838ed2636e668f0a82d86f8016fcf810668f1e771d58c6a16581f9d30641ca967db409dcf3bdcac4c54ea36dcb1ab95f0f97fa1392b6e62e56592de10868a94f4ae22c52c9391f389f92c459a8927308703e2d8933a292b323703e238933a692732be07c5612675425670c389f93c499af92f3682fc5f9bc24ce02959cef01e70b92387556e9ba09385f0cb23045fa854e1c11d112c2368011d14b52280b5452de0e942f4ba1a4d635a4514e03ca57a45016aaa4dc18c271af4aa18ca8a46c0f94af49a18ca9a4dc11285f9742195549391128df904259a492726fa07cd3cde28200caedd1262ee67929beb75cd42a8c1776b4ed3079ee058943f4e1e500dedb4cbc014d5cc64de76ada1fc3fe200bfd123ea3cc672bcdd1151e35a778140b787be853be231d9898094f03de0680df7591169b39c881150b1ded74f5348bf515886cbe27695b506a7789b76c0b32e5de97c449edc8d338cf06ce0f247152879834ce72e0fc50122735f841e3dc15383f92c4490dcbd1388701e7c79238a901631ae744e0fc441227b56c058db30f707e2a89933a3344e35c07383f7353ec34802c4e5a1aec18e8b67fcee4ebe6b5668e525f50ee2e68875f4881240e246990b701e497522089eb7f69902f03e4575220894b0568908f02e4d752208945fa6890bf00e437522089e5a56890af02e4b7522089295a34c8df01f23b29901ae7247f05c8efa540128b4ad1207bc1f4c40f52208965ca69903d01f24737fb1064d3f2beb93030fc29c87c8df43005b1ff48a3bc02ee8d3f3329db9bbf5478a93d25a7f95bdd542824b3778524d92f2e56e7da0d11177aa92d3867fa7fd75bdb750e00feeaa2da709ef9cf16271be1177ab2ab706779768d38ee719a4c8621ee51450b941d0ba0bfb9592f1ef602d81d8d76493f060f94dff9c5f232c7bd933f29b5a33d2c879518008c7ff0b72d6ee9f481ce89d71300f34f4998c4b1340df344c0fc4b122631c243c33c0430ff9684498c3bd2308f024c6f6541981a4733fb03668e244ce21c0d0df340c06c230953638deb5d00b3ad244c8db5adf705cc5c4998c458240df306c06c270953e38e162f00e60a2e309375ad67facba032736abc6796e6a6305764622e3fcc1b3f958d1951f32dbab0283f8330ef4a4ccad4b2bc38a70df93a8b58d2e66bd683cb7a65265f322f327959db2de09734db1a891736ad357e0aadb17d9017362e72a25ed8835921b71c9849ecc0a46cb891c21cf38585e624f6b28ec7cfb329d1cf83474f47262b5660cda6ade23f853b662736a09dd55998b88c27fb7556e79917d8c5a0f5fe696b7980fd59809b7829c0559880bd1a5cd8f6a573bcb94d74cfb53f763e84c74e6797f7ca1a73de789bb4e39e6ceba6df07acabbae85b46fc19f16c59e5f0175ce85d987c831ab4ca59fe92f97abf55665a5e3f3af1e2f48e12b19516b39857848ed26a2e9ee8b6eb53670eb33b4e25130c34cf91df0aed7475179df696c58934c62fc70065572665ebb7db2e6086dd68f7d02ba0bbde4d1a2831284c03bd1c40bb4b03255ef234d00b00b4873450e2f39c067a3e80ae210d941849e2ede103a03da5816adcc5e74200ed250d94982a4303bd04407b4b03252672d1402f06d03ed24089698634d0cb00b4af345062122c0df45200edc7041de2a50747ca9b592a30c21fd52f683430d53ee9d1034224fd99d84ded9ad674fc69aa1f2eb15180d9fee9aab923fe212cda772046baa68b186981bfe8c5718c94b662e86e2fc537c0055fd874909cf3d1ea5f5e047c6b0539df5eeadf3967f1e7901e684ba25c08f7c8814cca6481e600da212dee3903dae120171370cb7fc04cf7e2931af65405dc874b1eab4dbe0b0f97b55d241d66ce934b8fcc6b4c87dd162ef0c1923035a6c3ee00984324616a5c109807982149981a17048e03cc7524616a5c10d80e30d79584a971416047c05c4f12a6c605813f41d7687d49981a1704b68196b981244c8d5973cf42cbdc5012a6c6849ae700732813b37f1398d38dc70873a2526f9c79d3a57efe71d9b28f53cdc9e67b9589283cb1a5b6cd25e1de0c977d9e645c62cba5e1de02b8f99271894f7f1aeead801b968c4bec0dd070ef06dc027e42ad8d7a8e3707d989b92ac338cf7f23e55e32af5edf745b5f2f051891170d25cf624659edf22d6897854cd675bcf429e37af3e985697ba565deb2ce5efe73128b691cedae56c26ac7c530471f75b9ac66917f60fa9db6c49fb7af4c7c6e5ae20862cfa01f2baa3f0cda718cc9ba56a3769c6a9b2d6dc3d4e2a7911c12f154202e72b1acbba5e93a452af3f3aae046502c89b35825e71ec0b991244e6a5c95c6f90dc4083696c41956c9b90adc3b3791c4a933b77953e01c268933a2927357e0dc541227b548258df324e0dc4c12675425e79dc0b9b924ce984ace7ce8280d7753ac252fabf6d33827270558e26a6d7c36ed68b09d97021ce13a73bee58166e2c54d0b335f07f7ca5237177776b5cd69d036470659b70197c750e7936811fb91709f1c258592ba3896465902a3f1d15228c32a291f865639460a25b57e3c8db20a5ae55829941195945b03e5165228632a294f00ca715228a32a29f701caf132e6dced8f31d6b3857ee77895dcb9ca4d581369dda1933e819fcc58e64356fb231c7b68725fb709e66f157e7ec8147fec63bf89be361af152985bba58ec1af357be65cb5ae1a9d01d9a18e462d7f4f10e31c58bd61287c0653d490a25b5ba128df208a0dc4a0a655825e568a09c2c8592bac513ef510391f3295228232a29bf835639550a654c25e576d02aa749a18caaa4dc0228a74ba12c5249b9082867b8e8961707d12da7d5dfde13bae55b33f956337f5964de2056ec9a62feb46fc44e838d4d843768841bb308d7f45284dbb0d3062ce1442fbe19847da11d55c7d305e6fb23ef5af3b1042ac8eb6b91eb00e7b62e2e68bb3fa0f30b7a068b6f005cd0db31f93af87cf6dbda972d85f27bfa1e22ab429bdb5ecaf3985aa88746b93974b877904249adf64ea37c0928779442195649391728674aa1a46e4c4ba31c0e1dee9da450465452f602ca3229943195943b01e52c29945195945b0165b99b4d69635994b57b9a97e2ab70516c3cb940745ee244d9b691dd5c688f95ec118dddb1b2ca9fb79e0bd3ff34b4be2cb48ed00a67bbc8a8b075ad2d9a1d0456993732c97cb47f1f635e644f5ee30f121d65edd2d6349c00ac735c2c11c994f3937e59e77357dcd02eed4321ef67ae244eea8a1b1ae799c0394f122775b5228db30c387796c4495dad48e35c049cf3257152577ad3383706ce2a499cd495de34ce09c0592d89334f25676fe05c20895367f5e121c059e366b95dc45f72e778544e0b6aac0c800bddecf453ec9e8f5692e95b2fc5b78bdbaa570dabb765bab8f11862220b2d417a1684396a65ac8148df5e9e5a267732ab5edb3130f353c764edba9c0751f227a5b6ce61ac1bc001905650ef262b2380c7cfb6ac8b7b0de05bc44eb34a86e3aacc6165e64d243b3fba436fbbc12368b1ab7222013cc3697dc80ba00deeea66b7be7016f19d07ed6f898b4bd8a6995627be797215a2934b9846b813102e0d72c56cfaa050e3ae53fb01e56e4cca815e7a877cb139749e7923f9197b8da3132f4def3d12fb8eb454d418f41d7777f3c809675505aba7e191b3878b61634b2ef829fe14af6db713cdff250bd5d771dbe85fac8ef98d40bc27bb8ddaecf3c6abba75e79baf0d77d2bddc448602b8c4bbb3f8be02bebdd9cf747b8205e6a069c661bcf9af71eef9785fc65edcfa6294ed80721f7e0fb361b9866cd8bca33b10eeeb62da614e5a180d4f896fdfae1a233e5c3ab23817c0c3653f499c452a39b703cefd257116aae4ec019c0748e28ca8e4fc14ee9d074ae28ca9e41c01adf320499c51959ceb03e7c19238a9d36234ce7ab8d80f91c459a092f331e03c5412675825e749c0791893733def9f6d16d7548cd3d18671b439ca3024201c2e2301a1e1c687c4d42ddac6877d81f5882057a635bc31e8bb2d2c01ca23f90192e52f67d1378b3e1ceeac47c9dd1241e386dc57c26cd1d152ea01dba52cfac278d74267ff182994052a29b784c4d763a5508655521601e57152280b55522e06cae3a550465452ce02ca13a450c654529e0594274aa18caaa43c0c284f723182cfdccfb493c376545fe30f29ed517569fb90db1f6ea19fc230ca9ca5d2efee537ba07359e84f00fac9ae3bf74d8fe0a79aff9698cf2ef2df64d8fc4aa8b45d59b4cf03ed2952eacb5043cfb45bc30018279d2a85921a76a651ee0d94a749a1a4869c69942380f2742994d479791ae56008d39d2185923a274fa3fc025ae5995228a9f3f134ca29d02acf9242499d8ba7518e02cab3a5505253c268949540790e93b2571394384e2af1d3ba2bd34646d4ae7a3fd68adfa7a0ab7e2e93744d2f7df2d826d496fb7346b5de0ccf2e92a9377f6bb810217e7abbb93b95b70babc5be068fa4f3dcec8396d7a0e56a5e123311a636ce0ff2de89a79bc98c31d1286f810bfd02375b7f64534b5c022df142177cb64661f6f09500df45fccd35e34bfa477b76c98b5da9912c54ba74d981f698f8760cfa30477b29cc8b5db4c5a2ac6a8b73a02d5e22a9da16b502368df36878b05c2a89935a9b9dc6793e705e268993ba6b00ef6207cecb257152f7b3a071ee0e9c5748e2a4eeb442e31c0e9c574ae2a4ee0144e39c029c5749e2cc53c9d90f38af96c449ddec8bc6b91e705ee362c940cb96bde04a0c629e7b711b126b0858af7591c761e394764899fd257daabc14ed756e699391f50aff9690fc58e2d984a0327f4fd41a3f4d869cd7d19b45db1e06a1d7bb289066677db2ab40dab6d03a6f7011068978016c664c5bdcf227f0dde866e7aa481645919600df4d2e229a2deb1c855516e87b1b306f9684a971a6e723c0bc4512664421e6d38079ab244c8d1b33bc0998b749c2248e7b68988f00e6ed92308915db69988f02e61d923035ee41f91060de2909335f21e6c3807997244c8d21b88f01f36e4998c50a313f01cc7b824dcec23441e2f8879626f822a409deeb621be4d6d4eb225ee8b4e227b74178ed3e69a0c48b9d067a0780de2f0d9438b0a4815e0ea00f4803250e2e69a0d703e883d240890f251ae84d00fa90345062608e067a33803e2c0d5463e5c35300f41169a0c4c1260df40c007d541aa8c6227ce701e863d24089813a1ae84500fab8fcbd55893d53dadeaa7be6a6889f70b5915336ed1df81ab4d1279980760f94f8a624369f8306d59705b5b197827acae5be6c15e6933687a8dcab6c55ae11f172a6651a1d05b1a5a73520131f4b34e4fd00f9190dc8c4ce140db91e909fd5804c1c02d0907b03f2731a9035667ffe0939cbcfbbc8bd4b2d87cd8605b04740bfe18520679ed253bc8941bec13924ca4e70b9bfe87e1bbdb1e645e33ddc799d4648ab4a330c5ae34b4cc2de5ecb27951dedaf411b849e0463a897dd0c42f3fd6d9ab365107a0900bec204ecd6e4856d2fea726fbe71a9f1eafdcf6add25b3075cdeafba7856db22e5cedbe10c16df9ad00e5f935266b7d66faf75de6cff74d5dc67f710166d177876bfcea4b5d796ddcd7aa4ff50b1874df07025118d6e148bae182eea37dc3c5e22411451a1dd15c3308279d34d61b36c0a11ef0077c5b7f87dc6864fe729fec0af3e719a3ad89e7e4ae2694dbca8696d320617f5db6e4a9c05d026690b028f8336f98e8b7ba20d4ad425e238f1a88fee05a9c741fb7bd7d598a5c87d0ba40dfa6e8116f89ea48d418b5526c11e0f9cef4be22c52c959059c1f48e2a49692a2718680f343499cd4426734ced580f323499cd4327c34cec9c0f9b1244e6a91481ae730e0fc441227b594148df3182fc5f9a9244e6add381ae7fbc0f999244eea2a4b1ae79dc0f93993b3b397aa6d942d63a08980f7858bb9ed64fe45e394d6f8a9f46ebef00ac4c7bf74715967baa84bcc4b6b7c481b8823efbe428b0f8dcb4d717e2589b35825671d707e2d89935a508fc6f9394c487c2389935ac383c6f923707e2b8993baf7248d736d78147d278993bad31f8d733be0fc5e1227750f4a1ae741c0f983244eea8e7f34cef380f347499cd4bd28699cdda1a3f4139373752f352f39db1c60e1305d5af3dce4f15e0af1672662ff26da64cbd3b0a895906889586da185fe221997184da2e1fe0c77d35f25e312d7add1709f00dcdf24e312d7abd1701f07dcdf25e312d7a9d1701f03dc3f24e312bb5c34dc4701f74fc9b8c4324034dc6f00f72fc9b81a73e29f03dcbf25e3124bacd1709f025cafbd605c629d061aee93809bc3c46d6aa10c6e6e5f60feb429e065cb3e4e35279b6f5e1a9fbba2d1da611485f646a06dc3a46d7d5ea9c64a8bbb41324f5b499c452a39670367ae24ce42959c6b03673b499c11959c2b01e70a9238632a39c703e78a9238a32a390b817325499cf92a390ff4529c2b4be22c50c9f90670b697c4491d7ed2382f04ce0e4ccee595fd6978a9eba3ac8519ab8e4ccae452d9681049bab495c605f0d8e9c4e45bd34b4fd29db7ac05d6361ab7979817d599af264ba7c58f20869ffbb525f14660bcbe8a8bd6591444eba4cdf5cf82d6d999c9d7cd6bbe20557aa843df65fe0a3c70569502490cc0d1205f06c82e522089cf6d1ae414805c4d0a24f11143839c0c90ab4b81246690d0200f05c8ae522089d92234c88500d94d0a2471984883bc0e20bb4b8124ce48d2200f03c81e522089191f34c81700720d2990c4ec0e1ae4f300d9d34504a865fd488d17f7853048ec2585b24025e518582bd75b0a2535098646f905b4ca3e52280b55522e8456d9570a654425e5f640d94f0a654c25e52940d95f0a655425e50140b92693b287d7daf216344cda22c3c7017380244c62dc9c86f92260ae250953e3f2d76b0173a0244c62fc9c86793d600e9284498c58d2306f00ccb5256112e3e834cc5b0173b0244c62d788867937600e9184498ca7d3301f04cc90244c62049386f93060ae2309931857a7613e0698eb3231d7f61aa661d52500e77bd57ea6d07c6fa4673708b7df33fbfaa0eb4242d67a2e1259338ddaf174b6074a2d10444bd0da1bdaedfa9238a9058278b56d807303499cd4e26a34ce19c0b9a1244e6a71351ae77ce01c2a89935a9a82c6b90170e649e2a416a6a471960267be24ce3c959cdd81332c89935ad497c6b9267016b85808100e623fada7597c377b29be48900ba6d25b2331a2446b89d7404b2c74d11263666c933d4b52b686bc8ea80bbee2ace23b18f8624cbeaecb79ac247f52ea456c370ba2301e048c452e826f2d7b3ac798914c5a9bfc05308b256112239934cc5f01732349981a9fd53f01e6c6923089b33f34cc9f0173134998c419731ae60f80394c122671c69c86f923606e2a0953e348fb3bc0dc4c122631cb8886f93d606e2e0993989949c3fc0d30874bc2246666d2307f07cc92602342f153c5771724768c68bb0b3e0d73e22398945d1294768a213f8b821a6f425b2ce5c7ca6df685fdd96d495b7be848f35fadff7f13cc9f15e6f355fe89cbfc6f43e3a42d0728f4529c235d84d822fe46398e5b23adfcf26fc0372ac83be344f3929dcdff95fb0f20e29d71302bccb602dc194733290778e969598bcda1f3cc1bb16b7a9a2e173ebcc14d809ac5de9dd556b702e031d28189a3211a7011008f7533ef18c0939d36ef782edc4bb790732f258e7e68f7d2a5d012c7b9a0b4cff4d1e613f55ea9f973b139b4dc7c9c665cec856f8fa8f5bfaaafbf7924b4caf1ae3aec01a413d0b6a6ff043aec1382d9a1629a793b76749efc58620e9f6b5e66db698df1223f707ab3686f86f4822d835c169d1ee4d01816de0b2ef3894ccabe09ca7ad302ed8280d6b45162ec88d646df02d849526189cf781aec3300bb955458e2ad8006bb2fc04e960a4b9cc7a4c1d601ec14a9b0c4913d0d7601c04e950aabb183550db0d3a4c212339768b04f01ec74a9b0c4fc3a1aec2d003b432a2c313c4d83bd1e60b7960a4bccbba3c15e0ab0db30617b7aadad5493afb28ed229b929d06da5816aacf27532806e270d54633da56300747b69a01a2b2d1c0da03b4803d55857e93800dd511aa8c6aa5fc702e84c69a01aeb2b9d00a03b4903d558fdeb78002d9306aab1ced249003a4b1aa8c62a60270268b9eb99d4a61377a6fad3d2764a70b67fba6a6ecc9f96c7f711cca456f067f9e323fb78aed3526f94f99b6d9dc983ea14cef2db469f04ac6402f6327f5964dee044ff45f17668937031ef647c82b7c41c59ef332fe09116b348fb03e96c17992705e6bfba442cc932dacf694e15bf1d00e7b8c8c7b35b3e384fdc2961f1f581c49db972b24b34ae463a005ae23c17057e5ada152a5219905b081da19d257116abe4dc1f38e74be2d4192efe1efa92559238c32a39fb432e73b524ce02959c6380738124ce884ace7d81b3461267a14aceb38073a124cea84ace55e1c9be8b244e6a51011ae7a6c0592b370047a4a505e0bac2855fc7a4edd362dae95e7c09983d550137ae99d796c4fa31f445eb83dc38227d0c4fed3ad146f13bc3e5bf4812a6c69a22fb00e66249981aab2a8e00cc5d25616aacaa5806984b24616aacaa5808984b25616aacaab80960ee2609536355c54ba1c7b9bb244c8dcb672f07cc3d24616aacaa782160ee2909536355c58b01732f1763f6d46e6ff113cdf06c090cbb9aa3b95a76c4764aab65d7c67f1cadd8aec1c947353af9083ff6637fd072fffdc7a77937f42b86d891b6552e377f4fe66dec645ada76e6dfd6fd3e7630ff36f5f99c9ccee61d8df49698b7673f6bcf57e19fbbda7cd5beb33a2f6fbc39646fdb3cfa259a47286725f36795f9fa1cf3be6c6e49a5f95b28c71c635e9dca3549fefe1b7f656c62423b7ea68685e4423e281e5f973847fc55f6674daad9a33b98afd4999fa0ca9ca1ce34a6b1feb9e6f8dfb94bc6af8df29b617de21c0ddf61b23e4bc817b2990a33fcf757ee9f6341e2758bfdfc9af83bb0c7d8624df608fb534c357f2e345f5ba589afd9985f3cfba6da1cd1b18923aceb6c734428a753135f9decd9fc9eb9fed7bb79f1ac9fa6b27c4624bcca12711bfb93fed32ca150ce6a4d7ca729e64fdbe86d6b4dfd569b3a72aaf92eb3fcdf597d83dfbf3d72941f054dfe36ba243e3bc2ffadd54341c1f477d4bd89ef936c75f6b7b4d03fdafea66d0bad48fc36ec2b1a6e3639cdbf26ea12bfefa68e48a5a085fc986e53860d5f93fe6e7b6478d5180f53ded25fd331f19a5471c5a97ebbadf25bf72a8dbe3a2171034ab67fdbaee73529d1ceff4afa9552e65f2bf17bd164bfbddb3b125e29f6a696e31f6bef12b6454ef07fa365feefc77e4cfd9e874e3087e544cd1ff1657a1b2e5ba017bfef559b7fe37f4b7e7ef9e7b477b1e6cfb68fbd55e534fd24abfad7eebfcbfb8952f788d9e6bdc7ef61f6b3cbfb4997fff365be97776ce6b732744bfbbbc8e69f7f5ffb7b6f97f8bdb7193ad1febcf9ff42db5bfe3bdacf7ee736a4be53472f5e6bb5d6dce4e6f9b7dad42f4a7ceb9ee4df9516fa47dab7f9bfb46e7b274b3fdf3cfffb0e9d24b365ff7b3ffbfe78476b3374ab7fdab25bff8e0e60b6ecf8d9e2f9de0dce3dba053f5dd3bf87863f73eaa8857e7b285bd616e2d7f95cbf67b17c89be7e5f23f3d9869bbfcdf17fd679fe59abbde43ff689694759f6867420d3b3f3b23bc55873e0787360b9e9824cf6bb554dd660cee66b26f3fd22cfde2f0e4abba4f2ec2575f07f6dfd5f6deb87303d57f3db7a9dff232df23bb493cc47fbf7f4cef47f2d3ed9e20f6ddce20ffbafc5ffab2dfe70a667a7448b8fffe00dd745fdd7ce93edfc88c6edfcc8ffdaf9bfdace8f627a76486be753bcd49aabffda78b28d1fddb88d1ff35f1bff97dab8fdb787df0ca799d75624bace366657e19fcffed3eeff0009ff3e6933af0900 - serializedProgramBytesString: - programUnityEngineObjects: [] - serializationDataFormat: 0 diff --git a/Runtime/jp.ootr.ImageTab/Udon/bc7986dfa9245594181d180dd319649d.asset.meta b/Runtime/jp.ootr.ImageTab/Udon/bc7986dfa9245594181d180dd319649d.asset.meta deleted file mode 100644 index 01bd868..0000000 --- a/Runtime/jp.ootr.ImageTab/Udon/bc7986dfa9245594181d180dd319649d.asset.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 14ea3ce937b94cc47936ba6dd6f22405 -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 11400000 - userData: - assetBundleName: - assetBundleVariant: diff --git a/package.json b/package.json index a0c597c..2b838af 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "jp.ootr.image-tab", "displayName": "ImageTab", - "version": "0.2.1", + "version": "0.2.2", "license": "MIT", "unity": "2022.3", "description": "Image tablet gimmick for VRChat", @@ -17,8 +17,8 @@ "vpmDependencies": { "com.vrchat.base": "^3.6.1", "com.vrchat.worlds": "^3.6.1", - "jp.ootr.common": "~0.0.8", - "jp.ootr.image-device-controller": "~0.2.0" + "jp.ootr.common": "~0.0.10", + "jp.ootr.image-device-controller": "~0.2.3" }, "legacyFolders": { "Assets\\jp.ootr\\imagetab": "44c35e5266e08d948a1cfe3898d9a753"