From c0b5a28821841300603a771fea16afd6fa32c3a4 Mon Sep 17 00:00:00 2001 From: nebulaliu Date: Fri, 6 Mar 2026 14:40:34 +0800 Subject: [PATCH] Auto-publish. --- CHANGELOG.md | 17 - .../BuildProfile/WeixinBuildProfileUpdater.cs | 78 ++ .../WeixinBuildProfileUpdater.cs.meta | 11 + .../WeixinMiniGameSettingsEditor.cs | 554 +--------- Editor/WXConvertCore.cs | 94 +- Editor/WXEditorSettingHelper.cs | 957 +++++++++++++----- Editor/WXPluginVersion.cs | 2 +- Runtime/Plugins/wx-perf.dll | Bin 55808 -> 55808 bytes Runtime/Plugins/wx-runtime-editor.dll | Bin 256000 -> 274432 bytes Runtime/Plugins/wx-runtime-editor.xml | 464 ++++++++- Runtime/Plugins/wx-runtime-editor.xml.meta | 2 +- Runtime/Plugins/wx-runtime.dll | Bin 234496 -> 249344 bytes Runtime/Plugins/wx-runtime.xml | 470 ++++++++- Runtime/Plugins/wx-runtime.xml.meta | 2 +- Runtime/WX.cs | 307 +++++- Runtime/WXBase.cs | 8 + Runtime/WXTouchInputModule.cs | 186 ++++ Runtime/WXTouchInputModule.cs.meta | 11 + Runtime/WXTouchInputOverride.cs | 27 +- .../playable-default/check-version.js.meta | 2 +- Runtime/playable-default/data-package.meta | 2 +- .../data-package/game.js.meta | 2 +- Runtime/playable-default/events.js.meta | 2 +- Runtime/playable-default/game.js.meta | 2 +- Runtime/playable-default/game.json.meta | 2 +- Runtime/playable-default/playable-fix.js.meta | 2 +- .../playable-default/plugin-config.js.meta | 2 +- Runtime/playable-default/plugins.meta | 2 +- .../plugins/check-update.js.meta | 2 +- .../plugins/screen-adapter.js.meta | 2 +- .../playable-default/project.config.json.meta | 2 +- .../playable-default/texture-config.js.meta | 2 +- .../playable-default/unity-namespace.js.meta | 2 +- .../unity-playable-plugin.meta | 2 +- .../unity-playable-plugin/index.js.meta | 2 +- Runtime/playable-default/unity-sdk.meta | 2 +- Runtime/playable-default/unity-sdk/audio.meta | 2 +- .../unity-sdk/audio/common.js.meta | 2 +- .../unity-sdk/audio/const.js.meta | 2 +- .../unity-sdk/audio/index.js.meta | 2 +- .../unity-sdk/audio/inner-audio.js.meta | 2 +- .../unity-sdk/audio/store.js.meta | 2 +- .../unity-sdk/audio/unity-audio.js.meta | 2 +- .../unity-sdk/audio/utils.js.meta | 2 +- .../unity-sdk/canvas-context.js.meta | 2 +- .../playable-default/unity-sdk/canvas.js.meta | 2 +- .../playable-default/unity-sdk/conf.js.meta | 2 +- .../unity-sdk/file-info.js.meta | 2 +- .../playable-default/unity-sdk/fix.js.meta | 2 +- Runtime/playable-default/unity-sdk/fs.js.meta | 2 +- .../playable-default/unity-sdk/index.js.meta | 2 +- .../playable-default/unity-sdk/logger.js.meta | 2 +- .../unity-sdk/mobileKeyboard.meta | 2 +- .../unity-sdk/mobileKeyboard/index.js.meta | 2 +- .../unity-sdk/module-helper.js.meta | 2 +- .../unity-sdk/recorder.js.meta | 2 +- Runtime/playable-default/unity-sdk/resType.js | 93 +- .../unity-sdk/resType.js.meta | 2 +- .../unity-sdk/resTypeOther.js.meta | 2 +- .../unity-sdk/response.js.meta | 2 +- .../playable-default/unity-sdk/sdk.js.meta | 2 +- .../unity-sdk/special-callbacks.js.meta | 2 +- .../unity-sdk/texture.js.meta | 2 +- Runtime/playable-default/unity-sdk/touch.meta | 2 +- .../unity-sdk/touch/index.js.meta | 2 +- .../playable-default/unity-sdk/util.js.meta | 2 +- .../playable-default/unity-sdk/utils.js.meta | 2 +- .../playable-default/unity-sdk/video.js.meta | 2 +- Runtime/playable-default/unity-sdk/video.meta | 2 +- .../unity-sdk/video/index.js.meta | 2 +- Runtime/playable-default/wasmcode.meta | 2 +- .../playable-default/wasmcode/game.js.meta | 2 +- .../playable-default/weapp-adapter.js.meta | 2 +- Runtime/wechat-default/check-version.js.meta | 2 +- Runtime/wechat-default/data-package.meta | 2 +- .../wechat-default/data-package/game.js.meta | 2 +- Runtime/wechat-default/events.js.meta | 2 +- Runtime/wechat-default/game.js.meta | 2 +- Runtime/wechat-default/game.json | 2 +- Runtime/wechat-default/game.json.meta | 2 +- Runtime/wechat-default/images.meta | 2 +- .../wechat-default/images/background.jpg.meta | 2 +- .../wechat-default/images/unity_logo.png.meta | 2 +- Runtime/wechat-default/open-data.meta | 2 +- Runtime/wechat-default/open-data/data.meta | 2 +- .../open-data/data/index.js.meta | 2 +- .../open-data/data/utils.js.meta | 2 +- .../wechat-default/open-data/index.js.meta | 2 +- .../wechat-default/open-data/loading.js.meta | 2 +- Runtime/wechat-default/open-data/render.meta | 2 +- .../open-data/render/image.meta | 2 +- .../open-data/render/image/avatar.png.meta | 2 +- .../open-data/render/image/button1.png.meta | 2 +- .../open-data/render/image/button2.png.meta | 2 +- .../open-data/render/image/button3.png.meta | 2 +- .../open-data/render/image/loading.png.meta | 2 +- .../open-data/render/image/nameBg.png.meta | 2 +- .../render/image/rankAvatar.png.meta | 2 +- .../open-data/render/image/rankBg.png.meta | 2 +- .../open-data/render/image/shareBg.png.meta | 2 +- .../open-data/render/image/shareBg2.png.meta | 2 +- .../open-data/render/styles.meta | 2 +- .../render/styles/friendRank.js.meta | 2 +- .../open-data/render/styles/tips.js.meta | 2 +- .../wechat-default/open-data/render/tpls.meta | 2 +- .../open-data/render/tpls/friendRank.js.meta | 2 +- .../open-data/render/tpls/tips.js.meta | 2 +- Runtime/wechat-default/plugin-config.js.meta | 2 +- Runtime/wechat-default/plugins.meta | 2 +- .../plugins/check-update.js.meta | 2 +- .../plugins/screen-adapter.js.meta | 2 +- .../wechat-default/project.config.json.meta | 2 +- Runtime/wechat-default/texture-config.js.meta | 2 +- .../wechat-default/unity-namespace.js.meta | 2 +- Runtime/wechat-default/unity-sdk.meta | 2 +- .../wechat-default/unity-sdk/TCPSocket.meta | 2 +- .../unity-sdk/TCPSocket/index.js.meta | 2 +- .../wechat-default/unity-sdk/UDPSocket.meta | 2 +- .../unity-sdk/UDPSocket/index.js.meta | 2 +- Runtime/wechat-default/unity-sdk/ad.js.meta | 2 +- Runtime/wechat-default/unity-sdk/audio.meta | 2 +- .../unity-sdk/audio/common.js.meta | 2 +- .../unity-sdk/audio/const.js.meta | 2 +- .../unity-sdk/audio/index.js.meta | 2 +- .../unity-sdk/audio/inner-audio.js.meta | 2 +- .../unity-sdk/audio/store.js.meta | 2 +- .../unity-sdk/audio/unity-audio.js.meta | 2 +- .../unity-sdk/audio/utils.js.meta | 2 +- .../unity-sdk/authorize.js.meta | 2 +- .../wechat-default/unity-sdk/bluetooth.meta | 2 +- .../unity-sdk/bluetooth/index.js.meta | 2 +- .../wechat-default/unity-sdk/camera.js.meta | 2 +- .../unity-sdk/canvas-context.js.meta | 2 +- .../wechat-default/unity-sdk/canvas.js.meta | 2 +- Runtime/wechat-default/unity-sdk/chat.js.meta | 2 +- .../wechat-default/unity-sdk/cloud.js.meta | 2 +- Runtime/wechat-default/unity-sdk/conf.js.meta | 2 +- .../unity-sdk/file-info.js.meta | 2 +- Runtime/wechat-default/unity-sdk/fix.js.meta | 2 +- Runtime/wechat-default/unity-sdk/font.meta | 2 +- .../unity-sdk/font/fix-cmap.js.meta | 2 +- .../unity-sdk/font/index.js.meta | 2 +- .../unity-sdk/font/read-metrics.js.meta | 2 +- .../unity-sdk/font/split-sc.js.meta | 2 +- .../unity-sdk/font/util.js.meta | 2 +- Runtime/wechat-default/unity-sdk/fs.js.meta | 2 +- .../unity-sdk/game-club.js.meta | 2 +- .../unity-sdk/game-recorder.js.meta | 2 +- .../wechat-default/unity-sdk/gyroscope.meta | 2 +- .../unity-sdk/gyroscope/index.js.meta | 2 +- .../wechat-default/unity-sdk/index.js.meta | 2 +- .../wechat-default/unity-sdk/logger.js.meta | 2 +- .../unity-sdk/mobileKeyboard.meta | 2 +- .../unity-sdk/mobileKeyboard/index.js.meta | 2 +- .../unity-sdk/module-helper.js.meta | 2 +- .../unity-sdk/open-data.js.meta | 2 +- .../wechat-default/unity-sdk/recorder.js.meta | 2 +- Runtime/wechat-default/unity-sdk/resType.js | 93 +- .../wechat-default/unity-sdk/resType.js.meta | 2 +- .../unity-sdk/resTypeOther.js.meta | 2 +- .../wechat-default/unity-sdk/response.js.meta | 2 +- Runtime/wechat-default/unity-sdk/sdk.js.meta | 2 +- .../wechat-default/unity-sdk/share.js.meta | 2 +- .../wechat-default/unity-sdk/storage.js.meta | 2 +- .../wechat-default/unity-sdk/texture.js.meta | 2 +- Runtime/wechat-default/unity-sdk/touch.meta | 2 +- .../unity-sdk/touch/index.js.meta | 2 +- .../unity-sdk/upload-file.js.meta | 2 +- .../wechat-default/unity-sdk/userinfo.js.meta | 2 +- Runtime/wechat-default/unity-sdk/util.js.meta | 2 +- .../wechat-default/unity-sdk/utils.js.meta | 2 +- .../wechat-default/unity-sdk/video.js.meta | 2 +- Runtime/wechat-default/unity-sdk/video.meta | 2 +- .../unity-sdk/video/index.js.meta | 2 +- Runtime/wechat-default/wasmcode.meta | 2 +- Runtime/wechat-default/wasmcode/game.js.meta | 2 +- Runtime/wechat-default/weapp-adapter.js.meta | 2 +- Runtime/wechat-default/workers.meta | 2 +- Runtime/wechat-default/workers/response.meta | 2 +- .../workers/response/index.js.meta | 2 +- package.json | 15 +- 181 files changed, 2641 insertions(+), 1068 deletions(-) create mode 100644 Editor/BuildProfile/WeixinBuildProfileUpdater.cs create mode 100644 Editor/BuildProfile/WeixinBuildProfileUpdater.cs.meta create mode 100644 Runtime/WXTouchInputModule.cs create mode 100644 Runtime/WXTouchInputModule.cs.meta diff --git a/CHANGELOG.md b/CHANGELOG.md index 53d64d0a4..61b40d7ff 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,23 +6,6 @@ Removed - 删除功能/接口 Fixed - 修复问题 Others - 其他 --> -## 2026-1-13 v0.1.31 【普通更新】 -### Fixed -* 普通:修复glx模式下 createVideo underGameView为true 黑屏的问题 -* 普通:修复build profile在团结1.6之后的导出问题 - -## 2025-11-6 v0.1.30 【重要更新】 -### Feature -* 重要:EmscriptenGLX支持微信压缩纹理 -* 普通:EmscriptenGLX支持Android glReadpixels -* 普通:EmscriptenGLX优化Android CPU与功耗 -* 普通:Metal高帧率下功耗优化 -* 普通:团结引擎buildprofile支持 -### Fixed -* 重要:Metal编码库batch size修复 -* 普通:PageManager相关问题修复 -* 普通:iOS18的微信字体修复 - ## 2025-9-8 v0.1.29 【重要更新】 ### Feature * 普通:本地缓存存在时,UnityWebRequest支持同步方式(API:wx.SetSyncReadCacheEnabled)以加快读取速度 diff --git a/Editor/BuildProfile/WeixinBuildProfileUpdater.cs b/Editor/BuildProfile/WeixinBuildProfileUpdater.cs new file mode 100644 index 000000000..7e7971395 --- /dev/null +++ b/Editor/BuildProfile/WeixinBuildProfileUpdater.cs @@ -0,0 +1,78 @@ +#if TUANJIE_1_6_OR_NEWER && !TUANJIE_1_8_OR_NEWER + +using System.Collections.Generic; +using UnityEditor; +using UnityEditor.ExternalMiniGame; +using UnityEngine; + +namespace WeChatWASM +{ + [InitializeOnLoad] + public class WeixinBuildProfileUpdater + { + static WeixinBuildProfileUpdater() + { + UpdateBuildProfile(); + } + + public static void UpdateBuildProfile() + { + string buildProfilePath = "Assets/Settings/Build Profiles"; + if (!AssetDatabase.IsValidFolder(buildProfilePath)) + { + return; + } + + string[] guids = AssetDatabase.FindAssets("t:BuildProfile", new[] { buildProfilePath }); + foreach (string guid in guids) + { + string assetPath = AssetDatabase.GUIDToAssetPath(guid); + UnityEditor.Build.Profile.BuildProfile buildProfile = AssetDatabase.LoadAssetAtPath(assetPath); + + if (buildProfile != null) + { + bool isDefaultWeixinSettings = buildProfile.miniGameSettings is DefaultWeChatMiniGameSettings; + + // If use DefaultWeChatMiniGameSettings, convert to WeixinMiniGameSettings + if (isDefaultWeixinSettings) + { + var oldSettings = (DefaultWeChatMiniGameSettings)buildProfile.miniGameSettings; + var editor = new WeixinMiniGameSettingsEditor(); + var newSettings = new WeixinMiniGameSettings(editor); + + newSettings.ProjectConf = new WXProjectConf(); + newSettings.SDKOptions = new SDKOptions(); + newSettings.CompileOptions = new CompileOptions(); + newSettings.CompressTexture = new CompressTexture(); + newSettings.FontOptions = new FontOptions(); + + string projJson = JsonUtility.ToJson(oldSettings.ProjectConf, true); + JsonUtility.FromJsonOverwrite(projJson, newSettings.ProjectConf); + string sdkOptionsJson = JsonUtility.ToJson(oldSettings.SDKOptions, true); + JsonUtility.FromJsonOverwrite(sdkOptionsJson, newSettings.SDKOptions); + string compileOptionsJson = JsonUtility.ToJson(oldSettings.CompileOptions, true); + JsonUtility.FromJsonOverwrite(compileOptionsJson, newSettings.CompileOptions); + string compressTextureJson = JsonUtility.ToJson(oldSettings.CompressTexture, true); + JsonUtility.FromJsonOverwrite(compressTextureJson, newSettings.CompressTexture); + string fontOptionsJson = JsonUtility.ToJson(oldSettings.FontOptions, true); + JsonUtility.FromJsonOverwrite(fontOptionsJson, newSettings.FontOptions); + + var property = typeof(UnityEditor.Build.Profile.BuildProfile).GetProperty("miniGameSettings", + System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance); + property.SetValue(buildProfile, newSettings); + buildProfile.miniGameSettings = newSettings; + + EditorUtility.SetDirty(buildProfile); + AssetDatabase.SaveAssets(); + AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(buildProfile)); + + } + + } + } + } + + } + +} +#endif \ No newline at end of file diff --git a/Editor/BuildProfile/WeixinBuildProfileUpdater.cs.meta b/Editor/BuildProfile/WeixinBuildProfileUpdater.cs.meta new file mode 100644 index 000000000..e38a2c474 --- /dev/null +++ b/Editor/BuildProfile/WeixinBuildProfileUpdater.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 741d5b08eb860f748890537f2389546f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs b/Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs index 97225378c..347e6f15e 100644 --- a/Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs +++ b/Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs @@ -26,561 +26,13 @@ namespace WeChatWASM private Dictionary formCheckboxData = new Dictionary(); public Texture tex; + public WXSettingsHelper helper = new WXSettingsHelper(); + public override void OnMiniGameSettingsIMGUI(SerializedObject serializedObject, SerializedProperty miniGameProperty) { - OnSettingsGUI(serializedObject, miniGameProperty); + helper.OnSettingsGUI(serializedObject, miniGameProperty); } - public void OnSettingsGUI(SerializedObject serializedObject, SerializedProperty miniGameProperty) - { - loadData(serializedObject, miniGameProperty); - - scrollRoot = EditorGUILayout.BeginScrollView(scrollRoot); - - GUIStyle linkStyle = new GUIStyle(GUI.skin.label); - linkStyle.normal.textColor = Color.yellow; - linkStyle.hover.textColor = Color.yellow; - linkStyle.stretchWidth = false; - linkStyle.alignment = TextAnchor.UpperLeft; - linkStyle.wordWrap = true; - - foldBaseInfo = EditorGUILayout.Foldout(foldBaseInfo, "基本信息"); - if (foldBaseInfo) - { - EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - - formInput("appid", "游戏AppID"); - formInput("cdn", "游戏资源CDN"); - formInput("projectName", "小游戏项目名"); - formIntPopup("orientation", "游戏方向", new[] { "Portrait", "Landscape", "LandscapeLeft", "LandscapeRight" }, new[] { 0, 1, 2, 3 }); - formInput("memorySize", "UnityHeap预留内存(?)", "单位MB,预分配内存值,超休闲游戏256/中轻度496/重度游戏768,需预估游戏最大UnityHeap值以防止内存自动扩容带来的峰值尖刺。预估方法请查看GIT文档《优化Unity WebGL的内存》"); - - EditorGUILayout.EndVertical(); - } - - foldLoadingConfig = EditorGUILayout.Foldout(foldLoadingConfig, "启动Loading配置"); - if (foldLoadingConfig) - { - EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - - GUILayout.BeginHorizontal(); - string targetBg = "bgImageSrc"; - EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); - tex = (Texture)EditorGUILayout.ObjectField("启动背景图/视频封面", tex, typeof(Texture2D), false); - var currentBgSrc = AssetDatabase.GetAssetPath(tex); - if (!string.IsNullOrEmpty(currentBgSrc) && currentBgSrc != formInputData[targetBg]) - { - formInputData[targetBg] = currentBgSrc; - saveData(serializedObject, miniGameProperty); - } - GUILayout.EndHorizontal(); - - formInput("videoUrl", "加载阶段视频URL"); - formIntPopup("assetLoadType", "首包资源加载方式", new[] { "CDN", "小游戏包内" }, new[] { 0, 1 }); - formCheckbox("compressDataPackage", "压缩首包资源(?)", "将首包资源Brotli压缩, 降低资源大小. 注意: 首次启动耗时可能会增加200ms, 仅推荐使用小游戏分包加载时节省包体大小使用"); - formInput("bundleExcludeExtensions", "不自动缓存文件类型(?)", "(使用;分割)当请求url包含资源'cdn+StreamingAssets'时会自动缓存,但StreamingAssets目录下不是所有文件都需缓存,此选项配置不需要自动缓存的文件拓展名。默认值json"); - formInput("bundleHashLength", "Bundle名称Hash长度(?)", "自定义Bundle文件名中hash部分长度,默认值32,用于缓存控制。"); - formInput("preloadFiles", "预下载文件列表(?)", "使用;间隔,支持模糊匹配"); - - EditorGUILayout.EndVertical(); - } - - foldSDKOptions = EditorGUILayout.Foldout(foldSDKOptions, "SDK功能选项"); - if (foldSDKOptions) - { - EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - - formCheckbox("useFriendRelation", "使用好友关系链"); - formCheckbox("useMiniGameChat", "使用社交组件"); - formCheckbox("preloadWXFont", "预加载微信字体(?)", "在game.js执行开始时预载微信系统字体,运行期间可使用WX.GetWXFont获取微信字体"); - formCheckbox("disableMultiTouch", "禁止多点触控"); - - EditorGUILayout.EndVertical(); - } - - foldDebugOptions = EditorGUILayout.Foldout(foldDebugOptions, "调试编译选项"); - if (foldDebugOptions) - { - EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - // formCheckbox("developBuild", "Development Build"); - formCheckbox("autoProfile", "Auto connect Profiler"); - formCheckbox("scriptOnly", "Scripts Only Build"); -#if TUANJIE_2022_3_OR_NEWER - // TODO: if overwrite by OverwritePlayerSettings - bool UseIL2CPP = PlayerSettings.GetScriptingBackend(BuildTargetGroup.WeixinMiniGame) == ScriptingImplementation.IL2CPP; -#else - bool UseIL2CPP = true; -#endif - formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP); - formCheckbox("profilingFuncs", "Profiling Funcs"); - formCheckbox("profilingMemory", "Profiling Memory"); - - formCheckbox("webgl2", "WebGL2.0(beta)"); - formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案,有助于提升渲染兼容性、降低WebContent进程内存"); - formCheckbox("EmscriptenGLX", "EmscriptenGLX(?)", "是否使用EmscriptenGLX渲染方案"); - formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案,需要开启iOS高性能+模式,有助于提升运行性能,降低iOS功耗"); - formCheckbox("deleteStreamingAssets", "Clear Streaming Assets"); - formCheckbox("cleanBuild", "Clean WebGL Build"); - // formCheckbox("cleanCloudDev", "Clean Cloud Dev"); - formCheckbox("fbslim", "首包资源优化(?)", "导出时自动清理UnityEditor默认打包但游戏项目从未使用的资源,瘦身首包资源体积。(团结引擎已无需开启该能力)", UnityUtil.GetEngineVersion() > 0, (res) => - { - var fbWin = EditorWindow.GetWindow(typeof(WXFbSettingWindow), false, "首包资源优化配置面板", true); - fbWin.minSize = new Vector2(680, 350); - fbWin.Show(); - }); - formCheckbox("autoAdaptScreen", "自适应屏幕尺寸(?)", "移动端旋转屏幕和PC端拉伸窗口时,自动调整画布尺寸"); - formCheckbox("showMonitorSuggestModal", "显示优化建议弹窗"); - formCheckbox("enableProfileStats", "显示性能面板"); - formCheckbox("enableRenderAnalysis", "显示渲染日志(dev only)"); - - { - formCheckbox("brotliMT", "brotli多线程压缩(?)", "开启多线程压缩可以提高出包速度,但会降低压缩率。如若不使用wasm代码分包请勿用多线程出包上线"); - } - EditorGUILayout.EndVertical(); - } - - if (WXConvertCore.IsInstantGameAutoStreaming()) - { - foldInstantGame = EditorGUILayout.Foldout(foldInstantGame, "Instant Game - AutoStreaming"); - if (foldInstantGame) - { - var automaticfillinstantgame = miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame"); - EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - GUILayout.BeginHorizontal(); - EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); - formCheckbox("m_AutomaticFillInstantGame", "自动填写AutoStreaming", "仅在开启AutoStreaming生效"); - GUILayout.EndHorizontal(); - formInput("bundlePathIdentifier", "Bundle Path Identifier"); - formInput("dataFileSubPrefix", "Data File Sub Prefix"); - - EditorGUI.BeginDisabledGroup(true); - formCheckbox("autoUploadFirstBundle", "构建后自动上传首包(?)", "仅在开启AutoStreaming生效", true); - EditorGUI.EndDisabledGroup(); - - GUILayout.BeginHorizontal(); - EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); - GUILayout.Label(new GUIContent("清理AS配置(?)", "如需关闭AutoStreaming选用默认发布方案则需要清理AS配置项目。"), GUILayout.Width(140)); - EditorGUI.BeginDisabledGroup(WXConvertCore.IsInstantGameAutoStreaming()); - if (GUILayout.Button(new GUIContent("恢复"), GUILayout.Width(60))) - { - var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf"); - string identifier = ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue; - string[] identifiers = identifier.Split(";"); - string idStr = ""; - foreach (string id in identifiers) - { - if (id != "AS" && id != "CUS/CustomAB") - { - idStr += id + ";"; - } - } - ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue = idStr.Trim(';'); - - if (ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue == "CUS") - { - ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = ""; - } - loadData(serializedObject, miniGameProperty); - } - EditorGUI.EndDisabledGroup(); - GUILayout.EndHorizontal(); - - EditorGUILayout.BeginHorizontal(); - EditorGUILayout.LabelField(string.Empty); - if (GUILayout.Button(new GUIContent("了解Instant Game AutoStreaming", ""), linkStyle)) - { - Application.OpenURL("https://github.com/wechat-miniprogram/minigame-unity-webgl-transform/blob/main/Design/InstantGameGuide.md"); - } - EditorGUILayout.EndHorizontal(); - EditorGUILayout.EndVertical(); - } - } - - { - foldFontOptions = EditorGUILayout.Foldout(foldFontOptions, "字体配置"); - if (foldFontOptions) - { - EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - formCheckbox("CJK_Unified_Ideographs", "基本汉字(?)", "Unicode [0x4e00, 0x9fff]"); - formCheckbox("C0_Controls_and_Basic_Latin", "基本拉丁语(英文大小写、数字、英文标点)(?)", "Unicode [0x0, 0x7f]"); - formCheckbox("CJK_Symbols_and_Punctuation", "中文标点符号(?)", "Unicode [0x3000, 0x303f]"); - formCheckbox("General_Punctuation", "通用标点符号(?)", "Unicode [0x2000, 0x206f]"); - formCheckbox("Enclosed_CJK_Letters_and_Months", "CJK字母及月份(?)", "Unicode [0x3200, 0x32ff]"); - formCheckbox("Vertical_Forms", "中文竖排标点(?)", "Unicode [0xfe10, 0xfe1f]"); - formCheckbox("CJK_Compatibility_Forms", "CJK兼容符号(?)", "Unicode [0xfe30, 0xfe4f]"); - formCheckbox("Miscellaneous_Symbols", "杂项符号(?)", "Unicode [0x2600, 0x26ff]"); - formCheckbox("CJK_Compatibility", "CJK特殊符号(?)", "Unicode [0x3300, 0x33ff]"); - formCheckbox("Halfwidth_and_Fullwidth_Forms", "全角ASCII、全角中英文标点、半宽片假名、半宽平假名、半宽韩文字母(?)", "Unicode [0xff00, 0xffef]"); - formCheckbox("Dingbats", "装饰符号(?)", "Unicode [0x2700, 0x27bf]"); - formCheckbox("Letterlike_Symbols", "字母式符号(?)", "Unicode [0x2100, 0x214f]"); - formCheckbox("Enclosed_Alphanumerics", "带圈或括号的字母数字(?)", "Unicode [0x2460, 0x24ff]"); - formCheckbox("Number_Forms", "数字形式(?)", "Unicode [0x2150, 0x218f]"); - formCheckbox("Currency_Symbols", "货币符号(?)", "Unicode [0x20a0, 0x20cf]"); - formCheckbox("Arrows", "箭头(?)", "Unicode [0x2190, 0x21ff]"); - formCheckbox("Geometric_Shapes", "几何图形(?)", "Unicode [0x25a0, 0x25ff]"); - formCheckbox("Mathematical_Operators", "数学运算符号(?)", "Unicode [0x2200, 0x22ff]"); - formInput("CustomUnicode", "自定义Unicode(?)", "将填入的所有字符强制加入字体预加载列表"); - EditorGUILayout.EndVertical(); - } - } - - EditorGUILayout.EndScrollView(); - saveData(serializedObject, miniGameProperty); - } - - private void loadData(SerializedObject serializedObject, SerializedProperty miniGameProperty) - { - serializedObject.UpdateIfRequiredOrScript(); - var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf"); - - // Instant Game - if (WXConvertCore.IsInstantGameAutoStreaming()) - { - var automaticfillinstantgame = miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame"); - if (automaticfillinstantgame.boolValue) - { - ProjectConf.FindPropertyRelative("CDN").stringValue = WXConvertCore.GetInstantGameAutoStreamingCDN(); - if (!ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue.Contains("AS;")) - { - ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue += "AS;"; - } - if (!ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue.Contains("CUS/CustomAB;")) - { - ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue += "CUS/CustomAB;"; - } - ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = "CUS"; - } - } - - setData("projectName", ProjectConf.FindPropertyRelative("projectName").stringValue); - setData("appid", ProjectConf.FindPropertyRelative("Appid").stringValue); - setData("cdn", ProjectConf.FindPropertyRelative("CDN").stringValue); - setData("assetLoadType", ProjectConf.FindPropertyRelative("assetLoadType").intValue); - setData("compressDataPackage", ProjectConf.FindPropertyRelative("compressDataPackage").boolValue); - setData("videoUrl", ProjectConf.FindPropertyRelative("VideoUrl").stringValue); - setData("orientation", (int)ProjectConf.FindPropertyRelative("Orientation").enumValueIndex); - //setData("dst", ProjectConf.FindPropertyRelative("relativeDST").stringValue); - setData("bundleHashLength", ProjectConf.FindPropertyRelative("bundleHashLength").intValue.ToString()); - setData("bundlePathIdentifier", ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue); - setData("bundleExcludeExtensions", ProjectConf.FindPropertyRelative("bundleExcludeExtensions").stringValue); - setData("preloadFiles", ProjectConf.FindPropertyRelative("preloadFiles").stringValue); - - var CompileOptions = miniGameProperty.FindPropertyRelative("CompileOptions"); - // setData("developBuild", CompileOptions.FindPropertyRelative("DevelopBuild").boolValue); - setData("autoProfile", CompileOptions.FindPropertyRelative("AutoProfile").boolValue); - setData("scriptOnly", CompileOptions.FindPropertyRelative("ScriptOnly").boolValue); - setData("il2CppOptimizeSize", CompileOptions.FindPropertyRelative("Il2CppOptimizeSize").boolValue); - setData("profilingFuncs", CompileOptions.FindPropertyRelative("profilingFuncs").boolValue); - setData("profilingMemory", CompileOptions.FindPropertyRelative("ProfilingMemory").boolValue); - setData("deleteStreamingAssets", CompileOptions.FindPropertyRelative("DeleteStreamingAssets").boolValue); - setData("cleanBuild", CompileOptions.FindPropertyRelative("CleanBuild").boolValue); - setData("customNodePath", CompileOptions.FindPropertyRelative("CustomNodePath").stringValue); - setData("webgl2", CompileOptions.FindPropertyRelative("Webgl2").boolValue); - setData("iOSPerformancePlus", CompileOptions.FindPropertyRelative("enableIOSPerformancePlus").boolValue); - setData("iOSMetal", CompileOptions.FindPropertyRelative("enableiOSMetal").boolValue); - setData("EmscriptenGLX", CompileOptions.FindPropertyRelative("enableEmscriptenGLX").boolValue); - setData("fbslim", CompileOptions.FindPropertyRelative("fbslim").boolValue); - - var SDKOptions = miniGameProperty.FindPropertyRelative("SDKOptions"); - setData("useFriendRelation", SDKOptions.FindPropertyRelative("UseFriendRelation").boolValue); - setData("useMiniGameChat", SDKOptions.FindPropertyRelative("UseMiniGameChat").boolValue); - setData("preloadWXFont", SDKOptions.FindPropertyRelative("PreloadWXFont").boolValue); - setData("disableMultiTouch", SDKOptions.FindPropertyRelative("disableMultiTouch").boolValue); - setData("bgImageSrc", ProjectConf.FindPropertyRelative("bgImageSrc").stringValue); - tex = AssetDatabase.LoadAssetAtPath(ProjectConf.FindPropertyRelative("bgImageSrc").stringValue); - setData("memorySize", ProjectConf.FindPropertyRelative("MemorySize").intValue.ToString()); - setData("hideAfterCallMain", ProjectConf.FindPropertyRelative("HideAfterCallMain").boolValue); - - setData("dataFileSubPrefix", ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue); - setData("maxStorage", ProjectConf.FindPropertyRelative("maxStorage").intValue.ToString()); - setData("defaultReleaseSize", ProjectConf.FindPropertyRelative("defaultReleaseSize").intValue.ToString()); - setData("texturesHashLength", ProjectConf.FindPropertyRelative("texturesHashLength").intValue.ToString()); - setData("texturesPath", ProjectConf.FindPropertyRelative("texturesPath").stringValue); - setData("needCacheTextures", ProjectConf.FindPropertyRelative("needCacheTextures").boolValue); - setData("loadingBarWidth", ProjectConf.FindPropertyRelative("loadingBarWidth").intValue.ToString()); - setData("needCheckUpdate", ProjectConf.FindPropertyRelative("needCheckUpdate").boolValue); - setData("disableHighPerformanceFallback", ProjectConf.FindPropertyRelative("disableHighPerformanceFallback").boolValue); - setData("autoAdaptScreen", CompileOptions.FindPropertyRelative("autoAdaptScreen").boolValue); - setData("showMonitorSuggestModal", CompileOptions.FindPropertyRelative("showMonitorSuggestModal").boolValue); - setData("enableProfileStats", CompileOptions.FindPropertyRelative("enableProfileStats").boolValue); - setData("enableRenderAnalysis", CompileOptions.FindPropertyRelative("enableRenderAnalysis").boolValue); - setData("brotliMT", CompileOptions.FindPropertyRelative("brotliMT").boolValue); - setData("autoUploadFirstBundle", true); - setData("m_AutomaticFillInstantGame", miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame").boolValue); - - // font options - var FontOptions = miniGameProperty.FindPropertyRelative("FontOptions"); - setData("CJK_Unified_Ideographs", FontOptions.FindPropertyRelative("CJK_Unified_Ideographs").boolValue); - setData("C0_Controls_and_Basic_Latin", FontOptions.FindPropertyRelative("C0_Controls_and_Basic_Latin").boolValue); - setData("CJK_Symbols_and_Punctuation", FontOptions.FindPropertyRelative("CJK_Symbols_and_Punctuation").boolValue); - setData("General_Punctuation", FontOptions.FindPropertyRelative("General_Punctuation").boolValue); - setData("Enclosed_CJK_Letters_and_Months", FontOptions.FindPropertyRelative("Enclosed_CJK_Letters_and_Months").boolValue); - setData("Vertical_Forms", FontOptions.FindPropertyRelative("Vertical_Forms").boolValue); - setData("CJK_Compatibility_Forms", FontOptions.FindPropertyRelative("CJK_Compatibility_Forms").boolValue); - setData("Miscellaneous_Symbols", FontOptions.FindPropertyRelative("Miscellaneous_Symbols").boolValue); - setData("CJK_Compatibility", FontOptions.FindPropertyRelative("CJK_Compatibility").boolValue); - setData("Halfwidth_and_Fullwidth_Forms", FontOptions.FindPropertyRelative("Halfwidth_and_Fullwidth_Forms").boolValue); - setData("Dingbats", FontOptions.FindPropertyRelative("Dingbats").boolValue); - setData("Letterlike_Symbols", FontOptions.FindPropertyRelative("Letterlike_Symbols").boolValue); - setData("Enclosed_Alphanumerics", FontOptions.FindPropertyRelative("Enclosed_Alphanumerics").boolValue); - setData("Number_Forms", FontOptions.FindPropertyRelative("Number_Forms").boolValue); - setData("Currency_Symbols", FontOptions.FindPropertyRelative("Currency_Symbols").boolValue); - setData("Arrows", FontOptions.FindPropertyRelative("Arrows").boolValue); - setData("Geometric_Shapes", FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue); - setData("Mathematical_Operators", FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue); - setData("CustomUnicode", FontOptions.FindPropertyRelative("CustomUnicode").stringValue); - } - - private void saveData(SerializedObject serializedObject, SerializedProperty miniGameProperty) - { - serializedObject.UpdateIfRequiredOrScript(); - - var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf"); - ProjectConf.FindPropertyRelative("projectName").stringValue = getDataInput("projectName"); - ProjectConf.FindPropertyRelative("Appid").stringValue = getDataInput("appid"); - ProjectConf.FindPropertyRelative("CDN").stringValue = getDataInput("cdn"); - ProjectConf.FindPropertyRelative("assetLoadType").intValue = getDataPop("assetLoadType"); - ProjectConf.FindPropertyRelative("compressDataPackage").boolValue = getDataCheckbox("compressDataPackage"); - ProjectConf.FindPropertyRelative("VideoUrl").stringValue = getDataInput("videoUrl"); - ProjectConf.FindPropertyRelative("Orientation").enumValueIndex = getDataPop("orientation"); - ProjectConf.FindPropertyRelative("relativeDST").stringValue = serializedObject.FindProperty("m_BuildPath").stringValue; - ProjectConf.FindPropertyRelative("DST").stringValue = GetAbsolutePath(config.ProjectConf.relativeDST); - - ProjectConf.FindPropertyRelative("bundleHashLength").intValue = int.Parse(getDataInput("bundleHashLength")); - ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue = getDataInput("bundlePathIdentifier"); - ProjectConf.FindPropertyRelative("bundleExcludeExtensions").stringValue = getDataInput("bundleExcludeExtensions"); - ProjectConf.FindPropertyRelative("preloadFiles").stringValue = getDataInput("preloadFiles"); - - var CompileOptions = miniGameProperty.FindPropertyRelative("CompileOptions"); - - CompileOptions.FindPropertyRelative("DevelopBuild").boolValue = serializedObject.FindProperty("m_PlatformSettings").FindPropertyRelative("m_Development").boolValue; - CompileOptions.FindPropertyRelative("AutoProfile").boolValue = getDataCheckbox("autoProfile"); - CompileOptions.FindPropertyRelative("ScriptOnly").boolValue = getDataCheckbox("scriptOnly"); - CompileOptions.FindPropertyRelative("Il2CppOptimizeSize").boolValue = getDataCheckbox("il2CppOptimizeSize"); - CompileOptions.FindPropertyRelative("profilingFuncs").boolValue = getDataCheckbox("profilingFuncs"); - CompileOptions.FindPropertyRelative("ProfilingMemory").boolValue = getDataCheckbox("profilingMemory"); - CompileOptions.FindPropertyRelative("DeleteStreamingAssets").boolValue = getDataCheckbox("deleteStreamingAssets"); - CompileOptions.FindPropertyRelative("CleanBuild").boolValue = getDataCheckbox("cleanBuild"); - CompileOptions.FindPropertyRelative("CustomNodePath").stringValue = getDataInput("customNodePath"); - CompileOptions.FindPropertyRelative("Webgl2").boolValue = getDataCheckbox("webgl2"); - CompileOptions.FindPropertyRelative("enableIOSPerformancePlus").boolValue = getDataCheckbox("iOSPerformancePlus"); - CompileOptions.FindPropertyRelative("enableiOSMetal").boolValue = getDataCheckbox("iOSMetal"); - CompileOptions.FindPropertyRelative("enableEmscriptenGLX").boolValue = getDataCheckbox("EmscriptenGLX"); - CompileOptions.FindPropertyRelative("fbslim").boolValue = getDataCheckbox("fbslim"); - - var SDKOptions = miniGameProperty.FindPropertyRelative("SDKOptions"); - SDKOptions.FindPropertyRelative("UseFriendRelation").boolValue = getDataCheckbox("useFriendRelation"); - SDKOptions.FindPropertyRelative("UseMiniGameChat").boolValue = getDataCheckbox("useMiniGameChat"); - SDKOptions.FindPropertyRelative("PreloadWXFont").boolValue = getDataCheckbox("preloadWXFont"); - SDKOptions.FindPropertyRelative("disableMultiTouch").boolValue = getDataCheckbox("disableMultiTouch"); - ProjectConf.FindPropertyRelative("bgImageSrc").stringValue = getDataInput("bgImageSrc"); - ProjectConf.FindPropertyRelative("MemorySize").intValue = int.Parse(getDataInput("memorySize")); - ProjectConf.FindPropertyRelative("HideAfterCallMain").boolValue = getDataCheckbox("hideAfterCallMain"); - ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = getDataInput("dataFileSubPrefix"); - ProjectConf.FindPropertyRelative("maxStorage").intValue = int.Parse(getDataInput("maxStorage")); - ProjectConf.FindPropertyRelative("defaultReleaseSize").intValue = int.Parse(getDataInput("defaultReleaseSize")); - ProjectConf.FindPropertyRelative("texturesHashLength").intValue = int.Parse(getDataInput("texturesHashLength")); - ProjectConf.FindPropertyRelative("texturesPath").stringValue = getDataInput("texturesPath"); - ProjectConf.FindPropertyRelative("needCacheTextures").boolValue = getDataCheckbox("needCacheTextures"); - ProjectConf.FindPropertyRelative("loadingBarWidth").intValue = int.Parse(getDataInput("loadingBarWidth")); - ProjectConf.FindPropertyRelative("needCheckUpdate").boolValue = getDataCheckbox("needCheckUpdate"); - ProjectConf.FindPropertyRelative("disableHighPerformanceFallback").boolValue = getDataCheckbox("disableHighPerformanceFallback"); - CompileOptions.FindPropertyRelative("autoAdaptScreen").boolValue = getDataCheckbox("autoAdaptScreen"); - CompileOptions.FindPropertyRelative("showMonitorSuggestModal").boolValue = getDataCheckbox("showMonitorSuggestModal"); - CompileOptions.FindPropertyRelative("enableProfileStats").boolValue = getDataCheckbox("enableProfileStats"); - CompileOptions.FindPropertyRelative("enableRenderAnalysis").boolValue = getDataCheckbox("enableRenderAnalysis"); - CompileOptions.FindPropertyRelative("brotliMT").boolValue = getDataCheckbox("brotliMT"); - - // font options - var FontOptions = miniGameProperty.FindPropertyRelative("FontOptions"); - FontOptions.FindPropertyRelative("CJK_Unified_Ideographs").boolValue = getDataCheckbox("CJK_Unified_Ideographs"); - FontOptions.FindPropertyRelative("C0_Controls_and_Basic_Latin").boolValue = getDataCheckbox("C0_Controls_and_Basic_Latin"); - FontOptions.FindPropertyRelative("CJK_Symbols_and_Punctuation").boolValue = getDataCheckbox("CJK_Symbols_and_Punctuation"); - FontOptions.FindPropertyRelative("General_Punctuation").boolValue = getDataCheckbox("General_Punctuation"); - FontOptions.FindPropertyRelative("Enclosed_CJK_Letters_and_Months").boolValue = getDataCheckbox("Enclosed_CJK_Letters_and_Months"); - FontOptions.FindPropertyRelative("Vertical_Forms").boolValue = getDataCheckbox("Vertical_Forms"); - FontOptions.FindPropertyRelative("CJK_Compatibility_Forms").boolValue = getDataCheckbox("CJK_Compatibility_Forms"); - FontOptions.FindPropertyRelative("Miscellaneous_Symbols").boolValue = getDataCheckbox("Miscellaneous_Symbols"); - FontOptions.FindPropertyRelative("CJK_Compatibility").boolValue = getDataCheckbox("CJK_Compatibility"); - FontOptions.FindPropertyRelative("Halfwidth_and_Fullwidth_Forms").boolValue = getDataCheckbox("Halfwidth_and_Fullwidth_Forms"); - FontOptions.FindPropertyRelative("Dingbats").boolValue = getDataCheckbox("Dingbats"); - FontOptions.FindPropertyRelative("Letterlike_Symbols").boolValue = getDataCheckbox("Letterlike_Symbols"); - FontOptions.FindPropertyRelative("Enclosed_Alphanumerics").boolValue = getDataCheckbox("Enclosed_Alphanumerics"); - FontOptions.FindPropertyRelative("Number_Forms").boolValue = getDataCheckbox("Number_Forms"); - FontOptions.FindPropertyRelative("Currency_Symbols").boolValue = getDataCheckbox("Currency_Symbols"); - FontOptions.FindPropertyRelative("Arrows").boolValue = getDataCheckbox("Arrows"); - FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue = getDataCheckbox("Geometric_Shapes"); - FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue = getDataCheckbox("Mathematical_Operators"); - FontOptions.FindPropertyRelative("CustomUnicode").stringValue = getDataInput("CustomUnicode"); - FontOptions.FindPropertyRelative("Arrows").boolValue = getDataCheckbox("Arrows"); - FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue = getDataCheckbox("Geometric_Shapes"); - FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue = getDataCheckbox("Mathematical_Operators"); - FontOptions.FindPropertyRelative("CustomUnicode").stringValue = getDataInput("CustomUnicode"); - - miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame").boolValue = getDataCheckbox("m_AutomaticFillInstantGame"); - - serializedObject.ApplyModifiedProperties(); - } - - private bool getDataCheckbox(string target) - { - if (formCheckboxData.ContainsKey(target)) - return formCheckboxData[target]; - return false; - } - - private string getDataInput(string target) - { - if (formInputData.ContainsKey(target)) - return formInputData[target]; - return ""; - } - - private int getDataPop(string target) - { - if (formIntPopupData.ContainsKey(target)) - return formIntPopupData[target]; - return 0; - } - - private void setData(string target, string value) - { - if (formInputData.ContainsKey(target)) - { - formInputData[target] = value; - } - else - { - formInputData.Add(target, value); - } - } - - private void setData(string target, bool value) - { - if (formCheckboxData.ContainsKey(target)) - { - formCheckboxData[target] = value; - } - else - { - formCheckboxData.Add(target, value); - } - } - - private void setData(string target, int value) - { - if (formIntPopupData.ContainsKey(target)) - { - formIntPopupData[target] = value; - } - else - { - formIntPopupData.Add(target, value); - } - } - - private void formInput(string target, string label, string help = null) - { - if (!formInputData.ContainsKey(target)) - { - formInputData[target] = ""; - } - GUILayout.BeginHorizontal(); - EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); - if (help == null) - { - GUILayout.Label(label, GUILayout.Width(140)); - } - else - { - GUILayout.Label(new GUIContent(label, help), GUILayout.Width(140)); - } - formInputData[target] = GUILayout.TextField(formInputData[target], GUILayout.MaxWidth(EditorGUIUtility.currentViewWidth - 195)); - GUILayout.EndHorizontal(); - } - - private void formCheckbox(string target, string label, string help = null, bool disable = false, Action setting = null) - { - if (!formCheckboxData.ContainsKey(target)) - { - formCheckboxData[target] = false; - } - GUILayout.BeginHorizontal(); - EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); - if (help == null) - { - GUILayout.Label(label, GUILayout.Width(140)); - } - else - { - GUILayout.Label(new GUIContent(label, help), GUILayout.Width(140)); - } - EditorGUI.BeginDisabledGroup(disable); - formCheckboxData[target] = EditorGUILayout.Toggle(disable ? false : formCheckboxData[target]); - - if (setting != null) - { - EditorGUILayout.LabelField("", GUILayout.Width(10)); - // ���ð�ť - if (GUILayout.Button(new GUIContent("����"), GUILayout.Width(40), GUILayout.Height(18))) - { - setting?.Invoke(true); - } - EditorGUILayout.LabelField("", GUILayout.MinWidth(10)); - } - - EditorGUI.EndDisabledGroup(); - - if (setting == null) - EditorGUILayout.LabelField(string.Empty); - GUILayout.EndHorizontal(); - } - - private void formIntPopup(string target, string label, string[] options, int[] values) - { - if (!formIntPopupData.ContainsKey(target)) - { - formIntPopupData[target] = 0; - } - GUILayout.BeginHorizontal(); - EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); - GUILayout.Label(label, GUILayout.Width(140)); - formIntPopupData[target] = EditorGUILayout.IntPopup(formIntPopupData[target], options, values, GUILayout.MaxWidth(EditorGUIUtility.currentViewWidth - 195)); - GUILayout.EndHorizontal(); - } - - public static bool IsAbsolutePath(string path) - { - // 检查是否为空或空白 - if (string.IsNullOrWhiteSpace(path)) - { - return false; - } - - // 在 Windows 上,检查驱动器字母或网络路径 - if (Application.platform == RuntimePlatform.WindowsEditor && Path.IsPathRooted(path)) - { - return true; - } - - // 在 Unix/Linux 和 macOS 上,检查是否以 '/' 开头 - if (Application.platform == RuntimePlatform.OSXEditor && path.StartsWith("/")) - { - return true; - } - - return false; // 否则为相对路径 - } - - public static string GetAbsolutePath(string path) - { - if (IsAbsolutePath(path)) - { - return path; - } - string projectRootPath = System.IO.Path.GetFullPath(Application.dataPath + "/../"); - return Path.Combine(projectRootPath, path); - } } } #endif diff --git a/Editor/WXConvertCore.cs b/Editor/WXConvertCore.cs index b43838284..41de70e8c 100644 --- a/Editor/WXConvertCore.cs +++ b/Editor/WXConvertCore.cs @@ -9,7 +9,7 @@ using UnityEngine; using UnityEngine.Rendering; using LitJson; using UnityEditor.Build; -using System.Linq; + using System.Net; using System.Net.Sockets; using System.Runtime.InteropServices; @@ -34,7 +34,14 @@ namespace WeChatWASM if(UnityUtil.GetEngineVersion() == UnityUtil.EngineVersion.Tuanjie) { var absolutePath = Path.GetFullPath("Packages/com.qq.weixin.minigame/WebGLTemplates/WXTemplate2022TJ"); - PlayerSettings.WeixinMiniGame.template = $"PATH:{absolutePath}"; + if (!Directory.Exists(absolutePath)) + { + PlayerSettings.WeixinMiniGame.template = $"{templateHeader}WXTemplate2022TJ"; + } + else + { + PlayerSettings.WeixinMiniGame.template = $"PATH:{absolutePath}"; + } } else { @@ -421,24 +428,24 @@ namespace WeChatWASM bool showEnableGLX2022Plugin = config.CompileOptions.enableEmscriptenGLX && IsCompatibleWithUnity202203OrNewer(); var glx2022Importer = AssetImporter.GetAtPath(glLibs[0]) as PluginImporter; - #if PLATFORM_WEIXINMINIGAME +#if PLATFORM_WEIXINMINIGAME glx2022Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, showEnableGLX2022Plugin); - #else - glx2022Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2022Plugin); - #endif +#else + glx2022Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2022Plugin); +#endif SetPluginCompatibilityByModifyingMetadataFile(glLibs[0], showEnableGLX2022Plugin); } - + { // unity2021 lib引入 bool showEnableGLX2021Plugin = config.CompileOptions.enableEmscriptenGLX && IsCompatibleWithUnity202102To202203(); var glx2021Importer = AssetImporter.GetAtPath(glLibs[1]) as PluginImporter; - #if PLATFORM_WEIXINMINIGAME +#if PLATFORM_WEIXINMINIGAME glx2021Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, showEnableGLX2021Plugin); - #else - glx2021Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2021Plugin); - #endif +#else + glx2021Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2021Plugin); +#endif SetPluginCompatibilityByModifyingMetadataFile(glLibs[1], showEnableGLX2021Plugin); } @@ -800,9 +807,12 @@ namespace WeChatWASM File.WriteAllText(Path.Combine(config.ProjectConf.DST, miniGameDir, frameworkDir, Path.GetFileName(runtimePath)), dotnetJs, new UTF8Encoding(false)); } - private static void CompressAssemblyBrotli() +private static void CompressAssemblyBrotli() { - GetWeixinMiniGameFilePath("assembly").ToList().ForEach(assembly => UnityUtil.brotli(assembly, assembly + ".br", "8")); + foreach (var assembly in GetWeixinMiniGameFilePath("assembly")) + { + UnityUtil.brotli(assembly, assembly + ".br", "8"); + } } private static void ConvertDotnetFrameworkCode() @@ -966,7 +976,7 @@ namespace WeChatWASM { new Rule() { - old = "if (GameGlobal.unityNamespace.enableProfileStats)", + old = "if (GameGlobal.unityNamespace.enableProfileStats)", newStr = "if (GameGlobal.unityNamespace.enableProfileStats || (typeof GameGlobal.manager.getWXAppCheatMonitor === 'function' && GameGlobal.manager.getWXAppCheatMonitor().shouldForceShowPerfMonitor()))" } }; @@ -1196,7 +1206,15 @@ namespace WeChatWASM File.WriteAllText(bootJson, writer.TextWriter.ToString()); Debug.Log("Env INTERP_OPTS added to blazor.boot.json"); } - return boot["resources"][key].Keys.Select(file => Path.Combine(config.ProjectConf.DST, webglDir, "Code", "wwwroot", "_framework", file)).ToArray(); +var keys = boot["resources"][key].Keys; + var result = new string[keys.Count]; + int index = 0; + foreach (var keyName in keys) + { + result[index] = Path.Combine(config.ProjectConf.DST, webglDir, "Code", "wwwroot", "_framework", keyName); + index++; + } + return result; } [DllImport("newstatehooker.dll", EntryPoint = "add_lua_newstate_hook")] @@ -2007,23 +2025,45 @@ namespace WeChatWASM { StringBuilder sb = new StringBuilder(); // 添加player-connection-ip信息 - try +try { - var ips = Dns.GetHostEntry("").AddressList - .Where(ip => ip.AddressFamily == AddressFamily.InterNetwork) - .Select(ip => ip.ToString()) - .ToList(); + // 获取所有IPv4地址 + var allAddresses = Dns.GetHostEntry("").AddressList; + var ips = new List(); + foreach (var ip in allAddresses) + { + if (ip.AddressFamily == AddressFamily.InterNetwork) + { + ips.Add(ip.ToString()); + } + } // 优先选择局域网IP(192.168.x.x, 10.x.x.x, 172.16.x.x) - var localNetworkIps = ips.Where(ip => - ip.StartsWith("192.168.") || - ip.StartsWith("10.") || - (ip.StartsWith("172.") && int.Parse(ip.Split('.')[1]) >= 16 && int.Parse(ip.Split('.')[1]) <= 31)) - .ToList(); + var localNetworkIps = new List(); + foreach (var ip in ips) + { + if (ip.StartsWith("192.168.") || + ip.StartsWith("10.") || + (ip.StartsWith("172.") && int.Parse(ip.Split('.')[1]) >= 16 && int.Parse(ip.Split('.')[1]) <= 31)) + { + localNetworkIps.Add(ip); + } + } // 如果有局域网IP则使用,否则使用其他IP,最后回退到127.0.0.1 - var selectedIp = localNetworkIps.Any() ? localNetworkIps.First() : - ips.Any() ? ips.First() : "127.0.0.1"; + string selectedIp; + if (localNetworkIps.Count > 0) + { + selectedIp = localNetworkIps[0]; + } + else if (ips.Count > 0) + { + selectedIp = ips[0]; + } + else + { + selectedIp = "127.0.0.1"; + } sb.Append($"player-connection-ip={selectedIp}"); } diff --git a/Editor/WXEditorSettingHelper.cs b/Editor/WXEditorSettingHelper.cs index c6f91baae..a7f7417b2 100644 --- a/Editor/WXEditorSettingHelper.cs +++ b/Editor/WXEditorSettingHelper.cs @@ -80,54 +80,14 @@ namespace WeChatWASM PluginUpdateManager.CheckUpdateOnce(); scrollRoot = EditorGUILayout.BeginScrollView(scrollRoot); - GUIStyle linkStyle = new GUIStyle(GUI.skin.label); - linkStyle.normal.textColor = Color.yellow; - linkStyle.hover.textColor = Color.yellow; - linkStyle.stretchWidth = false; - linkStyle.alignment = TextAnchor.UpperLeft; - linkStyle.wordWrap = true; + GUIStyle linkStyle = GetLinkStyle(); foldBaseInfo = EditorGUILayout.Foldout(foldBaseInfo, "基本信息"); if (foldBaseInfo) { EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - - this.formInput("appid", "游戏AppID"); - this.formInput("cdn", "游戏资源CDN"); - this.formInput("projectName", "小游戏项目名"); - this.formIntPopup("orientation", "游戏方向", new[] { "Portrait", "Landscape", "LandscapeLeft", "LandscapeRight" }, new[] { 0, 1, 2, 3 }); - this.formInput("memorySize", "UnityHeap预留内存(?)", "单位MB,预分配内存值,超休闲游戏256/中轻度496/重度游戏768,需预估游戏最大UnityHeap值以防止内存自动扩容带来的峰值尖刺。预估方法请查看GIT文档《优化Unity WebGL的内存》"); - - GUILayout.BeginHorizontal(); - string targetDst = "dst"; - if (!formInputData.ContainsKey(targetDst)) - { - formInputData[targetDst] = ""; - } - EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); - GUILayout.Label(new GUIContent("导出路径(?)", "支持输入相对于项目根目录的相对路径,如:wxbuild"), GUILayout.Width(140)); - formInputData[targetDst] = GUILayout.TextField(formInputData[targetDst], GUILayout.MaxWidth(EditorGUIUtility.currentViewWidth - 270)); - if (GUILayout.Button(new GUIContent("打开"), GUILayout.Width(40))) - { - if (!formInputData[targetDst].Trim().Equals(string.Empty)) - { - EditorUtility.RevealInFinder(GetAbsolutePath(formInputData[targetDst])); - } - GUIUtility.ExitGUI(); - } - if (GUILayout.Button(new GUIContent("选择"), GUILayout.Width(40))) - { - var dstPath = EditorUtility.SaveFolderPanel("选择你的游戏导出目录", string.Empty, string.Empty); - if (dstPath != string.Empty) - { - formInputData[targetDst] = dstPath; - this.saveData(); - } - GUIUtility.ExitGUI(); - } - GUILayout.EndHorizontal(); - - + OnSettingBaseInfo(); + OnSettingChooseFolder(); EditorGUILayout.EndVertical(); } @@ -148,12 +108,7 @@ namespace WeChatWASM } GUILayout.EndHorizontal(); - this.formInput("videoUrl", "加载阶段视频URL"); - this.formIntPopup("assetLoadType", "首包资源加载方式", new[] { "CDN", "小游戏包内" }, new[] { 0, 1 }); - this.formCheckbox("compressDataPackage", "压缩首包资源(?)", "将首包资源Brotli压缩, 降低资源大小. 注意: 首次启动耗时可能会增加200ms, 仅推荐使用小游戏分包加载时节省包体大小使用"); - this.formInput("bundleExcludeExtensions", "不自动缓存文件类型(?)", "(使用;分割)当请求url包含资源'cdn+StreamingAssets'时会自动缓存,但StreamingAssets目录下不是所有文件都需缓存,此选项配置不需要自动缓存的文件拓展名。默认值json"); - this.formInput("bundleHashLength", "Bundle名称Hash长度(?)", "自定义Bundle文件名中hash部分长度,默认值32,用于缓存控制。"); - this.formInput("preloadFiles", "预下载文件列表(?)", "使用;间隔,支持模糊匹配"); + OnSettingLoadingConfig(); EditorGUILayout.EndVertical(); } @@ -162,55 +117,14 @@ namespace WeChatWASM if (foldSDKOptions) { EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - - this.formCheckbox("useFriendRelation", "使用好友关系链"); - this.formCheckbox("useMiniGameChat", "使用社交组件"); - this.formCheckbox("preloadWXFont", "预加载微信字体(?)", "在game.js执行开始时预载微信系统字体,运行期间可使用WX.GetWXFont获取微信字体"); - this.formCheckbox("disableMultiTouch", "禁用多点触控"); - + OnSettingSDKOptions(); EditorGUILayout.EndVertical(); } foldDebugOptions = EditorGUILayout.Foldout(foldDebugOptions, "调试编译选项"); if (foldDebugOptions) { - EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - - - this.formCheckbox("developBuild", "Development Build", "", false, null, OnDevelopmentBuildToggleChanged); - this.formCheckbox("autoProfile", "Auto connect Profiler"); - this.formCheckbox("scriptOnly", "Scripts Only Build"); - this.formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP); - this.formCheckbox("profilingFuncs", "Profiling Funcs"); - this.formCheckbox("profilingMemory", "Profiling Memory"); - this.formCheckbox("webgl2", "WebGL2.0"); - this.formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案,有助于提升渲染兼容性、降低WebContent进程内存"); - this.formCheckbox("EmscriptenGLX", "EmscriptenGLX(?)", "是否使用EmscriptenGLX渲染方案"); - this.formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案,需要开启iOS高性能+模式,有助于提升运行性能,降低iOS功耗"); - this.formCheckbox("deleteStreamingAssets", "Clear Streaming Assets"); - this.formCheckbox("cleanBuild", "Clean WebGL Build"); - // this.formCheckbox("cleanCloudDev", "Clean Cloud Dev"); - this.formCheckbox("fbslim", "首包资源优化(?)", "导出时自动清理UnityEditor默认打包但游戏项目从未使用的资源,瘦身首包资源体积。(团结引擎已无需开启该能力)", UnityUtil.GetEngineVersion() > 0, (res) => - { - var fbWin = EditorWindow.GetWindow(typeof(WXFbSettingWindow), false, "首包资源优化配置面板", true); - fbWin.minSize = new Vector2(680, 350); - fbWin.Show(); - }); - this.formCheckbox("autoAdaptScreen", "自适应屏幕尺寸(?)", "移动端旋转屏幕和PC端拉伸窗口时,自动调整画布尺寸"); - this.formCheckbox("showMonitorSuggestModal", "显示优化建议弹窗"); - this.formCheckbox("enableProfileStats", "显示性能面板"); - this.formCheckbox("enableRenderAnalysis", "显示渲染日志(dev only)"); - this.formCheckbox("brotliMT", "brotli多线程压缩(?)", "开启多线程压缩可以提高出包速度,但会降低压缩率。如若不使用wasm代码分包请勿用多线程出包上线"); -#if UNITY_6000_0_OR_NEWER - this.formCheckbox("enableWasm2023", "WebAssembly 2023(?)", "WebAssembly 2023包括对WebAssembly.Table和BigInt的支持。(Android (Android 10 or later recommended), iOS (iOS 15 or later recommended))"); -#endif - - if (m_EnablePerfTool) - { - this.formCheckbox("enablePerfAnalysis", "集成性能分析工具", "将性能分析工具集成入Development Build包中", false, null, OnPerfAnalysisFeatureToggleChanged); - } - - EditorGUILayout.EndVertical(); + OnSettingDebugOptions(true); } @@ -265,31 +179,268 @@ namespace WeChatWASM if (foldFontOptions) { EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - this.formCheckbox("CJK_Unified_Ideographs", "基本汉字(?)", "Unicode [0x4e00, 0x9fff]"); - this.formCheckbox("C0_Controls_and_Basic_Latin", "基本拉丁语(英文大小写、数字、英文标点)(?)", "Unicode [0x0, 0x7f]"); - this.formCheckbox("CJK_Symbols_and_Punctuation", "中文标点符号(?)", "Unicode [0x3000, 0x303f]"); - this.formCheckbox("General_Punctuation", "通用标点符号(?)", "Unicode [0x2000, 0x206f]"); - this.formCheckbox("Enclosed_CJK_Letters_and_Months", "CJK字母及月份(?)", "Unicode [0x3200, 0x32ff]"); - this.formCheckbox("Vertical_Forms", "中文竖排标点(?)", "Unicode [0xfe10, 0xfe1f]"); - this.formCheckbox("CJK_Compatibility_Forms", "CJK兼容符号(?)", "Unicode [0xfe30, 0xfe4f]"); - this.formCheckbox("Miscellaneous_Symbols", "杂项符号(?)", "Unicode [0x2600, 0x26ff]"); - this.formCheckbox("CJK_Compatibility", "CJK特殊符号(?)", "Unicode [0x3300, 0x33ff]"); - this.formCheckbox("Halfwidth_and_Fullwidth_Forms", "全角ASCII、全角中英文标点、半宽片假名、半宽平假名、半宽韩文字母(?)", "Unicode [0xff00, 0xffef]"); - this.formCheckbox("Dingbats", "装饰符号(?)", "Unicode [0x2700, 0x27bf]"); - this.formCheckbox("Letterlike_Symbols", "字母式符号(?)", "Unicode [0x2100, 0x214f]"); - this.formCheckbox("Enclosed_Alphanumerics", "带圈或括号的字母数字(?)", "Unicode [0x2460, 0x24ff]"); - this.formCheckbox("Number_Forms", "数字形式(?)", "Unicode [0x2150, 0x218f]"); - this.formCheckbox("Currency_Symbols", "货币符号(?)", "Unicode [0x20a0, 0x20cf]"); - this.formCheckbox("Arrows", "箭头(?)", "Unicode [0x2190, 0x21ff]"); - this.formCheckbox("Geometric_Shapes", "几何图形(?)", "Unicode [0x25a0, 0x25ff]"); - this.formCheckbox("Mathematical_Operators", "数学运算符号(?)", "Unicode [0x2200, 0x22ff]"); - this.formInput("CustomUnicode", "自定义Unicode(?)", "将填入的所有字符强制加入字体预加载列表"); + OnSettingFontOptions(); EditorGUILayout.EndVertical(); } EditorGUILayout.EndScrollView(); } + public void OnSettingsGUI(SerializedObject serializedObject, SerializedProperty miniGameProperty) + { + loadData(serializedObject, miniGameProperty); + + scrollRoot = EditorGUILayout.BeginScrollView(scrollRoot); + + GUIStyle linkStyle = GetLinkStyle(); + + foldBaseInfo = EditorGUILayout.Foldout(foldBaseInfo, "基本信息"); + if (foldBaseInfo) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + OnSettingBaseInfo(); + EditorGUILayout.EndVertical(); + } + + foldLoadingConfig = EditorGUILayout.Foldout(foldLoadingConfig, "启动Loading配置"); + if (foldLoadingConfig) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + + // Call saveData(serializedObject, miniGameProperty) not saveData() + GUILayout.BeginHorizontal(); + string targetBg = "bgImageSrc"; + EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); + tex = (Texture)EditorGUILayout.ObjectField("启动背景图/视频封面", tex, typeof(Texture2D), false); + var currentBgSrc = AssetDatabase.GetAssetPath(tex); + if (!string.IsNullOrEmpty(currentBgSrc) && currentBgSrc != formInputData[targetBg]) + { + formInputData[targetBg] = currentBgSrc; + saveData(serializedObject, miniGameProperty); + } + GUILayout.EndHorizontal(); + + OnSettingLoadingConfig(); + + EditorGUILayout.EndVertical(); + } + + foldSDKOptions = EditorGUILayout.Foldout(foldSDKOptions, "SDK功能选项"); + if (foldSDKOptions) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + OnSettingSDKOptions(); + EditorGUILayout.EndVertical(); + } + + foldDebugOptions = EditorGUILayout.Foldout(foldDebugOptions, "调试编译选项"); + if (foldDebugOptions) + { + OnSettingDebugOptions(false); + } + + if (WXConvertCore.IsInstantGameAutoStreaming()) + { + foldInstantGame = EditorGUILayout.Foldout(foldInstantGame, "Instant Game - AutoStreaming"); + if (foldInstantGame) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + formInput("bundlePathIdentifier", "Bundle Path Identifier"); + formInput("dataFileSubPrefix", "Data File Sub Prefix"); + + EditorGUI.BeginDisabledGroup(true); + formCheckbox("autoUploadFirstBundle", "构建后自动上传首包(?)", "仅在开启AutoStreaming生效", true); + EditorGUI.EndDisabledGroup(); + + GUILayout.BeginHorizontal(); + EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); + GUILayout.Label(new GUIContent("清理AS配置(?)", "如需关闭AutoStreaming选用默认发布方案则需要清理AS配置项目。"), GUILayout.Width(140)); + EditorGUI.BeginDisabledGroup(WXConvertCore.IsInstantGameAutoStreaming()); + // It is not same as OnSettingsGUI(EditorWindow) + if (GUILayout.Button(new GUIContent("恢复"), GUILayout.Width(60))) + { + var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf"); + string identifier = ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue; + string[] identifiers = identifier.Split(";"); + string idStr = ""; + foreach (string id in identifiers) + { + if (id != "AS" && id != "CUS/CustomAB") + { + idStr += id + ";"; + } + } + ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue = idStr.Trim(';'); + + if (ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue == "CUS") + { + ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = ""; + } + loadData(serializedObject, miniGameProperty); + } + EditorGUI.EndDisabledGroup(); + GUILayout.EndHorizontal(); + + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.LabelField(string.Empty); + if (GUILayout.Button(new GUIContent("了解Instant Game AutoStreaming", ""), linkStyle)) + { + Application.OpenURL("https://github.com/wechat-miniprogram/minigame-unity-webgl-transform/blob/main/Design/InstantGameGuide.md"); + } + EditorGUILayout.EndHorizontal(); + EditorGUILayout.EndVertical(); + } + } + + foldFontOptions = EditorGUILayout.Foldout(foldFontOptions, "字体配置"); + if (foldFontOptions) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + OnSettingFontOptions(); + EditorGUILayout.EndVertical(); + } + + EditorGUILayout.EndScrollView(); + saveData(serializedObject, miniGameProperty); + } + + private GUIStyle GetLinkStyle() + { + GUIStyle linkStyle = new GUIStyle(GUI.skin.label); + linkStyle.normal.textColor = Color.yellow; + linkStyle.hover.textColor = Color.yellow; + linkStyle.stretchWidth = false; + linkStyle.alignment = TextAnchor.UpperLeft; + linkStyle.wordWrap = true; + return linkStyle; + } + + private void OnSettingBaseInfo() + { + this.formInput("appid", "游戏AppID"); + this.formInput("cdn", "游戏资源CDN"); + this.formInput("projectName", "小游戏项目名"); + this.formIntPopup("orientation", "游戏方向", new[] { "Portrait", "Landscape", "LandscapeLeft", "LandscapeRight" }, new[] { 0, 1, 2, 3 }); + this.formInput("memorySize", "UnityHeap预留内存(?)", "单位MB,预分配内存值,超休闲游戏256/中轻度496/重度游戏768,需预估游戏最大UnityHeap值以防止内存自动扩容带来的峰值尖刺。预估方法请查看GIT文档《优化Unity WebGL的内存》"); + } + + private void OnSettingChooseFolder() + { + GUILayout.BeginHorizontal(); + string targetDst = "dst"; + if (!formInputData.ContainsKey(targetDst)) + { + formInputData[targetDst] = ""; + } + EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); + GUILayout.Label(new GUIContent("导出路径(?)", "支持输入相对于项目根目录的相对路径,如:wxbuild"), GUILayout.Width(140)); + formInputData[targetDst] = GUILayout.TextField(formInputData[targetDst], GUILayout.MaxWidth(EditorGUIUtility.currentViewWidth - 270)); + if (GUILayout.Button(new GUIContent("打开"), GUILayout.Width(40))) + { + if (!formInputData[targetDst].Trim().Equals(string.Empty)) + { + EditorUtility.RevealInFinder(GetAbsolutePath(formInputData[targetDst])); + } + GUIUtility.ExitGUI(); + } + if (GUILayout.Button(new GUIContent("选择"), GUILayout.Width(40))) + { + var dstPath = EditorUtility.SaveFolderPanel("选择你的游戏导出目录", string.Empty, string.Empty); + if (dstPath != string.Empty) + { + formInputData[targetDst] = dstPath; + this.saveData(); + } + GUIUtility.ExitGUI(); + } + GUILayout.EndHorizontal(); + } + + private void OnSettingLoadingConfig() + { + this.formInput("videoUrl", "加载阶段视频URL"); + this.formIntPopup("assetLoadType", "首包资源加载方式", new[] { "CDN", "小游戏包内" }, new[] { 0, 1 }); + this.formCheckbox("compressDataPackage", "压缩首包资源(?)", "将首包资源Brotli压缩, 降低资源大小. 注意: 首次启动耗时可能会增加200ms, 仅推荐使用小游戏分包加载时节省包体大小使用"); + this.formInput("bundleExcludeExtensions", "不自动缓存文件类型(?)", "(使用;分割)当请求url包含资源'cdn+StreamingAssets'时会自动缓存,但StreamingAssets目录下不是所有文件都需缓存,此选项配置不需要自动缓存的文件拓展名。默认值json"); + this.formInput("bundleHashLength", "Bundle名称Hash长度(?)", "自定义Bundle文件名中hash部分长度,默认值32,用于缓存控制。"); + this.formInput("preloadFiles", "预下载文件列表(?)", "使用;间隔,支持模糊匹配"); + } + + private void OnSettingSDKOptions() + { + formCheckbox("useFriendRelation", "使用好友关系链"); + formCheckbox("useMiniGameChat", "使用社交组件"); + formCheckbox("preloadWXFont", "预加载微信字体(?)", "在game.js执行开始时预载微信系统字体,运行期间可使用WX.GetWXFont获取微信字体"); + formCheckbox("disableMultiTouch", "禁止多点触控"); + } + + private void OnSettingDebugOptions(bool showDevBuild) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + + if (showDevBuild) + { + this.formCheckbox("developBuild", "Development Build", "", false, null, OnDevelopmentBuildToggleChanged); + } + this.formCheckbox("autoProfile", "Auto connect Profiler"); + this.formCheckbox("scriptOnly", "Scripts Only Build"); + this.formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP); + this.formCheckbox("profilingFuncs", "Profiling Funcs"); + this.formCheckbox("profilingMemory", "Profiling Memory"); + this.formCheckbox("webgl2", "WebGL2.0"); + this.formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案,有助于提升渲染兼容性、降低WebContent进程内存"); + this.formCheckbox("EmscriptenGLX", "EmscriptenGLX(?)", "是否使用EmscriptenGLX渲染方案"); + this.formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案,需要开启iOS高性能+模式,有助于提升运行性能,降低iOS功耗"); + this.formCheckbox("deleteStreamingAssets", "Clear Streaming Assets"); + this.formCheckbox("cleanBuild", "Clean WebGL Build"); + // this.formCheckbox("cleanCloudDev", "Clean Cloud Dev"); + this.formCheckbox("fbslim", "首包资源优化(?)", "导出时自动清理UnityEditor默认打包但游戏项目从未使用的资源,瘦身首包资源体积。(团结引擎已无需开启该能力)", UnityUtil.GetEngineVersion() > 0, (res) => + { + var fbWin = EditorWindow.GetWindow(typeof(WXFbSettingWindow), false, "首包资源优化配置面板", true); + fbWin.minSize = new Vector2(680, 350); + fbWin.Show(); + }); + this.formCheckbox("autoAdaptScreen", "自适应屏幕尺寸(?)", "移动端旋转屏幕和PC端拉伸窗口时,自动调整画布尺寸"); + this.formCheckbox("showMonitorSuggestModal", "显示优化建议弹窗"); + this.formCheckbox("enableProfileStats", "显示性能面板"); + this.formCheckbox("enableRenderAnalysis", "显示渲染日志(dev only)"); + this.formCheckbox("brotliMT", "brotli多线程压缩(?)", "开启多线程压缩可以提高出包速度,但会降低压缩率。如若不使用wasm代码分包请勿用多线程出包上线"); +#if UNITY_6000_0_OR_NEWER + this.formCheckbox("enableWasm2023", "WebAssembly 2023(?)", "WebAssembly 2023包括对WebAssembly.Table和BigInt的支持。(Android (Android 10 or later recommended), iOS (iOS 15 or later recommended))"); +#endif + + if (m_EnablePerfTool) + { + this.formCheckbox("enablePerfAnalysis", "集成性能分析工具", "将性能分析工具集成入Development Build包中", false, null, OnPerfAnalysisFeatureToggleChanged); + } + + EditorGUILayout.EndVertical(); + } + + private void OnSettingFontOptions() + { + formCheckbox("CJK_Unified_Ideographs", "基本汉字(?)", "Unicode [0x4e00, 0x9fff]"); + formCheckbox("C0_Controls_and_Basic_Latin", "基本拉丁语(英文大小写、数字、英文标点)(?)", "Unicode [0x0, 0x7f]"); + formCheckbox("CJK_Symbols_and_Punctuation", "中文标点符号(?)", "Unicode [0x3000, 0x303f]"); + formCheckbox("General_Punctuation", "通用标点符号(?)", "Unicode [0x2000, 0x206f]"); + formCheckbox("Enclosed_CJK_Letters_and_Months", "CJK字母及月份(?)", "Unicode [0x3200, 0x32ff]"); + formCheckbox("Vertical_Forms", "中文竖排标点(?)", "Unicode [0xfe10, 0xfe1f]"); + formCheckbox("CJK_Compatibility_Forms", "CJK兼容符号(?)", "Unicode [0xfe30, 0xfe4f]"); + formCheckbox("Miscellaneous_Symbols", "杂项符号(?)", "Unicode [0x2600, 0x26ff]"); + formCheckbox("CJK_Compatibility", "CJK特殊符号(?)", "Unicode [0x3300, 0x33ff]"); + formCheckbox("Halfwidth_and_Fullwidth_Forms", "全角ASCII、全角中英文标点、半宽片假名、半宽平假名、半宽韩文字母(?)", "Unicode [0xff00, 0xffef]"); + formCheckbox("Dingbats", "装饰符号(?)", "Unicode [0x2700, 0x27bf]"); + formCheckbox("Letterlike_Symbols", "字母式符号(?)", "Unicode [0x2100, 0x214f]"); + formCheckbox("Enclosed_Alphanumerics", "带圈或括号的字母数字(?)", "Unicode [0x2460, 0x24ff]"); + formCheckbox("Number_Forms", "数字形式(?)", "Unicode [0x2150, 0x218f]"); + formCheckbox("Currency_Symbols", "货币符号(?)", "Unicode [0x20a0, 0x20cf]"); + formCheckbox("Arrows", "箭头(?)", "Unicode [0x2190, 0x21ff]"); + formCheckbox("Geometric_Shapes", "几何图形(?)", "Unicode [0x25a0, 0x25ff]"); + formCheckbox("Mathematical_Operators", "数学运算符号(?)", "Unicode [0x2200, 0x22ff]"); + formInput("CustomUnicode", "自定义Unicode(?)", "将填入的所有字符强制加入字体预加载列表"); + } + + public void OnBuildButtonGUI(EditorWindow window) { GUIStyle linkStyle = new GUIStyle(GUI.skin.label); @@ -426,162 +577,454 @@ namespace WeChatWASM } } - this.setData("projectName", config.ProjectConf.projectName); - this.setData("appid", config.ProjectConf.Appid); - this.setData("cdn", config.ProjectConf.CDN); - this.setData("assetLoadType", config.ProjectConf.assetLoadType); - this.setData("compressDataPackage", config.ProjectConf.compressDataPackage); - this.setData("videoUrl", config.ProjectConf.VideoUrl); - this.setData("orientation", (int)config.ProjectConf.Orientation); - this.setData("dst", config.ProjectConf.relativeDST); - this.setData("bundleHashLength", config.ProjectConf.bundleHashLength.ToString()); - this.setData("bundlePathIdentifier", config.ProjectConf.bundlePathIdentifier); - this.setData("bundleExcludeExtensions", config.ProjectConf.bundleExcludeExtensions); - this.setData("preloadFiles", config.ProjectConf.preloadFiles); - this.setData("developBuild", config.CompileOptions.DevelopBuild); - this.setData("autoProfile", config.CompileOptions.AutoProfile); - this.setData("scriptOnly", config.CompileOptions.ScriptOnly); - this.setData("il2CppOptimizeSize", config.CompileOptions.Il2CppOptimizeSize); - this.setData("profilingFuncs", config.CompileOptions.profilingFuncs); - this.setData("profilingMemory", config.CompileOptions.ProfilingMemory); - this.setData("deleteStreamingAssets", config.CompileOptions.DeleteStreamingAssets); - this.setData("cleanBuild", config.CompileOptions.CleanBuild); - this.setData("customNodePath", config.CompileOptions.CustomNodePath); - this.setData("webgl2", config.CompileOptions.Webgl2); - this.setData("iOSPerformancePlus", config.CompileOptions.enableIOSPerformancePlus); - this.setData("iOSMetal", config.CompileOptions.enableiOSMetal); - this.setData("EmscriptenGLX", config.CompileOptions.enableEmscriptenGLX); - this.setData("fbslim", config.CompileOptions.fbslim); - this.setData("useFriendRelation", config.SDKOptions.UseFriendRelation); - this.setData("useMiniGameChat", config.SDKOptions.UseMiniGameChat); - this.setData("preloadWXFont", config.SDKOptions.PreloadWXFont); - this.setData("disableMultiTouch", config.SDKOptions.disableMultiTouch); - this.setData("bgImageSrc", config.ProjectConf.bgImageSrc); - tex = AssetDatabase.LoadAssetAtPath(config.ProjectConf.bgImageSrc); - this.setData("memorySize", config.ProjectConf.MemorySize.ToString()); - this.setData("hideAfterCallMain", config.ProjectConf.HideAfterCallMain); - - this.setData("dataFileSubPrefix", config.ProjectConf.dataFileSubPrefix); - this.setData("maxStorage", config.ProjectConf.maxStorage.ToString()); - this.setData("defaultReleaseSize", config.ProjectConf.defaultReleaseSize.ToString()); - this.setData("texturesHashLength", config.ProjectConf.texturesHashLength.ToString()); - this.setData("texturesPath", config.ProjectConf.texturesPath); - this.setData("needCacheTextures", config.ProjectConf.needCacheTextures); - this.setData("loadingBarWidth", config.ProjectConf.loadingBarWidth.ToString()); - this.setData("needCheckUpdate", config.ProjectConf.needCheckUpdate); - this.setData("disableHighPerformanceFallback", config.ProjectConf.disableHighPerformanceFallback); - this.setData("autoAdaptScreen", config.CompileOptions.autoAdaptScreen); - this.setData("showMonitorSuggestModal", config.CompileOptions.showMonitorSuggestModal); - this.setData("enableProfileStats", config.CompileOptions.enableProfileStats); - this.setData("enableRenderAnalysis", config.CompileOptions.enableRenderAnalysis); - this.setData("brotliMT", config.CompileOptions.brotliMT); -#if UNITY_6000_0_OR_NEWER - this.setData("enableWasm2023", config.CompileOptions.enableWasm2023); -#endif - this.setData("enablePerfAnalysis", config.CompileOptions.enablePerfAnalysis); this.setData("autoUploadFirstBundle", true); + loadProjectConfData(config.ProjectConf); + loadSDKOptionsData(config.SDKOptions); + loadCompileOptionsData(config.CompileOptions); + loadFontOptionsData(config.FontOptions); + } - // font options - this.setData("CJK_Unified_Ideographs", config.FontOptions.CJK_Unified_Ideographs); - this.setData("C0_Controls_and_Basic_Latin", config.FontOptions.C0_Controls_and_Basic_Latin); - this.setData("CJK_Symbols_and_Punctuation", config.FontOptions.CJK_Symbols_and_Punctuation); - this.setData("General_Punctuation", config.FontOptions.General_Punctuation); - this.setData("Enclosed_CJK_Letters_and_Months", config.FontOptions.Enclosed_CJK_Letters_and_Months); - this.setData("Vertical_Forms", config.FontOptions.Vertical_Forms); - this.setData("CJK_Compatibility_Forms", config.FontOptions.CJK_Compatibility_Forms); - this.setData("Miscellaneous_Symbols", config.FontOptions.Miscellaneous_Symbols); - this.setData("CJK_Compatibility", config.FontOptions.CJK_Compatibility); - this.setData("Halfwidth_and_Fullwidth_Forms", config.FontOptions.Halfwidth_and_Fullwidth_Forms); - this.setData("Dingbats", config.FontOptions.Dingbats); - this.setData("Letterlike_Symbols", config.FontOptions.Letterlike_Symbols); - this.setData("Enclosed_Alphanumerics", config.FontOptions.Enclosed_Alphanumerics); - this.setData("Number_Forms", config.FontOptions.Number_Forms); - this.setData("Currency_Symbols", config.FontOptions.Currency_Symbols); - this.setData("Arrows", config.FontOptions.Arrows); - this.setData("Geometric_Shapes", config.FontOptions.Geometric_Shapes); - this.setData("Mathematical_Operators", config.FontOptions.Mathematical_Operators); - this.setData("CustomUnicode", config.FontOptions.CustomUnicode); + private void loadData(SerializedObject serializedObject, SerializedProperty miniGameProperty) + { + serializedObject.UpdateIfRequiredOrScript(); + var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf"); + + // Instant Game + if (WXConvertCore.IsInstantGameAutoStreaming()) + { + var automaticfillinstantgame = miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame"); + if (automaticfillinstantgame.boolValue) + { + ProjectConf.FindPropertyRelative("CDN").stringValue = WXConvertCore.GetInstantGameAutoStreamingCDN(); + if (!ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue.Contains("AS;")) + { + ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue += "AS;"; + } + if (!ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue.Contains("CUS/CustomAB;")) + { + ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue += "CUS/CustomAB;"; + } + ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = "CUS"; + } + } + + var _ProjectConf = new WXProjectConf(); + deserializeProjectConf(_ProjectConf, ProjectConf); + loadProjectConfData(_ProjectConf); + + var SDKOptions = miniGameProperty.FindPropertyRelative("SDKOptions"); + var _SDKOptions = new SDKOptions(); + deserializeSDKOptions(_SDKOptions, SDKOptions); + loadSDKOptionsData(_SDKOptions); + + var CompileOptions = miniGameProperty.FindPropertyRelative("CompileOptions"); + var _CompileOptions = new CompileOptions(); + deserializeCompileOptions(_CompileOptions, CompileOptions); + loadCompileOptionsData(_CompileOptions); + + var FontOptions = miniGameProperty.FindPropertyRelative("FontOptions"); + var _FontOptions = new FontOptions(); + deserializeFontOptions(_FontOptions, FontOptions); + loadFontOptionsData(_FontOptions); + } + + private void loadProjectConfData(WXProjectConf ProjectConf) + { + this.setData("projectName", ProjectConf.projectName); + this.setData("appid", ProjectConf.Appid); + this.setData("cdn", ProjectConf.CDN); + this.setData("assetLoadType", ProjectConf.assetLoadType); + this.setData("compressDataPackage", ProjectConf.compressDataPackage); + this.setData("videoUrl", ProjectConf.VideoUrl); + this.setData("orientation", (int)ProjectConf.Orientation); + this.setData("dst", ProjectConf.relativeDST); + this.setData("bundleHashLength", ProjectConf.bundleHashLength.ToString()); + this.setData("bundlePathIdentifier", ProjectConf.bundlePathIdentifier); + this.setData("bundleExcludeExtensions", ProjectConf.bundleExcludeExtensions); + this.setData("preloadFiles", ProjectConf.preloadFiles); + this.setData("bgImageSrc", ProjectConf.bgImageSrc); + + tex = AssetDatabase.LoadAssetAtPath(ProjectConf.bgImageSrc); + this.setData("memorySize", ProjectConf.MemorySize.ToString()); + this.setData("hideAfterCallMain", ProjectConf.HideAfterCallMain); + + this.setData("dataFileSubPrefix", ProjectConf.dataFileSubPrefix); + this.setData("maxStorage", ProjectConf.maxStorage.ToString()); + this.setData("defaultReleaseSize", ProjectConf.defaultReleaseSize.ToString()); + this.setData("texturesHashLength", ProjectConf.texturesHashLength.ToString()); + this.setData("texturesPath", ProjectConf.texturesPath); + this.setData("needCacheTextures", ProjectConf.needCacheTextures); + this.setData("loadingBarWidth", ProjectConf.loadingBarWidth.ToString()); + this.setData("needCheckUpdate", ProjectConf.needCheckUpdate); + this.setData("disableHighPerformanceFallback", ProjectConf.disableHighPerformanceFallback); + } + + private void loadSDKOptionsData(SDKOptions SDKOptions) + { + this.setData("useFriendRelation", SDKOptions.UseFriendRelation); + this.setData("useMiniGameChat", SDKOptions.UseMiniGameChat); + this.setData("preloadWXFont", SDKOptions.PreloadWXFont); + this.setData("disableMultiTouch", SDKOptions.disableMultiTouch); + } + + private void loadCompileOptionsData(CompileOptions CompileOptions) + { + this.setData("developBuild", CompileOptions.DevelopBuild); + this.setData("autoProfile", CompileOptions.AutoProfile); + this.setData("scriptOnly", CompileOptions.ScriptOnly); + this.setData("il2CppOptimizeSize", CompileOptions.Il2CppOptimizeSize); + this.setData("profilingFuncs", CompileOptions.profilingFuncs); + this.setData("profilingMemory", CompileOptions.ProfilingMemory); + this.setData("deleteStreamingAssets", CompileOptions.DeleteStreamingAssets); + this.setData("cleanBuild", CompileOptions.CleanBuild); + this.setData("customNodePath", CompileOptions.CustomNodePath); + this.setData("webgl2", CompileOptions.Webgl2); + this.setData("iOSPerformancePlus", CompileOptions.enableIOSPerformancePlus); + this.setData("iOSMetal", CompileOptions.enableiOSMetal); + this.setData("EmscriptenGLX", CompileOptions.enableEmscriptenGLX); + this.setData("fbslim", CompileOptions.fbslim); + this.setData("autoAdaptScreen", CompileOptions.autoAdaptScreen); + this.setData("showMonitorSuggestModal", CompileOptions.showMonitorSuggestModal); + this.setData("enableProfileStats", CompileOptions.enableProfileStats); + this.setData("enableRenderAnalysis", CompileOptions.enableRenderAnalysis); + this.setData("brotliMT", CompileOptions.brotliMT); +#if UNITY_6000_0_OR_NEWER + this.setData("enableWasm2023", CompileOptions.enableWasm2023); +#endif + this.setData("enablePerfAnalysis", CompileOptions.enablePerfAnalysis); + } + + private void loadFontOptionsData(FontOptions FontOptions) + { + this.setData("CJK_Unified_Ideographs", FontOptions.CJK_Unified_Ideographs); + this.setData("C0_Controls_and_Basic_Latin", FontOptions.C0_Controls_and_Basic_Latin); + this.setData("CJK_Symbols_and_Punctuation", FontOptions.CJK_Symbols_and_Punctuation); + this.setData("General_Punctuation", FontOptions.General_Punctuation); + this.setData("Enclosed_CJK_Letters_and_Months", FontOptions.Enclosed_CJK_Letters_and_Months); + this.setData("Vertical_Forms", FontOptions.Vertical_Forms); + this.setData("CJK_Compatibility_Forms", FontOptions.CJK_Compatibility_Forms); + this.setData("Miscellaneous_Symbols", FontOptions.Miscellaneous_Symbols); + this.setData("CJK_Compatibility", FontOptions.CJK_Compatibility); + this.setData("Halfwidth_and_Fullwidth_Forms", FontOptions.Halfwidth_and_Fullwidth_Forms); + this.setData("Dingbats", FontOptions.Dingbats); + this.setData("Letterlike_Symbols", FontOptions.Letterlike_Symbols); + this.setData("Enclosed_Alphanumerics", FontOptions.Enclosed_Alphanumerics); + this.setData("Number_Forms", FontOptions.Number_Forms); + this.setData("Currency_Symbols", FontOptions.Currency_Symbols); + this.setData("Arrows", FontOptions.Arrows); + this.setData("Geometric_Shapes", FontOptions.Geometric_Shapes); + this.setData("Mathematical_Operators", FontOptions.Mathematical_Operators); + this.setData("CustomUnicode", FontOptions.CustomUnicode); } private void saveData() { - config.ProjectConf.projectName = this.getDataInput("projectName"); - config.ProjectConf.Appid = this.getDataInput("appid"); - config.ProjectConf.CDN = this.getDataInput("cdn"); - config.ProjectConf.assetLoadType = this.getDataPop("assetLoadType"); - config.ProjectConf.compressDataPackage = this.getDataCheckbox("compressDataPackage"); - config.ProjectConf.VideoUrl = this.getDataInput("videoUrl"); - config.ProjectConf.Orientation = (WXScreenOritation)this.getDataPop("orientation"); - config.ProjectConf.relativeDST = this.getDataInput("dst"); - config.ProjectConf.DST = GetAbsolutePath(config.ProjectConf.relativeDST); - config.ProjectConf.bundleHashLength = int.Parse(this.getDataInput("bundleHashLength")); - config.ProjectConf.bundlePathIdentifier = this.getDataInput("bundlePathIdentifier"); - config.ProjectConf.bundleExcludeExtensions = this.getDataInput("bundleExcludeExtensions"); - config.ProjectConf.preloadFiles = this.getDataInput("preloadFiles"); - config.CompileOptions.DevelopBuild = this.getDataCheckbox("developBuild"); - config.CompileOptions.AutoProfile = this.getDataCheckbox("autoProfile"); - config.CompileOptions.ScriptOnly = this.getDataCheckbox("scriptOnly"); - config.CompileOptions.Il2CppOptimizeSize = this.getDataCheckbox("il2CppOptimizeSize"); - config.CompileOptions.profilingFuncs = this.getDataCheckbox("profilingFuncs"); - config.CompileOptions.ProfilingMemory = this.getDataCheckbox("profilingMemory"); - config.CompileOptions.DeleteStreamingAssets = this.getDataCheckbox("deleteStreamingAssets"); - config.CompileOptions.CleanBuild = this.getDataCheckbox("cleanBuild"); - config.CompileOptions.CustomNodePath = this.getDataInput("customNodePath"); - config.CompileOptions.Webgl2 = this.getDataCheckbox("webgl2"); - config.CompileOptions.enableIOSPerformancePlus = this.getDataCheckbox("iOSPerformancePlus"); - config.CompileOptions.enableiOSMetal = this.getDataCheckbox("iOSMetal"); - config.CompileOptions.enableEmscriptenGLX = this.getDataCheckbox("EmscriptenGLX"); - config.CompileOptions.fbslim = this.getDataCheckbox("fbslim"); - config.SDKOptions.UseFriendRelation = this.getDataCheckbox("useFriendRelation"); - config.SDKOptions.UseMiniGameChat = this.getDataCheckbox("useMiniGameChat"); - config.SDKOptions.PreloadWXFont = this.getDataCheckbox("preloadWXFont"); - config.SDKOptions.disableMultiTouch = this.getDataCheckbox("disableMultiTouch"); - config.ProjectConf.bgImageSrc = this.getDataInput("bgImageSrc"); - config.ProjectConf.MemorySize = int.Parse(this.getDataInput("memorySize")); - config.ProjectConf.HideAfterCallMain = this.getDataCheckbox("hideAfterCallMain"); - config.ProjectConf.dataFileSubPrefix = this.getDataInput("dataFileSubPrefix"); - config.ProjectConf.maxStorage = int.Parse(this.getDataInput("maxStorage")); - config.ProjectConf.defaultReleaseSize = int.Parse(this.getDataInput("defaultReleaseSize")); - config.ProjectConf.texturesHashLength = int.Parse(this.getDataInput("texturesHashLength")); - config.ProjectConf.texturesPath = this.getDataInput("texturesPath"); - config.ProjectConf.needCacheTextures = this.getDataCheckbox("needCacheTextures"); - config.ProjectConf.loadingBarWidth = int.Parse(this.getDataInput("loadingBarWidth")); - config.ProjectConf.needCheckUpdate = this.getDataCheckbox("needCheckUpdate"); - config.ProjectConf.disableHighPerformanceFallback = this.getDataCheckbox("disableHighPerformanceFallback"); - config.CompileOptions.autoAdaptScreen = this.getDataCheckbox("autoAdaptScreen"); - config.CompileOptions.showMonitorSuggestModal = this.getDataCheckbox("showMonitorSuggestModal"); - config.CompileOptions.enableProfileStats = this.getDataCheckbox("enableProfileStats"); - config.CompileOptions.enableRenderAnalysis = this.getDataCheckbox("enableRenderAnalysis"); - config.CompileOptions.brotliMT = this.getDataCheckbox("brotliMT"); -#if UNITY_6000_0_OR_NEWER - config.CompileOptions.enableWasm2023 = this.getDataCheckbox("enableWasm2023"); -#endif - config.CompileOptions.enablePerfAnalysis = this.getDataCheckbox("enablePerfAnalysis"); - - // font options - config.FontOptions.CJK_Unified_Ideographs = this.getDataCheckbox("CJK_Unified_Ideographs"); - config.FontOptions.C0_Controls_and_Basic_Latin = this.getDataCheckbox("C0_Controls_and_Basic_Latin"); - config.FontOptions.CJK_Symbols_and_Punctuation = this.getDataCheckbox("CJK_Symbols_and_Punctuation"); - config.FontOptions.General_Punctuation = this.getDataCheckbox("General_Punctuation"); - config.FontOptions.Enclosed_CJK_Letters_and_Months = this.getDataCheckbox("Enclosed_CJK_Letters_and_Months"); - config.FontOptions.Vertical_Forms = this.getDataCheckbox("Vertical_Forms"); - config.FontOptions.CJK_Compatibility_Forms = this.getDataCheckbox("CJK_Compatibility_Forms"); - config.FontOptions.Miscellaneous_Symbols = this.getDataCheckbox("Miscellaneous_Symbols"); - config.FontOptions.CJK_Compatibility = this.getDataCheckbox("CJK_Compatibility"); - config.FontOptions.Halfwidth_and_Fullwidth_Forms = this.getDataCheckbox("Halfwidth_and_Fullwidth_Forms"); - config.FontOptions.Dingbats = this.getDataCheckbox("Dingbats"); - config.FontOptions.Letterlike_Symbols = this.getDataCheckbox("Letterlike_Symbols"); - config.FontOptions.Enclosed_Alphanumerics = this.getDataCheckbox("Enclosed_Alphanumerics"); - config.FontOptions.Number_Forms = this.getDataCheckbox("Number_Forms"); - config.FontOptions.Currency_Symbols = this.getDataCheckbox("Currency_Symbols"); - config.FontOptions.Arrows = this.getDataCheckbox("Arrows"); - config.FontOptions.Geometric_Shapes = this.getDataCheckbox("Geometric_Shapes"); - config.FontOptions.Mathematical_Operators = this.getDataCheckbox("Mathematical_Operators"); - config.FontOptions.CustomUnicode = this.getDataInput("CustomUnicode"); + saveProjectConfData(config.ProjectConf); + saveSDKOptionsData(config.SDKOptions); + saveCompileOptionsData(config.CompileOptions); + saveFontOptionsData(config.FontOptions); ApplyPerfAnalysisSetting(); } + private void saveData(SerializedObject serializedObject, SerializedProperty miniGameProperty) + { + serializedObject.UpdateIfRequiredOrScript(); + + var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf"); + var _ProjectConf = new WXProjectConf(); + saveProjectConfData(_ProjectConf); + serializeProjectConf(_ProjectConf, ProjectConf); + + var CompileOptions = miniGameProperty.FindPropertyRelative("CompileOptions"); + var _CompileOptions = new CompileOptions(); + saveCompileOptionsData(_CompileOptions); + serializeCompileOptions(_CompileOptions, CompileOptions); + + var SDKOptions = miniGameProperty.FindPropertyRelative("SDKOptions"); + var _SDKOptions = new SDKOptions(); + saveSDKOptionsData(_SDKOptions); + serializeSDKOptions(_SDKOptions, SDKOptions); + + var FontOptions = miniGameProperty.FindPropertyRelative("FontOptions"); + var _FontOptions = new FontOptions(); + saveFontOptionsData(_FontOptions); + serializeFontOptions(_FontOptions, FontOptions); + + miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame").boolValue = getDataCheckbox("m_AutomaticFillInstantGame"); + + serializedObject.ApplyModifiedProperties(); + } + + private void saveProjectConfData(WXProjectConf ProjectConf) + { + ProjectConf.projectName = this.getDataInput("projectName"); + ProjectConf.Appid = this.getDataInput("appid"); + ProjectConf.CDN = this.getDataInput("cdn"); + ProjectConf.assetLoadType = this.getDataPop("assetLoadType"); + ProjectConf.compressDataPackage = this.getDataCheckbox("compressDataPackage"); + ProjectConf.VideoUrl = this.getDataInput("videoUrl"); + ProjectConf.Orientation = (WXScreenOritation)this.getDataPop("orientation"); + ProjectConf.relativeDST = this.getDataInput("dst"); + ProjectConf.DST = GetAbsolutePath(ProjectConf.relativeDST); + ProjectConf.bundleHashLength = int.Parse(this.getDataInput("bundleHashLength")); + ProjectConf.bundlePathIdentifier = this.getDataInput("bundlePathIdentifier"); + ProjectConf.bundleExcludeExtensions = this.getDataInput("bundleExcludeExtensions"); + ProjectConf.preloadFiles = this.getDataInput("preloadFiles"); + + ProjectConf.bgImageSrc = this.getDataInput("bgImageSrc"); + ProjectConf.MemorySize = int.Parse(this.getDataInput("memorySize")); + ProjectConf.HideAfterCallMain = this.getDataCheckbox("hideAfterCallMain"); + ProjectConf.dataFileSubPrefix = this.getDataInput("dataFileSubPrefix"); + ProjectConf.maxStorage = int.Parse(this.getDataInput("maxStorage")); + ProjectConf.defaultReleaseSize = int.Parse(this.getDataInput("defaultReleaseSize")); + ProjectConf.texturesHashLength = int.Parse(this.getDataInput("texturesHashLength")); + ProjectConf.texturesPath = this.getDataInput("texturesPath"); + ProjectConf.needCacheTextures = this.getDataCheckbox("needCacheTextures"); + ProjectConf.loadingBarWidth = int.Parse(this.getDataInput("loadingBarWidth")); + ProjectConf.needCheckUpdate = this.getDataCheckbox("needCheckUpdate"); + ProjectConf.disableHighPerformanceFallback = this.getDataCheckbox("disableHighPerformanceFallback"); + } + + private void saveSDKOptionsData(SDKOptions SDKOptions) + { + SDKOptions.UseFriendRelation = this.getDataCheckbox("useFriendRelation"); + SDKOptions.UseMiniGameChat = this.getDataCheckbox("useMiniGameChat"); + SDKOptions.PreloadWXFont = this.getDataCheckbox("preloadWXFont"); + SDKOptions.disableMultiTouch = this.getDataCheckbox("disableMultiTouch"); + } + + private void saveCompileOptionsData(CompileOptions CompileOptions) + { + CompileOptions.DevelopBuild = this.getDataCheckbox("developBuild"); + CompileOptions.AutoProfile = this.getDataCheckbox("autoProfile"); + CompileOptions.ScriptOnly = this.getDataCheckbox("scriptOnly"); + CompileOptions.Il2CppOptimizeSize = this.getDataCheckbox("il2CppOptimizeSize"); + CompileOptions.profilingFuncs = this.getDataCheckbox("profilingFuncs"); + CompileOptions.ProfilingMemory = this.getDataCheckbox("profilingMemory"); + CompileOptions.DeleteStreamingAssets = this.getDataCheckbox("deleteStreamingAssets"); + CompileOptions.CleanBuild = this.getDataCheckbox("cleanBuild"); + CompileOptions.CustomNodePath = this.getDataInput("customNodePath"); + CompileOptions.Webgl2 = this.getDataCheckbox("webgl2"); + CompileOptions.enableIOSPerformancePlus = this.getDataCheckbox("iOSPerformancePlus"); + CompileOptions.enableiOSMetal = this.getDataCheckbox("iOSMetal"); + CompileOptions.enableEmscriptenGLX = this.getDataCheckbox("EmscriptenGLX"); + CompileOptions.fbslim = this.getDataCheckbox("fbslim"); + + CompileOptions.autoAdaptScreen = this.getDataCheckbox("autoAdaptScreen"); + CompileOptions.showMonitorSuggestModal = this.getDataCheckbox("showMonitorSuggestModal"); + CompileOptions.enableProfileStats = this.getDataCheckbox("enableProfileStats"); + CompileOptions.enableRenderAnalysis = this.getDataCheckbox("enableRenderAnalysis"); + CompileOptions.brotliMT = this.getDataCheckbox("brotliMT"); +#if UNITY_6000_0_OR_NEWER + CompileOptions.enableWasm2023 = this.getDataCheckbox("enableWasm2023"); +#endif + CompileOptions.enablePerfAnalysis = this.getDataCheckbox("enablePerfAnalysis"); + } + + private void saveFontOptionsData(FontOptions FontOptions) + { + FontOptions.CJK_Unified_Ideographs = this.getDataCheckbox("CJK_Unified_Ideographs"); + FontOptions.C0_Controls_and_Basic_Latin = this.getDataCheckbox("C0_Controls_and_Basic_Latin"); + FontOptions.CJK_Symbols_and_Punctuation = this.getDataCheckbox("CJK_Symbols_and_Punctuation"); + FontOptions.General_Punctuation = this.getDataCheckbox("General_Punctuation"); + FontOptions.Enclosed_CJK_Letters_and_Months = this.getDataCheckbox("Enclosed_CJK_Letters_and_Months"); + FontOptions.Vertical_Forms = this.getDataCheckbox("Vertical_Forms"); + FontOptions.CJK_Compatibility_Forms = this.getDataCheckbox("CJK_Compatibility_Forms"); + FontOptions.Miscellaneous_Symbols = this.getDataCheckbox("Miscellaneous_Symbols"); + FontOptions.CJK_Compatibility = this.getDataCheckbox("CJK_Compatibility"); + FontOptions.Halfwidth_and_Fullwidth_Forms = this.getDataCheckbox("Halfwidth_and_Fullwidth_Forms"); + FontOptions.Dingbats = this.getDataCheckbox("Dingbats"); + FontOptions.Letterlike_Symbols = this.getDataCheckbox("Letterlike_Symbols"); + FontOptions.Enclosed_Alphanumerics = this.getDataCheckbox("Enclosed_Alphanumerics"); + FontOptions.Number_Forms = this.getDataCheckbox("Number_Forms"); + FontOptions.Currency_Symbols = this.getDataCheckbox("Currency_Symbols"); + FontOptions.Arrows = this.getDataCheckbox("Arrows"); + FontOptions.Geometric_Shapes = this.getDataCheckbox("Geometric_Shapes"); + FontOptions.Mathematical_Operators = this.getDataCheckbox("Mathematical_Operators"); + FontOptions.CustomUnicode = this.getDataInput("CustomUnicode"); + } + + private void deserializeProjectConf(WXProjectConf _ProjectConf, SerializedProperty ProjectConf) + { + _ProjectConf.projectName = ProjectConf.FindPropertyRelative("projectName").stringValue; + _ProjectConf.Appid = ProjectConf.FindPropertyRelative("Appid").stringValue; + _ProjectConf.CDN = ProjectConf.FindPropertyRelative("CDN").stringValue; + _ProjectConf.assetLoadType = ProjectConf.FindPropertyRelative("assetLoadType").intValue; + _ProjectConf.compressDataPackage = ProjectConf.FindPropertyRelative("compressDataPackage").boolValue; + _ProjectConf.VideoUrl = ProjectConf.FindPropertyRelative("VideoUrl").stringValue; + _ProjectConf.Orientation = (WXScreenOritation)ProjectConf.FindPropertyRelative("Orientation").enumValueIndex; + _ProjectConf.relativeDST = ProjectConf.FindPropertyRelative("relativeDST").stringValue; + _ProjectConf.DST = ProjectConf.FindPropertyRelative("DST").stringValue; + + _ProjectConf.bundleHashLength = ProjectConf.FindPropertyRelative("bundleHashLength").intValue; + _ProjectConf.bundlePathIdentifier = ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue; + _ProjectConf.bundleExcludeExtensions = ProjectConf.FindPropertyRelative("bundleExcludeExtensions").stringValue; + _ProjectConf.preloadFiles = ProjectConf.FindPropertyRelative("preloadFiles").stringValue; + _ProjectConf.bgImageSrc = ProjectConf.FindPropertyRelative("bgImageSrc").stringValue; + _ProjectConf.MemorySize = ProjectConf.FindPropertyRelative("MemorySize").intValue; + _ProjectConf.HideAfterCallMain = ProjectConf.FindPropertyRelative("HideAfterCallMain").boolValue; + _ProjectConf.dataFileSubPrefix = ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue; + _ProjectConf.maxStorage = ProjectConf.FindPropertyRelative("maxStorage").intValue; + _ProjectConf.defaultReleaseSize = ProjectConf.FindPropertyRelative("defaultReleaseSize").intValue; + _ProjectConf.texturesHashLength = ProjectConf.FindPropertyRelative("texturesHashLength").intValue; + _ProjectConf.texturesPath = ProjectConf.FindPropertyRelative("texturesPath").stringValue; + _ProjectConf.needCacheTextures = ProjectConf.FindPropertyRelative("needCacheTextures").boolValue; + _ProjectConf.loadingBarWidth = ProjectConf.FindPropertyRelative("loadingBarWidth").intValue; + _ProjectConf.needCheckUpdate = ProjectConf.FindPropertyRelative("needCheckUpdate").boolValue; + _ProjectConf.disableHighPerformanceFallback = ProjectConf.FindPropertyRelative("disableHighPerformanceFallback").boolValue; + } + private void serializeProjectConf(WXProjectConf _ProjectConf, SerializedProperty ProjectConf) + { + ProjectConf.FindPropertyRelative("projectName").stringValue = _ProjectConf.projectName; + ProjectConf.FindPropertyRelative("Appid").stringValue = _ProjectConf.Appid; + ProjectConf.FindPropertyRelative("CDN").stringValue = _ProjectConf.CDN; + ProjectConf.FindPropertyRelative("assetLoadType").intValue = _ProjectConf.assetLoadType; + ProjectConf.FindPropertyRelative("compressDataPackage").boolValue = _ProjectConf.compressDataPackage; + ProjectConf.FindPropertyRelative("VideoUrl").stringValue = _ProjectConf.VideoUrl; + ProjectConf.FindPropertyRelative("Orientation").enumValueIndex = (int)_ProjectConf.Orientation; + ProjectConf.FindPropertyRelative("relativeDST").stringValue = _ProjectConf.relativeDST; + ProjectConf.FindPropertyRelative("DST").stringValue = _ProjectConf.DST; + + ProjectConf.FindPropertyRelative("bundleHashLength").intValue = _ProjectConf.bundleHashLength; + ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue = _ProjectConf.bundlePathIdentifier; + ProjectConf.FindPropertyRelative("bundleExcludeExtensions").stringValue = _ProjectConf.bundleExcludeExtensions; + ProjectConf.FindPropertyRelative("preloadFiles").stringValue = _ProjectConf.preloadFiles; + ProjectConf.FindPropertyRelative("bgImageSrc").stringValue = _ProjectConf.bgImageSrc; + ProjectConf.FindPropertyRelative("MemorySize").intValue = _ProjectConf.MemorySize; + ProjectConf.FindPropertyRelative("HideAfterCallMain").boolValue = _ProjectConf.HideAfterCallMain; + ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = _ProjectConf.dataFileSubPrefix; + ProjectConf.FindPropertyRelative("maxStorage").intValue = _ProjectConf.maxStorage; + ProjectConf.FindPropertyRelative("defaultReleaseSize").intValue = _ProjectConf.defaultReleaseSize; + ProjectConf.FindPropertyRelative("texturesHashLength").intValue = _ProjectConf.texturesHashLength; + ProjectConf.FindPropertyRelative("texturesPath").stringValue = _ProjectConf.texturesPath; + ProjectConf.FindPropertyRelative("needCacheTextures").boolValue = _ProjectConf.needCacheTextures; + ProjectConf.FindPropertyRelative("loadingBarWidth").intValue = _ProjectConf.loadingBarWidth; + ProjectConf.FindPropertyRelative("needCheckUpdate").boolValue = _ProjectConf.needCheckUpdate; + ProjectConf.FindPropertyRelative("disableHighPerformanceFallback").boolValue = _ProjectConf.disableHighPerformanceFallback; + + //miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame").boolValue = getDataCheckbox("m_AutomaticFillInstantGame"); + + } + + private void deserializeSDKOptions(SDKOptions _SDKOptions, SerializedProperty SDKOptions) + { + _SDKOptions.UseFriendRelation = SDKOptions.FindPropertyRelative("UseFriendRelation").boolValue; + _SDKOptions.UseMiniGameChat = SDKOptions.FindPropertyRelative("UseMiniGameChat").boolValue; + _SDKOptions.PreloadWXFont = SDKOptions.FindPropertyRelative("PreloadWXFont").boolValue; + _SDKOptions.disableMultiTouch = SDKOptions.FindPropertyRelative("disableMultiTouch").boolValue; + } + private void serializeSDKOptions(SDKOptions _SDKOptionsf, SerializedProperty SDKOptions) + { + SDKOptions.FindPropertyRelative("UseFriendRelation").boolValue = _SDKOptionsf.UseFriendRelation; + SDKOptions.FindPropertyRelative("UseMiniGameChat").boolValue = _SDKOptionsf.UseMiniGameChat; + SDKOptions.FindPropertyRelative("PreloadWXFont").boolValue = _SDKOptionsf.PreloadWXFont; + SDKOptions.FindPropertyRelative("disableMultiTouch").boolValue = _SDKOptionsf.disableMultiTouch; + } + + private void deserializeCompileOptions(CompileOptions _CompileOptions, SerializedProperty CompileOptions) + { + //CompileOptions.FindPropertyRelative("DevelopBuild").boolValue = serializedObject.FindProperty("m_PlatformSettings").FindPropertyRelative("m_Development").boolValue; + _CompileOptions.DevelopBuild = CompileOptions.FindPropertyRelative("DevelopBuild").boolValue; + _CompileOptions.AutoProfile = CompileOptions.FindPropertyRelative("AutoProfile").boolValue; + _CompileOptions.ScriptOnly = CompileOptions.FindPropertyRelative("ScriptOnly").boolValue; + _CompileOptions.Il2CppOptimizeSize = CompileOptions.FindPropertyRelative("Il2CppOptimizeSize").boolValue; + _CompileOptions.profilingFuncs = CompileOptions.FindPropertyRelative("profilingFuncs").boolValue; + _CompileOptions.ProfilingMemory = CompileOptions.FindPropertyRelative("ProfilingMemory").boolValue; + _CompileOptions.DeleteStreamingAssets = CompileOptions.FindPropertyRelative("DeleteStreamingAssets").boolValue; + _CompileOptions.CleanBuild = CompileOptions.FindPropertyRelative("CleanBuild").boolValue; + _CompileOptions.CustomNodePath = CompileOptions.FindPropertyRelative("CustomNodePath").stringValue; + _CompileOptions.Webgl2 = CompileOptions.FindPropertyRelative("Webgl2").boolValue; + _CompileOptions.enableIOSPerformancePlus = CompileOptions.FindPropertyRelative("enableIOSPerformancePlus").boolValue; + _CompileOptions.enableiOSMetal = CompileOptions.FindPropertyRelative("enableiOSMetal").boolValue; + _CompileOptions.enableEmscriptenGLX = CompileOptions.FindPropertyRelative("enableEmscriptenGLX").boolValue; + _CompileOptions.fbslim = CompileOptions.FindPropertyRelative("fbslim").boolValue; + + _CompileOptions.autoAdaptScreen = CompileOptions.FindPropertyRelative("autoAdaptScreen").boolValue; + _CompileOptions.showMonitorSuggestModal = CompileOptions.FindPropertyRelative("showMonitorSuggestModal").boolValue; + _CompileOptions.enableProfileStats = CompileOptions.FindPropertyRelative("enableProfileStats").boolValue; + _CompileOptions.enableRenderAnalysis = CompileOptions.FindPropertyRelative("enableRenderAnalysis").boolValue; + _CompileOptions.brotliMT = CompileOptions.FindPropertyRelative("brotliMT").boolValue; +#if UNITY_6000_0_OR_NEWER + _CompileOptions.enableWasm2023 = CompileOptions.FindPropertyRelative("enableWasm2023").boolValue; +#endif + _CompileOptions.enablePerfAnalysis = CompileOptions.FindPropertyRelative("enablePerfAnalysis").boolValue; + } + private void serializeCompileOptions(CompileOptions _CompileOptions, SerializedProperty CompileOptions) + { + //CompileOptions.FindPropertyRelative("DevelopBuild").boolValue = serializedObject.FindProperty("m_PlatformSettings").FindPropertyRelative("m_Development").boolValue; + CompileOptions.FindPropertyRelative("AutoProfile").boolValue = _CompileOptions.AutoProfile; + CompileOptions.FindPropertyRelative("ScriptOnly").boolValue = _CompileOptions.ScriptOnly; + CompileOptions.FindPropertyRelative("Il2CppOptimizeSize").boolValue = _CompileOptions.Il2CppOptimizeSize; + CompileOptions.FindPropertyRelative("profilingFuncs").boolValue = _CompileOptions.profilingFuncs; + CompileOptions.FindPropertyRelative("ProfilingMemory").boolValue = _CompileOptions.ProfilingMemory; + CompileOptions.FindPropertyRelative("DeleteStreamingAssets").boolValue = _CompileOptions.DeleteStreamingAssets; + CompileOptions.FindPropertyRelative("CleanBuild").boolValue = _CompileOptions.CleanBuild; + CompileOptions.FindPropertyRelative("CustomNodePath").stringValue = _CompileOptions.CustomNodePath; + CompileOptions.FindPropertyRelative("Webgl2").boolValue = _CompileOptions.Webgl2; + CompileOptions.FindPropertyRelative("enableIOSPerformancePlus").boolValue = _CompileOptions.enableIOSPerformancePlus; + CompileOptions.FindPropertyRelative("enableiOSMetal").boolValue = _CompileOptions.enableiOSMetal; + CompileOptions.FindPropertyRelative("enableEmscriptenGLX").boolValue = _CompileOptions.enableEmscriptenGLX; + CompileOptions.FindPropertyRelative("fbslim").boolValue = _CompileOptions.fbslim; + + CompileOptions.FindPropertyRelative("autoAdaptScreen").boolValue = _CompileOptions.autoAdaptScreen; + CompileOptions.FindPropertyRelative("showMonitorSuggestModal").boolValue = _CompileOptions.showMonitorSuggestModal; + CompileOptions.FindPropertyRelative("enableProfileStats").boolValue = _CompileOptions.enableProfileStats; + CompileOptions.FindPropertyRelative("enableRenderAnalysis").boolValue = _CompileOptions.enableRenderAnalysis; + CompileOptions.FindPropertyRelative("brotliMT").boolValue = _CompileOptions.brotliMT; + + } + + private void deserializeFontOptions(FontOptions _FontOptions, SerializedProperty FontOptions) + { + _FontOptions.CJK_Unified_Ideographs = FontOptions.FindPropertyRelative("CJK_Unified_Ideographs").boolValue; + _FontOptions.C0_Controls_and_Basic_Latin = FontOptions.FindPropertyRelative("C0_Controls_and_Basic_Latin").boolValue; + _FontOptions.CJK_Symbols_and_Punctuation = FontOptions.FindPropertyRelative("CJK_Symbols_and_Punctuation").boolValue; + _FontOptions.General_Punctuation = FontOptions.FindPropertyRelative("General_Punctuation").boolValue; + _FontOptions.Enclosed_CJK_Letters_and_Months = FontOptions.FindPropertyRelative("Enclosed_CJK_Letters_and_Months").boolValue; + _FontOptions.Vertical_Forms = FontOptions.FindPropertyRelative("Vertical_Forms").boolValue; + _FontOptions.CJK_Compatibility_Forms = FontOptions.FindPropertyRelative("CJK_Compatibility_Forms").boolValue; + _FontOptions.Miscellaneous_Symbols = FontOptions.FindPropertyRelative("Miscellaneous_Symbols").boolValue; + _FontOptions.CJK_Compatibility = FontOptions.FindPropertyRelative("CJK_Compatibility").boolValue; + _FontOptions.Halfwidth_and_Fullwidth_Forms = FontOptions.FindPropertyRelative("Halfwidth_and_Fullwidth_Forms").boolValue; + _FontOptions.Dingbats = FontOptions.FindPropertyRelative("Dingbats").boolValue; + _FontOptions.Letterlike_Symbols = FontOptions.FindPropertyRelative("Letterlike_Symbols").boolValue; + _FontOptions.Enclosed_Alphanumerics = FontOptions.FindPropertyRelative("Enclosed_Alphanumerics").boolValue; + _FontOptions.Number_Forms = FontOptions.FindPropertyRelative("Number_Forms").boolValue; + _FontOptions.Currency_Symbols = FontOptions.FindPropertyRelative("Currency_Symbols").boolValue; + _FontOptions.Arrows = FontOptions.FindPropertyRelative("Arrows").boolValue; + _FontOptions.Geometric_Shapes = FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue; + _FontOptions.Mathematical_Operators = FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue; + _FontOptions.CustomUnicode = FontOptions.FindPropertyRelative("CustomUnicode").stringValue; + } + private void serializeFontOptions(FontOptions _FontOptions, SerializedProperty FontOptions) + { + FontOptions.FindPropertyRelative("CJK_Unified_Ideographs").boolValue = _FontOptions.CJK_Unified_Ideographs; + FontOptions.FindPropertyRelative("C0_Controls_and_Basic_Latin").boolValue = _FontOptions.C0_Controls_and_Basic_Latin; + FontOptions.FindPropertyRelative("CJK_Symbols_and_Punctuation").boolValue = _FontOptions.CJK_Symbols_and_Punctuation; + FontOptions.FindPropertyRelative("General_Punctuation").boolValue = _FontOptions.General_Punctuation; + FontOptions.FindPropertyRelative("Enclosed_CJK_Letters_and_Months").boolValue = _FontOptions.Enclosed_CJK_Letters_and_Months; + FontOptions.FindPropertyRelative("Vertical_Forms").boolValue = _FontOptions.Vertical_Forms; + FontOptions.FindPropertyRelative("CJK_Compatibility_Forms").boolValue = _FontOptions.CJK_Compatibility_Forms; + FontOptions.FindPropertyRelative("Miscellaneous_Symbols").boolValue = _FontOptions.Miscellaneous_Symbols; + FontOptions.FindPropertyRelative("CJK_Compatibility").boolValue = _FontOptions.CJK_Compatibility; + FontOptions.FindPropertyRelative("Halfwidth_and_Fullwidth_Forms").boolValue = _FontOptions.Halfwidth_and_Fullwidth_Forms; + FontOptions.FindPropertyRelative("Dingbats").boolValue = _FontOptions.Dingbats; + FontOptions.FindPropertyRelative("Letterlike_Symbols").boolValue = _FontOptions.Letterlike_Symbols; + FontOptions.FindPropertyRelative("Enclosed_Alphanumerics").boolValue = _FontOptions.Enclosed_Alphanumerics; + FontOptions.FindPropertyRelative("Number_Forms").boolValue = _FontOptions.Number_Forms; + FontOptions.FindPropertyRelative("Currency_Symbols").boolValue = _FontOptions.Currency_Symbols; + FontOptions.FindPropertyRelative("Arrows").boolValue = _FontOptions.Arrows; + FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue = _FontOptions.Geometric_Shapes; + FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue = _FontOptions.Mathematical_Operators; + FontOptions.FindPropertyRelative("CustomUnicode").stringValue = _FontOptions.CustomUnicode; + FontOptions.FindPropertyRelative("Arrows").boolValue = _FontOptions.Arrows; + FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue = _FontOptions.Geometric_Shapes; + FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue = _FontOptions.Mathematical_Operators; + FontOptions.FindPropertyRelative("CustomUnicode").stringValue = _FontOptions.CustomUnicode; + } + + private string getDataInput(string target) { if (this.formInputData.ContainsKey(target)) diff --git a/Editor/WXPluginVersion.cs b/Editor/WXPluginVersion.cs index e9d555a4d..3ea021dda 100644 --- a/Editor/WXPluginVersion.cs +++ b/Editor/WXPluginVersion.cs @@ -2,7 +2,7 @@ namespace WeChatWASM { public class WXPluginVersion { - public static string pluginVersion = "202601131148"; // 这一行不要改他,导出的时候会自动替换 + public static string pluginVersion = "202603060639"; // 这一行不要改他,导出的时候会自动替换 } public class WXPluginConf diff --git a/Runtime/Plugins/wx-perf.dll b/Runtime/Plugins/wx-perf.dll index 5d0b9cdedaaca3ff22ca7c86f9ca70d8dffa34f2..5dc6531385a0bd556758c5b6cbac0d9a109c02b8 100644 GIT binary patch delta 38 ucmZqJ!rZWhc|r&C%Cc1(yB8i2=-X8r_)+J%dyg}>hpCi`!)BYKM??TtJrKqK delta 38 ucmZqJ!rZWhc|r#>lVRG%?uADLY!YV6DC?OyY*a0}G4X~^`(~S?M??T4eGk?E diff --git a/Runtime/Plugins/wx-runtime-editor.dll b/Runtime/Plugins/wx-runtime-editor.dll index 99b1791cc7751db068a99dcf428c60181b797dc2..277b8584aa4cea9c2d2d7f0a09da844454146d9e 100644 GIT binary patch literal 274432 zcmd442YejG`98kdJ>8v7lFeDN@9x~(X(ihszwhTS%u6Q4MDzoX_NK6kk&U(9P=`cT<(;+*1~eIO^c!A1}N zyl(zf|JFruO`Nme!65|2R@f|96Z^?ct7>UzI{k`2+U9$W-UdHy@ZLYt_Zoz{_&?pA z9~da-yl$^;Mc-=$1fqG8k-c25;HA4o2(=DEu?%=318W?a#u^!DhzzQP%8c_&MkFS9 zzJa#|uR(kO9LSm`M>Hn_yZfe@0T@(9qA5RBhJC4S*x9yX1C(NW=aF23@hP$SBF`5} zP$tRzH0`DR5&_J{Oqh?qeS8PI-ikPO1ZX@5|l}btf2a!eiw|! z{um^=7_Q&P_$Ab=R5z)k_)F z^jw*86^Mbzpo)bI_yrV0}zkGtWD z)Yw+qi6;>0VGZGM#3pDg>|i+PSkTat?P>Nhonnz!n1EbUsnu+Wf=-*Q@Y`fMK`|rn z<24mW;&Mzkn(5nUE>W5dOpkqI-fNHRkMF?)?AqvSW*2D*Z#B)Y6%=Iys zYJcFZ73tYlohrlIDKu`BM=G#oHpDa2El{CV$|y)_$#hThOOy_m1Ui6g>!Y%k0!yt; z=8s9>YoDh2aKG)dh|hje`05(<1RNFf#23ozaMPt;KVEEqS8RVE{zMIgKRY^RnblC_ zv9DcT(2ob_d8!wripW%?2A`-N>Q;m~#WHJo#H{6EB==CL(CaiSK?{Z3oat%w+FJ^v z{6JeyPD&*0Yl);=3SJgtL*St{u|J1y@H*;EgIOARG;7wR?aH9xk4}==9yst_-V54M zwbDH;p4kTVp@?>sJ0=L1!9~piV_PzoB_jo4)Opahv%*?ePLHS1Zts zM?>_RE)&=rNc5UIXS6n@&ziX))t1VqdOuPRvo8A{nm53R=eT%%Yr4pA96&!q8RDsn zDZ|0O5ZmTcCc;wNLt{<1X=!;nX>C-S7VU{-s%h29z$5gNTb})jC|n+COMg4YH=7_0 z+tAU-bKTo|W_xxCsGezbe+AII?%C*o*nvdUC=)%xW7~vXoIJn}!ivgF=Q-#LLGLhI zR7F5oQC4&0eVFwb%6ad1H-OBU-k7mE zRb}0~6&TQE{!o;5%$ssL=xTpYvtL4PQX>|m3Jo2oe!D}KgpLIP+DfXuwJ;OoqnKBs zb+kWMCYs+_rd=`g%Am70_KftRF;j#@H5xO$LK_ELcs6BLiD6*17$=PnX2s=#et>pU z*tVr@z{g;OdeW0lb<*Tc6hNcb(Oj77&!ea+oHa8wgA>#OhfF0iPvPox6)a#RHKWW+ zrxXy1uCt69DD#)V+Y0Gmv_twqD78h(TDz3ME3B#+9Oi|S0SGsB#uZN)A$rW*1h3HQ znH^atW&HF|-htT_rO(-Fs)#-`T}CET-8&+i5J`>i4JH&aK{%CGcJEI^NecIY)TWbO^?$%nYW@pYTwb&K_Zh)u2p)$|$1y;o6d3#nlZA+G-&szu|1r zKD~yYY82j(NF)>yF&TYJY%+2>y3Dwmj2<)Qpz|MHW?VU{BbiCm5l&U-JlB+P4%3#r z_$6j5L?4`+fa%4$xb`uRvMxbW^AJJ1#Xy+qT6fw|Z-I~6ll40KNKty{42g)0PVU&J zV!ojDu7Xf1To1sVGVnBds6Q!GKbZ!i?qF9E1CzRnZ&umJ@X836pGn)Kxb3{C| zA28d}`E(CtxRNn5K?t`1Z-Uo^RK0v7`V{74C)ftBi){h&z9o7r)T=^sW~M1te=w@P+bE5UQxab`a2{Zp^aHc-><f6H`q`@==t^T#2b^@=lqTJC}* zIt40p#sZRGDgKTHesgBZDHtw2U#UA&3GzN;6Rub z(O4pddx2WUpp_~VkV6K{-XvkzM%!W;`6Y%!tu0VzERx)ZX}$1an?@IOV5A%!rz2Pk zhLc1K#l_;m1;dfC29TJ3P0>iROK1%pXa@~w06uoc%Bwb@_hop$hBdEkKs9;erxdl-inY$~J|wz>0=~)sc(vAjHvRx?KGrJebtTNTiH*!v!1XEwlrf zgB>WzsvU>8PrY2?rm*7)6|W_DP&$Ty z{6QFPHCN^j!t)sBPqV%lNwedbZs19Kal$&F}TI}F&CMSo%Vx?XqjJIoz60s44&UHZXU zGtHe=Ld$OyWH30!Wsfd^1(@y>C@J=FQqC+d4B#j)OsCxPs=#@Dq$!6x-zcx^wY-i6 zv&;NJc@Cj0?$5c?q*gnJ6!EtL1gC zlvgzmXxGTYHnn*`2bSw2O*tkfdALFIa3Yvx{=n{&80HVcCo{~SW`RQ<(1S4#ltmsW zhCEP0@<1|-Cm9!#ojeG$Ntwt4xz#+}UzZ0XdBC*PEeCXRxjxdo3V+!Tpd4<}Je&q* znLn`mbcXqZ@EHvAr&*Mchxv#g50ph7D26;xLh?W|j3*fvlASyVvq_oA1G&{a{ID($ z%S#@%tIY#C;9MVRUWLEh_eLIW(L9_5W|=>*8@+C>%pZi$VVFP7qJ%u0iwN>SS>%CY z$O9!L4)cYv?BttzE6i3lCZodai@BsETAdsO!Uf(>oS@0E{AdDs163;+}zbM zIqauX<%rI}Ykl1*aK|((hEm;oduA8zChUqIzeJLGAjSC!`@594p$CeT+s+86KzIqP z!Qj4vSE&-)!%LZa1>3C(CR-Jc5|NN~n7dRlFSD3cVta_OJjVRNAefCFngaHO*jLdc zI~TtK`hBFhri%SK2PO-1Pi9-^;#Wc;Du|^$%z-6SUSSniKL{~BiOt%b&fBBTwnv=& zs%<@D8?$C@yPCF<;#I0y4le^$Z6mS9wri@kjiYVi9I>scAB5LdZQGN!?KOyP1Ki(` za%$kcfN1XgB5J(On&W-aUgpOSuoC+aJQ%!GWe?cvr{^vSrO1N}hS$*^?9=G}>cD!- zB1@4TgNv*;zN*Kdqqh<4uT8Hfoo-(c=yvFGYOwx>n8W2F)1^gKP4~@5(g$eWU2IIv zmS9%1^*u2)%Ys?WvWppb8zAo^q|QmPq{17J!JhWi^zcRm0{JyJA*dUz+$`-dd$X#{ zAB|EoH-n|O1v9e8)&;y&6;J#X)#S*7nCW3}j`Jvtx8B66EH+b_IO+&)cN|W~wq$$# zLM9u&O2@Kp1RlmWZ-peC4(Ke4auuCyHVAJ8R@|2a(x`!~m1?y)=9h!+UG^WQOH)*1`r z2i_{cVI7F;TwwmnKDKfQa*MmG_c9aMf18D9O79Y&g^VsUF70LII(_rEB=v);>ZmiL z%Zzg`H!1yZlK>8`17IBc@At9jXsXotd}K?%J(mB8uNLOZ{~z2m@D`se>OU;H0< zL*nuYaBt_|EarGkokB;Y_0S7ask3G_n*UVUs3#e3eemTkC@qIgte}MZ$kFdvGlSCd z61yMO!621FPl~>@U zv5a2DZv5bRue5mxSj`#So5bdP+G}r171}drPDLs$*}&X|dt(!_pm}*65426M+7G`` z@rR@&0VFrEE*;smh{rA&mjZ)lxU`l$i9&0GLQs-I4yuK$K`CSg4IbITs)74Bt;nb1 z;NDLR^cH|d3ec!Ug3AaTeC>>vfyu^jw5xrQfSLq|$qyI#jz!YSY4S+FHb2;tRL2mo zQ=mpH5@3r0*5kFtc+wXH9!4*3HI`vzHo8}gmGM5`!>9~>q$!6_mtmc}rLL170kg~> ztc@RKm_G-5jCba1^}IrFlR4OmH|3jpmZZ4&G(nu{5Que!4`4XxKh_<^sl+)YH(Kg?-rJ_e`H!jD-m{^=|Mc&r{)jt~hB|0e$bTKkqzs zY%E9e)ZfE^$=j>k1;vNvOnp9Pubf?Qxqe z%}i={rOvk0ReKnRO(@tdI+g$rOvU`{Ym{2y)kSkTIwF8 zzN^%^mO6vf=ahQ5rFMZZ`7Wg%VW}fYy+o-;TIx_zk5}qZmfA?_!Ad>aQvb!&c2w#y zmiiT`>narw-DJq@OL4!pLOd`r(Z zUQGHiNHS2jwdPy1I#d_C*;VJ8IgX~v{28BbEu&XUwGGMVO3y<@`mk(%Nca;(P!T)5 zT1Iok0QCh(pnp+4^e?#*wrFxu|1vZ`l>LjE{u1cuUkWW=wh6WmX9f2rzlwS(@eal( zKN&|mC3<%p9U;+c;^;_;o*PF;N%Z(QI$EOa9b8u~kzZm8ddFH@Au=L<8zY%LIgVo5SMUnQ z2&+rNvn9N=g!h*4I0^44;bkPenS_^>@Y)g{FX2fNW~t%fZ3$z#iSQ^1V|xYRAri)- z5Mdvt$@r1+I#H9SpgCyq`{B=#J&Yg$$T5kPS)Mp;ejUw89}#WI$^aR@0Ul~BM?VR- zrLr>OYNWBLH)t=kH-&FPYngeI_XNy}8Ee<^5JQjR6c9o2G(`v9sEu}+J0eZ zzEK~AYB#?G5oLJ=T!LG;)rkQbD;|o?G%E~HnO95{1?A^9Oa%b~T3X0Bc{ zQ=>`vArX3H3tUG7Q?&->8+)wL;k&T8x4Wq))>OhsbvouRsw&j}y?`G^y@0M=u0g)n zU>&KJe=g9+#NIXzSEuTR(zqZ0oNOj&1!l!h_gKwb(wY#bK%?+FDh}ma7U) zWh(Tub{JxKleG^#(mvdUl> zvQ=gqSb^O&_92T<{umU*b}aOCe{Es51>S66uWRdeTWVM;sq@(ZfXx~1xx=z~!>}=7 z{(u@Ty%Ao`(cY*jD1D18=r0}<`j~B?y)~WffsYxnT>igoQ1di#LFhkhgQ{c58JNOZ^I zCn)4TuBwWkGQ<_iBHaH7yo-?k4VnMSVNfxsg4ns+l*>WC^hY3-`GfGE80HVce`c6J z&7y=`LZ2amyNZ;>T``Kas#qJJFeMoml5wG;K5yFA=x3GLq)hDGk;|PsY-e!DhyQ$! z%Qp1=&fXnu)tlv5KcG4;Z10Zp+3<5<%ibNHe8q}GiC>V|Z|@FM?X=|6?%kmQ6v8hd z431{Pn|wZCY8I5-zFQxg-iFd`SgGfmN|R6xrGb_)+^0a`10lUl)6qmG*!=LV3CYhXNCdq=oCjjm1m6I<}?_^o5y$%q=VbVJtH8m3FK2j z_$@f$-|+)G^6AbQ+*-~zo;7pQb^5Am7Qs_d$m~Nfoj{J*&#{)|(mhMWUOi0w$+zZC zXLA1#JgJT9_VAyeL}PzL_5H|xICCt{8C4u9cWjCbkoH`wGrva1c}B)B9S&`@T-ZFu z)(O1PsCD8@>K!gHyeCiD=rM%VvCt_q4jTe*XV|d0l$Am?^Q9JYy~4<0Lc79Aj~YFXSn%*R)xW^* zW9#qeW7+Tp)n<^Soz4RRFQ}GCw{3L`;`@APJg$p61~&+O9_b}?ugc_^8>9qflA;$C z2^*dLaEZJ_DA;-U$i+CMKL$xIhMxT}2*&LG7$mtEdgjI;7-4@5l3a|QawEl8bTf!Z42Pk3o`)ab6OJ_K#XW4(*RYl8bS^ zU|d>TKU@s-9QAo2$;G%}VHoHE>M=-iF)mEP*wU%%X#R@vyshgbxfmA#gG1pV@%R*K zzT8J{%V-qRSM=Kcs=|g7{u`|kz0Z#cDf-SaV`{hO813GmOC7d`n9JWo(LLof4rk+-nQXEG?re3m_ab?5AA z@SJM!Tn0PJ=jr8qUaGy^HH@Z8V^C-cnkwPWwLErDdKbfzLaH>5VM)U0)9~_GJ7va_ zF1Dpg%P=enrb^2)%;YLp;|KFA^l*H7YeD*JII@VRMsns?bSX)=6&aEK5R?9DNxz9n zf3u|DDakyCt7MIRwC_zvBiV|+*D-)Mdt0(yhrYDY)vIoi?KnzOschHX+di?> z)S+-Sj_DBM)X(7a$sJJ6cHME#AJ3Y&H#ugjvoD$YBsh!^V=5-$-sCT!nC;v7nlGI6`fuM2zUA9&AAeJj$P^ZBgLCN4{v$3J=D+lf0*Mm@v$bup}y zX~!DR5cgssUSf&Qk%*}+gf6wj=Sjp+0ODnq_yUPDgm}3nzCuEdsrORSkOUg_`*@Zr`6A)r%eytvD^UQ*^-xG9*w9!B>tpdDU;bLwj>%RI=6 z%yj`V>*wlh=5{`f?Sp>lbj0ag$8`E7Ayo5FoCM*jbD1bFY@s#{%-ozbdWQIXbtI+B z4|!ZgUZfWDuV;!?^C?%wmj2J@yE9enLH%@t_^Bz$Pr@<}$C)6e^;47w_C7WbgQj!i zz~v#VYKDku(~0uKZqKGOJ@yp}PrBPcddEsaEx4&)?lAM!T0oZer%@J>rY~pcM0sPH zie7fdBL^?VcC>r1Q9=Mi}bc;f9`m7#W9c&qIk2HlYWrEq+(6~C`aig?XSi>)|qcL|7 za~LOGvapRhM5d%xXm8~kj(F|nS?Z$918-pb$7}HK91y?L>2Q4+JQofBi5mR72E?zm zpW|>9-}hFk_Yc?m*T5rzc~TPSh#YixZ35c1{JQZZ+ApBKd5Y>@VFd8R!}rtzcrww_ zv_cHs(R(LslOtG1bbPk!dG=FSU2{z>=sF#dB)BZ+SnjUp8JF@&T+fpmt>;y7Efl=I znkOuqwyx)ycC?!i-wOi8_!qVyAfObDHxZRv14rsSdjji33b?s(+V7tkU>{i99-NMrO>40|s zaB#ahj~&o%oxNMTDeKzJ_`r6P8`-UjRl9|ybLau>esFNRIoBT0Ze3tlyD1yljhXD| zGUEf=O>ShjDvI4!5q%cP1KR!2;C6E*FreMK2C{Zj*7Y~z1KUk*WVb3-{VgnAg$!u- z!wGh;i~c(rhq+qm&B(Z`vvJ#b>l#grM&C_2*Jj4W<{f}FLe|Hcec6j8H?mn3t2PTu z@v7;%gT^COgX4bNvG>XW?bYRDY%k?pdl?_tUUDOQRdFpl)(A^iaLM*Q>e#zcM<2(b zB3{wR^>L4)8?PjG>TUu;x@FScZ4a^QPJD}eeXcQ!vQ@V~$IWX2-cRbz$2 z*Wwv)_olmdjCW|vW3ac~WN=s1-Unz#8EzwUzU!bT)3Q09c^rcAQ+dJsX_(zz7pZZc z+XWq|L*@w!Xr4qc#G5ENlfjPwt>KxctiS}^`mJ0K#UR9U=(sgzqfLlTz+sc-X$X%v zvjM4%?+C6N-|Nv@$W=g)J+U2K9^&MSait$)K+_C+bCp{GfqUSsNRd_V7DS_}hYB#d%sB3&4xvF5tvR~qHWH5U z%(HN?c@95*iKOUW|HE?FLCpT~;OyrIXa6Lb&3d^4@-<58GPZo;!FLbho2!!nuPxn>IRV;DhNF_1wYRk#2nMVD)H0*=yVd=`R_j&$9)m zWtH z_nH^Q$0P;jhf;R4(6L~TQy=zj32sC+9UU&gn$k^Heqh$Hfmv+>v)UaNZk>+~hl8ML zbqvhvbXav3;sr8md>tS*D=lj?riGWNkQN%#XcW8GeT;8jfDxH#>ZT|X{zY5x+%kt2cfX^Zcy5-1!u@knaF*7%YLGkQU@pr` zbh_47zImBeE-y4qIHvVDG+4Q0oWG^w!19s--hfy~L}8A400wCQ=173HkA&T*n_L6l z3h^%QOV8V*%Uid)tEBg;2axNtaE6m^vV&R0CX#>l} z6cY#F3I)J(w;CwK0eD0yU&KY%8&f96ffeEaZo{bXN^xLP9KbCWWvvniR+YfEerItt zgvyuTDK+0H5!qcm7Mm;qoS3)<0;oelSppzTjR_I}Va=Ej1^C>jCc1VUK&dHZ-8isb z9GDgd){g@l!~r~RsahMwfsNz9CUIcXIIvk9zyp)2wM87*G7fAN2eys_)8oK4abVjx zuw5M3J`U^<2X>4DJH>$+aRATUY3jSgfnDRkZgJoTabWj2utyx&GY;$(2lkEw`^15L z;{YB})3o-F0|&%`1LMHVI4~;?;E6BQIyep-5(j3-fiMmn8V7L0Rkd(8TLZ;7FgFey z9tVzy14qVzqvF8Pap0IZP>KVea3ElJH7}-=<3J@292*Dv;=pln;P^OjLL4|T4xAJR zPL2bo#DP z?zv5k9@cdp)>YVpCAO}sa0203(Cs6oKd_{URaBHFo?EQiqi1@Y4dv*7iw8Kqi6LHL zwf=c)ms30+obUps>b?FB>W5hx)l?p$%GJf2>*6hL0v7_oV9YPH79VF_3c`yBd@+F$ zxrC8RqsV29T+Rqyhjxr42HxKbuOLeSaQLF=w&8vl)!H&ayMp2>c(@9bPIcR|LB25( z$fqL-JO(BrTBUw&J&JQm^Vz0OgA?bYXGGPnJBeQ(srBoXNWG6VufpHRuUCQU__fL@ zUJXuo4SxO$zgA(wYk|PCwc*z%7R#@781(CPwC4YrUuO>BSGR3nj~3LuHkNDV4OZ?w zWo|3+H|yfRsEhAfjbpyvLv8)9jW^fvTigV01_IB-MmgafT-N_v2z)Dn5xI?#+oQ-GjNHix>VMUgkQgkd zyU0=i)_>}<{!>lrzks6N3m&cl<<@@{K>b$<)PE5%Z^4O?N3`yDICWpoFxpvsdV|~d z-HmknNbxHCjXZh}sOa@@)-#Fd_2_5q@9qUFTDd;X{_Z}+;TfDSSJe-~`$-j(%-by7 zckrVqdh~zP+npZC{Bl5TeR^Z&KCY zv%qpTshqR5tNQjVX{wo7GCg}?p$LE<9XQPr=t?-y2F4vAnP_g?+ z@hbd{?06JZZ7(F&*zp)xQG0os?d5T{3~4V_{UCgTR0T6fsU3XcQQGk_jAJq#MdwMB zo6zJ&n}3yBnLdfyXB%ZbP`|&*Pr5t-1lh*MCtaST3Ei?GPI6@Pk6?3|ahD?-;#H39 zt&PE)dN=w@zi<-SbutXWUM)6*3c3v_d!wt^x&4zs_QR);v_27o?ny{N__X?Is3rVJ z2y%~MZRpEA5fygyN8=bz_S@zo{K|(&^vgE*{K=3=_!;0twv5I;E#`sV4`{b06g~@f zuF#9~K%b+aXMP1FeDdVSh~e@)F7wyJ{;~N9LeUEV5Pku%-j_ZcI?P+p@eIouxcuai zr{6qk_14%}K9MH*U&iMDDarqfP}ck-yFv=Wmq6oT2;2+mh5YVP7whFy?ahUDRS92) zMi5>Ik4yHREY1X>kM1nK!Vq<3)a`p3p^m;E;kPo4RZDztLx zgUoBV&fu3`;3T*X2U2#<=uh|jO!!kswl?*Cn6bxs3Fgk2$L&eXK+jW3WBiHEQd$oz zkb#U{*u=Axuop{Mc^7LKr9pU|gnsW~t%4UjWFt5H8Tj^PtWAI&{v4E;-5$Qdm^b-E zp!IttYnfOqeA7k2USc8qh3FL~)gP<0wAFdb)!B?XZ;MW3S$p^nqc-+SmnmlVj*T=y<8J-e*Kl2cuS+% z9HzFKE$};DT$oZv(groThD>8ZvAu>&x2td4QjMJCz7K-uK(#eS5dyTOqX^a7G8%~- z6h|bDI3lH{5j}+=s}U>)#j8;)t(HZxj2aZ^T-aPLJtKU^y%MagqrH+3V8VFwYc%!p zhYS|8ST16(ZGn$NWmt_zlze zwWQIcX}m)9-z2Dujgzg7zZL!8QvY|NpHux;X+}_fjWECO2SXdG7=I9q-x1?u!Dv>D zpDG4Ek(Vlel8C|kaJsMbsbKt`7=ILu7RC6PV*H$!RQU};{iz?6gW#v3{XgZxQSBWGpPlBD=m2tdEKHrC<$FthW{G9mV=3FOB7Q3HeojNa?S5pJ?xD zf2CdX=FTZ2ucP;fz6^O2`@{^s55l8QT2p}>NTZ*g@(La3+OUaVXdyF;7KcU0aigv&Al$xf2SdS`5$81A8Fb@8BCY|#Y-`-7JjH+`iO@98w_cO z&FPH!1$Qx3lJZcGT-6Cv84yE7pCyCA(l&jLOQ_+3*uLL@wxe3o_6A)jYU(@y!7=ziqgljv7SS+n) z0M`z-EYC9swW*Ow`(@lahfSZ;COoJ>o3gwV+tjAts7=4+B~|_%O~ak{?`4|Q_nQYT z>l{t+%eYSt+rFS}EeztGATPyswe9z`W(X*QIqH8@$n+;RHwLMnLur~{UV<0%C2huu z3A7oSqyhQ}&g#*UZb(45rKDcqxw1 zynL>C`GR>_28_Y-vM7DV1u%Nxer#DL?U%>%V!okG6BtaFm*b^4Qf>NDZTgCrRQWHw zG?u@nh4{+p_pp$4_liO7!+mwyhhqt0-(P88fx&dShnM0gweK6X@2_g#-_*WudBIHX z@3@wGA^zWcGJcOx=1BExZP|kx3P$NJY7GQW2w_KnFC`-ogW zv5&~riG8c1k4e6Q$!xySk!?$BB$~~~5t+@$5t+?vM7-XX(Fm3eGMkTLjXIl;VmQnX z<2BA9;&eV^?#Dc$Ejt9qt;Nk>|tXuUU$koZpuk)q4g_H9^2cB z`PoF&0f@=R8Sxd}-Cnnos=6tkbO%du5w-$r8Bf}1X{wp~jm656b3ZI|9HA^W?Bhw` zG~6TcOV4syj=PiVRxDA)lEd2d60xxNn1n^1#af+Mr1<7PiY2Pp zhO<~N6ASxWNm%4rtjWY8#WxESOH{G#WU*c$7WRgcu*kDmQ;0>1Z@yD3QQgzQdX-q% zt4P8k&tl=RuUwfF-=N{M-is=hXV$LQh_z2L7I_wHDzQlMO@m^IDwZD>3m+#=@oU9N zc9CbX)+81wzVQ`HR54AlSg#Wc{dE!+c@}FeVv*vTK(Ry>U6;lB8L@DCC<%)^i?uef zNWr6xiY2PE9IT%c>!4&T@+{Um#3BWsM^-FRJ=no|gII?oW07aE)+H7xzDX;VsLpn< z@El6YgvnUsS*-PlMT&1SiY2OtI#^iwrOaW;Smar(X~ZJMH(A9J)j1BtMZ2tizMB$g@}*5Q`MwIq#ld=?SjQ$~k!P_sB^D{Z8LC*K+UH<>K&<1EvB&C-?S^1sGja%{f1a)Bx8|h zv9=}_DZUx5SfV=L!TK$+uxFCwFY+wbbYhX>n-0Yi)w3L|-x2HVWGwP5);7c<#W$Ub zC93B*SidLMxye}MS*&e|MT&1mD3++6=V1MTSm!5Wk!P{CBNi#X8L3#JishlL6CV@n z!elJ+EY|kKBE>hO6iZYuaAIvWq;6wG**O@y$|-C8}7iT7UhCSXU-vk!P{+83UY|C|F|@ zOH{9Nu>MS}tCO+FvsgP5ixl6CRV-1x#=-iGSl1?Fk!P`XAr>jV=~66Fz0SekDGtn2bf9#oCQnr1)l>Vu|Wa4%U~%!k%MNIg)3wen2cz ze6x&ViRvv5)>p*3H5rRMi?utkNb$|GiY2PIIaq%o*6qny+WPM@+{U~#3IEv%PE$q-s52Xm00&CW07aE z_9hl7zQO00IlmWGyozJ(`WvzCPsSq8V(mjLQhc+#Vu|Vl4%WBC`e8B_c@}G5Vv*vT zZp9MS2OX@x6YHU5Eb=VYe#9chH`udh9!2$G2kRfidL$W(Jd3qIu}JX^ZtW0DR3CM) z{z7Ad}&s92(kty^1;|0dQ`$ynrB zteM0j#WyP`mZ(1MVEuT?d(cf|T}G8TCj>tJG$;+si|C92OmSRQsI%}j{EKz;I!D=AZ zi^*8zS*+Q_BE>hWD3++cri5m z;+xeJOH^NTuu{bOX)+dh7V9u#k%D)H6iZZJcd#0X^|NFw@+{UIVv*vT$%-YaKX+NJL@+{Wj z#3IEvQx!{8-*K>-i1o{4Eb=VY5yT?JH)|@EsJ`o9<%soOG8TCj>quge;+wS;OH|)? zu$qbWK{6J37V9Wtk>Z=R6-!hgBHH28dO~xY6VwH$Rif`6aEK&WPgEf>`zfZ;@&tlCZ7Ad}&rdXo- z2M22jVtt&9MV`ef6N?nztgl$2`iX;;C)TIQSmar(3b9D>%?64ks(*B_h7s#e$ynrB ztYe8qif=YlEK&WlgN0LxQ|7Z|Eb=T?AF)XB%|?nPs-HVp?Zo;b8H+rNbsVus@y*7H zC8}RKSi_0+RWcTN7VCIok>Z<86iZb9;$U?U>+57J@+{T~#3IEvn<|#5e&b+u66>$Y zSmar(6NyENZ#GjbQT>~PHG){*CS#Fju}&fuDZbfUu|)On4%SFw{UaHRJd1TQu}JaF z7K$aR|8%fM5$j*cSmar(Q;0>1Z?;q{QT?}rHJVueNyZ}2Vx3AXQhc+OVu|Vk2Wv@U zeV2?yp2a$iSfu!7YsC^(uc11ZTZ&i>Lg;s|i9CySIHW07aE&LkEozS&N(L^bPR zElsSZWGwP5)>*_N#W&k4mZ;_&tZ~F@PR1h7Vx3JaQhc+6Vu@;tgS8B?T9dKJvsmX4 zixl7Ns92&p#KBsYSVNPs$g^1I5{ney?4($tx`cx@o>=*0Eb=VYdBh^cH!~DVRPm&+ zU3W|%R$DR_c^2z@Vv*vTofS(|+a0Xsh&4PJi#&^U0kKH&%`S>1svQoNAy#KH7I_xy zLSm8Pn_U%4R7W^i%M)v4G8TCj>mp*2;+x$ROH@ZWSlz@Los31E#k!bSr1<6siY2N` zI#>l_EtQN#p2fO^Sfu!7cf}IbF%DJ_vBoB2k!P_kB^D{Z*+a2JwadZkB^I8SPFll| zXR$6L7Ad~jQ?W#KoP#xySa>!g35z_7bvdy}@y%X}C92ChSSt`~d@>e!7V8RPk>Z=Z z6-!hnI9MwZYq?}B@+{Vs#3IEv`zV&E8V747VlAJHMV`gFiddxhW?#h;)ourC60r)& zSmar(tBFO5Z}w9xQSEWCRwh<&G8TCj>l$K_;+y>yOH?O1SgR0gg=8%9EY`KeBE>fc zD3++M=wPi%td)|n$g^125sMVx9H>~LI?2IWjaVxuW07aEt|t~LzL}|5qPmKMwK}m@ zO~xY6V%2Wv91R!_zv&tlz3EK+=PkYb7IWCv>sv8E(rk!P`PA{HsW zIaskobqxn=4Ps4A#v;#R-ApV}d~=9miRzjT)>LAxm5fE6#kz%9r1)mGVu|Y74%V8) zS|=HcJd1TJu}JYvs92)9u7kA}vDQn*BF|#oMl4c%bEsm8>NE#yZDOsTj76Tsx}8|0 z_~tOh64ebHtaXUBVKNqZ7V8dTk>Z;W&W9CdAq)8H+rN z^+RHj;+v9UiRugoYg1zFoQy@D#d?rfq~M4c#S+zB9IVZVwQDjKc^2y-Vv*vTvSNwq zZVuMw#QH%p7I_xyVPcWun~GwI>h2EK7R1^k8H+rN^$4*@@y)S{C8~QmSX&ZnuVgIp zEY_pMBE>g-iY2OhJ6Ky0YoBB+@+{V4#3IEv$0?Sm?(1M}O|1QrvBHJw-oBx8|hv7R6nDZV*Du|)Mi2WuN*%}mB3&tg4EEK+=PqGE~aEC*{_VjYx> zMV`faiddxh<|M@u)q@?Z?TB?qG8TCj>uF+<;+vBdOH^k&SlbgTOvWP5V*Q9%r1<6( z#S+y+9jqOQbyzYMc^2y#Vv*vTQx!{8=Qvn9604YuMV`famRO|t<}}3;)wvGVPQ*Gq z8H+rN^&GKC@y+RqC8|d_STl%qWHJ_c7VF2vBE>gnD3+)mg;=FzEb=VYPl!c|Z_ZRKQJv>t?Mke2G8TCj>jh$w;+wM+OH?Zk)^5Z) zHW`aNi}fP0Nb$|tiY2Oj4%QEdbzCwQc^2y>Vv*vTa}-Ndk9V+kC)NqcSmar(mx)D+ zZ_ZULQ9V&qSM$tyAet-W4Ohg@uf}i^*9BBCR|<1m&s@l;Jk^*pR||1%&s?O$Ya~9+ zGZ#y|(OfHptvqvyfE4i(qq$0GNaj+|qC}C*Wg?-;K;iNPg)6EG`rP^+%>PM}2^>mb zt_0toM`B=3PNbe9R8`)S%BNbft3;W^z?_yyJ>5~>t5*4HQ6|w?Q6@1kXD3q6ag_I^^0`**I#DJuFy|#w&v%sfqw)n-?0Qiq zF)$Z8V*69;kWixa7rILZf5`BE!(qbQRYn9CBWmpjS_Quzuic9STRi0Ye2 zy~4ln~>KmF)()|Qtxz>XH)quD|Uw{lNgx06RGz& z$|05SwPJUQGKqn?FOhn`qkJfpAFyI~i86^e$0?Eeprd>km8;GEZc!%DZMiPhZMk!( z{E$uK9#JMS;0JB6jmK`tr9R@MT%_`&R_tC;CNVINB~l-El;_qe-zUl>y2>uqRX&`` zPuMi>7iALVGbNGPF7+uVoa3Va1*jWfBAP zRwDInNBMXvzhlLo7G)9x^UFl)yN>b+RDREj{YaEa49xq9)DIlx6RG^66?;aMNes+K ziPT>?$|q6z*H-LVQ6@1kze%M2)=@s0%D=N>&xtaLf%$zR^$(8nDOCR0iv3uWNes*< ziPTRW?of`<t=dE-bIw9+qEKWL zgON>GBaJQ#OVhSComaK#?5a%-wKi==n_d^2$O(T|wTVjRqJ`K*p~xl%Bb%_+8eJ9^ zKHCSfwds;22bFqn>@QtcXR5DjA#3l+wHZd64gf-jfvas;cKaj0W zSE)_%{_bX|3p4B9U+$TTmzV#6I@j!%&V`~FJt0#GYOUUaR=+7$lN0`eR!3EiYUVmM z8|egc=JN8PUS%^gH;at0VVB|@Bsi}T;-?PIzg!%qcd*F4PLZEEa{sQE zJ4EDuPLVepx&PG5%@(;gDe?5FTjrDRzh}`cf@&`vQT`zZ}$bC$aPaL^S zz1&eE_bEmG=*VU3<&GA)KT+h*j$Bh!uF)F{e;*@qpHbv<{P@^BxksIyi$$%kOCtLP zWxsSVn`1$q6)_B$TKB)A$Zby57o0ZB{|l3=Ya1zVxaEIMKFqn@g%AwjM`?T`7*a*< zsEV;HDKk&({cBa`&RQATGG1iKETak5wiK9IAnX7iT=N+|7?GKSVH{^RsY>O{gse!yg!Pz_HXLTiNrk2$!PM$eP9K&FH-II9Buk7 zkaPZz7ybWGe*u47{WCBCK>uRZe?L+G1kwMFs$O%Q{y$Xz64n2ps?U?WD?8(m3Nuv7 zQR2HWzC<;?ALIFI9EUfh%&=-42P4(+allYbd`rgLL|*ENFW(Nri>^2z^ir7AZd%aY zVW`>(2Y$jfoY{e?&k~+#U_MZ%b6$H(VcP4neAJPp5tVZgiyuMMv;($}Ac7SBnzY|A zf5xYBz>gJZDq7mwhb{v-RKIP+)GOY-+59RovW%nbz(4)r% zHhFpoP$Aoaw~w_Zv)!%>S-cnxw?(q3w^nxf;%GFx@g3!VqHM>vm;ZrFu5u*{IvxHI zhIt)91V${>1Mf6q;hkipppxm*zaby~3DSW6fhXz_@y{T33V1y=UHT8SBte(;85AbS z0eb1uzaXGu;pa332Znm48BU9Qsb}t>u|>YP8uIFkHm|dfG1EfnFGRU}EA;C(gV=@F zl)Ugu61%%`vX6m#5u{(?UpgD-_oR#us(kQHWP%zQ@I(e>;K(%A$UsA6(6&`(0_M?K z5kY_Id^ignH`nC+TI(JAJd{15;`ch`~=VS@4dnV;q zs21Z*E2>TTFANs(SO?E#J%``0`5F`%vazmsQ z<XqqXL$2jPDq{A!5?M*iEG;Y3%|`a zMw$q;)R0s-E5fab9IM!tDx$up$7gsXVrqO-c?>W4RCz3}ZH+idt+5-nu+Gz_Gyjil zLffNFU24wZXAt%Sd;lQ|YO{NngF+TaC?7P919hxkT zwfhg#<3w(;)51x-gQcbH|4~{vQ+Keml%13o`>GVzlHNJ=Vd~7O7`<~rx+7&4Fz4;f z?JbR!?^tQkx^pu5%QTv$P&Ca$QVxTs@#0WFGX|WNBD(rC4s)EqT9Dx>l&SGq9zBU7 zz!ADQ*tY>-;^RzH=p)Rz!=lxVbER%f(7Lge){SemZUhASuj>X*_8!cK%1-j(e^EDZ z3ix1YDf@qv7ETKvEG=dKkJ7@a;)A87?4-1+_3*s^Wj)0Ffc0>+*27U+50{jBh(pU! z4^vJ(Y>et*%G(v~;e6OJ%=62Qki*8$*d@yugob$?VP_#VC;5h=}+D7in(37#}QO6EQeQ0-Vf9v6Tp|oLx{srs#QJ7<b*nTZ@W^%?^v#T7w5?c^4}lI=)1_u738- zy$pMBE!lL~fZffiZN$1nu`u^sRIJM*EWZY8O<-NBSeU>jVvX%@*Oh`5rWA_)C(dPy zjdO+K1d78df!VWca1)dHyxhgajgz=chiI9?XAW^Fh;UcwewI3(bhJLx`*c?*7Usst zCpP?ItR)m{g69(R4pzGK1QGEpjUaMPzYT1=(y>je8oqKg40;n}L7EBM1fvJv0OSHS zBMa2lCbiEj!3~|KG0E)>I`L^5Z6LP(O$Po|ijPS=?Cq6NOzLyH+B@2FiNn?2@L{wP zR2BMi8QLqMWo-y60r;2P*+QeAdy$r|$2!q!u`}F+)f4Xa0;jX@CRmQI&T_j6TV+VZ zyi?sT@V#ZBE8|s#f;#SDZ!6EtfsPg>4B4!mi0yBjbRz2X;SlJ`9u>*&f-DPFm3l8q zB$kss1IoQ$EB8U2oUDB*_hBr@<>yBt)y)rU{z?^?Z@Uf!87C!b^029GMfu#RhbqE3 zLF16rkj5dnS4WX_@di$ID?KcZOxOvBICI^=>xq3Cjo-~)5z~$If@Wk?Z<3&o3=9rH zOnZK+%-&A+>o$hoHIkloq0qx*CejN^-=c)(Pv;JB5l$`t9nt8P3yv&=RVq>35#6XR z%ILQVz`QofgTb+Eki&O~hZAO4Lt{C>hsraKiu9ue=v-H8$LiJ&y~%@v4e5tdaF-=c ziyF(e&9*ISr?=(qUzw3KCKIECOBpfGAfT_@(?B! z2h$;iZSfV-5vT!LMGQ`u0}&e$I37*|INJ?@)iiN~)7cQCI?h&$LO2;sMRBZIM8ctD z2x*EqR19I*#`?NGt~bWM!VL=4k@aI=$wtpOZ`rwDGeRr1#-iS0&HVJ%uBYlbi(8sc;l4wi$+I9GKAvrwz^#gDJFQMd;l`I|fX2 zQ#a8E(O{&aaBbNPUEP05v#%+5Y1-n_vx`Y@8bCfb0KK^%UH8jc`q94VA&B*@;ex!bOAQcAuzT4vdhwB#^11co78lC&fmkn&;`o5wI4YO|qs z3E8^hj8_HJAvC(tB0w9)!-iWD>LYTGF zTpEO!ISyfzrQFCVqJwA8q&{WZw$tfsxcrhUM|)1Kv|z05#q|Fb^r|4qIRcG6DD zx8{|3zMXlk+<{6`nZ|niwARHI&x}IR^pT-#y#*|Fq6K=s`e+1%q+?-K8YzW|P!W$) zL}kf+g*)o~xdnu=L&ma1-Dg>%O`$B2d6ea{aF&!M77| zIa6ny;hgx+`gD4c4rkg(hm*M$Cjs0N9umVZ2O!o4;-K+q+jRF<`7JOU$C!>}##ouN zIu-65hWl%uE1{;QjT=6*6 zit#~dGAL#KAiN60{6TmU!~AKkPzh6`<(Z5sw5V*WinXPJc7ec!+PF|r=QH@AcUGBA z%EXR3x%oys=tCRR#W}E~4WGik6ZL?1ox7P(KHZkVo_mJ%hd%4Uz=j>Jn*Hc0qd(hqVUDpTUlH1?ipd^RiqlKawAK8Au95qn7N_vOq9NLq3)ZMrp&V`*3sWWze2 z)~tDj+5NtiIfi=TNPYmNR?jQ+)_*2*Ns5cF6U3Pgp?IZCY*O#=D2?8hNE;n;{25GC zHO*`<@`b9Vb!~G5?y2(|KKxeevs>Sk9pB+| zZJ&wvEd#cB@7}s}r(j{)zr0vbt(9J}V76M&mdR&m!@*4kH@k5QA)hL(M1Q18n5(3A z8MTY-=dnby<}TEt3B^8E=SZwfSw<*a=Fj+iV;LhEK57>w6vnyYM`$Lp!bNR-(fl?nQnut-c-uTC}Oj`o9PGSO(YB|DNe}<*2p3waF|Wd+k(a zx)H884FS_la=KDM7*B(&fNV=8rw`CgEMnQJtq+K;52&p(`GA&gz|z)5^Wn{SKBS)y zm6+(mfcru0%W8ZuOww3Ma*dx#;!y zj-)&&F)_<`2SS80HVcOEJtJJn2X+ zjMytPGpd0Rn{pVjDIy~_F)&n&j)yQVSiQ)z)md3QUy&`cpRNn7S&d$s;r^8eoJbYrqj&JQokS6XDo!H7W7| zMrd(vEMA=mU_fq{Lg1A$9HE)6jL=L&Mrd-J5qhZ2*y>1AhG?1FuueZx=eq&xG`@R? z9%wQEFjUiJQl|s6g4StePXRmX+Ed{glEH56pP1I8i<%a`XNa_>_Dc)p&HMVwUeir$ zt!i2etLJ);4Ld#P&+Q)BRT##dy*2Z!3^3SX!}bWC%`MIczqQclwd<~j=85|#kJsmE z6$}b1!A{J}H^6v@`TvF-0w;mgTER>n8CyHH9Cypti4135UKV(=9(CvE!%=v5qg{zx zGeNknDsX;{fnViSLKn$+_vj}u9+g?C(Ty3r={&kjobEMXAUFTaixflg$hxN)*KL>= zgV!*k{glzL2?M!@P3xMmujgn$U?UPYL(B-w{lhfECWoJvtQpD0z|+9TbZ$E4yw}6V za6K4}Pvnlmhdie-*odcE@HytDd}F7sT|IEt2dDRg4~Gs*E$Fxf=7u`~#d}{7Hjr%N zInX6I|J%S@?jUa{OcUE%an*JF+gzU1JRisPT;$VNS*Bd%^BIXvL4T6@8WKGu(U|VQ z^A2*8ws;YiczD8XZOjnyaN0V&q{?gYk}j`{OLOHOTOyfoLz>2&1C}B8KSqcjYwzDu zL2DZd=x0(u0umL^t-OCr85B>u1k4*!Jhb&IU_M363g&33o>sZ|;YLUolki-6${P?+ zrXOw$YIA@#ikiE;he}AZ*^>+_Vu_YUMs^KQBC@W?w3o^D3j2CNr%b@dL1V)~H1LFS zFe3UmV;5vM9!wVS#KMJQkuAM#s@01ILT=Pgu|vU1f*JI~O^^q4Q|i;edltES+Vv^N zfS$(5cg48|hD_b@F!-iW?IVg}nU&G*a>YxS^FXW>TM%a2VjjYDf_S1?48Rb!8DKDk z(QXW3l*JH6F&V;0#@IzNE+jicm@u1^i6M;KbiUENEyXF%39vkWB;|RZmM1TMxH-~v z%TuXafa;d#Ccqn{Jjt#r&rJu>s4vgW29rfW5(^iKp*)!w%ac)-C%Ludsd?BEd2q^e zW8{CNTb{V7>K9h8P#Ef{xG2c2pwmZ+Cv<~{FmU&Zgme&Y4JNvo_o_a{29Ng)G4Y)P zN(ORi#zBjSwN&nho_MXRcroijy1X82#luX~c*&Nr|D6h_6BU(iuy#x!*a(Z!jz7|N zOj^{A?_fJ-Jnj$HfnCxcIL~2_FZaJy5w|CEbFHE$w%R0qElKD;&}d+x(?cF#58{u{ znr&e8jf_gywg}I=2J+sM>~Td8%lh~_{qMw;>`w!EuL*mfcz#SDrX~OP;78kJ;-A$p z#X`G`$A#WpWovY_7%;U4FTxH9<+I^-FkdEMxakd$2Uy7?EOm>y*~|6;l_{~|-?U*tsXAeYavU(Br*>I;?A1ZOiz&<<<<_+LOvIg|wv98|g^x@8f`LNFwuk#_H=tIiT zhfG&|NQU^3oLV1hzIN&F!yni95VM%Y@*(B3AqGXa9x8FSfqi%~%p1UmWDV%U6J0&r z*(`)V7|e$!x#D#`Bouu}8TydviVw*UACgn+L(SLj{eAd+jSsh7OdnD{8}3o-LnZDx zun*6Gc?0;6tO0$9J*BE1?(!DGy$18)>8^O44+%vdQieWcy5d7J#E0b6`cU(=cYh!L zq{fHaEv64CpAGk^^`R2?9oUEGz`Ox`NY;QpJj>NvgFf7EFdv@nir4v&Q1l^X=tHI} zJ|shYNKUN}HDCMp_u&gQKHPpWeMtFictEWWm3ZL5KE(dsKt3dEKp&p(>P@8&XAb7W z3taI!9}k4Hl$*SDrRehR`ZIEDesQpdKtf&Y@$!#rjPxpe6POb?sWa&Jc#zF6mu1yC3Q8|&Qh zUe{X zI)kV8n52h&hn&Ge3F*mO$~dDUWj2b_AI#o<`iq<1;>v5S$5tawycPrFcjI5BfBe!D z;GmvjdBQi~i*QAmBygw$4r&59bIBnIYmsH?)ED4XG%!KNl1bi;$HS|9H=F>dqlb%M zu|wkJQ&H=C3LJw46&zRB_QSd;0X6fZ1y&SBUL-aCRFQHxz)yrXenWLAYUgqlM zaJ?L%mm~GUBg$az(Rw*XFD1Rq(@R+|6}=p*mp;AVi5RLMua^__a-v>N(#y$uIYlq0 z>g6=OoUWHM^fI59;*s?C1rj`p!3!mLG=mpO@E8U!mSBlNzP;}k=P`JV1j`IwE5Qnb zy#4GKk7bbi=YFw|L3Un#@i+$A_He>6g3`ttRd$!@`i+xN6j$8zznyRF=mE2g<))iTB|F+*OfC}T2G z$7zqiFvQkzMnoJ8c&Y0GO*$y?&5jxRUPq>LMsvnrkZQ@UvDSCreWwqtt?ldE-S`wc zdR9ClSKJsk7Wx*z8Sg3N}i2O5k@)s^d z{?$79%NHWQ0lIN_fBV{n$k#nI_I>zyUY83fA8~uejZQvd-wY6wb$9x+2`CdKt12YdJf0C zvG`2f-F&b_nU5#u<=`~SK;Ejxo7I(+m6QWv2Ms59xbr5>;mk)MTpRCHpZqZeX~;HG*hj!o}JW&QI12mwMwsF7N;jA|Vc6E>s8u ze$$W_)y0ARl8pmXMB#P)RU!^d{Fiam zv44pJ`xzStrijAp`kzD`nD{T_sLRjB;m^bYCo4p^uzxW33WjnW5u$?L0KH`ebj1kl zZ%hZpUJeUcdp=Q}Z+2aIWo`V=-9{;Nn7aNgvS}*mLN0J6_If@iykkL#49_1Agt!VY zF1eX1a8a>}0zZ@E8X9*N3gQ3`wrMFh6E1=V5?o#cOy53Tkkrh7bgD8IO_7VafJRQ4s2gG4one+*R{Ju9GLho z>b10f%4#n!Gb12`h;DQg8kh*@w z&7pN2MlNs-_BK8zyca`=4DTDOpmS)b6&&0!6RDSwLm@bZKO7SS5e63(;n9&bYPcu| zwGC?cp$RoydnO+S7p9V&%lxgYPwLX)?-Bc;|bx27p{26B=I3QB*c1dfX|c>-Qng=d`2K0 zi)*phV~Qvo|MJ-a*Fh>jH(?@-MRdmRDr3MT%uT0pDqWAATV&H(GQV8l22ACnvBC~u zT^ADf@WkU7mvC&&$HuRL8$vlWHf{}!DWY)vE5x=BMjIa+CNi=8W!{9?>hcTo1Rt9X z#x@bo+zHk7kFnvi6WQ1>MHG&IrDDUxe;Hd{ekL}!WACrANjAL!l*BEOP>9!Y154Ns zghQL(<=Pyt+@rB?gvN=$6j3<-l?}z5+*N;2ul@N%h#gb;HpeUegxx1xIc^jfi>)h} z7Xffjcb{A+>$(2VUuywHK`i&USn$d|8p|e(1ye-a6@Nl39UzsD1x-vWctxNP3%mrx zC~z};XYwK-70X5@7Tiz6`7byp@$c&ej=2zKV&UtBoBr$Sgb1a@{;@BPBSNq@ua2a8X8DPyXC-R24@E>?-35oFGz<)UMAFcS0*8GPP|Ir3N z_!EOzs6Bp#9V&cqcgf4i1}1WqB|gd(isb~sq|E(;OD+)%^@iJ4!`fm_A;AX|oFx)Q zVnREKgnpRNULpZ+eYLPtu;hN(3hN+Y@j|qtL_&W|=p>Oa6caj2Bn-fWE)oetFrlkN zLSIa9kw_Sh3EdG&|eIycwVS+m(K;M%W!P^Z)o;XhALc4-NRT1tm?hdoIni83nQQX_fT8U%~JZ;he zjt$@!5hZdvWl5I~TZJ!3bVz|O&T#!D7-dUC(wq#Gh}d(@W_y3cF~#1&c?D;lQ8np} zy(T7~s<`yUzJ+rzBrAwF<8NkXp^LYVL|3D@#4R)tF2WEwLu&#QPZO77VrwpOD@}xJ z4n)qTT%sM$@MqEIPE3SrYvFqWCC_2vC-|cvPNa!&DnR7?1pdf|Vh88Osc`d@GyGf% z$=KnUX&9&9GbhT`ZFGW6p! zxFXbDB7+-d*v4gOCmV`mjmuyV+@H^o1v5!l4}`XJke+NP4qeIUYJb<_pBMTN+g>&l z2b*whubgNEg#V~6T~$sEZrDu*e>$?<$1fT9zJvdcAHQUL`TKC2gC`vDVtc55O_^W% zaG$$TpeZzi_%Jse$#J6^7bmz@!)uF$@^NhcseDZT59PP`Yx(H#59Q-j@~84K{Xdl7 z8#>jWw;vt;p?sXV{!~7u|A+GX{Iz^^C|N#t9iwb0&X2TwSTEM@k1!n`lfdtPNNw{b zgL^r)T@n0)Uz}$DJzgD!?bpFygP8G( z1xc1K^cURq(efqw3#LoAYb)t?MNrbOuwA$ZrGBwph3&%h|FB)H|GHi1@DJtV4*O5# zWBPw6-|4UAqr*RxkL!a!m5=HFq5L*~Egv09mM^p`E=Oqj677oV((SrldLBSf(y!32 zxT>LkCE69!|HF1|7siWpe?^CXC?6M5e<~l-|3mpZ|5`pe{6qP;X8Tk5nEoHiZ~NDF zMTdVVAD4)KDj(DTL;22sEgv2Jp?qAC{;7OS{}1K2`)m2=@DJtV0{BnmWBPw6zx`j! zM~8nXAJ^M|Dj(DTL-`&4T0S}yS!eQ(B;!|OfxBSNx8yZ<3>LT>5@5w9PN#=~+^TIK z`}F|(HH-U-=NS=(w`11(evrj8xUaCzljH8`5{_?iG0LBy(5+oea0~GLNaHPc2ngrE z+QOMU?!Xh4i<}=gPGRl^;ok9t8H9H{@p-w+8fac9MJN+adeAbD!T1#);>zUKqD+jq z46hd>cQ`>~L_mn~EG%%jqvC&z5icz+%M$s4% zkgP}i{*N&tAjHV$t*b}Q#2*wvnUXPP{!=~T(Net_xuZH7BLb2!;`e`y5dk4aK5t!& zoQXd|s~2O|KgEcLZuMg14l-$s2uQ|=-~Ta21cVs*ymc{hCfQK@s2Ahme~J;0BkRS; z9rMx{5fEZLgZ&Y||6_~@2r=?`xfp3)=#Q9OFUBMP6eAvq){Bul+NLogAjAl-TQv&9 z@BbJh0z!;@UM@zO7h=TZdNCfAh|xYc6{fieJ1j`@WL#gaWIXrL7v_@^TsQNt4(fyh zt~30R4Mj$L6i%dz-MQ;c=fi9EUT94hRS@`LJyFS+gwt<^l!#yBoJ}mzF z?7%eGd^l_9Ad)ia1?~ZxQ0z^pv)X(onBNZYG{$4BAI<^ayl_RtUaVFuP1-S6CQJ}Q znQ%rIYm$$LKi|C%GQ$P-uz4YPOEn*e$fk|7FZsazbwTE1!`_mJRQQ#niEOARlwfTJ zry4l{3H@plH~|U$YZEvD2?J^qH~|R*YZEwu_m;WAw&TCLQ<-8-C?1{_Dc0sb@XWV=dr|mc_@b(> zrU*xq8Q4OiaKQ}Mpg{L%0^1ycDKNNHm24Fi#Rrfo;xXYGZ4rMTy1vMw0}L1VmoAIf zh^mAQfsC@jnJB$b)}Be06t+a!SB}iT>-2bAhZ?4Ht>NZ;nRa`MRM8-yhR*_oxlxYC4Lxjr$&`!wc&v>T&VDL z6y=fux^VZpo{%LR+e@Xcz4+{K^8t>x+U%-)cJYFGu(k@{xY|&m_zo_7N`;F*-{(c5 z*`kS$MFaTumE*3LeTH=_&o?LEwe8fPxy|{_v5_%=p58#DuWB<1eDU1?um9q!6b&T< zl=${nQQ}*cHouxkUU?z5y@6_pt-R8oxdLZ*^cPqb=N~TDhsX0W9XIea*ELF@w<{_L9a5+hS&_1+ zky)KDTkr+fo@k3q3Aa>G5obeQRgt1X;F&rnio&xw_%#E+{hA^*qgp==MBBj6OY|c? z3)$diec4c)`vT9Q6NNyy-W@+Kz=x_xd=Wn60(0Q6nxc|ETxt@S3tC+vFb_VW1C*l! zhVf6!lIN53wdM6|jp9qdh?F6zHU)4#5hkw7VAO3;q7NHRV}?2q!iQJu@O|1`G;S#$ zyR1l2v@)h{JK(lE(JQ_kuYfOjh$Q@l>X6(VQ!Oq!H3fYoeN!#IY(=HOs~DI~E&;=o->@x^mXFoR@0@nQ9t!Hz0LtX5 z^bQof3eBp;1ssa?S%-2v6$;-)7y;E{`~^@R7LW{#&r8v(^?VOu1XN2x<@2!~CEVh( zQYd*JNd#b?mCwg2lpwL4G{NTsgwTfbY~5Qbxo7$6Drqah1TLpq0@EfuZ5>e65(P_m zvykLGYc2X}CIdG#^7Z%@HsB3ck9G>Urr{nDVXJ7M>I_$Xh~#XAL<6izxYy`BBx1MY zdXkA8oU0VcsLS(TRpq&_d@sax0rr&U@KDT05D2`A68`F{z_^$As;aG`tqSXmlBset zam#I+$nC^W-3Idfcks!5=Q=C;gnnZS&&g~cE<$(eus7y}hPJx420Cg6J1$&(=_(4# zFsKwo*Z~*UR)(Y$ShXZ~!1y%#DpGcH!aRqwd zy1p)&Ku`Ft%74cY0^v7f8#Vqrx(@6Q-_`l==rj<1godYoiQPdfaN8%|jcY)D^ZP=o zBDZOhsUDE3#BG*jswbo>bAd~y_JdUDIk=+beZutxa`;7P`U)S*J*MS(d zl5Jy=cmM!WfpKr>9Ee%r=}Rgip*03Uf{qNA7iI{^I~WoaS8;Pk-9~YFhhScA8ztH} z5Z6=OgaMaP4y_~b9$-1VcUkm~i`k2sg4;k23)697!*S7P>KHbH`)m|8lKa#Q^M+5M zb%sGMrui@-a1d;$sv=CNu(i`f;^B~{7>eHNhb&AtGdhH^Hc(~hQD(ZT%+YNCYgg1}p%w7Lx zp1_%1I5YqDUASfh9(4eoCW1+_pa2f-2I#70Fgc1P3Yo;2T)`xnVKO@4qJT-T6&Uea zFgbjm4F8^TIc{6H>v3@Ob30EvD+Tcs`o&m5Je7X2RS-|3UrcS2<~#^^7KBm}P5ohSW3iF*b)7;piU5G`1o1XxOPY;=eHSu`zBHT%=fg^X&;? z1kMDnvXb3}>k6~5Scz1AESf-B?`c_L%qmP8c5?bQG7`^Jg0qFSamnicg8%rW23Z?p zzK>!?u`>iDJFH$A@}jPg?*o=0kQU57k%qZ^gzl<08Kg5f^{uD2q`0|D6!WuqD3!i?%=NRF0tnfJwKk>YnE7TSK zgLk>WE*FnM!_Ws@;)gC|8-$?;S$Xc{m^^oKEDU||C&0qcoh-bWmU9Pltt|Hp#%id0 zSz9ZTlVH3Mj=pU4WEBISfOiEyvR+0cGeU*G3pvmnx^N3wn^JgHg-8z00m0!k98Zh1 z#iam;j|bm!@_}WbRl+A=K?=zV)&n`IA7^2wY^kr`Slk1uNJuo`5)B$Rl1wz@5)Dm^ z_{5=H_C}DXV%f-4&6rOe!KF5aR8`ByraGo7lF3F~vXQB=sj_6UF_&y?YGJA?>Dq*I zZDQ)&L=tYo!A(rNnl|K<$8aT@Dnq)OrKz&%kXkQ-L4`M{m`*fp#^;#E=THTMrlqMW zSp}74YQfmlc$*qIh&CaBNqjzauxVJDs*{^w6KY5>Y49cuf~#=BB$TGfd(I_<6Y_ze3F{b zm_oLOe71%JFBLS^VT!|!0@bBY9MGoC*s#BV&49qAd-ZMDZNO$o;0jHVsST44dk@$e zk#MwWF*fW&U~5dG(Pququp@!Zh#W(k6=TER1U6$*D&bS8XzWtZbSC6I*i86rf(iQ- zn3|BUU=jv{U^3-RrsM~hgnllV2yY@p7DgLemrcP0aWo~0V5;q`LN+r#n;9_%8(Ww; zZ!!m$aDtHuu^De_M&PELdeK|(CJWL+%AqB1vLtXbM?Htlc~f%&k3Xo5UWic4o5ZAR zok{2Zlfd&!YWs-bu@~>L7lAwf>W`b=ysbBZyH;q!38nSnUG^bxv2nePbLX?U6ZlcG ze!KPMZG8!x9Hu>42*rc9c@Q{tN<$Hf^W=;3BybL|wwi@({rGJC2%H3~KP&X-ZT$(H z#-KLA8bR!&Oe1;I zNa6%0b`9ap7v@czu`qT{^Wkki1fIu2gA@W8#k(9uJix{dH(%c5O9p^RsD5G7M)Mv= z6EBI<1do1vHa{{JZ0w*K!)F^qCSx{X7a(LC%V!%)X4PdAOyhXdI1&yfHV}W_qd$p4 zj}FZ2G@iGOCx_9-t{^7xwh1Ih+BT85O(b{F#t!cQ-WEVAr1MSUZIj4Xvp7gwP)aB8C#E$V?=J zV>p3WPYG0H2@-6h;SZL4b)X_~NC<;WsE&<10sR*h*#!g}Ml5xKitLqeA%wAs5~#>g zB-lXlJRlziDsl-4wo1290u_PV-RYbqloCe?ROE?tDR_k!UkWM$Z&RfQae|Mnlt4w` zWubHpDG&*iKt+tDi9|}EB92H1CjbN=Nt8fEdP@`AD1nNMMnV_~f{*Q#KtbKlZN}wWVkzl*nE=r&xh0;EDQvwx% zhsW2CBb5@U$QNlJX_P=kl$506*h2|a#25)-&nDEzUP_=MaN&1-Vjm??5xA|VKCzz? zs0dtPSHITNDS?XkBO%n7Fyu0L0)`waG8YJ8^(q8b6k8^M@3?g5O(o` zk4#FSBJoJD13QZnsK^l{gkwIz$016fB6pBrr`yAnKtoMQV@`R+s{D zloF_jg0d8Gj1s5_T(Vfdn;xeGDq@BN+xYl%5np4dNNXg7(~&|PCn;nZNn-ZwVA|%)vJ3|RnBpL~JvOG%(R3t&#$2m%%B56nn zOGhD&^OQhE;JWhqQ_uxUpdwe1V0+L-N}wXokzn_7Ig~&}J|n?SAGwr3Md0F~`aL<1 z5~v7V%vOKWzC;OB#0m*^O1?}9RHQ2s!nqHjKCVy#74bxZt+A_=Kt+Zj!A{!OD1nLu zA;I>K>y$u6BBhBNlt4vdkzjk!O-i658A!1GBcBqeNH!8|yWFA#Dslq}VWlP1M*$^J zkyl6vr&|Q#HYHFIywa#%PcEbcDx!u28^;|=pd#>)@A}(vmlCLmjWltO5~v8=%~XGO zxK9aG1g;sV-!2a*fr`M7#r27Ylt4w`H^=&=JfZ|DvIq%wrYoWZDzX|0wigyt0u_mu zCQ2xQilj-$@t6{*$O$CaUigF(sK|9B*zr2MXN}wWhq~mx^2~;E!33hAWPy!WMiv+vhuc8DhvIPmYPTx`j71@mh z+xqV)fr?}!A#AO%gn7>su!KQHt^mRA8a_}LsK`xp!5$M-QvwxvA|1v@N}wWNkYGE| zCrY3qYU)6kF-NVRDS?XEBf)l$FO)zC~!Bv`_QK-5qI6)zNMS@*>%2NUrX@>;6 zKW;z?RAc}W?AGFyczh|Sh>tX(NC{LVKspX3N}wWd-sJb{W7A;Hdb8k9gqK1ut~qy#FWqzOLQ zp|3>=RKy$!win{{vV0tuU}wUHlt4wI zkr3KNnCJ9)0tPlJk^%%funnjSRAirY7>1NUMY54#r|d?QKt=M9U@HuN_U9`M6)8c2 z9r{L;Kt-yMU>DlPlt4vfwSZu&!-Nv3h!zrT2WmnIRKy$!cIk;%A@Gr+B92I~Lyk}a z73nNpN>fUpA_I_Mr$RGIpdw?WeV9`M6`6?yJ6xJk0u@<}1Uo1#D1nOXkdDKW5~#=_ zX`(qLP>~!Y*p?Gh0u{Lh6FpJ+EM}) zxrzik6*^M_6{$diZMk-oKt-yNV5jx=lt4w)bbw&Teg{gRB8{bqj+8(}@aoTcy|5D{ zP?5Gsuw$+>B~X!m(muLS0u>pB1iQ6eDS?UvAi=hr3nfsInMkm^sBV-%Mb;w0_ET3% zpdtxKuzk#p5~#>QB-sAZof4?XRV3JU=|Krp3tlx(csE9KX>?Gw*2~?yP66_SzmlCLm7ZU6dqX#8W5kDl@;o?aN zRAdGcY~%N%1S%4S1lw@^DS?WtkS=8aB~X!gB$_e@4Ff5Gikw1%o#+Np0u{M|1X~}2 zDS?UcE}B*1S(>N1lz@iQvwxnMuP3g zBPfB23`ByRK1Nak6&a0$aCxS1eB(_CRAey{?6&w&0u_mqCPq;L70Hl}!2x$DP?3j7u=U|b2~^}A5^UR!p#&=O8wqxD7)uFMM7JRj?9d-a2~-4baHDYu1KXb` zU|^#n-GE>>Wju9(iu6VoY&V@i2~=bx5<;a5g-qlLCeCi4Uof{Mfg!EVVE>H-x>Mi=asOr-=WatH}_@|Z>mR3rxpwqXM)fr>mr zf^FC!N}wXIq>1U2Kt;YG!4BFPlt4vf^?_g~v0zG|BI?pa2qjPvLnPQzW>NwbX^I3p zoMur16={P6yY`q(2~?yv66`8z4kb{L2}rOlHi1=2HR{IfMkeDPfdAMe>kft0SBes7MhK>`b|U5~#>WB-k+M1!#2Q_&Q)wh6P!VS&*o}>%1S;Z=1lz+FQvwwkiUiw#mQVr} z@kN3i3ri`1icCX-9h1u_fr>;($FZCesK`nr*fF_+5~#>_B-pK8NeNWs5E5*St)c`f za$Y)))s#R*t|P&2OEe`=k;h1|-D3?UP?0Z4uuG4%lt4w~4S`^nK zsK`Pj*nz!;5~#>VB-mL!juNQIE+p8Kjq#K~MRJf}Bi%{~ROBWS?7&W-1S(R21lvy& zDS?XoLV|6VBubznT8)5Ud(bvYpdw-<*sa}82~?yV6704lQvwxnMS^YH9h5*t1|h-r z(-caeBBP~=os>XDrb@@LixQ~FY$Vtow3`yB$Py&jIVhD9sK^>5gd;g&-;u@>FrA_z z@j$Tqjy==`DzaTVjJ=dVMGhdrPL}&9fr^|&f(>*(B~X!zNU$g9(kX$8JVHWfT47T% zcmg&B6?qK=yRSV!U7#W#(FNPG2PuJy$TtRpZP`pppd#8xu*b$(lt4vHkYLB;AxfYk z4$`F@rUWX|83}e4J3B~X!UB-rk8iV~>EWhB^0Pg4RFxsL=pzhqMa6?u;Y+b(A)fr|V@Ld-;Z zmJ+Clg%J=!Hx;_rIi7$nhKkq&!FI9p)CDTi23@q`3lUsgpe|6603g^cxkz20B2&MT`Kbw}+062~JrMRq%KgAa3I*zX|JgZRAdplU}y3-)CDTC5(u_BtEdZ9WIeiI zcPMWufr=y{A#@EP&UZWkm4%8N1A-m#@2Lw^0D&rRgP?2F$ zz;6nmB0d1H+lfyhfFHh~B2baB0I>6`3n*B1u8NR z2=+XQJavJJEJPPU~YDzZwNP@n`VvPpsvY7_7C<~J1;Nd|)5R3!?aB75opVN;cP z09p(c$;2|)p{ha&R3sk>c3V{`fr`9ALRbL^ajNkIGzlv5yDkg?P^SPYqDbh52ytrg z0K|!kXaZnr&a5FcDS?VOBEgO!ElQvwosnR-Rhts1h&K{!tLabz6`3GS=u!d|nITQ+ zQ34eSlO`Hc0u@;%P3Ths62ME?hBkBSbxh~;C zXqLv5Kt)QCV0{=-0u}j;ZtC#hX(A70CdAU31~H9{8$2MKUo6 zcFk`^2~;Ep3HE3YUfe49Kt*tH5i zDTA+bRAf8=wR5P@L0eM-6`6wsyWV!91S+x$3HIou4JA;KcqG~}vuImNpdy7xI5LDY zB~TFsb0BP)0o{%#pf*quM<9e%EIub_hzOp@1kKe7j$_!VqbFc_x7r$z_-lDB(c4avDTZWKQ} zTlDa1Ug6~%=dYhHxOt`M@$HZI9~Iuuxma-LL2=pZpU>|XUU~85{Kty&iYG-czkJLs z$UmQXx2*izv-HEqqT^S^-ArB-dm(LA?8=49k~Xf|8ke{xdehR(sLks)uYHxg>rBRu zooTUqca~Wu89t`Ox8$Zf@Snefy}ndiCq8IisITgF!=j_3dNo zA222<|dXC-b@nqcO*+KJL_Y0cedDe`n6DG9u51cUFNm)ffQO2mR zrlPBco{DOpX8HzQI$DdHiH%K7wRF514iR^@w6M0GVs6)Vw4IeDA)Q0plW-+@zBBK_rT9vr<^txp+>k?u% z?A#QUbRs2kf9jq++1YD%?MTTuxP5zU=HC4$4<65mII<(<#E$rr^M?2I^zP$3YW5(v zt^>P`?&C3J@KE286TMxAE$|)RedNG7(?aKsTrhFUtnqy(&J6aOyda>@{Hc?I0=)cZ zE*LX-dT0}k#=T_~OdBbxH_+{&YtqnkWJ4`=9TR13qlOLpdTDlVYpkVdV=ZoBPHf~_ zwQ6bI+O(6kwOy-bjoY_w-N?aF=IWytdEajoy~?|ub35lRPTrY$ zV7+TkkCE=4y=J=)^6xirh>w@=2=B38{pJqp;nI6rch?@?J5v!gme-SMU?S5( zuS2JfmS)zfc5UqK%nVw#bM9nqr|)Rf$=S)EZD(iWi^X~8ufD!;w%}&YoeNLS-TF~@ z_xjJ0{9E}2w;z5l$vd~_*^8g)FU!BaezEQ3+ozS4Rb>@FUVVT1vgX(O&(%+#yj~K$ zdu5dJ;34vp1Lfxh$_51MO!A70TeCc3>v99nemY^@?FYMvUAs5yKQ%QqIoT|1OsD=s zJGc(+Flt0Q*EuPtPWZU>2h3n%Wq@0+p)S6?1N)C~AMESnGI+3?|BwM=!$Sl8 z{N{|BJlB6}V1S>;f*A{@PYMeQpBpkJeC*typ$!xjjnqUaOGQZ z?)k!tmoJyzyHt4PZhl2^VeZ3{yAK|`$bb8!^u^03WhF13S3WI!{{H=^%8y@PysrB7 z#d>hlfUPR^ru#2lEcCIDate@uD-gA`jeI zz30J^69rLGRauLxV%An}TJkJr-;?zxO1CA{Y}wl7)1vL)Gb7%uj(u18W!3G9ev3cc zT5lbg_ov~-%fzx}ACG0-9BPBI!XY!d-r}wYglbLn$^wAwzDJdu1hI#bu>h9ZX z=(xU~ZasPhkL>O1-Dgh!f&B-1Pw?vQ(__ShfFPgHu?s@`1q6=m@7;Um{2_CK!b9hb z_L>_18<6uasW9c0TW7Va53ipYB|}e(i3-!(TvQ$lYk4adN2aV#k&? zYoI`^jchwKaB5-E%FepA8a(OMp`A)A>n5GG%-XjpIiHvJ{z1*BpRaFRe4krfdFSW# zd&O7p6coMAJzx5^^83@O#}!}Bm0$hxru@^}idPR`zrA_xT>gizIUim={&uUhW_i-W zB@qYW5@Qb?%T8OqFf)G9k=SD^ViK3cB_*XTTpFLSe$$d|d*b(mSk?B=?_!^f-7)ZrsWc6A%NRi7v{{n^1Bd(19_0}}a{7YF9X&?R8b2p^bZ@6Vjno?($r*a+$m;0G^^}#@H83%; zYHn_?YNFd#u91O^c{5A>_J(>o+U;Sv=V)zd@7T7jjEz`DMNLlZ+**fRyi|1d+_~zT zpK5-8czijp{N|lU*YD*Ql;xi-c?{eCy!u(?&6?7;-zr~Ml{~G!U7T~N^vll&FRS0b z`1b4TrSGMuvyPtFv~bN{nEyAfS+?TD@?{y@x9?lLe%;~4NgE>*;!-x8+P!V_hM09H z(vu@H_v}i~JbHBD-ps6BF^3LsJhJQH00)dd}?|7%+9n#E=D(7tHXTIXftHn7^B!e`EQ^CSnauc{xo- z`36dIs=Aum`dS_J47Cm0$y&(DH?U~eQNFp2U1uG$cDCkLEfpL)cW_j1-@?8_$Id#P zojX|GEX#rZ|2F6Pwc8gf&%-?MHUI9dYY*PtJ9{DjR>6m&=T%pqmHv2n^G5E4s*0DT z&#OLs`BGe6UG?SGkEhk;HQy5>(^juZ+PrM-wl%9_H!h4_p1E=Jmbf!(HpN73ICS#h zk)1nt?c0BHXY#&?%#__(+n2^BE<3gF$iBlzw;w#cICIyIe#55@=s7a5yQ^1-XK!~u zpF#a*_U}J*NYVxu$;M;Xp zQBl`7a<kxG4AG{uK;(~A+rX#j`Q*NpV~8Y%(RI?ZvHce&YT(? zI>)b1=;VnZ^FzEs#<26RS}Z0o|0}h0wr$_ARqKuht%|Z6eJ{E9;N7ir4?fiVtSrkZfBHJ_>4(CfpR0a-%76E*x~TNkuMf9AJUP21I&NFU z^2j|)Hyw_N+_-;bbmEH52`e|Q+_Wt!F)DWb+STc&689z?-?1e5(6;FGZQIsmZ$Ei3 zJNFo7}BW{}}_ly(jhe@$4~g)Ua;ThYStuH#KbX zlsRtGU8aPL4W2w{TCn&0iL(~W={95T*x=w%^W++IR%qU(MFTklTMZcv6|s?)Ne3O3 zM#?6}@{KI@O%&y=I}U+-@!Rrm73V5T-J$ zKK=Ok;ra8O@vE0+ByHWdY16Xk4bh1aX^E>=Z(0|hxhOWVe*cd?lDuch$+T0k=_fK1 zPh@7F$vU}vLvLRf-<~6fj2YO&bBt$?KJLC=?(=(%7}z_^b%^gw-ytK%O&d3_+xU4C zJ%arMy9fGD4havL|wuP;^lK~OiIkfL!+^SWxHfCmR%{#Tf`1Jm@v%gC&7M{Ow z|JkK0w=O+=bp8F!2e(V_Ud(y?;P&_LRnH%O`SG>l?YY+<%d0D2RaIa8@v8Du^{1jI zAD@1H@^1f%#j8%OShHyD(#7i!L`Oty+`D4yve+#vPA0C4UB7$D+EdB?%iBR_6!>AIk<;w*NLNs4DB@{z|+em z*k^dR{^P^P&6^l7Y1G6SQ)bK@G7gS^dWTJ%JTEX{@QmO&vqO6XDa&iZ3b=u+nnMFE zU0DO|j*X49Om(ddMUC~9n&~tUwQ%O=e|ZP1W@2-_X69`=wY64nXWP7uxrI^ZmaQMu zT+Y96<@|$pxwi^06y{gle*EA{RY^|%z2b|X?>)Tr<5$(QN0q<6RlNUl`{UD(FTPZN z`&n4?`t6TTpU;1MQTG0M;<1F439AyLB9>%r-nf3@vZIMBS0ruTlCf#g;>}SpDNA>p zPTO-d`uOoZ`!Z8cCC6?{%Q(JwPt4)0laa~U2X`JmHn-2Hz7uBlhmGnstY^shfUt2sQ>Kn}nKEwNkTDZS&kgjQJbluX{4GpLDG zGh6cx?K&$On28#w$r&`%&^K{ztkk4&bJNDUjhbt9R%%8%+nL+8Y%Wh6Ee(jhX{Q!# zJGRpy?VY-qwILmIa%!$Ue0BcX*_%1fF67)g|FY!TyZl=ZZdT_O-hc4*;<@st&mUIS zVb%T=~+8A9Xy|a_hn@lpM2b$l(u5^iil-vSFMhU zSrmIDI&Q`4Q*jB22?>WbFWwLznQ{DJ+==w;;}IE$Q!-Qc9?VQSopJQk@$}deJ2H=N zKe&4kxBd<6)^Cu@z#$?1-Fo$#@7-&t@2~~lZo`HTpW{7u0i5dan>=dPl%THum|SbzxSr*CG`LIFE5pSdH<~XTusr5)QDwq$y>H8-L_^; zM0DhV6-irG$ER+|j*E#puw-fS)>PQl?~UBCW9P=S9fx55zdY;c-aX6G5A8Y3hjYpQP#{J*nbz3(bT6kdd+C@9!<92P?pR)aUTH=v?ncKD}Z#s48*osr>2h!6v z?L2%YdGW!W-G_URb8+cD++)BDx1qg;4wy8mkM97F0p8yIhm0N6b7ar(QK3`jdj$B8 zof$AKr2DLKA#;L;1%(HV8$U02jN1(V(VB+F?PL^W8!2krYBW%5BU01THSVa=*vLS} z!n}PmV?Aek<#wHAtvWlHHE*WlWM|f?vvm^_Ek|RAmQI~oS#)r|`S|*yH+k1DZpAEbqn5?-ftqT&en0{^|3(S8v~ce)sUhx8k1# z#kUJBZ&qr` zpp>h#{jnWrLB4kTx8I_=)QU*A5Xy9K&-b?-5_*8ulXVLosKG{?Kgzy-b` z1BVRt_a8ZB{#^fQ6S__uJ#n;OpOE2UbHajV^cpjJx_|Jnd0q-l)J5N-aM|k`Lg=Ov$8wCKh>;;^M8925*MxA7rkrgiiI2FlTOC2UAHB1N$iH~%?CDa z&N!L2f5omd>HGJmr|ityzJ252wFgd|Sf3StI^|Hxk)zvPeLUukfE9lC9#cKLd3NjT z>pRox3b*ili_J8h zZ5^CiIT?30Zq=-L>+3gOz zR>f?MOrKT;~w{}O?j^sU?&Kx_s_r#IR6AO1A+?fUA->t8Qho8%W z?yduBkN>6&o#QcNn77vgUw_|`-MahxOc+0HOu)49;|7hL>NkGcjM=jXOz%Byw%?$j z@niiaXgaGJsjA4DsX1wi+cZ;?*KpKVH&WM7l2vTjuw5gw#&SlgO9%WYu4r-d%7tr1MQ?L1T+h3BzT!&toeve?@0MJu$}PB9`04ST zM{lZL=RUdrwBp6vn{RJby(<0m`pS>)WpLrf0L;HIU?lpAm;BKxyBd7M6Gq>NoIsQ|p2ZW9t>^FVd zj9KBs=S}n;Gj?E*{|r3;W7VjMoq7{RYYjzZSpPdWR)g(t(Av16shMUY1IHF!RK)E& zSas>3V&B|KuaiwXBrqC7xT}b&%@*Y>o0!3tonTZX~Bo*@7}#E`273*{ckVt{e1fI>HVjrkx@(HPRA~a z-o1K5)P~dz>(+0GU2!~d-DWucI~2V%;#A81-El{^XGBHrKOUX3fBUXotk+1 z^pRr+qxPTdJ;lRkjOTDy7x%yc13lf{drx%n@(K3o<=uZ+cn?>f5##3I{O>+-mZyJU zaQErcr-jTKIepTMxuIdR2hIzJ^WW{%RT|rhX)zdX?)x=2A z$f$)y$M%X%t_ZuA z4;;@*+;#-|f8y~&9-dQrjqvpE>gv|rzvrOt<9m%7?lCgZr}qe%5I-+hZ$-~;p~L;g zkC{7Rdf#dOQ~dk}P4pb-F=@)wFu!r#g2#G|HZ)W;>ZD>w6t#3kGO{gIIx1@$YZ=)o z8OSKN(Ul`wj$Pylv6dIxG!r|ih%K5Lw{BzCsJ*yxtIkd)U79*5lw2vg_VUKLOI26y zUi@@B=hoxj_ip6hzFlsGnYKC>&VQVYjoYw4{X}AH+^Mu3M|ZB; zod)MW)8hA@%uYQP1;>BK*B?C6y`RU(xwGfF_2|*h-_^|>&VLsz%zBU-Q+VcJ;hv=8 z)D3UqQYzvzEB7QnJH5R8RP=|v@xN9ab?^Q$;qb>Thx|h2OtssHM6C=}TQ<^cVAQ#?YmA14lf9Vuhs~eU*1=|ehfbEAoo1`awS0Nu za&h$U5;*OhbGK$Gcm8|Jy<1lb9>DqU*oU{yl|6l(mX^A0|J!#jPVU;aBkjbmSCuJe z@~(Wz|N5@%=*1Un5*Du7l6mdeswJD(MMkZSNPLvAa@E@C;`oFmi3!mDuXgP}y=z5LuXJ8;y9fq4GUWkJA#v9klFO$@Pqy(IqKnWXO#hrjI4{*-p){my5r^KUJCQNH5! zwZ#{nt$Fk*=HbU-R?VG_6?9rPF_hC*?`+h(eS2a5uWf2z=VWVO)xp8Aqot#wa+A(2 zTRwYqJ@3_x``2RJHT7N1Y&}$*eeLvWE%byLt~DHe%oem&pr4M@$X#51VB^equ;SP-$}P&*YRZnOUFHGd?dmtB(0q+v@D#QZ+^R6eAV4R!_C>Wo25mb@cY;8+h2+c%Wq%2mG`6SDjxV(RK2@a z@lH7Yzy0~c$MdDXKR^BaEoaG!b<0*oF30uHhK+|8Zrr$hRd!O$mSa({|2w>R-G=P+ z&8ca77Vg`ZygTL4bLa(8YZgXlpFEb7nSJ13=B_xmiM_jb^YHNO-ALp%cu3Daqel6- z_nkjzxYtlPD0Umvf6mlQM8&UnA(Dhf)< zDowg5>NJ#ZsOzYvq^WMG)51jFRKH1srVWgY>?Yfa+uKiR*P)e#Ukj^oI$}rLjti9R z9XqxTa%yYtG_$1O{!aZJzvQU(n-UTZuH(mlO3cP} zSt+}=oZ7bc%LX|82}<+PASYD9OR!fAIWIPQe}g{qORF!bdg5mv85m+_`}e~H1L|CHhqX{-!bwby+wnk=j7$)#I1{siC(xi zDRTY#jhpxG+rQ`3u473s|D_&Y2fuwBJ-+Sa{+Lr|jzpY3ntpJ%(fN#HS2yi9kR7Jw zeIX_nvp*kn__lu-=&(?mpl76maPj11Su^py& z$hh+1OyP|K4{jWPcKgW3C)wriJLEima|@3DdYPHVEiB&j;Kt+gn|%}HSFj>n(QIC;imtgBUz-ansazuM&x(x+WuuZrrurF$Jm zd0yDJTUTSSasR6)V=iu9(xiclYIk`#S>uPX%L~_>mV2~(?VE(-6^oKz?Mr^KE~0rm z=jJ~n_kUf!@9Uz3Z?Q{1?Ay@aU3a)HygX5-xlBVvT^S{nE{)VpeYfPlihccn`~5rp z?91JED^d%tk9IP*ZY|THMZ38tKU_R^qh``{y9rhkH^pw;us&uTv{nyUOBZc>-&RV# zHku<^8V@$r>Tj;T@#vAmhq5vc9ypVI_37`^DP!9@FK})-&$wx7R^|4}Z>8UssP*in z1n=z~_b@Ou6&9f2J#Vc~ZB;2^Rspj6M zZ}&HSxwGz8UdFrX)UvmG%HQlf_uY8=m3wEN<(w?PE1D5}torAHnvZ?EX!p=Dcav?{ zUE92C2dl0v8~YIbq52LZj2&JLa&9-Et-(|$`GS3u4O)#?6Yox$>fCZcn=W&entl54 z^W)`@H9w*@uUQtkB5V1|MXRHiMQ%z@T4d}JY_OoKzIz{iUyr1p4?+SVvI%b zVEcf1W)o(12^!bl+pm4tv^JCHI(Ch_zH{l-l?geqOB&0ZJsEu=YjN?xXj89Y?#f#C zb}TJ8mQuBAaYfv*%0(&9x9_e>U;g_{+WS2xs<$V8j@?jwVpa9;N6}But|&jh;z{xH zi`OErJW6yJ9!SE=3XSpklAF z_bw~Dzs`~)sVoDpz0W-u{e->dU95NB4b5+akk?SW98e89NvF$ z-w|kW9B#zHZ}zbAO*=Ge1pj{t*whiYLBf!DG=Tr$wvR)n75l2#!v$&fI}c&*$0^4l zfa^gCmw;Fj{Kn!%9Sk83|2W4``2RMb!;<|5{~$>JFs~T+w;cW%;ok``KpXt0!N1Dz zuL1mP2MOROz~H}6V^D|Iu31~UJFsQ5nwEE9i{hJ>hxF;+%`w8?oZDw|VB<<-ylWQ9 zx7|^@w)B?nM&=ZZ(l6QvZY;eD!T7*&=%-tiCz_GPS3vEjl~L|ph;mCc)UMr$mLB9` z-dK$Hp;U#dG>>**jb@>Y+4(Zif%Te#awN%B+cDgtO7mbNdzXW$GOIM5X=F7Sh9^=k z7fNB7zmLV34_+vL*nzS>N4XO$9hl#Ati_n}P0KqokveOfk@=IK2~blb%PxhMeS4vw z=@9b;b4kbc8C&JebO)9&153Vza;cVrmi?*xr+l#_MSEdPaVpOOD#Pv~7-R2;vd4rD zy^L%S$+(Ibu9<`~auUjK$lev&#F^c)n>Egvy&8*Ui}A*^Z+zcOH?l{S-@tdRWqE$0 z(w?Ba0@JZxL!s9k*cbCr8n$6MkB&vp8)u<)5wyctsK~@T+Hj+SzF-ue^6VPZOCXkv#{#TwbTpONd5%%J;;~Oq`}F?&>+Q` zm;`@rciAk)bO_`B%p?l)ufkJi|Sp zvqXi!vObGdhK z>=n_r$!Iy4y(cnkM;gWkLcz>zKlvQah7mcJMcp`-PIN2&QM*iL zdx*}rMqL`)OEhXf(loY@=x69#KWMQxM9ZoFRlST&+qMDJO3%C9Mm9yeG(Y7o7KRl|*IK$v@Hvb0mwas`&!h1VoqYS%nNBscR~ zL^Yuf+gK4^n`kNMwy~nT4v~R$ZoDp$Gf^>KkEkbE7U%Ve=E01EHHtSN>H(HIE6p1c z8EE!b;EjmdQ@TpLG0`w0U*3eMD9}mf&zlmxpk4{$kun|lyw4(dGoqdy@(fQ{HQt;k zbUx-+gSR01k#1w)g^FhML0Zf^lJ446q@}zQ(U}2xhG1CT zI}^R>kGd5+n&>ICOE_P{V~AYVpl&ViLR4uk(t6%irXw$#c`VT#Xo(tpD~}`Evl1=0 z@g79Eux8caJ9s>i*ILx=;5~`z&B#OYRvBnA1-xJmSBF3k05GIt@J$~ zN%RnO9r+LZQ=-*W&YOG`(T~vbG5j|FjOf+p=<`QDTBai}clj8i+`*W`eLj|`-3X)y zd>m1ufq91R{1G2dbTk3!7e0X~ZaMmV#U~O?pb_$hPa^Vw*45b`Jdx-&>Hg$NM4Q2j z4u8)#ndmv`97GDyMxsJuGSOKgCozR6hsZ^w5*=HJUR=dgB2PLq6cuSiSE1B8a}()A z(*_~Ai)lnfK0_)drW0*jk5od;AbLCzsg#&W)Rm~Lm__7E>B@`QMCU181u=(c4%OC2 zWDs4URk5nbBzjB~BIXiRf>EHu`aF-QWhhdFm``+S15#~~MHEC-Uo0R>h8}}8L@Xp4 zOcW^=5tRr;T??_8D1hY|;$aC?Ibd7W)#d@Mf&`P6VtWO-^Gvais27cpxne)jD430@e7?vgGLJ^e5;?T)K7sbU#}1al z%RS;NqGB8=Tbv@Q>Wp+yoG1Ds5$TAyK=hXO@MGd4Q55W4u+oZeh^7Z4eI>pn`Y-|M z8*z!qcOTMqahYf-i~^ngAig8oMV7b36{5qLXd@|F03Xtxp5<%t_a>**x$Ufd)qOgRX{EusV>-Eft%k zmD9=a6HyH+i`j5jrXw$f4flxV61f@f6E!BE#SIULKG3RI%J7iLmAsTSJR+(=tyJIe zm?)g;(7^CB(QRtoNW&8%uOuv4l;J7S1lU&=^Y(^kMCWO3?PB@mgk>Piu@h~5Bw#<-6lmz25m9H?oCt3qDXE|SE_=D&=wdY#H zpOR?rUvKz8B$5Qz&gMnxQtS{^MZi7ZN zY6V*EHt0kiQ1?{6*I*>N3?xgU{-wc%$e(I^+F&NyLY8L@u0$80w)^iT8l=Co<2T=r- z^RA&d(VyhyzM%wBGNe1k9~w#$1<@(!p}~{r=TxlGV?!yT_t2ZE{IQ`5Q8k)XKO6jr zuA9*EsllIUTRPHjhN?tu;*s7M0*E4r-WdXkp3FquABG^J2DDELEtu#VI?3r;2vGv* z?6goKC#YX4+$0YpdJ8Kxv|D)-WA5w%iOn`rwesjEX210(AsSk@)-rLk05t4DM>8gmcQ>JxnvfE21V zAR6##p5b4-y4H{=gwBf9wMImzpjW=;HMPb>6R1~eYfXr*Qd`&6ni4&t7ObyD5-o;N z_YH5VH6uDryIQ2yoTxSA_Z@GpwIH&m{90&HL`A7LTWT$dc7m7hd26i|(J$nst=5{T zC9Hfmc{{BQ(FhvX?X|Wt6W8zfYya541E5|2Wef2 zZc_^m(z+38RNEn1ccO~J^9--~Xf2lL@=EkFPKzVj0&B?ce6rSqXbS13Xz@f7A>E&R zrq+{a2=)6+trt-lXeA*swBAJ7a1wwMi`IvzFqF(F=4yS3wo%FEY5jXmO!+I>b^u9M3ewCys%iN4JPuXbj!6NMD|cJcd<$v zN_4I~mTa{)jHng$<{E7{(G$qMgxIK!Ao@BHEjMW+i4K6SwAiYBN)%5$wp|-V)PnkU zr}i1qH(*&#?A1mS4JX|`Z4A*q>dkCzERh*TNJVi(8%K16ERSg8i5kF+^A*Rm2}DUW zCXQ(niDIC(RmBNy5|KUC_OzBrv|s={SBZ;S644!6TQ6$KL@yw}aPgg%LgYmKa8;X3 z)B<{}hPbXxA+n>9d|gW=a)z?h5jVA|L}_s5)7eceOxGKox7vS->{qIu8{G2&Nk9+3~MP!^FdwfswM0nr)iqdaXP z(RNsO4EkcC7}{lYeF@P37-xNiy}p!a1&u6weHqbF+DV-Bq;h9{CDBqkv%Bc4h&s~g!mO_*8ctr!`sdOT+GT)n)z=VBr4i|&uO$i##P%$q zuOs@F+RRg5PgD~|&tOqT-$3+|cCNDeMxtlb@8$GOM5|#3BBUIA25Cs$Y z=v#@}!;XG{SJk%>U4Z$X%0u++M6)+ySt9fuM1O2Xs-f>BYP$icj=qcN`Ff;!`fj31 z>yR4gdx*Bt-q={*OXNi9TIlhi1MffN9t#Z>XMgF^>ajfsVw95uZbqn3`o+?6D3jZDf$JXSfa`LMWUkAx>NLT zh!UypQ}u6&))P(BFA;SinyFtV3L-BV`gcS(sVochD@5z44vX}wM2~2$EY`0P^`$f4 zV*PufU43z!Ezz$NJ)`w{sr~~|tFfqCuHPW4NV95{ev|0vK-7J%-y$*&Kw78YCVECs zwCnXdM8{x`rSgsXk3<62Pn~Voeh>pK--wWKuE{iweoipTX#+|}O_T_N2){TO2i|_*4Ir=q;T*xbXwgPyOHx0bDp@8a_$+%N5!PA07au z!wP+v=|(|RqJN$tOBjs?qMM*wEbNRL(Q6tLCb$EF>3Y%X2Dh4sPScpMH`);$B^_M; zBJzUVmkURuJ<(fQ^_`3kMEhYKTrG+i9f=y!tSV|OM06B-bDeNEIuYGlg!S_Y)hqbJc! z%019nif9v2h_N)$r$ph#GDP1KRX3I;I!08>=tVRT#>6I3&sdJAIrV!(V|k)SH2WJH zy@@*0I?=*df#@dm*f!D9SdpkI?P?v3m1H_v3u25uM1HjUb~9Ec+CsWmqc2e~?SH+D zRfzV0(faf!5Bt#iRzwU3@362FR6TxF@mVfMC^xA#%e_6Qjta* zs}mI^pJR_a7-y_a)QM)*cw-%+VYJ#zFxDlSOEV|M zSWj9)$qtCg#`;7z!Kcn98ygVyS%j2oY)I6&5>lG65s|?cDc#tZs2-fp4vT5VCPaR8 zuA63TN@N7xF)`g3Nz|2e(~ZrD(xC;9i8;pRM8|1%WEfiz1=2{)G)56sf&Jm6m}_iF z)SvdodB#>m^{73wjID_t&B2l_Ft*X~)2nCR_!f1Uu`TJog;vtpN=3c)Bds!iLOO@Z zk~$D&5Pfd!Le!aPt+6N3F`{+G{zN|1O52UeMANC|cN$ZOMiK2cP9_>mx$iShA*xac zKPx|EOeIAi6h9tym+YK~hR#8{ zV&_a`M|9oJh3Glucf-z1v~@aK-n4TiT1xrdwku53pK|!ot_V>y+{x0}J-ebrJ$oSC zw{s(EJ|F3^ojXyFtw>MoiV=O8f%MGIgJ>M3du~^p=;v*ydudk!ev!}&H?WZ2*_9;S z#fnIIcAh3|UHdxNx_{c0BKoSfBrl@Ik&-G%%bJoZ6YXj&$)D&D{NNON2{NsQKG?q< z1W*|1hSZh1aH2B}B-J3wR8)s(i7HD2lfer<;fL;oebcUq32(zxgZ6aex~Y{3SCorc zI6_Q{o)S5m5=iGuBeIBTI?=|?Xj#lOhiDG1^Ce76h(hR;P~NnZs0oeTil${m>xe3u zmJ=DqqZeP(3Zk;~-0yGNLbNgkby22wrd3eu*QN5{P92oe9%-N=LDW@|fvA-tjmW!4 z65I@HWzy}jes`xNrNez2lQU5T(CMt5sU*?1GD+#HShUICo|iQt>1|%P(hvC66`Lv4;yVESGK<^)@xOXRI)5&-)+JS#MJl`y!xoC=G5&X{(!I0b9O=3-|+o)H&7ejacc+L7BZ?7tu7w`EY)q?o=b z=&b`t_>N-)*6Y!(ibi+#VOJo?qq}N=+`Ow1$ho^(fxNt{GuU@2+Y#>Ht?d~DvOP#I zwirt2&SG}Qn%tSsp22XWEMmMXIwp4B_QKRL@iUS;LAo-BXb*cYc=wDgS*6QYF#3vU z7+xHUvO0v_*_l0O?TxIQ6P7bDWRmuWiyReL=3!8VhJ7h!JB5duMnlQ3 zP0{TvO!aP`bn&^{3{C>Qyn z%#XQ9F(_?gE;!|nX9KnB6+4_?-r+cIN7$iH8NZ71b*7l^*%)7mN_A z-p>hQekOS<8vXP>fbv!t#$Q}O657hhHpF8;y5*p(d=O=^RP9#IGPK_ zcuXb3G!dtv+xf0Q?Ac3-Bvwj9J5e@gp9GS&#!WFwnTF@rX&K;6TFRRG&utDK{O7g?S${r;WxTAloMjokKdwb}T>l!D zGtSyZwm@zUj?#pwSpH74F&thIrIDoEl`54(Z#VrhzIigrF@;fvgra=C0MkzPAsd{M;Gas7#fXoUBzfi{IdO1%pDVJc}y|q zTlz2P4mJ}~QQm|ww9mg8hq89NsgB#J{SVB=);>ouN8&K;p{f|u4?U=ogvTX9j;no9 ze%2Y~)dh)WBb!nI%D|S)xfT3#_7Y*5vd+n+4mkUV}S>R(V@kG1#GFV*MPH z=1knhrc~$$Hod1~zFkOOEQTZP5lOu?h6^o3*})y8@)O*nAJjKG7G*riK65eLg=CMi z=+jUPS1sA&*Scc~a%M3s zc`B^=`IhyuIrLy{Bg4Pb$w%fWE&ojUxVFpqdf_<6THBq))l> z)S30xqLuY(KxtdX0Sufc#*5$NrA6deJ zZPMdDwwrZ({<}6;@pQ5+*z-ThUDnIG_w)1pIF@7!SeH%qwJfwY6GOY9z7t39zl)LDf9Ii1@l!C8rH%E-blZvjm|qg~ z|97pv6Hf@%`;pwCHp3au2yc~9Zg6z5BtNIq+8L6UNY3!b+6~A-d+$Ri z>ynhu8uBS)Xf(Ere6p~PmobxR$9GD_l1~f_gI1C!mZh{x3?Xf|aMaePRefS$4X~MA zu`bAe#i8f#$~A&;Xco44_h^(U)c*46V;J?0JekxpVY_+Jz9UD7Bdu5CQa%9>t;tf( zh?aCNlIKRLmGjDO+DT&VEv!nY|i394Lb8 z;lDc<4J?K=JxizM2EI5Fj!}=xl2p&c-C<%;l*^q^n^g|SRoK?!Mf3Lyugoh&J0@0$ zxdM5~6R%8rjm|c-L$NIfvE{A974~7i((>d13?HCV@w5uqv-vTYV_pchxwMr2t#gs_ zGpQDTZ;b;qy8im4z}fqNQ}DdwYPbl}9ExZDg|kMu!82?IO0U9LUzxUB4wg;pJ|5!R z^+*C~eKwY-V(SyKJLM=yt|^RZYs(mT&j9BTis?r&6-i#Cn7t(1P|S@UnCcsnw?Z&g zy>uKKalt5??MsC+$TPgmeKeiMWf?97qWx+!$|5mnKMmd&^pMdRr3XDV$R5m`G#zrUTpqoZpq@IBg{frj=Z)CQGbYXf zo91-p-y_G8aX!Qp?7^F6oMS9{md`}~^kj6Cp2iq@4Bb zVm3nf+(NY6?1m+;y=xo9{7$94>b?iUgJW@Y8TaKtcuEDd+)nf5N0Or{_Z9QM0IfV7 zNzbjeqh&vm`FR}&n-g@x&!L`@@p5jitcv!7=HYzLqOj~u_aay-*%$Yyk7SRmq4CCg zVoS;%&+qHgkc;f=+LTt%lY&rV3BAd_>qpv(BrlS;y(HUEOy49dkL=&N#;?I=GPUY# zdIFtIVcG9;M7^f6ZKC)SWMe(X{z)In+Q}NpGE1MbB-Ul9L_KR=66<^`bip=p8vjIrpK8Wzrh#fXLP3OQuZr&b0tTed{U544f1)!dLCKN zAo-kfU@p#u?eq>%KBpY2iZT7@^m~N%+~TNut!=> zKsmD*YUO)?Kg(e`Thl2>mP+~$r@6MDp6Nn&{SN-$?L$8YX{`v|#oY5(d+Yc#TH(uN zV!m?Ck?&q)&&oG2vuU&+qLt(T?LJZ~Wj#}f#q$Yz5+7d-OL!^-b05DQOWw=7DcJm8 z9_0f%X@|~gVM!&=4Dz{Sf$?LiUG#SDOG?$t8)v=r5IQRk(#qbEWjGd(Im-7BvQ?!w zIZE%*xk9${cp49&0L`&T;@LPl@t5NZRy{clk^F z4JRBY$9z#vc178^6v`zOoG|pNZpKrnNrpKbYPHa+L8!X7zxu ztosTdtX(;(;|(VaAM-^SO79Q`R>H9KQ`3OCSbOd}bF#(fSn?o!O8Yu=(l$|^LVWXKV?GtFd`uq7uYNeEOVZofsmXfqQfaSFA<*m6GbBx+bmT)zF z>ai{eYbX6U&U|O_AZuETo>gUE*PD(b=QyR3wL3%OO3v9jcG!Z7>s0bh_21V|`RpU> z*mox8=s2^vM}DnkU1Tlf8RicfUDAGJAl6HUwJ1IBqo2Q@a;1lP z^h}yJ3v;pV5!n~=Q$pFxmnLn1+-0hN(j&4jNgN9{C{)}<;z&->P=Q`uAUBqKe@ zd}DiHj?z*-Ls>s#%9zq-%tfw*-DuSP{Vh!cT8-t{OQExb9QpDy8X0fBYshyvhv`|# z`V$;!FQ0e)su?b~g z3d_%)YDD8$wSHEWpM`}xV|z*|{m3@|K>lT)N)K`umQTu+$D@C#wQi-|I>tXH`FE}L zXE$=@$~jv&@fnO3IqziKzNb~a8nu}GjLdpplQqqMM*a=b7W|Z*Mf-)Uo%N`*4$Bev z_ZT^s>zQzlTWjZ29nX?v)Xsmeul3WJtet%K61wXxlv$qPWoyg5Ozu!}7h6tsmoZXG z8>y8s@~y&rI%oDFdy(`fc%DM5%3>PT$LKT1Zgf(TPl$ilexUal(k8#1KkiU}UjyZQ zoS1|=a!-15c#J&AXZ(B*IIe~i4=IuVx#u(5yW?i#N>ZL~ICP{j_F+HH)~uP;z_R={ z^l2S0%Y2hQ$&$13?{is>Rk_x^D1;+0i}E_$18Z@S`p$Y4lD#Qotiz7fhBYgohi6nH z>r^{PYaO$n&Oa^b9noYukIDX(tKz4!M>*PE6wujbaIj*E1>A^bfetPw3PLlLo-G00%P1U-@nJmTRPS@p7iODbxbVz zao>$2JaRvlCymZR?dh`sS@)Cl+`Wccubw~JJf&ywa5}@REra!yCH$Ip((&ZMoxEjI z*o(rlJm1r^ST%~-5{)I7Y4_7=A3?1rEv@_7y3BHC-%Go^Oe^ot$TxNJJ&7!d{LG>Q zji_|W_cop1hSKK?@(EF%gr%kIms2zgDthDSz2$)=%pv*NR&1q46P-&!4B4!UL9Hx_ z%f2EI&nRA=qNO)^u8`}1tkK_B1M6p4`K%;YeraEr-Wti(Sgxp2yOwS&xX`@#`%M)Y zFFnX`D7AxpOCLikhV@y+iPi+`&pPGq`5V2JdPkDpU8v8IS5EI$vSZ>hkVZDJSg(>^ zte!#MYf6Ohgm4UZ-P_sIi*<*1&c36VVtet1TbbR@Jl)w^y6rY;YH+wQH-?R*)=Unxc!yQMa90?h8m!Krgud(#jtMqJIizt3=&q<|R z*-XPhkd-68EalFg!U@ft)epfNO%6M;v^NY5OLI0Vx+O@X)(NCj_Z}eqw1FUR$9@X3 zwKfT4(Fy4wM{09HK1o^zGE-X*^7rJOAa`g7LDon)0rG3@JjhMcuYr87{RFb<{HGwx z>2E;p+|SE!7OgviY@O`}@-w{*$ZxYNgIuJCfQ-zk4f2BC6y*DywjecQ7m&e+dV@^n zLqL`^jsdxnr+{p3nhEkSUjQ=Av6FNy~s ze-3y7@)wZ@l85SLIV)>$0XaClILOw9@*uwo_Xj!15CO78M17D;4J|+xitYgNi6IuG zf0zCs-Lw%Pm&Q&2SyP(|^0)CBAiHZzKrT*N3o=F94)W*Z9FVKDFG1R;oCEoVb_HaO z>32Zh(0&FveBLXNAG8l3SMRs?;w(rn0nuv2D01yKR{N{?aFhuXTK}Ru6jw3pJZ16IaUt<`CWE( zkW2N3AY0_L1o^Gr3FL>I9w6-ys`CO1KP0K(YV!fS&ZYG?|wR76{lD-2ygxbT5!Ya?t*bUIpV1g@IhaF&t>D3vw@S26B|C9mpHJ z8^{%=z95stFp%|~$6<_^0`dp<*&t7eMIcuOd=B!y*a}hv?gv@Sa1>;l&@&*L7%qdH z6@C|FFT-yjT_Z$A&gL3iL4MM?JjkC6ejvw3hl4Dn)dN|idvlP%T6>W9W4l*$WgWDB zAWKXb1aho44CJp#pH_5dN9Ig|@IvjAqOOdk;BC@>w+Y0UMF$Aq*c%J-%e{jk zW^thjAm@mwAn&C)?O?F`Xyg0<2#c5 z;@u6~c(E(w!D-LVHn8uLhYUyyt2(8M+5H;g;jqxws6LC7Cp!6LXMOu+GrjMXpWju_ z91HgHJ&$}+ke^Y?Gnn;fd|T)<$CRy3MZDN6C<&~qp_ALy>7PuVK7M#`yIVc1gjQ6BPagZm`2zLE+KxRu;a?0Dra)P7Cn-%i-JU zC<|w!91LMEHVf|g;LY}xpKvxq$L~b=!Tk!(zJxgryLOIeJ2)5Vp6y&&XRU6#AXaJu z+Dyg;F&rcdwdYw{D;pUDV$UBu4tR+cPN&%OcenTlR)waF8FPKLIH-?ikMI}~A!`E5}Ie$DZ1kv3)F3oohlU+q1ls7FjB zb7ChIoj(u-bV1Rz10CS^svj!K^p9jN>;+M(M~(D8K!v;*{FiDfyI?SU@1?S$$_s`A zwNcbPc`$s7W{{#j$-{x>DY_Uom=$3=6arYuZMcXeR@EmS z$V2I-mOceEnkWVGyAAZ7D2o;9?8b}3=eFo21HK{DjeD}8MEC8Tw)F>^EQ#~|gMd~j zvR@F-JlR&6&ZB*LBoO{*VA$3Z!BWymUaiz*jz3zCx|2Ml)O1cwL{zy{7O%*1$qSZj zEw9A%3TT^ZYV5U~`LLpr;5TIl1BDWuWY64@+AI1w2rXqDlAsP-xDOjiI;_zyAgRk@ z&BLO=at`UTSf{XkyfWLOXvBfTyb3!(lxm7DJqYNM#miSf&n*xUplZwpNTin7pTpaey;9cPFdY>tI8fc98u8PI)2 zF|*c)n(UdPPDFV`S*-M|ji57EmbvTB+e9tqN0en^3wMj!tdS%(y7U*K4vVwUWl@(c zB+8(%RG)1l!m;!~)MuxNj$Qdhhhe(4Os9WDmLy?3|)U zpzFvUC>nGyo^@h{{4sagN}ZU8BmhSiUOZEi8A0jfjdEWp9tFp^ZP~Ws8>2M9)Mm@Hym`XM0eoZhiF+;5v~)RSiK;$ zykj3}>JJntiRY4KzAlw?tx1PI&0zU)C5nPy9*>hc_HFTapnM&cx-%Q1bl5H*b-B##waO*70nq(&Yr0p$GH(VL6Xv zJ=uAs!}-wDqQidZ$*wA$XO4^Uqb|}E3BQD|hhaHWS$Wv2dRfw8AN69+N;f>t%s=X| zk9so?rTY@DQuel_!#?W6DkdR_N9gXY0Htq6PinXyEX(2Q3Ysqgp zl%*d_lR9?Zt-rCKMTc$HpY2w<;tPiv`?KQ~if02Xmdp7R;{f(v>AvpuJ8*mh*DWO?G8|!g zhp;V5_i{=@yCD``E|hF28(Ix>NM&bBr`ip*=u#owFcwOG-6WNLQTnvqFpDk^(hX;C zm2R`4kZHI@cgk^!aRke)A$=Av)7mtGO@!~B%M~S&jbvFw_xY%X@oW^^tf*Nnq$ARj zdHM9$N3rh}J#g=@f5u)a@&Mgv=3GnWa0_%}n2(}I?yC%AS)?Qw1rto;S+vsK-4V|w zvXP1=6-GLxD4;TuCwzY%TOzaYA=5;bt*CzGd!|XOJ$$=e_R21v$c7T7n*J2aS)$E2 zOGGov2`QiOgcJ{d(?RO+g!H@VBjE{YveMzaoyezHEUT4jYnW=GkW#`v%|e)Nx=p$n z7G1ScN7yV2g_J5}4?lMR|Ka%z)6HXPREI3KX-cU5e0Ib_4eb}Ow-$=FU&I38Hvn+8 z*$0+O*klVev|q-qS}59n1@o(imN>4*!S~|FTPV$bHQPXx#XNQ*{a~Rr_Mfw&^&uJL z;IT8;eyvS=ZeYzxCujHu)|m)f>AL*}wnmbvW!Xpen^>-*PGx@qI;E&@h2`)!7j7#W z3aiFu_C!%t5BO^*OlyF-r<$sHnE4iFR`kjKnQvvmk{Iqs+gJ-lxGHXA zy%b$ZLdsTjGpVe@HrBQw<-k01;@Nha`u&v>$P!zyox^rE!$Q0GcDBVrx%zf?R{DgN z7yy=q8c_~7dK`ALC<~=K>}E5FWDD+P3nf7gVcK4nZK3TBd)ZYBWdpsn&~YG-#+X9} zoIFrh%|fW_tO(b$y==6Fa&^ehVu|!|UpWetZP8)6kGikH=T)W4g+2A7F4BbQK3ZM@ z%eR*NZUg1(B2B3CXp&!Q)Kw!&Wu5Ks1GTr%Ylmz$QjvEVJI90UOA9$W<}%ilT9-X2 zZRdE1wYHG6<6$;K(Z13Fj$g1NiYnMQbv(k#M#^**?Bg82WO0fvJKQmT#YQXoHDkEr zDYik;2>UUPr`b_Ov1KMXo?&klnIPR+W^N{Z_U)YNc#hRmRCVf1$FJFFMGGC~Ii6=3 zibAI@cD%?=DOwG>Z!E2p3r|j$*j=RypZ~q%CAP9T=8(mHZx_Wbv%7E{M%r34ihakt zKaq5-W)r6?EV4ZkK93D|`kuX16lq!sw6a6K?i$d?UYTOFraPdE>WG%9teO2|pw1S0 z;dF!bBg%l;nXBJsX-YT4!QgzGZLsL+8_N1=KRE> zD{b(Bzp;|0bgjJpbbe~lC4~F1XY8QTCEDvQ&n&u@knTAJ)%_RV4vdhisdR@9;_&@*$+xr$#J2}YsR|Dbh-St!y8tX zD3z6V-0t#*)l<6V{HgIBi&J#UF;{=b5|!l+`_nG(Shj_(y8O<5P?l-%yLx%-z0&zO z+;Pccp50`A4$;Bz7mjKXrLsOS``=sI<%U}n`;&E0y6N^0UH-J_)`=+gf%Q_l)%L%* z0IBhk9uUPCAE9*f?O(evZvDi^c{1tbj=*_-y5%reIA17rFsJRzoM#hdF+WoipswAq z)LAUKS`-sDJ`MbOEY*mfA`MnPqu58nQ}ai{lkrEwr-_e*W%)>vCZvay1MdBE%?92+ z4)aSjZRxSftn&m#dwZ-0%2m|2!XC4cUs5!*!T})f9*_*u;r?#NYbnD0-HsN@-yKZPgh<+5x((sDB3p{-js5WJ~F>8RpH$z4^xy=bvRI0MI9hNcRof@FUZfGuT<22>T*_$ zA5zqBs+kw#cNMJwod<`9H~0_M4A6OSA4Ok)t~hV3=rrhx^8`iP;;Ooq;OUBT<3fQB zN`kgF^O9C0*@t=Zvr@)>-{Kqc)IT8TFRos9kvWFr*z-#80K2WqQfW5 zvOGfR@Cl`?MTc{xEN`N8&EX09qYmdvS>8eE-juV};nOu(DqVCk>P8UBu~e2%k~*j# z>a16WztYE*VTS9++;QGo(_GNakvYJsu^4EFqDa#_M{7$enK!l)o+GVE*63q?)vylA zQq@Qiwx_iY>8zzj8zJ{X17tr0MCdN%c)tW9)8?E(+?yvV%Ffv)y!i!1dmWdv3jCp> zLyl%%frk!~=?Xay;uU$6qEhh2vm&3PXl%KYu9f%(MQP<;YnAw0MYWR$aUX6TEWI>I z-X?r_oT6Kht}-93=rN?L%r7Z=Q)LkMQm%7u={q->3M$r+VaGtH`JMa?0O`l22Q$W@D zP({9JS6!>~BZ};SYH**?(z0G~f4wFjttbqr7Qe0NabSPFHuoDNEpGwU;d2x%GWXZ( z@*fn<2CBzvk3~y4|LXJBM0jeBXZ3lsqDYf9;ak*?x>VBjBun{buRb3viT&yH%(VfZ zr3l}gG~yc+;k%N?{1}mZA9l zZ4|988V{cU#wu!Cv~J<1e6XSiMd}ug&k=Z^Q3eELRt9!^=d-WhpWzYB4-q zQJI*DS{L3{(HP%}T34HN-FSjkx^8@`Rl4qcwN<)Un{;vfkX5=ke$^^n5B{4~x_Fy( zJ-Krt)riK~{|U0*#|qBR*7ARXiWN}za2s9S0w~f(*V%?_)7jRcpN*xh?vRb{q7B`% zA>00YW}|y!L$*2Crh}IQ@E?wH_~d{Wl+M=6|2&y(N@km1@d9+-QpbAa4&ps|l%mdM zkZir!<}j=PpJNNq+4@W=z;Z?by7>j@mfPrd*^q7Swsf!n%i{&;Y}>__&J~dEy8?8! zUJ9aHHePJWwtoLh`SbSwZc9A0>9PN`EH7-l{BA?GIzzJcnpMb#Y%Sdi(3LJgXIqC# z|Jc$tU7$@mTit&TRWBfi1~$4DHdIjVaWtj3GgZ!X zck9W=DhkUi3zVYBH>QePFFsvSNK6>eJVj}~_1t>%rHbbJHV3lKq0j%4Iv4!E(-LcC zZ_;Vz|D96Xjymgk)Q4~T4{Nl)fONJw9QntVrwg#Ot%EJu=J(A%_Hz9nTi*T0mQM?? zwAH=-$Ce)ou*|;=TE=~=dmo-p19t9l?`xq*=Oga@EHnwIzlBckJnKHdLQ^5#KnwK( z%LEH80~%zZ2as;Cg?!zwx(~6CcknIup%y9{eBXVTg5kPsx<>@f`ABsk>_d=}Hu!E2w_u3rOczfX>!uSOJ!G3eYtzK-Z=K zU339D+mhK*d;#eO7NE2BGO_^62?gj<3((CjK)0{}oo&fh6=1ok0Nw5abh!oSY;!+R zfaTW(=xn`Q`Nx*G3$T1tfbQ1r4Q^Oq+x+JJW6NbWmbPAO$+j#7%|F|8>uhqc z_43bYdjVdu3(y@cK=-c#bOn{{+XB-4V57TdL(go;ww3-ly|M9PTTV9R-|x5f1?X(O z{PVK>&s!E$vVwH~X~_x~&`JgQEcqX%E6As}jn98R<7|EY_js}OX-l^KU`w`^1(Cl^ zZEd|2RQK=#(%E_`i0T&LCGsEZ3aVe*0=(F!E2x}Z$qRns9>qrRr52xKN{-+^OJa?R zoB2royG3W_pK`}kS{dkG-YD*^2=8u<;)#mR$L5s$jQdQLmVY{#Jjd|FG)bO0Z9T{G z@6z+v7c(EnA4p;cefoNi=Wi5ss@&Ie0=Jtc)4lcV>p77ZQ*?JnU(ZS0hX`+d?C?zF z#xtU z=+fY}>ul~xUtvjQgLm}TXIpf5OLh)lqja5;6H3jo=Au@By3|MAdGMLZyDA;tiORHjXZ2s91oDF8IvBiI-|xxf>7>J3 zJDH{C+T8Y;$5*J_y?hqIcX@IYc>pcomlV~Qx~tSe_#q{%dlt(U=SnT&^%U(C9oP~+ zL(#bGNVXJy+C*BO@99-~DGyZCT&r4oxlR36^8Tcg_gGePOqKtQ@O;AWI}OuTD;<8{ zDYW$G7OGsTcIkC|smh_K)Ama1`E#OF_P*nXN*j3R`RFy3Rp?#AXA@7$Lc&)1#Ahpi zVxcIumHREo*ZBYqRfP93xAHv}-4x?i&KBldrh}I#3oQa#Nd(`k>#zaHv`AXwO~dUx ziYS#i_5RXlJD;I+I6HRnvr6}}*OxxKc%j8IT`Jsq+{;fX%ERx(@UBawF46?wy5VmX zH!Aw+ZA~F=6g>+`IMp2QOJN;b64Mhtf zU19NDk+XimuZXC;N#@Y1nwb|BwG_>>`^C>qe5xoA#)P{_Q&cO?*}s@Ls;E~hxQQ+< zDe_D5_b)D-HcOukKQZ$XqO77BbE5o9ifBdK8o~W?k)Wuu??C@jVy&VbP>0eYThW^t z)BMYb7m8w9nt55FZIL-Fnz+&5OVn2M7{+`#(MD0ygj4?IMY^JFNarniWW8ltlsc#UG0LH8t}F!n{-F5D=0b&`>l}bP>iBe1RLrf3Dsu}{QMMdKZJ1hx|! z72St)?M1GlO_RIHag6tab6?f}+^04M9DH{XXf_uLk@Ig78$7;QCciZ_z=~3TW#-qMxGddG~|* zidBmC!#L|F_9!adLl5pRo+>&GYxw}d_RAcKPW28RD5@(u4r_UWh*C7MTf^W%Vv3@> zpc^a}D$42>A3Q`{%%{3$K2+RQB*3_H9p9!8LecppU8ZC+{8szpz@EFlj(c4aDK32pjx}ED8 zGEOW~)U1PIk^*XHdHnIhZ{N}qPH-=+#5MQ7r_3z;fBBmo;LkqNd$9g{>8r75PE^)`^FTR(YHbTQ9th$Q=5DZi5I_l;`m< zY@-;Y=p>A@O(IcI{Q$f0%_2up3CM4YIIHM#w~FCgg?^O5f2r(u=-X|=L(w0d8;5Tf zZ51tqbUQ>ZMTxP!!gq>giaJAE?-Dx{{qCL;zFRy}G#uvU9`Rn$*o@WTdqvnWncpVp z_kAK#k%xXXe7{Ii)CSgW|5nUsWia!+Xhq@mV=HoJl&9UPm zz7)+Ay@h#uTy#}buk7N86Joxir%?BkVuPai%$$g?#2rO9A>AqQQjvGrs}ZM#{|TAH zRcOzDiF%5nJ>Eo|5n~iNG&J+GVuqsg72KQx=SKg(V67TYL~?;MaiK1PME%uIpieo ztae4zS2O~~{8iCj(ekVd)vk$|ipoL#z85R=b#A{@yDqLN8Vu|858{cUeSyx^Z-@$~ zWDc&d4&D^i6qSqiuYOAmQxpyR-)%8j(UJX8)$fQyidKW}M{z;Xi~R$u|0L{BOP^Ii zcUO2SYP54&^?Ra&qPDO<+!y^6bxhq@{ef7es6VU)55*ouCl8*g{zyDkv;}mJ1^buG z;oZRp)qfV%73IR1cp{<{-ODi6cq*nSItF!rCKf7cA5@{nFXE!22q?>QaaU2J)J8R4 zh*D={4lN+6rxabwSXJYV;Af@J zl~9(qqNt)8K}Tx56D<`rhQ9q>#3^c%b*o06`2W~@6S%6%_3!)M`(BF~WKu!FP%%Nl z32;ONHwr2$Ae2+4qUC@dHO&c41!tTQC!E3@3WtnxLerqq#Hq|Iu{6lku(GtWFrVwb z){hP5Ip=@Q`~08(=Y5~|`1!2scYp8SJ*~B_z4qQ~%iilij&yD-%z2Q=kp>nAT(o zXkf^+4!W#)))>>4=ChFjpxgV_b+DB~KrVERw38D-AwdT_*vs9ZR^&Oz?=zhFk$^OP;IT2AVK4G~7*I1^Lr? zaF;)VnlI}U?jZxu8#64W>zStv2fZ|GLU>I%2{e+9buGC7bh7q}aQY@;&?j`>z2rqu zVZpv|Z|Qu&81o<Aj)M02S`J6z(h6 zfwnBX9{!Zv1$wd8x8e2WVUR=S_u>BXET|dH&`6emK9KY`ukt%kBk%j+Ps>N3GxWEJ zjivL)#;Ri?T}_Q;Jsr)Ru&G7~h@Hojwf`6}ocny-U= z3$)jJXvc7Q3bdA}qx=f=IX!no$R9y^;KYudq|HTR)%OD?c8ruhpxadeRA*kt z&e8&Ug~%fNftJt_jFzK7!8O-*>>_7@Y7%vo*`OEb{Kd!}pq@UjcZ`)sLE%K*5# zwd^j-Ku78pbnGF22faoVCtW`^R{bTtE9fcfgBI64+p(8y0~$xvTlNIKLSx3uL7+)K z*E%N1iJ<3*66GS0J>6O8BR7DWEcmHol6Fg+YFV(pj&CJBU0qopf8Dr$=^Vm=&r+XY5$qA>JMkP zj(9;n1v*Cbq6`C_qu1plWLMA&O=2TP%7LInqET`JXa>D{8ZFa7jh>HbJuVxoewFAY83_7@o>wNy z_Mq&RsS%T8JZLV_%kl-#5_&~FSxyFddp{j9MJ@r&rXx62ZUTLrHZx+H%m=+sG+llK znnBMUY4QpvpxN?>8S*ZuF40VB`?;~s#dNG+kzSzu*)t<%$!4HkM6+cyXfqv`IWifP z>+@w=}Ql2fAPG1B2zX1J#@Jou|&27jiGD7QrQi3)$?}5GWk5{eWK-Z66gY* zzZG&G$mLK)#7db1vLRX}_k+gK^Iw)M1Vs*W>9ksY4r)S_Eq?%c&{cnp6jzLOng;uI zS}SXT%Afb^v`z+r=F_8bz3d1|c5l^bgX{x}Aj**=K{IIIH_Be(uPOr*R&~wx>SKh1aS7St{ZPKB{SoM6O*Q6ilWqQ54 zUA6?B={K#@4jBU~BHAgR13jRu+a(wb*>dR=CKQi>p@RZhUCdNKo{z4>a<&) z02L7Jk)MGa=vB#HS^c{(_E|}NJLf*>c-2_-%%vwfRe9$S>;`=87mIU z%kcV;cUT5|Wz7CIJ*OVAj-oz2F0j&eb1czJv}{#pd}Nikuz9RFDwo5nOWsj=jVW7% zXJ$nnlXlnC4A~;*NU}I413=F>?2LR@#)B5LIzluBR59Z$(H78DhwDTqL3?N1Bl;0^ z&A~S6UFmgQ(7$YP!l4dPBxs~V2+=suVf%=v<8m!1&moEEIOvttFB07Z)tEJn$n|Su z%$5#Ih}wdp9kvh+23>9S7SRGwz1bfS?E`hU{hX)-^w9KURH4*LjWJ(xJ!UGD{-8hi zC5u8C4fA8sCdjhJzVk`B59F}7KtCnVgG3YG&L7F&nC8*9L(+S6 z=~SlXQ{PkCv-4@00s4OWh|a~b2$Y_Y(fN$jzA;*k$=K5Qtc(V=&p1Ss0ot4XG0_Ro z3A#$1l@~w>^n80xUaxFP&mHIGU62cT7o_QiF@sM1K9+7EM|vOdiL4JgN6*CYLX!@3wPh~h$wrEg4fav^99UNc-E$n=Q7RT}@Y{FKCl#vE_;k0L9v^Ad0fK)N5Rk zaiE3Gr#fDd!>#?+P|I=FejAC7`WZ8vGY_Tt7FzqM`LaOg%<=A5WFC|Hgg=-1RbJ~h zna=oD(JlJ_8dqd7THc}WRJ$U}L61TdIen+*TOsO6MM0p{){3ge+)XpY!7HHez`P<; zL7PnZoZg2V1?b z$vY0ZMOT!nmEEChPZe!4eMc=TS3R1}Z54U7sZNhV9`E;awSKX7YH!P}v;RiqbjMg{ zfytxVnCl;#!J(g;p#@sr=HnR;YC53$@hmW@87kMQzWw)#H2w;0h49d-uXB^hEBcBY z!=ua-eP;X7d7pwY>&g1jB{B*5WTM;Dh9pJ-c8VG_O$PfJ@RU!TKa+3%QqUA z$ViYwKjjSs-R6E%KurfIFALo zQ&fbOchioUO5`=r+SvtqRm)ALUFH%gelYfEpthe{R*tfEcGZ}(#cYl4&`CdTnJvDW z8AYqk2PMqx6Ma?2{%DLcn@0Ikj$oQ69%PS+{!*?5rP6!RFQs-@wVWqH={?t1avW$5 zJ)>X4?AhYaj zXJdv$n(wB}1O?I^tXuLoP#v26wspROj`h2ICx_ir{j$Xtny*}zgM9L~cDZY9**^A- zF85^8eWPW=*rG1?t;cLL9r@qnTK49N75((Czga!o^jPsgUV}G>ya(1X|7`Ep^>-Qc zi!tWy_C;O(u=YDjWBw_}u}637J@l@BTD`W5W5pwR5Z?FXJ+h9uqf76uLeqXV#$4H@ zsEbLfJhxY9OihbrZ=Q&1rgzn>-ngt-p=-R|P@9EcT;+6Z`k$aB=*0=03UK)+{I2x>}a%vn1FnnP#PMf(hN zmY)A=XxBmh5krNm=Jmjs?^n80>Z*+Z9i}@cZrVZ64SJpIu4%s;E$7h;9$Gx84ZZXB z)YgI`$*ZYd1C`R4wX|~32zobITWkA=G0JpWi7AI?TF{@ye1n`mjA^3{26c4$ET+A- z7F6MQGp2)f9^~WnTTHmt@R8B)eQy!lQELub;&j_NQtMzP+gOX%1N4#OZRc36FX&2; zYiti~JZQ)fx=*A{2Yu~)+qsuE9~9>8YD&;nfKJ%fiA~hDgYs?Z*C({Spr`125}(x$ zf=cH%ihWl50JJ>B)igjm4{DJ{cX6~YKnH6N70+p@KgFdhSf!lCx1gKkq8gmxt+rEm{f{gZ`iDaIH5} zwkX~^jz;MV@6pPk;stFB$aR&XE1>V_c)p;01M2e%{XT;B185z2BeVyg_H?XAYMM0W z>-FXs({%NTb*K z6SNzkI=-VEUefM?>XA1|8>$(zw|Q!z!^_$@&>Q4U(XKIN+r1vT-!xV8qTlUO=k{3W zb(^VL3(!H=J?3dzdr;2GSKX&;(V$5Bgg;Ho12rU?q1^-3rRUz;o34ZNwVO;UM00(=X@O?vV0ahOyL4Ni1%Qg_%C|tv zVp<^_4(>NC)bin7%$U|~p>`3}i=LSmYC(?1C^zV;xJWw>T1oeN7Ha`chS#0$J!NXM zKpW}my+peV`k4Mt#!{_?v(fSqt#g@{0}7;lSgze;S|RSx?q|7Qt(m@^r*ntGAi13hT5#;mKypy06n*-PM@JcPOsc0+{BB8z#ED zr4=)+5Vq;`Kd!Z#@cKR-@4f+JW{Y8+3cBZL^yRrcN_eM>-8Wk2n@9gQ`&F$kd-H@| zH=xI>Rxg9rnX7Gt_f4IlM8@lhY;nAEXpdYi4`c4^+`Gp%Yd`hf-#fHCPvc1BH$2p1 zhqd4Q&c}P~)Y57iYZ*uVc3Jx!rG3xS(rOv~wl}OBmuKy_JfcC|ZtXmK*X0J=HAdYA!>lpMr z#(XQ7iEf(}8-A_KHO$JS(`99JXfbPGG_NWXFb!t!x!~BuWg36n_f$OuI&RI*}b>d7h1VN{4F_Gw1P%zOyjQw zu4q0_D^kB=cA?i5?M5>Kd<)Qj=pP*k(U{K)j_2dYOdY?Gidh)UUtX0;#`Jo@u&m^;ExdE2(~Wt)%+>_E^6MRUYGRwR-BWe4f?E!VAj2*t@z%zY(Wrz+2PW&!MlipZe>ye!71k zKdOXRfS*G@tEc{Yt-oFb@2PA*hyGSieNHk!AJ)X^XTQMDfyiHF_6ngs?-;1l*Krfg z6F+*%_<>eWeQxobz71Y3t>rnZr#^oeqz45V{p!aW)Z z>*2vhzb3Sn!B$V*HyxrE!SnWR7(c}7slRDTvC<|}i})0MU^8Qs0{YhA6#cM4e2#`y zYe~P$rk_SjbsmOS^8$#zfESdV7+>Y7zms}F{}G-#)-PE5sq^rnzP!0HyE>jPT0M0h zM(8bC;JCE(a~NUu)Oi@GpNIFO*O>T`R!^OWQTn)+=tuL7vU=(~jMjgHr;gcZtEbLG zsy?fg(XScJmumIY@f@Sug&3Z<_mcQA)jaxrwQ6+T`EU9bv^?&)KEArQHGZ6)6>5xf zN&2~uv-VTJ(l)*tU3VU@Z$rz1ChOzJ>ubYQKlN_H-erQG&oocm^V|_XLI2tyK4UNG zKf_B594aR2POXjkJOgjXPtA`OX^&l(X8ape`PfwZFvB{7T6GnvbyksDSrw_Z%+MRP=XLUNnW48fNQ6agO_-_2 zfz-F(zoIVzso(v0Mb81L-vfI^-w*n7_RfS?^pha@GR>()vBvgz+-gA zx5`s{R7Gl!s%R74<*%YxyXvI&wz~KD40CN}>1D<`Y2U9W%+ljJs3T!~Z~YwoWVmtu znzzvs=jcTdOm<<1JQLIP5>SUjp+wQ03~xGl8TvrbZ1OVnBG82}&&0WU3Ft~#C{c8z z(eJ%Ao{97HfuJ*MLWzn%>X#el>m?xd%MJ5&pD3f>xp|w!0zDM;#XNeqt4{=ZH1JGZ zsAqy2HV7rU2l`upXW}B=sk1T4tbkCWiJ%L?F^P-yOwbp>gNg2e%GPY6U+i|W82x@) zL+^z3I8fJRF^Nm`VW2+C1``#7POgkeT&kCWK3_SQC@$IT2I@E`CUK=+0O~qtFp+;(qu*%vn8a0j zIB1glV4`gxpU{}ZEWH5KJajOTe~i)ZW}}$I)p|I{{PbX=Z6KegV-mCV0#GaRvUUGh zqu-3Qn8Y=DIA~ScV4_zI;=kHotDgg@U#3{Ae+g25%e_{=15$s5y;iRP_3b->$f+C8 zAp8eU5bJawP|d+Z#dk_P0HjxJ&oxWsK6Z*-)`d4+Hh> z>*u~p?+v=NuPE_#eJn^F&o}f1AoYC-Z|G&9bI;#Q%;VRQ>UFaEE#*B{Qh%$yw;Bx< z`>dpX;j@a?XaAg7MT@dqnfF^;F3Nt8_?DICXaAX)Z>7%<$Gg8{rJl`PO$V&hDt)Lp zSV_(?Znk}@s4vkWeQ|F-5_Uaf2l{S! zvHm0M59@Ekd&b{~ykqdT)UV&?u>JwOef1j?or4$MKzX0Rd$xh{t{EPkv1UXq;*E0@ z(qO14&^v*C32N4-K%dBT!(Q#tF+C5Y_UK)`j7j|;f~|dy>q!Y}l-V@qP;p$J#dO1@ zj`eYUVxsbHnAEX;PyfwI4-yOYq$I;r$GS+@k_}SF`U8D1NFD1B^@YFA-oYd2vubiQ2@=3k#;7ST1s$iNY)c>tG zsW%^@JmcHDPCoWpvVb`1veU45FNvoqSf0O;Kx6_g}Urf2?OPtq|Qz$B6Qn)NhyUH+`(1 z0L9uVx&$go>u_DsW!{riJGFVIOx)vq~dfmu;k(AAoX27>UI- z^i$qN&~5g91T`I?Jf|0o**)m<_mA}e(E8^UMT6S0HyCs`O?hb`_38h|`dZN1*^1r* zsn7I3*3W{}=kFiuw?LcO(_S=Yw@p``ALuB19YAdtEAJW5752u1#$_ol6ZDY19iS}- zl=mJ;ea7&yeifuXNBCHO0D6JFnj?(0%ww-5D1*H?kpCgo??uoN_R>M4*xL;HiM=D0 z{f?@Bmq2bdihcrhV$XS`G5ZS6&j3&pZfODSWp5B@9Ov~^&}Zyrf!46M4>X-~uo%?A zMa_N_w2nP(lrj7Fob!I5_t@(ITF-g?4Coqr<3Sb1;{oKxdA0-ON}pwYtQUeJ+4~AK zgY)_i&>;5c%bod3bcwx|pe5|}1O;-=j|5$1F9Y;4=lm9s4d+Aw$a#=j%Vkgydq0D& zan9FBHD>S4UQ>|g4ArkIXd-(w|t|FB}xJTJ?Jt)PVEsCD5Ck^UFZ}*n1t+oAdg8&}8sCeG`D zAV1E*$)K^EyQ@IG+1m^HkiFBOG36A09&gN^!=5k5iSxQGsGPlipkTh1PY2cH ze8~aja9$q;bztvH(9e7=e*_xDUi}Hi?CUwNEueJvhJn7DqmK1l&{p=ggY46l_aW$A z_HKdNb6z{VWXy1ty&%v8zLxg_Jz{Sh=vB_^m7tcKgZUsQ&fQC(5$yd2TEL$7L}R{r z>~#P=&AIy==qP)yfKu7p3cAN$VP!wg>u*3=oS(Lnj2VJCuLD8*+3Nv%iF0=h=nM9i zf!4G4CTJ$-*(aa~zFyx4<*--#Wn;d(oY(C@@3S`mw2^an2B?(1&7eo@od9`qE|r2j zIIs1|#tatr8iN*d?sfwWVQ)0Zg>yF(w4A*?pdj|ngRZgn6KE>uwdWLLK6^gztwFAQ zz3vNY&fYXoDd%+#D3QHmpxS)Bz6P4io_VSdx|(~S9Y*=q&r$+?>Z zI>Fw{pvCO11vzsL9tN%9>vaie344EnzUI94n_<}-7ibp*Y}c|8ae%HAwc4bI(HL8I9# z0xf3m252FBc5{pw0y%e^fR3{l2l^X(V?n>Nx4g0+=k{!#=pFW+1x2zq6?Bok4WPhG)$b_i7xuma&CXVyX@N0A0OwLe&;ictE}-Yx zdl8h(xw{ZFgS|IEpR;!cw3)phK)pD3-4+`2U1Bc;H14okOESoTvvo44E$8(*&;riS zBcS@+@+xRMdyhczoV)cG8S@pfX8|o`Z#c-6b8tRrJzuYPftIs(8uSfcukV2NuvcTT zF~bVZ>z1I;*y{tj%ibi=efHLXY&owFfu80Z`~ozQ^ST0*%wD}rW4<%&MS?Qe8w&E{ zoX-Hg%HDR6JLmOD&`<2$289^+N|qQiG~|3~26~nAIvy0o-UQGCzFud6hOze!Xbb1{ zWza(Qeh1y1qt3g}Qe(ay>_vcTq$_VQ=zaF)fD-w7y$w{#-Upy5e7(L2(mBr@mKihb z^sQ3<}}AJ^?z&UMXlQ=dQlOnBf|GjX|%n*A0}xc{Uo3qHJ2dcxlG!4{;^EwCAjlE-_6`Z@*KrgaqUS-VS$+_zf z%4V-CD7mj%=Zl~l>@5Vn!g>7$s0Qc68Bi_0UjG0JW6v!Md&GGi0_w|NGRT*&*ONgr z*jop>KU=Nk2xtR)S3xped5=Jc*sH(Vn9stV1@swv!$CXvdOaWXfW2LyjBGXLX;4$n zr8}U*oYyt7jTwfr*Amp1bGHv@7JHLGCG4#My~^GpPy*-f70~DGJp`@g>-AG>jQN~7 zTcbc7IImMci#b2%g8aGV4$v<4PJ#Mx?tTaQkUi(M#tbXiYYy_@983UhfIpjGUx z2HoWA^*f*f_AZ06IIn*PeZij3I%B?j>_vcnV{b6Xf%AGcD3Eh77c`mk`h8Ge_Pzz3 zXU~4UF~fZJnt~c~&i4ep#@^pRH94VukdURyvLIX{Pkx^Q042OVK=7buN$_cW-Ky>if7>^W~X=9|xX)(kY; zLmkiFpx4+N586{(d8g4wLBDZcPX%paZv)6CU5$AZRKVU>Ah-F-GvyjHe8FA= z(E6pyvw$kt8wT=SqrADGW}HhqKu0;RPlATCcMCLtbJt;;F<&}+O+kOK7YCyMX+SfK z1r6rhT?YD!y*EMPh-&!>$d$A8J}83oy4GvPd`me$+khH#%YL9d_NIfL;oRK_`iQ+_ zpe**j0@dOiG;KF#*uvNAhM;Wrx`4jp>-CGEciCGATElt$2Iwk#XF$KQ_XFq;_S|+D z^Eq=~hk$}O2a`b4IImv@4Pb9A=o9u1gBG!O1@tuM{6o-A_Ui34=JVp~btLFF_J)F@ z_x^S%tUo4q$d zHPbmKK&RQe59-U;>)Njy^W9>v9cU(BuLpn}InQQ*_HbTr0(E5XU62>&?sd>a_T(GJ z3|Z_o0IyOd@Qz z+9UPPBvQkSsA_sYRlP=y|E6PQjZv1O#u`=Aum0na*4F6p8lz2Rz2O?M`zqBkgyUE{ zRo>IOGFHy0YAVZ-)W$4+djnHsdRXptB>S_}0R;v99aZ~k<&T5?R z2f4aRuGdgsy;t?J8sEgnttzT9r#$y$R4tA69U7?_)zLNyRW^whD^%Q18D$c~vQ*s4 z$13BXDvzE1*Vvd&4IL9YzmLZ!TUM{Bel)7@MP*s7q59D<+8ZNWnXBe9V)eXIdttWb zjA~QeUCH^QqOrg7pSCm$_2;<8PnZ~G$wx_htXBs*GF3&XerF5;ZQ#p3Jg_`}znkmnz`X{4t zE+xBh=CzgbbsK=}n#^dYBeR;A*jrsSox_YkuyXEn`cb)&uk&W|W?C+B^+VF8Uj?$B^ zaeR#9U}T6<^N%vbsBbt-J<5y>QO_X%+BN^5kNKpl)>D<+RaYBhFRHKh(P8Bp=kCdI z{&~%c;cAxZd-Ok9e)8&Fc^y-$GFEO}V~zOu^R;Soh_3&Y&vEzpS>tN8=ZNZ$dZYfy zSp7(DeBvtoWX}AfnkSF5(X#qg_g^U+z1;YDp|Y&<%_vvpDqW@d*;&QPYpK!3h(`WY zuc=>|eQ@zG$Q~g~0E9L4d8L{-Q&rQ|Oweh(7gI|xm%-1eeHi^x1)!wNy ztIFzJ8!N2-3{|z}zxNC^k&mR>7qfU}zZ&OLKUJPd*KLU!!ieROp7z+$>+-f*p^-DjG5JsV|EA;6V#R;X zuQ~$%H=Wb}?8|?yQUA$-|2OA=@%~~HzeiJdNGk8Q7_TkZ@nl@yzoS6!VN4X7#` zdl$A_)fmyJG2Sm2@gLPZ+3R1g`A75q>myWO?SEIV9~Y?OV8nlYh5x6I)&KsURzHvb zUB~MG&*M~ocVpzq|9(y05tVymvQ+$v@6ueLm-Tf2hacDUM}$Xi)8jsgkesZC*&dgaSIX^X_@>3UC z^j^h8UyyZ0)Kl&f1^_1=FY-*K(p-gtggeJe+(KBjTx= zm$F?G?ws=h)neLSHGbtM3u=YNJ%3~G7SUaW$B)T5ZeM+b>g9iaOsXHHhQrjn#$Jr4 zM^@!5MvZZ;sNTkS-uL0pL8{kRwKs|Td>+-Wm{(p~4A+RpBTn5DuAH~J`|p!u4n^Y=w92cBaV0F|E2nX<#<=hFWX->Rl&T+}e^mb0M>AR)+4Xz1b*e{) zCQNkqN$0yyHhlNVmhV2<33bHm#U6T$RGx8TCDre+{qrmQKXYyP(;wT%KK=Qh8TrZU z|6gnV`e~^;0@c^{*YN`WVFA8m@7THJ%q#jTxU#8ud?pe(^t9^F;%- zFK_en-T#SCpo}A6eAe;92e}<^F8P7+L4x9gOef4AYQn2cKJV^C= zk;{9yT)oY|Grr1!QOi|^Y|T_-F6UPlPexr>MYDgPa?{{@6ni#%$gVUE5$+2dO(Ur<{Z1K0ACo7>?^1sg&C=XFmS+6E zmWpc3mZD$1F{Y`aNxeTzySP_^_$F+uc$3R5#jB2W%q>N&HSNrYs3wZa<5y)+T;{lu z;Uweg8NqRF{$A88Xr%M&hqP;Mmca?_;5=fuJJLcN0z;4*l2|PRC;WV zu}=`5t0&p}P$oPS{xnyD45FxdsT>I9xk7n_P}HcALwV$AMAdSjNgdUJrZ)XmT-W5J z%>~mw4`0W2rgj0H9fuibncJjtn^bNyj7LZi_Y0E6FrI4|uQP$x_P}u>uV)yqEsg6l zO!b1tm@-UJYlHMm9xaR8WYTCCY%*!&3pQ!oK8Huk;a)jhvyI#5ar z0oNDs$OSx05!V!PO%c_cch2FK877yYApNeGbYxnMG(J8#9E-VqF^^o#BVXj>f06g- zBJWWN@5M#luZ!HPjK`cR^rg4x$9NT^{lV=>26j>CACRE`rlrg6;RxXtLr!O8ub-nQM<0&<9D_K9at!Af%`uK+632lYhjC2hIFVx-#|(~{9J3HV^?P1q z>8F>y>Y1afYfFx|}VahrUURm(hX<0AuC)~e|v!&drHY|_6e z#gP7C6c;p!q`10C_nP@UP678V;BksjR^t@#I7Qs1nCpwV%|(<|n__O`#B(|ETuwZf z6VK(ub2;%`7kQi#?pwm+lyKh?-n$ZZ%h@ewx18N_cFWnVV7G$Z3U({ltzg&5MqLxK zG$g};sJ z>u;m_`rD{p{x<6D2id6CQBh(+@EeVTxJ?kdp*HGBhV#6kHtKkW+Nfh5jT&{#<4{&- zA=E}4{~#N6mFs6-Q!6wei04Y>SyF8d`9CjGZPa<6$TbtWW+K<5aZMW6q;X9K*JN-_ z2G?YAO(xf5a!nT3WN}Rv*W_?b4%g&x%{H#t#x>ixCXZ|KxF(Nl^0_A8MrCF`*XP@8 zcUEP!+E6|tp?pT{&8-7|2`J$91>C-X+ZS;A0&ZW#ZV|gh>=v{hT_!EOb+73@~9tJ$jT(ri^;IoYbb^5p2l(Vt@w$54*p9HTkL zaZKVkkmE3psT?PAOyiirF_U8!#~hB^IOcK8=UBk8h+{FwiyTWhmT@fSc#mTRN6n6} zha5dQ`f&8;7{oD@V>riXj&U55I1c1EjAJUti5$~7W^l~pn8h)N<2H_Y9P>FAa4h0j z%<&?}5{_jY%Q@cTSiw=V=k;^+$goqdCTLOyW3@<1mh?94B&22z97{NsaV+O}k7ET#&4Jg?(UYSOM}Lk%978#VbByK~ z$1#cHK#s#WrgEIfF^yve$4rh{9CJ8s zbG*p0gku@Ua*8ue_Z-zTO9huTCslTGQuUr(_TjQWmxH(*O6B7soXSH*G{9;navWmr6>`ipl3wG{?`N6Co}W68H-EJH&(7_{U1!ZQ(Mi4YQtv4uEVoRn z3KFSCJ-dw*a{55aNU_?>xDztOlE$N@IjO5nnv=TPq&cZ)oKSwQ93rN*bTnn~YBPCl znNI4ep6R5nUJubJS`vwDIa(I8s5!GG~F}n@jPv3#Aj{Gij=Av4$IZo<%Jcn13 zAo>sK6nn@#A|#b!8bx)?UyhCDk)wI!B;K!Re$NueWhb*bs!sII<#o-I-$yv{dzK;Q z0RcZ-GI*|gJbni6MF#Ih2H%rO7kt=vl@98R+G=7DkIjePQ&iowV%+C?d>^iG+ z=gIY+T<^p6{#@hFH9=gHX&f;whZ}v(>i$Wzv$}s0?W|tmXlC_&y>aX&@d!ygLK4rC zSRT%X4E1zcau^~GGD!S%&lU&8ezT%XDHC0t+5_2pcj#r5S}pTn! j$KCj%H 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

YrS`dck|++`2>T3fy1aaTQb%|q86 z)HviJU%tkm$N7>rhCR-gx#7#)@MUiJGBK^j%(eR~j_|iAx z(%hn;) zhxU4CpNIB)=zxa~dFZf*d~2;8_c-5fYr`JrTWjsC$DQ-gq=!l#n)A?thn75a*+Uf% z`4(JT^SCP>y6T~89=h(K8y>ppp<5oh>!Eudy6>THJ@mjs8y*xvTHemiA*ut*v#!t)tkT=LQQh-9x9SZtIL9;huO044z5& zPc1;YUqU~mHZ=n7X=A_|3bCb%fHe>9$#-Kng*IGCa8Kt}&j0tQ@yBiP*xeg=2<^$` z_vEn`1IHGFjh=ya?6{CwBBK%3k7Is1j9p9JtK=#}P$LdFdFcg-igJ@1iMH0kY_<8H^ktfTn$4qHQL4T~vu!43pt&VVi;Q3lX} zk+ng6pO6nmb!%R8d1SQyjRHkBWG%KtJDyb_XsVgJViZxO?@`%PBk=SRW6>GF~WEI5~5yh3s$eAx4Sw(S0 zL~&&;!#BBHo* zEn2yrO#GTAeoYd;5v|-zl5Z&ahLCSXE4P#6TS~qqkncy%gzCum zm3&{w-$pAB)THXj-zxcAA#X%050iOsD0xH3kE4|*N%CVQKNj-SXvOv;m-tg9KNa%x zXyrvRwsxWw=|n3pqZOLm@aJN`)Yva2_UmZnO_Kat$*+aH89C#vi@mAjO_EpfS4hNO zZ5Q%tyO6u1)t)4|Tglx*?u(pl*CxK&r{q2%?~PXXC1dYZ@?IhDkDTq-#nwKyDt&Bq zAVXFY)9Qf4J`g!mv5S2`6F(s2!_lg>8awh~B_9^@$!K*rS+tW%J}G2tS_OxTJ)-0h zA)nEx0r`xQ&j|T!hJ04ZXN7z&Lq4bEb3z`^kjIrgF67A!S^M{@^zYSD?;!cYKDAO$ybGZP4#W8a#yb@`I?Zg zXJTJh@^z9MhtlN6At5&o3Hfk3@rJf{L)yDBn29~8u?Hpg$qZS=p&{bXu%ZGcTWgJB zjXf-}Gt$yfX=#YGG&0iCP-$t1v@|l((okt>h_o~^($Y|AX^6BmCL_0x;fki>&=7HG z%w=9o)qO+MePbbV+a50Vg1*>-yqFydg7;QwXs7L~Kun5R? zCD(@JTZ-&gW|l4}EgXWf!(146D1NbHTMVK;?b>_wV z!|o0_@?#}G7V^`~dp}k3Qz6@-Ca9KYN`5Bf=b6~gmHb@DFEZp8N`4{amr;X_9VGrz z$uEWcI&wQ#uH>(k{94GHk=w~~)U2-5GMXlDmc6lOgvgxkt#m zGUQ!K-X-MT47pdyy+ZEGko%O}C*=MNxnIfsLf)Gp?^W_%A@9qO_bGXwkTFgs>wIm$ zlJ^VwK!$uk$p?gdC__G^L}oFN}p@?jwlX2_~H*FPL&uZ+m68l`VHm)2l@pDQ(C*;XY>`5h0 z3b~Xamy}!*@?3^Ir{p;yFJ#CIN?s5$CfW2$z@IDHl9HE%oLLU8T~_jCAy+bqSCm{4 zay>&$ZOY>d`-w1jl6bU$=8K^ zBU7{+O1>fFn;G&=CEpbCtql2=l5Yw5ZiakU$#;c(FGIeks%y$9iJHb2%Fb@RtFu*(%%%cGFNHC8B%wxek2{2Ct z^EALb#YxJd_Y@T;;??H?{kg<=5nx^j=4F6+DVX3m%Bt4r>wxFA@Vp5yZv?X$VC0-Z zBRCP%Fyv_j9srGY!4%?H4LO%k8;&uxVd3eCF^wL<^ahw-!Sn@~KEd<{n0~?R4KRBJ z6F5CI_6cTxz_VX40|910Fb4w60l^#$Fb5&(G~ch@grfxj7wT~yjSk`XHWGXrX}%4| z_bkEpEY0`K@-@0czD9S7uL0j>_>8ZKNUc4#k=CBTVx8P**(v2s;$ZGA!k6@#_{rnP zz}p)?bmgdBXHDPDv9R$WfObg)USu49UeVV}af9g4S&SSnFA^2NLsvB=$g28-m&p)P|y@8`d5Q>Y<{f zifWGq^;l6)B;pf6JyFziK|L4Lb49%n)C)nq5LCUJsCqX%Pw?EnU6H#4iDTs^s_(*< zLmu{gasRIOV=qDA?NNQNFt0r&GoD~xdrI|LgWk64nOg_ZIGS}_w`U^n!Su2dUghK9 z-HOvz*dfConw*w*03ZQVZ&%tzRH3X1Z9`}qQN2fK>;2Jszoo7B^B4g3)tKP=Q~Wu? zQz1N60#yH|BWwymltN9Obx{ZPUK{~Kq1Oj_9DR@A03-D(4(~zT@8-(_LxG)a2Rtd@ zS%PPAgdT^7xRDZ7hoYallK*xm4)|Aoi+d1GMAcI`O0;`N_2aEP5?J{y{@RiHPmy?W zH>D$5zwVB^u2W{C^&4{PYW)WG*3ftLL_43jp+U~C;5;)gV&Gvo9^J;FH#t>Xz?nGi zR>>h)obb`Juwbwra)S;ygoA8dy*xqJ%lO=QK`L_YzR<R>d)rFq{38C3;5d%6alP2$>Fq7xiJKRA8esW$Z_IK>Fn4;jX`V#uPh8VH zk*0al-PxfVIT(?7$N(EkH*uf_CzFnzK8uPl(iRUoN!c`xgk3!8c2)kv*mk8 zl6nsS&jeb_SGE+;YXa^*fXzdv9=Difx^3JJugX%Mb8}?KGU*Ds08o56cf&6Yu*2G0NIv5>}80 zWgSA-JCtYaL(*!Mn^EN^HAMwF%x+Lel{*;nWcE?HBL%!|1+#Knn|g1wzE{-C-W@*W z_5DbCeV@G1`uFp>o3x;2ii0IF~9ZaPRO21D**pIJT<)joNp(b zFKo%yUj#Y6^uEs23F|L~)7?h0{xaZvmE?RSoU~g@#8>Yx(*+93pVI3?8_+=0j4mhsw7F7*#gkqS~nsAKF|2a7-v-RQN^C z41KR2;T7qLo0WsR%45wEPr8>MYQEoL$iq>q$08^?W-Md0fI~*1n7LsnI~a-Pimz|? z1JNI_m6xpxQWN3Tc0*3k+2GT%JkYW{3Cr^2cNh+ZcV~}HPWT+Jq4Beig$EHy0Nig8#yk=4B zbqu`;hJMem*D>ss+4RZC9ee|xvyB?N2udKP%GyZUR#6*K@`$RB-e{dU$}|OcT4CPW z%O_nWtpTm&`{o^1=FB)PoSGQPAw=Y`nbLsX;x_!b|^5v0i z#I9Id@<<*rk1CHi?R{jUd!V)?x*ay9rEas;x<^58Z#P};LL!VX7$Pt-roA+$IGsI)NEK=>+Wpl3C#k|OfPRhT)Hta!q0a6;9esk^HEhr!Lh~-1a7C!vCn7#InuU_8qMHf8r zvZFAq-lRX9K;j@M&@+c?bUSFx``}@8rwpvBp>b8sa;s`z!%CX8HSLtu{ob*T$u6ty zaruVuEZ^LT(Glv>PnU7}CZEPF-{QFjd+re_2tAAh1|E^IUFTL_dLyb?R5~tQQxzl?6M$-5|+BH1V!G4FYU8miuiYpZ%IfNvIX?pBLn0UUdeCAipyDfc>8 zJ?jOTVPJiX4qgy>ulLEiRcD{Y9!%K+F@~O_8k85t1sVCRh4%hjTLG)st-Q|g&#}0K z1>j3epLwGOR7o3`+B~xpRWJ48gfZ+p_-_v{!yC!}-e>cpb05ym4BtMEC@r9{}cmzi$7(e~0Tc1r8to)&|<~8zd{(K|FIvb=1rwohef?6G(Fgw;Rn0 zeJ{#l%m}EXz~Wor_{CQaK%Eh~F?ZV^BFh}ggd3_snK2ieq;y+&28{dvfH@D?nEfbG z&hrl<_p%w2bmkKI^n-T*{UYZ56uk4`j>|G&-UE;OXUs|Sd*J8W;A0cuok7`4sIO5o zjj%Canot=yT>0c&31v1iz8) zHX?a`Wbv#G=ILsdp?`SZ2jsnnk>)JQgDb6(Tl($e_vZT>+)c&0I)eHsqs-H&?Gj4c h|Gn`L^`HLx$JW5BHq(u`kN)Hzo4`NC`~SHH{vTx&TjT%$ diff --git a/Runtime/Plugins/wx-runtime-editor.xml b/Runtime/Plugins/wx-runtime-editor.xml index 64b02fa45..49960d977 100644 --- a/Runtime/Plugins/wx-runtime-editor.xml +++ b/Runtime/Plugins/wx-runtime-editor.xml @@ -4,6 +4,91 @@ wx-runtime-editor + +

+ WX数据保护插件使用示例 + 演示如何使用数据保护功能来保护游戏中的重要数值 + + + + + 示例1:基础用法 - 存储和读取数据 + + + + + 示例2:安全获取数据(推荐方式) + + + + + 示例3:存储复杂对象 + + + + + 示例4:数据管理 + + + + + 数据篡改事件处理 + + + + + 处理数据篡改 + + + + + 示例:玩家属性数据结构 + 注意:使用 JsonUtility 序列化时,必须使用公共字段 + + + + + 游戏货币管理器示例 + 封装常用的货币操作,简化调用 + + + + + 初始化货币数据 + + + + + 获取金币数量 + + + + + 增加金币 + + + + + 消费金币 + + 是否消费成功 + + + + 获取钻石数量 + + + + + 增加钻石 + + + + + 消费钻石 + + 是否消费成功 + Banner 广告,详见 https://developers.weixin.qq.com/minigame/dev/guide/open-ability/ad/banner-ad.html @@ -3119,6 +3204,36 @@  是否结束 + + + 事件ID,开发者自行维护(必需) + + + + + 事件耗时,单位ms(可选)不填时为0 + + + + + 事件结果,默认成功(可选)不填时默认成功 + + + + + reportGameEvent的事件类型 + + + + + 成功事件 + + + + + 失败事件 + + 错误码,文档可见 https://developers.weixin.qq.com/minigame/dev/api/open-api/openlink/wx.createPageManager.html @@ -3295,7 +3410,7 @@ 需要基础库: `2.10.0` 小程序版本 可选值: - - 'develop': 开发版; + - 'develop': 开发版,提交代码审核时默认使用开发版进行审核。; - 'trial': 体验版; - 'release': 正式版; @@ -3371,6 +3486,11 @@ 允许微信读写日历的开关 + + + PC 内核版本号,仅在 PC 端存在该值 + + 客户端基础库版本 @@ -3473,6 +3593,14 @@ 客户端平台 + 可选值: + - 'ios': iOS微信(包含 iPhone、iPad); + - 'android': Android微信; + - 'ohos': HarmonyOS 手机端微信; + - 'ohos_pc': HarmonyOS PC微信; + - 'windows': Windows微信; + - 'mac': macOS微信; + - 'devtools': 微信开发者工具; @@ -3480,6 +3608,16 @@ 操作系统及版本 + + + 当前是否处于直接广告中 + + + + + 当前是否处于蒙层阶段 + + 需要基础库: `2.20.0` @@ -3546,6 +3684,11 @@ 直播间 id + + + 宿主传递的数据,第三方 app 中运行小游戏时返回 + + 启动小游戏的 query 参数 @@ -3576,6 +3719,11 @@ shareTicket,详见[获取更多转发信息](#) + + + 宿主app对应的场景值 + + 下边界坐标,单位:px @@ -3606,11 +3754,86 @@ 宽度,单位:px + + + 擂台赛组件领奖信息 + + 通知组件信息 + + + 福利组件信息 + + + + + 组件的名称 + + + + + 领取事件详情(只在onOfficialComponentsInfoChange回调中返回) + + + + + 奖励领取结果:1-全部成功, 2-部分成功(礼物达到领取上限), 3-领奖失败 + + + + + 是否收到了稀有奖励 + + + + + 用户领取的奖励列表 + + + + + 奖励类型:0-道具礼包, 1-微信蓝包, 2-h5商家券, 3-现金红包, 4-小程序券, 5-盲盒 + + + + + 奖励来源信息 + + + + + 获取的奖励数量 + + + + + 道具列表 + + + + + 奖励类型:1-普通奖励, 2-稀有奖励 + + + + + 礼包名称 + + + + + 道具名称 + + + + + 道具数量 + + 组件的布局位置信息 @@ -3626,6 +3849,46 @@ 组件的名称 + + + 可领取的好友礼包数量 + + + + + 可领取的礼包数量 + + + + + 组件的名称 + + + + + 领取事件详情(只在onOfficialComponentsInfoChange回调中返回) + + + + + 礼包描述,只有 gift 类型才有 + + + + + 礼包图标,只有 gift 类型才有 + + + + + 礼包名称,只有 gift 类型才有 + + + + + gift: 礼包, friendGift: 好友礼包 + + 当前占用的空间大小, 单位 KB @@ -3772,7 +4035,8 @@ 可选值: - 'ios': iOS微信(包含 iPhone、iPad); - 'android': Android微信; - - 'ohos': HarmonyOS微信; + - 'ohos': HarmonyOS 手机端微信; + - 'ohos_pc': HarmonyOS PC微信; - 'windows': Windows微信; - 'mac': macOS微信; - 'devtools': 微信开发者工具; @@ -4427,6 +4691,36 @@ 是否被添加至 「我的小程序」 + + + 错误信息 + + + + + 支付支持信息对象 + + + + + 调用结果信息,格式为 "checkIsSupportMidasPayment:ok" + + + + + 是否支持支付,true 表示支持,false 表示不支持 + + + + + 错误码,0 表示成功 + + + + + 错误信息,"success" 表示成功 + + 最多可以选择的图片张数 @@ -5595,22 +5889,22 @@ 预告状态:0可用 1取消 2已用 - + 敏感数据对应的云 ID,开通[云开发](https://developers.weixin.qq.com/minigame/dev/wxcloud/basis/getting-started.html)的小程序才会返回,可通过云调用直接获取开放数据,详细见[云调用直接获取开放数据](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html#method-cloud) - + 包括敏感数据在内的完整转发信息的加密数据,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html) - + 错误信息 - + 加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html) @@ -5705,6 +5999,21 @@ 实验参数数组,不填则获取所有实验参数 + + + 实验ID,标识实验 + + + + + 参数名称 + + + + + 参数值 + + 需要基础库: `3.7.8` @@ -5826,6 +6135,67 @@ 本机局域网子网掩码,基础库 2.24.0 开始支持 + + + 需要基础库: `1.6.0` + 传入 true 会返回高度信息,由于获取高度需要较高精确度,会减慢接口返回速度 + + + + + 需要基础库: `2.9.0` + 高精度定位超时时间(ms),指定时间内返回最高精度,该值3000ms以上高精度定位才有效果 + + + + + 需要基础库: `2.9.0` + 开启高精度定位 + + + + + wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标 + + + + + 位置的精确度,反应与真实位置之间的接近程度,可以理解成10即与真实位置相差10m,越小越精确 + + + + + 需要基础库: `1.2.0` + 高度,单位 m + + + + + 需要基础库: `1.2.0` + 水平精度,单位 m + + + + + 纬度,范围为 -90~90,负数表示南纬 + + + + + 经度,范围为 -180~180,负数表示西经 + + + + + 速度,单位 m/s + + + + + 需要基础库: `1.2.0` + 垂直精度,单位 m(Android 无法获取,返回 0) + + 需要基础库: `2.22.1` @@ -5941,6 +6311,17 @@ - itemSettings 只返回用户勾选过订阅面板中的“总是保持以上选择,不再询问”的订阅消息。 + + + shareTicket,详见[获取更多转发信息](#) + + + + + 需要基础库: `1.9.90` + 超时时间,单位 ms + + 封面广告组件展示状态码 @@ -6487,6 +6868,11 @@ 用短链打开小程序时当前页面携带的查询字符串。小程序中使用时,应在进入页面时调用 `wx.onCopyUrl` 自定义 `query`,退出页面时调用 `wx.offCopyUrl`,防止影响其它页面。 + + + 短链中的自定义标题,显示在小程序名称之后,可以不填 + + 当 手机坐标 X/Y 和 地球 X/Y 重合时,绕着 Z 轴转动的夹角为 alpha,范围值为 [0, 2*PI)。逆时针转动为正。 @@ -6510,6 +6896,21 @@ - 'landscapeReverse': 横屏反方向,以 HOME 键在屏幕左侧为反方向; + + + 当前直玩广告是否由于异常流程而结束(如 下拉/搜索 进入正在直玩广告流程中的游戏) + + + + + 当前是否处于直接广告中 + + + + + 当前是否处于蒙层阶段 + + 错误信息,包含堆栈 @@ -6905,7 +7306,7 @@ - 视频号 id + 视频号id(参考格式为:sphcqO59YEPCvoe;查看路径为:微信客户端->我tab->视频号->右上角.->视频号名字-视频号ID) @@ -7225,6 +7626,53 @@ 自定义维度,基础库 v2.14.0 开始支持可选 + + + 错误信息 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别成功 | | + | 2002004 | 人脸识别失败 | | + | 2002006 | 用户取消/超时/不同意,导致未完成人脸识别 | | + | 2002007 | 本用户7天内人脸识别已通过,通过日期为XX | | + | 2002008 | 本日已调起过人脸识别或者本月调用次数已达上限 | | + | 2002009 | 无权限发起人脸识别 | | + + + + + 错误码 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别成功 | | + | 2002004 | 人脸识别失败 | | + | 2002006 | 用户取消/超时/不同意,导致未完成人脸识别 | | + | 2002007 | 本用户7天内人脸识别已通过,通过日期为XX | | + | 2002008 | 本日已调起过人脸识别或者本月调用次数已达上限 | | + | 2002009 | 无权限发起人脸识别 | | + + + + + 人脸核身会话唯一标识(小程序后台根据「用户实名信息(姓名+身份证)」调用微信后台[getVerifyId](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_getverifyid.html)接口获取) + + + + + 错误信息 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别完成(需要通过[queryVerifyInfo](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_queryverifyinfo.html)接口查询人脸核身真实验证结果) | | + + + + + 错误码 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别完成(需要通过[queryVerifyInfo](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_queryverifyinfo.html)接口查询人脸核身真实验证结果) | | + + 购买数量。mode=game 时必填。购买数量。详见 [buyQuantity 限制说明](#buyQuantity限制说明)。 @@ -7610,7 +8058,7 @@ - 自定义的登录态 + 自定义的登录态。上限 1024 字符。 diff --git a/Runtime/Plugins/wx-runtime-editor.xml.meta b/Runtime/Plugins/wx-runtime-editor.xml.meta index d26b0d0b9..113591943 100644 --- a/Runtime/Plugins/wx-runtime-editor.xml.meta +++ b/Runtime/Plugins/wx-runtime-editor.xml.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 86cfe097f9cce0b88db9414b86df4ed1 +guid: 466cc16e475e1dc063887d65171102f7 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/Plugins/wx-runtime.dll b/Runtime/Plugins/wx-runtime.dll index 102563c7178f9244195c0628fbb8e33049e69717..c140a3378f1139dea3ac0ce4737aed958466e8e8 100644 GIT binary patch literal 249344 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 z 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 Pxkugg_doydYT*9>{=S4y literal 234496 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�qw4&CyYTXOSqswQ1mjB#O2mUuby#~QKXB(fY7a3U=$2p`nU?OF2eG z*59IrslNUGq{7t5j*qEM?4P1eMn0z!)Z63m9U%4Ou3@SxN9U>=HvJ9ufKgunpBR0L zqd%&}>ba|Q&5OKv7Y4A4ww}xB${3^G?Y|rQ+NAk0Qg`k_NF@(bhcC$0)~KorzSr*J zys7Hx$$r$9%E7z3J9Nk2gzVcpK|csj9PB^r+z4FX;RfI}*WL=8ckS)KzdP>MpF^5w z^)TRK^&#V{>X9*vu`fb8#%3)>4dUbd!{KlB&y*HpH$GE$Zs=}=@ezgb5q-mX2dW$U zBpI6a=zt916QeVXXl{XMP7}>(LbVz9`OyLu^$S#_<~nfNh}7P{`WN7Yoc3lX?e6W} z&Hh@G>SYeo=y+oosXhCeq1wofgYi4_-wcR0Q?>bf(&6cUC=b7NM{7A+&(TJXHgdF)qxBp;%F$ySJ;u>v96id>CXSxq z=n0OV;Aj&^Pjd7WM^AC|6h}{T^g()OzdFN5bcT<}#Cb#tjoRl7=RL!1a)#5J+@2=R z@($BPA9xI3IHmNxIel-A_U34Bjz$a8xpr&RGH%Vgl+cW>4tYwe=yEzVM*C&x1?@eY zH7sKxcpRH`>(ZMiuxxR9`v+R_>BpwRi4&;RIZk%y}YlB zt&~eE=QO1#?VgZQlzdM}Hm9%T(keMuC3~tk{Vq;l#p$agJssm3bzPSqJG`o`8K{M= zQMEfmfT`WW!l?gu3HuPadWF5JjUF}Fd{rAfYO%SWOWV)KvY(G7n~$Z2{WV;24ezCv zJ+$&~w`H1TIh#L7Q>iM|p zIoDAxGgMU!qWVv{_R;Wfv{e|{QZcH$*8VfD^JiTD#cIezT|3Hok8<8)T=FsA%P}tJ z82g*peh~Jh+6mrcDAEizn>cS1rwP@Ut@tb=RKIfH*AXX?KFK)AQSx-?M6EZV(@9Qw zic34iwy9HZ>8jKDHFfGUrcQmPH~V|Tb5BS#M|;D6Psn)ok7xgQc>WmX=BS%XD`l)> z%w+WF)F(3;mojEE<}p@Tx!5jethD@$yBPN~)-cvG)-l#IHZmS%JjU3>c!KdH<0-~7 zjHW^L83ucQmoTG;UL6uE%{ZPhmeI}VVa#M)%9zcV$5_f( z®<#kh-cKVuDJEn^*HJ!2!|QO0A8O^hcPPcoijJi}<3bVOl{T^V~b4rGjG9M2fb z=w|dVW-=~i%x27EEM+WbtYoZW+{L(`v4*jhv5v8xv61m8<1xl2#uJPu8BZ~uVKi-A zf5xtiy%`5GMl+6QjAe8)dTe~Zv(fnJ5f6<^9vh98OWCuO(`1WHDVN$P%^973C;g00 zzmI-Kr{6_Cqtox9pV8@e(9htDil21J=5q2lZyuLZDmLHIxSUc>Q_lW!PE#p1r77n$ zr+8ndcweV@U#ECqr+8ndcwd!VP8H{^;&Q4uZxtV16-W1TbU#P;b96sP_j9zCqqQ8Z z^ z8J99`=$ymj>i*Y|=4Pz~1 z9b-LXBjZuVV~kCVCm2sMo?<-1XohnA8M`v}W*o>E%{ZPhmeI}VVa#M)%9zcV$5_f( z®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 - +

- 覆盖unity的PlayerPrefs - 注意:调用均为同步调用, 容易阻塞游戏主线程造成卡顿,不建议频繁调用 + WX数据保护插件使用示例 + 演示如何使用数据保护功能来保护游戏中的重要数值
+ + + 示例1:基础用法 - 存储和读取数据 + + + + + 示例2:安全获取数据(推荐方式) + + + + + 示例3:存储复杂对象 + + + + + 示例4:数据管理 + + + + + 数据篡改事件处理 + + + + + 处理数据篡改 + + + + + 示例:玩家属性数据结构 + 注意:使用 JsonUtility 序列化时,必须使用公共字段 + + + + + 游戏货币管理器示例 + 封装常用的货币操作,简化调用 + + + + + 初始化货币数据 + + + + + 获取金币数量 + + + + + 增加金币 + + + + + 消费金币 + + 是否消费成功 + + + + 获取钻石数量 + + + + + 增加钻石 + + + + + 消费钻石 + + 是否消费成功 + Banner 广告,详见 https://developers.weixin.qq.com/minigame/dev/guide/open-ability/ad/banner-ad.html @@ -3125,6 +3204,36 @@  是否结束 + + + 事件ID,开发者自行维护(必需) + + + + + 事件耗时,单位ms(可选)不填时为0 + + + + + 事件结果,默认成功(可选)不填时默认成功 + + + + + reportGameEvent的事件类型 + + + + + 成功事件 + + + + + 失败事件 + + 错误码,文档可见 https://developers.weixin.qq.com/minigame/dev/api/open-api/openlink/wx.createPageManager.html @@ -3301,7 +3410,7 @@ 需要基础库: `2.10.0` 小程序版本 可选值: - - 'develop': 开发版; + - 'develop': 开发版,提交代码审核时默认使用开发版进行审核。; - 'trial': 体验版; - 'release': 正式版; @@ -3377,6 +3486,11 @@ 允许微信读写日历的开关
+ + + PC 内核版本号,仅在 PC 端存在该值 + + 客户端基础库版本 @@ -3479,6 +3593,14 @@ 客户端平台 + 可选值: + - 'ios': iOS微信(包含 iPhone、iPad); + - 'android': Android微信; + - 'ohos': HarmonyOS 手机端微信; + - 'ohos_pc': HarmonyOS PC微信; + - 'windows': Windows微信; + - 'mac': macOS微信; + - 'devtools': 微信开发者工具; @@ -3486,6 +3608,16 @@ 操作系统及版本 + + + 当前是否处于直接广告中 + + + + + 当前是否处于蒙层阶段 + + 需要基础库: `2.20.0` @@ -3552,6 +3684,11 @@ 直播间 id + + + 宿主传递的数据,第三方 app 中运行小游戏时返回 + + 启动小游戏的 query 参数 @@ -3582,6 +3719,11 @@ shareTicket,详见[获取更多转发信息](#) + + + 宿主app对应的场景值 + + 下边界坐标,单位:px @@ -3612,11 +3754,86 @@ 宽度,单位:px + + + 擂台赛组件领奖信息 + + 通知组件信息 + + + 福利组件信息 + + + + + 组件的名称 + + + + + 领取事件详情(只在onOfficialComponentsInfoChange回调中返回) + + + + + 奖励领取结果:1-全部成功, 2-部分成功(礼物达到领取上限), 3-领奖失败 + + + + + 是否收到了稀有奖励 + + + + + 用户领取的奖励列表 + + + + + 奖励类型:0-道具礼包, 1-微信蓝包, 2-h5商家券, 3-现金红包, 4-小程序券, 5-盲盒 + + + + + 奖励来源信息 + + + + + 获取的奖励数量 + + + + + 道具列表 + + + + + 奖励类型:1-普通奖励, 2-稀有奖励 + + + + + 礼包名称 + + + + + 道具名称 + + + + + 道具数量 + + 组件的布局位置信息 @@ -3632,6 +3849,46 @@ 组件的名称 + + + 可领取的好友礼包数量 + + + + + 可领取的礼包数量 + + + + + 组件的名称 + + + + + 领取事件详情(只在onOfficialComponentsInfoChange回调中返回) + + + + + 礼包描述,只有 gift 类型才有 + + + + + 礼包图标,只有 gift 类型才有 + + + + + 礼包名称,只有 gift 类型才有 + + + + + gift: 礼包, friendGift: 好友礼包 + + 当前占用的空间大小, 单位 KB @@ -3778,7 +4035,8 @@ 可选值: - 'ios': iOS微信(包含 iPhone、iPad); - 'android': Android微信; - - 'ohos': HarmonyOS微信; + - 'ohos': HarmonyOS 手机端微信; + - 'ohos_pc': HarmonyOS PC微信; - 'windows': Windows微信; - 'mac': macOS微信; - 'devtools': 微信开发者工具; @@ -4433,6 +4691,36 @@ 是否被添加至 「我的小程序」 + + + 错误信息 + + + + + 支付支持信息对象 + + + + + 调用结果信息,格式为 "checkIsSupportMidasPayment:ok" + + + + + 是否支持支付,true 表示支持,false 表示不支持 + + + + + 错误码,0 表示成功 + + + + + 错误信息,"success" 表示成功 + + 最多可以选择的图片张数 @@ -5601,22 +5889,22 @@ 预告状态:0可用 1取消 2已用 - + 敏感数据对应的云 ID,开通[云开发](https://developers.weixin.qq.com/minigame/dev/wxcloud/basis/getting-started.html)的小程序才会返回,可通过云调用直接获取开放数据,详细见[云调用直接获取开放数据](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html#method-cloud) - + 包括敏感数据在内的完整转发信息的加密数据,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html) - + 错误信息 - + 加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html) @@ -5711,6 +5999,21 @@ 实验参数数组,不填则获取所有实验参数 + + + 实验ID,标识实验 + + + + + 参数名称 + + + + + 参数值 + + 需要基础库: `3.7.8` @@ -5832,6 +6135,67 @@ 本机局域网子网掩码,基础库 2.24.0 开始支持 + + + 需要基础库: `1.6.0` + 传入 true 会返回高度信息,由于获取高度需要较高精确度,会减慢接口返回速度 + + + + + 需要基础库: `2.9.0` + 高精度定位超时时间(ms),指定时间内返回最高精度,该值3000ms以上高精度定位才有效果 + + + + + 需要基础库: `2.9.0` + 开启高精度定位 + + + + + wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标 + + + + + 位置的精确度,反应与真实位置之间的接近程度,可以理解成10即与真实位置相差10m,越小越精确 + + + + + 需要基础库: `1.2.0` + 高度,单位 m + + + + + 需要基础库: `1.2.0` + 水平精度,单位 m + + + + + 纬度,范围为 -90~90,负数表示南纬 + + + + + 经度,范围为 -180~180,负数表示西经 + + + + + 速度,单位 m/s + + + + + 需要基础库: `1.2.0` + 垂直精度,单位 m(Android 无法获取,返回 0) + + 需要基础库: `2.22.1` @@ -5947,6 +6311,17 @@ - itemSettings 只返回用户勾选过订阅面板中的“总是保持以上选择,不再询问”的订阅消息。 + + + shareTicket,详见[获取更多转发信息](#) + + + + + 需要基础库: `1.9.90` + 超时时间,单位 ms + + 封面广告组件展示状态码 @@ -6493,6 +6868,11 @@ 用短链打开小程序时当前页面携带的查询字符串。小程序中使用时,应在进入页面时调用 `wx.onCopyUrl` 自定义 `query`,退出页面时调用 `wx.offCopyUrl`,防止影响其它页面。 + + + 短链中的自定义标题,显示在小程序名称之后,可以不填 + + 当 手机坐标 X/Y 和 地球 X/Y 重合时,绕着 Z 轴转动的夹角为 alpha,范围值为 [0, 2*PI)。逆时针转动为正。 @@ -6516,6 +6896,21 @@ - 'landscapeReverse': 横屏反方向,以 HOME 键在屏幕左侧为反方向; + + + 当前直玩广告是否由于异常流程而结束(如 下拉/搜索 进入正在直玩广告流程中的游戏) + + + + + 当前是否处于直接广告中 + + + + + 当前是否处于蒙层阶段 + + 错误信息,包含堆栈 @@ -6911,7 +7306,7 @@ - 视频号 id + 视频号id(参考格式为:sphcqO59YEPCvoe;查看路径为:微信客户端->我tab->视频号->右上角.->视频号名字-视频号ID) @@ -7231,6 +7626,53 @@ 自定义维度,基础库 v2.14.0 开始支持可选 + + + 错误信息 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别成功 | | + | 2002004 | 人脸识别失败 | | + | 2002006 | 用户取消/超时/不同意,导致未完成人脸识别 | | + | 2002007 | 本用户7天内人脸识别已通过,通过日期为XX | | + | 2002008 | 本日已调起过人脸识别或者本月调用次数已达上限 | | + | 2002009 | 无权限发起人脸识别 | | + + + + + 错误码 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别成功 | | + | 2002004 | 人脸识别失败 | | + | 2002006 | 用户取消/超时/不同意,导致未完成人脸识别 | | + | 2002007 | 本用户7天内人脸识别已通过,通过日期为XX | | + | 2002008 | 本日已调起过人脸识别或者本月调用次数已达上限 | | + | 2002009 | 无权限发起人脸识别 | | + + + + + 人脸核身会话唯一标识(小程序后台根据「用户实名信息(姓名+身份证)」调用微信后台[getVerifyId](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_getverifyid.html)接口获取) + + + + + 错误信息 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别完成(需要通过[queryVerifyInfo](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_queryverifyinfo.html)接口查询人脸核身真实验证结果) | | + + + + + 错误码 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别完成(需要通过[queryVerifyInfo](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_queryverifyinfo.html)接口查询人脸核身真实验证结果) | | + + 购买数量。mode=game 时必填。购买数量。详见 [buyQuantity 限制说明](#buyQuantity限制说明)。 @@ -7616,7 +8058,7 @@ - 自定义的登录态 + 自定义的登录态。上限 1024 字符。 @@ -9125,5 +9567,11 @@ 注册监听录制事件的回调函数。当对应事件触发时,回调函数会被执行 + + + 覆盖unity的PlayerPrefs + 注意:调用均为同步调用, 容易阻塞游戏主线程造成卡顿,不建议频繁调用 + + diff --git a/Runtime/Plugins/wx-runtime.xml.meta b/Runtime/Plugins/wx-runtime.xml.meta index abf9e048d..764c5bb54 100644 --- a/Runtime/Plugins/wx-runtime.xml.meta +++ b/Runtime/Plugins/wx-runtime.xml.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 9a7c16358edeccc9e6507105d15b2cd3 +guid: bf55242a56dec72e36e68cce3feed2c0 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/WX.cs b/Runtime/WX.cs index 0049afc2d..6f6c03762 100644 --- a/Runtime/WX.cs +++ b/Runtime/WX.cs @@ -107,6 +107,69 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.CheckIsAddedToMyMiniProgram(callback); } + /// + /// [wx.checkIsSupportFacialRecognition(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/face/wx.checkIsSupportFacialRecognition.html) + /// 需要基础库: `3.8.12` + /// 检查当前设备是否支持人脸识别能力 + /// **示例代码** + /// ```js + /// wx.checkIsSupportFacialRecognition({ + /// success() { + /// // 支持人脸识别 + /// }, + /// fail() { + /// // 不支持人脸识别 + /// }, + /// }) + /// ``` + /// + public static void CheckIsSupportFacialRecognition(CheckIsSupportFacialRecognitionOption callback) + { + WXSDKManagerHandler.Instance.CheckIsSupportFacialRecognition(callback); + } + + /// + /// [wx.checkIsSupportMidasPayment(Object object)](https://developers.weixin.qq.com/minigame/dev/api/midas-payment/wx.checkIsSupportMidasPayment.html) + /// 需要基础库: `3.10.3` + /// 检查当前环境是否支持虚拟支付。使用前请注意阅读[相关说明](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/virtual-payment/virtual-payment2.html)。 + /// **平台支持说明** + /// - Android、Windows、OHOS 平台:默认支持虚拟支付,接口直接返回支持 + /// - iOS 平台:需满足以下环境要求才可能支持虚拟支付 + /// - 操作系统要求:使用 iPhone 或者 iPad,iOS 15 及以上版本 + /// - 基础库版本要求:3.10.3 及以上 + /// - 客户端版本要求:8.0.68 及以上 + /// - 苹果支付不支持使用沙箱环境,仅支持使用现网环境 + /// **注意事项** + /// 若该 API 都不存在,则 iOS 一定不支持虚拟支付,请保持旧版本逻辑。 + /// **示例代码** + /// ```js + /// if (wx.checkIsSupportMidasPayment) { + /// wx.checkIsSupportMidasPayment({ + /// success(res) { + /// console.log('支持检查结果:', res) + /// if (res.data.allow_pay) { + /// console.log('当前环境支持支付') + /// // 可以继续调用支付相关接口 + /// } else { + /// console.log('当前环境不支持支付') + /// // 请自行适配用户提示文案 + /// } + /// }, + /// fail(err) { + /// console.error('检查支持情况失败:', err) + /// }, + /// complete() { + /// console.log('检查完成') + /// } + /// }) + /// } + /// ``` + /// + public static void CheckIsSupportMidasPayment(CheckIsSupportMidasPaymentOption callback) + { + WXSDKManagerHandler.Instance.CheckIsSupportMidasPayment(callback); + } + /// /// [wx.checkSession(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/login/wx.checkSession.html) /// 检查登录态 session_key 是否过期。 @@ -279,7 +342,7 @@ namespace WeChatWASM /// /// [wx.exitChatTool(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.exitChatTool.html) /// 需要基础库: `3.7.12` - /// 退出聊天工具模式 + /// 退出聊天工具开放能力模式 /// public static void ExitChatTool(ExitChatToolOption callback) { @@ -675,6 +738,7 @@ namespace WeChatWASM /// | 8 | 当天(自然日)赞官方贴子数 | 无需传入 | | /// | 9 | 当天(自然日)评论官方贴子数 | 无需传入 | | /// | 10 | 当天(自然日)发表到本圈子话题的贴子数 | 传入话题id,从mp-游戏圈话题管理处获取 | | + /// | 11 | 用户最近一次推荐游戏时间 | 无需传入 | 秒级时间戳 | | /// **encryptedData 解密后得到的 GameClubData 的结构** /// | 属性 | 类型 | 说明 | /// | ------- | ------- | -------------------------------------- | @@ -691,9 +755,22 @@ namespace WeChatWASM } /// - /// [wx.getGameExptInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/data-analysis/wx.getGameExptInfo.html) + /// [wx.getGameExptInfo(Object options)](https://developers.weixin.qq.com/minigame/dev/api/data-analysis/wx.getGameExptInfo.html) /// 需要基础库: `3.8.8` /// 给定实验参数数组,获取对应的实验参数值 + /// **示例代码** + /// ```js + /// wx.getGameExptInfo({ + /// keyList: ['experiment_key1', 'experiment_key2'], + /// success(res) { + /// res.list.forEach((expParam) => { + /// console.log('实验ID:', expParam.expt_id); + /// console.log('参数名:', expParam.param_name); + /// console.log('参数值:', expParam.param_value); + /// }) + /// } + /// }); + /// ``` /// public static void GetGameExptInfo(GetGameExptInfoOption callback) { @@ -790,6 +867,14 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.GetLocalIPAddress(callback); } + /// + /// [wx.getLocation(Object object)](https://developers.weixin.qq.com/minigame/dev/api/location/wx.getLocation.html) + /// + public static void GetLocation(GetLocationOption callback) + { + WXSDKManagerHandler.Instance.GetLocation(callback); + } + /// /// [wx.getNetworkType(Object object)](https://developers.weixin.qq.com/minigame/dev/api/device/network/wx.getNetworkType.html) /// 获取网络类型 @@ -916,6 +1001,15 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.GetSetting(callback); } + /// + /// [wx.getShareInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/share/wx.getShareInfo.html) + /// 需要基础库: `1.1.0` + /// + public static void GetShareInfo(GetShareInfoOption callback) + { + WXSDKManagerHandler.Instance.GetShareInfo(callback); + } + /// /// [wx.getShowSplashAdStatus(Object object)](https://developers.weixin.qq.com/minigame/dev/api/ad/wx.getShowSplashAdStatus.html) /// 需要基础库: `3.7.8` @@ -1262,9 +1356,6 @@ namespace WeChatWASM /// 从 2.3.0 版本开始,若用户未点击小程序页面任意位置,则开发者将无法调用此接口自动跳转至其他小程序。 /// ##### 需要用户确认跳转 /// 从 2.3.0 版本开始,在跳转至其他小程序前,将统一增加弹窗,询问是否跳转,用户确认后才可以跳转其他小程序。如果用户点击取消,则回调 `fail cancel`。 - /// ##### 无需声明跳转名单,不限跳转数量(众测中) - /// 1. 从2020年4月24日起,使用跳转其他小程序功能将无需在全局配置中声明跳转名单,调用此接口时将不再校验所跳转的 AppID 是否在 navigateToMiniProgramAppIdList 中。 - /// 2. 从2020年4月24日起,跳转其他小程序将不再受数量限制,使用此功能时请注意遵守运营规范。 /// **运营规范** /// 平台将坚决打击小程序盒子等互推行为,使用此功能时请严格遵守[《微信小程序平台运营规范》](https://developers.weixin.qq.com/miniprogram/product/#_5-10-%E4%BA%92%E6%8E%A8%E8%A1%8C%E4%B8%BA),若发现小程序违反运营规范将被下架处理。 /// **关于调试** @@ -1700,6 +1791,125 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.ReportScene(callback); } + /// + /// [wx.requestFacialRecognition(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/account-info/wx.requestFacialRecognition.html) + /// 需要基础库: `3.11.2` + /// 腾讯游戏人脸识别验证功能是基于健康系统防沉迷体系,用于识别疑似未成年人冒用成年人账号游玩游戏的行为,是防止未成年人沉迷网络游戏的一项重要措施。本接口是为开通虚拟支付功能的小游戏开发者提供的,此接口是基于人脸识别的未成年人身份核验接口。本次识别是根据用户在腾讯健康系统中留存的实名信息进行验证,结果将直接返回至开发者。 + /// **接口限额** + /// - 超出限额后将返回错误码 2002008(频率控制) + /// - 1天内全部游戏对一个用户只能调起1次人脸识别 + /// - 若用户人脸识别通过:7天内不能再被弹出人脸识别 + /// - 根据小游戏评级每个月限制使用次数,一旦发现恶意滥用接口,会取消使用资格。具体使用次数如下: + /// - S级:300次/月 + /// - A级:100次/月 + /// - B级:30次/月 + /// **处理流程** + /// 人脸识别流程图 + /// **示例代码** + /// ```js + /// // 实际业务场景:防沉迷身份验证 + /// function checkUserIdentity() { + /// wx.requestFacialRecognition({ + /// success(res) { + /// // 场景 1:本次人脸识别通过 + /// // res = { errCode: 0, errMsg: 'ok' } + /// console.log('人脸识别成功:', res) + /// // 允许继续游戏 + /// startGame() + /// }, + /// fail(err) { + /// console.error('人脸识别失败:', err) + /// let tipMessage = '' + /// let shouldBlock = false // 是否需要阻断游戏 + /// // 根据错误码进行不同处理 + /// switch (err.errCode) { + /// case 2002004: + /// // 人脸识别失败(需要阻断) + /// // err = { errCode: 2002004, errMsg: '人脸识别失败' } + /// tipMessage = '识别失败,请稍后重试' + /// shouldBlock = true + /// break + /// case 2002006: + /// // 用户取消/超时/不同意,导致未完成人脸识别(需要阻断) + /// // err = { errCode: 2002006, errMsg: '用户取消' } + /// tipMessage = '您已取消验证,无法继续游戏' + /// shouldBlock = true + /// break + /// case 2002007: + /// // 本用户7天内人脸识别已通过(可以继续游戏) + /// // err = { errCode: 2002007, errMsg: '本用户7天内人脸识别已通过,通过日期为2024-01-15' } + /// tipMessage = '您已完成验证' + /// shouldBlock = false + /// break + /// case 2002008: + /// // 频率控制:本日已调起过人脸识别 or 本月调用次数已达上限(可以继续游戏) + /// // err = { errCode: 2002008, errMsg: '本日已调起过人脸识别' } + /// // 或 err = { errCode: 2002008, errMsg: '本月调用次数已达上限' } + /// tipMessage = '今日验证次数已达上限' + /// shouldBlock = false + /// break + /// case 2002009: + /// // 无权限发起人脸识别(可以继续游戏) + /// // err = { errCode: 2002009, errMsg: '无权限发起人脸识别' } + /// tipMessage = '暂无权限使用此功能' + /// shouldBlock = false + /// break + /// default: + /// // 系统异常等其他错误(可以继续游戏,避免影响正常用户) + /// tipMessage = '系统异常,请稍后重试' + /// shouldBlock = false + /// } + /// if (tipMessage) { + /// wx.showModal({ + /// title: '提示', + /// content: tipMessage, + /// showCancel: false + /// }) + /// } + /// if (shouldBlock) { + /// // 仅对识别失败(2002004)和用户取消(2002006)阻断游戏 + /// restrictGameFeatures() + /// } else { + /// // 其他情况允许继续游戏 + /// startGame() + /// } + /// }, + /// complete(res) { + /// // 无论成功失败均会触发 + /// console.log('人脸识别流程结束:', res) + /// } + /// }) + /// } + /// ``` + /// + public static void RequestFacialRecognition(RequestFacialRecognitionOption callback) + { + WXSDKManagerHandler.Instance.RequestFacialRecognition(callback); + } + + /// + /// [wx.requestFacialVerify(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/face/wx.requestFacialVerify.html) + /// 需要基础库: `3.8.12` + /// 对用户实名信息进行基于生物识别的人脸核身验证 + /// **示例代码** + /// ```js + /// wx.requestFacialVerify({ + /// // 人脸核身会话唯一标识 + /// verifyId: 'xxx', + /// success() { + /// // 人脸核身验证成功,需要通知小程序后台根据本次人脸核身会话唯一标识 verifyId 字段调用微信后台 queryVerifyInfo 接口查询人脸核身真实验证结果。 + /// }, + /// fail() { + /// // 人脸核身验证失败 + /// }, + /// }) + /// ``` + /// + public static void RequestFacialVerify(RequestFacialVerifyOption callback) + { + WXSDKManagerHandler.Instance.RequestFacialVerify(callback); + } + /// /// [wx.requestMidasFriendPayment(Object object)](https://developers.weixin.qq.com/minigame/dev/api/midas-payment/wx.requestMidasFriendPayment.html) /// 需要基础库: `2.11.0` @@ -2043,6 +2253,8 @@ namespace WeChatWASM /// [wx.setDeviceOrientation(Object object)](https://developers.weixin.qq.com/minigame/dev/api/device/orientation/wx.setDeviceOrientation.html) /// 需要基础库: `2.26.0` /// 切换横竖屏。接口调用成功后会触发 wx.onDeviceOrientationChange 事件 + /// **注意** + /// - PC小程序处于全屏时,无法切换横竖屏。 /// public static void SetDeviceOrientation(SetDeviceOrientationOption callback) { @@ -2763,6 +2975,15 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.ReportEvent(eventId, data); } + /// + /// [wx.reportMonitor(string name, number value)](https://developers.weixin.qq.com/minigame/dev/api/data-analysis/wx.reportMonitor.html) + /// 需要基础库: `2.1.2` + /// + public static void ReportMonitor(string name, double value) + { + WXSDKManagerHandler.Instance.ReportMonitor(name, value); + } + /// /// [wx.reportPerformance(Number id, Number value, String|Array dimensions)](https://developers.weixin.qq.com/minigame/dev/api/base/performance/wx.reportPerformance.html) /// 需要基础库: `2.10.0` @@ -3027,6 +3248,7 @@ namespace WeChatWASM /// 监听搜索到新设备的事件 /// **注意** /// - 若在 [wx.onBluetoothDeviceFound](https://developers.weixin.qq.com/minigame/dev/api/device/bluetooth/wx.onBluetoothDeviceFound.html) 回调了某个设备,则此设备会添加到 [wx.getBluetoothDevices](https://developers.weixin.qq.com/minigame/dev/api/device/bluetooth/wx.getBluetoothDevices.html) 接口获取到的数组中。 + /// - 地址变化这个是鸿蒙系统特性,小程序可以不缓存地址,重新搜索连接。 /// **示例代码** /// [在微信开发者工具中查看示例](https://developers.weixin.qq.com/s/pQU51zmz7a3K) /// ```js @@ -3121,6 +3343,34 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.OffDeviceOrientationChange(result); } + /// + /// [wx.onDirectAdStatusChange(function listener)](https://developers.weixin.qq.com/minigame/dev/api/ad/wx.onDirectAdStatusChange.html) + /// 需要基础库: `3.11.2` + /// 监听监听直玩广告状态变化 + /// **示例代码** + /// ```js + /// wx.onDirectAdStatusChange(res => { + /// // 会有如下的几种状态值组合 + /// // a) { isInMask: true, isInDirectGameAd: true } -> 表示当前正在直玩广告 且 未戳破蒙层 + /// // b) { isInMask: false, isInDirectGameAd: true } -> 表示当前正在直玩广告 且 戳破了蒙层 + /// // c) { isInMask: false, isInDirectGameAd: false, isEndByAbnormal: false }, -> 表示倒计时结束了,并且选择了继续玩 + /// // d) { isInMask: false, isInDirectGameAd: false, isEndByAbnormal: true }, -> 表示由于异常流程而结束 + /// console.log(res.isInMask) + /// console.log(res.isInDirectGameAd) + /// console.log(res.isEndByAbnormal) + /// }) + /// ``` + /// + public static void OnDirectAdStatusChange(Action result) + { + WXSDKManagerHandler.Instance.OnDirectAdStatusChange(result); + } + + public static void OffDirectAdStatusChange(Action result) + { + WXSDKManagerHandler.Instance.OffDirectAdStatusChange(result); + } + /// /// [wx.onError(function listener)](https://developers.weixin.qq.com/minigame/dev/api/base/app/app-event/wx.onError.html) /// 监听全局错误事件 @@ -3495,21 +3745,21 @@ namespace WeChatWASM /// 需要基础库: `2.8.1` /// 监听用户主动截屏事件。用户使用系统截屏按键截屏时触发,只能注册一个监听 /// **示例代码** + /// 页面要先调用wx.showShareMenu()来允许调用 /// ```js /// wx.onUserCaptureScreen(function (res) { /// console.log('用户截屏了') /// return { /// query: "parameter=test", // 通过截屏图片打开小程序的query参数 /// promise: new Promise((resolve) => { // 通过promise延时传递小程序的query参数 - /// setTimeout(() => { - /// resolve({ - /// query: "parameter=test2", - /// }) - /// }, 1000) // 在1秒内对query进行解析 - /// }) + /// setTimeout(() => { + /// resolve({ + /// query: "parameter=test2", + /// }) + /// }, 1000) // 在1秒内对query进行解析 + /// }) /// } - /// } - /// ) + /// }) /// ``` /// public static void OnUserCaptureScreen(Action result) @@ -3643,7 +3893,7 @@ namespace WeChatWASM /// /// [wx.onCopyUrl(function listener)](https://developers.weixin.qq.com/minigame/dev/api/share/wx.onCopyUrl.html) /// 需要基础库: `2.14.3` - /// 监听用户点击右上角菜单的「复制链接」按钮时触发的事件。本接口为 Beta 版本,暂只在 Android 平台支持。 + /// 监听用户点击右上角菜单的「复制链接」按钮时触发的事件。 /// public static void OnCopyUrl(Action> callback) { @@ -3831,6 +4081,23 @@ namespace WeChatWASM return WXSDKManagerHandler.GetDeviceInfo(); } + /// + /// [Object wx.getDirectAdStatusSync()](https://developers.weixin.qq.com/minigame/dev/api/ad/wx.getDirectAdStatusSync.html) + /// 需要基础库: `3.11.2` + /// 获取直玩广告组件展示状态。 + /// **示例代码** + /// ```js + /// const statusInfo = wx.getDirectAdStatusSync(); + /// console.log(statusInfo.isInMask) // 当前是否在蒙层阶段 + /// console.log(statusInfo.isInDirectGameAd) // 当前是否在直玩广告中 + /// ``` + /// + /// + public static DirectAdStatusInfo GetDirectAdStatusSync() + { + return WXSDKManagerHandler.GetDirectAdStatusSync(); + } + /// /// [Object wx.getEnterOptionsSync()](https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.getEnterOptionsSync.html) /// 需要基础库: `2.13.2` @@ -4045,19 +4312,19 @@ namespace WeChatWASM } /// - /// [[ImageData](https://developers.weixin.qq.com/minigame/dev/api/render/image/ImageData.html) wx.createImageData(number width, number height)](https://developers.weixin.qq.com/minigame/dev/api/render/image/wx.createImageData.html) + /// [[ImageData](https://developers.weixin.qq.com/minigame/dev/api/render/image/ImageData.html) wx.createImageData(number width, number height, Uint8ClampedArray data)](https://developers.weixin.qq.com/minigame/dev/api/render/image/wx.createImageData.html) /// 需要基础库: `3.4.10` - /// 这里有两种使用方法, 一种是指定ImageData的宽和高, 另外一种是使用ImageData, 通过它本身的宽高尺寸来构建新的对象。 + /// 这里有两种使用方法, 一种是指定ImageData的宽和高, 另外一种使用已有的ImageData的图像二进制数据,来构建新的对象。 /// **示例代码** /// ```js - /// const imageData1 = wx.createImageData(100, 100) - /// const imageData2 = wx.createImageData(imageData1) + /// const imageData1 = wx.createImageData(100, 100) + /// const imageData2 = wx.createImageData(imageData1.data, 100, 100) /// ``` /// /// - public static ImageData CreateImageData(double width, double height) + public static ImageData CreateImageData(double width, double height, int[] data) { - return WXSDKManagerHandler.CreateImageData(width, height); + return WXSDKManagerHandler.CreateImageData(width, height, data); } /// diff --git a/Runtime/WXBase.cs b/Runtime/WXBase.cs index fed9ae2b8..7f7718edd 100644 --- a/Runtime/WXBase.cs +++ b/Runtime/WXBase.cs @@ -1136,6 +1136,14 @@ namespace WeChatWASM { WXSDKManagerHandler.Instance.NotifyMiniProgramPlayableStatus(option); } + /// + /// 上报自定义打点数据 + /// + /// + public static void ReportGameEvent(ReportGameEventOption option) + { + WXSDKManagerHandler.Instance.ReportGameEvent(option); + } #endregion #region 虚拟支付 /// diff --git a/Runtime/WXTouchInputModule.cs b/Runtime/WXTouchInputModule.cs new file mode 100644 index 000000000..a685c29bc --- /dev/null +++ b/Runtime/WXTouchInputModule.cs @@ -0,0 +1,186 @@ +#if UNITY_WEBGL || WEIXINMINIGAME || UNITY_EDITOR +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Events; +using UnityEngine.EventSystems; +using UnityEngine.UI; + +/** + * WxTouch输入模块,结合 WXTouchInputOverride 使用 + * 用于拦截所有Button事件调用,确保事件只被触发一次,避免重复触发问题 + * 除会拦截带 Button 组件的 ExecuteEvents.pointerClickHandler 事件外,逻辑与 StandaloneInputModule 均一致 + * 需要在场景中添加 WXTouchInputOverride 组件使用,且保证不要有其他的 StandaloneInputModule + */ +public class WXTouchInputModule : StandaloneInputModule +{ + private const float doubleClickTime = 0.3f; + + public override void Process() + { + if (!eventSystem.isFocused && ShouldIgnoreEventsOnNoFocus()) + return; + bool usedEvent = SendUpdateEventToSelectedObject(); + if (!ProcessTouchEvents() && input.mousePresent) + ProcessMouseEvent(); + if (eventSystem.sendNavigationEvents) + { + if (!usedEvent) + usedEvent |= SendMoveEventToSelectedObject(); + + if (!usedEvent) + SendSubmitEventToSelectedObject(); + } + } + + private bool ShouldIgnoreEventsOnNoFocus() + { +#if UNITY_EDITOR + return !UnityEditor.EditorApplication.isRemoteConnected; +#else + return true; +#endif + } + + private bool ProcessTouchEvents() + { + for (int i = 0; i < input.touchCount; ++i) + { + Touch touch = input.GetTouch(i); + if (touch.type == TouchType.Indirect) + continue; + + bool released; + bool pressed; + var pointer = GetTouchPointerEventData(touch, out pressed, out released); + + ProcessTouchPress(pointer, pressed, released); + + if (!released) + { + ProcessMove(pointer); + ProcessDrag(pointer); + } + else + RemovePointerData(pointer); + } + return input.touchCount > 0; + } + + // released 后会拦截 Button 的 ExecuteEvents.pointerClickHandler ,其余逻辑与 StandaloneInputModule 保持一致 + protected new void ProcessTouchPress(PointerEventData pointerEvent, bool pressed, bool released) + { + var currentOverGo = pointerEvent.pointerCurrentRaycast.gameObject; + + // PointerDown notification + if (pressed) + { + pointerEvent.eligibleForClick = true; + pointerEvent.delta = Vector2.zero; + pointerEvent.dragging = false; + pointerEvent.useDragThreshold = true; + pointerEvent.pressPosition = pointerEvent.position; + pointerEvent.pointerPressRaycast = pointerEvent.pointerCurrentRaycast; + + DeselectIfSelectionChanged(currentOverGo, pointerEvent); + + if (pointerEvent.pointerEnter != currentOverGo) + { + // send a pointer enter to the touched element if it isn't the one to select... + HandlePointerExitAndEnter(pointerEvent, currentOverGo); + pointerEvent.pointerEnter = currentOverGo; + } + + var resetDiffTime = Time.unscaledTime - pointerEvent.clickTime; + if (resetDiffTime >= doubleClickTime) + { + pointerEvent.clickCount = 0; + } + + // search for the control that will receive the press + // if we can't find a press handler set the press + // handler to be what would receive a click. + var newPressed = ExecuteEvents.ExecuteHierarchy(currentOverGo, pointerEvent, ExecuteEvents.pointerDownHandler); + + var newClick = ExecuteEvents.GetEventHandler(currentOverGo); + + // didnt find a press handler... search for a click handler + if (newPressed == null) + newPressed = newClick; + + // Debug.Log("Pressed: " + newPressed); + + float time = Time.unscaledTime; + + if (newPressed == pointerEvent.lastPress) + { + var diffTime = time - pointerEvent.clickTime; + if (diffTime < doubleClickTime) + ++pointerEvent.clickCount; + else + pointerEvent.clickCount = 1; + + pointerEvent.clickTime = time; + } + else + { + pointerEvent.clickCount = 1; + } + + pointerEvent.pointerPress = newPressed; + pointerEvent.rawPointerPress = currentOverGo; + pointerEvent.pointerClick = newClick; + + pointerEvent.clickTime = time; + + // Save the drag handler as well + pointerEvent.pointerDrag = ExecuteEvents.GetEventHandler(currentOverGo); + + if (pointerEvent.pointerDrag != null) + ExecuteEvents.Execute(pointerEvent.pointerDrag, pointerEvent, ExecuteEvents.initializePotentialDrag); + } + + // PointerUp notification + if (released) + { + // Debug.Log("Executing pressup on: " + pointer.pointerPress); + ExecuteEvents.Execute(pointerEvent.pointerPress, pointerEvent, ExecuteEvents.pointerUpHandler); + // Debug.Log("KeyCode: " + pointer.eventData.keyCode); + + // see if we mouse up on the same element that we clicked on... + var pointerClickHandler = ExecuteEvents.GetEventHandler(currentOverGo); + + // PointerClick and Drop events + if (pointerEvent.pointerClick == pointerClickHandler && pointerEvent.eligibleForClick) + { + bool shouldHandleInWx = currentOverGo != null && currentOverGo.GetComponentInParent() != null; + if (!shouldHandleInWx) + { + ExecuteEvents.Execute(pointerEvent.pointerClick, pointerEvent, ExecuteEvents.pointerClickHandler); + } + } + + if (pointerEvent.pointerDrag != null && pointerEvent.dragging) + { + ExecuteEvents.ExecuteHierarchy(currentOverGo, pointerEvent, ExecuteEvents.dropHandler); + } + + pointerEvent.eligibleForClick = false; + pointerEvent.pointerPress = null; + pointerEvent.rawPointerPress = null; + pointerEvent.pointerClick = null; + + if (pointerEvent.pointerDrag != null && pointerEvent.dragging) + ExecuteEvents.Execute(pointerEvent.pointerDrag, pointerEvent, ExecuteEvents.endDragHandler); + + pointerEvent.dragging = false; + pointerEvent.pointerDrag = null; + + // send exit events as we need to simulate this on touch up on touch device + ExecuteEvents.ExecuteHierarchy(pointerEvent.pointerEnter, pointerEvent, ExecuteEvents.pointerExitHandler); + pointerEvent.pointerEnter = null; + } + + //m_InputPointerEvent = pointerEvent; + } +} +#endif \ No newline at end of file diff --git a/Runtime/WXTouchInputModule.cs.meta b/Runtime/WXTouchInputModule.cs.meta new file mode 100644 index 000000000..ffc1c36c7 --- /dev/null +++ b/Runtime/WXTouchInputModule.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6226ce8c6cf3dd24d95cfa430c9755d3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Runtime/WXTouchInputOverride.cs b/Runtime/WXTouchInputOverride.cs index 82a963b51..831f7a540 100644 --- a/Runtime/WXTouchInputOverride.cs +++ b/Runtime/WXTouchInputOverride.cs @@ -21,17 +21,17 @@ internal class TouchData * 所以需要使用WX的触控接口重新覆盖Unity的BaseInput关于触控方面的接口 * 通过设置StandaloneInputModule.inputOverride的方式来实现 */ -[RequireComponent(typeof(StandaloneInputModule))] +[RequireComponent(typeof(WXTouchInputModule))] public class WXTouchInputOverride : BaseInput { private bool _isInitWechatSDK; private readonly List _touches = new List(); - private StandaloneInputModule _standaloneInputModule = null; + private WXTouchInputModule _standaloneInputModule = null; protected override void Awake() { base.Awake(); - _standaloneInputModule = GetComponent(); + _standaloneInputModule = GetComponent(); } protected override void OnEnable() @@ -138,11 +138,16 @@ public class WXTouchInputOverride : BaseInput Button button = selectedObject.GetComponent