From 49422acf8f311b63a7ab995a85bdb3e86e9e684c Mon Sep 17 00:00:00 2001 From: axiomlogicnexus Date: Thu, 23 Jul 2026 08:42:30 +0000 Subject: [PATCH] fix: deliver validated HyperTwist desktop alpha --- UnrealHyperTwist/Config/DefaultEngine.ini | 4 +- UnrealHyperTwist/Config/DefaultGame.ini | 6 +- .../Maps/L_HyperTwist_ClassicTraining.umap | Bin 8808 -> 26414 bytes .../L_HyperTwist_FollowAlongTraining.umap | Bin 8843 -> 26505 bytes .../L_HyperTwist_Magic120CellTraining.umap | Bin 14055 -> 14092 bytes .../L_HyperTwist_MagicCube5DTraining.umap | Bin 14031 -> 14068 bytes .../Materials/MI_HT_ClassicCube_Back.uasset | Bin 4548 -> 9333 bytes .../Materials/MI_HT_ClassicCube_Down.uasset | Bin 4548 -> 9207 bytes .../Materials/MI_HT_ClassicCube_Front.uasset | Bin 4554 -> 9269 bytes .../MI_HT_ClassicCube_Internal.uasset | Bin 4572 -> 8163 bytes .../Materials/MI_HT_ClassicCube_Left.uasset | Bin 4548 -> 9211 bytes .../Materials/MI_HT_ClassicCube_Right.uasset | Bin 4554 -> 8670 bytes .../Materials/MI_HT_ClassicCube_Up.uasset | Bin 4536 -> 8820 bytes .../M_HT_ClassicCubeFaceMaster.uasset | Bin 6815 -> 11163 bytes .../HyperTwistRuntimeDiagnostics.cpp | 351 +++++++ .../HyperTwistHttpSpeechClient.cpp | 15 +- .../HyperTwistHttpVisionClient.cpp | 15 +- .../HyperTwistHttpVoiceClient.cpp | 15 +- .../HyperTwistClassicCubeActor.cpp | 506 ++++++++-- .../HyperTwistClassicCubeGameMode.cpp | 428 +++++++- .../HyperTwistClassicCubeHUDWidget.cpp | 194 +++- .../Private/HyperTwistSolverLibrary.cpp | 89 +- .../HyperTwistCoachDashboardActor.cpp | 28 +- .../HyperTwistCoachDashboardWidget.cpp | 94 +- .../HyperTwistFirstRunLaunchLibrary.cpp | 127 ++- ...perTwistFirstRunLaunchPlayerController.cpp | 169 +++- .../HyperTwistFirstRunLaunchWidget.cpp | 24 +- ...TwistHigherDimensionalTrainingGameMode.cpp | 598 +++++++++++ ...istHigherDimensionalTrainingShellActor.cpp | 857 ++++++++++++++-- .../Private/ThirdParty/rob-twophase/prun.cpp | 10 +- .../Private/ThirdParty/rob-twophase/prun.h | 4 +- .../HyperTwistRuntimeDiagnostics.h | 31 + .../HyperTwistClassicCubeActor.h | 29 +- .../HyperTwistClassicCubeGameMode.h | 60 +- .../HyperTwistClassicCubeHUDWidget.h | 24 +- .../HyperTwistClassicCubeOrbitPawn.h | 8 +- .../HyperTwistCoachDashboardActor.h | 2 +- .../HyperTwistCoachDashboardWidget.h | 9 + .../HyperTwistFirstRunLaunchLibrary.h | 16 + ...HyperTwistFirstRunLaunchPlayerController.h | 13 +- .../HyperTwistFirstRunLaunchWidget.h | 6 + ...erTwistHigherDimensionalTrainingGameMode.h | 135 +++ ...TwistHigherDimensionalTrainingShellActor.h | 123 ++- .../Tests/HyperTwistClassicCubeActorTest.cpp | 64 ++ .../HyperTwistClassicCubeBehaviorTest.cpp | 60 ++ .../HyperTwistClassicCubeGameModeTest.cpp | 32 + .../HyperTwistFirstRunLaunchSurfaceTest.cpp | 182 +++- ...mensionalPhase6CActivationContractTest.cpp | 141 ++- .../HyperTwistHttpClientConfigurationTest.cpp | 51 + .../UnrealHyperTwist.Build.cs | 2 +- .../UnrealHyperTwist/UnrealHyperTwist.cpp | 24 +- docs/generated/alpha_test_20260723/README.md | 41 + .../alpha_test_20260723/classic_route.png | Bin 0 -> 1362392 bytes .../classic_route_visual_report.json | 97 ++ .../desktop_launch_surface_report.json | 71 ++ .../desktop_package_validation_report.json | 480 +++++++++ ...final_delivery_bootstrap_verification.json | 21 + ...delivery_dashboard_nullrhi_diagnostics.log | 8 + .../final_delivery_first_run.png | Bin 0 -> 135178 bytes ...inal_delivery_first_run_visual_report.json | 94 ++ .../final_delivery_zip_export_report.json | 101 ++ .../first_run_automation_index.json | 104 ++ .../superseded_july9_retirement_report.json | 19 + ...phase6c_dedicated_family_map_manifest.json | 20 +- ...YPERTWIST_ALPHA_TEST_README_2026-07-23.txt | 85 ++ ...SCREEN_REPAIR_AND_VALIDATION_2026-07-19.md | 394 ++++++++ ...NSIVE_RECONSTRUCTION_ROADMAP_2026-06-10.md | 42 + .../HyperTwist/DEVELOPMENT.md | 89 ++ .../HyperTwist/FEATURE_REGISTRY.md | 48 +- .../HyperTwist/ROADMAP.md | 25 +- scripts/Export-HyperTwistPackagedBuildZip.ps1 | 189 +++- ...voke-HyperTwistClassicCubeMapAuthoring.ps1 | 118 ++- .../Invoke-HyperTwistClassicCubePackage.ps1 | 250 ++++- scripts/Invoke-HyperTwistDesktopPackage.ps1 | 30 +- ...yperTwistHigherDimensionalMapAuthoring.ps1 | 65 +- ...nvoke-HyperTwistInteractiveDesktopTask.ps1 | 79 +- .../Launch-HyperTwistClassicCubePackage.ps1 | 416 +++++++- scripts/Launch-HyperTwistDesktopPackage.ps1 | 270 ++++- ...Set-HyperTwistBootstrapLaunchArguments.ps1 | 408 ++++++++ ...Test-HyperTwistPackagedOffscreenVisual.ps1 | 343 +++++++ .../Test-HyperTwistPackagedWindowVisual.ps1 | 939 ++++++++++++++++++ ...twist_author_classic_cube_training_maps.py | 221 +++-- ...author_higher_dimensional_training_maps.py | 178 ++-- ...run-hypertwist-remote-windows-file-pull.sh | 18 +- ...run-hypertwist-remote-windows-file-sync.sh | 117 +-- 85 files changed, 9238 insertions(+), 688 deletions(-) create mode 100644 UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.cpp create mode 100644 UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistHigherDimensionalTrainingGameMode.cpp create mode 100644 UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.h create mode 100644 UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistHigherDimensionalTrainingGameMode.h create mode 100644 UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistHttpClientConfigurationTest.cpp create mode 100644 docs/generated/alpha_test_20260723/README.md create mode 100644 docs/generated/alpha_test_20260723/classic_route.png create mode 100644 docs/generated/alpha_test_20260723/classic_route_visual_report.json create mode 100644 docs/generated/alpha_test_20260723/desktop_launch_surface_report.json create mode 100644 docs/generated/alpha_test_20260723/desktop_package_validation_report.json create mode 100644 docs/generated/alpha_test_20260723/final_delivery_bootstrap_verification.json create mode 100644 docs/generated/alpha_test_20260723/final_delivery_dashboard_nullrhi_diagnostics.log create mode 100644 docs/generated/alpha_test_20260723/final_delivery_first_run.png create mode 100644 docs/generated/alpha_test_20260723/final_delivery_first_run_visual_report.json create mode 100644 docs/generated/alpha_test_20260723/final_delivery_zip_export_report.json create mode 100644 docs/generated/alpha_test_20260723/first_run_automation_index.json create mode 100644 docs/generated/alpha_test_20260723/superseded_july9_retirement_report.json create mode 100644 docs/ops/HYPERTWIST_ALPHA_TEST_README_2026-07-23.txt create mode 100644 docs/ops/HYPERTWIST_ALPHA_TEST_TAKEOVER_BLACK_SCREEN_REPAIR_AND_VALIDATION_2026-07-19.md create mode 100644 scripts/Set-HyperTwistBootstrapLaunchArguments.ps1 create mode 100644 scripts/Test-HyperTwistPackagedOffscreenVisual.ps1 create mode 100644 scripts/Test-HyperTwistPackagedWindowVisual.ps1 diff --git a/UnrealHyperTwist/Config/DefaultEngine.ini b/UnrealHyperTwist/Config/DefaultEngine.ini index 0f8c4fc..04f4877 100644 --- a/UnrealHyperTwist/Config/DefaultEngine.ini +++ b/UnrealHyperTwist/Config/DefaultEngine.ini @@ -34,8 +34,8 @@ r.DefaultFeature.LocalExposure.HighlightContrastScale=0.8 r.DefaultFeature.LocalExposure.ShadowContrastScale=0.8 [/Script/WindowsTargetPlatform.WindowsTargetSettings] -DefaultGraphicsRHI=DefaultGraphicsRHI_DX12 -DefaultGraphicsRHI=DefaultGraphicsRHI_DX12 +; Prefer the broadly compatible packaged Alpha path; D3D12 remains available via -d3d12. +DefaultGraphicsRHI=DefaultGraphicsRHI_DX11 -D3D12TargetedShaderFormats=PCD3D_SM5 +D3D12TargetedShaderFormats=PCD3D_SM6 -D3D11TargetedShaderFormats=PCD3D_SM5 diff --git a/UnrealHyperTwist/Config/DefaultGame.ini b/UnrealHyperTwist/Config/DefaultGame.ini index 099bd95..9aaf785 100644 --- a/UnrealHyperTwist/Config/DefaultGame.ini +++ b/UnrealHyperTwist/Config/DefaultGame.ini @@ -7,7 +7,7 @@ ProjectID=11C9116142A58F76A4E7F987AE989538 [/Script/UnrealHyperTwist.HyperTwistHttpVisionClient] ProviderLabel=local-http-sidecar -ServiceBaseUrl=http://127.0.0.1:8766 +ServiceBaseUrl="http://127.0.0.1:8766" OpenSessionPath=/vision/session/open SubmitFramePath=/vision/frame CommitObservationPath=/vision/commit @@ -18,7 +18,7 @@ RequestTimeoutSeconds=5.0 [/Script/UnrealHyperTwist.HyperTwistHttpSpeechClient] ProviderLabel=local-http-sidecar -ServiceBaseUrl=http://127.0.0.1:8766 +ServiceBaseUrl="http://127.0.0.1:8766" OpenSessionPath=/speech/session/open TranscribeUtterancePath=/speech/utterance CloseSessionPath=/speech/session/close @@ -27,7 +27,7 @@ RequestTimeoutSeconds=5.0 [/Script/UnrealHyperTwist.HyperTwistHttpVoiceClient] ProviderLabel=local-http-sidecar -ServiceBaseUrl=http://127.0.0.1:8766 +ServiceBaseUrl="http://127.0.0.1:8766" ProfilesPath=/voice/profiles SynthesizePath=/voice/narrate HealthPath=/voice/health diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining.umap b/UnrealHyperTwist/Content/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining.umap index 028fa9f1746211bb7b91d7125ac9bf1fc34e0b53..a3f89e522c0049ad49a4fa3ea577056fd5490b0c 100644 GIT binary patch literal 26414 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 biywL#tND}!4Z2@lSU2*oTj%OH9Q6MOT;(1} literal 8808 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 XY5Dbpi>*GMG$Y{8`$k(#0{H(2-(sd) diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/Maps/L_HyperTwist_FollowAlongTraining.umap b/UnrealHyperTwist/Content/HyperTwistTraining/Maps/L_HyperTwist_FollowAlongTraining.umap index 133dda32977cc5dabd9c4244e1775cb2b32c4efb..e23e0c3bf55e80b00cba7526e0f8541157532429 100644 GIT binary patch literal 26505 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 WHJ_ZILDwsbYDPZ#z+3}^gZ|%I3p?!q literal 8843 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 diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining.umap b/UnrealHyperTwist/Content/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining.umap index 9564d082e23baf3cebb6dde85bb126c578ba4022..be4aedde2f255689c2c3bda2770d6d4662f534de 100644 GIT binary patch delta 667 zcmaE!+mkmzLX>%4wZ8DI9)bOb*Xqc&w93aX+gl{RQ8%8kzJ!;7L6L!h!O_6g(a^}; z(a_S!%+<-l!obkkz}V5k%*4pe$i&&z0;q(6p#!K`07#z|WMGg2(tCk?5I8G=ph0Rt zd`6&Cx}Wyi75Qoj?^g%wTFD^nW0bS7u;v z1#<6f?qXWU$*40~k4=r&Jux@cH$Nqn!C|lYrOk;v28;@XoWFS^uPF1B_i=%@QNLf+{Pc z0(~qdAC%VETp>M!jn`by&{EgX3`pu3TW*$BYGe}d=KpwZ`S-^To&4L?E}5$`O-|4h z*?dSvgi%oMzWmCES9D$4;{W+yD{zu^nH;DhG5No$KBM*I1xkAS&N+$2#hJ+=MTwbt znR)4(gVg>p2^^J)eW?6hz;9N}l%kVUxIb)8(EQCK&@puai}8gU?v2_ik@D_wn?aUL It~bj70EVu;i2wiq delta 652 zcmeCld!9Q%LiFi{leVuFd>3#1oqOej@kxb^FERr}HtNPR)@SlEFeoxGFqk?zIhie@LxzwYwAhjr@JhQmOIX^Ku!zHmeBPl_@)-*zUjmZzCOZk|Gd`NUNjRTLKy|Xc zq}XIjkpQk(kiUSSU3KzAHL1yKMM9XKsDYWXq9IJ(>R@IskZGg=X8r{-dm+qRu@I(I zEwJcaAhQg@^c4?bTCN8c-3w&SGX*nsB|?~%nSq&eC0?*vfdX)Im*gHsv9O4MwBi7l z{E*P_QcK@5znp*||BArL7p2uVH%rf8<2BPWw9qv)&@;5uGc?|;q14DE@M-Tam->z{ z|K1QgS3d3LACo7TiEKWrBEl%ZGMjUG!IKqU`(AvGuwGU6c=AV84;4@#>$~QqXXd5q z`z96?>xZP~7UU$Bq!#P@7o_He=NILqY%W*($0QJ1e1F4-7rw6RzMMWg<%{1@u)#Am bpYsS@-+40jTwSo|Vn;?7^_ya*K$#iDeB9CKCYPT5-y<&Ao=jP+@}3=E143=FPrCZ@(F zu5PYwhQ>~ghQ`JgE`|n17G^GPX68nYX3jt*3=CC3#R5QjzaRsH6p&sIt3~8Hi!v{s+M;Hh(=_Hk3IonVHU1s4|&{DMqmhsN#SbObvwo4+I>_ zK&Jt@M>cmdE#hR6*pJ%a4{+n^2X-HyrwKn z9Lke#3Fa}HP4*PZXH1#AQz)Nx63`-s$>;RMC!gWvnCv6$!+34-OyPVc7S+kx5|WdZ zMSQu+L0$raYSqb%l2VgxCDI~&1`7V~8) z(t^vL26CGbTx)S(rY(A4*(Ks3Osh@d3Z*4{nKqljx!n>ESj~Z<_hoZ|2eAh(ZOmlZ{gDS(S#PrDKdBq85!sqns5HC*ux~SS?5jh z+>^Wfx9G4OoOkTu<;~MoG#CXNlM2dJekr?6`LyU^K@O9S%jAiA5|dx3>N8qT=I7Sq zcg{&HF3wC2DN4-D%gjsPY_0YWXw*VmoA^fy+g_Y0{~u0y}ked delta 650 zcmey8dp>u9gxJew!#Z4KVXPkXZ&{#*2k8 z`D%eh&jXop5T?C&2vffvSady**=7o6%1eYW^_hX0{Swbvb%5dXa&xuhPDatHsE`yl zv!E~&*HWXZ{IJ9{rz($($p@u1HWx~Fu<@Gd8CvKX8t55X>X}+@W>e~661X0~^)ftO z#dZD`UdJrYifx-0sc0|?CQexMcgu-({~0@N(Q5Cs&x&006{JzeE54 diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/Materials/MI_HT_ClassicCube_Back.uasset b/UnrealHyperTwist/Content/HyperTwistTraining/Materials/MI_HT_ClassicCube_Back.uasset index 6ca4f0ba2e9c545effc4a2e8c4b439814b1f2f14..613955ac92fc18f9786034b233b92dd11499d6c5 100644 GIT binary patch delta 5001 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 CxAi*! delta 158 zcmezBaYT87gjl1>>u1k59p0T@W;-|GwO9JLQ!%~~+#B@_8JVg%CnqwNDedNDV3;7t zfCBylK?FAggEmlfis0s-jO*B#BDg27j zG_2;lcy_H<=ftJqZx*o5Q=YtESz>dF+zM6!eQEE%=NSB4SKhIh`D)??iODi5kpOUQ BIL810 diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/Materials/MI_HT_ClassicCube_Down.uasset b/UnrealHyperTwist/Content/HyperTwistTraining/Materials/MI_HT_ClassicCube_Down.uasset index ba11c6199fe7b4c193f7203f7f10c429c576ddf4..0da5a294c40a18335ac98b931b2d16fb5018e5a9 100644 GIT binary patch delta 4874 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 delta 158 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 TqyNC+)b%nz14Sl(RCWOXfh|Bx diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/Materials/MI_HT_ClassicCube_Internal.uasset b/UnrealHyperTwist/Content/HyperTwistTraining/Materials/MI_HT_ClassicCube_Internal.uasset index 0ec367bdb6e9f6f9a3a9ba2e7ec243602ad59277..384e64dd8908c1475f3cc02e556b293ca5a0a8d4 100644 GIT binary patch delta 3797 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 F{{VS&TFd|d delta 158 zcmaECe@A(OgjhzP=qbC%XI^Gyi%&*5$}jDcDfn5yy;0AUk*S+=aw=n)(s@n>h82Pg zDBwR36mT;zXahyp2yXt%xQmUcfP3;zjy$I6f|E5l!zZ8M;GaBA+<_^9d-DzPi;RMI z_W$YjuiEdrcl9F%1)hz{%9C~FB{pA@T)`^PTVYkB?bGZu-|X|}nZFO-n%pHH2>@z* BIPL%d diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/Materials/MI_HT_ClassicCube_Left.uasset b/UnrealHyperTwist/Content/HyperTwistTraining/Materials/MI_HT_ClassicCube_Left.uasset index 81e728850ce9e8b44440a67e1a6b054744ea372c..3b8c8814f126254a534140fd0feb6178000a75ae 100644 GIT binary patch delta 4878 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 delta 182 zcmccTd`fwOgxLQXmuJ2_`TG6`-dFdP9a;bPxZJae_=bS_LC%g5{u8R2;chP$D7U_emf_*+Y>UpcuoHs9fVI{@d Ov`YqPmdNB;iY@?Wok4a0 diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/Materials/MI_HT_ClassicCube_Up.uasset b/UnrealHyperTwist/Content/HyperTwistTraining/Materials/MI_HT_ClassicCube_Up.uasset index cc73c0a4c2395801185e100bb754cee8ec3eeefc..0f83f9a3e4955f4bc110990639636061d2289d2d 100644 GIT binary patch delta 4529 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 delta 1512 zcmZ`&T}TvB6rNcn9dveP*`0OW-6+TX(=|AqD-c;7gGZXwXwV2tAci`4Ci8+c~>uY=_-Bu=l(7eBU{H&bfDPciu_d z@Oj6JjjER3ThW1`_w)CEe)@WDwre@%9;^TC>=y)~!GR0fune81aLq z#Kbw+p;UN#n2-<;a_p!lBl@V6!&|2ct&wt=QhZ*jlN6=+YhvjK4c;kTUMke2N|@3r zV6U2`=$i+pIOr9#QKt~ zPtX`mP&;{dn33`}!1HKu*YcNu`^D9#9jWt)KNqLYl&xb$l98a87AkiWZP4=4xb9AD z8F?r>jPXG0qCo{$?FCC$i1#+`ZC~jt-9H^5%XmiZiK=Y aYSo-(F2sVCx0SuS`nYPHF}}hh@wR_+P}8^o diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.cpp new file mode 100644 index 0000000..3aa44cc --- /dev/null +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.cpp @@ -0,0 +1,351 @@ +#include "HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.h" + +#include "Containers/Ticker.h" +#include "Engine/Engine.h" +#include "Engine/GameViewportClient.h" +#include "HAL/CriticalSection.h" +#include "HAL/FileManager.h" +#include "HAL/PlatformProcess.h" +#include "HAL/PlatformTime.h" +#include "Misc/CommandLine.h" +#include "Misc/DateTime.h" +#include "Misc/FileHelper.h" +#include "Misc/Parse.h" +#include "Misc/Paths.h" +#include "Misc/ScopeLock.h" +#include "UnrealClient.h" + +DEFINE_LOG_CATEGORY_STATIC(LogHyperTwistRuntimeDiagnostics, Log, All); + +namespace +{ + constexpr int32 ReadyFrameWarmupPassCount = 3; + constexpr double ReadyFrameInterCaptureDelaySeconds = 0.75; + constexpr double ReadyFrameReceiptTimeoutSeconds = 10.0; + const TCHAR* DefaultDiagnosticsLogFileName = TEXT("HyperTwistRuntime-latest.log"); + + FCriticalSection DiagnosticsLock; + FString DiagnosticsLogPath; + bool bDiagnosticsInitialized = false; + + FString MakeSingleLine(FString Value) + { + Value.ReplaceInline(TEXT("\r"), TEXT(" ")); + Value.ReplaceInline(TEXT("\n"), TEXT(" ")); + return Value.TrimStartAndEnd(); + } + + bool InitializeSessionLocked() + { + if (bDiagnosticsInitialized) + { + return !DiagnosticsLogPath.IsEmpty(); + } + + bDiagnosticsInitialized = true; + FString RequestedPath; + FParse::Value( + FCommandLine::Get(), + TEXT("HyperTwistDiagnosticsLog="), + RequestedPath); + RequestedPath.TrimStartAndEndInline(); + if (RequestedPath.Len() >= 2 + && RequestedPath.StartsWith(TEXT("\"")) + && RequestedPath.EndsWith(TEXT("\""))) + { + RequestedPath = RequestedPath.Mid(1, RequestedPath.Len() - 2); + } + + DiagnosticsLogPath = RequestedPath.IsEmpty() + ? FPaths::Combine(FPaths::ProjectLogDir(), DefaultDiagnosticsLogFileName) + : FPaths::ConvertRelativePathToFull(RequestedPath); + FPaths::NormalizeFilename(DiagnosticsLogPath); + + const FString DiagnosticsDirectory = FPaths::GetPath(DiagnosticsLogPath); + if (DiagnosticsDirectory.IsEmpty() + || !IFileManager::Get().MakeDirectory(*DiagnosticsDirectory, true)) + { + DiagnosticsLogPath.Reset(); + return false; + } + + TArray HeaderLines; + HeaderLines.Reserve(5); + HeaderLines.Add(TEXT("format=hypertwist-runtime-diagnostics/v1")); + HeaderLines.Add(FString::Printf( + TEXT("session=%s"), + *FDateTime::UtcNow().ToString(TEXT("%Y%m%dT%H%M%SZ")))); + HeaderLines.Add(FString::Printf( + TEXT("process_id=%u"), + FPlatformProcess::GetCurrentProcessId())); + HeaderLines.Add(FString::Printf( + TEXT("command_line=%s"), + *MakeSingleLine(FCommandLine::Get()))); + HeaderLines.Add(FString::Printf( + TEXT("diagnostics_path=%s"), + *DiagnosticsLogPath)); + + if (!FFileHelper::SaveStringArrayToFile( + HeaderLines, + *DiagnosticsLogPath, + FFileHelper::EEncodingOptions::ForceUTF8WithoutBOM)) + { + DiagnosticsLogPath.Reset(); + return false; + } + + return true; + } +} + +namespace HyperTwistRuntimeDiagnostics +{ + bool InitializeSession() + { + const FScopeLock Lock(&DiagnosticsLock); + return InitializeSessionLocked(); + } + + FString GetDiagnosticsLogPath() + { + const FScopeLock Lock(&DiagnosticsLock); + InitializeSessionLocked(); + return DiagnosticsLogPath; + } + + bool AppendEvent(const FString& Stage, const FString& Message) + { + const FScopeLock Lock(&DiagnosticsLock); + if (!InitializeSessionLocked()) + { + return false; + } + + const FString Line = FString::Printf( + TEXT("[%s] [%s] %s%s"), + *FDateTime::UtcNow().ToString(TEXT("%Y-%m-%dT%H:%M:%SZ")), + *MakeSingleLine(Stage.IsEmpty() ? TEXT("Runtime") : Stage), + *MakeSingleLine(Message), + LINE_TERMINATOR); + return FFileHelper::SaveStringToFile( + Line, + *DiagnosticsLogPath, + FFileHelper::EEncodingOptions::ForceUTF8WithoutBOM, + &IFileManager::Get(), + FILEWRITE_Append); + } + + bool IsReadyFrameCaptureRequested() + { + return FParse::Param(FCommandLine::Get(), TEXT("HyperTwistCaptureWhenReady")); + } + + bool RequestReadyFrameCapture(const FString& SurfaceId) + { + if (!IsReadyFrameCaptureRequested()) + { + return false; + } + + FString SafeSurfaceId = SurfaceId.IsEmpty() ? TEXT("runtime-ready") : SurfaceId; + for (TCHAR& Character : SafeSurfaceId) + { + if (!FChar::IsAlnum(Character) && Character != TEXT('-') && Character != TEXT('_')) + { + Character = TEXT('-'); + } + } + + const FString CaptureDirectory = FPaths::Combine( + FPaths::ProjectSavedDir(), + TEXT("Screenshots"), + TEXT("HyperTwistDiagnostics")); + if (!IFileManager::Get().MakeDirectory(*CaptureDirectory, true)) + { + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Error, + TEXT("Could not create semantic-ready capture directory '%s'."), + *CaptureDirectory); + return false; + } + + const FString CapturePath = FPaths::Combine( + CaptureDirectory, + FString::Printf(TEXT("%s.png"), *SafeSurfaceId)); + const FString WarmupCapturePath = FPaths::Combine( + CaptureDirectory, + FString::Printf(TEXT("%s-warmup.png"), *SafeSurfaceId)); + if (IFileManager::Get().FileExists(*CapturePath) + && !IFileManager::Get().Delete(*CapturePath, false, true)) + { + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Error, + TEXT("Could not replace stale semantic-ready frame '%s'."), + *CapturePath); + return false; + } + if (IFileManager::Get().FileExists(*WarmupCapturePath) + && !IFileManager::Get().Delete(*WarmupCapturePath, false, true)) + { + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Error, + TEXT("Could not replace stale semantic-ready warm-up frame '%s'."), + *WarmupCapturePath); + return false; + } + + // Repeated UI-inclusive captures prime and settle Slate's font atlas in + // packaged off-screen rendering. A single warm-up can still leave random + // glyphs absent, so the authoritative frame follows three acknowledged + // passes separated by real presentation time. File polling remains + // necessary because this viewport does not reliably deliver the + // screenshot-processed delegate. + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Display, + TEXT("Queued UI-inclusive semantic-ready frame for %s after presentation stabilization."), + *SurfaceId); + FTSTicker::GetCoreTicker().AddTicker( + FTickerDelegate::CreateLambda( + [ + CapturePath, + WarmupCapturePath, + SurfaceId, + WarmupPassesCompleted = 0, + bWarmupRequestInFlight = false, + bFinalRequested = false, + NextCaptureRequestAt = 0.0, + ReceiptDeadline = 0.0 + ](const float DeltaTime) mutable + { + static_cast(DeltaTime); + const double Now = FPlatformTime::Seconds(); + if (WarmupPassesCompleted < ReadyFrameWarmupPassCount) + { + if (!bWarmupRequestInFlight) + { + if (Now < NextCaptureRequestAt) + { + return true; + } + if (IFileManager::Get().FileExists(*WarmupCapturePath) + && !IFileManager::Get().Delete(*WarmupCapturePath, false, true)) + { + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Error, + TEXT("Could not reset semantic-ready warm-up frame '%s'."), + *WarmupCapturePath); + return false; + } + + FScreenshotRequest::RequestScreenshot( + WarmupCapturePath, + true, + false, + false); + bWarmupRequestInFlight = true; + ReceiptDeadline = Now + ReadyFrameReceiptTimeoutSeconds; + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Display, + TEXT("Requested UI-inclusive semantic-ready warm-up frame %d/%d for %s at '%s'."), + WarmupPassesCompleted + 1, + ReadyFrameWarmupPassCount, + *SurfaceId, + *WarmupCapturePath); + return true; + } + + if (IFileManager::Get().FileSize(*WarmupCapturePath) > 0) + { + if (!IFileManager::Get().Delete(*WarmupCapturePath, false, true)) + { + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Error, + TEXT("Could not retire semantic-ready warm-up frame '%s'."), + *WarmupCapturePath); + return false; + } + + ++WarmupPassesCompleted; + bWarmupRequestInFlight = false; + NextCaptureRequestAt = Now + ReadyFrameInterCaptureDelaySeconds; + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Display, + TEXT("Completed UI-inclusive semantic-ready warm-up frame %d/%d for %s."), + WarmupPassesCompleted, + ReadyFrameWarmupPassCount, + *SurfaceId); + return true; + } + + if (Now >= ReceiptDeadline) + { + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Error, + TEXT("Could not save UI-inclusive semantic-ready warm-up frame %d/%d for %s at '%s'."), + WarmupPassesCompleted + 1, + ReadyFrameWarmupPassCount, + *SurfaceId, + *WarmupCapturePath); + return false; + } + return true; + } + + if (!bFinalRequested) + { + if (Now < NextCaptureRequestAt) + { + return true; + } + + FScreenshotRequest::RequestScreenshot( + CapturePath, + true, + false, + false); + bFinalRequested = true; + ReceiptDeadline = Now + ReadyFrameReceiptTimeoutSeconds; + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Display, + TEXT("Requested UI-inclusive semantic-ready frame for %s at '%s' after font-atlas warm-up."), + *SurfaceId, + *CapturePath); + return true; + } + + if (IFileManager::Get().FileSize(*CapturePath) > 0) + { + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Display, + TEXT("Saved UI-inclusive semantic-ready frame for %s at '%s'."), + *SurfaceId, + *CapturePath); + return false; + } + if (Now >= ReceiptDeadline) + { + UE_LOG( + LogHyperTwistRuntimeDiagnostics, + Error, + TEXT("Could not save UI-inclusive semantic-ready frame for %s at '%s'."), + *SurfaceId, + *CapturePath); + return false; + } + return true; + }), + 0.5f); + return true; + } +} diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpSpeechClient.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpSpeechClient.cpp index 6b79cd6..8ab5188 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpSpeechClient.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpSpeechClient.cpp @@ -37,12 +37,23 @@ namespace HyperTwistHttpSpeechClientInternal FString BuildUrl(const FString& BaseUrl, const FString& Path) { - if (BaseUrl.IsEmpty()) + FString TrimmedBase = BaseUrl.TrimStartAndEnd(); + const int32 AuthorityStart = TrimmedBase.StartsWith(TEXT("http://"), ESearchCase::IgnoreCase) + ? 7 + : TrimmedBase.StartsWith(TEXT("https://"), ESearchCase::IgnoreCase) ? 8 : INDEX_NONE; + if (AuthorityStart == INDEX_NONE || TrimmedBase.Len() <= AuthorityStart) { return FString(); } - const FString TrimmedBase = BaseUrl.EndsWith(TEXT("/")) ? BaseUrl.LeftChop(1) : BaseUrl; + while (TrimmedBase.Len() > AuthorityStart && TrimmedBase.EndsWith(TEXT("/"))) + { + TrimmedBase.LeftChopInline(1, EAllowShrinking::No); + } + if (TrimmedBase.Len() <= AuthorityStart) + { + return FString(); + } if (Path.IsEmpty()) { return TrimmedBase; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpVisionClient.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpVisionClient.cpp index 36c0adf..dec6042 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpVisionClient.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpVisionClient.cpp @@ -36,12 +36,23 @@ namespace HyperTwistHttpVisionClientInternal FString BuildUrl(const FString& BaseUrl, const FString& Path) { - if (BaseUrl.IsEmpty()) + FString TrimmedBase = BaseUrl.TrimStartAndEnd(); + const int32 AuthorityStart = TrimmedBase.StartsWith(TEXT("http://"), ESearchCase::IgnoreCase) + ? 7 + : TrimmedBase.StartsWith(TEXT("https://"), ESearchCase::IgnoreCase) ? 8 : INDEX_NONE; + if (AuthorityStart == INDEX_NONE || TrimmedBase.Len() <= AuthorityStart) { return FString(); } - const FString TrimmedBase = BaseUrl.EndsWith(TEXT("/")) ? BaseUrl.LeftChop(1) : BaseUrl; + while (TrimmedBase.Len() > AuthorityStart && TrimmedBase.EndsWith(TEXT("/"))) + { + TrimmedBase.LeftChopInline(1, EAllowShrinking::No); + } + if (TrimmedBase.Len() <= AuthorityStart) + { + return FString(); + } if (Path.IsEmpty()) { return TrimmedBase; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpVoiceClient.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpVoiceClient.cpp index ca2f08a..3f40e7c 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpVoiceClient.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistRecognition/HyperTwistHttpVoiceClient.cpp @@ -28,12 +28,23 @@ namespace HyperTwistHttpVoiceClientInternal FString BuildUrl(const FString& BaseUrl, const FString& Path) { - if (BaseUrl.IsEmpty()) + FString TrimmedBase = BaseUrl.TrimStartAndEnd(); + const int32 AuthorityStart = TrimmedBase.StartsWith(TEXT("http://"), ESearchCase::IgnoreCase) + ? 7 + : TrimmedBase.StartsWith(TEXT("https://"), ESearchCase::IgnoreCase) ? 8 : INDEX_NONE; + if (AuthorityStart == INDEX_NONE || TrimmedBase.Len() <= AuthorityStart) { return FString(); } - const FString TrimmedBase = BaseUrl.EndsWith(TEXT("/")) ? BaseUrl.LeftChop(1) : BaseUrl; + while (TrimmedBase.Len() > AuthorityStart && TrimmedBase.EndsWith(TEXT("/"))) + { + TrimmedBase.LeftChopInline(1, EAllowShrinking::No); + } + if (TrimmedBase.Len() <= AuthorityStart) + { + return FString(); + } if (Path.IsEmpty()) { return TrimmedBase; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeActor.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeActor.cpp index d0c4324..92820de 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeActor.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeActor.cpp @@ -1,11 +1,14 @@ #include "HyperTwistSimulation/HyperTwistClassicCubeActor.h" #include "Engine/World.h" #include "HyperTwistSimulation/HyperTwistClassicCubeCommandLibrary.h" +#include "HAL/PlatformTime.h" #include "Materials/MaterialInstanceDynamic.h" +#include "Materials/MaterialInterface.h" #include "ProceduralMeshComponent/Public/ProceduralMeshComponent.h" #include "ThirdParty/rob-twophase/cubie.h" #include "ThirdParty/rob-twophase/face.h" #include "ThirdParty/rob-twophase/move.h" +#include "UObject/ConstructorHelpers.h" #include @@ -27,7 +30,40 @@ namespace HyperTwistClassicCubeActorInternal AHyperTwistClassicCubeActor::AHyperTwistClassicCubeActor() { PrimaryActorTick.bCanEverTick = true; + PrimaryActorTick.bStartWithTickEnabled = true; + PrimaryActorTick.bTickEvenWhenPaused = true; RootComponent = CreateDefaultSubobject(TEXT("Root")); + + FaceMaterials.SetNum(static_cast(EHyperTwistClassicCubeFace::Right) + 1); + static ConstructorHelpers::FObjectFinder UpMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Up.MI_HT_ClassicCube_Up") + ); + static ConstructorHelpers::FObjectFinder DownMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Down.MI_HT_ClassicCube_Down") + ); + static ConstructorHelpers::FObjectFinder FrontMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Front.MI_HT_ClassicCube_Front") + ); + static ConstructorHelpers::FObjectFinder BackMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Back.MI_HT_ClassicCube_Back") + ); + static ConstructorHelpers::FObjectFinder LeftMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Left.MI_HT_ClassicCube_Left") + ); + static ConstructorHelpers::FObjectFinder RightMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Right.MI_HT_ClassicCube_Right") + ); + static ConstructorHelpers::FObjectFinder InternalFaceMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Internal.MI_HT_ClassicCube_Internal") + ); + + FaceMaterials[static_cast(EHyperTwistClassicCubeFace::Up)] = UpMaterial.Object; + FaceMaterials[static_cast(EHyperTwistClassicCubeFace::Down)] = DownMaterial.Object; + FaceMaterials[static_cast(EHyperTwistClassicCubeFace::Front)] = FrontMaterial.Object; + FaceMaterials[static_cast(EHyperTwistClassicCubeFace::Back)] = BackMaterial.Object; + FaceMaterials[static_cast(EHyperTwistClassicCubeFace::Left)] = LeftMaterial.Object; + FaceMaterials[static_cast(EHyperTwistClassicCubeFace::Right)] = RightMaterial.Object; + InternalMaterial = InternalFaceMaterial.Object; } void AHyperTwistClassicCubeActor::OnConstruction(const FTransform& Transform) @@ -42,29 +78,34 @@ void AHyperTwistClassicCubeActor::OnConstruction(const FTransform& Transform) void AHyperTwistClassicCubeActor::BeginPlay() { Super::BeginPlay(); - if (!bGenerateOnConstruction) - { - ResetCube(); - } + SetActorTickEnabled(true); + EnsureRenderablePresentation(); } void AHyperTwistClassicCubeActor::Tick(float DeltaTime) { Super::Tick(DeltaTime); - if (!bIsAnimating || !ActiveRotation.Pivot) + if (!bIsAnimating) { return; } + if (!IsValid(ActiveRotation.Pivot)) + { + FinalizeRotation(); + return; + } - const float Now = GetWorld()->GetTimeSeconds(); - const float Elapsed = Now - ActiveRotation.StartTime; - float Alpha = FMath::Clamp(Elapsed / ActiveRotation.Duration, 0.0f, 1.0f); + const double Elapsed = FPlatformTime::Seconds() - ActiveRotation.StartTime; + float Alpha = FMath::Clamp( + static_cast(Elapsed / FMath::Max(ActiveRotation.Duration, SMALL_NUMBER)), + 0.0f, + 1.0f); // Smooth step for nicer animation feel Alpha = Alpha * Alpha * (3.0f - 2.0f * Alpha); const FQuat CurrentRot = FQuat::Slerp(ActiveRotation.PivotStartRot, ActiveRotation.PivotTargetRot, Alpha); - ActiveRotation.Pivot->SetWorldRotation(CurrentRot); + ActiveRotation.Pivot->SetRelativeRotation(CurrentRot); if (Alpha >= 1.0f) { @@ -258,14 +299,14 @@ void AHyperTwistClassicCubeActor::ClearPieces() { for (const FTrackedPiece& Piece : TrackedPieces) { - if (Piece.Mesh && Piece.Mesh->IsValidLowLevel()) + if (IsValid(Piece.Mesh)) { Piece.Mesh->DestroyComponent(); } } TrackedPieces.Empty(); - if (ActiveRotation.Pivot && ActiveRotation.Pivot->IsValidLowLevel()) + if (IsValid(ActiveRotation.Pivot)) { ActiveRotation.Pivot->DestroyComponent(); } @@ -326,7 +367,13 @@ void AHyperTwistClassicCubeActor::CreatePiece(const FVector& GridPos, const TArr UProceduralMeshComponent* Mesh = nullptr; if (GetWorld() != nullptr) { - Mesh = NewObject(this, NAME_None, RF_Transactional); + Mesh = NewObject( + this, + NAME_None, + RF_Transactional | RF_Transient + ); + AddInstanceComponent(Mesh); + Mesh->SetCanEverAffectNavigation(false); Mesh->RegisterComponent(); Mesh->AttachToComponent(RootComponent, FAttachmentTransformRules::KeepRelativeTransform); @@ -394,72 +441,48 @@ void AHyperTwistClassicCubeActor::CreateCubeletFace(UProceduralMeshComponent* Me case EHyperTwistClassicCubeFace::Up: // +Z Normal = FVector(0, 0, 1); TangentX = FVector(1, 0, 0); - FaceVerts = { - Center + FVector(-HalfSize, -HalfSize, +HalfSize), - Center + FVector(+HalfSize, -HalfSize, +HalfSize), - Center + FVector(+HalfSize, +HalfSize, +HalfSize), - Center + FVector(-HalfSize, +HalfSize, +HalfSize) - }; break; case EHyperTwistClassicCubeFace::Down: // -Z Normal = FVector(0, 0, -1); TangentX = FVector(-1, 0, 0); - FaceVerts = { - Center + FVector(+HalfSize, -HalfSize, -HalfSize), - Center + FVector(-HalfSize, -HalfSize, -HalfSize), - Center + FVector(-HalfSize, +HalfSize, -HalfSize), - Center + FVector(+HalfSize, +HalfSize, -HalfSize) - }; break; case EHyperTwistClassicCubeFace::Front: // +Y Normal = FVector(0, 1, 0); TangentX = FVector(1, 0, 0); - FaceVerts = { - Center + FVector(-HalfSize, +HalfSize, -HalfSize), - Center + FVector(+HalfSize, +HalfSize, -HalfSize), - Center + FVector(+HalfSize, +HalfSize, +HalfSize), - Center + FVector(-HalfSize, +HalfSize, +HalfSize) - }; break; case EHyperTwistClassicCubeFace::Back: // -Y Normal = FVector(0, -1, 0); TangentX = FVector(-1, 0, 0); - FaceVerts = { - Center + FVector(+HalfSize, -HalfSize, -HalfSize), - Center + FVector(-HalfSize, -HalfSize, -HalfSize), - Center + FVector(-HalfSize, -HalfSize, +HalfSize), - Center + FVector(+HalfSize, -HalfSize, +HalfSize) - }; break; case EHyperTwistClassicCubeFace::Right: // +X Normal = FVector(1, 0, 0); TangentX = FVector(0, 1, 0); - FaceVerts = { - Center + FVector(+HalfSize, -HalfSize, -HalfSize), - Center + FVector(+HalfSize, +HalfSize, -HalfSize), - Center + FVector(+HalfSize, +HalfSize, +HalfSize), - Center + FVector(+HalfSize, -HalfSize, +HalfSize) - }; break; case EHyperTwistClassicCubeFace::Left: // -X Normal = FVector(-1, 0, 0); TangentX = FVector(0, -1, 0); - FaceVerts = { - Center + FVector(-HalfSize, +HalfSize, -HalfSize), - Center + FVector(-HalfSize, -HalfSize, -HalfSize), - Center + FVector(-HalfSize, -HalfSize, +HalfSize), - Center + FVector(-HalfSize, +HalfSize, +HalfSize) - }; break; } + const FVector TangentY = FVector::CrossProduct(Normal, TangentX).GetSafeNormal(); + const FVector FaceCenter = Center + Normal * HalfSize; + FaceVerts = { + FaceCenter - TangentX * HalfSize - TangentY * HalfSize, + FaceCenter + TangentX * HalfSize - TangentY * HalfSize, + FaceCenter + TangentX * HalfSize + TangentY * HalfSize, + FaceCenter - TangentX * HalfSize + TangentY * HalfSize + }; + Vertices = FaceVerts; - Triangles = { 0, 1, 2, 0, 2, 3 }; + // Unreal renders clockwise procedural-mesh winding from the outward side. + // The vertex basis above is mathematically counter-clockwise around Normal, + // so reverse each triangle rather than exposing the cubelet interior. + Triangles = { 0, 2, 1, 0, 3, 2 }; for (int32 i = 0; i < 4; ++i) { @@ -475,7 +498,7 @@ void AHyperTwistClassicCubeActor::CreateCubeletFace(UProceduralMeshComponent* Me if (UMaterialInstanceDynamic* DynamicMaterial = Mesh->CreateDynamicMaterialInstance(SectionIndex, Material)) { - DynamicMaterial->SetScalarParameterValue(TEXT("GlowStrength"), 0.0f); + DynamicMaterial->SetScalarParameterValue(TEXT("GlowStrength"), BaseGlowStrength); DynamicMaterial->SetScalarParameterValue(TEXT("FaceOpacity"), 1.0f); } else @@ -495,6 +518,294 @@ bool AHyperTwistClassicCubeActor::IsSettled() const return !bIsAnimating && RotationQueue.IsEmpty(); } +int32 AHyperTwistClassicCubeActor::GetRenderablePieceCount() const +{ + int32 RenderablePieceCount = 0; + for (const FTrackedPiece& Piece : TrackedPieces) + { + if (IsValid(Piece.Mesh) + && Piece.Mesh->IsRegistered() + && Piece.Mesh->GetNumSections() > 0) + { + ++RenderablePieceCount; + } + } + return RenderablePieceCount; +} + +bool AHyperTwistClassicCubeActor::HasValidRenderableState() const +{ + return GetRenderableStateValidationError().IsEmpty(); +} + +FString AHyperTwistClassicCubeActor::GetRenderableStateValidationError() const +{ + auto IsOutwardFaceAtGridPosition = [](const EHyperTwistClassicCubeFace Face, const FVector& Position) + { + switch (Face) + { + case EHyperTwistClassicCubeFace::Up: + return FMath::IsNearlyEqual(Position.Z, 1.0f); + case EHyperTwistClassicCubeFace::Down: + return FMath::IsNearlyEqual(Position.Z, -1.0f); + case EHyperTwistClassicCubeFace::Front: + return FMath::IsNearlyEqual(Position.Y, 1.0f); + case EHyperTwistClassicCubeFace::Back: + return FMath::IsNearlyEqual(Position.Y, -1.0f); + case EHyperTwistClassicCubeFace::Left: + return FMath::IsNearlyEqual(Position.X, -1.0f); + case EHyperTwistClassicCubeFace::Right: + return FMath::IsNearlyEqual(Position.X, 1.0f); + } + return false; + }; + + TSet OccupiedGridIndices; + TArray StickerCountByWorldFace; + StickerCountByWorldFace.Init(0, 6); + int32 VisiblePieceCount = 0; + int32 TotalStickerCount = 0; + const bool bRequireLiveMeshes = GetWorld() != nullptr; + const float CubeletSpacing = CubeletSize + Gap; + + for (int32 PieceIndex = 0; PieceIndex < TrackedPieces.Num(); ++PieceIndex) + { + const FTrackedPiece& Piece = TrackedPieces[PieceIndex]; + if (Piece.IdentityFaces.IsEmpty()) + { + continue; + } + + ++VisiblePieceCount; + const FVector RoundedPosition( + FMath::RoundToFloat(Piece.GridPos.X), + FMath::RoundToFloat(Piece.GridPos.Y), + FMath::RoundToFloat(Piece.GridPos.Z)); + if (!Piece.GridPos.Equals(RoundedPosition, KINDA_SMALL_NUMBER) + || FMath::Abs(RoundedPosition.X) > 1.0f + || FMath::Abs(RoundedPosition.Y) > 1.0f + || FMath::Abs(RoundedPosition.Z) > 1.0f + || RoundedPosition.IsNearlyZero()) + { + return FString::Printf( + TEXT("piece %d occupies invalid grid position %s"), + PieceIndex, + *Piece.GridPos.ToCompactString()); + } + + const int32 GridIndex = GridToIndex(RoundedPosition); + if (OccupiedGridIndices.Contains(GridIndex)) + { + return FString::Printf( + TEXT("piece %d duplicates occupied grid position %s"), + PieceIndex, + *RoundedPosition.ToCompactString()); + } + OccupiedGridIndices.Add(GridIndex); + + const int32 ExpectedStickerCount = + (FMath::IsNearlyEqual(FMath::Abs(RoundedPosition.X), 1.0f) ? 1 : 0) + + (FMath::IsNearlyEqual(FMath::Abs(RoundedPosition.Y), 1.0f) ? 1 : 0) + + (FMath::IsNearlyEqual(FMath::Abs(RoundedPosition.Z), 1.0f) ? 1 : 0); + if (Piece.IdentityFaces.Num() != ExpectedStickerCount) + { + return FString::Printf( + TEXT("piece %d has %d stickers at a %d-sticker grid position"), + PieceIndex, + Piece.IdentityFaces.Num(), + ExpectedStickerCount); + } + + TSet PieceWorldFaces; + for (const EHyperTwistClassicCubeFace IdentityFace : Piece.IdentityFaces) + { + EHyperTwistClassicCubeFace WorldFace = EHyperTwistClassicCubeFace::Up; + if (!TryResolveStickerWorldFace(Piece, IdentityFace, WorldFace)) + { + return FString::Printf( + TEXT("piece %d has a sticker orientation that does not resolve to a cube axis"), + PieceIndex); + } + if (PieceWorldFaces.Contains(WorldFace)) + { + return FString::Printf( + TEXT("piece %d resolves multiple stickers to world face %d"), + PieceIndex, + static_cast(WorldFace)); + } + if (!IsOutwardFaceAtGridPosition(WorldFace, RoundedPosition)) + { + return FString::Printf( + TEXT("piece %d resolves sticker %d to inward world face %d at %s"), + PieceIndex, + static_cast(IdentityFace), + static_cast(WorldFace), + *RoundedPosition.ToCompactString()); + } + + PieceWorldFaces.Add(WorldFace); + const int32 WorldFaceIndex = static_cast(WorldFace); + if (!StickerCountByWorldFace.IsValidIndex(WorldFaceIndex)) + { + return FString::Printf( + TEXT("piece %d resolved an out-of-range world face %d"), + PieceIndex, + WorldFaceIndex); + } + ++StickerCountByWorldFace[WorldFaceIndex]; + ++TotalStickerCount; + } + + if (!bRequireLiveMeshes) + { + continue; + } + if (!IsValid(Piece.Mesh) || !Piece.Mesh->IsRegistered() || Piece.Mesh->GetNumSections() != 6) + { + return FString::Printf(TEXT("piece %d is missing its six-section live mesh"), PieceIndex); + } + + const FVector SolvedCenter = + GetExpectedGridPositionFromIdentity(Piece.IdentityFaces) * CubeletSpacing; + for (int32 SectionIndex = 0; SectionIndex < 6; ++SectionIndex) + { + const FProcMeshSection* Section = Piece.Mesh->GetProcMeshSection(SectionIndex); + if (Section == nullptr + || !Section->bSectionVisible + || Section->ProcVertexBuffer.Num() != 4 + || Section->ProcIndexBuffer.Num() != 6) + { + return FString::Printf( + TEXT("piece %d section %d is not a visible four-vertex cubelet face"), + PieceIndex, + SectionIndex); + } + + FVector LocalFaceCenter = FVector::ZeroVector; + for (const FProcMeshVertex& Vertex : Section->ProcVertexBuffer) + { + LocalFaceCenter += Vertex.Position; + } + LocalFaceCenter /= static_cast(Section->ProcVertexBuffer.Num()); + + const EHyperTwistClassicCubeFace SectionFace = + static_cast(SectionIndex); + const FVector LocalFaceNormal = GetFaceNormal(SectionFace); + const FVector ExpectedLocalFaceCenter = + SolvedCenter + LocalFaceNormal * (CubeletSize * 0.5f); + if (!LocalFaceCenter.Equals(ExpectedLocalFaceCenter, 0.01f)) + { + return FString::Printf( + TEXT("piece %d section %d is centered at %s instead of %s"), + PieceIndex, + SectionIndex, + *LocalFaceCenter.ToCompactString(), + *ExpectedLocalFaceCenter.ToCompactString()); + } + + const uint32 IndexA = Section->ProcIndexBuffer[0]; + const uint32 IndexB = Section->ProcIndexBuffer[1]; + const uint32 IndexC = Section->ProcIndexBuffer[2]; + if (!Section->ProcVertexBuffer.IsValidIndex(static_cast(IndexA)) + || !Section->ProcVertexBuffer.IsValidIndex(static_cast(IndexB)) + || !Section->ProcVertexBuffer.IsValidIndex(static_cast(IndexC))) + { + return FString::Printf( + TEXT("piece %d section %d contains an invalid triangle index"), + PieceIndex, + SectionIndex); + } + + const FVector EdgeAB = + Section->ProcVertexBuffer[static_cast(IndexB)].Position + - Section->ProcVertexBuffer[static_cast(IndexA)].Position; + const FVector EdgeAC = + Section->ProcVertexBuffer[static_cast(IndexC)].Position + - Section->ProcVertexBuffer[static_cast(IndexA)].Position; + // Unreal treats clockwise procedural triangles as front-facing. Their + // mathematical cross product therefore points opposite the authored + // outward vertex normal. + const FVector FrontWindingNormal = + -FVector::CrossProduct(EdgeAB, EdgeAC).GetSafeNormal(); + if (FVector::DotProduct(FrontWindingNormal, LocalFaceNormal) + < HyperTwistClassicCubeActorInternal::RotationDotTolerance) + { + return FString::Printf( + TEXT("piece %d section %d has inward-facing triangle winding"), + PieceIndex, + SectionIndex); + } + } + + const FVector ExpectedWorldCenter = GetActorTransform().TransformPosition( + RoundedPosition * CubeletSpacing); + const FVector RenderedWorldCenter = + Piece.Mesh->GetComponentTransform().TransformPosition(SolvedCenter); + if (!RenderedWorldCenter.Equals(ExpectedWorldCenter, 0.05f)) + { + return FString::Printf( + TEXT("piece %d renders at %s instead of expected center %s"), + PieceIndex, + *RenderedWorldCenter.ToCompactString(), + *ExpectedWorldCenter.ToCompactString()); + } + + for (const EHyperTwistClassicCubeFace IdentityFace : Piece.IdentityFaces) + { + EHyperTwistClassicCubeFace WorldFace = EHyperTwistClassicCubeFace::Up; + TryResolveStickerWorldFace(Piece, IdentityFace, WorldFace); + const FVector RenderedWorldNormal = Piece.Mesh->GetComponentQuat().RotateVector( + GetFaceNormal(IdentityFace)).GetSafeNormal(); + const FVector ExpectedWorldNormal = GetActorQuat().RotateVector( + GetFaceNormal(WorldFace)).GetSafeNormal(); + if (FVector::DotProduct(RenderedWorldNormal, ExpectedWorldNormal) + < HyperTwistClassicCubeActorInternal::RotationDotTolerance) + { + return FString::Printf( + TEXT("piece %d live mesh sticker normal diverges from tracked orientation"), + PieceIndex); + } + } + } + + if (VisiblePieceCount != ExpectedRenderablePieceCount + || OccupiedGridIndices.Num() != ExpectedRenderablePieceCount) + { + return FString::Printf( + TEXT("cube has %d visible pieces across %d unique positions instead of %d"), + VisiblePieceCount, + OccupiedGridIndices.Num(), + ExpectedRenderablePieceCount); + } + if (TotalStickerCount != 54) + { + return FString::Printf(TEXT("cube has %d outward stickers instead of 54"), TotalStickerCount); + } + for (int32 FaceIndex = 0; FaceIndex < StickerCountByWorldFace.Num(); ++FaceIndex) + { + if (StickerCountByWorldFace[FaceIndex] != 9) + { + return FString::Printf( + TEXT("world face %d has %d stickers instead of 9"), + FaceIndex, + StickerCountByWorldFace[FaceIndex]); + } + } + + return FString(); +} + +bool AHyperTwistClassicCubeActor::EnsureRenderablePresentation() +{ + if (GetRenderablePieceCount() == ExpectedRenderablePieceCount) + { + return false; + } + + ResetCube(); + return true; +} + bool AHyperTwistClassicCubeActor::IsSolved() const { if (bIsAnimating || !RotationQueue.IsEmpty()) @@ -834,11 +1145,18 @@ void AHyperTwistClassicCubeActor::StartFaceRotation(EHyperTwistClassicCubeFace F return; } - // Create pivot at face center - USceneComponent* Pivot = NewObject(this, NAME_None, RF_Transactional); + // Keep the pivot in the cube actor's local frame. A world-space pivot makes + // a placed cube orbit the map origin during every animated turn. + USceneComponent* Pivot = NewObject( + this, + NAME_None, + RF_Transactional | RF_Transient + ); + AddInstanceComponent(Pivot); + Pivot->AttachToComponent(RootComponent, FAttachmentTransformRules::SnapToTargetNotIncludingScale); Pivot->RegisterComponent(); - Pivot->AttachToComponent(RootComponent, FAttachmentTransformRules::KeepRelativeTransform); - Pivot->SetWorldLocation(GetFaceCenter(Face) * (CubeletSize + Gap)); + Pivot->SetRelativeLocation(GetFaceCenter(Face) * (CubeletSize + Gap)); + Pivot->SetRelativeRotation(FQuat::Identity); // Attach face pieces to pivot (keep world transform) for (int32 Idx : Indices) @@ -854,7 +1172,7 @@ void AHyperTwistClassicCubeActor::StartFaceRotation(EHyperTwistClassicCubeFace F ActiveRotation.PieceIndices = Indices; ActiveRotation.PivotStartRot = FQuat::Identity; ActiveRotation.PivotTargetRot = FaceRot; - ActiveRotation.StartTime = GetWorld()->GetTimeSeconds(); + ActiveRotation.StartTime = FPlatformTime::Seconds(); ActiveRotation.Duration = TurnDuration; ActiveRotation.Face = Face; ActiveRotation.Direction = Direction; @@ -863,9 +1181,28 @@ void AHyperTwistClassicCubeActor::StartFaceRotation(EHyperTwistClassicCubeFace F void AHyperTwistClassicCubeActor::FinalizeRotation() { - if (!ActiveRotation.Pivot) + if (!IsValid(ActiveRotation.Pivot)) { + const EHyperTwistClassicCubeFace InterruptedFace = ActiveRotation.Face; + const EHyperTwistRotationDirection InterruptedDirection = ActiveRotation.Direction; + const bool bInterruptedGameplayMove = ActiveRotation.bGameplayMove; + for (const int32 PieceIndex : ActiveRotation.PieceIndices) + { + if (TrackedPieces.IsValidIndex(PieceIndex) + && IsValid(TrackedPieces[PieceIndex].Mesh) + && RootComponent != nullptr) + { + TrackedPieces[PieceIndex].Mesh->AttachToComponent( + RootComponent, + FAttachmentTransformRules::KeepWorldTransform); + } + } + ActiveRotation = FActiveRotation(); bIsAnimating = false; + ApplyQuarterTurnImmediate( + InterruptedFace, + InterruptedDirection, + bInterruptedGameplayMove); ProcessRotationQueue(); return; } @@ -936,48 +1273,27 @@ FVector AHyperTwistClassicCubeActor::IndexToGrid(int32 Index) const FVector AHyperTwistClassicCubeActor::RotateGridPosition(const FVector& Pos, EHyperTwistClassicCubeFace Face, EHyperTwistRotationDirection Direction) { - const float X = Pos.X; - const float Y = Pos.Y; - const float Z = Pos.Z; - - if (Direction == EHyperTwistRotationDirection::Clockwise) - { - switch (Face) - { - case EHyperTwistClassicCubeFace::Up: return FVector( Y, -X, Z); - case EHyperTwistClassicCubeFace::Down: return FVector(-Y, X, Z); - case EHyperTwistClassicCubeFace::Front: return FVector( Z, Y, -X); - case EHyperTwistClassicCubeFace::Back: return FVector(-Z, Y, X); - case EHyperTwistClassicCubeFace::Right: return FVector( X, -Z, Y); - case EHyperTwistClassicCubeFace::Left: return FVector( X, Z, -Y); - } - } - else - { - switch (Face) - { - case EHyperTwistClassicCubeFace::Up: return FVector(-Y, X, Z); - case EHyperTwistClassicCubeFace::Down: return FVector( Y, -X, Z); - case EHyperTwistClassicCubeFace::Front: return FVector(-Z, Y, X); - case EHyperTwistClassicCubeFace::Back: return FVector( Z, Y, -X); - case EHyperTwistClassicCubeFace::Right: return FVector( X, Z, -Y); - case EHyperTwistClassicCubeFace::Left: return FVector( X, -Z, Y); - } - } - return Pos; + return GetFaceRotationQuat(Face, Direction).RotateVector(Pos); } FQuat AHyperTwistClassicCubeActor::GetFaceRotationQuat(EHyperTwistClassicCubeFace Face, EHyperTwistRotationDirection Direction) { const bool bCW = (Direction == EHyperTwistRotationDirection::Clockwise); + const float QuarterTurnRadians = PI * 0.5f; switch (Face) { - case EHyperTwistClassicCubeFace::Up: return FQuat(FRotator(0.0f, bCW ? -90.0f : 90.0f, 0.0f)); - case EHyperTwistClassicCubeFace::Down: return FQuat(FRotator(0.0f, bCW ? 90.0f : -90.0f, 0.0f)); - case EHyperTwistClassicCubeFace::Front: return FQuat(FRotator(bCW ? 90.0f : -90.0f, 0.0f, 0.0f)); - case EHyperTwistClassicCubeFace::Back: return FQuat(FRotator(bCW ? -90.0f : 90.0f, 0.0f, 0.0f)); - case EHyperTwistClassicCubeFace::Right: return FQuat(FRotator(0.0f, 0.0f, bCW ? 90.0f : -90.0f)); - case EHyperTwistClassicCubeFace::Left: return FQuat(FRotator(0.0f, 0.0f, bCW ? -90.0f : 90.0f)); + case EHyperTwistClassicCubeFace::Up: + return FQuat(FVector::UpVector, bCW ? -QuarterTurnRadians : QuarterTurnRadians); + case EHyperTwistClassicCubeFace::Down: + return FQuat(FVector::UpVector, bCW ? QuarterTurnRadians : -QuarterTurnRadians); + case EHyperTwistClassicCubeFace::Front: + return FQuat(FVector::YAxisVector, bCW ? QuarterTurnRadians : -QuarterTurnRadians); + case EHyperTwistClassicCubeFace::Back: + return FQuat(FVector::YAxisVector, bCW ? -QuarterTurnRadians : QuarterTurnRadians); + case EHyperTwistClassicCubeFace::Right: + return FQuat(FVector::XAxisVector, bCW ? QuarterTurnRadians : -QuarterTurnRadians); + case EHyperTwistClassicCubeFace::Left: + return FQuat(FVector::XAxisVector, bCW ? -QuarterTurnRadians : QuarterTurnRadians); } return FQuat::Identity; } @@ -1211,7 +1527,7 @@ void AHyperTwistClassicCubeActor::UpdateHintMaterialState() DynamicMaterial->SetScalarParameterValue(TEXT("GlowStrength"), GlowStrength); DynamicMaterial->SetScalarParameterValue( TEXT("HintActive"), - GlowStrength > 0.0f ? 1.0f : 0.0f + GlowStrength > BaseGlowStrength + KINDA_SMALL_NUMBER ? 1.0f : 0.0f ); } } @@ -1224,14 +1540,14 @@ float AHyperTwistClassicCubeActor::ResolveHintGlowStrength( { if (!bHasHintedFace || !Piece.IdentityFaces.Contains(IdentityFace)) { - return 0.0f; + return BaseGlowStrength; } EHyperTwistClassicCubeFace WorldFace = EHyperTwistClassicCubeFace::Up; if (!TryResolveStickerWorldFace(Piece, IdentityFace, WorldFace)) { - return 0.0f; + return BaseGlowStrength; } - return WorldFace == HintedFace ? 7.5f : 0.0f; + return WorldFace == HintedFace ? HintGlowStrength : BaseGlowStrength; } diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeGameMode.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeGameMode.cpp index 47b6384..9344c1d 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeGameMode.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeGameMode.cpp @@ -1,8 +1,12 @@ #include "HyperTwistSimulation/HyperTwistClassicCubeGameMode.h" +#include "Async/Async.h" +#include "HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.h" #include "Blueprint/UserWidget.h" #include "Components/AudioComponent.h" +#include "Components/DirectionalLightComponent.h" #include "Engine/GameInstance.h" +#include "Engine/DirectionalLight.h" #include "Engine/World.h" #include "EngineUtils.h" #include "GameFramework/PlayerController.h" @@ -30,6 +34,8 @@ #include "UObject/UnrealType.h" #include "VoiceModule.h" +DEFINE_LOG_CATEGORY_STATIC(LogHyperTwistClassicCubeUi, Log, All); + namespace HyperTwistClassicCubeGameModeInternal { constexpr float AudioDuckMultiplier = 0.15f; @@ -309,6 +315,8 @@ namespace HyperTwistClassicCubeGameModeInternal AHyperTwistClassicCubeGameMode::AHyperTwistClassicCubeGameMode() { PrimaryActorTick.bCanEverTick = true; + PrimaryActorTick.bStartWithTickEnabled = true; + PrimaryActorTick.bTickEvenWhenPaused = true; PlayerControllerClass = AHyperTwistClassicCubePlayerController::StaticClass(); DefaultPawnClass = AHyperTwistClassicCubeOrbitPawn::StaticClass(); CubeSpawnLocation = FVector(0.0f, 0.0f, 120.0f); @@ -365,7 +373,13 @@ bool AHyperTwistClassicCubeGameMode::IsClassicCubeAnyActionButtonHovered_Impleme void AHyperTwistClassicCubeGameMode::BeginPlay() { Super::BeginPlay(); + SetActorTickEnabled(true); + HyperTwistRuntimeDiagnostics::AppendEvent( + TEXT("MapReady"), + FString::Printf( + TEXT("Runtime map ready: %s."), + GetWorld() != nullptr ? *GetWorld()->GetPathName() : TEXT("unknown"))); ApplyLaunchOverridesFromCommandLine(); if (APlayerController* PlayerController = @@ -376,7 +390,28 @@ void AHyperTwistClassicCubeGameMode::BeginPlay() PlayerController->bEnableMouseOverEvents = true; } - ResolveOrSpawnCubeActor(); + ActiveCubeActor = ResolveOrSpawnCubeActor(); + EnsureRuntimeLighting(); + ActiveOrbitPawn = ResolveOrSpawnOrbitPawn(); + if (ActiveCubeActor != nullptr) + { + const bool bRecoveredPresentation = ActiveCubeActor->EnsureRenderablePresentation(); + UE_LOG( + LogHyperTwistClassicCubeUi, + Display, + TEXT("Classic cube presentation initialized with %d renderable pieces and orbit pawn %s%s."), + ActiveCubeActor->GetRenderablePieceCount(), + ActiveOrbitPawn != nullptr ? TEXT("ready") : TEXT("pending"), + bRecoveredPresentation ? TEXT(" after runtime geometry recovery") : TEXT("") + ); + HyperTwistRuntimeDiagnostics::AppendEvent( + TEXT("ClassicPresentation"), + FString::Printf( + TEXT("Classic cube presentation initialized with %d renderable pieces and orbit pawn %s%s."), + ActiveCubeActor->GetRenderablePieceCount(), + ActiveOrbitPawn != nullptr ? TEXT("ready") : TEXT("pending"), + bRecoveredPresentation ? TEXT(" after runtime geometry recovery") : TEXT(""))); + } if (bAutoCreateHud) { ResolveOrCreateHudWidget(); @@ -414,6 +449,8 @@ void AHyperTwistClassicCubeGameMode::Tick(const float DeltaSeconds) Super::Tick(DeltaSeconds); ResolveOrSpawnCubeActor(); + ResolveOrSpawnOrbitPawn(); + EnsureRuntimeLighting(); if (bAutoCreateHud) { ResolveOrCreateHudWidget(); @@ -424,11 +461,52 @@ void AHyperTwistClassicCubeGameMode::Tick(const float DeltaSeconds) TickReplayAutoExit(DeltaSeconds); UHyperTwistTrainingSubsystem* TrainingSubsystem = ResolveTrainingSubsystem(); + bool bCaptureSettledRuntimeFrame = false; if (ActiveCubeActor != nullptr) { if (bAwaitingScrambleSettlement && IsCubeSettled()) { bAwaitingScrambleSettlement = false; + const FString RenderableStateError = + ActiveCubeActor->GetRenderableStateValidationError(); + if (RenderableStateError.IsEmpty()) + { + UE_LOG( + LogHyperTwistClassicCubeUi, + Display, + TEXT("Classic cube scramble settled with %d completed quarter turns, %d queued rotations, and %d renderable pieces; renderable state valid."), + ActiveCubeActor->GetTotalCompletedMoveCount(), + ActiveCubeActor->GetQueuedRotationCount(), + ActiveCubeActor->GetRenderablePieceCount()); + HyperTwistRuntimeDiagnostics::AppendEvent( + TEXT("ClassicScrambleSettlement"), + FString::Printf( + TEXT("Classic cube scramble settled with %d completed quarter turns, %d queued rotations, and %d renderable pieces; renderable state valid."), + ActiveCubeActor->GetTotalCompletedMoveCount(), + ActiveCubeActor->GetQueuedRotationCount(), + ActiveCubeActor->GetRenderablePieceCount())); + } + else + { + UE_LOG( + LogHyperTwistClassicCubeUi, + Error, + TEXT("Classic cube scramble settled with %d completed quarter turns, %d queued rotations, and %d renderable pieces; renderable state invalid: %s."), + ActiveCubeActor->GetTotalCompletedMoveCount(), + ActiveCubeActor->GetQueuedRotationCount(), + ActiveCubeActor->GetRenderablePieceCount(), + *RenderableStateError); + HyperTwistRuntimeDiagnostics::AppendEvent( + TEXT("ClassicScrambleSettlementError"), + FString::Printf( + TEXT("Classic cube scramble settled with %d completed quarter turns, %d queued rotations, and %d renderable pieces; renderable state invalid: %s."), + ActiveCubeActor->GetTotalCompletedMoveCount(), + ActiveCubeActor->GetQueuedRotationCount(), + ActiveCubeActor->GetRenderablePieceCount(), + *RenderableStateError)); + } + bCaptureSettledRuntimeFrame = + HyperTwistRuntimeDiagnostics::IsReadyFrameCaptureRequested(); if (TrainingSubsystem != nullptr) { TrainingSubsystem->StartActiveLiveTimer(); @@ -452,6 +530,18 @@ void AHyperTwistClassicCubeGameMode::Tick(const float DeltaSeconds) } RefreshHud(); + if (bCaptureSettledRuntimeFrame) + { + RequestRuntimeReadyDiagnosticsCapture(); + } +} + +void AHyperTwistClassicCubeGameMode::RequestRuntimeReadyDiagnosticsCapture() +{ + HyperTwistRuntimeDiagnostics::RequestReadyFrameCapture( + ActiveSessionMode == EHyperTwistClassicCubeSessionMode::FollowAlong + ? TEXT("classic-cube-follow-along-settled") + : TEXT("classic-cube-free-play-settled")); } void AHyperTwistClassicCubeGameMode::StartFreshAttempt() @@ -1233,6 +1323,123 @@ AHyperTwistClassicCubeActor* AHyperTwistClassicCubeGameMode::ResolveOrSpawnCubeA return ActiveCubeActor; } +AHyperTwistClassicCubeOrbitPawn* AHyperTwistClassicCubeGameMode::ResolveOrSpawnOrbitPawn() +{ + if (GetWorld() == nullptr) + { + return nullptr; + } + + APlayerController* PlayerController = GetWorld()->GetFirstPlayerController(); + if (PlayerController == nullptr) + { + return nullptr; + } + + if (AHyperTwistClassicCubeOrbitPawn* PossessedOrbitPawn = + Cast(PlayerController->GetPawn())) + { + ActiveOrbitPawn = PossessedOrbitPawn; + return ActiveOrbitPawn; + } + + if (ActiveOrbitPawn == nullptr) + { + for (TActorIterator ActorIt(GetWorld()); ActorIt; ++ActorIt) + { + if (ActorIt->GetController() == nullptr || ActorIt->GetController() == PlayerController) + { + ActiveOrbitPawn = *ActorIt; + break; + } + } + } + + if (ActiveOrbitPawn == nullptr && bEnsurePlayableOrbitPawn) + { + FActorSpawnParameters SpawnParameters; + SpawnParameters.Owner = PlayerController; + SpawnParameters.SpawnCollisionHandlingOverride = + ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + const FVector SpawnLocation = ActiveCubeActor != nullptr + ? ActiveCubeActor->GetActorLocation() + : CubeSpawnLocation; + ActiveOrbitPawn = GetWorld()->SpawnActor( + AHyperTwistClassicCubeOrbitPawn::StaticClass(), + SpawnLocation, + FRotator::ZeroRotator, + SpawnParameters + ); + if (ActiveOrbitPawn != nullptr) + { + UE_LOG( + LogHyperTwistClassicCubeUi, + Warning, + TEXT("Recovered a missing authored PlayerStart/default pawn with a runtime orbit pawn.") + ); + } + } + + if (ActiveOrbitPawn != nullptr && PlayerController->GetPawn() != ActiveOrbitPawn) + { + PlayerController->Possess(ActiveOrbitPawn); + PlayerController->SetViewTarget(ActiveOrbitPawn); + } + + return ActiveOrbitPawn; +} + +void AHyperTwistClassicCubeGameMode::EnsureRuntimeLighting() +{ + if (bRuntimeLightingReady || GetWorld() == nullptr) + { + return; + } + if (!bEnsureRuntimeLighting) + { + bRuntimeLightingReady = true; + return; + } + + for (TActorIterator ActorIt(GetWorld()); ActorIt; ++ActorIt) + { + if (ActorIt->GetLightComponent() != nullptr + && ActorIt->GetLightComponent()->IsVisible()) + { + bRuntimeLightingReady = true; + return; + } + } + + FActorSpawnParameters SpawnParameters; + SpawnParameters.SpawnCollisionHandlingOverride = + ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + ADirectionalLight* RuntimeLight = GetWorld()->SpawnActor( + ADirectionalLight::StaticClass(), + CubeSpawnLocation + FVector(-240.0f, -180.0f, 320.0f), + FRotator(-38.0f, -42.0f, 0.0f), + SpawnParameters + ); + UDirectionalLightComponent* LightComponent = RuntimeLight != nullptr + ? Cast(RuntimeLight->GetLightComponent()) + : nullptr; + if (LightComponent == nullptr) + { + return; + } + + LightComponent->SetMobility(EComponentMobility::Movable); + LightComponent->SetIntensity(8.0f); + LightComponent->SetLightColor(FLinearColor(0.80f, 0.90f, 1.0f)); + RuntimeLight->Tags.AddUnique(FName(TEXT("HyperTwistRuntimePresentationLight"))); + bRuntimeLightingReady = true; + UE_LOG( + LogHyperTwistClassicCubeUi, + Warning, + TEXT("Recovered missing authored lighting with the runtime presentation key light.") + ); +} + UHyperTwistClassicCubeHUDWidget* AHyperTwistClassicCubeGameMode::ResolveOrCreateHudWidget() { if (ActiveHudWidget != nullptr) @@ -1258,6 +1465,16 @@ UHyperTwistClassicCubeHUDWidget* AHyperTwistClassicCubeGameMode::ResolveOrCreate ActiveHudWidget = CreateWidget(PlayerController, ResolvedClass); if (ActiveHudWidget != nullptr) { + if (!ActiveHudWidget->PrepareClassicCubeHudSurface()) + { + UE_LOG( + LogHyperTwistClassicCubeUi, + Error, + TEXT("Classic cube HUD creation produced no renderable root widget.") + ); + ActiveHudWidget = nullptr; + return nullptr; + } ActiveHudWidget->AddToViewport(HudZOrder); } @@ -1432,15 +1649,19 @@ void AHyperTwistClassicCubeGameMode::RefreshSolverGuidance(const bool bForceClea if (!IsCubeSettled()) { + ++SolverGuidanceRequestSerial; + PendingSolverFaceletString.Reset(); + bPendingSolverForceClearHint = false; HintLineOverride = TEXT("hint: waiting for cube to settle"); return; } - const bool bIsFollowAlong = - ActiveSessionMode == EHyperTwistClassicCubeSessionMode::FollowAlong; const FString FaceletString = ActiveCubeActor->GetSolverFaceletString(); if (FaceletString.IsEmpty() || !UHyperTwistSolverLibrary::VerifyFaceletString(FaceletString)) { + ++SolverGuidanceRequestSerial; + PendingSolverFaceletString.Reset(); + bPendingSolverForceClearHint = false; ActiveSolutionNotation.Reset(); ActiveSolutionQuarterTurns.Reset(); FollowAlongGuideQuarterTurns.Reset(); @@ -1448,64 +1669,171 @@ void AHyperTwistClassicCubeGameMode::RefreshSolverGuidance(const bool bForceClea return; } - ActiveSolutionNotation = UHyperTwistSolverLibrary::SolveClassicState(FaceletString, 1500, 32, 1); - ActiveSolutionQuarterTurns = - UHyperTwistClassicCubeCommandLibrary::ExpandMoveNotationSequence(ActiveSolutionNotation); - - if (bIsFollowAlong - && (bForceClearHint || FollowAlongGuideQuarterTurns.IsEmpty())) - { - FollowAlongGuideQuarterTurns = ActiveSolutionQuarterTurns; - } - - const TArray& GuidanceMoves = - bIsFollowAlong ? FollowAlongGuideQuarterTurns : ActiveSolutionQuarterTurns; - - if (GuidanceMoves.IsEmpty()) + if (ActiveCubeActor->IsSolved()) { + ++SolverGuidanceRequestSerial; + PendingSolverFaceletString.Reset(); + bPendingSolverForceClearHint = false; + ActiveSolutionNotation.Reset(); + ActiveSolutionQuarterTurns.Reset(); + FollowAlongGuideQuarterTurns.Reset(); ActiveCubeActor->ClearHintedFace(); - HintLineOverride = ActiveCubeActor->IsSolved() - ? TEXT("hint: cube solved") - : TEXT("hint: no solver guidance returned"); + HintLineOverride = TEXT("hint: cube solved"); return; } - if (bIsFollowAlong) + ++SolverGuidanceRequestSerial; + PendingSolverFaceletString = FaceletString; + bPendingSolverForceClearHint = bForceClearHint; + ActiveSolutionNotation.Reset(); + ActiveSolutionQuarterTurns.Reset(); + HintLineOverride = TEXT("hint: preparing solver guidance in background"); + StartPendingSolverGuidanceTask(); +} + +void AHyperTwistClassicCubeGameMode::StartPendingSolverGuidanceTask() +{ + if (bSolverGuidanceTaskActive || PendingSolverFaceletString.IsEmpty()) { - if (!GuidanceMoves.IsValidIndex(FollowAlongStepIndex)) + return; + } + + const uint64 RequestSerial = SolverGuidanceRequestSerial; + const FString FaceletString = MoveTemp(PendingSolverFaceletString); + const bool bForceClearHint = bPendingSolverForceClearHint; + const int32 TimeLimitMs = FMath::Max(SolverTimeLimitMs, 1); + const int32 MaximumMoveCount = FMath::Max(SolverMaximumMoveCount, 1); + PendingSolverFaceletString.Reset(); + bPendingSolverForceClearHint = false; + bSolverGuidanceTaskActive = true; + ActiveSolverFaceletString = FaceletString; + + UE_LOG( + LogHyperTwistClassicCubeUi, + Display, + TEXT("Classic cube solver guidance request %llu queued on the background worker."), + RequestSerial); + + const TWeakObjectPtr WeakGameMode(this); + Async( + EAsyncExecution::ThreadPool, + [WeakGameMode, RequestSerial, FaceletString, bForceClearHint, TimeLimitMs, MaximumMoveCount]() + { + TArray SolutionNotation = UHyperTwistSolverLibrary::SolveClassicState( + FaceletString, + TimeLimitMs, + MaximumMoveCount, + 1); + AsyncTask( + ENamedThreads::GameThread, + [WeakGameMode, + RequestSerial, + FaceletString, + bForceClearHint, + SolutionNotation = MoveTemp(SolutionNotation)]() mutable { - ActiveCubeActor->ClearHintedFace(); - HintLineOverride = TEXT("hint: guided run complete"); - ModeLineOverride = FString::Printf( - TEXT("mode: follow-along complete, correct %d, wrong %d"), - FollowAlongCorrectMoveCount, - FollowAlongIncorrectMoveCount - ); - return; + if (AHyperTwistClassicCubeGameMode* GameMode = WeakGameMode.Get()) + { + GameMode->CompleteSolverGuidanceTask( + RequestSerial, + FaceletString, + bForceClearHint, + MoveTemp(SolutionNotation)); + } + }); + }); +} + +void AHyperTwistClassicCubeGameMode::CompleteSolverGuidanceTask( + const uint64 RequestSerial, + const FString& FaceletString, + const bool bForceClearHint, + TArray&& SolutionNotation) +{ + bSolverGuidanceTaskActive = false; + ActiveSolverFaceletString.Reset(); + + ActiveCubeActor = ResolveOrSpawnCubeActor(); + const bool bResultMatchesCurrentState = + RequestSerial == SolverGuidanceRequestSerial + && ActiveCubeActor != nullptr + && IsCubeSettled() + && ActiveCubeActor->GetSolverFaceletString().Equals(FaceletString, ESearchCase::CaseSensitive); + if (bResultMatchesCurrentState) + { + ActiveSolutionNotation = MoveTemp(SolutionNotation); + ActiveSolutionQuarterTurns = + UHyperTwistClassicCubeCommandLibrary::ExpandMoveNotationSequence(ActiveSolutionNotation); + const bool bIsFollowAlong = + ActiveSessionMode == EHyperTwistClassicCubeSessionMode::FollowAlong; + if (bIsFollowAlong + && (bForceClearHint || FollowAlongGuideQuarterTurns.IsEmpty())) + { + FollowAlongGuideQuarterTurns = ActiveSolutionQuarterTurns; } - const FHyperTwistClassicCubeMoveDescriptor& GuidedMove = - GuidanceMoves[FollowAlongStepIndex]; - ActiveCubeActor->SetHintedFace(GuidedMove.Face); - HintLineOverride = FString::Printf( - TEXT("hint: next move %s"), - *GuidedMove.Notation - ); - ModeLineOverride = FString::Printf( - TEXT("mode: follow-along step %d/%d, correct %d, wrong %d"), - FMath::Clamp(FollowAlongStepIndex + 1, 1, FMath::Max(GuidanceMoves.Num(), 1)), - FMath::Max(GuidanceMoves.Num(), 1), - FollowAlongCorrectMoveCount, - FollowAlongIncorrectMoveCount - ); - return; + const TArray& GuidanceMoves = + bIsFollowAlong ? FollowAlongGuideQuarterTurns : ActiveSolutionQuarterTurns; + if (GuidanceMoves.IsEmpty()) + { + ActiveCubeActor->ClearHintedFace(); + HintLineOverride = ActiveCubeActor->IsSolved() + ? TEXT("hint: cube solved") + : TEXT("hint: no solver guidance returned"); + } + else if (bIsFollowAlong) + { + if (!GuidanceMoves.IsValidIndex(FollowAlongStepIndex)) + { + ActiveCubeActor->ClearHintedFace(); + HintLineOverride = TEXT("hint: guided run complete"); + ModeLineOverride = FString::Printf( + TEXT("mode: follow-along complete, correct %d, wrong %d"), + FollowAlongCorrectMoveCount, + FollowAlongIncorrectMoveCount); + } + else + { + const FHyperTwistClassicCubeMoveDescriptor& GuidedMove = + GuidanceMoves[FollowAlongStepIndex]; + ActiveCubeActor->SetHintedFace(GuidedMove.Face); + HintLineOverride = FString::Printf( + TEXT("hint: next move %s"), + *GuidedMove.Notation); + ModeLineOverride = FString::Printf( + TEXT("mode: follow-along step %d/%d, correct %d, wrong %d"), + FMath::Clamp(FollowAlongStepIndex + 1, 1, FMath::Max(GuidanceMoves.Num(), 1)), + FMath::Max(GuidanceMoves.Num(), 1), + FollowAlongCorrectMoveCount, + FollowAlongIncorrectMoveCount); + } + } + else + { + ActiveCubeActor->SetHintedFace(GuidanceMoves[0].Face); + HintLineOverride = FString::Printf( + TEXT("hint: next move %s"), + *GuidanceMoves[0].Notation); + } + + UE_LOG( + LogHyperTwistClassicCubeUi, + Display, + TEXT("Classic cube solver guidance request %llu completed with %d moves."), + RequestSerial, + ActiveSolutionNotation.Num()); + RefreshHud(); + } + else + { + UE_LOG( + LogHyperTwistClassicCubeUi, + Verbose, + TEXT("Discarded stale classic cube solver guidance request %llu."), + RequestSerial); } - ActiveCubeActor->SetHintedFace(GuidanceMoves[0].Face); - HintLineOverride = FString::Printf( - TEXT("hint: next move %s"), - *GuidanceMoves[0].Notation - ); + StartPendingSolverGuidanceTask(); } void AHyperTwistClassicCubeGameMode::RefreshVoiceProfiles() diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeHUDWidget.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeHUDWidget.cpp index c5eb153..86a7e3b 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeHUDWidget.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSimulation/HyperTwistClassicCubeHUDWidget.cpp @@ -1,9 +1,16 @@ #include "HyperTwistSimulation/HyperTwistClassicCubeHUDWidget.h" #include "Blueprint/WidgetTree.h" +#include "Components/Border.h" #include "Components/Button.h" #include "Components/ButtonSlot.h" +#include "Components/HorizontalBox.h" +#include "Components/HorizontalBoxSlot.h" +#include "Components/ScrollBox.h" +#include "Components/SizeBox.h" #include "Components/TextBlock.h" +#include "Components/UniformGridPanel.h" +#include "Components/UniformGridSlot.h" #include "Components/VerticalBox.h" #include "Components/VerticalBoxSlot.h" #include "GameFramework/GameModeBase.h" @@ -11,6 +18,12 @@ namespace HyperTwistClassicCubeHUDWidgetInternal { + const FLinearColor PanelColor(0.012f, 0.025f, 0.045f, 0.94f); + const FLinearColor AccentColor(0.15f, 0.90f, 0.95f, 1.0f); + const FLinearColor PrimaryTextColor(0.92f, 0.97f, 1.0f, 1.0f); + const FLinearColor MutedTextColor(0.58f, 0.70f, 0.78f, 1.0f); + const FLinearColor ButtonColor(0.04f, 0.16f, 0.23f, 1.0f); + UObject* ResolveOperatorSurfaceObject(const UUserWidget* Widget) { if (Widget == nullptr || Widget->GetWorld() == nullptr) @@ -29,12 +42,41 @@ namespace HyperTwistClassicCubeHUDWidgetInternal } } +void UHyperTwistClassicCubeHUDWidget::NativeOnInitialized() +{ + Super::NativeOnInitialized(); + EnsureWidgetTreeBuilt(); +} + void UHyperTwistClassicCubeHUDWidget::NativeConstruct() { Super::NativeConstruct(); EnsureWidgetTreeBuilt(); } +TSharedRef UHyperTwistClassicCubeHUDWidget::RebuildWidget() +{ + Initialize(); + EnsureWidgetTreeBuilt(); + return Super::RebuildWidget(); +} + +bool UHyperTwistClassicCubeHUDWidget::PrepareClassicCubeHudSurface() +{ + EnsureWidgetTreeBuilt(); + return IsClassicCubeHudSurfaceReady(); +} + +bool UHyperTwistClassicCubeHUDWidget::IsClassicCubeHudSurfaceReady() const +{ + return WidgetTree != nullptr + && WidgetTree->RootWidget != nullptr + && StatusTextBlock != nullptr + && TimerTextBlock != nullptr + && NewScrambleButton != nullptr + && HintButton != nullptr; +} + void UHyperTwistClassicCubeHUDWidget::SetHudLines( const FString& InStatusLine, const FString& InScrambleLine, @@ -147,64 +189,132 @@ void UHyperTwistClassicCubeHUDWidget::EnsureWidgetTreeBuilt() return; } - UVerticalBox* RootLayout = - WidgetTree->ConstructWidget(UVerticalBox::StaticClass(), TEXT("ClassicCubeHudRoot")); - WidgetTree->RootWidget = RootLayout; + UHorizontalBox* ViewportLayout = WidgetTree->ConstructWidget( + UHorizontalBox::StaticClass(), + TEXT("ClassicCubeHudRoot") + ); + ViewportLayout->SetVisibility(ESlateVisibility::SelfHitTestInvisible); + WidgetTree->RootWidget = ViewportLayout; - StatusTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudStatus")); - ScrambleTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudScramble")); - TimerTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudTimer")); - InspectionTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudInspection")); - ResultTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudResult")); - HintTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudHint")); - SolutionTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudSolution")); - ReplayTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudReplay")); - LeaderboardTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudLeaderboard")); - ModeTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudMode")); - VoiceTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudVoice")); - ControlsTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudControls")); + USizeBox* PanelSize = WidgetTree->ConstructWidget( + USizeBox::StaticClass(), + TEXT("ClassicCubeHudPanelSize") + ); + PanelSize->SetWidthOverride(520.0f); + PanelSize->SetMaxDesiredHeight(1000.0f); + if (UHorizontalBoxSlot* PanelSlot = ViewportLayout->AddChildToHorizontalBox(PanelSize)) + { + PanelSlot->SetPadding(FMargin(18.0f)); + PanelSlot->SetVerticalAlignment(VAlign_Top); + } + + UBorder* PanelBorder = WidgetTree->ConstructWidget( + UBorder::StaticClass(), + TEXT("ClassicCubeHudPanel") + ); + PanelBorder->SetPadding(FMargin(18.0f)); + PanelBorder->SetBrushColor(HyperTwistClassicCubeHUDWidgetInternal::PanelColor); + PanelSize->AddChild(PanelBorder); + + UScrollBox* PanelScroll = WidgetTree->ConstructWidget( + UScrollBox::StaticClass(), + TEXT("ClassicCubeHudScroll") + ); + PanelBorder->AddChild(PanelScroll); + + UVerticalBox* RootLayout = WidgetTree->ConstructWidget( + UVerticalBox::StaticClass(), + TEXT("ClassicCubeHudContent") + ); + PanelScroll->AddChild(RootLayout); + + UTextBlock* TitleText = AddLine( + RootLayout, + TEXT("ClassicCubeHudTitle"), + 20, + HyperTwistClassicCubeHUDWidgetInternal::AccentColor + ); + if (TitleText != nullptr) + { + TitleText->SetText(FText::FromString(TEXT("CLASSIC CUBE // TRAINING"))); + } + + StatusTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudStatus"), 15, HyperTwistClassicCubeHUDWidgetInternal::PrimaryTextColor); + TimerTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudTimer"), 27, HyperTwistClassicCubeHUDWidgetInternal::PrimaryTextColor); + InspectionTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudInspection"), 14, HyperTwistClassicCubeHUDWidgetInternal::AccentColor); + ScrambleTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudScramble"), 13, HyperTwistClassicCubeHUDWidgetInternal::MutedTextColor); + ResultTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudResult"), 14, HyperTwistClassicCubeHUDWidgetInternal::PrimaryTextColor); + HintTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudHint"), 13, HyperTwistClassicCubeHUDWidgetInternal::MutedTextColor); + SolutionTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudSolution"), 13, HyperTwistClassicCubeHUDWidgetInternal::MutedTextColor); + ModeTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudMode"), 13, HyperTwistClassicCubeHUDWidgetInternal::PrimaryTextColor); + ReplayTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudReplay"), 12, HyperTwistClassicCubeHUDWidgetInternal::MutedTextColor); + LeaderboardTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudLeaderboard"), 12, HyperTwistClassicCubeHUDWidgetInternal::MutedTextColor); + VoiceTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudVoice"), 12, HyperTwistClassicCubeHUDWidgetInternal::MutedTextColor); + ControlsTextBlock = AddLine(RootLayout, TEXT("ClassicCubeHudControls"), 12, HyperTwistClassicCubeHUDWidgetInternal::MutedTextColor); + + UUniformGridPanel* ActionGrid = WidgetTree->ConstructWidget( + UUniformGridPanel::StaticClass(), + TEXT("ClassicCubeHudActionGrid") + ); + ActionGrid->SetMinDesiredSlotWidth(220.0f); + if (UVerticalBoxSlot* GridSlot = RootLayout->AddChildToVerticalBox(ActionGrid)) + { + GridSlot->SetPadding(FMargin(0.0f, 12.0f, 0.0f, 0.0f)); + } NewScrambleButton = CreateActionButton( - RootLayout, + ActionGrid, TEXT("ClassicCubeHudNewScrambleButton"), TEXT("ClassicCubeHudNewScrambleButtonLabel"), NewScrambleButtonLabel, - TEXT("New Scramble") + TEXT("New Scramble"), + 0, + 0 ); HintButton = CreateActionButton( - RootLayout, + ActionGrid, TEXT("ClassicCubeHudHintButton"), TEXT("ClassicCubeHudHintButtonLabel"), HintButtonLabel, - TEXT("Hint") + TEXT("Hint"), + 0, + 1 ); SubmitSolveButton = CreateActionButton( - RootLayout, + ActionGrid, TEXT("ClassicCubeHudSubmitSolveButton"), TEXT("ClassicCubeHudSubmitSolveButtonLabel"), SubmitSolveButtonLabel, - TEXT("Submit Solve") + TEXT("Submit Solve"), + 1, + 0 ); ModeToggleButton = CreateActionButton( - RootLayout, + ActionGrid, TEXT("ClassicCubeHudModeToggleButton"), TEXT("ClassicCubeHudModeToggleButtonLabel"), ModeToggleButtonLabel, - TEXT("Switch To Follow Along") + TEXT("Follow Along"), + 1, + 1 ); VoiceHoldButton = CreateActionButton( - RootLayout, + ActionGrid, TEXT("ClassicCubeHudVoiceHoldButton"), TEXT("ClassicCubeHudVoiceHoldButtonLabel"), VoiceHoldButtonLabel, - TEXT("Hold To Talk") + TEXT("Hold To Talk"), + 2, + 0 ); VoiceCycleButton = CreateActionButton( - RootLayout, + ActionGrid, TEXT("ClassicCubeHudVoiceCycleButton"), TEXT("ClassicCubeHudVoiceCycleButtonLabel"), VoiceCycleButtonLabel, - TEXT("Voice") + TEXT("Voice"), + 2, + 1 ); if (NewScrambleButton != nullptr) @@ -249,7 +359,12 @@ void UHyperTwistClassicCubeHUDWidget::EnsureWidgetTreeBuilt() ); } -UTextBlock* UHyperTwistClassicCubeHUDWidget::AddLine(UVerticalBox* Parent, const TCHAR* WidgetName) +UTextBlock* UHyperTwistClassicCubeHUDWidget::AddLine( + UVerticalBox* Parent, + const TCHAR* WidgetName, + const int32 FontSize, + const FLinearColor& Color +) { if (WidgetTree == nullptr || Parent == nullptr) { @@ -262,6 +377,11 @@ UTextBlock* UHyperTwistClassicCubeHUDWidget::AddLine(UVerticalBox* Parent, const { return nullptr; } + TextBlock->SetAutoWrapText(true); + TextBlock->SetColorAndOpacity(FSlateColor(Color)); + FSlateFontInfo Font = TextBlock->GetFont(); + Font.Size = FontSize; + TextBlock->SetFont(Font); if (UVerticalBoxSlot* VerticalBoxSlot = Parent->AddChildToVerticalBox(TextBlock)) { @@ -272,11 +392,13 @@ UTextBlock* UHyperTwistClassicCubeHUDWidget::AddLine(UVerticalBox* Parent, const } UButton* UHyperTwistClassicCubeHUDWidget::CreateActionButton( - UVerticalBox* Parent, + UUniformGridPanel* Parent, const TCHAR* ButtonName, const TCHAR* LabelName, TObjectPtr& OutLabel, - const FString& InitialLabel + const FString& InitialLabel, + const int32 Row, + const int32 Column ) { if (WidgetTree == nullptr || Parent == nullptr) @@ -292,18 +414,22 @@ UButton* UHyperTwistClassicCubeHUDWidget::CreateActionButton( { return nullptr; } + ActionButton->SetBackgroundColor(HyperTwistClassicCubeHUDWidgetInternal::ButtonColor); OutLabel = WidgetTree->ConstructWidget(UTextBlock::StaticClass(), LabelName); if (OutLabel != nullptr) { OutLabel->SetText(FText::FromString(InitialLabel)); + OutLabel->SetAutoWrapText(true); + OutLabel->SetJustification(ETextJustify::Center); + OutLabel->SetColorAndOpacity(FSlateColor(HyperTwistClassicCubeHUDWidgetInternal::PrimaryTextColor)); + FSlateFontInfo Font = OutLabel->GetFont(); + Font.Size = 13; + OutLabel->SetFont(Font); ActionButton->AddChild(OutLabel); } - if (UVerticalBoxSlot* VerticalBoxSlot = Parent->AddChildToVerticalBox(ActionButton)) - { - VerticalBoxSlot->SetPadding(FMargin(0.0f, 10.0f, 0.0f, 0.0f)); - } + Parent->AddChildToUniformGrid(ActionButton, Row, Column); if (UButtonSlot* ButtonSlot = Cast(OutLabel != nullptr ? OutLabel->Slot : nullptr)) { diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSolverLibrary.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSolverLibrary.cpp index 62fb69d..a4ee25e 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSolverLibrary.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistSolverLibrary.cpp @@ -1,16 +1,9 @@ #include "HyperTwistSolverLibrary.h" -#include "HAL/PlatformFilemanager.h" +#include "HAL/FileManager.h" #include "HAL/PlatformMisc.h" +#include "HAL/PlatformTime.h" #include "Misc/Paths.h" -#include "Misc/FileHelper.h" - -#if PLATFORM_WINDOWS -#include -#define chdir _chdir -#else -#include -#endif #include "ThirdParty/rob-twophase/face.h" #include "ThirdParty/rob-twophase/move.h" @@ -20,10 +13,13 @@ #include "ThirdParty/rob-twophase/prun.h" #include "ThirdParty/rob-twophase/solve.h" +#include #include -static bool bSolverInitialized = false; +static std::atomic_bool bSolverInitialized{false}; +static std::once_flag CoreTablesInitOnceFlag; static std::once_flag InitOnceFlag; +static std::mutex SolverInvocationMutex; namespace { @@ -55,41 +51,77 @@ namespace return false; } + + void EnsureCoreTablesInitialized() + { + std::call_once(CoreTablesInitOnceFlag, []() + { + face::init(); + move::init(); + }); + } } static void DoInitSolver() { - // rob-twophase saves/loads pruning tables from the current working directory. - // Temporarily switch to ProjectSavedDir so tables are persisted across runs. - FString SavedDir = FPaths::ProjectSavedDir(); - FString OriginalDir = FPaths::ProjectDir(); - - if (FPaths::DirectoryExists(SavedDir)) + const FString SavedDirectory = FPaths::ConvertRelativePathToFull(FPaths::ProjectSavedDir()); + if (!IFileManager::Get().MakeDirectory(*SavedDirectory, true)) { - chdir(TCHAR_TO_UTF8(*SavedDir)); + UE_LOG( + LogTemp, + Error, + TEXT("HyperTwistSolver: Could not create solver cache directory '%s'."), + *SavedDirectory); + return; } - face::init(); - move::init(); + const FString PruningTablePath = FPaths::Combine( + SavedDirectory, + UTF8_TO_TCHAR(prun::SAVE.c_str())); + const bool bExistingTable = IFileManager::Get().FileSize(*PruningTablePath) > 0; + const double InitializationStartedAt = FPlatformTime::Seconds(); + UE_LOG( + LogTemp, + Display, + TEXT("HyperTwistSolver: %s pruning table at '%s'."), + bExistingTable ? TEXT("Loading") : TEXT("Generating first-run"), + *PruningTablePath); + + EnsureCoreTablesInitialized(); coord::init(); sym::init(); - const bool bPruningTablesReady = prun::init(true); // true = try to load tables, generate if missing - - // Restore working directory - chdir(TCHAR_TO_UTF8(*OriginalDir)); - - bSolverInitialized = bPruningTablesReady; + const bool bPruningTablesReady = prun::init( + true, + TCHAR_TO_UTF8(*PruningTablePath)); + bSolverInitialized.store(bPruningTablesReady, std::memory_order_release); + if (bPruningTablesReady) + { + UE_LOG( + LogTemp, + Display, + TEXT("HyperTwistSolver: Pruning table ready in %.2f seconds (%lld bytes)."), + FPlatformTime::Seconds() - InitializationStartedAt, + IFileManager::Get().FileSize(*PruningTablePath)); + } + else + { + UE_LOG( + LogTemp, + Error, + TEXT("HyperTwistSolver: Pruning table failed after %.2f seconds."), + FPlatformTime::Seconds() - InitializationStartedAt); + } } bool UHyperTwistSolverLibrary::IsSolverInitialized() { - return bSolverInitialized; + return bSolverInitialized.load(std::memory_order_acquire); } bool UHyperTwistSolverLibrary::InitializeSolver() { std::call_once(InitOnceFlag, DoInitSolver); - return bSolverInitialized; + return bSolverInitialized.load(std::memory_order_acquire); } TArray UHyperTwistSolverLibrary::SolveClassicState( @@ -99,6 +131,7 @@ TArray UHyperTwistSolverLibrary::SolveClassicState( int32 NumSolutions ) { + const std::lock_guard SolverLock(SolverInvocationMutex); TArray Result; if (!InitializeSolver()) @@ -171,6 +204,7 @@ bool UHyperTwistSolverLibrary::VerifyFaceletString(const FString& FaceletString) return false; } + EnsureCoreTablesInitialized(); std::string Facelets(TCHAR_TO_UTF8(*FaceletString)); cubie::cube Cube; return face::to_cubie(Facelets, Cube) == 0; @@ -181,6 +215,7 @@ bool UHyperTwistSolverLibrary::VerifySolution( const TArray& Moves ) { + const std::lock_guard SolverLock(SolverInvocationMutex); if (!InitializeSolver() || !VerifyFaceletString(FaceletString)) { return false; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistCoachDashboardActor.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistCoachDashboardActor.cpp index 1d594fa..26ba686 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistCoachDashboardActor.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistCoachDashboardActor.cpp @@ -1,8 +1,11 @@ #include "HyperTwistTraining/HyperTwistCoachDashboardActor.h" #include "Blueprint/UserWidget.h" +#include "GameFramework/PlayerController.h" #include "HyperTwistTraining/HyperTwistCoachDashboardWidget.h" +DEFINE_LOG_CATEGORY_STATIC(LogHyperTwistCoachDashboardUi, Log, All); + AHyperTwistCoachDashboardActor::AHyperTwistCoachDashboardActor() { PrimaryActorTick.bCanEverTick = false; @@ -42,13 +45,36 @@ UHyperTwistCoachDashboardWidget* AHyperTwistCoachDashboardActor::CreateAndShowDa return nullptr; } - ActiveDashboardWidget = CreateWidget(GetWorld(), ResolvedWidgetClass); + if (APlayerController* PlayerController = GetWorld()->GetFirstPlayerController()) + { + ActiveDashboardWidget = CreateWidget( + PlayerController, + ResolvedWidgetClass + ); + } + else + { + ActiveDashboardWidget = CreateWidget( + GetWorld(), + ResolvedWidgetClass + ); + } if (ActiveDashboardWidget == nullptr) { return nullptr; } ApplyDashboardDefaults(ActiveDashboardWidget); + if (!ActiveDashboardWidget->PrepareCoachDashboardSurface()) + { + UE_LOG( + LogHyperTwistCoachDashboardUi, + Error, + TEXT("Coach dashboard creation produced no renderable root widget.") + ); + ActiveDashboardWidget = nullptr; + return nullptr; + } ActiveDashboardWidget->AddToViewport(DashboardZOrder); if (bRefreshDashboardOnCreate) diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistCoachDashboardWidget.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistCoachDashboardWidget.cpp index 1354320..e18d711 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistCoachDashboardWidget.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistCoachDashboardWidget.cpp @@ -6,11 +6,13 @@ #include "HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.h" #include "HyperTwistTraining/HyperTwistTrainingSubsystem.h" #include "Blueprint/WidgetTree.h" +#include "Components/Border.h" #include "Components/Button.h" #include "Components/ButtonSlot.h" #include "Components/EditableTextBox.h" #include "Components/HorizontalBox.h" #include "Components/HorizontalBoxSlot.h" +#include "Components/ScrollBox.h" #include "Components/TextBlock.h" #include "Components/VerticalBox.h" #include "Components/VerticalBoxSlot.h" @@ -4543,6 +4545,43 @@ namespace HyperTwistCoachDashboardWidgetInternal Slot->SetPadding(FMargin(0.0f, 0.0f, 0.0f, static_cast(PaddingBottom))); } TextBlock->SetAutoWrapText(true); + TextBlock->SetLineHeightPercentage(1.05f); + + const FString Name = WidgetName.ToString(); + int32 FontSize = 12; + FLinearColor TextColor(0.69f, 0.75f, 0.81f, 1.0f); + bool bUseEmphasis = false; + if (Name.Contains(TEXT("Headline"))) + { + FontSize = 20; + TextColor = FLinearColor(0.93f, 0.97f, 1.0f, 1.0f); + bUseEmphasis = true; + } + else if (Name.Contains(TEXT("Title"))) + { + FontSize = 13; + TextColor = FLinearColor(0.04f, 0.93f, 0.89f, 1.0f); + bUseEmphasis = true; + } + else if (Name.EndsWith(TEXT("Header"))) + { + FontSize = 13; + TextColor = FLinearColor(0.32f, 0.86f, 1.0f, 1.0f); + bUseEmphasis = true; + } + else if (Name.Contains(TEXT("Status")) || Name.Contains(TEXT("Focus"))) + { + TextColor = FLinearColor(0.86f, 0.91f, 0.95f, 1.0f); + } + + FSlateFontInfo Font = TextBlock->GetFont(); + Font.Size = FontSize; + if (bUseEmphasis) + { + Font.TypefaceFontName = FName(TEXT("Bold")); + } + TextBlock->SetFont(Font); + TextBlock->SetColorAndOpacity(FSlateColor(TextColor)); return TextBlock; } @@ -5808,6 +5847,12 @@ namespace HyperTwistCoachDashboardWidgetInternal } } +void UHyperTwistCoachDashboardWidget::NativeOnInitialized() +{ + Super::NativeOnInitialized(); + EnsureDefaultDashboardBuilt(); +} + void UHyperTwistCoachDashboardWidget::NativeConstruct() { EnsureDefaultDashboardBuilt(); @@ -5815,6 +5860,24 @@ void UHyperTwistCoachDashboardWidget::NativeConstruct() RefreshCoachDashboardView(); } +TSharedRef UHyperTwistCoachDashboardWidget::RebuildWidget() +{ + Initialize(); + EnsureDefaultDashboardBuilt(); + return Super::RebuildWidget(); +} + +bool UHyperTwistCoachDashboardWidget::PrepareCoachDashboardSurface() +{ + EnsureDefaultDashboardBuilt(); + return IsCoachDashboardSurfaceReady(); +} + +bool UHyperTwistCoachDashboardWidget::IsCoachDashboardSurfaceReady() const +{ + return WidgetTree != nullptr && WidgetTree->RootWidget != nullptr; +} + void UHyperTwistCoachDashboardWidget::NativeTick(const FGeometry& MyGeometry, float InDeltaTime) { Super::NativeTick(MyGeometry, InDeltaTime); @@ -18225,13 +18288,38 @@ void UHyperTwistCoachDashboardWidget::EnsureDefaultDashboardBuilt() return; } - RootLayout = WidgetTree->ConstructWidget(UVerticalBox::StaticClass(), TEXT("CoachDashboardRoot")); - if (RootLayout == nullptr) + UBorder* RootBorder = WidgetTree->ConstructWidget( + UBorder::StaticClass(), + TEXT("CoachDashboardRoot") + ); + UScrollBox* RootScroll = WidgetTree->ConstructWidget( + UScrollBox::StaticClass(), + TEXT("CoachDashboardScroll") + ); + RootLayout = WidgetTree->ConstructWidget( + UVerticalBox::StaticClass(), + TEXT("CoachDashboardContent") + ); + if (RootBorder == nullptr || RootScroll == nullptr || RootLayout == nullptr) { return; } - WidgetTree->RootWidget = RootLayout; + RootBorder->SetPadding(FMargin(24.0f)); + RootBorder->SetBrushColor(FLinearColor(0.008f, 0.014f, 0.024f, 0.97f)); + RootScroll->AddChild(RootLayout); + RootBorder->AddChild(RootScroll); + WidgetTree->RootWidget = RootBorder; + + if (UTextBlock* DashboardTitleBlock = HyperTwistCoachDashboardWidgetInternal::AddTextRow( + WidgetTree, + RootLayout, + TEXT("CoachDashboardTitle"), + 8 + )) + { + DashboardTitleBlock->SetText(FText::FromString(TEXT("HYPERTWIST // COACH DASHBOARD"))); + } HeadlineTextBlock = HyperTwistCoachDashboardWidgetInternal::AddTextRow( WidgetTree, diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.cpp index b01bb7e..2f6a5a3 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.cpp @@ -1,10 +1,13 @@ #include "HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.h" +#include "Misc/CommandLine.h" + namespace HyperTwistFirstRunLaunchLibraryInternal { const TCHAR* SurfaceId = TEXT("first-run/native-launch-and-settings-surface"); const TCHAR* DefaultRouteId = TEXT("coach-dashboard"); const TCHAR* StartupFallbackRouteId = TEXT("classic-cube-training"); + const TCHAR* PackagedStartupRouteArgumentName = TEXT("HyperTwistStartupRoute"); const TCHAR* FirstRunGameModeClassPath = TEXT("/Script/UnrealHyperTwist.HyperTwistFirstRunLaunchGameMode"); const TCHAR* CoachDashboardGameModeClassPath = @@ -13,6 +16,8 @@ namespace HyperTwistFirstRunLaunchLibraryInternal TEXT("/Script/UnrealHyperTwist.HyperTwistClassicCubeGameMode"); const TCHAR* ClassicCubeFollowAlongGameModeClassPath = TEXT("/Script/UnrealHyperTwist.HyperTwistClassicCubeFollowAlongGameMode"); + const TCHAR* HigherDimensionalTrainingGameModeClassPath = + TEXT("/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode"); const TCHAR* XrTrainingGameModeClassPath = TEXT("/Script/UnrealHyperTwist.HyperTwistXrTrainingGameMode"); const TCHAR* ClassicCubeMapPath = @@ -23,7 +28,7 @@ namespace HyperTwistFirstRunLaunchLibraryInternal TEXT("/Game/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining"); const TCHAR* MagicCube5DMapPath = TEXT("/Game/HyperTwistTraining/Maps/L_HyperTwist_MagicCube5DTraining"); - const TCHAR* RuntimeLogFileName = TEXT("UnrealHyperTwist.log"); + const TCHAR* RuntimeLogFileName = TEXT("HyperTwistRuntime-latest.log"); const TCHAR* StartupDiagnosticsLogFileName = TEXT("HyperTwistFirstRunLaunch-latest.log"); FString BuildLaunchUrl(const FString& MapAssetPath, const FString& GameModeClassPath) @@ -115,6 +120,11 @@ FString UHyperTwistFirstRunLaunchLibrary::GetPackagedStartupMapAssetPath() return HyperTwistFirstRunLaunchLibraryInternal::ClassicCubeMapPath; } +FString UHyperTwistFirstRunLaunchLibrary::GetPackagedStartupRouteArgumentName() +{ + return HyperTwistFirstRunLaunchLibraryInternal::PackagedStartupRouteArgumentName; +} + FString UHyperTwistFirstRunLaunchLibrary::GetRuntimeLogFileName() { return HyperTwistFirstRunLaunchLibraryInternal::RuntimeLogFileName; @@ -133,7 +143,7 @@ TArray UHyperTwistFirstRunLaunchLibrary::BuildFirstRunGuidanceLines() TEXT("Classic cube, follow-along, Magic120Cell, and MagicCube5D launch into dedicated first-party Unreal maps."), TEXT("XR launches through the OpenXR training game-mode override and remains gated until a live headset session plus controller input are observed."), TEXT("The web simulator is a lightweight preview and account surface; the downloadable Unreal build is the authoritative high-fidelity simulator."), - TEXT("If first launch stalls, inspect Saved/Logs/UnrealHyperTwist.log and Saved/Logs/HyperTwistFirstRunLaunch-latest.log."), + TEXT("If first launch stalls, inspect Saved/Logs/HyperTwistRuntime-latest.log and Saved/Logs/HyperTwistFirstRunLaunch-latest.log."), TEXT("If the launch menu cannot be shown, HyperTwist automatically falls back into Classic Cube Free Play instead of remaining on a blank boot map.") }; } @@ -197,7 +207,7 @@ UHyperTwistFirstRunLaunchLibrary::BuildFirstRunLaunchRoutes() TEXT("Magic120Cell Training"), TEXT("Launch the family-owned 120-cell runtime-state, projection, persistence, and dedicated-map training surface."), Magic120CellMapPath, - CoachDashboardGameModeClassPath, + HigherDimensionalTrainingGameModeClassPath, TEXT("keyboard-mouse-higher-dimensional-training"), TEXT("ready-dedicated-family-map"), false, @@ -213,7 +223,7 @@ UHyperTwistFirstRunLaunchLibrary::BuildFirstRunLaunchRoutes() TEXT("MagicCube5D Training"), TEXT("Launch the family-owned 5D runtime-state, projection, persistence, and dedicated-map training surface."), MagicCube5DMapPath, - CoachDashboardGameModeClassPath, + HigherDimensionalTrainingGameModeClassPath, TEXT("keyboard-mouse-higher-dimensional-training"), TEXT("ready-dedicated-family-map"), false, @@ -260,3 +270,112 @@ bool UHyperTwistFirstRunLaunchLibrary::TryFindFirstRunLaunchRoute( OutRoute = FHyperTwistFirstRunLaunchRoute(); return false; } + +EHyperTwistPackagedStartupRouteParseResult +UHyperTwistFirstRunLaunchLibrary::ParsePackagedStartupRouteArgument( + const TCHAR* CommandLine, + FHyperTwistFirstRunLaunchRoute& OutRoute, + FString& OutFailureReason +) +{ + using namespace HyperTwistFirstRunLaunchLibraryInternal; + + OutRoute = FHyperTwistFirstRunLaunchRoute(); + OutFailureReason.Reset(); + if (CommandLine == nullptr || CommandLine[0] == TEXT('\0')) + { + return EHyperTwistPackagedStartupRouteParseResult::NotPresent; + } + + TArray Tokens; + TArray Switches; + FCommandLine::Parse(CommandLine, Tokens, Switches); + + const FString ArgumentName(PackagedStartupRouteArgumentName); + const FString ArgumentPrefix = ArgumentName + TEXT("="); + TArray RouteValues; + for (FString Switch : Switches) + { + while (Switch.StartsWith(TEXT("-"))) + { + Switch.RightChopInline(1, EAllowShrinking::No); + } + + if (Switch.Equals(ArgumentName, ESearchCase::IgnoreCase)) + { + RouteValues.Add(FString()); + } + else if (Switch.StartsWith(ArgumentPrefix, ESearchCase::IgnoreCase)) + { + RouteValues.Add(Switch.Mid(ArgumentPrefix.Len())); + } + } + + if (RouteValues.IsEmpty()) + { + return EHyperTwistPackagedStartupRouteParseResult::NotPresent; + } + if (RouteValues.Num() != 1) + { + OutFailureReason = FString::Printf( + TEXT("Expected exactly one -%s argument, but received %d."), + PackagedStartupRouteArgumentName, + RouteValues.Num() + ); + return EHyperTwistPackagedStartupRouteParseResult::Invalid; + } + + FString RouteId = RouteValues[0].TrimStartAndEnd(); + if (RouteId.Len() >= 2 + && RouteId.StartsWith(TEXT("\"")) + && RouteId.EndsWith(TEXT("\""))) + { + RouteId = RouteId.Mid(1, RouteId.Len() - 2).TrimStartAndEnd(); + } + if (RouteId.IsEmpty()) + { + OutFailureReason = FString::Printf( + TEXT("-%s requires a registered route identifier."), + PackagedStartupRouteArgumentName + ); + return EHyperTwistPackagedStartupRouteParseResult::Invalid; + } + if (RouteId.Len() > 64) + { + OutFailureReason = FString::Printf( + TEXT("-%s exceeded the 64-character route identifier limit."), + PackagedStartupRouteArgumentName + ); + return EHyperTwistPackagedStartupRouteParseResult::Invalid; + } + + for (const TCHAR Character : RouteId) + { + const bool bAllowedCharacter = + (Character >= TEXT('a') && Character <= TEXT('z')) + || (Character >= TEXT('0') && Character <= TEXT('9')) + || Character == TEXT('-'); + if (!bAllowedCharacter) + { + OutFailureReason = FString::Printf( + TEXT("-%s contains an invalid route identifier."), + PackagedStartupRouteArgumentName + ); + return EHyperTwistPackagedStartupRouteParseResult::Invalid; + } + } + + if (!TryFindFirstRunLaunchRoute(RouteId, OutRoute) + || !OutRoute.IsStructurallyValid()) + { + OutRoute = FHyperTwistFirstRunLaunchRoute(); + OutFailureReason = FString::Printf( + TEXT("-%s requested unknown route '%s'."), + PackagedStartupRouteArgumentName, + *RouteId + ); + return EHyperTwistPackagedStartupRouteParseResult::Invalid; + } + + return EHyperTwistPackagedStartupRouteParseResult::Valid; +} diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchPlayerController.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchPlayerController.cpp index 02d082f..963b866 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchPlayerController.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchPlayerController.cpp @@ -3,12 +3,15 @@ #include "Blueprint/UserWidget.h" #include "Engine/Engine.h" #include "EngineUtils.h" +#include "HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.h" #include "HyperTwistTraining/HyperTwistCoachDashboardActor.h" #include "HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.h" #include "HyperTwistTraining/HyperTwistFirstRunLaunchWidget.h" #include "Kismet/GameplayStatics.h" +#include "Misc/CommandLine.h" #include "Misc/FileHelper.h" #include "Misc/Paths.h" +#include "TimerManager.h" DEFINE_LOG_CATEGORY_STATIC(LogHyperTwistFirstRunLaunch, Log, All); @@ -30,6 +33,11 @@ void AHyperTwistFirstRunLaunchPlayerController::BeginPlay() ); ApplyFirstRunInputMode(); + if (TryOpenCommandLineStartupRoute()) + { + return; + } + if (bShowFirstRunLaunchOnBeginPlay) { if (ShowFirstRunLaunchMenu() == nullptr) @@ -38,7 +46,6 @@ void AHyperTwistFirstRunLaunchPlayerController::BeginPlay() return; } - PersistStartupDiagnostics(TEXT("launch-menu-visible")); return; } @@ -49,17 +56,90 @@ void AHyperTwistFirstRunLaunchPlayerController::BeginPlay() PersistStartupDiagnostics(TEXT("launch-menu-disabled")); } +bool AHyperTwistFirstRunLaunchPlayerController::TryOpenCommandLineStartupRoute() +{ + FHyperTwistFirstRunLaunchRoute Route; + FString FailureReason; + const EHyperTwistPackagedStartupRouteParseResult ParseResult = + UHyperTwistFirstRunLaunchLibrary::ParsePackagedStartupRouteArgument( + FCommandLine::Get(), + Route, + FailureReason + ); + if (ParseResult == EHyperTwistPackagedStartupRouteParseResult::NotPresent) + { + return false; + } + if (ParseResult == EHyperTwistPackagedStartupRouteParseResult::Invalid) + { + const FString Message = FString::Printf( + TEXT("Rejected packaged startup-route override: %s Continuing with the visible first-run menu."), + FailureReason.IsEmpty() ? TEXT("invalid argument.") : *FailureReason + ); + AppendStartupDiagnosticsLine(TEXT("PackagedStartupRoute"), Message, true); + HyperTwistRuntimeDiagnostics::AppendEvent(TEXT("PackagedStartupRoute"), Message); + PersistStartupDiagnostics(TEXT("command-line-route-rejected")); + return false; + } + + const FString AcceptedMessage = FString::Printf( + TEXT("Accepted packaged startup route '%s': map='%s', game_mode='%s'."), + *Route.RouteId, + Route.MapAssetPath.IsEmpty() ? TEXT("") : *Route.MapAssetPath, + Route.GameModeClassPath.IsEmpty() ? TEXT("") : *Route.GameModeClassPath + ); + AppendStartupDiagnosticsLine(TEXT("PackagedStartupRoute"), AcceptedMessage); + HyperTwistRuntimeDiagnostics::AppendEvent(TEXT("PackagedStartupRoute"), AcceptedMessage); + if (OpenFirstRunRoute(Route.RouteId)) + { + const FString OpenedMessage = FString::Printf( + TEXT("Opened packaged startup route '%s' through first-run product authority."), + *Route.RouteId + ); + AppendStartupDiagnosticsLine(TEXT("PackagedStartupRoute"), OpenedMessage); + HyperTwistRuntimeDiagnostics::AppendEvent(TEXT("PackagedStartupRoute"), OpenedMessage); + PersistStartupDiagnostics(TEXT("command-line-route-opened")); + return true; + } + + const FString OpenFailureMessage = FString::Printf( + TEXT("Could not open packaged startup route '%s'; continuing with the visible first-run menu."), + *Route.RouteId + ); + AppendStartupDiagnosticsLine(TEXT("PackagedStartupRoute"), OpenFailureMessage, true); + HyperTwistRuntimeDiagnostics::AppendEvent( + TEXT("PackagedStartupRoute"), + OpenFailureMessage + ); + PersistStartupDiagnostics(TEXT("command-line-route-open-failed")); + return false; +} + UHyperTwistFirstRunLaunchWidget* AHyperTwistFirstRunLaunchPlayerController::ShowFirstRunLaunchMenu() { if (ActiveFirstRunLaunchWidget != nullptr) { ActiveFirstRunLaunchWidget->RebuildFirstRunLaunchSurface(); + if (!ActiveFirstRunLaunchWidget->IsFirstRunLaunchSurfaceReady()) + { + AppendStartupDiagnosticsLine( + TEXT("ShowFirstRunLaunchMenu"), + TEXT("The existing first-run widget has no renderable root tree."), + true + ); + PersistStartupDiagnostics(TEXT("launch-widget-root-missing")); + return nullptr; + } + if (!ActiveFirstRunLaunchWidget->IsInViewport()) + { + ActiveFirstRunLaunchWidget->AddToViewport(FirstRunLaunchZOrder); + } AppendStartupDiagnosticsLine( TEXT("ShowFirstRunLaunchMenu"), - TEXT("Rebuilt the existing first-run launch widget.") + TEXT("Prepared the existing first-run launch widget for layout validation.") ); - PersistStartupDiagnostics(TEXT("launch-menu-rebuilt")); + ScheduleFirstRunSurfaceValidation(); return ActiveFirstRunLaunchWidget; } @@ -102,6 +182,19 @@ AHyperTwistFirstRunLaunchPlayerController::ShowFirstRunLaunchMenu() this, &AHyperTwistFirstRunLaunchPlayerController::HandleFirstRunRouteRequested ); + ActiveFirstRunLaunchWidget->RebuildFirstRunLaunchSurface(); + if (!ActiveFirstRunLaunchWidget->IsFirstRunLaunchSurfaceReady()) + { + AppendStartupDiagnosticsLine( + TEXT("ShowFirstRunLaunchMenu"), + TEXT("The first-run widget could not construct its renderable root tree."), + true + ); + ActiveFirstRunLaunchWidget = nullptr; + PersistStartupDiagnostics(TEXT("launch-widget-root-missing")); + return nullptr; + } + ActiveFirstRunLaunchWidget->AddToViewport(FirstRunLaunchZOrder); AppendStartupDiagnosticsLine( TEXT("ShowFirstRunLaunchMenu"), @@ -111,7 +204,7 @@ AHyperTwistFirstRunLaunchPlayerController::ShowFirstRunLaunchMenu() ) ); ApplyFirstRunInputMode(); - PersistStartupDiagnostics(TEXT("launch-widget-added")); + ScheduleFirstRunSurfaceValidation(); return ActiveFirstRunLaunchWidget; } @@ -119,6 +212,8 @@ void AHyperTwistFirstRunLaunchPlayerController::RemoveFirstRunLaunchMenu() { if (ActiveFirstRunLaunchWidget != nullptr) { + GetWorldTimerManager().ClearTimer(FirstRunSurfaceValidationTimerHandle); + FirstRunSurfaceValidationAttempt = 0; ActiveFirstRunLaunchWidget->RemoveFromParent(); ActiveFirstRunLaunchWidget = nullptr; AppendStartupDiagnosticsLine( @@ -486,6 +581,72 @@ bool AHyperTwistFirstRunLaunchPlayerController::TryRecoverFromFirstRunFailure( return bRecovered; } +void AHyperTwistFirstRunLaunchPlayerController::ScheduleFirstRunSurfaceValidation() +{ + FirstRunSurfaceValidationAttempt = 0; + GetWorldTimerManager().ClearTimer(FirstRunSurfaceValidationTimerHandle); + GetWorldTimerManager().SetTimer( + FirstRunSurfaceValidationTimerHandle, + this, + &AHyperTwistFirstRunLaunchPlayerController::ValidateFirstRunSurfaceLayout, + FMath::Max(FirstRunSurfaceValidationIntervalSeconds, 0.01f), + false + ); + PersistStartupDiagnostics(TEXT("launch-widget-added-pending-layout")); +} + +void AHyperTwistFirstRunLaunchPlayerController::ValidateFirstRunSurfaceLayout() +{ + if (ActiveFirstRunLaunchWidget == nullptr) + { + return; + } + + ++FirstRunSurfaceValidationAttempt; + const FVector2D LocalSize = ActiveFirstRunLaunchWidget->GetCachedGeometry().GetLocalSize(); + const bool bHasRenderableLayout = ActiveFirstRunLaunchWidget->IsInViewport() + && ActiveFirstRunLaunchWidget->IsVisible() + && ActiveFirstRunLaunchWidget->IsFirstRunLaunchSurfaceReady() + && LocalSize.X > 1.0f + && LocalSize.Y > 1.0f; + if (bHasRenderableLayout) + { + AppendStartupDiagnosticsLine( + TEXT("ValidateFirstRunSurfaceLayout"), + FString::Printf( + TEXT("Confirmed a renderable first-run layout at %.0fx%.0f after %d attempt(s)."), + LocalSize.X, + LocalSize.Y, + FirstRunSurfaceValidationAttempt + ) + ); + PersistStartupDiagnostics(TEXT("launch-menu-renderable")); + HyperTwistRuntimeDiagnostics::RequestReadyFrameCapture(TEXT("first-run-launch-ready")); + return; + } + + if (FirstRunSurfaceValidationAttempt < FMath::Max(MaxFirstRunSurfaceValidationAttempts, 1)) + { + GetWorldTimerManager().SetTimer( + FirstRunSurfaceValidationTimerHandle, + this, + &AHyperTwistFirstRunLaunchPlayerController::ValidateFirstRunSurfaceLayout, + FMath::Max(FirstRunSurfaceValidationIntervalSeconds, 0.01f), + false + ); + return; + } + + TryRecoverFromFirstRunFailure( + FString::Printf( + TEXT("The first-run launch widget never produced a visible non-zero layout after %d attempts (last size %.0fx%.0f)."), + FirstRunSurfaceValidationAttempt, + LocalSize.X, + LocalSize.Y + ) + ); +} + FString AHyperTwistFirstRunLaunchPlayerController::DescribeCurrentWorldName() const { const UWorld* World = GetWorld(); diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchWidget.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchWidget.cpp index 9f78c8e..11cff86 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchWidget.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistFirstRunLaunchWidget.cpp @@ -10,15 +10,28 @@ #include "Components/VerticalBox.h" #include "Components/VerticalBoxSlot.h" +void UHyperTwistFirstRunLaunchWidget::NativeOnInitialized() +{ + Super::NativeOnInitialized(); + RebuildFirstRunLaunchSurface(); +} + void UHyperTwistFirstRunLaunchWidget::NativeConstruct() { Super::NativeConstruct(); RebuildFirstRunLaunchSurface(); } +TSharedRef UHyperTwistFirstRunLaunchWidget::RebuildWidget() +{ + Initialize(); + RebuildFirstRunLaunchSurface(); + return Super::RebuildWidget(); +} + void UHyperTwistFirstRunLaunchWidget::RebuildFirstRunLaunchSurface() { - if (WidgetTree == nullptr) + if (WidgetTree == nullptr || WidgetTree->RootWidget != nullptr) { return; } @@ -106,6 +119,15 @@ void UHyperTwistFirstRunLaunchWidget::RebuildFirstRunLaunchSurface() } } +bool UHyperTwistFirstRunLaunchWidget::IsFirstRunLaunchSurfaceReady() const +{ + return WidgetTree != nullptr + && WidgetTree->RootWidget != nullptr + && WidgetTree->FindWidget(FName(TEXT("HyperTwistFirstRunRoot"))) != nullptr + && WidgetTree->FindWidget(FName(TEXT("CoachDashboardRouteButton"))) != nullptr + && WidgetTree->FindWidget(FName(TEXT("ClassicCubeRouteButton"))) != nullptr; +} + void UHyperTwistFirstRunLaunchWidget::OpenCoachDashboard() { RequestRoute(TEXT("coach-dashboard")); diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistHigherDimensionalTrainingGameMode.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistHigherDimensionalTrainingGameMode.cpp new file mode 100644 index 0000000..2a71331 --- /dev/null +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistHigherDimensionalTrainingGameMode.cpp @@ -0,0 +1,598 @@ +#include "HyperTwistTraining/HyperTwistHigherDimensionalTrainingGameMode.h" + +#include "Camera/CameraComponent.h" +#include "CanvasItem.h" +#include "Components/DirectionalLightComponent.h" +#include "Components/SceneComponent.h" +#include "Engine/Canvas.h" +#include "Engine/DirectionalLight.h" +#include "Engine/Engine.h" +#include "Engine/Font.h" +#include "Engine/World.h" +#include "EngineUtils.h" +#include "GameFramework/SpringArmComponent.h" +#include "HAL/FileManager.h" +#include "HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.h" +#include "HyperTwistTraining/HyperTwistCoachDashboardActor.h" +#include "HyperTwistTraining/HyperTwistHigherDimensionalTrainingShellActor.h" +#include "InputCoreTypes.h" +#include "Misc/FileHelper.h" +#include "Misc/Paths.h" + +DEFINE_LOG_CATEGORY_STATIC(LogHyperTwistHigherDimensionalGameMode, Log, All); + +namespace HyperTwistHigherDimensionalTrainingGameModeInternal +{ + const TCHAR* Magic120CellFamilyKey = TEXT("magic120cell"); + const TCHAR* MagicCube5DFamilyKey = TEXT("magiccube5d"); + + FString BuildReadinessResult(const FString& FamilyKey) + { + return FamilyKey.Equals(Magic120CellFamilyKey, ESearchCase::IgnoreCase) + ? TEXT("higher-dimensional-runtime-ready-magic120cell") + : TEXT("higher-dimensional-runtime-ready-magiccube5d"); + } +} + +AHyperTwistHigherDimensionalOrbitPawn::AHyperTwistHigherDimensionalOrbitPawn() +{ + PrimaryActorTick.bCanEverTick = true; + + SceneRoot = CreateDefaultSubobject(TEXT("SceneRoot")); + SetRootComponent(SceneRoot); + + SpringArm = CreateDefaultSubobject(TEXT("SpringArm")); + SpringArm->SetupAttachment(SceneRoot); + SpringArm->bDoCollisionTest = false; + SpringArm->bEnableCameraLag = true; + SpringArm->CameraLagSpeed = 12.0f; + SpringArm->bUsePawnControlRotation = false; + SpringArm->TargetArmLength = InitialArmLength; + + CameraComponent = CreateDefaultSubobject(TEXT("Camera")); + CameraComponent->SetupAttachment(SpringArm, USpringArmComponent::SocketName); + CameraComponent->bUsePawnControlRotation = false; +} + +void AHyperTwistHigherDimensionalOrbitPawn::BeginPlay() +{ + Super::BeginPlay(); + ResetOrbit(); +} + +void AHyperTwistHigherDimensionalOrbitPawn::Tick(const float DeltaSeconds) +{ + Super::Tick(DeltaSeconds); + static_cast(DeltaSeconds); + + RefreshOrbitFocusPoint(); + APlayerController* PlayerController = Cast(GetController()); + if (PlayerController == nullptr) + { + return; + } + + if (SpringArm != nullptr) + { + const float MouseWheelDelta = PlayerController->GetInputAnalogKeyState(EKeys::MouseWheelAxis); + if (!FMath::IsNearlyZero(MouseWheelDelta)) + { + SpringArm->TargetArmLength = FMath::Clamp( + SpringArm->TargetArmLength - (MouseWheelDelta * ZoomStep), + MinimumArmLength, + MaximumArmLength); + } + } + + if (!ShouldOrbitFromMouseInput()) + { + return; + } + + float MouseDeltaX = 0.0f; + float MouseDeltaY = 0.0f; + PlayerController->GetInputMouseDelta(MouseDeltaX, MouseDeltaY); + if (FMath::IsNearlyZero(MouseDeltaX) && FMath::IsNearlyZero(MouseDeltaY)) + { + return; + } + + CurrentYawDegrees += MouseDeltaX * OrbitDegreesPerPixel; + CurrentPitchDegrees = FMath::Clamp( + CurrentPitchDegrees - (MouseDeltaY * OrbitDegreesPerPixel), + -78.0f, + 55.0f); + ApplyOrbitTransform(); +} + +void AHyperTwistHigherDimensionalOrbitPawn::ResetOrbit() +{ + CurrentYawDegrees = InitialYawDegrees; + CurrentPitchDegrees = InitialPitchDegrees; + if (SpringArm != nullptr) + { + SpringArm->TargetArmLength = FMath::Clamp( + InitialArmLength, + MinimumArmLength, + MaximumArmLength); + } + RefreshOrbitFocusPoint(); + ApplyOrbitTransform(); +} + +void AHyperTwistHigherDimensionalOrbitPawn::RefreshOrbitFocusPoint() +{ + if (GetWorld() == nullptr) + { + return; + } + + TActorIterator ActorIt(GetWorld()); + if (ActorIt) + { + const FVector NewFocusPoint = ActorIt->GetActorLocation() + + FVector(0.0f, 0.0f, ActorIt->PreviewHeightOffset); + if (!NewFocusPoint.Equals(OrbitFocusPoint)) + { + OrbitFocusPoint = NewFocusPoint; + ApplyOrbitTransform(); + } + } +} + +void AHyperTwistHigherDimensionalOrbitPawn::ApplyOrbitTransform() +{ + SetActorLocation(OrbitFocusPoint); + if (SpringArm != nullptr) + { + SpringArm->SetRelativeRotation(FRotator(CurrentPitchDegrees, CurrentYawDegrees, 0.0f)); + } +} + +bool AHyperTwistHigherDimensionalOrbitPawn::ShouldOrbitFromMouseInput() const +{ + const APlayerController* PlayerController = Cast(GetController()); + return PlayerController != nullptr + && (PlayerController->IsInputKeyDown(EKeys::MiddleMouseButton) + || (PlayerController->IsInputKeyDown(EKeys::RightMouseButton) + && (PlayerController->IsInputKeyDown(EKeys::LeftShift) + || PlayerController->IsInputKeyDown(EKeys::RightShift)))); +} + +void AHyperTwistHigherDimensionalTrainingHUD::DrawHUD() +{ + Super::DrawHUD(); + if (Canvas == nullptr) + { + return; + } + + AHyperTwistHigherDimensionalTrainingShellActor* TrainingShell = ResolveTrainingShell(); + if (TrainingShell == nullptr) + { + return; + } + + const float PanelX = 18.0f; + const float PanelY = 18.0f; + const float PanelWidth = FMath::Min(540.0f, Canvas->SizeX - 36.0f); + const float PanelHeight = 270.0f; + FCanvasTileItem Background( + FVector2D(PanelX, PanelY), + GWhiteTexture, + FVector2D(PanelWidth, PanelHeight), + FLinearColor(0.018f, 0.035f, 0.060f, 0.93f)); + Background.BlendMode = SE_BLEND_Translucent; + Canvas->DrawItem(Background); + + const FLinearColor AccentColor = TrainingShell->FamilyKey.Equals( + HyperTwistHigherDimensionalTrainingGameModeInternal::Magic120CellFamilyKey, + ESearchCase::IgnoreCase) + ? FLinearColor(0.12f, 0.95f, 1.0f) + : FLinearColor(1.0f, 0.60f, 0.22f); + FCanvasTileItem Accent( + FVector2D(PanelX, PanelY), + GWhiteTexture, + FVector2D(6.0f, PanelHeight), + AccentColor); + Canvas->DrawItem(Accent); + + float CursorY = PanelY + 16.0f; + DrawStatusLine(TrainingShell->Title, PanelX + 20.0f, CursorY, AccentColor, 1.15f); + DrawStatusLine(TrainingShell->GetRuntimeStatusSummary(), PanelX + 20.0f, CursorY, FLinearColor::White); + DrawStatusLine( + FString::Printf(TEXT("projection: %s"), *TrainingShell->ProjectionProfileId), + PanelX + 20.0f, + CursorY, + FLinearColor(0.72f, 0.80f, 0.88f), + 0.86f); + DrawStatusLine( + FString::Printf(TEXT("persistence: %s"), *TrainingShell->LastPersistenceStatus), + PanelX + 20.0f, + CursorY, + FLinearColor(0.72f, 0.80f, 0.88f), + 0.86f); + DrawStatusLine( + FString::Printf(TEXT("last action: %s"), *TrainingShell->LastRuntimeAction), + PanelX + 20.0f, + CursorY, + FLinearColor(0.72f, 0.80f, 0.88f), + 0.86f); + + CursorY += 5.0f; + DrawStatusLine( + TEXT("SPACE auto-rotate | Q / E rotate | PAGE UP / DOWN layers"), + PanelX + 20.0f, + CursorY, + FLinearColor::White, + 0.88f); + DrawStatusLine( + TEXT("N new state | R reset | S save | L load | HOME camera"), + PanelX + 20.0f, + CursorY, + FLinearColor::White, + 0.88f); + DrawStatusLine( + TEXT("Wheel zoom | MMB or SHIFT+RMB orbit | D diagnostics"), + PanelX + 20.0f, + CursorY, + FLinearColor::White, + 0.88f); +} + +AHyperTwistHigherDimensionalTrainingShellActor* +AHyperTwistHigherDimensionalTrainingHUD::ResolveTrainingShell() +{ + if (CachedTrainingShell.IsValid()) + { + return CachedTrainingShell.Get(); + } + if (GetWorld() == nullptr) + { + return nullptr; + } + + TActorIterator ActorIt(GetWorld()); + if (ActorIt) + { + CachedTrainingShell = *ActorIt; + return *ActorIt; + } + return nullptr; +} + +void AHyperTwistHigherDimensionalTrainingHUD::DrawStatusLine( + const FString& Text, + const float X, + float& InOutY, + const FLinearColor& Color, + const float Scale) +{ + UFont* Font = GEngine != nullptr ? GEngine->GetSmallFont() : nullptr; + if (Canvas == nullptr || Font == nullptr) + { + return; + } + + FCanvasTextItem TextItem(FVector2D(X, InOutY), FText::FromString(Text), Font, Color); + TextItem.Scale = FVector2D(Scale); + TextItem.EnableShadow(FLinearColor(0.0f, 0.0f, 0.0f, 0.75f)); + Canvas->DrawItem(TextItem); + InOutY += 23.0f * Scale; +} + +AHyperTwistHigherDimensionalTrainingPlayerController:: + AHyperTwistHigherDimensionalTrainingPlayerController() +{ + bBootstrapCoachDashboardOnBeginPlay = false; + bShowCoachDashboardMouseCursor = true; + bUseGameAndUiInputMode = true; + bEnableClickEvents = true; + bEnableMouseOverEvents = true; +} + +void AHyperTwistHigherDimensionalTrainingPlayerController::BeginPlay() +{ + Super::BeginPlay(); + + bShowMouseCursor = true; + FInputModeGameAndUI InputMode; + InputMode.SetHideCursorDuringCapture(false); + InputMode.SetLockMouseToViewportBehavior(EMouseLockMode::DoNotLock); + SetInputMode(InputMode); +} + +void AHyperTwistHigherDimensionalTrainingPlayerController::PlayerTick(const float DeltaTime) +{ + Super::PlayerTick(DeltaTime); + + AHyperTwistHigherDimensionalTrainingShellActor* TrainingShell = ResolveTrainingShell(); + if (TrainingShell == nullptr) + { + return; + } + + if (WasInputKeyJustPressed(EKeys::SpaceBar)) + { + TrainingShell->ToggleAutoRotateProjection(); + } + if (WasInputKeyJustPressed(EKeys::Q)) + { + TrainingShell->NudgeProjection(-12.0f); + } + if (WasInputKeyJustPressed(EKeys::E)) + { + TrainingShell->NudgeProjection(12.0f); + } + if (WasInputKeyJustPressed(EKeys::PageUp)) + { + TrainingShell->CycleProjectionLayer(1); + } + if (WasInputKeyJustPressed(EKeys::PageDown)) + { + TrainingShell->CycleProjectionLayer(-1); + } + if (WasInputKeyJustPressed(EKeys::N)) + { + TrainingShell->CreateScrambledRuntimeState(); + } + if (WasInputKeyJustPressed(EKeys::R)) + { + TrainingShell->ResetProjection(); + } + if (WasInputKeyJustPressed(EKeys::S)) + { + TrainingShell->SaveRuntimeState(); + } + if (WasInputKeyJustPressed(EKeys::L)) + { + TrainingShell->LoadRuntimeState(); + } + if (WasInputKeyJustPressed(EKeys::Home)) + { + if (AHyperTwistHigherDimensionalOrbitPawn* OrbitPawn = + Cast(GetPawn())) + { + OrbitPawn->ResetOrbit(); + TrainingShell->LastRuntimeAction = TEXT("camera orbit reset"); + } + } + if (WasInputKeyJustPressed(EKeys::D)) + { + ToggleCoachDashboardSurface(); + } +} + +AHyperTwistHigherDimensionalTrainingShellActor* +AHyperTwistHigherDimensionalTrainingPlayerController::ResolveTrainingShell() +{ + if (CachedTrainingShell.IsValid()) + { + return CachedTrainingShell.Get(); + } + if (GetWorld() == nullptr) + { + return nullptr; + } + + TActorIterator ActorIt(GetWorld()); + if (ActorIt) + { + CachedTrainingShell = *ActorIt; + return *ActorIt; + } + return nullptr; +} + +void AHyperTwistHigherDimensionalTrainingPlayerController::ToggleCoachDashboardSurface() +{ + if (ActiveDashboardActor != nullptr && ActiveDashboardActor->HasActiveDashboard()) + { + ActiveDashboardActor->RemoveDashboard(); + return; + } + + EnsureCoachDashboard(); +} + +AHyperTwistHigherDimensionalTrainingGameMode::AHyperTwistHigherDimensionalTrainingGameMode() +{ + DefaultPawnClass = AHyperTwistHigherDimensionalOrbitPawn::StaticClass(); + PlayerControllerClass = AHyperTwistHigherDimensionalTrainingPlayerController::StaticClass(); + HUDClass = AHyperTwistHigherDimensionalTrainingHUD::StaticClass(); + TrainingShellActorClass = AHyperTwistHigherDimensionalTrainingShellActor::StaticClass(); +} + +void AHyperTwistHigherDimensionalTrainingGameMode::BeginPlay() +{ + Super::BeginPlay(); + + HyperTwistRuntimeDiagnostics::AppendEvent( + TEXT("MapReady"), + FString::Printf( + TEXT("Runtime map ready: %s."), + GetWorld() != nullptr ? *GetWorld()->GetPathName() : TEXT("unknown"))); + + const FString FamilyKey = ResolveCurrentFamilyKey(); + EnsureRuntimeLighting(FamilyKey); + ActiveTrainingShell = FindExistingTrainingShell(); + if (ActiveTrainingShell == nullptr) + { + ActiveTrainingShell = SpawnTrainingShell(FamilyKey); + } + else + { + ActiveTrainingShell->ConfigureForFamily(FamilyKey); + } + + if (ActiveTrainingShell == nullptr + || ActiveTrainingShell->GetRenderableElementCount() + != ActiveTrainingShell->GetCanonicalElementCount()) + { + UE_LOG( + LogHyperTwistHigherDimensionalGameMode, + Error, + TEXT("Dedicated higher-dimensional runtime failed to initialize for family %s."), + *FamilyKey); + return; + } + + PersistRuntimeReadinessDiagnostics(FamilyKey, ActiveTrainingShell); + UE_LOG( + LogHyperTwistHigherDimensionalGameMode, + Display, + TEXT("Dedicated higher-dimensional runtime ready for %s with %d canonical renderable elements."), + *FamilyKey, + ActiveTrainingShell->GetRenderableElementCount()); + if (HyperTwistRuntimeDiagnostics::IsReadyFrameCaptureRequested()) + { + RequestRuntimeReadyDiagnosticsCapture(); + } +} + +FString AHyperTwistHigherDimensionalTrainingGameMode::ResolveCurrentFamilyKey() const +{ + const FString MapName = GetWorld() != nullptr ? GetWorld()->GetMapName() : FString(); + return MapName.Contains(TEXT("Magic120Cell"), ESearchCase::IgnoreCase) + ? HyperTwistHigherDimensionalTrainingGameModeInternal::Magic120CellFamilyKey + : HyperTwistHigherDimensionalTrainingGameModeInternal::MagicCube5DFamilyKey; +} + +AHyperTwistHigherDimensionalTrainingShellActor* +AHyperTwistHigherDimensionalTrainingGameMode::FindExistingTrainingShell() const +{ + if (GetWorld() == nullptr) + { + return nullptr; + } + + TActorIterator ActorIt(GetWorld()); + if (ActorIt) + { + return *ActorIt; + } + return nullptr; +} + +AHyperTwistHigherDimensionalTrainingShellActor* +AHyperTwistHigherDimensionalTrainingGameMode::SpawnTrainingShell(const FString& FamilyKey) +{ + if (GetWorld() == nullptr) + { + return nullptr; + } + + TSubclassOf ResolvedClass = + TrainingShellActorClass; + if (*ResolvedClass == nullptr) + { + ResolvedClass = AHyperTwistHigherDimensionalTrainingShellActor::StaticClass(); + } + + FTransform SpawnTransform; + AHyperTwistHigherDimensionalTrainingShellActor* TrainingShell = + GetWorld()->SpawnActorDeferred( + ResolvedClass, + SpawnTransform, + nullptr, + nullptr, + ESpawnActorCollisionHandlingMethod::AlwaysSpawn); + if (TrainingShell == nullptr) + { + return nullptr; + } + + TrainingShell->ConfigureForFamily(FamilyKey); + TrainingShell->FinishSpawning(SpawnTransform); + return TrainingShell; +} + +void AHyperTwistHigherDimensionalTrainingGameMode::EnsureRuntimeLighting(const FString& FamilyKey) +{ + if (GetWorld() == nullptr) + { + return; + } + + for (TActorIterator ActorIt(GetWorld()); ActorIt; ++ActorIt) + { + if (ActorIt->GetLightComponent() != nullptr && ActorIt->GetLightComponent()->IsVisible()) + { + ActivePresentationLight = *ActorIt; + return; + } + } + + FActorSpawnParameters SpawnParameters; + SpawnParameters.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + ActivePresentationLight = GetWorld()->SpawnActor( + ADirectionalLight::StaticClass(), + FVector(-340.0f, 120.0f, 470.0f), + FamilyKey.Equals(HyperTwistHigherDimensionalTrainingGameModeInternal::Magic120CellFamilyKey) + ? FRotator(-34.0f, -22.0f, 0.0f) + : FRotator(-38.0f, 34.0f, 0.0f), + SpawnParameters); + UDirectionalLightComponent* LightComponent = ActivePresentationLight != nullptr + ? Cast(ActivePresentationLight->GetLightComponent()) + : nullptr; + if (LightComponent == nullptr) + { + UE_LOG( + LogHyperTwistHigherDimensionalGameMode, + Error, + TEXT("Failed to create the self-healing higher-dimensional presentation light.")); + return; + } + + LightComponent->SetMobility(EComponentMobility::Movable); + LightComponent->SetIntensity( + FamilyKey.Equals(HyperTwistHigherDimensionalTrainingGameModeInternal::Magic120CellFamilyKey) + ? 2.8f + : 3.2f); + LightComponent->SetLightColor(FLinearColor(0.86f, 0.93f, 1.0f)); + ActivePresentationLight->Tags.AddUnique(FName(TEXT("HyperTwistHigherDimensionalRuntimeLight"))); + UE_LOG( + LogHyperTwistHigherDimensionalGameMode, + Display, + TEXT("Created self-healing runtime presentation lighting for family %s."), + *FamilyKey); +} + +void AHyperTwistHigherDimensionalTrainingGameMode::RequestRuntimeReadyDiagnosticsCapture() +{ + const FString SurfaceId = FString::Printf( + TEXT("%s-runtime-ready"), + *ResolveCurrentFamilyKey()); + HyperTwistRuntimeDiagnostics::RequestReadyFrameCapture(SurfaceId); +} + +void AHyperTwistHigherDimensionalTrainingGameMode::PersistRuntimeReadinessDiagnostics( + const FString& FamilyKey, + const AHyperTwistHigherDimensionalTrainingShellActor* TrainingShell) const +{ + if (TrainingShell == nullptr) + { + return; + } + + const FString DiagnosticsPath = FPaths::Combine( + FPaths::ProjectLogDir(), + TEXT("HyperTwistFirstRunLaunch-latest.log")); + const FString Result = + HyperTwistHigherDimensionalTrainingGameModeInternal::BuildReadinessResult(FamilyKey); + const FString Diagnostics = FString::Printf( + TEXT("[%s] [HigherDimensionalRuntime] family=%s canonical_elements=%d renderable_elements=%d projection=%s persistence=%s\nresult=%s\n"), + *FDateTime::UtcNow().ToIso8601(), + *FamilyKey, + TrainingShell->GetCanonicalElementCount(), + TrainingShell->GetRenderableElementCount(), + *TrainingShell->ProjectionProfileId, + *TrainingShell->PrimaryPersistenceBoundaryId, + *Result); + FFileHelper::SaveStringToFile( + Diagnostics, + *DiagnosticsPath, + FFileHelper::EEncodingOptions::ForceUTF8WithoutBOM, + &IFileManager::Get(), + FILEWRITE_Append); +} diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistHigherDimensionalTrainingShellActor.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistHigherDimensionalTrainingShellActor.cpp index a311ab2..f1264c2 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistHigherDimensionalTrainingShellActor.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistHigherDimensionalTrainingShellActor.cpp @@ -2,40 +2,116 @@ #include "Components/InstancedStaticMeshComponent.h" #include "Components/SceneComponent.h" +#include "Components/StaticMeshComponent.h" #include "Components/TextRenderComponent.h" #include "Engine/StaticMesh.h" +#include "HAL/FileManager.h" +#include "HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.h" +#include "Materials/MaterialInstanceDynamic.h" +#include "Materials/MaterialInterface.h" +#include "Misc/FileHelper.h" +#include "Misc/Paths.h" +#include "Serialization/JsonReader.h" +#include "Serialization/JsonSerializer.h" #include "UObject/ConstructorHelpers.h" +DEFINE_LOG_CATEGORY_STATIC(LogHyperTwistHigherDimensionalRuntime, Log, All); + namespace HyperTwistHigherDimensionalTrainingShellActorInternal { const TCHAR* Magic120CellFamilyKey = TEXT("magic120cell"); + const TCHAR* MagicCube5DFamilyKey = TEXT("magiccube5d"); + constexpr int32 PreviewColorLayerCount = 6; + constexpr int32 Magic120CellElementCount = 120; + constexpr int32 MagicCube5DOrderThreeElementCount = 242; + constexpr float ProjectionRefreshIntervalSeconds = 1.0f / 30.0f; + + bool IsEvenPermutation(const int32 A, const int32 B, const int32 C, const int32 D) + { + const int32 Values[4] = {A, B, C, D}; + int32 InversionCount = 0; + for (int32 Left = 0; Left < 4; ++Left) + { + for (int32 Right = Left + 1; Right < 4; ++Right) + { + if (Values[Left] > Values[Right]) + { + ++InversionCount; + } + } + } + + return InversionCount % 2 == 0; + } + + float ApplySign(const float Value, const bool bNegative) + { + return bNegative ? -Value : Value; + } } AHyperTwistHigherDimensionalTrainingShellActor::AHyperTwistHigherDimensionalTrainingShellActor() { - PrimaryActorTick.bCanEverTick = false; + PrimaryActorTick.bCanEverTick = true; SceneRoot = CreateDefaultSubobject(TEXT("SceneRoot")); SetRootComponent(SceneRoot); + PresentationFloor = CreateDefaultSubobject(TEXT("PresentationFloor")); + PresentationFloor->SetupAttachment(SceneRoot); + PresentationFloor->SetMobility(EComponentMobility::Movable); + PresentationFloor->SetCollisionEnabled(ECollisionEnabled::NoCollision); + PresentationFloor->SetCastShadow(false); + PresentationFloor->SetCanEverAffectNavigation(false); + PresentationFloor->SetRelativeLocation(FVector(0.0f, 0.0f, -360.0f)); + PresentationFloor->SetRelativeScale3D(FVector(14.0f, 14.0f, 0.05f)); + PreviewInstances = CreateDefaultSubobject(TEXT("PreviewInstances")); PreviewInstances->SetupAttachment(SceneRoot); - PreviewInstances->SetMobility(EComponentMobility::Static); - PreviewInstances->SetCollisionEnabled(ECollisionEnabled::NoCollision); - PreviewInstances->SetCastShadow(false); + PreviewColorLayers.Add(PreviewInstances); + + for (int32 LayerIndex = 1; + LayerIndex < HyperTwistHigherDimensionalTrainingShellActorInternal::PreviewColorLayerCount; + ++LayerIndex) + { + const FName ComponentName(*FString::Printf(TEXT("PreviewInstances%d"), LayerIndex)); + UInstancedStaticMeshComponent* PreviewLayer = + CreateDefaultSubobject(ComponentName); + PreviewLayer->SetupAttachment(SceneRoot); + PreviewColorLayers.Add(PreviewLayer); + } + + for (UInstancedStaticMeshComponent* PreviewLayer : PreviewColorLayers) + { + if (PreviewLayer == nullptr) + { + continue; + } + + PreviewLayer->SetMobility(EComponentMobility::Movable); + PreviewLayer->SetCollisionEnabled(ECollisionEnabled::NoCollision); + PreviewLayer->SetCastShadow(false); + PreviewLayer->SetCanEverAffectNavigation(false); + } LabelComponent = CreateDefaultSubobject(TEXT("LabelComponent")); LabelComponent->SetupAttachment(SceneRoot); LabelComponent->SetHorizontalAlignment(EHorizTextAligment::EHTA_Center); LabelComponent->SetVerticalAlignment(EVerticalTextAligment::EVRTA_TextCenter); - LabelComponent->SetWorldSize(56.0f); - LabelComponent->SetRelativeLocation(FVector(0.0f, 0.0f, 220.0f)); + LabelComponent->SetWorldSize(42.0f); + LabelComponent->SetRelativeLocation(FVector(0.0f, 0.0f, 470.0f)); + LabelComponent->SetCollisionEnabled(ECollisionEnabled::NoCollision); + // The native HUD owns readable status. A fixed world-space label becomes + // mirrored as soon as the orbit camera reaches its back face. + LabelComponent->SetVisibility(false); + LabelComponent->SetHiddenInGame(true); static ConstructorHelpers::FObjectFinder CubeMeshFinder( TEXT("/Engine/BasicShapes/Cube.Cube")); if (CubeMeshFinder.Succeeded()) { CubePreviewMesh = CubeMeshFinder.Object; + PresentationFloor->SetStaticMesh(CubeMeshFinder.Object); } static ConstructorHelpers::FObjectFinder SphereMeshFinder( @@ -44,6 +120,79 @@ AHyperTwistHigherDimensionalTrainingShellActor::AHyperTwistHigherDimensionalTrai { SpherePreviewMesh = SphereMeshFinder.Object; } + + static ConstructorHelpers::FObjectFinder RedMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Right.MI_HT_ClassicCube_Right")); + static ConstructorHelpers::FObjectFinder BlueMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Back.MI_HT_ClassicCube_Back")); + static ConstructorHelpers::FObjectFinder GreenMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Front.MI_HT_ClassicCube_Front")); + static ConstructorHelpers::FObjectFinder WhiteMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Up.MI_HT_ClassicCube_Up")); + static ConstructorHelpers::FObjectFinder YellowMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Down.MI_HT_ClassicCube_Down")); + static ConstructorHelpers::FObjectFinder OrangeMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Left.MI_HT_ClassicCube_Left")); + static ConstructorHelpers::FObjectFinder FloorMaterial( + TEXT("/Game/HyperTwistTraining/Materials/MI_HT_ClassicCube_Internal.MI_HT_ClassicCube_Internal")); + + PreviewMaterials = + { + RedMaterial.Object, + BlueMaterial.Object, + GreenMaterial.Object, + YellowMaterial.Object, + OrangeMaterial.Object, + WhiteMaterial.Object + }; + if (FloorMaterial.Succeeded()) + { + PresentationFloor->SetMaterial(0, FloorMaterial.Object); + } +} + +void AHyperTwistHigherDimensionalTrainingShellActor::BeginPlay() +{ + Super::BeginPlay(); + + LoadRuntimeState(); + RefreshPreview(); + + UE_LOG( + LogHyperTwistHigherDimensionalRuntime, + Display, + TEXT("Higher-dimensional presentation initialized with %d renderable elements (canonical=%d) for family %s."), + GetRenderableElementCount(), + GetCanonicalElementCount(), + *GetNormalizedFamilyKey()); + HyperTwistRuntimeDiagnostics::AppendEvent( + TEXT("HigherDimensionalPresentation"), + FString::Printf( + TEXT("Higher-dimensional presentation initialized with %d renderable elements (canonical=%d) for family %s."), + GetRenderableElementCount(), + GetCanonicalElementCount(), + *GetNormalizedFamilyKey())); + UE_LOG( + LogHyperTwistHigherDimensionalRuntime, + Display, + TEXT("Higher-dimensional projection palette initialized with %d distinct layer materials."), + GetDistinctPreviewMaterialCount()); + HyperTwistRuntimeDiagnostics::AppendEvent( + TEXT("HigherDimensionalPalette"), + FString::Printf( + TEXT("Higher-dimensional projection palette initialized with %d distinct layer materials."), + GetDistinctPreviewMaterialCount())); +} + +void AHyperTwistHigherDimensionalTrainingShellActor::EndPlay( + const EEndPlayReason::Type EndPlayReason) +{ + if (EndPlayReason == EEndPlayReason::Quit || EndPlayReason == EEndPlayReason::LevelTransition) + { + SaveRuntimeState(); + } + + Super::EndPlay(EndPlayReason); } void AHyperTwistHigherDimensionalTrainingShellActor::OnConstruction(const FTransform& Transform) @@ -55,35 +204,306 @@ void AHyperTwistHigherDimensionalTrainingShellActor::OnConstruction(const FTrans RefreshMetadataTags(); } -void AHyperTwistHigherDimensionalTrainingShellActor::RefreshPreview() +void AHyperTwistHigherDimensionalTrainingShellActor::Tick(const float DeltaSeconds) { - if (PreviewInstances == nullptr) + Super::Tick(DeltaSeconds); + + if (!bAutoRotateProjection || FMath::IsNearlyZero(ProjectionRotationSpeedDegrees)) { return; } - PreviewInstances->ClearInstances(); - - UStaticMesh* PreviewMesh = UsesMagic120CellPreview() ? SpherePreviewMesh : CubePreviewMesh; - if (PreviewMesh == nullptr) + ProjectionAngleDegrees = FMath::Fmod( + ProjectionAngleDegrees + (ProjectionRotationSpeedDegrees * DeltaSeconds), + 360.0f); + ProjectionRefreshAccumulator += DeltaSeconds; + if (ProjectionRefreshAccumulator >= + HyperTwistHigherDimensionalTrainingShellActorInternal::ProjectionRefreshIntervalSeconds) { - PreviewMesh = CubePreviewMesh != nullptr ? CubePreviewMesh : SpherePreviewMesh; + ProjectionRefreshAccumulator = 0.0f; + UpdatePreviewTransforms(); } +} - if (PreviewMesh == nullptr) - { - return; - } +void AHyperTwistHigherDimensionalTrainingShellActor::ConfigureForFamily( + const FString& InFamilyKey) +{ + const bool bUseMagic120Cell = InFamilyKey.Equals( + HyperTwistHigherDimensionalTrainingShellActorInternal::Magic120CellFamilyKey, + ESearchCase::IgnoreCase); - PreviewInstances->SetStaticMesh(PreviewMesh); - if (UsesMagic120CellPreview()) + FamilyKey = bUseMagic120Cell + ? HyperTwistHigherDimensionalTrainingShellActorInternal::Magic120CellFamilyKey + : HyperTwistHigherDimensionalTrainingShellActorInternal::MagicCube5DFamilyKey; + if (bUseMagic120Cell) { - BuildMagic120CellPreview(); + TrainingShellId = TEXT("phase6c/magic120cell/dedicated-training-shell"); + Title = TEXT("Magic120Cell // 120-cell projection lab"); + Summary = TEXT("Interactive first-party 4D projection surface with exactly 120 cell centers, layer focus, runtime-state seeding, and local persistence."); + MapAssetPath = TEXT("/Game/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining"); + ActivationProfileId = TEXT("magic120cell-cleanroom-runtime-activation"); + HostSurfaceId = TEXT("phase6c/magic120cell/runtime-host-surface"); + LaunchSurfaceId = TEXT("phase6c/magic120cell/dedicated-training-launch-surface"); + ViewContextSurfaceId = TEXT("phase6c/magic120cell/dedicated-training-view-context-surface"); + SessionSurfaceId = TEXT("phase6c/magic120cell/dedicated-training-session-surface"); + InteractiveSceneSurfaceId = TEXT("phase6c/magic120cell/interactive-scene-surface"); + SceneContextId = TEXT("phase6c/magic120cell/interactive-scene-context"); + PuzzleId = TEXT("polychoron/magic120cell"); + RuntimeModeId = TEXT("magic120cell-full-color-runtime-v1"); + ProjectionProfileId = TEXT("magic120cell-4d-projection-distance-v1"); + PrimaryPersistenceBoundaryId = TEXT("magic120cell-persistence-boundary"); } else { - BuildMagicCube5DPreview(); + TrainingShellId = TEXT("phase6c/magiccube5d/dedicated-training-shell"); + Title = TEXT("MagicCube5D // order-3 projection lab"); + Summary = TEXT("Interactive first-party 5D projection surface with all 242 non-central order-3 cells, depth-layer focus, runtime-state seeding, and local persistence."); + MapAssetPath = TEXT("/Game/HyperTwistTraining/Maps/L_HyperTwist_MagicCube5DTraining"); + ActivationProfileId = TEXT("magiccube5d-cleanroom-runtime-activation"); + HostSurfaceId = TEXT("phase6c/magiccube5d/runtime-host-surface"); + LaunchSurfaceId = TEXT("phase6c/magiccube5d/dedicated-training-launch-surface"); + ViewContextSurfaceId = TEXT("phase6c/magiccube5d/dedicated-training-view-context-surface"); + SessionSurfaceId = TEXT("phase6c/magiccube5d/dedicated-training-session-surface"); + InteractiveSceneSurfaceId = TEXT("phase6c/magiccube5d/interactive-scene-surface"); + SceneContextId = TEXT("phase6c/magiccube5d/interactive-scene-context"); + PuzzleId = TEXT("hypercube/magiccube5d/order3"); + RuntimeModeId = TEXT("magiccube5d-order3-runtime-v1"); + ProjectionProfileId = TEXT("magiccube5d-5d-projection-distance-v1"); + PrimaryPersistenceBoundaryId = TEXT("magiccube5d-persistence-boundary"); } + + AuthoringManifestRelativePath = + TEXT("docs/generated/higher_dimensional_training_maps/phase6c_dedicated_family_map_manifest.json"); + bDedicatedFamilyOwnership = true; + TrainingShellTags = + { + TEXT("phase6c"), + FString::Printf(TEXT("family:%s"), *FamilyKey), + TEXT("host:dedicated-family-map"), + FString::Printf(TEXT("projection:%s"), *ProjectionProfileId), + FString::Printf(TEXT("persistence:%s"), *PrimaryPersistenceBoundaryId), + TEXT("presentation:runtime-owned") + }; + + VisibleProjectionLayer = FMath::Clamp(VisibleProjectionLayer, -1, GetProjectionLayerCount() - 1); + RefreshPreview(); + RefreshLabel(); + RefreshMetadataTags(); +} + +void AHyperTwistHigherDimensionalTrainingShellActor::ToggleAutoRotateProjection() +{ + bAutoRotateProjection = !bAutoRotateProjection; + LastRuntimeAction = bAutoRotateProjection ? TEXT("auto-rotation resumed") : TEXT("auto-rotation paused"); +} + +void AHyperTwistHigherDimensionalTrainingShellActor::NudgeProjection(const float DeltaDegrees) +{ + ProjectionAngleDegrees = FMath::Fmod(ProjectionAngleDegrees + DeltaDegrees + 360.0f, 360.0f); + LastRuntimeAction = FString::Printf(TEXT("projection rotated %.0f degrees"), DeltaDegrees); + UpdatePreviewTransforms(); +} + +void AHyperTwistHigherDimensionalTrainingShellActor::CycleProjectionLayer(const int32 Direction) +{ + const int32 LayerCount = GetProjectionLayerCount(); + if (LayerCount <= 0 || Direction == 0) + { + return; + } + + const int32 StateCount = LayerCount + 1; + const int32 CurrentState = VisibleProjectionLayer + 1; + const int32 NextState = ((CurrentState + Direction) % StateCount + StateCount) % StateCount; + VisibleProjectionLayer = NextState - 1; + LastRuntimeAction = FString::Printf(TEXT("layer focus: %s"), *GetProjectionLayerLabel()); + UpdatePreviewTransforms(); +} + +void AHyperTwistHigherDimensionalTrainingShellActor::ResetProjection() +{ + ProjectionAngleDegrees = 0.0f; + VisibleProjectionLayer = -1; + RuntimeStateSeed = 0; + bAutoRotateProjection = true; + LastRuntimeAction = TEXT("projection and state reset to solved defaults"); + UpdatePreviewTransforms(); +} + +void AHyperTwistHigherDimensionalTrainingShellActor::CreateScrambledRuntimeState() +{ + RuntimeStateSeed = RuntimeStateSeed >= MAX_int32 - 1 ? 1 : RuntimeStateSeed + 1; + ProjectionAngleDegrees = FMath::Fmod( + ProjectionAngleDegrees + 37.0f + static_cast(RuntimeStateSeed % 29), + 360.0f); + LastRuntimeAction = FString::Printf(TEXT("runtime state seed %d applied"), RuntimeStateSeed); + UpdatePreviewTransforms(); +} + +bool AHyperTwistHigherDimensionalTrainingShellActor::SaveRuntimeState() +{ + const FString StatePath = GetRuntimeStatePath(); + if (!IFileManager::Get().MakeDirectory(*FPaths::GetPath(StatePath), true)) + { + LastPersistenceStatus = TEXT("save failed: state directory unavailable"); + return false; + } + + const TSharedRef StateObject = MakeShared(); + StateObject->SetStringField(TEXT("schemaVersion"), TEXT("hypertwist/higher-dimensional-runtime-state/v1")); + StateObject->SetStringField(TEXT("familyKey"), GetNormalizedFamilyKey()); + StateObject->SetStringField(TEXT("puzzleId"), PuzzleId); + StateObject->SetNumberField(TEXT("projectionAngleDegrees"), ProjectionAngleDegrees); + StateObject->SetNumberField(TEXT("visibleProjectionLayer"), VisibleProjectionLayer); + StateObject->SetNumberField(TEXT("runtimeStateSeed"), RuntimeStateSeed); + StateObject->SetBoolField(TEXT("autoRotateProjection"), bAutoRotateProjection); + StateObject->SetStringField(TEXT("savedAtUtc"), FDateTime::UtcNow().ToIso8601()); + + FString SerializedState; + const TSharedRef> Writer = TJsonWriterFactory<>::Create(&SerializedState); + if (!FJsonSerializer::Serialize(StateObject, Writer) + || !FFileHelper::SaveStringToFile(SerializedState, *StatePath, FFileHelper::EEncodingOptions::ForceUTF8WithoutBOM)) + { + LastPersistenceStatus = TEXT("save failed: state file could not be written"); + return false; + } + + LastPersistenceStatus = TEXT("saved local runtime state"); + LastRuntimeAction = LastPersistenceStatus; + return true; +} + +bool AHyperTwistHigherDimensionalTrainingShellActor::LoadRuntimeState() +{ + const FString StatePath = GetRuntimeStatePath(); + FString SerializedState; + if (!FFileHelper::LoadFileToString(SerializedState, *StatePath)) + { + LastPersistenceStatus = TEXT("no saved state; using solved defaults"); + return false; + } + + TSharedPtr StateObject; + if (!FJsonSerializer::Deserialize(TJsonReaderFactory<>::Create(SerializedState), StateObject) + || !StateObject.IsValid()) + { + LastPersistenceStatus = TEXT("load rejected: malformed state file"); + return false; + } + + FString StoredFamilyKey; + if (!StateObject->TryGetStringField(TEXT("familyKey"), StoredFamilyKey) + || !StoredFamilyKey.Equals(GetNormalizedFamilyKey(), ESearchCase::IgnoreCase)) + { + LastPersistenceStatus = TEXT("load rejected: family mismatch"); + return false; + } + + double StoredProjectionAngle = 0.0; + double StoredVisibleLayer = -1.0; + double StoredRuntimeStateSeed = 0.0; + bool bStoredAutoRotate = true; + if (!StateObject->TryGetNumberField(TEXT("projectionAngleDegrees"), StoredProjectionAngle) + || !StateObject->TryGetNumberField(TEXT("visibleProjectionLayer"), StoredVisibleLayer) + || !StateObject->TryGetNumberField(TEXT("runtimeStateSeed"), StoredRuntimeStateSeed) + || !StateObject->TryGetBoolField(TEXT("autoRotateProjection"), bStoredAutoRotate)) + { + LastPersistenceStatus = TEXT("load rejected: incomplete state fields"); + return false; + } + + ProjectionAngleDegrees = FMath::Fmod(static_cast(StoredProjectionAngle) + 360.0f, 360.0f); + VisibleProjectionLayer = FMath::Clamp( + static_cast(StoredVisibleLayer), + -1, + GetProjectionLayerCount() - 1); + RuntimeStateSeed = FMath::Max(static_cast(StoredRuntimeStateSeed), 0); + bAutoRotateProjection = bStoredAutoRotate; + LastPersistenceStatus = TEXT("loaded local runtime state"); + LastRuntimeAction = LastPersistenceStatus; + UpdatePreviewTransforms(); + return true; +} + +int32 AHyperTwistHigherDimensionalTrainingShellActor::GetRenderableElementCount() const +{ + int32 ElementCount = 0; + for (const UInstancedStaticMeshComponent* PreviewLayer : PreviewColorLayers) + { + if (PreviewLayer != nullptr) + { + ElementCount += PreviewLayer->GetInstanceCount(); + } + } + return ElementCount; +} + +int32 AHyperTwistHigherDimensionalTrainingShellActor::GetCanonicalElementCount() const +{ + return GetCanonicalElementCountForFamily(GetNormalizedFamilyKey()); +} + +int32 AHyperTwistHigherDimensionalTrainingShellActor::GetProjectionLayerCount() const +{ + return UsesMagic120CellPreview() ? 6 : 3; +} + +int32 AHyperTwistHigherDimensionalTrainingShellActor::GetDistinctPreviewMaterialCount() const +{ + TSet DistinctMaterials; + for (const UMaterialInterface* Material : PreviewMaterials) + { + if (Material != nullptr) + { + DistinctMaterials.Add(Material); + } + } + + return DistinctMaterials.Num(); +} + +FString AHyperTwistHigherDimensionalTrainingShellActor::GetProjectionLayerLabel() const +{ + return VisibleProjectionLayer < 0 + ? TEXT("all layers") + : FString::Printf(TEXT("layer %d of %d"), VisibleProjectionLayer + 1, GetProjectionLayerCount()); +} + +FString AHyperTwistHigherDimensionalTrainingShellActor::GetRuntimeStatusSummary() const +{ + return FString::Printf( + TEXT("%d / %d elements | %s | state seed %d | %s"), + GetRenderableElementCount(), + GetCanonicalElementCount(), + *GetProjectionLayerLabel(), + RuntimeStateSeed, + bAutoRotateProjection ? TEXT("auto-rotating") : TEXT("rotation paused")); +} + +FString AHyperTwistHigherDimensionalTrainingShellActor::GetRuntimeStatePath() const +{ + return FPaths::Combine( + FPaths::ProjectSavedDir(), + TEXT("HyperTwist"), + TEXT("HigherDimensional"), + FString::Printf(TEXT("%s-runtime-state.json"), *GetNormalizedFamilyKey())); +} + +int32 AHyperTwistHigherDimensionalTrainingShellActor::GetCanonicalElementCountForFamily( + const FString& InFamilyKey) +{ + return InFamilyKey.Equals( + HyperTwistHigherDimensionalTrainingShellActorInternal::Magic120CellFamilyKey, + ESearchCase::IgnoreCase) + ? HyperTwistHigherDimensionalTrainingShellActorInternal::Magic120CellElementCount + : HyperTwistHigherDimensionalTrainingShellActorInternal::MagicCube5DOrderThreeElementCount; +} + +void AHyperTwistHigherDimensionalTrainingShellActor::RefreshPreview() +{ + RebuildSourcePoints(); + ConfigurePreviewComponents(); + UpdatePreviewTransforms(); } void AHyperTwistHigherDimensionalTrainingShellActor::RefreshLabel() @@ -93,9 +513,10 @@ void AHyperTwistHigherDimensionalTrainingShellActor::RefreshLabel() return; } + LabelComponent->SetRelativeLocation(FVector(0.0f, 0.0f, PreviewHeightOffset + PreviewRadius + 120.0f)); LabelComponent->SetText(BuildLabelText()); LabelComponent->SetTextRenderColor( - UsesMagic120CellPreview() ? FColor(96, 208, 255) : FColor(255, 164, 96)); + UsesMagic120CellPreview() ? FColor(54, 244, 255) : FColor(255, 177, 74)); } void AHyperTwistHigherDimensionalTrainingShellActor::RefreshMetadataTags() @@ -137,56 +558,305 @@ void AHyperTwistHigherDimensionalTrainingShellActor::RefreshMetadataTags() Tags = MoveTemp(NewTags); } -void AHyperTwistHigherDimensionalTrainingShellActor::BuildMagic120CellPreview() +void AHyperTwistHigherDimensionalTrainingShellActor::RebuildSourcePoints() { - AddPreviewInstance(FVector(0.0f, 0.0f, PreviewHeightOffset), 1.1f); + SourcePoints4D.Reset(); + SourceFifthCoordinates.Reset(); + SourceLayerIndices.Reset(); + SourceColorIndices.Reset(); - for (int32 Index = 0; Index < 12; ++Index) + if (UsesMagic120CellPreview()) { - const float AngleRadians = - (static_cast(Index) / 12.0f) * 2.0f * PI; - const float AlternatingHeight = - PreviewHeightOffset + ((Index % 2 == 0) ? 45.0f : -45.0f); - const FVector Position( - FMath::Cos(AngleRadians) * PreviewRadius, - FMath::Sin(AngleRadians) * PreviewRadius, - AlternatingHeight); - AddPreviewInstance(Position, 0.48f); + BuildMagic120CellSourcePoints(); + } + else + { + BuildMagicCube5DSourcePoints(); } - - AddPreviewInstance(FVector(0.0f, 0.0f, PreviewHeightOffset + 190.0f), 0.42f); - AddPreviewInstance(FVector(0.0f, 0.0f, PreviewHeightOffset - 190.0f), 0.42f); } -void AHyperTwistHigherDimensionalTrainingShellActor::BuildMagicCube5DPreview() +void AHyperTwistHigherDimensionalTrainingShellActor::BuildMagic120CellSourcePoints() { - AddPreviewInstance(FVector(0.0f, 0.0f, PreviewHeightOffset), 1.0f); + using namespace HyperTwistHigherDimensionalTrainingShellActorInternal; - const TArray AxisOffsets = + for (int32 Axis = 0; Axis < 4; ++Axis) { - FVector(PreviewRadius, 0.0f, PreviewHeightOffset), - FVector(-PreviewRadius, 0.0f, PreviewHeightOffset), - FVector(0.0f, PreviewRadius, PreviewHeightOffset), - FVector(0.0f, -PreviewRadius, PreviewHeightOffset), - FVector(0.0f, 0.0f, PreviewHeightOffset + PreviewRadius), - FVector(0.0f, 0.0f, PreviewHeightOffset - PreviewRadius), - FVector(PreviewRadius * 0.78f, PreviewRadius * 0.78f, PreviewHeightOffset), - FVector(-PreviewRadius * 0.78f, -PreviewRadius * 0.78f, PreviewHeightOffset), - FVector(PreviewRadius * 0.78f, -PreviewRadius * 0.78f, PreviewHeightOffset), - FVector(-PreviewRadius * 0.78f, PreviewRadius * 0.78f, PreviewHeightOffset) + for (int32 Sign = -1; Sign <= 1; Sign += 2) + { + float Coordinates[4] = {0.0f, 0.0f, 0.0f, 0.0f}; + Coordinates[Axis] = static_cast(Sign); + const int32 Layer = FMath::Clamp( + FMath::FloorToInt(((Coordinates[3] + 1.001f) / 2.002f) * 6.0f), + 0, + 5); + AddSourcePoint( + FVector4(Coordinates[0], Coordinates[1], Coordinates[2], Coordinates[3]), + 0.0f, + Layer, + SourcePoints4D.Num() % PreviewColorLayerCount); + } + } + + for (int32 SignMask = 0; SignMask < 16; ++SignMask) + { + const FVector4 Point( + ApplySign(0.5f, (SignMask & 1) != 0), + ApplySign(0.5f, (SignMask & 2) != 0), + ApplySign(0.5f, (SignMask & 4) != 0), + ApplySign(0.5f, (SignMask & 8) != 0)); + const int32 Layer = FMath::Clamp( + FMath::FloorToInt(((Point.W + 1.001f) / 2.002f) * 6.0f), + 0, + 5); + AddSourcePoint(Point, 0.0f, Layer, SourcePoints4D.Num() % PreviewColorLayerCount); + } + + const float GoldenRatio = (1.0f + FMath::Sqrt(5.0f)) * 0.5f; + const float BaseValues[4] = + { + 0.0f, + 0.5f, + GoldenRatio * 0.5f, + 1.0f / (2.0f * GoldenRatio) }; - for (const FVector& Offset : AxisOffsets) + for (int32 A = 0; A < 4; ++A) { - AddPreviewInstance(Offset, 0.42f); + for (int32 B = 0; B < 4; ++B) + { + if (B == A) + { + continue; + } + for (int32 C = 0; C < 4; ++C) + { + if (C == A || C == B) + { + continue; + } + for (int32 D = 0; D < 4; ++D) + { + if (D == A || D == B || D == C || !IsEvenPermutation(A, B, C, D)) + { + continue; + } + + const int32 Permutation[4] = {A, B, C, D}; + for (int32 SignMask = 0; SignMask < 8; ++SignMask) + { + float Coordinates[4] = {0.0f, 0.0f, 0.0f, 0.0f}; + int32 SignIndex = 0; + for (int32 CoordinateIndex = 0; CoordinateIndex < 4; ++CoordinateIndex) + { + const float Value = BaseValues[Permutation[CoordinateIndex]]; + if (FMath::IsNearlyZero(Value)) + { + continue; + } + Coordinates[CoordinateIndex] = ApplySign( + Value, + (SignMask & (1 << SignIndex)) != 0); + ++SignIndex; + } + + const int32 Layer = FMath::Clamp( + FMath::FloorToInt(((Coordinates[3] + 1.001f) / 2.002f) * 6.0f), + 0, + 5); + AddSourcePoint( + FVector4(Coordinates[0], Coordinates[1], Coordinates[2], Coordinates[3]), + 0.0f, + Layer, + SourcePoints4D.Num() % PreviewColorLayerCount); + } + } + } + } } + + ensureMsgf( + SourcePoints4D.Num() == Magic120CellElementCount, + TEXT("Magic120Cell projection source must contain exactly 120 cell centers; observed %d."), + SourcePoints4D.Num()); +} + +void AHyperTwistHigherDimensionalTrainingShellActor::BuildMagicCube5DSourcePoints() +{ + using namespace HyperTwistHigherDimensionalTrainingShellActorInternal; + + for (int32 X = -1; X <= 1; ++X) + { + for (int32 Y = -1; Y <= 1; ++Y) + { + for (int32 Z = -1; Z <= 1; ++Z) + { + for (int32 W = -1; W <= 1; ++W) + { + for (int32 V = -1; V <= 1; ++V) + { + if (X == 0 && Y == 0 && Z == 0 && W == 0 && V == 0) + { + continue; + } + + const int32 ColorIndex = FMath::Abs( + (X * 31) + (Y * 17) + (Z * 13) + (W * 7) + (V * 3)) + % PreviewColorLayerCount; + AddSourcePoint( + FVector4( + static_cast(X), + static_cast(Y), + static_cast(Z), + static_cast(W)), + static_cast(V), + V + 1, + ColorIndex); + } + } + } + } + } + + ensureMsgf( + SourcePoints4D.Num() == MagicCube5DOrderThreeElementCount, + TEXT("MagicCube5D order-3 projection source must contain exactly 242 non-central cells; observed %d."), + SourcePoints4D.Num()); +} + +void AHyperTwistHigherDimensionalTrainingShellActor::UpdatePreviewTransforms() +{ + ClearPreviewInstances(); + if (SourcePoints4D.Num() != SourceFifthCoordinates.Num() + || SourcePoints4D.Num() != SourceLayerIndices.Num() + || SourcePoints4D.Num() != SourceColorIndices.Num()) + { + return; + } + + const bool bMagic120Cell = UsesMagic120CellPreview(); + for (int32 Index = 0; Index < SourcePoints4D.Num(); ++Index) + { + if (VisibleProjectionLayer >= 0 && SourceLayerIndices[Index] != VisibleProjectionLayer) + { + continue; + } + + const FVector ProjectedPoint = bMagic120Cell + ? ProjectMagic120CellPoint(SourcePoints4D[Index]) + : ProjectMagicCube5DPoint(SourcePoints4D[Index], SourceFifthCoordinates[Index]); + const int32 ColorIndex = FMath::Abs( + SourceColorIndices[Index] + RuntimeStateSeed + (Index * FMath::Max(RuntimeStateSeed, 1))) + % HyperTwistHigherDimensionalTrainingShellActorInternal::PreviewColorLayerCount; + const float ElementScale = bMagic120Cell ? 0.145f : 0.092f; + AddPreviewInstance(ProjectedPoint, ElementScale, ColorIndex); + } +} + +void AHyperTwistHigherDimensionalTrainingShellActor::ClearPreviewInstances() +{ + for (UInstancedStaticMeshComponent* PreviewLayer : PreviewColorLayers) + { + if (PreviewLayer != nullptr) + { + PreviewLayer->ClearInstances(); + } + } +} + +void AHyperTwistHigherDimensionalTrainingShellActor::ConfigurePreviewComponents() +{ + using namespace HyperTwistHigherDimensionalTrainingShellActorInternal; + + PreviewDynamicMaterials.SetNum(PreviewColorLayerCount); + UStaticMesh* PreviewMesh = UsesMagic120CellPreview() ? SpherePreviewMesh : CubePreviewMesh; + if (PreviewMesh == nullptr) + { + PreviewMesh = CubePreviewMesh != nullptr ? CubePreviewMesh : SpherePreviewMesh; + } + + for (int32 LayerIndex = 0; LayerIndex < PreviewColorLayers.Num(); ++LayerIndex) + { + UInstancedStaticMeshComponent* PreviewLayer = PreviewColorLayers[LayerIndex]; + if (PreviewLayer == nullptr) + { + continue; + } + + PreviewLayer->SetStaticMesh(PreviewMesh); + if (PreviewMaterials.IsValidIndex(LayerIndex) && PreviewMaterials[LayerIndex] != nullptr) + { + UMaterialInstanceDynamic* LayerMaterial = + PreviewDynamicMaterials.IsValidIndex(LayerIndex) + ? PreviewDynamicMaterials[LayerIndex] + : nullptr; + if (LayerMaterial == nullptr) + { + LayerMaterial = UMaterialInstanceDynamic::Create( + PreviewMaterials[LayerIndex], + this, + FName(*FString::Printf(TEXT("HigherDimensionalLayerMaterial%d"), LayerIndex))); + PreviewDynamicMaterials[LayerIndex] = LayerMaterial; + } + if (LayerMaterial != nullptr) + { + LayerMaterial->SetScalarParameterValue(TEXT("GlowStrength"), 0.8f); + LayerMaterial->SetScalarParameterValue(TEXT("FaceOpacity"), 1.0f); + PreviewLayer->SetMaterial(0, LayerMaterial); + } + else + { + PreviewLayer->SetMaterial(0, PreviewMaterials[LayerIndex]); + } + } + } + + if (PresentationFloor != nullptr) + { + UMaterialInterface* FloorMaterial = PresentationFloor->GetMaterial(0); + if (FloorDynamicMaterial == nullptr && FloorMaterial != nullptr) + { + FloorDynamicMaterial = UMaterialInstanceDynamic::Create( + FloorMaterial, + this, + TEXT("HigherDimensionalFloorMaterial")); + } + if (FloorDynamicMaterial != nullptr) + { + const FLinearColor FloorColor = UsesMagic120CellPreview() + ? FLinearColor(0.008f, 0.018f, 0.032f) + : FLinearColor(0.026f, 0.012f, 0.006f); + FloorDynamicMaterial->SetVectorParameterValue(TEXT("BaseColor"), FloorColor); + FloorDynamicMaterial->SetScalarParameterValue(TEXT("GlowStrength"), 0.015f); + PresentationFloor->SetMaterial(0, FloorDynamicMaterial); + } + } +} + +void AHyperTwistHigherDimensionalTrainingShellActor::AddSourcePoint( + const FVector4& Point4D, + const float FifthCoordinate, + const int32 LayerIndex, + const int32 ColorIndex) +{ + SourcePoints4D.Add(Point4D); + SourceFifthCoordinates.Add(FifthCoordinate); + SourceLayerIndices.Add(LayerIndex); + SourceColorIndices.Add(ColorIndex); } void AHyperTwistHigherDimensionalTrainingShellActor::AddPreviewInstance( const FVector& RelativeLocation, - const float UniformScale) + const float UniformScale, + const int32 ColorIndex) { - if (PreviewInstances == nullptr) + if (PreviewColorLayers.Num() == 0) + { + return; + } + + const int32 LayerIndex = FMath::Abs(ColorIndex) % PreviewColorLayers.Num(); + UInstancedStaticMeshComponent* PreviewLayer = PreviewColorLayers[LayerIndex]; + if (PreviewLayer == nullptr || PreviewLayer->GetStaticMesh() == nullptr) { return; } @@ -194,23 +864,79 @@ void AHyperTwistHigherDimensionalTrainingShellActor::AddPreviewInstance( FTransform InstanceTransform; InstanceTransform.SetLocation(RelativeLocation); InstanceTransform.SetScale3D(FVector(UniformScale)); - PreviewInstances->AddInstance(InstanceTransform); + PreviewLayer->AddInstance(InstanceTransform); +} + +FVector AHyperTwistHigherDimensionalTrainingShellActor::ProjectMagic120CellPoint( + const FVector4& Point) const +{ + const float Angle = FMath::DegreesToRadians(ProjectionAngleDegrees); + const float SecondaryAngle = Angle * 0.37f; + const float CosAngle = FMath::Cos(Angle); + const float SinAngle = FMath::Sin(Angle); + const float CosSecondary = FMath::Cos(SecondaryAngle); + const float SinSecondary = FMath::Sin(SecondaryAngle); + + const float RotatedX = (Point.X * CosAngle) - (Point.W * SinAngle); + const float RotatedW = (Point.X * SinAngle) + (Point.W * CosAngle); + const float RotatedY = (Point.Y * CosSecondary) - (Point.Z * SinSecondary); + const float RotatedZ = (Point.Y * SinSecondary) + (Point.Z * CosSecondary); + constexpr float ProjectionDistance = 3.2f; + const float Perspective = ProjectionDistance / + FMath::Max(ProjectionDistance - RotatedW, 0.35f); + + return FVector(RotatedX, RotatedY, RotatedZ) * PreviewRadius * Perspective + + FVector(0.0f, 0.0f, PreviewHeightOffset); +} + +FVector AHyperTwistHigherDimensionalTrainingShellActor::ProjectMagicCube5DPoint( + const FVector4& Point, + const float FifthCoordinate) const +{ + const float Angle = FMath::DegreesToRadians(ProjectionAngleDegrees); + const float CosAngle = FMath::Cos(Angle); + const float SinAngle = FMath::Sin(Angle); + const float SecondaryAngle = Angle * 0.73f; + const float CosSecondary = FMath::Cos(SecondaryAngle); + const float SinSecondary = FMath::Sin(SecondaryAngle); + + const float RotatedX = (Point.X * CosAngle) - (Point.W * SinAngle); + const float RotatedW = (Point.X * SinAngle) + (Point.W * CosAngle); + const float RotatedY = (Point.Y * CosSecondary) - (FifthCoordinate * SinSecondary); + const float RotatedV = (Point.Y * SinSecondary) + (FifthCoordinate * CosSecondary); + + constexpr float FiveDimensionalProjectionDistance = 3.6f; + const float FiveDimensionalPerspective = FiveDimensionalProjectionDistance / + FMath::Max(FiveDimensionalProjectionDistance - RotatedV, 0.4f); + const FVector4 Projected4D( + RotatedX * FiveDimensionalPerspective, + RotatedY * FiveDimensionalPerspective, + Point.Z * FiveDimensionalPerspective, + RotatedW * FiveDimensionalPerspective); + + constexpr float FourDimensionalProjectionDistance = 4.2f; + const float FourDimensionalPerspective = FourDimensionalProjectionDistance / + FMath::Max(FourDimensionalProjectionDistance - Projected4D.W, 0.45f); + const float SpatialScale = PreviewRadius * 0.42f; + return FVector(Projected4D.X, Projected4D.Y, Projected4D.Z) + * SpatialScale + * FourDimensionalPerspective + + FVector(0.0f, 0.0f, PreviewHeightOffset); } FText AHyperTwistHigherDimensionalTrainingShellActor::BuildLabelText() const { const FString EffectiveTitle = !Title.IsEmpty() ? Title - : (UsesMagic120CellPreview() ? TEXT("Magic120Cell Training Shell") : TEXT("MagicCube5D Training Shell")); - - const FString EffectiveSceneContextId = !SceneContextId.IsEmpty() - ? SceneContextId - : TEXT("scene-context/pending"); + : (UsesMagic120CellPreview() + ? TEXT("Magic120Cell // 120-cell projection lab") + : TEXT("MagicCube5D // order-3 projection lab")); return FText::FromString(FString::Printf( - TEXT("%s\n%s"), + TEXT("%s\n%d canonical elements // %s"), *EffectiveTitle, - *EffectiveSceneContextId)); + GetCanonicalElementCount(), + *GetProjectionLayerLabel())); } bool AHyperTwistHigherDimensionalTrainingShellActor::UsesMagic120CellPreview() const @@ -219,3 +945,10 @@ bool AHyperTwistHigherDimensionalTrainingShellActor::UsesMagic120CellPreview() c HyperTwistHigherDimensionalTrainingShellActorInternal::Magic120CellFamilyKey, ESearchCase::IgnoreCase); } + +FString AHyperTwistHigherDimensionalTrainingShellActor::GetNormalizedFamilyKey() const +{ + return UsesMagic120CellPreview() + ? HyperTwistHigherDimensionalTrainingShellActorInternal::Magic120CellFamilyKey + : HyperTwistHigherDimensionalTrainingShellActorInternal::MagicCube5DFamilyKey; +} diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/ThirdParty/rob-twophase/prun.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/ThirdParty/rob-twophase/prun.cpp index dc685b7..be22af1 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/ThirdParty/rob-twophase/prun.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/ThirdParty/rob-twophase/prun.cpp @@ -375,7 +375,7 @@ namespace prun { return precheck[coord::N_SLICE2 * corners + coord::slice_to_slice2(slice)]; } - bool init(bool file) { + bool init(bool file, const std::string& save_path) { init_base(); if (!file) { @@ -385,7 +385,7 @@ namespace prun { return true; } - FILE *f = open_file(SAVE, "rb"); + FILE *f = open_file(save_path, "rb"); int err = 0; if (f == NULL) { @@ -393,7 +393,9 @@ namespace prun { init_phase2(); init_precheck(); - f = open_file(SAVE, "wb"); + f = open_file(save_path, "wb"); + if (f == NULL) + return false; if (fwrite(phase1, sizeof(prun1), N_FS1TWIST, f) != N_FS1TWIST) err = 1; if (fwrite(phase2, sizeof(uint8_t), N_CORNUD2, f) != N_CORNUD2) @@ -401,7 +403,7 @@ namespace prun { if (fwrite(precheck, sizeof(uint8_t), N_CSLICE2, f) != N_CSLICE2) err = 1; if (err) - remove(SAVE.c_str()); // delete file if there was some error writing it + remove(save_path.c_str()); // delete file if there was some error writing it } else { phase1 = new prun1[N_FS1TWIST]; phase2 = new uint8_t[N_CORNUD2]; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/ThirdParty/rob-twophase/prun.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/ThirdParty/rob-twophase/prun.h index c52a172..0bb2baa 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/ThirdParty/rob-twophase/prun.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/ThirdParty/rob-twophase/prun.h @@ -6,6 +6,7 @@ #define __PRUN__ #include +#include #include "coord.h" #include "sym.h" @@ -24,12 +25,13 @@ namespace prun { extern prun1 *phase1; extern uint8_t *phase2; extern uint8_t *precheck; + extern const std::string SAVE; int get_phase1(int flip, int slice, int twist, int togo, move::mask& next); int get_phase2(int corners, int udedges); int get_precheck(int corners, int slice); - bool init(bool file = true); + bool init(bool file = true, const std::string& save_path = SAVE); } diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.h new file mode 100644 index 0000000..8b5f494 --- /dev/null +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.h @@ -0,0 +1,31 @@ +#pragma once + +#include "CoreMinimal.h" + +namespace HyperTwistRuntimeDiagnostics +{ + /** + * Initialize the per-process diagnostics file. The optional + * -HyperTwistDiagnosticsLog= command-line value overrides the + * normal Saved/Logs/HyperTwistRuntime-latest.log destination. + */ + UNREALHYPERTWIST_API bool InitializeSession(); + + /** Return the resolved direct diagnostics path for this process. */ + UNREALHYPERTWIST_API FString GetDiagnosticsLogPath(); + + /** + * Append a timestamped semantic event without relying on UE_LOG. This + * remains available in stock Shipping builds where engine logging is + * compiled out. + */ + UNREALHYPERTWIST_API bool AppendEvent( + const FString& Stage, + const FString& Message); + + /** True only when the packaged process explicitly requests a semantic-ready frame. */ + UNREALHYPERTWIST_API bool IsReadyFrameCaptureRequested(); + + /** Capture the complete game window, including Slate, into Saved diagnostics evidence. */ + UNREALHYPERTWIST_API bool RequestReadyFrameCapture(const FString& SurfaceId); +} diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeActor.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeActor.h index b4b0a7f..ecf6c07 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeActor.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeActor.h @@ -15,6 +15,9 @@ class UNREALHYPERTWIST_API AHyperTwistClassicCubeActor : public AActor public: AHyperTwistClassicCubeActor(); + /** A 3x3x3 cube has 26 visible cubies; the enclosed core is intentionally not rendered. */ + static constexpr int32 ExpectedRenderablePieceCount = 26; + /** Size of each cubelet (one small cube) in unreal units. */ UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Cube") float CubeletSize = 10.0f; @@ -39,6 +42,14 @@ public: UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Cube") UMaterialInterface* InternalMaterial; + /** Low emissive baseline that keeps every sticker readable in sparse training maps. */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Cube|Presentation", meta = (ClampMin = "0.0")) + float BaseGlowStrength = 0.65f; + + /** Emissive strength applied to the solver-hinted world-facing side. */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Cube|Presentation", meta = (ClampMin = "0.0")) + float HintGlowStrength = 7.5f; + /** Duration of a quarter-turn animation in seconds. */ UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Cube") float TurnDuration = 0.15f; @@ -138,6 +149,22 @@ public: UFUNCTION(BlueprintPure, Category = "HyperTwist|Cube") bool IsSettled() const; + /** Number of generated, registered cubelet mesh components with geometry. */ + UFUNCTION(BlueprintPure, Category = "HyperTwist|Cube|Diagnostics") + int32 GetRenderablePieceCount() const; + + /** True when cubie occupancy, sticker orientation, and live mesh transforms form one coherent 3x3x3 cube. */ + UFUNCTION(BlueprintPure, Category = "HyperTwist|Cube|Diagnostics") + bool HasValidRenderableState() const; + + /** Empty for a coherent renderable cube; otherwise identifies the first violated presentation invariant. */ + UFUNCTION(BlueprintPure, Category = "HyperTwist|Cube|Diagnostics") + FString GetRenderableStateValidationError() const; + + /** Rebuild transient procedural geometry when a cooked map did not preserve a complete presentation. */ + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Cube|Diagnostics") + bool EnsureRenderablePresentation(); + virtual void OnConstruction(const FTransform& Transform) override; protected: @@ -167,7 +194,7 @@ private: TArray PieceIndices; FQuat PivotStartRot; FQuat PivotTargetRot; - float StartTime = 0.0f; + double StartTime = 0.0; float Duration = 0.15f; EHyperTwistClassicCubeFace Face = EHyperTwistClassicCubeFace::Up; EHyperTwistRotationDirection Direction = EHyperTwistRotationDirection::Clockwise; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeGameMode.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeGameMode.h index 393d5c5..9785cdd 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeGameMode.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeGameMode.h @@ -29,18 +29,6 @@ class UNREALHYPERTWIST_API AHyperTwistClassicCubeGameMode public: AHyperTwistClassicCubeGameMode(); - virtual void BeginPlay() override; - virtual void Tick(float DeltaSeconds) override; - virtual void RequestClassicCubeFreshAttempt_Implementation() override; - virtual void RequestClassicCubeHint_Implementation() override; - virtual void RequestClassicCubeSubmitSolve_Implementation() override; - virtual void RequestClassicCubeToggleFollowAlongMode_Implementation() override; - virtual void RequestClassicCubeBeginVoiceCommandCapture_Implementation() override; - virtual void RequestClassicCubeEndVoiceCommandCapture_Implementation() override; - virtual void RequestClassicCubeCycleVoiceProfile_Implementation() override; - virtual bool CanClassicCubeAcceptGameplayMoveInput_Implementation() const override; - virtual bool IsClassicCubeAnyActionButtonHovered_Implementation() const override; - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|HUD") bool bAutoCreateHud = true; @@ -53,6 +41,14 @@ public: UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube") bool bAutoSpawnCubeActor = true; + /** Recover a missing PlayerStart/default pawn with a possessed orbit camera. */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Presentation") + bool bEnsurePlayableOrbitPawn = true; + + /** Supply a first-party key light when a sparse or damaged map has none. */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Presentation") + bool bEnsureRuntimeLighting = true; + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube") FVector CubeSpawnLocation = FVector::ZeroVector; @@ -78,6 +74,14 @@ public: UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Solver") bool bShowFullSolutionSequence = true; + /** Search budget used by the non-blocking classic-cube guidance worker. */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Solver", meta = (ClampMin = "1")) + int32 SolverTimeLimitMs = 1500; + + /** Maximum notation length accepted from the classic-cube guidance worker. */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Solver", meta = (ClampMin = "1")) + int32 SolverMaximumMoveCount = 32; + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Speech") bool bEnableVoiceCommandCapture = true; @@ -96,6 +100,9 @@ public: UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|ClassicCube") TObjectPtr ActiveCubeActor = nullptr; + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|ClassicCube|Presentation") + TObjectPtr ActiveOrbitPawn = nullptr; + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|ClassicCube|HUD") TObjectPtr ActiveHudWidget = nullptr; @@ -137,10 +144,24 @@ public: bool IsVoiceCommandCaptureActive() const; protected: + virtual void BeginPlay() override; + virtual void Tick(float DeltaSeconds) override; + virtual void RequestClassicCubeFreshAttempt_Implementation() override; + virtual void RequestClassicCubeHint_Implementation() override; + virtual void RequestClassicCubeSubmitSolve_Implementation() override; + virtual void RequestClassicCubeToggleFollowAlongMode_Implementation() override; + virtual void RequestClassicCubeBeginVoiceCommandCapture_Implementation() override; + virtual void RequestClassicCubeEndVoiceCommandCapture_Implementation() override; + virtual void RequestClassicCubeCycleVoiceProfile_Implementation() override; + virtual bool CanClassicCubeAcceptGameplayMoveInput_Implementation() const override; + virtual bool IsClassicCubeAnyActionButtonHovered_Implementation() const override; + void ApplyLaunchOverridesFromCommandLine(); void QueueReplayAutoExit(double CountdownSeconds); UHyperTwistTrainingSubsystem* ResolveTrainingSubsystem() const; AHyperTwistClassicCubeActor* ResolveOrSpawnCubeActor(); + AHyperTwistClassicCubeOrbitPawn* ResolveOrSpawnOrbitPawn(); + void EnsureRuntimeLighting(); UHyperTwistClassicCubeHUDWidget* ResolveOrCreateHudWidget(); void RefreshHud(); void TickReplayPlayback(float DeltaSeconds); @@ -154,6 +175,13 @@ protected: void RefreshLocalLeaderboardLine(); void RecordSolvedAttemptToLocalLeaderboard(); void RefreshSolverGuidance(bool bForceClearHint = false); + void StartPendingSolverGuidanceTask(); + void CompleteSolverGuidanceTask( + uint64 RequestSerial, + const FString& FaceletString, + bool bForceClearHint, + TArray&& SolutionNotation + ); void RefreshVoiceProfiles(); TArray ResolveScrambleMovesForCurrentSession() const; void ProcessCompletedMoveHistory(); @@ -210,6 +238,8 @@ private: FString HintLineOverride; FString ModeLineOverride; FString VoiceLineOverride; + FString PendingSolverFaceletString; + FString ActiveSolverFaceletString; bool bAwaitingScrambleSettlement = false; bool bInspectionStarted = false; bool bSolveStartedFromGameplayMove = false; @@ -224,6 +254,9 @@ private: bool bVoiceCommandCaptureActive = false; bool bScrambleReadyNarrated = false; bool bSolveStartNarrated = false; + bool bRuntimeLightingReady = false; + bool bSolverGuidanceTaskActive = false; + bool bPendingSolverForceClearHint = false; int32 ObservedCompletedMoveCount = 0; int32 FollowAlongStepIndex = 0; int32 FollowAlongCorrectMoveCount = 0; @@ -231,10 +264,13 @@ private: int32 ReplayPlaybackNextMoveIndex = 0; int32 VoiceCaptureSampleRateHz = 16000; int32 VoiceCaptureChannelCount = 1; + uint64 SolverGuidanceRequestSerial = 0; double ReplayPlaybackElapsedSeconds = 0.0; double ReplayAutoQuitTailSeconds = 1.5; double ReplayAutoQuitCountdownSeconds = -1.0; double VoiceCaptureStartedAtSeconds = 0.0; + + void RequestRuntimeReadyDiagnosticsCapture(); }; UCLASS(BlueprintType, Blueprintable) diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeHUDWidget.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeHUDWidget.h index 7f36411..4fe9f4b 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeHUDWidget.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeHUDWidget.h @@ -6,6 +6,7 @@ class UButton; class UTextBlock; +class UUniformGridPanel; class UVerticalBox; UCLASS(BlueprintType, Blueprintable) @@ -14,8 +15,15 @@ class UNREALHYPERTWIST_API UHyperTwistClassicCubeHUDWidget : public UUserWidget GENERATED_BODY() public: + virtual void NativeOnInitialized() override; virtual void NativeConstruct() override; + UFUNCTION(BlueprintCallable, Category = "HyperTwist|ClassicCube|HUD") + bool PrepareClassicCubeHudSurface(); + + UFUNCTION(BlueprintPure, Category = "HyperTwist|ClassicCube|HUD") + bool IsClassicCubeHudSurfaceReady() const; + UFUNCTION(BlueprintCallable, Category = "HyperTwist|ClassicCube|HUD") void SetHudLines( const FString& InStatusLine, @@ -44,15 +52,25 @@ public: UFUNCTION(BlueprintCallable, Category = "HyperTwist|ClassicCube|HUD") void SetVoiceCycleButtonLabel(const FString& InLabel); +protected: + virtual TSharedRef RebuildWidget() override; + private: void EnsureWidgetTreeBuilt(); - UTextBlock* AddLine(UVerticalBox* Parent, const TCHAR* WidgetName); - UButton* CreateActionButton( + UTextBlock* AddLine( UVerticalBox* Parent, + const TCHAR* WidgetName, + int32 FontSize, + const FLinearColor& Color + ); + UButton* CreateActionButton( + UUniformGridPanel* Parent, const TCHAR* ButtonName, const TCHAR* LabelName, TObjectPtr& OutLabel, - const FString& InitialLabel + const FString& InitialLabel, + int32 Row, + int32 Column ); UFUNCTION() diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeOrbitPawn.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeOrbitPawn.h index 968a863..27ceaf1 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeOrbitPawn.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistSimulation/HyperTwistClassicCubeOrbitPawn.h @@ -27,16 +27,16 @@ public: bool bFollowActiveCubeActor = true; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Camera") - float InitialArmLength = 360.0f; + float InitialArmLength = 118.0f; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Camera") - float MinimumArmLength = 180.0f; + float MinimumArmLength = 72.0f; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Camera") - float MaximumArmLength = 720.0f; + float MaximumArmLength = 480.0f; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Camera") - float ZoomStep = 42.0f; + float ZoomStep = 24.0f; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|ClassicCube|Camera") float OrbitYawDegreesPerPixel = 0.25f; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistCoachDashboardActor.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistCoachDashboardActor.h index c4db972..aa17da5 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistCoachDashboardActor.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistCoachDashboardActor.h @@ -25,7 +25,7 @@ public: bool bRemoveDashboardOnEndPlay = true; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|Coach|Dashboard") - int32 DashboardZOrder = 0; + int32 DashboardZOrder = 100; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|Coach|Dashboard") TSubclassOf DashboardWidgetClass; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistCoachDashboardWidget.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistCoachDashboardWidget.h index 75c1b8e..608fb69 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistCoachDashboardWidget.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistCoachDashboardWidget.h @@ -557,9 +557,16 @@ class UNREALHYPERTWIST_API UHyperTwistCoachDashboardWidget : public UHyperTwistT GENERATED_BODY() public: + virtual void NativeOnInitialized() override; virtual void NativeConstruct() override; virtual void NativeTick(const FGeometry& MyGeometry, float InDeltaTime) override; + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Coach|Dashboard") + bool PrepareCoachDashboardSurface(); + + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Coach|Dashboard") + bool IsCoachDashboardSurfaceReady() const; + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|Coach|Dashboard") int32 DefaultDeferredHours = 24; @@ -1187,6 +1194,8 @@ public: bool UndoLastLiveAttemptSplit(); protected: + virtual TSharedRef RebuildWidget() override; + UPROPERTY(Transient) TObjectPtr RootLayout = nullptr; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.h index 4b566e1..d8485f7 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.h @@ -5,6 +5,13 @@ #include "HyperTwistFirstRunLaunchLibrary.generated.h" +enum class EHyperTwistPackagedStartupRouteParseResult : uint8 +{ + NotPresent, + Valid, + Invalid +}; + USTRUCT(BlueprintType) struct UNREALHYPERTWIST_API FHyperTwistFirstRunLaunchRoute { @@ -80,6 +87,9 @@ public: UFUNCTION(BlueprintPure, Category = "HyperTwist|FirstRun") static FString GetPackagedStartupMapAssetPath(); + UFUNCTION(BlueprintPure, Category = "HyperTwist|FirstRun") + static FString GetPackagedStartupRouteArgumentName(); + UFUNCTION(BlueprintPure, Category = "HyperTwist|FirstRun") static FString GetRuntimeLogFileName(); @@ -97,4 +107,10 @@ public: const FString& RouteId, FHyperTwistFirstRunLaunchRoute& OutRoute ); + + static EHyperTwistPackagedStartupRouteParseResult ParsePackagedStartupRouteArgument( + const TCHAR* CommandLine, + FHyperTwistFirstRunLaunchRoute& OutRoute, + FString& OutFailureReason + ); }; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchPlayerController.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchPlayerController.h index c6cb10d..9f59672 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchPlayerController.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchPlayerController.h @@ -24,7 +24,13 @@ public: bool bShowFirstRunLaunchOnBeginPlay = true; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|FirstRun") - int32 FirstRunLaunchZOrder = 0; + int32 FirstRunLaunchZOrder = 100; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|FirstRun|Diagnostics", meta = (ClampMin = "1")) + int32 MaxFirstRunSurfaceValidationAttempts = 20; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|FirstRun|Diagnostics", meta = (ClampMin = "0.01")) + float FirstRunSurfaceValidationIntervalSeconds = 0.1f; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|FirstRun") TSubclassOf FirstRunLaunchWidgetClass; @@ -67,6 +73,7 @@ public: protected: void ApplyFirstRunInputMode(); + bool TryOpenCommandLineStartupRoute(); void OpenMapRoute(const FString& MapAssetPath, const FString& GameModeClassPath); AHyperTwistCoachDashboardActor* FindExistingDashboardActor(); AHyperTwistCoachDashboardActor* SpawnDashboardActor(); @@ -80,6 +87,8 @@ protected: void PersistStartupDiagnostics(const FString& ResultStatus) const; bool TryRecoverFromFirstRunFailure(const FString& FailureReason); FString DescribeCurrentWorldName() const; + void ScheduleFirstRunSurfaceValidation(); + void ValidateFirstRunSurfaceLayout(); UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|FirstRun|Diagnostics") FString StartupDiagnosticsLogPath; @@ -97,4 +106,6 @@ protected: bool bStartupRecoveryAttempted = false; TArray StartupDiagnosticsLines; + FTimerHandle FirstRunSurfaceValidationTimerHandle; + int32 FirstRunSurfaceValidationAttempt = 0; }; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchWidget.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchWidget.h index 1c67511..7f2d384 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchWidget.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistFirstRunLaunchWidget.h @@ -24,6 +24,7 @@ class UNREALHYPERTWIST_API UHyperTwistFirstRunLaunchWidget GENERATED_BODY() public: + virtual void NativeOnInitialized() override; virtual void NativeConstruct() override; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|FirstRun") @@ -44,7 +45,12 @@ public: UFUNCTION(BlueprintCallable, Category = "HyperTwist|FirstRun") void RebuildFirstRunLaunchSurface(); + UFUNCTION(BlueprintPure, Category = "HyperTwist|FirstRun") + bool IsFirstRunLaunchSurfaceReady() const; + protected: + virtual TSharedRef RebuildWidget() override; + UFUNCTION() void OpenCoachDashboard(); diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistHigherDimensionalTrainingGameMode.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistHigherDimensionalTrainingGameMode.h new file mode 100644 index 0000000..295d4fe --- /dev/null +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistHigherDimensionalTrainingGameMode.h @@ -0,0 +1,135 @@ +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/GameModeBase.h" +#include "GameFramework/HUD.h" +#include "GameFramework/Pawn.h" +#include "HyperTwistTraining/HyperTwistCoachDashboardPlayerController.h" +#include "HyperTwistHigherDimensionalTrainingGameMode.generated.h" + +class AHyperTwistHigherDimensionalTrainingShellActor; +class ADirectionalLight; +class UCameraComponent; +class USceneComponent; +class USpringArmComponent; + +UCLASS(BlueprintType, Blueprintable) +class UNREALHYPERTWIST_API AHyperTwistHigherDimensionalOrbitPawn : public APawn +{ + GENERATED_BODY() + +public: + AHyperTwistHigherDimensionalOrbitPawn(); + + virtual void BeginPlay() override; + virtual void Tick(float DeltaSeconds) override; + + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|HigherDimensional|Camera") + TObjectPtr SceneRoot = nullptr; + + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|HigherDimensional|Camera") + TObjectPtr SpringArm = nullptr; + + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|HigherDimensional|Camera") + TObjectPtr CameraComponent = nullptr; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|HigherDimensional|Camera") + float InitialArmLength = 820.0f; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|HigherDimensional|Camera") + float MinimumArmLength = 360.0f; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|HigherDimensional|Camera") + float MaximumArmLength = 1550.0f; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|HigherDimensional|Camera") + float InitialYawDegrees = -34.0f; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|HigherDimensional|Camera") + float InitialPitchDegrees = -16.0f; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|HigherDimensional|Camera") + float OrbitDegreesPerPixel = 0.24f; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|HigherDimensional|Camera") + float ZoomStep = 85.0f; + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|HigherDimensional|Camera") + void ResetOrbit(); + +private: + FVector OrbitFocusPoint = FVector(0.0f, 0.0f, 90.0f); + float CurrentYawDegrees = -34.0f; + float CurrentPitchDegrees = -16.0f; + + void RefreshOrbitFocusPoint(); + void ApplyOrbitTransform(); + bool ShouldOrbitFromMouseInput() const; +}; + +UCLASS(BlueprintType, Blueprintable) +class UNREALHYPERTWIST_API AHyperTwistHigherDimensionalTrainingHUD : public AHUD +{ + GENERATED_BODY() + +public: + virtual void DrawHUD() override; + +private: + TWeakObjectPtr CachedTrainingShell; + + AHyperTwistHigherDimensionalTrainingShellActor* ResolveTrainingShell(); + void DrawStatusLine(const FString& Text, float X, float& InOutY, const FLinearColor& Color, float Scale = 1.0f); +}; + +UCLASS(BlueprintType, Blueprintable) +class UNREALHYPERTWIST_API AHyperTwistHigherDimensionalTrainingPlayerController + : public AHyperTwistCoachDashboardPlayerController +{ + GENERATED_BODY() + +public: + AHyperTwistHigherDimensionalTrainingPlayerController(); + + virtual void BeginPlay() override; + virtual void PlayerTick(float DeltaTime) override; + +private: + TWeakObjectPtr CachedTrainingShell; + + AHyperTwistHigherDimensionalTrainingShellActor* ResolveTrainingShell(); + void ToggleCoachDashboardSurface(); +}; + +UCLASS(BlueprintType, Blueprintable) +class UNREALHYPERTWIST_API AHyperTwistHigherDimensionalTrainingGameMode : public AGameModeBase +{ + GENERATED_BODY() + +public: + AHyperTwistHigherDimensionalTrainingGameMode(); + + virtual void BeginPlay() override; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|HigherDimensional") + TSubclassOf TrainingShellActorClass; + + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|HigherDimensional") + TObjectPtr ActiveTrainingShell = nullptr; + + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|HigherDimensional|Presentation") + TObjectPtr ActivePresentationLight = nullptr; + + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|HigherDimensional") + FString ResolveCurrentFamilyKey() const; + +private: + AHyperTwistHigherDimensionalTrainingShellActor* FindExistingTrainingShell() const; + AHyperTwistHigherDimensionalTrainingShellActor* SpawnTrainingShell(const FString& FamilyKey); + void EnsureRuntimeLighting(const FString& FamilyKey); + void RequestRuntimeReadyDiagnosticsCapture(); + void PersistRuntimeReadinessDiagnostics( + const FString& FamilyKey, + const AHyperTwistHigherDimensionalTrainingShellActor* TrainingShell + ) const; +}; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistHigherDimensionalTrainingShellActor.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistHigherDimensionalTrainingShellActor.h index 41d0e43..8dcb831 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistHigherDimensionalTrainingShellActor.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistHigherDimensionalTrainingShellActor.h @@ -5,8 +5,11 @@ #include "HyperTwistHigherDimensionalTrainingShellActor.generated.h" class UInstancedStaticMeshComponent; +class UMaterialInstanceDynamic; +class UMaterialInterface; class USceneComponent; class UStaticMesh; +class UStaticMeshComponent; class UTextRenderComponent; UCLASS(BlueprintType) @@ -17,7 +20,10 @@ class UNREALHYPERTWIST_API AHyperTwistHigherDimensionalTrainingShellActor : publ public: AHyperTwistHigherDimensionalTrainingShellActor(); + virtual void BeginPlay() override; + virtual void EndPlay(const EEndPlayReason::Type EndPlayReason) override; virtual void OnConstruction(const FTransform& Transform) override; + virtual void Tick(float DeltaSeconds) override; UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|Shell") TObjectPtr SceneRoot = nullptr; @@ -25,6 +31,12 @@ public: UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|Shell") TObjectPtr PreviewInstances = nullptr; + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|Shell") + TArray> PreviewColorLayers; + + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|Shell") + TObjectPtr PresentationFloor = nullptr; + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|Shell") TObjectPtr LabelComponent = nullptr; @@ -91,16 +103,121 @@ public: UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|Shell") float PreviewHeightOffset = 90.0f; + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|Shell|Projection") + bool bAutoRotateProjection = true; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|Shell|Projection", meta = (ClampMin = "0.0")) + float ProjectionRotationSpeedDegrees = 12.0f; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|Shell|Projection", meta = (ClampMin = "0.0")) + float ProjectionAngleDegrees = 0.0f; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist|Training|Shell|Projection") + int32 VisibleProjectionLayer = -1; + + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|Shell|State") + int32 RuntimeStateSeed = 0; + + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|Shell|State") + FString LastRuntimeAction = TEXT("ready"); + + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "HyperTwist|Training|Shell|Persistence") + FString LastPersistenceStatus = TEXT("not-loaded"); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Shell") + void ConfigureForFamily(const FString& InFamilyKey); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Shell|Projection") + void ToggleAutoRotateProjection(); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Shell|Projection") + void NudgeProjection(float DeltaDegrees); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Shell|Projection") + void CycleProjectionLayer(int32 Direction); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Shell|Projection") + void ResetProjection(); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Shell|State") + void CreateScrambledRuntimeState(); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Shell|Persistence") + bool SaveRuntimeState(); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Shell|Persistence") + bool LoadRuntimeState(); + + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Shell") + int32 GetRenderableElementCount() const; + + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Shell") + int32 GetCanonicalElementCount() const; + + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Shell") + int32 GetProjectionLayerCount() const; + + /** Number of distinct first-party materials assigned to the six projection layers. */ + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Shell|Diagnostics") + int32 GetDistinctPreviewMaterialCount() const; + + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Shell") + FString GetProjectionLayerLabel() const; + + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Shell") + FString GetRuntimeStatusSummary() const; + + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Shell|Persistence") + FString GetRuntimeStatePath() const; + + static int32 GetCanonicalElementCountForFamily(const FString& InFamilyKey); + private: + UPROPERTY(Transient) TObjectPtr CubePreviewMesh = nullptr; + + UPROPERTY(Transient) TObjectPtr SpherePreviewMesh = nullptr; + UPROPERTY(Transient) + TArray> PreviewMaterials; + + /** Retained emissive variants prevent GC and preserve layer color on cooked ISM geometry. */ + UPROPERTY(Transient) + TArray> PreviewDynamicMaterials; + + UPROPERTY(Transient) + TObjectPtr FloorDynamicMaterial = nullptr; + + TArray SourcePoints4D; + TArray SourceFifthCoordinates; + TArray SourceLayerIndices; + TArray SourceColorIndices; + float ProjectionRefreshAccumulator = 0.0f; + void RefreshPreview(); void RefreshLabel(); void RefreshMetadataTags(); - void BuildMagic120CellPreview(); - void BuildMagicCube5DPreview(); - void AddPreviewInstance(const FVector& RelativeLocation, float UniformScale); + void RebuildSourcePoints(); + void BuildMagic120CellSourcePoints(); + void BuildMagicCube5DSourcePoints(); + void UpdatePreviewTransforms(); + void ClearPreviewInstances(); + void ConfigurePreviewComponents(); + void AddSourcePoint( + const FVector4& Point4D, + float FifthCoordinate, + int32 LayerIndex, + int32 ColorIndex + ); + void AddPreviewInstance( + const FVector& RelativeLocation, + float UniformScale, + int32 ColorIndex + ); + FVector ProjectMagic120CellPoint(const FVector4& Point) const; + FVector ProjectMagicCube5DPoint(const FVector4& Point, float FifthCoordinate) const; FText BuildLabelText() const; bool UsesMagic120CellPreview() const; + FString GetNormalizedFamilyKey() const; }; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeActorTest.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeActorTest.cpp index 6401dd1..685d7f8 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeActorTest.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeActorTest.cpp @@ -25,6 +25,70 @@ namespace HyperTwistClassicCubeActorTestInternal } } +IMPLEMENT_SIMPLE_AUTOMATION_TEST( + FHyperTwistClassicCubePresentationDefaultsTest, + "HyperTwist.Simulation.ClassicCube.PresentationDefaults", + EAutomationTestFlags::EditorContext | EAutomationTestFlags::EngineFilter +) + +bool FHyperTwistClassicCubePresentationDefaultsTest::RunTest(const FString& Parameters) +{ + AHyperTwistClassicCubeActor* CubeActor = + NewObject(GetTransientPackage()); + TestNotNull(TEXT("The classic cube actor must be constructible for presentation checks."), CubeActor); + if (CubeActor == nullptr) + { + return false; + } + + TestEqual( + TEXT("The runtime fallback cube must own all six first-party sticker materials."), + CubeActor->FaceMaterials.Num(), + 6 + ); + for (int32 MaterialIndex = 0; MaterialIndex < CubeActor->FaceMaterials.Num(); ++MaterialIndex) + { + TestNotNull( + *FString::Printf(TEXT("Sticker material %d must be available without map-authored overrides."), MaterialIndex), + CubeActor->FaceMaterials[MaterialIndex] + ); + } + TestNotNull( + TEXT("The runtime fallback cube must own its first-party internal material."), + CubeActor->InternalMaterial + ); + TestTrue( + TEXT("The base glow must keep stickers readable in sparse maps."), + CubeActor->BaseGlowStrength > 0.0f + ); + TestTrue( + TEXT("The hint glow must remain stronger than the presentation baseline."), + CubeActor->HintGlowStrength > CubeActor->BaseGlowStrength + ); + TestEqual( + TEXT("The presentation invariant must cover all 26 visible cubies without inventing a rendered core."), + AHyperTwistClassicCubeActor::ExpectedRenderablePieceCount, + 26 + ); + TestTrue( + TEXT("Classic turn animation must remain tick-capable in packaged runtime."), + CubeActor->PrimaryActorTick.bCanEverTick + ); + TestTrue( + TEXT("Classic turn animation must start with actor ticking enabled."), + CubeActor->PrimaryActorTick.bStartWithTickEnabled + ); + TestTrue( + TEXT("Classic turn animation must be able to finish through transient application pause states."), + CubeActor->PrimaryActorTick.bTickEvenWhenPaused + ); + TestTrue( + TEXT("Classic quarter turns must retain a positive animation duration."), + CubeActor->TurnDuration > 0.0f + ); + return true; +} + IMPLEMENT_SIMPLE_AUTOMATION_TEST( FHyperTwistClassicCubeImpactNormalMappingTest, "HyperTwist.Simulation.ClassicCube.ImpactNormalMapping", diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeBehaviorTest.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeBehaviorTest.cpp index ba651f9..eda7fd0 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeBehaviorTest.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeBehaviorTest.cpp @@ -239,6 +239,66 @@ bool FHyperTwistClassicCubeRotationTest::RunTest(const FString& Parameters) CubeActor->GetGameplayCompletedMoveCount(), 1 ); + TestTrue( + TEXT("A single R turn must preserve a coherent 26-cubie, 54-sticker renderable state."), + CubeActor->HasValidRenderableState() + ); + return true; +} + +IMPLEMENT_SIMPLE_AUTOMATION_TEST( + FHyperTwistClassicCubeRenderableStateInvariantTest, + "HyperTwist.Simulation.ClassicCube.Behavior.RenderableStateInvariant", + EAutomationTestFlags::EditorContext | EAutomationTestFlags::EngineFilter +) + +bool FHyperTwistClassicCubeRenderableStateInvariantTest::RunTest(const FString& Parameters) +{ + AHyperTwistClassicCubeActor* CubeActor = + HyperTwistClassicCubeBehaviorTestInternal::MakeCubeActor(); + TestNotNull(TEXT("The classic cube actor must exist for renderable-state checks."), CubeActor); + if (CubeActor == nullptr) + { + return false; + } + + FRandomStream ScrambleStream(0xA17FA11A); + const TArray Moves = + HyperTwistClassicCubeBehaviorTestInternal::GenerateDeterministicScramble( + ScrambleStream, + 120); + for (int32 MoveIndex = 0; MoveIndex < Moves.Num(); ++MoveIndex) + { + FHyperTwistClassicCubeMoveDescriptor MoveDescriptor; + if (!TestTrue( + *FString::Printf(TEXT("Move %d must parse for renderable-state validation."), MoveIndex), + UHyperTwistClassicCubeCommandLibrary::TryParseMoveNotation( + Moves[MoveIndex], + MoveDescriptor))) + { + return false; + } + if (!TestTrue( + *FString::Printf(TEXT("Move %d must execute for renderable-state validation."), MoveIndex), + CubeActor->ExecuteMoveDescriptorImmediately(MoveDescriptor))) + { + return false; + } + + const FString ValidationError = CubeActor->GetRenderableStateValidationError(); + if (!TestTrue( + *FString::Printf( + TEXT("Move %d (%s) must preserve coherent cubie occupancy and outward sticker placement: %s"), + MoveIndex, + *Moves[MoveIndex], + *ValidationError), + ValidationError.IsEmpty())) + { + return false; + } + } + + AddInfo(TEXT("Validated cubie occupancy and all 54 outward stickers after 120 deterministic moves.")); return true; } diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeGameModeTest.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeGameModeTest.cpp index e2a7cd4..efc66f8 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeGameModeTest.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistClassicCubeGameModeTest.cpp @@ -36,6 +36,14 @@ bool FHyperTwistClassicCubeGameModeDefaultsTest::RunTest(const FString& Paramete ); TestTrue(TEXT("The classic cube game mode must still auto-create its HUD by default."), GameMode->bAutoCreateHud); TestTrue(TEXT("The classic cube game mode must still auto-spawn the cube actor by default."), GameMode->bAutoSpawnCubeActor); + TestTrue( + TEXT("The classic cube game mode must recover a playable orbit camera when map anchors are missing."), + GameMode->bEnsurePlayableOrbitPawn + ); + TestTrue( + TEXT("The classic cube game mode must recover presentation lighting in sparse maps."), + GameMode->bEnsureRuntimeLighting + ); TestTrue( TEXT("The classic cube game mode must keep its default cube spawn above the generic validation-map floor."), GameMode->CubeSpawnLocation.Z > 0.0f @@ -45,6 +53,26 @@ bool FHyperTwistClassicCubeGameModeDefaultsTest::RunTest(const FString& Paramete GameMode->DefaultSessionMode, EHyperTwistClassicCubeSessionMode::FreePlay ); + TestTrue( + TEXT("The Classic game mode must keep its runtime settlement loop tick-capable."), + GameMode->PrimaryActorTick.bCanEverTick + ); + TestTrue( + TEXT("The Classic game mode must start with settlement processing enabled."), + GameMode->PrimaryActorTick.bStartWithTickEnabled + ); + TestTrue( + TEXT("The Classic game mode must service wall-clock settlement diagnostics while the world is paused."), + GameMode->PrimaryActorTick.bTickEvenWhenPaused + ); + TestTrue( + TEXT("The classic solver worker must have a positive time budget."), + GameMode->SolverTimeLimitMs > 0 + ); + TestTrue( + TEXT("The classic solver worker must accept at least one move."), + GameMode->SolverMaximumMoveCount > 0 + ); return true; } @@ -97,6 +125,10 @@ bool FHyperTwistClassicCubeOrbitPawnDefaultsTest::RunTest(const FString& Paramet OrbitPawn->MinimumArmLength < OrbitPawn->InitialArmLength && OrbitPawn->InitialArmLength < OrbitPawn->MaximumArmLength ); + TestTrue( + TEXT("The default orbit framing must keep the 3x3 puzzle legible at desktop resolution."), + OrbitPawn->InitialArmLength <= 125.0f + ); TestTrue( TEXT("The orbit pawn must follow the active cube actor by default."), OrbitPawn->bFollowActiveCubeActor diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistFirstRunLaunchSurfaceTest.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistFirstRunLaunchSurfaceTest.cpp index c150f6c..039d9ed 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistFirstRunLaunchSurfaceTest.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistFirstRunLaunchSurfaceTest.cpp @@ -3,6 +3,10 @@ #include "Misc/AutomationTest.h" #include "Misc/ConfigCacheIni.h" +#include "Blueprint/WidgetTree.h" +#include "Components/Button.h" +#include "HyperTwistSimulation/HyperTwistClassicCubeHUDWidget.h" +#include "HyperTwistTraining/HyperTwistCoachDashboardWidget.h" #include "HyperTwistTraining/HyperTwistFirstRunLaunchGameMode.h" #include "HyperTwistTraining/HyperTwistFirstRunLaunchLibrary.h" #include "HyperTwistTraining/HyperTwistFirstRunLaunchPlayerController.h" @@ -78,16 +82,20 @@ bool FHyperTwistFirstRunLaunchRouteContractTest::RunTest(const FString& Paramete ); TestTrue( - TEXT("The Magic120Cell route must target its dedicated family map."), + TEXT("The Magic120Cell route must target its dedicated family map and runtime game mode."), UHyperTwistFirstRunLaunchLibrary::TryFindFirstRunLaunchRoute(TEXT("magic-120-cell-training"), Route) && Route.MapAssetPath == TEXT("/Game/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining") + && Route.GameModeClassPath == TEXT("/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode") + && Route.LaunchUrl == TEXT("/Game/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining?game=/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode") && Route.RuntimeProofStatus == TEXT("ready-dedicated-family-map") ); TestTrue( - TEXT("The MagicCube5D route must target its dedicated family map."), + TEXT("The MagicCube5D route must target its dedicated family map and runtime game mode."), UHyperTwistFirstRunLaunchLibrary::TryFindFirstRunLaunchRoute(TEXT("magic-cube-5d-training"), Route) && Route.MapAssetPath == TEXT("/Game/HyperTwistTraining/Maps/L_HyperTwist_MagicCube5DTraining") + && Route.GameModeClassPath == TEXT("/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode") + && Route.LaunchUrl == TEXT("/Game/HyperTwistTraining/Maps/L_HyperTwist_MagicCube5DTraining?game=/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode") && Route.RuntimeProofStatus == TEXT("ready-dedicated-family-map") ); @@ -103,6 +111,92 @@ bool FHyperTwistFirstRunLaunchRouteContractTest::RunTest(const FString& Paramete return true; } +IMPLEMENT_SIMPLE_AUTOMATION_TEST( + FHyperTwistPackagedStartupRouteArgumentContractTest, + "HyperTwist.FirstRun.PackagedStartupRouteArgumentContract", + EAutomationTestFlags::EditorContext | EAutomationTestFlags::EngineFilter +) + +bool FHyperTwistPackagedStartupRouteArgumentContractTest::RunTest(const FString& Parameters) +{ + TestEqual( + TEXT("The packaged startup-route switch must have one stable public name."), + UHyperTwistFirstRunLaunchLibrary::GetPackagedStartupRouteArgumentName(), + FString(TEXT("HyperTwistStartupRoute")) + ); + + FHyperTwistFirstRunLaunchRoute Route; + FString FailureReason; + TestTrue( + TEXT("An unrelated command line must not request a startup route."), + UHyperTwistFirstRunLaunchLibrary::ParsePackagedStartupRouteArgument( + TEXT("-windowed -notraceserver"), + Route, + FailureReason + ) == EHyperTwistPackagedStartupRouteParseResult::NotPresent + ); + TestTrue(TEXT("An absent route must not fabricate a route."), Route.RouteId.IsEmpty()); + TestTrue(TEXT("An absent route must not fabricate an error."), FailureReason.IsEmpty()); + + TestTrue( + TEXT("A registered follow-along route must parse through first-run authority."), + UHyperTwistFirstRunLaunchLibrary::ParsePackagedStartupRouteArgument( + TEXT("-windowed -HyperTwistStartupRoute=follow-along-training"), + Route, + FailureReason + ) == EHyperTwistPackagedStartupRouteParseResult::Valid + ); + TestEqual( + TEXT("The parsed route must retain the registered identifier."), + Route.RouteId, + FString(TEXT("follow-along-training")) + ); + TestEqual( + TEXT("The parsed route must retain its dedicated map authority."), + Route.MapAssetPath, + FString(TEXT("/Game/HyperTwistTraining/Maps/L_HyperTwist_FollowAlongTraining")) + ); + TestTrue(TEXT("A valid route must not retain an error."), FailureReason.IsEmpty()); + + TestTrue( + TEXT("An unknown route identifier must be rejected."), + UHyperTwistFirstRunLaunchLibrary::ParsePackagedStartupRouteArgument( + TEXT("-HyperTwistStartupRoute=unknown-training"), + Route, + FailureReason + ) == EHyperTwistPackagedStartupRouteParseResult::Invalid + ); + TestTrue(TEXT("An unknown route must not escape as resolved state."), Route.RouteId.IsEmpty()); + TestTrue(TEXT("An unknown route must explain its rejection."), !FailureReason.IsEmpty()); + + TestTrue( + TEXT("Duplicate startup-route switches must be rejected rather than resolved ambiguously."), + UHyperTwistFirstRunLaunchLibrary::ParsePackagedStartupRouteArgument( + TEXT("-HyperTwistStartupRoute=follow-along-training -HyperTwistStartupRoute=magic-120-cell-training"), + Route, + FailureReason + ) == EHyperTwistPackagedStartupRouteParseResult::Invalid + ); + TestTrue( + TEXT("Map-option injection must be rejected before route lookup."), + UHyperTwistFirstRunLaunchLibrary::ParsePackagedStartupRouteArgument( + TEXT("-HyperTwistStartupRoute=follow-along-training?game=Other"), + Route, + FailureReason + ) == EHyperTwistPackagedStartupRouteParseResult::Invalid + ); + TestTrue( + TEXT("A value-less startup-route switch must be rejected."), + UHyperTwistFirstRunLaunchLibrary::ParsePackagedStartupRouteArgument( + TEXT("-HyperTwistStartupRoute"), + Route, + FailureReason + ) == EHyperTwistPackagedStartupRouteParseResult::Invalid + ); + + return true; +} + IMPLEMENT_SIMPLE_AUTOMATION_TEST( FHyperTwistFirstRunLaunchGuidanceContractTest, "HyperTwist.FirstRun.LaunchGuidanceContract", @@ -137,7 +231,7 @@ bool FHyperTwistFirstRunLaunchGuidanceContractTest::RunTest(const FString& Param TEXT("The first-run guidance must tell operators where to find runtime and startup logs."), HyperTwistFirstRunLaunchSurfaceTestInternal::ContainsGuidanceSubstring( Lines, - TEXT("Saved/Logs/UnrealHyperTwist.log") + TEXT("Saved/Logs/HyperTwistRuntime-latest.log") ) && HyperTwistFirstRunLaunchSurfaceTestInternal::ContainsGuidanceSubstring( Lines, @@ -183,7 +277,7 @@ bool FHyperTwistFirstRunLaunchGameModeDefaultsTest::RunTest(const FString& Param TestEqual( TEXT("The first-run contract must publish the default runtime log file name."), UHyperTwistFirstRunLaunchLibrary::GetRuntimeLogFileName(), - FString(TEXT("UnrealHyperTwist.log")) + FString(TEXT("HyperTwistRuntime-latest.log")) ); TestEqual( TEXT("The first-run contract must publish the startup diagnostics log file name."), @@ -198,6 +292,16 @@ bool FHyperTwistFirstRunLaunchGameModeDefaultsTest::RunTest(const FString& Param TEXT("The first-run player controller must auto-show the launch menu by default."), PlayerController != nullptr && PlayerController->bShowFirstRunLaunchOnBeginPlay ); + TestTrue( + TEXT("The first-run surface must render above ordinary gameplay HUD layers."), + PlayerController != nullptr && PlayerController->FirstRunLaunchZOrder > 0 + ); + TestTrue( + TEXT("The first-run surface must use bounded delayed layout validation."), + PlayerController != nullptr + && PlayerController->MaxFirstRunSurfaceValidationAttempts > 1 + && PlayerController->FirstRunSurfaceValidationIntervalSeconds > 0.0f + ); TestTrue( TEXT("The first-run player controller must default to the native first-run widget."), PlayerController != nullptr && PlayerController->FirstRunLaunchWidgetClass.Get() == nullptr @@ -261,4 +365,74 @@ bool FHyperTwistFirstRunLaunchGameModeDefaultsTest::RunTest(const FString& Param return true; } +IMPLEMENT_SIMPLE_AUTOMATION_TEST( + FHyperTwistNativeWidgetRootLifecycleTest, + "HyperTwist.FirstRun.NativeWidgetRootLifecycle", + EAutomationTestFlags::EditorContext | EAutomationTestFlags::EngineFilter +) + +bool FHyperTwistNativeWidgetRootLifecycleTest::RunTest(const FString& Parameters) +{ + UHyperTwistFirstRunLaunchWidget* FirstRunWidget = + NewObject(); + TestNotNull(TEXT("The native first-run widget must be constructible."), FirstRunWidget); + if (FirstRunWidget != nullptr) + { + FirstRunWidget->TakeWidget(); + TestTrue( + TEXT("TakeWidget must adopt a fully built first-run tree rather than caching an empty spacer."), + FirstRunWidget->IsFirstRunLaunchSurfaceReady() + ); + + const UButton* CoachDashboardButton = FirstRunWidget->WidgetTree != nullptr + ? Cast(FirstRunWidget->WidgetTree->FindWidget(FName(TEXT("CoachDashboardRouteButton")))) + : nullptr; + const UButton* ClassicCubeButton = FirstRunWidget->WidgetTree != nullptr + ? Cast(FirstRunWidget->WidgetTree->FindWidget(FName(TEXT("ClassicCubeRouteButton")))) + : nullptr; + TestNotNull(TEXT("The native launch tree must retain the coach-dashboard route button."), CoachDashboardButton); + TestNotNull(TEXT("The native launch tree must retain the Classic cube route button."), ClassicCubeButton); + TestTrue( + TEXT("The coach-dashboard route button must retain its click delegate after Slate rebuild."), + CoachDashboardButton != nullptr && CoachDashboardButton->OnClicked.IsBound() + ); + TestTrue( + TEXT("The Classic cube route button must retain its click delegate after Slate rebuild."), + ClassicCubeButton != nullptr && ClassicCubeButton->OnClicked.IsBound() + ); + } + + UHyperTwistClassicCubeHUDWidget* ClassicHudWidget = + NewObject(); + TestNotNull(TEXT("The native classic cube HUD must be constructible."), ClassicHudWidget); + if (ClassicHudWidget != nullptr) + { + ClassicHudWidget->TakeWidget(); + TestTrue( + TEXT("TakeWidget must adopt the native classic cube HUD tree."), + ClassicHudWidget->IsClassicCubeHudSurfaceReady() + ); + } + + UHyperTwistCoachDashboardWidget* DashboardWidget = + NewObject(); + TestNotNull(TEXT("The native coach dashboard must be constructible."), DashboardWidget); + if (DashboardWidget != nullptr) + { + DashboardWidget->TakeWidget(); + TestTrue( + TEXT("TakeWidget must adopt the scrollable native coach dashboard tree."), + DashboardWidget->IsCoachDashboardSurfaceReady() + ); + TestNotNull( + TEXT("The native coach dashboard must expose its scroll container."), + DashboardWidget->WidgetTree != nullptr + ? DashboardWidget->WidgetTree->FindWidget(FName(TEXT("CoachDashboardScroll"))) + : nullptr + ); + } + + return true; +} + #endif diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistHigherDimensionalPhase6CActivationContractTest.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistHigherDimensionalPhase6CActivationContractTest.cpp index 65d966a..295564c 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistHigherDimensionalPhase6CActivationContractTest.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistHigherDimensionalPhase6CActivationContractTest.cpp @@ -14,7 +14,7 @@ #include "Serialization/JsonSerializer.h" #include "HyperTwistSimulation/HyperTwistSimulationLibrary.h" -#include "HyperTwistTraining/HyperTwistCoachDashboardGameMode.h" +#include "HyperTwistTraining/HyperTwistHigherDimensionalTrainingGameMode.h" #include "HyperTwistTraining/HyperTwistHigherDimensionalTrainingShellActor.h" #include "HyperTwistTraining/HyperTwistTrainingLibrary.h" #include "HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.h" @@ -43,6 +43,10 @@ namespace HyperTwistHigherDimensionalPhase6CTestInternal FString RuntimeModeId; FString ProjectionProfileId; FString PrimaryPersistenceBoundaryId; + FString AuthoredViaGameModeClassPath; + FString RuntimePresentationClassPath; + FString PresentationEnvironmentOwnership; + int32 CanonicalRenderableElementCount = 0; }; struct FPhase6CDedicatedMapManifest @@ -171,8 +175,9 @@ namespace HyperTwistHigherDimensionalPhase6CTestInternal FPhase6CDedicatedMapManifestEntry& OutEntry ) { - return JsonObject.IsValid() - && JsonObject->TryGetStringField(TEXT("mapKind"), OutEntry.MapKind) + double CanonicalRenderableElementCount = 0.0; + const bool bParsed = JsonObject.IsValid() + && JsonObject->TryGetStringField(TEXT("mapKind"), OutEntry.MapKind) && JsonObject->TryGetStringField(TEXT("familyKey"), OutEntry.FamilyKey) && JsonObject->TryGetStringField(TEXT("mapAssetPath"), OutEntry.MapAssetPath) && JsonObject->TryGetStringField(TEXT("mapFileRelativePath"), OutEntry.MapFileRelativePath) @@ -186,9 +191,18 @@ namespace HyperTwistHigherDimensionalPhase6CTestInternal && JsonObject->TryGetStringField(TEXT("interactiveSceneSurfaceId"), OutEntry.InteractiveSceneSurfaceId) && JsonObject->TryGetStringField(TEXT("sceneContextId"), OutEntry.SceneContextId) && JsonObject->TryGetStringField(TEXT("puzzleId"), OutEntry.PuzzleId) - && JsonObject->TryGetStringField(TEXT("runtimeModeId"), OutEntry.RuntimeModeId) - && JsonObject->TryGetStringField(TEXT("projectionProfileId"), OutEntry.ProjectionProfileId) - && JsonObject->TryGetStringField(TEXT("primaryPersistenceBoundaryId"), OutEntry.PrimaryPersistenceBoundaryId); + && JsonObject->TryGetStringField(TEXT("runtimeModeId"), OutEntry.RuntimeModeId) + && JsonObject->TryGetStringField(TEXT("projectionProfileId"), OutEntry.ProjectionProfileId) + && JsonObject->TryGetStringField(TEXT("primaryPersistenceBoundaryId"), OutEntry.PrimaryPersistenceBoundaryId) + && JsonObject->TryGetStringField(TEXT("authoredViaGameModeClassPath"), OutEntry.AuthoredViaGameModeClassPath) + && JsonObject->TryGetStringField(TEXT("runtimePresentationClassPath"), OutEntry.RuntimePresentationClassPath) + && JsonObject->TryGetStringField(TEXT("presentationEnvironmentOwnership"), OutEntry.PresentationEnvironmentOwnership) + && JsonObject->TryGetNumberField(TEXT("canonicalRenderableElementCount"), CanonicalRenderableElementCount); + if (bParsed) + { + OutEntry.CanonicalRenderableElementCount = static_cast(CanonicalRenderableElementCount); + } + return bParsed; } bool TryLoadDedicatedMapManifest(FPhase6CDedicatedMapManifest& OutManifest) @@ -704,6 +718,69 @@ bool FHyperTwistHigherDimensionalPhase6CDedicatedMapOwnedShellTest::RunTest( return false; } + TestEqual( + TEXT("The runtime-owned Magic120Cell projection must expose exactly 120 canonical cell centers."), + AHyperTwistHigherDimensionalTrainingShellActor::GetCanonicalElementCountForFamily( + TEXT("magic120cell")), + 120 + ); + TestEqual( + TEXT("The runtime-owned order-3 MagicCube5D projection must expose all 242 non-central cells."), + AHyperTwistHigherDimensionalTrainingShellActor::GetCanonicalElementCountForFamily( + TEXT("magiccube5d")), + 242 + ); + + const AHyperTwistHigherDimensionalTrainingGameMode* RuntimeGameModeDefaults = + GetDefault(); + TestNotNull( + TEXT("The dedicated higher-dimensional runtime game mode defaults must exist."), + RuntimeGameModeDefaults + ); + if (RuntimeGameModeDefaults == nullptr) + { + return false; + } + TestEqual( + TEXT("The dedicated higher-dimensional runtime must use the orbit pawn."), + RuntimeGameModeDefaults->DefaultPawnClass.Get(), + AHyperTwistHigherDimensionalOrbitPawn::StaticClass() + ); + TestEqual( + TEXT("The dedicated higher-dimensional runtime must use its non-modal player controller."), + RuntimeGameModeDefaults->PlayerControllerClass.Get(), + AHyperTwistHigherDimensionalTrainingPlayerController::StaticClass() + ); + TestEqual( + TEXT("The dedicated higher-dimensional runtime must expose its native control HUD."), + RuntimeGameModeDefaults->HUDClass.Get(), + AHyperTwistHigherDimensionalTrainingHUD::StaticClass() + ); + const AHyperTwistHigherDimensionalTrainingShellActor* RuntimeShellDefaults = + GetDefault(); + TestNotNull( + TEXT("The runtime-owned higher-dimensional shell defaults must exist."), + RuntimeShellDefaults + ); + if (RuntimeShellDefaults == nullptr) + { + return false; + } + TestNotNull( + TEXT("The runtime-owned higher-dimensional shell must self-provision its presentation floor."), + RuntimeShellDefaults->PresentationFloor.Get() + ); + TestEqual( + TEXT("The runtime-owned higher-dimensional shell must expose six independently colored preview layers."), + RuntimeShellDefaults->PreviewColorLayers.Num(), + 6 + ); + TestEqual( + TEXT("The runtime-owned higher-dimensional shell must bind six distinct cook-safe first-party materials."), + RuntimeShellDefaults->GetDistinctPreviewMaterialCount(), + 6 + ); + const auto VerifyDedicatedMapShell = [this](const FPhase6CDedicatedMapManifestEntry& Entry) -> bool { @@ -736,12 +813,13 @@ bool FHyperTwistHigherDimensionalPhase6CDedicatedMapOwnedShellTest::RunTest( const int32 TrainingShellActorCount = HyperTwistHigherDimensionalPhase6CTestInternal::CountActorsOfClass< AHyperTwistHigherDimensionalTrainingShellActor>(MapWorld); - TestTrue( - *FString::Printf( - TEXT("The dedicated-family map must contain at most one optional training shell actor for %s."), - *Entry.FamilyKey), - TrainingShellActorCount <= 1 - ); + TestEqual( + *FString::Printf( + TEXT("The dedicated-family map must leave shell presentation exclusively to runtime ownership for %s."), + *Entry.FamilyKey), + TrainingShellActorCount, + 0 + ); TestEqual( *FString::Printf( TEXT("The dedicated-family map must contain exactly one PlayerStart anchor for %s."), @@ -806,15 +884,44 @@ bool FHyperTwistHigherDimensionalPhase6CDedicatedMapOwnedShellTest::RunTest( return Actor != nullptr && Actor->ActorHasTag(FName(*Tag)); }; - TestEqual( - *FString::Printf( - TEXT("The dedicated-family world settings must preserve the coach dashboard game mode for %s."), + TestEqual( + *FString::Printf( + TEXT("The dedicated-family world settings must preserve the interactive higher-dimensional game mode for %s."), *Entry.FamilyKey), WorldSettings->DefaultGameMode != nullptr ? WorldSettings->DefaultGameMode->GetPathName() : FString(), - AHyperTwistCoachDashboardGameMode::StaticClass()->GetPathName() - ); + AHyperTwistHigherDimensionalTrainingGameMode::StaticClass()->GetPathName() + ); + TestEqual( + *FString::Printf( + TEXT("The manifest must bind the dedicated game mode for %s."), + *Entry.FamilyKey), + Entry.AuthoredViaGameModeClassPath, + AHyperTwistHigherDimensionalTrainingGameMode::StaticClass()->GetPathName() + ); + TestEqual( + *FString::Printf( + TEXT("The manifest must bind the runtime shell presentation class for %s."), + *Entry.FamilyKey), + Entry.RuntimePresentationClassPath, + AHyperTwistHigherDimensionalTrainingShellActor::StaticClass()->GetPathName() + ); + TestEqual( + *FString::Printf( + TEXT("The manifest must preserve runtime presentation-environment ownership for %s."), + *Entry.FamilyKey), + Entry.PresentationEnvironmentOwnership, + TEXT("runtime-game-mode-and-shell-components") + ); + TestEqual( + *FString::Printf( + TEXT("The manifest must preserve the exact canonical runtime element count for %s."), + *Entry.FamilyKey), + Entry.CanonicalRenderableElementCount, + AHyperTwistHigherDimensionalTrainingShellActor::GetCanonicalElementCountForFamily( + Entry.FamilyKey) + ); if (TrainingShellActor != nullptr) { TestEqual( diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistHttpClientConfigurationTest.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistHttpClientConfigurationTest.cpp new file mode 100644 index 0000000..8b05111 --- /dev/null +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Tests/HyperTwistHttpClientConfigurationTest.cpp @@ -0,0 +1,51 @@ +#include "Misc/AutomationTest.h" + +#include "HyperTwistRecognition/HyperTwistSpeechClient.h" +#include "HyperTwistRecognition/HyperTwistVisionClient.h" +#include "HyperTwistRecognition/HyperTwistVoiceClient.h" + +#if WITH_DEV_AUTOMATION_TESTS + +IMPLEMENT_SIMPLE_AUTOMATION_TEST( + FHyperTwistHttpClientConfigurationTest, + "HyperTwist.Recognition.HttpClients.DefaultConfiguration", + EAutomationTestFlags::EditorContext | EAutomationTestFlags::EngineFilter +) + +bool FHyperTwistHttpClientConfigurationTest::RunTest(const FString& Parameters) +{ + static_cast(Parameters); + + const UHyperTwistHttpVisionClient* VisionClient = GetDefault(); + const UHyperTwistHttpSpeechClient* SpeechClient = GetDefault(); + const UHyperTwistHttpVoiceClient* VoiceClient = GetDefault(); + + TestNotNull(TEXT("The default vision client must be available."), VisionClient); + TestNotNull(TEXT("The default speech client must be available."), SpeechClient); + TestNotNull(TEXT("The default voice client must be available."), VoiceClient); + if (VisionClient == nullptr || SpeechClient == nullptr || VoiceClient == nullptr) + { + return false; + } + + const auto TestServiceUrl = [this](const TCHAR* Label, const FString& ServiceBaseUrl) + { + TestTrue( + FString::Printf(TEXT("%s must retain a complete HTTP service URL after config parsing."), Label), + ServiceBaseUrl.StartsWith(TEXT("http://"), ESearchCase::IgnoreCase) + || ServiceBaseUrl.StartsWith(TEXT("https://"), ESearchCase::IgnoreCase) + ); + TestFalse( + FString::Printf(TEXT("%s must not contain a collapsed single-slash scheme."), Label), + ServiceBaseUrl.StartsWith(TEXT("http:/"), ESearchCase::IgnoreCase) + && !ServiceBaseUrl.StartsWith(TEXT("http://"), ESearchCase::IgnoreCase) + ); + }; + + TestServiceUrl(TEXT("VisionClient.ServiceBaseUrl"), VisionClient->ServiceBaseUrl); + TestServiceUrl(TEXT("SpeechClient.ServiceBaseUrl"), SpeechClient->ServiceBaseUrl); + TestServiceUrl(TEXT("VoiceClient.ServiceBaseUrl"), VoiceClient->ServiceBaseUrl); + return true; +} + +#endif diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.Build.cs b/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.Build.cs index e666c11..2fe0711 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.Build.cs +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.Build.cs @@ -12,7 +12,7 @@ public class UnrealHyperTwist : ModuleRules PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "EnhancedInput", "Json", "JsonUtilities", "UMG", "Voice", "ProceduralMeshComponent", "HeadMountedDisplay", "XRBase" }); PrivateDependencyModuleNames.AddRange( - new string[] { "Slate", "SlateCore", "HTTP", "WebBrowser", "WebBrowserWidget", "Projects" } + new string[] { "Slate", "SlateCore", "HTTP", "WebBrowser", "WebBrowserWidget", "Projects", "RenderCore" } ); // External donor repo include paths diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.cpp index 547fbc8..6a484e4 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.cpp @@ -1,6 +1,28 @@ // Copyright Epic Games, Inc. All Rights Reserved. #include "UnrealHyperTwist.h" +#include "HyperTwistDiagnostics/HyperTwistRuntimeDiagnostics.h" #include "Modules/ModuleManager.h" -IMPLEMENT_PRIMARY_GAME_MODULE(FDefaultGameModuleImpl, UnrealHyperTwist, "UnrealHyperTwist"); +class FUnrealHyperTwistModule final : public FDefaultGameModuleImpl +{ +public: + virtual void StartupModule() override + { + FDefaultGameModuleImpl::StartupModule(); + HyperTwistRuntimeDiagnostics::InitializeSession(); + HyperTwistRuntimeDiagnostics::AppendEvent( + TEXT("Process"), + TEXT("HyperTwist runtime module initialized.")); + } + + virtual void ShutdownModule() override + { + HyperTwistRuntimeDiagnostics::AppendEvent( + TEXT("Process"), + TEXT("HyperTwist runtime module shutdown requested.")); + FDefaultGameModuleImpl::ShutdownModule(); + } +}; + +IMPLEMENT_PRIMARY_GAME_MODULE(FUnrealHyperTwistModule, UnrealHyperTwist, "UnrealHyperTwist"); diff --git a/docs/generated/alpha_test_20260723/README.md b/docs/generated/alpha_test_20260723/README.md new file mode 100644 index 0000000..30d31a7 --- /dev/null +++ b/docs/generated/alpha_test_20260723/README.md @@ -0,0 +1,41 @@ +# HyperTwist Alpha Test Evidence - 2026-07-23 + +This directory is the durable, source-controlled evidence index for the +Release 17 Shipping Alpha delivered to the Windows Downloads folder. + +## Current delivery + +- folder: + `C:\Users\Anthracite Ace\Downloads\HyperTwist-Alpha-Test-20260723` +- ZIP: + `C:\Users\Anthracite Ace\Downloads\HyperTwist-Alpha-Test-20260723.zip` +- outer executable SHA-256: + `886f69c6a823770b3ed68db4fe3790a488124c99c98dbd41944a6bed5d634dc6` +- ZIP SHA-256: + `1ad8e1c0fc967b227ca09fb68c515ed644eca3e4bda07fdf8c378b438000fc42` +- ZIP: `103` entries, `1082134734` bytes + +## Evidence map + +- `first_run_automation_index.json` - `5/5` focused first-run tests green +- `desktop_package_validation_report.json` - four semantic Shipping smokes + green for Classic, Follow-Along, Magic120Cell, and MagicCube5D +- `desktop_launch_surface_report.json` - corrected stock-Shipping launch gate +- `final_delivery_bootstrap_verification.json` - exact outer bootstrap resource +- `final_delivery_zip_export_report.json` - reopened archive plus seven + critical-entry stream hashes +- `final_delivery_first_run_visual_report.json` and + `final_delivery_first_run.png` - exact Downloads executable rendered the + first-run product surface +- `classic_route_visual_report.json` and `classic_route.png` - visible Classic + route click, exact map, 26 cubies, settled valid state, HUD, and camera +- `final_delivery_dashboard_nullrhi_diagnostics.log` - final executable + accepted and opened the registered coach-dashboard route under direct + Shipping diagnostics +- `superseded_july9_retirement_report.json` - old folder/ZIP retirement after + replacement verification + +The dashboard diagnostics are route/runtime proof, not a substitute for a +fresh dashboard screenshot. A later visual retry occurred without a live +interactive desktop and was rejected. No failed or desktop-leaking image is +promoted as release evidence. diff --git a/docs/generated/alpha_test_20260723/classic_route.png b/docs/generated/alpha_test_20260723/classic_route.png new file mode 100644 index 0000000000000000000000000000000000000000..553dbb7ac283ce6277de118e3716669f2fff0a17 GIT binary patch literal 1362392 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
  • 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

    j;Pu_7467 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

    8d-gt@G9k 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�V+x_T6wWey*EtH#qo>Ubus>J1 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

    40P6x1*e<5 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∋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.R5Ynd!fI%{HA$TYkJBlnhfa~TQ*=$Ko@{w`q z*{cta6An!YGA$j+E}pQq9}h_U9max&0O}X3SrkOCJIPb5KB%=^z5Oq~Ag%)SG>dNg zINFbP$gx+)7l6U`yJ1rVQu$>ikAy>ssMC#?#F35hC-$Owa2tXY5WBGGnjf(#yydrC zkVMsIzT{^(VNl_&J#=pdDz(djSm4FRBTUw7DL|}f+9ikx9>y`M6=9Y%lxc%v^ zJW5LPCVJOF1RJ9-vD4keavG3&Q2OSZ<1b0?LlyZ&R{<=@9c6})?2RrJKS;m<9Cgv% z{1Pjw{cledES)C}2Vi*`3qVRe)dQPsVd(Snx+Aas3LdF9kDm6D`nIuT)Q{2DK3FDI zjdG;=^U&)HIf@BRDOqmd&_I_4-TV4Jc!dAP@SEbj(o?Mm z_8Pr0cgX8Q8xq`#IKS1#Q96cfHReymoc5w9oKpZd=nX(G^yJjzSG4%>do4u}(e#S}Hfy;k)*8 zZJEH=YHb=5S;N1aB8CzQcUM&l#(cqap+yXQ9n1hh95n9?OhmJP;!ZF8cg+++53*hf zb9|4@BPATx)i!9}yk&=zb23>G-eq$MJ&Kngx*x%m&;qFM&bIu8lU;Y$TN|3vc>oW3 zBQv-z_g!aQS}l8_vxTg#jKc7?(V3KPcZ%4ovT8u-CtpI*BHm#02hIqvSZ6qW z@iQ18MWQ1M+C|xxfz((Za<9#t2rrWw5fcbZciXZsi&J{ZT5lRiV3~xpn2+^P?rN+X zwBE$UpGxjKaP(5D7HX!SiE{Z=LenW}yu zt1yxNCS1_`q^j81$qW1x%&YdzxlhI~9J=ur;$@O=Vi3n-|1}l!^*h(^pU{RIwZmoG z?O<SFj4DjO%uaUJ>q{7%qy+bn?VcoZEqrII>Ke?seGV9ZwRD9R{c!-1Fbar{eeN@EO zOd`-!lt@){q*mmWl;Dp>TzxQG;-4$Ny=Sa)!5_> !I;vEJZKDR!gU*UOpSOLC}> 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

    ^pBZtWw7q&5lN=_nv(^xbD$4hk*_AGcE{e zQ{*5eh$_DUfU4kQY`$Wu+9N~b&Oz+2{zdYJv@fnh*F2&*y>izatsf;Pr?R;0Y>4U+ z6yw%71+NlkIP$YUb@nO9yO^xxiC6u}t0$EjN(@;+Zq5!RnUhjL* z9+D!w#F$K0h)DYqM`B&p(=5^{keDMBsqtOKY)Ur@U}${1DC_r4o=0d)$VTUN@XY!} z#MYM%f-#e_yRF>aZe@FGqw>fBJ+G8VQQPF7xvaw?V0f*J7so!nV(V+MP>ghK4zVF= z52=osFjcZ^yvX;1iV|M}^-dNzKiFb26gd$ypz-1lqDYkHq4qq9MY`o4`635#+z~3J znYt`7B%XvET<^#XuPHlfiaA>5w%5meW=b86^%QL@D4>~MzS>h4;&|f)Fl%)*E!6;* z4!r87I^QL|Ov4n}p^mj2aEp4Ugy?ZyjF)NrD5}ChND^JKaVI4rd1MKPnyrkpf@vs*U)snOOez zvD>+t{o6OJ*=|>3vISk$QC)VS=^F5x36)-qdU7CGulD(}e~ zqLY%Ptq${TQ!0arG30m8sZ-q>=AF5dW@k+E4DP`^yBIqcF>y&ceLHR!OOMx>B8+b@ zyE}#gx3!&EpBof__h^T#?t&NZk(HgD7KJ2L^|M)ZbK)ie<-2VyY%~A-dFagj z3aqP{*sh86T-y`+<+CXI$cgm(mSebSM0t=yFx0eVjN>YD@3nAIY3Z)`v43t1bFGbQt-Kg1Dkx{{0Jyj^{uG>3C3Ger*;?Bl?Yrp#k zbK^d9`78vvGGdVj9vDO?dVPMMzhObR$khLYAN{Y?MIhNcK)Gq>G62;(^VdY6(HkbU zT`lv!d&MwT?x@7$+(3{oTj8<{dtp7w-JcZ_AoXu(d(f2y{-*g+8EfF8Gs!XY?YHhx zl^Rn_>JDqC?pcKNDBIXs;zY$O(G}C*5{bcwtg@S^h#=)`A7vhBXIJ-VtH25?`}t_B zv`oV~&AZ@*btu6_d*C=NnylX9jD&=xT`)}OK-ty8 z5O=ZnVX%UBm4=|;q1)jkc4uM&<#U%npTjaTg!#OGm{;MvG}7iu5O+>PiX;WLf3P{> z)~QenOMmrj`=Qt!+Iu0i*Pm~ep*FMGx6auPt|4_6x2y7JZOw$&{vh`Ang7Lpx=(lj znCd3P3WL9HlfG}9I*;P zKi34^aHgrPM!>_%a)yN-7}YzWLjIhdof+L1>hwN+IsUggCP%?Y@^^VkGaoh!k01O4 zF?K$US6#yHnN+UT(dTA^y#SS?ez5nD+KCnHTd;EWD#mccnE?`bP*ig5&6xtyS`5w{ z$Dwy1yuKwzE*HXtPr-UQ@t#_{qHUgw^5@U;iAY09o0>!NjHL0G$15+RHN}PCg#pNz zk{khIHf9?lJ9+x zpX3XjidUD$N7SSWinfymJc6qkvZZV`1-FUbFfzj*3_19?164o<nXb zq3xk^x=~xORB+W?G*&m5ETyCm(V-~iRT%V`Io;^B3`hz2!KB^ZB~`@gT?uvPD{4|x zV_8?FG;G);tg2QhoMX}imFby3P`S>+EA1y8Vo5x`$hs9ie zW2k}`Xc@tkQ(6y%A()2b6uA#xHNrRzLBT2wSG$7&kuL0ubGl1f0vEzn!6!f7XU{R7 zFu@ATr@eRj_q)m-J(-TJgB++`IJB$_=vp9zQ=U+48L${lh7Oce{{-HoZ7N9>iCTq9 zo+fe}Sy0na=b<1u3B2}1rgfJzm6wFXi6C@#wN@4^j@IPjb$p|xH<)q%V{`OgSJVu1 zuvaLvbMi-NUizvSzrssuXm8%J;|Fzb(1R;>YD-?{dx$woPQILkBU4|>#5hmw4|o0Dqt@EgaRD7yp}N(i8Aag9|HNrP1C*KXrg_^>y7- z_f`~kM^$=MQ4@LPV~kQso*O}&mzh#FWIFOKq|=LKHqLsAlxx~vktH%0DceAwL4xp) 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 z zj9}a!dz~mmK)eV;mzTJm_#x?#E?TJRv}*o!rEy{5561u)H~=xgMS^J|{7xY`_D)+E zJ-{WksTe4EIu{Ft!veU;%`@K1Q?7W9LC<(|qptpJz#@MD6GO3B68wlh8GHog|jtp_M{-{q4*q0CsUskxv>IKL}^KJx^U)DIsxZTOWEC3c5EKXu`{Fq zSDptHikRZe`6*qAGItB2h$5h-u`XLUBNd?cfr*?#bCKfA*aBFL1QSJKF={yHz!TAH zm2Lw$AKwEHfC$FT8RyWOuW|X^hR)Gr_yIZ?vDLUan6&2nF&G#G>%%D)F1l*@f)KF& z1ggx%NqIFqy0U<@@j9snYKdgBi8Atl3VU{l;5?WBpXf&bo3Xj*!5A3bBLC2WG0D+Z z4@_M+4qKi^2j3W4jP!jwMS1Sblo@k2A5K`(DdYqIAkBoa%Sb{eP9`vl?CIO{`t~7X z-a%WZ!VFnphT3f+@5l=t0piTTcq_0`Z+znnHb64t(%)zR9J9#-ykEcI7U;d-^3}LG zA8A|#&nO}9<1O&b2{{1W+->Ap`z#z0&bJyifHFKwupxMe&p>Vk#-*y+q_4jf27HW% zk*!~V2yo2&ts4+A{ilP zO&UHh3IKlYWbi-eCOStHO@bBCc7g}tOpsAd{KxOt+dVn@jDJx$=7_(*Eq$jm5PAS0 z$nZi>>4N^p7zO45D;RYdZ5RBeC#*@}5V|Ee8ax8x83$m%dQZnMoH%WG7Tr7Y zBVd*>YmfYJ0R1mh$%4k5q_(_?4H;o>0 zVg4c|tyjD?4`V_5&p)}JKnyvhpZYS|dt)AoNHqdRrK~T2dy^j?5UJ zKF}=XE5<;EGtxD58U7{66(4Odu++ltoLHm9EwOWo27enKENed1cD%GX9krW!!{m<(294%7n>t%i~YJSe_d{ zy*&Nm)bjIRyjXtx$g`Oi{P5%P`Nf3tgGa}efBWO7%K!T3Ph^cimxcVVfA(1UH$VJE z`I8^UcYpfRGUcg9%YQlbgL*m0wHgTs2y{Wn@7}KU02>hScYwgWAf(m-1OR>|3h?g3 z#D2AxoufGH`bcyuAW$H+fz^a zS#52#wRh&6ja``?_78Bxfr9pdT>vJ!S*q)Y(TDjN7pE6kDDuqrKsNF!`lfCL)@k2%Z6ZeDB@ z^k8Spc<{deXZmW47x-bn=kpjpe?jD!h)=W>MJVbFD9GXUJieljd3e|OfdYrac?UA& z_pwjZsH;Q4^D1NZI5b9c&p8-VHw_>nWf(ZXptHDnI3{U`l0C@mL_JgsVJ$WQSOR2*E10aLT9i-d> zMzjrt74-$c0rUZ5@r#dhHGYyYav(yhf`$7-rr8gdGu=7C)4kh@)IxwAT8PNwx76E5 zWhICnJe2JKKG6^lvwO0Ay4DPjn#=3&)Tg2l_`Bbp!!$fZqi2fPpbDpuQ+A@?lK?$neV=vgQGDWMOaUa*<)= z4yYswwCX@*yEc_I{dG)IJn;~CX1xLHt#$S}{R=1?3mFE8iGoC1pbwDL_dq0IlkeRi zi~jgbSNP6cwP7xFokIvw%MMT`j(N)V>hm%_%Z&OQB{W-wW!97xhM-q@Sb}6TH zp6>u#V;hH4CV`J=@A8Q{#(}&z1C5Lko$xgy5Q8r2?1}cYCV`*8JD?ufm^tm0lqqT9 z_%4Fex|Pl>TF;Hc+MY3GVuI-27wOo#VqvapQE)(X{08Wagw3~d+5G5JTK16y^=3|e zIYCd~iT-O_u_z;Vtxv$4v29#8m{}y!+GoX>MuP6ZU>7dAr5C?|a;?i3RNy+ssXc%% zIRMC^89>f_0foyJ&rM!iFHOxt(Ss}US@mB5yeo2y)}(Q0%b4I^>=##Juby zj{*1WnYHukINx|u8U62td>hf^}MMy9<7%!Yv4j~6r8mZGf4v_yb z1ULZ<9Uz*`T`C(OfngxRh~egaC#wt$z}Ma|oTO|qHac6E#52MpcNVvsNh37|#*4m1 zr)iggK!6qW7BNJL0^$H6j5~%IXTS!|nbzmdaOMGcoK2~OfWsA1Jfc0Dx_22i04!rp zfGZ3E&Jr4kaDe0k8l9j}f^H);4~`6H85qu%y;G{EX24e$ZY&c~EgfvE(-vMy|CQ4R+PN>a;(F(v6S;v?WiRiSKu>sWeJ_VbA zPmB$XIM{0SnFj}eV~<{(NPRJ;IRcC|20H_@0%UHw+ns#I9|kc)9Uc9R4~$s`V2uXc zofouJkZ33kKKTJ=7&AwLahv0eF*Se=85Rww zFS-I~&N_YOylI`9X>Uhchx3Ha9L=wxu~bM-8b0~k{{Vp2Af2mE(NdyL$gFvD z5|lyU4EmTK5C(9S^$PFb&YElhFY`4HKpUW^I&{)x!-)%;0fwrBQ7@#)ccPsQL!Gf! z92#86^+k^W6wx0a$sYdTHT{a8qFBfjJ;U*3!~>(uA*1Z#r+2i^0ioYH^c<y}Yxzc3dx zrCYXa97x?lulrt_r1f?9f$jn-(w7NxhocWj0M+b)*XAS=)X@typxe)0GK2Dw`A0m^wAqJ zj*s38onsGp{Z#Ie0Kj+eT#YtrsFFIP3l=TS3qht%pO?{qFHV?Jrq7O_6K9m?UYcBf`RvQ(=@%xK z7hjoMo_%RXd1~DB^6=v?mdBo%RGxT#MtS7vDdh)`yjcFtkDe-j`qSsizxDIsXUm`Y z{P?Nz!yi9Ue*B{+%Bij=AJhi?v#bmF<;_2T00uq)0>1?Ve-8qFb>}DXvqk}aeYXOD zU*81)N&^M})(AiVpa{Tk?vF3ue9!=Z4?w#=1^|BdyFdKjcfh@GzyIEMzyEw&>+f&= zbIKfW3|LJr>^;}tI9=uJ2A-Wx-U0|6d|3}_Skk-JP=Z+T483k0(`R&X%Flzkf%@<~ zd9*HltRMTh_pEEc9hs(|T!;m9yc9Nw=sx?W8-Cp&TmeJ3%ZE-583HT=uf0)kpIm-JkVzSO)ukajBo$p5Vey773}u5_s}c?aO=u+e31=i?n~R$3mL zgWbGv?v$Jdy-Am_{gy76QC5Vr3jkq1aQ@k14q}0#qRNgR+?_gs9@rQTgmI#w=r;4B zM*tOBi!F4BF&Qtrj~-zc?G1-c-9LM(k0|SmIE?+nUTZG`hS>i^qyR@;HimxyCOXiV z0aQRn`-ys;Ql#8COcy#-$vr#tgZ-CX4rp=M9$eXpco#`p56-r<^;Pdmg%-KJMnu!>K>fj00RRj_A#2fmV1RdW>C# zr@%FiB*$CipZ(C70T22H+~J?UMUhEUTOGC?dH@W~f$g9kVA`7DOncAw>?gP8^H-#4 z14P+|(xi>i9+@E4>j0c{34l2K29y8`fv$i-k%+(tz@W%I-$@aanr$Ay6%ktK=Rz-l z7kU80L{FiQIrD`!hyE6&22?|5AP*2mx+Z`C&@qtZHPlZFxer?%paZZl4ics-{LV*oUwnRbC0zSrjdaP-mIg_sWM002PeOzRB! zaCrvMOdB=2j4h$&r;q@t^ZlCz&G*)d=jY!T+y!IYdx`^qW&fR0-DH% zHASv~rT{x~rAC?Y;){7{PqdXtKL9D7iZ-)W@IwS2pbV|>3kWV1*SLU;BGvE%4~$(z zsuW8A3J{i@0BQ6AJQevWO_MJV&;v>V(RPk)%sGfw0zRHSc_eu+vdiHeK&hv*C20X< zF>mtR+;A)ENkpH1D+s$j$ER&I;nwtYq>PvY0ELZ)rlO1iuI3}65V#}rPx>-Bx*Bo@ zSoFK}Y0*~bu3jSW3|Nz6I8bX7YDb%VJwPy;lLG)WStLimH}nJs0?M@`+HKvM)kOpx z0LeV00pq3Hd94WmkBD77!xO2TqQP8L0pO923iw&MbbdyN0lEORBI4XM4CFK>eFK5a zzpk^jL1%Rex0RM<^HR3xizby9ZP$k`0ye2%XujmDzh_m_j?Tpck#>MqX}>@>exKA^ zxAg+v$Q+Ot2<3NcU$mkzk$+&B10%o~KoHm}g;i7^8Uo`+V{GJhB=m@RkTGK=v%pGx z1EP@+G*oZT+N392S1ihuV3C1rLefl#NsYMc%aV4;jRQf09(=?F^jXy`Dc(gkz~j)))+jw(Z&Mc4A^W} zESVbwZViFjpAjetiiAJ|gBT~;;3(D)v+ls}p>RYRi(@ zDK|hR#vA!I2SzA|SGrykxnyi)7vQXaw+)&fn&O-B04>phlZ)QK0CYA6h7yC7L*dy5 zFlA&ju#L~AE;2{7BN<}kF!UL9XlSwO7wyPujTCx245lkN2Hyb!I2+^>=)sWZ)Tm)5 zip{2%h0a4Bfq>+e;+8JxJN)E8_y9-%O~98O<{e{4qjU^HR^AUI5l=Yt04=h|i4bkU z$>PX!u6%E7c+&DQl49#P~ zSF*v8lAZ=&0zd)p@DHES#2E0OOzP*Y*K1u*k&c`@{bo8_^vCfaS0WeCjloXt^n-su zJCS;T9O-e=Mc1$CjCps5USc@7`rd^?>S5gqxvJ57);`?>>;}piBM`+$yME%owKLS; zp3Y4J0BM(_Wqn#d=$QID4R$B(RpvNCzN3%ScO>JY9n2H2=`GQA(yOdLJQh7hM^&Tp zY|;m>_3a%IVU4`d17w;$1T=BX0Er2ng-)TD$f$H!y4Kp_NIGOmK1KV+K<5F?)L?X& zpkMlfo+8r>Es^F7W1y$!=^el+N4C~+s;R-!n$eGZD~&-`0Nmz*KT=#pbXYSS)Oz4$ zf3d!=CeWvCx}2`0vy7Y0GMCkPLDr6PJU(>W&DaOc-CWGg_^f9Ua&#*Fz+s~oMEsCH zkweBPLdM6q0don?$2iC|{+pk^n+utw7^4e0qUV6VN;qf}aOQoHIpzSU@V&K$U-mz1 zU8IlbS82Ry7sUJ4FMR~eQ-{sEAS2ctu<|pY<_CA{`g|aB_C^3XfX{OxN)reX(pIKUpH&tu zSzcDQb(Z-Hmz9Z=W|Z0UmL?GR(!}ZI#rU`>_{rxdmdBoYsXXy){Cs+1dE}{yTM?ZhA{3M=v_~*}-sZT#z{^tCT z%9l6(ynJ~b5Ewt>^V^#b0Km6@_?<{VH32IK__a?0fIltY-2Hj^`da|-@%V@UeCh!J z_)_`i!ztyPj~7>v?hipeKfeq3C4l$Ge*f;Lf_#7Mqt@T&pS&NuzErNn`T?Yg?z5-i zb4F~2oV*({FU8h6V_ztFK_58m1i+~eY5h5Pb$~(^$wmU;p<_hrlOK_Lz$?I?^-b={ zt~Ez)9bD2w`lbW5P3K8Vr;Famy<1e`n_03&I&ZybP89j;Wgr|^2cubc^NL7l7XZ|@ zj>H0|X~Z0o5RFF=sK$#oXAFn-bD0K245tZN_)yVqW5T^m1LawpdE z`zLd*q7OIbQqukee7Q{ZDgb<8K6!wuyALrEp!zj=NUC* z?UnShabGxfB=-UPst8TCl;2N5wvArbl9~n zoL4#?zwlgUkb^x3Fu;XO=?fj{dEgSDklhY!0$$oL07`1&nLoY95x1W?*amC~V&H_b zfnPiOYJyq7Cbk6|$o>v2;b5~#Ikig`&dT{n`DOp>TY9U$t6ZJR?|^N}=%}5}HbfUd zh5fmXEp%c$1Elm5AZEUvQSZ-2sTlK?8STUT#s>78_Bpc!YFJ3 z5l?_Ozq3<~=T69&2swa@`L-^bA9M(RVPj2ewcm^Ua_h6UMXrfv1O@_!fH~6Fq+xTU zIlvpkVFc#pL4MF(#FJWE03E&@8CDMv57fuAHv^skA8H4xQAS4e#X$xvse{N?^_)2= zu&-1AeZbNH0RQw!L_t&!fDtI`0}K<<1LW-KYDqr0yaJeL9MV_)4a^Xw#Aj>|pNta? zkP;=ui3jij4UHc_gKp-KfMdw0F`zfFNqVbjHc@^6I|rK^haDiPYZktQ{Wo|DZ~{^R zSpd8MLx2S59-yoZpyF82Q92<2!SmYjI~m0f<6;YlIAlKn2K{ba>YjxxU~@D0C#q1orN6Z$g3cu^=m=~PNd*7`g8Ca^22e5{5q0S1J9Gj{ z@qzR&!b_wbnv-32i}Y}7P>QGZqd%YrU{I|@QCdI+>;i|GBI1sRjcd(_%mQMPEnp0=+xJ&O_v%k1AO0Hyegku47%U6FMcO8?uSOTD z>AA7?7w`Go{JfjdY%vz#qBK#waG?l&Db-%omuNM>oXkt|;3ioSV?aRfi+0R3`uI37 z5LFCdw1xn7#wSfxZ8^7~TN8Ld_ZlOx6tDE{f50zvAxokLfoni4^agAJ95)PAAWum) z5qNk*F5UPHU{Xud7zTRUGBQnyG!TqG4}_CeT_Y&>WF(xm0tDN&ZBri9jtuu_U-~Ae zz>nNNG*<^{mRML6LN5 zBr?(*0GpyaE2vj*&DFkA013K>%+mG7;MuveCMQry*N7m+SKu6ZA)_uDA>TF9cuUrf zTr_`H${-+>99qBr=Y8$34LJgcn=ARpqm|1RrEc;p9-))xMK%J5fs(VQPb$-=yqr;y zB0~2>o9Z0av|vE;{^W%@J;YF2zIawRTYc%QIH|X>al8O1wVvCyaMm}au>(kBm~cSU zWOMVc4cxPwVUcW{Lrxk4jG@3NVSG!41!b00HNd0|$g) zgfTJ!0l+;VC#SPIuSavyGs+kf3`s_lC`v|)egRx)rk0t@O*o#6GzJ)>(|pX))&7i9 zv=D`+2AO_=1RX0EB@o5gPDgrmOIaVrg{VnwGd@L)`9Gk-Tmb_&Ldm(>AB`ECyFy{1 zt0)ybVGJ^`&cuS`NNJ1GWC){yC=oJXt`t6_FQYqx_rv||IS0-rWv>r^1Cr2~EJ*p| z{G&5x)z}$=nR0gXN^I6wLW!#tvMm)MnF25?y3HYAgrfl<4nV?yFgNlg%s{!I^?Z& zK{wzXM;=fnErz2agDl>?^?aW{z8$tW68hLQcqtxpQ)i*&5ZK|J8^D zz`~W30b`(B$cc3Zcmo_Hps{yzJS$SDI$3}oMzD3y@$r-6MsAG7y7gUx_2Ja%pAjiC zOr1IFk3-e~x;_bvhRm5a=M2cgKr{}{7;weSs^){vE|IWiI8>j0RORtK2dEhSq5KlO!z$Wd`6V@XD-TxAxyL~;^cc$OOSo6Y+ z1ntho2IVH%3#mgmtTQH$&-Ic3;RF6#OJpA%?FZV%Uwk54KqC>0qIftvbhcDr`i^tP zIW~T4N83OxV3O|ue#R(5ol)yz3A~~g$*jW$YrN{*T6~|wCF&E1rY)czzMy}uwU`(1 zjE=D%IUL#?<3=y?>SG_GD@5;gtXvT5PT}?Q$rp~1F_7KlaqJ_Eeew%HUmF{FmdOZR zLH0!a0kAoSfPMPvXc!xt*7u~&K{Gs}`_RGx5<1Xz#))?HEg9B72R>7wgU0BadM9Mm zyv!kK9{j_@fz>NhPde1FCPmX~hb#cxE6{&Bbt`@1do)KAkx=vj{*k$F4=Lhr;{aAT z4Dvfbk?e@ZB-_>b?@SOx8@ZN3UYhjKno7AnBL@2#z;7H8`ce$p~2p=W83DkroXRrb*(C!M>mv# z_0m{Fd3{+06BQxnP~zj(3y^zj!mE%=8&d%FDW7xCTGlgf{N{(SlKho6e?o{7)1 z<ta(o2x!938|5QzrFQ?`~U!d_YMH?$29^_ zB;dCo;LqdpNcsBSWAS;se4S~)PsK+az!%FmAAAP@{4S99ufRW_c;;ULg3ad-|Nj2x zzy9@q2)VqQps{FC{B*zrtd$mf{?z`I6(Dp4nU5tv1YEa9?Ym^&Aqt(&CaedV^%*iv zzMBg@07p{K**fe>dn-NWfR3z*AOvXBt$;K#M<0tS^t`rQD5HI8=MINN*BSTb^}U(i zDjKDWZR7!9^rwIJgS23}*u{I>H@jTy z)jX(jpt^prvjTu&_W*auFZ;uuPd9o;TX%p<(TBC&-2Q976D4OY1BFBfI{2_Z0YF^V zMaQ8H+ub4ZqPf#^{OU>ruIv{;IQs;h$%$qg(T~cvaFo(Uh_UEX9WHbR0KcWDEf3j5^7}A}b-VKyOJ7Y8_2bcmS zIP}^AZmBya>WmIFzqG-kPkfN3{888uoNCclY)$*Mi18W;1I8g86j%yC zxfSbDR1D`?)EZ!dY|)&gJCKkpXpfu$p!~gP z-i&BZy}|t%d1$=ojpzIuV*q|RgglWqf9{Uw)uL6mF6a|$0SIPnfL3%vL-vMRV|Xe> zRdf{@0(QDNRSpaMMrD*UzP+M{i(|d72wgP|yvajGcpjBSYQ6kC`c}c|Z`l&i~0i z5DL9T#R8-Op87!p0GgY3MN^7=OrUt{h6I1i1xR=H)gvK8H3Aa=49t?^2}}gG4EA@F zJ+c0e#Q1>7#!C*#8L$h8lvyV6o_DM((PY3Jz!#9xO}9W#|J%83eay9j`hY_;m&%KW zXbQA9?s{=b*u*i<(=kRmNE_w?$hj21i?Vd+?;Z4;J8M$XuHpHyUrpIpLwt8e1p3{4U0R_pb7)(!FvqZC+s3>AM}(es zMJ)o?x;s~doUJb+<)qPW2-ydE_I0mJIsn=H-+Y0P4l6_$9@yiei%mHfJaDOqdZwZ) z=g*m*vPOd5Qg002l@hmMVtB? zMnEQjaezC~x@|3s%DCsB%5i!>BbI@NVV4@;u~^4+S*FCt+5=XqEm+&;`*##&6RgjU z=vzHM`E*}|EL;5rFyBISTH!l@bO zE?5A*F_MIN+E_P)g3GkeFa|hphVi98%E+q8pv8Cg2wD zh^~_=Ra1v|hO#-9kwnmS^Er8RR~l1FsDGsDtNc}|ftq9o=k(t`o+bPMqM((_No!mogsV(<>D8uD^4jGY8_gWrrnr{dn{NHhKt{7oL72-!ZBr~mge zLgrGAg(0ndh9$#>aR#&iAn6hHl6$ zfSGfnU&f1m0Si+nj!POayp0DCqFoLSS>n8y12C84ME*paF^0+3yx5#FB|hW|V1rM9 zL^23uVmvoazP11(#){AQstz9jl|hJi_-)?WL1)nop1*wYc+v)-V7;3Mxv6q{GUo$0 z5sBa=(BHs(juc=4aM6HPB9}NafKqQ;bgLeLrYgBM8;(s*$zU8PF7{2J}Hc08`3)(B3>865x-u#+e|0*2S+syC2`z znnBo$v0B2T~?)kZQ?J7%R0Aatyk*~=v*D3dV!Aj0ELWFbOb_JQ=A35 zknE+S9AjWCR6TM$^lVS+H|daB-!ybIqnRUUUg`(>iPuuz=yLNyd$OcGhZksV9UC+G z7d4KroOb(;-^lrY7xG7i*R)3YM~@4^r?r0+yliGZa)-1ZAlr+?oMxqScbwT!G%^Y5egZUv1( zUSjTK>GsXnVoy1j(SyK3b7CKGx;b$S))PnehXFSlMxRuYfwFZ=*a_RWl)m1s($&#c z2KstSZ%=pW=?Md?V^vwPd`0Q%>P{eV{(^;N$-cB z@l(q$pBZ0XnmDsO^}?hwZsP2`DCE&!zE~cKkIO=yh|e#cn-YIdD33k;O8x{AKK#ft z@!U)0(I;Lgk3aTInK$8?^1q*XH~~PPFK_(dK|1gc%WvZY0Q~lITNL2K^>g><<*SSW ze6)OZuhs$l`dw+j4FEW~eDm?53e+XI_u%JuKMmm5{Qm8Cz`Z~Gy#jvC=O6#!@5{gY zi%)X@1=K|H{p~~dk!SK`-}Sy{ z?W3OcE;(fXSWo1LE+g087cuT#cBpkumbGsT>H|sv2DTsCvngfGeyfy>wYY85nzZMv zQ8l1tnq*my*cZqe-Q+vbfb=DM(!nl0-J}Q`3%eGOCrTjoa*U0ApfBsn8f9$Y_lJ&Rr97p(a$sNWx5y;<8L~~L5;P~ z-U7zG6*`37OCPg~*yr>=8{}Bbqixx|q%$2#C;LCZ$o~N+z!r`%#}Y7M&!9W)O`UB^ z;{EwaE0KA0tmrP!aT+VwCA(o=jE|jgE*zp&LF)?Sp{)`<-WT0XhJbnW7bg%Hp$&Ve z=;u4Zf3^<5%^nZ50r&unfXIL>K!x_D=Q>yg@|YKJNUCv7PklAV!qx>WqB&ZzKg>&U zePE)CO2|Y5xS500Q4ao$DHFmrQ;S$Rm$27j-XbP}JlatgP>M6V6zJff%}>4rdkJV} zZ=u^ny>krRa%-$;A)?XkuIZ1R6ImJGhjUx&=!q6PogfPUL`0y!&BeX|6a!wd-;C9K z@!Xt6`Z)+q@GbTkz;6P6u@?dZ{hx2)kR4q(-}=F)21GL!=`C_UA)o)O8oWWme?V}M)0zQf^<05Yvh zK`hoa;K~{W(1=D-XIiwG{{hR~zzQ%synkoN*rnjj?(7e61GEu2rB0+e z=CYbS32fmF9l0xHP)$*hQ!Z*uT;S;b?Ei51nF-d#JooMz3tG92H}-}2DUwXOv6NKf z1o{B_=%P1sZQ-pu0>ZbCapQ5yN$?j41f&E0p@sgeiDR*@@e>~bN!Biq&sqQ`io%m> zOLja5bTUW31FOh7kQe|4l-AGISg+E40jSmrI_L{v2`n`aA5mgtRQu9Z$$dK35tHzIp(uC)g77T5+}H_Y(VP- zNQn>n_qRwpa_Tb@^EKz5?$%5<2A)~NqU_WqL=!q%Z9;&acckwQt?5ZH5nx}zzg^LO z1;Ei*`n#0)C5vX4i7!2$mvZ2lHA0>Me%7W)&Absf+5-NG2m~q`b8lB`Q4`Q-*7Qj^ zPU{xUfWM+@frjKIgvJ<&KEyGyazF$fq497i|8dY7O#k!=>Z zv@wn$S$lV}$PQvwyy=kZ`LLy^;jK8!RGkQ^`V zan7Vjai9Q$`U9lt6Obv&5O6RUN)eEvXs$>vr?i|_sjEQ4)1lNDUJN*4?hL{N3}U_< z*?M|+Ao&N(0+<>L=ZyhKu^EF@V&i2{07u>22}GzsSB-{Za5K)(SU=jYfac+7tJXFo zHzJI7Z(Em+w+OJl?iKM)O`&7>OA7){ zj<;l#k;>?8fG|d!%R98oASW*s2)URtfOh&YRy<``Gf4aos9;{4M$Y5!QwnPx9|krV z7D0+n=x%&u4E-2&KyZMvaW+6Ga473!MSplr7OX4l2S~v9uLjoMP{7O5;Wb8S>1b{K z(%nQRF-D|Xinig{Fm}lvUXsfM&|;jxTPMl@80(LNgYV=$f$`|uW?K31X7q79|8K7N zO|F40#t*#G50D>#T_fA18=VZ^9!TfG-|2Y78qj`5!$v#iMur&MoC|-OA0RiQLSvl% zHU=Q7=q3(T11#wqNJS(^nvj+-p!Sx<$Lq=E~l<>Y^*`gF_;`l0MC*mj1784Bz(ahNo^2g4y2uE=7}xr> zT?wEc3*Ab-8Oh|{95@ibKWUfdV}9sHPvH?7SnKK{GFqqTVjA{A=g&WRKlePmptl^17$+bOjYWc(6Z+A6 z_`P(&tbAY8RYp`Mjqa3B;v*&9^UVQ8^AVv0c(5+Dg$~xd-+|8}z3dlgstxo525gUg z)gEMh;DPbm1IfTAAH0+Dss`KLx39#$xG)dEMCPA97V9wDzwzeT^7hpW<S*cIMR4FxobUQ5Htm<_%#qg@Lvy4B>ry z%HW#b($>1Nbau3tRc&E#b#<1W9=8N9&rkR2)n)OLUn~@Jn&UL!+bn=yc2E>ss@hmYM%fB z^gg}KR<=L7fWzU`u$89tUvIpTNW#{p6NS_3Ua{0RQI@qZ>P)4WNDRIs~P! z08s$I1k$bne(K>4u!ZghdeNOVa!@+Bz3jELv!uz147AtzKZg^DhsUDOM17}|9sd)3 zm>Q%Tkr;O?xJwfg?U=<}3NU`N#sQVCt)3 zA2=X#z$#)-B&*9pu7zFGmoxw%*1n~KZOVPfzA9}pZMo1%01?2GNGws1fVk^#xCOYT z^Jd0U@Wg?p6kK43J~OR2K{gSwF0wk5{s>HIrH;LB+#)RXCyGrUz$OvtBHdin@$Q|lNuxiJkDhbD4g>*+p|Sm}y>(IQTy2OH z<7E3CIAQ(Tk38?P1UgxSqDyP^VLlvHwj}@%ctW1Z5l~56*Md#}G~lUm=u7>$GqD!T zuL8f9Q(p0rjSOr=WBlRd=WWIz`w0Ms-6I9tJ3v3Y1F!Ju(l~xoMdH?`{cb8wQ zmwlL*C?34DPW-Js03@2CHK0;^c<|O`2aktqWYHKfaBsXLn$6gH68Io@=r2MLU4dle z2Dk()6UhT$5$S2n`eZu;iA2x($qnRi&K$CaKgZ6=QYTA)MfD+&mP;}z( zzM$8k1ldoDgp0OCzyY2vomXy+Jult;MAinBey$Jv5aFj@;?jk)lTR+^05VCX1x#(* zJd*9snd$avho^h9U1OEH%U<@qIcKC`j8Td$z)!Rr`STrc5Gb3`gCQqMERdB3SOgZ6 zIpE=psV|qw6JLyH7iH>e1y|MLTbu3qTLijs0s)O*x~}y_R~!f)SWk3508G@OzM4ab zLops;T3+TcG8p6OEN(vr%#jHfc$k}LQF4kW07lQ4C$JL0=7wYS_FQg4&$_i&1mE1* zQ!>g@Ekt9)3u~vQC0CjN%iCHOXDaue9qPW;nyvsm|2IC7l`h{I?CVOoYd}PNHmP;;@7Ymr=k_}uyJdJJ)}`kj0>TJ$maYlR5vc~mnlSF^(&BU= zHZmZd%@AJTL;xx#&)8s40Y{`aa$Eoe9BNTFGp9~SBM3k< zwxK^AW{TZ=j2M8Dlm+0Sje=vtxPtIAd~D>sT`jRlH>VTDf#<{mLZmv1SgS@6<>Z2n zS_4Y^7s7brRCBJ39r&Srryrap7dl931hz5y7#Rs1o)K2BnEZxxO3-fa&J8h^HD$^C z8QCU-LBBr0Axa~o8)HLCpf!FnW^F#`B_d2c33Kw{2-*-tmH>tXj6+G*Bf8~N(@Ve14GU`oHBGWZa^F`gLBMS zmZpcdj3fpm9x*C2EIX7aqox4>wFS7;mND)OC(=8BAJKng)%bwU#-Vm)ty_6G4Q$5t zm7ovaat3y6T~`**pB}PmQ4LgJEc#b}kx?!6L7xC|w;ZFtvEe6&has;W#yY1y#~4N- zAOi?s(-sk7p7=vP)PB@H8TLEb#TUjg1B#3QP8cY_V~!1ATf`9O-(0O(kz!dZDV`Ih z1Hb_&`XAl^i`-&u{%U;Hhyl?w*ON9aaGpdRkab`upux#+o`i?N1sp_s z{Y&@fIFNBp4EaGLwCCul14>RfN#+MI#tUE){RH3uP>@Y>BF)NAy!qt*-2|IB7yv=w zjrKWXj8wGdq@vZ{SjRvOP9T12qt4&O2c!8u5ZF3GU+7jrb zPLP^8*c$P%6az|n<6)}(@IOWLcs zlO24f>$Ok6n3Hkp+o26TPRH95@PMv8v`z^#m`1p`Drf3;b6sDm3|25wU3eyX~6hu z9nzilMDb4BhZ#phFIC`A?LQd+{s;82U)bB7RQu2mjBY3PPPd)5t8a5?-_CL@ zj4B54)-8a*b)~9ZD=sWazibl}UAW|gO(pIDxLVPbh^+@$jSOH;~o zFHOzgpUUs!=W{QYUpzfN{x`Ke`@$>b7r%Ty0mTX9Czk~;KUMzb!p|Onfc5h&2nYat zTPm;%K`H?F)twpv`1Re#9PB<-i@d3)AYjS z1dtZZotCzm3v-lhV1u(u8XGSo+heTKk%3(f1=$Vs2YqY3n*-aC9RWyc4l}F^pxV9A zq3j$wdrR0gz?YtmWm&Gkt&{dc`v^S@4B;H36}yV>=p?!gpr>q#d5UJ^=!+E7u4uT-=7|26ES#BO5x@orsUNjT z(>98>6tI6kbe6r>`wreXhZfFQsDV6$M(w4lw!biM$5ZWoKj2!{ z4GZ4kt>>gW*8|}zxu2n#s5}6JF#$^Walj6MkW3^XnwpNj0|KE_?gMvg9YOOFIU-n~ z8IN}Whn!4(X4#Rj?ExE}F-9OK8$A!D;(cQU0GWrm+3T*qc`2U(f}jfk5}=ZYqA>@y zp#Icz1ZZj#FQ!d;DGzJRkFEwZkkx8`3kEos4zegfpqO_7rvf_A0-peR`sJ_acXy0U zimb63A0P~v#ChJgb1Xp*z@AId)Gq{F0Zjmf_6h0b4hz*F6lsY@05s8YE(>WQ1l7D# ztI}ANE#mA0uNqL)ynu6LWpC`eQojL7qSHiY85@AX&7BM9PEWf8*l{Y>As_?zVvXsa zErBl9mGyxxq6I}zu3E7;K~jJ?kWh*-5D85H35WL7!(hOl@tB(nb5c- z*87Y0fmqrwKQsl{i2k$&(4}?Rf(KDi;iHDGvfl8P3@e8s3Jni{y#6+J@%Vh+hWRxU~TBU?Z}b7+80YeIjb(CqE#M`lH!xrhO9 zB?^unl8%Y)K(Yj2hx%e}G9>orT5xEfE*(%xTB&&hXpFP@;GObTYOGo3KsM_R?SL>q zpB*7H<}LzD)TGo{X_@TD&bFm#2g|M#;Rx{Yk*@1P4B(mQG7)&v$&C}}COQuI)7RaW zmtX*tDu~yf(YYe+j133|WNK2keT<2o0(4rxb%+067Vu6W2>p%hk~956Ie4&QGUj? zF4`6~XAFb=T`A+%%=$qWXhgq3ClPVdh4aFgpo7R@prh1oyvBEz&McZgGxeDHZ`-^f z`_?YNOtjqgu>G=bU+4?6X6&K~rHbcRHw`C%28=XDheiNA>HO$NZ|HNdzcT?qhZ%22`gS~6fyrUHA``l6520IgAf>&vULZnwry zG{AH1x^%^Ofr)J`OM+gt&LD8rxRnneGY@ePfOIxpDV#Q3(K@2K04+93N}SOShyrT3 zNpaQk1?AbN9?P3vZQvXXr?MifG8*Z~?u;n0A!&2{V0Q{Nuw(h6nF$IqvVd)X5H;{} z4EsW1$KqhHh@7$^Xoq7=!8QOw%aXZy+5m{t7UK-y2vBnYhxY+?BCi;Jz#8dWl%^A9 z#)C)}?Q?7agA5k}YA!%1;7Lt^*cc4k6u&!JIh_BK8teoY5X!+oL(Vz_fw5)-qExoV zv%ms$239rcX$(~TG7{CG@jIhNpA5+gSXAdzbfgZ!$tJr z7sJhMuOce_Ez*;t>&jh+llZIA_Tdx&o?W1EJ2oBs+OW1e0Um$^Bb;H!`SbBSUNPbmxCG+8S!>(qS9B^v(*J$u zBm?LQc&kqP*-&(?vEj{$1=*L8SLn&G;p_v-dShc{qyZ$%lQ9f<0a^f&q-v9I^kF0e zX~|+o>*8pu0=%3T>w|Nz-j})Jo%wLK&8?}wXpJ%4fw58xISC?F&4;sO4FInJ5rBm> zWP=vkBG-T%W8k2pqjXQsmv!YCsY?z30D}w->nztz^sBBNP?2M#O~$viBpsfElefSI z53ToxpX6-sPMhUO(udq<)NDL!jRF7gU;V+MzEvrA)qtBlvs{8J=L{pY0km=BzyWb9zc@5=~DCMY+E}Ve}Cf{ zXNYXosJMIC7kbm%HTp%3uv*3dUl>BxHc-rZ@hq7{b0^V$`oH>x#!e>40GTDL36RI{ z_97d(Tchb>7v7jReS;77Q2L@?loO6a=pat2adHGj*O6bkX?5(0`qh{JTQBx-a!n_p zt90yJ;Z)HH34+9TWYACg!5-&%z@^B^TAt$f5x>?wFb@a|kj8tUIp-H`)DfdQff+!U z{@4d9h^a;&TAzzGI+A?SCP3ZVcUj0^e0D$jmEJ8C`F5_8`@uW368S~vfBwn4Ay;ah zg%f=3VtGCG@sIDn9nYL7U9Dl1uWpHbVkCI~dh)Jj9GnP!qKI~_N1IVQp#uSc)oHUQ zoXsN9j3~h0uI-!4p)eqKY*mnYTUkH6wyf^%D1!sNrFV5#8Qr*{^!2VT9qsLZ~$-=Dad-()2QZ;?x8Lr%az)#!Z+~UY#+OM`=az}D%!qbomsvCC$M4h1 zYeVA`{QJ$-A0!y~-WZ$ zuiu|kzW!*zcL2Nxpxz&XfIi;?0)G$qefRUX|Lw06u(STi`u%$~0#GEVgAzQVXKUFD zhjb#^!V!=4ZLI>?=nQK*4_y;5tQS66r`on=$#-+%54(%q!sZ~qbTQkC>{xgHCTrE+ zsIo?ejROc`f0J2}QC^{Q>t|Q$H~kp{JxTY8QZz>Eie2C!)}FO|(X7mpalwhbvb$|@ zw#jC5pza-OXLbA1)Q9>M-DWK6QPV%{fz&Udr|nzjs}FlHyF|1shuiw5m+2L24K3^+ zbdRx2nfPMJ|E8eL8zK8rP#xZ>fq5xxm3dX?o436tbe;$=`Uc?TJ^IGsQI-jbb;q`J z7y@KepBPvK=mQvNdo=9n8lh9mJO67A%V{d0uiS9BF^%sF^4l|_y zYLgFi<4uvH2a|{FaPBoLP0$@Z7ioPdkDKn}hGhA_dm?+3e;H2m|iX%Yq+(Q@|Tzp_Av&nU+6| zf&AFp>1d!5FhjaDy)B*aTC5$<-nw=rU?>elEt(N!+P0p9M3zD2KzeDjXFhIn=>^bJ|nzJ2TJWo1GtAjlq5lMmo_IP738 zAAkn*I2$r&egG4;3(#ievIQwOXo3E~oy{AE%I@Huag!fBCF6iZbGj1Gk!$micHN|A zvM+$n$|M*IuoRdC_!6BaVv8&pt9Fg6rhA619%D9kk))zT$2Qgr5`n3}XTZzGSU-R; zKsT@%Ewn>^q;HDSG!N^=T9ft({8gh-8b7|^y*7bn0*L@NuS|G80Xu(_0f3HreSjE% z9^g#GnYOJVVBLx(^An^3B#~h??aW7dxOGKt0bJhKH{cqWB?3%8{^zGlUfe1?as2b& z_M=`Qxe@&+qRl)H?%NrDp{TYEDUW2{Sb@`I71)M%nFbzxu~&h;cm^QdykRJ4A|NJg zrQkbR+$1V(bU0}MJfsV(ubRGGQ?1PvF9Cn#1^^70?Cow%-jOplS{^P0Ps|T6=#T;U z3g|?OvC*|5Q|bV2DJ@Iqm!pUDvA+zh=?+?K%RV*+EmyTH&XnQyl}kgPtVkXJgcmQE z70<3t@Gil$&;>wPV_Lp=Zt@xU=zqXq;8}Ob8~SP=Am?M;=phvuZ4d2_|DnsSu>=!c zCY7|=ur>ih;InreEQn;BKYM!48^E}6-I@fD=?VN78S3H>QT+T1K%hufb2nGfjPqtq zNzfHIy>Q;lT*Ks_{OJ$i2k;an2zYgQ)7*IHA;1OaUKpy|GXYtQE(*h`Am@n_-<;e7 zXVe>G(74q%!KBzAMGY}ZIM#c%`)tT}0WD4s7tfm(gAb(KD1>4KRd^a@HI4<#G#grZ@rNyP=GG1C0xs7#7Q2+$IB z$T_jm1G+e+lm=suv%=A2EZSsujtvF#dSdLS(h#a?vYc*d$HHaTCb(kGHj5gP-j%1P zgMF)VE)~=}mH-U{N1rxUk#ztQfEBtYsJVMf8WcbTa{=<1uS-`%Q!<_arwm>HTif3e z3PJ6PBO%nQlD-VZG*+Vz{W3=M18B-;El!G4LM?*C~&|6>LS4)I^aA?Vrj|i4b^?e|Fzze?vgV0C1IXa3C zF)wLIx}}qm%!!p64ZL80s;NgF0Dx)i#~c`*KvC^*veB1e&u|26 zaaz!Tabr##1hsYUg>l5VXSipIR5&TX8lW(F;^d#%8=WU#CdM?^$xBKT&IB9Pq*cVhjU7(6*-eT`b+JmgH#|{Xo90UHw)=U;0k1 zmnf}+^W}T};<>bTG6Jy5zsJ_4lZfUbBk|gS2k_JUIGZ9#hGT7!7bll#yvDme)}Wi3 z&0}3`3i#$bbOx*f*8nFO=@|VOtGS7!GG@9IU$y1(8Xz5D9FNGpsH=K1eO1conSrTzsPT3 z5I{?W2K`WLc-7l^Ij+_5b|dSpT;si6%aea(inIUm`*-rtfZTDyIlP{y@AN?@SrdR= z^ddvXf>#Nu1^qasbc6^DeP+~7wBt5p;3_Z^7!FLcj_Euy2|$1C{Lz&4>Zre#bRd)D zmt3MDfJ}WW&Yk(8nZ3dov<)EiKADtm{rRW&gLa1#w4#s5UIO5;XIMwpKCslBU2^0g z06&4GXlbmReR|r(0ceM2<`1N$52R=Nj*|*(cH^e#Nn__2p^Nox{-Q8Nm*6EC6hUci zbx)aZZ*12c82S_}~rMCihZ0%}>fN zeJ0wD9NWW0eQ6h<;V@8Ir*(i&_-LQpHaZaFJ(-u-m^(cK+;a=CpQ8G_=QdX9pl43( z&UFNwz5Dj%Xy;(o1oV6AijWO9hc;b=rEjvqpyfmXZRrV4oElT2LO2!VMhcSDp+oU3 z$LrJy^{mv*3Fl^)6#RYRAPk0s%gNnVwvBBpYuEIZ(GA0;zjt+6*|Myx?p|Gn2G_=C zu*{!7KW`77H-Ax?F>`jAJ!fH=JAYw$dE%5Z{^iM8D{w_yXPGs3VOg-ar7T^sDkJih>&0J| z-(34ad;owyE??gIQTgrLKaP)7;Gf1v6yPKAaS_N9<*U2DjGs@Huit&4e0_gX`TD~K z0Q@6B-}gX2pMMSd`TWyA{@>-_|HUW4hnorR*&oSejm|rr{B@gi1@v52<BCH>-J7{fq{h%45a6abEu8@6E=TI;4u}{%a^odkj zhn@BmdPgP-y{D!qdNe#>=hLKVu|6Dt0GI5A z30lT}NrySSLw~j~TLCCS?|4^=+jq->_}&~ioZ2y7@7h1;4>v-JlHhbZ*x+!|ziLl; zUV(oH7rVl7aj*se11>n^c3B$79L?xCYa9^P+-_#>f|f>Q{DKp%%ccqt+YIAK2lh5<~q%_g-^8xN)oImy}whN?3N!0~*oUAH~y0%!s7 zh{UmGjh_r!PsXa|mdg*=jOs{=E=6l~%FN;Q^C!!2$cs7p4)}!U!1o&6wKMbpUovD^ zyRnwYjdcSIaLebFiy>z*XMhhsCV|1Ahm>AxLxdZ^!W;qEqOzpf0!V;wfIGkqfDKPY zf%>0)P~;?gwnhgYDZsqzv1Z6AaGl*G1yh6+a2ME;hnBH+^aG>=Dgj5W6LZ#1XX}!n zPrX(3t!T^q@K-eC(U4Q}MV@_E$6NPopi=^&K}Wy$hffXQs<-6s33)w{YYTWMDvzCC z(^zG&xftqP&|^pP8qEMez~HiVYs;6+ zP2fpgKYFWzcda=NV5RR|hLUv_Lrws(Ku$csQ=kzU6M5DZeFNdhs+3{>%Q}6r#&?HY zk;fXHcpw2GxPqUrOn4#R!$Rry8CIWB*;hb|CeUIgt%K&3dpQGu<663G_MKuvVl1 zn^$Ms@_YuMcrauQc&N4>zL@*2ZJV<#Daq>Yp($DDYH!JXhi$p4Wl4GQg{RAl&p#FK z50<`=bMj-XZc#Q@GJoV?P4kxS5BzlKL2oqlMN3hT08R%OA|ru?^z-JCdRsFv8DL5` zICvl@XrVUZLv=$RO-EA{5F?)>&DokWV`6-#2E*QrG7_D~AQ5F`lg!^kA^Aw38tQLP zP=xZzOFP2p>uz6~Z39v`E0hQz(7PNbz|_dvu8bP1r;vLRP*6a*0&EI`)?2#V)}(#4 z@4T9ZbVh_$xm3xm1q^7K<}x~!EKW3b@^N#2UZZX;&+0RcHa zqM)Q!y>_nFs{t&CUQ_HD5Mxu~`~go~45BEjXgT2N#PQGM*ntedL>H(4MAa)y(1BwY zh9|@0#NnDgY}^1eV1#0>9C|0x#-j$v#ZW|?_azHvq_M&Xwt&&p1_<1#>66lEucxt* zH|WJYGcqfbDx=p8uLpLGrc;TAoI1uAKus#OvAD@nyXeY*^K72R$C&g}PdyK(fzFZJ z70)n;fqZz04h$acs13o`G~YA?)36l1RWCgN^pGh=mW`G1)c_>kmm+4qKr_xMkOVJ{ z!FbS6#OTdX(u{WLvkZUZ0luJzzMQ0QkN@eP;Z5E-Aqf&kUqA_9H}Dxiz<2?sF(`p= zc@sEO12qAjTdex`{Rt&B{>d@1|7h?Wi_wvfM-&a)?C_Rglyz!A|08L=R_8 zdLodWoM(No=$8YfpNzT)=gJruo!_Rf1|1UA3A(5~2uRP1N@647v;Z<0iqa0H%8JS( ze}3m^ps96(pVB0>Wet)uI)HJ32TfFB*3yZ-@Y1-X)RG4@;K)f0^$Z3Ao_&NqZ6X#hFc@ zbPA#SA_Fs;DfsOJeBw0f(_DrJ+QZp&tFuctq@~tWR}ROj74w4*HC5jF;vgj-gYLdF z-@UOW%=z`uJt8OQ2s~nt0#GVQbSOb3sjub&>;-J$bDnC)TC;BU#wG!j{_y>J%QP_B z*!2h4abRK{lOq7CF{jfOI)&3}y#a|iacFNI)+Hm~TBh^pH!?>q$xJ%WuhmOstUV4m z9som)i~Lz198v&Wop()%_0u>+n=2A*%>anqqHJHOk;9drbffi0#`VqV2J+EY#vvUF zZ5Z+TrAy3@-W=-djP~18kD&uO)XrxgzZc(CT}mG8S@`Qc>8}oM>|4@+$(;3QodOrM zW34545p9jGQ}1NBz8n7&IYU;ZEsOp@2Xs{XY`@YBVfdjFUZXQ7SKA^RD1{2$qfKLW_yXt?`6vBd8uVX$_I~-x&+nJN{MG#g zd4S3E*hlZ*iZx!%eqnnHaaH`Iv;bWzCY$Z%QR?Y7|cWyAWRS|6~py^O41 zmp2KoSh2h;STMgVU9zk!S-PyWcXVY`;EI;kGJnD1(%RNlmab?m3l=Vk@4L#>X>&5N zZ|=OsW%87nWzwW+W#Xi%@!ga%efpd-ea7rEf8N5fFy37h@64SuC!B)U6S zFRuNtd~y9p<%=6XDqr6Gary17pOoLeEeh~w@%efA>dvF(cXu8yU*G*j`RcAT;OEO% z@4u1&;J+l0_Wijx~5MOM2iv9S%&kZ@BQoe*R|ghYcl~OawC< z2mr`N$;jbYf1>Bq(5q>~4vrj3)ktNsOwQHhy%sVE5T=*t9y+qwTRD%`3BBt7^blES zYyv-}{E}be^p5B4{n=;OVb-WMM5gF2`V@dj*LmJpweJ8F#;{vf8IlXhiz;tz(&=VZ>OE2HlYKV zk3YDZKY=r7_!g=g=7Vi57s2%CkecPDCdGv+N(Dzot(aA8Tz(rg>@?FGK**cfc2P z$xA3sx$G$3IUtSL#V6|$tV9DrHh{1M(qdf33G@?{k45Z?l z0j>ZfY&CQ==GQMsjXxLq#G#2&3od`zk-(`jS`U7D2F>UtQGbh+T-s7^&fPT9pMHay zbT#Tx5Y35fA01vlU+Y`~YU@P`E0eeOY8?KhXsEf~Vv_8n(1gYZkDKpTJ?DqbOE(2U@5L zh~{cLiU=DXba6_p`v{c6XMo;{r6RUZ1r25T>`0pgp!(M3i^)ed>O{7!k1@NQ*N1IP z7l~p6lEwA2t4{bwEkN^3m9#n1uP zfE#hq954qg1fq#lb66pwO}aNg4=4rb7tQEh^Cgegx>|&y_C)>xwScwyCUe%y$zuoO z*{%e&M8B!EXD&cybsfnKu*>=|MznI{^FVwDc*6&6Nh`N5jZyk8U{F6~o_#0H9dHk1 zbC9xUN4-_p{vpbD*7R3We&|(mU%7l?9s;>+q~W>fR`LT_Lw{qHQQ{EVn90zx#d8zb zlb)@%qbON&L{3CPiV9Re6i^J*BQt7kiUu^^daH4aE#__w?A$tz%^yufEDy*3?(2TrIQcd>Mjyi^BeKG<@^N|t z2m*8(qsRsC7z;;_Gb+_rM4V`gGzc#otMdxuNGLv`=WIL8(U$aAHyCa)*S$5x7GPqY zHqivZV)J$)Y^>;Gqjf4Sg_=>qh!p|CX`DHAe6}lP!h9JlPGZfGGYrr(KMos5Tj6*h zBBK=`(!FX))-PyTGAE63^+wQQ$CwB+w>q7O_MC#MQ&sEnaGHUhHe*JNjo5erN`BX$ zV)YzLMlB;R(^%sFUG7vd=j9Vvg`*w_!U1LMpridm+v=2a$Vas7hGXM&w znxTp=3_lagg75oP*0@NB{ zlRN{{$uaN%Z~!2vhJ%y*gUJiy#YfQ|)|<3VQI=$hBgE(z5n}CHI{*@1>R zqK$s=PBdDAH^IAG;kY%<1H(v!9B0b7=^FCrR8%^Tb=rV)SHg+HZzuJ10MI7un#M-R zi3OxwI3wCXB;WPq2{~fW0n5n)>YjbI7t;0vc~b*xb;~9_i*mx*#`Wp5q(z^(B2-#fwe#e&{UiD4PZ}K z>*A1~ozWJWR=^8Th7Q0xANv5=;LwU@Aft5pk^N(-FYE!I#B zSdASJ&FLk-HeYiFi0Ma!UPfgA;e(#~LJvIhj0i#Fq#rX~H~1rc0uYUU$;+6Z^jpp? z8Ak_YEy$exB@Y&YE+Pi4YYu{WarDfKPDf9&${C^e8Q-6NAPu{MC;;5lzcC**ucTy) zxUL5YfZzSOR;5|K&KQq9A3gO8SRfBR06j7R@I!Oo-47mF8=gnkHd9d4%j94*9thGD3e|j&-)9 zoIbWIZ}`p6)p{ud`C^YaHRin1aU2k~hdqk(K?g9v0jl&qqskfrB0SdJ!NG}OMco~ z+sdLvi%M^AU+L@X&)?_GUr^@HUsx6|URGw#oL$;hb(94Q7MGc`=9KBvXD86Nbm{Uk zYu3DcX3@gMW$xU0rKM$MSulTIS=HKF)()%*2Y*pnx?pZOGPI!lw@XizFRuT%e0lRH z`T6awhvW0p1OR_``;i0ye|P7J^3}a3ksDt9sv9n{A&Qd=I`%*S3jcu z{_58sCqDsmpT!!Wqv>#mCJtKZKWm@PuZNy$`o{W;J<`5o-2vM0{a(n3=Y2#Hs^@q) z>?{8hRVPaT@MOQ022b`9)Qk7%E;`m;gO316`-^>2`()7iwa-~^ezFJ1mFLI}y{fh< zxvXi9`%<4;yY>vx%I09LSR3|XdYD|B9~q*9$(8Zg%azM<082grM(j}S`@TjMP|{GP0bFL(O?amzcxJ2RwVZaW1qX8dTVQ@9s`o>XZ9NhI&2jHk+A__ zyz6jQd4w7Xe?0d=da>4*yPUeozAdthvx^2Fg)XG;=$SKNS03KGEp<_6>!K{n;vKXR zB?nYARu}#Z$G%LTIp`6!f(P~@dJa&g%m8QGyLe&WVFLg!fO*y;U{6F&MgoSsp@lj5 z-N!y+ZW(w02--82`;7mw!Q6~1d&MD{`EW!))1h2QvCzG$+4OWDbDE+yT?}GQh1l0+;M%O0@uW z-nsc!*z&-7hXJpL)6f6x$gu(T)MvA|84DT!!OSr)fs3~JI=~XZsl8D@>^h)x6O9M> zNEr*glH&+|yCelatxdWC4e&=qkv@Qr#vr2C8Z`DpqT-I!=uqHp1?cxC7$XWyol5Tl zi)w`9&KxHID5K0`Pj>kS;2K@g5dZ{yVxPNBIe8QFu|9zvz+8QzFW`>s0#nc)okYT- zF+daFM6`+;mBKE)*Uv`x0jPmX>iMCeHqp%UYytqNF#%cj*q$>IV<;(+UB%%+`@lu+tn}xk+9xY23B!C1Q^Sd^IP!3(lDu5I4 zFY-%dGg|a?wkELHzq&2g08kRB3&@oos(u_mi5#LWUEvUSV}tvHXV*R>0d29a)Pd+TY+GU=FKcyH;?3V^m0wz?#(%fMii|H zi1ZU}%?G`W)fjraSEl@!_wkU8^+UA|pS33f6M$!&(x^9$42AtR5OioyKAS7R4llaH zUUs35zSROm8@2n4Q3RpeeqA`?fMIv^E3%h7ZQeK-`}n%xrOV`oV!e(fKcp(7KbbUc zx)>O!-@_s2=p?NfDCZ;dL^P}R0Ey)FK_FU}rRB&=2sNw;%_Py#oXkVTg7+ zGQv8ZiFq6hdFg0dlJX`hvdZ>o0;Jx3h;hLnaiX<1qr9B{0Q=lLb0Ul-kwo>92@b00 zF`GT3%O=hcW2A8SIqe*1VYxPZ>1UzAYVT~2;I`8<<~X=Jb~ffs*o*$@VH*NPz0!8E!U6ZzigKmvoJ6M-9yN2v~+ zGzuKp#;5{XnWxPJ=)-6+Hvpy63hzT_6OalclA)*89QuiRP`^ra1;EFg)~}UPyCK`; z+}a=+slY9?1-AGOUHxBFjd3uhHpRFVNVma?4r7qkbiVDGf&j$OuDJt!7<&L4pog*9 z$kCUv#}Ly8Fi;y1Zq7VoiP0;48P5StF1O(5amu{wwoPfuj6+5dqXLf^N>bezP$DrI zZ+K`kV*vOt_BjVm$uSrK+JpQpe@F_O;Q@BcZ?tKr!S{MHefUs1;{AoR5QdG$qaQ) zgmD|cv5-UjXQYYvB$Lf8wrJ1b(wEaTvT2M7c!s>}+U9g4B{)fXm`VA zIOU=lopPgtIiRt$cQR^h)*reUBRRt#4iH%axS@;mXO5F``9DXG0j(cE2XJ1$A|Lc= ztpE-wqiiJZ4?j>z$6zAFRXQj z<_7@J;2CEMU~)D#M@|gz+B%>ctRa6p7;!R8#$8H5U!tcuD!Tm9{ddwa2Ar6ahz$CZ zOmKWeZ#!VI#yFYQ%-U$j#!n{5DR5b&hJ&AU$b(K5+#)*_@Z}hCgn-n5Br;FNyoVP4 zr!8_!-b8ocOX{4E2kVgm?(f_iViT`5A6+o=ptfm@-Tp(ijSX$^np{Y`rH?-Q=x&aY zT;YxO^nEe(ExK~dfmIwOJjH|RVAr+6fiPw%TIT4I3K4Xom(;ogBI}Ps>L(sCtj*PU zv`5xNI-$AmfL8!L`y<)l%v6Uz9HMYGny5H334F${8ohEO_Cz3qn;`2AqG)Gaz&Fu` zP3kaRPWJ$d$q2BRvq|4LxI=rgOm|yP9BlK~FFueBa!+>XS#tYH{7r_<6L`s~7fETn z%{rk|tQ+f{4A33gpwI0i087sf^sG$&cm_}R1aEu0mSy^*cdcJ*TpvJ3prZA#eocE( zRzqYIz#eFXo}&M1Ex^0w`Qc)p32 zVK6ndXE+{t;vZvEOA77KU38S^wPTOtw9p}Zz-Echszkl zZ`byW4BWM2tZd&F25C=MXq+_`0CYint3T~+#e z`^(zFq0-*oQRd8^6aQbFQG{v?E?f}Cen&@XYi)@(7MEp<7niP%_R`tDs;pYMqO1d)$PYB0C?w@<*R$om#-24oLBzk zpZ{lo-}nFi?Qi~j`E{(Btj`#0SUP%*>{VO$bRG%;pB>QH9~^$wHCt~DXPdDXD~Nm{ z)rs2u-;18~ zJdn=cZZ|$2HX5K->Y2R)C<7=#6TlBp(%eN#Isi34z}A%*2Rf4X^y$LpB8wvEM2;B? zAPo2id~o0=3ep7>=H+%@QAFs;reuHcO9Tu6e*k0v8a4`N)P)UruWeC5z!#2x@-lc1 z)B~D`jsyHvfb3Y>H{{xLoN%eAQWm8=i#`)EB(;@&uDHK;tVMP-pbyQ_kIjkh#wmTU z`c^y3%BAyD*6asvI=&GyCo0UI>u=d)WQA-2S^yQCb>I~+!!67i;k0d2IO;3oyBet| zy06k)78yTO)|`66A}1@DcIJc&5B8*t0b0?49FjZWEpW^M6Fz3JP0&jnJ{Ksc&xZa$ zKEPK3eKB@UzP(7a89)oafu(tABd|liF?YAz;vK-O0aB$f0;hmE>aPKu=m)ak9W@a} zw%H@iNd(-$>bCHmUA!PuO>N-1r{XhtCGYqMv=Xr=;!H#zAj9}vehF*<;<{wRyri-M zPwl_af_|9HT7650~sx{)04Ykpv@^-Z? zO_?%Rz#6a!pkvPX>DFTa^{Z;B?c0`P5x5|dD_N+)e&xrg&JE^I70Z>C5hYw_Z@w}O_?s`Lip2%@a4_`QMMm{G6Rn)NC zbIGKS_JCHR)6^6M@)@VGh_DqsNDr91_eEBkqx94Yt|=d;#M_3v)JCc-S#%>UIoT6> z0Vr5Ow~++&$hAn#1#_n+NM^l=)T3McA3xRA+Y>tMaLi4rEjj}A^*Lw8*$137Mepbel5xXl*KKDTbn`HN^20f^2(Ni?%I568TL zoG#WuAGW6`N`Y6_FME_7DZ9i$lR3L-8Te}4_;(=sF$QB7p(m9aIO))!g2d`b9?8Gy zQ2pSCcZ}6KR4dY&6A9~r5OV~WiZtA?t~b|?%Wi<04~b?`%a7B_SO>mw(m7Kcw2`%) zS$_%;!Kw5=jxk_`^TG+{u-lZKK-%2Z4iI@&Pro)~dMsytn z7`F(X1pYz^aoD9C+UzKJ25JR1cV^U5MpT6X$vDuS2s^b2DMijHKvHB~b#$dh)_E{A z8Jvt%(L%;&LteUYW{g+BS z?0w^7P%(59Kni~0YZ`80{4vIi2e|9`OXrW49YN=nOXp;&hf@wU={S{~CC;vAZ5WJC zpc$jFabOuO#=?-@zG*P|(tvnCQM^TOU<9CwBh1)AOMD{4>jyiNhMD>j#xD?p(QN#T zll5!6)6nLCngf~vl>l_2xj4k+%J=n>kR3Uu3Ix@(R&y~2ps7#T}=XFSHQ)+gHFJAN5og8u7!Q%{(;HSEx#0q3j>0G)_7^Z~qCuXy~) z{R%>HSW-tEtT&g7m;jCeima*gVJw&noyBP+Z{)<7%o9Ls+|ngQb8&`5$N?u36p6l? zR5A`BCzjsu-9X3}1Bv`_3^`?aQ)=`r^~&5iW@I3NqUbk24}crG7GE8l7@OzNoD;%e zzZb@)wkzP~;*HxWN1S2NH^u?PGQTc$6hp@GmacM<2_8sW=TLH@IBRq&nPK#kb@LEG zC&J4b0+Ilj9G-|`Gw*bsg5P*fhb1r*ZE&VVz0lPas6Cg_+h~kd+R~4`M&tzEd(Rxn zQxkdZ^cU^WXm@O2q9}ZiHx6!q@*ESghIZtc9CAF#nBVCkK$yc4QM5n`^Io=ScD_Rv zM8g_C*~b_B7tzEq##a%$XkaXUdXFCGyrKzN<1CUNI$}#~+<-drriLrI689@kRh}K-T_$26?#d(Ufb864mv)#p%QJ(h3tz6RC9^bVT@9MtYKiIF>*q+OJ7R6 z%*fA>3x8YJXbtoO(n*O1f|8ffppiDL0a1zoh^*5WW6-}f%q~DrI*XpruW?%|_VYT2 z%gI9@fRD6&(R>ciq!VjXy+5+^-fg=1Y=W_OZq*Awq>sAUH*5O6c{ZPwa_QZax6lcI zSI#nr01riCSPL83OfNCvNa8Hz?T1`@|YH@OWVH22d0<|$t-_cw4EeBeh5P%9J zkb~kBml3yjml}cF%8qalj~&^UwE_3;+Me|RhvKuQzo+zccb365{iSDhR~Z}_h@ai1 zw`X;L$ddZ#^`?)AgBim{`Ngtv4@irb`+iKe`L$r@}0KQ z0T1Wanxa$aR<$C_ZbiCU(+fo%39?^~UR?OxrWf$=L0e+O>A=0aY)mk-IJrO|4(;ah`#cXyRfM zYk=KDSK2S=I+6Zt599E?{rt+s)9E-L2?xg*wC^y3PPAv!Pk@iqNAWvA$KM=7V2&s| z2hHf}8PRJT-Uj^PPv9S?(z>PdtYz=fz3Av*K5hKa1)_{jghK=@Y;>^n)Vv%b`UE`C zRlcX|(a!qEH%_{KMH&KZIQe8oyKJYcK}+*RM;QV@8~Z5x2dz15(%3RE;e4d_j2VNy4|qgJ8auuz{7)Y1cwIUs3!|noYlF@f!Q*)mnraDht^tws zHh>ktvATVEIJmnW08hYEw)E-r)yRtVp$))pM(c&s%en9GUX{9AbiZgAU`CDfJDNU= zbplw(RLK}G+5;*$*nXOiTXBIu+DN&HaRYV$eInun37|V&02Bj~SySDeEAoH9BKxiH z@sZpEzeFY_NE-90j=ehk0y*47+gDaBnVWM2{w|n1EogN-fiA!WKn6WBO+D6(|7jnn z1n8g>=rsIoWCRdUBhBhx0Lj&z%Szjdg$byeKj1-nDmntV z0ATb5AYpmfQG2~Fzd!|yaFUyo9f*yUpyz*kJ^Rg!QsG2(AXUK zmZI6no%sN$f$CD<{RH>{enor%b3|x*55F#+JrV1srmf;3-k8hQ7@LD;01mlA52?fs z6l9kG7y14P-o?B4TB92G=6aV_O#VdG>JPtxbE4POe{+$Ew9`%N2UG6=gUFKhq)&TZ z>MSrE?|snRzOi`z%mjj@)Y8AkZOv+%Y>*RtG;Y8Wo&(|lV)PO)(ghWw-OL9l2RJj2 zJwac$51$NK@jp?8(rVSpLnolRlvwp7{SSC%Eo=_Ipk>MYke&7zXT7PG9%Iw4T(&Un zEcNt`9jceU0Nn5!ZPxa8r=F1>4M}KnO%)nR7L)4su26UDR3y7t+ zjUTN<0L>XNiSepodBTrnyDPa6lJisMNk8{CM1hi=f7?xq?lwdr|z*bAi|A1ET5Vi&L85_VYkqJ&Y)q#+9Yty&!X7T7S5*a}1_NkY}VHfSkDDy!d zk&+A>hAyL&p$BX+cXTmd4zg#_m7~uP@jC~Tq1xHHIQ!#(pbevDYy7N0(V0*JJ)z`Y zjRiOm2AgOZhPT>;dvm@30CZyf`K|#*6iJtI=mZ)7fL=Ce&L!F#6L5<$EaJ)ya6mi? zCr|5R^TQ`J*cQ&SlXFooQid6h40rPvr2>3mXfWOVHAW>hQG~8 zK42Gp7--vL&W#bv_-6P4Ma_>>32Z}OpnzLy83&9EP6NkY+vp065p~5-tzgw_>8y)P zV_X6%I1$(5`2Kusd^qCfDP0|aQ6 z!Y-Z!p7GCA=|gCO#lQ9td}M#)ZF&&7>PdL$oZi&+PJA&`^~`xI%tpVIM6VD zj?Kp5?xeSOrO7caf!qLaW1-(TpT>-?QjZ%4R6k_SxI}jWiRoT6GEQScPlp_$d96Y3 z;xS!a0l->Z+gLffc&cwHcKCq)be2eIdI-o~<=}3P7icQl1L#bzs9PzD#W)$N)(ajr zpgLX|pWn#@o>zeMN;+-i?AG;q@rO$*=tJwB3^zRSF1il(wI#sdAPbMA7fQ3HzW{}z z;Q$EQGQUi7yHg9Ke|-O)`1@Wuzt$W+nm32Xo&$^()ehWMcafv#|8%LfX8zu@N6_u` zncvaZ-idBxYU(TFavvp&=4P$Xi7u70j_GCd;lz!_`mqiG*$id$MSJUB3KBpB&j14q zQMwPnu1tjz1=^)I$%F6FBxN@C4LaAlF$Qwtr!m=s{f&>J6zOya6&2Lj5c8C3UH2{h zkpXj5)6FxY#LmXtfj3g+-@gNhcjNNi@>idKnBX5^$pH}n-|wQ}fqpIp5lyCD`1 z14mX`o^hkKy;-yaM^5yQR2lT)0E^0C+~X-gfsMe3beV%S=R+RoO>zbV@wayY3Uuz7 zbl^n5#y%2yorB1!kYeG4b+CVR7*+k57Q8bI#?cMyGF2ELxMAJe(%IgcQG9C#ddsGb zBV~10M_IXId096+SXQ;IEG^5Im;S!q_-;j6AKz^n-B5&n=c(JA_nFZxH*M3&MxbgGy<;_RRZ*M(Xe*4bj z@p+>B?(Q??clRcgukO!z0Py{5!0)@CFaPep=YCCJ+D9&*KbCt$jp%gAnOc%>Cmr$W z?O2=mZ*TMrc_FhvI}w7wL5GiS#ee<6v6NxY1C;1~^sk4h^%5}Yy1>TfKmq@(S29UQ z*_Z5{_hNiCdROFMJ)p72(hC)Y0+7Y`F-AH?TjbW-6xl_WT9e9I*q7)=`qLO3f*BXR zX6=$WZ5W64fY|y3y!no-(wWNLxDD4&a(Fmw69A<>&_RGh5wc4svrk0Iv3ck$jw}0* z{#EA>tw&Ah;aRoxnMi{C|@I6$#i zR1ogoXZH?woHo5(<5i$j+RP`#B0OZE!~{r1h4C3AD_vvWA3=1N}!PSMWcEL&vS zr18180o?G*e&X=fTmduI9687|)!0*fIA`{F&q(Rl1WP8xvBxPcG=Dxj;IgB_f`9c#z@ z0B7_$U9Eq*4G1LSizDi$SaNhS^f~93od+mr4n){h00DHQFGWD9E6lF9e*#-YSE=(S z6_9+W&qkgBAGM|zU+ZWBBES~4ynrAg==9_J+d&`BK5z#Z1`xzQ2X1Vtv6wHw#=a){ z4oyTM0wK{?il=_1|B4K&_VljU*Tbpin1=%{8WsP5Vn9Hd82*Qj#s?Sy#_B)II)v|o zhJYV{mIx^6%4C|%i}Ji2I-ZXpl1^lk@pHNXS)zc>oZxit%VfKP0>}^ zXV3s($R_|;IFJXpRS@t%0xrOStce#+eyx2rnziipiO*`W0SB}#5)Pn%$KJ7i&lTMCy!IUULMiynD7NYDpeJd3YDQL<;9_zPzXQ8Ovo2jY>j6L%eon}M%V2*-MK&3x>|ULLQhGVCO`OH!O^kc=f3PmTCiw8;H;mmA$y{Xlb-SH z=(^aiL+8^G)}T4(1t|M><;}UzKK(?tCwLA|0fYMSQ|hmSboM8pcE?!gn4!LqsnHyt zT7>8T9Je0H1CU(wuYfeqn$M1S-kNG}T^i$xF)m+}^%JG?E?YD=Y2c7Vgd=$Y{;A<< zjK=2HYhw{9S)>2DOUtr_2}-(PM&!1L&4&~qw`p-efi@gm4g%1FqpILN5Ct$`v*DD~ z8*~q+bE6InXWizU5lHbp2S)Uc??f*!3^+}|L{W2Y3--Gx0?|`Foy%e}h_o&ZEk*=` zim}N!urNgt0)04Lihpu=S9dN?qmXf>usGv_^T-f7x?jOdH~y+kFjAg>=FxQWjRp8N zf7YaQSOIr{K1Lt|%v>0afC>f-K$CIg24R~Prxn5#^V7E;B434kZp{7X^R z9_O|il2ZKk#v+ySQVmlen7`4E0alIE%LyMOdYM+BA<;*xlMCuP;Ic`^8Q`b)2xNSKHhM^mDaq)nYYsRI1 z7}mzd2?nS##`;&cWQq&m2>$_X8GS@(Y6>wPvqGLT{)`gMOXQs z6MRv4_{s<+U+OPvo702N$-y$o4FDbu47xWhmCWXpeIk(0xnh@>q znXGz_bA)%+E`9;%j1ypn?g^ZIAO%+1nYvQagN%FI1BXma#48yQ2;kbibtLtp_N_BA zfycl@ddW?~Ko)%9tl_J9IeegJ=w8mKNHrjogBQ`Fz&4JN@2ms28vFfMAHN^tRy!y3 zK_sG!T4luh8G zLoQKz)|+=YoaCy4Ag|>ClDXiQ0|)#BYT~>3diLzedP6H7igrOOKpdT@ULe2^$RP4u z)K{h9?}1(KXwMkQ2)&0-^rZ0t2St(sfAaR=_imM6eA(&JYKkEyHL|xeeV8^Z@!Xj0Hq#$)hH6iI>S^goqbZPHVlXH)*puBNEp4NyTh1YlWD?Zn@7vgV1L=Zb#v)#Z!4o4)|a-G%gefMs+^-BinF*GH=qC&66-s^Yixe4sXcb?5GlF${+8l!LR z(+T`VUvw$pn*IX{+JilFEB1#92-d%~0cf-?^zX1vd)9J2;8f@BR{q}TV&8E>J(u=J z>|wxW>xN$QZi2-*pK!L#Db}3tn|C?=WXYKGpfA=3Fp-U?ZmCFUdzg3FQ?e24Co%(o zY7YMB3$@nlG3a1lvCjPNK$6UhVxlL>cLM^N0}#r-0RZ{vz1yi*9Qfw`9P+Cl`!PFt zbJ)0e;9b#KqQH0>6To<2G*** z7!YJH!3V&>s&Mi+yZ{gN`G7muf>v|~xnxt)34jD^9Bto=FOZi!tPJ}K zs3a{G5GYCy0NF(2p|80DBaKOv3GhSzWD!V}bB_Md-8=rDhb8v3;5S+EJ{_q&dew8< z5?uob!Z(rC=FXO7(`Gtc_#R{c2ql8|;{ZP49~%s42Sfo>0LQkcPolKa<&2~PDvFde zCt#Fz^an%%0&NRt|1AFBaD(x+{Ep0I$|?O5>w^p%2LML>H|ea}0sf)|dzQ`b;)?=dA!sJ+IH69wmBz!-s$ zA|s{Xisn4Le`nAJ4Qr-k-UuCboVMMVYu{mui5^wE4|s>RQj~pfE@)N+ zF!~=b%+0)jZoIM<*;RvmUEj8cwg5Xi(R$luobeNgXq^0R_4`CQ`VRO8` zT%HldKxlLyTC+Lyo(vkBg0XP! zIp{Wb1{p_2Uzrjd|6?#Ra2T@;Ep#+LPBWm-7=UdIZN@EH>%()5aJ0?eW7D+BIRQXd zrx^I*18@~3;1rZm$GAin{b*0S`UYY#4*k#7<`rz)TNF=6TXO|!a4>BA-Up5W2%YEy z3m6pjrqpfm?!lz5G$5zl_-AA0Oxj!+clhS>Za9xlzZvq36$X)uW^5M5Wga2~{hv_{ z-~sXio6Mj505=)%j5?07F#!L}(MHWdWh7=qNjNh2C#6tY6JywEyLa)^SceBXLJ=Q` zMK%z9h?E*g`6oO0l_?_elktsL>5znjqCZXwfW!O1J2m*mHuMK=x2Dl9&B<-m3}Xg? zz8Uv^>UU=-;A*Vz$o7EQ9NdgZ2|k(w$EZfN)hMB?O&4oZv=3v-dkL%szm3n|E(bs> z^Gt(3WXMm>I;Y&)>0Y%g-mA3qSc;O8Bp2Gr+;#`QZ`t+l_IX^sSL|exk5i%lbR|E$ct`39S zo{!|X(+LP!Q~$_1Gfxg3z=H##Ut=cIz{K{J`Pqm0`d;5;jhry(jZ3=qp^yQ3fdi<2 zPHA;KYgDa%YBbof)D@g)P9t5Vur~T|kS~U810{_KT{*anF@FQ^$hF#xQhDh>>q@Ge zC^dbcF+E|uh*UFfJTpH)2Jj`p$XFNFE`Zcw44MP2IJD}v8DG|*`{-T*#hxV}{%WciB7f+QO~C#z zrp%Yj&~u-EdOzrKCJz@Flit$@N1o0CaedtS{4ru^PpM88UKJTRirk);pIbna}HTx65;YtFwbQfN^ zu^gSvfo>6fK?bZ(z`Jz}tRq)+DxjN8axz6ynG4_*IEXJIYVpz9=HzgC4#Yl%*XEJ{ zR`88JL3ew*wc#LaRT#VE%|RF)PpA4Dzwp9Z0Zv*U`UP}-_yCa9FL1>7_(xAj`}{aT z*4Hx{vODB;xPMgwxzddRNI)TgpO0F9-lKCqjgK3P{dChWkPsNiVP+4YH(H4j;{1qq z;e2s2oD8!!80h}bF~$!LpA%y95zS-oY#cz*;%J74_>I2wq5ThC&6_-lW67=50RbplKm3BtRujnXW298X1_;Qa_nQD6v+qR16upP^(Z2j z{uE)TE%K=^d|{J`9Hvk3$NnRNR2%wqpk!Tp&wi?3Iu{st^@{Im#4Dgs6q_;AQS>8Q z0zb*Gy*HzwqMy`Dp+DGx0OG3qM4?x}i`)ZN9C|u1u$PJEX+Q$D1=*?esh5uUzx_oY z_SU?$KjhNklzADGIW_vx9?%8>B&zng1RHiVnljS+b0;*z(ozmfaZaZwtvj{qe(_AZH_2Sp2Iy};;O#GyWoiQ@P7IKYfk%n>#(ZDb_rm3kQCV1z6ISk6S>joz?l0)>1}ejE}3YU3O6@=N6krD(eGkl~uYHGR`UTXY0YH~*jfVd7tcxxLXaIcB!R^!{+RV+~nxI(B zjh(1HZPEK2XM2Q_3Eij7b0)~cJ?A*oeNX|!}w=>_ANjNTkoCd)3`Y8vnzUGR0W$83wFf-Oy)0;@ZHHKX2O?B}Q_#Wg1R(}i zuPSa8<_lXd_E`KRkM`n>*a{lCgaRNV%8kthR8SYr|AA0s!}#zVtz8NtrQD@0<|a}K z_${i?eo8LL4&K@4jR`NMbxxW1VuF8pyLDGfyt^&OE?b7|T2p{Mv^3WW^6XA<4`v|B zQuLgtc>oqb4@h)LbY0L9&^34Vl;ZLR@{D$DP;0+Q{|4Bp$!0z4A3uSD4jpTKwxbDF z(jUMf`~<*=Fa+XAu>~?|e{Ek^j89#=O$mUl?pztqk0z)pE!L$kl^z>n-fGmj)m*TL znuFV8EFwz}q#Y!Ja@=!IhCY*izcKojmb)?5?y{UKI*8H(6eYMBe38jeqs=zNd!qBY zbFBlMfPcn~-sT`x*89LTwUEsLpUm6ufF-H5QiS=l2V#8I8Sv8wCCFB%C((0$cW?kuduiM=LAQ>O!Fj=_v1n&kJfr->=G1p+OP2#Z z0h?sf1tEC}hntf_e|e7#0<(dAq7P+uNZ|#h0U-f;<|widJ%EMg%?9(1@k@S(oKpx0FOO~Kfpip0i=pZc6%?{18#wXhoXHzVqUHibOsQT zVSpkql3WaiEhuu)T+|j60XiD{y73y*Xz-LARlu@8*7*8ZAM49Q961IB(9b3<+NfjY z;*50TFaS_Q1`0(7Ja9N|-i#QATLZc|No8pG{#+~$fSLa@U^xET;Y6q@!59ao0HYWv zz${Lk&5&bn(~=&{hyk8(0@V~;9geelgbY#t%czrZEE!n(0c%rq`4&bfS zU;Nfyp18**#Bc?Cy3At!?8!+JM(n9$wU$iQ^a)u2pfNy2$Ekh80ic}Fi?J@kjMK+R zw_%{W`6PIp0Me114`WcVU^J-Fi|W})br}t3Ag5d1IC78H=pho7li)eDFp+sPVGL==q6Nz4y0NG=nEh>fX6YgVAu z?;LxPf$87`uM>ET@p;})&KTMEEWn}xZU9)Edr?ln4>aXepjidMYEf+ULIF4lU`8JR zF8l@t_>N5F1s}2Y$(!~>BH%N}f&nOMi+s~3_{NyK7e*hN0Ja#}#zwX|g$bMojMy(PEE9l@95%pYeCcsz=koaZDSzAc*7X8{^>3tQR7^hCprM@ zfDxQ(a!c0%gpJ#{GHNCIrRUO#4x``Z=y|-xSB{8xwGG(G)Xx|rp5ZTDO3zy_BJcoc zz;KS1TQ<>!JX`-93=xjn)DC^!+qpd2IGqt-fFFF|umZqDxoQ`PBl1+lnD>ldKce7( z6(SzcQtcUzpl3c#Fk19mtyM>kv`e1>lI#c4qv^lI^l*^ER z4ynjFa~4tF-m);)G-u0N7L`aRh*Yzt@KvgEjs8&|(#_1(Nk>ayDQCbtcqaORe7np> zIxU$azhs%CV6XHJ+MBn&fhOqyhTfsytVc!zz})&LFZClz?^5c}8i98s=euL`a7K%w zXV$X{S(YX&Vt}q72lzq;@h%;(c+NhYhc&TJSPy>I!>EhtJUi&Cb>7rjyBfM_Q$~%i z8)z>p7SG9bkTu|9&6#_qgT}swA1;W<`hD@c`hCWBVE1SOK!5qG56k-@+gnEmLM~h+ z1JKw}wyf_>IZ^x1cgAh3Ky&(2S`%ZtMl(2ssNg_?IH6lme&IbQ z-@UFyr({m)Uf@#w}pO{4m6TZ3g?v}Po@rrL3=QaM}W2{%xfX*H{OW7@50XV zf4uQ>`Qqji<%?TSCII-`d(;0F@b^#u@b~3E{<~k5>sM;cV*t7JCZg3oB=sA8-o6f4 zuVoTMdU`eiIC?O2vh_sINCT#ytT}+9116aV_I_)MocLHL#;i^J&Ir=@nRZ9$PWBRg zVJ{HbN00j-o~4}=?^#3E#kWz$p_k~~8u3)YKRV1az?ocgF=mb_UFLsu6CIr2#~wfi z9gvxqIav?2Pth|D4Mbe;kG9U`UI?gZ`UVi#AMAar77vIrU>DUKt%mYARJ+mj+KI}?7^S4MjAcfKeVyw(H@U|*eq;T?Pra^=tH~cL08y6JO>o8w{W&Z=rz%k z=qVzNuIE_N=VXbVx_y%^2yi|h&fwCdCtxS%7vJ00IjbUg0bBSfwU)eD>kfW7>1mUP zJOM`dZpH*CK^Ncv5QM`H&;jnD4G;Qo1gi$p;NRE27R#_W%&%WapDLpc??i z?`lf|UhKPPPr3jle4c0%%|x|aI8!6D(U;zD<_vVwzB&0nx&utJ9%0ZFz^$g4Xgq5c zjew@W5}*Y70ZshhI`#od+f)1xfCXf^8hrtR0G)hUfEsWPkP7%?Ym+&VbHES!8#tg3 z>88L7pcy`^(d9iL%Z1Pd)}}p=KR`E_m*^;dE5L#5Z`r^Pk=nQ|feJPVfX91)4&y|B zfC%ss?|^@30elcuMK0XeSNZ+<+fbCymd;TfEEY{g7)nciVTZD?rB9(VA8& zwb9>)LvGK6F7g3@I1qDzg3ENI3j^O4&6}DLsUi#cT;_ns8JRZ}{zQUX3tj^S>v}$uYXzueKN6X@as8U2?%T%U zfdu{NQx`%2EYTbt)Ht*j*f026qulCEz4!`<5b#@i^QeR*M`nPdo%?op@;VXY(TxkVb1`w*7S6QO|w4ct}d!H z?bhT6*{`(?w`NpgjqqDn7S5ZV0GIT1JR@Vq3=DHw#k^TAk`YxomVniq8I$rN5$gs> zr$*nLnUk{ipr}Ur$n$6nXf^)k;tl{QyQw?&RnMRkptD|J;{wtCq$@BLz0Jp5&{AZb z!&Z@boE`^lyy+ElYH$>@DP8@!~5n4h;wM*uwZr9$};KY z7cy-aaB9wMMnEqRQW~`gKo{7kA835~FlMw9ty_WLb!AhGjU2Cy{`!L_o zH~ev+ZT1W`paTWRVXG-R`?3w2Am@_-2P~70x;hw?kwRgt17#H3eIo=^2u(f)WB zfRr`P!cdcj3`p6&X-&CuNo^4I%Uo~&YPNkfHZsvPz%J>efH&Zh6kX9g?JF0hav1-@ zQwcQL3`GglOEk8nlPlUuzi7Zn&_0Jwig0z%s}aj+*}iEw=fFUel4{|^LI`^ z!y{=J3xNSCatlCc(=&cXHG_gt$q```HW8G-H-?^{j6kR6=Cw&uHxRYogg7HNA_4v6AOVs^umRKchpsM}p_j-Bhe_1Iu|wMvsH1Z} zzW+`Ff`CAL!ap>^AAMUBbf}YSk$l?s9KIQcbX1Xx()T$t#tpoZ4oybzOdET4s6lit zHOTHt)s>H$EUGM_ja$ zJ(mtfZ+tekPd|DuqchFbIyLu|ce9;(tMA!zCgg@**}i#A>_;)5=qG`uXdAd;3;>84DRCxANZYtHF<(slNcS_~{Uc zE#Z6m=$#uiC6sK6wj*m9y&lig30WgK^z$1b6Kn+sp0#X+%VlDXJkU4Ryn|jJZCD@H zgT02HG!M2B;1Qp^V~_AX9R}b5Ca_OZ--Jx2Y(_iQCZ4iI$fkGg`*?5vp!eA$#ky90wV5r?jj?dr ztSQk`_7G8Az`Faf?zG2|WUrzpda=J`R^WyG+VA%Bs(Y`dPN6sK!EORq)33YTMMX8* zZD=4I!Pu{BiJeV(Q2={{^J7gpNDxg2*l_Fas+I+*ciH;(p0#~#!Q*{7cc31Cf};z# z1E#pt!#wFy^LY36jhL&tzOmke*MJjy60imkY3&{jj^BwyODF=qyURZbEu?m{fQ<61d@$hbHR7> zQrFR~!obf2zQPxkwg}L2@d4Y#_o9&K7C{xF3iU0O7hT9FIRaLo9ogW#s~ZV`B;Wis z(Q8?&FXU8PP2{FI0e=8iB5292{Q-C+(g|Pj3UDEka9_wS+sOU_#3X0h0`~dNK0@B5 z6XO}s3Wx__049??QEvb|k#5pvMeEt$JSXCdT%d`XaG4SvH1h%20v-S$qNRWmcwz1M zUlWOEo}R}`w9p=q+TLl-_II=cq5+^p#u)?fO|&A60`Mu)%sh@C+MA$Z9wG$4Yb`o5 zb2Rl3nbxnpy7qCQba#lF-jh*}>Zt*LGW9ec(6P8G@5cEYSKJKegQbiu}DBX0j{m-YY!Q#Ae}Xh-oPaw zJm5(?z(qhlUV9hFWId8Gv}P*-xqJs)LnC{I{{gYIk!j5#%OYL@PsVKw8$$-HH?jyw zBo9C{0Mfx&!x=#tymjc=+u0i5kH&ik%dr?c-I;ZX!v+EXlF>b3|B%m))};vuy5$%M zy=1}61cQOU@E<^<0|o5?Z`I19Gx)m3YYz0i-_;nb7nU3iy+97#Y;A>QbwIZ5WFMh zWGrfcol{ERGdl8i(bx<`9(YbV@c400XY`3pmeHn7#-0;NX`CD#bF!fV2{I(fl`W=!^cHI&k#PX1k0|2A_iA{oN}<=np3F$7nPs zJdu{jAvYfpZ$lv;z%(0;ae2SedvCcJ{h?8&rKVB)W+;_Y>3Ad{aaOID>RjR{!^2H? zz(5YUNIeESClt>`YI5Ars`gXCM}VAkQ}RMCZKi8_TB;EghBG7DbD}kX&@|Ni#0S;Hni1GNqpL4%l@V05I1+*~DKC z5rYEV0fTrdMHQcoQ&a%Jj3eiHeFK3wWWY!3j=o?>15JQw3@PopIZq8m;0PlEfC8)l zRA|c_(7`*LAo@WBrMi0PrcXQpZirX|;?%lxuf=B96aCg3Cq2XQ<2<1yXP9GX-IFW7 zlXa00*1k1Bo;XPO1ek52AGe0lgO+56{@_fSt3ClrqDvU0Xpfi1T~EkQq@Lp7i4tM# zStI1g_{^7la_IC4`0*i=fDB{Q9~sk^x%uEH0G%94ho^_63rdl|XS_vsj<+?uHk?a( zAy3H7>CUyJ9~tKG7%S%%IBJbw3PVLi8Gv1sF?|mx!Yg}99vXzKqX9i)oE*;Nf5-(I zGTcP*N~Jaqk%~aR%DcZ;LucrMD1lMEz5tIt3EApZA8 z>;)p2i?T6q{BSNaWt0XS@fqZdXa9bAkL*sYi@wYriP@s15>pLu%o{@zknNcAnj9R z=hj;l=(8rI_g=YhJofpHl(`G1!;sDY?M~28y}!Tw)%}pGdYd>IAfFs9j+Zeq`WwKH zlXx%a$6&t@&IU(G)E{R?RFQp~%%ZRTkdsfAL|vs59rB}nAO;@cm3aaEL}cmTe7w(g zq4R-Sz#qT+AFv2r@E z7Sxk*S}b*g0qT8Ggig~r6C5l166c7c%z3o;qk*}xN30!D*473c4x}L;=zA&j*oi~i zg9fL|hi@G&e|vpK`Qq(~2>|}{|MQRKKmGg9V@`E_nH&8;kI@CzoybUhPS7vr-_&{) zshT(Q#@Zndz(R*K-bXLAsryqcw?MzsBlrO1vqs3B-|0x}H6#9FO#+$KufrFhV1me@ z+dadPwXW$l;~@X|k-CZP6(91$7Vz;sppL$>C*-~qJmd81o0IJj2)i z@tl3l_q7%(@UUiE7$2aCgGT52j*J0i$pr`3-a(Gh#DOUJvcI!IGV_LopY*qXW>l0C4ax}|Oj{aY0tjLs+EYBQPc}6WlI{{+#a7O}IL2Jd z2}qm2oKBVfh$Cu$rEjET$_NnUQ}^(LsgKcd-mEFvmp)}b0O&;O(QR~#Xf?EBbJNMn z;@BsxOHmN)ZVpx+YQ-GXYePdI9iYlO1PTH!$Ua*J=q2S7V8cdGTNSTgjs3@%IkTKy z<1tsXCl`JKbcY8z@<1Ow?R}h7=~)0fPAd?W3^+`1Fv5|dQ|UdLQC1ZGyybK!{faHK#dTnraJ(lX+EZ z*jZ-)H-LkKN6tK;h)yJ1q8}4n41I(r=;kN>aX2~g+QtvRJE$28n-QqS*`~jMb$kMm zIzXaIr#I7)WuK#kbVanF|K7RzR{8>Yp~1Nm`7VdqIMT<7zV+#E0LzLcqO@8=CLIuk zUJIQq+N%O2YSuY`-koi06DY_&Zwr5rd;mm%jqDNf$obd5`HPSe=_snxK9p(xK)@I) z08x7)a6AhjqDRoht;@8+b)_Wtw)ZO`yj4)5jCI&xog?-joOY2KWKK(9vFGUD{hkrU4!t zbh+fgngrNLXLS>>$Rj)>r=m#7o^b*k&0VTB{sT+_VrZUGhX>UkJRZ;P&h=#<1?Z?9 zXDsyY8NhSccrNlFU-nI)36KOm$eX^&zxj&7tQUCf%pe>jTs+4de-5n`ATmF z`WOS?Nxy2-0XWs@TfSso{63tiziWEhV;oy!eGVl+1voZtV5xW2$lDV3Nv8J3x&$r* zJFPu5%gD(cW6ArY!Ao`zJ^?7zM|7cx+KIqTQGfVMK7gcTwxex%dE(KZmSv0QB;e^o zXOLwPlZW>1%t%FGuGCw4{-h{5z*u~&?|M+7R-quHEeW6jQSk;yHg(cV8Aa$uVxSn% zan;HtW%i6ox!wS?KvduyK#)!aev29e3L2}mBUN|Ogcq`1cAHdqAgB6*z+rZu+vy#s z08$V~j zxJvfW%EcpxLw;O*10)qqDnij%jm;P)y!d=Z`98z}0&>{M86MK#L_`50su6rVHzr^M zhkw$9=h9&VzBujW#7XrMvTWnx^fM@&h}CpF2H1&oqSPj<&a>-|MV~2PDg6_IzpE^s zH$8-~HTz-=a=tgjBq?3alJ^+8HYpn-Lu>!84Keu*F-A`D#r%#zz<}gzX04}~m$o>- z9CyGHBM)!^^jtJ=S~zq4Y4Dk=`HOtxSaW2|2WY|&U^qId5G|xWo&H3@agsQkA`xx= z3{vli7SoTb?twiGK&cI&&yi5x3^dV


    Pfwj|x1x}J%4IBre_6BrB{h*->YB#JzY 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∨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

    f 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%0Ag685CRZ>W0 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

    4xly@Payxy#@32ZlTCc%{Vr43 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͢tt;Z<@WIY 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 I-*JlgAG5x$F8}}l literal 0 HcmV?d00001 diff --git a/docs/generated/alpha_test_20260723/classic_route_visual_report.json b/docs/generated/alpha_test_20260723/classic_route_visual_report.json new file mode 100644 index 0000000..4726471 --- /dev/null +++ b/docs/generated/alpha_test_20260723/classic_route_visual_report.json @@ -0,0 +1,97 @@ +{ + "reportVersion": "ht-packaged-window-visual/v1", + "generatedAtUtc": "2026-07-23T08:05:02.2199519Z", + "launchStartedAtUtc": "2026-07-23T08:05:02.3060951Z", + "executablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "executableSha256": "886f69c6a823770b3ed68db4fe3790a488124c99c98dbd41944a6bed5d634dc6", + "launchArguments": [ + "-windowed", + "-ResX=1280", + "-ResY=720", + "-HyperTwistCaptureWhenReady", + "-HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\visual\\classic-route-window-message\\HyperTwist-window-20260723T080501Z.hyperdiagnostics.log\"" + ], + "perMonitorV2DpiAware": true, + "processId": 24536, + "windowTitle": "UnrealHyperTwist ", + "windowClassName": "UnrealWindow", + "expectedWindowClassName": "UnrealWindow", + "clientBounds": { + "x": 368, + "y": 297, + "width": 1280, + "height": 720 + }, + "screenshotPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\visual\\classic-route-window-message\\HyperTwist-window-20260723T080501Z.png", + "progressPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\visual\\classic-route-window-message\\HyperTwist-window-20260723T080501Z.progress.log", + "screenshotSha256": "6e6b8f2c06f6ff8a68c2f4d9e0a576305056cd6f4d7353e9894a05e63d853ab5", + "captureMethod": "hyper-twist-semantic-ready-frame", + "expectedSemanticReadyCaptureName": "classic-cube-free-play-settled.png", + "semanticReadyCaptureSourcePath": "C:\\Users\\Anthracite Ace\\AppData\\Local\\UnrealHyperTwist\\Saved\\Screenshots\\HyperTwistDiagnostics\\classic-cube-free-play-settled.png", + "semanticReadyCaptureSourceSha256": "4da3bc875f3e8551d427df1f894b806152a3064d0bf350f77207eec9ce84345e", + "metrics": { + "sampleStride": 6, + "sampleCount": 25680, + "nonBlackRatio": 0.937733644859813, + "brightRatio": 0.92628504672897194, + "averageLuminance": 136.14746721184946, + "luminanceDeviation": 60.493912122602573, + "minimumLuminance": 0.0722, + "maximumLuminance": 250.94099999999997, + "luminanceRange": 250.86879999999996, + "quantizedColorBucketCount": 218 + }, + "thresholds": { + "minimumNonBlackRatio": 0.02, + "minimumBrightRatio": 0.001, + "minimumLuminanceDeviation": 2.5, + "minimumLuminanceRange": 20 + }, + "interaction": { + "requested": true, + "normalizedX": 0.5, + "normalizedY": 0.566, + "screenX": 1008, + "screenY": 704, + "clientX": 640, + "clientY": 407, + "injectionMethod": "window-client-message", + "clicked": true, + "expectedStartupDiagnosticsResult": "map-route-opened" + }, + "startupDiagnosticsPath": "C:\\Users\\Anthracite Ace\\AppData\\Local\\UnrealHyperTwist\\Saved\\Logs\\HyperTwistFirstRunLaunch-latest.log", + "startupDiagnosticsLastWriteUtc": "2026-07-23T08:05:09.5575483Z", + "startupDiagnosticsResult": "result=map-route-opened", + "runtimeDiagnosticsPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\visual\\classic-route-window-message\\HyperTwist-window-20260723T080501Z.hyperdiagnostics.log", + "runtimeDiagnosticsExists": true, + "runtimeDiagnosticsLines": [ + "format=hypertwist-runtime-diagnostics/v1", + "session=20260723T080504Z", + "process_id=24536", + "command_line=-notraceserver -traceautostart=0 -windowed -ResX=1280 -ResY=720 -HyperTwistCaptureWhenReady -HyperTwistDiagnosticsLog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\visual\\classic-route-window-message\\HyperTwist-window-20260723T080501Z.hyperdiagnostics.log", + "diagnostics_path=C:/HyperTwist_worktrees/phase10validate_packaged_alpha_release17_20260723/validation/visual/classic-route-window-message/HyperTwist-window-20260723T080501Z.hyperdiagnostics.log", + "[2026-07-23T08:05:04Z] [Process] HyperTwist runtime module initialized.", + "[2026-07-23T08:05:09Z] [MapReady] Runtime map ready: /Game/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining.L_HyperTwist_ClassicTraining.", + "[2026-07-23T08:05:09Z] [ClassicPresentation] Classic cube presentation initialized with 26 renderable pieces and orbit pawn ready.", + "[2026-07-23T08:05:21Z] [ClassicScrambleSettlement] Classic cube scramble settled with 29 completed quarter turns, 0 queued rotations, and 26 renderable pieces; renderable state valid." + ], + "processCommandLines": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -windowed -ResX=1280 -ResY=720 -HyperTwistCaptureWhenReady -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\visual\\classic-route-window-message\\HyperTwist-window-20260723T080501Z.hyperdiagnostics.log\" ", + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist\\Binaries\\Win64\\UnrealHyperTwist-Win64-Shipping.exe\" UnrealHyperTwist -notraceserver -traceautostart=0 -windowed -ResX=1280 -ResY=720 -HyperTwistCaptureWhenReady -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\visual\\classic-route-window-message\\HyperTwist-window-20260723T080501Z.hyperdiagnostics.log\" ", + "C:/HyperTwist_worktrees/phase10validate_packaged_alpha_release17_20260723/Windows/Engine/Binaries/Win64/EpicWebHelper.exe --type=gpu-process --no-sandbox --use-adapter-luid=0,66319 --use-angle=d3d11 --start-stack-profiler --user-data-dir=\"C:\\Users\\Anthracite Ace\\AppData\\Local\\UnrealHyperTwist\\Saved\\webcache_6613\" --locales-dir-path=C:/HyperTwist_worktrees/phase10validate_packaged_alpha_release17_20260723/Windows/Engine/Binaries/ThirdParty/CEF3/Win64/128.4.13+ge76af7e+chromium-128.0.6613.138/Resources/locales --log-severity=warning --resources-dir-path=C:/HyperTwist_worktrees/phase10validate_packaged_alpha_release17_20260723/Windows/Engine/Binaries/ThirdParty/CEF3/Win64/128.4.13+ge76af7e+chromium-128.0.6613.138/Resources --user-agent-product=\"UnrealHyperTwist/++UE5+Release-5.7-CL-51494982 UnrealEngine/5.7.4-51494982+++UE5+Release-5.7 Chrome/128.0.6613.138\" --gpu-preferences=UAAAAAAAAADgABAMAAAAAAAAAAAAAAAAAABgAAEAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAIAAAAAAAAAAgAAAAAAAAA --ipc-connection-timeout=60 --field-trial-handle=3112,i,12427174811344002632,6413397226995935749,262144 --variations-seed-version --enable-logging=handle --log-file=3196 --mojo-platform-channel-handle=3100 /prefetch:2", + "C:/HyperTwist_worktrees/phase10validate_packaged_alpha_release17_20260723/Windows/Engine/Binaries/Win64/EpicWebHelper.exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --use-angle=d3d11 --start-stack-profiler --user-data-dir=\"C:\\Users\\Anthracite Ace\\AppData\\Local\\UnrealHyperTwist\\Saved\\webcache_6613\" --locales-dir-path=C:/HyperTwist_worktrees/phase10validate_packaged_alpha_release17_20260723/Windows/Engine/Binaries/ThirdParty/CEF3/Win64/128.4.13+ge76af7e+chromium-128.0.6613.138/Resources/locales --log-severity=warning --resources-dir-path=C:/HyperTwist_worktrees/phase10validate_packaged_alpha_release17_20260723/Windows/Engine/Binaries/ThirdParty/CEF3/Win64/128.4.13+ge76af7e+chromium-128.0.6613.138/Resources --user-agent-product=\"UnrealHyperTwist/++UE5+Release-5.7-CL-51494982 UnrealEngine/5.7.4-51494982+++UE5+Release-5.7 Chrome/128.0.6613.138\" --ipc-connection-timeout=60 --field-trial-handle=2980,i,12427174811344002632,6413397226995935749,262144 --variations-seed-version --enable-logging=handle --log-file=2984 --mojo-platform-channel-handle=2968 /prefetch:11", + "C:/HyperTwist_worktrees/phase10validate_packaged_alpha_release17_20260723/Windows/Engine/Binaries/Win64/EpicWebHelper.exe --type=utility --utility-sub-type=storage.mojom.StorageService --lang=en-US --service-sandbox-type=service --no-sandbox --use-angle=d3d11 --user-data-dir=\"C:\\Users\\Anthracite Ace\\AppData\\Local\\UnrealHyperTwist\\Saved\\webcache_6613\" --locales-dir-path=C:/HyperTwist_worktrees/phase10validate_packaged_alpha_release17_20260723/Windows/Engine/Binaries/ThirdParty/CEF3/Win64/128.4.13+ge76af7e+chromium-128.0.6613.138/Resources/locales --log-severity=warning --resources-dir-path=C:/HyperTwist_worktrees/phase10validate_packaged_alpha_release17_20260723/Windows/Engine/Binaries/ThirdParty/CEF3/Win64/128.4.13+ge76af7e+chromium-128.0.6613.138/Resources --user-agent-product=\"UnrealHyperTwist/++UE5+Release-5.7-CL-51494982 UnrealEngine/5.7.4-51494982+++UE5+Release-5.7 Chrome/128.0.6613.138\" --ipc-connection-timeout=60 --field-trial-handle=3352,i,12427174811344002632,6413397226995935749,262144 --variations-seed-version --enable-logging=handle --log-file=3104 --mojo-platform-channel-handle=3160 /prefetch:13" + ], + "ownedListeningTcpEndpoints": [ + + ], + "traceControlListenerLines": [ + + ], + "traceControlListeningEndpoints": [ + + ], + "focusMethod": "topmost-attempt-1", + "result": "visual-passed", + "error": null +} \ No newline at end of file diff --git a/docs/generated/alpha_test_20260723/desktop_launch_surface_report.json b/docs/generated/alpha_test_20260723/desktop_launch_surface_report.json new file mode 100644 index 0000000..e6f0f99 --- /dev/null +++ b/docs/generated/alpha_test_20260723/desktop_launch_surface_report.json @@ -0,0 +1,71 @@ +{ + "reportVersion": "ht-desktop-package-launch-surface/v2", + "generatedAtUtc": "2026-07-23T07:42:23.9424772Z", + "packageRoot": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723", + "executablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "mapUrl": "", + "runtimeLogPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\desktop-runtime.log", + "runtimeLogExists": false, + "runtimeDiagnosticsPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\desktop-runtime.hyperdiagnostics.log", + "runtimeDiagnosticsExists": true, + "runtimeDiagnosticsInitialized": true, + "detectedFatalLogLines": [ + + ], + "smokeSeconds": 30, + "resolution": { + "width": 1600, + "height": 900 + }, + "keepRunning": false, + "useNullRhi": true, + "noSound": true, + "requireStartupDiagnostics": true, + "expectedStartupDiagnosticsResult": "", + "startupDiagnosticsLogPath": "C:\\Users\\Anthracite Ace\\AppData\\Local\\UnrealHyperTwist\\Saved\\Logs\\HyperTwistFirstRunLaunch-latest.log", + "startupDiagnosticsLogExists": true, + "startupDiagnosticsTail": [ + "session=20260723T074227Z", + "world=L_HyperTwist_ClassicTraining", + "runtime_log=C:/Users/Anthracite Ace/AppData/Local/UnrealHyperTwist/Saved/Logs/HyperTwistRuntime-latest.log", + "latest_diagnostics_log=C:/Users/Anthracite Ace/AppData/Local/UnrealHyperTwist/Saved/Logs/HyperTwistFirstRunLaunch-latest.log", + "[2026-07-23T07:42:27Z] [BeginPlay] First-run controller booted on world \u0027L_HyperTwist_ClassicTraining\u0027.", + "[2026-07-23T07:42:27Z] [ApplyFirstRunInputMode] Applied game-and-UI input mode with unlocked cursor capture.", + "[2026-07-23T07:42:27Z] [ShowFirstRunLaunchMenu] Fell back to the native first-run widget class.", + "[2026-07-23T07:42:27Z] [ShowFirstRunLaunchMenu] Added the first-run launch widget to the viewport at z-order 100.", + "[2026-07-23T07:42:27Z] [ApplyFirstRunInputMode] Applied game-and-UI input mode with unlocked cursor capture.", + "[2026-07-23T07:42:29Z] [StartupRecovery] The first-run launch widget never produced a visible non-zero layout after 20 attempts (last size 0x0).", + "[2026-07-23T07:42:29Z] [StartupRecovery] Attempting fallback route \u0027classic-cube-training\u0027.", + "[2026-07-23T07:42:29Z] [OpenFirstRunRoute] Opening route \u0027classic-cube-training\u0027 (dedicated-map).", + "[2026-07-23T07:42:29Z] [OpenMapRoute] Opening map \u0027/Game/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining\u0027 with options \u0027game=/Script/UnrealHyperTwist.HyperTwistClassicCubeGameMode\u0027.", + "result=startup-recovered", + "last_failure=The first-run launch widget never produced a visible non-zero layout after 20 attempts (last size 0x0)." + ], + "startupDiagnosticsResult": "result=startup-recovered", + "result": "passed", + "processId": 4848, + "processIds": [ + 4848, + 3556 + ], + "processCommandLines": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\desktop-runtime.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\desktop-runtime.hyperdiagnostics.log\" -NullRHI -nosound ", + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist\\Binaries\\Win64\\UnrealHyperTwist-Win64-Shipping.exe\" UnrealHyperTwist -notraceserver -traceautostart=0 -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\desktop-runtime.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\desktop-runtime.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "ownedListeningTcpEndpoints": [ + + ], + "traceControlListenerLines": [ + + ], + "traceControlListeningEndpoints": [ + + ], + "processStopped": true, + "stoppedProcessIds": [ + 4848, + 3556 + ], + "exitCode": null, + "error": null +} \ No newline at end of file diff --git a/docs/generated/alpha_test_20260723/desktop_package_validation_report.json b/docs/generated/alpha_test_20260723/desktop_package_validation_report.json new file mode 100644 index 0000000..2cf13db --- /dev/null +++ b/docs/generated/alpha_test_20260723/desktop_package_validation_report.json @@ -0,0 +1,480 @@ +{ + "reportVersion": "ht-classic-cube-package-validation/v2", + "generatedAtUtc": "2026-07-23T07:32:10.4163716Z", + "projectRoot": "C:\\HyperTwist_worktrees\\phase10validate", + "archiveDirectory": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723", + "configuration": "Shipping", + "cookMaps": [ + "/Game/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining", + "/Game/HyperTwistTraining/Maps/L_HyperTwist_FollowAlongTraining", + "/Game/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining", + "/Game/HyperTwistTraining/Maps/L_HyperTwist_MagicCube5DTraining" + ], + "smokeMaps": [ + "/Game/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining", + "/Game/HyperTwistTraining/Maps/L_HyperTwist_FollowAlongTraining", + "/Game/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining", + "/Game/HyperTwistTraining/Maps/L_HyperTwist_MagicCube5DTraining" + ], + "additionalCookerOptions": [ + "-DisablePlugins=MovieRenderPipeline", + "-SkipCookingEditorContent" + ], + "headlessSmoke": true, + "cleanArchive": true, + "skipBuild": false, + "skipLaunch": false, + "result": "passed", + "packagedExecutablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "bootstrapLaunchArguments": { + "result": "passed", + "traceControlProtection": "shipping-compile-time-disabled", + "expectedArguments": [ + "-notraceserver", + "-traceautostart=0" + ], + "patchReportPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\bootstrap-launch-arguments-report.json", + "patchReport": { + "reportVersion": "ht-bootstrap-launch-arguments/v1", + "generatedAtUtc": "2026-07-23T07:37:11.2688738Z", + "executablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "resourceType": 10, + "resourceId": 202, + "verifyOnly": false, + "expectedArguments": [ + "UnrealHyperTwist", + "-notraceserver", + "-traceautostart=0" + ], + "expectedResourceValue": "UnrealHyperTwist -notraceserver -traceautostart=0", + "originalResourceValue": "UnrealHyperTwist", + "finalResourceValue": "UnrealHyperTwist -notraceserver -traceautostart=0", + "originalSha256": "b7c268fc083a565b7c3c1e0a84db773c9714e4f23f14cca3bffb14145e48f88f", + "finalSha256": "886f69c6a823770b3ed68db4fe3790a488124c99c98dbd41944a6bed5d634dc6", + "changed": true, + "result": "passed", + "error": null + }, + "runtimeProofs": [ + { + "runtimeLogPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_ClassicTraining.log", + "runtimeLogExists": false, + "runtimeDiagnosticsPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_ClassicTraining.hyperdiagnostics.log", + "runtimeDiagnosticsExists": true, + "observedCommandLines": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_ClassicTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_ClassicTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "expectedArguments": [ + "-notraceserver", + "-traceautostart=0" + ], + "matchedArguments": [ + "-notraceserver", + "-traceautostart=0" + ], + "missingArguments": [ + + ], + "traceControlListenerLines": [ + + ], + "traceControlListeningEndpoints": [ + + ], + "result": "passed", + "error": null + }, + { + "runtimeLogPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_FollowAlongTraining.log", + "runtimeLogExists": false, + "runtimeDiagnosticsPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_FollowAlongTraining.hyperdiagnostics.log", + "runtimeDiagnosticsExists": true, + "observedCommandLines": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -HyperTwistStartupRoute=follow-along-training -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_FollowAlongTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_FollowAlongTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "expectedArguments": [ + "-notraceserver", + "-traceautostart=0" + ], + "matchedArguments": [ + "-notraceserver", + "-traceautostart=0" + ], + "missingArguments": [ + + ], + "traceControlListenerLines": [ + + ], + "traceControlListeningEndpoints": [ + + ], + "result": "passed", + "error": null + }, + { + "runtimeLogPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_Magic120CellTraining.log", + "runtimeLogExists": false, + "runtimeDiagnosticsPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_Magic120CellTraining.hyperdiagnostics.log", + "runtimeDiagnosticsExists": true, + "observedCommandLines": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -HyperTwistStartupRoute=magic-120-cell-training -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_Magic120CellTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_Magic120CellTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "expectedArguments": [ + "-notraceserver", + "-traceautostart=0" + ], + "matchedArguments": [ + "-notraceserver", + "-traceautostart=0" + ], + "missingArguments": [ + + ], + "traceControlListenerLines": [ + + ], + "traceControlListeningEndpoints": [ + + ], + "result": "passed", + "error": null + }, + { + "runtimeLogPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_MagicCube5DTraining.log", + "runtimeLogExists": false, + "runtimeDiagnosticsPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_MagicCube5DTraining.hyperdiagnostics.log", + "runtimeDiagnosticsExists": true, + "observedCommandLines": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -HyperTwistStartupRoute=magic-cube-5d-training -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_MagicCube5DTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_MagicCube5DTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "expectedArguments": [ + "-notraceserver", + "-traceautostart=0" + ], + "matchedArguments": [ + "-notraceserver", + "-traceautostart=0" + ], + "missingArguments": [ + + ], + "traceControlListenerLines": [ + + ], + "traceControlListeningEndpoints": [ + + ], + "result": "passed", + "error": null + } + ] + }, + "solverTable": { + "result": "passed", + "sourcePath": "C:\\HyperTwist_worktrees\\phase10validate\\UnrealHyperTwist\\Saved\\twophase-ht.tbl", + "expectedSizeBytes": 676207080, + "expectedSha256": "dc6de3d909a37afe2ba7f1f978543a13eae215bd20d954d66813524a8ca20034", + "sourceEvidence": { + "path": "C:\\HyperTwist_worktrees\\phase10validate\\UnrealHyperTwist\\Saved\\twophase-ht.tbl", + "sizeBytes": 676207080, + "sha256": "dc6de3d909a37afe2ba7f1f978543a13eae215bd20d954d66813524a8ca20034" + }, + "packagedEvidence": { + "path": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist\\Saved\\twophase-ht.tbl", + "sizeBytes": 676207080, + "sha256": "dc6de3d909a37afe2ba7f1f978543a13eae215bd20d954d66813524a8ca20034" + } + }, + "smokeReports": [ + { + "reportVersion": "ht-desktop-map-package-smoke/v7", + "generatedAtUtc": "2026-07-23T07:37:17.9023928Z", + "packageRoot": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723", + "launchMode": "bootstrap-default-map", + "startupRouteId": "", + "launcherExecutablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "executablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "mapUrl": "/Game/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining", + "runtimeLogPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_ClassicTraining.log", + "runtimeLogExists": false, + "runtimeDiagnosticsPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_ClassicTraining.hyperdiagnostics.log", + "runtimeDiagnosticsExists": true, + "detectedFatalLogLines": [ + + ], + "mapLoadLogLines": [ + "[2026-07-23T07:37:23Z] [MapReady] Runtime map ready: /Game/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining.L_HyperTwist_ClassicTraining." + ], + "requiresClassicPresentation": true, + "classicPresentationLogLines": [ + "[2026-07-23T07:37:23Z] [ClassicPresentation] Classic cube presentation initialized with 26 renderable pieces and orbit pawn ready." + ], + "classicScrambleSettlementLogLines": [ + "[2026-07-23T07:37:34Z] [ClassicScrambleSettlement] Classic cube scramble settled with 27 completed quarter turns, 0 queued rotations, and 26 renderable pieces; renderable state valid." + ], + "higherDimensionalFamily": "", + "expectedHigherDimensionalElementCount": 0, + "higherDimensionalPresentationLogLines": [ + + ], + "higherDimensionalPaletteLogLines": [ + + ], + "smokeSeconds": 30, + "resolution": { + "width": 1600, + "height": 900 + }, + "keepRunning": false, + "useNullRhi": true, + "noSound": true, + "result": "passed", + "processId": 22668, + "processIds": [ + 22668 + ], + "processCommandLines": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_ClassicTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_ClassicTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "ownedListeningTcpEndpoints": [ + + ], + "traceControlListenerLines": [ + + ], + "traceControlListeningEndpoints": [ + + ], + "startupRouteCommandLineEvidence": [ + + ], + "startupRouteEvidenceLines": [ + + ], + "processStopped": true, + "stoppedProcessIds": [ + 22668 + ], + "exitCode": null, + "error": null + }, + { + "reportVersion": "ht-desktop-map-package-smoke/v7", + "generatedAtUtc": "2026-07-23T07:37:53.2904656Z", + "packageRoot": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723", + "launchMode": "first-party-startup-route", + "startupRouteId": "follow-along-training", + "launcherExecutablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "executablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "mapUrl": "/Game/HyperTwistTraining/Maps/L_HyperTwist_FollowAlongTraining", + "runtimeLogPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_FollowAlongTraining.log", + "runtimeLogExists": false, + "runtimeDiagnosticsPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_FollowAlongTraining.hyperdiagnostics.log", + "runtimeDiagnosticsExists": true, + "detectedFatalLogLines": [ + + ], + "mapLoadLogLines": [ + "[2026-07-23T07:37:55Z] [MapReady] Runtime map ready: /Game/HyperTwistTraining/Maps/L_HyperTwist_FollowAlongTraining.L_HyperTwist_FollowAlongTraining." + ], + "requiresClassicPresentation": true, + "classicPresentationLogLines": [ + "[2026-07-23T07:37:55Z] [ClassicPresentation] Classic cube presentation initialized with 26 renderable pieces and orbit pawn ready." + ], + "classicScrambleSettlementLogLines": [ + "[2026-07-23T07:38:03Z] [ClassicScrambleSettlement] Classic cube scramble settled with 11 completed quarter turns, 0 queued rotations, and 26 renderable pieces; renderable state valid." + ], + "higherDimensionalFamily": "", + "expectedHigherDimensionalElementCount": 0, + "higherDimensionalPresentationLogLines": [ + + ], + "higherDimensionalPaletteLogLines": [ + + ], + "smokeSeconds": 30, + "resolution": { + "width": 1600, + "height": 900 + }, + "keepRunning": false, + "useNullRhi": true, + "noSound": true, + "result": "passed", + "processId": 21852, + "processIds": [ + 21852 + ], + "processCommandLines": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -HyperTwistStartupRoute=follow-along-training -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_FollowAlongTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_FollowAlongTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "ownedListeningTcpEndpoints": [ + + ], + "traceControlListenerLines": [ + + ], + "traceControlListeningEndpoints": [ + + ], + "startupRouteCommandLineEvidence": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -HyperTwistStartupRoute=follow-along-training -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_FollowAlongTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_FollowAlongTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "startupRouteEvidenceLines": [ + "[2026-07-23T07:37:55Z] [PackagedStartupRoute] Accepted packaged startup route \u0027follow-along-training\u0027: map=\u0027/Game/HyperTwistTraining/Maps/L_HyperTwist_FollowAlongTraining\u0027, game_mode=\u0027/Script/UnrealHyperTwist.HyperTwistClassicCubeFollowAlongGameMode\u0027." + ], + "processStopped": true, + "stoppedProcessIds": [ + 21852 + ], + "exitCode": null, + "error": null + }, + { + "reportVersion": "ht-desktop-map-package-smoke/v7", + "generatedAtUtc": "2026-07-23T07:38:26.2167211Z", + "packageRoot": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723", + "launchMode": "first-party-startup-route", + "startupRouteId": "magic-120-cell-training", + "launcherExecutablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "executablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "mapUrl": "/Game/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining", + "runtimeLogPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_Magic120CellTraining.log", + "runtimeLogExists": false, + "runtimeDiagnosticsPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_Magic120CellTraining.hyperdiagnostics.log", + "runtimeDiagnosticsExists": true, + "detectedFatalLogLines": [ + + ], + "mapLoadLogLines": [ + "[2026-07-23T07:38:29Z] [MapReady] Runtime map ready: /Game/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining.L_HyperTwist_Magic120CellTraining." + ], + "requiresClassicPresentation": false, + "classicPresentationLogLines": [ + + ], + "classicScrambleSettlementLogLines": [ + + ], + "higherDimensionalFamily": "magic120cell", + "expectedHigherDimensionalElementCount": 120, + "higherDimensionalPresentationLogLines": [ + "[2026-07-23T07:38:29Z] [HigherDimensionalPresentation] Higher-dimensional presentation initialized with 120 renderable elements (canonical=120) for family magic120cell." + ], + "higherDimensionalPaletteLogLines": [ + "[2026-07-23T07:38:29Z] [HigherDimensionalPalette] Higher-dimensional projection palette initialized with 6 distinct layer materials." + ], + "smokeSeconds": 30, + "resolution": { + "width": 1600, + "height": 900 + }, + "keepRunning": false, + "useNullRhi": true, + "noSound": true, + "result": "passed", + "processId": 17440, + "processIds": [ + 17440 + ], + "processCommandLines": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -HyperTwistStartupRoute=magic-120-cell-training -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_Magic120CellTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_Magic120CellTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "ownedListeningTcpEndpoints": [ + + ], + "traceControlListenerLines": [ + + ], + "traceControlListeningEndpoints": [ + + ], + "startupRouteCommandLineEvidence": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -HyperTwistStartupRoute=magic-120-cell-training -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_Magic120CellTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_Magic120CellTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "startupRouteEvidenceLines": [ + "[2026-07-23T07:38:29Z] [PackagedStartupRoute] Accepted packaged startup route \u0027magic-120-cell-training\u0027: map=\u0027/Game/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining\u0027, game_mode=\u0027/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode\u0027." + ], + "processStopped": true, + "stoppedProcessIds": [ + 17440 + ], + "exitCode": null, + "error": null + }, + { + "reportVersion": "ht-desktop-map-package-smoke/v7", + "generatedAtUtc": "2026-07-23T07:38:59.0982085Z", + "packageRoot": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723", + "launchMode": "first-party-startup-route", + "startupRouteId": "magic-cube-5d-training", + "launcherExecutablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "executablePath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe", + "mapUrl": "/Game/HyperTwistTraining/Maps/L_HyperTwist_MagicCube5DTraining", + "runtimeLogPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_MagicCube5DTraining.log", + "runtimeLogExists": false, + "runtimeDiagnosticsPath": "C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_MagicCube5DTraining.hyperdiagnostics.log", + "runtimeDiagnosticsExists": true, + "detectedFatalLogLines": [ + + ], + "mapLoadLogLines": [ + "[2026-07-23T07:39:02Z] [MapReady] Runtime map ready: /Game/HyperTwistTraining/Maps/L_HyperTwist_MagicCube5DTraining.L_HyperTwist_MagicCube5DTraining." + ], + "requiresClassicPresentation": false, + "classicPresentationLogLines": [ + + ], + "classicScrambleSettlementLogLines": [ + + ], + "higherDimensionalFamily": "magiccube5d", + "expectedHigherDimensionalElementCount": 242, + "higherDimensionalPresentationLogLines": [ + "[2026-07-23T07:39:02Z] [HigherDimensionalPresentation] Higher-dimensional presentation initialized with 242 renderable elements (canonical=242) for family magiccube5d." + ], + "higherDimensionalPaletteLogLines": [ + "[2026-07-23T07:39:02Z] [HigherDimensionalPalette] Higher-dimensional projection palette initialized with 6 distinct layer materials." + ], + "smokeSeconds": 30, + "resolution": { + "width": 1600, + "height": 900 + }, + "keepRunning": false, + "useNullRhi": true, + "noSound": true, + "result": "passed", + "processId": 2936, + "processIds": [ + 2936 + ], + "processCommandLines": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -HyperTwistStartupRoute=magic-cube-5d-training -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_MagicCube5DTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_MagicCube5DTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "ownedListeningTcpEndpoints": [ + + ], + "traceControlListenerLines": [ + + ], + "traceControlListeningEndpoints": [ + + ], + "startupRouteCommandLineEvidence": [ + "\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\Windows\\UnrealHyperTwist.exe\" -HyperTwistStartupRoute=magic-cube-5d-training -ResX=1600 -ResY=900 -windowed -log -FORCELOGFLUSH -abslog=C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_MagicCube5DTraining.log -HyperTwistDiagnosticsLog=\"C:\\HyperTwist_worktrees\\phase10validate_packaged_alpha_release17_20260723\\validation\\logs\\_Game_HyperTwistTraining_Maps_L_HyperTwist_MagicCube5DTraining.hyperdiagnostics.log\" -NullRHI -nosound " + ], + "startupRouteEvidenceLines": [ + "[2026-07-23T07:39:02Z] [PackagedStartupRoute] Accepted packaged startup route \u0027magic-cube-5d-training\u0027: map=\u0027/Game/HyperTwistTraining/Maps/L_HyperTwist_MagicCube5DTraining\u0027, game_mode=\u0027/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode\u0027." + ], + "processStopped": true, + "stoppedProcessIds": [ + 2936 + ], + "exitCode": null, + "error": null + } + ], + "error": null +} \ No newline at end of file diff --git a/docs/generated/alpha_test_20260723/final_delivery_bootstrap_verification.json b/docs/generated/alpha_test_20260723/final_delivery_bootstrap_verification.json new file mode 100644 index 0000000..1cadafc --- /dev/null +++ b/docs/generated/alpha_test_20260723/final_delivery_bootstrap_verification.json @@ -0,0 +1,21 @@ +{ + "reportVersion": "ht-bootstrap-launch-arguments/v1", + "generatedAtUtc": "2026-07-23T08:07:08.1612366Z", + "executablePath": "C:\\Users\\Anthracite Ace\\Downloads\\HyperTwist-Alpha-Test-20260723\\UnrealHyperTwist.exe", + "resourceType": 10, + "resourceId": 202, + "verifyOnly": true, + "expectedArguments": [ + "UnrealHyperTwist", + "-notraceserver", + "-traceautostart=0" + ], + "expectedResourceValue": "UnrealHyperTwist -notraceserver -traceautostart=0", + "originalResourceValue": "UnrealHyperTwist -notraceserver -traceautostart=0", + "finalResourceValue": "UnrealHyperTwist -notraceserver -traceautostart=0", + "originalSha256": "886f69c6a823770b3ed68db4fe3790a488124c99c98dbd41944a6bed5d634dc6", + "finalSha256": "886f69c6a823770b3ed68db4fe3790a488124c99c98dbd41944a6bed5d634dc6", + "changed": false, + "result": "passed", + "error": null +} \ No newline at end of file diff --git a/docs/generated/alpha_test_20260723/final_delivery_dashboard_nullrhi_diagnostics.log b/docs/generated/alpha_test_20260723/final_delivery_dashboard_nullrhi_diagnostics.log new file mode 100644 index 0000000..b0ec8b2 --- /dev/null +++ b/docs/generated/alpha_test_20260723/final_delivery_dashboard_nullrhi_diagnostics.log @@ -0,0 +1,8 @@ +format=hypertwist-runtime-diagnostics/v1 +session=20260723T082546Z +process_id=9132 +command_line=-notraceserver -traceautostart=0 -nullrhi -unattended -nosound -HyperTwistStartupRoute=coach-dashboard -HyperTwistDiagnosticsLog=C:\HyperTwist_worktrees\phase10validate\UnrealHyperTwist\Saved\ValidationEvidence\alpha-release17-20260723\final-delivery-dashboard-nullrhi\dashboard.hyperdiagnostics.log +diagnostics_path=C:/HyperTwist_worktrees/phase10validate/UnrealHyperTwist/Saved/ValidationEvidence/alpha-release17-20260723/final-delivery-dashboard-nullrhi/dashboard.hyperdiagnostics.log +[2026-07-23T08:25:46Z] [Process] HyperTwist runtime module initialized. +[2026-07-23T08:25:46Z] [PackagedStartupRoute] Accepted packaged startup route 'coach-dashboard': map='', game_mode='/Script/UnrealHyperTwist.HyperTwistCoachDashboardGameMode'. +[2026-07-23T08:25:46Z] [PackagedStartupRoute] Opened packaged startup route 'coach-dashboard' through first-run product authority. diff --git a/docs/generated/alpha_test_20260723/final_delivery_first_run.png b/docs/generated/alpha_test_20260723/final_delivery_first_run.png new file mode 100644 index 0000000000000000000000000000000000000000..324a7198cc2fa73afb6d85d2c7e24100b6c7337d GIT binary patch literal 135178 zcmY&<2Ut_x(sd98REmm93r$c^q=?keMVbhRibxlwcL=>BO{GhTl+Y0YDMIKFnsh0l z6H4fzg&Jyr{0HCr-uwN}69i$ObM~GyGkeWivp>I3SE9PYcm)IkQK=|DeF*|x0)D*E zPeBHJ>+_j<1AHTazEpYwD(VHV0ROpYE~h330{x1*dSZM&^sc~n!2(g<_1aP0L#jLW&8N;1qtZ`vrA8Zhrhec z@$K>ZUh$7?U%uHwtzP9OZgl3EZ`4CK2}t6QUV}lOr`2$Nxto^MYzkJ=9Nvc|c3bh6E=sU4aDb}u>qLeKHH3?~S9YQ|W1*L<_5!uhnxEO+kpEwFJ zM_!~+g~!eRXu`QyQA#qi7{xM$WPBKXPH)BPkqxEptTybTUMSwCZjLj$sUwqVWQ~j_&8|)up76Lv0_5AGB%Mh#*=81gU zZquG5ODDH}oO;>ej@_j~K0k?WEBX+W9l}dnVk5?R+5(N^Hs|TSHy=7MU{f8=8nysV ztvbLzPApdR7k*v7}KAoJfJlWQn?p35VCf6GNISw+XSjQgr6mJ zf*$y5h_TSe6#JV!ybC9R%`aI7cC+H>ns8me?r|Ct5mj410t;O4>64Uw#i)liTV zhtWk~&eX8_zW&zl1{B4LXfvb079|R-OWNO z0lHsmOi%hH^Yf=TRWIC+>jMn`T%uUXfo(w^JxbH-hO%nebd52FpfqND>wl&dSCB@x zMC9}eg!_`RETr72N5nXJ6m>3CpD*_O6TyL<&Zw?1n~zlymjNz|nng-(fPQX*;zIPz z=oO1K_cN|a;N*Ht(c(1LhjWbo&ar`_2Wx37>rgF;ReBO~7wH~ijKASwlvYYApvBnc zPeSwERVJltLC(`-!820B?mtfp(Ii8rQWWxfThn}vNu96+UJ3p(3wgRRy&4Cr6Ec(o zW*y}GpGO$e!#`C-W(Z%)7(cS<8u%hanRWFMc{*z9=G3y@HXB6_3A5(S5$+Ek{=GLU zZ%dd8P8bo74qZR`MX6;&mDLSg@TjDTG(bkVOPa0YO-nBS7xVv)?-8oK_jT>j6{xrj zOhgylLeKV%w4dI+KhR(1+M#%5tg)s2zhjN@RNnRXW<4?0#*}P-NG$Lg2qqvTm>{D^ zGoF^+gO7mM{?F(5wr(0qHzHJ6!k5ofA+G#!ICUG?Uy=BvR%N$DGFJdjH>>*ZSjv`V z$tTtg(UBZD3cIY8?tW!(iv{TtNa&buXKAfA@vA;MAp_<9UxO%O(hDyY6ye+%rQOjx zlL8QWD2TB>%(Z1GTJ$x;k`u4Zf9FeIsHm59Bk7L-;H}GX&x;(`Ozs%5PbbhnDP=ZxKM67{D~;nvT|S4%Qp7o1_B^wGN8Ksx!<}mEE0|C0M`-fzV z*Mbh|8W0=4EWtn<2{kQS zy4It5(vE2->T^x;2;tC z{pvW=zlNm`dE~&JCU*-H5FW@eTgIcRMezM14yujGY*M8oQ|ij8zg_(E&;Qm%8Te|% z4@AJx0gL$6|`mTqb z9DSr6-nYG^>s$X>9Q038KEGd9+N%ZVERx}~#&jqU>hgEV-;GBu2L2`=k7lMJn4DgN zf+}G4eULlHZLO+MZ@)h#!_)t+7s%LTGt$gE;~mg6TmJXdvNXZevg3}X5--=BS?>A3 z279O*H=j>Q94~#{b@F!0mC_=(Zk03HznEx?Flzn(Z-WH)6w9BbJ`iH$_ZJ6AU1atj zx?U>(g!%Wpa@UwM!_+!x{UVTL{u@j5KA?j&3#^!xvOz}$$sZDmI7L2Zkdq0c{+p*d zwS4onu?H{QI%_+_-QV6+~?oq*1wODPWlYtr>D{M=E}s&Qb64cbeai$l21#-ct=nlfHOj z$;jYa)$?OHG?_-*B}g2U+_DCmZ2$irX#e9VZ#DWkI%cw^(HYdG7(;dYRU64+POf&o zh*5)JZ&=RVBXpr?!8UTIvEC(_zfcc8IA8uY7h__9FO1cQK;kEpmZ1#1@!s(X z*XC0r-?^COz9@0NpmNs(qSTpl?@Tn#AKRG ze&p73e1vIt=4J#&Awtz+@pLD@J%yTD=Hvp7ZkiCx!{dxeuF~V9Qh!X{XwT}M%{W>f z@t)Wsmz5=RG|wtnfnjPWvm(GA({zqq_w#M;bYa32gNPnYz&{RUwgwChPM9f2nK~BR zt%EcLza7?wDCvVxjZFT!T`T;sgniW6+z*fGv(o`xAIamx$xYw9@BcSnkT?10yliV> z6o%tK3lXi{^PrR64;n9Qkz4ybiHK6lNa=$Knqha0H2y~oeD#GFzG<0|!bz`D zE3NdC8Z|6g4WIEZu_TwBmJRm3v?Z>uL!lKjUi06xMX1C;#P|D>*yzDI6=~wQ7pjs5 zat9Xjf5Yg5KgX#-xx-y@HjUiNXe=oFD!nu4Kwd@p(f{mt^1A#S#8S4<`wI}iNqRE-3#NuoTLxOwESNNA;qtl#DzUNH(dPHr1y&V$FWkIn>S8 zhK{Z5_uR!+OV2q914}ywTVq%si+?zPOC7wzH5!3EoZD{8=x5gJ{%IhR=L3#{r{n)o zF=VzpUp(!hhiH;H(=8{QDA_Cdl^d5jG!^`@FxqOROVh*|$PC#a%a`%`9suMa`;%yF zaoBdLQ+{5ttjQy>N_I7@nRDI=<6$(YV)_q~+Ir(b%vR5QY2E=!be)k;Y?&gf5KG1_;pLQl|jdIx#*5+9f`FIZuE zXc$Y~$ZA&)U;RngpM^elMKUMO6u3<${o1QXo}T_1*Dmaafcym9!>ta2qo%vc#}AY? zW(?sY>kSevo8i1$#4B4rQwjk@fPLQ^|IidIk7j#_TBo=V+t=SzB@LR>9LweKcKk9& zQWWc|VCf(gT%(Pl>c%%QP*9t5t&E;`jnzSfDqrUqNt!&)EB5=6O%si0o2T37ZKKKHK>I+yL#-fi7UbxYS9$<6w32q(=DS_X^`U*5%RNPyh)$ zl#Iy4CzZEqc2)Os9jtKwS!C}*3#%S^pM~Dx(a@Bx*D{KD;BjCo{#l(n5Loh~==+Nx ze3OssEpFl!fxf3^8yWmye$bkp*b$rdwVJQ@x!+Y=k|6|i{Sn{bHc70q)* zwt_VT}Bny>YI^Jt4~?A6F-NBM4#1Hp+(c3#a?Pbi3`ODp6~mWd!{ zESIXsyg18nUXirUTBK7%zoJ(vik*#)2+`nQjJusN9xs(E0E6AV*$%VQe9Hm+W^K1u zn4y?I?@hvbmD<{mS0XqoQwu4DBLcqgft%4N<~-70Cb@#Fus8Rwxq^0{GNuEop1I0e z7gM%a+cL?MM?52>L=ZBlfz16$o(l7GaBhngcUT5Z_#uLk+&p=%3-;z$58ItG$Q`xS z#er=0Z@o+RNsA#~c$8xPlK*I_RdsD2&Ch6!dHZvRs*zu2yTppHw^kg6l(Bo(i+l)R ztZ<~P-tu1CoV|cv)x2a3SNrQ;T-of+>{nABTF<9dGTFO3T!!UR>-Yp8qFlxgbqsDO zb;Wu+q^d(XfTiUt?;b7LxVoxjXyJ67}Zi`ugeaG4CkJio+7DG3&))`t~)gZ+-YqNaP# z0X+RDp+yj)RJH5;Vx6W^Wjtbs3s@IK^Qk3Qg#PAN^IJna&fMG(iagPyOwAWZ z3F|^kMLep~5hj}OY=x`Nx{c;^dwB*In(t4JWh<(=B!GBw7pXc1a z2+OsM37_M_LR6$>(RUqpk8P4ZOULKz-%omYSM6$}NWcJxPlazDGc3n3TUyErlE+^< z+x}B6Nv3k%*pA<}TmYuZ5ZXRp!8xij0iIo;PcU7)h*vQ(o8NWs6d&iT!FS9VKa-YF{uzb2fSz%%*n!eWU!2~W0h#(;`gS;7bw6Lq zwNEZ;6aqb#Ib%O=s+fmb1}K89lvTrabIjii+af(jartT--h{@M)s^EeLW?4^e{8ZF z=mJi{-_N5l17&0@D1@G2EmJqdABh&#-Qj2{X3H`V#;#&ze6)MYzK~v<(eppJsxB(kbj=X%5vVOyZ zk^ggSL|Uqg&_q!RI?_E|Upe@e#4B zgB&tg5k|==ymF1;3yI(v5f$Gv_klMO*uw>X=OiiH=cv=EhQHAFi5j`k900=7QC46vSjQ62 z!Biny=!qV)Kkpa`1=4pozFKG|?zH=qrn7UF{-l@XXj6Pn7}M~rl8r0$u~v6kK5752 z*>?wBf=JCztR|>AXbIExVrYS7D^M6%giNRYIM{1$O!F%RWhtQq??JDz7u9wv4pYMS3PKuSG z6>lf^&rWwS8v74%my8RiRC04wJh&`eo|)=?TQ~9I%=Vx)N&dRJvn3RZD8(lI>_~`R zmT!#g`kL^0jhpwvVtlE3mP{N9s0Nc)CYb$`jAQXRq+5EqsR>cL?J~bjli;xSlcSUQ zVP{zmprngR`O!8Tsdysr*=%<)KB{Iku%OY;JM)zr$O=Pp(nWeuvjZI`^CKos+@eqd z8rBaE57!Dn;iE(V7Ht`pF2m-atZZQijrs~8=m-Vz5dsTY(UM5t)G>qUcrp278*+P+4Fn> z*jfG$j}Jr^lB2U@SXNRxLRV6{%b{TLxHnlAmb;SOvirIz`IZ0|OX+-UN1kprbm4e_ zgktMT?rn{a+K%OiPdTW|Wh4mt!qmR$K{npC*Beg8~-XeaXqa!+49PXh*${bajf#(*Hjzvmxdzi z636{`{kFkbY_@%n**rk!I70w-OQQz|J1cJ`={TfS8+&k!CRrww8+BHiGiS7M)k%P) zWEgj}nf9L=xo^^0f$PXrU1cWCUgNolF_@fBa1#u?R9i%i)zR?fNGG){uq}Y=-V<7Q zm9ia0STcRfVs?jXH#!!Y?$?rT6}Vwy%8n-OWt@+o5_5zsuElkdwtPfv3TF$piqqeXp%D^4LPA6vZ<8J9t`JUN`bRnbl7zo@O{J zUyw0!c+W?z=}JCRsjmA2?Qq=12e-jY4IIsu^NG@h~d96E)X$<>ve|#YZFNfplEFg-S#2m0FP_w4XJI`qB|;R8O{P zdOIm{2SoX+`g5X2;~!)G5c(RreTcoAATazFk17wd|AvG=x~QEo>2cpdzR>pRqgbfp zr&6F4qh`S!zbrdFDVF(!bY1J&*s~RLBjO`quO+r%1lA-Kx|7z)4_bPN7VXU{;p3%X zy1Zg)Cg1$$PT9Q8`ij_{&WRMh}Is1(tDSsc{; zaa09bd&$~+?Wxa!j?PTn+=|Q2c`krS0ei|kYbGl`yr+HKX2K%S?>K@HyPH-QTWS9K z=z6q_%#!tSJ|c|s5rh1yp}6KySZoB_V2lHE<>kTK$)ZF3Rdeim6YyW6tB#Ie*R0k zqoja^${t)P`EGHYc@`AD?NdxujI-LmktRwF8Cjv0#kheQ%EgMp-qW1DpS~chzD)2-&nLZ>&brmztXl{6 zJCVni-xBq7bGsok`Q9B5(4?!DLya_H7LF4tiI>T2C;*+RGCuCtq6ji8#O&2wq&nn& zA&cn6oMd&U-5Rs#6_`TXtflbRRN&1T(+^uNR2Pgx8Q{B!Me*?)NzVfZVuGB5p0~J7 zKlmzC@MrDGu1bov6O|oSf=lo6xT6@BSVdv;2Zro=e&1nd+S1)WtClaked7eFO6NtS8DyLQ(eyO12nuq& z0-%}c6w>7|{=!$b!n(K@kHZx$mNI&|E-BDnEaK2(oeXKet8+cWJ3pJ2EVe?BR@6=j zE1CK|7h1|*^}K9RDGzJ>q^k=4_f3(pV=pW0lBpTF6p?s+1h56G&kOLA*rNqOW)D8o zdZnygog|LkLrXCu8oPE=#+UrIVRK9&C`LfTAp=VJFUO>m7+ru0DhBd#RxyQCN;ex2 z4O~$vzme{xacB{ZBSgOX!jp=)grK!@=>5UD_~2ZQ`CS2+s4CB(;JFz-yt|epbLgzk zXUqMQ`7%R-6Ii$^vVCwyWFR%SbMV)o(8Dhqe@Uub%2iM3~JnDpmq|&+R~M zwe9Yo1CHkeoZ2~eHYCOf@Cs--RG`MH#~2-*)4=uz286To!om;q(;re6rqO~rZ?0&| zg|!b_-?QzvIqw1hJ`t{c{O-qs#rYmB)1lvC+u{Qu?eog;+eQ+b#Exp2;3Kr`9o(07 zs+Nuqz*B*g&vMgew>d1cc*;HSK-;sycdFbzn9; z_I#f@+_@_b6OPn>bvVL^Mh8xWL_0F(j30)eM!%7kT=K>xB)>Li4q!DnY%0MGS4jh? zRQWJ4OvW2Q9;2b*D4uOb@G6w(8Bg6M+lgo~xT~B^A z&AZ+xkI+T8&U1R%<*dBMRQe*I9n~#eyr;m7lZtQA|UnXSj zY$3|;(|JO(O1T4go|};8e7vZ`{dw7<74Pki)P9@Am|g-MdO=bB;S*zCcgENC^OsFqYhlfc6XiV%On3cu&G3 z&cTby?o}I7Vm9^)1RG1`%Qq`>^7a-B4K|1pmJuU%zUcw`J23~oE0dJ;PveFnF=#2N=MTAueyU+XjE7SqV%}K(&S;eBNKi=(P~kEvUI${M z<^o1dqgL)&RYY7jM z*tl-Rndv0b^n?IeW&NL*K$$f-3)SJ9SAt+25)l~=THHt!H?rK+qNj5dagxG%xpdZ( zibZ?%pSwn8bWxF2fWN9R-RB|zN^$rDi`b9-PXjbKm-REpHN9CC997KDZ3=u&Ns_S7 zgy7+-B1v@*1dAUCF=5!gjFdY0JZzC>%8~$>8`Sj~vR8{{^83!Mm0D{&?T7P=N^lz>M zWLz`UQd!3C8}>n<8G~u+f>CTY)N;NB7KxHLXE?rOhP|1lSWaOLoZ9E6S~(4K}*MD#Z$a!Y=5(V&!50svJ$ zqO1SX8|MtU&8(kr)QSboUMY>IxVVKVQj(DQ@E^MYWb?b!iK1%09JQ71x+>(uo5iR@ zMfDG~Okqui?N9 zC*ovIt?Q-rsHddqLg!U0i#zbG#=EbR1rZP6y>in2K?hKTBqES5p#5Re0xcS~FFa9~J;>Sc@C)&ko9D#cUq?Y5 z2toLJ`-m+;b8#x66R$f*m-(Zkp6tGI5T}7E)0HxCQ(BPERH=9=*7k{w{W_ZYRgF(F zo%r=C^D19`+oOZ3)_kg5P4aYC5{qa!kosgQKDvs7Dw%7clix=nODqj<%PkWeWB0ql zsd~Os7Cy_Zx1do2FOniwN#k=Blx)f0-P!aS5VTrohue*wli>fv1zO3ycS6_1(A&1L zPdJfMwK}TQ^{JLu7VYd=cyv@C9_WRr>@TNo%+cm6mN4X$nef&V_5}bIre$?er|ish zIONp==pkc?^U%67pNr(5J?CjkoD*oH+Ni=nIQdL1G4urw>ucq(bO9MBrYq2DS3c95 z4M5Fjyfd#}X?+`Dg8q2{xPU&C7ilVt-~KC92!1=kRdDi|iL}1C^A%|$vLi|5V&=ta z&g?aQ=R#74>C3r!A`v?>B4F^TMHYL0uhK1YHnP|y5S~iWqnEu}1Ec2*Xudv`+t&=t z1(pNuv)bt|4ZeCCJLu8u?+6-chi6^|+HC$wI9XoNYb3UX>C8UZ6J?9z2d_U5DjzG_ zU)%ACjwGmvP4Ybj;Cmto4ur>5c^$+WiH|p&j1nVVCv7pyi=vpYvqQhLGz+X0je{qc z)n_$vd9dL~9=}N>5T7<2pJJ3MF+^p=RM5ik`>okxUpmKHa8g zOK0FU2v^@PChj(5VU4_a(6+~NE_&~~+2=EPiW=@7&y-;xwGD((zo<7-geQo0=}?n( zcb&G4Ds$)d(OcWeB50En$a{1cq)hurkaZxCl6M~=Of#it^Vz1;fO6IKHuNo0emtz#ki7T~z zS-$bEx%aWYE;oOd&zcmCLVJq4XT4gN7^o6lT5n#L;jJ?fQ2}OvSFW!v_s~d3wl@-; zj*y4P6R68!y*=XdUBg_zsG@3{F3lI|R+oObw+0&8kg6(DR2!4}@NXZR5BbOi-ESk8 zlb(mXF*Ov8pXq@MBpGTc-@e@;3LZLe=SP6;7ZoO8L!*=2>QE|=4 zC(BO0QAhMW!C-YiQ0aNN^l=YnVI4FeHuo)dt)lLsZc4*ZyI)@2#txt1 z-Y!(}Oc?g$#!9}MnF*LzMb{Ho>{qcJVFUcW0(WUToNT|2z2Sk*l>`lHpkrEY+yrXm zh|1rtgFqjKQ5_+}>MDz2waD>Wgy-tM*6OPf5{iYY0^OqZZz_O3x$*9B`f-`vzddbm zc~`2hsn$x7ebPbUbeZ8)(XNuLeDO9j$N62JtOyZjy=3Vt~ zoWy)wyc*Xg=%VR>hsiLy<|IdS+OZgQr+4#=ogoV3ad-bD;HIZCWl{gVycWvCZttwJ zOJhe$PU}D96R~ODX7~f*KC6pI45`55>5-$h2?292AYzAXjeK{fmZQhpC345j{RnO@ zN10{(MY*_Q4M@lj=~+iWEP6jVdz`}@B--iJa~Z}Xvrnevhue@M&Y5gXLw&tB6NUAv z4@@Th?a_mTuIqBfJ2HK>+Y$ry)Oa&eHb@8cBh>*U7-pWjj`KN-kp`ZZ(McCwbzUczEOSiYEaMUY-rPf4?XRA(3E8GA}y z`^Q1h@b-Gporw<`;$?h(GuyeVJEcKLk`98M_oSP?+s42RT-AqxNFA>5jVe_%PxY)d zPKy`*)OYA4*u~>(?~Fxkp^}0-{HCCopJzq#!U9O0&oV9hZd3{I9-@l-3NdyzXM)T8G0K&MHV#%nL7ZHvGO_ zd?l85Rl%uVI&k>dzh4xD=?<@5aq-|-?21eT*!I{e`@{NBo2hzpHK)z$gX@!CH~ww* zb*3H{{#3!&xhmw5^}MtHyh-ZEPV6b8o{`O>&ODCOk0n)Xp331WnFSM zWO@0{IGt1DBf0&=VAmcJiYi*miC+?|Sv%a*Y}TPS-Qlo_3uh0U1aB7%ldo$H zkcdr2)IK%L(bpU9if4Yj!qe!0j{!?qX-M)S57ukk@ErTcCI7%1V|uVIE6Ovd_;a@Y zprh0%N<6sW+Lx>q#?F>ydk4Q5JcH(2bo69yEajLzC^I0tCBj*UYap&hD$;@N4l6oF zp)t|n?Cz+EYk~?nTaKLP=Z7?%G1PuNHzI`>lq5dNW{^gU^8*{mwkJm?ZF_6_a>s`O z1G~dnlG43dDCoHBWdfkGe$uXBc4>z%2|XJaL3gJ`Vo1Jem^&aaP0%&LlS73akTT1K z8d8DbT&0iQu?Ds$@!EdLhsa zr~2}mdKN$!M{_(P0HU)t##!*rCTNJ|ib-D|xfhxfwK$QT)MC>{qBLUK$=4@@DW#Ux zCpCeMsD*AKyf)&8ER|l5lZ-the;4m`3kTwS=l0Zlvq_X@_aOBr(9ZJ@Mnh0vDU9;Q znr4WJJf?v}m{qz0u)4ws9=HbSFS|woVdrPbKM4Gr~LhHS`-5bNwrWdkq-3 zu}Rvs8lbf^vNCPhH~gZ0TiXQnw!3_Cf93w!p5K`pVln!6BANTq`F=mLsKxAm%Jhzdk>lZbhzG#L2!XqTS{O&`g!eeu#@ zfVYG9nVG@aPz~J_PX&P6YM|g4ut$tfYPO{Qn?kjGi9cJa)tv487g`d7e|?+^;iM4< z$(hv^ZUeZb+Wj#T;c$a(_2VXkllhV*maj0^pj^789rqGe>nO@P&*vC<4E9gA`p0r} zgtU|CKmlI{_sYq7uAb5Vl)#jYqjE!maba#EFap*=^3sZ%585h{qd9Hc7tlX8 z1SV|Tfoc%0FtFdbW^Ilt8Wap!^Dc2gSq&Jv;kT$j70SyssP&P+>&|POg zltR}d25L%>Z&T3L_fy3;nK!uXwezHo%?4|8RvXlU{blV(n*xwb`Weip>fd(Mvp6;C zHB2E0(*8~F3l10FAFzU*iHEGjTT=9+mue+C&wdT}jo5aJfk<4xvco-->-N7-Xt{0- z6s&INspUidfCie?U&k>N=Sy!LS{--_G?(x@fiBdEtg+gkR}hTUj2UDk1PL*B7lXn_*F(TR${t+AeKtT zYJGiFS>K{bquE%K@RgcX4|2f%f~2W=5B=kqPHDxy%-|c>;8GK6FKu`F)ikD05Kxby z8Ihg3>j1ghe?cX1`s*$lQfz@6{lj?EF^o;Z zcgRGaYcXQL#ycxM4(P>YV+9}09zJ@SqwViu=4^-OI_#0}8WcEfUOfl38!o0ryDft= zM_W*q1VM}@x;%N#TV&G7#|woE8l^H|HAKU{9@ z4bpdUP3Jz%%4LS!>+X|pax8^Z%K)f63FGqd7AH>+f9K4E4xU~Q*06M{nlzV>Ms@(F zZn9cdq9Xm(`5(t?B)qyx`?5ERQJ=2VTGS`ejR8{c&DfKWIJcX{-xJ-d#LcV5mzR__ z+m0R(2oH(2ev7PFgxD4qbaF~ELyEufGehj}*=A{?ffjaO=_f8A#;Gr^#-V)sf)Max z^?83Jg=!V@x^4`x2F0t(1()va4DZ+}d3akU^n|TD49!4rV5Lmu=?BMmPD?#r-w#Wm zp-~l&oNP14T<$16>f$p6I5&BxFB%XQzOS%=c3XvG(*bK?K~|lR=?CY^y=sO_uIt0H zd%UIdz+t>@<)U#b$M9)I7m(pZ9ceVjsSltFyojs5{JNTsq5_4Un9d7Yt_>2_J3`VbZ=@oJt`8`N1wt9V??$IC z=o>ln1w`UA#7wwsk5F!rSwY?1Db_bvd|s<*UyXg93X2!MIxxFpjh#$btBM%X1m7Qw zWPF)B9x`_z4A-wPOZRlKKBfH7_{19hrdZCjCZi;-Q;7SIsiJ*96SZvPsgDcLLt^1f zdh#(LdfL2ik=+ zcVp0UcKS{n|B3@=m3pirbLZV`?EVgSU-k2_mPLK8?M~s2gn=dFw3IYe9f~w&jnHoI z{RqIdfnM%h3+u5rMb<}_VpgnO;U#D55CaL5W+kUzO*C3yOse0spl|cf zxOJ6*m&&$jc(u-i<>tM_p-v8VTlcqU6&+>j^TrFl7JWW;3Cm)37o?DKZYOX+t5<%z zD|=3arEu6H0K%;*d`{?sMi{HGca36qzl9`l%<1CDK*Y~nAIC#R0||c8ai)4T zdk821;7C5dW}LccFm`e$7kWR|RiCfL#GGDH3DtX9X5c&C2YVwevim4zVrTabx1Ej& zm}O*OxOpd~TbE=}N0?s?TUPvF^!#|8;-kX4?+8SaT3UN9)R!|`?YguCuUZ~Wr-yzT zFFUSE3U*ym-$cWy2rHtmXq*O|&m{SzpRAgQD7cbijVA+KR;Y%dCVDZrrzI(+9c$s# z0}PSoKqzzT%355dN}&~ec z5t<>=jv(|#gL+oiC9RR$!0}b*he(z3xb9BLNZ{BUpeQ?J>tCf61b>_u@Q6PI?dyV5 zS(MP{$5HE*YByU<2key?o>)Fn+A2ZtkZQ=UG6r-#u{ak}_mR7bF_y2@%5Iqogctc2 z?=7O!(zF9|<+tUHvlu)lNGNQ`-)Ya(zP-#a!VPE<5dPRAV`qkM?g@!?35n@1b&-dr z10a+3`3?@i4UgZTR{yGLS(Ph2<~kCoEs|%~Eh~4vNx{TuBM7wq-E!jvTUfAe0`? zi6s3asFRW>DQ$U>!b6<}|KJc%HM&w94)xOZMF(XTY5zSr z&R8X?qQP}{Mx?WHF1u~l@Bf^8Max^Td|z3RED8@_GMR2qZl@ zrtQd;RkD)@;2XB^yTQsn6(HNewgUKE7}+J3y&aesLL*Nmb44j>ke#2S6uIui(S$DO zZ^l}RBq2L09-f=;FHLVDBcyF@(imQH=oz&Ke;CPaMp<>6u=UDNe0C1HL$;g zh75Pj9x6AJPWnX1^El!lGnvIx5bcsCzjpk&c9X7te|$4@xVRzq^XSo*99Q2_;{w)% zBWAzw-3vsgNS49Gg_Jc{czcv610(zweswu-bUM=TWYHY;vzja4wZ1hI+SB2D^((y=hx@f=0}CcauN3T^$?F}b^7|mIMLH%1XoE`T++JtP zS`T=pJ^7RaaWw>j-+#NN=DFr63<*M}1Pl8*=13*=cWx zY}+h#<5TBA^pLzIOS<`6$>sVT96&TmMkM{z18YcsU2_O-F$n#l#?{Yzx|Mb4S#RIt zsSS(mGgvZ7rekZoZ9Ib$4a?W`tIMSiWp zgi6xrnZUtNOwlds#)im=TCK?6$cuZ8Pr!R`-KTT%)$BQ#{q<}m*gcnUH2R0%6tMY@ zj7@-e!16shCWSTUA!n4Fmuhka?-O_Fa630p1?i~$mpX=;Jl5~elNVQaCcRh{lBro} z;qLpbe3ay@<;-rN{qUr96Tf<64d;n04e{~1U~}^UP9VPMar9-lY*8>>qPcUTW@E>jS&}j!s7O_ z9NfVv2YxkeBx0TesT*>iwf%l^1TG}gFwhye5PVR#DyP?)B?QT5GIr@|MuSG{&WiL( zG*f^w(vfDm+#b1EF@>q$Nwiq?4TX(xMCq~U+~OaTj(kI$gD+>U*?q16iy(_Ib>{jA ze8|M4-`>nv^-?c+7JHUk{@Pvn_UE6Asuok1S41&T2?e{VgBXjUNUz@zX|Y!V4803} zr-kJwKHNL?Z+TzQ#8}q%Jdb=sfGliae zyxN#D{@Pyg>gfHB%e6|CG8O0?kI}Aj)b(~=SI2(o*R1M4>=G4Zd(OVS>T@aWwy)MJ zY(LeI*)&O^ss!tdEje_}4ofZfM=iJ50<6I(fgn~GMzaEX3bcm0&up8#?6i?TN|(C6 zIX2i^F!9P~JI!?Ct=LBR)kzosHIib!fxxkdJ$J{FecneS)--1J60M%o(_z*)DuO2M z!KV%P|HsyQN5k2EQNsj5Fd`DYL?nn{1kt-Fi5^KLYDACTMx7ziq7y_fql8Epy&E-Z z^gg=L84N}z?=8>syzlQ@>s!lT7UnL;xz5>V?|t4!)V=an~LsoL<&F}0Oq zG-VxYpU|?@c_72R-@0iO3NkL{(!-(ji=bZ(Y9zPAo(=AuvAV5i+L@?g=MS(Iv6Z6B z=r6YRqwQ|JEJr2f8E7m-w=l!TE3y)g`*{X>vnop<;FL7r^ke(Rr{O-t)PBixfh@Jg z;8Q}0-J2OS>1WK+bAd-P&L7E!Wg_|N#MUze6AaN1@CjrcU()jC>Xs@ZY^>odMnbtR z)(C)>%O9GRduzQ|5$D}VDXf}d^KJ~qZNpv-2crrGZL;#!UbWw+tMT`E&6FYih=I9` z4Vv_rgS5g_+iS13&`aHK;K}Dwty9AGTa2|%ksG@oDQx>lU&3F7 zDb!g}rb6q=h9~#>U;3cr>5rB-3YB3ITeHZ?8+y=DPG*TyfjC~d-(5Nx=dx6{r3&uWQ$MWN>N7GBdv|=by9DC3r zY2{47;&qt2cK$>6X`Z2vIUlnaHj8v#mGy$#>$oOi=IO0ircVB@U_mnHfRf^m`=O`T zVk-*V&|!F?*Q+myCabP3-Du6Z7exs;INP6#LD+Pvns%JcKbUEvS1-z_5++ceYjdLI%DyY?Ew1 zTOd1~@+Y)e%&n6J>UUgD(m|NEXg;-$RFg1oH}6f4QspVFN7q`gGHE_xls5`CA6m7# z2qMzYCs(|9IYOzN=2$C{C(u>G-ScK-rgYM3G}94v?OS9IT2F@ z<4*^lkSO2Vxc+wUr#@90@}S_cLvDjf$TprxmV$_HG zgtjwu(=(`=w+mLuN!oH{VxOSrYbfID@-NCa@0j`}^zfe&y+Q1nl343=fc%){Odci( zsDmGxn!1YZc62)a$+KbdJBCwAay@PyJRoeicK%zRwVHBE9@4iwE-^`u&5ANwe$H&` zpGB0Hv167vac8}YDunc|YjHE*Ex%w9SWduVZ0k-RXF5cnO)=4*nF@%O#z;Dk#JGjV zsp2`eMFlfd5OXXuW=p-NXSx;L+$Cl1 zW%qNOhHhZLB;7jiO~;h=dEa+59;N|1_U!a{N7yX!SSQ)_!a6KEOVZhtr&25}qNLzN zJ89t^yh|9#d4rwQ2Wi5+y5k0oH2Ej`QC%#DIQk}`LCX1ql;bR{9!0X8=H`yVKhoU z;nwB9!u_Kl;-V0$#(Z)~uzokwWxgTypFkC15=UtB0Mm(ME0|y~BtL(= zC%O5qVKkXo$joQpg!byzq(cX@x$HjUfC}bl7`;=wCM)df}v*)p8y}KcUgJk`YoHioWzxqy(WFUu$ z6FL3@_>sK6m!znwGkMQ}rR#qdK)L@!8Xr}t;L%c9DtTR3C!5hksDl)y7f)Z;cDMD1)P4Wq>jL$lS0fsVpr&(xVn#pyWJ=)Tcg(nn z_URX`#=!2I8+ig3HyM6>X@P+sL!5jr{WT5rWi{$di}|y4>$&XdiwUA3)p$m_P0W51 zF`tBUn5Evt=>mcTCmjpXq&f|<)9Vt?9JjZ1D~_v;n;$Q1>k`?G4m{D;`c`22CDnNQ zt#+(-1OFHUeVO8E)?+0Bd54bs6y<*p=0Ifk6Z|hWyG%HS03#PJ6;3tnIx9Qg7`MTV z>z1r7bz4xC8LB|mx=%${0hBpox(e1?G+T=jtMF9jYS_Ja6tYw2`v5IA2}i9-)pz2P zcsJ+a>-*;DbrB0b9zD^~o7}CHHqH;&J%?X0zW{t9Plv4J>JH>lO6V0VQ8KN@m)=+kXk(sbls$w;q%ZW)Sgyo-5KWD$?&17$CM=ff@Zr(go0B)1i*NoS#%u+k}g#G>k-eGw@-HaYLcy2a64 zwwOPWnhq57!Ucl{T zDm}Az;jel%9|@wU1$rkR`XV4_~WR|CSZk$yi zr%fMv`dv*X;NP@ExL_{Afw*V^z@QoRx~Zi{^@`C71arZP67x)mlP~EKcpA&QsI!MP(uRRi}xNbde z7jKib#t;y(q7|)?m<1U`>D}AR8jXNWUXJX8UHZz*jz+lh9tpxk7ko>nbrOxR7mu7c zg0_u&XIsOV{2DHJY!8vzE2n_l08i&X$;C$aK$C9TpYfr442ucI3(&O$jsW3M{4K$e z8IYs{UTP7-cypl~V6vzT-1zZAgtoXHt!yD5% zM)Ws@X|*j70JM&+jgy7i2O?&=PM*XqRJ>rrW&!o@z;??|4D( zcv<11z5o=EI!tz|^VMMSpR??^nLO1Lz9jvXX=(uB^x6rJrlRAj!|p5bCqhuRT$jM@ zeq1Yw&C7+J>s3Z=A`(Vg#6E}vZ3T+j{&rO-2#`bGsG!$_x?jN+g zo2<8o!p##uD+HYjm_o~zM(Lel?|)jN9*z-psPk%ijglem)KrFJm8M)v{15H8}?GwnuN9BE51lS?TX!4~RcIMS178d~@jLNy}IC1W(6 z^Gi5g;^6s@6+A-Met&edS!&j1dA@`5(T_JlJI`v)Mm2_SOkIT*&>nQ$-^x@?ztgq( z`TXr*XCm)Vg3~+4P*e$*l;@0mMkB`y%a1uggpu1t^4mT%S`lLjc1JXDCp#pxiRD#P zJRMW~!8p_!`BrlHZsTdBtGlH({e2*#0_{PAZ(zrMo9t!R8-h~S`~Nr8V%)~sUuy%M zLE)M>STMcoI>^H-f==U2=dQTZ|2xdeZz3;;23#dIR9HWC#EWOMMju<1uIf#29!=s{ zfKVe$ES~ok!(%=Db)O*2UQ(7a-MzHzp)=mSaMlW0I#$NKsEd2*=kB01njti!6N%}N zKQnW=R*Ub!{6zB)>Vpd^9#Dx#4fbQljBmKeCjI7+W_LW(&Xs{>XywAa;=xN3w!UIl;+l_WU(S8Y>YPZOi2FkKx9_#0T z1>5h#Aw17DjjGII8#unOmJg5^`#+QHg*RoO>Ha8UvaUksm#)Y(v5NHm=Ox-|AZvC; zYBBpg;gn?ZQ(V7OVK{j4B-ER<-6R5^YtV5;VC4Usa!kf zzf=?LLS_Cum9biiEHdQ(ShFyzd}F^;&HjzF0MI^mtKr!=RTJDaQA;h!Y~7|&8!E02 zWWgvni7L7=3VMP?-v09a;NaMFvR>R$4b2Cx&$F!^;oMnac|!W|~`z0O46 zo-e^(mA|G*wE@W%XCBU(sNLk;@$`$mvrMqdaBmUbpe6D}$9oQ~))ef)4#AhgL#TqA_9_n|_VQH_|Tn-+Hl(A+`IIkVIz&MuNNZx9nG8qF!6Hs-3HvaZEvc3T&H(|6+*Nnm< zen>ff#}SkeiU?{n8%{eE4PP-c&@e^=Dd6`a9F&iso} z$oa*J80c-jp^sf}j2m_|!pKQ!*4f=SpL`kwP-&?^xw_vlyHd*MpAb8jqgzr2eR*6g zgH!$T1HYl!YMy3kP}4_oQB3**TPXcT|Lp1Hn>9_M@?!)dihO^c%2YN>V;yB@`F)F=0>jiVWDEQ>J=9a!dS`16`VYUgWE-dVjQC zS#uZ2DElZzfQT57GAl!oC$r4J1zdOV^dZYId(eFmvVz-p--?PL*-%q$qS< zfcWk!q#k?Du96T+X|Ojy=kS=YA`yU_6$Bu(Ogvpe0-Ql;aE_oiR?n>ZYI3?$*gJg}~P2O}Z>QaE{dH7`-ewI{o zY>4~Us`u)HOjLx7uLagURQX_M-4B}W|jX~!B^Z8r93$pdF05+*5`ZB4xL%b*MLsj z1Lf(-EsFO&)3tBewU6zrbk`%IZAVs~fZ0So2rBU3o4tw*4aI#=6~j9W5#x{7E(`Z$ zuC=sEQasEq&Hz4Byt}Q!5#aiatH#k6=d40*M@4(}w*SA#0Bl%DPUNZqK80gr)6Ob) zBf-tXa}|Kz75s1=FD^vq`rcX@#<^Usr`5ptuO;<=@0yN8!FN^J7jdR|%9%!29r(WING^If(rMuYpDjQ?}J$Bz+(zvebPN~z-E3uuzbOU;mtqK|KGQ;gWm6t-f0J1nT@i}L9(d{*s_?kjO#GM zr!8)5b<#oZLTUS^^Z+99zrTeEKC^KI#8JV3$JdA3C(EH!AX)mD7Rdz=$4H6KT}KJN z|Cm^RFYuI@%@;I&vXx^DOpj-;>uuuQua*HvSpqbk-_$$`>`r>Jh5nGK)q%B&ei-c) z@K+C5@jiOSp{Y1Wf>9|Wk3AA^TK1lO_2?zEOl@|vsq)*LeY+Z}C;rcuJMIOirN2cz zid0u~T)q~ZLIw&-tHRPwPbTKe>-f@U6B^Vdrs{0<-JLUpyc)m1$kX^P16H0C2u!cS z{M6M(L9wY^st$35Fhk>+KN+Nd@6uIt+Wo2Yy@xhzqs)Ga(SJ0)Y}_W!q>1U_!miLE zFN*A6DA(^Ug18#|of#LYXZ0Y0{aQT{db8inMEc@F$Eq6n)+C>}Lh}#22f7 z4HkK`W^F*LovOH)-JvDLHsxClfbVY4@WZ~Z0>AY=G%U8N{I$GAQhX;jzr_}T->xd{ zh?Hu;E4SiK_nlp9fm#$gg-f;i^<*-G$*(XU@t3x1c>P?Njeh^J=R=#k0X^c(gDIy! zh75cjM2S86WI%2G=1gAl#PIgj#A{H{0eZ9H9E->XW}7e3qGpy_iCtk#mNs)t!oTu3u)?dR`CRBA#D5G_vvS?epFg8w`bQy&`@Wdo+k-sj82v_=io- z?APDX=4Q@iJqK_t{m$Lb69GG3gY~d!@lJe?-ZaWFbBV25MC{D@Kx_z)z33K6{eDPZ zHg3mvF*UFb<89SIZIR)jbg5uHIIn|Q$JzoH!s@pZ`;B$?YO{LZc zG49y5t0%F{oUZ9ONwX?b${ab{dVk<3+(#Hu&D5QWt>#Fc4Q*zzItYxchiIjfoNYKA z6g0c{8z-qa%;BQr?P`h#ZZ9E3?#wfbv4@_ZS?3+FE`0nuZFG<$kc*vq4qTrQBZFgp8V6Q+)TiWZa<34s>ZlQ=*Yt&|#Gvd~lZ z{4_P|acjp;h3&b!y&05;q{~_0qmeqAsr24P>?+FPsn<fsGkgnhIscv` z)FbCFi~zRso&i}$xi9hE@dsRhS=my1)B6(3x-K_<{I9}p#P90w7WAN%KE~S2)UnpM zh_3R(+wMDFX1UBP(ZnJPgLiJKCrS7G3TA)TY`t2ec$-F9W>TmwKMgj(pux8^#F@~UxDSvImq7Ul((M@gWsi3}erHrlwRIa^KvX|I9+#0iyV6Do$5HIh`qPxM5~mll~l!C6*l$kWDPJ&+NTAFqFECIVx!mfhvGSAr!Ol3 zt_Ste!>zFg3)M3NhqoPop>zk1b*IqRYN2fZz<=6Pz`n0PoKbYS9ERd3Vg+*=YXuFV zoj~HrQFXtt)r{KU)dJl)XE#5B>kA62U>-x7o#SxYXL`o_rMlJ*#&g+{deS&2LzkcL z;K5D}08E{<7u>GIrRjSrQ9WZoH{7h! zT@ON~WFpfn%OyP%Haxia}68xdF;e@c@GqzwA_f-mfTU0 z#s$oSH1c{4MQGR5Ll=kevkrF$@=Zau?J@M#p zkj{--#vNZk)2zQ+{^O8wg~mMHpNrZT^x>o_sGH>jX8}7&Jnx7G{2(~|&|q8_K@$00 z3kHNC&xrJ%%4$H|NsD>(p`K3?@%S^J^*gyXIdAHKuq40xL7E$Eeqh$xZ?gcJ!0#M1 zTb`)5{F#zNl`!Y*UVwNdjK(vI@C&&Qf#3BRA?+&q{EOC*ih^12R|7}*E)0<4ed|re z^z}C^26;T@M>Pmb3Z@^}(`jy5l}3=B7mUw_ro;9dPBmow{#-X5QZqq878A<{uC_HnIMBuL0Y{k3vs%g9s$$LJ7xT>!j#+6SX z_;>4pPS=nwj3J<8AoFyXkJHE(x%)8^>@(z4HXV`j%)1S}(n&NJq#ybDY~3|aL56}c z1;d%6uuEjlCB;JA>BQOd4D-p5)4b>2lr2AF1`cWT_3#PUJO1$S@Iu;Ft;9zjogB-^ zI6PEB)h!q&jj_1L*SO5W2^O>{$EIMy(i)&t1wd@|UXOAMn|tI?2WAmrpAmzEvPEe9 z4X@=6l_7{vcpNh)RoJdFG6pX zN|YX|$ud`ifYMbWvflUR3Y7MPNMYYg7H1Od8AS`>q)wtl{@sN2J<(}lZwDsoImRQz z45PBeqQypuVkJw;FBj5UVPO<^gYZoUK^n?GooH-6(;67Y(jA6k=-1C_B=Vl!^SU!b zd6PCgNwT*q%E+Tqm3kG=(-c;Ge%WzLLb&qgx5Hdl`3oiVXUN4#y8pnSi`GhOkJ@f! zJf;of!J^Xf2dKFuedn;744xy1%^$ji9WS*TJDpT^ju)i*x%kh&!tQ1|C9;+83g3~cA&3@yC&cJ4=AW~Utm zPd1r%hgc1k&<Z(_*K5DIs74})_KC+A)Tps+bDz=YHYH;cc`SdhrC9= z+`J#GW)u5Q-uhMwIp{tuuZF@~ZNf>;Ab44+FIhM0v^-6e-M)FeWXVt<(V9I^?WU0E z^r$6?WsaN{c6G>+#M>z0(W1nlxI#O6n)?-;%=EKU59)J;rW;P)|8bLbyC#FG?r2a7 z*L}}w_~(ObSA@GL@ybJ0KBq&+f>yp^3#aPmjo3{V@wm6M!#)?h`wO>mq*UGPS9z>q z95?!?-t-1U@#0p2g9BR!k^^m$s*}hnrU%f*TW+n9s#8`=n<+ao_8M(Kt-N?y0-tf> zroVCVL`lCTnK-e{Eqb1uTu&wbgcs<;iUQ7h5`V@KL@y?^ua2v7c@VwnzGJ5NIa>NF zfR&+$oLqW6g;$rBWSZa1kE6%v8qn$Xd!(Gr$A*UxMBics)n)P~z;0WDkSv@>n`(UT z_>~iz8t%tLa?pS*tW2A4L2c8cW;~9%EjO@#g9i_JL@Z@wD960(1zr+x7`YQ`RDb#9 ztJoyAwI`fZpwE)Yr+nC?inRs6QjH!5+P=orJ(niV1RJWMtl6}Tw*-hY)fxc~o7RPU zl9M9`^Y$A?sfWxW)cp2i9O&za$UfdR&QB6X^6On5&ePam)GhTu41HnE=qkEX{~{mf z_JsHyY8Ho-$r(H98A6Wl;UBZGF0EH!^k9(SV=S`Q34 zM9(mENYrDtOM}vqm}WP{RuI*tfXxqoV;j8DenuR7FhJK8^>GBhv*(kmX#K^_6-=<} z@kDSstHMR9YSjvlT(Q1)Gr%TfjB6ydJ(-QPXUX+rSY>zFr_C6CBg*T8E+#CJ(> z%<=9Hx%DJEX%Bh1H9PV1*_dAn7=k7(b|SJ3E{43(ZEC4mUQ0z0a@k~Ptib-h7SrSy zmxz>uCj)LX^DwIOrtX|mql-}s3*s7@0>7NOai8?;ug0}n{VXV@M0>7( zwPQLqL~^JphjK2cd6PqhwoiTyo1AiXeZCmGZF+PJ7P@>C)g^cU5X%gtc!w6Iq)4(Q z>!sn63OL#6Li95U8ivnNM4!~CF`ss3n%;);BQ&uw-X;y*elTe(~83D`IDIhZD?O-{YC|vIROUS>t5x7Rk8MksSx! zL^deSJ!r`ilCWPXa}u0wm^IwV6HVXZ{Iu~pjwOnq_{~QXUo>)T zyngE!CQaP8Ao5``u2Lc&olMQZ2$!U)QafexVeb~PI7c6)w;(e~9V_`%1>7D!Cx~PY zXPn4JMt{_jG_PuXE zxhi0KhlvGz-#XmnCUzeR=zci{k}>ixMffbM>q0ibUPOr`IK%w<&y2NmvS4QUYWIbG z#yFAY%>c)Ia1AdkpI~)+)}Yn12W$|geFKMPcj2!uX?K%Yw=O`KzW;bX^&FK{34lxv zXg56WO3-@nBlV4aG9Q8g|KH)X`PYCoB*oPoW)yRQ3y@>57}7l;gqcRw(O|xDdcdS5 zY~1DM5%NjD7%|n7k5e!|=5Es>DJ5uPA$!@T633gKd-14-V>RE!#NRzo{~CpGPJ-CM17_gI>5(^q+Z*2Ppj45 z3ZMmz=6A8*aX@Y5N^L zkPyh$OyJg<@bx7Q43 z*5HzWaPT%P2O0rPfEzP|4jdMP%bh7dHen8Rpo3CK9Wj3FXIv`b znNH8k>pIp}C>xI!4=gEQV~-$S)k`j^D-K2mFONXpKWDXPzL7u8-! zA7$98J%7?*Vs$WfY#RrO+O!xN=lCo%c(7hgk)T>G3Sf=~d@qwW)FK{LKX_|{hqE`ziEC;sNv>7aS%(pZ7-fakw8pr-?=qzGJ@oasF?C(gWn zG)dGYiudepIG0=!KBc=D22wn)d)C)*em#NM$Yu}#tCjP_@n))#S?AS7;@UR%p`Zl7 z3T$BknUe%;-zgRp+Z?i)p=7zjx(;?-z;)8e0(P(4zg3;u*M;a9N>4<5Tfb6P0%m`` zAG?3g+-0wUXe>kA-R^A3>PVqT*PGXyi-omjox+#T0o?swp*}%)s7;} zXa5|WTCK#8ISY@uUtxcP3`>%{LJnk;-7XXvMYgHY0AxL*08C$Q?QNQ?oI?Q}4>^4g zA@Eq$-JH#Euaoe5S&~2Z=rxKEH444^>B(-D>9SlE}@zXE`XPE61 z%=7=G+Tn-I2zh_x4MJ?3mUah>8Am$ObG<6o6> zd&c9B>EJ%A&wF$i5HSk7h3YDi>@wr7Uj&4KdC)o|@m-=EIdJjd>nX)m0~qw+fN`hh z*)-H9Jq%D=+#jvH18m6v&B1gnmFIOC9K3cztQPIh3JzcK6TjOBeAA<4e3l4EmDMR% zcqJvoEe31or##8}odj+;{12MD*uqpAvzkUesyQ4F*S3@!^-1Biq)+Z;7ZMgV$1ns+ z@SxIk1v?MzE#DGH67WN>Zlur=53=}V<_6#xJJE%y25>^dsjHmiPVqq)cwb7ZAKk(o zcom$j*_VR`c@F?1RZ-%1tlO7$dzIcZgxg;jcRsJAd1<)z>-5*|UP);VdtZ#=A2*?B z7ZuT2Yi(uV$aK$5|Fz{PUuKM`+c$}{0Y4dY9v0?SQTMUP#>XO8Dh^-F!^ti-42W#RI#V z)Xf}&tN1Vff^@?B5Nh?{*A&H(^os-vpxo*zYFss;orQHDtc@vWgkI@)u2O_@ zFst{683=+PDsSwjO~<{fh?%WX2+|TZ_1iME}wSz3dTUTb4DaX>-%kUspJxE*%qB?uhHjI;=fX=n1rf&G|)%0ZDp_E)e z5o7AHV^d-ch#Ao#e7X;`c020yIB;fGfS2F`A8(q zAIn1%Jr9j&WV``={K2a;H_EKq(7}03|TEUqPVN>W+^06h7TB&EIJTH7-2az;d4r?JNvT zp!?OQBPGzE!hHa5EM-P}F#(kG+TpfLzlYQ@pgD1&22bp`x0MW5q9IOoSQhBzsMY1- zgFzic1EvKqX<}oLbnfujJ4#9^mJ1FMZW$Q7_ipruLyeFF)GVHiRovI)8+kIp&37hM z+cQzqp84c}jIQ%nqxWdpARrWR4>M95dMrm7|B<7%6CF^-7y4Rqx0;L<;6*xlhdbm; zaj7p+GTR2XLHD{j8$-tGFYU|c5B6v7T@wbvqdPV)OuFq8o{8GmDhAfUl5STH$B&S{;L zx*4@>NDelPMFtYlJn*2vuIh(tnJ4dmo7KR|-!iHH^2B55zV7R_0bh57SNnP~e}CNL zu@h9Zzr#bgVL1dPP?UgxDwvOKxCA+5uB10^IfYfxhQt#Q-4FQhZT znK<7vQ7CtE4Y2f}?xXcRNs>7FYLcOlWnE@bx9@^@!(u0H`UiPjchC z%j`u&VxAeYozzq0Brd8!)ovf=<;{~nz~c0lt5@)=A!ZR@Es?D?XExp>`SOM%m*(>X zBi*1f3KJfZNbv<%cO)Qw$ucp`tJck@ngyqq>s-*LyMGT;mUslNy&QX2hh^k*AHWL8 z_xF5upk0t;CJU|>&E~|=+qI*%RZ$f^2#<>jr~lBH?q4$1h=ofdpLZf`DxfcZ$f z(&*!+tHcv=0B&?(um2T|F{C@f6qv%cmaMm#`V?}4UHl->)83=3?E<;blT}xdq&Dq2AdRyc`Fk+p`w*JA~ryk>B7_kmJ6bVQ~XU`vk?bKEgd2ji6 znElr2o&sq=cO%4=xYwcCR%=y;rlu; z)xK4{HeX+B;&=Jv6Zj$HzWkmr-0)njZttPwyb3M&WsvLp3>d-9KOZ}M3mNSwdDVG9 z9(qUzyr8|2p+FFT*Qcu}a5g{H=R59NC*mwY%)IMZh!ikV8q%R3E^*Z2kd{s1-7g26 zcj&l{^ZN#R0^>Ny#2i%IPk4{2b+0)^j;Cd|K6*wXv8vuByfh&H%qCCkEU5c)@lRG( z!TV&nJ1#W0N3~bNba#B9g_HX>w@r|Ab~#YFq)L+bvaJa&8(JoXiak6SLN?L2EPVCO z)eF|5S1`@qpqn?Rh&WO@6~Xk3$jKeq6=o>lT8?^)hnW!C(zTbbj-Uox@5Rl#9`J!6 zhBcx!&eA&IRcqR_9YsA)0m2~)L)!oH!nMhaQG|7)|938j2(8N@KwmOku}YY#H*kW) zr(}S`U_6RNDTGs5_}Z^k&?D8aGdl=o5b*0Gp#sY(-g|F>=cuwP zN=Wm-5zu`5IHlTfR(@{VzMHC(R-^EM7tO_~*&|w#9z}?dVuO84)6hhPKzyt)jNI%k zr7-8;et&bmHnaKPoDU$J#lt#c|M%ZnltVQ#q7(vu9Kg@k5p)$y|9|hfP3~j0>m0`n z{clgFmzhQY8{F^MlG@DU4jtllHs2LoQ|v<8FH@Kb_l|kZqVd94Y9>0CBaYL-8`fth zkNb#p8+U!NgK^jBi9Cb;ec2-#sKi4<&Es^|Tnc&9r;$}#Wg-Jd<*|`C=qTjp3%+Oh zQQv*@ZR>sWrvYxWmfUY?J$Xp~B%zd_sP5b(!w z=BkSOWZW?E*(b4!VCFx54Qe^opkm7NuzOTBAH_LAVoDx>im-Q-1kn(~1>W-vxce@> ziMG2g5in>0K-bbjpqfW>3qO6F=;hs%40xDs(t0l7?yI-ccGN)LhjqqKL)-rB*5_FAW?8r>w6#{}%KpP)ouDg~Hd9KXq_S6DwwC4!5~gZFWVI60S> z-f^Vs3lfHFs;6W0-GeG;A3Uw>sJJaBOSH%Mgo5%V?|LKNe3^X|K*0aP!CN%iL#qcVDf7HpYB{)&nfROPBMK8n zSMkVmRU->)0S`fI`6HQs(|ymSTE~>aU=|s{xa&`UD0;knb`^fE0BZV;D;I4@2cDmh zl9gIa(R7)}wzoOYYwL~-ha^C|Q^P>755L6b0wg(jZ9vh9R!U%Zcz@wLn2O!s-oEz} zu8M%t_*>WNFeOXlE4$*iFq_^AJEx*a8oHb;G;WNqn-9;$Wup^152&+a9mOQzFD0XP*D zAZzD3(@;{fp^GRacHZM&nyXQ#mx<+__57bBwE7)K?xGO@4EHquQbMD5F03+g zM^RCOVO~{a70*lpkLqx_Ys%=5An&>FO2?EUpP}fekawrR_<{Clk+rAc{FHmrdH?f$ z!0wJp+QZ08idm-)h>@Ge?Ibw1b^KAO<4Ov@uoB3bHLO`9F&tqV zdr%XMkV4W9Z^&=VwmOn}=znRZ2ebvJqMep4Xe|G@I|1<5WRII-{iAzCrT>@v8ML6h zU!|4U(^Vt`{55G=Mj>SLzu4T>rvU&3O)@wy7Vw-&84%C7PCD+CboJf;z6NDtkSsUO z%&s=A)0=W&mSOALS5!kUc?kD-j9MA|030#QnF1M%H2%#DG=*#JXRKlAf97Lb#CK~W zlcv3Khl8Z%RR zw(5*~wtF`1+MAW@>NUmPzZYYv@~**o({ zxPSmtg$s-QSNv7HX{#R?z;&%r`pUCq`r7hU9=W2$tjhyy-FGE_GCvXCp{HebnqIU5 zx)g0(VGc8>$y{W1d&t16)s7F^8w5aLEkLJK>(e}~)7QNg6h8aCNa6|tGrUs}{-ehM zS(nZ^Vf7=%Z3a}gO+9ltv0(*RwLI0VKk#zhT72L(^BG%Lqj&-E)^1Ckp8pt3jqS_d z6h1W2$vJ91%Mm&2SgogPKHaby)K$Tqn88I18z0_O`&(*EF zTrIuwo~d1L<^+s*ck;dsCye{N1sqI~iB-F)-%itjRk+2^YZQcZ^0cJB&Uge5*Q`F3 zq)Fj*_<=%lN37JLN0N#zuN-5PU;ryn>?A+L+iVGwL!I96&udni&?L->3Yj-iH;xCM zT>W09*)7kTJ^c_4*!e-^jh~>308hrj zs?FJpPBB{&QK8PiXkY5q|3ZD31A#PT{R*(V`A0E;>CNEa>jeWhh%>(dJMA`Zb5lkP ztE)GxVz)8b`NvLXetxQv#-D_`IWV(+@RFz|^ zRudkX7qy!sbr`j+S2KpGZfWs~N>Uyfo zB@=$-#c{fBF(p0)KwgY9SBROA``l5n7mT4;&a3UCOQgH=lILc&=C5@hrmLhjxIm`i zwioWAJTgVQdWA(nCI*9?vo18G{s`ph`z+kiSesMSVs|0%Dy8U53NXcBgjh}GT$1706XMMJL+pl#E%XAP#qdu7BjarjK$|K2U=oCtA}mc| z^%5{8Gn2Zw`06%>^@{Er&jaW?ckSyeo$Zvd1G7~!NRBbzEl95R1*uWHmXRZ&oU-i` z+fQNthpO|Ar!s#3KdF$SB73HcWF+A@9AzfENEt^$$XxwV>{OGK7GFH_jvfHe@gd#-S2T-uh;VxQ~GX`CqjG~5PUMN(3m1mm#RSX@j&j|A)!m#0R60p{LVvI*0v#gLiS zrY%j8h9SzMVrI(ymqZinoJSbgHg#w5k@qlZ++Nq+?X=rdcCl5 z>OjkYH7|H@HWuXF9wYe-azl3*hLSwk`|+Q(ctCo-J13V9r>cdKCVQZ}&hn_Hmr=2O z#9fczOPhh``!U)>!SWkGPUQlT1Ft>wW^c^^Xqh=!)r>p(C?dI<;{}!DLmz}Sewh*k zzE8!N4nrBuo6j8&c@DA-I;%3H3J&HFSv8#x2GPw|%<}rW8B2w5WUUUF^u4tLhJ;3( zh|jK|6*?k?;4ly#GI64euWb|JTM~EdMIm}(Ue*&osZ(g(mad$k`o75uUPls(f2XLj zr@i*v0+bKZTF$7Q$e@)4v;yVPkW~J!UyUBC7N#xj(^mBA$${exwYWZHzi{vM_SH9s zmA3|i8~_m}Cd1m2J)lY!IVhZ2SkjJR=WyDZp(?m3Di50_Y$LW8-GexynDXMHlRu`o zs8N2oXnxsCTIDzHD*mKm)Btj%x!XZBKw=nR=iK)9(}#Xn21ixcWo@};(xR~tUcSr6 z*Gdd?k+x8ODH#z5@O{1PgkBmKvcJdQ7Zbk^8#upC-S{CLl>-yTk^M0_rg2^`I}6+S zd7zrkKltQqbe$T_(-k7w{G$Wtb2iq5`BY!s@(MjJ8YN$hn^ zyO96;qt)%MVDWdEDbC}2R*UaihF#vO8tXuU`0VD%J+!jO)P zIC6KOWa3p|%dP31pdvT2w@<=2ApJ+hfKRia=69v*yPrqxVV`KJDzpoyXTlmmi~uY* zh0*WQDAoX-wERPH2o=7ge6r$OVPIAl%5GIIAis0-yuyE6*&zH(S`uX%<=mT#Ha$^x z>j1O`1~Hv~@npeelywMF0Xax|-nad6Bc<}nNRXRhR_M6aSGAHKA~h~GH1x>GY~=M% zB|*=*hKd`WtZ^zxa?9_>XH+nIXQQavgutN+>$F&(3|1k!HvU0;D@^21x4QXGq@@97 zeL3ahSrc<>^uc^e%0!w4h@kmol-}*Uq@Z3xjjfM7csBi7MaWA&?j2?0Q8UWok_Pha zz~V>>9X3ZpxPmYJcQ!}wXEYs^%^O<5OeUT+G%ayaV(HlYaV?vj9KZkCHB%`dBANi- zlfAB)Jgn=)A|ZQYg#Yb?*3iSG%M#z({3mLRH^^EoSn8lN7XxtA=NxGNu58y51N&hd zbh7CJIhbtg%5)|rdrBTtKVi2sJM27ur}U`;3|InA*aAie0y1uUCeh1KGqPCx;Nb|^ zH53sRAZJ${ebUOrc_Pa|2?ntLO)*h3`byH=zlLTK0dJ%9tH?%9t#2Bp+G<4B673`6 zPdk=8-j8!;acU(#v+e>*TQc;`z|G}VI*vU;FcE;u7MFlAzhdc<DeSFeG|1YbbK)+Z=I9iOJptxZ(Uf44V( z0xyXTsF@x(%;*`DqBDkp@G}L77PF`{Qn=>Ej?_Xp%Au z0d%dH($kVr@({|^xiu~h#fGq#+&6G13nlXDNlop`M*pFxq_PECd&Ig3H){{Rab%$> zsU;7r@KgNrWb+WIX8sZdOG<8W8r}BLFPomTw`So41rG4;b;#1vS_#<@E!}-jCKIQc z;}ZGiA*-Hm4bLLaw{Td`LoE*2cYBbVj}CeWT@|r})pQbQq%9eoRXj%`dBFD}v686n z;0%S`BB84O?;x_-KTRL5?*VV_qN4E{Rr7)8b-L+|rrVq)j|QbyKTSCqePw?vLl!3w zVWcg%0mGXSXyp7rpMdoqgtDBE2$EO^2MAzEC>`i;MdoR64qe3Y*8bQN*JsH*^G}=6 z)3euKA9bbm4yX`jMtSgYc2XO93Wte1@sp8skmDR0S71VLl8uB4{F z#(4?U#@ryCLL+pLrRD;|8-^LI!gM8~g)3xvn90e9J6pRcYQ2wMYlZV?mw(e*OCGVHZ6LpFR#_H(SKA>UHgW-{v0?xsCG{(0Jx9Vi<~s# zYu{TALbk4PwYE6O_!Lmu6a(T&CdxX(4DvCOrnqPGeFE)cF*8hkE|yc>kD9(@eXv*o zwG|t2-ISe^uJ>lJO;ekP!cilg`jT&@l3)uYMZCW^JeHT*Y%So)^ji-qc0Ik9@1^cZ z@nk$>fGiHX8h-|pDJ~$2L>*sC`QV~slD{2uY|OJSlL17en_ib_ONz{zXbLD%HxQV> zWqsYez|9^T3`3)kv&&C2G=r#={6WQCShU4B{-@#bedzO1N2jUm^N8 z;F@>{^fkZ8{%Y~4FO+46_T^M=kK}d;;%)0-(qyyOn_{?T`~taJ1O9l>#Ra!R3q^eh zKIT-kx2I^8*NaC!b_JDpeWH}n(g(oZ@(&X*_`sKdW>97JH94N6U9K1uIjv)4k#6?K z8Q0CU+{iiIc_-y!)~(lWO_m$bkFtcCi}PxjH`d4__IMPEnsjYZHAde9EN1ov6`(=g z<43(&FsnILMbDahpx*DJH^u3MuVq2Y?3HL0Wd5`8NDczGa9RGW41f-zqw=LS5)}xU zh`JQ`RqFY_e&5Si5__;Z0`ifs|5t4L8>xe&fqVuKEzU(EBDdC4$#kz`4RPvY?2 zn5emkl6=uVYEHiT#7=X^A%mlTF5cPv*Oc7ZN1N4=y@4K-+%a~$*GAn#C$Ahnpx2b| z|EJTd+S+=?=Q~6Vb}F2-HZTTnEfkIITm334nY15sh)30mV-1GtN=hOn`_&@eC5C`+ zC|C};@pykI*c|F~75UNW+AA=qmRFp&{w0n+*R`a&X<^oHCJ3u`T{JOf*mnO;a_Mb> z=t%5SL+hM3{kf&YW24XNfGmT36jR>7WU!<=e)>fR%3h_FG#-2Rb;2L z!WcHC} z8@_#~UiO&;T)=PND(cqnbkZ*%3k{yuvoF%EYG=%}oQsj*3&>f<&5Z`#YW`k8DL zpmqap$=Urzw2%KK9!3T#@ryjy`C7UVU&-(ZV2^Y1U#vDAcz5>Hqm1 z2kiBH_nnP|MMClcPJgCFD!ZyfON(*utd|Wgf}|Hq%+Y2KNNoo8YbqVsU^jm+BqLOm zvpF@AYuWg=JzKv1GBZUar!tA7P##&@XE}OoeK^gz*v|ERxy9K1eul zY4Gz{4hQS|f>WHgjFS)4@b~ri*1w2uCrZ2s^_p-!EJ6E0NZ*O_WKyj*3$5`*BrikK%_o_ z;G=7wS}@e^40P#jv!!-c)K73oXRE`-P4&&(i#0uW7QQ-IA zr62*}iGRpFfsRuRR9p9}BY$)FilBZC| z^;e`#Ikooy@>#b(Ij*a-(Jo}4oaW%&(|HtI1!>n@ZDaug>OeQwxeUp0Yz&bfm(Da6 z+Ao?Z{NN032JBS=IL403Z(Tt5L|K)+N_yOVQ&CS&_pd`^6Mx)za4BE6=2A*82elwt zcYOCk${AxV$~fI^yjfsatG);M!uH^TvVjtKT>lfIDrqBFU~_ne(0xFj&(&K1nA2+? zsyJ@0EK3aGqjHnWq)I}1UEbQPlfRBx%E~$GS%u57)xFy$PAwInSd#q!zVhARMTO`1 zH1N?{wJ!_Mc~?P*0pnKrDbJ^FKyPhQ(d9V93edrTZX2FPc>IHqvxTlYD&q&7+itqMo1BBa?w3+M`<#nv0mS!NMN?R_{L}BYv)}OK|@89^sL^Th#_yBs#jq8ai<@xOxG+Z+1-szE{oIukd|F1In^!0^7)+`5;=QGgorqwB^R zzqL0m1C7!^3DgRIp8eMT299UUpiM8F?`;`iH%3|?j&PA z2W+ySm{;tEBC+*l3*W_^3HvOIoZu~h!wiFSb4b5-^aa{$$N$8hqS7Os`46M3sGCW` zM(pbYz#0D6qk(5S$BSOSJ4QNNlDDvrWIZ*xY&GU<`?v1F$iw$8zJp*~-d;dA3l!jS`_+8yMSmsr-i`SW0jBh58_51ph$Cvkay|BI zN#C~#rH)<$C?pQu+X0BPUb_L!?z-*lO<>TUOOk-*a+x_ZV2_D~(Vvm}&*Y=i8blaJ zh9(bwnH!(Z%(O8p)JkM~EO^By*)~)g3q(BDl>a2!u&J9o1wgWE#E2JWDe&nt&8XcW zg0rfxkG1&JbQmVQcAhAK(&9ddF0h{?Fsv%V=?yu!Mc*SzPuGOJzpduHq)QZZZI}{9 znW9}jdYKqAnKJ$EHHe<5e}kpg;#^4+U%v;`LJSqth=CBDqYwxsjgoQkv9Sb{tMM4+ z6(@2%(Q-J^r-qj}wn*5y`xi0T-<_Gq_I|T}bZalWqz`oDc2KmcV9u+@X_{K9?R!w1 zvl{%xcK76mWB7(ig74WjQo)?TtR6XxSJIYM1#@TS%Dr%m0lNBl>qox4?gK>C2JJo1 zp@S&bC7)A#9n(!O>_T@|rN8X?jdiZ~JL0%OkEr7=PSzjnrr_tb)#&LuKoI)}%T;^q z?V>3KJGHU2->tdYH4zg<`(ZJL2b6&m5F7+RG>LhD-o~l5kz8>m=~53M`#jp)cydH? zd2%(2D$5svtnzpl&}mnrimUfH@t%PR;RQ|nO4w*@TRkn2FD!e)*qMoilk&~bwJuQTRSaY_1T zyDq)C9Yo!9qO3j&2)QZFaX^HD}hW>W_@DMEmNt zus4~2gT_!mXxzNp3^(cTsw*{W{^4R8sT*8L4I&#;astM8##kQCE>B>IOOFPVRfu2g zZm_IANs)}`Hgzn!LH}^MIVDt@Ki%C-#c#aLK;|g(n2TloW!g-(FrZq!AoW{`nZ8~J zqK7(pC0&rI4Vyr%K~+PIqp?|A&TLh}ZIsq*8h7B>{=7t@qvwSGV~!!`*A;C6FE;=| z4g_yWHx|;RzGrkw1dDL;?TD}+P!Or24TBFp!##h+Y)un+2=yVOZ7*0`>z>ukcEX(7dxBUt`a=g;#b%C~{@M8qkaFm{3%1KvWV4s_)DSzJI2`q3 z(r-VmyXF2Q6$ROgE_l&Lz1TB^S<(5*(Y5PZxRzfWQO!AZ{HWObCEcdGvx$$%#jfm0 z8ihSkY;ksoUm?m6?rB7D%``2H{+8iyHQcnL1;cl`54<4O&e*)Dcj-$u$Kllh{P>vS zItSoTJ1LjcT76JG>!wIhkeQ;(_BODd(BUHU)9l8J_6dPi=&e|nzZ-ijv#%rFq8Y1H zbKM8B`Vb(wt^l72-+Qqr$8-cy)LT?zd&YfaTuaEm@U+Z6vtE=Ts=MF)`5q+mE0*3) z^%;}niMINt%!S^EeCdM@^{1yGPft%A;}N)H3H!?wOmIj{UF(RDtJ@mvpM-4y__Q<+CksV`Q9-N(#Fa6A{ zE1k#>BI|nvbDzwFW%mQERYLG3v$f101^Losf>Y@UeQq-E={LyoJdszaT#*X~bD`sr za}=qCHJig?AinZgUb@s7AllXhHM%4m^qS{E@2XKuB_(7~e6K zIeF~*Ta{NA1d+=Eyz1%|h zP^j>YXZ|~xza7k+7wiv|+3YJazzzEwh^XjQFU)`RnFo2?*^mQ;~O*J$N{&4zEoTk)3byF#r>&~gc=V^v}O#ml+Dq?qpqw5 z*%CW{OSJW2t@<$%qMGKNqt2U=yPiL6smdhsBDvf@-V3-~*K4=o#Q&#`^Y-tQV$7CU zi<9+j&dYmt4lV_k;l$OKSoG2+ zfvc~%p~+PNpi=ScJL5u;dS4?=?xTgIdPO+dJWo3erpo;~^Vmvkcp@K!iw!C=)37>n zwb45x+k>lv>(H%)A9>oCOLLDYmuegDWUY35450QcG)|xCT>s`t^`w_oAP{2en}(SvsIMMh#5E zjJ?@J1U4!CG9YrDG)XFQTzTbm0Lqs|79GOl4dP7=(FY?kj0GdO8WFE6?e_*XpRT4$ z1O6Y=cW9g7uFOi0?Jh1yM_)Vkg>8|0u9Z<`5~&UX(5L8Qo_ddLlp1^xq-Z^nx6mi^ zWl&=4WC0#R6w-rgy^H2^>ls$wk9k>e;tSEt!X#voR!>JoPPfTBctfns0%qge@R>~- z4#mCb=qz32aWjU#R;#=eQ4%OI*}wDr2MtUxM})|%w$ZbI1qrM2_AQk5fm*DY|I}N4 zjy3xT*lf+2RZ1Srpvc2ES7rmFFpSZlJ@$h}+0(gJ0*`6_MODs*(N3p3EHm`CH7+_u zZ;CxZoNw@4#kY|1CGhjcf~#b$t98-^90BJ1+O8$6S2-T$b85Si^~xRH_lQ2XQ$S}= z203kLjJk6j$lXFJ%s?ZqSH2RPqtp>F?t9_<#fJ7VvG1N=5#wx86@Ug9CI4(o|A`S= zGDBc>C(AkUbPsA~FmNRU7DL6;AWYrU(2v|up0>{)%7im!?z-oin0pF~CekJK0iwhh zY%6(T4Auu)YHyM9#9CwLch>8xtuW-o_l)Na8d+%i;B<;#D!tJl8S#ZE_r2{!Mk+J3 z=GU0FCM@6cvT8)$nw*kWI`1}0eAy!3^w}&uv2@`|e#{n61%~7IOrwGo5G0==n~3_E zrTuTqrQWlF-ALuo&PEE_e;LXCKV=k{q110qNUJkNS1RRVE-`k$(y8-)B3z_%8i9TE z+Gn#=YH~UOHg_?ypy zz7H`~Lh6hS?YGmGxf$?`r?t29bpZ?8&bU_=-aY#P(=#as(L(dn05|8%NL=ROR7DVt zZQWv_sLjOn!Po7i#m(fQxdhg9c2%TDeZOxsBOb&$C1&$gq|{%6@{NEmRNF7Jp)&5J z%b#hQ7aY;D8Foiym|q%*D*q)^fYbhX-_2UB()EN<{OXlLEx|F^ABd=>i5RCCWs7aY zNO6LMyeU{}+gRi{{bA(SrrO5|^m*vGSin^&6AtKGTB|lVefE_Pu5&SI|J{0EdQw0) z3n0XbWXOIOafxfJc^djCD4i=SA(feoH=u1wp2R1v6H+R_^0}s$8xNi@VIOxYb>Vkw zu=O{Urjwg~@EsnCLS$kL)}-xlZl6V`R447 zNvZ%F3WHv~ES4Q8yb{C_&x20`+P+o8Te?0c1&k%FO$17|wVa?{3?DE5+6K{lLCCR| znwB)}`I&s)YKeU|HQ{$T6?KEbpkeR7vuE22?`z;v_ zZ$|U~mFD2vwd}t2jLYkOhtv9##ddXJsKDt-j4yI2c&H;e){f+i`pOp0 zG)VB9IVip~H+2_%tu5DCG4^5D;7p%s3RBmYsDUl_bepQF3|6cS>xW_AhO!ar3$l9>Ng~G_-<& zk_>)$k?!e1QBrCo3LD&shS3*%rJG6ho7?C-(A>%b#gjvLn(18MxCE+o0-pXTtuU_P zezWIPSVer+93S)N!^Z3|Iu3q%!G0oJPAVduK6gidD~3v6D(VEOr0 z*4m%X(fswlnv{kbm^(hz{R9XhqOjt=5TG6b3Rk)tf?bNr8?8`uHU9guRdEE~7NaaI z>|=FvuSK=Nrhp&xs_T>j?c1f1fypAG286B)tf6rIi#ar{|Z@GB~X64 zu=~S0`*liVM>(?PpH*Jfo7TB}jW7=|d5T(XHlWSp*}N1xYm|CK+?;VcY>F&5NpSpf zcl{Y{P%r>6)7#vfB`$7ik~Z8_192?{_dDT(T~H<)q>lG>Jy9U;{aJ3|TK0Zu&|P`S z@a~^`pn?J5j^ZOTMn|j{vNxS}SBRx}=6%+M^f70s)iIGi++c;CD|rtCw`-GJ_qbEQ zP#P!-tb(ttOwW(DxjkjFw-Mu9m1mNDrpL19{qFIi-Y)*btA=NAwFB?r9e^cKQ~QSY zlQchWFIYxJV6(JuupD`WcgdlV6Y}i?jl(~3nW+tmM~aZ!GRTDXUTdKepMjD~5}6K* zIr+pL;)<5QQEnfS-9uq_b{{9v^+WiE@Zp&PwpPp;l)@)VKz<~YGh$aRaP>n$6K-Kh zEb{DW9B;R^XvWal_7vZy=B<C6{WeRox{iq z0m`k4^vdD{FNFja6`BW>U(6&Tkh-=~uy_^~OpfN1S}3nPUb5%*kjMu#4ToZ*3XuC{ z+}A>yM(8e%HD(C~C#uVJ-hqIc_6%k22q~xst>z=20e^4bR?+#qSDb~h6|;RSdqC*G z)swI5xlbK|Cm>8FZQQ#q0ZKlam;Jf?<4YTE`6&7(Cz>?E?`qEC+7{Sj&x)K+g$7}d zXS}lPap# zv3wu7=AMJq%eOmHD# zxGmrT0;xWefs4{;mt7tFgprD~WE$2V+<(zSK5Cq~{;F|5iNa}+^Px#PO-bEd-iDR^ z<8+_lRypx)*qo4mF70Cvc`yW(weI@#7w|;-aIWwhvxLklN2&GuF?PHu1~&##1Cj?f zzT1u=S?x=R^&W7S&1(yoFp6Jem7eb8os!nz!{Ci_=+Wg?L_jQrM zyU0jIl2aAQFT}0ZL^dny{eDy%Pf|1=$HIH#Tvje6*K{^b{>XGUb2|K8AoE&Enhg8o z7Uj%%)l|&i`WH{sS>ms@b?+EB|v!Nx7Fu$f46pe5OvCP01s9So~m7mT6Ydh^dNh$ zXB(r!Zm;YXK_SNCQCmy})P*~li-P^o1R(V5C7kgpGhW#5`Gig`_=^!2eN3oulQmmzbtZdel50PP1s=eo7X|M&l9P_==l9 ze!y)?J_RI+Ezf`9<3;y|V5Zn7&kj=otv;7(w*yj+I0i_qPg^GsA~t;HmY0qWwmE$ft%OFyjBKrmn&bpBj%QbArf98t}7AQzNT6R#RtUhAs=+ULa{# zt^bI?jUgnM!Z;9Dnw}1>tX3raReh-}dba&AS<-I9s0`w@Q6FPW{JhqMF@l5Dtj5YI ztW*z5d?8-5E!w$=zx50~($>WZ=Hi#YB;3J@4GG;_Y{KQYv9PptsXzvlL}!1xRhw** z!Od@hLdjT#Ioj21x4H9jG!6C6)35GB=9iX!GeILVeeo?zh4fmkwLk@eIQR*08Lf>l zzsjS^qgqEW518+58u4@3PDkWN>9zLO1Urp2#H3!%wGWo+j5nkka+Stn8K0a6v^9~K zA^$sBs9hHOtLl;G%YY^%c>r01GRJ^P&eiPx`|A*=Uh21RH?(t~)j1FQ#Vq&)R?Ic= z8+&1<_TG>Zant?&DZOg}rFXStfPJaXy=2H|B%XZ0L@4VU#xmwKMj*eX!r5qX9Een~ zNufuGG;k{J39i^`e0RkRI1t?RVhbc`b(p#+zr@6ymA^Iw-=+7i7rvPR;fy!A{gi86 zsWSNG^sZs`T@PXIXi=_@{>HnW#3Ft%nD^*t2FsdaO~Bs5B?WtqdkvzTpq3?;-TQJu zbG02VNj7M4Ks9Bg11~+u@|k+^dJ0v0#7>bdvs2pi$&_AJ&Mz8oQ@EZ@St@(9>N4%c z(#bQjLeN^iU|L6z43KjSDqX0_d&wDI5@l6X0%x;<^T?UjJo3(j5`T_Q<_8gZG!7n^ z*6F6rR(pI|w>)3z+c5gD9^xshEu#v*j`*D9jS5A7DRGdE(!n}%R4vE>pC+EyV|22u z&6jp|jGqr9fR?I+a}J+7weB34#v{G$JGx-!dm)jwm2Wsl~g^6qi{N`HpxkrKXc#xH^69L@CO7iCd>=+OG^n8 z!8hrJ*M3eob>DFIMc1AGf}FN{7u!ELQZ#%RBV7rFBy!mB*h9559SeJ9d$-n47k*41 zzV#eGVV@oelh zq1lzRN%9OaU6EG(AJbN#Dm9BsZ14JERGn!c_169D?LVvt}b4;`7>8t zW@U#HaEruH0R$ia7AVSOxf9=;GKBe2~cC}CLl|X_=Jv-9}OAIRhFD<`2<6~ zsbcA~CH@@Kir%)DwAMg&jLVOocU&S|e3u8v`3%AdTxS1~RGU8!661Rah><_Dn^V%P z?Cl7L)@8iyUk`PxZY6A)>T7&)qFs`oEMKKd&rSza_)nebTv&OT2|+euM9tU!Y(3^O^aPprN|? z?aDOY+fg5d%FJ(Xa6wY?OU;^NJn0`==2AP?lsXSOe=wMd=Yl%+vu_+4DfG8S-=-P^!w-dStt|VY5VGiqEtM~s?QT(sqEGT^cljaVw#IO34z9xk%5>5{0) zVP~iJ6Nsll2idTmArXd5rs7BMSFb4>A-cF$cvq|vITk*&kejV(Trp|j9~r;V$I!|f zOE>T2=2WvtHawmK&GekmHO@S!yuGQDwzd7jkXsKQyAx4>?t^1_X&t@0=(nV|Yt#P} zt8-HJdlvk>DkQDL#H=-FB*N0hTMQ?`UP?NejtZn-_=@>E1AuQBXu=t}#LzAlVq=L%vJ|H)oFllR1hNp$iF~{Y(?3mif-whg&Y~)wx`hHHneAI-BV^BplRcDsH-_}uprV~nBG8h0t8jJrXPv7@MP00*h`_AZy zvyb0y(oGcP@?O7r$XC0|N;7^L27rjodOAO`s5@6f4-7dEH|3!GEkeA9bh~$jN`cSg z_2^OiMZT5wdu;sch~Z8Iq`7*?Eqhxb#^A@6sb4v0p5%+^gqtYXB-%^SLYa2=z!lek z#gjc59U*xCgVRR4)z2MY08Ic9zW1vx8cps#8Hp5ewIAk-ce4*BKGfq1F7wr-AGX+z zIM&;j@!~^8N4wNY^Z^WxsGvK-+#CTm;QCERehi}xE4S>|(#o6PMTIjJ_5`{pZ35hk z*%zD31<=(`kA;2j#uB62MK;b+ziGS;8{>x}h}UU+{4%zXZ_qpO_E8xRe@#AgSk*aF zBzVfd@Y}sQw;&_eAI(5Fll350oszr$p4|Jn;WtLs3)Bl7-`Pav^Dim5i>z7$n8(V3 z-6vmV3GVQ47ZVrn4>2Cs@0pMJU8yh<@D2Wv$S;vu;TP-6w{s=Qs4RJTpzO+iEbjFs z_!vwG3;_-|ugfwxPR(^)$+jha88KV(R>t5f6FoWr{76uCEkPoDoU>6a+GJv08a!9s z`a6wB3^?1Ao`2I8dv{$0%M*F5GzKe?fqakdyM6*6yqZWG&92FBnHt5o$k4XVvF)0S zERJLs&wTl?W7h}nlyWEUVI(Br@1*7Is+(YfSFZVQN3y>bJb27RLZ1u%^Gs|#-Tn7s zDZz5k<)$A>o<&q<#4}R?x#jCYW!LEWko#ThK#Iyx5(|-(p8>6JT;=pE%GL#_#;-17O>`?9=5BojI7b)VQ*3$v+RGtf_Ohkobfa9$AGr1IEI!7?NFyuEAVRP=sufufDhOx?hZsGWQe0GLwmdAoF- z@w-r8MCPR4CJ@TorOG=`b~UO=XVQ~Z*`98zUVe1ukx8ThQlWc~TjF264IoHXiBgQ^ z2mv@Kz+^l*yK;lEj3LYEh|cJK3-)hx`TCbkYyDVyq7KTizqC{5U|J`b z;CsvGoK7-(w`1(X`7=%?(MST1TQEWHaV8z)`85zzpBI)`>J41aD0T3p=;xBfksqOr`g>Cr@=yK7V?p2HGf#ejgeEwh4!unhU}>iv)MXeF?rLFw8|`##_oM zcCKOw_9^O%-xo-8Ro8Wu*T4v>5ZT`n7>0Tx8%ZCI{y*hM#$FH1JTwVhe&x#?+CQCv zpwX-OF^&&;A|0`_j|?I;eHz)_uP!4o?Q6L7UJtoYz|~_~K#%EnXXr{0^&9-?I7R++ zJ=kD*Yvtt_z`>(LHix)%GU9=yZd=h;k!B^wC+wu!b38xLIne*@m+4<=O8abc@7g!M z9{r|ayJrr}{1cN)imY0JyPUrO=U$ojF?VAq#{W}hLEjgsNmn_` ztWKoD!rwJZukF{$N1yDgbWGq-EIe~^-GwZ){Y@coW6P;T*rm;at9`i9@-l^X0PcPf z-f;#XG`gY5`e@Z8!bk0ynOnBcel!H&EBPERL-=D4?ef!G_AIo;{WulM3g9}N@xU>0 zO%=oz3`+eYcKQ02zBQhQqc;lL@}JTQ6N9nOdRu>%FuOnr;=96-#jVQXr^#%V%06&# zPG#yfZx^UYE8ibza_5ltCLfA>gu*wz|lt55Tz7 zkEO*2XKmgVTxb8(aR4w`RDj!C_K;cp#|UPdImPb74he|TH5M2vY5wu!y{8=Oxn&44 zoRsg_;o{EdtOL<_XXctLG_9PneFODT1h6ZF`24bUAT`8HSoqUkdOTwz+~@_m3L1y) zO5ko49r-UBpRb!wm|evkzX3e6o+TesIc<12+3W8lxKrorR!)ZLG$7amsBj4NnZ#z1 zP;)Ig^fC~QuCX7EzJ>bT>OTnsvQ{v-V|TeRTO7PrGXCR2_72nE64i2ElNcTZ^_*FD z;^wNw^DD;_?(SYnCSv|LWWKdYi*d}6A%;jn0}ZxWYyPbznGMNvy;mYyl2f@) zx=0aO78Itptzz#RjKNxIXMh1ICrJuooEh`ezimNHD_FIJga6gOk&Jebj|*G-}`D@@3-wcUa^19J2DsJi*iPmSyZs2 zu^h|B3Nj8jaKSIeK7qCXH!@b?$8}=MIahW676*;Gp7T!L=>uur@--d&UV4=7LvhLe zwlXl)5a&wGoGW;f^Z6P-OagxAIg7mHvogZ*g|(cP4SAPBfLO9?wJ*!<3$rDjUG(cG znRl)a?S>9qvv%dThlcK)q>Bo*)P!oQy1?%%-ZE-ga?LX(SKR=|;#qkzX2mFH9;-kf zyNQUhi-_j@G(ouj&BxTnSoeYV(wAn(tG>fBA?g+D_T##hXMpcdGqpMz(8@Qb4`=du z7++4ac&=J`nq_SWaE72>PZ)s`i<-gkWt#LIk{ld1OpWDT+28@HsY zy+-A&t}5pA?1U+a;v9kuy)Or494No zzmp3q4yiHjx=iJ%??%F48a&$oOc&*VnMtn>^@YQ7)t2(jz@4T7JUs(E(aDH&F|jQ7 z<7ZhH36A7jZ4ZF9el0b!_FmRxs);{&$?4d*K)lHJtO5c?7h@1d@RW? zUX8zN@rh2&_|a8fEu!3xiLJc(O$dOqgbs*7xI%;Ns_S8iL=j*!I;FOs+5Sbxg5c`b z0pEqSR zpUkk_&5NIqkjFm-(H-|jaAWT|N0Mu>m@2>azq}@$`ZLR%w(;z7Qq$8QjMzP$1#;m% z6hflexF957Q&5QSeyA>MPs4?$1{N4PV60S-eN8|xH&E4uQ?m9GOnxF(1krt@ zTb5)kY5bBeD%d3<{=RYoyC1YIlxkV+zoQbP8u6cv+ZSZ-+du7%0j4SWDA(B4OTiU; z!P;MM46;x#Z@9+EP#;+k1p#i3`XSji5awdx=CJGC1qt{r+uzl^{-ga;RI8xs4}Kn> z_!mmL>?sZ%e@PRVe?u62vQM;{8EsXv6Flx(^!5be-HS(2`--c#4S#gF0{JaR@Hmc; z{69<2^GrjVw*@RYLP2E5S3pmFfO!=0;(E5uWrx0@t$chLb;f~Xmj<7L%b*(Dpv}|z zNJac}hyQvVMWKu7J{x1D)qRNE zPOmufO)_@mWZwS}c$Nllc`&Y^wWhjH4ZpujTL#P$?3Yr?Z~eC$1kkzzZjb;>)mZI; zK9;}+o}4%Wg*?J)nRS&@m|!#f_pazq*9G&jNZ+(*+1pO zj9vcEI>EZi1Y1Qxnoc#+yWj}hrEvDY-s>F)Oean{`4lIW76U6phb@8b{A4G|CR%=s zLcCjhboy_U!}%Y>#&(9vEZL5h9Dgdne$_|w8>XT%%Dc#!zh?!L{zE@b2g%$XE=ZZc zd+kA~S9Q{?WyIbMW)8S}$TP_8{G}YI_3&dU@|+=9BPREC?XiIX`@S`zA&lglka$0* zSI_{kQ63WaAJZc&wr4~YbL96<)H8fGgJOz1E8K2kkv|`7K=&fMUzqou#^~UlPI$`s zIhSK0h(a$d8Nc`~fc;~+?E}DXa{#!5{Y-_Q@Y9U1o8-#yij_0v<^8tL z@#R=@Ytobb&WmsILEVpGcThDe#>WbeZ8?SAtDKB*Gj)E!>qdJmX z37tlb0Ul&iJHs;kShxPANc(Ik%+TkA&@Pwq>oOzft5}=bcNuSb`tJdUKEIpL>8bDF z2HmbS?q$Pk6(7H1Ez)$g&YKZgDh2odA6su77FE=>jSmPifRvQdA)%Ba(j`bq8VCZz z2#A1m4PBB-3kZ@T2r4ji4xQ4?(A~`t!vHh<4*I;`^LxMR`-kfquCw>qXP^75z4lsr z-FNjJ$%Xvz@8$OO^aXyGOFu0}?mW`U8)WjossZl=C~RtX9e(eE_z&fI7@4Ylw7=c> z1sTKpGyKh2U|RgDx}~f?^Kklu`ygQ=qIU1~aXx7vdlpaLK{7kDoLbT(KKjA3hpF_t zqOkT`43h7ja@*;?HLg=j2!6-c{W|_tuAskttB>vf7ypgt`Au^|$5A88$IdvU9=gf zxL}@XIPnmB;0tIZ_Nft7yNua397cH7zO3XoIGCq~-vB(MXW*$$uU*!eawprPi}Q@C zvmKxW@2iMV?e6M&R0p!Ejbrn;w71gLQ)~1Lv)Q!8x3$|H*kZ3GEt~pST#m~wFy#p& zThtfP<&g~f*6^|OG3hl}f2z-f>!9`(u{3c01?sXEr;VJl1KcSIiL2a;BSQ8Ck_#b< zvMq6)=B6QvnB&@!`n=;c{$Q||Lgx04@X{OlbWy%J-0QEJHT`yIng(4K`RdO`hIY5ir5*cV`j9}ZCLO8eis*qCzC>>wj$;3s<5~DMBZJXl*Uv+?Pb5l7g@WmHPG(6pM zuEhswn|yMbyp-CtwP?P37k4r2_0)+hlL^d&j(1?BPl$x}EA=HiF!mo-6c=WE6gHnH zm*11&>g({*p2+t>$7ghVbtx58=LVgb0qnlVEuO#lfwt>gcCX{dnOku(`(K@sHvrCnXo;eiA1(zS!@stV9(fBtA?MV%h=$bOVW`If z$|Q?yJT1*8SK5dlDUbANu8KbFoI;41jrC@Lgv?j+6)Vny|4H1`lx19rE6%=aeIiB` z1OceJ0NnwlzZnvIjtHdmzDx_f+(nNjK`b}-d+?#ivpK@tv^Ba@Fe_}kS>txzn9xfK zW2kR^I8Ss&o5!~ss8s@YZzm@m#y5*m_b1unMfdsvQN~71C#v@4+tg+n?!{GUtjKHB zP>md-w&V3*eWTG84O4_6ut? zd8p;IqF7VZ*2+=?h}#i=aa&(c`+mhARJMBTmbKI;J||!tt2Kjn3#$H;)cEoYSfW0V zHx`6Mx*>=L#%_u6UbC@aam=@-kMG!6tjIx57qN|-hZM3F$$vJ#Wgv9T*!t?=_}0J& zCLdY*g^Ar%x*z(|R}z(wG^+)Ja(fTp`2Sg^+-KtOdVLkon5IDmN5_VMsCq7vT(ftz zM3V|p8Ig+zz>AWLoLcx~xaa7q^tDSIRBo-<9iAAs87TW$Vh@tG9i@!O)U;yS0qWD< zq?pokwM+cXqeyrdPdNG+!>0LGZmj5)`#hr~7fN)iWxdU^CtasA^T+YqasR-B@~smx zqe?3;AR@T?;Ml8c!bSUT;^kG%i4`|GJ{^UQ|4_1k=_y=`Da{!aC7*loc?Mx{+d;eO z(Gy_3a)f51;~zp8R(9`NysFLJHYh~+YD)}ven7{cVn%ypf+z7e$XKe)n8ot}=`10y zERP?65uP~L+hG7pESGI@isW<|IqM#F%cA?crO|iOMKhY=okzIJxHVj5US%y7i?g_; zTp4(b2UKNJOfaP37gYPGkiTWJ>xh>9bQD5#TIKDe5Ml;Iqrsu9+>EU&mD6$S`ad3$ zHyT`FuGzPD+W0zN>N%->bY#h+agIWpY^uZV;y;7{>ET&HJK* zmYTO@ZNDt8>fwy_H$Z^2YU(wJxxVEEP|mUscmZ~RL`Kbi8**;5{_w*gu(~)%dJ9oF z?$_~tUDfj9Ds(VWp=f?GakijvJ%xhBu#hMfVkJY~JCc~uEzMmj%?lxp*4855UiOcw z3=rF?^4r2zAHAoipf(74(3$45xUtJ5rCPy^aQ5lIXM)s1s3?5m%eIUK`KO+IPUbiav`gn z{r#TKKhoeYGD&3KTc}X&(EdzRPDq!c|HgD7bf2n&OX>jt+&F8_9cm*+a5rFj%^6Mg zZZ`vh3Dd!Y#$Yp(Tkl_Z6xMUp>vh*!PG`-CM$rH8o^E;d{99-a45hbj>q(yQG&b-*J)ho-unewIU#($cX#1pPz=EF*hTtHyQS|Xom&#i z`M<{6JL^bnjYj&dZo{2T?gdgD5l({Fs&cbe^j8)W>vO{@-p|Q!xsK>EAJ$hi=1ot^ z_$Ss4*4Cm6Z<0&woPi^M2_ub0FNW59QOPdYYSzj`jX2|va(lm5Xm|b2^Hzdw_hv7L z99>6<)nt38uWYe$5%+#DrsgrQqslT2D3nh>%o^mVqR@zSiv$?TmD>BLP0#NRJJa?{ zfXvcd_SK$BfD(;$D?55g<772{7wtE1Rd_KwyoG4T36MCuPrA3goj^^^py!K*-(6+V znT;n37O%=kD1WHkfgLxe4BFG$d~nSu~QPZ#|9Or zRNM&_cQ>cF98|f5`d7ArGL7|j9-*&5G5VMNY2DHU1Hqdk13tQtkNF)5*pG?E(Nl60 zYJqxR**dIMzzD*ob^|%4m2LTo8^4B0rS3auH9jVjIAemj&ybL+8$=9ze=a!o_-p;> zBGsfRGa@40=Ufq8Lw|Mvu#JlIkkq$bHx%!9)6u~PQwg5r0K7!^w*>-kLMz&~zFOLk zzj3pm1(*Rv-x}AZmIzq(U@y1p+@@c(eZABcO_?d1IntbJO{$qFo3T-ks55C&AR?s7 z2J`AFCHoUT&c27wp|rvKrX>V?Z#=TDEy>2S#BTCrZ!hBzA?KXFHI0-(_oPa=d2Dtd zw{~P!l4aMVEo6IA1I@zrvjji8{nRctB(@@)&f6*JI>ae;)E2@meo7BF=(VE@BjJfm z)f#JF46Kjl3~e6&w5^!`){*NylVg59i}$mM9RA7c>D`9fde^xZ%|5AmV&|UZA0L&U zJb>2?h@Wp3z3YIq3mCc1yr+&T_J?57KYwB^@YTjVjYP-eI~$+jtEfJc!&8X2Ci({V zDlnJWgQ~>uLJ0{Zelfx+I+2fZP2ttwS9EbRh5SPC7RT7a!s0>fbp5X1isz$6oCEGwU*;^$@R?mcC@hQJp_{ys zQ+v}k>ixxVEDzt{n}BLdmvkp~ys+m*O6O58c3PfMx2m7FvNT^uJ(im9=)*fbV9T4z zoAEHO8ra}digIFNnN;+c!vA)mE)!J}@l|-Lik*MMDPULcwAf7XjMf*SEfT1#DMHb& zC{%lglu>w)|O}7VP z$jT_()!z;FSpG3n)XoBF{w=@LVp3w!gTuNqc|HOBVNBfW-e!1g+>m3VJq8yuR&Dy& z(9t%2E0);*)$5vc81xN!^WII6qR*ycVlW}!^hWJv#iPBvt=spsVau&20BZC^=XkQ6 z&kW(1*_&&IpwP*X`&E#o7xi|-%qp^YMX2=8A!N7ncJE5~SkJwvKXX$_+IM2@??KTj zxCZ(sK>7t(Bf(cdai70EzKM$20j(B`8;X00xFLU~)Bw`Cp)q9c&`gmqPotJ58Jr@SZ)2>{z#&EPWjB!qn$^t-g0Q8CCVDq)p>|)4wN--S5Gfv-ShJBSuTU&_P+mk=#l###kOOF;E129kje?=7eVhKZ^dJo zi=c z+uMAPSy$cm4lPKRTV*zgs`phU7RU%hKu0=O`30bPWlA2{Va9``}_GN zHE5e`DI{`9X-*&3*Q95nKAi{|SNmfGfXhZD=YB-8ja0mE%9NHJMebbV?xO=;D$Tus zyG*~RUCCv={j)wd8?(q6~U|wQpgd*#*^K?Ny2xUg+OXp~93@-7@k1gG;a;r5p@J7TN?6W&YoT6u9 z(FVh@aIgy<);iSn(RTv*rm^KCdps1OeA+LXS&)Guh`{}R^8+^NvW2arQxbS3^RhNU$=DbzTbmf_z4I_$*r0{(rA=fEwW64SJTdO-3rurmX zN&G?B;35-xtka#TKV|kZDW=U90v+n#_)>R_ibr>3csD!-1a2tQrdm@-q)kVU9zW6lS-XxCSmBbY z-hW2aI%TH2#4+?4(s{mYHhmV zYLTX=w&Ss*hs6tE^Lr!{*2v>&j*cJFSJlt->O!VCYO5(FZKpqHXxRk7^fRF0Pb&JD zZ~$|*X>9+xe6C@rX5kFn`>R$0s_wC`hn%+KT;5yL^|YM@v^#-l zN*WJ)&}kEcGNKJ?Johrh+Hi-ip^CVZ$TMPR%pfvaA913meC~_0ni>3nDZ|l%zi70Y)=@ALgIvFh$2O> z;gCqUJ1DlkguJbK_lxbj&}($eH|Y#qsE2NpU}iaDU`jp57cM?X=ddJMc)p_NMI|qC zrX&qbqd?Ml&dQ$c@#jpjP|?Uvfk8b&YstyFfxNQCAiRbUfIA95h_I1dVfNcZpe;hp zb{^X7w&U01{iK-|N&(RZja1>>7b|4}=4NlU`47Jmc@QVeB3Q4d8P2H{#~-q4_4py? zT}5sX$6_smz_HXl2(5QpWleORTsq=IGBxc;ibPYxQ?{2CVjg{AL z8ZCf1vz^%`U#Ek3Dk1VO$WHInwFG5>#Ks=S1;rVx0_rq8$6P7i@>1fxb*lP+B+QH zqK&zulTZwr4bB~75WhtpoO<(FbO=t-EL5*uFDfG~$3_np_x+`DhFuC=f%8mZ?U}Xj zDB7x$`DbPAJMWoCqWzo*H2jwzgIeiU%t}L!>txa~wmfaix-N3JgH!wcjN{#|&N`x$ zv)(!!w?%EVy`K zp1%a$$aJlx)W!dHr{bZFNXB`WTryFBAzJ!#uz-|?3PbgHlIC(U+wYKC&ZWmVHPa)ksHL!YB?=ikYw?WDpNeQBd&%PNF zsG>q|9HxqXpeuS$RhnGUmZy{b|bwaj>MUF2fccSXv%^=>>f=azQ=GNw<7#_jy zc+Zr71nGAi?|m=8DN`#Xf2@o81kr2iGq(-}2!x2Oe3I{iCSQX61q0uik@}woL&YtQ zmPx!W0+4|G^P1U1JO|vT^3D*cJ?)c*)8q-IQ%nQaB5pNkn24Kk&zH^Pv<<0=v$)aP zAg(voLI?87aP}?n>2K-e6l#dwc3+nts(g99*|vB$>BZT*jXQQ-v`B7iJ4E+(m_H~G za)>)^-3LW@bW@tuxMVfD`fgPiujwKX$TQKLUjauiEQ+;JOVYL~RMt^SX{;2x> zL}VvBRLkD99u~TJ`+dfU;(j^N@-g(M4fHZoP;Ab(a3ce9PR`xZ3nxXV#(07@#Exj` zti2j8OE!2mpqCdha^!cjgzEXL&*z78j4P)dp-$6Q*EFiOL8%RuJ%T`m`KBQ za@NG@gFn=rKH9PtL2}C*H$gs!Ean?$f9e!@C1Gch@G9h&Gq`sl1X6>{QTUE#p`Ab~ zwG&*P2G>uXPj`3z?0gt0kWNjRdvL64j7uI!BF@|rgzbiGW_RFM)O)@E$r45}^U%l9 z!|%NAFx$mXNLc$0>s%=nd$tURwSps}8RED&=BuWtYGy@^H$eMZNPimFg08Xf#YA4;%f7zBHWo9nfMnmF}~wQ`DcdEJua1YPa`S30I>(?lH;@1rZ2; zY;pXlR=WB%l=IY4ns%?-^JscoUaO#>4KiiW06cfy;Mg6Yt5rx)%mTjCM zVp2My(Qoy2OW+Rq=))0NNTQCH>6y^W3cg*&OP2^tBBV7lnvI5SH$QeMZ?!e?sWV4` zh3D`Wq6(k>hGZiV3ty+<0=FEDu_TX$Z@m3Q?g_K$kUZPtxupOW3g3*&O*spSR`|i; z==t{Zy5jLbgvy+Asbmhasj?K!xsdrBrNR=Y+b~}h4$o2sPWXxL0r*Yv>!Ey1d`N5jj^$42B`N7pGA@BS=eKzb$7TR@u((l&oOiQZ3zdPT4{JonHPS~(z zkk690_ht1@af0)*)>lsIdtJ92W`nuChw}6Inu`@TyXU0yzmw0Ne3^_tUaNcMhue`O zT5`d;%cT_dyUd_Ax9ifMng_KHd-)Z2C3-RKQu|%bPz$qhsNz=6b)w(YD|H9WvzrXL z0nVe0XKF3-tFH0(G-+gkwQZ6ihPAa7m1=4?0L2rwqN+^LM#(2_pPUuJzu;Q+mubn9u@W#28swS2(;+G>(WyBHB6@;tL19<8w)#Vk0#>uLv#=U z6wIs_3O{8YVCnBo(TcrC-B|hp@$-XvQU?3Yz-QX+`#++387X|N8hQmTZs#>g4T8e`QAnLm|GD*-Y1 za!=qo8EQ4J1*AYCf_V2UD2|SAGmwsdSyM2_e3KSKr1(k4RC`FS<~)jm`RsTrnpvag z8W+wCu&`hCE7p%*@{CWeY}UtY=|stNxq?$f=1S8ro6==dGCaGTU1M+28}=;kE@n|r zkr{N@lHhlpJ51frR*Gp#JXWeg6jvnAbITf)QnG}`drj3m!<3$;*=MhC$Q4{JHjMOE+;&)#vHkh>iu^ zRt-fkO2B~o$+K;p^t$!yobd`YQooS%>yDr5`b^i1XIjtTrXKMPU2VhaB+ z%>GHy%WS}sedYPlkOq^b^jrwNb=RCqVUn{%bj11z^Q&sujgIh)nD#*{f=0#5)r_7& z_J#Gh^OqAM${-C^Rip2tJ=R}tSCX;ta>)#YzhMI8bJ`7`QV0np`Ej*2+~Od&1t*x3 z>VM`5()RFgY#7;cdd#bB8yYGU6b=eIYn1bueZJIDYBoc>;#sMC8PFqWUc}pst z^c102{k@Ii&Gu`I42B5S66^B#>%L4vA6U&8epB1*IJrV!8i%gHKIqibN};sgcNQ)y z*Pv1@U)z-T5HosFvGQvR2$nN;6#Q;?a`4~}&X-HzWkWjroYuKiP5+?okC#c<(Art9 z|28U&_0J-;)O#24Rwggt_(@$R?nc|jg`!VRXI?4V^IifKL;tu}$@G!~KMjUhzZQX_ zSTQWqIFi9R;v-Vn@E65J7G33VntiU!&S`CZb+uc6(h~vJiB)<6@v6awKOJcD###?n zPEdPPnr*aavs~7Eo#>Ut%PD8tQpSX}#M+$N;@uz7^FTAQj|keXZ5meZx*!xV!JBt5 zq<@$8OdJ5A6KUkQd6)F#^!<)LYQ33fL?e)kpqMCy70(9|6||N45`=oU*d1LM@a~87 zV>QX}=N}3sWnEjWbOUV$pC{cdjby|R9Y+j=zpo7>x07CHBfq>!CWkvkue-q=!@;@T zB*gmS#w3;7NiBUmOkCJpPVFeVnNMJUKm+2+r|jb#N!Pj5m6dKM_2-zTUG>-1JF3=+=^|F#0sLOJk3jT{%$&>1c+8|0^R{;GN*qjHbFT^RYcgRgOyI_UA+|5&M;L?*xQX|3#K zyvTj)dday+qV2eI$DBwx+>%l^87 z@#e8BbkS9(d*i>EtrfZlsODNvWu@;U2pZ?hsi%;!FsB~Fvqm03mEm4|Lm#I-oEQc* zssH1eJ4M?i^pdAjZZDnTx5`gB)T-{feS>{E4K~GQEwE6bCE9}Xl$d=d7L{BCb76sB zyxmb#wRO3RN4dw6+L7W zWLC3Dfj=NmhWk@sx_#Kqe{ixaUMPHVHgwSC#20PtS=cgkD;PEEVJX&iKIRtX)^}xt zq6x(=l)Adxoqjy}@}qv#JQ%*9BXzm3AD4;^kGS$bNK;&J)TiZKu;H`{xbSszv2LS#Ikca}fL=I9wfY$?_kOV*(@%xq}|+28-t`;k-YUT}i_ z2&yr}`$1*V)Q!D7Dn~G)=lA(W)hB5X%ZWqJwVh_YB^~bOAG7sYS-YOO9#0v~pRs*N zoz;DD+*oi%7=EK_ZKg=Hl&Bb=tx=!dW<2;s$^DIoBiATK*B{0QpcmL?krsgPDjweb z9Ew)up|f^;fO^}~j)Mh3+cWKF(2E`V@F%g*-o_`KED;n2k<65wSlJ9_SUg~XZ*CQh zjL8FATq(Jj-j73d^367YSt?iwZhyWHZJF!ck%L~2n~5AXt4FXNYSj}EyZGe6+rCsC zv8;UM%r%Lc&Rq@jO1ypMc+$M`4wotLGjH2v(DjeC{ZBa`$CISfvmWl37W0U706#9P zIH%m2hWMfJD-5xLR}AgHe)}UHP`j1?XPVDb`>0&3a8^;MD*Nqa*+jMbLfMf|Yy}9c za5!7QyeKx&+rJ?ts+aQWL?6C59)C6y6yqU4OB$1qkg+r$>f5LgvVg*nN||eYkxbQ zNUbXM)S^^ixK>yS$BT-)+KR8PpZ|+sC(oC0G82*b2gTe!snH!Pxe3R@s=8+rLtI38 zL7%l$*H>3jONsx&%Ro#zY~8iM_;7LyaBf~tyQVc_9d zZM}PEpv$YPPCjjgEtKrohrIY<}WLu;#05MKBi$t?acR%4ILN1TsZ$~>(jc{z{d)$ z;-)EFx>I=5(>t|7sc87FUl9ca_5)fK%x^pe-k%b^Ig3hJ8NT@rQR?fDXtTF5XePTE zx=&XIdBxpq=vxlmE~#DCYg4QF&cZ_NbAtp? z-QaN62CkBd@P-xST0d!G?Y*wM*yh6FabMzLU;58lHnwiO8kZ!pa=vE!6Lg({lnT!k zwyX}8^op?AS@L)>We<;fpV&!y&=hk8m2o{Fr3PZPs0-2h+B-&})i&Oa#WYW|=o*9N zYjg~lc`6w6s`_8;|A^hMg+}s4P!4&Pg<21|77m79@LAo3#C)yn~p7=mUo8p6c7{2 z4-p)-kyXA4{Rrh;FjZ7t<5+$Cl2Qt5jo7)bm#P_|iD<9fcNB_4fJ$4@ z(SX#hbs`#V8-z4Es+)<4vsjy#O$7FuddxX}nJuP1LYJN{m2%;|bzCrbdrHRwj&4hQ zH7ywd7z!()alZ_2zsh-Z+k{C)8m@dM`<+66w5$umIg&QVZ!43^BL@D|GP010v6!bf z1fR_c|ID;vMv}ij#N~+*1*sB?vW;Qdb-TyS+YZbYp;N8nF$@j@Oxxm#b6TO$DO>7K zrFTu$uQEz<^$o)gq#nMSyip=F=NP>U$!Ypkj?~B+uBaAEh!Es(ml_l@ohReZ}x!!Lj|*^;hjr#9&aywa>JfA ztL8Qut8W~~ciUfnHYjoh4KV;#iA(|7bH-88;zLusQ}u_H9LY+?tWpDZ_os15igFIN z@?QAcQ8s%HO$rEfd8GE_@k^LdzgdOh`GIv-i;t-Mn$o09rfV8`sblcDjg(voj(*0! z>^cAoYDdUCGriBlerG_Wsz>q5o=H#Qt8K_e>)u)U%)efjOyv5j(=j3^rQa&t+BWu+ z?hgqTBO_0eh0Eaa;>E)!F#U6tt?PnfRw6)$kB{0m0fxi|+wl5lBo%T`s0@etVu?7h z)^hw-4Xx@)-8=uuQVwaL(shA(jMI7?`v~5;AV!gv<6&6Apk?XCAFqc z%V&yT<_wB4A<5K3Cr+Eycv_ArsXdDxGyO|lLI{x$i?9(Is>DbJMmuIZ1Y_VBP1)R4 z8uktaiT|COK1~=w*{Pg}J>^V$!9{LJSW+nEl=8(HyYjSB%YTxyB=fJwk8jvsZk}?C zd=7E3RIqlho29Rm>lvfjzR$eo6sHf^3Ggz9hQuAx^Ybs^V%Skt1F2L>Avh6*UQ&0+ zzZG@JNTGj+9ayxp2?uX?`Cd#;26k(22H>-GstQ%1?4M%3YkZ_V=Eb?*Gre@Mmcj%I zjW0~@m0T^8z&KoP81*04Tlh)!aMP&N+&9Qm#eRprY^P#PQwCj}xJ9Xp+SfhuIGV8d zPx|$$)y9xKPoVMjnfzg}zvauysmgx?`IiNLDlZghH)cg3&zk}dx%uyZS8a!A1ArzG z_-y|s@bBHzC;_M8zl~i?c|rgG79TS~s{g&MD$jM#33e!o)IZF5!zS`u5$Gr1wMx?e z)kA#e6drF)^15BJj?s-l{BJbNicg{@1vk=iJ8sMp|%8{1vqRREO{XYH5J~jhh+- zi9H6u^xsE|5w>Lqk^HYqt%U#nj4`Nod_7cPSQ&qt9$`C4TI@PgmSZD^QK-~3JX{gV zIhMLW?4FK&lNn);mb*MGi?TR&?)aN=j}g2^C=a}iPc{t_w1l#UNVQ5gtkuv?-JWKR z&!M$i<;ISFYt2e~_SCPLI6KyJ%b}gLJ&hV{+j*Sb9PZVS?a9kZA8Vax&}l41;xK;M z#*$xxixf8gxuIV5@W?g7#`c?rq1C0I?Jo5_*D?E{pY8l`78{S;+J9|$!zRQ&3;D2b zoJ>6TFbhE}{hd73L;!UFq#jkk)r0YhW~-o58Y{IKoKQu~NJTJ4SRRfWDNH$e1u`#yRBf`}4^;H^NKmz4uRVTZj zs8(rCI#gsU#xqlYsBI+|T|xh4iT7~~{3PJ$KV?EKDh)hf09?rp$2gSw91EDvN)LH#7l1N7Y%9n~s(t%s`~ zb$5F}WH~oZ>h`i-oBAr*Ep*qoY#O*^aw1#;iC(rtWDu#j;J`OW`(*;EXdL>7!oo4~ zRgO~qABtmashs+jBZ@eo!=63jyIscF+hlr}!$KImOfCHVT1KMFdFT+U*fQZcu~|2! z%7NH_e(_*Mn!Zo7#dNdAS7~S`$ZXi#Brq$d^f>D`_pe|hY$L+gBlhm z$U8+Gxo!2`adx>*Fb41OVx!oV?!s0FWO8qqy zLxR9s3ucFWWTZ4lAFfwrbS_9oXws-SYznSWS{hAV1$~eeDU=qp)^SDGm zjivHae>6G(UA`TJpD3|;?G?Y^)cD?cpe1o8QDfwNaEj?=69xCo>@j?VY~lJ&V%bmn z<~a<{1_J#gACn@Kc=!Rt;qiFB(d%p;H>o%5F7W#?DA1A+9$ri+}-v+jJxTq+Fy9I1RoLbKBNT77Qy{QKal`acBJ6ng z3wxb}K$Z{Bp0(={G$whd{I!CUgjdkZ<|}qL_6U%@L~Xi4l>M3AzzBzz)l9X16wO&-$|WzXXH!dhhcF4>8DQONvy`tW=_D67s6p(% zRnsXW0r)(L%nK{Ic9!jXL=-jLKBgNj0sCgc!x)sO?aM)SzUHU8!!UuY(byIVBx_6! z*bj1;D6V-ASSTUG)d+3x@VgITvSS8B{%#jO$9yYJMT+Dn6*0`tShoCis`(hut@jT% zIq~224-efhBgB5ZPX#htWp4gE6{;zK{{(ozH;=*oXFd+7dim`eA6Okt-I{*75Z$cj z<;R~?TDsR3`YW#6!-R;s8MiUDa$l1QPX~ETYU2)*iYQe`n*JmUKH+BYjJ^2mJ*&c6 zer!?LsUyM5q50G8Fy~G;&6smw|u!YN=?-y(jXSwS}l5!c+<}*mFnCs}m0?;9jP z-hf>xU4!`zAPV=P_Wwewi7ft5iJ3~&LlSXvURJ!=tU6hf>m4*yA#Tx4(G)>p%rLyi zWyAAHCIvt;^kyfb6Adu5Dj?uSfcDQrm9GbljaRDLlVowI1GhIADQfwQjgW_@5DyQ`; zoQeHE*w0S<^P00Y|5+$9Oi`QHEQBt)$V@Vi1yS|G{R!L0G z%;RFmW^SyL*D@7?`22kXzVWKuXSZQvenMXSScX9Wq@W+4_8xlSZBUq0qmbXKa!dC0 z``qpE<{v02jm^)vMU z_4zTJerus87Z4gc&=Lc4EhZ-7t_k#jywhl#GfyqF`KCUB@z_Qd6xk`mK&>&J1oE|J zT0va?wXSJGw_aC_LUV#u11W?WBRv&+0?1^W*+j?N!eDi1nU(v$GH^HV$=b1dEVPhQ zCNQvr7Q4H~tAovcf2QAzjE-p(%z=xG^0PWMMm+@Qe3omkQH2~QDNZ+a2p%PxvhS-- z0#;ZXM8JW<56eo@=J@jW!NYqx3^qY!Kcg@tnKyh$zGyeF8n=0}6*E`4l z%=Jcm(C4)K=FsKf6Eio)s3}t(_Dv3{$$dDY>Dmyp;U7{CW>{NiY>zV7AAj~i=-Iq= z_gNMLTMm3&3Dy%UVA_j#dg7OGlE~Cwpag2wk^oCsN}*a13wP26!s^M1{l`77n-Jr( z`1A6azW$$Ox||%e_eU`!EG$GK$ZdH+wZxXO#+NdB#z%aYG?v1QANftFmIaT}`C>e4 z=t1zGP>;JE=_{oDZ1%JN<^vW$1!~x)10}w=@_q!hRFi<&G2Wl;HjJkv%hVbI$+<{M{Pv!__-8_1J==Q=zC61%lQ=i){jz ziGLn3O!Ml9azQ688x%AW942)Yl>Dy~9{w!cmwU3 z2f8Hwrf+%pukQ7CIDh|imHh_sHVC{V^(XWHUt1V+15MD#--CFPe;%L z!o`~IX{9?&v}*Kj5oe0i)pcZluZet(Y5n;uM-J!GqS<#!nOT1ko>zF^(a&RaMc1+S zTRN`%(9+3a-bpVk5HsK#;KpbBI~?0=?m42LC#~GmJaYkps3Xn`K`?`rlLdij1!oxv&g?xw9SYmmzmBvfPrWr6%h!>rkqL z84o((X4%!w@X^w(VMDyvSbMyt`*zUKx<)i}#G-Hi<|DK@TR%A;$iVhJUo5*gcYv=O zF&^tZ0e`9xaa(I@{ufl%$oKJQ*U*XmX=B68b5CiKQvx2?&~kLyQvgRH(*F)m$z1^b zIqJhq{TnY}15+mX*S{h?nEioFCPGnYrX&aZY)+eWcJ#BRc^@S0a+7;k=s~GNmDbh} zXw`a`<%3RWhK#t!T2A@I2dePjLM&4-18rF_rN~m3`h-|8lm-Kd8_s9{F^+Q>8 zp3_0&Mw|59pv*?LBtUNM$!A4viI!#TFZPv#5;!PBdU`7s$JU)v}B zT>rj40d)`=cX$@@tARsAEIh)bM~44p<@h&Ap~%EOP8VBW z%l5Km(vCEncCi#8u{q1d)Fnd_^g^;+rZrvbwAi-nK`-8XN*=rhb0)cJ{5cW&bEX)^ zCL(*AaIJhsc4{u>jJB2nFay7?Oiz#tJ1+YuCMxtjKZ~3LCV!c^((ccq?0t(b056$Q zbo#sE!(CeSNLJF!=t#ss)j^R!INi8OEEnkuwcPIWKV0-*#raLylA0okF3|$17SpE% z`ZW5kF|`yDrP`?2yYz{4G(5>?W>nw0?|$BeZ0T`9Ww(=-W72(k5AIa4`)^*ft~%$U zg>B_M`JdG6OlME}y+g%@4~z3F17Bs9m_4H3+sC?+6aN3P_TEuVu1))BXab@HMCly` z-3UnUMUbK(Shj-Fq)3r25LyyIgP=4Or56zd6lv01LX*%tB=izGp(M1>e-EhdxA*(| z);edMb^dX=fRyK+a?dq$%?!7Fa)p6wLrcR)W|Z8k*QP0JR%CeLy@T~R_U%mSq$nt~ zZ>KSQD`@xLVt_&|^Q6&+#dYRye)y5o#Tt<@vz^Wrd^;^(kur20k^1pQ-|D+<&Zuv` z`+1r9C?os}p`mVzE2OZoA=m1%xiL-6CbeI8N}t~%RAzBl z5K7XXAKG8Go17CjLhfXmL#jcQcfrocGjVH%}EQq)lQenVMv^SM!7OCnvd z;((}>N(EAL&U5o1t7kl9_d@kQgeRVFho(QJRAd!X3wSbNk*#}tT}no!oS2;`C)osQ zg6bgL{k3u1XNFLNM@94gIhX}0EL(8dw&d*jlgo=1jxsOERnF@B)HAsYh4Bf8a1$z@49gSIm42lCrbQ z?3Nz|xzVo?{xX2-oqn+9#eE~tUQ09;8^oHIb6I2ej`@)1HQZyO)rf{?WRh_zq-J$0 zElQ9r!7ER1T#||mR9OT_qa+R5U?EPY3h}80mxkSZz(uh$-l~&8@I11Dq4>N(Ybzfj5D8|k8{+lg8>FgYkX9vvZ?pV1`&JM=&s%1g!4OZ^& zGZqI)379wm9n$;E9Tw7iF6Pa_&tEnsM0^%J*zwm8T{Q0)Wm4EB`u25I$CN|3Jo39k z$w{7Oe3NAG+m02Hk@_r5?0BOd9~iWal}VIN%U%+`yk&b>9^cB<6amg)D6G#kIC#-YOzTUy ze~C>Hpc9ItY!?FxDaIeQ8tAGJ;B z^rz&QS~wQ0GoZZ~T*RV1%u+SQ_T#Z0KNKlv7B|=j1J{ygbnl^t&RUl8tlmfPthN(p zoB(pR$Ougg1USx9=svwe;TSgmpHn0EWgy8_E|dF?hEx&du;-)@^{Ghc1UZcHmp`F^ zv-~ioMuR4U-v<7)$x=!Ed3oQpH5Ti6W+r=1=7wsBKLeQsH53*hXKI6o?u7anvZL^q zd#o<}rMotWAbPfIh=6t%S2%>mrO)5@zisEt%%(wFU$H<|{2T*IA*)Ven#|Fm44q$x zx)XeJoDV@?RF2%mY;9aUxTkk{xA<^XDkLCwHm7wBb5=XFsYhi=QvsB71`@otXv z@DENsG0dQ~;m}J-hKyv_WVo1FvEA-*$E`b6Az-O0?8x|l9ef9lwtL4t`Uhg@s!ZV$ zwzec*u*BM8*y+T%*S`>u*SQRM2)e~kIhu!AbhCo{tl4)S`E1h8EX4;u25t0@%IYKk zxCx0@A)S@MLAxTe@K1!9rz2n1_)k2=-uFA{DIVOZ4ov*)Bf%Ss4vow_-T^%15qY^4 z`v2?cZ)`r>cF}_axmyjKz$T^UoOI9p*5IL5U#Fo^n_-pv-#7e#$l3WMg~5V@h31OW zvEiT8zLbvmF*(mTr6T9>>d{p`ZaUp6e;P;%t9Z}VjETmVO58OwWaIim7BBGJyP@SG z;N34j$@h_BUlyy>L(NFinmvD&Kjxu2@Y+d#I|{W3j?d2odHQ`una)~gccZQ9^la2mGDEHeVItnabAB%h}6U?~^gY(ymmuMXYdg!HAJ&FZz?rN8FJ zf319RkwbfYzgGMElSqZS4y28SClh{ax}D4q@Y`EsmliNv%g9ryem74fG6@bh(5m$b zcin@hADsP~lBusl%`yFQ13*C|zX~CzpNI|V35Fzy*!0uqp1v?o|fhwL(_1iWUJ+qt#46eeIw-SKjZ z782cxdG1!kTsde0Ax9T@UQtlVx$T$71KbvWD|`fz%Fmr3Eh(nsw>Wo-oE~|GPDOb> zaS`_={kHuou6_sL610=~4$dL>mp_3*ym{FZ21XY79)mup6F6pv|Ao`;PSXZ_&i)c& z?BMKNRnwBLqSgBQVxEm&p3k_BY&IRbp-XWno>=#|n|mzl zdEegPJWmQ+J;<-7puYG-VWkvKvaXK5k1D3_$sWHyVLdZpAXZb7xigofMR*q~DC93M zdzBKXjih`sVk z1XKWVI!mSY8whi~vn2nd>)%V-ke8*RRBLXU$=x_c@(ijumq4Gx0K63;sXu>>d?NRj zzu^ULC^_%!c?7C6#rqj?QaAHrijqrN!QL-yR#gtNTwZKs@B9pWEdjE(7{24mo{s4> zUBKs@aw&NhQANZ990Lf(W@kc}xpw>orqIkFK4k4ts(p-Lit0kqbSN5Pa7b*C7u09o z@Rx=-5`%CCH|dpUHm0j}Suz%`@=fH4mer8Pi=Ceme_B;=$dVlMkj*KMm4o=pew~}4 z;W?kE)UHmUfbG`J$C&KUdQYTzkHsX3(|0jW5Z^nOm{8@uv^xz%+_#WWQbDt#^RQh{ z!ftd+U9R}_dUNVroG<)vy7&FI2vSgZ4i-8ql%kkp3!vpl1C?I?Cq&yX3b#0i0wox? zF}7g+v2uH-hhiIyyEp^c+?y&=uxHJ%d&F`{-x#7?Yr`Ib`er1Tli=z-4wYkIk;Wv% zo{BGo?Fy}qRCQo?7nv8$Y4~^&uGRL;8p?M^O0vHk_^j(iX6B`scxsfn?8DrD40p6Y+IcaWm+JEx z!sFY*Cb)86qi!>l5u~w>8MHCrX)W9D4`PW=N;a1}oSr_wv`O#isFubo{VGfTeb15l z6J3hgT<=1QHv}~Fx>)gi^hq?bPoh-2+NLToV_8`C>M}7RDd7hdY0ft>4mv#*`d*CN z{qt*obi@yaiF0-UYrSm0gt5lWP}EXx?$@~qaWI~G5j0JeIx7&9?i65JdT(#6+Vbm7YVj#6oT%P9 zhy1PL%1lO1UT?M|w(6)z{bcJKN~G|$J1ujjvg5IY2xHj~y)pQ^DS+Oae5Kds;G^CV zSOKDJswL*d@$JqOhmjO+4}Bux?i`0~3t=-MJ0f*I^mKs#56|ia_mJxh3hz)2gYLDM zxe`;6<<10KiR7mGegkAhP~*6)kSQ#8Pg-irAJTia*%0Yh#Hg;SU~k#HGXLb@ug2E9 z&RK^@B^c}~?s-!jtY=U2>lmva%_}Egu5Sdvla!P58`^*p(YfA9N5!3-hI1e%ff#e! z`I8WuM4$~Ya;yiZk{x=DKDR0X#R$NR%Id+jd>6ZFz+QO935{EHzWea!BpN1q3$jD7 zL6T)lT}Qo!fr>H{D4%pRfsbnpPcnI=Yzz^dV*P8M;ps)O!3$fHx?;`ySn;j7>=+^c z9|tytOAMA&h_i~SA#4iZ5T-Q^Z#BP3=6sHp71@x>Ye&sF9AVz40Wb-s9T4e5`CQDzV@q;05FvtBe03?4==j~}SS=%gkGSuC(nEU)pN%>$p+t?1! z#Gd}S3UduBup8?N0B`o#eEdD8C|wRbkh#w_Hn(RMmaP0tRJ!@;r;xxJIKKUpSMyiG!DXY!|? zLNhQ13q;GQ?|tRdXzx%6(M$D(1Hb{t{7!9ZE!3(^&N)ON5xW^;YKTp>p4%pLfAsmZ z+7QY0a1{kHd!cr*zzoH125H`MP_z?lIfr47psdN6*T|HW8=EY zum_1d#*+$&l#?tZ;wvzO0Lz}Fi^@LJx)|mB-%w%(<~%Hnpy6GGUwn&?K+>1;bLU`uQi2ZI9ot0k z$;Eab==c$+kgE&!^0f%2k63)o>Y>xAGHZ8jYJ!EV3##;ql6h5bDrTFJp$bRmjAz#v zle^_R|JC-QTn23*==0g05G>i@j}Q8D0;}RuJWOiJx-;=!k+4f>@(Ce|2(F86zTb*txZ0yJ!Kq@^OFjbU&=+YwjGte0F!`v_Otxzb-|ZujvKkpPo2)J3psXGi==XrRK#n z0oZ;@i&NTM~g{Yt=_;k z(B?I6=@1Z>jpq9G2x{EYH|!M}#^ogA9&jIoR$}+QBJ7{}M=V-hCm4SCQs0n0Q0(GqQ7E=N)I`Q!MY zC&Go^&dD;#r{ zFNb#S;t4Hj;c`(jh~}?Nm6dcp`j zicT-z068Yo==>M|M*#Ff59FaaK>uHbg#u8l!Z!hj;D47Dh5|uYfd2IlI@G<4Wy%_t zC4m|!HIRn+PgSG+lM`jl->dg|$lTca8)tJ$6*zAF`F21!W=QGF=20j!L^dCh73{yi zLddv#2N+`VpVu$6{NZvzDS;mJ(Vs%hpHtynv5)iqYCdr%w&Cs|S-_QME+MJ(6&r(X?TQZbWZ=%EP17UYs zaxZ0u>`Y;thdWrr;4#DWy$g7A78MSXsf7xv%yi++R10QK2&g92#c*0^cKd`>jzQn4 z$cS;}^$xnpKoUutd7lo38tE~IRj%Pq0&qpW1MbhuMd4ezu|%HFP8)ezgSMn8Poq|s zhq6ur&ICGzG5W&pl9K9W3`)Ty4d+qCC5o5=>LR^eVa0d5m0(NK`!e6)xe{+?#Y%Fk zpm4>raB0g-w?QllVpQE1A886s0*~anh6|6xoI1Rd*s4{z4iBnYldvGm?Ko5mSrh zKNTgtTaKz`i4Rn61*jcZA1G;5FLPQH8cf zeHW%T0_hsKp1Z^iX2mn8l1eW3AvV}!YZTF63*>WjgF(FB$~gEB9i=G4)Zj-F;d z2)yMwZ#w*6#@X}VT*VB48#zweVr*_~2TqQfN0**c?w@2v%=Cnn*8i|5`@Hn!qW+;$ z_sEaUR$l<5KIkF+;eUSdHkW2YV%{c68>HmgHF)R5&HehPg1@WvQ^MVU`7Ne@a}f2< z{LA$yi2n=dE;Rf~5d3x?=}adSn?J7P?f-`t_ss0H^BhX<;EoRbn|~z8$l(%h8^^5T zNRpj0o8&QO1vU1)AMNvSTE9O;=J@+0MXyv-3zd%eY7=KW;c@$0s3X~(!C}lO3g z4z@mu>J((rvo~M=&6riUJSLVdd`KMe(jhh)z?~`MRrgnqbjS7=#NPYwS^b3tiIjLU z^JVHJSlNk?t=S%J84CmqaSl|+NSaE1&FzhRZ+| z3=Wf9j~cH^+E86pXM+44dDyJHM<45oUsTwiRuQZ!q>HePJ(P7GwQ$yU(>;c1uvpoJ^X{q_& zmm@f*1B=9}cW~3oMgA{<#spO{HUBIu zJbS;sVq1?n$0Vj|cfdf;IKR+kw8XTz!1hd=qmNT!hkjZEd8liEgmETr|b|DT{08Q{YF!#5K=&L&-xr@blFsvo}9|Q~PQ7V+x4k)fj z`!rxlE#qbDxoyl-d}DLe+kv)bO~=n;5(=V$6IM~35%r%{J2+%7=~hn7=ENoW98LHi zM7pK%{A|n!0fo4cFy<(y2C0UhA23Y{x2vCDk7n5gTNJk?$kXLY!V%l7*V@tpdBgI@ zk2;SoWo~f9&uISE-S8KH8l?A%KOqHa-66vs%>L-cs?#HcLYx_1ipEKfBPK^(-rMHY zroAuJis;$$ z3|*3(hpUC;ZQHCVAd0t0>v^cS!2t=E{JlG4t=>OB&os^gBX3xbUQ(yD5r2VJ#M@&I zJVVbymLcdoZuibfFosU}()h z`=K?jx#!u9zug13NG*Vtuz9K{GSfT6$%c%3j+^1om^gz)#fzo-zcu8Z*ok|HFq=zE zc`eGK_f?5L)YK83s8R!xtus;Y`21k0O%dpUU#C_*&?MHU9R1bmKApbMcxpAM-VY%C zS&nmo@vRXdjYHTOv2ub94((=K(43}|uyg^$cZ2^--GzqS?3kPuyh)S3EC=JTWdvx6 zXw{Nks!t-nhNwu|UXeye*oqn1>>3OYD7lF0j|+teG}A?oTaS>`LYaep2UY3sj@_t- z0&jZNDDnCkKQCs8#cST)xsh(cHsQY%_|DJy&a6@* z{2Tj2B^B|{5v*ScFpso{Ko4h?P5;gNOI5XHxFiIP2G5isis}9DD})_L1p>~5Qn8fx z`#yeoT=1o~frJG^^U7!nJe{mA6#5#&{5;pVu$xps0k-6zOyC%Bk+A@&)89~lVsXVh zM^de}BYpC5XUDFySmFNS;ZNeE3$lxS72e!))6daz7)olcE)+X8UglO=Q1AAXQOJ~h zB3?vM56hUjA#I+oiB0QNa;eKtWBANcx0b6i_=xu1?bT~VUmt+NuH-%P?CFzmxtMdP zM%%^n_wN|>t=929)N`e_vOm97pOP70_FfE2&be^j*tn_I(BtRIoXb%M6t-oE+OuMQ zW$G>zLqy*-Af@;%-xff=_TFe~&Ep^lH8ws_!9w?(nNF>3PLv+uP+@xo(Rs~pk^l=^ z9Vt|$L*ISCseOPkKS&@{0{y?QR1exw31Em0YlB|%YDRnM(@6&2@f*oU2dG!~_bO42 z#sFW;vc*9wNvgPw<7O!Mg^nDh5b^;XW(+;{wYeq5#t>Grv!B6Zg(XL?ZL=W( z<&<(z7|Q}L)B??cJSB{lj>#LgcFb>eL@WEX`Hi{mGf#1}C>CHQuBNbZ818tNj!ivS zYG?7{>$sj?FRC=&{eZ8e9i8O!@CR;;I{Xfm1=#6*8d{W$p%TOU__L@Th05Qb*C`Bv zx%^dYjmC|q>TpbARhBA`UvLGNh-7JlD8*-_EA-Tai z-Uwffi;%(JI-`?zLM1{Jo%5y^fV^x`|&#n0C&BRCRE~ zZHSTwug}Iu*{C>-nF}#N!T)P-N#QlSHqEmxwvxmR@!1~vjPGO$d{R?J>sQv5 zaqu}hmiZZ+OdWE+wX?;cB3e#r37WO&eY&K9`5GtnEz#zxWyLnvz5C<+>VD^dT2qk? z4;K4Wb{F`L@mHY5F>Y`8`oO7fD@}-5yLW_VIftJ>MygzQL5{225hb4ot-hx8>aWQ5 z*&o+aJ^^?!?>PV#)8##+$QU3FUMn&yS~MKn$~z`MfEMBoxpprD{K6UP3jKES8QE`% z5y;TgZn}P8MPE0&l{sC78Bh}#=#BgoNB+bi{C+hI)TmcIG7Of<>CgRqemPjHz5DTQ zTD17m2l6L@K8AD!~MpEpefM|T&7sf4>?H>gc!`#@E1ZUDTTQgUr(mT9A zq1bve$1DDa2Rtiyn)+2(f+f5F#3W7*F0s?tR++nKXy$*PII(Shi`)0G-+H0lI7&c& z!T5nt5{lPH#HgCD{AhvYJurFZ;~8$hyUeSLR+Z2XUt0$YRzJzpzf|A__hProL-^>41KAB6cXU5;u5cbG!jBI?LDpmf= zp8Vh1Jh@ft$&!}9j*QNiHc)!i@<@UJPn&WX%&8dN z_ZXK@@r+HUGJv<&)=`Ovk0Y$BHKt9e3{~-D(6tQ&cBq6hCS=1Rz8r`OGGFYyF_D_FC{z* zb+-FDr)x7gxddoSC1(*W{Hjj(!?Ku6JKgO&BR)tE`gQfOD%;?~cNxQsZQ^>*NB zX5CkcPF;Fn0-p68Fcv^b{FI$gF0CSX@byOw7*grsgA~v93bWj+HH^qj6O_{SOb9iJ z%zYkUYG^W-DpS5PT%nIF;TJ2@*tWaf#<~45NZ_lh)&49nhJccr#Mjgi0jNaKtjk#9 z`~5x2#rZ|>M603{SRIzSj`SEi#{?gkzd6hE_XKh)BfPd`QJiRMg*+4`Zi~&r-+ARU z4oMeA!u;<~KmNGXx4CUP+fLOhoYK1+sgv?(d6$_BY(DC703`mFAt0gvFXF8r<2g{I zJWQ>}y=i`WzW3Bc?ag@?W(uQELEI{$itKGJ1Glhxd-dPR$XUjH^#oyv~*`DQ4niEDw zSo^*%6eow!P3odvqr?8RoV)abzGZ#0AgNJQo4bavrflCK-KcCy3~OU1?HZT%8Y1(m zk*-OZc_xPA4IQ)?^6R@cyDyf)c<7d6-Aa2g3MrGp#*G)H{PUXvj+(d+!U90si^D5# zzKIP{CAf=LHQ+4+{B~xC^(uM9$_o;%$An9{qD_SEomvaeaS6lAGER@fvT51m3KX*;U&(mUJ7G|Jj+M%;B&CAGZU9YoA#IlI4G>JB!= zU}YBeN^+y}a>Tdo!aI5mh0Gr@cs~(a*QMm9ktkR$JjmVq=5W~9@%0YZq}SxJC@otV z?=s^Qd|MoGjS=WO#+$4=x#H&jEIWHF-(HU96>Q&6F_qlIZp(gY8u$8?(hJ=bQQ$^a z+>ApokPkUiKY>shtsZ9k3-KP`3c#cu0t07WjX2wWt60M+CBy|ry^AYh*9F>9J#`{z zX~Z4)5IygRkmI}u9VQ)|&Au=Eqk|5Z*&UoRGORSs?Y((>U2H*4@X~TXQXlQnH~+DQ z1-ATx^>eD+axfU)mu6rF#MxRap8R0gS=RGMWZwTJls*X|^#eA^70B-6Imu&Q6JoaW z%{|rH$e>gE*dW(d({1g3mV;A!*)B#7Q-)5cQT&a^$OV}~MOv8(N77_Ox&8zT)M|-C zpfbF`eGtP^l0*{Et$-C^N>0hNvkECzgYj2iBwc+A%z|E4g2F3#7^q8;LNxzlWqtL3 ztV{)8(O7bGe@hNA1Qay}8rs~u+t6DTzqm{*r&@ zNz7oo*O)EjA?yD5fPV|VSm

    }AjI?9p$y$LAq6(e;M1Nx<}gq1T`+ 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ℑI{4rkAJWdjw<*O}xIS0g5Nlz0k3gU7x9>f{JCbjYTF++0 zTwUznsbuFVxz$q;}G)(c8E(3q~Z+C0tf?ZdPS9m2X^Og0b@uE&XP?bl6jK zr_9AwYs;XH+MRfGlu}514ArXp(Kmf4k6$~-*0CGzdkg|}yo`(N?tNnyt$(D1XS%D} z`Loa>gn#$c+8KDc1D>r?ys$2b*0KDj3>5)~c07+IBXn+NO@OwYzs5C8=?FQImZc{c z{qz&B0&946bHO4m!Y4G3Z!Cx6Np6$A9ei@n&zTl#lrVo`CxJ@qVztN8wn`}b2|vD& z(u1d2pd6XDWE%?Tu@$xLGoqzrDL@Tp2{z5Nb`Ude46Q8$m_MN68tZyF!$W3>H_mdz zR!(MxiC0j4RVW{uxGzm^xAqi$Z7J!Be3us}JnqKDn+9t^m9gtbh!weI#xz4`%SUvc{^=CPE z$$pU%pQvN?tO1QH8q9t6V9%9qo=?e^vTJq1m_rZvr**UoW)R1Zl~CUp+M@8Tj}>We z#)8e_V)E+O>m)mCVW@e8Vw-+Aa-F~T@=?6`i^x79x#2l21Hu&4E{$_v!Q{lpK0dlV91aRf}g z{|1pC%2f8Y`;%)U=%~2P9uR0)X2vs(plE1iXxEZak8})j2nm--_z^29O(E|?(x8G6 zZLxg&nlKHyDC-xfc2vE<$$u^Pka2u(qzeF~GJX8hx2v3vz3WyIs$nJur z9ZIz;<|hCq=k%k#Ng!?

    5#Nzf35hlhiLyc=}VvXXR>~ontiAf46D&EjDuk)q99w zTU>V?ncu`WZnZp`vM=0+U1=+*G0%FzIEnj2-yo*9-#Md zHSxpzmB(dysb)g|0=tPFEEn&#To-1R-C8d&*!@BS{qMgV3rT2Yof{`;^qsNEN!B4sT}sIai;S#MWKDK1rt?aw@N63undAW3+rXR zZr=!>p4n$immIN|5w7gnYgcl;&rbZs(8B?=Z>~na&LxVC0F2OWyy)Y$zLm9&a!fG7 zRTc-wdrVa?My3Dt_7O$>7Lv-!Xqlxl_av9Y5jpR}2TcMNvjGRZA>}9J>U$ zIG26iql=S^gnTu$j|*JHDYfkPxh$k=TC!JzW*PvDkRAu9E`Z(h7YfcDQ#{>g{3^lx zf{_iNKsn}|c31||c}NOk0Xb7S;#XU5D}!RxezF7%LfJh;BgDP5MeU|s*9=4xnZ(Sq zGF3XCc&6PNF(oH513>bK1PA9fb`sJOWy+136-m~HYABVNGS#gldR=6ai_D&LchyeX zuh2j*@ZPG*0%Butu|0J+(1hH+baKd&AAvNkr$z_@fxMGn6B-U*`h`YNqF7ewJ;|;A z`?4IJ51vx%qsyYqgm(GyK`xK|hX@8i)ZhpuC<|ml0og3yyjfEA#+Idtni}k(7w?N*Y9%V%KDj- zO50gy23086JnDkj={_VjOO(sxAtHAobG$J&v&<06LrCZ!hIu8z_5AeHSaDCQLk7cT0BpVcDjHM2)|OR?zdpJy)=;MSBeID?bXy1SeZ^u9^VrOl;4MOEp4;LB(5=6L(>01D?f9)(eqNwfT%X z39&)pTP|y27a<5UXAggW!DJb@vWKWa12dx4O;-XWS3GoPDMV>#Qls+u1m zj2@>=~W|u;VXiy~dZX|G*26l528WDpq%ao%NYA_REmxdaimRb2Jcr z`g{E)8&54135$L-Edq(hJDXvI?lA-}L9?8pAG2qu1%wa9iri0~@zRVOcB%(s(0W&(-iE^5m-G1D8>-H>dOfA*>06a-O1jICqEo4pkK*vI zN0>dUJ9Uf#3zGXPcTi(ER%7uz)%(meQTcsub^Y!Z6a+Zjd6{FY3r*81eV;O!I-D28 zHmz*4!vATav!vq%Rp!D)wZVZ;onec5d5CafdDTKH#6Z^I?fWADEtlvNcS%;>V<`Z8 zU+(ZTdD-3>WWjj5@YJBU;ytrf_M3MGE9Wu$32{VIy}tZt>9p1UtPVp@TOfub6HPpN zCbdyK$wJoBrhPzewte&p?Qm<)>JC*J=dDf%Y@y)!l|Zsj9)b=)l-%&Yt5+|o?#bQ^iyHuU3w92oA91-DS&ZkM>8y{ z?#XVhhtv=%nU&WTik9|bi+h8bpJ_}HJ$zBr6_-pWaf<~&02P0iFuzPqPnkHU%7JDquL)}g&FGfE+t zwwT>csmKtR?#1*FrOBJ*Zxt}#7q27kNBhh>@8rTfey=mLrN9=Q#*tj&c`;PIKI39? zP|XABW_rW-*IbK8Dn6^}5-|_)IU>o5)=SU%L4G%m+69e=Q+Rf04gZ#rn2qkbRu|2| z=DmKigH4n2W1Lde28Jy;vsz&jz3x)b`J2p|5m8dGfyw*j$+q-vZL0ImLe?+pDf?Md zicq;Lek#$4mj|t!v@_JJA0o~AUr`~sT#{`Y+Sm-KLJ^Ps3Wo+TE50Z0GG?ue{cudM zG#^QXi>#%tBhR&&y=n96lu6m&i07Hqe4U|D67o@SRXp5lT~MCvX%EH0_*!X%)5cEg zd<>+}pt@!NaNsp(w|Y~2ic~Y2E%|b!nxBf!&HCbTCutbnM33<+ zHog@XV;4_lEkWWhC)>;=g%%h|VCfhINSc~=^YXIAl^-7z7VSH(e@6=Wbo4SS&n0S8 zKl-UTlfJ*(t9*%?&DPJC#!b^xTFuYzvb>X~oKG=L)cHYkBNU|S{9oWL(%`omns&%Y~ zW^@o6dS5!dsg-^vE7UM3FLOfQSh|&wch*M1AyTUt0<>nC1mTtP1LKKk{QgT|eMKc! z?@FDE*y)cL^pDBQ9|moKgSTw?7bYlmVc70zrD9vVjcTKbl_}gQ)Kz`q#hwD2cP1(H zW(xE4JMgRiR~0B=a;#^0PkS3QisjJ z)qNVvl~=dEi=r=C4V0{B?x+~#l@d(vudXu>AG9bA)+f?J0Y+2E6R$a>@Kbp66&o)? zNN*+HNm_4+eeet9ca!{^u$=bIh2fXOfumbHt9ZRDXQzqWD(RJ^#nCHi$UrIO0j~57 zjVFn$ne=WkYQSK-qwZ^yeeJBFi&4+^L=C1I9v)J%t<&!EwRK>TSCxDAA(ENzV6Mc; znK^~FSgcG`Ed!PVV4~HJ@`KfX*~0h{uVO}&166st&0d=96s$qec?JG3j@eT`qk)pC zpOu^HrB>Ai)^y)KsbTFIPfa`d%O|IA?&fozMmuU2D9xaXh7k&7s@$ubKF%LD3QC2x zd3&S;P=&IfnTuEADs@&B03T&b?7x`|T zh%1I!J8BN@YFRq>E;L74Z3s~i+zGCtv`kwaJ!b#x^eG_j(96hh7fkkoUx?L`+z3KL zh9b3~9eH9V_ZLK_C6UIyeybmeogLW+au zc;r16H!%6OJ~^ffx$YlwON9kJNe9*Z1|7;W-plSGN`ia>f|`2hlYh-BAf&_=$?d%X z#-;4)FqgDi)m{9pkVhlV4)^aWU1RsxbGdN8sunhp1>fPhe>mU}X&>%+RcN9~Mc!TW z@HxvOgPyU_L+Ji!Y!4ab;fvu!PqX3|1233iny^&ZLuf;_*^C;u%hQ?k;m>(X%d2+% zO6|to8>#E4YW}q|FJ(*?^tvL2Ze3fwsLvFkF0%GxS7-6v_7ZJiNrm3JS3IIfE7{6Se7Hu>3kks&|ugck9nW z6#HT>Y>&gB9g+$jsS`TZr=JV@IVQ4o4p7@%Qb)~#GUT@*jQ>E!J@2zi7{?nPfjF@s zET)=AZAiM=j2j5ApFwSE%2nWpgc?`M#HO5m27ed4V4mbE@3y+pj~0!g>fE%_N-Ae% zzoJ~s-?SV*v1S8HEZ1{z`85Aj*Hz)&BPVq3!O*(?R=Vnx$4x)faF9}C+D5EGk@%{_ z?Qf?s!6AI|FdemDqI2KrxGtW;N)OQoXVA#G0ZG+dELAoT=B>-i{3V{JyC<@9u7)2X z9xo6tMa=oWH4A#*PbIuAm@n6KD|HF0QBYuN-_O{f*vs_^eJ56YBavs3#--0ucDkNRF!`?75;23Y_Z|x>yXd?p#;k~C6W+&Q~0%QPbSHYN-mPG53o{W_y6RL zgbeZy#c#9r7GVBb1lJkwpsqz2hmw$O9Ko`&yv02-3k!bnL|3E9T z?xDI-I-%}2hWY~mJ7d4UH}La~lTD&yo|tlDw@%S%^$;wn8+>PDW7u?7M%mor54 z?<%(ZwEU3iF*;({nEFw2f1DJ9YL+*Y4^o8KFQh4U$~R0p|9kbwWaRHhCDL0CQQg>4 ztu39~eop)TKYvTI0nt@+zc0EplTd(M{O1d;qya?94H-9IfbmHwAIKX}{f|VQ_Ysb& zLgv;2|KWe~eY(HhhOD#UeKYvR4KCe3Du805v3q0kq4EdVLzFZ}nP3QJ6VNVzd zbB1NNbV`dpwOn-n(3ZX9QjB`}y3Xo2^~gOTL+8?KBlX`JIzuJAHk*J(>mDvGcyOtt z&B_g6Ns|M;g!>PEqss3t^&>gKWc<~Y;+0Nt$lb^2LuUx`wUZ^-ufZI9bWU zsUGP4o$`I$p{nQRrd=q&QQfOE5CzF~hz?1Ga-55tb#_R1lr212P$Av)#N1t#ZN8+qc?5gzHgCDC$W??~D^0%f*g@NmU2LN%MDLMK9O?MIsJD;0=duCXpd zhA4EWu)m&fhY4iI0d4HAKE84dWNSt2#gShr70N|mfuln!O^C>PYJb6=y zJaeR_-f=4jLcS1Vdu>|ihrgX2$P|fr=PW6``@Z|Jx%!8)InXQ<)LbQu=kpdtjS1xb z)oKQ=#ii1ai+*ri1W?n^SbZILQ022&V4)s1v$!SytcvsO=3g;hb4{+QOvh!==Y6*6 z0{Sh_g-T6cW|CTBnv@(t|GCxv_?+J9O%7x8)>)u@>uDcg`E8N(2=8?97G#eAnB6Hg z-k*NAO-3zeRb{3b%>W4j3Se2z-Mf=X5?(e4it$Se$uUU2VSIFGKP&vXJl*D6z87k5 z4(TPPY_2&}(mk1rk5|41MfH&q+5T#TH>BF_*RT%O21EVfpdot|NN|!=+)Ut&lx%;r zIPSJrhzi^X0;bmvfc~l7-sr2#Q>G;nu%d3Co2)(@i%K3eZ#Dzi&I6>s05$E&${`;9 z`||q);JyDFUEA`MuWT*nAR+PqsA)T0QVYls+YeT&SnMJS!bNiCf0>TDXnW46#~KIw zSD&vEcJW83F@uTa#~>Wo??{KPXi-x+Lz59t9CG3R(z<^SZ+t zWv1#l=S6}_Z!fEt$GETN{SpSqn9_M0gTvl9vkP24*B6psw@eQrqpmI!faraV_+4O@ z5Cp|Fc8vR{E{sC~13e8QR!)QX9~=^-e0{Fh)CL;gsi}6OCYtv5 z(YK#nNLz62sB2~Wv&9qM1}8;?rnx!Arz8be`^!Ju#xN54a8_qQ8_sfp05Biw6Y(oZ zWx!nZTzDEvt>$k@`hemqYlopI;9VEn96U5Vv0PU2X!lG@4LV93Yi^^qC@;o;?IJ|s z8J)q>t0GZ#^aSB8*4bqXah6JiVqBSGk$hN>_DEPbjHH zhXn%I__RETd)mwm{6GkboB8AB@6KHd#P&xV0q6eyqOk&4&xGWR>R?e;#m~#;h6Gojb4hOW%}UZRE7thkl5zLBz1n{`na#U!pv>M@^;}i= z+0vh82(z**@t5?$x9RF_bVM4Sg#>zKqz?lGsQuRXn@A>~`bBzyKG?Ual?Nh30H_aD z;ZLl@pWg94d0xuO)z^OuNc~yN0t7ve#E8va`9ZbUGjW$1a_`O=q2?M1@)y!Vo8%cd z{g)7&U=1piXh>67_j7-d_m{U$FdoQs5SNX~?UK?ESyKD*z zR_*Ig;0?bDS-E55&5#6s96y7Qgr`4z`@B!z28(#lLdEL}USow=i2qhogTv4hmb@pm z6F>RKy*(M(c262h3Q@|B;P`M~vumXmB12_%qoL9f4jbdm@<42voBjEuA}5RsQWwZo zHJ|_y_}5S7R)U;cQ4-`u1PsKHyHPj>KgGEwITAO=4dW(Tls#W1mZ#+EeJ8l zH&0kG^<%G*ENMDpNE7Bn6T)fVU<+ONs#rAP77IhrUl0K2RwguO`;{%Tc-?m8=&#VM z90dSTT9Ugw(JG72rq;8h;f0Pajo|(JD^uo+fd=ihL4q{0@wUHj7iraKDZVr0`QA7d zybNe#z9e^JCLC5VHp6$BaaZe&aI>-?u~GB+D)duYOl;2WX{zH0ljv{*~>hS*ptA z7Vxkv0EL7MQX8-rfo#=zG?1JB7ApbkaFyyt+_x0c$`@KmKLNKB)|l^15)KZzuOQ?V zAX!;gEwhVLfEl!R$eSDCudlAHt6(Cwrj2J<7AAjRMHCGe;fc7v+|(#`!7nz10`*=S z&gDA>LYb5tDOx4ZJ&shs%g6(eUFrQ<+)#1r2|5VZ^9wRQ3@yv?R9&?7?q2(N`AF(V z>nwEYSOpcp%~mrxOVc?G}r^ zg3Apfuhk>Cqa`0wa*^RSt8Il)vRuS7f6iCBIDD``G(WUslXrAN1g%yq@#BtzCgk~ND_6L=}OZH zt;V5bR+I;+*5SKBD%4dLXz+jJv}PtGH=^#{6sF&3bns*uG|WBG4!lbi^FhInJ^F;d zS+4(A1|p4i6L9*O3=o>36yA}I#8-w9?o#OJ%YT>$#}8Ly7dPa2&PhfUAZ)L$J<8Ah z<~vq1oK1<46A#2vWKZ*`?~T?sd{Z%(n(*j~RO!(o3v@u}^a?Hw+lMc43iE-uv1+7em zKEVSs`VQ#HVHF=OXpmYbgNLq4%phH+M~}e_jQbD)03Z&XmxweHHVSF(LGItBQwfi; z+R;q899l>4r*MLw3}m%qU$PL^1~SZN-jTa}o9VOCJdflisW^kg-DP*%Pk*L%85@c} z10SgAD8;>>9Oq|@^u4QWu;9m#$AXl%9IpWIM9rEQ2?y5~0LaT1QnII%wQ=Ba7tC0n zIh;^dy$|4pstv>KtTn4SA~k!A0HM3xI&f2R?TCQ7Y^@?&&i4R6*f zkO2sb)CSoQdF%0DSyLkdLj59=!+oG;(PfioLT+zzM0?j2R58b>eGyKth}W>YHnKXY zWgF{O?2Aclrr+{8q#x?80jr93dP5(b-4a;}@AzGbwIUn-_GI(@MKHg4nA`(WSxi7> z&+Lu-t}%&Kp0q?!L2#t*X!5B;qJiQM?TZXY>%W@J6n1Nx!!~=et<15300mT#(yAM| zAe1!t2kP>9%1;a_x0~32t6M}~tdDhh8iplIV+q<_1gWQww2Upy9pr9tZvA~P0XDu( zRl7 z@E5i4)E3+PmaQe#V4T!X{#%QE$adC83I~^Z*Hyj?f>i&>0}kWgKHtraUrQUIs;w+S zu8z&ymP@!Sx6=9$_)c3{k>a=|m)n_JvW#8L>6VlW%STIddrN0qE3o$#LX{j9d z#cNbp+HXVNBjJ*MUJ za5b?K+MPyw#I1B!USEor1KsHem)=(a8g4IBM-cL(kxoGoXygY6_-E}Vj~)~%(P1p| zk&9XVh>8ND%yqY;&#|iaz!mf1!dAnDt=H{XHZ1U_-YrI}XdV=`DVQ=_lL-|*e=v(% z4oJpf3Rf6R-2ehdTV}aszunPyIJua^ZD5-;5t&Q7BQ~c4#B|Yj(uuzW+!MqE2CGy* zOh@Z7f2ozJWL)~%K^T=KrqZ2-aJ6$%1dNYC zPT!d4Tk;zvQsZ4-w+0vyZe}YlZ)1TL*Cz%$`Kvp|A}?zx$AyG*m4!d$uuN44)w0Zy zZe=|zqk&{fo&^%j7#GY)Wmt?8>T{z))RKVUo)M*dhlz2v5xl5C!HYUdvZY{!WzNem zZq$;obLU|kkE<)HH zcfAuWX5$ZlhVuDeWY9C5dA{sjW-q)+Hd~Gi^ckZ5F?J?M&;cB1kOVbo-VQ*3r1_68g0PueSa{E>b8TKy;>c-6`rbl7T3n*5Udqn3QS)6kx>uk_M}-2C3%WC3@vn|m}gV{hKSiJ>Hb{B=c3pRGAJ z1hJitKiJx!U_g0_pR=uFWozBJ>S-dMZk^0(hXiTXf zwN24%Iw%2LM2`(%L0@;j7mCpHFncrbbba?_5G6MH)Mqv~VT%5pIi`CF_@1LnsIh~# z?u}(E!{1!MvdJ=z^>XUX*`=&aVekTC$(e|(Y~4As_?8-N;xBefzyPmsNXnrW}X&jOTa82nHuOWVH zTt^guw-s_-hh=iw1<6_WS+hGlS#nrbgox~$yP8zX$F@;Ez6eOsZiR%p`v&z!u~CR| zy5o7z0)3ND`ftDm8W@|SEa9V7I1#LAIx?iu_-L1OHj%xo(0Z`efbrEZ?~3U!+j`$= zbXnW>+$amu+a6qx#%2~}#*ZW228N}JVr73XNA8eCKyay@nlDboVe8}j7))%uSdpE_ zB4&%3;xn!YvFI{Z%u#bNOe;TqVUO8IWq;ABY!4piTPN0|hDZt+MZJ9;2KgO@2hw3> z;^N0a@7@PC@AmN=EERu%Tel}8sJm}03coo=ufL?@qje!08w%H`P+pNHvKH;%HH2@Z=+l!q#(jDHmriVOG7MNSM6<~cEY9C0w zkaU=+y027#CHfu3SGMc7tDjMy(Ia(Qen?2<3L>_qRn^-RP7q>t`NHwOeuKsCx? z+R|TU>4Oyk$@Pi)V)n&?_Mz@ACPOy&2`Y&yeGm34*X&sJeFo-J^J9QAc+p7a#2o*% zuDq|kA=Lll@&3AX*Ueyii7e9#xvu8}ZvFT2m{wHzQg(ZI-N4wu8{I}=YFk#wQN%Y0 zBNp*0W`PTW_NXQgg6xYwV!RI1CJ21#T3Uhhl<9G{^s~x+812?v?Bw%Eg?ce-f{1$c zm{;(cj2dsR7+95gv1Fa)KxTzR*=boWR&Y!1S=q?|uk?B~Z$J?nks`^UAx~0t(b5`P z`5oGjv(xkuyh>49r~7wiZ~I_MH^&ngi0s?L8|tX*S_I0)hEL+eUTgSoDaG44e4?li zoh&u$P-5Np<-kEZUEb_sd-*JaVxQRn8B**v*VQV+TaX&st6lUH0bBA7GIK7iJJXh; z2+dJ{`e1`G*&ye)#W?;7La_1rh9z}7{ef}sHi$N^f1ibn%n!q%za^TH3pSN#hMHN| z?P)YjGtq_zh@* zU0x3hY7Hd_FSlj@wFl9oyArTIKsBpp*5m=fS$9pTL}ggh*S9!)V&jPVdh{CjV*!|-Xs!iI+1(_KE=nq*DEr6`{T_qA$NT`V1X zv)3(Xvb(?T=xG=sA}+v)foO_88U7Q@`BN%%O^tk2e_F`$IM0Yc2&xBOFq#a1wO zO!4}n#{u#-(fb^A>2bZ9dKrRe3kl9$ABdj*m?#G&v@`>#&-{^j%X|m-1l73n&;{qX zA-mVeAE7nojz8jW{r-^9*%!aC+3yJeB`~r618iduWBN+tNwI5!K&W( zAU5(K0dM@eo-Nx`iadJ4i0b|3>ymZ%q2|KYZ7m)A)T~O6-SsIzOb7IGWuvMzm*g`E zLJ?2sB?#1Y+qu1@Ck~Ms>_NA-kT%1Sx32-K(~-=bJUABdlo?+BjVCUz3}G@i^ry;i z_6wccf1YE@J#!6w@x#Dra_@EkcR9xcdFP)pJP>!FFq#_3*vLUjfYi;-MfbU7XrD7S zo_=R{E*q70zYdrcG4X+x2~=TRf2&OKV*p0al3^MVoh(RF(N}amz&wnDTdPJ-Q#=!H z>onMUUaTXh{xkNANN8yK7EXoTWhZE|EG1TDdL%N>LU}>C>$i2=zu|8S?ue}p zd`~JjohumwGApK-^3Tner@UU2$E!tYIk6nKV`|Ayc?;qoX>gDf;{*cJ;M++V_8^W_!wj`~cv$hIRK`b_I zMqV!ns`Kc;?AEwvHl%_OlbN~$MnjdOl9(V1Rn6CSXUTbzf-Vo#&!Gg${E-n6FQVqM zhpOu%>_hFo&#&BVLBiKXFdI?>c1IsSUvsK@oL%9*oz&Z68`{~*{-IViT2{U=Q)UKDY-sRr&-Q5q_i4W{=BsR z<;EYMCaduU-!&dh!7H`p;X^y%*}g6@Vlqx(^@o$$ch`33n_yNp^3l2_ zHd{exZ!RnGqk)cQL=TuwrtrkP9>;h2a%38f1j}OMEiS$w}fSW4cwGTQNB!iR8 zsIODpttY2c${_pWSL8Q!dSP8l7xoP%%g+8toyYNlYt#`7?z>?687$Ga+cH5u^O6pO z#z%VVMbdJhFj)b;UHp8%nj!d};0|E$n@fD1Q73e29`7?4s z#EXQ0rMEZf#UX<2#Vo+nN}bIkFiQHE{xV8LNdLtsQJ_3#lsNd+j{IZZV_`+)tgXUg znmex>6<`tTY)c`oOMIq96LU%%iXn0y3N;$ZD|7UM+6`AzylU74D}TpvAy+0 zd+po4tD7y*7$jhG6=mT?d9fO$CW{J=3WiuYqUFA8CnH^mE1mbu990J|w%R6ORDpX+ zfS$0+7SF8aU3$6u^5(!x zZ_*N~gW=JMr;ABtb`ds4*nx~q=oq$fdO(fqFlXp4KtwrDV9W19l;a+t z3F~`$3d7h+(6`1l`*8X}zO50?H;d-5!hZTZ!(dxkkMbo^eeIwSPWEf>rtb=CkE6l(H?+bT0WsBjq z{#M4<-j^7)%w8(Qk4o5*qfxHl`cIWt!FYJlWfJBatUW zA_J=pHt%;okdUXlJOH@1_|-=Js9OCFXfx2_f6-G^=OD3}-L@qe8~a^y?r zILP@>JJ9lPkM=h77Oa91*{@FZh9gtYuwECTtQL9hewx@e@q_s8z_Y>b7o`0}1^yB%`! zkz7&<1QC~=K-QA;dc(7UJ+p?A&+{$N;`io+8dFFWCA7)I;bO>C6wv znO1^+rj@{PYfT#6r9E&yN(ScbvX3){q4{DM9sSwJQJ1rcJjDW#hYtQ_UcqI;AKoQ@ zit5?wh_a>jlu@3KP7JP(T=ita>y5*ch6XlFTVM-o3i#8Vm!>kOALB>jl{IIt7c4E2 zRa@UdX8zLu_^8Ki?*Fj&=J8O!-5>DKZb>V$O{G!^Nizr|DNB-2l5JwhGKMr5%M6OB z#3V)8CLv_s_o2iPW6v;_v5sXh7~9NPp5c3czxVIHf4@JTzn;II*X#4g^fGltT+abGK_oU~g?=u4REhJ5hK+~^2xaz)2jqE$ysYe( zn(b-DSOMI{?BVuzx!%o1eUXz-)lOTvww4AF!nhtoIHv(_#9r!n#x>s-*|Hx`!!JIr zR!;2~(|hU{vuoq&ZncD4vB+|TSAN#-!N%_PCy%eJEj(s*cwSU$J2%6xQYqJ@iArgE z@}4JPY2&Wy!A&FDAJiblnbHz6bM+xPIbx$S!^K%KOW-AVfM1j8wM!?6+dySb1|dP7 zkD!pd7SZ+KcU{F)EmN8v{5lHP_9Sj(lAShbc>7IWx4w}%;0$nJN(*K<2%jtG&;UFE zT_oyhQvFXe*SNk99^F)<@|7%56dYFNm(t(uvAT&BiyH5)S^cQG6;qkwJzVzDy{jbq zz@q#*K6=k}o7P>}{dH0?z^WE^Z3#6aUC8z#OfGAP*Xd)b=hr9upSnD=JTS|;K+Ib5 z*6?GVcw)#o9+w0kR7qyH4NLL)?eY5UV<3)0i!WdvNS=Tqnk>{Go|#u>w&ik- zvjQzzb}n3(F%Kwc9(C@oy=R@ZtAzmK1h;Qr5J4o-i^n=FO&(IbanmT1raHwz!R!O& z6-Epdb6_{f@FKv4xMttO$~B?k4{r^)ixJ%7MBePFVaS=?PLzw7xFW%&by#SnCwN0F zA#LZS)4dL&pJzP>q|ndRiH_Bh21cNkMdhuS*q=G}9XUZAk~vFWxNpc}38(A>a)5&i zt+~tAGNb|CfbD@kvC9N}a&ikjLPP4*i3jv!Z$Sn^{I(7s;{5Cd=fW^PME_*P_m=9F zZ%-9NzPUvSs3kCm6y(55(zxgWG+~GX6KS1GxK8kUvg zPoMz5M}Tl6%Few1{tcz@$n$~#In!bBfSfee;X}N#>(>AM4arBAT=%*s&B}pWk9qdg z+;1~Jx|}OFRSB5f-faIouWh)VV(`1}o#qWld2#YM0C(S@>wnCb;8v`aW~Jp(z;6Ng z@R;kVsaWMox#*vx9{(|+ti#`<4QHJ>$?b(#bYZ>qgEhaTp+)*i7rr}p%!d8*TiYKB zJQi)!BC8fr#RohJjJPgu&d=o-$j+x<4}ZO5!)~PzxK`DP`K;A`VU-aqKl_gUcCn?dsPI*#6 z{j@^5!GgT@bdn{lAZ*cLrK@GbQC3OHQS?Pwa%+CIMNfJbtw)Q{qa{kXWqvLHAm++m zeia^<@`=A|PU9UJkA(osFm z{!-b?=%R&&C%q~9u&h?=ft7& zAc@Ecn7TxYCHZMfj8>9+f^-u5v52|-(X~TG-8abG#*jnSZzX1uOm=~czQTF!-;!HTu^8p>Cz`k?QkkkSovb)}r^tAWuBLW6HWz`_01yLK-9Vwrh85;?O>q(~DMQ@N6H zd2{a@raScJYE$WgstD2sd;;X}YZenWkD{GM*7O)jEXv1Fbmv8gkL2F|L3gx*n`9AZ zfnR%XuVnFM`~Dh58)f@Ag}yxtcHlZBl;mk``*t@dMvgqnn^@I$U+vXi$eRLDRc-rSv^Th;l%GhL`x>1kg65{(*u4r3e?^^ zdtDd^djB44%}=xCV}a^9Iu}#fvcHL?8Nc{c_Vdx%{Z94oeCDv@Kk{r;C~dhw%$+%V zXorJx5kwr>(3*R$NYY!q&aICd1oFArS)eb`j*BGdnTB8rlMEys7nP>$V`n5CMk_?% zg(AWaJHFmsahrWFBTg7HeOn75mx|A7s{PF4BVXl*R;TAoM7kZeq&X`$&|o}h{me!3 z5R*S=)H*i&z($N6bP)SRmbFNOCYeZm7S(<_b6UCnk&(+<-_sRz>N-YwrDR$wh+6Nk znQqFA`slBB(>yk2dBh`%{GK0U2JLiuI%u{b_$pJ|6wI5A`|#@8K(uj2!H`!RuInav z5*v_wRG9qEw#nc_IG+>9-z-@eY9AfbV^G#ByOBpESTu>K;a9kCi=4pT?0foFOik$h z`i1aWqfpOgnIhe!iN}J=M|({rfdN;5%b_q+<~MZP;y#7i;-MTdQ5dHgyzUDQ5fguc zaWwNpr?Rw73$Xo|qz1I3UcCbu%MU+nsqJm-(*L*-*3o48)*$9cZDs#NkF{0TEz_eO zj(0B@G-GGY7Awmv$+sU%xM0V1ViNs?GbY|{e2^@*v+%w<2~#fy#UB?s5q|1K{g~$x z{F+vRXp*Dkh13)hD=KW3Y-o;xoC`Y$uXk^uzMybYuHH__me&yJ)08@?(VmE8)ckiQj%h9wu>l5 z(x)X^YSu?x7pD@y?88m?=WWyH;QXZBx!{usk6(;-%<>pRgle7!=ox5NTo#k&4Y+b) zrHCs@=B^e)il1eO6O{gmA+{h6IF%uKlOgW~?>n7AAKXv26CIszKm^Uk9PB$Vms%?X$Lg$$HIE;JYiHfO=zds_|t;qbca25In32F*N~pYOD8jhMSr>2Ksr0 zrOg813)%`{&qwc^Fs{E1lpwq+AEpMfK1tKHF{;m09F+;VI9f!SoqtEKe3=?{0!)4< zT6^RtX z`aTy6R(c92^&TpQ%jZLF-gxrb-JZ4K%N984Ob|sS2U9N>jyEX5RpTwpp@8Jl2)9fi zueFM}`CINUV%HCXuXxc6LccrOxt!^>Jvdh&!(4)p4;P-b6jLNEh)L?^K(Cs;4H~sw zzYJ!kU}2waYrQPZLj|$L7s_B_;$>L8g%BADS$DEo3;bw!HIQ*}`~g~C;#tE&Aw+_} zQGp-$!Xzj>iTFq=YC#)3QDb2;Xra)5y+J7pcXaebSH9Isq)ZqV+1S@_uu%Evv3Wvh zBP;~*wtewT>=MoMz(fR7;UdLf9y_Nw_Gz&J{*DEEjFupH_e9&ghr(ek$8ZGQtHAm* z!DWVU!mVUzll7^hp6FyH6}jp8gV$G1W$O97{j(vmF5;SgiMBpM`^Ki`w^PBOkZ;=N zQ{|$X)I>Z;qAvx9S%X}Ee|MGi4x0*}-lCd0%j&4(&aPLLOp4gKGd_PrPM5t)XkQ0i z5(!=C*Q#(XFbOO&;VV`=+7zRh)6|a^4lV1c_w>H0PCj!MrvQNOHGW<6>eN}NZ8Pvh zE39BqJHXDcO%@P-7`l5Pgb(ESTuJ*()%A3_jXZIfoqEamyMe`pxUV?!vxNS;8#mvK zLi&WekWj|iXJLEcAfV*LVT89>iT9nEf+swm%jyBYLS=cdXzwn$6>0cZ8fXA z^7%1uXY{UCH`ih~4ysqXZNmA+l6uT2u=DLwk^w{SYw$C&e{z8(^-f-`C;me1N-hq( zA1yZh%)BF|OiHGf@nLM?2r+tb!gIyZlfOBsPPe)%SLS`6Vd`N}Ejk^z;Sf4{<}zgJ zYF}=vvM@*eoNGUsLC=K2o|E50$?xSz@*Tl>4w2ej);NU21b#ORe56|hey2Sf6xxjV zJOT1h)AL!Xqn%$ZP?HG3%RAXDDxXQ#A|FBn9l9Ley~jg@TC>hYXJ-N7ymr0*ow6*{ zmHKDq1^Ovq7njZDuUDZfjY&&zyhx^(lU}lA=f{!HB4Nfib5MK;K9b522Ow+tliO|O zvwiqwabm0A%Btm*+$L&7H}%E2R(aIjhGy=Q8iDYmk5yQuGD5(jJJ}PSZ#6G#tG*BR zSo~CC>|98+yz^O(YJIgLg|q3C<(8GTvqK>*Va5Ff&thw!22@wbLA_=~NwWNSJI-}H z#L*uTRlKt6vqyL7q;_nVo@FBeQK$zjNrA#uV&jI-eR0NB=++2JEB3Vm`&ORp@tD!X zyl{4$>j^Jw!y@L8Dn^S$&G64{vr+ow<+w(nc1%oI-b`aOxiPA+mSnr1Wh}bviOz?| zSo2M2&$fY=^2F)6dY*CGgH(K1l0kv48o7=0<$BNJv-*&Ofqv=Z_yW5xRo|w_jhvg} zo0FzKdC5G24Ah%K9BY%FM9TB^9xguXziE}1-sz;QH#&*Gz=(o;oko>x2Zto;B2as{RJAhVT)tV^l}bMyK@1 z5sB(6A=uI1@{tC#q=RhO7f5URL`fUzLj5`4X6cQyP6X0tiP-pE{+CJU8Z(i?CUgg> zXy3#oSgwpmPtHrEP30d{_j9{-LrB!Fjs9Yr2FSP1+!LW~=gzp?ye*nzk+U44?Cv|0 z8mAkJtt(Fkx_nBLLx>b>k;lcFbi@hI^5m9ji}HrpymTBqb=*!#jv9#}%7Xf}MSrfy zR~Me@!0PbVJLU#2pS8X8Lga0F-S4xE#1`(HqxOh*bp54Acf8}*if|0_Z`u>9@X9d8 z=SYJdI2l;HMuO> zeKH9wiOH7(x!ao7e!*^Zfa~Kv>A%WU%;Z6ck(1zGa*|`4E#D4PfG_Y3 z>-;a@*5W}4g-yf<7lMBfZMyE^PB<0Hzkf10x-u;sp20S(MG$2pAT9-#EL&WkPM2HX zw1RMCpPeWJX8x6VoArsZ=;quQeLdD0&KhfCH)gZzb*{C@$LZyddc~->R-Fxio9SIR zmmNFTCnBukKczlWa` zu|OT*ie7X3@1&ra_7KqzJ@vxry4u}Tc}Inim9B}(IO!68kcgNRAsgn*x6*mIC_jtY zR=?pMa&r28@PwSAr#$!+g6s`nNhYzcm01-y=0c~>mPL^d7msd#cdFEKaoBXfQy$in z7;FkIgy%UU!2)RUM;r3>BYARt{a6Hk&OK}?QNKXXRBAbfACsTuI9`OMzn;2JJ-^8x zMIaF!+r3HoCZl&A&ru4xDL;#t)bNTsnal!9i6Zcd;uR3%lH-_nQqFGp!YflSvE>8W z{Bj_M`Qjc##(q}G$bS3{=w|bsTFN}(>3?GI z4^o=(Gasu9^i9;w^`h#|L*K0 zHT`cwfCJLaCGX31PCMwOvWEofA@L|BDI91L)LM=DisFz@6BZJ*fhy`Y(E- zc~U$;`qzJv9|bmx++WtGtJbH?V&$v9R21aq170;29iaNj0sdo%cW+ef%AGf*H|+%} zz09tOUT&xKUgQaY1@dqF_eg@w02X^Kc6Yt;7eC4qaQp#5@cUgKuD1W6LXJG)dYbG- zGEUOCuFhe9IAyk+a;|?1gd>@=CZ78q@7a_*`Hz&gKNQ&5aOKV&=yUs^+AaPft4bOW zwO5K#*yz3ee*2~&*Ue#Etp7T23yK^}d6>RgG$P>X1^u+o?N_6HT1-~NEh}8uBKco4 zYw70x(=?gE7{U79?k zZ41IxP`ox%sAcr6H07!0*6*7~`sPY~887Ah(wRSS8+MFN|BY2@tKVWL^|=&&aK^u9 z;XD3UK5u~U%vK%*H%9K8oAFq?cF0|VvN5U-&n_MAe$p2|h#S8t!KNxaimN|MLK}v~ z|2&=3dOGj#>EDqW;5z@j+-z7DuY2oyH>w%ETUhG+Ir0wO6<1gDv$IofwogZ>dAc270T+fL?&2IjqWxA|B~?a+f8B|vpKj#o3A zfL|z_wqNt8saW>xok$`IRD2yIC2ZXNM*6~B?4Qck(GRTj=|iP^{=H4XiWYz_xU-qz zy@_b61$Y_pB2PZXj4M}SN4+oY6-wCLq-<&{Sv?&u`nZb?$P_gXaaj>mJL)M z39?$PiKOf=W=pW0CShFj{dy1zdik?Z3~sZj`lYg%_wQ7;QZNtNeKR@n^q5DDqVE8`-h+a=Fk*hdtLva*rC&Ckogh0*&bRMqGzlX+51SE(z>SY^;6tYSK`KxA-`% zfKz3-%7nO2$`8xCb=;fzEMzrEkP$KW-S~U|MK}>Mh zfTzP#oGYz(v@g2nVc+Pevq}E0n~SOboPqYzcdH8m()Ga|ZL5FWBIeUmaju)}*ufK5 zm()QUDC=Z1r1(9^^ew8LH#JeFoTyeFUTB5 z{TFn7fTHNXA+U9f?C$3aeCh>kdU^gddTXe9-P~bRWWap_^F!<9FIW8hz*FrJl;0A8 z*l3?Xf$z@%tWo1vCkaY(g~%(oW8j^qK9{6e6+LxXO=HJoe;_&RiBPt8*Ev+x~5EVzr;fWm57z2RFTAR&gvDXBp4 zw^2n4SpBDNp**+me@OBw*9&td#QV9l9a@U_aK)@9U<_wE;I2F|B~|vVe$7T)@80-Y zyc(hB_R#`rHE}&2lwCh1^ZQd(HkG35qVyX zl@sl$K7IZFF`GJ`0KU4{rm{}}Y^aXALrK?0op>M5hiDpJRYj3-!Of@R>ywfJ_fGL$u)5H%{HtvGp@MhVc>KBd@O`C${d@ zMH;A6XtrGM{5+yrzi?Y)_QMbDrXoy=7c4zXC|f$NNj8E)!>>4|pavSSF^F6DW<>h4 zqT9ZCyUD+mFsHsaq=A)VpnAiR z(ZA|{j7o4*=XjI@>TiCUg(~larJ z`Z4WaA&~3~JXB#&7o^|+}EAAm8YF~fvk@a)`H1~=<62BV!^)#ln zf5Np=W_@jsV_Io#8ArYY8mN`Jhr!UH6dUp5b(7huzZ*qf%#Br47Ij*rt!cs9bLbOK9ObSed-u7GZRp$}8sM;}rS%QhX z6HdV=_i5r;&AirD?%G4f2I}gcM5_<-VT2^(1+s*WD;vV)Qvo_%mEp7pfXphtzawki zU)(4Ev}T?Ll5ZV$z2c4Lq}6XhIM}6dWAq32PMF~AJjrGk4@_-f{MoB>okG#F_=}J? zG$ld5zg=dFyAjvDU2tdE%WCK5BDiCmqEhz(T_xBp0x?wr%4UDM^85UNybR^VC1gSIw}FN@?h5=`2@~z!?-6Cjt5yu7tv|TbpN-HutfuzxJP$pV-Q_5&(B-o+tGiM9fl70bt9oW zst)1|-w@oHYO{T`fS54&m{c4xVj9Z(?bxD20vqV@%t0;*;Ppp*6=dMIs!e>27%Zvu zHF#j$RIEa8N3VZSsD0v~AS8S{*3nFE@l>C4HQZlZeicJ2qZWo{J6kcL;`b^?9k3E8 z-83q3dMa_&$s;3(QJo?>Jw^32A@?`sWnU(g2g;J;tPiqbWZ2jCyet@Yvwp>NQ4U z^?>iH<3XjBt~SVGAu?8_uXG=N;|8N025Fy2625ra5Z^kmmO@=tsVr$laZZH=Lz%2j zVig5l+`9@RtjIU-GN?Y}{)>MVqAF6-nn<_`^;yaw*0xr4SuEDch2&iZ5(62Bb1<}) zY33a2*XtktKYNA1D9mynQL`1_CFa#H6&tCJ)MZTaQsCKD?B`U0!7_7`rP>vufZAb+ zu&?V^T}-1_EUc<#EAp9_eI?v&d+xN0O}4x#sdlA2t{y3_h-FuApdC8P3^x%dAAd&o z>dXmpY9ZrvZn%JTruS?FevTqV zf@iO)$4D=yS{W?*)PQm@#Ph8^9zWZ(RzI{_iC6{h!+GZ^uQEs>r28#_g=CN9DJR0Y zwYZkjvG3FbSJl4$%{5Z&!0MJMbrgg#_O&!6MWC}Xl^y7RI%169f~Y+n>4w*!H)2aH z_WAfb zhQ5ufUcq-Qj>den>NFE~>yc`4+R{hMW^SZHR$qR>&}4m={eG6O=xxZRFR|;4mkEp z(eFF~_jfC;bmI6$dCATjbFnCAPmYv`#uT<&k8nJCaN?(=roE*b0!QbxA&J;Xps6ae z^>bxE299J_EJvjN>`5uzu7eq?UchVrEPI(JTYauc8|$dHG!sfxgZiKAZ(K>hjG8qt z#`y&hSF!4}7oN3i8}G2-%Z1jbDY~=FAu3sBJW(oUl$*`_Nq!7DKME~L!&sw$G2Ru%8zm!#7bZ$xML|q#* z-fOPTTJsL3?6cp1C;gyjj3`3Mkx#bNiPU~dDnY^-cx^psP;1_&gXXoCZeJ2x=S_;N zlz2*nLlxlqg(T`Opt|fYOHYP4vG*Y-Yem3eh9677=%U?!ERy!)IuQufc;m`JoB;Mw z6KEj&srWG5j%Yno^*zgbiY!wVPA)r=!YHE3kcI>6;lYe-jAfSm1e&UknazTKzxuC* zfAr=@QBjM3`>Kv3dbY}(?fsaT;Vv^`_M6#6YyXXfoA~I%J?P}o+8^3mjMr}xY*Qgw z`&v*l$s~X}U$UCqNI=~`%QVQ0G|7WFL3N~bkDt%$U=+&5L z>T0pCL21SFH;5D>m+NhZ$m}|QG{-yvKrA77AF)>yH3xETyJQ> zKKwZ1pm}pPiF5Nz&((HuQIzUJ*d-y2SV8g`!@g_K!Flx9r16VzuwGZ{3tRYExm1UwGH;u$1pb0Mx>Qp1-y3V?Jf1L8qCF$M(hos+NFLO4TMkE z%A^V7e&4r>bGK=(SqBgfjV-XnU{gV!v>L`*sJcTor(^W#D&GK8L)5VxsZ|l~P}NXR zt8ZA2^Hnp%kWde($bvK@d=ibq&0=k@@^8Qfoi=;`0VaaDaeBE_TRTe_-Qd0!z|f&*{MwL zD4VBJ!VOV;y&mQ322JS z{sc^+9 zRj|0O0SvSFqA758MAVfRl^Eww)E{m+))C!JF^g1?Ya%3TSLDhKt0<^@E}q~3Mhs{3 zaC*Kf6OcJl)5hk~T8;9Vq-L|Dvqg#YYsoiu9oLuwRem8hlCIP(sAkf1rk!#OwGxi5 zI(EupQfT|3((r@bz8_Ck6jM{=IXI0!oYX>!DS4Y`r4Wajr8#ZeM%QV$tEKVys_(## zY5dO}BAvraV|-bm0OmT2bTC0Ps{SYJ#|a?ms&7Tt@S1VFei*lV#{gMy{|N3c9^p+s za@)L0r)egjvmdT_r+S#|;HSuYa+AsZCfJbfp%Xy#0E*KbJ+>>rDzrt+w8GZxXAM{*f$21(0GWJ^$wzcW?J!bSU$w z{K<76>GgbCA32PhVy6)s!kdGw6Jrem$&c^FzA;=ne+<*Ev`pXuFPR>~>}&HtsrQKa zQklaCxysp(Z*#rFPrUj<)V>g2pG0hqmSCG9yQU^U97koh<|6r7;Gb0(a$$>$uzqn7 zzR5X72N9g1EbF!Gi)Q9N=rX9G#vo?>Ed#Q~rpzZhD^9c{*MIQQVDF`$!QsoLLqw4N{mJ#N+ z1~#+3NE=n$W+^lF&sq#2%cq_beu_E7PZoXEo*iRGWlM6P3^I2x%HWxfwDAUXQzuduWnfzjTE<~VylfNzdmRLv)v&k)Mz4S>6 zsnA6GmX{O7i!NzBFh#hQCdbP$GX}~xDi=RrYJHu?M7dAn)HcLgOv>Lmmbl_uwp_+!S2 z*lzsz7Eh7M3In?wOG12`3elR>mN=hK=!?EO$R(L0Nd|QGETt7RCn8RAwucwT)HiYL z&Ra5wbU-8L)WE=v39TG{jD3$NrO14Km}7WejTmaXk$WnmmiDlfAh@Fg8n>~2##~WW z0!za&W~9R$w$wGgdd2E&MG?mmHPyYDn$UA#MA05sJyD{QNq_?1+$BEC_;LSRN!RW`u1z1nx63nbj}IiK>==X<%D1+<%%l)3Jl`HnmsG#j^Zui z!H>}s38SWMD7%5D^x9qQD{l@hoxg_B@IQY=JYW9JoeWh9F}O&ug_VCI=N8NDJZs#W zm16006(!GHZE;GYaRh%q{T%)AdfC=SM>W|8hsIv7Y^E&TkxG-+4&IQx1%A7MrNUN2yDp-j? z5TkvuJ?ALYzg3f%B!|vn{wCpE?p6&gZlh57HK$g$7PHKKO{~gKk@lbI@yawyg^7&0 z(j4!_3U#Nu&W!5u0pIU2X7gfyWiXw?E|~x!Hz~6i=S)7>Q%Ow&mBgJcD0CeGHo5cI@cP5EkU zE12y!(=!w)I#CO8GokrsGZ$e{IApm@Za2jo)tm7tu#NgPONMqBUghRu-2Et4Z;D*f zZJHgn%=-B3DA_~NB=;R%8X-eijG{iskj#X?*a&(6=--e83am)pRY@(ebg#`KK6+@O zqNKg(IB~`UIVcCi>6K=8vv0?W_GZyYEI!}mV)`^e`!-IcJI;yI){#`iIp%}9SteS2 zUsY<> zZ{DZ0h&&Z=RY|DD0QrUgOwrbSjbzL=id8-0If}ss5n9qP-Q%Pnu%m;*EfFW&>Pu0U zD%3^M>}o3;ziiRd-~NP-sF)j2UFZ;qH7D~AxeX}43kUnr2PXm!X}^r^lr2A9*!mKE zb*t7ut)kblbwd*eE|f~}b?ez}gaa3S2;l)X(*}!?Km(tcR?dc1kK2XFPhY!^k8ELE zxN#PCqlSRxo#hzBBxUv++70%aXMs~zELgi`tBwui&+$bgaJ+R#`jx8TSb-2Q;)|o^ z9n#+A3kDZLKtg53?(vOfhCj}~P0v(p$?}ZPD*KR)frq)RchDaGMp&XgRV>9Uuy1GE z=?`{PI(ekPxhWJAuK8tp56D95{$ni{= z06MXP)1BwSS+1DYgbl4=U{=cMeanup2jr*5IC2pdKv}AR4X=I9aN*;0M%~+*G>8|f z|H|ow^%@b~puPu3{ewgIGLi{A=?1ZCEp;fSSSK^Bnz&MNmCi|m61NfZQ_`v9{OO<0 zGTP4_M9!bP?EI^bkpk94)iiotRK2(5(O0G7%)J9~g(ghQpnk;3xl1vMh_4sw%@h&g zSGJTN*8kjZ2`qJkd~4DLcNj(lunHf^j^}ckrnF+s9k(|Y=}}9H`>Z+q?P#=BwUG<0 zytbcQeow-Q!M>f~|Myb7V7+|+I5WAP_T|RQa+qLxW?M7GKL^^mwh;=CYFCoU(>F$bu#BP zt^M-J8CACN{asE9f1vVk9Tmyi_KF3!IniOc=+imz=baD_ll4L{SHn-;|iJvj+jtrf`Hqy&2R+flh446A>7 zIel{BWgq=QOI9I%33i|`&u_gB7zFyFjdQes4-_g#EsoYR-|8(ARMHz#pn6X!jXjUqm!{o{g zwj>NGJBr-MqHw)>Wi$At6}q{7(sYAa zGWSWfH@8Huu<$Z0i3|A9An?;G!FboXg=jxviHxs=V0nR728TdaSekOP!J9jB`0`_D zuV}&XuV6J#Er<_?i>YaseAe|B%It5`v#l(8eu=m(!~ImNed5O#+rPbE#H>uq36i$^ z`o^>;yuzF~;9*;MAG$>+Oe$KsEpC(WMfFO4Q_Irh#n~#&`kwrY=6h;lDx1!80@wr7 z3On7D5U%X1Z-$YDExOaxN~liiDbk;Ezs#~QjMcrk^?#Zv zBT#^j@;12Dwg9!oU+lRKM>AtMN0xMF`_7scA?y4V)9Kq0T88ZaPe4wt1lNdl0ZT2%-BG*^U^-9Pf(#n<%> znQ~fe!21Sj>BCOfWb%k$k!$5@1hq$@Rp6G{cI8D@Swm6#`Ttu<^B*TZr%QWpg1q$@ z-~W8fK9C@#VV2*-Ns5L{vL`0lN75Z`mpNkOs-{+k2s?uI%KXP3XKmZ#dWc+M>*X*b z3HaS2y10+~N2@^EoZscjV0R(WfwRhXRjJ`}t=J#jUqE=YKIe2}IH}5$(=+L`e5mRmWN5dRM!N>oHxWJ%)(HQ?=x>2RqVQ%||gw1}m*6fJv zf55#oPX3PCQnMr;&@GO!R9U}vxi2@YIGg_8fYJGt3V_WG+_k5w`CQ*(&;ROXb$-SD z_;~(FhyR5%FI59fy(~<-<~gZo!PRZmCTPxI(lHTlb#6bJM#laCu z@!ml}C)j;S-?a#Bb~)KB(r@=}@gCPc3$gqD`)^LEFU?C1pYf-yQpoEiq^dGzPR>BF z_c)x=Rk;ZIw_vvY{>OPTB6f>at{5WHi&-7OIXS{_JGpqe)QF}p!MK-2@n{9hF)MCD=ZT|G%RFBDP5V?3-NOkt=%%_9~Hm!Hk{(XA~GT%Qh+^J+6~|ADJk2r8Tb7*d|jRq{6Z@ zcT%=`A=0&I*vTn}moev8+DonBL@kuB=d#ZUIhuxOOPh2)6=i3VSPr8~y}-`4!y5do zJgi?3Moh9O#*&;2j4&&76iH70=r$AWdDAHuyK+I^xw9}vqTQxQ6>ZzrYU*}26CK6B z+~X-`kD&-;NQhEaJF*QIPl3wsz-ErtQx#rb@V+#gPc^bhhc#eMtewLu*vS#hRL;$w zN;*f;JmTs6rr@f>L~+-%%5NV{Jy?`h+j)#SGG$KIE%~3s9#d{!`eS|V@>@_j?{2@!IFl4MTOjNa$Dn+W|Bs>u49-J+WpeljJg3w zf}Y7=hF8&BgRY2SbfZ8qUm<+6?0UBIK}(!QSfQ>@^(QHUX)AxyMv@gAfmG@067zrU>jR-NuRMEfI62m;4qc?0*Js0_rhQQaJ z&7Yqo`?XvKOY~+l4|R>3sc7d9s~YpIgy{HB!#Q_LMHx$ChgHX!3#MoJ6{55Yjw*QE_^X>KseJj)cOh#dA|I(wHFZ%H4^L6)dh#oCcB^< zh4%U@-m4Jof~j(f@HRg|XTOKP!sDJRxGcxu)4gCzCD zoK!E)J>K$!L1;?cOs#6!H%6@ldWaUW5!A)#aggJ5WDk|)sh@0p^vM23{Zom(MIsC6 zkl7xCg?`!b@wNBr63Wp_6G#J}bL3B|;aKHN-D@|g_8sfN^2UbGYCKBYU!wpn*0 z8miY>c{rw5M0rwFG=gl{sh9kXMibJ?xAzk>W_|i;k(u{hw(y44fp8dBxl2ARoeL&2 zDQ2f4PJ5QAGQ7(q@8}wrK4LFuCK4QKba3h8)s833tJOE1GKC8{-9--2AR~z>^X^Y~ zlb6g^z;?TgkA^_>A0~?;pIPjyEBYk*lUzm=hvqvZbd>3^^1k{lek&CXJ=NEwFtGn6 zQihna>ah@0d<-~A(rq8E+=~=zRGEfy*@#b?s%~xe!_!VrvCGt7ls(g*PL*%Nny%0Id7E$yN^YifAjG*x`2!rN(5K81~*HIig^JdwYp^76r0|I&RIuljD6?>P2jx+2sTb`5$Q z#v-GQ6uT8am4CKyV5Ae%3-}k`S1pPig8P~MaQ$7jWCpwIoz1E|^1HUIi`lsRf~kX< zkyiGhl!jek3R=G_VVAh0W%*dS*iElyWIis!J1MMaOwX@a+t#W(<zHbT{NQfg7v zP;%4;r@P{qT&CwcSfZ2n44t&@`g1l%+O3R{Qtaa?}jkMb3h{s~| z_d8Kfog!N!^7uCn!Y}0)2=q-7{0@Yd z*d$jc6E8Skh3el8S~9ugf@R1|ea=J6YyS=@O9E%{OL+J@nUCdxN3SUxgf1u_j@mm5 z@}?Ta`hG-y`rTFLoLuI5==PRGB9?qs=7{@%8S-tE-U~>#6L?PY|EcKQHD{$*s&`E28^*SnC1a{#oNy=I zJxny@lt8p!U?-1(;&r7Irzh*)L50}L+li!dejViD$5C(FNC&PjTA!8t z<7{!YOXLxbG5C&HDi(6Z0jAnxF>AVYb3m?_N7~FoESp56!4fYFcKkB28VrZwr3uBs zu+w{l$OFa%`r~=>n^32;3CmEEY#T_EgL}-vw>48P;J#}9i&4&Kt-e;}icJNYsrits zw%k0$TX^ONdH>z}(2s+qy@Wu_#QYNBaP!+hh7*csjT@%0?SSe1tL5V*vHVtc}F*t{gc++fA3 z?An@1QnccPm0u(`m-^0f^Wqg-AWA#Qk91_c70YT^3UpdKk^kEkmdpmq1x|mXEg8ebX=gVYAOx+Cl7g8_K!K zrk!eyO_}g7PlrZx1q2t-IStM11n5+9>~0UU+#R-^$c&!@5M+5uf>5nL9JeR%sQWQ! z_N-!ibf*f{L~L&lMTr3lLu*>eBwhrSlY~ zyN37yREx_X4~0GMWZ>Q$I74`%IG}kl`ZXQ(E!!hMSjOx~f8H%sj5hLdrA}N-Zc{DT8VQko(!Bc5L+tB2;9!n9+B*?H+)NsX}V-haj^cPlZ1hK+iHs) z0u)+`r>pcBYbiSXN(jgozF_NG9_43lUV)JEHw>QRArnMSfaxj^7|*j)_bG-aIe3Z~ zxD)lZvV3nxya8m=p~dlkIQ3&R?ThO8q>SF3I673@kf?l#7-P3Ilgu*=nohrR{gWu@ zKcc~7#Ljx!_p}O0Xj+SJT>)y872CR(^?XEp>k;%@tB*$`_LTwwasr?u4$`#qigeKG z`Lsr+$Vi+SV=khVJkX0q@fm7KKE`uvIe)*-6J7s7pd4Udbeyy70bZvGkMrI~rY={0 zj0+YAT(IM!evwFfQP+Fk_;f}&5&g8^Rmv|EW-_(7J%E{}o=L{y=@I%jpyH~|+rJ_! z*Z()nXEONEwvvAhmrit_1ykDG*V-EOLa+bVe5(EG>nhcsy5m7TGD5*Z+K-|XodES`A?YRz)V>ZPyK{@mYhYl-ji_%P(HITmE^x;k@ zYAXn(Y9P_rnE5XT@cmG!bZO&S=%Zep35U5{;N(__bne@rzH#?iTH@ zXNGGr*$~PVDbA%$UZMub4MfRJLja44!X;2+u5zzOeDHayayD9Y6H)5tWUytV=1{~> zv1gp+E8ak!+cR-Vt2oCh>|P%duB!Gc5ekuEM1&0}?z!36->bn}#^4UnvLCs0w05Z< z5ajzc25dMjRm<8?_Fii9yRI(2H(2gn5HDJg;Eftp6$%Rw_o@cb^k^GdNueozX!Csh zl+~Rmu;T_{8n9HFck=+{vtm}{NyGnn276Ekyyg#vR+!H|{aQDP8?tl#KndI*%{lqE zjasKzXu>q{`DgE=68C}SFHc@qO`%^^d@eaScjyAC^vkS98=4+&C)JZGDKx@0#Gi;Y8l6kMmy z*YrU%@)qQSq_>L$BC=`GDVPkxC~iN@Y%yo&5$^yfuYmH%Wm!q*L7;+diMc3V9>9yEjEMz&o6=A?JdQr@Xh zmO#2IUWx5t3XXoFN>ts1$|%Ai^UKucP_Np}4;KK}^N4O`-u5L33%qciu?^F~U{rQ?334;A(TXrO!56MU$Py_htDu77OT*!4RU z^Eb9lSqMHkEmqvxSyr#PTJ|>8k%eOfq*akTsB1op4HJ=D@qpDK9oV1Lv4g^};Nn_* z>>wn97@jtJ5`pR2KQN%f01sK;1zjc_>X^tuvBr+V?qHUR5cJbh<`&vMn0m`qCUyKe z)q_w*zw`3Pi~PHZK~n6ADkV7-+jxf#BNa*CmKGeOe_$cNxH&85u@hH~&7yg@iv4@h za`kgI!7yt=q}rCw#N`1uV#+kni5+Bsm?=7paI!YKCcO+* zwaB|Ab0b_68lw*V%SOg30IxPDCox%;wKQQ{+LPM|{1~4`dC7m%ymj_o1!?SWP;J&V zp?4Z*w0{+@3iq%8hZ8w*7WREnS1C8U&!1$lqT>Jc=!2ZLUer;~-n*d4rccAK`~Fw6 zGOjGBNBo3jJg_b7vY;LqL&85z#Nc~D7#d+&>p5)@Kx$snjMMQa_CH3@6;!zZymN-B z_wE0k%Ryi2VN%Nd$OxlO&))N8a48*R4U)dT&do}tKYknHI4`fgS?WibAa2U8F?SwY zM{!RAW7p>#ZbVl3tup)3BF}QJG$I#>T6qy=e2sllH5ZRW+Q9PK%^$pS8~<_EV3Apb z3wMISM37QU!S+G!Jj#yC#sK|B9M1PbQDo1!-I7|yP2QP>D6mWZvxtD%>D>ct7j>?- zmEOe{v?GW*21Hj(u>JJ@8SC3sXD4n%+F;RqPNyy)n^ac|c;<9VzRrn$E(Lda_Qdgm z;pXq(>#*gP6SW1Rd*4%+)G(?R!=!?zwsBjA1IUnfwmgPcTyv=#tv*!Fr(+md6_WJv zr5WvsUHmYFHfX*xAehl?x6o?0x{-4KmAZu&1gtryX?6@mI z;yQu(mz{+%@|e18@ekK zn4iXcG#N(;en9KDt-&o7qc_t9&rRbHXJX!$;f~e&Eq1~~>5~Oklz76M0|VC+eGMmr z#{X16Z1q_XRdUV9-F^aJ7r{*Nys?eD_MVCk`0LC`=hrn$s0;viN(^1&%#Bp^JIk<} z$|Wl$v?qZH8M{ZH0=KGt?6oKL7uo|U-s&CR^i@Lg(=Up&Ij!5ti9?5eJm@DyQNPlD zKV`l7TP5w?ZV?ed3cC$7xgt#i<<8Bd3_p{SwW^T*`*||*>-B`N&Hd?N|)f%TDVf)t_|)_WJjt&D6w-8}h?L zFGggMysa5C&ehDrRBAucgTH%K^OvQlP_=A)Z^)s`J00H$GhV~Xwt>bAGd8k|zc!n1 zRx4WiGe&}#e^>RdP8B#)b1=@55P8{715e%c-%)i~`QG z3)xCLShqumAA=yfF^M$$5wi6R*K7FW4*hpoRdbzacEIx=;~41 zCOA@yQ|Aq|NYb^HS$ubPutRijQ^>GJJ%<)D^XyeEf`9U zj!cWgZH9&NN-`O z`hRo8B=>Rf*5AvUYk9WIhxd=|vXKh0kaA}yC!ZnP#`NW>U1ba6aL;)kc?+##a=M|orCFMR9E8aIcwj2!T~I!}O)oMVBC?|ay%~Cn&d4db+b{m~{mGz))roHj zojNDg@|Y;%kj2IaZrx<87N)f6?nd}%>26oegAU=h-1{=!v8~{;%iIS%CEM44t07gE ze*Zh?=e^c88XLCGbw#bLNzN*-Rb3Vz6;)o-hCBq}r#7CNP=p}KlG2`wmWI83Q%9g# zeDHM~(>LYin3Vj3(k~BgdZ#0~h*#4cn%X1XHz#TBJ@MV?rEL2XtwO1ILHjr6A+~ma z0fgL5CWW%4Hi$!Bjk?Rw>4oYX!yT`{#OYg;pc-{ytQyP1OS<6!j8vjpaRFzqAV#CG zT}7W$;-n7L;RkI$F0Alby!+!@DDpEu7*cBmzWbzTBx`fV-O`@*Dx?d%YUeZUkr}gw zd~~2IPIflT_s`;e!GPf4^tnkht571Cx}W^W{P6e0CKiDV@kYhpr^@c#H^bd^eOUV zgBNZ7R@YtU)D@s9p47gLM1aKG_AuSM@dS*;c(g=)vT2o?mmKhckt zH^B*(*ZG!B1n(dEzv&9j>aW*Q=uyHy(!Ad{OW^jB`3be-f~#dXi|H>z-@gT7P7i?Z zPoz)k3yNe4GH?Z%HwGC4ld+MhHCTu}*M~CNyttk$jYT)n$I$$B+E1B9>g?5*GqsgJ zOG#POJDV0c5~v3?+UOnqt*uu|6@F7q#ah;g*17>RKDSN?d12RVShDuQ;S~@#8$}p% z4=i-+v09>3{nm?yZW9xhJ(#%jPMX23V{WPpjSpj^$Bx2QSy!G{JqCTL4Ap$S^*P-x zE%On13oel6PRK~Y^LLq*GSEcm8sGBA1KDJaJu3Jooc~x?<#u?(*O+g7566E%xbQpj zLIo~#>CBF?XK=okE|X+a6Q2FCM13z!3GyjtvOVd+7+>@{A-1E$AZLT zJ9fZ^{NX{wS2edjNmbjLpl&IU(q__LXzJ9z2KsOBp$sV7%OvYJtkhB%ie` zXxis6h`m%Kd-S!QhI%-0dYsNA8H(JjmCAM>RjyTnSEJM+Egv^iu066h+6q_5ivl+v zB)T~zIIG!fT1k-(0lBhmbrUuwBAI{D3#=+d-4uHI;~UN4_hny;1{tpfQ+MxxeeZ+# zvQC`H3QgN>W-Ze>;{dvsg7Ky#g=n6Wavg8U)7x;!HXxZlktw&XxjWzt=PkhA z!QjGr8t3=t+DdG&^x7x3|PDs6nTzoH2Y&?Z)T^L z8h&46b1$Z#x-A`A_$WfUf%@~_CVVB**IlezS74`Snyv_dwU=DA8GT>Ls+NK8%^Jd8 z5Dcw1{S6Si;PGefQ*kI|9NX7ep4@Oou|)7 zmkA%$eF(aM_2@cbAM=G?^wga_VIZkn0B)IdxnWVpV}blYhlpia;t4C;T8z;$?KndB zb-&TGkl%7WC{+xf3;SWu`+dLWddg>lC!Ts&PG$mwSx{SS*cuV z?HB+^M*t`UDj!ekm%FfyFuq5mA^kpTh?RDM)CPP$jV)cZ&=V5AJjM}qt?(~(giITwf-VGrYh(x#&W!nPtrcKX5b7=g0p7@+M#C7x5QQlFdg5?7@q zbzIE(E>)ou3u;lYe_n0bs3c603i6Hf{jY?m%L@A_71mm2_yS}B+I5?iT5j&R^Mom7 z^u2_(amymc&DyUvL{AOUYA8~fTnY}pM6c8sGwd+XY9D&X8O|kYe2n>3ycCnC`dXKs zVuS=>5UdG2t)AY8jU7*jtz`~gZoSz(Nj>yL5!o(q1}tK3G=F%jfEEod{AF`e3JI+) zgl5!#h+x(1NX@tLCYEL9(C2pNKVsPS;DMh3FruF4%+*csw zHCg(Xt&T3AxZl#ogG-NjU2sCh4ok^om-vvx8ZFWdDI0g1q+|4b!vA~yEb*i`>h%-^ zw0GsU^PA1nrt_HP!jq|dkCu^CY)EbFq`EIR=C!+KHt_!1jrVTP-o@_SiPFN2Jk`g1 z#5V6t)aRDfHKHJFT4!tm5+6AQ)7 z_8Dl0eTfR zLcyUP)5#*<;Jy-ieL-i{*fCpd@|Ywfv?>SCNY%GiI>=VGf!PS}T&NwZD3u=^hKmYY z`W1|GIe6lb&!VP%hKY=j? zb8;1udjXj$POekB>e%A`KI_X(#aqv!55pqiPt!*Ma>TGIN+zV z-EX*$-}2nIYzIL(i1zCkhxZg$vDejzK0GX-3q+WD@0g5J{Rrsq|Kp+yqNeSx@EGOV zi}rJUrMKf_8Hf5$FBe|r!$9>e*lCK&)MuO0%VI0}Y*2kKK+j&|2_@l&AnXmQ6&tvP z3nH4SD>={tUbiT#HmFY_ed~L_2XIodHh7o|xXAP~I!TjeDrjb#3qK%=F(_RmYkA<1fS=Nb}J7axROxM`W6 zC9U!tt^(MWnQuY7?lBz;in`u-Eq< zLaYRXHu~+Sl^$eYqg@648aiQ`8LZkcUwvwB-e*QtA) zI@0a6Xv2P)1Zo8jJyNM(0^zYw6$(H;M#85x{Y^a?o`bYNwGkXJZV1%jjgD>p*$Ldz z_4{JQLs}I?H%^6akyN3lAvsHI#G9AmKil@BJ{42Ww=QMG!%{dv!QB)mjG#$+Dl<&F zCW#UiST=_j$9|2PDY6r_)4G`h6y@$RoJ9ZWB}fb2j*{gF>+moJM4L;!p66j+WI_1B z7UU83i|9EL<|MT=5Ul2%{6@j2z?fvXTiM!E6KPr>QPHC;LQZS-6#v|midAC8V+wN@fsHy1e6p0KZJ3inJHNghqd%;SDqi$0kW{cgz|Ny8;> zlAINZs%lk(+;h*hFyL{>r}+?O&5jlNu7*>gY)d)rYOtGa0;p)-l87l#`w}d*(Jv0E zC6f2is-lUe6)Vd|RYqeicOA}!1;QX{-l$Ij`CH2S9gp!{iVzj@_P6mE;w9;>02lW?7BwhStmmsTN9>Y`*PjSrLpFXHyhH864>P zpy(BI>_*ra?hk)6cFpBM4o7M?nY^wVDmXE%+oOf=Dw32_6Y_0D;R=-cRCw`nGWFB$ ak6p;{+Y|r&s5>A%Jl%X` argument +- resolve the argument only through + `UHyperTwistFirstRunLaunchLibrary::BuildFirstRunLaunchRoutes()` +- reject empty, duplicate, unknown, overlong, case-drifted, or character- + injected route identifiers +- invoke the same `OpenFirstRunRoute()` authority used by visible UI buttons +- make package launchers use the public outer bootstrap and registered route + ids instead of treating raw map arguments as product authority +- cover absent, valid, and invalid parser states in focused automation + +### 7. Stock Shipping did not guarantee an Unreal log + +The final package uses an ordinary Unreal Shipping target. It does not enable +the incompatible `bUseLoggingInShipping` target posture, and an engine +`-log`/`-abslog` file is therefore optional rather than release authority. + +Repair: + +- add `HyperTwistRuntimeDiagnostics`, a first-party, Shipping-compatible, + append-only diagnostics surface independent of `UE_LOG` +- accept an explicit `-HyperTwistDiagnosticsLog=` for immutable + validation runs +- otherwise write `HyperTwistRuntime-latest.log` beneath the user Saved/Logs + directory +- require runtime initialization, semantic map/presentation markers, fatal + scans across every available log, package-owned process command lines, and + no unexpected listener/trace-control endpoint +- retain `HyperTwistFirstRunLaunch-latest.log` as the separate bounded + first-run/menu/route result authority + +### 8. Desktop pixels alone were not semantic proof + +`CopyFromScreen()` can capture the surrounding desktop when a window is hidden, +occluded, moved by DPI scaling, or unavailable in a disconnected session. A +bright screenshot is not sufficient evidence that HyperTwist rendered the +expected product surface. + +Repair: + +- have first-run, Classic, and higher-dimensional runtime owners request a + named ready-frame capture only after their semantic readiness invariant is + true +- require a fresh named PNG created after the launch timestamp for release + visual gates +- record both the copied evidence SHA-256 and the original semantic-frame + SHA-256 +- keep client-window screenshots without a semantic capture as operator + corroboration only +- do not convert a disconnected/locked Windows desktop failure into a green + visual result + +## Validation state + +### Source and editor gates green + +- UE 5.7 editor and game targets: `Result: Succeeded` +- final Shipping editor rebuild after the route and direct-diagnostics repair: + `Result: Succeeded`, 10 actions, UnrealBuildTool total `90.11 s` +- focused Classic automation: `16/16` green +- final focused first-run automation: `5/5` green, including + `PackagedStartupRouteArgumentContract` +- focused HTTP configuration automation: `1/1` green +- Sentrux source-only architecture check: all `7` rules pass +- GitNexus bounded source-only index: current and up to date +- Python map-authoring compile: green +- all current PowerShell package/launch/visual helpers parse successfully + +### Historical superseded package archive + +Build/archive root: + +`C:\HyperTwist_worktrees\phase10validate_packaged_alpha_final_20260719` + +Automated package facts: + +- configuration: `Development` +- cooked map count: `4` +- packaged executable SHA-256: + `ccbc74bb6bcc8b7340d74ca15109c8159a83250f1413ea01f7f61a0c091f2c45` +- package file count before final delivery metadata: `127` +- package bytes before final delivery metadata: `1577648281` +- all four initial process-survival map launches completed without fatal log + signatures +- desktop bootstrap launch completed with a current runtime log and bounded + NullRHI startup recovery + +The initial four-map report was not final semantic authority because its old +10-second interval ended before world load. It is retained only as failure +lineage and is superseded by the Release 17 Shipping evidence below. + +### Current Release 17 Shipping package + +Build/archive root: + +`C:\HyperTwist_worktrees\phase10validate_packaged_alpha_release17_20260723` + +Durable pulled evidence: + +`docs/generated/alpha_test_20260723` + +Final package facts: + +- configuration: `Shipping` +- outer executable SHA-256: + `886f69c6a823770b3ed68db4fe3790a488124c99c98dbd41944a6bed5d634dc6` +- bootstrap resource: + `UnrealHyperTwist -notraceserver -traceautostart=0` +- exact solver table: `676207080` bytes, SHA-256 + `dc6de3d909a37afe2ba7f1f978543a13eae215bd20d954d66813524a8ca20034` +- Classic semantic smoke: exact map, `26` renderable pieces, settled valid, + no queued turns +- Follow-Along semantic smoke: accepted registered startup route, exact map, + `26` renderable pieces, settled valid, no queued turns +- Magic120Cell semantic smoke: accepted registered startup route, exact map, + `120` canonical renderable elements, `6` distinct layer materials +- MagicCube5D semantic smoke: accepted registered startup route, exact map, + `242` canonical renderable elements, `6` distinct layer materials +- all four smokes recorded runtime initialization and semantic `MapReady` + evidence with no fatal signature, trace listener, or package-owned listening + endpoint + +The first Release 17 aggregate status retained a historical false failure +because the old desktop validator still required an absent Shipping Unreal log. +The corrected v2 launch report is the current authority: direct runtime +diagnostics initialized, first-run diagnostics were fresh, package-owned +processes were live, and no fatal or trace-control evidence was present. + +Interactive proof: + +- the exact final Downloads executable rendered an `UnrealWindow` and produced + a fresh semantic first-run frame with result `launch-menu-renderable`, + screenshot SHA-256 + `6f5e3443d7b9188d6d3642c0a41f703e5a3beed7cee348982f7915621e786919` +- a real `WindowMessage` click on the visible Classic button produced + `map-route-opened`, the exact Classic map, `26` renderable pieces, `29` + completed quarter turns, `0` queued turns, and a fresh semantic frame with + screenshot SHA-256 + `6e6b8f2c06f6ff8a68c2f4d9e0a576305056cd6f4d7353e9894a05e63d853ab5` +- a later dashboard visual retry correctly failed when no live interactive + desktop was available; no screenshot from that attempt is release evidence +- the same final executable then passed a first-party NullRHI dashboard-route + probe: runtime initialized, `coach-dashboard` was accepted, and the route + opened through first-run product authority + +### Required final evidence + +The following remain the acceptance ledger: + +- [x] corrected v2 map-smoke reports prove all four target maps actually loaded +- [x] Classic and Follow-Along diagnostics confirm 26 renderable cubies +- [x] final first-run automation proves route delegates and strict packaged + startup-route parsing +- [x] interactive first-run screenshot and `launch-menu-renderable` +- [ ] fresh interactive coach-dashboard screenshot after an operator connects + or unlocks the Windows desktop; the route itself is green under direct + Shipping diagnostics and this visual-only item must not block use of the + delivered Alpha +- [x] interactive Classic route screenshot and `map-route-opened` +- [x] interactive Classic diagnostics have 26 cubies and no old presentation + warnings +- [x] complete folder copied to the Windows Downloads directory +- [x] ZIP created with `System.IO.Compression.ZipFile` +- [x] ZIP reopened, entries enumerated, and seven critical payloads stream- + hashed from the archive +- [x] final folder/ZIP SHA-256, sizes, and counts recorded + +## Operator diagnostics + +The delivered Alpha uses stock Shipping configuration and first-party direct +diagnostics. After launch, inspect: + +- `%LOCALAPPDATA%\UnrealHyperTwist\Saved\Logs\HyperTwistRuntime-latest.log` - + Shipping-compatible runtime initialization, map, presentation, and route + events +- `%LOCALAPPDATA%\UnrealHyperTwist\Saved\Logs\HyperTwistFirstRunLaunch-latest.log` + - bounded first-run menu, fallback, and route result + +An `UnrealHyperTwist.log` may be absent in stock Shipping and is not required +when direct diagnostics are present. + +The package-validation helpers also write immutable-per-run evidence beneath +the archive's `validation` directory. + +Do not diagnose a black screen by checking only that `UnrealHyperTwist.exe` is +running. Check the window class, current screenshots, startup result, target +map-load line, game-mode presentation marker, and fatal-signature scan. + +## Distribution rule + +Never distribute a loose `UnrealHyperTwist.exe`. The executable depends on the +complete staged `Windows` directory, including engine binaries, project +content containers, and runtime DLLs such as `tbbmalloc.dll`. + +The approved Alpha distribution shape is: + +- an extracted folder for direct operator testing +- a separately verified ZIP of that complete folder +- matching release metadata with SHA-256, byte count, file/entry count, and + validation references + +Approved current delivery: + +- folder: + `C:\Users\Anthracite Ace\Downloads\HyperTwist-Alpha-Test-20260723` +- folder facts: `103` files, `1887943160` bytes +- ZIP: + `C:\Users\Anthracite Ace\Downloads\HyperTwist-Alpha-Test-20260723.zip` +- ZIP facts: `103` entries, `1082134734` bytes, SHA-256 + `1ad8e1c0fc967b227ca09fb68c515ed644eca3e4bda07fdf8c378b438000fc42` + +The superseded July 9 folder and matching ZIP were deleted only after the +replacement folder, archive, critical-entry hashes, and final Downloads launch +were verified. The retirement report is retained at +`docs/generated/alpha_test_20260723/superseded_july9_retirement_report.json`. diff --git a/docs/ops/HYPERTWIST_COMPREHENSIVE_RECONSTRUCTION_ROADMAP_2026-06-10.md b/docs/ops/HYPERTWIST_COMPREHENSIVE_RECONSTRUCTION_ROADMAP_2026-06-10.md index c2c1baf..f4261c9 100644 --- a/docs/ops/HYPERTWIST_COMPREHENSIVE_RECONSTRUCTION_ROADMAP_2026-06-10.md +++ b/docs/ops/HYPERTWIST_COMPREHENSIVE_RECONSTRUCTION_ROADMAP_2026-06-10.md @@ -509,6 +509,40 @@ Routing correction: - [x] Hardening slice on `2026-06-18`: replay normalization now repairs missing replay/session ids, duplicate event ids, out-of-order sequences, and monotonic timestamp drift before persisted packets are reused; leaderboard normalization now repairs schema-light entries before best-time/status resolution; and the maintained package helper now fails fast on missing smoke JSON, unparseable smoke JSON, non-`passed` smoke results, or unexpected `mapUrl` drift. - [x] Validation evidence on `2026-06-18`: the same primary reverse-SSH `localhost:22022` lane rebuilt isolated worktree `C:\HyperTwist_worktrees\phase10validate` after the Phase 10B truthfulness correction and solver-wrapper distribution hardening, then refreshed `20` relevant tests with `0` failures in `134.97 s`, including green `HyperTwist.Simulation.ClassicCube.Behavior.*`, `HyperTwist.Solver.*`, `HyperTwist.Training.Timer.Accuracy`, `HyperTwist.Speech.Transcription.ClassicCubeMoveParsing`, and all `11` `HyperTwist.Integration.ClassicCube.*` cases. `RandomClassicStates` now records runtime facelet export, exact inverse-scramble verification, and runtime round-trip solve instead of pretending the native solver lane is a bounded 100-state benchmark; `Timer.Accuracy` remained green with environment-only unresolved `vision`/`speech` hostname warnings in the unattended lane. - [x] Package evidence on `2026-06-18`: the same primary reverse-SSH `localhost:22022` lane then re-ran the maintained helper on isolated worktree `C:\HyperTwist_worktrees\phase10validate` with explicit runtime-only cooker exclusions `-DisablePlugins=MovieRenderPipeline` and `-SkipCookingEditorContent`, clearing the editor-only `MovieRenderPipeline` blueprint contamination that had blocked the first repair attempt. `BuildCookRun` completed with `ExitCode=0`, `BuildCookRun time: 1381.37 s`, archive output in `C:\HyperTwist_worktrees\phase10validate_packaged_phase10b10c_repair4`, aggregate validation JSON at `validation\classic-cube-package-validation-report.json` with `result: passed`, per-map smoke JSON under `validation\smoke\`, and successful packaged smoke boots on both `/Game/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining` and `/Game/HyperTwistTraining/Maps/L_HyperTwist_FollowAlongTraining`. +- [x] Shipping Alpha repair evidence on `2026-07-23`: the maintained + `localhost:22023` reverse-SSH lane rebuilt the current first-party source in + `C:\HyperTwist_worktrees\phase10validate`, passed all `5` + `HyperTwist.FirstRun` tests, and produced Release 17 at + `C:\HyperTwist_worktrees\phase10validate_packaged_alpha_release17_20260723`. + The package now resolves nondefault startup through strict registered + `-HyperTwistStartupRoute` ids instead of ineffective raw map arguments, + writes first-party direct diagnostics in stock Shipping, and carries + compile-time-disabled trace control plus verified outer-bootstrap + `-notraceserver -traceautostart=0` arguments. +- [x] Release 17 package semantics on `2026-07-23`: all four fresh smokes + passed with exact `MapReady` evidence; Classic and Follow-Along each exposed + `26` renderable cubies and settled valid state, Magic120Cell exposed exactly + `120` canonical elements with `6` layer materials, and MagicCube5D exposed + exactly `242` canonical elements with `6` layer materials. No package-owned + listener, trace-control endpoint, or fatal signature was observed. +- [x] Release 17 visual/distribution proof on `2026-07-23`: the exact final + Downloads executable rendered a fresh semantic first-run frame with + `launch-menu-renderable`; a real client-window message on the visible + Classic button produced `map-route-opened`, the exact Classic map, 26 + renderable cubies, orbit camera, HUD, and settled valid state. The delivered + folder at + `C:\Users\Anthracite Ace\Downloads\HyperTwist-Alpha-Test-20260723` contains + `103` files and the verified sibling ZIP contains `103` entries, + `1082134734` bytes, SHA-256 + `1ad8e1c0fc967b227ca09fb68c515ed644eca3e4bda07fdf8c378b438000fc42`. + The ZIP was reopened and all seven critical payloads were independently + stream-hashed. Durable proof lives under + `docs/generated/alpha_test_20260723`. +- [ ] Operator-connected dashboard visual follow-up: the final Shipping + executable already accepts and opens the registered `coach-dashboard` route + under direct NullRHI diagnostics, but a fresh dashboard screenshot must wait + for an unlocked/live Windows desktop. Disconnected-session exit or + desktop-copy output must remain a rejected visual rather than a false green. **Estimated actions:** 20–30 **Estimated time:** 1–2 days @@ -553,6 +587,14 @@ Routing correction: ## Immediate Next Step +**Current Alpha next move (`2026-07-23`):** use the delivered Release 17 folder +for keyboard/mouse operator acceptance. On the next live Windows desktop +session, capture the remaining coach-dashboard visual, then prioritize +installer/uninstaller, code-signing, clean-machine prerequisite, entitlement, +and update-channel rollout gates before calling the desktop generally +production-deployable. Do not reopen simulator topology or renderer widening +to perform this release engineering. + **Phase 1 through Phase 5 are now closed on the intended simulator lane:** repo wiring, the classic-cube renderer/runtime loop, dedicated training maps and materials, solver-guided training, and speech command or narration surfaces are implemented and validated through Windows build, diff --git a/docs/v6_5_deep_manual_pack/HyperTwist/DEVELOPMENT.md b/docs/v6_5_deep_manual_pack/HyperTwist/DEVELOPMENT.md index 7049acb..616e26c 100644 --- a/docs/v6_5_deep_manual_pack/HyperTwist/DEVELOPMENT.md +++ b/docs/v6_5_deep_manual_pack/HyperTwist/DEVELOPMENT.md @@ -3772,3 +3772,92 @@ Later same-day recommendation-history micro-follow-up (`2026-06-30`): ownership reduction seam, especially inside `DeriveCoachRecommendationHistorySummary(...)`, rather than reopening a different product family prematurely + +## Shipping Alpha startup, diagnostics, and visual authority (`2026-07-23`) + +The Release 17 Alpha closes the user-reported black/empty first-launch and +corrupt/incomplete distribution lane with stronger product and validation +authority. + +### Packaged startup route + +Nondefault package launches must use: + +```text +-HyperTwistStartupRoute= +``` + +Supported ids resolve through `UHyperTwistFirstRunLaunchLibrary` and execute +through the same `OpenFirstRunRoute()` path as visible first-run buttons. Do not +use a raw map argument as proof that Follow-Along, Magic120Cell, MagicCube5D, or +another product route opened; the project first-run owner can supersede it. + +The parser is intentionally strict. Empty, duplicate, unknown, over-64- +character, uppercase, whitespace-bearing, or punctuation-injected values fail +closed and leave the normal first-run menu available. + +### Stock-Shipping diagnostics + +Do not enable an incompatible `bUseLoggingInShipping` target merely to satisfy +a validation script. The Shipping package owns: + +- `%LOCALAPPDATA%\UnrealHyperTwist\Saved\Logs\HyperTwistRuntime-latest.log` +- `%LOCALAPPDATA%\UnrealHyperTwist\Saved\Logs\HyperTwistFirstRunLaunch-latest.log` + +Validation can redirect the runtime file with +`-HyperTwistDiagnosticsLog=`. An Unreal `-log`/`-abslog` file is +optional in stock Shipping; direct runtime initialization, semantic +map/presentation events, first-run result, process ownership, fatal scanning, +and listener/trace checks are the gate. + +### Semantic visual gate + +Release visuals for first-run, Classic, and higher-dimensional maps should +pass `-HyperTwistCaptureWhenReady` and require the exact expected named PNG. +The product owner requests that capture only after its semantic readiness +invariant is true. The visual report records the copied evidence hash and +original semantic-ready hash. + +A `CopyFromScreen()` image without a fresh semantic capture is corroboration, +not release authority. This distinction is mandatory when the Windows desktop +is locked, disconnected, occluded, or running under a noninteractive SSH +session. + +### Current commands and evidence + +Primary helpers: + +```powershell +powershell -NoProfile -ExecutionPolicy Bypass -File scripts\Invoke-HyperTwistDesktopPackage.ps1 +powershell -NoProfile -ExecutionPolicy Bypass -File scripts\Launch-HyperTwistDesktopPackage.ps1 +powershell -NoProfile -ExecutionPolicy Bypass -File scripts\Test-HyperTwistPackagedWindowVisual.ps1 +powershell -NoProfile -ExecutionPolicy Bypass -File scripts\Export-HyperTwistPackagedBuildZip.ps1 +``` + +Current durable evidence index: + +`docs/generated/alpha_test_20260723/README.md` + +Current operator delivery: + +- `C:\Users\Anthracite Ace\Downloads\HyperTwist-Alpha-Test-20260723` +- `C:\Users\Anthracite Ace\Downloads\HyperTwist-Alpha-Test-20260723.zip` + +The ZIP has `103` entries, size `1082134734` bytes, and SHA-256 +`1ad8e1c0fc967b227ca09fb68c515ed644eca3e4bda07fdf8c378b438000fc42`. + +### Remote-probe hygiene + +A locally timed-out or interrupted SSH wrapper can leave its encoded +Windows PowerShell child running. Before another expensive build or visual +launch: + +1. inspect process id, parent id, session id, working set, and full command line +2. identify ownership from the exact encoded command or package root +3. stop only the confirmed HyperTwist probe and its confirmed package children +4. never kill unrelated editor, compiler, VectorShell, or user processes + +Avoid broad `Get-CimInstance Win32_Process` serialization inside a long-running +probe after a package launch; collecting and JSON-encoding every command line +can itself consume substantial memory. Prefer a narrow process-name/path query +and write the evidence report before cleanup. diff --git a/docs/v6_5_deep_manual_pack/HyperTwist/FEATURE_REGISTRY.md b/docs/v6_5_deep_manual_pack/HyperTwist/FEATURE_REGISTRY.md index 63c836f..c13b109 100644 --- a/docs/v6_5_deep_manual_pack/HyperTwist/FEATURE_REGISTRY.md +++ b/docs/v6_5_deep_manual_pack/HyperTwist/FEATURE_REGISTRY.md @@ -398,6 +398,44 @@ When a new packet materially adds or changes a normalized feature: ## Summary +### Latest continuity note (`2026-07-23`) + +- the current desktop Alpha authority is the Release 17 stock-Shipping package + delivered at + `C:\Users\Anthracite Ace\Downloads\HyperTwist-Alpha-Test-20260723`, not the + July 9 repair artifact +- first-party packaged startup now owns a strict registered-route argument, + `-HyperTwistStartupRoute=`: + - the route id must resolve through the same source-owned catalog used by the + visible first-run buttons + - empty, duplicate, unknown, overlong, case-drifted, and injected values are + rejected + - Follow-Along, Magic120Cell, and MagicCube5D package validation therefore + proves product-route ownership rather than relying on a raw map argument +- stock Shipping now writes direct first-party runtime diagnostics independently + of `UE_LOG`, while retaining separate bounded first-run route diagnostics +- the semantic package matrix is green: + - Classic and Follow-Along: exact maps, `26` renderable cubies, settled valid + state + - Magic120Cell: exact dedicated map, `120` canonical elements, `6` layer + materials + - MagicCube5D: exact dedicated map, `242` canonical elements, `6` layer + materials +- the exact final Downloads executable rendered a fresh semantic first-run + frame, and an injected visible-button interaction opened Classic with the + orbit camera, HUD, cube, and valid settled runtime visible +- archive verification reopened the `103`-entry ZIP and stream-hashed the + outer launcher, inner Shipping executable, `tbbmalloc.dll`, cooked + `pak`/`utoc`/`ucas`, and exact solver table; ZIP SHA-256 is + `1ad8e1c0fc967b227ca09fb68c515ed644eca3e4bda07fdf8c378b438000fc42` +- the final executable also accepts and opens `coach-dashboard` under direct + Shipping diagnostics; a fresh dashboard screenshot remains a narrow + operator-connected visual check because a disconnected desktop must not be + treated as image authority +- the July 9 folder and ZIP were retired only after replacement launch and + archive proof; durable evidence is indexed in + `docs/generated/alpha_test_20260723` + ### Latest continuity note (`2026-07-02`) - the first-party native desktop boot path now has a code-owned first-run @@ -412,7 +450,8 @@ When a new packet materially adds or changes a normalized feature: Dashboard/settings, classic cube free play, follow-along training, `Magic120Cell`, `MagicCube5D`, OpenXR validation, the packaged startup map, the fallback route, and the runtime/startup log file names - - packaged first-run repair on `2026-07-09`: the maintained Windows package + - historical packaged first-run repair on `2026-07-09`, superseded by the + verified `2026-07-23` Shipping Alpha: the maintained Windows package lane proved that `GameDefaultMap` alone was not sufficient because `L_HyperTwist_ClassicTraining` still carried its own authored game-mode override; `DefaultEngine.ini` now also sets `LocalMapOptions` to @@ -425,7 +464,8 @@ When a new packet materially adds or changes a normalized feature: - `scripts/Export-HyperTwistPackagedBuildZip.ps1` - validates that the produced archive is non-empty and still contains a packaged `UnrealHyperTwist.exe` entry before reporting success - - refreshed Windows proof on `2026-07-09`: the repaired desktop artifact at + - historical Windows proof on `2026-07-09`, retained as provenance but no + longer distributed: the repaired desktop artifact at `C:\HyperTwist_worktrees\phase10validate\packaged\desktop-first-run-authority-repair-20260709` logged `BeginPlay`, `ApplyFirstRunInputMode`, and `ShowFirstRunLaunchMenu` from `LogHyperTwistFirstRunLaunch`, and the fresh @@ -433,7 +473,9 @@ When a new packet materially adds or changes a normalized feature: `C:\Users\Anthracite Ace\Downloads\HyperTwist-desktop-first-run-authority-repair-20260709.zip` passed archive verification with `142` entries, executable entry `Windows\UnrealHyperTwist.exe`, size `719569118` bytes, and SHA-256 - `4ec2d5f8e00e28d727590ca584ce40843eed5b85fa7e03c578b7a404c3f45d67` + `4ec2d5f8e00e28d727590ca584ce40843eed5b85fa7e03c578b7a404c3f45d67`; + both that Downloads folder and ZIP were deleted on `2026-07-23` after the + Release 17 replacement was fully verified - this makes first launch materially less raw while keeping the same honest boundary: the web simulator remains a lighter account/preview surface, the Unreal download remains simulator authority, and physical headset/controller diff --git a/docs/v6_5_deep_manual_pack/HyperTwist/ROADMAP.md b/docs/v6_5_deep_manual_pack/HyperTwist/ROADMAP.md index d2f54ab..50cfbc0 100644 --- a/docs/v6_5_deep_manual_pack/HyperTwist/ROADMAP.md +++ b/docs/v6_5_deep_manual_pack/HyperTwist/ROADMAP.md @@ -486,6 +486,24 @@ Current consolidated milestone snapshot: `C:\Users\Anthracite Ace\Downloads\HyperTwist-desktop-first-run-authority-repair-20260709.zip` with `142` entries and SHA-256 `4ec2d5f8e00e28d727590ca584ce40843eed5b85fa7e03c578b7a404c3f45d67` +- the `2026-07-23` Release 17 Shipping Alpha supersedes that July 9 artifact: + strict registered `-HyperTwistStartupRoute` ownership replaced ineffective + generic map launch arguments, stock-Shipping direct diagnostics replaced the + old assumption that an Unreal log must exist, first-run and Classic release + visuals now require fresh named semantic frames, and all four package smokes + now prove exact map and presentation state for Classic (`26` pieces), + Follow-Along (`26` pieces), Magic120Cell (`120` elements / `6` materials), + and MagicCube5D (`242` elements / `6` materials) +- the current Windows operator delivery is + `C:\Users\Anthracite Ace\Downloads\HyperTwist-Alpha-Test-20260723` plus its + verified `103`-entry ZIP, SHA-256 + `1ad8e1c0fc967b227ca09fb68c515ed644eca3e4bda07fdf8c378b438000fc42`; + the archive was reopened and seven critical payloads were stream-hashed, + then the superseded July 9 folder and ZIP were retired +- the narrow remaining Alpha visual check is a fresh coach-dashboard screenshot + during an unlocked Windows desktop session; dashboard route execution itself + is already green under direct Shipping diagnostics, and this visual check + does not reopen simulator topology - classic-cube `Phase 9A` replay recording is now closed through first-party runtime capture, `.json` replay persistence, local playback reconstruction, schema-light replay normalization across save/load/viewer import, and live @@ -540,8 +558,11 @@ Current consolidated milestone snapshot: `221` retained `Phase J` files carrying `443` deprecated validation identifiers and `443` disabled flags with `0` remaining live `HyperTwist.Validation.*` or `HyperTwist.FirstParty.Validation.*` names -- no mandatory roadmap gate remains inside the current `Phase 1` through - `Phase 10` packet set; the remaining optional widening branches are the +- no implementation roadmap gate remains inside the current `Phase 1` through + `Phase 10` packet set; the remaining Alpha/release-engineering checks are the + operator-connected dashboard visual plus installer/uninstaller, code-signing, + clean-machine prerequisites, entitlement, and update-channel rollout proof, + while the remaining optional product-widening branches are the alternative full-browser client path and any later dedicated native `MagicTile` interaction/runtime replacement work rather than new structural-only `Phase J` growth diff --git a/scripts/Export-HyperTwistPackagedBuildZip.ps1 b/scripts/Export-HyperTwistPackagedBuildZip.ps1 index 39ad4a4..641fad9 100644 --- a/scripts/Export-HyperTwistPackagedBuildZip.ps1 +++ b/scripts/Export-HyperTwistPackagedBuildZip.ps1 @@ -1,7 +1,9 @@ param( [string]$PackageRoot = 'C:\HyperTwist\packaged\desktop', [string]$DestinationZipPath = '', - [string]$ReportPath = '' + [string]$ReportPath = '', + [Int64]$ExpectedSolverTableSizeBytes = 676207080, + [string]$ExpectedSolverTableSha256 = 'dc6de3d909a37afe2ba7f1f978543a13eae215bd20d954d66813524a8ca20034' ) $ErrorActionPreference = 'Stop' @@ -90,6 +92,24 @@ function Resolve-PackagedExecutablePath { return $CandidateExecutablePaths | Where-Object { Test-Path -LiteralPath $_ } | Select-Object -First 1 } +function Resolve-PackagedGameExecutablePath { + param( + [Parameter(Mandatory = $true)] + [string]$PackagedProjectRoot + ) + + $GameExecutableDirectory = Join-Path $PackagedProjectRoot 'Binaries\Win64' + $CandidateExecutablePaths = @( + (Join-Path $GameExecutableDirectory 'UnrealHyperTwist.exe'), + (Join-Path $GameExecutableDirectory 'UnrealHyperTwist-Win64-Shipping.exe'), + (Join-Path $GameExecutableDirectory 'UnrealHyperTwist-Win64-Development.exe') + ) + + return $CandidateExecutablePaths | + Where-Object { Test-Path -LiteralPath $_ -PathType Leaf } | + Select-Object -First 1 +} + function Invoke-ZipCreationWithRetry { param( [Parameter(Mandatory = $true)] @@ -148,6 +168,87 @@ function Test-ZipEntryMatchesExecutablePath { return $NormalizedEntryPath.EndsWith('UnrealHyperTwist.exe', [System.StringComparison]::OrdinalIgnoreCase) } +function Get-NormalizedRelativePath { + param( + [Parameter(Mandatory = $true)] + [string]$RootPath, + [Parameter(Mandatory = $true)] + [string]$FilePath + ) + + $RootWithSeparator = $RootPath.TrimEnd('\', '/') + [System.IO.Path]::DirectorySeparatorChar + $FullFilePath = [System.IO.Path]::GetFullPath($FilePath) + if (-not $FullFilePath.StartsWith($RootWithSeparator, [System.StringComparison]::OrdinalIgnoreCase)) + { + throw "Required package file '$FullFilePath' is not beneath package root '$RootPath'." + } + + return $FullFilePath.Substring($RootWithSeparator.Length).Replace('\', '/') +} + +function Get-RequiredPackageFileEvidence { + param( + [Parameter(Mandatory = $true)] + [string]$RootPath, + [Parameter(Mandatory = $true)] + [string]$Path, + [Parameter(Mandatory = $true)] + [string]$Kind, + [Int64]$ExpectedSizeBytes = -1, + [string]$ExpectedSha256 = '' + ) + + if (-not (Test-Path -LiteralPath $Path -PathType Leaf)) + { + throw "Required packaged $Kind file was not found at '$Path'." + } + + $Item = Get-Item -LiteralPath $Path + if ($Item.Length -le 0) + { + throw "Required packaged $Kind file '$Path' was empty." + } + + if ($ExpectedSizeBytes -ge 0 -and $Item.Length -ne $ExpectedSizeBytes) + { + throw "Required packaged $Kind file '$Path' was $($Item.Length) bytes; expected exactly $ExpectedSizeBytes bytes." + } + + $ActualSha256 = (Get-FileHash -LiteralPath $Path -Algorithm SHA256).Hash.ToLowerInvariant() + if (-not [string]::IsNullOrWhiteSpace($ExpectedSha256) ` + -and $ActualSha256 -ne $ExpectedSha256.Trim().ToLowerInvariant()) + { + throw "Required packaged $Kind file '$Path' did not match the expected SHA-256." + } + + return [pscustomobject][ordered]@{ + kind = $Kind + relativePath = Get-NormalizedRelativePath -RootPath $RootPath -FilePath $Item.FullName + sizeBytes = [Int64]$Item.Length + sha256 = $ActualSha256 + } +} + +function Get-ZipEntrySha256 { + param( + [Parameter(Mandatory = $true)] + [System.IO.Compression.ZipArchiveEntry]$Entry + ) + + $Sha256 = [System.Security.Cryptography.SHA256]::Create() + $EntryStream = $Entry.Open() + try + { + $Digest = $Sha256.ComputeHash($EntryStream) + return ([System.BitConverter]::ToString($Digest)).Replace('-', '').ToLowerInvariant() + } + finally + { + $EntryStream.Dispose() + $Sha256.Dispose() + } +} + if (-not (Test-Path -LiteralPath $PackageRoot)) { throw "Package root '$PackageRoot' was not found." @@ -160,6 +261,47 @@ if ($null -eq $PackagedExecutablePath) throw "No packaged UnrealHyperTwist executable was found beneath '$ResolvedPackageRoot'." } +$PackagedExecutableDirectory = Split-Path -Parent $PackagedExecutablePath +$PackagedProjectRoot = Join-Path $PackagedExecutableDirectory 'UnrealHyperTwist' +$PackagedGameExecutablePath = Resolve-PackagedGameExecutablePath ` + -PackagedProjectRoot $PackagedProjectRoot +if ($null -eq $PackagedGameExecutablePath) +{ + throw "No packaged inner UnrealHyperTwist game executable was found beneath '$PackagedProjectRoot'." +} +$RequiredPackageFiles = @( + Get-RequiredPackageFileEvidence ` + -RootPath $ResolvedPackageRoot ` + -Path $PackagedExecutablePath ` + -Kind 'launcher-executable' + Get-RequiredPackageFileEvidence ` + -RootPath $ResolvedPackageRoot ` + -Path $PackagedGameExecutablePath ` + -Kind 'game-executable' + Get-RequiredPackageFileEvidence ` + -RootPath $ResolvedPackageRoot ` + -Path (Join-Path $PackagedProjectRoot 'Binaries\Win64\tbbmalloc.dll') ` + -Kind 'runtime-dependency-tbbmalloc' + Get-RequiredPackageFileEvidence ` + -RootPath $ResolvedPackageRoot ` + -Path (Join-Path $PackagedProjectRoot 'Content\Paks\UnrealHyperTwist-Windows.pak') ` + -Kind 'cooked-pak' + Get-RequiredPackageFileEvidence ` + -RootPath $ResolvedPackageRoot ` + -Path (Join-Path $PackagedProjectRoot 'Content\Paks\UnrealHyperTwist-Windows.utoc') ` + -Kind 'cooked-utoc' + Get-RequiredPackageFileEvidence ` + -RootPath $ResolvedPackageRoot ` + -Path (Join-Path $PackagedProjectRoot 'Content\Paks\UnrealHyperTwist-Windows.ucas') ` + -Kind 'cooked-ucas' + Get-RequiredPackageFileEvidence ` + -RootPath $ResolvedPackageRoot ` + -Path (Join-Path $PackagedProjectRoot 'Saved\twophase-ht.tbl') ` + -Kind 'solver-table' ` + -ExpectedSizeBytes $ExpectedSolverTableSizeBytes ` + -ExpectedSha256 $ExpectedSolverTableSha256 +) + if ([string]::IsNullOrWhiteSpace($DestinationZipPath)) { $PackageLeafName = Split-Path -Leaf $ResolvedPackageRoot @@ -188,7 +330,7 @@ if (Test-Path -LiteralPath $ResolvedDestinationZipPath) } $ZipReport = [ordered]@{ - reportVersion = 'ht-packaged-build-zip-export/v1' + reportVersion = 'ht-packaged-build-zip-export/v2' generatedAtUtc = [DateTime]::UtcNow.ToString('o') packageRoot = $ResolvedPackageRoot packagedExecutablePath = $PackagedExecutablePath @@ -196,6 +338,8 @@ $ZipReport = [ordered]@{ result = 'failed' entryCount = 0 packagedExecutableEntry = $null + requiredEntries = @($RequiredPackageFiles) + archivedRequiredEntries = @() zipSizeBytes = 0 zipSha256 = $null error = $null @@ -226,6 +370,47 @@ try { throw "The exported zip '$ResolvedDestinationZipPath' contained zero entries." } + + foreach ($RequiredFile in $RequiredPackageFiles) + { + $MatchingRequiredEntries = @($Entries | Where-Object { + $_.FullName.Replace('\', '/').Equals( + $RequiredFile.relativePath, + [System.StringComparison]::OrdinalIgnoreCase) + }) + if ($MatchingRequiredEntries.Count -ne 1) + { + throw ( + "The exported zip '$ResolvedDestinationZipPath' contained " + + "$($MatchingRequiredEntries.Count) copies of required $($RequiredFile.kind) " + + "entry '$($RequiredFile.relativePath)'; expected exactly one." + ) + } + + $RequiredEntry = $MatchingRequiredEntries[0] + if ([Int64]$RequiredEntry.Length -ne [Int64]$RequiredFile.sizeBytes) + { + throw "Required zip entry '$($RequiredFile.relativePath)' had an unexpected uncompressed size." + } + + $ArchivedSha256 = Get-ZipEntrySha256 -Entry $RequiredEntry + if ($ArchivedSha256 -ne $RequiredFile.sha256) + { + throw ( + "Required zip entry '$($RequiredFile.relativePath)' did not preserve " + + "the source SHA-256 '$($RequiredFile.sha256)'." + ) + } + + $ZipReport.archivedRequiredEntries += @( + [pscustomobject][ordered]@{ + kind = $RequiredFile.kind + relativePath = $RequiredFile.relativePath + sizeBytes = [Int64]$RequiredEntry.Length + sha256 = $ArchivedSha256 + } + ) + } } finally { diff --git a/scripts/Invoke-HyperTwistClassicCubeMapAuthoring.ps1 b/scripts/Invoke-HyperTwistClassicCubeMapAuthoring.ps1 index a150858..90f32fb 100644 --- a/scripts/Invoke-HyperTwistClassicCubeMapAuthoring.ps1 +++ b/scripts/Invoke-HyperTwistClassicCubeMapAuthoring.ps1 @@ -1,7 +1,9 @@ param( [string]$ProjectRoot = 'C:\HyperTwist', [string]$UnrealEditorCmdPath = 'C:\Program Files\Epic Games\UE_5.7\Engine\Binaries\Win64\UnrealEditor-Cmd.exe', - [string]$PythonScriptPath + [string]$PythonScriptPath, + [ValidateSet('d3d11', 'nullrhi')] + [string]$RenderBackend = 'd3d11' ) $ErrorActionPreference = 'Stop' @@ -12,6 +14,7 @@ if ([string]::IsNullOrWhiteSpace($PythonScriptPath)) } $UProjectPath = Join-Path $ProjectRoot 'UnrealHyperTwist\UnrealHyperTwist.uproject' +$AuthoringStateRoot = Join-Path $ProjectRoot 'UnrealHyperTwist\Saved\HyperTwistMapAuthoring' $ClassicMapPath = Join-Path $ProjectRoot 'UnrealHyperTwist\Content\HyperTwistTraining\Maps\L_HyperTwist_ClassicTraining.umap' $FollowAlongMapPath = Join-Path $ProjectRoot 'UnrealHyperTwist\Content\HyperTwistTraining\Maps\L_HyperTwist_FollowAlongTraining.umap' $ExpectedMaterialPaths = @( @@ -40,6 +43,8 @@ if (-not (Test-Path $PythonScriptPath)) throw "Classic-cube map authoring script was not found at '$PythonScriptPath'." } +[System.IO.Directory]::CreateDirectory($AuthoringStateRoot) | Out-Null + $NormalizedPythonScriptPath = $PythonScriptPath -replace '\\', '/' $AuthoredTargets = @( @{ @@ -54,49 +59,102 @@ $AuthoredTargets = @( foreach ($Target in $AuthoredTargets) { - $env:HYPERTWIST_CLASSIC_CUBE_MAP_KIND = $Target.Label - $AuthoringStartedAtUtc = [DateTime]::UtcNow - Write-Host "Authoring HyperTwist classic cube training map target '$($Target.Label)' through UnrealEditor-Cmd..." - & $UnrealEditorCmdPath ` - $UProjectPath ` - "-ExecutePythonScript=$NormalizedPythonScriptPath" ` - -unattended ` - -nop4 ` - -nullrhi ` - -nosound ` - -nosplash ` - -stdout ` - -FullStdOutLogOutput ` - -log + $MarkerPath = Join-Path $AuthoringStateRoot "$($Target.Label)-complete.json" + $BackupPath = Join-Path $AuthoringStateRoot "$($Target.Label)-pre-authoring.umap" + $HadOriginalMap = Test-Path $Target.ExpectedMapPath + $AuthoringSucceeded = $false - if ($LASTEXITCODE -ne 0) + Remove-Item $MarkerPath, $BackupPath -Force -ErrorAction SilentlyContinue + if ($HadOriginalMap) { - $FreshMapExists = $false - if (Test-Path $Target.ExpectedMapPath) - { - $FreshMapExists = (Get-Item $Target.ExpectedMapPath).LastWriteTimeUtc -ge $AuthoringStartedAtUtc.AddSeconds(-2) - } + Copy-Item $Target.ExpectedMapPath $BackupPath -Force + } - if ($FreshMapExists) + try + { + $env:HYPERTWIST_CLASSIC_CUBE_MAP_KIND = $Target.Label + $env:HYPERTWIST_CLASSIC_CUBE_AUTHORING_MARKER = $MarkerPath + $AuthoringStartedAtUtc = [DateTime]::UtcNow + $BackendArguments = if ($RenderBackend -eq 'nullrhi') { - Write-Warning "UnrealEditor-Cmd exited with code $LASTEXITCODE after freshly writing '$($Target.ExpectedMapPath)'. Continuing because this host currently crashes during post-save shutdown on the headless authoring lane." + @('-nullrhi') } else { - Remove-Item Env:\HYPERTWIST_CLASSIC_CUBE_MAP_KIND -ErrorAction SilentlyContinue - throw "Classic-cube map authoring failed with exit code $LASTEXITCODE." + @('-d3d11', '-RenderOffscreen') } - } + Write-Host "Authoring HyperTwist classic cube training map target '$($Target.Label)' through UnrealEditor-Cmd ($RenderBackend)..." + & $UnrealEditorCmdPath ` + $UProjectPath ` + "-ExecutePythonScript=$NormalizedPythonScriptPath" ` + -unattended ` + -nop4 ` + @BackendArguments ` + -nosound ` + -nosplash ` + -stdout ` + -FullStdOutLogOutput ` + -log - if (-not (Test-Path $Target.ExpectedMapPath)) + $EditorExitCode = $LASTEXITCODE + $FreshMapExists = (Test-Path $Target.ExpectedMapPath) -and ( + (Get-Item $Target.ExpectedMapPath).LastWriteTimeUtc -ge $AuthoringStartedAtUtc.AddSeconds(-2) + ) + $CompletionMarkerIsValid = $false + if (Test-Path $MarkerPath) + { + try + { + $CompletionMarker = Get-Content $MarkerPath -Raw | ConvertFrom-Json + $CompletionMarkerIsValid = ` + $CompletionMarker.schemaVersion -eq 1 -and ` + $CompletionMarker.stage -eq 'complete' -and ` + $CompletionMarker.target -eq $Target.Label -and ` + $CompletionMarker.mapAssetPath -eq ( + "/Game/HyperTwistTraining/Maps/" + [System.IO.Path]::GetFileNameWithoutExtension($Target.ExpectedMapPath) + ) -and ` + @($CompletionMarker.actorLabels).Count -ge 7 + } + catch + { + Write-Warning "Ignoring malformed authoring completion marker '$MarkerPath': $($_.Exception.Message)" + } + } + + if (-not $FreshMapExists -or -not $CompletionMarkerIsValid) + { + throw "Classic-cube map authoring did not produce a fresh, fully validated '$($Target.Label)' map (editor exit code $EditorExitCode)." + } + + if ($EditorExitCode -ne 0) + { + Write-Warning "UnrealEditor-Cmd exited with code $EditorExitCode after the complete map marker was durably written. The validated authored map is retained." + } + + $AuthoringSucceeded = $true + } + finally { Remove-Item Env:\HYPERTWIST_CLASSIC_CUBE_MAP_KIND -ErrorAction SilentlyContinue - throw "Expected authored map was not found at '$($Target.ExpectedMapPath)'." + Remove-Item Env:\HYPERTWIST_CLASSIC_CUBE_AUTHORING_MARKER -ErrorAction SilentlyContinue + + if (-not $AuthoringSucceeded) + { + if ($HadOriginalMap -and (Test-Path $BackupPath)) + { + Copy-Item $BackupPath $Target.ExpectedMapPath -Force + Write-Warning "Restored the pre-authoring map after an incomplete '$($Target.Label)' authoring run." + } + elseif (Test-Path $Target.ExpectedMapPath) + { + Remove-Item $Target.ExpectedMapPath -Force + } + } + + Remove-Item $BackupPath -Force -ErrorAction SilentlyContinue } } -Remove-Item Env:\HYPERTWIST_CLASSIC_CUBE_MAP_KIND -ErrorAction SilentlyContinue - foreach ($ExpectedMapPath in @($ClassicMapPath, $FollowAlongMapPath)) { if (-not (Test-Path $ExpectedMapPath)) diff --git a/scripts/Invoke-HyperTwistClassicCubePackage.ps1 b/scripts/Invoke-HyperTwistClassicCubePackage.ps1 index 80d00a7..b383b07 100644 --- a/scripts/Invoke-HyperTwistClassicCubePackage.ps1 +++ b/scripts/Invoke-HyperTwistClassicCubePackage.ps1 @@ -12,6 +12,13 @@ param( ), [bool]$HeadlessSmoke = $true, [string]$ValidationReportPath = '', + [string]$SolverTablePath = '', + [Int64]$ExpectedSolverTableSizeBytes = 676207080, + [string]$ExpectedSolverTableSha256 = 'dc6de3d909a37afe2ba7f1f978543a13eae215bd20d954d66813524a8ca20034', + [string[]]$BootstrapLaunchArguments = @( + '-notraceserver', + '-traceautostart=0' + ), [switch]$CleanArchive, [switch]$SkipBuild, [switch]$SkipLaunch @@ -22,6 +29,7 @@ $ErrorActionPreference = 'Stop' $RunUatPath = 'C:\Program Files\Epic Games\UE_5.7\Engine\Build\BatchFiles\RunUAT.bat' $UProjectPath = Join-Path $ProjectRoot 'UnrealHyperTwist\UnrealHyperTwist.uproject' $LaunchScriptPath = Join-Path $ProjectRoot 'scripts\Launch-HyperTwistClassicCubePackage.ps1' +$BootstrapLaunchArgumentsScriptPath = Join-Path $ProjectRoot 'scripts\Set-HyperTwistBootstrapLaunchArguments.ps1' $GameTargetReceiptPath = Join-Path $ProjectRoot 'UnrealHyperTwist\Binaries\Win64\UnrealHyperTwist.target' $UnrealBuildToolSavedPath = Join-Path $ProjectRoot 'UnrealHyperTwist\Saved\UnrealBuildTool' $CookMaps = @($CookMap) + $AdditionalCookMaps | Where-Object { -not [string]::IsNullOrWhiteSpace($_) } | Select-Object -Unique @@ -48,6 +56,12 @@ $ExpectedClassicCubeMaterialPaths = @( ) $ValidationRootPath = Join-Path $ArchiveDirectory 'validation' $SmokeReportDirectory = Join-Path $ValidationRootPath 'smoke' +$BootstrapLaunchArgumentsReportPath = Join-Path $ValidationRootPath 'bootstrap-launch-arguments-report.json' + +if ([string]::IsNullOrWhiteSpace($SolverTablePath)) +{ + $SolverTablePath = Join-Path $ProjectRoot 'UnrealHyperTwist\Saved\twophase-ht.tbl' +} function Write-Utf8JsonFile { param( @@ -90,6 +104,169 @@ function Read-JsonFile { return Get-Content -LiteralPath $Path -Raw | ConvertFrom-Json } +function Get-BootstrapRuntimeArgumentEvidence { + param( + [string]$RuntimeLogPath, + [Parameter(Mandatory = $true)] + [string]$RuntimeDiagnosticsPath, + [string[]]$ObservedCommandLines = @(), + [object[]]$TraceControlListeningEndpoints = @(), + [Parameter(Mandatory = $true)] + [string[]]$ExpectedArguments + ) + + $RuntimeLogExists = -not [string]::IsNullOrWhiteSpace($RuntimeLogPath) ` + -and (Test-Path -LiteralPath $RuntimeLogPath -PathType Leaf) + $RuntimeDiagnosticsExists = -not [string]::IsNullOrWhiteSpace($RuntimeDiagnosticsPath) ` + -and (Test-Path -LiteralPath $RuntimeDiagnosticsPath -PathType Leaf) + if (-not $RuntimeDiagnosticsExists) + { + return [pscustomobject][ordered]@{ + runtimeLogPath = $RuntimeLogPath + runtimeLogExists = $false + runtimeDiagnosticsPath = $RuntimeDiagnosticsPath + runtimeDiagnosticsExists = $false + expectedArguments = @($ExpectedArguments) + matchedArguments = @() + missingArguments = @($ExpectedArguments) + traceControlListenerLines = @() + traceControlListeningEndpoints = @($TraceControlListeningEndpoints) + result = 'failed' + error = 'The direct HyperTwist diagnostics file was not found.' + } + } + + $RuntimeLogLines = [string[]]@( + if ($RuntimeLogExists) + { + Get-Content -LiteralPath $RuntimeLogPath | + ForEach-Object { $_.ToString() } + } + ) + $RuntimeDiagnosticsLines = [string[]]@( + if ($RuntimeDiagnosticsExists) + { + Get-Content -LiteralPath $RuntimeDiagnosticsPath | + ForEach-Object { $_.ToString() } + } + ) + $RuntimeEvidenceLines = [string[]]@( + @($RuntimeLogLines) + + @($RuntimeDiagnosticsLines) + + @($ObservedCommandLines) + ) + $RuntimeEvidenceText = [string]::Join([Environment]::NewLine, $RuntimeEvidenceLines) + $MatchedArguments = @( + $ExpectedArguments | + Where-Object { + $RuntimeEvidenceText.IndexOf( + $_, + [System.StringComparison]::OrdinalIgnoreCase + ) -ge 0 + } + ) + $MissingArguments = @( + $ExpectedArguments | + Where-Object { $MatchedArguments -notcontains $_ } + ) + $TraceControlListenerLines = [string[]]@( + @($RuntimeLogLines + $RuntimeDiagnosticsLines) | + Where-Object { + $_.IndexOf( + 'Control listening on port', + [System.StringComparison]::OrdinalIgnoreCase + ) -ge 0 + } + ) + $Passed = $MissingArguments.Count -eq 0 ` + -and $TraceControlListenerLines.Count -eq 0 ` + -and $TraceControlListeningEndpoints.Count -eq 0 + + return [pscustomobject][ordered]@{ + runtimeLogPath = $RuntimeLogPath + runtimeLogExists = $RuntimeLogExists + runtimeDiagnosticsPath = $RuntimeDiagnosticsPath + runtimeDiagnosticsExists = $RuntimeDiagnosticsExists + observedCommandLines = @($ObservedCommandLines) + expectedArguments = @($ExpectedArguments) + matchedArguments = @($MatchedArguments) + missingArguments = @($MissingArguments) + traceControlListenerLines = @($TraceControlListenerLines) + traceControlListeningEndpoints = @($TraceControlListeningEndpoints) + result = if ($Passed) { 'passed' } else { 'failed' } + error = if ($Passed) + { + $null + } + elseif ($MissingArguments.Count -gt 0) + { + "Runtime evidence omitted bootstrap arguments: $($MissingArguments -join ', ')" + } + else + { + 'Runtime opened an Unreal trace-control listener.' + } + } +} + +function Get-ValidatedSolverTableEvidence { + param( + [Parameter(Mandatory = $true)] + [string]$Path, + [Parameter(Mandatory = $true)] + [Int64]$ExpectedSizeBytes, + [Parameter(Mandatory = $true)] + [string]$ExpectedSha256 + ) + + if (-not (Test-Path -LiteralPath $Path -PathType Leaf)) + { + throw "Required two-phase solver table was not found at '$Path'." + } + + $Item = Get-Item -LiteralPath $Path + if ($Item.Length -ne $ExpectedSizeBytes) + { + throw "Two-phase solver table '$Path' was $($Item.Length) bytes; expected exactly $ExpectedSizeBytes bytes." + } + + $ActualSha256 = (Get-FileHash -LiteralPath $Path -Algorithm SHA256).Hash.ToLowerInvariant() + $NormalizedExpectedSha256 = $ExpectedSha256.Trim().ToLowerInvariant() + if ($ActualSha256 -ne $NormalizedExpectedSha256) + { + throw "Two-phase solver table '$Path' had SHA-256 '$ActualSha256'; expected '$NormalizedExpectedSha256'." + } + + return [pscustomobject][ordered]@{ + path = $Item.FullName + sizeBytes = [Int64]$Item.Length + sha256 = $ActualSha256 + } +} + +function Copy-ValidatedSolverTableToPackage { + param( + [Parameter(Mandatory = $true)] + [string]$SourcePath, + [Parameter(Mandatory = $true)] + [string]$PackagedExecutablePath, + [Parameter(Mandatory = $true)] + [Int64]$ExpectedSizeBytes, + [Parameter(Mandatory = $true)] + [string]$ExpectedSha256 + ) + + $ExecutableDirectory = Split-Path -Parent $PackagedExecutablePath + $DestinationPath = Join-Path $ExecutableDirectory 'UnrealHyperTwist\Saved\twophase-ht.tbl' + New-Item -ItemType Directory -Force -Path (Split-Path -Parent $DestinationPath) | Out-Null + Copy-Item -LiteralPath $SourcePath -Destination $DestinationPath -Force + + return Get-ValidatedSolverTableEvidence ` + -Path $DestinationPath ` + -ExpectedSizeBytes $ExpectedSizeBytes ` + -ExpectedSha256 $ExpectedSha256 +} + function Resolve-PackagedExecutablePath { param( [string]$PackageRoot @@ -241,6 +418,11 @@ if (-not (Test-Path $UProjectPath)) throw "UnrealHyperTwist project file was not found at '$UProjectPath'." } +if (-not (Test-Path -LiteralPath $BootstrapLaunchArgumentsScriptPath -PathType Leaf)) +{ + throw "Bootstrap launch-argument helper was not found at '$BootstrapLaunchArgumentsScriptPath'." +} + foreach ($TargetCookMap in $CookMaps) { Assert-CookMapExists -RootPath $ProjectRoot -GameMapPath $TargetCookMap @@ -284,6 +466,7 @@ if ([string]::IsNullOrWhiteSpace($ValidationReportPath)) $RunUatArguments = @( 'BuildCookRun', + '-WaitForUATMutex', "-project=$UProjectPath", '-noP4', '-platform=Win64', @@ -311,7 +494,7 @@ if ($ResolvedAdditionalCookerOptions.Count -gt 0) } $ValidationReport = [ordered]@{ - reportVersion = 'ht-classic-cube-package-validation/v1' + reportVersion = 'ht-classic-cube-package-validation/v2' generatedAtUtc = [DateTime]::UtcNow.ToString('o') projectRoot = $ProjectRoot archiveDirectory = $ArchiveDirectory @@ -325,12 +508,40 @@ $ValidationReport = [ordered]@{ skipLaunch = [bool]$SkipLaunch result = 'failed' packagedExecutablePath = $null + bootstrapLaunchArguments = [ordered]@{ + result = 'pending' + traceControlProtection = if ($Configuration -eq 'Shipping') + { + 'shipping-compile-time-disabled' + } + else + { + 'runtime-listener-rejection-only' + } + expectedArguments = @($BootstrapLaunchArguments) + patchReportPath = $BootstrapLaunchArgumentsReportPath + patchReport = $null + runtimeProofs = @() + } + solverTable = [ordered]@{ + result = 'pending' + sourcePath = $SolverTablePath + expectedSizeBytes = $ExpectedSolverTableSizeBytes + expectedSha256 = $ExpectedSolverTableSha256.ToLowerInvariant() + sourceEvidence = $null + packagedEvidence = $null + } smokeReports = @() error = $null } try { + $ValidationReport.solverTable.sourceEvidence = Get-ValidatedSolverTableEvidence ` + -Path $SolverTablePath ` + -ExpectedSizeBytes $ExpectedSolverTableSizeBytes ` + -ExpectedSha256 $ExpectedSolverTableSha256 + Write-Host "Packaging HyperTwist classic-cube validation lane to '$ArchiveDirectory'..." & $RunUatPath @RunUatArguments @@ -346,6 +557,23 @@ try } $ValidationReport.packagedExecutablePath = $PackagedExecutablePath + & $BootstrapLaunchArgumentsScriptPath ` + -ExecutablePath $PackagedExecutablePath ` + -AdditionalArguments $BootstrapLaunchArguments ` + -ReportPath $BootstrapLaunchArgumentsReportPath | Out-Null + $BootstrapPatchReport = Read-JsonFile -Path $BootstrapLaunchArgumentsReportPath + if ($null -eq $BootstrapPatchReport -or $BootstrapPatchReport.result -ne 'passed') + { + throw "Packaged bootstrap launch-argument patch did not record a passed result." + } + $ValidationReport.bootstrapLaunchArguments.patchReport = $BootstrapPatchReport + + $ValidationReport.solverTable.packagedEvidence = Copy-ValidatedSolverTableToPackage ` + -SourcePath $SolverTablePath ` + -PackagedExecutablePath $PackagedExecutablePath ` + -ExpectedSizeBytes $ExpectedSolverTableSizeBytes ` + -ExpectedSha256 $ExpectedSolverTableSha256 + $ValidationReport.solverTable.result = 'passed' if (-not $SkipLaunch) { @@ -392,8 +620,28 @@ try throw "Packaged classic-cube smoke report '$SmokeReportPath' targeted '$($SmokeReport.mapUrl)' instead of '$SmokeMap'." } + $RuntimeArgumentEvidence = Get-BootstrapRuntimeArgumentEvidence ` + -RuntimeLogPath $SmokeReport.runtimeLogPath ` + -RuntimeDiagnosticsPath $SmokeReport.runtimeDiagnosticsPath ` + -ObservedCommandLines @($SmokeReport.processCommandLines) ` + -TraceControlListeningEndpoints @($SmokeReport.traceControlListeningEndpoints) ` + -ExpectedArguments $BootstrapLaunchArguments + $ValidationReport.bootstrapLaunchArguments.runtimeProofs += @( + $RuntimeArgumentEvidence + ) + if ($RuntimeArgumentEvidence.result -ne 'passed') + { + throw $RuntimeArgumentEvidence.error + } + $ValidationReport.smokeReports += @($SmokeReport) } + + $ValidationReport.bootstrapLaunchArguments.result = 'passed' + } + else + { + $ValidationReport.bootstrapLaunchArguments.result = 'patch-passed-runtime-not-run' } $ValidationReport.result = 'passed' diff --git a/scripts/Invoke-HyperTwistDesktopPackage.ps1 b/scripts/Invoke-HyperTwistDesktopPackage.ps1 index 8005b56..526a6dd 100644 --- a/scripts/Invoke-HyperTwistDesktopPackage.ps1 +++ b/scripts/Invoke-HyperTwistDesktopPackage.ps1 @@ -22,6 +22,9 @@ param( [bool]$HeadlessSmoke = $true, [string]$ValidationReportPath = '', [string]$LaunchSurfaceReportPath = '', + [string]$SolverTablePath = '', + [Int64]$ExpectedSolverTableSizeBytes = 676207080, + [string]$ExpectedSolverTableSha256 = 'dc6de3d909a37afe2ba7f1f978543a13eae215bd20d954d66813524a8ca20034', [string]$ZipOutputPath = '', [string]$ZipExportReportPath = '', [switch]$CleanArchive, @@ -75,7 +78,11 @@ $InvokeParameters = @{ AdditionalCookMaps = $AdditionalCookMaps SmokeMaps = $SmokeMaps AdditionalCookerOptions = $AdditionalCookerOptions + HeadlessSmoke = $HeadlessSmoke ValidationReportPath = $ValidationReportPath + SolverTablePath = $SolverTablePath + ExpectedSolverTableSizeBytes = $ExpectedSolverTableSizeBytes + ExpectedSolverTableSha256 = $ExpectedSolverTableSha256 } if ($CleanArchive) @@ -97,12 +104,19 @@ if ($SkipLaunch) if (-not $SkipLaunch) { - & $DesktopLaunchScriptPath ` - -PackageRoot $ArchiveDirectory ` - -ReportPath $LaunchSurfaceReportPath ` - -UseNullRHI:$HeadlessSmoke ` - -NoSound:$HeadlessSmoke ` - -RequireStartupDiagnostics + $DesktopLaunchParameters = @{ + PackageRoot = $ArchiveDirectory + ReportPath = $LaunchSurfaceReportPath + UseNullRHI = $HeadlessSmoke + NoSound = $HeadlessSmoke + RequireStartupDiagnostics = $true + } + if (-not $HeadlessSmoke) + { + $DesktopLaunchParameters.ExpectedStartupDiagnosticsResult = 'launch-menu-renderable' + } + + & $DesktopLaunchScriptPath @DesktopLaunchParameters } if ($CreateZip) @@ -110,5 +124,7 @@ if ($CreateZip) & $ZipExportScriptPath ` -PackageRoot $ArchiveDirectory ` -DestinationZipPath $ZipOutputPath ` - -ReportPath $ZipExportReportPath + -ReportPath $ZipExportReportPath ` + -ExpectedSolverTableSizeBytes $ExpectedSolverTableSizeBytes ` + -ExpectedSolverTableSha256 $ExpectedSolverTableSha256 } diff --git a/scripts/Invoke-HyperTwistHigherDimensionalMapAuthoring.ps1 b/scripts/Invoke-HyperTwistHigherDimensionalMapAuthoring.ps1 index d0a203d..45e2b67 100644 --- a/scripts/Invoke-HyperTwistHigherDimensionalMapAuthoring.ps1 +++ b/scripts/Invoke-HyperTwistHigherDimensionalMapAuthoring.ps1 @@ -16,6 +16,7 @@ $Magic120CellMapPath = Join-Path $ProjectRoot 'UnrealHyperTwist\Content\HyperTwi $MagicCube5DMapPath = Join-Path $ProjectRoot 'UnrealHyperTwist\Content\HyperTwistTraining\Maps\L_HyperTwist_MagicCube5DTraining.umap' $ClassicMapPath = Join-Path $ProjectRoot 'UnrealHyperTwist\Content\HyperTwistTraining\Maps\L_HyperTwist_ClassicTraining.umap' $ManifestPath = Join-Path $ProjectRoot 'docs\generated\higher_dimensional_training_maps\phase6c_dedicated_family_map_manifest.json' +$ReceiptDirectory = Join-Path $ProjectRoot 'UnrealHyperTwist\Saved\HyperTwistMapAuthoring' if (-not (Test-Path $UnrealEditorCmdPath)) { @@ -37,10 +38,12 @@ $AuthoredTargets = @( @{ Label = 'magic120cell' ExpectedMapPath = $Magic120CellMapPath + ReceiptPath = Join-Path $ReceiptDirectory 'phase6c_magic120cell_complete.json' }, @{ Label = 'magiccube5d' ExpectedMapPath = $MagicCube5DMapPath + ReceiptPath = Join-Path $ReceiptDirectory 'phase6c_magiccube5d_complete.json' } ) @@ -48,6 +51,7 @@ foreach ($Target in $AuthoredTargets) { $env:HYPERTWIST_HIGHER_DIMENSIONAL_MAP_KIND = $Target.Label $AuthoringStartedAtUtc = [DateTime]::UtcNow + Remove-Item -LiteralPath $Target.ReceiptPath -Force -ErrorAction SilentlyContinue Write-Host "Authoring HyperTwist higher-dimensional training map target '$($Target.Label)' through UnrealEditor-Cmd..." & $UnrealEditorCmdPath ` $UProjectPath ` @@ -61,23 +65,44 @@ foreach ($Target in $AuthoredTargets) -FullStdOutLogOutput ` -log - if ($LASTEXITCODE -ne 0) + $AuthoringExitCode = $LASTEXITCODE + $Receipt = $null + if (Test-Path -LiteralPath $Target.ReceiptPath -PathType Leaf) { - $FreshMapExists = $false - if (Test-Path $Target.ExpectedMapPath) - { - $FreshMapExists = (Get-Item $Target.ExpectedMapPath).LastWriteTimeUtc -ge $AuthoringStartedAtUtc.AddSeconds(-2) - } + $Receipt = Get-Content -LiteralPath $Target.ReceiptPath -Raw | ConvertFrom-Json + } - if ($FreshMapExists) + $ExpectedMapHash = if (Test-Path -LiteralPath $Target.ExpectedMapPath -PathType Leaf) + { + (Get-FileHash -LiteralPath $Target.ExpectedMapPath -Algorithm MD5).Hash.ToLowerInvariant() + } + else + { + '' + } + $ReceiptIsFresh = $Receipt -and ` + (Get-Item -LiteralPath $Target.ReceiptPath).LastWriteTimeUtc -ge $AuthoringStartedAtUtc.AddSeconds(-2) + $ReceiptIsValid = $ReceiptIsFresh -and ` + $Receipt.authoringComplete -eq $true -and ` + $Receipt.mapKind -eq $Target.Label -and ` + $Receipt.gameModeClassPath -eq '/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode' -and ` + $Receipt.presentationEnvironmentOwnership -eq 'runtime-game-mode-and-shell-components' -and ` + $Receipt.mapHashMd5 -eq $ExpectedMapHash -and ` + @($Receipt.validatedActorLabels).Count -eq 1 + + if (-not $ReceiptIsValid) + { + Remove-Item Env:\HYPERTWIST_HIGHER_DIMENSIONAL_MAP_KIND -ErrorAction SilentlyContinue + if ($AuthoringExitCode -ne 0) { - Write-Warning "UnrealEditor-Cmd exited with code $LASTEXITCODE after freshly writing '$($Target.ExpectedMapPath)'. Continuing because this host may still crash during post-save shutdown on the headless authoring lane." - } - else - { - Remove-Item Env:\HYPERTWIST_HIGHER_DIMENSIONAL_MAP_KIND -ErrorAction SilentlyContinue - throw "Higher-dimensional map authoring failed with exit code $LASTEXITCODE." + throw "Higher-dimensional map authoring failed with exit code $AuthoringExitCode before a valid completion receipt was written for '$($Target.Label)'." } + throw "Higher-dimensional map authoring exited without a valid hash-bound completion receipt for '$($Target.Label)'." + } + + if ($AuthoringExitCode -ne 0) + { + Write-Warning "UnrealEditor-Cmd exited with code $AuthoringExitCode only after '$($Target.Label)' completed, validated, and wrote its hash-bound receipt. Accepting the known post-completion headless shutdown crash." } if (-not (Test-Path $Target.ExpectedMapPath)) @@ -126,7 +151,10 @@ $ManifestEntries = @( primaryPersistenceBoundaryId = 'magic120cell-persistence-boundary' authorTag = 'HyperTwistHigherDimensionalTrainingShell' authoringManifestRelativePath = 'docs/generated/higher_dimensional_training_maps/phase6c_dedicated_family_map_manifest.json' - authoredViaGameModeClassPath = '/Script/UnrealHyperTwist.HyperTwistCoachDashboardGameMode' + authoredViaGameModeClassPath = '/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode' + runtimePresentationClassPath = '/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingShellActor' + presentationEnvironmentOwnership = 'runtime-game-mode-and-shell-components' + canonicalRenderableElementCount = 120 trainingShellTags = @( 'phase6c', 'family:magic120cell', @@ -155,7 +183,10 @@ $ManifestEntries = @( primaryPersistenceBoundaryId = 'magiccube5d-persistence-boundary' authorTag = 'HyperTwistHigherDimensionalTrainingShell' authoringManifestRelativePath = 'docs/generated/higher_dimensional_training_maps/phase6c_dedicated_family_map_manifest.json' - authoredViaGameModeClassPath = '/Script/UnrealHyperTwist.HyperTwistCoachDashboardGameMode' + authoredViaGameModeClassPath = '/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode' + runtimePresentationClassPath = '/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingShellActor' + presentationEnvironmentOwnership = 'runtime-game-mode-and-shell-components' + canonicalRenderableElementCount = 242 trainingShellTags = @( 'phase6c', 'family:magiccube5d', @@ -168,10 +199,10 @@ $ManifestEntries = @( $Manifest = [ordered]@{ manifestId = 'phase6c/dedicated-family-training-map-authoring' - manifestVersion = '2026.06.18' + manifestVersion = '2026.07.19' authorTag = 'HyperTwistHigherDimensionalTrainingShell' authoringScriptRelativePath = 'scripts/hypertwist_author_higher_dimensional_training_maps.py' - authoredThroughGameModeClassPath = '/Script/UnrealHyperTwist.HyperTwistCoachDashboardGameMode' + authoredThroughGameModeClassPath = '/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode' classicReferenceMapHashMd5 = $ClassicReferenceHashMd5 entries = $ManifestEntries } diff --git a/scripts/Invoke-HyperTwistInteractiveDesktopTask.ps1 b/scripts/Invoke-HyperTwistInteractiveDesktopTask.ps1 index 1703b37..93025d2 100644 --- a/scripts/Invoke-HyperTwistInteractiveDesktopTask.ps1 +++ b/scripts/Invoke-HyperTwistInteractiveDesktopTask.ps1 @@ -50,6 +50,43 @@ function Convert-TaskToken { return ($Value -replace '[^A-Za-z0-9_-]', '_') } +function Get-TaskOwnedProcessIds { + param( + [Parameter(Mandatory = $true)] + [string]$RunnerPath + ) + + $ProcessSnapshots = @(Get-CimInstance Win32_Process -ErrorAction SilentlyContinue) + $OwnedProcessIds = New-Object 'System.Collections.Generic.HashSet[int]' + foreach ($ProcessSnapshot in $ProcessSnapshots) + { + if (-not [string]::IsNullOrWhiteSpace([string]$ProcessSnapshot.CommandLine) ` + -and ([string]$ProcessSnapshot.CommandLine).IndexOf( + $RunnerPath, + [System.StringComparison]::OrdinalIgnoreCase + ) -ge 0) + { + [void]$OwnedProcessIds.Add([int]$ProcessSnapshot.ProcessId) + } + } + + $AddedProcess = $true + while ($AddedProcess) + { + $AddedProcess = $false + foreach ($ProcessSnapshot in $ProcessSnapshots) + { + if ($OwnedProcessIds.Contains([int]$ProcessSnapshot.ParentProcessId) ` + -and $OwnedProcessIds.Add([int]$ProcessSnapshot.ProcessId)) + { + $AddedProcess = $true + } + } + } + + return @($OwnedProcessIds) +} + if ([string]::IsNullOrWhiteSpace($InlineCommand)) { throw 'Provide -InlineCommand.' @@ -126,9 +163,12 @@ $Result = [ordered]@{ createExitCode = $null runExitCode = $null taskOutput = $null + terminatedOwnedProcessIds = @() result = 'failed' error = $null } +$TaskCreated = $false +$FailureResultPath = $null try { @@ -137,7 +177,6 @@ try '/TN', $TaskName, '/SC', 'ONCE', '/ST', '23:59', - '/SD', (Get-Date).ToString('MM/dd/yyyy'), '/TR', ('C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -ExecutionPolicy Bypass -File {0}' -f $TaskRunnerPath), '/RU', 'INTERACTIVE' ) @@ -147,6 +186,7 @@ try { throw "Creating the interactive desktop task failed with exit code $($Result.createExitCode)." } + $TaskCreated = $true & schtasks.exe /Run /TN ('\' + $TaskName) | Out-Null $Result.runExitCode = $LASTEXITCODE @@ -201,7 +241,7 @@ catch { $Result.taskOutput = Read-JsonFile -Path $TaskResultPath } - $ResolvedFailureResultPath = if ([string]::IsNullOrWhiteSpace($ResultPath)) + $FailureResultPath = if ([string]::IsNullOrWhiteSpace($ResultPath)) { $TaskResultPath } @@ -209,18 +249,49 @@ catch { $ResultPath } - Write-Utf8JsonFile -Path $ResolvedFailureResultPath -Value $Result + Write-Utf8JsonFile -Path $FailureResultPath -Value $Result throw } finally { if (-not $KeepArtifacts) { - & schtasks.exe /Delete /TN $TaskName /F | Out-Null + $TaskOwnedProcessIds = if ($TaskCreated) + { + @(Get-TaskOwnedProcessIds -RunnerPath $TaskRunnerPath) + } + else + { + @() + } + if ($TaskCreated) + { + # A timed-out interactive child must not survive as a hidden, + # memory-consuming desktop task. + & schtasks.exe /End /TN ('\' + $TaskName) *> $null + if ($LASTEXITCODE -eq 0) + { + Start-Sleep -Milliseconds 250 + } + & schtasks.exe /Delete /TN $TaskName /F | Out-Null + } + foreach ($TaskOwnedProcessId in @($TaskOwnedProcessIds | Sort-Object -Descending)) + { + if ($TaskOwnedProcessId -ne $PID ` + -and $null -ne (Get-Process -Id $TaskOwnedProcessId -ErrorAction SilentlyContinue)) + { + Stop-Process -Id $TaskOwnedProcessId -Force -ErrorAction SilentlyContinue + $Result.terminatedOwnedProcessIds += [int]$TaskOwnedProcessId + } + } if (Test-Path -LiteralPath $TaskRunnerPath) { Remove-Item -LiteralPath $TaskRunnerPath -Force } + if (-not [string]::IsNullOrWhiteSpace($FailureResultPath)) + { + Write-Utf8JsonFile -Path $FailureResultPath -Value $Result + } } } diff --git a/scripts/Launch-HyperTwistClassicCubePackage.ps1 b/scripts/Launch-HyperTwistClassicCubePackage.ps1 index 5053794..3171c32 100644 --- a/scripts/Launch-HyperTwistClassicCubePackage.ps1 +++ b/scripts/Launch-HyperTwistClassicCubePackage.ps1 @@ -1,7 +1,7 @@ param( [string]$PackageRoot = 'C:\HyperTwist\packaged\classic-cube', [string]$MapUrl = '/Game/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining', - [int]$SmokeSeconds = 10, + [int]$SmokeSeconds = 30, [int]$ResX = 1600, [int]$ResY = 900, [string]$ReportPath = '', @@ -44,6 +44,9 @@ function Get-FatalRuntimeLogMatches { $FatalPatterns = @( 'Fatal error:', + 'LowLevelFatalError', + 'Assertion failed:', + 'Critical error:', 'appError called:', 'DXGI_ERROR_NOT_CURRENTLY_AVAILABLE', 'CreateSwapChainResult failed', @@ -65,18 +68,138 @@ function Get-FatalRuntimeLogMatches { }) } +function Get-OwnedPackageProcessIds { + param( + [Parameter(Mandatory = $true)] + [string]$ResolvedPackageRoot, + [int[]]$ExcludedProcessIds = @() + ) + + return @( + Get-OwnedPackageProcessRecords ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -ExcludedProcessIds $ExcludedProcessIds | + Select-Object -ExpandProperty ProcessId + ) +} + +function Get-OwnedPackageProcessRecords { + param( + [Parameter(Mandatory = $true)] + [string]$ResolvedPackageRoot, + [int[]]$ExcludedProcessIds = @() + ) + + $RootPrefix = $ResolvedPackageRoot.TrimEnd( + [System.IO.Path]::DirectorySeparatorChar, + [System.IO.Path]::AltDirectorySeparatorChar + ) + [System.IO.Path]::DirectorySeparatorChar + + return @( + Get-CimInstance Win32_Process -Filter "Name = 'UnrealHyperTwist.exe'" -ErrorAction SilentlyContinue | + Where-Object { + -not [string]::IsNullOrWhiteSpace([string]$_.ExecutablePath) ` + -and ([string]$_.ExecutablePath).StartsWith( + $RootPrefix, + [System.StringComparison]::OrdinalIgnoreCase + ) ` + -and $ExcludedProcessIds -notcontains [int]$_.ProcessId + } + ) +} + +function Get-OwnedListeningTcpEndpoints { + param( + [int[]]$ProcessIds + ) + + if ($ProcessIds.Count -eq 0) + { + return @() + } + + return @( + Get-NetTCPConnection -State Listen -ErrorAction SilentlyContinue | + Where-Object { $ProcessIds -contains [int]$_.OwningProcess } | + Sort-Object OwningProcess, LocalPort | + ForEach-Object { + [pscustomobject][ordered]@{ + processId = [int]$_.OwningProcess + localAddress = [string]$_.LocalAddress + localPort = [int]$_.LocalPort + } + } + ) +} + +function Stop-OwnedPackageProcesses { + param( + [Parameter(Mandatory = $true)] + [string]$ResolvedPackageRoot, + [int[]]$ExcludedProcessIds = @() + ) + + $StoppedProcessIds = New-Object 'System.Collections.Generic.HashSet[int]' + for ($Attempt = 0; $Attempt -lt 5; $Attempt += 1) + { + $OwnedProcessIds = @( + Get-OwnedPackageProcessIds ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -ExcludedProcessIds $ExcludedProcessIds + ) + if ($OwnedProcessIds.Count -eq 0) + { + break + } + + foreach ($OwnedProcessId in $OwnedProcessIds) + { + Stop-Process -Id $OwnedProcessId -Force -ErrorAction SilentlyContinue + [void]$StoppedProcessIds.Add([int]$OwnedProcessId) + } + Start-Sleep -Milliseconds 200 + } + + return @($StoppedProcessIds) +} + $CandidateExecutablePaths = @( (Join-Path $PackageRoot 'Windows\UnrealHyperTwist.exe'), (Join-Path $PackageRoot 'WindowsNoEditor\UnrealHyperTwist.exe'), (Join-Path $PackageRoot 'UnrealHyperTwist.exe') ) -$ExecutablePath = $CandidateExecutablePaths | Where-Object { Test-Path $_ } | Select-Object -First 1 -if ($null -eq $ExecutablePath) +$LauncherExecutablePath = $CandidateExecutablePaths | + Where-Object { Test-Path $_ } | + Select-Object -First 1 +if ($null -eq $LauncherExecutablePath) { throw "No packaged UnrealHyperTwist executable was found beneath '$PackageRoot'." } +$PackagedExecutableDirectory = Split-Path -Parent $LauncherExecutablePath +$ClassicDefaultMap = '/Game/HyperTwistTraining/Maps/L_HyperTwist_ClassicTraining' +$StartupRouteByMap = @{ + $ClassicDefaultMap = '' + '/Game/HyperTwistTraining/Maps/L_HyperTwist_FollowAlongTraining' = 'follow-along-training' + '/Game/HyperTwistTraining/Maps/L_HyperTwist_Magic120CellTraining' = 'magic-120-cell-training' + '/Game/HyperTwistTraining/Maps/L_HyperTwist_MagicCube5DTraining' = 'magic-cube-5d-training' +} +if (-not $StartupRouteByMap.ContainsKey($MapUrl)) +{ + throw "No first-party packaged startup route is registered for smoke map '$MapUrl'." +} +$StartupRouteId = [string]$StartupRouteByMap[$MapUrl] +$LaunchMode = if ($MapUrl -eq $ClassicDefaultMap) +{ + 'bootstrap-default-map' +} +else +{ + 'first-party-startup-route' +} +$ExecutablePath = $LauncherExecutablePath + $LogDirectory = Join-Path $PackageRoot 'validation\logs' New-Item -ItemType Directory -Force -Path $LogDirectory | Out-Null $LogToken = if ([string]::IsNullOrWhiteSpace($MapUrl)) @@ -88,15 +211,26 @@ else ($MapUrl -replace '[\\/:*?"<>| ]', '_') } $RuntimeLogPath = Join-Path $LogDirectory ("{0}.log" -f $LogToken) +$RuntimeDiagnosticsPath = Join-Path $LogDirectory ("{0}.hyperdiagnostics.log" -f $LogToken) +Remove-Item -LiteralPath $RuntimeLogPath -Force -ErrorAction SilentlyContinue +Remove-Item -LiteralPath $RuntimeDiagnosticsPath -Force -ErrorAction SilentlyContinue -$ArgumentList = @( - $MapUrl, +$ArgumentList = @() +if (-not [string]::IsNullOrWhiteSpace($StartupRouteId)) +{ + # Nondefault smokes use the same registered product route as the launch + # menu. Generic startup URLs are overridden by the packaged first-run + # game-mode authority and therefore are not valid route evidence. + $ArgumentList += "-HyperTwistStartupRoute=$StartupRouteId" +} +$ArgumentList += @( "-ResX=$ResX", "-ResY=$ResY", '-windowed', '-log', '-FORCELOGFLUSH', - "-abslog=$RuntimeLogPath" + "-abslog=$RuntimeLogPath", + "-HyperTwistDiagnosticsLog=`"$RuntimeDiagnosticsPath`"" ) if ($UseNullRHI) @@ -111,17 +245,58 @@ if ($NoSound) Write-Host "Launching packaged classic-cube validation lane from '$ExecutablePath'..." $ResolvedPackageRoot = (Resolve-Path -LiteralPath $PackageRoot).Path +$ExistingPackageProcessIds = @( + Get-OwnedPackageProcessIds -ResolvedPackageRoot $ResolvedPackageRoot +) $GeneratedAtUtc = [DateTime]::UtcNow.ToString('o') $Process = $null +$RequiresClassicPresentation = $MapUrl -match '/L_HyperTwist_(Classic|FollowAlong)Training$' +$HigherDimensionalFamily = if ($MapUrl -match '/L_HyperTwist_Magic120CellTraining$') +{ + 'magic120cell' +} +elseif ($MapUrl -match '/L_HyperTwist_MagicCube5DTraining$') +{ + 'magiccube5d' +} +else +{ + '' +} +$ExpectedHigherDimensionalElementCount = if ($HigherDimensionalFamily -eq 'magic120cell') +{ + 120 +} +elseif ($HigherDimensionalFamily -eq 'magiccube5d') +{ + 242 +} +else +{ + 0 +} $Report = [ordered]@{ - reportVersion = 'ht-classic-cube-package-smoke/v1' + reportVersion = 'ht-desktop-map-package-smoke/v7' generatedAtUtc = $GeneratedAtUtc packageRoot = $ResolvedPackageRoot + launchMode = $LaunchMode + startupRouteId = $StartupRouteId + launcherExecutablePath = $LauncherExecutablePath executablePath = $ExecutablePath mapUrl = $MapUrl runtimeLogPath = $RuntimeLogPath runtimeLogExists = $false + runtimeDiagnosticsPath = $RuntimeDiagnosticsPath + runtimeDiagnosticsExists = $false detectedFatalLogLines = @() + mapLoadLogLines = @() + requiresClassicPresentation = $RequiresClassicPresentation + classicPresentationLogLines = @() + classicScrambleSettlementLogLines = @() + higherDimensionalFamily = $HigherDimensionalFamily + expectedHigherDimensionalElementCount = $ExpectedHigherDimensionalElementCount + higherDimensionalPresentationLogLines = @() + higherDimensionalPaletteLogLines = @() smokeSeconds = $SmokeSeconds resolution = [ordered]@{ width = $ResX @@ -132,22 +307,60 @@ $Report = [ordered]@{ noSound = [bool]$NoSound result = 'failed' processId = $null + processIds = @() + processCommandLines = @() + ownedListeningTcpEndpoints = @() + traceControlListenerLines = @() + traceControlListeningEndpoints = @() + startupRouteCommandLineEvidence = @() + startupRouteEvidenceLines = @() processStopped = $false + stoppedProcessIds = @() exitCode = $null error = $null } try { - $Process = Start-Process -FilePath $ExecutablePath -ArgumentList $ArgumentList -PassThru + $Process = Start-Process ` + -FilePath $ExecutablePath ` + -ArgumentList $ArgumentList ` + -WorkingDirectory (Split-Path -Parent $ExecutablePath) ` + -PassThru Start-Sleep -Seconds $SmokeSeconds $Process.Refresh() $Report.processId = $Process.Id + $OwnedProcessRecords = @( + Get-OwnedPackageProcessRecords ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -ExcludedProcessIds $ExistingPackageProcessIds + ) + $Report.processIds = @($OwnedProcessRecords | Select-Object -ExpandProperty ProcessId) + $Report.processCommandLines = @( + $OwnedProcessRecords | + ForEach-Object { [string]$_.CommandLine } | + Where-Object { -not [string]::IsNullOrWhiteSpace($_) } + ) + $Report.ownedListeningTcpEndpoints = @( + Get-OwnedListeningTcpEndpoints -ProcessIds $Report.processIds + ) + $Report.traceControlListeningEndpoints = @( + $Report.ownedListeningTcpEndpoints | + Where-Object { [int]$_.localPort -eq 1985 } + ) Start-Sleep -Milliseconds 500 $Report.runtimeLogExists = Test-Path -LiteralPath $RuntimeLogPath - $Report.detectedFatalLogLines = @(Get-FatalRuntimeLogMatches -RuntimeLogPath $RuntimeLogPath) + $Report.runtimeDiagnosticsExists = Test-Path -LiteralPath $RuntimeDiagnosticsPath + $Report.detectedFatalLogLines = @( + @(Get-FatalRuntimeLogMatches -RuntimeLogPath $RuntimeLogPath) + + @(Get-FatalRuntimeLogMatches -RuntimeLogPath $RuntimeDiagnosticsPath) + ) + if (-not $Report.runtimeDiagnosticsExists) + { + throw 'Packaged launch did not write its direct HyperTwist diagnostics log.' + } if ($Report.detectedFatalLogLines.Count -gt 0) { throw ( @@ -156,10 +369,157 @@ try ) } - if ($Process.HasExited) + $CurrentRuntimeLogLines = @( + if ($Report.runtimeLogExists) + { + Get-Content -LiteralPath $RuntimeLogPath + } + ) + $CurrentRuntimeDiagnosticsLines = @( + if ($Report.runtimeDiagnosticsExists) + { + Get-Content -LiteralPath $RuntimeDiagnosticsPath + } + ) + $CurrentEvidenceLines = @($CurrentRuntimeLogLines + $CurrentRuntimeDiagnosticsLines) + $Report.traceControlListenerLines = @( + $CurrentEvidenceLines | + Where-Object { + $_.ToString().IndexOf( + 'Control listening on port', + [System.StringComparison]::OrdinalIgnoreCase + ) -ge 0 + } | + ForEach-Object { $_.ToString() } + ) + if ($Report.traceControlListenerLines.Count -gt 0 ` + -or $Report.traceControlListeningEndpoints.Count -gt 0) { - $Report.exitCode = $Process.ExitCode - throw "Packaged classic-cube executable exited early with code $($Process.ExitCode)." + throw 'Packaged runtime opened an Unreal trace-control listener.' + } + + if (-not [string]::IsNullOrWhiteSpace($StartupRouteId)) + { + $ExpectedStartupRouteArgument = "-HyperTwistStartupRoute=$StartupRouteId" + $Report.startupRouteCommandLineEvidence = @( + $Report.processCommandLines | + Where-Object { + $_.IndexOf( + $ExpectedStartupRouteArgument, + [System.StringComparison]::OrdinalIgnoreCase + ) -ge 0 + } + ) + if ($Report.startupRouteCommandLineEvidence.Count -eq 0) + { + throw ( + "Packaged bootstrap did not propagate first-party startup route argument " + + "'$ExpectedStartupRouteArgument'." + ) + } + + $ExpectedStartupRouteMarker = "Accepted packaged startup route '$StartupRouteId'" + $Report.startupRouteEvidenceLines = @( + $CurrentEvidenceLines | + Where-Object { $_ -like "*$ExpectedStartupRouteMarker*" } | + ForEach-Object { $_.ToString() } + ) + if ($Report.startupRouteEvidenceLines.Count -eq 0) + { + throw ( + "Packaged runtime did not accept first-party startup route '$StartupRouteId' " + + 'through the launch controller.' + ) + } + } + + $ExpectedMapLeaf = ($MapUrl -split '/')[-1] + $Report.mapLoadLogLines = @( + $CurrentEvidenceLines | + Where-Object { + $_ -like "*LogLoad: LoadMap: $MapUrl*" ` + -or $_ -like "*Bringing World $MapUrl*up for play*" ` + -or $_ -like "*Runtime map ready:*$ExpectedMapLeaf*" + } | + ForEach-Object { $_.ToString() } + ) + if ($Report.mapLoadLogLines.Count -eq 0) + { + throw "Packaged launch stayed alive but did not load target map '$MapUrl' before the smoke interval ended." + } + + $Report.classicPresentationLogLines = @( + $CurrentEvidenceLines | + Where-Object { + $_ -like '*Classic cube presentation initialized with 26 renderable pieces*' + } | + ForEach-Object { $_.ToString() } + ) + if ($RequiresClassicPresentation -and $Report.classicPresentationLogLines.Count -eq 0) + { + throw ( + "Packaged map '$MapUrl' loaded, but the runtime did not confirm its complete 26-cubie " + + 'Classic cube presentation.' + ) + } + + $Report.classicScrambleSettlementLogLines = @( + $CurrentEvidenceLines | + Where-Object { + $_ -match 'Classic cube scramble settled with \d+ completed quarter turns, 0 queued rotations, and 26 renderable pieces; renderable state valid\.' + } | + ForEach-Object { $_.ToString() } + ) + if ($RequiresClassicPresentation -and $Report.classicScrambleSettlementLogLines.Count -eq 0) + { + throw ( + "Packaged map '$MapUrl' loaded its Classic presentation, but the initial scramble " + + 'did not settle into a coherent 26-cubie state before the smoke interval ended.' + ) + } + + if (-not [string]::IsNullOrWhiteSpace($HigherDimensionalFamily)) + { + $ExpectedPresentationMarker = ( + 'Higher-dimensional presentation initialized with {0} renderable elements ' + + '(canonical={0}) for family {1}.' + ) -f $ExpectedHigherDimensionalElementCount, $HigherDimensionalFamily + $Report.higherDimensionalPresentationLogLines = @( + $CurrentEvidenceLines | + Where-Object { $_ -like "*$ExpectedPresentationMarker*" } | + ForEach-Object { $_.ToString() } + ) + if ($Report.higherDimensionalPresentationLogLines.Count -eq 0) + { + throw ( + "Packaged map '$MapUrl' loaded, but the runtime did not confirm its " + + "$ExpectedHigherDimensionalElementCount-element $HigherDimensionalFamily presentation." + ) + } + + $Report.higherDimensionalPaletteLogLines = @( + $CurrentEvidenceLines | + Where-Object { + $_ -like '*Higher-dimensional projection palette initialized with 6 distinct layer materials.*' + } | + ForEach-Object { $_.ToString() } + ) + if ($Report.higherDimensionalPaletteLogLines.Count -eq 0) + { + throw ( + "Packaged map '$MapUrl' loaded its projection, but the runtime did not confirm " + + 'six distinct first-party layer materials.' + ) + } + } + + if ($Report.processIds.Count -eq 0) + { + if ($Process.HasExited) + { + $Report.exitCode = $Process.ExitCode + } + throw "Packaged classic-cube executable exited before the smoke interval completed." } $Report.result = 'passed' @@ -167,18 +527,18 @@ try catch { $Report.error = $_.Exception.Message - if ($null -ne $Process) + if ($null -ne $Process -and $Process.HasExited) { - $Process.Refresh() - if ($Process.HasExited) - { - $Report.exitCode = $Process.ExitCode - } - elseif (-not $KeepRunning) - { - Stop-Process -Id $Process.Id -Force - $Report.processStopped = $true - } + $Report.exitCode = $Process.ExitCode + } + if (-not $KeepRunning) + { + $Report.stoppedProcessIds = @( + Stop-OwnedPackageProcesses ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -ExcludedProcessIds $ExistingPackageProcessIds + ) + $Report.processStopped = $Report.stoppedProcessIds.Count -gt 0 } if (-not [string]::IsNullOrWhiteSpace($ReportPath)) @@ -192,9 +552,13 @@ catch Write-Host "Packaged classic-cube smoke launch succeeded (PID $($Process.Id))." if (-not $KeepRunning) { - Stop-Process -Id $Process.Id -Force - $Report.processStopped = $true - Write-Host 'Stopped packaged classic-cube smoke process after successful launch validation.' + $Report.stoppedProcessIds = @( + Stop-OwnedPackageProcesses ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -ExcludedProcessIds $ExistingPackageProcessIds + ) + $Report.processStopped = $Report.stoppedProcessIds.Count -gt 0 + Write-Host 'Stopped the complete packaged classic-cube smoke process tree after successful launch validation.' } if (-not [string]::IsNullOrWhiteSpace($ReportPath)) diff --git a/scripts/Launch-HyperTwistDesktopPackage.ps1 b/scripts/Launch-HyperTwistDesktopPackage.ps1 index 629be40..7230f7c 100644 --- a/scripts/Launch-HyperTwistDesktopPackage.ps1 +++ b/scripts/Launch-HyperTwistDesktopPackage.ps1 @@ -1,14 +1,15 @@ param( [string]$PackageRoot = 'C:\HyperTwist\packaged\desktop', [string]$MapUrl = '', - [int]$SmokeSeconds = 12, + [int]$SmokeSeconds = 30, [int]$ResX = 1600, [int]$ResY = 900, [string]$ReportPath = '', [switch]$KeepRunning, [switch]$UseNullRHI, [switch]$NoSound, - [switch]$RequireStartupDiagnostics + [switch]$RequireStartupDiagnostics, + [string]$ExpectedStartupDiagnosticsResult = '' ) $ErrorActionPreference = 'Stop' @@ -36,6 +37,8 @@ function Resolve-StartupDiagnosticsLogPath { param( [Parameter(Mandatory = $true)] [string]$ResolvedPackageRoot, + [Parameter(Mandatory = $true)] + [DateTime]$NotBeforeUtc, [int]$TimeoutSeconds = 8, [int]$PollMilliseconds = 250 ) @@ -59,7 +62,8 @@ function Resolve-StartupDiagnosticsLogPath { { foreach ($CandidatePath in $CandidatePaths) { - if (Test-Path -LiteralPath $CandidatePath) + if ((Test-Path -LiteralPath $CandidatePath) ` + -and (Get-Item -LiteralPath $CandidatePath).LastWriteTimeUtc -ge $NotBeforeUtc.AddSeconds(-2)) { return $CandidatePath } @@ -73,6 +77,7 @@ function Resolve-StartupDiagnosticsLogPath { } $NewestDiagnosticsLog = Get-ChildItem -LiteralPath $CandidateDirectory -Filter 'HyperTwistFirstRunLaunch*.log' -File -ErrorAction SilentlyContinue | + Where-Object { $_.LastWriteTimeUtc -ge $NotBeforeUtc.AddSeconds(-2) } | Sort-Object LastWriteTimeUtc -Descending | Select-Object -First 1 if ($null -ne $NewestDiagnosticsLog) @@ -93,6 +98,102 @@ function Resolve-StartupDiagnosticsLogPath { return $null } +function Get-OwnedPackageProcessIds { + param( + [Parameter(Mandatory = $true)] + [string]$ResolvedPackageRoot, + [int[]]$ExcludedProcessIds = @() + ) + + return @( + Get-OwnedPackageProcessRecords ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -ExcludedProcessIds $ExcludedProcessIds | + Select-Object -ExpandProperty ProcessId + ) +} + +function Get-OwnedPackageProcessRecords { + param( + [Parameter(Mandatory = $true)] + [string]$ResolvedPackageRoot, + [int[]]$ExcludedProcessIds = @() + ) + + $RootPrefix = $ResolvedPackageRoot.TrimEnd( + [System.IO.Path]::DirectorySeparatorChar, + [System.IO.Path]::AltDirectorySeparatorChar + ) + [System.IO.Path]::DirectorySeparatorChar + + return @( + Get-CimInstance Win32_Process -ErrorAction SilentlyContinue | + Where-Object { + ([string]$_.Name) -like 'UnrealHyperTwist*.exe' ` + -and -not [string]::IsNullOrWhiteSpace([string]$_.ExecutablePath) ` + -and ([string]$_.ExecutablePath).StartsWith( + $RootPrefix, + [System.StringComparison]::OrdinalIgnoreCase + ) ` + -and $ExcludedProcessIds -notcontains [int]$_.ProcessId + } + ) +} + +function Get-OwnedListeningTcpEndpoints { + param( + [int[]]$ProcessIds + ) + + if ($ProcessIds.Count -eq 0) + { + return @() + } + + return @( + Get-NetTCPConnection -State Listen -ErrorAction SilentlyContinue | + Where-Object { $ProcessIds -contains [int]$_.OwningProcess } | + Sort-Object OwningProcess, LocalPort | + ForEach-Object { + [pscustomobject][ordered]@{ + processId = [int]$_.OwningProcess + localAddress = [string]$_.LocalAddress + localPort = [int]$_.LocalPort + } + } + ) +} + +function Stop-OwnedPackageProcesses { + param( + [Parameter(Mandatory = $true)] + [string]$ResolvedPackageRoot, + [int[]]$ExcludedProcessIds = @() + ) + + $StoppedProcessIds = New-Object 'System.Collections.Generic.HashSet[int]' + for ($Attempt = 0; $Attempt -lt 5; $Attempt += 1) + { + $OwnedProcessIds = @( + Get-OwnedPackageProcessIds ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -ExcludedProcessIds $ExcludedProcessIds + ) + if ($OwnedProcessIds.Count -eq 0) + { + break + } + + foreach ($OwnedProcessId in $OwnedProcessIds) + { + Stop-Process -Id $OwnedProcessId -Force -ErrorAction SilentlyContinue + [void]$StoppedProcessIds.Add([int]$OwnedProcessId) + } + Start-Sleep -Milliseconds 200 + } + + return @($StoppedProcessIds) +} + function Get-FatalRuntimeLogMatches { param( [Parameter(Mandatory = $true)] @@ -106,6 +207,9 @@ function Get-FatalRuntimeLogMatches { $FatalPatterns = @( 'Fatal error:', + 'LowLevelFatalError', + 'Assertion failed:', + 'Critical error:', 'appError called:', 'DXGI_ERROR_NOT_CURRENTLY_AVAILABLE', 'CreateSwapChainResult failed', @@ -142,6 +246,9 @@ if ($null -eq $ExecutablePath) $LogDirectory = Join-Path $PackageRoot 'validation\logs' New-Item -ItemType Directory -Force -Path $LogDirectory | Out-Null $RuntimeLogPath = Join-Path $LogDirectory 'desktop-runtime.log' +$RuntimeDiagnosticsPath = Join-Path $LogDirectory 'desktop-runtime.hyperdiagnostics.log' +Remove-Item -LiteralPath $RuntimeLogPath -Force -ErrorAction SilentlyContinue +Remove-Item -LiteralPath $RuntimeDiagnosticsPath -Force -ErrorAction SilentlyContinue $ArgumentList = @( "-ResX=$ResX", @@ -149,7 +256,8 @@ $ArgumentList = @( '-windowed', '-log', '-FORCELOGFLUSH', - "-abslog=$RuntimeLogPath" + "-abslog=$RuntimeLogPath", + "-HyperTwistDiagnosticsLog=`"$RuntimeDiagnosticsPath`"" ) if ($UseNullRHI) @@ -169,16 +277,22 @@ if (-not [string]::IsNullOrWhiteSpace($MapUrl)) Write-Host "Launching packaged HyperTwist desktop experience from '$ExecutablePath'..." $ResolvedPackageRoot = (Resolve-Path -LiteralPath $PackageRoot).Path +$ExistingPackageProcessIds = @( + Get-OwnedPackageProcessIds -ResolvedPackageRoot $ResolvedPackageRoot +) $GeneratedAtUtc = [DateTime]::UtcNow.ToString('o') $Process = $null $Report = [ordered]@{ - reportVersion = 'ht-desktop-package-launch-surface/v1' + reportVersion = 'ht-desktop-package-launch-surface/v2' generatedAtUtc = $GeneratedAtUtc packageRoot = $ResolvedPackageRoot executablePath = $ExecutablePath mapUrl = $MapUrl runtimeLogPath = $RuntimeLogPath runtimeLogExists = $false + runtimeDiagnosticsPath = $RuntimeDiagnosticsPath + runtimeDiagnosticsExists = $false + runtimeDiagnosticsInitialized = $false detectedFatalLogLines = @() smokeSeconds = $SmokeSeconds resolution = [ordered]@{ @@ -189,52 +303,152 @@ $Report = [ordered]@{ useNullRhi = [bool]$UseNullRHI noSound = [bool]$NoSound requireStartupDiagnostics = [bool]$RequireStartupDiagnostics + expectedStartupDiagnosticsResult = $ExpectedStartupDiagnosticsResult startupDiagnosticsLogPath = $null startupDiagnosticsLogExists = $false startupDiagnosticsTail = @() + startupDiagnosticsResult = $null result = 'failed' processId = $null + processIds = @() + processCommandLines = @() + ownedListeningTcpEndpoints = @() + traceControlListenerLines = @() + traceControlListeningEndpoints = @() processStopped = $false + stoppedProcessIds = @() exitCode = $null error = $null } try { + $LaunchStartedAtUtc = [DateTime]::UtcNow $Process = Start-Process -FilePath $ExecutablePath -ArgumentList $ArgumentList -PassThru Start-Sleep -Seconds $SmokeSeconds $Process.Refresh() $Report.processId = $Process.Id + $OwnedProcessRecords = @( + Get-OwnedPackageProcessRecords ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -ExcludedProcessIds $ExistingPackageProcessIds + ) + $Report.processIds = @($OwnedProcessRecords | Select-Object -ExpandProperty ProcessId) + $Report.processCommandLines = @( + $OwnedProcessRecords | + ForEach-Object { [string]$_.CommandLine } | + Where-Object { -not [string]::IsNullOrWhiteSpace($_) } + ) + $Report.ownedListeningTcpEndpoints = @( + Get-OwnedListeningTcpEndpoints -ProcessIds $Report.processIds + ) + $Report.traceControlListeningEndpoints = @( + $Report.ownedListeningTcpEndpoints | + Where-Object { [int]$_.localPort -eq 1985 } + ) Start-Sleep -Milliseconds 500 $Report.runtimeLogExists = Test-Path -LiteralPath $RuntimeLogPath - $Report.detectedFatalLogLines = @(Get-FatalRuntimeLogMatches -RuntimeLogPath $RuntimeLogPath) - $StartupDiagnosticsLogPath = Resolve-StartupDiagnosticsLogPath -ResolvedPackageRoot $ResolvedPackageRoot + $Report.runtimeDiagnosticsExists = Test-Path -LiteralPath $RuntimeDiagnosticsPath + $Report.detectedFatalLogLines = @( + @(Get-FatalRuntimeLogMatches -RuntimeLogPath $RuntimeLogPath) + + @(Get-FatalRuntimeLogMatches -RuntimeLogPath $RuntimeDiagnosticsPath) + ) + $CurrentRuntimeLogLines = @( + if ($Report.runtimeLogExists) + { + Get-Content -LiteralPath $RuntimeLogPath + } + ) + $CurrentRuntimeDiagnosticsLines = @( + if ($Report.runtimeDiagnosticsExists) + { + Get-Content -LiteralPath $RuntimeDiagnosticsPath + } + ) + $CurrentRuntimeEvidenceLines = @( + $CurrentRuntimeLogLines + $CurrentRuntimeDiagnosticsLines + ) + $Report.runtimeDiagnosticsInitialized = @( + $CurrentRuntimeDiagnosticsLines | + Where-Object { + $_.ToString().IndexOf( + '[Process] HyperTwist runtime module initialized.', + [System.StringComparison]::OrdinalIgnoreCase + ) -ge 0 + } + ).Count -gt 0 + $Report.traceControlListenerLines = @( + $CurrentRuntimeEvidenceLines | + Where-Object { + $_.ToString().IndexOf( + 'Control listening on port', + [System.StringComparison]::OrdinalIgnoreCase + ) -ge 0 + } | + ForEach-Object { $_.ToString() } + ) + $StartupDiagnosticsLogPath = Resolve-StartupDiagnosticsLogPath ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -NotBeforeUtc $LaunchStartedAtUtc $Report.startupDiagnosticsLogPath = $StartupDiagnosticsLogPath $Report.startupDiagnosticsLogExists = $null -ne $StartupDiagnosticsLogPath if ($Report.startupDiagnosticsLogExists) { - $Report.startupDiagnosticsTail = @(Get-Content -LiteralPath $StartupDiagnosticsLogPath -Tail 40) + $Report.startupDiagnosticsTail = @( + Get-Content -LiteralPath $StartupDiagnosticsLogPath -Tail 40 | + ForEach-Object { $_.ToString() } + ) + $Report.startupDiagnosticsResult = [string]( + $Report.startupDiagnosticsTail | + Where-Object { $_ -like 'result=*' } | + Select-Object -Last 1 + ) } + if (-not $Report.runtimeDiagnosticsExists) + { + throw 'Packaged desktop launch did not write its direct HyperTwist diagnostics log.' + } + if (-not $Report.runtimeDiagnosticsInitialized) + { + throw 'Packaged desktop launch did not record direct HyperTwist runtime initialization.' + } if ($Report.detectedFatalLogLines.Count -gt 0) { throw ( - "Packaged desktop runtime log recorded fatal startup evidence: " + + "Packaged desktop runtime diagnostics recorded fatal startup evidence: " + ($Report.detectedFatalLogLines -join ' | ') ) } + if ($Report.traceControlListenerLines.Count -gt 0 ` + -or $Report.traceControlListeningEndpoints.Count -gt 0) + { + throw 'Packaged desktop runtime opened an Unreal trace-control listener.' + } if ($RequireStartupDiagnostics -and -not $Report.startupDiagnosticsLogExists) { throw "Packaged desktop launch did not write HyperTwistFirstRunLaunch-latest.log." } - if ($Process.HasExited) + if (-not [string]::IsNullOrWhiteSpace($ExpectedStartupDiagnosticsResult) ` + -and $Report.startupDiagnosticsResult -ne "result=$ExpectedStartupDiagnosticsResult") { - $Report.exitCode = $Process.ExitCode - throw "Packaged desktop executable exited early with code $($Process.ExitCode)." + throw ( + "Expected startup diagnostics result '$ExpectedStartupDiagnosticsResult' but observed " + + "'$($Report.startupDiagnosticsResult)'." + ) + } + + if ($Report.processIds.Count -eq 0) + { + if ($Process.HasExited) + { + $Report.exitCode = $Process.ExitCode + } + throw 'Packaged desktop executable exited before the smoke interval completed.' } $Report.result = 'passed' @@ -242,18 +456,18 @@ try catch { $Report.error = $_.Exception.Message - if ($null -ne $Process) + if ($null -ne $Process -and $Process.HasExited) { - $Process.Refresh() - if ($Process.HasExited) - { - $Report.exitCode = $Process.ExitCode - } - elseif (-not $KeepRunning) - { - Stop-Process -Id $Process.Id -Force - $Report.processStopped = $true - } + $Report.exitCode = $Process.ExitCode + } + if (-not $KeepRunning) + { + $Report.stoppedProcessIds = @( + Stop-OwnedPackageProcesses ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -ExcludedProcessIds $ExistingPackageProcessIds + ) + $Report.processStopped = $Report.stoppedProcessIds.Count -gt 0 } if (-not [string]::IsNullOrWhiteSpace($ReportPath)) @@ -267,9 +481,13 @@ catch Write-Host "Packaged desktop smoke launch succeeded (PID $($Process.Id))." if (-not $KeepRunning) { - Stop-Process -Id $Process.Id -Force - $Report.processStopped = $true - Write-Host 'Stopped packaged desktop smoke process after successful launch validation.' + $Report.stoppedProcessIds = @( + Stop-OwnedPackageProcesses ` + -ResolvedPackageRoot $ResolvedPackageRoot ` + -ExcludedProcessIds $ExistingPackageProcessIds + ) + $Report.processStopped = $Report.stoppedProcessIds.Count -gt 0 + Write-Host 'Stopped the complete packaged desktop smoke process tree after successful launch validation.' } if (-not [string]::IsNullOrWhiteSpace($ReportPath)) diff --git a/scripts/Set-HyperTwistBootstrapLaunchArguments.ps1 b/scripts/Set-HyperTwistBootstrapLaunchArguments.ps1 new file mode 100644 index 0000000..19691a8 --- /dev/null +++ b/scripts/Set-HyperTwistBootstrapLaunchArguments.ps1 @@ -0,0 +1,408 @@ +param( + [Parameter(Mandatory = $true)] + [string]$ExecutablePath, + [string]$ProjectToken = 'UnrealHyperTwist', + [string[]]$AdditionalArguments = @( + '-notraceserver', + '-traceautostart=0' + ), + [string]$ReportPath = '', + [switch]$VerifyOnly +) + +$ErrorActionPreference = 'Stop' + +$RawDataResourceType = 10 +$BootstrapArgumentsResourceId = 202 + +function Write-Utf8JsonFile { + param( + [Parameter(Mandatory = $true)] + [string]$Path, + [Parameter(Mandatory = $true)] + [object]$Value + ) + + $ParentPath = Split-Path -Parent $Path + if (-not [string]::IsNullOrWhiteSpace($ParentPath)) + { + New-Item -ItemType Directory -Force -Path $ParentPath | Out-Null + } + + [System.IO.File]::WriteAllText( + $Path, + ($Value | ConvertTo-Json -Depth 10), + (New-Object System.Text.UTF8Encoding($false)) + ) +} + +if (-not ('HyperTwistBootstrapResources.NativeMethods' -as [type])) +{ + Add-Type -TypeDefinition @' +using System; +using System.Runtime.InteropServices; + +namespace HyperTwistBootstrapResources +{ + public static class NativeMethods + { + [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] + public static extern IntPtr LoadLibraryEx( + string fileName, + IntPtr fileHandle, + uint flags + ); + + [DllImport("kernel32.dll", SetLastError = true)] + public static extern bool FreeLibrary(IntPtr moduleHandle); + + [DllImport("kernel32.dll", SetLastError = true)] + public static extern IntPtr FindResource( + IntPtr moduleHandle, + IntPtr resourceName, + IntPtr resourceType + ); + + [DllImport("kernel32.dll", SetLastError = true)] + public static extern uint SizeofResource( + IntPtr moduleHandle, + IntPtr resourceInfo + ); + + [DllImport("kernel32.dll", SetLastError = true)] + public static extern IntPtr LoadResource( + IntPtr moduleHandle, + IntPtr resourceInfo + ); + + [DllImport("kernel32.dll", SetLastError = true)] + public static extern IntPtr LockResource(IntPtr resourceData); + + [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] + public static extern IntPtr BeginUpdateResource( + string fileName, + bool deleteExistingResources + ); + + [DllImport("kernel32.dll", SetLastError = true)] + public static extern bool UpdateResource( + IntPtr updateHandle, + IntPtr resourceType, + IntPtr resourceName, + ushort language, + byte[] data, + uint dataLength + ); + + [DllImport("kernel32.dll", SetLastError = true)] + public static extern bool EndUpdateResource( + IntPtr updateHandle, + bool discard + ); + } +} +'@ +} + +function New-Win32Exception { + param( + [Parameter(Mandatory = $true)] + [string]$Operation + ) + + $ErrorCode = [Runtime.InteropServices.Marshal]::GetLastWin32Error() + return New-Object ` + -TypeName ComponentModel.Win32Exception ` + -ArgumentList $ErrorCode, "$Operation failed with Win32 error $ErrorCode." +} + +function Get-BootstrapArgumentsResource { + param( + [Parameter(Mandatory = $true)] + [string]$Path + ) + + $LoadLibraryAsDataFile = 0x00000002 + $LoadLibraryAsImageResource = 0x00000020 + $ModuleHandle = [HyperTwistBootstrapResources.NativeMethods]::LoadLibraryEx( + $Path, + [IntPtr]::Zero, + ($LoadLibraryAsDataFile -bor $LoadLibraryAsImageResource) + ) + if ($ModuleHandle -eq [IntPtr]::Zero) + { + throw (New-Win32Exception -Operation "LoadLibraryEx('$Path')") + } + + try + { + $ResourceInfo = [HyperTwistBootstrapResources.NativeMethods]::FindResource( + $ModuleHandle, + [IntPtr]$BootstrapArgumentsResourceId, + [IntPtr]$RawDataResourceType + ) + if ($ResourceInfo -eq [IntPtr]::Zero) + { + throw ( + New-Win32Exception -Operation ( + "FindResource(type=$RawDataResourceType,id=$BootstrapArgumentsResourceId)" + ) + ) + } + + $ResourceSize = [HyperTwistBootstrapResources.NativeMethods]::SizeofResource( + $ModuleHandle, + $ResourceInfo + ) + if ($ResourceSize -eq 0) + { + throw ( + New-Win32Exception -Operation ( + "SizeofResource(type=$RawDataResourceType,id=$BootstrapArgumentsResourceId)" + ) + ) + } + + $LoadedResource = [HyperTwistBootstrapResources.NativeMethods]::LoadResource( + $ModuleHandle, + $ResourceInfo + ) + if ($LoadedResource -eq [IntPtr]::Zero) + { + throw ( + New-Win32Exception -Operation ( + "LoadResource(type=$RawDataResourceType,id=$BootstrapArgumentsResourceId)" + ) + ) + } + + $ResourcePointer = [HyperTwistBootstrapResources.NativeMethods]::LockResource( + $LoadedResource + ) + if ($ResourcePointer -eq [IntPtr]::Zero) + { + throw ( + New-Win32Exception -Operation ( + "LockResource(type=$RawDataResourceType,id=$BootstrapArgumentsResourceId)" + ) + ) + } + + $ResourceBytes = New-Object byte[] $ResourceSize + [Runtime.InteropServices.Marshal]::Copy( + $ResourcePointer, + $ResourceBytes, + 0, + [int]$ResourceSize + ) + return [Text.Encoding]::Unicode.GetString($ResourceBytes).TrimEnd([char]0) + } + finally + { + [void][HyperTwistBootstrapResources.NativeMethods]::FreeLibrary($ModuleHandle) + } +} + +function Set-BootstrapArgumentsResource { + param( + [Parameter(Mandatory = $true)] + [string]$Path, + [Parameter(Mandatory = $true)] + [string]$Value + ) + + $ResourceBytes = [Text.Encoding]::Unicode.GetBytes($Value + [char]0) + $UpdateHandle = [HyperTwistBootstrapResources.NativeMethods]::BeginUpdateResource( + $Path, + $false + ) + if ($UpdateHandle -eq [IntPtr]::Zero) + { + throw (New-Win32Exception -Operation "BeginUpdateResource('$Path')") + } + + $UpdateClosed = $false + try + { + if (-not [HyperTwistBootstrapResources.NativeMethods]::UpdateResource( + $UpdateHandle, + [IntPtr]$RawDataResourceType, + [IntPtr]$BootstrapArgumentsResourceId, + [uint16]0, + $ResourceBytes, + [uint32]$ResourceBytes.Length + )) + { + throw ( + New-Win32Exception -Operation ( + "UpdateResource(type=$RawDataResourceType,id=$BootstrapArgumentsResourceId)" + ) + ) + } + + $UpdateCompleted = [HyperTwistBootstrapResources.NativeMethods]::EndUpdateResource( + $UpdateHandle, + $false + ) + $UpdateClosed = $true + if (-not $UpdateCompleted) + { + throw (New-Win32Exception -Operation "EndUpdateResource('$Path')") + } + } + finally + { + if (-not $UpdateClosed) + { + [void][HyperTwistBootstrapResources.NativeMethods]::EndUpdateResource( + $UpdateHandle, + $true + ) + } + } +} + +if (-not (Test-Path -LiteralPath $ExecutablePath -PathType Leaf)) +{ + throw "HyperTwist bootstrap executable '$ExecutablePath' was not found." +} + +if ([string]::IsNullOrWhiteSpace($ProjectToken)) +{ + throw 'ProjectToken must not be empty.' +} + +$NormalizedAdditionalArguments = @( + $AdditionalArguments | + ForEach-Object { + if ($null -eq $_) + { + return + } + + $_.Trim() + } | + Where-Object { -not [string]::IsNullOrWhiteSpace($_) } +) +foreach ($Argument in $NormalizedAdditionalArguments) +{ + if ($Argument.IndexOf([char]0) -ge 0 ` + -or $Argument.IndexOf("`r") -ge 0 ` + -or $Argument.IndexOf("`n") -ge 0) + { + throw "Bootstrap launch argument '$Argument' contains an unsupported control character." + } +} + +$ResolvedExecutablePath = (Resolve-Path -LiteralPath $ExecutablePath).Path +$ExpectedArguments = @($ProjectToken) + $NormalizedAdditionalArguments +$ExpectedResourceValue = $ExpectedArguments -join ' ' +if ([string]::IsNullOrWhiteSpace($ReportPath)) +{ + $ReportPath = "$ResolvedExecutablePath.bootstrap-launch-arguments.json" +} + +$OriginalHash = (Get-FileHash -LiteralPath $ResolvedExecutablePath -Algorithm SHA256).Hash.ToLowerInvariant() +$OriginalResourceValue = Get-BootstrapArgumentsResource -Path $ResolvedExecutablePath +$Result = [ordered]@{ + reportVersion = 'ht-bootstrap-launch-arguments/v1' + generatedAtUtc = [DateTime]::UtcNow.ToString('o') + executablePath = $ResolvedExecutablePath + resourceType = $RawDataResourceType + resourceId = $BootstrapArgumentsResourceId + verifyOnly = [bool]$VerifyOnly + expectedArguments = @($ExpectedArguments) + expectedResourceValue = $ExpectedResourceValue + originalResourceValue = $OriginalResourceValue + finalResourceValue = $null + originalSha256 = $OriginalHash + finalSha256 = $null + changed = $false + result = 'failed' + error = $null +} + +$TemporaryPath = $null +$BackupPath = $null +try +{ + if ($VerifyOnly) + { + if ($OriginalResourceValue -ne $ExpectedResourceValue) + { + throw ( + "Bootstrap argument resource was '$OriginalResourceValue'; " + + "expected '$ExpectedResourceValue'." + ) + } + } + elseif ($OriginalResourceValue -ne $ExpectedResourceValue) + { + $TemporaryPath = '{0}.bootstrap-{1}-{2}.tmp' -f ( + $ResolvedExecutablePath, + $PID, + [Guid]::NewGuid().ToString('N') + ) + $BackupPath = '{0}.bootstrap-{1}-{2}.bak' -f ( + $ResolvedExecutablePath, + $PID, + [Guid]::NewGuid().ToString('N') + ) + Copy-Item -LiteralPath $ResolvedExecutablePath -Destination $TemporaryPath -Force + Set-BootstrapArgumentsResource -Path $TemporaryPath -Value $ExpectedResourceValue + + $TemporaryResourceValue = Get-BootstrapArgumentsResource -Path $TemporaryPath + if ($TemporaryResourceValue -ne $ExpectedResourceValue) + { + throw ( + "Patched bootstrap argument resource was '$TemporaryResourceValue'; " + + "expected '$ExpectedResourceValue'." + ) + } + + [System.IO.File]::Replace( + $TemporaryPath, + $ResolvedExecutablePath, + $BackupPath, + $true + ) + $TemporaryPath = $null + $Result.changed = $true + } + + $Result.finalResourceValue = Get-BootstrapArgumentsResource -Path $ResolvedExecutablePath + if ($Result.finalResourceValue -ne $ExpectedResourceValue) + { + throw ( + "Final bootstrap argument resource was '$($Result.finalResourceValue)'; " + + "expected '$ExpectedResourceValue'." + ) + } + + $Result.finalSha256 = ( + Get-FileHash -LiteralPath $ResolvedExecutablePath -Algorithm SHA256 + ).Hash.ToLowerInvariant() + $Result.result = 'passed' +} +catch +{ + $Result.error = $_.Exception.Message + throw +} +finally +{ + if (-not [string]::IsNullOrWhiteSpace($TemporaryPath) ` + -and (Test-Path -LiteralPath $TemporaryPath)) + { + Remove-Item -LiteralPath $TemporaryPath -Force -ErrorAction SilentlyContinue + } + if (-not [string]::IsNullOrWhiteSpace($BackupPath) ` + -and (Test-Path -LiteralPath $BackupPath)) + { + Remove-Item -LiteralPath $BackupPath -Force -ErrorAction SilentlyContinue + } + + Write-Utf8JsonFile -Path $ReportPath -Value $Result +} + +$Result | ConvertTo-Json -Depth 10 diff --git a/scripts/Test-HyperTwistPackagedOffscreenVisual.ps1 b/scripts/Test-HyperTwistPackagedOffscreenVisual.ps1 new file mode 100644 index 0000000..a2f15ca --- /dev/null +++ b/scripts/Test-HyperTwistPackagedOffscreenVisual.ps1 @@ -0,0 +1,343 @@ +param( + [Parameter(Mandatory = $true)] + [string]$ExecutablePath, + [Parameter(Mandatory = $true)] + [string]$OutputDirectory, + [string]$TargetMap = '', + [string[]]$ExpectedLogSubstring = @(), + [ValidateSet('Startup', 'RuntimeReady')] + [string]$CaptureTrigger = 'RuntimeReady', + [int]$TimeoutSeconds = 45, + [int]$SampleStride = 6, + [double]$MinimumNonBlackRatio = 0.02, + [double]$MinimumLuminanceDeviation = 2.5, + [double]$MinimumLuminanceRange = 20.0 +) + +$ErrorActionPreference = 'Stop' + +function Write-Utf8JsonFile { + param( + [Parameter(Mandatory = $true)] + [string]$Path, + [Parameter(Mandatory = $true)] + [object]$Value + ) + + $ParentPath = Split-Path -Parent $Path + if (-not [string]::IsNullOrWhiteSpace($ParentPath)) + { + New-Item -ItemType Directory -Force -Path $ParentPath | Out-Null + } + + [System.IO.File]::WriteAllText( + $Path, + ($Value | ConvertTo-Json -Depth 12), + (New-Object System.Text.UTF8Encoding($false)) + ) +} + +function Update-HyperTwistOwnedProcessIds { + param( + [Parameter(Mandatory = $true)] + [System.Collections.Generic.HashSet[int]]$OwnedProcessIds, + [Parameter(Mandatory = $true)] + [string]$ProcessName, + [int[]]$IgnoredProcessIds = @() + ) + + foreach ($Process in @(Get-Process -Name $ProcessName -ErrorAction SilentlyContinue)) + { + if ($IgnoredProcessIds -notcontains $Process.Id) + { + [void]$OwnedProcessIds.Add([int]$Process.Id) + } + } +} + +function Measure-HyperTwistBitmap { + param( + [Parameter(Mandatory = $true)] + [string]$Path, + [int]$Stride = 6 + ) + + Add-Type -AssemblyName System.Drawing + $Bitmap = [System.Drawing.Bitmap]::FromFile($Path) + try + { + $SafeStride = [Math]::Max($Stride, 1) + $SampleCount = 0 + $NonBlackCount = 0 + $LuminanceSum = 0.0 + $LuminanceSquaredSum = 0.0 + $MinimumLuminance = 255.0 + $MaximumLuminance = 0.0 + + for ($Y = 0; $Y -lt $Bitmap.Height; $Y += $SafeStride) + { + for ($X = 0; $X -lt $Bitmap.Width; $X += $SafeStride) + { + $Pixel = $Bitmap.GetPixel($X, $Y) + $Luminance = (0.2126 * $Pixel.R) + (0.7152 * $Pixel.G) + (0.0722 * $Pixel.B) + $SampleCount += 1 + $LuminanceSum += $Luminance + $LuminanceSquaredSum += ($Luminance * $Luminance) + $MinimumLuminance = [Math]::Min($MinimumLuminance, $Luminance) + $MaximumLuminance = [Math]::Max($MaximumLuminance, $Luminance) + if ($Luminance -gt 10.0) + { + $NonBlackCount += 1 + } + } + } + + if ($SampleCount -le 0) + { + throw 'The off-screen frame contained no image samples.' + } + + $AverageLuminance = $LuminanceSum / $SampleCount + $Variance = [Math]::Max( + ($LuminanceSquaredSum / $SampleCount) - ($AverageLuminance * $AverageLuminance), + 0.0 + ) + + return [ordered]@{ + width = $Bitmap.Width + height = $Bitmap.Height + sampleStride = $SafeStride + sampleCount = $SampleCount + nonBlackRatio = $NonBlackCount / $SampleCount + averageLuminance = $AverageLuminance + luminanceDeviation = [Math]::Sqrt($Variance) + minimumLuminance = $MinimumLuminance + maximumLuminance = $MaximumLuminance + luminanceRange = $MaximumLuminance - $MinimumLuminance + } + } + finally + { + $Bitmap.Dispose() + } +} + +if (-not (Test-Path -LiteralPath $ExecutablePath -PathType Leaf)) +{ + throw "HyperTwist executable '$ExecutablePath' does not exist." +} + +New-Item -ItemType Directory -Force -Path $OutputDirectory | Out-Null +$ResolvedExecutablePath = (Resolve-Path -LiteralPath $ExecutablePath).Path +$ResolvedOutputDirectory = (Resolve-Path -LiteralPath $OutputDirectory).Path +$ExecutableDirectory = Split-Path -Parent $ResolvedExecutablePath +$ExecutableProcessName = [System.IO.Path]::GetFileNameWithoutExtension($ResolvedExecutablePath) +$SavedDirectory = Join-Path $ExecutableDirectory 'UnrealHyperTwist\Saved' +$ScreenshotDirectory = if ($CaptureTrigger -eq 'RuntimeReady') +{ + Join-Path $SavedDirectory 'Screenshots\HyperTwistDiagnostics' +} +else +{ + Join-Path $SavedDirectory 'Screenshots\Windows' +} +$RuntimeLogPath = Join-Path $SavedDirectory 'Logs\UnrealHyperTwist.log' +$CapturedFramePath = Join-Path $ResolvedOutputDirectory 'HyperTwist-offscreen-frame.png' +$CapturedLogPath = Join-Path $ResolvedOutputDirectory 'UnrealHyperTwist.log' +$ReportPath = Join-Path $ResolvedOutputDirectory 'HyperTwist-offscreen-visual-report.json' +$ExistingProcessIds = @( + Get-Process -Name $ExecutableProcessName -ErrorAction SilentlyContinue | + Select-Object -ExpandProperty Id +) +$ExistingScreenshotSignatures = @{} +foreach ($ExistingScreenshot in @( + Get-ChildItem -LiteralPath $ScreenshotDirectory -File -ErrorAction SilentlyContinue +)) +{ + $ExistingScreenshotSignatures[$ExistingScreenshot.FullName.ToLowerInvariant()] = + '{0}:{1}' -f $ExistingScreenshot.LastWriteTimeUtc.Ticks, $ExistingScreenshot.Length +} +$OwnedProcessIds = New-Object 'System.Collections.Generic.HashSet[int]' +$LaunchArguments = @() +if (-not [string]::IsNullOrWhiteSpace($TargetMap)) +{ + $LaunchArguments += $TargetMap +} +$LaunchArguments += @( + '-RenderOffScreen', + '-windowed', + '-ResX=1280', + '-ResY=720' +) +if ($CaptureTrigger -eq 'RuntimeReady') +{ + $LaunchArguments += '-HyperTwistCaptureWhenReady' +} +else +{ + $LaunchArguments += '-ExecCmds="SHOT SHOWUI"' +} + +$Result = [ordered]@{ + reportVersion = 'ht-packaged-offscreen-visual/v1' + generatedAtUtc = [DateTime]::UtcNow.ToString('o') + executablePath = $ResolvedExecutablePath + executableSha256 = (Get-FileHash -LiteralPath $ResolvedExecutablePath -Algorithm SHA256).Hash.ToLowerInvariant() + targetMap = $TargetMap + captureTrigger = $CaptureTrigger + launchArguments = @($LaunchArguments) + expectedLogSubstrings = @($ExpectedLogSubstring) + matchedLogSubstrings = @() + screenshotPath = $CapturedFramePath + screenshotSha256 = $null + runtimeLogPath = $CapturedLogPath + metrics = $null + thresholds = [ordered]@{ + minimumNonBlackRatio = $MinimumNonBlackRatio + minimumLuminanceDeviation = $MinimumLuminanceDeviation + minimumLuminanceRange = $MinimumLuminanceRange + } + processIds = @() + terminatedProcessIds = @() + result = 'failed' + error = $null +} + +$LaunchedProcess = $null + +try +{ + $LaunchStartedAtUtc = [DateTime]::UtcNow + $LaunchedProcess = Start-Process ` + -FilePath $ResolvedExecutablePath ` + -ArgumentList $LaunchArguments ` + -WorkingDirectory $ExecutableDirectory ` + -PassThru + [void]$OwnedProcessIds.Add($LaunchedProcess.Id) + + $Deadline = $LaunchStartedAtUtc.AddSeconds([Math]::Max($TimeoutSeconds, 1)) + $FreshScreenshot = $null + $RuntimeLog = '' + while ([DateTime]::UtcNow -lt $Deadline) + { + Update-HyperTwistOwnedProcessIds ` + -OwnedProcessIds $OwnedProcessIds ` + -ProcessName $ExecutableProcessName ` + -IgnoredProcessIds $ExistingProcessIds + + $FreshScreenshot = Get-ChildItem -LiteralPath $ScreenshotDirectory -File -ErrorAction SilentlyContinue | + Where-Object { + $ScreenshotKey = $_.FullName.ToLowerInvariant() + $CurrentSignature = '{0}:{1}' -f $_.LastWriteTimeUtc.Ticks, $_.Length + -not $ExistingScreenshotSignatures.ContainsKey($ScreenshotKey) ` + -or $ExistingScreenshotSignatures[$ScreenshotKey] -ne $CurrentSignature + } | + Sort-Object LastWriteTimeUtc -Descending | + Select-Object -First 1 + + if (Test-Path -LiteralPath $RuntimeLogPath) + { + $RuntimeLogItem = Get-Item -LiteralPath $RuntimeLogPath + if ($RuntimeLogItem.LastWriteTimeUtc -ge $LaunchStartedAtUtc.AddSeconds(-1)) + { + $LoadedRuntimeLog = Get-Content -LiteralPath $RuntimeLogPath -Raw + $RuntimeLog = if ($null -eq $LoadedRuntimeLog) + { + '' + } + else + { + [string]$LoadedRuntimeLog + } + } + } + + $MatchedLogSubstrings = @( + $ExpectedLogSubstring | + Where-Object { + $RuntimeLog.IndexOf($_, [System.StringComparison]::Ordinal) -ge 0 + } + ) + $Result.matchedLogSubstrings = @($MatchedLogSubstrings) + + if ($null -ne $FreshScreenshot ` + -and $MatchedLogSubstrings.Count -eq $ExpectedLogSubstring.Count) + { + break + } + + $LiveOwnedProcesses = @( + $OwnedProcessIds | + ForEach-Object { Get-Process -Id $_ -ErrorAction SilentlyContinue } | + Where-Object { $null -ne $_ } + ) + if ($LiveOwnedProcesses.Count -eq 0) + { + throw 'HyperTwist exited before off-screen visual validation completed.' + } + + Start-Sleep -Milliseconds 500 + } + + if ($null -eq $FreshScreenshot) + { + throw "HyperTwist did not write a fresh UI-inclusive screenshot within $TimeoutSeconds seconds." + } + if ($Result.matchedLogSubstrings.Count -ne $ExpectedLogSubstring.Count) + { + $MissingLogSubstrings = @( + $ExpectedLogSubstring | + Where-Object { $Result.matchedLogSubstrings -notcontains $_ } + ) + throw "The current runtime log omitted required markers: $($MissingLogSubstrings -join '; ')" + } + if ($RuntimeLog -match '(?im)Fatal error:|Unhandled Exception|Assertion failed|CreateSwapChainResult failed') + { + throw 'The current runtime log contains a fatal startup signature.' + } + + Copy-Item -LiteralPath $FreshScreenshot.FullName -Destination $CapturedFramePath -Force + Copy-Item -LiteralPath $RuntimeLogPath -Destination $CapturedLogPath -Force + $Result.screenshotSha256 = ( + Get-FileHash -LiteralPath $CapturedFramePath -Algorithm SHA256 + ).Hash.ToLowerInvariant() + $Result.metrics = Measure-HyperTwistBitmap -Path $CapturedFramePath -Stride $SampleStride + if ($Result.metrics.nonBlackRatio -lt $MinimumNonBlackRatio ` + -or $Result.metrics.luminanceDeviation -lt $MinimumLuminanceDeviation ` + -or $Result.metrics.luminanceRange -lt $MinimumLuminanceRange) + { + throw 'The UI-inclusive off-screen frame did not satisfy the configured visual thresholds.' + } + + $Result.processIds = @($OwnedProcessIds | Sort-Object) + $Result.result = 'passed' +} +catch +{ + $Result.error = $_.Exception.Message +} +finally +{ + Update-HyperTwistOwnedProcessIds ` + -OwnedProcessIds $OwnedProcessIds ` + -ProcessName $ExecutableProcessName ` + -IgnoredProcessIds $ExistingProcessIds + foreach ($ProcessId in @($OwnedProcessIds | Sort-Object -Descending)) + { + $Process = Get-Process -Id $ProcessId -ErrorAction SilentlyContinue + if ($null -ne $Process) + { + Stop-Process -Id $ProcessId -Force -ErrorAction SilentlyContinue + $Result.terminatedProcessIds += $ProcessId + } + } + + Write-Utf8JsonFile -Path $ReportPath -Value $Result +} + +if ($Result.result -ne 'passed') +{ + throw $Result.error +} + +Write-Output "HyperTwist off-screen visual validation passed: $ReportPath" diff --git a/scripts/Test-HyperTwistPackagedWindowVisual.ps1 b/scripts/Test-HyperTwistPackagedWindowVisual.ps1 new file mode 100644 index 0000000..e529abb --- /dev/null +++ b/scripts/Test-HyperTwistPackagedWindowVisual.ps1 @@ -0,0 +1,939 @@ +param( + [Parameter(Mandatory = $true)] + [string]$ExecutablePath, + [Parameter(Mandatory = $true)] + [string]$OutputDirectory, + [string[]]$LaunchArguments = @( + '-windowed', + '-ResX=1280', + '-ResY=720' + ), + [int]$StartupTimeoutSeconds = 45, + [int]$LayoutSettleSeconds = 5, + [int]$SampleStride = 6, + [double]$MinimumNonBlackRatio = 0.02, + [double]$MinimumBrightRatio = 0.001, + [double]$MinimumLuminanceDeviation = 2.5, + [double]$MinimumLuminanceRange = 20.0, + [double]$ClickNormalizedX = -1.0, + [double]$ClickNormalizedY = -1.0, + [ValidateSet('PhysicalMouse', 'WindowMessage')] + [string]$ClickInjectionMode = 'PhysicalMouse', + [int]$PostClickSettleSeconds = 5, + [string]$ExpectedWindowClassName = 'UnrealWindow', + [string]$ExpectedStartupDiagnosticsResult = '', + [string]$ExpectedSemanticReadyCaptureName = '', + [int]$SemanticReadyCaptureTimeoutSeconds = 30, + [switch]$KeepProcess +) + +$ErrorActionPreference = 'Stop' + +function Write-Utf8JsonFile { + param( + [Parameter(Mandatory = $true)] + [string]$Path, + [Parameter(Mandatory = $true)] + [object]$Value + ) + + $ParentPath = Split-Path -Parent $Path + if (-not [string]::IsNullOrWhiteSpace($ParentPath)) + { + New-Item -ItemType Directory -Force -Path $ParentPath | Out-Null + } + + [System.IO.File]::WriteAllText( + $Path, + ($Value | ConvertTo-Json -Depth 12), + (New-Object System.Text.UTF8Encoding($false)) + ) +} + +function Write-HyperTwistVisualCheckpoint { + param( + [Parameter(Mandatory = $true)] + [string]$Path, + [Parameter(Mandatory = $true)] + [string]$Stage + ) + + $Line = "{0}`t{1}{2}" -f ` + [DateTime]::UtcNow.ToString('o'), ` + $Stage, ` + [Environment]::NewLine + [System.IO.File]::AppendAllText( + $Path, + $Line, + (New-Object System.Text.UTF8Encoding($false)) + ) +} + +function Get-HyperTwistClientBounds { + param( + [Parameter(Mandatory = $true)] + [IntPtr]$WindowHandle + ) + + $ClientRect = New-Object HyperTwistVisualGate.NativeMethods+RECT + if (-not [HyperTwistVisualGate.NativeMethods]::GetClientRect($WindowHandle, [ref]$ClientRect)) + { + throw 'GetClientRect failed for the HyperTwist window.' + } + + $ClientOrigin = New-Object HyperTwistVisualGate.NativeMethods+POINT + $ClientOrigin.X = 0 + $ClientOrigin.Y = 0 + if (-not [HyperTwistVisualGate.NativeMethods]::ClientToScreen($WindowHandle, [ref]$ClientOrigin)) + { + throw 'ClientToScreen failed for the HyperTwist window.' + } + + return [ordered]@{ + x = $ClientOrigin.X + y = $ClientOrigin.Y + width = $ClientRect.Right - $ClientRect.Left + height = $ClientRect.Bottom - $ClientRect.Top + } +} + +function Set-HyperTwistWindowForeground { + param( + [Parameter(Mandatory = $true)] + [IntPtr]$WindowHandle, + [switch]$RequireForeground + ) + + for ($Attempt = 1; $Attempt -le 3; $Attempt += 1) + { + [void][HyperTwistVisualGate.NativeMethods]::ShowWindowAsync($WindowHandle, 9) + # Pulse topmost status to expose an obscured game window, then restore + # normal z-order before capture. + [void][HyperTwistVisualGate.NativeMethods]::SetWindowPos( + $WindowHandle, + [IntPtr](-1), + 0, + 0, + 0, + 0, + 0x0043 + ) + [void][HyperTwistVisualGate.NativeMethods]::SetWindowPos( + $WindowHandle, + [IntPtr](-2), + 0, + 0, + 0, + 0, + 0x0043 + ) + [void][HyperTwistVisualGate.NativeMethods]::BringWindowToTop($WindowHandle) + [void][HyperTwistVisualGate.NativeMethods]::SetForegroundWindow($WindowHandle) + Start-Sleep -Milliseconds 300 + if ([HyperTwistVisualGate.NativeMethods]::GetForegroundWindow() -eq $WindowHandle) + { + return "topmost-attempt-$Attempt" + } + + Start-Sleep -Milliseconds 300 + } + + if ($RequireForeground) + { + throw 'Could not focus the HyperTwist window before interactive visual capture.' + } + + return 'topmost-foreground-unconfirmed' +} + +function Measure-HyperTwistBitmap { + param( + [Parameter(Mandatory = $true)] + [System.Drawing.Bitmap]$Bitmap, + [int]$Stride = 6 + ) + + $SafeStride = [Math]::Max($Stride, 1) + $SampleCount = 0 + $NonBlackCount = 0 + $BrightCount = 0 + $LuminanceSum = 0.0 + $LuminanceSquaredSum = 0.0 + $MinimumLuminance = 255.0 + $MaximumLuminance = 0.0 + $ColorBuckets = New-Object 'System.Collections.Generic.HashSet[string]' + + for ($Y = 0; $Y -lt $Bitmap.Height; $Y += $SafeStride) + { + for ($X = 0; $X -lt $Bitmap.Width; $X += $SafeStride) + { + $Pixel = $Bitmap.GetPixel($X, $Y) + $Luminance = (0.2126 * $Pixel.R) + (0.7152 * $Pixel.G) + (0.0722 * $Pixel.B) + $SampleCount += 1 + $LuminanceSum += $Luminance + $LuminanceSquaredSum += ($Luminance * $Luminance) + $MinimumLuminance = [Math]::Min($MinimumLuminance, $Luminance) + $MaximumLuminance = [Math]::Max($MaximumLuminance, $Luminance) + if ($Luminance -gt 10.0) + { + $NonBlackCount += 1 + } + if ($Luminance -gt 35.0) + { + $BrightCount += 1 + } + + $Bucket = '{0}-{1}-{2}' -f ` + [Math]::Floor($Pixel.R / 16), ` + [Math]::Floor($Pixel.G / 16), ` + [Math]::Floor($Pixel.B / 16) + [void]$ColorBuckets.Add($Bucket) + } + } + + if ($SampleCount -le 0) + { + throw 'The captured HyperTwist client image contained no samples.' + } + + $AverageLuminance = $LuminanceSum / $SampleCount + $Variance = [Math]::Max( + ($LuminanceSquaredSum / $SampleCount) - ($AverageLuminance * $AverageLuminance), + 0.0 + ) + + return [ordered]@{ + sampleStride = $SafeStride + sampleCount = $SampleCount + nonBlackRatio = $NonBlackCount / $SampleCount + brightRatio = $BrightCount / $SampleCount + averageLuminance = $AverageLuminance + luminanceDeviation = [Math]::Sqrt($Variance) + minimumLuminance = $MinimumLuminance + maximumLuminance = $MaximumLuminance + luminanceRange = $MaximumLuminance - $MinimumLuminance + quantizedColorBucketCount = $ColorBuckets.Count + } +} + +function Update-HyperTwistOwnedProcessIds { + param( + [Parameter(Mandatory = $true)] + [AllowEmptyCollection()] + [System.Collections.Generic.HashSet[int]]$OwnedProcessIds, + [Parameter(Mandatory = $true)] + [string]$ResolvedExecutableRoot, + [int[]]$IgnoredProcessIds = @() + ) + + $RootPrefix = $ResolvedExecutableRoot.TrimEnd( + [System.IO.Path]::DirectorySeparatorChar, + [System.IO.Path]::AltDirectorySeparatorChar + ) + [System.IO.Path]::DirectorySeparatorChar + $ProcessSnapshots = @(Get-CimInstance Win32_Process -ErrorAction SilentlyContinue) + foreach ($ProcessSnapshot in $ProcessSnapshots) + { + $ExecutablePath = [string]$ProcessSnapshot.ExecutablePath + if ($IgnoredProcessIds -notcontains [int]$ProcessSnapshot.ProcessId ` + -and ([string]$ProcessSnapshot.Name) -like 'UnrealHyperTwist*.exe' ` + -and -not [string]::IsNullOrWhiteSpace($ExecutablePath) ` + -and $ExecutablePath.StartsWith( + $RootPrefix, + [System.StringComparison]::OrdinalIgnoreCase + )) + { + [void]$OwnedProcessIds.Add([int]$ProcessSnapshot.ProcessId) + } + } + + # Preserve ownership across the bootstrap-to-Shipping handoff even when + # Windows temporarily withholds a child's ExecutablePath during startup. + $AddedDescendant = $true + while ($AddedDescendant) + { + $AddedDescendant = $false + foreach ($ProcessSnapshot in $ProcessSnapshots) + { + if ($IgnoredProcessIds -notcontains [int]$ProcessSnapshot.ProcessId ` + -and $OwnedProcessIds.Contains([int]$ProcessSnapshot.ParentProcessId) ` + -and $OwnedProcessIds.Add([int]$ProcessSnapshot.ProcessId)) + { + $AddedDescendant = $true + } + } + } +} + +if (-not (Test-Path -LiteralPath $ExecutablePath -PathType Leaf)) +{ + throw "HyperTwist executable '$ExecutablePath' does not exist." +} + +New-Item -ItemType Directory -Force -Path $OutputDirectory | Out-Null +$ResolvedExecutablePath = (Resolve-Path -LiteralPath $ExecutablePath).Path +$ResolvedOutputDirectory = (Resolve-Path -LiteralPath $OutputDirectory).Path +$ExecutableDirectory = Split-Path -Parent $ResolvedExecutablePath +$CaptureToken = [DateTime]::UtcNow.ToString('yyyyMMddTHHmmssZ') +$ScreenshotPath = Join-Path $ResolvedOutputDirectory "HyperTwist-window-$CaptureToken.png" +$ReportPath = Join-Path $ResolvedOutputDirectory "HyperTwist-window-$CaptureToken.json" +$ProgressPath = Join-Path $ResolvedOutputDirectory "HyperTwist-window-$CaptureToken.progress.log" +$RuntimeDiagnosticsPath = Join-Path $ResolvedOutputDirectory "HyperTwist-window-$CaptureToken.hyperdiagnostics.log" +$EffectiveLaunchArguments = @($LaunchArguments) +if (-not @($EffectiveLaunchArguments | Where-Object { + $_ -like '-HyperTwistDiagnosticsLog=*' +}).Count) +{ + $EffectiveLaunchArguments += "-HyperTwistDiagnosticsLog=`"$RuntimeDiagnosticsPath`"" +} +$SemanticReadyCaptureCandidates = @() +if (-not [string]::IsNullOrWhiteSpace($ExpectedSemanticReadyCaptureName)) +{ + if ([System.IO.Path]::GetFileName($ExpectedSemanticReadyCaptureName) ` + -ne $ExpectedSemanticReadyCaptureName ` + -or [System.IO.Path]::GetExtension($ExpectedSemanticReadyCaptureName) -ne '.png') + { + throw 'ExpectedSemanticReadyCaptureName must be one PNG file name without a path.' + } + + $SemanticReadyCaptureCandidates = @( + (Join-Path ` + $env:LOCALAPPDATA ` + "UnrealHyperTwist\Saved\Screenshots\HyperTwistDiagnostics\$ExpectedSemanticReadyCaptureName"), + (Join-Path ` + $ExecutableDirectory ` + "UnrealHyperTwist\Saved\Screenshots\HyperTwistDiagnostics\$ExpectedSemanticReadyCaptureName"), + (Join-Path ` + $ExecutableDirectory ` + "Saved\Screenshots\HyperTwistDiagnostics\$ExpectedSemanticReadyCaptureName") + ) | Select-Object -Unique +} +$ExistingOwnedProcessIds = New-Object 'System.Collections.Generic.HashSet[int]' +Update-HyperTwistOwnedProcessIds ` + -OwnedProcessIds $ExistingOwnedProcessIds ` + -ResolvedExecutableRoot $ExecutableDirectory +$ExistingProcessIds = @($ExistingOwnedProcessIds) + +Add-Type -AssemblyName System.Drawing +if (-not ('HyperTwistVisualGate.NativeMethods' -as [type])) +{ + Add-Type -TypeDefinition @' +using System; +using System.Runtime.InteropServices; +using System.Text; + +namespace HyperTwistVisualGate +{ + public static class NativeMethods + { + [StructLayout(LayoutKind.Sequential)] + public struct RECT + { + public int Left; + public int Top; + public int Right; + public int Bottom; + } + + [StructLayout(LayoutKind.Sequential)] + public struct POINT + { + public int X; + public int Y; + } + + [DllImport("user32.dll")] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool GetClientRect(IntPtr hWnd, ref RECT lpRect); + + [DllImport("user32.dll")] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool ClientToScreen(IntPtr hWnd, ref POINT lpPoint); + + [DllImport("user32.dll")] + public static extern IntPtr SetThreadDpiAwarenessContext(IntPtr dpiContext); + + [DllImport("user32.dll")] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool SetForegroundWindow(IntPtr hWnd); + + [DllImport("user32.dll")] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow); + + [DllImport("user32.dll")] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool BringWindowToTop(IntPtr hWnd); + + [DllImport("user32.dll")] + public static extern IntPtr GetForegroundWindow(); + + [DllImport("user32.dll")] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool SetWindowPos( + IntPtr hWnd, + IntPtr hWndInsertAfter, + int x, + int y, + int cx, + int cy, + uint flags + ); + + [DllImport("user32.dll")] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool SetCursorPos(int x, int y); + + [DllImport("user32.dll")] + public static extern void mouse_event( + uint dwFlags, + uint dx, + uint dy, + uint dwData, + UIntPtr dwExtraInfo + ); + + [DllImport("user32.dll")] + public static extern IntPtr SendMessage( + IntPtr hWnd, + uint msg, + IntPtr wParam, + IntPtr lParam + ); + + [DllImport("user32.dll", CharSet = CharSet.Auto)] + private static extern int GetClassName( + IntPtr hWnd, + StringBuilder lpClassName, + int nMaxCount + ); + + public static string ReadWindowClassName(IntPtr hWnd) + { + var className = new StringBuilder(256); + return GetClassName(hWnd, className, className.Capacity) > 0 + ? className.ToString() + : String.Empty; + } + } +} +'@ +} + +# CopyFromScreen uses physical pixels. Match the calling thread to modern UE +# per-monitor DPI coordinates so the measured rectangle cannot drift onto the +# surrounding desktop at display scaling values above 100 percent. +$PreviousDpiAwarenessContext = [HyperTwistVisualGate.NativeMethods]::SetThreadDpiAwarenessContext( + [IntPtr](-4) +) +if ($PreviousDpiAwarenessContext -eq [IntPtr]::Zero) +{ + throw 'Could not enable per-monitor-v2 DPI awareness for the visual capture thread.' +} + +$Result = [ordered]@{ + reportVersion = 'ht-packaged-window-visual/v2' + generatedAtUtc = [DateTime]::UtcNow.ToString('o') + launchStartedAtUtc = $null + executablePath = $ResolvedExecutablePath + executableSha256 = (Get-FileHash -LiteralPath $ResolvedExecutablePath -Algorithm SHA256).Hash.ToLowerInvariant() + launchArguments = @($EffectiveLaunchArguments) + perMonitorV2DpiAware = $true + processId = $null + windowTitle = $null + windowClassName = $null + expectedWindowClassName = $ExpectedWindowClassName + clientBounds = $null + screenshotPath = $ScreenshotPath + progressPath = $ProgressPath + screenshotSha256 = $null + captureMethod = $null + expectedSemanticReadyCaptureName = $ExpectedSemanticReadyCaptureName + semanticReadyCaptureSourcePath = $null + semanticReadyCaptureSourceSha256 = $null + metrics = $null + thresholds = [ordered]@{ + minimumNonBlackRatio = $MinimumNonBlackRatio + minimumBrightRatio = $MinimumBrightRatio + minimumLuminanceDeviation = $MinimumLuminanceDeviation + minimumLuminanceRange = $MinimumLuminanceRange + } + interaction = [ordered]@{ + requested = $ClickNormalizedX -ge 0.0 -or $ClickNormalizedY -ge 0.0 + normalizedX = $ClickNormalizedX + normalizedY = $ClickNormalizedY + screenX = $null + screenY = $null + clientX = $null + clientY = $null + injectionMethod = $null + clicked = $false + expectedStartupDiagnosticsResult = $ExpectedStartupDiagnosticsResult + } + startupDiagnosticsPath = $null + startupDiagnosticsLastWriteUtc = $null + startupDiagnosticsResult = $null + runtimeDiagnosticsPath = $RuntimeDiagnosticsPath + runtimeDiagnosticsExists = $false + runtimeDiagnosticsLines = @() + processCommandLines = @() + ownedListeningTcpEndpoints = @() + traceControlListenerLines = @() + traceControlListeningEndpoints = @() + focusMethod = $null + result = 'failed' + error = $null +} + +$LaunchedProcess = $null +$WindowProcess = $null +$OwnedProcessIds = New-Object 'System.Collections.Generic.HashSet[int]' + +try +{ + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'launch-starting' + $LaunchStartedAtUtc = [DateTime]::UtcNow + $Result.launchStartedAtUtc = $LaunchStartedAtUtc.ToString('o') + $LaunchedProcess = Start-Process ` + -FilePath $ResolvedExecutablePath ` + -ArgumentList $EffectiveLaunchArguments ` + -WorkingDirectory $ExecutableDirectory ` + -PassThru + [void]$OwnedProcessIds.Add($LaunchedProcess.Id) + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'launch-process-started' + + $Deadline = [DateTime]::UtcNow.AddSeconds([Math]::Max($StartupTimeoutSeconds, 1)) + while ([DateTime]::UtcNow -lt $Deadline) + { + Update-HyperTwistOwnedProcessIds ` + -OwnedProcessIds $OwnedProcessIds ` + -ResolvedExecutableRoot $ExecutableDirectory ` + -IgnoredProcessIds $ExistingProcessIds + $CandidateProcesses = @($OwnedProcessIds) | + Where-Object { $ExistingProcessIds -notcontains $_ } | + ForEach-Object { Get-Process -Id $_ -ErrorAction SilentlyContinue } | + Where-Object { $null -ne $_ } + foreach ($Candidate in $CandidateProcesses) + { + [void]$OwnedProcessIds.Add($Candidate.Id) + $Candidate.Refresh() + if ($Candidate.MainWindowHandle -ne [IntPtr]::Zero) + { + $CandidateWindowClass = [HyperTwistVisualGate.NativeMethods]::ReadWindowClassName( + $Candidate.MainWindowHandle + ) + if ($CandidateWindowClass -eq 'ConsoleWindowClass') + { + continue + } + if (-not [string]::IsNullOrWhiteSpace($ExpectedWindowClassName) ` + -and $CandidateWindowClass -ne $ExpectedWindowClassName) + { + continue + } + $WindowProcess = $Candidate + break + } + } + + if ($null -ne $WindowProcess) + { + break + } + if ($LaunchedProcess.HasExited) + { + throw "HyperTwist exited with code $($LaunchedProcess.ExitCode) before creating a window." + } + + Start-Sleep -Milliseconds 500 + } + + if ($null -eq $WindowProcess) + { + throw "HyperTwist did not expose a top-level window within $StartupTimeoutSeconds seconds." + } + + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'window-detected' + Start-Sleep -Seconds ([Math]::Max($LayoutSettleSeconds, 0)) + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'initial-layout-settled' + $WindowProcess.Refresh() + if ($WindowProcess.HasExited -or $WindowProcess.MainWindowHandle -eq [IntPtr]::Zero) + { + throw 'The HyperTwist window closed before visual capture.' + } + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'initial-window-refreshed' + + $Bounds = Get-HyperTwistClientBounds -WindowHandle $WindowProcess.MainWindowHandle + if ($Bounds.width -lt 320 -or $Bounds.height -lt 200) + { + throw "HyperTwist exposed an invalid client area ($($Bounds.width)x$($Bounds.height))." + } + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'initial-bounds-measured' + $InteractionRequested = $ClickNormalizedX -ge 0.0 -or $ClickNormalizedY -ge 0.0 + $Result.focusMethod = Set-HyperTwistWindowForeground ` + -WindowHandle $WindowProcess.MainWindowHandle ` + -RequireForeground:$InteractionRequested + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'initial-window-focused' + + if ($InteractionRequested) + { + if ($ClickNormalizedX -lt 0.0 -or $ClickNormalizedX -gt 1.0 ` + -or $ClickNormalizedY -lt 0.0 -or $ClickNormalizedY -gt 1.0) + { + throw 'Provide both normalized click coordinates within the inclusive range 0.0 to 1.0.' + } + + $ClickX = [int][Math]::Round( + $Bounds.x + ([Math]::Max($Bounds.width - 1, 0) * $ClickNormalizedX) + ) + $ClickY = [int][Math]::Round( + $Bounds.y + ([Math]::Max($Bounds.height - 1, 0) * $ClickNormalizedY) + ) + $ClientClickX = [int][Math]::Round( + [Math]::Max($Bounds.width - 1, 0) * $ClickNormalizedX + ) + $ClientClickY = [int][Math]::Round( + [Math]::Max($Bounds.height - 1, 0) * $ClickNormalizedY + ) + if (-not [HyperTwistVisualGate.NativeMethods]::SetCursorPos($ClickX, $ClickY)) + { + throw 'Could not position the cursor for the requested HyperTwist interaction.' + } + Start-Sleep -Milliseconds 300 + + if ($ClickInjectionMode -eq 'PhysicalMouse') + { + [HyperTwistVisualGate.NativeMethods]::mouse_event( + 0x0002, + 0, + 0, + 0, + [UIntPtr]::Zero + ) + Start-Sleep -Milliseconds 75 + [HyperTwistVisualGate.NativeMethods]::mouse_event( + 0x0004, + 0, + 0, + 0, + [UIntPtr]::Zero + ) + $Result.interaction.injectionMethod = 'physical-mouse-event' + } + else + { + $PackedClientPoint = [IntPtr]( + (($ClientClickY -band 0xffff) -shl 16) ` + -bor ($ClientClickX -band 0xffff) + ) + [void][HyperTwistVisualGate.NativeMethods]::SendMessage( + $WindowProcess.MainWindowHandle, + 0x0200, + [IntPtr]::Zero, + $PackedClientPoint + ) + [void][HyperTwistVisualGate.NativeMethods]::SendMessage( + $WindowProcess.MainWindowHandle, + 0x0201, + [IntPtr](1), + $PackedClientPoint + ) + Start-Sleep -Milliseconds 75 + [void][HyperTwistVisualGate.NativeMethods]::SendMessage( + $WindowProcess.MainWindowHandle, + 0x0202, + [IntPtr]::Zero, + $PackedClientPoint + ) + $Result.interaction.injectionMethod = 'window-client-message' + } + $Result.interaction.screenX = $ClickX + $Result.interaction.screenY = $ClickY + $Result.interaction.clientX = $ClientClickX + $Result.interaction.clientY = $ClientClickY + $Result.interaction.clicked = $true + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'interaction-injected' + Start-Sleep -Seconds ([Math]::Max($PostClickSettleSeconds, 0)) + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'post-interaction-settled' + + $WindowProcess.Refresh() + if ($WindowProcess.HasExited -or $WindowProcess.MainWindowHandle -eq [IntPtr]::Zero) + { + throw 'The HyperTwist window closed after the requested interaction.' + } + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'post-interaction-window-refreshed' + $Bounds = Get-HyperTwistClientBounds -WindowHandle $WindowProcess.MainWindowHandle + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'post-interaction-bounds-measured' + } + # The initial focus is retained through physical interaction. Refocusing + # after OpenLevel is both redundant and unsafe because Windows can block an + # activation request while Unreal is replacing its viewport. + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'capture-window-ready' + + $SemanticReadyCaptureSourcePath = $null + if ($SemanticReadyCaptureCandidates.Count -gt 0) + { + Write-HyperTwistVisualCheckpoint ` + -Path $ProgressPath ` + -Stage 'semantic-ready-capture-waiting' + $SemanticReadyCaptureDeadline = [DateTime]::UtcNow.AddSeconds( + [Math]::Max($SemanticReadyCaptureTimeoutSeconds, 1) + ) + while ([DateTime]::UtcNow -lt $SemanticReadyCaptureDeadline) + { + $SemanticReadyCaptureSourcePath = $SemanticReadyCaptureCandidates | + Where-Object { + (Test-Path -LiteralPath $_ -PathType Leaf) ` + -and (Get-Item -LiteralPath $_).Length -gt 0 ` + -and (Get-Item -LiteralPath $_).LastWriteTimeUtc ` + -ge $LaunchStartedAtUtc.AddSeconds(-2) + } | + Select-Object -First 1 + if (-not [string]::IsNullOrWhiteSpace($SemanticReadyCaptureSourcePath)) + { + break + } + + Start-Sleep -Milliseconds 250 + } + + if ([string]::IsNullOrWhiteSpace($SemanticReadyCaptureSourcePath)) + { + throw ( + "HyperTwist did not write fresh semantic-ready frame " + + "'$ExpectedSemanticReadyCaptureName' within " + + "$SemanticReadyCaptureTimeoutSeconds seconds." + ) + } + Write-HyperTwistVisualCheckpoint ` + -Path $ProgressPath ` + -Stage 'semantic-ready-capture-detected' + } + + if (-not [string]::IsNullOrWhiteSpace($SemanticReadyCaptureSourcePath)) + { + $SemanticReadyImage = [System.Drawing.Image]::FromFile( + $SemanticReadyCaptureSourcePath + ) + try + { + $Bitmap = New-Object System.Drawing.Bitmap($SemanticReadyImage) + } + finally + { + $SemanticReadyImage.Dispose() + } + $Result.captureMethod = 'hyper-twist-semantic-ready-frame' + $Result.semanticReadyCaptureSourcePath = $SemanticReadyCaptureSourcePath + $Result.semanticReadyCaptureSourceSha256 = ( + Get-FileHash ` + -LiteralPath $SemanticReadyCaptureSourcePath ` + -Algorithm SHA256 + ).Hash.ToLowerInvariant() + } + else + { + $Bitmap = New-Object System.Drawing.Bitmap( + $Bounds.width, + $Bounds.height, + [System.Drawing.Imaging.PixelFormat]::Format32bppArgb + ) + $Result.captureMethod = 'physical-client-screen-copy' + } + + try + { + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'capture-bitmap-created' + if ([string]::IsNullOrWhiteSpace($SemanticReadyCaptureSourcePath)) + { + $Graphics = [System.Drawing.Graphics]::FromImage($Bitmap) + try + { + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'screen-copy-starting' + $Graphics.CopyFromScreen( + $Bounds.x, + $Bounds.y, + 0, + 0, + (New-Object System.Drawing.Size($Bounds.width, $Bounds.height)), + [System.Drawing.CopyPixelOperation]::SourceCopy + ) + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'screen-copy-complete' + } + finally + { + $Graphics.Dispose() + } + } + + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'bitmap-measurement-starting' + $Metrics = Measure-HyperTwistBitmap -Bitmap $Bitmap -Stride $SampleStride + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'bitmap-measurement-complete' + $Bitmap.Save($ScreenshotPath, [System.Drawing.Imaging.ImageFormat]::Png) + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'screenshot-saved' + } + finally + { + $Bitmap.Dispose() + } + + $Result.processId = $WindowProcess.Id + $Result.windowTitle = $WindowProcess.MainWindowTitle + $Result.windowClassName = [HyperTwistVisualGate.NativeMethods]::ReadWindowClassName( + $WindowProcess.MainWindowHandle + ) + if (-not [string]::IsNullOrWhiteSpace($ExpectedWindowClassName) ` + -and $Result.windowClassName -ne $ExpectedWindowClassName) + { + throw ( + "Expected window class '$ExpectedWindowClassName' but observed " + + "'$($Result.windowClassName)'." + ) + } + $Result.clientBounds = $Bounds + $Result.screenshotSha256 = (Get-FileHash -LiteralPath $ScreenshotPath -Algorithm SHA256).Hash.ToLowerInvariant() + $Result.metrics = $Metrics + + $StartupDiagnosticsCandidates = @( + (Join-Path $ExecutableDirectory 'UnrealHyperTwist\Saved\Logs\HyperTwistFirstRunLaunch-latest.log'), + (Join-Path $ExecutableDirectory 'Windows\UnrealHyperTwist\Saved\Logs\HyperTwistFirstRunLaunch-latest.log'), + (Join-Path $env:LOCALAPPDATA 'UnrealHyperTwist\Saved\Logs\HyperTwistFirstRunLaunch-latest.log') + ) + $StartupDiagnosticsPath = $StartupDiagnosticsCandidates | + Where-Object { + (Test-Path -LiteralPath $_ -PathType Leaf) ` + -and (Get-Item -LiteralPath $_).LastWriteTimeUtc -ge $LaunchStartedAtUtc.AddSeconds(-2) + } | + Select-Object -First 1 + if (-not [string]::IsNullOrWhiteSpace($StartupDiagnosticsPath)) + { + $Result.startupDiagnosticsPath = $StartupDiagnosticsPath + $Result.startupDiagnosticsLastWriteUtc = ( + Get-Item -LiteralPath $StartupDiagnosticsPath + ).LastWriteTimeUtc.ToString('o') + # Detach provider metadata before JSON serialization; decorated FileSystem + # strings otherwise expand recursively under Windows PowerShell 5.1. + $Result.startupDiagnosticsResult = [string]( + Get-Content -LiteralPath $StartupDiagnosticsPath | + ForEach-Object { $_.ToString() } | + Where-Object { $_ -like 'result=*' } | + Select-Object -Last 1 + ) + } + + if (-not [string]::IsNullOrWhiteSpace($ExpectedStartupDiagnosticsResult) ` + -and $Result.startupDiagnosticsResult -ne "result=$ExpectedStartupDiagnosticsResult") + { + throw ( + "Expected startup diagnostics result '$ExpectedStartupDiagnosticsResult' but observed " + + "'$($Result.startupDiagnosticsResult)'." + ) + } + + $Result.runtimeDiagnosticsExists = Test-Path -LiteralPath $RuntimeDiagnosticsPath -PathType Leaf + if (-not $Result.runtimeDiagnosticsExists) + { + throw 'HyperTwist did not write its direct Shipping-compatible runtime diagnostics file.' + } + $Result.runtimeDiagnosticsLines = @( + Get-Content -LiteralPath $RuntimeDiagnosticsPath | + ForEach-Object { $_.ToString() } + ) + if (-not @($Result.runtimeDiagnosticsLines | Where-Object { + $_ -like '*HyperTwist runtime module initialized.*' + }).Count) + { + throw 'HyperTwist direct diagnostics did not confirm runtime-module initialization.' + } + + Update-HyperTwistOwnedProcessIds ` + -OwnedProcessIds $OwnedProcessIds ` + -ResolvedExecutableRoot $ExecutableDirectory ` + -IgnoredProcessIds $ExistingProcessIds + $OwnedProcessIdSnapshot = [int[]]@($OwnedProcessIds) + $Result.processCommandLines = @( + foreach ($OwnedProcessId in $OwnedProcessIdSnapshot) + { + Get-CimInstance Win32_Process ` + -Filter "ProcessId = $OwnedProcessId" ` + -ErrorAction SilentlyContinue | + ForEach-Object { [string]$_.CommandLine } + } + ) | Where-Object { -not [string]::IsNullOrWhiteSpace($_) } + $Result.ownedListeningTcpEndpoints = @( + Get-NetTCPConnection -State Listen -ErrorAction SilentlyContinue | + Where-Object { $OwnedProcessIdSnapshot -contains [int]$_.OwningProcess } | + Sort-Object OwningProcess, LocalPort | + ForEach-Object { + [pscustomobject][ordered]@{ + processId = [int]$_.OwningProcess + localAddress = [string]$_.LocalAddress + localPort = [int]$_.LocalPort + } + } + ) + $Result.traceControlListenerLines = @( + $Result.runtimeDiagnosticsLines | + Where-Object { + $_.IndexOf( + 'Control listening on port', + [System.StringComparison]::OrdinalIgnoreCase + ) -ge 0 + } + ) + $Result.traceControlListeningEndpoints = @( + $Result.ownedListeningTcpEndpoints | + Where-Object { [int]$_.localPort -eq 1985 } + ) + if ($Result.traceControlListenerLines.Count -gt 0 ` + -or $Result.traceControlListeningEndpoints.Count -gt 0) + { + throw 'HyperTwist opened a Development trace-control listener during the visual gate.' + } + + $VisualPassed = $Metrics.nonBlackRatio -ge $MinimumNonBlackRatio ` + -and $Metrics.brightRatio -ge $MinimumBrightRatio ` + -and $Metrics.luminanceDeviation -ge $MinimumLuminanceDeviation ` + -and $Metrics.luminanceRange -ge $MinimumLuminanceRange + if (-not $VisualPassed) + { + throw ( + 'HyperTwist client capture is blank or visually uniform: ' + + "nonBlack=$($Metrics.nonBlackRatio), bright=$($Metrics.brightRatio), " + + "deviation=$($Metrics.luminanceDeviation), range=$($Metrics.luminanceRange)." + ) + } + + $Result.result = 'visual-passed' + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'visual-gate-passed' +} +catch +{ + $Result.error = $_.Exception.Message + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'visual-gate-failed' +} +finally +{ + if (-not $KeepProcess) + { + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'owned-process-scan-starting' + Update-HyperTwistOwnedProcessIds ` + -OwnedProcessIds $OwnedProcessIds ` + -ResolvedExecutableRoot $ExecutableDirectory ` + -IgnoredProcessIds $ExistingProcessIds + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'owned-process-scan-complete' + foreach ($OwnedProcessId in @($OwnedProcessIds)) + { + Stop-Process -Id $OwnedProcessId -Force -ErrorAction SilentlyContinue + } + Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'owned-process-cleanup-complete' + } +} + +Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'report-write-starting' +Write-Utf8JsonFile -Path $ReportPath -Value $Result +Write-HyperTwistVisualCheckpoint -Path $ProgressPath -Stage 'report-write-complete' +$Result | ConvertTo-Json -Depth 12 +if ($Result.result -ne 'visual-passed') +{ + throw $Result.error +} diff --git a/scripts/hypertwist_author_classic_cube_training_maps.py b/scripts/hypertwist_author_classic_cube_training_maps.py index 7390fd5..fc94e8e 100644 --- a/scripts/hypertwist_author_classic_cube_training_maps.py +++ b/scripts/hypertwist_author_classic_cube_training_maps.py @@ -1,4 +1,6 @@ import os +import json +import datetime import traceback import unreal @@ -9,6 +11,7 @@ MATERIAL_ROOT = "/Game/HyperTwistTraining/Materials" CLASSIC_MAP_PATH = f"{MAP_ROOT}/L_HyperTwist_ClassicTraining" FOLLOW_ALONG_MAP_PATH = f"{MAP_ROOT}/L_HyperTwist_FollowAlongTraining" AUTHOR_TAG = "HyperTwistClassicCubeTrainingMap" +AUTHORING_MARKER_PATH = os.getenv("HYPERTWIST_CLASSIC_CUBE_AUTHORING_MARKER", "").strip() SAFE_TRANSIENT_LEVEL_PATH = "/Engine/Maps/Entry" MASTER_MATERIAL_PATH = f"{MATERIAL_ROOT}/M_HT_ClassicCubeFaceMaster" INTERNAL_MATERIAL_PATH = f"{MATERIAL_ROOT}/MI_HT_ClassicCube_Internal" @@ -67,78 +70,88 @@ def create_asset(asset_path: str, asset_class, factory): def ensure_face_master_material(): if unreal.EditorAssetLibrary.does_asset_exist(MASTER_MATERIAL_PATH): - return require_asset(MASTER_MATERIAL_PATH) + material = require_asset(MASTER_MATERIAL_PATH) + else: + material = create_asset( + MASTER_MATERIAL_PATH, + unreal.Material, + unreal.MaterialFactoryNew(), + ) + + base_color = unreal.MaterialEditingLibrary.create_material_expression( + material, + unreal.MaterialExpressionVectorParameter, + -640, + -120, + ) + base_color.set_editor_property("parameter_name", "BaseColor") + base_color.set_editor_property("default_value", unreal.LinearColor(1.0, 1.0, 1.0, 1.0)) + + glow_strength = unreal.MaterialEditingLibrary.create_material_expression( + material, + unreal.MaterialExpressionScalarParameter, + -640, + 80, + ) + glow_strength.set_editor_property("parameter_name", "GlowStrength") + glow_strength.set_editor_property("default_value", 0.0) + + face_opacity = unreal.MaterialEditingLibrary.create_material_expression( + material, + unreal.MaterialExpressionScalarParameter, + -640, + 240, + ) + face_opacity.set_editor_property("parameter_name", "FaceOpacity") + face_opacity.set_editor_property("default_value", 1.0) + + emissive = unreal.MaterialEditingLibrary.create_material_expression( + material, + unreal.MaterialExpressionMultiply, + -280, + 0, + ) + unreal.MaterialEditingLibrary.connect_material_expressions(base_color, "", emissive, "A") + unreal.MaterialEditingLibrary.connect_material_expressions(glow_strength, "", emissive, "B") + unreal.MaterialEditingLibrary.connect_material_property( + base_color, + "", + unreal.MaterialProperty.MP_BASE_COLOR, + ) + unreal.MaterialEditingLibrary.connect_material_property( + emissive, + "", + unreal.MaterialProperty.MP_EMISSIVE_COLOR, + ) + + unreal.MaterialEditingLibrary.layout_material_expressions(material) - material = create_asset( - MASTER_MATERIAL_PATH, - unreal.Material, - unreal.MaterialFactoryNew(), - ) material.set_editor_property("two_sided", False) - - base_color = unreal.MaterialEditingLibrary.create_material_expression( - material, - unreal.MaterialExpressionVectorParameter, - -640, - -120, - ) - base_color.set_editor_property("parameter_name", "BaseColor") - base_color.set_editor_property("default_value", unreal.LinearColor(1.0, 1.0, 1.0, 1.0)) - - glow_strength = unreal.MaterialEditingLibrary.create_material_expression( - material, - unreal.MaterialExpressionScalarParameter, - -640, - 80, - ) - glow_strength.set_editor_property("parameter_name", "GlowStrength") - glow_strength.set_editor_property("default_value", 0.0) - - face_opacity = unreal.MaterialEditingLibrary.create_material_expression( - material, - unreal.MaterialExpressionScalarParameter, - -640, - 240, - ) - face_opacity.set_editor_property("parameter_name", "FaceOpacity") - face_opacity.set_editor_property("default_value", 1.0) - - emissive = unreal.MaterialEditingLibrary.create_material_expression( - material, - unreal.MaterialExpressionMultiply, - -280, - 0, - ) - unreal.MaterialEditingLibrary.connect_material_expressions(base_color, "", emissive, "A") - unreal.MaterialEditingLibrary.connect_material_expressions(glow_strength, "", emissive, "B") - unreal.MaterialEditingLibrary.connect_material_property( - base_color, - "", - unreal.MaterialProperty.MP_BASE_COLOR, - ) - unreal.MaterialEditingLibrary.connect_material_property( - emissive, - "", - unreal.MaterialProperty.MP_EMISSIVE_COLOR, - ) - - unreal.MaterialEditingLibrary.layout_material_expressions(material) + # Phase 6C uses the same palette on instanced projection geometry. Without + # this authored usage flag, cooked builds silently substitute a neutral + # fallback shader even though the six material bindings remain non-null. + material.set_editor_property("used_with_instanced_static_meshes", True) unreal.MaterialEditingLibrary.recompile_material(material) if not unreal.EditorAssetLibrary.save_loaded_asset(material, False): raise RuntimeError(f"Failed to save face master material: {MASTER_MATERIAL_PATH}") - log(f"Created face master material {MASTER_MATERIAL_PATH}") + if not material.get_editor_property("used_with_instanced_static_meshes"): + raise RuntimeError( + "Face master material did not retain instanced-static-mesh usage after save." + ) + log(f"Verified face master material and instanced-mesh usage: {MASTER_MATERIAL_PATH}") return material def ensure_material_instance(asset_path: str, parent_material, color: unreal.LinearColor): if unreal.EditorAssetLibrary.does_asset_exist(asset_path): - return require_asset(asset_path) + instance = require_asset(asset_path) + else: + instance = create_asset( + asset_path, + unreal.MaterialInstanceConstant, + unreal.MaterialInstanceConstantFactoryNew(), + ) - instance = create_asset( - asset_path, - unreal.MaterialInstanceConstant, - unreal.MaterialInstanceConstantFactoryNew(), - ) unreal.MaterialEditingLibrary.set_material_instance_parent(instance, parent_material) unreal.MaterialEditingLibrary.set_material_instance_vector_parameter_value( instance, @@ -157,7 +170,7 @@ def ensure_material_instance(asset_path: str, parent_material, color: unreal.Lin ) if not unreal.EditorAssetLibrary.save_loaded_asset(instance, False): raise RuntimeError(f"Failed to save material instance: {asset_path}") - log(f"Created material instance {asset_path}") + log(f"Verified material instance {asset_path}") return instance @@ -194,16 +207,18 @@ def ensure_floor_plane() -> None: floor_actor = spawn_actor( unreal.StaticMeshActor, "HT_ClassicCubeTraining_Floor", - unreal.Vector(0.0, 0.0, -20.0), + unreal.Vector(0.0, 0.0, -24.0), unreal.Rotator(0.0, 0.0, 0.0), ) static_mesh_component = floor_actor.static_mesh_component static_mesh_component.set_editor_property( "static_mesh", - require_asset("/Engine/BasicShapes/Plane.Plane"), + require_asset("/Engine/BasicShapes/Cube.Cube"), ) static_mesh_component.set_editor_property("mobility", unreal.ComponentMobility.STATIC) - floor_actor.set_actor_scale3d(unreal.Vector(14.0, 14.0, 1.0)) + # A thin volumetric floor avoids the zero-extent bounds path that can crash + # UE 5.7 editor automation when a Plane is authored under a headless RHI. + floor_actor.set_actor_scale3d(unreal.Vector(14.0, 14.0, 0.08)) def ensure_directional_light() -> None: @@ -233,6 +248,15 @@ def ensure_skylight() -> None: skylight_component.set_editor_property("intensity", 1.2) +def ensure_sky_atmosphere() -> None: + spawn_actor( + unreal.SkyAtmosphere, + "HT_ClassicCubeTraining_Atmosphere", + unreal.Vector(0.0, 0.0, 0.0), + unreal.Rotator(0.0, 0.0, 0.0), + ) + + def ensure_reflection_capture() -> None: reflection_capture = spawn_actor( unreal.SphereReflectionCapture, @@ -276,6 +300,59 @@ def save_current_level_or_raise(level_subsystem, label: str) -> None: log(f"Saved current level after {label}") +def validate_authored_actor_family(): + actor_subsystem = unreal.get_editor_subsystem(unreal.EditorActorSubsystem) + if actor_subsystem is None: + raise RuntimeError("EditorActorSubsystem was not available for authored-map validation.") + + expected_labels = { + "HT_ClassicCubeTraining_Floor", + "HT_ClassicCubeTraining_Sun", + "HT_ClassicCubeTraining_Sky", + "HT_ClassicCubeTraining_Atmosphere", + "HT_ClassicCubeTraining_Reflection", + "HT_ClassicCubeTraining_PlayerStart", + "HT_ClassicCubeTraining_Cube", + } + actor_labels = { + actor.get_actor_label() + for actor in actor_subsystem.get_all_level_actors() + if actor is not None + } + missing_labels = sorted(expected_labels - actor_labels) + if missing_labels: + raise RuntimeError( + "Authored map is missing required actors: " + ", ".join(missing_labels) + ) + return sorted(expected_labels) + + +def write_completion_marker(target: str, map_asset_path: str, actor_labels) -> None: + if not AUTHORING_MARKER_PATH: + raise RuntimeError( + "HYPERTWIST_CLASSIC_CUBE_AUTHORING_MARKER must identify the transactional completion marker." + ) + + marker_path = os.path.abspath(AUTHORING_MARKER_PATH) + os.makedirs(os.path.dirname(marker_path), exist_ok=True) + marker_payload = { + "schemaVersion": 1, + "stage": "complete", + "target": target, + "mapAssetPath": map_asset_path, + "actorLabels": actor_labels, + "completedAtUtc": datetime.datetime.now(datetime.timezone.utc).isoformat(), + } + temporary_path = marker_path + ".tmp" + with open(temporary_path, "w", encoding="utf-8", newline="\n") as marker_file: + json.dump(marker_payload, marker_file, indent=2, sort_keys=True) + marker_file.write("\n") + marker_file.flush() + os.fsync(marker_file.fileno()) + os.replace(temporary_path, marker_path) + log(f"Wrote transactional completion marker {marker_path}") + + def configure_world_settings(game_mode_class_path: str) -> None: editor_subsystem = unreal.get_editor_subsystem(unreal.UnrealEditorSubsystem) if editor_subsystem is None: @@ -311,7 +388,7 @@ def recreate_level(level_subsystem, map_asset_path: str) -> None: log(f"Created new level {map_asset_path}") -def author_map(map_asset_path: str, game_mode_class_path: str) -> None: +def author_map(map_asset_path: str, game_mode_class_path: str): level_subsystem = unreal.get_editor_subsystem(unreal.LevelEditorSubsystem) if level_subsystem is None: raise RuntimeError("LevelEditorSubsystem was not available.") @@ -326,13 +403,17 @@ def author_map(map_asset_path: str, game_mode_class_path: str) -> None: save_current_level_or_raise(level_subsystem, "directional light placement") ensure_skylight() save_current_level_or_raise(level_subsystem, "skylight placement") + ensure_sky_atmosphere() + save_current_level_or_raise(level_subsystem, "sky-atmosphere placement") ensure_reflection_capture() save_current_level_or_raise(level_subsystem, "reflection capture placement") ensure_player_start() save_current_level_or_raise(level_subsystem, "player start placement") ensure_cube_actor() save_current_level_or_raise(level_subsystem, "cube placement") + actor_labels = validate_authored_actor_family() log(f"Finished authoring {map_asset_path}") + return actor_labels def main() -> None: @@ -371,8 +452,14 @@ def main() -> None: f"Unsupported HYPERTWIST_CLASSIC_CUBE_MAP_KIND value: {requested_map_kind}" ) + if len(targets) != 1: + raise RuntimeError( + "Transactional map authoring requires one target per UnrealEditor process." + ) + for map_asset_path, game_mode_class_path in targets: - author_map(map_asset_path, game_mode_class_path) + actor_labels = author_map(map_asset_path, game_mode_class_path) + write_completion_marker(requested_map_kind, map_asset_path, actor_labels) log("Classic cube authored maps are ready.") diff --git a/scripts/hypertwist_author_higher_dimensional_training_maps.py b/scripts/hypertwist_author_higher_dimensional_training_maps.py index 4c4eeaf..9702811 100644 --- a/scripts/hypertwist_author_higher_dimensional_training_maps.py +++ b/scripts/hypertwist_author_higher_dimensional_training_maps.py @@ -12,7 +12,9 @@ SAFE_TRANSIENT_LEVEL_PATH = "/Engine/Maps/Entry" AUTHOR_TAG = "HyperTwistHigherDimensionalTrainingShell" LEGACY_CLASSIC_AUTHOR_TAG = "HyperTwistClassicCubeTrainingMap" TRAINING_SHELL_CLASS_PATH = "/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingShellActor" -COACH_DASHBOARD_GAME_MODE_PATH = "/Script/UnrealHyperTwist.HyperTwistCoachDashboardGameMode" +HIGHER_DIMENSIONAL_GAME_MODE_PATH = ( + "/Script/UnrealHyperTwist.HyperTwistHigherDimensionalTrainingGameMode" +) ENABLE_HEADLESS_TRAINING_SHELL_ACTOR = ( os.getenv("HYPERTWIST_ENABLE_TRAINING_SHELL_ACTOR", "").strip().lower() in {"1", "true", "yes"} @@ -30,6 +32,12 @@ MANIFEST_RELATIVE_PATH = os.path.join( "phase6c_dedicated_family_map_manifest.json", ) MANIFEST_ABSOLUTE_PATH = os.path.join(PROJECT_ROOT, MANIFEST_RELATIVE_PATH) +AUTHORING_RECEIPT_DIRECTORY = os.path.join( + PROJECT_ROOT, + "UnrealHyperTwist", + "Saved", + "HyperTwistMapAuthoring", +) MAP_CONFIGS = ( { @@ -61,10 +69,6 @@ MAP_CONFIGS = ( "projection_profile_id": "magic120cell-4d-projection-distance-v1", "primary_persistence_boundary_id": "magic120cell-persistence-boundary", "player_start_location": unreal.Vector(-560.0, 0.0, 190.0), - "sun_location": unreal.Vector(-340.0, 120.0, 470.0), - "sun_rotation": unreal.Rotator(-34.0, -22.0, 0.0), - "sun_intensity": 7.6, - "floor_scale": unreal.Vector(18.0, 18.0, 1.0), "shell_location": unreal.Vector(0.0, 0.0, 0.0), "shell_rotation": unreal.Rotator(0.0, 22.0, 0.0), "training_shell_tags": [ @@ -104,10 +108,6 @@ MAP_CONFIGS = ( "projection_profile_id": "magiccube5d-5d-projection-distance-v1", "primary_persistence_boundary_id": "magiccube5d-persistence-boundary", "player_start_location": unreal.Vector(-620.0, -120.0, 200.0), - "sun_location": unreal.Vector(-260.0, -200.0, 500.0), - "sun_rotation": unreal.Rotator(-38.0, 34.0, 0.0), - "sun_intensity": 8.8, - "floor_scale": unreal.Vector(20.0, 20.0, 1.0), "shell_location": unreal.Vector(0.0, 0.0, 0.0), "shell_rotation": unreal.Rotator(0.0, -18.0, 0.0), "training_shell_tags": [ @@ -125,13 +125,6 @@ def log(message: str) -> None: unreal.log(f"[HyperTwistHigherDimensionalMapAuthoring] {message}") -def require_asset(asset_path: str): - asset = unreal.EditorAssetLibrary.load_asset(asset_path) - if asset is None: - raise RuntimeError(f"Required asset was not found: {asset_path}") - return asset - - def require_class(class_path: str): loaded_class = unreal.load_class(None, class_path) if loaded_class is None: @@ -277,62 +270,6 @@ def configure_world_settings(game_mode_class_path: str) -> None: world_settings.set_editor_property("default_game_mode", require_class(game_mode_class_path)) -def ensure_floor_plane(config) -> None: - floor_actor = spawn_actor( - unreal.StaticMeshActor, - f"HT_{config['family_key']}_Floor", - unreal.Vector(0.0, 0.0, -20.0), - unreal.Rotator(0.0, 0.0, 0.0), - ) - static_mesh_component = floor_actor.static_mesh_component - static_mesh_component.set_editor_property( - "static_mesh", - require_asset("/Engine/BasicShapes/Plane.Plane"), - ) - static_mesh_component.set_editor_property("mobility", unreal.ComponentMobility.STATIC) - floor_actor.set_actor_scale3d(config["floor_scale"]) - - -def ensure_directional_light(config) -> None: - directional_light = spawn_actor( - unreal.DirectionalLight, - f"HT_{config['family_key']}_Sun", - config["sun_location"], - config["sun_rotation"], - ) - light_component = directional_light.get_component_by_class(unreal.DirectionalLightComponent) - if light_component is not None: - light_component.set_editor_property("mobility", unreal.ComponentMobility.MOVABLE) - light_component.set_editor_property("intensity", config["sun_intensity"]) - - -def ensure_skylight(config) -> None: - skylight = spawn_actor( - unreal.SkyLight, - f"HT_{config['family_key']}_Sky", - unreal.Vector(0.0, 0.0, 260.0), - unreal.Rotator(0.0, 0.0, 0.0), - ) - skylight_component = skylight.get_component_by_class(unreal.SkyLightComponent) - if skylight_component is not None: - skylight_component.set_editor_property("mobility", unreal.ComponentMobility.MOVABLE) - skylight_component.set_editor_property("real_time_capture", True) - skylight_component.set_editor_property( - "intensity", - 1.35 if config["family_key"] == "magic120cell" else 1.55, - ) - - -def ensure_reflection_capture(config) -> None: - reflection_capture = spawn_actor( - unreal.SphereReflectionCapture, - f"HT_{config['family_key']}_Reflection", - unreal.Vector(0.0, 0.0, 150.0), - unreal.Rotator(0.0, 0.0, 0.0), - ) - reflection_capture.set_actor_scale3d(unreal.Vector(14.0, 14.0, 14.0)) - - def ensure_player_start(config) -> None: player_start = spawn_actor( unreal.PlayerStart, @@ -446,6 +383,70 @@ def compute_md5(file_path: str) -> str: return digest.hexdigest() +def get_target_receipt_absolute_path(config) -> str: + return os.path.join( + AUTHORING_RECEIPT_DIRECTORY, + f"phase6c_{config['map_kind']}_complete.json", + ) + + +def validate_authored_map(config): + actor_subsystem = unreal.get_editor_subsystem(unreal.EditorActorSubsystem) + editor_subsystem = unreal.get_editor_subsystem(unreal.UnrealEditorSubsystem) + if actor_subsystem is None or editor_subsystem is None: + raise RuntimeError("Editor subsystems were unavailable during authored-map validation.") + + actor_labels = { + actor.get_actor_label() + for actor in actor_subsystem.get_all_level_actors() + if actor is not None + } + expected_actor_labels = {f"HT_{config['family_key']}_DedicatedSurfaceAnchor"} + missing_actor_labels = sorted(expected_actor_labels - actor_labels) + if missing_actor_labels: + raise RuntimeError( + "Authored map is missing required presentation actors: " + + ", ".join(missing_actor_labels) + ) + + world = editor_subsystem.get_editor_world() + world_settings = world.get_world_settings() if world is not None else None + game_mode_class = ( + world_settings.get_editor_property("default_game_mode") + if world_settings is not None + else None + ) + if game_mode_class is None or game_mode_class.get_name() != "HyperTwistHigherDimensionalTrainingGameMode": + raise RuntimeError("Authored map does not own the dedicated higher-dimensional game mode.") + + return sorted(expected_actor_labels) + + +def write_target_completion_receipt(config, actor_labels) -> None: + map_file_absolute_path = resolve_map_file_absolute_path(config) + if not os.path.exists(map_file_absolute_path): + raise RuntimeError( + f"Cannot write completion receipt because the authored map is missing: {map_file_absolute_path}" + ) + + os.makedirs(AUTHORING_RECEIPT_DIRECTORY, exist_ok=True) + receipt_path = get_target_receipt_absolute_path(config) + receipt = { + "schemaVersion": "hypertwist/phase6c-map-authoring-receipt/v1", + "mapKind": config["map_kind"], + "mapAssetPath": config["map_asset_path"], + "mapHashMd5": compute_md5(map_file_absolute_path), + "gameModeClassPath": HIGHER_DIMENSIONAL_GAME_MODE_PATH, + "presentationEnvironmentOwnership": "runtime-game-mode-and-shell-components", + "validatedActorLabels": actor_labels, + "authoringComplete": True, + } + with open(receipt_path, "w", encoding="utf-8") as handle: + json.dump(receipt, handle, indent=2) + handle.write("\n") + log(f"Wrote hash-bound completion receipt to {receipt_path}") + + def ensure_manifest_directory() -> None: os.makedirs(os.path.dirname(MANIFEST_ABSOLUTE_PATH), exist_ok=True) @@ -478,7 +479,12 @@ def build_manifest_entries(): "primaryPersistenceBoundaryId": config["primary_persistence_boundary_id"], "authorTag": AUTHOR_TAG, "authoringManifestRelativePath": MANIFEST_RELATIVE_PATH.replace("\\", "/"), - "authoredViaGameModeClassPath": COACH_DASHBOARD_GAME_MODE_PATH, + "authoredViaGameModeClassPath": HIGHER_DIMENSIONAL_GAME_MODE_PATH, + "runtimePresentationClassPath": TRAINING_SHELL_CLASS_PATH, + "presentationEnvironmentOwnership": "runtime-game-mode-and-shell-components", + "canonicalRenderableElementCount": ( + 120 if config["family_key"] == "magic120cell" else 242 + ), "trainingShellTags": config["training_shell_tags"], } ) @@ -497,10 +503,10 @@ def write_manifest() -> None: ) manifest = { "manifestId": "phase6c/dedicated-family-training-map-authoring", - "manifestVersion": "2026.06.18", + "manifestVersion": "2026.07.19", "authorTag": AUTHOR_TAG, "authoringScriptRelativePath": "scripts/hypertwist_author_higher_dimensional_training_maps.py", - "authoredThroughGameModeClassPath": COACH_DASHBOARD_GAME_MODE_PATH, + "authoredThroughGameModeClassPath": HIGHER_DIMENSIONAL_GAME_MODE_PATH, "classicReferenceMapHashMd5": ( compute_md5(classic_map_absolute_path) if os.path.exists(classic_map_absolute_path) @@ -522,26 +528,34 @@ def author_map(config) -> None: log(f"Starting authored rebuild for {config['map_asset_path']}") recreate_level(level_subsystem, config) log("Created clean target level") - configure_world_settings(COACH_DASHBOARD_GAME_MODE_PATH) - log("Configured dedicated training-shell game mode") + save_current_level_or_raise(level_subsystem, "clean level recreation") + configure_world_settings(HIGHER_DIMENSIONAL_GAME_MODE_PATH) + log("Configured dedicated higher-dimensional runtime game mode") save_current_level_or_raise( level_subsystem, f"{config['family_key']} dedicated training-shell game mode", ) + ensure_player_start(config) + save_current_level_or_raise(level_subsystem, "dedicated surface-anchor placement") + log( + "Placed dedicated surface anchor; floor, lighting, and projection presentation " + "are self-healing runtime-owned surfaces" + ) if ENABLE_HEADLESS_TRAINING_SHELL_ACTOR: ensure_training_shell_actor(config) + save_current_level_or_raise(level_subsystem, "dedicated training-shell actor placement") log("Placed dedicated training shell actor") else: log( - "Skipped dedicated training shell actor on the headless authoring lane " - "because custom actor placement still crashes UnrealEditor-Cmd here" + "Skipped dedicated training shell actor on the headless authoring lane; " + "the dedicated game mode owns deterministic runtime spawning" ) - ensure_player_start(config) - log("Placed dedicated surface anchor") save_current_level_or_raise( level_subsystem, - f"{config['family_key']} dedicated shell surfaces", + f"{config['family_key']} final dedicated shell surfaces", ) + validated_actor_labels = validate_authored_map(config) + write_target_completion_receipt(config, validated_actor_labels) log(f"Finished authoring {config['map_asset_path']}") diff --git a/scripts/run-hypertwist-remote-windows-file-pull.sh b/scripts/run-hypertwist-remote-windows-file-pull.sh index 73fb280..6a1e28f 100644 --- a/scripts/run-hypertwist-remote-windows-file-pull.sh +++ b/scripts/run-hypertwist-remote-windows-file-pull.sh @@ -75,23 +75,17 @@ ps_single_quote() { } write_base64_to_file() { - local base64_payload="$1" - local destination_path="$2" + local destination_path="$1" - python3 - <<'PY' "$base64_payload" "$destination_path" + python3 -c ' import base64 import pathlib import sys -payload = sys.argv[1] -destination = pathlib.Path(sys.argv[2]) +destination = pathlib.Path(sys.argv[1]) destination.parent.mkdir(parents=True, exist_ok=True) - -if payload: - destination.write_bytes(base64.b64decode(payload.encode("ascii"))) -else: - destination.write_bytes(b"") -PY +destination.write_bytes(base64.b64decode(sys.stdin.buffer.read())) +' "$destination_path" } for mapping in "${maps[@]}"; do @@ -149,7 +143,7 @@ EOF | tr -d '\n' )" - write_base64_to_file "$base64_payload" "$local_destination" + printf '%s' "$base64_payload" | write_base64_to_file "$local_destination" local_hash="$(sha256sum "$local_destination" | awk '{print tolower($1)}')" if [[ "$local_hash" != "$remote_hash" ]]; then diff --git a/scripts/run-hypertwist-remote-windows-file-sync.sh b/scripts/run-hypertwist-remote-windows-file-sync.sh index afd8ca5..f5dd718 100644 --- a/scripts/run-hypertwist-remote-windows-file-sync.sh +++ b/scripts/run-hypertwist-remote-windows-file-sync.sh @@ -36,6 +36,11 @@ if ! command -v sha256sum >/dev/null 2>&1; then exit 1 fi +if ! command -v scp >/dev/null 2>&1; then + echo "scp is required but was not found on PATH." >&2 + exit 1 +fi + if ! command -v python3 >/dev/null 2>&1; then echo "python3 is required but was not found on PATH." >&2 exit 1 @@ -96,30 +101,30 @@ sys.stdout.write(base64.b64encode(script.encode("utf-16le")).decode("ascii")) PY } -stream_file_as_base64() { - local file_path="$1" - - python3 - <<'PY' "$file_path" -import base64 -import pathlib -import sys - -file_path = pathlib.Path(sys.argv[1]) -sys.stdout.write(base64.b64encode(file_path.read_bytes()).decode("ascii")) -PY +ps_single_quote() { + printf "'%s'" "${1//\'/\'\'}" } -measure_base64_length() { - local file_path="$1" +ssh_base=( + sshpass -p "${HYPERTWIST_REMOTE_WINDOWS_PASSWORD}" + ssh + -o StrictHostKeyChecking=no + -o PreferredAuthentications=password + -o PubkeyAuthentication=no + -p "${remote_port}" + -l "${remote_user}" + "${remote_host}" +) - python3 - <<'PY' "$file_path" -import pathlib -import sys - -size = pathlib.Path(sys.argv[1]).stat().st_size -sys.stdout.write(str(((size + 2) // 3) * 4)) -PY -} +scp_base=( + sshpass -p "${HYPERTWIST_REMOTE_WINDOWS_PASSWORD}" + scp + -q + -o StrictHostKeyChecking=no + -o PreferredAuthentications=password + -o PubkeyAuthentication=no + -P "${remote_port}" +) for relative_path in "${files[@]}"; do if [[ "$relative_path" = /* ]]; then @@ -135,59 +140,57 @@ for relative_path in "${files[@]}"; do windows_relative_path="${relative_path//\//\\}" windows_dest_path="${remote_root}\\${windows_relative_path}" local_hash="$(sha256sum "$relative_path" | awk '{print tolower($1)}')" - expected_base64_length="$(measure_base64_length "$relative_path")" + windows_incoming_path="${windows_dest_path}.hypertwist-incoming-${local_hash:0:12}" if [[ "$dry_run" == "true" ]]; then printf '%s -> %s (%s)\n' "$relative_path" "$windows_dest_path" "$local_hash" continue fi - ssh_base=( - sshpass -p "${HYPERTWIST_REMOTE_WINDOWS_PASSWORD}" - ssh - -o StrictHostKeyChecking=no - -o PreferredAuthentications=password - -o PubkeyAuthentication=no - -p "${remote_port}" - -l "${remote_user}" - "${remote_host}" - ) - - remote_write_script="$( + remote_prepare_script="$( cat </dev/null + + incoming_scp_path="${windows_incoming_path//\\//}" + "${scp_base[@]}" \ + "$relative_path" \ + "${remote_user}@${remote_host}:${incoming_scp_path}" + + remote_finalize_script="$( + cat <

    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ξ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