From 466909af99a8c70a48c3a21d778d3b98b11f3c41 Mon Sep 17 00:00:00 2001 From: james7132 Date: Thu, 20 May 2021 06:40:02 -0700 Subject: [PATCH] feature: Add Steamworks integration via bevy-steamworks --- .cargo/config.toml | 5 + Cargo.lock | 1461 +- Cargo.toml | 2 +- README.md | 10 + game/Cargo.toml | 1 + lib/steam/public/steam/isteamapplist.h | 67 + lib/steam/public/steam/isteamapps.h | 217 + lib/steam/public/steam/isteamappticket.h | 28 + lib/steam/public/steam/isteamclient.h | 179 + lib/steam/public/steam/isteamcontroller.h | 636 + lib/steam/public/steam/isteamfriends.h | 693 + .../public/steam/isteamgamecoordinator.h | 74 + lib/steam/public/steam/isteamgameserver.h | 376 + .../public/steam/isteamgameserverstats.h | 114 + lib/steam/public/steam/isteamhtmlsurface.h | 480 + lib/steam/public/steam/isteamhttp.h | 219 + lib/steam/public/steam/isteaminput.h | 688 + lib/steam/public/steam/isteaminventory.h | 448 + .../public/steam/isteammasterserverupdater.h | 1 + lib/steam/public/steam/isteammatchmaking.h | 1087 ++ lib/steam/public/steam/isteammusic.h | 71 + lib/steam/public/steam/isteammusicremote.h | 133 + lib/steam/public/steam/isteamnetworking.h | 343 + .../public/steam/isteamnetworkingmessages.h | 199 + .../public/steam/isteamnetworkingsockets.h | 801 + .../public/steam/isteamnetworkingutils.h | 458 + .../public/steam/isteamparentalsettings.h | 63 + .../public/steam/isteamps3overlayrenderer.h | 91 + lib/steam/public/steam/isteamremoteplay.h | 88 + lib/steam/public/steam/isteamremotestorage.h | 688 + lib/steam/public/steam/isteamscreenshots.h | 120 + lib/steam/public/steam/isteamugc.h | 571 + lib/steam/public/steam/isteamuser.h | 410 + lib/steam/public/steam/isteamuserstats.h | 488 + lib/steam/public/steam/isteamutils.h | 305 + lib/steam/public/steam/isteamvideo.h | 68 + .../lib/linux32/libsdkencryptedappticket.so | Bin 0 -> 1130574 bytes .../lib/linux64/libsdkencryptedappticket.so | Bin 0 -> 1024182 bytes .../lib/osx/libsdkencryptedappticket.dylib | Bin 0 -> 1755472 bytes .../steam/lib/win32/sdkencryptedappticket.dll | Bin 0 -> 631072 bytes .../steam/lib/win32/sdkencryptedappticket.lib | Bin 0 -> 5956 bytes .../lib/win64/sdkencryptedappticket64.dll | Bin 0 -> 796960 bytes .../lib/win64/sdkencryptedappticket64.lib | Bin 0 -> 5954 bytes lib/steam/public/steam/matchmakingtypes.h | 251 + lib/steam/public/steam/steam_api.h | 297 + lib/steam/public/steam/steam_api.json | 13499 ++++++++++++++++ lib/steam/public/steam/steam_api_common.h | 235 + lib/steam/public/steam/steam_api_flat.h | 1088 ++ lib/steam/public/steam/steam_api_internal.h | 408 + lib/steam/public/steam/steam_gameserver.h | 114 + lib/steam/public/steam/steamclientpublic.h | 1519 ++ .../public/steam/steamdatagram_tickets.h | 286 + .../public/steam/steamencryptedappticket.h | 40 + lib/steam/public/steam/steamhttpenums.h | 99 + lib/steam/public/steam/steamnetworkingtypes.h | 1628 ++ lib/steam/public/steam/steamps3params.h | 112 + lib/steam/public/steam/steamtypes.h | 263 + lib/steam/public/steam/steamuniverse.h | 27 + .../linux32/libsteam_api.so | Bin 0 -> 409801 bytes .../linux64/libsteam_api.so | Bin 0 -> 404759 bytes .../osx/libsteam_api.dylib | Bin 0 -> 453312 bytes lib/steam/redistributable_bin/steam_api.dll | Bin 0 -> 239904 bytes lib/steam/redistributable_bin/steam_api.lib | Bin 0 -> 354776 bytes .../redistributable_bin/win64/steam_api64.dll | Bin 0 -> 265504 bytes .../redistributable_bin/win64/steam_api64.lib | Bin 0 -> 351730 bytes 65 files changed, 31371 insertions(+), 178 deletions(-) create mode 100644 .cargo/config.toml create mode 100644 lib/steam/public/steam/isteamapplist.h create mode 100644 lib/steam/public/steam/isteamapps.h create mode 100644 lib/steam/public/steam/isteamappticket.h create mode 100644 lib/steam/public/steam/isteamclient.h create mode 100644 lib/steam/public/steam/isteamcontroller.h create mode 100644 lib/steam/public/steam/isteamfriends.h create mode 100644 lib/steam/public/steam/isteamgamecoordinator.h create mode 100644 lib/steam/public/steam/isteamgameserver.h create mode 100644 lib/steam/public/steam/isteamgameserverstats.h create mode 100644 lib/steam/public/steam/isteamhtmlsurface.h create mode 100644 lib/steam/public/steam/isteamhttp.h create mode 100644 lib/steam/public/steam/isteaminput.h create mode 100644 lib/steam/public/steam/isteaminventory.h create mode 100644 lib/steam/public/steam/isteammasterserverupdater.h create mode 100644 lib/steam/public/steam/isteammatchmaking.h create mode 100644 lib/steam/public/steam/isteammusic.h create mode 100644 lib/steam/public/steam/isteammusicremote.h create mode 100644 lib/steam/public/steam/isteamnetworking.h create mode 100644 lib/steam/public/steam/isteamnetworkingmessages.h create mode 100644 lib/steam/public/steam/isteamnetworkingsockets.h create mode 100644 lib/steam/public/steam/isteamnetworkingutils.h create mode 100644 lib/steam/public/steam/isteamparentalsettings.h create mode 100644 lib/steam/public/steam/isteamps3overlayrenderer.h create mode 100644 lib/steam/public/steam/isteamremoteplay.h create mode 100644 lib/steam/public/steam/isteamremotestorage.h create mode 100644 lib/steam/public/steam/isteamscreenshots.h create mode 100644 lib/steam/public/steam/isteamugc.h create mode 100644 lib/steam/public/steam/isteamuser.h create mode 100644 lib/steam/public/steam/isteamuserstats.h create mode 100644 lib/steam/public/steam/isteamutils.h create mode 100644 lib/steam/public/steam/isteamvideo.h create mode 100644 lib/steam/public/steam/lib/linux32/libsdkencryptedappticket.so create mode 100644 lib/steam/public/steam/lib/linux64/libsdkencryptedappticket.so create mode 100644 lib/steam/public/steam/lib/osx/libsdkencryptedappticket.dylib create mode 100644 lib/steam/public/steam/lib/win32/sdkencryptedappticket.dll create mode 100644 lib/steam/public/steam/lib/win32/sdkencryptedappticket.lib create mode 100644 lib/steam/public/steam/lib/win64/sdkencryptedappticket64.dll create mode 100644 lib/steam/public/steam/lib/win64/sdkencryptedappticket64.lib create mode 100644 lib/steam/public/steam/matchmakingtypes.h create mode 100644 lib/steam/public/steam/steam_api.h create mode 100644 lib/steam/public/steam/steam_api.json create mode 100644 lib/steam/public/steam/steam_api_common.h create mode 100644 lib/steam/public/steam/steam_api_flat.h create mode 100644 lib/steam/public/steam/steam_api_internal.h create mode 100644 lib/steam/public/steam/steam_gameserver.h create mode 100644 lib/steam/public/steam/steamclientpublic.h create mode 100644 lib/steam/public/steam/steamdatagram_tickets.h create mode 100644 lib/steam/public/steam/steamencryptedappticket.h create mode 100644 lib/steam/public/steam/steamhttpenums.h create mode 100644 lib/steam/public/steam/steamnetworkingtypes.h create mode 100644 lib/steam/public/steam/steamps3params.h create mode 100644 lib/steam/public/steam/steamtypes.h create mode 100644 lib/steam/public/steam/steamuniverse.h create mode 100644 lib/steam/redistributable_bin/linux32/libsteam_api.so create mode 100644 lib/steam/redistributable_bin/linux64/libsteam_api.so create mode 100644 lib/steam/redistributable_bin/osx/libsteam_api.dylib create mode 100644 lib/steam/redistributable_bin/steam_api.dll create mode 100644 lib/steam/redistributable_bin/steam_api.lib create mode 100644 lib/steam/redistributable_bin/win64/steam_api64.dll create mode 100644 lib/steam/redistributable_bin/win64/steam_api64.lib diff --git a/.cargo/config.toml b/.cargo/config.toml new file mode 100644 index 0000000..4dfec32 --- /dev/null +++ b/.cargo/config.toml @@ -0,0 +1,5 @@ +[unstable] +configurable-env = true + +[env] +STEAM_SDK_LOCATION = { value = "lib/steam", relative = true, force = true } \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index 53b7717..903dbf4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -22,6 +22,12 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9fe5e32de01730eb1f6b7f5b51c17e03e2325bf40a74f754f04f130043affff" +[[package]] +name = "adler32" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" + [[package]] name = "ahash" version = "0.4.7" @@ -34,7 +40,7 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f200cbb1e856866d9eade941cf3aa0c5d7dd36f74311c4273b494f4ef036957" dependencies = [ - "getrandom", + "getrandom 0.2.3", "once_cell", "version_check", ] @@ -48,6 +54,28 @@ dependencies = [ "memchr", ] +[[package]] +name = "alsa" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75c4da790adcb2ce5e758c064b4f3ec17a30349f9961d3e5e6c9688b052a9e18" +dependencies = [ + "alsa-sys", + "bitflags", + "libc", + "nix", +] + +[[package]] +name = "alsa-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527" +dependencies = [ + "libc", + "pkg-config", +] + [[package]] name = "android_log-sys" version = "0.1.2" @@ -67,11 +95,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8cbd542dd180566fad88fd2729a53a62a734843c626638006a9d63ec0688484e" dependencies = [ "android_log-sys 0.1.2", - "env_logger", + "env_logger 0.7.1", "lazy_static", "log", ] +[[package]] +name = "ansi_term" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" +dependencies = [ + "winapi", +] + [[package]] name = "ansi_term" version = "0.12.1" @@ -159,6 +196,12 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" +[[package]] +name = "base-x" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4521f3e3d031370679b3b140beb36dfe4801b09ac77e30c61941f97df3ef28b" + [[package]] name = "base64" version = "0.13.0" @@ -168,7 +211,7 @@ checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" [[package]] name = "bevy" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ "bevy_internal", ] @@ -179,15 +222,42 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d5f2f58f0aec3c50a20799792c3705e80dd7df327e79791cacec197e84e5e61" +[[package]] +name = "bevy-steamworks" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db9f802d88117c8d5d7a1dec840c6bb5ca47d9da254047341b9a637c9c1cad63" +dependencies = [ + "bevy_app 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bevy_ecs 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bevy_log 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "steamworks", +] + [[package]] name = "bevy_app" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "845be45f00d9c031071f8c68f7681bf791796634efa5f58937275337154cb019" +dependencies = [ + "bevy_derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bevy_ecs 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bevy_reflect", + "bevy_utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "bevy_app" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_derive", - "bevy_ecs", + "bevy_derive 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_reflect", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "serde", "wasm-bindgen", "web-sys", @@ -196,23 +266,23 @@ dependencies = [ [[package]] name = "bevy_asset" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ "anyhow", - "bevy_app", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_diagnostic", - "bevy_ecs", - "bevy_log", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_log 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_reflect", - "bevy_tasks", - "bevy_utils", - "crossbeam-channel", + "bevy_tasks 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "crossbeam-channel 0.5.1", "downcast-rs", "js-sys", - "ndk-glue", + "ndk-glue 0.2.1", "notify", "parking_lot", - "rand", + "rand 0.8.3", "ron", "serde", "thiserror", @@ -221,24 +291,41 @@ dependencies = [ "web-sys", ] +[[package]] +name = "bevy_audio" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" +dependencies = [ + "anyhow", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_asset", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_reflect", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "parking_lot", + "rodio", +] + [[package]] name = "bevy_core" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", - "bevy_derive", - "bevy_ecs", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_derive 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", "bevy_reflect", - "bevy_tasks", - "bevy_utils", + "bevy_tasks 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bytemuck", ] [[package]] name = "bevy_derive" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd6fd06d325cfb4998b26fc84476380611ce6a2d0a8a99b501328c79d7bda104" dependencies = [ "Inflector", "find-crate", @@ -247,35 +334,77 @@ dependencies = [ "syn", ] +[[package]] +name = "bevy_derive" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" +dependencies = [ + "Inflector", + "bevy_macro_utils", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "bevy_diagnostic" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_core", - "bevy_ecs", - "bevy_log", - "bevy_utils", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_log 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "parking_lot", ] +[[package]] +name = "bevy_dynamic_plugin" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" +dependencies = [ + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "libloading", +] + +[[package]] +name = "bevy_ecs" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daf4745460111bd4285ed6c3e6caa4d882db95471edb02b88c6ad4eac89b923c" +dependencies = [ + "async-channel", + "bevy_ecs_macros 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bevy_reflect", + "bevy_tasks 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bevy_utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", + "downcast-rs", + "fixedbitset 0.4.0", + "fxhash", + "parking_lot", + "rand 0.8.3", + "serde", + "thiserror", +] + [[package]] name = "bevy_ecs" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ "async-channel", - "bevy_ecs_macros", + "bevy_ecs_macros 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_reflect", - "bevy_tasks", - "bevy_utils", + "bevy_tasks 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bitflags", "downcast-rs", "fixedbitset 0.4.0", "fxhash", "parking_lot", - "rand", + "rand 0.8.3", "serde", "thiserror", ] @@ -283,7 +412,8 @@ dependencies = [ [[package]] name = "bevy_ecs_macros" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65323f6896068407b768c16ec1aa5c8891d49a28b725d0cbabc663d7f47baaec" dependencies = [ "find-crate", "proc-macro2", @@ -291,97 +421,172 @@ dependencies = [ "syn", ] +[[package]] +name = "bevy_ecs_macros" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" +dependencies = [ + "bevy_macro_utils", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "bevy_gilrs" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" +dependencies = [ + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_input", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "gilrs", +] + +[[package]] +name = "bevy_gltf" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" +dependencies = [ + "anyhow", + "base64", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_asset", + "bevy_core", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_log 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_math", + "bevy_pbr", + "bevy_reflect", + "bevy_render", + "bevy_scene", + "bevy_transform", + "gltf", + "percent-encoding", + "thiserror", +] + [[package]] name = "bevy_input" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", - "bevy_ecs", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "serde", ] [[package]] name = "bevy_internal" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_asset", + "bevy_audio", "bevy_core", - "bevy_derive", + "bevy_derive 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_diagnostic", - "bevy_ecs", + "bevy_dynamic_plugin", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_gilrs", + "bevy_gltf", "bevy_input", - "bevy_log", + "bevy_log 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", "bevy_pbr", "bevy_reflect", "bevy_render", "bevy_scene", "bevy_sprite", - "bevy_tasks", + "bevy_tasks 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_text", "bevy_transform", "bevy_ui", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_wgpu", "bevy_window", "bevy_winit", - "ndk-glue", + "ndk-glue 0.2.1", ] [[package]] name = "bevy_log" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae100fe4e6fc8f7bbf28c121cda0ced7ab79088374beb7ab8be39120603beb18" dependencies = [ "android_log-sys 0.2.0", - "bevy_app", - "bevy_utils", + "bevy_app 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bevy_utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "console_error_panic_hook", "tracing-subscriber", "tracing-wasm", ] +[[package]] +name = "bevy_log" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" +dependencies = [ + "android_log-sys 0.2.0", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "console_error_panic_hook", + "tracing-subscriber", + "tracing-wasm", +] + +[[package]] +name = "bevy_macro_utils" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" +dependencies = [ + "cargo-manifest", + "proc-macro2", + "syn", +] + [[package]] name = "bevy_math" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ "bevy_reflect", - "glam 0.14.0", + "glam", ] [[package]] name = "bevy_pbr" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_asset", "bevy_core", - "bevy_derive", - "bevy_ecs", + "bevy_derive 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", "bevy_reflect", "bevy_render", "bevy_transform", "bevy_window", + "bytemuck", ] [[package]] name = "bevy_reflect" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ "bevy_reflect_derive", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "downcast-rs", "erased-serde", - "glam 0.14.0", + "glam", "parking_lot", "serde", "smallvec", @@ -391,9 +596,9 @@ dependencies = [ [[package]] name = "bevy_reflect_derive" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "find-crate", + "bevy_macro_utils", "proc-macro2", "quote", "syn", @@ -403,19 +608,19 @@ dependencies = [ [[package]] name = "bevy_render" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ "anyhow", "bevy-glsl-to-spirv", - "bevy_app", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_asset", "bevy_core", - "bevy_derive", - "bevy_ecs", + "bevy_derive 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", "bevy_reflect", "bevy_transform", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_window", "bitflags", "downcast-rs", @@ -434,15 +639,15 @@ dependencies = [ [[package]] name = "bevy_scene" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ "anyhow", - "bevy_app", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_asset", - "bevy_ecs", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_reflect", "bevy_transform", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "parking_lot", "ron", "serde", @@ -453,19 +658,20 @@ dependencies = [ [[package]] name = "bevy_sprite" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_asset", "bevy_core", - "bevy_ecs", - "bevy_log", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_log 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", "bevy_reflect", "bevy_render", "bevy_transform", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_window", + "bytemuck", "guillotiere", "rectangle-pack", "serde", @@ -475,7 +681,22 @@ dependencies = [ [[package]] name = "bevy_tasks" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77243565dde30ce01e538c615db54bc939a36e4c468b271e86a980004bac7bc9" +dependencies = [ + "async-channel", + "async-executor", + "event-listener", + "futures-lite", + "instant", + "num_cpus", + "wasm-bindgen-futures", +] + +[[package]] +name = "bevy_tasks" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ "async-channel", "async-executor", @@ -489,20 +710,20 @@ dependencies = [ [[package]] name = "bevy_text" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ "ab_glyph", "anyhow", - "bevy_app", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_asset", "bevy_core", - "bevy_ecs", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", "bevy_reflect", "bevy_render", "bevy_sprite", "bevy_transform", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_window", "glyph_brush_layout", "thiserror", @@ -511,35 +732,35 @@ dependencies = [ [[package]] name = "bevy_transform" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", - "bevy_ecs", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", "bevy_reflect", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "smallvec", ] [[package]] name = "bevy_ui" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_asset", "bevy_core", - "bevy_derive", - "bevy_ecs", + "bevy_derive 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_input", - "bevy_log", + "bevy_log 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", "bevy_reflect", "bevy_render", "bevy_sprite", "bevy_text", "bevy_transform", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_window", "serde", "smallvec", @@ -549,11 +770,24 @@ dependencies = [ [[package]] name = "bevy_utils" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c384a69b670329f968f59abdcf6506f183cf18b8619d6ec1cbfe33e268e5da20" +dependencies = [ + "ahash 0.7.2", + "getrandom 0.2.3", + "instant", + "tracing", + "uuid", +] + +[[package]] +name = "bevy_utils" +version = "0.5.0" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ "ahash 0.7.2", - "bevy_derive", - "getrandom", + "bevy_derive 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "getrandom 0.2.3", "instant", "tracing", "uuid", @@ -562,19 +796,19 @@ dependencies = [ [[package]] name = "bevy_wgpu" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_asset", "bevy_core", "bevy_diagnostic", - "bevy_ecs", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_render", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_window", "bevy_winit", - "crossbeam-channel", - "crossbeam-utils", + "crossbeam-channel 0.5.1", + "crossbeam-utils 0.8.4", "futures-lite", "parking_lot", "wgpu", @@ -583,32 +817,74 @@ dependencies = [ [[package]] name = "bevy_window" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", - "bevy_ecs", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "web-sys", ] [[package]] name = "bevy_winit" version = "0.5.0" -source = "git+https://github.com/bevyengine/bevy?branch=main#73f4a9d18f609e52d28e2963635560e0b78a2f9f" +source = "git+https://github.com/bevyengine/bevy?branch=main#653c10371e546176059bb779844c0569c0190b6b" dependencies = [ - "bevy_app", - "bevy_ecs", + "bevy_app 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", + "bevy_ecs 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_input", - "bevy_log", + "bevy_log 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_math", - "bevy_utils", + "bevy_utils 0.5.0 (git+https://github.com/bevyengine/bevy?branch=main)", "bevy_window", "wasm-bindgen", "web-sys", "winit", ] +[[package]] +name = "bindgen" +version = "0.56.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2da379dbebc0b76ef63ca68d8fc6e71c0f13e59432e0987e508c1820e6ab5239" +dependencies = [ + "bitflags", + "cexpr", + "clang-sys", + "lazy_static", + "lazycell", + "peeking_take_while", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex", +] + +[[package]] +name = "bindgen" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd4865004a46a0aafb2a0a5eb19d3c9fc46ee5f063a6cfc605c69ac9ecf5263d" +dependencies = [ + "bitflags", + "cexpr", + "clang-sys", + "clap", + "env_logger 0.8.3", + "lazy_static", + "lazycell", + "log", + "peeking_take_while", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex", + "which", +] + [[package]] name = "bit-set" version = "0.5.2" @@ -659,6 +935,20 @@ name = "bytemuck" version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bed57e2090563b83ba8f83366628ce535a7584c9afa4c9fc0612a03925c6df58" +dependencies = [ + "bytemuck_derive", +] + +[[package]] +name = "bytemuck_derive" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e215f8c2f9f79cb53c8335e687ffd07d5bfcb6fe5fc80723762d0be46e7cc54" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] [[package]] name = "byteorder" @@ -666,19 +956,36 @@ version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" +[[package]] +name = "bytes" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040" + [[package]] name = "cache-padded" version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "631ae5198c9be5e753e5cc215e1bd73c2b466a3565173db433f52bb9d3e66dba" +[[package]] +name = "cargo-manifest" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27926b927dfe8eed84ff3cc47ebfdd57f7f02b955a7b431a622e5091c73cc2e0" +dependencies = [ + "serde", + "serde_derive", + "toml", +] + [[package]] name = "cast" version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57cdfa5d50aad6cb4d44dcab6101a7f79925bd59d82ca42f38a9856a28865374" dependencies = [ - "rustc_version", + "rustc_version 0.3.3", ] [[package]] @@ -690,6 +997,21 @@ dependencies = [ "jobserver", ] +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + +[[package]] +name = "cexpr" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4aedb84272dbe89af497cf81375129abda4fc0a9e7c5d317498c15cc30c0d27" +dependencies = [ + "nom", +] + [[package]] name = "cfg-if" version = "0.1.10" @@ -720,15 +1042,30 @@ dependencies = [ "winapi", ] +[[package]] +name = "clang-sys" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "853eda514c284c2287f4bf20ae614f8781f40a81d32ecda6e91449304dfe077c" +dependencies = [ + "glob", + "libc", + "libloading", +] + [[package]] name = "clap" version = "2.33.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002" dependencies = [ + "ansi_term 0.11.0", + "atty", "bitflags", + "strsim 0.8.0", "textwrap", "unicode-width", + "vec_map", ] [[package]] @@ -787,6 +1124,16 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" +[[package]] +name = "combine" +version = "4.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc4369b5e4c0cddf64ad8981c0111e7df4f7078f4d6ba98fb31f2e17c4c57b7e" +dependencies = [ + "bytes", + "memchr", +] + [[package]] name = "concurrent-queue" version = "1.2.2" @@ -812,6 +1159,16 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2df960f5d869b2dd8532793fde43eb5427cceb126c929747a26823ab0eeb536" +[[package]] +name = "core-foundation" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25b9e03f145fd4f2bf705e07b900cd41fc636598fe5dc452fd0db1441c3f496d" +dependencies = [ + "core-foundation-sys 0.6.2", + "libc", +] + [[package]] name = "core-foundation" version = "0.7.0" @@ -832,6 +1189,12 @@ dependencies = [ "libc", ] +[[package]] +name = "core-foundation-sys" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7ca8a5221364ef15ce201e8ed2f609fc312682a8f4e0e3d4aa5879764e0fa3b" + [[package]] name = "core-foundation-sys" version = "0.7.0" @@ -870,28 +1233,81 @@ dependencies = [ ] [[package]] -name = "core-graphics-types" -version = "0.1.1" +name = "core-graphics-types" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" +dependencies = [ + "bitflags", + "core-foundation 0.9.1", + "foreign-types", + "libc", +] + +[[package]] +name = "core-video-sys" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34ecad23610ad9757664d644e369246edde1803fcb43ed72876565098a5d3828" +dependencies = [ + "cfg-if 0.1.10", + "core-foundation-sys 0.7.0", + "core-graphics 0.19.2", + "libc", + "objc", +] + +[[package]] +name = "coreaudio-rs" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11894b20ebfe1ff903cbdc52259693389eea03b94918a2def2c30c3bf227ad88" +dependencies = [ + "bitflags", + "coreaudio-sys", +] + +[[package]] +name = "coreaudio-sys" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b7e3347be6a09b46aba228d6608386739fb70beff4f61e07422da87b0bb31fa" +dependencies = [ + "bindgen 0.56.0", +] + +[[package]] +name = "cpal" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" +checksum = "8351ddf2aaa3c583fa388029f8b3d26f3c7035a20911fdd5f2e2ed7ab57dad25" dependencies = [ - "bitflags", - "core-foundation 0.9.1", - "foreign-types", + "alsa", + "core-foundation-sys 0.6.2", + "coreaudio-rs", + "jni", + "js-sys", + "lazy_static", "libc", + "mach 0.3.2", + "ndk 0.3.0", + "ndk-glue 0.3.0", + "nix", + "oboe", + "parking_lot", + "stdweb 0.1.3", + "thiserror", + "web-sys", + "winapi", ] [[package]] -name = "core-video-sys" -version = "0.1.4" +name = "crc32fast" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ecad23610ad9757664d644e369246edde1803fcb43ed72876565098a5d3828" +checksum = "81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a" dependencies = [ - "cfg-if 0.1.10", - "core-foundation-sys 0.7.0", - "core-graphics 0.19.2", - "libc", - "objc", + "cfg-if 1.0.0", ] [[package]] @@ -930,6 +1346,30 @@ dependencies = [ "itertools 0.9.0", ] +[[package]] +name = "crossbeam" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69323bff1fb41c635347b8ead484a5ca6c3f11914d784170b158d8449ab07f8e" +dependencies = [ + "cfg-if 0.1.10", + "crossbeam-channel 0.4.4", + "crossbeam-deque 0.7.3", + "crossbeam-epoch 0.8.2", + "crossbeam-queue", + "crossbeam-utils 0.7.2", +] + +[[package]] +name = "crossbeam-channel" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87" +dependencies = [ + "crossbeam-utils 0.7.2", + "maybe-uninit", +] + [[package]] name = "crossbeam-channel" version = "0.5.1" @@ -937,7 +1377,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06ed27e177f16d65f0f0c22a213e17c696ace5dd64b14258b52f9417ccb52db4" dependencies = [ "cfg-if 1.0.0", - "crossbeam-utils", + "crossbeam-utils 0.8.4", +] + +[[package]] +name = "crossbeam-deque" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285" +dependencies = [ + "crossbeam-epoch 0.8.2", + "crossbeam-utils 0.7.2", + "maybe-uninit", ] [[package]] @@ -947,8 +1398,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94af6efb46fef72616855b036a624cf27ba656ffc9be1b9a3c931cfc7749a9a9" dependencies = [ "cfg-if 1.0.0", - "crossbeam-epoch", - "crossbeam-utils", + "crossbeam-epoch 0.9.4", + "crossbeam-utils 0.8.4", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace" +dependencies = [ + "autocfg", + "cfg-if 0.1.10", + "crossbeam-utils 0.7.2", + "lazy_static", + "maybe-uninit", + "memoffset 0.5.6", + "scopeguard", ] [[package]] @@ -958,12 +1424,34 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52fb27eab85b17fbb9f6fd667089e07d6a2eb8743d02639ee7f6a7a7729c9c94" dependencies = [ "cfg-if 1.0.0", - "crossbeam-utils", + "crossbeam-utils 0.8.4", "lazy_static", - "memoffset", + "memoffset 0.6.3", "scopeguard", ] +[[package]] +name = "crossbeam-queue" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570" +dependencies = [ + "cfg-if 0.1.10", + "crossbeam-utils 0.7.2", + "maybe-uninit", +] + +[[package]] +name = "crossbeam-utils" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" +dependencies = [ + "autocfg", + "cfg-if 0.1.10", + "lazy_static", +] + [[package]] name = "crossbeam-utils" version = "0.8.4" @@ -1028,7 +1516,7 @@ dependencies = [ "ident_case", "proc-macro2", "quote", - "strsim", + "strsim 0.9.3", "syn", ] @@ -1043,6 +1531,16 @@ dependencies = [ "syn", ] +[[package]] +name = "deflate" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174" +dependencies = [ + "adler32", + "byteorder", +] + [[package]] name = "derivative" version = "2.2.0" @@ -1054,6 +1552,12 @@ dependencies = [ "syn", ] +[[package]] +name = "discard" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" + [[package]] name = "dispatch" version = "0.2.0" @@ -1082,6 +1586,19 @@ dependencies = [ "regex", ] +[[package]] +name = "env_logger" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17392a012ea30ef05a610aa97dfb49496e71c9f676b27879922ea5bdf60d9d3f" +dependencies = [ + "atty", + "humantime", + "log", + "regex", + "termcolor", +] + [[package]] name = "erased-serde" version = "0.3.13" @@ -1093,9 +1610,9 @@ dependencies = [ [[package]] name = "euclid" -version = "0.22.3" +version = "0.22.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "536d206ede9fae5a338a1576623b04fd2459f6086e551d374ebf10e9b78bb4df" +checksum = "7b9b0b0868386d989090b2431c4c2a4d31228490a132ca5db3a36184331782d3" dependencies = [ "num-traits", ] @@ -1121,6 +1638,7 @@ version = "0.1.0" dependencies = [ "anyhow", "bevy", + "bevy-steamworks", "bitflags", "fc-core", "libm 0.2.1", @@ -1136,13 +1654,16 @@ dependencies = [ "bevy_input", "bitflags", "criterion", - "glam 0.15.1", + "glam", "serde", ] [[package]] name = "fc-editor" version = "0.1.0" +dependencies = [ + "bevy", +] [[package]] name = "filetime" @@ -1255,14 +1776,25 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.2" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" +dependencies = [ + "cfg-if 1.0.0", + "libc", + "wasi 0.9.0+wasi-snapshot-preview1", +] + +[[package]] +name = "getrandom" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8" +checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753" dependencies = [ "cfg-if 1.0.0", "js-sys", "libc", - "wasi", + "wasi 0.10.2+wasi-snapshot-preview1", "wasm-bindgen", ] @@ -1413,23 +1945,54 @@ dependencies = [ ] [[package]] -name = "glam" -version = "0.14.0" +name = "gilrs" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "333928d5eb103c5d4050533cec0384302db6be8ef7d3cebd30ec6a35350353da" +checksum = "0e986f911d937f4395dfc2a39618dcef452773d32dcdbe0828c623f76588f749" dependencies = [ - "serde", + "fnv", + "gilrs-core", + "log", + "uuid", + "vec_map", +] + +[[package]] +name = "gilrs-core" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a5e5bb97bf9a0d9519a28cf38839cf1d6d9bb572b48e3c67202271fec2ed5e7" +dependencies = [ + "core-foundation 0.6.4", + "io-kit-sys", + "libc", + "libudev-sys", + "log", + "nix", + "rusty-xinput", + "stdweb 0.4.20", + "uuid", + "vec_map", + "winapi", ] [[package]] name = "glam" -version = "0.15.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "411e0584defa447c328f25c756ba3d0685727ecc126b46c3c1176001141cd4b6" +checksum = "3abb554f8ee44336b72d522e0a7fe86a29e09f839a36022fa869a7dfe941a54b" dependencies = [ + "bytemuck", "num-traits", + "serde", ] +[[package]] +name = "glob" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" + [[package]] name = "glow" version = "0.9.0" @@ -1442,6 +2005,41 @@ dependencies = [ "web-sys", ] +[[package]] +name = "gltf" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ff38b75359a0096dd0a8599b6e4f37a6ee41d5df300cc7669e62aafa697f7a2" +dependencies = [ + "byteorder", + "gltf-json", + "lazy_static", +] + +[[package]] +name = "gltf-derive" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f2a9333e0f9c7bca94dfc20bcf44fa12a61eeec662d6e007563ff748aa59c70" +dependencies = [ + "inflections", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "gltf-json" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1414d3a98cbaabdb2f134328b1f6036d14b282febc1df51952a435d2ca17fb6" +dependencies = [ + "gltf-derive", + "serde", + "serde_derive", + "serde_json", +] + [[package]] name = "glyph_brush_layout" version = "0.2.1" @@ -1494,9 +2092,9 @@ dependencies = [ [[package]] name = "guillotiere" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc7cccefbf418f663e11e9500326f46a44273dc598210bbedc8bbe95e696531f" +checksum = "9253eedea82720b2bc91fe831c9ce3a31299955ed5eb19b9ed600a625b686212" dependencies = [ "euclid", "svg_fmt", @@ -1534,14 +2132,20 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] name = "hexasphere" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "975eea4013d77d7de292f50e77884fa879e0aa24197f95468681a2bd8209c344" +checksum = "497fa99092cc737fe649ae39194b515fbc15ae27ebd437c9e3d9c8210341e0fc" dependencies = [ - "glam 0.14.0", + "glam", "lazy_static", ] +[[package]] +name = "humantime" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + [[package]] name = "ident_case" version = "1.0.1" @@ -1560,6 +2164,8 @@ dependencies = [ "num-iter", "num-rational", "num-traits", + "png", + "scoped_threadpool", ] [[package]] @@ -1572,6 +2178,12 @@ dependencies = [ "hashbrown", ] +[[package]] +name = "inflections" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a" + [[package]] name = "inotify" version = "0.9.3" @@ -1610,6 +2222,16 @@ dependencies = [ "web-sys", ] +[[package]] +name = "io-kit-sys" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f21dcc74995dd4cd090b147e79789f8d65959cbfb5f0b118002db869ea3bd0a0" +dependencies = [ + "core-foundation-sys 0.6.2", + "mach 0.2.3", +] + [[package]] name = "itertools" version = "0.9.0" @@ -1634,6 +2256,20 @@ version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736" +[[package]] +name = "jni" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24967112a1e4301ca5342ea339763613a37592b8a6ce6cf2e4494537c7a42faf" +dependencies = [ + "cesu8", + "combine", + "jni-sys", + "log", + "thiserror", + "walkdir", +] + [[package]] name = "jni-sys" version = "0.3.0" @@ -1674,6 +2310,12 @@ version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +[[package]] +name = "lazycell" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" + [[package]] name = "libc" version = "0.2.94" @@ -1702,6 +2344,16 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c7d73b3f436185384286bd8098d17ec07c9a7d2388a6599f824d8502b529702a" +[[package]] +name = "libudev-sys" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324" +dependencies = [ + "libc", + "pkg-config", +] + [[package]] name = "lock_api" version = "0.4.4" @@ -1720,6 +2372,24 @@ dependencies = [ "cfg-if 1.0.0", ] +[[package]] +name = "mach" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86dd2487cdfea56def77b88438a2c915fb45113c5319bfe7e14306ca4cd0b0e1" +dependencies = [ + "libc", +] + +[[package]] +name = "mach" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" +dependencies = [ + "libc", +] + [[package]] name = "malloc_buf" version = "0.0.6" @@ -1738,12 +2408,27 @@ dependencies = [ "regex-automata", ] +[[package]] +name = "maybe-uninit" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" + [[package]] name = "memchr" version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc" +[[package]] +name = "memoffset" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa" +dependencies = [ + "autocfg", +] + [[package]] name = "memoffset" version = "0.6.3" @@ -1767,6 +2452,35 @@ dependencies = [ "objc", ] +[[package]] +name = "minimp3" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "985438f75febf74c392071a975a29641b420dd84431135a6e6db721de4b74372" +dependencies = [ + "minimp3-sys", + "slice-deque", + "thiserror", +] + +[[package]] +name = "minimp3-sys" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e21c73734c69dc95696c9ed8926a2b393171d98b3f5f5935686a26a487ab9b90" +dependencies = [ + "cc", +] + +[[package]] +name = "miniz_oxide" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435" +dependencies = [ + "adler32", +] + [[package]] name = "mio" version = "0.7.11" @@ -1780,6 +2494,19 @@ dependencies = [ "winapi", ] +[[package]] +name = "mio-misc" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0826571dd48cc55b6310c06daad1a037ccec60c6eb056be7844995140482690" +dependencies = [ + "crossbeam", + "crossbeam-queue", + "log", + "mio", + "rand 0.7.3", +] + [[package]] name = "miow" version = "0.3.7" @@ -1814,21 +2541,47 @@ checksum = "5eb167c1febed0a496639034d0c76b3b74263636045db5489eee52143c246e73" dependencies = [ "jni-sys", "ndk-sys", - "num_enum", - "thiserror", + "num_enum 0.4.3", + "thiserror", +] + +[[package]] +name = "ndk" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8794322172319b972f528bf90c6b467be0079f1fa82780ffb431088e741a73ab" +dependencies = [ + "jni-sys", + "ndk-sys", + "num_enum 0.5.1", + "thiserror", +] + +[[package]] +name = "ndk-glue" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdf399b8b7a39c6fb153c4ec32c72fd5fe789df24a647f229c239aa7adb15241" +dependencies = [ + "android_logger", + "lazy_static", + "libc", + "log", + "ndk 0.2.1", + "ndk-macro", + "ndk-sys", ] [[package]] name = "ndk-glue" -version = "0.2.1" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdf399b8b7a39c6fb153c4ec32c72fd5fe789df24a647f229c239aa7adb15241" +checksum = "c5caf0c24d51ac1c905c27d4eda4fa0635bbe0de596b8f79235e0b17a4d29385" dependencies = [ - "android_logger", "lazy_static", "libc", "log", - "ndk", + "ndk 0.3.0", "ndk-macro", "ndk-sys", ] @@ -1852,6 +2605,28 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c44922cb3dbb1c70b5e5f443d63b64363a898564d739ba5198e3a9138442868d" +[[package]] +name = "nix" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a" +dependencies = [ + "bitflags", + "cc", + "cfg-if 1.0.0", + "libc", +] + +[[package]] +name = "nom" +version = "5.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af" +dependencies = [ + "memchr", + "version_check", +] + [[package]] name = "notify" version = "5.0.0-pre.8" @@ -1859,7 +2634,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46bbbcd078f1f00ddb7a9abe70b96e91229b44b0b3afdec610f8e5137f8f014b" dependencies = [ "bitflags", - "crossbeam-channel", + "crossbeam-channel 0.5.1", "filetime", "fsevent", "fsevent-sys", @@ -1879,6 +2654,17 @@ dependencies = [ "winapi", ] +[[package]] +name = "num-derive" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "num-integer" version = "0.1.44" @@ -1938,7 +2724,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca565a7df06f3d4b485494f25ba05da1435950f4dc263440eda7a6fa9b8e36e4" dependencies = [ "derivative", - "num_enum_derive", + "num_enum_derive 0.4.3", +] + +[[package]] +name = "num_enum" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "226b45a5c2ac4dd696ed30fa6b94b057ad909c7b7fc2e0d0808192bced894066" +dependencies = [ + "derivative", + "num_enum_derive 0.5.1", ] [[package]] @@ -1953,6 +2749,18 @@ dependencies = [ "syn", ] +[[package]] +name = "num_enum_derive" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c0fd9eba1d5db0994a239e09c1be402d35622277e35468ba891aa5e3188ce7e" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "objc" version = "0.2.7" @@ -1972,6 +2780,29 @@ dependencies = [ "cc", ] +[[package]] +name = "oboe" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cfb2390bddb9546c0f7448fd1d2abdd39e6075206f960991eb28c7fa7f126c4" +dependencies = [ + "jni", + "ndk 0.3.0", + "ndk-glue 0.3.0", + "num-derive", + "num-traits", + "oboe-sys", +] + +[[package]] +name = "oboe-sys" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe069264d082fc820dfa172f79be3f2e088ecfece9b1c47b0c9fd838d2bef103" +dependencies = [ + "cc", +] + [[package]] name = "once_cell" version = "1.7.2" @@ -2024,6 +2855,18 @@ dependencies = [ "winapi", ] +[[package]] +name = "peeking_take_while" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" + +[[package]] +name = "percent-encoding" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" + [[package]] name = "pest" version = "2.1.3" @@ -2049,6 +2892,12 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc0e1f259c92177c30a4c9d177246edd0a3568b25756a977d0632cf8fa37e905" +[[package]] +name = "pkg-config" +version = "0.3.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c" + [[package]] name = "plotters" version = "0.3.0" @@ -2077,6 +2926,18 @@ dependencies = [ "plotters-backend", ] +[[package]] +name = "png" +version = "0.16.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6" +dependencies = [ + "bitflags", + "crc32fast", + "deflate", + "miniz_oxide", +] + [[package]] name = "ppv-lite86" version = "0.2.10" @@ -2094,9 +2955,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.26" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a152013215dca273577e18d2bf00fa862b89b24169fb78c4c95aeb07992c9cec" +checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038" dependencies = [ "unicode-xid", ] @@ -2116,6 +2977,19 @@ dependencies = [ "proc-macro2", ] +[[package]] +name = "rand" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +dependencies = [ + "getrandom 0.1.16", + "libc", + "rand_chacha 0.2.2", + "rand_core 0.5.1", + "rand_hc 0.2.0", +] + [[package]] name = "rand" version = "0.8.3" @@ -2123,9 +2997,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e" dependencies = [ "libc", - "rand_chacha", - "rand_core", - "rand_hc", + "rand_chacha 0.3.0", + "rand_core 0.6.2", + "rand_hc 0.3.0", +] + +[[package]] +name = "rand_chacha" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +dependencies = [ + "ppv-lite86", + "rand_core 0.5.1", ] [[package]] @@ -2135,7 +3019,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.2", +] + +[[package]] +name = "rand_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +dependencies = [ + "getrandom 0.1.16", ] [[package]] @@ -2144,7 +3037,16 @@ version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7" dependencies = [ - "getrandom", + "getrandom 0.2.3", +] + +[[package]] +name = "rand_hc" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +dependencies = [ + "rand_core 0.5.1", ] [[package]] @@ -2153,7 +3055,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73" dependencies = [ - "rand_core", + "rand_core 0.6.2", ] [[package]] @@ -2173,25 +3075,25 @@ dependencies = [ [[package]] name = "rayon" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b0d8e0819fadc20c74ea8373106ead0600e3a67ef1fe8da56e39b9ae7275674" +checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90" dependencies = [ "autocfg", - "crossbeam-deque", + "crossbeam-deque 0.8.0", "either", "rayon-core", ] [[package]] name = "rayon-core" -version = "1.9.0" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ab346ac5921dc62ffa9f89b7a773907511cdfa5490c572ae9be1be33e8afa4a" +checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e" dependencies = [ - "crossbeam-channel", - "crossbeam-deque", - "crossbeam-utils", + "crossbeam-channel 0.5.1", + "crossbeam-deque 0.8.0", + "crossbeam-utils 0.8.4", "lazy_static", "num_cpus", ] @@ -2238,6 +3140,16 @@ version = "0.6.25" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b" +[[package]] +name = "rodio" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b65c2eda643191f6d1bb12ea323a9db8d9ba95374e9be3780b5a9fb5cfb8520f" +dependencies = [ + "cpal", + "minimp3", +] + [[package]] name = "ron" version = "0.6.4" @@ -2249,13 +3161,39 @@ dependencies = [ "serde", ] +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + +[[package]] +name = "rustc_version" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" +dependencies = [ + "semver 0.9.0", +] + [[package]] name = "rustc_version" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" dependencies = [ - "semver", + "semver 0.11.0", +] + +[[package]] +name = "rusty-xinput" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2aa654bc32eb9ca14cce1a084abc9dfe43949a4547c35269a094c39272db3bb" +dependencies = [ + "lazy_static", + "log", + "winapi", ] [[package]] @@ -2273,21 +3211,42 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "scoped_threadpool" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" + [[package]] name = "scopeguard" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +[[package]] +name = "semver" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" +dependencies = [ + "semver-parser 0.7.0", +] + [[package]] name = "semver" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" dependencies = [ - "semver-parser", + "semver-parser 0.10.2", ] +[[package]] +name = "semver-parser" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" + [[package]] name = "semver-parser" version = "0.10.2" @@ -2338,6 +3297,12 @@ dependencies = [ "serde", ] +[[package]] +name = "sha1" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" + [[package]] name = "shaderc" version = "0.7.2" @@ -2367,12 +3332,29 @@ dependencies = [ "lazy_static", ] +[[package]] +name = "shlex" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2" + [[package]] name = "slab" version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527" +[[package]] +name = "slice-deque" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31ef6ee280cdefba6d2d0b4b78a84a1c1a3f3a4cec98c2d4231c8bc225de0f25" +dependencies = [ + "libc", + "mach 0.3.2", + "winapi", +] + [[package]] name = "slotmap" version = "0.4.0" @@ -2423,6 +3405,86 @@ dependencies = [ "num-traits", ] +[[package]] +name = "stdweb" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef5430c8e36b713e13b48a9f709cc21e046723fe44ce34587b73a830203b533e" + +[[package]] +name = "stdweb" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" +dependencies = [ + "discard", + "rustc_version 0.2.3", + "serde", + "serde_json", + "stdweb-derive", + "stdweb-internal-macros", + "stdweb-internal-runtime", + "wasm-bindgen", +] + +[[package]] +name = "stdweb-derive" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef" +dependencies = [ + "proc-macro2", + "quote", + "serde", + "serde_derive", + "syn", +] + +[[package]] +name = "stdweb-internal-macros" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11" +dependencies = [ + "base-x", + "proc-macro2", + "quote", + "serde", + "serde_derive", + "serde_json", + "sha1", + "syn", +] + +[[package]] +name = "stdweb-internal-runtime" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0" + +[[package]] +name = "steamworks" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "856c564f912a58990d6405a079070732661a39dd80aa8a8bf511261cb02f5f9f" +dependencies = [ + "bitflags", + "lazy_static", + "libc", + "steamworks-sys", + "thiserror", +] + +[[package]] +name = "steamworks-sys" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63d2db200ee3d85eea4acdda94bd06b8d416997c976eb86d35c2836bbd421c4a" +dependencies = [ + "bindgen 0.57.0", + "libc", +] + [[package]] name = "storage-map" version = "0.3.0" @@ -2442,6 +3504,12 @@ dependencies = [ "libm 0.1.4", ] +[[package]] +name = "strsim" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" + [[package]] name = "strsim" version = "0.9.3" @@ -2534,6 +3602,7 @@ version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa" dependencies = [ + "indexmap", "serde", ] @@ -2596,7 +3665,7 @@ version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa5553bf0883ba7c9cbe493b085c29926bd41b66afc31ff72cf17ff4fb60dcd5" dependencies = [ - "ansi_term", + "ansi_term 0.12.1", "chrono", "lazy_static", "matchers", @@ -2653,10 +3722,16 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" dependencies = [ - "getrandom", + "getrandom 0.2.3", "serde", ] +[[package]] +name = "vec_map" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" + [[package]] name = "version_check" version = "0.9.3" @@ -2680,6 +3755,12 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "wasi" +version = "0.9.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + [[package]] name = "wasi" version = "0.10.2+wasi-snapshot-preview1" @@ -2821,6 +3902,15 @@ dependencies = [ "bitflags", ] +[[package]] +name = "which" +version = "3.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d011071ae14a2f6671d0b74080ae0cd8ebf3a6f8c9589a2cd45f23126fe29724" +dependencies = [ + "libc", +] + [[package]] name = "winapi" version = "0.3.9" @@ -2854,9 +3944,9 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "winit" -version = "0.24.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da4eda6fce0eb84bd0a33e3c8794eb902e1033d0a1d5a31bc4f19b1b4bbff597" +checksum = "79610794594d5e86be473ef7763f604f2159cbac8c94debd00df8fb41e86c2f8" dependencies = [ "bitflags", "cocoa", @@ -2868,15 +3958,20 @@ dependencies = [ "lazy_static", "libc", "log", - "ndk", - "ndk-glue", + "mio", + "mio-misc", + "ndk 0.3.0", + "ndk-glue 0.3.0", "ndk-sys", "objc", "parking_lot", + "percent-encoding", "raw-window-handle", + "scopeguard", "wasm-bindgen", "web-sys", "winapi", + "x11-dl", ] [[package]] @@ -2888,6 +3983,18 @@ dependencies = [ "winapi", ] +[[package]] +name = "x11-dl" +version = "2.18.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bf981e3a5b3301209754218f962052d4d9ee97e478f4d26d4a6eced34c1fef8" +dependencies = [ + "lazy_static", + "libc", + "maybe-uninit", + "pkg-config", +] + [[package]] name = "xi-unicode" version = "0.3.0" diff --git a/Cargo.toml b/Cargo.toml index 65d3d49..5aa64f1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,4 +14,4 @@ panic = "abort" bevy = { git = "https://github.com/bevyengine/bevy", branch = "main" } bevy_input = { git = "https://github.com/bevyengine/bevy", branch = "main" } bevy_math = { git = "https://github.com/bevyengine/bevy", branch = "main" } -bevy_reflect = { git = "https://github.com/bevyengine/bevy", branch = "main" } +bevy_reflect = { git = "https://github.com/bevyengine/bevy", branch = "main" } \ No newline at end of file diff --git a/README.md b/README.md index ced27c9..156b234 100644 --- a/README.md +++ b/README.md @@ -17,3 +17,13 @@ gameplay items of Fantasy Crescendo. This is still an experiment. It's unknown if this implementation is going to supplant the Unity implementation, be used as a simulation layer, or whatever else. + +## Development Environment Setup + +Local development environment requires the following: + + * [rust/cargo 1.52+](https://www.rust-lang.org/tools/install) + * [LLVM/Clang 12.0.0](https://github.com/llvm/llvm-project/releases/tag/llvmorg-12.0.0) + +The project currently will only build on nightly due to the use of an unstable cargo +feature that has not landed in stable yet. Use `rustup` to switch to nightly Rust. \ No newline at end of file diff --git a/game/Cargo.toml b/game/Cargo.toml index 675f858..888b925 100644 --- a/game/Cargo.toml +++ b/game/Cargo.toml @@ -7,6 +7,7 @@ edition = "2018" [dependencies] serde = "1.0" fc-core = { path = "../core" } +bevy-steamworks = "0.1" anyhow = "1.0" serde_json = "1.0" bitflags = "1.2" diff --git a/lib/steam/public/steam/isteamapplist.h b/lib/steam/public/steam/isteamapplist.h new file mode 100644 index 0000000..297a373 --- /dev/null +++ b/lib/steam/public/steam/isteamapplist.h @@ -0,0 +1,67 @@ +//====== Copyright © 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to app data in Steam +// +//============================================================================= + +#ifndef ISTEAMAPPLIST_H +#define ISTEAMAPPLIST_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" +#include "steamtypes.h" + +//----------------------------------------------------------------------------- +// Purpose: This is a restricted interface that can only be used by previously approved apps, +// contact your Steam Account Manager if you believe you need access to this API. +// This interface lets you detect installed apps for the local Steam client, useful for debugging tools +// to offer lists of apps to debug via Steam. +//----------------------------------------------------------------------------- +class ISteamAppList +{ +public: + virtual uint32 GetNumInstalledApps() = 0; + virtual uint32 GetInstalledApps( AppId_t *pvecAppID, uint32 unMaxAppIDs ) = 0; + + virtual int GetAppName( AppId_t nAppID, STEAM_OUT_STRING() char *pchName, int cchNameMax ) = 0; // returns -1 if no name was found + virtual int GetAppInstallDir( AppId_t nAppID, char *pchDirectory, int cchNameMax ) = 0; // returns -1 if no dir was found + + virtual int GetAppBuildId( AppId_t nAppID ) = 0; // return the buildid of this app, may change at any time based on backend updates to the game +}; + +#define STEAMAPPLIST_INTERFACE_VERSION "STEAMAPPLIST_INTERFACE_VERSION001" + +// Global interface accessor +inline ISteamAppList *SteamAppList(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamAppList *, SteamAppList, STEAMAPPLIST_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + + +//--------------------------------------------------------------------------------- +// Purpose: Sent when a new app is installed +//--------------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( SteamAppInstalled_t, k_iSteamAppListCallbacks + 1 ) + STEAM_CALLBACK_MEMBER( 0, AppId_t, m_nAppID ) // ID of the app that installs +STEAM_CALLBACK_END(1) + + +//--------------------------------------------------------------------------------- +// Purpose: Sent when an app is uninstalled +//--------------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( SteamAppUninstalled_t, k_iSteamAppListCallbacks + 2 ) + STEAM_CALLBACK_MEMBER( 0, AppId_t, m_nAppID ) // ID of the app that installs +STEAM_CALLBACK_END(1) + + +#pragma pack( pop ) +#endif // ISTEAMAPPLIST_H diff --git a/lib/steam/public/steam/isteamapps.h b/lib/steam/public/steam/isteamapps.h new file mode 100644 index 0000000..ca39492 --- /dev/null +++ b/lib/steam/public/steam/isteamapps.h @@ -0,0 +1,217 @@ +//====== Copyright © 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to app data in Steam +// +//============================================================================= + +#ifndef ISTEAMAPPS_H +#define ISTEAMAPPS_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +const int k_cubAppProofOfPurchaseKeyMax = 240; // max supported length of a legacy cd key + + +//----------------------------------------------------------------------------- +// Purpose: interface to app data +//----------------------------------------------------------------------------- +class ISteamApps +{ +public: + virtual bool BIsSubscribed() = 0; + virtual bool BIsLowViolence() = 0; + virtual bool BIsCybercafe() = 0; + virtual bool BIsVACBanned() = 0; + virtual const char *GetCurrentGameLanguage() = 0; + virtual const char *GetAvailableGameLanguages() = 0; + + // only use this member if you need to check ownership of another game related to yours, a demo for example + virtual bool BIsSubscribedApp( AppId_t appID ) = 0; + + // Takes AppID of DLC and checks if the user owns the DLC & if the DLC is installed + virtual bool BIsDlcInstalled( AppId_t appID ) = 0; + + // returns the Unix time of the purchase of the app + virtual uint32 GetEarliestPurchaseUnixTime( AppId_t nAppID ) = 0; + + // Checks if the user is subscribed to the current app through a free weekend + // This function will return false for users who have a retail or other type of license + // Before using, please ask your Valve technical contact how to package and secure your free weekened + virtual bool BIsSubscribedFromFreeWeekend() = 0; + + // Returns the number of DLC pieces for the running app + virtual int GetDLCCount() = 0; + + // Returns metadata for DLC by index, of range [0, GetDLCCount()] + virtual bool BGetDLCDataByIndex( int iDLC, AppId_t *pAppID, bool *pbAvailable, char *pchName, int cchNameBufferSize ) = 0; + + // Install/Uninstall control for optional DLC + virtual void InstallDLC( AppId_t nAppID ) = 0; + virtual void UninstallDLC( AppId_t nAppID ) = 0; + + // Request legacy cd-key for yourself or owned DLC. If you are interested in this + // data then make sure you provide us with a list of valid keys to be distributed + // to users when they purchase the game, before the game ships. + // You'll receive an AppProofOfPurchaseKeyResponse_t callback when + // the key is available (which may be immediately). + virtual void RequestAppProofOfPurchaseKey( AppId_t nAppID ) = 0; + + virtual bool GetCurrentBetaName( char *pchName, int cchNameBufferSize ) = 0; // returns current beta branch name, 'public' is the default branch + virtual bool MarkContentCorrupt( bool bMissingFilesOnly ) = 0; // signal Steam that game files seems corrupt or missing + virtual uint32 GetInstalledDepots( AppId_t appID, DepotId_t *pvecDepots, uint32 cMaxDepots ) = 0; // return installed depots in mount order + + // returns current app install folder for AppID, returns folder name length + virtual uint32 GetAppInstallDir( AppId_t appID, char *pchFolder, uint32 cchFolderBufferSize ) = 0; + virtual bool BIsAppInstalled( AppId_t appID ) = 0; // returns true if that app is installed (not necessarily owned) + + // returns the SteamID of the original owner. If this CSteamID is different from ISteamUser::GetSteamID(), + // the user has a temporary license borrowed via Family Sharing + virtual CSteamID GetAppOwner() = 0; + + // Returns the associated launch param if the game is run via steam://run///?param1=value1¶m2=value2¶m3=value3 etc. + // Parameter names starting with the character '@' are reserved for internal use and will always return and empty string. + // Parameter names starting with an underscore '_' are reserved for steam features -- they can be queried by the game, + // but it is advised that you not param names beginning with an underscore for your own features. + // Check for new launch parameters on callback NewUrlLaunchParameters_t + virtual const char *GetLaunchQueryParam( const char *pchKey ) = 0; + + // get download progress for optional DLC + virtual bool GetDlcDownloadProgress( AppId_t nAppID, uint64 *punBytesDownloaded, uint64 *punBytesTotal ) = 0; + + // return the buildid of this app, may change at any time based on backend updates to the game + virtual int GetAppBuildId() = 0; + + // Request all proof of purchase keys for the calling appid and asociated DLC. + // A series of AppProofOfPurchaseKeyResponse_t callbacks will be sent with + // appropriate appid values, ending with a final callback where the m_nAppId + // member is k_uAppIdInvalid (zero). + virtual void RequestAllProofOfPurchaseKeys() = 0; + + STEAM_CALL_RESULT( FileDetailsResult_t ) + virtual SteamAPICall_t GetFileDetails( const char* pszFileName ) = 0; + + // Get command line if game was launched via Steam URL, e.g. steam://run////. + // This method of passing a connect string (used when joining via rich presence, accepting an + // invite, etc) is preferable to passing the connect string on the operating system command + // line, which is a security risk. In order for rich presence joins to go through this + // path and not be placed on the OS command line, you must set a value in your app's + // configuration on Steam. Ask Valve for help with this. + // + // If game was already running and launched again, the NewUrlLaunchParameters_t will be fired. + virtual int GetLaunchCommandLine( char *pszCommandLine, int cubCommandLine ) = 0; + + // Check if user borrowed this game via Family Sharing, If true, call GetAppOwner() to get the lender SteamID + virtual bool BIsSubscribedFromFamilySharing() = 0; + + // check if game is a timed trial with limited playtime + virtual bool BIsTimedTrial( uint32* punSecondsAllowed, uint32* punSecondsPlayed ) = 0; +}; + +#define STEAMAPPS_INTERFACE_VERSION "STEAMAPPS_INTERFACE_VERSION008" + +// Global interface accessor +inline ISteamApps *SteamApps(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamApps *, SteamApps, STEAMAPPS_INTERFACE_VERSION ); + +// Global accessor for the gameserver client +inline ISteamApps *SteamGameServerApps(); +STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( ISteamApps *, SteamGameServerApps, STEAMAPPS_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif +//----------------------------------------------------------------------------- +// Purpose: posted after the user gains ownership of DLC & that DLC is installed +//----------------------------------------------------------------------------- +struct DlcInstalled_t +{ + enum { k_iCallback = k_iSteamAppsCallbacks + 5 }; + AppId_t m_nAppID; // AppID of the DLC +}; + + +//----------------------------------------------------------------------------- +// Purpose: possible results when registering an activation code +//----------------------------------------------------------------------------- +enum ERegisterActivationCodeResult +{ + k_ERegisterActivationCodeResultOK = 0, + k_ERegisterActivationCodeResultFail = 1, + k_ERegisterActivationCodeResultAlreadyRegistered = 2, + k_ERegisterActivationCodeResultTimeout = 3, + k_ERegisterActivationCodeAlreadyOwned = 4, +}; + + +//----------------------------------------------------------------------------- +// Purpose: response to RegisterActivationCode() +//----------------------------------------------------------------------------- +struct RegisterActivationCodeResponse_t +{ + enum { k_iCallback = k_iSteamAppsCallbacks + 8 }; + ERegisterActivationCodeResult m_eResult; + uint32 m_unPackageRegistered; // package that was registered. Only set on success +}; + + +//--------------------------------------------------------------------------------- +// Purpose: posted after the user gains executes a Steam URL with command line or query parameters +// such as steam://run///-commandline/?param1=value1¶m2=value2¶m3=value3 etc +// while the game is already running. The new params can be queried +// with GetLaunchQueryParam and GetLaunchCommandLine +//--------------------------------------------------------------------------------- +struct NewUrlLaunchParameters_t +{ + enum { k_iCallback = k_iSteamAppsCallbacks + 14 }; +}; + + +//----------------------------------------------------------------------------- +// Purpose: response to RequestAppProofOfPurchaseKey/RequestAllProofOfPurchaseKeys +// for supporting third-party CD keys, or other proof-of-purchase systems. +//----------------------------------------------------------------------------- +struct AppProofOfPurchaseKeyResponse_t +{ + enum { k_iCallback = k_iSteamAppsCallbacks + 21 }; + EResult m_eResult; + uint32 m_nAppID; + uint32 m_cchKeyLength; + char m_rgchKey[k_cubAppProofOfPurchaseKeyMax]; +}; + + +//----------------------------------------------------------------------------- +// Purpose: response to GetFileDetails +//----------------------------------------------------------------------------- +struct FileDetailsResult_t +{ + enum { k_iCallback = k_iSteamAppsCallbacks + 23 }; + EResult m_eResult; + uint64 m_ulFileSize; // original file size in bytes + uint8 m_FileSHA[20]; // original file SHA1 hash + uint32 m_unFlags; // +}; + + +//----------------------------------------------------------------------------- +// Purpose: called for games in Timed Trial mode +//----------------------------------------------------------------------------- +struct TimedTrialStatus_t +{ + enum { k_iCallback = k_iSteamAppsCallbacks + 30 }; + AppId_t m_unAppID; // appID + bool m_bIsOffline; // if true, time allowed / played refers to offline time, not total time + uint32 m_unSecondsAllowed; // how many seconds the app can be played in total + uint32 m_unSecondsPlayed; // how many seconds the app was already played +}; + +#pragma pack( pop ) +#endif // ISTEAMAPPS_H diff --git a/lib/steam/public/steam/isteamappticket.h b/lib/steam/public/steam/isteamappticket.h new file mode 100644 index 0000000..6f23906 --- /dev/null +++ b/lib/steam/public/steam/isteamappticket.h @@ -0,0 +1,28 @@ +//====== Copyright 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: a private, but well versioned, interface to get at critical bits +// of a steam3 appticket - consumed by the simple drm wrapper to let it +// ask about ownership with greater confidence. +// +//============================================================================= + +#ifndef ISTEAMAPPTICKET_H +#define ISTEAMAPPTICKET_H +#pragma once + +//----------------------------------------------------------------------------- +// Purpose: hand out a reasonable "future proof" view of an app ownership ticket +// the raw (signed) buffer, and indices into that buffer where the appid and +// steamid are located. the sizes of the appid and steamid are implicit in +// (each version of) the interface - currently uin32 appid and uint64 steamid +//----------------------------------------------------------------------------- +class ISteamAppTicket +{ +public: + virtual uint32 GetAppOwnershipTicketData( uint32 nAppID, void *pvBuffer, uint32 cbBufferLength, uint32 *piAppId, uint32 *piSteamId, uint32 *piSignature, uint32 *pcbSignature ) = 0; +}; + +#define STEAMAPPTICKET_INTERFACE_VERSION "STEAMAPPTICKET_INTERFACE_VERSION001" + + +#endif // ISTEAMAPPTICKET_H diff --git a/lib/steam/public/steam/isteamclient.h b/lib/steam/public/steam/isteamclient.h new file mode 100644 index 0000000..682e850 --- /dev/null +++ b/lib/steam/public/steam/isteamclient.h @@ -0,0 +1,179 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== +// +// Internal low-level access to Steamworks interfaces. +// +// Most users of the Steamworks SDK do not need to include this file. +// You should only include this if you are doing something special. +//============================================================================= + +#ifndef ISTEAMCLIENT_H +#define ISTEAMCLIENT_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +//----------------------------------------------------------------------------- +// Purpose: Interface to creating a new steam instance, or to +// connect to an existing steam instance, whether it's in a +// different process or is local. +// +// For most scenarios this is all handled automatically via SteamAPI_Init(). +// You'll only need these APIs if you have a more complex versioning scheme, +// or if you want to implement a multiplexed gameserver where a single process +// is handling multiple games at once with independent gameserver SteamIDs. +//----------------------------------------------------------------------------- +class ISteamClient +{ +public: + // Creates a communication pipe to the Steam client. + // NOT THREADSAFE - ensure that no other threads are accessing Steamworks API when calling + virtual HSteamPipe CreateSteamPipe() = 0; + + // Releases a previously created communications pipe + // NOT THREADSAFE - ensure that no other threads are accessing Steamworks API when calling + virtual bool BReleaseSteamPipe( HSteamPipe hSteamPipe ) = 0; + + // connects to an existing global user, failing if none exists + // used by the game to coordinate with the steamUI + // NOT THREADSAFE - ensure that no other threads are accessing Steamworks API when calling + virtual HSteamUser ConnectToGlobalUser( HSteamPipe hSteamPipe ) = 0; + + // used by game servers, create a steam user that won't be shared with anyone else + // NOT THREADSAFE - ensure that no other threads are accessing Steamworks API when calling + virtual HSteamUser CreateLocalUser( HSteamPipe *phSteamPipe, EAccountType eAccountType ) = 0; + + // removes an allocated user + // NOT THREADSAFE - ensure that no other threads are accessing Steamworks API when calling + virtual void ReleaseUser( HSteamPipe hSteamPipe, HSteamUser hUser ) = 0; + + // retrieves the ISteamUser interface associated with the handle + virtual ISteamUser *GetISteamUser( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // retrieves the ISteamGameServer interface associated with the handle + virtual ISteamGameServer *GetISteamGameServer( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // set the local IP and Port to bind to + // this must be set before CreateLocalUser() + virtual void SetLocalIPBinding( const SteamIPAddress_t &unIP, uint16 usPort ) = 0; + + // returns the ISteamFriends interface + virtual ISteamFriends *GetISteamFriends( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // returns the ISteamUtils interface + virtual ISteamUtils *GetISteamUtils( HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // returns the ISteamMatchmaking interface + virtual ISteamMatchmaking *GetISteamMatchmaking( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // returns the ISteamMatchmakingServers interface + virtual ISteamMatchmakingServers *GetISteamMatchmakingServers( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // returns the a generic interface + virtual void *GetISteamGenericInterface( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // returns the ISteamUserStats interface + virtual ISteamUserStats *GetISteamUserStats( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // returns the ISteamGameServerStats interface + virtual ISteamGameServerStats *GetISteamGameServerStats( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // returns apps interface + virtual ISteamApps *GetISteamApps( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // networking + virtual ISteamNetworking *GetISteamNetworking( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // remote storage + virtual ISteamRemoteStorage *GetISteamRemoteStorage( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // user screenshots + virtual ISteamScreenshots *GetISteamScreenshots( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // game search + virtual ISteamGameSearch *GetISteamGameSearch( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // Deprecated. Applications should use SteamAPI_RunCallbacks() or SteamGameServer_RunCallbacks() instead. + STEAM_PRIVATE_API( virtual void RunFrame() = 0; ) + + // returns the number of IPC calls made since the last time this function was called + // Used for perf debugging so you can understand how many IPC calls your game makes per frame + // Every IPC call is at minimum a thread context switch if not a process one so you want to rate + // control how often you do them. + virtual uint32 GetIPCCallCount() = 0; + + // API warning handling + // 'int' is the severity; 0 for msg, 1 for warning + // 'const char *' is the text of the message + // callbacks will occur directly after the API function is called that generated the warning or message. + virtual void SetWarningMessageHook( SteamAPIWarningMessageHook_t pFunction ) = 0; + + // Trigger global shutdown for the DLL + virtual bool BShutdownIfAllPipesClosed() = 0; + + // Expose HTTP interface + virtual ISteamHTTP *GetISteamHTTP( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // Deprecated - the ISteamUnifiedMessages interface is no longer intended for public consumption. + STEAM_PRIVATE_API( virtual void *DEPRECATED_GetISteamUnifiedMessages( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0 ; ) + + // Exposes the ISteamController interface - deprecated in favor of Steam Input + virtual ISteamController *GetISteamController( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // Exposes the ISteamUGC interface + virtual ISteamUGC *GetISteamUGC( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // returns app list interface, only available on specially registered apps + virtual ISteamAppList *GetISteamAppList( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // Music Player + virtual ISteamMusic *GetISteamMusic( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // Music Player Remote + virtual ISteamMusicRemote *GetISteamMusicRemote(HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion) = 0; + + // html page display + virtual ISteamHTMLSurface *GetISteamHTMLSurface(HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion) = 0; + + // Helper functions for internal Steam usage + STEAM_PRIVATE_API( virtual void DEPRECATED_Set_SteamAPI_CPostAPIResultInProcess( void (*)() ) = 0; ) + STEAM_PRIVATE_API( virtual void DEPRECATED_Remove_SteamAPI_CPostAPIResultInProcess( void (*)() ) = 0; ) + STEAM_PRIVATE_API( virtual void Set_SteamAPI_CCheckCallbackRegisteredInProcess( SteamAPI_CheckCallbackRegistered_t func ) = 0; ) + + // inventory + virtual ISteamInventory *GetISteamInventory( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // Video + virtual ISteamVideo *GetISteamVideo( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // Parental controls + virtual ISteamParentalSettings *GetISteamParentalSettings( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // Exposes the Steam Input interface for controller support + virtual ISteamInput *GetISteamInput( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // Steam Parties interface + virtual ISteamParties *GetISteamParties( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + // Steam Remote Play interface + virtual ISteamRemotePlay *GetISteamRemotePlay( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0; + + STEAM_PRIVATE_API( virtual void DestroyAllInterfaces() = 0; ) + +}; +#define STEAMCLIENT_INTERFACE_VERSION "SteamClient020" + +#ifndef STEAM_API_EXPORTS + +// Global ISteamClient interface accessor +inline ISteamClient *SteamClient(); +STEAM_DEFINE_INTERFACE_ACCESSOR( ISteamClient *, SteamClient, SteamInternal_CreateInterface( STEAMCLIENT_INTERFACE_VERSION ), "global", STEAMCLIENT_INTERFACE_VERSION ); + +// The internal ISteamClient used for the gameserver interface. +// (This is actually the same thing. You really shouldn't need to access any of this stuff directly.) +inline ISteamClient *SteamGameServerClient() { return SteamClient(); } + +#endif + +#endif // ISTEAMCLIENT_H diff --git a/lib/steam/public/steam/isteamcontroller.h b/lib/steam/public/steam/isteamcontroller.h new file mode 100644 index 0000000..3f2b5bf --- /dev/null +++ b/lib/steam/public/steam/isteamcontroller.h @@ -0,0 +1,636 @@ +//====== Copyright 1996-2018, Valve Corporation, All rights reserved. ======= +// Note: The older ISteamController interface has been deprecated in favor of ISteamInput - this interface +// was updated in this SDK but will be removed from future SDK's. The Steam Client will retain +// compatibility with the older interfaces so your any existing integrations should be unaffected. +// +// Purpose: Steam Input is a flexible input API that supports over three hundred devices including all +// common variants of Xbox, Playstation, Nintendo Switch Pro, and Steam Controllers. +// For more info including a getting started guide for developers +// please visit: https://partner.steamgames.com/doc/features/steam_controller +// +//============================================================================= + +#ifndef ISTEAMCONTROLLER_H +#define ISTEAMCONTROLLER_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" +#include "isteaminput.h" + +#define STEAM_CONTROLLER_MAX_COUNT 16 + +#define STEAM_CONTROLLER_MAX_ANALOG_ACTIONS 16 + +#define STEAM_CONTROLLER_MAX_DIGITAL_ACTIONS 128 + +#define STEAM_CONTROLLER_MAX_ORIGINS 8 + +#define STEAM_CONTROLLER_MAX_ACTIVE_LAYERS 16 + +// When sending an option to a specific controller handle, you can send to all controllers via this command +#define STEAM_CONTROLLER_HANDLE_ALL_CONTROLLERS UINT64_MAX + +#define STEAM_CONTROLLER_MIN_ANALOG_ACTION_DATA -1.0f +#define STEAM_CONTROLLER_MAX_ANALOG_ACTION_DATA 1.0f + +#ifndef ISTEAMINPUT_H +enum ESteamControllerPad +{ + k_ESteamControllerPad_Left, + k_ESteamControllerPad_Right +}; +#endif + +// Note: Please do not use action origins as a way to identify controller types. There is no +// guarantee that they will be added in a contiguous manner - use GetInputTypeForHandle instead +// Versions of Steam that add new controller types in the future will extend this enum if you're +// using a lookup table please check the bounds of any origins returned by Steam. +enum EControllerActionOrigin +{ + // Steam Controller + k_EControllerActionOrigin_None, + k_EControllerActionOrigin_A, + k_EControllerActionOrigin_B, + k_EControllerActionOrigin_X, + k_EControllerActionOrigin_Y, + k_EControllerActionOrigin_LeftBumper, + k_EControllerActionOrigin_RightBumper, + k_EControllerActionOrigin_LeftGrip, + k_EControllerActionOrigin_RightGrip, + k_EControllerActionOrigin_Start, + k_EControllerActionOrigin_Back, + k_EControllerActionOrigin_LeftPad_Touch, + k_EControllerActionOrigin_LeftPad_Swipe, + k_EControllerActionOrigin_LeftPad_Click, + k_EControllerActionOrigin_LeftPad_DPadNorth, + k_EControllerActionOrigin_LeftPad_DPadSouth, + k_EControllerActionOrigin_LeftPad_DPadWest, + k_EControllerActionOrigin_LeftPad_DPadEast, + k_EControllerActionOrigin_RightPad_Touch, + k_EControllerActionOrigin_RightPad_Swipe, + k_EControllerActionOrigin_RightPad_Click, + k_EControllerActionOrigin_RightPad_DPadNorth, + k_EControllerActionOrigin_RightPad_DPadSouth, + k_EControllerActionOrigin_RightPad_DPadWest, + k_EControllerActionOrigin_RightPad_DPadEast, + k_EControllerActionOrigin_LeftTrigger_Pull, + k_EControllerActionOrigin_LeftTrigger_Click, + k_EControllerActionOrigin_RightTrigger_Pull, + k_EControllerActionOrigin_RightTrigger_Click, + k_EControllerActionOrigin_LeftStick_Move, + k_EControllerActionOrigin_LeftStick_Click, + k_EControllerActionOrigin_LeftStick_DPadNorth, + k_EControllerActionOrigin_LeftStick_DPadSouth, + k_EControllerActionOrigin_LeftStick_DPadWest, + k_EControllerActionOrigin_LeftStick_DPadEast, + k_EControllerActionOrigin_Gyro_Move, + k_EControllerActionOrigin_Gyro_Pitch, + k_EControllerActionOrigin_Gyro_Yaw, + k_EControllerActionOrigin_Gyro_Roll, + + // PS4 Dual Shock + k_EControllerActionOrigin_PS4_X, + k_EControllerActionOrigin_PS4_Circle, + k_EControllerActionOrigin_PS4_Triangle, + k_EControllerActionOrigin_PS4_Square, + k_EControllerActionOrigin_PS4_LeftBumper, + k_EControllerActionOrigin_PS4_RightBumper, + k_EControllerActionOrigin_PS4_Options, //Start + k_EControllerActionOrigin_PS4_Share, //Back + k_EControllerActionOrigin_PS4_LeftPad_Touch, + k_EControllerActionOrigin_PS4_LeftPad_Swipe, + k_EControllerActionOrigin_PS4_LeftPad_Click, + k_EControllerActionOrigin_PS4_LeftPad_DPadNorth, + k_EControllerActionOrigin_PS4_LeftPad_DPadSouth, + k_EControllerActionOrigin_PS4_LeftPad_DPadWest, + k_EControllerActionOrigin_PS4_LeftPad_DPadEast, + k_EControllerActionOrigin_PS4_RightPad_Touch, + k_EControllerActionOrigin_PS4_RightPad_Swipe, + k_EControllerActionOrigin_PS4_RightPad_Click, + k_EControllerActionOrigin_PS4_RightPad_DPadNorth, + k_EControllerActionOrigin_PS4_RightPad_DPadSouth, + k_EControllerActionOrigin_PS4_RightPad_DPadWest, + k_EControllerActionOrigin_PS4_RightPad_DPadEast, + k_EControllerActionOrigin_PS4_CenterPad_Touch, + k_EControllerActionOrigin_PS4_CenterPad_Swipe, + k_EControllerActionOrigin_PS4_CenterPad_Click, + k_EControllerActionOrigin_PS4_CenterPad_DPadNorth, + k_EControllerActionOrigin_PS4_CenterPad_DPadSouth, + k_EControllerActionOrigin_PS4_CenterPad_DPadWest, + k_EControllerActionOrigin_PS4_CenterPad_DPadEast, + k_EControllerActionOrigin_PS4_LeftTrigger_Pull, + k_EControllerActionOrigin_PS4_LeftTrigger_Click, + k_EControllerActionOrigin_PS4_RightTrigger_Pull, + k_EControllerActionOrigin_PS4_RightTrigger_Click, + k_EControllerActionOrigin_PS4_LeftStick_Move, + k_EControllerActionOrigin_PS4_LeftStick_Click, + k_EControllerActionOrigin_PS4_LeftStick_DPadNorth, + k_EControllerActionOrigin_PS4_LeftStick_DPadSouth, + k_EControllerActionOrigin_PS4_LeftStick_DPadWest, + k_EControllerActionOrigin_PS4_LeftStick_DPadEast, + k_EControllerActionOrigin_PS4_RightStick_Move, + k_EControllerActionOrigin_PS4_RightStick_Click, + k_EControllerActionOrigin_PS4_RightStick_DPadNorth, + k_EControllerActionOrigin_PS4_RightStick_DPadSouth, + k_EControllerActionOrigin_PS4_RightStick_DPadWest, + k_EControllerActionOrigin_PS4_RightStick_DPadEast, + k_EControllerActionOrigin_PS4_DPad_North, + k_EControllerActionOrigin_PS4_DPad_South, + k_EControllerActionOrigin_PS4_DPad_West, + k_EControllerActionOrigin_PS4_DPad_East, + k_EControllerActionOrigin_PS4_Gyro_Move, + k_EControllerActionOrigin_PS4_Gyro_Pitch, + k_EControllerActionOrigin_PS4_Gyro_Yaw, + k_EControllerActionOrigin_PS4_Gyro_Roll, + + // XBox One + k_EControllerActionOrigin_XBoxOne_A, + k_EControllerActionOrigin_XBoxOne_B, + k_EControllerActionOrigin_XBoxOne_X, + k_EControllerActionOrigin_XBoxOne_Y, + k_EControllerActionOrigin_XBoxOne_LeftBumper, + k_EControllerActionOrigin_XBoxOne_RightBumper, + k_EControllerActionOrigin_XBoxOne_Menu, //Start + k_EControllerActionOrigin_XBoxOne_View, //Back + k_EControllerActionOrigin_XBoxOne_LeftTrigger_Pull, + k_EControllerActionOrigin_XBoxOne_LeftTrigger_Click, + k_EControllerActionOrigin_XBoxOne_RightTrigger_Pull, + k_EControllerActionOrigin_XBoxOne_RightTrigger_Click, + k_EControllerActionOrigin_XBoxOne_LeftStick_Move, + k_EControllerActionOrigin_XBoxOne_LeftStick_Click, + k_EControllerActionOrigin_XBoxOne_LeftStick_DPadNorth, + k_EControllerActionOrigin_XBoxOne_LeftStick_DPadSouth, + k_EControllerActionOrigin_XBoxOne_LeftStick_DPadWest, + k_EControllerActionOrigin_XBoxOne_LeftStick_DPadEast, + k_EControllerActionOrigin_XBoxOne_RightStick_Move, + k_EControllerActionOrigin_XBoxOne_RightStick_Click, + k_EControllerActionOrigin_XBoxOne_RightStick_DPadNorth, + k_EControllerActionOrigin_XBoxOne_RightStick_DPadSouth, + k_EControllerActionOrigin_XBoxOne_RightStick_DPadWest, + k_EControllerActionOrigin_XBoxOne_RightStick_DPadEast, + k_EControllerActionOrigin_XBoxOne_DPad_North, + k_EControllerActionOrigin_XBoxOne_DPad_South, + k_EControllerActionOrigin_XBoxOne_DPad_West, + k_EControllerActionOrigin_XBoxOne_DPad_East, + + // XBox 360 + k_EControllerActionOrigin_XBox360_A, + k_EControllerActionOrigin_XBox360_B, + k_EControllerActionOrigin_XBox360_X, + k_EControllerActionOrigin_XBox360_Y, + k_EControllerActionOrigin_XBox360_LeftBumper, + k_EControllerActionOrigin_XBox360_RightBumper, + k_EControllerActionOrigin_XBox360_Start, //Start + k_EControllerActionOrigin_XBox360_Back, //Back + k_EControllerActionOrigin_XBox360_LeftTrigger_Pull, + k_EControllerActionOrigin_XBox360_LeftTrigger_Click, + k_EControllerActionOrigin_XBox360_RightTrigger_Pull, + k_EControllerActionOrigin_XBox360_RightTrigger_Click, + k_EControllerActionOrigin_XBox360_LeftStick_Move, + k_EControllerActionOrigin_XBox360_LeftStick_Click, + k_EControllerActionOrigin_XBox360_LeftStick_DPadNorth, + k_EControllerActionOrigin_XBox360_LeftStick_DPadSouth, + k_EControllerActionOrigin_XBox360_LeftStick_DPadWest, + k_EControllerActionOrigin_XBox360_LeftStick_DPadEast, + k_EControllerActionOrigin_XBox360_RightStick_Move, + k_EControllerActionOrigin_XBox360_RightStick_Click, + k_EControllerActionOrigin_XBox360_RightStick_DPadNorth, + k_EControllerActionOrigin_XBox360_RightStick_DPadSouth, + k_EControllerActionOrigin_XBox360_RightStick_DPadWest, + k_EControllerActionOrigin_XBox360_RightStick_DPadEast, + k_EControllerActionOrigin_XBox360_DPad_North, + k_EControllerActionOrigin_XBox360_DPad_South, + k_EControllerActionOrigin_XBox360_DPad_West, + k_EControllerActionOrigin_XBox360_DPad_East, + + // SteamController V2 + k_EControllerActionOrigin_SteamV2_A, + k_EControllerActionOrigin_SteamV2_B, + k_EControllerActionOrigin_SteamV2_X, + k_EControllerActionOrigin_SteamV2_Y, + k_EControllerActionOrigin_SteamV2_LeftBumper, + k_EControllerActionOrigin_SteamV2_RightBumper, + k_EControllerActionOrigin_SteamV2_LeftGrip_Lower, + k_EControllerActionOrigin_SteamV2_LeftGrip_Upper, + k_EControllerActionOrigin_SteamV2_RightGrip_Lower, + k_EControllerActionOrigin_SteamV2_RightGrip_Upper, + k_EControllerActionOrigin_SteamV2_LeftBumper_Pressure, + k_EControllerActionOrigin_SteamV2_RightBumper_Pressure, + k_EControllerActionOrigin_SteamV2_LeftGrip_Pressure, + k_EControllerActionOrigin_SteamV2_RightGrip_Pressure, + k_EControllerActionOrigin_SteamV2_LeftGrip_Upper_Pressure, + k_EControllerActionOrigin_SteamV2_RightGrip_Upper_Pressure, + k_EControllerActionOrigin_SteamV2_Start, + k_EControllerActionOrigin_SteamV2_Back, + k_EControllerActionOrigin_SteamV2_LeftPad_Touch, + k_EControllerActionOrigin_SteamV2_LeftPad_Swipe, + k_EControllerActionOrigin_SteamV2_LeftPad_Click, + k_EControllerActionOrigin_SteamV2_LeftPad_Pressure, + k_EControllerActionOrigin_SteamV2_LeftPad_DPadNorth, + k_EControllerActionOrigin_SteamV2_LeftPad_DPadSouth, + k_EControllerActionOrigin_SteamV2_LeftPad_DPadWest, + k_EControllerActionOrigin_SteamV2_LeftPad_DPadEast, + k_EControllerActionOrigin_SteamV2_RightPad_Touch, + k_EControllerActionOrigin_SteamV2_RightPad_Swipe, + k_EControllerActionOrigin_SteamV2_RightPad_Click, + k_EControllerActionOrigin_SteamV2_RightPad_Pressure, + k_EControllerActionOrigin_SteamV2_RightPad_DPadNorth, + k_EControllerActionOrigin_SteamV2_RightPad_DPadSouth, + k_EControllerActionOrigin_SteamV2_RightPad_DPadWest, + k_EControllerActionOrigin_SteamV2_RightPad_DPadEast, + k_EControllerActionOrigin_SteamV2_LeftTrigger_Pull, + k_EControllerActionOrigin_SteamV2_LeftTrigger_Click, + k_EControllerActionOrigin_SteamV2_RightTrigger_Pull, + k_EControllerActionOrigin_SteamV2_RightTrigger_Click, + k_EControllerActionOrigin_SteamV2_LeftStick_Move, + k_EControllerActionOrigin_SteamV2_LeftStick_Click, + k_EControllerActionOrigin_SteamV2_LeftStick_DPadNorth, + k_EControllerActionOrigin_SteamV2_LeftStick_DPadSouth, + k_EControllerActionOrigin_SteamV2_LeftStick_DPadWest, + k_EControllerActionOrigin_SteamV2_LeftStick_DPadEast, + k_EControllerActionOrigin_SteamV2_Gyro_Move, + k_EControllerActionOrigin_SteamV2_Gyro_Pitch, + k_EControllerActionOrigin_SteamV2_Gyro_Yaw, + k_EControllerActionOrigin_SteamV2_Gyro_Roll, + + // Switch - Pro or Joycons used as a single input device. + // This does not apply to a single joycon + k_EControllerActionOrigin_Switch_A, + k_EControllerActionOrigin_Switch_B, + k_EControllerActionOrigin_Switch_X, + k_EControllerActionOrigin_Switch_Y, + k_EControllerActionOrigin_Switch_LeftBumper, + k_EControllerActionOrigin_Switch_RightBumper, + k_EControllerActionOrigin_Switch_Plus, //Start + k_EControllerActionOrigin_Switch_Minus, //Back + k_EControllerActionOrigin_Switch_Capture, + k_EControllerActionOrigin_Switch_LeftTrigger_Pull, + k_EControllerActionOrigin_Switch_LeftTrigger_Click, + k_EControllerActionOrigin_Switch_RightTrigger_Pull, + k_EControllerActionOrigin_Switch_RightTrigger_Click, + k_EControllerActionOrigin_Switch_LeftStick_Move, + k_EControllerActionOrigin_Switch_LeftStick_Click, + k_EControllerActionOrigin_Switch_LeftStick_DPadNorth, + k_EControllerActionOrigin_Switch_LeftStick_DPadSouth, + k_EControllerActionOrigin_Switch_LeftStick_DPadWest, + k_EControllerActionOrigin_Switch_LeftStick_DPadEast, + k_EControllerActionOrigin_Switch_RightStick_Move, + k_EControllerActionOrigin_Switch_RightStick_Click, + k_EControllerActionOrigin_Switch_RightStick_DPadNorth, + k_EControllerActionOrigin_Switch_RightStick_DPadSouth, + k_EControllerActionOrigin_Switch_RightStick_DPadWest, + k_EControllerActionOrigin_Switch_RightStick_DPadEast, + k_EControllerActionOrigin_Switch_DPad_North, + k_EControllerActionOrigin_Switch_DPad_South, + k_EControllerActionOrigin_Switch_DPad_West, + k_EControllerActionOrigin_Switch_DPad_East, + k_EControllerActionOrigin_Switch_ProGyro_Move, // Primary Gyro in Pro Controller, or Right JoyCon + k_EControllerActionOrigin_Switch_ProGyro_Pitch, // Primary Gyro in Pro Controller, or Right JoyCon + k_EControllerActionOrigin_Switch_ProGyro_Yaw, // Primary Gyro in Pro Controller, or Right JoyCon + k_EControllerActionOrigin_Switch_ProGyro_Roll, // Primary Gyro in Pro Controller, or Right JoyCon + // Switch JoyCon Specific + k_EControllerActionOrigin_Switch_RightGyro_Move, // Right JoyCon Gyro generally should correspond to Pro's single gyro + k_EControllerActionOrigin_Switch_RightGyro_Pitch, // Right JoyCon Gyro generally should correspond to Pro's single gyro + k_EControllerActionOrigin_Switch_RightGyro_Yaw, // Right JoyCon Gyro generally should correspond to Pro's single gyro + k_EControllerActionOrigin_Switch_RightGyro_Roll, // Right JoyCon Gyro generally should correspond to Pro's single gyro + k_EControllerActionOrigin_Switch_LeftGyro_Move, + k_EControllerActionOrigin_Switch_LeftGyro_Pitch, + k_EControllerActionOrigin_Switch_LeftGyro_Yaw, + k_EControllerActionOrigin_Switch_LeftGyro_Roll, + k_EControllerActionOrigin_Switch_LeftGrip_Lower, // Left JoyCon SR Button + k_EControllerActionOrigin_Switch_LeftGrip_Upper, // Left JoyCon SL Button + k_EControllerActionOrigin_Switch_RightGrip_Lower, // Right JoyCon SL Button + k_EControllerActionOrigin_Switch_RightGrip_Upper, // Right JoyCon SR Button + + // Added in SDK 1.45 + k_EControllerActionOrigin_PS4_DPad_Move, + k_EControllerActionOrigin_XBoxOne_DPad_Move, + k_EControllerActionOrigin_XBox360_DPad_Move, + k_EControllerActionOrigin_Switch_DPad_Move, + + // Added in SDK 1.51 + k_EControllerActionOrigin_PS5_X, + k_EControllerActionOrigin_PS5_Circle, + k_EControllerActionOrigin_PS5_Triangle, + k_EControllerActionOrigin_PS5_Square, + k_EControllerActionOrigin_PS5_LeftBumper, + k_EControllerActionOrigin_PS5_RightBumper, + k_EControllerActionOrigin_PS5_Option, //Start + k_EControllerActionOrigin_PS5_Create, //Back + k_EControllerActionOrigin_PS5_Mute, + k_EControllerActionOrigin_PS5_LeftPad_Touch, + k_EControllerActionOrigin_PS5_LeftPad_Swipe, + k_EControllerActionOrigin_PS5_LeftPad_Click, + k_EControllerActionOrigin_PS5_LeftPad_DPadNorth, + k_EControllerActionOrigin_PS5_LeftPad_DPadSouth, + k_EControllerActionOrigin_PS5_LeftPad_DPadWest, + k_EControllerActionOrigin_PS5_LeftPad_DPadEast, + k_EControllerActionOrigin_PS5_RightPad_Touch, + k_EControllerActionOrigin_PS5_RightPad_Swipe, + k_EControllerActionOrigin_PS5_RightPad_Click, + k_EControllerActionOrigin_PS5_RightPad_DPadNorth, + k_EControllerActionOrigin_PS5_RightPad_DPadSouth, + k_EControllerActionOrigin_PS5_RightPad_DPadWest, + k_EControllerActionOrigin_PS5_RightPad_DPadEast, + k_EControllerActionOrigin_PS5_CenterPad_Touch, + k_EControllerActionOrigin_PS5_CenterPad_Swipe, + k_EControllerActionOrigin_PS5_CenterPad_Click, + k_EControllerActionOrigin_PS5_CenterPad_DPadNorth, + k_EControllerActionOrigin_PS5_CenterPad_DPadSouth, + k_EControllerActionOrigin_PS5_CenterPad_DPadWest, + k_EControllerActionOrigin_PS5_CenterPad_DPadEast, + k_EControllerActionOrigin_PS5_LeftTrigger_Pull, + k_EControllerActionOrigin_PS5_LeftTrigger_Click, + k_EControllerActionOrigin_PS5_RightTrigger_Pull, + k_EControllerActionOrigin_PS5_RightTrigger_Click, + k_EControllerActionOrigin_PS5_LeftStick_Move, + k_EControllerActionOrigin_PS5_LeftStick_Click, + k_EControllerActionOrigin_PS5_LeftStick_DPadNorth, + k_EControllerActionOrigin_PS5_LeftStick_DPadSouth, + k_EControllerActionOrigin_PS5_LeftStick_DPadWest, + k_EControllerActionOrigin_PS5_LeftStick_DPadEast, + k_EControllerActionOrigin_PS5_RightStick_Move, + k_EControllerActionOrigin_PS5_RightStick_Click, + k_EControllerActionOrigin_PS5_RightStick_DPadNorth, + k_EControllerActionOrigin_PS5_RightStick_DPadSouth, + k_EControllerActionOrigin_PS5_RightStick_DPadWest, + k_EControllerActionOrigin_PS5_RightStick_DPadEast, + k_EControllerActionOrigin_PS5_DPad_Move, + k_EControllerActionOrigin_PS5_DPad_North, + k_EControllerActionOrigin_PS5_DPad_South, + k_EControllerActionOrigin_PS5_DPad_West, + k_EControllerActionOrigin_PS5_DPad_East, + k_EControllerActionOrigin_PS5_Gyro_Move, + k_EControllerActionOrigin_PS5_Gyro_Pitch, + k_EControllerActionOrigin_PS5_Gyro_Yaw, + k_EControllerActionOrigin_PS5_Gyro_Roll, + + + k_EControllerActionOrigin_Count, // If Steam has added support for new controllers origins will go here. + k_EControllerActionOrigin_MaximumPossibleValue = 32767, // Origins are currently a maximum of 16 bits. +}; + +#ifndef ISTEAMINPUT_H +enum EXboxOrigin +{ + k_EXboxOrigin_A, + k_EXboxOrigin_B, + k_EXboxOrigin_X, + k_EXboxOrigin_Y, + k_EXboxOrigin_LeftBumper, + k_EXboxOrigin_RightBumper, + k_EXboxOrigin_Menu, //Start + k_EXboxOrigin_View, //Back + k_EXboxOrigin_LeftTrigger_Pull, + k_EXboxOrigin_LeftTrigger_Click, + k_EXboxOrigin_RightTrigger_Pull, + k_EXboxOrigin_RightTrigger_Click, + k_EXboxOrigin_LeftStick_Move, + k_EXboxOrigin_LeftStick_Click, + k_EXboxOrigin_LeftStick_DPadNorth, + k_EXboxOrigin_LeftStick_DPadSouth, + k_EXboxOrigin_LeftStick_DPadWest, + k_EXboxOrigin_LeftStick_DPadEast, + k_EXboxOrigin_RightStick_Move, + k_EXboxOrigin_RightStick_Click, + k_EXboxOrigin_RightStick_DPadNorth, + k_EXboxOrigin_RightStick_DPadSouth, + k_EXboxOrigin_RightStick_DPadWest, + k_EXboxOrigin_RightStick_DPadEast, + k_EXboxOrigin_DPad_North, + k_EXboxOrigin_DPad_South, + k_EXboxOrigin_DPad_West, + k_EXboxOrigin_DPad_East, +}; + +enum ESteamInputType +{ + k_ESteamInputType_Unknown, + k_ESteamInputType_SteamController, + k_ESteamInputType_XBox360Controller, + k_ESteamInputType_XBoxOneController, + k_ESteamInputType_GenericGamepad, // DirectInput controllers + k_ESteamInputType_PS4Controller, + k_ESteamInputType_AppleMFiController, // Unused + k_ESteamInputType_AndroidController, // Unused + k_ESteamInputType_SwitchJoyConPair, // Unused + k_ESteamInputType_SwitchJoyConSingle, // Unused + k_ESteamInputType_SwitchProController, + k_ESteamInputType_MobileTouch, // Steam Link App On-screen Virtual Controller + k_ESteamInputType_PS3Controller, // Currently uses PS4 Origins + k_ESteamInputType_PS5Controller, // Added in SDK 151 + k_ESteamInputType_Count, + k_ESteamInputType_MaximumPossibleValue = 255, +}; +#endif + +enum ESteamControllerLEDFlag +{ + k_ESteamControllerLEDFlag_SetColor, + k_ESteamControllerLEDFlag_RestoreUserDefault +}; + +// ControllerHandle_t is used to refer to a specific controller. +// This handle will consistently identify a controller, even if it is disconnected and re-connected +typedef uint64 ControllerHandle_t; + + +// These handles are used to refer to a specific in-game action or action set +// All action handles should be queried during initialization for performance reasons +typedef uint64 ControllerActionSetHandle_t; +typedef uint64 ControllerDigitalActionHandle_t; +typedef uint64 ControllerAnalogActionHandle_t; + +#pragma pack( push, 1 ) + +#ifdef ISTEAMINPUT_H +#define ControllerAnalogActionData_t InputAnalogActionData_t +#define ControllerDigitalActionData_t InputDigitalActionData_t +#define ControllerMotionData_t InputMotionData_t +#else +struct ControllerAnalogActionData_t +{ + // Type of data coming from this action, this will match what got specified in the action set + EControllerSourceMode eMode; + + // The current state of this action; will be delta updates for mouse actions + float x, y; + + // Whether or not this action is currently available to be bound in the active action set + bool bActive; +}; + +struct ControllerDigitalActionData_t +{ + // The current state of this action; will be true if currently pressed + bool bState; + + // Whether or not this action is currently available to be bound in the active action set + bool bActive; +}; + +struct ControllerMotionData_t +{ + // Sensor-fused absolute rotation; will drift in heading + float rotQuatX; + float rotQuatY; + float rotQuatZ; + float rotQuatW; + + // Positional acceleration + float posAccelX; + float posAccelY; + float posAccelZ; + + // Angular velocity + float rotVelX; + float rotVelY; + float rotVelZ; +}; +#endif +#pragma pack( pop ) + + +//----------------------------------------------------------------------------- +// Purpose: Steam Input API +//----------------------------------------------------------------------------- +class ISteamController +{ +public: + + // Init and Shutdown must be called when starting/ending use of this interface + virtual bool Init() = 0; + virtual bool Shutdown() = 0; + + // Synchronize API state with the latest Steam Controller inputs available. This + // is performed automatically by SteamAPI_RunCallbacks, but for the absolute lowest + // possible latency, you call this directly before reading controller state. This must + // be called from somewhere before GetConnectedControllers will return any handles + virtual void RunFrame() = 0; + + // Enumerate currently connected controllers + // handlesOut should point to a STEAM_CONTROLLER_MAX_COUNT sized array of ControllerHandle_t handles + // Returns the number of handles written to handlesOut + virtual int GetConnectedControllers( STEAM_OUT_ARRAY_COUNT( STEAM_CONTROLLER_MAX_COUNT, Receives list of connected controllers ) ControllerHandle_t *handlesOut ) = 0; + + //----------------------------------------------------------------------------- + // ACTION SETS + //----------------------------------------------------------------------------- + + // Lookup the handle for an Action Set. Best to do this once on startup, and store the handles for all future API calls. + virtual ControllerActionSetHandle_t GetActionSetHandle( const char *pszActionSetName ) = 0; + + // Reconfigure the controller to use the specified action set (ie 'Menu', 'Walk' or 'Drive') + // This is cheap, and can be safely called repeatedly. It's often easier to repeatedly call it in + // your state loops, instead of trying to place it in all of your state transitions. + virtual void ActivateActionSet( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetHandle ) = 0; + virtual ControllerActionSetHandle_t GetCurrentActionSet( ControllerHandle_t controllerHandle ) = 0; + + // ACTION SET LAYERS + virtual void ActivateActionSetLayer( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetLayerHandle ) = 0; + virtual void DeactivateActionSetLayer( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetLayerHandle ) = 0; + virtual void DeactivateAllActionSetLayers( ControllerHandle_t controllerHandle ) = 0; + // Enumerate currently active layers + // handlesOut should point to a STEAM_CONTROLLER_MAX_ACTIVE_LAYERS sized array of ControllerActionSetHandle_t handles. + // Returns the number of handles written to handlesOut + virtual int GetActiveActionSetLayers( ControllerHandle_t controllerHandle, STEAM_OUT_ARRAY_COUNT( STEAM_CONTROLLER_MAX_ACTIVE_LAYERS, Receives list of active layers ) ControllerActionSetHandle_t *handlesOut ) = 0; + + //----------------------------------------------------------------------------- + // ACTIONS + //----------------------------------------------------------------------------- + + // Lookup the handle for a digital action. Best to do this once on startup, and store the handles for all future API calls. + virtual ControllerDigitalActionHandle_t GetDigitalActionHandle( const char *pszActionName ) = 0; + + // Returns the current state of the supplied digital game action + virtual ControllerDigitalActionData_t GetDigitalActionData( ControllerHandle_t controllerHandle, ControllerDigitalActionHandle_t digitalActionHandle ) = 0; + + // Get the origin(s) for a digital action within an action set. Returns the number of origins supplied in originsOut. Use this to display the appropriate on-screen prompt for the action. + // originsOut should point to a STEAM_CONTROLLER_MAX_ORIGINS sized array of EControllerActionOrigin handles. The EControllerActionOrigin enum will get extended as support for new controller controllers gets added to + // the Steam client and will exceed the values from this header, please check bounds if you are using a look up table. + virtual int GetDigitalActionOrigins( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetHandle, ControllerDigitalActionHandle_t digitalActionHandle, STEAM_OUT_ARRAY_COUNT( STEAM_CONTROLLER_MAX_ORIGINS, Receives list of aciton origins ) EControllerActionOrigin *originsOut ) = 0; + + // Lookup the handle for an analog action. Best to do this once on startup, and store the handles for all future API calls. + virtual ControllerAnalogActionHandle_t GetAnalogActionHandle( const char *pszActionName ) = 0; + + // Returns the current state of these supplied analog game action + virtual ControllerAnalogActionData_t GetAnalogActionData( ControllerHandle_t controllerHandle, ControllerAnalogActionHandle_t analogActionHandle ) = 0; + + // Get the origin(s) for an analog action within an action set. Returns the number of origins supplied in originsOut. Use this to display the appropriate on-screen prompt for the action. + // originsOut should point to a STEAM_CONTROLLER_MAX_ORIGINS sized array of EControllerActionOrigin handles. The EControllerActionOrigin enum will get extended as support for new controller controllers gets added to + // the Steam client and will exceed the values from this header, please check bounds if you are using a look up table. + virtual int GetAnalogActionOrigins( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetHandle, ControllerAnalogActionHandle_t analogActionHandle, STEAM_OUT_ARRAY_COUNT( STEAM_CONTROLLER_MAX_ORIGINS, Receives list of action origins ) EControllerActionOrigin *originsOut ) = 0; + + // Get a local path to art for on-screen glyph for a particular origin - this call is cheap + virtual const char *GetGlyphForActionOrigin( EControllerActionOrigin eOrigin ) = 0; + + // Returns a localized string (from Steam's language setting) for the specified origin - this call is serialized + virtual const char *GetStringForActionOrigin( EControllerActionOrigin eOrigin ) = 0; + + virtual void StopAnalogActionMomentum( ControllerHandle_t controllerHandle, ControllerAnalogActionHandle_t eAction ) = 0; + + // Returns raw motion data from the specified controller + virtual ControllerMotionData_t GetMotionData( ControllerHandle_t controllerHandle ) = 0; + + //----------------------------------------------------------------------------- + // OUTPUTS + //----------------------------------------------------------------------------- + + // Trigger a haptic pulse on a controller + virtual void TriggerHapticPulse( ControllerHandle_t controllerHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec ) = 0; + + // Trigger a pulse with a duty cycle of usDurationMicroSec / usOffMicroSec, unRepeat times. + // nFlags is currently unused and reserved for future use. + virtual void TriggerRepeatedHapticPulse( ControllerHandle_t controllerHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec, unsigned short usOffMicroSec, unsigned short unRepeat, unsigned int nFlags ) = 0; + + // Trigger a vibration event on supported controllers. + virtual void TriggerVibration( ControllerHandle_t controllerHandle, unsigned short usLeftSpeed, unsigned short usRightSpeed ) = 0; + + // Set the controller LED color on supported controllers. + virtual void SetLEDColor( ControllerHandle_t controllerHandle, uint8 nColorR, uint8 nColorG, uint8 nColorB, unsigned int nFlags ) = 0; + + //----------------------------------------------------------------------------- + // Utility functions availible without using the rest of Steam Input API + //----------------------------------------------------------------------------- + + // Invokes the Steam overlay and brings up the binding screen if the user is using Big Picture Mode + // If the user is not in Big Picture Mode it will open up the binding in a new window + virtual bool ShowBindingPanel( ControllerHandle_t controllerHandle ) = 0; + + // Returns the input type for a particular handle - unlike EControllerActionOrigin which update with Steam and may return unrecognized values + // ESteamInputType will remain static and only return valid values from your SDK version + virtual ESteamInputType GetInputTypeForHandle( ControllerHandle_t controllerHandle ) = 0; + + // Returns the associated controller handle for the specified emulated gamepad - can be used with the above 2 functions + // to identify controllers presented to your game over Xinput. Returns 0 if the Xinput index isn't associated with Steam Input + virtual ControllerHandle_t GetControllerForGamepadIndex( int nIndex ) = 0; + + // Returns the associated gamepad index for the specified controller, if emulating a gamepad or -1 if not associated with an Xinput index + virtual int GetGamepadIndexForController( ControllerHandle_t ulControllerHandle ) = 0; + + // Returns a localized string (from Steam's language setting) for the specified Xbox controller origin. + virtual const char *GetStringForXboxOrigin( EXboxOrigin eOrigin ) = 0; + + // Get a local path to art for on-screen glyph for a particular Xbox controller origin. + virtual const char *GetGlyphForXboxOrigin( EXboxOrigin eOrigin ) = 0; + + // Get the equivalent ActionOrigin for a given Xbox controller origin this can be chained with GetGlyphForActionOrigin to provide future proof glyphs for + // non-Steam Input API action games. Note - this only translates the buttons directly and doesn't take into account any remapping a user has made in their configuration + virtual EControllerActionOrigin GetActionOriginFromXboxOrigin( ControllerHandle_t controllerHandle, EXboxOrigin eOrigin ) = 0; + + // Convert an origin to another controller type - for inputs not present on the other controller type this will return k_EControllerActionOrigin_None + virtual EControllerActionOrigin TranslateActionOrigin( ESteamInputType eDestinationInputType, EControllerActionOrigin eSourceOrigin ) = 0; + + // Get the binding revision for a given device. Returns false if the handle was not valid or if a mapping is not yet loaded for the device + virtual bool GetControllerBindingRevision( ControllerHandle_t controllerHandle, int *pMajor, int *pMinor ) = 0; +}; + +#define STEAMCONTROLLER_INTERFACE_VERSION "SteamController008" + +// Global interface accessor +inline ISteamController *SteamController(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamController *, SteamController, STEAMCONTROLLER_INTERFACE_VERSION ); + +#endif // ISTEAMCONTROLLER_H diff --git a/lib/steam/public/steam/isteamfriends.h b/lib/steam/public/steam/isteamfriends.h new file mode 100644 index 0000000..a40cfbb --- /dev/null +++ b/lib/steam/public/steam/isteamfriends.h @@ -0,0 +1,693 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== +// +// Purpose: interface to both friends list data and general information about users +// +//============================================================================= + +#ifndef ISTEAMFRIENDS_H +#define ISTEAMFRIENDS_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +//----------------------------------------------------------------------------- +// Purpose: set of relationships to other users +//----------------------------------------------------------------------------- +enum EFriendRelationship +{ + k_EFriendRelationshipNone = 0, + k_EFriendRelationshipBlocked = 1, // this doesn't get stored; the user has just done an Ignore on an friendship invite + k_EFriendRelationshipRequestRecipient = 2, + k_EFriendRelationshipFriend = 3, + k_EFriendRelationshipRequestInitiator = 4, + k_EFriendRelationshipIgnored = 5, // this is stored; the user has explicit blocked this other user from comments/chat/etc + k_EFriendRelationshipIgnoredFriend = 6, + k_EFriendRelationshipSuggested_DEPRECATED = 7, // was used by the original implementation of the facebook linking feature, but now unused. + + // keep this updated + k_EFriendRelationshipMax = 8, +}; + +// maximum length of friend group name (not including terminating nul!) +const int k_cchMaxFriendsGroupName = 64; + +// maximum number of groups a single user is allowed +const int k_cFriendsGroupLimit = 100; + +// friends group identifier type +typedef int16 FriendsGroupID_t; + +// invalid friends group identifier constant +const FriendsGroupID_t k_FriendsGroupID_Invalid = -1; + +const int k_cEnumerateFollowersMax = 50; + + +//----------------------------------------------------------------------------- +// Purpose: list of states a friend can be in +//----------------------------------------------------------------------------- +enum EPersonaState +{ + k_EPersonaStateOffline = 0, // friend is not currently logged on + k_EPersonaStateOnline = 1, // friend is logged on + k_EPersonaStateBusy = 2, // user is on, but busy + k_EPersonaStateAway = 3, // auto-away feature + k_EPersonaStateSnooze = 4, // auto-away for a long time + k_EPersonaStateLookingToTrade = 5, // Online, trading + k_EPersonaStateLookingToPlay = 6, // Online, wanting to play + k_EPersonaStateInvisible = 7, // Online, but appears offline to friends. This status is never published to clients. + k_EPersonaStateMax, +}; + + +//----------------------------------------------------------------------------- +// Purpose: flags for enumerating friends list, or quickly checking a the relationship between users +//----------------------------------------------------------------------------- +enum EFriendFlags +{ + k_EFriendFlagNone = 0x00, + k_EFriendFlagBlocked = 0x01, + k_EFriendFlagFriendshipRequested = 0x02, + k_EFriendFlagImmediate = 0x04, // "regular" friend + k_EFriendFlagClanMember = 0x08, + k_EFriendFlagOnGameServer = 0x10, + // k_EFriendFlagHasPlayedWith = 0x20, // not currently used + // k_EFriendFlagFriendOfFriend = 0x40, // not currently used + k_EFriendFlagRequestingFriendship = 0x80, + k_EFriendFlagRequestingInfo = 0x100, + k_EFriendFlagIgnored = 0x200, + k_EFriendFlagIgnoredFriend = 0x400, + // k_EFriendFlagSuggested = 0x800, // not used + k_EFriendFlagChatMember = 0x1000, + k_EFriendFlagAll = 0xFFFF, +}; + + +// friend game played information +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif +struct FriendGameInfo_t +{ + CGameID m_gameID; + uint32 m_unGameIP; + uint16 m_usGamePort; + uint16 m_usQueryPort; + CSteamID m_steamIDLobby; +}; +#pragma pack( pop ) + +// maximum number of characters in a user's name. Two flavors; one for UTF-8 and one for UTF-16. +// The UTF-8 version has to be very generous to accomodate characters that get large when encoded +// in UTF-8. +enum +{ + k_cchPersonaNameMax = 128, + k_cwchPersonaNameMax = 32, +}; + +//----------------------------------------------------------------------------- +// Purpose: user restriction flags +//----------------------------------------------------------------------------- +enum EUserRestriction +{ + k_nUserRestrictionNone = 0, // no known chat/content restriction + k_nUserRestrictionUnknown = 1, // we don't know yet (user offline) + k_nUserRestrictionAnyChat = 2, // user is not allowed to (or can't) send/recv any chat + k_nUserRestrictionVoiceChat = 4, // user is not allowed to (or can't) send/recv voice chat + k_nUserRestrictionGroupChat = 8, // user is not allowed to (or can't) send/recv group chat + k_nUserRestrictionRating = 16, // user is too young according to rating in current region + k_nUserRestrictionGameInvites = 32, // user cannot send or recv game invites (e.g. mobile) + k_nUserRestrictionTrading = 64, // user cannot participate in trading (console, mobile) +}; + +// size limit on chat room or member metadata +const uint32 k_cubChatMetadataMax = 8192; + +// size limits on Rich Presence data +enum { k_cchMaxRichPresenceKeys = 30 }; +enum { k_cchMaxRichPresenceKeyLength = 64 }; +enum { k_cchMaxRichPresenceValueLength = 256 }; + +// These values are passed as parameters to the store +enum EOverlayToStoreFlag +{ + k_EOverlayToStoreFlag_None = 0, + k_EOverlayToStoreFlag_AddToCart = 1, + k_EOverlayToStoreFlag_AddToCartAndShow = 2, +}; + + +//----------------------------------------------------------------------------- +// Purpose: Tells Steam where to place the browser window inside the overlay +//----------------------------------------------------------------------------- +enum EActivateGameOverlayToWebPageMode +{ + k_EActivateGameOverlayToWebPageMode_Default = 0, // Browser will open next to all other windows that the user has open in the overlay. + // The window will remain open, even if the user closes then re-opens the overlay. + + k_EActivateGameOverlayToWebPageMode_Modal = 1 // Browser will be opened in a special overlay configuration which hides all other windows + // that the user has open in the overlay. When the user closes the overlay, the browser window + // will also close. When the user closes the browser window, the overlay will automatically close. +}; + + +//----------------------------------------------------------------------------- +// Purpose: interface to accessing information about individual users, +// that can be a friend, in a group, on a game server or in a lobby with the local user +//----------------------------------------------------------------------------- +class ISteamFriends +{ +public: + // returns the local players name - guaranteed to not be NULL. + // this is the same name as on the users community profile page + // this is stored in UTF-8 format + // like all the other interface functions that return a char *, it's important that this pointer is not saved + // off; it will eventually be free'd or re-allocated + virtual const char *GetPersonaName() = 0; + + // Sets the player name, stores it on the server and publishes the changes to all friends who are online. + // Changes take place locally immediately, and a PersonaStateChange_t is posted, presuming success. + // + // The final results are available through the return value SteamAPICall_t, using SetPersonaNameResponse_t. + // + // If the name change fails to happen on the server, then an additional global PersonaStateChange_t will be posted + // to change the name back, in addition to the SetPersonaNameResponse_t callback. + STEAM_CALL_RESULT( SetPersonaNameResponse_t ) + virtual SteamAPICall_t SetPersonaName( const char *pchPersonaName ) = 0; + + // gets the status of the current user + virtual EPersonaState GetPersonaState() = 0; + + // friend iteration + // takes a set of k_EFriendFlags, and returns the number of users the client knows about who meet that criteria + // then GetFriendByIndex() can then be used to return the id's of each of those users + virtual int GetFriendCount( int iFriendFlags ) = 0; + + // returns the steamID of a user + // iFriend is a index of range [0, GetFriendCount()) + // iFriendsFlags must be the same value as used in GetFriendCount() + // the returned CSteamID can then be used by all the functions below to access details about the user + virtual CSteamID GetFriendByIndex( int iFriend, int iFriendFlags ) = 0; + + // returns a relationship to a user + virtual EFriendRelationship GetFriendRelationship( CSteamID steamIDFriend ) = 0; + + // returns the current status of the specified user + // this will only be known by the local user if steamIDFriend is in their friends list; on the same game server; in a chat room or lobby; or in a small group with the local user + virtual EPersonaState GetFriendPersonaState( CSteamID steamIDFriend ) = 0; + + // returns the name another user - guaranteed to not be NULL. + // same rules as GetFriendPersonaState() apply as to whether or not the user knowns the name of the other user + // note that on first joining a lobby, chat room or game server the local user will not known the name of the other users automatically; that information will arrive asyncronously + // + virtual const char *GetFriendPersonaName( CSteamID steamIDFriend ) = 0; + + // returns true if the friend is actually in a game, and fills in pFriendGameInfo with an extra details + virtual bool GetFriendGamePlayed( CSteamID steamIDFriend, STEAM_OUT_STRUCT() FriendGameInfo_t *pFriendGameInfo ) = 0; + // accesses old friends names - returns an empty string when their are no more items in the history + virtual const char *GetFriendPersonaNameHistory( CSteamID steamIDFriend, int iPersonaName ) = 0; + // friends steam level + virtual int GetFriendSteamLevel( CSteamID steamIDFriend ) = 0; + + // Returns nickname the current user has set for the specified player. Returns NULL if the no nickname has been set for that player. + // DEPRECATED: GetPersonaName follows the Steam nickname preferences, so apps shouldn't need to care about nicknames explicitly. + virtual const char *GetPlayerNickname( CSteamID steamIDPlayer ) = 0; + + // friend grouping (tag) apis + // returns the number of friends groups + virtual int GetFriendsGroupCount() = 0; + // returns the friends group ID for the given index (invalid indices return k_FriendsGroupID_Invalid) + virtual FriendsGroupID_t GetFriendsGroupIDByIndex( int iFG ) = 0; + // returns the name for the given friends group (NULL in the case of invalid friends group IDs) + virtual const char *GetFriendsGroupName( FriendsGroupID_t friendsGroupID ) = 0; + // returns the number of members in a given friends group + virtual int GetFriendsGroupMembersCount( FriendsGroupID_t friendsGroupID ) = 0; + // gets up to nMembersCount members of the given friends group, if fewer exist than requested those positions' SteamIDs will be invalid + virtual void GetFriendsGroupMembersList( FriendsGroupID_t friendsGroupID, STEAM_OUT_ARRAY_CALL(nMembersCount, GetFriendsGroupMembersCount, friendsGroupID ) CSteamID *pOutSteamIDMembers, int nMembersCount ) = 0; + + // returns true if the specified user meets any of the criteria specified in iFriendFlags + // iFriendFlags can be the union (binary or, |) of one or more k_EFriendFlags values + virtual bool HasFriend( CSteamID steamIDFriend, int iFriendFlags ) = 0; + + // clan (group) iteration and access functions + virtual int GetClanCount() = 0; + virtual CSteamID GetClanByIndex( int iClan ) = 0; + virtual const char *GetClanName( CSteamID steamIDClan ) = 0; + virtual const char *GetClanTag( CSteamID steamIDClan ) = 0; + // returns the most recent information we have about what's happening in a clan + virtual bool GetClanActivityCounts( CSteamID steamIDClan, int *pnOnline, int *pnInGame, int *pnChatting ) = 0; + + // for clans a user is a member of, they will have reasonably up-to-date information, but for others you'll have to download the info to have the latest + STEAM_CALL_RESULT( DownloadClanActivityCountsResult_t ) + virtual SteamAPICall_t DownloadClanActivityCounts( STEAM_ARRAY_COUNT(cClansToRequest) CSteamID *psteamIDClans, int cClansToRequest ) = 0; + + // iterators for getting users in a chat room, lobby, game server or clan + // note that large clans that cannot be iterated by the local user + // note that the current user must be in a lobby to retrieve CSteamIDs of other users in that lobby + // steamIDSource can be the steamID of a group, game server, lobby or chat room + virtual int GetFriendCountFromSource( CSteamID steamIDSource ) = 0; + virtual CSteamID GetFriendFromSourceByIndex( CSteamID steamIDSource, int iFriend ) = 0; + + // returns true if the local user can see that steamIDUser is a member or in steamIDSource + virtual bool IsUserInSource( CSteamID steamIDUser, CSteamID steamIDSource ) = 0; + + // User is in a game pressing the talk button (will suppress the microphone for all voice comms from the Steam friends UI) + virtual void SetInGameVoiceSpeaking( CSteamID steamIDUser, bool bSpeaking ) = 0; + + // activates the game overlay, with an optional dialog to open + // valid options include "Friends", "Community", "Players", "Settings", "OfficialGameGroup", "Stats", "Achievements", + // "chatroomgroup/nnnn" + virtual void ActivateGameOverlay( const char *pchDialog ) = 0; + + // activates game overlay to a specific place + // valid options are + // "steamid" - opens the overlay web browser to the specified user or groups profile + // "chat" - opens a chat window to the specified user, or joins the group chat + // "jointrade" - opens a window to a Steam Trading session that was started with the ISteamEconomy/StartTrade Web API + // "stats" - opens the overlay web browser to the specified user's stats + // "achievements" - opens the overlay web browser to the specified user's achievements + // "friendadd" - opens the overlay in minimal mode prompting the user to add the target user as a friend + // "friendremove" - opens the overlay in minimal mode prompting the user to remove the target friend + // "friendrequestaccept" - opens the overlay in minimal mode prompting the user to accept an incoming friend invite + // "friendrequestignore" - opens the overlay in minimal mode prompting the user to ignore an incoming friend invite + virtual void ActivateGameOverlayToUser( const char *pchDialog, CSteamID steamID ) = 0; + + // activates game overlay web browser directly to the specified URL + // full address with protocol type is required, e.g. http://www.steamgames.com/ + virtual void ActivateGameOverlayToWebPage( const char *pchURL, EActivateGameOverlayToWebPageMode eMode = k_EActivateGameOverlayToWebPageMode_Default ) = 0; + + // activates game overlay to store page for app + virtual void ActivateGameOverlayToStore( AppId_t nAppID, EOverlayToStoreFlag eFlag ) = 0; + + // Mark a target user as 'played with'. This is a client-side only feature that requires that the calling user is + // in game + virtual void SetPlayedWith( CSteamID steamIDUserPlayedWith ) = 0; + + // activates game overlay to open the invite dialog. Invitations will be sent for the provided lobby. + virtual void ActivateGameOverlayInviteDialog( CSteamID steamIDLobby ) = 0; + + // gets the small (32x32) avatar of the current user, which is a handle to be used in IClientUtils::GetImageRGBA(), or 0 if none set + virtual int GetSmallFriendAvatar( CSteamID steamIDFriend ) = 0; + + // gets the medium (64x64) avatar of the current user, which is a handle to be used in IClientUtils::GetImageRGBA(), or 0 if none set + virtual int GetMediumFriendAvatar( CSteamID steamIDFriend ) = 0; + + // gets the large (184x184) avatar of the current user, which is a handle to be used in IClientUtils::GetImageRGBA(), or 0 if none set + // returns -1 if this image has yet to be loaded, in this case wait for a AvatarImageLoaded_t callback and then call this again + virtual int GetLargeFriendAvatar( CSteamID steamIDFriend ) = 0; + + // requests information about a user - persona name & avatar + // if bRequireNameOnly is set, then the avatar of a user isn't downloaded + // - it's a lot slower to download avatars and churns the local cache, so if you don't need avatars, don't request them + // if returns true, it means that data is being requested, and a PersonaStateChanged_t callback will be posted when it's retrieved + // if returns false, it means that we already have all the details about that user, and functions can be called immediately + virtual bool RequestUserInformation( CSteamID steamIDUser, bool bRequireNameOnly ) = 0; + + // requests information about a clan officer list + // when complete, data is returned in ClanOfficerListResponse_t call result + // this makes available the calls below + // you can only ask about clans that a user is a member of + // note that this won't download avatars automatically; if you get an officer, + // and no avatar image is available, call RequestUserInformation( steamID, false ) to download the avatar + STEAM_CALL_RESULT( ClanOfficerListResponse_t ) + virtual SteamAPICall_t RequestClanOfficerList( CSteamID steamIDClan ) = 0; + + // iteration of clan officers - can only be done when a RequestClanOfficerList() call has completed + + // returns the steamID of the clan owner + virtual CSteamID GetClanOwner( CSteamID steamIDClan ) = 0; + // returns the number of officers in a clan (including the owner) + virtual int GetClanOfficerCount( CSteamID steamIDClan ) = 0; + // returns the steamID of a clan officer, by index, of range [0,GetClanOfficerCount) + virtual CSteamID GetClanOfficerByIndex( CSteamID steamIDClan, int iOfficer ) = 0; + // if current user is chat restricted, he can't send or receive any text/voice chat messages. + // the user can't see custom avatars. But the user can be online and send/recv game invites. + // a chat restricted user can't add friends or join any groups. + virtual uint32 GetUserRestrictions() = 0; + + // Rich Presence data is automatically shared between friends who are in the same game + // Each user has a set of Key/Value pairs + // Note the following limits: k_cchMaxRichPresenceKeys, k_cchMaxRichPresenceKeyLength, k_cchMaxRichPresenceValueLength + // There are five magic keys: + // "status" - a UTF-8 string that will show up in the 'view game info' dialog in the Steam friends list + // "connect" - a UTF-8 string that contains the command-line for how a friend can connect to a game + // "steam_display" - Names a rich presence localization token that will be displayed in the viewing user's selected language + // in the Steam client UI. For more info: https://partner.steamgames.com/doc/api/ISteamFriends#richpresencelocalization + // "steam_player_group" - When set, indicates to the Steam client that the player is a member of a particular group. Players in the same group + // may be organized together in various places in the Steam UI. + // "steam_player_group_size" - When set, indicates the total number of players in the steam_player_group. The Steam client may use this number to + // display additional information about a group when all of the members are not part of a user's friends list. + // GetFriendRichPresence() returns an empty string "" if no value is set + // SetRichPresence() to a NULL or an empty string deletes the key + // You can iterate the current set of keys for a friend with GetFriendRichPresenceKeyCount() + // and GetFriendRichPresenceKeyByIndex() (typically only used for debugging) + virtual bool SetRichPresence( const char *pchKey, const char *pchValue ) = 0; + virtual void ClearRichPresence() = 0; + virtual const char *GetFriendRichPresence( CSteamID steamIDFriend, const char *pchKey ) = 0; + virtual int GetFriendRichPresenceKeyCount( CSteamID steamIDFriend ) = 0; + virtual const char *GetFriendRichPresenceKeyByIndex( CSteamID steamIDFriend, int iKey ) = 0; + // Requests rich presence for a specific user. + virtual void RequestFriendRichPresence( CSteamID steamIDFriend ) = 0; + + // Rich invite support. + // If the target accepts the invite, a GameRichPresenceJoinRequested_t callback is posted containing the connect string. + // (Or you can configure your game so that it is passed on the command line instead. This is a deprecated path; ask us if you really need this.) + virtual bool InviteUserToGame( CSteamID steamIDFriend, const char *pchConnectString ) = 0; + + // recently-played-with friends iteration + // this iterates the entire list of users recently played with, across games + // GetFriendCoplayTime() returns as a unix time + virtual int GetCoplayFriendCount() = 0; + virtual CSteamID GetCoplayFriend( int iCoplayFriend ) = 0; + virtual int GetFriendCoplayTime( CSteamID steamIDFriend ) = 0; + virtual AppId_t GetFriendCoplayGame( CSteamID steamIDFriend ) = 0; + + // chat interface for games + // this allows in-game access to group (clan) chats from in the game + // the behavior is somewhat sophisticated, because the user may or may not be already in the group chat from outside the game or in the overlay + // use ActivateGameOverlayToUser( "chat", steamIDClan ) to open the in-game overlay version of the chat + STEAM_CALL_RESULT( JoinClanChatRoomCompletionResult_t ) + virtual SteamAPICall_t JoinClanChatRoom( CSteamID steamIDClan ) = 0; + virtual bool LeaveClanChatRoom( CSteamID steamIDClan ) = 0; + virtual int GetClanChatMemberCount( CSteamID steamIDClan ) = 0; + virtual CSteamID GetChatMemberByIndex( CSteamID steamIDClan, int iUser ) = 0; + virtual bool SendClanChatMessage( CSteamID steamIDClanChat, const char *pchText ) = 0; + virtual int GetClanChatMessage( CSteamID steamIDClanChat, int iMessage, void *prgchText, int cchTextMax, EChatEntryType *peChatEntryType, STEAM_OUT_STRUCT() CSteamID *psteamidChatter ) = 0; + virtual bool IsClanChatAdmin( CSteamID steamIDClanChat, CSteamID steamIDUser ) = 0; + + // interact with the Steam (game overlay / desktop) + virtual bool IsClanChatWindowOpenInSteam( CSteamID steamIDClanChat ) = 0; + virtual bool OpenClanChatWindowInSteam( CSteamID steamIDClanChat ) = 0; + virtual bool CloseClanChatWindowInSteam( CSteamID steamIDClanChat ) = 0; + + // peer-to-peer chat interception + // this is so you can show P2P chats inline in the game + virtual bool SetListenForFriendsMessages( bool bInterceptEnabled ) = 0; + virtual bool ReplyToFriendMessage( CSteamID steamIDFriend, const char *pchMsgToSend ) = 0; + virtual int GetFriendMessage( CSteamID steamIDFriend, int iMessageID, void *pvData, int cubData, EChatEntryType *peChatEntryType ) = 0; + + // following apis + STEAM_CALL_RESULT( FriendsGetFollowerCount_t ) + virtual SteamAPICall_t GetFollowerCount( CSteamID steamID ) = 0; + STEAM_CALL_RESULT( FriendsIsFollowing_t ) + virtual SteamAPICall_t IsFollowing( CSteamID steamID ) = 0; + STEAM_CALL_RESULT( FriendsEnumerateFollowingList_t ) + virtual SteamAPICall_t EnumerateFollowingList( uint32 unStartIndex ) = 0; + + virtual bool IsClanPublic( CSteamID steamIDClan ) = 0; + virtual bool IsClanOfficialGameGroup( CSteamID steamIDClan ) = 0; + + /// Return the number of chats (friends or chat rooms) with unread messages. + /// A "priority" message is one that would generate some sort of toast or + /// notification, and depends on user settings. + /// + /// You can register for UnreadChatMessagesChanged_t callbacks to know when this + /// has potentially changed. + virtual int GetNumChatsWithUnreadPriorityMessages() = 0; + + // activates game overlay to open the remote play together invite dialog. Invitations will be sent for remote play together + virtual void ActivateGameOverlayRemotePlayTogetherInviteDialog( CSteamID steamIDLobby ) = 0; + + // Call this before calling ActivateGameOverlayToWebPage() to have the Steam Overlay Browser block navigations + // to your specified protocol (scheme) uris and instead dispatch a OverlayBrowserProtocolNavigation_t callback to your game. + // ActivateGameOverlayToWebPage() must have been called with k_EActivateGameOverlayToWebPageMode_Modal + virtual bool RegisterProtocolInOverlayBrowser( const char *pchProtocol ) = 0; + + // Activates the game overlay to open an invite dialog that will send the provided Rich Presence connect string to selected friends + virtual void ActivateGameOverlayInviteDialogConnectString( const char *pchConnectString ) = 0; +}; + +#define STEAMFRIENDS_INTERFACE_VERSION "SteamFriends017" + +// Global interface accessor +inline ISteamFriends *SteamFriends(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamFriends *, SteamFriends, STEAMFRIENDS_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +//----------------------------------------------------------------------------- +// Purpose: called when a friends' status changes +//----------------------------------------------------------------------------- +struct PersonaStateChange_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 4 }; + + uint64 m_ulSteamID; // steamID of the friend who changed + int m_nChangeFlags; // what's changed +}; + + +// used in PersonaStateChange_t::m_nChangeFlags to describe what's changed about a user +// these flags describe what the client has learned has changed recently, so on startup you'll see a name, avatar & relationship change for every friend +enum EPersonaChange +{ + k_EPersonaChangeName = 0x0001, + k_EPersonaChangeStatus = 0x0002, + k_EPersonaChangeComeOnline = 0x0004, + k_EPersonaChangeGoneOffline = 0x0008, + k_EPersonaChangeGamePlayed = 0x0010, + k_EPersonaChangeGameServer = 0x0020, + k_EPersonaChangeAvatar = 0x0040, + k_EPersonaChangeJoinedSource= 0x0080, + k_EPersonaChangeLeftSource = 0x0100, + k_EPersonaChangeRelationshipChanged = 0x0200, + k_EPersonaChangeNameFirstSet = 0x0400, + k_EPersonaChangeBroadcast = 0x0800, + k_EPersonaChangeNickname = 0x1000, + k_EPersonaChangeSteamLevel = 0x2000, + k_EPersonaChangeRichPresence = 0x4000, +}; + + +//----------------------------------------------------------------------------- +// Purpose: posted when game overlay activates or deactivates +// the game can use this to be pause or resume single player games +//----------------------------------------------------------------------------- +struct GameOverlayActivated_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 31 }; + uint8 m_bActive; // true if it's just been activated, false otherwise +}; + + +//----------------------------------------------------------------------------- +// Purpose: called when the user tries to join a different game server from their friends list +// game client should attempt to connect to specified server when this is received +//----------------------------------------------------------------------------- +struct GameServerChangeRequested_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 32 }; + char m_rgchServer[64]; // server address ("127.0.0.1:27015", "tf2.valvesoftware.com") + char m_rgchPassword[64]; // server password, if any +}; + + +//----------------------------------------------------------------------------- +// Purpose: called when the user tries to join a lobby from their friends list +// game client should attempt to connect to specified lobby when this is received +//----------------------------------------------------------------------------- +struct GameLobbyJoinRequested_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 33 }; + CSteamID m_steamIDLobby; + + // The friend they did the join via (will be invalid if not directly via a friend) + // + // On PS3, the friend will be invalid if this was triggered by a PSN invite via the XMB, but + // the account type will be console user so you can tell at least that this was from a PSN friend + // rather than a Steam friend. + CSteamID m_steamIDFriend; +}; + + +//----------------------------------------------------------------------------- +// Purpose: called when an avatar is loaded in from a previous GetLargeFriendAvatar() call +// if the image wasn't already available +//----------------------------------------------------------------------------- +struct AvatarImageLoaded_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 34 }; + CSteamID m_steamID; // steamid the avatar has been loaded for + int m_iImage; // the image index of the now loaded image + int m_iWide; // width of the loaded image + int m_iTall; // height of the loaded image +}; + + +//----------------------------------------------------------------------------- +// Purpose: marks the return of a request officer list call +//----------------------------------------------------------------------------- +struct ClanOfficerListResponse_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 35 }; + CSteamID m_steamIDClan; + int m_cOfficers; + uint8 m_bSuccess; +}; + + +//----------------------------------------------------------------------------- +// Purpose: callback indicating updated data about friends rich presence information +//----------------------------------------------------------------------------- +struct FriendRichPresenceUpdate_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 36 }; + CSteamID m_steamIDFriend; // friend who's rich presence has changed + AppId_t m_nAppID; // the appID of the game (should always be the current game) +}; + + +//----------------------------------------------------------------------------- +// Purpose: called when the user tries to join a game from their friends list +// rich presence will have been set with the "connect" key which is set here +//----------------------------------------------------------------------------- +struct GameRichPresenceJoinRequested_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 37 }; + CSteamID m_steamIDFriend; // the friend they did the join via (will be invalid if not directly via a friend) + char m_rgchConnect[k_cchMaxRichPresenceValueLength]; +}; + + +//----------------------------------------------------------------------------- +// Purpose: a chat message has been received for a clan chat the game has joined +//----------------------------------------------------------------------------- +struct GameConnectedClanChatMsg_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 38 }; + CSteamID m_steamIDClanChat; + CSteamID m_steamIDUser; + int m_iMessageID; +}; + + +//----------------------------------------------------------------------------- +// Purpose: a user has joined a clan chat +//----------------------------------------------------------------------------- +struct GameConnectedChatJoin_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 39 }; + CSteamID m_steamIDClanChat; + CSteamID m_steamIDUser; +}; + + +//----------------------------------------------------------------------------- +// Purpose: a user has left the chat we're in +//----------------------------------------------------------------------------- +struct GameConnectedChatLeave_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 40 }; + CSteamID m_steamIDClanChat; + CSteamID m_steamIDUser; + bool m_bKicked; // true if admin kicked + bool m_bDropped; // true if Steam connection dropped +}; + + +//----------------------------------------------------------------------------- +// Purpose: a DownloadClanActivityCounts() call has finished +//----------------------------------------------------------------------------- +struct DownloadClanActivityCountsResult_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 41 }; + bool m_bSuccess; +}; + + +//----------------------------------------------------------------------------- +// Purpose: a JoinClanChatRoom() call has finished +//----------------------------------------------------------------------------- +struct JoinClanChatRoomCompletionResult_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 42 }; + CSteamID m_steamIDClanChat; + EChatRoomEnterResponse m_eChatRoomEnterResponse; +}; + +//----------------------------------------------------------------------------- +// Purpose: a chat message has been received from a user +//----------------------------------------------------------------------------- +struct GameConnectedFriendChatMsg_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 43 }; + CSteamID m_steamIDUser; + int m_iMessageID; +}; + + +struct FriendsGetFollowerCount_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 44 }; + EResult m_eResult; + CSteamID m_steamID; + int m_nCount; +}; + + +struct FriendsIsFollowing_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 45 }; + EResult m_eResult; + CSteamID m_steamID; + bool m_bIsFollowing; +}; + + +struct FriendsEnumerateFollowingList_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 46 }; + EResult m_eResult; + CSteamID m_rgSteamID[ k_cEnumerateFollowersMax ]; + int32 m_nResultsReturned; + int32 m_nTotalResultCount; +}; + +//----------------------------------------------------------------------------- +// Purpose: reports the result of an attempt to change the user's persona name +//----------------------------------------------------------------------------- +struct SetPersonaNameResponse_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 47 }; + + bool m_bSuccess; // true if name change succeeded completely. + bool m_bLocalSuccess; // true if name change was retained locally. (We might not have been able to communicate with Steam) + EResult m_result; // detailed result code +}; + +//----------------------------------------------------------------------------- +// Purpose: Invoked when the status of unread messages changes +//----------------------------------------------------------------------------- +struct UnreadChatMessagesChanged_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 48 }; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Dispatched when an overlay browser instance is navigated to a protocol/scheme registered by RegisterProtocolInOverlayBrowser() +//----------------------------------------------------------------------------- +struct OverlayBrowserProtocolNavigation_t +{ + enum { k_iCallback = k_iSteamFriendsCallbacks + 49 }; + char rgchURI[ 1024 ]; +}; + + +#pragma pack( pop ) + +#endif // ISTEAMFRIENDS_H diff --git a/lib/steam/public/steam/isteamgamecoordinator.h b/lib/steam/public/steam/isteamgamecoordinator.h new file mode 100644 index 0000000..9e3d76d --- /dev/null +++ b/lib/steam/public/steam/isteamgamecoordinator.h @@ -0,0 +1,74 @@ +//====== Copyright ©, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to the game coordinator for this application +// +//============================================================================= + +#ifndef ISTEAMGAMECOORDINATOR +#define ISTEAMGAMECOORDINATOR +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + + +// list of possible return values from the ISteamGameCoordinator API +enum EGCResults +{ + k_EGCResultOK = 0, + k_EGCResultNoMessage = 1, // There is no message in the queue + k_EGCResultBufferTooSmall = 2, // The buffer is too small for the requested message + k_EGCResultNotLoggedOn = 3, // The client is not logged onto Steam + k_EGCResultInvalidMessage = 4, // Something was wrong with the message being sent with SendMessage +}; + + +//----------------------------------------------------------------------------- +// Purpose: Functions for sending and receiving messages from the Game Coordinator +// for this application +//----------------------------------------------------------------------------- +class ISteamGameCoordinator +{ +public: + + // sends a message to the Game Coordinator + virtual EGCResults SendMessage( uint32 unMsgType, const void *pubData, uint32 cubData ) = 0; + + // returns true if there is a message waiting from the game coordinator + virtual bool IsMessageAvailable( uint32 *pcubMsgSize ) = 0; + + // fills the provided buffer with the first message in the queue and returns k_EGCResultOK or + // returns k_EGCResultNoMessage if there is no message waiting. pcubMsgSize is filled with the message size. + // If the provided buffer is not large enough to fit the entire message, k_EGCResultBufferTooSmall is returned + // and the message remains at the head of the queue. + virtual EGCResults RetrieveMessage( uint32 *punMsgType, void *pubDest, uint32 cubDest, uint32 *pcubMsgSize ) = 0; + +}; +#define STEAMGAMECOORDINATOR_INTERFACE_VERSION "SteamGameCoordinator001" + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +// callback notification - A new message is available for reading from the message queue +struct GCMessageAvailable_t +{ + enum { k_iCallback = k_iSteamGameCoordinatorCallbacks + 1 }; + uint32 m_nMessageSize; +}; + +// callback notification - A message failed to make it to the GC. It may be down temporarily +struct GCMessageFailed_t +{ + enum { k_iCallback = k_iSteamGameCoordinatorCallbacks + 2 }; +}; + +#pragma pack( pop ) + +#endif // ISTEAMGAMECOORDINATOR diff --git a/lib/steam/public/steam/isteamgameserver.h b/lib/steam/public/steam/isteamgameserver.h new file mode 100644 index 0000000..deea254 --- /dev/null +++ b/lib/steam/public/steam/isteamgameserver.h @@ -0,0 +1,376 @@ +//====== Copyright (c) 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to steam for game servers +// +//============================================================================= + +#ifndef ISTEAMGAMESERVER_H +#define ISTEAMGAMESERVER_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +//----------------------------------------------------------------------------- +// Purpose: Functions for authenticating users via Steam to play on a game server +//----------------------------------------------------------------------------- +class ISteamGameServer +{ +public: + +// +// Basic server data. These properties, if set, must be set before before calling LogOn. They +// may not be changed after logged in. +// + + /// This is called by SteamGameServer_Init, and you will usually not need to call it directly + STEAM_PRIVATE_API( virtual bool InitGameServer( uint32 unIP, uint16 usGamePort, uint16 usQueryPort, uint32 unFlags, AppId_t nGameAppId, const char *pchVersionString ) = 0; ) + + /// Game product identifier. This is currently used by the master server for version checking purposes. + /// It's a required field, but will eventually will go away, and the AppID will be used for this purpose. + virtual void SetProduct( const char *pszProduct ) = 0; + + /// Description of the game. This is a required field and is displayed in the steam server browser....for now. + /// This is a required field, but it will go away eventually, as the data should be determined from the AppID. + virtual void SetGameDescription( const char *pszGameDescription ) = 0; + + /// If your game is a "mod," pass the string that identifies it. The default is an empty string, meaning + /// this application is the original game, not a mod. + /// + /// @see k_cbMaxGameServerGameDir + virtual void SetModDir( const char *pszModDir ) = 0; + + /// Is this is a dedicated server? The default value is false. + virtual void SetDedicatedServer( bool bDedicated ) = 0; + +// +// Login +// + + /// Begin process to login to a persistent game server account + /// + /// You need to register for callbacks to determine the result of this operation. + /// @see SteamServersConnected_t + /// @see SteamServerConnectFailure_t + /// @see SteamServersDisconnected_t + virtual void LogOn( const char *pszToken ) = 0; + + /// Login to a generic, anonymous account. + /// + /// Note: in previous versions of the SDK, this was automatically called within SteamGameServer_Init, + /// but this is no longer the case. + virtual void LogOnAnonymous() = 0; + + /// Begin process of logging game server out of steam + virtual void LogOff() = 0; + + // status functions + virtual bool BLoggedOn() = 0; + virtual bool BSecure() = 0; + virtual CSteamID GetSteamID() = 0; + + /// Returns true if the master server has requested a restart. + /// Only returns true once per request. + virtual bool WasRestartRequested() = 0; + +// +// Server state. These properties may be changed at any time. +// + + /// Max player count that will be reported to server browser and client queries + virtual void SetMaxPlayerCount( int cPlayersMax ) = 0; + + /// Number of bots. Default value is zero + virtual void SetBotPlayerCount( int cBotplayers ) = 0; + + /// Set the name of server as it will appear in the server browser + /// + /// @see k_cbMaxGameServerName + virtual void SetServerName( const char *pszServerName ) = 0; + + /// Set name of map to report in the server browser + /// + /// @see k_cbMaxGameServerName + virtual void SetMapName( const char *pszMapName ) = 0; + + /// Let people know if your server will require a password + virtual void SetPasswordProtected( bool bPasswordProtected ) = 0; + + /// Spectator server. The default value is zero, meaning the service + /// is not used. + virtual void SetSpectatorPort( uint16 unSpectatorPort ) = 0; + + /// Name of the spectator server. (Only used if spectator port is nonzero.) + /// + /// @see k_cbMaxGameServerMapName + virtual void SetSpectatorServerName( const char *pszSpectatorServerName ) = 0; + + /// Call this to clear the whole list of key/values that are sent in rules queries. + virtual void ClearAllKeyValues() = 0; + + /// Call this to add/update a key/value pair. + virtual void SetKeyValue( const char *pKey, const char *pValue ) = 0; + + /// Sets a string defining the "gametags" for this server, this is optional, but if it is set + /// it allows users to filter in the matchmaking/server-browser interfaces based on the value + /// + /// @see k_cbMaxGameServerTags + virtual void SetGameTags( const char *pchGameTags ) = 0; + + /// Sets a string defining the "gamedata" for this server, this is optional, but if it is set + /// it allows users to filter in the matchmaking/server-browser interfaces based on the value + /// don't set this unless it actually changes, its only uploaded to the master once (when + /// acknowledged) + /// + /// @see k_cbMaxGameServerGameData + virtual void SetGameData( const char *pchGameData ) = 0; + + /// Region identifier. This is an optional field, the default value is empty, meaning the "world" region + virtual void SetRegion( const char *pszRegion ) = 0; + +// +// Player list management / authentication +// + + // Handles receiving a new connection from a Steam user. This call will ask the Steam + // servers to validate the users identity, app ownership, and VAC status. If the Steam servers + // are off-line, then it will validate the cached ticket itself which will validate app ownership + // and identity. The AuthBlob here should be acquired on the game client using SteamUser()->InitiateGameConnection() + // and must then be sent up to the game server for authentication. + // + // Return Value: returns true if the users ticket passes basic checks. pSteamIDUser will contain the Steam ID of this user. pSteamIDUser must NOT be NULL + // If the call succeeds then you should expect a GSClientApprove_t or GSClientDeny_t callback which will tell you whether authentication + // for the user has succeeded or failed (the steamid in the callback will match the one returned by this call) + virtual bool SendUserConnectAndAuthenticate( uint32 unIPClient, const void *pvAuthBlob, uint32 cubAuthBlobSize, CSteamID *pSteamIDUser ) = 0; + + // Creates a fake user (ie, a bot) which will be listed as playing on the server, but skips validation. + // + // Return Value: Returns a SteamID for the user to be tracked with, you should call HandleUserDisconnect() + // when this user leaves the server just like you would for a real user. + virtual CSteamID CreateUnauthenticatedUserConnection() = 0; + + // Should be called whenever a user leaves our game server, this lets Steam internally + // track which users are currently on which servers for the purposes of preventing a single + // account being logged into multiple servers, showing who is currently on a server, etc. + virtual void SendUserDisconnect( CSteamID steamIDUser ) = 0; + + // Update the data to be displayed in the server browser and matchmaking interfaces for a user + // currently connected to the server. For regular users you must call this after you receive a + // GSUserValidationSuccess callback. + // + // Return Value: true if successful, false if failure (ie, steamIDUser wasn't for an active player) + virtual bool BUpdateUserData( CSteamID steamIDUser, const char *pchPlayerName, uint32 uScore ) = 0; + + // New auth system APIs - do not mix with the old auth system APIs. + // ---------------------------------------------------------------- + + // Retrieve ticket to be sent to the entity who wishes to authenticate you ( using BeginAuthSession API ). + // pcbTicket retrieves the length of the actual ticket. + virtual HAuthTicket GetAuthSessionTicket( void *pTicket, int cbMaxTicket, uint32 *pcbTicket ) = 0; + + // Authenticate ticket ( from GetAuthSessionTicket ) from entity steamID to be sure it is valid and isnt reused + // Registers for callbacks if the entity goes offline or cancels the ticket ( see ValidateAuthTicketResponse_t callback and EAuthSessionResponse ) + virtual EBeginAuthSessionResult BeginAuthSession( const void *pAuthTicket, int cbAuthTicket, CSteamID steamID ) = 0; + + // Stop tracking started by BeginAuthSession - called when no longer playing game with this entity + virtual void EndAuthSession( CSteamID steamID ) = 0; + + // Cancel auth ticket from GetAuthSessionTicket, called when no longer playing game with the entity you gave the ticket to + virtual void CancelAuthTicket( HAuthTicket hAuthTicket ) = 0; + + // After receiving a user's authentication data, and passing it to SendUserConnectAndAuthenticate, use this function + // to determine if the user owns downloadable content specified by the provided AppID. + virtual EUserHasLicenseForAppResult UserHasLicenseForApp( CSteamID steamID, AppId_t appID ) = 0; + + // Ask if a user in in the specified group, results returns async by GSUserGroupStatus_t + // returns false if we're not connected to the steam servers and thus cannot ask + virtual bool RequestUserGroupStatus( CSteamID steamIDUser, CSteamID steamIDGroup ) = 0; + + + // these two functions s are deprecated, and will not return results + // they will be removed in a future version of the SDK + virtual void GetGameplayStats( ) = 0; + STEAM_CALL_RESULT( GSReputation_t ) + virtual SteamAPICall_t GetServerReputation() = 0; + + // Returns the public IP of the server according to Steam, useful when the server is + // behind NAT and you want to advertise its IP in a lobby for other clients to directly + // connect to + virtual SteamIPAddress_t GetPublicIP() = 0; + +// These are in GameSocketShare mode, where instead of ISteamGameServer creating its own +// socket to talk to the master server on, it lets the game use its socket to forward messages +// back and forth. This prevents us from requiring server ops to open up yet another port +// in their firewalls. +// +// the IP address and port should be in host order, i.e 127.0.0.1 == 0x7f000001 + + // These are used when you've elected to multiplex the game server's UDP socket + // rather than having the master server updater use its own sockets. + // + // Source games use this to simplify the job of the server admins, so they + // don't have to open up more ports on their firewalls. + + // Call this when a packet that starts with 0xFFFFFFFF comes in. That means + // it's for us. + virtual bool HandleIncomingPacket( const void *pData, int cbData, uint32 srcIP, uint16 srcPort ) = 0; + + // AFTER calling HandleIncomingPacket for any packets that came in that frame, call this. + // This gets a packet that the master server updater needs to send out on UDP. + // It returns the length of the packet it wants to send, or 0 if there are no more packets to send. + // Call this each frame until it returns 0. + virtual int GetNextOutgoingPacket( void *pOut, int cbMaxOut, uint32 *pNetAdr, uint16 *pPort ) = 0; + +// +// Control heartbeats / advertisement with master server +// + + // Call this as often as you like to tell the master server updater whether or not + // you want it to be active (default: off). + virtual void EnableHeartbeats( bool bActive ) = 0; + + // You usually don't need to modify this. + // Pass -1 to use the default value for iHeartbeatInterval. + // Some mods change this. + virtual void SetHeartbeatInterval( int iHeartbeatInterval ) = 0; + + // Force a heartbeat to steam at the next opportunity + virtual void ForceHeartbeat() = 0; + + // associate this game server with this clan for the purposes of computing player compat + STEAM_CALL_RESULT( AssociateWithClanResult_t ) + virtual SteamAPICall_t AssociateWithClan( CSteamID steamIDClan ) = 0; + + // ask if any of the current players dont want to play with this new player - or vice versa + STEAM_CALL_RESULT( ComputeNewPlayerCompatibilityResult_t ) + virtual SteamAPICall_t ComputeNewPlayerCompatibility( CSteamID steamIDNewPlayer ) = 0; + +}; + +#define STEAMGAMESERVER_INTERFACE_VERSION "SteamGameServer013" + +// Global accessor +inline ISteamGameServer *SteamGameServer(); +STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( ISteamGameServer *, SteamGameServer, STEAMGAMESERVER_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + + +// client has been approved to connect to this game server +struct GSClientApprove_t +{ + enum { k_iCallback = k_iSteamGameServerCallbacks + 1 }; + CSteamID m_SteamID; // SteamID of approved player + CSteamID m_OwnerSteamID; // SteamID of original owner for game license +}; + + +// client has been denied to connection to this game server +struct GSClientDeny_t +{ + enum { k_iCallback = k_iSteamGameServerCallbacks + 2 }; + CSteamID m_SteamID; + EDenyReason m_eDenyReason; + char m_rgchOptionalText[128]; +}; + + +// request the game server should kick the user +struct GSClientKick_t +{ + enum { k_iCallback = k_iSteamGameServerCallbacks + 3 }; + CSteamID m_SteamID; + EDenyReason m_eDenyReason; +}; + +// NOTE: callback values 4 and 5 are skipped because they are used for old deprecated callbacks, +// do not reuse them here. + + +// client achievement info +struct GSClientAchievementStatus_t +{ + enum { k_iCallback = k_iSteamGameServerCallbacks + 6 }; + uint64 m_SteamID; + char m_pchAchievement[128]; + bool m_bUnlocked; +}; + +// received when the game server requests to be displayed as secure (VAC protected) +// m_bSecure is true if the game server should display itself as secure to users, false otherwise +struct GSPolicyResponse_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 15 }; + uint8 m_bSecure; +}; + +// GS gameplay stats info +struct GSGameplayStats_t +{ + enum { k_iCallback = k_iSteamGameServerCallbacks + 7 }; + EResult m_eResult; // Result of the call + int32 m_nRank; // Overall rank of the server (0-based) + uint32 m_unTotalConnects; // Total number of clients who have ever connected to the server + uint32 m_unTotalMinutesPlayed; // Total number of minutes ever played on the server +}; + +// send as a reply to RequestUserGroupStatus() +struct GSClientGroupStatus_t +{ + enum { k_iCallback = k_iSteamGameServerCallbacks + 8 }; + CSteamID m_SteamIDUser; + CSteamID m_SteamIDGroup; + bool m_bMember; + bool m_bOfficer; +}; + +// Sent as a reply to GetServerReputation() +struct GSReputation_t +{ + enum { k_iCallback = k_iSteamGameServerCallbacks + 9 }; + EResult m_eResult; // Result of the call; + uint32 m_unReputationScore; // The reputation score for the game server + bool m_bBanned; // True if the server is banned from the Steam + // master servers + + // The following members are only filled out if m_bBanned is true. They will all + // be set to zero otherwise. Master server bans are by IP so it is possible to be + // banned even when the score is good high if there is a bad server on another port. + // This information can be used to determine which server is bad. + + uint32 m_unBannedIP; // The IP of the banned server + uint16 m_usBannedPort; // The port of the banned server + uint64 m_ulBannedGameID; // The game ID the banned server is serving + uint32 m_unBanExpires; // Time the ban expires, expressed in the Unix epoch (seconds since 1/1/1970) +}; + +// Sent as a reply to AssociateWithClan() +struct AssociateWithClanResult_t +{ + enum { k_iCallback = k_iSteamGameServerCallbacks + 10 }; + EResult m_eResult; // Result of the call; +}; + +// Sent as a reply to ComputeNewPlayerCompatibility() +struct ComputeNewPlayerCompatibilityResult_t +{ + enum { k_iCallback = k_iSteamGameServerCallbacks + 11 }; + EResult m_eResult; // Result of the call; + int m_cPlayersThatDontLikeCandidate; + int m_cPlayersThatCandidateDoesntLike; + int m_cClanPlayersThatDontLikeCandidate; + CSteamID m_SteamIDCandidate; +}; + + +#pragma pack( pop ) + +#endif // ISTEAMGAMESERVER_H diff --git a/lib/steam/public/steam/isteamgameserverstats.h b/lib/steam/public/steam/isteamgameserverstats.h new file mode 100644 index 0000000..f20d101 --- /dev/null +++ b/lib/steam/public/steam/isteamgameserverstats.h @@ -0,0 +1,114 @@ +//====== Copyright © Valve Corporation, All rights reserved. ======= +// +// Purpose: interface for game servers to steam stats and achievements +// +//============================================================================= + +#ifndef ISTEAMGAMESERVERSTATS_H +#define ISTEAMGAMESERVERSTATS_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +//----------------------------------------------------------------------------- +// Purpose: Functions for authenticating users via Steam to play on a game server +//----------------------------------------------------------------------------- +class ISteamGameServerStats +{ +public: + // downloads stats for the user + // returns a GSStatsReceived_t callback when completed + // if the user has no stats, GSStatsReceived_t.m_eResult will be set to k_EResultFail + // these stats will only be auto-updated for clients playing on the server. For other + // users you'll need to call RequestUserStats() again to refresh any data + STEAM_CALL_RESULT( GSStatsReceived_t ) + virtual SteamAPICall_t RequestUserStats( CSteamID steamIDUser ) = 0; + + // requests stat information for a user, usable after a successful call to RequestUserStats() + STEAM_FLAT_NAME( GetUserStatInt32 ) + virtual bool GetUserStat( CSteamID steamIDUser, const char *pchName, int32 *pData ) = 0; + + STEAM_FLAT_NAME( GetUserStatFloat ) + virtual bool GetUserStat( CSteamID steamIDUser, const char *pchName, float *pData ) = 0; + + virtual bool GetUserAchievement( CSteamID steamIDUser, const char *pchName, bool *pbAchieved ) = 0; + + // Set / update stats and achievements. + // Note: These updates will work only on stats game servers are allowed to edit and only for + // game servers that have been declared as officially controlled by the game creators. + // Set the IP range of your official servers on the Steamworks page + + STEAM_FLAT_NAME( SetUserStatInt32 ) + virtual bool SetUserStat( CSteamID steamIDUser, const char *pchName, int32 nData ) = 0; + + STEAM_FLAT_NAME( SetUserStatFloat ) + virtual bool SetUserStat( CSteamID steamIDUser, const char *pchName, float fData ) = 0; + + virtual bool UpdateUserAvgRateStat( CSteamID steamIDUser, const char *pchName, float flCountThisSession, double dSessionLength ) = 0; + + virtual bool SetUserAchievement( CSteamID steamIDUser, const char *pchName ) = 0; + virtual bool ClearUserAchievement( CSteamID steamIDUser, const char *pchName ) = 0; + + // Store the current data on the server, will get a GSStatsStored_t callback when set. + // + // If the callback has a result of k_EResultInvalidParam, one or more stats + // uploaded has been rejected, either because they broke constraints + // or were out of date. In this case the server sends back updated values. + // The stats should be re-iterated to keep in sync. + STEAM_CALL_RESULT( GSStatsStored_t ) + virtual SteamAPICall_t StoreUserStats( CSteamID steamIDUser ) = 0; +}; +#define STEAMGAMESERVERSTATS_INTERFACE_VERSION "SteamGameServerStats001" + +// Global accessor +inline ISteamGameServerStats *SteamGameServerStats(); +STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( ISteamGameServerStats *, SteamGameServerStats, STEAMGAMESERVERSTATS_INTERFACE_VERSION ); + + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +//----------------------------------------------------------------------------- +// Purpose: called when the latests stats and achievements have been received +// from the server +//----------------------------------------------------------------------------- +struct GSStatsReceived_t +{ + enum { k_iCallback = k_iSteamGameServerStatsCallbacks }; + EResult m_eResult; // Success / error fetching the stats + CSteamID m_steamIDUser; // The user for whom the stats are retrieved for +}; + + +//----------------------------------------------------------------------------- +// Purpose: result of a request to store the user stats for a game +//----------------------------------------------------------------------------- +struct GSStatsStored_t +{ + enum { k_iCallback = k_iSteamGameServerStatsCallbacks + 1 }; + EResult m_eResult; // success / error + CSteamID m_steamIDUser; // The user for whom the stats were stored +}; + +//----------------------------------------------------------------------------- +// Purpose: Callback indicating that a user's stats have been unloaded. +// Call RequestUserStats again to access stats for this user +//----------------------------------------------------------------------------- +struct GSStatsUnloaded_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 8 }; + CSteamID m_steamIDUser; // User whose stats have been unloaded +}; + +#pragma pack( pop ) + + +#endif // ISTEAMGAMESERVERSTATS_H diff --git a/lib/steam/public/steam/isteamhtmlsurface.h b/lib/steam/public/steam/isteamhtmlsurface.h new file mode 100644 index 0000000..dbc8124 --- /dev/null +++ b/lib/steam/public/steam/isteamhtmlsurface.h @@ -0,0 +1,480 @@ +//====== Copyright 1996-2013, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to display html pages in a texture +// +//============================================================================= + +#ifndef ISTEAMHTMLSURFACE_H +#define ISTEAMHTMLSURFACE_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +typedef uint32 HHTMLBrowser; +const uint32 INVALID_HTMLBROWSER = 0; + +//----------------------------------------------------------------------------- +// Purpose: Functions for displaying HTML pages and interacting with them +//----------------------------------------------------------------------------- +class ISteamHTMLSurface +{ +public: + virtual ~ISteamHTMLSurface() {} + + // Must call init and shutdown when starting/ending use of the interface + virtual bool Init() = 0; + virtual bool Shutdown() = 0; + + // Create a browser object for display of a html page, when creation is complete the call handle + // will return a HTML_BrowserReady_t callback for the HHTMLBrowser of your new browser. + // The user agent string is a substring to be added to the general user agent string so you can + // identify your client on web servers. + // The userCSS string lets you apply a CSS style sheet to every displayed page, leave null if + // you do not require this functionality. + // + // YOU MUST HAVE IMPLEMENTED HANDLERS FOR HTML_BrowserReady_t, HTML_StartRequest_t, + // HTML_JSAlert_t, HTML_JSConfirm_t, and HTML_FileOpenDialog_t! See the CALLBACKS + // section of this interface (AllowStartRequest, etc) for more details. If you do + // not implement these callback handlers, the browser may appear to hang instead of + // navigating to new pages or triggering javascript popups. + // + STEAM_CALL_RESULT( HTML_BrowserReady_t ) + virtual SteamAPICall_t CreateBrowser( const char *pchUserAgent, const char *pchUserCSS ) = 0; + + // Call this when you are done with a html surface, this lets us free the resources being used by it + virtual void RemoveBrowser( HHTMLBrowser unBrowserHandle ) = 0; + + // Navigate to this URL, results in a HTML_StartRequest_t as the request commences + virtual void LoadURL( HHTMLBrowser unBrowserHandle, const char *pchURL, const char *pchPostData ) = 0; + + // Tells the surface the size in pixels to display the surface + virtual void SetSize( HHTMLBrowser unBrowserHandle, uint32 unWidth, uint32 unHeight ) = 0; + + // Stop the load of the current html page + virtual void StopLoad( HHTMLBrowser unBrowserHandle ) = 0; + // Reload (most likely from local cache) the current page + virtual void Reload( HHTMLBrowser unBrowserHandle ) = 0; + // navigate back in the page history + virtual void GoBack( HHTMLBrowser unBrowserHandle ) = 0; + // navigate forward in the page history + virtual void GoForward( HHTMLBrowser unBrowserHandle ) = 0; + + // add this header to any url requests from this browser + virtual void AddHeader( HHTMLBrowser unBrowserHandle, const char *pchKey, const char *pchValue ) = 0; + // run this javascript script in the currently loaded page + virtual void ExecuteJavascript( HHTMLBrowser unBrowserHandle, const char *pchScript ) = 0; + + enum EHTMLMouseButton + { + eHTMLMouseButton_Left = 0, + eHTMLMouseButton_Right = 1, + eHTMLMouseButton_Middle = 2, + }; + + // Mouse click and mouse movement commands + virtual void MouseUp( HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton ) = 0; + virtual void MouseDown( HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton ) = 0; + virtual void MouseDoubleClick( HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton ) = 0; + // x and y are relative to the HTML bounds + virtual void MouseMove( HHTMLBrowser unBrowserHandle, int x, int y ) = 0; + // nDelta is pixels of scroll + virtual void MouseWheel( HHTMLBrowser unBrowserHandle, int32 nDelta ) = 0; + + enum EMouseCursor + { + dc_user = 0, + dc_none, + dc_arrow, + dc_ibeam, + dc_hourglass, + dc_waitarrow, + dc_crosshair, + dc_up, + dc_sizenw, + dc_sizese, + dc_sizene, + dc_sizesw, + dc_sizew, + dc_sizee, + dc_sizen, + dc_sizes, + dc_sizewe, + dc_sizens, + dc_sizeall, + dc_no, + dc_hand, + dc_blank, // don't show any custom cursor, just use your default + dc_middle_pan, + dc_north_pan, + dc_north_east_pan, + dc_east_pan, + dc_south_east_pan, + dc_south_pan, + dc_south_west_pan, + dc_west_pan, + dc_north_west_pan, + dc_alias, + dc_cell, + dc_colresize, + dc_copycur, + dc_verticaltext, + dc_rowresize, + dc_zoomin, + dc_zoomout, + dc_help, + dc_custom, + + dc_last, // custom cursors start from this value and up + }; + + enum EHTMLKeyModifiers + { + k_eHTMLKeyModifier_None = 0, + k_eHTMLKeyModifier_AltDown = 1 << 0, + k_eHTMLKeyModifier_CtrlDown = 1 << 1, + k_eHTMLKeyModifier_ShiftDown = 1 << 2, + }; + + // keyboard interactions, native keycode is the virtual key code value from your OS, system key flags the key to not + // be sent as a typed character as well as a key down + virtual void KeyDown( HHTMLBrowser unBrowserHandle, uint32 nNativeKeyCode, EHTMLKeyModifiers eHTMLKeyModifiers, bool bIsSystemKey = false ) = 0; + virtual void KeyUp( HHTMLBrowser unBrowserHandle, uint32 nNativeKeyCode, EHTMLKeyModifiers eHTMLKeyModifiers ) = 0; + // cUnicodeChar is the unicode character point for this keypress (and potentially multiple chars per press) + virtual void KeyChar( HHTMLBrowser unBrowserHandle, uint32 cUnicodeChar, EHTMLKeyModifiers eHTMLKeyModifiers ) = 0; + + // programmatically scroll this many pixels on the page + virtual void SetHorizontalScroll( HHTMLBrowser unBrowserHandle, uint32 nAbsolutePixelScroll ) = 0; + virtual void SetVerticalScroll( HHTMLBrowser unBrowserHandle, uint32 nAbsolutePixelScroll ) = 0; + + // tell the html control if it has key focus currently, controls showing the I-beam cursor in text controls amongst other things + virtual void SetKeyFocus( HHTMLBrowser unBrowserHandle, bool bHasKeyFocus ) = 0; + + // open the current pages html code in the local editor of choice, used for debugging + virtual void ViewSource( HHTMLBrowser unBrowserHandle ) = 0; + // copy the currently selected text on the html page to the local clipboard + virtual void CopyToClipboard( HHTMLBrowser unBrowserHandle ) = 0; + // paste from the local clipboard to the current html page + virtual void PasteFromClipboard( HHTMLBrowser unBrowserHandle ) = 0; + + // find this string in the browser, if bCurrentlyInFind is true then instead cycle to the next matching element + virtual void Find( HHTMLBrowser unBrowserHandle, const char *pchSearchStr, bool bCurrentlyInFind, bool bReverse ) = 0; + // cancel a currently running find + virtual void StopFind( HHTMLBrowser unBrowserHandle ) = 0; + + // return details about the link at position x,y on the current page + virtual void GetLinkAtPosition( HHTMLBrowser unBrowserHandle, int x, int y ) = 0; + + // set a webcookie for the hostname in question + virtual void SetCookie( const char *pchHostname, const char *pchKey, const char *pchValue, const char *pchPath = "/", RTime32 nExpires = 0, bool bSecure = false, bool bHTTPOnly = false ) = 0; + + // Zoom the current page by flZoom ( from 0.0 to 2.0, so to zoom to 120% use 1.2 ), zooming around point X,Y in the page (use 0,0 if you don't care) + virtual void SetPageScaleFactor( HHTMLBrowser unBrowserHandle, float flZoom, int nPointX, int nPointY ) = 0; + + // Enable/disable low-resource background mode, where javascript and repaint timers are throttled, resources are + // more aggressively purged from memory, and audio/video elements are paused. When background mode is enabled, + // all HTML5 video and audio objects will execute ".pause()" and gain the property "._steam_background_paused = 1". + // When background mode is disabled, any video or audio objects with that property will resume with ".play()". + virtual void SetBackgroundMode( HHTMLBrowser unBrowserHandle, bool bBackgroundMode ) = 0; + + // Scale the output display space by this factor, this is useful when displaying content on high dpi devices. + // Specifies the ratio between physical and logical pixels. + virtual void SetDPIScalingFactor( HHTMLBrowser unBrowserHandle, float flDPIScaling ) = 0; + + // Open HTML/JS developer tools + virtual void OpenDeveloperTools( HHTMLBrowser unBrowserHandle ) = 0; + + // CALLBACKS + // + // These set of functions are used as responses to callback requests + // + + // You MUST call this in response to a HTML_StartRequest_t callback + // Set bAllowed to true to allow this navigation, false to cancel it and stay + // on the current page. You can use this feature to limit the valid pages + // allowed in your HTML surface. + virtual void AllowStartRequest( HHTMLBrowser unBrowserHandle, bool bAllowed ) = 0; + + // You MUST call this in response to a HTML_JSAlert_t or HTML_JSConfirm_t callback + // Set bResult to true for the OK option of a confirm, use false otherwise + virtual void JSDialogResponse( HHTMLBrowser unBrowserHandle, bool bResult ) = 0; + + // You MUST call this in response to a HTML_FileOpenDialog_t callback + STEAM_IGNOREATTR() + virtual void FileLoadDialogResponse( HHTMLBrowser unBrowserHandle, const char **pchSelectedFiles ) = 0; +}; + +#define STEAMHTMLSURFACE_INTERFACE_VERSION "STEAMHTMLSURFACE_INTERFACE_VERSION_005" + +// Global interface accessor +inline ISteamHTMLSurface *SteamHTMLSurface(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamHTMLSurface *, SteamHTMLSurface, STEAMHTMLSURFACE_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + + +//----------------------------------------------------------------------------- +// Purpose: The browser is ready for use +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_BrowserReady_t, k_iSteamHTMLSurfaceCallbacks + 1 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // this browser is now fully created and ready to navigate to pages +STEAM_CALLBACK_END(1) + + +//----------------------------------------------------------------------------- +// Purpose: the browser has a pending paint +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN(HTML_NeedsPaint_t, k_iSteamHTMLSurfaceCallbacks + 2) +STEAM_CALLBACK_MEMBER(0, HHTMLBrowser, unBrowserHandle) // the browser that needs the paint +STEAM_CALLBACK_MEMBER(1, const char *, pBGRA ) // a pointer to the B8G8R8A8 data for this surface, valid until SteamAPI_RunCallbacks is next called +STEAM_CALLBACK_MEMBER(2, uint32, unWide) // the total width of the pBGRA texture +STEAM_CALLBACK_MEMBER(3, uint32, unTall) // the total height of the pBGRA texture +STEAM_CALLBACK_MEMBER(4, uint32, unUpdateX) // the offset in X for the damage rect for this update +STEAM_CALLBACK_MEMBER(5, uint32, unUpdateY) // the offset in Y for the damage rect for this update +STEAM_CALLBACK_MEMBER(6, uint32, unUpdateWide) // the width of the damage rect for this update +STEAM_CALLBACK_MEMBER(7, uint32, unUpdateTall) // the height of the damage rect for this update +STEAM_CALLBACK_MEMBER(8, uint32, unScrollX) // the page scroll the browser was at when this texture was rendered +STEAM_CALLBACK_MEMBER(9, uint32, unScrollY) // the page scroll the browser was at when this texture was rendered +STEAM_CALLBACK_MEMBER(10, float, flPageScale) // the page scale factor on this page when rendered +STEAM_CALLBACK_MEMBER(11, uint32, unPageSerial) // incremented on each new page load, you can use this to reject draws while navigating to new pages +STEAM_CALLBACK_END(12) + + +//----------------------------------------------------------------------------- +// Purpose: The browser wanted to navigate to a new page +// NOTE - you MUST call AllowStartRequest in response to this callback +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN(HTML_StartRequest_t, k_iSteamHTMLSurfaceCallbacks + 3) +STEAM_CALLBACK_MEMBER(0, HHTMLBrowser, unBrowserHandle) // the handle of the surface navigating +STEAM_CALLBACK_MEMBER(1, const char *, pchURL) // the url they wish to navigate to +STEAM_CALLBACK_MEMBER(2, const char *, pchTarget) // the html link target type (i.e _blank, _self, _parent, _top ) +STEAM_CALLBACK_MEMBER(3, const char *, pchPostData ) // any posted data for the request +STEAM_CALLBACK_MEMBER(4, bool, bIsRedirect) // true if this was a http/html redirect from the last load request +STEAM_CALLBACK_END(5) + + +//----------------------------------------------------------------------------- +// Purpose: The browser has been requested to close due to user interaction (usually from a javascript window.close() call) +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN(HTML_CloseBrowser_t, k_iSteamHTMLSurfaceCallbacks + 4) +STEAM_CALLBACK_MEMBER(0, HHTMLBrowser, unBrowserHandle) // the handle of the surface +STEAM_CALLBACK_END(1) + + +//----------------------------------------------------------------------------- +// Purpose: the browser is navigating to a new url +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_URLChanged_t, k_iSteamHTMLSurfaceCallbacks + 5 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface navigating +STEAM_CALLBACK_MEMBER( 1, const char *, pchURL ) // the url they wish to navigate to +STEAM_CALLBACK_MEMBER( 2, const char *, pchPostData ) // any posted data for the request +STEAM_CALLBACK_MEMBER( 3, bool, bIsRedirect ) // true if this was a http/html redirect from the last load request +STEAM_CALLBACK_MEMBER( 4, const char *, pchPageTitle ) // the title of the page +STEAM_CALLBACK_MEMBER( 5, bool, bNewNavigation ) // true if this was from a fresh tab and not a click on an existing page +STEAM_CALLBACK_END(6) + + +//----------------------------------------------------------------------------- +// Purpose: A page is finished loading +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_FinishedRequest_t, k_iSteamHTMLSurfaceCallbacks + 6 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, const char *, pchURL ) // +STEAM_CALLBACK_MEMBER( 2, const char *, pchPageTitle ) // +STEAM_CALLBACK_END(3) + + +//----------------------------------------------------------------------------- +// Purpose: a request to load this url in a new tab +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_OpenLinkInNewTab_t, k_iSteamHTMLSurfaceCallbacks + 7 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, const char *, pchURL ) // +STEAM_CALLBACK_END(2) + + +//----------------------------------------------------------------------------- +// Purpose: the page has a new title now +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_ChangedTitle_t, k_iSteamHTMLSurfaceCallbacks + 8 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, const char *, pchTitle ) // +STEAM_CALLBACK_END(2) + + +//----------------------------------------------------------------------------- +// Purpose: results from a search +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_SearchResults_t, k_iSteamHTMLSurfaceCallbacks + 9 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, uint32, unResults ) // +STEAM_CALLBACK_MEMBER( 2, uint32, unCurrentMatch ) // +STEAM_CALLBACK_END(3) + + +//----------------------------------------------------------------------------- +// Purpose: page history status changed on the ability to go backwards and forward +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_CanGoBackAndForward_t, k_iSteamHTMLSurfaceCallbacks + 10 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, bool, bCanGoBack ) // +STEAM_CALLBACK_MEMBER( 2, bool, bCanGoForward ) // +STEAM_CALLBACK_END(3) + + +//----------------------------------------------------------------------------- +// Purpose: details on the visibility and size of the horizontal scrollbar +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_HorizontalScroll_t, k_iSteamHTMLSurfaceCallbacks + 11 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, uint32, unScrollMax ) // +STEAM_CALLBACK_MEMBER( 2, uint32, unScrollCurrent ) // +STEAM_CALLBACK_MEMBER( 3, float, flPageScale ) // +STEAM_CALLBACK_MEMBER( 4, bool , bVisible ) // +STEAM_CALLBACK_MEMBER( 5, uint32, unPageSize ) // +STEAM_CALLBACK_END(6) + + +//----------------------------------------------------------------------------- +// Purpose: details on the visibility and size of the vertical scrollbar +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_VerticalScroll_t, k_iSteamHTMLSurfaceCallbacks + 12 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, uint32, unScrollMax ) // +STEAM_CALLBACK_MEMBER( 2, uint32, unScrollCurrent ) // +STEAM_CALLBACK_MEMBER( 3, float, flPageScale ) // +STEAM_CALLBACK_MEMBER( 4, bool, bVisible ) // +STEAM_CALLBACK_MEMBER( 5, uint32, unPageSize ) // +STEAM_CALLBACK_END(6) + + +//----------------------------------------------------------------------------- +// Purpose: response to GetLinkAtPosition call +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_LinkAtPosition_t, k_iSteamHTMLSurfaceCallbacks + 13 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, uint32, x ) // NOTE - Not currently set +STEAM_CALLBACK_MEMBER( 2, uint32, y ) // NOTE - Not currently set +STEAM_CALLBACK_MEMBER( 3, const char *, pchURL ) // +STEAM_CALLBACK_MEMBER( 4, bool, bInput ) // +STEAM_CALLBACK_MEMBER( 5, bool, bLiveLink ) // +STEAM_CALLBACK_END(6) + + + +//----------------------------------------------------------------------------- +// Purpose: show a Javascript alert dialog, call JSDialogResponse +// when the user dismisses this dialog (or right away to ignore it) +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_JSAlert_t, k_iSteamHTMLSurfaceCallbacks + 14 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, const char *, pchMessage ) // +STEAM_CALLBACK_END(2) + + +//----------------------------------------------------------------------------- +// Purpose: show a Javascript confirmation dialog, call JSDialogResponse +// when the user dismisses this dialog (or right away to ignore it) +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_JSConfirm_t, k_iSteamHTMLSurfaceCallbacks + 15 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, const char *, pchMessage ) // +STEAM_CALLBACK_END(2) + + +//----------------------------------------------------------------------------- +// Purpose: when received show a file open dialog +// then call FileLoadDialogResponse with the file(s) the user selected. +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_FileOpenDialog_t, k_iSteamHTMLSurfaceCallbacks + 16 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, const char *, pchTitle ) // +STEAM_CALLBACK_MEMBER( 2, const char *, pchInitialFile ) // +STEAM_CALLBACK_END(3) + + +//----------------------------------------------------------------------------- +// Purpose: a new html window is being created. +// +// IMPORTANT NOTE: at this time, the API does not allow you to acknowledge or +// render the contents of this new window, so the new window is always destroyed +// immediately. The URL and other parameters of the new window are passed here +// to give your application the opportunity to call CreateBrowser and set up +// a new browser in response to the attempted popup, if you wish to do so. +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_NewWindow_t, k_iSteamHTMLSurfaceCallbacks + 21 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the current surface +STEAM_CALLBACK_MEMBER( 1, const char *, pchURL ) // the page to load +STEAM_CALLBACK_MEMBER( 2, uint32, unX ) // the x pos into the page to display the popup +STEAM_CALLBACK_MEMBER( 3, uint32, unY ) // the y pos into the page to display the popup +STEAM_CALLBACK_MEMBER( 4, uint32, unWide ) // the total width of the pBGRA texture +STEAM_CALLBACK_MEMBER( 5, uint32, unTall ) // the total height of the pBGRA texture +STEAM_CALLBACK_MEMBER( 6, HHTMLBrowser, unNewWindow_BrowserHandle_IGNORE ) +STEAM_CALLBACK_END(7) + + +//----------------------------------------------------------------------------- +// Purpose: change the cursor to display +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_SetCursor_t, k_iSteamHTMLSurfaceCallbacks + 22 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, uint32, eMouseCursor ) // the EMouseCursor to display +STEAM_CALLBACK_END(2) + + +//----------------------------------------------------------------------------- +// Purpose: informational message from the browser +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_StatusText_t, k_iSteamHTMLSurfaceCallbacks + 23 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, const char *, pchMsg ) // the EMouseCursor to display +STEAM_CALLBACK_END(2) + + +//----------------------------------------------------------------------------- +// Purpose: show a tooltip +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_ShowToolTip_t, k_iSteamHTMLSurfaceCallbacks + 24 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, const char *, pchMsg ) // the EMouseCursor to display +STEAM_CALLBACK_END(2) + + +//----------------------------------------------------------------------------- +// Purpose: update the text of an existing tooltip +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_UpdateToolTip_t, k_iSteamHTMLSurfaceCallbacks + 25 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_MEMBER( 1, const char *, pchMsg ) // the EMouseCursor to display +STEAM_CALLBACK_END(2) + + +//----------------------------------------------------------------------------- +// Purpose: hide the tooltip you are showing +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_HideToolTip_t, k_iSteamHTMLSurfaceCallbacks + 26 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // the handle of the surface +STEAM_CALLBACK_END(1) + + +//----------------------------------------------------------------------------- +// Purpose: The browser has restarted due to an internal failure, use this new handle value +//----------------------------------------------------------------------------- +STEAM_CALLBACK_BEGIN( HTML_BrowserRestarted_t, k_iSteamHTMLSurfaceCallbacks + 27 ) +STEAM_CALLBACK_MEMBER( 0, HHTMLBrowser, unBrowserHandle ) // this is the new browser handle after the restart +STEAM_CALLBACK_MEMBER( 1, HHTMLBrowser, unOldBrowserHandle ) // the handle for the browser before the restart, if your handle was this then switch to using unBrowserHandle for API calls +STEAM_CALLBACK_END(2) + + +#pragma pack( pop ) + + +#endif // ISTEAMHTMLSURFACE_H diff --git a/lib/steam/public/steam/isteamhttp.h b/lib/steam/public/steam/isteamhttp.h new file mode 100644 index 0000000..9447b39 --- /dev/null +++ b/lib/steam/public/steam/isteamhttp.h @@ -0,0 +1,219 @@ +//====== Copyright © 1996-2009, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to http client +// +//============================================================================= + +#ifndef ISTEAMHTTP_H +#define ISTEAMHTTP_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" +#include "steamhttpenums.h" + +// Handle to a HTTP Request handle +typedef uint32 HTTPRequestHandle; +#define INVALID_HTTPREQUEST_HANDLE 0 + +typedef uint32 HTTPCookieContainerHandle; +#define INVALID_HTTPCOOKIE_HANDLE 0 + +//----------------------------------------------------------------------------- +// Purpose: interface to http client +//----------------------------------------------------------------------------- +class ISteamHTTP +{ +public: + + // Initializes a new HTTP request, returning a handle to use in further operations on it. Requires + // the method (GET or POST) and the absolute URL for the request. Both http and https are supported, + // so this string must start with http:// or https:// and should look like http://store.steampowered.com/app/250/ + // or such. + virtual HTTPRequestHandle CreateHTTPRequest( EHTTPMethod eHTTPRequestMethod, const char *pchAbsoluteURL ) = 0; + + // Set a context value for the request, which will be returned in the HTTPRequestCompleted_t callback after + // sending the request. This is just so the caller can easily keep track of which callbacks go with which request data. + virtual bool SetHTTPRequestContextValue( HTTPRequestHandle hRequest, uint64 ulContextValue ) = 0; + + // Set a timeout in seconds for the HTTP request, must be called prior to sending the request. Default + // timeout is 60 seconds if you don't call this. Returns false if the handle is invalid, or the request + // has already been sent. + virtual bool SetHTTPRequestNetworkActivityTimeout( HTTPRequestHandle hRequest, uint32 unTimeoutSeconds ) = 0; + + // Set a request header value for the request, must be called prior to sending the request. Will + // return false if the handle is invalid or the request is already sent. + virtual bool SetHTTPRequestHeaderValue( HTTPRequestHandle hRequest, const char *pchHeaderName, const char *pchHeaderValue ) = 0; + + // Set a GET or POST parameter value on the request, which is set will depend on the EHTTPMethod specified + // when creating the request. Must be called prior to sending the request. Will return false if the + // handle is invalid or the request is already sent. + virtual bool SetHTTPRequestGetOrPostParameter( HTTPRequestHandle hRequest, const char *pchParamName, const char *pchParamValue ) = 0; + + // Sends the HTTP request, will return false on a bad handle, otherwise use SteamCallHandle to wait on + // asynchronous response via callback. + // + // Note: If the user is in offline mode in Steam, then this will add a only-if-cached cache-control + // header and only do a local cache lookup rather than sending any actual remote request. + virtual bool SendHTTPRequest( HTTPRequestHandle hRequest, SteamAPICall_t *pCallHandle ) = 0; + + // Sends the HTTP request, will return false on a bad handle, otherwise use SteamCallHandle to wait on + // asynchronous response via callback for completion, and listen for HTTPRequestHeadersReceived_t and + // HTTPRequestDataReceived_t callbacks while streaming. + virtual bool SendHTTPRequestAndStreamResponse( HTTPRequestHandle hRequest, SteamAPICall_t *pCallHandle ) = 0; + + // Defers a request you have sent, the actual HTTP client code may have many requests queued, and this will move + // the specified request to the tail of the queue. Returns false on invalid handle, or if the request is not yet sent. + virtual bool DeferHTTPRequest( HTTPRequestHandle hRequest ) = 0; + + // Prioritizes a request you have sent, the actual HTTP client code may have many requests queued, and this will move + // the specified request to the head of the queue. Returns false on invalid handle, or if the request is not yet sent. + virtual bool PrioritizeHTTPRequest( HTTPRequestHandle hRequest ) = 0; + + // Checks if a response header is present in a HTTP response given a handle from HTTPRequestCompleted_t, also + // returns the size of the header value if present so the caller and allocate a correctly sized buffer for + // GetHTTPResponseHeaderValue. + virtual bool GetHTTPResponseHeaderSize( HTTPRequestHandle hRequest, const char *pchHeaderName, uint32 *unResponseHeaderSize ) = 0; + + // Gets header values from a HTTP response given a handle from HTTPRequestCompleted_t, will return false if the + // header is not present or if your buffer is too small to contain it's value. You should first call + // BGetHTTPResponseHeaderSize to check for the presence of the header and to find out the size buffer needed. + virtual bool GetHTTPResponseHeaderValue( HTTPRequestHandle hRequest, const char *pchHeaderName, uint8 *pHeaderValueBuffer, uint32 unBufferSize ) = 0; + + // Gets the size of the body data from a HTTP response given a handle from HTTPRequestCompleted_t, will return false if the + // handle is invalid. + virtual bool GetHTTPResponseBodySize( HTTPRequestHandle hRequest, uint32 *unBodySize ) = 0; + + // Gets the body data from a HTTP response given a handle from HTTPRequestCompleted_t, will return false if the + // handle is invalid or is to a streaming response, or if the provided buffer is not the correct size. Use BGetHTTPResponseBodySize first to find out + // the correct buffer size to use. + virtual bool GetHTTPResponseBodyData( HTTPRequestHandle hRequest, uint8 *pBodyDataBuffer, uint32 unBufferSize ) = 0; + + // Gets the body data from a streaming HTTP response given a handle from HTTPRequestDataReceived_t. Will return false if the + // handle is invalid or is to a non-streaming response (meaning it wasn't sent with SendHTTPRequestAndStreamResponse), or if the buffer size and offset + // do not match the size and offset sent in HTTPRequestDataReceived_t. + virtual bool GetHTTPStreamingResponseBodyData( HTTPRequestHandle hRequest, uint32 cOffset, uint8 *pBodyDataBuffer, uint32 unBufferSize ) = 0; + + // Releases an HTTP response handle, should always be called to free resources after receiving a HTTPRequestCompleted_t + // callback and finishing using the response. + virtual bool ReleaseHTTPRequest( HTTPRequestHandle hRequest ) = 0; + + // Gets progress on downloading the body for the request. This will be zero unless a response header has already been + // received which included a content-length field. For responses that contain no content-length it will report + // zero for the duration of the request as the size is unknown until the connection closes. + virtual bool GetHTTPDownloadProgressPct( HTTPRequestHandle hRequest, float *pflPercentOut ) = 0; + + // Sets the body for an HTTP Post request. Will fail and return false on a GET request, and will fail if POST params + // have already been set for the request. Setting this raw body makes it the only contents for the post, the pchContentType + // parameter will set the content-type header for the request so the server may know how to interpret the body. + virtual bool SetHTTPRequestRawPostBody( HTTPRequestHandle hRequest, const char *pchContentType, uint8 *pubBody, uint32 unBodyLen ) = 0; + + // Creates a cookie container handle which you must later free with ReleaseCookieContainer(). If bAllowResponsesToModify=true + // than any response to your requests using this cookie container may add new cookies which may be transmitted with + // future requests. If bAllowResponsesToModify=false than only cookies you explicitly set will be sent. This API is just for + // during process lifetime, after steam restarts no cookies are persisted and you have no way to access the cookie container across + // repeat executions of your process. + virtual HTTPCookieContainerHandle CreateCookieContainer( bool bAllowResponsesToModify ) = 0; + + // Release a cookie container you are finished using, freeing it's memory + virtual bool ReleaseCookieContainer( HTTPCookieContainerHandle hCookieContainer ) = 0; + + // Adds a cookie to the specified cookie container that will be used with future requests. + virtual bool SetCookie( HTTPCookieContainerHandle hCookieContainer, const char *pchHost, const char *pchUrl, const char *pchCookie ) = 0; + + // Set the cookie container to use for a HTTP request + virtual bool SetHTTPRequestCookieContainer( HTTPRequestHandle hRequest, HTTPCookieContainerHandle hCookieContainer ) = 0; + + // Set the extra user agent info for a request, this doesn't clobber the normal user agent, it just adds the extra info on the end + virtual bool SetHTTPRequestUserAgentInfo( HTTPRequestHandle hRequest, const char *pchUserAgentInfo ) = 0; + + // Disable or re-enable verification of SSL/TLS certificates. + // By default, certificates are checked for all HTTPS requests. + virtual bool SetHTTPRequestRequiresVerifiedCertificate( HTTPRequestHandle hRequest, bool bRequireVerifiedCertificate ) = 0; + + // Set an absolute timeout on the HTTP request, this is just a total time timeout different than the network activity timeout + // which can bump everytime we get more data + virtual bool SetHTTPRequestAbsoluteTimeoutMS( HTTPRequestHandle hRequest, uint32 unMilliseconds ) = 0; + + // Check if the reason the request failed was because we timed it out (rather than some harder failure) + virtual bool GetHTTPRequestWasTimedOut( HTTPRequestHandle hRequest, bool *pbWasTimedOut ) = 0; +}; + +#define STEAMHTTP_INTERFACE_VERSION "STEAMHTTP_INTERFACE_VERSION003" + +// Global interface accessor +inline ISteamHTTP *SteamHTTP(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamHTTP *, SteamHTTP, STEAMHTTP_INTERFACE_VERSION ); + +// Global accessor for the gameserver client +inline ISteamHTTP *SteamGameServerHTTP(); +STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( ISteamHTTP *, SteamGameServerHTTP, STEAMHTTP_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +struct HTTPRequestCompleted_t +{ + enum { k_iCallback = k_iClientHTTPCallbacks + 1 }; + + // Handle value for the request that has completed. + HTTPRequestHandle m_hRequest; + + // Context value that the user defined on the request that this callback is associated with, 0 if + // no context value was set. + uint64 m_ulContextValue; + + // This will be true if we actually got any sort of response from the server (even an error). + // It will be false if we failed due to an internal error or client side network failure. + bool m_bRequestSuccessful; + + // Will be the HTTP status code value returned by the server, k_EHTTPStatusCode200OK is the normal + // OK response, if you get something else you probably need to treat it as a failure. + EHTTPStatusCode m_eStatusCode; + + uint32 m_unBodySize; // Same as GetHTTPResponseBodySize() +}; + + +struct HTTPRequestHeadersReceived_t +{ + enum { k_iCallback = k_iClientHTTPCallbacks + 2 }; + + // Handle value for the request that has received headers. + HTTPRequestHandle m_hRequest; + + // Context value that the user defined on the request that this callback is associated with, 0 if + // no context value was set. + uint64 m_ulContextValue; +}; + +struct HTTPRequestDataReceived_t +{ + enum { k_iCallback = k_iClientHTTPCallbacks + 3 }; + + // Handle value for the request that has received data. + HTTPRequestHandle m_hRequest; + + // Context value that the user defined on the request that this callback is associated with, 0 if + // no context value was set. + uint64 m_ulContextValue; + + + // Offset to provide to GetHTTPStreamingResponseBodyData to get this chunk of data + uint32 m_cOffset; + + // Size to provide to GetHTTPStreamingResponseBodyData to get this chunk of data + uint32 m_cBytesReceived; +}; + + +#pragma pack( pop ) + +#endif // ISTEAMHTTP_H \ No newline at end of file diff --git a/lib/steam/public/steam/isteaminput.h b/lib/steam/public/steam/isteaminput.h new file mode 100644 index 0000000..200776b --- /dev/null +++ b/lib/steam/public/steam/isteaminput.h @@ -0,0 +1,688 @@ +//====== Copyright 1996-2018, Valve Corporation, All rights reserved. ======= +// +// Purpose: Steam Input is a flexible input API that supports over three hundred devices including all +// common variants of Xbox, Playstation, Nintendo Switch Pro, and Steam Controllers. +// For more info including a getting started guide for developers +// please visit: https://partner.steamgames.com/doc/features/steam_controller +// +//============================================================================= + +#ifndef ISTEAMINPUT_H +#define ISTEAMINPUT_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +#define STEAM_INPUT_MAX_COUNT 16 + +#define STEAM_INPUT_MAX_ANALOG_ACTIONS 16 + +#define STEAM_INPUT_MAX_DIGITAL_ACTIONS 128 + +#define STEAM_INPUT_MAX_ORIGINS 8 + +#define STEAM_INPUT_MAX_ACTIVE_LAYERS 16 + +// When sending an option to a specific controller handle, you can send to all devices via this command +#define STEAM_INPUT_HANDLE_ALL_CONTROLLERS UINT64_MAX + +#define STEAM_INPUT_MIN_ANALOG_ACTION_DATA -1.0f +#define STEAM_INPUT_MAX_ANALOG_ACTION_DATA 1.0f + +enum EInputSourceMode +{ + k_EInputSourceMode_None, + k_EInputSourceMode_Dpad, + k_EInputSourceMode_Buttons, + k_EInputSourceMode_FourButtons, + k_EInputSourceMode_AbsoluteMouse, + k_EInputSourceMode_RelativeMouse, + k_EInputSourceMode_JoystickMove, + k_EInputSourceMode_JoystickMouse, + k_EInputSourceMode_JoystickCamera, + k_EInputSourceMode_ScrollWheel, + k_EInputSourceMode_Trigger, + k_EInputSourceMode_TouchMenu, + k_EInputSourceMode_MouseJoystick, + k_EInputSourceMode_MouseRegion, + k_EInputSourceMode_RadialMenu, + k_EInputSourceMode_SingleButton, + k_EInputSourceMode_Switches +}; + +// Note: Please do not use action origins as a way to identify controller types. There is no +// guarantee that they will be added in a contiguous manner - use GetInputTypeForHandle instead. +// Versions of Steam that add new controller types in the future will extend this enum so if you're +// using a lookup table please check the bounds of any origins returned by Steam. +enum EInputActionOrigin +{ + // Steam Controller + k_EInputActionOrigin_None, + k_EInputActionOrigin_SteamController_A, + k_EInputActionOrigin_SteamController_B, + k_EInputActionOrigin_SteamController_X, + k_EInputActionOrigin_SteamController_Y, + k_EInputActionOrigin_SteamController_LeftBumper, + k_EInputActionOrigin_SteamController_RightBumper, + k_EInputActionOrigin_SteamController_LeftGrip, + k_EInputActionOrigin_SteamController_RightGrip, + k_EInputActionOrigin_SteamController_Start, + k_EInputActionOrigin_SteamController_Back, + k_EInputActionOrigin_SteamController_LeftPad_Touch, + k_EInputActionOrigin_SteamController_LeftPad_Swipe, + k_EInputActionOrigin_SteamController_LeftPad_Click, + k_EInputActionOrigin_SteamController_LeftPad_DPadNorth, + k_EInputActionOrigin_SteamController_LeftPad_DPadSouth, + k_EInputActionOrigin_SteamController_LeftPad_DPadWest, + k_EInputActionOrigin_SteamController_LeftPad_DPadEast, + k_EInputActionOrigin_SteamController_RightPad_Touch, + k_EInputActionOrigin_SteamController_RightPad_Swipe, + k_EInputActionOrigin_SteamController_RightPad_Click, + k_EInputActionOrigin_SteamController_RightPad_DPadNorth, + k_EInputActionOrigin_SteamController_RightPad_DPadSouth, + k_EInputActionOrigin_SteamController_RightPad_DPadWest, + k_EInputActionOrigin_SteamController_RightPad_DPadEast, + k_EInputActionOrigin_SteamController_LeftTrigger_Pull, + k_EInputActionOrigin_SteamController_LeftTrigger_Click, + k_EInputActionOrigin_SteamController_RightTrigger_Pull, + k_EInputActionOrigin_SteamController_RightTrigger_Click, + k_EInputActionOrigin_SteamController_LeftStick_Move, + k_EInputActionOrigin_SteamController_LeftStick_Click, + k_EInputActionOrigin_SteamController_LeftStick_DPadNorth, + k_EInputActionOrigin_SteamController_LeftStick_DPadSouth, + k_EInputActionOrigin_SteamController_LeftStick_DPadWest, + k_EInputActionOrigin_SteamController_LeftStick_DPadEast, + k_EInputActionOrigin_SteamController_Gyro_Move, + k_EInputActionOrigin_SteamController_Gyro_Pitch, + k_EInputActionOrigin_SteamController_Gyro_Yaw, + k_EInputActionOrigin_SteamController_Gyro_Roll, + k_EInputActionOrigin_SteamController_Reserved0, + k_EInputActionOrigin_SteamController_Reserved1, + k_EInputActionOrigin_SteamController_Reserved2, + k_EInputActionOrigin_SteamController_Reserved3, + k_EInputActionOrigin_SteamController_Reserved4, + k_EInputActionOrigin_SteamController_Reserved5, + k_EInputActionOrigin_SteamController_Reserved6, + k_EInputActionOrigin_SteamController_Reserved7, + k_EInputActionOrigin_SteamController_Reserved8, + k_EInputActionOrigin_SteamController_Reserved9, + k_EInputActionOrigin_SteamController_Reserved10, + + // PS4 Dual Shock + k_EInputActionOrigin_PS4_X, + k_EInputActionOrigin_PS4_Circle, + k_EInputActionOrigin_PS4_Triangle, + k_EInputActionOrigin_PS4_Square, + k_EInputActionOrigin_PS4_LeftBumper, + k_EInputActionOrigin_PS4_RightBumper, + k_EInputActionOrigin_PS4_Options, //Start + k_EInputActionOrigin_PS4_Share, //Back + k_EInputActionOrigin_PS4_LeftPad_Touch, + k_EInputActionOrigin_PS4_LeftPad_Swipe, + k_EInputActionOrigin_PS4_LeftPad_Click, + k_EInputActionOrigin_PS4_LeftPad_DPadNorth, + k_EInputActionOrigin_PS4_LeftPad_DPadSouth, + k_EInputActionOrigin_PS4_LeftPad_DPadWest, + k_EInputActionOrigin_PS4_LeftPad_DPadEast, + k_EInputActionOrigin_PS4_RightPad_Touch, + k_EInputActionOrigin_PS4_RightPad_Swipe, + k_EInputActionOrigin_PS4_RightPad_Click, + k_EInputActionOrigin_PS4_RightPad_DPadNorth, + k_EInputActionOrigin_PS4_RightPad_DPadSouth, + k_EInputActionOrigin_PS4_RightPad_DPadWest, + k_EInputActionOrigin_PS4_RightPad_DPadEast, + k_EInputActionOrigin_PS4_CenterPad_Touch, + k_EInputActionOrigin_PS4_CenterPad_Swipe, + k_EInputActionOrigin_PS4_CenterPad_Click, + k_EInputActionOrigin_PS4_CenterPad_DPadNorth, + k_EInputActionOrigin_PS4_CenterPad_DPadSouth, + k_EInputActionOrigin_PS4_CenterPad_DPadWest, + k_EInputActionOrigin_PS4_CenterPad_DPadEast, + k_EInputActionOrigin_PS4_LeftTrigger_Pull, + k_EInputActionOrigin_PS4_LeftTrigger_Click, + k_EInputActionOrigin_PS4_RightTrigger_Pull, + k_EInputActionOrigin_PS4_RightTrigger_Click, + k_EInputActionOrigin_PS4_LeftStick_Move, + k_EInputActionOrigin_PS4_LeftStick_Click, + k_EInputActionOrigin_PS4_LeftStick_DPadNorth, + k_EInputActionOrigin_PS4_LeftStick_DPadSouth, + k_EInputActionOrigin_PS4_LeftStick_DPadWest, + k_EInputActionOrigin_PS4_LeftStick_DPadEast, + k_EInputActionOrigin_PS4_RightStick_Move, + k_EInputActionOrigin_PS4_RightStick_Click, + k_EInputActionOrigin_PS4_RightStick_DPadNorth, + k_EInputActionOrigin_PS4_RightStick_DPadSouth, + k_EInputActionOrigin_PS4_RightStick_DPadWest, + k_EInputActionOrigin_PS4_RightStick_DPadEast, + k_EInputActionOrigin_PS4_DPad_North, + k_EInputActionOrigin_PS4_DPad_South, + k_EInputActionOrigin_PS4_DPad_West, + k_EInputActionOrigin_PS4_DPad_East, + k_EInputActionOrigin_PS4_Gyro_Move, + k_EInputActionOrigin_PS4_Gyro_Pitch, + k_EInputActionOrigin_PS4_Gyro_Yaw, + k_EInputActionOrigin_PS4_Gyro_Roll, + k_EInputActionOrigin_PS4_DPad_Move, + k_EInputActionOrigin_PS4_Reserved1, + k_EInputActionOrigin_PS4_Reserved2, + k_EInputActionOrigin_PS4_Reserved3, + k_EInputActionOrigin_PS4_Reserved4, + k_EInputActionOrigin_PS4_Reserved5, + k_EInputActionOrigin_PS4_Reserved6, + k_EInputActionOrigin_PS4_Reserved7, + k_EInputActionOrigin_PS4_Reserved8, + k_EInputActionOrigin_PS4_Reserved9, + k_EInputActionOrigin_PS4_Reserved10, + + // XBox One + k_EInputActionOrigin_XBoxOne_A, + k_EInputActionOrigin_XBoxOne_B, + k_EInputActionOrigin_XBoxOne_X, + k_EInputActionOrigin_XBoxOne_Y, + k_EInputActionOrigin_XBoxOne_LeftBumper, + k_EInputActionOrigin_XBoxOne_RightBumper, + k_EInputActionOrigin_XBoxOne_Menu, //Start + k_EInputActionOrigin_XBoxOne_View, //Back + k_EInputActionOrigin_XBoxOne_LeftTrigger_Pull, + k_EInputActionOrigin_XBoxOne_LeftTrigger_Click, + k_EInputActionOrigin_XBoxOne_RightTrigger_Pull, + k_EInputActionOrigin_XBoxOne_RightTrigger_Click, + k_EInputActionOrigin_XBoxOne_LeftStick_Move, + k_EInputActionOrigin_XBoxOne_LeftStick_Click, + k_EInputActionOrigin_XBoxOne_LeftStick_DPadNorth, + k_EInputActionOrigin_XBoxOne_LeftStick_DPadSouth, + k_EInputActionOrigin_XBoxOne_LeftStick_DPadWest, + k_EInputActionOrigin_XBoxOne_LeftStick_DPadEast, + k_EInputActionOrigin_XBoxOne_RightStick_Move, + k_EInputActionOrigin_XBoxOne_RightStick_Click, + k_EInputActionOrigin_XBoxOne_RightStick_DPadNorth, + k_EInputActionOrigin_XBoxOne_RightStick_DPadSouth, + k_EInputActionOrigin_XBoxOne_RightStick_DPadWest, + k_EInputActionOrigin_XBoxOne_RightStick_DPadEast, + k_EInputActionOrigin_XBoxOne_DPad_North, + k_EInputActionOrigin_XBoxOne_DPad_South, + k_EInputActionOrigin_XBoxOne_DPad_West, + k_EInputActionOrigin_XBoxOne_DPad_East, + k_EInputActionOrigin_XBoxOne_DPad_Move, + k_EInputActionOrigin_XBoxOne_Reserved1, + k_EInputActionOrigin_XBoxOne_Reserved2, + k_EInputActionOrigin_XBoxOne_Reserved3, + k_EInputActionOrigin_XBoxOne_Reserved4, + k_EInputActionOrigin_XBoxOne_Reserved5, + k_EInputActionOrigin_XBoxOne_Reserved6, + k_EInputActionOrigin_XBoxOne_Reserved7, + k_EInputActionOrigin_XBoxOne_Reserved8, + k_EInputActionOrigin_XBoxOne_Reserved9, + k_EInputActionOrigin_XBoxOne_Reserved10, + + // XBox 360 + k_EInputActionOrigin_XBox360_A, + k_EInputActionOrigin_XBox360_B, + k_EInputActionOrigin_XBox360_X, + k_EInputActionOrigin_XBox360_Y, + k_EInputActionOrigin_XBox360_LeftBumper, + k_EInputActionOrigin_XBox360_RightBumper, + k_EInputActionOrigin_XBox360_Start, //Start + k_EInputActionOrigin_XBox360_Back, //Back + k_EInputActionOrigin_XBox360_LeftTrigger_Pull, + k_EInputActionOrigin_XBox360_LeftTrigger_Click, + k_EInputActionOrigin_XBox360_RightTrigger_Pull, + k_EInputActionOrigin_XBox360_RightTrigger_Click, + k_EInputActionOrigin_XBox360_LeftStick_Move, + k_EInputActionOrigin_XBox360_LeftStick_Click, + k_EInputActionOrigin_XBox360_LeftStick_DPadNorth, + k_EInputActionOrigin_XBox360_LeftStick_DPadSouth, + k_EInputActionOrigin_XBox360_LeftStick_DPadWest, + k_EInputActionOrigin_XBox360_LeftStick_DPadEast, + k_EInputActionOrigin_XBox360_RightStick_Move, + k_EInputActionOrigin_XBox360_RightStick_Click, + k_EInputActionOrigin_XBox360_RightStick_DPadNorth, + k_EInputActionOrigin_XBox360_RightStick_DPadSouth, + k_EInputActionOrigin_XBox360_RightStick_DPadWest, + k_EInputActionOrigin_XBox360_RightStick_DPadEast, + k_EInputActionOrigin_XBox360_DPad_North, + k_EInputActionOrigin_XBox360_DPad_South, + k_EInputActionOrigin_XBox360_DPad_West, + k_EInputActionOrigin_XBox360_DPad_East, + k_EInputActionOrigin_XBox360_DPad_Move, + k_EInputActionOrigin_XBox360_Reserved1, + k_EInputActionOrigin_XBox360_Reserved2, + k_EInputActionOrigin_XBox360_Reserved3, + k_EInputActionOrigin_XBox360_Reserved4, + k_EInputActionOrigin_XBox360_Reserved5, + k_EInputActionOrigin_XBox360_Reserved6, + k_EInputActionOrigin_XBox360_Reserved7, + k_EInputActionOrigin_XBox360_Reserved8, + k_EInputActionOrigin_XBox360_Reserved9, + k_EInputActionOrigin_XBox360_Reserved10, + + + // Switch - Pro or Joycons used as a single input device. + // This does not apply to a single joycon + k_EInputActionOrigin_Switch_A, + k_EInputActionOrigin_Switch_B, + k_EInputActionOrigin_Switch_X, + k_EInputActionOrigin_Switch_Y, + k_EInputActionOrigin_Switch_LeftBumper, + k_EInputActionOrigin_Switch_RightBumper, + k_EInputActionOrigin_Switch_Plus, //Start + k_EInputActionOrigin_Switch_Minus, //Back + k_EInputActionOrigin_Switch_Capture, + k_EInputActionOrigin_Switch_LeftTrigger_Pull, + k_EInputActionOrigin_Switch_LeftTrigger_Click, + k_EInputActionOrigin_Switch_RightTrigger_Pull, + k_EInputActionOrigin_Switch_RightTrigger_Click, + k_EInputActionOrigin_Switch_LeftStick_Move, + k_EInputActionOrigin_Switch_LeftStick_Click, + k_EInputActionOrigin_Switch_LeftStick_DPadNorth, + k_EInputActionOrigin_Switch_LeftStick_DPadSouth, + k_EInputActionOrigin_Switch_LeftStick_DPadWest, + k_EInputActionOrigin_Switch_LeftStick_DPadEast, + k_EInputActionOrigin_Switch_RightStick_Move, + k_EInputActionOrigin_Switch_RightStick_Click, + k_EInputActionOrigin_Switch_RightStick_DPadNorth, + k_EInputActionOrigin_Switch_RightStick_DPadSouth, + k_EInputActionOrigin_Switch_RightStick_DPadWest, + k_EInputActionOrigin_Switch_RightStick_DPadEast, + k_EInputActionOrigin_Switch_DPad_North, + k_EInputActionOrigin_Switch_DPad_South, + k_EInputActionOrigin_Switch_DPad_West, + k_EInputActionOrigin_Switch_DPad_East, + k_EInputActionOrigin_Switch_ProGyro_Move, // Primary Gyro in Pro Controller, or Right JoyCon + k_EInputActionOrigin_Switch_ProGyro_Pitch, // Primary Gyro in Pro Controller, or Right JoyCon + k_EInputActionOrigin_Switch_ProGyro_Yaw, // Primary Gyro in Pro Controller, or Right JoyCon + k_EInputActionOrigin_Switch_ProGyro_Roll, // Primary Gyro in Pro Controller, or Right JoyCon + k_EInputActionOrigin_Switch_DPad_Move, + k_EInputActionOrigin_Switch_Reserved1, + k_EInputActionOrigin_Switch_Reserved2, + k_EInputActionOrigin_Switch_Reserved3, + k_EInputActionOrigin_Switch_Reserved4, + k_EInputActionOrigin_Switch_Reserved5, + k_EInputActionOrigin_Switch_Reserved6, + k_EInputActionOrigin_Switch_Reserved7, + k_EInputActionOrigin_Switch_Reserved8, + k_EInputActionOrigin_Switch_Reserved9, + k_EInputActionOrigin_Switch_Reserved10, + + // Switch JoyCon Specific + k_EInputActionOrigin_Switch_RightGyro_Move, // Right JoyCon Gyro generally should correspond to Pro's single gyro + k_EInputActionOrigin_Switch_RightGyro_Pitch, // Right JoyCon Gyro generally should correspond to Pro's single gyro + k_EInputActionOrigin_Switch_RightGyro_Yaw, // Right JoyCon Gyro generally should correspond to Pro's single gyro + k_EInputActionOrigin_Switch_RightGyro_Roll, // Right JoyCon Gyro generally should correspond to Pro's single gyro + k_EInputActionOrigin_Switch_LeftGyro_Move, + k_EInputActionOrigin_Switch_LeftGyro_Pitch, + k_EInputActionOrigin_Switch_LeftGyro_Yaw, + k_EInputActionOrigin_Switch_LeftGyro_Roll, + k_EInputActionOrigin_Switch_LeftGrip_Lower, // Left JoyCon SR Button + k_EInputActionOrigin_Switch_LeftGrip_Upper, // Left JoyCon SL Button + k_EInputActionOrigin_Switch_RightGrip_Lower, // Right JoyCon SL Button + k_EInputActionOrigin_Switch_RightGrip_Upper, // Right JoyCon SR Button + k_EInputActionOrigin_Switch_Reserved11, + k_EInputActionOrigin_Switch_Reserved12, + k_EInputActionOrigin_Switch_Reserved13, + k_EInputActionOrigin_Switch_Reserved14, + k_EInputActionOrigin_Switch_Reserved15, + k_EInputActionOrigin_Switch_Reserved16, + k_EInputActionOrigin_Switch_Reserved17, + k_EInputActionOrigin_Switch_Reserved18, + k_EInputActionOrigin_Switch_Reserved19, + k_EInputActionOrigin_Switch_Reserved20, + + // Added in SDK 1.51 + k_EInputActionOrigin_PS5_X, + k_EInputActionOrigin_PS5_Circle, + k_EInputActionOrigin_PS5_Triangle, + k_EInputActionOrigin_PS5_Square, + k_EInputActionOrigin_PS5_LeftBumper, + k_EInputActionOrigin_PS5_RightBumper, + k_EInputActionOrigin_PS5_Option, //Start + k_EInputActionOrigin_PS5_Create, //Back + k_EInputActionOrigin_PS5_Mute, + k_EInputActionOrigin_PS5_LeftPad_Touch, + k_EInputActionOrigin_PS5_LeftPad_Swipe, + k_EInputActionOrigin_PS5_LeftPad_Click, + k_EInputActionOrigin_PS5_LeftPad_DPadNorth, + k_EInputActionOrigin_PS5_LeftPad_DPadSouth, + k_EInputActionOrigin_PS5_LeftPad_DPadWest, + k_EInputActionOrigin_PS5_LeftPad_DPadEast, + k_EInputActionOrigin_PS5_RightPad_Touch, + k_EInputActionOrigin_PS5_RightPad_Swipe, + k_EInputActionOrigin_PS5_RightPad_Click, + k_EInputActionOrigin_PS5_RightPad_DPadNorth, + k_EInputActionOrigin_PS5_RightPad_DPadSouth, + k_EInputActionOrigin_PS5_RightPad_DPadWest, + k_EInputActionOrigin_PS5_RightPad_DPadEast, + k_EInputActionOrigin_PS5_CenterPad_Touch, + k_EInputActionOrigin_PS5_CenterPad_Swipe, + k_EInputActionOrigin_PS5_CenterPad_Click, + k_EInputActionOrigin_PS5_CenterPad_DPadNorth, + k_EInputActionOrigin_PS5_CenterPad_DPadSouth, + k_EInputActionOrigin_PS5_CenterPad_DPadWest, + k_EInputActionOrigin_PS5_CenterPad_DPadEast, + k_EInputActionOrigin_PS5_LeftTrigger_Pull, + k_EInputActionOrigin_PS5_LeftTrigger_Click, + k_EInputActionOrigin_PS5_RightTrigger_Pull, + k_EInputActionOrigin_PS5_RightTrigger_Click, + k_EInputActionOrigin_PS5_LeftStick_Move, + k_EInputActionOrigin_PS5_LeftStick_Click, + k_EInputActionOrigin_PS5_LeftStick_DPadNorth, + k_EInputActionOrigin_PS5_LeftStick_DPadSouth, + k_EInputActionOrigin_PS5_LeftStick_DPadWest, + k_EInputActionOrigin_PS5_LeftStick_DPadEast, + k_EInputActionOrigin_PS5_RightStick_Move, + k_EInputActionOrigin_PS5_RightStick_Click, + k_EInputActionOrigin_PS5_RightStick_DPadNorth, + k_EInputActionOrigin_PS5_RightStick_DPadSouth, + k_EInputActionOrigin_PS5_RightStick_DPadWest, + k_EInputActionOrigin_PS5_RightStick_DPadEast, + k_EInputActionOrigin_PS5_DPad_North, + k_EInputActionOrigin_PS5_DPad_South, + k_EInputActionOrigin_PS5_DPad_West, + k_EInputActionOrigin_PS5_DPad_East, + k_EInputActionOrigin_PS5_Gyro_Move, + k_EInputActionOrigin_PS5_Gyro_Pitch, + k_EInputActionOrigin_PS5_Gyro_Yaw, + k_EInputActionOrigin_PS5_Gyro_Roll, + k_EInputActionOrigin_PS5_DPad_Move, + k_EInputActionOrigin_PS5_Reserved1, + k_EInputActionOrigin_PS5_Reserved2, + k_EInputActionOrigin_PS5_Reserved3, + k_EInputActionOrigin_PS5_Reserved4, + k_EInputActionOrigin_PS5_Reserved5, + k_EInputActionOrigin_PS5_Reserved6, + k_EInputActionOrigin_PS5_Reserved7, + k_EInputActionOrigin_PS5_Reserved8, + k_EInputActionOrigin_PS5_Reserved9, + k_EInputActionOrigin_PS5_Reserved10, + k_EInputActionOrigin_PS5_Reserved11, + k_EInputActionOrigin_PS5_Reserved12, + k_EInputActionOrigin_PS5_Reserved13, + k_EInputActionOrigin_PS5_Reserved14, + k_EInputActionOrigin_PS5_Reserved15, + k_EInputActionOrigin_PS5_Reserved16, + k_EInputActionOrigin_PS5_Reserved17, + k_EInputActionOrigin_PS5_Reserved18, + k_EInputActionOrigin_PS5_Reserved19, + k_EInputActionOrigin_PS5_Reserved20, + + k_EInputActionOrigin_Count, // If Steam has added support for new controllers origins will go here. + k_EInputActionOrigin_MaximumPossibleValue = 32767, // Origins are currently a maximum of 16 bits. +}; + +enum EXboxOrigin +{ + k_EXboxOrigin_A, + k_EXboxOrigin_B, + k_EXboxOrigin_X, + k_EXboxOrigin_Y, + k_EXboxOrigin_LeftBumper, + k_EXboxOrigin_RightBumper, + k_EXboxOrigin_Menu, //Start + k_EXboxOrigin_View, //Back + k_EXboxOrigin_LeftTrigger_Pull, + k_EXboxOrigin_LeftTrigger_Click, + k_EXboxOrigin_RightTrigger_Pull, + k_EXboxOrigin_RightTrigger_Click, + k_EXboxOrigin_LeftStick_Move, + k_EXboxOrigin_LeftStick_Click, + k_EXboxOrigin_LeftStick_DPadNorth, + k_EXboxOrigin_LeftStick_DPadSouth, + k_EXboxOrigin_LeftStick_DPadWest, + k_EXboxOrigin_LeftStick_DPadEast, + k_EXboxOrigin_RightStick_Move, + k_EXboxOrigin_RightStick_Click, + k_EXboxOrigin_RightStick_DPadNorth, + k_EXboxOrigin_RightStick_DPadSouth, + k_EXboxOrigin_RightStick_DPadWest, + k_EXboxOrigin_RightStick_DPadEast, + k_EXboxOrigin_DPad_North, + k_EXboxOrigin_DPad_South, + k_EXboxOrigin_DPad_West, + k_EXboxOrigin_DPad_East, + k_EXboxOrigin_Count, +}; + +enum ESteamControllerPad +{ + k_ESteamControllerPad_Left, + k_ESteamControllerPad_Right +}; + +enum ESteamInputType +{ + k_ESteamInputType_Unknown, + k_ESteamInputType_SteamController, + k_ESteamInputType_XBox360Controller, + k_ESteamInputType_XBoxOneController, + k_ESteamInputType_GenericGamepad, // DirectInput controllers + k_ESteamInputType_PS4Controller, + k_ESteamInputType_AppleMFiController, // Unused + k_ESteamInputType_AndroidController, // Unused + k_ESteamInputType_SwitchJoyConPair, // Unused + k_ESteamInputType_SwitchJoyConSingle, // Unused + k_ESteamInputType_SwitchProController, + k_ESteamInputType_MobileTouch, // Steam Link App On-screen Virtual Controller + k_ESteamInputType_PS3Controller, // Currently uses PS4 Origins + k_ESteamInputType_PS5Controller, // Added in SDK 151 + k_ESteamInputType_Count, + k_ESteamInputType_MaximumPossibleValue = 255, +}; + +// These values are passed into SetLEDColor +enum ESteamInputLEDFlag +{ + k_ESteamInputLEDFlag_SetColor, + // Restore the LED color to the user's preference setting as set in the controller personalization menu. + // This also happens automatically on exit of your game. + k_ESteamInputLEDFlag_RestoreUserDefault +}; + +// InputHandle_t is used to refer to a specific controller. +// This handle will consistently identify a controller, even if it is disconnected and re-connected +typedef uint64 InputHandle_t; + + +// These handles are used to refer to a specific in-game action or action set +// All action handles should be queried during initialization for performance reasons +typedef uint64 InputActionSetHandle_t; +typedef uint64 InputDigitalActionHandle_t; +typedef uint64 InputAnalogActionHandle_t; + +#pragma pack( push, 1 ) + +struct InputAnalogActionData_t +{ + // Type of data coming from this action, this will match what got specified in the action set + EInputSourceMode eMode; + + // The current state of this action; will be delta updates for mouse actions + float x, y; + + // Whether or not this action is currently available to be bound in the active action set + bool bActive; +}; + +struct InputDigitalActionData_t +{ + // The current state of this action; will be true if currently pressed + bool bState; + + // Whether or not this action is currently available to be bound in the active action set + bool bActive; +}; + +struct InputMotionData_t +{ + // Sensor-fused absolute rotation; will drift in heading + float rotQuatX; + float rotQuatY; + float rotQuatZ; + float rotQuatW; + + // Positional acceleration + float posAccelX; + float posAccelY; + float posAccelZ; + + // Angular velocity + float rotVelX; + float rotVelY; + float rotVelZ; +}; + +#pragma pack( pop ) + + +//----------------------------------------------------------------------------- +// Purpose: Steam Input API +//----------------------------------------------------------------------------- +class ISteamInput +{ +public: + + // Init and Shutdown must be called when starting/ending use of this interface + virtual bool Init() = 0; + virtual bool Shutdown() = 0; + + // Synchronize API state with the latest Steam Controller inputs available. This + // is performed automatically by SteamAPI_RunCallbacks, but for the absolute lowest + // possible latency, you call this directly before reading controller state. This must + // be called from somewhere before GetConnectedControllers will return any handles + virtual void RunFrame() = 0; + + // Enumerate currently connected Steam Input enabled devices - developers can opt in controller by type (ex: Xbox/Playstation/etc) via + // the Steam Input settings in the Steamworks site or users can opt-in in their controller settings in Steam. + // handlesOut should point to a STEAM_INPUT_MAX_COUNT sized array of InputHandle_t handles + // Returns the number of handles written to handlesOut + virtual int GetConnectedControllers( STEAM_OUT_ARRAY_COUNT( STEAM_INPUT_MAX_COUNT, Receives list of connected controllers ) InputHandle_t *handlesOut ) = 0; + + //----------------------------------------------------------------------------- + // ACTION SETS + //----------------------------------------------------------------------------- + + // Lookup the handle for an Action Set. Best to do this once on startup, and store the handles for all future API calls. + virtual InputActionSetHandle_t GetActionSetHandle( const char *pszActionSetName ) = 0; + + // Reconfigure the controller to use the specified action set (ie 'Menu', 'Walk' or 'Drive') + // This is cheap, and can be safely called repeatedly. It's often easier to repeatedly call it in + // your state loops, instead of trying to place it in all of your state transitions. + virtual void ActivateActionSet( InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle ) = 0; + virtual InputActionSetHandle_t GetCurrentActionSet( InputHandle_t inputHandle ) = 0; + + // ACTION SET LAYERS + virtual void ActivateActionSetLayer( InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle ) = 0; + virtual void DeactivateActionSetLayer( InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle ) = 0; + virtual void DeactivateAllActionSetLayers( InputHandle_t inputHandle ) = 0; + // Enumerate currently active layers. + // handlesOut should point to a STEAM_INPUT_MAX_ACTIVE_LAYERS sized array of ControllerActionSetHandle_t handles + // Returns the number of handles written to handlesOut + virtual int GetActiveActionSetLayers( InputHandle_t inputHandle, STEAM_OUT_ARRAY_COUNT( STEAM_INPUT_MAX_ACTIVE_LAYERS, Receives list of active layers ) InputActionSetHandle_t *handlesOut ) = 0; + + //----------------------------------------------------------------------------- + // ACTIONS + //----------------------------------------------------------------------------- + + // Lookup the handle for a digital action. Best to do this once on startup, and store the handles for all future API calls. + virtual InputDigitalActionHandle_t GetDigitalActionHandle( const char *pszActionName ) = 0; + + // Returns the current state of the supplied digital game action + virtual InputDigitalActionData_t GetDigitalActionData( InputHandle_t inputHandle, InputDigitalActionHandle_t digitalActionHandle ) = 0; + + // Get the origin(s) for a digital action within an action set. Returns the number of origins supplied in originsOut. Use this to display the appropriate on-screen prompt for the action. + // originsOut should point to a STEAM_INPUT_MAX_ORIGINS sized array of EInputActionOrigin handles. The EInputActionOrigin enum will get extended as support for new controller controllers gets added to + // the Steam client and will exceed the values from this header, please check bounds if you are using a look up table. + virtual int GetDigitalActionOrigins( InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputDigitalActionHandle_t digitalActionHandle, STEAM_OUT_ARRAY_COUNT( STEAM_INPUT_MAX_ORIGINS, Receives list of action origins ) EInputActionOrigin *originsOut ) = 0; + + // Lookup the handle for an analog action. Best to do this once on startup, and store the handles for all future API calls. + virtual InputAnalogActionHandle_t GetAnalogActionHandle( const char *pszActionName ) = 0; + + // Returns the current state of these supplied analog game action + virtual InputAnalogActionData_t GetAnalogActionData( InputHandle_t inputHandle, InputAnalogActionHandle_t analogActionHandle ) = 0; + + // Get the origin(s) for an analog action within an action set. Returns the number of origins supplied in originsOut. Use this to display the appropriate on-screen prompt for the action. + // originsOut should point to a STEAM_INPUT_MAX_ORIGINS sized array of EInputActionOrigin handles. The EInputActionOrigin enum will get extended as support for new controller controllers gets added to + // the Steam client and will exceed the values from this header, please check bounds if you are using a look up table. + virtual int GetAnalogActionOrigins( InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputAnalogActionHandle_t analogActionHandle, STEAM_OUT_ARRAY_COUNT( STEAM_INPUT_MAX_ORIGINS, Receives list of action origins ) EInputActionOrigin *originsOut ) = 0; + + // Get a local path to art for on-screen glyph for a particular origin + virtual const char *GetGlyphForActionOrigin( EInputActionOrigin eOrigin ) = 0; + + // Returns a localized string (from Steam's language setting) for the specified origin. + virtual const char *GetStringForActionOrigin( EInputActionOrigin eOrigin ) = 0; + + // Stop analog momentum for the action if it is a mouse action in trackball mode + virtual void StopAnalogActionMomentum( InputHandle_t inputHandle, InputAnalogActionHandle_t eAction ) = 0; + + // Returns raw motion data from the specified device + virtual InputMotionData_t GetMotionData( InputHandle_t inputHandle ) = 0; + + //----------------------------------------------------------------------------- + // OUTPUTS + //----------------------------------------------------------------------------- + + // Trigger a vibration event on supported controllers - Steam will translate these commands into haptic pulses for Steam Controllers + virtual void TriggerVibration( InputHandle_t inputHandle, unsigned short usLeftSpeed, unsigned short usRightSpeed ) = 0; + + // Set the controller LED color on supported controllers. nFlags is a bitmask of values from ESteamInputLEDFlag - 0 will default to setting a color. Steam will handle + // the behavior on exit of your program so you don't need to try restore the default as you are shutting down + virtual void SetLEDColor( InputHandle_t inputHandle, uint8 nColorR, uint8 nColorG, uint8 nColorB, unsigned int nFlags ) = 0; + + // Trigger a haptic pulse on a Steam Controller - if you are approximating rumble you may want to use TriggerVibration instead. + // Good uses for Haptic pulses include chimes, noises, or directional gameplay feedback (taking damage, footstep locations, etc). + virtual void TriggerHapticPulse( InputHandle_t inputHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec ) = 0; + + // Trigger a haptic pulse with a duty cycle of usDurationMicroSec / usOffMicroSec, unRepeat times. If you are approximating rumble you may want to use TriggerVibration instead. + // nFlags is currently unused and reserved for future use. + virtual void TriggerRepeatedHapticPulse( InputHandle_t inputHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec, unsigned short usOffMicroSec, unsigned short unRepeat, unsigned int nFlags ) = 0; + + //----------------------------------------------------------------------------- + // Utility functions availible without using the rest of Steam Input API + //----------------------------------------------------------------------------- + + // Invokes the Steam overlay and brings up the binding screen if the user is using Big Picture Mode + // If the user is not in Big Picture Mode it will open up the binding in a new window + virtual bool ShowBindingPanel( InputHandle_t inputHandle ) = 0; + + // Returns the input type for a particular handle - unlike EInputActionOrigin which update with Steam and may return unrecognized values + // ESteamInputType will remain static and only return valid values from your SDK version + virtual ESteamInputType GetInputTypeForHandle( InputHandle_t inputHandle ) = 0; + + // Returns the associated controller handle for the specified emulated gamepad - can be used with the above 2 functions + // to identify controllers presented to your game over Xinput. Returns 0 if the Xinput index isn't associated with Steam Input + virtual InputHandle_t GetControllerForGamepadIndex( int nIndex ) = 0; + + // Returns the associated gamepad index for the specified controller, if emulating a gamepad or -1 if not associated with an Xinput index + virtual int GetGamepadIndexForController( InputHandle_t ulinputHandle ) = 0; + + // Returns a localized string (from Steam's language setting) for the specified Xbox controller origin. + virtual const char *GetStringForXboxOrigin( EXboxOrigin eOrigin ) = 0; + + // Get a local path to art for on-screen glyph for a particular Xbox controller origin + virtual const char *GetGlyphForXboxOrigin( EXboxOrigin eOrigin ) = 0; + + // Get the equivalent ActionOrigin for a given Xbox controller origin this can be chained with GetGlyphForActionOrigin to provide future proof glyphs for + // non-Steam Input API action games. Note - this only translates the buttons directly and doesn't take into account any remapping a user has made in their configuration + virtual EInputActionOrigin GetActionOriginFromXboxOrigin( InputHandle_t inputHandle, EXboxOrigin eOrigin ) = 0; + + // Convert an origin to another controller type - for inputs not present on the other controller type this will return k_EInputActionOrigin_None + // When a new input type is added you will be able to pass in k_ESteamInputType_Unknown and the closest origin that your version of the SDK recognized will be returned + // ex: if a Playstation 5 controller was released this function would return Playstation 4 origins. + virtual EInputActionOrigin TranslateActionOrigin( ESteamInputType eDestinationInputType, EInputActionOrigin eSourceOrigin ) = 0; + + // Get the binding revision for a given device. Returns false if the handle was not valid or if a mapping is not yet loaded for the device + virtual bool GetDeviceBindingRevision( InputHandle_t inputHandle, int *pMajor, int *pMinor ) = 0; + + // Get the Steam Remote Play session ID associated with a device, or 0 if there is no session associated with it + // See isteamremoteplay.h for more information on Steam Remote Play sessions + virtual uint32 GetRemotePlaySessionID( InputHandle_t inputHandle ) = 0; +}; + +#define STEAMINPUT_INTERFACE_VERSION "SteamInput002" + +// Global interface accessor +inline ISteamInput *SteamInput(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamInput *, SteamInput, STEAMINPUT_INTERFACE_VERSION ); + +#endif // ISTEAMINPUT_H \ No newline at end of file diff --git a/lib/steam/public/steam/isteaminventory.h b/lib/steam/public/steam/isteaminventory.h new file mode 100644 index 0000000..e5e987c --- /dev/null +++ b/lib/steam/public/steam/isteaminventory.h @@ -0,0 +1,448 @@ +//====== Copyright © 1996-2014 Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to Steam Inventory +// +//============================================================================= + +#ifndef ISTEAMINVENTORY_H +#define ISTEAMINVENTORY_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + + +// Every individual instance of an item has a globally-unique ItemInstanceID. +// This ID is unique to the combination of (player, specific item instance) +// and will not be transferred to another player or re-used for another item. +typedef uint64 SteamItemInstanceID_t; + +static const SteamItemInstanceID_t k_SteamItemInstanceIDInvalid = (SteamItemInstanceID_t)~0; + +// Types of items in your game are identified by a 32-bit "item definition number". +// Valid definition numbers are between 1 and 999999999; numbers less than or equal to +// zero are invalid, and numbers greater than or equal to one billion (1x10^9) are +// reserved for internal Steam use. +typedef int32 SteamItemDef_t; + + +enum ESteamItemFlags +{ + // Item status flags - these flags are permanently attached to specific item instances + k_ESteamItemNoTrade = 1 << 0, // This item is account-locked and cannot be traded or given away. + + // Action confirmation flags - these flags are set one time only, as part of a result set + k_ESteamItemRemoved = 1 << 8, // The item has been destroyed, traded away, expired, or otherwise invalidated + k_ESteamItemConsumed = 1 << 9, // The item quantity has been decreased by 1 via ConsumeItem API. + + // All other flag bits are currently reserved for internal Steam use at this time. + // Do not assume anything about the state of other flags which are not defined here. +}; + +struct SteamItemDetails_t +{ + SteamItemInstanceID_t m_itemId; + SteamItemDef_t m_iDefinition; + uint16 m_unQuantity; + uint16 m_unFlags; // see ESteamItemFlags +}; + +typedef int32 SteamInventoryResult_t; + +static const SteamInventoryResult_t k_SteamInventoryResultInvalid = -1; + +typedef uint64 SteamInventoryUpdateHandle_t; +const SteamInventoryUpdateHandle_t k_SteamInventoryUpdateHandleInvalid = 0xffffffffffffffffull; + +//----------------------------------------------------------------------------- +// Purpose: Steam Inventory query and manipulation API +//----------------------------------------------------------------------------- +class ISteamInventory +{ +public: + + // INVENTORY ASYNC RESULT MANAGEMENT + // + // Asynchronous inventory queries always output a result handle which can be used with + // GetResultStatus, GetResultItems, etc. A SteamInventoryResultReady_t callback will + // be triggered when the asynchronous result becomes ready (or fails). + // + + // Find out the status of an asynchronous inventory result handle. Possible values: + // k_EResultPending - still in progress + // k_EResultOK - done, result ready + // k_EResultExpired - done, result ready, maybe out of date (see DeserializeResult) + // k_EResultInvalidParam - ERROR: invalid API call parameters + // k_EResultServiceUnavailable - ERROR: service temporarily down, you may retry later + // k_EResultLimitExceeded - ERROR: operation would exceed per-user inventory limits + // k_EResultFail - ERROR: unknown / generic error + STEAM_METHOD_DESC(Find out the status of an asynchronous inventory result handle.) + virtual EResult GetResultStatus( SteamInventoryResult_t resultHandle ) = 0; + + // Copies the contents of a result set into a flat array. The specific + // contents of the result set depend on which query which was used. + STEAM_METHOD_DESC(Copies the contents of a result set into a flat array. The specific contents of the result set depend on which query which was used.) + virtual bool GetResultItems( SteamInventoryResult_t resultHandle, + STEAM_OUT_ARRAY_COUNT( punOutItemsArraySize,Output array) SteamItemDetails_t *pOutItemsArray, + uint32 *punOutItemsArraySize ) = 0; + + // In combination with GetResultItems, you can use GetResultItemProperty to retrieve + // dynamic string properties for a given item returned in the result set. + // + // Property names are always composed of ASCII letters, numbers, and/or underscores. + // + // Pass a NULL pointer for pchPropertyName to get a comma - separated list of available + // property names. + // + // If pchValueBuffer is NULL, *punValueBufferSize will contain the + // suggested buffer size. Otherwise it will be the number of bytes actually copied + // to pchValueBuffer. If the results do not fit in the given buffer, partial + // results may be copied. + virtual bool GetResultItemProperty( SteamInventoryResult_t resultHandle, + uint32 unItemIndex, + const char *pchPropertyName, + STEAM_OUT_STRING_COUNT( punValueBufferSizeOut ) char *pchValueBuffer, uint32 *punValueBufferSizeOut ) = 0; + + // Returns the server time at which the result was generated. Compare against + // the value of IClientUtils::GetServerRealTime() to determine age. + STEAM_METHOD_DESC(Returns the server time at which the result was generated. Compare against the value of IClientUtils::GetServerRealTime() to determine age.) + virtual uint32 GetResultTimestamp( SteamInventoryResult_t resultHandle ) = 0; + + // Returns true if the result belongs to the target steam ID, false if the + // result does not. This is important when using DeserializeResult, to verify + // that a remote player is not pretending to have a different user's inventory. + STEAM_METHOD_DESC(Returns true if the result belongs to the target steam ID or false if the result does not. This is important when using DeserializeResult to verify that a remote player is not pretending to have a different users inventory.) + virtual bool CheckResultSteamID( SteamInventoryResult_t resultHandle, CSteamID steamIDExpected ) = 0; + + // Destroys a result handle and frees all associated memory. + STEAM_METHOD_DESC(Destroys a result handle and frees all associated memory.) + virtual void DestroyResult( SteamInventoryResult_t resultHandle ) = 0; + + + // INVENTORY ASYNC QUERY + // + + // Captures the entire state of the current user's Steam inventory. + // You must call DestroyResult on this handle when you are done with it. + // Returns false and sets *pResultHandle to zero if inventory is unavailable. + // Note: calls to this function are subject to rate limits and may return + // cached results if called too frequently. It is suggested that you call + // this function only when you are about to display the user's full inventory, + // or if you expect that the inventory may have changed. + STEAM_METHOD_DESC(Captures the entire state of the current users Steam inventory.) + virtual bool GetAllItems( SteamInventoryResult_t *pResultHandle ) = 0; + + + // Captures the state of a subset of the current user's Steam inventory, + // identified by an array of item instance IDs. The results from this call + // can be serialized and passed to other players to "prove" that the current + // user owns specific items, without exposing the user's entire inventory. + // For example, you could call GetItemsByID with the IDs of the user's + // currently equipped cosmetic items and serialize this to a buffer, and + // then transmit this buffer to other players upon joining a game. + STEAM_METHOD_DESC(Captures the state of a subset of the current users Steam inventory identified by an array of item instance IDs.) + virtual bool GetItemsByID( SteamInventoryResult_t *pResultHandle, STEAM_ARRAY_COUNT( unCountInstanceIDs ) const SteamItemInstanceID_t *pInstanceIDs, uint32 unCountInstanceIDs ) = 0; + + + // RESULT SERIALIZATION AND AUTHENTICATION + // + // Serialized result sets contain a short signature which can't be forged + // or replayed across different game sessions. A result set can be serialized + // on the local client, transmitted to other players via your game networking, + // and deserialized by the remote players. This is a secure way of preventing + // hackers from lying about posessing rare/high-value items. + + // Serializes a result set with signature bytes to an output buffer. Pass + // NULL as an output buffer to get the required size via punOutBufferSize. + // The size of a serialized result depends on the number items which are being + // serialized. When securely transmitting items to other players, it is + // recommended to use "GetItemsByID" first to create a minimal result set. + // Results have a built-in timestamp which will be considered "expired" after + // an hour has elapsed. See DeserializeResult for expiration handling. + virtual bool SerializeResult( SteamInventoryResult_t resultHandle, STEAM_OUT_BUFFER_COUNT(punOutBufferSize) void *pOutBuffer, uint32 *punOutBufferSize ) = 0; + + // Deserializes a result set and verifies the signature bytes. Returns false + // if bRequireFullOnlineVerify is set but Steam is running in Offline mode. + // Otherwise returns true and then delivers error codes via GetResultStatus. + // + // The bRESERVED_MUST_BE_FALSE flag is reserved for future use and should not + // be set to true by your game at this time. + // + // DeserializeResult has a potential soft-failure mode where the handle status + // is set to k_EResultExpired. GetResultItems() still succeeds in this mode. + // The "expired" result could indicate that the data may be out of date - not + // just due to timed expiration (one hour), but also because one of the items + // in the result set may have been traded or consumed since the result set was + // generated. You could compare the timestamp from GetResultTimestamp() to + // ISteamUtils::GetServerRealTime() to determine how old the data is. You could + // simply ignore the "expired" result code and continue as normal, or you + // could challenge the player with expired data to send an updated result set. + virtual bool DeserializeResult( SteamInventoryResult_t *pOutResultHandle, STEAM_BUFFER_COUNT(punOutBufferSize) const void *pBuffer, uint32 unBufferSize, bool bRESERVED_MUST_BE_FALSE = false ) = 0; + + + // INVENTORY ASYNC MODIFICATION + // + + // GenerateItems() creates one or more items and then generates a SteamInventoryCallback_t + // notification with a matching nCallbackContext parameter. This API is only intended + // for prototyping - it is only usable by Steam accounts that belong to the publisher group + // for your game. + // If punArrayQuantity is not NULL, it should be the same length as pArrayItems and should + // describe the quantity of each item to generate. + virtual bool GenerateItems( SteamInventoryResult_t *pResultHandle, STEAM_ARRAY_COUNT(unArrayLength) const SteamItemDef_t *pArrayItemDefs, STEAM_ARRAY_COUNT(unArrayLength) const uint32 *punArrayQuantity, uint32 unArrayLength ) = 0; + + // GrantPromoItems() checks the list of promotional items for which the user may be eligible + // and grants the items (one time only). On success, the result set will include items which + // were granted, if any. If no items were granted because the user isn't eligible for any + // promotions, this is still considered a success. + STEAM_METHOD_DESC(GrantPromoItems() checks the list of promotional items for which the user may be eligible and grants the items (one time only).) + virtual bool GrantPromoItems( SteamInventoryResult_t *pResultHandle ) = 0; + + // AddPromoItem() / AddPromoItems() are restricted versions of GrantPromoItems(). Instead of + // scanning for all eligible promotional items, the check is restricted to a single item + // definition or set of item definitions. This can be useful if your game has custom UI for + // showing a specific promo item to the user. + virtual bool AddPromoItem( SteamInventoryResult_t *pResultHandle, SteamItemDef_t itemDef ) = 0; + virtual bool AddPromoItems( SteamInventoryResult_t *pResultHandle, STEAM_ARRAY_COUNT(unArrayLength) const SteamItemDef_t *pArrayItemDefs, uint32 unArrayLength ) = 0; + + // ConsumeItem() removes items from the inventory, permanently. They cannot be recovered. + // Not for the faint of heart - if your game implements item removal at all, a high-friction + // UI confirmation process is highly recommended. + STEAM_METHOD_DESC(ConsumeItem() removes items from the inventory permanently.) + virtual bool ConsumeItem( SteamInventoryResult_t *pResultHandle, SteamItemInstanceID_t itemConsume, uint32 unQuantity ) = 0; + + // ExchangeItems() is an atomic combination of item generation and consumption. + // It can be used to implement crafting recipes or transmutations, or items which unpack + // themselves into other items (e.g., a chest). + // Exchange recipes are defined in the ItemDef, and explicitly list the required item + // types and resulting generated type. + // Exchange recipes are evaluated atomically by the Inventory Service; if the supplied + // components do not match the recipe, or do not contain sufficient quantity, the + // exchange will fail. + virtual bool ExchangeItems( SteamInventoryResult_t *pResultHandle, + STEAM_ARRAY_COUNT(unArrayGenerateLength) const SteamItemDef_t *pArrayGenerate, STEAM_ARRAY_COUNT(unArrayGenerateLength) const uint32 *punArrayGenerateQuantity, uint32 unArrayGenerateLength, + STEAM_ARRAY_COUNT(unArrayDestroyLength) const SteamItemInstanceID_t *pArrayDestroy, STEAM_ARRAY_COUNT(unArrayDestroyLength) const uint32 *punArrayDestroyQuantity, uint32 unArrayDestroyLength ) = 0; + + + // TransferItemQuantity() is intended for use with items which are "stackable" (can have + // quantity greater than one). It can be used to split a stack into two, or to transfer + // quantity from one stack into another stack of identical items. To split one stack into + // two, pass k_SteamItemInstanceIDInvalid for itemIdDest and a new item will be generated. + virtual bool TransferItemQuantity( SteamInventoryResult_t *pResultHandle, SteamItemInstanceID_t itemIdSource, uint32 unQuantity, SteamItemInstanceID_t itemIdDest ) = 0; + + + // TIMED DROPS AND PLAYTIME CREDIT + // + + // Deprecated. Calling this method is not required for proper playtime accounting. + STEAM_METHOD_DESC( Deprecated method. Playtime accounting is performed on the Steam servers. ) + virtual void SendItemDropHeartbeat() = 0; + + // Playtime credit must be consumed and turned into item drops by your game. Only item + // definitions which are marked as "playtime item generators" can be spawned. The call + // will return an empty result set if there is not enough playtime credit for a drop. + // Your game should call TriggerItemDrop at an appropriate time for the user to receive + // new items, such as between rounds or while the player is dead. Note that players who + // hack their clients could modify the value of "dropListDefinition", so do not use it + // to directly control rarity. + // See your Steamworks configuration to set playtime drop rates for individual itemdefs. + // The client library will suppress too-frequent calls to this method. + STEAM_METHOD_DESC(Playtime credit must be consumed and turned into item drops by your game.) + virtual bool TriggerItemDrop( SteamInventoryResult_t *pResultHandle, SteamItemDef_t dropListDefinition ) = 0; + + + // Deprecated. This method is not supported. + virtual bool TradeItems( SteamInventoryResult_t *pResultHandle, CSteamID steamIDTradePartner, + STEAM_ARRAY_COUNT(nArrayGiveLength) const SteamItemInstanceID_t *pArrayGive, STEAM_ARRAY_COUNT(nArrayGiveLength) const uint32 *pArrayGiveQuantity, uint32 nArrayGiveLength, + STEAM_ARRAY_COUNT(nArrayGetLength) const SteamItemInstanceID_t *pArrayGet, STEAM_ARRAY_COUNT(nArrayGetLength) const uint32 *pArrayGetQuantity, uint32 nArrayGetLength ) = 0; + + + // ITEM DEFINITIONS + // + // Item definitions are a mapping of "definition IDs" (integers between 1 and 1000000) + // to a set of string properties. Some of these properties are required to display items + // on the Steam community web site. Other properties can be defined by applications. + // Use of these functions is optional; there is no reason to call LoadItemDefinitions + // if your game hardcodes the numeric definition IDs (eg, purple face mask = 20, blue + // weapon mod = 55) and does not allow for adding new item types without a client patch. + // + + // LoadItemDefinitions triggers the automatic load and refresh of item definitions. + // Every time new item definitions are available (eg, from the dynamic addition of new + // item types while players are still in-game), a SteamInventoryDefinitionUpdate_t + // callback will be fired. + STEAM_METHOD_DESC(LoadItemDefinitions triggers the automatic load and refresh of item definitions.) + virtual bool LoadItemDefinitions() = 0; + + // GetItemDefinitionIDs returns the set of all defined item definition IDs (which are + // defined via Steamworks configuration, and not necessarily contiguous integers). + // If pItemDefIDs is null, the call will return true and *punItemDefIDsArraySize will + // contain the total size necessary for a subsequent call. Otherwise, the call will + // return false if and only if there is not enough space in the output array. + virtual bool GetItemDefinitionIDs( + STEAM_OUT_ARRAY_COUNT(punItemDefIDsArraySize,List of item definition IDs) SteamItemDef_t *pItemDefIDs, + STEAM_DESC(Size of array is passed in and actual size used is returned in this param) uint32 *punItemDefIDsArraySize ) = 0; + + // GetItemDefinitionProperty returns a string property from a given item definition. + // Note that some properties (for example, "name") may be localized and will depend + // on the current Steam language settings (see ISteamApps::GetCurrentGameLanguage). + // Property names are always composed of ASCII letters, numbers, and/or underscores. + // Pass a NULL pointer for pchPropertyName to get a comma - separated list of available + // property names. If pchValueBuffer is NULL, *punValueBufferSize will contain the + // suggested buffer size. Otherwise it will be the number of bytes actually copied + // to pchValueBuffer. If the results do not fit in the given buffer, partial + // results may be copied. + virtual bool GetItemDefinitionProperty( SteamItemDef_t iDefinition, const char *pchPropertyName, + STEAM_OUT_STRING_COUNT(punValueBufferSizeOut) char *pchValueBuffer, uint32 *punValueBufferSizeOut ) = 0; + + // Request the list of "eligible" promo items that can be manually granted to the given + // user. These are promo items of type "manual" that won't be granted automatically. + // An example usage of this is an item that becomes available every week. + STEAM_CALL_RESULT( SteamInventoryEligiblePromoItemDefIDs_t ) + virtual SteamAPICall_t RequestEligiblePromoItemDefinitionsIDs( CSteamID steamID ) = 0; + + // After handling a SteamInventoryEligiblePromoItemDefIDs_t call result, use this + // function to pull out the list of item definition ids that the user can be + // manually granted via the AddPromoItems() call. + virtual bool GetEligiblePromoItemDefinitionIDs( + CSteamID steamID, + STEAM_OUT_ARRAY_COUNT(punItemDefIDsArraySize,List of item definition IDs) SteamItemDef_t *pItemDefIDs, + STEAM_DESC(Size of array is passed in and actual size used is returned in this param) uint32 *punItemDefIDsArraySize ) = 0; + + // Starts the purchase process for the given item definitions. The callback SteamInventoryStartPurchaseResult_t + // will be posted if Steam was able to initialize the transaction. + // + // Once the purchase has been authorized and completed by the user, the callback SteamInventoryResultReady_t + // will be posted. + STEAM_CALL_RESULT( SteamInventoryStartPurchaseResult_t ) + virtual SteamAPICall_t StartPurchase( STEAM_ARRAY_COUNT(unArrayLength) const SteamItemDef_t *pArrayItemDefs, STEAM_ARRAY_COUNT(unArrayLength) const uint32 *punArrayQuantity, uint32 unArrayLength ) = 0; + + // Request current prices for all applicable item definitions + STEAM_CALL_RESULT( SteamInventoryRequestPricesResult_t ) + virtual SteamAPICall_t RequestPrices() = 0; + + // Returns the number of items with prices. Need to call RequestPrices() first. + virtual uint32 GetNumItemsWithPrices() = 0; + + // Returns item definition ids and their prices in the user's local currency. + // Need to call RequestPrices() first. + virtual bool GetItemsWithPrices( STEAM_ARRAY_COUNT(unArrayLength) STEAM_OUT_ARRAY_COUNT(pArrayItemDefs, Items with prices) SteamItemDef_t *pArrayItemDefs, + STEAM_ARRAY_COUNT(unArrayLength) STEAM_OUT_ARRAY_COUNT(pPrices, List of prices for the given item defs) uint64 *pCurrentPrices, + STEAM_ARRAY_COUNT(unArrayLength) STEAM_OUT_ARRAY_COUNT(pPrices, List of prices for the given item defs) uint64 *pBasePrices, + uint32 unArrayLength ) = 0; + + // Retrieves the price for the item definition id + // Returns false if there is no price stored for the item definition. + virtual bool GetItemPrice( SteamItemDef_t iDefinition, uint64 *pCurrentPrice, uint64 *pBasePrice ) = 0; + + // Create a request to update properties on items + virtual SteamInventoryUpdateHandle_t StartUpdateProperties() = 0; + // Remove the property on the item + virtual bool RemoveProperty( SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, const char *pchPropertyName ) = 0; + // Accessor methods to set properties on items + + STEAM_FLAT_NAME( SetPropertyString ) + virtual bool SetProperty( SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, const char *pchPropertyName, const char *pchPropertyValue ) = 0; + + STEAM_FLAT_NAME( SetPropertyBool ) + virtual bool SetProperty( SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, const char *pchPropertyName, bool bValue ) = 0; + + STEAM_FLAT_NAME( SetPropertyInt64 ) + virtual bool SetProperty( SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, const char *pchPropertyName, int64 nValue ) = 0; + + STEAM_FLAT_NAME( SetPropertyFloat ) + virtual bool SetProperty( SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, const char *pchPropertyName, float flValue ) = 0; + + // Submit the update request by handle + virtual bool SubmitUpdateProperties( SteamInventoryUpdateHandle_t handle, SteamInventoryResult_t * pResultHandle ) = 0; + + STEAM_METHOD_DESC(Look up the given token and return a pseudo-Inventory item.) + virtual bool InspectItem( SteamInventoryResult_t *pResultHandle, const char *pchItemToken ) = 0; +}; + +#define STEAMINVENTORY_INTERFACE_VERSION "STEAMINVENTORY_INTERFACE_V003" + +// Global interface accessor +inline ISteamInventory *SteamInventory(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamInventory *, SteamInventory, STEAMINVENTORY_INTERFACE_VERSION ); + +// Global accessor for the gameserver client +inline ISteamInventory *SteamGameServerInventory(); +STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( ISteamInventory *, SteamGameServerInventory, STEAMINVENTORY_INTERFACE_VERSION ); + +// SteamInventoryResultReady_t callbacks are fired whenever asynchronous +// results transition from "Pending" to "OK" or an error state. There will +// always be exactly one callback per handle. +struct SteamInventoryResultReady_t +{ + enum { k_iCallback = k_iClientInventoryCallbacks + 0 }; + SteamInventoryResult_t m_handle; + EResult m_result; +}; + + +// SteamInventoryFullUpdate_t callbacks are triggered when GetAllItems +// successfully returns a result which is newer / fresher than the last +// known result. (It will not trigger if the inventory hasn't changed, +// or if results from two overlapping calls are reversed in flight and +// the earlier result is already known to be stale/out-of-date.) +// The normal ResultReady callback will still be triggered immediately +// afterwards; this is an additional notification for your convenience. +struct SteamInventoryFullUpdate_t +{ + enum { k_iCallback = k_iClientInventoryCallbacks + 1 }; + SteamInventoryResult_t m_handle; +}; + + +// A SteamInventoryDefinitionUpdate_t callback is triggered whenever +// item definitions have been updated, which could be in response to +// LoadItemDefinitions() or any other async request which required +// a definition update in order to process results from the server. +struct SteamInventoryDefinitionUpdate_t +{ + enum { k_iCallback = k_iClientInventoryCallbacks + 2 }; +}; + +// Returned +struct SteamInventoryEligiblePromoItemDefIDs_t +{ + enum { k_iCallback = k_iClientInventoryCallbacks + 3 }; + EResult m_result; + CSteamID m_steamID; + int m_numEligiblePromoItemDefs; + bool m_bCachedData; // indicates that the data was retrieved from the cache and not the server +}; + +// Triggered from StartPurchase call +struct SteamInventoryStartPurchaseResult_t +{ + enum { k_iCallback = k_iClientInventoryCallbacks + 4 }; + EResult m_result; + uint64 m_ulOrderID; + uint64 m_ulTransID; +}; + + +// Triggered from RequestPrices +struct SteamInventoryRequestPricesResult_t +{ + enum { k_iCallback = k_iClientInventoryCallbacks + 5 }; + EResult m_result; + char m_rgchCurrency[4]; +}; + +#pragma pack( pop ) + + +#endif // ISTEAMCONTROLLER_H diff --git a/lib/steam/public/steam/isteammasterserverupdater.h b/lib/steam/public/steam/isteammasterserverupdater.h new file mode 100644 index 0000000..1959001 --- /dev/null +++ b/lib/steam/public/steam/isteammasterserverupdater.h @@ -0,0 +1 @@ +#error "This file isn't used any more" diff --git a/lib/steam/public/steam/isteammatchmaking.h b/lib/steam/public/steam/isteammatchmaking.h new file mode 100644 index 0000000..0ec299e --- /dev/null +++ b/lib/steam/public/steam/isteammatchmaking.h @@ -0,0 +1,1087 @@ +//====== Copyright © 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to steam managing game server/client match making +// +//============================================================================= + +#ifndef ISTEAMMATCHMAKING +#define ISTEAMMATCHMAKING +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" +#include "matchmakingtypes.h" +#include "isteamfriends.h" + +// lobby type description +enum ELobbyType +{ + k_ELobbyTypePrivate = 0, // only way to join the lobby is to invite to someone else + k_ELobbyTypeFriendsOnly = 1, // shows for friends or invitees, but not in lobby list + k_ELobbyTypePublic = 2, // visible for friends and in lobby list + k_ELobbyTypeInvisible = 3, // returned by search, but not visible to other friends + // useful if you want a user in two lobbies, for example matching groups together + // a user can be in only one regular lobby, and up to two invisible lobbies + k_ELobbyTypePrivateUnique = 4, // private, unique and does not delete when empty - only one of these may exist per unique keypair set + // can only create from webapi +}; + +// lobby search filter tools +enum ELobbyComparison +{ + k_ELobbyComparisonEqualToOrLessThan = -2, + k_ELobbyComparisonLessThan = -1, + k_ELobbyComparisonEqual = 0, + k_ELobbyComparisonGreaterThan = 1, + k_ELobbyComparisonEqualToOrGreaterThan = 2, + k_ELobbyComparisonNotEqual = 3, +}; + +// lobby search distance. Lobby results are sorted from closest to farthest. +enum ELobbyDistanceFilter +{ + k_ELobbyDistanceFilterClose, // only lobbies in the same immediate region will be returned + k_ELobbyDistanceFilterDefault, // only lobbies in the same region or near by regions + k_ELobbyDistanceFilterFar, // for games that don't have many latency requirements, will return lobbies about half-way around the globe + k_ELobbyDistanceFilterWorldwide, // no filtering, will match lobbies as far as India to NY (not recommended, expect multiple seconds of latency between the clients) +}; + +// maximum number of characters a lobby metadata key can be +#define k_nMaxLobbyKeyLength 255 + +//----------------------------------------------------------------------------- +// Purpose: Functions for match making services for clients to get to favorites +// and to operate on game lobbies. +//----------------------------------------------------------------------------- +class ISteamMatchmaking +{ +public: + // game server favorites storage + // saves basic details about a multiplayer game server locally + + // returns the number of favorites servers the user has stored + virtual int GetFavoriteGameCount() = 0; + + // returns the details of the game server + // iGame is of range [0,GetFavoriteGameCount()) + // *pnIP, *pnConnPort are filled in the with IP:port of the game server + // *punFlags specify whether the game server was stored as an explicit favorite or in the history of connections + // *pRTime32LastPlayedOnServer is filled in the with the Unix time the favorite was added + virtual bool GetFavoriteGame( int iGame, AppId_t *pnAppID, uint32 *pnIP, uint16 *pnConnPort, uint16 *pnQueryPort, uint32 *punFlags, uint32 *pRTime32LastPlayedOnServer ) = 0; + + // adds the game server to the local list; updates the time played of the server if it already exists in the list + virtual int AddFavoriteGame( AppId_t nAppID, uint32 nIP, uint16 nConnPort, uint16 nQueryPort, uint32 unFlags, uint32 rTime32LastPlayedOnServer ) = 0; + + // removes the game server from the local storage; returns true if one was removed + virtual bool RemoveFavoriteGame( AppId_t nAppID, uint32 nIP, uint16 nConnPort, uint16 nQueryPort, uint32 unFlags ) = 0; + + /////// + // Game lobby functions + + // Get a list of relevant lobbies + // this is an asynchronous request + // results will be returned by LobbyMatchList_t callback & call result, with the number of lobbies found + // this will never return lobbies that are full + // to add more filter, the filter calls below need to be call before each and every RequestLobbyList() call + // use the CCallResult<> object in steam_api.h to match the SteamAPICall_t call result to a function in an object, e.g. + /* + class CMyLobbyListManager + { + CCallResult m_CallResultLobbyMatchList; + void FindLobbies() + { + // SteamMatchmaking()->AddRequestLobbyListFilter*() functions would be called here, before RequestLobbyList() + SteamAPICall_t hSteamAPICall = SteamMatchmaking()->RequestLobbyList(); + m_CallResultLobbyMatchList.Set( hSteamAPICall, this, &CMyLobbyListManager::OnLobbyMatchList ); + } + + void OnLobbyMatchList( LobbyMatchList_t *pLobbyMatchList, bool bIOFailure ) + { + // lobby list has be retrieved from Steam back-end, use results + } + } + */ + // + STEAM_CALL_RESULT( LobbyMatchList_t ) + virtual SteamAPICall_t RequestLobbyList() = 0; + // filters for lobbies + // this needs to be called before RequestLobbyList() to take effect + // these are cleared on each call to RequestLobbyList() + virtual void AddRequestLobbyListStringFilter( const char *pchKeyToMatch, const char *pchValueToMatch, ELobbyComparison eComparisonType ) = 0; + // numerical comparison + virtual void AddRequestLobbyListNumericalFilter( const char *pchKeyToMatch, int nValueToMatch, ELobbyComparison eComparisonType ) = 0; + // returns results closest to the specified value. Multiple near filters can be added, with early filters taking precedence + virtual void AddRequestLobbyListNearValueFilter( const char *pchKeyToMatch, int nValueToBeCloseTo ) = 0; + // returns only lobbies with the specified number of slots available + virtual void AddRequestLobbyListFilterSlotsAvailable( int nSlotsAvailable ) = 0; + // sets the distance for which we should search for lobbies (based on users IP address to location map on the Steam backed) + virtual void AddRequestLobbyListDistanceFilter( ELobbyDistanceFilter eLobbyDistanceFilter ) = 0; + // sets how many results to return, the lower the count the faster it is to download the lobby results & details to the client + virtual void AddRequestLobbyListResultCountFilter( int cMaxResults ) = 0; + + virtual void AddRequestLobbyListCompatibleMembersFilter( CSteamID steamIDLobby ) = 0; + + // returns the CSteamID of a lobby, as retrieved by a RequestLobbyList call + // should only be called after a LobbyMatchList_t callback is received + // iLobby is of the range [0, LobbyMatchList_t::m_nLobbiesMatching) + // the returned CSteamID::IsValid() will be false if iLobby is out of range + virtual CSteamID GetLobbyByIndex( int iLobby ) = 0; + + // Create a lobby on the Steam servers. + // If private, then the lobby will not be returned by any RequestLobbyList() call; the CSteamID + // of the lobby will need to be communicated via game channels or via InviteUserToLobby() + // this is an asynchronous request + // results will be returned by LobbyCreated_t callback and call result; lobby is joined & ready to use at this point + // a LobbyEnter_t callback will also be received (since the local user is joining their own lobby) + STEAM_CALL_RESULT( LobbyCreated_t ) + virtual SteamAPICall_t CreateLobby( ELobbyType eLobbyType, int cMaxMembers ) = 0; + + // Joins an existing lobby + // this is an asynchronous request + // results will be returned by LobbyEnter_t callback & call result, check m_EChatRoomEnterResponse to see if was successful + // lobby metadata is available to use immediately on this call completing + STEAM_CALL_RESULT( LobbyEnter_t ) + virtual SteamAPICall_t JoinLobby( CSteamID steamIDLobby ) = 0; + + // Leave a lobby; this will take effect immediately on the client side + // other users in the lobby will be notified by a LobbyChatUpdate_t callback + virtual void LeaveLobby( CSteamID steamIDLobby ) = 0; + + // Invite another user to the lobby + // the target user will receive a LobbyInvite_t callback + // will return true if the invite is successfully sent, whether or not the target responds + // returns false if the local user is not connected to the Steam servers + // if the other user clicks the join link, a GameLobbyJoinRequested_t will be posted if the user is in-game, + // or if the game isn't running yet the game will be launched with the parameter +connect_lobby <64-bit lobby id> + virtual bool InviteUserToLobby( CSteamID steamIDLobby, CSteamID steamIDInvitee ) = 0; + + // Lobby iteration, for viewing details of users in a lobby + // only accessible if the lobby user is a member of the specified lobby + // persona information for other lobby members (name, avatar, etc.) will be asynchronously received + // and accessible via ISteamFriends interface + + // returns the number of users in the specified lobby + virtual int GetNumLobbyMembers( CSteamID steamIDLobby ) = 0; + // returns the CSteamID of a user in the lobby + // iMember is of range [0,GetNumLobbyMembers()) + // note that the current user must be in a lobby to retrieve CSteamIDs of other users in that lobby + virtual CSteamID GetLobbyMemberByIndex( CSteamID steamIDLobby, int iMember ) = 0; + + // Get data associated with this lobby + // takes a simple key, and returns the string associated with it + // "" will be returned if no value is set, or if steamIDLobby is invalid + virtual const char *GetLobbyData( CSteamID steamIDLobby, const char *pchKey ) = 0; + // Sets a key/value pair in the lobby metadata + // each user in the lobby will be broadcast this new value, and any new users joining will receive any existing data + // this can be used to set lobby names, map, etc. + // to reset a key, just set it to "" + // other users in the lobby will receive notification of the lobby data change via a LobbyDataUpdate_t callback + virtual bool SetLobbyData( CSteamID steamIDLobby, const char *pchKey, const char *pchValue ) = 0; + + // returns the number of metadata keys set on the specified lobby + virtual int GetLobbyDataCount( CSteamID steamIDLobby ) = 0; + + // returns a lobby metadata key/values pair by index, of range [0, GetLobbyDataCount()) + virtual bool GetLobbyDataByIndex( CSteamID steamIDLobby, int iLobbyData, char *pchKey, int cchKeyBufferSize, char *pchValue, int cchValueBufferSize ) = 0; + + // removes a metadata key from the lobby + virtual bool DeleteLobbyData( CSteamID steamIDLobby, const char *pchKey ) = 0; + + // Gets per-user metadata for someone in this lobby + virtual const char *GetLobbyMemberData( CSteamID steamIDLobby, CSteamID steamIDUser, const char *pchKey ) = 0; + // Sets per-user metadata (for the local user implicitly) + virtual void SetLobbyMemberData( CSteamID steamIDLobby, const char *pchKey, const char *pchValue ) = 0; + + // Broadcasts a chat message to the all the users in the lobby + // users in the lobby (including the local user) will receive a LobbyChatMsg_t callback + // returns true if the message is successfully sent + // pvMsgBody can be binary or text data, up to 4k + // if pvMsgBody is text, cubMsgBody should be strlen( text ) + 1, to include the null terminator + virtual bool SendLobbyChatMsg( CSteamID steamIDLobby, const void *pvMsgBody, int cubMsgBody ) = 0; + // Get a chat message as specified in a LobbyChatMsg_t callback + // iChatID is the LobbyChatMsg_t::m_iChatID value in the callback + // *pSteamIDUser is filled in with the CSteamID of the member + // *pvData is filled in with the message itself + // return value is the number of bytes written into the buffer + virtual int GetLobbyChatEntry( CSteamID steamIDLobby, int iChatID, STEAM_OUT_STRUCT() CSteamID *pSteamIDUser, void *pvData, int cubData, EChatEntryType *peChatEntryType ) = 0; + + // Refreshes metadata for a lobby you're not necessarily in right now + // you never do this for lobbies you're a member of, only if your + // this will send down all the metadata associated with a lobby + // this is an asynchronous call + // returns false if the local user is not connected to the Steam servers + // results will be returned by a LobbyDataUpdate_t callback + // if the specified lobby doesn't exist, LobbyDataUpdate_t::m_bSuccess will be set to false + virtual bool RequestLobbyData( CSteamID steamIDLobby ) = 0; + + // sets the game server associated with the lobby + // usually at this point, the users will join the specified game server + // either the IP/Port or the steamID of the game server has to be valid, depending on how you want the clients to be able to connect + virtual void SetLobbyGameServer( CSteamID steamIDLobby, uint32 unGameServerIP, uint16 unGameServerPort, CSteamID steamIDGameServer ) = 0; + // returns the details of a game server set in a lobby - returns false if there is no game server set, or that lobby doesn't exist + virtual bool GetLobbyGameServer( CSteamID steamIDLobby, uint32 *punGameServerIP, uint16 *punGameServerPort, STEAM_OUT_STRUCT() CSteamID *psteamIDGameServer ) = 0; + + // set the limit on the # of users who can join the lobby + virtual bool SetLobbyMemberLimit( CSteamID steamIDLobby, int cMaxMembers ) = 0; + // returns the current limit on the # of users who can join the lobby; returns 0 if no limit is defined + virtual int GetLobbyMemberLimit( CSteamID steamIDLobby ) = 0; + + // updates which type of lobby it is + // only lobbies that are k_ELobbyTypePublic or k_ELobbyTypeInvisible, and are set to joinable, will be returned by RequestLobbyList() calls + virtual bool SetLobbyType( CSteamID steamIDLobby, ELobbyType eLobbyType ) = 0; + + // sets whether or not a lobby is joinable - defaults to true for a new lobby + // if set to false, no user can join, even if they are a friend or have been invited + virtual bool SetLobbyJoinable( CSteamID steamIDLobby, bool bLobbyJoinable ) = 0; + + // returns the current lobby owner + // you must be a member of the lobby to access this + // there always one lobby owner - if the current owner leaves, another user will become the owner + // it is possible (bur rare) to join a lobby just as the owner is leaving, thus entering a lobby with self as the owner + virtual CSteamID GetLobbyOwner( CSteamID steamIDLobby ) = 0; + + // changes who the lobby owner is + // you must be the lobby owner for this to succeed, and steamIDNewOwner must be in the lobby + // after completion, the local user will no longer be the owner + virtual bool SetLobbyOwner( CSteamID steamIDLobby, CSteamID steamIDNewOwner ) = 0; + + // link two lobbies for the purposes of checking player compatibility + // you must be the lobby owner of both lobbies + virtual bool SetLinkedLobby( CSteamID steamIDLobby, CSteamID steamIDLobbyDependent ) = 0; + +#ifdef _PS3 + // changes who the lobby owner is + // you must be the lobby owner for this to succeed, and steamIDNewOwner must be in the lobby + // after completion, the local user will no longer be the owner + virtual void CheckForPSNGameBootInvite( unsigned int iGameBootAttributes ) = 0; +#endif +}; +#define STEAMMATCHMAKING_INTERFACE_VERSION "SteamMatchMaking009" + +// Global interface accessor +inline ISteamMatchmaking *SteamMatchmaking(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamMatchmaking *, SteamMatchmaking, STEAMMATCHMAKING_INTERFACE_VERSION ); + +//----------------------------------------------------------------------------- +// Callback interfaces for server list functions (see ISteamMatchmakingServers below) +// +// The idea here is that your game code implements objects that implement these +// interfaces to receive callback notifications after calling asynchronous functions +// inside the ISteamMatchmakingServers() interface below. +// +// This is different than normal Steam callback handling due to the potentially +// large size of server lists. +//----------------------------------------------------------------------------- + +//----------------------------------------------------------------------------- +// Typedef for handle type you will receive when requesting server list. +//----------------------------------------------------------------------------- +typedef void* HServerListRequest; + +//----------------------------------------------------------------------------- +// Purpose: Callback interface for receiving responses after a server list refresh +// or an individual server update. +// +// Since you get these callbacks after requesting full list refreshes you will +// usually implement this interface inside an object like CServerBrowser. If that +// object is getting destructed you should use ISteamMatchMakingServers()->CancelQuery() +// to cancel any in-progress queries so you don't get a callback into the destructed +// object and crash. +//----------------------------------------------------------------------------- +class ISteamMatchmakingServerListResponse +{ +public: + // Server has responded ok with updated data + virtual void ServerResponded( HServerListRequest hRequest, int iServer ) = 0; + + // Server has failed to respond + virtual void ServerFailedToRespond( HServerListRequest hRequest, int iServer ) = 0; + + // A list refresh you had initiated is now 100% completed + virtual void RefreshComplete( HServerListRequest hRequest, EMatchMakingServerResponse response ) = 0; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Callback interface for receiving responses after pinging an individual server +// +// These callbacks all occur in response to querying an individual server +// via the ISteamMatchmakingServers()->PingServer() call below. If you are +// destructing an object that implements this interface then you should call +// ISteamMatchmakingServers()->CancelServerQuery() passing in the handle to the query +// which is in progress. Failure to cancel in progress queries when destructing +// a callback handler may result in a crash when a callback later occurs. +//----------------------------------------------------------------------------- +class ISteamMatchmakingPingResponse +{ +public: + // Server has responded successfully and has updated data + virtual void ServerResponded( gameserveritem_t &server ) = 0; + + // Server failed to respond to the ping request + virtual void ServerFailedToRespond() = 0; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Callback interface for receiving responses after requesting details on +// who is playing on a particular server. +// +// These callbacks all occur in response to querying an individual server +// via the ISteamMatchmakingServers()->PlayerDetails() call below. If you are +// destructing an object that implements this interface then you should call +// ISteamMatchmakingServers()->CancelServerQuery() passing in the handle to the query +// which is in progress. Failure to cancel in progress queries when destructing +// a callback handler may result in a crash when a callback later occurs. +//----------------------------------------------------------------------------- +class ISteamMatchmakingPlayersResponse +{ +public: + // Got data on a new player on the server -- you'll get this callback once per player + // on the server which you have requested player data on. + virtual void AddPlayerToList( const char *pchName, int nScore, float flTimePlayed ) = 0; + + // The server failed to respond to the request for player details + virtual void PlayersFailedToRespond() = 0; + + // The server has finished responding to the player details request + // (ie, you won't get anymore AddPlayerToList callbacks) + virtual void PlayersRefreshComplete() = 0; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Callback interface for receiving responses after requesting rules +// details on a particular server. +// +// These callbacks all occur in response to querying an individual server +// via the ISteamMatchmakingServers()->ServerRules() call below. If you are +// destructing an object that implements this interface then you should call +// ISteamMatchmakingServers()->CancelServerQuery() passing in the handle to the query +// which is in progress. Failure to cancel in progress queries when destructing +// a callback handler may result in a crash when a callback later occurs. +//----------------------------------------------------------------------------- +class ISteamMatchmakingRulesResponse +{ +public: + // Got data on a rule on the server -- you'll get one of these per rule defined on + // the server you are querying + virtual void RulesResponded( const char *pchRule, const char *pchValue ) = 0; + + // The server failed to respond to the request for rule details + virtual void RulesFailedToRespond() = 0; + + // The server has finished responding to the rule details request + // (ie, you won't get anymore RulesResponded callbacks) + virtual void RulesRefreshComplete() = 0; +}; + + +//----------------------------------------------------------------------------- +// Typedef for handle type you will receive when querying details on an individual server. +//----------------------------------------------------------------------------- +typedef int HServerQuery; +const int HSERVERQUERY_INVALID = 0xffffffff; + +//----------------------------------------------------------------------------- +// Purpose: Functions for match making services for clients to get to game lists and details +//----------------------------------------------------------------------------- +class ISteamMatchmakingServers +{ +public: + // Request a new list of servers of a particular type. These calls each correspond to one of the EMatchMakingType values. + // Each call allocates a new asynchronous request object. + // Request object must be released by calling ReleaseRequest( hServerListRequest ) + virtual HServerListRequest RequestInternetServerList( AppId_t iApp, STEAM_ARRAY_COUNT(nFilters) MatchMakingKeyValuePair_t **ppchFilters, uint32 nFilters, ISteamMatchmakingServerListResponse *pRequestServersResponse ) = 0; + virtual HServerListRequest RequestLANServerList( AppId_t iApp, ISteamMatchmakingServerListResponse *pRequestServersResponse ) = 0; + virtual HServerListRequest RequestFriendsServerList( AppId_t iApp, STEAM_ARRAY_COUNT(nFilters) MatchMakingKeyValuePair_t **ppchFilters, uint32 nFilters, ISteamMatchmakingServerListResponse *pRequestServersResponse ) = 0; + virtual HServerListRequest RequestFavoritesServerList( AppId_t iApp, STEAM_ARRAY_COUNT(nFilters) MatchMakingKeyValuePair_t **ppchFilters, uint32 nFilters, ISteamMatchmakingServerListResponse *pRequestServersResponse ) = 0; + virtual HServerListRequest RequestHistoryServerList( AppId_t iApp, STEAM_ARRAY_COUNT(nFilters) MatchMakingKeyValuePair_t **ppchFilters, uint32 nFilters, ISteamMatchmakingServerListResponse *pRequestServersResponse ) = 0; + virtual HServerListRequest RequestSpectatorServerList( AppId_t iApp, STEAM_ARRAY_COUNT(nFilters) MatchMakingKeyValuePair_t **ppchFilters, uint32 nFilters, ISteamMatchmakingServerListResponse *pRequestServersResponse ) = 0; + + // Releases the asynchronous request object and cancels any pending query on it if there's a pending query in progress. + // RefreshComplete callback is not posted when request is released. + virtual void ReleaseRequest( HServerListRequest hServerListRequest ) = 0; + + /* the filter operation codes that go in the key part of MatchMakingKeyValuePair_t should be one of these: + + "map" + - Server passes the filter if the server is playing the specified map. + "gamedataand" + - Server passes the filter if the server's game data (ISteamGameServer::SetGameData) contains all of the + specified strings. The value field is a comma-delimited list of strings to match. + "gamedataor" + - Server passes the filter if the server's game data (ISteamGameServer::SetGameData) contains at least one of the + specified strings. The value field is a comma-delimited list of strings to match. + "gamedatanor" + - Server passes the filter if the server's game data (ISteamGameServer::SetGameData) does not contain any + of the specified strings. The value field is a comma-delimited list of strings to check. + "gametagsand" + - Server passes the filter if the server's game tags (ISteamGameServer::SetGameTags) contains all + of the specified strings. The value field is a comma-delimited list of strings to check. + "gametagsnor" + - Server passes the filter if the server's game tags (ISteamGameServer::SetGameTags) does not contain any + of the specified strings. The value field is a comma-delimited list of strings to check. + "and" (x1 && x2 && ... && xn) + "or" (x1 || x2 || ... || xn) + "nand" !(x1 && x2 && ... && xn) + "nor" !(x1 || x2 || ... || xn) + - Performs Boolean operation on the following filters. The operand to this filter specifies + the "size" of the Boolean inputs to the operation, in Key/value pairs. (The keyvalue + pairs must immediately follow, i.e. this is a prefix logical operator notation.) + In the simplest case where Boolean expressions are not nested, this is simply + the number of operands. + + For example, to match servers on a particular map or with a particular tag, would would + use these filters. + + ( server.map == "cp_dustbowl" || server.gametags.contains("payload") ) + "or", "2" + "map", "cp_dustbowl" + "gametagsand", "payload" + + If logical inputs are nested, then the operand specifies the size of the entire + "length" of its operands, not the number of immediate children. + + ( server.map == "cp_dustbowl" || ( server.gametags.contains("payload") && !server.gametags.contains("payloadrace") ) ) + "or", "4" + "map", "cp_dustbowl" + "and", "2" + "gametagsand", "payload" + "gametagsnor", "payloadrace" + + Unary NOT can be achieved using either "nand" or "nor" with a single operand. + + "addr" + - Server passes the filter if the server's query address matches the specified IP or IP:port. + "gameaddr" + - Server passes the filter if the server's game address matches the specified IP or IP:port. + + The following filter operations ignore the "value" part of MatchMakingKeyValuePair_t + + "dedicated" + - Server passes the filter if it passed true to SetDedicatedServer. + "secure" + - Server passes the filter if the server is VAC-enabled. + "notfull" + - Server passes the filter if the player count is less than the reported max player count. + "hasplayers" + - Server passes the filter if the player count is greater than zero. + "noplayers" + - Server passes the filter if it doesn't have any players. + "linux" + - Server passes the filter if it's a linux server + */ + + // Get details on a given server in the list, you can get the valid range of index + // values by calling GetServerCount(). You will also receive index values in + // ISteamMatchmakingServerListResponse::ServerResponded() callbacks + virtual gameserveritem_t *GetServerDetails( HServerListRequest hRequest, int iServer ) = 0; + + // Cancel an request which is operation on the given list type. You should call this to cancel + // any in-progress requests before destructing a callback object that may have been passed + // to one of the above list request calls. Not doing so may result in a crash when a callback + // occurs on the destructed object. + // Canceling a query does not release the allocated request handle. + // The request handle must be released using ReleaseRequest( hRequest ) + virtual void CancelQuery( HServerListRequest hRequest ) = 0; + + // Ping every server in your list again but don't update the list of servers + // Query callback installed when the server list was requested will be used + // again to post notifications and RefreshComplete, so the callback must remain + // valid until another RefreshComplete is called on it or the request + // is released with ReleaseRequest( hRequest ) + virtual void RefreshQuery( HServerListRequest hRequest ) = 0; + + // Returns true if the list is currently refreshing its server list + virtual bool IsRefreshing( HServerListRequest hRequest ) = 0; + + // How many servers in the given list, GetServerDetails above takes 0... GetServerCount() - 1 + virtual int GetServerCount( HServerListRequest hRequest ) = 0; + + // Refresh a single server inside of a query (rather than all the servers ) + virtual void RefreshServer( HServerListRequest hRequest, int iServer ) = 0; + + + //----------------------------------------------------------------------------- + // Queries to individual servers directly via IP/Port + //----------------------------------------------------------------------------- + + // Request updated ping time and other details from a single server + virtual HServerQuery PingServer( uint32 unIP, uint16 usPort, ISteamMatchmakingPingResponse *pRequestServersResponse ) = 0; + + // Request the list of players currently playing on a server + virtual HServerQuery PlayerDetails( uint32 unIP, uint16 usPort, ISteamMatchmakingPlayersResponse *pRequestServersResponse ) = 0; + + // Request the list of rules that the server is running (See ISteamGameServer::SetKeyValue() to set the rules server side) + virtual HServerQuery ServerRules( uint32 unIP, uint16 usPort, ISteamMatchmakingRulesResponse *pRequestServersResponse ) = 0; + + // Cancel an outstanding Ping/Players/Rules query from above. You should call this to cancel + // any in-progress requests before destructing a callback object that may have been passed + // to one of the above calls to avoid crashing when callbacks occur. + virtual void CancelServerQuery( HServerQuery hServerQuery ) = 0; +}; +#define STEAMMATCHMAKINGSERVERS_INTERFACE_VERSION "SteamMatchMakingServers002" + +// Global interface accessor +inline ISteamMatchmakingServers *SteamMatchmakingServers(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamMatchmakingServers *, SteamMatchmakingServers, STEAMMATCHMAKINGSERVERS_INTERFACE_VERSION ); + +// game server flags +const uint32 k_unFavoriteFlagNone = 0x00; +const uint32 k_unFavoriteFlagFavorite = 0x01; // this game favorite entry is for the favorites list +const uint32 k_unFavoriteFlagHistory = 0x02; // this game favorite entry is for the history list + + +//----------------------------------------------------------------------------- +// Purpose: Used in ChatInfo messages - fields specific to a chat member - must fit in a uint32 +//----------------------------------------------------------------------------- +enum EChatMemberStateChange +{ + // Specific to joining / leaving the chatroom + k_EChatMemberStateChangeEntered = 0x0001, // This user has joined or is joining the chat room + k_EChatMemberStateChangeLeft = 0x0002, // This user has left or is leaving the chat room + k_EChatMemberStateChangeDisconnected = 0x0004, // User disconnected without leaving the chat first + k_EChatMemberStateChangeKicked = 0x0008, // User kicked + k_EChatMemberStateChangeBanned = 0x0010, // User kicked and banned +}; + +// returns true of the flags indicate that a user has been removed from the chat +#define BChatMemberStateChangeRemoved( rgfChatMemberStateChangeFlags ) ( rgfChatMemberStateChangeFlags & ( k_EChatMemberStateChangeDisconnected | k_EChatMemberStateChangeLeft | k_EChatMemberStateChangeKicked | k_EChatMemberStateChangeBanned ) ) + + + +//----------------------------------------------------------------------------- +// Purpose: Functions for match making services for clients to get to favorites +// and to operate on game lobbies. +//----------------------------------------------------------------------------- +class ISteamGameSearch +{ +public: + // ============================================================================================= + // Game Player APIs + + // a keyname and a list of comma separated values: one of which is must be found in order for the match to qualify + // fails if a search is currently in progress + virtual EGameSearchErrorCode_t AddGameSearchParams( const char *pchKeyToFind, const char *pchValuesToFind ) = 0; + + // all players in lobby enter the queue and await a SearchForGameNotificationCallback_t callback. fails if another search is currently in progress + // if not the owner of the lobby or search already in progress this call fails + // periodic callbacks will be sent as queue time estimates change + virtual EGameSearchErrorCode_t SearchForGameWithLobby( CSteamID steamIDLobby, int nPlayerMin, int nPlayerMax ) = 0; + + // user enter the queue and await a SearchForGameNotificationCallback_t callback. fails if another search is currently in progress + // periodic callbacks will be sent as queue time estimates change + virtual EGameSearchErrorCode_t SearchForGameSolo( int nPlayerMin, int nPlayerMax ) = 0; + + // after receiving SearchForGameResultCallback_t, accept or decline the game + // multiple SearchForGameResultCallback_t will follow as players accept game until the host starts or cancels the game + virtual EGameSearchErrorCode_t AcceptGame() = 0; + virtual EGameSearchErrorCode_t DeclineGame() = 0; + + // after receiving GameStartedByHostCallback_t get connection details to server + virtual EGameSearchErrorCode_t RetrieveConnectionDetails( CSteamID steamIDHost, char *pchConnectionDetails, int cubConnectionDetails ) = 0; + + // leaves queue if still waiting + virtual EGameSearchErrorCode_t EndGameSearch() = 0; + + // ============================================================================================= + // Game Host APIs + + // a keyname and a list of comma separated values: all the values you allow + virtual EGameSearchErrorCode_t SetGameHostParams( const char *pchKey, const char *pchValue ) = 0; + + // set connection details for players once game is found so they can connect to this server + virtual EGameSearchErrorCode_t SetConnectionDetails( const char *pchConnectionDetails, int cubConnectionDetails ) = 0; + + // mark server as available for more players with nPlayerMin,nPlayerMax desired + // accept no lobbies with playercount greater than nMaxTeamSize + // the set of lobbies returned must be partitionable into teams of no more than nMaxTeamSize + // RequestPlayersForGameNotificationCallback_t callback will be sent when the search has started + // multple RequestPlayersForGameResultCallback_t callbacks will follow when players are found + virtual EGameSearchErrorCode_t RequestPlayersForGame( int nPlayerMin, int nPlayerMax, int nMaxTeamSize ) = 0; + + // accept the player list and release connection details to players + // players will only be given connection details and host steamid when this is called + // ( allows host to accept after all players confirm, some confirm, or none confirm. decision is entirely up to the host ) + virtual EGameSearchErrorCode_t HostConfirmGameStart( uint64 ullUniqueGameID ) = 0; + + // cancel request and leave the pool of game hosts looking for players + // if a set of players has already been sent to host, all players will receive SearchForGameHostFailedToConfirm_t + virtual EGameSearchErrorCode_t CancelRequestPlayersForGame() = 0; + + // submit a result for one player. does not end the game. ullUniqueGameID continues to describe this game + virtual EGameSearchErrorCode_t SubmitPlayerResult( uint64 ullUniqueGameID, CSteamID steamIDPlayer, EPlayerResult_t EPlayerResult ) = 0; + + // ends the game. no further SubmitPlayerResults for ullUniqueGameID will be accepted + // any future requests will provide a new ullUniqueGameID + virtual EGameSearchErrorCode_t EndGame( uint64 ullUniqueGameID ) = 0; + +}; +#define STEAMGAMESEARCH_INTERFACE_VERSION "SteamMatchGameSearch001" + +// Global interface accessor +inline ISteamGameSearch *SteamGameSearch(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamGameSearch *, SteamGameSearch, STEAMGAMESEARCH_INTERFACE_VERSION ); + + +//----------------------------------------------------------------------------- +// Purpose: Functions for quickly creating a Party with friends or acquaintances, +// EG from chat rooms. +//----------------------------------------------------------------------------- +enum ESteamPartyBeaconLocationType +{ + k_ESteamPartyBeaconLocationType_Invalid = 0, + k_ESteamPartyBeaconLocationType_ChatGroup = 1, + + k_ESteamPartyBeaconLocationType_Max, +}; + + +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + + +struct SteamPartyBeaconLocation_t +{ + ESteamPartyBeaconLocationType m_eType; + uint64 m_ulLocationID; +}; + +enum ESteamPartyBeaconLocationData +{ + k_ESteamPartyBeaconLocationDataInvalid = 0, + k_ESteamPartyBeaconLocationDataName = 1, + k_ESteamPartyBeaconLocationDataIconURLSmall = 2, + k_ESteamPartyBeaconLocationDataIconURLMedium = 3, + k_ESteamPartyBeaconLocationDataIconURLLarge = 4, +}; + +class ISteamParties +{ +public: + + // ============================================================================================= + // Party Client APIs + + // Enumerate any active beacons for parties you may wish to join + virtual uint32 GetNumActiveBeacons() = 0; + virtual PartyBeaconID_t GetBeaconByIndex( uint32 unIndex ) = 0; + virtual bool GetBeaconDetails( PartyBeaconID_t ulBeaconID, CSteamID *pSteamIDBeaconOwner, STEAM_OUT_STRUCT() SteamPartyBeaconLocation_t *pLocation, STEAM_OUT_STRING_COUNT(cchMetadata) char *pchMetadata, int cchMetadata ) = 0; + + // Join an open party. Steam will reserve one beacon slot for your SteamID, + // and return the necessary JoinGame string for you to use to connect + STEAM_CALL_RESULT( JoinPartyCallback_t ) + virtual SteamAPICall_t JoinParty( PartyBeaconID_t ulBeaconID ) = 0; + + // ============================================================================================= + // Party Host APIs + + // Get a list of possible beacon locations + virtual bool GetNumAvailableBeaconLocations( uint32 *puNumLocations ) = 0; + virtual bool GetAvailableBeaconLocations( SteamPartyBeaconLocation_t *pLocationList, uint32 uMaxNumLocations ) = 0; + + // Create a new party beacon and activate it in the selected location. + // unOpenSlots is the maximum number of users that Steam will send to you. + // When people begin responding to your beacon, Steam will send you + // PartyReservationCallback_t callbacks to let you know who is on the way. + STEAM_CALL_RESULT( CreateBeaconCallback_t ) + virtual SteamAPICall_t CreateBeacon( uint32 unOpenSlots, SteamPartyBeaconLocation_t *pBeaconLocation, const char *pchConnectString, const char *pchMetadata ) = 0; + + // Call this function when a user that had a reservation (see callback below) + // has successfully joined your party. + // Steam will manage the remaining open slots automatically. + virtual void OnReservationCompleted( PartyBeaconID_t ulBeacon, CSteamID steamIDUser ) = 0; + + // To cancel a reservation (due to timeout or user input), call this. + // Steam will open a new reservation slot. + // Note: The user may already be in-flight to your game, so it's possible they will still connect and try to join your party. + virtual void CancelReservation( PartyBeaconID_t ulBeacon, CSteamID steamIDUser ) = 0; + + // Change the number of open beacon reservation slots. + // Call this if, for example, someone without a reservation joins your party (eg a friend, or via your own matchmaking system). + STEAM_CALL_RESULT( ChangeNumOpenSlotsCallback_t ) + virtual SteamAPICall_t ChangeNumOpenSlots( PartyBeaconID_t ulBeacon, uint32 unOpenSlots ) = 0; + + // Turn off the beacon. + virtual bool DestroyBeacon( PartyBeaconID_t ulBeacon ) = 0; + + // Utils + virtual bool GetBeaconLocationData( SteamPartyBeaconLocation_t BeaconLocation, ESteamPartyBeaconLocationData eData, STEAM_OUT_STRING_COUNT(cchDataStringOut) char *pchDataStringOut, int cchDataStringOut ) = 0; + +}; +#define STEAMPARTIES_INTERFACE_VERSION "SteamParties002" + +// Global interface accessor +inline ISteamParties *SteamParties(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamParties *, SteamParties, STEAMPARTIES_INTERFACE_VERSION ); + + +//----------------------------------------------------------------------------- +// Callbacks for ISteamMatchmaking (which go through the regular Steam callback registration system) + +//----------------------------------------------------------------------------- +// Purpose: a server was added/removed from the favorites list, you should refresh now +//----------------------------------------------------------------------------- +struct FavoritesListChanged_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 2 }; + uint32 m_nIP; // an IP of 0 means reload the whole list, any other value means just one server + uint32 m_nQueryPort; + uint32 m_nConnPort; + uint32 m_nAppID; + uint32 m_nFlags; + bool m_bAdd; // true if this is adding the entry, otherwise it is a remove + AccountID_t m_unAccountId; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Someone has invited you to join a Lobby +// normally you don't need to do anything with this, since +// the Steam UI will also display a ' has invited you to the lobby, join?' dialog +// +// if the user outside a game chooses to join, your game will be launched with the parameter "+connect_lobby <64-bit lobby id>", +// or with the callback GameLobbyJoinRequested_t if they're already in-game +//----------------------------------------------------------------------------- +struct LobbyInvite_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 3 }; + + uint64 m_ulSteamIDUser; // Steam ID of the person making the invite + uint64 m_ulSteamIDLobby; // Steam ID of the Lobby + uint64 m_ulGameID; // GameID of the Lobby +}; + + +//----------------------------------------------------------------------------- +// Purpose: Sent on entering a lobby, or on failing to enter +// m_EChatRoomEnterResponse will be set to k_EChatRoomEnterResponseSuccess on success, +// or a higher value on failure (see enum EChatRoomEnterResponse) +//----------------------------------------------------------------------------- +struct LobbyEnter_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 4 }; + + uint64 m_ulSteamIDLobby; // SteamID of the Lobby you have entered + uint32 m_rgfChatPermissions; // Permissions of the current user + bool m_bLocked; // If true, then only invited users may join + uint32 m_EChatRoomEnterResponse; // EChatRoomEnterResponse +}; + + +//----------------------------------------------------------------------------- +// Purpose: The lobby metadata has changed +// if m_ulSteamIDMember is the steamID of a lobby member, use GetLobbyMemberData() to access per-user details +// if m_ulSteamIDMember == m_ulSteamIDLobby, use GetLobbyData() to access lobby metadata +//----------------------------------------------------------------------------- +struct LobbyDataUpdate_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 5 }; + + uint64 m_ulSteamIDLobby; // steamID of the Lobby + uint64 m_ulSteamIDMember; // steamID of the member whose data changed, or the room itself + uint8 m_bSuccess; // true if we lobby data was successfully changed; + // will only be false if RequestLobbyData() was called on a lobby that no longer exists +}; + + +//----------------------------------------------------------------------------- +// Purpose: The lobby chat room state has changed +// this is usually sent when a user has joined or left the lobby +//----------------------------------------------------------------------------- +struct LobbyChatUpdate_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 6 }; + + uint64 m_ulSteamIDLobby; // Lobby ID + uint64 m_ulSteamIDUserChanged; // user who's status in the lobby just changed - can be recipient + uint64 m_ulSteamIDMakingChange; // Chat member who made the change (different from SteamIDUserChange if kicking, muting, etc.) + // for example, if one user kicks another from the lobby, this will be set to the id of the user who initiated the kick + uint32 m_rgfChatMemberStateChange; // bitfield of EChatMemberStateChange values +}; + + +//----------------------------------------------------------------------------- +// Purpose: A chat message for this lobby has been sent +// use GetLobbyChatEntry( m_iChatID ) to retrieve the contents of this message +//----------------------------------------------------------------------------- +struct LobbyChatMsg_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 7 }; + + uint64 m_ulSteamIDLobby; // the lobby id this is in + uint64 m_ulSteamIDUser; // steamID of the user who has sent this message + uint8 m_eChatEntryType; // type of message + uint32 m_iChatID; // index of the chat entry to lookup +}; + + +//----------------------------------------------------------------------------- +// Purpose: A game created a game for all the members of the lobby to join, +// as triggered by a SetLobbyGameServer() +// it's up to the individual clients to take action on this; the usual +// game behavior is to leave the lobby and connect to the specified game server +//----------------------------------------------------------------------------- +struct LobbyGameCreated_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 9 }; + + uint64 m_ulSteamIDLobby; // the lobby we were in + uint64 m_ulSteamIDGameServer; // the new game server that has been created or found for the lobby members + uint32 m_unIP; // IP & Port of the game server (if any) + uint16 m_usPort; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Number of matching lobbies found +// iterate the returned lobbies with GetLobbyByIndex(), from values 0 to m_nLobbiesMatching-1 +//----------------------------------------------------------------------------- +struct LobbyMatchList_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 10 }; + uint32 m_nLobbiesMatching; // Number of lobbies that matched search criteria and we have SteamIDs for +}; + + +//----------------------------------------------------------------------------- +// Purpose: posted if a user is forcefully removed from a lobby +// can occur if a user loses connection to Steam +//----------------------------------------------------------------------------- +struct LobbyKicked_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 12 }; + uint64 m_ulSteamIDLobby; // Lobby + uint64 m_ulSteamIDAdmin; // User who kicked you - possibly the ID of the lobby itself + uint8 m_bKickedDueToDisconnect; // true if you were kicked from the lobby due to the user losing connection to Steam (currently always true) +}; + + +//----------------------------------------------------------------------------- +// Purpose: Result of our request to create a Lobby +// m_eResult == k_EResultOK on success +// at this point, the lobby has been joined and is ready for use +// a LobbyEnter_t callback will also be received (since the local user is joining their own lobby) +//----------------------------------------------------------------------------- +struct LobbyCreated_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 13 }; + + EResult m_eResult; // k_EResultOK - the lobby was successfully created + // k_EResultNoConnection - your Steam client doesn't have a connection to the back-end + // k_EResultTimeout - you the message to the Steam servers, but it didn't respond + // k_EResultFail - the server responded, but with an unknown internal error + // k_EResultAccessDenied - your game isn't set to allow lobbies, or your client does haven't rights to play the game + // k_EResultLimitExceeded - your game client has created too many lobbies + + uint64 m_ulSteamIDLobby; // chat room, zero if failed +}; + +// used by now obsolete RequestFriendsLobbiesResponse_t +// enum { k_iCallback = k_iSteamMatchmakingCallbacks + 14 }; + + +//----------------------------------------------------------------------------- +// Purpose: Result of CheckForPSNGameBootInvite +// m_eResult == k_EResultOK on success +// at this point, the local user may not have finishing joining this lobby; +// game code should wait until the subsequent LobbyEnter_t callback is received +//----------------------------------------------------------------------------- +struct PSNGameBootInviteResult_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 15 }; + + bool m_bGameBootInviteExists; + CSteamID m_steamIDLobby; // Should be valid if m_bGameBootInviteExists == true +}; + + +//----------------------------------------------------------------------------- +// Purpose: Result of our request to create a Lobby +// m_eResult == k_EResultOK on success +// at this point, the lobby has been joined and is ready for use +// a LobbyEnter_t callback will also be received (since the local user is joining their own lobby) +//----------------------------------------------------------------------------- +struct FavoritesListAccountsUpdated_t +{ + enum { k_iCallback = k_iSteamMatchmakingCallbacks + 16 }; + + EResult m_eResult; +}; + + + +//----------------------------------------------------------------------------- +// Callbacks for ISteamGameSearch (which go through the regular Steam callback registration system) + +struct SearchForGameProgressCallback_t +{ + enum { k_iCallback = k_iSteamGameSearchCallbacks + 1 }; + + uint64 m_ullSearchID; // all future callbacks referencing this search will include this Search ID + + EResult m_eResult; // if search has started this result will be k_EResultOK, any other value indicates search has failed to start or has terminated + CSteamID m_lobbyID; // lobby ID if lobby search, invalid steamID otherwise + CSteamID m_steamIDEndedSearch; // if search was terminated, steamID that terminated search + + int32 m_nSecondsRemainingEstimate; + int32 m_cPlayersSearching; +}; + +// notification to all players searching that a game has been found +struct SearchForGameResultCallback_t +{ + enum { k_iCallback = k_iSteamGameSearchCallbacks + 2 }; + + uint64 m_ullSearchID; + + EResult m_eResult; // if game/host was lost this will be an error value + + // if m_bGameFound is true the following are non-zero + int32 m_nCountPlayersInGame; + int32 m_nCountAcceptedGame; + // if m_steamIDHost is valid the host has started the game + CSteamID m_steamIDHost; + bool m_bFinalCallback; +}; + + +//----------------------------------------------------------------------------- +// ISteamGameSearch : Game Host API callbacks + +// callback from RequestPlayersForGame when the matchmaking service has started or ended search +// callback will also follow a call from CancelRequestPlayersForGame - m_bSearchInProgress will be false +struct RequestPlayersForGameProgressCallback_t +{ + enum { k_iCallback = k_iSteamGameSearchCallbacks + 11 }; + + EResult m_eResult; // m_ullSearchID will be non-zero if this is k_EResultOK + uint64 m_ullSearchID; // all future callbacks referencing this search will include this Search ID +}; + +// callback from RequestPlayersForGame +// one of these will be sent per player +// followed by additional callbacks when players accept or decline the game +struct RequestPlayersForGameResultCallback_t +{ + enum { k_iCallback = k_iSteamGameSearchCallbacks + 12 }; + + EResult m_eResult; // m_ullSearchID will be non-zero if this is k_EResultOK + uint64 m_ullSearchID; + + CSteamID m_SteamIDPlayerFound; // player steamID + CSteamID m_SteamIDLobby; // if the player is in a lobby, the lobby ID + enum PlayerAcceptState_t + { + k_EStateUnknown = 0, + k_EStatePlayerAccepted = 1, + k_EStatePlayerDeclined = 2, + }; + PlayerAcceptState_t m_ePlayerAcceptState; + int32 m_nPlayerIndex; + int32 m_nTotalPlayersFound; // expect this many callbacks at minimum + int32 m_nTotalPlayersAcceptedGame; + int32 m_nSuggestedTeamIndex; + uint64 m_ullUniqueGameID; +}; + + +struct RequestPlayersForGameFinalResultCallback_t +{ + enum { k_iCallback = k_iSteamGameSearchCallbacks + 13 }; + + EResult m_eResult; + uint64 m_ullSearchID; + uint64 m_ullUniqueGameID; +}; + + + +// this callback confirms that results were received by the matchmaking service for this player +struct SubmitPlayerResultResultCallback_t +{ + enum { k_iCallback = k_iSteamGameSearchCallbacks + 14 }; + + EResult m_eResult; + uint64 ullUniqueGameID; + CSteamID steamIDPlayer; +}; + + +// this callback confirms that the game is recorded as complete on the matchmaking service +// the next call to RequestPlayersForGame will generate a new unique game ID +struct EndGameResultCallback_t +{ + enum { k_iCallback = k_iSteamGameSearchCallbacks + 15 }; + + EResult m_eResult; + uint64 ullUniqueGameID; +}; + + +// Steam has responded to the user request to join a party via the given Beacon ID. +// If successful, the connect string contains game-specific instructions to connect +// to the game with that party. +struct JoinPartyCallback_t +{ + enum { k_iCallback = k_iSteamPartiesCallbacks + 1 }; + + EResult m_eResult; + PartyBeaconID_t m_ulBeaconID; + CSteamID m_SteamIDBeaconOwner; + char m_rgchConnectString[256]; +}; + +// Response to CreateBeacon request. If successful, the beacon ID is provided. +struct CreateBeaconCallback_t +{ + enum { k_iCallback = k_iSteamPartiesCallbacks + 2 }; + + EResult m_eResult; + PartyBeaconID_t m_ulBeaconID; +}; + +// Someone has used the beacon to join your party - they are in-flight now +// and we've reserved one of the open slots for them. +// You should confirm when they join your party by calling OnReservationCompleted(). +// Otherwise, Steam may timeout their reservation eventually. +struct ReservationNotificationCallback_t +{ + enum { k_iCallback = k_iSteamPartiesCallbacks + 3 }; + + PartyBeaconID_t m_ulBeaconID; + CSteamID m_steamIDJoiner; +}; + +// Response to ChangeNumOpenSlots call +struct ChangeNumOpenSlotsCallback_t +{ + enum { k_iCallback = k_iSteamPartiesCallbacks + 4 }; + + EResult m_eResult; +}; + +// The list of possible Party beacon locations has changed +struct AvailableBeaconLocationsUpdated_t +{ + enum { k_iCallback = k_iSteamPartiesCallbacks + 5 }; +}; + +// The list of active beacons may have changed +struct ActiveBeaconsUpdated_t +{ + enum { k_iCallback = k_iSteamPartiesCallbacks + 6 }; +}; + + +#pragma pack( pop ) + + +#endif // ISTEAMMATCHMAKING diff --git a/lib/steam/public/steam/isteammusic.h b/lib/steam/public/steam/isteammusic.h new file mode 100644 index 0000000..2100cae --- /dev/null +++ b/lib/steam/public/steam/isteammusic.h @@ -0,0 +1,71 @@ +//============ Copyright (c) Valve Corporation, All rights reserved. ============ + +#ifndef ISTEAMMUSIC_H +#define ISTEAMMUSIC_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +//----------------------------------------------------------------------------- +// Purpose: +//----------------------------------------------------------------------------- +enum AudioPlayback_Status +{ + AudioPlayback_Undefined = 0, + AudioPlayback_Playing = 1, + AudioPlayback_Paused = 2, + AudioPlayback_Idle = 3 +}; + + +//----------------------------------------------------------------------------- +// Purpose: Functions to control music playback in the steam client +//----------------------------------------------------------------------------- +class ISteamMusic +{ +public: + virtual bool BIsEnabled() = 0; + virtual bool BIsPlaying() = 0; + + virtual AudioPlayback_Status GetPlaybackStatus() = 0; + + virtual void Play() = 0; + virtual void Pause() = 0; + virtual void PlayPrevious() = 0; + virtual void PlayNext() = 0; + + // volume is between 0.0 and 1.0 + virtual void SetVolume( float flVolume ) = 0; + virtual float GetVolume() = 0; + +}; + +#define STEAMMUSIC_INTERFACE_VERSION "STEAMMUSIC_INTERFACE_VERSION001" + +// Global interface accessor +inline ISteamMusic *SteamMusic(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamMusic *, SteamMusic, STEAMMUSIC_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + + +STEAM_CALLBACK_BEGIN( PlaybackStatusHasChanged_t, k_iSteamMusicCallbacks + 1 ) +STEAM_CALLBACK_END(0) + +STEAM_CALLBACK_BEGIN( VolumeHasChanged_t, k_iSteamMusicCallbacks + 2 ) + STEAM_CALLBACK_MEMBER( 0, float, m_flNewVolume ) +STEAM_CALLBACK_END(1) + +#pragma pack( pop ) + + +#endif // #define ISTEAMMUSIC_H diff --git a/lib/steam/public/steam/isteammusicremote.h b/lib/steam/public/steam/isteammusicremote.h new file mode 100644 index 0000000..39fd4a0 --- /dev/null +++ b/lib/steam/public/steam/isteammusicremote.h @@ -0,0 +1,133 @@ +//============ Copyright (c) Valve Corporation, All rights reserved. ============ + +#ifndef ISTEAMMUSICREMOTE_H +#define ISTEAMMUSICREMOTE_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" +#include "isteammusic.h" + +#define k_SteamMusicNameMaxLength 255 +#define k_SteamMusicPNGMaxLength 65535 + + +class ISteamMusicRemote +{ +public: + // Service Definition + virtual bool RegisterSteamMusicRemote( const char *pchName ) = 0; + virtual bool DeregisterSteamMusicRemote() = 0; + virtual bool BIsCurrentMusicRemote() = 0; + virtual bool BActivationSuccess( bool bValue ) = 0; + + virtual bool SetDisplayName( const char *pchDisplayName ) = 0; + virtual bool SetPNGIcon_64x64( void *pvBuffer, uint32 cbBufferLength ) = 0; + + // Abilities for the user interface + virtual bool EnablePlayPrevious(bool bValue) = 0; + virtual bool EnablePlayNext( bool bValue ) = 0; + virtual bool EnableShuffled( bool bValue ) = 0; + virtual bool EnableLooped( bool bValue ) = 0; + virtual bool EnableQueue( bool bValue ) = 0; + virtual bool EnablePlaylists( bool bValue ) = 0; + + // Status + virtual bool UpdatePlaybackStatus( AudioPlayback_Status nStatus ) = 0; + virtual bool UpdateShuffled( bool bValue ) = 0; + virtual bool UpdateLooped( bool bValue ) = 0; + virtual bool UpdateVolume( float flValue ) = 0; // volume is between 0.0 and 1.0 + + // Current Entry + virtual bool CurrentEntryWillChange() = 0; + virtual bool CurrentEntryIsAvailable( bool bAvailable ) = 0; + virtual bool UpdateCurrentEntryText( const char *pchText ) = 0; + virtual bool UpdateCurrentEntryElapsedSeconds( int nValue ) = 0; + virtual bool UpdateCurrentEntryCoverArt( void *pvBuffer, uint32 cbBufferLength ) = 0; + virtual bool CurrentEntryDidChange() = 0; + + // Queue + virtual bool QueueWillChange() = 0; + virtual bool ResetQueueEntries() = 0; + virtual bool SetQueueEntry( int nID, int nPosition, const char *pchEntryText ) = 0; + virtual bool SetCurrentQueueEntry( int nID ) = 0; + virtual bool QueueDidChange() = 0; + + // Playlist + virtual bool PlaylistWillChange() = 0; + virtual bool ResetPlaylistEntries() = 0; + virtual bool SetPlaylistEntry( int nID, int nPosition, const char *pchEntryText ) = 0; + virtual bool SetCurrentPlaylistEntry( int nID ) = 0; + virtual bool PlaylistDidChange() = 0; +}; + +#define STEAMMUSICREMOTE_INTERFACE_VERSION "STEAMMUSICREMOTE_INTERFACE_VERSION001" + +// Global interface accessor +inline ISteamMusicRemote *SteamMusicRemote(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamMusicRemote *, SteamMusicRemote, STEAMMUSICREMOTE_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + + +STEAM_CALLBACK_BEGIN( MusicPlayerRemoteWillActivate_t, k_iSteamMusicRemoteCallbacks + 1) +STEAM_CALLBACK_END(0) + +STEAM_CALLBACK_BEGIN( MusicPlayerRemoteWillDeactivate_t, k_iSteamMusicRemoteCallbacks + 2 ) +STEAM_CALLBACK_END(0) + +STEAM_CALLBACK_BEGIN( MusicPlayerRemoteToFront_t, k_iSteamMusicRemoteCallbacks + 3 ) +STEAM_CALLBACK_END(0) + +STEAM_CALLBACK_BEGIN( MusicPlayerWillQuit_t, k_iSteamMusicRemoteCallbacks + 4 ) +STEAM_CALLBACK_END(0) + +STEAM_CALLBACK_BEGIN( MusicPlayerWantsPlay_t, k_iSteamMusicRemoteCallbacks + 5 ) +STEAM_CALLBACK_END(0) + +STEAM_CALLBACK_BEGIN( MusicPlayerWantsPause_t, k_iSteamMusicRemoteCallbacks + 6 ) +STEAM_CALLBACK_END(0) + +STEAM_CALLBACK_BEGIN( MusicPlayerWantsPlayPrevious_t, k_iSteamMusicRemoteCallbacks + 7 ) +STEAM_CALLBACK_END(0) + +STEAM_CALLBACK_BEGIN( MusicPlayerWantsPlayNext_t, k_iSteamMusicRemoteCallbacks + 8 ) +STEAM_CALLBACK_END(0) + +STEAM_CALLBACK_BEGIN( MusicPlayerWantsShuffled_t, k_iSteamMusicRemoteCallbacks + 9 ) + STEAM_CALLBACK_MEMBER( 0, bool, m_bShuffled ) +STEAM_CALLBACK_END(1) + +STEAM_CALLBACK_BEGIN( MusicPlayerWantsLooped_t, k_iSteamMusicRemoteCallbacks + 10 ) + STEAM_CALLBACK_MEMBER(0, bool, m_bLooped ) +STEAM_CALLBACK_END(1) + +STEAM_CALLBACK_BEGIN( MusicPlayerWantsVolume_t, k_iSteamMusicCallbacks + 11 ) + STEAM_CALLBACK_MEMBER(0, float, m_flNewVolume) +STEAM_CALLBACK_END(1) + +STEAM_CALLBACK_BEGIN( MusicPlayerSelectsQueueEntry_t, k_iSteamMusicCallbacks + 12 ) + STEAM_CALLBACK_MEMBER(0, int, nID ) +STEAM_CALLBACK_END(1) + +STEAM_CALLBACK_BEGIN( MusicPlayerSelectsPlaylistEntry_t, k_iSteamMusicCallbacks + 13 ) + STEAM_CALLBACK_MEMBER(0, int, nID ) +STEAM_CALLBACK_END(1) + +STEAM_CALLBACK_BEGIN( MusicPlayerWantsPlayingRepeatStatus_t, k_iSteamMusicRemoteCallbacks + 14 ) + STEAM_CALLBACK_MEMBER(0, int, m_nPlayingRepeatStatus ) +STEAM_CALLBACK_END(1) + +#pragma pack( pop ) + + + +#endif // #define ISTEAMMUSICREMOTE_H diff --git a/lib/steam/public/steam/isteamnetworking.h b/lib/steam/public/steam/isteamnetworking.h new file mode 100644 index 0000000..b214a5e --- /dev/null +++ b/lib/steam/public/steam/isteamnetworking.h @@ -0,0 +1,343 @@ +//====== Copyright © 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to steam managing network connections between game clients & servers +// +//============================================================================= + +#ifndef ISTEAMNETWORKING +#define ISTEAMNETWORKING +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +// list of possible errors returned by SendP2PPacket() API +// these will be posted in the P2PSessionConnectFail_t callback +enum EP2PSessionError +{ + k_EP2PSessionErrorNone = 0, + k_EP2PSessionErrorNoRightsToApp = 2, // local user doesn't own the app that is running + k_EP2PSessionErrorTimeout = 4, // target isn't responding, perhaps not calling AcceptP2PSessionWithUser() + // corporate firewalls can also block this (NAT traversal is not firewall traversal) + // make sure that UDP ports 3478, 4379, and 4380 are open in an outbound direction + + // The following error codes were removed and will never be sent. + // For privacy reasons, there is no reply if the user is offline or playing another game. + k_EP2PSessionErrorNotRunningApp_DELETED = 1, + k_EP2PSessionErrorDestinationNotLoggedIn_DELETED = 3, + + k_EP2PSessionErrorMax = 5 +}; + +// SendP2PPacket() send types +// Typically k_EP2PSendUnreliable is what you want for UDP-like packets, k_EP2PSendReliable for TCP-like packets +enum EP2PSend +{ + // Basic UDP send. Packets can't be bigger than 1200 bytes (your typical MTU size). Can be lost, or arrive out of order (rare). + // The sending API does have some knowledge of the underlying connection, so if there is no NAT-traversal accomplished or + // there is a recognized adjustment happening on the connection, the packet will be batched until the connection is open again. + k_EP2PSendUnreliable = 0, + + // As above, but if the underlying p2p connection isn't yet established the packet will just be thrown away. Using this on the first + // packet sent to a remote host almost guarantees the packet will be dropped. + // This is only really useful for kinds of data that should never buffer up, i.e. voice payload packets + k_EP2PSendUnreliableNoDelay = 1, + + // Reliable message send. Can send up to 1MB of data in a single message. + // Does fragmentation/re-assembly of messages under the hood, as well as a sliding window for efficient sends of large chunks of data. + k_EP2PSendReliable = 2, + + // As above, but applies the Nagle algorithm to the send - sends will accumulate + // until the current MTU size (typically ~1200 bytes, but can change) or ~200ms has passed (Nagle algorithm). + // Useful if you want to send a set of smaller messages but have the coalesced into a single packet + // Since the reliable stream is all ordered, you can do several small message sends with k_EP2PSendReliableWithBuffering and then + // do a normal k_EP2PSendReliable to force all the buffered data to be sent. + k_EP2PSendReliableWithBuffering = 3, + +}; + + +// connection state to a specified user, returned by GetP2PSessionState() +// this is under-the-hood info about what's going on with a SendP2PPacket(), shouldn't be needed except for debuggin +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif +struct P2PSessionState_t +{ + uint8 m_bConnectionActive; // true if we've got an active open connection + uint8 m_bConnecting; // true if we're currently trying to establish a connection + uint8 m_eP2PSessionError; // last error recorded (see enum above) + uint8 m_bUsingRelay; // true if it's going through a relay server (TURN) + int32 m_nBytesQueuedForSend; + int32 m_nPacketsQueuedForSend; + uint32 m_nRemoteIP; // potential IP:Port of remote host. Could be TURN server. + uint16 m_nRemotePort; // Only exists for compatibility with older authentication api's +}; +#pragma pack( pop ) + + +// handle to a socket +typedef uint32 SNetSocket_t; // CreateP2PConnectionSocket() +typedef uint32 SNetListenSocket_t; // CreateListenSocket() + +// connection progress indicators, used by CreateP2PConnectionSocket() +enum ESNetSocketState +{ + k_ESNetSocketStateInvalid = 0, + + // communication is valid + k_ESNetSocketStateConnected = 1, + + // states while establishing a connection + k_ESNetSocketStateInitiated = 10, // the connection state machine has started + + // p2p connections + k_ESNetSocketStateLocalCandidatesFound = 11, // we've found our local IP info + k_ESNetSocketStateReceivedRemoteCandidates = 12,// we've received information from the remote machine, via the Steam back-end, about their IP info + + // direct connections + k_ESNetSocketStateChallengeHandshake = 15, // we've received a challenge packet from the server + + // failure states + k_ESNetSocketStateDisconnecting = 21, // the API shut it down, and we're in the process of telling the other end + k_ESNetSocketStateLocalDisconnect = 22, // the API shut it down, and we've completed shutdown + k_ESNetSocketStateTimeoutDuringConnect = 23, // we timed out while trying to creating the connection + k_ESNetSocketStateRemoteEndDisconnected = 24, // the remote end has disconnected from us + k_ESNetSocketStateConnectionBroken = 25, // connection has been broken; either the other end has disappeared or our local network connection has broke + +}; + +// describes how the socket is currently connected +enum ESNetSocketConnectionType +{ + k_ESNetSocketConnectionTypeNotConnected = 0, + k_ESNetSocketConnectionTypeUDP = 1, + k_ESNetSocketConnectionTypeUDPRelay = 2, +}; + + +//----------------------------------------------------------------------------- +// Purpose: Functions for making connections and sending data between clients, +// traversing NAT's where possible +// +// NOTE: This interface is deprecated and may be removed in a future release of +/// the Steamworks SDK. Please see ISteamNetworkingSockets and +/// ISteamNetworkingMessages +//----------------------------------------------------------------------------- +class ISteamNetworking +{ +public: + //////////////////////////////////////////////////////////////////////////////////////////// + // + // UDP-style (connectionless) networking interface. These functions send messages using + // an API organized around the destination. Reliable and unreliable messages are supported. + // + // For a more TCP-style interface (meaning you have a connection handle), see the functions below. + // Both interface styles can send both reliable and unreliable messages. + // + // Automatically establishes NAT-traversing or Relay server connections + // + // These APIs are deprecated, and may be removed in a future version of the Steamworks + // SDK. See ISteamNetworkingMessages. + + // Sends a P2P packet to the specified user + // UDP-like, unreliable and a max packet size of 1200 bytes + // the first packet send may be delayed as the NAT-traversal code runs + // if we can't get through to the user, an error will be posted via the callback P2PSessionConnectFail_t + // see EP2PSend enum above for the descriptions of the different ways of sending packets + // + // nChannel is a routing number you can use to help route message to different systems - you'll have to call ReadP2PPacket() + // with the same channel number in order to retrieve the data on the other end + // using different channels to talk to the same user will still use the same underlying p2p connection, saving on resources + virtual bool SendP2PPacket( CSteamID steamIDRemote, const void *pubData, uint32 cubData, EP2PSend eP2PSendType, int nChannel = 0 ) = 0; + + // returns true if any data is available for read, and the amount of data that will need to be read + virtual bool IsP2PPacketAvailable( uint32 *pcubMsgSize, int nChannel = 0 ) = 0; + + // reads in a packet that has been sent from another user via SendP2PPacket() + // returns the size of the message and the steamID of the user who sent it in the last two parameters + // if the buffer passed in is too small, the message will be truncated + // this call is not blocking, and will return false if no data is available + virtual bool ReadP2PPacket( void *pubDest, uint32 cubDest, uint32 *pcubMsgSize, CSteamID *psteamIDRemote, int nChannel = 0 ) = 0; + + // AcceptP2PSessionWithUser() should only be called in response to a P2PSessionRequest_t callback + // P2PSessionRequest_t will be posted if another user tries to send you a packet that you haven't talked to yet + // if you don't want to talk to the user, just ignore the request + // if the user continues to send you packets, another P2PSessionRequest_t will be posted periodically + // this may be called multiple times for a single user + // (if you've called SendP2PPacket() on the other user, this implicitly accepts the session request) + virtual bool AcceptP2PSessionWithUser( CSteamID steamIDRemote ) = 0; + + // call CloseP2PSessionWithUser() when you're done talking to a user, will free up resources under-the-hood + // if the remote user tries to send data to you again, another P2PSessionRequest_t callback will be posted + virtual bool CloseP2PSessionWithUser( CSteamID steamIDRemote ) = 0; + + // call CloseP2PChannelWithUser() when you're done talking to a user on a specific channel. Once all channels + // open channels to a user have been closed, the open session to the user will be closed and new data from this + // user will trigger a P2PSessionRequest_t callback + virtual bool CloseP2PChannelWithUser( CSteamID steamIDRemote, int nChannel ) = 0; + + // fills out P2PSessionState_t structure with details about the underlying connection to the user + // should only needed for debugging purposes + // returns false if no connection exists to the specified user + virtual bool GetP2PSessionState( CSteamID steamIDRemote, P2PSessionState_t *pConnectionState ) = 0; + + // Allow P2P connections to fall back to being relayed through the Steam servers if a direct connection + // or NAT-traversal cannot be established. Only applies to connections created after setting this value, + // or to existing connections that need to automatically reconnect after this value is set. + // + // P2P packet relay is allowed by default + // + // NOTE: This function is deprecated and may be removed in a future version of the SDK. For + // security purposes, we may decide to relay the traffic to certain peers, even if you pass false + // to this function, to prevent revealing the client's IP address top another peer. + virtual bool AllowP2PPacketRelay( bool bAllow ) = 0; + + + //////////////////////////////////////////////////////////////////////////////////////////// + // + // LISTEN / CONNECT connection-oriented interface functions + // + // These functions are more like a client-server TCP API. One side is the "server" + // and "listens" for incoming connections, which then must be "accepted." The "client" + // initiates a connection by "connecting." Sending and receiving is done through a + // connection handle. + // + // For a more UDP-style interface, where you do not track connection handles but + // simply send messages to a SteamID, use the UDP-style functions above. + // + // Both methods can send both reliable and unreliable methods. + // + // These APIs are deprecated, and may be removed in a future version of the Steamworks + // SDK. See ISteamNetworkingSockets. + // + //////////////////////////////////////////////////////////////////////////////////////////// + + + // creates a socket and listens others to connect + // will trigger a SocketStatusCallback_t callback on another client connecting + // nVirtualP2PPort is the unique ID that the client will connect to, in case you have multiple ports + // this can usually just be 0 unless you want multiple sets of connections + // unIP is the local IP address to bind to + // pass in 0 if you just want the default local IP + // unPort is the port to use + // pass in 0 if you don't want users to be able to connect via IP/Port, but expect to be always peer-to-peer connections only + virtual SNetListenSocket_t CreateListenSocket( int nVirtualP2PPort, SteamIPAddress_t nIP, uint16 nPort, bool bAllowUseOfPacketRelay ) = 0; + + // creates a socket and begin connection to a remote destination + // can connect via a known steamID (client or game server), or directly to an IP + // on success will trigger a SocketStatusCallback_t callback + // on failure or timeout will trigger a SocketStatusCallback_t callback with a failure code in m_eSNetSocketState + virtual SNetSocket_t CreateP2PConnectionSocket( CSteamID steamIDTarget, int nVirtualPort, int nTimeoutSec, bool bAllowUseOfPacketRelay ) = 0; + virtual SNetSocket_t CreateConnectionSocket( SteamIPAddress_t nIP, uint16 nPort, int nTimeoutSec ) = 0; + + // disconnects the connection to the socket, if any, and invalidates the handle + // any unread data on the socket will be thrown away + // if bNotifyRemoteEnd is set, socket will not be completely destroyed until the remote end acknowledges the disconnect + virtual bool DestroySocket( SNetSocket_t hSocket, bool bNotifyRemoteEnd ) = 0; + // destroying a listen socket will automatically kill all the regular sockets generated from it + virtual bool DestroyListenSocket( SNetListenSocket_t hSocket, bool bNotifyRemoteEnd ) = 0; + + // sending data + // must be a handle to a connected socket + // data is all sent via UDP, and thus send sizes are limited to 1200 bytes; after this, many routers will start dropping packets + // use the reliable flag with caution; although the resend rate is pretty aggressive, + // it can still cause stalls in receiving data (like TCP) + virtual bool SendDataOnSocket( SNetSocket_t hSocket, void *pubData, uint32 cubData, bool bReliable ) = 0; + + // receiving data + // returns false if there is no data remaining + // fills out *pcubMsgSize with the size of the next message, in bytes + virtual bool IsDataAvailableOnSocket( SNetSocket_t hSocket, uint32 *pcubMsgSize ) = 0; + + // fills in pubDest with the contents of the message + // messages are always complete, of the same size as was sent (i.e. packetized, not streaming) + // if *pcubMsgSize < cubDest, only partial data is written + // returns false if no data is available + virtual bool RetrieveDataFromSocket( SNetSocket_t hSocket, void *pubDest, uint32 cubDest, uint32 *pcubMsgSize ) = 0; + + // checks for data from any socket that has been connected off this listen socket + // returns false if there is no data remaining + // fills out *pcubMsgSize with the size of the next message, in bytes + // fills out *phSocket with the socket that data is available on + virtual bool IsDataAvailable( SNetListenSocket_t hListenSocket, uint32 *pcubMsgSize, SNetSocket_t *phSocket ) = 0; + + // retrieves data from any socket that has been connected off this listen socket + // fills in pubDest with the contents of the message + // messages are always complete, of the same size as was sent (i.e. packetized, not streaming) + // if *pcubMsgSize < cubDest, only partial data is written + // returns false if no data is available + // fills out *phSocket with the socket that data is available on + virtual bool RetrieveData( SNetListenSocket_t hListenSocket, void *pubDest, uint32 cubDest, uint32 *pcubMsgSize, SNetSocket_t *phSocket ) = 0; + + // returns information about the specified socket, filling out the contents of the pointers + virtual bool GetSocketInfo( SNetSocket_t hSocket, CSteamID *pSteamIDRemote, int *peSocketStatus, SteamIPAddress_t *punIPRemote, uint16 *punPortRemote ) = 0; + + // returns which local port the listen socket is bound to + // *pnIP and *pnPort will be 0 if the socket is set to listen for P2P connections only + virtual bool GetListenSocketInfo( SNetListenSocket_t hListenSocket, SteamIPAddress_t *pnIP, uint16 *pnPort ) = 0; + + // returns true to describe how the socket ended up connecting + virtual ESNetSocketConnectionType GetSocketConnectionType( SNetSocket_t hSocket ) = 0; + + // max packet size, in bytes + virtual int GetMaxPacketSize( SNetSocket_t hSocket ) = 0; +}; +#define STEAMNETWORKING_INTERFACE_VERSION "SteamNetworking006" + +// Global interface accessor +inline ISteamNetworking *SteamNetworking(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamNetworking *, SteamNetworking, STEAMNETWORKING_INTERFACE_VERSION ); + +// Global accessor for the gameserver client +inline ISteamNetworking *SteamGameServerNetworking(); +STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( ISteamNetworking *, SteamGameServerNetworking, STEAMNETWORKING_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +// callback notification - a user wants to talk to us over the P2P channel via the SendP2PPacket() API +// in response, a call to AcceptP2PPacketsFromUser() needs to be made, if you want to talk with them +struct P2PSessionRequest_t +{ + enum { k_iCallback = k_iSteamNetworkingCallbacks + 2 }; + CSteamID m_steamIDRemote; // user who wants to talk to us +}; + + +// callback notification - packets can't get through to the specified user via the SendP2PPacket() API +// all packets queued packets unsent at this point will be dropped +// further attempts to send will retry making the connection (but will be dropped if we fail again) +struct P2PSessionConnectFail_t +{ + enum { k_iCallback = k_iSteamNetworkingCallbacks + 3 }; + CSteamID m_steamIDRemote; // user we were sending packets to + uint8 m_eP2PSessionError; // EP2PSessionError indicating why we're having trouble +}; + + +// callback notification - status of a socket has changed +// used as part of the CreateListenSocket() / CreateP2PConnectionSocket() +struct SocketStatusCallback_t +{ + enum { k_iCallback = k_iSteamNetworkingCallbacks + 1 }; + SNetSocket_t m_hSocket; // the socket used to send/receive data to the remote host + SNetListenSocket_t m_hListenSocket; // this is the server socket that we were listening on; NULL if this was an outgoing connection + CSteamID m_steamIDRemote; // remote steamID we have connected to, if it has one + int m_eSNetSocketState; // socket state, ESNetSocketState +}; + +#pragma pack( pop ) + +#endif // ISTEAMNETWORKING diff --git a/lib/steam/public/steam/isteamnetworkingmessages.h b/lib/steam/public/steam/isteamnetworkingmessages.h new file mode 100644 index 0000000..4cf3365 --- /dev/null +++ b/lib/steam/public/steam/isteamnetworkingmessages.h @@ -0,0 +1,199 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== + +#ifndef ISTEAMNETWORKINGMESSAGES +#define ISTEAMNETWORKINGMESSAGES +#pragma once + +#include "steamnetworkingtypes.h" +#include "steam_api_common.h" + +//----------------------------------------------------------------------------- +/// The non-connection-oriented interface to send and receive messages +/// (whether they be "clients" or "servers"). +/// +/// ISteamNetworkingSockets is connection-oriented (like TCP), meaning you +/// need to listen and connect, and then you send messages using a connection +/// handle. ISteamNetworkingMessages is more like UDP, in that you can just send +/// messages to arbitrary peers at any time. The underlying connections are +/// established implicitly. +/// +/// Under the hood ISteamNetworkingMessages works on top of the ISteamNetworkingSockets +/// code, so you get the same routing and messaging efficiency. The difference is +/// mainly in your responsibility to explicitly establish a connection and +/// the type of feedback you get about the state of the connection. Both +/// interfaces can do "P2P" communications, and both support both unreliable +/// and reliable messages, fragmentation and reassembly. +/// +/// The primary purpose of this interface is to be "like UDP", so that UDP-based code +/// can be ported easily to take advantage of relayed connections. If you find +/// yourself needing more low level information or control, or to be able to better +/// handle failure, then you probably need to use ISteamNetworkingSockets directly. +/// Also, note that if your main goal is to obtain a connection between two peers +/// without concerning yourself with assigning roles of "client" and "server", +/// you may find the symmetric connection mode of ISteamNetworkingSockets useful. +/// (See k_ESteamNetworkingConfig_SymmetricConnect.) +/// +class ISteamNetworkingMessages +{ +public: + /// Sends a message to the specified host. If we don't already have a session with that user, + /// a session is implicitly created. There might be some handshaking that needs to happen + /// before we can actually begin sending message data. If this handshaking fails and we can't + /// get through, an error will be posted via the callback SteamNetworkingMessagesSessionFailed_t. + /// There is no notification when the operation succeeds. (You should have the peer send a reply + /// for this purpose.) + /// + /// Sending a message to a host will also implicitly accept any incoming connection from that host. + /// + /// nSendFlags is a bitmask of k_nSteamNetworkingSend_xxx options + /// + /// nRemoteChannel is a routing number you can use to help route message to different systems. + /// You'll have to call ReceiveMessagesOnChannel() with the same channel number in order to retrieve + /// the data on the other end. + /// + /// Using different channels to talk to the same user will still use the same underlying + /// connection, saving on resources. If you don't need this feature, use 0. + /// Otherwise, small integers are the most efficient. + /// + /// It is guaranteed that reliable messages to the same host on the same channel + /// will be be received by the remote host (if they are received at all) exactly once, + /// and in the same order that they were sent. + /// + /// NO other order guarantees exist! In particular, unreliable messages may be dropped, + /// received out of order with respect to each other and with respect to reliable data, + /// or may be received multiple times. Messages on different channels are *not* guaranteed + /// to be received in the order they were sent. + /// + /// A note for those familiar with TCP/IP ports, or converting an existing codebase that + /// opened multiple sockets: You might notice that there is only one channel, and with + /// TCP/IP each endpoint has a port number. You can think of the channel number as the + /// *destination* port. If you need each message to also include a "source port" (so the + /// recipient can route the reply), then just put that in your message. That is essentially + /// how UDP works! + /// + /// Returns: + /// - k_EREsultOK on success. + /// - k_EResultNoConnection will be returned if the session has failed or was closed by the peer, + /// and k_nSteamNetworkingSend_AutoRestartBrokenSession is not used. (You can use + /// GetSessionConnectionInfo to get the details.) In order to acknowledge the broken session + /// and start a new one, you must call CloseSessionWithUser + /// - See ISteamNetworkingSockets::SendMessageToConnection for more possible return values + virtual EResult SendMessageToUser( const SteamNetworkingIdentity &identityRemote, const void *pubData, uint32 cubData, int nSendFlags, int nRemoteChannel ) = 0; + + /// Reads the next message that has been sent from another user via SendMessageToUser() on the given channel. + /// Returns number of messages returned into your list. (0 if no message are available on that channel.) + /// + /// When you're done with the message object(s), make sure and call SteamNetworkingMessage_t::Release()! + virtual int ReceiveMessagesOnChannel( int nLocalChannel, SteamNetworkingMessage_t **ppOutMessages, int nMaxMessages ) = 0; + + /// Call this in response to a SteamNetworkingMessagesSessionRequest_t callback. + /// SteamNetworkingMessagesSessionRequest_t are posted when a user tries to send you a message, + /// and you haven't tried to talk to them first. If you don't want to talk to them, just ignore + /// the request. If the user continues to send you messages, SteamNetworkingMessagesSessionRequest_t + /// callbacks will continue to be posted periodically. + /// + /// Returns false if there is no session with the user pending or otherwise. If there is an + /// existing active session, this function will return true, even if it is not pending. + /// + /// Calling SendMessageToUser() will implicitly accepts any pending session request to that user. + virtual bool AcceptSessionWithUser( const SteamNetworkingIdentity &identityRemote ) = 0; + + /// Call this when you're done talking to a user to immediately free up resources under-the-hood. + /// If the remote user tries to send data to you again, another SteamNetworkingMessagesSessionRequest_t + /// callback will be posted. + /// + /// Note that sessions that go unused for a few minutes are automatically timed out. + virtual bool CloseSessionWithUser( const SteamNetworkingIdentity &identityRemote ) = 0; + + /// Call this when you're done talking to a user on a specific channel. Once all + /// open channels to a user have been closed, the open session to the user will be + /// closed, and any new data from this user will trigger a + /// SteamSteamNetworkingMessagesSessionRequest_t callback + virtual bool CloseChannelWithUser( const SteamNetworkingIdentity &identityRemote, int nLocalChannel ) = 0; + + /// Returns information about the latest state of a connection, if any, with the given peer. + /// Primarily intended for debugging purposes, but can also be used to get more detailed + /// failure information. (See SendMessageToUser and k_nSteamNetworkingSend_AutoRestartBrokenSession.) + /// + /// Returns the value of SteamNetConnectionInfo_t::m_eState, or k_ESteamNetworkingConnectionState_None + /// if no connection exists with specified peer. You may pass nullptr for either parameter if + /// you do not need the corresponding details. Note that sessions time out after a while, + /// so if a connection fails, or SendMessageToUser returns k_EResultNoConnection, you cannot wait + /// indefinitely to obtain the reason for failure. + virtual ESteamNetworkingConnectionState GetSessionConnectionInfo( const SteamNetworkingIdentity &identityRemote, SteamNetConnectionInfo_t *pConnectionInfo, SteamNetworkingQuickConnectionStatus *pQuickStatus ) = 0; +}; +#define STEAMNETWORKINGMESSAGES_INTERFACE_VERSION "SteamNetworkingMessages002" + +// +// Callbacks +// + +#pragma pack( push, 1 ) + +/// Posted when a remote host is sending us a message, and we do not already have a session with them +struct SteamNetworkingMessagesSessionRequest_t +{ + enum { k_iCallback = k_iSteamNetworkingMessagesCallbacks + 1 }; + SteamNetworkingIdentity m_identityRemote; // user who wants to talk to us +}; + +/// Posted when we fail to establish a connection, or we detect that communications +/// have been disrupted it an unusual way. There is no notification when a peer proactively +/// closes the session. ("Closed by peer" is not a concept of UDP-style communications, and +/// SteamNetworkingMessages is primarily intended to make porting UDP code easy.) +/// +/// Remember: callbacks are asynchronous. See notes on SendMessageToUser, +/// and k_nSteamNetworkingSend_AutoRestartBrokenSession in particular. +/// +/// Also, if a session times out due to inactivity, no callbacks will be posted. The only +/// way to detect that this is happening is that querying the session state may return +/// none, connecting, and findingroute again. +struct SteamNetworkingMessagesSessionFailed_t +{ + enum { k_iCallback = k_iSteamNetworkingMessagesCallbacks + 2 }; + + /// Detailed info about the session that failed. + /// SteamNetConnectionInfo_t::m_identityRemote indicates who this session + /// was with. + SteamNetConnectionInfo_t m_info; +}; + +#pragma pack(pop) + +// Global accessors +// Using standalone lib +#ifdef STEAMNETWORKINGSOCKETS_STANDALONELIB + + // Standalone lib. + static_assert( STEAMNETWORKINGMESSAGES_INTERFACE_VERSION[25] == '2', "Version mismatch" ); + STEAMNETWORKINGSOCKETS_INTERFACE ISteamNetworkingMessages *SteamNetworkingMessages_LibV2(); + inline ISteamNetworkingMessages *SteamNetworkingMessages_Lib() { return SteamNetworkingMessages_LibV2(); } + + // If running in context of steam, we also define a gameserver instance. + #ifdef STEAMNETWORKINGSOCKETS_STEAM + STEAMNETWORKINGSOCKETS_INTERFACE ISteamNetworkingMessages *SteamGameServerNetworkingMessages_LibV2(); + inline ISteamNetworkingMessages *SteamGameServerNetworkingMessages_Lib() { return SteamGameServerNetworkingMessages_LibV2(); } + #endif + + #ifndef STEAMNETWORKINGSOCKETS_STEAMAPI + inline ISteamNetworkingMessages *SteamNetworkingMessages() { return SteamNetworkingMessages_LibV2(); } + #ifdef STEAMNETWORKINGSOCKETS_STEAM + inline ISteamNetworkingMessages *SteamGameServerNetworkingMessages() { return SteamGameServerNetworkingMessages_LibV2(); } + #endif + #endif +#endif + +// Using Steamworks SDK +#ifdef STEAMNETWORKINGSOCKETS_STEAMAPI + + // Steamworks SDK + STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamNetworkingMessages *, SteamNetworkingMessages_SteamAPI, STEAMNETWORKINGMESSAGES_INTERFACE_VERSION ); + STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( ISteamNetworkingMessages *, SteamGameServerNetworkingMessages_SteamAPI, STEAMNETWORKINGMESSAGES_INTERFACE_VERSION ); + + #ifndef STEAMNETWORKINGSOCKETS_STANDALONELIB + inline ISteamNetworkingMessages *SteamNetworkingMessages() { return SteamNetworkingMessages_SteamAPI(); } + inline ISteamNetworkingMessages *SteamGameServerNetworkingMessages() { return SteamGameServerNetworkingMessages_SteamAPI(); } + #endif +#endif + +#endif // ISTEAMNETWORKINGMESSAGES diff --git a/lib/steam/public/steam/isteamnetworkingsockets.h b/lib/steam/public/steam/isteamnetworkingsockets.h new file mode 100644 index 0000000..69936f8 --- /dev/null +++ b/lib/steam/public/steam/isteamnetworkingsockets.h @@ -0,0 +1,801 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== + +#ifndef ISTEAMNETWORKINGSOCKETS +#define ISTEAMNETWORKINGSOCKETS +#pragma once + +#include "steamnetworkingtypes.h" +#include "steam_api_common.h" + +struct SteamNetAuthenticationStatus_t; +class ISteamNetworkingConnectionSignaling; +class ISteamNetworkingSignalingRecvContext; + +//----------------------------------------------------------------------------- +/// Lower level networking API. +/// +/// - Connection-oriented API (like TCP, not UDP). When sending and receiving +/// messages, a connection handle is used. (For a UDP-style interface, see +/// ISteamNetworkingMessages.) In this TCP-style interface, the "server" will +/// "listen" on a "listen socket." A "client" will "connect" to the server, +/// and the server will "accept" the connection. +/// - But unlike TCP, it's message-oriented, not stream-oriented. +/// - Mix of reliable and unreliable messages +/// - Fragmentation and reassembly +/// - Supports connectivity over plain UDP +/// - Also supports SDR ("Steam Datagram Relay") connections, which are +/// addressed by the identity of the peer. There is a "P2P" use case and +/// a "hosted dedicated server" use case. +/// +/// Note that neither of the terms "connection" nor "socket" necessarily correspond +/// one-to-one with an underlying UDP socket. An attempt has been made to +/// keep the semantics as similar to the standard socket model when appropriate, +/// but some deviations do exist. +/// +/// See also: ISteamNetworkingMessages, the UDP-style interface. This API might be +/// easier to use, especially when porting existing UDP code. +class ISteamNetworkingSockets +{ +public: + + /// Creates a "server" socket that listens for clients to connect to by + /// calling ConnectByIPAddress, over ordinary UDP (IPv4 or IPv6) + /// + /// You must select a specific local port to listen on and set it + /// the port field of the local address. + /// + /// Usually you will set the IP portion of the address to zero (SteamNetworkingIPAddr::Clear()). + /// This means that you will not bind to any particular local interface (i.e. the same + /// as INADDR_ANY in plain socket code). Furthermore, if possible the socket will be bound + /// in "dual stack" mode, which means that it can accept both IPv4 and IPv6 client connections. + /// If you really do wish to bind a particular interface, then set the local address to the + /// appropriate IPv4 or IPv6 IP. + /// + /// If you need to set any initial config options, pass them here. See + /// SteamNetworkingConfigValue_t for more about why this is preferable to + /// setting the options "immediately" after creation. + /// + /// When a client attempts to connect, a SteamNetConnectionStatusChangedCallback_t + /// will be posted. The connection will be in the connecting state. + virtual HSteamListenSocket CreateListenSocketIP( const SteamNetworkingIPAddr &localAddress, int nOptions, const SteamNetworkingConfigValue_t *pOptions ) = 0; + + /// Creates a connection and begins talking to a "server" over UDP at the + /// given IPv4 or IPv6 address. The remote host must be listening with a + /// matching call to CreateListenSocketIP on the specified port. + /// + /// A SteamNetConnectionStatusChangedCallback_t callback will be triggered when we start + /// connecting, and then another one on either timeout or successful connection. + /// + /// If the server does not have any identity configured, then their network address + /// will be the only identity in use. Or, the network host may provide a platform-specific + /// identity with or without a valid certificate to authenticate that identity. (These + /// details will be contained in the SteamNetConnectionStatusChangedCallback_t.) It's + /// up to your application to decide whether to allow the connection. + /// + /// By default, all connections will get basic encryption sufficient to prevent + /// casual eavesdropping. But note that without certificates (or a shared secret + /// distributed through some other out-of-band mechanism), you don't have any + /// way of knowing who is actually on the other end, and thus are vulnerable to + /// man-in-the-middle attacks. + /// + /// If you need to set any initial config options, pass them here. See + /// SteamNetworkingConfigValue_t for more about why this is preferable to + /// setting the options "immediately" after creation. + virtual HSteamNetConnection ConnectByIPAddress( const SteamNetworkingIPAddr &address, int nOptions, const SteamNetworkingConfigValue_t *pOptions ) = 0; + + /// Like CreateListenSocketIP, but clients will connect using ConnectP2P. + /// + /// nLocalVirtualPort specifies how clients can connect to this socket using + /// ConnectP2P. It's very common for applications to only have one listening socket; + /// in that case, use zero. If you need to open multiple listen sockets and have clients + /// be able to connect to one or the other, then nLocalVirtualPort should be a small + /// integer (<1000) unique to each listen socket you create. + /// + /// If you use this, you probably want to call ISteamNetworkingUtils::InitRelayNetworkAccess() + /// when your app initializes. + /// + /// If you are listening on a dedicated servers in known data center, + /// then you can listen using this function instead of CreateHostedDedicatedServerListenSocket, + /// to allow clients to connect without a ticket. Any user that owns + /// the app and is signed into Steam will be able to attempt to connect to + /// your server. Also, a connection attempt may require the client to + /// be connected to Steam, which is one more moving part that may fail. When + /// tickets are used, then once a ticket is obtained, a client can connect to + /// your server even if they got disconnected from Steam or Steam is offline. + /// + /// If you need to set any initial config options, pass them here. See + /// SteamNetworkingConfigValue_t for more about why this is preferable to + /// setting the options "immediately" after creation. + virtual HSteamListenSocket CreateListenSocketP2P( int nLocalVirtualPort, int nOptions, const SteamNetworkingConfigValue_t *pOptions ) = 0; + + /// Begin connecting to a peer that is identified using a platform-specific identifier. + /// This uses the default rendezvous service, which depends on the platform and library + /// configuration. (E.g. on Steam, it goes through the steam backend.) + /// + /// If you need to set any initial config options, pass them here. See + /// SteamNetworkingConfigValue_t for more about why this is preferable to + /// setting the options "immediately" after creation. + /// + /// To use your own signaling service, see: + /// - ConnectP2PCustomSignaling + /// - k_ESteamNetworkingConfig_Callback_CreateConnectionSignaling + virtual HSteamNetConnection ConnectP2P( const SteamNetworkingIdentity &identityRemote, int nRemoteVirtualPort, int nOptions, const SteamNetworkingConfigValue_t *pOptions ) = 0; + + /// Accept an incoming connection that has been received on a listen socket. + /// + /// When a connection attempt is received (perhaps after a few basic handshake + /// packets have been exchanged to prevent trivial spoofing), a connection interface + /// object is created in the k_ESteamNetworkingConnectionState_Connecting state + /// and a SteamNetConnectionStatusChangedCallback_t is posted. At this point, your + /// application MUST either accept or close the connection. (It may not ignore it.) + /// Accepting the connection will transition it either into the connected state, + /// or the finding route state, depending on the connection type. + /// + /// You should take action within a second or two, because accepting the connection is + /// what actually sends the reply notifying the client that they are connected. If you + /// delay taking action, from the client's perspective it is the same as the network + /// being unresponsive, and the client may timeout the connection attempt. In other + /// words, the client cannot distinguish between a delay caused by network problems + /// and a delay caused by the application. + /// + /// This means that if your application goes for more than a few seconds without + /// processing callbacks (for example, while loading a map), then there is a chance + /// that a client may attempt to connect in that interval and fail due to timeout. + /// + /// If the application does not respond to the connection attempt in a timely manner, + /// and we stop receiving communication from the client, the connection attempt will + /// be timed out locally, transitioning the connection to the + /// k_ESteamNetworkingConnectionState_ProblemDetectedLocally state. The client may also + /// close the connection before it is accepted, and a transition to the + /// k_ESteamNetworkingConnectionState_ClosedByPeer is also possible depending the exact + /// sequence of events. + /// + /// Returns k_EResultInvalidParam if the handle is invalid. + /// Returns k_EResultInvalidState if the connection is not in the appropriate state. + /// (Remember that the connection state could change in between the time that the + /// notification being posted to the queue and when it is received by the application.) + /// + /// A note about connection configuration options. If you need to set any configuration + /// options that are common to all connections accepted through a particular listen + /// socket, consider setting the options on the listen socket, since such options are + /// inherited automatically. If you really do need to set options that are connection + /// specific, it is safe to set them on the connection before accepting the connection. + virtual EResult AcceptConnection( HSteamNetConnection hConn ) = 0; + + /// Disconnects from the remote host and invalidates the connection handle. + /// Any unread data on the connection is discarded. + /// + /// nReason is an application defined code that will be received on the other + /// end and recorded (when possible) in backend analytics. The value should + /// come from a restricted range. (See ESteamNetConnectionEnd.) If you don't need + /// to communicate any information to the remote host, and do not want analytics to + /// be able to distinguish "normal" connection terminations from "exceptional" ones, + /// You may pass zero, in which case the generic value of + /// k_ESteamNetConnectionEnd_App_Generic will be used. + /// + /// pszDebug is an optional human-readable diagnostic string that will be received + /// by the remote host and recorded (when possible) in backend analytics. + /// + /// If you wish to put the socket into a "linger" state, where an attempt is made to + /// flush any remaining sent data, use bEnableLinger=true. Otherwise reliable data + /// is not flushed. + /// + /// If the connection has already ended and you are just freeing up the + /// connection interface, the reason code, debug string, and linger flag are + /// ignored. + virtual bool CloseConnection( HSteamNetConnection hPeer, int nReason, const char *pszDebug, bool bEnableLinger ) = 0; + + /// Destroy a listen socket. All the connections that were accepting on the listen + /// socket are closed ungracefully. + virtual bool CloseListenSocket( HSteamListenSocket hSocket ) = 0; + + /// Set connection user data. the data is returned in the following places + /// - You can query it using GetConnectionUserData. + /// - The SteamNetworkingmessage_t structure. + /// - The SteamNetConnectionInfo_t structure. (Which is a member of SteamNetConnectionStatusChangedCallback_t.) + /// + /// Returns false if the handle is invalid. + virtual bool SetConnectionUserData( HSteamNetConnection hPeer, int64 nUserData ) = 0; + + /// Fetch connection user data. Returns -1 if handle is invalid + /// or if you haven't set any userdata on the connection. + virtual int64 GetConnectionUserData( HSteamNetConnection hPeer ) = 0; + + /// Set a name for the connection, used mostly for debugging + virtual void SetConnectionName( HSteamNetConnection hPeer, const char *pszName ) = 0; + + /// Fetch connection name. Returns false if handle is invalid + virtual bool GetConnectionName( HSteamNetConnection hPeer, char *pszName, int nMaxLen ) = 0; + + /// Send a message to the remote host on the specified connection. + /// + /// nSendFlags determines the delivery guarantees that will be provided, + /// when data should be buffered, etc. E.g. k_nSteamNetworkingSend_Unreliable + /// + /// Note that the semantics we use for messages are not precisely + /// the same as the semantics of a standard "stream" socket. + /// (SOCK_STREAM) For an ordinary stream socket, the boundaries + /// between chunks are not considered relevant, and the sizes of + /// the chunks of data written will not necessarily match up to + /// the sizes of the chunks that are returned by the reads on + /// the other end. The remote host might read a partial chunk, + /// or chunks might be coalesced. For the message semantics + /// used here, however, the sizes WILL match. Each send call + /// will match a successful read call on the remote host + /// one-for-one. If you are porting existing stream-oriented + /// code to the semantics of reliable messages, your code should + /// work the same, since reliable message semantics are more + /// strict than stream semantics. The only caveat is related to + /// performance: there is per-message overhead to retain the + /// message sizes, and so if your code sends many small chunks + /// of data, performance will suffer. Any code based on stream + /// sockets that does not write excessively small chunks will + /// work without any changes. + /// + /// The pOutMessageNumber is an optional pointer to receive the + /// message number assigned to the message, if sending was successful. + /// + /// Returns: + /// - k_EResultInvalidParam: invalid connection handle, or the individual message is too big. + /// (See k_cbMaxSteamNetworkingSocketsMessageSizeSend) + /// - k_EResultInvalidState: connection is in an invalid state + /// - k_EResultNoConnection: connection has ended + /// - k_EResultIgnored: You used k_nSteamNetworkingSend_NoDelay, and the message was dropped because + /// we were not ready to send it. + /// - k_EResultLimitExceeded: there was already too much data queued to be sent. + /// (See k_ESteamNetworkingConfig_SendBufferSize) + virtual EResult SendMessageToConnection( HSteamNetConnection hConn, const void *pData, uint32 cbData, int nSendFlags, int64 *pOutMessageNumber ) = 0; + + /// Send one or more messages without copying the message payload. + /// This is the most efficient way to send messages. To use this + /// function, you must first allocate a message object using + /// ISteamNetworkingUtils::AllocateMessage. (Do not declare one + /// on the stack or allocate your own.) + /// + /// You should fill in the message payload. You can either let + /// it allocate the buffer for you and then fill in the payload, + /// or if you already have a buffer allocated, you can just point + /// m_pData at your buffer and set the callback to the appropriate function + /// to free it. Note that if you use your own buffer, it MUST remain valid + /// until the callback is executed. And also note that your callback can be + /// invoked at ant time from any thread (perhaps even before SendMessages + /// returns!), so it MUST be fast and threadsafe. + /// + /// You MUST also fill in: + /// - m_conn - the handle of the connection to send the message to + /// - m_nFlags - bitmask of k_nSteamNetworkingSend_xxx flags. + /// + /// All other fields are currently reserved and should not be modified. + /// + /// The library will take ownership of the message structures. They may + /// be modified or become invalid at any time, so you must not read them + /// after passing them to this function. + /// + /// pOutMessageNumberOrResult is an optional array that will receive, + /// for each message, the message number that was assigned to the message + /// if sending was successful. If sending failed, then a negative EResult + /// value is placed into the array. For example, the array will hold + /// -k_EResultInvalidState if the connection was in an invalid state. + /// See ISteamNetworkingSockets::SendMessageToConnection for possible + /// failure codes. + virtual void SendMessages( int nMessages, SteamNetworkingMessage_t *const *pMessages, int64 *pOutMessageNumberOrResult ) = 0; + + /// Flush any messages waiting on the Nagle timer and send them + /// at the next transmission opportunity (often that means right now). + /// + /// If Nagle is enabled (it's on by default) then when calling + /// SendMessageToConnection the message will be buffered, up to the Nagle time + /// before being sent, to merge small messages into the same packet. + /// (See k_ESteamNetworkingConfig_NagleTime) + /// + /// Returns: + /// k_EResultInvalidParam: invalid connection handle + /// k_EResultInvalidState: connection is in an invalid state + /// k_EResultNoConnection: connection has ended + /// k_EResultIgnored: We weren't (yet) connected, so this operation has no effect. + virtual EResult FlushMessagesOnConnection( HSteamNetConnection hConn ) = 0; + + /// Fetch the next available message(s) from the connection, if any. + /// Returns the number of messages returned into your array, up to nMaxMessages. + /// If the connection handle is invalid, -1 is returned. + /// + /// The order of the messages returned in the array is relevant. + /// Reliable messages will be received in the order they were sent (and with the + /// same sizes --- see SendMessageToConnection for on this subtle difference from a stream socket). + /// + /// Unreliable messages may be dropped, or delivered out of order with respect to + /// each other or with respect to reliable messages. The same unreliable message + /// may be received multiple times. + /// + /// If any messages are returned, you MUST call SteamNetworkingMessage_t::Release() on each + /// of them free up resources after you are done. It is safe to keep the object alive for + /// a little while (put it into some queue, etc), and you may call Release() from any thread. + virtual int ReceiveMessagesOnConnection( HSteamNetConnection hConn, SteamNetworkingMessage_t **ppOutMessages, int nMaxMessages ) = 0; + + /// Returns basic information about the high-level state of the connection. + virtual bool GetConnectionInfo( HSteamNetConnection hConn, SteamNetConnectionInfo_t *pInfo ) = 0; + + /// Returns a small set of information about the real-time state of the connection + /// Returns false if the connection handle is invalid, or the connection has ended. + virtual bool GetQuickConnectionStatus( HSteamNetConnection hConn, SteamNetworkingQuickConnectionStatus *pStats ) = 0; + + /// Returns detailed connection stats in text format. Useful + /// for dumping to a log, etc. + /// + /// Returns: + /// -1 failure (bad connection handle) + /// 0 OK, your buffer was filled in and '\0'-terminated + /// >0 Your buffer was either nullptr, or it was too small and the text got truncated. + /// Try again with a buffer of at least N bytes. + virtual int GetDetailedConnectionStatus( HSteamNetConnection hConn, char *pszBuf, int cbBuf ) = 0; + + /// Returns local IP and port that a listen socket created using CreateListenSocketIP is bound to. + /// + /// An IPv6 address of ::0 means "any IPv4 or IPv6" + /// An IPv6 address of ::ffff:0000:0000 means "any IPv4" + virtual bool GetListenSocketAddress( HSteamListenSocket hSocket, SteamNetworkingIPAddr *address ) = 0; + + /// Create a pair of connections that are talking to each other, e.g. a loopback connection. + /// This is very useful for testing, or so that your client/server code can work the same + /// even when you are running a local "server". + /// + /// The two connections will immediately be placed into the connected state, and no callbacks + /// will be posted immediately. After this, if you close either connection, the other connection + /// will receive a callback, exactly as if they were communicating over the network. You must + /// close *both* sides in order to fully clean up the resources! + /// + /// By default, internal buffers are used, completely bypassing the network, the chopping up of + /// messages into packets, encryption, copying the payload, etc. This means that loopback + /// packets, by default, will not simulate lag or loss. Passing true for bUseNetworkLoopback will + /// cause the socket pair to send packets through the local network loopback device (127.0.0.1) + /// on ephemeral ports. Fake lag and loss are supported in this case, and CPU time is expended + /// to encrypt and decrypt. + /// + /// If you wish to assign a specific identity to either connection, you may pass a particular + /// identity. Otherwise, if you pass nullptr, the respective connection will assume a generic + /// "localhost" identity. If you use real network loopback, this might be translated to the + /// actual bound loopback port. Otherwise, the port will be zero. + virtual bool CreateSocketPair( HSteamNetConnection *pOutConnection1, HSteamNetConnection *pOutConnection2, bool bUseNetworkLoopback, const SteamNetworkingIdentity *pIdentity1, const SteamNetworkingIdentity *pIdentity2 ) = 0; + + /// Get the identity assigned to this interface. + /// E.g. on Steam, this is the user's SteamID, or for the gameserver interface, the SteamID assigned + /// to the gameserver. Returns false and sets the result to an invalid identity if we don't know + /// our identity yet. (E.g. GameServer has not logged in. On Steam, the user will know their SteamID + /// even if they are not signed into Steam.) + virtual bool GetIdentity( SteamNetworkingIdentity *pIdentity ) = 0; + + /// Indicate our desire to be ready participate in authenticated communications. + /// If we are currently not ready, then steps will be taken to obtain the necessary + /// certificates. (This includes a certificate for us, as well as any CA certificates + /// needed to authenticate peers.) + /// + /// You can call this at program init time if you know that you are going to + /// be making authenticated connections, so that we will be ready immediately when + /// those connections are attempted. (Note that essentially all connections require + /// authentication, with the exception of ordinary UDP connections with authentication + /// disabled using k_ESteamNetworkingConfig_IP_AllowWithoutAuth.) If you don't call + /// this function, we will wait until a feature is utilized that that necessitates + /// these resources. + /// + /// You can also call this function to force a retry, if failure has occurred. + /// Once we make an attempt and fail, we will not automatically retry. + /// In this respect, the behavior of the system after trying and failing is the same + /// as before the first attempt: attempting authenticated communication or calling + /// this function will call the system to attempt to acquire the necessary resources. + /// + /// You can use GetAuthenticationStatus or listen for SteamNetAuthenticationStatus_t + /// to monitor the status. + /// + /// Returns the current value that would be returned from GetAuthenticationStatus. + virtual ESteamNetworkingAvailability InitAuthentication() = 0; + + /// Query our readiness to participate in authenticated communications. A + /// SteamNetAuthenticationStatus_t callback is posted any time this status changes, + /// but you can use this function to query it at any time. + /// + /// The value of SteamNetAuthenticationStatus_t::m_eAvail is returned. If you only + /// want this high level status, you can pass NULL for pDetails. If you want further + /// details, pass non-NULL to receive them. + virtual ESteamNetworkingAvailability GetAuthenticationStatus( SteamNetAuthenticationStatus_t *pDetails ) = 0; + + // + // Poll groups. A poll group is a set of connections that can be polled efficiently. + // (In our API, to "poll" a connection means to retrieve all pending messages. We + // actually don't have an API to "poll" the connection *state*, like BSD sockets.) + // + + /// Create a new poll group. + /// + /// You should destroy the poll group when you are done using DestroyPollGroup + virtual HSteamNetPollGroup CreatePollGroup() = 0; + + /// Destroy a poll group created with CreatePollGroup(). + /// + /// If there are any connections in the poll group, they are removed from the group, + /// and left in a state where they are not part of any poll group. + /// Returns false if passed an invalid poll group handle. + virtual bool DestroyPollGroup( HSteamNetPollGroup hPollGroup ) = 0; + + /// Assign a connection to a poll group. Note that a connection may only belong to a + /// single poll group. Adding a connection to a poll group implicitly removes it from + /// any other poll group it is in. + /// + /// You can pass k_HSteamNetPollGroup_Invalid to remove a connection from its current + /// poll group without adding it to a new poll group. + /// + /// If there are received messages currently pending on the connection, an attempt + /// is made to add them to the queue of messages for the poll group in approximately + /// the order that would have applied if the connection was already part of the poll + /// group at the time that the messages were received. + /// + /// Returns false if the connection handle is invalid, or if the poll group handle + /// is invalid (and not k_HSteamNetPollGroup_Invalid). + virtual bool SetConnectionPollGroup( HSteamNetConnection hConn, HSteamNetPollGroup hPollGroup ) = 0; + + /// Same as ReceiveMessagesOnConnection, but will return the next messages available + /// on any connection in the poll group. Examine SteamNetworkingMessage_t::m_conn + /// to know which connection. (SteamNetworkingMessage_t::m_nConnUserData might also + /// be useful.) + /// + /// Delivery order of messages among different connections will usually match the + /// order that the last packet was received which completed the message. But this + /// is not a strong guarantee, especially for packets received right as a connection + /// is being assigned to poll group. + /// + /// Delivery order of messages on the same connection is well defined and the + /// same guarantees are present as mentioned in ReceiveMessagesOnConnection. + /// (But the messages are not grouped by connection, so they will not necessarily + /// appear consecutively in the list; they may be interleaved with messages for + /// other connections.) + virtual int ReceiveMessagesOnPollGroup( HSteamNetPollGroup hPollGroup, SteamNetworkingMessage_t **ppOutMessages, int nMaxMessages ) = 0; + + // + // Clients connecting to dedicated servers hosted in a data center, + // using tickets issued by your game coordinator. If you are not + // issuing your own tickets to restrict who can attempt to connect + // to your server, then you won't use these functions. + // + + /// Call this when you receive a ticket from your backend / matchmaking system. Puts the + /// ticket into a persistent cache, and optionally returns the parsed ticket. + /// + /// See stamdatagram_ticketgen.h for more details. + virtual bool ReceivedRelayAuthTicket( const void *pvTicket, int cbTicket, SteamDatagramRelayAuthTicket *pOutParsedTicket ) = 0; + + /// Search cache for a ticket to talk to the server on the specified virtual port. + /// If found, returns the number of seconds until the ticket expires, and optionally + /// the complete cracked ticket. Returns 0 if we don't have a ticket. + /// + /// Typically this is useful just to confirm that you have a ticket, before you + /// call ConnectToHostedDedicatedServer to connect to the server. + virtual int FindRelayAuthTicketForServer( const SteamNetworkingIdentity &identityGameServer, int nRemoteVirtualPort, SteamDatagramRelayAuthTicket *pOutParsedTicket ) = 0; + + /// Client call to connect to a server hosted in a Valve data center, on the specified virtual + /// port. You must have placed a ticket for this server into the cache, or else this connect + /// attempt will fail! If you are not issuing your own tickets, then to connect to a dedicated + /// server via SDR in auto-ticket mode, use ConnectP2P. (The server must be configured to allow + /// this type of connection by listening using CreateListenSocketP2P.) + /// + /// You may wonder why tickets are stored in a cache, instead of simply being passed as an argument + /// here. The reason is to make reconnection to a gameserver robust, even if the client computer loses + /// connection to Steam or the central backend, or the app is restarted or crashes, etc. + /// + /// If you use this, you probably want to call ISteamNetworkingUtils::InitRelayNetworkAccess() + /// when your app initializes + /// + /// If you need to set any initial config options, pass them here. See + /// SteamNetworkingConfigValue_t for more about why this is preferable to + /// setting the options "immediately" after creation. + virtual HSteamNetConnection ConnectToHostedDedicatedServer( const SteamNetworkingIdentity &identityTarget, int nRemoteVirtualPort, int nOptions, const SteamNetworkingConfigValue_t *pOptions ) = 0; + + // + // Servers hosted in data centers known to the Valve relay network + // + + /// Returns the value of the SDR_LISTEN_PORT environment variable. This + /// is the UDP server your server will be listening on. This will + /// configured automatically for you in production environments. + /// + /// In development, you'll need to set it yourself. See + /// https://partner.steamgames.com/doc/api/ISteamNetworkingSockets + /// for more information on how to configure dev environments. + virtual uint16 GetHostedDedicatedServerPort() = 0; + + /// Returns 0 if SDR_LISTEN_PORT is not set. Otherwise, returns the data center the server + /// is running in. This will be k_SteamDatagramPOPID_dev in non-production environment. + virtual SteamNetworkingPOPID GetHostedDedicatedServerPOPID() = 0; + + /// Return info about the hosted server. This contains the PoPID of the server, + /// and opaque routing information that can be used by the relays to send traffic + /// to your server. + /// + /// You will need to send this information to your backend, and put it in tickets, + /// so that the relays will know how to forward traffic from + /// clients to your server. See SteamDatagramRelayAuthTicket for more info. + /// + /// Also, note that the routing information is contained in SteamDatagramGameCoordinatorServerLogin, + /// so if possible, it's preferred to use GetGameCoordinatorServerLogin to send this info + /// to your game coordinator service, and also login securely at the same time. + /// + /// On a successful exit, k_EResultOK is returned + /// + /// Unsuccessful exit: + /// - Something other than k_EResultOK is returned. + /// - k_EResultInvalidState: We are not configured to listen for SDR (SDR_LISTEN_SOCKET + /// is not set.) + /// - k_EResultPending: we do not (yet) have the authentication information needed. + /// (See GetAuthenticationStatus.) If you use environment variables to pre-fetch + /// the network config, this data should always be available immediately. + /// - A non-localized diagnostic debug message will be placed in m_data that describes + /// the cause of the failure. + /// + /// NOTE: The returned blob is not encrypted. Send it to your backend, but don't + /// directly share it with clients. + virtual EResult GetHostedDedicatedServerAddress( SteamDatagramHostedAddress *pRouting ) = 0; + + /// Create a listen socket on the specified virtual port. The physical UDP port to use + /// will be determined by the SDR_LISTEN_PORT environment variable. If a UDP port is not + /// configured, this call will fail. + /// + /// This call MUST be made through the SteamGameServerNetworkingSockets() interface. + /// + /// This function should be used when you are using the ticket generator library + /// to issue your own tickets. Clients connecting to the server on this virtual + /// port will need a ticket, and they must connect using ConnectToHostedDedicatedServer. + /// + /// If you need to set any initial config options, pass them here. See + /// SteamNetworkingConfigValue_t for more about why this is preferable to + /// setting the options "immediately" after creation. + virtual HSteamListenSocket CreateHostedDedicatedServerListenSocket( int nLocalVirtualPort, int nOptions, const SteamNetworkingConfigValue_t *pOptions ) = 0; + + /// Generate an authentication blob that can be used to securely login with + /// your backend, using SteamDatagram_ParseHostedServerLogin. (See + /// steamdatagram_gamecoordinator.h) + /// + /// Before calling the function: + /// - Populate the app data in pLoginInfo (m_cbAppData and m_appData). You can leave + /// all other fields uninitialized. + /// - *pcbSignedBlob contains the size of the buffer at pBlob. (It should be + /// at least k_cbMaxSteamDatagramGameCoordinatorServerLoginSerialized.) + /// + /// On a successful exit: + /// - k_EResultOK is returned + /// - All of the remaining fields of pLoginInfo will be filled out. + /// - *pcbSignedBlob contains the size of the serialized blob that has been + /// placed into pBlob. + /// + /// Unsuccessful exit: + /// - Something other than k_EResultOK is returned. + /// - k_EResultNotLoggedOn: you are not logged in (yet) + /// - See GetHostedDedicatedServerAddress for more potential failure return values. + /// - A non-localized diagnostic debug message will be placed in pBlob that describes + /// the cause of the failure. + /// + /// This works by signing the contents of the SteamDatagramGameCoordinatorServerLogin + /// with the cert that is issued to this server. In dev environments, it's OK if you do + /// not have a cert. (You will need to enable insecure dev login in SteamDatagram_ParseHostedServerLogin.) + /// Otherwise, you will need a signed cert. + /// + /// NOTE: The routing blob returned here is not encrypted. Send it to your backend + /// and don't share it directly with clients. + virtual EResult GetGameCoordinatorServerLogin( SteamDatagramGameCoordinatorServerLogin *pLoginInfo, int *pcbSignedBlob, void *pBlob ) = 0; + + + // + // Relayed connections using custom signaling protocol + // + // This is used if you have your own method of sending out-of-band + // signaling / rendezvous messages through a mutually trusted channel. + // + + /// Create a P2P "client" connection that does signaling over a custom + /// rendezvous/signaling channel. + /// + /// pSignaling points to a new object that you create just for this connection. + /// It must stay valid until Release() is called. Once you pass the + /// object to this function, it assumes ownership. Release() will be called + /// from within the function call if the call fails. Furthermore, until Release() + /// is called, you should be prepared for methods to be invoked on your + /// object from any thread! You need to make sure your object is threadsafe! + /// Furthermore, you should make sure that dispatching the methods is done + /// as quickly as possible. + /// + /// This function will immediately construct a connection in the "connecting" + /// state. Soon after (perhaps before this function returns, perhaps in another thread), + /// the connection will begin sending signaling messages by calling + /// ISteamNetworkingConnectionSignaling::SendSignal. + /// + /// When the remote peer accepts the connection (See + /// ISteamNetworkingSignalingRecvContext::OnConnectRequest), + /// it will begin sending signaling messages. When these messages are received, + /// you can pass them to the connection using ReceivedP2PCustomSignal. + /// + /// If you know the identity of the peer that you expect to be on the other end, + /// you can pass their identity to improve debug output or just detect bugs. + /// If you don't know their identity yet, you can pass NULL, and their + /// identity will be established in the connection handshake. + /// + /// If you use this, you probably want to call ISteamNetworkingUtils::InitRelayNetworkAccess() + /// when your app initializes + /// + /// If you need to set any initial config options, pass them here. See + /// SteamNetworkingConfigValue_t for more about why this is preferable to + /// setting the options "immediately" after creation. + virtual HSteamNetConnection ConnectP2PCustomSignaling( ISteamNetworkingConnectionSignaling *pSignaling, const SteamNetworkingIdentity *pPeerIdentity, int nRemoteVirtualPort, int nOptions, const SteamNetworkingConfigValue_t *pOptions ) = 0; + + /// Called when custom signaling has received a message. When your + /// signaling channel receives a message, it should save off whatever + /// routing information was in the envelope into the context object, + /// and then pass the payload to this function. + /// + /// A few different things can happen next, depending on the message: + /// + /// - If the signal is associated with existing connection, it is dealt + /// with immediately. If any replies need to be sent, they will be + /// dispatched using the ISteamNetworkingConnectionSignaling + /// associated with the connection. + /// - If the message represents a connection request (and the request + /// is not redundant for an existing connection), a new connection + /// will be created, and ReceivedConnectRequest will be called on your + /// context object to determine how to proceed. + /// - Otherwise, the message is for a connection that does not + /// exist (anymore). In this case, we *may* call SendRejectionReply + /// on your context object. + /// + /// In any case, we will not save off pContext or access it after this + /// function returns. + /// + /// Returns true if the message was parsed and dispatched without anything + /// unusual or suspicious happening. Returns false if there was some problem + /// with the message that prevented ordinary handling. (Debug output will + /// usually have more information.) + /// + /// If you expect to be using relayed connections, then you probably want + /// to call ISteamNetworkingUtils::InitRelayNetworkAccess() when your app initializes + virtual bool ReceivedP2PCustomSignal( const void *pMsg, int cbMsg, ISteamNetworkingSignalingRecvContext *pContext ) = 0; + +// +// Certificate provision by the application. On Steam, we normally handle all this automatically +// and you will not need to use these advanced functions. +// + + /// Get blob that describes a certificate request. You can send this to your game coordinator. + /// Upon entry, *pcbBlob should contain the size of the buffer. On successful exit, it will + /// return the number of bytes that were populated. You can pass pBlob=NULL to query for the required + /// size. (256 bytes is a very conservative estimate.) + /// + /// Pass this blob to your game coordinator and call SteamDatagram_CreateCert. + virtual bool GetCertificateRequest( int *pcbBlob, void *pBlob, SteamNetworkingErrMsg &errMsg ) = 0; + + /// Set the certificate. The certificate blob should be the output of + /// SteamDatagram_CreateCert. + virtual bool SetCertificate( const void *pCertificate, int cbCertificate, SteamNetworkingErrMsg &errMsg ) = 0; + + /// Invoke all callback functions queued for this interface. + /// See k_ESteamNetworkingConfig_Callback_ConnectionStatusChanged, etc + /// + /// You don't need to call this if you are using Steam's callback dispatch + /// mechanism (SteamAPI_RunCallbacks and SteamGameserver_RunCallbacks). + virtual void RunCallbacks() = 0; +protected: + ~ISteamNetworkingSockets(); // Silence some warnings +}; +#define STEAMNETWORKINGSOCKETS_INTERFACE_VERSION "SteamNetworkingSockets009" + +// Global accessors +// Using standalone lib +#ifdef STEAMNETWORKINGSOCKETS_STANDALONELIB + + // Standalone lib. + static_assert( STEAMNETWORKINGSOCKETS_INTERFACE_VERSION[24] == '9', "Version mismatch" ); + STEAMNETWORKINGSOCKETS_INTERFACE ISteamNetworkingSockets *SteamNetworkingSockets_LibV9(); + inline ISteamNetworkingSockets *SteamNetworkingSockets_Lib() { return SteamNetworkingSockets_LibV9(); } + + // If running in context of steam, we also define a gameserver instance. + #ifdef STEAMNETWORKINGSOCKETS_STEAM + STEAMNETWORKINGSOCKETS_INTERFACE ISteamNetworkingSockets *SteamGameServerNetworkingSockets_LibV9(); + inline ISteamNetworkingSockets *SteamGameServerNetworkingSockets_Lib() { return SteamGameServerNetworkingSockets_LibV9(); } + #endif + + #ifndef STEAMNETWORKINGSOCKETS_STEAMAPI + inline ISteamNetworkingSockets *SteamNetworkingSockets() { return SteamNetworkingSockets_LibV9(); } + #ifdef STEAMNETWORKINGSOCKETS_STEAM + inline ISteamNetworkingSockets *SteamGameServerNetworkingSockets() { return SteamGameServerNetworkingSockets_LibV9(); } + #endif + #endif +#endif + +// Using Steamworks SDK +#ifdef STEAMNETWORKINGSOCKETS_STEAMAPI + + // Steamworks SDK + STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamNetworkingSockets *, SteamNetworkingSockets_SteamAPI, STEAMNETWORKINGSOCKETS_INTERFACE_VERSION ); + STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( ISteamNetworkingSockets *, SteamGameServerNetworkingSockets_SteamAPI, STEAMNETWORKINGSOCKETS_INTERFACE_VERSION ); + + #ifndef STEAMNETWORKINGSOCKETS_STANDALONELIB + inline ISteamNetworkingSockets *SteamNetworkingSockets() { return SteamNetworkingSockets_SteamAPI(); } + inline ISteamNetworkingSockets *SteamGameServerNetworkingSockets() { return SteamGameServerNetworkingSockets_SteamAPI(); } + #endif +#endif + +/// Callback struct used to notify when a connection has changed state +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error "Must define VALVE_CALLBACK_PACK_SMALL or VALVE_CALLBACK_PACK_LARGE" +#endif + +/// This callback is posted whenever a connection is created, destroyed, or changes state. +/// The m_info field will contain a complete description of the connection at the time the +/// change occurred and the callback was posted. In particular, m_eState will have the +/// new connection state. +/// +/// You will usually need to listen for this callback to know when: +/// - A new connection arrives on a listen socket. +/// m_info.m_hListenSocket will be set, m_eOldState = k_ESteamNetworkingConnectionState_None, +/// and m_info.m_eState = k_ESteamNetworkingConnectionState_Connecting. +/// See ISteamNetworkigSockets::AcceptConnection. +/// - A connection you initiated has been accepted by the remote host. +/// m_eOldState = k_ESteamNetworkingConnectionState_Connecting, and +/// m_info.m_eState = k_ESteamNetworkingConnectionState_Connected. +/// Some connections might transition to k_ESteamNetworkingConnectionState_FindingRoute first. +/// - A connection has been actively rejected or closed by the remote host. +/// m_eOldState = k_ESteamNetworkingConnectionState_Connecting or k_ESteamNetworkingConnectionState_Connected, +/// and m_info.m_eState = k_ESteamNetworkingConnectionState_ClosedByPeer. m_info.m_eEndReason +/// and m_info.m_szEndDebug will have for more details. +/// NOTE: upon receiving this callback, you must still destroy the connection using +/// ISteamNetworkingSockets::CloseConnection to free up local resources. (The details +/// passed to the function are not used in this case, since the connection is already closed.) +/// - A problem was detected with the connection, and it has been closed by the local host. +/// The most common failure is timeout, but other configuration or authentication failures +/// can cause this. m_eOldState = k_ESteamNetworkingConnectionState_Connecting or +/// k_ESteamNetworkingConnectionState_Connected, and m_info.m_eState = k_ESteamNetworkingConnectionState_ProblemDetectedLocally. +/// m_info.m_eEndReason and m_info.m_szEndDebug will have for more details. +/// NOTE: upon receiving this callback, you must still destroy the connection using +/// ISteamNetworkingSockets::CloseConnection to free up local resources. (The details +/// passed to the function are not used in this case, since the connection is already closed.) +/// +/// Remember that callbacks are posted to a queue, and networking connections can +/// change at any time. It is possible that the connection has already changed +/// state by the time you process this callback. +/// +/// Also note that callbacks will be posted when connections are created and destroyed by your own API calls. +struct SteamNetConnectionStatusChangedCallback_t +{ + enum { k_iCallback = k_iSteamNetworkingSocketsCallbacks + 1 }; + + /// Connection handle + HSteamNetConnection m_hConn; + + /// Full connection info + SteamNetConnectionInfo_t m_info; + + /// Previous state. (Current state is in m_info.m_eState) + ESteamNetworkingConnectionState m_eOldState; +}; + +/// A struct used to describe our readiness to participate in authenticated, +/// encrypted communication. In order to do this we need: +/// +/// - The list of trusted CA certificates that might be relevant for this +/// app. +/// - A valid certificate issued by a CA. +/// +/// This callback is posted whenever the state of our readiness changes. +struct SteamNetAuthenticationStatus_t +{ + enum { k_iCallback = k_iSteamNetworkingSocketsCallbacks + 2 }; + + /// Status + ESteamNetworkingAvailability m_eAvail; + + /// Non-localized English language status. For diagnostic/debugging + /// purposes only. + char m_debugMsg[ 256 ]; +}; + +#pragma pack( pop ) + +#endif // ISTEAMNETWORKINGSOCKETS diff --git a/lib/steam/public/steam/isteamnetworkingutils.h b/lib/steam/public/steam/isteamnetworkingutils.h new file mode 100644 index 0000000..77f9975 --- /dev/null +++ b/lib/steam/public/steam/isteamnetworkingutils.h @@ -0,0 +1,458 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== +// +// Purpose: misc networking utilities +// +//============================================================================= + +#ifndef ISTEAMNETWORKINGUTILS +#define ISTEAMNETWORKINGUTILS +#pragma once + +#include "steamnetworkingtypes.h" +#include "steam_api_common.h" + +struct SteamDatagramRelayAuthTicket; +struct SteamRelayNetworkStatus_t; + +//----------------------------------------------------------------------------- +/// Misc networking utilities for checking the local networking environment +/// and estimating pings. +class ISteamNetworkingUtils +{ +public: + // + // Efficient message sending + // + + /// Allocate and initialize a message object. Usually the reason + /// you call this is to pass it to ISteamNetworkingSockets::SendMessages. + /// The returned object will have all of the relevant fields cleared to zero. + /// + /// Optionally you can also request that this system allocate space to + /// hold the payload itself. If cbAllocateBuffer is nonzero, the system + /// will allocate memory to hold a payload of at least cbAllocateBuffer bytes. + /// m_pData will point to the allocated buffer, m_cbSize will be set to the + /// size, and m_pfnFreeData will be set to the proper function to free up + /// the buffer. + /// + /// If cbAllocateBuffer=0, then no buffer is allocated. m_pData will be NULL, + /// m_cbSize will be zero, and m_pfnFreeData will be NULL. You will need to + /// set each of these. + virtual SteamNetworkingMessage_t *AllocateMessage( int cbAllocateBuffer ) = 0; + + // + // Access to Steam Datagram Relay (SDR) network + // + + // + // Initialization and status check + // + + /// If you know that you are going to be using the relay network (for example, + /// because you anticipate making P2P connections), call this to initialize the + /// relay network. If you do not call this, the initialization will + /// be delayed until the first time you use a feature that requires access + /// to the relay network, which will delay that first access. + /// + /// You can also call this to force a retry if the previous attempt has failed. + /// Performing any action that requires access to the relay network will also + /// trigger a retry, and so calling this function is never strictly necessary, + /// but it can be useful to call it a program launch time, if access to the + /// relay network is anticipated. + /// + /// Use GetRelayNetworkStatus or listen for SteamRelayNetworkStatus_t + /// callbacks to know when initialization has completed. + /// Typically initialization completes in a few seconds. + /// + /// Note: dedicated servers hosted in known data centers do *not* need + /// to call this, since they do not make routing decisions. However, if + /// the dedicated server will be using P2P functionality, it will act as + /// a "client" and this should be called. + inline void InitRelayNetworkAccess(); + + /// Fetch current status of the relay network. + /// + /// SteamRelayNetworkStatus_t is also a callback. It will be triggered on + /// both the user and gameserver interfaces any time the status changes, or + /// ping measurement starts or stops. + /// + /// SteamRelayNetworkStatus_t::m_eAvail is returned. If you want + /// more details, you can pass a non-NULL value. + virtual ESteamNetworkingAvailability GetRelayNetworkStatus( SteamRelayNetworkStatus_t *pDetails ) = 0; + + // + // "Ping location" functions + // + // We use the ping times to the valve relays deployed worldwide to + // generate a "marker" that describes the location of an Internet host. + // Given two such markers, we can estimate the network latency between + // two hosts, without sending any packets. The estimate is based on the + // optimal route that is found through the Valve network. If you are + // using the Valve network to carry the traffic, then this is precisely + // the ping you want. If you are not, then the ping time will probably + // still be a reasonable estimate. + // + // This is extremely useful to select peers for matchmaking! + // + // The markers can also be converted to a string, so they can be transmitted. + // We have a separate library you can use on your app's matchmaking/coordinating + // server to manipulate these objects. (See steamdatagram_gamecoordinator.h) + + /// Return location info for the current host. Returns the approximate + /// age of the data, in seconds, or -1 if no data is available. + /// + /// It takes a few seconds to initialize access to the relay network. If + /// you call this very soon after calling InitRelayNetworkAccess, + /// the data may not be available yet. + /// + /// This always return the most up-to-date information we have available + /// right now, even if we are in the middle of re-calculating ping times. + virtual float GetLocalPingLocation( SteamNetworkPingLocation_t &result ) = 0; + + /// Estimate the round-trip latency between two arbitrary locations, in + /// milliseconds. This is a conservative estimate, based on routing through + /// the relay network. For most basic relayed connections, this ping time + /// will be pretty accurate, since it will be based on the route likely to + /// be actually used. + /// + /// If a direct IP route is used (perhaps via NAT traversal), then the route + /// will be different, and the ping time might be better. Or it might actually + /// be a bit worse! Standard IP routing is frequently suboptimal! + /// + /// But even in this case, the estimate obtained using this method is a + /// reasonable upper bound on the ping time. (Also it has the advantage + /// of returning immediately and not sending any packets.) + /// + /// In a few cases we might not able to estimate the route. In this case + /// a negative value is returned. k_nSteamNetworkingPing_Failed means + /// the reason was because of some networking difficulty. (Failure to + /// ping, etc) k_nSteamNetworkingPing_Unknown is returned if we cannot + /// currently answer the question for some other reason. + /// + /// Do you need to be able to do this from a backend/matchmaking server? + /// You are looking for the "ticketgen" library. + virtual int EstimatePingTimeBetweenTwoLocations( const SteamNetworkPingLocation_t &location1, const SteamNetworkPingLocation_t &location2 ) = 0; + + /// Same as EstimatePingTime, but assumes that one location is the local host. + /// This is a bit faster, especially if you need to calculate a bunch of + /// these in a loop to find the fastest one. + /// + /// In rare cases this might return a slightly different estimate than combining + /// GetLocalPingLocation with EstimatePingTimeBetweenTwoLocations. That's because + /// this function uses a slightly more complete set of information about what + /// route would be taken. + virtual int EstimatePingTimeFromLocalHost( const SteamNetworkPingLocation_t &remoteLocation ) = 0; + + /// Convert a ping location into a text format suitable for sending over the wire. + /// The format is a compact and human readable. However, it is subject to change + /// so please do not parse it yourself. Your buffer must be at least + /// k_cchMaxSteamNetworkingPingLocationString bytes. + virtual void ConvertPingLocationToString( const SteamNetworkPingLocation_t &location, char *pszBuf, int cchBufSize ) = 0; + + /// Parse back SteamNetworkPingLocation_t string. Returns false if we couldn't understand + /// the string. + virtual bool ParsePingLocationString( const char *pszString, SteamNetworkPingLocation_t &result ) = 0; + + /// Check if the ping data of sufficient recency is available, and if + /// it's too old, start refreshing it. + /// + /// Please only call this function when you *really* do need to force an + /// immediate refresh of the data. (For example, in response to a specific + /// user input to refresh this information.) Don't call it "just in case", + /// before every connection, etc. That will cause extra traffic to be sent + /// for no benefit. The library will automatically refresh the information + /// as needed. + /// + /// Returns true if sufficiently recent data is already available. + /// + /// Returns false if sufficiently recent data is not available. In this + /// case, ping measurement is initiated, if it is not already active. + /// (You cannot restart a measurement already in progress.) + /// + /// You can use GetRelayNetworkStatus or listen for SteamRelayNetworkStatus_t + /// to know when ping measurement completes. + virtual bool CheckPingDataUpToDate( float flMaxAgeSeconds ) = 0; + + // + // List of Valve data centers, and ping times to them. This might + // be useful to you if you are use our hosting, or just need to measure + // latency to a cloud data center where we are running relays. + // + + /// Fetch ping time of best available relayed route from this host to + /// the specified data center. + virtual int GetPingToDataCenter( SteamNetworkingPOPID popID, SteamNetworkingPOPID *pViaRelayPoP ) = 0; + + /// Get *direct* ping time to the relays at the data center. + virtual int GetDirectPingToPOP( SteamNetworkingPOPID popID ) = 0; + + /// Get number of network points of presence in the config + virtual int GetPOPCount() = 0; + + /// Get list of all POP IDs. Returns the number of entries that were filled into + /// your list. + virtual int GetPOPList( SteamNetworkingPOPID *list, int nListSz ) = 0; + + // + // Misc + // + + /// Fetch current timestamp. This timer has the following properties: + /// + /// - Monotonicity is guaranteed. + /// - The initial value will be at least 24*3600*30*1e6, i.e. about + /// 30 days worth of microseconds. In this way, the timestamp value of + /// 0 will always be at least "30 days ago". Also, negative numbers + /// will never be returned. + /// - Wraparound / overflow is not a practical concern. + /// + /// If you are running under the debugger and stop the process, the clock + /// might not advance the full wall clock time that has elapsed between + /// calls. If the process is not blocked from normal operation, the + /// timestamp values will track wall clock time, even if you don't call + /// the function frequently. + /// + /// The value is only meaningful for this run of the process. Don't compare + /// it to values obtained on another computer, or other runs of the same process. + virtual SteamNetworkingMicroseconds GetLocalTimestamp() = 0; + + /// Set a function to receive network-related information that is useful for debugging. + /// This can be very useful during development, but it can also be useful for troubleshooting + /// problems with tech savvy end users. If you have a console or other log that customers + /// can examine, these log messages can often be helpful to troubleshoot network issues. + /// (Especially any warning/error messages.) + /// + /// The detail level indicates what message to invoke your callback on. Lower numeric + /// value means more important, and the value you pass is the lowest priority (highest + /// numeric value) you wish to receive callbacks for. + /// + /// The value here controls the detail level for most messages. You can control the + /// detail level for various subsystems (perhaps only for certain connections) by + /// adjusting the configuration values k_ESteamNetworkingConfig_LogLevel_Xxxxx. + /// + /// Except when debugging, you should only use k_ESteamNetworkingSocketsDebugOutputType_Msg + /// or k_ESteamNetworkingSocketsDebugOutputType_Warning. For best performance, do NOT + /// request a high detail level and then filter out messages in your callback. This incurs + /// all of the expense of formatting the messages, which are then discarded. Setting a high + /// priority value (low numeric value) here allows the library to avoid doing this work. + /// + /// IMPORTANT: This may be called from a service thread, while we own a mutex, etc. + /// Your output function must be threadsafe and fast! Do not make any other + /// Steamworks calls from within the handler. + virtual void SetDebugOutputFunction( ESteamNetworkingSocketsDebugOutputType eDetailLevel, FSteamNetworkingSocketsDebugOutput pfnFunc ) = 0; + + // + // Set and get configuration values, see ESteamNetworkingConfigValue for individual descriptions. + // + + // Shortcuts for common cases. (Implemented as inline functions below) + bool SetGlobalConfigValueInt32( ESteamNetworkingConfigValue eValue, int32 val ); + bool SetGlobalConfigValueFloat( ESteamNetworkingConfigValue eValue, float val ); + bool SetGlobalConfigValueString( ESteamNetworkingConfigValue eValue, const char *val ); + bool SetGlobalConfigValuePtr( ESteamNetworkingConfigValue eValue, void *val ); + bool SetConnectionConfigValueInt32( HSteamNetConnection hConn, ESteamNetworkingConfigValue eValue, int32 val ); + bool SetConnectionConfigValueFloat( HSteamNetConnection hConn, ESteamNetworkingConfigValue eValue, float val ); + bool SetConnectionConfigValueString( HSteamNetConnection hConn, ESteamNetworkingConfigValue eValue, const char *val ); + + // + // Set global callbacks. If you do not want to use Steam's callback dispatch mechanism and you + // want to use the same callback on all (or most) listen sockets and connections, then + // simply install these callbacks first thing, and you are good to go. + // See ISteamNetworkingSockets::RunCallbacks + // + bool SetGlobalCallback_SteamNetConnectionStatusChanged( FnSteamNetConnectionStatusChanged fnCallback ); + bool SetGlobalCallback_SteamNetAuthenticationStatusChanged( FnSteamNetAuthenticationStatusChanged fnCallback ); + bool SetGlobalCallback_SteamRelayNetworkStatusChanged( FnSteamRelayNetworkStatusChanged fnCallback ); + bool SetGlobalCallback_MessagesSessionRequest( FnSteamNetworkingMessagesSessionRequest fnCallback ); + bool SetGlobalCallback_MessagesSessionFailed( FnSteamNetworkingMessagesSessionFailed fnCallback ); + + /// Set a configuration value. + /// - eValue: which value is being set + /// - eScope: Onto what type of object are you applying the setting? + /// - scopeArg: Which object you want to change? (Ignored for global scope). E.g. connection handle, listen socket handle, interface pointer, etc. + /// - eDataType: What type of data is in the buffer at pValue? This must match the type of the variable exactly! + /// - pArg: Value to set it to. You can pass NULL to remove a non-global setting at this scope, + /// causing the value for that object to use global defaults. Or at global scope, passing NULL + /// will reset any custom value and restore it to the system default. + /// NOTE: When setting pointers (e.g. callback functions), do not pass the function pointer directly. + /// Your argument should be a pointer to a function pointer. + virtual bool SetConfigValue( ESteamNetworkingConfigValue eValue, ESteamNetworkingConfigScope eScopeType, intptr_t scopeObj, + ESteamNetworkingConfigDataType eDataType, const void *pArg ) = 0; + + /// Set a configuration value, using a struct to pass the value. + /// (This is just a convenience shortcut; see below for the implementation and + /// a little insight into how SteamNetworkingConfigValue_t is used when + /// setting config options during listen socket and connection creation.) + bool SetConfigValueStruct( const SteamNetworkingConfigValue_t &opt, ESteamNetworkingConfigScope eScopeType, intptr_t scopeObj ); + + /// Get a configuration value. + /// - eValue: which value to fetch + /// - eScopeType: query setting on what type of object + /// - eScopeArg: the object to query the setting for + /// - pOutDataType: If non-NULL, the data type of the value is returned. + /// - pResult: Where to put the result. Pass NULL to query the required buffer size. (k_ESteamNetworkingGetConfigValue_BufferTooSmall will be returned.) + /// - cbResult: IN: the size of your buffer. OUT: the number of bytes filled in or required. + virtual ESteamNetworkingGetConfigValueResult GetConfigValue( ESteamNetworkingConfigValue eValue, ESteamNetworkingConfigScope eScopeType, intptr_t scopeObj, + ESteamNetworkingConfigDataType *pOutDataType, void *pResult, size_t *cbResult ) = 0; + + /// Returns info about a configuration value. Returns false if the value does not exist. + /// pOutNextValue can be used to iterate through all of the known configuration values. + /// (Use GetFirstConfigValue() to begin the iteration, will be k_ESteamNetworkingConfig_Invalid on the last value) + /// Any of the output parameters can be NULL if you do not need that information. + /// + /// See k_ESteamNetworkingConfig_EnumerateDevVars for some more info about "dev" variables, + /// which are usually excluded from the set of variables enumerated using this function. + virtual bool GetConfigValueInfo( ESteamNetworkingConfigValue eValue, const char **pOutName, ESteamNetworkingConfigDataType *pOutDataType, ESteamNetworkingConfigScope *pOutScope, ESteamNetworkingConfigValue *pOutNextValue ) = 0; + + /// Return the lowest numbered configuration value available in the current environment. + virtual ESteamNetworkingConfigValue GetFirstConfigValue() = 0; + + // String conversions. You'll usually access these using the respective + // inline methods. + virtual void SteamNetworkingIPAddr_ToString( const SteamNetworkingIPAddr &addr, char *buf, size_t cbBuf, bool bWithPort ) = 0; + virtual bool SteamNetworkingIPAddr_ParseString( SteamNetworkingIPAddr *pAddr, const char *pszStr ) = 0; + virtual void SteamNetworkingIdentity_ToString( const SteamNetworkingIdentity &identity, char *buf, size_t cbBuf ) = 0; + virtual bool SteamNetworkingIdentity_ParseString( SteamNetworkingIdentity *pIdentity, const char *pszStr ) = 0; + +protected: + ~ISteamNetworkingUtils(); // Silence some warnings +}; +#define STEAMNETWORKINGUTILS_INTERFACE_VERSION "SteamNetworkingUtils003" + +// Global accessors +// Using standalone lib +#ifdef STEAMNETWORKINGSOCKETS_STANDALONELIB + + // Standalone lib + static_assert( STEAMNETWORKINGUTILS_INTERFACE_VERSION[22] == '3', "Version mismatch" ); + STEAMNETWORKINGSOCKETS_INTERFACE ISteamNetworkingUtils *SteamNetworkingUtils_LibV3(); + inline ISteamNetworkingUtils *SteamNetworkingUtils_Lib() { return SteamNetworkingUtils_LibV3(); } + + #ifndef STEAMNETWORKINGSOCKETS_STEAMAPI + inline ISteamNetworkingUtils *SteamNetworkingUtils() { return SteamNetworkingUtils_LibV3(); } + #endif +#endif + +// Using Steamworks SDK +#ifdef STEAMNETWORKINGSOCKETS_STEAMAPI + STEAM_DEFINE_INTERFACE_ACCESSOR( ISteamNetworkingUtils *, SteamNetworkingUtils_SteamAPI, + /* Prefer user version of the interface. But if it isn't found, then use + gameserver one. Yes, this is a completely terrible hack */ + SteamInternal_FindOrCreateUserInterface( 0, STEAMNETWORKINGUTILS_INTERFACE_VERSION ) ? + SteamInternal_FindOrCreateUserInterface( 0, STEAMNETWORKINGUTILS_INTERFACE_VERSION ) : + SteamInternal_FindOrCreateGameServerInterface( 0, STEAMNETWORKINGUTILS_INTERFACE_VERSION ), + "global", + STEAMNETWORKINGUTILS_INTERFACE_VERSION + ) + + #ifndef STEAMNETWORKINGSOCKETS_STANDALONELIB + inline ISteamNetworkingUtils *SteamNetworkingUtils() { return SteamNetworkingUtils_SteamAPI(); } + #endif +#endif + +/// A struct used to describe our readiness to use the relay network. +/// To do this we first need to fetch the network configuration, +/// which describes what POPs are available. +struct SteamRelayNetworkStatus_t +{ + enum { k_iCallback = k_iSteamNetworkingUtilsCallbacks + 1 }; + + /// Summary status. When this is "current", initialization has + /// completed. Anything else means you are not ready yet, or + /// there is a significant problem. + ESteamNetworkingAvailability m_eAvail; + + /// Nonzero if latency measurement is in progress (or pending, + /// awaiting a prerequisite). + int m_bPingMeasurementInProgress; + + /// Status obtaining the network config. This is a prerequisite + /// for relay network access. + /// + /// Failure to obtain the network config almost always indicates + /// a problem with the local internet connection. + ESteamNetworkingAvailability m_eAvailNetworkConfig; + + /// Current ability to communicate with ANY relay. Note that + /// the complete failure to communicate with any relays almost + /// always indicates a problem with the local Internet connection. + /// (However, just because you can reach a single relay doesn't + /// mean that the local connection is in perfect health.) + ESteamNetworkingAvailability m_eAvailAnyRelay; + + /// Non-localized English language status. For diagnostic/debugging + /// purposes only. + char m_debugMsg[ 256 ]; +}; + +/// Utility class for printing a SteamNetworkingIdentity. +/// E.g. printf( "Identity is '%s'\n", SteamNetworkingIdentityRender( identity ).c_str() ); +struct SteamNetworkingIdentityRender +{ + SteamNetworkingIdentityRender( const SteamNetworkingIdentity &x ) { x.ToString( buf, sizeof(buf) ); } + inline const char *c_str() const { return buf; } +private: + char buf[ SteamNetworkingIdentity::k_cchMaxString ]; +}; + +/// Utility class for printing a SteamNetworkingIPAddrRender. +struct SteamNetworkingIPAddrRender +{ + SteamNetworkingIPAddrRender( const SteamNetworkingIPAddr &x, bool bWithPort = true ) { x.ToString( buf, sizeof(buf), bWithPort ); } + inline const char *c_str() const { return buf; } +private: + char buf[ SteamNetworkingIPAddr::k_cchMaxString ]; +}; + +/////////////////////////////////////////////////////////////////////////////// +// +// Internal stuff + +inline void ISteamNetworkingUtils::InitRelayNetworkAccess() { CheckPingDataUpToDate( 1e10f ); } +inline bool ISteamNetworkingUtils::SetGlobalConfigValueInt32( ESteamNetworkingConfigValue eValue, int32 val ) { return SetConfigValue( eValue, k_ESteamNetworkingConfig_Global, 0, k_ESteamNetworkingConfig_Int32, &val ); } +inline bool ISteamNetworkingUtils::SetGlobalConfigValueFloat( ESteamNetworkingConfigValue eValue, float val ) { return SetConfigValue( eValue, k_ESteamNetworkingConfig_Global, 0, k_ESteamNetworkingConfig_Float, &val ); } +inline bool ISteamNetworkingUtils::SetGlobalConfigValueString( ESteamNetworkingConfigValue eValue, const char *val ) { return SetConfigValue( eValue, k_ESteamNetworkingConfig_Global, 0, k_ESteamNetworkingConfig_String, val ); } +inline bool ISteamNetworkingUtils::SetGlobalConfigValuePtr( ESteamNetworkingConfigValue eValue, void *val ) { return SetConfigValue( eValue, k_ESteamNetworkingConfig_Global, 0, k_ESteamNetworkingConfig_Ptr, &val ); } // Note: passing pointer to pointer. +inline bool ISteamNetworkingUtils::SetConnectionConfigValueInt32( HSteamNetConnection hConn, ESteamNetworkingConfigValue eValue, int32 val ) { return SetConfigValue( eValue, k_ESteamNetworkingConfig_Connection, hConn, k_ESteamNetworkingConfig_Int32, &val ); } +inline bool ISteamNetworkingUtils::SetConnectionConfigValueFloat( HSteamNetConnection hConn, ESteamNetworkingConfigValue eValue, float val ) { return SetConfigValue( eValue, k_ESteamNetworkingConfig_Connection, hConn, k_ESteamNetworkingConfig_Float, &val ); } +inline bool ISteamNetworkingUtils::SetConnectionConfigValueString( HSteamNetConnection hConn, ESteamNetworkingConfigValue eValue, const char *val ) { return SetConfigValue( eValue, k_ESteamNetworkingConfig_Connection, hConn, k_ESteamNetworkingConfig_String, val ); } +inline bool ISteamNetworkingUtils::SetGlobalCallback_SteamNetConnectionStatusChanged( FnSteamNetConnectionStatusChanged fnCallback ) { return SetGlobalConfigValuePtr( k_ESteamNetworkingConfig_Callback_ConnectionStatusChanged, (void*)fnCallback ); } +inline bool ISteamNetworkingUtils::SetGlobalCallback_SteamNetAuthenticationStatusChanged( FnSteamNetAuthenticationStatusChanged fnCallback ) { return SetGlobalConfigValuePtr( k_ESteamNetworkingConfig_Callback_AuthStatusChanged, (void*)fnCallback ); } +inline bool ISteamNetworkingUtils::SetGlobalCallback_SteamRelayNetworkStatusChanged( FnSteamRelayNetworkStatusChanged fnCallback ) { return SetGlobalConfigValuePtr( k_ESteamNetworkingConfig_Callback_RelayNetworkStatusChanged, (void*)fnCallback ); } +inline bool ISteamNetworkingUtils::SetGlobalCallback_MessagesSessionRequest( FnSteamNetworkingMessagesSessionRequest fnCallback ) { return SetGlobalConfigValuePtr( k_ESteamNetworkingConfig_Callback_MessagesSessionRequest, (void*)fnCallback ); } +inline bool ISteamNetworkingUtils::SetGlobalCallback_MessagesSessionFailed( FnSteamNetworkingMessagesSessionFailed fnCallback ) { return SetGlobalConfigValuePtr( k_ESteamNetworkingConfig_Callback_MessagesSessionFailed, (void*)fnCallback ); } + +inline bool ISteamNetworkingUtils::SetConfigValueStruct( const SteamNetworkingConfigValue_t &opt, ESteamNetworkingConfigScope eScopeType, intptr_t scopeObj ) +{ + // Locate the argument. Strings are a special case, since the + // "value" (the whole string buffer) doesn't fit in the struct + // NOTE: for pointer values, we pass a pointer to the pointer, + // we do not pass the pointer directly. + const void *pVal = ( opt.m_eDataType == k_ESteamNetworkingConfig_String ) ? (const void *)opt.m_val.m_string : (const void *)&opt.m_val; + return SetConfigValue( opt.m_eValue, eScopeType, scopeObj, opt.m_eDataType, pVal ); +} + +// How to get helper functions. +#if defined( STEAMNETWORKINGSOCKETS_STATIC_LINK ) || defined( STEAMNETWORKINGSOCKETS_STANDALONELIB ) + + // Call direct to static functions + STEAMNETWORKINGSOCKETS_INTERFACE void SteamNetworkingIPAddr_ToString( const SteamNetworkingIPAddr *pAddr, char *buf, size_t cbBuf, bool bWithPort ); + STEAMNETWORKINGSOCKETS_INTERFACE bool SteamNetworkingIPAddr_ParseString( SteamNetworkingIPAddr *pAddr, const char *pszStr ); + STEAMNETWORKINGSOCKETS_INTERFACE void SteamNetworkingIdentity_ToString( const SteamNetworkingIdentity *pIdentity, char *buf, size_t cbBuf ); + STEAMNETWORKINGSOCKETS_INTERFACE bool SteamNetworkingIdentity_ParseString( SteamNetworkingIdentity *pIdentity, size_t sizeofIdentity, const char *pszStr ); + inline void SteamNetworkingIPAddr::ToString( char *buf, size_t cbBuf, bool bWithPort ) const { SteamNetworkingIPAddr_ToString( this, buf, cbBuf, bWithPort ); } + inline bool SteamNetworkingIPAddr::ParseString( const char *pszStr ) { return SteamNetworkingIPAddr_ParseString( this, pszStr ); } + inline void SteamNetworkingIdentity::ToString( char *buf, size_t cbBuf ) const { SteamNetworkingIdentity_ToString( this, buf, cbBuf ); } + inline bool SteamNetworkingIdentity::ParseString( const char *pszStr ) { return SteamNetworkingIdentity_ParseString( this, sizeof(*this), pszStr ); } + +#elif defined( STEAMNETWORKINGSOCKETS_STEAMAPI ) + // Using steamworks SDK - go through SteamNetworkingUtils() + inline void SteamNetworkingIPAddr::ToString( char *buf, size_t cbBuf, bool bWithPort ) const { SteamNetworkingUtils()->SteamNetworkingIPAddr_ToString( *this, buf, cbBuf, bWithPort ); } + inline bool SteamNetworkingIPAddr::ParseString( const char *pszStr ) { return SteamNetworkingUtils()->SteamNetworkingIPAddr_ParseString( this, pszStr ); } + inline void SteamNetworkingIdentity::ToString( char *buf, size_t cbBuf ) const { SteamNetworkingUtils()->SteamNetworkingIdentity_ToString( *this, buf, cbBuf ); } + inline bool SteamNetworkingIdentity::ParseString( const char *pszStr ) { return SteamNetworkingUtils()->SteamNetworkingIdentity_ParseString( this, pszStr ); } +#else + #error "Invalid config" +#endif + +#endif // ISTEAMNETWORKINGUTILS diff --git a/lib/steam/public/steam/isteamparentalsettings.h b/lib/steam/public/steam/isteamparentalsettings.h new file mode 100644 index 0000000..66e18a0 --- /dev/null +++ b/lib/steam/public/steam/isteamparentalsettings.h @@ -0,0 +1,63 @@ +//====== Copyright � 2013-, Valve Corporation, All rights reserved. ======= +// +// Purpose: Interface to Steam parental settings (Family View) +// +//============================================================================= + +#ifndef ISTEAMPARENTALSETTINGS_H +#define ISTEAMPARENTALSETTINGS_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +// Feature types for parental settings +enum EParentalFeature +{ + k_EFeatureInvalid = 0, + k_EFeatureStore = 1, + k_EFeatureCommunity = 2, + k_EFeatureProfile = 3, + k_EFeatureFriends = 4, + k_EFeatureNews = 5, + k_EFeatureTrading = 6, + k_EFeatureSettings = 7, + k_EFeatureConsole = 8, + k_EFeatureBrowser = 9, + k_EFeatureParentalSetup = 10, + k_EFeatureLibrary = 11, + k_EFeatureTest = 12, + k_EFeatureSiteLicense = 13, + k_EFeatureMax +}; + +class ISteamParentalSettings +{ +public: + virtual bool BIsParentalLockEnabled() = 0; + virtual bool BIsParentalLockLocked() = 0; + + virtual bool BIsAppBlocked( AppId_t nAppID ) = 0; + virtual bool BIsAppInBlockList( AppId_t nAppID ) = 0; + + virtual bool BIsFeatureBlocked( EParentalFeature eFeature ) = 0; + virtual bool BIsFeatureInBlockList( EParentalFeature eFeature ) = 0; +}; + +#define STEAMPARENTALSETTINGS_INTERFACE_VERSION "STEAMPARENTALSETTINGS_INTERFACE_VERSION001" + +// Global interface accessor +inline ISteamParentalSettings *SteamParentalSettings(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamParentalSettings *, SteamParentalSettings, STEAMPARENTALSETTINGS_INTERFACE_VERSION ); + +//----------------------------------------------------------------------------- +// Purpose: Callback for querying UGC +//----------------------------------------------------------------------------- +struct SteamParentalSettingsChanged_t +{ + enum { k_iCallback = k_ISteamParentalSettingsCallbacks + 1 }; +}; + + +#endif // ISTEAMPARENTALSETTINGS_H diff --git a/lib/steam/public/steam/isteamps3overlayrenderer.h b/lib/steam/public/steam/isteamps3overlayrenderer.h new file mode 100644 index 0000000..2cbb757 --- /dev/null +++ b/lib/steam/public/steam/isteamps3overlayrenderer.h @@ -0,0 +1,91 @@ +//====== Copyright © 1996-2010, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface the game must provide Steam with on PS3 in order for the +// Steam overlay to render. +// +//============================================================================= + +#ifndef ISTEAMPS3OVERLAYRENDERER_H +#define ISTEAMPS3OVERLAYRENDERER_H +#ifdef _WIN32 +#pragma once +#endif + +#include "cell/pad.h" + +//----------------------------------------------------------------------------- +// Purpose: Enum for supported gradient directions +//----------------------------------------------------------------------------- +enum EOverlayGradientDirection +{ + k_EOverlayGradientHorizontal = 1, + k_EOverlayGradientVertical = 2, + k_EOverlayGradientNone = 3, +}; + +// Helpers for fetching individual color components from ARGB packed DWORD colors Steam PS3 overlay renderer uses. +#define STEAM_COLOR_RED( color ) \ + (int)(((color)>>16)&0xff) + +#define STEAM_COLOR_GREEN( color ) \ + (int)(((color)>>8)&0xff) + +#define STEAM_COLOR_BLUE( color ) \ + (int)((color)&0xff) + +#define STEAM_COLOR_ALPHA( color ) \ + (int)(((color)>>24)&0xff) + + +//----------------------------------------------------------------------------- +// Purpose: Interface the game must expose to Steam for rendering +//----------------------------------------------------------------------------- +class ISteamPS3OverlayRenderHost +{ +public: + + // Interface for game engine to implement which Steam requires to render. + + // Draw a textured rect. This may use only part of the texture and will pass texture coords, it will also possibly request a gradient and will specify colors for vertexes. + virtual void DrawTexturedRect( int x0, int y0, int x1, int y1, float u0, float v0, float u1, float v1, int32 iTextureID, DWORD colorStart, DWORD colorEnd, EOverlayGradientDirection eDirection ) = 0; + + // Load a RGBA texture for Steam, or update a previously loaded one. Updates may be partial. You must not evict or remove this texture once Steam has uploaded it. + virtual void LoadOrUpdateTexture( int32 iTextureID, bool bIsFullTexture, int x0, int y0, uint32 uWidth, uint32 uHeight, int32 iBytes, char *pData ) = 0; + + // Delete a texture Steam previously uploaded + virtual void DeleteTexture( int32 iTextureID ) = 0; + + // Delete all previously uploaded textures + virtual void DeleteAllTextures() = 0; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Interface Steam exposes for the game to tell it when to render, etc. +//----------------------------------------------------------------------------- +class ISteamPS3OverlayRender +{ +public: + + // Call once at startup to initialize the Steam overlay and pass it your host interface ptr + virtual bool BHostInitialize( uint32 unScreenWidth, uint32 unScreenHeight, uint32 unRefreshRate, ISteamPS3OverlayRenderHost *pRenderHost, void *CellFontLib ) = 0; + + // Call this once a frame when you are ready for the Steam overlay to render (ie, right before flipping buffers, after all your rendering) + virtual void Render() = 0; + + // Call this everytime you read input on PS3. + // + // If this returns true, then the overlay is active and has consumed the input, your game + // should then ignore all the input until BHandleCellPadData once again returns false, which + // will mean the overlay is deactivated. + virtual bool BHandleCellPadData( const CellPadData &padData ) = 0; + + // Call this if you detect no controllers connected or that the XMB is intercepting input + // + // This is important to clear input state for the overlay, so keys left down during XMB activation + // are not continued to be processed. + virtual bool BResetInputState() = 0; +}; + + +#endif // ISTEAMPS3OVERLAYRENDERER_H \ No newline at end of file diff --git a/lib/steam/public/steam/isteamremoteplay.h b/lib/steam/public/steam/isteamremoteplay.h new file mode 100644 index 0000000..28d352f --- /dev/null +++ b/lib/steam/public/steam/isteamremoteplay.h @@ -0,0 +1,88 @@ +//============ Copyright (c) Valve Corporation, All rights reserved. ============ + +#ifndef ISTEAMREMOTEPLAY_H +#define ISTEAMREMOTEPLAY_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + + +//----------------------------------------------------------------------------- +// Purpose: The form factor of a device +//----------------------------------------------------------------------------- +enum ESteamDeviceFormFactor +{ + k_ESteamDeviceFormFactorUnknown = 0, + k_ESteamDeviceFormFactorPhone = 1, + k_ESteamDeviceFormFactorTablet = 2, + k_ESteamDeviceFormFactorComputer = 3, + k_ESteamDeviceFormFactorTV = 4, +}; + +// Steam Remote Play session ID +typedef uint32 RemotePlaySessionID_t; + + +//----------------------------------------------------------------------------- +// Purpose: Functions to provide information about Steam Remote Play sessions +//----------------------------------------------------------------------------- +class ISteamRemotePlay +{ +public: + // Get the number of currently connected Steam Remote Play sessions + virtual uint32 GetSessionCount() = 0; + + // Get the currently connected Steam Remote Play session ID at the specified index. Returns zero if index is out of bounds. + virtual RemotePlaySessionID_t GetSessionID( int iSessionIndex ) = 0; + + // Get the SteamID of the connected user + virtual CSteamID GetSessionSteamID( RemotePlaySessionID_t unSessionID ) = 0; + + // Get the name of the session client device + // This returns NULL if the sessionID is not valid + virtual const char *GetSessionClientName( RemotePlaySessionID_t unSessionID ) = 0; + + // Get the form factor of the session client device + virtual ESteamDeviceFormFactor GetSessionClientFormFactor( RemotePlaySessionID_t unSessionID ) = 0; + + // Get the resolution, in pixels, of the session client device + // This is set to 0x0 if the resolution is not available + virtual bool BGetSessionClientResolution( RemotePlaySessionID_t unSessionID, int *pnResolutionX, int *pnResolutionY ) = 0; + + // Invite a friend to Remote Play Together + // This returns false if the invite can't be sent + virtual bool BSendRemotePlayTogetherInvite( CSteamID steamIDFriend ) = 0; +}; + +#define STEAMREMOTEPLAY_INTERFACE_VERSION "STEAMREMOTEPLAY_INTERFACE_VERSION001" + +// Global interface accessor +inline ISteamRemotePlay *SteamRemotePlay(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamRemotePlay *, SteamRemotePlay, STEAMREMOTEPLAY_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + + +STEAM_CALLBACK_BEGIN( SteamRemotePlaySessionConnected_t, k_iSteamRemotePlayCallbacks + 1 ) + STEAM_CALLBACK_MEMBER( 0, RemotePlaySessionID_t, m_unSessionID ) +STEAM_CALLBACK_END( 0 ) + + +STEAM_CALLBACK_BEGIN( SteamRemotePlaySessionDisconnected_t, k_iSteamRemotePlayCallbacks + 2 ) + STEAM_CALLBACK_MEMBER( 0, RemotePlaySessionID_t, m_unSessionID ) +STEAM_CALLBACK_END( 0 ) + + +#pragma pack( pop ) + + +#endif // #define ISTEAMREMOTEPLAY_H diff --git a/lib/steam/public/steam/isteamremotestorage.h b/lib/steam/public/steam/isteamremotestorage.h new file mode 100644 index 0000000..5fea770 --- /dev/null +++ b/lib/steam/public/steam/isteamremotestorage.h @@ -0,0 +1,688 @@ +//====== Copyright � 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: public interface to user remote file storage in Steam +// +//============================================================================= + +#ifndef ISTEAMREMOTESTORAGE_H +#define ISTEAMREMOTESTORAGE_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + + +//----------------------------------------------------------------------------- +// Purpose: Defines the largest allowed file size. Cloud files cannot be written +// in a single chunk over 100MB (and cannot be over 200MB total.) +//----------------------------------------------------------------------------- +const uint32 k_unMaxCloudFileChunkSize = 100 * 1024 * 1024; + + +//----------------------------------------------------------------------------- +// Purpose: Structure that contains an array of const char * strings and the number of those strings +//----------------------------------------------------------------------------- +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif +struct SteamParamStringArray_t +{ + const char ** m_ppStrings; + int32 m_nNumStrings; +}; +#pragma pack( pop ) + +// A handle to a piece of user generated content +typedef uint64 UGCHandle_t; +typedef uint64 PublishedFileUpdateHandle_t; +typedef uint64 PublishedFileId_t; +const PublishedFileId_t k_PublishedFileIdInvalid = 0; +const UGCHandle_t k_UGCHandleInvalid = 0xffffffffffffffffull; +const PublishedFileUpdateHandle_t k_PublishedFileUpdateHandleInvalid = 0xffffffffffffffffull; + +// Handle for writing to Steam Cloud +typedef uint64 UGCFileWriteStreamHandle_t; +const UGCFileWriteStreamHandle_t k_UGCFileStreamHandleInvalid = 0xffffffffffffffffull; + +const uint32 k_cchPublishedDocumentTitleMax = 128 + 1; +const uint32 k_cchPublishedDocumentDescriptionMax = 8000; +const uint32 k_cchPublishedDocumentChangeDescriptionMax = 8000; +const uint32 k_unEnumeratePublishedFilesMaxResults = 50; +const uint32 k_cchTagListMax = 1024 + 1; +const uint32 k_cchFilenameMax = 260; +const uint32 k_cchPublishedFileURLMax = 256; + + +enum ERemoteStoragePlatform +{ + k_ERemoteStoragePlatformNone = 0, + k_ERemoteStoragePlatformWindows = (1 << 0), + k_ERemoteStoragePlatformOSX = (1 << 1), + k_ERemoteStoragePlatformPS3 = (1 << 2), + k_ERemoteStoragePlatformLinux = (1 << 3), + k_ERemoteStoragePlatformSwitch = (1 << 4), + k_ERemoteStoragePlatformAndroid = (1 << 5), + k_ERemoteStoragePlatformIOS = (1 << 6), + // NB we get one more before we need to widen some things + + k_ERemoteStoragePlatformAll = 0xffffffff +}; + +enum ERemoteStoragePublishedFileVisibility +{ + k_ERemoteStoragePublishedFileVisibilityPublic = 0, + k_ERemoteStoragePublishedFileVisibilityFriendsOnly = 1, + k_ERemoteStoragePublishedFileVisibilityPrivate = 2, + k_ERemoteStoragePublishedFileVisibilityUnlisted = 3, +}; + + +enum EWorkshopFileType +{ + k_EWorkshopFileTypeFirst = 0, + + k_EWorkshopFileTypeCommunity = 0, // normal Workshop item that can be subscribed to + k_EWorkshopFileTypeMicrotransaction = 1, // Workshop item that is meant to be voted on for the purpose of selling in-game + k_EWorkshopFileTypeCollection = 2, // a collection of Workshop or Greenlight items + k_EWorkshopFileTypeArt = 3, // artwork + k_EWorkshopFileTypeVideo = 4, // external video + k_EWorkshopFileTypeScreenshot = 5, // screenshot + k_EWorkshopFileTypeGame = 6, // Greenlight game entry + k_EWorkshopFileTypeSoftware = 7, // Greenlight software entry + k_EWorkshopFileTypeConcept = 8, // Greenlight concept + k_EWorkshopFileTypeWebGuide = 9, // Steam web guide + k_EWorkshopFileTypeIntegratedGuide = 10, // application integrated guide + k_EWorkshopFileTypeMerch = 11, // Workshop merchandise meant to be voted on for the purpose of being sold + k_EWorkshopFileTypeControllerBinding = 12, // Steam Controller bindings + k_EWorkshopFileTypeSteamworksAccessInvite = 13, // internal + k_EWorkshopFileTypeSteamVideo = 14, // Steam video + k_EWorkshopFileTypeGameManagedItem = 15, // managed completely by the game, not the user, and not shown on the web + + // Update k_EWorkshopFileTypeMax if you add values. + k_EWorkshopFileTypeMax = 16 + +}; + +enum EWorkshopVote +{ + k_EWorkshopVoteUnvoted = 0, + k_EWorkshopVoteFor = 1, + k_EWorkshopVoteAgainst = 2, + k_EWorkshopVoteLater = 3, +}; + +enum EWorkshopFileAction +{ + k_EWorkshopFileActionPlayed = 0, + k_EWorkshopFileActionCompleted = 1, +}; + +enum EWorkshopEnumerationType +{ + k_EWorkshopEnumerationTypeRankedByVote = 0, + k_EWorkshopEnumerationTypeRecent = 1, + k_EWorkshopEnumerationTypeTrending = 2, + k_EWorkshopEnumerationTypeFavoritesOfFriends = 3, + k_EWorkshopEnumerationTypeVotedByFriends = 4, + k_EWorkshopEnumerationTypeContentByFriends = 5, + k_EWorkshopEnumerationTypeRecentFromFollowedUsers = 6, +}; + +enum EWorkshopVideoProvider +{ + k_EWorkshopVideoProviderNone = 0, + k_EWorkshopVideoProviderYoutube = 1 +}; + + +enum EUGCReadAction +{ + // Keeps the file handle open unless the last byte is read. You can use this when reading large files (over 100MB) in sequential chunks. + // If the last byte is read, this will behave the same as k_EUGCRead_Close. Otherwise, it behaves the same as k_EUGCRead_ContinueReading. + // This value maintains the same behavior as before the EUGCReadAction parameter was introduced. + k_EUGCRead_ContinueReadingUntilFinished = 0, + + // Keeps the file handle open. Use this when using UGCRead to seek to different parts of the file. + // When you are done seeking around the file, make a final call with k_EUGCRead_Close to close it. + k_EUGCRead_ContinueReading = 1, + + // Frees the file handle. Use this when you're done reading the content. + // To read the file from Steam again you will need to call UGCDownload again. + k_EUGCRead_Close = 2, +}; + + +//----------------------------------------------------------------------------- +// Purpose: Functions for accessing, reading and writing files stored remotely +// and cached locally +//----------------------------------------------------------------------------- +class ISteamRemoteStorage +{ + public: + // NOTE + // + // Filenames are case-insensitive, and will be converted to lowercase automatically. + // So "foo.bar" and "Foo.bar" are the same file, and if you write "Foo.bar" then + // iterate the files, the filename returned will be "foo.bar". + // + + // file operations + virtual bool FileWrite( const char *pchFile, const void *pvData, int32 cubData ) = 0; + virtual int32 FileRead( const char *pchFile, void *pvData, int32 cubDataToRead ) = 0; + + STEAM_CALL_RESULT( RemoteStorageFileWriteAsyncComplete_t ) + virtual SteamAPICall_t FileWriteAsync( const char *pchFile, const void *pvData, uint32 cubData ) = 0; + + STEAM_CALL_RESULT( RemoteStorageFileReadAsyncComplete_t ) + virtual SteamAPICall_t FileReadAsync( const char *pchFile, uint32 nOffset, uint32 cubToRead ) = 0; + virtual bool FileReadAsyncComplete( SteamAPICall_t hReadCall, void *pvBuffer, uint32 cubToRead ) = 0; + + virtual bool FileForget( const char *pchFile ) = 0; + virtual bool FileDelete( const char *pchFile ) = 0; + STEAM_CALL_RESULT( RemoteStorageFileShareResult_t ) + virtual SteamAPICall_t FileShare( const char *pchFile ) = 0; + virtual bool SetSyncPlatforms( const char *pchFile, ERemoteStoragePlatform eRemoteStoragePlatform ) = 0; + + // file operations that cause network IO + virtual UGCFileWriteStreamHandle_t FileWriteStreamOpen( const char *pchFile ) = 0; + virtual bool FileWriteStreamWriteChunk( UGCFileWriteStreamHandle_t writeHandle, const void *pvData, int32 cubData ) = 0; + virtual bool FileWriteStreamClose( UGCFileWriteStreamHandle_t writeHandle ) = 0; + virtual bool FileWriteStreamCancel( UGCFileWriteStreamHandle_t writeHandle ) = 0; + + // file information + virtual bool FileExists( const char *pchFile ) = 0; + virtual bool FilePersisted( const char *pchFile ) = 0; + virtual int32 GetFileSize( const char *pchFile ) = 0; + virtual int64 GetFileTimestamp( const char *pchFile ) = 0; + virtual ERemoteStoragePlatform GetSyncPlatforms( const char *pchFile ) = 0; + + // iteration + virtual int32 GetFileCount() = 0; + virtual const char *GetFileNameAndSize( int iFile, int32 *pnFileSizeInBytes ) = 0; + + // configuration management + virtual bool GetQuota( uint64 *pnTotalBytes, uint64 *puAvailableBytes ) = 0; + virtual bool IsCloudEnabledForAccount() = 0; + virtual bool IsCloudEnabledForApp() = 0; + virtual void SetCloudEnabledForApp( bool bEnabled ) = 0; + + // user generated content + + // Downloads a UGC file. A priority value of 0 will download the file immediately, + // otherwise it will wait to download the file until all downloads with a lower priority + // value are completed. Downloads with equal priority will occur simultaneously. + STEAM_CALL_RESULT( RemoteStorageDownloadUGCResult_t ) + virtual SteamAPICall_t UGCDownload( UGCHandle_t hContent, uint32 unPriority ) = 0; + + // Gets the amount of data downloaded so far for a piece of content. pnBytesExpected can be 0 if function returns false + // or if the transfer hasn't started yet, so be careful to check for that before dividing to get a percentage + virtual bool GetUGCDownloadProgress( UGCHandle_t hContent, int32 *pnBytesDownloaded, int32 *pnBytesExpected ) = 0; + + // Gets metadata for a file after it has been downloaded. This is the same metadata given in the RemoteStorageDownloadUGCResult_t call result + virtual bool GetUGCDetails( UGCHandle_t hContent, AppId_t *pnAppID, STEAM_OUT_STRING() char **ppchName, int32 *pnFileSizeInBytes, STEAM_OUT_STRUCT() CSteamID *pSteamIDOwner ) = 0; + + // After download, gets the content of the file. + // Small files can be read all at once by calling this function with an offset of 0 and cubDataToRead equal to the size of the file. + // Larger files can be read in chunks to reduce memory usage (since both sides of the IPC client and the game itself must allocate + // enough memory for each chunk). Once the last byte is read, the file is implicitly closed and further calls to UGCRead will fail + // unless UGCDownload is called again. + // For especially large files (anything over 100MB) it is a requirement that the file is read in chunks. + virtual int32 UGCRead( UGCHandle_t hContent, void *pvData, int32 cubDataToRead, uint32 cOffset, EUGCReadAction eAction ) = 0; + + // Functions to iterate through UGC that has finished downloading but has not yet been read via UGCRead() + virtual int32 GetCachedUGCCount() = 0; + virtual UGCHandle_t GetCachedUGCHandle( int32 iCachedContent ) = 0; + + // The following functions are only necessary on the Playstation 3. On PC & Mac, the Steam client will handle these operations for you + // On Playstation 3, the game controls which files are stored in the cloud, via FilePersist, FileFetch, and FileForget. + +#if defined(_SERVER) + // Connect to Steam and get a list of files in the Cloud - results in a RemoteStorageAppSyncStatusCheck_t callback + virtual void GetFileListFromServer() = 0; + // Indicate this file should be downloaded in the next sync + virtual bool FileFetch( const char *pchFile ) = 0; + // Indicate this file should be persisted in the next sync + virtual bool FilePersist( const char *pchFile ) = 0; + // Pull any requested files down from the Cloud - results in a RemoteStorageAppSyncedClient_t callback + virtual bool SynchronizeToClient() = 0; + // Upload any requested files to the Cloud - results in a RemoteStorageAppSyncedServer_t callback + virtual bool SynchronizeToServer() = 0; + // Reset any fetch/persist/etc requests + virtual bool ResetFileRequestState() = 0; +#endif + + // publishing UGC + STEAM_CALL_RESULT( RemoteStoragePublishFileProgress_t ) + virtual SteamAPICall_t PublishWorkshopFile( const char *pchFile, const char *pchPreviewFile, AppId_t nConsumerAppId, const char *pchTitle, const char *pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, SteamParamStringArray_t *pTags, EWorkshopFileType eWorkshopFileType ) = 0; + virtual PublishedFileUpdateHandle_t CreatePublishedFileUpdateRequest( PublishedFileId_t unPublishedFileId ) = 0; + virtual bool UpdatePublishedFileFile( PublishedFileUpdateHandle_t updateHandle, const char *pchFile ) = 0; + virtual bool UpdatePublishedFilePreviewFile( PublishedFileUpdateHandle_t updateHandle, const char *pchPreviewFile ) = 0; + virtual bool UpdatePublishedFileTitle( PublishedFileUpdateHandle_t updateHandle, const char *pchTitle ) = 0; + virtual bool UpdatePublishedFileDescription( PublishedFileUpdateHandle_t updateHandle, const char *pchDescription ) = 0; + virtual bool UpdatePublishedFileVisibility( PublishedFileUpdateHandle_t updateHandle, ERemoteStoragePublishedFileVisibility eVisibility ) = 0; + virtual bool UpdatePublishedFileTags( PublishedFileUpdateHandle_t updateHandle, SteamParamStringArray_t *pTags ) = 0; + STEAM_CALL_RESULT( RemoteStorageUpdatePublishedFileResult_t ) + virtual SteamAPICall_t CommitPublishedFileUpdate( PublishedFileUpdateHandle_t updateHandle ) = 0; + // Gets published file details for the given publishedfileid. If unMaxSecondsOld is greater than 0, + // cached data may be returned, depending on how long ago it was cached. A value of 0 will force a refresh. + // A value of k_WorkshopForceLoadPublishedFileDetailsFromCache will use cached data if it exists, no matter how old it is. + STEAM_CALL_RESULT( RemoteStorageGetPublishedFileDetailsResult_t ) + virtual SteamAPICall_t GetPublishedFileDetails( PublishedFileId_t unPublishedFileId, uint32 unMaxSecondsOld ) = 0; + STEAM_CALL_RESULT( RemoteStorageDeletePublishedFileResult_t ) + virtual SteamAPICall_t DeletePublishedFile( PublishedFileId_t unPublishedFileId ) = 0; + // enumerate the files that the current user published with this app + STEAM_CALL_RESULT( RemoteStorageEnumerateUserPublishedFilesResult_t ) + virtual SteamAPICall_t EnumerateUserPublishedFiles( uint32 unStartIndex ) = 0; + STEAM_CALL_RESULT( RemoteStorageSubscribePublishedFileResult_t ) + virtual SteamAPICall_t SubscribePublishedFile( PublishedFileId_t unPublishedFileId ) = 0; + STEAM_CALL_RESULT( RemoteStorageEnumerateUserSubscribedFilesResult_t ) + virtual SteamAPICall_t EnumerateUserSubscribedFiles( uint32 unStartIndex ) = 0; + STEAM_CALL_RESULT( RemoteStorageUnsubscribePublishedFileResult_t ) + virtual SteamAPICall_t UnsubscribePublishedFile( PublishedFileId_t unPublishedFileId ) = 0; + virtual bool UpdatePublishedFileSetChangeDescription( PublishedFileUpdateHandle_t updateHandle, const char *pchChangeDescription ) = 0; + STEAM_CALL_RESULT( RemoteStorageGetPublishedItemVoteDetailsResult_t ) + virtual SteamAPICall_t GetPublishedItemVoteDetails( PublishedFileId_t unPublishedFileId ) = 0; + STEAM_CALL_RESULT( RemoteStorageUpdateUserPublishedItemVoteResult_t ) + virtual SteamAPICall_t UpdateUserPublishedItemVote( PublishedFileId_t unPublishedFileId, bool bVoteUp ) = 0; + STEAM_CALL_RESULT( RemoteStorageGetPublishedItemVoteDetailsResult_t ) + virtual SteamAPICall_t GetUserPublishedItemVoteDetails( PublishedFileId_t unPublishedFileId ) = 0; + STEAM_CALL_RESULT( RemoteStorageEnumerateUserPublishedFilesResult_t ) + virtual SteamAPICall_t EnumerateUserSharedWorkshopFiles( CSteamID steamId, uint32 unStartIndex, SteamParamStringArray_t *pRequiredTags, SteamParamStringArray_t *pExcludedTags ) = 0; + STEAM_CALL_RESULT( RemoteStoragePublishFileProgress_t ) + virtual SteamAPICall_t PublishVideo( EWorkshopVideoProvider eVideoProvider, const char *pchVideoAccount, const char *pchVideoIdentifier, const char *pchPreviewFile, AppId_t nConsumerAppId, const char *pchTitle, const char *pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, SteamParamStringArray_t *pTags ) = 0; + STEAM_CALL_RESULT( RemoteStorageSetUserPublishedFileActionResult_t ) + virtual SteamAPICall_t SetUserPublishedFileAction( PublishedFileId_t unPublishedFileId, EWorkshopFileAction eAction ) = 0; + STEAM_CALL_RESULT( RemoteStorageEnumeratePublishedFilesByUserActionResult_t ) + virtual SteamAPICall_t EnumeratePublishedFilesByUserAction( EWorkshopFileAction eAction, uint32 unStartIndex ) = 0; + // this method enumerates the public view of workshop files + STEAM_CALL_RESULT( RemoteStorageEnumerateWorkshopFilesResult_t ) + virtual SteamAPICall_t EnumeratePublishedWorkshopFiles( EWorkshopEnumerationType eEnumerationType, uint32 unStartIndex, uint32 unCount, uint32 unDays, SteamParamStringArray_t *pTags, SteamParamStringArray_t *pUserTags ) = 0; + + STEAM_CALL_RESULT( RemoteStorageDownloadUGCResult_t ) + virtual SteamAPICall_t UGCDownloadToLocation( UGCHandle_t hContent, const char *pchLocation, uint32 unPriority ) = 0; +}; + +#define STEAMREMOTESTORAGE_INTERFACE_VERSION "STEAMREMOTESTORAGE_INTERFACE_VERSION014" + +// Global interface accessor +inline ISteamRemoteStorage *SteamRemoteStorage(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamRemoteStorage *, SteamRemoteStorage, STEAMREMOTESTORAGE_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +//----------------------------------------------------------------------------- +// Purpose: sent when the local file cache is fully synced with the server for an app +// That means that an application can be started and has all latest files +//----------------------------------------------------------------------------- +struct RemoteStorageAppSyncedClient_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 1 }; + AppId_t m_nAppID; + EResult m_eResult; + int m_unNumDownloads; +}; + +//----------------------------------------------------------------------------- +// Purpose: sent when the server is fully synced with the local file cache for an app +// That means that we can shutdown Steam and our data is stored on the server +//----------------------------------------------------------------------------- +struct RemoteStorageAppSyncedServer_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 2 }; + AppId_t m_nAppID; + EResult m_eResult; + int m_unNumUploads; +}; + +//----------------------------------------------------------------------------- +// Purpose: Status of up and downloads during a sync session +// +//----------------------------------------------------------------------------- +struct RemoteStorageAppSyncProgress_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 3 }; + char m_rgchCurrentFile[k_cchFilenameMax]; // Current file being transferred + AppId_t m_nAppID; // App this info relates to + uint32 m_uBytesTransferredThisChunk; // Bytes transferred this chunk + double m_dAppPercentComplete; // Percent complete that this app's transfers are + bool m_bUploading; // if false, downloading +}; + +// +// IMPORTANT! k_iClientRemoteStorageCallbacks + 4 is used, see iclientremotestorage.h +// + + +//----------------------------------------------------------------------------- +// Purpose: Sent after we've determined the list of files that are out of sync +// with the server. +//----------------------------------------------------------------------------- +struct RemoteStorageAppSyncStatusCheck_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 5 }; + AppId_t m_nAppID; + EResult m_eResult; +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to FileShare() +//----------------------------------------------------------------------------- +struct RemoteStorageFileShareResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 7 }; + EResult m_eResult; // The result of the operation + UGCHandle_t m_hFile; // The handle that can be shared with users and features + char m_rgchFilename[k_cchFilenameMax]; // The name of the file that was shared +}; + + +// k_iClientRemoteStorageCallbacks + 8 is deprecated! Do not reuse + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to PublishFile() +//----------------------------------------------------------------------------- +struct RemoteStoragePublishFileResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 9 }; + EResult m_eResult; // The result of the operation. + PublishedFileId_t m_nPublishedFileId; + bool m_bUserNeedsToAcceptWorkshopLegalAgreement; +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to DeletePublishedFile() +//----------------------------------------------------------------------------- +struct RemoteStorageDeletePublishedFileResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 11 }; + EResult m_eResult; // The result of the operation. + PublishedFileId_t m_nPublishedFileId; +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to EnumerateUserPublishedFiles() +//----------------------------------------------------------------------------- +struct RemoteStorageEnumerateUserPublishedFilesResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 12 }; + EResult m_eResult; // The result of the operation. + int32 m_nResultsReturned; + int32 m_nTotalResultCount; + PublishedFileId_t m_rgPublishedFileId[ k_unEnumeratePublishedFilesMaxResults ]; +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to SubscribePublishedFile() +//----------------------------------------------------------------------------- +struct RemoteStorageSubscribePublishedFileResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 13 }; + EResult m_eResult; // The result of the operation. + PublishedFileId_t m_nPublishedFileId; +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to EnumerateSubscribePublishedFiles() +//----------------------------------------------------------------------------- +struct RemoteStorageEnumerateUserSubscribedFilesResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 14 }; + EResult m_eResult; // The result of the operation. + int32 m_nResultsReturned; + int32 m_nTotalResultCount; + PublishedFileId_t m_rgPublishedFileId[ k_unEnumeratePublishedFilesMaxResults ]; + uint32 m_rgRTimeSubscribed[ k_unEnumeratePublishedFilesMaxResults ]; +}; + +#if defined(VALVE_CALLBACK_PACK_SMALL) + VALVE_COMPILE_TIME_ASSERT( sizeof( RemoteStorageEnumerateUserSubscribedFilesResult_t ) == (1 + 1 + 1 + 50 + 100) * 4 ); +#elif defined(VALVE_CALLBACK_PACK_LARGE) + VALVE_COMPILE_TIME_ASSERT( sizeof( RemoteStorageEnumerateUserSubscribedFilesResult_t ) == (1 + 1 + 1 + 50 + 100) * 4 + 4 ); +#else +#warning You must first include steam_api_common.h +#endif + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to UnsubscribePublishedFile() +//----------------------------------------------------------------------------- +struct RemoteStorageUnsubscribePublishedFileResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 15 }; + EResult m_eResult; // The result of the operation. + PublishedFileId_t m_nPublishedFileId; +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to CommitPublishedFileUpdate() +//----------------------------------------------------------------------------- +struct RemoteStorageUpdatePublishedFileResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 16 }; + EResult m_eResult; // The result of the operation. + PublishedFileId_t m_nPublishedFileId; + bool m_bUserNeedsToAcceptWorkshopLegalAgreement; +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to UGCDownload() +//----------------------------------------------------------------------------- +struct RemoteStorageDownloadUGCResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 17 }; + EResult m_eResult; // The result of the operation. + UGCHandle_t m_hFile; // The handle to the file that was attempted to be downloaded. + AppId_t m_nAppID; // ID of the app that created this file. + int32 m_nSizeInBytes; // The size of the file that was downloaded, in bytes. + char m_pchFileName[k_cchFilenameMax]; // The name of the file that was downloaded. + uint64 m_ulSteamIDOwner; // Steam ID of the user who created this content. +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to GetPublishedFileDetails() +//----------------------------------------------------------------------------- +struct RemoteStorageGetPublishedFileDetailsResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 18 }; + EResult m_eResult; // The result of the operation. + PublishedFileId_t m_nPublishedFileId; + AppId_t m_nCreatorAppID; // ID of the app that created this file. + AppId_t m_nConsumerAppID; // ID of the app that will consume this file. + char m_rgchTitle[k_cchPublishedDocumentTitleMax]; // title of document + char m_rgchDescription[k_cchPublishedDocumentDescriptionMax]; // description of document + UGCHandle_t m_hFile; // The handle of the primary file + UGCHandle_t m_hPreviewFile; // The handle of the preview file + uint64 m_ulSteamIDOwner; // Steam ID of the user who created this content. + uint32 m_rtimeCreated; // time when the published file was created + uint32 m_rtimeUpdated; // time when the published file was last updated + ERemoteStoragePublishedFileVisibility m_eVisibility; + bool m_bBanned; + char m_rgchTags[k_cchTagListMax]; // comma separated list of all tags associated with this file + bool m_bTagsTruncated; // whether the list of tags was too long to be returned in the provided buffer + char m_pchFileName[k_cchFilenameMax]; // The name of the primary file + int32 m_nFileSize; // Size of the primary file + int32 m_nPreviewFileSize; // Size of the preview file + char m_rgchURL[k_cchPublishedFileURLMax]; // URL (for a video or a website) + EWorkshopFileType m_eFileType; // Type of the file + bool m_bAcceptedForUse; // developer has specifically flagged this item as accepted in the Workshop +}; + + +struct RemoteStorageEnumerateWorkshopFilesResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 19 }; + EResult m_eResult; + int32 m_nResultsReturned; + int32 m_nTotalResultCount; + PublishedFileId_t m_rgPublishedFileId[ k_unEnumeratePublishedFilesMaxResults ]; + float m_rgScore[ k_unEnumeratePublishedFilesMaxResults ]; + AppId_t m_nAppId; + uint32 m_unStartIndex; +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of GetPublishedItemVoteDetails +//----------------------------------------------------------------------------- +struct RemoteStorageGetPublishedItemVoteDetailsResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 20 }; + EResult m_eResult; + PublishedFileId_t m_unPublishedFileId; + int32 m_nVotesFor; + int32 m_nVotesAgainst; + int32 m_nReports; + float m_fScore; +}; + + +//----------------------------------------------------------------------------- +// Purpose: User subscribed to a file for the app (from within the app or on the web) +//----------------------------------------------------------------------------- +struct RemoteStoragePublishedFileSubscribed_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 21 }; + PublishedFileId_t m_nPublishedFileId; // The published file id + AppId_t m_nAppID; // ID of the app that will consume this file. +}; + +//----------------------------------------------------------------------------- +// Purpose: User unsubscribed from a file for the app (from within the app or on the web) +//----------------------------------------------------------------------------- +struct RemoteStoragePublishedFileUnsubscribed_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 22 }; + PublishedFileId_t m_nPublishedFileId; // The published file id + AppId_t m_nAppID; // ID of the app that will consume this file. +}; + + +//----------------------------------------------------------------------------- +// Purpose: Published file that a user owns was deleted (from within the app or the web) +//----------------------------------------------------------------------------- +struct RemoteStoragePublishedFileDeleted_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 23 }; + PublishedFileId_t m_nPublishedFileId; // The published file id + AppId_t m_nAppID; // ID of the app that will consume this file. +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to UpdateUserPublishedItemVote() +//----------------------------------------------------------------------------- +struct RemoteStorageUpdateUserPublishedItemVoteResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 24 }; + EResult m_eResult; // The result of the operation. + PublishedFileId_t m_nPublishedFileId; // The published file id +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to GetUserPublishedItemVoteDetails() +//----------------------------------------------------------------------------- +struct RemoteStorageUserVoteDetails_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 25 }; + EResult m_eResult; // The result of the operation. + PublishedFileId_t m_nPublishedFileId; // The published file id + EWorkshopVote m_eVote; // what the user voted +}; + +struct RemoteStorageEnumerateUserSharedWorkshopFilesResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 26 }; + EResult m_eResult; // The result of the operation. + int32 m_nResultsReturned; + int32 m_nTotalResultCount; + PublishedFileId_t m_rgPublishedFileId[ k_unEnumeratePublishedFilesMaxResults ]; +}; + +struct RemoteStorageSetUserPublishedFileActionResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 27 }; + EResult m_eResult; // The result of the operation. + PublishedFileId_t m_nPublishedFileId; // The published file id + EWorkshopFileAction m_eAction; // the action that was attempted +}; + +struct RemoteStorageEnumeratePublishedFilesByUserActionResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 28 }; + EResult m_eResult; // The result of the operation. + EWorkshopFileAction m_eAction; // the action that was filtered on + int32 m_nResultsReturned; + int32 m_nTotalResultCount; + PublishedFileId_t m_rgPublishedFileId[ k_unEnumeratePublishedFilesMaxResults ]; + uint32 m_rgRTimeUpdated[ k_unEnumeratePublishedFilesMaxResults ]; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Called periodically while a PublishWorkshopFile is in progress +//----------------------------------------------------------------------------- +struct RemoteStoragePublishFileProgress_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 29 }; + double m_dPercentFile; + bool m_bPreview; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Called when the content for a published file is updated +//----------------------------------------------------------------------------- +struct RemoteStoragePublishedFileUpdated_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 30 }; + PublishedFileId_t m_nPublishedFileId; // The published file id + AppId_t m_nAppID; // ID of the app that will consume this file. + uint64 m_ulUnused; // not used anymore +}; + +//----------------------------------------------------------------------------- +// Purpose: Called when a FileWriteAsync completes +//----------------------------------------------------------------------------- +struct RemoteStorageFileWriteAsyncComplete_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 31 }; + EResult m_eResult; // result +}; + +//----------------------------------------------------------------------------- +// Purpose: Called when a FileReadAsync completes +//----------------------------------------------------------------------------- +struct RemoteStorageFileReadAsyncComplete_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 32 }; + SteamAPICall_t m_hFileReadAsync; // call handle of the async read which was made + EResult m_eResult; // result + uint32 m_nOffset; // offset in the file this read was at + uint32 m_cubRead; // amount read - will the <= the amount requested +}; + +#pragma pack( pop ) + + +#endif // ISTEAMREMOTESTORAGE_H diff --git a/lib/steam/public/steam/isteamscreenshots.h b/lib/steam/public/steam/isteamscreenshots.h new file mode 100644 index 0000000..b9feba0 --- /dev/null +++ b/lib/steam/public/steam/isteamscreenshots.h @@ -0,0 +1,120 @@ +//====== Copyright � 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: public interface to user remote file storage in Steam +// +//============================================================================= + +#ifndef ISTEAMSCREENSHOTS_H +#define ISTEAMSCREENSHOTS_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +const uint32 k_nScreenshotMaxTaggedUsers = 32; +const uint32 k_nScreenshotMaxTaggedPublishedFiles = 32; +const int k_cubUFSTagTypeMax = 255; +const int k_cubUFSTagValueMax = 255; + +// Required with of a thumbnail provided to AddScreenshotToLibrary. If you do not provide a thumbnail +// one will be generated. +const int k_ScreenshotThumbWidth = 200; + +// Handle is valid for the lifetime of your process and no longer +typedef uint32 ScreenshotHandle; +#define INVALID_SCREENSHOT_HANDLE 0 + +enum EVRScreenshotType +{ + k_EVRScreenshotType_None = 0, + k_EVRScreenshotType_Mono = 1, + k_EVRScreenshotType_Stereo = 2, + k_EVRScreenshotType_MonoCubemap = 3, + k_EVRScreenshotType_MonoPanorama = 4, + k_EVRScreenshotType_StereoPanorama = 5 +}; + +//----------------------------------------------------------------------------- +// Purpose: Functions for adding screenshots to the user's screenshot library +//----------------------------------------------------------------------------- +class ISteamScreenshots +{ +public: + // Writes a screenshot to the user's screenshot library given the raw image data, which must be in RGB format. + // The return value is a handle that is valid for the duration of the game process and can be used to apply tags. + virtual ScreenshotHandle WriteScreenshot( void *pubRGB, uint32 cubRGB, int nWidth, int nHeight ) = 0; + + // Adds a screenshot to the user's screenshot library from disk. If a thumbnail is provided, it must be 200 pixels wide and the same aspect ratio + // as the screenshot, otherwise a thumbnail will be generated if the user uploads the screenshot. The screenshots must be in either JPEG or TGA format. + // The return value is a handle that is valid for the duration of the game process and can be used to apply tags. + // JPEG, TGA, and PNG formats are supported. + virtual ScreenshotHandle AddScreenshotToLibrary( const char *pchFilename, const char *pchThumbnailFilename, int nWidth, int nHeight ) = 0; + + // Causes the Steam overlay to take a screenshot. If screenshots are being hooked by the game then a ScreenshotRequested_t callback is sent back to the game instead. + virtual void TriggerScreenshot() = 0; + + // Toggles whether the overlay handles screenshots when the user presses the screenshot hotkey, or the game handles them. If the game is hooking screenshots, + // then the ScreenshotRequested_t callback will be sent if the user presses the hotkey, and the game is expected to call WriteScreenshot or AddScreenshotToLibrary + // in response. + virtual void HookScreenshots( bool bHook ) = 0; + + // Sets metadata about a screenshot's location (for example, the name of the map) + virtual bool SetLocation( ScreenshotHandle hScreenshot, const char *pchLocation ) = 0; + + // Tags a user as being visible in the screenshot + virtual bool TagUser( ScreenshotHandle hScreenshot, CSteamID steamID ) = 0; + + // Tags a published file as being visible in the screenshot + virtual bool TagPublishedFile( ScreenshotHandle hScreenshot, PublishedFileId_t unPublishedFileID ) = 0; + + // Returns true if the app has hooked the screenshot + virtual bool IsScreenshotsHooked() = 0; + + // Adds a VR screenshot to the user's screenshot library from disk in the supported type. + // pchFilename should be the normal 2D image used in the library view + // pchVRFilename should contain the image that matches the correct type + // The return value is a handle that is valid for the duration of the game process and can be used to apply tags. + // JPEG, TGA, and PNG formats are supported. + virtual ScreenshotHandle AddVRScreenshotToLibrary( EVRScreenshotType eType, const char *pchFilename, const char *pchVRFilename ) = 0; +}; + +#define STEAMSCREENSHOTS_INTERFACE_VERSION "STEAMSCREENSHOTS_INTERFACE_VERSION003" + +// Global interface accessor +inline ISteamScreenshots *SteamScreenshots(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamScreenshots *, SteamScreenshots, STEAMSCREENSHOTS_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif +//----------------------------------------------------------------------------- +// Purpose: Screenshot successfully written or otherwise added to the library +// and can now be tagged +//----------------------------------------------------------------------------- +struct ScreenshotReady_t +{ + enum { k_iCallback = k_iSteamScreenshotsCallbacks + 1 }; + ScreenshotHandle m_hLocal; + EResult m_eResult; +}; + +//----------------------------------------------------------------------------- +// Purpose: Screenshot has been requested by the user. Only sent if +// HookScreenshots() has been called, in which case Steam will not take +// the screenshot itself. +//----------------------------------------------------------------------------- +struct ScreenshotRequested_t +{ + enum { k_iCallback = k_iSteamScreenshotsCallbacks + 2 }; +}; + +#pragma pack( pop ) + +#endif // ISTEAMSCREENSHOTS_H + diff --git a/lib/steam/public/steam/isteamugc.h b/lib/steam/public/steam/isteamugc.h new file mode 100644 index 0000000..51c929b --- /dev/null +++ b/lib/steam/public/steam/isteamugc.h @@ -0,0 +1,571 @@ +//====== Copyright 1996-2013, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to steam ugc +// +//============================================================================= + +#ifndef ISTEAMUGC_H +#define ISTEAMUGC_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" +#include "isteamremotestorage.h" + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + + +typedef uint64 UGCQueryHandle_t; +typedef uint64 UGCUpdateHandle_t; + + +const UGCQueryHandle_t k_UGCQueryHandleInvalid = 0xffffffffffffffffull; +const UGCUpdateHandle_t k_UGCUpdateHandleInvalid = 0xffffffffffffffffull; + + +// Matching UGC types for queries +enum EUGCMatchingUGCType +{ + k_EUGCMatchingUGCType_Items = 0, // both mtx items and ready-to-use items + k_EUGCMatchingUGCType_Items_Mtx = 1, + k_EUGCMatchingUGCType_Items_ReadyToUse = 2, + k_EUGCMatchingUGCType_Collections = 3, + k_EUGCMatchingUGCType_Artwork = 4, + k_EUGCMatchingUGCType_Videos = 5, + k_EUGCMatchingUGCType_Screenshots = 6, + k_EUGCMatchingUGCType_AllGuides = 7, // both web guides and integrated guides + k_EUGCMatchingUGCType_WebGuides = 8, + k_EUGCMatchingUGCType_IntegratedGuides = 9, + k_EUGCMatchingUGCType_UsableInGame = 10, // ready-to-use items and integrated guides + k_EUGCMatchingUGCType_ControllerBindings = 11, + k_EUGCMatchingUGCType_GameManagedItems = 12, // game managed items (not managed by users) + k_EUGCMatchingUGCType_All = ~0, // @note: will only be valid for CreateQueryUserUGCRequest requests +}; + +// Different lists of published UGC for a user. +// If the current logged in user is different than the specified user, then some options may not be allowed. +enum EUserUGCList +{ + k_EUserUGCList_Published, + k_EUserUGCList_VotedOn, + k_EUserUGCList_VotedUp, + k_EUserUGCList_VotedDown, + k_EUserUGCList_WillVoteLater, + k_EUserUGCList_Favorited, + k_EUserUGCList_Subscribed, + k_EUserUGCList_UsedOrPlayed, + k_EUserUGCList_Followed, +}; + +// Sort order for user published UGC lists (defaults to creation order descending) +enum EUserUGCListSortOrder +{ + k_EUserUGCListSortOrder_CreationOrderDesc, + k_EUserUGCListSortOrder_CreationOrderAsc, + k_EUserUGCListSortOrder_TitleAsc, + k_EUserUGCListSortOrder_LastUpdatedDesc, + k_EUserUGCListSortOrder_SubscriptionDateDesc, + k_EUserUGCListSortOrder_VoteScoreDesc, + k_EUserUGCListSortOrder_ForModeration, +}; + +// Combination of sorting and filtering for queries across all UGC +enum EUGCQuery +{ + k_EUGCQuery_RankedByVote = 0, + k_EUGCQuery_RankedByPublicationDate = 1, + k_EUGCQuery_AcceptedForGameRankedByAcceptanceDate = 2, + k_EUGCQuery_RankedByTrend = 3, + k_EUGCQuery_FavoritedByFriendsRankedByPublicationDate = 4, + k_EUGCQuery_CreatedByFriendsRankedByPublicationDate = 5, + k_EUGCQuery_RankedByNumTimesReported = 6, + k_EUGCQuery_CreatedByFollowedUsersRankedByPublicationDate = 7, + k_EUGCQuery_NotYetRated = 8, + k_EUGCQuery_RankedByTotalVotesAsc = 9, + k_EUGCQuery_RankedByVotesUp = 10, + k_EUGCQuery_RankedByTextSearch = 11, + k_EUGCQuery_RankedByTotalUniqueSubscriptions = 12, + k_EUGCQuery_RankedByPlaytimeTrend = 13, + k_EUGCQuery_RankedByTotalPlaytime = 14, + k_EUGCQuery_RankedByAveragePlaytimeTrend = 15, + k_EUGCQuery_RankedByLifetimeAveragePlaytime = 16, + k_EUGCQuery_RankedByPlaytimeSessionsTrend = 17, + k_EUGCQuery_RankedByLifetimePlaytimeSessions = 18, +}; + +enum EItemUpdateStatus +{ + k_EItemUpdateStatusInvalid = 0, // The item update handle was invalid, job might be finished, listen too SubmitItemUpdateResult_t + k_EItemUpdateStatusPreparingConfig = 1, // The item update is processing configuration data + k_EItemUpdateStatusPreparingContent = 2, // The item update is reading and processing content files + k_EItemUpdateStatusUploadingContent = 3, // The item update is uploading content changes to Steam + k_EItemUpdateStatusUploadingPreviewFile = 4, // The item update is uploading new preview file image + k_EItemUpdateStatusCommittingChanges = 5 // The item update is committing all changes +}; + +enum EItemState +{ + k_EItemStateNone = 0, // item not tracked on client + k_EItemStateSubscribed = 1, // current user is subscribed to this item. Not just cached. + k_EItemStateLegacyItem = 2, // item was created with ISteamRemoteStorage + k_EItemStateInstalled = 4, // item is installed and usable (but maybe out of date) + k_EItemStateNeedsUpdate = 8, // items needs an update. Either because it's not installed yet or creator updated content + k_EItemStateDownloading = 16, // item update is currently downloading + k_EItemStateDownloadPending = 32, // DownloadItem() was called for this item, content isn't available until DownloadItemResult_t is fired +}; + +enum EItemStatistic +{ + k_EItemStatistic_NumSubscriptions = 0, + k_EItemStatistic_NumFavorites = 1, + k_EItemStatistic_NumFollowers = 2, + k_EItemStatistic_NumUniqueSubscriptions = 3, + k_EItemStatistic_NumUniqueFavorites = 4, + k_EItemStatistic_NumUniqueFollowers = 5, + k_EItemStatistic_NumUniqueWebsiteViews = 6, + k_EItemStatistic_ReportScore = 7, + k_EItemStatistic_NumSecondsPlayed = 8, + k_EItemStatistic_NumPlaytimeSessions = 9, + k_EItemStatistic_NumComments = 10, + k_EItemStatistic_NumSecondsPlayedDuringTimePeriod = 11, + k_EItemStatistic_NumPlaytimeSessionsDuringTimePeriod = 12, +}; + +enum EItemPreviewType +{ + k_EItemPreviewType_Image = 0, // standard image file expected (e.g. jpg, png, gif, etc.) + k_EItemPreviewType_YouTubeVideo = 1, // video id is stored + k_EItemPreviewType_Sketchfab = 2, // model id is stored + k_EItemPreviewType_EnvironmentMap_HorizontalCross = 3, // standard image file expected - cube map in the layout + // +---+---+-------+ + // | |Up | | + // +---+---+---+---+ + // | L | F | R | B | + // +---+---+---+---+ + // | |Dn | | + // +---+---+---+---+ + k_EItemPreviewType_EnvironmentMap_LatLong = 4, // standard image file expected + k_EItemPreviewType_ReservedMax = 255, // you can specify your own types above this value +}; + +const uint32 kNumUGCResultsPerPage = 50; +const uint32 k_cchDeveloperMetadataMax = 5000; + +// Details for a single published file/UGC +struct SteamUGCDetails_t +{ + PublishedFileId_t m_nPublishedFileId; + EResult m_eResult; // The result of the operation. + EWorkshopFileType m_eFileType; // Type of the file + AppId_t m_nCreatorAppID; // ID of the app that created this file. + AppId_t m_nConsumerAppID; // ID of the app that will consume this file. + char m_rgchTitle[k_cchPublishedDocumentTitleMax]; // title of document + char m_rgchDescription[k_cchPublishedDocumentDescriptionMax]; // description of document + uint64 m_ulSteamIDOwner; // Steam ID of the user who created this content. + uint32 m_rtimeCreated; // time when the published file was created + uint32 m_rtimeUpdated; // time when the published file was last updated + uint32 m_rtimeAddedToUserList; // time when the user added the published file to their list (not always applicable) + ERemoteStoragePublishedFileVisibility m_eVisibility; // visibility + bool m_bBanned; // whether the file was banned + bool m_bAcceptedForUse; // developer has specifically flagged this item as accepted in the Workshop + bool m_bTagsTruncated; // whether the list of tags was too long to be returned in the provided buffer + char m_rgchTags[k_cchTagListMax]; // comma separated list of all tags associated with this file + // file/url information + UGCHandle_t m_hFile; // The handle of the primary file + UGCHandle_t m_hPreviewFile; // The handle of the preview file + char m_pchFileName[k_cchFilenameMax]; // The cloud filename of the primary file + int32 m_nFileSize; // Size of the primary file + int32 m_nPreviewFileSize; // Size of the preview file + char m_rgchURL[k_cchPublishedFileURLMax]; // URL (for a video or a website) + // voting information + uint32 m_unVotesUp; // number of votes up + uint32 m_unVotesDown; // number of votes down + float m_flScore; // calculated score + // collection details + uint32 m_unNumChildren; +}; + +//----------------------------------------------------------------------------- +// Purpose: Steam UGC support API +//----------------------------------------------------------------------------- +class ISteamUGC +{ +public: + + // Query UGC associated with a user. Creator app id or consumer app id must be valid and be set to the current running app. unPage should start at 1. + virtual UGCQueryHandle_t CreateQueryUserUGCRequest( AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint32 unPage ) = 0; + + // Query for all matching UGC. Creator app id or consumer app id must be valid and be set to the current running app. unPage should start at 1. + STEAM_FLAT_NAME( CreateQueryAllUGCRequestPage ) + virtual UGCQueryHandle_t CreateQueryAllUGCRequest( EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint32 unPage ) = 0; + + // Query for all matching UGC using the new deep paging interface. Creator app id or consumer app id must be valid and be set to the current running app. pchCursor should be set to NULL or "*" to get the first result set. + STEAM_FLAT_NAME( CreateQueryAllUGCRequestCursor ) + virtual UGCQueryHandle_t CreateQueryAllUGCRequest( EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, const char *pchCursor = NULL ) = 0; + + // Query for the details of the given published file ids (the RequestUGCDetails call is deprecated and replaced with this) + virtual UGCQueryHandle_t CreateQueryUGCDetailsRequest( PublishedFileId_t *pvecPublishedFileID, uint32 unNumPublishedFileIDs ) = 0; + + // Send the query to Steam + STEAM_CALL_RESULT( SteamUGCQueryCompleted_t ) + virtual SteamAPICall_t SendQueryUGCRequest( UGCQueryHandle_t handle ) = 0; + + // Retrieve an individual result after receiving the callback for querying UGC + virtual bool GetQueryUGCResult( UGCQueryHandle_t handle, uint32 index, SteamUGCDetails_t *pDetails ) = 0; + virtual uint32 GetQueryUGCNumTags( UGCQueryHandle_t handle, uint32 index ) = 0; + virtual bool GetQueryUGCTag( UGCQueryHandle_t handle, uint32 index, uint32 indexTag, STEAM_OUT_STRING_COUNT( cchValueSize ) char* pchValue, uint32 cchValueSize ) = 0; + virtual bool GetQueryUGCTagDisplayName( UGCQueryHandle_t handle, uint32 index, uint32 indexTag, STEAM_OUT_STRING_COUNT( cchValueSize ) char* pchValue, uint32 cchValueSize ) = 0; + virtual bool GetQueryUGCPreviewURL( UGCQueryHandle_t handle, uint32 index, STEAM_OUT_STRING_COUNT(cchURLSize) char *pchURL, uint32 cchURLSize ) = 0; + virtual bool GetQueryUGCMetadata( UGCQueryHandle_t handle, uint32 index, STEAM_OUT_STRING_COUNT(cchMetadatasize) char *pchMetadata, uint32 cchMetadatasize ) = 0; + virtual bool GetQueryUGCChildren( UGCQueryHandle_t handle, uint32 index, PublishedFileId_t* pvecPublishedFileID, uint32 cMaxEntries ) = 0; + virtual bool GetQueryUGCStatistic( UGCQueryHandle_t handle, uint32 index, EItemStatistic eStatType, uint64 *pStatValue ) = 0; + virtual uint32 GetQueryUGCNumAdditionalPreviews( UGCQueryHandle_t handle, uint32 index ) = 0; + virtual bool GetQueryUGCAdditionalPreview( UGCQueryHandle_t handle, uint32 index, uint32 previewIndex, STEAM_OUT_STRING_COUNT(cchURLSize) char *pchURLOrVideoID, uint32 cchURLSize, STEAM_OUT_STRING_COUNT(cchURLSize) char *pchOriginalFileName, uint32 cchOriginalFileNameSize, EItemPreviewType *pPreviewType ) = 0; + virtual uint32 GetQueryUGCNumKeyValueTags( UGCQueryHandle_t handle, uint32 index ) = 0; + virtual bool GetQueryUGCKeyValueTag( UGCQueryHandle_t handle, uint32 index, uint32 keyValueTagIndex, STEAM_OUT_STRING_COUNT(cchKeySize) char *pchKey, uint32 cchKeySize, STEAM_OUT_STRING_COUNT(cchValueSize) char *pchValue, uint32 cchValueSize ) = 0; + + // Return the first value matching the pchKey. Note that a key may map to multiple values. Returns false if there was an error or no matching value was found. + STEAM_FLAT_NAME( GetQueryFirstUGCKeyValueTag ) + virtual bool GetQueryUGCKeyValueTag( UGCQueryHandle_t handle, uint32 index, const char *pchKey, STEAM_OUT_STRING_COUNT(cchValueSize) char *pchValue, uint32 cchValueSize ) = 0; + + // Release the request to free up memory, after retrieving results + virtual bool ReleaseQueryUGCRequest( UGCQueryHandle_t handle ) = 0; + + // Options to set for querying UGC + virtual bool AddRequiredTag( UGCQueryHandle_t handle, const char *pTagName ) = 0; + virtual bool AddRequiredTagGroup( UGCQueryHandle_t handle, const SteamParamStringArray_t *pTagGroups ) = 0; // match any of the tags in this group + virtual bool AddExcludedTag( UGCQueryHandle_t handle, const char *pTagName ) = 0; + virtual bool SetReturnOnlyIDs( UGCQueryHandle_t handle, bool bReturnOnlyIDs ) = 0; + virtual bool SetReturnKeyValueTags( UGCQueryHandle_t handle, bool bReturnKeyValueTags ) = 0; + virtual bool SetReturnLongDescription( UGCQueryHandle_t handle, bool bReturnLongDescription ) = 0; + virtual bool SetReturnMetadata( UGCQueryHandle_t handle, bool bReturnMetadata ) = 0; + virtual bool SetReturnChildren( UGCQueryHandle_t handle, bool bReturnChildren ) = 0; + virtual bool SetReturnAdditionalPreviews( UGCQueryHandle_t handle, bool bReturnAdditionalPreviews ) = 0; + virtual bool SetReturnTotalOnly( UGCQueryHandle_t handle, bool bReturnTotalOnly ) = 0; + virtual bool SetReturnPlaytimeStats( UGCQueryHandle_t handle, uint32 unDays ) = 0; + virtual bool SetLanguage( UGCQueryHandle_t handle, const char *pchLanguage ) = 0; + virtual bool SetAllowCachedResponse( UGCQueryHandle_t handle, uint32 unMaxAgeSeconds ) = 0; + + // Options only for querying user UGC + virtual bool SetCloudFileNameFilter( UGCQueryHandle_t handle, const char *pMatchCloudFileName ) = 0; + + // Options only for querying all UGC + virtual bool SetMatchAnyTag( UGCQueryHandle_t handle, bool bMatchAnyTag ) = 0; + virtual bool SetSearchText( UGCQueryHandle_t handle, const char *pSearchText ) = 0; + virtual bool SetRankedByTrendDays( UGCQueryHandle_t handle, uint32 unDays ) = 0; + virtual bool AddRequiredKeyValueTag( UGCQueryHandle_t handle, const char *pKey, const char *pValue ) = 0; + + // DEPRECATED - Use CreateQueryUGCDetailsRequest call above instead! + STEAM_CALL_RESULT( SteamUGCRequestUGCDetailsResult_t ) + virtual SteamAPICall_t RequestUGCDetails( PublishedFileId_t nPublishedFileID, uint32 unMaxAgeSeconds ) = 0; + + // Steam Workshop Creator API + STEAM_CALL_RESULT( CreateItemResult_t ) + virtual SteamAPICall_t CreateItem( AppId_t nConsumerAppId, EWorkshopFileType eFileType ) = 0; // create new item for this app with no content attached yet + + virtual UGCUpdateHandle_t StartItemUpdate( AppId_t nConsumerAppId, PublishedFileId_t nPublishedFileID ) = 0; // start an UGC item update. Set changed properties before commiting update with CommitItemUpdate() + + virtual bool SetItemTitle( UGCUpdateHandle_t handle, const char *pchTitle ) = 0; // change the title of an UGC item + virtual bool SetItemDescription( UGCUpdateHandle_t handle, const char *pchDescription ) = 0; // change the description of an UGC item + virtual bool SetItemUpdateLanguage( UGCUpdateHandle_t handle, const char *pchLanguage ) = 0; // specify the language of the title or description that will be set + virtual bool SetItemMetadata( UGCUpdateHandle_t handle, const char *pchMetaData ) = 0; // change the metadata of an UGC item (max = k_cchDeveloperMetadataMax) + virtual bool SetItemVisibility( UGCUpdateHandle_t handle, ERemoteStoragePublishedFileVisibility eVisibility ) = 0; // change the visibility of an UGC item + virtual bool SetItemTags( UGCUpdateHandle_t updateHandle, const SteamParamStringArray_t *pTags ) = 0; // change the tags of an UGC item + virtual bool SetItemContent( UGCUpdateHandle_t handle, const char *pszContentFolder ) = 0; // update item content from this local folder + virtual bool SetItemPreview( UGCUpdateHandle_t handle, const char *pszPreviewFile ) = 0; // change preview image file for this item. pszPreviewFile points to local image file, which must be under 1MB in size + virtual bool SetAllowLegacyUpload( UGCUpdateHandle_t handle, bool bAllowLegacyUpload ) = 0; // use legacy upload for a single small file. The parameter to SetItemContent() should either be a directory with one file or the full path to the file. The file must also be less than 10MB in size. + virtual bool RemoveAllItemKeyValueTags( UGCUpdateHandle_t handle ) = 0; // remove all existing key-value tags (you can add new ones via the AddItemKeyValueTag function) + virtual bool RemoveItemKeyValueTags( UGCUpdateHandle_t handle, const char *pchKey ) = 0; // remove any existing key-value tags with the specified key + virtual bool AddItemKeyValueTag( UGCUpdateHandle_t handle, const char *pchKey, const char *pchValue ) = 0; // add new key-value tags for the item. Note that there can be multiple values for a tag. + virtual bool AddItemPreviewFile( UGCUpdateHandle_t handle, const char *pszPreviewFile, EItemPreviewType type ) = 0; // add preview file for this item. pszPreviewFile points to local file, which must be under 1MB in size + virtual bool AddItemPreviewVideo( UGCUpdateHandle_t handle, const char *pszVideoID ) = 0; // add preview video for this item + virtual bool UpdateItemPreviewFile( UGCUpdateHandle_t handle, uint32 index, const char *pszPreviewFile ) = 0; // updates an existing preview file for this item. pszPreviewFile points to local file, which must be under 1MB in size + virtual bool UpdateItemPreviewVideo( UGCUpdateHandle_t handle, uint32 index, const char *pszVideoID ) = 0; // updates an existing preview video for this item + virtual bool RemoveItemPreview( UGCUpdateHandle_t handle, uint32 index ) = 0; // remove a preview by index starting at 0 (previews are sorted) + + STEAM_CALL_RESULT( SubmitItemUpdateResult_t ) + virtual SteamAPICall_t SubmitItemUpdate( UGCUpdateHandle_t handle, const char *pchChangeNote ) = 0; // commit update process started with StartItemUpdate() + virtual EItemUpdateStatus GetItemUpdateProgress( UGCUpdateHandle_t handle, uint64 *punBytesProcessed, uint64* punBytesTotal ) = 0; + + // Steam Workshop Consumer API + STEAM_CALL_RESULT( SetUserItemVoteResult_t ) + virtual SteamAPICall_t SetUserItemVote( PublishedFileId_t nPublishedFileID, bool bVoteUp ) = 0; + STEAM_CALL_RESULT( GetUserItemVoteResult_t ) + virtual SteamAPICall_t GetUserItemVote( PublishedFileId_t nPublishedFileID ) = 0; + STEAM_CALL_RESULT( UserFavoriteItemsListChanged_t ) + virtual SteamAPICall_t AddItemToFavorites( AppId_t nAppId, PublishedFileId_t nPublishedFileID ) = 0; + STEAM_CALL_RESULT( UserFavoriteItemsListChanged_t ) + virtual SteamAPICall_t RemoveItemFromFavorites( AppId_t nAppId, PublishedFileId_t nPublishedFileID ) = 0; + STEAM_CALL_RESULT( RemoteStorageSubscribePublishedFileResult_t ) + virtual SteamAPICall_t SubscribeItem( PublishedFileId_t nPublishedFileID ) = 0; // subscribe to this item, will be installed ASAP + STEAM_CALL_RESULT( RemoteStorageUnsubscribePublishedFileResult_t ) + virtual SteamAPICall_t UnsubscribeItem( PublishedFileId_t nPublishedFileID ) = 0; // unsubscribe from this item, will be uninstalled after game quits + virtual uint32 GetNumSubscribedItems() = 0; // number of subscribed items + virtual uint32 GetSubscribedItems( PublishedFileId_t* pvecPublishedFileID, uint32 cMaxEntries ) = 0; // all subscribed item PublishFileIDs + + // get EItemState flags about item on this client + virtual uint32 GetItemState( PublishedFileId_t nPublishedFileID ) = 0; + + // get info about currently installed content on disc for items that have k_EItemStateInstalled set + // if k_EItemStateLegacyItem is set, pchFolder contains the path to the legacy file itself (not a folder) + virtual bool GetItemInstallInfo( PublishedFileId_t nPublishedFileID, uint64 *punSizeOnDisk, STEAM_OUT_STRING_COUNT( cchFolderSize ) char *pchFolder, uint32 cchFolderSize, uint32 *punTimeStamp ) = 0; + + // get info about pending update for items that have k_EItemStateNeedsUpdate set. punBytesTotal will be valid after download started once + virtual bool GetItemDownloadInfo( PublishedFileId_t nPublishedFileID, uint64 *punBytesDownloaded, uint64 *punBytesTotal ) = 0; + + // download new or update already installed item. If function returns true, wait for DownloadItemResult_t. If the item is already installed, + // then files on disk should not be used until callback received. If item is not subscribed to, it will be cached for some time. + // If bHighPriority is set, any other item download will be suspended and this item downloaded ASAP. + virtual bool DownloadItem( PublishedFileId_t nPublishedFileID, bool bHighPriority ) = 0; + + // game servers can set a specific workshop folder before issuing any UGC commands. + // This is helpful if you want to support multiple game servers running out of the same install folder + virtual bool BInitWorkshopForGameServer( DepotId_t unWorkshopDepotID, const char *pszFolder ) = 0; + + // SuspendDownloads( true ) will suspend all workshop downloads until SuspendDownloads( false ) is called or the game ends + virtual void SuspendDownloads( bool bSuspend ) = 0; + + // usage tracking + STEAM_CALL_RESULT( StartPlaytimeTrackingResult_t ) + virtual SteamAPICall_t StartPlaytimeTracking( PublishedFileId_t *pvecPublishedFileID, uint32 unNumPublishedFileIDs ) = 0; + STEAM_CALL_RESULT( StopPlaytimeTrackingResult_t ) + virtual SteamAPICall_t StopPlaytimeTracking( PublishedFileId_t *pvecPublishedFileID, uint32 unNumPublishedFileIDs ) = 0; + STEAM_CALL_RESULT( StopPlaytimeTrackingResult_t ) + virtual SteamAPICall_t StopPlaytimeTrackingForAllItems() = 0; + + // parent-child relationship or dependency management + STEAM_CALL_RESULT( AddUGCDependencyResult_t ) + virtual SteamAPICall_t AddDependency( PublishedFileId_t nParentPublishedFileID, PublishedFileId_t nChildPublishedFileID ) = 0; + STEAM_CALL_RESULT( RemoveUGCDependencyResult_t ) + virtual SteamAPICall_t RemoveDependency( PublishedFileId_t nParentPublishedFileID, PublishedFileId_t nChildPublishedFileID ) = 0; + + // add/remove app dependence/requirements (usually DLC) + STEAM_CALL_RESULT( AddAppDependencyResult_t ) + virtual SteamAPICall_t AddAppDependency( PublishedFileId_t nPublishedFileID, AppId_t nAppID ) = 0; + STEAM_CALL_RESULT( RemoveAppDependencyResult_t ) + virtual SteamAPICall_t RemoveAppDependency( PublishedFileId_t nPublishedFileID, AppId_t nAppID ) = 0; + // request app dependencies. note that whatever callback you register for GetAppDependenciesResult_t may be called multiple times + // until all app dependencies have been returned + STEAM_CALL_RESULT( GetAppDependenciesResult_t ) + virtual SteamAPICall_t GetAppDependencies( PublishedFileId_t nPublishedFileID ) = 0; + + // delete the item without prompting the user + STEAM_CALL_RESULT( DeleteItemResult_t ) + virtual SteamAPICall_t DeleteItem( PublishedFileId_t nPublishedFileID ) = 0; +}; + +#define STEAMUGC_INTERFACE_VERSION "STEAMUGC_INTERFACE_VERSION015" + +// Global interface accessor +inline ISteamUGC *SteamUGC(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamUGC *, SteamUGC, STEAMUGC_INTERFACE_VERSION ); + +// Global accessor for the gameserver client +inline ISteamUGC *SteamGameServerUGC(); +STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( ISteamUGC *, SteamGameServerUGC, STEAMUGC_INTERFACE_VERSION ); + +//----------------------------------------------------------------------------- +// Purpose: Callback for querying UGC +//----------------------------------------------------------------------------- +struct SteamUGCQueryCompleted_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 1 }; + UGCQueryHandle_t m_handle; + EResult m_eResult; + uint32 m_unNumResultsReturned; + uint32 m_unTotalMatchingResults; + bool m_bCachedData; // indicates whether this data was retrieved from the local on-disk cache + char m_rgchNextCursor[k_cchPublishedFileURLMax]; // If a paging cursor was used, then this will be the next cursor to get the next result set. +}; + + +//----------------------------------------------------------------------------- +// Purpose: Callback for requesting details on one piece of UGC +//----------------------------------------------------------------------------- +struct SteamUGCRequestUGCDetailsResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 2 }; + SteamUGCDetails_t m_details; + bool m_bCachedData; // indicates whether this data was retrieved from the local on-disk cache +}; + + +//----------------------------------------------------------------------------- +// Purpose: result for ISteamUGC::CreateItem() +//----------------------------------------------------------------------------- +struct CreateItemResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 3 }; + EResult m_eResult; + PublishedFileId_t m_nPublishedFileId; // new item got this UGC PublishFileID + bool m_bUserNeedsToAcceptWorkshopLegalAgreement; +}; + + +//----------------------------------------------------------------------------- +// Purpose: result for ISteamUGC::SubmitItemUpdate() +//----------------------------------------------------------------------------- +struct SubmitItemUpdateResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 4 }; + EResult m_eResult; + bool m_bUserNeedsToAcceptWorkshopLegalAgreement; + PublishedFileId_t m_nPublishedFileId; +}; + + +//----------------------------------------------------------------------------- +// Purpose: a Workshop item has been installed or updated +//----------------------------------------------------------------------------- +struct ItemInstalled_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 5 }; + AppId_t m_unAppID; + PublishedFileId_t m_nPublishedFileId; +}; + + +//----------------------------------------------------------------------------- +// Purpose: result of DownloadItem(), existing item files can be accessed again +//----------------------------------------------------------------------------- +struct DownloadItemResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 6 }; + AppId_t m_unAppID; + PublishedFileId_t m_nPublishedFileId; + EResult m_eResult; +}; + +//----------------------------------------------------------------------------- +// Purpose: result of AddItemToFavorites() or RemoveItemFromFavorites() +//----------------------------------------------------------------------------- +struct UserFavoriteItemsListChanged_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 7 }; + PublishedFileId_t m_nPublishedFileId; + EResult m_eResult; + bool m_bWasAddRequest; +}; + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to SetUserItemVote() +//----------------------------------------------------------------------------- +struct SetUserItemVoteResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 8 }; + PublishedFileId_t m_nPublishedFileId; + EResult m_eResult; + bool m_bVoteUp; +}; + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to GetUserItemVote() +//----------------------------------------------------------------------------- +struct GetUserItemVoteResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 9 }; + PublishedFileId_t m_nPublishedFileId; + EResult m_eResult; + bool m_bVotedUp; + bool m_bVotedDown; + bool m_bVoteSkipped; +}; + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to StartPlaytimeTracking() +//----------------------------------------------------------------------------- +struct StartPlaytimeTrackingResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 10 }; + EResult m_eResult; +}; + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to StopPlaytimeTracking() +//----------------------------------------------------------------------------- +struct StopPlaytimeTrackingResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 11 }; + EResult m_eResult; +}; + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to AddDependency +//----------------------------------------------------------------------------- +struct AddUGCDependencyResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 12 }; + EResult m_eResult; + PublishedFileId_t m_nPublishedFileId; + PublishedFileId_t m_nChildPublishedFileId; +}; + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to RemoveDependency +//----------------------------------------------------------------------------- +struct RemoveUGCDependencyResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 13 }; + EResult m_eResult; + PublishedFileId_t m_nPublishedFileId; + PublishedFileId_t m_nChildPublishedFileId; +}; + + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to AddAppDependency +//----------------------------------------------------------------------------- +struct AddAppDependencyResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 14 }; + EResult m_eResult; + PublishedFileId_t m_nPublishedFileId; + AppId_t m_nAppID; +}; + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to RemoveAppDependency +//----------------------------------------------------------------------------- +struct RemoveAppDependencyResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 15 }; + EResult m_eResult; + PublishedFileId_t m_nPublishedFileId; + AppId_t m_nAppID; +}; + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to GetAppDependencies. Callback may be called +// multiple times until all app dependencies have been returned. +//----------------------------------------------------------------------------- +struct GetAppDependenciesResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 16 }; + EResult m_eResult; + PublishedFileId_t m_nPublishedFileId; + AppId_t m_rgAppIDs[32]; + uint32 m_nNumAppDependencies; // number returned in this struct + uint32 m_nTotalNumAppDependencies; // total found +}; + +//----------------------------------------------------------------------------- +// Purpose: The result of a call to DeleteItem +//----------------------------------------------------------------------------- +struct DeleteItemResult_t +{ + enum { k_iCallback = k_iClientUGCCallbacks + 17 }; + EResult m_eResult; + PublishedFileId_t m_nPublishedFileId; +}; + +#pragma pack( pop ) + +#endif // ISTEAMUGC_H diff --git a/lib/steam/public/steam/isteamuser.h b/lib/steam/public/steam/isteamuser.h new file mode 100644 index 0000000..f4ee7ba --- /dev/null +++ b/lib/steam/public/steam/isteamuser.h @@ -0,0 +1,410 @@ +//====== Copyright (c) 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to user account information in Steam +// +//============================================================================= + +#ifndef ISTEAMUSER_H +#define ISTEAMUSER_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +//----------------------------------------------------------------------------- +// Purpose: Functions for accessing and manipulating a steam account +// associated with one client instance +//----------------------------------------------------------------------------- +class ISteamUser +{ +public: + // returns the HSteamUser this interface represents + // this is only used internally by the API, and by a few select interfaces that support multi-user + virtual HSteamUser GetHSteamUser() = 0; + + // returns true if the Steam client current has a live connection to the Steam servers. + // If false, it means there is no active connection due to either a networking issue on the local machine, or the Steam server is down/busy. + // The Steam client will automatically be trying to recreate the connection as often as possible. + virtual bool BLoggedOn() = 0; + + // returns the CSteamID of the account currently logged into the Steam client + // a CSteamID is a unique identifier for an account, and used to differentiate users in all parts of the Steamworks API + virtual CSteamID GetSteamID() = 0; + + // Multiplayer Authentication functions + + // InitiateGameConnection() starts the state machine for authenticating the game client with the game server + // It is the client portion of a three-way handshake between the client, the game server, and the steam servers + // + // Parameters: + // void *pAuthBlob - a pointer to empty memory that will be filled in with the authentication token. + // int cbMaxAuthBlob - the number of bytes of allocated memory in pBlob. Should be at least 2048 bytes. + // CSteamID steamIDGameServer - the steamID of the game server, received from the game server by the client + // CGameID gameID - the ID of the current game. For games without mods, this is just CGameID( ) + // uint32 unIPServer, uint16 usPortServer - the IP address of the game server + // bool bSecure - whether or not the client thinks that the game server is reporting itself as secure (i.e. VAC is running) + // + // return value - returns the number of bytes written to pBlob. If the return is 0, then the buffer passed in was too small, and the call has failed + // The contents of pBlob should then be sent to the game server, for it to use to complete the authentication process. + virtual int InitiateGameConnection( void *pAuthBlob, int cbMaxAuthBlob, CSteamID steamIDGameServer, uint32 unIPServer, uint16 usPortServer, bool bSecure ) = 0; + + // notify of disconnect + // needs to occur when the game client leaves the specified game server, needs to match with the InitiateGameConnection() call + virtual void TerminateGameConnection( uint32 unIPServer, uint16 usPortServer ) = 0; + + // Legacy functions + + // used by only a few games to track usage events + virtual void TrackAppUsageEvent( CGameID gameID, int eAppUsageEvent, const char *pchExtraInfo = "" ) = 0; + + // get the local storage folder for current Steam account to write application data, e.g. save games, configs etc. + // this will usually be something like "C:\Progam Files\Steam\userdata\\\local" + virtual bool GetUserDataFolder( char *pchBuffer, int cubBuffer ) = 0; + + // Starts voice recording. Once started, use GetVoice() to get the data + virtual void StartVoiceRecording( ) = 0; + + // Stops voice recording. Because people often release push-to-talk keys early, the system will keep recording for + // a little bit after this function is called. GetVoice() should continue to be called until it returns + // k_eVoiceResultNotRecording + virtual void StopVoiceRecording( ) = 0; + + // Determine the size of captured audio data that is available from GetVoice. + // Most applications will only use compressed data and should ignore the other + // parameters, which exist primarily for backwards compatibility. See comments + // below for further explanation of "uncompressed" data. + virtual EVoiceResult GetAvailableVoice( uint32 *pcbCompressed, uint32 *pcbUncompressed_Deprecated = 0, uint32 nUncompressedVoiceDesiredSampleRate_Deprecated = 0 ) = 0; + + // --------------------------------------------------------------------------- + // NOTE: "uncompressed" audio is a deprecated feature and should not be used + // by most applications. It is raw single-channel 16-bit PCM wave data which + // may have been run through preprocessing filters and/or had silence removed, + // so the uncompressed audio could have a shorter duration than you expect. + // There may be no data at all during long periods of silence. Also, fetching + // uncompressed audio will cause GetVoice to discard any leftover compressed + // audio, so you must fetch both types at once. Finally, GetAvailableVoice is + // not precisely accurate when the uncompressed size is requested. So if you + // really need to use uncompressed audio, you should call GetVoice frequently + // with two very large (20kb+) output buffers instead of trying to allocate + // perfectly-sized buffers. But most applications should ignore all of these + // details and simply leave the "uncompressed" parameters as NULL/zero. + // --------------------------------------------------------------------------- + + // Read captured audio data from the microphone buffer. This should be called + // at least once per frame, and preferably every few milliseconds, to keep the + // microphone input delay as low as possible. Most applications will only use + // compressed data and should pass NULL/zero for the "uncompressed" parameters. + // Compressed data can be transmitted by your application and decoded into raw + // using the DecompressVoice function below. + virtual EVoiceResult GetVoice( bool bWantCompressed, void *pDestBuffer, uint32 cbDestBufferSize, uint32 *nBytesWritten, bool bWantUncompressed_Deprecated = false, void *pUncompressedDestBuffer_Deprecated = 0, uint32 cbUncompressedDestBufferSize_Deprecated = 0, uint32 *nUncompressBytesWritten_Deprecated = 0, uint32 nUncompressedVoiceDesiredSampleRate_Deprecated = 0 ) = 0; + + // Decodes the compressed voice data returned by GetVoice. The output data is + // raw single-channel 16-bit PCM audio. The decoder supports any sample rate + // from 11025 to 48000; see GetVoiceOptimalSampleRate() below for details. + // If the output buffer is not large enough, then *nBytesWritten will be set + // to the required buffer size, and k_EVoiceResultBufferTooSmall is returned. + // It is suggested to start with a 20kb buffer and reallocate as necessary. + virtual EVoiceResult DecompressVoice( const void *pCompressed, uint32 cbCompressed, void *pDestBuffer, uint32 cbDestBufferSize, uint32 *nBytesWritten, uint32 nDesiredSampleRate ) = 0; + + // This returns the native sample rate of the Steam voice decompressor; using + // this sample rate for DecompressVoice will perform the least CPU processing. + // However, the final audio quality will depend on how well the audio device + // (and/or your application's audio output SDK) deals with lower sample rates. + // You may find that you get the best audio output quality when you ignore + // this function and use the native sample rate of your audio output device, + // which is usually 48000 or 44100. + virtual uint32 GetVoiceOptimalSampleRate() = 0; + + // Retrieve ticket to be sent to the entity who wishes to authenticate you. + // pcbTicket retrieves the length of the actual ticket. + virtual HAuthTicket GetAuthSessionTicket( void *pTicket, int cbMaxTicket, uint32 *pcbTicket ) = 0; + + // Authenticate ticket from entity steamID to be sure it is valid and isnt reused + // Registers for callbacks if the entity goes offline or cancels the ticket ( see ValidateAuthTicketResponse_t callback and EAuthSessionResponse ) + virtual EBeginAuthSessionResult BeginAuthSession( const void *pAuthTicket, int cbAuthTicket, CSteamID steamID ) = 0; + + // Stop tracking started by BeginAuthSession - called when no longer playing game with this entity + virtual void EndAuthSession( CSteamID steamID ) = 0; + + // Cancel auth ticket from GetAuthSessionTicket, called when no longer playing game with the entity you gave the ticket to + virtual void CancelAuthTicket( HAuthTicket hAuthTicket ) = 0; + + // After receiving a user's authentication data, and passing it to BeginAuthSession, use this function + // to determine if the user owns downloadable content specified by the provided AppID. + virtual EUserHasLicenseForAppResult UserHasLicenseForApp( CSteamID steamID, AppId_t appID ) = 0; + + // returns true if this users looks like they are behind a NAT device. Only valid once the user has connected to steam + // (i.e a SteamServersConnected_t has been issued) and may not catch all forms of NAT. + virtual bool BIsBehindNAT() = 0; + + // set data to be replicated to friends so that they can join your game + // CSteamID steamIDGameServer - the steamID of the game server, received from the game server by the client + // uint32 unIPServer, uint16 usPortServer - the IP address of the game server + virtual void AdvertiseGame( CSteamID steamIDGameServer, uint32 unIPServer, uint16 usPortServer ) = 0; + + // Requests a ticket encrypted with an app specific shared key + // pDataToInclude, cbDataToInclude will be encrypted into the ticket + // ( This is asynchronous, you must wait for the ticket to be completed by the server ) + STEAM_CALL_RESULT( EncryptedAppTicketResponse_t ) + virtual SteamAPICall_t RequestEncryptedAppTicket( void *pDataToInclude, int cbDataToInclude ) = 0; + + // Retrieves a finished ticket. + // If no ticket is available, or your buffer is too small, returns false. + // Upon exit, *pcbTicket will be either the size of the ticket copied into your buffer + // (if true was returned), or the size needed (if false was returned). To determine the + // proper size of the ticket, you can pass pTicket=NULL and cbMaxTicket=0; if a ticket + // is available, *pcbTicket will contain the size needed, otherwise it will be zero. + virtual bool GetEncryptedAppTicket( void *pTicket, int cbMaxTicket, uint32 *pcbTicket ) = 0; + + // Trading Card badges data access + // if you only have one set of cards, the series will be 1 + // the user has can have two different badges for a series; the regular (max level 5) and the foil (max level 1) + virtual int GetGameBadgeLevel( int nSeries, bool bFoil ) = 0; + + // gets the Steam Level of the user, as shown on their profile + virtual int GetPlayerSteamLevel() = 0; + + // Requests a URL which authenticates an in-game browser for store check-out, + // and then redirects to the specified URL. As long as the in-game browser + // accepts and handles session cookies, Steam microtransaction checkout pages + // will automatically recognize the user instead of presenting a login page. + // The result of this API call will be a StoreAuthURLResponse_t callback. + // NOTE: The URL has a very short lifetime to prevent history-snooping attacks, + // so you should only call this API when you are about to launch the browser, + // or else immediately navigate to the result URL using a hidden browser window. + // NOTE 2: The resulting authorization cookie has an expiration time of one day, + // so it would be a good idea to request and visit a new auth URL every 12 hours. + STEAM_CALL_RESULT( StoreAuthURLResponse_t ) + virtual SteamAPICall_t RequestStoreAuthURL( const char *pchRedirectURL ) = 0; + + // gets whether the users phone number is verified + virtual bool BIsPhoneVerified() = 0; + + // gets whether the user has two factor enabled on their account + virtual bool BIsTwoFactorEnabled() = 0; + + // gets whether the users phone number is identifying + virtual bool BIsPhoneIdentifying() = 0; + + // gets whether the users phone number is awaiting (re)verification + virtual bool BIsPhoneRequiringVerification() = 0; + + STEAM_CALL_RESULT( MarketEligibilityResponse_t ) + virtual SteamAPICall_t GetMarketEligibility() = 0; + + // Retrieves anti indulgence / duration control for current user + STEAM_CALL_RESULT( DurationControl_t ) + virtual SteamAPICall_t GetDurationControl() = 0; + + // Advise steam china duration control system about the online state of the game. + // This will prevent offline gameplay time from counting against a user's + // playtime limits. + virtual bool BSetDurationControlOnlineState( EDurationControlOnlineState eNewState ) = 0; + +}; + +#define STEAMUSER_INTERFACE_VERSION "SteamUser021" + +// Global interface accessor +inline ISteamUser *SteamUser(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamUser *, SteamUser, STEAMUSER_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +//----------------------------------------------------------------------------- +// Purpose: called when a connections to the Steam back-end has been established +// this means the Steam client now has a working connection to the Steam servers +// usually this will have occurred before the game has launched, and should +// only be seen if the user has dropped connection due to a networking issue +// or a Steam server update +//----------------------------------------------------------------------------- +struct SteamServersConnected_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 1 }; +}; + +//----------------------------------------------------------------------------- +// Purpose: called when a connection attempt has failed +// this will occur periodically if the Steam client is not connected, +// and has failed in it's retry to establish a connection +//----------------------------------------------------------------------------- +struct SteamServerConnectFailure_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 2 }; + EResult m_eResult; + bool m_bStillRetrying; +}; + + +//----------------------------------------------------------------------------- +// Purpose: called if the client has lost connection to the Steam servers +// real-time services will be disabled until a matching SteamServersConnected_t has been posted +//----------------------------------------------------------------------------- +struct SteamServersDisconnected_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 3 }; + EResult m_eResult; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Sent by the Steam server to the client telling it to disconnect from the specified game server, +// which it may be in the process of or already connected to. +// The game client should immediately disconnect upon receiving this message. +// This can usually occur if the user doesn't have rights to play on the game server. +//----------------------------------------------------------------------------- +struct ClientGameServerDeny_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 13 }; + + uint32 m_uAppID; + uint32 m_unGameServerIP; + uint16 m_usGameServerPort; + uint16 m_bSecure; + uint32 m_uReason; +}; + + +//----------------------------------------------------------------------------- +// Purpose: called when the callback system for this client is in an error state (and has flushed pending callbacks) +// When getting this message the client should disconnect from Steam, reset any stored Steam state and reconnect. +// This usually occurs in the rare event the Steam client has some kind of fatal error. +//----------------------------------------------------------------------------- +struct IPCFailure_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 17 }; + enum EFailureType + { + k_EFailureFlushedCallbackQueue, + k_EFailurePipeFail, + }; + uint8 m_eFailureType; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Signaled whenever licenses change +//----------------------------------------------------------------------------- +struct LicensesUpdated_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 25 }; +}; + + +//----------------------------------------------------------------------------- +// callback for BeginAuthSession +//----------------------------------------------------------------------------- +struct ValidateAuthTicketResponse_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 43 }; + CSteamID m_SteamID; + EAuthSessionResponse m_eAuthSessionResponse; + CSteamID m_OwnerSteamID; // different from m_SteamID if borrowed +}; + + +//----------------------------------------------------------------------------- +// Purpose: called when a user has responded to a microtransaction authorization request +//----------------------------------------------------------------------------- +struct MicroTxnAuthorizationResponse_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 52 }; + + uint32 m_unAppID; // AppID for this microtransaction + uint64 m_ulOrderID; // OrderID provided for the microtransaction + uint8 m_bAuthorized; // if user authorized transaction +}; + + +//----------------------------------------------------------------------------- +// Purpose: Result from RequestEncryptedAppTicket +//----------------------------------------------------------------------------- +struct EncryptedAppTicketResponse_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 54 }; + + EResult m_eResult; +}; + +//----------------------------------------------------------------------------- +// callback for GetAuthSessionTicket +//----------------------------------------------------------------------------- +struct GetAuthSessionTicketResponse_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 63 }; + HAuthTicket m_hAuthTicket; + EResult m_eResult; +}; + + +//----------------------------------------------------------------------------- +// Purpose: sent to your game in response to a steam://gamewebcallback/ command +//----------------------------------------------------------------------------- +struct GameWebCallback_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 64 }; + char m_szURL[256]; +}; + +//----------------------------------------------------------------------------- +// Purpose: sent to your game in response to ISteamUser::RequestStoreAuthURL +//----------------------------------------------------------------------------- +struct StoreAuthURLResponse_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 65 }; + char m_szURL[512]; +}; + + +//----------------------------------------------------------------------------- +// Purpose: sent in response to ISteamUser::GetMarketEligibility +//----------------------------------------------------------------------------- +struct MarketEligibilityResponse_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 66 }; + bool m_bAllowed; + EMarketNotAllowedReasonFlags m_eNotAllowedReason; + RTime32 m_rtAllowedAtTime; + + int m_cdaySteamGuardRequiredDays; // The number of days any user is required to have had Steam Guard before they can use the market + int m_cdayNewDeviceCooldown; // The number of days after initial device authorization a user must wait before using the market on that device +}; + + +//----------------------------------------------------------------------------- +// Purpose: sent for games with enabled anti indulgence / duration control, for +// enabled users. Lets the game know whether the user can keep playing or +// whether the game should exit, and returns info about remaining gameplay time. +// +// This callback is fired asynchronously in response to timers triggering. +// It is also fired in response to calls to GetDurationControl(). +//----------------------------------------------------------------------------- +struct DurationControl_t +{ + enum { k_iCallback = k_iSteamUserCallbacks + 67 }; + + EResult m_eResult; // result of call (always k_EResultOK for asynchronous timer-based notifications) + AppId_t m_appid; // appid generating playtime + + bool m_bApplicable; // is duration control applicable to user + game combination + int32 m_csecsLast5h; // playtime since most recent 5 hour gap in playtime, only counting up to regulatory limit of playtime, in seconds + + EDurationControlProgress m_progress; // recommended progress (either everything is fine, or please exit game) + EDurationControlNotification m_notification; // notification to show, if any (always k_EDurationControlNotification_None for API calls) + + int32 m_csecsToday; // playtime on current calendar day + int32 m_csecsRemaining; // playtime remaining until the user hits a regulatory limit +}; + + +#pragma pack( pop ) + +#endif // ISTEAMUSER_H diff --git a/lib/steam/public/steam/isteamuserstats.h b/lib/steam/public/steam/isteamuserstats.h new file mode 100644 index 0000000..4ce4ee5 --- /dev/null +++ b/lib/steam/public/steam/isteamuserstats.h @@ -0,0 +1,488 @@ +//====== Copyright � 1996-2009, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to stats, achievements, and leaderboards +// +//============================================================================= + +#ifndef ISTEAMUSERSTATS_H +#define ISTEAMUSERSTATS_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" +#include "isteamremotestorage.h" + +// size limit on stat or achievement name (UTF-8 encoded) +enum { k_cchStatNameMax = 128 }; + +// maximum number of bytes for a leaderboard name (UTF-8 encoded) +enum { k_cchLeaderboardNameMax = 128 }; + +// maximum number of details int32's storable for a single leaderboard entry +enum { k_cLeaderboardDetailsMax = 64 }; + +// handle to a single leaderboard +typedef uint64 SteamLeaderboard_t; + +// handle to a set of downloaded entries in a leaderboard +typedef uint64 SteamLeaderboardEntries_t; + +// type of data request, when downloading leaderboard entries +enum ELeaderboardDataRequest +{ + k_ELeaderboardDataRequestGlobal = 0, + k_ELeaderboardDataRequestGlobalAroundUser = 1, + k_ELeaderboardDataRequestFriends = 2, + k_ELeaderboardDataRequestUsers = 3 +}; + +// the sort order of a leaderboard +enum ELeaderboardSortMethod +{ + k_ELeaderboardSortMethodNone = 0, + k_ELeaderboardSortMethodAscending = 1, // top-score is lowest number + k_ELeaderboardSortMethodDescending = 2, // top-score is highest number +}; + +// the display type (used by the Steam Community web site) for a leaderboard +enum ELeaderboardDisplayType +{ + k_ELeaderboardDisplayTypeNone = 0, + k_ELeaderboardDisplayTypeNumeric = 1, // simple numerical score + k_ELeaderboardDisplayTypeTimeSeconds = 2, // the score represents a time, in seconds + k_ELeaderboardDisplayTypeTimeMilliSeconds = 3, // the score represents a time, in milliseconds +}; + +enum ELeaderboardUploadScoreMethod +{ + k_ELeaderboardUploadScoreMethodNone = 0, + k_ELeaderboardUploadScoreMethodKeepBest = 1, // Leaderboard will keep user's best score + k_ELeaderboardUploadScoreMethodForceUpdate = 2, // Leaderboard will always replace score with specified +}; + +// a single entry in a leaderboard, as returned by GetDownloadedLeaderboardEntry() +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +struct LeaderboardEntry_t +{ + CSteamID m_steamIDUser; // user with the entry - use SteamFriends()->GetFriendPersonaName() & SteamFriends()->GetFriendAvatar() to get more info + int32 m_nGlobalRank; // [1..N], where N is the number of users with an entry in the leaderboard + int32 m_nScore; // score as set in the leaderboard + int32 m_cDetails; // number of int32 details available for this entry + UGCHandle_t m_hUGC; // handle for UGC attached to the entry +}; + +#pragma pack( pop ) + + +//----------------------------------------------------------------------------- +// Purpose: Functions for accessing stats, achievements, and leaderboard information +//----------------------------------------------------------------------------- +class ISteamUserStats +{ +public: + // Ask the server to send down this user's data and achievements for this game + STEAM_CALL_BACK( UserStatsReceived_t ) + virtual bool RequestCurrentStats() = 0; + + // Data accessors + STEAM_FLAT_NAME( GetStatInt32 ) + virtual bool GetStat( const char *pchName, int32 *pData ) = 0; + + STEAM_FLAT_NAME( GetStatFloat ) + virtual bool GetStat( const char *pchName, float *pData ) = 0; + + // Set / update data + STEAM_FLAT_NAME( SetStatInt32 ) + virtual bool SetStat( const char *pchName, int32 nData ) = 0; + + STEAM_FLAT_NAME( SetStatFloat ) + virtual bool SetStat( const char *pchName, float fData ) = 0; + + virtual bool UpdateAvgRateStat( const char *pchName, float flCountThisSession, double dSessionLength ) = 0; + + // Achievement flag accessors + virtual bool GetAchievement( const char *pchName, bool *pbAchieved ) = 0; + virtual bool SetAchievement( const char *pchName ) = 0; + virtual bool ClearAchievement( const char *pchName ) = 0; + + // Get the achievement status, and the time it was unlocked if unlocked. + // If the return value is true, but the unlock time is zero, that means it was unlocked before Steam + // began tracking achievement unlock times (December 2009). Time is seconds since January 1, 1970. + virtual bool GetAchievementAndUnlockTime( const char *pchName, bool *pbAchieved, uint32 *punUnlockTime ) = 0; + + // Store the current data on the server, will get a callback when set + // And one callback for every new achievement + // + // If the callback has a result of k_EResultInvalidParam, one or more stats + // uploaded has been rejected, either because they broke constraints + // or were out of date. In this case the server sends back updated values. + // The stats should be re-iterated to keep in sync. + virtual bool StoreStats() = 0; + + // Achievement / GroupAchievement metadata + + // Gets the icon of the achievement, which is a handle to be used in ISteamUtils::GetImageRGBA(), or 0 if none set. + // A return value of 0 may indicate we are still fetching data, and you can wait for the UserAchievementIconFetched_t callback + // which will notify you when the bits are ready. If the callback still returns zero, then there is no image set for the + // specified achievement. + virtual int GetAchievementIcon( const char *pchName ) = 0; + + // Get general attributes for an achievement. Accepts the following keys: + // - "name" and "desc" for retrieving the localized achievement name and description (returned in UTF8) + // - "hidden" for retrieving if an achievement is hidden (returns "0" when not hidden, "1" when hidden) + virtual const char *GetAchievementDisplayAttribute( const char *pchName, const char *pchKey ) = 0; + + // Achievement progress - triggers an AchievementProgress callback, that is all. + // Calling this w/ N out of N progress will NOT set the achievement, the game must still do that. + virtual bool IndicateAchievementProgress( const char *pchName, uint32 nCurProgress, uint32 nMaxProgress ) = 0; + + // Used for iterating achievements. In general games should not need these functions because they should have a + // list of existing achievements compiled into them + virtual uint32 GetNumAchievements() = 0; + // Get achievement name iAchievement in [0,GetNumAchievements) + virtual const char *GetAchievementName( uint32 iAchievement ) = 0; + + // Friends stats & achievements + + // downloads stats for the user + // returns a UserStatsReceived_t received when completed + // if the other user has no stats, UserStatsReceived_t.m_eResult will be set to k_EResultFail + // these stats won't be auto-updated; you'll need to call RequestUserStats() again to refresh any data + STEAM_CALL_RESULT( UserStatsReceived_t ) + virtual SteamAPICall_t RequestUserStats( CSteamID steamIDUser ) = 0; + + // requests stat information for a user, usable after a successful call to RequestUserStats() + STEAM_FLAT_NAME( GetUserStatInt32 ) + virtual bool GetUserStat( CSteamID steamIDUser, const char *pchName, int32 *pData ) = 0; + + STEAM_FLAT_NAME( GetUserStatFloat ) + virtual bool GetUserStat( CSteamID steamIDUser, const char *pchName, float *pData ) = 0; + + virtual bool GetUserAchievement( CSteamID steamIDUser, const char *pchName, bool *pbAchieved ) = 0; + // See notes for GetAchievementAndUnlockTime above + virtual bool GetUserAchievementAndUnlockTime( CSteamID steamIDUser, const char *pchName, bool *pbAchieved, uint32 *punUnlockTime ) = 0; + + // Reset stats + virtual bool ResetAllStats( bool bAchievementsToo ) = 0; + + // Leaderboard functions + + // asks the Steam back-end for a leaderboard by name, and will create it if it's not yet + // This call is asynchronous, with the result returned in LeaderboardFindResult_t + STEAM_CALL_RESULT(LeaderboardFindResult_t) + virtual SteamAPICall_t FindOrCreateLeaderboard( const char *pchLeaderboardName, ELeaderboardSortMethod eLeaderboardSortMethod, ELeaderboardDisplayType eLeaderboardDisplayType ) = 0; + + // as above, but won't create the leaderboard if it's not found + // This call is asynchronous, with the result returned in LeaderboardFindResult_t + STEAM_CALL_RESULT( LeaderboardFindResult_t ) + virtual SteamAPICall_t FindLeaderboard( const char *pchLeaderboardName ) = 0; + + // returns the name of a leaderboard + virtual const char *GetLeaderboardName( SteamLeaderboard_t hSteamLeaderboard ) = 0; + + // returns the total number of entries in a leaderboard, as of the last request + virtual int GetLeaderboardEntryCount( SteamLeaderboard_t hSteamLeaderboard ) = 0; + + // returns the sort method of the leaderboard + virtual ELeaderboardSortMethod GetLeaderboardSortMethod( SteamLeaderboard_t hSteamLeaderboard ) = 0; + + // returns the display type of the leaderboard + virtual ELeaderboardDisplayType GetLeaderboardDisplayType( SteamLeaderboard_t hSteamLeaderboard ) = 0; + + // Asks the Steam back-end for a set of rows in the leaderboard. + // This call is asynchronous, with the result returned in LeaderboardScoresDownloaded_t + // LeaderboardScoresDownloaded_t will contain a handle to pull the results from GetDownloadedLeaderboardEntries() (below) + // You can ask for more entries than exist, and it will return as many as do exist. + // k_ELeaderboardDataRequestGlobal requests rows in the leaderboard from the full table, with nRangeStart & nRangeEnd in the range [1, TotalEntries] + // k_ELeaderboardDataRequestGlobalAroundUser requests rows around the current user, nRangeStart being negate + // e.g. DownloadLeaderboardEntries( hLeaderboard, k_ELeaderboardDataRequestGlobalAroundUser, -3, 3 ) will return 7 rows, 3 before the user, 3 after + // k_ELeaderboardDataRequestFriends requests all the rows for friends of the current user + STEAM_CALL_RESULT( LeaderboardScoresDownloaded_t ) + virtual SteamAPICall_t DownloadLeaderboardEntries( SteamLeaderboard_t hSteamLeaderboard, ELeaderboardDataRequest eLeaderboardDataRequest, int nRangeStart, int nRangeEnd ) = 0; + // as above, but downloads leaderboard entries for an arbitrary set of users - ELeaderboardDataRequest is k_ELeaderboardDataRequestUsers + // if a user doesn't have a leaderboard entry, they won't be included in the result + // a max of 100 users can be downloaded at a time, with only one outstanding call at a time + STEAM_METHOD_DESC(Downloads leaderboard entries for an arbitrary set of users - ELeaderboardDataRequest is k_ELeaderboardDataRequestUsers) + STEAM_CALL_RESULT( LeaderboardScoresDownloaded_t ) + virtual SteamAPICall_t DownloadLeaderboardEntriesForUsers( SteamLeaderboard_t hSteamLeaderboard, + STEAM_ARRAY_COUNT_D(cUsers, Array of users to retrieve) CSteamID *prgUsers, int cUsers ) = 0; + + // Returns data about a single leaderboard entry + // use a for loop from 0 to LeaderboardScoresDownloaded_t::m_cEntryCount to get all the downloaded entries + // e.g. + // void OnLeaderboardScoresDownloaded( LeaderboardScoresDownloaded_t *pLeaderboardScoresDownloaded ) + // { + // for ( int index = 0; index < pLeaderboardScoresDownloaded->m_cEntryCount; index++ ) + // { + // LeaderboardEntry_t leaderboardEntry; + // int32 details[3]; // we know this is how many we've stored previously + // GetDownloadedLeaderboardEntry( pLeaderboardScoresDownloaded->m_hSteamLeaderboardEntries, index, &leaderboardEntry, details, 3 ); + // assert( leaderboardEntry.m_cDetails == 3 ); + // ... + // } + // once you've accessed all the entries, the data will be free'd, and the SteamLeaderboardEntries_t handle will become invalid + virtual bool GetDownloadedLeaderboardEntry( SteamLeaderboardEntries_t hSteamLeaderboardEntries, int index, LeaderboardEntry_t *pLeaderboardEntry, int32 *pDetails, int cDetailsMax ) = 0; + + // Uploads a user score to the Steam back-end. + // This call is asynchronous, with the result returned in LeaderboardScoreUploaded_t + // Details are extra game-defined information regarding how the user got that score + // pScoreDetails points to an array of int32's, cScoreDetailsCount is the number of int32's in the list + STEAM_CALL_RESULT( LeaderboardScoreUploaded_t ) + virtual SteamAPICall_t UploadLeaderboardScore( SteamLeaderboard_t hSteamLeaderboard, ELeaderboardUploadScoreMethod eLeaderboardUploadScoreMethod, int32 nScore, const int32 *pScoreDetails, int cScoreDetailsCount ) = 0; + + // Attaches a piece of user generated content the user's entry on a leaderboard. + // hContent is a handle to a piece of user generated content that was shared using ISteamUserRemoteStorage::FileShare(). + // This call is asynchronous, with the result returned in LeaderboardUGCSet_t. + STEAM_CALL_RESULT( LeaderboardUGCSet_t ) + virtual SteamAPICall_t AttachLeaderboardUGC( SteamLeaderboard_t hSteamLeaderboard, UGCHandle_t hUGC ) = 0; + + // Retrieves the number of players currently playing your game (online + offline) + // This call is asynchronous, with the result returned in NumberOfCurrentPlayers_t + STEAM_CALL_RESULT( NumberOfCurrentPlayers_t ) + virtual SteamAPICall_t GetNumberOfCurrentPlayers() = 0; + + // Requests that Steam fetch data on the percentage of players who have received each achievement + // for the game globally. + // This call is asynchronous, with the result returned in GlobalAchievementPercentagesReady_t. + STEAM_CALL_RESULT( GlobalAchievementPercentagesReady_t ) + virtual SteamAPICall_t RequestGlobalAchievementPercentages() = 0; + + // Get the info on the most achieved achievement for the game, returns an iterator index you can use to fetch + // the next most achieved afterwards. Will return -1 if there is no data on achievement + // percentages (ie, you haven't called RequestGlobalAchievementPercentages and waited on the callback). + virtual int GetMostAchievedAchievementInfo( char *pchName, uint32 unNameBufLen, float *pflPercent, bool *pbAchieved ) = 0; + + // Get the info on the next most achieved achievement for the game. Call this after GetMostAchievedAchievementInfo or another + // GetNextMostAchievedAchievementInfo call passing the iterator from the previous call. Returns -1 after the last + // achievement has been iterated. + virtual int GetNextMostAchievedAchievementInfo( int iIteratorPrevious, char *pchName, uint32 unNameBufLen, float *pflPercent, bool *pbAchieved ) = 0; + + // Returns the percentage of users who have achieved the specified achievement. + virtual bool GetAchievementAchievedPercent( const char *pchName, float *pflPercent ) = 0; + + // Requests global stats data, which is available for stats marked as "aggregated". + // This call is asynchronous, with the results returned in GlobalStatsReceived_t. + // nHistoryDays specifies how many days of day-by-day history to retrieve in addition + // to the overall totals. The limit is 60. + STEAM_CALL_RESULT( GlobalStatsReceived_t ) + virtual SteamAPICall_t RequestGlobalStats( int nHistoryDays ) = 0; + + // Gets the lifetime totals for an aggregated stat + STEAM_FLAT_NAME( GetGlobalStatInt64 ) + virtual bool GetGlobalStat( const char *pchStatName, int64 *pData ) = 0; + + STEAM_FLAT_NAME( GetGlobalStatDouble ) + virtual bool GetGlobalStat( const char *pchStatName, double *pData ) = 0; + + // Gets history for an aggregated stat. pData will be filled with daily values, starting with today. + // So when called, pData[0] will be today, pData[1] will be yesterday, and pData[2] will be two days ago, + // etc. cubData is the size in bytes of the pubData buffer. Returns the number of + // elements actually set. + + STEAM_FLAT_NAME( GetGlobalStatHistoryInt64 ) + virtual int32 GetGlobalStatHistory( const char *pchStatName, STEAM_ARRAY_COUNT(cubData) int64 *pData, uint32 cubData ) = 0; + + STEAM_FLAT_NAME( GetGlobalStatHistoryDouble ) + virtual int32 GetGlobalStatHistory( const char *pchStatName, STEAM_ARRAY_COUNT(cubData) double *pData, uint32 cubData ) = 0; + + // For achievements that have related Progress stats, use this to query what the bounds of that progress are. + // You may want this info to selectively call IndicateAchievementProgress when appropriate milestones of progress + // have been made, to show a progress notification to the user. + STEAM_FLAT_NAME( GetAchievementProgressLimitsInt32 ) + virtual bool GetAchievementProgressLimits( const char *pchName, int32 *pnMinProgress, int32 *pnMaxProgress ) = 0; + + STEAM_FLAT_NAME( GetAchievementProgressLimitsFloat ) + virtual bool GetAchievementProgressLimits( const char *pchName, float *pfMinProgress, float *pfMaxProgress ) = 0; + +}; + +#define STEAMUSERSTATS_INTERFACE_VERSION "STEAMUSERSTATS_INTERFACE_VERSION012" + +// Global interface accessor +inline ISteamUserStats *SteamUserStats(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamUserStats *, SteamUserStats, STEAMUSERSTATS_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +//----------------------------------------------------------------------------- +// Purpose: called when the latests stats and achievements have been received +// from the server +//----------------------------------------------------------------------------- +struct UserStatsReceived_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 1 }; + uint64 m_nGameID; // Game these stats are for + EResult m_eResult; // Success / error fetching the stats + CSteamID m_steamIDUser; // The user for whom the stats are retrieved for +}; + + +//----------------------------------------------------------------------------- +// Purpose: result of a request to store the user stats for a game +//----------------------------------------------------------------------------- +struct UserStatsStored_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 2 }; + uint64 m_nGameID; // Game these stats are for + EResult m_eResult; // success / error +}; + + +//----------------------------------------------------------------------------- +// Purpose: result of a request to store the achievements for a game, or an +// "indicate progress" call. If both m_nCurProgress and m_nMaxProgress +// are zero, that means the achievement has been fully unlocked. +//----------------------------------------------------------------------------- +struct UserAchievementStored_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 3 }; + + uint64 m_nGameID; // Game this is for + bool m_bGroupAchievement; // if this is a "group" achievement + char m_rgchAchievementName[k_cchStatNameMax]; // name of the achievement + uint32 m_nCurProgress; // current progress towards the achievement + uint32 m_nMaxProgress; // "out of" this many +}; + + +//----------------------------------------------------------------------------- +// Purpose: call result for finding a leaderboard, returned as a result of FindOrCreateLeaderboard() or FindLeaderboard() +// use CCallResult<> to map this async result to a member function +//----------------------------------------------------------------------------- +struct LeaderboardFindResult_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 4 }; + SteamLeaderboard_t m_hSteamLeaderboard; // handle to the leaderboard serarched for, 0 if no leaderboard found + uint8 m_bLeaderboardFound; // 0 if no leaderboard found +}; + + +//----------------------------------------------------------------------------- +// Purpose: call result indicating scores for a leaderboard have been downloaded and are ready to be retrieved, returned as a result of DownloadLeaderboardEntries() +// use CCallResult<> to map this async result to a member function +//----------------------------------------------------------------------------- +struct LeaderboardScoresDownloaded_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 5 }; + SteamLeaderboard_t m_hSteamLeaderboard; + SteamLeaderboardEntries_t m_hSteamLeaderboardEntries; // the handle to pass into GetDownloadedLeaderboardEntries() + int m_cEntryCount; // the number of entries downloaded +}; + + +//----------------------------------------------------------------------------- +// Purpose: call result indicating scores has been uploaded, returned as a result of UploadLeaderboardScore() +// use CCallResult<> to map this async result to a member function +//----------------------------------------------------------------------------- +struct LeaderboardScoreUploaded_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 6 }; + uint8 m_bSuccess; // 1 if the call was successful + SteamLeaderboard_t m_hSteamLeaderboard; // the leaderboard handle that was + int32 m_nScore; // the score that was attempted to set + uint8 m_bScoreChanged; // true if the score in the leaderboard change, false if the existing score was better + int m_nGlobalRankNew; // the new global rank of the user in this leaderboard + int m_nGlobalRankPrevious; // the previous global rank of the user in this leaderboard; 0 if the user had no existing entry in the leaderboard +}; + +struct NumberOfCurrentPlayers_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 7 }; + uint8 m_bSuccess; // 1 if the call was successful + int32 m_cPlayers; // Number of players currently playing +}; + + + +//----------------------------------------------------------------------------- +// Purpose: Callback indicating that a user's stats have been unloaded. +// Call RequestUserStats again to access stats for this user +//----------------------------------------------------------------------------- +struct UserStatsUnloaded_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 8 }; + CSteamID m_steamIDUser; // User whose stats have been unloaded +}; + + + +//----------------------------------------------------------------------------- +// Purpose: Callback indicating that an achievement icon has been fetched +//----------------------------------------------------------------------------- +struct UserAchievementIconFetched_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 9 }; + + CGameID m_nGameID; // Game this is for + char m_rgchAchievementName[k_cchStatNameMax]; // name of the achievement + bool m_bAchieved; // Is the icon for the achieved or not achieved version? + int m_nIconHandle; // Handle to the image, which can be used in SteamUtils()->GetImageRGBA(), 0 means no image is set for the achievement +}; + + +//----------------------------------------------------------------------------- +// Purpose: Callback indicating that global achievement percentages are fetched +//----------------------------------------------------------------------------- +struct GlobalAchievementPercentagesReady_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 10 }; + + uint64 m_nGameID; // Game this is for + EResult m_eResult; // Result of the operation +}; + + +//----------------------------------------------------------------------------- +// Purpose: call result indicating UGC has been uploaded, returned as a result of SetLeaderboardUGC() +//----------------------------------------------------------------------------- +struct LeaderboardUGCSet_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 11 }; + EResult m_eResult; // The result of the operation + SteamLeaderboard_t m_hSteamLeaderboard; // the leaderboard handle that was +}; + + +//----------------------------------------------------------------------------- +// Purpose: callback indicating that PS3 trophies have been installed +//----------------------------------------------------------------------------- +struct PS3TrophiesInstalled_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 12 }; + uint64 m_nGameID; // Game these stats are for + EResult m_eResult; // The result of the operation + uint64 m_ulRequiredDiskSpace; // If m_eResult is k_EResultDiskFull, will contain the amount of space needed to install trophies + +}; + + +//----------------------------------------------------------------------------- +// Purpose: callback indicating global stats have been received. +// Returned as a result of RequestGlobalStats() +//----------------------------------------------------------------------------- +struct GlobalStatsReceived_t +{ + enum { k_iCallback = k_iSteamUserStatsCallbacks + 12 }; + uint64 m_nGameID; // Game global stats were requested for + EResult m_eResult; // The result of the request +}; + +#pragma pack( pop ) + + +#endif // ISTEAMUSER_H diff --git a/lib/steam/public/steam/isteamutils.h b/lib/steam/public/steam/isteamutils.h new file mode 100644 index 0000000..0104488 --- /dev/null +++ b/lib/steam/public/steam/isteamutils.h @@ -0,0 +1,305 @@ +//====== Copyright � 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to utility functions in Steam +// +//============================================================================= + +#ifndef ISTEAMUTILS_H +#define ISTEAMUTILS_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + + +// Steam API call failure results +enum ESteamAPICallFailure +{ + k_ESteamAPICallFailureNone = -1, // no failure + k_ESteamAPICallFailureSteamGone = 0, // the local Steam process has gone away + k_ESteamAPICallFailureNetworkFailure = 1, // the network connection to Steam has been broken, or was already broken + // SteamServersDisconnected_t callback will be sent around the same time + // SteamServersConnected_t will be sent when the client is able to talk to the Steam servers again + k_ESteamAPICallFailureInvalidHandle = 2, // the SteamAPICall_t handle passed in no longer exists + k_ESteamAPICallFailureMismatchedCallback = 3,// GetAPICallResult() was called with the wrong callback type for this API call +}; + + +// Input modes for the Big Picture gamepad text entry +enum EGamepadTextInputMode +{ + k_EGamepadTextInputModeNormal = 0, + k_EGamepadTextInputModePassword = 1 +}; + + +// Controls number of allowed lines for the Big Picture gamepad text entry +enum EGamepadTextInputLineMode +{ + k_EGamepadTextInputLineModeSingleLine = 0, + k_EGamepadTextInputLineModeMultipleLines = 1 +}; + + +// The context where text filtering is being done +enum ETextFilteringContext +{ + k_ETextFilteringContextUnknown = 0, // Unknown context + k_ETextFilteringContextGameContent = 1, // Game content, only legally required filtering is performed + k_ETextFilteringContextChat = 2, // Chat from another player + k_ETextFilteringContextName = 3, // Character or item name +}; + + +// function prototype for warning message hook +#if defined( POSIX ) +#define __cdecl +#endif +extern "C" typedef void (__cdecl *SteamAPIWarningMessageHook_t)(int, const char *); + +//----------------------------------------------------------------------------- +// Purpose: interface to user independent utility functions +//----------------------------------------------------------------------------- +class ISteamUtils +{ +public: + // return the number of seconds since the user + virtual uint32 GetSecondsSinceAppActive() = 0; + virtual uint32 GetSecondsSinceComputerActive() = 0; + + // the universe this client is connecting to + virtual EUniverse GetConnectedUniverse() = 0; + + // Steam server time. Number of seconds since January 1, 1970, GMT (i.e unix time) + virtual uint32 GetServerRealTime() = 0; + + // returns the 2 digit ISO 3166-1-alpha-2 format country code this client is running in (as looked up via an IP-to-location database) + // e.g "US" or "UK". + virtual const char *GetIPCountry() = 0; + + // returns true if the image exists, and valid sizes were filled out + virtual bool GetImageSize( int iImage, uint32 *pnWidth, uint32 *pnHeight ) = 0; + + // returns true if the image exists, and the buffer was successfully filled out + // results are returned in RGBA format + // the destination buffer size should be 4 * height * width * sizeof(char) + virtual bool GetImageRGBA( int iImage, uint8 *pubDest, int nDestBufferSize ) = 0; + + // Deprecated. Do not call this. + STEAM_PRIVATE_API( virtual bool GetCSERIPPort( uint32 *unIP, uint16 *usPort ) = 0; ) + + // return the amount of battery power left in the current system in % [0..100], 255 for being on AC power + virtual uint8 GetCurrentBatteryPower() = 0; + + // returns the appID of the current process + virtual uint32 GetAppID() = 0; + + // Sets the position where the overlay instance for the currently calling game should show notifications. + // This position is per-game and if this function is called from outside of a game context it will do nothing. + virtual void SetOverlayNotificationPosition( ENotificationPosition eNotificationPosition ) = 0; + + // API asynchronous call results + // can be used directly, but more commonly used via the callback dispatch API (see steam_api.h) + virtual bool IsAPICallCompleted( SteamAPICall_t hSteamAPICall, bool *pbFailed ) = 0; + virtual ESteamAPICallFailure GetAPICallFailureReason( SteamAPICall_t hSteamAPICall ) = 0; + virtual bool GetAPICallResult( SteamAPICall_t hSteamAPICall, void *pCallback, int cubCallback, int iCallbackExpected, bool *pbFailed ) = 0; + + // Deprecated. Applications should use SteamAPI_RunCallbacks() instead. Game servers do not need to call this function. + STEAM_PRIVATE_API( virtual void RunFrame() = 0; ) + + // returns the number of IPC calls made since the last time this function was called + // Used for perf debugging so you can understand how many IPC calls your game makes per frame + // Every IPC call is at minimum a thread context switch if not a process one so you want to rate + // control how often you do them. + virtual uint32 GetIPCCallCount() = 0; + + // API warning handling + // 'int' is the severity; 0 for msg, 1 for warning + // 'const char *' is the text of the message + // callbacks will occur directly after the API function is called that generated the warning or message + virtual void SetWarningMessageHook( SteamAPIWarningMessageHook_t pFunction ) = 0; + + // Returns true if the overlay is running & the user can access it. The overlay process could take a few seconds to + // start & hook the game process, so this function will initially return false while the overlay is loading. + virtual bool IsOverlayEnabled() = 0; + + // Normally this call is unneeded if your game has a constantly running frame loop that calls the + // D3D Present API, or OGL SwapBuffers API every frame. + // + // However, if you have a game that only refreshes the screen on an event driven basis then that can break + // the overlay, as it uses your Present/SwapBuffers calls to drive it's internal frame loop and it may also + // need to Present() to the screen any time an even needing a notification happens or when the overlay is + // brought up over the game by a user. You can use this API to ask the overlay if it currently need a present + // in that case, and then you can check for this periodically (roughly 33hz is desirable) and make sure you + // refresh the screen with Present or SwapBuffers to allow the overlay to do it's work. + virtual bool BOverlayNeedsPresent() = 0; + + // Asynchronous call to check if an executable file has been signed using the public key set on the signing tab + // of the partner site, for example to refuse to load modified executable files. + // The result is returned in CheckFileSignature_t. + // k_ECheckFileSignatureNoSignaturesFoundForThisApp - This app has not been configured on the signing tab of the partner site to enable this function. + // k_ECheckFileSignatureNoSignaturesFoundForThisFile - This file is not listed on the signing tab for the partner site. + // k_ECheckFileSignatureFileNotFound - The file does not exist on disk. + // k_ECheckFileSignatureInvalidSignature - The file exists, and the signing tab has been set for this file, but the file is either not signed or the signature does not match. + // k_ECheckFileSignatureValidSignature - The file is signed and the signature is valid. + STEAM_CALL_RESULT( CheckFileSignature_t ) + virtual SteamAPICall_t CheckFileSignature( const char *szFileName ) = 0; + + // Activates the Big Picture text input dialog which only supports gamepad input + virtual bool ShowGamepadTextInput( EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, const char *pchDescription, uint32 unCharMax, const char *pchExistingText ) = 0; + + // Returns previously entered text & length + virtual uint32 GetEnteredGamepadTextLength() = 0; + virtual bool GetEnteredGamepadTextInput( char *pchText, uint32 cchText ) = 0; + + // returns the language the steam client is running in, you probably want ISteamApps::GetCurrentGameLanguage instead, this is for very special usage cases + virtual const char *GetSteamUILanguage() = 0; + + // returns true if Steam itself is running in VR mode + virtual bool IsSteamRunningInVR() = 0; + + // Sets the inset of the overlay notification from the corner specified by SetOverlayNotificationPosition. + virtual void SetOverlayNotificationInset( int nHorizontalInset, int nVerticalInset ) = 0; + + // returns true if Steam & the Steam Overlay are running in Big Picture mode + // Games much be launched through the Steam client to enable the Big Picture overlay. During development, + // a game can be added as a non-steam game to the developers library to test this feature + virtual bool IsSteamInBigPictureMode() = 0; + + // ask SteamUI to create and render its OpenVR dashboard + virtual void StartVRDashboard() = 0; + + // Returns true if the HMD content will be streamed via Steam Remote Play + virtual bool IsVRHeadsetStreamingEnabled() = 0; + + // Set whether the HMD content will be streamed via Steam Remote Play + // If this is set to true, then the scene in the HMD headset will be streamed, and remote input will not be allowed. + // If this is set to false, then the application window will be streamed instead, and remote input will be allowed. + // The default is true unless "VRHeadsetStreaming" "0" is in the extended appinfo for a game. + // (this is useful for games that have asymmetric multiplayer gameplay) + virtual void SetVRHeadsetStreamingEnabled( bool bEnabled ) = 0; + + // Returns whether this steam client is a Steam China specific client, vs the global client. + virtual bool IsSteamChinaLauncher() = 0; + + // Initializes text filtering, loading dictionaries for the language the game is running in. + // unFilterOptions are reserved for future use and should be set to 0 + // Returns false if filtering is unavailable for the game's language, in which case FilterText() will act as a passthrough. + // + // Users can customize the text filter behavior in their Steam Account preferences: + // https://store.steampowered.com/account/preferences#CommunityContentPreferences + virtual bool InitFilterText( uint32 unFilterOptions = 0 ) = 0; + + // Filters the provided input message and places the filtered result into pchOutFilteredText, using legally required filtering and additional filtering based on the context and user settings + // eContext is the type of content in the input string + // sourceSteamID is the Steam ID that is the source of the input string (e.g. the player with the name, or who said the chat text) + // pchInputText is the input string that should be filtered, which can be ASCII or UTF-8 + // pchOutFilteredText is where the output will be placed, even if no filtering is performed + // nByteSizeOutFilteredText is the size (in bytes) of pchOutFilteredText, should be at least strlen(pchInputText)+1 + // Returns the number of characters (not bytes) filtered + virtual int FilterText( ETextFilteringContext eContext, CSteamID sourceSteamID, const char *pchInputMessage, char *pchOutFilteredText, uint32 nByteSizeOutFilteredText ) = 0; + + // Return what we believe your current ipv6 connectivity to "the internet" is on the specified protocol. + // This does NOT tell you if the Steam client is currently connected to Steam via ipv6. + virtual ESteamIPv6ConnectivityState GetIPv6ConnectivityState( ESteamIPv6ConnectivityProtocol eProtocol ) = 0; +}; + +#define STEAMUTILS_INTERFACE_VERSION "SteamUtils010" + +// Global interface accessor +inline ISteamUtils *SteamUtils(); +STEAM_DEFINE_INTERFACE_ACCESSOR( ISteamUtils *, SteamUtils, SteamInternal_FindOrCreateUserInterface( 0, STEAMUTILS_INTERFACE_VERSION ), "user", STEAMUTILS_INTERFACE_VERSION ); + +// Global accessor for the gameserver client +inline ISteamUtils *SteamGameServerUtils(); +STEAM_DEFINE_INTERFACE_ACCESSOR( ISteamUtils *, SteamGameServerUtils, SteamInternal_FindOrCreateGameServerInterface( 0, STEAMUTILS_INTERFACE_VERSION ), "gameserver", STEAMUTILS_INTERFACE_VERSION ); + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +//----------------------------------------------------------------------------- +// Purpose: The country of the user changed +//----------------------------------------------------------------------------- +struct IPCountry_t +{ + enum { k_iCallback = k_iSteamUtilsCallbacks + 1 }; +}; + + +//----------------------------------------------------------------------------- +// Purpose: Fired when running on a laptop and less than 10 minutes of battery is left, fires then every minute +//----------------------------------------------------------------------------- +struct LowBatteryPower_t +{ + enum { k_iCallback = k_iSteamUtilsCallbacks + 2 }; + uint8 m_nMinutesBatteryLeft; +}; + + +//----------------------------------------------------------------------------- +// Purpose: called when a SteamAsyncCall_t has completed (or failed) +//----------------------------------------------------------------------------- +struct SteamAPICallCompleted_t +{ + enum { k_iCallback = k_iSteamUtilsCallbacks + 3 }; + SteamAPICall_t m_hAsyncCall; + int m_iCallback; + uint32 m_cubParam; +}; + + +//----------------------------------------------------------------------------- +// called when Steam wants to shutdown +//----------------------------------------------------------------------------- +struct SteamShutdown_t +{ + enum { k_iCallback = k_iSteamUtilsCallbacks + 4 }; +}; + +//----------------------------------------------------------------------------- +// results for CheckFileSignature +//----------------------------------------------------------------------------- +enum ECheckFileSignature +{ + k_ECheckFileSignatureInvalidSignature = 0, + k_ECheckFileSignatureValidSignature = 1, + k_ECheckFileSignatureFileNotFound = 2, + k_ECheckFileSignatureNoSignaturesFoundForThisApp = 3, + k_ECheckFileSignatureNoSignaturesFoundForThisFile = 4, +}; + +//----------------------------------------------------------------------------- +// callback for CheckFileSignature +//----------------------------------------------------------------------------- +struct CheckFileSignature_t +{ + enum { k_iCallback = k_iSteamUtilsCallbacks + 5 }; + ECheckFileSignature m_eCheckFileSignature; +}; + + +// k_iSteamUtilsCallbacks + 13 is taken + + +//----------------------------------------------------------------------------- +// Big Picture gamepad text input has been closed +//----------------------------------------------------------------------------- +struct GamepadTextInputDismissed_t +{ + enum { k_iCallback = k_iSteamUtilsCallbacks + 14 }; + bool m_bSubmitted; // true if user entered & accepted text (Call ISteamUtils::GetEnteredGamepadTextInput() for text), false if canceled input + uint32 m_unSubmittedText; +}; + +// k_iSteamUtilsCallbacks + 15 is taken + +#pragma pack( pop ) + +#endif // ISTEAMUTILS_H diff --git a/lib/steam/public/steam/isteamvideo.h b/lib/steam/public/steam/isteamvideo.h new file mode 100644 index 0000000..acb262e --- /dev/null +++ b/lib/steam/public/steam/isteamvideo.h @@ -0,0 +1,68 @@ +//====== Copyright © 1996-2014 Valve Corporation, All rights reserved. ======= +// +// Purpose: interface to Steam Video +// +//============================================================================= + +#ifndef ISTEAMVIDEO_H +#define ISTEAMVIDEO_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api_common.h" + +// callbacks +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + + + + +//----------------------------------------------------------------------------- +// Purpose: Steam Video API +//----------------------------------------------------------------------------- +class ISteamVideo +{ +public: + + // Get a URL suitable for streaming the given Video app ID's video + virtual void GetVideoURL( AppId_t unVideoAppID ) = 0; + + // returns true if user is uploading a live broadcast + virtual bool IsBroadcasting( int *pnNumViewers ) = 0; + + // Get the OPF Details for 360 Video Playback + STEAM_CALL_BACK( GetOPFSettingsResult_t ) + virtual void GetOPFSettings( AppId_t unVideoAppID ) = 0; + virtual bool GetOPFStringForApp( AppId_t unVideoAppID, char *pchBuffer, int32 *pnBufferSize ) = 0; +}; + +#define STEAMVIDEO_INTERFACE_VERSION "STEAMVIDEO_INTERFACE_V002" + +// Global interface accessor +inline ISteamVideo *SteamVideo(); +STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamVideo *, SteamVideo, STEAMVIDEO_INTERFACE_VERSION ); + +STEAM_CALLBACK_BEGIN( GetVideoURLResult_t, k_iClientVideoCallbacks + 11 ) + STEAM_CALLBACK_MEMBER( 0, EResult, m_eResult ) + STEAM_CALLBACK_MEMBER( 1, AppId_t, m_unVideoAppID ) + STEAM_CALLBACK_MEMBER( 2, char, m_rgchURL[256] ) +STEAM_CALLBACK_END(3) + + +STEAM_CALLBACK_BEGIN( GetOPFSettingsResult_t, k_iClientVideoCallbacks + 24 ) + STEAM_CALLBACK_MEMBER( 0, EResult, m_eResult ) + STEAM_CALLBACK_MEMBER( 1, AppId_t, m_unVideoAppID ) +STEAM_CALLBACK_END(2) + + +#pragma pack( pop ) + + +#endif // ISTEAMVIDEO_H diff --git a/lib/steam/public/steam/lib/linux32/libsdkencryptedappticket.so b/lib/steam/public/steam/lib/linux32/libsdkencryptedappticket.so new file mode 100644 index 0000000000000000000000000000000000000000..f53085fafaad08a526276390594897c75068327d GIT binary patch literal 1130574 zcmeF)0bE<;HSbR$ute_nhZE=Q+>woaa2}B!SyD7jMbP$k3AiR%$CX72U3Bd01F``UbTs zPqS-AEerpDpT0i10X$>GqJCD%GK;3x8^$e~VMhNMMn+{#nzowjSHJ<|25rEm|5&g? z`H}So{^TJ}{y4Bqev<3f$m^8+5u$8M>)n3}cxpG8wB%3g^_nI>$?dPkdf6uZUvmG~ zV0~)-^A~EG{K)nwmeLAW;%Dopuhnk-&RLDqpR~r_eDm=y|Kx+a&ab+A|kk)c)wa*t+r3|1@NIGcugW`kX6UH+*o% zM#JrnmAl=OXI-)O+!br@{-FIclGpd}(}5rP_g^}1`~Uyq650RB{{8pKR$%!LPqMD- zB+F&-kMQ$j{M>_|Zv4o&kF@RR&E!WWMu7r^6u{V4r)$~t-Z8~i+mpD_v2 z{yon4w`t3tKs?T6zoWmWe}GT&^*iy$w1tz1|HNfa(`RTLPT}WS{7iG%41FFZ@beOW zUdGQXe$xNFnzG=vl-IB0^$Esr!1>7Baqh;uq_uc-hyPO-Jz2NK* z+#23;-PNyr{Ciig|KC~nzj1-~_!Di@-@EEh&wt^H^Lx+#@WbWq*vd?8L+*EMFF znP-{4`P%wBc0cuK=4;(QjlFp4%%#s2T)z3≫-cYP|1)`=2_p(-XSjJ>MI9{lLdx zItQ=&p&v_`kI^WvEG&V#`o^p z`SS{h`m7JUj5|-J{XH z)8FfF{Jno$#v$#jhtIt4hsQcbepH^*xblY42mbBJtH)k@=wH9I?L)uw_Z`0Isef9j1XY7s2pWL$X*uizje?9m6{)>NEo9yz7wf?*Hi!Zg)@baUk#vr< zl>a2XePuGz)b_uWL684rea*ULq-pQR%l6evv8*3SSugPmY59$%te5R)((?a~x`^m` z%Jyfa<^OGcmHNM|KbDf8#J^9=?=zi z$E#@C_6sTHk>gvLw!a(Fk0)*WyVBP8ro}%_i%n_A_q!E~#Z&F~y|ngsrNzOt^4*tG zemVY+rNtMg^`Ga`;-R$kpG@0dOgTbv{Pr&$t~%c0wEPFt;xp6g zYd$UiAEuROcUpaaC2jrHY5A>5i^FN#zbB=rXBB=wDoJ#)^AEH?{CuT^FZ4E_M~n9Kw9ib+kRWx@m!Ktp7YcC*Xp$WeLHRY zm(%+H?zHvYY4OL?;`gWRKR2y@|1oX-`jquDQ|?M@&rsU&Hl~$-UrPPT`Sxf^eiA3r zwhyG0_cLkh`_lG*Us`_uk+yziT7E~;%GZ;Y|F6>Go6_RnrNtMg?SD9Je-EYY@2s@- zpGw>QlC<>~rS*@8)AoNsTKdAY>)mhCws)kJ=k~PvTAP;t{b~K-xwQRlP0RoLY1@~j zoge#B_9y-6wY2RU((1#Sw*Swh?f+m}{FSu$xs?6M^{OH*|DKff(jR?k>-*F4yD+Uh z-jwa-c($i)|GBj7zn+p__SckFUqxy4F_adcNXze$wEW&k+y8sg^1nN6eP>#KxG*jK zWZHQ1i?r>ZOe@dowE9WC-;nxmNn3wU+WyUH`OT;8|MZmlko-QJmfx1N^4*=5Uoo~x z{*&#?k$=u}nszl_pQf$X2GL)GTQW4cPDp$zCP@CLm)8GCZp5EjukP2+)lSiVhw@L{ zxklaFOZxx7cJ50uv@^N=pRj&^`5G;U`3F$`zQlU%gNSAOcGS1~Uo*6Elv}nBV>`=7 zm$r{%dC-`lRWiSGaegPhyhhuCd?o#*D35dP22JkQ&(+S*u0ekGx~2SVSl@|f5mF7Z z{!!G|h+TTB+`GTHa18kcQr7=Mw!b?=n_+pri1kL~FNZDLKa2HcwQ6(hf33Dl%6q}m z{)W@?zZUC9HfCs_VEHZRuZ9gv<#`|S3w|y`+ld{>@oYvsQJtY($aogzNSKz6|3-fsR!BLz36WV^tZF1 z#GgWc2%Sfz}V}C&g)KWec`*pRu(6 zJ5hflxY_*!l=KnQLlE^R&z>YMfFn=iIS=#efPLr>*-+a14`|Pdx~2Z|IPyuX%+Mk% zU$z|IuBG;?K&%Cqj`tO$>$+yCKYa|xtmSbrJlpZ}S1etid3;YjIU5o|xvw3OcqNMC{W{D3;XQ?wP>U&V%{{O?7% z`r?{)Gs|}d(g!Ej)F4Sii9yt6L(n)( zDo|domG9cUcehr4MaieiJ(X3JH|?$tR92OI>T=({y_F?9ZuC{^>)v@y`OexMlEDt& z?k^zWmHW%DVGfu3c2rkaR%_LPDqrPZ>~v4%o}K<%%6EEi)-K(=t-NyY&Z=Ad0rlEb zslP5)+3g5a*6t2y<)1Ct{^{HtSysE_#@+jKH{o^l?(&_Iae3ete`WdZy}R~pM%Mm- zx2kf7r~Kwht&{`aUW>m-_uByLaAP87RN(ifaAUmVH%NdeU@TD+7AE zE2^t&Dob|nIeC_gN!32DaQ*o_vEz41cGePzH>)) z<<32R^%Cs#?W?ZDN^RGUojWV5t9Jxs&E8}xbY9g_1N(e9;ws5gU+=#qnHiGn2X_q$ z<(5L0mnX}s3SVA+plXM|d{YY3G%HeZEhD+;Zk16ZR%WG4!E-&|`#VTCdJego=iEO@q zSM}l!^>F$6<*Rp9FRk6_-Lub=+;*pT-vJqzRQ39nMb)?L@$KGw^Ww^s*L!Z>yOhPA zeKmU*YprH)>Nb0B-nDzzzGMznm3wz!2;t6Z0y3VY28#!@=jN2^s@jthczmf%>GADR zA$zX2YnQL4+N&i;!aX$@L@_>M99_Q1Q;80=@0PTsDEhvgH%s3_-``i2wpOis+i;xw zG4$^AvABAtx6)I7%kD~_RI^+GaE;luW4BM+S-IP{OZI?sfzX;o`NE@B>*u59tFElP zS=*mHnPt13-YSKD1_k!*Qdf|DemPaEHEg#Z!+*J4VX86Q^C}}(hPSQbRY$Fp^!qET zs^xr_*E?_AncPVx?Ekc>~fX+ z5sWMQs&=A2YW5!3z1M>))n`l6(iEsPl^8n9D{FUFs-sZpwk^-=o$C7Sxt%1{^1M!Z z8BH(TyChtGVSeW$O-u8a9_c&Q+VUgFJ!xLsKaEv4?X8hH!={g-f9~76v!)6s-_A-j zg7jk<-1k+fDqfa2Z+YUhq*tWo`#(tf=ZdiHFVA;b(s#|b`W6hsKA%2;N~w>Ws!CKw z_3r&LaoUY@W3eWd9o|Wj9oSi|=5cSEmF1R~@89zd(=uFK_tnVd(6f8*;(&tokb$qJ zx)L?K19Qt8abjSoLfSn$kPg>xi8P$MOmIM-H)`UZefulb3#?Ykl~^UfppYEr(B>Y@ zWS0+fYTy$k5mRmCSSR4$KIP{YFzHq_S{&F z0T(N=Mh4G)KCISX*Y2v?qh8CV$>n&><-0uU`huF?e`C!qZP#wJ{yuG&n(%0Qf*j;@fnG7%X-KgCt1;z@Lcb8l! zlZ9Lgum%Hv@<0OnJb0;=`Q()vo!NU(9L$pz15Ez-8jE*$G_)jkRkIgOyi?mH7n^-J zoLzxROb_uwtv~|Q%3kadm5Gc=7dWzUV}IM>Se?5LH?2fL@E2!ck$JQ7vwFyUVOD_@zsU6&Ly|nl#+I7 ztK17N#J%MTO+M+f68F)o@T0$4jo0#Ojr#ve+`~#F|5j?N@hofQ;#RWtI{fJW>D#YY zk>s#WZE0d|OKBt@`EQlVE18=tJw+|m*Pg1%vks}`XBGCDEUUh)lvqzGIjz*pDv~lt zBtLq2R;s-iR4x{7BRNT)dQPiwRPsvpBU%>sWK>J!i0}y}{9kH9&v^r1t!COaTE_pA z|9u6|t>oF59Y2=cyAhqDP2&IZF9XMxi{})wUY^TtQ0vXw^V}wI=59QdFllos>4RJ+ z=}%Yb(T=C;dFc7CP04?y=4W~*(x0Z%<5@D(SE>A0Yqn+E8&bA6Y8~7jn`?o8kn(KM z987Oj`B}6a#(H_yEtW?wzfqN6j_)fLh7Uy)I+`0NBuNFYiS(~(lBkHjkJk2(-zuF z+h{xOpq;dfcGDi(OZ(^m9iqc@gpSfNI!-6(B#qMbcl}7aXLw7=p5CaXTPOZnn@irhvri! zEv6;3j0S0#HqmC#)dCfZEfXglqq-L#Jm&=ERHC+H+i&{?V_c>L5tt<+8(G>7I^*tN9ZV>pp!H~XQ}ogkDpqomD;I;=FmLqq%P{FCA5Ni zsGkOCkcMd!ZKiFsop#Y~+D8ZI2py#pbdo0MEY)7(@ly-6Qag3f9GXX+)I}?(mj-AZ zZJZ7$ZNQdYM9jBAjFstw1 zL~YbgvuPf6(jrUSWMw6SYt)wb4v! zrw*D$vuO^^qxrOuI;o2m(PHYRCA5rssF(U_fY#9<4bukNOj~FxZKIvEi+0l<+DC`! z2py$kbevAmNgAg!G(l(S9G$1yt85=?p;nqn?bJcDXg1BEh15x1w1^f{H!Y=Q)I+`0 zPXn}$hG_$BqAj$Qw$l#UNxNt_?V-JNfDX}NIzmV37#*h*bcQDAES;nCRC`UYe*-mA zE49%~YNrmGO><}-&8LObNnNyaHI&{A4PE2xKhsgL?;fY#DF8l+*`KpSZjZKf@>mA2Ck z+DW@;H|?Rlw2uzZAv#P)=qMed<8*>f(m0)=2|7#Xsdj?xOpVk;E!0YFG?Ut?gJ#ie znnUwwJ}sn9>Y_!on3m8|T1G3VhkB`x`e}gH(mEQXVcI|&X%lUxEwq)k(RSKNyJ$D< zp}n+^4$vVwOh@P_9i!uPf=<#nouLUjOXui3HN3&`lA5T6TB(g@Qag3fESgPoXdca{ zh15x1w1^f{H!Y!Mw1Rr5m-?um252pY!OPo956wnokRJ=912G(c-<9SzbjZJ>>`i8j*~+DhAKJMEyIw2OAr9@=nx&IBXpFG(Q!IK zCuy9{&;*^Ob9A0+Z?T=Jk(#K5T4^S=QwPnW*))gd(R^A+ozz8(Xfbuu5?V^jXa)69 zFZIy?t)+D|NW-*&Hqs{AOj~FxZKLh9gLcv`+D&_CFYTiPbeN9NQ94G)=>(mmaXLd2 zbe7K1d8#e2ovD$UsD)aojb>5@&7#>fhvw0IT1cJLMT=-Lb<+}BO3P>k^-wSMQ9ljP zIvS*5+CUp=6K$p~w3W8ecG^KZX&3FLJ+znh(E&O{hv_ICqvLdfPSQA?p$R%m=jc3@ z_af!}Km#>W6SYt)wNZTYU2SKl4w_B#Xg+mP7cHi4T1v~PhkB`x`e}gH(mEQZ4YZLq z(Pr90TWLG(pq;dfcGDi(O9$u>9i}66l#bDHI!WVnh9>ANoul*AkfGPRky@ygW>PzK z&@7rwb7&sTr-jr>U9^Z6Q#UQ4rL>GzP!IJ|9}Uo2T1SJlfi}`++CtlD2koR?w43(O zUOGUB=rA3jV|1KO(m0)=2|7#X=seX{@Vuf%YN8fur8b&L?bJcDXg1BEc{HCEQYUrM zB3ew{w1k$@GFm}B)JuKTPXn};*3lph(+1i|n`kp_p{=xyw$l#UNxNt_?V-K2j}Fiw zI!s6CC>^8Ybb?OOIGv#hI!ov1Jk?gR{i%_fsFm8Noo3NInokRPzK&@7rwb7&sTr-jr>i>aHI&{A4PJ=9ABw3gP)JRR#N^R6m9WQ#~qjZdp(+N656Lgl&Q4Qa-RiD$OR%)Y})J`2Vi)Pb2 znokRu8uZ(N@|)yJ$BZqQi8Aj?)P`N#k^e z8rSpqsfA`zJ9W@(nnw$%ix$%oT1qRZhx(|W*3vo}rVX@-Hq&<6MSJJ~9id}%k|yXJ zHJJ3{w@@2(&@7rm^JpP;QV;dhS{kMew23y;R@z28X&3FLJ+znh(McMoGc-YG=^UM> z+9~>RJ7^Zora3f^=F>vzq%K-Si>aHI&{FE5Uh1QM8lbhbjs|I%Hqb`eOj~FxZKoZy zlMc`!I!s6CC>^8Ybb?OOIGv#hYB*J|Un4b93$;=k&7^kfpjkAV=Fmdwq%K-Si>aG> zsF(Vvp9W|xt)oF2rVX^2w$N7EM%!s8?V{bZhxXC|Iz)%*2%V&HIztn5md??6s+sk6 zFi;b7KVLh7O(>ZLyFrvX|^>u8XMX#;JfO|+S|&{o<`J7_2EqTRHI z_R>B&K!@ls9igLijE>Vu8m9?5OXsP6ibLBq6x zHqs{AOj~FxZKEA@fDX}NIzmV37#*jRG)`yf9G#~ce(#OUXHC>bGpU^x(PHYRCA5^5 z(F*FJUK*xNw1u|Q4mv=G=rA3jqjZdp(+N6B<8+1^PGi5ICTgKpYNMIdP8~FhX44#+ zNAqbRb&HXd`W=Ewr6>(H=TLhv*0$rQ>vh#_0^5rE}DP z-}Ns2$wF<^L33z6bx}7hr5@_1@;l@u-!N^UO|+S|(l$CkN9Y)xq;Z;{vvi(nR-PZ! zLao$BGpU`rXb~-@ZdyW1X&J4c9_pn&>Zbu(OY3NuHqb`eM4M>~ZKZ8=fDX}NIzmV3 z7#*h*bdtvD3{B8kI!6s>@O-2uYN1wYqnXrB9W;w((>$6_3#p41(PHYMUh1QM8lbhb zjs|I%Hqb`eMB8Zx?WA3_oA%IN+D8ZI5FMr?bevAmNgAg!G(ipTVZBomwNNXy(M)Qm z4w^;tXg)2ZPU@n?)J;ohDJ`QO>ZLyFr(xPa8)*}5rY*FUw$XOlNxNt_?WKKmfDY3U zI!eds1dY=fI!ouM_FldI4b(&})JkpCL9=K!&7p4$~1jO2_CpouHF6P7`#N&QlG4A4IMj4w^-?X%5Y!`LvKa zsf!lTV(O+Pw3L=n5A{+X_0s^YrFAq&!?b}m(k9wWTWBk7ryaDL_RwD1M+-CcdU8@1 zEv9Z-LQ81{^-wSMQ9ljPT3Sbgw1GC#CfY(f(m0)=vviKmQ|%nKFEvsV zwNe|+q;~3{Su~sG&^($?3#pU3Xb~-@ZdyW1X&J4c9_pn&8lbhbjs|I%Hqa*8Oj~Fh zZKoZyi+0mq+D8ZI5FMr?bd-+KaXLXKX`If`1l8GzP!IJ|ANA7!4bm`eppCSNHq#c`O512V?Vz2si+0l<+Dm8g{p}3=!Kn&-PgwL( z6TY`9aS5%UJ{qLWv=`s6l=R~?PG_lx?+MC!6SYwX&7p;~h?dX_>Z7$ZOq*yc?V#PX zj}Fr@I!SXh{2euvuaFke5~|_zf~x#9Oq=K^wcv9|l5QBEUlA+tc?q$b_E8Jo$Cu@q zG>hg@CoQI>)IW{UJY$_JuZ{w_~U+ISq}XY<8KPoiAT`BBL2u-tJFJeml(fueO%JR zZiy2(4{1>90dWg$ljB9)M<*yAe5>UZG$_Y`bZv6nP?LTG?bJytXdi8o`awFQZ2vI+ zUVw-{JXj>5q}#1%g;mhWwL${4?PQ)MD z3yWLOPsCD9i;KswUiSY2es8__B|LwXdipZzQEWy1iTJ~Mo#KCB`!hFaYw-K`Cq?{% zzPO0rGe0BZ_tPgt{9gH45x>W6PQ;D$yold)ru_rN@69)e_`?E5@kz9^D8E-t{9mXC z5x*17CYsUjMGNXvdRHUxv|{mn`1=gv*%%+ib5M_>9rYxhi*Z`SFVOdh4o&llAHelc{2=O0{E+-!IGBZg zFMb&PQN$k#2#WuR_7E??@7EXq3H2=I;`i^1o6yfi{IbLrF%SJ${0RD&_)+v@F&}@E zQ!GIHh!^2J5)08U#E+w2h?iiT5uNDA;-xsx#LF~oNW2{VUvz2Oh`3qPM#Zi8`;uZ2 z&KL0tw7+;I+F$%6+F$$>+F$%M+F!g1?Jv5~{^HeWe^LIhz*%q`+F!gD?JsUe`-|71 z{l(9q{l(9s{YCuYyG*eR?JwSd_7^{g_7}_1{$d5%U)+KA7jH!SiypMUSc&!*ccJ~o zo6!EE7ws?ZM*EB3NBfKajP@6AM*E9Cw7<9q?Jw>{`-}U~{-Pi4FFuI&7e9~o7hgpC zi$6sBi`8g8UOOD7ia@4FaqG_S0l8c{I@7R@UQr}|Wk0Y&r5 z|E9WBjDbY++9hsNvApzVN!+Ajhr~G&2URSqy!jIQRg3{b^ExH2P_ZQS7D?<@F$Mz7 z>z3H5V%gMNDshgAapG&<3W@D1c1rA(*rH;W#D0l26-(CMT8R^HVZnEcB@RkFp<>yU zw?X0&6_-fdBypdLW!K&oiMv#c6IAoIN!+I53W+-;Zc?#F;x37UDwd*odnER&*e7wH z#1$%*qI!oUcB?ob@rcAu6-&{*V-n}67$=10osihB;-JKFi7hG)OPr8cQ*ndDa}p=s zl;dxdSVRAqnox0*#P|zOIDQp3ODumbda6&wEfU)#?ox59#CD0>RNN+Umc&geZkISm z;-HEB(|%#Phzjc78MUj z?3Y+mu~eJV0yHzZI8OrOH*s0=t ziAyEUQE{Qf6%yN3?3CCmu|>r$iTx65DlU?^R^r47b^c2nlz2kLZiyQt9#L_L#7z?S zskl_)7Kyu5Tqbdw#BD0BkhnwQCKY=m?vgmDVz0zK68lx`lekaf3Kjb$9+KFt;(){> z5<68~EAg1bIV#2{M}&#HAAFsJK_+3W@D1?vvOnu|>rL68k0AR6Hbct;C5rb^c2nlz2kL zBN8`AJfh-JiJK(uQ}LL@EfROBcwFK(iQ7~>A#sPqO)8$0xJ%-oisKUZNbFbfjKqBs zSEx84@sPxB70*gMBC%7&a}tk9oTK7-i6%`z7Kx1#kEqxxvHTggsXi6kB(_Q1rQ%G9?Gm@C*e-FF#7!!8NSq^aP{mmi z=S%EYakj)xi7Ql`BXN<$ZWZTA?3UQ6;(UoqCC*WCp~Mvu+g0q8*ekI`#V(2c5^E|h zlDJml#H;H3mpCZ#go@n~H%L69;u49QB<@pjsl+W3cd58c;x>uf5MwZY*MHYW{N%~x~ zr2mJHsq|kE;YlF{Y5H$oyx!3nv%ceI?4YL zbRSh7cl?Vg{W_I?LZu%#BPD&YN`JSc-@YwwU9F)ozxx-97Miif?x|RVzwVajh;RDH z8XQ43Rz?C2L&W7UMnlr95rZSX1vMEOuwMVUDHHDRn^OKEzkyYfUo4s54(9h%-pTWO z^%drKWV;L>+P3&@Dw85)68XLP-w(aqKV=O)nb8pSA-C&4cLddrJvIN6RO5L_bTrgu z)Z6uFsGF}sGp5)*6G*>3KG>Ln>9uL$9v2Q^dn`2jYyuS)RC~3=D(9~M+zpcD4O6#% za;2u{ov-pf`VFZSg7j=qvJ?0dmj{nTl3S0fttT#ghppe3 zl|xS{#C6+opO78zQ8{cy4!M1iKcEWUh-%afp|?I^{!U-$t#i!(cKFT75i?6czYBAS%Q02F9CvLY6${+g<=4&-8 z2epjo!2r70QZ&3Q(w3!c#Auw75(COoBv+E9NXEsbXmZ&)`BUsm>qeKQlyfGz?&Zb8 zqdw3Z;?>yU!6St@gwTv7c7Im|PQpS*>>fEc(eV+=zxX42jW}WRaB4=>!dR&6x34YW z9ERBaofZ1Y8+i#S3LQs7vOxaDzp1tis4Zn7PWzNC<%GW$+n^oM=Bb5~_Oi?9 z(f@B>m-_WDJKoNeV~QTESQZT|OWD1wMvcpA# z#r!s@{N89%#}^Ixk1s4Bn=_)JNmL77t&iO)%hX}19Hu^iETfr@BTd&z2Snp996WMA zwm&#ihq|hao`TDd7HM?I91fg7p+QUNsN`Y9 z0=qP2{40|8W<&H-TJ*Zv5b~1M7F0wYa=5Tj<(Vr>HX9?&jtVS{?lDELn@1`uQsqmk zPDi2auG!%QNNkO6O+@rEM7PdGKAni{ok#4EjgeJk%Pg=)w#)%rfyr43frHJ)YgP1&w@@z+ytRP8(klmX?B#`pm(BQ7q`S;7=+&^x ze4GBld~ewC3GCQ>Z>KtzSkXd5G0N~z?t`%+bLgo==t=XVPe)$tfBl?ue;G4#+=r4W*I>!VQd3HvMl6)-UY6%tER;WRylmk*EW{toUA}NV7G9jb(1eB3 zcFQ(D1q(l}FYJH%)Joq#X;ws*hI(%=aGe zv7lBqjs&j52_qdJCt3+Q8Y(>WdbZI{U64+(2NcJ zKlZ6aRC=Q!Vsb28Qykqq8=5g3JA(2XqE1sXdDFId4W0@dJaS2+3|_Wqs1U;(hAbmC zHef?TG*q0nBs5^VesO!$nDlW&#I5If-F8fJah&!jMvH>C0@mnibp8dm1>!2HUgw7f ztjP{9wTV(hHYQ#CZB~zk6PjrhtYKdMmi!3@(p(a_1G0lkAxD?_w zvc2~jqc;5&sZkl8x2XbUssdS(#}?gU?8vBbcC4uRY=@yH&|x&!T93DnIzj9&EYBxQhJI^q>w|C-VlF~DJ0$~yQsCOBr}zU# zps7NvljFzrDfiWFad{MR@W`28mNv;m)8<6C8pC~oogEpG!vRb5D$A}1R%oHuZ!;e{ zf^1$rydrRV^eStQlv*vty8@UQzk1jp%WX@`f57ENS)Q4`JoJ>M=7Q)}sYz?pSWsjL zoD$n=kOq3WdlmAF9596jG9w9fS&Q9^ytL>(dvvoFbg8Gu z%^q{D$jBI+{x9|yoE>qOth~+`>cfgDsg&4$O_pct%VYkGsq>{eRC{5$H8s6FlxO<+ z&!prd%Ta&mK33cZ;{LB;u|MN{aYVNpUp<@=utm391~ntfX+Cr}ir?VQ2=%Q{D_6)$ z>!4;)D_fVZG{{QZpk`Ama$4hp{@ougo@4tpY>4_)J?Vb@8TqNJ1HZEz2wP>Qd+1A2Crrc%<`?RG1y-TTV3O#26HsTM@V@8cLv}Vpd`q#IP)vWMH($RC4JizqR9)pN8WLl_8VJYJEV9Y%zoe?5gV=HfWJSN%a+^ zk^_#{u3Nn4R`auKRDsS?1E*lo zRNW0&_3q_-Ahn!7E=D;!)61#KcbY2S6ZNWm7-}3iFw;GZ)DaEPz)+#hq z9qJ^Ce!n7+7rj%pw+~lY%tA56RLvebY{ZaliQXyC{qV{fPn?am%XY*cvPerylN{Zm zhIUM{`gq-V*?ij;OH_+&vE#5fYDA7oi~sj2`XQe!WkNBY-oH+ALuWF@YmuWYt3pfR z%r!-hP7fz*UyYC3;+rrnJ$U4eupD0|W`udF(_U-9WjK1jlm!C>=MM!V<~wW{7R~pr zz~ta7r{E=~6Oql<$h8K{o1R@6I%DA*+m4>~9U&E@XD$Z10^8A~#)ZDKxlOp{D zDfA*W{4dFMi#4>_kP-T{aRt*HHis_7rooGB=6bmwl0si=m@*-;em^mX3*b#y5#4OK zc(c(Q8df>V?i>15juz&av6SNrctb9D5w4g|;{|ivD+RglJ*i*@t~= zXFH>9X)#8r zZt%fVFEuQ~z(#nTiCxAkKfg|!erkHQY5I55PfS0T zHr^h7UiwS)Hg!D--k*)@x)wMkd9708(c*C#65l>s>cfbVyoi^BAxWMQ--P1ELZf;m z8y=NP#eR2wNtO;DR1*nYnL18G#bWv6?_H%OFI*dOC~v!P_1^hcUbsGH(=S{b*8Q0a zSL7bKHB*-_ylGO65~5spogvSE^|^$8Df{DU{Zh8=4U`g>t+V_~m$DzM)h}h=`^Gz6 z%2XxG{m#zkq_{N{4*v=4P}-Ue zC!^xU+l^X0`-{jz-eti)XKGf+!zh=-y*O1f*Z&^vU%y}u*Td-6tcaQ`#$WjYHai+O zou(Q;NBYQv@$*lt)^HxGNet$VK0Lt+O-MJXL)XRmsuvz9WIUHM*eds4&>}alQaT>L zDyku#)rk4$J#v#B8t^TR>x<|A`P>RQ=;uD_^cq}uW1%CmSLTv~?jv=JN^r_ix^OZ{ z?Uy2@x_e2PX%;TdG|gXKgEFdZtorCNbD2?_dP&Yqm2r0by~qHSl`Wb6Y7d?@q)bE~ zn0|cv8Jr5TPia@wX((=zlxJLSRJ*?mTj;HLWKQpoQ7lg1*T2fB6FRzcv1|78uxHvdOYC?2tP=gtdt$ zj~{_`2(`hmBS;Uzm8fOQv_%=b1rWD)Azf@fN?4|Dh%7{Wt(kdgaP2$^K)kDJu$ zdz}jnE^C%NV+ueaR(*{Ll^(G=xzJb(TrcYS2)LfJ?? zSBNA~ervKlR^selDd&5M!<%~?RpdkU*-<_Ij5wk|)Zjo8IiqT)uEEKa`;htG!-FnE zRxnxnsGLG)gWeM6uuJX{)P4%{&Ec=08Sx-fn%8`9pKJ#8q^XX+sSCGy{`MatZ>-XZr>PM-WyT*}gOUv={2*Q6d~v7-)k z7qk8n^{6$J7#0VjBU{r(GjraC5hTk#dWZqZhz|NqzT|DE~?{Jnl2-}^58XB1=4-}}$W$FJ_c z*U!85pAuZ^{@#C1-hcA`UO(^Jf12@R|L^_h_7T9ZvTF4zx;8J{`_jwm^{CF1K$$F^GJM{ zC@l8|TTJ-4uQ9}DdeK|u113dSf#-~v$GXh*KbOb3y^bIjMXxgz95x@ibd{z(fcqbO zzz2y7@j@OtW1!XI)@SheEGP0{Y-eBzr3T!Le z$OCPxEsi%F!=xQAu-md&NzQ!696mtQAI-ttFFq-RhgBJa8y<_~hWZV73;Rqy&&kL= zF85c*wMd4nI9~G{vasPfS+=9T4=){N7s`Q0Wq29?7kSsG#Noo8vt-XP*F`JvUX06; zXRiO6Of--PxnY65e_}-h<&y2(@k^x8^4Y;bY?)H#%=qY#Dzi)8=PX5)#9WumBTcqC zE|;SOIp!e?C(O=$HTPJoP_KkYHZ$^i;^#sn;%c;)Oh0yT@eVeB;YGzQGs=Ay;RC->r^4=RQ zzJ0#_n7O`1YUTCm4f^(VSh!%W|2z&yx=LT9$)_|8V( zIlsW;kp=Tsc`G&klP56{$(urXIJhjl`Hq@9O+BwLd@W-5CdwQ-u~7385@fL>XUS&Y z!FxeimV;8rdF_-8)aY>NDLg2_lANhG@dC$%Q)SsHGxcq}V-+pAeV)x@{`qnAzR*kO zY#c!soQlY)$zG4MUpiRyy{bHQUzsnc`|`Z`_8^j&4;@4{sGowNsz0gYQ(r1ho=vI) z{1clG-IN{R`)Cw&0F(Ya2JQc9P2OVLKhKSmZLf~l9L~cB0Og1~U&r@PlGil7_(61w z<;9;qCT)${w?|!v<|2=of8N*s%&Ji09MqFzqcqe*@*Jr~o4P=bljnX8YOhQh9=rL# z#L@^+g46dZV`L4^_?R_@kI^pFAFEkAeTLqD*F;V4iI^;*XAPkf^EHY3S1}CXa%ey~ zlNq~>1;`^ZVm|Z&b~|O3PvYVv>XG)3S$~e=YkH3`Z#gVG@Av~c!(p@@hEVhtG@T6V za-}s!td4lWVPtZ?d>~SFqttAe!A+6@#z1@$Q(XmJfpf6KqL`^(^2zN(e~7*(YF!br zuEFsZ4As1d*@F5yV&tKzY3Ud!p7iXg!>AuD`xgQ4yAQ^*@irRjX>oYXl(*Gzym{B) zU8+G@Gd-!4eyRrK6R%+lTnFo)3rt|W8i1e1vgzY0oebRaSXsU8{;(`R92uN`SkFTa zV!AnX%A?+Yz3f*q-&tQF^POUBTM_lk*zUR5Z!#akha;tg9t_^<;Bk^agQLbFc~sKd zOa-+VKjj^FbNEeJBZ;NHA{XpevDC_ON}k`IY@D<#j+0h>oXo^HiSZ?7 zYI?VEQg)}#kq@JE70DB%<|>>VW?{YBk%`$E(s}i|&%s2^f?U0r#NoWa)gC?JHHVrEshOHJ zIa9;O=?eO*euo^ak-S3~6CJWQ%++iub2XV2W|&DSualy{aaYQC0@`C8$ho3CZb z_3>@iVXduRV!3oiI0hJ$1hJ0nEA==WFVA zLhmYQ&*Z@H41?fNU!#t_~=~Wm{PcL}O9C{s1-~T*9bNxC@uuzPA zw7lwuu@ZEf<2Yb+8#8wMwr+FZs-MqL~gOa z{DaK&(NW*6zijG#TYt&?zu8|h|EK*0AGFf@OCK6Ay}vxBrplb(tNvnBBST7m`O%B2 zzu1%g=WacgX2E9(Pu-Yr|EdHRpjK@%CwxP1`3g1qKaap1?#2Ie zkD(u_?`tH-L);JL;(aUJ5g8gb$|cQm=3}|XHx8cpSOg1kKZGlzCFF5fI)9$rF}jO=ZY5MJ`ylGEFaiKgxXQ!x*JdspjzeWw^rSvmj7EUoG=@ z)l>X(nNU~yi~YDoyI;lzr?Fsg|M}83(`%F0-ScBb8IddT(4=1ap}J8UJTRr&Po<1G2~`!GvhjoYrsW1Jz&cYu~pv_Fx|0%O@bOteSt zRrN02X6kz=jC_^!J{ePF3Sl}V_p+I2ib((TnTzk=$3Bnty-(Wr!!n}1h+BmjOrh}X zXUZd|%p;NQ#{MT)VW9rB$sGQiK0=k$Ycd=RNsoAO`ix{h34BA7>)qX`Yt>P3XB?M) zz}er_`;p%QTO@il9Iq}e6FzTY=+(t~1)kPAY@3{_NCyAL@ zGDn-5#bfKpLn*g-au(v`n|cw=i=Ld1k7|cH<@A#&)+?bm*T)R^neX@>>MiEB6g(C= zVZO6Jbl8Fq@!xsa_=q_ilNx=t|JfDETEJuptr^~nz=o5&T9JJmSeWhwhQ$VR<*}Y&=}>O7dVbqt^R2 z4o2`l6n-ifkM-q-seT?k8~56{(cUQcPZg0O)6|#d&_=l4y+iX^(SK#t)VUboH=(!E3}$DPOU{@|`UV$@k`>`6x-7;Kbh(MK~jbD2lTUz>`#Pjm|q8Eh@ zv~rbSoRB-QEP{Lc(#z!DetH5svqlE-v{o*A)(GYYXLGCMlcF^< zD*Avl@Zj|1uBPcZIGoJM9InM=C7Ig@-eZ`O@9?DD@T>d%Yknd3`)9f3e!mV+Rhr~v zapL_AbND%Vsej~@OP-J=y(&#XulitW;1s-Q#$t2*puVyNpgJmm=%HTf6Qc)=GWxnO zC?knlh05_^XOa~bxtY3zmeMjY>Q`GofSD!Ah16;-GAN75iGfEs&<*8_*K#~koo2l< z+{xT-OIe9BMzRJA)EW^7!g~F4 zHIsZ(=@-N3V6W->iagl=%xXL=)!$&kuQEt^gDF#b;nyWG-eAIR(Il$Ea4gpN`9IWq z5S~frF38(U(OkT#Bpq-08%w9_lbm;XOUYv1jNY$bHRG56N!7j7n?rUN^Q~DSm-TI@ zs(Q(M``bzR@fZF#ia3a2d#RA>Q|z{Q{eP=M;<1@IoPiwV?IcX!}5JGm|*fy{oLQ9}=2TAJj{LA>;Ug74AbRs`=T;e8~$hlI_ukfsn%CUPPc zTpTZZMSmYjc86yZ_&$SHfHdYiK8IIG>Dc%@3ZZIs*?UMG5p>Fjet@FmJB3R(N-KR1 zN6PaRdH*1Jzm%cwmp0&jNxi41-!G~6k8mx+^9T&&^$W4$Roc71e8<^gDYl{`SxF8Op#ggf8n{397ELAp`J!GA&xvdeHv;CzXju~>fIxJ{X&a8 z6nR8F$P6r7V7m(aQLPmb)9vWHs6%hn^pv`d zlQzRGvN{~~HLb0<_mnD4jyoUIV|jA3IP{;VFIya|PS;~+a+{Ti<+MGk5Z~D-`Q}_? z2s404Ki*-$Bw^zt(mE(9{1vnk>oS=F1$wiWyNU4 zGLEE14nW8@`85>0{QsD{7WgKrte=!X14gD`fudEbR&Aw93#e3H1xcw&F)j9iBI1ih z7JOg=s4cXl#g0Q16?b(-*Hv`g6(1{XMM3QY+oA}iBBEBUSaD*CmdEm_NWTBMcV;q4 zlac`X>F+0<%-qMh=brPw=W*xGaQX8Vuz`atq z7g=1fV?bUE^5u(fqjKm1-2`+#U4&HF+^l0|a$I&pH-!u-!vu%(9_5#xWJtsHvhi#^ zM!cM_4`jtixn=Dh7dH&{C)-@3R05<@EttHn z*#-uomr!J*9&^A#yD+lBPegZX;7bvOJ@6P}5J&ikLJ3qGy9!V!731YAJGKA}K$!&B zFy>xJBj17gkov_4Wq%{<9uUQn-k(XU82jMZv-caqiSME=+E!w`2`s+rkD-aegPXuA zXnLZs7bRf|OkA0N{>rD!-{Crl?kGf&`t;ew)Q7As z!0<3cKR&GfvAbki_KEzmQ7GSz`^f(eqx>&qu6!xCku_s!G4DVFsJZ+%07@u-9rmwk zNOidmoVh_;2jYXT17t1JkXhWSH}8Ws^~aNRV1}^{d`*Thez_0hBCRUzfcqJul}vY} zCxv$#!AQVjOZVhP_kX~Dg`KMGqw$$I9>iGVtcemo70O>hV1dWD<485oN32jjmLkTA zT2o3%D0_hJ;2E0X3P>&qREirFsmgqchtdx4J4tGFgJNq?zZl$5BAr_#lpmo)mCybl z>!VKxVxm-7+>Z3f*CGH~tD>Ce`kh{1e8@zQ$CaOXV-W2-gUP9WJ1zTY50 zk?#Z%DtQU-l;k_XC*PwmW+vZ-ba9A9qqH8C0Q9yhm;<5XMYq4ebe$X_KoO~E2fSMn zSNEN;VqB(INz_Y`uJzwHQB2LUFqcvU($2jDN|s{*wD>jbF6TZoriK)+NvC)Vi1y&Y z^Ej3ExS*k`e?1>adpR+kXeSrgW#WOyjzHS0-&bf)2tm7z8iroEdsCd0V=RbXn*dg5 zJ2f1K&=*;7er8em4kjI%EAQaH0ggf$9qvk#c{A?0(^(|I^BrpfbM4sb`HWqYLD+_7 znL&6Nih90==l+U^P7h<#l&X4hhu=eA$_h|`eG>H(SS%cCQnG5O^!4edQXBS)Zrg+# zo_5&`1TM&8+=yI-dkRG{5HEM%1P|4vxXkF9j42?V-fKR*9df=L;|LiHDj*8^t9H}L z%;qL`f=XR9;TpOKVqde7B6x~m17#RzqH7q|KO-Os!5M_ojZ&F$-^Iixq&b5&c>k^V2TY99XiY`7WOKt5+6wY(ox4f690r`Y7_`V{X($B z2BuyY(r>W^;VWCzc~A!WuKF#7VDVI;>f{RiF_KY;zc8)oAZc1b>rt9) zU;Ly$Fp`-i%>TsDpLyL&u1K|C2uY_VZy(A#Xh&KcUI31_#7+M8JhL-}%5g?IDdtbO zEmXG8cs~l6M%VbXsC2w(P4^c68~++Va~>6hC4a}I%h~fZcHo8?p%o_L1YaMo;AgKC zQ;EzyX$NRm8w;A1EE2j2<#&P$LS;dW>so;VsAWw;#ceRy(Hlm+(Pi%wg{>Eh$DlS$ zs5s+cN@1i?TlagNUhI!MAJ=IIO71hJ3gzdLri~>tK2E3{%g(vE6K%cC+G?UKd-`X> z;(cUR&?0-lxP@)8^8h$Y#zY}ui3`wTBqIKYibCaw?@(Qq{@4fyFU~cwcT{?Vu=sVf z;j#=c?!~^uM&oBFkbtJdYGKK96bVZn!m)E~|f{4OJO*S$+Ul5q3fork>0<066# zbxXr+q)OwlwH2!N5;Zl>>j}sY?#0kp+6RlgLk2~ReCQ`~efXu)$>_%TFs>2y#PRbI z-NQkThPSS9G@;~XXVjYrut;aK(znmwMQjusDUFH7#CFh1AdI6XkOJ|=kA+H0G#^HW zZy1y{$in)NjA3N(WVXGp`+t~h#HWzjhBe-bAJk+O_3m)11fwGD*kMe>U&d4rpH{`m zzi!_7?!F`(TKpRM6o5h@h_=<67Bl)$Exiu(lZ{zZy|X)khO58}mzV6$1Z;0({I?9i zu1O5ihO;nXF4O)=qPq}u4*}gaH3>hBQ>yIeqx|f!M=9_-4)+!Q7c%}cqFp>{YsTLU z42=Q}sUjBB>&Vx~9J%g}uKuZ;E7Lp5i*d}SjnJts*vu}|I~W-wV5l%KQ!Y+%xdQ*|G@d zwU!+2h67^pQ>bikjaA_Wq{a)2=>s0n@b_VRLhEraZkgCFRNAjF!U?Z#F&pbffT<1- z*a&aYh)r8pqXwfJPD>Qkp499-Y_wkll5fT=PvVR7Ew1Y>Z}#*dzJt>x3($G_P&`U+ zbo^XWWSMRd$`kRkq-fYE;LJdNIrSg!0||a$I)~ zFSvW;#7ciwvq*V3uqavA`l_#E27O+>=pySwLzFJe}ws z0IN^)=lxS(c#bWm(W9ahfR7IfXuDFc z|GyBEiMpj&+oo#q#A)$En_r0NC(0APL53=pnf%R=p%((XnVp#7*G&xXCJTee0NRcB z?S?(obGjNIz%ywgl4{zP*xeMQeGsw(`$XQ2Y=rxM5~NUxyI1gHD4`@eNku2am{}o| zJ%rg%>^0m?^qk`BFSV0>K|Ax%MEdr5mx_&i{2WJU{|)R`6-R~>jv!!PBO#Ur)Wm)> z_aLO##O=Bpr_+r__o+03YFtdiq@^`^UP3ha+eNM%Z%GFfZWqi|p>m@uCn~)Wcm!SB zhC7HrHC6AVqXH9fX29irkbT7|9tr7tu#tpR?5J_O;4FXv5A9k>1~1N?Ygr^zHexv# ziB^}U_L%)t>Bm+~g7psC;vnjD|jjhe)D`d&0iDS*w!I>AXFEFj`Lm7ff+L&LxV`AL7bAj-PmaF?mQYjzb^!^N=y^SnzZwY zN2JdE(YXNQX>}gGaNajaQ^L3Le5sLq^5~5TN^f3T6&=xR#=;zjchaQ(&bk=;sp6jG z4&z}E-4Q+iRObdWou$F~JfhFspPl!aOb)lR13iUybo2Z^^rYZf$qH?sl1gtPg z!+O9&ydP_zf@`SB4lAU}+T`FOuOQ9K_y={-mA*&ZD=a-oeC3>P!zFRP27JFfi6($?{(n@0I8V=goS(Fe^F33?_bb5n%L4dL z6SV$9R5f(P|JA|xPkhH5|H*ZKRQj())6uvk{cw?4{7LLcK00F=%~CgE$^U4PJb-d% z6G0yo#i3kmdi9KDMaZNgEgO^MTfY;SJu0U14Kcd;ae+)WSDt@q`a|>OzK2h6rzzX8 zY#GBZob)AS5u%H|{FI03542}GmWjKuGf0ZUhAyEDpA;pPZ%Es1+zbpl6g|JEbHj8| zCiRg%q0a}g9YnWF{aA1aNphqLmM5;n>`6-#pQArYcybjBG?q6Z+OvY@77+^jDbj%S zNcMG+JC*@Hhc~;nVCFO=Q{O1mCA9+JxFz2Wc(B6*ZoO=Q6!7g-ru^Z=8-w zhukKhffTWkv@9CC`LTZ#uka=}7_mQbG)h2?ge8|!(Owktp_9-OL24+^^J6g3YR@jh0}j>JW1qZLV&vq z&nJ3}o4GwjuP@Yq@F6*9vq`P6$MM4r2OA0Rh!fxal{m2~iGr!Akeu89!5CbYn1UY^ zUP(;B7o^VPC({lB&$&F~-1{`T330=uSPUpklS6(q{+j5w?0STiX1{SC=ixymaX(LD zl2>Q%PG5K$;&P5vn%_hf>Y$|5_w7Tu;fs$M*4saJ zWkhkZOmbWWwNYmpKDciDaHGNVANjy=^$<{euY`u&{udhZ+ZPf(OckvS^Z_4ycFnrJ z!uqi?d~0i3Rmr;bh(#LgwvyuYh}d2UB55czM9IXl)cKFBjYCSnw*eEVhpvELj`v zr%Txl9#dHpzUEN{8H_c$M&ba?!H(Tn+pSf+R6|{~L0E3xtn!zdzaA4LRAz53*<-B8 z-XxTJsm(p*RTY9zmXB*GdmAP6?|{)GSsO}*55_69xOO?Khw~Y}ie}ilK`t%F9#V{y z%59(s)LAG-J?x+YbyD6o)R(fWjE%`#%MV}}V)k00>_e0{Hi*`3T>cae!hWN!ad+Wq zLZzX?x&_y;GBHq6YHIb(he#w4_hB7sx4(3OTY1|sqAeIhFMFX-nRyzF#dE=>yhg_< z9{yfB?qIhz#kDHNVffJ_2RqtIiZ>gCvL9J{7Ada^e8jAngi7nj=n%xqKOq)F#wD|N zts97pUm!fd#5$zd0TikL^kQw5&%q#sO2;NNv0lpCa1NzXV%;wEz@HOnaxb@CaZ6MuQ$!;}cR4a6Hc9y+B;OA@NOKW5eZ*|%O{ z-|L7Vk=XtVW!xr|mT+i*wE;R{ZIrB4*#2%^%TSpF#jy>ciptS-aLU2v)+J2H#6uN5 zNCvFi+-yGwyX0uV-z-N%#cPfALZtx0QBlm^Ccg{?LVU+rbv8bOmAnD<0a1gnqM4n$ z+EoykOj?!=avCA{m1fK^szRki3(kXJ&l+@XV9^-_#5Os9Xs32W#K`(GHEl#26=u?B z+93ozS0{$+cUzFTxXKA`Y$vuknAleIhO+P(=}pLl<>&yumB?-)0o&@?E$*ohh$-K& z+ny#la~Pf3P@mWbh9^QKb8!??3vy`O<@Aw24c$H^?jTSBL8Se?W?K9(4ik-g3dVq}T)71GR3^e@ z@8=~&AW;K1DN?$x6lgOVd#r@A+fcC1iVxgQ!G(est~H4x(WcfmfhGj$UDQH93G9%4 z<~OXS`JzXUt;Kc^%*X_4#3_=XVg$3P0{jX#lk&4~BRqQn3TXDG*fH@^+kpP50GeZ43ti3)ep*G1fW6A<=~)ErdX&b*@~$K-^!2pZL=qkOMm|9a zxSe9$>;4>C=)Vq?b*Ed-FQ^CJpRzXl_fk&1&|VsU!v2bC?ppwKF6XP%0$=x)7N|Y{ zR>n{(`#`Jw1frp$2?r{OP7-|i`^EUZM|6_hBe_j4H_ADwP;~zO!^5QCXPnLSoAjeB zaVGs)pLiSnS(7*&e;_zX79sVEu`%7%f72D<}NCX|=q zvc4>FIO;*`N%yGKuw_s$I>MP&WH8h$uK=N#$zgciHr0-VE~4xo+GB{_=w5!dgmEYi zZU#|s`%v~BN#tWVlHe9kk>flPUtfqaJf+E-hA+3Gu=F^I7V(fMg_x>DBfO#DOc8n{ zsonsIASqt~c^*Y3&b;&KrwcX<#~4Q%#x(3*8l3wXJXiGy?^~f&vjN?KHB9vuEW~8M z1CiL=Q0q-Z%qwhiD11c$YZFS4&(3h*B@#3EQ)o$rB|H(zzD7qvWgi%AH@ohj3^957 zNr;tv>^Yyyq3~XZ>%kHlU5AQG`M@QFMUh9hpF;*-v-rRF87@tyUJO#~TF;jnza(mt zvI+k9q`>7g2pj<x`-LL;T?xkal5~UpbTu9T|A6T?at7&!iX77K zSD1e9hJLI3feiTRH+|6tHV{q;Qs;`4oiPeX_7rxJkX5jc6Of=NI*FH1Zbj91!Ciyr z6mIw6ZrW~4*(xTBLiqzw1@|0HZ>iCDQAdSZYQ;|W5Wc@f+K4Mv{ct!qkwb;Kp93K}VIpv;#0vi9BBp`qTVUXJ) zHzWnvOo!Vk#;tAxbX~)>BGxcN8j$8A)St*RK%_f|6=jfu7j=C_F#`c(YJ;EdrlWW` z3;dC?bMbdk94s8>u0R!8zJ$C#2*zD`oP^6RLCCTPgn6O0G0x93!ggXIEBfQi=e+jKx!sH%5kp_ zG%yGTPzpB5Yl<G8+{x^#H-D}yV{RYC-K zB;N-%M}$ZHx!(WAc+?1Si42c6llYxGiJgXgcTiiQ$nnFCsjeO2xy+ql-}-EL8Al5kCAQ>hNd_ z34Q<`jkqv09-X}a<$*{4jP}Q)zOVxD{qKIqfk$mXj^n|jl{B!Bcr=gC{O^EAQ_+(i zkBYz|9Ujf0;Z;S5M}-csIU+owkE8td_E84)5|Mp0nr7*w<53~RHUd1l&+`YtqvsGC zB4rG2ALaf#7#^kE3t7};ctm~@JUAQvzz|G?v8s!=<7QeFgP#PU ztdy)?^3^JE0aGXmPsyE;po&mO9_N5-NN0l5l#nG{mUtcgBFn1p-546Y5}0ub%yUcf zd2X?CE1&yV*k%-+RB~JBi&;oSB#!~<`c2#IdDLegU5O$A@gU}}u@RBa!Q(=k&=29! zN|@!unl`XVheuyAxB|Vgu#YgN_i2D`d=yXTuO)#`e*RhmMg|7N`hrNW5i#q?Uqd6Y zEQmxIR`O+G=^w&0q7An13G&EJha&$GF=g5hVsjOfs}|=u7jA;^-X7PI5)dKoQT;Pr z+~^!0H~RHG=ATuOd?Rl3hQEIn2Z5ruu(%V8m`ekMjCfFmW)JWg>P9|UoIO#L2ca;0 zvSN7V{VCq^f##3lRz;o{=OC|R4w+YR$PiKb!5#oO6EPY%WXMIS{bJ_vwi$SV;^rSX z;QWOC>7LIagDb#a?PD9rJ!ZUbiAhMqd)C-VPx2;|)48E;QE&gmvi!YYBlgXh!Z19t zOR#^Pdhk4}`kyWqUnDAbzR2oB(*`e{qPBRbL`>pY2D*DmmO%d3n!<#uElG#6z;7#FdusQ;~sel~* z7Im{@Wx)uY@4N6lXNzQgd7U+JW<1U)uK^i+QpzEG{^|_lt5;=V$`th1420+uUWc5 zGioSLqU$rw8!R6E36|6_?3*@BA?X^v>&@&N%b)%5=2r$sSRV*)FfJaCrt{s^cr+rp zzzUyzgOyPJ6IhLOqtCv%l}!q!-vqHb>V@*bsLKPvy=Xp&Ifw&$5eMdWM>i~z?%lK&vpf$`8W0D@+8M6hQF%KA z13lpD;hMcM_ZhDL1JIGr-k3N8?DFaVv(WzoAcAgjj+^Ae&?}dfn;G?PIwV&!GX}D@ zj%8*fff_e$Jy5bp#|Zfzz756c1(xv4j1N(q#_Fbb>*V-m)YG{%vq8M*)Ni2pb@5&L{CI$VkEDE4fd67aPo&@1 zp*VyVXy)Pq`#|G~Gq#lF|LG(UE{-;y=wd!UjC5ge~8*`uH`hSoqqL%-;1>I}$ zjfH=M{?k?tZ9QVXC9E}58Zd`!Jv&be5_3K86eVK&58!e|8yEt z+jJBU>2q`{{w|6Wi``2J41^sRi4F{IB0=8gXXCb;lZmY?!yD`Cm5U#53a=k0`XwosiE=U@5CJ7!G%Bh-RuFvejhw&!*uEKzye*?*$2M@m?Fjl`3A5xB0T6%D_vxG&<#~0 z!vmu-)Zln98L|^T9ypr*0C@1+6s`=x@gNr;lB1dRw+~XT2ir6}nD$s#c+g17cA|Lj zOJPKKu!)L?Zy!8^;yyh1c?$-o!-FvxKp-Bx(laz3JVML?9t`-=9}gB|RYd;d&~Jzb z%gtTk!2v$gzk_|yjGpv(a0D#T;lXYIQ^a_%qX2A;2oHMDN*5U(?4!Ak$Y0n4*`c8Z z$Ac@;Uif%$`{q9Y9xTi23J=D)g5g1YKG>$=!K8<~!he1yU2@L(_o5Qqm)cMpvRi-ZhxzmFI|D2H2eVT z)`NvAe&FY;fD?uve*4M%;|-nmw>~);(?I(-9%q~GaU|3XVmjY^4Chdygfi`LMVtbE zlOWIX223^PgY9kwUy_KXyIHg$&w!1pgD@3|;`SNKX>o?P!D?!b zUc>DiWIP4!`QZkAjWyV2a@01+7k|icgI+tJetcO;>^05S;tYc3zoU@y(jO{C|_^vFeug5ppiOjio>oU@MV0+2FB zqwH?)V$bP6Z5Z>rtZ0y!L#I8b3#j;g=q9`X2N06`Z@niP~e<1vb$?gh2YRZD) z#|qT(;m79kW8ue0uAGS{gdcyJ7!iI9r{dw`M^6;@;l~ZN7@!V6ULj%ZgdhEW?HO{{ z`e9-b@T2rA6+iZ36)mk@=h6I;F!p09@68lpp$U?_(AF2q5tt`2EC>;sn8jzgQEH`tr|Tgqfe5h~7w9)coXZ(5AzK8vzfRKN4lz13Xxk261c8rDPiue64qg#2Xxs~|A}`N^gd zuJ8W&$yF!`8B_K{eO(HD56n+a0h3NBKUtB5p@pBHoI=IJ&re>2;xtyCpDcPGP)4WjRXr{RP^(3G>$s6`V)CNgSTV7zXeec?T2$rv$ite=aA6Qfb{;2wnpL3x8n!bY_VdX0eF~G>;4@(HbBa1)Wiz;2( z0iE)d_dt+nsKMh8wGbpfFz7O0`Te`c8-Mr~5P*DTDVxm_%Joo4)B{F=-fh>i_hZi7A;p4*xZ~p=Cp*^E3e0Y9AFnlN) z3$|(T$=B}d3Lg?k`A!rct^tt|;6pqW4<8?PkJ019n71%E9X>olf*61gzqE(Ohi`~E zz=uC=^~Z-Mtdga*Pk;0K;DbnG3Yp3r0UCct`yn3P>G5IYI6r*27;q6WKEz>wk>Nw8 zB8d^;!%$R-3?I@UdZF>b30VpsA71?L9{?X3M{?x|p3hut4~7p@M}ch`K0NH`3LgxF zKPQS0gFs{i_;6%IMELMAiu>$`vsYtqI()c`1Tg>~zHAGP5APFmfDaQs_Q!`eu}Wh9 z&Qx z2S#P6!SP@+WG8$)aJ+iFcyJQ;M?W`=D?@NR$ekSw4^l1#+cZ3wHm55*Xe4DjQ9Sr% zXhe9hiHe8sPdtO-K0NsO-x!<@55`~sfq3vrYiK-pgqQ<781R8V9xTSHi2YBW{DyeY zn#On?BFJ!n&vd6C!^y{kX7r@TgCk&x4i9z%m?Fl59Yes@i145Xt#py$!9JSnuJ$o> zia+jw?1c6ou0(s`vQ(}N!SP_+%wTvB54rQ_uJS!FE2=zXKkuM^Ab@ zXa-Akc!00IM2-h*F}BF?V3#6!5#YfmG}jT~!B)slXgoL%?S+pA)_?o~@Zj#GuJGX8 z>A~>e2KDsa>JXk@+!^eX;DDK09_n*b!ba)_O0D*Y$z>d&( za8okM0}p;!>yHPyaDZ|CZ@q>G;p|U3uJaVKX-Y%p9^U5@-f64SZ+M=<3Uo&lQ!G5I%Orwen{JbdLex;At9EW+H!e)pIjVAbhr35tP z2LWB~R~q*Whk)bUuXIw+Q<#wmu?g6(bnaBH|Ni@xj-aG(ztSZ)LjMEzEBy;hI-&ha zJI;d+hreIxUsOE&{Yv+vxNpDGroUl4I+c$H@j8`f`;{uTg;x35=c7CXdH))&@@&7- zEpTwL{?|sL?_Hb^r)*Z@=PN7c!?E*I{LY6P(xvKepc$qJV!%-gOJ{Jxw{QviVSADO6W`$nrx6us$4*I?x{pj_*8T`@d z`^O+MVtrqG7I++izRQ@ykoxXn6C9?#{{&eHt?wCVDtvvv<%vIzzAuUItncHl3#RY! zXM*>dzE8>vqVF5Qq!ZHjLuW*!?;ELj`1<}g6!+^jQ$jzXElyNNB0+&-R#gI6(Ttq+T z0%;huBskJRD%F3780aQ%Mtgt5wVsU&4CF^P&Bh*Y?3>Oz9n%WC%6BAN-yWcgA32Nn z4%PQa@t1udq#R-ccIpr0#}lFKMvR7iw@4^Ef(dcm&p#4E-!3{Teui%sb^316nH7_8 zZc}giJ_x>+L`R^}8MHgZgZ$e?B%gF9Qy~4sv^F$M zayt=B)Zy_c2G@A+PkG;zbL;~meGPj*#TDdxDoF#uEP7u|JJ05Qnna0xPlXsnXI$~O zPU-bqdh2u|f9rG-kQ}V%Z=K>EQPzQpQcmiU{rioo-&I=y!~ z7IVnt1JrYg!uPN)K$9jB2RgwCmLGw{0I>TiZ;{e!DU^={BSXG_`syPbwEqbrF)07{ zPp6~iJ9uDlFULR1dm?s>zeB==Q*n$HoB`+2lZaOdo(1QqSCCo07x$^mJ0Ms4`U#hN z9DFyEzl$0036$Bs&xN4L1pXP6xBD~QB!MT9^jxg$Qy-Sr1btYpe0OEvFF?&*_(!3W zYY2*XQG~!oD1VNMETtmzI#UM3vA+?Ns7~*bCJ{j>&qn56Ksv8|pGEopl-$Mlr+mjD zE6Ta!3^r}P?@!T}w1Z6JZ@hM9oG0;t!%37iPOFZH8<~^$N!}r~oE3)}I`1d1t zrkzt9i!u4)T$z)w4lYE2Wxn$Uqm+7siGfA2i0rmz7V>#)KHVlnAP6xHgz-$4Ul z^&oGgzWnQ!B+SHNE_GK@z2&SZd&d|bKlT-c(gl3iCYFjn!6*uH^s-K_dF$VwhT?SE zBA2*h9lczM;v{kIIp`s1l})(P}Su7c+R;4@LSzXh*@$E0(0e6 zN-6bN=OZK+zGGG!52MV?4L#}We_gMrSCU`=kUv_3clYVr-&(Hp+P3 z@_ihTfA4y-+!qco-hX=Y4{UGT#*t1PmfvTFvLFk`;LiC}j~KpFfjUH zHgxtz6h?U5_Qv;pF#8eM8~q@Rr038dkcXk7IAFJrx9VAdTV#Xy&I{<$-uOyj0(AoR#wnKLvo}6DB_excB^3|f z-f&Ry@a>IE6pzr}IE||4?TuR&W2SWW#+y*9&i2MgrIc!KETvKb_Qs)gVb~j=fbV2) z+^{0Fz41EA1hY4u$5My$U;j<^20PD*f1wn}%FlCBK3}?=pXbC6aSHr)DFPQbNL(nR z^P5<};xSz4q6L7dRFoK|_?;5IbpjIzj#RvIdK8vRGgbjINKNv8-{GSO{@KzW`1Ex8 zY-ur8a(n<8j#AKgMUzMLeg9@Cxl{h%Lk{L&Z$ekJ2(a^`!QM8oP`BQF1@&Uk#z1&=l_OdR zu7t`coEcp}0f+t-&9l6`25xz zo@Sr_A)zhtM?wtrsQR`^L`h9AMhVtf$1Hjt@D-V1VvT(`H_Zc_+D^WL9L-u9#=chr zrr~=vO^AO{XiF&n4z{{`3;yALEb}K5@qwMt-!u04lN1U7e=C5IesSAxA&PRi}SrL~?HReuMFumG~BixT3K=oDgA;;P^l9Vu6WJ4%2Rcj5!0vgOdL9++Vsb&bW9 zE>;Po)UPovljJKsb%cEo9+`GIlT zZp2>y?>C2t)4mOY2!;-WGvqgYjxlgZJePic$Pg1Fr;wvQPD>wUUgioOpZ%{1vO)fm zcEsIt-9eADvA+9xh7(A_+(s4KSu#z6n|_i6iY z$B3xa7&!E@ita46UvN8UL|G`C3#EqIb^eT-E;a_;QKHJXQuBNeG*j+j1PKU3YTsAs zJDjg?KhS`*^{oxneCyj;=~&Rxcj4kRv&yz zr1sVG5+_3T=$`7o)Vt55Afqo{N`Y17dkzUy7GvSxb4bGX9G0PJZ9P50qLas3Pp?7D z*u51+wR)E`1{^D1dK%TUu%h9d$=G@n#pf{A1X;FqGsfek|E1zj5Tn@y2gFM|6<>nl zsx$Izs9K$D0~^(%#l8>dlAm{=H{D{t*NES0yz~Qicd$rasFYE?m(5hBLoo?3Ywqy~ zAj`vF55s>sjRXUT_4Fft7KC5C^k?umnE$d9MtN!NE6PHf9z;PxJMFakZO(%miQWkG)cuuH!8V;glFcv?LK4aMs)ql1losExzgIOg zs*C*>f5yYG&x5-Y5=Wy6zQ3{xeD{O!F85dNyq81xaqh1?sprA<_ysZ%u)nfq2**SJ z{go?F(ub#;hXM}+_g7v8CY{j!iv=A3kMQ?bUPZ;j-+ysBiqly6d2qAu!Sw4;V?D{1 z4>j2S%A{AAiU&Op&T<6h0Rzh=-TsRx7+s~cA3YV3eh1%A4KoI&Oy}>@VM(I6!@D3i zw5s1l(;7t8oiK;G_&(k4VBe<;6@N%1(*!!9e1CT$x+D#u)6a-6v%w#ozTXJ-XZD@n z_b|^#VPAgV_x&pJk71!_!I=XSbo%}*fo90>?=FA&Z;*>P z*7tX_AYq6)%qG?cL>-XMvtJR^=;^e&%{_?TF!dh(y*ga^eJ6Jx);#xDv>-EoNpugI zh!6YjVITHA(`Rqc_kF94LgiR5J;9!ZVBhzRh7|b$S2O06Y|p?C?U79=C*Q?^YY~3X z5Pbm%_IckexXl9)lgLEV?6bL-1dBgR#3+4uvT$&x_yYu;0&Osx;piGa#l2m5z}b~+W&{*_&>N2)2VnhiqeF+Atqk=v^gADR8!+t5@KJV zbUdh#x4aY@SXL8bpg{-5)$rJ#YJOx@r056lRMGPb|#F@|)|<>T4k<=BtejUeCpBBTfG z{O$9tQ>mj9$hS_!yc5&ZeCup5QIG!&8X42V&$njn1GD`6`Ed7l-Fb+u1mW!Ox)nt= ze?F}JT{mM6nS1~hgYWNp9TEdvjbMM*$9HgSJxTk!-UH{zJOG&|Z-3Y42*>I?@&Et* zU0FoXNzAt%Vlo_VzV-B(e9De@f7kUF@^#UFf7dXK$rpE+k%Vye*P zPs_JnLiM`Lx31XBc&EiHK5%!LZ=FNMfkVKqYarF>=t+uv33 zY#8y1TS+irPk0uFj#rF9nPBmXAu!_c{fniVKXdZGx0y&f95QC{5~hbaGQauvcbB3k z0(JHKyQ{zwb^SsN{}}+P=D%Q)!aC2oq7AH%=scN9%rdwU$@x+*kYIEbkM4Ay%s(KJ zG}PedOYOsi`1u6n(FOAf$i9^O-O54m|MmO389y>932~nF-g7w4`hQ<<6YBVI_UO65 z%k41DwfHXEXs^U;?Co~>>2iXZ954zv<2f%~WU0vb9 z&NGAI!Fts3;lWR5b%h7hN!d;m52WuS!h@+)JbXO37{z^fuxP439&8~&48VgCe+i8T zXa9imz=MCz^T&g}@Px4cyG+A_aPk?)74Q7&yRKki5ufl*sg2(--Z>RrlG3R0&LXf# z#RqU|4&Xw=2gHW>eyd}|I}2OE<_O}Q6_7&}8Tk1TCnw%%Bl!*^-dPACJMnnu;+^R2 z_lb87fZY3GS(ow7^y@j6MHuf~JTO?ib1FvZ^UoeW9r)tE-%1znG=Q%s6z?4TErCVY z@lFF3hwmF^ymM;{pD-TpJg<;ri|VM{OG4~(R9L+8n@2-qOD!=58gtED4O{3%6J~F` ziB%ToUzbFLFAlaHstDF80-;F=gwj?LB!1Y3b$s?6jQSk}k|BMMi%2emBvF2we5nP! z5uT{|(i8xm4o}Vmyl8lWBo_BS`oT0;^Cv}Y!w7$wRM}r>#zaMuFC7kk_~VK0Jem=B z7ZvP505s)u^tRL6+0Z<^{{*l>VgI!uY z=Gp$x_rQGVKrrcq@}*gzCW3tFKq~%3*lPY`GaoC@myW#7--K97vgI=&Siba-E3}$7 z6F;Elx82FroauKHR!MySq9`K$4sJgL>NhqxUI*Q$DWH7m9Kx)Ssy+t91ygl;W4nud zsW(`@G|cm8;?bpE-$#Dqr|%a-{Ug@*ILufi`kn;=45{ze;9=PMJ_(`~THl`o^TXHo zn%oo8_mg`5)UMAv>-+P4g6VtF7hspB@2}yl{Z9Ix3?`kBz88X;2=qOfiifZ79Xs^; zKGEi{?<+{Q0`%SdP-uN`BYr^N?Xz_Hz7wk$_CGDq={qSYWRUG9(9)UwdwG2SQ-tSF z(H3WVQ@D)ntP=4)z?(FOAyt1o=nSU%C;R-V6!fFl_laNn>H8?Cf5iHpgc*xO-wPpt zA@%(RJPcdkr-7%T_5BUVO8ELtA3-XEt#F*{JJa`*b^g?WPdn@To2LfT_odsxE=}Lx z>m5Yj)4`+@()XF5CIWp=r{dx3doN|Ie0`rf(O=(Jk!%I%d)$)H`hJA?0evr<(bJG8 zet%=_GW;uF*c%II^*eUK;Cgh`m)M?k z!w}=;Z5Cq3t!U8Y+(1-Y+g#42%i3|#UT58Ja9P`IE@u@Ewz0{tqpZp!)Gx@NT-vsh zLidlbM$Y16cw45O@>a`J2M_1c|8HlEBVN;Qv^0dMn^}Tdu6O^0ffmSf0B3d9U1&Mp zW&OcckT1V-O*Hi*w!3cMPj9u=m`DylZmfJh>uJqgwCLOfqMV1K?1OZazxY>;^4wfb zI~B9Z`%dxEPVxj^evVtEwKJ(LhdCz)Y-F=_V+LjmU9(BzC0}PHNAr?4n_BYmasDM4 zLzWUl7P1Pb@(RLxRtrWxLN{{cdol8Rq1AQP9}I=p7qFhMRN7;MW>V;DF@?3b?jA-g z5#Su&slD@*_NEl__V$hC^aX3Lxfc!o&${+TcWUnw$c~=A7rJO~DQoWxU3+6YwdYjY zQ|X)BMSCMzdmr8H8?UufdqV^0>lVDdCuv6T$t;Zb0ku6+8kh5`PEEFa#)s_O5XX7= zx*`oe9?H*9Q`M=|6u>3VBF0F0F`~^R<;99Nv-IdD$iK73BH92uTyA6JIjs95cd#5Fuo2aM~&YqK2DDaLQqeK zY&}{1CsBV^oczzW?$nGJHRbwQ5P$g-ru=GekSk|focx)Ym@ZYUKDfs&lO8X%blyf92{t*>l-G~m#57=W_)2}J$_!nNO-bqjCKcB|3 z(Iv@;@u0M}f|>w4rporMj0Z3$=A$K>y#HgYGxhb>9Te4ZIVVCGL~C=swdHc!jpJm~ zSY;8dty8ACoU=((T#nX!`I*ttq_O$(a$LBqJBSy9&;mjBJ(sdc_4F6((1pv|YLlno z7CoxGsi(#zaD>qqFXu5DTjzkrVzYBhH~V0@&o5Zq*qGUP55TIGoZClbC5P zyxv)F;X>XqhRB9Od;w_#R6U7>z?LshK8#u96Z)hVml#Ei3C&?*BK4^PMlhfuAnxTAJet6z%{ETtl^KU(7C>>FIo2 zg7c-t=AUVdk6cFaG;3>4jxxqghiHr~)4UF|O@1Fg>a7iWx!Y84ZOrl?$+7Jb%w%cpS)fmze9%vOheIK}5@|2^ zCc-piW`(-|I;n)`89>X48@R)Lm}>pVymqz`2fa-r(rrnchx|pfxQAAXo$JU!l>& zw(q}Zb?Ti|fc{h040WC@@&rcS_L=_V<$ye;Su&5mhlon7Kgni7M7(yIR`xoOA|UV8j}>z<}a;$^{btttbVXuVPZa%X|AyD_vV`(vhK&h z1jI?HN4}R0LUJg6hq5k=VgzjZ6G5k0%8rp1nno-%+eemrG0q7`#Aqqga;sGMAwHpz`P`2#F(7%v$pL)_nj5mNu;&)A!l)!rznKk znrj(F7s3QsJ%Q-7wpO=9*~GjSF}qp5hQ^0^jFGaNrMwoG z>91H*O;R5iLcP&l@`psrK%2|-1WmIorvUZj%T#h&ToeCllJZRo&F5(4KzEMPLrQ_)B-TptiM5pbQ82_Jdoae*+WTj4 zj^=^&B>bb&s@?{x4ei2zdgF}8buB=ek}(E*H{mrI`N%V9>`}R1o4LLRWRrnkFZqEw zxc0rTvL8@8Wc|Qsd64zdpZZwc3@O)iV9LcDI=aItRV3mhuL|(MYrit#<-jfgqX9sxr)~m$iM9OdI?2kx>q1K z@AZ1GpW=FaWKxG0`t~vViS_4uoBTb{j5O;oYJiG#hZ(Jn^|j`}vimBY(Lz*=>R4?b zM)jMncRl_IZ*7s<+Af>?S85F?@(OQlmQ~jfmbTk)`=&yd^ZsPkkX5bugH66ssd*2I zs1xQ}mu|paPjBV-8k>9#ep5fu`LrPt)6Xo5OR1Esa%q_SEHJ3F_Tt;XrFwC@&oGI0 zIbSCV3gr32Xl=Rf&7EAxC|b|i*Mw`QM@LiqinEzOE;G^r})CwA_m>sB|?Zk({4c`3tP0 zrL}k5!T`Z#JqWvZ;6+S&2EiUeSv3fN@B`rpQ@)OA#fpf$KuYLIIG5S1LOiX3tW#+1SMj-{1D^}4`)4~ zGB(O(1+>rGL(-nlu2X;Zv2-qpxV4cu=R^@=#WzW8ENM*@jR7n~JJV1I%_{-|dk--l zl&5;plXWsOTz(ZVHJ8?oyxAusF(d+!k7zB&q`(oagkY#6n)Z`#M9=NhM)V&PA<9ne zYD7y>C}2ciUC2jtX|A>!$IzlmOK;4SLa7G^fy)H81gk23oxBc)L22#P(**;byBw?X zWfMX$h1ci9f|rp}gT+)<^^kRgU~P9efi@$)+QM%H@U zO}^G&Lcn9nO|10-V0@?6O~G3K`ApvW6s2{N>_XYV8h=D>e0{!r6*XRnSYf_wLp#bS z&crCdEQsP6X;me~+YI)8gdg%ND1!Tl$}g|-M5R@cV&<*St+1|<7ox+5tZNisTT!p| zHhBgSg2`#LF*AzOu>j^0{68HX_^6;tM+0gobo?m<9p{Cn;{e{w3`WP-xKDIsaXLs3 zHfR+mTZ$>GF{qLL?g#BajJb?X=@p69bpM81= z_D{wGV*k6@I`*shf}{YJztY+tZ}8&?SbqsjIF%zISbun6aMpiI_tE1u=#kH}vn_?7 zu9(X)!bkh1Yt0x`dUeql1cZ!@;sn#6?ET`kW;jq6Bc;$IH($(a_1aRzdYIM8pP_7> zb)RuW@qYUZRUPQC63;c#1cZFr5LgneGF2oIA!`7|4JC_W435jBYb}GWHA~jEK~_1r znl+QX-+nf4M$ASpiBfi}Xh{@nB$#x% zG}3Vg*T!5dmM&|%JQYHQ7G{3$Z;4=4vqA(srnDx{HDroSrDdM2c4x{Y8m_!{*seeP zpoqyqo1E-Z%`2$ta2E8>m;VW*Qm_vTc9VSov$&`}8D00D!^8-77wEFd8?Hf|z}ikr z!xa9+vlb6rc`dB;w{Ax5n?{uPtk(2$ygU|bUTJOP6lHCIbz5dFwCS-B^27)(hWh-0{IZxqtTe0v?k|*{RVq)Frq+Sd@k+| zz};?nEjc+{_?i{rYi7bXqPW#Q5M`A%ktKz!w8|5~B2;_Bs19C}6%!-s@xo)t3dt17 zN*{QCs&Ung$;3d&L@-&|^Sw`2*0F2I5M8ko%Nt0-5OJrj%ib@z!b51P_~6XGp6scpGDIa zT_9#7qzpxGXNnG+b{RK1AF>_{)blJx)@S+0nmaqUFR_dB1SkA)5@bC*k1uYkitsiAxsXN+|*d*YdXv-iaWZT9ZsPdt@6O+N@}2{L=J zasgJO(%M~le85`90SM=?$jRLHhg)zC+RB$dP~_q?C34jrJ&{u0h|aZzSn*ZZJjcoh zVM&+PE(zZLP;QB9?cW~I{)_Rv{a-UXx6gc`r&#Mr)Vh)f^G_VrXCPTiX`~qbCzk%y zWyInCfw&tF4lktzcg=IQG=G1(TR~5fqCTYn(fyogF57-`re;P=M5AyJJ@0_CygrYI_aT z9E}9NYpYGX{0YpQ(%M^;o~;&VOSJP)ci}heGuyo*t^D$y}9yA?C(%mD3slfGK%4G7VFvKbu@b&JM!g6 z;Td^`@>$50qkViA$|&VQya!^q&!)z-O7C&%*>N)No+w6~ZL#HwdE4Y>sH)cQZVXK6 z_a!t@c)i!rk}p4vOJAhR+R9pPp}CRrw<PAeDSR`>XPBm=A_^NRvj8NGZ{4;uw0m z%e8)pgb~z!-Zp6*L}gqGBWA?7)J3=2Z27rz3YH?)I!f4WD8mJ2oK9fIDFQP@8J7H- zZ%pja6}t?S>X^7zxjSpYQjiaGJy*UD?l0KnXBEkNV3m~CmarCLXxos|`G?E{XOi+h zE?GSdEg0pA@_$*~@u7NukkwOr{{^m}fA8w}St~~;bsj(JPbm}+RUbOr=uJBWj$Eoz z!j;L#he523cc=}{hisJ(Ih2$5m5tmYc2swqO-Y2jR^x#_2yeHfwSzNh9l16nD{|yQ ze-ah+-2(Hfw00V6TjP+kp*!e#5$%!!K%IzRJ|_7ndz95q@KL7Dkh8%^+SMvg=fo+K zbeYE%(m-BXocs{0JP?(?vRb~nv0ZW~6GSBBv$z0* zjQw6md%m3J*NCc|-(nF#;ozRa2T0YF{O1%u#9A~k|= zw+NT)E5w7R6uKT?f!nzf?L1ibIqqDK1ribOPrfE=lSRB+Q4npB-Zm^`dU_WJqxWL83rkr??s`TPToLAdd)2wf757^}3OMRNo9^ytKCc>R?n~7C^NajOzJl*PqLI zJA7Q8^OeTsg(wIvlWWPiydzHG@=cT{eO$g)q4yMjdjA85p|mz5D7{P2qMpl- z2BWtgJoV@Di=X+p{BE;G?`9O#OGT2>y29m8X-8Nms-Hq7l8w9(IxZ*5zw9KcAG!)$ zhIxcFr`TNmLpQO*`C&K2c;G{SG=TI8-n0~xZ}a9RVL#9o6L!F?#(fZ>cBE=Yto$$5 z;&5t_Bd|`|7NU|8wMvD!V^=3{T?-4T&1srGUY^3*le5sCPE$o|m9v4?#zE9%G&~&2 zM^#Ii2sCW~UFi))cfp2pnR#|+{8N4;R3nOcHf*NlfJ>X8igXBp476M?4tD(1e!qLL;ZtI zM=w;N>8MNh#Y)D@bH1h7I5NS1tj>lgv@;Iv_y$^deNMiZT_vZ`U3Jh>b`{1wJJ`4j z)N%7cuU7_*^7iR7tNaG-KqzShB##oMY|!~~{HMM_4^zZH3q||~t?g$+BJCnPrSa_= z?zanutwY1)@)jCrER7Rc6Bv7xEm?%rc|{H8BCQHBvwN@}mp3h#MYhyf^PsV&^v0rV z3koRk*eEx0)9?+Wl-F3^w9pFlmoiKUu1UR-hqw=sqdv@g$cjPah|n125UO-+6SwYL zi587HrZ?qjQ6mGl6?fUdJ~1 zSCqkB_+?Y1;#P35z?(;*8r(PsJ4r@lnjNR+=4L<`|AV>01KgDQiz63jK*>;?+IRwu z;|Vq${!=R6M*cx#fjo`heA5W~UYBAdEtefwK1!?2pxyQ8M1UOTQrodVg*|Hj)^zB-A2*hvfnL|9NQw9-9d}i0&OI zR1OjMlxmT-l7+j;CjSJ}w{V6F3&kj#<8!)sJGdD2X=` z`3Jaa`XV?s`6^a&2YXw9_ElrsQ^|rp2K%YbHWN|!a9{Lwit=MbKz&ASyxg6&v7FjK z-UGbLG^aNdUoG`FRyhxu=*&NZFtI+pL6}&LWdoAUw>7oOpH*Q`69*KalRZwFWUBr) zigtJGTZv-1^7hY_tvia<&iDM-&<*8IEe88(z#~LFW3ZOSfss(nC#otk`)E76^7DzL zO!J^jQ@6~7Zkf=eg%?ZxVVv}`<$7}{FoCDZjd+-xX%X|y^_dAIF!h-%eugIfGSn&Z zKrB+FwJ(olV|9);upMQH4e-ESxR=nE!E_0%KC@0=-3bcaf{*qkO2Ir7%>J|3{UAN%oNd^A7AcW(D!W+v?#ec zeaoU~W4*XA-VqNLC+73H~Qb<^F4C{2X zLT}#w^hP1OQOr*)_pU`VULos{xG;&6;=Tl>s4uwM=qoX>uftsa1Nwpvq{w%{M1%i7 zhHLcQi8I$=Ue#HNVzcrBxDT7w`7EE6vX9B2#jG5}#WYyx-{L-WU^afL=6P8YpQI;I zRRt!WF}oOdX`V)>DRu}kk;Q4#4&XI{3JShR3rtd$Ir(tC}mm}o#I>= zV_4LEL}t7rS;|jLZbPrIo_%qajDA=uXBBDL)Ao%WN1bGo^)z zGY9GjF}kel;rgwVcVcG9$bS;F!1Y^+{QXBXS3vopMAuEO$M?`9oBT5F-$Z0$TU%8l z8UO1kN4OOY)MqA<_!7aRktalMCD(Pq;Xvz1rmr;IVeIM=Tqyd&VC4;Z4@&t zo>*5|6gW{LX2v9E0-7wOWsFe+I1;lcpD!${2qLzI9LDH9=Sq3ah+rFQfNNMm{^l-3 zeWeUG4Sb3+B&?5KqV2ldgl+OvQ|2Cnvn`dN7Tf0AX_)nRH4XoH;+*x-PH(1%@`?HK zJHN6az^a)A14gv&fMH|*UZ_O4Zku!GA~8>{x3*C|$tp{EZQ^0!#hOoA4pb-DO=3-2 z6>^t|)<}8nJ!>GWryw_-*AA(ctUJgII$+&a;#kJwfbDoJ#y~r;dSZW!0#(3&5f#&gyQSukoN8J?KXd3@yq7 zljnodA5kqvsJzE?u&xA`RKC0CYN7JJ?g+WHM7!)gN=koFpY-sgqNN^K+JETnS~J?$ zMYLxC9z@fFe)NEM5$&wT%ICSX^e5iQeddGptSLO`DIW5~qfSrk5J;;!U~MaL40cxc z!d3w4b$oP*RE#|brZlgx@?d=RuK4PfIB`$ULp`^G_hK(`9QX=JButQs+YzwA_5g(T z`7QTuOft!Yvn>G`Q|4eS=DNyu)%8Lfv{E2hTG7bg<>a%%7Z6NLK2~9qxHY-jd6*`o zMp*K1458$Hnvmyk1$l9088IjJg+gVPQQT7f1198(l9F%1aaUH9=TEpDMYk~(R}i0+ zC*3^Rc+!oYU@op8Mk!BBo}ohJ0+TC?F+Se4913b^=e)Patwov(y{3;LLj0>kQ3%Ib06XB{pv(lI zSWm3H!t%^Gj|uCj5!)gr_^TE81I@X2;6pKGO$$yFDw`n5ipG&9c=}OV$V7l+2$&)5j-fwcv?T*0k z&UjZDnNlj>`=>Ptm7_Birklq(JGwi5@(jVI?MuXaOrAlGcxh|`j>*fhV7x+6{p~mnmy-<)%#XLa+9qw#&P69Ar8D>KK-yV z9k6ihXG?QU(l~Q+J4~h#NTq)adlx<|s}KrTDDZ+c8{R;Nvm<(**;RnNrpePkcb3^z z+>WJY0bf1XgdqDa_Q2~Km@(1?A4)MvfhpkgE6@_&38R*BW|>@${V+T((Y4f5>aVGk zW=ARZEG^CszHe~EAywMCvr=Tyk|uJamr``dNP1csPQos-$OTw>kpI4nuk*0SqS)pT z{*K9~29_mqWhT1v62h<)JVfiK^P3Y0w&;PSoEL<$@S≶r;AjA7xJ^x~LB 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 z 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 z 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� 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

Da7cug(1$|)$Kw5DY&A^68QDTM> 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 QrgIeN{5-dlAuYh4o+#M(#jO1QLuI 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

tzy9t+R<@Rt>Q&Dmg8IuVg*)V5TkPX$+cXE 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

*gC@kBR!q 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%0Dh#{#OlpRT7@ic;j-R7^ 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 literal 0 HcmV?d00001 diff --git a/lib/steam/public/steam/lib/osx/libsdkencryptedappticket.dylib b/lib/steam/public/steam/lib/osx/libsdkencryptedappticket.dylib new file mode 100644 index 0000000000000000000000000000000000000000..0816de9b5a82b29243dc0555481d56a491d5d38f GIT binary patch literal 1755472 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%0A{9LW*-pVXOs?jk?1w zLIosre`n%v-d5@y&wJUGfF6!sXtop^A7 zg&_e7yafO=`wsPc9Nv_M@=&@Q z{C<++#BbR>-c|(!7-oJ%vs1*Kgguc|%~9t@iVLmcLW{Vp-%VKEkElpQg+&ZN#7ATp zQtWr1Ar^VeEYDyy&%UtGU#X!Vg@xXrhQ1LNdXpNuDlGICHFQx}=%IWL?ZEH72;5Vs7Oz*GSRWJ4Y(5e1&kz zd7Q;vZ1sXR-L~cJb+I{M{74X(Gj+ zcU~h!Y4{JKcr>^J@x~B|4(0%(ihKfohxRD2V?Sn^Q>rVD3gr@{jcy)e(mbzmK|&EmyDJ8|-cc{Pg66H66oWJQpg8H01I znBOEVFx&Sy2V?rSq7ga26wk1n0haU3plzx7O|E|SJuXaXpR{LLaQsMqz+Px|+N8U2 zYMYlP;eqt@q8hQqe@=f|6Wd{-o>>CB#W|ENs*ci(`4cd(vBysPxsTi1O5a@}F0{e| zKMKfre8%kYngJ=1sJDsrn8^%Cw__%=fMzo1BMLK__0GuDJX>jmSU*#n5DnEc+F$`B zFnd{FIzhU_SdBeI6TO}m(}!ps3_`9KM?$9@ozVQ1kXA#w^}oK>|SAFz2|~yGb?TqD{jX)nglU4e=VeW zsmyD`%QWfBtWeAR_l^*kv`VEXEv-Filj_AutXtfQtc;}oAW089NrnAF7;M%)O=LB8 z7RG@U=NIApQK3d1Qx|PUt3!iJ7q!T+?eH=vuMej&(k(m@o4QUwCOcJkE|D+^tyn!T9 z%@Z+6q$5NpiQU9NNaAz6TO|>K+OZ@KClS=+1T`cHAHq0XCJ86Og(RLQxId+FBvs)U##+TW(>}7Xx0F6mo&kK9wAohQn5ok?)t$WWA|c-NknCd{%RSr8Xpm5fnr51`G2%LAS@k&|Wps9--Cjt#Ya8#QYw&KHWu|t>(z}Sn z4j}EGsAYQxTMY8D8Zt-#qGhPAG~NcX`nnh$F6LOUM)N&mLXF^ro0z|WQy@D2D(1W|=4_l@=YZvfQ~HIW%NlY1Dt0GVOUn*+$CgioHlS$|a}J6* zjp(}4Y-q584fK^Dm#$;Ob_$@SpUc2=iil%Lu*NdRUAozT6~_K&k1uu=qszr6Iq?j&N-HJgt0z2wGwzyDF(Z4xtoCj$O>efz`hX2G2WA z5LfwHDVLXXRYnASfT+nsdICVBcI=&4>+dPnhGiLpEHcAKDMT*RP+XC)j-WT8YEYpw zkb*Q7GUfc`oC8PLu3R!^^Vf+v>y2J9X9Mvw|9vq(jGw>9(mKx1S8OUj#r%U}{{Iy- zOJDv;X1;%&%FKTw9cSihcm#CJ{G3v>GBX3b4dcwvYR=3wL~v$)jvDoo%>3`CA!f!R zmyVgQQ&uoj08pJ>Gnerahx;kiM}eaz(wn?wwDmxZS+sKLX0?xj-UpS(hXN2fYngRD z%8l1@eH$9mLM#_|m!2@t1tlpjY2DO16~qZu-_Tnblotl0@_HuoM68>710gz=Bq!o0 zl;|$JO|B-{(Lj392Suu5bB?dQW{%4Cgc17 zY!YukA#$lt*pwA~$C%)i3ZsRwhtVGF5FA-1#$s9l4~Pdpi8P#dD6B5A%9X^5cwbk< zTS!7pIrdXaX|zMvtSbb&uoWsnaFhl(d{u-h#?H3zcOZax$IlV)M_?~f9Ydfy&NLuC zZ$JXS85cU#=^M^pQ#Qz?7H?u;s9Mfd`8NxvF5E9KKl!36`_MV9ck5;Un*_3;e!oU# zZ#?FcC}hU(8e-9PaA6q~kax3rm~h zLZysOMEEx4Ca{Kx;G{$WGn{zx`dM$(Gs(LtQ$J)u>lgfyDjNmz3`+wOH*vD`(lS%mH}LU#kF2$X8J(M!nI zY8!=U=GG=G!@fAE9CiU3LugJBE5lOcyGQ+?_2`U4G+KnUnQ2bVw79ybA$wkdGIJ~$ zsy2k;Sea|&h3wid>+_oB4$BxmCuDS3aF`U&@-tl>Bo|2P?#-&!og9SR77`tslcWxs~IqBVZl`8$G()QRU4>mmLrtBPx_&!A|l3ZO+;A21rvdxHa0 zuB6m~F+^kE&N0A*A-vP1;dzD1A_j!$bX^l-WruVk8>$J*HdPtJvN3MH&hmB0&9IV$ zP)S{WNlA??F)Qh|HYIWI20WD(wIJ4gPvA?^CLs_RA(^fFc%dbVqRje^ZSg>r)!lK4p=xxF9Xkk;dJc*5p zCaI$$T(gIDA=DYe-c%-HxX^lH4Z$2kupyL!e}wlMSE2K>xOQ~5$ZhGQwF{xX)5PeE zCuW4`>=jPuy1tywzvJCGol{VBM|7s_A6d}d*@Nh0^n$2QFvNjKbs-ZF63&2hDimq+ z-w*2xu0}r?*+$MSE85a8hSA@fm(9_xf8lv-7N))2=Muh3;+)QMH&RV=Xr}J?X-4UG~ z$oXHGzYCZ1LkJ0Hz`ax`81Uq~VR8=jP-wWYK?S*3Tl{avK${eWpM?d%yrJm)kbvwF zo?tgiz?)ju!mtzK)vin5D2z^2)*&q{B-)mlOl%<2V+9Z6qX!P3wKJ^-Ketmcc5I>^ z6ulg4TSJWvU}Wpz*0QZS2)%_uvn)x0#m`E!%(8U^&UC`;3Vd*nlXZ#F4YSqg2Fl?{ zjrM@^VF_cuW%H|4^$qzvtMy_X8was2+s+d)3Z@}MC)96x;U|hejWr8;kFp>pPJlm|2B=#tx@T4WEawk`9h zGqW}eW^E8=?NSR$nhM`vp;Ad$Znqg{n#uYMc@Q-VM>VfXhH;D&JH~i8Vf;SkxBw05}M=mEE#&m zRU~`FN=+xUJ7;ncOHDdd!=NPhpsM~?o`~thScKrL18wkE7+&wIdvX=ogLkNM!hF3l z21PcRxo_beN(4N7JP>t@ECleFgm21BFlE}748?u5-Kic<4oAk0Al>VGr|G&St~|QjyOT3+v)oez} zrAdv@JL4sL3;QKZY^(?h*^N?qyuDG#Z8YTvL|jgZ+=~+J$A#SENnb9B6`x5+Izztk z=(_X-a0${iGtFnM1S&DAvN$gucMF-a6W}wK@~qOrM4Tp=+njU;+4B;T_K_<+x-N}n zuTATNh0c6@K)9yI-$|HZl~Z-L-#RSaYD%{ZOUDF5LhGm~nHecFtcP{RV0ABU(!k86fKHL(r zm}!iZITRZPpT(5Od_79*02!!Q`>H6hy12d@p;W6wX){7lh9B;YtR z*UVrQ=VZL=GKT^etOahA2FRtyWYgRy+>Ix7P}} zwMpJ3f;cH5X(xi;G5RWyx-N@VIs96HU#*^`YY7c#a?1Z`nyj|{m_E`5*wTDUQmwcP z?O4*;CBq6Zo|{am(QV*-b&GKxnm5d06(|+(fUpK%JmR9ZzSrcuLb&!4d19WlwVR<) zyw=ayD$XzL%U4kh%QD*orBG_t8TpDJ2!P6irw8Su^T4Px`b}0kI*;?zd4xN1+WT;j zuOPU+Ez`_e;@irI${ zllSXBF*`+gwfJPeI=99p&KhxCPi>LjIdeYRAaw(mFe6KaUtlX&Sm75uUQ&1zUaC;x zmcl$`dZ_SmtZ*zGF4PL2q!nJs3l}y`GUK4yNbfh6m|gf0MYtWo)e+I&@A|}`88vI@ zN!?O&0xldd$}J!z2TTfS26N(}3B~1om;tOyI_wF?ERD4{%)i#XFlboVn=S#`6q{0w zQ%>+57=z6eKY)L5Y*AC^qvLyoO_;?#?)@%Wo@jUDaLKMn=h+s4l>bCZ#70nTH+hBK zP#p}05}1%+Jx^ew1idJM;Y4c!GZK({x6F%w0RROkGqOi|wnh4%6gG{I6!%i8Gg95a z4xv&0LWD+9XgB%QR8|^`i1y!wh-ixFMG;gAi?H~wFRLNw!lp538VN{@zX#IBApU00 zwpj01(ehY}8+RLuN4(#}cPR>ZeP-{8J~8#sLlKJu`ZC8RYxbdy=R$mC;}bGb%sA~| z&)1%euU&;r{Xk0M7~h{!JgNy!RlxBPv(bD(e_Qx6t$J4v8c9rVft0JA<9R6dH@eP= z@G94r^k(M*F0?_Eb&hi=&%n+gy@uQ+)Q=$VBd7t$8;N6}QK19i1z8i)B&(E_IBZe^ zmW5erv-%iQ&ilW%XT=L^vijiju*!925;A_*CLQuzfgYnB8qWAVl=C}kjPI`+M{B*O zpgSYnU_noC)b}DHoP(KGV*&y@V!&IZ0dGezO{!jaooAcL|Fo2Dl_n=t>|Yw0njY`k zo79k+o>*F6n+~k1{RNEk$Og`jV0xxv~qsnR?hib!1?a-5~HV<*nY(< zURm-zOe&b9X0eg!S4g+w!Sa-&DLYcmd#=PfAI9NB{5T?4H)7$j^Ta||lYfG+$%ZwK zp0Ah6*8ieNL(*xns43;B@Wz1yU!V6T2#(J`q+r3Z52t#^9FdBeVh)f*GTo&C!@@t& zSg;S8D6NrG{gYwF7~vH1=SN8vxqyaWa_PA#g|O++=8!JK<9CjRf|(X$rWMevd@3>1 zQk!Wrsv-s)YNcr)DMnGeg=QNwyNQ`>v&L^A5u|2DdC2F^%xV}dOKey^)m@sxk2}Gz zbw8RXzMNzF?QDnw=tVx95fwg$pmi?j<=~XmR2aD1PnRZ6o|>mj_#^8|XhdFXgm)4L zs>8tIwbQlF-@O27hVV4#bCVW?+E?Na%2RuPaskjF$lkI9BOc!EF995s3d9Gu8xUEC z5#{Q{NUj9~+Dxml1tD1bL98uA2RS(oOuN-+p>a~%Q7vCU32d&IizBfe#cz@^+VOgQ zHnGNw-tvmMGNST9W99gW%KJ>k-PpQHW0u*IWx4F{L85a69>=tR@;Psbv;tZwV!him zT7UzlZHx<`gNs6I0dsA$1Dt#(3yIb#7Y?YJD zl}|@jW<_~@eJUqKdoEgvyQ0VRq?z$pTKsgP4w}Trv5E)BX6JBZq^MMfz9TDN7s*zH zvs?Z!1%y6si6wGz5jrz*mwT7HvLD~zAUwYun2Ec*{%En$>aHAPEW2Px!{(Aw3hTzh zA`oUsFcdo}tQQY6QJBG2{DjvRUpd|^kB{`vN!ibVR_-e9o3fuunbGU)7zVuTLJ*U= z;*kYD_cu#fFr(t^6nHnPc-QVvaeuY6GFBdM^be#&_Zj8!5&kVl51`D56pNgi)b z+Gor)C*@KdB6m2G09BA2i@4Lh(_LxfcodHpcY42%77q|A(=^KNq`+=!phnsV3hbo@ zYP2O0ZP{i|b)&6m9 zKvU^gH2Y;FXxF$OjtVY?-X~>Q{7(RtlxmKLctG5V1Mb8xD?cy34b2dY)nk<5p2$;a z;zi=~9`C8XF^8DEKO}M6FMJAY4gE`xA@Pyoy~HI-O`^{^1y2X`SH8p=4j?U=pu$3h zh#cDV8HQnl?j%SH?%G0K0ajqBThRm$oWDWe0BSDstz{QkqTAVts~lUwg9RNp)h*38 z1aIOfRlzNAuNm$nWfnXiqvrUw;~y>t!KO8Gl$KrOQF|%s5dJBnU*q+Nc~z`ZJ}n>; z_Xz6`p&Fsh5Xx5|8@g~VuS;(HDz=ei1`=!XRC$s5waP0m8WYq=63dc6UKUke*^#)4 zDJMX(z;N$~*Vl`Enjl{MU=quYpid^QY$M6LkNaU8#MPj=WGc>!XPkpML(s!5xRv#x zjB%VXD6V9ce=S~Rml)S>q*DqF>aLnUU{#_2FN{}oq)dn-cY}$(Ec|24+QOK1i8E^| zMNP*)wCt#Xyz24oIYYTXc#G1XvzRv}-Jn$$kVg<+uJ+WMc^xKKO0yRxQqa{4tX9>o z-qUC(xt$gdKem~apxJA{SjRbiGvS9HhATm5E^A=vhau=p_xc8UyfIkPe}}3N)S`)d zJYO1$uh+?$hxAOT-b#qr5B06@Ta6>sfsVR9SsSHN<>kK0=zWTej-w0y!LIPMEL{*; z8I|ep$s9G}A*BS`ES^ELB-RR>2Etf;$Cz*g>vk;r{Iq_jA2fd|TD;ib@v#^-Iq7>5 z&ISIT8jz6BYt;O0qbd=CAB_zC-GDBiTkLg&%y zMN#krB)tNZ_~K5;5q@11U_f6MhqDUU{Ix}PTbpp@b+m{Us}SR3VbVUaknEK#o0t{H z{CTbR53?$;wlYXnEKNnW z5W~h_2E&%0;)$4(W+sKK>Om}2U4j!4!db}NUx$gK@mT+iH;RFc0+;<{T}h$KtMm0G zow!6LjnhN}MxR3nhs#`4O9?K5WrB;9C`T8C0oB&*6zG9U4Cu2ups$C3GI`&i0v*YL zCe5_fWirNvRup0N2ufvJKjcg2do?`Mv8fHX>n=v0p~vg& zMG)&r(AWxq(cyUgns|!fb$Fwxs7q%^k*|7@O>9VNF*e%+!fVyS#Ear07;wXxZO=Wg zPf}L!sqAHjA}}P?!MfIM-irfKWkP?5=~#Q8^8GUHeFm*exc1IM2-Du`m;S$MZ*y^5 z?XA?adBp|Nsi7q-5!2pv6te0b3Q@IpB|>!C+n3}3K@Y)Ouf3s?LfTuUFKI9nRiMvupjXx2DU=>s zHTyRq?d?Q2*yuxR*{C;{-SfYLRz!&7sS67IL5GTb&s=OLe}r)PuhFamPm@+h*f^=m zg1zo8_{L7}`_C3K)o=w7dDmb$eSKxT{ZL6f3#AS5QE=oV4ClbmE*4)I5|>@UzqG{< z%bq))XE@(>7(qTDeLa4IWDSk^5GA0g(OQ~`S{ttJ3OoI@%7Dp~*R16gUcD!NgV7m$zO*A`i0NCZ3?Pp2~>!-wK(DNDItQ2&Xqys2u2U}v8ZH8}w%Ou3!yM7Jg zwY_9@z*F0+yqusxO24B7j60;s*s>qS*OdL-Mo6jFD=oBF<7Q}{J>V&|8Jx4Ra#3D( zQDbRnHax|sW9jYx1xuIp*H{W9#v_F891}-TpsH54AyCKXYT^dc?!lXz3Ao;}@4H4^ zmKrsBhO;YN95I>Y`^9E#gn@s%Dw=j2(Dj*ep>gyKS4vesVQY=2<*p?+ds-e?@|-;F z*B%_GvV0IyplGT5x6eZ1=^FFes90Y*LSb(CQt|e*+$^j-22pvc8$2zzTIG5Kx@#J$ zvLY(CyHB>bFDJXYdFmpnzcCpa%?&W2YpTW=Ls79~w1}F@0X|YbPs?;+)hq1dZlU~b z_AyPU*n_4t0FW#bph@8K%a)AFHPs?EE zEuNMku3KuOhWH(xmKn|g;FD`~ZB(@Xc2CQL&YL_fvt2jVMp^wsYNPJ<53Y@x;lH*v zYOuc##!iF%J!_-7`n%Rf#rQ3?QC<9|+9*rr7`kRdJS$}kKQ1n?&EwG1Th zve{hSt#X;FGiJFgpTgJ<5X(StS_!Tq4TYUc(r-A&E5S(?XkPspi0%!+X%9`!(szvd z?xw!S0aB>Z8a0du;Vrt~s5~yO@9?ba{mP$;*{vFz=bHfPAm(Du zVKYD0^wx@S674dI12OrBbWnYM-4j-w?NxGtfOr7~)SA1oee!>!OfBk=mDc5gA-xcW z`io6nzz}w?NNLbY)bMbPNGoggrb+p6m~+EC{7TaMs+@SVSjOY-)5gl2ALPpS=3)`H zdkg-%OZ&hh>BZIy5VsHB-_In%#OY%n*Bj>WjR z!TkE@D4eL#KvieKanA+vpf64nHf@8QFI!WceRQ^jfIwZRKISxj#wRLyc(>|1rbj$2fs#D2CZyX+Kai%= z>q|6+f|-d@zGsIo*-}b~euq+vn}11(4@$^`0qR6D!&Su|jWDLzRO}I4k4<}K=$c2c zZ#|`ll7Gq5XiEM|r7#ECAvkP?BPmR_r0hsX4UEHDurLwCQJp9A#i0BRb)Ji27$(cH z?G4NNyNDA=7@)9Z36n$@xdd_$D%Ow?{zyV7Iw^Z5%u$69+8sd$XN80?=s#p=eaI8B zWv6GA5eU=CU@M6P%-D@LY6nWsFpDNJ14CXWhAHB4y&ztwYA=Y4wu1N`iFAUPKza0n zKymMhIzi;2Y@HzbQ+fy@A8!atYhg8kjOKF*b;LVt)Zj}Rk^Fwt4C2?7^wP0{Ow*oaS4NB&aaLHlmeQSm7Sq#FB?rNePhlKrrFx_GZ2^JUA7 z-}n9~KFcgyZ58{M#JWc&xFXZ+^~LAW9AS3wSMEi@1bJN0c{bfW@Qh_DOo74cNu{)@!fnf~f{m?hdv1JVDv8(~EG%RbtL=)6KlRTiL zGNkzQsr(TMY5RVr1$&Sk0i2H>MV5Rb{4P}02gbu-YPH_sAY)qrUAEfHUO0wj;W$ri zFRa;MCxPV^PE~#YIBL(UlPfcWx%!wLJmy34ciWG!Nw>ZiL@az*{Hbpv!aSFn(YZDT z7hkhE89$R6D>LJ2Gke}B&+qA@_B3Vx_zy9w7fd?R_hL#lbC2g?UB%(a;x1*8uGBbB zEj)d#7)|DJaDyE1)EPGelA(J|C;`@0j&98y)rv79dh0R1z%f2Ta28kBM%~!j5%KDV z#dtLPQk&idN3~$y+}q{TM`zETEe4u@Aea0=@5Kn?Hrd=mHoKb}<*`x8mFdB8n4lF8 zEj{Wl@my(M+>;X?s7#NoO^>-z9v9=EzL}96fc^6kL2LGlhrK@#Ecw<^tV%W08WMSI zGQh>k&QV74hX#ZHho6)?w9b8Cc<;%u_^$r+8x9 ztHv4x&1@~W7N=Cy(`=RJ(nAZndM?Gl{;5f>?3?cYw(OEH1alnmWtZrFrv)4IaOE+{ zmBw`c-^(uDJw`ArxUTHd>&tMB)$*Cpc|C?ao$mnz!>@nhzmb%5=}T*o6l)fPdUDmI zSOgi=^GOXp3cH3$oXg46#0QgDw4+vWT=7Ad8naRN0wnh3q2It-m=B5l%vPoa3w%8v zM1i{oJ!k>zkj28B9k49^fTD5K(41z&?T>6Xe)-`OJ7+xs_52D`OfF?J!LipCPiAYl z|Mq~|L6_FUCPDjT#elB0gLdNrS9#gU2UQaZu-70&*F6tZ@Dsr|;_XGV?P{tjpZUnU zP|%!{l}3Ee#&>19an2?8oJWHuOv|=-mB=msyl-(VX-{-jc>$%aOpm}9Piva<`TZC> z882-)kn^C8%RefV&Kyb?Ip<;@SSH5fThR0D7F!6ODU^E7$0BF`wm2)|0{n!tV0j0n3|xbp(;>?*tlk&I{z$V6Eukgqo>DcexeSh zqH3cMXLbRo=%qo@)1qrPjgtg6PBM|fw8J&re^>Y*X>S?QV~_;T1Rb5R3kO_V#6GIo zMMEWSO=75Y9YMZ8<0Q$k8y9L|hPpS|F^n`aDC2P(ft!(}901gCjhlvMlL&F|YJiK* zQBQ{&1mvOyb*aB{Nux#GdM&mjHIm)?APf!Bv3o%b#(GicUH#X~^K70|0b*cJltR{e zy2Y~xM_OAjw?KvL##T%FC8r>It9n*;&q%i)cbzvmcB5;Qs9cV?)`t_~0CkIsct3z_ z=Xp_OfT@#>Hek<|0dO(!Isj2rW1g$6DAI_vzd#gYfy2)e#ac>v6;a&3l#3!8X*(7L z=y9j*Z7YosNjv`+5-CHW|BocHZVAV~5+K{+U&QPf)C%{WaB;x0fjvWhpSHqy4`6KTjB42=Y~gaiEkF^AVtG#LQrwFDANdFv@Z)vxS>h)%`WfP~4?1YR*%$4ZeHO z5F=*!UIZf2TP)PVva5@_5wX5I5Q)GYLe&tKtUInNlV9IE11%?AkHEKv3*ZCUfCt_ErS7(e(Rz1gEt_ za4tf0{X{e23j`wxQB?0gVHoI-s*8H+fv1@HK7-9gY5VYxQ);9-yO>Ey6A+&Zpca_z z50y6d*d5X~cKbSZjCP`J4$uQoWhPUv!Lh9T3~g9Cwp&lf&YQeb#cTk&ks%1?&(B_v*vBgi(*T38s`Yphs+#T5cZ!img+F4u(um050k2oh`)X7Q^4_65x_ygL( zw-Wqlc>K$ExDK-Af`uHY_;+VJI6HMH;xHf-M9-hvj!ec;X`i z+;?Mt7uHX@M;e^8$)=0)JW_i`8iX~~U_$#93A#1tI4gsOWpFLR7|OJYx!6GG>{oWF zAV0rX$*r>aHE<7i$EDF=_sfOUMcKqC**Z?PR?>+Kx!8m_T{c%DtLAsaDF>t?$|j`7 zfkewE&|DmuT@b02AS~ZfAC1`xtl^ZF{~e#C|I+eJ{EH=%k&Kq}vtw(YB{-vTViF5v zbMm3pq)TYQsJ+FRAZMQgI_J~Q8J*pvw9ABTB9)bEv0o7DT_;*k2JK2y{b>byQ0)qSCHdeggA?|}0 z7O<*U(6UX*kO(_`9<`5uv>&p-N}n%h6~4p1?}Qtqh@QPks^J-+Dc{8eDa%hp=rS=aVJYU z6$)Fi|07Bul)F#@B87_C_yAD(UZaniSIPChyzCzZY7(g-( zt2Se)Jf`Ispv#eh93q@0IC@NUY!-11A9TDNM8fUo>##$5M3y_UggpcD<{E0 zD^!d`h%XEO!YO-g8d1haj1TB3`(qReEWC^pmN-cG-EiuqpdTsZ^=5V%Jyx!B{JH%j8|*uOMEo5lCRrHrdD!N0}DkTj19UaX7NjZ?+N0UTLMTKf;N+&eV??4 zI=y7E!2|z09geMa;2@w?g3c#l(#WGtveR^diNt=X1p6qQ7I&&);lK>PAK#JwYrqKm z*%ARuRl1noBnCVG?Kfs1Z6wkyI!{g%IVUhVkDWBSkFU%(6$S465qLTOG7MHzPMp{m z*B1~;n(d<*ZEDYry1yeYFKv@bAFw*Q;BSd)o&DiGW^r=DQDeE z86IPw3H13}_Q|faTZvDyX#;rcJe&Z$68xkY%vOT0fw)@<9>soX1P{kAmEfr?VjV~c zC-^xQt`YneWoSe2rMVixZK?eVF>=;iLjGaY06FV^`h19e-b0@cvd?V#e1Ls2n(t?y zjOJPFlhJ$+K8fZ6dPA}&fvT<*rcnqE8@^q-OPXo6AIG7>(VjY7qm7XbaXvU1j!Bmv zd!aJvRBb`dyPUMMdB5lD%Qz9Xz^to)m{z32xB=@nzUv5X(a;gx>N1oosF0n5qT{Pj zXMPT#%U1=ons$(3ctAXQ^NC1<;>JJbC)GwVa^_@T1karOX_{H$2>u8_)4|oP#)Dce1kqid*;dF ziP%EZ+Yq8__^S8dC$xJH-g@XB?@3WBX127FDz3DQmT*FedxRxU^am0mN(p$!9 zoTvmrX!@-sdQSA-OUTnf5f0GGfUYwW7YtHQoYy_9 zqO?gGV|MmPbu_79T}?2IE&>e#+l972O<5>fpO<=y-EnmgWpr4AmF4(A?;zGFe|Z#j zDV$&_|AeoaQkq}JD7*?QOt#{e!PyHdB+{`+WNS56fEa75jOo~!ds>>X7&}YKS0M#X z>Jal!$cus%d$G`sc!S$SRPGS1bQQ@NDPtkL0Al_zej~{}QXlwnCSW!a297=88YE#I zPQIcpvQ`cfdZjSknlOnu&{qZH3|tqm(4s4Ncsj(xRL3z_l+?fCsB1H6O8yC{v~dik zf;8bhe>3VcIz4G#i{xRNE0K<>UAlO@WR$#$bv-$X98b$(3^=I)BP+GbJc_HLG9}iT zORGW|JvF#HrTCD%ob_^!Cbjc}rAY-{mY69Zts+&Yf=u>3@+ztm*oH^ttz(}kkL_m; zD{n8_1(e4sP-}hOji8%tMY*nkQMvN$-gW z6Im}Cq^yaeW21yoDWh@&rFntU%vZdpB1{YJk!DS^e+ijK!S<#`GSs=9b@{PGE(1W0 z$r<-RLl{0y1Uch=co(FMhv8t5=^Kow=I}QY{DlO6NkGb&D@{-v1nZ@^i zB+`%-7F+zSRC-d%I;kV1n1Ey{JVYU|8(2sa4`Jkg$wC4YLM;j{WZirc3SeX{h<36K zpQ)|g!JD1WA7;%CZ}YK;hn8_CVuehjIbXr>7H~Et@ae`rk=!FZGWHn*T``% z+4rH7f97)1q2@!LQ|)1rr??Y<@>9p~8&7hB|o z*pF!u?X2?jId3wes^csZFyrt;-0s_pxBUv7x9v7nm#SbA+kl}1=ap_W$BFl9p8c3E zJG|CE$(1*z=&1Q+TnXc@j7c$cu>TwGhQVnjM@@Opwom+ z>F_g-v&d-EV#Q~1avW*UgVPyIc;#cIXdI%e?ajD@&eC<9lU7n2le%&@{+D#YDj3$y z;&_#^T57w<7IB=zuEbmJV_;~Vmu9&zUBPl>D-M8jKbK%|TBYZb;UBa}&)I;;b3@6f z$gohErZfbk0kae0C~=Hg&W%%#`n-vd&#;E2QCJ#J?NFWu*9KS!6ZOz((5 zTvi$G5z#uLCuwmGlw2QI>X>Wx1L$q?>sfCj zl$+3OurB3oEGfriK^zEBJolr1&BHW=B4#7&b}`$A(`jHyA_%i)OMd&tEAZ-0u%^!z zp7Ii)9kT_0%^6_^p8Jr%Ho@i`gt&bOK7e36_w7F`+`CV>Y1;zat5fewL*peRVOWdN zS`iM#juCghWAt1!6{9zAlE()t_6fi73Y(6^)SMM&dinh1RA6)-r(TFeH^@BQo(=3oui@4ds(42bk-5-mCjMSg-Xmk^g zh-Z|$ii`#ysk7i&M({3}Ae`b@CLCc+4TN?SV-*mVW}Ph*VA5~~9-?$+nvElebA5o^ zh9iy*U*u4aQ-0Jr(9;r8+#_4~q`vI*34-b!lv15`;Dm~3H)_dN&4e%*;y5X5Ou)XU zB!(gMw;33IOfYlp04?3@d)bv`&<*i0@?_YHC%8N``haDM5fae+<{KJ>V3(oPGi|5*JVp5id+S3jufps;#l`Z&IZY`fhjUw znn;R_*)vjLuD$bSKnisrMAhCje^=brLo2DcKHK-s$C6$g&ZXQBh2dupd6sJ$9B8Y- zH2|m_^7ID z@qYpX1dL47h!Inb8Z|0fqEv~AI(bYI9)VC^sRgw4ZLLMf2uOm7lK_X~QF<$uYo(>F zZS`8KR>4O_!=p)1i(q|#QjHet#L2J5$K|CpzwcW6oXJcQ)b`%r|MR=QzaPoW?6c2) ztiATy>$TS^-k<;Cd~Qd}h_*rg?WsYhxVve4&C&S?4xRIk;(mxLM_A9r2A$YKp*_S- zdl*zb%uW%Wm_$dhi|q-e=qas$GojR4Txz8~tho?#?I007pba8n;4+6aKy$(%(^MM; zC=qBO1B9-Sa(ajYi!Qd%-rPwTh>a>3mt1%xdR##h#tN#V8o^=SUZe_HB)t~a2fYn@9gSe#;r@*etwb&WRpQOf| z-RV^Bl$$~MI2<}l*9y7l^iM$%zRYlJYC2}yj4^tRf~7mDQZt;qUDf`Gsyb4IOB2CO zxwI%;+Go%o7&IARmRbWmy^_Rj^inOHDdTMM5_Y^d6Bvh52{vX|Of0CVLYb8p2~PAA z)u_3`sra6jv)Q zwyM%mVObR!mPCZjvZ`{dicwZYu2nI{su*omjkPL*Rz;yzQDIe-T2&LRifL9wl~pmz zs;IWAF0(4Gu_~^xD&|@h*IN}eRuxkIetXgt1(U8}@F|h9D`fC3mpMHd2Ag&8`xBz@ zi$XLcCXnM<9-*K|%Uql50VGe-d7wbf%)@EB8pvtK5^ zd4|FnjQHSbu?nV(Rf&)~=bHf4Tp+tt>h6}hKbE@He&U8zr&)x9sm`#f)2-@EZV&)3 zU{sxBRcBk(qpWJcG}@{L3&vR0L8}@tm0Hykt?CM^dYV;TWmV6zs;jN)E3E3vtm^Bn z>T9g(8moG)Rb6XUFSJ&xK4x`2om$J6%iq;2^{?<<*6P*z_fGk{{2u-~%kR|^^Y=b2 zU#le#>)+q%UsX!1eoVhN>))sKZ=3$zqJITXt<^8+U%_N+wJ0ly57JVeL6EDXmtQ)< zDbKPl<^OD}Jkyf~4WeB?-5}apK3zV@(-hkmd6|8W{)17nT}&mXEYqHp<>Br>a@ZCv z>9RR*0~1^vjxU|3dsV(^j{VG8>xcNFUze`B2cR%t+H|k_=15qsA3gWx zcf0icZ(L+f>RYNy-{o%K=Stri?8?6DL3t*AbRu$OK$reL00mnZi&ot?Jawk$H!mJ5 zs5OnlX2s*8&itFHr0UFBl!%JMmD=8W!p!tP`HXA{iVnie@i7n`)?V-Z?vzT*w{vQI z%@X2<~Kl$NVD2X7LRAMnbMC0UBaD_X0@Drx97oNQNdu| zT%3Y-0`5Cd`l2&^k2P$NqBM~U1VH0YP7!<75W>iiy!UDm9fPv{k5somD$GV{W3}*X zf|LkFq>!ZsWEfzix{hrtqoA8WXfe0jqE^1?#1-n^Jt?u10eO2}c-=wg;_akfm7ATV zMaEc|#)3{ZI%8+)c~WNXP`^j7(La1sz?S~iD&KA@!}2)|@x~kCjW_gee9k{v|7=q~ z#<}56>1n1at2c zcUyIB&IXbos;2xB+%Pd~5g=onTpBQUtTB1*U^zy3XV=?!{64A|H`j=~F$X`rK;z5u zRYK6FI~6IMx16JaP(|vBBZxFm`2zZYBEn#bJ^;<~t1Hrju0CL|gM2#Va2q{BwLTYMPsVUGXAtEI4b)fN4`8GYe zKx2NKJ$(xj)!|4~hlxamHr>cl?cqA&*K!eh2N~EJpCgE8 zptP-^G8&#i!rP+ycT((2(*vcu821U0x+pGU65U|mPJ8+bD~`QjWO#H@aWMR!9qFyfReW#Y3;z!)*iLP?#an=k%~FSaw*sly<6lQv8kjhQ)s}N zRrI$6Q*fKLo2pF+05j3<9#Hug8P759EHr<9$7PxFukC+R_T$-p~rEo2tm z?}%O_NH}2gDPKpzGL6um>9OJZnI^>&^JVttzzIHyd~+iINOz*&#T8V_3ugIfI#g255^eV4MN31vam?3#d-xJ+@$ z)pY5^87uo?N($Olxoz%{TJ?w|ivMwzc04$;FwGZ^)1`5T|F_bmY@&(xN0-_TNtbpf z&?RI2`lskpTfcN^_x}fUX~@KXnJ%3Q4k%q3<cw&mKDV;Tl87 zzOSuFEGeX9C0>M7Nwvpw(${DpRjT$<|%}Qd!@V>8F{L2yVroU|C6WPugp)BOPkHAcqu|!axi}70G zJ^^2UDPPM|_6{L17G@Y?B(xD{WJOBe*2ZRa{KgzQeGgIN#RQ)9la$RX1{A9ad`T_d zC*j>Sw>ah9P5WU~&?bLsy{>BMo%{AN|4k>pZkH`ID%@|`qw)EfidsqU*gg;5`02c@u|biRH0wix z3zR-jjCY<^Y%FQDoy78_5q z*mzn!P~qr5x0dPGIc42V_&5uw_F>(T4A1-b?Nv}6lq?%T7h2NBC+Je_KH)>beGOR6uP`vvvuf_7IqdoDB>89lM#SjUQ{n z4?rj8Nf@Q(Qup9*xI)SjHrNwox?v30t#BH{i#Oh-Vz5qc3Wx~zO_VLXZ*CjI)0|Eppi#ct<%=}tgmzkE z<^2kOa)0lR=-Xe9B=^UoS%3sdE&|AO8JE6X=RaBh3R6EplKUvb;8dwT>5=3_wd2yux>Rm}_-f{{;38MHt0Hw zWh7D%LRz{#Rc-@dl1^87!HC_;QJt>>JlWVBxulZFO?CF-rhavla#O>Fo2ntg67f~u z;D&aS_9yrNmH%JxWuV!r&2BO4K6tfIn}#hiV&$vZqE5qIL3e2y-n-acng(0S5|(C0 zi7t&e#A_ck_T-NZIKH8edbSvQ!K3)%2X7Z+q?l-z2cboR^%45E{=D(8>7>&VKj=>9 z#_pzVL@cPu$ba5?b6z@oZl?%&uktc9^-a6H(1;!rMOdsU6RR?E;pT84e`abp4{0&K zJS}{B?0kH}!_enW49w}sio>l}jkU%4h-SLfjEXbUV3Fd&8zg{lnt{P&IpIFYYp!3E z4T;_u`&*AL7zGhJ=}9cx#K^`BZnt264}=zCpYO8H!E+#bF*v~nJ3Mb|{X%)Wjd;m~ z_v)oMGgQX~M#V%Z&~*dkI2{Qrs7eEe(LEF=P`b&y4#|l_G0Vb!NRGcM(|Z*sXH=rk z836-%I!@f9eTh59{~P^6J{C zlV6e=K989YX{>vGTJ+f>IUYMfD4h@|F?FX`h1hUN>A3BggXp<7~ zI5ZP*a>2B`Hv}|dfh2zW+v%t87)Z!0a|lKu!l2}b*0y;^f|6}%9uS?>64FTr8XuIeL9W82I&;aKOvad(1EIO8D@LH63hxBqXsF5#p`p4o&6Ztl z5u_9KlxNd_p=PA2r!rYjRZpRtA{tt>zQ zZ{tpxq_WEEHcG2KzCa^1Ta{Kj6O~pGVFp5bWS|TADrY!srm_M6^!*EsaEJ<@O^J>L z?T-B+Ec@wz%HPRS*mX4MaFBk1MTIIDCF#zrx|iRW(PVtx8YQRt-Q$1;Kh4GMd2&yGjvknC<9iYHXtDsLC_! z$r-&KQ7~CGRa#S(RoP#ptU5|GRpptj3OZJk?PBe3*dp7_Jxr1B1{ZpV>C6J}F#S}% zB^;(h3*E!i-XLRSXK9lhZfDnT5Znpr&5B8ACmt$Wi zz#}`fSM~2}_3)7$Wz>(rx$mTxj*)_e5-tr^olguPZSIr>QqhNbX>TZs-_upCAx22h zv{07>O$&9(b9XpeRob@+wj=S<(nD?d>7x=BeRH7kFglS|z-cGc5h&emP2VXeq2~)d zeP?lkFSIKNEfl{tk`yy?rPo^@<{5F;((0C88KbjKD zGF4Ps$PyZZ)rA zB8eRyJ4{;n&7aJjRPIYAw4EnygC$pLWjCgDL#Nn=6s6>{fBoW8Uzp4QLq}>?sm{8E zpsQKEv>1^M;-;~)n47cgDN|2{)FLUl<4q}XC;4?s6g`bB{L~s_2W#U~j;)eR`?h84 z2mmlHa$sm+*@c3hx80G)>6CJy`)z!ml-x1mqV-%4yp{rc!bIARi^UHEB zVBd<7Huy16Y4mcpYD4HKh|AMq1FT?m!sAq4rVm2&-JE&qgp7HjC+{M*Yvxj8Q< zb1n?dd_FyCX_O(@_PLRY)D+!vxaM}*PafGs_?v*xKMj`Hvkt|6RaPfI>0pgD`EGFGZGs;r*ESYIo4PZ#s~#W zi!4s_Em`2mP3F!#(P(gA0L{(#EUr3}L@!o+j z!!rPxzc&2TviC}akxO~?$b~!lryNKCU z{B8heYFc+ug*_z*muQbGg(G#wafGE=w8;8S?_{z%7WT*-aH2fYQlXROZh2bmt&zo} zeBOv~>2pUkT1GU@F0M8s;(<4!X+0yFl{})eWJDjqSL=wX?I~3{qG<^un$~AT*-!{Z zl&vEg<&J1fd_JMObcJ1fjTsRSyb)c|GotI0NAwepkLW$#h_11xT&5!;<6s;{ zSM(XtaIQ@Wfx^IC;3a?ZN?Q2#h-f-E!QYt<)KHX!}`)PCE@-doqMF=?s+# z4w)90!Q9bN5sB_kSZ7Z;il@xU9= z*q#vulSedLM)bG)-4PYqQ^x3s#wLsi&229jeTI^o5g7`Dc}ywH==g|A<0Bd)BdV~A zCz=uQz#CCT&xop$NA!FRBUob89%HJ+iW+SjdX;e07$uIUV|e|BADG zp84i?>SxHe1e!9P2IDkku(S?Mxj+lQgr-#0dNf5X7{y66rES!qY07e*2~7#yF5D$^ zaDtGI1eyW?^T^6Ea4@U@N3zVd>dN8~|59lk_&=qE zUjqN_H-7>AD`??RG(A;XU!2}Q{4<~q{|fx?p9}oY`6uDerGOqPnlA89i;m(d*rDM+ z_Y4pIH_h#Vf0~E?fvXbXzx8Af{y#O}fd8%XEdl=1X)q4|!P2_mzZUkuf0P@+{oKf8 z?@R?L?fR-kC{(yIB>Datm&wUmF1z4ZkBQ%Odg3ZbDnOUnZsLJml0kC=$PQ@37sD&u zOYkenFmMA6)lW|KTMIJn`I++MCih9Bbb-0N4SfTtTdV~+a_unCD0&imYHt0_NBe39 zISaC56C+!5t;whk-Lb`BKPk5dGrCM~bUDeR8w`bVtP|4|W-1c=GM7=3A*Ky~f?hTfoF53&)#5BH2Ih$q8@=YNajBF_gx^HO(oG`?YdO6Cv~FU*C+S<*)xa+{v| zjScme4<JwExr^A-=1$9!7vG54PQuTLA4+{|xeEJ^eJD^-%`Jtnp&scR7f`*i)= z-mmrU`pn*4kLuI)HND%IF!n2h{HaqFq#Xp_DC zu^MwW)SP1|5~)?wu1kxaBX5eEk9#2nB9e}&Z$?%0lN@~_j_l6z2frpR5x2_U`m6Xm z<+>_de$M3OxV24gJ&ObT`H=}8MYNY+y|k(h`oPtkfpr|>K8?yuv4P?!nOK`6k2 z^l114cl9Tv`fY-ynblX`r-sUA_2*v4>d(($ZXV(PX41iXK7%%lPn!7#;qS^yUiw)w zV^5emT$%>7MOqloyGKkOY`+=y+iXutle^r^dkM?l zci6@8VY|)TO*6@D+|s*^3F&b{mw2*(jPYT+$o0~R40}OFbpOyqj)H`fS&1Co@pNFY z>TCiXly9iu zZ{+jC=8v?siq+QKKET;9h0^7?$ZZXu8w*)$Cd$im++=Ri(`8Jp)&^-<1f@07kFAxg zb=tG!qtHM<{%oPVw+bw^`4<0VG~~{PvAiJ(j6z14EnCLqntE16zI1WpT>k9ds zzb$-{8GXkif|gDCYLiUIROq;yVlza$NoM2JZxB_oe$RUYbDZ`ZSZ~0w@%Jg&JJzMx zt7P=fI+dErRugKX?kD+2pSAK=EqInQO~32i3}=*n_h}u8foe7FqzlX0Eq|LH*6)w$ z_vQLs)zM9t>Gv!6>zMDQIis8=tx=kj>zMaSb8;NhT4_$U)1-Zr=43fd+B4CG9Wx#R z3_ChhFfrW;tyP3Xv5gtRK#*@}V^cZnqR;*Y#X#bESY4;L5oXDpy|%&!b02=Yx8A8^ z)P*q!V^$gDoz;nsTfr}}l$!+d()KIIV`5w~#XHKtdi}+2dEMH zRYlyhwHEO^)2&x`{Jrrx{34J72!`x9f|pi`V~pQ?Dnjt7C<2%5IEsWR&N@ZF!Okj0 zEvBf5mx9UHS)+}V_+4KO`J&Cp7i~wrXfq^0!P13^3&)R%Iit89kjrFqU>5&NSn1S{ zO;PH}%@Mtfc=E3VH_=v3m7mszpsc}x=v$IX7!ARaGgZ-8l9j@JBlUE&9j)RT8pY8H z6-tH(@4Mnq&)#US5?}{HN+J3X1`s8*HgD@VtMXp6-~VTCb*Fy6&jl(@pX{h@zwGYr zXRn@q93;F+_J9e_+y6#gG}3I;?@&ADj}4H`+D~J=QG@; zlK*_*wlcG3k%gmuOU_nG2&F6;lRylG%t4@42G|9vin_gE@#xxDS?b6_2b*+;A(aeMM7^V=UX!qJLUGg`3yS|gijVVPFN?v9_O0peE(6vD zbH@g5!|7ADb7Y~IFpj|0LZ}ed`%ME};`Z>xvHn(fpRE;#>J3u$+j$>U&$+Hmd#_h`z)I#dt`$@0nk~ldo9DX=ptB#acNRM+AuFo z%10Xprb+o|!@@KvAMGd`)AX1ixTCC$aqBSbOw$!Ium8h*w7|~r(F*?s_qY^Pp=GF} zr3`XEP_p)YfnZYZhaUbur7``G6w!cE;b)-vKNg5_ifEAdoS%3=v^EHS+Xe#_jD`ZH z>@;-AyOWAflu=853SO2AnimBlo2&9$&8vaiF2wMOAKvZaM3}?_3g3O`Rrr613+#oc z+x{H~x54hr&GG$kN;ZeH@=6@l&Emw#acmCj3crMDSZj@TB}zWk!5dR8Ff$0x{iK@T3@;_%EE)j8D(K>dr7oa z0mCSdrFJYUHj;!DXT>sNN5;7H9ZQQ1i>1Z}dkl1+o(J~d^HSOruKFp{wyP>iRv7i- zuvJ)JzI9GAhb=HLyq{s!BEn(6jUOkcuX5N~RG5E^XuCEllU>AbVY0U-GubIJAed}9 zCX~sR?Mxfi2JN92lRcZ-E&hv85A{`FVc;R_OifW_|M2iaY&JM#vpi@kWCBk8Pd_xv zW!#ISlMjOt?ex2XNBEknaL%S4tjSy$pf7&+sN{EN_Pl$k(O}t)4VB;3$T0pM1;yis zvy9gn%|;8Jn5spRGcsO9oHL~$daqPH{VP>nL{%G~XH}Ts*{E*MIu(eVfJwJ*(`e>q zIA(4v4R2L>L%QM)<#@X!D?aQs-mur{8(@l$4!{^0TegfXgWoG0dFrXzM(KCy$JrpO zOk@pwlb64i{g%A|ZP-58_8spxA}r5D3-&@_{f_Ki&bmCQ7+NRq@^GsaUdu%uICY~7 z39K*b&faWK;q@KXD%tDsZ*Oofb)ez61j!a>4hs)rt?;qjiGCyDyi-mv=9!Dp=}cSt%O5wx&&peWvUG^S`TNH(vShpnui&vHP9tUDb9w=uU4lk(U4lk(opMr!TCaOd24VD#>u%HU3Z!*c@csV~CuMz}2(80E zGF#lP%MjIC?vF%EA)rx>qL5|*Vr1ALBHDoXL#)q5c1peZwttdn%TZd9uNw#|z#y0}v4+X{wVCat;qNw<5D#rZ8 zn#}YT_at|?GS*vps@yh6ooNTh=(KvA`n&(mfg67@C*j3$ytp^irl!#CGQE4HK=-@O zdaOHZM~kaGU{t%sH)(OuD;6p&ja*8x-6SNuzXM9DORa}e%>ngeYNN%WWEm0!c*jXK znST@bS1!sOvj(TwdOXIC_71JsQIb+AVeC;F>}Tvdw7AdMpVHz!WB(<^a>TvHrznnG zi(-Nygan~!=G3y6e>l@S*E0Io?;hk_J6^mZxS@Lx&5`tXNagOf@OiNcXP%qx*qBeE z$1@OPyy#K%ZcDLlBo>yd=$$eUBH`VvQ7T)*J1zb>J?y3^dLMC>BVVBE9nz!ctz2sz z;p%xM#*vUgVZw+8`=!d>xT@F4NGbiPdd>ZfGQYD`p%&;As? z|2@VCr+#wG-TOug7=@@Fxh37V(xx6Hsl8c1bRLH(q?)vowK(!fn=w!1`mY*WoWV6I#em zz8+AYZGllk#fL*0J6yya>}*iH9nv5EBZr7FLmQGWx(nos?gIIuyTI5vuwf>fI%?qy zYH}nM4Vv7q$QpRoH^a~7zGo0#z@ADa7Mez?ugvQ%; zdK$}xc_&5g^k#66SgI52{1`Dku}qr+A%wHS;VL>tIgL8lec`J zGc_f4Vx-kImr)dbaRAM1vZkhrwX6V(xi!HLQ#+CqSv&`H-WfU8YtbC(?;sWOnwR^B z?G1I};hAo2BsiT0I1$sDfl+jrG|A;Sb!+7!lE@!fWZg>9dEq2ON`{1a7fE&I9p*D( z-fr9uaE#0;J$CEp=vS1J_?ENuy*<1rJOOSGPDnkMenTWi+5lwE^p3##VmN0Q-+6Em z9~qXnc%Z%^9tVW#xQrns-Mw2!fgRdO#uVZ;$e=P_1dzc=)%T2u_a4gpIncAGb zB5_f*V;faLp9jr6yVNoT@@~u_gIr#+^mVsgi74u4=9Fil9d1Z}SKneBz zlJ#adCw88*z&#$LgXq`M$5zRZ2uI?4IT9BS6y}F<#YK**sV7ojT=yb}VIZ_dn3y;_ z8#l^hlWw(p&OvMX+GJ~I_+I>h612K6bGOC4ji^FE0lkS3u-7$(=E+^wB6w-t*m?R@ zx3+#Y0>U|LZ&yY*SIEMKtE<0X@0_Uq*-?7-%;$=n>0jxeo zWA4<-%kOaTXN^cBE9h7QTIRmFrR(c$!VWUaUbUMLW=Ds!SgRV3?15JcSpn2 zMp?tYiybQrai3oPuATSkrW{0!6?04yD&}SE}TQtLN`-NaGsNDb?V|UqZOp&rxRK!G-y?^$_Os0 zcA6?gAg8>}ln2%m4+3+|?^CQ78+X{@I|HR%m;D66+vQPOLva zo|65kGyRA5&5+K6jRzcO9906LaYGv42%q~XNq9SnQ#GC#p5fFLBQH2M&@?yT^A#5b z$y9Q_dzV~JV=Rtx=Eu&a_Az2g^8~%^pZR6JcLLdm@dxRovI~;82&dpuS)7`L3ME7a(S=ZNfLbSUAO>bih(?E%mG8=tW=(n7Hr?-U*WL1cG=ts&w z$Wn+0W;srzyY1<}EtrxTXzY^XQWlJp?)m7_PeG3oe_F@8QkM|e;|P9ngdDR>eEOEg z*8?Hc65-CcPYxH|h=s;UNI*3RUExjKiw~^Nddk|V0a2f~r#7E~oG* zvd2Gyn>8ZHEkyr4*jTxR3;zU;4U|^y1j0v0m{QI8`*sR!!#M)i|BU5o;Yqmo>JcVN z7XYw~!AjhkvVw4QUSr3RvixGQG)Fg>Ezp{gOQPt<(20r@PH1-rE<9$wAm|yK(2-lR z2uAA<+yGC-t%iQ1h6)wnmIn9x3yj!kblN~kc4n*Iiq7r1q-tRw_U*$ zi3#A${Y3J`Pw*$@i~r;Rgk*xBa4~IRjk!WZUN|^lFcBFB1Zu5zq>&#)9e@jHx9g9o{p^n!hN$?mz8u zOgQ|BQ`wl`7HA}TxUXPgdcYyNoUcQ5l>%wD$c<;QV$fRQgu!e)^#l?C? zzY?@$QmI6JxlwlfTm=wqzk;UITc!tPw}n;;BQ=zECe|;?fF3W`HwmYd9@&`btrdH z7mc7tOZH0-MBGY_07XW})o|FnC(Xh^ZdOrUrY6yo)9gv3HoiT;L;Wj%>h6`y$dXY$ zjs6w5U0|W>n~SPMHuMR91=YDOE_7KJY~llgHBHS6zro>BP?S}77KZ{i=;+lRpKkjb zdLfiYg)d^N<*_qpocx(ZNQ9CJ(!>*F-OW7Wn`i-B2JeHkg1Mt=m&z6X#iWmbmv_oX zI}66xlgD_Ico_)?VpKks>ls%07?L4zJT8$W&k{@EVObIvMB52?TvjkYt@d3P9+Sr= z0HYdZrB#w0xn-CQkd*ZSt5WNCgC2*|Ko^U!cp!7TbdatMNYfq(-B{jY!mD_V4TLn9B`^e`!{U{bpEaiB4a z=Uj0HZ&%KLlU+M~r?YbAe);lSXQi!Qb~`Iu<;yBzL!6cV1M>YE`CfmHd~dp*?>3>< z;Ay91S(RJNfol)2g9N}L%T!MHcEs|!7f2pJSTyeTWi$L}#fR{-o2}W~TSILpQqUTD z0jlL|ElIDr_6Ik#mZV*A=?~_%mZZ+RvgXRx5`WE=^X9e=4Bv3=4J{=ZoE&YsG@$Xw zhd=@ii~fEWjN#t!Y}6S%Of}+ykcX*kV?O<87kts-(}?i{pUiJppg2iN2)yL-14r@G zJbhTsl%Gx~(2bEi?&mAX(MZ1)tl<3Y-Y!u!vy}N%$|P(+_YNYRNsWnGgOP2hk<)3z zT>UHRJ`VzAj28%~3b3_Fo+})hr2anv3VqXqM%wQ@Xzcz#p>eGT4Np!IfP6aqK8dQ0?TJqGhlf_z_JV|^~hd#ChOfhWGKf^W;nRu6K5q0pX}sx+9wk#oqL zhk2BIex@*d;p^iNUM+7cx1F{q5yC$~gJn0#mNA2I>qYOEa!0n0hkHM!!~nTjfP4~5 z;52#F&)}DuyN(xwJ&zCkFSG(jB#&O`Mdg;r#%wltpy|rb7&PvT^V4E^&Z2f}ar)k( z&J=jmqEBc5$!|SPSi6XEO`xwLRVdy|iM%o)J^#b-^G?&#W>V1^j}P$G3Q@L{1 zh5slE;ZdCES!nJ!XvoUs9xtOIu|k93kZZ{5Amcs15y4o+vlAnbk5GMrr^}T;9N;sI zTtZ=#096t-R&);P+~Nw_9h;K18SD^8JCvJrvj~n8um1`v4@_moBjh!5;Aaw<$qK}9T;+r8YljPyKu`^?*yC%)k+%-O0 z+8No8(~cNP)1@VEf!3`9f=MtvVr4%ty_4AGa{TX)2~@nxUZUqQ8XoRp!tCq~R_lb} z0xuI-+)iyRp6F?^r%CYwQ|tuIsTuU}_(s4?btgDlPt!Q-^(|ArH<;zMo+HhSHqDSy zP{Qom)#>@4)|~ImZ@1>A?=1mehubBBuhCR@6oa)$(e*#y*MaFf;TI$+Askmbg^^yV zj%P(#9pAU@%1qfJWvMXaMEpp%$2xN)2^GAV2zcpG9N067hG%daias-ykUt#~KTGgA z`~xTQ%=3zM+=Y39?u4Q~0)Hk)3>pVt^npsYZKU~6T1j;l&q_&8va6Tmr@coixQEV9 zDKQ&gXLb5yeln5s`AqC?yW8DkiQN@yckd;1S4D}Lgi5BDYj^J_boX_wkm>ba%umyM zmw@?!N#u-b$&>-C=WEO06fZ@jr}_UG#ezhSb|?~gm_rnTOgL*)DCmb!2hhM-EQPf( zasVs%zX2O4OXR>|^V7vX_-0D#nvHK|0tTZKIH5ScZpBe?5G%2 zG{n0J$HqmR7o$y5=|GErI9M-KK3$w#SPJ7A9vAdHK0;4`vHttVa@PyWAmKslML4xzh0~9!mt5=j%$FlfC;JP7! z^=+td2HF#5iOOQPEb(IZLGz9%4@zbUzcEepj3JTb6V~4K6Flv&X62Wj_=3R+w|vLD z{Vjg{+IwJqNp-m_g7v0ZhDo!;e{IQS-U^@!iT=oIBXQ}CV>T|NL=s{Xu>ND*o&{Sj z@m@K^`p?b`tRIM?b|b0UB!LWWJ|4bJwlYgegZ=(_7C6@PK!#Z z0*%5;qk4@k!KL?v*g3IKtQyYX>R#_``)kiT(vbG?WW11_L!s`Rd*g*bkV4%(cf<=5 zpm;NdN$ywIQXt@3!>7{HSi46t3*FPVjvy*(GSUP13^{-^BQ06rR)%=e)tUoXX^hY} zPT#3%n%CBe1h?o0;?Ujco`UbWry%>%7d?-=NYawL#<}wYemeHgTYHY!0!k7N#YtM> z`j(ywBeg>OP&|vD;5$;H0_(1Fb0pu(rO`b6AU%#W%PUNG~NGK9mAF!U^ z5#u%m)+jDiTuR9ZYsZcbpa1;46P!6Ingnl7D*V@!sZ*}=&5Sm_Ehvx;qcSWZ zX8_E11udl9Czp!DgRRXwVi2NlX``?0_`o!}#19Ac!ro9uW2Jd0JoWu;bG&?=i~l~q_}RWzEgpzD^? z=3qOrZ8VZ$sLLK34F~|c2ass)9DCWT6ce-FncZ#;w3j_6l}h|AC8=s@bT`Dk!q&hr ztQ-fbENh{TXf12bV3?32^xkEu(P^Wxm6TOD%Wf{BiL!|;Wxw>7Uz0%N*?OFIbsR6Bll@MKBn{;dBB#*q70fiAbYgcuNhiX4>~Gad zj>*+bMiazirmi_F|1Gi#ok{5J{rf(SoorY{GlHJc-#G};P~txjkpEyjGWS$;Vv?ds z&(#{P_p~F?l6J@>X^Lx&@&zuH?d*cAjxcRB?IQEgPE9%Zv8Eg(^UzK=Mbk5RTQTfR z-{ahR4mc!I~8b{FpQnoS_w{~w-gd&);%S^ufx_cVkXegpGlMR0{ zrx6m#WG_N7?&TgohTB^7b+HEuM~Ro4VJfC1bCjZNfu0q*O-)Z^E4+rVRXg>Mc^zjU zlSyqPDlE*x%O>&!$?P3O-Q&$=*#+e<`=}RVej1JK4J91iBeWpl&>5r!ZF*2{7Y5;z z-9jbJL8)o4I@XHD!tn9lN%ta^%#oRJs67=gq%oe_Zn_jADnEfRY*jujG^>&nsodmFNFJ6_ zB+0{2?Z4raFSIAul0yQcB>9X(oi$%`vz+d!$s|+F>+>=|d`8h#iYhXC_Zv)Ee1e)S&Vb6NB~^H}p9LoHF9gA$|4<8; z<;cN-^9~aqg7Mu=I|8fl|4T|bdNl*vHGAc*(8|A5uC_y~HM!q23?9l)%zsJaUfC5p zRfF*J4WA4!y!dryL+;J!Re{{fHh@iPgU`L6`P*&^pqjKkigv7nAlyk)fynLB;DLcG z$-KiIqH(lwmI~a5w1(Pvx%M!+h3j1|7uq5_`XuHo z+iM1&Y_B*sQHYg>h~n0!9q;3i-excH2STqky%eQU-zBJTh|LgaOaXh?SXSk3XT@tz zK{?S9u2{1{zU;|+4sj-aRoz~vhloYct9Mcj_J`_z7 z%3O7Yp@*WfpiNPxdMDv{qT40Wn6- zjuV!2T({mKGe#$(oOJw%0x5EGmli>%jgZMOz7|q3S~()^BJdjoKSK} z>ct%&2yaVrDu3QfkezRvq&bo?C-03FX(Q?ne5aQD(e(!w$4;t0P*i)AeE)Xs*Xj>k zsu7K9j*6XEe_*sJzd(!XPASemIB#=|SR8vdr-YArG^PH)*)_4)a8eDv5x8?B&SI;Y zv)dGHJnCzB&1yM^W~bW|h^O}ZKPU{;1IrcUDq)ovKOw9<1_dk!^I7C1(BJi{ zoGwYeuwF)t#XJ(2JS0_mP5~q7R0{`MCkALa*$wAQ+rDVY`=C*a9Dt6=P0+%U@w&%y z-G7v5>@$;=`v~c2enn)71V4XEc?0o|7Hrg$)Su&2ZjV;dvLyP#laHACE%UL3?}T9$ zR&hH>I9L>OFOzCma$u5Na#Dso+07HuU4ql0-OzF=ib_#tq&PjhLt?Z!-%PVdTKi6a zYh(8yXL3rz0cMdJh+NB~(|1~%HXa<*aF7Fc;8S4UkOjwY-0#nCvo-~acSr&w3Ch?Y z4rshl%y)tgOB%32g2d&ouuZ0SZG3N#lQwqaJA+a-Nl0Q0kfmd@ttv)g#vN>js!e~{ zBFi(3Slu3L;V0g}gPqp&c56B*Q{n>;?$3X-W{SNeYAuo$%G#MsQM)x`k2Qn8QG3ZJ z)*^YotWzFzS~I$=8T{3v{mxBVeSc(Qd;Z7arv#WcrvXp&^!xZ>jZd?R(Nc9;!1wc- zGxwIEnm)`fQ`PkMUq*X0r+sgkhC?h7H%dZCtCYwMKccMRKcSF^~9&X%c+0hMa6R^so$j*=Y`!c@>CUf zh{V@0oUck{8b+9JTC-i-OEV(upZH-mJ!69s=-BR#7bc9ai9*5pC-wC>@1s8Z;RJ_$ zA=IrqJ`g?=>W1b@c0u$68TA3uk%%&D1}sw4DNMnCfBs?|_Y=ML=cmNZ5M-(BO!D17 zN_uax=6k;Top{56LmY3SyiZkgp(=;3k&3DuCc%0Fi4}os)=NC=>#ctx#j+85d+Yy5 zsj=6N!`xfEigNK4zbEHz@xvwWYmKzZt z>_zF$xVYQY)kD}EOw@@CUTnOS#cc&-q!7w?dt1nRxE_AAu+_lDT=xiWb(_e=!-NM%l@Jo4^m_K?DiF*kCunt3p^g` zy2=XSxrH_AZFXf#=p!HfbV>W2(qhsXEAQeW?NqiyNR0BLFFrqvGCv8Q7x0$1!u92n;7N~yC^AgFH=bEYGA~JpopA!DW zuBa}km<6|;7YSDTV@F1sr=h!J;7Vlgc?Ys1$uLD12a`(UFaC)}*s=pnCx(V4#X=)^ zow@a2f5O)|E=(W_sF%>zK~9lBHdKj5Zlu|dps6lW9$plZ3_`3%L*lu9j9$)>%lW9! z#E{4;riwO7RuewJ7yauC!22uE8X5HiQWruaN+Z!KxeK#dNZMN;!!MQip;_MaAH;vg z+GU3`tije2zg>g|Q5o#Aw5wXn5N5@FA$Se?MbBX_=uKpqOr$J_3Xz4^_?DDA!7I!S zLeJOB4cN&+_U1%<%O>Tx?p{gMFS_FB1n07AYFo5JbegEX`+AlgrF}{mUyX(}Suzdi zt;N259#8yeds0?^eFD~WLFwqWtOWP6%vw@)GgT_a+OcJNTyqAjMT?B;92_i+jPn5`PDv599djdLo~fw_j2j`;}az=_>y)I$*r9+vm52JrMit6Evi1-@bz8I~GQx1SN z3c$zqlCfmMq#4Kh(W4wq8d6RqL~E5quCX@ElD|6xx1Y{?M1ONK{%zwsey8S$jFjiB zRdT}#uc37k#l>D&Xb;a%dn<6qhm5aa;#>ZJLkL8ANv8l_ z6WGMokioY9aReogPGoUkNFpIparsurBT?N-AD4J-_jxrA7D)}Yie05O?scy(k3|qd z<~;`MIPT-((+BnQ^b*7=@ms5EDKvr3;L?4LQ_XL$-Csz%@vA zscd~-Qm{r)C2-p(5E@(2##R(6wl)`3WfE$Ra%42YID=K-7hegt*FUdNl$a2NRR_H z2uTi;Dunbt7i4(awq(kE%o+M~?LnL{-+i41#c)s!hS zq7Sx9i`n)-d#e9Q5lT=llZrdinaxQV65WwdJlA;;G=z8MjC>N6t0yDGb=he>>j_iH z8nS?M{j!38zt*haW*l+i3^fdHIB^B1Mt`}{te_{WTl+jup&p~2yMou7sxxPFFVGd- zJT-cM)U4ow^zQlo=wj1leEmwy`oTG}B0uF%IdU3WP|jmdI&0t4a{kMSyuo_?6TWmLL7>j8WtODcQ}b3PX~Fz`o~ z3r z0j?mM-UXMWU;GxyOGS<1>N|dY0jD3tSD7^9-Sz22=`D?*z!e3Ha%%q+S;TZrD>_|m zg@mICtyBQ?Uad^8@>%|Cm`>U_g1^N>pDrr{D7za zX_o`!A@uR=e`i_KZ%w%r&f35+CRY0GU*Lo(f&#m;iw{v6%F(FGyhn)%m!vYenbt&= z5oko?!RAn%_mvcOd{fv6qyIouQIl0AH@pb3VEop&&*Cn|o|fd`)2QDoqeO~nO*xT$-df~8o{y_qgIPDsZw+S7ae2S2#FC3w6zW@FkCj$L$x zj4`95muYA*U5bJZ^%6$^ju_XWs-zx5i(Wqk%BT}G$J2jZeee<*tG<%*(H zubg+&7s3P-?ZJ*XOm65slviL>`dORjC{DtTuQ9-uV3zC^y?+FT|T@#43q}s#nqSX9U=f>3VCk3IW5hg)RjiVD#O3bu(_Qx9OnIIa z%jCKHgga3B<`ME_BsaNrWeH!LhE|&i9LoeaQ?P=nh08TtKDrb(53TVryv3p7aVv0_ zYCl5Qi1XUF&N0kvEA>P$ni-wAK2b2b5iL(PVaD|4h1l0rD4H=ddaS87b*2bK;nW$? z>c1F<8jI1j$XW~ctna4Um}R6S_h*` zsO7P$@p$3P`QwI8ap}>H5kYr5sAs~dT(uo&-ZyxgGdGWT6YfhhM{VZ~7wz7~CHr->rW+q6|x~M(LFoM4hI*yBIU< z>21-KkV$JJj?G&GO_&BzIPP|q*4?FS4KZ|7vt~9?Cc=YkB7tu76!e+S(i?uP_0;^C zPl-?n*{PHH&ZS?+TKo_dT+2zORM6f0u+;hGv1X$@!e_^HdbYS>Hp%alr*L7CNd`i= z&V|~PoKT07W@AqbwR^@7iX$Z@!?BTXRUoPKi;OVCwiOS zmgH@Ek9eDIcD+sGJO25{AY_&IsJH1>X4`ZC=f3^wptaBQHoYy$+jRDBC-UTL>; zAyOi)rbJt=WVzTtFBB}y4KzyjQp5RSQS~6_gx3oHGv{H$P)4#Ib|FgPVUM~D7w!r-PeH% z&-1dzly0cEakSp{2xqD~THga4!4h>clBv!T2Cg0`3NsCQcSlFcJY-E=D0}hh1dXD* zXh_-gwf#cXi45?T0EjF%mGLO`Ao4^H^n{5wj^3_`%Dry-6JByEfB3~whn>(90=2We z(Ig2C@ilfLiR*LlVI6wn`go)9RtGCyzpFE~rPu0=q~oO38L9;<)q7^O3~fKX?F}U? z*Lzy9R%_fRHD1+%de(0hkhMe0JLKqPLGTRS?JVoTakZJ>{Gh?{Wt~D41m(c-)A~;7 zi%`x;w~B8Kf9y4*3LQ;?H_iDJJ5%Q`6w(($|$b~o8OpN@ba@FC~H1gASCbL^7 zv$LaFCS&Z$Ud25R^;8sB9_343j28ku3Ke=!#S0VtpW}rEqyysnYX@JK!eN-XIn_%tpt`_)CS~#SJHb{xM=lMaG+R3V zbCQaw3KcOJL-k9jM2q7pQS4gdlr@t`NB=%U$Xv3C+S06mMz7Ydi8}Z@aM{zZJ)W|B zb2fU>9_^aY7j-y-*BB~Q`&y_!Hir8GTtp$`32~~1G9FP^lCIBhbH@c?z9hpc%2*M~ zTwa7KH2v`uK|g2RSU4^L#-0ZW<%UZYHv)0{#EI1yzGO^JQ@&Kv*sV_C1%zE|e8YL{ za48Ig_T_(6bM}g1%l}mW$7k#RaqNOY^&7L74=c`pHT?bxO@K+lAu8G$anmwJ4miyl z(`_v$*uF_YY3vMv($@p)FS0g_;gua9;DqbQH*xOD|1^AqWo!{^q`^l_tT#=U7bx9t zQl6RW&JxaoC8-2`%Z%uteKp_O_xg&|3j*OYgXP7jw^_x0yrGM^5TRft z(dJI#6zWY!nu}ic+c?C{1GxeUx2xX83MjGA<4|0NL$PL0Sm7UAcbwuD9 zVeb(P+Jp`rPixC}#l~10>o@+a{=l&dM)=#4Ykc+qTj0p#vM6PFTgzpHI6a#Y&hY2I zw*2{dO9Sg^8Fau7xjhi7d;vCo&$PLZh5CK}fbiHA<=I3y%aeOoYBO`J@2pbp zi4AFN%R(~^FUB#6m&ZnWsmnkBEk~z3#wsV^QXwIGlyyxdvq#6^`nOY-PcFSLSW`eu zzJcLyBsBg*w{fII$XtSLT*$<7)3j;nzSKa|Rl>ZKXK*3+cFERyA@5`dZrjAy6_uIw zA3`M7n5^lCfi$^n!zJ&OCD)s@<>~o;kTyv z#W}4sXA}U)#RW$0;byZf{-vPLvkccvKWZw2ay>+#L#Ql`rn6`02iur{N3li27z@t= z;C#{FKhxda@n^o?7YsDLE9?-+p?E;PlHWuJ`6?p&Qv=Hu@^-xVW8$Esv~{<)mRHb( zujAYDum^q4mGOwbmCK&ExTD?u=2^v^j>Y^M)V8j>`@;9&bOXyYhZ}*P&}yXKA4(M>^=@_7IMrQaK6PRE)OF!gmnGF* zmEmqY?_us5<2g6ZU0wXn&FXS*ZG$$#7qhzZNSm4Lw;(e(WpGJb*40a0`d?VrratTX z+SkAGy1xE2Y>GN)^YxyX_AohDlHn?|Rc1_|iX1Q(j zLL?o=9CsKx5sBhIIhX5_mS8exFHz|(r?8+XyYAb>7Q@=buYpBSzEK^IQ>9e}Qtdj9 z?zbtrkBb}_8dzq1$|P5bgMxkAisuF0cXYpPmyMF>f=zb~<}y^rkNC?)MsvI-82s-( z0Z5zkVKBfJ4-|~Msd_!H@mS$Clmba8R&Mr66xKz4lnD?fW7mh~dWZRK{&UQI8m8%q2=WJ8UY0lNGuJ^`rHz>5UG068Tm zTICfT=Mf#C1%lae7GJy}-=f^EkY;;y^c!Zbkji_OU`N)vrr98HU`J#M3? z^=?$gY6co;nkKVw*_=NnH{I`GU-@}Y)4-L$%LWW9Qab|X+kYJ(H`0eY_VHfp|22S| zkT7bL;k_G81jrOw=zjtrTh{gh$Y%yq07#no)(0TZ(!VeN^BydDd!?QY9+t@CK5IIQ zeq5lGdp-05${@q)hVe)g0^nGGOKulD=-aMe+YL0HDvh#Hdf1k&U&NSxupTz)WI0^w zGCZ~i&uw31f0{iXTX}hAJaYZr#gp@a`v6@jv1t5MA~> zMF3lu(eaEFB@L|Wiv~7>fwh#E`Z|`%dz{E7i;0n)1gaGKqPNqyc$6OEaabN-e8|VL z77U3i_J?X9Xlht9h1A(P1d*(YKT%3Uss#z)>)-J{Zg*Awrk7}pnDqHDAK6mFJ4FFq zs;vUNvoynFe#mnGDA)Z&LFp|0`H#RIKrDsd{VC&;3Vhyg}ND3 zl=#p`1Y=yr6&Xx^og0ju+Z$@p^MZcgU)E#_)vuEad!9cor$n<9_JVSBu-4D^>R+O% zv$%jv{gtM$wH%*|u3KEpr2CEq-UC?l`dg&rN>joalp;T8copQ$ZV#u`jnPH%`tFXr z_&dIiQ~0j^?DzWVI8uw~q4}1M!F-SYVhzwTyRl*JZ*-;7oQ9D3Mijr(=0p`D1JZUL+@2^ww1fmjK*boZV=|7g#^Q?5oHxChh9p>+l}{t!x}(` z)thOD?h|!ZY*K6le=GP`ih-#mb`k$B;NN+??Q+Lw8sF;JaTK4xzvCoCW-9iPZtSFOC4EjJf;q+9uSC;xuUzsIp*v>opA-9MZgWc(W*@cGt3pLPxF z`Sia3%`N+YPw!60J+g`U=fhI72j6VD4a=QabK`4r{FcPB5|DH-5*)W9tU2EE3GvLM zSIhHW8Z#JUo0MR~1Y7+Y7;C)$bk!@c#o`3y#GkORs9jp@;a_}>O!npWy8#IbEn~_` zyx?I{==e6V>&kH1Lp9;KyaVua?J@*?Dcob%FN+yw4x>~C<{7qbAAYV91*<*SoraE=KEc;WDaxboTIJvA9|!&NEx;*ePQ8Ccz7YYTaEuM+rZ#;dS@Q*PHH@uibj(Yp1<1 z>B?6$C42(+qrjb5j=znu}F5poWXX8)E5*Aq4MWdpk1jP!9 zN|XvKd>WE0L?D`|;iiDMYFjVdvI0W5xVdmRuAL+Za@-FL(0Z}_NMav4E z?p20G>!XMDn5L|YmTj{i3Hq3i@}f92xl@(6vYv#v5-GPuLeyVCAxVgOiUgi!cG2m~ zyt2Gjp3{aqC7NTj0KuY*_c%SKVRN=?hnE^xv<475~=UjQ^#=+$l71HJkDO6WnC3vtzDVDvv zlFztRBGP!fvDMhfuE4d4>N){JNSi9_0|T3ubt_q~w&7{`nMmkNaRm;>M)5jQVi%>U z#6|0)Bi=}UYgxCflJzR_OG|P!-o}#mrLm~D&g~I;rRezJTcj@Pg|)bO|L#~<#JkuG zm7pla^l&GEqoQbX5Km@ zm$a#p5k|BU>q!KY_XiTe{IKFJ?i3sA8%Y+JN@=cb7MQVtqosf;u4%}GKb90Q;#oJP zDKQaDV{0OqZC%%rW2I8(SD6ZI+on9aE%fMzd5^Q|!L|OZI-LmSkR*a(it-vs1j9vQ zJz)DGt-iC}tizs4TxXEV`U3U>MjA z`1=&~XY5237wS3fAj?a4W5|-0Y+q}VmW+zn=e(qClJfvhXyR9Vx@f}X+s>xNMSkf2 z$doExH_F}I$4(Gg7m)BwRXWEbPU!nC(WR}vI28}lEN=ZBuo3w3INmr{O|VQ|5kBJT z3G8|J)tUscU<@{-_N}0`)UBispEwww<=ozQxn(I}xZT(WrcXjM5BS?PbF*w203&yb zRp$pcF4!2Eo0(*6T$rs|>K|_@C!wX$?OQs{dk%n!c5;DgBAbYc>Ri{KryZhk`+9QIMi5Vto# zfDeV)LONh0HlLCsy$p6R->@sKcF&Fe4geTJonJads(cW|C_NRk@Y|}YC z`^!#s-S9LfCpwXiw< z3S^%N@fqJ|67FLTE8~IIWIlSs4hWjd$(thcGLypHt^NaSYRg2DNcWdMB?Fd-g+Xvt z*o6Z{Ln8A?NPfQTg|>cZ**uWLl?Z_DN#+J4`DpJm0d4d4m#&gFNA|W20VVf5 zT*K9#HJu{O-TbA;iI%ao>6v%yriJcp?6O-2>yxaND^%+Z+hMC^^PG^*tcgURWnrp_ zrphCAfu4AlUm+kynlW!aL6Kl@wx%B5F|SPTU=RoKIg#r%UpfD0i+SjrKI+xB6j7rK|u!=o#5IBtcHulwML+TqvXAc)c&V0&i^xIBoE!GEAz>!rvZe=g{g5+oz+X z32!5<*pLb9GssVF!x@>BW#_jzXHUL`Vmc3N<9xcnX0TZdCX_?yfjwZ3l z!6~h_fl&xe;pj+#)va>#0-LDZ{3T_a$S7_E;JtLzaF_f}T|D2*}ah9QBuvkP!_C^(? z^g&z&uWVTM9@FeC%4e4e&r=lFjgc7hhAf_!ljN-KLo%q=-DgKw?>?_8Wv7UY3ENP^ z0?e60#ico_sbPy3rNx_CMN!qr94=4nowV>WlPvKgb7MnYjprVHYkT)+YHQPwVIX2@ zghw2iTrG-J)fW zGg9S{1yZb;jA^ZE1tq~IQIjVXrI<4$oJ|z7X~xEAajmFK1b@;xu|Zp8pIvbv<6EKsg zrLU2+ueyhyb=O+x(N_bj%y)9Pxbitjj_R9%JH_u1|H)EzMkB?(5IC7zg>CfWsaiH>}fbse;Y79J( zTp3;1Qo7%GeT0l#C2%N8=zJ3bMkV#q-jI zptJ*?@m4fk>o2(#ycI=<9bpbut!}}}I!a;HIptv0sKcVzQ#Z_WfF&CDxo6eBVs!>B zsEil+p6IOPl2iPlS&khh!@mlZH8t^4o8>WP%3btPW&Q_cl&486>O|{g%93q&mDG-| zpO4=+udV)EH0|6sZ+oeLMjD@NO!^misjQIgA>rK0=<(I(md2!SKL#e<&~BP19Enf! z+S0E-&4K^GS#D@I%Nx5N>ny+ZXdCW;w6Q9kjBJ$4BAn>3WATmKdaNINa*Fb0cnBh2 zvaXQ@Qf$3B(<6q5Y`GQMYpVPm(MTJ%!M9j}6^&H6*oIf{Iaano(VJpwgkgaBOtJ!i zZ=dPw_VX1WMBRQgAj%inK)89AAp(Tl*Y+UI42ugHN}&&XvK#(A(%d;b znTNqFU%1eikZT-h$dYEV$rmO&RfBbqU!1E42_tE>kbfovL4Jy}8Js{$kd{;7Pk==` z2W58XR&2Vm3v087S7&&MmY)^JW3|ii-Ur2ct;#d(N7C5R#TsE${E%BY9*Y3^*R z>0sMxn%)MCOPrS7<2;K(S=LE>#$|ofa-e8r5y~^KRY_7=(o!fUG>5f~RHPy6XMC_) z@_Cqx2x{|Q-4brHrX{JYAVzUxWW-R>1N`A~(E~IZo{a2BmC6Y+vA0pZ;LS*zo5IBY zA6e*=zD7=vToC*U2*cajmt1tq-5zPlJLzq_^manB&cc8>ndn5xq_9n>XI)@aWNq)^ za{>!CIo-sg+(#Ji;2HqXNz=rxsQ7Tj5AU|-q>3nCM8w_*ttBb07wLv8e~XNr!nj)V z&;UWbx08vAU^H|QM&6tLoXW++&Nsr_<*wu6+VD-(l;|G>V!6Ulwn@-K+^e`(m+kW5 zV&+-|W#)U%Ss+fOGI?BrNzh`pT7-L1=)m)=KZ1S z{frOB(x4~|=tMOibo(J@x4U%Qn@RV!N(T6v9Lh$SSaaO@_N34Zzc zKQXk^tvbphhdRlnAum#*E)B8d(vWBP<+?OPhCS=kFH|h;)W3Ye)>?0tuaGwIy{p5- zOS0nPE%e|o=^-pI?37Mtd5w(m6qzsrL_|aFK^HD+YVSXB35wOQ5#DoDzIiQ&U43-% zCv(*XrA&=_TCEAs==0y6i+j(c=Tw;rb4p!28|m}&nRB^we!CO_QK z`?3=dT+~ga#|bkwrA`ukkwb8_=hbwEcVGL%xl%+Gf4L?NSH?s&IE~2;X+*cG`a==C* zvED<*LWOB;H=_8qC*^V&KhRc@({c7@aoapjmCpD^$YnXZsz)hO2Cc1}9QIwV3K*q5 ztQyXi9_8}RpWLNT6}O*R`WtJr>D``eL954XFo4>xjGN2It3MX0i4bI#bxU8|8J zo~`-}xr-vy)bIe!N7jyrLTL8nPB3LpY>M3-%^qUTA56mEV0F>u=I8*6!Ya46^n_|D zyb6{H>zzAlf3!C^jHrE5RC2egMD5R0QTz3zReD)c$FChHd2sFio}DAx=PvUVYa5%@ z;$8eT4mwAT6K6ioc+2+miq4t1Z}dd2!@H%LV~Lom(brdj=%cS=Ab6&962}x|TIA9( z0#4Qs0*xqs%m6>Up;%3O^mZI}ONbT$cV(J_W@k8WgDhq;!Pqw{UP8aO8{aK#kVQesy zE+gsCpXGXLh-D=tw>X6AB-9vV^cK!l(WEky`W`ZC4E4~(0J;FHjvo!|8)34)H~C9q zf=)8?`hb%Y*sA6kK0S4Edzaj0;SWvOZa+Vt>T-Ch6Z&;s58odgN;b=N9N`9k&Q^UZ zpIXp(2x1vk*+9t};Q2zO-JOD~fKm9Se-+mHO`AVMm&F|o;YPD~izKUzI}=^$8Myl{ zG-EYH?{r~IbIyA0Sy|U#teJgkESC)h_tTp2C6Oa+b#E5kg~v6Oite;`0-0?!qJI>@ zaDFaad|s_txW!t8>Qa_7mcwhY%S1gS6D0e-o(t;(-iS`Y7GKL9R{3^yk_sFzO-uF* zr5XH!TE+q8tpZ0{uM3kHs}w@}6pC>aHY28L8coIq$F{^)acZnr%pW^JNd8=$FWJIk z@FKC3oZZ7^c6yHYRg2Rfqwu?b8^wSSfMZAxp}3&e0G5?B=u3u8d|C(YpIEl^_1Yy zcwfU$`4m1Pg!N6F)39E>87-eQUdtpp`MdSv3^mYb`5RMpxoqG!%mzI~m`#Y{PH-R+ zVYV8!i$!XZMPe+P_bJ9HQwGbUb&{H{fO60?_k8!XMN>}HAd>e#x)5FiYjhCOBigF))EH0 zfC6XF1e;C};l>sFJcY+v#;R8WnO4N zItqQrB>BT<^r*s4ZQ8mFy4P*x4xcqZ+QRohx0T~=Ye?I+ z%Kp}_tsk)G>$cK|&l)UkWjby3x7*qWV|RB>@_w~D#K+jpJw~;JR+t5(Eo8j>;gd5L zU<2Yplwpgp_Tm!KvS>Ab`uan=wMLn<|2{D~=y2yqWwK5>d-D3oM|>3*=ZIR4Ysl25 zf_|e$&NQehDwa1O8Z*Kix6Na0s65y=s7%MEdg)~LYM&qFA}wdx0jC;pC%Wz>0bFTN zbRc7!DCZk3^qM*}EH(qAA%R8l<8sV|R@i>4I+?2uHdNVz4Xw#79mD{Q*Oft_)T6#D zZE)#!L5tT{%HPr#)puo3D7{yGzh0H!%wIdGk;ueosj89Fe}Em_n$y3(9SWJ#Kiv+F z%=x-j1(`Y7UZO7zmT!>5x%;_N6Xp_2f}Jv1cDB|q)HrFXGx6LK(NW5~D!NLH1%mC3 zcS7!kK9)Kg*ROlUjBMIOV<%u0DpS(5^{welDPG;}8hM&V1fmc41R}?$`gz%y_;34E zlek74WDsSr|B(37J`1hCv8LHP!}X<+YykT*(~^t2EuK3l$zS?M5IkD=JnTOq=N{v# z!^Aw?_jAGeyj{^H-Jb=eNIJD-M!tMm9$hkJihOw}x};crc{I9Y(Uns2<7n|S85J3C zH*6Br%6Y&eL@ADsYC`AAas&SFBuOXN9EBc|aw)m-4hFVU4k&R%X-yT<#u4RS*j3JROXN_gLs_Sjkq9?q4FNozl;jY}{lzmW?Ll+F1B9p* zogXcFfa@OajfS6(rQ)5G6!Qk>28#cIq7=U2^JwUKNhvveVZa~V4bNv5feytrGKZ{Q zoveUbJrUv(R&S@QU+yD_A*jwcG6al=Z)27~kHTG9X6X6h<4LPc>fM%D3J51dmscWV zM8_}0;JEIbYpe9&q-&*>TWKYBCJff#SdLNEI!Du)K*hsRv0g$a5>_pPx13dT)Q+b~ zOBlR}-*%-NO9lc#=ixk!(RnZR9ym-T2Zf3JzHd;^M%NOJp#UQ^WpJsS4 z>M}Dkck$e_lfr1#GLwo<7Y(D_rIayQl3^v0D%T@Ayfaxb+yF)MxR85_p>@$NjJM9?!32V89VesFnd}CEqFw-fH7Rn>gL-+N;>C0OB^8~8GP64# zp*9dtO%NbDT@4W9t;fYmf+wO>O;0L1Pi0ByPT)qQVt=GLWsW5AQlNk2e(U?rTLZwO zN#?|WwGya;Ym4$!e1WEhkz#5uI*k^S!>I~{3!KKjHBo^O^E(CCs)D4Ju;hFu$FJS~ zv;Y%5%$%KTjbJMQ9S1p+d?p>ycOP@2ti@?k^3^Z$!Q zGWbEUZ4SSEotj&26jsbODa{u4N%5EBG6#wGj?^San!Ec;#Tdlh5fWCWzK+TiUqLS3 z9O;Rgp|R|vwrDOXiNM;Sh}A3%Vv)-0FB#vi^y(Xxu#0lV7?+>RuE)k<_5H5e$i9@1 zcG{yK%5|5Nsv&B7Yu{>U*de&%)3=?H0vi0`~6#a2?RSj4m9#Y|o|u{HZkie#@> zT)%MV(a7XU3_-S|;*~;{>uy%yM`AE$1uJIt<@rUSy_(t{&p z#1D71{a&%44c~nNy(jS99#v4GnCcpt$i4KrFSIhbD3^OkrQl-aP+ zjc~m1oOJh?am9$(Z`())*#e%5K0`8KyHm@4e!P&8QK&|Ca=ehyoyX{6%7o&QGWLJR z)fRHAYU^VPWs^LS*FkGXWKGE3JV?>eRIy?p<)uXD`vhqwa`kd#cvAR^XxYk9YGHAG zsk5cC%kUDGV-i(%l2uc~5mTq5oKz#)&2@k#IY_E#@@|S#pM2hq8qN}6jKh;96*Epm@Y2~!N3mD^| zo+hA1>K$2_UNhpLJ}&t3hxHnm4SeE646h*WUS!56iH^>G1Y_fg93+&^8@@1l{}+V{ zeVmwNQB2dBQiDjR{A7M^l9*(F$*CfYFv%AYJC?#Uwd9ZE^fphVUkt3vvN;A&19Wqq z8Qg)muJrBjHPQ0U&H}uo*mv!J`hHX8C#i%55jNU&}eIKE|Uo~3FQ7*J(?2A;0 z$whGvzp+s7&SknZM-*2qMcJ0fmRfY2sd7LHT!JTcH_E;zJ-OPrjW!m~O=GWnm)SF3 zx}8@^Z@Uu>l57>F0*o4%y57!udz#wu%u)f&X?T$|oEYNEc|&WYS@9aV;)>V^eY!Z#;;rY43{age%*~n`pj?sGmG;ZJES)B*i5%j- z(~?EtG)L<2&^mwVPvyIsLo+vxyP<10{}(3Y5N5g0mdu81F=|^+Kxhn#9nWQ&tQot!~M$*e$pu-6kFcs`4!` zMMkNhQ?&eZ^^{m^aTv4OK9%y|sC3pu)J9bFd_f;K5Ja);&l&E$> zi)DMLT*oW%CfD;zV1M>?GN6!%RH{9_ZlDh}eZ%8NSy6?L;+(rIqZ+Lc5I<~Lrcc$M_ zog{hKt1^2hsrx)4Ya{`Twj*mAmX)CMBnf*fQC^}87mMPVmIl~x6rgSlUD#%yG&8TF9nB%SPGLphqg8UJ0 zPBw_>lH*+4yh-haxv92JjP&&u2gsW%KoHwXeFWiLaKk$ z+26y~mw*ee(rN;4{fsJr+2nvztn?$QU^yC#jUrQp9&Px&e2%=1EkM|t)A(ge`GTe8 zaZGw?uxvw2*V!BZaCXu11ug{MGFi{z!yIre9ZzElx}}M(!0qcuYMDC;&C>Nw>^8V% zJzzIfxZKrB++|Cabh*=Q8u!0aJNmF}kcv-u#gS1~w#q09bD{reX{Lat_hY`bI?Y@! zT~5I(cO<1>l|Xl;Y_g4$+O4%KM7=ySaj9R?wG-ne;zM#Me)gBrm=9Y>!YaQ*g9)p= zMhevUlmazZ57c^2)pITWW2#`e!iGm>AclHT)=a%Pz1N)FU}cd%T5x#an*DD_K0eHah=nVp?JiU@>Xxh% zu}F!i(ef8>P_X%6dh|DFtx~>eCyGB)(>jjVaH2T2%72;gH7dWND>uxgn}&zv&;9b} zQ~7gH{)hs`SgQ~cu~sqDS-gV)Orc8vKF=w%5fiDwLCoWvMNju z)N%?-HImYZgQS0oKe7=u40JZ4UMGOw#2;LASm8CSa06HNw1s<_(}WxDaJyru^B#AAo?hJdGwAHcQzC{>1t=td;K) z%0d#^wOp1i!a&I6{yety>w{trqC5Y}z2@Nk$sE_t0na@jKk;Id zqJmSIsa8@w@yrNohG%DhqWNTEy zSg=&kPTrPa4Hrs~`j6&~;_XK0MJ^Y_i7}()_ed^SuId}kRgYG3&BM69&1UFDGii8k zn!mJ%05qd_=3gNoNU0s7>gx-i^c4Zr ziu-x)#T4;W$1p)QnODSxBvc^+p{NFwkpn@to?rO%ijx2uMv>6aihE^(Q`lfdP?Su- zQcvAfx&~N`J%AUxQa~aBQJ-)~wO^y!uQfe=#WO`DSHuh1>A$S~UvPRbLDI!lG8x4y zxpFXIrj}MH^#chQay{pID-U>rZ~5oV66CE1@;+Q?_!EtSsa;` zs$*c**WMxrDO#C7p&C>o|a2HJ)e>k`$R7ASTaOxrgRov z(o=uKi|`9Emg)nL+x(KOUO+0z!z7oNd-r}hUu{(sGOTae!+JsrPu3K*>Lnu$rS&dD)BvNNu!v=6ir<#0xcJP-y7+^taFl15c^B?8yab*6r7C@=gFiPVLSbCq!TenO z&7mm20Vqy#Ly^kt#Id+45sH+KpjbKf8_z|uK=A;pq30sqU;4gC@6KFYVsFLv7E=tr zEs}b|7IV%whhjbgcSCoeQ2HrR@4=lkkw`*L%o8YYSSo~8(BHg#fbmx4-~0MkY)WgQ%R9d3&2rvWiSEkF$@ecQkEeF5b1{^nhh%?M4K za2KL&(|SKf)NrHBtEya5EnidhCSIJlPn_Bj&^4DI9q41`D@p9M(cJ#&1TIaAG~ z1E%eG3%DNZ*BnI+r$DyGd+0tghcpZZMfdn8^X&#f*35J}G+ms9C53M2;A*BJDY&0- z55|S{{6dyNnpB5tKpt|?dttF!vo^m;V4>)}z5bGrCIK2Iar0bH!&|~2EgWXfNLMZx zUL&-{>W9~G5S}i)#g3CvDo@*A+=|hdB>AY>Y-tZ>oMnenAV2WM_Lq7X_vVI%Bw3>? z(&YYjVb)+btDokq7IcFLe3@1n`Ux=e$R9MuDBSWI5HF&E;6c2VPc0bizjvMxibET1 z(Cvm$2k6$5MwKS;OOD@TMYqXQSU!=M)#42@FCXkiGxz#k%!b;4hYIUQp0&*WxA@j*VIwui zB;pAmx5tweqqL3m9O=rL_y-cVMk~96iGP?E{}mJe(X}`@6~((gKapDR=&0*czM|`6 zpw`>yHNnsPLfTZ$Q83zy%j`!1A$PL{rRC%w2g?bSd1Mx`EKcD6e9|8%!alI5xieYuQJ|MTC|g{pmXKg9Tk;)QQ8BGQ8g6gWI<+eM{D3Tb{hqcT z$>#rVj=g>fzA3FLbXSCe^2PC#ylsZ=mD~2Bg%zUyb<8afIt_KC{*6YOZCsMw;0CE$ zDDIEZ@Je^;&Q_P0F<h z3}GEa8dFGen6{PJLcue#$Hi0uS||#XitK$=fO?Dqr5;If7*Y-#AVP#=-&O=+xvEk>K>V8cVG_Y;T zQrT>l@+$cd1>K|)6Lf)8GN>dw5VwPf-AGC9wF)Uk#gFhpqa&6?V595l^Qbedl8ghkl*QT$y-A-JRn2s|a zPf1#t?DB9lN2#FrMBENn2w7ZtSzE-W@bE}`z1{feT5pBeLW9vccwEg9A2Y6N;=BW= z<)oq`Yqisc+rE_G$dHKGOQpVz*pL6Si2b+>Kga3WjjgS&UUA8jbvxdv`VEi1Y1jY~ z_QG$`aKc`Af+|2dchKCU3S4NumsrMqAs3o|tO_d7yuPe*6Vx<3&8JBIMEjsBR^;Qnv%3pGU9O~NAp2xF>zWi)owE{YYz`tW(K%A0;xEWr1^ zqJ8A{Uk`s(Qgl~z=2$vQSlUY{5K_96Pk4D=K{=?8PQ>dpAo}9>eh44P=f+FvZfL}IIgLl* zYfrdq(XdI1Ww~0=7dg_aC_Qq-UvwD^O?aHKwem<`=u>lvK$7R4nT?2lQ5@*2AtVkGeFBulY>&s{2fP2^j?)P6V&0M6h!`1DAtM!o{ z;X$tDi7#AV8B4;#nNq?yYQQwvp<5SjuX`M;ekS9%L+e15jJtsnXB_piQXG0wP0W|e znlg?Fd?t<~Bu`klNh3NON5Z~L(!+1UK(p6NZ)=*F1CjvM3Xoa$z3NbrozG4 zPh}`?UZg6ip|nuq4CRExp~(8lQ10b3aVU4o6NYl%a5oMvX?#=gT&QH4WD~-tCR;Q$ znf}tPkho;ll1VQA*&w_7BihZG5bh6#sxz0^-)Py0j8^DMFR_nZH%FGy%Gh;x{4wHw z&aJs$r&q)^jYcZ z^Kq%IT|nBUx`~Hzwo&VM$V|qt8MI~kenaC4;f_C51@-FKwd5>_sshdqhnZZU3OGES zgZVa9z>!0N;y))-fUD6xBAkpI5*;h4=_QM;bwLU#ZoRbHQs5(?5l52JUxE(N@{B$< zUcRK<2DM54r*10C|1qdpUhB*Y*mW}{#*yfK`=rda$V)A`)mrsv=jQ8!+;Ne{pX&ev zj2$Pn6irsh2w(aMF)I4x1}U}k=VE#A;4s`q;+b_;P%T>i@O=`Ki9-!hdbLD#iDe42 z)OH{#|I=eU3$4VGhZ!v{34MA7zJizuRS#l7)lRJ{j1LMhGc(DbE1pPdmH=<`Sz`4v zb{9>_s3`q_%RI;nK&D-P$)%it;x8qn&Zx!~<7tTL6I#L(orJR`VvJXT5T`1F((a1X zeCfYA3GEHy$)WHgm=Tc=4~q0gZOlBd6*S1{K&s*Ov?-0K4H%4;?LQmDJnQfG6zppOzjALFa-Qyr?^7uupIZo5>nzO6Z``t8)nYr^^3%iXtl=5m85UL&&c zY9m@%{ZO^kKBho_^F+(um2cW;_E!+Y+D>aa^#;TH)ngdKX2&MOv??QUq8)8IRW z;w~r03z_~rSnSvcuGTpZ9#2!5@XdulHukzM@tSjm^ceE1ePuF~ z0LrgL>X%KH2~+c@Az-ccKUwnucIe`!B!9_|>4AB2=1ArE7h9iAoUy0c!&*u^dZe|A z@vjpgX2c6wL`J1{%xmL?t~nVMFJw-r`HZ}t5ifM@o_#2k(=(q>n}eIu@UzoXl7yEd z3Qe7$#4~!M#?|F)IGmv#!GuiF&00Gy;;nVwDGl$w&l}D^-W;DVxxkZ^n^A!$xCS?) zS%(K!?cW;tUyw);I3_+HZ_-zcFDvh$g4oD2aOvn8O5$Q>al& z7(lp5jO9j8p2(qLby9BzrcRr(R_20N(NW5)YVTsoPL^d&c;&4NWjfLrki22{<|B)I zKl4(Og3G*ddpB)AMMatQpYloHN5VS^({p;#?;&3dtBO}O41D(zjN0EoBL(JD0SRcMZ{!YS&Vud@nPh78kwBR;1+*#`!2 zYk2UjqLZVecMYtmv^u?Z*5wcO-~aLcw{Kh1C%IWNP;o9lt6o|p{bKMjuILsj3V3hw*=|Ke&zZ-i9e0kL z!Jo?~qEN4qUpMooU>v_{`M+68ZkOlRIM1)=*Q8v2)$xDZE&hY=+~S}0ai_ihMFH~x zapyYsfmirjd9ag_Pl-tN=RUB`DM>RQ*rG~mRY{7G-&;|d3onCTHRJn61r*ly7KCfM zK#$Sl(}k}@no49PYp2fmP}4GQ6ECqnPEH`3OjgD|E*y^zS(RM1tW#D=MR>P4&4b)L zKRUmqbSF7+cNlxr#Uf4n_af6D?6*fIEJ(mLMT zW^7RJ)u{J2^jkB$urb^>xG8)BI~VElTIP7IE@}k>P<1!+veK6DA2Qanu^upL91$HH zq_*nOA^nC&Mab|@Su3NSyjH0vsHO+1WeOa>hA^#`bv|>Ve0^T5A=SdmJ(j16yM2Fo z_NF{rs{|UAX~j!nlC|SK!Z&`_m3q zNjP%I%HX5q!!wBU{4Jx7u-@R_SzUuWX7vo_rxkZa4^LcpL#&(RKqm9khsPj8>_;&cR27F1@$igj1y98N;Dw2w>=FkxO?c^0iL5XNij`*Gi@{2N$txo7zUM8D-j^z0qPMHU6!l$rm*{={L}#Kx@G|yAiwps~{)Yo8nov1Ua8f6CO)(TGt zE8aIR_qhPZHLt?d`AXyn;iP#7o1ebZj%d8ryjIb0MZ45i(AsmkLGHVQNJ!y(4Q_V}FK->`T*BmU zw5?pN(TqBynH4%)2}!L%in2ZI8Te(l?qR){K{%q0N!%A&njAir{A5cpa-=IcOr5D+ z0GV_Wu^Wh{szNgpx|adV=tM^&U#&_ySUP1X*X>2~jHM$}^^JSv`9~5>2KWvx+;iz- z-{5TtV#uqDhn8ulQr2dm_RD8^Dx9=qHPLWoYud4OvcgOr$}GkG`lK-lyp&97n4U?L zrkon%(pgg+ z$ehm}T6AiA|N9rE)pA-59`QenN22U3YQr(ARipzSV#tb(GpZHr8Mfa38eTzPULBjl z|6FP0i9cw!ZC&ql(RKGAe-uAm_KDNvwN6sVC^=V`Q{wHE#n@32O z!I6?W&qv7ccn?sH7gKwoCHLGQj6x--vE+_DuH6x<1Jq^>VA>5%!*pbkHLP3pzEs8j zDS>GBS$ZYUlAc>V<43?cp`AJxHCSkizvL;ka%qyfxHdXsFd_`{XF%nc+u=>q>73~X!1@0Wh%yLvuCwu ziPXvrt_|-o7kVXjdq2OUpx^{goL4$0`2MT`MlE+U?q%ao5LVBit!i9A_}B0{fBLOK z_VO(^yKsu>)@*lbb-~S+i1PWN2}fJRy+0EFubsi`;AkL!tId} z%ae>FMTN#*^CBkaMDZ)RB5s>v-Gy8ISSEU~8MYv!yzLzE97rjA_bfGrNxo3{H!d6l zhVTQivjrSF4=;)JF$=eo&(#5u*HtBdDSl0?r6w;}Z!d6L6V7C!s-oq8)g}n#bn>e+ zn9TC=MJm@amlBtc;j5s%S$>uNrmCIKt5B)tzfYBR*u64TVLTdSkle?q7`$l=^QI-D zLt^!ARIB$AKh)~IDIInOW$!}w}tX}u{>Q%9N^VRB|CNGawt2e5p6q;x%8W7xL z)Xx5vu_pE{GX>p5cj5H~M{l8}>TJDsf1$U2Yw%cjd;dO^!LAjQ_#aXyvx5q6O73eG zvAT3O{4gunq;4VEXVeOZJ3O?dXuh$A*9+@q4U3BPyf?C#=bPb1c1)vs_%v_0ANgI; z{g_vZ8AvH{o(2?nXRmtUNVrZGb(bMIpNXQ&tJlk$%6Hb8U6DOWiF1+>8!RimgT;%T zrF*mRGM1kwnuYb!2t#3`0s;J`!#h~x+5Pky57g>>wRr2(WsM)56<_0f`Ks6WA^lBN z8^f#dH6AMMu*P|+FrLW7-bW<^5Nmu4k}_%7(C_q-^{E03*)mr1=}1}5ChhD1BgmC3 zm@?HME+$xXJVHRIo(1kD4ZLcg2klZFs+Sss%9x7+Lg7ci5hGm7*@>=uUve@hBRi!( zr-s94S+YpoD&1KTQn!_r@qtL)eSVa@)|R@-YPo0uBH`W9(JiITT9i6uyst#)y8ZhR zz1Q@6-yAhp%Tm`s_NMILV`UXadDv)9l|!}lD%a;_vh$i){gY$;N)Lck&919$K&m?A zri+PUszm1Q%;szCE?sY;ZZ2E3BsB@B&6CY}B5s~!$34t!LdR3rnj~1nMUqA5`%2#~ zI$4ex59yA!SQ6cWT+Q`x;VOBa7vEtvY(7G|M1pvJE#*NLp(js8%U z%-J%G9y%t5xoYe{LosOqfZY|}NZTqYMCcr8&s4t56uXuV#32)HlNLEomF*9lw<)E# zZ|ihrAZYp!G`q>p?9iZ0m#8S1F6IdvOsLZAE&i+@GT=zH&o~hKYqV^n-qO&iKWHO< zwCrLjbLrHVo-X(uIJU~y>dHD-t-TU|{Y-1yg6f&Lji zq?89^-#JaA{Kj>ty+t|LP)UjAM&fV!S6$(0z1E$hsyHoDCE1*hM=Fml9(xMuz{XpB zcoC}UI8hcSuyA=t`m|CO&}ogU*5e2?A9fKaP)v`YEr;UJQK@`hi0Gt-Cx5=PojzTT zQ6&|EC2tNvOJn8IEj^uTi^Ul-?@3mG6gqw~t%Uz;@!jc3Ms0YgTo4~n8UM~P$7GVL z@k}!-hie9B3<&p%%D|0|J}ddW58y;37peGKZM zej6rtCu|#d;5B-BijMcaDpeK0^>Re*cQb;jLO84~((^-^)3HjC}y(n^s zb37{se-c?sg-!O7k&@$wE2XAbW|kt0F+zuM6~RL&jI(zk2w0t7RSM&ew89u;r^R;V zW2c^A%|2BvxTAle>}u<+Q>4rnUtfJ9BR2@|o0ldz`+de0k~{ABC5L1ZXP z&UB*CsrIn|=01yTG!oft?L6aMp3FAMe8bR}=%kj?jWDWmbwge~*ST$&b(~y+p;*@412gvF*TI7oDoRxXV*?B3-1p zU+p5=$CK%Y;{=E{74?vb>T2})t?3t-IfuJf6J#N3Kwrz{BwjM|Jyn_BWI>T>*NXfm zyRT!nYQ?c0`b00u(Sh$lhxFr{71G#-gaf!quD%}6oNqX@d>yNDqVBu)e*n_M%N)#if!Haf+ zuV^+U*MB$=o$Td$Y#A$@M1Y7|&hU}mmC0-nJQ5;EF$V{?%9Zw=QF_JvhBtVys58;7 z@WuO#x0YoQfb0uyC^~UzXs?NjK#DoZ8|-du-F3a{U&GH3z`g0C03+*>AlA5wJJths`g`v%ZM7ONKw{*Pkcgain%=d|8I+n+=kqkOHHk={q zZX`#$6gh2t%WeamO9xF1Q#yrrN-1r<-U+P$Rf3mvdzP$)P+M7&Q~OUE?YxX5b57%;0Zs9aAj^EO4zY|Uw&Gjq$hj!xh_@6 zB8H+)?5J<4KCh#mM`^h2X+4E{a#}ZVoq%(GzHpqJ))Q}vpVs5}%0ndoYxFlY^F!2Z z*^+-hX@}E#s48rg{B3;U3L`uLDhF<>JdhGR;Ey~ntJZTM2$2#^8@}WqKhymYN#_+^ z=p~2bz#5~vvL)qJkfrYuF70gb&*=tk1#A6TYshVf4lD;9ocLuSEok3QORhdLr@@W+ zqMkp}k{(Z={?>0~JW{&W;6^UlVp%rP-HSejYh4uHG;6$RP6lu4(bt1FX9{b44ll<} zj(P+U<1J31FzPwP;=0jidapS89JO7AK5tW5;7Fw@utT36UxhzsOXdF|{7D!5`B06L zVP6J#HvZH&_*2&b{+uSm0DqqC)`~x~1A;%j30~xuF3}wM_^R@Hy4u+}=n0 z5d7J%3ftk&zu$hd$N$y)&85^i=Kbd9R2GDJSHE;j`^|o-`#*#)nF;%ipPr6ozxi8F zjW6@Ot@x5nnOSa4jpNI9zG{5grN1eBSx2=vzWi3&0bis`vzf6~HNt2nF-sNjd-`iA{ms0hdC(NF*O55_*zkJ-!?Zu;_!*K`Y$uW%k zBpIh`+;dXD#<<_7vW&Z@o-7bW4^%6?k?q8n4#jTLGH=OxF}kE>ip$%2@rT^B%$tb> zzZ=coK5+?YDLNr~WecX1rPUZ;+gi<&e zb#SH^=NfcxylasO;(>vgo$*`qjl?arvb5zEe{9Vj|8@MITtVFR*g#P~9_*y}eTv`r zPk5Ur@9gzY+U!4n%^XrTG{$aZ{87(kzfF#`q|EZFq52=L^shS5wR*3AY9&$IKzFFK zhrAKB+d{P;;y4tlLz$7)EXIBW9ZSfHnNk)kJOPi`exv)1t?1;i1~r+-o4((P#TCs# zz(|e_6)zAkN^?@r8@}I}UY?za3PsQJakLOHD)l^L)UBbFP1tNbzir9(twfck&B_SS zI->4x9=+K8fKi_*T7zZFvaEEWcQt`CD&PJI(cG5ON>ZYeg@3CxL|)xPOOrjp9e4Fo zZlP)Yt)Ea?dG`1tGPcN}lvzEL)ye-5@jgvr1Z<*Qa&454xU_Q;Gd%`Z;_)@iagBdM z1#?^}c{-+M1@!d&fqu44soxf={}3%<$XZMc0%4cUos5ICPS5qfUbAF(y>wLB4_)6o z^@P$g=Z~ZS+`(X#KdULY!+*~-b{m%}#)Z%-^;oeNv*33etM`SVP}CE*dT*sEQ3l8w zh-T`p2#~%4KMHq zpM@@BCQd1>Xb=SzlCJnGaINlI?A%w2oqLb%sj!cg#Z#dkPlYbH@hDG)op>r7F)xMe zP80$`QDK|v-liY6ay%6*d=gMEq9NSnn6kTwrvmPejpF|*0BEkPcm*3aQfAzr<7F56S=Ecq)7WDE~K}3hR^98ka9R)VjufDKpDID{$7h z{A0dq9_~~9O|9|cREw{1RN7&Uf1wH!*7z;816}K;OUXIzqRUIALl<41A&qrFmshew z`b$28nxg2QxXWmKOX(h?u&L-Ad`1R{mkIXjHgvhQB_&RmFA81OnkN~3?lF6nzD>BH zzvOYDO}G@f?s&U6$6>tKT#6>XttU#|@X&TB^rXm$dyZ z=1kx4IX;*Ov7j6bH<%Z4;juAPZbctz4k-LBuxcsnbjqANB{?H8a~Na5o# zfp8^Ig&06^Knj52i#)Mj!MoFn&yQw#;3Q!G`Wx??lLJI&bR|loVK~orny0`b)`mYJ zl%O`23KP`H=%u_*wG13mSs5UqLLW}C+|%X3$c4++iNQ;XQVG&XHIor=@>}lmSlu*$ zEu*}myLWh7%&eSxUNX%-G}`AcDW}r!k}(D@MmP#D5GSGDq{i?8+`z^2k(d0jes~k` z^HTX49)|5GSmS>v)3@|$z7RsPHa04FX}G7b(HDLK&n|W*FIJ;u$BNeY7yQD`z}Tqj z?BG}XI?a?iQ|Pkqxa5r#N6tbu9|dT)oRy-r@^7#c^hGs)sMD7VT6Z@%0*B2fC%xjO zwd7V^e3H~~2_9};JUp4$aFoFH(}RK`Hjl~Rj~oybY-6wavX^h*Wtp*urIA*D-2VZ| z@>MLx9ZOiF<%w&c9T=Sw_0uD4!-0d-hce8!Qc)%H7AZNHfMB`QjU z`8@p6RNetniW6^NCs!JhDg>_pau6Vw6S;@b@K*Fn>P-t6J2ro|GP#5V1#{ByPr%w& z1?^ubu257--nTXx2M~W~OmAS#F90;lFB5aXB#y1Hk;8-9o_T?oC%9*JH`9-gM05CO zu|oWUn=l;m@XV34!9|j)0p2gLHtplIi@!TJHFjEX>ue%&x&0kq11*FwI3q}?M{GYETb;^_>Og%?UhdQ1+Q}z_{@N$f+yhGGW}is5mdSxtGR>1)G&(UE zFGGK5qIX#e0RzQe?dh2oy}E;F!_g@1{3U+|JnjxFU4zVx6iF0d6$%*81D~I86SCtT zWI)eysVV^q@gPI(rh#SNNgc}6l7s@AK4R!D9j`i2)DlzbOV`qBB_XRlXthRK#W$|s z`@^y7PuUgz4q>Yk{Hu^b?Hr`$1fM^rRw7z6qZ7PYi$7vO69Q<9dPj;IlZt{F>z7^Q z?|MmE_i(yWGvX^BY6K(F1(mM8%BuQY$Wsugr+Ah6OS!RyBdJcmolm{q$E-2wB(HumjY+rj zjzMFxjDEhh#^gJD0Pg4-lM%L7Nckhe{lud@>Xc+AnjhsNw1TGGQ65XB=`W4)_<_9a zj`C1_`APE48fcJoI{xkt%J+(xdIz*i%7h8}7?$)n`w@zR1sCp7Blgx^!>L=!n)qwhAch}dnq zG`0#N=Tc^t-<9PEBIV!btCsm^>2FF9d7f%{t6zovM2L-|(fn z2(XUD_Sj2?0S^D)!;2eV4{@IEk+shrRln!eNVQaU6b^AA-X%RhVE|bFkoF zjm!Dc)&CqW?;%np5trNh*`BTNw*x=hTpqOZvmGzQJX7Ug*oWsamV^M-h*YD=yg23! zjt|WKhk2KWSenoA?&>@|KQLR;E4cD`d{YnI>05~SV2!#rvR3eJj)$(w7Q&{M1JKsN zm>`5;_NEL-jHsIM=VtE2;knmwQ(8tObD}49T%_WfXx`@zt8f>u#hcSHbht znUr{|JUNC9;>k}1JzIB|&hqTexxZEqp~KZk>h0R5{1LDmP$k+#LHISt6{G&2Z{z!gn{@ z_X0@CTu<s*MHK zn+=Ng;e3&4n&x$nbqVg|3l!tXB(46xaK3~N2$wt`DGt4sf0bV#BXzRmjF9xnbT0Xm zr=gbduOfd__2$3-Ho2t6A6l3OhzI;x8#!&yh>j0rap7lZya0kE*Lanc6Nkft7}g`W zb9Prv!>`1;YmTHT{2akC;igu=oc&PqjuV*`Vx&YW#+P0Ncq!wTwGkU5ga~;=r_>62 z{mFSc+W$IDKkLtuY<;~Gk}YOfpv~++WMO)e|Gu5@eX^k3qAVAHX*!GM)mnE*eu6@; zIV)ghr3I^IkCIdmqX-TPglZ*1NU{);g0PlcgdnuZz)cc`bQe;U{ z??_f4y`g}0WQ^ypDr%12rK&eaD(i!L!>`F?-tA*P(G2XDK&UZ3 zBa4WNCWHAsQgrUVQH{wGIQqGaCi)5c-qiYiqsZ_^nI&cOC=2d1c7)%>P$}6Bty?MC z7uqgWNIgK6@v4ASaTKUz86gTBjx^(K?EKrAT**NC?mZ`g zvZkNWp0eKCMNhLcBMS!|jk1nMbMfy)Sv?rle-33`^yl`J)t9nF%IZN$0%aZkSPER2 z8>65@%F2=ljiMwIV}SK8KW)mIxucb`22iXhtA0qFvbOM5Q`UCGOuof_}spQ5Y_ z&rYDM6Z*ENtYYcuE6=P~|MBldSufQ8CsEe6o$V>>kCY`+)(ey*P}UQwz=gRFP|zV| zSvwLaYd-aC$~x(TR?6B$Ek#*n8F9+Go3EO(?$O^AWsQ@LoHHxPk9L%m8ZUIgx0?=x zvd&VkyD3YZSv%yhqO98f$3|I`QHZoTv!c=nlvT;6J{SKf%BnjvfwF#oYJ18$Q+oPJ z%9^(4-;1&)efXb5S&K-p+?E@>jj}|_nnXzgW#y^@7v>J7phL>KPjVEuo>~2h*S%RU(fS zWi9S^Y?PHGi9`~)!Hc93DC^dEAO93(Elf|KtQ&f_r>ynlLN;dmzCzCG{P%w^%4*s6 zpF~+_F`BlN)r+!3%4(@=Ls_4x0vG0fNI{2`HAEh?QdTuTZOXc7ODkoaLb0N(x6g@F zRux}0Wo^>m6lFcC+OsLElppOV>#BI63%>uNP$+Ardc7TGog#?nw|C)l=WQf-;1)I-1?tHSsUMNPgyThmPlDo zQj&0HJ){a;m>Z#>L&|!8O9ExxK|PzYx^8ZztO{x=%9?w2oU(4`tEQ|X{Y_EUrP7hZ z4W7%7c9hjjTe{E%-=8TI$~sBC-j1?r<*}ly`csaLvc};v*5=GwB#l5>FYxK&2HR+O zNe3Zzzu9fk}Q6s9rs@26Y+qzB9;p(fK$^iXa##-|thGn~7X5uO-!|G#=QSYO>#-k?D0h95~^B6&6o>xYPGpE;@ ziSFJW-TuVUsr~H#QlowFZM8iA=Nj!H6l59&BaDJv zqaeqaInF4!#wf@)3a&E>CK@xZHwwOM6x?hS%rFXWHwuc3nRCtMclM(j`EI~-mJBfZthSizF2M|#rv zcx~47qUlC{AAD)6GkZ^;b^eU%%(PkGn^9Dq8Myg7vu~=-^xYV~<$~%=&+Xs2U`BP) zt<$I9T9uiuZxe#ZKUqL0YZG)$i|C0YcUMHqKKzr~+PDkn6*dIYGy86qo{1MB*ETt- zFOutH4*YlP{`Vp!>~+vey$toTZ|m!0^5l~YT=NGQtIuZzoH6yICn5f_CuBiFjn=Szc#-x>@>Wut)i25B++OQY? zgij$=%Pyo-yv@wH10vPA#_Ee*F#O~#8-}NB81B?C6ehs%-$#RC>Cs@gz=7csI(=g~ zRRJVrE;Dhd3yPB*D1K=}Va-!B@zxLAGqL7qP|Q6V6wkhC&qS8Y1XmvMckUo#^(Yq% zKiFi?#IJ1_Zq_i2O@QI!qruSoXfT}Rz%YhR->7rV#1$?mdN@%0&W2*gTs0GaTonJ;goWAAa+X(|N{#!ml}Jx8l- z=rT2QXD2|{Q)hwc7-PlJ?MpE>*@5mxf#SO^C~k2<(eS1X#cMVcugy_&^z#SYb9CI% zpcrs8DCTdl=ji(a#Yz_xce^T~JJLps2E;7@(o> zCqQxW(V$2_+FUen&4=2_?hz=Kx}Yd?L9uy*Jr^5nD4qzbxiIc`&&8;tL6KuaVeg}9 z0sT9m+%s=-pjbwyW|?%YXy-lws@4V6gD#*(I6!T(f$E`w`usjOP@fEZHv06=82;Lb=0YOp~{|`UkVh@xS;s83yL4r*i-Yq zJvFy$D6UR`;@AH)6z4fm{7#_2+b_OAt6Wf=;6Sm%hT@Z1YA*hCuX`?5{nJo9{YQH) zUK1#|^)L>_Y8MpuSKD*(u?@xb8j8^gP^|u^q3Gv8u|}X+?1G}o1w~f}icf4P-k+)F zqSAEFMb*)u$gz>NL%!%o>+HGMK&NJzbgj67O)eNptL&Nh)P`ZahT*>wVEFiGFdUT| zILU$GZ909U#x)aLT~M_AQJ}EQvd zwK5ZyQTD#fL78-|W@3j6hWQQ*du$lSX&5d_fZ?;F!QgBi9j-kOCw5A#ckIMiTI{%3Al5VHi*<{6 zW2rIn6zZzNDO=C2V;<2P?Br9+^vc7|0!xynE-Rb!tyD5o1vcE?}k*{!Z;&&Hqq_V4oSHrKOg{Mpsq>|m^(?s_&e z{_M~Zc{W==Q)4KMKg$kqCE4mZ`k7jzVEkEmsyv&opQXzfPK!Ugc8EM%q@StrCC8sl zKSQ2HcxILfW(a1T;AIb2xL}satl)Cr-8$n7)UfKOF}lc9D{hv_yr`!h^;CWuqX(O6 zUClC?8TIrNaY9o+jnVy0wX$ZJ%#C_lqn^r7V|1FS*48YO*-=k_sh-MD^{%Y0Stj$N zp5CjT%1>i75-r10BPcyvE?`qWud#2%`X3ub3;ArX04X5nK&3;@cA|7{XS)@x11g*N z?QCY*{&pp|wJT|9S2Dd_NtZL)wmiFC9e=wzbK2E8sa>7Mpk1A7+tqobU7efS)%j7oI@8JJ*VPzYlmHa;M zd+s{Sp!R(K&)?^9IQQIh-*euxzWaHhL7Dp+lzF*9na4uP_%&HAooNZ;Op~@g)+IVh z3BHa6Qg8PTk}8I^Vv)RzxDCzZif2iq`hYQ=spB}^xCv0JrbM`39uRnVhW>>Vz46&G8l z72Ctb=us>72p7Aai*3+~J;=rAQ7cx$#pZLdyR>3UxEMWZ#U^vHC0y)2t=I%EMvq#t zeq7AY#U9d%_2FXls1<9@#Uw8Fm{u&Bi_xQ2?2wN-WE~fKQY-c~*|k;BqgL!yE_N3e zdsZv9g^SUnR_rzu^YblUJE8l);^@&GYYE5Hb+7O-rHi}CGih3IXR|1d6+bO_{5dT( ztXfNr2el*0J^huIY640|iZ+9TGi@3t&T0bRnt&&U zT)sT+fF~B`e83Z@9`2$ysuzK0L2q34-;mxg#i`>~UnZhGryeUDEBn8ENtMB~i8W~P znCCz}5KWFhQA&I~h;e`WWeB8K_(Kmj+ znx$%?oo+?3e08_^D+yo8d|`48p0K{%Iqmu^Lq< zEi|F&WP@(C%DIPLVt($$UlTWk$>J|@N0qeiUymDBB*zx@g4(2wm*qhEqan zw!_;Jy++7gfo7_Mj25UGJ9yq=hG1rlI3i;vfPEe5NE_*#-wrh`6rad9l&**e)R4Xmu` zo92lxj7{fgD}@StFPI8ds?P_FT~+UiLt%U=$_EBkBG4aQaf!$R2qn0%Iqu9L*fsDt zabkj@>TR*yc)Fs1;+sfW$?%j3j7(0;>bG|InIkU=og`llm9wb1DX@obnd0lfODFrQ7R?doxJgQ?p3mXs_g2ubLD!PT_iSgGhD{@w5+x%7bn%HaO>q~$DDhPhdW&{YizbazlDdc%HKj@4piOWKnc^=0qQs-NsNPVgDRwl97VnD* zm}OO^Cw=J0EtpDC^PDu-{|l=#+gG+K4>e%1JMeq)PS_`WC7RJebWAJ)1QCdgZe(5J zv{eP>#e```vSpt;SvW!V|G7!s=L+|uGTP@JG4FE&JJ3GYcQF^@rI&*o(ST{)yX#zv?@ zE(2sLdIvtm%A>L7_^fG#F(L zD83ONE_7CvAR1@M*?H_4g?i@VI8!$vH&*ty6i9*MLo&!u5BuT`oza2oe?N=J&|mOtIn?v>6osV=TfwG z6Yxw3c=7|DsR2(xz%w)8nGx{J33z6Krw@4M20X<9&q8YGTJA#;LMkTx(le0wW-7D*XRPE&(jKqHBcZ(X zC!h|Dt^h_gO;91V;pokvp~OL3igMySG4;sh(!Ebbp(oRnsq`8Ha=ujYB61MbpP3P< zVk4eR%m`IcdyW{2Lme>`6%P{tnyfu=_Q9F~W(ygyfed$GjSoE#SVI&G3>mZ_Dssg= zkMlyob#3!R3KF?VlwygUGau!Z&o)tO$xH=UEJi(q;#SV&nLRD|5PC(>RfF_Yb*h$k zshSeA+PK#&l|ZNyds^_4BmdNkb;9!l0*aqwRdQ?rnauH{SSGxhv{Fa3Qu$np9!-l0 zb04L-mrb5keDJ3JRX738jdI1~PjMgMkorKN9g_p;q)s^F7|-m zktsG6o*^Y}(JQO)SN6ooBjYs6sc(>SlH`#|TFz5XP|iSkhZbcahrkN90JU(0UIcQJsyRtB3)%q;>+4ycJDY}UUR$jvJa1NA&*CsSW1CSpD%b=hm5-j*z_x|< zKEUrKKbNwCr7R6>YFBK+)eeLi;)`&w5Z-7`vv(+;*}Kr<>$w=`iA&_JCtm}dwj zpS_T$4<*w%nNG>QgDiX3D^FSWt|#$`sY?a7Dj@Vg>I43L%?L|6MuPor09#U}R@M}P zN=!#8?ciiSC7W=PE3R-#kC;^6eo|$>6X;_KJ6eWq8#jQ(rtbB2 z#AU99&8~s!I;y6XG}c)KRZWHiRY%okJMH>c%_%f%6Z$F}+X23c;;&E)U*$NV-i3J? zeTDFewY#Fd{b}*HlWy@L3r^}SDIW80+G`Nc5_8zv;Tj9O0XduJ&glL&x-h*YIZ%?4 zS~47r*cVcEy5zV+W5lx3E+1ZeBv3LuwPb=|)AFrs+61s^05Bo7WTyCfhV|>2^!3ct z60i7ruJvoLVDh{nOkOcqZT)Di?EMhdKH}iZl_wwMltcC%qLk@qEqR;TMB{cd~ zb#@Yl6Qk@-_a+-3duL18$&G$km7N)NO?7rUcFmH3Q6-&-Q|`x|C{|D`RuEXGfyD}O z%LBnMr)J0E{?aNkjh&K4lpv2X`rVDvV5OcF>#dCWlE)F_Xc8yNk8JO+g0JMtJ1j=SYCARKqe2>LPl zK>vD=T)7d;JTQ8{T=_I75Q#vMeJ@dZ#A_;Z-&Qd9Emh_ox8}AdI<6DgNGn%ge%w{Y zN6_}|!6ujZkGCjVgnN^vRVz2OL^RL6_1}Qsca>j@@$rqJ6JC*g@yE0&aUb-ikWH8m zqWx!9K|H z*R^$((?zbqVr2R2I=RaC(o-S$GJjn+SNTqQ%Eij}*PZJsr%>#{!Qg8Abpu@GkI_>i z=q-QU5Lfw~^wg#qJ!QJeB|Q1YG)G_zX_F6WoZ{!Oq3duwC^5iC?0Sa~t4t*iSOnqn z2hb1}L%1qSkW@txLCW^maAxWb-9+^e1Od2?Kn2n~0Z6D=8y2Y+3G zH``w~#XE}D;9%qgw)?+n=0EOmmG#DxG_F9n_d z01_l?!9)OcW|;`<2_S992C4Vq!`6x5)>_i~4>1uYiEqS2C~S&JP!p{+>Z5RtdTF@P zsCL{a%z+prf;XU_NxG=^?$(o{hCjGB4DpXkK14Z2!DD}d8miVV9n8CryQu7S6e1~* ztLz1&nE6GQr(ynD1wrT?iq>-yceP+1_?Ls!@TKIs$`>Ia`l-2tCKW9&eNrV*_rCm) zHmUw>rxS6mQ^Tuca`6VL~uWr7@;SPiI=hySe%y~N8-6j@rWZ=GaxNH5#l@=3*0|W^u}Ev z^ptpTDD~M1(wI1DQoKCRMm<*)j~zAOSfh>GAHNFxhN5{mX>u3_BJvGQRD%1#&dh}j zt;~ryHzc=^(nSG!`!?PNs&Q9#V8`AcMO>Q64s4auh}Qrk21GDbgs@8b1ivoRm`i&g zY4N3Wa+URjD9@LIt>k6o2o#4)**OBmbVhMFNi6#z414w{9m!pU+no-BT`5JNr>Jy~w0)cuyqdq}LeX5T7ZbJRl?}56nvp~H-^5jc- z6BzXgr-!=hFM;|9wA_mN1(ai;p7Wa-^*J*H>bNUTMcrXSeHF?!iu#8jVtpy+YN+Fo z*p3{5`b;T%mOy<5qdrqdeU6U$JB0eS?|}ODP6G8=l4pjLH9^-iTbFoLD@!8-w#!!FJ*v+I!?qY*`64AD@>@&7h*2=!o{+6Rah8LC|9WZHzUs1xnpfL$LP zIf?h!69l{6Vd@t@`UP~Ww4h&VRmoM^y{j~p!Td?sL!m>|3A0uK} zq-7~U^ea`%ayGEBYFSz$C#;rblqxh)|F6UUBK$AM|F7{si2p9kMvc;s$03L4$7y-2 zu7a`+>Z%b(GjK7mG1RESrBcQ|>Uwp_BYO&ocVP^QWIdA5K;wTzoQLO~v3kmzRe zNMeD?YdF-Q%<3;83)7N>Z1IVT@(myY+$ILM>}4`FRX>=9tWBh#+NQCVx&2@}b!T8=0O@0rs3q5?AcR6&6R7 zQCysrb+el&A7G^jzB9gfoxfywR7p>{BwZ-mCMz)@_|OBS*qiN8T9XWHS1bz>zV??) z;IjEz+1;kHO_f8SFhto2#V9+I%g)fsmVwCA;6^hwBFfIBvR*DbS1X&|!6@5IS*gSI z7Jtn$6FW5i-t(jinvgIw5<<}XNh;=}EXa2z=g)R3W5tL3iNl+u$x$rj%k=Wim9C;Z zMF=bDC6^>=&AD?7>9(j#>if-Zp)CAb!!x<~D}PA}7aph;o?|ZDQW>ciPAUE>vR>34 zMf1)iH`8agDxtzGp$n=eI;BjS-BYE^h_m~MytdQr>g?n7?gA(93dYiaZ}(n`xPp;pJK%Q-5C6r%X87)^=(Z~SB?f%|Vw(G_(Cu<2 z=023XnCr5y7eT~wFFcGHJ{}5*Ny_?nxu4~QDpkD@0!Gq>mxz1{^cZc>)06b+KUqoU zb_msRz9@|_h*h>u8GwKwmq$R*p(`2Rth6cd#g+cWSO!o#r*n&_9#T6;;c{;(1hsRw z2x{liI4>9uzJc0V>4E7--6+(~!;4?^FUFz)XLkJd+?}K?3qz3*;vZ$U`DP9%hAn=wb_GFDc<6^0Xsr z<14gK%j;<^9+7-INQk$EvZ|spVS^D)!T&9e3{!vXze|NJ)&yxf#z?Qwat?t?Syj=w z5n3!;p(eEuy;nukV=?xDiSlB7A6S!1`v9VDS4HQ`V{GNy7Pg{>c2X@7x>AJ9F4%m= zj>}ipVP4d<5Yw%w$WDDw0~`OO*{yr(&N*$q* zaTobekR?C!+E8Q8rFyDsn!W*1WmJ=;M+v%=nVh;aaJ=|c?7UKLO8K5Gco$VNR?ZyA z(A8TlP4I6a_)wlM>>v;k_AV|$WDjO}P17w5euMy@o09rAwvghjwqs3}Dz<9d`%>m` zTQzzN_B3Lv6|j#|3)jY=$MJV{cVqla_B7W4zU`z<+gSt0*q-L3lsUmxB_N6|)&w!B zm4LW)5+GKW*86~+1`%Xt2ZDIaRxLVuLf|ArJSJt%)Y>SvRujanD#S_i!?y8FEJve_ zGmSQSwKj?^)dX=uYZdFEVcR&LAnI-O8f|nyArxXo^w&Qa99R)m2NuUrY>bfGa>7^< zJ-Z60E=W~bw<03Zmag;v`M1C8Wxq0!3$f9U{rA7kRz&h2C?Kqe?m!ZBr|iG&M~*)L zE28|bIc2dTT5_w^isJ{wDrUMh!}@k6%-oEb8<qZP1DTYTL5E--ZX#T<&uztDIlG^n*H5!B@FtQ9 z874-qvXNNHY+*1x-ap2TZSSbGeC}7+j@ZKBKX}V3DMRc$^%kqxIiBVMRo4YC0Cb}r zFkoabJpu6SW?;nCkwDWV!*+!LqYw}bY@f`)0BWPd+iImJ5x^Xk*@;wvlQMcB115Am zC?l3KdLkpXGP@^bBzQYYFxDW`$|f$q9rgOgxDx`|N%S(^n=MUGM(K2O<2GSwNu&)k zFr9}sm~1JsleNYT5{)a{wkUR`r&sA1H?7Oc>|TIgyQ|(iw04)xi#O?b6NS1fq0^){ zcFN44Ot7$(*%_S4*kw|tgEBLrG?eok+CW{f6vrc!Y1OeTfWahk1!;x}dj)y3eSfjrShUE4229PPWi85;@-)b z6n%&-aIEW)t(JQQwAo65p|SpAmSYpt*Woq4&^nwkj%KTFwOoWuFtczx?hV7!&`S`bLA?i1;1vchpkdV)1xQ(r`<1-W_Hgbg2kk2aBLM($~S|M`#@s&Hiadz8##7p-L1=`1_&9ptOV>; z0*WqqzfyDwpF!dWa|l#Elh6gAg=OF42hcY*|8@rvMb~^wpkT^!Jjc#@dW$uG2^ED8 z0B_l8D9Ux9q@NuCdZ0Gyty9~-u-m8|#f2s~7h2a)`2Ls;~Q9ybt(7VzYN7@)C35m%_za=^`BLG{0<29YwbYZLz zG9lY!p^uyI`vypl?>}z$UgSS+E9~O0a~7t+SRCdz5CC86+8kT9Z{ZAF)s`N}cGN5s z8u#Pa3^a{=3V9a5Y7gl$171$ zO%_HBhdc@mgv3!4DkI}qvMk`Xz(Oi8KGrwVX@e;}E=TsaVsUk>tK5MEwM~etskOK? z>j<|Nz6k((1Yo~BsDgzT`otq9kZypq3y|fnkeO2n8{}ulq-Db(evb_++7tFd#cZ8n?8>cpJQra)pnHHq>a^m2hgb{zffD<I;S*?AI`|nXXRDIv0z%lVvpYj8)s0E|&5l=rA~x9}Qp#dz(&c z-(cR`mj6I|TQTfIXfvaYU_Ek78(Y^P3J6*|8A+zKQv`(#TKn*a*h=U_lf^!)&~Szt z7W;mS#r}s=s5_I@@Chp9eTvxVzW3{U|C!JMn`~A$BSEQKPOf3!;p8eM@Z#k9bf5X; z@;o1Ma#3;GklGP>gVV%@-CkOM-(fnr?!vF-|1whT#{^l?3 zu(fxStvw9w;fR*NM)xqZhtWL@?O}8eLwgwAr?b&L4DDfb4?}wx-NVoxM)xz==pKgl zFuI4K{Tymy1!j!Ke1ZFwJu~IJ32bFQoUQC(M0HrsON1#EAvPD1KviB~<0SJQt6Ng; zVJgs-lUz2FIAqL>A@rBdI5b~3tlyBS8`dW+*GJEUKP*Sb?M1((DRz1?y1jyUUd%X$RxGh5SV3AYni)5oa}D00Q$i!iZGRJBw} zO;oMvlL4FXn#-B0HT~o^n&o^D5fW&%t7j){;=lT)DN%~YH@^=mf= zxX9=@Q68D7F(C<@W43fZiXoLf!{w2~wK57uRQ61eM^4akUIWrJbwD0T8cCQe__6Z+gY?$p_jkh6&?cXi4Fk^;c`$oKAYxzZ4zC5Q-D)Pb9z|X0SPUH#}&j;TO^nU?%2r0h4LCeiEou82Otnq5Y6;!(Rm+=tx>h4jzdK zl)N2c7YqRK%he$xk@fP06>BR1Lw`f2N(6!Cu2aufY(UA?Lz)2;)bk zFX1FZKJhN)GUVf&WXKF9j|;X(y3dwLM#D0V-E%}vbFZI1(^1?OrYQO zDfksure6XE_42gf8jvWI0;xl4Bs6>(kugN#Es#O9H;cBwa4wbow#4*G=cuCcN}<-y{!5xZ+&i8E@EOUkB>U=$qq z$X^nty0W^hR?cz4MmjFFBuUsvCt7W!lgLIoDYYa;*hmkwew`w|hJAL9_m2$z zC$*$Nd_BSXb%FT0Ahl$c_sj>mtU!q~wZw3;{reM|qeA#6S1u{Ul4JYpe363v z^*~CQHsg~^c**JOh-eGJl-zs$KlN4FeaVP9nffR}?IT#yncaO8ge5pcL~OtecVE66 zd>*&NN*SpVJ6H;kqyVBCSP|#VB#UA?5^*r%s5~g=4TmkUoQI=wzntd|jQ$AnbBLs6 zU+zLQU3U@IxewtY9QajO5r6av2tA8$aQUxRE8=EkMSKKS#D`$ysap|4`4fdr5LU#{ zNo{>g+fIKZ<3+2V(E7!p+bPjr@$fF$Bg|r+5Z?$Ls;m5aOnI^*K8(MDr;$)V<7wcW zi~Qh1WU&?Ta(eR9q^#>yxG*>uv?(lz3vUcggB2C5hYM$_cEke;r>Hi>Lkjc5Y~Q~u z(iT~}73%gaY-ZP>2DA;jo=PHDG|OPhCY$53LonB)bLQ)4ywtg?y?ByFzk}(d8~Sel z$__D(tNeQG0>PK)y=u0rgtL%c*U_+QOvM*$w%dH*h1e&$@m0sSq4u@7N(*a4*2cK}8?kZwQebg)9}>X> zkSDUmSsom`1h;jSwPp4e z=E@JLw!uqNWr>JPB>u8g#Qn~zfp#8(I0_~x23dNVA{OO_n{9b`JsDKc( zucaIV?V80DddRJhH305fwnM@ z%~8?L*U@I1;cH(5+Q}-~qa@F8DKCf7&N)4_Uxi5ywI7st2-Vy6nUg=uVoiuMd0ZNaU)3bf@v#Ar{I zJQJk60!F*w^w8e*zCasM5kt^Mv=1}d|5TaLF8WD~_5>6XXhUDFqn&{+Y6R^M*oGK} zv;u7y(r(pki1VP)NET=(G8#!L+WmC257Q)H^a{}4{EI+4Swgt8yd+Wn^w56yJ%RRZ zM4edH_HxQGMmySq_V*A4(IlBh=Mo$Ik4H)y?Oc>?1ntk*ei%ly0&N)4R;%{I!F@XZ zFbSR`@E2ymvsC=&>iDxQ?V|qz|9x;uqrGj8C}YK2a|qy#oD4E?g2iJ;qp%nIU^Qzs$lQjUum+hLqjE$p zeR;mdsH_qxFe-B?WulsP&oeP9i|{}c>(iX+xMnpSXdN+Huo-2$OgJt_jllmr{J#tT zHJVn?^=!SU%H3dT7}2&1mWxAfLNgj#E~d04lAn##$ae8V>`%l25LMe#zTBbhXmmRK^ece>np?vy=1~-Sw z7I4`KTG=;`8gQE`PwHh0sB99KP1MQ`GPO5aS*DjwD*l?u_(Ue-VFW@9>GzN&fguIQ zz~+n1lsr-1UowlK&eWiuhmBk71*g(mhdQem28JZ*>ntRFtQeq(EO5q~zMsizBXo&2 zg2F;?3Yq6Eb=G>IVwiZui(@3*Aj)eO-k=Vj)iiHWEGcZ+Bv11a&;A%|p~}AuBRCE+ z2DZf_LWh{MeT>LDg`wEu*p(f0L$T==L$PN;;;rn^z))Gfp$sX|O_$Ls3L<2Jy^q5TGZH;OGWLafY!@l4h*aU`{-y zLi`p)cNl}BDokL*SSQIa)=AOY*kHBY^Mh#PUA&4Kw9!it^){v$ZOqZy*kGMq04W$@ zy{CWJHg>bLF~?|Qf!4+bE36%@TtJk*rtS96UjZ4U$>wQ}S^9h8UDCt+(T@wU z9;Wqsn&_AJ-8R~R!4rD}58ks@oN{AjN z7m!IJemOohO98F;urPrjuFQ=o{9d+uu~9rC@f^H_==bZ?|4

14@&)10F zE^}|kq3E;yoq0?9e^ab8ZS(eBLhpx8B zEVK03MvveHfI=G%BN;bxdQW0wD%gfbSUi!R9fk|CYDbp6vMg6J#PElTH>%4f-v~`sT08g9P-CW=l+PWTFXal0+ zgV9f_uI*eHaDat{ZA$Rf?$~XhYhz7WTjW#GM=6ueNEr5;&q#G=1FbCGG4*+LY7>%V zgFlVJW+xTJme+dwq*i%**G8)fvjtA&l`DZZE6gS-&xo}6Y%_gU6d&%J3ez`>&EG8N zZxZlLZ`9MnT+cYuH`&HF-f@_ZDBm6ByO_&&GnH?zmLG96b<5p5g)R@%Cz39Y+#Hur zybQa_%5&*=ZEO4rbzW;g!VWhrh&xI`w0YB!!`i%!SDdCcZy>N$Do|R??7Jab3eo0G zqn8-4HTa8xGWJ$glSdvWG(4&@Z_6f(8HZki!uyn=msESH{(E447Kf-nusw>UP)r7t zw`n-W#GfjFQ-bxY+xe@6Q+-7Nfka(UKYFiX6X-@%kBB4$xM&XCPi)?^q-+{MT$hP3 zM;XY+6r?~v95c5K8)-rCko+pG1KsXPu6*uN4Cm?!`t{Am@7US-@Hk4Hp+y4Xb8EU# z;xXv`c~~Lj$m-rW%$q{NlM(`B;;~61n9a0 zOeE1@m29am!teT)I&m_jS=e@65Xf=@xW!s=z?_>wNSoHj;4p{l2a&~ujfMpFgu z0$5T7?!aH63cLgbG*uwfeM9gF60WcyxSys(U0mT9HDt~eSP%ZXgu;u}=STTDsj#p5 z+#W)4gcB+}Cx~dQNDV1;2RlGN0F_>0i{QhY%JHVrcKAMNOLWEFc05U=kC+vE3W&Y3 zZLgq)C}_m6D+KSSLL!V0xQWIUeNT`p3I~i45d6~sfwg@TkRX) zBP7Hl_v-l$Ek6$7AErN`=R39h#Mw<1kC7is&592*|G8P~A~b8|F%8f7+0jZ*qgm+$ zE;$modm?~K)4?UrZl-*yw~iRGZcJoBw7jC{e{qbb_rt)Br|=L19?_5k4@VaB=!~S< z&6PXuQS(XKs5??~1bajuC}6H6a-@dKgdT|4OdD_suLW8+cYN64pI?j3!KwvH$GHS0 z0Km}%@PwNH^190K;1U^J0>xp_xYl1m2nld@_$GJ|qan`ZZ{9_9W$(eR>`V?IC>fTE zvU3Zp{IxKA%4D1uxMt7ebP$lZs_2B%0#afD(pCfFBp``Z(MhKTB-H}s-Ip|cXd-&T zO+DYb(~^K~tnGLk5-mBJYsY@t2c_yXrHqMNz<*ev9>HJ1Kkn*+6_?f7D%KvUrUwj4P`f~ks&R-1KQOdOJ|iy8hD zWJ#=x`QUy|S#&Xf9zb)mwN)wq3Vvh1He zTE$2AEI1FkM_m_l?+bu5?TGBZqdiz)!}0tn$~UkYOcjF78G*kNif1Rud3xOZy6-fN zjH~QvOlVq#?Xipb>)@)r8yRrbhLa;=O=#*Fb|kMvXiLgrf9bA5J=2wQ*d4qZa^Mc$ zjdNlVw&QbYI{A#pO3VMaPh);J06Gf^4Ep$%JS%;isQGx0#R~?OK>DEW0F_Xg-QB7W zx_uZ9T8lpD<|nEDg@{x3zbs})jO=f9iI@Vi|7pq-Ki<~DDb$Udr{<5}_&DevhFnkt_Ny4bc=)aayGHuL1|G z${L#d>(@}l6*7J;nxgmck`Qex5Y^|eSp)RHy>}zDYw&PPo z`818`!zC6i+T2Q`W97)B-safv!u!Fi!AvQ2}kl#&J|Lnv%&FU2aF1Q zs9Z1#yvXNf`9~}m2Hs`=fcdA@WjO@{qitNW|7@*a{J#xX+vfj-Ql@@s0q|HjkgAJj z@82Y5$q|CB>J#<;G4!g!iSAw6SwrRZiyx&nu)Mxy4CaO=ufG!cG)Ze)iV5?~*I4#q zA5}fNE|p3*{YM?_L1ZU#GYRQ?Kp5WDEDUc)O;d&R%{grdMN1#g!j`(Ggnk28;uo?- zIHV?`7*_VQ;9!^o(#$vfR(c?ZCEZ&Q+!Sw4?Y9DJ%qZnVz3uZCU0r@EDHVO2Xt1j{*nB_XU8Zr zFX6#6&F3umCpq&cEBD^P{1yp$DDD)#QrW-rDdaYYljm&S#hQH7I~VOr zWA?um&NQr189`mWvJ?HTJ(;1&uwTnDWZ0(uRxLWS;Ysb<+y+6k3Y%u^{Sjfr$2t%+ zOZLrD7i#}6vT$&61ZeU-o}+-1fFPLyQ<6Fmr&W`6po7^ovArcui)DxnS zm~-aU3fnVbln9H&yzq_qR_qZ(Ortiv5kLIUfERrca#vzPi0}(zHTLCm8vDR5KWGW> ztJDH;3$*bKgumL#mQ0Qdx@EjWCCgh9SzZCT(#n?UuFb#h{TZRK_PR#QcSP{LcD-cs zy%t6aT75!?pzY&q^HYrtfp9b89A%mJ@n~E}E&HQdiM^5zwNA(}ZQ_qSsc+(&kYqaZ z$OBkDfGPQBt>=`5&Rmymr874`EoRvKOg@_iEQHRS1jtnPY<#NkkEc(OsJ_?g`0J5E z-hT{~MH>PsD2r=vHx6OB;!|%3WkJP>vUr53BkW{ro*~M@gIuX13%?f1!i$&G;w>Ze z7K;&ANh7i?If0E`rz~vuhx4~aHE?SHXfcl1kO=7epW+zA%iNiW1vWZ^oXOB>4<%7ICYCkdgK5$p|y%LRUhY?PsF{fhG%okBdV=Qq{dUvZbRrftN(Gg`)HY&EGFg;RY$EfN2FjekxVJmsQsELMveWC zAH;)Z(Xg313Ul=>E^rEqh9-B=w5Q^uF}2Bj8;k1ikGO@Ldk-I8WZdwTT@XuLGf0hBPRFB|yMLKosYoPkcBN$y8$%;U( zxM2vU%PpDoyS^uWh0^wIz@Yg!Em)63(@I(Wgd8GIf-_MFWll|5C83X$Oq5nBD`-MO zYzR8iOX^Mh6_k~FQ;_Zr+*Ei2Lmls3js75Y{30f*8&Su@SinJAco0G0L_$7KZf`VRk+3k84 z>bGj=;j#;NPH3sOQ^24mE{@QH$U&|$(#%uzpzHbWA0jn{*Dfs0rrxS;LbFL>X!Y7X zcyZ_^q*7O%ZxLFu&f*(Ef5IyekV#el1pW$D{ojyIYNTl4+~7}mBp+S!y$#*E=A$w( zojYHpZe0<4ZxKBReMAmJWVu;}FuSPDRrUzgrK{*gIR67?75#{ZgzxQxSZ~1@D6RS4 z9u7zScK8ZMr+Q`1TztXW_-pCYdr`9%n;laj0rWTxJ|ZOG1GCETZxoc&Anqu5>8<8D zb2YG}&v0z3bLL&7v^jGR%0`?sxHk#g9x3;5{}0uXB`zq27iWEN9Wtnc;7)r=N8E$7 z%f7Q5&T9R)qVCgi#6_Sf+-z_b#r04pL&65uM7Fiyz6wUE^TBF$~9-s|L z_X&HWf*Gv_K4BTJW9F$L-|b50m0U{rgwX~`!PcQfGtOO-+~C~BHjFUqO_U!4{DI(3 ztokzS(Mg!3;7ts-DSe+36r06w>S$!YsdVZ`a(lBXOf$Y{z@@alpSTp0-;^~f@A%g+ zGaB`qT10!1(7a%57J*aH{Dt5*#Y!*u^&|?v9&9;(--Yg22>lg2rXuKadRZWLo=FhN z7%>tjweDe!lM+mw-e+QFTn>i^_P_Z8hukvaq%M-k|3)xY2-O@f=^i+3h=%S1{qD*R z=_FdQ#A=@Iu!RQX@v_cx0MT`id~bbT~q| zTl_p8#9poXd5CC<4g5SH#n=2itWx~E}@Dsac-r+{Hg`$>2tP* zJj3MG0q;N@H{PDS9^t5=PTu!7@Z^o?sDTNi5nrL9LWgX@$wTpA>c>K89}+55a9{MP z&RG|N#8+Ov5Eu#0x>be2X5!k@t3x??!sBhLCyYH!7___c7>o$!)6 z>~aEc(mAOo1NIKtS0@pRp~~zZTP>J{hBEta@kW!`$#F`1P+Un7H=K~r_Nyg0!=*Y)8P z*yjV3GM$vOs1+Lf+#KMkLq>C^$%YvG&jE-uuywUmCd?(CnI8Q*&wLtO^RxZcokHiD zzkq4GuC-G(V6{{zC$O>%uK74J#mZu?x$I8SytVkN@yL&0hQbEKa{2V|GV~Ag$PW;m zVTghSsBj#Q$KAdd7_PS^@(GDlj0C!HfL@M%lFLqm>q zOux`2PwNsVW?-3M!agM?OgAFCo-`tJ1S?8+JLs%vpWr4u5-ZwDn(PdcZ6`&@y@2@0 z)l^XDBPrkrjEZ!{Le%Yoi3}1aNEe2IM`db5eK_4&+Q;+Qk=>hl@wcRzsK?n!$Tf?mzK18Biho1Dyv6l5d|NH$z&YtO0V|n z`3~Y0u~n$Y&7-&QaYIFkSKPWpE$F~zV&xTKTlx2GR99qP@$_sf-5MfRPO$?J39+p_ zOhPZVtz=_J*fGYQmQmei2r~?$x?Gu{FddpnCVp;V;`fmZ%nM*(*(sulUo3yAnfQG^ z4HG!Bc5T`EMtMS59)l+wNnw!pxXMUk#e5;|-;tJ>S;LM}kwY+I^IFrn*><&H4arLH zx4l0LE4?C8yDdFRW_qwDiwkQ__8B_CYE1?%a*!Z3U~Ic(6%Ra-FK-ZH4Nb}J0DwkJ z$@<*cz?2MUMi}mhHGJRo;3m>nLsjZCvNcYZ5VccLTKsfDTg zq}+@U!F`nA1DjWR>)4!$uRbUumG&bGDv%hkphBDhvY@I5At>dz8?~S!+Z2_C&^fYi zSArw!LCp~y*^-3@^CDN&Ob+45s5s5f|E>oj*hU{&Lmb)l$dxLt#jk%?0tH3~)rFUp zcuCm4lcZy7(!vO{n5`v5z^WWsJOAnHI>(Ys3SBxF-{`u|DurS|bAX1)qEc=C>-^gC zBD6J489=Xvu5%@F41TQyPa*u;JGTpDx2z_9Z7~5LeyuTG=llfqT&lr8?Sh55F-uOz;W9u2-t!!@F=^LTf4#p_&K zQXA6>8L$$wzGA>n7OpJ|nPP=7*Y=(y+Iawft-8)cG*;u|Zo^(0%E#TZ0R0w8*SV-? zC{d^KaYOOK!nRp-otbzmD17H-M9NrnonNg$g@&$kYXe>9h0AGun%K4#UDQ!4ohnkG zCekTo8nvdVQfJ#X_b}MDx2U5q>%T%C?Nr7;bn!;%NKix+ zLhcnlY8ta}zkMfIxKLf^#VA5W_tAUIoRu(~H}8;wq5(Ho=~X9eBi!6iiDXX)9*%}t`;^+WJ0xVf(ZgJy1{y3U0tgfge*=2+J`38lqYzu1tQ>q9T8 z-|!cmz&);Zw;K7_&~;YMM}Pc(&~uFRNfy<*x|CAbAsOf;Q+wlj0ezNn3AIxhq_ za$1_so93D4%tOF3vZnI|l#MuN{yly4K$rg9>AfbYdZVi zz@-||bViZv#?W*|i4P)ZIxof~ZH#+8T}|gC>c@tf&dG4j3gKT9{ls}j)O5=CV`em} z>AaQpB3;ut9(!Sf9yIxn(7tfu{-QBCLLD;ni$&sfu$ReA=R&hMA<@DdO3 zHMg{Zrt=R-c}`2y+4VkP3OIi5!v>nprwGnzYB~oZc*7ZKI)ib%7)`uyyqOYCT1LEL zw?kNfD(^cKIVMK2+J^#y_uYpi^S&1o=fJ%0%Ii60;eB7~Y~_9PESk5JL%Y*3GaI*8qKDluCWIhnn}Z*NHepJq|sb;H{`2l zpwWB?RVm*gM!(8Gr(I_-lXAtAIU)Qr6{k7BXazb0d;8VPiGRL;+FNlxel7fS4qo#3 z6Zi-k%};J3MndJEKb{{+quIu5Xfz-AOfU?C1X$3@%$4gL@(e^@0f!u`A_a}+EaVs* z@>D#9aL7+o2z1t$5{Fzs0HVMlcQI=;Gu(j;C^h3PO3krtcpXBi*;AyzC%2%K=}=r3 zN9e13@<7x;eX@`WqfVnkb-?SIN90V*5q1`A ztp;lfL97|rUVLM2S)2y!HWiqYqPRJo(tO1KVxPx;0HXW{Zw0xVI3An+d>9|Z>+aR-HAaLq!UtR05?;vt}Bq)cN$*c+k|V-DtqD z^e*HAr{L3z=Fsw@;-)BTyXI1Rm^q*LiD1rI=lm4%sc1T70+YJO!*S$ngMLTtOd!os z*1+^P5@l^dJD{ODaOH@!_-r|SMv9$=5z`V(-?)u$C}LV%xQJ;--9{aUMH(|9bxSTJ zHpKs9s3K`|*}vzPR^Vb+?xNqd8}Tbd00#hxB>;~=8Abf3q0e219MEcy*$OhT-k&!d;<{OR~BBmnBZpj$h;TxFX9hGhH*c2;o}27p7R?Vz3<)3{d| z6uRVoZ~AH#f8{<^urmkgkGU?AI82eUv78#Wu6B}jHFfzZVw~mNNVCwSI9?V*B83U` z>r26}5GhPNOGsk015dS|uCxC;nZmvsw7GBGb1LW&a|E&jQ2oj)o^WAFjyNK(_?8n0 zMfNi%4pJPRk&d*Hrn^wp+lW+Ma`uhkV~-VSvB#Pe%|Yxj&}T;MF>-`M^c$PB;+!kB zz14{V!b_B{XCp6B#nslbgBh{Ma<34a?QT*z>(>b^AoX#PP#z5_|xU6m%>u zC<8Dll3NEmVKc|QLx_5Y1nvDGgG`#_Sp<8u#Ul9yl+c5QeUF6^^iZK3hm`J&;FRZs z)0oiNs)2)^#b<1r{3sHnOh!N0&HWHXAaT)@DSA}1Hr9R+<}LAwO6CmF58LQm%65l| zD+B#AFtMKMjSFoS*d4ypr5u`Bt+$-g0y?lLdK4d6L6^4G%pZkrpy*NY4b>;L9IJ`7-E4g=ujtTHJvLVyX~8MPcKU!)rem`w5Z8~*Pg{#UwIyddmH?|i@gD)M zqncwFtd!&F#Bq{0JV9+}$f-a54CW5jB6)P8o5-&cRC30p=mox=cTD)1C~x>yg=dxdnfEZUSfhgsd0s+zC1;lWZNZ#;s1c)sdVw?#gHkT;n9u=a~o5=U#y2~p;(7`q7A`2HjWxt}S7*j`g96+tIG0MK$B zoYTw30rA2(AnrzVY5_tIb&F^m@cSHHHiI1_11qZ$s`?@%erAif_4flE^r ztL;PVbh^z!bBYrb)4#T+H4#+_0NjY(!AlFz#O~mRX1w{BWG~N|xvZydAX&wuA7JaD z4HHXa8*(VETA7c$2?d1gWfGDsd)aq2=yaC7w4TB#i|i$}g;n$rZgMSW&k-hwV zqu}FW@u`{j4kLTHCtAfvm%Y4uwux&zFo*E@2Jn`l{GuHrKH^6WL3M-GP(r4&sH~!L5*YNICJ1+8yAWuvmfL zG#fIL=RljOGLvQnhIm1)C_>x`lXyX{pyD(?M=U@mVKVl=nPeu-kSkR*!LLPT;>Jsw zGX(@*)xv7$l+cI@yMtQX5U9&dIxj@G7xDd@Yp;X}f~OzIR=VLD*I469>!Ea|H7d@= zJ^)d;2=5P8nInoS7v6(qgBqW~m%X|hQ*0l`@Luybv||JRcI1*H-`7;yC@k;$*Zow1Qv?$N(_z4 zYX_?Yug#@b!z5TOJqV>$|KBMnO<=cDQ8aA9e-ihcj=D;~f6U8~FnB@)PkMC;= zP4_E#{Q~C9#@&iS@@&+MV=9$W0!)cQ>AM@8YkcZ03O!{5h6TgDL zE=F0*qiI392gk}^2av=3b$d}pSO~Vv6 z_zox|QxKA{6#VLkndcPrx62=kuldr^W=IgXgBkD3b%Wtant&nYBfG5=U^D58gR?~} zl{g@QQ8Z*%IB0Pf26ndm@k-u!Op{%)q@di|3?GhgO6dtF+Gyqn8zYtfm$lzdnDPe@SDpvKNCW6Sm}gxU7K{U|?K$L?F}rH?$-0iRAu`{Hoey0z~}f>VkM0!`om!0M`uE zYS(Km=34J}l|uue)_UC;*Sg%Ob#R1Qd!UD%daco1>lQ>I!qFzi6|OC3h--{d>vjxJ zI9xM4@c<}A(K9&Jx>kE>ncA)*UuuF!a@8kJ^lkGN@46pL%P7wvix1N zE@;O=FJzM)@U14B#BIIw(t#|xnY{c#dioR~{B<~x$Tm}K?ZH`yu;j19dEqni_Hf>m z!nxSbvEc`kAZq8(v4xkbU%gE^mH47?l$vus4Dv1_ZBgM6HD?{=+)p`4YR)mrfxBo_ zVS6>_GLRYR(FtF{SBw7@jo_K=34L_0K?|j; z@utxrfZhN^bf$`WVGbakLaeeSOKSo}jiy)W;#C{v9@8s3 zzseA=+A7QSSGbvrKI$RfxRqJ@o7!Chr%dsxgECrwh09>h!bd&Do6gDw;*Gy#U{pzO z`SO0+&AE>+r5Q^hCGuy{5>}3QxV12%8d!WFa16W)0-#Ttg_V#nOF@BrrJ{|%#}kWH z5ig?GwZqW*w^0BHc6=oZspzGXcGA%7CW_*=37=c+EL!HI($3N<#r+#`4qjK$3PZy4VZ6dt<36G z7456aw&5m6yT7UlYN5%7{Pe2m%8-0JVd0*ht6gE$M)`9SqG)zPn9Ea^AfQafvKE0SFs$i0(w2`MQ)IyCvIoNY(g4%hH1IloEmcBgCj2l6~5VqL?3t3@R8J`x83@4{_U zV=Q){7>nHinOal>p=iyxEiHkIt*UnWDFTll!SqzapGRy@6ZFj`Rkd%{dplE`-n6N0 zdee?J$=S%E=1L<6%0qL?_mp_TjQhw%7(>WRGI%T-SkV!ECvKYMLDp}YMOaf2eq8E| z8BuLJh8UvQYmC_BEQmP(nU<|Oup}-}rwP9F(X~oK*`sWoa27L3c2^?cv~GpAZ!$?j z-+2YQjw;#x9yum4=*^d+fROAKBgv9oXFg;_EZH46oKqIb?sQxrfM&PW0CqqK3B#kT zJFcfO1feSAZh%a(p$qXTwr;}bv}BokL3{sgevY(&vYJjlG^|EZ5tdpbMrejqP50yK3~81!?RTIg z{J37oG{lE;MfYwYGF2*0v*yVPk4DplsdvnzK7y48 zHkG>Pg%ocUcv`Ag`^UYkpl_qdwnO$Ur@EsdHz$l9TLCd5G>J&Yqi(h9GXR#mJ@^oS zs(=7zTJTx09#-kuJ;>o<-T$kd=(NV9XRIuK4dsMg$|2C>A=0yT^b*Ka<1df^Jd?E@ zY=I7tzp*MnJE#fJ;sYc0gTT|c8kc_>xF9oUlggZp%RhqiBXT#c<)rouWD;0udX^1L0f567E$uT&Y27-l?h#oBSa5KIR=+I6O*aAI&9 z9{qLBLU^>2Y>%Zx7$g!vxhj1~g%LspS0Nu4ws{N4T4Esq)cx+sNki}f5R-v^ItQ=_XX zXr5KTz=N*}7%om1m8$}VPcyj&Y@f5)G-4(O4}yhCQ7V#Pfg(IaSwssXShV0O-_*cf z0^xDO+e-)~ytYyi5|VCK6ucR62@qBi*I`pK2Xl)Be?@Qlh&Og6$#?_O4sZI3H%*k* z;*Gx~ftiGOjY%lGnb0*c3Ds!~985w&@c|fZNuy%|?@u-}30E{#tH;3|IAID6Ks>^@ zNy;}9XfcH05r7WGxrF8)+<^=J%vI62$ifCPk+STR)dzn4MwY`HgA2-W?~%x&2;e0J zGPZJ}K~dTG`og2ij=5q=grz~-0yqkSbIBVmhPjF!Co7vg>O{&yi_)ei6mJ3vYTDf_`o^3&T;(J6izk5;$k~)2&4jLvv4e@SS~!L%t9j2El+`Nam?*0b`8s9Q4N0b~wq`Ru1z-Kohj7Y5Sv9S( zQdUp<%#_uh?O`aZ-FbpeIPfDMb^i;>YA|Z0v)Dvg@hSgCEnh*eQC3Mu%#>9_FZX{& zf;t*T%@Wkn?Wtz!sAWGRH0r4S`r#QRc7)R96K4LI(iT#MU%97rE8l@Qh-UC(wANfZF2>33~lpbJcVeRcTW;s@#0u?Ma2RF zK!kS>)xsZE{c)9JyIoVAk%0DPBvy{?j`(GUYWXI(o?tpcwLDy;pju9%lu5PxBtrO; z=^4|0qfigwxtcQ#+K)&#;KP)&se?ZqMjcFJbrrgex)j5AHv}QLZbu!TnX!YR5& zc>}C8DLNLHzW5tmqx@~Au2FWPG=ZH%MbVzbVr*X;*T4$~O9#P^@PSB{3X@t_KzkDxf)b7+SgGLqmkXgg~kw&0m%Hkg3yu%p55eI|d=rl4b z1>_WVW}(w;p22%Pky%Gcp)-PXn&OUD5LYlzfI@To_Tyc~;xr|N<~KA-xO7=3AFlvl zro9S~I1}1y@G!mR1rbz92^#GM;V&uy?FIJcj4Ii8v0e#WR>Bf^-B1Y=!W+1fBv<(@ zXIRM%MkP;CH;0m{teWj=QO%ymb>+IsyQy_yyZ65p%c|Mz3o%t$MZSoj(f!q$n&QvH z-1{MF3Q`h7$euh<$F&E2NNS42Fj7TU&4$(Dzf~48xMiT#SX;dWi8C48DHrK&fvB=! zmwA&>i|%Z{GVfZIBEdAYhQ$iiot7%|*8?eZ9qZ1n8pI9O zbZ37L<{D^Oz!gi?oxLy0gT#GAl#WE=N=pw|2;5;z;A**&uv~b1kwa>QRqiKR;4>zfQwwW3{~7)V@n1XF!|0GG&=|BP@!(S4 zJC`S)!KEb7yL^NoTW-7&`VVk{B0lvj%bQN!!Dr1Z{e2r~{JwRUf7;qvzRj5vB zr;qw528~OE?r8dXdgBt9QR*%#YN34Bo8S0Ll9^FT(io-7W>T-47^QprazQXk$q}?E zDRq3}2Ts5a8e^-+P}{-ElyS-y4>ifeD232)sy3xI3*n#ASTo`@#XRdIn4+4ld;u() zKXzQcQk@A+MGLI|vH8k0m9bUzCs0*D8KQAlP*pfdd(lnju1I^q3XQI~-c{wnkQEEP zU{<8w-Z1)0(c4(i=ya#r>B^*K>YfYbNNzTo0|u;{P|69-Ndh>#tnRwz#J>c+T_9)S zcsFr&%9Xrdh1V_^oL!+fbKzajoZTm>;wx3ZkX*b;=oc)^T@PMEk(j$TazX}1pYbAc zo4fxuvd^Y)_vF>pOBx>^HtyOL7!4NSH)Y|yoDV$!IKdC(Ora3iA~w@hxxTYl7} z5#F-L$TQ(Bzx)hy$HH57f#6z~+Q+98Z`uAKF2r)|e#kNLmak^$yk!-V%v;VQ4gxSG ztY1!9c+1BTWZx{c|57sZmN&c*hPRvp$V7kp@F~{V|AM!?7PW@(mdprTrC4~&cW^cs zQhQAXt#cu|1pdy8z+-;#1)3*#%>L&YER|gGK#LF_lZw*>xaktXU|cqwc+Anrl`1a5 zuZ73F7%vI?{*sXx6Cr`$HYmIVKAiNu(`ZBbzW6S|@w7JTGi#I|Q>E^2kJ6;>eE{q$d?4^IZ}W zXGH%Sl|+(xvtV7N|C6~M$h^B#f@R(vky2&eUtGW~Za^9{t!a^YUwWB(paJW~8G|+h z^j>IO=AA2u9E~yf_B^g3ROWq~C>4nzh%EC)GeUd>6Odyujv^r_8AzR;%-gPv0R&>v z*`|mj+p5gFi84^UX&~8tVhSN;BG`UPWDt!=wpaYj1RERz%fm{xoAFdM5p3G}4kOvt z2rZUuLyQf{cB5kKzb+M{dOW778eg7(0y@R3u90<6*S8!eiu= z#=wTc+eUUb_aCw|%>v?O2c1dM7>KWhWk5smb$?(&CrqyaVM&Zpsb&%*jQINIzi{Y8 zvJBV(5!o471}xeeN@FZE-^8(HFwq##|Hq&)-a(Fu#+aO{(->DG$u!0}{g|=!=%xR0) zRO%qm7fU`w(*%97x0{*1$gqdd7gU@^-$jHIPQt&^h`u;Jkm!p)@oS+kzQRkwyc>a! zKwl(+p3&)xV5UxA%;*!IzNmt7AM4(v+kXvIjHcUI?;clGmBx*8;0Q-Nx{r#ANs2~=X$D2*2`erhzzYZ}cqy=^GOMY)oTI3K z-~nN?-FClE*J);|nI_9JyNeijnNd+IZz+|N`*f&KXYfKJzwfiw-uvtW2hf_&?|uJx z`y_jxz1M!$v!3;==Xut%p7ku%(in%DRZHV`fadG_wU3^+rE$99{49+_D90_0qtF}e zERA*a67)TWtHILXzEfBl`wZ**hnV}cS;l@#$6mkn{X3XNVJhEP!XuZp_5Dfgc^8%j zWseDHX`~x1jcIiB8;lH#Yr46$5H$WB7N+62{+uxKp>6J$hge& zF@7>5Lnv=xWe_b*C3N%R2`XSPFPf#yeQj?qgvm(e#UbTKEXVuIi)J_&|4L>fU%LMn zsO*^m2+XW##LIbH1Cm+6HGZRnXaMHQVf$0G^?Fs~Q%-#rEl*pcxW<13cdEwsaGyg* zjbDc{293X0xtj;M(^R>g#^)LGc^G{Y5FEzcB7|TU8oz0pGIKcB8|o_e@k^NAXs_{K z;iWEIhaeR2L#rEv|i1&!9s)kma79VMB5o^I9Mf6Fr?32QOEs8n!Dn190Sy~244!R zoJ=1U1KD9Ax<6JvI>VlV2cW9OO{U$@;PGu>lks24Q4sFn)PjJOuO=M(YQFAw@;48q&AnB&0bMw|JOYP`;o(9u^gr$W(WUA*fH|f&eSe zpKWcgxgQ&1@D7~2iZu7>M}3;RUmR*je4n~o`}ufXbH9dLrn#N5OkYED-xkI0{4}@p z4}Z?LCq=#D5%|xAwjZx+;*LAd@}sLVJ%! zfq>e3f>C?ty3Y)EU4Nqmh5yg$?+q}-xcA`;bJ04j! zS*!h{)V}4VE?j@V))=G!O&>u}dZ-gDjP@L)Pfk*3{z$>EOSYJYbcO!gk*+s<_Ol(GSuEt*<5m1fqfJN(b@CTTEpY%egcQ*STf6WEWzFTYB z>+m;-tf6GEShwmyRYKUWupDDmVVRjc29YikH;-mk4|(I(#Y_OPYuO?rU@%e)!_^ z)!{c>>(k-Sy15P?qt@7!4&MiBMc3hunYs@D5H+hh{0NK?uEUc7_&jy^;!WqL!)K#h zr#d{IUV^@N;R@3IKOO!}nEQ-bC=WabKMl7L*Wvdd4g)->?xZChe)(mfU}rk~DA#HK z8y$XE6c^m=PzS?iZchgt{#~jn)4SE-&t1e|cCW+t^4*o1*ZuwoRzv$a_)tXef*Ai7 z=n;WrIqNNYO$MXWtD zmENfiKhF5JGaW9)5)TJ#!3FE^pOd)`{}+7K0T$`QVKjEB!>>9Dq28GeFCBG3I{bRR zZO#w@UURWQhcAvM9X{Xf)8W;4V$k6OM(8>`8n;Y`TL&}E4IRGE%I^Ghc*rOII{eH# zMjc)c2W|%)UN@X;u>&77QT)GHrFWy&Kpyl@w)pAr%RW6n9e(m+=ksX8I29)yzLks<=$Q9nNQZC7Q)yK_{`%?gr}2_>_@R&V)^|AX?0YhnG#!5FKy~(s zd8)sw{C2$2T;<1?b46Xj!D{+VkLF$*4r~&Y+vqhKg?#NB@WdC*{Wtt-7tMW^>^n5) z`%BQARj&~M3dp!fjpnwB$+o)Wh#%0ZtF^Yag5-ck^K-{C8`~dxNz!v~3!eKTY zIS9c3@8T8Dyp96^BLE50mk5|X6jTo19kuh=05o1ryC=K9dq*Xgdjr2S%kDqWoq=2* z04O7u+M3FtoMO+h=Z2tnP_2E$`}6&Xk*E_9O{&GVUlBnlu*~EiEd|$TCqMVYb1M30 zdI(etXcG>%GS!t9M6usyQQ3e;vD*Sgv44)u(Wrn$v46ns4N>f~u>VAUWDNZk`{6H- zV&98mz(3!EyngL=T3(7LG`2kt@G_b&$ExKi<7TARdURAId2}YDG`9wyMc8J$^_WZO zC7L<|S8ferZm0(8BWO9>(y}SUd2P!kI@tM<;xIJ1U&U_ccqyan1mJZ^5iIe&#hzhy z_H}PGg9O>i=6*zu$oyI+q2#i~Yl#Ar=&yJc{&EWJexFgmxbKtiDU%D>0m_bMxzzR^ zSOW(w=Qm1I%!yMBnX%Jx&@#^HYVcAvnHkC`90rCcKT?tD5pqVG`^*ZK2B)II>0(YJ z$`@2#N<4uzpWoqdW!G|+7MpVWp9tl=FO<9BOyc~15y0MSRZgvEJ?qE(pd7YX#fLHl zO?K5a{3|u?`*zAr@;kmjGz4$-D3oZA6+h`TT~CsOXwcEO}56{IZAV*q$@`xZ4F_J_=UgdLl2<0c8B4{6XY zrj@S3LE^~{!8GY+@+-0Ul^IG~AGNK{N#aR0)}Ge3@kZ=3u>ELcWA?_1!I>W%dG(O2=82mikDo{vv> zOfPa(vTbZx7K(42fGqXG`o7>@SC8a|ACML%$1F{-K!V7niYjj652muT!z8w>F-mSO z5s0E~ZPSz!ZQS@HXh=|jg&r0rOrgL_&Z%}`$3uo^7}va5HWJoPA!$D${vgrtdTEKRdLU#2LPjA221^Czver`k!qL7_ zkfm7esvekxx(z8L3e2Wjc@d8pJ&E3I0lxtaJy!y9WfM|F%YU zsbyjteZY2!z+o2h0k(_;A+YW7jsB9o<2uPS*hk6}@1QzvpLtC_Q$}8O%Qx-pGb&ER zA4$e8_+Y>gvdXFk;rOHOc|HR|4jl9se53EhyKbSr7q9+pR;k9By7hJ<2)HIHuh465y`9Aq zpY`?=ezmjS#=*29EMn0fY1Iz|fULJMKI<)7%!w6qV#J&{F=w=xGgiz=5R=D=$w__| z-FL4u?t(?Pf#1QR`vct>Oq78PZPlWCe=sLtD^lun-J0+D6E^T_{msVQIHqjXj8^tj zVtz9jcgx>obwSMT;^3`^qYcL0`~8XC-(3uWn7@m0JV?0(4>`vx)W_2X;3pp6j;oa4 zj35wsicO1jUkNl|pUr*!oJl=!2Pv=UXz^&W)ud7zQHkw)8pU)Nr3Tf{glK&W4z#Tz za+q4g42zf+O@Z1}<)?T7sHhDg`TeEz7->o@;F-m&SP}U!aT1TkIY>$$Elr90&;p+5 znP(BR;>5Jk^vdS!dqS|KC*T9y388OV0zHi8SdGKOXd_ln;A<&uoDr+L+F>xPk4!C28RHBeA`|C3|r%JTV@)(^KP=vcs>j ze#C)0n{em7NM5PGTdBWWN$-qYw2P`>^8)nW%hatHG4HX5U0b;VY*KFJBAL6kne%D~ zMjzkIY41sxGJ|*91Ki+csXuPVs)?Etcp!?;gmisqEgMe3=C?>(69CjG@1e z_QPLpLCiy0NSJ&NSw5tFVAwzi6Dz++h6>r*!MsfOw)S{XTxtB9W^3>0c;?Rg^b(}? z;>zU#j0Jqf^0G)|W|Ro!v{Ng7x0n|z=EaD4abn(RF>kDxmq5xLC+hV31te$Z@N7Xr zL`igaqE58`SC6u<#&!2q63l&G7oEd%8yg#4oWtWTi3lpWC?3Z(*d+4?2{x8ByDbOV zer#~AMHDGe326~xn#G<*d9W}Iq;0+HLp5f^0l&TegsyqG@m2gS-HgBdG@kmuVt<#W z1GrT%ivq-u#wN{7S(7p2bnKPWVnjzH0>tF9J~Z+ihs4ZgxojA_-^aJkE$YWtoO@v% zl=jPsXS`&|PgBCfmbBB+E$uS<&95Fi*nhLXv)y$+N&&U zW(KA5_*DQz$62_tLF6`oMzy*+Wxk5KVEn2w#XLzAlS&w_)QYKbK*(@3?bld4x2cf`@9D5O=o!J@+&rzuaH^qy6KEr$t$ z0)*hk(g5IMt2Ac18r*0G_aeYm;}hGZvPLFIHiMg{+~@->6KL$0MxK6$8ZC%Eh5(}3 zWL_NVV_UQT1}8%4*m$AhkGLT`by%rEI-1FV1#Rw7xF%1txVP9a{`puG-17*A{RZTE z#tjWe_m*gS?av<+!NHZh${#EL(t$t5asGJV6k}=Pk2+8g6k=yH2Qgfc)0NVx60T@O zQoCASq4G@ktF=URtc8u!X-Zy;S_`t-rzLf^ojYKr?bbAn9SE_CyMd4YaYVUz5^$>l z4?JXA>x z8{A1^UnUpWw2h*9qrmWd-vK7Lh5u$PWzzcyJ5vZ#YdQody0ca{%a85=O6}YZKq*LR zb5Pr9RvmqBi1Hj4bp+JxjKITK+S_VYM*YaDq~{j)JdV3y8phT5zM@f+S>i-T$)+ zG2ra~87sBcV1Q`!*LPEa{uH3;UV$!{N`YlKJ>wvmmo)TXdu&H+W!I-F+mXu%EtWw0Wdw>ST2FR!F#0MzP+t)rJ(~3jZ)UsguQSGz`HtPTzSD(bdNSVvAewPJ zDKqHnLZj1Av%YDz7ZfN|7K&J?2pRX-iR)KHflG`RvB9G-1(yBTy3qKlEK}73$cbL_ zgRLqrq{b6jm1V9<>rpi~lvJ;+Dl4o;!QK;#yRIjn3P2-{s|&q>K(pyaB^LTPSnAmH zKpo4PJ11~+=cQ6}k&V=sY4utaVkd5sg5H|jq{IFn3w$7RPu0+Lio_Nr?+kX{D6K#O zPThMFB`q=Yv`7p4l4*SgWTE7pnHIRE+U4&=XCnC~94?IJ+O(|)Xe~QKP0ZP2p|?bC z?d>tZQ{T!3Jz1vC!`NGkLy(q?s~(6GipYgC1lbeI+Db8E7TU-dbrKQ-H5|@1{LJ%! zmXH(Y)?p@wN0QSH%e%S{fq+wJfRtxe6MlwM!cX#eR`(IsH#Ge4o~hg;IP%!X7m+LP zAaZ1xYFWl8V)W+tHbd<0x0iv@!SF>t5(9V07_}c< zU=a9uly*lOrr6WXG{w%kn-yXnrFnS5=htjY^2r{$N9i1H$tHD&V?snQCHMMfcIW3& z`sO8nkJ1^8Tc1biPfG%LlwJj7VwDZ}RGo#LSN2VEG3fIdq(LSs!+3>Y;>n?yI}#|j zPo7X6a76s& zd4cpo!B4Pg6O}&nn){^Y;)%~EH5q|7=d!Ficy9%xzNcdmdew z+hm+J#4&$45Ew=8m~Kj!W+ZH2UMCouI!xz8DJ=o;49l8P_{4u%GeLv)^&dcAzg5iP zNbjlneq{GUPpW<7zLVc!6*GhG41IKxU{D{aB&s3ep_{&7&wbrQRabykm z@7za}@Nsb-J~nW1I>F*DpR`kiAanVAbt`xIL{rb~^`6s$+PAV>rcxtOnug2Ys3?%S zGY%$w2j4Gv{&!yVNeEc>UQ!)P<0{&mqwV$1*p@JpvkxZLZA&al{d2&At$xl>KH~TE z2|jQpNDC4Id2$}tKgm<7*uBA!f~y=BNKlBovubx zmrB`j_7m`-1e;u8bL(N3dwWX@Ep?$m^(k!D*OFwh=wHwxE0*&Ty7bc!!$*i2F>u2A zEwkqThq~Ob(wzDj2=+)M{S|+Cl#vbj((XkwG+DrHQb8N7bZ=_616`{1g z8jANwwl?kFaBT02r@}nqZynI_cmR@S==b)+%Lw1gS*X+V54>b^V~Q2L@+6xx&;<2e zJjWcAPh6M$z@Ae$m(`o0(itm)pmSkQObn>$UYzTJ={jwk`<_o`2+aKq4Cd+zd#k{Y zbX2h%A#i5orsZ%eHm>+9Ugu3yO85iKAHh;dU8*{6Dxy?>jo*=5{JdUXH#Om2U){&i zJ}Hx$kTXqr*K)tXWs8=eg^T%?JEE?@P(#+XxWE%$`Kdjm zd;K#ufhB^JzSpxF3|J!83LcXYLdAQyVP1%d7K;%}%1$ArFf{}=Ky<+~PX@vg^IpPo z*S}O&a^BBY3==xT@MtF(K6qU_3@f65n7=zB98UteBlyfmu5?3=$Pdk=zfX1CSM)B$4+t#rbd3@Q@s&DqySr`0l1K>| zfwP$Vstg5$^)~xi*Rmw<6=iL7Fw&9-`Fr)arJ~zVAThVmH4~n%vDqe9Hf@thBZnOj zx0G+i$jpTIHO=fD1gt2PN1ig7I|UFHdl?R+g9DnqX~w9GQ1XT`u`$WrY7!p$J*3K7 zni_3{m!RDV5PUVj;GvldDEEd#X^HhSlv&IvV?my>8A>L1&@eYnvcZir1*a^5zsZ^` zgdQgEvQ>#jVQ)Xos?Q9AsLNr`$|0~(ka>7EyGvq%N?2X})Vh9T@(Oj0o}qlhWfv=i zx}r6g(RUL9)b%b3x34QwuPdf#Gk5%C!;A~ew`|Iu365$vxG*4tly|X{gL|pk7RSMv zl*NPv@@tUyArq!t7cdJtfq9z&W&#{hXOY2(NXU+!9>RksSnL{kW3g_r0aF7%2amo& z!L_J*{xrFFu$o)41hE=YdX)S0iY02=Xs@8VFy@0=kp1Kdnj+7EGmb^aVg6B>fu(Tj z#BlmBswy?w|E9&nDKSAL7n<0#;ew0J~ z=vl4)u=AL3HhSg7ox7pPL>%m^QqtyP!FTZ1&WpNarZpf%I1KGPiZ$!qiE)wWr=Tt z$LE)jkHDBgLOBT*3Ysy)?Xx(}5Hu6z3!3RmQ_Embje=%Ww~v1G3dPL;Ffyy*RNBP} zow{2#VKfJHx8P$Y5AFlov6V5n715*T46envG?lF)Z!87AYyk((C~(j30adK`_V_Fu z&rPRN0W7f~qNt{Vf(J?>nG;L(8}%gPcO1$mnQFz7C{rtw4EM8IVJ&v7^+QKzwYCt? zwy!mYYAqRVs1hhFWVP0zJZklZ#Uq0=o{A--O|5*S>hVQb8AN-samXRiE3k_DI`m(F z_@c1Y;6Xoc&_g2(GvBlmt?&jV;Xq27=hDn*Hl7&fy#G3h0{kqNX54~$vfGL|62X+* zuN`K0e%_!xYy7=IcQqTmK~G_mtQH+hQ$>pLRh|T7s{0Lms?N$T#2d8M)IOX@n`7!( z*+Ss9QXB-H`*WWA+ULlSSM~a&oj-?)6Jq;Yff$(L^Ao{Ea|j zKQ(iKJpuO?=I?~X7(j=mT#)bCh<(THzglekY7V}l^=35m^f6xDYJ9`L{&scXc_kpS z*1=B^jS;2Pp&Xx4nqdI6n^8VbFVUI?T=|SrjmN`UH$P>{(Zm)Clul-1$YaSPUZ*K` zg{iN0)3DtshQE zoSZOCN#zP!TfZKQ#r=NT)S zxT?J@Uwnx{mM?1}S?-+TljUph#30KD|D?hp8YQ-!6C~J?PGU-vOG-mm*tCo zIj0$B7}eY1KkgvQxBbYa;o&M>8lIOd2j`)4VB~c?SL?s6=g_a*!QW2StI|l9^F!d4 zQu3*4F6Y;MWt8)mz-wl3Sj(%ZIQ7Nx|8P0~bu-ENUgXYm!9!R+Q<(*{+f4K~0T#kE1!UeH<##1`v`a1YT-@J%hQ z25m5z%?{^a@wlR8X_j0WQmV3f{sx$p*q&}B$C$oN{V@-?xbiYy$V`UkU+{#pxk8e>Zd2r8mXeNb;?P#pyI6u}}qr|59m!q|ZyIFl&2(n@!T zWM1puJlU7o%-e(O?s_VS_8zR@Lx9D_>M_nXXwE{S)oQ%vv|2-1+x%&D2fYLiPjMLN z3ysdP^li5O?WUVMe0#b2?Ja@7jnKbccx#7my-3eb^$zRsZ35N1k6zbN<9>?j@a(q;dyJ4XGR#tX6jt;Z8X|4yZDLI2){tFM1`sDb-8pFzEgpz8hmpbnSy z?^%WSuZ7@t)xXE6AV|>a?y{YU#a*^@`}fq&0$zx<^9Y_8+IcTkgLW3;>T9PCHE=s! z3~Dh!)!SLA!)5L4r?xYi;C9u{Hlh#O*}v;{PAlrNo!|Y7+PRn)V(mPICx&*eq-xO4 zhjI0_Q->P3oic;^1VPo?`JxV&wet#s3sxRWaJy>fAS#Gg{|V&p7>9J5vZQ+L=voyK3iER1ob< zEz{+aL9Vbpb*D?U@tt(4gZ$n}FHunl|K9K|ZF5pS*1z3*bqCq-nEGu!u3gB6uw`A+ z_^I!R##it{jK+V(69X?@M%`) zxAQ(7E^B8CH5=_Tch}DEs36*Tszht2rk{{fCP-O}$6QYoWpv<$N_vS(KGMHsv%>av zKaS^px#JObsDAXa2btu6Ul&n zBd%TY!e>+vG}=?#o<`9`qt$rKX>jlO~rgC=*zM|U?8jn48y zj7H1x#6Y7^LJ>5Iptk6Iq(co%qrMF4VCo*7MwjSt8IAr%Vk zW>=4pBgG(}#uL4xPz9%V__hx8KDnIJ`*IzRfb_l_rf3)RK6RMrUCj$IdiOfwNAD+z zOrZCxxcca=Lk&#tml@R8393%-b$G`6kJq?f29ME^D*jZ&Rm(rC}uM5DR95TnsCJTdU(LLwPxREn#QMmp5MG%99L zD+sDiqla|3j7Ap`T%aFIaJ!;W7!?GKhM>LvG-5FndzWf7N;%MhMt`N3sN@K)UFf-C zi@K!ITZf27DZCJ)Q7xVrXp}|W4;tNytB*!H)W9^F#h~6!P<0yJr^975Y9W#VeKW!B zibmg2LD1+_q1MhkOnlviW<+1(JWZPvQQc`oNOEF^x#&=R5(^J0;4@7=_owL_oJ^Q^ zW42E}KDO#{I*d!}mVyzj*_Lf)Z_@2Mi;ihQaDxat?pB2~ zVBE^1!wP7(O{T@Z-IXJ+dSZdv8O6KMcA6T#Xq+03IEcF|{0IxzD!<6%5ZF))P9FbE8Pk^-f|SK;vrxLU|N!bY0BN zHi-o!=2$D5v}m(w_2=5s6PKHdp3)+>Ant(I^@JbbOj^SFN}Z1SW~H6bKB?DlqWyD= zjkNEijzi(UsgCQvOKd9)+qx7G2WuMXZV8nf_wC&R|H z1*F6x!Vi?FT-Y5Y>hJ5464SpRO8jxYk0<8giGdO)i7=pq2{m@0#2fE-q{LD5?*;J0 z-2kD?YwDH~*G>#fiF*h?P@;H2ca-?#-YzLI5vL={tDbq#M~MPFF;K!ogaIW^;o5-` zFRkxLiA@(qiF|-ip7nN1i7$EvrogVCdx;@Y7{cf8xNN2gy{k4gZc zyw?3FzXoSJ1d@019^RubKcMw!XO#GcZ(y;=fo--28i*2~aG}U3u@X-Vl;}-0ff7S- z?Ldjm>pD{6>Il3aqU3uymvZMTcMp(=dWk`1B6o8J>QK& z^07dCH-PX1wMP;)n3dBBwMWxd;9pPe%KOfT+CA>-lG=~%AZmYek56v@8BYw*sJ-m1j?{kX!l->cKqztDQ`@~EFtzQ3 zA9y?So^Gg}{omh2?Z3`DA8L>MU6<5ezn!SvL))DQvTnl@1GRIB_;`E=t{tdt{d-4h z=Uo`Jx4sE#f8V{_PJA;kwYUF+Q~Su>-BA16*55?!8wq~5y#3K_T~a$^8&UfyE^Zia z--;&&Y9AxwgWCVWwF9+ZK*ogjo(=1TQTrBvQ2x+8wTC0iYaqFuPxyhi7tGbDo$nD} zKG)`(JW><`k3I+fa_P`b2>39`$!s^Gg>6VQ%gGU94*risx>GqBIkWJ8jF=q7l4l`p zRvhMbQ~RllfNfem&_4whu&TPqOg@u5UR@_aNPbC)%_at;zR12#cB8<tn=P-}sR>V{>*BE*i3qHtSPi%&f|O(R z#9%GF5c6ZU;)#L5R&B-4D4c_gYy3gEg4F^FMtuMz_myp?HuwT8l>1SPcCY#hp4@5%pdHZkhV@|$OVt_%8jipdX_B6Z>{`8@TZkiG*un?W-*AmT z=xL@sPN@-$5X@JrOhE3HYNXOJv+d^VOy&Cp$1XTG`|Fv~%wwocLr@M|8Qg{AgM>Ak z@I+2Zq9C;vIlqzoDeCD_rH9+vq$C?EV5!!q&7kr-w6UQH+gXu_%!WKBeH~9zAL9=a zPFTbvJfNEG7yc>?fo`=ejz*KSm*imU*Smg)d>jXb@@OD$sA>SJ0+9j8L=ayhi1@=G zqF(S65kN-xHMXB&!$+%7ei%HGmNoV__Q?<{(B9m|i<;@HJlhXr^)fig6l zX;`x1?2Y#h^hR*^^wXbXP$zhYc`x=3@nVIJF2AT7-cWBae_;TbLLk8li*Y3z zQTq?lkI(TP6vG<7RW5E81!T^JK!v=_&QVeavA9xqoyAT^Fbd=ASsG}{tkO2$oYUsA zDcfFvX2X#PJ!mhJjn)!1=ycU3FH8SRduOthXfzB(vF^|haHe7>l1(XRP$Khd2?~#1 z_1FP^7H`_QF!GJHqVIz_RK z#xBOQoWGAm$uk8Y|8gtIO$8G*IW3YY6O8mrh`x1EMBHdOQxP0nq3WHT%7uORv$l&*Dmb>rZjL72rj*0vKzUjw4Br)J{k_!~FuviTvQ8`gBl{ zlxmcm6)ERMA!iiZf<+>aa&}{p#)ZXCVmt$XeTy#>U5Zft3%-?8P1tl-?`S4K!umX$ zxT`^V+a%^Tm2ZL z_egn>!uSS!{f?Jr&@&Zxkt+nx&~px`IuAtst4ad>BjJ3a!QixxOWI14+6F< zU#^-?XEQLY*yx%|7DcX2nrKd(XmMI4*f;JPvpCU=9aO5Wn}7egHXfWEF4jmUe0177 zkoFD6Q`S0KQNvDalRV$z`uAEiv^fzQ{dOSn7KF1mOl>t3ON`04uH;9n^|$i=`T^k`#;BQ-{chJg};ofJN2de`(I37iVIjk^nCi7b}r~E_ZTQxF|gA@ zLnvzt^lT%LLR++-4fxrTW+T=D3xc(-P;nW-pz*;A3{=10g~K~=3vb(QTz$g8A7X5G z7!or-;s=1sk$~f?k;a!Dr6GdDAc0fKPGd|>U>ZpR@9|U2*AwLLOtc|rv}!E*y&r`4 z^ywrjr>)_XHT?nH#cZTGTp+RK7*zc%lqT&{rG2hq@jmVGH>69C!}eNkC0SL+_YzZ5 z!s2)35^h`3Z~}y1R0u<%VzaKo>cQ z38*TVNshT;W>D8Xj<-_rK3`+y{HImIFEh3?{bRJV(n$DQ@Wep)2dKb9M#A5KCyXUP zh-~)ONcbpv%LvcH3I0Nq0z3gG#bwB&Ilxte=RyK$WP_>j4t?m;J6}KTXe2A27UT3PVedmc${G=wT}@h zrVt0ZuoInTMKoCe?>2%)G(gd!He4+zf*f>tY}O$q;rv<)NDxYyT+QM@G0!6B?h+^B zS>IqW#pj9c43=huBY>)C*gXVIOYkuwyg|+z)P(3e7NPE82weU8n*k9ee;t zWgu>9_(5J^T4##hCpZ>ZL{~F<#*t%&<$_U#F58LJ+rs)eHt}%7Pisx(wSr?wg#Al# zmyl8iU4OM$e3XiqT54hW92FcBu_4Z!4HLUr2}4W8Gg9$Um_*zXH7~V!&Gr+E!X=?% zt9aV=qBqxmLTnaNHUZQn$$%j^rZ52bK1ZpW4wlrvEe!QuZ2xl6U~I8Od_l!lp@Li@ zB*^UE0iwyooP~IEH?vPYL-TbVLA~GCdv$<<2@nQ_9pfpVbiuK}62(^I&r7q2a z)K@l52Rwt97znA9tT86s8(;tq=)g z#X_@~Z4phH2OP{cEZN+z1Ev@JF(b7#=*CmYty*+hi!&4a=g)(;i;H+VSJv(RMc zO>!Pl8foeKt$neyb?}m~ zH2aQ)yD4i!!7bd+#dd4SX;xUQIXEwZ%@;;;K0;WMGm6cYdWl<*D7Ip&>y)<_Ov+@7 z-6GaFPq~@-rq3KGN<>&cSlrj3ykml-E8in6Fbm^x3Ou-Guy~~5=kh&*W2xDG&UFup zCZj*so1#xtAt|wH6T?Wxr}!?{Chn1^p>fkJrNzxbt|*w<`OOtAe1AGOm|ZbsEdR&5 zaIFbu<2?|&pm*NXHkYD2Jr%@f^Rrz0sfCw8=E&)$7Dp2Rrela%^Rn~qg{fl8Q>N!o z$!PFgPu24Eju6&|i8T!#AhHWQXqMAV z*Aa4_E#)=pSK|I0w5Lhg!muRR=B1(D-uBjoJ*CCwiWb)fZ!amdVk0Va{S|`V)vU9n zK1*sZRhlVhYnM`mhJ!(>*pZY5A9OBNI*z56vbz{dnRt1AV~I-ASSrJnk0oY7Q;R@p z8t#;zBpNAvn7AJwV0?^D+mVs!XRh`$x^ms5ahy3o+RcTr5Q6c3Fdl^qaYMUUT&nE zLX%e9U=#|D6bm2tq-H2})bm;D&<90fXn@Kfg-98=ynXCP)Zgwm2~!N#HfOjPhpqG; zI*9>Df9WBg6%v}+2V&BiVv&Lv`f?KH%89N+&bgqius+Ks?xUd%>@cniBJ8!|CLv`H z{I`k7r~^q#s5Vmf7J{aQmSp-3I%iRTPDT2k)0vul3MY&lkxPepd)f2RDEhIepL>}( z$ax9TF^&dwl$YF0+030|QLe&fWNqrlNbTNa_N0K9HAys@+&A3a&(E1r4on9BU}BjD z{lzAk5I*YsL^VEdqV{8+Y4F9;-GVsoD7|y zpodbZU#3COW{Z2ooyu%#*ctHvXMFS0Fzeeex+PapTNIG zBPDEUAI~vVVRtnPD-RPpIgZ*>q6B$2?y(yjt{Ye^P}?=eSAj$m=IUawY8zK!peiV0pf{-_)fYHhncoZs2~?U*;Md}dHciE64(#P z(dg|#0=cgyJPlTX!P1IFqm`8tQEg|I)>U{(tePH0Is)qqeUZw!3wvuM0fUan$CY#8 zh1pvznSS<`&zFVK1W54RLfHt?4D-lskfS4aAzfC*?vlQ!YHCilaxK-$k}OFAGFoCA z3oOzs3mx5tJt{auCd(>Lv0&Vh4=Yr+=*T_A*B0k+AEuNUL5E9N#Vi}TYfxD$=#;c* zlx(Im2iTtV%n6_img+)fYn6x^vdl78AJeRw9Rf2JGv^>>6w1MCQ~7=hrZAY|(FiTe zz_*o`J;OG~!`Q662)CplrOFZfjui{Wr@)Kv-u@ZikUiUjJ=D)vW|6?qh4amMaG#4i zK?4!hf(G_x=MrIkhK&nG$U%~gGb2d(oyIg(+zBaDln~c;C(jo%aP)Q*FFi2c-BilHynyUB;yNR`EFIlxAtF6@~#Q04~o1 znF?$)vp^d$9fb*T2HciX12H^Gp2+1T)4C)sbKt30iqkL_;DygrG>IANy~)0F;SKhk z;uayL9$#LP!sk^)scdF{XV6E+F9zGsEF3^`9WCq4OmU&&0Z2xOLvD`q8L4iPNBtje zb*1B1w0bIi^gn2IdzpFxv*DQ;e$rX9aH5zGY!-1>t_9HxvbgXiNVIS<#f+4g6D`ur zDEp-7k^xeZ#k8y5Tm{YwN`}RnI4Qcw3x+i9f-6V-QhD|TBxS*#h$Nf)G)zGg^YDbc z+loM!NURWJ!8ho$419|rB9)$d3{^OeqJsQJFF3oop1=lqD95IFPP!$EJS$1CNur54 zRsYjedU?uSlz22qsQ4Fwnw+=`-Vw=KjXbhFg-SA@rJxWjo0Co3B$Zc_Ib_<^*2q5F z8-l#|=0wk*P)vJpB{ZWs5ePsz26-Mfyy;(!=b6n_CU3D?*mY0*Mw%a)#ALH~rUoH} ztUk=+%~E!(eVg+ISgy~CUjcK<`KV(4G($`>hw;x(d9P5v7Ak_k=^QLJJ^?cFd|NOP zMcqjjRvKWE-SycxFf(ydq_Fxh><7&*U~9Yes?})?K^`h7nU_*X^Ozq#f;wr@O}lFM z;ULMy_;)q_&Bs6R0sJM531&hFR%|WoOCcYWZg_-ju6EPhE;@!gQmn=!xEe~ zwS*8ZsSKBqgbVDy;q+CEWDfQA2Xr>5V_}l?gFNrUU|ZA!0pQ)+heJjh(JesGy(!yX zE3AH+aVT@NdzJ(tUn0xON9zg7Jp3dhDta%E;G_QO@*n7NFa8O`k{Bz2SMxpV;6ov9 z0@tdn|1$HcAckw+%~}kXyGh&W175~FAtM%fvu9#9JY8NjhL*cvvB||-)D^6qz=J&F z*t-~{-2V!B#&dWf7TQ;aCuIM@n@mKtzKWk1X&2$j<&=~WB zPZQ|pqnAAd?!?M@=1~l6F4s0?i(g7hqe#A~D`PJ5m=s-qI!HX>9HBy;KiXG-^euT+ zpl?IsFh7V3!Bk-UprfQz#+8M;hJi7Z5S;949z>|3e@QHVrCbFR#Is^(s+4&&aTWx~ zG6)>sVl=g5>L0laeeO+Ma&XO1*7P@`2L1)jB)2xKcL+Myq0&N25KeN0NnU7C{)NnP z_IjcGWt1YHY?_tQXZ}#h&6k_p)dla3?MSdqvCERr2^%VKt|R z)hKvx31jcEGB!Y5Vw2PQYcE3k;|1aZ(rxGjEQ`Un^s#$cB$C253TsZIhWM7x$oma% zyHxd!OhRp+T;;hD{F=E@E`57EZXBDXiBayN4B0zdVmQBJ;MOBQt`(nF)$LoMA(OEn`nM4S6f%S0*{}?6^WPIGmAT0Y-ZMQCA4g8yq!%ycaX* z*irKl`a(}@&YAD2OStBmYeZ|XX(u`c2F)R~F>(5Sn|MxG9ZTJl`)*2NcC@gXtQD%d z7qq{W|FM`lTACCkO^YT@(zK!1FucEm0}6JYlo~}QS!yiJsZyiKzjO`udLv|%+!J8- zv*1VWg8q=J8cxjUyjkrKCF&8zgIQ(J~ z`xso+QfiF-v{1eVgoP;3RhGCs##^k3pHzllGuZ^dEFG8~m2ey_Fl&^SSaA?HG#hG< zA=7v|5E&0dCdUwtK!NH83P%YAiZg+Kmt(?s?EsEAmeOM&js(Bz=fp^^4aAz$&VZK9 zWt&ONvMCK1PcGYV15-{`xvVF@!$Glc(j7l91j$B&l-jW*sNpXso_6Ag7e0CFmU(oK z*g!rqwdMPT;3leY75j|Egz=aj+J$UJ)Dw8>2E2oJdxcpFV>CqZJLnM&7ToVVNw{K` zr)CFX3JQiH>0z2VP{w>7r$=va4q|eYloJym`kRg{x$|)dHV8qI-#FpjLdt+lIpsa% z$(QF?G2r<@!d4t(QJ(~vTzWGNaGVweOzY4Z%~8WCFc%_IJD6u2V$KNRXDQ`AkAKVe zI8cBv&G+07{?%<#uIJ!oRgGV)mWx zZU&pv_21WFC}0h1Y>?|9iLtUh*JwQ$!|%|8TjTa&0Wt9+*k|OFYZ)y@F&BNmoGMj3lDOd+fzX=vtj)^r!vlDG+GAmUWNT1AI;}i{>3* zrm@m&bHzbS{G1odscjYe&@0YJI8)9n90)mk`qW9W0VTaS3!~YaCe{o;BL(C9)QT2Z z2F~kf-bY<^C9DVgX=hZ$0cSt^zJ<2<-S`f(#U@OuyurhF;rxeidx^!h+Y?E~pE-t9 zzj6)m0#lV(xCaplaY7++P6{Ot55#6)!Y{>|G*@_FW5vO_f_Kvi;a2>cz44@An`mp>Cg23Wg@927&vcyEF<(IWPd@n@k$v~D2B3POI8%nS{u00Q;a2t?m+k;27< zvNlAe)UgDsYHS=!MQKg|iO}0)aaBhcTS?^h_G~u(qv4calMA}iucVmx7U{$FZj7qp zL$HkHaf{tWr%7{Off9%ff~j2G>~Vwsr4*ZAu^o3(_sVsP2lW{19~cULv3c;#F|kP$9pZ9aELXdNACBPC^cqv2*q%D@T}+zjS8@1Sb@$h1|N zuH;?nzpM@_~(RZc>EAQ5vHT9w z#!7dF^Q9iUn#l&PBNCqD+Mtj8S$iCMjRedu;zf3sqe9onv0s4hx!s+d+gtrwP6bA`oBSF>& zl%eZSaav1^wWL{qDT3k%|9_wa)}T&fLLCYX*GFr^yX;H74SZFeX{0&aC-*64^*F8w zhb+R7tf+BX0S*4Pb5~&;o`BAtZMGj?+?NUAh!}+yIhY?ya97iJ5H`J;q~OsOdQdVL zvN9A|4oGxa=L&gSAhfm!Gd4nK)rem~BBj{4NLmH__UAY5cQk$t!`Puv42g4y`*g5) zcHz(r;gc<8#~Z1ln&I&qllC+sE(?vlosc_=NY|8R`(a__9PqK`v;ut$ZM+4+9gtaA zJf2t91~5s2dlZ;XHq$CIvrJwBD4JUK5kpC!kvpf1pqH58HtSPwE~A1;_IlR|EEdsX z;CJ{f7g*qtlV`M5oP{xtbI49FyaEF56c*Y>NWma~c*REXOU{JX09rkrKLx`51%HM^ zOIR@F7$`=qgi8n~t9vT(7^WfZ?SfOUq2e5XJFNg3t^y4n-kgX?gbesDhq%YNgT!r! zO4uXyhZ7A)p&_BQ#fdN$MI1z+zk-Pwu~O!rliI5Gv*y=n2(D(=DZB42V)EyF*4YfxyhRy;p*E?uD4Pc5)1a%!P>v55S8Xy1&4NiY&b?+DQskVvC@mIqG<#5jVayi#r_WL$!f-zH^!2gWJBtE@I*Kw zsz5vznV)L0Mpl7wiY3qjA&N>)q`8vNV^3iO~%BO&NgLU3$kWV z1$=S!2(c2%$vxeYHq<0k5MP#-pxIfn`@Sm~so_Xk3yRSU`YF8CXV5VZV~*^8low(a z(pWqp^I8qAu6=|nsRmpT#1th-LB;4QxO4oWYi=q(=yeYf^w=?KZv*24c*3DG3+yfx z`XXF`yUjIRN{jGf-V#AO87M4_yD!_aaYh>typ$G4Kr$9$Le;U1IxT4X%G`nqP3N>hw%h)SGS59bPJ&a0-x_>rOw{8u!{|b$|K;rQ`8FUvB8;=*^3i$C` zt1^04WxxYx6F0#=nv%efq4a0uXfM4zTu?O|rZaHzEB&^)Dmxs<|GF^UgJ(Amy*v|B*N&9XdU=m~a}gUUe2sxH9z}rB>o;HF*V}vq zF) z8|Z_8T0Z>PxI&|9s7FEZFJcXpHtb4ffesj2lk}lQyIjycm90%ZvD(cdD znzTvOPnUC_u35B*88n9%Lp|iFq!EQtguH=11YD&mlT*B#Ui%N#RC~`+s%!%(&fy8K zosDgg`U{Vr!j+98SkS%}A``yeLf6xQDiB!(?`a$WNYCpPF#d{FE4YqVfUeFlC+1j+ z2TJiWQV7n%$_Fg{ClN(kLG}hl6gwMi)(SMP-w2hu&u2sBs0@f4h`#oPv+Aewa*Vx) z>eX){>b_3I1}D6aE5>S^cP{arMVe-0wmJl@8k?#QrGFV|`GQEad|sm^fWCt#oR*B) zZ&d4=#OeaI+On-ME1`ke=2}AMzzFC;^u!hn>gf_EXH#4BA|$dkgDvJf(=12<2M=Ts%whc4?7SVeXQs5aIE3la!TIJt4Yk zO0Wojob-YVvp8!Rc8Hv@@MD2#p{?R&>VgyuHYv|YAUYD#B2%`fiKh526#a<3CjGHxN06mx zRD$>=DQheum$W!T?zH-vJ^>!Jhag^CXu%({Z$fj93J^4HvdsYzH zW|P*WIWeqjuyC&+vX(sSa}p{J!pd|`kXDQZK_*N_2eviHYqHABK@`H+hw@*RP#hHx z@TKTQC~CI#1oDa61hq}QK0Ov)Q|pbF)}-)C_~&WNd>M~jFSOeTN?rYmQUeTUpHRD= ze+=!zjt)Lmg=AySgGxMwtFE3H<&-E5^OA{+hHH{(ixFlwBB19jX{(;nu z)Ya1vHwLq>fvjR?_D!J{-^U zc=9Q$_Az=lmiEeFt#FC8=KEl8KlOK#G{;)=U9k5Cv}J`QsAL{*$h2XYPdP)acotkV zJ^o;-6s9KYu&ZxU6X#fpJl?VK2ibRHbc~Y3I@4kHU6l5niffXoj(z1t*BnOBnlGG5 zUX?M74OSd$emTE0%d0M?JMPk;1!HC7aAF>tFf8a2H0XBx)2`Y*MTpX~pYZP-{%QSA z#x2b!*~X7~G=_5F<}!;Xy`kcEsi)Us&#@K%N18xeH2!Tr>2x49h5bzNP4YC_=bnud zO~(QnO+L<#3&DfiT_5>#pWhBrwwtB21m2UfSAk;S9O5Ia-x=M)kfNP<4SPx=G+kF{~V$ z13r%@T%Iun6kEZ?({;GQHwA)~w)Pb&zZ*bCMQzB(l_C~I+m1;?kvg1X2yEb`0ES-x zS77M5uD<~*7#%uRy3Y4Qsbyt*l)`nCn8oo#IY;S_xEfH()=^64D1}lgWns-&JV)2c zQC|>d*zr=jy|gM{sriBSU}5Lb4z{*|f!aS31+n?z%nB(IyZ)AhRrR4mtVfrfVF$tX z6OUIrlq$>znyQkqKOEzQ`C6>xgsEKt5qUzasTy3h6uXFP6kAntaE&*zYF0>9j=5?< z4{;ZJ7FzQ|WK~WW1T`Wr5DA}HXcks4g>~S01S=mmvWgg=K>$Bo#?JqwWib4TA@pi|tN{X^7nYk z-`nBZr}zJ)_v**`%W?cA##1f-+<&;;tbThCFIhJUm6P$PeOGxV;Gz2d{y^{N;-RE+ z<_rC>V61Jy7I!F*5~pJ7WUlH{^?*s-R`Y|cDlfRk6IqoNQk7<|n%e`%yn1X^S)nyb zWK~)iR-?q@Iv*9S_hbT~20WR7w=fQcn{cO+ydUp^s=})7HgPCZf(c4`2s|6&nKaIg z^UX#7^n@9pw4%92D3=r62}L%EC+>n9j&qj}#4gWfBB9#K4edY>e{=xxO$jlm5k#2* zgo{8JMruU^wFM{OvLo$=ipSBb0nWf(4WPa=aHET;3Lm-FdWIUR=*O#|WloT5hcZIL z^4InSoxP`#;62>tj zCXs43P_A|l)l3HghH;R zB@k8ry41hPwVu}v@Sf-Jbf()%4Pm2elkn;`lW8mBh2m@CccG8CO96xJ{dWCS$qB8(L3$YI_5`DgfT6dxjGU z+b(e0M#yuVY}n`z7HzJw&`In}0gKH`Y}J`c6`XWURT(CnyY8jA3P~U+;1oja1auHn zf>)mm$z6wi9O?i>?_CUhFe!9dAUIpO@i3SK=YFH{fXVALpop)C zxcGH!G3Q}ISXjM;jFqFkd`R!3`}47{b`r^drG0e=;qaU6t9S#-m+B~YGfE!c;Y0ZX zM#*~!;yj;G@_e|DjE~U0vG1#nl|(SC>?gpEui3O4eJiD((ZGRaET#;3}70mdh1Au!&nPFSsMY_jDK z50fIPSj3%aE_%iDBobU`L!g@OL574c;3o@$(N1eV*s#Zp_G6qJV1(S}(ru+xx!)sX zK*uc?BehH1zBkGa9XAWd4SUUq-!Yxe8I1reYF`hMJ~1k7A$yJm{C>+K>TKQ^VKoI7 zc|N!J8uS6(vwrP{v`?aAfj%OLpq+bEg{FBgX20`AvpC~dalk7J{WyTj6rBSe5AzYMitddAp|kngsck5z z%99HioRPpptbzOkLxRo_fPL7c36k!=3+NRE7eHS;={bjRF^w-z(Ea&fMVq<(u{tl& zyb@KPk7(Y2KJ|&_$p(Z~(LBL`^o=^w-N?Cw4oDyOo`*H?&-p~J0CV1U*1&tHUL)k| zbk7Lc&2;=@LjG5(iv&XKH>rzY1IjIsL0$FzcFlwE<7OS@IIvc)R9z{vF&sjoIo0H@ z4F=1RK!s$ieh`?}ipQaW<%sLzx6!0NOx#bCdR_)*%v>sit(@=~ki(#8jpt6nNHwo! zw!_X(RKi-t8YVX|m3yg8OtitlG2e`cb*#2R#9hus9Db376Q~E_5j;Btq%gpLxl`PgPQD1j( z7x+r-1pswYPc7&$=`X@V_5HE{@6p@`eI=v-B|PPLsJeJy%)0KsQ1X zWLSDe`r48b02APPy${#x0+*o39IQsMgmtt*o%^QRrjGS&^?e%%x`$F5tCUI&4127v zL{8umX?UzwsZ9DkH5I=s9;#1!oPfs_2MhZ^$_uL=0bhCkjz8_~Ts_?!SvDpO60=a! zAwWC`A=Z!$3WUlI&nbecdgeCX$Elvo(s^i4-@sF&Y2n^(Cezz2)_AXnhwJ8`pd|xI z!C{MlwZ>!S6C2M;f(vuR8>PYd9fMAvGL7D!*TN^^D2XR?|8x{z&|GHlRr^jYD2K#zW#3LykD@%dhUmmtB}0?`!XM zv%~wI*X&y$^gaL=9;#^T$<}?m7`hpdVQcWO0skT(rIz5|Ui`ZVI^ZA}*7z?A&z{7; zGx&EiY=uAIUlaZjx7-9PW;g!b4J+~&{CgXA?VT|8Pvf5pldCrT+l6V!64+WMn2S&0 zAGz@w@$WJ60KxV3DQJH+aGIk2L%gs4Y%kug!S9o}4u*$_?o)83GV~37I|si@@K0N3 zn5^Jo5G9D@XS3fOtUBfOb8DYQ3w2NEsr$(7TFnbF+1l&(pcj}y4HkOxe*A>UeHB;e z1p9n5tu_0gYFWgeF+zQrL4Dl-^*ub{P}#a=k_t78L#_EfB!s0&nXE1IvONZIR0>|$ z@fOx~`bu5i#i&ITYB?@)mPIPCjBFK; z)U*YcwITF+*k_pM-Mpk{L#us{ka7Td-zQ@YoYr4pYsuJtJPzyH>!2l(u7nN;6fN#_ z3pvf%8XIM1#5PO>(b~5lB~tb;Be$K}?f&)`(WMYO*b68y3m*lP)C(Hax|Mr!N2 z^ZEEr6ebcp%|D{Cnny9@3(T<25w;uy;|nT$3zj>ZrR%WVnMcc=ECbrVfmV;iY+G@# zxTV0C8@fGrJpbSJ+=26TeUj|TyQv>H@;Vmf#t2B9)NlmR%yMaqm7(__UcqgAZ=wt+o$Fik+SYV#42bon zQ&MU)<-O<~0-ED-+}CYwrh24~!!}2$FcLfe*KCD>f}Jp#ha~aaY!C>0Lo=eVV^oe< zU-K<85cNgSv%9EoREX;q$=MgA*(W8e&2pbZVv8btO1m=OT{{BSjj0aND9*m4DQGH* ztlxc*QlpTzZf0aizP09D$UQBTy+Ddumw0R62%+L8lrfzXYdwF*FqOvR!;Q|%5f~!Y zjw--rM2oaIGQ?%AX$`sO;NR#wVx0hhfT7xbp9$rA}{v$UvhG=eSO zq%WO)v9&`eUjQQt^Wsry<301~79r6yZECsC4CO)y30@91mImo>h7x^!C2Vx7_S@4a z(p^)Bp=Q?97$B*ASau#C_R&7H8a}-DJU(RIbPiiGz$`zZW7HN;r}h+qGRR+X7m>r& zJZi~!&z{(nZmH`_u=ALDpTR{!weolAi(3Ktpiur16$9i&<2@hZ zR;@dQo~kgB(U@FAqq4?(rqk`@zOhtAa+DgRjg$n2ej38b&HD5AzAx|d|8f#x-~;q~ z{8VeU7`}gq?s;p-_E$^%f9$;pd=y362RxGuFu=$J7&U6-(72*OC5Q_{5W_J^$M&$>dK<)kpL1vgow&5M&;ERC%OSNoHF14U)9~y zolFA0zPs=DeZSYAp_A&TtDbt!s;8=+`q_dTi**Ps4)L`K!6c?7WpSWI{BKjlG3#!)>b8CkM$#qg8Wq^TBKmKZk zd)7qCTQVdLcR7C@=TT=Hg05QN9*M&}%wOY}x0eLeF$bPRzJiD0lKUa^hdXo`bc>M` zjEO31k|H1R*W>i`3HEd_s6pZk2I+7}9ojO^jYJ7hME$&a;U3kMtoCaqxPfC@8Ol?mX($jOA&eU;Ic^x?@vq0Yp%ups2mxxtoXGPUj^Mzune7aOBgpt; z749-ywIVT&1qYu^<`Qa4bV8hgjRB%JH}N)Yne#}bQa0Y4NC#U$oSFL>RCQL8raNsP z*_6O5PU7ZzApYW$v2LV29LzIL{_Qp3^!)9;wpXJC1p!)8?P^;)t zo~!kiF%+Bp#Qp8y#$w;7W4dG4@73`fP5Z|`|+&Nf8=j7WMs&4ppzbFHW-V&UcWZqjnl~h7B z_Yi~~@|K)-eCX{0x*O3*tBfJVlp7tM8WZNq(^n+=@T&9RpK(@sUJ873w52+)TgI$3 z+M#;taJLkn#@qR;Yh zwS?Gs>tS5oj92B3$9ybw3_uJLaH516-8dA2ovP;^BWQSIp)o}hQ@>9pVE^}3*2=lH zliLExEwl3P$HgnJHYz`YLVM+H&B{f5Ac)F|#X>wIxa`d!@DJ3?=GoCD4*lojLvsYF zj`=O@P;-mY(;H(_ep-3Il*RtVX(>1+*9cFbh@1LSJVdiKkMgG&@dX@k5RuZB5K>N)Plq`` z$Og9Y7W9J42*wk4*NNZn(Vr~m&qc@i*^Kx6kv4Qe?FRggRJT~5

gzJ0mY02WKh| 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�A96FwAfcWD2)={%LTQw%x z53B2?^|bCPGG?IV#T~Efis_c0CgV0&_nVv|oUayuh;kQ;N~Ty&xb^8F zS)8RR-$u$%_ym8A*(3YB{;1I=sk^No#=MsT0`A4Hf0JPIdGE`b*r?qzGG7-q9J`0+ z!Z{__FFXvmEgk+W<;DiRNXJXpv$EQU@?P$nm2~Re5>G^&^0Jt@+)?6p*KEWh zM{CsKQPst%9SW34NWu}+a1zD5()@(6{5*X8>se`HNRupQafd)RvNVXEv89Ff{!Y2c*( zRhOD}9C?{zsiukfD{wcHFGo zcQ$E!*sN?LazYbtUZQ@|sMq~?@7a0%n#vOgXEmdG6fci@M`#{f7-FzEDNv!)lfNLR$XcYyyOl`_OS&lCZVcSCYJul|-3*oYFIdaJ1OiIZ04yF1>_H(t& zrw=;~eavCB@Ho~}S=4yxoq_MjL&e8vW&=M#7LQzVIANbl^u6@~PmpB0tH(DLJwNzS zIaX#s8lEDC5xi2wI4*NHZ@dfhZ3AVY>6KM~*8aiU<}%wQ4@kiMS#jY+=jiXQc^}iv zFQ@sv^p%|5cwwuD?PC0`wyxYc{I*T$Io;BHQ`@Aa7NrX;LJmxFYv{1WxWr%C>ZV<( z6V~tbobB!lT_+Z)a9;l>)O+Z%{nK+>WpW$c3nJgHEo!ZPCey5Uky8xT{Pw-7bXKGK%QOOzj8+jub$Qy2CeeW2ighDOU!tZ*&3-FZ9%m$wwy+Ui6bBcUcI@r)@hC6Y0UY z>B2gEH$i{z_rjc$mnoSIyB&GlOIV-D$S)bogd>=3cnRf#i|`X+F+Xl-6yLs=c6P^B zuF}wEq$u~}yA>Q?>&%|Tp~%c3ov$Wiy`>A1&W6BAxmvRfUaut{-Aq+7xaxJgD%4J0 z&BjtY+FMQV_>9)EH3#ov^-sSzIv1PgWNot(w{^Jws*@kbhx5G`U6p%wiODTo_{eps z)#=*oZp`i70odTT&*BdE?1VylwpP=57I^dxuG8XOvv6`tDGd)f7g^>?QX zwhpNWkH6nIsr%M;V&~G$n>SeF=Zf|u&C99X@6@(&ocpxC*62<`T%2WfpRY=m~+2lyHerhn@m3Ul?e-q=5idb@={uH^5_dUa2sN`rW`=RHNV6r*cC zC}5XTcr1}isOdqW)_l7er&(LPnS$_u&0WgDoUH+=!IDO@bJEIFuE=#xdc1i(V=)44 z_ZNfv+4-spcg~5P@r_=P#M!ye-?nVO8+e2YiLE+)^;s7&hW+@moDU~e6q>xvo6FC)d>iT9d+HeeyOwnNx?Oyi?sq9^JP8zO zZa$;3<~)&7dTU4WqF8NIC4$H5oZYC?Me9D?)6%_1*4lWAr5PAu&t}&VV(+r-woD;Q z#CL?*=?dVuNLAHaFT*+H+jjLt#F!^N?q*7?xn_J*#I@=s-fr}2?lkK=C6?BT zPkq;$J$vkAH+?~SpHY61;4y-grc+{ z8_9Xxi|LJ;iLOcY@P!MoBh{w`JKvN`Y5Vk%JjJ|vx;}cJarE<9BTs$gs-D$7{xCn* zS8BXZD^Ay8jGMjh?04MuTT=^OVz+YN9(ez#>KQri>5W}hvCdZCvs5z5C6&d*XBHmL ziog%RV>`3$MziFcG`@7j$Y+IovVXj0Z7*6ok(qaMbFya84c)ud6`W#xp|%zbt?kF= z5yDY>%s6avFABaEzQf)7B**F?`Z;B3ZOYV>wwGylrQy7rQqF#Yo!eug&oaeX#xEE< zemnfRyn?a-!`rEdw?T;HO1YVIrK1~IjFV;NxzC`Ctxj4Ut$v_l@NI9xF2>g0o_iO6 z_|C~%Up7>l4Sc=1C`qMLlJnxN{_jg<7cN0d(G1BorIm{pMjoQjg*`L3)<3pJCUqM0 zXPtPA$tc=P2w@4H4NkZsqj6#8rPUrGtRTf>om>&OV61qnk2>1>$$_pQ?RE*@5=n!5 zv*zxuz=UtmvA?-d<wXVjY;5Lgej`ugLA`PVNAS9|JwQB@7x zESbIbV%kR22i`g79XUrY^UeqI;J!v(5-4mQ%qYrv?=h#@FNnA7x0x0^tBU2@BE5di zw6(idUv1Wx^#1I{ssaAyaVo9Uqp`UWGMpd5PQ5XuVgLzr4?e z_1p=OBb5r*ub8-O>2P`AQPB0lKV!q$4EyF5L};2$RKS?-_OoRt`=vf~^&T7ATP~Gm zF6H)Q@qJ;!VnniO*L`5HpK}|@=SC$9WVqkmKkv6|E_vj&h@C=1D={7r~lXQ6C0_^vK(wa@4 zA5m5QxXraoV6pW;Kug&!ef@wtMEg-kw!wJ`)h+p#E#6UIDyci_81lKi2%avrxplSV zb3S{YeC%bks^X&iu3K|kwJY^-rQ{leo|GS(eaNjGEi;=HM$B$Atdpo{^-iz05xnju zZfVa{&{@1$LPG+M$vly)f1YH!Y3;Ukns+bFDRm{bSqbGd9-Wkr9{jB4IG+(Qjyl(I zE#UC5Drx96_jRwWpKQC(F=IU&(PCw5i6hB_(Y)gl6r4c9(EVH<-Ur5}$sHfWPS2H$ zsq#o~QVbQ|Dr&dA@M_oY3KhoWGf$eed6%+o1l$rH>`De_3Zcy z_e!p{!|Mj8)pNW81pM!ac4Q?@BR;!(zVvCF*@2EDU3mJ&&E6m$oeG3tVLB{1TJ2l2w0p*q^3CV4luu924y4wk9J24GUDB^ zou+RjBP?*gUsJ?W9_2j+>lo!bPkeuq$9hboS1-e!a!Fb^Mh)X4mr`nkFJ~Wf)UO_w z8}-icJ^^^)a8>`vx~xgTni>rUo|>=|a1OWpEi$P!-6voGuGR&h2_o^lzh zEfQ+-m#-d*S|74*-D~0C(+2QXH7S2dQrP?YDK)*b<>vt@q)57s2;{$Jp}(z4s^wLo1BUC*fHZo{=`(l+YQ!zJa>ud(WM9 z$$s_u{YApDG4{pg6hlopf&n{R|6tM-x50boL7O~xSBo%BIj7i}Hbu{mxsBny?Xppm zJMOcx9#Ek?kuX*$-z(89EXa@CfNPVN+qnopS2GQ?41oxf|ol5*>P&Zpx&L_X=1R~?=s6k+VMDyaN-2%=LT#bfZ zrQZcFtSkS}b}f6MJ0hNM?ej_z*(YY~g-E>}@Ac9tjpy$6vBr)D6}n8GG4^HBa80mx zd;3vEAk^TTesg!D@GSEWonvx#GG;lMa!GrbMouc5~^y)248Kt62Jbgs@AhAIk;-Ud8k1c9=@% zR-wZQdHqeV)>SAY&S*DH$x% z4>*3jKg7MsLgLC}O8DWaR^caWutzgD?ke0mmlrosp6k%8J=^P3s~#C>01ou`g{4|4zmyJ4-dwtQ>AORNEV;S$Fj}kq~`bWh1@;B9-^oN zPqVug9m^oq>p@ORQ0gdNV&pwkRgrLJb5!jo_0f@6_=CTtV3WW6 zQ%r3)H_c?iQ6|K|Wk!DBbMR*K-ReLC%sDc)gKc9S| z%HzoV@uwVt_t(e!XPD|=SYmN+koHu4dtts?>R^*Z$;Zyo{Lkmp#$ppJjQ4}*?oOU8 zJ{|A3K}77uXocdzrqGgQ~s!HPU7loCliH#<@4SAF6qGH|}og5FWxx3Li)9t-j_JgJUEk&6H z)o>N|lABjjT$A2w36pAmgd`dqui+OT>po|Dd#n9LoY9oS-74LiG30L7Yl|$yFDT~@ zo1Dz6?7EQou1?u2z+vbZ&xf#QA90f~%UGs85=umgr%F-Y&yG~cdhHfd-zm~q=wmG) zFzp#>!~AhLw=>{139aIx5cJqKK^0khvip-D^PT)?>FXBBzMOYD-%brTR6Wo|?2ts} zxLe1r`N;R_(JWs5X&y82;g=sS+pF)^Y<&AgDeY|kI5mpRZCy;mp%XTb4+=MMjB1)4 zuQBj{Q;9kpzW+iDp68MVAIrW+N^0{{8}ULnpSx7*n6W+B#W$>i-uwQYKkTZbmj5}& z?lnu)%zdPziSs2kPABEMw36FSu?Fm>)}QXD^oRFi8(cSTc zJGvKGD?Nogd3vfOPlsm7Rdn$5?ZjZUM_qg6S<>4v}tF67_|Kg6JN@k9TqN=%Nakjw^s|L^U0a5W+60LkXQ}X+t7|Oql z2wCH-Dh}Vqpm=HPZKufnJ!`*w$R>?V89qDW&;H@Wqs7q|=gx-9R_bnd&iz_mhU>02XAIjOE_E=YOi1Tu6`;ZgyYPc zo*|BJljd=}Lj^AcE*x=y9chVq{w`{NpcVR5O4G1xb_>(QN478asbQL~p^7t)ndO3O zGlLg0`=c5}9f+y+YwouaF<-Jf%qDZtxQXdt#NH|8jXd7eR*@pEx9X+OHMXkUiw)=( z{&95R;i+{!!yC^&wr07uFt7&PHWGEgL@~3{ZdGx>Ss1dTFi{L}I2MKBU}imdi~x6G zL@>aaU@MtGsq7d|4@?XKfr(+5$Yx}KGcX|eL$2plpWe(46M~O2XAxt zbt492`7pc?A0rP3oo|n~HxaFk!w9YCz{+FfF<5zdtUOl9dOe5y_7zD?FjfX5O)JSR zhKF98?Cs;?i`K`Z|6N5t8^r!!8uYU_>??b-vcH%ZxX4OG0F;a|a1;#C*%)Hra2Pqj zgxTgC?&B3vX@*?;mwvk{l?o`aY`d7nBCnm=HEzP0ey51DtzP4eCx4+Zm8@6sk`?)S zX>W$qx_2iplqu!1H5XM5j~tw7oRA9AadSK9Zl93${i5hw)oPJKtcgJRbcy1At&auQ z85sFbAW8~@WEF&?bU1XpA8=aRM5?~)M!sCbDew91nDT3nn@_kCd}76KWZ~PVN^3(; zuFoXQuCd}P7k!$wP9>tzwnp9_HMA#E^ZnynNas^F4I9tDiE0!+f*0`6cv2uPEI1K* z$1eMby54oGwb)(g07*|lfr4sdZZ~mC(~CClmVed|A5YV8lp$l)6L{`k1ew&~IJ78n$i%>#!oA($|X z;Dix|2%-pn3||zlbeo&r$pF^H8TTYv&8xF|Mv+K6j4Z?;jF7-=!H8yW&K5ormJOeK03)Dy!kT9GOKMJY=0hIa}hKqT{4O#?v3Vr2J0_6rn35RK^ z5Z!b7YcHp4-9JXjmTp` z{6n|SX_bfQZi>A`ZsDcIw_8!Z=I?#7jcKdSoi#lM*BMZXx8my@EXnu=2|t#PF>j2& z_y9lf029NQOZNkChLspG{hxCH7-fv2yplXt5u>0C9DsrnZ~!XH$^Rox=)YO|>l4>m zg-`Se>6wl*eXt9Tl^IvQw9n9Tg0g`;FmK@Th2^FQhJnhjF=xu!8Hvlwm~U@9bY9Gz zyDj&@>rGp0gil=zVZW?LvFYO5uF&)ZWz@p!*50te_lqs(^GN&5=`D=qmMKQI98=Cp zqU#LS?H4ROIs5he#a7euDl1dh6l4*4w&~V3w6{;mE;uIfzIH3>g8FA^eaVgWi!H@v zoIQ2|FPhYgRd3IrIALjP?r!FjB|cZ<=yT+|nR_%%&)l-=jvTIV?%SwO^V?iQod{t= zchl22@)M%t8ZHv^I!bW4wc zhXCIf@RzAE|EqETb_V}w+W*z|W8lz4BZx-Cz>%OvFjc`}%QKUcGZP#WJ&oDQjFe`E zGcmC+!1;tA&)^4KLttRw3fDk$5>5_snCO~c%nX?5l8w=Ydt5x+pf{GG!4yS2?B<6C z?;~5DwOr7S!Dt7sV6+eTpb)t7^YaJ)SA(X1mXcoP5GdmU9bRat4lvh&*D#@>cc4LE zszrkjB6)%WUe0JIZ!c%?b}jHNOSJbPw7;Lrwm&NJ@djm~$^hrD`k`6V2l~b>_*e=g zlj!0JK5y$M`rHPYJnwz|y^WP+dx5|IW=srI4sc=Qoc!s0NyfFU3l*}?l_SA;%L z1hpJtsiMLEmIk<>wY`0Pyuq6~AoY>_EkWvM(6;6exlo-@B*)JEFQxwo`GDd5=MbnE zyW1i%Q_V$H7k|;2tI7~@ky@WW;cgx`y8zrrh|F3-7eMc z326B&!*t(4L+!M`VbY<&J3G3H7Q+O_5<^`p9#$}CsvY$UKkBabW-9T+eD5fKGKbaD zHpO{~ig2I9;`=*e!Ub7M173={iJi-KuUG4T|9TGE|eF zE|cIj=a#Pnmj)mBx!phO??d5hnLRiXBb9Sa|8337i=Nd+wo9_Erxd61Zt_^myprwX z-X=8TesO73Htp)I4R=d-E*X;N)0ucebopH_O*R$lUq&oOE_#^{OAvi z($6LWKPt7{#6R8WZ`b7F@H3kK+oiJq-|15Sh#6U;FnkbNTc8+{9mDn$7)C}6&+k|g z&H-gZ;p9r<+MmQf7f>`Ot@pu#SzbJyJN?9gYt|oGx@2hnn6K zuB$v4866zLE=_;Ebb}y`fgQB}Aeb;^@oue7VZVGkF1HP_)bZ)Cz}$z{=uFO!2dxud zEoye(97C>O7!8!{zlpnDC3WeJVbiyk>pa?M_btckBHlc))<`qAdb-2tTq4ium&Z%^ zzK#>#*f=`z9%wy882toG+1!!O@M7kY_&w`HHg@ zSWHB3*R0K~OwK1RIIr-o^rvq>hOwyc;3>y)=YQk$@z?2{DOdQ7d>_%MM?%~GG2Mm0LcsMo& zZU|y1g4(ViPY-l}3+;Wm>LOTKj0hUMgVoy^e9~H7#L_}nW{1cw4K}sScoS`l{iZr- zFunK@(WaJKhWgrQ5g9o-XvT4olfzr!(WZv_<`!rmLrzY|SOhKdk4^(H`pJP;4}rBh zG1w3YlK}-}or%sOpc=aLKbixm&TdXb4K`Lacb8xdC+EWseurKB)a0NPAUgQ^IzSh! zYS1gCpbJy29p+e9oP2xtFngkdMxu{pt{(+)u_|B?8@b^_BPGEQ9fW zIPgVlJaJ!;qrR`c{(eWDKT4>{E!PHQ(AuOXM{BVL+seQK>;?d6VJC03%UqwT^*w!L z+n8;$jbX&O&`k=_hzBsfDr1LqwbCA^X6o7oewSCbO*Xjf-z`XVN}vSXe8nt)-p`!Q zcT)1Zr^4&b;n0_6_YRF+vEfR)QsDCBW(pHUeL~_}rUiMu!bvSuM|_dX*f!%W?gUBA z!pD&oBe)=Y)j_*wEyM2_MN4a;zeEiA=>lV0O@MxgohTik^){xwu!Gd#F zFCWRXYw-;kuxok}T5NWV$99;r^vKM5-%0^1+oV@UxoZygoWHlP`jb#{P7GH&CWfn- zdCl_15i1u1CpL!bAt09iG7Ydf6~lEMkghPmfpvjRCAt;^HyXO4Bpi|LfjELW3|s{> z(^f_V6Em>1KR2@w=ri786+47Z1pn|!p4n3|EqSl6uW!T4eC7jvQbK*xi7gCBg`h|B zjk$~s{3x)o^wU`7F$&fgurmN>V1=D0@v1x=Da*``;Q)Ebe9Xoii^)4tqbldsX*d>=iu*yy2nCI3&lH-9p$b`Ms~R2a6d`-QSvcpWPfE zos+!qj&HqbqW@uxr0-TKneC6>Suh4TACuo|de4j3XvgIZII>)HQPbqD*KQu`Mnyx| zy|M>#w^W^YXMJQ#hbRkcS+hz&&1`GiUaxIE&IVb7na2j+?^m#^UfehN@VxW<2ETm< zv*u15Wnl^3#C5ff>yEuwi@gqecIQ&(_^oYIM30H4pKIVM;A9{Dhe%AZd5dxL!1lNu zIacCx^CMCN(*o(B2rbrtR{){(3ASUpSJ{4MPx;Q!feGtBLkAjTDQE9s-66IYsSO&H_i0m+YMj$=hEhN4@0I4o4$n`@TNgRizo9<|ieNU0t|8CY?^Jq@+ z>4v$7qDN1>E4`>v6|Z#8Ipw9r5)(Ib{+7Y60dcZy%>8dyChnFmy*PT_>ZoB|t#llx zx;~@AEBG3LTIJVsB(uijyMl3G8O;LLFrSv)V7TEvr>xJD_y2{f>YlMhUtv zpr}Z{Bk()*V$~}70ZTeKA zez8>1C!2#u?Ge)WT)MZ)_TGywUy7V&QtS0SZPA@7KUm9WR6n=uc5`Mrt2@-I^u&c< zsFp8xtwWLQmq{{5V!!%V=2q`xTMSvNH`Q|n#V1vXl$LMi$!z?XaPd{B%~I}Idv0{Z z;?mnh{ntC$=DDu=Dm>WsWVf|1n~Ev%m84g&eZ;jq-qyW^dp)j zAdSf4TETW-502_s<$N>Kw@ce?RQ9RMuecWxI=UyTDR+bIE%ywMiz5?68N9}jg9eLE zgrdKAhGwS!#d^#KgNncux|{s_rocZs#sArx0<8b;rhszCmw}_^EDfUFL76TOKR>q_ zD~;SFT6d|n=(^%_^V!6wcT9YQIp|GCNa#TQE7T!=F-Pd;UvPV*imNs;|Z^ z!awl3e}18nUhf%VVLz>%%+(ffAQQ$eXxymQyzq9mTEq8#=>S#n#=7kM1Fm`Ow=#uX z3P({GEyc0?PI%|FS6Y7lVP@KK=MHl9=Sy_ByEZ83csFDSWuJ>Q;!YoSTbeM?`E1-M z!nyCI2+JFhqT^%dJ9V18cD+e1{jU4`KtsVzCRNYvlDT=hF5Z?ohvVPx(P)_Idb_ae z@@w&^VpaDSHE-tSqwD1_5r&hQb2q#$Y}#osIP{G3-kpqg(&|kC`kl%DX6dUp1)$r1 zt2YH!Zwmas>ZSlThG7?oWOmZ_o8tdxqXh=!ul3~bC2w|gB4*>Sr7_rT;`n0;{O|Xh zXiHep-z5=PaJ${sAnRzDDXfWo-|IIFpW2L0G;r~P2PRf5$Jwz07_i}w0n9A*chtJ6 zyA!`Eu9qyt4EdEJs(n|6c*~m_oktd!@+x9O9N9;N(eJ*xN!F$f@0>evYRSlSyUzKX zxXsKj5;uC>;V)+{KU1`Q>bRett+o+6+)nTK4VBx8+fe7e5hkjhxnH;K<|jKWZN9iG zCEx3ZRiv8Z{>=^SwF=)(iX_!M-?)URL=YIAcWCbxW`ueifJz9C>CM0KVq2NUTHs@|K;^J z<`B+X4fiXKuU+q;Jq7!7UrP5M{>gbYYZZZ21XdAPMPLgZqUgVMjh*$46vu&8AY+R5JDkLd5{_lxu|@q=*L2Qv(C7WYACz9cq!a$7eXdSU_AWtAEN z%bTmD7l+b+$fJ{g{o30*`4N4=yI__nf6IgAL5Ra(LuShiAdOhQgie3U2J*lw?|u)+ z-|~j$>GF=L(S<WO-D`nc- zyBxMZpZbegru|H#>1hZBNbYYv zcJ=;^8r08!miJQ}49HvAE@;$s=%Q)A_V!*L_I|;hj@};jK1APtk%w7s57%-TDE+rQ zgFobXIQ%Dhn#=Mem%)e9E9F7`HTpxIr#CdHZbbV-{$5W1(!Rqnbo-ZFE(4`k%KOVZ zfbxIq-JkfSF3T$wpbLc3|5@*#cL@D%@ZaNMnniCx-ZBf6{?GEj8*4qiy?#pkTOKT% zE)TOpc~{C?>0=-n_V$i`zrEDI>I>!)UEbV^f-CV`L8dhc(qjTmuA#oMfev2(r%x_e zMtX9&^m02*$LMKjTvy71zIh7C;r~U4a^Wyd4{rx&7hiiH2jXEl4>w0YXLs-xD&Jrq zqKh+lxe0jVrMnAJ);Snt0e%=v1O|(u={l&73er??t^}g;K)-@O8lB4ut7ilB+pMrs zK!;$1>WnXEg{c90>OnTx;bI2bmsd>z9s27BU4ag02KoTbCN%0l{}AlhU}^u51x+VV zJq^3d=Y;Ml97=Y-@kQ>*#2GO_quCM*sGNHCP{K5YS4F8|}=D~j8ji9nxD`0|&gECOP*>_lBrl3z!%jwBdR#*nWMQ}L{ zAiu%w!|lac;w;Pw(Gvu)muN_C(kCw(Qe<{Hv%-uho`B%lhOHzmqEX-rC@>g# zmh=vVikk(jIMN&!D((Zg!c$zhNVP+FmA9zluRxkyoV~cTR5i>2tReZMA$ftyd5IaOpJc~nNG?u= zWF+|)5Xgg2&P)z7Ob7cFPl#U_FgBqSMC0y2T3Q;+S?Cl3-Rbm5dMwDJ^C zUI9x`&?(iYpa^86Yy*m+I6r}$1PKA@yxn9)1$|NrayJ>FfFr-ak!rb2lETD61L&0} zoq`&uLw-v2gBn1l>ZsHb=xqR1XXDA!zUM$svLQ6El_*I(QvnXO56=WcNr6iOsgjET z5c7YFN0sPQ;K@}>4dlk?kx9^U(lDxYaS0CV1mF8eIG|pD$JC%o`pC6ai^7`+P$eC# z(}blucqM_f#N|JTOVZ`Ss|*=Zl4#ITWKKEKM=C&@G>;-$k)}|%rDxbm01){dUTU`L zlQ8QdO$ao0a6I|5)VJ9|d;(~bP7+ZAt`m>gKv=3IsMLqGjBfPV#0P?e1_zzns#5}ct{5h&`LA?~;(A~S))vSf+`lL^S|6 zH~~;YRIDbrpa|AO85E_QNT{~2{_ND}khM~jQXv9pt0OdQq$m6~wxDwm#6#5CU35_4 zpn94<+KxR0y-cO+=3a9G`CF6$7neR6xQb9o(3T=d*3KRNk`>UM9O~I>2&+0mogOsW zFmQ&(8=Pr(wF%@))2y#f8@g8pdZrEO z7j)*Oos*ad5I+S-(3Y&zrgxk41Py_9~^6r@-?2;|Sugi-XNIk?A$qh!nvkSxlTlIxQa?!- z1Ogy1NYWJm=Spx!gL6GNi-B{SKIA{Zjar~#Niw}43IfKAB<$4Y@>`E8!Dz;QjX;t8 z(9k4G)j%*wOhJcmQNR*uy*drpL9a*)Ak0jF+&&#(kmtuo>unGie*el}Jsk&w z2ckazN^09ix?CXs54j99xf(y^@}uJ9|E=8mf00{H4O*64Lj(DDdl59bZ-K_s+KWcT z^+MYJkL_*yEf**q)ZR8KnkJX%y%GZ?O=cQRCXzJ26%}{vw@k>2F3dwy=pf|TE^$Kr zCCbst1HDAWSp!~D=r))?J8*70wIxw;kUiFEqe07Iwc29v0{A!swh|b%~-;wp&(1PU-a0w@W2 zRGMM?aC!#5#{I$$T(o$p~n`V3joIt8&7+*tJs--RnLDN_* z;9`Kd1ZtVN{(-CO7Z(EJLf10${{vV4FD@j+C05If{s*r3UtC1Q9;F86WS?`mTq?>)Kf=zq_PreH?IQH;5;eX$Lw*g=3Awhx-rgm9Dy{s+)l zL@z~wUtbRDkZ4r$TIcNO*nH0Y-Xj1tgP4%&2IOI4p;S^^43U*J$L(qh%W=l+*iAQY4}17+#sy4Rd;Yar5rbe<99 zE|~)7%SfPT`p|_z+P*aOTjvYle+J-r0U!XMzYj$Q%K^AJXyl3j+&$e`wh^OCJGB_ z0U5q&EDww_So|^rtw)t~jwd&fM&}4leTGR0A*o&* zX?Tu!)X1p;7%oCV_d6)vhAQdDQ4%wurz*7-64Rllu*fx4<6L0Hj8gz~;83cl{5S=6 zk^(2Hqz6^<6i10ALF_n%Sn!P&z~1ze9i$=lF~E+XfI5)+q^ddp(}v{QxQ>WTOVy|n zPI_apO~2YoT7XBsBeQ_89O@|uOSynmk{9Z9zAvv7pEpA*u<-8$@(Zx#F$)|hMd$l$ z8$geXUIu!W4Inpwxt z@nm)}AbC=sTxmpZr$Wzz0;y=a)ZaTfq=_Iy$PixWlV`yQ`tN~85LBqsMhfSG5t;BR z3VtluzA{W5STO5=y&s+Pc#2Urfl>@f!IOmq5bDTeAG z8zTthDLh#pi6`UOQ6<~K_yb!9n;eApkK-T;2n0tYmtm3{Sf#a)5n}X(H^qp{h&)Es z`LMJEzHY7)_nN-%V@UplC%>h70ibv4oc9mIC4p5unbC+Wr$crHaW|-FvkoPY9Zw#@ zOHGpIkiPqMC}EsjIF-6U6Ko%8PSSTbjughp%iya8WD&?sG|o91Guqz@M|wg9`#J@n z5&!_z0%(#Ed~tVDm;!$}w5$R9Rn(>;W*9L0ZP-3AK2cQS48W7Z^bI_%2O+;xr_Fy| zJmi#uR!p{q@bM062q;Kj1Vm9api;n~2!Qrew+KmkTwvrTAqaK8Q&`A4bC3p*U;G^X zWt}2`J*~I~q6}pp*j%V5z}tu-z_CibBrPF*`BioV@{*P$eNm(^HUxt&vH-3^WaA=& z`Tw^P|C@@a(4v>Fx-`oM^?;}W)Fef#sf7T4K@|E`6R(O!Aecubeb>-yLQwE*%j!wr z86bBq*F&XsXa?%gBh0Z*oHk;K(2kkpf7|5hWLG zTKX><{LlKk3DgD+G)=F#e(4pnibene(pE6iK)Yt?+BKPgXA=-(Xrqq5{cn~1s}@5# z{J&5eqLRum{syYfoNjWcSb4}H?n8n(4iy7!cdBrsj)Pba2HF~oK%nAy!8K_?5*4!s z$~?-2iv13BomAaTT3E!D0(ZECN10Tk?&Bnr1md7*46jmyO6i9#lFWgP;>mS*sh6n4 zXSA#iR3fzcAa~3v8Xc9UFyXQF01m(l1k!*dI4vE*Q-~-@ zNb>k2Fep;rNZ-J?egd=Gm?vQV=|s@9Xzc+Y14G16jAjTuI?LUM%RXILJ*KGRk2(e({4=EW^GP2`@9OHfoqT@U&WhjIdw z{tq~5wWMdZ0?*}cODsN2;Rf|4_uJf^teK}K=7L1@CqrD50eLH!L>JUAyTd7mXKKJv z6qttj$%)g6or-9x72t`?Fgu=TxWY(O0rPeox9APzrt9L$QM)ZRWxp+9tF7J6gz}>D?^d*Y+V>8Kupx3!-)T$VUsV20`Mv9X&*Pd^*=bdN zwkoTw$_5}7>nc&a}Z= zzP61u@Hy}X+NmeQ5M-ZC*<>l{4(yYbN9@Z+SuGE*r+>DNvfR6s5*tTZ9{v`Yo%rn< zWvSV5(lRY~naz}2McPRB=3q&(1mEWjK=%GPQU=StqL}4gXoKXfHC`KJkCgkNe7 ziG*)w;pckY1rUC2Rr)%A7uQ)9eYLG!l}$NqOW15{w>_bn|p9xDmn^H{v=u*Lln$Kah_VyUCW;*OS4szT|lYZQ6Hb@t*3 z?OkUfZHe!L)v>hOa2dBeYE$@TyVIbks8VF@E%!p!JMh0V*7AxrfpXVb2>MHUR5@u= zDl8@a!v(#LooC zjXM35zmuz`+r*YO<*cn86n@5*u*KGHM?#gE#rh(Pb&D+>W7IQdmTDvj)Oc?6PVyX5gYj(fH#;i*2hD^zDqZ_Z~4B$@sr1 zui(! zAHwFKX}BL+I4C+=idnoIWi3VzSn92jHL>y(mi)EUH7ac09BD2 z#D{w>5r!KCq&|up?h-4J-8)*AwrZStESxSHb`(D-J{(zph$GqD)N;|j)2Q`%nSRDN~34ot&3H^`_08QBUZ6}RzRlBKvI z;d!zzs*_Dr1Yqorznyn2iObn0jK8v**TIsQ({)%l zT*=U^Zp6nNULwD6lU7r)*QT<;goy!1pos#8^Ey3tk^w$$_GB2=7K@Fl&r?!gkO@+lzZy zmIfTKLbS~C1Hg-SB&?@Nz`*AGpPVMxP6FZm1Uym{c61BoNl1wF;>_G?nQ<7IbnI?F zm6y`b6L+J-V~fSEr{fN&K0V+lKO(T38FmxFo)xov7v&h*>ggr0FX4*Q)2j~jyv&h# z#xlcA(3s8l=A{Cz8V%m zb_$$Sy@`EtJlQD_fNx?CBJ@z+wK=Bh9MhH@(;2793)d8TDFgur7oxbaBVjxBLjj@K z;<^S?3)(btXe)Ve<`(A?tjcz5hHxssQLlr=ds6Ad*z%w1s8^#Ekp|mf0tc0)1=6>b zwQ#ySrYbqt< zkaTA5wG?~lvCKV|;*XJ#_4vX{J9%jmzrJN-}vfdnZkJ1cl|!UMhbOkp72-Y;PqdDYKsVS?tUc6Uh-q!5NqHI5-+Y3kJ!9SJp^jVRt~5cs05R} zfGL%~VTL@%eBuGyKNIK=f-B|v+#{ZT7GxU)D#@tQnB2APcUjGKNQmlF> z**%VWHf3G8FE+FOcr1bXJ7L}OGAr`%gy`4MY1b=@ODi>TLtW?0Jf8m}m9rvPv0{7a zVjTD=rzK%&Q@5i%QD~=51vBp6iMGt@@i_C*z%$UK+?J?#E8~iAL%TE1SH91z^p@pZ zE|1k&bOCU4-Lu^mWo!9l*#e# zeu-eawdWSZS#h(Ro+f{HcU01_o9Q=)YxQsN($#)*4m{;WwCyUm0p7Rr86X6+ykCcd zT|S%A3#${@J7;VY*ku#m2tK98%XX{gz&LEB`@cMh#=SskUTJ?@8usF3Jc4cLXfOeF z2O5aA{HPhNmztIhMmif-7iu$C6GdoIw10CAHv=45ajoq|hSo6Xrp$Os&(OB`2rD@} z8z5+SVx2oE2gAAug^a!pM=_k_J&8^1jX>~jDgGAJ8d-LDa=qN94y&)gOW55HW5O2Y?dq)cWl_-LM`9vu8WO<@mBZkiEvg)PIphIa+4Kn^i~C1sFiwFWdM?QBwCe; zNzTeF_SGm`{*yUSLHtfe-+{L5^*2Q;v?)K7|6mS!%?;d?{pEf$#F(udR(7cr@ndQ8 zBK8lqQs0;Rl$}m@(}cJ(IEMTcggAye(4ZhT&w?Om`$(uGk;bJ7>OHy-LHY1EyoaIf zRxBrNd#kluR+44o zK>Z%_W&Td775oSsq{Eb%vvERGC1)dAlY&4APph-AmyFzJ0KPnNLSr~aX^BLB9`2C| zA+|t{cB2=2^Se-W*xX8&E)Et(!$yN9JEiO03%Fa=XIfWWyM||*b%yh_&Ut&NQ@|~*q?<+1I~zOdd{nyRj|E}+vHEwCVwa42iDrVjY=H%8tqTZUBHyIK-D>J*mM@Gyg#VCJqaHQmDINqg9ze#-51qA4#0{De&Ty092<8-a;$M@gx(+%(^i-5NcCs8WO~APyL9T z?^@h4URvYC2wgAPh;9eXIR-g0@*DA&o&u5nuXHai`$I|T>W9CIt-wfV->%Xx32|Lh z2n*Uz-{$T-OX)lt;ZV2R631aH;f~}hh}U`H>IC~DqX3fmuj8<@2on?eK9X@@9XbysCO^T7je}NKR?)Y2>zx_*!njEjRI9QL z~0Cg`4+L`(G8=#Tw9do0u61Sxi92l{BU)pf8f1>>1kPh66FKqAgJfHjNqrPZBS zr0lUOiA!)5fqr03X4SYKfMn}{g};4f?1F=@RR$z-EvtZt9dhn^PETB^4JELQ-QkU z3OmKo_r5V2eKXBYsqnApUd=5A*2AN=lxn(o24^fW+Mzsllk&Vr9Cp!mX@ZByZ+9$1 ztHYjdxb-?H@9@}{Se6b9EHNc-b+{k3I4rhmoIWaE=djoZ)}sRTxImYa1El;3h09lc zMrSisI{g5Mbr*(M%VoNp)*#+Pmb;Eq>ObVpB8|AYoLx!bzIsdDn3z-cDpOtpoWu_G zFm9c)FP5xV-A>sOl7xv4psl1W73ykSv=#-9k+7a_2w|bKpI6yim(%h7*r}}auCDBT z#=$~D2D?ph*h0b4?Jie=2=Zu2Ohf@Tz}BdH8RSADq7sKnNhT~}%5LUtfhMAt1mXfB zqB5@v#Pu2tPf=F7ry{vi3gOX%;{?1=O-HmJCZ7si50lTwoSi4)TBt6hQblXYsKUEA ze-{e3deT2P(myyXy2hVN{|upjn$bUWH>{pv#(DTpc}w3d-3B*#jE9hXbn)PnL;| z+G5X2(k=RSsJcS!QmddICKnx*W>@2Io3BmL_mS_&9=XXmW}RzK%igrvxLob&C_mfL zRPG#8{$oyuCL>$mFhlkjh|@fTzJPK+0#!?`|F zPRXJCEB!ZQD+kdf;q?8%YAW=}bShLyP!87yOf>pt^)JbnH!Ib5@04AU1P)_IiUWX%K?Vak=+>~Dj$6MXgQgeN2 z+B3Id)U(B@oWK$1-Ivj++m;F@VJ=B%Pjxj}o$Ya&PMJ*E7P}Msm%ChshMMlpCi~y2 z-U$eYyBqhDxjs8`A$JLdyIZfY0R%w>6tPz|lTX9nk3pfM()<$c(SK4}KdrG3#Im=& z{kBy!v#-vjr`H0VU1PvF5tyPm$%eB%T$$_Yk&*-_j z#pYeF(!Nwk@3EUszkbY_6{fH8uW^xDn5n>#KNDZy2F_;t$>3)J}vaZHPwEIL+hxJDz8?SE}Q2 z#wDl^*U>bGyQkU^C6qO2Rrf<4JFJyidMEmJ9||_I5Nl+eNki90p+*)W4La}wTkTTZ zm*Rxe>iQx8>{XAU8s@q}U4|<#F|RriR&vU|L;5CFO~fORT^dJ25J1?i<5UDFR}gc$ z#b^{hhHFtNtRF@p?a_*)@U&AXOce@qLKHUDDf}8E?JzPPr0dZs9H3F?!e7x8&%0PQ zD`!MAur+!2K{}qGB}xbUlmq<`{%>B_1Fz{|4|Fl(Xdb98XEYB~z?s%>;!&26=61d* z6t`0!w<9&~F`uEfpv0c)-JGR7IaPfV&qI`Kq`AK7$dNqRLe$k{{lR-vw0rEy6EMPQ zj-9nMY@7yv72=BKu*$|K1#ZLf#BcL1vKODq!$xL!j=e-CUXj7n3TZ*zp^!cm|%qP|0z68x|GLI7~Ru zhGBAWeA^!EK=`SU3hjXgit3t5DnU<)MWR26vX6`GRhs}!Zx1}4b-KIKTRCV2$~_r> zFwDgt9P3L^Q>bQK#26WVjpAKCQ;M_aPNhHC=?(4>BDwov`m8^Uvo}0F$Hc5au7y2j zaMFn4GCZX8OQuOk4E(DR6ZOcy9(%-pfxKeWET$66Vu@$)6d?P>W8tluONBYfBziVk z6N0D9^1CI%om4>dn&)2%6Xq9j#Nq`gGbrc2WD@;>=zha9nw|KOBs(zyD4bZbj%@h8 zgY+oY0`vN%2edi)U1}9BVjk&o2MiWNQJiZ$W6Hluy&M>rl2za1GBu{WAN`j=Y=938 zOj4i6RYxT)){`c6U$57xzgCK-=^e_KGA#r?zHdR4;}Yz|-5chvt^8Xda&QLQRc^r# z@4Vsl^Ur7^klrHjJ!-?bKWou%0d)V&uMoM>(m1jF&=kB~XEfdzwU8!} za1PLvJ+hi^tilba^7#ep!`VMxSol?)jGAy%q8VPZH0>hCNRYXb0O_D#eE{J>^O0Q(NN*LNeh^pcI<|M}iyt)dZ0a})FGh}Ip zaorqWd2?JE>Z+_m7RA_={Fgzdv*~rxcli8k5#frO3QYYd9 zNpcbX5=V$r=xOlM9=r$>9${iIn8*ba_k)SQfr)%C7})|w(xNl+RWqFtgusLMotF{y zHJO-%8lf#XE$Aid9 ziB}$l$yKNWK7xi||7Zt}3^Y@;d`B8LS+^q@r>|2*j17WsPvFCf!CF}`o<8x^tqp+4 zaVAiyr_TpzJ_GaUZF4*m4Zc2Ay$|%m+rT@mLyv(0m79|JzxZ3Ty=FGgYr^9f zH`dhANHRh5ok{uC*_qXFmia53IKLuujam!zWr7Ph1M=5*qrWG$El4s2odLb=&2_Yw zQwiA19!S8d@9=nKM@?1ti^kFGwqkCk7&CvNyjBNiyt#bdaoCKf%SRZ95S)v%1v^M) z2{`JFFlM3J2nl=fA#`XRU#k~`nYg?g>Fp*7SZ^l|Jq_QYKO^Ic9Hy$kK8S(($#K+S z@f@_}aWpBIXG8q;-{m?}Kd&_k=ij0|=p!SG%x ze~R`ny$M83!U0MDJKB}{bfsn)mO)>Huj&;(=x5?@;q&l&)eXS5w2h&YB^UZF!~OO6 zvBsf*T;JLcVq!+of7e;s7K2eeCJnPi-_I~$-5o#!)Lnb*hp>_bF@A>fEe z-D)kInjVu!8hN-E`TXvWJYa-hu$=-LH1hVfvxI;YGRL1rmG(z z9d4$Cd8c6Zf)0$9y8b7YO9KsaCuiY)AeZ5SNoCY~IBhO{g)NosbRwn&8$M0q4cTZt zcdvN37-C5eR6LjLzKIpGKq_ub<2lIi7OA-Y6j8_ssdyh%d{`J;p!$)(BJMjBlJs$p2j~(ut;1ee4 zYO@qS368^MPKNk>k7%ypPMpVwYj{B$=Zxm8yf5P?k-5ja*F=x<6U+DKDO1^;~ zdlMc36di?gLx6-pm%PeGX}qJ~3->CPV%jw#9--uCO0tt7aVB&po1RY-$Rf@RQVXbg z!q4LDO!tvhI4k0`u&P&58MQIeu$N(JT314tA9W*pS(y>Ul-?wuwinC?9MtXuY8S!e zHu@>6i_54hIc+}lV!aqwcTC-q4c-Gxn#DE}`SlM>GSMgHRZ7+Qw4Re*;?UJmN8(IEU(0j<7sn%b8%vv`L;whUT zta-_;Jk4@jNoCa8NJIW>(V#wjf#g+W$|Kx#!6jQVitIJPjnPE5gtG-zgnNVFQW-Uq za4Y(x$M~w*UZ$Z_BHW#sOmAvXx4OOb72MNQFX+8fa9Ou|nf8@bM%|Az`4`<@NVg@x z#43AfNC33na#m#l+?Ykif^~KQTt6k(LAb2wpM{=8->MBxoW;gDJsE)>9jXcT_T zS+VFILLrq=dlH3(4|J@yD-%;;F{Er`*szkG^It9Px72@`IB;T5wHOc`T?3+xoC47=3SpY~@k1qPbqUlVtAAWi|m`K&+A#MXzxn zKd?glz=%a`ff8Np&A%P;X_j#w4VE5ZfqzZ%1F6qRwwkk*s@xSrX~en^g(e}5EG*E?%B(VV4HGJ(pI+-t-}wui&QeUZ6pU&mHlw|AV&A@QS`b@NmFuG5Q}f&Z5(he z;i~Q4^*pM5=X;jauNq@3Bzp;20)jfZE2{0piV@XzK{}+`y7G||JWcZA;1?)*}EZCJ)M$JN6>q^Ev z8`hN^?!>sug1CBfxkGS2qIyxyD8XeV9cB5hq%!JHNK;pWS58mtv?>Wisn?Fx=78fd z26tj{)7KZ`2-(_rsZy;~<)H)2$~H}nCpjyY`?yp|Wz@-3WmqpmZlouWZ2WYIJaV(OylE|?jbX!;2z_l8?pOe?93 z`X$n!vri}dvk8-@MCU}obkxFB_cQNTXuO~1te9|tU{V=%8q#9L`ERS)H`O5%CS!~6 zPb4Q^>_$9F<^0!4H%4^nT^jMNcWIqEnAdbt1b7;36_)5ZPA%_mNR; z5yj0@zea*yj+p)LMy4+j0#KV`P0{F8w8#`^MJ^nfKKiD?okWXFk6q95uL`z7-JOis z%kqC!8yP&pS?P9vVKyZ)J&iQvPm$@Rv)G-~Vf%hgaLIog^%^g@+@`=>Gr{G^biUwH z8TA#yjS`vm6x`H6B<|upOm8mf3An2`EB%vQaH)*iN9Z*~rvB^5ULqsY;R3h-Av8IR zhXs)R>CZxRsd|bGj_AwOGq!MppRr1aJEvFyW+Y(V}>Q@ z@FE@R2p$yh+9Lb*I|iSmf&ai+QR<_DMrG7-gci{eGzDhVpksz$QjAJ^{kvd#sm-<$ zOg6waoHpA%VNPK6H6#Q*=+K=&R{?xeBhoH_tk(@J4FnxqkkI4FH?Ks%@z(;%BEp5V z&y9@gm7_$IAJRx6hpl(es9GVV?`qa=GK6VttwXyayI+?A;78Gfr?Wyl~9y ze#OwqMT?p1cVP3TfJT(7cXE?=u#{G4!B!b(C1y@y-Xvze2x+a8>!O5pa_^@yE(J|S zqq$sg50mAC$&P}{K4uxqPh#ffNJqrXXNO-nX6`9fQe0=Oa`AR%5b`b!JLoymW*huU@j(Cd7N32$<~vcHeXsA)(budO!R`y zgP6Lvj2FyHHPJK^Om6h^1(V9CuOJON4KZ_X!F1HZ{O}v*{Wz%^yszP`#EMSAq%vwh zq_voNp{&dOcVgy)#1rVq9j4p1{?2FYr0O<4F~1>BL*RbNWtdnPPdgPHIHYwu4r#?Z zMq*|sZYxjx=&eGJu_I@HAHDkobSi{$>yYSbzU+qo*x8s>RrUIQyH37mEGC?5{h8 zgj(~WSW#Ms|n&h&<2Jsme&aL-b`z`aXwS-1O{b_wndA|38ysBf78%-S*b zxos?f?g-k+!PFN(j#6fcFiO?AoG`C&X_i9WUZzkuq?SehO8}RUrvQbYa8@k3r%*^` zR4Y;VpPv0aO4Os$Q9~nbDO!yEHqNU=Oze%k>^yS+YAcJWohJ8#lI_mfN>%QPdWW(E zMGbc&9g4#03V3aiO%${y8u)b1N~Dk|Xe_cugci|pyx)$L8fDJ*a>2Zh23F8(N5N#n zUdAd}$p*Nb)8_p}VNPHeFheo6Zh70bumrl0hk%Ipb5`{FfathXeFzCX#(wb5xW71O z+lF9K)x06$A-3+5qeR%DIop#%YX#V)$>&k++0D#Y7HJ2y#S5SJaJEvFyQ11@EJRUl z5z-;mUM=9YRr`{FXKLV!I4i167c^FFCqj!*?e@0kQLRHT6%2()wRZ?6t9CaNFRI;AeFx9$%SzEQIH?ahUQj>-R>IxvomrseBOV!y(XaP3Q*?!RSug%$72^f`qdOIuE zs8vJ!`Nwm%4WuFK%YV`0&$2eG{o3*8xi6Ua?piQZpG6_@=PZ_k#GlU~t#tq&O%3Y+ zItp$m{?wbx>w-H}Q~dj!l~GWJ;8Gd&M#44D**-q_!tv*-*33#M{?w~XlPcSgEkd$A zrAnUH`JCBW$?<0;(vh|{7MM}zY`@#c;%SYTmTb+>*#eF~9}~<;@u6NoCZwLZ>1AT+@nq55=E4@0|tnF|u!9_7+Sw;dLwr zo_kd{Ag#rpZ~r&r&yiFo=-7SRh2zgVTX6hoHO8Mx+-&2zqaJ@o&hh>*^H0W~?v^aK zQ2g0Vi$8x`&-z_T_d#!i4U`qHKAUAI@#h?*VKavK^9GcO8h|?;pBE#oxu332u=|PQ`16An ztXJyFWh|jATN{5e?wSI}Sv4yH^1IsQyyKuq0T!U=Qt$2Ci#`16zI%=wU@ zchM=lN&v6aIL{P7_5`a~3NpuAj`V+gj`ty|0Ae{jAkvni#h=&UJwXxi=fP&oRcbA+ z234}$UnRYuf{~J4!P!bx?n;odiy4+69j02(n@X3%Wd9Pgvp9UGxtGcz_nG{>v+ zHsNztz#38z>MN1#9?n*(a#ytb8?!BQyfsLNw7c*UHl2aBOs9pQE!DtNIV;+ISJ0@8 zx|q-+v^xlxQRjF+U&{p3h=#QL6=y}eLj{xPc<<)4*_9ur-591bSDWM2C6Fh8UuY)i z5N(`FF+L9Qw5z<;Gke(OT3A}qT!%Ud^n$KuSiHpK?}A*D6(V4BDHjj4-w% z7qPKT3L3CJ2RcMBpQrHIKeb&qPbWw zIR<@RFq>1OcoAvPX^2643Z^4Sr;fR}oO%C|)C}HNaaLj}yI@iowGYx-47yOwYs@xG z1D^l%zJa~O6X>|p8P$8~G37~1WBW$gIZ!2g*`CGr`tVuJco4^XT2ES%>>Dj5{Cbz* z#@4jPEaK5Yao}qw%>S!i7ROz5A7m`%tcas4i(5j=45T4qLumP35}87jsm&b0oJqqK zgqC*;CadiLi(95P4{_Su;4wCZx*S@T0y7j^>O}swiizw;o*6_o5Wsyr|0nvJr~Vy@ zlU7SoR;u63BEZ7Zzp=gb4#ENU);{`JK-*7DA9=;s&`1F*XlB`S-uzUyG)_+=94Yec8ONGO`XygPcI&fB603D~-O3$;%N_ikgj|AkJ2*a#xIJ9LrIZ zk%x3B5@{pgwFURIpk1SZzsy-NnG`{zGHQE5i|8EICz5KT%yV`V%qa*QsB`Emn5^9` ztQZ;SY~!@~>_cH5VFEBiai*@_A3hZcke7!9&T>}V)-=&{salML9%uGVG{->0=UHtg zhV)3JR9|hThM})EQv*;t6EG@!w|BU!HpU}{I1@9S>^8`V>t)pnG+%0P9`!a9=7y4n zP+u#_=5w}EmAj(eIV?y~?_8uq>g_4uwbi?LIZG}_17F2iQLkOlSiOA+EkeEi`sY#a z-GVtE!7HhEtYETwk2CS2-jkd*Uph8Sz0U!&wt5=~;84xITq=O-p#_>e z*J*8VzCiQOsdq2|L)@FKtX`vDWv){@<3LLNgAJ-}q%~h?vU7d{tG^UxCZ0=QY;W`l zYiNMh+qLGb1e&k2ASBRy18Hc8c9d0(3F`~&f*T4n^)|C~8RHJo8usU$mEk}?!KE^4 z4&fRnJD=)x;Xrd+JhMVUqtOZXmMYW97$MqQrAnUQ*uiYcWaloVBaLk;Fr!X(9{ZTt zNJE!K##X~wnd~eU%t_Q*r*qo;&giht;wquDIqn=uZ3nts}cPs~)?A(L27HGb$4o~>61)3A6PS8<(Q#9|T z$C)Q!+E5RjnOG}v<~2{8C(b;94ile6GRB!zby*rCg3{=r#hIB)S!*ZhKB#bTRvh*w zmdr{jqi#VOmJkdWsEf}-8N``sK};EP;7yVrF=l%Vb0}u`nX}@`o)AnbqfX(p`Snq3 z31*HnlbO!kS)wwX$Y%xc8|rdEskNkHB1}T`OUWdd9EzV>SM2j757>pm!q7 z;4xwx*kgKxMFk{%EzTqbEW2==xq9*+#+g<#tD$zB`TmEZ1})q#=dAQ4eOM(DXF8FF z8Ys?u=zjJsW{wAaag0k{qfv501-Dvj=wk$z8_+S9qVxdAk&YH;&KBHIoT+Q1j^MsW z{6K1r1(zGqbAroV^YeroW;PUO_5fz>ICIGdEPxXWzL5LjZmj>gaBq~oIfIfY%{+wwGwBZMw;VHvYBNtp#NB$IiG5QY?^fov#9gO znRid96=z;7yw#R|@%t>St)v~)Fh{aSIa{g9T``{e!YV5xky+KxKrO9v9>HBHXlpg_ zuAG(DyMl!%g8K~V$iCrTU`CBIzg)ruH$fLieZv9Higrf}CYi4KAg9f`Lm56-+Pjtq3MhXu3IVet$%m zdaq|X^$AT~y{`-4_gb&?K4+y@%3u&oX!bxti!*sbb9bHd#hD}oeHd~6O{+f=)e!ds zH)!g;K%_}({ex|tALes=zEGsuDS&rMc;?rRH2?7~%kz89cYVNFi8M1=wi0P}LmE1w zNORcmu-@R?8paJpnz~rC1^0mFweJ#K*3*6#u}okUysYbmBhArLWhm0rtK9hx zvr&Oe`nD&uhlHl1+$qZnqGp*9c2ZJNsdBQAq_eWk>*2!>8ORd`)%g^QjPbcoE0k` zCzw=5%|lv?G#9GpV*YE9W+K%I9Zc^W&41~UX5=o-wT~F%%s2#&+8O<`*d`u2qksQz zEZWgQG2EnunBOd7G0dX-sQ!D-iWtVSm}M&SZ%9M5h7hwc%0!*Yd{Qvi&|n1N!fe50 zbu|;r3=(Y%PMdq(%_dNfL(G-uh)#W#TqiPJ0LQSC-K+Kzz6{5F!>INjhZz^6r zF&AI_{WlNldk6;n*XvX(9?;gx|8TG7h{p^*CE9tYy}z;+YDbs@|HWFEO~WEkF`To~ z1&c-`!aM@THJ?)dF7_$)IKrGExSAPy+;T7L8iqHHHb`GScuN zA-Yucal)K5RI?X~Fg-vsoQKjWtXasMe?#3kC~PQz9D~eZ90`=>A}xD0OaF5x^?OkT zsC0SSpIIx9d8k%w`SBU%si_smfjP-|sTRGRd_V=}_=7RKP<) zxh}E|Z?VWmYv8*$D@q+9XjDeMm(U`5gSxpINw3od(@T0y6ikjS8*$p) zWk{GSc>gpBL60qUBHIh#FzTHlfi42bdi|88f!NZEgdSV=g&QpUOOfR`f<;wFuM26D z-hwrWUlynxmFY!0g5<3%(o*K}0hfR};Y}7Qoh~3>Si)KHuML=9S>bDlv^8^>9F;lQ zp1=yU_h>z@AzdR#%{8QMg0zoBSuRpos8^j7h3hlJbP)* zUaDhqTCEs4>C}15wCD|HdJ}07mCTZ?kF%Ak+!Zse$CQhiCLkR$(+_@O@Y-gYB536r zcqh(^nSR1Dk(T`_(vfC59GFqfbjv@O;KuNiWTtyLEB^O>!DKUifYauggTu_U0n-_2 zrqcxQW35}ADS&LIO&A1b+5!nJM#h&?PO06_;(bd|4|b6d^cea4Q|;?W5)gOqYdC~3 zM#uxv-)AfOy8=q>dofv6c%Byp{QW^gPZn*#|B|0sJF|jw8u~o!^w(LEdPq5!vl1P* zWKFH4GHPq2wVtfkps=27LG;!B z2L*5ud>2{S;{wQ`aX|PfRO1-geD!T%o!mm8p_2=ZMRlRH5WwS_$4(VM4z%87KpA{4 zMj8|v;^IMqNuw_#*Pp-2T-VXK{))5Wu!agIl~M0TT8oSKs`tRj!g9&RB9{6|LjD`% zwE$F3TMcBobc+s-`bdNNydPW1X<`VXf2@PAd@C8V>KE7?ox(ok}lUpwV67E%X|&B6$y7 zZ(JBa($L>ZCNHZfObxR^|E2O4LgB2T}}M7E`v2SnBtzSv zqm3CB{lxOGJ!WVntmSGR@oLUWpS6V9lrh5xNNbk*O@H>Z@jPa@O>jeFhF3JbuAR>! zyGiR`zvQgAy*mY$`@*{jH_Djd+>cCeYCyM_*EHOR1h)n02|}AJxU5@~;8GbimT)87 z>07|8J!WVrfOo_DkvqLg0C~)?ScFlke#8m$cR8A+(3s&)p)eF#=oGGhi8+6U!WvMx zle1#c!x={+i+hm%kDu>KqzX{!^pr?jGOUhk`yMt9XS)f1hl1;9gxvq7$^GXSnJX*l z8x_O~lXr8rQkA=+-X~as5{ykjI@CwD7x0kC7HQzm33z7>{7ueEFm{cgQ5p3*LJLzW zsbQO+lp1BrZENddaGc1sm<OPc9;{G3e3=$K_~LW3oL<4DQ1BL zOajQk*bLEesrnQW`k3M6Lx1&r*G&YAs+L`LL2ZUkb+x{tR&@RT4-pDoqRISnVdqiO z3F_!5SvO}ZRkuO3SESBNTGuTJfzU~HSmh(Sym%8@UJ;53cX9vSfROu7NJlR zFrzAToM3){c0~#;5=>TTJ;7v;lE7(mTHi2*zT*p5s7_=%0d!If0|}%FAS-k!O9RpM zr$}hgHSctI{or4VuE!EED*HZJk41uS&69l&dTjlN@8P;Z8t;WBpO>nv`_dZSiR$6? zmGf9VqqXR)D`zFVUcpk3$>-0I)|~!+N0`$eCb-LjxGOZZZ+?z(oySF@dpIkd$$f%L zWz)B>rC~v)T{>SfAG_)IX5Co3n)ANodRL ztn-XXP7h@T=v!uGcy8P>JK+$EeoL^?>Hg!$9Of!jYv-ppE1ks@7THQFqfSK{qOZhg z=2aW}j|2`H+X!w*{h{WZbM60S-km0{Q&83E281~9l*o{o3@cf zoJT<2@C?f)5e=P8XcuS22aXW!&r@Yw0`RY&WiWSWDo=&HzA=%lf4$i{-tTX6GSmY z{ZR8iqsy-@trbX)*%zV9pEPmrdYVOZCFvR!_#}HXXDd~?E4m!PQWIU?i*!hri2@$d zxlEs%!iGV;*KSjmAf)zlO7-+hUfY`2FcfYkvQqH--8A_JT`( zMq2C{P0P;-ZmcH2HwBmd{xyP2Wz_2km*&p!Pbba!KXgf0;21Xj74rZ51&BqvnWeN~ z)xT?1x00&slL3OItEFo3|Ex#N|07+?{{u6M|9^^Qlt{xE^8cLG{J$6m{68nmPxT1* z|3V>oX%UW2;S&Pbl_E<}s0iRb_Wwd5l~Efb?Q{=Ib&TvCk8dewRu@?4l}!Wrl}+xr za(`;K@k#mh<+V;za`EolhQnfF0=@CA)&`D|x5azLneh29elc2<&VvM}&$?1|`mAek zw0 z1x18QGg~ytW5Elw@PU!QKzz}wPbyFQ_?o~1*#mNQ^`*K{S9zsY-DIgQ^*d32nN-JZ zBT1^GGU`RbMzA-d0A=YeGSJ9H@~Z@JERBBP{xSt{8QIe+kx{9-mJ??GjclMIkkLRh zERyRK?o?PH9twaVAC{vKu=>2DuJ8Xu$RsFWA(ueO#B=(sQ`AFt!GLMMS3AuSadiis2x{sl{LC+KTK1y)Tez3$Z6ddKy*Fq^s#y8U}#lOO| zF0h!j4%6}Up;zVZl#CqZd#CI3RQiy@E;h(1DF*l1b0>-YjnL|oKCWC`%7UU14M~0# zXJy!JXD!I;Qy-)?_xWIEm_;7hLAWccgBICKThkpPxSvuy3YYVM;Ce};Ke95ojCu@d zYlS@lR(F4WOOBEsk=NKrIu<4G0Da@_B(=Ox(0(NNfyD z;e@$gM!lGuUELRmfmUv3`3$T@WQHIfMG!%VeFTx4&=)K#*$=rHX_AQbl)ZjZK0Y&7 zz+dUYY7l+eiR49=ii?`1rWRgK-{O@(TNfO@BS;_7AtH2hE!2Z;5``XYlNNP<$!m_c z5G63z4UO1e)?R}-f8-s9?FkVl=|BC38*6G%7GpJca?NyB*y9jA)z(e2&vLd>mAj(9 z_gPF5t$m1eC|VmP;Gt;kAq{+U34@ch5cnR>O0;&LpmDS|iqImWwfew}8hK9^%oVIW zy#GQl*|?Jglilq_oHl26)jSsazpqIMdgQGWd6fWWXgz+W0CJDNilu?bdo2=rwDy^k z+XqdcNApQ-5~=Ls6?@&!VR(B)0QjH=7` zTug8^L{ARzGtNqvY!gh@WfrH+f9o8k%OAcB*QHM6Fadms0!v8XZvx1=JSha1s%MbU zb-59*z5OeZ_uB-DirP1b)a9RzXbNFXVXr~>DoR8X*v9&<9nn1cB#Une4MIS~G|r0n z%*?GsH1&|yBATl@h4mkA32rE&DbQ5iTyQ5-1Pa_M1()Yg-(iW$fQYom)3!40av~vG zvEU+yJIV8yiN5IQZnYlY7|d@T4FBLPIM`A4s0SKg6v!XNjuP$=>w3IR z?M#oiqq-Tg6tyu?1Ub6nBW7RabW_-;cuvU zPJ9qSU3ptvjE{EuaPI0s$Wgq+x#uZI(&Zd2eETldb1lH7FHz5(q$lOe#lXC0FmlvL zXt;(C`<8g8^@W&v2Z*tcLJeg$zA{T+C477;3%vslTvN7`v(iu+31i$)l8~m)1k<1| zK=0|D=WtIc$M;6*t8u=lA#uNyiW{e}8d?r~Cy23X8%=DIPXW(`I8(fCck zuNc2)@LPc2yZF()YXX753jC#bibnyr^S4KF&Qc_AgXGu!PLjx9Cie6RR7ZT*DPXa` z&&SnHtBpA;-?w~jD%~nrroMy(Z~|5Iaa$LC)id~Q%Vp{`dJ2S|jf)o1MWMqQm5wK- zFdbKEbSRt^IxIRJO)f;oX`&o-JQkG>!@D-Zyu{YJwYNd%eu5SYM-mZd<+riO;@hpWD%v2a4jzp4Q4{lkd3KX}X^6DWvj^nlxuT&eHsfM2%|x zF4<$8tyJZ%1hx%XbJFWrkhT_1Nx>K3sM}e#E?iNYHRx*us}l_k0NstVVw>e6p~HqXO5!trHd z+2=PJeGWbi5Z>q5QZN$|;~cr!iPx;VJ6Ac}-7!$@4%K(w;?Hop!|%I0m%6*pQo5Ha zooD%58SnKf>l|O!Dyg(pe6P~ZNl?4IkjFSoEeM7a?0Pj7lRnhdBp3*&draLJ%tr(s z#83aLr{9dYrukQ=QsZ>Dak?tPJ~7=4W&gq_rez0aAa> z=FgU57d|g5hLAVb3W+5<-I%sf_=D&8Py_MDU&&0;)(ahO7=Y&^8nZi;6YB0B=$e&E ztMWC?JKBqXv=pzW-qQnvu$I~IPiY@cbV8yNN5sAbAjNvhmVz%Gmz38-+F(9m&PS?2 zqlQT}t*jfPzBqwD9gh##?!*vB{TH(6T4qsio5rRjlM@{|ZN3xx_I2~I%(w$J!Gtov zZ!m1Jy7N+!t?ulU)Euy$0YV0)q!EW|IVQw>DMVZu=)Vz+M51yf6;S6P4a81_*hxoB6vPoh#H$GLy?h;UBq4rA zSx>=2LbM4Y6;QK~7HP{ULWpcgzR~m1EIc9N+x|H)?gj>DyNo~>uZ|VS#RPer36`DW zCy}-+ZK;17)}WA>AYut2)(;{&h{zU#IFArt5kxAWzRGEH)fM3isla!op^$0xMP@yY zWCQvR_92^iKm84-|CGvfuS4krldb1erltC5mk2*s8GLR|wCCQ|pQAlYf;TqWbI<9| z%@01;JKA$k>d(Cxe6D4*=L+@brU#!pc`gbcWA*1Ug3oP;_FQZIIVU~W9IZ=zJ>t2_ zK1sNYh6wRoDUav1kw+)tQEtGHUwm-Qrw_I~!#lbr#m87?_K1s#N&nWN*b5vKv1VIwsfq`M37NwgX@qb3%yI;N*#X_%qT2&{3q?SYG*;g@!zIkf z$M}XDEk4H|T<2*l#|1CVSMSp}| z&H)urec_I0)(SkdNPmdl6c^>8*!S_!bp0XScfpN?d9Z(0;F){%XQI+f@9X#V)E^x*?z8 zZ|88gbhu-)-IEYbi4I^2tcJZH(;C=rEo_fnG}$Tfj*@kG4IK)CFiPhC;%`eXCMi2J zIqwpuYi*L#otWZqTaz4_@!6hxlJbu^y4gz+%Lhuu?Xi;SmWu^7otv@IH8ee^f7gD%~0N{X^;IVX|Wu0WFsfXJIas5I%2yy-Cdm{Z%6Jxth)CXGyGCkyopEN8R3%( z1&h^K0tG+;o(i5!q>+CFwVU`%KqR&Ggj&xDp|)ulwJ$wPjG%^Bk%*x7?GUwf4Aj<9 z(=SNvU;+iTn}5DAwaHPbz4IZK?cU=;?P$)5Y=08U7po_ch@f`Riu20W1v<_z+qVc5 z)VBKrYR4UoW(kYNGPUU%waYmx)b`S;wb!QhzUwKZVoQjW?bjzSMD1A;2dEv7r!Hg( zYyHuv{T*W+*sV+3&6gNP?K2|h#p-iNM9B8mRp*uMl^3M8pGNKHCoW8F)2P%A5Nf}s zgHdQ@!#FFlJtUMbR((il)Lx;rvY&NogDp%gLjC8rfHw#XGHt6LG&td9E```MH==sB{L!|Hv=IX!p8J3am59hqO| zCpa>zEXA}Z6}h|t$mR9L@DY7&4xDj6^qaS(Ih4WZqwu{*w*%L4&yBCsy9eSr-J@sl ztb%)PdWN2*dyZ6p0b$+*%>400kkuWR;=t^mf`#7RK+0;4zbM@gPxntkKAyTaj0-=9 z2@3W8E|>xO4*O=PSR)~zKZ+3ny-+L*#rmTdgmglk$;E)MNB#69n0BpA3$7y?N3`sn zuod_Qr>io4u_-6B#!^i0cmtIS5CsLdFn1T+qPH;9a2jqFMd?Ve)E^beh0+O^c72nqyD@(Wd;QuD=G7N2f;} zZ)&kOZ<00eIXz_S_DKAcJ^uFAvaF5^P5EuGg(H!!a~zZEM^K}sGf=3v(+zD#cA>4Y zKNUS_T3!>(5TFNz__Pl6v84R!?94L=(=89Ay(9&^+yMn;gn!1)r|l6&RRQ?6njZL9#Z>(yMKX$}b6~Iiuo_$qDG6 zm(&ETo*6}A>yo*an$;1t-UA`YdPK?#)Mq$hPQd%JZ+6Emv|_kxbp`6=H!bUDDqfdo zah)+wZ2HONsMGR#`M5+|<{8VgUVr^`ufHyyH7z!shtC@c7kqyBlR4DBco&Q7Xlf3| zD9SfhR3s&kaH zYCDkP$G#+OSYuNTKrSF6HB8t+e<^c&uA`0|wFLphyjMV-@y>2pNfuWj zF}F0WSMjMyla&0mj(`^%vEzB=!CDrV0wFiH%s9*sc`-;XYeXJBuE=4k3hYBm+Ja`L zj>PgPDd(DoWPtW9G>v15q0vC|Q4Y()xTD|>8bfwUo#pT-)F9EYIxj`kkFP~w@SVSw za0c`foI{B*F>bkZ)y*+6iruS|GI5Y)DUs37NX8{aAMv!IwyPVjD}bBYtNwByo4_jV z*kRoLYyuqCma%o<^@L9&fx6xKUbQpoT5R%-M(sLhEwS`WoZU(k85v`~s&HN73o(<% z*NJ~2#9JB?@%xzRfz4vBz-uXe0~x$`e~T{YcaRS~>P617G`@J9rSu~t;VFX;eqwlV z7ji+&FDMg+`85^QbW_>xhPE+2a{_VEA2!t=HZ=h-mZc_QcPt??Y2{9MSKoN#g$#<-n=eN>k(#CW0MhD# zuV53qkqSK&&xW+Te(1?B=*f=z@MKlACqb}|`3pT6Pfu1Go@~Axoahhb0$LqI6%Row zq>SIdnx>57NQUX+6tbb`nlZbqv_vGso@+wfYl_%n7e&-V9VA1&kw6NT;w`wSDZ&E6 ze0gC7%~?`#6F4BP844~56{MLL-%Jz?QT7Aq3|h%<%7j_T_XZ{!qhRpSIAp?&l-QyM zI5%y)9Fiz$?%JQ%gHq_i)n9U%R4;Tfo*J`k@X|Sy|SY0mTn`(?sY8b|(znR9( zT^cvTi0KGp$LLwCMtyaL)Y?O8ecksl#$!arHCnB2Q64h-leK=YF{?r=k+s5|X|-Pe zl2lTO*>0>rzwWbYwJzlgmYM12uQg2fL0)%jypAK=h~U*6thH#e)Ow3v>jsQLiPv6Q zt)EgpWDmFX7RBM^{Iz%?KO^pcLx#+R?5{=gS3Gw(N|J`MLwz8IZ!Em~2L zhN{dG)Hih0wi@cQ8mdJ@)!o(jChV#vVakBKGP|judXR{-;De>YpW8QGz z2}99pcP*FNuaw$f^u3BvJ4vdkR{LzqN4JV-`stxr#WpA-Qa|WYwOZ#sEtM?krdh?+ zTCEHCf@Nk)(+GKn@*zW6(Mwc%5*8lG9{E8r zlsbIcQYIW^1Sx@h~agc~BCrO>BGnut#eUE8G9Oes_nfIKZh-kj+ z6^-@R;HZf8Y{lykDx9ZxIE_?X6r|#7>_Q^W9}_C(`243RQj*{Ul zd8A@|7Pw`-;Kf=&p03s+k1I5ga4UkmG?m=)9QxoV!s@=sD)#XuU~Bc6M{!ZBn_QKz z7a~i&?&r|Okgs@w=z$yzM6blfP(#)rLTz{zg{43L5|Y3&jgcIxP-BGN@fB&Yp#~ZE z6d;y_LF8)?^-;{7BaI4g6~wEb^oDhvfyAGwDv6i1MyBksE7j_>a*9#_>~z~9Gz<)E z$_d&jWDBb-UaO3jk%-0!OEgqOCn~jyLRL9DAGMtLIV1rG`ZN+}KRg}HtPGHILXaU7 z8&?R(R{*KTf6m56BisRmw=dJCVsM8Eq6_DY9lljA9Nd^o7(PFexv0GOtEsjlbDX8+xaK5GY{qsaF0*6W!4m6H_K$KYo1VT(9-{F zQ^r12lE36Uvsgt(Rp9cx#A%R74LTvlQv3rhQn~@sk5IdIO-V^an#Nr>dpiFvCUaW- zz84vPUP>Z$BReQlc6UmA&4$8r7mcHRIQ!qADH`7K6Fv-td0!?!@8PVh zJRP~6ZpkhoAJT>AFcUEV6 z88uaBfCgy7!0>PeXc0Cp#m0-(YDp?u>ixBec<~=3#dktG&-C3)i9$q?f>#$` zWsYSR?dwRh6cd6(JcCqFicWX;6q-@A%%o9B`nQ;)$$B%6-_Nd5=D!lB58+h1r*s=0 zKV`4ai|0b6-q%Ydp_Id&M#j(@zBN?hpl_z3M4?_{*Xwxi4j1@4#uT9fhkUt)0t55{ zpS&Eb;siSTP>F*+Z2Su&3LjMyR@%K9Ea8nPfj7y9mB1{$l$iYzEeH@*j*?T8>Zt*c z<~OTP8cJ{XeQGHEj$V4nf?$2k4Llw6DTWf0^%4!gjn#xO8^eVVONV?z3k5;>5#-naJTDq$K%+ItV5&i_+kGD!O8-+Y zJpiRet*bBs21)1CsgYdrd zwKNoLs27~bRl#R;j&YQq>FJQdZy3a~!?y?hZ^**8Aje|43dTg=$I{xxD=FdJ?e#4* zlmdlPDo(iLLMPNsmxUMF=NoS*biZC`j99u>=y*h-n+%0$=9B6B=6RBeR;GiY%zht^ z5`^*e8-fll6Jw~zak-JYuklz&5S4nNJ9m&lX%(pv6}@UGGe;QjER$v^bD3VI zD!j~#?Tlr9L%$xPjb0GJQWydYLQB+?^o*g7rbI7u zY+iUpj~EK=^9{pewD~C5Id*P`&e6e8ou$J(p%%Brwa&(CRdg*G*R1Z~bIEi~4tNBw zjX;IIGcm^J=-MH=W?341@QQZ0xEU9nA;8D!+NZ{ACg|Sx78Ry&0(*zt#`{;({Taq< z0qD^`A&k;JZE)fKunS)%0; zF$)?}VBl!%cu_%3*f2z5?LR!QjYvG84#+`(g+OcFmx#xIL9Bcw;^HCrmEpGnzhCjY z1~D?l%8#Ei{+`A)FMc)nU61(r9{gUwZz6D>#^2BJ`xU?IF{?Qezj^p=#Lt8o-LCkJ z#cu(AU*ng6{VqN5dknuf@!N&pzffN#{_e)_IDTd(zJZ^SLFZ z1_MtD&iA55d)dSB_OhuBY>Ho^?ZMef{zBT^Y_+8q`|6rb^Hky&@!d(@{Ex@#|0Lbv3xgS@la^;@C!RSgMG!x9D);^UHQ zwETKiy8KFYpZ-V$@Q0SBs$0uUE2MFou5N;JW^lQ#PRZbzx;n{YXY=lDpDr6SsAt}d zeGAc)CwE$iO#XGgysNLxb&P?p2$-x>q?PwjEv;;(tI{R&-Sz<*!O~*FuXHPObhR5~ z5&oS^R4XNqeIM_%GGHEwzMtt8r+BVaN9y@sI}lmomI+jAK2v{qpyz?8_oa6QguZ3X zKvlPLR+nCP!oEw_{e-LKDD`DzOLJrx=-X?3FP4c$yLGq=>oZz^*|urRVxd|6C8RVKSZ2 zm{>ZznN%DdRUJRb4pB-xyP3_kejxlMHd+cxwJvsIdf8L^mp%1GCie;HJcuX5IQhgH}r6SMp zY#e5Aa;fVh??!iJ!^ff?@l+ku1$x36BvS2-W$Uu68M&37hr4AbQ$%4!b&J5YP~Brv zc^WF-jqO%a;*_*ZA_}WaFF2%n_c59NcuXc-fx*t$EIDGA-FJMdOQ0L<>sN0ATlOiH z6IbRg+Zy`@xxI;JWT1H-zCJg0`7z~}>+-A2_oRxpD>7Z>8?l~g^=v!=8yav^-mn)N zDG<}E5rflo#qHul?R%)0)Nqs4C#W4S$lmi;&;hqC}M z4KJctS9mEGCgxZo8R^)3Cnjf<`{%ls5QUg`1n}&BS zMA*?Ri^e7&Q}(&KYzHZS0Bc_yDR)rMzl;>ot@dx;dO{RZE_m)(elS?IrH{vLkKK7p z0XGri5RU6R$0wY&($6HE;$zA?xv#tp)@SpCTFUH)<7Iz|y}{`1-@2`YsMZxnj^PWp z=n_&4{I%FmNevap9?<0|12iK(U#58E=2kDu(_UdAsO_A}o9h+Lcg`#oVF@sm7~ZW1zcnBP3!Eq=p+ z&c|;Bzhu}8yzk`qb@=-a`R(Jkm>KLbev(Jh$;^Buzop3Ivguk+neuDmmkje0{}A7j z?mFjvDNjiwc_iIxzJJ3{5#^?9I$?VJbNVb0CxI0pLf0>jKcr6JcjS9B?n{i1Rt zDj&StB}DaQ+0U^-9bV8c{QXq8t6%slsc@TPUw!4YrNTS=g>OuSH}?zwRVsX4zwjRr zjy+!P*XFnC#v0b?(tT`kgw#i^n8*+DY)FPO$Nq1V3{U{8T4+ z=$Hh{odkF31Px9Cj&C@vn5PqHG{vrzFO4y^TQWa3jSz)Azcnj2(746Z5TWD!)=B=F zYuPU8GNNzg`-{8$?$>;gs}ugl=Yk{rWm|k^NA0juhINPUz+Ru(8PD;V+kK-u7`vBP zSz@*k^r6p)Pc^I+m@B^+JX>;}=r4QGFb~z{OU_<$#&h^IM!)Va+Z;NDWT8R+vN`xX zt1P>=AUM#lzJe+^^h7C#Cwl1P)JBh5so@u zbFs1c&t!{F1x+S~brqfn+SS_eY>aEoUfB}rG^`WZ61qff30*Fcp^uHS-eC4bqi{J} zk-e$2gpWE8&Z<5{_U^jg)9H zyvs6;NV&2S{%Q!QM;VD(#H|D)`|Xn+bxVErECtf`^y*ZboYN}(?%V1_-_F8jDah0d zn-G$Ztg><@g5JpZmn5Fg5$aR>9Qes3iPHCNJ;ZzJzOAq-EP3D7VyC1hE>Md zzAKogL_}|X9I6;#M5gC1@Z8=q6N}*$Q87SIkIvEK#4CRH#f}<1%qy5O`>gAr!X3d2 z1Cg6@t(2jH1UTn!`iTAA6%JG_2g%Emy&#dCq85Yyl%zU32DB+u}Sem`lZ@%p} zWAq|Etlov&%$W;A~-XBBwCD`S@5@x zW!u_ks31yFV@byC5pQ?}Ck9R{-60)pP1>#`n?eH_t%hzXYhAV*6^zPu%vjX(r!D?5iNFUj=KBJB-NW#fTvDV_nd>(;3$3hwjp|;>i7( zZs~%%^6eL&Qq!WwdMqkmeUrGBSDFdz?|{I}-XJAKCSyTC9k)`4p276gk5BjY(j(?! z&ql_xrT5MC6Yg?5>wVVUVt6%;* zm*>IO_##mXqIz+5)t_Q<|Lo_+E4J{oiWHXly8Q&PPC|;_ZojRPEbkGf?Hhqh~;=tEmBQ4ZS9#$M;2 zpsg@1=L_^pAKE@ZMi#VPObRvXg<~qeh4pj-x+Ta_k<9gISU5DZb`!LV{&P1+<}oF+ zi^d4}%bVqV*Vd7|!>Bkfr3kCKetD-WXh1|~->mW7R=4Shr zWbPl4TN*$4&qvL&aB$8L$>EpM7JT`_#Am?#nRCX!w1!hxH)2|)`MG@!uLQReEHmw; ze5y4i{z}A)048JeyF44O;FwckCt{t)@Ko+YPtwrBaK1uL<=AJCWq(zt9vj_uNEg`X z6nJP;{{l-m<aQs=MJbXesSdALMD`F1bnRarBAsA=QYa6t~WHCLaeRs#!;8>$79nE=L->a`lMp|AzP z+cz{|Vt9HmH%s5amr-bmINMomxYHrYoqD3T0WMI18BHO#2d6_YH^k^DSD2l^7v z#0R42k7oz08;bIcnjL=kJGwx1oF7C!<12ncSVP$}!IM%|RhkD-2%B%)<)CJRJH;5* z?9Wl65DRA!g{J4XK~jzYBaN|Thi`-1ksf7zc3374^8u z_Q?g0ZB*+aJI*sHMNx)Tk^ecXtb956Zr@Fov{e>MueYgAt+HOzr7Edt7VoNF0oN!y z5FG0l@p)FRbrs{8#pnP8PuP_;eULe05G{m#`H`zROl8i=cVs&)p`1if{Uj78R!N{D zCZ`EJJ0Dg2z!7*l}dJe$W$?dce*+1q<~ZONa1o?o^QP#RH5{voE<^ zyyaBqEU{quB?g3(Sq4m-Bvk~ea(YSHhs~F~{nGwer^Pf{rM37>OWVKP+xnLq1IA?9 zqv5Y0X(a2k=;2YNa(>xq!+B|?>p3E=$@!}EoksM?RD-PAKu7^qPep31sJ3eO+3Zx@ z?Ddn?GYNnDNqsP-@B%YXY5!ZNWopqF?Vq-Pxp((3_gnqbYP=-NozuVEA0^WYCG6XW zDEW7qnFP3)#B#jq?+ZLD+UO;RCWeqn+Nkn;Or9R{BrEs_k#f?jM^Vx@iB^GZaB4UXwLM5we`*U8l16Pu09y5cBj1Ggl+%AOEr1lUR!Fv5>f;RS zdUvqecc8K;m+<;v6};JAt$4F@%eJW8h1Is5BW!p4M-s{BU)86cc)m7PqFD7`&x@2P z$58Rc+V$Zh?uPANPgSr;X?Wfop_(|n$QKC~xeH(NNeuG-2Ms$R^St78~V35(xJ z=aN@7*HCz-)WUFC{>LP@`JC3(N>#^g-N1gW6K_${9J^SxZm83`1L{+^Zuz-R>+a^| zb6S^Rol6IPcI!%8yc4FM5*#S4^wY|?YVURt<&W3iVNx&cjr`#YwD)eQ{J8Bs6>~~v zTBkQnr@g&nRC`BDB+Va?*4~Kj+4c7Kc=??6dj45^rJaWm*N@w}@lp$|dw9baXx%Ts z*6~|6sVTj6_dBgSRkyA}B57T*`qaJoux{yk`%k=lPU}jg$}ifRD`=(e&4HiQ-YTh= z_CEb^T6=|i$YkI(6Jjrp7D_R`M&Iz*0sZ|bY2v<#XAH^q9Tv+&o06ZoI3?;D(L|7%upP>XZ(N`9C zFT2x^dL~fw?xm4IXXB+J7XbplW5I9eCa`o$RL}JnW60C3Zk03d5lMHxLy#?WnN)Mr zmlZ)iE|GjLR-d}dJ~>;W-~evv$Mm71)HLPQ8d2#noW55p<@NSoBr^rh`0q5l%bG8| zhlLK_JoJGB-^9wI{JM+u$-lAY{5RAIbhx58Tg>;K%Ujv@<>#xV;C_VAGhmk}4^D}H z3sDpYAiM1i=xhiXV9kG{amSqiYDbKOJ8lUa2dB!&eJ*cNmKmF75@l~a zOA+THC&u2+w^hfcT)X`vO`JWV__^XsicnkZx$+`TKC}*R$uyyH(cHAylO>8OYY5ZO zFd7eAb@}JkQxPJu}h!d6Wv49~a8r$NI%!;wa71VfXerbzYG1jaYsW3Oc zb%Fey?-|tqpcI+*CvBY{8_0r92g-M)HLJjHU6)@eh6(2O%HkG(&5W^?=GMyM&BdE7 zF7kPt^eaX0v9h?!{V~RO9{;w+{a%l;t*p~Cv(vn4Ou&tdcwN3VtE8;UGqcNE+_fUV z(wsHcSF^=e{G3F^2ei)^E8sXXwz&jP@-xO7nKSYYBy?b~t|}?}*faCv;=L<8WHoBG z7{#paX7pukn^8n|f!UfhrWtq=s}2fO!F+2*{<$-9&z)6}IcuytYIaD!_Wel?k*|<> zq>m#b*4!;q1g@}!qiy;V|DX%|z-ZN_k4q$NF1aJtqw`XW^QMy*iKCmbk32 zv}Jz0)%~$~l@4TqR9=|q?n8;5C6c=XXbPJ_f~dP$FmaSmUwgi2m5}{Ih2U5($_Ici zY0h5=Lh!pm;e*zxPi+zR4X}nDK=Rl(@J@kaIe0%5J^D!3%7Lh(3plJeCWK+aoC3Z| ziZ_>ST{c9*f=c+A#nQ5L3*P9Capp@=;~HC*-o}2!H|fOZ>J@a=0v$7kYm<1R7w9g~ z(CrcE`JBQhuAo#$9#OqD{v4+x&(eTHWo`CvRHte;w7=yYwf;CjNdzLdv4THCoV}s` zdqU5kuy2@_<6>tul^ZoxPl#r}o6~6Mzeq|i?Id)cy6M+F@lt`S3EOcVYH4Q-WhTd{RemK z+hhg@YRvL^GoPAa)hCTI1oKIw4AtL3K_?jh@K;A^MzB1^S@L4=$S!AbkNHw@>x#4e zHQh*J!ut=AKH%ORa4%34@O4xc4K3#Dq30P4!;PBPNhVsJmq_MwU(0;=8FQTyoS5xc z2%ViatraqXscEhM#1gxeemiC&`_nJ~hZEU(sxil#$oh}DYP5(r&O&G8*_e?&{bTLS z9^IDUsRVMx0JI{SnrT{7GfmcHZ0f+3h1o_uGozD*B4l?X5cwAS?y|ENzkt|$dGnq- zi{Fd_Z|01#?vBc`o@K+Um`yxzjT3w|tSn!(JANS=)+&DEis+n5b057^+Q=->BO6ts z$o<&9QzaT#pCd*;tVg z?at5ZAS5&TRzV&VJ|yK!3u(x)6wrKMYBQ|tF6`{o4q}y^R(Ec)ZYF-G?rwEbSn3|9 z>%PpX8&is0L)UIly`k$Tv_OYuq3h0$zMY%5831zxz)nI2MBgsR+l)f1(8$~BGf#5h zv<8$j?whuSxf{&Q%pLjW*5b|KLwPGtFv_BfPp`i-;aYk! zzFBfhw^VUf`$U6_5ILx?PHfDN$u>Wc-wGKY z5^O6Cj-IM#l{ASUjSBDJb`NHV&l@3^Ss!9|HtJa*sV528o0`+N$co(XC0a zXQS6`wng6`5V`WgdQdXZ2uCyGw@}ONL}f_SkjMiUN~?*@AvQBUlbB4286h#W*on!C zk0T~aVn(VMSC12u9Y3{nfBmx3Y}cLKfzVdk5<=*?ZXi1^kLsM0-^aZNM{OG~MA#4{eqOUHmK3XvsLA0b;@daQ}vQ zQ`Hk6XSG>82lW zj`qKUZG0qxZNatKnPzz*y8`go!^|@1@O|OLz~FSSo@-33$PZ!gvC9r&n8^Oe2l4Yg z8}rRq!tbw~78#^;$d$zhjhEi{<^5eO6i~kV67A63p9AKXHTOu(foVdW;;%xz^slTI zjK~$@v!O=`DnV{+s-nxdIJF|*T``tRV0gJ)Z50Ke#aTu4(TaId-yXn% zc2Nx5-v{ZW7DZ07KdmMC%q*A(AcTs)XT8w5536-4X?|=wS)AKxw3bfYov}|ugPJ+{ zm1T!;tC+jIP?&D)XG|b9NGZkbhO8_O*vM^yr@zKe3e@Z-iHHrYq!O8-s(3};>bDOY zQmfd%Tp=^9-pFN5Rav%w1#2dh9kP9^B?7TRiq%j9@MDIST4xPEw<6!H7=9Fz;+a;( z@Je@&#Hh5oC`<>&xpP^Msnx48Y|!wEki4?PtX3eEIFt3 zu!76?hI@0RCMGg!sWHfx zrg`^+PQ(x=B7+E5ArVbZ#0V!MQzBgXwJW0^js$3$Yh=fl3DQNAQ@YJLm2^hwHnXR^ z{)PJTrr?OfMq)Ee^uqy@6KvF)Jxks%uYZ4~QL{O*ndod5hoQsvTv!@yV6#Xf%bQ9l z*&RQ#{;icwhMRY`kkxwz@0sy|>YZJGBg-g`iWv`RDxQ(At%%ItLG?{J&QT4vqNDZz zu7(8>Gu^8a(%{+(2^``CW)MhYYs(~XgcF!4fi(1j=tnekMHbh9WXI1fuip)9m=3kY zM-{DXnvNEzEh9c$UNd;jjOWQ~Ca=g;J(??lm_mAM%U6>$(@Xyh^n6DxfyJg0l8VMg zB9|J`4<bwV>n)gIgr!KXNhG{s+&Kgn`OI!jy6cdI!5x8s*eHK1FK}`sATku@*KXV?$KV40#=(UfpK2y#7T-)D-Bw{)Qas5_YwqGS9@cghP+>zzzp|A=TvJ6dBg&592y8;SF)62J;#=9$vSre<&+EX5StL$OINyDf?Y23`xz%G#~xIp;*mx^na~kjf{Be z4$<1oZ_x^+QhHmmEE}TQ(;<<3TIy5VfDP5{X|Ye@MF}TbhpKg_Zl}(>q|W|-YRp8k zmkY1Mbje(jYhIPlu$k3mUNszz>5Kw%#>jq(Ldk(OJv1V3N{+H+cmop6Mb3$Be^6^S zP+cNc=9fiRoK+lU+8th57WH~&b(ph8qS0i$<(LDl86({@3Xrn$+Gk*J#j&3jhvt-2 z;#lXg<15PEijgSEuBN}sK>^0v8u$`t7OGXFH`I9;8a2JkzODdV9+N6?6kYanJ z6llbJz@ajYO~#N$WfHst{RYlF2fSe#y#FJxgT*t`z+11|yutoGFAiuNM7ORe5LIiX z`(u#kd8ozX?=r6tDeq|VUo80ntmpfEG}1?24mDmd{$HfV$3ID@#^3SPM~#=H)%5=l zHU9Coqo`42FhSgN>>n$Qz+Kdcm?li)Oe*Xy^k72lPbmC zs*CGzN?)cvH8p1F;uJMz@t*ANTvb+*8pVTz6jY=O+Tav)kuIoP^u3!-kQP9VPx10^ zQ{yTrg-$yECaXZFln=syR#fQqOPmKJrCJVoH#7J!M*Tj8gf2lixlr>MOG>caq zCTaPy>lwsdwL7va*HzvZglU3;r$$DioWKdaAnCsy}voyO=odnqrhsOt>t zt48>JDt;k81RJ1mujeUQT6$(-^JZVQhUr6`xuLS!A5}(ga%h&7id8Mgb%FyWG>;W; zTsA@oF3UV;q>t;pZ za`;5E+a~~4DCdI#3I&V7k9;0fpPB?$O2N+Am{sy#!{LAxx-)>WL(KSqkDZ>f=N1ds zy+u`$w6}QDsi8^NaHmtl4|NTSHcwYIu)TdIFX?6XU_c{fFJbp+CkV~?uCha0nm!Zj z1C^?a@c3S?p>WRX2V=9@fBmMDB+3Z9<52$&JQQPzG6jW#`nU# z13mYCSu)jR)%)EoiEeLO#=zL+gm{}yq>fmC*Kpzj&wbq#7;f(jCvrXE@dVay?p%Fo zhS^cnJEn1*`nP)P50->P^Cpp=&4w zI`X;n$fx*-?#@EVlW2>4JFoswnP>W;@NQ4uF3-j}ZnAVv%3HisXI+x#lv(>HZ_~wb zZjwJU$i3rdhbDlAv*Rjd zGcx&XsE7&V;YIQod=6iaj{@g*^LJ$bUWB_1c99Sfr28|%7OXKS?N^M`CA2Ni{Td+KiU*Yt*aPp%tgMqOLHO@oR8kz0z~9PK+hei7%TIF$4b z3b$SM?^U_a2FzQqZ3{mKp^q#Im@sg?GbPp>`${&w)Lq}?%g@QC&_5CkBV=d^PP0yzN;z^J?QLG|vn& z(#{r=nHQQHs7WlSXwRB5Z(jWTRI*_F%+&jB@sm>TXL659vZ%AY;dXW;c5n;|I4X+| z;mFf-_XE&*?3esQq3`)ov@&-~{Xuu=L~s3}!ew6muMAG~imCM=%E7ZiRnzdC_~VtP z3{V+YXQkocu$xaXc8JA+tP7?n)mvh;_!w) zJ-M!q3t?O>-lhS8$Pzcn3~PRer*V~_T;7YEok@U@mcn#HfII6MGW#JJecJX?WivO+{PQ zmlc`M;X|M0Fw!t8b5HZVNuIIR?s3y4>QI!myu&_|JTgS)@jQBn{Cl{6gSw8wy;mtR z`k`O$mir%~|G^v5(SN$2e@^0v2;Cn#G4>7WTciI2-4$!?k9he4=s#83Ay-s)#*j=>H$FeI>N-0$^ZofJy;r$c)nk|)u-Ev%q0@#*1#Nnb>6g!(afE{$t zeOsh#cUS3tw%EhHC7!#t6A+o(8OA$R(+ zKvBF?)QDwUYg=M6FxbM0{hp_o&N?9dtWkp$Fr&V%*wG;UCIyn8Q;Y*RnZM!^AKi3WZ?2kCjaI6=Lanx?{0}?)o;3h<`=(K*0J(SsMHdh{bgItp4z{} zPb|eI^egcqjk5Z9f&L!OH+*4bJXc~f5r_fPyT8Sa_k(kQPCRs^+eb<_h!o830mm%S zHz96Eu5gP?EgORTWXot!2F5Ha2G?I)$iWnigMA>P?mV`f3yp{`5!}n>T>Zu8c^=3K zX4hYQZZcWj37iE94KyMZZY9EBr8XIhyD(3IIds#FI2o{SZQzs^=`e3Vp(W-G723Q( z??#EUfL(S8iJToP%mk{sv8=IW>(MYXmCP?&3?f^OJx%X0q2z3vJ_5%PTb3Fqy+`<( zZ&HSE3l^vi~cvyU?uf2t>yM(W}!?!6}50?k{4#d*y8IU0;dzna-#hSn0^)x7)NHwju zY5Ksn>3Pz$y!cJc(y-!Qqo%`HwB@KmBa?=@6Ol`JyIT~Om)H!R=PjLo#jg+15jxXeT0w>_(e4{W+J z=LiL783~*R^txBF4e0D@n7wTr!B(3TEC`;EJnhKC(^d~3&~)VxGTCI>LSMR9zMsm3 zHh1ffCwlG{!#8xai(1Ty@6RS_8P)#gcN~O$Y>;;W*WR(IvZ%#1YTzMvyGj<`d0GX@ zE+pCAM<;7}vL`{ZgUwf;{8*Rac{oZ!kUIG4qZ9V98S0cbsxf{U$-YFg3;QR#x#g!E z_oQnhg9}tl764%;(3a80)F6!yCu)}DBcCmKElDnI@po1wJZGb0AGInWj<}ZmSV5hv zC1R8`4UsJ)RPj@%d0b1ztV;YJuDkZ!JDpBH3i4#)*rmjw^6vge_L48JO04|BTGD@n z?9&e+snmZ@#w0PCig_d@nkQ!itrj*9WBXIKJv3A)S{=n&Opc<7QBc&*Gd5ju%}>@{ z&|K*<4!q?vU-d;lLUqlBt1<+c#TF%8U%BxapL>^AcWbRED6g0=Gw6J0q52NU5VkV3 zS52Z_63J(w`qV4aUmcVv79PLlMGTP_b=EN{GgR^ugIjbwBl<5O*-n>8J z&n;2f_m(_w)685iqgM8+j@CtfAg!WxH>~VaiziW@)Fq8U@MP=j$ZC#%2vVTLK<22|9MeI2> ztwHlugSY}4|jm3@N)htrfEx~YFt z4seS)P1#A&{n_Ag8YVq8EWKe>8`M$EHrtH}G(+H+uG*&{{ujF{OJ(}(uBs+J*;Ngv zXgq&TSB;YP9pT?`S|nZNb&625H($4Cr`@fH@89pMsZ{tc_EmF1zqTB&udcX@wp@7p zwn*=UoFY_P;35CPymGvL`I>_6U+kA#sQmMWP&4t#e%ZtIdSc}GIsJ0)w`t1)@~D2n z9&^>6dYN#|!wWp;XNUhY$5nemd*-6s7Pw;K4)0@6{@{ClnZu#S^E+xiZ53Ir_RRB$ zRd$91ws=;5BH1G&{$p;A>#0KCH+lGnm}c&hlaSl(8B~_&2=|Usw_9wwO0=$z_9_0k z{y^zHf*&j9d>zFIy9ujL&7AX?R?xaC#s3MsYawwM_E6*ym8vP+IaYGvhO< z_wy*}HsX_%^z#w_l#(Vdg_1@l+oC8*tP*5#aenqS>4YTS#<>7su#do_>8OA>MMill z(a@?l_Ia*pp?fZy13h7H=2Ern7h7R^@lv=C`PYw_iVBk8%K9@UZa zC`LXnQlFZhHmOe4?lJz%JLf^3r$0sAw^pFQg?f(X{HixXIp5A2=MF9enpUdO(1=5>NqUz53KNb-t#rwf05w0!@9D;``H- zAT^Dq)+T96nrwd}%_7_4C4D2>Jp9!8)gy!n>fb|Os*_LX{ab*fHArw zKFG6iE1I#6x-*!}R$rRH$ZB(E{h@)iJ@WR~`a>5leiIwd=C+E&`KwPz#ja1rE;+#| zp!UId774%WM=8&>z^Rny9FwvxCq9CdL%pkKy0J!ZQsymrMfH^cjy<#P6M;UqeQ{s= z^jSUV%w9`qJM9q$6k?UP%g!Pz{WmnHp3__yBv#q=6I^(#;%JTiO;U#^xVV;>`8dr? zT$?1aFfO4?zcoAGZ_VdeRH)EzEg$2zZY;sLeL|lZB#Tf31@0KXc|%d5pSJ?P$-!m6 zIZu?j!;1urVgX5v+S9JWW=809masY`DwPBFQ#||6kgN76hy4h;;#J}Z@Js+6U5 zyEA@5{h=aHV>x3a(Sk8>&0g>7;o}Gk{<&dWXb(Pu8@T3N4$7V(%30+HgCmXC=DN2# zjxX?D7gUZfhV^bcH0I&r9Sp+}eqL0L4+R<^pSo6otWgM4~*wM_3|AH$U+YK^INugldQddAq$` z57k?p^qMDJ&_GfTI29xPxxHgE`qTq{1qk!B~W6{aT&?I zO*0Y*$eu<&5wY3)qe1H~mo>^m;zM6I=<5_J#Pdxmg9kPT^nambe@^&F5gM&;4S2rnkw1r7`YL%6*=v{39WW*3`Hh?YDmS7oi59 z6=FYaHk6*QC)d&X8jhE`+v9`k4;F=5y=?=ED1(gj_;&B=K_dwcZfMvN`nhv9^aMtG zp!k4NIt9*M!Le2Z^0IbMgLnf5E2}S4SfSe-tgLdda^(jKD;EgXKvIqReA19UVb$`! z!r7COEp{^{9kmWQyH@%Mhayi(@5w%lVLl}N={J8rS3P)pUsfcGNXaC40kEi(Y)0f! zNoP;C$rpLFP$fQKyEHUsGP?-b{52-PDN6@|W-id|Zqc6cOn_ zfyBO>Kr#vu#2!&Z)o=auEuy~|+~QyhK-rshr^*yPg3(dM?QxT`T%JZzOZgJd#&;0oX%xc@|HNCH zJ>hi{9+{sNFl~S2=1;7OPb#fpW;?gP7ay1w89pKJP^I~5@qrnUaTj~@j(GE4@g8Wa z=Py{nMleT_K80Izf$v>MJR9p0-hsoj_)X$BF65TNR{cN7$>PhSUt7o z`ohoVDp2me6N2%DTQD@|KL9-|8)gP)z@$YB1Cc6*(^ke{z@%6V5wkKTe+2YPP6lwd zx%s8HIh5mfZw*AIxye!c*GV5O{%U3M)`?eT)tfdhhN3Ot&a((cF zNuP2luczS|p@eD8dnqhlK^<`vi><_vSp`x;T{acR&+sMw!n3)Dl)AVR>ffTcn-ld1 z>x1tVb8}!|gLz6Cf%fZSy^s1Td)f3>i*$Gu-t?8(Ej`}BZl6CgF4G^mC6m5>&Fr8v zxtatYXLRPk`ZCwjFQXKQ@0QP;_^F&nL1z%F8)|v8PH_K5bxNGQl0;N8Wt09+4nsUI z+rGuy@oq@bmFA)1&0w^JGXpQ%%i+96P2gp}`>n~J(xPCb_%*|t-C+)7vr&+Nq;bq< zqdsgWE$Bri-ILmInY`S?NHyC`PFL==v*}82*%|3lQA#BtD48G2y4bDge}1ea^)@f{ z)|7htQ|ir5y-k~_^QK!evHQl++Q;THdVJQs>M`-&>-h>!WdbM;$OMqwd%T4C%)a_v z#rn^4V(gpLx8D5v8|KoI-2RvsU*zfaf((=WzcXYewCL;=ySEN2O_@~sat0F2^15EJlvu_KeBI@QX@~V16sS8R`T8? z?{Dk(+vWWg-bE70qV2?sxa6}Q6Lx4%)IqZ7u@}j^^|Xt3@ym%sH_EQN8OR!Uz;!}B zphy94JuNgWN}hWaF_SjizJ!EQ$HECx*GKjbctR~5cB=~5ZSUpji>zE|pHZe>%Iz!k zOM!g}FEV}qiYIiFzNO0YP$Bb|U^t%1SF)|otIWEs`}MnO>j$c=19pLKe|lSI>7W8> z>vDNNs;&2av#+hh9jB2uk^%q(3$|QU#Jlu^{Vn}2U2Wg0-=(|ko7FpQzD2*3JFzPZ z>>CJ?HZM@m-L@F%BnP~@sYpCLS8~`pfH{|__a?{zA9$X04QFaN)r6R`D-`otLquf3 zX)GGRNOdnq`HchHjPTpN>>zOr8-Kmx!XoVu5Q_?ND0ZGYF;tgpuVMvh;AB^J+>Tp{ zVd7_6N^#7mtB)?>o`0c)e*Pe;?Q<5fXm|53HO8HDS<0WRFY;8UAaaoOu=Ugi-czKx zePMccJ++QFp~-vXMG|G(8%aT~CMQ4<^w0a{TCr4VVVCOk_o(zMu1{4F>Yun;C9c+q zuhxktq!Jtb6OU1e$LPdkb>jR~;?w#io+4>;BvO0Z{q&|ZzjE_qtP!*oIFrB_!F@!G z|90Bfs4*74UIy&M@IoGSXIp_D(_ld+`;!JO4s3@lcN-=)jV7I_5|6|~;;PoUk`3pu zB2k=kr5br-=wY?*mFA(s3af;crK&0G2+e{gjxdy3p;@mJZh{BN*q^pbvBilJ$>(M2 zQ>ztT?N(f|*?vP_`j;7wzH6At;H4&!J*g4XBYUpq_f_Q4-ZP2>ZZP$;1xLwV^vP1r`3I~Kq7TSLE*5-gU?vQtN4knBvW$7wTYKQ;C@I1BM zaKE&g^;DE|jC;7ZY)8O)sFz_9Xx!mx_>I&OsbPWmhB)Wnfi$C?^KbVZKq~laoZX7| ze52oF)!%GbYlKhYr2hjEEtazOU&~6LmHq5>BB=PS3F2&NhOG2`9K4gAH9SMEL_4wH z?!1vX!eWWN-^Wrhjy|zswHh2CS*FB7V|u-P$a7n2Q{O zB4VB23apPE1OSPM2_#Yq_X6zDmjVdHxQvp5-T~aTIK776+hL#nvfj`?jET$FNX}p( z+2mZ{@c;ni;5eLFO8a!W^3P0%2u~&LSu#VwdcMki1HtoE*|;$|PUEC(*!P11xnWM) zELqI2`q~Gm{E0}e>gj~Nr-tLD{rlg+0;YofNWpV=F5JS8f8d%Gy*}$v85=&UQIUUf zkI)N?+q#K?$fE_sToM^6(i?^;*f<@q7h#IZYWcX?l)PQmUi)$&@=KvZC{4@SVPnyEvYd*?!GCnc$L6Bqd~(*ljHap6 zsHywANI_Gj>YBP>SV|RvPNIp^yVwdFcMec3kLCZI2kSg~0tnW$?QdNhko3;_#y^qtoJPJY-63eEk+#TF|E1ses5ZW%KY9ccVvS|Ax4bJ0 zAh(iQnW~qjEhAWV8WGJ=uG^uR*lS;Bz7=T$7d=Au80rZVj2?oSd|a1j6u&Y*_V8@C zYw;PF-|YP?q2Q`qXSO)Hl&ro|TCbv%(MI%rdOB6m(HvI_N|$}a3^9N=)w6xpC||f8 zk!MHnq&`*UuIs@eeDhVFfwCi^*N&2K)FGT|ZOtgfaEoTDn0(3jQ~V3a^9N1=`b1Tq zh;(#&(y(&J)&DkD(n@Lk+W$r=KSB}tZ}w0cEWf|*3zy>fFJTRe9vIO~I0!z7_Pa#2 z$~g&jMgozdn=@yId2OzJ>kV%4)Hc{jlsZgtu^gsg{B--Q`-C(3Cf>J}M;(4w+`jNV z5|qn*P^;P$hoL|j4JX#PwRdE#Dc5p}oT=ARk-&s*xx4Pmu9zRTLbPvNM@7+{Vd+*$O0l>dAtIt@M<5oxZNb zs^JsAHN|h;hAG>LVnKit7F-Q_R|i}TTbL@FWm=xCrsZ)mEx%^C_pKg?ksJC+H7(Ivm91xU9cF8ZsSY2)WR73n$OBAQkR=F zwupitINxvH$edXizf_%ik(p?_h32!tBBh--VJSFM}mTH?R7uCJ5css zz*F%aX3!iN^2$96uJ|Zlq_T*@yAhYn-9BytdFpGj8s;XWX9Ap$36%YPF~|^&uDx@C z+ZAgimnZxr{}pT=Y&^)`gUSOz4)1hTokXE${R<*f0dmLEfu5^cG`b4X(UlApjDd}7 zXB66J(je84{1LP6&!KI)L0kN#F=Be8NX*5ZU1|nm^w*2PNE$F^Akm#4*0>7gecLw)ei5Y%9rBo z=(S3yCdfhC#h(<5O%&cRiPCtLFCs@7tSd3cHc#@&&Xr-33isIvTxY{67@Vr>jv-aH z3Vqff_P54GeF>qe{#GqA@refFVOk*U{vDnvu937nDv)`?y0$z}a~lj`38MTPzUaI8 z_%RQ-_lVxcZ#`WPK42ygRcG)FUt|`2buf5ZpzITRTSg#iGT#Agm0ndNuthY*FZxIC zmL^zPy);84;ovm6z-ofQT3uX?j+8POd%b$>k(;qcgSaCK-DcUf`JsW8Ww#Z08aB)P zu5Yet)gvr^wHjfJsQgMsnBQDn=rw(t7D4QyyETKl3!VaU%v+*?}uT>4Q`v6!5*;DuRA7nl`JtTki z{?Z;9WVRk;w!bXSSmR8`r<|zpJ}HAt8W#VOPZYV0wtNI>_(%5axw0RDwinl6)}QN1 zD6^2LeLr11)Ng)hH{7W7P@S=tiSvYC;J<=&kS{WWqIx|Kw95JiHU-}572dwsc#|Bo zu3kx&zXJ?s)V&tzH|qALkGh5(!7*yg!2pjx=5+rp?~F4D+U+G*3CoopUEb*{dzLY1 z)3CZh(y-q$x284QX-@DY$db|4B4bd~rO$ks8nmzbp01M$mxAZpq_9^E2IG7gP|qCM;p`s;t$*ZrFwk1h5nX%*w~3Z9=e z9t#+c*nU5@PWtOOLvlUg{}&C(xpV&MkZcCx|J5PcLV^GGkUTtF56N?_|Melc`O5Sm zDIImxkbD?HPAK<_4M~N!e{Dz#X6#dFp)(|><2F5QBK#i>$#<{#>>>FICIZfolxF`= zhvWvzU`VQm8j|w%Zw*Po;pYy???|f{k}W)CCFaP~hncO)t(jwxD{V8-qqK_F>>g}$ zJChnk^LB>mpJhdl(8oH`{w}?{f3rIzCNA8)8dmH7iQx^T2%eHEA*GL$=zOJ*l$C$d zYUT{MwgR|MBPo(Ti#jIC!}`XIcP|$@L(o(Xtk?17H(7dEVd2Q=L)Y;L4)&WRXgwu} z6$M&P#o^TwWtY88%?+I9=+ltHqhzhIjM4-j8+a;wR7V zA7>7mYE~EWS09%xZ(jLVnltLoP6?&Fb3?vq^zrHVKpEt6n{frREw1yV=yN z!*$m;2{Dms9S?I&i~g|nqgy|=>qn=4bnq~hUXG5V*DMJzCR!3Lmp;Or!xE%1(jt+L z1HBhCM#Sb+wEc=ZE8iomKZ=c-Blfp06U3-OyCvU5O8^ND)rCq>E^c32xV2_gs{+a? zIE=W+jF~FfIbV@lEzz^unZTz{=TeA0fO?RgMZxjA=TL*1HzI8=&kdNNe6GJU=NCLJ zQmWluE#S-r*K;A#xrO}bmejSh2=R1_bjMt9Kew76{V}&(b;sIzD&lJ?Ke}Y@!en=> z%@s;C*ShqhS0!89qaV^-;=1)i<9)5h`&z*%aV`4MtREZnW4(T?(~q_Kv4)4)l&|Y4 z(T_3uQK%oX#5S8I$VUW+U#k3S{m@@cdg!f{@kQP1^+Sy%bM0FFwMIXh^rK!smg>jt z`mspz zS*Pa=$#vNt$rwJI5ybmr_N0#n@X-P*(#nTO_GzOjiiLgK^nA*n{1Ubx_FJ8zcjua| zc1X&wvj3YvC8wzC?NrR~C5D0j*h~k01-+wXn2T2zR8!pi+aSe7NRxu#@eflFbjZpk zlKmrTOdkZ7NtWw01RZvjf?)DE0=3INd-C24bR{7%+I;MM**KW*7;PTHic3Ix_gR5{ zeC7pu*I=Le)b^uywyTD%wO7bXzx$(TRfqlRR(4O(4#-jVwf5DLhyq^8+O0zi>}%3PV}u4G3*27rd18w) z-{+}hGgr(_a*S2&1<;uN?K8j;%RE-@4BW;Yp|4XWFJcU5?zgW)sVPtsVW@TIep|*L zDy6Tc>i#(aQbWK~wLtp6({Fw`S^Q~77cY`Nn`idh5~0i?3x$TY>!`@&$?RN#;_u1E zOl0uId_BHfzc*mlGWa z8tI(vwxJ-~Wq*axB<<<7>Z(10GCcztVJ@!>p278(x?7eAjfC4-5*@LBCJO^_n#)ZM zF&`0Fw|A&Lfdls3pA%=@l`9({;x_za?Tzy^Lnjfc`16V2bEBIQJdFufUViIlc0K;) zX}FN0Fv~$%vBZr*B&WTXOgR%WAt@ueSg0Xu3N6WwcTp^w6-` z`98CYle3i#uluY(0o1w$W0+8lFA~USr>y>Mh!}HMPvt>uOTPpo^EA969dh6`TokT$ zUz`z|Kr$NcOGHB-#ag5llISsB#BKGDFTv3C5w~nxu@qY?+gPGXTPx|TTS+VCm=HXw zG#VIMFIvl6J0OY;3Swf(Zo7W|4 z-OcH$v#5mhc+SU*Tg6^q*?ym=Vt+sg?|}U#a-xt$N_WPt-8-pWJ9>y+J2Xd-fZDW! zpobY2ggbkKx`H>rBR76Iv(gxPYfM@=?&c*3IUoy@B+{X3>eD1ae*WXof-$<&XR+)Z zMDKy#_9~gSIc2@yh&(BS$3FCXH`c2?m=Ve-OrQ87lXEH++xS|AVjG!!>4Cr0P;6tj z3Lig7N59KMM_(<`$eUJZgJ?#pHpt|7R{io8S1{kZe|o;U{&7X2{m~396PX~OXCTo@9?%=i=+2cXwjv=G-roIXh)J8fXh1@Zy z<51a>5-rLMwq-n{T&>XLE`EREC+{)mDc@|QD9ePD9LMP$hfB#8f!tS&#>`rwxzuLO zrOJg%^|I|C-7=tbN9+d@u5C{3jX0WsJS0gJP6QLVL!1u5u#CuqVwFk^4t<#du1=M^ zUh-Rw+lj^VsT)>0v%I-UmL~#|vi`Pnu>(OwIv&FtF;y|VZ%$DR??k>dN4vK| zF}(dMeEg+4dLIuRy--KLs-ws1=$BK`K8gMU{BYMa%@1GYndFBulI=OHeuN($B0~5f z=hDU7taYcbACwO!mrZZBmPM%2cZy4z8#idf-{e-r2zJ5YnPQ~Fd2DAZ zg1l@(95AeKk4y!6BO*9Yi%!8S0e-zmN4~PQ(3#4I-|~FKlJz*@wkIeA{jGC(hIZLHcrg=Bj-(bv95|t%SD9xD^t-_`Sesq{Z@%}DqH!dBh$3l*9{Z$ zLNH>z!jbXRLXxe8X1Q97RR9fNzCom1XZ|QrlGGvl7CPI+$odu51&^R2kjY{(M~_Q) zfYP7K#mTg!vrj-}KKxAEryns_W_y(-Drjy)xI#PTz2C4UJaUpRunh@Y!AELdPG0un~y? zE@cFDsnp?N4@l%xN_XVc9hMcX&?!pO97OvLYF} zo`#*$4YKS!ST3_cGWdNRTwuSgg6BzU4A?%DU>2I}*jJj1!H?2U+FjDZRjme8Bx?d$ zbC$@`@@Boq4T~5CCCNqVS3?W3AR}_7rY{MNQ!E5_v0S9AEBb}5sQIXh7Jf!W$<^l# z`GV^HhwzfES&;hj7(mqqyI5Mb>l;+=o5AHDjofbj$V<9-Zxq0 z{)UczOh;drihh~szSZYek0ydKhkZumG8VL3gD~Oe0xW116UHKg&Hql} z44r||Y-W3xIty8j6j-_O@r1y7TSJ45vODubXO-PifC(gv+O4um?a-^#y=kjdd>UDK zY}K}pcpvH!B;uJO5i=t)V{s=K z+l%K)Zwt0dx706H#h{z%U^}!0o}7>Rw~r4T;wC6c-6R@I2ScBlxC-K>z|j zfCX)q?2hKRZ&iSgC!g7~Kf~>h)Vgs%RhzG^QrS(vmRo}Uc4_3w-@BOpY@hqDt2u_! zirmk66k`0=N~~XC0ir;~sgX9JY4N$A#i=1nIs9I*B^oe4(1^F0{e0%Ocnx(#V@lPODhR_3wHbex}N*YC%PS1pzFS&DGGEfwD?0UeGM56SVv7(uweA&a|*n zZ&BR2R;oL8?{mAqth0|hKWqhF)(l$ok_QL4n1?vEfDsRxy>Wblq>n8Z_vTe)pRPWu zJ~mi-_TMk11j>nTf{7Q#|B^+XdrS8#Qc(&{dRF%ho0teSjE*~T|&&S`9^O+qF6^(=($7i z${{z=+y$rN`A;7qhzeETB~)D}RDFRI2-Z3^Re$VIHCXE)p>>*Y**58Gx}$|n2ftNO z82|gxGlo$!Yat}R;xt-wd+D~al9kzIw`Z*!A|Amw_k}~SWpN?A6xWg)M_G-^Oz!B+ ztcmuuTtk;qntjCT&Sx#bY^1%wUU-=v3rcJDLqQGZVtBtVWZ7w`>EN2RhIz?4!<@EW zR_oKc`N6uTb@F30Wi(A=@Jy4KW_}wC^YUIJ5)tEX!}O8>dlz3XujTwE@GIdrhF>AS z0)F{T-cmRcX6CZQwOw9;yUhu)AGu6=ZNC^8i4HCQfc6atC5( zi;Vm`zM!J+mLfED%Zex~5j-P+p-TWGl~Xx=;xl*F7C4$Z#@8$H6JjHoMg!>GM(;$7 z6l&-ZuH2BVWVBnc#?UG{ISaDF4c+)z>N+T1774xsRISx@7bn$qEvV~$ zL7W;EKT#d9Enq%x+h0j8UpEBMr6Cfu82`rmnbRg zzhxUGGI$POS}1sKoDvHB)}xX`hPcWqgYLq5b>R0XwcK1Xh$6F^r)aK4o{+5efSJNr zciDAB9J6*b5OJI3(g{*P_Z#fp7iGJYdkmv}GsFazcG+Ji3_Bray&uSMV!0F_lb(jX z5PPzdCNv~=2Z>}E6Pv;dqcp;)1~G<>2FzYNLc0A`Em$iqP+k@Q70q)SAhuU^2x3@Y zQrt`_&Z=6cmZuhO8mz!tu^Z(Zwk`)f*j*Lj8cAD~2h~I4RZ+jEvRf`HN77?9zp{ww zoW<-UXEA%EZz})}&%KA1URrHo10ZrIOR5)xr~1lXkku>vMVQ+G#GY5@=p803$sNy?SHBfGTe5aBEz%QWAKYSG#OTsK0YwcgwbyA>=1HjO)Kr)Qfb;Q zyMR=wnNH1f-SlKiKCi!PsVg)GdE?d-<(!t1()AIfIMRa1>p%RBs4B)Ek$66Tr9X!a z11KuivHC>P>A#hfj-<@HRWX)v^Pe~6xU4~|5?k=0=(+bIXoA}Qi0;&=8MGQVr-`?$ zN9qAd28id6D2>^;fWA^;zkGx+xQVMTXp2ZWfOhzo!VpJXOcmOJ)szc_2Z-W)Ib$CO0>ZlG;GkT_ z#UjDzGk5`;8RWBfpRcpX{lZRiIdkeWhxALnziO=>5bN#HRIO0WqAy2!BRDo)^jlivz{_w)NDzsLE#$ZsS-2>ZB*UuwK5$x^Lo#2*ev zbiHBpdMs_un;%EqhhHd3D9A!pYZl7dL!-3KQi-5TT>lx|CC(4L4)BS`9y!kW(RrL_ zVGWINBX?=&yCu}2Ip)zyZ#|V{q)I=@DZP;6f63CfQNZy^FBF0Dej>T}y1=#Ku0RBD zL7354(+g#qhM)Rsm@K_$-Ntb_&oDJ9@*00pN#rsompKWM??d}E0g03CHPbO_Ze8{rAQsDowIbh05~vRF(xNdPEoU)Dq$<^s@99e|dm19ZIt zsG+EyNU!y$q6VIT#VJXD(NYE011e5I=JiheQ;`�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

oMbx~P`9OYY~kMdP}cEkOz4|l0+O*~iH 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%0DTcz1BbBBy>{QV&j`_sB{t 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ˀVoQ@0KQJXs!q@irkB;Fg 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�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%0D{+Z&uK>X-o`plGmL8(N-|M$Zw?7903Ba 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'ccB_IRuN|W2X*G%3 z_@U8G+3x6h76y2t)~!g`558n`zVOS03bMf$2Rq5YJj(e`l`|1y9F(0|@N3NHJ@HE) zi$VuLzNy_*aO-Rp30=C=07wGc3pWm@2JR8yS^psSL%HaDVt7LtbZJDKfH!^EYQr1K z2S}Zy1NdYqY#y{lIRUB0iKx+!-63jl^_^LNQb>*8;`&p_ixcD*Dm=69iz@R_%2}um zr3jTcdd_Z zeTu;++V@HQNq0b;q}ILa?JZ_l%jv8BQxmU#f47NOa{h{*UvvdTnkEH(dR?St zz_hJ!&IuKhf-JR6~bZ<@ao*wNYxF;5a+!}-j9U<}7t z&g{oy{2HeA#b9Bqsr^wLX||l&@7ty##^vp~J57kin7{rllw+iQ_PX|1z%5j{jXiF7 zPQ1nZlE&v3epN&PsdYPR#fBR((_$Xk{RxNBFz>4bx1zT`{7m!zN$j8J^B!W)|9~Lo z{O<={Ea!g#n>PR7VL?A`XS%|Ehp;s7kwZ7)9OLuRO`Tv|rDaBTfZS(@&M`w;!9t<>ud+&?S4`qz`piX?~|`OzVf#^h4~~ z3+G^)fnSFBB);)+no>Uu@{H@p6#I&%mIeKAf{DF)?!jp(6K;l)6voMq{)w z7;Rj~+n|dQufR9b{u%WrE1q;y3pdFY#)%d(>OK+1`&7sw$!9i9&O|AC>eY?(JQpJQ zO$<6A^p#c(MXgK+StyyXfxUh?Gn96Qu$FSW-FE>I>UFWE=7 zNo}8IM?q)5@=0tNcC@iYSB`z)#y)XzURnyiO)SjAVnW)7rMczd+?T+tcXPs$leB(E zp_2MstnW+5^Y%}+YJY^@K5mht_Dj${#JbvfdkY{zo)e{XvNHPK_PF5%P)3pPeTy6y zfRA4`JW?rhwZ}OMn$|9Gl`E|@mRz|U-|I2LjuHicJ6MC_n~e|dz{Ny_k9jp za&+B=vThYOW!{A;)6ab&7XRf{Y`I_%hHbU;Had4qRLHC!sg!1L8jQ4}!5N}GqH(&N z(;&0%ZKc%Fx-*GDJ6EaqHHH0sl>yvAvB1|JHwvUki9~6~*^*Vr@7+Hxj(VQM?a|WN zoIeisJd!Pmkw(soN^)MzoQgea4S`CwVKZ+8s-2t{_uLjO&eDIu1uI3<@7`h9qQ}@- z(`m!;Om!5yCJ86T>FQh2DY`sbNpO#|`<#<1*)-9mh!$y$aArWMM9KG*NcnbMEaZD6 zpVyO>jZ(lzSMc?&2lBn@|1tM9@J$t2-$|3Up#%~zV!;Ykt5%C{wxr>4IQ+M{3fXq>ayTiJ zu-(Mt+iw(NK-fFZ>1Xf2DN_@l54R9%@NRALK2J_*XXDsRuuH(4E6B*pm`X*wvlb%k zH0{$V+XwY_#ERnV@&;FL#NP|~aM!t#)WB?)%sXPmjEl<~+#=n?uT#?%jcE$pd(s63 zlIFK3y*@1t4Ss`dX=RiTwJ9{nSk`f4dF%pj;V3kuLfT4VxaR2(^j!0k6>59Mlpy6_ zKYn>s%&GDCg^VW0G8Jx;od6k)K8P`!lu;ktf@6n*>Ef|fvaHiUwu-|~{nV!sxM^Oc zw~_aaQRuBGQJ^QTJkHnq>!=Y4`Mn*Ed(@LI1w~5xBN0Dg%(KY(HMgZdep-0@c)oKN|P{|TnGS}Ts|MI zvV@RZu_9#TUj@Ae_BAnJoc`9&k7Qni{2=qo!wQa=k(Hs2tR(&o?%$GQo@^&X5{%5z zDyLxni%BPS1?lIg>B;=nm~=rnU?!W)5;1R(G*PWGC^<$gnZ}o>CB>M|uB9=J83j@; zArJl)TiFT^PQi2_s{%7b%x=n;(vPeD(Mq$inco)eN?$Vg?H zB}$W3yFpD+WYlO9QC1Stp0c*2QGD_xLMOD4FwR)^$@s{uyxQrtP9%bZqSux|+ni zxh=_4h!xDxa#FjV7HzPGM~I`$&?b`#!wAX73nU1(8+zW@Wo-mtG69$%0L+O3n3Dj2 zK?h*+vNk#QlHp!A`C8u*4OS-KJ@5yXRts(NZPq@i^Ha?FjX}SNP6*PRH5oGBE@VEm zh_pDpc1O0xb-2YkA|$?pvaYS?}B>$_wRi zE+7Ap%AkT9Pp7}p4xN5-6K;8xJrqwLOyX0ubn1Jhhc8j-VB#5S`swS7OE1tU@G-4e zq?nG?Z!otM+7nRVr*G>iaCuz}1>)+9m0~v1={M4R2<3pLlRP!GpB7`{V`5T>iJ*7H z7~-IJn0fj|s@@StyLe-#sBL`hB5r?0#fLD*>GjET`75|(S@hTG>yv}9ZLiE}cVpi& zkv{qEP!KYnK6z|Ml-~1rGi`ZBx1{6J`yWDxYV?jnmFFeQfmAtt{or8*$-lH-`{6u| z7VpA=TJTR&UtAGw#dVl; zPdZ;XW$o1YB1x-DbiVj%nOfyI_0!vfggJ6_n;|V9#~k`w5S}|%kU_`+N9{DtzGG+B z*K|geH$>gz7)EZ9XA#2$- zVIoPIM>djSY({RIVN^aWRzHl9yiWELlae-}&2S#2{ar~@*;!}!c)vpylZKD~qODA2 zi1g=Y#q(a-Zy&!c=99Ta9Qtt<>6fG_G_<7*FJ?tnRRKyV4qGccJU>%n={Z_t zG5XGA*V=Ja161CWH11OB)`OGgLbzSDqR26RTU&~~7_RM4HESdsN}$U4KehbVnggx0 zrKZ}{5%tufw5Er-dkauOCn~t|R@kF%#8p!Q`kA=jK*2qVZyT*t3-++)?j)kxNCb05 zI;+g~l$E!oWb(g=s#{qPAjriJvP=+Jaz&PG{#;BJnsKfBOD4CaT)uy-K#y2e+GXm-YX+eiudS*LQuK`axGD`Y8^_Cne**rGFp& ziAKMh;?+;}gvJUF)y$%Ya+gkq^2}78W7}0{@?6=blQsrC@o#C*pKsRMvvL;ETWtW< zX?{B$LTM`=t+pYvt#}NYC8C-Q;NE{r{mzQk?@;*weo#p1XcwLwf{emZjGc z^E7%+74;SLRO*?oJTpMpOd{-g{dgq1t@wPR`cz7smXOj?K>S#b|(pznh z;E(^O^6a}Rt-d=w{p+h7AupbAS_1dqLeI)*{l=nxd%x0Ou(f~g`z~N8^lGzDv>hI7TcW@={&#hDhe%+&4WO%ec|AI92SgB z;$K`x5aoqxQm8;Jwl72|lW-Dit4^;##2Y^8ZgMcUIIpB#H{TF8(+3qRg&C`j5&OKk zx-(v<#&`ee;A{I21s{3U627eeF}}3Z!B?T;BS%!i=SYB0@POLL9^Z5jG`}A~pT71q z2>RJwMk&uhRkk?886VV)(*gCX7*LrBK$%Vl)XW%AV*x52$85glG#Y3ID8Vu0LP`|P zjZ4uAc5kM_oNmza>VC9z$451sr6`Q~%$)+w+*XZMnfgTt=+o%0?yFCuITHa@z!LrC zNI;qYIvr47R4bGzC0@&9kJn+Qj1q@EF6_|phu2PBd(sp1^vKhx#OXmqdCU82SI=u>OkY5}Pnv5u4NHL4?q6+hP+ASfba94I{Hj)1q<$om^=HQ8;Y$W1vFUWnjYw~ybb5>E}^8y~U)%IRL>%pyEtdqW4^k=nlQN601;f z*%1SRBL<77&qbUD@c`Fo<;UvEZ$4@Hv9dfKYIzDPo~bLp@WqCZ*@|Mil@{|9? z@^-X8TZg~*mXozVTjIw3;f~G@y8qqJHhyL z$o|0tmNQ-tv{);^2p99>yPo7udDwm2|Gdk^JV?< z(Ap3ApdTM|PFg-@e6WY=1beCOBX#sjfD`(#x%7WaTmxk~eYp^W3|Y_<8z zD0{9x`=Ds{cD4B#YIZV1aARyO(_(5lxIIM#iMdv-rIp{zm0GG;gA>WTz+bybS4((A zs4gkzm~LTz5>~GR393H*4CaPVoB`zOd*b)|1_+i&DV%S%L!hnM+?qV(f(BB z4fVRfwWNjcGxXVqN3(BNv#Wi$mXs2H@J3yu&WL9JXt2Uc8g$Zu_$GaJGS4bKwR2Ga z?4*G4NA%g@GN5J;sXe7ZCw+`p>a&lCW`9!|IMrHqQiyoAK06#hROp>*Q%hAoApMFT z`?0R6v=^e(-Jpo>YHifaA?VwYUDtnbG14*jsP+^Qi@A$o2Yij?gY!I9{htNK( zM~f{1741^BQIpkLk`~8j>9fOQQq8_y$<8K{2w3YyUZHj>g@vv-0vD8sk3lgD3AIop z{D6x_#9L69_=P^oCX#Rv$sbcPu>&S(q3bd+E=5`krBUApi*tn@%_h>Q5@|0`8g+EA zI7{fzOpFwfwt~{ASA)e4p}(?;G%Q5g-IPXMNad(+*hFG=kycJ=^v%2GCNnZ*@B>$o z8P$A}*+`uaUn$b$d*D#17VRPSzR2+(1*{9aGyboRRGX_U-pPMSwMQn> z9K$*z6GicRN8xA|=9IN7>1%Ozph+DjK+s4Cc2~wA5c5UEcexCx)bcmNVb$T7DsT{2 z5)J`jh>GJ$i6fcrUQ(I`EUO4hbu1R>DR2ixGnVjq0>y8dqRsFM6vVHDLKJ^#q|%Jl z`1&k;s?Jp~u>7%W*AR--SQKJ@A{6Po?_+93u?|Ipq?FPMQM^P&v5pWIXD4^Xv|>G> zSXU84D=ao;D<<%#1&UAKingLrpjbk{&^hvlyaj$}V?G^@JfN= z**BvU+$vCrs1raTia&Rj!UsDQ6umJhb`y%o^)amw8h~uYk$u#PX*v|U1qu>XL?}`G zDiy^Z1w}r_T$G!;2*v7H6mV9Te2~e1CQy9z-_cg=6DUaH5eiX!-w34@`xF!nF(?iY zio949Rux4)zf7Q5B2bvCt<`q#A%UV!K_QASRZ$$o*JtTdl+*GjtmTv!?6n(+*B-(P z-!?0TYC_{7s*UAueneEW=$%Nh-$J)V+9Hi0RswA{Dm_Ws`cXQv-ByZNqv+TO}ZI~*BUUg`B9vX(uq!z`9kK5 z<>3#hNfUMWN(H{#6nvuiBo&{T!~`I(k7<&HQ2aa=1#R~$C>jKcci)IM>3V^}r=SqU z-*YHUvMMNgVo=x#MQ$t#p%coExj>+}M~C7jfnvFWLKI)1qHriECPVf{J0_h_yp2G) zIzkCOQleS9o25{l|r6hikT6s3HgK=GT`iBNJH zyGx*$qqIU4f9VW`P+0)>EPc}T{n)kHgd#N-h0s?C1>}DhwW3&uqCuiSF=8)KyhKGY zmcF99J7QXqODNWPKqz^g3r)sC$2|%Znfz&i;?vint!NY|7Emj8MJ9^k2Zt-Im;hkU z(x;eKOePcsu_%OIeAG7{LFgw56m>cjPYM)X1%)X75Kye03P9ns_GEg3BlYf6^X4iS z(cVpiQHlKNUEsl@_AbEThaG*9XRpUESeb=}wxI_a8h!968ifr$tk0GLvYO*D%0VBH zqmf{IiA#}0Xeu?wU6kWy31b!I*g-jHQK{y*MqrUJ)=-Y$P>v<|rRK<{9P|NL)>Dp0 zDaSHhjugs4ACO}+<+z=4#DsG$<)HaNt;ZV5 zK_8G~H^GSPMvj|wIcg~feL#*b%CVnv)ai2EL^Z%__W$yF><1QuBjAzz=S z93&3a9O;yUJ^%*ELcW-CkN{J29Q_J8=mT;X0E*A193+3#9D67SeLxNidWuz_fE{JPe0i2op@KD-qSCg7*(I%+wc9he(&af@Q6wE<;RLWbh$2wi|#6t_-W_%Cpwt8nfm`>_U3-Qpp5f4%xt@W#RuUWHez!Rv2!RpINm zfC#?-l<+g*NUy^G{DJ}X)olrh_Ww)pelY-^ev3%7zw}h?&t@~S)%q0=fM?Nd842;Rg~!o!tW4z+$S41lNKk|KDYm7J=*88~C1!mAhvPq#%y@SZv) zymU4rU4@r203L2;DAr#%;yNX~T%4Lv;r;3S0rW%t)Z5Cae*Y{!ReSA-NT9--KM)@3 zr*6p+yys5|Pv71V1L5hmPzc`aQ^LbZlzg>*ZRZVWFTz$#P_|?UUh*m7O<*%7sPOI^ z2oHL%xN}Hh;Ky5nyzI@ zf~-&Gw|{~dCr5*ROWxvi+hbVP8L$QK>Os7j2Qy5)C?0rlEQ)6`^9J0m6q=A8^dH3a z>&Qpp8_e~MEY)5b=pAHx^n26>*A13Ib*!o-@7lh{V& z&k^}kkm=m;Nc?}cwmT*Ir@fdghK6>sxEa7PtcDjeS5KhH19F0fPEd5^CNLIj)me^d zu_KN|;f&L=+s*c8@uxoD!tW38_ci_uprZqS)A2{FCHbj5hM(eH8H@{m4pnCY=06@Fi#wyfsFC$J2h8FGEo=K9uvdpN#jogQAeu#YT)kzlPgG{Y`}=>HAF zC??V}&Ig2DrB7 z2(Q{9m{nm^3mBEB9RM@pTv%V;Ot9tyU^yK14ElSO^Tpt?6KwHVAYF>{s%%$IY1ZbK zUwY}1@4A7Y`THccy}5e~I^MJ$1BRK?oh1%iJ;F2?kUM9AlJ_g-I-=$^Z8w#sqbzZ| zwIRyh;BJ31n=mqbZ=g5LR!Fpt$L$W;;Bl zkK_y4)lIhOYPw?wF#`?V536t8cndEkbQNrpb8)HfPBiY0e(sRIF>yW7qKhC`b?0+*Xcgvd~2!}@XJ?83THAnK9zn66c+B}F*4N^Nxz`{>}h3BHw zHL$qMBj#=Wnb&MT+20zZ{|Kdv&dOUb7+k$&g6f9q^-`azk5k0GztQVW+i#9HGme-TkN%+6ZNvMqK$) zT6RupMtBG-$%Tc-gu|aXrPDXxF@OGi3}=_M`TJz{P4ib{Oy95x8%%zC(9fgeQ;xKs z113gV$6aPS%?`^6g_wBm$1gC%eYzPY{8N0mT}&$Bx%l~GF^`02;pa>_eU#$obZz38 zvZ7?VGF|*gP8Zpj1{Kag&Q$)@c|SygDfmKLbKx|6gYy9p8<@*dB<7SXQ?nCoUui}L zHoFJk3j@vRAQY(M1g%ygw2%JE136E$HXgszY#)L~sn5~)eKGzf;O{E@x$#$nKgrLp z>HBALg8fH!ELgLJHX*m-Mp?{u&UW8qtluVhJJDU9$R49Zj~ z^MAN>Gid|i0$k*d#}w~MJR}j5h={kH4SyZ;Cfa6I z7=}Lt8eyw-2k!uZDNin*F*j5((V}@6jntyXQXo6o-%O;_->vwo);-nV_bT5go&HD; zumWL*(nJF2#mdZ}2D>IBi2t&JrDpvN(vqH|U7EZsizhITg%-oK9Q60_)tMLz7}%X^ zt8+jXhI_{FPL$#~B&*wFdJ>J*M5M%bPZVF^P*z-d1701hFlhK!yeLnIC3-p9*AE5*&)~NVAXDTB>ITIip@#TdyHM6~H~#pF$0R(mK=eIx$(WBz^ogR+MQfO8@Q?TVwNgdk1%v z@zs-Qj?7eDM4X3x)-v9RkL1a;IJ3P3S|n&*ln&)I&@|@hz$ar&EzP~jA#*+Xs^C2} zG&L#kk6yZyuXbdx*21pM44Ff;jcaPxCr>ui4iA;sg0=SO*KjJlv`E~MfaiJFrq|v= zg8!fz@1Q8d)Dl=S*5J?c@O!`utS98&LpAg737oKOJ_s>mb9b;op@ImIeRqt_J_z=3 z_1J!YjJbJmYJ=%SL7>G0*Z}IhHhtM|(Twri@~+LS&0_wZP)Vv%7c|h+j8+r`r#=#B zw>YoOT=ogFDj86T1HHjwYoKYc$Uh;8M*Qc!6~SEo(<_XI3f5a~s0`NZ;iKF{IeV~X zA4)4+i{4Aa#j^aeZ=`oo(6uLsKutxNNT;^fH`yK=40fhIJU}m`@DUmIv7)T;+e|G) zno@i1(ngx^CN$vwRg!0}gCX}p&?3;Q5h7F)VS`M~M2KFHpsrR-i!-uw?xkr_1bH*T zl901tI)sCq8NZ@wv89=#SJ~`+!Kn`cCrD>%G1VMIxB~7hwJ&R6t^UyrYWtqyRnGE%|o-pC}@5%C{FfVaqf zh((P2_Q-wK$bDuMM;s$6o^uR?r#E~R@xK58XF>vz1d0H}1$qzz3eW8oh3S&u8MJsI z+B%QH;CDcqe-TV`KW&Ng`;b$q+%?%^ubklrh-07wVqk$U2BJcXl_PzL1pX%=e$~XE> ze|n0eeHd850*fNTA;(CyX!fO|^G)NLS~nPDOv;iT?_a9TCj-02WmPC2SmLm=Qv1Rr zW++2kR8Qnyd$obT^vDm9@4C)z`mRgY7t{c?|JiJ7-4ui0JiaMxXDt<>1;!PY{N>yH z$8y>bG|b{DmvC;;;HYOe2mrOmZ9(j5D;va`F*VlRKg8f4UBRx9>(9J}_C?98+!8jk z7B-v`eTU{!bJj!=M{V`hm<4$fhmU`UjO(qbm z4`{_S3&z#xps1@wou*1OfSPAjFsNXZxPz8==& zyu$xmma5R1%`vlY>mHzXHe#GZ?p^4^xSTYLcVc)zUa^k}qwiCe8q7E2Kh!FiZ^1-^ z3ijX8RXakoR<&Oo(2vIjQGE=J*NsV+J#Z);^Eul?}_EfAwmVlpljs{V*!@A$8y{&%PQD*o@XPkx<(Jrt)y+Z z3=goVE#KK*AQ2Qu1WUz9W+NasOWR}v5bzI%5QOy}{#AtrfvhNO&%pZWD|VHvn1gkO z?lnsOQR}v=tP)lGub~9E$-|#g07LH}%ZrCQphsb$>zRdD#2d#Oa~;A5I*C0bAHIJc zxB&9GXd1-gKo>wYTNAQ1@he2OEzoGl@uc0gn<&`kYBH$V)+5_`Zl`SSb?vS#GTUaE zZM{KrI&2KN8+kV>J;1glG}q_HOHrcqJv}g<$}k}1wFZ8B$U2)QhD!E*u%^$s%N7dY zjX4fHM3!?&=NG_KOsp>SRFvZ2MbXdXQ|mgIOs74ud#Ih zl6tYg>@0Hc?H|a2dCdgCNH8Z)vTaib+~D(MS_lI?VYFm<%#Q>?G{F2%{Qm!4|5_F$Ch7n6{(WO< z;>!HH``0AzdJ;~?BJ^po-4?h90~zHpqhWQu zgNpwlVR7eo{ybKR#igAU+MPyQV4N(BqGjb!a$(i=B`gf7gPll*)e3iZ+_x}<6{`Ob zKe9;7Kv-vBU9)I5D@8L9z}{ZBbcliNKm=L8#Y5_IMnbq$ajN$B@Uu_Q>SiEzcGv7wbvn3ul90HLA+&v4+`)F#Uuc%4yK&w|Ae4KF4oV=<_)|C_tYu-v2fFVB-W^u5^8pv)8s9c0mNz zoM#SJ9dUNqmS+<;w&t`4UA-0Jevk2N7rP4P{-{PRHe{lfCv8K9v~Sv6HEoY>-YkjT zyjh}X>R(4qRL+i?9OmjpZJ=L;to1Y#vevSk=0KCV(!*DZO-gIVJ_D*Vn3U1h4ou=zHL5%pjQ|-Pv^8$vfg(hShqj+K22ZN8d_mA zvgvR1%?xxW1#5b-rOiGFx{d^ATWIA&l)!rZ|H|6OBGx|E*tHL8L2I90=dRe*k3Hl% z;-TdabX|jD+4%DxNwE3-U7Lg+4b`Z<46l@{0F|$1UJe=FW?iu!Q`hufr zE60v3um+~j;;Axe42g-9pb_7LqgkqF7XJzhCX`9RGAAWCW*|0YJ&9t?ge<2WJQe88 zu3eB%MqaXVo2W95ko7O1t|62m*bTlf6(Mt8$l>&qR|aSI@e(uzCI)-9X72`_uXc@%}}Rvo>8H zWY#WZRdyDs|H$@O9U2P)g&<-;*)$<>K%=MOtO1H3<(=cKm8dhj@15S9?WV54-}@jU za@qq2`er$sYixMIbx=Q}O4js+(<;h&J^hA{LL1;Hy`K5t&jYOeT#Bxoqq z6T;D^HPD+`dw{hGm@v058%A24%!osc$cX8UO3?}(W)+Rq&_3d3(X#J=?m!=v#*HCW zSWr@Y;^|lP1u-S22Js`%);A0DqldN8+7bH+d;AYQZ2+)lNg=U$9vwNM#ZGi)*D|?_XRMf}Dvrg#e zQ8}D&6Ma`y5|dDcGuNr5s+5y?u0zYb(OKbSc9#Fitgy_=s(2n`?ZX#S-_GtO+e}rD z^L<<3b84q)MSf<3E5gRHUC~M;nhV%qYNlcus)>+iL4h)J6i72tfzGoaN)l)9viqPr zpN2QWzcLWfk|+wa%-OMQM4(0V;`_FTFF|v|DYC)rd-h&%_7QAlI#1XF-%+~snaNA*I#ri0D<=7hKpEOohgY&+TSva*f^guvK*a5$G(=-L^-_S{1sc51Uvl z50^5IKV1g@usJ-&^x>)bB-$;`u4VT{^T%gy*7=>-Ym+W0r>=_*de5>ctP1hNIg}aV z>b<_9%oKD6jp%vtoy|TH=!S*Q8u$W?aRe=Pw%8s{QFw#sfqc&0AeMg$2<59GKKcNQ z;K49~nSyDcEcA7d`8{YYL{C6XVQIl601gfX2X?;*@qwp=?>ynpQL6GDfTW=^Nx{L? zO@l>-UI`V2yBAV98{Sh1Y+Cm`ddGz2?wvO`m<|J=@C8$6gm&~8xVE{yKw3Tvq~)_f zSU%^slUcp3V0bh_iqzjiB6?<+A6bJRD_ofkkE|0vvKk(FUi`>zc;p4~V=Ni* z8y^6xeBU#DY@ z&?9!&4`H9u(w?#!-a7E&Jc`>M;TWLbNL_3l=yuUc^AYS5XP0R9thoIFXAAU)1r-aX zD)ntgeerKT>TEv=}SpzuJ5nm+V3c)qQDpTinzn~^7^z}sd`{L6V zl&#TKLfVP7}`D|>XN4!xjR8)5=aC59^I@6uRFFdtulhm=tGU>ERs5}0L8UywFaO5+eEeCz`uu>{ zEEqT^tq;*AI^myef>nGWvA-?1%C5=IDNC?bHohsUu{aOUwXJTVV+&&aM1G%OTPZ8x zx@xZAk2+`^Sa7-_>WL)@26~CS#Pz&$p247ajpE|z@_2=ipIvRP>V9&n93bkuW1993 z{+u6`H-SU9CE5=@MhlpE=_DAG(TmMh5oH?ei7t;UB7cBi&4)E#bIV!&1^5)a(CE$G zpKAB;smXAR$fBRvz(qEa=^j4c)EAkBFHLf@^(?%4k2H!*wEt>?y$hcLTXQ{;#S>U3 zKA9tnbNO3NnpqC1yQXpv_QS&@)K0kv`$v)OlzXr%MYec*u*$}7Bc{Gaemk;_YYL~) zcGcB)84MfxTja!k?3wU;r|Buy{}}ZDlb-(hiRgbAOKj{kR~yHHz#>kK_sBff(^hXnMsf!T6{D$w5b)!KgP@=TMcm<=z62r2XHfV( zdH83;;V3|~aCdDs0gSE4-IeF!wn7*8csKq$)n3NSK@lwPK#{XZPdsK?lpN@Yge~Kn z@Z0uO6Wq$4Y=R%dPXO1uWFIl}Tan`^V!_Aj=wlP$c=$`|N1tVXa?=V-{}a7-Fnq|} z#A^$Me}Q0W-0zLk|M%tcW0NsgA@L^%P-k~n*t0)*Gm6QE_x+R-yZCe@*41n@_)_+# z?me)7%m!olM;h3RBv`bTR2NJZ3gllakW*23T$64#pyjpT$iNx>I1=&!{5b3yZN7Tw z&_TdV#FFq4w7`Y=88X)dL%H<-Guil`X0YjSH4Kq!BCDr_G6Xo$=SItSf45K>Vq?Va|q;`nI4zJlV^ax{HlsNv3US*xwE4L1$(kA6aI z2TxYN-TAF#xzzDZ&Tj?B5u*sM^I544U*Dk{r2}hz0Em}=^M3Bq@aC1-J*|GgWa#7jM`vM8|R`P{OY-G<$tH)TSZekxj%H5#c5f60Bj2G(v@j z4voVD^~uQ~|68<1K(*F;ysI$hQT_b5FY3hch}VmEOd5nH752>^P~#Bs6y7b7d(AYT zc=(P!NJPE0M&>F?tDDXbs4=3x3Y7m>u7SBfR7SAs3!V_~dCUiC4+E+mdP(E_54^zH;XF+qrlg#ROa949kEBzSoa zeq&;zuBFp0LuKi}rziMBU!cnQC`Sa#a;h`ysKAaS2yX?H6?!iCeV+G-$k@e?Bd#7g z6d=zA$iNPBG;dQn<@JyE_KLiXyi??DMBWUM7p|Bp+$WJ&nNDa^MVU~Jwpx6H!Bl}y zzvEAI9giGsHPd@n;M3#$VZ3V%Nuq#$P5f?rQzjVJ>9g|3pwO=9>PFC{2v5S~jo%j9 z(0FSN@EdLQxTyh)J{*&IhNPu$E|zdRDx?&}kO*@x zAyxdHgZ}@H`ZXP*8pI#XD|59T-S>g$(e4#wWtuTID28hNHrw*AQ3GZwQ;_Yzp&~+O zTmAvQM>dJ=8dOG==vkQiX&Ba*qMqI*qACScmFwwesQzYr2I?^$ekZCDnS|e&7&l!W zem35{6GSc{+0XUxQhbs!1KG}tTrLOLH%E~%R^Ofary&_m z<_9rXQ};fK-ce@xCjJ(}Tgs+qQ^Ph)(VC8iJ@;2?n16w{3kDi$&d;>m7gO#h4(rL_ z6S-~m3y9d~0m(@!HI!e7N?~M<>h6UD2rpIY7RC$gw_@h>)`4Y|xi*~;tK5D`U`J+j z*#3|w0A*{HJS0MVHi39_Fe-YXX3M**j-)Y z;%)gxL^hEU9NCnC|F9Q&%UGJs?SC|Oe+F$!HLFPd{qCs#9yoN8^(4&5wKyZck&J*? zroqDN+Jdt-gQ>sD5$g?B-hoca&>E$HBq0i-!Jlq`4m|tsXvK^K$~l&we)w0TeWaa> z_2-#YC)I3IK7n>>gl?Pay$!M~e7!2p0_m*~neM6?7GFQIvSk5-c=8Y&l}Ch_O-Pm<+4ZZ#yryZz(-c#|WI zjp!B??_LYx^)=vN8J73~l~Xi(64ra3Yjx{AQlk>B_YMa)5pUDhGI*!P8m#x?wY~m& z{7D6(Nv$1%<8evcE82Fm(isQxBAJp9(dR4dzZ1C~=nW(3>YL@6wFR%8?9 z^bd|S_5ft}!4$yo+||7gPwX0FXiEss4wVqzgg8hDp_d>$Cm{H`e}$*0L=?!rGzny> z4v1)Bs;rK#GDiqhr2w^{dnQ$e%pOW*97<&_KQ$a0Gu<`;XGwP|o+^xKP-MVV4rG~<<0lNh4bVY1b)!e?~2QLXz1?8Xq}w*f&^Sy0D6Ww1~uaLI4# zAB<64kwyzO;01tVspGZ{NC+VzQOV`N+Dv zFAJzJ%#zUwS(C}6b>W57p-ud;w+X^>{s=uo1ere|KCS1A#IuXviRZYcZX?D`wIQ5T zZB&_29eH3G>PX^`tB|+*ui&dlBXtCQ8cUyA@M&O&fQgb=(PT_g7-KLu(a7;%1k#e7 z@*s*(|4hS^g(wLL9=?BnU!?n0WEYlIYQhdEYEtJ(1%pdThw2#k6M`H4R^ru$`a1|X zmI3sH167lPm9N}M$`^e#*p|PDf|?lg;2YKC$EY3EWFrzIn@EtdO_YY-!7M*@0eF2Y zytz=hHPcZQtokMcrmS-XUyTYgDU&;(rq|nuRAj@!3Lu+|l#|6-SpOp4@+JB%oj#!} z(NVC1e2ukLWITSSDg6%nEk3C|Ov_o=LAK$OSOh9PjPs_se0mnqe?5O?ht{*t(ob~u z(|C4&OeC7w4<+m*%K%KE9IBzb7@zbgVI`=*Cp}6#q5R1O5@jCXE6j8m{RGMj#j}Zz z7SFCf8o2|%RxfeZ_3= z#P6Qp4LA>q`91qwZGI0N%7{+xF~|K5!<-+gh1ITuK(gp5{z~-$$DnJ|g(A=1gpO}t0#74MSadzTVOSQ=5z&)n{5yO3_kiW$cTR(Ux7VysOO`Zf1~jA;a4GS1$i;@n?DgLW@Tf}ovAGvFdta?VJr>f zFB*P(49$Sd$S^4W4kz^EBP-GP5c|6)-CwMIPg?>f+IpeQ#b1_2Hy5#OF?ptLaR(Yg z@I_)b7cZn$E?lhK*v#y|mc$ATVKa<>HU{1?kQ%ZZD|G(6n7(~un0q%mA~+OINy{TX z>vwyDLj$`F-*w>~aw@5x2vIh@9>bzQid6MH^pdpr@-bF^>^?j*viSHiyLHH5WEiumV z&8^^{qkAz=q3n*+Pn9Cjlgz_iTV0&~XdU>i8Ts_NdBXlHPTC zdQXUsznJOiFlmw?H+bu0wEiB8qDU8a(8nnuRY z&R5AuO^;5_RRZW9>Y~m0peNuo@g)*y8aWQ!bnO6V2RTt+{7;nxF$M=oj{|yoOpVeb zX1oR6ut;Hdxtgp}!Kx-+a2O!veK$>*xnZcvhTHX+;5;*b>LSd*siDOdsI11IzXQRK zMhEAbc@2FBYayVCdvgeG1%YM?hC&i3SkuA3`ViVSZC*_lciL!r+fF_KeJge+6wdPY zVef*j=xO3tW4wAo?sndYQLX^f0&g8cxsVI^J^W|T^B8_co!PW)cPnfOa%6%YXk=iC zJqd%Q)Ik#7%-}J|cGpdz!J>P=-7=1we4GfgYH4t%Ct>c>d`?EveJ6SvrggXO9 z)Egab5FtH00%W-o&*Q^F8P6kMSMjJ6k^PtL*2#~A_Qkz$cZH1zY;E+NqslLctyO=M zc8(XQ0!Z|KQTOJ0s*O}$#C~Vp19Vzm%*(0pJeHdq{s-D!8!4mWIs)ebdJDNWD$OCg z<^6ZzD!wkV=eagwy1*82!xz+H!XyYyPq-n?hMkW#K**jXmaR#A;aMaxp#Q )#q0 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%0AdkqC{<2u+An*CrTL)(t^ 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 literal 0 HcmV?d00001 diff --git a/lib/steam/public/steam/lib/win32/sdkencryptedappticket.lib b/lib/steam/public/steam/lib/win32/sdkencryptedappticket.lib new file mode 100644 index 0000000000000000000000000000000000000000..8a9c032fa53bfa08886f58aaaaac7a01108dc1cf GIT binary patch literal 5956 zcmcgw%WfMt6g_$*cI4Pm?8Hc06i|TxX;H*h2vO|7mW}Mj6KUcMVm&Y; zBgm>i)?H6o;I{%fmZ|m!yB#F`ed% zUvsO4(RBOHXkFBb{Nc`8i9ep?0DK3`6@mG;z``dWU-k3iJAmcuZ~VM`17P{uXP%!@ zNqOm`pYyCQ<>mK&ULu<;U+wsLF-!KchEaR`WdERHRPP<$J*Yit>>n6z>!sCcIccShj_UPEIDU)7`{>5QqrFE)b+@q#%fI8Kt`>mHz1)wUhrm6pjF z3G8yT%xdMxwVeG|9hc!cnqM%oPwWUa_t zBET1KxCwVi#eN#4C`Fe*E1|A*dxR@kHH&eLDMuJpngTwdHw}EkeJ;=m*IxVx0eVP* znmqy?D)AF))I7Vbj)hy*iMF&U&bTMJ$kX9U>+B4x;sDISDytjo+Z=h4tEVy;P`Z@@ z#a=I^R$A7x^V6G$eihiKhu=komu2KDD|UEZ(%7vLkMP_r3L!iIbD2gH=VBAecmtpc<@u9UfX-* zzaIU)OjXvA8DN_ad!n6*wjcH+9TVkdx80+8?3|`jgMk>F^=F9@PeZt)40uy{AzHkN zvr#jmWu0ND0Rd(sY+>yy?1v|29eBWNtVo0I9<zMGo-LJ(aIF|hp6z9DeNmKM@IqQ6D8^OE~yXKiemAHtMnflz?Va`4`Wv8 zhHx7bEnB6-X=s(Mi*|8*?& ztMEuArXb7uDw!oF;A^a$33n09%!;P5=M^ literal 0 HcmV?d00001 diff --git a/lib/steam/public/steam/lib/win64/sdkencryptedappticket64.dll b/lib/steam/public/steam/lib/win64/sdkencryptedappticket64.dll new file mode 100644 index 0000000000000000000000000000000000000000..ee3511652d0b59418ad1a972d05d1193176402f1 GIT binary patch literal 796960 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­90R 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≥wKvo=Q;cL|>VupfB0qaf6DMD#y_zbGXcmU z+r~biPwIcRyvFR0m|Jz(9`Lu8>d>6Um|DU27K06{_+28{;Bsbzz1iQ@FrL#V_?2{5 zP^gCJ`qO8YdvJH9+<%fgd{%+0`MT2fGf%dvp=(UAV~tem3(azPLbI?^@scydGr|8R z7aQ7WSk9!m!?JapVr#*=4h)kt9C1Pll`|(4tB`sFW)^kR7OEdQ4B}QxF<4_Mlo!bF zgK0`T5Iv9<*e{+AE`OjkgAeZ(IU<0EBw^v@rY>{GJO9;m8S zFBfYY!z$rZ^C4L)TLsnneI8|}rtR@!=%yEy56jPo0P;!*(mmn1*7EbA?$M4tlu3d= z3!f~(x9;m9#fulEjD+IF6ewPt&3mrTg-uJQYzI^vNXf(QRytyXG?4;6+GBS0Wn8#O z#|eZtxC;AYK7d&p&7nH5V5H(KTpUg>>#;tdPhUPtkhGyuR1)(_epO8|_Q< zSL_m?MVaD=e4Iw-9^y4U<`u6oD9}C#DL)hw*TF4^e&pSv)`rEAx3feXd2hd4Kk{Cp z+VGC!@R}BN++8qscX3YByV705P>Lq&VQgh$C3)jRgs;kQ&X)ivp@t;gIu0i*>P3k4 zDBbB>qaWZC8iMm3n!-||`?th0)l-m8+2F2^X9d#IH<{Foo<=sN_QBsVwf|tEcI*M+ zo8%wwz>?=(w;-JfohEtn&*1arKk5CQz-RPisug%NRd57XK)MZr{s*cNEvHF?W=C|d zI5{=v{KPnd_2}cL5BfKnVUXQh(Pw)X_5c^QHw8Y7$ARj}eYJ<3eJ4Y5PG9ZmcRW1& zppGA-VQZs#y&Luuvk3z~HXNdvRF2epwPH-jdMmm{uo*M5V9Epi*e85$^Z;=xQxQ9& zxA!i>ZxmtRoAG1qEB~3j^N-^E2g^Tid_c#KiGFqoE@TGm17=1BesX{xSb}t=0JJ^2 zw0BlAhR%9s$?$AE{YU29N%)wHwBZYgg-ZXJ;)u@RPh!vfNhiZ$lE{nCaroTh&cZ3N z3vZ^u>1KW9#1Q=eL-d~eF+{hz#1MVgG(>I4%R_Y5E*_#Dr#2xe12N~oh%%HkEU|pO zv})z2m_zlTG!O0*rGFS*g=kqBsQwW_U=+k8m4PDlY=?R%C+v2oe-M3`Vp3J(W`C;g zyH8^>u?0Ll&2)Dd7fM!92dXrarEiT*ruT2rXuL!6XLJN^yeI?rjD%=vli^vY< zpsWl_CY}o%8I~P*vhnC)ha-GM%5yK`Ul<_rP`V*_zY5RM1M!aMf^3w7rw4I**hqv& zaxyFr0J*I@|>SLFFZm&FNCnFuk%7fUX7*xHgQHYkZpIS(;ZMcnn7nj{lB2ZD(#z~O8gV@ z^J-kSQnq=Z8eQlq_YUw+r1cq;$FBW~M!>BbRvTx=PZ4oH2)mKBgJ@Kc-AE@H{H~-aDx9;LZX5vfzGeppx=HTY>cL z^Ke90UzfG3etZ^LgoTJcUR#hHfVzDo;5MA2dYT={DgK$4VL8zAI^y4;NBfsJze6)v zaK{~ewIPqAYc3sF{&H8JZFKbrQ&*2p($`Gx?*rc#q4RxlK1_W_0!eN~rw`K4J})qk zn9sPt(1{BS6IfxqlMLVtkb{xp=%Hw#<2&qdyeq@y zO{KDT^o=<;7eNEkyq?1*6w1j(_duH0POQ3OPR@cTx=ro62r|u;5Nv{1tW{s8FO+v9 z%A?Xw4c?ezxp}xu>Xg}hyA0QK2CDZW87bVNoEvi%d_v_kAjl}jj}Me`u2u@X7i6o` zC;{CUqk1NZ1gDu3oMBEdQY1LqoZtv^f;^ER%beiHsirEr@qsq%3JFNK4eyx~tQQHk zniITiPVl@)@VYs{L*@iwPC$JjE(%d!faDYBTn2p-RsKix5J)d;fdm^Q(K#@2sb1$F zUhILks%$nC0)z}AKNu8qTBN*m$tmLoj+8gPF9u?qf3oPfP*zU4rx{j|amQnu+yuk! zbbQsY>+9G4{sCRVD3w<38ou&y_%>0q-vCnSlnw?B3uksd?Y3BE;%f*rluA11XEa10 zJ-+fmYnqhMf33++6LHk3OrE z4vf-U^V5{67Pqu$}_>6yJ7jr>4?zJK8<_e0)b{`G(cqZkARZ@H5##K=_kFPJ zJ+6^bz>Z5{#iZ}4S@29PU%zOUDF0yZo8@r%8IUNV0;yQDqncX&f8PEqF5jk5^Aq+* zQ_KH9w;z({|4#cg{L^JRD5L2HRM}q*gtl^rYl#p_O~G<)7FI*{yel=K6xki9>(-pq z5dWmJ)~&dEG&FDscfa}i6$SgFbW&%pn3TAEHPOA|bS$wUbGV?;kU5Ygf_E1{u<$yf zbO$q+As#GRz3di}K6GNCQ;!gJ5`S(Gw|K9=8JXZ@2I_6v{YM%Y@UMoGSX{`*mYgoB zK_&Bj3|d`0iBo5~K$moUh4sNIKC|l!{^`Fi{G@72@DERh|Hf4K5zp`gMh$+1sFV0p zhacc3!w)QK@M8ejx(x)phtYo^1RMzdD}G)0pVi<$A{qW0QsGBD!_QsH{f`iJ5`XIO z6VW8~Kd`95uh^Ct(0?%Hz|hnBu>bzQ{MUv5G!6d4li{DA3P0i*e(q9+A0g@_{?y?o zqDg`uSk&OB>p=+&yf^v47&s98b-ynBi_c&4E=%o|FT~f{?QuzhbF^6Hx+)wGyL483_n8DN&Kn9PehXhKd`95kJFpP z@PGf@pFzNZ`v1~j7yheBj)wjpmJI*(sqiD7;pZ-8_z|K`;!hoZBAO)lfyF-I$6e$D zvA+Y3|7pK2{GV(6KQtNsKq~x*XZX2G8GeMQllW7IpNJ+2eqgar_$U1z;J@V8h5u9y z{(@xq{i*OHp5f;%W%v=IPU24;ej=JA_<_Z~#{a~h0snygfAOyie}x7=E>me|F1-Gk zlL|lL8Gi0kh94p7B>vRlC!$G$A6V?O|0nzm0-&!nkF?>0?F_|!*hLATv4uiR5iS2| z6NRz+mv?*ONqecehlqXD_99~+l?GW$Y%JV1;LH+PuKrCDxL?dh%dw_g@EnX3VU@Rl zJ5B@ZQKAL0p!)=9p>3eHj>`ue*u>0ht4Bo#^XPjRNajc^$2(DB$fCMj9vUdcnK_xwe zk`6nlq~Fd((yzyvkkBt!8!723b5fwyz!wm@90@=Sq&6Qq{BOnwcR9-+NmK$HCn=Se zVn=hv1qN{!gR%>Wvf2F~_B14>lp5bc2uxnw_Lnqr84P(dOz)Nk7c^P20vEHLo>OR) zmBnGv;O3gLJ$!!}ayV=_aClQlN}sP#2}lE>T(BKt4ab7_Vn?Htk&7kLD;ZzB7_+n0 zZ;#iO#?rMs&B*g#k%zMVoY9cy2n#U9v?W?oLk(n6*)w`$ZzG)Yhh&`3U{oFpk3eRVZJw;w5_b(kVvo&VU*(X;HA@Lb+mN zz~x@CO)NiRyV5M-N$KA3_~q&)*Mi@?47N-rqsWow?{*8W^w}(8ry5rpfDf3AGWMF@ z>u^)@YzHiXoCt{+d^AGe{)#QQNCL}l-pKYeSkM5w$&kZ2&9K0vUUeZ(si59F7J(W! zI}?mUhnCeV6T8v_z}GPOVBpI(!FS6aQs6rek;HW~%yKLC7_++?Ds;fp2A>Fhht(ZCY!jG^~O)`3brV81T-*M)YS&Rj3Tioh^r6uPmn zCRDe*CUoOgn6Izi+#~EE5R;V}>6SVyoRRwTEEw1+$MG5_ac~>hyChb_Z&SR=o6Ksa z5TBU`<}(Xgx_1^4H&u%ux;ATxO+#YVqW*q8u^TA-OH0ooLq<23L#=-hvH9k)rT8gp z9$VHv_GBxCV5xJvNo<@4br)Xl+ds2a zedxjGc2V7Lq?_S>zw)5rhI`$3^sc1bj~;yP%cgDSzN)D^qoCmJ?K9Tw>>vVTyc{AB3Qod-=)TM?2Vjza6bzIh|KJYh}n^af4;p?;fl9!ZPi20ykIR^cT z@u0ci;8Rvkg_1KzZ-`GWjh#d@feR`?-E#PkSt1Y4eXRb$P#qATI6I~0@ZzQKJQf zf$;+U@E)EMaNgCOSR!L(ESAWaCu{k_6-{7M`2Nof^{V#dnX42hdE)+07qli86u}Ir zehFX^YLamY$bV9O-AE9|dQJHoDKgQo2<%35vA#?J57F%Hf%--kbvI*E((NBE2nu9u z?UfKV7SZi}m7p&P4rYG<=yxTc$Jf3-cL;x6-4Eb$XMcc8u*U!^cyK;}#k+NFPh7hI zRSHCunH6v5PGzN=J5SM+Zp55@$!X{*EG-(Dx@h7)Q4V3`$&OgDm?OsYN`YNIr-0fF zZN?*nU^9vmr%VfvMQsOqyojeq$0gHK|K|}6;}h%0U*kM(HrO}>G;3^00-EvQWJ%|7 zn-EVdZc`ntIY}PXjS#hsKea8=XP5C3G;tm`0s({-oX5##d34PgRHwGjGw9yJ6!p@+F+V^!UP9LMv~>Bxmq* z@Gu9>oh$^vHC|UZ%>qZxu)OOj_Y{rx7r{+)U^rZUO0arzb6&8=Mt|)7OmN9ki{FlW zwlQ19`oJ;7q`(DzR5IVd_2N?JNK_6f(hSW+4}?iddNu9`(PC;XO~B?jojl<$8wR!E zWSZQ0!TUlK`=EtXP)GH8K0a6M@0_WTX*K5E9%VNRm@b;@Q?9s$Zv{`m;sN-=-R3Ii zoI|9gj{2VZIdB8JF?8-)vIh~Wa>QV_86VKj%B}kW%Ll1(Ob#|gB52rD(r(=@EtTS3 z!5&!N+)LY%x-JaN_-beb-g(FNu^N}75)QrKhd4~3+_jNX^-*nCsOEKZwXajA`!5sK zwr8VS#4Be)1P388D>zC^&rWkMu`651(7+Fvtzr*Qo`0S%Dw<)gs6c}cf*kPKnq_)T z1psgvSeh4ngBUXlxWA?5qq9WeED2K9po5LZ`)k0#M@CK zOo{?$)qq`t6>Goh*Rj@3lxY=Zz5tcQ*mG3om0FpHQ<*x?GErRLtYpW<0<(EsD_99M z_3n!p^)@H?i9=NAYC(l}Q-yoZ5kQb$pHbmZjd$gNo_ai?n~Z@)%!~W-I#^kuzI+rc z-J{&}x|=qGXFKDQY1(?)sM$l7Z8V}BD5_pfur|3@lwurX4KnuoH2qAl=HF`PWUMB@ z&YQmz(!MDdXwtr#4t2r#9EVh`Q}*L5?k#HmvA|a}f<|C%ZPn~C|C6Q}81~EG`8w;M z7oSO!LMz#0);JdIK=a&_i>7t;V$A=GX@+2H13ULhUyPfP+j*EiMWGo}Q!35%NOdYWmdE_Dme~ zqha+A)b9qQg6o?qH9`6?C?)zSk_$+`I0Th$p-&yPL$q$pG4&#?A25p7s&8WUr(XOK z3>4MDN4OhIc!zcGHV-yF7?SQKg5Oi+Qe!37Fsa=->~%EY@}H~Gn9wiO(5mokQM1ek zL;qZ*ymy;VuTwC3QRk_8ohG24B2wz6610)_(j)-~Ooae)YPR6+jI%?z$!6xSHi36W z|3QhFU88%|%6wq%5m6@NW}{Z-4(8TWrr_sX=HXnXU|u?>QYC8E`Fg3;f9g~sg0Z4h z<_XzasftmmVCVg{^yODkrd=aQ0mIf2fNTt=Wj zW-4|1M1juFz+l0jHTLXYBDg!3J)99h6Ts`H2|&$x4W*x_myYO*URNI+g5u%o+-US% zt$1=FtMPxHQ?MXs_GhYqW`kv>*+Bi<%c$Tx%1F&e^hL|m4*0W(?l4aVeG$Duf?Kue z$H6&xB5-RnfqRMI{oDeLgBcTpdeTbNO&5!~Zgo)}s=dlwt(j%^^kSLQu%Mv9MjHZ5 z2g?%EfwBco?*@^aw_53dgDFVUqIp~}k=;Nnq|FU7rVI5igbbE+5i+W=Ygs_3*n$e& zO9m)gpo?vVFxgw+&s1+kztjEgU9=e4K!bnUbZ!s(A0OEgeVlXUB$bug!--noBkd|BzM{gRP z5Lfi6JAEi!g#QKl)2$d`SSt+s##k$m{?Nl`r^qXgLOjVUj+&^;Yg`CX2lJ;UulU`B z6nRCUmJ*LIj(cIclnj%>DTZxB+?(TLr(YXya*W3<4{s<3gr%Jo-g*LosewzLWcZd; z|M+Mv|CRCaCxMSFuuGFZm2y@JJ_aG4@G%H53;9(kLezBr)bMc(z)zCjTmh_-v>xlH zXO|}5;hTFZixOY)8k=k=dq84%G~rLpfwjdL%S;g_*O8_?YR~Cp**n5DKG%$Yupe#4s~k?C{1qefH+>-toox{zx@23&{MGPIg9 zEEO5pJVjzZn5geDfSgia(3E|ysXjRD*bv!I4m&Vj)~Sc2R{T!XYsxuBuh>IG0f`u0 zV1N^b{lY&77g3a2`Icygsfhj9^8i@ZN7BKafVCgDHv#Tu-Wmz~bcie_gf7%GfM_-R zJZ{QxzsQh^9|OHRup>>Wug;Wxa$Zy~ZjrDxY6-5OnvEFK~kQNlA^!uLe4%4T=@5IC#A z1-Nyp56fG)rhpj_%v3n7g>Q=Yq6J?VXP}f6dM`&l_lja{ zC&1%>_oczp;ACRC7u*S)Xx`_7lgU1PKe$M}W<19s)j!AK2ol!Yal&i3qWGA0Cp0WS zeSwGNwA5kQO7$tnp#x{=Y!Fm{R`+-pPngCLIhwpWJ?P z{nzU4H^FbpPh!Ac`OWnk`AzVf@_YKqZ?69}2+>mT4_7S){%w8bH`j0EPt?DGwi;Uh zt-^b+_M7WJy?6Z!P5B%9%5SdU$e*a6bTIV#J$>b;`V;;rPD^dU2dsmkmyjk(NTuI| zKZ-B3Ny4DO52EX6r=nqi*HpdfAI@Bdl#`2rKWm(uM>|bSA4cysWe?I4gtD9G3lsf6 zua6%S{HE+4kv*CI%=o)luRf9AY07WwE5Et_PSl}K(C-G`c4+jE_g?*PuKy=Jf1>_{ zru?LXalrf+L-L$5{%VoOa7IzZ9|pS`MP(Da`rY4|T`ktxmBQR)8s@;LlhTOq7PKyE z!MFI#!(e9}3@!RGirxVpETSJrTcVqoC39(;=)2X3osAd>cyO; ziHaYA;!SQSaKJCzP)yU@P;kocky3X+@%52}n?4;-{N&59wBdPkT!y7=e1>HqeviWU z*LWXOlVN!^29vr$}eR?-u-4;7|%m^TJUVZ^E96C5dR{6 zC*rvj&k#IEfUwA-I6jw|qdnE8hF_mnR_>|S^pJ9EE zm0PMIZxfCvpv1ius{*#l`-|;!C+t(;Qhhn;A-YJDUF@A`U9ahrTtoKIVJcYMP1V$2 z0F-_nObR7zA|Or%oUs&vS`JKHl+PO)NO94501Fpb;uAr`q=9-02^t>67b|$z(uN;< zA5u@jTX{lx1N7|^=4y3ym6!k8&++m-PbD8OUtR7WNNOtj>2j=yl$B`H3(LDj#n^K#NWVF*a+Bmu>N6>y@D_XAPOlLkcC zdFv)J<&eAF?{GEGFKu_9Y^lFgI})e1x|;upWAUUTac-~fky-CeO$*m>Tc`_1A zA1;CNgsRYS{-Rk@G0WuiKKOlqEgsmb#Y?Eid$pLD2K7D`$$u;+*AlaI|HdZMCq$k) zefEcMSoR@;`6cMS;jwiL8i0)7?Y-{cPwej7tsGlbP1%p9T(b6d7!1zWl{-5v- z%c{Q^-&y@Neg~*1x$%qoBoVg|SC2^ufoO1g>(oAFWB-9& zfwb+$o{8jQ!P8RYKv{?9Iyxz3(|43RG{S95ebxFT=%Ehb+|bH z{sr3AGhIm3l zj3Fa53;<%(_xMvoL!5ADR`WU?0U8=Yqnr-z4*PN3jdr3cOaz&r0H zA>zW(DTw$8@q~zv7&bzL1*lOs^QVT0J%l|oB2Gboh6wPqQ7;&%n2Pht{{uaQk4hlp zSE2{a48i7ilhANZc?ufdMLeP5U51R%(1Q^54gS>7@HOGijD`~t&<8zC#v$Q>=%JVW z6@y=fk4(T%X0(5W@t~O@*!)g1{J&3yAMp%7gT(M7M16xlb@&NsN$?{;gI^Af!rdQ@ zE1ZV|$i5NqGyEW2n1KIR>VNGT`exh*G#wk9^Se~|5zp{5NDMzh)HnE3ho6v^1U~}$ z>VF)N_6@$69}dv}!xQlTO8u{0L*KkL8U9mJ;YU2f&mb}U2vOhQPaS?jS`z#S=(GRf z5WQ~%z(=gx!Q;vuI}DHj8HVW3%WDlCXsBPr-qyiCB&u1-M_uykfycW4br`JmLvi z&olgltTzy%KFXgOvRVnlu05-bd!$wbXlG1gA4xuAl5W4BKq5Pl^_QE@nS5+2dj&j# zzu*qpR=7hsFT}1RgyT{M3(1!wY6+s2<15d$BsNitWEuEAoGic*iESUg@@(BCY@nR& zK2mW0x10_o%`7a+EY0wBM>?n+>wvjJc-6AOgue~u>vIxQeFM&GY2(1yrvt!?aX$M_ zU4~^mnymji@%|0MPB4X0JZ~mweFPs(jeek#H}W2A9(W^H>m#p3WCgEAS>pvs@OFFH z^o5?$F4!9*$6c`u_~g+x;(oOTbd*tD;fBR2G6zsb7P)W&F`<~Scs@2adG2ED%H(pwqqkhj ztHo#D6l~|G7EQx;zV?zfD#}CobPq0^o|N9o3C2>S$9+ci=6n0uNSylsosh4G$?l3s z;4D<@)=OGXji5?XiYn_})Ox-)lEp=><-3$>_#P_PXeRBC&MAUdC7_+vZ!ol=D2-jG ziV;id(Z#9b?>tTUx#5c`EQz-7gcWeMUEf$l+H5t-KA*B1m#@_b7TP}OGKiMfDC=m< z7NS^-d%1-r*V|z_TZVT(HETYZ3MVa7IWmUgZYphRnV0XYYtitxPCfd!INo>ynQN5w zHA;Kgrm`;eB+w1=G=~u^-IpxrEMRdP0Ji{v2y$>}AIrK`A3jyk-P`m{(7g0-4 zDK`zigN;_PM#4Vz=6NUtWKD%NwXDE`J&snPIfE)z-!zb#L|T69)O(I2UbkKy#QMCV z4p|YE%eaU{$RI_A3t%l0yJ^CfP-HN>ixBuH9au0sy%WeqC9aR^Dh0|m2xWjd>X%x% z!!0!N;SWm=&M$DzhUGsi-$ZG*SO~$ymgrKJtk#ld6?UQ*2_EiVaWY^5`<1W~cZVlz5~e|(IT4H$EcRq=<1+eW>IjX?PA%m~ z+5tXx(*F2Jv`kxrY=R0snl~?*pqCe;3iUiHS0vg&PlfGO979%t?Zy0xIVsYXTK?)m z{gm$%<)4sRzOa9Z_O*jtP$V_7o(lmf^lm9_a#zDjDO&LnZFuyiGJ)u}Of^_X_t%z2 zQ9#IC0E}^@!qSu14=f&$e}13&Ay+fQ@*)?~FDyNzgc7!&XfBFj!4Q&(Tng12XcUC= z%Pb%)4j6GP%(rqpJQQ*W`Kv{e2aP0Ylq5OLCA4!7=f7v9`QR8%gQ0@)l(28Tt2=I= zoNu=Tj*!ELpIBzMypCgf441X)M*0o570bb|t%0w!OMLA#ax^!#JO#1@JJ=cTmLhfu z<-k(td@AbWk*1<YAVxs4hL{JpT3|BeQ#1skRvhDiMqJK#ei2mv7GlXl z*Lwy*2LMYjHfS2p&!QN^Jn$$Su_E2!Pf!6(?*^982uEMb@e$8_Y_+_Bn?)-ZNzh5# z4E~1kuF+69_voEzmU#Y;NJF&%|M-UFJf6Rsg39dw8bbY%e>?|+N!u?&Rq_0{MC^Sc z_BTeXk7JjL*tsIsVZ{E9V;>Z;=Zo0=QL2ziF67u7L~MnK{lSRM;@GJo_HYrq$B6wF zaL4mc7qRid+-B8?{eWW&MeGg{`;igb$+2l7woSyoXT<)KV?X(bvGJsc-D1Q(!m;fl z_I44w!HB($V;76qnId+R5j%@x?+~%$MeG|!>;)Wqjfg!##I_r;9*#Xr#7ZKz#fT+( zj^~$(*j=z*Kc>Wd<`+$f|)Vqaa zmy6i>A~sQP3&%brVlNc2FB&C3%drbY>=+UIlo5L`$6hRAhl|+7M(oWT>k_e65&NtW zJA-4760sk{It1wXIU{x=$J#{fY7zUq5qlcPezu*l@wA9d)O!rac8b`Lh)vY%Rn6<%9$)_zXh_SW&^d!WU z*?*Gk7MxaLnE?K`1E9w9KZYX@b{IgRZEx_=Ecjq_Ei@An{7~5z!}0A}HS!KEDsiC_ z@2C6&^8r3S7j?v$-%z7iR2sb0-oYj@$)V<+R%{>HxV!ogO-P1MO=@S; zCjaQ*POHC|{`>~+0Q^~rmZ^}WS)h9K4fr&yFLP_*C!2nw;NKRw_$3`_`Yh15V?3{! z{4!&Sh}(=vRl|za`db z*zdq2wX%zRX4ut-S<|pX*^GUii3kYu(YvvXqVas_vpk*!?y=%y5iO3u=4n35;jR~C zv%5y=#xBZ>m8G%{*MEKCDx3NUFs4-7il*<`%6(gXXp4LAR!@41r>V;3&-3wymhT7K==WhJt{J7|{~?XVN#S$eo#Ox9koKk|Po4^u4$(v^$WtyG@RCIiqdp9i%4S zP@}lfJcv>@s<~(mw}S>d?S@>Fs$u?4dB+|67<>0F_a2K4&b$4C-B2m0sjIc^-Rgst zv${^-(Hp&WZR3<7SS?mL*$Q}-V~@w0F8Sdw7Qeym-M;irUm2?Dx-fbv7!=p7UV(}F{G@eTb5qPed2g5nZLqzjoO5J+k3Tkt4E8xnd-$DJF%fE z-L=Ee-tZn5X@j}COm*^hzBxcy305#DI{N~Hx=)m+m-YQI6dIsRgVdis<&R9Y2cfYq zaPvUVukJ;Z`VoS)K*}%H`R09dA^MjF9Ox*jE&y8tb^a#!y)}Ry#SoB{H{sDap1<-P z@GtDgr(h#mo7%NZVxK_An%b@Yo(u6~yO{e(2__sgC_4UQv}Gmu9!j^X_u<88C*b@e zTFS|0ptWM{EiJX*jm%A5Y}iinv^Cpr!MAz@@!ZuT3=9lW)lc|i0LmFaIM{hd!b3B| zd#=nL3tjbNEGWSOt%Rnh(0jOTFWrveU{P;FpP*xlu`z%cH23r0qMj`uaa#$9uj#v; zzx^|T^lN1$|7C~WvciSTN^5ZY86}-E_B!(BPPwdA4pnc*qvA#o{gN5Mnr2;q8~CVtP$4db`nJ`sPdbd_W(Fb)=QQQHbM-=e+@mMdrhQ$l2U4J_A9A8qft zttTFsFW1?BzzZgv75tOqY#3czZLtI{S)Pr#WBO=!LEs!;NvpKXJwy&qD3H@P;FYZW z)%(IZYvj<7B5%b;e}OVC$5#=7kElvVdc;@JG8+=E*5cTQAP8_}BE2EO8;UG9(OVV> zJp;dKO!oz1EP@gW@7Si6pu5U80lC?Y?*=mE+w*Tdjwu4G64B4~W1dEc<&JHBTjQp{ zKujgIAQk+KDbfhnyeH4E%0zZ$8)Tzp`DY+waK{<)<~4F~e>?zL=~{L3c2EG;D4Wr5 z!x68ZwS$bKK(r%yV2XfN22>u?>C?3I*t_-6mc3i!=s>|mfLP<7i9ZFufOv68k&nht zP1(CXC>0g>N;cF;m7A~dDTj@4qGM_*Ht(Ku$aHtZN0#oI@WYnwc--Bd&cT7NeF}1; zCxORR&fSb7ntxe9X7~tq5o?!uCyMqz05$4(zV~g~;)Zj(2B+g|4u3&)3*%@QLW4NX zi|1dI2$dRv0a}nmNti$@U0FnSBaG!P6gEnP?L%0Pp03a+WRL$`80+%aq7wgjIXGer z>2ss96Y(o6?eYA-Z{cls{!4Z^d7%NoLjj{;^LmoqlyzVMnn#H@ua(O-%c1-ne8h&s ziY+$U5P@0Cy5jls-l9T6_U*?aA!;hY0QN!Aav|0_!%-XhANGPVZ!HvS8W*i;WS|eC zIkAxVC)ndc?n@+}iDKgU?`|eGm3t?b+2zlO=g&kn+_~DGUYCI#iN#lM$r5B>*BnN` z+MgMOnOYYt5zU|#LI(CI$FK~nkza)j485tzYBmvJh4VlB+J=Hicrzadhs=8mHC|LG zEB1NN`<7oG`S^z?{HX*rRb8e8lOfh`(#_9sRbD@iYPNJYT5~6hnd;blB9-2>zfWjnPiB(-UxM zsx3I;1SCaT8bjyG;pd86D=5Z^q2nDZ4Vc<4d8sL3*4GMWUYP(CRdve+U|d#jDH$a3pcb;p%SbULXYKwy4q!YBg$e#q+;G z{TSjo;F^xGoUXo3vOS3NH_%9ISVbtKPGVg0Iv%pMv)=^8hR4YGi9r~aP6)sNu%Oo< zu!E(R4`<^nn-*m>UyFXw^Byho9+r}K6}703yvA6fW}nTt0#`X5FY){-{Mos3fX&iE zHNhLu2p@&f@c;%%x#;P$|G+(+xdPLY<;~+jWy_#7qpkt2$c}C~$nh^DKz6_u1dD`c z`-$|e*l(wwkbNI%m>{JK?>``GhkX-5sMZeq8+aq6ci6XRZ_BZax5!twpupU9l(WNT zrJ57rO73SQ6%F}pg?bl#t6+LE2v~OgNo-lL<6%}fH~tD z2Gc>Nft5~%b3Lk8XH$9v7Nhk`(RzZjSc7vceJl1y=_h1&B6){>4>rC6wr;!$*!F90 zdUFZ3-3Y@ntrRmkC@nXeT6`7}54Vlzg|%^Am_+0Gf%WJX<>h_U7FLs0*7NYWg2F*P zBlY3qgJETqit|i;=)hE&566TwaOemD#m4imT}Q=Dg*{TNR`~qH1v5jyk*F<`Yx@_~ zR>roRP~|jiFyi^&QAX4^I#J&Ys&87NzILi_R&sqmy$O2jfcc~aFK~?)lc0yT;S7`-*G*GnH6%*}DzjxdZ+g z@bH_x)7`Lp=CxONv!m{Y?rZ&5T;oyJy2DkNz}yYH&b;EV9P(&LeXISheLwezIBOBf8IsOJiCxU~i&$%(RR&i~q4-eM!#`*wGfwEs|GQ z(I{$`Ed4byXNX6!Uk`ri4t82SA^X*Mjb$S2GQ2c>85r8|xkc)h8se6`X_nd9NM%E+ zYD6xljlQR%d%>|~UDD%dnMWb}(Kc!qwMts~@qjs$Aq^RZAcM5>vmtY??Xc&drG%jl zdj{T!o)L5CoOAH^usLU;Fe@(eeN-rCZ(z%~M7*U%8K-3gMk@BLKiVw8PDh8m124q3 zL-y5pbMI*@^bZbp7IxU5$0wK;BA&w=QAs&X>(^lTVnL+4pD$|}ZQlpU6}CLol_~#B z>#>rJ-rzpR?4$NXGW|oQFTBHgsx2>Yyc~~sz5%Gat zGJN12+7jFvZ(E2&Y5w2SfkFjJ!1V^q>lL0nN5F?yczg5YIRj(x3d8E2yn?`q&@(Ue z#=8Pq#Ia#vQDN9{A4Hvcd3!hKf=2JESM5lDy zEMN_9h1ZXhOE%7dHLg}~dJ8t4(w$_m!P~H}9tot|W}@$;l_T6>8dfRzHxQCnY4a%` z!h0nyy<#utRd#>#1a^8}<$JjFORIzqd>S?;)=C`WTe01bw3+Y=Cj;T!>u>0ZS1ETk zJkUgTg1h27w&Nv^X9u3I@s!+_VJXGq!c&V!MOZz47vgc^S%hZ>o+WrT;IZS8hI_CG zkd|dl4>=&-z}cgNzF@tjG7UkVW>;DpG&q_aZQn@OrF|paVu8&|pOPjm8|Ofxaaq2Q zWjcgKo@P1AtE_EPvQU7+`E8uthV=BktPzM)D7qiaX`t4p`f?<#C{tm+dQoUpgY{OsSFdYNX@b-M)(4OZVF>*B`=H zf)f3Qxb4z$Ue1qx&U4BQ5hj!4-1P`w2)+EgMHI0F#EQg=5V(W_TPSb?LRt{AfkL)Z zNO$1xR3wP{7O6NA8wNt#3Z1?*>DC7z;nG{_4XRGjM4SHz+$J-%C(q4oAy{a5e2tPM zf9|-j&5GikAVV3C8?@O5bh<233EE$R_7^nf5mTZXs2v6zC4i$O6^;_XQIZ4)vb!jI z3E(M7g6GfD^ZTO3n97+Rz3H646j(}ug~(otkU|P^O3s|T z!1Gk1hHf3D!_4@EoF|H;wmd>-H>1-5l^SS1x-_jtV=i;yuyce89lkUvcq=H6RF9xMLVV?$XQAIjm2r0)^p5n) zk={D{Ewn`=Y{F%NhW)1{(Z_LC0ysgXAV{}Ho1jGZ20YuR<4V z*0+p{3~)7%mFelVJ2EUUs2hVR{>3Hy=$C&W4FnI5WjG}mV7@%&BUGQxR(1*ubjR09?J>3eJt9zxc{ z(holT#yYO?9cLTDSO?N{NHu=liwxsze>hM z&3k1bUq;(!Kp{&m)P(!zkjZ`bWFM{UY7|wjt8`+qRkjDl_JiwbML4eR8fVT}<#MOP zo4&KU=@Y4uY{dB3uSeavxT4?UP2W_~;jU=Eeym)V1@@8Wt?2L{>kU^rVW+_xzQie) zY=tE$Fxi{}cS%>k0rNK1OLtRKOWwoi4iw;!E@5vX> z=y5p<3Ve0ra%dG)F4v87Lbni_S~(71dKchA`y*H|6x9YCHIOP+K&0-5QOw|KTXn@M z>DH5IPm9$Ll#f{RDB(%HZBONp^uWh^#tyLtp!U@od&g7KQC-nKx5T}tYKSY41taPw zAdNNl8*g1z!MHk)Gsm0WI<79KzH*NzZ-~_|#h#?3>4CpcvcQ8N(b#=`%lqrVVwA0A zUC?wpt8S_Tm_Ntis7c>ejUza$ZQ8tbPH+0gctoyCV|d#9S9*gjHh0CE*`Gj^gH)%> z;j6*&k+R$yo`BRnvhp2e$b?`~F4-+DO_P=$HnOA*vcGsMF!2>uW9R6FbO{_l4u1_U z3PQS5NGDdsaNmL|=6qBWwkh5^3*d4Lu?04dtFsYWy%p{LT&(l7hI|lPNoZO|IhG{n zc#LzPS!jzld@(xp9kd6eao8|7S_IN)twxh#Xp%Eg;Oo)pw82w4qSNpT9?BYptk%Xm zShfUfqU2eiTcTul@C|ITAS!@4yY6bG+pVZ>Woxyfo>jNNnd5%JTB&%P!0vwR_Gf|e z=zNMqEZ(|9U`#1}le=V z2nU$(C|BW@^gFUtz1pLEF4HLE@}}tJm1=|KK;;1>SRHJNVW`B?@e#Zs2cr;Tq6LFt z;XjAyeY|2T5cH1TCVIz`6jBeVX(^Adj_Q(C)fKCy+aJYebt9Y&{{=5h!UZT0V>^&T z^jQsaZ`D$D=Rd8n-^nQi4gE^|gDP*NQaLAYNMvW)o=x>1Sp}WDl}^di>A9l|h5M`F z4#ACMV9)5PoCSmBx=Co_c;`69HjJ7m)3Fb%1*W%x0r)fJ(KIeG@V+6zOKr@7cG!KA zXLq~0pGdMu zLP4;3M;pjP$PLeaJSm(u&ESx92NBAs%o+b5d+!1sRdqFfCz%N(B;f=l3L+9ADjKL! zP!lI;PBH^$WTL5xhN_jmp-5Y+2s3~cAutooj! z*YqwMEYEU5w~imzE>`CaTtuqm9wzG1H`7hSLDSHz9&;iDZNIO4kGyVOzG45X!`eqd zk2-zjA6A_pMqGE6H3Lj_+U|Hho7vb|lEXgP2(8r-v3Q953E798zunp)^>^2!{Iv*&21w~3>dW3|_@E>H3VPV-OQt^_XrL){+XL$lKpj`&hU0T--oEMZ0NeW-5X`^#*l5*y& z+UTOiD%7i;>S-rF$d`6%eHRI>D(LCva}P=n|L}b|#eT?CKAe|rf!0`o6&k|2Uja~D z{L#qG77|D!d=De^2I?H56*&1CloeOhaGxHYqX9L+G1{cs=dE`aNZjE-=YFpKu6b&9KL$TdNqtDUJ z`Gr1nH*6o5I8YJ$%mda!+OJ2qVOqZMF(?iEUK&hnQC)}}zs&2nI?weZ=fZ!wew4SU z+iPk{&IAQOF8M6OZK^{$<8!bMd0V59g^Pi*lOmwP3h`QHx?XCVC||8?l#jIcrH5qBW(&ta|5{{A zCd!MKJm&6kuUQWRMYp*_p04i(jf7*F3A#gZMGiHNv!e)qk~;9&wf@C z{AcPWvtHP2G)*d|omRu)0Yy{nh0Jk7>UFdvY*y>RQiMw*5s1ZKva&iA+t>%!lCrZ> z@iz|T=`qZAt+$o+!%G0lXYR2=$l=Ya3(Y;?-A3yUl=MtGl8_YM(G&1)mf+p2yoLSP zX?H*h!T)|b7T0m7+ccnA9l%`7EcOi*>Xhy=a^sXti1`y9QtU+Fg;`HVo|u+1Ups@- zI$2{zH))ntta>0CYA)i7acKW%vc;6Vh6&7yXEApoYMP~Fgc<%eJji+l0j}X{Y@AbI zZIYmAG(z4HYEI6xo|cGkBgmCjDy#Kq%gxPR>t0oOeq-P)>vmPRp)p=)M81O*=>Xe> z3DddFKQ#Wnb%RQ!Ya)OT8;$e@A-r|VI)S{%k*$kV4#1~GwRW7#juVNh7&)Z-ZH<(K zaHC{S>r#P;HNcLS0urzEEDg4v$&)1%65z!%pw3RzF zH4=xi#?vJmQ6q~;c(Yk@tpK=AY4(~&Nsdx{*)J>2{n^k&$vd!Fh8dC3%1wr4|6niS zNfoM8dageEu!yR;Mj-M{8|Oc?R&p@p$r#iR4b!YYsgKLhO*G839#9{XD}6j{Vs^+y zpUsA&VcNKMY{-R&XDn+SyxQhw0W#mcvj_tMDq@rpYl@S?x*x@Q6NPGmw=bi<+VN zJ7*Z$D^WvxradrPiq6?3QthFc`r5J)ZJ)WyF9ot~`8Eorygev5^#qejpKv_B3IUee z>_R}YM~}Xd7u>D63%Xc9*sf@oZ`I#hH{6)`5(5_!)C))Y#98B};+B4g{jxKlQQ9jL$DHYrJ8f6=DI6u>e`K`eQ z3I10x7}#*VYt3g@s5h_4t2fW_npaoWmw&v^2vMTmWX)|A9?Z-yq}NYf`i3bTIdctSeWfUmSpHPOs3bd#%sQm=;Dsl z%?tgDZ_ZK}J=zFPIO*e@tSmoFbkXsItOU-V0RKRB)4(uaNR;FfZTb!t>q=+tb!?&{ ztCi*MH7C{h%(dpF2aDAMWcA3=UsME)6jXoEsYJ=7zaqG4BX?q*;*epK*U~?)xv11_ z7I@1))m3`cy|FkjfKVZ!LVuplf!NhGdy{Ui_wbtId6I`Z3MmjM zlcVyO`0&WY?8jk1CK+xi$2jX9YxG1H9i>!a9SSu%yW}z$cm)gLXCbLqRCvuFeev*O z?{Tj%0_)Gi_!GqjAZ^(;7@+gf-};Eyc*?RZxmTXgR6|r!rg5_7FduoAn$pH@5*Jz@ z7-S8jBJ0moLXLSf)7M5WK|QH&Zb}Y?*UV?ldsGa!pT&g2#BR^7&slA=Mx@<`u6X)m}T!Mm7n z<Nh{}5HgZAOx`BR}McYYB?oiO@E=yC{0-9O0f)vK_ zId~8K=G0`q&Tc0on74?MTUZy5$-WI!uk1)O_lty9M~WWjyk}X=YB={gstWcb{1_3G z{8v8u?@qPX!fKvi7JXY1fn%ZNps8R{4c~I1PT;L9GzCx0qSMmZ{!X32qM?%Q5L~Kn zGLEk|yVxeUotz!)`8-g7TE}Z{u$D07zVoME&O@?hJ-JsTNjT80J6>c*HKseyNk)5a zyiE;U8ArKWn1h@*Wsj{3`QunfZfovg#a#>XoC}>{{@O61CbaByB1Q+2c9RsAP4r@4 z(^RYjFV34Bal(SO`*pXe4~EtYQK;a&va!}2JP5Iq;d*s83qR^{b@6Ea{1fZ7rxoI)anzPA?-aw(BgvM__RE<)xA$Kn^*}V0VxZIVkPlRfvZH!Y z1w~}S8c}xPFkCZ5fuB05VS4aP*#is{_hB$b+zCcJ(G7=!kRo}6n1uIlpSiT`F>>*) zq&%zlFu{5TC5GDSV(dn1Hw?116o+U$j>~Cw3%misjJBof>AhCKZcxQ?se-+wQY0J| z<{(Ze@NuvR7_&jMt%oR|lF0~ZgT&b~8T@-^cqpHl&veK^YlZA3`f}lkbTgaF&{ye- zQ@TutRnp7bg;7G^R6E*RrH>92bvPhPh`S}{I6LPU-Sm>PGuWFmuhbj7u_7xl)EbVQ zrK6@sGAn9pms6JjY%EK|au&?xe07GJlHPA4Go$JEZ?C$B?G}lXXWUyXL3iu-k^F4s zr&Ece_E@6kLso$q<7%&%)4#w0@Rbh)-pOw(TXLu`*PewV+%Usrw~i&2a39Hd2>(j^MtnaH5A#dIZiFIjlkmb1z1|kcL@g<4RLBMLm8ksDa}%9w~9-AU)41g zTFd7Q-8zQzjjw82DbLYR#_BJ}9dmxE^*PcgUNWg%=jq7ynX^Xw!hy@Jt+J?E5?W|R zx~;%)X(w=OpEl+VQ1yp&sqiW4q5euObh|Y7d-*hHRa(CyV82@G3s0-GegQkmhV?^_ z`KhPsWbHP24#8`FY>l8rZ_|ZN!?Dg?H9gzuA7&M1qKu|1vz^vK@m%j%EwAjZk(;9|fZ#1X8f@g!^u>$YNtYW=t?jG%S z5ew_CxgTq{?-p>>(DnMJlYNeE-JJMo*t4Df-WHXVbCo;(ix4Wc!*zeVP$aNn&n|0Z zDxNsAusB@5rDgrXbF2atUBAm`PO31P@>!U?F(9ip?0LufbCI&gKHl_fF@m05POhqW zw(zRedegH#(diAY85|F_d9LSLz0dSq4qw74tPx2?o2P?NgJF6W$;kMf$4`wnGI5W5 zR}%4#1S)*t=`3*QaOpZvXSOvLBx3ZyKvV5b48xvPwxi+u>dKs2XeGHICGvdR2;L9?Ug~iJ zmDsXARmC9dZ5Eh}zp0K|x}+9_v0JRu!7K1=9_#U)%);_gQ(OJ@h+PE$C}@S2F`qKc z97owhQBI7;mBDoA*IU#aKU;8OZUtkxK5(S~2;eE0;Ftg~0YiZcEh3|~A!A)h=d9mD z*kw5cP7#+#LTzmZZw?IJO-70mUZr1o)oSbaPqJrN56a&sAn#kObu!73`u)}?U^ZC( z#99~x`JVEw+_MmwxYD)AdwUtF_^icM47ypJ4LBIQ0jHpa@<40rI6C7t|5(;dH^gs2 zm;46j7iak|6Whd(elI-44(lTxur;b0i~Ti=&r@f+%EjlYvmWCMm01)@4!(l3yc^0t z+LnCFCV>6!`}QpToOKYqxsU_ILxkLHFgv6I5EQ>~sCIqH~!?qxIk~6pwg zl=Z?FlOQ8`d#t}o0%Sz4fw9qFVEyKcIa8Iielf|eYtsSFV(z_~ zzzpj=l1xo4y--;@nG@@|$KRO6p9Yi=>(vmNE^-w2|@9eoNwJ^zwhBSJr%yD`Guk!@;MGz(=*XVlTm1n z8PM|nLbuV>;fs_tTN7344zFlHcUWceC8XcnUQadX;2vP~iU)xl6eh4D>u|Qbzo;|r z(0TK!!*$+*R^ja$^fo2ThJx9mB3o+9nnGlF$rFkXgZ+}5kBM&he6QJ#y%@BD6QUOx zNpif0%9P|H7xx}t)2oKu4DY@--rw6a3zf^6R)ldQIPh0vo*cNQ>gpkW&AJ(670$hh z2hSWk5G^4z;nnv)voY{kijK9SEI7GqW-WvQ#w+Y%6OUYMo?R?iK&Qa6K72h|-x}eI z5kOgi$3?Rv{II&`X3NA<+Odjyyob>#HD%+_CCzvGwfd&{PHQFP!y6ggUp(Wy;x^gh zna_E2(t}cBko8NFIix{K*@l5Oq^PFy#$qibw%JuT6^Hi!`7MM+cIMM5BZdW`lO+(QP-pyVbUprIUbB8Qytoz` zl**!>@(B-&pHGe1{tLY36f)4yPXv}y$9n|o(Z&f>dtO0V7F;+uPiuKZ(yPwXLjSFR zKF}MvEYB*F1sU!ayNx)#Y9VvxZTjvIYi*3^NTGv^Y33Hp|Ik2;_g39JS_>(^&(exX z3Gxn>YNV6aP8+4!Or+sOG#qzH8UGJN{W)EV6Tt@?f^yK9q__1ebMD(Q zZ2kV7iKyAjx-B(36af-E7W@T?7btmWg}pLYTR-K_u(eeF+$w*T$e)|}v&@<&e?q*XTst^N32}MNz{}Ys5sk6Hq3bqM)LTDiTSJ&_eSB0WMK64&rm6~Lum4gYb6_x!Pcc0dB6=+1JCjqkof^jhiPzbp7 zlPHA+QgD79j;^ z6pSU+*(9ysIb`-L(8*!9$^nI!b*-)3E>SR3Car9)TdeN_Dnt|-EhlO!g4pzh_6WRP zpK7noQQl)#XTv6yTK+z9!3EjQEdTM=v_5e* zvwoq(WOmu_x`pY)zE*YSBsyb_=~E_E&yYTGc0K(v_2|px$j8x2BuU@O7tCM-vZ8K=dDknGRv%e^0&_!yqGmGBz-@a^^AA|63n@9kEjG+fi1IsE|iE3So*f| zRQR+NBjupG{A7Z``88RAv+YBQ|65hZ28ubPXaUVwyl9#nhyBO7tNQy(l5DhGIfM<) z)>?$s+BeBL!#;BbZ*szPEg_C&AfSLN@!L5{{okdAz&Sq9RNX$_Xzdj^^l+}cfh?{% z=6ogrH{_q=ji_-~Teoryjh#s>Jp#TLRqDuyw54*CcDp81;%q{k9Y@FI?5gU0!Fv4- z3VlZ7!J7)R0+af({h%68Y+!kU4T0&y58<$;`t?PqdWoN}v%hlrp^8bGX zag?M%NXax&o6i&qKT9aQTvKn59sDnUNb)Cgzn@+F@H^(?UbB%0T&kMN{%thf;Is|^ zTehu!vTbd|G)MN$*XTO?4;kh;t(}KvsGQ2?tpM4-**{>PC#%@rCdog@`jg}ZL7OJA z+wYOx{-b0Z9DqkS0K@g6e{$8;+*`MrkC0j7eB=}@htJV&L?#yd%G)t4lqWT^$~TBP zTRWvUrW8i5QCiZ2M$krWZ^%#QH<1g)c1|_&G+!#WHVew@$7#5&70eQ z1qXEQai!$rC>>Wy0T{!D)#<;EAY;EIG>juO1iWa&;C;}@l55_x& z3W$rnYiu8jW&p~4-#&v{L?n;%#a&wHj|@gVR#|Bq0 z9{aP`gipohgS?;LEqS>X<}-6wlDx8pF`|wN?moYKYug49Rcznj9oIGa);kqQ<727k zr(}#TC(ud&$gYq=_MQ3dTfE~AOuqFQl^Ha#8OCdcVf@0WC#9E0;)^BreK@g2@gK=G z#lJ27dwvD19C8k%dm5dE7O9Je4uMNDtkHcCK8aUS%~h0E2N`Pe+BN-`)U<-#fjX$G zFjaV^z$sbL>%WkS`qVRA>d9eT)RS-5Gg9ig;fwXm?o-b#svd=}Nqdr4>C_G!)SA5v z>Vx~KmBk{pJ}q8rM^YUpD5Ny>EH6=VGIhnV{GLcX_GyX^s(W{t^OLF=i&QGURVt>1 z+_?lGz5+LC0%C!G1ChpZnp1TbxaF322k?^WJJ^fu>X{bqVy4?z08NQZcnm`gR_9jv zaUqM({dEVSVe5_kTZ6lEKQbPX%^`2~CbVc(Vz^VvRn_T|850o5C*}iaXK1ETMxhK0 zxT_k;ovP~Ffw7uEJxQQ!dX@UyhaQSf2pR`7f2r-8vnUAY-YNF7S_AwUaXJk zcdm8PYWsdNw-fD4!Pc)gCvPmH5AGtnbsG^PB;q8X#2xk6XnAN3@kpZN!@I;9^GS6y zsy(}?IvF4`RvS{$Z6938fCi4P-VyG6w+vmO62mloV`To_4b`IVJ&&m_i&3{ zv;7rp&ts7Eqvc`7pU&fHhKclZACxx7tv7oTB{xay)NUk7W)g%<6>~5s6z5L;&5c&Y zD#1kiQZ*(u6IMbpBKMUEw2%eDYs^6_@+KBs%6_qEI5**8qK?cDR4A2~aFa+UtcxLS zGHl&2?_Lh_3jsPyQJ)IX(B@(dWilp*2`B~=eJwI1Imig2iCtBN{$0c(xce(XxX3yl zH~hYTp#&6H5iDx){>Ry5TCy%?q13L>x)_)!ohe8@y{we2OZ*imAFbyLI~`P)enH_c zrjJnRhZPbWvvsicUEnJ#l2@Jq6I-QiEwJ)fZY=8&BiowC@=lZtRg>4Lq6Ig(Jw1>p zbxt}mKV{~weP3wx^Fk|_ss78eXgQwi>d<^0*Z{9&$3aW_0GX_hkgf>FkbAFuT_wP- z8h#t$!0C3j2{-Zq8L-x;a?X;RvJa7Sy5!6ibzndqrHq_4Yz?_1V?SLjKlK%W%iiQK zLE;N37%!DYN+Nru&W$ny(cS&L;W0=_@a@yXkCVGZzC5ffqPPn{x7DwspE@aWXC}C| z5y^X=5nRWl;%xF)_7?GF+!7Whk)k=$ksq};B6Sy%Vbf@9EW5RJ=ieAQrcgz{eouN+ zSYVxvnvYK2Zht%ILq($Go}UUCf&>K*4hdjlTQrMgYaGzP6GjtZdm9j4ezbzgnM(dt zc!~NBRr!s1!S5B*_ziGnXS5_1o^JgZ?W)=7Hld&| zTZO;l;L_tCuqQZqaIt`UkXbhvV)k&hKX*^CY4B%hP-G~wJy!Nds48X)LN#MG%)Ip@ z(25nMrfr0(r+|7eTi9szz(I51yow(X=XGk8Vyic)O)-|l-_*LDg`qmvcfkJ|Tux2f zlqKeu_U-q<(>OI6<^*>f&^G0s#g8vCzC#y_HAu^7uj_OF4Td>F={AOScp{RreIY3NX*)$r0mNVP8YDfGy6+|+n&pkw00}Wy++!A)vFoZmS6voS^PX}?Jiyw{x~B9N>o|}{N@Hg# zjDaeRaxA@{Dw$_mMy<9=<{n`uZYPjX@84$xyFWM370=PEJFeoUc2*(ti|3sy3Bk1yR#h& zi`8d}eVtkp5xo(QT!z^yZE-mUM0Lwm6?dl*TrP20DcXgdVzYF^*lPK(VB-i@AFefY zvlicMi*hkV@}HgP9Jfsm*YdvM>ir)zud2XYyZJ!X!lU%I=)N7tt#97l-5mX1bL`xl ztr(3Otz0|3z=%KVDX%rWiCXpxfb9v_HuUKmJ)(Qu3rqHp?*03HZbPyCIgx{ZNA;LKtM2$LQK~ zo2_Xb@ZDI+3`#gmhXe}HH+*(;ZhT#^fWpei=19j-HFw<8V^K(VJU;ViAe!f`sx1y2 zr8oa%2B_xxzuM)9)f{T(*JyZy_qk90+gHp0(Q}sV+$u* zT5o1qKNixdB-@wBVb@$*#@O*mXpP5^(g;4JKC^gTt09Y%5faME;Da)<&(OKlv~9LN zqesG(EwwufXE^GyBxguH_O+JuJ8~KLt05iGp3Aq!W27AH`94QDF3LVtU`=Pzn1&Cv z=L)PLDs6rMo21n_ynNcmCehj>fH$+-@>&Zh(&lJAx~;1XbX$#r{6ib5)AUvCV+>o_ z6)7ug_Ftx~my0M;%d1ADAu zFMIY;*0YxjQO7(!%bNQMlHYvG#hWV(C69d|_CGQw!JAlbFDHV6)4`|ZZ;lp4g4FE6%%U@BT+Xbc+==CZRr%g+Uj)kk}+dStG_c(GqmUGxLoHO-5uPm zAvjncacj{FG=v1<;mPA$*58;PoLu4DzmpHPyvrD6b*X=J^(g-d)#d)d z)nokwsw)C@8w57a97SB7RxQXqo@H-ZAY6N?oJtoQ;7RBZdd2nBxA7X^OB*p7e#^1Ai^ z{U`uw`(LBLKQ2k5z|T=pDilbbQG~_YX}xGSQfHWIPiwnG&ur=3a!BN(%Ok=0gSX!`ZpA+o%gnWY6hGCjglbe;pO^iIF zN-qu!Y8E`prMh@oaPnyMPy~$xUK;GohB?UH3L#b{jRc-5Y4jjx=p+UED~hmGqp7nA zRg33|Z|m#yOS4vFH4CcC|1(+&8~ms})BwN9kbm~vVMDf8CQ^A8C)@lGq)mgZA7^@V zvg%DdCoLwnZLwvr7&`LU{1>`Z+frELpJ|wFias9>m0E$y1qv#)NvJHbGvb+sP1^oQ zFt}PMhV<(K`c-T9>!oj}p>!J>74e;!HZ@lLYSZ=ViGiW}vQhp|gPL~eW6()MBXOk) zh0m(KFmQ@Wtg{p4gl{d%)LN-(jh#Yj@W$$_z?;=xTU%1?(?aktS=EjDeXalOYQO*F>UsWSs( z9HY$4K(SqhUaB%^zx8T4bjGhIAo_&(3<5H^ z_*FcEG^8!3dR*Yx=AUGr8DImc%^^{A2GU--3nFQxNZ5`_2k@y*= zx5A7@tz13S;qR}ljP>U*qr`0R6!BtfFPI%467*ISuM{*!cxIhXhvK=GP!ia_{@{^^ zVK?7YgTfo#UY2_D%drt{#z32ry3HoyRq@(^w2B*{t_;a4>VV8 zwInT1zBxB0+9vA}{o#jqaT9}bs)M=o8};&;?GgR?hj(#!_s|0;yTfVg+|>WKtxRm7#97{zg_hD-2nq@Z-}&_%jn)s_Y-q`VvkC z|F7cS1A=i1_YN?z{{imZF1Yfa;@(^c`(e0;=u~j;J$m#1J={B6OkU*F`_;H7?;CtA z?!AkBiH&=r%>7E-d!DS{0QV4kr0!uEL0!&49P;&2ZZY(TC+2Y&uyM6@pZ_#&@l>~c z8+w>;&Btgj)NX|57~0?Z`wO;O;kpJ+EZOm41mZ^_3}3P?C#$2bLAG$jD25zo)TxBs zu8$^9$sOeQ(IAwFmhrLQ(thJH?1N+UvR#<=wFkRjk#CxA^O9nF6#`8K+$xoLsQ^HBlvtCsDZOTkrtCE z*)GpATH79H)Iw`=5k(&zyovkRXxb6Pn3E0bBoGZYT7l@tsa%03yRAzMxejJ7w#62C z?zZfBo_?3aU!!I|CEPO=ejz54o?VjhK)AE zM+NpHU=!4^9k}xRBRVIM+p43fARf4p#Jx|Ik?Bp1>P)OoZ6f zIg!Z?cxE)f>TLpNYx{3S!oU_&SCbttBfsS0ar3R%B>6Le z*8l=ndPM`i%21+?|CZt+)3}+xIsWf>UG4t!tzi?>eBO nu*)Mk3ar+`Qu8AsDF0pj-f`RFzX2V5*;kaZWj_p@xz&NJBR=);SbsmGiFl5FJ@M)< zB=$G7=SdhPP>c^hQu1>oIJKvY9yh5hIn^9`cH|@l#{Qjpu(QS;uB#Bdy*a<5PA%g2 zAY>o=)sn5Mt6b=iRf$N-N$f5U<}j}9g5q0czujaZnHpe+%Lvm*)auVl7#_R{xgc`0 z$wqTk1!gb_nHlI#c15C2FpCMw*yp6^U2>j!jqItwL+9VD9&6KMO73^8^@uwS@9EfN z0q<78YhF~n5 zkXgx%Gu^Km!Faa+H1!wvt??YO-+49Ag7Fx_=YH`LE^6~LQ2X1Y(K86-wp}#3b>O;5 zHOZ$LDh{WmUqZ{x8!EZ$mZsnHdzK@rU1WrBWF71gdj7Do4}F;>H5{5RlpGSiu^m$l zjXO_Zxi#R&VAioDlJL8}33vTSP#skul;2*#$<-j|8I+DutMK9Mz&tDe*BFyDwNrf9 z!=j-p`uIg`aw0W3i0$Sc3l?*aAovDKS~RoKH~M)UgSorJv^W2xDl1Ty%2?vX44jOj z&6SL3bRC7!eforK|6uDtZF<7~(tXI$R_!xM`8Jykir2ZnO$xW6zs)zw=Csp)ovAmV zWw-{>tT9g1mJ6X51BE>tZ(j^SJYAtLS9@AyZjN=wg9=m5;5vF)1^Nm9DJ-mFVLg+4 zr;zeeRo*&{rHRhtriQ>H@l%vY<3u~N7e2MF0q>JD!73q{s*rU66ccdz*dCB&Uw)6U z5JDXR^(?Sikw`@&Q*wKIT)%qge?P934}9}+UGQ&?>p1fF8P}q_zjR#Sa#|mm)cvwR zvr#ZYtn1v&%xsE~2wc>o5wC49Io0D*O z6YG4gPXcD}d?lVwh-Sz>(B#sawblo~sO)p^J96$#R?L$e2uM z9&)5ULNh)4)VN3K!_GI#MPl}eWOA)Fv|8-g*ICE^PHv9&H?ld)@OM@*Kh5(Iw>h)R zkvO|PL0eyti05RFOLkjn70x-l+ev$uluIY}zA5%wH`BPzS7C%b?Y?k59ymQvGI3AF zixC*DmRM5&R8mSe@E=OD9KS$3io9*xB~9t1sJJHUymVjx>+ke+Vck6W4GG+z2oQh}K?=tu>7lL5S5`rO{%qGb?hfUCELYuuWa5_r$Ze&E3<8~-*__q>vS57Z8w9rRt zIY6X>4=9yc>yU8dp;?Ibi!Vz+4xEdxt*WG$@{IYaDgCU=jhMbVdO_i36< z#7}d#!fz#qI^+lin2MxkP}G4DnOvcuCA{t}c49L7$vdNl*ok3-!6gK6M*P#Px<}vN z1GtA^(1C*l0;@Oei#q)dYzaiQJv6vG$Dg-Yh;#Ei@#{)hw$gdK#L{5XA$d=cyqd9` zyz*bO;p&?A7Db4ni2S!mqPE&L3WI!M9e=Iueuo#oyUG`VvReRoSOr|Q$lRT`Uz9R} z=OXRd?GdAnR|6+opSjYw`qWODAN1KUCzv@ojBqxNH6DZ;kxeR}z4Y^7&&YXD8(#0N z@3yYnEmpVXxYsbJ;7aeum3rIFS>A{z+a0+MD(ndUBrhAA|Bi)&S%-KQeF;tT34f49 zG{uU;nsuTH*Z$@-^igZ6A2(x;nzl*~0rAy%*Y$+n(zUzR)ifu@iubk6Iq`mk%L7bp zG8--UOd7?BslLC1BTPbTX$E4ENnO?X^YUx7=Q@JzUGY(oNx!Zhn)?1j{OHJ}=QH2y z5ek`WbY*rUoshdkZcpUK9Jy`aXe&0bax=mOky->#{z;^IG5^b7j-rF=FdBk9&HImyW*~zwyNbKe4{$I=H^8soi-ft zO_`pO?~tDIt$MmicWv^I)m>ZWjP?|KsJr&eE(|zb8|Dgxobi6T_UL{Gr>+cy;!BK# zf@~<^FR7`l^cPzNneMKU`+ED<E_4rD+%WKPmyY5Ce!5)!zaP&=J>b2Hk)91{4`Z(&i>a^+3UO0 zx_eH+Ocz*+1xB8^u8+?iaW;C`mF|?z@|&)SSY>)b|NG@5t%>NDu8HrwuGRzyeE6d9 zeEFit|J^rP6lzW2_tIVyxnH#;{x{13ovnQk?Xw(iI^uG;$X*Ty4_gk8oRfy$^q0Ud zbz1VWO6!|m!Bqs-|NGf0JCmzoq?>iB%R)WxOP0kNds*;2g39=Zc!|A&QxWUq_>ZE~ zVjpy_$JH_CEWO~Pde?`uHBR+rJGVgQ0xV~|2){R8?a|FRI`$p9NMf_VH(&NBSvZ+> z^5)s;aoqPJxAYEOC+{4#PF~@gdy=e^(;@Aw6TkJ}ssdRjlx3aNvreudnByOl!ssts zCmHe|Z~Xea^j`j36d$8%cX+>k$#}nZ%_#jRXK@V7uy=*xW2tSK;sL?z!ZkFvJ21HW z4SH~RCwZ6ri21Lu^JA54=b!U6`O6Qh|8)8Oiuw=ssQ#quPsq2OKO-Yl-cm6!-R5UY z!yWQ^*vWopr6>3KZR{MEx5uZ;)pW&?-Sw)9QA5VJf-St`7K63aZcZFGPLtG13tE~L zY-eB0o>yQ!K3*!73CG^ZkS7w!cPKMrAIAEg!%D?;ss^SD-g3wIO`C;d2zKYiHERPP;cFIOZM^>1E^ZiQ%T}$#|JZzBtT*yh9z#Jf)Y>mn`_jXo z1+Yj+XQ9zZ?cek#cIly2T4*a7BehSc@LveK+umtDP!YJ$XBK$cvb_%=r%OIdN$4If0YfMgH3lmyMWt#rQZC+-PR%X zAEV2$*6tHI$wsXIeZ6gs{+FTqc6f%Z*Mqy+-lO@ETH$N*wC7d@tqRzh+F$GEu1i44w<;=;mGz zCcwQ7{sGOs-OVTh&-&ZTQw()!aLl@)Xvw8jk3KR)r+s z!c#>%WM+FaGpj5qB)@}L|N9X=IgML`@5(glscGa}rcqB#Bi}NO8xp|-1Llm1IG+Mc zk@2;14X*sEr`$n)yDYX1;9%3HA(_b9h}V#D_dgmw15s z{1fH|KByyH;SSGoVv%&Jx*8Q9i5H=6dW-~jyCpj4I6Bo#%rJ%0_mwrvZ_qZQ*Tp>v zK36z{`OLq2!&l^a!*h!3F~$)M0xp;8hIqr5?1093!*v#Rm)`K?ZaJ)2Ye6|63rCbAGVwA&8gIQi0^1G)R_I%4U`^Ph04rzoX{l1fXH(It)3ZQ)%B844(S~YD51aNs3Iz zci9nBiLmu&pR%;#>r-$!3?`Gi6)*%QfaVf;kpsVZ0|h3v=Z3Otq|*Z=1BN^YAr|L#q^pT%$hB>W{*unq?}$$nZ6Kd)tY-p`^Vbde1au!ck?r$0RNByssY_Y zg1zsoPtJt7Jq1%{0vqK1Ur6Ij7hiu$OfPW+GoXrsuqOqTdZ3M zlKGS`6kL%hI9m#eq&Hsw#Hp3X`fHod&+?z8J*TlagFX3khqB&-JwxXXVx7xxez5my ztwkPnVz`-pp1UEiuJTx|MI&K3`)6|Y)Wm_Sm|gfH!`q5_6CUxMwN-D+sXI3`v{6A_ zLRSjZkK=sp1?n~)=IE^hyun^)U>kHqZ&PvyyPn#^>oL;xG<<12xqa(ltyKEV4d^zs z+aIF0T4))6YlJZ=<-v1AVWYFHnPtq@T}Mu9Wk%u)(9o(&LaNd>(W`t%y5yBV z<)Tb;OAcvNavahqz4C^$)H;ffAJ=|Jnk0a9Feu~NB@BAWd(KG#PEUe3bxDcWHxIEX zWL{)d@V7X}<7 zcQZsv54JBt0J88roVBp+A72xCKQno}4q-&!1etJ*J|sSfG-9G}j##`A-h5Gbh?>dR zCZ?@zmG>Fq=(#2YW&Psa&1`eQ=n{MaN8Erxk2pC6?eRqF6Z>CxJ38HRWmVh_WAPmx zMh)0-`^w6Ky)|0!9Y$bAZL=>F)*U*}(686-5aI0hZlk3`yDQqdRE<-ff5H5p*I?cx z-tX|Vy@UB@E<2n53M>B?O2d58ge=Drj3xu*}&0f%a6p;pp*K39vH&5U_I%+B<3!iX~Pi zx{qG%mMVb)^HTmHQ=pgckBue*sOy#A>zEY!$QtbwL``09jT=>>4tATHe>f@5=P< z|A!v@tcIuA&4WtYqMK`VAgh3-tmOcic1K7JDFZWK+5E2nSe3Pdbr1i4ybZ8I8%!hJ zZJ)(U=?`pL2XF#@{(%Cd!X(H7aB2s2^961cbO4eJ7=TO)3Dq(NIYy}K;iEbgTriP! z_0B!X*!n@+s>He^)_{`1=pxsL3yWeugg;%_kD86`?|c!Yqk2QQRXE095xFfvAta=0 z7w=ARRD%2!7zLdvIj@#wjOsyEIo>EhmpULmB68s($sFB%>|(qgEy`NFTaY>0J))qq zU`u!aL?-Fb25Qj9PfkX!kjTLxLUHp$Nrs_%Nf|boB~HDZ`(^95zoVCb>M^_Z z=v%pw$=%-V?|2-$-HtcRjym(wdz~muM&bA24RYcg&wOS7Ht(pHjP2Ol9H3>iEG-`( z)qFf#ObfYAeOM>B50>hLZoY^!CpULy@YK~zUxdk;CQ7=QDTQlhB4Vo$4B7T6ha9KT zFfHTe3{rquSP>d#?oqde**z13l3u{%&e8?53MsXQ13!#kZb;==VxV%Q! zKGYq4Qp`|I)SERqpaGp95W4ZJwLD z8n}Bbrb6?P$y0VF&(QfI7v~XEQSaKSh0bOFWZmZ5{zDP_`G4Xu*Wo&n_hN9wY=-W- zl!lETbY^Y1*CjGH2V6-syi`Sdq5K}#mcVu&v}e9d=-I(%rK5A^oM^U4z#R^?NCj?F z#p5*A9af?E(R4aFtT;~zt4JQ=^3Rm!>Bd+cVN{|WQM+k3rdr;eY&luL8-0%sbOg3b z$#3bw#GE-NKxW+GhrXoM0hv})5PK@8E>ifAo>=Qmta3-n3;|0^49${|w$O2~ipyVM zW7YTnQ;bs`0I|~SqMyia4;nk`ZvQW`BYxLAo0Ev`R>3JCyDEySyctW}v>ACOhE%X}t* zi}V!F{70DDmzh;9gn36+YG%v6W@cmek~z~8d`HIGh+%T*@1LZ<_X|cK!SY7Cb8wDm zBZO$WYL;&zg+Z$fuJ(BV>n<6bb>pol`i{fZBWBVsAknf)PZV})B-L3vpA)C63V~W) z(?a{1I=uL3p`)Z9GV*-YA$#Q8zxl{x+3XIw3rBxX?h!#(MB%*0d|A5#9$f)F)SjFn z%w{$uGk7&O8fqN!d63bu0u8t3;YzrNdfa7h0HYu}l7ZrX#vH#GMeT_mT>7+#&oxiv zC-`9hYYT3KSUb;3yRkTf)XmpD<^~yzoP9hH^!=~lBy5geYttv|BY*t41_l%5C@l;^f1K-^o4V z3#C2KNP0<|CA699Dc0NBVf91~bXS_$ZiXT<1ga0;sX|PU0%G*tQu9^R{!fUBjN7gf z^D2lV5L1oW?>=ZPugellBFWdFh%{wg){;Sy{|SR4pPi6Kk*A(XqsU{~9Q1TrtAX~8 z%<4^)`^u`Bt{VSa&CrFb|xw1ooeOSQ13%_4WRBe-$+x+YKDFa0(CXu zZ$LGN^ciiTDntcuf8LV-j1A%&Ehj}K_wP;-$!fRREeJ2<<1I)}ygy~0pp4t~rpJ8G ztxbxL+a`{7D-~#uKr+!|e+kjt2sMCcPN%kSL^NH&Lx|>|ndT!B&0|wUb6|>Sir4i2 za8l1tP3qSY%m);GO6`V1FqaXNBx$iFg#UNMvwBHpWh}demGLG5vn27nkF$Co;`u>} zcos^Z)V85I_wN(WUTW$~JQZeo%y$&={F4xMA)YCciiK?qI{A*!$qY#q#zv7)ws$Qg zJ~JViy6JDh5nqyM9u#tT1fuyS@fo7IPI6_4=FAMyoZOda4(dZRho*_9kW8}^(s?-9 zMDYC8Wb=*;*=+egL^f@Tc@DK@h~HaN~^C z?S|>C6tby>o)t8!TviJyP$aXwQw!}SAC?r6+~@&_M5r}MHTyCs zFOo$uC~9s5(^jcT`cD`X|H9N-`&zd13bEmtC2uD-x-0QFZD#3htsW z*^okfgduWC$y^uRor|CWV2LHa8^`OHYQZz8LSzo1asqPBm=7y2wteuzZ^M0*+C)e> z^1GddgFYO7eY{|lu&8&W;g;sv%P4UKo?W7Cp8W-3ncFcre^x42?79SmU6)L5^H1^# zQ|u0_P#kAU>*>lel#TE{ck+|$*vcf!CdI5;w3x}VYRR_IHQj`VeBXbnxq%0r%(vhS zB&*NS4VSKh$pXU5>#mmquLv)HDQ6PJ%hQ2}{#RXkv?S9dIU}vpo^sd>e>;vD+%WtC z*OrG_K*FF^EAFf;wV&zxyHgt)R!yX14s1WxVMbS;%;RX3v{z-mfsh z+~SSy&QW+2R_JIQJeuEHMIy*{5x00`))u_P+_!USn@TIenO+M0*ctcWmq;8X{VZhMv@6<&54C2j_G8HUHfsLO+^dI z@j+p?_ybWC5el6~kAD}tO{pzO6{mg;X2)lKBdRz?Z4ov_g}D>!*>6S9SS4Bmn>d{5C2xqfqexjiliPzL@D5LvdVHaL!X)%HAzxFt!zps~{b6jG~`r%w~8t8qP+{k-gl zF(HU@Ec`$=vv-epf>5iZFQv7YjY!lsDN4&_Ep=vAyR$SZyR&3UwxuU2FhZlo~$-Nw+Cl%|#Pm$5QBoMe?zIl+$mO-dN@zNHH+WIcF;4bfryN$F* zKVoupNOrN090msdOXVMOw!dw|S`Zicbr=oGH!q5Lxahfsc* z-6Z9=JCdgSYm$`z(+uT5hN^jW{4mP@F(6A({)})>>8?F#$xXXtGG9#!ZoWYHrCe=N za3fukFlP|m92|n~<5;eb=tlC&afB>*h!fF`#CVm=##DmEz`f#^ZnC2Mp1zb{GTQPQ zX~dS-=t^LdtQ3KbgzRc;Dk1`#C;QNT8Ob5E|NS)WxBIa>M`28ISLGc68^5fPg=y5V z$^RqNlqCNmGlTr^=Sl_yrBacWB>C_3*T_47kb)cj)ra&40t)Q|%^0DFj%>oKhXLjC4*#Kr%Vym}5qto=v6Yt8`@$;MzJY z;f`GL=TSY}UZ~J+kt4CWUye!0iaLTEtvK9sjk$bX{4|aP|9V_Q>ZCcl}BBBV1Y*K+ApHG#c;R!%EoKISVb_<|M6^Wo_MLgZF6Xw*0Ph{ zh_9@z{JK`dI=Z#mE~VQRRY|olaiJE{ID#3vxy=oGQ>mBBGRx6j?X$nj@np^bw|Sp} z3MwS?^++v3jM7Xh4%=BJi!18SPwv<8 zd!)H)1u=IULtt=nL>pvA6H3r3Goi!6eZYu>)_BZ!Ax~E7fOguU=ph?WYLk+Z*6$&E z$)-42R@hUbuPl|}atdY1xyw6Qf|t6@ozg67&;cmQ%&yokg`Su1^0?lcS2xFr?u^Aa zg<)^?k4HTuB-7kb6;d$4EZeb_l)&4PT#`&qCYl?xpL2s#=7OUnv(5`g9&@$k>3I%J zVDou%giJp(D)^z7uTJ5>+lkHQx(p7Oot&yuSYV&3(Rm35cwDc71Zxx$Og|I}-by3E z8rl*hz%~FR&}w&J*HEpyc50z!VnpI0Ud{2Os%E~LneUl>Wpd{4OwatwN1S>0sExY0 zi8*(V;$p={eft~fdEdaiKPxkF_`Ls;wyI@H+->yvD`x$zNL{w(*%7{9<~Ba+Yv%iJ z&~SD;Mbjb?DPp}SWUoqz6R^@(c(2{L+J_m(5NvIXXbdxs_34!r#Ezp#?;FEK(@R~O z=bli$IrN(UC}j=vmuykx^W~j^hsr9{?_bMG)$cQ9L--Zf1L|E#xA_w%nrNBAz-V)- zQw-7FxSV$4TvFkozpO@48>>dh!RlBpKhl0xDziI$1{v)l>C8uyYuq+-HJ7Q-Y+vS- zEs7dr9Sm5129R;@;&ZS0FF0cV>8Rti5wb+HcnkP8C#IUwf0lY2n~Z|BVqIYD{}Amo z&&E1>gn@o7)h*RkDoql@3!T>e)NYtBgs)>3Vx_n}ZCM|_Fi*+%cru*k4QbvLohy$| zi_0*$FmKaVcX_)Hc#Q@w-liRHUh(m8cfz%Oflo%oNmcxcfq}bxR|T{`{3ANG|6w9@sc{`K#eO%VrVpmQ}!&fEwtj$VfJB zf0tVUD#hHkz1!Tn{Y`g4SF#f1F*$ROq4v+nXu5B8Znp|{B-3QxBaI2Zrco^tc_cHf zyI5?j)Y?dOxyaSkT*+1-PJp+6W!vBO!}NL+~O2IZ!~(J zF?5d0o}Bw}=^)(8Xzz9luOi#KeFg1M&S1hZ`&g1oBa=Q8_-wc6Z#-9)`)GM*q}{v! zBXa{PVXtcqc4&$mDU`uIv$+O^HUfKA*QR-HSuZ@>^{U&vQ-O@Fo#Za>{#TRl(TELO zcd55vHPp2i2oL+YvAmU+~I+&Z2z## zc+F!H8{Ad?pF0En!pCq__`qv+_;~$PmWo*aDU!mgVM1c$Ra7B4LWFBnx=m^_RLZua z$;3Gv0nNWr-s$>YOx|Xiq$n6Upw6Oec7tH zhRtFl7o9L1xbsKQPA((^;e&GuEwL_Pg) z#k=y&Xg%7e9xYuDS$IbTe;d~AebVDi$#%dDJDs~Bxi|k;(kKbp9z$gb275{|@|iPl zo!eQ;^^10iSg@xpCq6=Zs*59`0~^C&cYoaV4ldOm;f>E|D4qRR0M z0gV0oV<76-{zm9hXK7%B7y8zgCrtTHv1&^?vuL}FnF+3GJ6uSuCbLdDQ7YOWmnt8qYQ=30Q_94 zA=t@_38z%_eTQfGXlhXJI~_}wzVAC}CA{9>U2rB0@xWc*rM^K|KacRZfslkoGH=Nv6t3bv zXid!(t7E^Js``orG+t}ueJ#8|wKwDLGO$AifUArcWK3Nm0Y1dUJ%aNRU-L06DVO}(W!h;m;xhI^iVFi z(BM&g(4fy%Vl5^2?KvuU$w5Bs=$#V1^hf08b+j4U^*d&0bGDD4;nf!Mb#QpjZ8;44 z`mT?(w?CSpy;kxD_07;uKWhW=T4*r6;-+B_uEl(#a?ev;C_0~?z1o!%jwOqC>+X6n z?+cYR1Fad_r4ypWQe>%$K-D*9h88dRRMi?U`dDg+6#a=jSb#tEbJf;_h0@j%Jn%@h z8z{VcZ=E)^FiI%4w^o~4wu;cFd$q<*{BGqR)`vwqpHl4%&$inuTCaLF_0_%FRH~Rt zkt^RNYd6J)zo60@i|(@X5U28WO4@^V+GoW5o$rnO+d{dqLy4!4OP-Tvrv8f_6+7wC zmC~c)Pr*&0{#YXOqn6G*ey*Qng1RKCXTl%q)* zZR0_HEy0Fa6qsICK~yjQNG`?_lf*X&(YN9c__v2fcJWWf!1$)_C2ljhrSEh|`d=*F z{E+ZRgePp}Nh^h}HRSFQnOP0h`9wfrrVG8X?j`D!FiYkWaM5?>rOTt!!kY1o8-fK3`;6NFT(o+1BfBSM4~40H47wH92ZzAno>fXu?KBL4IY z_$4v*1=6{1(3o4R+v#=6x1ULboGNm^)xpp2`eRDF!J3q4IPo7z53NDDne9)L=N zu_v*#7R+Jng55%^ijR*%6&i&qOns9Tf6^H0BJDlCyUEA;nJNoYmh}t#rf66RcVGA% zUJuy#Eh`My^xms-$dJw_q=iI709M|iJ{CX; z7zj)hf8ja!Thd61+bnu1#QiBBQtnuTs<4@?g7&?{+Zg--AuSZMqX*c{aMjUO@-0<& z1#CSmH$eZF6mb>3BKen2rTv(nKQdkx<{yZap(WC|vU8-c2xYjKHbg zCVa8ynR@$t+qdtM1Nv|opriZ!C}l-%psk;hJ2gLoEUw)1NMkP4um2gQJwODFUdRuP zYAr9(J=I|BQfVqfzv_ARllM!5_DpE*;Rgxg$`ZH?l1dA5Pm`)(rx0gqEfWORGL4v@ zm$Z}BS5TC1Hv(~al!)Xsz9?yml8u3i~{feH;VeLVD@RstI#VI^iY3e|5uQVkGf*aXI!D*>i3q2zrW|4;vdyTpX zu{lkbAK9F=keA(_HF|-{|Ec{U`L)oaoDL{Fgb%y$Kovbx9WqL?`LHM9m1c6^eum0j z@-82Cbf-iwT}ke>yXSO`UlZ+J*uHl6!Qnj=TzlaEVeMVuqpGe2?nx#S21q;s83h4} z5HuRmXnZ6N$PCQL8A&8oQK)E9EVXJ|gc-s5An7EM;W#aA?d$5jwbwp;-Bw#G4_}!; z9)P@k1n?2S>KVrej~Wut%=cgW%uEuD?RW3@<@d{+efHVUwfA0Y?X}lh`-3CR-Fsbc zOSt>|i#Grrt?mJEmbC+zOgxBU3Xg!|{K@_OHsSJ{;|bR(q;5Wx$UliE9C|AcsK$0U zfaW9f_HU@Y0iM3OyEwk#cQ?S(6Z)e0$eh=B?%-c|ddJfw-8FAd^YMcG3MuUP+{Weu zbKcvqKmKI?NFr1qN$o1|K{_DgsbZd2f$k?aQ^KU{d7=JBi0p>_8=sDEsJ#~!e#7ss zflyQ7=H>(Q_V8h?<8%@d(bar>&U&6^bN985+ksM=XTOPXb7Ib}=JoTwq$iu2*Uvdl zGcBH-n&8=q>gNAT-r(7r_s-kjym#(<{C703pZgL0I84D?>C4;vzeBe-^B!y7JnvBR z<~c{y?D3Fl%7mXuweaXbe@f?1f&PjP(2Trw$=i?qDsRUXkA4(#43B>BMOt_4gV#3f zKlHNW2#K1z`!MLuN9N{#sv?Um=A4e~;QvkP-$ZL2`}hbmE#PzfgRndQe16sI2Lyzz zRxfd0Qv7xAJB+q^$rA`2pWCz{cJJJC*UN8S6P$GjCBF@^Yhb$R@s$?RCUN;)ouB-W<+ZArD5R4IP@ zdXj`(ed|m7xR>8%t=&z66x;nZ{C3~W@k?1*sr&-S;!F$TWBH;mW*R@iPj~->(Ng^O zHWu><_>}K~2h!jF^40IMx}G3Gb7G$BF?n_uf7Be`>$-@rEa2_UJK(pQcO08Ep8hf$ zK9A3Y-O11skaPULGy-^)koJ>NiqUl)v!X42d(!;?K=IopgtP`_sckskBu$#%h8~WS zRK_O7Z;w_vEPi__Qxm*Ykcm?K_RW$x#cwxD&2^uV4ro8CUJhGq$xL1>Wad@TY)+U^ zir>BtwnouA;U6bRI`}^x7XLV$kVR?oFO_d8{!z-)>f{V4{wEA(6@3!^@xZ+*|G6ru zFk3r`Nb!3|-b6WkKZL$hEeg4^LSDG<8%T<3I8~UVCWQqQ=_$z z6}N5i7k%3^Ew3WS9B-Z!=J*SiHKR!1Q`j-Hd-JjB+1-@)F9hT5&F+R4Y_H!cTssbSCpl zOPLK*rIP0q)15AVptKK5+LI-1eTG3#r?>dYPf3yCC-+$|DSpyWZ)tw=e(O#6$(;lT zs_h)&%|F~qZKqNj_!zx3n$PKKlg09M1=E8M{$icW|7x?$Ed?Vkn}8w}3PxI92=cVzSkCThW~$S?!xK zue>)*)gHQn3Aa#NwEa^N<#fZgvA23a4iC=_??5%ScB8GwF2c2QWzV%yWI)eLB5lzg za)?kFdGcQ^dCy*qTn0P?2S$>aJDQi!yY zGMY$(c%)$LkBQ@3JO7kDXY66?U8I7sj8u~bJoUUvCnDcDIkbN9`?>V-pY-wdj>FnF zH)z*2BNAjN_+?l)!nh5QV0!+b^k`c?iyy6SAEwj*CAfA2Z`A9eL<_qT-7seii*yeeLb#c5T*t2wQNdJz30#LDB{Lm24*=72OGLj*p%YL|-D;W`SM6B^yn}ZrIAcV?xB7d8 z+sH9U>UV98f1 z%9fmmZW^GX6YFS49A&l+m~s{U->F^q1}#}9seU(Lsy_H84Ubf&sARfxpiJrc&Uk_w z)%>|u5>Fi{ar2>D+M0KK_6Zy4HvWZ>PL#=MO;I7B(9(Uqv{dfMOU?Z75TcvA`Vi9q zOQE?NVk-NzXQ&fCb3kG${O3m5;C+WgSSq9H8dcMV7!0|7FKj64_ncMzv$FB)nmN_mgA)o(||L z%iQ&SDd=tgBgJquvSI(eC#~bM3_fk%4Lxn%4Lxn%{d!09@o#Qu?z*m-T|Wes-wZ+R zM^CRAh@M{F-1X2W3Yfu;hOu@8#m zh!M)r)bA0Yg)f89F(#k*==v0C^2_O^X@qlZNcOLM3QdAcF1**C~UIdQD|@&k&# zo&~9tWh6bZmdU@Sua}ZO{tbTqm-N;Bf9Y|C#7Z~6(wU{-Pp#_}*|bN6A!v82C7q(J zV^Xm{sv$Q12tR%BQy&1r!@g1n2~#ALCI|`jBQ`Q8&m911r|_j!)K}?eD!)VWe=%o(Sug#?*425(4Ig)|5g5DbN*$1nZ_1j#8@ zPfdG^zLH$%Ydhj3bMrvSPoS?~sp!8Y=T8U9Nz#6GER&Sq87Sq#Rn76wb~c-ez|NIq zo&l466<+B~A}=$C4wy;JU&f~qJgFwvKane$?_D55X^@^tYyvCtB^}0wpNewpWebiO>N>^h#~o&OkJ0NWxiDA&x1rM8+27 zNT38Q^-Ws+A(gu+VBc6((j?b$b&RV-U)mmP{`mTxiGt=&f`gmCd@H8(9mBCgG~q)D ziW~OT;+ngb#vi9NvFLrMP6GQhb)|-0663x&bT9g~X(nyLf+3hcK(j(Oq4#MuNxOcd zYL#ZSDlr0nkF7^AYoYd5W2#jJ(y9-8TQxS_$;8QMcMs51@qLM6q4F`zT}S<4JF7xq zyAzNq@NTCka$igdMO`gU_uaV3kgJ1`{x9@Z4AJTYiRs~{Y;=%ApTwiQh4+n9!(sKj zYV_X93GIO$39i3mH1?1YxAydZP9>KCYElR~d#M5r1xmK-JC2c5tJf(?E=Y)us1B5D zrqK+JUeYEbgIe;HGCH9ly`$5_=hO&Fdw~6uH75eb&`jx;Dd3t1m!&8m#15mwW z2LMINXbrj2<<00Qd(eT$Au3MQ@R}b*XWcyahnAvdsrJGyPu+dlqe7>ld0e1$H@S5a z=k`}mXc4!Hs8c$W?z*L{iINQ2Gnb+CckGNviYnH^_}a=)X=;q$4TIcQuUKDzyZ)Wr zxMXBop7vP)#x}LzG#~Jy={yYO(1gRho!dKT!m@A&9_rC3M!6jyz0750QKIfwkiHeB zF7R4}E-K!)JIw3ufzTbdF`<@l&FX9ut<&W+p^o{718)=6)&jn1FN_%_S6gUxZ_Cgd znX543Xouo4cVWa|(BS8SHovJ_S!^7U!eTv6oM3J>-?7wrhkF`A1#4jdYz;RKYw-`~ zvO)8lUFeTe1Kx|yQ6CCg{KKe$ONydZ1!aw`9A?R9YAE!sk#;ut#~afC>d(q~L9{`$ z{e>ixOBmG2NHLmR;KVA^{PqmdUDdF*1voF&9WJ$Gs_7s2gr6U7UF*U0ZS}^(~O|P*t+~-Nd`; zF3atbR=?LQSn|CN@V~vR5qrV741T)&j89aBnT^B1^+$z*mw=mqRvFm{a#XkAq8k3w zMgcqR$ge2p^eo(1fF3k74!a`2zLWcpxtb^$+^C0>j!<4@#N&+4_#&PwC5Y>QI>a56 zbq8Hr;xrcJgnOJ?z2JT9gGwoV6~Tm4ZuKI9qBn(()Rsq~-Nupvt*(KuwdFtNHMq34 z{3r5USX)k>#^CJQ@}J7nS6luwd6w0d|6HEqYs-<7VyjtO{&$|CS*_CxD9@I-f&eAi z5>p7&OW+~`BD6}B5D==G7*C*90;32#C;{%YEeK0s5P=^NP@^ydhkwR31?uLj z-U{!Z8lCAW*~CQI)uxxV>PG$rq=94yPt(h~#YSnHf=vldP?%0-J83UwwYhk&)aO?%#I;8+bT+jg>ZdLa^jnLnBt0>sJIoiN20zbCx9@dIjRrf zQb=CZbp;%!jMwF)WVp^!CS9rcq-#!6=8?i=axYxcbyUg+ky**)KDwkUp%OudtThcz zjNJfE6u5G4VphDBgIn4FsJ+qZ?D!g94aYAf3ElrH4$It+SqVhuR~abmcBvaecL%s2 zGtkP!qEXPvL6wp0K)A)}x$u)3_xO-Fy!N~>-lIL-jBBXGrGexiS?_~Z+8ek~pjCUN zjA-D#j2$^W9e%=hK6>gpmAmrLv!0rs!eB1HgG0ZULI$_YNZJyZer@(#*jeL-HtwVm zHSWToqsBcr-&O1dYxP!|1N|vRW>F|QXwJbDloe@O!KV0)GJm$pF3rht3n-Fw9# z*y3%T8Z8_V^UNH{qR0@q^t=^+_Sb=C)b&QCQ7`h8Ls0j-Pce6Msl%&c%!1+7PjSl- z$8yJJPG_Tx3D&i9b8Ox(RY z{T{dxkEmThNgH|Br5jt#YUXXFalgl_2sm5|*G+CSJ7Eq|1ZkKVpgqxh^CIQ=QTZ*+ zx+)|bAYxb63 zbe?2u_SRfJC3vx#c)GF0JWplm5>hp>3P;Vx8`762hRckkGkPF0H4tufnh%h!(*Akk zX&DvhmvrfN;y?<<5yCgAaumZ)AwkR8xGWb7s@$B(D8Q2|f@5B^&^o4;d%@hjz?MrN z;H8XiuBo6EL!`{;a@-t($yoYQb>~RwVg}jD8i8L`Hv;GX=z509Vg5ZoI3PebWicEY%e1STJJ(`K7kv z7{gX+d?<;ED_QP*E%(0cAyzIMC}~S^3@sSm!UalJ_j`-;^a^_@JCPu~bN2 z>Bgeh%2z9g|no}=pfw!r`P~H)6w*(6zk^)C|Fx~RRnC_t9 zFVI4}!ej9oP{ylX0c+Z|E|!RMsZji;+6Kk?@Z3 z2N{-1!*TE|aPCV2QQat^y_MWrEB!QXCE-ySvhi)g#O|0(Yi^utiXcG@VEZfn@)41BmIB5O@^F+v2s92BQ zo8whiRi)A#1yxyTVpbZh?rPvbGXpfUDw_8$meYagm>$LszaJ%({ici^JHnD!plmx^ zh(Wk75c^l;R+RY~LN4UlH?<_Tl4OGbh+g)Q>|r8jlbaOJNQ$OZF@plT+A7O1urH{L zFz$xy$LX)Wk`A(aSH33mybOyUrx2^T%$$EowZRDx>1h5<*W}pZ_XB+E9w{yt=IR-) z)uNfx&8p~3>ynVF=yVfr8HJ)%5Qxq!;5o;fD$H+~du@cLV+>+q(4E69U_Nm_c|}$T z*1`3Ui8;2lG858$*|o8o2b=vuE+LQjJIo&O&q}0{ z9xxB0uA3LBQ_kCefHvGuua)hHz+?0BbyE6LJS68_8e=fUO{nP%;Ylgu_ewY1u>*R_GDL36KDj)msZl;^eA zWVXp<*B9&vAM4@D(IsRG7urlClQ|Kr-?(g!+jYiuIkqL$I*e`9;gYHal{HCQ(Bw+B zz)1_Z`wY>Qs3Y+|rxFojwHS-fQOH;JT7@E3)XjXRUShPFovQG(OoisI8)*aljkT=$ z?$;J{LrOoEsl`3II8fM|fD?ACxSG`^OG13Q4EEHmSwlE9#N8bl+v!=B6+G2kOBN+; z6TbQx$?sktj8WEO5|+K(BZ&QBEB+_xI^(dwk8f?W<=b0y_e?4fNW)lSm1+SzudT&5 zteo9;Fpuf}@hhsyCrGlGS0W$kdj}PKd+ovB`%E2Zk%b1=vi5L;S{;={q&W-3oozPcf5gjZw8e#_&a_4Gl>1s%Er>RM9OZr>J}nd7SnwJpBITl3|R&_$9jIxSz2YoYAG$+-cU z>INw*>AEwW{oL^VZCQ)YOHOwt@rmUABK`tx}*F(YOFwnlF2G;O2EQqsXh zXc?E92z5mszA)643vdgAfB3jsU(x*EUj<2J3I^9egfR#;*}t4dXBqwu}0C09}yUIeVT#6Lsq+igK@HW;(WA7dWbB! zFkswKiY(cC6Hc4bd)O1;&~<7W4zHYk0vx(egu|m%y>LMO0UW-Qg2Q+E!$AxGNJavo zwt~e4+Ui_A+>*VJ%S1y3;Tg{CwWuwzG(;eqy^x{gA%MAD0j7O1ot2X#GjPV6e<)`H@)MkbGr zo1Q9nix%Fd03^(eyJyKHZ8bN5wgRB;A)&l=7H|sS`T!0Tq7mRcRMdr<4=#NcZx!H_ z102Easntw59PV)(Q9PT>lG=t!vA&~AIGRGdDX)zqawyxGbUl#(!J2?AP}a$BSsKz0 zs~jR4z#!d+^C0_>Md!dAGADP1|3Pd?jS{KK|WL@ zz>!7SQ(!?`z{q4|BHrPV$*5#DYC;OkVX=Z-76>K0zR%XH&@Ym<{TvsCkN1Q|n%`V& z5yr(lEvgz{1puLqLHAh4ENJ7MY<}5E1!6r==ShdJgl1S6e5T?1oRg%=((>@WtRR<+ znG51`lPh`QX*E>x78i-(fyT2L679%f-L1p=m&&Go3mcXOvxe@6wr zO30G(lw2G)TA|Smqs(=bl6JAR_!_n0XLa0whsKSSC9&x%bDZ9WEZjdKP=-=`l!b(e z6|kF}HIj2Y^(8jECZ&yJv!<=iT1baaUg*x|w)Su=TeJcKI2jE6gHPJ(Atf;(cd5T# zeHf13#jn@xM`IvITX3xQLe^zD!$LPA!o#;&@Eg>Am2Q0u9SFQwlllv+OZHfQXm3p9 z5>VTeE`F9aijd4r0jp_)llq-^Yga|{3iPAf0~2C_`t`wWG*%zoh`i9+2MRyhcaH)2 z5b@G8^pQOV$H^)3=?q($0fP8}0C%P{P->W5e^RpPERq2b-er zF1^S;A-B>mQWExRJyO*U(~9UwZNm$dtW@p6Wm0oC&-Od@9d!v7M8w~gm*i_R`y7-^6bE_o%` zM3X@nBh}aNV~@$%zqu7&l~oLX%uXUYn_8Ga5Go^}m8y+Sw!^CVT? zX7dH9RILJZepG)wib0Q5nY5UqT=Tw_ZBtiFXL>4M(mm{m_}^DEu!+TnjCP^w1euM% zB2(_@hC7y*Ic8<=%Y1Wc@5^nb*deBp>E^`Vmuhol@5?fCXyzqSBV9hu)UmQf8u?@< zcn1W9DG&f^KyVTmgUAjdyMW94DsrEop0Ef?Se4c}8>3pva+Gf5Wtt(9-D+;qIz94T?o;q*>Bb$*%uu?w!C zI~hF3+{7fYjtzoijr`Y%N4p}QNhR68Cu7IcCB0Mw)UT~c*L??I1M>fiTt>T;mv8=1 zl_#?Mkat}hAW<7D^9GqOTt7y%_>kMcYhtpIe=9k4W4rmN%C!xY^uFl?FeLe%j0mOe1~+WGu^cJ)YyHcX^jHt z-lm-`O*_-b--xd;X_+)Ok?8d1BC^g|`Il#p&5O|?^0J?f0?8Q!g*#R`NR2V^PZNF zfhW|OLN$qHC6flGhU-c@^rJ@tc-fwg@62}VgsgrqqT6(j!vsNaUMYe-Uabje|mG<^pwHnyNb{$Sgmb0+O!h$;eQjYHt3s z%%Jw9>l?(dH0`|0E=NdSdM?R6%wm4~F}|EARz|1n{7F|*oj046#z!-ahmKbNWhgCl zoi>c&fp^7oXTaF0m+e3xxDrwJCY_5P>n3JN!*|LeXo{c4OO-pO)jdw*jSwvOqeq|p z^H37(PkSsfRV zEa{3`2@tpJrKxApR1v--Rcj5bs8e+$P8ZR2>P0{~7=W{%m5d}s#j%;)!^c|vt;_(r zHN8Md5^33$0Xg;}?QQQ_gK!}t?IJ#}^Vo#LYZH0(j+KbUxt&+!*)vx>tbmi4L^;Pb zPA%6EI7|Q-DXDKtX1Xm0+Y8APJzrN|E}DSlq&?1a&NZEy^P8Z6Qmf-R0zxFBu2&CGEn7-(Ab3URe2My8s=oJu3|m)q@3T~C1zhjE zo$gq#9+|?X1L=H--dZ&}m`FE_k7$8T#hm`qgiE9eQP;K)s9$ZyE>`uc;YScke{WSI z^H9-aw9Y5z;B`ec1m%txHn<*{*$)-{nizR4mls90cqt_;oCiUU&Nzqj6%{gzE|i72 z)%5Yj;Ig-E6ey`EkOak2o>haD-ZeSZ(fKm5Z<9^vBGKiMBeiN#m^*=97>DWKqMHP; zXl1$<5?VV_ijO+JLD-xvhZ@#Aw8pcJv14~)O&K1hp=ThQQKVD&?LGwChU?BeuvK)* z?91dBsdp{1`gXOgEu<#Btm%l(IX21Vq(s_Rpw^w?D0B--U}&A3Ovo+v^JwhTH_}9q zlr-^IglTm()4_b2eOIcbp!PP3DNVZG1R6pRfNt`waMuq*`B8nvvso+hn`uuXU&&rq zIM(ojUsu*?nrfx#3a(|(=OpB4xlqKRLSK-`K#N$~;k~q7q&cFg7W#Y1o|%`uXh%PVLOi3SQQk>l8{fH0ipO zs+c~^hb>H#eTJvJAM)U;V2KEN@8RCpj)w~vYG#`Iz( z&tp>GJ-B9Oc}+Y*9WB$#YmIHf_K9R+2$F@hoZKZ7d22tHhhuFgkECm!8eVn=dKNP= z>uzu=Sm!EYQwrehXxmU4Ee>~QhjJ<1lQ=KjZ4aGI(3zMZ5qj(NV#ZEp#rH2{Rsf-) zoL}X(dPYjL$V*zBcud#oFIK4(^O@EOlu?$xTk~YCY@*GBe`F@?g*`mgt(c!YvlB94 zzC&q$%d(Q3ff~rll&Wwao?rYhPYGNqvpx@P-HpK^X81B$S4D1XVWA)n7rJ;itE!ib zDje2#Z<;!%tET!@GM*=#)0vkr@F$+r6`2#6Pzrh@+rbjxnb7Ix=f4-Yz_mU477NsF zI{uKBq*zCI!>FR)5gyo@$&xw0%QtsXf+Y@2+-aTLeHZkSKDWD3n)3hg-0n-@nmF0K zJyVf6fqQ-Wp4Y)Q158AkSEw|KQsIML(j@GLcO-)-`Z$@j&P?i9I+-jMt8DSf`@L%M zOcW&l)DFcb3mO^?Qie|!IdbEh0Fc@9I!yB0IFmk+N&Z^e$_fb>rqb0`HU=k)NaiG8 z`Guh~WfJ5p=@Du#57XLjz z+6&zNer-{?xn%-=+9jF_uU2ZKK5&}Pz4?Ljz3%vZ=NN%Jbu9;)6)>eOSTYEemE{c| zyzF(EFpzDgil#3>_u6ePzRXvCcNVwT%ylNFaQP$od{=@8K~`IIWNEaWV4iN(~>xIDwFBEy792Zhd?Pk=1Vgy zpz3;fjR4gax<^}Wu^nrZye{NEiz`J}aku~*@A$2<0orQT}7l7xAB&Ay|PP4=nu7ebrIKB zd-B3idNNpgGG6t>j9re*^js-P*196+mW)7-$kXe{@h4Wd$S^9h*}T_^M5*3!>7X22 z$Z5Vbg^}p9|I6e#F!-x^>{g!A^ZMt}jbUq(a;77v{^mvc1nlOxDn|s299_ttroK&x zg>uzOCZ6WYUyWYR9ZKm}ryL@Y2GokRNbIAsqdUX{TF)Bi&COre;IGMUQRNe-j%K1b)}NOJ@BFexxjple#wlB0dH4Ngm z0qA%vp2O)#;}`dAUC7DOGT(`L!d=e0;csUpS7x1i#S`y^0NpS>xiN7t;NBWMd1cn* ziqN2%rpp?JB?k92He@C2J>DdBp9=o>u4Kt?GowzHg#EY$6My-c0nOLr?R@XF#-fg# zMI3e;C*gGHBHS*>v@O}PY)H$DtP(lqObjJ7NkSN60x6J)UfXQ~p8Lx5HQSC}bKnn; zY~Ugu&fkwwj7<2caw|zRXSj8S{@tdLviFi}S-L_T7I9DXv&bc9+!-E z93CCZ9VqV|O^^1;IOM((ea&~o=$${S#_WM}b&|`Qy{SR-HGC(_YrO3%zqRN#3&B;V z5L~Yn7s%}nIK?F#dfrP`)#9+p=QYrJ=~MjHQ$>w zR=006PlC;1SvXn-VZ$TUJjQ%ti|k`12y?3ro7C#!AdJKI7Bme&RkFFPQ#)0)yhf^& zqMF^iuVhPU+4v2BFI1=SeZHWbnde`LXcx7@Zf(~3aN}V8*Vv^lJ-!{_mF#*^f zt_qn}Ga0vZu;y*N==M$KU0G1y%O`yklxi`}mq zS2%0ROM}<@j4N`y99Z2m$a}QCWqQ^mu42FSzR_#O)hDj@9yMdf97a>j9B1EdyC$0n z>$5kKUr?{!9Zj7i@Y$y4gkLJEp~~#gh?qZ$;8!*UTQNU)Ajh`62)4-@C_4is zqZFOV1m9)0CVP@C_EHij1_c&ek)zw&>yr=Mr$_I|`briN_-rwMK@J%}wtl?`wPC2V zu72Y^(^UIHP9t`--Q9YBj?sPeJvf=sZ2oE{pJzief5EoO=oMMIeT#0qfsSTRvT{MI z!uwMAuk8wuT!#X;2JJ}!Qg$fS!nS54icH_z;I%z$m`+&pYOlzmAIuU##TA0dR}IUnb$03uF=s>#minJ!N3kaV;y%CID(e2pTp5?Q65EFLb&a8;4bywlxT0T;RHbkO{2qv+ zFw5M_RxdFvotDqNcm)-m6t@Nn!B{qhTu}Wy0lB=Wq)cByE^41STYL;Wht6IjvzjgI z=wo=UQ#yO-JM7S2z!IY|M|t_%zT|Xoi_Nx1B=ww3VXXR^dH<)(gW3&}_r~>gJA+)v z6(iB4Kys6}CCk=%<8nRfYM6<94>>89Ki45u z=a{Eb_yM)!W-G{2b1bxi;|Shi1<$9LLHwT;y*fF1BYK3Np}m-WbVqn!HZMofCABvZ zIFz`QYV)BEg=XqtSiic2 zZ@5SqcBJ+V8QE$dC7bzGM%>zpi3&aE?IX?MzwF%|Y(lq(O~||O;<80Mz^z%qcPqJm zOL(v^kq7j|-4+Y2n+mlPZ4>1=g|&M~JT$e@rj0tVE6 z3vB097H`e|EMEg`J0~Q=z(VmQRE2$TPWZ#D@V4x5!mHKExl}ljqt$&#rQAXmoFhM{ zh7+hNRo=nQjM^hr}C}TTMgsN08b6uY2)FR96z0{vR^tBWFtQ%3xOR076SV zX@*5Evy?qS`1XPLf|_GUL=)0NG|Tzo(x5b3n5ld+9idPRQS*~sU_HW$u3eSWgr zydC9qM!2LzfT7j>4nSC^qh~O|L~P2(QSwU)iP%XZh44)tiT##DIDLK$a=a*Ye80z-hG=xKB@o?YesG~B4_yu-3@>01 zMI+Rb45!Ze)Lv|bqZSjI^&TbLrdNME3LdMN5+pKMqK<&fCw{JUBgFdmMxxEG^QFa( zs|i~P_L4vZaEypLl2KyEO4;?!7VUwIUh~m^rg7v!9|rLYkdJNW=)KL{e<>TX8Cg@X zo3$-1K!ssD`X)GUxF`N2;K6<*I(vKCb;5t6rmvJOShM0kq0xtBo2TLaSc|`jb6-M@ zK4VjhKgQsr+gqyiGyILH_I@k{vnv->206{3>g_Vs3(d=^7sYaoBGMuOEkvsp+MI0hOJGslc_@}*?uH!uMjK$rS@O_!{IuV_)m)jY9U9vjZ9VOls z1tb+}L~99ifPjHAYIlHBfso6)GN(ZCj%X2`tu9RbBymRH$UKP@^(LgtA0qMy*?kQN zQTB#br~*#9qT$+6a<6rDdEVup=G_U%G@97R21-R%b5E=NwbxjL zV=_6-SqWLu>ZI+YR@*!8$RMvTkOOGRpr?dT*uQl5pij9?E`=_pLox>}ogvYtexXre z7vm^aY|N%HPy_6wG~oJ$YB;hV{7gosivjhmYTBcSBI30583ThcFc^dAx0RWt7u=ch=X2tiq1AMwhcVL`vueidibLr!bLtCjgeZ5z zGB6};0K3_fARE{P-8Y|RGPu`A=VaZNZM6H0&@#U@jDvh?7_Bbh*SHmn{(;7E^{X!Muf4-LtzhY;?B4nhCl+aqY8?L@PmN=cllA&e zt?n2LzBM;JmZ@xJI4)zUPHi(|*&<`vsWLT_$p>XFMv_Wrlvqz;BD$4y9e%|kBEKb- z%u)|qw-;|+|XZG?;IV(W7g``ivU>)|T@If8 zi$v~YYy}N0B(7LKAa4EU%d&EaoZoNJ?0p+r%wp;cvY4*wT}hR_qz!$E^55vkXR&t>bMep>{u+PfDZ> zSwf_p((~wdMun1RD+bT2@TYVACw7!Bx`G{~)BFjDG5+nKNSdS9xaV`(x^1@DS_6LNz2 z-Gt9vx?5CuOk}JfWq&&!%4wr3YuUx;8a}u%* zHy??}0g^hZy7nxFcC{Xzi!+VRbfXee!}08385dp$PY%Zi2MfdT+~9DIKyd}IH!+@5 zdM_MeVibW=2^0{xR04wtoI*ek|6U1@Y|6=nb#v$?D;W@ZKUFteu>_+c#;|(X$tV_8 z8pjg$O2Zuxe>@L2HdtHPIuJj;g;0nw zmk1y`asqZgpv`xwSMGhcx2ahw2LTu8;rYUOHWpwXj{eg}bVn?A*Lo-?V^7Xyd-g=G z)k10i5UbfWfFFUHum+ZMg`1`3(@iH$f$S=D=UVY1%3(Y4;De?Zsz?}weC(h!JMG=(!=*G|x z>>bT(4lp6+$o6!Q8Ez+x>HD#cr4`D_M+{qxOC~D14zk#6_B^k)nPXVwB2+f=zl%|m z99MeRF)LwaMW=7liay7cy$m1ggEgT@h)8xgb5atih&c*^UKlK;9%IREVSkK8KDmxV=zL<#0 zCMqix^;0V2FE(= zsSnP6ABMy_vQr;&`h6H`Z%oB!6Hn<-_=kXP_TPA2Sp!YN^Y zL0Her>1-;z4B7Pl& zJb6ZSA>mTP8ZjMkQnWrFafZL(jOzLFFiwi-)d^kT;9bMyOd8%o?}Wy1TXw{&GAr!o zXL|I_KD)q}Hb0eYnkq*(PSGRP)#h+G2DT{por815Ml$KjSq&H{zSHY02s*ePpllF9 zrxhGbFvkiGA((9ihZ4-Pf_X+(xWgVSMZ6pwCqE~Fszb$k?N9-4Vw{wh&riuo_@g9z zl7#btTJ417Z`sBQKn5A!>PW6Y(hIxFIf|%9A%XN{9I&PQ(*XvSiul2!7Z%Z!nADQl z1S#H#;&@mh)yez5SIuQo0tzn)yhXff-Y#$GG>eiHu^fua20VR!yW6~s?=)^GF5~3W z4e<&hRA0?;@(G_HR(GJjDV>V~k+E;|MI8S%k}JqjAup|XGWe7K+4PGpV zZFL@gM9(eTsAX|i`u;+F=yqjCtHjPe!*LV&i*hID`ZZsS;%4#6qml=-HN2q!zkK13 zmnk(j?QGn@XvK$p;w%&v8aLrb`Q?5KhxXtvtWa+7JKBT$tg!R$GQJJg>UZ!CG(A4r zsqV=xSCSc(me{OnHdk zHXvob?RN-Jgam76FERm?f*K&e8Q;k?RKX3UAmBEgR|{^!LJ~?bNQ4Fjz5D{Tair11 z-#*nQV3Xb+Q7z?{b&>`hZy{u%{!=qBlnTf;&SnAeUu7Ie#&MESAR7NKE8|&Yq-He^ zeQT7O&LYEEQuP@mNZck-%Z;k#=C`Nt8lu+o*$}t=t18c@g!83J0dL|wvRwL=n$(_4 z%Dz;&18k#@EMIEoS&J$OOJuYaU!A@$b(Rjod4znyRFr+0t<$kMS@QptHhY0 zvDLARr*y8>v6#@oL&;=H56vUWt0=^n*|-gpwNZ?xR8X*ZMxAJ@vDskStuqWUQG|wK>I%KY%dpTc@DQ@c0-g!20-OG)}v| zQIA}vS5zF)mis%{-X9EJFRG)_+0_eM{nh78MQ-*Db1PYuLTO{DKs3Geb0BrwaUIrvWhAE}U~d*DR|v4?V6_=~ z9)hd;kWEHLaw=K3HJJ<;Z%gGR?*bP(mq>N)JrM+rKyGh-i$v%@REf7L_i=Gmwbh(S zoakpE<9|#lJ;8L5$*L5z(x;z=qt($#iqE4lw?WKPeofOp0g(-JvW)4s7y<_0t*~p>-J*^vF;uporX}ezrjK3c+e6S&0Aj;U6fU6KPuYZXKqQs`jeoG zvl8T30a3bcGtWi}#*C<{EcslI=9Li33_wO=7FZvyl&SG0&2 zJZ7K{q`#OY>%Nc_?j6DLE3?l%fAS0D%}8%?!9X~ zw4xJ_3Tkm{ryFP^?r_{m3$+Ne&PPVf-vg}AK?7~gjWO3u?`U)sSw^Ue#MywX>6 zBZA@alg|qc@|53KbW`wDs*^U)6DgPRruh?&5E$K+qN`Y{s{F(M$i^o0asVwN<2onn z2%Q$(QhlV=Es#xr$s0@qv68rmBUG>QH)Y;a4n08gDy=V=IroDXDAbL+fP1%IahEeV zh@*c|E<%J_F)DN+ijUEmIp$Ni4V1+&$Q-#@W}!M@8Kh2C6W`J!Go0)&3wahK8ugM3 zG9DL~>#-ghc5o@D&Yb3)dkKeHsRn&96zI?kM|4h}_&?7(Na=cH7JBn}CeH$<<1^Hn zR;=X!J;iB;)mcaU4$j0xcEQ{m$aZ$o50zMDn~9quWls7xBKnH)C7(JlN%4uW^2msQ z!;fUYYgFe%TnDih5=+WHvCfF=-4kO`Cy=8fJ(9myePS!bHbL3J0+zhssbV}1ntqTlcfB!i^)5 zP`*XM+ORCGKrhgS1q!qRPoXx!D@s}8sU>h z{Ay_iD%GkH`OO{nzTT-uvYr1cQE&-iK{=R0JIuS5xR>#`ZS7T1z0DOnqzX<1%;WPTL&*)q_dFW*s8885PTA;79_VtLV zMf8C@J#s~kGPu$s56VQ;RyQs@@-)YZ!FT9zNzclhaSfuvp@%=o3LVy?Kb9d|Cw*9% zQ_+wmjw;2p{%{Hw{TG_7FQ^=*46wt`6xDPCS5UmtICVVUP6eWOQNIW&h@cRVRJ9Sv zNxItqgi^KCAu{w!cuHFPhD}Bxn6ZxIl*};OE!G*jI{;;7|pp+QY zqMmqc5~d5!1&ORsTVkqA!&#%){{Pk+^%RD?MlE$xPIOu!ZlLAuB#Obb^@KuDR0G7j z7DGUyYGfcwD>kQ&N*Oxj((0%bxwP7^(;M-Jm9jSXtUQc4`h@k2H0QVGD>M(5;ehPf zu^bl%EDE=I-JTrf;#@X7Ym4cs`RX=FBj<5ioopZB(#&Akt8^~V-L{w7 zB94PBx%gxVx!?+9CpA;PhqAaWbn;)b*1{H@K}d?zJj9g^DOLlxzNz5DYf^?_SG0sT!Hi zokfM}ltMf$hd=fJo(Zp~@Q*sK*<((HC&0p84xW&vZZ`kIdwdErvobpIPmC734`YMn znH>wVx>Dwc*ZvvAv^4ysWAVq)6(h6ZnB1+}gQ7#Et;R0Z^Lq=0eIXzKSuweiuH*l0 zMebFRGe>5~=Fj%_BqR6c=#jq(p7B-OS5&AysJ7uCp));LbDSA0^_1V06+B0K!3(k* zhSKXPB~8&EW_hC{2GvxK8=2#^Cj%vKg^qA2lI<%oe4Yl3E-PFPg~uh=m^v!o}|8ti*qqL(CVLKN-@^)&rj^`<9m9NMspQ?W5;^& z#f<;Uvf8;J#S@4f$f>e#W}oOSzaZ%GlrP2#4-Air(6lU{yK!leKU$sTtvx10ZON(L zmAQUQv!7T;uwL-5>}@gAPx`n)`|RnW_0odZM9G9S{T6> zT_9Tq;4_&)Uv@F08kK>M@b=SM1c@T`1B3E^hYkj{bhyQFm8{34>vSdu3-vRHnEsEl zUOwU_y&74!1L#JJeX%F$I`lhEpE>eQA<;hy#Epa4MV1D~q_hBex#$XXmZKM4p`54r zDlQ4VFA6{9ddU%avIT9))_3%9GV8-78ZpJlk$Dt~kMUQ3OOXpqc7m0nx0(l!oidR< zUll?YRS3CRapX)9)TFDPoMeN0Vn5o$4%?ue+sxco*-NSyaDufdDx(*&fUB8|md`6o z|Fu{3^)->LisOG-+wkH2_?>|0IB?i=NYrfLNqe0)EYZvr-xEZhM{c}*dqr+B#9Sdt zQ7KIg?Jw`JHx%?A`-gN*X%w8omVe1Gy#zhZymER5|McNovQ1Mm+)`1`?YFzIaBI@F z_%RBuZ)7;jb65%L4jb_|IfdVE&!=aE&3?G-EFrhi`)!nV3x6~*lP?ZWxmy0CL3A z%I%i1BCaLscLETLXU#u@=zjWrV^@#^ju66MHrAfbv{{h6xM@fBz~*_T%tcy)T(0l= z_CPRQ=dnS|H<^Vm35rk2oGSI`6QY=>yPJbk^ysoun5FHA2i85t;g0z-6H^b*!VN{_ z($*PHn{5b|CV4|@zLVeOX;_N!-*OMCNQfDlL+}COBHc~lR#U8b>#-(=wKHH&Fxjp= z5xCLkR10MD*sWtC1IG_&y^qqWaH~gm_k=zbMAE?#aH{AGV0(*F47MU`rJNG(HP&-Q zUm+CeXN{0Dm-+MCQTXEY82dSMCe}5^`oyhk;p1#(WRAd&-(P3^cx8IBLIT?#jPB93#Vmgj|X_zhEO8(tkWI100jH@xG?h$%z*~B4-^c&5yn=%_x<|T06{BtN(%n z3-RrTiR@zc*eht(lG|~$4QaWIa>5@@Wt5O8U^V?Al8>CuPG32$ZD;7=`^t-x!Kvm; zC9rESBWHn#PAO>*4n>J{^Z*vqa`5{Y10-eW;YuX#qN85 zu8yNn%RMlJ$yZRE7-Jf#q8`r_WzNf$Nv!O0S!KSJs|(}KKH z)z@!yjGQLz1)sA#+~G+KH>YN@n_Uh?K+^UlBWEC@#^)xcy~8rIFRo}SsqWqyNUywe$E#k&6I53WmT3a$T(k|PF=#uZZ>}^ zd2zou#+;dI(t_TMW9XZLA5(dbMT=wz#qLU}G54-POAfSPH(ElnTRCiwV$moG;4pJ| zra&nxaSf_ZvI%8bys50kzxf|R8bccPz`p@awV8KueL@1XCTZA!1lu4;m=i4S0tVu< zcynK$#WlAME9aD2P+%Xd``T;qAJ78EJf-IO+CmO1k+gjbsmgEP$$XLtm}hP&7D(i` zSTV`apf$-PJp4pUSS#CK-4fah{|b-scbW(t->t3Y2#N_UZqi>nn8Y!zncADW#gJj9QBra*9b2KYPjY#8dp($P;_<+gosldTiRu&Qj)61mqj|Nu`s|< zbO?Ay3Mnmq4?kZ+Q`M#N>Y$}Dcn>S;mm8@B6_@YnMz|x@u$#l>wh#o@uo}J*#|g;Y zhncs$AXCKXBAI#4XaSdD^(B+S(+h74~^;fN%K!@N^{X<^E=7AoP-b29O)dDf5N ziBBV?Mc>9yPPxh4V6%K zU*^LK%9~9S%^N|QBHWUEr&0cWsq#-^EoDk?OP6lpIMQl$zXT#)Zs|Gb%L??JojF7} znXT#RnSM{t&-8nGq^$S8GxRx`JTgP`QZrPN46&vt%#k%kQ*o&|icN=_qvpjxfiA%Z z3jI=O!~Fa?8Fu#7^C&pAucqi$v~a`@A@+w-vn1P&I9dJ%07V}?_me&6F)IL7=32nznj`7QOOSTp5pAnzJz6REXo& z!CY8~fwGE-feFN8C%W)M7ScDzLJo*FYO7<~>P;nW!I7Bg<@%#@l8GGIIQreY9#|=; z7%wFpr!{&FAM>24%{0NEx8Tu2;aQ4>Sj)alAT{1RhoQshc@);BQ{JbkOEmI=OEz7G zKdGFUf`cN177nsV0+So1Gnbivvk*F^jo8xDqa0^k4av$l#ktJ<%qHO6jM?KxmWlwl z9*z=naL!{=?>*|`ApkW~HD`#qS!PXm0h;wBy=4NF14gu$6Hd`$kbb%$Y(>-BkuLN8 z`I+`yl4?(hYD^vqSA)#ql$ZF(oKBloN%_)uj;;tzCd#TQE%i?O{Sd|Zjo5pQr|7gd zh&}ig;UN2AnWl`(0c>|0Mxpep&1yuHtIT%u%tPNwnIt5(h&|XV0pn^!3f`=itkT3N z-^$^B?CiK)tO*;izn1zM3gnPE*+x;z_cx4OHlpUTi|^AC_7)rVoNYDb6~WJYY&8`Z zgmS$}Z%*R003$6%pyl(jvQkE%S7({c%}N4pAs5f=v}Sumwr{gEH!n5|F9l+o%Ap+^%JeGaL<+{}ALqPc&tbw&i$9+63}H0E`&9<;yHHgh z!+LFHtg}7s%b>tkHM%n};q}1LH!CL`th68Q+&#L{KLLYTMl<^B*Envpx0^QsAoCYz zh_21KZN5mT&a1@p(OQ~Y6Yl6a+U_6yejxT~p>M)IJ~waxFN*!8N83m5Ji5ng-x--* zgF<`5li9MxZ>=x3(@pkRk@_M+(M8#jzZVj4zp2&VOp$)08TWsNFIrbo7nKxR{go1J zZ}M?|{Jt-GL$(j`Lb;!HdDI&|FwPr`JG>>_y1B>Ls_#1BE!pGMUT*Or$T|8t{<9jH zqDFHGm-~3LeeUq@a9kP2@Zt-$&mtS;$e@FZ3Hfr_oRW|P{ zi{;nd;?t%b^t(R~&hr~Beta26Cp*3F?!_~F?xrP!t}w2xuS?i5K|-vbBqmoyWb;1Z zbz|$UkNoy#-vq2sHhXvN_YU0&esxB!eYp-7*FlFdyC(6h1ytrJmMVT$oMyzl_D%G( zoXYizT?XtZfB`|9g_M#6ja4FyTaN=er= zZqT*>xuFjrhxqH>4?2KmBKty2!8ciue2hj3B!4Y1><`JqCqlC7-$1e#eiPoHjk`Yb z4c+NeK$P0-O#)M|yUBv*Q@xPn%E;QMyZwJAKl4>JNmBA-dS?Q=#hC6`^;gyhgY&}gkC<1Y`S9P}M+-#|!6WL9gU^*-qnV>{ADqxupR1^YsAiLjd*w z0Na)ZSO!=DAQ#^PGiFI3zfEd$%^V@(piJBU!`_>R)%1OV!;O^Wh9ZP0WQY(V!@U$Y ziV!LxNkWK9nNljMD>7%!JkKFXDy5R46qO-mJXa`0gQ0h=z0bLwTYY?gzxR3G|K6Ub zyVqIMUVH7~?6XH^Dcsa(AtBW;_5pm7S%$n7geE{e6;-^21yvC`xq~Zf;HocpPr=%! zA_#=&>>O}tEOsI-C7&$Ji!20V7<8$HD8dqMjM=zO>6kj4brrKt8A3^cq!Pwcsksp< zFa|~nLRbh^dL}m+hD0MY7eO>|$Bh!4?{q@}gy3r7vb`7(UffTmoC!x-tYa(^(BSV}082d9sRCMe7^$@AFyE5C_2UP#OC_*;K# zN?^BOA`BuQPJ%4_F;$j@=gVbThs|0dZ|73fA-n#1Td zag(LwgLT9?@~+#O2xeg-f)lL;7E()r`7TMqmc+KDnVKc~$GAK@1u7cZw z%qWTX4m=JQHVk&MgoA=Zs=y~BJH_lMM=qF?Vg;ndfbaj@QgY7{Q<%%o)KJtQ)seAN`eV1g1`Xd z{UgJ+6AWY(ioqH_eGyy;1%qQ?ddW8Um>G`|3WEK?bc|F7BIP24x3ywe2+D~h85mEF zBsc<10sUdy2_)0|QD5>5wvAk-+Dt$ji9%G9Y-ye=2!WlOuvruiN-Bbm11W0%SspL~ zX86t8@~{;Sz+~Rp$;!ilZ?f`$?^>Y+e4JQZRD@1LFwUA=_IwA``pOItBBUMsc>ifaR{nE3y`6>A2q60~9`O#csC zG5;IzeM5RZq+QqmZk4rRO<^t$UyIU*P;ZH|Q%OyRU99n3O{NVP970#8^#Y8n>3Zn% z6206dXib2ZS96JFfJGSTDftA5YVMZoXJdi3${n=ACf)$)3;^%~Ucm+!T2zqC2!<8B zq)19C!qx;}i5$YVP&UEVFr6xEo-V}J7Dr`hs+g&hWW`ZXhQ-kbyVt>;p-CZa(|4>+ zxG(o30@x(ew&{PSNZK7#h|K@Of`wp9$$Ng2G$oj}NAL#yAQD&t3$H!;$+k!K7GYOq z?Gdg?l5dZoe~;sJwe8U|Xpe}1vx(c_WaW5uyXp|TyTUpNQz?nCg^RiY*Oj{u= zT(lMP?JH}Ays;I6>WZxpd>)ck2-~1tz|3!hyj@6@2tXaMr*~BYZIAViU|z$6Po&j( z=<@>WgC*7nZ0Nj<>(mMI&C(kTz>yqVWPv+#@#95`^^+i3M9B(F7v%s}z@ja#)E3$Z zN-TB+!^Cd@R8Z>(6*1JkT02O+97yV=CTBy9Wk87myq}?g!@iAm1nJUX>~XYHU=z&5 z+Q86F#13o#q5KCh`C_O}l}!X8IO126cDGSqal}kT(k#QyJhoY8%?TzAvYbT}MV-U; za~!!Qxs`mATtj+2CFTtnNZMo8M$%JYnuD1oTF@I)sd-eQrUDbBGZo=9O~_VH$YJX+ zKb4Rgzb1h&R#LOpS4sJiSQ3I`5ikmavzcjP!N^Ln@?V&l76jwqswe@c$6&vJ1$=~B z!UQn6Wxk%T=cg;&+hY#yraieZS-#)%DZqUHf8lR2T{W-Cd-k$M&}9g1s%xSA&;n{KtP+3~;&}q|B)NctiS6&Ob5Kn(7>56Pu7G79Fo*^X zj6|$olL5OT;rzDlq$>uu9YQxwESaRnl)-r{xN`v5%qzqau^OxzHG!qd9ymS&&Cl`< za0mu;qI6-cD@;XO(TiB|@>4v>8`k_pXtuwotngC=mz&*yuU$z7x!ml~TO4_Xm4U~I zwPit8+FGzyqm77s;^IV^39vHDAa-oywkP6fpAg#}n9q}q#n-MMhuVTGR_-y|;oNHr zIFm?H1{-l3!BA@6SZsu`+LQ&2)7FBKOnT(nC^#>u=?!Q;6oQkyHJOWqtus89bj%dC>F=D`! zQ_OyfaR-bNm6A}5CtxZm&kBn11I!nSnMW{^0Prjziz#vvMPgM0WG+PxqewDkW3HJ- zkw%E*&0o3I`avB;n^P_&B03IM60Vw@R(%K?n=QH5FVh;g0_ ztQY`-BnvoUV~Qhv!tbYuDZiL;_$ZMG;gR_sMPM<)A1I73O6EDj5fW#BL3tahAc{U| zu*&i2DTC*k1E&e}g5jx@K1IS4MpcB55=k^XGNDxcNrYEZ_#(od6vhpkj4OeOCtyqs z{W}x)z>>9XOiLJA@6r)Jmg)Kjz%v?vgRy^#xqm;dqq3TU^dpRA*d+1 zf5y){9ledib1dKsG~l%s^mfyK-cf_owKG(H-ci9&?dKgO47EhT`55YJq?0_B8iEQK z=VAYN_t6D?QWKolGnA+p0;Ad;oc0%-w=-0`BRCH;jyDp)Rh?uwH$iXJ)3BS>OBURSZZxyv_IG|03wwX0JzZ*i+@}qtQ80or;8=@6b6_J5Ej9Y zn1LVreCse_7IP9;^1`b~pK1GyG$M^*5@{45$@Bp(A+Y7|UEtQ8VO#MHMvEm?KaRwHl8-(<$WGI{usOa4a(M`Mr^lpm% zg!Z>YA81N2kqk5qua@wj1qW7WL0XtqgyRoEX#@RzQ!mXM`be2gD5az-z`?lBNyWfs zoiyguM`Q*Gb|koGzz&Bpkb+IW;1|_fC)l|o%Tl-+Me>!n>_$LG{Itbe2AI$!ct_d5 zJ}4NG!)k?&hMmRuDie~q6)^*wHPBl=zR&~3)A# ztAW124Q$ZKz_RpTe%f*TfB4B6B4YhS-1J@MCNXRdhGZ~!10`VVxv3a84}+T&d2Rw% zvu+aCchid7;3f+=rv%(20yhmKaiO080RKQo7lv6lHwhdQ1&$A?vjmRM0l>nZ3ZFsW zfJA&|2MW<=V(POU@JLm1KI^vUzkP;dJ@5wyu|U1Mz`|n&Po9KARt;C9!jZRCwe5$MXlAVv@o`0;&Ykap_!@w4pK^6&;J`x^v3)Kocr?6NM z{>b@sQ=w7`RnP`ikE3is2{y!OC`b~fMpBG(&uwvzS%*0!!d?@ZYj=DFa|Kz@j^m)m zdz@V^hLc{D1nY1FMjW=!&s~YJd`Afv%i2#Vd&t8m2x?(i}uD;!Dj3G#Iye0i9erOo4@z&U?aJ2-SZ(Vdlw0= zHEk{mRcRgyz4}Sig$&7<(I8G^trdr78}koD+@|NFe~LGz;#|J^_h1uYUf~U=0Xzip z$p4mqVI`??ixiuGUv3~)ehI6Pz1k6*E_;zA!D0bw(`#Vy?EoxR=C6EP5thyMSbF|} zKF4xOUCL46P#`F6YeB)UWkTYZJS=E%taB#pk%A&-0qyL6xCaWSAY@hzR=n?I4V+jR zqNwmPfTD*{QCl0yN97GsRV?d3O6PCZnl~^fOP1Q413cdv4SAHw#HiWMw$*GAiT83hB-lDsO17tK~NUqs*xThAuW4&)Gd}p zJd2!^P1qESWz`z+SSIn6i{&3%T)z4?GA7rS@dnK_7;>vn`IKTLJih~iEA=pQDDSm=pn+rfYrWD z!0$gT)Y_8EmR z(KGw#iREO}!vcm$*;fe83Qgl{~><#03C#3jIo29o9% z4&KHo5jd*~zo~51FoX|T41&bEFt3e|dNk0-0GNz0++eE>X|Fx!<=PLtz>!JAU=*xt zhbUmB8>Q0(K#y7-AX5bfd12cQ69*yYj|nb~!_j_|!OA|G5Sk7ir9u|RtJ059d0lX` zyQBa#4TW^Uw>0Am!q6Z#CcL=g2fmOAB?zb;;Y*S6Asjx1%nMlZ!r2DpioECGI}kdQ z+#Mk`Yw^eiIMI<^&LSKIo9#uo-vKU`Z_Q!L*23d**ou5l+Pw-A!7`VP0JImpIugBI zu#IlbtrvksG4P6JUv?#<;iacqoT&&WxIkn#`eWgSWhOn+X=-zdV9*J!NEREw*%2}+ z&<9(&V3r=V*sC4^X-!MwbDcck`6h7cGOHiT z_Zjd3LP2moe4c=&E`y;|TEhZ21J&EWXKkRF4uMs6v6XTX#Jo5iB)U97iFL1NI(xYZ zN^}f}t`g055W@a^!=@yPd*4I?ho(tjWH$UK0bv|y2XD2X1AGu__9UUhvu^^2d+?u( zsRVzt?@#ddn!kvx4uB&(=}2o#X~_Qqo-;v@u@~jj>`B8fkUl9yuBDO$BPj1-4ID6O zC&N#d!Ia}YNT$I56ZnT%m*A?ppcMN%)*9Ppx`x{0KTMsa1W9(;yTCi=Z^8W|w{j43urS6A@_7b$%hwFQ+a+C|A{IfCi)o zPIshK&Cf)`^Y%Y5EcW`Ym|C2hfpMj$7Ci4V0(e2DO9jXZ)?H#tcdE2R#}c)DEzukX zAr#`#FzKE8-RWLRk{6V2K=`2KcZa0ZUs~wH*}EG6&In-n+yDS+>Y&VT zLn*ws98Tni4+ows`>w1})lY^OvZR2X$-WDQRr|v}{ZVR6`g(Yg1g%no!~AemQ}$E1FN*J(bJ4?+LLpLa%h z_YcpEu+<7ERuot!)3KOz7>mKNnRJ!lXBa5`yrYkyA`a202;!KQoKivDx0cdz5Gj76 z;iwC~E@7}Id4%_X@MIY5(K1vdV?D|27*8@C^AQDS;TR7&!Vp5mpUFhAw5248tly@4 zYsg+JIB=EyvV*0FUjyI3D3day0M^5aTd;H{JW+Hr01S|%!HL?Io$m-NlSJ_f;0Mc) z`)IS8NDx=t#0wKcuV}UmNhfK7Gc92>#4_X_Ntq}CM{g}d9@6yT@`&3C&d|*?c;szJ zx0!jjflvs0iJQU>VjqDfF48Gc6KSNtQb>)vaYC@d!r-1LNGkN!69q~W*AmvCDxptv zaG7q2h9;P)40#{Nw88WB;AFk;8V~VIx%Circv1qGqab-D?0gqI_8h-raX_fCNaF>C z;Ydh9TuBr9poD~c3d1sHk;XHGA*n6B;Gqy7BuV5zcW*;jX6fBpWS-*PbQs#~(^91I zs-y|%YKF#?Xd-i9F&YO6R8Ua#Zbw2T?`9-aM*B+yC5?kJg(XTfBB9x^h=a-s-a~)h z5qb}jWHM{vRH~9*cU6}IRskmgg5KN)v^${t*F^Yg(LAAErk*WnLRl< zh|8JZm@|I^-(c1Rl?WkSB_vlgf_@2oT7VYalBU4T=1OTB___zv#rTyDpXzW09~N^m zd*np>Q@GJ&%4bD5DGv5+K;?oSHUrB_u+MA;TM$y9yYEiVz=Km7Vk^ZNdh)huc4CAtR z09|L~hG?OsB40+45CRo0`NL!S{Fv$BP4Y z&s_EzZqKXL2H!eRj<_iknOP6{-$wS?l^{DuZpZ@0l>UGA&v2(J6nhRyR@d?eWQNe~Zn zvdLurGH95_Hf04RLBusk2HcqgH|L;gE6@w8F{eFFDpu2ge(YjcLzMAN;F%7~Q821R zh{{bQ@P@eZfb3ZSU9Tl~I82tvAX{XR;nQ1i>mK0o|BjXNy^zP&(0o~eLCDyI{Q51SPI6r0h;S3|uQVMnTr50EeVKkd zw-)pZck(37P_j2-BEkvW8DJ=ntWIr8u|+O-o_>y=d$^j!`LFo0c5v}=))Db^p46?ezVSw)B_B0!3X2}6y472ou2ItOxnG6w` zj50>#R=63?){;@WRza0o%bMY(UlQ0glgVs53Ib`PbYVhV0YWVZpoLnctF=s7ENOQa zuAIS%@2cp(HIcQcf%Hhig}^Dz1sf3$Y0}5%nB$->g3@AH8q#Iyj8g+P$QB_}ycS0= zFx#oT5z2d0d3%K2dGeq$fY7%S{mz6=VImh#W#z#EC@b~p$sGM$!}P-(J)&XyI*z`mVY&-Pw`quO&y3{g#z>c?7xEqQ-o}V| zh9!s;$NIK6;$*+>XX^o99{K=KZua~`{%!#4n@gO0{WuPDJQ2uKpT3TxFKUSHF2>zq z61ekC39hfj6(QoVk$|wY71xNh7)wsrq@FMoerGr)i5C7H4%IXh)i^`h5?$9GzyFHQ znZ)-5>NY71iTmm%2IBLC_&mXB&P*y7Ulj7OabfU(8Q)wkKHGoCr)tlp&*)$A5z8C> zThl^LQz1<3MatVtM>d zsxL?PlWOsv1Ct{0HM}20c%_T?KIZyMV&>9vuKyr=`NSE)#|;!~F|%Dptc_V;IvOme zYFVuGZ6ki#gwkBzb6^tI5^0hgDiKlV9iop2eV_bVSg9SxSHY(XTaQv}*gP zG7X%4+r!!ZB-_6{TF3XMJWGO-?4^dh=fI>WG*(d#m5-=qJS~AqWr+IKxYiMYNqF3Z zl#xT}BkGA9$_!D5Rr!K`h}sM&SxP7%9R$4$9!}Z~o~4~-NUo2pvXAu7glJOb-r7RI z_1}WSSbwm6YHxT3S^)C9Q`i|{CxE4Q;HAwG$MJ|Gka!%3wFUtj>0=vGHquwrr7-bW zQwkFv1q#PvJmsMz{wRbQ3i~1ag2HA9XHhsG;S?S|mdAgV!bDFrg=3L_JB95L4h5LA zm`j#7rAH&(ox+I-JMr+g6m~|u1%(3;HUpTaFA;IUdq{em5!R)=LWG-AI1yn53OgfQ zzJc&ZBg{}Z0O1!Du0%MC!a{^oD4d9JERX*zg`*K4O<`w*w*!neLVC$_Fr^8R=Eu@l zI>Dvvmht0}0F6Q2(D3V|TaT~GWIfN(m6oe_=)SZV-W3ScDd#~B{uK?)Zk<2DK>BD{gZ z(Fm`iurtC-0Oky5Lr{AXNp_UY4`DG69!lYK#GCN&hCEo8$J3ODSD-LDPg)*A(svPI zh6lf(ushY`hqNvH$R~jFpSKEaO5mBu1oPtXeZWB4y(;|7SV7d)Adi|cyddm?<2!eWGbt*geQ5}vZHL_6Uz zd_l%b36CG}a}Ebyca+<%2yJTScF2yq_>%-bgazm%U%ioj21&>9=MaxBM0q=;OOUi4 ze*$@QqTdwh3pp$oJ1KugD6jID*h=inUn^%{DAH2^$Jv?>-y)m_z!CZ2Efgp7f1E9d zK{g4Qqy_aG3L!^4DkD;joIX>~C(~6gFX1}@=ymfRHGn+vw>H?zldsc%!0cfr%2aSd zul(x@;m|#HI$-ENf(Yr=6FOZ_NQD*p#R+|glo<M(s;m;>b`*|6SU_RaAXVn^RIDMg?uaj;a4hn_qHsRKITXfT zlr)XPMCVNkS0c{^3KRWDcs#o(O!P~5{A+pqUOfCf9)3CxKY@oI1+XkbYdvGoyY6MgKc@R1rIjk!M%8}J`dLB z!S0(N{v{BG$P)ff081xtCg~$W&w0d00Q1ty#$Sf|VklcI!Y3&lh44NKi?K{ZQrHOL zU<&&oj~|6S5w@<7^Mk3Z?wexW$EX-9WGAlRISd%tQfZ2%6766DHgb%RYEt?9D@jVt zFs8>8CZ+QllnCG3H($k{f|6x%prrLrt?IgfG0<}Eug z1kd)U(VJ>FL)e|d1n9^Q|K_u%23d3ZY>Ud)4sQaB3zW7zz`f7ZfJ4Sro2B{uB!PAskELD1^`Q@X*`KKh_QRskE6G5nBIb;|AEOr`H2i7|IL-v|FU8FV~&2S zVftl`zQ1AmR*t@=Vfr$TKBHm!B#u6;VR}D~-o9aa3y%H=<_;T5{~Rv;4bvZU^ji(n zFLU($4b!)B^fhvHoS(6lkkjm7nh2gE0-&5Qzu}vK4DU~<$4$^?h~^3xmREjxk(>Wd z<|c?#`64oY8owpXFR)XXBL}c^R5<4;i{iie*Kz#E{=rX9ED%d}U>)F+xSKP~gD=RY z>A&N94Lxt-f&qN7|K^{>*{90qm%YUx-9jk;V&*iCOv=ArWwcE)8s~CZeEMWQ4(i{^ zGS;sB{`~TV{ssNE%;_GiU)RXdS$XjPzvjEA%w`Lxu%58oe0RuFHWFRrKbWJv`GFB=p?;IXOIsFBI~z?uB~F_ zN$TFh_=~LUNi2mK} zWGr|x{1o!ysk5%jgdyWgb!_J5zr3C6tuJHywvcA*+d@WW$;NMZv9KLmJ#Yf{CBICmNz<(wXk<<{eEUXJK z((sR`sZRR*m@*s}l5bfgmUYtS$J~=~ad{P60;T^pyv?O?_;VG0Xk_rq@t7_q_Bf+$ zp>+I-z zwo)-Lhw5aJZ&U-NHok(pyKygb9$z$aC?_w+Z9;A6)oFhqVB{=wPj> zsfuCxACCL_-!AOABP)RCpE{`=Ggsxx^}+4$CdQIY=YNRDnSN5}Uq5o?8L znb9)+GWt(gVel{dQ#raUCD11jllS>bSz*OUxc1JJfmF#}Ia*Rfc$TAk)9)YY2Y5kC zU*pe9{K?0k9Q=8RKN;{Nvz^GZ_3&+K?f7vNjO}ntP(IzUycsSa<(ITox;)r}$II%& zDkrt0<3psrGxLco!N1_aSv)v}2gd@;i=XIF;pvN_yafM=j=K=JhzEPKI>3Gtw8ypf zSxD^Tp85S-n*a7}`7riruzYmp=$Z}Fl{orm?*`>xPh<5zK)Njd#$mVm`tMYP(A+Ez+YRK)TDXy`Oo^&dADg{0-d$`(2Ydj#CrPD zU|AVo-v-cE&mPPoBHz58{DwO6V;Yjj2A0TYPvZO|OMe~t#tq5qbMjm2$v3VepXT0x z{mz{H#Cq~+)9R!j zr*A3fV`0+k?mLhFtS?Q92e1AsJ~F;k$9}dH8!?i4@hR4cFUjqHq{kD-eCp_DOSuu# zv!4D#Q~36)NoW5r{aOv^&*J=*If3)n|8agM;+Rk!d)ZnA=PAhaasK~mCvWeix&Ol- z&JF0-=j?4)Pyd!W`X~M`{R$1}x99ZV9MAcKv%ha0{a;=A>Cu%okAqhpExS;@Or(nN z{Lk_f;8Wj!&RqQF_2R!YnIE5;bZMRV|7Uz!4aCQ`8b(Z}P2Kd0>cpoA@yYrRhLk8o zb8#)_+d0HI_E}%*eS?|#pd-jvQLr2xCTd+do-*z3PAH<6;&w6ZxF=EVE_$ zHcV$*ZZXrmVLIEA`7vLuxRgO=_+d8Bn?N!HVNyA|!Qcl=gJ)gon5!f+Sh|UH5I(aX z;^TOOPkjGyJp(ZlD2q>yu8*6;a{PVk@t**GR+iX5Zx;Vq zUs@3(E5`Nw3Fp^|dHx{rPphM^;t8$%a`u>T_8h7w-@1-`-pmHl! zsh)hdI`SW!`1a^Z8(${%2g??ePZMdyr3U=%%;}$4Pk-7tzCJbShC2FNgZ_HyHRALs z*3;)(N8cdOS5KbJe^~!y$@7;Gv`Pno{D1RrsmI?K_-hMF7Bx)BxXT!8iLo4UTmwXX zj@Vm9gkmfNtn}zueiUro5;Cgw7*_!!D@57~^XYs+Sq%3r>Lz+*9YG~IK{SGVZEdS3 zs9r}f!;x=+zSQC3FP?W~ZXa7uQKA)J5cb1>qFT?%ENEU&a6=uzF?B4+yTG@At!P3f zeNWs+w9BDVV%@$X13B@Gx< z+yK#;%gz)Tkt=CK#PYdNE%$M+D-A!-ccu}iXjMH$U&qKRx&(@9&6Aabk@W;)L9mvQ zZI^^h8yO>8H!ivLCI`7dI#e-Xb5|B;m3e-W?$i@4`s#5MmSI{%9}>R-gJ|01gYi}-28Kb-LB zU&PD*BJTJX(N9LKEugaTZGCP&x-(Q{G7zrmjN_XUy1p;Pf>-8YEF1Qv(gg=+-0PKE zK6#^zOylHgaWG$BoRHR1G4o_N=a$-cgs${@`tN%0J6IHewFcUJBc@wzBv9W_nbgz` z=D=>wt1}wT>o0+P5tVmmKFq6^26p*zL>BNcBV<<9R(o3cD7~YMUfbW1tpNy^DQDY* zO0+L#5=6-^9z99nSj6w6a1_Fk2-g|Ewr8+Dll)mUlRy4U*9+9{@4YhN4`myTY_bfO z>7)GY{@(Q*a~nBkkmB;o;ycZP+HBF1W<3P^WOEj}QsE<#Cd?LT?nDB+Bb-iQF~ac_ zHbVF!h0PE?3b0he4RW8IYTHJM_DI~ogI578OATpXiQim#EcO6PZ_g#Vi2N8toaZ41 z^0<3YxDq4kz{9toa1`PjQ8*vrYFm;rqWBAi3D0W^6P~9Ou0;NOJpKe8|79NjI1j&v z!bHy|3KKo+c>K$G{0n&eGkN@z0G1V3+2}8<3dhmp2whlI%4~Llq{zQ<2qQb;#x5;T zN2LvLu@inqIN@i{yqUmpam6|tF%jX!_*4pGtkN44_Cx2Kqp&@~hbSC{@D2*+BOFHI zN`%)?*bm{QJa{g^@`;6uX>dBys1&U8V=R%Eqya1<(*1eT-Reo}(*^WKufSDk1fwET zARmp8jpjCqrf@tj8e;H$#6*OXgeOwi8I6yjun^&s080gPNO>iQT}Y%GiKP-AycS?y z*+&p`6A@QrV_|y=C!%g^3P&R>q;LSjrWAHY*oeYHg!OoMEgq~w;Q-{Rv>|atBm9ZN zi3k@_*cstm3I`yZ&f|~g@n7V@D$X=%Tzj(}Xgp8L&CN&HxHH};OEOg6A>acujMEP2 z(wnpEwf{gTZI3C9o4`gqSPx*nMvh;F$5Uxt%OkUqo4+$+nwxR&Fd0#{0ToIlZa{@m zmzJ{{OaK>O%st{`cT7tt#0PjW!mD|4v-wZnL^w=T_W3vRvCl?QEm!!=XV)XW1scmw z(?6JgvT}4o8VAZsb$M|BU5GdpN+)pTIARZhKk?uq9-PaA(|K?_557oYXVia`2S@SX zjR4ol50byz&Bzd#EbXpThS(npX_eldMe?4tA3im;r26SHyWv?^8d>`+E&n9*5Am}$ z)#r}3sZm%T;f*-dz|NVMjV1ab5&xFLCJ5&PEFA&y10zACA)+@AagE1)8em>QsZ-KD znQ-K-+x!9-+equSJT+$>_?sNc-Z6X;MKPo1983 zNX{(iDFDJ2i5~#*-$}4#(tyrZRuCcOF9vnAqdExU2=cInd>6oMrpx*(vi|8hs9v=H zGllj~i3zT(2+s_5d>Y<(WG_T0Sjz05&RHVQ$U2iO8M9@4|AUKtDsEP^NB41TOyi9D8PnBge(2M~Fov_yF79Na+5Jm@za?UVP57Z(`h^ zNxv>4fK9HM2cM8C<&6Zk__J8emR0n|{J$$i`W}JYOEbmgoJjPM~&uIqjcAZQRPy*C1Wy zuW%b7u}%7HFf?>BH1mDX-Ah?np!%!^HZ`A@U5_874M@ zXpQ8IX3n4tXAO7oA+rc%g8WPr{M8s20Bgi1by>ip?#%hs4G5DPj|jW8`X#^YfCyD1 zT@G@!j>F6mOVp{zbU6~7w2Y3DUaF%=QKH5qHLa;{IXRh?%B-m)V=0!XQOcY;6tW9| zBaW^^tQC8^w1#IjtevOY9>}42ssH_gpUNBLmNJr>H}V8>Y%C$%lOqJ&3V=LR@Yc8i z$M-5Q=YUu*r=SMW`s3X+(5yYwBX79Mp``W}2Chco>+J@6DlYhQHb#VhwWYL9RU~PH zJ1HVGcTZJ@{aDG^?rGj~1URJ|zM3^1oB;lfaL^|+F`j=51qCXirU?+>9u4mvcut-~ zs8yrWwHel}L_A(r2XjH97>8BJN|Iiq(*$UkEI6x|ucxFdL@^vSNt!0Xor`c&M!-;I zg&Lj58c?o55!{UN2o7(CJ9*pz50_;$S@wXaL7S(5pi~cRLkIrEEpZfC=jY?#1?xor5B4a?b3#hdEw#fC%KP|Su?+0c~@7qej~8}4Jn^K6*F zhFNU*f(<{ip^6WUuPqyzu;FMnbYw$sHVkFMqimSWhPiB5#)c}(sa{<+?8Sz|+0dE| zUD?o^4cD>Zb~ZfBhOun;kPVC2@Dm&UWz@p#_h3 z^|ZdGerxq5|Hj6#AGWl=9qFodz5O@+iwnd{Z+tHlB?Pa@eb%<*?aM_IujZDgh2#WH zjq+%jcygiZ$|{#XpEBl#PjFJyF7RkHXU;G|^$$(8h;;qM<}`w zbRD8lI5A*iUV5w9S+}p2$8<7CxiWS4j<`pHW4B@t#3~u7g{scFT+sBcp;Y72hSf{@ zG`DuQKhu78(lBGUYmuTC%Ns3yt{AWXII4%%lhUw|OG`Umz1Ha1+uH~G=f*OJGaCDu zRw)QJomAhc8`Z4%rsjgR#={n=?ecKlqUbc|efh+N3teV==;fQt4H>WC^6m4EMjoq< zDYi>0S6eqNMeyTp!Ns|@((5fg#wJKshu--8s{KnBE8}N6-&f~soNJx?%YOD{n}-vx z4)IoqKl0k-X0GVitFd`I@`o)-$v*n4{Atbt>HJZ@3l^J>4xM){E7tj$m$8b)yY|Zc zXIVEnov~W;<l(-L$kc64vWC&FFH~ecF|fCHm^QZZ{6To&B&`RpHF2jDqf+ zqp~i>oXksWJ?x4@pk_>ObEjL^&w0cp>IcPszINsIo~Ey_DerlF$$RjaCm%2PKHjg> z^|?w=s~27^H0HbsHh0}Ve8D2kla32kYCLN8c7Kifwr=MYnp`^2c#Xw2LD}OYY8%|Y zDR%gq+-UxcX)YC+^X3LD9q7^KL!*U@m$%FPThucr%yH#2t@~qN&Rg>8Mpad5!lqFP z*IPf?bkUhP^7N_yw(LVG$@ylJzP+08b>7YFdDG&Lzif1M#JGW%#m{A7x#Y94P43{(Rx|i^;BgyMCMVY2T3r zK25eQQaaU0ecy#u-Mi`WR?UPb@2;1= zSl#K>bB)}`IqOHh&iz_><)!=Lpl2N)v`Pq^-u1@MV&98Pe8*hZeeb9i>bXErbI-hy zo0EoO^O^&5H_t!sQkhe;aJJYn1n(`?Ny4+w%$xdarc55<7Nwic&lG8QXg<=`kolBj(Virgz%CQgw_d zRWimVK-9Ngn{_S&``wvr+*2jh!_~6fcg^|}j#JZiiYBOq7o=O=OwJBxN~<#q%HK4d zaP_Q>|M{z%jDrq5(u>+Ku|@J&ErWu|IiBTyTScX_r{taQt^NM$puDS5dOL%IR2`z) ztI9|+r z{gCyYF$^laGxu`pv(x8i%qTfH+QR7m!X@+ncrHJ`uUPu)*@ zTwVNWTW0kSr#zQs?cc9hSa{V=crbW^gMEu;t=bsq2%dSG8SWJs3_G##&)oNp?^kzG z&z$CJmNov!`7MgC4~FY@x__d-^Pl)07m5wfeaRXTV;t1tpvPtP^=Ayl86R~fXLTR# z|I6KX?(3f`M)bKZHXP{PPQCqr9xYV9#ZMl0B|<#OvvBT;zNP-of4{%~a69?W-_={P zo(zl5yk9*qJm_ZQEqnaz;x7%Jd*bA{s37wur=mJ%R9{sO%{;F)VMgh!W*+6EAB-qi zw6R&T_ox<*-<1qRACo*ik^)4&`D5}1?rQYjcvI?Cg=4|N?c&>piF6HC_>L+l z@Nn!f!B}UO|G=jEjN5g4si!c!g+kPg$$f*OBVEo*vL|2N+A6jD<+SqBlHt8CDuzT$J)VEa!3;ztc|NZHzKg^@}g{K1kI9}d8T>aqXwPwL* zE*k3f`l{1-K)=yFI(Yf^Z5&hVDgKeQaN@wA(JOr~&zLhluR2rkzWDL|tM{uSg7b>T zw%B<=!yw{Xx@YwMFwxE6(K8H`8+(|wO&OunH>6oJqmfY)<|&`D^G~c^F(ok5#kymv zS>ViagQ)!{nq7IZQ|EL$1-o~SeJA|h?c$P`KY7K&))R`YrutXg?l8_(B6w{}~OcIy#-t0+G6+o6c85|_e1i3X+b3vLz1YyZwVp*bQbysQ7^EhBCiW_ecX zWX?Aq{eI+1-#^o@E}Z+K+|fUEkox2=%gw|Um(HulmK|(ysQ>*D;miIQZo~RNXhE{# z;@n_mhlJ5eFHWjAE=kU8ba{1zN=T~-s<9JWHrot$vOW#jrCD4$rKxLGTlLA?^3|Fc zA80acjFX1vk*<1UGTyfD;Cr}Z_x8>m&T8~&w|DmEw#l!~=>E7mzfJnL0WE5xDq0@z zda3yqYcDNr$Duj~CV#b8Zi;PX^LAzHqR}>HdA&9d-n2Et{6?k5kfC2JMrZ`DA3kYF z;?TLaO2h11&m6d9&Avec?>rlzcuLna`1Z8ESDx%J`M5Br-%G{j{UhHkG(55SRF}Vf zOS@%EH|}a}<6^L?TXg5nyWi{Ud^hZ56yw*UV_{s+(ayiSFKsg1s9bNU@tx&YdhJR7 z(fi!tL46V<_IOr&uwQ!Kp@Y}%{x6p4b=l_IbHc>s%f7buw%q%~$L~d$|AcGf*0xg9 zT+_+r(dwh#0V}q380mK}T4m**dv{k|>>cm1!NPx0VYS&3X=L?ckM&mKqf z3ZE@wf6pnLkg2XWe(QBd>tipYY@+t0jJ{CTXw1*?Ldzt>bru%=9*Df`1;QThtwy%r zC>dqz{?%@tQvWH#<9(*7KfOM6V`Amxo2Q3Ndab?M_KAPOL}u`7$5)f}r?3C)=5T4l zQG3%ZB{P(Nb$4>KTrzV}pL4SU+6^eazO_28Ep+8YyF*>+HL#36#pL2?pg_T)9z25mi%kzjys3fRQ26G_GaI`YqG!ZF&PjR z(RkLljWdfiH_ewk+WcvMK=|{Dk&<;*Dq&X*?uLfC?g_fx%zoYbiyZ>8pS=jQyT2`X z&hd#MLv&kj&|LOpeRS6AQ@i5yPd-#}J6*N-=$X}iCFjSr=zgKa*(K+?+&yLdGiB^=K3O1b)>O{18E6T)j@57u38`uxFV z^Gkv&E&{7dQ|3x8x_8dIIZLb)*XZZu*uML=+=vM;j1MZ(yY+0Q7%wO=W zzwfJ}sakXF4^C@iTWxZT(LShEy|nV|$n?Zjug;xFn>R{rnNQax4qkc%$kN@=jd|2|0X^@-Xu$5!{zyAwtbq;`n2nH znM25iUGIivZ&*J!rfA4Z#|fJsjWFu(yI$+<$2Y$AlQi=`3*B!|tUOfNvn=J{E^!Z& z&W;nN9eDk7iPhR|YCqD}oDe?IP5ixReAdAMJ+B)?r0VWG7`?Vfw>D$`#I4pBDQ(?c zu2sQ^PY$!!-fKVNq`|ew_I-0I4uvgvv|L+o^4{6v#%mLTo$oYy>=`}tdTYJ+4zZ`o zhrZIW4*8IrT@>IyzgeHmRSU(wcMc0QGt=BJd38@ynQa{%Tks=liA7{h&ToHPw=eAm zJ)3IN?M5>rq3X4}r5BGL32my^_TuxvwR!UfZ}EHFv%KTtZORp0&D|pR1ci?1v*ok> zw(fS$7BPJrS2lfh(xyY)qp!z5z1sRWEVlRPd9C-_DS3ALbW>cmw6KqLhDkux^C=%J z=j@9fv9KyFD5tgiz@%k@@D-VZX1qObTkIsPu^ZndiuvgkDmmY(bWp2G;X0N5-G;{- zc9eD!`Ayk=$5 zd^WmNH8FD5)VJ$~^tB%nq`vvY`^Eh`swJ)0Ty%WM)uYA2TS@DGtM=(`)q3ps9~Zta z@7!-^^8?|22|c6Q7wpm>mr?H5`@A?YQSr~?V{W1adNX%ctQg#5!mgbMXMFo=@J_YO zLK|oQydRsgT|SgtE1WfHlX~(X>D845qZQoaJH=;x?E5No^VB&ev#XwVRynX>&#mLP z8s{e|-X6F(=Gq7|>_YQqNuv_qe-CK9s{_Wj+_YJ$Q zzYCcIEtbyM=-aB;^kMITr_NY~H@AF0LRmjB=;rb*MQ>XEbejIhL24B>e9G5Ojn;Ws z%pRV5`l00Rqf>+Y%|vUT&ggn)@s+UUtDkA#pT~^TXx*FCrwZL>j37%p{^ya_i`WE7lhw`e%a5===DPLGhw^49*wfeu{OHh z?Y7@p!=Wu_E=ilI^_Ujry?w8H@!cDjIUur&m-2LzRq#kQN_fKlm?L+b&Yn_4f z^%@QM=v&_Wsq5($Qv~+!kIx$Su8ZjnSh=}KGkM3ss=lckt1qATzhw2s5@vyBUKa!+UJF z_ATGzv02k4umgGTVdc+Jo!mR-JnJ$s%VGQx!_yrucI)ml^1jXOosS;ox|$CQ_BBf= z4bfZo`*}yjUENE*r43=0o=sQQann=SsrjXR?u~!9_ zY>kT3asLg2?83e0jR~u0di7jp$CC46?>3G%4VyTaO{l!=6w>R`t1pF?y%HXbzVKv( zrd`z1W_jO(stu1sR-H(9X>mvCT65uii+5KBPkV1N=~!}8(XXV^eu z-seLLbuT{bQBw4>ySt>1pZU*qt77+iZXWkw&c<{oA!j`-UHde?9{FP0(QUJaPQ5;- zk6KKTMYXV{wschF+IA<)uRc2CTR3c1@TT5Qjo-a!{rlur?X`EDi#BfadLyU|R9o0@ ziU#9wqNbgC%OSw*_G6#iu~ogMb<#-dU-ByDVt}#9sI1}r6K~!>es$d8 zV*~YVC#HIinl!rIr5l~I=f)k1+ckdD$6%Z6z~%ElZ#7!5xa!$~{iibacSts0zEZ8! zr)p07z$X2htqZgNov}>k^1ZMA!r@B2Cl3p>JoNP4W}hc+Z#Q(>5wpE>t5hO7dqfaSaBkrUfd*8SJ)N7qhp1jO@eyO!e ze!tZ}dnNUH*JtFI)*AkHR%(An-2B~a$;p}s6-RC9!%eLh99#Wn_m3q-Z4c}}Q=F4? z(j~T&(-x-RtQJ9uG0UyAum9-$epI7nKZGG|8oS>@(Xk`o>0%bsW2@cjN)T zbH6+`&OEbr^UK7DwkJ*AwCOp$`R9BMr7zQ+%T!04Hf$81^z_?=EvaAcR}XqpCY}G( zYu(&$Q8+3iejhGh_n=u=s#;1H(a4gz5;kdzQ>q%LyW=)*D<{Z|4->Aba zznEBd+kNtb>5JLn)``AEr$$E z4Bz^^{7;h=9|FIoj`%r$Uauud0lK;loi%1ePFUJQ?X%03=q6KB%uZSk?w5Ud{AsUC zc}m+uqW28k`EK&`Pg^sqYBc6_$Xxv^K40mLWUbGt?jE0V9@_66=P|BuonqfpZI5&| zxopvDOpo`fary^eKZqUn)lTbKszIpVQ#X;$+2#e;Z-*|mmDEVTMFq7OFDwuLGv2Mtq$BExAc;+l@yz7JB!2#tCQ|&kPeptQ#x?B5G ziGOd$4J*GpW2}ek_?(oWl}DXA%`e_z-4d$5g5a3Cso$_O-5Pb-7qIl!@NJAv!HI(r zt74v6w0d~%Ma)Z6@5$0ppT1Tnybo=k;oqZ~?b8QCx{Y7b-DQK)WSx%D!j0F*c>n72 zZr+AmhudY=zs}Bos~6Q_b%JF2)ts-rjF-N?8nW|ga(mO%5v^@Hi#M0{&F-eAdi?h3 zR&SQ4d2IhOcdh2=b>mhR>f2XU-}$x4Wj53L-uf5LlMEkq*=u!ml5)xM%ri~5#`ixT zC>osSHt>*-&jt0ZqWmo;llI%sF#4ESWA5dyD^Mwm)AQ44lp@%6G;gQ*s5iw&ip!2J z*chJkt@rM+jv42MB`-`!OmE?E-S*{%qMzl{&|H=9qsv>jY`Vq3b$fr4PBUhX zotpaF;nAXYi(-G=@VBf<+}&@UOZb^bAqg+0bvw8Fz}UPmjhGbQ^MW#kf#=?=e$d=p zW6Bkyt$*zF-p&0fh(5d5C(m@S+xUHjlLo7-7Ns;(J$_~9iK{(^3j=2yf4xiy?a{&mt^*I6xBhu4d%kO#ck1woW;f4j?N9d@?tAU;+Q+ZZ=}GiPUxx%xf)_1*qQ)nX65J9l9H`z=MH@p3{UCuUoyF9((;%mmWWxPW_nw-pFtFD3RX$K_fO9ZM7cX z$gkgvF)s@O=BAx!Vd#?kxJl?~;W*NINmakgLRnG_9iNN=BKDU!*5(ykjXS>Iyjg_D)~!=y8;9NKgrlxe@wLSwnx zkllms?7XvcGcz%-$KEYfiSLwS=Wd)QZvO3udQ9MeZZm66xcz#ts#Di1QspP%BBhHot#_**om}eA4*!T50H(+i5PP#_Q8EnuPqi9+fgP#r|VV+`Ti+ zbIwnndv0jk#KPaEJ)#%;Y;J0rduQ4I!`{1q$90tFV=ml zj(+pg*G~NTi{J9Gsy)v+`QN>F{FY08oV)nMvGbq%>c8Ie;f~jCz5DKe|L&8Q|L|9z zyYQiw{?Cp+^pX7^S@kcIU)q1^J)iv2E0_N5{OngAf9tC5(ytGcwcYZKd(V6KAG!{n z{h5=q5AJ&6_J2G3g0nX){mpG3YP#VazuU6onbe%0|HUH}bAG-_fkw-KKyhf_J;9m zx=SB?`z2#<%D24i@4g$Yy!L%PPuwwo{_QXS=Oe$2)qUsjkIwzj<&zJN{p=sFf3)Yl zzx;YE^Nx?+Rr%5#J^j>)N67bWOBa^R_-Z7sXu{Xd?2+rvLR z`t(ox7F_m~w;cZH8`i)0J4b7puG{ppbMHNGQP+9Y3kKg^|)-}hkn)hb5{}Ugq{o$RLwSRWQ>&u#dv#RV>*T1v<(cI$N zr~dXtT~`0VZL_LYet+w~yyT;;KY#5- zOV>Q{mN_@ft={&=zw6)jmP1$0*}eOrr4_$h&^r13Z#tK@^rfD>=~vec{p9A^uP%Rj zcI&|Q>puB`k<|Ckxz#!2jZ2pQ{p!y&MWgGtq(AoV`G3{7eEwr2Z`yL(zn#%^?&imq z|6SMN7J zUGtM$KKZuy_xE4=+MiVa)yPYKedfsJFMI!M|2<#%{ghAB}H#bMGV19Dm{7*Trsl^5$#qf8FEvT=Dsizxl|I7tWje@OQud#KT|5 zI&tx?_kKS6uWMiT;m+&tzWv)j{^EoGoPOr>`=5O9#qT}(;QT8_pZSLuzv7E09{tVT zsW+5==?ztP-F4%_g+psU{@_n1j$H85Uw!W5Lo25?-nA<+@TEV0`R|{7>(A@oS2y~- z{wve@FZ}L(U-`l>FHH8YzHH)sFMsEjXYc#O+aGE%AG#!a>z#L;9C_+}&s@~M^T0>HFp#Q#_SZjr%loc=(UtF8 z_m}<8{?pqQeBt$#5B2YR{D-f7?V`gY4Qv1NCmZkI_x@+Ed+z=J`G;*kx$KKyAKCnx z)N9|h=QE$n|6<8KANkh1AN}gV^-rJk;G3Qcd&OTRxBd9iW$(P|{mbt9^D~o;AH1jL zC5tQ17{B(nTh4x6uJ+BZ*!Z=%_e}QA zeRtiDHYaYop{4B0FI@hIy?0$!`A_9-zxn2aTi<-^!dW|pK0a%I=>=PlEgfk4#oISt zw*Iev+&*^Z^=0$cJQ-=fFJ1eoZKJgh{pZohYrgcGvWxF{Mf>NvS6}y~@4kKZh5r(B z`fmJG>XCQPPCc>wxRbni>FhZVzwx?%JXSwvRs8qco?DP_{j-mLZ|UAwC6~VJ^IvKG zi{EeA_S-EJb9l5l(z*CQzIFeR55K^_zkSu#eLP3;w)39(B5iw~pkzhVoNI6n$vKJG z8|55Azq-c{i~GPGVn?nN{;;}R{&aTs4TW;2a}BXH z8gu1q&X&%D&!R2!>Sme3MY;;pUw(O8F4MJwSy0}S?#QojGa=uT>*#KGdNLWOGt=Gf zW(_|RPE&^CzHGxM_CzE224!Rnb_wkG-l!>a{25_8Cy%E@hv9Aw`6q#Go$&LP?DKd$ zm>LHT+0xEIb9w3JhQT`BZcbhv}JNmXGag*Q~7+dJ+;CFjZ{{edfcALw0EWsm>T5WE+$VP~4Ii zed<}!TQZ$iP3Lej?{sBaJCKZ4rzO+f(wobnC3YThT6;}ZDTuLBqK%2-HzJv> zy)EbqnvVpu2`C(zr~-|*K%m16a9Wa`Exny4-A=N*)hW=+Ih@L+oQ`fJAm4#rrMsun zarU9+J6*{maBuBsNkUN4Y3^+YbWA}o8&DW+XmbuqucOD1n;8|_YOB+H#FrtONf3jK zcQS2GPueYOYCc9+RWBE(Z}EImnmlXYwqY%;i&BG==4|v?bGu;>h&&RMsV1 zYje3wu3Y+rj_yOKPRLE^7qXdr2NP)8H`~?R8@%>|)6bCvu%mIXU9cZuJA2;8V>>Ik zF&e23;U(a14SDszjyhO*wD0rr*d7O`;f)1&<1^&N8j9m(IudYa{PnP@UtfUNf0fKr zM&2RgWBgIE_je!cM)&Qc`dU)xzLA5G$nw@mWJ>w{%6F7MO}~)u>21#IsAu{GQ?F24 z+jGe-M+-gg=s4t{-e^s9+w~Sxp`BcBcTY!G3SCljE}1*B5*5A2RKkw#d=DxlYK|3x zS_Ng*pxM-Srjq%T)0@R$m2!?`dfBlVDe&ChMi;b;t}KUIBhsozYChH3wi4~=AX;rN zYI;vP*&{O2sbni#8tXqtCutH%=x7x|QUb{UJ8w1UK3L&T5p*fPL55=rK>wvpQ|16{ z5i5(TPQ~f3P(rLj9JLxj-K>18PD-= z1=3NI>F!CkNb%UbO!oGq(I;_KNp@>l{2$DIw1GP6zU#V3 z?Vdfm_rP)6=6#!Yz`hw(4SCR$LC5SY&*R_5<*m2C(r)8Ws--8ByJp|D#ZwrBp1h+q z(~De>MA|wt$sV|LboZ=V1G`uMfVH{`xUHiv)e0YD!=*Ws>4bAc`oTz~J(ua_3wYWs zN6f$mOgR*g>hA3_d@FzeCT|7vZ{^Z9O292+I)|i*i+tOU^KY75Dw{&HL(kzE&d2{e?^=9B$IUIQmV{QBy8NH*VpV;XayIk$K+SO_&)UH#z zUhM|8o77ILomIO}?S8e7sXd_fklK%_{kYoHjmGL{>ez$n?&VqkGaBx1)c$d7= zDcPd04^C8~o>Bo2zz)i4eY`o;% z6W|R3J0!taURb>2Aw0%Y+T_K{H&_zD4s04Lk9rULc&rB}LwMA0Nz#+YaOJ=bY#PSL zdPTYQ0bYZTXX9l&_xX72J4UDBl{b6wlGg<6z^1YCsNWMl9`zXoPQa$IJnCKA;>n{P zabUjuOk;Vp@A2^%ZU8tq-wflOoQC&8Kwe2}aXKh30e5Q{Zyj(jUZ&U1BeU>ldIv+~ z`FZ2YD@ldNdkpT@nDow&7ish4*?QoQHx7TgH~4t|d=A!^p%5PBO~Kt7$}4I2;75!Var1<8Zfz;U<9{b+GdM@hcq=g;RQIpHN>pNco2yb~cj#8_C<(~ z!=JoS*v=_!9Er5nDT~C!<$l`bF^3<_3DAUHSCA_LwMAC*vDgi9t+_ugM0O> zJb9e&Hr;;ee0dK3lwbPl@b>mF+^r$+1aNR%U^-s#@tBU1*A&YO<5h?7*xz@;-5SO_ z033{$^U*OMk2rouF^~E17~HMFbr4ubhU@3t>G7D3a^PURtXGph9`%jfRb0N*dn??n zG3yrKV0+^ldECe2{$=d$aQ%YwoB{A0jez;f`7^_h!rhvS@JHgF;&d?HHLvw}G2kq4 zy#}=MnBLgyJRZ~K00;Z$u<~sR;qfKy2Ym9FFNu4jk>jvwY`i7-`!Tp%vlxF&0%z61 z^2n%vy~jHjcnCOHZk%_;-sthp2hIXF!KShDxSnji&*Sm0ao{G{G?sS`{@!=L$GZ%8 z9JmQKjpea^l)lO1ne+k&^N;yFa0UWFcOvgPw9@8-loQ6$f<6VKjows`OZUD}{tvJ2Rzq+@3Jm%jha8MrQ zzVHr@HwU=noyGYQ#;cwoFFixvU49S(MX*-*nDCCGzfQVn2t%{W9nde z?62bQ_IRc~0|)Cp+i%l*JRbEJ01m5HrSJ84EZ=hAFkWYX*AMJ~Ph<6?J>ugr9VbJ0 z{_%Gb{*1SDs92t#*93p^j)m|TZ*YA%HA7y*gI>Ip&wkP$@4Mh{(g8axU+g@rXg_zW>zn zn&5BhGwf5zD?Ki}1neNsU#|w?&w4cpyBs#nEd1=gS#UqG=>x^`$RB{aHLNd#)9`}w zPR@`wHA7zc2gCIX#@i6W^S6%?_%j_7u!Hr~pMNVqB>C45+tCcL`RC_NDX;#qQ}a&3 zpXK3vxR~eH?*aHzzY*A{(y!zrBCiSdsq`CDUi>eMdH#3@;m`UvavEOAu<+urgYi=D z+u_c9dH^=ZoskfpKi(xD)%pxOD9_J3ro7?P@TQdKeC*WnvhZhm2T#MBP+sig#qyZm z18`@0dtfuYLm@nWeR&@KtOxav7t8bWM&M6g?5|GE>xVyiqai$h{%!qhNpBXm13nG) z4vue6C~x94y!a{BCi^@W2A|^wq&O{1JaZ0P0`sNrkPwR z=N2N1<;a*l@7SmABj*&l+xxNP;F6r=!z0ndlIq75`thQut zXHO%}v-GC)bW0?%D}y6j#=|il)T0c)opMSG=K#zBoHR}&783JIjmmO9r#;oG-D=hIN#JwB6|PbG6LX>*P% z2RS&k(#<0=xl}&W*~@c8l{_Aj@4(R+B%0?9lMa&G%D=9tyrR6LGF7?KDYMxl`DQ{N z;^~|W6X!s$%4}z{C6&%}LXiJlZvBqUHMMoScWkZQ(|E(?9s6s+rKz08qs*Ld$>vgr zIx@X^o)VPuq2~D`UCo)!JWu^G5sh-_h=*;$NjR^@GryZ~Jcc>pKRkzXXn7u=DNI+g zGl!(Rahm*AhN&+Be_!!QzJ&N|)ssZy|4=#QY}uKv6!b*4XK?Z_$AeAXD2r^e8DaFa^*PCY2nX&^qBx<2(|b9Sg38w3t}b+}+jw$0m%=H`e8-^_@>eQq z9<`lEt4w$9R9x#=h0DwV&Q6|rL~$SPXwfX&ZmPbi+J;)@ppP_V*PKdqENI!2XZKi)Agp}fyg3m@66!JOc`Ts zx>uSUzLm9}eGP(hR>%I#*3I7Tj@!@{)YpdFmBE=-b12o!TTC>0Go7fp>M9cjyZBsh zXDW|ltY~3`MSRvoj!*DJ-kP)E9jK1TQ_-s>jaOVSxY4gej-q3xf_#U+=(*cWqKvMl zgD6P6ufnE7kE?X8ab6PX#-`Ll*rdm3w8ygF{TpmZZ-J+NECM!(+GrF6~ zqD6t+?!qv02;z)Zoyq1@r?X@8mf9VSyX*ID-@R+|4vE^QSD`-cIETm)r^yrq+3KH! zoAyQRNHB?YOAW3CBcmO+q(Yd{1f96lA0u1y)1*iG>TIr~3y0XzD^W8u?(q*ZCvo%5 z$9GTOqs?25-E;QAkY2r)4CO$>k<|`wW^^@g53ow2eQ|>6l>&z!ql3i%Uyvc$5>ZS!ljwgLm_#+sCgMcO4!8OiaD`MH|-D6xIH{ZXLi4c%zGgLO9@OI zbdK1WIqa?Vs4&)hc;&!U5!4G#Gcd}wVjlnl>lM0$#_J53!;P3#qa8}QY`TIIGmagm zMVkt4-fM9ya~Z21D>4e6GgQNq*$$*gAIQ}TtTGhJKXjCeP{%>2-_ck~td){&oq@cbP}T+XSw>;lF?sOE!-C}ubSeOIJ*mm^ZOXkG5^E@ zmb*?;fta6#;lfz?MiWiowNmUaiL<6HETrTOYT9md_&+aipM~k0$#t}MbSFC-!^DIt zP^h=0Ctq=GJzoXehPQ0?n)kZOF*%m^z08u$|NftSjgI}lSz@vv?OS1ONxY4UJ%~s| zRF~qC35zK)w|@BjS)A|1}-Hoj;Z!pUbTHAKGBy{vC~(_Y~}} z$kQTCzuR%3e~~xB{Nb1}Nv$shD-28%?P#MCRG!o=xS4n{S|xijU05ee7b@~Jq(me< zuNhfS$6avRh%}GgnO8?QdPu%nikhH1O^B`?v-ozt2c{G9!uqzf=#9et-Kjndq}+|* zRw-Wr!(flm+}1O*gJRl&e~k6k_jsvM`Vo%8HTCuTUQu7$xU+We-p$w5q7oFwU)&;P zKf}((FiL3t-@skr;$;vzgVj~qC7Yg0cy<5_aF)v(sicQOt7qmR0No^!j$oG~2MmAs0;%0|b z*^qK7<8-c!BSM)OCd;M^cItRI38*;4nu3imsiU?*V;*8=rg%#qJGOS8*lgyZUYYk9 zF)+!Juy9;tJ@$kZrt`L5EJxj!Z_T_@-oteRq$}jPO}{>$X?k3q(@dy)MBVGp)#o?* zU6W0YWNc+yCWA?lNfbL<{QWBD8rg;K!HkU=)s^hI)_FBkh#hWjSjZdgx^nL5S!sIn z{1GhE`!IvUtDV@ZH+y=v*K&i(l&go0So@iXBpWmu4S)UzCzxr z-^NVvHdZ!nG#$}(dv@=y=Sb@AM~3!S+js3-UBw~m^t^RzX29F;3OseZTm=A?RO=rsMN23QvDi_x+@hc=pOv*kuLd*@;c~ zj8BoEKju5QQp61&xiOjJ7S2Xze>bKinB$lQKUqFLFe>#7x%UVS58!#NHFNOC5OCOelOS(=8eZ&^h4M;)9gScXZ2P>r z&d1|({088<0FV6OIo(0s6Kp>(T`B$k z=wZ1p$Ud*1sXb}$HPZ1QarD0@XQuJ}|2(VIoKjB9-w3e=}*&T-gfLraU+@xZvr z2~Xv9sUB~DwBu&0`*hGOI5#@`a=cjv8yH=w93IT+RLQPF%+5;E!TmG1h6PV+WbWjE zZ-zyjmtcU6ILG43!K3ygGZbT`c+cmsKaLF* zSPfx9(v2w`FQO5M{jZ&T?%+OQ!Ul|a=Elj7c{q%DR>RfOeiNGC_1gY8&YG!{KFY@G ziqCFwlZ&KxAGc7jr(;(zL4Omza1x63x_gesJXbY$ec-V>ZDV8iupHANY6-KN-R!Klol^^=FIafmUD` zE)AX?*Q|aVPac4~HFO^a4vsGjA3QhjjCk^FIw)@++^wO!EO1aB^WmhA$MIz%glFYg zoAD$*=cSkOr)kd}8C)vED}bQn$*Y-*;OP!}6Z7=8kr!ybI61u-l5+dx5x!M8;cCu=v2UdcW<9S1=*6;-2zX?J$lxrm8S~uB$`KFu=$9N%n0%Aq#+4rr`lcl zI6b{N?DO)`D^h?b3?`gD`nEAh`f-Ly*DQxSa9I?%>13zbLqYQMJPp#(bA%<5$IkKp zs=Nw}3-S=&+*r24xfYj`#bw*kCO5*mZu<`F$a>4OptIGF^_m>EAGQUa*JLZ=kAKs> z1V8c^#@hHZf-eI9ftWJ=#_z^3ltG(6YZ!(+zhQqwxAG^wcFeGGVB3Gte>z^%40!`H zdE0V}eZH`KOMxxVU%o+JB80~}HR6-Ux;+XU ztS_wN2cGicr9S<@K_2V+SA9H&h<%~>eK^MZ6x^+0JskrM$|G;(7Ylg_;2@9sJrLlX z2;niF7koUXqx4I~;~e8X0C#KnR~9%JFT+3MxRB0>#4+Kq1}JpoPNd^|CP9BzbE#{x5RdSt@fDM!#@#w^!H+q|4!`41tKSV znb^Y@i`}H*6XVMJvDhQO6ubXl#LoUm?C~Fn9kcd73m*QV*drP~qTypD63?XCBj*Yp zS|WCQzS#Bi#LmtYd;A>rKSS);^CCYnTkyz~;P|s*M<&G1{*&^a6T9hWVvjy8c0}!= zp9>y(M*TJX&@TjM&y;xT&l1~-i5*eB1{Mh(j*30HK%Xt=YCFFbJWc=YPUstTmW4}l+d47D;?p>H zQHFZvKF`~t_x`ywY}(>rs+{E97{!{!?3_8qY}A?1#*KC=v~lAeH{?c~!!`lTMW$v& z=8gw&H#?&u$ML&E6-?2(Gy>>G1Ad{qgvJVo53jgl!XwYLEc?tJt$Eb1iKg0)Q)?e6 zF*f5OGPqmo#xJpj#K(ZMNSm=9!_R48kb`tPVv6AD$|H_ z=$d!McMQVAt0hjRnNxD7+@9l++zm=Bz#x%IVA@ec&eRC0d7~LSWNa|S&wH#-R-!>7AJK1fWcjFnDE?RP=T&I%b!kO z@W6zIuQ9K+@EsMtBT*Tt!2`6M5h{c|sVx3oyd-s5;Bl*gkpI-PRL>5#I9T=!#ZEgcFR;lpBRD+E5@j$g}cJ?OrS= zG#vB^%HfC-=;v@Cgop5bH_n@9T}~uoduyz;F#7NbuW9%25o1mdvr|@#^ceZRd@|UV z-v&c3%iAfB_Cx@9n{gZtcj2a5{T_Q#rhU6kKKZU2CG70Qdw88Gn-{Jh;&cBdugnsY zhb`CiE@kwDnZ`SiZ{;R4Dz44QW6AOrl`ZUJ?J#M8jFUKzX+}fbe{K3?iKS?~QF&dG zC5?Vz9HzX@h{HMDe(yhlLMnuE%|pX=A=e?!SG@H~47eWHc8>ma;d4G7*F#gl4s04f zZ_QUddE_O49g<-Dyr8`P5FT|s;giR`k#XQY3WKroxb8}P&5M`e>Vd=7Nx^%pjsUwjm?r2l-+R_aX-Z`DFKxg8PFLA-pho&bJEl-O3B@YxITiSbrXayEUx0BLQAR zT%SYr==xT_!!zA;%2DO_pN2o2mgk-JIdk1AJ*SkHcp^u{9#J{{M+J}fiG5P}BLRN= zP$91 zeLhS<&1}Rzw{M$!3tkV{&-I)C)dHMX=3V*b^BfK;bZ-maP;Tq(bavqg7Dm0Iajb=H z$85=#hehcwM}z&RhVypbu@2ypm#4!yC(!R*6g-M>H+{|YL@Sd_dUl)UjKBHJ$oK^E z!>1=+jc!l%;Qf8sPS*C#K9nUG-WqXKxySV>kJB!2J8rJKyk4H>-rv3+bBftp_ zX!|?fZx;KGCy(bmhJfn=Jj#uK*W>YCsV3lHzfHZL^YN%}$=`>!;{$NFhT+n{L3z}3 zD8M@&B9G~{_vDPipZZS0c3{)k^!j;;G2x|QJBAg`8&=-fX?V`}L|z^2FnNP;w}xeZ zJcLI*gZC;;fEO%}FkaI?6!ZM)9f3ddWde3^-1GAi-!$?}NKFtOtW3Jb%0=Ro-L>FHBzIhlTN;)P8c{&C)MU*WcUz zJF!~&)e+?n4@tP82gR;ed+5D_r|D0;@aBPA^?s0z8?h2GJ*MQQoQKfE6sbO(rQlmaMjWpbaXU&IuiQ~!-d!+$d(E8% z^7cs?M3(Vor8c~Z4msv*itLC%E>DzdXcE=9?^6ZCnYW?L>%;aaM}b<#yVb${9{Ays z5VjRNAGNZr&GH`dl`rcz>)%zdpMbkHd|>AMsIVT8_aeAI{9})IHE`2U!k-^4ddA~X z9|zchO+!5>kM;o{&-81+!FEJma9%V7Uf8d#@T@1#<}-Og{rY`8zkb1dIRV~G@?{dduzU%o_t?)p{rvF;dBfB2 zg7?&oh49!9&HaU!f6RwcUmlRSiUDhJO}a6*z}g*?{T;rEm^?nFE2jOWb$M*NZd^s7yGvy0+YfSn6x>z3TM=RW|;XcK&5MEe%$G{7#2aA5= z$z!|@a9BNf!N;S%CC?Y@$9RM3otz=B^tZ+G!s8`W|A)@ z{~Dez18}#7dJF

cIG>s|O=9I0JeKbO+^u1MFdV{TJ}h~`<8j@c0Cr&0oGM=i!3*XK`N4j26ug=AlMVkF9&a#T z`a^iE2gl)V4by)jgvWZY=no!`=`RO%VAGr`y;<;PlHTLs%_O}gvlbS`OTFW8w}$0b zAHt*FkNbEmxA71j(-W-E)w37QC>>ewW|EH4ImPK>QTmX2ZYW|EEx@Me;Z*rIU#s^M-8+kJfq zFHFBd@MfalD0nl`Z)%!&gYDcovp5~>*E->D4g0l$5MEe1#=)COI!e!)SvtngF4m9n z2GdazE9RO08Sd7Y{yBulavJdQ*gu~L;f19)cFxSwTL<1u%I(DB;&g1Sp6vPc^{ARN-r#yN8UcTTf=(Q2kfYWl}Gn) z`*_^Hi(ND`d0FsgB5yQA9@Dq-VoyJoPaSYj9^D6hyb|D1;9&l-UM;)ClgE6i26kZ6 z*!0r<9v_eC9|jJ}qkb>=c+{ix#l`aIo`$c{h4VTvhcWWqb060wE zGd>>WMVxSX^>DX_^7?^;@>pNK?c*_Drb6V=ecw_~9_z~ha8Mre?>Qfj`jwQ0>(>Bx zYfO59gYxM9ypPBBo4Blyck&u}j#B>%c}_B*?_m$$KewOdKO7S~wp{G~*T^~Wc%Rt) zUE)6Sf`p%Zm*B~di#>EizBk{b_RuDAA2=f6NA6KMcM8urD)#8b!s}Zv`o#kJWmUh? zvxL{bOzoh4X>pJLo9Ng74#7>sVh8n`+#v3!)309jtAB~;=S&pl-{>1e&S+HZeoa>} z|3+^R|Jbi2eEb2y@eha{)Gv0WxSvkH(Nf`!=yS61XAAWkQ2m?*!W%6UJE)(tSKNpH zS;8mYA~^A=*g^dg<>G!i{pwY}x;2u2{XZ|%Z}>iu@u(A+3Ky)6~DjO5vYYzYBynuKG;|^qW-u z;){egI*op#2h{&JlK2;ESlY#P$42b`*mhaFs{a^Og z!kg6ct=IB(J|*r!{rc;~{dD?`YWYs8ezAallYgfAEf%|J8vXhYi+?sEcK?vr&Iz%D z`VDUp_tWWD|6<|AH%a~t1p4Qg>gSxJylM2C>=yt2|IqgJZo#9Ei=EJZqREaU*NS^k zzoE~HyB$C3FA*H67X3y8`t_@Ram~M>Y3ko_kI2dXLF?ap1yBC9*hTs!#Qk*ojjDdf ztbT$1FQVg{bC$@fpQisCZ598~--&+C+ZBIA?4W*$_2Pb7{j~p!ZIJvM4z%BXZNI|{ zMc#DzSAUcEkN;Zq>wl}_4~iYsFJ39`r`1pUmqFDp5y-!UjvqtXzf7m!@(sG6aE+P^p(CI8~jiF`Z1YSRAYbo%w*A@L2(5>em$LUlKaLold{RQIRuK{RXzqOutd>U&eHP)ui(en}3sU7CDpWsXbl)a!mCr z5qtCzvE$lb1pB}E9`O&>zy84dw7yJuC$#@_0{RW8e&b7oH{JYs^0neWbcWdd4~sqe zH|lQtJ!{vC`|0!>T`Ih$Yqk9b>R(*-%c_3U&0mJ@7CGZ{#g0EDcH#-KgZUTRCGMxw zuU_>_==viY&~Ma^zcGD_x$ISE_)%H;u5kuR-uN=Pwe)ae@ z;n#=X0Di~u8^P}+el(U}jlaoFe@AUt29s}j!5dM$BYFO>1WkLd zjGx}jlYY^nJ68M@eyd~g*?~Lz%C3u^!()8jVL!aYw74odmuCb^XE}4q7gjB+38ix)-b@(NT(J0p=s8*Q zNgCWiY(Gg;8im)q#V?AU&9Bh-Jr){|bGV``l z={ystIK6z^D;TgkI$y62FFnHqyP_yAy-%??zh~hfqBs-p*5|rtj~&`ffj(T521n1LMz-D zooBvIf>t)G{H&_0igF}OX5|ik&}4CSbS_`_LuNAQl`{*v4^W_^A=Znxhu`-l5lPGM$@vto*kWQ zG&wuE(A-G7)m)?#o3;3?Xw*2En{;BcU2Lv|jm<%~CjsOpp4ePJVRcn(9ul%h1Z;1p z-MVf~?2JMeaON*QGrGWVcs)<7#FZ(x@x&ImGR-}?v8XFSujh#^bQxP-v9ES-Y>_KM zE)0sD=|)kD8-HSFA;-@&G49<)wV=e=0Vil0bEWJx_Y%d#hq}sD$&(^-J1$ zttcvYiZHJc2V11C3uapg>w+29R+-Ld>9nE>Rr1;x2gZ3AgWbMfB3e4Vk~X%1S<&;S z8FUIGTNgb;Zb#4zxV%WV+*lG!y{|tKr9uXhf=h(U?uecjE~-!=OanT2iJWxqGBseE zHSa*#9-j^QYA;*Z`7Eq@@ieO2Jo(Vv=t9m*6fa&9U1YxUVW%N7FS$6n#JD0te6qq^ zy=za+E{mRPe7o?Xc?UjihC8eAZ4pdKW|fz0oM&!5U%WDUiTCvoyzSM9YbWqM z*hYL-q!Aw}N|!G2vzJHDH|%^*4(~QJ;=aq4gN?mCZPle0`Dxpti!yjU+kW21^jl|D z6<1eZ0xOwN2H1(QeB->m^|iHI(Vn91nMRxBg*H(kpFt^&`Qu*}J}>5KecHPIzupQk8&R^~>=9{ia&KxOpO?hM{zM1d!B_^7V?8g*mRymFYynIX#M7v>0?lk4@T$Ps_4 zJ~KPI$PCGnS$PiN=KX$?g0reFD{4c2c4Z9*y^UwcK!ZW#3|1tRBAaOmhSs_Ku9F$i z-4vW6acF9MTNoc^;s*jd8*#fgzeZ!~HV5jtoZuI>tv^M6lwBR2XA*+8ph<~E7MDcl z*6iN16}1G_LK4_mzrD5w6~&){_s@zh^mXf;PMB~0$cK+KBTkX#KScuk`n)CGjyh#_ivKFc+YEB_x zDtBR3j86siEG~`4yl-yEC$!Bxd%@xhql@iVKCyb!&ug1W_gwnfuZ{TpIIEt+F|O5I zEThsmS)N5#9d2aq!doO0BS@|Xea38ziICQjZ*-SP zXalp$OUgcq{0s#Qu#2Iyal_NgEmS zw#+t7c5XhK>_*hs8Za)%N?f(V4>V)R+r{Xz1$VQ$e^gXe zuB%*iAfIbF5ZnRE=@+=V%=Zal{{2Y)||^AXmZ zfj>ro9d%$@$eRs&)83|wqHjU*`UcZmWb0CAjS(0EZkM^XG$9Shgx5C{T zBOlmN2P=>HY~NQNgg?_a65vhf{&sxUyncq8oG12l@B7M!TkI``-n+i(m&!i*WJJQ- z=M41=1t;{p%Rv8Z6Ho9t`uLsV9#P)V-Gbxy%XyX&)vMn6tDN9I`OqSX&pyW-)o_LN z8NG;UB3#>-o0|)Q^|-X$%U|YO9GLs4G&X-}2jAn*f)}hOEQcYVJjOK)?7*h6@)*za zKAx#hD;Ao)TR)Hd;Jq|i@Phg=-pAl>jVb>SdE`C*^{AzpdQy62@wvw{!DxcJH5cNK z(GVWfH*%H7<9V%d-~?u2>!sh>@-9g<)ykM=O!tzmsX5yGRqNgt2tjZ_rJ zOL@V5APb&DK8!!!AaB&iqkP-%#VS4h=w1$7O<^#8d96O4X}7?RVR<~dANTRt?~MQ_ z0zAr%UG2roaHYUO9`nV24=?qr2QRFi26=7x?-jr!tBUJ0 z8IP~=c;^Af))wo>_V5F^Tf_PoTUQ(})Aumktzpd`1rDb79Jp^?@A2qA3LH!a>vQ!6 zk5>ZR1nj`3@t1G#`#dLR$eRq|vD}=EUc5|K9N2+PW8)?7_5g1HIM^SsevJBfEVqde zd5mZ4CNJJaz**p+Jm$-!kH>Z%yQWw_I2Rb|o%ZnJbA17D?hI8Ly9NW9#0ByT*LRPJuu3Y7eU|-&?a^Euh#6xo#eT`7BhwyXAh@ppX%XTni43`HmcKD3VX-;=6k}du1ZN z72!_pc}-#&`L*`BhTeknu|sx z0Y(VoH=7>_!e_}e%s<}Ggv$@@=alovGknL^>}I(t?8Ao;4Ilq)!`>f38-Dn@pV>>c zUp}+ps%J%T@tv3j@hQdIqB z2`j9pr%ySAaNT9u$w%$RxbB)R>#^M?6JPCs#^#|L{e}T13?%U$^pB&HnffGt%|GB(!6|2!H zzAu9e?#Z;;6+mHoEAL5lWp9q(B6k5^vFZxF9jxfyGsEKrVil__d95J_0Vmn@!0R%`CM?EO!#0xvkOg~_YiS}c$AppsfIUe1FOzz%F0s~_{>q>smOax#P$HZN${RxFQl zgY%o?Gvtj0c)srjjqWsOx^8@iOX0?i*cr~_D2^HTF+SPb**Fuym%KO+>E)CQ&CnEBGb@3Wh7lgO z-Sb<$Cb*eXGGB`1o7>3$d(s^<2@uf-_AifDW3(%hFCE8be73n8_s0Eq5}^%I;)%!O ztKwDh)$uj)wefZF_3`TXhE?%Zt5#L5TD@w`sx~*RQQ!yJ1~?-Kup}>sGH@vu^FWb?erzt6sNZeSH0@^;PRv zuV1r%?fP}=*RQW$zo9x_y{fvZdUf@h>b2GDs@GRnS8vz=6*nOI4G_Hn!8X8&;}HAr z^6R{DgZ+LSIBXnh3h=VP!F4g^J?!I|@ejBj?lkm2(6>BZg>pKuJia;u9A8zndd=E( z>#H{;n_I93Aa8l)mF=|cxQS8f4_4p)I!|AYkH>)1B*RcXd0fXn;p1^UjBGDV*EH=R z-_zTiKY+`|ao=ALp2OSeOhh{4JU%Vw`ms~zbX@!Cj&97QJMbCDWF8MDO^;u;EQ0x8 zGpCZ>xS*J7@Cz5XSrCoiX~##}yU{Ie>%}ME3T5HaVx6?vek3G*)aHUvCd7oU+eY3Y z`=s$l#pc*g!~EfVVcE;Pd}O&d00+yH?)Uk4%-7?;drn^=*8!p6~ymtZVJPl?_|OeMsH2=bh0{d1>Wm)qVUi*(c6^MC_P;|2AGD;m4IX z+9mG~M6zN#w~5`LyvZL({FCEiPg7se7p5@SWV##qTt1yj9y$`Xu68$<{htVc_QCnD zoHePq);{c?KAZ`R|7xuQP8)`oOzy}Pc?Wm<*Ykmo>}KQRBXV7_!;h+)dg*HIcFSfx zo5l0+jvmxXvuZX2BnD%QkMgYDj5+>#WOcAM%VPxP>8OL9KeN7-@AB%0sc*pka<}y| z$Qzg;@8k@5k=-+kw|a)W>c_TCAP0f%OfBDSPk)9!M zXokG88S-L#W~N`=40-(_JnpAH1$S#qd)ZqYFWXZV?$)p!4TkXOzUTsvM|q##+waL^|K5K?v3`vA8Ms@+cq2C!^Vm<+f680`mH;<_S4Tb!{n;OId|#6E zcIrhOvWLOK!y7y9atoA=y5y#d}F1V54!^Z_nP|nty->r%u+h<$k$o89gE$Yo+D-- z$|(Fl_}}CoZDyU)%%0;j^XJT&J8#~+Gydo}|8xTW*sTB4Y4X2Q(kTlUp8q?wp1D@1 zOW*1IXCBl44W_TP&gjqo8>yOJ%NZr|6r|}T|KIQlChh-*)_*!JPuIRnPGkObn*7g5 z`t=`a{#dR5*zxyI9sYFn;s3S&pE^DN*W@{>FxM-b#|OWkH-`CpaG!%b|2a|4^P6re zX_f%=B z6)zPSsaJfK;HFBg3mD=t;s zr8urQrnp}53dL!~T-($1E9MzHnnA@E35*<9e7WKiif!8&Rg5ZO%!Fb-LojBK=xfWR zRPhDs9an7kFB=q}ul{MpmniO6%sN3cpqOV7X@(T%1xAJy_b47w+^cw0@gc?IiVrKE zQfzlSO7=>6?7I_;$sEip`!4+=dmOtNx>k zxko`Wu9$t7G5bW{B?@DT`xQHiU#&Q<_%(_Xin$j?Q?K|=fswT04#jt>Q_==2;Ql_DgzRr~aji?^Rr`_{EA7ikB&FP;7gfKE-9~KdAT) z#lwnUulS_mH!2=e{07AnieIF7N^z;;(i=qoOBKfz=M*Ot-=nxm@iE0&#jO9#lTYBs zw#)KmonX6TTm2w@>;wKx?LDx`{|zbz!#=O}Z`CH3{_F9hoK|#bbbB*?>^l~s0NEy4 zuB@x|_%UAAJN{Vz>CSpWIcMWXIV^Yf6|BDu&w5Y$Mzxp1X4r45eYd**40=%x`zgv~ z`(~LjPWF9O_}z&g`yHkysro*Ra2>$xpBWC&=*Rj%-UtNpoyBs$4s)n71y&E>mc?)dzZChcpPpg4_2=;Zb z55wLFn|Zz+Hrw<%*!{3y0-J4c6YP6oZ-C7@wgWcn@@m-k!A`ce;v?EPqm%6Fz~qC6 z3Us29Vm7$`I55%6LyeYCV)77Ps^V9x$^yB|DH&W*#CsF?xf|p%Cw#TGw5l)(Ot>{DhP3Fkh37L{tyVWt?O) zrd?Jczq_i8q~UpAJF}r69KNlLBx^!^;Xq8WNQ{w#P_3y$9W5!Ihhklzfx0*vBC|A` zXZGx%_?r+ogadKr{uMm0&L4@icHm?wpC_84F#EqoUaBwEBA*Di51&)HTqYMWc_ZK7 zGdzP$HuJNfsJl2&!`JtGSueca?iRjg7cB8~2F28i_t$V-REyT|eTQOlsjkc+n=c*s z!fHE?Wj5o(!|v%Wgh1M}$W=Vr3*(x=VSPyV){{#K;|FYx`y)9|w^01fILJ4N%dHzO!!#DK@Y+qKI5LTW|wrT%9 zmf$>+E^R}xQH=tKwGEl7L!9c)^tPvw{w~yaSFgej$gM6sqSlha=X{0exfe9wi0952 zP}lHeopr0w-Rt5!_rvB?l{veHC{RuC=%y7fluCR?5{>|y?Cx?)~*iti5nVKVdWLjE!IcISFd%N9w4KHEP#xaf?lAUs# zpBT5Id3ZYx#dlx{e>7E-!(aHq^j`GWs1~)dBB1|nRMcA2U#Iw|iJ}JC-jk}u$)ldy zK1_}T?@i$bgmfmC;&jQ!bKMP>9>U+3WOkFRm(1?7ViN0EKGBhz`AkbBVO;(NYD;llL*P2&sJ*BdeT(hJA< z&?9>l&$GA&!l3$lT0(E*zPw)`lLMUen^R8yZ;kYY}fatitT#ZQS2D$ST`wNsyME= zOmVg1%M>RRFH>Bnc)8+w#aw&QG$_V$$(Sa^D-@>{U#U2&_$tMHidQP`S6rd^nBuDy z4=7%zcu?_r#Y2j#6(3i;LGiHSYZaeR{8GguiW7=YD&DMkRB?^sF~wUIk1O7$ctY`Y ziYFCsS3IToWr`z5r2MZ}T%vfF;+W#yic1x9KZ3?le1pJ9xnkSz#1-G9{?&?Q6h?bj zZ1;ca6wlHQpkDE8#Z8LmD9$RLtGHkBJjDZw&rm$1c)sFc#U+YI6faObs(7K|am9-i zPbxlBapb7v=UIwliqBT;D2^$PD?UeYLh)k7^@`6`+@yGk;;iEH6!$AWU-5wAQpH1x z&C6~mlVQads{e@MixiJ4zF6_N;!6}yDt@uz$g3p%mnx1ab`(2`mnx1cE>oOPe3{~U z#mf{oDPFEPtN3!o{fe(pJfL`m;vvOXDjrsRmEsY_D;19_u24Lo_-e&dimMct+%D-~ zqqtP@TE*px*D0=6yk2pg;%dbWiZ>`uE8eKMPw^(j#}r?ycu?_66(3ieP<%r1X2mBJ z*C-xSyjAg};#$R#S4(=gDUK<=PO+nSyW+UwmnlvtzFu*?;vI^c6z@`;RlHkqzv6nu z1B&-39#VXR;$g)%DjrdMlj2duDaGT84=SEi+^IP78cF}1ierjr=>)`4JXdjC@qEPz z#S0YID~>8|QoKlUR&h*mzv6Qh4=7%ucu4X2iiZ_nsCY#2C5p!suT(stc$4DD9g^N_ z6~`3UD0UPdR9vlimQJYZ6wg)Mpm@IGwBiMd`xHkNA5*+Y@u1=h6(3i;N%4r{gNjEL z&(aCnxZ=5rCl$}P6S#g!?*hd!#ZkqM;zf$%iZ4{0P`pWTz2aFq!D~`HS8-PHe8v5W z7bqT3992A|c#+~^#TP0bQM^g4dUg@dCw7ild6NiZ4{$uXvNO_>M)}C9~6%&{;1+{ z#Y2iG6~9Swwtd6UseAB z#h+C?r1+#_yUwxeq+#`cr~02%d{A*h*9mqVH?ICI>R+w-YuELY>aW!x5_zrUkA2P^ zQ~U`lU&GsdfO7S(RsRO{pKIe&f4i=!Q+%)bH!0uUCs2Q_hVH(A-8V?9|NAt2pW-(w zKBm~Nn+6qsT>XzL{*dB?t^@44?S%TjQT?;3-+aX<)!(ke`qaNf{m0b*A;lAlzovLf z@nechUMKneWyPh6-=er&@uw75EB=DwI>nDGZczMP#c9Q(iu)8_ulSha5ygXwzooce z)3-qJarOU(;uDI0sQ9GfzgIk__-_?YDE=$OQ;I*Qxa3~Rk8dk3Rs68xa>XB3T&?&= zit7~rx#9-J1M%SN{hT zS1W!*ah>9iC~i=^Q*m1HUn}lY{Dfk=&tUgej;a4K^|$*TcAsWY{p~)(pz6Cw`N!4Y z?t2VtdhI^Y3H9$${*;E-X;0*&`v0Z+k14kM9z)7MQ~f8@f4Aa3jj!CwSN~fT$JPH* z#U-zo@<}ST`;KQRE>(XWX5D?rv(>*`{oks%TJg&jpHO{citE&WkK!TKr$TXq`sWmn zsQ)U(Y4z_@T%!HuM#X*Vf0qrf@t>pknELNk9M|wKRXnKvuUC9hXzIZc_i{ zichG2yW$4*U#9q^`nM?_Q~YO&2b6!6;tBQdQaq*jZpDu3{}RO|Z;i;&yeTw%fKBo9D6pw0oovV0I z{qI*iq57^3||5n9=ia(?HxZ=+%KB0J6@kzxe6ptzXisA{yUs7D6@n5KTO8pNgw)6I< zE&o2r?a%aze91K;#(AtDu1=&W9olYvE7GGC>~V* zHz=Oc@YRZstAD@Zh?e&T#V6GNPQ|4f{$j-^)&G@>#}s!fc9egK;tBO{R6MT!YZXta z|Luya)!$KEa=+wvv*L2~f3f0H^>0!sIHCAeinGeULUDuocPLIP&M59v zJV)^{#XnIzsCYo}am5cRKB4$yicc#3pyDyb+Z0bI&MHpg^Z`w?IW>rLW#+4Nk;qZp zno<#|!8_M7vb31femrw1BWtTUb;z@aGLuS~(}To$Bd^Vze&m@%k)Kw6+MEvL*+}7a zm{Ws1qbPC@nvdslJCao$1ICBPWTRqe-b=T`D)JZvq_DaBZr8TEll~ zejHT(L6w&`rzfeO$nDYivnr=uqiCZz-9s%){_c+rSLj|roL1}YPFWwdb7`*t0jf?hV|$s<+J`&M7Bn*cX7(# zTE(nS6_CEi#ofUBUHPn66_IU`?ds3^MQr)3XBF_Z^K;g>3e;jdp0nQ3Uure$VUNLf z{AN9@h`h|blZg3K0d1{(*2{{>E?0gxa)j88o|)XFI8Yc6NTk_Cjp)m+gk}S$)`kD!{hu3$`PsZ>Pq` z_C$OW{@;PHJ#Ih4eDmrZ+gSxd*>sUtflxLbeI{Q#eAMK-huJ>;e6~~8Lz}N`udHXb z+}LiJ4y$*UN#{;Coq1Cay?Vj+P5o>>vYoSD*>=J9PHfv1+dZ+3pY5OJ63hqo2mbog zY|`!N#eTxCC;JOOX1`I0rTy4+u^;jKcbW3{YOk{Ss@O^~fL2=3_1TY8uI>TDLw*KGnJHOY&*6tGDFS zX15=ceDd0-C-HmwHk!HL`@A^wTJGFE<-m{*C$HN}M)=-IOpId(<9ZLh-l8p~;m zTdp?$Z2v3qz08#-{C#dc68>hlT!p{Grw`@d z>`OoMYroqr#D7a5e0{+GNS(bm7ye0Q4+iN6y) zsGrZe>c<(>K0m%K;LlOd@6S=okL|3*#&^V*UXEVUo45G-adDCVJK=97aD7q%?X7&7 zkK5H7=jW_99r$02^e4@bP=S%wlf!jh1!T!8%+AwW+QhJ-68IJ4$4c> zMgE21@%~5wKZW&|KfG7oBEQ`&Kf!6Y-U#lB^c95fcFRxv?JCsv7g=9^GCkQq`m%1l zmGE|TZo~Hm{15r$ah{v>5};U2S|EKRey}DEuxrzhz$Q=_m7UuU*PIwZko6Sx@-=DWC0DjLb{yE(h*4HS>78 zn?lU?nsn>0tn2LVhU~YnU$FTl^Hi_B3g-V}WF35~`|UJY54F4bCF_@iZu^jRf~UW% zn-9AAW#{#lA?uxkZa*&TM7z7fcU0LM*j*RCtIGA3*B)iPXLncV&vk^APRxFg|BI1z zir-(_o99p5<<>u0&+&gTvd*`=QL;bfuRk)+x4TyKXZ(IX<$L{stjj!oWZ%HTdkl+hi?`UeNZEI=yJmP_%hVscd&c=7#{*9vnTLDrN3fS3!Tev0 z>{Hm?H_BsqZIXLi zc75cz`^Q6>x8{-WVSI5fO&pKkda%~-Cllk-_D=^vX5hT zExCWm)O+6Lw&L(oEu?5BA8 z$b66eiS#fYmKtlZ4KFzD>La+z9lr$U-Tpyvk2{Z({Tna-;635(>5f|uc6N1VvbW`M zY4@SSeMe*iHL~=)bIv+*(ZYq%=mHwO4{N^PAc-@Vw|T|Vi!XT5`R6S;ck$wL&N(L* zi=7Q~mY6e*fxHR5cjl|N$-UH?jpiQHSpdQNWXcbC?+MPcWY|g6Q1*mf$ma^=25S&& zYzAe|8pQh54a{A@&d4hKUxi=1=)J6;(sP!hJd)p zQo0`P2SuE~A^j}1Py5{sNVfz3G=I1Ma{k}T`ak(ReVg>S5dWL)NB2umVn9#~ZJ|dO zyk7b}78fZ%{-@)E)>!naCsuO&NRJSDl*sN!_)qiyyW>l?E!wwdl}-P%Tzb8iD5Jmf^AH*y-1j|@bHA|sG7NC8ra zOhslOMaX<)6;gRCzD}eoG8CDD%tGcP8o+OEtan@`4x?T2tx96Eu?+w zujz5|fy8AKe0}N9HvgL7>l;jJ*d@Uda0Tk`4nR!a}03rvh0jU153(lC2-74L%zd zi=G>7$%Fx9^qDTrDeWhLbT~o=6Ozx!h|q+P_#nwNLzW()4Vi}_qdqwy{6%~Q8Rqx^Mkx&k` z;D6ev?eqQPM*VZU|I3#9we`t*{n|gW?cZ)Y|DK!V$BRJHiHEF%f>_CKlgN$>Svu*h zA~B5qJm}Bkko1(m!Ca)Ap9jzXxVWGB{;QRvulrxN<9{gskN11Lq<@Ux-uBq<3t4j= z9S$k}mj^`q`pv=4Ey#4vL{g7%9LdkY#fHWFst#Bjds|d!Izj%(c>i<36 zj$Ys67Q$Iv$&YpV#Rh~X{Wh~C2mKkd7+UjkJp9ASTbe_AHTZ409chCYQs~I) zD9=`Oa&jVF;&KkQd=EYMYFMy*={hcS{wa?=M(KZ^YF5viZ)pie&4B#=)u5t3fuq|+q-D>_Y-UN5o(OlI7fiJz6Y zA3n!B=kGM$)0t-St3QAAYWlPr)dm55B{KzPe;?7|=HunT8=5q%Bk_FjVqd(e9#x$>KpuC17?t9_{XR!C%STuEf+$5_b+h--O)gZBm8(@g)WH?QDf z%-1(F`!gSQ`6@^jP!ZL3<6(H`OTokXTbe4!J5AMVd^~INnCmxQkQdKhXPTkxaO%i> ztpRJfc`Iu><=tE|xYNh^H#X^Ij#i@!)q3?};+_Xr{ic*0Jv!}9XU7ipAw4e@c%C@d zVz6c%f0LnP83Q`6yx1#!?TN{U_qcR4KQ(rGsc(ru^+=nTTf8r}&Gy5?WemaMXZP_-LV{0qd$7@UxbvfAgQ$(>L`^h^}9(!p&A3u+%FvEG8+T}b& zqYPCO*f#6#!JdDQS*vfV+$%b2v{sblS2wuB25~bLd9nSPo)v5|xcJZ~c#Em^ zzLyJ{gN{vjJ!i*0PS%8`tGAEpZ5li7ts*Pg*rdvMW z)_Y2$w#5e4^B$*{ou6}Hu3y_ZwQ#>q>I3XK6#^_4N+pAKl$Nc+%1G=Y!v6>^yjqoWRM}9+Us6PMk7u;jKtj?`XxV z4mYNoG`cEx|Dru5tyy1O_Ye-4_D-Ai{L*sAumy5aP3&EhwUQFj*Rfb-r_S3Xq%7Ll z6CTdAIYqZ*20NbF_Qfvw?2UW!-qqtni}&fxUa)4C zJ2`>^Tiz|6TGK7lYg6}Z0V_D$fb;0_t-=M7a6o(9xreV~cD=B*>v_)oUjD39^@>8F z71yI2jy6Tl88_(N2~~QOv4>7Ns`A*o^TGRr{3b77tQ~%>Zh6A&Do5i-E@^hVJ1E~} zI$lVt%6;^HlBl`tl%w3&tiL$AaeA=@$xS&G$2({!as935dQ4Bx8*W$b5gFNSK+W*U zm6O%4>1{3isK4anmM3$pNB28!(%*$+k-4QHuX*Lmhp*k2i9#psogQ{-g^il-ET;u* z(gUIP;4!_TypH>SI#LT1XDhyz^{TlXJY0}+W)x$bb9MdeW4)CF>z=xY{}|ad zd~!&S^DnvgtPK-GcMO|ZeCtI0rLaJHX;x9^D`+`UFzIs!XUvX9udPQ_+m6f4J7_#6 zZ1dHA2HH389C`e#X!afRg3gm(Y!vRgvpwVfSUt_z;w~yF8QF3M5p?c}Cld3RjzW2{^K%SCQUdj)r`3rtS_-KY~eWBUq=c}2aG@?vM-PTX_8 zGRa+GQ-!4JV6pc8{d8JH^n!{V?~ARQ_D1{989!px?W!q8uf1Q}Jo5hGtfMjCD`QH+ z`#}>z=JX0U_wJ*w>i4%{mQ}+?rgg|zetu|!L%03|UOG%I+EU-==)T?%O5-1aZ40gp zQM@}g>vMhC3-`V2;$Es$?EK;p(q)gv;pf@e4PCcb#I3(R`s0JGM!uWDqFcl1^_(7~ z5)0ng7hHR-!)SQDIkD2WvVP90d++!Acn(pp^>}ZuO3G!iU)6c4I886JKXcr4#OeLf z`yWEoT>UfO=3E<_pZhqZv@zp&i1ppf)01-}I_=uEnRU(8$9CnFF?Hs}p5v-s&bl=~ zyGbS4X-s(0k;3_IWy(7b>_{L#)LtRIXPmp?DZ5(nN^GEJ=WFK6TaG67FgP*3)pF}c zJqw@zIZ_FCJt>0f9~nd9xSJ14!uHtu?j^ZZo*_;uX|^nQ8#?0(ZzJ$Ogf9JTyl zKVr+)!*AZmwLPhQERau18%0)KZpThub!N#O<4jwNQR8mM<%dLm=$Nr%d}EEm&3$E_ zX;uT-g@@yoI$kJNd!(SbJZ6VgiD#APsY>^jUP?m_j=NG;cvRKnv;XROpU&qE;08Zs zE!NokF5&Hi8iOHAlIgao=rt#>rT)n*+u3P<59zTW*sX53X?0HR+AiJH!#26aWpo?F z=c>!usHV(%Fu>%%sIPZltUNRHqP?A4)ANW9t8#PXI+V}|q1kOou&GXU?o|i!m>rc5&&}9`@h09ym9?vUvA+xl&lK z0(q^r>TKrt(epQ=zbI>8k)A}kN3L^|i{~^N+ZLA1N*(h4nM%O;*jK$XPB>3Be4bY# zZ`k(AId6@w`rypR1JCuosCd)pLC16VKAvUdHp6?!2>X7D zt9n#kZBuXk(V<&XK*)FVXTh_1W#|3LMFYz(D@03G?y;z>L%wyK+DkCqv%h@TDZlcP z0K-d)gEsAW7UQ=?@9p*T37vWjFz(x*AFiIW&-(F-xCPbxH--0Z8@&nZIBI#0?&pph zgFi-%?j8Md&Bla9@iWY~N8K8FPH2A1UO#tj(sA9_UFl8=w7a%F<=Hl4hhnYwf_|~*qpt~y?QV2eN)M-g#k)NdxpH;r9+p;Vz0P7 z!)EfRId3iY-?#PH{W#fp_qX);J54vXzSj=7sPH|ub5*TU^QV+&$F5Cf@*bR68Uy`z zJ&81_>a4k-SM;W^8D++616?imZth;%ZG^W?uQQt(TnAtF8Z_VZ#j1ofp}<=G>`N1& z>!ZlO6f1PMNiMV`%ccM1$*xo&*FlOZEIGw4EV&M9EV+)FEcuT8Sn^7GEO})UmV)v~ zmVyeyQc!heDXMz16gy34DRvHHb?BVH>d<8ot3y{It3$Uvtd8A|vpTY`usU{s#8T>B z%2HCRVJWG1kW*IIlvCC)kyGyJAg9uEikwQX7&#Tq6ggGRG&$AY=jBwjp2(^8`6Ab; zkBWRJZ9Vx;eQ7-sNX9C1=3GZo4Iye0`$d}AVza@z$5%NS51rMcL z=(oX_dDcJ8bw zzbMuO@`PS`#}T0%?e1t078PhftD~M|q}2r->4gX-J^yHukzRjyAtQZ@tB{di>(gs+ za$PSWokpD=4>XNj?fp!n<y0}^NvKfLw7)@ZwWe& zCr+P$^dh9?)7MOw9YID~P9zyQWQ-xBHW_2dNY|CV4w_#;M!L?)$VG%SeK8qn`VunI za@Ld4fQ-A*_Y%_eO(!E=-XSv5eCNnW*DsHZG`*0FG+mQy6uN!>|3SJ1IApK<`KM1l z3rhd~oc_<|N{*oa>2C?ybM62B%%4p5x$IAl_22#dUcw^MzqRa7p6u)Y=1(?1=l}DE zfgpL&;w4L$El*joa@FcJYu5?aZ`inL^Omit+qUo6xoh{Hw7vWGryn?YDC6*vqsKCj zpU66S>hziHv*&WoU$}Vb@|CNiYu9hwymk9d?%jL$A3V%^lwa`p$otfJbfbC<5& z*xl9Cdua6RrP*7nk9OaF{W$}42I}e!8mw<%Xk=_+I^@^)##YugwhVBkKU@7zUq|~) zn?A#r|L@c1&0p}>!vEW^|Nr*#|JU2!&fdY%$=Stq^q8@3)X<2@%#oHW_Xd&*Sl z_W$?k|F78o(h5Ko1d{)XLhc{T6^bM-Bl*2}iU0g3#`Ts>X#DAat`}KPTyI%U zxztZWYKj)Y1@INyX`;|UPGCcd0Uy?Wf zr*Gdzhr2&rn*Y{M-=sTwgYM|-KV33=<2sRqSty51Eh5LZ%^wNC7ei$w%^#T%;M2gJdIFNO1!$7nzR~A+wNaNFh>yj6w2| zJR}!shU6gGNET9DkIP5qBSpw8WExV46trUuIv>eHa*<|84w8*zwWGKW*9V!86d|*a zY3(RP7a(Jh{C4D_bCG69PCK&ESx9j$u2(zeql=JP?U;rxL<-t52Az-OwIdhZ49RIn zHae>v#WlFT?U;`)LT0sN8oIC@1?VyD$Vcb3BNyGQ9XaUic4VQ;D6Yo!Z^wLeQ9EX# z%b12PY)1jQj4|l^cI2VU$VE46M-IA-Y;+k}=wdv-%UFsoV?Mf!B6JzE(9_ych%Tc5 zUB(!68Tsfk^3Y}EqRVK8E+YqBMmD;PEcBoJbydJA?N9!GFk+=vxrL(sa724=|FnBU zfzz1WzcCr$;L%qdgO<7i|CWkD(w6Zs{Hft;cCi;I_n$AmrsNB+6tq`~*9Aa>pjaWe zTPWl|Q;4r;MM7Ha>`qs;hQp5a4%4@U^Waq8W+mN^(_rDd5jnLwL0}^pBA{QX9C>@v>}Q-}oD zQGNJE1Exc!EXPNxF4_`?i`q%M^s9YNs|$KXeP2=tsO(wHfl1QVMIyZKs0 zfx^5yPerf&!1R{t@)g5eK;gxRv~ddIFj?PVUth)Ppp|Y%9#*i6Yq_%9q)=Ga(fIF5 z4QTFXh>Dr^XpA0D8fyE_~f*ABJl zzc>K2TT5LIRGXMx_12fRv)q9QIju_>*x&&<-T{Q z>&1gtRf&&R8rnf!hXr=N`Mu!zH~DG0A(3!+S@E^*j^Xg8XIw<##1I%F99=EHEf7Mr zR*xLW_J@u)4?Y&g`NGLl&pId@`G9k;>G1_lUT||*vy#S*3D8SCx6k*zJg{;qeH(FO zEW{*tnpP_B0vpe<$io3nM$8|6W;Q@pw`JO){#MW{;#$v$Yvyq0(f*-Fgd>1aG#I7v za5$KL@3bZ(ZUpoSP3{?*Y!2poX7%LPT0&3Z5VZrh8F;m};da_XPw3dwo1ffaGA#dkEl{ZG6mW4&s9Sqdg3;h@*Cmc{Nkj%UwS0)J9x`Y7HGi0?Wa55 zdcpv|+t%_Ym)$`6d1DfEXzcW5`_^f&_F4a`^=keg*sRLSYzqP_L-DO=-NK<{<%)sV zouWX4Cr2J5LFZ}Uho1A?pscdTrJaksfV0&*XTfqld?=YQw(G1Q$i3Eo+{FdqppgC7 z0d8hAaL21=&HU~Fhj-ZBU;BO{q_ft`JF4>GM!o*Db=QMn%mdM>(48|O*`fA)TcQD| z^3GcKeB=)2KZdN@T;>DT+e^Is+ymiF7dSHZK{(9QHN1a6eGu@Z1N2VaZ0Xo(2FN!I z<}Z{FhBIAej9uC<63W$G_1*{B!PlOJhn<7HASKW1o2yX(bUf_oeCk>_^sqjuZhdk% zELp+%SSFkZQMcR7ye<6UuRh%$9CRY-7Rl-s$-_bUTrWMB=t*F>uIr`ueFDHyJc+qV z*7vZ=ZJ*-zTzKDmoZ$4kDR4a?>BQOGAds)Ke){5k6pU(F>OEe|1LPwLpPc-{he4eE ze)7Y@L8vf@du)*n4B2~mNrT!{Fy6B7yTh(v*eVz+(kqpRu>$*SMg55o4pZcJGz38N zfT%OtwUJ;Xm#KJ0jRy-=7rocB^oK<@dbtx8ML^{sJ<+QTW1+hqpFI5F&GwxRv+8ET zv zKT((KBp(R6;syu#=xFGW>NP;_-6ZICGWn6_+F(%Q$dSh|=znd2;}76n}MR?@)4jGvvQcc`*?`U_Tnh{1%aAoa(B(-p}=QPjSkeG0fp7?mZ)`!fGLW( zVuz8QprYme;fhT#=YZn_(I!&((eOG$$4wpmIoisdBLUrmJbU*gn`gO zpfb5P4~7}7={Mdk7`Eh9A3LdI4~r7cB<(5phlkxwLkq;ZFs|R6Em=E!p**~Jdc}+= zP~2{xW}r9~28cTPjypFK@;vkuD_Y5RxOx9WuvZu?VcRPYSi%E~8_#AML`*j(> zl5hR-<2S{pr3?RcnsiG0_)329*Ei1G<)T0Hi@AUJ1M$!FwnaukE*f6Hr;F`Pm;GF? z#G3HeadqD>%jTEXx08RSOZQ*$PnXtb2ip0sc#5=~U-6m$CSE5k^BIspQJXAw#pD z29ozBiQg>zef)>*MGE@$dfLao$h>5b#RJ6)Wy=+HI=N3(91SZ%*fR}F7s4FXWM7w( zNL#0j%MPU3V&6zEItbl)#gRcesK;4>=^po=|&D@4(B-AA3YBN&&F6qZnyw@KW7=`CSC-G zJ3i|s&bS2APe(jgceo7iY7C>424BJTxC$3Pyd1jz(^ZI?a!*YoLx)Ftk5h}xB>C&`f*xk-2lVepR%sM zxdHta+>bCCcM~cnZLc-Ia1$)f?0s7~=oT#Fq!wFjyai7;9*QyhaSO(0#@as&zYTpK z_kQ2)`E58bid)~vy#p%6Z21*O@4!bdhrJ?=TR~11Pzr;y$wB0j$61F>}DQhp^z&(X>m~9^&@N1OC(_p7N{nzsRhuoE$muqZUNNpbKU); zu>gXT9<|sRJO-=TZ`k}Pk756^*XmPOJO;g8IaX%pAH&eTWf#h;9>Y?*iFapdK7mOK zQn$Zyc>+E~SN#Xgc>*7t!X~*Ld;;um*A93*djb`QmMt?=dNRKfGbn#l zmt~m#4DP9TU%g!L4EN(R*nH=F%_8IHP+O)Dmp$bok1(`lurCvA?!#`1T@Lb;djQ+^r(G<8QvaUv&{M8BQNV zw2Pso=K$?ZF2&$IUfphgY%#1V?UlTFS1|-Am&nh|Ee5yLtDgqe7Q^QA&jLk#Ux4bx zN+H+v1$-!;xg|aJ1&mSNzWvkA7f_MqeO>d;3z(VcGR&a*1^BdH?%J=zw0tSY_s66W_gv}@eQmoQkYQN5=}35?5pc&N~}1RA4% zysZl^!Q-z4?#&$+Uz$?_A8VI(I#E^vf&F5S2dKV+XCGOAwGDd(OKz8MU+D7+m?10m z-Yw6Bagj;y*IBZhCh7;+0Qy|TiW^x21U%*O3{4{igQ9UX1TqFl;zL;?BicU zy>p1*aBv8AxnY0%{!zNNr@qdkp@ErqU5V^gLrErkIiy*#2*NxmL=S7skAg~f(?6|q-J zA?Nw|2LT18u=+v4($N*Auwe8KZQXCBu+`0EcdbepG(K3~D@VHwE`8m&dDf6JaI)3a zj}5vzgUD z=SCSQ#Dui5pO-;CH)e)!RT;RcEFZhSxeTI?ZYU_}Tn?YE1hsbRUk(meuN0aMEr$`7 zuF+#1%HjUE)I6U_~QyF}nR zw{ry?k9DqE*S7+$3f@HSG_8P;yr%L!P(j`Y!^dyuRbc&40hvdJLwsxnyh-^`Fkx{8 zD7EfeY`CccE;3ou8`CQwzI<}nHDq&mg z>1RzdD`9=Ld9By{N?4KfFgtT~CHz&@tk<%$5={1tbmL}LLY(${vjvwcA*feG$;pS6 zFmPKBuh*|CA)%-4VfinW(0fI}i+*jDP@LjYH>~SB2nkI8&h&ft$2APS79ihGis*eU zvVq)xFQVUD%7!iNd=2s6zwTSx&eyebVLK=H-~2KEhIYQOou85aGk~avUHiJVEMA?+USk=`ef5N zdD8ZcF-TcEETkC8Ex`GatjAL4A=8kucF{TLf3`!G zwV$U`W5_*V(c}(3Y0pEnCk1++Ul^H6+tvSTOKItr`RDRvM}`S0kKR8>d&&IglK#{D zw7oXHn~<&nZOQ+8TWz`q|7m`D2P5s(hW5NfdrP3}5lvp1>=jANl_opv1CiclO86d{Y=np8${k8!IJk% z05R#Y_2-_Ft*LZ_|Jm+e_Wo<%YXI#z%8x9O_BurS9HKp3(52I3fxeo5U2oi-B>ne( z1!U#_xdmt+qVydRP0FVI=Oq3w%ablex<%3sCoc6zR)`RF4AR`hqr%%XW_FP);jzC%5X%CAFjMJg6bw*wo= zLFywdkd8=KBoE0)CL(3m3@PYBWGXTZnSsng<{(ALd}Jw7j8ra?t}h2^hIB>pklsi> zG87quOhgKhDM%qQ6`6+2K;|Ixk)=pk`C@cdF>Y5R2Wf$HMe>pH$oa?=WEwITDf|7} z2?5tZ{y^EW4Ok!X(xhviva#5iGle5Y~jC7?ua= z7{NVyHp?+6KvFK5hx84QMCXf@JRwub`~jhaq>M0n|2io{(%gWQLvP`yWhKO6{|cnc z_@GGtpjetf22y@BHL{G~C)4Hqbh~jZ7LSZ{7&mT6VBnA>Nx9Sm$zaSGM+Odkl0*hN zndRzg6&Yz2C+l90^c+gBpUC{Aex;m9oUWu7`5!28Y2S6ul5-0Ay>&^gNlE9US54A# zrSt!CX*qE}b4bgJBBlPCMv5oPqvg|HZhp;6r%RXjYnpVqH0Q5rG~XDq26VlhNy+|% z#dzf)>bx*BhQDBZ5l}aC*i)NX>gLJo~L6AEd(nJ|mSn+eTmyqPeK#+wNRG~P_er}1XOd>U^iHxuU5cr&3S-b~1)@n)J%ifFu< zkW1sugnSxrCX~dRsVfc6qt2u8W@n*tO8gHgf z2w-zCKS?mGocxcH`D1f-b^T> z@n%9cjW-iY;?0ya-b_gLql97_Z>CP;&4g?kZzkl>cr#%djW-jP(s(nWn8uq4*)-lv z$fNOQLKclT6PVF>Ga;MCn+fx2yqQo)*$t-b^T@@n%XI zZzdGbcr$exZzdGecr#%djW-jP(s(l=IsPP!q48$oEE;bnNTcy)!WbHFCKS?mGa-k@ zn+eTmyqSVcr$exZzd4acrzu9Hxri9crzi3#+wPuXuO$FNaM}aX}p<`MdQuXX}p;* zi^iJ?g*4twSW4r~bUKYU6N+iPnJ}Nmn+eTmyqSJ2Nr#L^ez1MECq4Y;7ti0#dx!={9e$O-y-(BCIx%Wh~I_|zQ6QAGw{LcEmj9Y>J zr#@TDY**eHnBMcO1~cpKe7}SKduQzWV0@_dO6$vrQcv?$T6d3YtNZ7#a)sT9-ivWbbI#Xe&r-%T#u8s zy({+}IeO*0t;=oRtoxolnR3&Ir?mH4GU_S&PO9!2z;xG47wo>Q%e>j&yd}HGFeax{ zs`CdhWA5mGKky@WD06GeL+ki;dA7GTCRpA|{cd~e&?B4XEtbqEvjW2tkF}YuoL-mr zcInF`tUB1q&TKeiH@|Dr+?qPuK0g|kg>P18ipP(Pbqz6QS|1MD_?o51OzHE+HFp`C z`C%TK`PWEAMpwYK*Ilg3*q)r2{DN)E@E3gw&8)IyG*2Au_^ri;85lL}cK9t|20U6i zbOzg!5$!x#xlqoQX;XjYI2F&UsT9f8q zvSP-L)QaO~n=@Zm%v7*@GK}eFYNd5*y9aZ5Pm9*_odX$eL$dL!aE7sip+`1Pb6_Ss zXjtU5OP5(^sif`Z<-)Alo%h-~V=VJN^wNnv+j=qza(ybD*1IvPOC9gm>~>)i)XHq{ zeCfobrq^qYtTSbJW2{G8&2nNkOtJ8@y6(hmi>+5#oMF%8tvq(P+02RYKD43mdYc|o zcuD(EuLC2Q{l(f$iP9)$v{~KSJz7>wy!p(*`6`Y~u}_tHLpg`>?Z+A(FE6$Y8Wy>@ z{MATC@xa2lGz3$*MrRQuI<$%9>Zj3TvUWR*~4AZb>?6g)6Z{60F(eAT%lX{jr z?ngzYY3{tkHhFrCS5enZ-TLb@^OvSfH!vT^45}aVY45QC%%H)VcO1MNnZJf-9$$ZR zATxADoEG=16=PtiGW&Jj0OpKQqvN^@9*h=av(Pu%kr^9ucbRVo7e*^;rqN-$v5fxg z4W>P99hs9&>fBzzj*S1#=iw?HtQqek-88~Za+yQZ8~d&*wqY{Xb(_aq<;+~z7GG~- z@5;o>Z(XJ_vODu-!-ZqYe|2XJ_LTMOJP#TR56orY4;9Zt`&E`KE=9~hWRGxS>b?1#<+pSgot-PZZ&>Rv_Xj>c+c<9=^KwD&Tm81VFugZe zU3`}`hPlNAe|B)QVl3*G^qAVmnX&5p^_#i-Sf)>xhvD+R-I)%L@Km!jE>bXZp>vbSr9fWL$SoQT~$8Wz1iU`YSQCFVlKq z{j=qM=1lDS3#{M~I?UQW&-3RfSTaiIgNwV&@Lc~{AJgGdd z*_sLQJ#G80+MV&R9c_91dRHcG$WgPuPjH#1U6S`U`sy$TW@)uJY;|U4O-h`7d#5k6 zsOf(CI8PrYXQYP3Dz~YO@rj*+E0*4jx^a&7$}K!58)EIkkI!IUrVI8P?3~Wb@PDCt zWD}RUr+h6sGj0mA_2|nX!(3dL0rtC^H<(Xhitn_TY@0fbnQI|mHoU((vs%%u`ih4$ zV?E=ZdcDw**_Grr?!>`S_&)Mtv{x^*8-CJ@=@Hbc^X`wn%(vK~7xnhoF`hYB=dEmT zVyX?2MkkifV7zy+JC^26V@?;%OG_@D#^m(UOjYaZ#pElDEIw;!!1OzNqj14}Z{|f} zC)MxG?#x>Kn<25n8BBt5;+C&Nr!&0F$E{r)1~N_8djbK_8XLRWH$%n~2FVyf` zI-M~X=Dl_@r`Fb@KDJli6;qjUhc3Rj`&oxs#*^EtA{@)~*78|xxYv_edhEM+X`&Ug z{ONH!_tQtzekb#>Yxv!65p$^UtcGtr{}`& zHCfXbbshJIypvXpqebu9dEciom;3rUHU5~u-1QZ93jE^BxGB5VXO>T79zX0?GIxqK zlVBC8a@om&S!Lt&_`KYBCh2bOw93^yW|r@izvQm^FeMwGSjXj!V)iyF9LTaBi1mXR zW8)JrbyCO-X4MSaZ)-A4nGDSr)}_5{nZG;~XD{IUFs;}7yuX?0$rKm($CYgJWx~VP zvYO*2GD}tNt6WSlVlHg&R4^`W1{1$!>+^hhZ)TIQ_(6(uFGlCh`J+9fM>8Iyj?_fH zb7oX0rO)sTc4sbkt{E{T-=0aCr5Kd=$eGFUHd(UzoF#L2>~-CDBVCv`TCcwC{pi9> zn$R$Xnd!}p>$5Om?OSc;&gb5DO^dvlQOzZ50zKUrwPR%;j9on$j|*Bu)%H(f^lA(O z2KKXKB6Np5%yso){<*!Sm|iECZ8w%MKWmDFY^UWC^1ZXA>7U+8)8*8wY5uhB_7a-q z#7bD|vtR1VpGqjO?pQS9@vhwxrY(IeA*-!pEzOsuY$KuBp;=PCJR~9a z;A;svsy*u@jgGl8SC(}bj{3-FVu#-9r&b%r^s-{J*X(v?w61f;&7G+jAgzppuz85)`NVauCfM&Khjw0)I1^StkzW4&+jnfk>KV{U$kV0Qk!Ilgv< z7vr=wYstKY6PW~EmPu!!4|BA@$1o}&kTI(WY(B?vU?z^=X?Wy(nan6GX!O2r*oAq-tkCU#*q*s!Y(MO4>lEge zUB&bf_d=O6=L_$z6!|gX7ryK4QJKOdXIwGw?Crs*#@nS>+WIiv_h{(t+~&_%=gJl9 ztq3OD>(z^nlk6CGGp~p*hW^ZQg_XN6 zS8ZyAVYMA2Jl5@d!~020Sl7!_4`ur^dl!DLH`>i-me@`jRrA7yv90R2B3`V=A#&qE?G1^q@&P;Z`U;mw|p-PlnO@V7!l7KCKT*O%5NY^})RH3v6h8 zkZ?cxBdrgPoDUsJ>x1X3{ZnXtVBwz-MeBoC^UH&1eNgtge?6@aIw@2fr1gQuxuL4G zKKRiy@D!~N?jN=qMeBoadn!lJ`aoxdnj5VT3{Afcp!I>t3O_!r5AtoUWz+g#u%Y=g zS|1!T-Zh)n2a7y*O{Vq1i^19Ev_3GH==zG*2d)D$HE4aXbdr^%KG4&dw20OR53Lsl z)B0eDR*(&?58{14Rnhw3ZixM4S|2Qz`xr;-1Aq5N=CnRg&vV;G>x0i59Cy(A;ANVj zJ*^MS=V)xB^+DyWhm!h$=l*&Rtq+9a{flUQ5L7vR9<2|i>oKQjeQ@=A(j;0RWIma? zjn)S(8Xh^cK5&`QQbX&5$JfS6>Vuu0OJC9YU~GYxDXkB}gkMW&eK3E8(imDFEKhGK zq4mMiVJ{VEec-!e-f&tUG{CC&v_5ztOy5WAgTYh%zR>!B>lEcf>w_ZU?&RO<11`2l z18IA-AE4GON1CMl!1icAAp2$7F?PTYm}Ng^caS4-)q#!;dOxr|+7FOl>(qGX?=}#9 zk~^*Rpbb9CU6?C4-UcD(#7Bp&Z-WZn)&pAcZ4h56ch}0R4dS#)lGab=jT2!|kh%)1qoxq0$t(aTQ@crZRA$?CY!PlbV^)SL*?Bc%d$eXq)4sLb(6|}o$Ifkf(vwV=v`1@(;^FMg zYd5`!l+oLrCSJEKu8}#*wAEoWlzQKGs(+#Ju ze1jXGN|kjozriZYvonwE_y)P@iOFs&zd@JV+q)|#eS?#SM^u!Ae1pgYx$E~Pf5Y}@ z-(XFf-7WEmZ*b|g^Fn>yZ=f=NXJn%KH*Amg4SMlwdh%-;;La$AncvD9z%Ms>(7}QR zY>(Cewp#mDN1to}VeEtgo4pMn%1^O!Sx?d>?a>-QD@2YoNo#;6o$=wH{2E~Y80)1T zo(x@M3Q?O1WDP>ziF}U%F5aqN#E-I~=QrBM$~v`|YZS&)&&qkJr{?d$fA6n#r^I zJgXkcJ?CH88c>gIDC(hY(ZzRqF7@!STb-+lWj&1TkTLm(VLfOxmVZ#{TMxHxb}!TE zMqJV!tsZu`z4BjITL+dMh8!xbtOGaWk}D2Hbr5wzZ+XtWIw)Ir@D+2p4t%b9raeDV z2V>-BXD-}V2O;^V-db+11A(iYPKT5_nAhXDOWE8y2)M&~*h_vNVBV5>S<-v60iut^<^pE6@mHm44HNCq;0P}hP*N+iE}7Ra^K zg3^ft_UpdXg8bo%OUC83a6941`r>D`@c!t$^v!o`VUoeXV*ce?Y>!6HGr4mubPv=* zz(P%9?QONNRyp{I&Ki;~X^&P5U!3k1_$1VVtJ3S*HDR^TXt>8WZ+b0UOEhZH_N)bG z_0nTW&b4srl9x|~RV_644gWlCNG)7t8;yB8uoljK{M&nuW-SN{%;b7^sRh3LO~YKd zS_qXiNUI_Bd)r?3k2TmHtp?I~CUUCJ2#u4+wcM?N?xUuzZMsqeTuFnp8t8DXc7yie z8rZE?VPHqjrw0^sd}24&fO=MnT2@L8jLX|=(Y&ArMh;HS;lPlwh(^#(zV z&Wsv3HD~=_yC&3Nd$bzx;rH5lj;Vn+m$oNP9#I2^YH2!hhBc7bG9dX}{~CBV$yJb~ zQ3J)Ikj^fhYOp<84a7(qq*a4k&O)2IPt_2g1J+;5tKsq((~$b2YUrE1FSFyLYM4^0 z-Kuk|8Vo)=bH`k)hPM}LLgt^WhAs27{LUY$hTYvud&}*vhMoIX3npx;hL=Xd#aSz> zu{~NfEP39i_sTidkQ8UXqGMDw$PH`dtqH7#E`t+%`}tJE-DltTpC4Zh)(=&?`npzw zuFHruU7;Gf=Z++gYB(nPykeDcH4HbK{@#0FH4Jh+)Z0vpq)Ucs5U}O0v?vi5x3R@- zoTwW-*ipC7eFGT8!<{ zh=0g2*fUQIx4*fl4vG^)i(1mo>~Jx(97u_Lr1AbU~8TW%uEj&5=62ABzqa=(78Qx#+Tcn_bb#{m+uY8=dymL!4ep4@Bpp>!Q1&>!I_|2cdhT z4@T#s%Wkj>MK{Fs7<41_M08_x0lEo#3i=RqA-XwwDmv{GnGR{_7E)zppj)D6q02h1 z%0Z_etmz;^=Sqyl%0;(B&qsGaFG82xh)AZDqB~=H6}k($7=1K)Bl;M07QR2nqAR1j zqqEUH&^6I{=p6LP==$iie^5G@p-+`6%K}|?rwtcc%V7n;LzhSAqbs1tpev#a z&^w?D(L182p(~+hp(~?{&{fd$(L14+qIX6Yqjy1PVZGNCosHfNorBIsH$(4^E~`h? z&}H?gIyxWo_dt(9*FYDb_e2+>Yoe#2_eRe`*FqPe_d(A`*G4Zz?~5)*?}yHsC#_HV zqqEUD=p6I`=w|3T=v?%H=sa{?bUwNsdJOs?bOHKcbRoI{dK$VRdKS77x(MAEJs;f! zy$XE@dL#NUbmjTd*FOSX6MZDQKDs%&1^Os-S9A+>Z*)uaP;@KwM09KP6m$kX6&=ts z(7EV2=yvG2=nm*b=#J=ObSHGy0_p2@MrWhDpmWeiqnn|RLFb~6MdzWrq4Uw*(PPj( z&;{r`bRoJYdK&s<^el8QbP@Vg^nCOn^iuSh=wkE;bQWIkB%`y@w1=vwF*=+@{W^qJ`S=yG_0 zR*J5OE=E_9UBC&XuU7?~jjoE$LGO%ihOULqMYl%hq08X~9v@v1JqBF~U4X8FE<{&F zPebpFo`tT3E<(3PFG82Y3&tvR74$}QRdnTK>Fe)|u8FRNu8(ew&PA8Q3rZfk3OXNM z6+H%B3tfP2jh>1w$C18YGSF4fbI?`Mb7k|R7s=+=mCj!!n;*SVHb1)ZBI)b3M%P4_ z)0fV#kFJ7lfv$?~D$8#y&F?MCj~*(^kDe&YZzj#3BFm4SD$9?aA{Y~G+keoj&31yM`^mN%w47KEps=ihsvBM z^+a^V`BG0o*FsN4mt7ayOS7?L*WtJsS!tMW7N(ow=Nwd47N!^B1QGfR^nCP_=%wgs z=wfuzZdN)hk#46)sBH9S=p6LN=w|4L(Yfg7(Rt`M(fQ~l=rQQB&jAAT2beBIzlxrQ zo{KK~oFn_3l!fU#Fg+K2COQ{CC&)g>m124Trd#0lm3^)kV>%uNEY?!#_E~`W+32*t zemZb*epwtqAJd(r$t-V7S46kKblK+`SM=qW&d2;e;{=$FhaoEz(`9jkP)y&4^CzOO zM^8bQeQrucKaJ@b=tt4H_&GrKxh)6NS7CY#E?)^f7t>{*!xAxF8Pkg}eLs2?`a|?a z^keAC%cR@;F1jZA26TP&3+NW;x6obD&!BswKSvKm&qq&0AB&!XE<#U5e}XQ+*QbJ> zf$0V4Iq0v@bJ6MVInbd9{hm}=Rp{C1jp*0Vm6uDm$5V7o^mKH6^h|UM^f&0P=o`_! z(M!=o(J!JWqUWKfpqHViqQ6AXK!1&%gI9V+oEKZY(>9ROODz0y5%%6ejvbaYUzFt`zC9Ob{OdpCKis^~y%2;1o zp(kScBH8@7{O;&xm>!orAB(7F~Izbbl^GXJfiGx+bPCLC?YEnW5`r`Yv<}^f~CR z=n3fF=#$WMaeJ$whhq8`^hETD=qc!1(erVBb@WtBUxQwS>uZjlf$4vt7vcOp&~q?- zGI}YdYoO<1x|eKz^i=dJ^wsE%=zGwWS4p>bhAcmp-xFOE)4kEfnBEIrAJeDE^5g!p zLASv4rRc8chtR#zXQPLr??h+e_UetEi0MA)u9&Wao`UIt=&9&e&@<3)py!}xq35FK zpckRvN3TM^gRYFr*FtZ^^l9j_>-M*@{QnPi?;a=R_{aZWvu)cRYqqx9={VbQJC9nm z4tqBeqA*riM5BXGr5ITxVI?dTizw$ovIr}ukdHwKVdNCTpbzEaFp}i_d%dpfeYe+4 zQ=i}W_xS$vdp{mC&v{?h`+C3M*L7d_VeYx_dls4Teo=J4=+B8>Df$Z0L!#d-x>w?L z7JZu3-y-@P(N7UQF80Gjub29{qPypzgQ72!`m06XDeWsoZvvIk@|_EC!~H~(RWJyJkcwq-Y8L@$^6Zlae; zeOUC3QeWZPOZ^?92SvY7^oZE^6}?94r;9#K^s_{tBYF$b>qY-k^kt$qh~6mrU81iR zeU<3zM1Mf^jiMha`WDe6qVLm_Pi;_YpPt9?uh~F8wSmOb8BnetzxdC{gM}|0j5~Rc z!s|HP0qyPs@O$S!;!cpfBvs#;R-e18I{kT%o?SKOgNf_zou$(K-xk-l*_~?rpFZs` zd_&()=hmt@mcH+eXP1w-ztP!MiR)C`jed8etM_&$eKzvP7IrKNI1HG+keB>;?zDyFQ!o|K}37 zz$T@JNs{aKXzTisSBwmXFPk2w!19K^BI7ST zw3JLPufCb||Mtr*WaOo#w~^7D$~(xWmp`~u>z-$#r2mU6?;>Ma$K9>@ud;i{hT`uv z>pZKMQ%_XRznAnrJ$3~dysSju?;TsVNi+WYJ&i1nJupMx{~fp{Z_p=0WNW zi!WYDdfz`t-xnS|JNsekktwfeHa&dhBh+K%z4Y=<_F16Wu;DAsz`%naWqq*XZq4w2 z)hg|;dZK1x+H;zrKoxmMGE>3=l?=O6Y2%fn^&Xa?*4 zHe7PzlPpi3^0;Qxr>&o&u1cnBhCMH723B-gt;<`Srx_@HTQm4|-=|sLFsn{8`tU|g zjL$PHk4~)DjKn|JZ2EKfvn-EqUaT3oYO`kW+x^$DJd%5zrg!t#n$e36e2(RH?_Z~> zzWZ7;`oaPKW_i=`4VuvhH*3aXmCtMYn-*yX1|>A3FZyEI|Ir6)hM$|MSyy zuG!>Yui5bA&ze|{FR`8fno)-F>6&#r8Z^V6)tZUqXPSYRTdvjpxOkvuyvwmhk6vJy z7u8fXuV@AqeWw{*(e`Dw3#_Qr3@tiUv!P~zX0YG^&B*e%jo#}Q&G^-w^nLuHjUzSV zg;O=_%C9yY@Q7xj{d=bVo1L1GySnQ8{S%``X$IGyt{JUbs2N!Lh^F_WcQr#Tc53=N zbTQ8ZC=P1IewnP9c=1Y2b-{z0n17nl=r+wr+Yb7<0Zp^^)2v%HK~sHkiDu}xyEP+! zysX*u%@)n%a|Qaj0(BP;)(rPMMl<^Fb2KB)O`6HZ)tdglKh_L5e;H2iuAf5?yyPIw zNZn-3{^Q8-({CVc5DxQ@uS$GcxaH&1i>bG~>5_teGtSLo;wr=eIZ?upViK{yJGR z+-II<;=tPsgKISFhHlb~7yoI>KkKZYmk_`C0L|#AlQru;nyVQ(^%l*Bcg%AYl0!c- zcJp^?h7tvF9sj(}nt|*An%=AS*9^8iLNhVvM9t(^(=;Q8&e5!kUa9Hbc9Uk{fEAj_ z3!l&oJ-${my!l;IU-*?~Y``{6@4=pT7(ZC;H9WDqW}s%UraHPxGhQ`LGurE9%}9$G znxT*9Xa?`UQZpR6Ni#a+UQKKtG-EftsM+MaqnZ5dbIr*4KWK(?|I&fin)#jK6iPrW!EG=$Aw^gKu7}8E&^&(_ek7X7sB2H4{%iW%%XGnoZg7 zX@$tR~lXdue51oI+LshK< zBa$P}Ywf(WBj>OWCw);>vgXL{>peNn^Z(g#OycKntN#0Qr)~vv^PE?+Vv(!viB%o* zD!yqC_ByT4eDeo&a(m~ICt5`MUGaIXXAdFRv*^x5a%@p*SA zoRfdw^L=w2lSc>V9i}nV9b_teycjO=9Szv>$^G2j;Q`^ zYx^>1^*;NY808xvJ#d`g`I zZ#d+;#-<$S{!f1Cyz?Zl)BgSA`uzT7N9Xy?4?q9iiABymBd2{lWMNll#EAX>`gCj2U0b~F;8JJ!8z&V!JH_uT_w-#*Sds61aKW`t9CuA8=a$<~y{&A} z)~XqQT~hS*6F*(MpY!VL|4nTDxs$W9sPFt^-`dxC=IQ>&)*ii|GyaPD8~awYa*|`e zDo`gC%5v=M>|FHyT<4278lLD`?>IYd>h^PSyW!3)ZSJ0M zW%t3(y-)9V`0N`8I$zc}b8l=}=~T41^V>c@4RP|0zvjeWj@{20v-bF%XT31o*?!u# zHa*_x<=lO2)%*T0_H~ZmcGYQ@RPXP!x$V7w{ye_Y`S`=~`GX4sPU7>?OXBT*s#9bf%p7=zD{PlsSdJ z?Dx?_YezVL)}1|RLC13Ew8Ou6b<#24R+;&?k5hl%T?39haD;Pd)z-wlTlzbXlyykH z($wEM{p3$;7j_FcOU6I@-C6!Yj#_{8?1hgftNML;T0!^AMmmqIX|;A~r=3*~JoQGG zndOdiLw=9L3nrI469(S>Li>V$st(QT^35UR_jN9xm9sPO^#RU)Ge1gxesgc<(xz)4 zy?p&}XI*1AHS4enr~A7d?x-I*!nv~l1x4NyhB-Str#*bZI|n#l?s(~V?>&XiAGx

kn{3?>;xWrK)tkm=W&t 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 H(v|-M+JS!@ literal 0 HcmV?d00001 diff --git a/lib/steam/public/steam/lib/win64/sdkencryptedappticket64.lib b/lib/steam/public/steam/lib/win64/sdkencryptedappticket64.lib new file mode 100644 index 0000000000000000000000000000000000000000..25216dc0561b9f4caa7e726d986b3693a9e87022 GIT binary patch literal 5954 zcmcgw%}>-&5T6AUTm)87E^4wG5;aCX7leeEWnI)pToe|r-MTH<$bO_PF(xM7JbCc% z@NQx}dDNT#fJYNA9=vhGdF^}cZt44IveM1;ee^feU#IitP50WW;nZK;%g*Gxk2`bS zV>X(lowwXgPQ%nb8=UXZ4}w1y(iJJ+!KJ!;%|a80a{trGJ{L)q8rq$24J4e(vE96 zo3ENKfi>0MTat>H{!i3V;dAy$2g=str&APKYCk zMi?StG^r{?YgVe!6mR&95ERK?6s*@p<~Xw6$$ITPicn`&r#t?DsAI8J zMt=>6d39BDr^V@v3MX1K_LS2~a=fpjpU#Rn#Vb=0sq|5`kj#o~(StHp@qco9%1o5A uh6K!Fb#_lViE_g^6;4q(-&0=8g4oKc@M2#LJ!K`z@WWzOCq7O@#Qp)wi>$f; literal 0 HcmV?d00001 diff --git a/lib/steam/public/steam/matchmakingtypes.h b/lib/steam/public/steam/matchmakingtypes.h new file mode 100644 index 0000000..6446a57 --- /dev/null +++ b/lib/steam/public/steam/matchmakingtypes.h @@ -0,0 +1,251 @@ +//========= Copyright � 1996-2008, Valve LLC, All rights reserved. ============ +// +// Purpose: +// +// $NoKeywords: $ +//============================================================================= + +#ifndef MATCHMAKINGTYPES_H +#define MATCHMAKINGTYPES_H + +#ifdef _WIN32 +#pragma once +#endif + +#ifdef POSIX +#ifndef _snprintf +#define _snprintf snprintf +#endif +#endif + +#include +#include + +// +// Max size (in bytes of UTF-8 data, not in characters) of server fields, including null terminator. +// WARNING: These cannot be changed easily, without breaking clients using old interfaces. +// +const int k_cbMaxGameServerGameDir = 32; +const int k_cbMaxGameServerMapName = 32; +const int k_cbMaxGameServerGameDescription = 64; +const int k_cbMaxGameServerName = 64; +const int k_cbMaxGameServerTags = 128; +const int k_cbMaxGameServerGameData = 2048; + +/// Store key/value pair used in matchmaking queries. +/// +/// Actually, the name Key/Value is a bit misleading. The "key" is better +/// understood as "filter operation code" and the "value" is the operand to this +/// filter operation. The meaning of the operand depends upon the filter. +struct MatchMakingKeyValuePair_t +{ + MatchMakingKeyValuePair_t() { m_szKey[0] = m_szValue[0] = 0; } + MatchMakingKeyValuePair_t( const char *pchKey, const char *pchValue ) + { + strncpy( m_szKey, pchKey, sizeof(m_szKey) ); // this is a public header, use basic c library string funcs only! + m_szKey[ sizeof( m_szKey ) - 1 ] = '\0'; + strncpy( m_szValue, pchValue, sizeof(m_szValue) ); + m_szValue[ sizeof( m_szValue ) - 1 ] = '\0'; + } + char m_szKey[ 256 ]; + char m_szValue[ 256 ]; +}; + + +enum EMatchMakingServerResponse +{ + eServerResponded = 0, + eServerFailedToRespond, + eNoServersListedOnMasterServer // for the Internet query type, returned in response callback if no servers of this type match +}; + +// servernetadr_t is all the addressing info the serverbrowser needs to know about a game server, +// namely: its IP, its connection port, and its query port. +class servernetadr_t +{ +public: + + servernetadr_t() : m_usConnectionPort( 0 ), m_usQueryPort( 0 ), m_unIP( 0 ) {} + + void Init( unsigned int ip, uint16 usQueryPort, uint16 usConnectionPort ); +#ifdef NETADR_H + netadr_t GetIPAndQueryPort(); +#endif + + // Access the query port. + uint16 GetQueryPort() const; + void SetQueryPort( uint16 usPort ); + + // Access the connection port. + uint16 GetConnectionPort() const; + void SetConnectionPort( uint16 usPort ); + + // Access the IP + uint32 GetIP() const; + void SetIP( uint32 unIP ); + + // This gets the 'a.b.c.d:port' string with the connection port (instead of the query port). + const char *GetConnectionAddressString() const; + const char *GetQueryAddressString() const; + + // Comparison operators and functions. + bool operator<(const servernetadr_t &netadr) const; + void operator=( const servernetadr_t &that ) + { + m_usConnectionPort = that.m_usConnectionPort; + m_usQueryPort = that.m_usQueryPort; + m_unIP = that.m_unIP; + } + + +private: + const char *ToString( uint32 unIP, uint16 usPort ) const; + uint16 m_usConnectionPort; // (in HOST byte order) + uint16 m_usQueryPort; + uint32 m_unIP; +}; + + +inline void servernetadr_t::Init( unsigned int ip, uint16 usQueryPort, uint16 usConnectionPort ) +{ + m_unIP = ip; + m_usQueryPort = usQueryPort; + m_usConnectionPort = usConnectionPort; +} + +#ifdef NETADR_H +inline netadr_t servernetadr_t::GetIPAndQueryPort() +{ + return netadr_t( m_unIP, m_usQueryPort ); +} +#endif + +inline uint16 servernetadr_t::GetQueryPort() const +{ + return m_usQueryPort; +} + +inline void servernetadr_t::SetQueryPort( uint16 usPort ) +{ + m_usQueryPort = usPort; +} + +inline uint16 servernetadr_t::GetConnectionPort() const +{ + return m_usConnectionPort; +} + +inline void servernetadr_t::SetConnectionPort( uint16 usPort ) +{ + m_usConnectionPort = usPort; +} + +inline uint32 servernetadr_t::GetIP() const +{ + return m_unIP; +} + +inline void servernetadr_t::SetIP( uint32 unIP ) +{ + m_unIP = unIP; +} + +inline const char *servernetadr_t::ToString( uint32 unIP, uint16 usPort ) const +{ + static char s[4][64]; + static int nBuf = 0; + unsigned char *ipByte = (unsigned char *)&unIP; +#ifdef VALVE_BIG_ENDIAN + _snprintf (s[nBuf], sizeof( s[nBuf] ), "%u.%u.%u.%u:%i", (int)(ipByte[0]), (int)(ipByte[1]), (int)(ipByte[2]), (int)(ipByte[3]), usPort ); +#else + _snprintf (s[nBuf], sizeof( s[nBuf] ), "%u.%u.%u.%u:%i", (int)(ipByte[3]), (int)(ipByte[2]), (int)(ipByte[1]), (int)(ipByte[0]), usPort ); +#endif + const char *pchRet = s[nBuf]; + ++nBuf; + nBuf %= ( (sizeof(s)/sizeof(s[0])) ); + return pchRet; +} + +inline const char* servernetadr_t::GetConnectionAddressString() const +{ + return ToString( m_unIP, m_usConnectionPort ); +} + +inline const char* servernetadr_t::GetQueryAddressString() const +{ + return ToString( m_unIP, m_usQueryPort ); +} + +inline bool servernetadr_t::operator<(const servernetadr_t &netadr) const +{ + return ( m_unIP < netadr.m_unIP ) || ( m_unIP == netadr.m_unIP && m_usQueryPort < netadr.m_usQueryPort ); +} + +//----------------------------------------------------------------------------- +// Purpose: Data describing a single server +//----------------------------------------------------------------------------- +class gameserveritem_t +{ +public: + gameserveritem_t(); + + const char* GetName() const; + void SetName( const char *pName ); + +public: + servernetadr_t m_NetAdr; ///< IP/Query Port/Connection Port for this server + int m_nPing; ///< current ping time in milliseconds + bool m_bHadSuccessfulResponse; ///< server has responded successfully in the past + bool m_bDoNotRefresh; ///< server is marked as not responding and should no longer be refreshed + char m_szGameDir[k_cbMaxGameServerGameDir]; ///< current game directory + char m_szMap[k_cbMaxGameServerMapName]; ///< current map + char m_szGameDescription[k_cbMaxGameServerGameDescription]; ///< game description + uint32 m_nAppID; ///< Steam App ID of this server + int m_nPlayers; ///< total number of players currently on the server. INCLUDES BOTS!! + int m_nMaxPlayers; ///< Maximum players that can join this server + int m_nBotPlayers; ///< Number of bots (i.e simulated players) on this server + bool m_bPassword; ///< true if this server needs a password to join + bool m_bSecure; ///< Is this server protected by VAC + uint32 m_ulTimeLastPlayed; ///< time (in unix time) when this server was last played on (for favorite/history servers) + int m_nServerVersion; ///< server version as reported to Steam + +private: + + /// Game server name + char m_szServerName[k_cbMaxGameServerName]; + + // For data added after SteamMatchMaking001 add it here +public: + /// the tags this server exposes + char m_szGameTags[k_cbMaxGameServerTags]; + + /// steamID of the game server - invalid if it's doesn't have one (old server, or not connected to Steam) + CSteamID m_steamID; +}; + + +inline gameserveritem_t::gameserveritem_t() +{ + m_szGameDir[0] = m_szMap[0] = m_szGameDescription[0] = m_szServerName[0] = 0; + m_bHadSuccessfulResponse = m_bDoNotRefresh = m_bPassword = m_bSecure = false; + m_nPing = m_nAppID = m_nPlayers = m_nMaxPlayers = m_nBotPlayers = m_ulTimeLastPlayed = m_nServerVersion = 0; + m_szGameTags[0] = 0; +} + +inline const char* gameserveritem_t::GetName() const +{ + // Use the IP address as the name if nothing is set yet. + if ( m_szServerName[0] == 0 ) + return m_NetAdr.GetConnectionAddressString(); + else + return m_szServerName; +} + +inline void gameserveritem_t::SetName( const char *pName ) +{ + strncpy( m_szServerName, pName, sizeof( m_szServerName ) ); + m_szServerName[ sizeof( m_szServerName ) - 1 ] = '\0'; +} + + +#endif // MATCHMAKINGTYPES_H diff --git a/lib/steam/public/steam/steam_api.h b/lib/steam/public/steam/steam_api.h new file mode 100644 index 0000000..9cac78f --- /dev/null +++ b/lib/steam/public/steam/steam_api.h @@ -0,0 +1,297 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== +// +// This header includes *all* of the interfaces and callback structures +// in the Steamworks SDK, and some high level functions to control the SDK +// (init, shutdown, etc) that you probably only need in one or two files. +// +// To save your compile times, we recommend that you not include this file +// in header files. Instead, include the specific headers for the interfaces +// and callback structures you need. The one file you might consider including +// in your precompiled header (e.g. stdafx.h) is steam_api_common.h +// +//============================================================================= + +#ifndef STEAM_API_H +#define STEAM_API_H +#ifdef _WIN32 +#pragma once +#endif + +// Basic stuff +#include "steam_api_common.h" + +// All of the interfaces +#include "isteamclient.h" +#include "isteamuser.h" +#include "isteamfriends.h" +#include "isteamutils.h" +#include "isteammatchmaking.h" +#include "isteamuserstats.h" +#include "isteamapps.h" +#include "isteamnetworking.h" +#include "isteamremotestorage.h" +#include "isteamscreenshots.h" +#include "isteammusic.h" +#include "isteammusicremote.h" +#include "isteamhttp.h" +#include "isteamcontroller.h" +#include "isteamugc.h" +#include "isteamapplist.h" +#include "isteamhtmlsurface.h" +#include "isteaminventory.h" +#include "isteamvideo.h" +#include "isteamparentalsettings.h" +#include "isteaminput.h" +#include "isteamremoteplay.h" +#include "isteamnetworkingmessages.h" +#include "isteamnetworkingsockets.h" +#include "isteamnetworkingutils.h" + + +//----------------------------------------------------------------------------------------------------------------------------------------------------------// +// Steam API setup & shutdown +// +// These functions manage loading, initializing and shutdown of the steamclient.dll +// +//----------------------------------------------------------------------------------------------------------------------------------------------------------// + + +// SteamAPI_Init must be called before using any other API functions. If it fails, an +// error message will be output to the debugger (or stderr) with further information. +S_API bool S_CALLTYPE SteamAPI_Init(); + +// SteamAPI_Shutdown should be called during process shutdown if possible. +S_API void S_CALLTYPE SteamAPI_Shutdown(); + +// SteamAPI_RestartAppIfNecessary ensures that your executable was launched through Steam. +// +// Returns true if the current process should terminate. Steam is now re-launching your application. +// +// Returns false if no action needs to be taken. This means that your executable was started through +// the Steam client, or a steam_appid.txt file is present in your game's directory (for development). +// Your current process should continue if false is returned. +// +// NOTE: If you use the Steam DRM wrapper on your primary executable file, this check is unnecessary +// since the DRM wrapper will ensure that your application was launched properly through Steam. +S_API bool S_CALLTYPE SteamAPI_RestartAppIfNecessary( uint32 unOwnAppID ); + +// Many Steam API functions allocate a small amount of thread-local memory for parameter storage. +// SteamAPI_ReleaseCurrentThreadMemory() will free API memory associated with the calling thread. +// This function is also called automatically by SteamAPI_RunCallbacks(), so a single-threaded +// program never needs to explicitly call this function. +S_API void S_CALLTYPE SteamAPI_ReleaseCurrentThreadMemory(); + + +// crash dump recording functions +S_API void S_CALLTYPE SteamAPI_WriteMiniDump( uint32 uStructuredExceptionCode, void* pvExceptionInfo, uint32 uBuildID ); +S_API void S_CALLTYPE SteamAPI_SetMiniDumpComment( const char *pchMsg ); + +//----------------------------------------------------------------------------------------------------------------------------------------------------------// +// steamclient.dll private wrapper functions +// +// The following functions are part of abstracting API access to the steamclient.dll, but should only be used in very specific cases +//----------------------------------------------------------------------------------------------------------------------------------------------------------// + +// SteamAPI_IsSteamRunning() returns true if Steam is currently running +S_API bool S_CALLTYPE SteamAPI_IsSteamRunning(); + +// returns the filename path of the current running Steam process, used if you need to load an explicit steam dll by name. +// DEPRECATED - implementation is Windows only, and the path returned is a UTF-8 string which must be converted to UTF-16 for use with Win32 APIs +S_API const char *SteamAPI_GetSteamInstallPath(); + +// sets whether or not Steam_RunCallbacks() should do a try {} catch (...) {} around calls to issuing callbacks +// This is ignored if you are using the manual callback dispatch method +S_API void SteamAPI_SetTryCatchCallbacks( bool bTryCatchCallbacks ); + +#if defined( VERSION_SAFE_STEAM_API_INTERFACES ) +// exists only for backwards compat with code written against older SDKs +S_API bool S_CALLTYPE SteamAPI_InitSafe(); +#endif + +#if defined(USE_BREAKPAD_HANDLER) || defined(STEAM_API_EXPORTS) +// this should be called before the game initialized the steam APIs +// pchDate should be of the format "Mmm dd yyyy" (such as from the __ DATE __ macro ) +// pchTime should be of the format "hh:mm:ss" (such as from the __ TIME __ macro ) +// bFullMemoryDumps (Win32 only) -- writes out a uuid-full.dmp in the client/dumps folder +// pvContext-- can be NULL, will be the void * context passed into m_pfnPreMinidumpCallback +// PFNPreMinidumpCallback m_pfnPreMinidumpCallback -- optional callback which occurs just before a .dmp file is written during a crash. Applications can hook this to allow adding additional information into the .dmp comment stream. +S_API void S_CALLTYPE SteamAPI_UseBreakpadCrashHandler( char const *pchVersion, char const *pchDate, char const *pchTime, bool bFullMemoryDumps, void *pvContext, PFNPreMinidumpCallback m_pfnPreMinidumpCallback ); +S_API void S_CALLTYPE SteamAPI_SetBreakpadAppID( uint32 unAppID ); +#endif + +//----------------------------------------------------------------------------------------------------------------------------------------------------------// +// +// Manual callback loop +// +// An alternative method for dispatching callbacks. Similar to a windows message loop. +// +// If you use the manual callback dispatch, you must NOT use: +// +// - SteamAPI_RunCallbacks or SteamGameServer_RunCallbacks +// - STEAM_CALLBACK, CCallResult, CCallback, or CCallbackManual +// +// Here is the basic template for replacing SteamAPI_RunCallbacks() with manual dispatch +/* + + HSteamPipe hSteamPipe = SteamAPI_GetHSteamPipe(); // See also SteamGameServer_GetHSteamPipe() + SteamAPI_ManualDispatch_RunFrame( hSteamPipe ) + CallbackMsg_t callback; + while ( SteamAPI_ManualDispatch_GetNextCallback( hSteamPipe, &callback ) ) + { + // Check for dispatching API call results + if ( callback.m_iCallback == SteamAPICallCompleted_t::k_iCallback ) + { + SteamAPICallCompleted_t *pCallCompleted = (SteamAPICallCompleted_t *)callback. + void *pTmpCallResult = malloc( pCallback->m_cubParam ); + bool bFailed; + if ( SteamAPI_ManualDispatch_GetAPICallResult( hSteamPipe, pCallCompleted->m_hAsyncCall, pTmpCallResult, pCallback->m_cubParam, pCallback->m_iCallback, &bFailed ) ) + { + // Dispatch the call result to the registered handler(s) for the + // call identified by pCallCompleted->m_hAsyncCall + } + free( pTmpCallResult ); + } + else + { + // Look at callback.m_iCallback to see what kind of callback it is, + // and dispatch to appropriate handler(s) + } + SteamAPI_ManualDispatch_FreeLastCallback( hSteamPipe ); + } + +*/ +//----------------------------------------------------------------------------------------------------------------------------------------------------------// + +/// Inform the API that you wish to use manual event dispatch. This must be called after SteamAPI_Init, but before +/// you use any of the other manual dispatch functions below. +S_API void S_CALLTYPE SteamAPI_ManualDispatch_Init(); + +/// Perform certain periodic actions that need to be performed. +S_API void S_CALLTYPE SteamAPI_ManualDispatch_RunFrame( HSteamPipe hSteamPipe ); + +/// Fetch the next pending callback on the given pipe, if any. If a callback is available, true is returned +/// and the structure is populated. In this case, you MUST call SteamAPI_ManualDispatch_FreeLastCallback +/// (after dispatching the callback) before calling SteamAPI_ManualDispatch_GetNextCallback again. +S_API bool S_CALLTYPE SteamAPI_ManualDispatch_GetNextCallback( HSteamPipe hSteamPipe, CallbackMsg_t *pCallbackMsg ); + +/// You must call this after dispatching the callback, if SteamAPI_ManualDispatch_GetNextCallback returns true. +S_API void S_CALLTYPE SteamAPI_ManualDispatch_FreeLastCallback( HSteamPipe hSteamPipe ); + +/// Return the call result for the specified call on the specified pipe. You really should +/// only call this in a handler for SteamAPICallCompleted_t callback. +S_API bool S_CALLTYPE SteamAPI_ManualDispatch_GetAPICallResult( HSteamPipe hSteamPipe, SteamAPICall_t hSteamAPICall, void *pCallback, int cubCallback, int iCallbackExpected, bool *pbFailed ); + +//----------------------------------------------------------------------------------------------------------------------------------------------------------// +// +// CSteamAPIContext +// +// Deprecated! This is not necessary any more. Please use the global accessors directly +// +//----------------------------------------------------------------------------------------------------------------------------------------------------------// + +#ifndef STEAM_API_EXPORTS + +inline bool CSteamAPIContext::Init() +{ + m_pSteamClient = ::SteamClient(); + if ( !m_pSteamClient ) + return false; + + m_pSteamUser = ::SteamUser(); + if ( !m_pSteamUser ) + return false; + + m_pSteamFriends = ::SteamFriends(); + if ( !m_pSteamFriends ) + return false; + + m_pSteamUtils = ::SteamUtils(); + if ( !m_pSteamUtils ) + return false; + + m_pSteamMatchmaking = ::SteamMatchmaking(); + if ( !m_pSteamMatchmaking ) + return false; + + m_pSteamGameSearch = ::SteamGameSearch(); + if ( !m_pSteamGameSearch ) + return false; + +#if !defined( IOSALL) // Not yet supported on iOS. + m_pSteamMatchmakingServers = ::SteamMatchmakingServers(); + if ( !m_pSteamMatchmakingServers ) + return false; +#endif + + m_pSteamUserStats = ::SteamUserStats(); + if ( !m_pSteamUserStats ) + return false; + + m_pSteamApps = ::SteamApps(); + if ( !m_pSteamApps ) + return false; + + m_pSteamNetworking = ::SteamNetworking(); + if ( !m_pSteamNetworking ) + return false; + + m_pSteamRemoteStorage = ::SteamRemoteStorage(); + if ( !m_pSteamRemoteStorage ) + return false; + + m_pSteamScreenshots = ::SteamScreenshots(); + if ( !m_pSteamScreenshots ) + return false; + + m_pSteamHTTP = ::SteamHTTP(); + if ( !m_pSteamHTTP ) + return false; + + m_pController = ::SteamController(); + if ( !m_pController ) + return false; + + m_pSteamUGC = ::SteamUGC(); + if ( !m_pSteamUGC ) + return false; + + m_pSteamAppList = ::SteamAppList(); + if ( !m_pSteamAppList ) + return false; + + m_pSteamMusic = ::SteamMusic(); + if ( !m_pSteamMusic ) + return false; + + m_pSteamMusicRemote = ::SteamMusicRemote(); + if ( !m_pSteamMusicRemote ) + return false; + +#if !defined( ANDROID ) && !defined( IOSALL) // Not yet supported on Android or ios. + m_pSteamHTMLSurface = ::SteamHTMLSurface(); + if ( !m_pSteamHTMLSurface ) + return false; +#endif + + m_pSteamInventory = ::SteamInventory(); + if ( !m_pSteamInventory ) + return false; + + m_pSteamVideo = ::SteamVideo(); + if ( !m_pSteamVideo ) + return false; + + m_pSteamParentalSettings = ::SteamParentalSettings(); + if ( !m_pSteamParentalSettings ) + return false; + + m_pSteamInput = ::SteamInput(); + if ( !m_pSteamInput ) + return false; + + return true; +} + +#endif + +#endif // STEAM_API_H diff --git a/lib/steam/public/steam/steam_api.json b/lib/steam/public/steam/steam_api.json new file mode 100644 index 0000000..20a25c6 --- /dev/null +++ b/lib/steam/public/steam/steam_api.json @@ -0,0 +1,13499 @@ +{ + "callback_structs": [ + { + "callback_id": 101, + "fields": [], + "struct": "SteamServersConnected_t" + }, + { + "callback_id": 102, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_bStillRetrying", "fieldtype":"bool" } + ], + "struct": "SteamServerConnectFailure_t" + }, + { + "callback_id": 103, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "SteamServersDisconnected_t" + }, + { + "callback_id": 113, + "fields": [ + { "fieldname":"m_uAppID", "fieldtype":"uint32" }, + { "fieldname":"m_unGameServerIP", "fieldtype":"uint32" }, + { "fieldname":"m_usGameServerPort", "fieldtype":"uint16" }, + { "fieldname":"m_bSecure", "fieldtype":"uint16" }, + { "fieldname":"m_uReason", "fieldtype":"uint32" } + ], + "struct": "ClientGameServerDeny_t" + }, + { + "callback_id": 117, + "enums": [ + { + "enumname": "EFailureType", + "fqname": "IPCFailure_t::EFailureType", + "values": [ + { "name":"k_EFailureFlushedCallbackQueue", "value":"0" }, + { "name":"k_EFailurePipeFail", "value":"1" } + ] + } + ], + "fields": [ + { "fieldname":"m_eFailureType", "fieldtype":"uint8" } + ], + "struct": "IPCFailure_t" + }, + { + "callback_id": 125, + "fields": [], + "struct": "LicensesUpdated_t" + }, + { + "callback_id": 143, + "fields": [ + { "fieldname":"m_SteamID", "fieldtype":"CSteamID" }, + { "fieldname":"m_eAuthSessionResponse", "fieldtype":"EAuthSessionResponse" }, + { "fieldname":"m_OwnerSteamID", "fieldtype":"CSteamID" } + ], + "struct": "ValidateAuthTicketResponse_t" + }, + { + "callback_id": 152, + "fields": [ + { "fieldname":"m_unAppID", "fieldtype":"uint32" }, + { "fieldname":"m_ulOrderID", "fieldtype":"uint64" }, + { "fieldname":"m_bAuthorized", "fieldtype":"uint8" } + ], + "struct": "MicroTxnAuthorizationResponse_t" + }, + { + "callback_id": 154, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "EncryptedAppTicketResponse_t" + }, + { + "callback_id": 163, + "fields": [ + { "fieldname":"m_hAuthTicket", "fieldtype":"HAuthTicket" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "GetAuthSessionTicketResponse_t" + }, + { + "callback_id": 164, + "fields": [ + { "fieldname":"m_szURL", "fieldtype":"char [256]" } + ], + "struct": "GameWebCallback_t" + }, + { + "callback_id": 165, + "fields": [ + { "fieldname":"m_szURL", "fieldtype":"char [512]" } + ], + "struct": "StoreAuthURLResponse_t" + }, + { + "callback_id": 166, + "fields": [ + { "fieldname":"m_bAllowed", "fieldtype":"bool" }, + { "fieldname":"m_eNotAllowedReason", "fieldtype":"EMarketNotAllowedReasonFlags" }, + { "fieldname":"m_rtAllowedAtTime", "fieldtype":"RTime32" }, + { "fieldname":"m_cdaySteamGuardRequiredDays", "fieldtype":"int" }, + { "fieldname":"m_cdayNewDeviceCooldown", "fieldtype":"int" } + ], + "struct": "MarketEligibilityResponse_t" + }, + { + "callback_id": 167, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_appid", "fieldtype":"AppId_t" }, + { "fieldname":"m_bApplicable", "fieldtype":"bool" }, + { "fieldname":"m_csecsLast5h", "fieldtype":"int32" }, + { "fieldname":"m_progress", "fieldtype":"EDurationControlProgress" }, + { "fieldname":"m_notification", "fieldtype":"EDurationControlNotification" }, + { "fieldname":"m_csecsToday", "fieldtype":"int32" }, + { "fieldname":"m_csecsRemaining", "fieldtype":"int32" } + ], + "struct": "DurationControl_t" + }, + { + "callback_id": 304, + "fields": [ + { "fieldname":"m_ulSteamID", "fieldtype":"uint64" }, + { "fieldname":"m_nChangeFlags", "fieldtype":"int" } + ], + "struct": "PersonaStateChange_t" + }, + { + "callback_id": 331, + "fields": [ + { "fieldname":"m_bActive", "fieldtype":"uint8" } + ], + "struct": "GameOverlayActivated_t" + }, + { + "callback_id": 332, + "fields": [ + { "fieldname":"m_rgchServer", "fieldtype":"char [64]" }, + { "fieldname":"m_rgchPassword", "fieldtype":"char [64]" } + ], + "struct": "GameServerChangeRequested_t" + }, + { + "callback_id": 333, + "fields": [ + { "fieldname":"m_steamIDLobby", "fieldtype":"CSteamID" }, + { "fieldname":"m_steamIDFriend", "fieldtype":"CSteamID" } + ], + "struct": "GameLobbyJoinRequested_t" + }, + { + "callback_id": 334, + "fields": [ + { "fieldname":"m_steamID", "fieldtype":"CSteamID" }, + { "fieldname":"m_iImage", "fieldtype":"int" }, + { "fieldname":"m_iWide", "fieldtype":"int" }, + { "fieldname":"m_iTall", "fieldtype":"int" } + ], + "struct": "AvatarImageLoaded_t" + }, + { + "callback_id": 335, + "fields": [ + { "fieldname":"m_steamIDClan", "fieldtype":"CSteamID" }, + { "fieldname":"m_cOfficers", "fieldtype":"int" }, + { "fieldname":"m_bSuccess", "fieldtype":"uint8" } + ], + "struct": "ClanOfficerListResponse_t" + }, + { + "callback_id": 336, + "fields": [ + { "fieldname":"m_steamIDFriend", "fieldtype":"CSteamID" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" } + ], + "struct": "FriendRichPresenceUpdate_t" + }, + { + "callback_id": 337, + "fields": [ + { "fieldname":"m_steamIDFriend", "fieldtype":"CSteamID" }, + { "fieldname":"m_rgchConnect", "fieldtype":"char [256]" } + ], + "struct": "GameRichPresenceJoinRequested_t" + }, + { + "callback_id": 338, + "fields": [ + { "fieldname":"m_steamIDClanChat", "fieldtype":"CSteamID" }, + { "fieldname":"m_steamIDUser", "fieldtype":"CSteamID" }, + { "fieldname":"m_iMessageID", "fieldtype":"int" } + ], + "struct": "GameConnectedClanChatMsg_t" + }, + { + "callback_id": 339, + "fields": [ + { "fieldname":"m_steamIDClanChat", "fieldtype":"CSteamID" }, + { "fieldname":"m_steamIDUser", "fieldtype":"CSteamID" } + ], + "struct": "GameConnectedChatJoin_t" + }, + { + "callback_id": 340, + "fields": [ + { "fieldname":"m_steamIDClanChat", "fieldtype":"CSteamID" }, + { "fieldname":"m_steamIDUser", "fieldtype":"CSteamID" }, + { "fieldname":"m_bKicked", "fieldtype":"bool" }, + { "fieldname":"m_bDropped", "fieldtype":"bool" } + ], + "struct": "GameConnectedChatLeave_t" + }, + { + "callback_id": 341, + "fields": [ + { "fieldname":"m_bSuccess", "fieldtype":"bool" } + ], + "struct": "DownloadClanActivityCountsResult_t" + }, + { + "callback_id": 342, + "fields": [ + { "fieldname":"m_steamIDClanChat", "fieldtype":"CSteamID" }, + { "fieldname":"m_eChatRoomEnterResponse", "fieldtype":"EChatRoomEnterResponse" } + ], + "struct": "JoinClanChatRoomCompletionResult_t" + }, + { + "callback_id": 343, + "fields": [ + { "fieldname":"m_steamIDUser", "fieldtype":"CSteamID" }, + { "fieldname":"m_iMessageID", "fieldtype":"int" } + ], + "struct": "GameConnectedFriendChatMsg_t" + }, + { + "callback_id": 344, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_steamID", "fieldtype":"CSteamID" }, + { "fieldname":"m_nCount", "fieldtype":"int" } + ], + "struct": "FriendsGetFollowerCount_t" + }, + { + "callback_id": 345, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_steamID", "fieldtype":"CSteamID" }, + { "fieldname":"m_bIsFollowing", "fieldtype":"bool" } + ], + "struct": "FriendsIsFollowing_t" + }, + { + "callback_id": 346, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_rgSteamID", "fieldtype":"CSteamID [50]" }, + { "fieldname":"m_nResultsReturned", "fieldtype":"int32" }, + { "fieldname":"m_nTotalResultCount", "fieldtype":"int32" } + ], + "struct": "FriendsEnumerateFollowingList_t" + }, + { + "callback_id": 347, + "fields": [ + { "fieldname":"m_bSuccess", "fieldtype":"bool" }, + { "fieldname":"m_bLocalSuccess", "fieldtype":"bool" }, + { "fieldname":"m_result", "fieldtype":"EResult" } + ], + "struct": "SetPersonaNameResponse_t" + }, + { + "callback_id": 348, + "fields": [], + "struct": "UnreadChatMessagesChanged_t" + }, + { + "callback_id": 349, + "fields": [ + { "fieldname":"rgchURI", "fieldtype":"char [1024]" } + ], + "struct": "OverlayBrowserProtocolNavigation_t" + }, + { + "callback_id": 701, + "fields": [], + "struct": "IPCountry_t" + }, + { + "callback_id": 702, + "fields": [ + { "fieldname":"m_nMinutesBatteryLeft", "fieldtype":"uint8" } + ], + "struct": "LowBatteryPower_t" + }, + { + "callback_id": 703, + "fields": [ + { "fieldname":"m_hAsyncCall", "fieldtype":"SteamAPICall_t" }, + { "fieldname":"m_iCallback", "fieldtype":"int" }, + { "fieldname":"m_cubParam", "fieldtype":"uint32" } + ], + "struct": "SteamAPICallCompleted_t" + }, + { + "callback_id": 704, + "fields": [], + "struct": "SteamShutdown_t" + }, + { + "callback_id": 705, + "fields": [ + { "fieldname":"m_eCheckFileSignature", "fieldtype":"ECheckFileSignature" } + ], + "struct": "CheckFileSignature_t" + }, + { + "callback_id": 714, + "fields": [ + { "fieldname":"m_bSubmitted", "fieldtype":"bool" }, + { "fieldname":"m_unSubmittedText", "fieldtype":"uint32" } + ], + "struct": "GamepadTextInputDismissed_t" + }, + { + "callback_id": 502, + "fields": [ + { "fieldname":"m_nIP", "fieldtype":"uint32" }, + { "fieldname":"m_nQueryPort", "fieldtype":"uint32" }, + { "fieldname":"m_nConnPort", "fieldtype":"uint32" }, + { "fieldname":"m_nAppID", "fieldtype":"uint32" }, + { "fieldname":"m_nFlags", "fieldtype":"uint32" }, + { "fieldname":"m_bAdd", "fieldtype":"bool" }, + { "fieldname":"m_unAccountId", "fieldtype":"AccountID_t" } + ], + "struct": "FavoritesListChanged_t" + }, + { + "callback_id": 503, + "fields": [ + { "fieldname":"m_ulSteamIDUser", "fieldtype":"uint64" }, + { "fieldname":"m_ulSteamIDLobby", "fieldtype":"uint64" }, + { "fieldname":"m_ulGameID", "fieldtype":"uint64" } + ], + "struct": "LobbyInvite_t" + }, + { + "callback_id": 504, + "fields": [ + { "fieldname":"m_ulSteamIDLobby", "fieldtype":"uint64" }, + { "fieldname":"m_rgfChatPermissions", "fieldtype":"uint32" }, + { "fieldname":"m_bLocked", "fieldtype":"bool" }, + { "fieldname":"m_EChatRoomEnterResponse", "fieldtype":"uint32" } + ], + "struct": "LobbyEnter_t" + }, + { + "callback_id": 505, + "fields": [ + { "fieldname":"m_ulSteamIDLobby", "fieldtype":"uint64" }, + { "fieldname":"m_ulSteamIDMember", "fieldtype":"uint64" }, + { "fieldname":"m_bSuccess", "fieldtype":"uint8" } + ], + "struct": "LobbyDataUpdate_t" + }, + { + "callback_id": 506, + "fields": [ + { "fieldname":"m_ulSteamIDLobby", "fieldtype":"uint64" }, + { "fieldname":"m_ulSteamIDUserChanged", "fieldtype":"uint64" }, + { "fieldname":"m_ulSteamIDMakingChange", "fieldtype":"uint64" }, + { "fieldname":"m_rgfChatMemberStateChange", "fieldtype":"uint32" } + ], + "struct": "LobbyChatUpdate_t" + }, + { + "callback_id": 507, + "fields": [ + { "fieldname":"m_ulSteamIDLobby", "fieldtype":"uint64" }, + { "fieldname":"m_ulSteamIDUser", "fieldtype":"uint64" }, + { "fieldname":"m_eChatEntryType", "fieldtype":"uint8" }, + { "fieldname":"m_iChatID", "fieldtype":"uint32" } + ], + "struct": "LobbyChatMsg_t" + }, + { + "callback_id": 509, + "fields": [ + { "fieldname":"m_ulSteamIDLobby", "fieldtype":"uint64" }, + { "fieldname":"m_ulSteamIDGameServer", "fieldtype":"uint64" }, + { "fieldname":"m_unIP", "fieldtype":"uint32" }, + { "fieldname":"m_usPort", "fieldtype":"uint16" } + ], + "struct": "LobbyGameCreated_t" + }, + { + "callback_id": 510, + "fields": [ + { "fieldname":"m_nLobbiesMatching", "fieldtype":"uint32" } + ], + "struct": "LobbyMatchList_t" + }, + { + "callback_id": 512, + "fields": [ + { "fieldname":"m_ulSteamIDLobby", "fieldtype":"uint64" }, + { "fieldname":"m_ulSteamIDAdmin", "fieldtype":"uint64" }, + { "fieldname":"m_bKickedDueToDisconnect", "fieldtype":"uint8" } + ], + "struct": "LobbyKicked_t" + }, + { + "callback_id": 513, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_ulSteamIDLobby", "fieldtype":"uint64" } + ], + "struct": "LobbyCreated_t" + }, + { + "callback_id": 515, + "fields": [ + { "fieldname":"m_bGameBootInviteExists", "fieldtype":"bool" }, + { "fieldname":"m_steamIDLobby", "fieldtype":"CSteamID" } + ], + "struct": "PSNGameBootInviteResult_t" + }, + { + "callback_id": 516, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "FavoritesListAccountsUpdated_t" + }, + { + "callback_id": 5201, + "fields": [ + { "fieldname":"m_ullSearchID", "fieldtype":"uint64" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_lobbyID", "fieldtype":"CSteamID" }, + { "fieldname":"m_steamIDEndedSearch", "fieldtype":"CSteamID" }, + { "fieldname":"m_nSecondsRemainingEstimate", "fieldtype":"int32" }, + { "fieldname":"m_cPlayersSearching", "fieldtype":"int32" } + ], + "struct": "SearchForGameProgressCallback_t" + }, + { + "callback_id": 5202, + "fields": [ + { "fieldname":"m_ullSearchID", "fieldtype":"uint64" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nCountPlayersInGame", "fieldtype":"int32" }, + { "fieldname":"m_nCountAcceptedGame", "fieldtype":"int32" }, + { "fieldname":"m_steamIDHost", "fieldtype":"CSteamID" }, + { "fieldname":"m_bFinalCallback", "fieldtype":"bool" } + ], + "struct": "SearchForGameResultCallback_t" + }, + { + "callback_id": 5211, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_ullSearchID", "fieldtype":"uint64" } + ], + "struct": "RequestPlayersForGameProgressCallback_t" + }, + { + "callback_id": 5212, + "enums": [ + { + "enumname": "PlayerAcceptState_t", + "fqname": "RequestPlayersForGameResultCallback_t::PlayerAcceptState_t", + "values": [ + { "name":"k_EStateUnknown", "value":"0" }, + { "name":"k_EStatePlayerAccepted", "value":"1" }, + { "name":"k_EStatePlayerDeclined", "value":"2" } + ] + } + ], + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_ullSearchID", "fieldtype":"uint64" }, + { "fieldname":"m_SteamIDPlayerFound", "fieldtype":"CSteamID" }, + { "fieldname":"m_SteamIDLobby", "fieldtype":"CSteamID" }, + { "fieldname":"m_ePlayerAcceptState", "fieldtype":"RequestPlayersForGameResultCallback_t::PlayerAcceptState_t" }, + { "fieldname":"m_nPlayerIndex", "fieldtype":"int32" }, + { "fieldname":"m_nTotalPlayersFound", "fieldtype":"int32" }, + { "fieldname":"m_nTotalPlayersAcceptedGame", "fieldtype":"int32" }, + { "fieldname":"m_nSuggestedTeamIndex", "fieldtype":"int32" }, + { "fieldname":"m_ullUniqueGameID", "fieldtype":"uint64" } + ], + "struct": "RequestPlayersForGameResultCallback_t" + }, + { + "callback_id": 5213, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_ullSearchID", "fieldtype":"uint64" }, + { "fieldname":"m_ullUniqueGameID", "fieldtype":"uint64" } + ], + "struct": "RequestPlayersForGameFinalResultCallback_t" + }, + { + "callback_id": 5214, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"ullUniqueGameID", "fieldtype":"uint64" }, + { "fieldname":"steamIDPlayer", "fieldtype":"CSteamID" } + ], + "struct": "SubmitPlayerResultResultCallback_t" + }, + { + "callback_id": 5215, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"ullUniqueGameID", "fieldtype":"uint64" } + ], + "struct": "EndGameResultCallback_t" + }, + { + "callback_id": 5301, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_ulBeaconID", "fieldtype":"PartyBeaconID_t" }, + { "fieldname":"m_SteamIDBeaconOwner", "fieldtype":"CSteamID" }, + { "fieldname":"m_rgchConnectString", "fieldtype":"char [256]" } + ], + "struct": "JoinPartyCallback_t" + }, + { + "callback_id": 5302, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_ulBeaconID", "fieldtype":"PartyBeaconID_t" } + ], + "struct": "CreateBeaconCallback_t" + }, + { + "callback_id": 5303, + "fields": [ + { "fieldname":"m_ulBeaconID", "fieldtype":"PartyBeaconID_t" }, + { "fieldname":"m_steamIDJoiner", "fieldtype":"CSteamID" } + ], + "struct": "ReservationNotificationCallback_t" + }, + { + "callback_id": 5304, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "ChangeNumOpenSlotsCallback_t" + }, + { + "callback_id": 5305, + "fields": [], + "struct": "AvailableBeaconLocationsUpdated_t" + }, + { + "callback_id": 5306, + "fields": [], + "struct": "ActiveBeaconsUpdated_t" + }, + { + "callback_id": 1301, + "fields": [ + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_unNumDownloads", "fieldtype":"int" } + ], + "struct": "RemoteStorageAppSyncedClient_t" + }, + { + "callback_id": 1302, + "fields": [ + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_unNumUploads", "fieldtype":"int" } + ], + "struct": "RemoteStorageAppSyncedServer_t" + }, + { + "callback_id": 1303, + "fields": [ + { "fieldname":"m_rgchCurrentFile", "fieldtype":"char [260]" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_uBytesTransferredThisChunk", "fieldtype":"uint32" }, + { "fieldname":"m_dAppPercentComplete", "fieldtype":"double" }, + { "fieldname":"m_bUploading", "fieldtype":"bool" } + ], + "struct": "RemoteStorageAppSyncProgress_t" + }, + { + "callback_id": 1305, + "fields": [ + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "RemoteStorageAppSyncStatusCheck_t" + }, + { + "callback_id": 1307, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_hFile", "fieldtype":"UGCHandle_t" }, + { "fieldname":"m_rgchFilename", "fieldtype":"char [260]" } + ], + "struct": "RemoteStorageFileShareResult_t" + }, + { + "callback_id": 1309, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_bUserNeedsToAcceptWorkshopLegalAgreement", "fieldtype":"bool" } + ], + "struct": "RemoteStoragePublishFileResult_t" + }, + { + "callback_id": 1311, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" } + ], + "struct": "RemoteStorageDeletePublishedFileResult_t" + }, + { + "callback_id": 1312, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nResultsReturned", "fieldtype":"int32" }, + { "fieldname":"m_nTotalResultCount", "fieldtype":"int32" }, + { "fieldname":"m_rgPublishedFileId", "fieldtype":"PublishedFileId_t [50]" } + ], + "struct": "RemoteStorageEnumerateUserPublishedFilesResult_t" + }, + { + "callback_id": 1313, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" } + ], + "struct": "RemoteStorageSubscribePublishedFileResult_t" + }, + { + "callback_id": 1314, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nResultsReturned", "fieldtype":"int32" }, + { "fieldname":"m_nTotalResultCount", "fieldtype":"int32" }, + { "fieldname":"m_rgPublishedFileId", "fieldtype":"PublishedFileId_t [50]" }, + { "fieldname":"m_rgRTimeSubscribed", "fieldtype":"uint32 [50]" } + ], + "struct": "RemoteStorageEnumerateUserSubscribedFilesResult_t" + }, + { + "callback_id": 1315, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" } + ], + "struct": "RemoteStorageUnsubscribePublishedFileResult_t" + }, + { + "callback_id": 1316, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_bUserNeedsToAcceptWorkshopLegalAgreement", "fieldtype":"bool" } + ], + "struct": "RemoteStorageUpdatePublishedFileResult_t" + }, + { + "callback_id": 1317, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_hFile", "fieldtype":"UGCHandle_t" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_nSizeInBytes", "fieldtype":"int32" }, + { "fieldname":"m_pchFileName", "fieldtype":"char [260]" }, + { "fieldname":"m_ulSteamIDOwner", "fieldtype":"uint64" } + ], + "struct": "RemoteStorageDownloadUGCResult_t" + }, + { + "callback_id": 1318, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_nCreatorAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_nConsumerAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_rgchTitle", "fieldtype":"char [129]" }, + { "fieldname":"m_rgchDescription", "fieldtype":"char [8000]" }, + { "fieldname":"m_hFile", "fieldtype":"UGCHandle_t" }, + { "fieldname":"m_hPreviewFile", "fieldtype":"UGCHandle_t" }, + { "fieldname":"m_ulSteamIDOwner", "fieldtype":"uint64" }, + { "fieldname":"m_rtimeCreated", "fieldtype":"uint32" }, + { "fieldname":"m_rtimeUpdated", "fieldtype":"uint32" }, + { "fieldname":"m_eVisibility", "fieldtype":"ERemoteStoragePublishedFileVisibility" }, + { "fieldname":"m_bBanned", "fieldtype":"bool" }, + { "fieldname":"m_rgchTags", "fieldtype":"char [1025]" }, + { "fieldname":"m_bTagsTruncated", "fieldtype":"bool" }, + { "fieldname":"m_pchFileName", "fieldtype":"char [260]" }, + { "fieldname":"m_nFileSize", "fieldtype":"int32" }, + { "fieldname":"m_nPreviewFileSize", "fieldtype":"int32" }, + { "fieldname":"m_rgchURL", "fieldtype":"char [256]" }, + { "fieldname":"m_eFileType", "fieldtype":"EWorkshopFileType" }, + { "fieldname":"m_bAcceptedForUse", "fieldtype":"bool" } + ], + "struct": "RemoteStorageGetPublishedFileDetailsResult_t" + }, + { + "callback_id": 1319, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nResultsReturned", "fieldtype":"int32" }, + { "fieldname":"m_nTotalResultCount", "fieldtype":"int32" }, + { "fieldname":"m_rgPublishedFileId", "fieldtype":"PublishedFileId_t [50]" }, + { "fieldname":"m_rgScore", "fieldtype":"float [50]" }, + { "fieldname":"m_nAppId", "fieldtype":"AppId_t" }, + { "fieldname":"m_unStartIndex", "fieldtype":"uint32" } + ], + "struct": "RemoteStorageEnumerateWorkshopFilesResult_t" + }, + { + "callback_id": 1320, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_unPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_nVotesFor", "fieldtype":"int32" }, + { "fieldname":"m_nVotesAgainst", "fieldtype":"int32" }, + { "fieldname":"m_nReports", "fieldtype":"int32" }, + { "fieldname":"m_fScore", "fieldtype":"float" } + ], + "struct": "RemoteStorageGetPublishedItemVoteDetailsResult_t" + }, + { + "callback_id": 1321, + "fields": [ + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" } + ], + "struct": "RemoteStoragePublishedFileSubscribed_t" + }, + { + "callback_id": 1322, + "fields": [ + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" } + ], + "struct": "RemoteStoragePublishedFileUnsubscribed_t" + }, + { + "callback_id": 1323, + "fields": [ + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" } + ], + "struct": "RemoteStoragePublishedFileDeleted_t" + }, + { + "callback_id": 1324, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" } + ], + "struct": "RemoteStorageUpdateUserPublishedItemVoteResult_t" + }, + { + "callback_id": 1325, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_eVote", "fieldtype":"EWorkshopVote" } + ], + "struct": "RemoteStorageUserVoteDetails_t" + }, + { + "callback_id": 1326, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nResultsReturned", "fieldtype":"int32" }, + { "fieldname":"m_nTotalResultCount", "fieldtype":"int32" }, + { "fieldname":"m_rgPublishedFileId", "fieldtype":"PublishedFileId_t [50]" } + ], + "struct": "RemoteStorageEnumerateUserSharedWorkshopFilesResult_t" + }, + { + "callback_id": 1327, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_eAction", "fieldtype":"EWorkshopFileAction" } + ], + "struct": "RemoteStorageSetUserPublishedFileActionResult_t" + }, + { + "callback_id": 1328, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_eAction", "fieldtype":"EWorkshopFileAction" }, + { "fieldname":"m_nResultsReturned", "fieldtype":"int32" }, + { "fieldname":"m_nTotalResultCount", "fieldtype":"int32" }, + { "fieldname":"m_rgPublishedFileId", "fieldtype":"PublishedFileId_t [50]" }, + { "fieldname":"m_rgRTimeUpdated", "fieldtype":"uint32 [50]" } + ], + "struct": "RemoteStorageEnumeratePublishedFilesByUserActionResult_t" + }, + { + "callback_id": 1329, + "fields": [ + { "fieldname":"m_dPercentFile", "fieldtype":"double" }, + { "fieldname":"m_bPreview", "fieldtype":"bool" } + ], + "struct": "RemoteStoragePublishFileProgress_t" + }, + { + "callback_id": 1330, + "fields": [ + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_ulUnused", "fieldtype":"uint64" } + ], + "struct": "RemoteStoragePublishedFileUpdated_t" + }, + { + "callback_id": 1331, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "RemoteStorageFileWriteAsyncComplete_t" + }, + { + "callback_id": 1332, + "fields": [ + { "fieldname":"m_hFileReadAsync", "fieldtype":"SteamAPICall_t" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nOffset", "fieldtype":"uint32" }, + { "fieldname":"m_cubRead", "fieldtype":"uint32" } + ], + "struct": "RemoteStorageFileReadAsyncComplete_t" + }, + { + "callback_id": 1101, + "fields": [ + { "fieldname":"m_nGameID", "fieldtype":"uint64" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_steamIDUser", "fieldtype":"CSteamID" } + ], + "struct": "UserStatsReceived_t" + }, + { + "callback_id": 1102, + "fields": [ + { "fieldname":"m_nGameID", "fieldtype":"uint64" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "UserStatsStored_t" + }, + { + "callback_id": 1103, + "fields": [ + { "fieldname":"m_nGameID", "fieldtype":"uint64" }, + { "fieldname":"m_bGroupAchievement", "fieldtype":"bool" }, + { "fieldname":"m_rgchAchievementName", "fieldtype":"char [128]" }, + { "fieldname":"m_nCurProgress", "fieldtype":"uint32" }, + { "fieldname":"m_nMaxProgress", "fieldtype":"uint32" } + ], + "struct": "UserAchievementStored_t" + }, + { + "callback_id": 1104, + "fields": [ + { "fieldname":"m_hSteamLeaderboard", "fieldtype":"SteamLeaderboard_t" }, + { "fieldname":"m_bLeaderboardFound", "fieldtype":"uint8" } + ], + "struct": "LeaderboardFindResult_t" + }, + { + "callback_id": 1105, + "fields": [ + { "fieldname":"m_hSteamLeaderboard", "fieldtype":"SteamLeaderboard_t" }, + { "fieldname":"m_hSteamLeaderboardEntries", "fieldtype":"SteamLeaderboardEntries_t" }, + { "fieldname":"m_cEntryCount", "fieldtype":"int" } + ], + "struct": "LeaderboardScoresDownloaded_t" + }, + { + "callback_id": 1106, + "fields": [ + { "fieldname":"m_bSuccess", "fieldtype":"uint8" }, + { "fieldname":"m_hSteamLeaderboard", "fieldtype":"SteamLeaderboard_t" }, + { "fieldname":"m_nScore", "fieldtype":"int32" }, + { "fieldname":"m_bScoreChanged", "fieldtype":"uint8" }, + { "fieldname":"m_nGlobalRankNew", "fieldtype":"int" }, + { "fieldname":"m_nGlobalRankPrevious", "fieldtype":"int" } + ], + "struct": "LeaderboardScoreUploaded_t" + }, + { + "callback_id": 1107, + "fields": [ + { "fieldname":"m_bSuccess", "fieldtype":"uint8" }, + { "fieldname":"m_cPlayers", "fieldtype":"int32" } + ], + "struct": "NumberOfCurrentPlayers_t" + }, + { + "callback_id": 1108, + "fields": [ + { "fieldname":"m_steamIDUser", "fieldtype":"CSteamID" } + ], + "struct": "UserStatsUnloaded_t" + }, + { + "callback_id": 1109, + "fields": [ + { "fieldname":"m_nGameID", "fieldtype":"CGameID" }, + { "fieldname":"m_rgchAchievementName", "fieldtype":"char [128]" }, + { "fieldname":"m_bAchieved", "fieldtype":"bool" }, + { "fieldname":"m_nIconHandle", "fieldtype":"int" } + ], + "struct": "UserAchievementIconFetched_t" + }, + { + "callback_id": 1110, + "fields": [ + { "fieldname":"m_nGameID", "fieldtype":"uint64" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "GlobalAchievementPercentagesReady_t" + }, + { + "callback_id": 1111, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_hSteamLeaderboard", "fieldtype":"SteamLeaderboard_t" } + ], + "struct": "LeaderboardUGCSet_t" + }, + { + "callback_id": 1112, + "fields": [ + { "fieldname":"m_nGameID", "fieldtype":"uint64" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_ulRequiredDiskSpace", "fieldtype":"uint64" } + ], + "struct": "PS3TrophiesInstalled_t" + }, + { + "callback_id": 1112, + "fields": [ + { "fieldname":"m_nGameID", "fieldtype":"uint64" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "GlobalStatsReceived_t" + }, + { + "callback_id": 1005, + "fields": [ + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" } + ], + "struct": "DlcInstalled_t" + }, + { + "callback_id": 1008, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"ERegisterActivationCodeResult" }, + { "fieldname":"m_unPackageRegistered", "fieldtype":"uint32" } + ], + "struct": "RegisterActivationCodeResponse_t" + }, + { + "callback_id": 1014, + "fields": [], + "struct": "NewUrlLaunchParameters_t" + }, + { + "callback_id": 1021, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nAppID", "fieldtype":"uint32" }, + { "fieldname":"m_cchKeyLength", "fieldtype":"uint32" }, + { "fieldname":"m_rgchKey", "fieldtype":"char [240]" } + ], + "struct": "AppProofOfPurchaseKeyResponse_t" + }, + { + "callback_id": 1023, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_ulFileSize", "fieldtype":"uint64" }, + { "fieldname":"m_FileSHA", "fieldtype":"uint8 [20]" }, + { "fieldname":"m_unFlags", "fieldtype":"uint32" } + ], + "struct": "FileDetailsResult_t" + }, + { + "callback_id": 1030, + "fields": [ + { "fieldname":"m_unAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_bIsOffline", "fieldtype":"bool" }, + { "fieldname":"m_unSecondsAllowed", "fieldtype":"uint32" }, + { "fieldname":"m_unSecondsPlayed", "fieldtype":"uint32" } + ], + "struct": "TimedTrialStatus_t" + }, + { + "callback_id": 1202, + "fields": [ + { "fieldname":"m_steamIDRemote", "fieldtype":"CSteamID" } + ], + "struct": "P2PSessionRequest_t" + }, + { + "callback_id": 1203, + "fields": [ + { "fieldname":"m_steamIDRemote", "fieldtype":"CSteamID" }, + { "fieldname":"m_eP2PSessionError", "fieldtype":"uint8" } + ], + "struct": "P2PSessionConnectFail_t" + }, + { + "callback_id": 1201, + "fields": [ + { "fieldname":"m_hSocket", "fieldtype":"SNetSocket_t" }, + { "fieldname":"m_hListenSocket", "fieldtype":"SNetListenSocket_t" }, + { "fieldname":"m_steamIDRemote", "fieldtype":"CSteamID" }, + { "fieldname":"m_eSNetSocketState", "fieldtype":"int" } + ], + "struct": "SocketStatusCallback_t" + }, + { + "callback_id": 2301, + "fields": [ + { "fieldname":"m_hLocal", "fieldtype":"ScreenshotHandle" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "ScreenshotReady_t" + }, + { + "callback_id": 2302, + "fields": [], + "struct": "ScreenshotRequested_t" + }, + { + "callback_id": 4001, + "fields": [], + "struct": "PlaybackStatusHasChanged_t" + }, + { + "callback_id": 4002, + "fields": [ + { "fieldname":"m_flNewVolume", "fieldtype":"float" } + ], + "struct": "VolumeHasChanged_t" + }, + { + "callback_id": 4101, + "fields": [], + "struct": "MusicPlayerRemoteWillActivate_t" + }, + { + "callback_id": 4102, + "fields": [], + "struct": "MusicPlayerRemoteWillDeactivate_t" + }, + { + "callback_id": 4103, + "fields": [], + "struct": "MusicPlayerRemoteToFront_t" + }, + { + "callback_id": 4104, + "fields": [], + "struct": "MusicPlayerWillQuit_t" + }, + { + "callback_id": 4105, + "fields": [], + "struct": "MusicPlayerWantsPlay_t" + }, + { + "callback_id": 4106, + "fields": [], + "struct": "MusicPlayerWantsPause_t" + }, + { + "callback_id": 4107, + "fields": [], + "struct": "MusicPlayerWantsPlayPrevious_t" + }, + { + "callback_id": 4108, + "fields": [], + "struct": "MusicPlayerWantsPlayNext_t" + }, + { + "callback_id": 4109, + "fields": [ + { "fieldname":"m_bShuffled", "fieldtype":"bool" } + ], + "struct": "MusicPlayerWantsShuffled_t" + }, + { + "callback_id": 4110, + "fields": [ + { "fieldname":"m_bLooped", "fieldtype":"bool" } + ], + "struct": "MusicPlayerWantsLooped_t" + }, + { + "callback_id": 4011, + "fields": [ + { "fieldname":"m_flNewVolume", "fieldtype":"float" } + ], + "struct": "MusicPlayerWantsVolume_t" + }, + { + "callback_id": 4012, + "fields": [ + { "fieldname":"nID", "fieldtype":"int" } + ], + "struct": "MusicPlayerSelectsQueueEntry_t" + }, + { + "callback_id": 4013, + "fields": [ + { "fieldname":"nID", "fieldtype":"int" } + ], + "struct": "MusicPlayerSelectsPlaylistEntry_t" + }, + { + "callback_id": 4114, + "fields": [ + { "fieldname":"m_nPlayingRepeatStatus", "fieldtype":"int" } + ], + "struct": "MusicPlayerWantsPlayingRepeatStatus_t" + }, + { + "callback_id": 2101, + "fields": [ + { "fieldname":"m_hRequest", "fieldtype":"HTTPRequestHandle" }, + { "fieldname":"m_ulContextValue", "fieldtype":"uint64" }, + { "fieldname":"m_bRequestSuccessful", "fieldtype":"bool" }, + { "fieldname":"m_eStatusCode", "fieldtype":"EHTTPStatusCode" }, + { "fieldname":"m_unBodySize", "fieldtype":"uint32" } + ], + "struct": "HTTPRequestCompleted_t" + }, + { + "callback_id": 2102, + "fields": [ + { "fieldname":"m_hRequest", "fieldtype":"HTTPRequestHandle" }, + { "fieldname":"m_ulContextValue", "fieldtype":"uint64" } + ], + "struct": "HTTPRequestHeadersReceived_t" + }, + { + "callback_id": 2103, + "fields": [ + { "fieldname":"m_hRequest", "fieldtype":"HTTPRequestHandle" }, + { "fieldname":"m_ulContextValue", "fieldtype":"uint64" }, + { "fieldname":"m_cOffset", "fieldtype":"uint32" }, + { "fieldname":"m_cBytesReceived", "fieldtype":"uint32" } + ], + "struct": "HTTPRequestDataReceived_t" + }, + { + "callback_id": 3401, + "fields": [ + { "fieldname":"m_handle", "fieldtype":"UGCQueryHandle_t" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_unNumResultsReturned", "fieldtype":"uint32" }, + { "fieldname":"m_unTotalMatchingResults", "fieldtype":"uint32" }, + { "fieldname":"m_bCachedData", "fieldtype":"bool" }, + { "fieldname":"m_rgchNextCursor", "fieldtype":"char [256]" } + ], + "struct": "SteamUGCQueryCompleted_t" + }, + { + "callback_id": 3402, + "fields": [ + { "fieldname":"m_details", "fieldtype":"SteamUGCDetails_t" }, + { "fieldname":"m_bCachedData", "fieldtype":"bool" } + ], + "struct": "SteamUGCRequestUGCDetailsResult_t" + }, + { + "callback_id": 3403, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_bUserNeedsToAcceptWorkshopLegalAgreement", "fieldtype":"bool" } + ], + "struct": "CreateItemResult_t" + }, + { + "callback_id": 3404, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_bUserNeedsToAcceptWorkshopLegalAgreement", "fieldtype":"bool" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" } + ], + "struct": "SubmitItemUpdateResult_t" + }, + { + "callback_id": 3405, + "fields": [ + { "fieldname":"m_unAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" } + ], + "struct": "ItemInstalled_t" + }, + { + "callback_id": 3406, + "fields": [ + { "fieldname":"m_unAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "DownloadItemResult_t" + }, + { + "callback_id": 3407, + "fields": [ + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_bWasAddRequest", "fieldtype":"bool" } + ], + "struct": "UserFavoriteItemsListChanged_t" + }, + { + "callback_id": 3408, + "fields": [ + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_bVoteUp", "fieldtype":"bool" } + ], + "struct": "SetUserItemVoteResult_t" + }, + { + "callback_id": 3409, + "fields": [ + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_bVotedUp", "fieldtype":"bool" }, + { "fieldname":"m_bVotedDown", "fieldtype":"bool" }, + { "fieldname":"m_bVoteSkipped", "fieldtype":"bool" } + ], + "struct": "GetUserItemVoteResult_t" + }, + { + "callback_id": 3410, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "StartPlaytimeTrackingResult_t" + }, + { + "callback_id": 3411, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "StopPlaytimeTrackingResult_t" + }, + { + "callback_id": 3412, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_nChildPublishedFileId", "fieldtype":"PublishedFileId_t" } + ], + "struct": "AddUGCDependencyResult_t" + }, + { + "callback_id": 3413, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_nChildPublishedFileId", "fieldtype":"PublishedFileId_t" } + ], + "struct": "RemoveUGCDependencyResult_t" + }, + { + "callback_id": 3414, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" } + ], + "struct": "AddAppDependencyResult_t" + }, + { + "callback_id": 3415, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" } + ], + "struct": "RemoveAppDependencyResult_t" + }, + { + "callback_id": 3416, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_rgAppIDs", "fieldtype":"AppId_t [32]" }, + { "fieldname":"m_nNumAppDependencies", "fieldtype":"uint32" }, + { "fieldname":"m_nTotalNumAppDependencies", "fieldtype":"uint32" } + ], + "struct": "GetAppDependenciesResult_t" + }, + { + "callback_id": 3417, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" } + ], + "struct": "DeleteItemResult_t" + }, + { + "callback_id": 3901, + "fields": [ + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" } + ], + "struct": "SteamAppInstalled_t" + }, + { + "callback_id": 3902, + "fields": [ + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" } + ], + "struct": "SteamAppUninstalled_t" + }, + { + "callback_id": 4501, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" } + ], + "struct": "HTML_BrowserReady_t" + }, + { + "callback_id": 4502, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pBGRA", "fieldtype":"const char *" }, + { "fieldname":"unWide", "fieldtype":"uint32" }, + { "fieldname":"unTall", "fieldtype":"uint32" }, + { "fieldname":"unUpdateX", "fieldtype":"uint32" }, + { "fieldname":"unUpdateY", "fieldtype":"uint32" }, + { "fieldname":"unUpdateWide", "fieldtype":"uint32" }, + { "fieldname":"unUpdateTall", "fieldtype":"uint32" }, + { "fieldname":"unScrollX", "fieldtype":"uint32" }, + { "fieldname":"unScrollY", "fieldtype":"uint32" }, + { "fieldname":"flPageScale", "fieldtype":"float" }, + { "fieldname":"unPageSerial", "fieldtype":"uint32" } + ], + "struct": "HTML_NeedsPaint_t" + }, + { + "callback_id": 4503, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchURL", "fieldtype":"const char *" }, + { "fieldname":"pchTarget", "fieldtype":"const char *" }, + { "fieldname":"pchPostData", "fieldtype":"const char *" }, + { "fieldname":"bIsRedirect", "fieldtype":"bool" } + ], + "struct": "HTML_StartRequest_t" + }, + { + "callback_id": 4504, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" } + ], + "struct": "HTML_CloseBrowser_t" + }, + { + "callback_id": 4505, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchURL", "fieldtype":"const char *" }, + { "fieldname":"pchPostData", "fieldtype":"const char *" }, + { "fieldname":"bIsRedirect", "fieldtype":"bool" }, + { "fieldname":"pchPageTitle", "fieldtype":"const char *" }, + { "fieldname":"bNewNavigation", "fieldtype":"bool" } + ], + "struct": "HTML_URLChanged_t" + }, + { + "callback_id": 4506, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchURL", "fieldtype":"const char *" }, + { "fieldname":"pchPageTitle", "fieldtype":"const char *" } + ], + "struct": "HTML_FinishedRequest_t" + }, + { + "callback_id": 4507, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchURL", "fieldtype":"const char *" } + ], + "struct": "HTML_OpenLinkInNewTab_t" + }, + { + "callback_id": 4508, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchTitle", "fieldtype":"const char *" } + ], + "struct": "HTML_ChangedTitle_t" + }, + { + "callback_id": 4509, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"unResults", "fieldtype":"uint32" }, + { "fieldname":"unCurrentMatch", "fieldtype":"uint32" } + ], + "struct": "HTML_SearchResults_t" + }, + { + "callback_id": 4510, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"bCanGoBack", "fieldtype":"bool" }, + { "fieldname":"bCanGoForward", "fieldtype":"bool" } + ], + "struct": "HTML_CanGoBackAndForward_t" + }, + { + "callback_id": 4511, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"unScrollMax", "fieldtype":"uint32" }, + { "fieldname":"unScrollCurrent", "fieldtype":"uint32" }, + { "fieldname":"flPageScale", "fieldtype":"float" }, + { "fieldname":"bVisible", "fieldtype":"bool" }, + { "fieldname":"unPageSize", "fieldtype":"uint32" } + ], + "struct": "HTML_HorizontalScroll_t" + }, + { + "callback_id": 4512, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"unScrollMax", "fieldtype":"uint32" }, + { "fieldname":"unScrollCurrent", "fieldtype":"uint32" }, + { "fieldname":"flPageScale", "fieldtype":"float" }, + { "fieldname":"bVisible", "fieldtype":"bool" }, + { "fieldname":"unPageSize", "fieldtype":"uint32" } + ], + "struct": "HTML_VerticalScroll_t" + }, + { + "callback_id": 4513, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"x", "fieldtype":"uint32" }, + { "fieldname":"y", "fieldtype":"uint32" }, + { "fieldname":"pchURL", "fieldtype":"const char *" }, + { "fieldname":"bInput", "fieldtype":"bool" }, + { "fieldname":"bLiveLink", "fieldtype":"bool" } + ], + "struct": "HTML_LinkAtPosition_t" + }, + { + "callback_id": 4514, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchMessage", "fieldtype":"const char *" } + ], + "struct": "HTML_JSAlert_t" + }, + { + "callback_id": 4515, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchMessage", "fieldtype":"const char *" } + ], + "struct": "HTML_JSConfirm_t" + }, + { + "callback_id": 4516, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchTitle", "fieldtype":"const char *" }, + { "fieldname":"pchInitialFile", "fieldtype":"const char *" } + ], + "struct": "HTML_FileOpenDialog_t" + }, + { + "callback_id": 4521, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchURL", "fieldtype":"const char *" }, + { "fieldname":"unX", "fieldtype":"uint32" }, + { "fieldname":"unY", "fieldtype":"uint32" }, + { "fieldname":"unWide", "fieldtype":"uint32" }, + { "fieldname":"unTall", "fieldtype":"uint32" }, + { "fieldname":"unNewWindow_BrowserHandle_IGNORE", "fieldtype":"HHTMLBrowser" } + ], + "struct": "HTML_NewWindow_t" + }, + { + "callback_id": 4522, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"eMouseCursor", "fieldtype":"uint32" } + ], + "struct": "HTML_SetCursor_t" + }, + { + "callback_id": 4523, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchMsg", "fieldtype":"const char *" } + ], + "struct": "HTML_StatusText_t" + }, + { + "callback_id": 4524, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchMsg", "fieldtype":"const char *" } + ], + "struct": "HTML_ShowToolTip_t" + }, + { + "callback_id": 4525, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"pchMsg", "fieldtype":"const char *" } + ], + "struct": "HTML_UpdateToolTip_t" + }, + { + "callback_id": 4526, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" } + ], + "struct": "HTML_HideToolTip_t" + }, + { + "callback_id": 4527, + "fields": [ + { "fieldname":"unBrowserHandle", "fieldtype":"HHTMLBrowser" }, + { "fieldname":"unOldBrowserHandle", "fieldtype":"HHTMLBrowser" } + ], + "struct": "HTML_BrowserRestarted_t" + }, + { + "callback_id": 4700, + "fields": [ + { "fieldname":"m_handle", "fieldtype":"SteamInventoryResult_t" }, + { "fieldname":"m_result", "fieldtype":"EResult" } + ], + "struct": "SteamInventoryResultReady_t" + }, + { + "callback_id": 4701, + "fields": [ + { "fieldname":"m_handle", "fieldtype":"SteamInventoryResult_t" } + ], + "struct": "SteamInventoryFullUpdate_t" + }, + { + "callback_id": 4702, + "fields": [], + "struct": "SteamInventoryDefinitionUpdate_t" + }, + { + "callback_id": 4703, + "fields": [ + { "fieldname":"m_result", "fieldtype":"EResult" }, + { "fieldname":"m_steamID", "fieldtype":"CSteamID" }, + { "fieldname":"m_numEligiblePromoItemDefs", "fieldtype":"int" }, + { "fieldname":"m_bCachedData", "fieldtype":"bool" } + ], + "struct": "SteamInventoryEligiblePromoItemDefIDs_t" + }, + { + "callback_id": 4704, + "fields": [ + { "fieldname":"m_result", "fieldtype":"EResult" }, + { "fieldname":"m_ulOrderID", "fieldtype":"uint64" }, + { "fieldname":"m_ulTransID", "fieldtype":"uint64" } + ], + "struct": "SteamInventoryStartPurchaseResult_t" + }, + { + "callback_id": 4705, + "fields": [ + { "fieldname":"m_result", "fieldtype":"EResult" }, + { "fieldname":"m_rgchCurrency", "fieldtype":"char [4]" } + ], + "struct": "SteamInventoryRequestPricesResult_t" + }, + { + "callback_id": 4611, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_unVideoAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_rgchURL", "fieldtype":"char [256]" } + ], + "struct": "GetVideoURLResult_t" + }, + { + "callback_id": 4624, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_unVideoAppID", "fieldtype":"AppId_t" } + ], + "struct": "GetOPFSettingsResult_t" + }, + { + "callback_id": 5001, + "fields": [], + "struct": "SteamParentalSettingsChanged_t" + }, + { + "callback_id": 5701, + "fields": [ + { "fieldname":"m_unSessionID", "fieldtype":"RemotePlaySessionID_t" } + ], + "struct": "SteamRemotePlaySessionConnected_t" + }, + { + "callback_id": 5702, + "fields": [ + { "fieldname":"m_unSessionID", "fieldtype":"RemotePlaySessionID_t" } + ], + "struct": "SteamRemotePlaySessionDisconnected_t" + }, + { + "callback_id": 1251, + "fields": [ + { "fieldname":"m_identityRemote", "fieldtype":"SteamNetworkingIdentity" } + ], + "struct": "SteamNetworkingMessagesSessionRequest_t" + }, + { + "callback_id": 1252, + "fields": [ + { "fieldname":"m_info", "fieldtype":"SteamNetConnectionInfo_t" } + ], + "struct": "SteamNetworkingMessagesSessionFailed_t" + }, + { + "callback_id": 1221, + "fields": [ + { "fieldname":"m_hConn", "fieldtype":"HSteamNetConnection" }, + { "fieldname":"m_info", "fieldtype":"SteamNetConnectionInfo_t" }, + { "fieldname":"m_eOldState", "fieldtype":"ESteamNetworkingConnectionState" } + ], + "struct": "SteamNetConnectionStatusChangedCallback_t" + }, + { + "callback_id": 1222, + "fields": [ + { "fieldname":"m_eAvail", "fieldtype":"ESteamNetworkingAvailability" }, + { "fieldname":"m_debugMsg", "fieldtype":"char [256]" } + ], + "struct": "SteamNetAuthenticationStatus_t" + }, + { + "callback_id": 1281, + "fields": [ + { "fieldname":"m_eAvail", "fieldtype":"ESteamNetworkingAvailability" }, + { "fieldname":"m_bPingMeasurementInProgress", "fieldtype":"int" }, + { "fieldname":"m_eAvailNetworkConfig", "fieldtype":"ESteamNetworkingAvailability" }, + { "fieldname":"m_eAvailAnyRelay", "fieldtype":"ESteamNetworkingAvailability" }, + { "fieldname":"m_debugMsg", "fieldtype":"char [256]" } + ], + "struct": "SteamRelayNetworkStatus_t" + }, + { + "callback_id": 201, + "fields": [ + { "fieldname":"m_SteamID", "fieldtype":"CSteamID" }, + { "fieldname":"m_OwnerSteamID", "fieldtype":"CSteamID" } + ], + "struct": "GSClientApprove_t" + }, + { + "callback_id": 202, + "fields": [ + { "fieldname":"m_SteamID", "fieldtype":"CSteamID" }, + { "fieldname":"m_eDenyReason", "fieldtype":"EDenyReason" }, + { "fieldname":"m_rgchOptionalText", "fieldtype":"char [128]" } + ], + "struct": "GSClientDeny_t" + }, + { + "callback_id": 203, + "fields": [ + { "fieldname":"m_SteamID", "fieldtype":"CSteamID" }, + { "fieldname":"m_eDenyReason", "fieldtype":"EDenyReason" } + ], + "struct": "GSClientKick_t" + }, + { + "callback_id": 206, + "fields": [ + { "fieldname":"m_SteamID", "fieldtype":"uint64" }, + { "fieldname":"m_pchAchievement", "fieldtype":"char [128]" }, + { "fieldname":"m_bUnlocked", "fieldtype":"bool" } + ], + "struct": "GSClientAchievementStatus_t" + }, + { + "callback_id": 115, + "fields": [ + { "fieldname":"m_bSecure", "fieldtype":"uint8" } + ], + "struct": "GSPolicyResponse_t" + }, + { + "callback_id": 207, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_nRank", "fieldtype":"int32" }, + { "fieldname":"m_unTotalConnects", "fieldtype":"uint32" }, + { "fieldname":"m_unTotalMinutesPlayed", "fieldtype":"uint32" } + ], + "struct": "GSGameplayStats_t" + }, + { + "callback_id": 208, + "fields": [ + { "fieldname":"m_SteamIDUser", "fieldtype":"CSteamID" }, + { "fieldname":"m_SteamIDGroup", "fieldtype":"CSteamID" }, + { "fieldname":"m_bMember", "fieldtype":"bool" }, + { "fieldname":"m_bOfficer", "fieldtype":"bool" } + ], + "struct": "GSClientGroupStatus_t" + }, + { + "callback_id": 209, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_unReputationScore", "fieldtype":"uint32" }, + { "fieldname":"m_bBanned", "fieldtype":"bool" }, + { "fieldname":"m_unBannedIP", "fieldtype":"uint32" }, + { "fieldname":"m_usBannedPort", "fieldtype":"uint16" }, + { "fieldname":"m_ulBannedGameID", "fieldtype":"uint64" }, + { "fieldname":"m_unBanExpires", "fieldtype":"uint32" } + ], + "struct": "GSReputation_t" + }, + { + "callback_id": 210, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" } + ], + "struct": "AssociateWithClanResult_t" + }, + { + "callback_id": 211, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_cPlayersThatDontLikeCandidate", "fieldtype":"int" }, + { "fieldname":"m_cPlayersThatCandidateDoesntLike", "fieldtype":"int" }, + { "fieldname":"m_cClanPlayersThatDontLikeCandidate", "fieldtype":"int" }, + { "fieldname":"m_SteamIDCandidate", "fieldtype":"CSteamID" } + ], + "struct": "ComputeNewPlayerCompatibilityResult_t" + }, + { + "callback_id": 1800, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_steamIDUser", "fieldtype":"CSteamID" } + ], + "struct": "GSStatsReceived_t" + }, + { + "callback_id": 1801, + "fields": [ + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_steamIDUser", "fieldtype":"CSteamID" } + ], + "struct": "GSStatsStored_t" + }, + { + "callback_id": 1108, + "fields": [ + { "fieldname":"m_steamIDUser", "fieldtype":"CSteamID" } + ], + "struct": "GSStatsUnloaded_t" + } + ], + "consts": [ + { "constname":"k_cubSaltSize", "consttype":"int", "constval":"8" }, + { "constname":"k_GIDNil", "consttype":"GID_t", "constval":"0xffffffffffffffffull" }, + { "constname":"k_TxnIDNil", "consttype":"GID_t", "constval":"k_GIDNil" }, + { "constname":"k_TxnIDUnknown", "consttype":"GID_t", "constval":"0" }, + { "constname":"k_JobIDNil", "consttype":"JobID_t", "constval":"0xffffffffffffffffull" }, + { "constname":"k_uPackageIdInvalid", "consttype":"PackageId_t", "constval":"0xFFFFFFFF" }, + { "constname":"k_uBundleIdInvalid", "consttype":"BundleId_t", "constval":"0" }, + { "constname":"k_uAppIdInvalid", "consttype":"AppId_t", "constval":"0x0" }, + { "constname":"k_ulAssetClassIdInvalid", "consttype":"AssetClassId_t", "constval":"0x0" }, + { "constname":"k_uPhysicalItemIdInvalid", "consttype":"PhysicalItemId_t", "constval":"0x0" }, + { "constname":"k_uDepotIdInvalid", "consttype":"DepotId_t", "constval":"0x0" }, + { "constname":"k_uCellIDInvalid", "consttype":"CellID_t", "constval":"0xFFFFFFFF" }, + { "constname":"k_uAPICallInvalid", "consttype":"SteamAPICall_t", "constval":"0x0" }, + { "constname":"k_uPartnerIdInvalid", "consttype":"PartnerId_t", "constval":"0" }, + { "constname":"k_uManifestIdInvalid", "consttype":"ManifestId_t", "constval":"0" }, + { "constname":"k_ulSiteIdInvalid", "consttype":"SiteId_t", "constval":"0" }, + { "constname":"k_ulPartyBeaconIdInvalid", "consttype":"PartyBeaconID_t", "constval":"0" }, + { "constname":"k_HAuthTicketInvalid", "consttype":"HAuthTicket", "constval":"0" }, + { "constname":"k_unSteamAccountIDMask", "consttype":"unsigned int", "constval":"0xFFFFFFFF" }, + { "constname":"k_unSteamAccountInstanceMask", "consttype":"unsigned int", "constval":"0x000FFFFF" }, + { "constname":"k_unSteamUserDefaultInstance", "consttype":"unsigned int", "constval":"1" }, + { "constname":"k_cchGameExtraInfoMax", "consttype":"int", "constval":"64" }, + { "constname":"k_cchMaxFriendsGroupName", "consttype":"int", "constval":"64" }, + { "constname":"k_cFriendsGroupLimit", "consttype":"int", "constval":"100" }, + { "constname":"k_FriendsGroupID_Invalid", "consttype":"FriendsGroupID_t", "constval":"- 1" }, + { "constname":"k_cEnumerateFollowersMax", "consttype":"int", "constval":"50" }, + { "constname":"k_cubChatMetadataMax", "consttype":"uint32", "constval":"8192" }, + { "constname":"k_cbMaxGameServerGameDir", "consttype":"int", "constval":"32" }, + { "constname":"k_cbMaxGameServerMapName", "consttype":"int", "constval":"32" }, + { "constname":"k_cbMaxGameServerGameDescription", "consttype":"int", "constval":"64" }, + { "constname":"k_cbMaxGameServerName", "consttype":"int", "constval":"64" }, + { "constname":"k_cbMaxGameServerTags", "consttype":"int", "constval":"128" }, + { "constname":"k_cbMaxGameServerGameData", "consttype":"int", "constval":"2048" }, + { "constname":"HSERVERQUERY_INVALID", "consttype":"int", "constval":"0xffffffff" }, + { "constname":"k_unFavoriteFlagNone", "consttype":"uint32", "constval":"0x00" }, + { "constname":"k_unFavoriteFlagFavorite", "consttype":"uint32", "constval":"0x01" }, + { "constname":"k_unFavoriteFlagHistory", "consttype":"uint32", "constval":"0x02" }, + { "constname":"k_unMaxCloudFileChunkSize", "consttype":"uint32", "constval":"100 * 1024 * 1024" }, + { "constname":"k_PublishedFileIdInvalid", "consttype":"PublishedFileId_t", "constval":"0" }, + { "constname":"k_UGCHandleInvalid", "consttype":"UGCHandle_t", "constval":"0xffffffffffffffffull" }, + { "constname":"k_PublishedFileUpdateHandleInvalid", "consttype":"PublishedFileUpdateHandle_t", "constval":"0xffffffffffffffffull" }, + { "constname":"k_UGCFileStreamHandleInvalid", "consttype":"UGCFileWriteStreamHandle_t", "constval":"0xffffffffffffffffull" }, + { "constname":"k_cchPublishedDocumentTitleMax", "consttype":"uint32", "constval":"128 + 1" }, + { "constname":"k_cchPublishedDocumentDescriptionMax", "consttype":"uint32", "constval":"8000" }, + { "constname":"k_cchPublishedDocumentChangeDescriptionMax", "consttype":"uint32", "constval":"8000" }, + { "constname":"k_unEnumeratePublishedFilesMaxResults", "consttype":"uint32", "constval":"50" }, + { "constname":"k_cchTagListMax", "consttype":"uint32", "constval":"1024 + 1" }, + { "constname":"k_cchFilenameMax", "consttype":"uint32", "constval":"260" }, + { "constname":"k_cchPublishedFileURLMax", "consttype":"uint32", "constval":"256" }, + { "constname":"k_cubAppProofOfPurchaseKeyMax", "consttype":"int", "constval":"240" }, + { "constname":"k_nScreenshotMaxTaggedUsers", "consttype":"uint32", "constval":"32" }, + { "constname":"k_nScreenshotMaxTaggedPublishedFiles", "consttype":"uint32", "constval":"32" }, + { "constname":"k_cubUFSTagTypeMax", "consttype":"int", "constval":"255" }, + { "constname":"k_cubUFSTagValueMax", "consttype":"int", "constval":"255" }, + { "constname":"k_ScreenshotThumbWidth", "consttype":"int", "constval":"200" }, + { "constname":"k_UGCQueryHandleInvalid", "consttype":"UGCQueryHandle_t", "constval":"0xffffffffffffffffull" }, + { "constname":"k_UGCUpdateHandleInvalid", "consttype":"UGCUpdateHandle_t", "constval":"0xffffffffffffffffull" }, + { "constname":"kNumUGCResultsPerPage", "consttype":"uint32", "constval":"50" }, + { "constname":"k_cchDeveloperMetadataMax", "consttype":"uint32", "constval":"5000" }, + { "constname":"INVALID_HTMLBROWSER", "consttype":"uint32", "constval":"0" }, + { "constname":"k_SteamItemInstanceIDInvalid", "consttype":"SteamItemInstanceID_t", "constval":"( SteamItemInstanceID_t ) ~ 0" }, + { "constname":"k_SteamInventoryResultInvalid", "consttype":"SteamInventoryResult_t", "constval":"- 1" }, + { "constname":"k_SteamInventoryUpdateHandleInvalid", "consttype":"SteamInventoryUpdateHandle_t", "constval":"0xffffffffffffffffull" }, + { "constname":"k_HSteamNetConnection_Invalid", "consttype":"HSteamNetConnection", "constval":"0" }, + { "constname":"k_HSteamListenSocket_Invalid", "consttype":"HSteamListenSocket", "constval":"0" }, + { "constname":"k_HSteamNetPollGroup_Invalid", "consttype":"HSteamNetPollGroup", "constval":"0" }, + { "constname":"k_cchMaxSteamNetworkingErrMsg", "consttype":"int", "constval":"1024" }, + { "constname":"k_cchSteamNetworkingMaxConnectionCloseReason", "consttype":"int", "constval":"128" }, + { "constname":"k_cchSteamNetworkingMaxConnectionDescription", "consttype":"int", "constval":"128" }, + { "constname":"k_cbMaxSteamNetworkingSocketsMessageSizeSend", "consttype":"int", "constval":"512 * 1024" }, + { "constname":"k_nSteamNetworkingSend_Unreliable", "consttype":"int", "constval":"0" }, + { "constname":"k_nSteamNetworkingSend_NoNagle", "consttype":"int", "constval":"1" }, + { "constname":"k_nSteamNetworkingSend_UnreliableNoNagle", "consttype":"int", "constval":"k_nSteamNetworkingSend_Unreliable | k_nSteamNetworkingSend_NoNagle" }, + { "constname":"k_nSteamNetworkingSend_NoDelay", "consttype":"int", "constval":"4" }, + { "constname":"k_nSteamNetworkingSend_UnreliableNoDelay", "consttype":"int", "constval":"k_nSteamNetworkingSend_Unreliable | k_nSteamNetworkingSend_NoDelay | k_nSteamNetworkingSend_NoNagle" }, + { "constname":"k_nSteamNetworkingSend_Reliable", "consttype":"int", "constval":"8" }, + { "constname":"k_nSteamNetworkingSend_ReliableNoNagle", "consttype":"int", "constval":"k_nSteamNetworkingSend_Reliable | k_nSteamNetworkingSend_NoNagle" }, + { "constname":"k_nSteamNetworkingSend_UseCurrentThread", "consttype":"int", "constval":"16" }, + { "constname":"k_nSteamNetworkingSend_AutoRestartBrokenSession", "consttype":"int", "constval":"32" }, + { "constname":"k_cchMaxSteamNetworkingPingLocationString", "consttype":"int", "constval":"1024" }, + { "constname":"k_nSteamNetworkingPing_Failed", "consttype":"int", "constval":"- 1" }, + { "constname":"k_nSteamNetworkingPing_Unknown", "consttype":"int", "constval":"- 2" }, + { "constname":"k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Default", "consttype":"int", "constval":"- 1" }, + { "constname":"k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Disable", "consttype":"int", "constval":"0" }, + { "constname":"k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Relay", "consttype":"int", "constval":"1" }, + { "constname":"k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Private", "consttype":"int", "constval":"2" }, + { "constname":"k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Public", "consttype":"int", "constval":"4" }, + { "constname":"k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_All", "consttype":"int", "constval":"0x7fffffff" }, + { "constname":"k_SteamDatagramPOPID_dev", "consttype":"SteamNetworkingPOPID", "constval":"( ( uint32 ) 'd' << 16U ) | ( ( uint32 ) 'e' << 8U ) | ( uint32 ) 'v'" }, + { "constname":"k_cbSteamDatagramMaxSerializedTicket", "consttype":"uint32", "constval":"512" }, + { "constname":"k_cbMaxSteamDatagramGameCoordinatorServerLoginAppData", "consttype":"uint32", "constval":"2048" }, + { "constname":"k_cbMaxSteamDatagramGameCoordinatorServerLoginSerialized", "consttype":"uint32", "constval":"4096" } + ], + "enums": [ + { + "enumname": "ESteamIPType", + "values": [ + { "name":"k_ESteamIPTypeIPv4", "value":"0" }, + { "name":"k_ESteamIPTypeIPv6", "value":"1" } + ] + }, + { + "enumname": "EUniverse", + "values": [ + { "name":"k_EUniverseInvalid", "value":"0" }, + { "name":"k_EUniversePublic", "value":"1" }, + { "name":"k_EUniverseBeta", "value":"2" }, + { "name":"k_EUniverseInternal", "value":"3" }, + { "name":"k_EUniverseDev", "value":"4" }, + { "name":"k_EUniverseMax", "value":"5" } + ] + }, + { + "enumname": "EResult", + "values": [ + { "name":"k_EResultNone", "value":"0" }, + { "name":"k_EResultOK", "value":"1" }, + { "name":"k_EResultFail", "value":"2" }, + { "name":"k_EResultNoConnection", "value":"3" }, + { "name":"k_EResultInvalidPassword", "value":"5" }, + { "name":"k_EResultLoggedInElsewhere", "value":"6" }, + { "name":"k_EResultInvalidProtocolVer", "value":"7" }, + { "name":"k_EResultInvalidParam", "value":"8" }, + { "name":"k_EResultFileNotFound", "value":"9" }, + { "name":"k_EResultBusy", "value":"10" }, + { "name":"k_EResultInvalidState", "value":"11" }, + { "name":"k_EResultInvalidName", "value":"12" }, + { "name":"k_EResultInvalidEmail", "value":"13" }, + { "name":"k_EResultDuplicateName", "value":"14" }, + { "name":"k_EResultAccessDenied", "value":"15" }, + { "name":"k_EResultTimeout", "value":"16" }, + { "name":"k_EResultBanned", "value":"17" }, + { "name":"k_EResultAccountNotFound", "value":"18" }, + { "name":"k_EResultInvalidSteamID", "value":"19" }, + { "name":"k_EResultServiceUnavailable", "value":"20" }, + { "name":"k_EResultNotLoggedOn", "value":"21" }, + { "name":"k_EResultPending", "value":"22" }, + { "name":"k_EResultEncryptionFailure", "value":"23" }, + { "name":"k_EResultInsufficientPrivilege", "value":"24" }, + { "name":"k_EResultLimitExceeded", "value":"25" }, + { "name":"k_EResultRevoked", "value":"26" }, + { "name":"k_EResultExpired", "value":"27" }, + { "name":"k_EResultAlreadyRedeemed", "value":"28" }, + { "name":"k_EResultDuplicateRequest", "value":"29" }, + { "name":"k_EResultAlreadyOwned", "value":"30" }, + { "name":"k_EResultIPNotFound", "value":"31" }, + { "name":"k_EResultPersistFailed", "value":"32" }, + { "name":"k_EResultLockingFailed", "value":"33" }, + { "name":"k_EResultLogonSessionReplaced", "value":"34" }, + { "name":"k_EResultConnectFailed", "value":"35" }, + { "name":"k_EResultHandshakeFailed", "value":"36" }, + { "name":"k_EResultIOFailure", "value":"37" }, + { "name":"k_EResultRemoteDisconnect", "value":"38" }, + { "name":"k_EResultShoppingCartNotFound", "value":"39" }, + { "name":"k_EResultBlocked", "value":"40" }, + { "name":"k_EResultIgnored", "value":"41" }, + { "name":"k_EResultNoMatch", "value":"42" }, + { "name":"k_EResultAccountDisabled", "value":"43" }, + { "name":"k_EResultServiceReadOnly", "value":"44" }, + { "name":"k_EResultAccountNotFeatured", "value":"45" }, + { "name":"k_EResultAdministratorOK", "value":"46" }, + { "name":"k_EResultContentVersion", "value":"47" }, + { "name":"k_EResultTryAnotherCM", "value":"48" }, + { "name":"k_EResultPasswordRequiredToKickSession", "value":"49" }, + { "name":"k_EResultAlreadyLoggedInElsewhere", "value":"50" }, + { "name":"k_EResultSuspended", "value":"51" }, + { "name":"k_EResultCancelled", "value":"52" }, + { "name":"k_EResultDataCorruption", "value":"53" }, + { "name":"k_EResultDiskFull", "value":"54" }, + { "name":"k_EResultRemoteCallFailed", "value":"55" }, + { "name":"k_EResultPasswordUnset", "value":"56" }, + { "name":"k_EResultExternalAccountUnlinked", "value":"57" }, + { "name":"k_EResultPSNTicketInvalid", "value":"58" }, + { "name":"k_EResultExternalAccountAlreadyLinked", "value":"59" }, + { "name":"k_EResultRemoteFileConflict", "value":"60" }, + { "name":"k_EResultIllegalPassword", "value":"61" }, + { "name":"k_EResultSameAsPreviousValue", "value":"62" }, + { "name":"k_EResultAccountLogonDenied", "value":"63" }, + { "name":"k_EResultCannotUseOldPassword", "value":"64" }, + { "name":"k_EResultInvalidLoginAuthCode", "value":"65" }, + { "name":"k_EResultAccountLogonDeniedNoMail", "value":"66" }, + { "name":"k_EResultHardwareNotCapableOfIPT", "value":"67" }, + { "name":"k_EResultIPTInitError", "value":"68" }, + { "name":"k_EResultParentalControlRestricted", "value":"69" }, + { "name":"k_EResultFacebookQueryError", "value":"70" }, + { "name":"k_EResultExpiredLoginAuthCode", "value":"71" }, + { "name":"k_EResultIPLoginRestrictionFailed", "value":"72" }, + { "name":"k_EResultAccountLockedDown", "value":"73" }, + { "name":"k_EResultAccountLogonDeniedVerifiedEmailRequired", "value":"74" }, + { "name":"k_EResultNoMatchingURL", "value":"75" }, + { "name":"k_EResultBadResponse", "value":"76" }, + { "name":"k_EResultRequirePasswordReEntry", "value":"77" }, + { "name":"k_EResultValueOutOfRange", "value":"78" }, + { "name":"k_EResultUnexpectedError", "value":"79" }, + { "name":"k_EResultDisabled", "value":"80" }, + { "name":"k_EResultInvalidCEGSubmission", "value":"81" }, + { "name":"k_EResultRestrictedDevice", "value":"82" }, + { "name":"k_EResultRegionLocked", "value":"83" }, + { "name":"k_EResultRateLimitExceeded", "value":"84" }, + { "name":"k_EResultAccountLoginDeniedNeedTwoFactor", "value":"85" }, + { "name":"k_EResultItemDeleted", "value":"86" }, + { "name":"k_EResultAccountLoginDeniedThrottle", "value":"87" }, + { "name":"k_EResultTwoFactorCodeMismatch", "value":"88" }, + { "name":"k_EResultTwoFactorActivationCodeMismatch", "value":"89" }, + { "name":"k_EResultAccountAssociatedToMultiplePartners", "value":"90" }, + { "name":"k_EResultNotModified", "value":"91" }, + { "name":"k_EResultNoMobileDevice", "value":"92" }, + { "name":"k_EResultTimeNotSynced", "value":"93" }, + { "name":"k_EResultSmsCodeFailed", "value":"94" }, + { "name":"k_EResultAccountLimitExceeded", "value":"95" }, + { "name":"k_EResultAccountActivityLimitExceeded", "value":"96" }, + { "name":"k_EResultPhoneActivityLimitExceeded", "value":"97" }, + { "name":"k_EResultRefundToWallet", "value":"98" }, + { "name":"k_EResultEmailSendFailure", "value":"99" }, + { "name":"k_EResultNotSettled", "value":"100" }, + { "name":"k_EResultNeedCaptcha", "value":"101" }, + { "name":"k_EResultGSLTDenied", "value":"102" }, + { "name":"k_EResultGSOwnerDenied", "value":"103" }, + { "name":"k_EResultInvalidItemType", "value":"104" }, + { "name":"k_EResultIPBanned", "value":"105" }, + { "name":"k_EResultGSLTExpired", "value":"106" }, + { "name":"k_EResultInsufficientFunds", "value":"107" }, + { "name":"k_EResultTooManyPending", "value":"108" }, + { "name":"k_EResultNoSiteLicensesFound", "value":"109" }, + { "name":"k_EResultWGNetworkSendExceeded", "value":"110" }, + { "name":"k_EResultAccountNotFriends", "value":"111" }, + { "name":"k_EResultLimitedUserAccount", "value":"112" }, + { "name":"k_EResultCantRemoveItem", "value":"113" }, + { "name":"k_EResultAccountDeleted", "value":"114" }, + { "name":"k_EResultExistingUserCancelledLicense", "value":"115" }, + { "name":"k_EResultCommunityCooldown", "value":"116" }, + { "name":"k_EResultNoLauncherSpecified", "value":"117" }, + { "name":"k_EResultMustAgreeToSSA", "value":"118" }, + { "name":"k_EResultLauncherMigrated", "value":"119" } + ] + }, + { + "enumname": "EVoiceResult", + "values": [ + { "name":"k_EVoiceResultOK", "value":"0" }, + { "name":"k_EVoiceResultNotInitialized", "value":"1" }, + { "name":"k_EVoiceResultNotRecording", "value":"2" }, + { "name":"k_EVoiceResultNoData", "value":"3" }, + { "name":"k_EVoiceResultBufferTooSmall", "value":"4" }, + { "name":"k_EVoiceResultDataCorrupted", "value":"5" }, + { "name":"k_EVoiceResultRestricted", "value":"6" }, + { "name":"k_EVoiceResultUnsupportedCodec", "value":"7" }, + { "name":"k_EVoiceResultReceiverOutOfDate", "value":"8" }, + { "name":"k_EVoiceResultReceiverDidNotAnswer", "value":"9" } + ] + }, + { + "enumname": "EDenyReason", + "values": [ + { "name":"k_EDenyInvalid", "value":"0" }, + { "name":"k_EDenyInvalidVersion", "value":"1" }, + { "name":"k_EDenyGeneric", "value":"2" }, + { "name":"k_EDenyNotLoggedOn", "value":"3" }, + { "name":"k_EDenyNoLicense", "value":"4" }, + { "name":"k_EDenyCheater", "value":"5" }, + { "name":"k_EDenyLoggedInElseWhere", "value":"6" }, + { "name":"k_EDenyUnknownText", "value":"7" }, + { "name":"k_EDenyIncompatibleAnticheat", "value":"8" }, + { "name":"k_EDenyMemoryCorruption", "value":"9" }, + { "name":"k_EDenyIncompatibleSoftware", "value":"10" }, + { "name":"k_EDenySteamConnectionLost", "value":"11" }, + { "name":"k_EDenySteamConnectionError", "value":"12" }, + { "name":"k_EDenySteamResponseTimedOut", "value":"13" }, + { "name":"k_EDenySteamValidationStalled", "value":"14" }, + { "name":"k_EDenySteamOwnerLeftGuestUser", "value":"15" } + ] + }, + { + "enumname": "EBeginAuthSessionResult", + "values": [ + { "name":"k_EBeginAuthSessionResultOK", "value":"0" }, + { "name":"k_EBeginAuthSessionResultInvalidTicket", "value":"1" }, + { "name":"k_EBeginAuthSessionResultDuplicateRequest", "value":"2" }, + { "name":"k_EBeginAuthSessionResultInvalidVersion", "value":"3" }, + { "name":"k_EBeginAuthSessionResultGameMismatch", "value":"4" }, + { "name":"k_EBeginAuthSessionResultExpiredTicket", "value":"5" } + ] + }, + { + "enumname": "EAuthSessionResponse", + "values": [ + { "name":"k_EAuthSessionResponseOK", "value":"0" }, + { "name":"k_EAuthSessionResponseUserNotConnectedToSteam", "value":"1" }, + { "name":"k_EAuthSessionResponseNoLicenseOrExpired", "value":"2" }, + { "name":"k_EAuthSessionResponseVACBanned", "value":"3" }, + { "name":"k_EAuthSessionResponseLoggedInElseWhere", "value":"4" }, + { "name":"k_EAuthSessionResponseVACCheckTimedOut", "value":"5" }, + { "name":"k_EAuthSessionResponseAuthTicketCanceled", "value":"6" }, + { "name":"k_EAuthSessionResponseAuthTicketInvalidAlreadyUsed", "value":"7" }, + { "name":"k_EAuthSessionResponseAuthTicketInvalid", "value":"8" }, + { "name":"k_EAuthSessionResponsePublisherIssuedBan", "value":"9" } + ] + }, + { + "enumname": "EUserHasLicenseForAppResult", + "values": [ + { "name":"k_EUserHasLicenseResultHasLicense", "value":"0" }, + { "name":"k_EUserHasLicenseResultDoesNotHaveLicense", "value":"1" }, + { "name":"k_EUserHasLicenseResultNoAuth", "value":"2" } + ] + }, + { + "enumname": "EAccountType", + "values": [ + { "name":"k_EAccountTypeInvalid", "value":"0" }, + { "name":"k_EAccountTypeIndividual", "value":"1" }, + { "name":"k_EAccountTypeMultiseat", "value":"2" }, + { "name":"k_EAccountTypeGameServer", "value":"3" }, + { "name":"k_EAccountTypeAnonGameServer", "value":"4" }, + { "name":"k_EAccountTypePending", "value":"5" }, + { "name":"k_EAccountTypeContentServer", "value":"6" }, + { "name":"k_EAccountTypeClan", "value":"7" }, + { "name":"k_EAccountTypeChat", "value":"8" }, + { "name":"k_EAccountTypeConsoleUser", "value":"9" }, + { "name":"k_EAccountTypeAnonUser", "value":"10" }, + { "name":"k_EAccountTypeMax", "value":"11" } + ] + }, + { + "enumname": "EAppReleaseState", + "values": [ + { "name":"k_EAppReleaseState_Unknown", "value":"0" }, + { "name":"k_EAppReleaseState_Unavailable", "value":"1" }, + { "name":"k_EAppReleaseState_Prerelease", "value":"2" }, + { "name":"k_EAppReleaseState_PreloadOnly", "value":"3" }, + { "name":"k_EAppReleaseState_Released", "value":"4" } + ] + }, + { + "enumname": "EAppOwnershipFlags", + "values": [ + { "name":"k_EAppOwnershipFlags_None", "value":"0" }, + { "name":"k_EAppOwnershipFlags_OwnsLicense", "value":"1" }, + { "name":"k_EAppOwnershipFlags_FreeLicense", "value":"2" }, + { "name":"k_EAppOwnershipFlags_RegionRestricted", "value":"4" }, + { "name":"k_EAppOwnershipFlags_LowViolence", "value":"8" }, + { "name":"k_EAppOwnershipFlags_InvalidPlatform", "value":"16" }, + { "name":"k_EAppOwnershipFlags_SharedLicense", "value":"32" }, + { "name":"k_EAppOwnershipFlags_FreeWeekend", "value":"64" }, + { "name":"k_EAppOwnershipFlags_RetailLicense", "value":"128" }, + { "name":"k_EAppOwnershipFlags_LicenseLocked", "value":"256" }, + { "name":"k_EAppOwnershipFlags_LicensePending", "value":"512" }, + { "name":"k_EAppOwnershipFlags_LicenseExpired", "value":"1024" }, + { "name":"k_EAppOwnershipFlags_LicensePermanent", "value":"2048" }, + { "name":"k_EAppOwnershipFlags_LicenseRecurring", "value":"4096" }, + { "name":"k_EAppOwnershipFlags_LicenseCanceled", "value":"8192" }, + { "name":"k_EAppOwnershipFlags_AutoGrant", "value":"16384" }, + { "name":"k_EAppOwnershipFlags_PendingGift", "value":"32768" }, + { "name":"k_EAppOwnershipFlags_RentalNotActivated", "value":"65536" }, + { "name":"k_EAppOwnershipFlags_Rental", "value":"131072" }, + { "name":"k_EAppOwnershipFlags_SiteLicense", "value":"262144" }, + { "name":"k_EAppOwnershipFlags_LegacyFreeSub", "value":"524288" }, + { "name":"k_EAppOwnershipFlags_InvalidOSType", "value":"1048576" }, + { "name":"k_EAppOwnershipFlags_TimedTrial", "value":"2097152" } + ] + }, + { + "enumname": "EAppType", + "values": [ + { "name":"k_EAppType_Invalid", "value":"0" }, + { "name":"k_EAppType_Game", "value":"1" }, + { "name":"k_EAppType_Application", "value":"2" }, + { "name":"k_EAppType_Tool", "value":"4" }, + { "name":"k_EAppType_Demo", "value":"8" }, + { "name":"k_EAppType_Media_DEPRECATED", "value":"16" }, + { "name":"k_EAppType_DLC", "value":"32" }, + { "name":"k_EAppType_Guide", "value":"64" }, + { "name":"k_EAppType_Driver", "value":"128" }, + { "name":"k_EAppType_Config", "value":"256" }, + { "name":"k_EAppType_Hardware", "value":"512" }, + { "name":"k_EAppType_Franchise", "value":"1024" }, + { "name":"k_EAppType_Video", "value":"2048" }, + { "name":"k_EAppType_Plugin", "value":"4096" }, + { "name":"k_EAppType_MusicAlbum", "value":"8192" }, + { "name":"k_EAppType_Series", "value":"16384" }, + { "name":"k_EAppType_Comic_UNUSED", "value":"32768" }, + { "name":"k_EAppType_Beta", "value":"65536" }, + { "name":"k_EAppType_Shortcut", "value":"1073741824" }, + { "name":"k_EAppType_DepotOnly_DEPRECATED", "value":"-2147483648" } + ] + }, + { + "enumname": "ESteamUserStatType", + "values": [ + { "name":"k_ESteamUserStatTypeINVALID", "value":"0" }, + { "name":"k_ESteamUserStatTypeINT", "value":"1" }, + { "name":"k_ESteamUserStatTypeFLOAT", "value":"2" }, + { "name":"k_ESteamUserStatTypeAVGRATE", "value":"3" }, + { "name":"k_ESteamUserStatTypeACHIEVEMENTS", "value":"4" }, + { "name":"k_ESteamUserStatTypeGROUPACHIEVEMENTS", "value":"5" }, + { "name":"k_ESteamUserStatTypeMAX", "value":"6" } + ] + }, + { + "enumname": "EChatEntryType", + "values": [ + { "name":"k_EChatEntryTypeInvalid", "value":"0" }, + { "name":"k_EChatEntryTypeChatMsg", "value":"1" }, + { "name":"k_EChatEntryTypeTyping", "value":"2" }, + { "name":"k_EChatEntryTypeInviteGame", "value":"3" }, + { "name":"k_EChatEntryTypeEmote", "value":"4" }, + { "name":"k_EChatEntryTypeLeftConversation", "value":"6" }, + { "name":"k_EChatEntryTypeEntered", "value":"7" }, + { "name":"k_EChatEntryTypeWasKicked", "value":"8" }, + { "name":"k_EChatEntryTypeWasBanned", "value":"9" }, + { "name":"k_EChatEntryTypeDisconnected", "value":"10" }, + { "name":"k_EChatEntryTypeHistoricalChat", "value":"11" }, + { "name":"k_EChatEntryTypeLinkBlocked", "value":"14" } + ] + }, + { + "enumname": "EChatRoomEnterResponse", + "values": [ + { "name":"k_EChatRoomEnterResponseSuccess", "value":"1" }, + { "name":"k_EChatRoomEnterResponseDoesntExist", "value":"2" }, + { "name":"k_EChatRoomEnterResponseNotAllowed", "value":"3" }, + { "name":"k_EChatRoomEnterResponseFull", "value":"4" }, + { "name":"k_EChatRoomEnterResponseError", "value":"5" }, + { "name":"k_EChatRoomEnterResponseBanned", "value":"6" }, + { "name":"k_EChatRoomEnterResponseLimited", "value":"7" }, + { "name":"k_EChatRoomEnterResponseClanDisabled", "value":"8" }, + { "name":"k_EChatRoomEnterResponseCommunityBan", "value":"9" }, + { "name":"k_EChatRoomEnterResponseMemberBlockedYou", "value":"10" }, + { "name":"k_EChatRoomEnterResponseYouBlockedMember", "value":"11" }, + { "name":"k_EChatRoomEnterResponseRatelimitExceeded", "value":"15" } + ] + }, + { + "enumname": "EChatSteamIDInstanceFlags", + "values": [ + { "name":"k_EChatAccountInstanceMask", "value":"4095" }, + { "name":"k_EChatInstanceFlagClan", "value":"524288" }, + { "name":"k_EChatInstanceFlagLobby", "value":"262144" }, + { "name":"k_EChatInstanceFlagMMSLobby", "value":"131072" } + ] + }, + { + "enumname": "EMarketingMessageFlags", + "values": [ + { "name":"k_EMarketingMessageFlagsNone", "value":"0" }, + { "name":"k_EMarketingMessageFlagsHighPriority", "value":"1" }, + { "name":"k_EMarketingMessageFlagsPlatformWindows", "value":"2" }, + { "name":"k_EMarketingMessageFlagsPlatformMac", "value":"4" }, + { "name":"k_EMarketingMessageFlagsPlatformLinux", "value":"8" }, + { "name":"k_EMarketingMessageFlagsPlatformRestrictions", "value":"14" } + ] + }, + { + "enumname": "ENotificationPosition", + "values": [ + { "name":"k_EPositionTopLeft", "value":"0" }, + { "name":"k_EPositionTopRight", "value":"1" }, + { "name":"k_EPositionBottomLeft", "value":"2" }, + { "name":"k_EPositionBottomRight", "value":"3" } + ] + }, + { + "enumname": "EBroadcastUploadResult", + "values": [ + { "name":"k_EBroadcastUploadResultNone", "value":"0" }, + { "name":"k_EBroadcastUploadResultOK", "value":"1" }, + { "name":"k_EBroadcastUploadResultInitFailed", "value":"2" }, + { "name":"k_EBroadcastUploadResultFrameFailed", "value":"3" }, + { "name":"k_EBroadcastUploadResultTimeout", "value":"4" }, + { "name":"k_EBroadcastUploadResultBandwidthExceeded", "value":"5" }, + { "name":"k_EBroadcastUploadResultLowFPS", "value":"6" }, + { "name":"k_EBroadcastUploadResultMissingKeyFrames", "value":"7" }, + { "name":"k_EBroadcastUploadResultNoConnection", "value":"8" }, + { "name":"k_EBroadcastUploadResultRelayFailed", "value":"9" }, + { "name":"k_EBroadcastUploadResultSettingsChanged", "value":"10" }, + { "name":"k_EBroadcastUploadResultMissingAudio", "value":"11" }, + { "name":"k_EBroadcastUploadResultTooFarBehind", "value":"12" }, + { "name":"k_EBroadcastUploadResultTranscodeBehind", "value":"13" }, + { "name":"k_EBroadcastUploadResultNotAllowedToPlay", "value":"14" }, + { "name":"k_EBroadcastUploadResultBusy", "value":"15" }, + { "name":"k_EBroadcastUploadResultBanned", "value":"16" }, + { "name":"k_EBroadcastUploadResultAlreadyActive", "value":"17" }, + { "name":"k_EBroadcastUploadResultForcedOff", "value":"18" }, + { "name":"k_EBroadcastUploadResultAudioBehind", "value":"19" }, + { "name":"k_EBroadcastUploadResultShutdown", "value":"20" }, + { "name":"k_EBroadcastUploadResultDisconnect", "value":"21" }, + { "name":"k_EBroadcastUploadResultVideoInitFailed", "value":"22" }, + { "name":"k_EBroadcastUploadResultAudioInitFailed", "value":"23" } + ] + }, + { + "enumname": "ELaunchOptionType", + "values": [ + { "name":"k_ELaunchOptionType_None", "value":"0" }, + { "name":"k_ELaunchOptionType_Default", "value":"1" }, + { "name":"k_ELaunchOptionType_SafeMode", "value":"2" }, + { "name":"k_ELaunchOptionType_Multiplayer", "value":"3" }, + { "name":"k_ELaunchOptionType_Config", "value":"4" }, + { "name":"k_ELaunchOptionType_OpenVR", "value":"5" }, + { "name":"k_ELaunchOptionType_Server", "value":"6" }, + { "name":"k_ELaunchOptionType_Editor", "value":"7" }, + { "name":"k_ELaunchOptionType_Manual", "value":"8" }, + { "name":"k_ELaunchOptionType_Benchmark", "value":"9" }, + { "name":"k_ELaunchOptionType_Option1", "value":"10" }, + { "name":"k_ELaunchOptionType_Option2", "value":"11" }, + { "name":"k_ELaunchOptionType_Option3", "value":"12" }, + { "name":"k_ELaunchOptionType_OculusVR", "value":"13" }, + { "name":"k_ELaunchOptionType_OpenVROverlay", "value":"14" }, + { "name":"k_ELaunchOptionType_OSVR", "value":"15" }, + { "name":"k_ELaunchOptionType_Dialog", "value":"1000" } + ] + }, + { + "enumname": "EVRHMDType", + "values": [ + { "name":"k_eEVRHMDType_None", "value":"-1" }, + { "name":"k_eEVRHMDType_Unknown", "value":"0" }, + { "name":"k_eEVRHMDType_HTC_Dev", "value":"1" }, + { "name":"k_eEVRHMDType_HTC_VivePre", "value":"2" }, + { "name":"k_eEVRHMDType_HTC_Vive", "value":"3" }, + { "name":"k_eEVRHMDType_HTC_VivePro", "value":"4" }, + { "name":"k_eEVRHMDType_HTC_ViveCosmos", "value":"5" }, + { "name":"k_eEVRHMDType_HTC_Unknown", "value":"20" }, + { "name":"k_eEVRHMDType_Oculus_DK1", "value":"21" }, + { "name":"k_eEVRHMDType_Oculus_DK2", "value":"22" }, + { "name":"k_eEVRHMDType_Oculus_Rift", "value":"23" }, + { "name":"k_eEVRHMDType_Oculus_RiftS", "value":"24" }, + { "name":"k_eEVRHMDType_Oculus_Quest", "value":"25" }, + { "name":"k_eEVRHMDType_Oculus_Unknown", "value":"40" }, + { "name":"k_eEVRHMDType_Acer_Unknown", "value":"50" }, + { "name":"k_eEVRHMDType_Acer_WindowsMR", "value":"51" }, + { "name":"k_eEVRHMDType_Dell_Unknown", "value":"60" }, + { "name":"k_eEVRHMDType_Dell_Visor", "value":"61" }, + { "name":"k_eEVRHMDType_Lenovo_Unknown", "value":"70" }, + { "name":"k_eEVRHMDType_Lenovo_Explorer", "value":"71" }, + { "name":"k_eEVRHMDType_HP_Unknown", "value":"80" }, + { "name":"k_eEVRHMDType_HP_WindowsMR", "value":"81" }, + { "name":"k_eEVRHMDType_HP_Reverb", "value":"82" }, + { "name":"k_eEVRHMDType_HP_ReverbG2", "value":"1463" }, + { "name":"k_eEVRHMDType_Samsung_Unknown", "value":"90" }, + { "name":"k_eEVRHMDType_Samsung_Odyssey", "value":"91" }, + { "name":"k_eEVRHMDType_Unannounced_Unknown", "value":"100" }, + { "name":"k_eEVRHMDType_Unannounced_WindowsMR", "value":"101" }, + { "name":"k_eEVRHMDType_vridge", "value":"110" }, + { "name":"k_eEVRHMDType_Huawei_Unknown", "value":"120" }, + { "name":"k_eEVRHMDType_Huawei_VR2", "value":"121" }, + { "name":"k_eEVRHMDType_Huawei_EndOfRange", "value":"129" }, + { "name":"k_eEVRHmdType_Valve_Unknown", "value":"130" }, + { "name":"k_eEVRHmdType_Valve_Index", "value":"131" } + ] + }, + { + "enumname": "EMarketNotAllowedReasonFlags", + "values": [ + { "name":"k_EMarketNotAllowedReason_None", "value":"0" }, + { "name":"k_EMarketNotAllowedReason_TemporaryFailure", "value":"1" }, + { "name":"k_EMarketNotAllowedReason_AccountDisabled", "value":"2" }, + { "name":"k_EMarketNotAllowedReason_AccountLockedDown", "value":"4" }, + { "name":"k_EMarketNotAllowedReason_AccountLimited", "value":"8" }, + { "name":"k_EMarketNotAllowedReason_TradeBanned", "value":"16" }, + { "name":"k_EMarketNotAllowedReason_AccountNotTrusted", "value":"32" }, + { "name":"k_EMarketNotAllowedReason_SteamGuardNotEnabled", "value":"64" }, + { "name":"k_EMarketNotAllowedReason_SteamGuardOnlyRecentlyEnabled", "value":"128" }, + { "name":"k_EMarketNotAllowedReason_RecentPasswordReset", "value":"256" }, + { "name":"k_EMarketNotAllowedReason_NewPaymentMethod", "value":"512" }, + { "name":"k_EMarketNotAllowedReason_InvalidCookie", "value":"1024" }, + { "name":"k_EMarketNotAllowedReason_UsingNewDevice", "value":"2048" }, + { "name":"k_EMarketNotAllowedReason_RecentSelfRefund", "value":"4096" }, + { "name":"k_EMarketNotAllowedReason_NewPaymentMethodCannotBeVerified", "value":"8192" }, + { "name":"k_EMarketNotAllowedReason_NoRecentPurchases", "value":"16384" }, + { "name":"k_EMarketNotAllowedReason_AcceptedWalletGift", "value":"32768" } + ] + }, + { + "enumname": "EDurationControlProgress", + "values": [ + { "name":"k_EDurationControlProgress_Full", "value":"0" }, + { "name":"k_EDurationControlProgress_Half", "value":"1" }, + { "name":"k_EDurationControlProgress_None", "value":"2" }, + { "name":"k_EDurationControl_ExitSoon_3h", "value":"3" }, + { "name":"k_EDurationControl_ExitSoon_5h", "value":"4" }, + { "name":"k_EDurationControl_ExitSoon_Night", "value":"5" } + ] + }, + { + "enumname": "EDurationControlNotification", + "values": [ + { "name":"k_EDurationControlNotification_None", "value":"0" }, + { "name":"k_EDurationControlNotification_1Hour", "value":"1" }, + { "name":"k_EDurationControlNotification_3Hours", "value":"2" }, + { "name":"k_EDurationControlNotification_HalfProgress", "value":"3" }, + { "name":"k_EDurationControlNotification_NoProgress", "value":"4" }, + { "name":"k_EDurationControlNotification_ExitSoon_3h", "value":"5" }, + { "name":"k_EDurationControlNotification_ExitSoon_5h", "value":"6" }, + { "name":"k_EDurationControlNotification_ExitSoon_Night", "value":"7" } + ] + }, + { + "enumname": "EDurationControlOnlineState", + "values": [ + { "name":"k_EDurationControlOnlineState_Invalid", "value":"0" }, + { "name":"k_EDurationControlOnlineState_Offline", "value":"1" }, + { "name":"k_EDurationControlOnlineState_Online", "value":"2" }, + { "name":"k_EDurationControlOnlineState_OnlineHighPri", "value":"3" } + ] + }, + { + "enumname": "EGameSearchErrorCode_t", + "values": [ + { "name":"k_EGameSearchErrorCode_OK", "value":"1" }, + { "name":"k_EGameSearchErrorCode_Failed_Search_Already_In_Progress", "value":"2" }, + { "name":"k_EGameSearchErrorCode_Failed_No_Search_In_Progress", "value":"3" }, + { "name":"k_EGameSearchErrorCode_Failed_Not_Lobby_Leader", "value":"4" }, + { "name":"k_EGameSearchErrorCode_Failed_No_Host_Available", "value":"5" }, + { "name":"k_EGameSearchErrorCode_Failed_Search_Params_Invalid", "value":"6" }, + { "name":"k_EGameSearchErrorCode_Failed_Offline", "value":"7" }, + { "name":"k_EGameSearchErrorCode_Failed_NotAuthorized", "value":"8" }, + { "name":"k_EGameSearchErrorCode_Failed_Unknown_Error", "value":"9" } + ] + }, + { + "enumname": "EPlayerResult_t", + "values": [ + { "name":"k_EPlayerResultFailedToConnect", "value":"1" }, + { "name":"k_EPlayerResultAbandoned", "value":"2" }, + { "name":"k_EPlayerResultKicked", "value":"3" }, + { "name":"k_EPlayerResultIncomplete", "value":"4" }, + { "name":"k_EPlayerResultCompleted", "value":"5" } + ] + }, + { + "enumname": "ESteamIPv6ConnectivityProtocol", + "values": [ + { "name":"k_ESteamIPv6ConnectivityProtocol_Invalid", "value":"0" }, + { "name":"k_ESteamIPv6ConnectivityProtocol_HTTP", "value":"1" }, + { "name":"k_ESteamIPv6ConnectivityProtocol_UDP", "value":"2" } + ] + }, + { + "enumname": "ESteamIPv6ConnectivityState", + "values": [ + { "name":"k_ESteamIPv6ConnectivityState_Unknown", "value":"0" }, + { "name":"k_ESteamIPv6ConnectivityState_Good", "value":"1" }, + { "name":"k_ESteamIPv6ConnectivityState_Bad", "value":"2" } + ] + }, + { + "enumname": "EFriendRelationship", + "values": [ + { "name":"k_EFriendRelationshipNone", "value":"0" }, + { "name":"k_EFriendRelationshipBlocked", "value":"1" }, + { "name":"k_EFriendRelationshipRequestRecipient", "value":"2" }, + { "name":"k_EFriendRelationshipFriend", "value":"3" }, + { "name":"k_EFriendRelationshipRequestInitiator", "value":"4" }, + { "name":"k_EFriendRelationshipIgnored", "value":"5" }, + { "name":"k_EFriendRelationshipIgnoredFriend", "value":"6" }, + { "name":"k_EFriendRelationshipSuggested_DEPRECATED", "value":"7" }, + { "name":"k_EFriendRelationshipMax", "value":"8" } + ] + }, + { + "enumname": "EPersonaState", + "values": [ + { "name":"k_EPersonaStateOffline", "value":"0" }, + { "name":"k_EPersonaStateOnline", "value":"1" }, + { "name":"k_EPersonaStateBusy", "value":"2" }, + { "name":"k_EPersonaStateAway", "value":"3" }, + { "name":"k_EPersonaStateSnooze", "value":"4" }, + { "name":"k_EPersonaStateLookingToTrade", "value":"5" }, + { "name":"k_EPersonaStateLookingToPlay", "value":"6" }, + { "name":"k_EPersonaStateInvisible", "value":"7" }, + { "name":"k_EPersonaStateMax", "value":"8" } + ] + }, + { + "enumname": "EFriendFlags", + "values": [ + { "name":"k_EFriendFlagNone", "value":"0" }, + { "name":"k_EFriendFlagBlocked", "value":"1" }, + { "name":"k_EFriendFlagFriendshipRequested", "value":"2" }, + { "name":"k_EFriendFlagImmediate", "value":"4" }, + { "name":"k_EFriendFlagClanMember", "value":"8" }, + { "name":"k_EFriendFlagOnGameServer", "value":"16" }, + { "name":"k_EFriendFlagRequestingFriendship", "value":"128" }, + { "name":"k_EFriendFlagRequestingInfo", "value":"256" }, + { "name":"k_EFriendFlagIgnored", "value":"512" }, + { "name":"k_EFriendFlagIgnoredFriend", "value":"1024" }, + { "name":"k_EFriendFlagChatMember", "value":"4096" }, + { "name":"k_EFriendFlagAll", "value":"65535" } + ] + }, + { + "enumname": "EUserRestriction", + "values": [ + { "name":"k_nUserRestrictionNone", "value":"0" }, + { "name":"k_nUserRestrictionUnknown", "value":"1" }, + { "name":"k_nUserRestrictionAnyChat", "value":"2" }, + { "name":"k_nUserRestrictionVoiceChat", "value":"4" }, + { "name":"k_nUserRestrictionGroupChat", "value":"8" }, + { "name":"k_nUserRestrictionRating", "value":"16" }, + { "name":"k_nUserRestrictionGameInvites", "value":"32" }, + { "name":"k_nUserRestrictionTrading", "value":"64" } + ] + }, + { + "enumname": "EOverlayToStoreFlag", + "values": [ + { "name":"k_EOverlayToStoreFlag_None", "value":"0" }, + { "name":"k_EOverlayToStoreFlag_AddToCart", "value":"1" }, + { "name":"k_EOverlayToStoreFlag_AddToCartAndShow", "value":"2" } + ] + }, + { + "enumname": "EActivateGameOverlayToWebPageMode", + "values": [ + { "name":"k_EActivateGameOverlayToWebPageMode_Default", "value":"0" }, + { "name":"k_EActivateGameOverlayToWebPageMode_Modal", "value":"1" } + ] + }, + { + "enumname": "EPersonaChange", + "values": [ + { "name":"k_EPersonaChangeName", "value":"1" }, + { "name":"k_EPersonaChangeStatus", "value":"2" }, + { "name":"k_EPersonaChangeComeOnline", "value":"4" }, + { "name":"k_EPersonaChangeGoneOffline", "value":"8" }, + { "name":"k_EPersonaChangeGamePlayed", "value":"16" }, + { "name":"k_EPersonaChangeGameServer", "value":"32" }, + { "name":"k_EPersonaChangeAvatar", "value":"64" }, + { "name":"k_EPersonaChangeJoinedSource", "value":"128" }, + { "name":"k_EPersonaChangeLeftSource", "value":"256" }, + { "name":"k_EPersonaChangeRelationshipChanged", "value":"512" }, + { "name":"k_EPersonaChangeNameFirstSet", "value":"1024" }, + { "name":"k_EPersonaChangeBroadcast", "value":"2048" }, + { "name":"k_EPersonaChangeNickname", "value":"4096" }, + { "name":"k_EPersonaChangeSteamLevel", "value":"8192" }, + { "name":"k_EPersonaChangeRichPresence", "value":"16384" } + ] + }, + { + "enumname": "ESteamAPICallFailure", + "values": [ + { "name":"k_ESteamAPICallFailureNone", "value":"-1" }, + { "name":"k_ESteamAPICallFailureSteamGone", "value":"0" }, + { "name":"k_ESteamAPICallFailureNetworkFailure", "value":"1" }, + { "name":"k_ESteamAPICallFailureInvalidHandle", "value":"2" }, + { "name":"k_ESteamAPICallFailureMismatchedCallback", "value":"3" } + ] + }, + { + "enumname": "EGamepadTextInputMode", + "values": [ + { "name":"k_EGamepadTextInputModeNormal", "value":"0" }, + { "name":"k_EGamepadTextInputModePassword", "value":"1" } + ] + }, + { + "enumname": "EGamepadTextInputLineMode", + "values": [ + { "name":"k_EGamepadTextInputLineModeSingleLine", "value":"0" }, + { "name":"k_EGamepadTextInputLineModeMultipleLines", "value":"1" } + ] + }, + { + "enumname": "ETextFilteringContext", + "values": [ + { "name":"k_ETextFilteringContextUnknown", "value":"0" }, + { "name":"k_ETextFilteringContextGameContent", "value":"1" }, + { "name":"k_ETextFilteringContextChat", "value":"2" }, + { "name":"k_ETextFilteringContextName", "value":"3" } + ] + }, + { + "enumname": "ECheckFileSignature", + "values": [ + { "name":"k_ECheckFileSignatureInvalidSignature", "value":"0" }, + { "name":"k_ECheckFileSignatureValidSignature", "value":"1" }, + { "name":"k_ECheckFileSignatureFileNotFound", "value":"2" }, + { "name":"k_ECheckFileSignatureNoSignaturesFoundForThisApp", "value":"3" }, + { "name":"k_ECheckFileSignatureNoSignaturesFoundForThisFile", "value":"4" } + ] + }, + { + "enumname": "EMatchMakingServerResponse", + "values": [ + { "name":"eServerResponded", "value":"0" }, + { "name":"eServerFailedToRespond", "value":"1" }, + { "name":"eNoServersListedOnMasterServer", "value":"2" } + ] + }, + { + "enumname": "ELobbyType", + "values": [ + { "name":"k_ELobbyTypePrivate", "value":"0" }, + { "name":"k_ELobbyTypeFriendsOnly", "value":"1" }, + { "name":"k_ELobbyTypePublic", "value":"2" }, + { "name":"k_ELobbyTypeInvisible", "value":"3" }, + { "name":"k_ELobbyTypePrivateUnique", "value":"4" } + ] + }, + { + "enumname": "ELobbyComparison", + "values": [ + { "name":"k_ELobbyComparisonEqualToOrLessThan", "value":"-2" }, + { "name":"k_ELobbyComparisonLessThan", "value":"-1" }, + { "name":"k_ELobbyComparisonEqual", "value":"0" }, + { "name":"k_ELobbyComparisonGreaterThan", "value":"1" }, + { "name":"k_ELobbyComparisonEqualToOrGreaterThan", "value":"2" }, + { "name":"k_ELobbyComparisonNotEqual", "value":"3" } + ] + }, + { + "enumname": "ELobbyDistanceFilter", + "values": [ + { "name":"k_ELobbyDistanceFilterClose", "value":"0" }, + { "name":"k_ELobbyDistanceFilterDefault", "value":"1" }, + { "name":"k_ELobbyDistanceFilterFar", "value":"2" }, + { "name":"k_ELobbyDistanceFilterWorldwide", "value":"3" } + ] + }, + { + "enumname": "EChatMemberStateChange", + "values": [ + { "name":"k_EChatMemberStateChangeEntered", "value":"1" }, + { "name":"k_EChatMemberStateChangeLeft", "value":"2" }, + { "name":"k_EChatMemberStateChangeDisconnected", "value":"4" }, + { "name":"k_EChatMemberStateChangeKicked", "value":"8" }, + { "name":"k_EChatMemberStateChangeBanned", "value":"16" } + ] + }, + { + "enumname": "ESteamPartyBeaconLocationType", + "values": [ + { "name":"k_ESteamPartyBeaconLocationType_Invalid", "value":"0" }, + { "name":"k_ESteamPartyBeaconLocationType_ChatGroup", "value":"1" }, + { "name":"k_ESteamPartyBeaconLocationType_Max", "value":"2" } + ] + }, + { + "enumname": "ESteamPartyBeaconLocationData", + "values": [ + { "name":"k_ESteamPartyBeaconLocationDataInvalid", "value":"0" }, + { "name":"k_ESteamPartyBeaconLocationDataName", "value":"1" }, + { "name":"k_ESteamPartyBeaconLocationDataIconURLSmall", "value":"2" }, + { "name":"k_ESteamPartyBeaconLocationDataIconURLMedium", "value":"3" }, + { "name":"k_ESteamPartyBeaconLocationDataIconURLLarge", "value":"4" } + ] + }, + { + "enumname": "ERemoteStoragePlatform", + "values": [ + { "name":"k_ERemoteStoragePlatformNone", "value":"0" }, + { "name":"k_ERemoteStoragePlatformWindows", "value":"1" }, + { "name":"k_ERemoteStoragePlatformOSX", "value":"2" }, + { "name":"k_ERemoteStoragePlatformPS3", "value":"4" }, + { "name":"k_ERemoteStoragePlatformLinux", "value":"8" }, + { "name":"k_ERemoteStoragePlatformSwitch", "value":"16" }, + { "name":"k_ERemoteStoragePlatformAndroid", "value":"32" }, + { "name":"k_ERemoteStoragePlatformIOS", "value":"64" }, + { "name":"k_ERemoteStoragePlatformAll", "value":"-1" } + ] + }, + { + "enumname": "ERemoteStoragePublishedFileVisibility", + "values": [ + { "name":"k_ERemoteStoragePublishedFileVisibilityPublic", "value":"0" }, + { "name":"k_ERemoteStoragePublishedFileVisibilityFriendsOnly", "value":"1" }, + { "name":"k_ERemoteStoragePublishedFileVisibilityPrivate", "value":"2" }, + { "name":"k_ERemoteStoragePublishedFileVisibilityUnlisted", "value":"3" } + ] + }, + { + "enumname": "EWorkshopFileType", + "values": [ + { "name":"k_EWorkshopFileTypeFirst", "value":"0" }, + { "name":"k_EWorkshopFileTypeCommunity", "value":"0" }, + { "name":"k_EWorkshopFileTypeMicrotransaction", "value":"1" }, + { "name":"k_EWorkshopFileTypeCollection", "value":"2" }, + { "name":"k_EWorkshopFileTypeArt", "value":"3" }, + { "name":"k_EWorkshopFileTypeVideo", "value":"4" }, + { "name":"k_EWorkshopFileTypeScreenshot", "value":"5" }, + { "name":"k_EWorkshopFileTypeGame", "value":"6" }, + { "name":"k_EWorkshopFileTypeSoftware", "value":"7" }, + { "name":"k_EWorkshopFileTypeConcept", "value":"8" }, + { "name":"k_EWorkshopFileTypeWebGuide", "value":"9" }, + { "name":"k_EWorkshopFileTypeIntegratedGuide", "value":"10" }, + { "name":"k_EWorkshopFileTypeMerch", "value":"11" }, + { "name":"k_EWorkshopFileTypeControllerBinding", "value":"12" }, + { "name":"k_EWorkshopFileTypeSteamworksAccessInvite", "value":"13" }, + { "name":"k_EWorkshopFileTypeSteamVideo", "value":"14" }, + { "name":"k_EWorkshopFileTypeGameManagedItem", "value":"15" }, + { "name":"k_EWorkshopFileTypeMax", "value":"16" } + ] + }, + { + "enumname": "EWorkshopVote", + "values": [ + { "name":"k_EWorkshopVoteUnvoted", "value":"0" }, + { "name":"k_EWorkshopVoteFor", "value":"1" }, + { "name":"k_EWorkshopVoteAgainst", "value":"2" }, + { "name":"k_EWorkshopVoteLater", "value":"3" } + ] + }, + { + "enumname": "EWorkshopFileAction", + "values": [ + { "name":"k_EWorkshopFileActionPlayed", "value":"0" }, + { "name":"k_EWorkshopFileActionCompleted", "value":"1" } + ] + }, + { + "enumname": "EWorkshopEnumerationType", + "values": [ + { "name":"k_EWorkshopEnumerationTypeRankedByVote", "value":"0" }, + { "name":"k_EWorkshopEnumerationTypeRecent", "value":"1" }, + { "name":"k_EWorkshopEnumerationTypeTrending", "value":"2" }, + { "name":"k_EWorkshopEnumerationTypeFavoritesOfFriends", "value":"3" }, + { "name":"k_EWorkshopEnumerationTypeVotedByFriends", "value":"4" }, + { "name":"k_EWorkshopEnumerationTypeContentByFriends", "value":"5" }, + { "name":"k_EWorkshopEnumerationTypeRecentFromFollowedUsers", "value":"6" } + ] + }, + { + "enumname": "EWorkshopVideoProvider", + "values": [ + { "name":"k_EWorkshopVideoProviderNone", "value":"0" }, + { "name":"k_EWorkshopVideoProviderYoutube", "value":"1" } + ] + }, + { + "enumname": "EUGCReadAction", + "values": [ + { "name":"k_EUGCRead_ContinueReadingUntilFinished", "value":"0" }, + { "name":"k_EUGCRead_ContinueReading", "value":"1" }, + { "name":"k_EUGCRead_Close", "value":"2" } + ] + }, + { + "enumname": "ELeaderboardDataRequest", + "values": [ + { "name":"k_ELeaderboardDataRequestGlobal", "value":"0" }, + { "name":"k_ELeaderboardDataRequestGlobalAroundUser", "value":"1" }, + { "name":"k_ELeaderboardDataRequestFriends", "value":"2" }, + { "name":"k_ELeaderboardDataRequestUsers", "value":"3" } + ] + }, + { + "enumname": "ELeaderboardSortMethod", + "values": [ + { "name":"k_ELeaderboardSortMethodNone", "value":"0" }, + { "name":"k_ELeaderboardSortMethodAscending", "value":"1" }, + { "name":"k_ELeaderboardSortMethodDescending", "value":"2" } + ] + }, + { + "enumname": "ELeaderboardDisplayType", + "values": [ + { "name":"k_ELeaderboardDisplayTypeNone", "value":"0" }, + { "name":"k_ELeaderboardDisplayTypeNumeric", "value":"1" }, + { "name":"k_ELeaderboardDisplayTypeTimeSeconds", "value":"2" }, + { "name":"k_ELeaderboardDisplayTypeTimeMilliSeconds", "value":"3" } + ] + }, + { + "enumname": "ELeaderboardUploadScoreMethod", + "values": [ + { "name":"k_ELeaderboardUploadScoreMethodNone", "value":"0" }, + { "name":"k_ELeaderboardUploadScoreMethodKeepBest", "value":"1" }, + { "name":"k_ELeaderboardUploadScoreMethodForceUpdate", "value":"2" } + ] + }, + { + "enumname": "ERegisterActivationCodeResult", + "values": [ + { "name":"k_ERegisterActivationCodeResultOK", "value":"0" }, + { "name":"k_ERegisterActivationCodeResultFail", "value":"1" }, + { "name":"k_ERegisterActivationCodeResultAlreadyRegistered", "value":"2" }, + { "name":"k_ERegisterActivationCodeResultTimeout", "value":"3" }, + { "name":"k_ERegisterActivationCodeAlreadyOwned", "value":"4" } + ] + }, + { + "enumname": "EP2PSessionError", + "values": [ + { "name":"k_EP2PSessionErrorNone", "value":"0" }, + { "name":"k_EP2PSessionErrorNoRightsToApp", "value":"2" }, + { "name":"k_EP2PSessionErrorTimeout", "value":"4" }, + { "name":"k_EP2PSessionErrorNotRunningApp_DELETED", "value":"1" }, + { "name":"k_EP2PSessionErrorDestinationNotLoggedIn_DELETED", "value":"3" }, + { "name":"k_EP2PSessionErrorMax", "value":"5" } + ] + }, + { + "enumname": "EP2PSend", + "values": [ + { "name":"k_EP2PSendUnreliable", "value":"0" }, + { "name":"k_EP2PSendUnreliableNoDelay", "value":"1" }, + { "name":"k_EP2PSendReliable", "value":"2" }, + { "name":"k_EP2PSendReliableWithBuffering", "value":"3" } + ] + }, + { + "enumname": "ESNetSocketState", + "values": [ + { "name":"k_ESNetSocketStateInvalid", "value":"0" }, + { "name":"k_ESNetSocketStateConnected", "value":"1" }, + { "name":"k_ESNetSocketStateInitiated", "value":"10" }, + { "name":"k_ESNetSocketStateLocalCandidatesFound", "value":"11" }, + { "name":"k_ESNetSocketStateReceivedRemoteCandidates", "value":"12" }, + { "name":"k_ESNetSocketStateChallengeHandshake", "value":"15" }, + { "name":"k_ESNetSocketStateDisconnecting", "value":"21" }, + { "name":"k_ESNetSocketStateLocalDisconnect", "value":"22" }, + { "name":"k_ESNetSocketStateTimeoutDuringConnect", "value":"23" }, + { "name":"k_ESNetSocketStateRemoteEndDisconnected", "value":"24" }, + { "name":"k_ESNetSocketStateConnectionBroken", "value":"25" } + ] + }, + { + "enumname": "ESNetSocketConnectionType", + "values": [ + { "name":"k_ESNetSocketConnectionTypeNotConnected", "value":"0" }, + { "name":"k_ESNetSocketConnectionTypeUDP", "value":"1" }, + { "name":"k_ESNetSocketConnectionTypeUDPRelay", "value":"2" } + ] + }, + { + "enumname": "EVRScreenshotType", + "values": [ + { "name":"k_EVRScreenshotType_None", "value":"0" }, + { "name":"k_EVRScreenshotType_Mono", "value":"1" }, + { "name":"k_EVRScreenshotType_Stereo", "value":"2" }, + { "name":"k_EVRScreenshotType_MonoCubemap", "value":"3" }, + { "name":"k_EVRScreenshotType_MonoPanorama", "value":"4" }, + { "name":"k_EVRScreenshotType_StereoPanorama", "value":"5" } + ] + }, + { + "enumname": "AudioPlayback_Status", + "values": [ + { "name":"AudioPlayback_Undefined", "value":"0" }, + { "name":"AudioPlayback_Playing", "value":"1" }, + { "name":"AudioPlayback_Paused", "value":"2" }, + { "name":"AudioPlayback_Idle", "value":"3" } + ] + }, + { + "enumname": "EHTTPMethod", + "values": [ + { "name":"k_EHTTPMethodInvalid", "value":"0" }, + { "name":"k_EHTTPMethodGET", "value":"1" }, + { "name":"k_EHTTPMethodHEAD", "value":"2" }, + { "name":"k_EHTTPMethodPOST", "value":"3" }, + { "name":"k_EHTTPMethodPUT", "value":"4" }, + { "name":"k_EHTTPMethodDELETE", "value":"5" }, + { "name":"k_EHTTPMethodOPTIONS", "value":"6" }, + { "name":"k_EHTTPMethodPATCH", "value":"7" } + ] + }, + { + "enumname": "EHTTPStatusCode", + "values": [ + { "name":"k_EHTTPStatusCodeInvalid", "value":"0" }, + { "name":"k_EHTTPStatusCode100Continue", "value":"100" }, + { "name":"k_EHTTPStatusCode101SwitchingProtocols", "value":"101" }, + { "name":"k_EHTTPStatusCode200OK", "value":"200" }, + { "name":"k_EHTTPStatusCode201Created", "value":"201" }, + { "name":"k_EHTTPStatusCode202Accepted", "value":"202" }, + { "name":"k_EHTTPStatusCode203NonAuthoritative", "value":"203" }, + { "name":"k_EHTTPStatusCode204NoContent", "value":"204" }, + { "name":"k_EHTTPStatusCode205ResetContent", "value":"205" }, + { "name":"k_EHTTPStatusCode206PartialContent", "value":"206" }, + { "name":"k_EHTTPStatusCode300MultipleChoices", "value":"300" }, + { "name":"k_EHTTPStatusCode301MovedPermanently", "value":"301" }, + { "name":"k_EHTTPStatusCode302Found", "value":"302" }, + { "name":"k_EHTTPStatusCode303SeeOther", "value":"303" }, + { "name":"k_EHTTPStatusCode304NotModified", "value":"304" }, + { "name":"k_EHTTPStatusCode305UseProxy", "value":"305" }, + { "name":"k_EHTTPStatusCode307TemporaryRedirect", "value":"307" }, + { "name":"k_EHTTPStatusCode400BadRequest", "value":"400" }, + { "name":"k_EHTTPStatusCode401Unauthorized", "value":"401" }, + { "name":"k_EHTTPStatusCode402PaymentRequired", "value":"402" }, + { "name":"k_EHTTPStatusCode403Forbidden", "value":"403" }, + { "name":"k_EHTTPStatusCode404NotFound", "value":"404" }, + { "name":"k_EHTTPStatusCode405MethodNotAllowed", "value":"405" }, + { "name":"k_EHTTPStatusCode406NotAcceptable", "value":"406" }, + { "name":"k_EHTTPStatusCode407ProxyAuthRequired", "value":"407" }, + { "name":"k_EHTTPStatusCode408RequestTimeout", "value":"408" }, + { "name":"k_EHTTPStatusCode409Conflict", "value":"409" }, + { "name":"k_EHTTPStatusCode410Gone", "value":"410" }, + { "name":"k_EHTTPStatusCode411LengthRequired", "value":"411" }, + { "name":"k_EHTTPStatusCode412PreconditionFailed", "value":"412" }, + { "name":"k_EHTTPStatusCode413RequestEntityTooLarge", "value":"413" }, + { "name":"k_EHTTPStatusCode414RequestURITooLong", "value":"414" }, + { "name":"k_EHTTPStatusCode415UnsupportedMediaType", "value":"415" }, + { "name":"k_EHTTPStatusCode416RequestedRangeNotSatisfiable", "value":"416" }, + { "name":"k_EHTTPStatusCode417ExpectationFailed", "value":"417" }, + { "name":"k_EHTTPStatusCode4xxUnknown", "value":"418" }, + { "name":"k_EHTTPStatusCode429TooManyRequests", "value":"429" }, + { "name":"k_EHTTPStatusCode444ConnectionClosed", "value":"444" }, + { "name":"k_EHTTPStatusCode500InternalServerError", "value":"500" }, + { "name":"k_EHTTPStatusCode501NotImplemented", "value":"501" }, + { "name":"k_EHTTPStatusCode502BadGateway", "value":"502" }, + { "name":"k_EHTTPStatusCode503ServiceUnavailable", "value":"503" }, + { "name":"k_EHTTPStatusCode504GatewayTimeout", "value":"504" }, + { "name":"k_EHTTPStatusCode505HTTPVersionNotSupported", "value":"505" }, + { "name":"k_EHTTPStatusCode5xxUnknown", "value":"599" } + ] + }, + { + "enumname": "EInputSourceMode", + "values": [ + { "name":"k_EInputSourceMode_None", "value":"0" }, + { "name":"k_EInputSourceMode_Dpad", "value":"1" }, + { "name":"k_EInputSourceMode_Buttons", "value":"2" }, + { "name":"k_EInputSourceMode_FourButtons", "value":"3" }, + { "name":"k_EInputSourceMode_AbsoluteMouse", "value":"4" }, + { "name":"k_EInputSourceMode_RelativeMouse", "value":"5" }, + { "name":"k_EInputSourceMode_JoystickMove", "value":"6" }, + { "name":"k_EInputSourceMode_JoystickMouse", "value":"7" }, + { "name":"k_EInputSourceMode_JoystickCamera", "value":"8" }, + { "name":"k_EInputSourceMode_ScrollWheel", "value":"9" }, + { "name":"k_EInputSourceMode_Trigger", "value":"10" }, + { "name":"k_EInputSourceMode_TouchMenu", "value":"11" }, + { "name":"k_EInputSourceMode_MouseJoystick", "value":"12" }, + { "name":"k_EInputSourceMode_MouseRegion", "value":"13" }, + { "name":"k_EInputSourceMode_RadialMenu", "value":"14" }, + { "name":"k_EInputSourceMode_SingleButton", "value":"15" }, + { "name":"k_EInputSourceMode_Switches", "value":"16" } + ] + }, + { + "enumname": "EInputActionOrigin", + "values": [ + { "name":"k_EInputActionOrigin_None", "value":"0" }, + { "name":"k_EInputActionOrigin_SteamController_A", "value":"1" }, + { "name":"k_EInputActionOrigin_SteamController_B", "value":"2" }, + { "name":"k_EInputActionOrigin_SteamController_X", "value":"3" }, + { "name":"k_EInputActionOrigin_SteamController_Y", "value":"4" }, + { "name":"k_EInputActionOrigin_SteamController_LeftBumper", "value":"5" }, + { "name":"k_EInputActionOrigin_SteamController_RightBumper", "value":"6" }, + { "name":"k_EInputActionOrigin_SteamController_LeftGrip", "value":"7" }, + { "name":"k_EInputActionOrigin_SteamController_RightGrip", "value":"8" }, + { "name":"k_EInputActionOrigin_SteamController_Start", "value":"9" }, + { "name":"k_EInputActionOrigin_SteamController_Back", "value":"10" }, + { "name":"k_EInputActionOrigin_SteamController_LeftPad_Touch", "value":"11" }, + { "name":"k_EInputActionOrigin_SteamController_LeftPad_Swipe", "value":"12" }, + { "name":"k_EInputActionOrigin_SteamController_LeftPad_Click", "value":"13" }, + { "name":"k_EInputActionOrigin_SteamController_LeftPad_DPadNorth", "value":"14" }, + { "name":"k_EInputActionOrigin_SteamController_LeftPad_DPadSouth", "value":"15" }, + { "name":"k_EInputActionOrigin_SteamController_LeftPad_DPadWest", "value":"16" }, + { "name":"k_EInputActionOrigin_SteamController_LeftPad_DPadEast", "value":"17" }, + { "name":"k_EInputActionOrigin_SteamController_RightPad_Touch", "value":"18" }, + { "name":"k_EInputActionOrigin_SteamController_RightPad_Swipe", "value":"19" }, + { "name":"k_EInputActionOrigin_SteamController_RightPad_Click", "value":"20" }, + { "name":"k_EInputActionOrigin_SteamController_RightPad_DPadNorth", "value":"21" }, + { "name":"k_EInputActionOrigin_SteamController_RightPad_DPadSouth", "value":"22" }, + { "name":"k_EInputActionOrigin_SteamController_RightPad_DPadWest", "value":"23" }, + { "name":"k_EInputActionOrigin_SteamController_RightPad_DPadEast", "value":"24" }, + { "name":"k_EInputActionOrigin_SteamController_LeftTrigger_Pull", "value":"25" }, + { "name":"k_EInputActionOrigin_SteamController_LeftTrigger_Click", "value":"26" }, + { "name":"k_EInputActionOrigin_SteamController_RightTrigger_Pull", "value":"27" }, + { "name":"k_EInputActionOrigin_SteamController_RightTrigger_Click", "value":"28" }, + { "name":"k_EInputActionOrigin_SteamController_LeftStick_Move", "value":"29" }, + { "name":"k_EInputActionOrigin_SteamController_LeftStick_Click", "value":"30" }, + { "name":"k_EInputActionOrigin_SteamController_LeftStick_DPadNorth", "value":"31" }, + { "name":"k_EInputActionOrigin_SteamController_LeftStick_DPadSouth", "value":"32" }, + { "name":"k_EInputActionOrigin_SteamController_LeftStick_DPadWest", "value":"33" }, + { "name":"k_EInputActionOrigin_SteamController_LeftStick_DPadEast", "value":"34" }, + { "name":"k_EInputActionOrigin_SteamController_Gyro_Move", "value":"35" }, + { "name":"k_EInputActionOrigin_SteamController_Gyro_Pitch", "value":"36" }, + { "name":"k_EInputActionOrigin_SteamController_Gyro_Yaw", "value":"37" }, + { "name":"k_EInputActionOrigin_SteamController_Gyro_Roll", "value":"38" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved0", "value":"39" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved1", "value":"40" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved2", "value":"41" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved3", "value":"42" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved4", "value":"43" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved5", "value":"44" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved6", "value":"45" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved7", "value":"46" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved8", "value":"47" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved9", "value":"48" }, + { "name":"k_EInputActionOrigin_SteamController_Reserved10", "value":"49" }, + { "name":"k_EInputActionOrigin_PS4_X", "value":"50" }, + { "name":"k_EInputActionOrigin_PS4_Circle", "value":"51" }, + { "name":"k_EInputActionOrigin_PS4_Triangle", "value":"52" }, + { "name":"k_EInputActionOrigin_PS4_Square", "value":"53" }, + { "name":"k_EInputActionOrigin_PS4_LeftBumper", "value":"54" }, + { "name":"k_EInputActionOrigin_PS4_RightBumper", "value":"55" }, + { "name":"k_EInputActionOrigin_PS4_Options", "value":"56" }, + { "name":"k_EInputActionOrigin_PS4_Share", "value":"57" }, + { "name":"k_EInputActionOrigin_PS4_LeftPad_Touch", "value":"58" }, + { "name":"k_EInputActionOrigin_PS4_LeftPad_Swipe", "value":"59" }, + { "name":"k_EInputActionOrigin_PS4_LeftPad_Click", "value":"60" }, + { "name":"k_EInputActionOrigin_PS4_LeftPad_DPadNorth", "value":"61" }, + { "name":"k_EInputActionOrigin_PS4_LeftPad_DPadSouth", "value":"62" }, + { "name":"k_EInputActionOrigin_PS4_LeftPad_DPadWest", "value":"63" }, + { "name":"k_EInputActionOrigin_PS4_LeftPad_DPadEast", "value":"64" }, + { "name":"k_EInputActionOrigin_PS4_RightPad_Touch", "value":"65" }, + { "name":"k_EInputActionOrigin_PS4_RightPad_Swipe", "value":"66" }, + { "name":"k_EInputActionOrigin_PS4_RightPad_Click", "value":"67" }, + { "name":"k_EInputActionOrigin_PS4_RightPad_DPadNorth", "value":"68" }, + { "name":"k_EInputActionOrigin_PS4_RightPad_DPadSouth", "value":"69" }, + { "name":"k_EInputActionOrigin_PS4_RightPad_DPadWest", "value":"70" }, + { "name":"k_EInputActionOrigin_PS4_RightPad_DPadEast", "value":"71" }, + { "name":"k_EInputActionOrigin_PS4_CenterPad_Touch", "value":"72" }, + { "name":"k_EInputActionOrigin_PS4_CenterPad_Swipe", "value":"73" }, + { "name":"k_EInputActionOrigin_PS4_CenterPad_Click", "value":"74" }, + { "name":"k_EInputActionOrigin_PS4_CenterPad_DPadNorth", "value":"75" }, + { "name":"k_EInputActionOrigin_PS4_CenterPad_DPadSouth", "value":"76" }, + { "name":"k_EInputActionOrigin_PS4_CenterPad_DPadWest", "value":"77" }, + { "name":"k_EInputActionOrigin_PS4_CenterPad_DPadEast", "value":"78" }, + { "name":"k_EInputActionOrigin_PS4_LeftTrigger_Pull", "value":"79" }, + { "name":"k_EInputActionOrigin_PS4_LeftTrigger_Click", "value":"80" }, + { "name":"k_EInputActionOrigin_PS4_RightTrigger_Pull", "value":"81" }, + { "name":"k_EInputActionOrigin_PS4_RightTrigger_Click", "value":"82" }, + { "name":"k_EInputActionOrigin_PS4_LeftStick_Move", "value":"83" }, + { "name":"k_EInputActionOrigin_PS4_LeftStick_Click", "value":"84" }, + { "name":"k_EInputActionOrigin_PS4_LeftStick_DPadNorth", "value":"85" }, + { "name":"k_EInputActionOrigin_PS4_LeftStick_DPadSouth", "value":"86" }, + { "name":"k_EInputActionOrigin_PS4_LeftStick_DPadWest", "value":"87" }, + { "name":"k_EInputActionOrigin_PS4_LeftStick_DPadEast", "value":"88" }, + { "name":"k_EInputActionOrigin_PS4_RightStick_Move", "value":"89" }, + { "name":"k_EInputActionOrigin_PS4_RightStick_Click", "value":"90" }, + { "name":"k_EInputActionOrigin_PS4_RightStick_DPadNorth", "value":"91" }, + { "name":"k_EInputActionOrigin_PS4_RightStick_DPadSouth", "value":"92" }, + { "name":"k_EInputActionOrigin_PS4_RightStick_DPadWest", "value":"93" }, + { "name":"k_EInputActionOrigin_PS4_RightStick_DPadEast", "value":"94" }, + { "name":"k_EInputActionOrigin_PS4_DPad_North", "value":"95" }, + { "name":"k_EInputActionOrigin_PS4_DPad_South", "value":"96" }, + { "name":"k_EInputActionOrigin_PS4_DPad_West", "value":"97" }, + { "name":"k_EInputActionOrigin_PS4_DPad_East", "value":"98" }, + { "name":"k_EInputActionOrigin_PS4_Gyro_Move", "value":"99" }, + { "name":"k_EInputActionOrigin_PS4_Gyro_Pitch", "value":"100" }, + { "name":"k_EInputActionOrigin_PS4_Gyro_Yaw", "value":"101" }, + { "name":"k_EInputActionOrigin_PS4_Gyro_Roll", "value":"102" }, + { "name":"k_EInputActionOrigin_PS4_DPad_Move", "value":"103" }, + { "name":"k_EInputActionOrigin_PS4_Reserved1", "value":"104" }, + { "name":"k_EInputActionOrigin_PS4_Reserved2", "value":"105" }, + { "name":"k_EInputActionOrigin_PS4_Reserved3", "value":"106" }, + { "name":"k_EInputActionOrigin_PS4_Reserved4", "value":"107" }, + { "name":"k_EInputActionOrigin_PS4_Reserved5", "value":"108" }, + { "name":"k_EInputActionOrigin_PS4_Reserved6", "value":"109" }, + { "name":"k_EInputActionOrigin_PS4_Reserved7", "value":"110" }, + { "name":"k_EInputActionOrigin_PS4_Reserved8", "value":"111" }, + { "name":"k_EInputActionOrigin_PS4_Reserved9", "value":"112" }, + { "name":"k_EInputActionOrigin_PS4_Reserved10", "value":"113" }, + { "name":"k_EInputActionOrigin_XBoxOne_A", "value":"114" }, + { "name":"k_EInputActionOrigin_XBoxOne_B", "value":"115" }, + { "name":"k_EInputActionOrigin_XBoxOne_X", "value":"116" }, + { "name":"k_EInputActionOrigin_XBoxOne_Y", "value":"117" }, + { "name":"k_EInputActionOrigin_XBoxOne_LeftBumper", "value":"118" }, + { "name":"k_EInputActionOrigin_XBoxOne_RightBumper", "value":"119" }, + { "name":"k_EInputActionOrigin_XBoxOne_Menu", "value":"120" }, + { "name":"k_EInputActionOrigin_XBoxOne_View", "value":"121" }, + { "name":"k_EInputActionOrigin_XBoxOne_LeftTrigger_Pull", "value":"122" }, + { "name":"k_EInputActionOrigin_XBoxOne_LeftTrigger_Click", "value":"123" }, + { "name":"k_EInputActionOrigin_XBoxOne_RightTrigger_Pull", "value":"124" }, + { "name":"k_EInputActionOrigin_XBoxOne_RightTrigger_Click", "value":"125" }, + { "name":"k_EInputActionOrigin_XBoxOne_LeftStick_Move", "value":"126" }, + { "name":"k_EInputActionOrigin_XBoxOne_LeftStick_Click", "value":"127" }, + { "name":"k_EInputActionOrigin_XBoxOne_LeftStick_DPadNorth", "value":"128" }, + { "name":"k_EInputActionOrigin_XBoxOne_LeftStick_DPadSouth", "value":"129" }, + { "name":"k_EInputActionOrigin_XBoxOne_LeftStick_DPadWest", "value":"130" }, + { "name":"k_EInputActionOrigin_XBoxOne_LeftStick_DPadEast", "value":"131" }, + { "name":"k_EInputActionOrigin_XBoxOne_RightStick_Move", "value":"132" }, + { "name":"k_EInputActionOrigin_XBoxOne_RightStick_Click", "value":"133" }, + { "name":"k_EInputActionOrigin_XBoxOne_RightStick_DPadNorth", "value":"134" }, + { "name":"k_EInputActionOrigin_XBoxOne_RightStick_DPadSouth", "value":"135" }, + { "name":"k_EInputActionOrigin_XBoxOne_RightStick_DPadWest", "value":"136" }, + { "name":"k_EInputActionOrigin_XBoxOne_RightStick_DPadEast", "value":"137" }, + { "name":"k_EInputActionOrigin_XBoxOne_DPad_North", "value":"138" }, + { "name":"k_EInputActionOrigin_XBoxOne_DPad_South", "value":"139" }, + { "name":"k_EInputActionOrigin_XBoxOne_DPad_West", "value":"140" }, + { "name":"k_EInputActionOrigin_XBoxOne_DPad_East", "value":"141" }, + { "name":"k_EInputActionOrigin_XBoxOne_DPad_Move", "value":"142" }, + { "name":"k_EInputActionOrigin_XBoxOne_Reserved1", "value":"143" }, + { "name":"k_EInputActionOrigin_XBoxOne_Reserved2", "value":"144" }, + { "name":"k_EInputActionOrigin_XBoxOne_Reserved3", "value":"145" }, + { "name":"k_EInputActionOrigin_XBoxOne_Reserved4", "value":"146" }, + { "name":"k_EInputActionOrigin_XBoxOne_Reserved5", "value":"147" }, + { "name":"k_EInputActionOrigin_XBoxOne_Reserved6", "value":"148" }, + { "name":"k_EInputActionOrigin_XBoxOne_Reserved7", "value":"149" }, + { "name":"k_EInputActionOrigin_XBoxOne_Reserved8", "value":"150" }, + { "name":"k_EInputActionOrigin_XBoxOne_Reserved9", "value":"151" }, + { "name":"k_EInputActionOrigin_XBoxOne_Reserved10", "value":"152" }, + { "name":"k_EInputActionOrigin_XBox360_A", "value":"153" }, + { "name":"k_EInputActionOrigin_XBox360_B", "value":"154" }, + { "name":"k_EInputActionOrigin_XBox360_X", "value":"155" }, + { "name":"k_EInputActionOrigin_XBox360_Y", "value":"156" }, + { "name":"k_EInputActionOrigin_XBox360_LeftBumper", "value":"157" }, + { "name":"k_EInputActionOrigin_XBox360_RightBumper", "value":"158" }, + { "name":"k_EInputActionOrigin_XBox360_Start", "value":"159" }, + { "name":"k_EInputActionOrigin_XBox360_Back", "value":"160" }, + { "name":"k_EInputActionOrigin_XBox360_LeftTrigger_Pull", "value":"161" }, + { "name":"k_EInputActionOrigin_XBox360_LeftTrigger_Click", "value":"162" }, + { "name":"k_EInputActionOrigin_XBox360_RightTrigger_Pull", "value":"163" }, + { "name":"k_EInputActionOrigin_XBox360_RightTrigger_Click", "value":"164" }, + { "name":"k_EInputActionOrigin_XBox360_LeftStick_Move", "value":"165" }, + { "name":"k_EInputActionOrigin_XBox360_LeftStick_Click", "value":"166" }, + { "name":"k_EInputActionOrigin_XBox360_LeftStick_DPadNorth", "value":"167" }, + { "name":"k_EInputActionOrigin_XBox360_LeftStick_DPadSouth", "value":"168" }, + { "name":"k_EInputActionOrigin_XBox360_LeftStick_DPadWest", "value":"169" }, + { "name":"k_EInputActionOrigin_XBox360_LeftStick_DPadEast", "value":"170" }, + { "name":"k_EInputActionOrigin_XBox360_RightStick_Move", "value":"171" }, + { "name":"k_EInputActionOrigin_XBox360_RightStick_Click", "value":"172" }, + { "name":"k_EInputActionOrigin_XBox360_RightStick_DPadNorth", "value":"173" }, + { "name":"k_EInputActionOrigin_XBox360_RightStick_DPadSouth", "value":"174" }, + { "name":"k_EInputActionOrigin_XBox360_RightStick_DPadWest", "value":"175" }, + { "name":"k_EInputActionOrigin_XBox360_RightStick_DPadEast", "value":"176" }, + { "name":"k_EInputActionOrigin_XBox360_DPad_North", "value":"177" }, + { "name":"k_EInputActionOrigin_XBox360_DPad_South", "value":"178" }, + { "name":"k_EInputActionOrigin_XBox360_DPad_West", "value":"179" }, + { "name":"k_EInputActionOrigin_XBox360_DPad_East", "value":"180" }, + { "name":"k_EInputActionOrigin_XBox360_DPad_Move", "value":"181" }, + { "name":"k_EInputActionOrigin_XBox360_Reserved1", "value":"182" }, + { "name":"k_EInputActionOrigin_XBox360_Reserved2", "value":"183" }, + { "name":"k_EInputActionOrigin_XBox360_Reserved3", "value":"184" }, + { "name":"k_EInputActionOrigin_XBox360_Reserved4", "value":"185" }, + { "name":"k_EInputActionOrigin_XBox360_Reserved5", "value":"186" }, + { "name":"k_EInputActionOrigin_XBox360_Reserved6", "value":"187" }, + { "name":"k_EInputActionOrigin_XBox360_Reserved7", "value":"188" }, + { "name":"k_EInputActionOrigin_XBox360_Reserved8", "value":"189" }, + { "name":"k_EInputActionOrigin_XBox360_Reserved9", "value":"190" }, + { "name":"k_EInputActionOrigin_XBox360_Reserved10", "value":"191" }, + { "name":"k_EInputActionOrigin_Switch_A", "value":"192" }, + { "name":"k_EInputActionOrigin_Switch_B", "value":"193" }, + { "name":"k_EInputActionOrigin_Switch_X", "value":"194" }, + { "name":"k_EInputActionOrigin_Switch_Y", "value":"195" }, + { "name":"k_EInputActionOrigin_Switch_LeftBumper", "value":"196" }, + { "name":"k_EInputActionOrigin_Switch_RightBumper", "value":"197" }, + { "name":"k_EInputActionOrigin_Switch_Plus", "value":"198" }, + { "name":"k_EInputActionOrigin_Switch_Minus", "value":"199" }, + { "name":"k_EInputActionOrigin_Switch_Capture", "value":"200" }, + { "name":"k_EInputActionOrigin_Switch_LeftTrigger_Pull", "value":"201" }, + { "name":"k_EInputActionOrigin_Switch_LeftTrigger_Click", "value":"202" }, + { "name":"k_EInputActionOrigin_Switch_RightTrigger_Pull", "value":"203" }, + { "name":"k_EInputActionOrigin_Switch_RightTrigger_Click", "value":"204" }, + { "name":"k_EInputActionOrigin_Switch_LeftStick_Move", "value":"205" }, + { "name":"k_EInputActionOrigin_Switch_LeftStick_Click", "value":"206" }, + { "name":"k_EInputActionOrigin_Switch_LeftStick_DPadNorth", "value":"207" }, + { "name":"k_EInputActionOrigin_Switch_LeftStick_DPadSouth", "value":"208" }, + { "name":"k_EInputActionOrigin_Switch_LeftStick_DPadWest", "value":"209" }, + { "name":"k_EInputActionOrigin_Switch_LeftStick_DPadEast", "value":"210" }, + { "name":"k_EInputActionOrigin_Switch_RightStick_Move", "value":"211" }, + { "name":"k_EInputActionOrigin_Switch_RightStick_Click", "value":"212" }, + { "name":"k_EInputActionOrigin_Switch_RightStick_DPadNorth", "value":"213" }, + { "name":"k_EInputActionOrigin_Switch_RightStick_DPadSouth", "value":"214" }, + { "name":"k_EInputActionOrigin_Switch_RightStick_DPadWest", "value":"215" }, + { "name":"k_EInputActionOrigin_Switch_RightStick_DPadEast", "value":"216" }, + { "name":"k_EInputActionOrigin_Switch_DPad_North", "value":"217" }, + { "name":"k_EInputActionOrigin_Switch_DPad_South", "value":"218" }, + { "name":"k_EInputActionOrigin_Switch_DPad_West", "value":"219" }, + { "name":"k_EInputActionOrigin_Switch_DPad_East", "value":"220" }, + { "name":"k_EInputActionOrigin_Switch_ProGyro_Move", "value":"221" }, + { "name":"k_EInputActionOrigin_Switch_ProGyro_Pitch", "value":"222" }, + { "name":"k_EInputActionOrigin_Switch_ProGyro_Yaw", "value":"223" }, + { "name":"k_EInputActionOrigin_Switch_ProGyro_Roll", "value":"224" }, + { "name":"k_EInputActionOrigin_Switch_DPad_Move", "value":"225" }, + { "name":"k_EInputActionOrigin_Switch_Reserved1", "value":"226" }, + { "name":"k_EInputActionOrigin_Switch_Reserved2", "value":"227" }, + { "name":"k_EInputActionOrigin_Switch_Reserved3", "value":"228" }, + { "name":"k_EInputActionOrigin_Switch_Reserved4", "value":"229" }, + { "name":"k_EInputActionOrigin_Switch_Reserved5", "value":"230" }, + { "name":"k_EInputActionOrigin_Switch_Reserved6", "value":"231" }, + { "name":"k_EInputActionOrigin_Switch_Reserved7", "value":"232" }, + { "name":"k_EInputActionOrigin_Switch_Reserved8", "value":"233" }, + { "name":"k_EInputActionOrigin_Switch_Reserved9", "value":"234" }, + { "name":"k_EInputActionOrigin_Switch_Reserved10", "value":"235" }, + { "name":"k_EInputActionOrigin_Switch_RightGyro_Move", "value":"236" }, + { "name":"k_EInputActionOrigin_Switch_RightGyro_Pitch", "value":"237" }, + { "name":"k_EInputActionOrigin_Switch_RightGyro_Yaw", "value":"238" }, + { "name":"k_EInputActionOrigin_Switch_RightGyro_Roll", "value":"239" }, + { "name":"k_EInputActionOrigin_Switch_LeftGyro_Move", "value":"240" }, + { "name":"k_EInputActionOrigin_Switch_LeftGyro_Pitch", "value":"241" }, + { "name":"k_EInputActionOrigin_Switch_LeftGyro_Yaw", "value":"242" }, + { "name":"k_EInputActionOrigin_Switch_LeftGyro_Roll", "value":"243" }, + { "name":"k_EInputActionOrigin_Switch_LeftGrip_Lower", "value":"244" }, + { "name":"k_EInputActionOrigin_Switch_LeftGrip_Upper", "value":"245" }, + { "name":"k_EInputActionOrigin_Switch_RightGrip_Lower", "value":"246" }, + { "name":"k_EInputActionOrigin_Switch_RightGrip_Upper", "value":"247" }, + { "name":"k_EInputActionOrigin_Switch_Reserved11", "value":"248" }, + { "name":"k_EInputActionOrigin_Switch_Reserved12", "value":"249" }, + { "name":"k_EInputActionOrigin_Switch_Reserved13", "value":"250" }, + { "name":"k_EInputActionOrigin_Switch_Reserved14", "value":"251" }, + { "name":"k_EInputActionOrigin_Switch_Reserved15", "value":"252" }, + { "name":"k_EInputActionOrigin_Switch_Reserved16", "value":"253" }, + { "name":"k_EInputActionOrigin_Switch_Reserved17", "value":"254" }, + { "name":"k_EInputActionOrigin_Switch_Reserved18", "value":"255" }, + { "name":"k_EInputActionOrigin_Switch_Reserved19", "value":"256" }, + { "name":"k_EInputActionOrigin_Switch_Reserved20", "value":"257" }, + { "name":"k_EInputActionOrigin_PS5_X", "value":"258" }, + { "name":"k_EInputActionOrigin_PS5_Circle", "value":"259" }, + { "name":"k_EInputActionOrigin_PS5_Triangle", "value":"260" }, + { "name":"k_EInputActionOrigin_PS5_Square", "value":"261" }, + { "name":"k_EInputActionOrigin_PS5_LeftBumper", "value":"262" }, + { "name":"k_EInputActionOrigin_PS5_RightBumper", "value":"263" }, + { "name":"k_EInputActionOrigin_PS5_Option", "value":"264" }, + { "name":"k_EInputActionOrigin_PS5_Create", "value":"265" }, + { "name":"k_EInputActionOrigin_PS5_Mute", "value":"266" }, + { "name":"k_EInputActionOrigin_PS5_LeftPad_Touch", "value":"267" }, + { "name":"k_EInputActionOrigin_PS5_LeftPad_Swipe", "value":"268" }, + { "name":"k_EInputActionOrigin_PS5_LeftPad_Click", "value":"269" }, + { "name":"k_EInputActionOrigin_PS5_LeftPad_DPadNorth", "value":"270" }, + { "name":"k_EInputActionOrigin_PS5_LeftPad_DPadSouth", "value":"271" }, + { "name":"k_EInputActionOrigin_PS5_LeftPad_DPadWest", "value":"272" }, + { "name":"k_EInputActionOrigin_PS5_LeftPad_DPadEast", "value":"273" }, + { "name":"k_EInputActionOrigin_PS5_RightPad_Touch", "value":"274" }, + { "name":"k_EInputActionOrigin_PS5_RightPad_Swipe", "value":"275" }, + { "name":"k_EInputActionOrigin_PS5_RightPad_Click", "value":"276" }, + { "name":"k_EInputActionOrigin_PS5_RightPad_DPadNorth", "value":"277" }, + { "name":"k_EInputActionOrigin_PS5_RightPad_DPadSouth", "value":"278" }, + { "name":"k_EInputActionOrigin_PS5_RightPad_DPadWest", "value":"279" }, + { "name":"k_EInputActionOrigin_PS5_RightPad_DPadEast", "value":"280" }, + { "name":"k_EInputActionOrigin_PS5_CenterPad_Touch", "value":"281" }, + { "name":"k_EInputActionOrigin_PS5_CenterPad_Swipe", "value":"282" }, + { "name":"k_EInputActionOrigin_PS5_CenterPad_Click", "value":"283" }, + { "name":"k_EInputActionOrigin_PS5_CenterPad_DPadNorth", "value":"284" }, + { "name":"k_EInputActionOrigin_PS5_CenterPad_DPadSouth", "value":"285" }, + { "name":"k_EInputActionOrigin_PS5_CenterPad_DPadWest", "value":"286" }, + { "name":"k_EInputActionOrigin_PS5_CenterPad_DPadEast", "value":"287" }, + { "name":"k_EInputActionOrigin_PS5_LeftTrigger_Pull", "value":"288" }, + { "name":"k_EInputActionOrigin_PS5_LeftTrigger_Click", "value":"289" }, + { "name":"k_EInputActionOrigin_PS5_RightTrigger_Pull", "value":"290" }, + { "name":"k_EInputActionOrigin_PS5_RightTrigger_Click", "value":"291" }, + { "name":"k_EInputActionOrigin_PS5_LeftStick_Move", "value":"292" }, + { "name":"k_EInputActionOrigin_PS5_LeftStick_Click", "value":"293" }, + { "name":"k_EInputActionOrigin_PS5_LeftStick_DPadNorth", "value":"294" }, + { "name":"k_EInputActionOrigin_PS5_LeftStick_DPadSouth", "value":"295" }, + { "name":"k_EInputActionOrigin_PS5_LeftStick_DPadWest", "value":"296" }, + { "name":"k_EInputActionOrigin_PS5_LeftStick_DPadEast", "value":"297" }, + { "name":"k_EInputActionOrigin_PS5_RightStick_Move", "value":"298" }, + { "name":"k_EInputActionOrigin_PS5_RightStick_Click", "value":"299" }, + { "name":"k_EInputActionOrigin_PS5_RightStick_DPadNorth", "value":"300" }, + { "name":"k_EInputActionOrigin_PS5_RightStick_DPadSouth", "value":"301" }, + { "name":"k_EInputActionOrigin_PS5_RightStick_DPadWest", "value":"302" }, + { "name":"k_EInputActionOrigin_PS5_RightStick_DPadEast", "value":"303" }, + { "name":"k_EInputActionOrigin_PS5_DPad_North", "value":"304" }, + { "name":"k_EInputActionOrigin_PS5_DPad_South", "value":"305" }, + { "name":"k_EInputActionOrigin_PS5_DPad_West", "value":"306" }, + { "name":"k_EInputActionOrigin_PS5_DPad_East", "value":"307" }, + { "name":"k_EInputActionOrigin_PS5_Gyro_Move", "value":"308" }, + { "name":"k_EInputActionOrigin_PS5_Gyro_Pitch", "value":"309" }, + { "name":"k_EInputActionOrigin_PS5_Gyro_Yaw", "value":"310" }, + { "name":"k_EInputActionOrigin_PS5_Gyro_Roll", "value":"311" }, + { "name":"k_EInputActionOrigin_PS5_DPad_Move", "value":"312" }, + { "name":"k_EInputActionOrigin_PS5_Reserved1", "value":"313" }, + { "name":"k_EInputActionOrigin_PS5_Reserved2", "value":"314" }, + { "name":"k_EInputActionOrigin_PS5_Reserved3", "value":"315" }, + { "name":"k_EInputActionOrigin_PS5_Reserved4", "value":"316" }, + { "name":"k_EInputActionOrigin_PS5_Reserved5", "value":"317" }, + { "name":"k_EInputActionOrigin_PS5_Reserved6", "value":"318" }, + { "name":"k_EInputActionOrigin_PS5_Reserved7", "value":"319" }, + { "name":"k_EInputActionOrigin_PS5_Reserved8", "value":"320" }, + { "name":"k_EInputActionOrigin_PS5_Reserved9", "value":"321" }, + { "name":"k_EInputActionOrigin_PS5_Reserved10", "value":"322" }, + { "name":"k_EInputActionOrigin_PS5_Reserved11", "value":"323" }, + { "name":"k_EInputActionOrigin_PS5_Reserved12", "value":"324" }, + { "name":"k_EInputActionOrigin_PS5_Reserved13", "value":"325" }, + { "name":"k_EInputActionOrigin_PS5_Reserved14", "value":"326" }, + { "name":"k_EInputActionOrigin_PS5_Reserved15", "value":"327" }, + { "name":"k_EInputActionOrigin_PS5_Reserved16", "value":"328" }, + { "name":"k_EInputActionOrigin_PS5_Reserved17", "value":"329" }, + { "name":"k_EInputActionOrigin_PS5_Reserved18", "value":"330" }, + { "name":"k_EInputActionOrigin_PS5_Reserved19", "value":"331" }, + { "name":"k_EInputActionOrigin_PS5_Reserved20", "value":"332" }, + { "name":"k_EInputActionOrigin_Count", "value":"333" }, + { "name":"k_EInputActionOrigin_MaximumPossibleValue", "value":"32767" } + ] + }, + { + "enumname": "EXboxOrigin", + "values": [ + { "name":"k_EXboxOrigin_A", "value":"0" }, + { "name":"k_EXboxOrigin_B", "value":"1" }, + { "name":"k_EXboxOrigin_X", "value":"2" }, + { "name":"k_EXboxOrigin_Y", "value":"3" }, + { "name":"k_EXboxOrigin_LeftBumper", "value":"4" }, + { "name":"k_EXboxOrigin_RightBumper", "value":"5" }, + { "name":"k_EXboxOrigin_Menu", "value":"6" }, + { "name":"k_EXboxOrigin_View", "value":"7" }, + { "name":"k_EXboxOrigin_LeftTrigger_Pull", "value":"8" }, + { "name":"k_EXboxOrigin_LeftTrigger_Click", "value":"9" }, + { "name":"k_EXboxOrigin_RightTrigger_Pull", "value":"10" }, + { "name":"k_EXboxOrigin_RightTrigger_Click", "value":"11" }, + { "name":"k_EXboxOrigin_LeftStick_Move", "value":"12" }, + { "name":"k_EXboxOrigin_LeftStick_Click", "value":"13" }, + { "name":"k_EXboxOrigin_LeftStick_DPadNorth", "value":"14" }, + { "name":"k_EXboxOrigin_LeftStick_DPadSouth", "value":"15" }, + { "name":"k_EXboxOrigin_LeftStick_DPadWest", "value":"16" }, + { "name":"k_EXboxOrigin_LeftStick_DPadEast", "value":"17" }, + { "name":"k_EXboxOrigin_RightStick_Move", "value":"18" }, + { "name":"k_EXboxOrigin_RightStick_Click", "value":"19" }, + { "name":"k_EXboxOrigin_RightStick_DPadNorth", "value":"20" }, + { "name":"k_EXboxOrigin_RightStick_DPadSouth", "value":"21" }, + { "name":"k_EXboxOrigin_RightStick_DPadWest", "value":"22" }, + { "name":"k_EXboxOrigin_RightStick_DPadEast", "value":"23" }, + { "name":"k_EXboxOrigin_DPad_North", "value":"24" }, + { "name":"k_EXboxOrigin_DPad_South", "value":"25" }, + { "name":"k_EXboxOrigin_DPad_West", "value":"26" }, + { "name":"k_EXboxOrigin_DPad_East", "value":"27" }, + { "name":"k_EXboxOrigin_Count", "value":"28" } + ] + }, + { + "enumname": "ESteamControllerPad", + "values": [ + { "name":"k_ESteamControllerPad_Left", "value":"0" }, + { "name":"k_ESteamControllerPad_Right", "value":"1" } + ] + }, + { + "enumname": "ESteamInputType", + "values": [ + { "name":"k_ESteamInputType_Unknown", "value":"0" }, + { "name":"k_ESteamInputType_SteamController", "value":"1" }, + { "name":"k_ESteamInputType_XBox360Controller", "value":"2" }, + { "name":"k_ESteamInputType_XBoxOneController", "value":"3" }, + { "name":"k_ESteamInputType_GenericGamepad", "value":"4" }, + { "name":"k_ESteamInputType_PS4Controller", "value":"5" }, + { "name":"k_ESteamInputType_AppleMFiController", "value":"6" }, + { "name":"k_ESteamInputType_AndroidController", "value":"7" }, + { "name":"k_ESteamInputType_SwitchJoyConPair", "value":"8" }, + { "name":"k_ESteamInputType_SwitchJoyConSingle", "value":"9" }, + { "name":"k_ESteamInputType_SwitchProController", "value":"10" }, + { "name":"k_ESteamInputType_MobileTouch", "value":"11" }, + { "name":"k_ESteamInputType_PS3Controller", "value":"12" }, + { "name":"k_ESteamInputType_PS5Controller", "value":"13" }, + { "name":"k_ESteamInputType_Count", "value":"14" }, + { "name":"k_ESteamInputType_MaximumPossibleValue", "value":"255" } + ] + }, + { + "enumname": "ESteamInputLEDFlag", + "values": [ + { "name":"k_ESteamInputLEDFlag_SetColor", "value":"0" }, + { "name":"k_ESteamInputLEDFlag_RestoreUserDefault", "value":"1" } + ] + }, + { + "enumname": "EControllerActionOrigin", + "values": [ + { "name":"k_EControllerActionOrigin_None", "value":"0" }, + { "name":"k_EControllerActionOrigin_A", "value":"1" }, + { "name":"k_EControllerActionOrigin_B", "value":"2" }, + { "name":"k_EControllerActionOrigin_X", "value":"3" }, + { "name":"k_EControllerActionOrigin_Y", "value":"4" }, + { "name":"k_EControllerActionOrigin_LeftBumper", "value":"5" }, + { "name":"k_EControllerActionOrigin_RightBumper", "value":"6" }, + { "name":"k_EControllerActionOrigin_LeftGrip", "value":"7" }, + { "name":"k_EControllerActionOrigin_RightGrip", "value":"8" }, + { "name":"k_EControllerActionOrigin_Start", "value":"9" }, + { "name":"k_EControllerActionOrigin_Back", "value":"10" }, + { "name":"k_EControllerActionOrigin_LeftPad_Touch", "value":"11" }, + { "name":"k_EControllerActionOrigin_LeftPad_Swipe", "value":"12" }, + { "name":"k_EControllerActionOrigin_LeftPad_Click", "value":"13" }, + { "name":"k_EControllerActionOrigin_LeftPad_DPadNorth", "value":"14" }, + { "name":"k_EControllerActionOrigin_LeftPad_DPadSouth", "value":"15" }, + { "name":"k_EControllerActionOrigin_LeftPad_DPadWest", "value":"16" }, + { "name":"k_EControllerActionOrigin_LeftPad_DPadEast", "value":"17" }, + { "name":"k_EControllerActionOrigin_RightPad_Touch", "value":"18" }, + { "name":"k_EControllerActionOrigin_RightPad_Swipe", "value":"19" }, + { "name":"k_EControllerActionOrigin_RightPad_Click", "value":"20" }, + { "name":"k_EControllerActionOrigin_RightPad_DPadNorth", "value":"21" }, + { "name":"k_EControllerActionOrigin_RightPad_DPadSouth", "value":"22" }, + { "name":"k_EControllerActionOrigin_RightPad_DPadWest", "value":"23" }, + { "name":"k_EControllerActionOrigin_RightPad_DPadEast", "value":"24" }, + { "name":"k_EControllerActionOrigin_LeftTrigger_Pull", "value":"25" }, + { "name":"k_EControllerActionOrigin_LeftTrigger_Click", "value":"26" }, + { "name":"k_EControllerActionOrigin_RightTrigger_Pull", "value":"27" }, + { "name":"k_EControllerActionOrigin_RightTrigger_Click", "value":"28" }, + { "name":"k_EControllerActionOrigin_LeftStick_Move", "value":"29" }, + { "name":"k_EControllerActionOrigin_LeftStick_Click", "value":"30" }, + { "name":"k_EControllerActionOrigin_LeftStick_DPadNorth", "value":"31" }, + { "name":"k_EControllerActionOrigin_LeftStick_DPadSouth", "value":"32" }, + { "name":"k_EControllerActionOrigin_LeftStick_DPadWest", "value":"33" }, + { "name":"k_EControllerActionOrigin_LeftStick_DPadEast", "value":"34" }, + { "name":"k_EControllerActionOrigin_Gyro_Move", "value":"35" }, + { "name":"k_EControllerActionOrigin_Gyro_Pitch", "value":"36" }, + { "name":"k_EControllerActionOrigin_Gyro_Yaw", "value":"37" }, + { "name":"k_EControllerActionOrigin_Gyro_Roll", "value":"38" }, + { "name":"k_EControllerActionOrigin_PS4_X", "value":"39" }, + { "name":"k_EControllerActionOrigin_PS4_Circle", "value":"40" }, + { "name":"k_EControllerActionOrigin_PS4_Triangle", "value":"41" }, + { "name":"k_EControllerActionOrigin_PS4_Square", "value":"42" }, + { "name":"k_EControllerActionOrigin_PS4_LeftBumper", "value":"43" }, + { "name":"k_EControllerActionOrigin_PS4_RightBumper", "value":"44" }, + { "name":"k_EControllerActionOrigin_PS4_Options", "value":"45" }, + { "name":"k_EControllerActionOrigin_PS4_Share", "value":"46" }, + { "name":"k_EControllerActionOrigin_PS4_LeftPad_Touch", "value":"47" }, + { "name":"k_EControllerActionOrigin_PS4_LeftPad_Swipe", "value":"48" }, + { "name":"k_EControllerActionOrigin_PS4_LeftPad_Click", "value":"49" }, + { "name":"k_EControllerActionOrigin_PS4_LeftPad_DPadNorth", "value":"50" }, + { "name":"k_EControllerActionOrigin_PS4_LeftPad_DPadSouth", "value":"51" }, + { "name":"k_EControllerActionOrigin_PS4_LeftPad_DPadWest", "value":"52" }, + { "name":"k_EControllerActionOrigin_PS4_LeftPad_DPadEast", "value":"53" }, + { "name":"k_EControllerActionOrigin_PS4_RightPad_Touch", "value":"54" }, + { "name":"k_EControllerActionOrigin_PS4_RightPad_Swipe", "value":"55" }, + { "name":"k_EControllerActionOrigin_PS4_RightPad_Click", "value":"56" }, + { "name":"k_EControllerActionOrigin_PS4_RightPad_DPadNorth", "value":"57" }, + { "name":"k_EControllerActionOrigin_PS4_RightPad_DPadSouth", "value":"58" }, + { "name":"k_EControllerActionOrigin_PS4_RightPad_DPadWest", "value":"59" }, + { "name":"k_EControllerActionOrigin_PS4_RightPad_DPadEast", "value":"60" }, + { "name":"k_EControllerActionOrigin_PS4_CenterPad_Touch", "value":"61" }, + { "name":"k_EControllerActionOrigin_PS4_CenterPad_Swipe", "value":"62" }, + { "name":"k_EControllerActionOrigin_PS4_CenterPad_Click", "value":"63" }, + { "name":"k_EControllerActionOrigin_PS4_CenterPad_DPadNorth", "value":"64" }, + { "name":"k_EControllerActionOrigin_PS4_CenterPad_DPadSouth", "value":"65" }, + { "name":"k_EControllerActionOrigin_PS4_CenterPad_DPadWest", "value":"66" }, + { "name":"k_EControllerActionOrigin_PS4_CenterPad_DPadEast", "value":"67" }, + { "name":"k_EControllerActionOrigin_PS4_LeftTrigger_Pull", "value":"68" }, + { "name":"k_EControllerActionOrigin_PS4_LeftTrigger_Click", "value":"69" }, + { "name":"k_EControllerActionOrigin_PS4_RightTrigger_Pull", "value":"70" }, + { "name":"k_EControllerActionOrigin_PS4_RightTrigger_Click", "value":"71" }, + { "name":"k_EControllerActionOrigin_PS4_LeftStick_Move", "value":"72" }, + { "name":"k_EControllerActionOrigin_PS4_LeftStick_Click", "value":"73" }, + { "name":"k_EControllerActionOrigin_PS4_LeftStick_DPadNorth", "value":"74" }, + { "name":"k_EControllerActionOrigin_PS4_LeftStick_DPadSouth", "value":"75" }, + { "name":"k_EControllerActionOrigin_PS4_LeftStick_DPadWest", "value":"76" }, + { "name":"k_EControllerActionOrigin_PS4_LeftStick_DPadEast", "value":"77" }, + { "name":"k_EControllerActionOrigin_PS4_RightStick_Move", "value":"78" }, + { "name":"k_EControllerActionOrigin_PS4_RightStick_Click", "value":"79" }, + { "name":"k_EControllerActionOrigin_PS4_RightStick_DPadNorth", "value":"80" }, + { "name":"k_EControllerActionOrigin_PS4_RightStick_DPadSouth", "value":"81" }, + { "name":"k_EControllerActionOrigin_PS4_RightStick_DPadWest", "value":"82" }, + { "name":"k_EControllerActionOrigin_PS4_RightStick_DPadEast", "value":"83" }, + { "name":"k_EControllerActionOrigin_PS4_DPad_North", "value":"84" }, + { "name":"k_EControllerActionOrigin_PS4_DPad_South", "value":"85" }, + { "name":"k_EControllerActionOrigin_PS4_DPad_West", "value":"86" }, + { "name":"k_EControllerActionOrigin_PS4_DPad_East", "value":"87" }, + { "name":"k_EControllerActionOrigin_PS4_Gyro_Move", "value":"88" }, + { "name":"k_EControllerActionOrigin_PS4_Gyro_Pitch", "value":"89" }, + { "name":"k_EControllerActionOrigin_PS4_Gyro_Yaw", "value":"90" }, + { "name":"k_EControllerActionOrigin_PS4_Gyro_Roll", "value":"91" }, + { "name":"k_EControllerActionOrigin_XBoxOne_A", "value":"92" }, + { "name":"k_EControllerActionOrigin_XBoxOne_B", "value":"93" }, + { "name":"k_EControllerActionOrigin_XBoxOne_X", "value":"94" }, + { "name":"k_EControllerActionOrigin_XBoxOne_Y", "value":"95" }, + { "name":"k_EControllerActionOrigin_XBoxOne_LeftBumper", "value":"96" }, + { "name":"k_EControllerActionOrigin_XBoxOne_RightBumper", "value":"97" }, + { "name":"k_EControllerActionOrigin_XBoxOne_Menu", "value":"98" }, + { "name":"k_EControllerActionOrigin_XBoxOne_View", "value":"99" }, + { "name":"k_EControllerActionOrigin_XBoxOne_LeftTrigger_Pull", "value":"100" }, + { "name":"k_EControllerActionOrigin_XBoxOne_LeftTrigger_Click", "value":"101" }, + { "name":"k_EControllerActionOrigin_XBoxOne_RightTrigger_Pull", "value":"102" }, + { "name":"k_EControllerActionOrigin_XBoxOne_RightTrigger_Click", "value":"103" }, + { "name":"k_EControllerActionOrigin_XBoxOne_LeftStick_Move", "value":"104" }, + { "name":"k_EControllerActionOrigin_XBoxOne_LeftStick_Click", "value":"105" }, + { "name":"k_EControllerActionOrigin_XBoxOne_LeftStick_DPadNorth", "value":"106" }, + { "name":"k_EControllerActionOrigin_XBoxOne_LeftStick_DPadSouth", "value":"107" }, + { "name":"k_EControllerActionOrigin_XBoxOne_LeftStick_DPadWest", "value":"108" }, + { "name":"k_EControllerActionOrigin_XBoxOne_LeftStick_DPadEast", "value":"109" }, + { "name":"k_EControllerActionOrigin_XBoxOne_RightStick_Move", "value":"110" }, + { "name":"k_EControllerActionOrigin_XBoxOne_RightStick_Click", "value":"111" }, + { "name":"k_EControllerActionOrigin_XBoxOne_RightStick_DPadNorth", "value":"112" }, + { "name":"k_EControllerActionOrigin_XBoxOne_RightStick_DPadSouth", "value":"113" }, + { "name":"k_EControllerActionOrigin_XBoxOne_RightStick_DPadWest", "value":"114" }, + { "name":"k_EControllerActionOrigin_XBoxOne_RightStick_DPadEast", "value":"115" }, + { "name":"k_EControllerActionOrigin_XBoxOne_DPad_North", "value":"116" }, + { "name":"k_EControllerActionOrigin_XBoxOne_DPad_South", "value":"117" }, + { "name":"k_EControllerActionOrigin_XBoxOne_DPad_West", "value":"118" }, + { "name":"k_EControllerActionOrigin_XBoxOne_DPad_East", "value":"119" }, + { "name":"k_EControllerActionOrigin_XBox360_A", "value":"120" }, + { "name":"k_EControllerActionOrigin_XBox360_B", "value":"121" }, + { "name":"k_EControllerActionOrigin_XBox360_X", "value":"122" }, + { "name":"k_EControllerActionOrigin_XBox360_Y", "value":"123" }, + { "name":"k_EControllerActionOrigin_XBox360_LeftBumper", "value":"124" }, + { "name":"k_EControllerActionOrigin_XBox360_RightBumper", "value":"125" }, + { "name":"k_EControllerActionOrigin_XBox360_Start", "value":"126" }, + { "name":"k_EControllerActionOrigin_XBox360_Back", "value":"127" }, + { "name":"k_EControllerActionOrigin_XBox360_LeftTrigger_Pull", "value":"128" }, + { "name":"k_EControllerActionOrigin_XBox360_LeftTrigger_Click", "value":"129" }, + { "name":"k_EControllerActionOrigin_XBox360_RightTrigger_Pull", "value":"130" }, + { "name":"k_EControllerActionOrigin_XBox360_RightTrigger_Click", "value":"131" }, + { "name":"k_EControllerActionOrigin_XBox360_LeftStick_Move", "value":"132" }, + { "name":"k_EControllerActionOrigin_XBox360_LeftStick_Click", "value":"133" }, + { "name":"k_EControllerActionOrigin_XBox360_LeftStick_DPadNorth", "value":"134" }, + { "name":"k_EControllerActionOrigin_XBox360_LeftStick_DPadSouth", "value":"135" }, + { "name":"k_EControllerActionOrigin_XBox360_LeftStick_DPadWest", "value":"136" }, + { "name":"k_EControllerActionOrigin_XBox360_LeftStick_DPadEast", "value":"137" }, + { "name":"k_EControllerActionOrigin_XBox360_RightStick_Move", "value":"138" }, + { "name":"k_EControllerActionOrigin_XBox360_RightStick_Click", "value":"139" }, + { "name":"k_EControllerActionOrigin_XBox360_RightStick_DPadNorth", "value":"140" }, + { "name":"k_EControllerActionOrigin_XBox360_RightStick_DPadSouth", "value":"141" }, + { "name":"k_EControllerActionOrigin_XBox360_RightStick_DPadWest", "value":"142" }, + { "name":"k_EControllerActionOrigin_XBox360_RightStick_DPadEast", "value":"143" }, + { "name":"k_EControllerActionOrigin_XBox360_DPad_North", "value":"144" }, + { "name":"k_EControllerActionOrigin_XBox360_DPad_South", "value":"145" }, + { "name":"k_EControllerActionOrigin_XBox360_DPad_West", "value":"146" }, + { "name":"k_EControllerActionOrigin_XBox360_DPad_East", "value":"147" }, + { "name":"k_EControllerActionOrigin_SteamV2_A", "value":"148" }, + { "name":"k_EControllerActionOrigin_SteamV2_B", "value":"149" }, + { "name":"k_EControllerActionOrigin_SteamV2_X", "value":"150" }, + { "name":"k_EControllerActionOrigin_SteamV2_Y", "value":"151" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftBumper", "value":"152" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightBumper", "value":"153" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftGrip_Lower", "value":"154" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftGrip_Upper", "value":"155" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightGrip_Lower", "value":"156" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightGrip_Upper", "value":"157" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftBumper_Pressure", "value":"158" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightBumper_Pressure", "value":"159" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftGrip_Pressure", "value":"160" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightGrip_Pressure", "value":"161" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftGrip_Upper_Pressure", "value":"162" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightGrip_Upper_Pressure", "value":"163" }, + { "name":"k_EControllerActionOrigin_SteamV2_Start", "value":"164" }, + { "name":"k_EControllerActionOrigin_SteamV2_Back", "value":"165" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftPad_Touch", "value":"166" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftPad_Swipe", "value":"167" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftPad_Click", "value":"168" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftPad_Pressure", "value":"169" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftPad_DPadNorth", "value":"170" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftPad_DPadSouth", "value":"171" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftPad_DPadWest", "value":"172" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftPad_DPadEast", "value":"173" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightPad_Touch", "value":"174" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightPad_Swipe", "value":"175" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightPad_Click", "value":"176" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightPad_Pressure", "value":"177" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightPad_DPadNorth", "value":"178" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightPad_DPadSouth", "value":"179" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightPad_DPadWest", "value":"180" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightPad_DPadEast", "value":"181" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftTrigger_Pull", "value":"182" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftTrigger_Click", "value":"183" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightTrigger_Pull", "value":"184" }, + { "name":"k_EControllerActionOrigin_SteamV2_RightTrigger_Click", "value":"185" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftStick_Move", "value":"186" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftStick_Click", "value":"187" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftStick_DPadNorth", "value":"188" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftStick_DPadSouth", "value":"189" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftStick_DPadWest", "value":"190" }, + { "name":"k_EControllerActionOrigin_SteamV2_LeftStick_DPadEast", "value":"191" }, + { "name":"k_EControllerActionOrigin_SteamV2_Gyro_Move", "value":"192" }, + { "name":"k_EControllerActionOrigin_SteamV2_Gyro_Pitch", "value":"193" }, + { "name":"k_EControllerActionOrigin_SteamV2_Gyro_Yaw", "value":"194" }, + { "name":"k_EControllerActionOrigin_SteamV2_Gyro_Roll", "value":"195" }, + { "name":"k_EControllerActionOrigin_Switch_A", "value":"196" }, + { "name":"k_EControllerActionOrigin_Switch_B", "value":"197" }, + { "name":"k_EControllerActionOrigin_Switch_X", "value":"198" }, + { "name":"k_EControllerActionOrigin_Switch_Y", "value":"199" }, + { "name":"k_EControllerActionOrigin_Switch_LeftBumper", "value":"200" }, + { "name":"k_EControllerActionOrigin_Switch_RightBumper", "value":"201" }, + { "name":"k_EControllerActionOrigin_Switch_Plus", "value":"202" }, + { "name":"k_EControllerActionOrigin_Switch_Minus", "value":"203" }, + { "name":"k_EControllerActionOrigin_Switch_Capture", "value":"204" }, + { "name":"k_EControllerActionOrigin_Switch_LeftTrigger_Pull", "value":"205" }, + { "name":"k_EControllerActionOrigin_Switch_LeftTrigger_Click", "value":"206" }, + { "name":"k_EControllerActionOrigin_Switch_RightTrigger_Pull", "value":"207" }, + { "name":"k_EControllerActionOrigin_Switch_RightTrigger_Click", "value":"208" }, + { "name":"k_EControllerActionOrigin_Switch_LeftStick_Move", "value":"209" }, + { "name":"k_EControllerActionOrigin_Switch_LeftStick_Click", "value":"210" }, + { "name":"k_EControllerActionOrigin_Switch_LeftStick_DPadNorth", "value":"211" }, + { "name":"k_EControllerActionOrigin_Switch_LeftStick_DPadSouth", "value":"212" }, + { "name":"k_EControllerActionOrigin_Switch_LeftStick_DPadWest", "value":"213" }, + { "name":"k_EControllerActionOrigin_Switch_LeftStick_DPadEast", "value":"214" }, + { "name":"k_EControllerActionOrigin_Switch_RightStick_Move", "value":"215" }, + { "name":"k_EControllerActionOrigin_Switch_RightStick_Click", "value":"216" }, + { "name":"k_EControllerActionOrigin_Switch_RightStick_DPadNorth", "value":"217" }, + { "name":"k_EControllerActionOrigin_Switch_RightStick_DPadSouth", "value":"218" }, + { "name":"k_EControllerActionOrigin_Switch_RightStick_DPadWest", "value":"219" }, + { "name":"k_EControllerActionOrigin_Switch_RightStick_DPadEast", "value":"220" }, + { "name":"k_EControllerActionOrigin_Switch_DPad_North", "value":"221" }, + { "name":"k_EControllerActionOrigin_Switch_DPad_South", "value":"222" }, + { "name":"k_EControllerActionOrigin_Switch_DPad_West", "value":"223" }, + { "name":"k_EControllerActionOrigin_Switch_DPad_East", "value":"224" }, + { "name":"k_EControllerActionOrigin_Switch_ProGyro_Move", "value":"225" }, + { "name":"k_EControllerActionOrigin_Switch_ProGyro_Pitch", "value":"226" }, + { "name":"k_EControllerActionOrigin_Switch_ProGyro_Yaw", "value":"227" }, + { "name":"k_EControllerActionOrigin_Switch_ProGyro_Roll", "value":"228" }, + { "name":"k_EControllerActionOrigin_Switch_RightGyro_Move", "value":"229" }, + { "name":"k_EControllerActionOrigin_Switch_RightGyro_Pitch", "value":"230" }, + { "name":"k_EControllerActionOrigin_Switch_RightGyro_Yaw", "value":"231" }, + { "name":"k_EControllerActionOrigin_Switch_RightGyro_Roll", "value":"232" }, + { "name":"k_EControllerActionOrigin_Switch_LeftGyro_Move", "value":"233" }, + { "name":"k_EControllerActionOrigin_Switch_LeftGyro_Pitch", "value":"234" }, + { "name":"k_EControllerActionOrigin_Switch_LeftGyro_Yaw", "value":"235" }, + { "name":"k_EControllerActionOrigin_Switch_LeftGyro_Roll", "value":"236" }, + { "name":"k_EControllerActionOrigin_Switch_LeftGrip_Lower", "value":"237" }, + { "name":"k_EControllerActionOrigin_Switch_LeftGrip_Upper", "value":"238" }, + { "name":"k_EControllerActionOrigin_Switch_RightGrip_Lower", "value":"239" }, + { "name":"k_EControllerActionOrigin_Switch_RightGrip_Upper", "value":"240" }, + { "name":"k_EControllerActionOrigin_PS4_DPad_Move", "value":"241" }, + { "name":"k_EControllerActionOrigin_XBoxOne_DPad_Move", "value":"242" }, + { "name":"k_EControllerActionOrigin_XBox360_DPad_Move", "value":"243" }, + { "name":"k_EControllerActionOrigin_Switch_DPad_Move", "value":"244" }, + { "name":"k_EControllerActionOrigin_PS5_X", "value":"245" }, + { "name":"k_EControllerActionOrigin_PS5_Circle", "value":"246" }, + { "name":"k_EControllerActionOrigin_PS5_Triangle", "value":"247" }, + { "name":"k_EControllerActionOrigin_PS5_Square", "value":"248" }, + { "name":"k_EControllerActionOrigin_PS5_LeftBumper", "value":"249" }, + { "name":"k_EControllerActionOrigin_PS5_RightBumper", "value":"250" }, + { "name":"k_EControllerActionOrigin_PS5_Option", "value":"251" }, + { "name":"k_EControllerActionOrigin_PS5_Create", "value":"252" }, + { "name":"k_EControllerActionOrigin_PS5_Mute", "value":"253" }, + { "name":"k_EControllerActionOrigin_PS5_LeftPad_Touch", "value":"254" }, + { "name":"k_EControllerActionOrigin_PS5_LeftPad_Swipe", "value":"255" }, + { "name":"k_EControllerActionOrigin_PS5_LeftPad_Click", "value":"256" }, + { "name":"k_EControllerActionOrigin_PS5_LeftPad_DPadNorth", "value":"257" }, + { "name":"k_EControllerActionOrigin_PS5_LeftPad_DPadSouth", "value":"258" }, + { "name":"k_EControllerActionOrigin_PS5_LeftPad_DPadWest", "value":"259" }, + { "name":"k_EControllerActionOrigin_PS5_LeftPad_DPadEast", "value":"260" }, + { "name":"k_EControllerActionOrigin_PS5_RightPad_Touch", "value":"261" }, + { "name":"k_EControllerActionOrigin_PS5_RightPad_Swipe", "value":"262" }, + { "name":"k_EControllerActionOrigin_PS5_RightPad_Click", "value":"263" }, + { "name":"k_EControllerActionOrigin_PS5_RightPad_DPadNorth", "value":"264" }, + { "name":"k_EControllerActionOrigin_PS5_RightPad_DPadSouth", "value":"265" }, + { "name":"k_EControllerActionOrigin_PS5_RightPad_DPadWest", "value":"266" }, + { "name":"k_EControllerActionOrigin_PS5_RightPad_DPadEast", "value":"267" }, + { "name":"k_EControllerActionOrigin_PS5_CenterPad_Touch", "value":"268" }, + { "name":"k_EControllerActionOrigin_PS5_CenterPad_Swipe", "value":"269" }, + { "name":"k_EControllerActionOrigin_PS5_CenterPad_Click", "value":"270" }, + { "name":"k_EControllerActionOrigin_PS5_CenterPad_DPadNorth", "value":"271" }, + { "name":"k_EControllerActionOrigin_PS5_CenterPad_DPadSouth", "value":"272" }, + { "name":"k_EControllerActionOrigin_PS5_CenterPad_DPadWest", "value":"273" }, + { "name":"k_EControllerActionOrigin_PS5_CenterPad_DPadEast", "value":"274" }, + { "name":"k_EControllerActionOrigin_PS5_LeftTrigger_Pull", "value":"275" }, + { "name":"k_EControllerActionOrigin_PS5_LeftTrigger_Click", "value":"276" }, + { "name":"k_EControllerActionOrigin_PS5_RightTrigger_Pull", "value":"277" }, + { "name":"k_EControllerActionOrigin_PS5_RightTrigger_Click", "value":"278" }, + { "name":"k_EControllerActionOrigin_PS5_LeftStick_Move", "value":"279" }, + { "name":"k_EControllerActionOrigin_PS5_LeftStick_Click", "value":"280" }, + { "name":"k_EControllerActionOrigin_PS5_LeftStick_DPadNorth", "value":"281" }, + { "name":"k_EControllerActionOrigin_PS5_LeftStick_DPadSouth", "value":"282" }, + { "name":"k_EControllerActionOrigin_PS5_LeftStick_DPadWest", "value":"283" }, + { "name":"k_EControllerActionOrigin_PS5_LeftStick_DPadEast", "value":"284" }, + { "name":"k_EControllerActionOrigin_PS5_RightStick_Move", "value":"285" }, + { "name":"k_EControllerActionOrigin_PS5_RightStick_Click", "value":"286" }, + { "name":"k_EControllerActionOrigin_PS5_RightStick_DPadNorth", "value":"287" }, + { "name":"k_EControllerActionOrigin_PS5_RightStick_DPadSouth", "value":"288" }, + { "name":"k_EControllerActionOrigin_PS5_RightStick_DPadWest", "value":"289" }, + { "name":"k_EControllerActionOrigin_PS5_RightStick_DPadEast", "value":"290" }, + { "name":"k_EControllerActionOrigin_PS5_DPad_Move", "value":"291" }, + { "name":"k_EControllerActionOrigin_PS5_DPad_North", "value":"292" }, + { "name":"k_EControllerActionOrigin_PS5_DPad_South", "value":"293" }, + { "name":"k_EControllerActionOrigin_PS5_DPad_West", "value":"294" }, + { "name":"k_EControllerActionOrigin_PS5_DPad_East", "value":"295" }, + { "name":"k_EControllerActionOrigin_PS5_Gyro_Move", "value":"296" }, + { "name":"k_EControllerActionOrigin_PS5_Gyro_Pitch", "value":"297" }, + { "name":"k_EControllerActionOrigin_PS5_Gyro_Yaw", "value":"298" }, + { "name":"k_EControllerActionOrigin_PS5_Gyro_Roll", "value":"299" }, + { "name":"k_EControllerActionOrigin_Count", "value":"300" }, + { "name":"k_EControllerActionOrigin_MaximumPossibleValue", "value":"32767" } + ] + }, + { + "enumname": "ESteamControllerLEDFlag", + "values": [ + { "name":"k_ESteamControllerLEDFlag_SetColor", "value":"0" }, + { "name":"k_ESteamControllerLEDFlag_RestoreUserDefault", "value":"1" } + ] + }, + { + "enumname": "EUGCMatchingUGCType", + "values": [ + { "name":"k_EUGCMatchingUGCType_Items", "value":"0" }, + { "name":"k_EUGCMatchingUGCType_Items_Mtx", "value":"1" }, + { "name":"k_EUGCMatchingUGCType_Items_ReadyToUse", "value":"2" }, + { "name":"k_EUGCMatchingUGCType_Collections", "value":"3" }, + { "name":"k_EUGCMatchingUGCType_Artwork", "value":"4" }, + { "name":"k_EUGCMatchingUGCType_Videos", "value":"5" }, + { "name":"k_EUGCMatchingUGCType_Screenshots", "value":"6" }, + { "name":"k_EUGCMatchingUGCType_AllGuides", "value":"7" }, + { "name":"k_EUGCMatchingUGCType_WebGuides", "value":"8" }, + { "name":"k_EUGCMatchingUGCType_IntegratedGuides", "value":"9" }, + { "name":"k_EUGCMatchingUGCType_UsableInGame", "value":"10" }, + { "name":"k_EUGCMatchingUGCType_ControllerBindings", "value":"11" }, + { "name":"k_EUGCMatchingUGCType_GameManagedItems", "value":"12" }, + { "name":"k_EUGCMatchingUGCType_All", "value":"-1" } + ] + }, + { + "enumname": "EUserUGCList", + "values": [ + { "name":"k_EUserUGCList_Published", "value":"0" }, + { "name":"k_EUserUGCList_VotedOn", "value":"1" }, + { "name":"k_EUserUGCList_VotedUp", "value":"2" }, + { "name":"k_EUserUGCList_VotedDown", "value":"3" }, + { "name":"k_EUserUGCList_WillVoteLater", "value":"4" }, + { "name":"k_EUserUGCList_Favorited", "value":"5" }, + { "name":"k_EUserUGCList_Subscribed", "value":"6" }, + { "name":"k_EUserUGCList_UsedOrPlayed", "value":"7" }, + { "name":"k_EUserUGCList_Followed", "value":"8" } + ] + }, + { + "enumname": "EUserUGCListSortOrder", + "values": [ + { "name":"k_EUserUGCListSortOrder_CreationOrderDesc", "value":"0" }, + { "name":"k_EUserUGCListSortOrder_CreationOrderAsc", "value":"1" }, + { "name":"k_EUserUGCListSortOrder_TitleAsc", "value":"2" }, + { "name":"k_EUserUGCListSortOrder_LastUpdatedDesc", "value":"3" }, + { "name":"k_EUserUGCListSortOrder_SubscriptionDateDesc", "value":"4" }, + { "name":"k_EUserUGCListSortOrder_VoteScoreDesc", "value":"5" }, + { "name":"k_EUserUGCListSortOrder_ForModeration", "value":"6" } + ] + }, + { + "enumname": "EUGCQuery", + "values": [ + { "name":"k_EUGCQuery_RankedByVote", "value":"0" }, + { "name":"k_EUGCQuery_RankedByPublicationDate", "value":"1" }, + { "name":"k_EUGCQuery_AcceptedForGameRankedByAcceptanceDate", "value":"2" }, + { "name":"k_EUGCQuery_RankedByTrend", "value":"3" }, + { "name":"k_EUGCQuery_FavoritedByFriendsRankedByPublicationDate", "value":"4" }, + { "name":"k_EUGCQuery_CreatedByFriendsRankedByPublicationDate", "value":"5" }, + { "name":"k_EUGCQuery_RankedByNumTimesReported", "value":"6" }, + { "name":"k_EUGCQuery_CreatedByFollowedUsersRankedByPublicationDate", "value":"7" }, + { "name":"k_EUGCQuery_NotYetRated", "value":"8" }, + { "name":"k_EUGCQuery_RankedByTotalVotesAsc", "value":"9" }, + { "name":"k_EUGCQuery_RankedByVotesUp", "value":"10" }, + { "name":"k_EUGCQuery_RankedByTextSearch", "value":"11" }, + { "name":"k_EUGCQuery_RankedByTotalUniqueSubscriptions", "value":"12" }, + { "name":"k_EUGCQuery_RankedByPlaytimeTrend", "value":"13" }, + { "name":"k_EUGCQuery_RankedByTotalPlaytime", "value":"14" }, + { "name":"k_EUGCQuery_RankedByAveragePlaytimeTrend", "value":"15" }, + { "name":"k_EUGCQuery_RankedByLifetimeAveragePlaytime", "value":"16" }, + { "name":"k_EUGCQuery_RankedByPlaytimeSessionsTrend", "value":"17" }, + { "name":"k_EUGCQuery_RankedByLifetimePlaytimeSessions", "value":"18" } + ] + }, + { + "enumname": "EItemUpdateStatus", + "values": [ + { "name":"k_EItemUpdateStatusInvalid", "value":"0" }, + { "name":"k_EItemUpdateStatusPreparingConfig", "value":"1" }, + { "name":"k_EItemUpdateStatusPreparingContent", "value":"2" }, + { "name":"k_EItemUpdateStatusUploadingContent", "value":"3" }, + { "name":"k_EItemUpdateStatusUploadingPreviewFile", "value":"4" }, + { "name":"k_EItemUpdateStatusCommittingChanges", "value":"5" } + ] + }, + { + "enumname": "EItemState", + "values": [ + { "name":"k_EItemStateNone", "value":"0" }, + { "name":"k_EItemStateSubscribed", "value":"1" }, + { "name":"k_EItemStateLegacyItem", "value":"2" }, + { "name":"k_EItemStateInstalled", "value":"4" }, + { "name":"k_EItemStateNeedsUpdate", "value":"8" }, + { "name":"k_EItemStateDownloading", "value":"16" }, + { "name":"k_EItemStateDownloadPending", "value":"32" } + ] + }, + { + "enumname": "EItemStatistic", + "values": [ + { "name":"k_EItemStatistic_NumSubscriptions", "value":"0" }, + { "name":"k_EItemStatistic_NumFavorites", "value":"1" }, + { "name":"k_EItemStatistic_NumFollowers", "value":"2" }, + { "name":"k_EItemStatistic_NumUniqueSubscriptions", "value":"3" }, + { "name":"k_EItemStatistic_NumUniqueFavorites", "value":"4" }, + { "name":"k_EItemStatistic_NumUniqueFollowers", "value":"5" }, + { "name":"k_EItemStatistic_NumUniqueWebsiteViews", "value":"6" }, + { "name":"k_EItemStatistic_ReportScore", "value":"7" }, + { "name":"k_EItemStatistic_NumSecondsPlayed", "value":"8" }, + { "name":"k_EItemStatistic_NumPlaytimeSessions", "value":"9" }, + { "name":"k_EItemStatistic_NumComments", "value":"10" }, + { "name":"k_EItemStatistic_NumSecondsPlayedDuringTimePeriod", "value":"11" }, + { "name":"k_EItemStatistic_NumPlaytimeSessionsDuringTimePeriod", "value":"12" } + ] + }, + { + "enumname": "EItemPreviewType", + "values": [ + { "name":"k_EItemPreviewType_Image", "value":"0" }, + { "name":"k_EItemPreviewType_YouTubeVideo", "value":"1" }, + { "name":"k_EItemPreviewType_Sketchfab", "value":"2" }, + { "name":"k_EItemPreviewType_EnvironmentMap_HorizontalCross", "value":"3" }, + { "name":"k_EItemPreviewType_EnvironmentMap_LatLong", "value":"4" }, + { "name":"k_EItemPreviewType_ReservedMax", "value":"255" } + ] + }, + { + "enumname": "ESteamItemFlags", + "values": [ + { "name":"k_ESteamItemNoTrade", "value":"1" }, + { "name":"k_ESteamItemRemoved", "value":"256" }, + { "name":"k_ESteamItemConsumed", "value":"512" } + ] + }, + { + "enumname": "EParentalFeature", + "values": [ + { "name":"k_EFeatureInvalid", "value":"0" }, + { "name":"k_EFeatureStore", "value":"1" }, + { "name":"k_EFeatureCommunity", "value":"2" }, + { "name":"k_EFeatureProfile", "value":"3" }, + { "name":"k_EFeatureFriends", "value":"4" }, + { "name":"k_EFeatureNews", "value":"5" }, + { "name":"k_EFeatureTrading", "value":"6" }, + { "name":"k_EFeatureSettings", "value":"7" }, + { "name":"k_EFeatureConsole", "value":"8" }, + { "name":"k_EFeatureBrowser", "value":"9" }, + { "name":"k_EFeatureParentalSetup", "value":"10" }, + { "name":"k_EFeatureLibrary", "value":"11" }, + { "name":"k_EFeatureTest", "value":"12" }, + { "name":"k_EFeatureSiteLicense", "value":"13" }, + { "name":"k_EFeatureMax", "value":"14" } + ] + }, + { + "enumname": "ESteamDeviceFormFactor", + "values": [ + { "name":"k_ESteamDeviceFormFactorUnknown", "value":"0" }, + { "name":"k_ESteamDeviceFormFactorPhone", "value":"1" }, + { "name":"k_ESteamDeviceFormFactorTablet", "value":"2" }, + { "name":"k_ESteamDeviceFormFactorComputer", "value":"3" }, + { "name":"k_ESteamDeviceFormFactorTV", "value":"4" } + ] + }, + { + "enumname": "ESteamNetworkingAvailability", + "values": [ + { "name":"k_ESteamNetworkingAvailability_CannotTry", "value":"-102" }, + { "name":"k_ESteamNetworkingAvailability_Failed", "value":"-101" }, + { "name":"k_ESteamNetworkingAvailability_Previously", "value":"-100" }, + { "name":"k_ESteamNetworkingAvailability_Retrying", "value":"-10" }, + { "name":"k_ESteamNetworkingAvailability_NeverTried", "value":"1" }, + { "name":"k_ESteamNetworkingAvailability_Waiting", "value":"2" }, + { "name":"k_ESteamNetworkingAvailability_Attempting", "value":"3" }, + { "name":"k_ESteamNetworkingAvailability_Current", "value":"100" }, + { "name":"k_ESteamNetworkingAvailability_Unknown", "value":"0" }, + { "name":"k_ESteamNetworkingAvailability__Force32bit", "value":"2147483647" } + ] + }, + { + "enumname": "ESteamNetworkingIdentityType", + "values": [ + { "name":"k_ESteamNetworkingIdentityType_Invalid", "value":"0" }, + { "name":"k_ESteamNetworkingIdentityType_SteamID", "value":"16" }, + { "name":"k_ESteamNetworkingIdentityType_XboxPairwiseID", "value":"17" }, + { "name":"k_ESteamNetworkingIdentityType_SonyPSN", "value":"18" }, + { "name":"k_ESteamNetworkingIdentityType_GoogleStadia", "value":"19" }, + { "name":"k_ESteamNetworkingIdentityType_IPAddress", "value":"1" }, + { "name":"k_ESteamNetworkingIdentityType_GenericString", "value":"2" }, + { "name":"k_ESteamNetworkingIdentityType_GenericBytes", "value":"3" }, + { "name":"k_ESteamNetworkingIdentityType_UnknownType", "value":"4" }, + { "name":"k_ESteamNetworkingIdentityType__Force32bit", "value":"2147483647" } + ] + }, + { + "enumname": "ESteamNetworkingConnectionState", + "values": [ + { "name":"k_ESteamNetworkingConnectionState_None", "value":"0" }, + { "name":"k_ESteamNetworkingConnectionState_Connecting", "value":"1" }, + { "name":"k_ESteamNetworkingConnectionState_FindingRoute", "value":"2" }, + { "name":"k_ESteamNetworkingConnectionState_Connected", "value":"3" }, + { "name":"k_ESteamNetworkingConnectionState_ClosedByPeer", "value":"4" }, + { "name":"k_ESteamNetworkingConnectionState_ProblemDetectedLocally", "value":"5" }, + { "name":"k_ESteamNetworkingConnectionState_FinWait", "value":"-1" }, + { "name":"k_ESteamNetworkingConnectionState_Linger", "value":"-2" }, + { "name":"k_ESteamNetworkingConnectionState_Dead", "value":"-3" }, + { "name":"k_ESteamNetworkingConnectionState__Force32Bit", "value":"2147483647" } + ] + }, + { + "enumname": "ESteamNetConnectionEnd", + "values": [ + { "name":"k_ESteamNetConnectionEnd_Invalid", "value":"0" }, + { "name":"k_ESteamNetConnectionEnd_App_Min", "value":"1000" }, + { "name":"k_ESteamNetConnectionEnd_App_Generic", "value":"1000" }, + { "name":"k_ESteamNetConnectionEnd_App_Max", "value":"1999" }, + { "name":"k_ESteamNetConnectionEnd_AppException_Min", "value":"2000" }, + { "name":"k_ESteamNetConnectionEnd_AppException_Generic", "value":"2000" }, + { "name":"k_ESteamNetConnectionEnd_AppException_Max", "value":"2999" }, + { "name":"k_ESteamNetConnectionEnd_Local_Min", "value":"3000" }, + { "name":"k_ESteamNetConnectionEnd_Local_OfflineMode", "value":"3001" }, + { "name":"k_ESteamNetConnectionEnd_Local_ManyRelayConnectivity", "value":"3002" }, + { "name":"k_ESteamNetConnectionEnd_Local_HostedServerPrimaryRelay", "value":"3003" }, + { "name":"k_ESteamNetConnectionEnd_Local_NetworkConfig", "value":"3004" }, + { "name":"k_ESteamNetConnectionEnd_Local_Rights", "value":"3005" }, + { "name":"k_ESteamNetConnectionEnd_Local_P2P_ICE_NoPublicAddresses", "value":"3006" }, + { "name":"k_ESteamNetConnectionEnd_Local_Max", "value":"3999" }, + { "name":"k_ESteamNetConnectionEnd_Remote_Min", "value":"4000" }, + { "name":"k_ESteamNetConnectionEnd_Remote_Timeout", "value":"4001" }, + { "name":"k_ESteamNetConnectionEnd_Remote_BadCrypt", "value":"4002" }, + { "name":"k_ESteamNetConnectionEnd_Remote_BadCert", "value":"4003" }, + { "name":"k_ESteamNetConnectionEnd_Remote_NotLoggedIn", "value":"4004" }, + { "name":"k_ESteamNetConnectionEnd_Remote_NotRunningApp", "value":"4005" }, + { "name":"k_ESteamNetConnectionEnd_Remote_BadProtocolVersion", "value":"4006" }, + { "name":"k_ESteamNetConnectionEnd_Remote_P2P_ICE_NoPublicAddresses", "value":"4007" }, + { "name":"k_ESteamNetConnectionEnd_Remote_Max", "value":"4999" }, + { "name":"k_ESteamNetConnectionEnd_Misc_Min", "value":"5000" }, + { "name":"k_ESteamNetConnectionEnd_Misc_Generic", "value":"5001" }, + { "name":"k_ESteamNetConnectionEnd_Misc_InternalError", "value":"5002" }, + { "name":"k_ESteamNetConnectionEnd_Misc_Timeout", "value":"5003" }, + { "name":"k_ESteamNetConnectionEnd_Misc_RelayConnectivity", "value":"5004" }, + { "name":"k_ESteamNetConnectionEnd_Misc_SteamConnectivity", "value":"5005" }, + { "name":"k_ESteamNetConnectionEnd_Misc_NoRelaySessionsToClient", "value":"5006" }, + { "name":"k_ESteamNetConnectionEnd_Misc_P2P_Rendezvous", "value":"5008" }, + { "name":"k_ESteamNetConnectionEnd_Misc_P2P_NAT_Firewall", "value":"5009" }, + { "name":"k_ESteamNetConnectionEnd_Misc_PeerSentNoConnection", "value":"5010" }, + { "name":"k_ESteamNetConnectionEnd_Misc_Max", "value":"5999" }, + { "name":"k_ESteamNetConnectionEnd__Force32Bit", "value":"2147483647" } + ] + }, + { + "enumname": "ESteamNetTransportKind", + "values": [ + { "name":"k_ESteamNetTransport_Unknown", "value":"0" }, + { "name":"k_ESteamNetTransport_LoopbackBuffers", "value":"1" }, + { "name":"k_ESteamNetTransport_LocalHost", "value":"2" }, + { "name":"k_ESteamNetTransport_UDP", "value":"3" }, + { "name":"k_ESteamNetTransport_UDPProbablyLocal", "value":"4" }, + { "name":"k_ESteamNetTransport_TURN", "value":"5" }, + { "name":"k_ESteamNetTransport_SDRP2P", "value":"6" }, + { "name":"k_ESteamNetTransport_SDRHostedServer", "value":"7" }, + { "name":"k_ESteamNetTransport_Force32Bit", "value":"2147483647" } + ] + }, + { + "enumname": "ESteamNetworkingConfigScope", + "values": [ + { "name":"k_ESteamNetworkingConfig_Global", "value":"1" }, + { "name":"k_ESteamNetworkingConfig_SocketsInterface", "value":"2" }, + { "name":"k_ESteamNetworkingConfig_ListenSocket", "value":"3" }, + { "name":"k_ESteamNetworkingConfig_Connection", "value":"4" }, + { "name":"k_ESteamNetworkingConfigScope__Force32Bit", "value":"2147483647" } + ] + }, + { + "enumname": "ESteamNetworkingConfigDataType", + "values": [ + { "name":"k_ESteamNetworkingConfig_Int32", "value":"1" }, + { "name":"k_ESteamNetworkingConfig_Int64", "value":"2" }, + { "name":"k_ESteamNetworkingConfig_Float", "value":"3" }, + { "name":"k_ESteamNetworkingConfig_String", "value":"4" }, + { "name":"k_ESteamNetworkingConfig_Ptr", "value":"5" }, + { "name":"k_ESteamNetworkingConfigDataType__Force32Bit", "value":"2147483647" } + ] + }, + { + "enumname": "ESteamNetworkingConfigValue", + "values": [ + { "name":"k_ESteamNetworkingConfig_Invalid", "value":"0" }, + { "name":"k_ESteamNetworkingConfig_FakePacketLoss_Send", "value":"2" }, + { "name":"k_ESteamNetworkingConfig_FakePacketLoss_Recv", "value":"3" }, + { "name":"k_ESteamNetworkingConfig_FakePacketLag_Send", "value":"4" }, + { "name":"k_ESteamNetworkingConfig_FakePacketLag_Recv", "value":"5" }, + { "name":"k_ESteamNetworkingConfig_FakePacketReorder_Send", "value":"6" }, + { "name":"k_ESteamNetworkingConfig_FakePacketReorder_Recv", "value":"7" }, + { "name":"k_ESteamNetworkingConfig_FakePacketReorder_Time", "value":"8" }, + { "name":"k_ESteamNetworkingConfig_FakePacketDup_Send", "value":"26" }, + { "name":"k_ESteamNetworkingConfig_FakePacketDup_Recv", "value":"27" }, + { "name":"k_ESteamNetworkingConfig_FakePacketDup_TimeMax", "value":"28" }, + { "name":"k_ESteamNetworkingConfig_TimeoutInitial", "value":"24" }, + { "name":"k_ESteamNetworkingConfig_TimeoutConnected", "value":"25" }, + { "name":"k_ESteamNetworkingConfig_SendBufferSize", "value":"9" }, + { "name":"k_ESteamNetworkingConfig_SendRateMin", "value":"10" }, + { "name":"k_ESteamNetworkingConfig_SendRateMax", "value":"11" }, + { "name":"k_ESteamNetworkingConfig_NagleTime", "value":"12" }, + { "name":"k_ESteamNetworkingConfig_IP_AllowWithoutAuth", "value":"23" }, + { "name":"k_ESteamNetworkingConfig_MTU_PacketSize", "value":"32" }, + { "name":"k_ESteamNetworkingConfig_MTU_DataSize", "value":"33" }, + { "name":"k_ESteamNetworkingConfig_Unencrypted", "value":"34" }, + { "name":"k_ESteamNetworkingConfig_EnumerateDevVars", "value":"35" }, + { "name":"k_ESteamNetworkingConfig_SymmetricConnect", "value":"37" }, + { "name":"k_ESteamNetworkingConfig_LocalVirtualPort", "value":"38" }, + { "name":"k_ESteamNetworkingConfig_Callback_ConnectionStatusChanged", "value":"201" }, + { "name":"k_ESteamNetworkingConfig_Callback_AuthStatusChanged", "value":"202" }, + { "name":"k_ESteamNetworkingConfig_Callback_RelayNetworkStatusChanged", "value":"203" }, + { "name":"k_ESteamNetworkingConfig_Callback_MessagesSessionRequest", "value":"204" }, + { "name":"k_ESteamNetworkingConfig_Callback_MessagesSessionFailed", "value":"205" }, + { "name":"k_ESteamNetworkingConfig_Callback_CreateConnectionSignaling", "value":"206" }, + { "name":"k_ESteamNetworkingConfig_P2P_STUN_ServerList", "value":"103" }, + { "name":"k_ESteamNetworkingConfig_P2P_Transport_ICE_Enable", "value":"104" }, + { "name":"k_ESteamNetworkingConfig_P2P_Transport_ICE_Penalty", "value":"105" }, + { "name":"k_ESteamNetworkingConfig_P2P_Transport_SDR_Penalty", "value":"106" }, + { "name":"k_ESteamNetworkingConfig_SDRClient_ConsecutitivePingTimeoutsFailInitial", "value":"19" }, + { "name":"k_ESteamNetworkingConfig_SDRClient_ConsecutitivePingTimeoutsFail", "value":"20" }, + { "name":"k_ESteamNetworkingConfig_SDRClient_MinPingsBeforePingAccurate", "value":"21" }, + { "name":"k_ESteamNetworkingConfig_SDRClient_SingleSocket", "value":"22" }, + { "name":"k_ESteamNetworkingConfig_SDRClient_ForceRelayCluster", "value":"29" }, + { "name":"k_ESteamNetworkingConfig_SDRClient_DebugTicketAddress", "value":"30" }, + { "name":"k_ESteamNetworkingConfig_SDRClient_ForceProxyAddr", "value":"31" }, + { "name":"k_ESteamNetworkingConfig_SDRClient_FakeClusterPing", "value":"36" }, + { "name":"k_ESteamNetworkingConfig_LogLevel_AckRTT", "value":"13" }, + { "name":"k_ESteamNetworkingConfig_LogLevel_PacketDecode", "value":"14" }, + { "name":"k_ESteamNetworkingConfig_LogLevel_Message", "value":"15" }, + { "name":"k_ESteamNetworkingConfig_LogLevel_PacketGaps", "value":"16" }, + { "name":"k_ESteamNetworkingConfig_LogLevel_P2PRendezvous", "value":"17" }, + { "name":"k_ESteamNetworkingConfig_LogLevel_SDRRelayPings", "value":"18" }, + { "name":"k_ESteamNetworkingConfigValue__Force32Bit", "value":"2147483647" } + ] + }, + { + "enumname": "ESteamNetworkingGetConfigValueResult", + "values": [ + { "name":"k_ESteamNetworkingGetConfigValue_BadValue", "value":"-1" }, + { "name":"k_ESteamNetworkingGetConfigValue_BadScopeObj", "value":"-2" }, + { "name":"k_ESteamNetworkingGetConfigValue_BufferTooSmall", "value":"-3" }, + { "name":"k_ESteamNetworkingGetConfigValue_OK", "value":"1" }, + { "name":"k_ESteamNetworkingGetConfigValue_OKInherited", "value":"2" }, + { "name":"k_ESteamNetworkingGetConfigValueResult__Force32Bit", "value":"2147483647" } + ] + }, + { + "enumname": "ESteamNetworkingSocketsDebugOutputType", + "values": [ + { "name":"k_ESteamNetworkingSocketsDebugOutputType_None", "value":"0" }, + { "name":"k_ESteamNetworkingSocketsDebugOutputType_Bug", "value":"1" }, + { "name":"k_ESteamNetworkingSocketsDebugOutputType_Error", "value":"2" }, + { "name":"k_ESteamNetworkingSocketsDebugOutputType_Important", "value":"3" }, + { "name":"k_ESteamNetworkingSocketsDebugOutputType_Warning", "value":"4" }, + { "name":"k_ESteamNetworkingSocketsDebugOutputType_Msg", "value":"5" }, + { "name":"k_ESteamNetworkingSocketsDebugOutputType_Verbose", "value":"6" }, + { "name":"k_ESteamNetworkingSocketsDebugOutputType_Debug", "value":"7" }, + { "name":"k_ESteamNetworkingSocketsDebugOutputType_Everything", "value":"8" }, + { "name":"k_ESteamNetworkingSocketsDebugOutputType__Force32Bit", "value":"2147483647" } + ] + }, + { + "enumname": "EServerMode", + "values": [ + { "name":"eServerModeInvalid", "value":"0" }, + { "name":"eServerModeNoAuthentication", "value":"1" }, + { "name":"eServerModeAuthentication", "value":"2" }, + { "name":"eServerModeAuthenticationAndSecure", "value":"3" } + ] + } + ], + "interfaces": [ + { + "classname": "ISteamClient", + "fields": [], + "methods": [ + { + "methodname": "CreateSteamPipe", + "methodname_flat": "SteamAPI_ISteamClient_CreateSteamPipe", + "params": [], + "returntype": "HSteamPipe" + }, + { + "methodname": "BReleaseSteamPipe", + "methodname_flat": "SteamAPI_ISteamClient_BReleaseSteamPipe", + "params": [ + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" } + ], + "returntype": "bool" + }, + { + "methodname": "ConnectToGlobalUser", + "methodname_flat": "SteamAPI_ISteamClient_ConnectToGlobalUser", + "params": [ + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" } + ], + "returntype": "HSteamUser" + }, + { + "methodname": "CreateLocalUser", + "methodname_flat": "SteamAPI_ISteamClient_CreateLocalUser", + "params": [ + { "paramname":"phSteamPipe", "paramtype":"HSteamPipe *" }, + { "paramname":"eAccountType", "paramtype":"EAccountType" } + ], + "returntype": "HSteamUser" + }, + { + "methodname": "ReleaseUser", + "methodname_flat": "SteamAPI_ISteamClient_ReleaseUser", + "params": [ + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"hUser", "paramtype":"HSteamUser" } + ], + "returntype": "void" + }, + { + "methodname": "GetISteamUser", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamUser", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamUser *" + }, + { + "methodname": "GetISteamGameServer", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamGameServer", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamGameServer *" + }, + { + "methodname": "SetLocalIPBinding", + "methodname_flat": "SteamAPI_ISteamClient_SetLocalIPBinding", + "params": [ + { "paramname":"unIP", "paramtype":"const SteamIPAddress_t &" }, + { "paramname":"usPort", "paramtype":"uint16" } + ], + "returntype": "void" + }, + { + "methodname": "GetISteamFriends", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamFriends", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamFriends *" + }, + { + "methodname": "GetISteamUtils", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamUtils", + "params": [ + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamUtils *" + }, + { + "methodname": "GetISteamMatchmaking", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamMatchmaking", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamMatchmaking *" + }, + { + "methodname": "GetISteamMatchmakingServers", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamMatchmakingServers", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamMatchmakingServers *" + }, + { + "methodname": "GetISteamGenericInterface", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamGenericInterface", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "void *" + }, + { + "methodname": "GetISteamUserStats", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamUserStats", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamUserStats *" + }, + { + "methodname": "GetISteamGameServerStats", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamGameServerStats", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamGameServerStats *" + }, + { + "methodname": "GetISteamApps", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamApps", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamApps *" + }, + { + "methodname": "GetISteamNetworking", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamNetworking", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamNetworking *" + }, + { + "methodname": "GetISteamRemoteStorage", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamRemoteStorage", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamRemoteStorage *" + }, + { + "methodname": "GetISteamScreenshots", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamScreenshots", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamScreenshots *" + }, + { + "methodname": "GetISteamGameSearch", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamGameSearch", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamGameSearch *" + }, + { + "methodname": "GetIPCCallCount", + "methodname_flat": "SteamAPI_ISteamClient_GetIPCCallCount", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "SetWarningMessageHook", + "methodname_flat": "SteamAPI_ISteamClient_SetWarningMessageHook", + "params": [ + { "paramname":"pFunction", "paramtype":"SteamAPIWarningMessageHook_t" } + ], + "returntype": "void" + }, + { + "methodname": "BShutdownIfAllPipesClosed", + "methodname_flat": "SteamAPI_ISteamClient_BShutdownIfAllPipesClosed", + "params": [], + "returntype": "bool" + }, + { + "methodname": "GetISteamHTTP", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamHTTP", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamHTTP *" + }, + { + "methodname": "GetISteamController", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamController", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamController *" + }, + { + "methodname": "GetISteamUGC", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamUGC", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamUGC *" + }, + { + "methodname": "GetISteamAppList", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamAppList", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamAppList *" + }, + { + "methodname": "GetISteamMusic", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamMusic", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamMusic *" + }, + { + "methodname": "GetISteamMusicRemote", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamMusicRemote", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamMusicRemote *" + }, + { + "methodname": "GetISteamHTMLSurface", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamHTMLSurface", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamHTMLSurface *" + }, + { + "methodname": "GetISteamInventory", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamInventory", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamInventory *" + }, + { + "methodname": "GetISteamVideo", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamVideo", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamVideo *" + }, + { + "methodname": "GetISteamParentalSettings", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamParentalSettings", + "params": [ + { "paramname":"hSteamuser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamParentalSettings *" + }, + { + "methodname": "GetISteamInput", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamInput", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamInput *" + }, + { + "methodname": "GetISteamParties", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamParties", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamParties *" + }, + { + "methodname": "GetISteamRemotePlay", + "methodname_flat": "SteamAPI_ISteamClient_GetISteamRemotePlay", + "params": [ + { "paramname":"hSteamUser", "paramtype":"HSteamUser" }, + { "paramname":"hSteamPipe", "paramtype":"HSteamPipe" }, + { "paramname":"pchVersion", "paramtype":"const char *" } + ], + "returntype": "ISteamRemotePlay *" + } + ] + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamUser", + "name_flat": "SteamAPI_SteamUser_v021" + } + ], + "classname": "ISteamUser", + "fields": [], + "methods": [ + { + "methodname": "GetHSteamUser", + "methodname_flat": "SteamAPI_ISteamUser_GetHSteamUser", + "params": [], + "returntype": "HSteamUser" + }, + { + "methodname": "BLoggedOn", + "methodname_flat": "SteamAPI_ISteamUser_BLoggedOn", + "params": [], + "returntype": "bool" + }, + { + "methodname": "GetSteamID", + "methodname_flat": "SteamAPI_ISteamUser_GetSteamID", + "params": [], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "InitiateGameConnection", + "methodname_flat": "SteamAPI_ISteamUser_InitiateGameConnection", + "params": [ + { "paramname":"pAuthBlob", "paramtype":"void *" }, + { "paramname":"cbMaxAuthBlob", "paramtype":"int" }, + { "paramname":"steamIDGameServer", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"unIPServer", "paramtype":"uint32" }, + { "paramname":"usPortServer", "paramtype":"uint16" }, + { "paramname":"bSecure", "paramtype":"bool" } + ], + "returntype": "int" + }, + { + "methodname": "TerminateGameConnection", + "methodname_flat": "SteamAPI_ISteamUser_TerminateGameConnection", + "params": [ + { "paramname":"unIPServer", "paramtype":"uint32" }, + { "paramname":"usPortServer", "paramtype":"uint16" } + ], + "returntype": "void" + }, + { + "methodname": "TrackAppUsageEvent", + "methodname_flat": "SteamAPI_ISteamUser_TrackAppUsageEvent", + "params": [ + { "paramname":"gameID", "paramtype":"CGameID", "paramtype_flat":"uint64_gameid" }, + { "paramname":"eAppUsageEvent", "paramtype":"int" }, + { "paramname":"pchExtraInfo", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "GetUserDataFolder", + "methodname_flat": "SteamAPI_ISteamUser_GetUserDataFolder", + "params": [ + { "paramname":"pchBuffer", "paramtype":"char *" }, + { "paramname":"cubBuffer", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "StartVoiceRecording", + "methodname_flat": "SteamAPI_ISteamUser_StartVoiceRecording", + "params": [], + "returntype": "void" + }, + { + "methodname": "StopVoiceRecording", + "methodname_flat": "SteamAPI_ISteamUser_StopVoiceRecording", + "params": [], + "returntype": "void" + }, + { + "methodname": "GetAvailableVoice", + "methodname_flat": "SteamAPI_ISteamUser_GetAvailableVoice", + "params": [ + { "paramname":"pcbCompressed", "paramtype":"uint32 *" }, + { "paramname":"pcbUncompressed_Deprecated", "paramtype":"uint32 *" }, + { "paramname":"nUncompressedVoiceDesiredSampleRate_Deprecated", "paramtype":"uint32" } + ], + "returntype": "EVoiceResult" + }, + { + "methodname": "GetVoice", + "methodname_flat": "SteamAPI_ISteamUser_GetVoice", + "params": [ + { "paramname":"bWantCompressed", "paramtype":"bool" }, + { "paramname":"pDestBuffer", "paramtype":"void *" }, + { "paramname":"cbDestBufferSize", "paramtype":"uint32" }, + { "paramname":"nBytesWritten", "paramtype":"uint32 *" }, + { "paramname":"bWantUncompressed_Deprecated", "paramtype":"bool" }, + { "paramname":"pUncompressedDestBuffer_Deprecated", "paramtype":"void *" }, + { "paramname":"cbUncompressedDestBufferSize_Deprecated", "paramtype":"uint32" }, + { "paramname":"nUncompressBytesWritten_Deprecated", "paramtype":"uint32 *" }, + { "paramname":"nUncompressedVoiceDesiredSampleRate_Deprecated", "paramtype":"uint32" } + ], + "returntype": "EVoiceResult" + }, + { + "methodname": "DecompressVoice", + "methodname_flat": "SteamAPI_ISteamUser_DecompressVoice", + "params": [ + { "paramname":"pCompressed", "paramtype":"const void *" }, + { "paramname":"cbCompressed", "paramtype":"uint32" }, + { "paramname":"pDestBuffer", "paramtype":"void *" }, + { "paramname":"cbDestBufferSize", "paramtype":"uint32" }, + { "paramname":"nBytesWritten", "paramtype":"uint32 *" }, + { "paramname":"nDesiredSampleRate", "paramtype":"uint32" } + ], + "returntype": "EVoiceResult" + }, + { + "methodname": "GetVoiceOptimalSampleRate", + "methodname_flat": "SteamAPI_ISteamUser_GetVoiceOptimalSampleRate", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetAuthSessionTicket", + "methodname_flat": "SteamAPI_ISteamUser_GetAuthSessionTicket", + "params": [ + { "paramname":"pTicket", "paramtype":"void *" }, + { "paramname":"cbMaxTicket", "paramtype":"int" }, + { "paramname":"pcbTicket", "paramtype":"uint32 *" } + ], + "returntype": "HAuthTicket" + }, + { + "methodname": "BeginAuthSession", + "methodname_flat": "SteamAPI_ISteamUser_BeginAuthSession", + "params": [ + { "paramname":"pAuthTicket", "paramtype":"const void *" }, + { "paramname":"cbAuthTicket", "paramtype":"int" }, + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "EBeginAuthSessionResult" + }, + { + "methodname": "EndAuthSession", + "methodname_flat": "SteamAPI_ISteamUser_EndAuthSession", + "params": [ + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "CancelAuthTicket", + "methodname_flat": "SteamAPI_ISteamUser_CancelAuthTicket", + "params": [ + { "paramname":"hAuthTicket", "paramtype":"HAuthTicket" } + ], + "returntype": "void" + }, + { + "methodname": "UserHasLicenseForApp", + "methodname_flat": "SteamAPI_ISteamUser_UserHasLicenseForApp", + "params": [ + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"appID", "paramtype":"AppId_t" } + ], + "returntype": "EUserHasLicenseForAppResult" + }, + { + "methodname": "BIsBehindNAT", + "methodname_flat": "SteamAPI_ISteamUser_BIsBehindNAT", + "params": [], + "returntype": "bool" + }, + { + "methodname": "AdvertiseGame", + "methodname_flat": "SteamAPI_ISteamUser_AdvertiseGame", + "params": [ + { "paramname":"steamIDGameServer", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"unIPServer", "paramtype":"uint32" }, + { "paramname":"usPortServer", "paramtype":"uint16" } + ], + "returntype": "void" + }, + { + "callresult": "EncryptedAppTicketResponse_t", + "methodname": "RequestEncryptedAppTicket", + "methodname_flat": "SteamAPI_ISteamUser_RequestEncryptedAppTicket", + "params": [ + { "paramname":"pDataToInclude", "paramtype":"void *" }, + { "paramname":"cbDataToInclude", "paramtype":"int" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetEncryptedAppTicket", + "methodname_flat": "SteamAPI_ISteamUser_GetEncryptedAppTicket", + "params": [ + { "paramname":"pTicket", "paramtype":"void *" }, + { "paramname":"cbMaxTicket", "paramtype":"int" }, + { "paramname":"pcbTicket", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetGameBadgeLevel", + "methodname_flat": "SteamAPI_ISteamUser_GetGameBadgeLevel", + "params": [ + { "paramname":"nSeries", "paramtype":"int" }, + { "paramname":"bFoil", "paramtype":"bool" } + ], + "returntype": "int" + }, + { + "methodname": "GetPlayerSteamLevel", + "methodname_flat": "SteamAPI_ISteamUser_GetPlayerSteamLevel", + "params": [], + "returntype": "int" + }, + { + "callresult": "StoreAuthURLResponse_t", + "methodname": "RequestStoreAuthURL", + "methodname_flat": "SteamAPI_ISteamUser_RequestStoreAuthURL", + "params": [ + { "paramname":"pchRedirectURL", "paramtype":"const char *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "BIsPhoneVerified", + "methodname_flat": "SteamAPI_ISteamUser_BIsPhoneVerified", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsTwoFactorEnabled", + "methodname_flat": "SteamAPI_ISteamUser_BIsTwoFactorEnabled", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsPhoneIdentifying", + "methodname_flat": "SteamAPI_ISteamUser_BIsPhoneIdentifying", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsPhoneRequiringVerification", + "methodname_flat": "SteamAPI_ISteamUser_BIsPhoneRequiringVerification", + "params": [], + "returntype": "bool" + }, + { + "callresult": "MarketEligibilityResponse_t", + "methodname": "GetMarketEligibility", + "methodname_flat": "SteamAPI_ISteamUser_GetMarketEligibility", + "params": [], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "DurationControl_t", + "methodname": "GetDurationControl", + "methodname_flat": "SteamAPI_ISteamUser_GetDurationControl", + "params": [], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "BSetDurationControlOnlineState", + "methodname_flat": "SteamAPI_ISteamUser_BSetDurationControlOnlineState", + "params": [ + { "paramname":"eNewState", "paramtype":"EDurationControlOnlineState" } + ], + "returntype": "bool" + } + ], + "version_string": "SteamUser021" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamFriends", + "name_flat": "SteamAPI_SteamFriends_v017" + } + ], + "classname": "ISteamFriends", + "fields": [], + "methods": [ + { + "methodname": "GetPersonaName", + "methodname_flat": "SteamAPI_ISteamFriends_GetPersonaName", + "params": [], + "returntype": "const char *" + }, + { + "callresult": "SetPersonaNameResponse_t", + "methodname": "SetPersonaName", + "methodname_flat": "SteamAPI_ISteamFriends_SetPersonaName", + "params": [ + { "paramname":"pchPersonaName", "paramtype":"const char *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetPersonaState", + "methodname_flat": "SteamAPI_ISteamFriends_GetPersonaState", + "params": [], + "returntype": "EPersonaState" + }, + { + "methodname": "GetFriendCount", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendCount", + "params": [ + { "paramname":"iFriendFlags", "paramtype":"int" } + ], + "returntype": "int" + }, + { + "methodname": "GetFriendByIndex", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendByIndex", + "params": [ + { "paramname":"iFriend", "paramtype":"int" }, + { "paramname":"iFriendFlags", "paramtype":"int" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "GetFriendRelationship", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendRelationship", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "EFriendRelationship" + }, + { + "methodname": "GetFriendPersonaState", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendPersonaState", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "EPersonaState" + }, + { + "methodname": "GetFriendPersonaName", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendPersonaName", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetFriendGamePlayed", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendGamePlayed", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { + "out_struct": "", + "paramname": "pFriendGameInfo", + "paramtype": "FriendGameInfo_t *" + } + ], + "returntype": "bool" + }, + { + "methodname": "GetFriendPersonaNameHistory", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendPersonaNameHistory", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iPersonaName", "paramtype":"int" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetFriendSteamLevel", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendSteamLevel", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "GetPlayerNickname", + "methodname_flat": "SteamAPI_ISteamFriends_GetPlayerNickname", + "params": [ + { "paramname":"steamIDPlayer", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetFriendsGroupCount", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendsGroupCount", + "params": [], + "returntype": "int" + }, + { + "methodname": "GetFriendsGroupIDByIndex", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendsGroupIDByIndex", + "params": [ + { "paramname":"iFG", "paramtype":"int" } + ], + "returntype": "FriendsGroupID_t" + }, + { + "methodname": "GetFriendsGroupName", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendsGroupName", + "params": [ + { "paramname":"friendsGroupID", "paramtype":"FriendsGroupID_t" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetFriendsGroupMembersCount", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendsGroupMembersCount", + "params": [ + { "paramname":"friendsGroupID", "paramtype":"FriendsGroupID_t" } + ], + "returntype": "int" + }, + { + "methodname": "GetFriendsGroupMembersList", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendsGroupMembersList", + "params": [ + { "paramname":"friendsGroupID", "paramtype":"FriendsGroupID_t" }, + { + "out_array_call": "nMembersCount,GetFriendsGroupMembersCount,friendsGroupID", + "paramname": "pOutSteamIDMembers", + "paramtype": "CSteamID *" + }, + { "paramname":"nMembersCount", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "HasFriend", + "methodname_flat": "SteamAPI_ISteamFriends_HasFriend", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iFriendFlags", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "GetClanCount", + "methodname_flat": "SteamAPI_ISteamFriends_GetClanCount", + "params": [], + "returntype": "int" + }, + { + "methodname": "GetClanByIndex", + "methodname_flat": "SteamAPI_ISteamFriends_GetClanByIndex", + "params": [ + { "paramname":"iClan", "paramtype":"int" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "GetClanName", + "methodname_flat": "SteamAPI_ISteamFriends_GetClanName", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetClanTag", + "methodname_flat": "SteamAPI_ISteamFriends_GetClanTag", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetClanActivityCounts", + "methodname_flat": "SteamAPI_ISteamFriends_GetClanActivityCounts", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pnOnline", "paramtype":"int *" }, + { "paramname":"pnInGame", "paramtype":"int *" }, + { "paramname":"pnChatting", "paramtype":"int *" } + ], + "returntype": "bool" + }, + { + "callresult": "DownloadClanActivityCountsResult_t", + "methodname": "DownloadClanActivityCounts", + "methodname_flat": "SteamAPI_ISteamFriends_DownloadClanActivityCounts", + "params": [ + { + "array_count": "cClansToRequest", + "paramname": "psteamIDClans", + "paramtype": "CSteamID *" + }, + { "paramname":"cClansToRequest", "paramtype":"int" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetFriendCountFromSource", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendCountFromSource", + "params": [ + { "paramname":"steamIDSource", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "GetFriendFromSourceByIndex", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendFromSourceByIndex", + "params": [ + { "paramname":"steamIDSource", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iFriend", "paramtype":"int" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "IsUserInSource", + "methodname_flat": "SteamAPI_ISteamFriends_IsUserInSource", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"steamIDSource", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "SetInGameVoiceSpeaking", + "methodname_flat": "SteamAPI_ISteamFriends_SetInGameVoiceSpeaking", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"bSpeaking", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "ActivateGameOverlay", + "methodname_flat": "SteamAPI_ISteamFriends_ActivateGameOverlay", + "params": [ + { "paramname":"pchDialog", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "ActivateGameOverlayToUser", + "methodname_flat": "SteamAPI_ISteamFriends_ActivateGameOverlayToUser", + "params": [ + { "paramname":"pchDialog", "paramtype":"const char *" }, + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "ActivateGameOverlayToWebPage", + "methodname_flat": "SteamAPI_ISteamFriends_ActivateGameOverlayToWebPage", + "params": [ + { "paramname":"pchURL", "paramtype":"const char *" }, + { "paramname":"eMode", "paramtype":"EActivateGameOverlayToWebPageMode" } + ], + "returntype": "void" + }, + { + "methodname": "ActivateGameOverlayToStore", + "methodname_flat": "SteamAPI_ISteamFriends_ActivateGameOverlayToStore", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" }, + { "paramname":"eFlag", "paramtype":"EOverlayToStoreFlag" } + ], + "returntype": "void" + }, + { + "methodname": "SetPlayedWith", + "methodname_flat": "SteamAPI_ISteamFriends_SetPlayedWith", + "params": [ + { "paramname":"steamIDUserPlayedWith", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "ActivateGameOverlayInviteDialog", + "methodname_flat": "SteamAPI_ISteamFriends_ActivateGameOverlayInviteDialog", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "GetSmallFriendAvatar", + "methodname_flat": "SteamAPI_ISteamFriends_GetSmallFriendAvatar", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "GetMediumFriendAvatar", + "methodname_flat": "SteamAPI_ISteamFriends_GetMediumFriendAvatar", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "GetLargeFriendAvatar", + "methodname_flat": "SteamAPI_ISteamFriends_GetLargeFriendAvatar", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "RequestUserInformation", + "methodname_flat": "SteamAPI_ISteamFriends_RequestUserInformation", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"bRequireNameOnly", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "callresult": "ClanOfficerListResponse_t", + "methodname": "RequestClanOfficerList", + "methodname_flat": "SteamAPI_ISteamFriends_RequestClanOfficerList", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetClanOwner", + "methodname_flat": "SteamAPI_ISteamFriends_GetClanOwner", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "GetClanOfficerCount", + "methodname_flat": "SteamAPI_ISteamFriends_GetClanOfficerCount", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "GetClanOfficerByIndex", + "methodname_flat": "SteamAPI_ISteamFriends_GetClanOfficerByIndex", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iOfficer", "paramtype":"int" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "GetUserRestrictions", + "methodname_flat": "SteamAPI_ISteamFriends_GetUserRestrictions", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "SetRichPresence", + "methodname_flat": "SteamAPI_ISteamFriends_SetRichPresence", + "params": [ + { "paramname":"pchKey", "paramtype":"const char *" }, + { "paramname":"pchValue", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "ClearRichPresence", + "methodname_flat": "SteamAPI_ISteamFriends_ClearRichPresence", + "params": [], + "returntype": "void" + }, + { + "methodname": "GetFriendRichPresence", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendRichPresence", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchKey", "paramtype":"const char *" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetFriendRichPresenceKeyCount", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendRichPresenceKeyCount", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "GetFriendRichPresenceKeyByIndex", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendRichPresenceKeyByIndex", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iKey", "paramtype":"int" } + ], + "returntype": "const char *" + }, + { + "methodname": "RequestFriendRichPresence", + "methodname_flat": "SteamAPI_ISteamFriends_RequestFriendRichPresence", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "InviteUserToGame", + "methodname_flat": "SteamAPI_ISteamFriends_InviteUserToGame", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchConnectString", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetCoplayFriendCount", + "methodname_flat": "SteamAPI_ISteamFriends_GetCoplayFriendCount", + "params": [], + "returntype": "int" + }, + { + "methodname": "GetCoplayFriend", + "methodname_flat": "SteamAPI_ISteamFriends_GetCoplayFriend", + "params": [ + { "paramname":"iCoplayFriend", "paramtype":"int" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "GetFriendCoplayTime", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendCoplayTime", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "GetFriendCoplayGame", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendCoplayGame", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "AppId_t" + }, + { + "callresult": "JoinClanChatRoomCompletionResult_t", + "methodname": "JoinClanChatRoom", + "methodname_flat": "SteamAPI_ISteamFriends_JoinClanChatRoom", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "LeaveClanChatRoom", + "methodname_flat": "SteamAPI_ISteamFriends_LeaveClanChatRoom", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "GetClanChatMemberCount", + "methodname_flat": "SteamAPI_ISteamFriends_GetClanChatMemberCount", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "GetChatMemberByIndex", + "methodname_flat": "SteamAPI_ISteamFriends_GetChatMemberByIndex", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iUser", "paramtype":"int" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "SendClanChatMessage", + "methodname_flat": "SteamAPI_ISteamFriends_SendClanChatMessage", + "params": [ + { "paramname":"steamIDClanChat", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchText", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetClanChatMessage", + "methodname_flat": "SteamAPI_ISteamFriends_GetClanChatMessage", + "params": [ + { "paramname":"steamIDClanChat", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iMessage", "paramtype":"int" }, + { "paramname":"prgchText", "paramtype":"void *" }, + { "paramname":"cchTextMax", "paramtype":"int" }, + { "paramname":"peChatEntryType", "paramtype":"EChatEntryType *" }, + { + "out_struct": "", + "paramname": "psteamidChatter", + "paramtype": "CSteamID *" + } + ], + "returntype": "int" + }, + { + "methodname": "IsClanChatAdmin", + "methodname_flat": "SteamAPI_ISteamFriends_IsClanChatAdmin", + "params": [ + { "paramname":"steamIDClanChat", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "IsClanChatWindowOpenInSteam", + "methodname_flat": "SteamAPI_ISteamFriends_IsClanChatWindowOpenInSteam", + "params": [ + { "paramname":"steamIDClanChat", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "OpenClanChatWindowInSteam", + "methodname_flat": "SteamAPI_ISteamFriends_OpenClanChatWindowInSteam", + "params": [ + { "paramname":"steamIDClanChat", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "CloseClanChatWindowInSteam", + "methodname_flat": "SteamAPI_ISteamFriends_CloseClanChatWindowInSteam", + "params": [ + { "paramname":"steamIDClanChat", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "SetListenForFriendsMessages", + "methodname_flat": "SteamAPI_ISteamFriends_SetListenForFriendsMessages", + "params": [ + { "paramname":"bInterceptEnabled", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "ReplyToFriendMessage", + "methodname_flat": "SteamAPI_ISteamFriends_ReplyToFriendMessage", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchMsgToSend", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetFriendMessage", + "methodname_flat": "SteamAPI_ISteamFriends_GetFriendMessage", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iMessageID", "paramtype":"int" }, + { "paramname":"pvData", "paramtype":"void *" }, + { "paramname":"cubData", "paramtype":"int" }, + { "paramname":"peChatEntryType", "paramtype":"EChatEntryType *" } + ], + "returntype": "int" + }, + { + "callresult": "FriendsGetFollowerCount_t", + "methodname": "GetFollowerCount", + "methodname_flat": "SteamAPI_ISteamFriends_GetFollowerCount", + "params": [ + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "FriendsIsFollowing_t", + "methodname": "IsFollowing", + "methodname_flat": "SteamAPI_ISteamFriends_IsFollowing", + "params": [ + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "FriendsEnumerateFollowingList_t", + "methodname": "EnumerateFollowingList", + "methodname_flat": "SteamAPI_ISteamFriends_EnumerateFollowingList", + "params": [ + { "paramname":"unStartIndex", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "IsClanPublic", + "methodname_flat": "SteamAPI_ISteamFriends_IsClanPublic", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "IsClanOfficialGameGroup", + "methodname_flat": "SteamAPI_ISteamFriends_IsClanOfficialGameGroup", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "GetNumChatsWithUnreadPriorityMessages", + "methodname_flat": "SteamAPI_ISteamFriends_GetNumChatsWithUnreadPriorityMessages", + "params": [], + "returntype": "int" + }, + { + "methodname": "ActivateGameOverlayRemotePlayTogetherInviteDialog", + "methodname_flat": "SteamAPI_ISteamFriends_ActivateGameOverlayRemotePlayTogetherInviteDialog", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "RegisterProtocolInOverlayBrowser", + "methodname_flat": "SteamAPI_ISteamFriends_RegisterProtocolInOverlayBrowser", + "params": [ + { "paramname":"pchProtocol", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "ActivateGameOverlayInviteDialogConnectString", + "methodname_flat": "SteamAPI_ISteamFriends_ActivateGameOverlayInviteDialogConnectString", + "params": [ + { "paramname":"pchConnectString", "paramtype":"const char *" } + ], + "returntype": "void" + } + ], + "version_string": "SteamFriends017" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamUtils", + "name_flat": "SteamAPI_SteamUtils_v010" + }, + { + "kind": "gameserver", + "name": "SteamGameServerUtils", + "name_flat": "SteamAPI_SteamGameServerUtils_v010" + } + ], + "classname": "ISteamUtils", + "fields": [], + "methods": [ + { + "methodname": "GetSecondsSinceAppActive", + "methodname_flat": "SteamAPI_ISteamUtils_GetSecondsSinceAppActive", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetSecondsSinceComputerActive", + "methodname_flat": "SteamAPI_ISteamUtils_GetSecondsSinceComputerActive", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetConnectedUniverse", + "methodname_flat": "SteamAPI_ISteamUtils_GetConnectedUniverse", + "params": [], + "returntype": "EUniverse" + }, + { + "methodname": "GetServerRealTime", + "methodname_flat": "SteamAPI_ISteamUtils_GetServerRealTime", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetIPCountry", + "methodname_flat": "SteamAPI_ISteamUtils_GetIPCountry", + "params": [], + "returntype": "const char *" + }, + { + "methodname": "GetImageSize", + "methodname_flat": "SteamAPI_ISteamUtils_GetImageSize", + "params": [ + { "paramname":"iImage", "paramtype":"int" }, + { "paramname":"pnWidth", "paramtype":"uint32 *" }, + { "paramname":"pnHeight", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetImageRGBA", + "methodname_flat": "SteamAPI_ISteamUtils_GetImageRGBA", + "params": [ + { "paramname":"iImage", "paramtype":"int" }, + { "paramname":"pubDest", "paramtype":"uint8 *" }, + { "paramname":"nDestBufferSize", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "GetCurrentBatteryPower", + "methodname_flat": "SteamAPI_ISteamUtils_GetCurrentBatteryPower", + "params": [], + "returntype": "uint8" + }, + { + "methodname": "GetAppID", + "methodname_flat": "SteamAPI_ISteamUtils_GetAppID", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "SetOverlayNotificationPosition", + "methodname_flat": "SteamAPI_ISteamUtils_SetOverlayNotificationPosition", + "params": [ + { "paramname":"eNotificationPosition", "paramtype":"ENotificationPosition" } + ], + "returntype": "void" + }, + { + "methodname": "IsAPICallCompleted", + "methodname_flat": "SteamAPI_ISteamUtils_IsAPICallCompleted", + "params": [ + { "paramname":"hSteamAPICall", "paramtype":"SteamAPICall_t" }, + { "paramname":"pbFailed", "paramtype":"bool *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetAPICallFailureReason", + "methodname_flat": "SteamAPI_ISteamUtils_GetAPICallFailureReason", + "params": [ + { "paramname":"hSteamAPICall", "paramtype":"SteamAPICall_t" } + ], + "returntype": "ESteamAPICallFailure" + }, + { + "methodname": "GetAPICallResult", + "methodname_flat": "SteamAPI_ISteamUtils_GetAPICallResult", + "params": [ + { "paramname":"hSteamAPICall", "paramtype":"SteamAPICall_t" }, + { "paramname":"pCallback", "paramtype":"void *" }, + { "paramname":"cubCallback", "paramtype":"int" }, + { "paramname":"iCallbackExpected", "paramtype":"int" }, + { "paramname":"pbFailed", "paramtype":"bool *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetIPCCallCount", + "methodname_flat": "SteamAPI_ISteamUtils_GetIPCCallCount", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "SetWarningMessageHook", + "methodname_flat": "SteamAPI_ISteamUtils_SetWarningMessageHook", + "params": [ + { "paramname":"pFunction", "paramtype":"SteamAPIWarningMessageHook_t" } + ], + "returntype": "void" + }, + { + "methodname": "IsOverlayEnabled", + "methodname_flat": "SteamAPI_ISteamUtils_IsOverlayEnabled", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BOverlayNeedsPresent", + "methodname_flat": "SteamAPI_ISteamUtils_BOverlayNeedsPresent", + "params": [], + "returntype": "bool" + }, + { + "callresult": "CheckFileSignature_t", + "methodname": "CheckFileSignature", + "methodname_flat": "SteamAPI_ISteamUtils_CheckFileSignature", + "params": [ + { "paramname":"szFileName", "paramtype":"const char *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "ShowGamepadTextInput", + "methodname_flat": "SteamAPI_ISteamUtils_ShowGamepadTextInput", + "params": [ + { "paramname":"eInputMode", "paramtype":"EGamepadTextInputMode" }, + { "paramname":"eLineInputMode", "paramtype":"EGamepadTextInputLineMode" }, + { "paramname":"pchDescription", "paramtype":"const char *" }, + { "paramname":"unCharMax", "paramtype":"uint32" }, + { "paramname":"pchExistingText", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetEnteredGamepadTextLength", + "methodname_flat": "SteamAPI_ISteamUtils_GetEnteredGamepadTextLength", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetEnteredGamepadTextInput", + "methodname_flat": "SteamAPI_ISteamUtils_GetEnteredGamepadTextInput", + "params": [ + { "paramname":"pchText", "paramtype":"char *" }, + { "paramname":"cchText", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetSteamUILanguage", + "methodname_flat": "SteamAPI_ISteamUtils_GetSteamUILanguage", + "params": [], + "returntype": "const char *" + }, + { + "methodname": "IsSteamRunningInVR", + "methodname_flat": "SteamAPI_ISteamUtils_IsSteamRunningInVR", + "params": [], + "returntype": "bool" + }, + { + "methodname": "SetOverlayNotificationInset", + "methodname_flat": "SteamAPI_ISteamUtils_SetOverlayNotificationInset", + "params": [ + { "paramname":"nHorizontalInset", "paramtype":"int" }, + { "paramname":"nVerticalInset", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "IsSteamInBigPictureMode", + "methodname_flat": "SteamAPI_ISteamUtils_IsSteamInBigPictureMode", + "params": [], + "returntype": "bool" + }, + { + "methodname": "StartVRDashboard", + "methodname_flat": "SteamAPI_ISteamUtils_StartVRDashboard", + "params": [], + "returntype": "void" + }, + { + "methodname": "IsVRHeadsetStreamingEnabled", + "methodname_flat": "SteamAPI_ISteamUtils_IsVRHeadsetStreamingEnabled", + "params": [], + "returntype": "bool" + }, + { + "methodname": "SetVRHeadsetStreamingEnabled", + "methodname_flat": "SteamAPI_ISteamUtils_SetVRHeadsetStreamingEnabled", + "params": [ + { "paramname":"bEnabled", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "IsSteamChinaLauncher", + "methodname_flat": "SteamAPI_ISteamUtils_IsSteamChinaLauncher", + "params": [], + "returntype": "bool" + }, + { + "methodname": "InitFilterText", + "methodname_flat": "SteamAPI_ISteamUtils_InitFilterText", + "params": [ + { "paramname":"unFilterOptions", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "FilterText", + "methodname_flat": "SteamAPI_ISteamUtils_FilterText", + "params": [ + { "paramname":"eContext", "paramtype":"ETextFilteringContext" }, + { "paramname":"sourceSteamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchInputMessage", "paramtype":"const char *" }, + { "paramname":"pchOutFilteredText", "paramtype":"char *" }, + { "paramname":"nByteSizeOutFilteredText", "paramtype":"uint32" } + ], + "returntype": "int" + }, + { + "methodname": "GetIPv6ConnectivityState", + "methodname_flat": "SteamAPI_ISteamUtils_GetIPv6ConnectivityState", + "params": [ + { "paramname":"eProtocol", "paramtype":"ESteamIPv6ConnectivityProtocol" } + ], + "returntype": "ESteamIPv6ConnectivityState" + } + ], + "version_string": "SteamUtils010" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamMatchmaking", + "name_flat": "SteamAPI_SteamMatchmaking_v009" + } + ], + "classname": "ISteamMatchmaking", + "fields": [], + "methods": [ + { + "methodname": "GetFavoriteGameCount", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetFavoriteGameCount", + "params": [], + "returntype": "int" + }, + { + "methodname": "GetFavoriteGame", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetFavoriteGame", + "params": [ + { "paramname":"iGame", "paramtype":"int" }, + { "paramname":"pnAppID", "paramtype":"AppId_t *" }, + { "paramname":"pnIP", "paramtype":"uint32 *" }, + { "paramname":"pnConnPort", "paramtype":"uint16 *" }, + { "paramname":"pnQueryPort", "paramtype":"uint16 *" }, + { "paramname":"punFlags", "paramtype":"uint32 *" }, + { "paramname":"pRTime32LastPlayedOnServer", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "AddFavoriteGame", + "methodname_flat": "SteamAPI_ISteamMatchmaking_AddFavoriteGame", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" }, + { "paramname":"nIP", "paramtype":"uint32" }, + { "paramname":"nConnPort", "paramtype":"uint16" }, + { "paramname":"nQueryPort", "paramtype":"uint16" }, + { "paramname":"unFlags", "paramtype":"uint32" }, + { "paramname":"rTime32LastPlayedOnServer", "paramtype":"uint32" } + ], + "returntype": "int" + }, + { + "methodname": "RemoveFavoriteGame", + "methodname_flat": "SteamAPI_ISteamMatchmaking_RemoveFavoriteGame", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" }, + { "paramname":"nIP", "paramtype":"uint32" }, + { "paramname":"nConnPort", "paramtype":"uint16" }, + { "paramname":"nQueryPort", "paramtype":"uint16" }, + { "paramname":"unFlags", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "callresult": "LobbyMatchList_t", + "methodname": "RequestLobbyList", + "methodname_flat": "SteamAPI_ISteamMatchmaking_RequestLobbyList", + "params": [], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "AddRequestLobbyListStringFilter", + "methodname_flat": "SteamAPI_ISteamMatchmaking_AddRequestLobbyListStringFilter", + "params": [ + { "paramname":"pchKeyToMatch", "paramtype":"const char *" }, + { "paramname":"pchValueToMatch", "paramtype":"const char *" }, + { "paramname":"eComparisonType", "paramtype":"ELobbyComparison" } + ], + "returntype": "void" + }, + { + "methodname": "AddRequestLobbyListNumericalFilter", + "methodname_flat": "SteamAPI_ISteamMatchmaking_AddRequestLobbyListNumericalFilter", + "params": [ + { "paramname":"pchKeyToMatch", "paramtype":"const char *" }, + { "paramname":"nValueToMatch", "paramtype":"int" }, + { "paramname":"eComparisonType", "paramtype":"ELobbyComparison" } + ], + "returntype": "void" + }, + { + "methodname": "AddRequestLobbyListNearValueFilter", + "methodname_flat": "SteamAPI_ISteamMatchmaking_AddRequestLobbyListNearValueFilter", + "params": [ + { "paramname":"pchKeyToMatch", "paramtype":"const char *" }, + { "paramname":"nValueToBeCloseTo", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "AddRequestLobbyListFilterSlotsAvailable", + "methodname_flat": "SteamAPI_ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable", + "params": [ + { "paramname":"nSlotsAvailable", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "AddRequestLobbyListDistanceFilter", + "methodname_flat": "SteamAPI_ISteamMatchmaking_AddRequestLobbyListDistanceFilter", + "params": [ + { "paramname":"eLobbyDistanceFilter", "paramtype":"ELobbyDistanceFilter" } + ], + "returntype": "void" + }, + { + "methodname": "AddRequestLobbyListResultCountFilter", + "methodname_flat": "SteamAPI_ISteamMatchmaking_AddRequestLobbyListResultCountFilter", + "params": [ + { "paramname":"cMaxResults", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "AddRequestLobbyListCompatibleMembersFilter", + "methodname_flat": "SteamAPI_ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "GetLobbyByIndex", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetLobbyByIndex", + "params": [ + { "paramname":"iLobby", "paramtype":"int" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "callresult": "LobbyCreated_t", + "methodname": "CreateLobby", + "methodname_flat": "SteamAPI_ISteamMatchmaking_CreateLobby", + "params": [ + { "paramname":"eLobbyType", "paramtype":"ELobbyType" }, + { "paramname":"cMaxMembers", "paramtype":"int" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "LobbyEnter_t", + "methodname": "JoinLobby", + "methodname_flat": "SteamAPI_ISteamMatchmaking_JoinLobby", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "LeaveLobby", + "methodname_flat": "SteamAPI_ISteamMatchmaking_LeaveLobby", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "InviteUserToLobby", + "methodname_flat": "SteamAPI_ISteamMatchmaking_InviteUserToLobby", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"steamIDInvitee", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "GetNumLobbyMembers", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetNumLobbyMembers", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "GetLobbyMemberByIndex", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetLobbyMemberByIndex", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iMember", "paramtype":"int" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "GetLobbyData", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetLobbyData", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchKey", "paramtype":"const char *" } + ], + "returntype": "const char *" + }, + { + "methodname": "SetLobbyData", + "methodname_flat": "SteamAPI_ISteamMatchmaking_SetLobbyData", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchKey", "paramtype":"const char *" }, + { "paramname":"pchValue", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetLobbyDataCount", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetLobbyDataCount", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "GetLobbyDataByIndex", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetLobbyDataByIndex", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iLobbyData", "paramtype":"int" }, + { "paramname":"pchKey", "paramtype":"char *" }, + { "paramname":"cchKeyBufferSize", "paramtype":"int" }, + { "paramname":"pchValue", "paramtype":"char *" }, + { "paramname":"cchValueBufferSize", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "DeleteLobbyData", + "methodname_flat": "SteamAPI_ISteamMatchmaking_DeleteLobbyData", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchKey", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetLobbyMemberData", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetLobbyMemberData", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchKey", "paramtype":"const char *" } + ], + "returntype": "const char *" + }, + { + "methodname": "SetLobbyMemberData", + "methodname_flat": "SteamAPI_ISteamMatchmaking_SetLobbyMemberData", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchKey", "paramtype":"const char *" }, + { "paramname":"pchValue", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SendLobbyChatMsg", + "methodname_flat": "SteamAPI_ISteamMatchmaking_SendLobbyChatMsg", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pvMsgBody", "paramtype":"const void *" }, + { "paramname":"cubMsgBody", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "GetLobbyChatEntry", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetLobbyChatEntry", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"iChatID", "paramtype":"int" }, + { + "out_struct": "", + "paramname": "pSteamIDUser", + "paramtype": "CSteamID *" + }, + { "paramname":"pvData", "paramtype":"void *" }, + { "paramname":"cubData", "paramtype":"int" }, + { "paramname":"peChatEntryType", "paramtype":"EChatEntryType *" } + ], + "returntype": "int" + }, + { + "methodname": "RequestLobbyData", + "methodname_flat": "SteamAPI_ISteamMatchmaking_RequestLobbyData", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "SetLobbyGameServer", + "methodname_flat": "SteamAPI_ISteamMatchmaking_SetLobbyGameServer", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"unGameServerIP", "paramtype":"uint32" }, + { "paramname":"unGameServerPort", "paramtype":"uint16" }, + { "paramname":"steamIDGameServer", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "GetLobbyGameServer", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetLobbyGameServer", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"punGameServerIP", "paramtype":"uint32 *" }, + { "paramname":"punGameServerPort", "paramtype":"uint16 *" }, + { + "out_struct": "", + "paramname": "psteamIDGameServer", + "paramtype": "CSteamID *" + } + ], + "returntype": "bool" + }, + { + "methodname": "SetLobbyMemberLimit", + "methodname_flat": "SteamAPI_ISteamMatchmaking_SetLobbyMemberLimit", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"cMaxMembers", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "GetLobbyMemberLimit", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetLobbyMemberLimit", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "int" + }, + { + "methodname": "SetLobbyType", + "methodname_flat": "SteamAPI_ISteamMatchmaking_SetLobbyType", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"eLobbyType", "paramtype":"ELobbyType" } + ], + "returntype": "bool" + }, + { + "methodname": "SetLobbyJoinable", + "methodname_flat": "SteamAPI_ISteamMatchmaking_SetLobbyJoinable", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"bLobbyJoinable", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "GetLobbyOwner", + "methodname_flat": "SteamAPI_ISteamMatchmaking_GetLobbyOwner", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "SetLobbyOwner", + "methodname_flat": "SteamAPI_ISteamMatchmaking_SetLobbyOwner", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"steamIDNewOwner", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "SetLinkedLobby", + "methodname_flat": "SteamAPI_ISteamMatchmaking_SetLinkedLobby", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"steamIDLobbyDependent", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + } + ], + "version_string": "SteamMatchMaking009" + }, + { + "classname": "ISteamMatchmakingServerListResponse", + "fields": [], + "methods": [ + { + "methodname": "ServerResponded", + "methodname_flat": "SteamAPI_ISteamMatchmakingServerListResponse_ServerResponded", + "params": [ + { "paramname":"hRequest", "paramtype":"HServerListRequest" }, + { "paramname":"iServer", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "ServerFailedToRespond", + "methodname_flat": "SteamAPI_ISteamMatchmakingServerListResponse_ServerFailedToRespond", + "params": [ + { "paramname":"hRequest", "paramtype":"HServerListRequest" }, + { "paramname":"iServer", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "RefreshComplete", + "methodname_flat": "SteamAPI_ISteamMatchmakingServerListResponse_RefreshComplete", + "params": [ + { "paramname":"hRequest", "paramtype":"HServerListRequest" }, + { "paramname":"response", "paramtype":"EMatchMakingServerResponse" } + ], + "returntype": "void" + } + ] + }, + { + "classname": "ISteamMatchmakingPingResponse", + "fields": [], + "methods": [ + { + "methodname": "ServerResponded", + "methodname_flat": "SteamAPI_ISteamMatchmakingPingResponse_ServerResponded", + "params": [ + { "paramname":"server", "paramtype":"gameserveritem_t &" } + ], + "returntype": "void" + }, + { + "methodname": "ServerFailedToRespond", + "methodname_flat": "SteamAPI_ISteamMatchmakingPingResponse_ServerFailedToRespond", + "params": [], + "returntype": "void" + } + ] + }, + { + "classname": "ISteamMatchmakingPlayersResponse", + "fields": [], + "methods": [ + { + "methodname": "AddPlayerToList", + "methodname_flat": "SteamAPI_ISteamMatchmakingPlayersResponse_AddPlayerToList", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"nScore", "paramtype":"int" }, + { "paramname":"flTimePlayed", "paramtype":"float" } + ], + "returntype": "void" + }, + { + "methodname": "PlayersFailedToRespond", + "methodname_flat": "SteamAPI_ISteamMatchmakingPlayersResponse_PlayersFailedToRespond", + "params": [], + "returntype": "void" + }, + { + "methodname": "PlayersRefreshComplete", + "methodname_flat": "SteamAPI_ISteamMatchmakingPlayersResponse_PlayersRefreshComplete", + "params": [], + "returntype": "void" + } + ] + }, + { + "classname": "ISteamMatchmakingRulesResponse", + "fields": [], + "methods": [ + { + "methodname": "RulesResponded", + "methodname_flat": "SteamAPI_ISteamMatchmakingRulesResponse_RulesResponded", + "params": [ + { "paramname":"pchRule", "paramtype":"const char *" }, + { "paramname":"pchValue", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "RulesFailedToRespond", + "methodname_flat": "SteamAPI_ISteamMatchmakingRulesResponse_RulesFailedToRespond", + "params": [], + "returntype": "void" + }, + { + "methodname": "RulesRefreshComplete", + "methodname_flat": "SteamAPI_ISteamMatchmakingRulesResponse_RulesRefreshComplete", + "params": [], + "returntype": "void" + } + ] + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamMatchmakingServers", + "name_flat": "SteamAPI_SteamMatchmakingServers_v002" + } + ], + "classname": "ISteamMatchmakingServers", + "fields": [], + "methods": [ + { + "methodname": "RequestInternetServerList", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_RequestInternetServerList", + "params": [ + { "paramname":"iApp", "paramtype":"AppId_t" }, + { + "array_count": "nFilters", + "paramname": "ppchFilters", + "paramtype": "MatchMakingKeyValuePair_t **" + }, + { "paramname":"nFilters", "paramtype":"uint32" }, + { "paramname":"pRequestServersResponse", "paramtype":"ISteamMatchmakingServerListResponse *" } + ], + "returntype": "HServerListRequest" + }, + { + "methodname": "RequestLANServerList", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_RequestLANServerList", + "params": [ + { "paramname":"iApp", "paramtype":"AppId_t" }, + { "paramname":"pRequestServersResponse", "paramtype":"ISteamMatchmakingServerListResponse *" } + ], + "returntype": "HServerListRequest" + }, + { + "methodname": "RequestFriendsServerList", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_RequestFriendsServerList", + "params": [ + { "paramname":"iApp", "paramtype":"AppId_t" }, + { + "array_count": "nFilters", + "paramname": "ppchFilters", + "paramtype": "MatchMakingKeyValuePair_t **" + }, + { "paramname":"nFilters", "paramtype":"uint32" }, + { "paramname":"pRequestServersResponse", "paramtype":"ISteamMatchmakingServerListResponse *" } + ], + "returntype": "HServerListRequest" + }, + { + "methodname": "RequestFavoritesServerList", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_RequestFavoritesServerList", + "params": [ + { "paramname":"iApp", "paramtype":"AppId_t" }, + { + "array_count": "nFilters", + "paramname": "ppchFilters", + "paramtype": "MatchMakingKeyValuePair_t **" + }, + { "paramname":"nFilters", "paramtype":"uint32" }, + { "paramname":"pRequestServersResponse", "paramtype":"ISteamMatchmakingServerListResponse *" } + ], + "returntype": "HServerListRequest" + }, + { + "methodname": "RequestHistoryServerList", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_RequestHistoryServerList", + "params": [ + { "paramname":"iApp", "paramtype":"AppId_t" }, + { + "array_count": "nFilters", + "paramname": "ppchFilters", + "paramtype": "MatchMakingKeyValuePair_t **" + }, + { "paramname":"nFilters", "paramtype":"uint32" }, + { "paramname":"pRequestServersResponse", "paramtype":"ISteamMatchmakingServerListResponse *" } + ], + "returntype": "HServerListRequest" + }, + { + "methodname": "RequestSpectatorServerList", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_RequestSpectatorServerList", + "params": [ + { "paramname":"iApp", "paramtype":"AppId_t" }, + { + "array_count": "nFilters", + "paramname": "ppchFilters", + "paramtype": "MatchMakingKeyValuePair_t **" + }, + { "paramname":"nFilters", "paramtype":"uint32" }, + { "paramname":"pRequestServersResponse", "paramtype":"ISteamMatchmakingServerListResponse *" } + ], + "returntype": "HServerListRequest" + }, + { + "methodname": "ReleaseRequest", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_ReleaseRequest", + "params": [ + { "paramname":"hServerListRequest", "paramtype":"HServerListRequest" } + ], + "returntype": "void" + }, + { + "methodname": "GetServerDetails", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_GetServerDetails", + "params": [ + { "paramname":"hRequest", "paramtype":"HServerListRequest" }, + { "paramname":"iServer", "paramtype":"int" } + ], + "returntype": "gameserveritem_t *" + }, + { + "methodname": "CancelQuery", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_CancelQuery", + "params": [ + { "paramname":"hRequest", "paramtype":"HServerListRequest" } + ], + "returntype": "void" + }, + { + "methodname": "RefreshQuery", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_RefreshQuery", + "params": [ + { "paramname":"hRequest", "paramtype":"HServerListRequest" } + ], + "returntype": "void" + }, + { + "methodname": "IsRefreshing", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_IsRefreshing", + "params": [ + { "paramname":"hRequest", "paramtype":"HServerListRequest" } + ], + "returntype": "bool" + }, + { + "methodname": "GetServerCount", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_GetServerCount", + "params": [ + { "paramname":"hRequest", "paramtype":"HServerListRequest" } + ], + "returntype": "int" + }, + { + "methodname": "RefreshServer", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_RefreshServer", + "params": [ + { "paramname":"hRequest", "paramtype":"HServerListRequest" }, + { "paramname":"iServer", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "PingServer", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_PingServer", + "params": [ + { "paramname":"unIP", "paramtype":"uint32" }, + { "paramname":"usPort", "paramtype":"uint16" }, + { "paramname":"pRequestServersResponse", "paramtype":"ISteamMatchmakingPingResponse *" } + ], + "returntype": "HServerQuery" + }, + { + "methodname": "PlayerDetails", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_PlayerDetails", + "params": [ + { "paramname":"unIP", "paramtype":"uint32" }, + { "paramname":"usPort", "paramtype":"uint16" }, + { "paramname":"pRequestServersResponse", "paramtype":"ISteamMatchmakingPlayersResponse *" } + ], + "returntype": "HServerQuery" + }, + { + "methodname": "ServerRules", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_ServerRules", + "params": [ + { "paramname":"unIP", "paramtype":"uint32" }, + { "paramname":"usPort", "paramtype":"uint16" }, + { "paramname":"pRequestServersResponse", "paramtype":"ISteamMatchmakingRulesResponse *" } + ], + "returntype": "HServerQuery" + }, + { + "methodname": "CancelServerQuery", + "methodname_flat": "SteamAPI_ISteamMatchmakingServers_CancelServerQuery", + "params": [ + { "paramname":"hServerQuery", "paramtype":"HServerQuery" } + ], + "returntype": "void" + } + ], + "version_string": "SteamMatchMakingServers002" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamGameSearch", + "name_flat": "SteamAPI_SteamGameSearch_v001" + } + ], + "classname": "ISteamGameSearch", + "fields": [], + "methods": [ + { + "methodname": "AddGameSearchParams", + "methodname_flat": "SteamAPI_ISteamGameSearch_AddGameSearchParams", + "params": [ + { "paramname":"pchKeyToFind", "paramtype":"const char *" }, + { "paramname":"pchValuesToFind", "paramtype":"const char *" } + ], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "SearchForGameWithLobby", + "methodname_flat": "SteamAPI_ISteamGameSearch_SearchForGameWithLobby", + "params": [ + { "paramname":"steamIDLobby", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"nPlayerMin", "paramtype":"int" }, + { "paramname":"nPlayerMax", "paramtype":"int" } + ], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "SearchForGameSolo", + "methodname_flat": "SteamAPI_ISteamGameSearch_SearchForGameSolo", + "params": [ + { "paramname":"nPlayerMin", "paramtype":"int" }, + { "paramname":"nPlayerMax", "paramtype":"int" } + ], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "AcceptGame", + "methodname_flat": "SteamAPI_ISteamGameSearch_AcceptGame", + "params": [], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "DeclineGame", + "methodname_flat": "SteamAPI_ISteamGameSearch_DeclineGame", + "params": [], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "RetrieveConnectionDetails", + "methodname_flat": "SteamAPI_ISteamGameSearch_RetrieveConnectionDetails", + "params": [ + { "paramname":"steamIDHost", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchConnectionDetails", "paramtype":"char *" }, + { "paramname":"cubConnectionDetails", "paramtype":"int" } + ], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "EndGameSearch", + "methodname_flat": "SteamAPI_ISteamGameSearch_EndGameSearch", + "params": [], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "SetGameHostParams", + "methodname_flat": "SteamAPI_ISteamGameSearch_SetGameHostParams", + "params": [ + { "paramname":"pchKey", "paramtype":"const char *" }, + { "paramname":"pchValue", "paramtype":"const char *" } + ], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "SetConnectionDetails", + "methodname_flat": "SteamAPI_ISteamGameSearch_SetConnectionDetails", + "params": [ + { "paramname":"pchConnectionDetails", "paramtype":"const char *" }, + { "paramname":"cubConnectionDetails", "paramtype":"int" } + ], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "RequestPlayersForGame", + "methodname_flat": "SteamAPI_ISteamGameSearch_RequestPlayersForGame", + "params": [ + { "paramname":"nPlayerMin", "paramtype":"int" }, + { "paramname":"nPlayerMax", "paramtype":"int" }, + { "paramname":"nMaxTeamSize", "paramtype":"int" } + ], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "HostConfirmGameStart", + "methodname_flat": "SteamAPI_ISteamGameSearch_HostConfirmGameStart", + "params": [ + { "paramname":"ullUniqueGameID", "paramtype":"uint64" } + ], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "CancelRequestPlayersForGame", + "methodname_flat": "SteamAPI_ISteamGameSearch_CancelRequestPlayersForGame", + "params": [], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "SubmitPlayerResult", + "methodname_flat": "SteamAPI_ISteamGameSearch_SubmitPlayerResult", + "params": [ + { "paramname":"ullUniqueGameID", "paramtype":"uint64" }, + { "paramname":"steamIDPlayer", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"EPlayerResult", "paramtype":"EPlayerResult_t" } + ], + "returntype": "EGameSearchErrorCode_t" + }, + { + "methodname": "EndGame", + "methodname_flat": "SteamAPI_ISteamGameSearch_EndGame", + "params": [ + { "paramname":"ullUniqueGameID", "paramtype":"uint64" } + ], + "returntype": "EGameSearchErrorCode_t" + } + ], + "version_string": "SteamMatchGameSearch001" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamParties", + "name_flat": "SteamAPI_SteamParties_v002" + } + ], + "classname": "ISteamParties", + "fields": [], + "methods": [ + { + "methodname": "GetNumActiveBeacons", + "methodname_flat": "SteamAPI_ISteamParties_GetNumActiveBeacons", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetBeaconByIndex", + "methodname_flat": "SteamAPI_ISteamParties_GetBeaconByIndex", + "params": [ + { "paramname":"unIndex", "paramtype":"uint32" } + ], + "returntype": "PartyBeaconID_t" + }, + { + "methodname": "GetBeaconDetails", + "methodname_flat": "SteamAPI_ISteamParties_GetBeaconDetails", + "params": [ + { "paramname":"ulBeaconID", "paramtype":"PartyBeaconID_t" }, + { "paramname":"pSteamIDBeaconOwner", "paramtype":"CSteamID *" }, + { + "out_struct": "", + "paramname": "pLocation", + "paramtype": "SteamPartyBeaconLocation_t *" + }, + { + "out_string_count": "cchMetadata", + "paramname": "pchMetadata", + "paramtype": "char *" + }, + { "paramname":"cchMetadata", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "callresult": "JoinPartyCallback_t", + "methodname": "JoinParty", + "methodname_flat": "SteamAPI_ISteamParties_JoinParty", + "params": [ + { "paramname":"ulBeaconID", "paramtype":"PartyBeaconID_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetNumAvailableBeaconLocations", + "methodname_flat": "SteamAPI_ISteamParties_GetNumAvailableBeaconLocations", + "params": [ + { "paramname":"puNumLocations", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetAvailableBeaconLocations", + "methodname_flat": "SteamAPI_ISteamParties_GetAvailableBeaconLocations", + "params": [ + { "paramname":"pLocationList", "paramtype":"SteamPartyBeaconLocation_t *" }, + { "paramname":"uMaxNumLocations", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "callresult": "CreateBeaconCallback_t", + "methodname": "CreateBeacon", + "methodname_flat": "SteamAPI_ISteamParties_CreateBeacon", + "params": [ + { "paramname":"unOpenSlots", "paramtype":"uint32" }, + { "paramname":"pBeaconLocation", "paramtype":"SteamPartyBeaconLocation_t *" }, + { "paramname":"pchConnectString", "paramtype":"const char *" }, + { "paramname":"pchMetadata", "paramtype":"const char *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "OnReservationCompleted", + "methodname_flat": "SteamAPI_ISteamParties_OnReservationCompleted", + "params": [ + { "paramname":"ulBeacon", "paramtype":"PartyBeaconID_t" }, + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "CancelReservation", + "methodname_flat": "SteamAPI_ISteamParties_CancelReservation", + "params": [ + { "paramname":"ulBeacon", "paramtype":"PartyBeaconID_t" }, + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "callresult": "ChangeNumOpenSlotsCallback_t", + "methodname": "ChangeNumOpenSlots", + "methodname_flat": "SteamAPI_ISteamParties_ChangeNumOpenSlots", + "params": [ + { "paramname":"ulBeacon", "paramtype":"PartyBeaconID_t" }, + { "paramname":"unOpenSlots", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "DestroyBeacon", + "methodname_flat": "SteamAPI_ISteamParties_DestroyBeacon", + "params": [ + { "paramname":"ulBeacon", "paramtype":"PartyBeaconID_t" } + ], + "returntype": "bool" + }, + { + "methodname": "GetBeaconLocationData", + "methodname_flat": "SteamAPI_ISteamParties_GetBeaconLocationData", + "params": [ + { "paramname":"BeaconLocation", "paramtype":"SteamPartyBeaconLocation_t" }, + { "paramname":"eData", "paramtype":"ESteamPartyBeaconLocationData" }, + { + "out_string_count": "cchDataStringOut", + "paramname": "pchDataStringOut", + "paramtype": "char *" + }, + { "paramname":"cchDataStringOut", "paramtype":"int" } + ], + "returntype": "bool" + } + ], + "version_string": "SteamParties002" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamRemoteStorage", + "name_flat": "SteamAPI_SteamRemoteStorage_v014" + } + ], + "classname": "ISteamRemoteStorage", + "fields": [], + "methods": [ + { + "methodname": "FileWrite", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileWrite", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" }, + { "paramname":"pvData", "paramtype":"const void *" }, + { "paramname":"cubData", "paramtype":"int32" } + ], + "returntype": "bool" + }, + { + "methodname": "FileRead", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileRead", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" }, + { "paramname":"pvData", "paramtype":"void *" }, + { "paramname":"cubDataToRead", "paramtype":"int32" } + ], + "returntype": "int32" + }, + { + "callresult": "RemoteStorageFileWriteAsyncComplete_t", + "methodname": "FileWriteAsync", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileWriteAsync", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" }, + { "paramname":"pvData", "paramtype":"const void *" }, + { "paramname":"cubData", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageFileReadAsyncComplete_t", + "methodname": "FileReadAsync", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileReadAsync", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" }, + { "paramname":"nOffset", "paramtype":"uint32" }, + { "paramname":"cubToRead", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "FileReadAsyncComplete", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileReadAsyncComplete", + "params": [ + { "paramname":"hReadCall", "paramtype":"SteamAPICall_t" }, + { "paramname":"pvBuffer", "paramtype":"void *" }, + { "paramname":"cubToRead", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "FileForget", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileForget", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "FileDelete", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileDelete", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "callresult": "RemoteStorageFileShareResult_t", + "methodname": "FileShare", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileShare", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "SetSyncPlatforms", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_SetSyncPlatforms", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" }, + { "paramname":"eRemoteStoragePlatform", "paramtype":"ERemoteStoragePlatform" } + ], + "returntype": "bool" + }, + { + "methodname": "FileWriteStreamOpen", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileWriteStreamOpen", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" } + ], + "returntype": "UGCFileWriteStreamHandle_t" + }, + { + "methodname": "FileWriteStreamWriteChunk", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileWriteStreamWriteChunk", + "params": [ + { "paramname":"writeHandle", "paramtype":"UGCFileWriteStreamHandle_t" }, + { "paramname":"pvData", "paramtype":"const void *" }, + { "paramname":"cubData", "paramtype":"int32" } + ], + "returntype": "bool" + }, + { + "methodname": "FileWriteStreamClose", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileWriteStreamClose", + "params": [ + { "paramname":"writeHandle", "paramtype":"UGCFileWriteStreamHandle_t" } + ], + "returntype": "bool" + }, + { + "methodname": "FileWriteStreamCancel", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileWriteStreamCancel", + "params": [ + { "paramname":"writeHandle", "paramtype":"UGCFileWriteStreamHandle_t" } + ], + "returntype": "bool" + }, + { + "methodname": "FileExists", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FileExists", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "FilePersisted", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_FilePersisted", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetFileSize", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetFileSize", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" } + ], + "returntype": "int32" + }, + { + "methodname": "GetFileTimestamp", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetFileTimestamp", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" } + ], + "returntype": "int64" + }, + { + "methodname": "GetSyncPlatforms", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetSyncPlatforms", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" } + ], + "returntype": "ERemoteStoragePlatform" + }, + { + "methodname": "GetFileCount", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetFileCount", + "params": [], + "returntype": "int32" + }, + { + "methodname": "GetFileNameAndSize", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetFileNameAndSize", + "params": [ + { "paramname":"iFile", "paramtype":"int" }, + { "paramname":"pnFileSizeInBytes", "paramtype":"int32 *" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetQuota", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetQuota", + "params": [ + { "paramname":"pnTotalBytes", "paramtype":"uint64 *" }, + { "paramname":"puAvailableBytes", "paramtype":"uint64 *" } + ], + "returntype": "bool" + }, + { + "methodname": "IsCloudEnabledForAccount", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount", + "params": [], + "returntype": "bool" + }, + { + "methodname": "IsCloudEnabledForApp", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp", + "params": [], + "returntype": "bool" + }, + { + "methodname": "SetCloudEnabledForApp", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_SetCloudEnabledForApp", + "params": [ + { "paramname":"bEnabled", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "callresult": "RemoteStorageDownloadUGCResult_t", + "methodname": "UGCDownload", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UGCDownload", + "params": [ + { "paramname":"hContent", "paramtype":"UGCHandle_t" }, + { "paramname":"unPriority", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetUGCDownloadProgress", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetUGCDownloadProgress", + "params": [ + { "paramname":"hContent", "paramtype":"UGCHandle_t" }, + { "paramname":"pnBytesDownloaded", "paramtype":"int32 *" }, + { "paramname":"pnBytesExpected", "paramtype":"int32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetUGCDetails", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetUGCDetails", + "params": [ + { "paramname":"hContent", "paramtype":"UGCHandle_t" }, + { "paramname":"pnAppID", "paramtype":"AppId_t *" }, + { + "out_string": "", + "paramname": "ppchName", + "paramtype": "char **" + }, + { "paramname":"pnFileSizeInBytes", "paramtype":"int32 *" }, + { + "out_struct": "", + "paramname": "pSteamIDOwner", + "paramtype": "CSteamID *" + } + ], + "returntype": "bool" + }, + { + "methodname": "UGCRead", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UGCRead", + "params": [ + { "paramname":"hContent", "paramtype":"UGCHandle_t" }, + { "paramname":"pvData", "paramtype":"void *" }, + { "paramname":"cubDataToRead", "paramtype":"int32" }, + { "paramname":"cOffset", "paramtype":"uint32" }, + { "paramname":"eAction", "paramtype":"EUGCReadAction" } + ], + "returntype": "int32" + }, + { + "methodname": "GetCachedUGCCount", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetCachedUGCCount", + "params": [], + "returntype": "int32" + }, + { + "methodname": "GetCachedUGCHandle", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetCachedUGCHandle", + "params": [ + { "paramname":"iCachedContent", "paramtype":"int32" } + ], + "returntype": "UGCHandle_t" + }, + { + "callresult": "RemoteStoragePublishFileProgress_t", + "methodname": "PublishWorkshopFile", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_PublishWorkshopFile", + "params": [ + { "paramname":"pchFile", "paramtype":"const char *" }, + { "paramname":"pchPreviewFile", "paramtype":"const char *" }, + { "paramname":"nConsumerAppId", "paramtype":"AppId_t" }, + { "paramname":"pchTitle", "paramtype":"const char *" }, + { "paramname":"pchDescription", "paramtype":"const char *" }, + { "paramname":"eVisibility", "paramtype":"ERemoteStoragePublishedFileVisibility" }, + { "paramname":"pTags", "paramtype":"SteamParamStringArray_t *" }, + { "paramname":"eWorkshopFileType", "paramtype":"EWorkshopFileType" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "CreatePublishedFileUpdateRequest", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_CreatePublishedFileUpdateRequest", + "params": [ + { "paramname":"unPublishedFileId", "paramtype":"PublishedFileId_t" } + ], + "returntype": "PublishedFileUpdateHandle_t" + }, + { + "methodname": "UpdatePublishedFileFile", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileFile", + "params": [ + { "paramname":"updateHandle", "paramtype":"PublishedFileUpdateHandle_t" }, + { "paramname":"pchFile", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdatePublishedFilePreviewFile", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UpdatePublishedFilePreviewFile", + "params": [ + { "paramname":"updateHandle", "paramtype":"PublishedFileUpdateHandle_t" }, + { "paramname":"pchPreviewFile", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdatePublishedFileTitle", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTitle", + "params": [ + { "paramname":"updateHandle", "paramtype":"PublishedFileUpdateHandle_t" }, + { "paramname":"pchTitle", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdatePublishedFileDescription", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileDescription", + "params": [ + { "paramname":"updateHandle", "paramtype":"PublishedFileUpdateHandle_t" }, + { "paramname":"pchDescription", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdatePublishedFileVisibility", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileVisibility", + "params": [ + { "paramname":"updateHandle", "paramtype":"PublishedFileUpdateHandle_t" }, + { "paramname":"eVisibility", "paramtype":"ERemoteStoragePublishedFileVisibility" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdatePublishedFileTags", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTags", + "params": [ + { "paramname":"updateHandle", "paramtype":"PublishedFileUpdateHandle_t" }, + { "paramname":"pTags", "paramtype":"SteamParamStringArray_t *" } + ], + "returntype": "bool" + }, + { + "callresult": "RemoteStorageUpdatePublishedFileResult_t", + "methodname": "CommitPublishedFileUpdate", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_CommitPublishedFileUpdate", + "params": [ + { "paramname":"updateHandle", "paramtype":"PublishedFileUpdateHandle_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageGetPublishedFileDetailsResult_t", + "methodname": "GetPublishedFileDetails", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetPublishedFileDetails", + "params": [ + { "paramname":"unPublishedFileId", "paramtype":"PublishedFileId_t" }, + { "paramname":"unMaxSecondsOld", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageDeletePublishedFileResult_t", + "methodname": "DeletePublishedFile", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_DeletePublishedFile", + "params": [ + { "paramname":"unPublishedFileId", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageEnumerateUserPublishedFilesResult_t", + "methodname": "EnumerateUserPublishedFiles", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_EnumerateUserPublishedFiles", + "params": [ + { "paramname":"unStartIndex", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageSubscribePublishedFileResult_t", + "methodname": "SubscribePublishedFile", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_SubscribePublishedFile", + "params": [ + { "paramname":"unPublishedFileId", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageEnumerateUserSubscribedFilesResult_t", + "methodname": "EnumerateUserSubscribedFiles", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_EnumerateUserSubscribedFiles", + "params": [ + { "paramname":"unStartIndex", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageUnsubscribePublishedFileResult_t", + "methodname": "UnsubscribePublishedFile", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UnsubscribePublishedFile", + "params": [ + { "paramname":"unPublishedFileId", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "UpdatePublishedFileSetChangeDescription", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription", + "params": [ + { "paramname":"updateHandle", "paramtype":"PublishedFileUpdateHandle_t" }, + { "paramname":"pchChangeDescription", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "callresult": "RemoteStorageGetPublishedItemVoteDetailsResult_t", + "methodname": "GetPublishedItemVoteDetails", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetPublishedItemVoteDetails", + "params": [ + { "paramname":"unPublishedFileId", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageUpdateUserPublishedItemVoteResult_t", + "methodname": "UpdateUserPublishedItemVote", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UpdateUserPublishedItemVote", + "params": [ + { "paramname":"unPublishedFileId", "paramtype":"PublishedFileId_t" }, + { "paramname":"bVoteUp", "paramtype":"bool" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageGetPublishedItemVoteDetailsResult_t", + "methodname": "GetUserPublishedItemVoteDetails", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_GetUserPublishedItemVoteDetails", + "params": [ + { "paramname":"unPublishedFileId", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageEnumerateUserPublishedFilesResult_t", + "methodname": "EnumerateUserSharedWorkshopFiles", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles", + "params": [ + { "paramname":"steamId", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"unStartIndex", "paramtype":"uint32" }, + { "paramname":"pRequiredTags", "paramtype":"SteamParamStringArray_t *" }, + { "paramname":"pExcludedTags", "paramtype":"SteamParamStringArray_t *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStoragePublishFileProgress_t", + "methodname": "PublishVideo", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_PublishVideo", + "params": [ + { "paramname":"eVideoProvider", "paramtype":"EWorkshopVideoProvider" }, + { "paramname":"pchVideoAccount", "paramtype":"const char *" }, + { "paramname":"pchVideoIdentifier", "paramtype":"const char *" }, + { "paramname":"pchPreviewFile", "paramtype":"const char *" }, + { "paramname":"nConsumerAppId", "paramtype":"AppId_t" }, + { "paramname":"pchTitle", "paramtype":"const char *" }, + { "paramname":"pchDescription", "paramtype":"const char *" }, + { "paramname":"eVisibility", "paramtype":"ERemoteStoragePublishedFileVisibility" }, + { "paramname":"pTags", "paramtype":"SteamParamStringArray_t *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageSetUserPublishedFileActionResult_t", + "methodname": "SetUserPublishedFileAction", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_SetUserPublishedFileAction", + "params": [ + { "paramname":"unPublishedFileId", "paramtype":"PublishedFileId_t" }, + { "paramname":"eAction", "paramtype":"EWorkshopFileAction" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageEnumeratePublishedFilesByUserActionResult_t", + "methodname": "EnumeratePublishedFilesByUserAction", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_EnumeratePublishedFilesByUserAction", + "params": [ + { "paramname":"eAction", "paramtype":"EWorkshopFileAction" }, + { "paramname":"unStartIndex", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageEnumerateWorkshopFilesResult_t", + "methodname": "EnumeratePublishedWorkshopFiles", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_EnumeratePublishedWorkshopFiles", + "params": [ + { "paramname":"eEnumerationType", "paramtype":"EWorkshopEnumerationType" }, + { "paramname":"unStartIndex", "paramtype":"uint32" }, + { "paramname":"unCount", "paramtype":"uint32" }, + { "paramname":"unDays", "paramtype":"uint32" }, + { "paramname":"pTags", "paramtype":"SteamParamStringArray_t *" }, + { "paramname":"pUserTags", "paramtype":"SteamParamStringArray_t *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageDownloadUGCResult_t", + "methodname": "UGCDownloadToLocation", + "methodname_flat": "SteamAPI_ISteamRemoteStorage_UGCDownloadToLocation", + "params": [ + { "paramname":"hContent", "paramtype":"UGCHandle_t" }, + { "paramname":"pchLocation", "paramtype":"const char *" }, + { "paramname":"unPriority", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + } + ], + "version_string": "STEAMREMOTESTORAGE_INTERFACE_VERSION014" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamUserStats", + "name_flat": "SteamAPI_SteamUserStats_v012" + } + ], + "classname": "ISteamUserStats", + "fields": [], + "methods": [ + { + "callback": "UserStatsReceived_t", + "methodname": "RequestCurrentStats", + "methodname_flat": "SteamAPI_ISteamUserStats_RequestCurrentStats", + "params": [], + "returntype": "bool" + }, + { + "methodname": "GetStat", + "methodname_flat": "SteamAPI_ISteamUserStats_GetStatInt32", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pData", "paramtype":"int32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetStat", + "methodname_flat": "SteamAPI_ISteamUserStats_GetStatFloat", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pData", "paramtype":"float *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetStat", + "methodname_flat": "SteamAPI_ISteamUserStats_SetStatInt32", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"nData", "paramtype":"int32" } + ], + "returntype": "bool" + }, + { + "methodname": "SetStat", + "methodname_flat": "SteamAPI_ISteamUserStats_SetStatFloat", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"fData", "paramtype":"float" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdateAvgRateStat", + "methodname_flat": "SteamAPI_ISteamUserStats_UpdateAvgRateStat", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"flCountThisSession", "paramtype":"float" }, + { "paramname":"dSessionLength", "paramtype":"double" } + ], + "returntype": "bool" + }, + { + "methodname": "GetAchievement", + "methodname_flat": "SteamAPI_ISteamUserStats_GetAchievement", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pbAchieved", "paramtype":"bool *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetAchievement", + "methodname_flat": "SteamAPI_ISteamUserStats_SetAchievement", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "ClearAchievement", + "methodname_flat": "SteamAPI_ISteamUserStats_ClearAchievement", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetAchievementAndUnlockTime", + "methodname_flat": "SteamAPI_ISteamUserStats_GetAchievementAndUnlockTime", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pbAchieved", "paramtype":"bool *" }, + { "paramname":"punUnlockTime", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "StoreStats", + "methodname_flat": "SteamAPI_ISteamUserStats_StoreStats", + "params": [], + "returntype": "bool" + }, + { + "methodname": "GetAchievementIcon", + "methodname_flat": "SteamAPI_ISteamUserStats_GetAchievementIcon", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" } + ], + "returntype": "int" + }, + { + "methodname": "GetAchievementDisplayAttribute", + "methodname_flat": "SteamAPI_ISteamUserStats_GetAchievementDisplayAttribute", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pchKey", "paramtype":"const char *" } + ], + "returntype": "const char *" + }, + { + "methodname": "IndicateAchievementProgress", + "methodname_flat": "SteamAPI_ISteamUserStats_IndicateAchievementProgress", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"nCurProgress", "paramtype":"uint32" }, + { "paramname":"nMaxProgress", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetNumAchievements", + "methodname_flat": "SteamAPI_ISteamUserStats_GetNumAchievements", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetAchievementName", + "methodname_flat": "SteamAPI_ISteamUserStats_GetAchievementName", + "params": [ + { "paramname":"iAchievement", "paramtype":"uint32" } + ], + "returntype": "const char *" + }, + { + "callresult": "UserStatsReceived_t", + "methodname": "RequestUserStats", + "methodname_flat": "SteamAPI_ISteamUserStats_RequestUserStats", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetUserStat", + "methodname_flat": "SteamAPI_ISteamUserStats_GetUserStatInt32", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pData", "paramtype":"int32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetUserStat", + "methodname_flat": "SteamAPI_ISteamUserStats_GetUserStatFloat", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pData", "paramtype":"float *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetUserAchievement", + "methodname_flat": "SteamAPI_ISteamUserStats_GetUserAchievement", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pbAchieved", "paramtype":"bool *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetUserAchievementAndUnlockTime", + "methodname_flat": "SteamAPI_ISteamUserStats_GetUserAchievementAndUnlockTime", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pbAchieved", "paramtype":"bool *" }, + { "paramname":"punUnlockTime", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "ResetAllStats", + "methodname_flat": "SteamAPI_ISteamUserStats_ResetAllStats", + "params": [ + { "paramname":"bAchievementsToo", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "callresult": "LeaderboardFindResult_t", + "methodname": "FindOrCreateLeaderboard", + "methodname_flat": "SteamAPI_ISteamUserStats_FindOrCreateLeaderboard", + "params": [ + { "paramname":"pchLeaderboardName", "paramtype":"const char *" }, + { "paramname":"eLeaderboardSortMethod", "paramtype":"ELeaderboardSortMethod" }, + { "paramname":"eLeaderboardDisplayType", "paramtype":"ELeaderboardDisplayType" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "LeaderboardFindResult_t", + "methodname": "FindLeaderboard", + "methodname_flat": "SteamAPI_ISteamUserStats_FindLeaderboard", + "params": [ + { "paramname":"pchLeaderboardName", "paramtype":"const char *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetLeaderboardName", + "methodname_flat": "SteamAPI_ISteamUserStats_GetLeaderboardName", + "params": [ + { "paramname":"hSteamLeaderboard", "paramtype":"SteamLeaderboard_t" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetLeaderboardEntryCount", + "methodname_flat": "SteamAPI_ISteamUserStats_GetLeaderboardEntryCount", + "params": [ + { "paramname":"hSteamLeaderboard", "paramtype":"SteamLeaderboard_t" } + ], + "returntype": "int" + }, + { + "methodname": "GetLeaderboardSortMethod", + "methodname_flat": "SteamAPI_ISteamUserStats_GetLeaderboardSortMethod", + "params": [ + { "paramname":"hSteamLeaderboard", "paramtype":"SteamLeaderboard_t" } + ], + "returntype": "ELeaderboardSortMethod" + }, + { + "methodname": "GetLeaderboardDisplayType", + "methodname_flat": "SteamAPI_ISteamUserStats_GetLeaderboardDisplayType", + "params": [ + { "paramname":"hSteamLeaderboard", "paramtype":"SteamLeaderboard_t" } + ], + "returntype": "ELeaderboardDisplayType" + }, + { + "callresult": "LeaderboardScoresDownloaded_t", + "methodname": "DownloadLeaderboardEntries", + "methodname_flat": "SteamAPI_ISteamUserStats_DownloadLeaderboardEntries", + "params": [ + { "paramname":"hSteamLeaderboard", "paramtype":"SteamLeaderboard_t" }, + { "paramname":"eLeaderboardDataRequest", "paramtype":"ELeaderboardDataRequest" }, + { "paramname":"nRangeStart", "paramtype":"int" }, + { "paramname":"nRangeEnd", "paramtype":"int" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "LeaderboardScoresDownloaded_t", + "desc": "Downloads leaderboard entries for an arbitrary set of users - ELeaderboardDataRequest is k_ELeaderboardDataRequestUsers", + "methodname": "DownloadLeaderboardEntriesForUsers", + "methodname_flat": "SteamAPI_ISteamUserStats_DownloadLeaderboardEntriesForUsers", + "params": [ + { "paramname":"hSteamLeaderboard", "paramtype":"SteamLeaderboard_t" }, + { + "array_count": "cUsers", + "desc": "Array of users to retrieve", + "paramname": "prgUsers", + "paramtype": "CSteamID *" + }, + { "paramname":"cUsers", "paramtype":"int" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetDownloadedLeaderboardEntry", + "methodname_flat": "SteamAPI_ISteamUserStats_GetDownloadedLeaderboardEntry", + "params": [ + { "paramname":"hSteamLeaderboardEntries", "paramtype":"SteamLeaderboardEntries_t" }, + { "paramname":"index", "paramtype":"int" }, + { "paramname":"pLeaderboardEntry", "paramtype":"LeaderboardEntry_t *" }, + { "paramname":"pDetails", "paramtype":"int32 *" }, + { "paramname":"cDetailsMax", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "callresult": "LeaderboardScoreUploaded_t", + "methodname": "UploadLeaderboardScore", + "methodname_flat": "SteamAPI_ISteamUserStats_UploadLeaderboardScore", + "params": [ + { "paramname":"hSteamLeaderboard", "paramtype":"SteamLeaderboard_t" }, + { "paramname":"eLeaderboardUploadScoreMethod", "paramtype":"ELeaderboardUploadScoreMethod" }, + { "paramname":"nScore", "paramtype":"int32" }, + { "paramname":"pScoreDetails", "paramtype":"const int32 *" }, + { "paramname":"cScoreDetailsCount", "paramtype":"int" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "LeaderboardUGCSet_t", + "methodname": "AttachLeaderboardUGC", + "methodname_flat": "SteamAPI_ISteamUserStats_AttachLeaderboardUGC", + "params": [ + { "paramname":"hSteamLeaderboard", "paramtype":"SteamLeaderboard_t" }, + { "paramname":"hUGC", "paramtype":"UGCHandle_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "NumberOfCurrentPlayers_t", + "methodname": "GetNumberOfCurrentPlayers", + "methodname_flat": "SteamAPI_ISteamUserStats_GetNumberOfCurrentPlayers", + "params": [], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "GlobalAchievementPercentagesReady_t", + "methodname": "RequestGlobalAchievementPercentages", + "methodname_flat": "SteamAPI_ISteamUserStats_RequestGlobalAchievementPercentages", + "params": [], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetMostAchievedAchievementInfo", + "methodname_flat": "SteamAPI_ISteamUserStats_GetMostAchievedAchievementInfo", + "params": [ + { "paramname":"pchName", "paramtype":"char *" }, + { "paramname":"unNameBufLen", "paramtype":"uint32" }, + { "paramname":"pflPercent", "paramtype":"float *" }, + { "paramname":"pbAchieved", "paramtype":"bool *" } + ], + "returntype": "int" + }, + { + "methodname": "GetNextMostAchievedAchievementInfo", + "methodname_flat": "SteamAPI_ISteamUserStats_GetNextMostAchievedAchievementInfo", + "params": [ + { "paramname":"iIteratorPrevious", "paramtype":"int" }, + { "paramname":"pchName", "paramtype":"char *" }, + { "paramname":"unNameBufLen", "paramtype":"uint32" }, + { "paramname":"pflPercent", "paramtype":"float *" }, + { "paramname":"pbAchieved", "paramtype":"bool *" } + ], + "returntype": "int" + }, + { + "methodname": "GetAchievementAchievedPercent", + "methodname_flat": "SteamAPI_ISteamUserStats_GetAchievementAchievedPercent", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pflPercent", "paramtype":"float *" } + ], + "returntype": "bool" + }, + { + "callresult": "GlobalStatsReceived_t", + "methodname": "RequestGlobalStats", + "methodname_flat": "SteamAPI_ISteamUserStats_RequestGlobalStats", + "params": [ + { "paramname":"nHistoryDays", "paramtype":"int" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetGlobalStat", + "methodname_flat": "SteamAPI_ISteamUserStats_GetGlobalStatInt64", + "params": [ + { "paramname":"pchStatName", "paramtype":"const char *" }, + { "paramname":"pData", "paramtype":"int64 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetGlobalStat", + "methodname_flat": "SteamAPI_ISteamUserStats_GetGlobalStatDouble", + "params": [ + { "paramname":"pchStatName", "paramtype":"const char *" }, + { "paramname":"pData", "paramtype":"double *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetGlobalStatHistory", + "methodname_flat": "SteamAPI_ISteamUserStats_GetGlobalStatHistoryInt64", + "params": [ + { "paramname":"pchStatName", "paramtype":"const char *" }, + { + "array_count": "cubData", + "paramname": "pData", + "paramtype": "int64 *" + }, + { "paramname":"cubData", "paramtype":"uint32" } + ], + "returntype": "int32" + }, + { + "methodname": "GetGlobalStatHistory", + "methodname_flat": "SteamAPI_ISteamUserStats_GetGlobalStatHistoryDouble", + "params": [ + { "paramname":"pchStatName", "paramtype":"const char *" }, + { + "array_count": "cubData", + "paramname": "pData", + "paramtype": "double *" + }, + { "paramname":"cubData", "paramtype":"uint32" } + ], + "returntype": "int32" + }, + { + "methodname": "GetAchievementProgressLimits", + "methodname_flat": "SteamAPI_ISteamUserStats_GetAchievementProgressLimitsInt32", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pnMinProgress", "paramtype":"int32 *" }, + { "paramname":"pnMaxProgress", "paramtype":"int32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetAchievementProgressLimits", + "methodname_flat": "SteamAPI_ISteamUserStats_GetAchievementProgressLimitsFloat", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pfMinProgress", "paramtype":"float *" }, + { "paramname":"pfMaxProgress", "paramtype":"float *" } + ], + "returntype": "bool" + } + ], + "version_string": "STEAMUSERSTATS_INTERFACE_VERSION012" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamApps", + "name_flat": "SteamAPI_SteamApps_v008" + }, + { + "kind": "gameserver", + "name": "SteamGameServerApps", + "name_flat": "SteamAPI_SteamGameServerApps_v008" + } + ], + "classname": "ISteamApps", + "fields": [], + "methods": [ + { + "methodname": "BIsSubscribed", + "methodname_flat": "SteamAPI_ISteamApps_BIsSubscribed", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsLowViolence", + "methodname_flat": "SteamAPI_ISteamApps_BIsLowViolence", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsCybercafe", + "methodname_flat": "SteamAPI_ISteamApps_BIsCybercafe", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsVACBanned", + "methodname_flat": "SteamAPI_ISteamApps_BIsVACBanned", + "params": [], + "returntype": "bool" + }, + { + "methodname": "GetCurrentGameLanguage", + "methodname_flat": "SteamAPI_ISteamApps_GetCurrentGameLanguage", + "params": [], + "returntype": "const char *" + }, + { + "methodname": "GetAvailableGameLanguages", + "methodname_flat": "SteamAPI_ISteamApps_GetAvailableGameLanguages", + "params": [], + "returntype": "const char *" + }, + { + "methodname": "BIsSubscribedApp", + "methodname_flat": "SteamAPI_ISteamApps_BIsSubscribedApp", + "params": [ + { "paramname":"appID", "paramtype":"AppId_t" } + ], + "returntype": "bool" + }, + { + "methodname": "BIsDlcInstalled", + "methodname_flat": "SteamAPI_ISteamApps_BIsDlcInstalled", + "params": [ + { "paramname":"appID", "paramtype":"AppId_t" } + ], + "returntype": "bool" + }, + { + "methodname": "GetEarliestPurchaseUnixTime", + "methodname_flat": "SteamAPI_ISteamApps_GetEarliestPurchaseUnixTime", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" } + ], + "returntype": "uint32" + }, + { + "methodname": "BIsSubscribedFromFreeWeekend", + "methodname_flat": "SteamAPI_ISteamApps_BIsSubscribedFromFreeWeekend", + "params": [], + "returntype": "bool" + }, + { + "methodname": "GetDLCCount", + "methodname_flat": "SteamAPI_ISteamApps_GetDLCCount", + "params": [], + "returntype": "int" + }, + { + "methodname": "BGetDLCDataByIndex", + "methodname_flat": "SteamAPI_ISteamApps_BGetDLCDataByIndex", + "params": [ + { "paramname":"iDLC", "paramtype":"int" }, + { "paramname":"pAppID", "paramtype":"AppId_t *" }, + { "paramname":"pbAvailable", "paramtype":"bool *" }, + { "paramname":"pchName", "paramtype":"char *" }, + { "paramname":"cchNameBufferSize", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "InstallDLC", + "methodname_flat": "SteamAPI_ISteamApps_InstallDLC", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" } + ], + "returntype": "void" + }, + { + "methodname": "UninstallDLC", + "methodname_flat": "SteamAPI_ISteamApps_UninstallDLC", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" } + ], + "returntype": "void" + }, + { + "methodname": "RequestAppProofOfPurchaseKey", + "methodname_flat": "SteamAPI_ISteamApps_RequestAppProofOfPurchaseKey", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" } + ], + "returntype": "void" + }, + { + "methodname": "GetCurrentBetaName", + "methodname_flat": "SteamAPI_ISteamApps_GetCurrentBetaName", + "params": [ + { "paramname":"pchName", "paramtype":"char *" }, + { "paramname":"cchNameBufferSize", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "MarkContentCorrupt", + "methodname_flat": "SteamAPI_ISteamApps_MarkContentCorrupt", + "params": [ + { "paramname":"bMissingFilesOnly", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "GetInstalledDepots", + "methodname_flat": "SteamAPI_ISteamApps_GetInstalledDepots", + "params": [ + { "paramname":"appID", "paramtype":"AppId_t" }, + { "paramname":"pvecDepots", "paramtype":"DepotId_t *" }, + { "paramname":"cMaxDepots", "paramtype":"uint32" } + ], + "returntype": "uint32" + }, + { + "methodname": "GetAppInstallDir", + "methodname_flat": "SteamAPI_ISteamApps_GetAppInstallDir", + "params": [ + { "paramname":"appID", "paramtype":"AppId_t" }, + { "paramname":"pchFolder", "paramtype":"char *" }, + { "paramname":"cchFolderBufferSize", "paramtype":"uint32" } + ], + "returntype": "uint32" + }, + { + "methodname": "BIsAppInstalled", + "methodname_flat": "SteamAPI_ISteamApps_BIsAppInstalled", + "params": [ + { "paramname":"appID", "paramtype":"AppId_t" } + ], + "returntype": "bool" + }, + { + "methodname": "GetAppOwner", + "methodname_flat": "SteamAPI_ISteamApps_GetAppOwner", + "params": [], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "GetLaunchQueryParam", + "methodname_flat": "SteamAPI_ISteamApps_GetLaunchQueryParam", + "params": [ + { "paramname":"pchKey", "paramtype":"const char *" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetDlcDownloadProgress", + "methodname_flat": "SteamAPI_ISteamApps_GetDlcDownloadProgress", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" }, + { "paramname":"punBytesDownloaded", "paramtype":"uint64 *" }, + { "paramname":"punBytesTotal", "paramtype":"uint64 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetAppBuildId", + "methodname_flat": "SteamAPI_ISteamApps_GetAppBuildId", + "params": [], + "returntype": "int" + }, + { + "methodname": "RequestAllProofOfPurchaseKeys", + "methodname_flat": "SteamAPI_ISteamApps_RequestAllProofOfPurchaseKeys", + "params": [], + "returntype": "void" + }, + { + "callresult": "FileDetailsResult_t", + "methodname": "GetFileDetails", + "methodname_flat": "SteamAPI_ISteamApps_GetFileDetails", + "params": [ + { "paramname":"pszFileName", "paramtype":"const char *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetLaunchCommandLine", + "methodname_flat": "SteamAPI_ISteamApps_GetLaunchCommandLine", + "params": [ + { "paramname":"pszCommandLine", "paramtype":"char *" }, + { "paramname":"cubCommandLine", "paramtype":"int" } + ], + "returntype": "int" + }, + { + "methodname": "BIsSubscribedFromFamilySharing", + "methodname_flat": "SteamAPI_ISteamApps_BIsSubscribedFromFamilySharing", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsTimedTrial", + "methodname_flat": "SteamAPI_ISteamApps_BIsTimedTrial", + "params": [ + { "paramname":"punSecondsAllowed", "paramtype":"uint32 *" }, + { "paramname":"punSecondsPlayed", "paramtype":"uint32 *" } + ], + "returntype": "bool" + } + ], + "version_string": "STEAMAPPS_INTERFACE_VERSION008" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamNetworking", + "name_flat": "SteamAPI_SteamNetworking_v006" + }, + { + "kind": "gameserver", + "name": "SteamGameServerNetworking", + "name_flat": "SteamAPI_SteamGameServerNetworking_v006" + } + ], + "classname": "ISteamNetworking", + "fields": [], + "methods": [ + { + "methodname": "SendP2PPacket", + "methodname_flat": "SteamAPI_ISteamNetworking_SendP2PPacket", + "params": [ + { "paramname":"steamIDRemote", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pubData", "paramtype":"const void *" }, + { "paramname":"cubData", "paramtype":"uint32" }, + { "paramname":"eP2PSendType", "paramtype":"EP2PSend" }, + { "paramname":"nChannel", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "IsP2PPacketAvailable", + "methodname_flat": "SteamAPI_ISteamNetworking_IsP2PPacketAvailable", + "params": [ + { "paramname":"pcubMsgSize", "paramtype":"uint32 *" }, + { "paramname":"nChannel", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "ReadP2PPacket", + "methodname_flat": "SteamAPI_ISteamNetworking_ReadP2PPacket", + "params": [ + { "paramname":"pubDest", "paramtype":"void *" }, + { "paramname":"cubDest", "paramtype":"uint32" }, + { "paramname":"pcubMsgSize", "paramtype":"uint32 *" }, + { "paramname":"psteamIDRemote", "paramtype":"CSteamID *" }, + { "paramname":"nChannel", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "AcceptP2PSessionWithUser", + "methodname_flat": "SteamAPI_ISteamNetworking_AcceptP2PSessionWithUser", + "params": [ + { "paramname":"steamIDRemote", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "CloseP2PSessionWithUser", + "methodname_flat": "SteamAPI_ISteamNetworking_CloseP2PSessionWithUser", + "params": [ + { "paramname":"steamIDRemote", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "CloseP2PChannelWithUser", + "methodname_flat": "SteamAPI_ISteamNetworking_CloseP2PChannelWithUser", + "params": [ + { "paramname":"steamIDRemote", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"nChannel", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "GetP2PSessionState", + "methodname_flat": "SteamAPI_ISteamNetworking_GetP2PSessionState", + "params": [ + { "paramname":"steamIDRemote", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pConnectionState", "paramtype":"P2PSessionState_t *" } + ], + "returntype": "bool" + }, + { + "methodname": "AllowP2PPacketRelay", + "methodname_flat": "SteamAPI_ISteamNetworking_AllowP2PPacketRelay", + "params": [ + { "paramname":"bAllow", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "CreateListenSocket", + "methodname_flat": "SteamAPI_ISteamNetworking_CreateListenSocket", + "params": [ + { "paramname":"nVirtualP2PPort", "paramtype":"int" }, + { "paramname":"nIP", "paramtype":"SteamIPAddress_t" }, + { "paramname":"nPort", "paramtype":"uint16" }, + { "paramname":"bAllowUseOfPacketRelay", "paramtype":"bool" } + ], + "returntype": "SNetListenSocket_t" + }, + { + "methodname": "CreateP2PConnectionSocket", + "methodname_flat": "SteamAPI_ISteamNetworking_CreateP2PConnectionSocket", + "params": [ + { "paramname":"steamIDTarget", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"nVirtualPort", "paramtype":"int" }, + { "paramname":"nTimeoutSec", "paramtype":"int" }, + { "paramname":"bAllowUseOfPacketRelay", "paramtype":"bool" } + ], + "returntype": "SNetSocket_t" + }, + { + "methodname": "CreateConnectionSocket", + "methodname_flat": "SteamAPI_ISteamNetworking_CreateConnectionSocket", + "params": [ + { "paramname":"nIP", "paramtype":"SteamIPAddress_t" }, + { "paramname":"nPort", "paramtype":"uint16" }, + { "paramname":"nTimeoutSec", "paramtype":"int" } + ], + "returntype": "SNetSocket_t" + }, + { + "methodname": "DestroySocket", + "methodname_flat": "SteamAPI_ISteamNetworking_DestroySocket", + "params": [ + { "paramname":"hSocket", "paramtype":"SNetSocket_t" }, + { "paramname":"bNotifyRemoteEnd", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "DestroyListenSocket", + "methodname_flat": "SteamAPI_ISteamNetworking_DestroyListenSocket", + "params": [ + { "paramname":"hSocket", "paramtype":"SNetListenSocket_t" }, + { "paramname":"bNotifyRemoteEnd", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SendDataOnSocket", + "methodname_flat": "SteamAPI_ISteamNetworking_SendDataOnSocket", + "params": [ + { "paramname":"hSocket", "paramtype":"SNetSocket_t" }, + { "paramname":"pubData", "paramtype":"void *" }, + { "paramname":"cubData", "paramtype":"uint32" }, + { "paramname":"bReliable", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "IsDataAvailableOnSocket", + "methodname_flat": "SteamAPI_ISteamNetworking_IsDataAvailableOnSocket", + "params": [ + { "paramname":"hSocket", "paramtype":"SNetSocket_t" }, + { "paramname":"pcubMsgSize", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "RetrieveDataFromSocket", + "methodname_flat": "SteamAPI_ISteamNetworking_RetrieveDataFromSocket", + "params": [ + { "paramname":"hSocket", "paramtype":"SNetSocket_t" }, + { "paramname":"pubDest", "paramtype":"void *" }, + { "paramname":"cubDest", "paramtype":"uint32" }, + { "paramname":"pcubMsgSize", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "IsDataAvailable", + "methodname_flat": "SteamAPI_ISteamNetworking_IsDataAvailable", + "params": [ + { "paramname":"hListenSocket", "paramtype":"SNetListenSocket_t" }, + { "paramname":"pcubMsgSize", "paramtype":"uint32 *" }, + { "paramname":"phSocket", "paramtype":"SNetSocket_t *" } + ], + "returntype": "bool" + }, + { + "methodname": "RetrieveData", + "methodname_flat": "SteamAPI_ISteamNetworking_RetrieveData", + "params": [ + { "paramname":"hListenSocket", "paramtype":"SNetListenSocket_t" }, + { "paramname":"pubDest", "paramtype":"void *" }, + { "paramname":"cubDest", "paramtype":"uint32" }, + { "paramname":"pcubMsgSize", "paramtype":"uint32 *" }, + { "paramname":"phSocket", "paramtype":"SNetSocket_t *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetSocketInfo", + "methodname_flat": "SteamAPI_ISteamNetworking_GetSocketInfo", + "params": [ + { "paramname":"hSocket", "paramtype":"SNetSocket_t" }, + { "paramname":"pSteamIDRemote", "paramtype":"CSteamID *" }, + { "paramname":"peSocketStatus", "paramtype":"int *" }, + { "paramname":"punIPRemote", "paramtype":"SteamIPAddress_t *" }, + { "paramname":"punPortRemote", "paramtype":"uint16 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetListenSocketInfo", + "methodname_flat": "SteamAPI_ISteamNetworking_GetListenSocketInfo", + "params": [ + { "paramname":"hListenSocket", "paramtype":"SNetListenSocket_t" }, + { "paramname":"pnIP", "paramtype":"SteamIPAddress_t *" }, + { "paramname":"pnPort", "paramtype":"uint16 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetSocketConnectionType", + "methodname_flat": "SteamAPI_ISteamNetworking_GetSocketConnectionType", + "params": [ + { "paramname":"hSocket", "paramtype":"SNetSocket_t" } + ], + "returntype": "ESNetSocketConnectionType" + }, + { + "methodname": "GetMaxPacketSize", + "methodname_flat": "SteamAPI_ISteamNetworking_GetMaxPacketSize", + "params": [ + { "paramname":"hSocket", "paramtype":"SNetSocket_t" } + ], + "returntype": "int" + } + ], + "version_string": "SteamNetworking006" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamScreenshots", + "name_flat": "SteamAPI_SteamScreenshots_v003" + } + ], + "classname": "ISteamScreenshots", + "fields": [], + "methods": [ + { + "methodname": "WriteScreenshot", + "methodname_flat": "SteamAPI_ISteamScreenshots_WriteScreenshot", + "params": [ + { "paramname":"pubRGB", "paramtype":"void *" }, + { "paramname":"cubRGB", "paramtype":"uint32" }, + { "paramname":"nWidth", "paramtype":"int" }, + { "paramname":"nHeight", "paramtype":"int" } + ], + "returntype": "ScreenshotHandle" + }, + { + "methodname": "AddScreenshotToLibrary", + "methodname_flat": "SteamAPI_ISteamScreenshots_AddScreenshotToLibrary", + "params": [ + { "paramname":"pchFilename", "paramtype":"const char *" }, + { "paramname":"pchThumbnailFilename", "paramtype":"const char *" }, + { "paramname":"nWidth", "paramtype":"int" }, + { "paramname":"nHeight", "paramtype":"int" } + ], + "returntype": "ScreenshotHandle" + }, + { + "methodname": "TriggerScreenshot", + "methodname_flat": "SteamAPI_ISteamScreenshots_TriggerScreenshot", + "params": [], + "returntype": "void" + }, + { + "methodname": "HookScreenshots", + "methodname_flat": "SteamAPI_ISteamScreenshots_HookScreenshots", + "params": [ + { "paramname":"bHook", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "SetLocation", + "methodname_flat": "SteamAPI_ISteamScreenshots_SetLocation", + "params": [ + { "paramname":"hScreenshot", "paramtype":"ScreenshotHandle" }, + { "paramname":"pchLocation", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "TagUser", + "methodname_flat": "SteamAPI_ISteamScreenshots_TagUser", + "params": [ + { "paramname":"hScreenshot", "paramtype":"ScreenshotHandle" }, + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "TagPublishedFile", + "methodname_flat": "SteamAPI_ISteamScreenshots_TagPublishedFile", + "params": [ + { "paramname":"hScreenshot", "paramtype":"ScreenshotHandle" }, + { "paramname":"unPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "bool" + }, + { + "methodname": "IsScreenshotsHooked", + "methodname_flat": "SteamAPI_ISteamScreenshots_IsScreenshotsHooked", + "params": [], + "returntype": "bool" + }, + { + "methodname": "AddVRScreenshotToLibrary", + "methodname_flat": "SteamAPI_ISteamScreenshots_AddVRScreenshotToLibrary", + "params": [ + { "paramname":"eType", "paramtype":"EVRScreenshotType" }, + { "paramname":"pchFilename", "paramtype":"const char *" }, + { "paramname":"pchVRFilename", "paramtype":"const char *" } + ], + "returntype": "ScreenshotHandle" + } + ], + "version_string": "STEAMSCREENSHOTS_INTERFACE_VERSION003" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamMusic", + "name_flat": "SteamAPI_SteamMusic_v001" + } + ], + "classname": "ISteamMusic", + "fields": [], + "methods": [ + { + "methodname": "BIsEnabled", + "methodname_flat": "SteamAPI_ISteamMusic_BIsEnabled", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsPlaying", + "methodname_flat": "SteamAPI_ISteamMusic_BIsPlaying", + "params": [], + "returntype": "bool" + }, + { + "methodname": "GetPlaybackStatus", + "methodname_flat": "SteamAPI_ISteamMusic_GetPlaybackStatus", + "params": [], + "returntype": "AudioPlayback_Status" + }, + { + "methodname": "Play", + "methodname_flat": "SteamAPI_ISteamMusic_Play", + "params": [], + "returntype": "void" + }, + { + "methodname": "Pause", + "methodname_flat": "SteamAPI_ISteamMusic_Pause", + "params": [], + "returntype": "void" + }, + { + "methodname": "PlayPrevious", + "methodname_flat": "SteamAPI_ISteamMusic_PlayPrevious", + "params": [], + "returntype": "void" + }, + { + "methodname": "PlayNext", + "methodname_flat": "SteamAPI_ISteamMusic_PlayNext", + "params": [], + "returntype": "void" + }, + { + "methodname": "SetVolume", + "methodname_flat": "SteamAPI_ISteamMusic_SetVolume", + "params": [ + { "paramname":"flVolume", "paramtype":"float" } + ], + "returntype": "void" + }, + { + "methodname": "GetVolume", + "methodname_flat": "SteamAPI_ISteamMusic_GetVolume", + "params": [], + "returntype": "float" + } + ], + "version_string": "STEAMMUSIC_INTERFACE_VERSION001" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamMusicRemote", + "name_flat": "SteamAPI_SteamMusicRemote_v001" + } + ], + "classname": "ISteamMusicRemote", + "fields": [], + "methods": [ + { + "methodname": "RegisterSteamMusicRemote", + "methodname_flat": "SteamAPI_ISteamMusicRemote_RegisterSteamMusicRemote", + "params": [ + { "paramname":"pchName", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "DeregisterSteamMusicRemote", + "methodname_flat": "SteamAPI_ISteamMusicRemote_DeregisterSteamMusicRemote", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsCurrentMusicRemote", + "methodname_flat": "SteamAPI_ISteamMusicRemote_BIsCurrentMusicRemote", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BActivationSuccess", + "methodname_flat": "SteamAPI_ISteamMusicRemote_BActivationSuccess", + "params": [ + { "paramname":"bValue", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetDisplayName", + "methodname_flat": "SteamAPI_ISteamMusicRemote_SetDisplayName", + "params": [ + { "paramname":"pchDisplayName", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetPNGIcon_64x64", + "methodname_flat": "SteamAPI_ISteamMusicRemote_SetPNGIcon_64x64", + "params": [ + { "paramname":"pvBuffer", "paramtype":"void *" }, + { "paramname":"cbBufferLength", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "EnablePlayPrevious", + "methodname_flat": "SteamAPI_ISteamMusicRemote_EnablePlayPrevious", + "params": [ + { "paramname":"bValue", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "EnablePlayNext", + "methodname_flat": "SteamAPI_ISteamMusicRemote_EnablePlayNext", + "params": [ + { "paramname":"bValue", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "EnableShuffled", + "methodname_flat": "SteamAPI_ISteamMusicRemote_EnableShuffled", + "params": [ + { "paramname":"bValue", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "EnableLooped", + "methodname_flat": "SteamAPI_ISteamMusicRemote_EnableLooped", + "params": [ + { "paramname":"bValue", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "EnableQueue", + "methodname_flat": "SteamAPI_ISteamMusicRemote_EnableQueue", + "params": [ + { "paramname":"bValue", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "EnablePlaylists", + "methodname_flat": "SteamAPI_ISteamMusicRemote_EnablePlaylists", + "params": [ + { "paramname":"bValue", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdatePlaybackStatus", + "methodname_flat": "SteamAPI_ISteamMusicRemote_UpdatePlaybackStatus", + "params": [ + { "paramname":"nStatus", "paramtype":"AudioPlayback_Status" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdateShuffled", + "methodname_flat": "SteamAPI_ISteamMusicRemote_UpdateShuffled", + "params": [ + { "paramname":"bValue", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdateLooped", + "methodname_flat": "SteamAPI_ISteamMusicRemote_UpdateLooped", + "params": [ + { "paramname":"bValue", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdateVolume", + "methodname_flat": "SteamAPI_ISteamMusicRemote_UpdateVolume", + "params": [ + { "paramname":"flValue", "paramtype":"float" } + ], + "returntype": "bool" + }, + { + "methodname": "CurrentEntryWillChange", + "methodname_flat": "SteamAPI_ISteamMusicRemote_CurrentEntryWillChange", + "params": [], + "returntype": "bool" + }, + { + "methodname": "CurrentEntryIsAvailable", + "methodname_flat": "SteamAPI_ISteamMusicRemote_CurrentEntryIsAvailable", + "params": [ + { "paramname":"bAvailable", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdateCurrentEntryText", + "methodname_flat": "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryText", + "params": [ + { "paramname":"pchText", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdateCurrentEntryElapsedSeconds", + "methodname_flat": "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds", + "params": [ + { "paramname":"nValue", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdateCurrentEntryCoverArt", + "methodname_flat": "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryCoverArt", + "params": [ + { "paramname":"pvBuffer", "paramtype":"void *" }, + { "paramname":"cbBufferLength", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "CurrentEntryDidChange", + "methodname_flat": "SteamAPI_ISteamMusicRemote_CurrentEntryDidChange", + "params": [], + "returntype": "bool" + }, + { + "methodname": "QueueWillChange", + "methodname_flat": "SteamAPI_ISteamMusicRemote_QueueWillChange", + "params": [], + "returntype": "bool" + }, + { + "methodname": "ResetQueueEntries", + "methodname_flat": "SteamAPI_ISteamMusicRemote_ResetQueueEntries", + "params": [], + "returntype": "bool" + }, + { + "methodname": "SetQueueEntry", + "methodname_flat": "SteamAPI_ISteamMusicRemote_SetQueueEntry", + "params": [ + { "paramname":"nID", "paramtype":"int" }, + { "paramname":"nPosition", "paramtype":"int" }, + { "paramname":"pchEntryText", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetCurrentQueueEntry", + "methodname_flat": "SteamAPI_ISteamMusicRemote_SetCurrentQueueEntry", + "params": [ + { "paramname":"nID", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "QueueDidChange", + "methodname_flat": "SteamAPI_ISteamMusicRemote_QueueDidChange", + "params": [], + "returntype": "bool" + }, + { + "methodname": "PlaylistWillChange", + "methodname_flat": "SteamAPI_ISteamMusicRemote_PlaylistWillChange", + "params": [], + "returntype": "bool" + }, + { + "methodname": "ResetPlaylistEntries", + "methodname_flat": "SteamAPI_ISteamMusicRemote_ResetPlaylistEntries", + "params": [], + "returntype": "bool" + }, + { + "methodname": "SetPlaylistEntry", + "methodname_flat": "SteamAPI_ISteamMusicRemote_SetPlaylistEntry", + "params": [ + { "paramname":"nID", "paramtype":"int" }, + { "paramname":"nPosition", "paramtype":"int" }, + { "paramname":"pchEntryText", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetCurrentPlaylistEntry", + "methodname_flat": "SteamAPI_ISteamMusicRemote_SetCurrentPlaylistEntry", + "params": [ + { "paramname":"nID", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "PlaylistDidChange", + "methodname_flat": "SteamAPI_ISteamMusicRemote_PlaylistDidChange", + "params": [], + "returntype": "bool" + } + ], + "version_string": "STEAMMUSICREMOTE_INTERFACE_VERSION001" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamHTTP", + "name_flat": "SteamAPI_SteamHTTP_v003" + }, + { + "kind": "gameserver", + "name": "SteamGameServerHTTP", + "name_flat": "SteamAPI_SteamGameServerHTTP_v003" + } + ], + "classname": "ISteamHTTP", + "fields": [], + "methods": [ + { + "methodname": "CreateHTTPRequest", + "methodname_flat": "SteamAPI_ISteamHTTP_CreateHTTPRequest", + "params": [ + { "paramname":"eHTTPRequestMethod", "paramtype":"EHTTPMethod" }, + { "paramname":"pchAbsoluteURL", "paramtype":"const char *" } + ], + "returntype": "HTTPRequestHandle" + }, + { + "methodname": "SetHTTPRequestContextValue", + "methodname_flat": "SteamAPI_ISteamHTTP_SetHTTPRequestContextValue", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"ulContextValue", "paramtype":"uint64" } + ], + "returntype": "bool" + }, + { + "methodname": "SetHTTPRequestNetworkActivityTimeout", + "methodname_flat": "SteamAPI_ISteamHTTP_SetHTTPRequestNetworkActivityTimeout", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"unTimeoutSeconds", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "SetHTTPRequestHeaderValue", + "methodname_flat": "SteamAPI_ISteamHTTP_SetHTTPRequestHeaderValue", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pchHeaderName", "paramtype":"const char *" }, + { "paramname":"pchHeaderValue", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetHTTPRequestGetOrPostParameter", + "methodname_flat": "SteamAPI_ISteamHTTP_SetHTTPRequestGetOrPostParameter", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pchParamName", "paramtype":"const char *" }, + { "paramname":"pchParamValue", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SendHTTPRequest", + "methodname_flat": "SteamAPI_ISteamHTTP_SendHTTPRequest", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pCallHandle", "paramtype":"SteamAPICall_t *" } + ], + "returntype": "bool" + }, + { + "methodname": "SendHTTPRequestAndStreamResponse", + "methodname_flat": "SteamAPI_ISteamHTTP_SendHTTPRequestAndStreamResponse", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pCallHandle", "paramtype":"SteamAPICall_t *" } + ], + "returntype": "bool" + }, + { + "methodname": "DeferHTTPRequest", + "methodname_flat": "SteamAPI_ISteamHTTP_DeferHTTPRequest", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" } + ], + "returntype": "bool" + }, + { + "methodname": "PrioritizeHTTPRequest", + "methodname_flat": "SteamAPI_ISteamHTTP_PrioritizeHTTPRequest", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" } + ], + "returntype": "bool" + }, + { + "methodname": "GetHTTPResponseHeaderSize", + "methodname_flat": "SteamAPI_ISteamHTTP_GetHTTPResponseHeaderSize", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pchHeaderName", "paramtype":"const char *" }, + { "paramname":"unResponseHeaderSize", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetHTTPResponseHeaderValue", + "methodname_flat": "SteamAPI_ISteamHTTP_GetHTTPResponseHeaderValue", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pchHeaderName", "paramtype":"const char *" }, + { "paramname":"pHeaderValueBuffer", "paramtype":"uint8 *" }, + { "paramname":"unBufferSize", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetHTTPResponseBodySize", + "methodname_flat": "SteamAPI_ISteamHTTP_GetHTTPResponseBodySize", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"unBodySize", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetHTTPResponseBodyData", + "methodname_flat": "SteamAPI_ISteamHTTP_GetHTTPResponseBodyData", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pBodyDataBuffer", "paramtype":"uint8 *" }, + { "paramname":"unBufferSize", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetHTTPStreamingResponseBodyData", + "methodname_flat": "SteamAPI_ISteamHTTP_GetHTTPStreamingResponseBodyData", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"cOffset", "paramtype":"uint32" }, + { "paramname":"pBodyDataBuffer", "paramtype":"uint8 *" }, + { "paramname":"unBufferSize", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "ReleaseHTTPRequest", + "methodname_flat": "SteamAPI_ISteamHTTP_ReleaseHTTPRequest", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" } + ], + "returntype": "bool" + }, + { + "methodname": "GetHTTPDownloadProgressPct", + "methodname_flat": "SteamAPI_ISteamHTTP_GetHTTPDownloadProgressPct", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pflPercentOut", "paramtype":"float *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetHTTPRequestRawPostBody", + "methodname_flat": "SteamAPI_ISteamHTTP_SetHTTPRequestRawPostBody", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pchContentType", "paramtype":"const char *" }, + { "paramname":"pubBody", "paramtype":"uint8 *" }, + { "paramname":"unBodyLen", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "CreateCookieContainer", + "methodname_flat": "SteamAPI_ISteamHTTP_CreateCookieContainer", + "params": [ + { "paramname":"bAllowResponsesToModify", "paramtype":"bool" } + ], + "returntype": "HTTPCookieContainerHandle" + }, + { + "methodname": "ReleaseCookieContainer", + "methodname_flat": "SteamAPI_ISteamHTTP_ReleaseCookieContainer", + "params": [ + { "paramname":"hCookieContainer", "paramtype":"HTTPCookieContainerHandle" } + ], + "returntype": "bool" + }, + { + "methodname": "SetCookie", + "methodname_flat": "SteamAPI_ISteamHTTP_SetCookie", + "params": [ + { "paramname":"hCookieContainer", "paramtype":"HTTPCookieContainerHandle" }, + { "paramname":"pchHost", "paramtype":"const char *" }, + { "paramname":"pchUrl", "paramtype":"const char *" }, + { "paramname":"pchCookie", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetHTTPRequestCookieContainer", + "methodname_flat": "SteamAPI_ISteamHTTP_SetHTTPRequestCookieContainer", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"hCookieContainer", "paramtype":"HTTPCookieContainerHandle" } + ], + "returntype": "bool" + }, + { + "methodname": "SetHTTPRequestUserAgentInfo", + "methodname_flat": "SteamAPI_ISteamHTTP_SetHTTPRequestUserAgentInfo", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pchUserAgentInfo", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetHTTPRequestRequiresVerifiedCertificate", + "methodname_flat": "SteamAPI_ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"bRequireVerifiedCertificate", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetHTTPRequestAbsoluteTimeoutMS", + "methodname_flat": "SteamAPI_ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"unMilliseconds", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetHTTPRequestWasTimedOut", + "methodname_flat": "SteamAPI_ISteamHTTP_GetHTTPRequestWasTimedOut", + "params": [ + { "paramname":"hRequest", "paramtype":"HTTPRequestHandle" }, + { "paramname":"pbWasTimedOut", "paramtype":"bool *" } + ], + "returntype": "bool" + } + ], + "version_string": "STEAMHTTP_INTERFACE_VERSION003" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamInput", + "name_flat": "SteamAPI_SteamInput_v002" + } + ], + "classname": "ISteamInput", + "fields": [], + "methods": [ + { + "methodname": "Init", + "methodname_flat": "SteamAPI_ISteamInput_Init", + "params": [], + "returntype": "bool" + }, + { + "methodname": "Shutdown", + "methodname_flat": "SteamAPI_ISteamInput_Shutdown", + "params": [], + "returntype": "bool" + }, + { + "methodname": "RunFrame", + "methodname_flat": "SteamAPI_ISteamInput_RunFrame", + "params": [], + "returntype": "void" + }, + { + "methodname": "GetConnectedControllers", + "methodname_flat": "SteamAPI_ISteamInput_GetConnectedControllers", + "params": [ + { + "desc": "Receives list of connected controllers", + "out_array_count": "STEAM_INPUT_MAX_COUNT", + "paramname": "handlesOut", + "paramtype": "InputHandle_t *" + } + ], + "returntype": "int" + }, + { + "methodname": "GetActionSetHandle", + "methodname_flat": "SteamAPI_ISteamInput_GetActionSetHandle", + "params": [ + { "paramname":"pszActionSetName", "paramtype":"const char *" } + ], + "returntype": "InputActionSetHandle_t" + }, + { + "methodname": "ActivateActionSet", + "methodname_flat": "SteamAPI_ISteamInput_ActivateActionSet", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"actionSetHandle", "paramtype":"InputActionSetHandle_t" } + ], + "returntype": "void" + }, + { + "methodname": "GetCurrentActionSet", + "methodname_flat": "SteamAPI_ISteamInput_GetCurrentActionSet", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" } + ], + "returntype": "InputActionSetHandle_t" + }, + { + "methodname": "ActivateActionSetLayer", + "methodname_flat": "SteamAPI_ISteamInput_ActivateActionSetLayer", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"actionSetLayerHandle", "paramtype":"InputActionSetHandle_t" } + ], + "returntype": "void" + }, + { + "methodname": "DeactivateActionSetLayer", + "methodname_flat": "SteamAPI_ISteamInput_DeactivateActionSetLayer", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"actionSetLayerHandle", "paramtype":"InputActionSetHandle_t" } + ], + "returntype": "void" + }, + { + "methodname": "DeactivateAllActionSetLayers", + "methodname_flat": "SteamAPI_ISteamInput_DeactivateAllActionSetLayers", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" } + ], + "returntype": "void" + }, + { + "methodname": "GetActiveActionSetLayers", + "methodname_flat": "SteamAPI_ISteamInput_GetActiveActionSetLayers", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { + "desc": "Receives list of active layers", + "out_array_count": "STEAM_INPUT_MAX_ACTIVE_LAYERS", + "paramname": "handlesOut", + "paramtype": "InputActionSetHandle_t *" + } + ], + "returntype": "int" + }, + { + "methodname": "GetDigitalActionHandle", + "methodname_flat": "SteamAPI_ISteamInput_GetDigitalActionHandle", + "params": [ + { "paramname":"pszActionName", "paramtype":"const char *" } + ], + "returntype": "InputDigitalActionHandle_t" + }, + { + "methodname": "GetDigitalActionData", + "methodname_flat": "SteamAPI_ISteamInput_GetDigitalActionData", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"digitalActionHandle", "paramtype":"InputDigitalActionHandle_t" } + ], + "returntype": "InputDigitalActionData_t" + }, + { + "methodname": "GetDigitalActionOrigins", + "methodname_flat": "SteamAPI_ISteamInput_GetDigitalActionOrigins", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"actionSetHandle", "paramtype":"InputActionSetHandle_t" }, + { "paramname":"digitalActionHandle", "paramtype":"InputDigitalActionHandle_t" }, + { + "desc": "Receives list of action origins", + "out_array_count": "STEAM_INPUT_MAX_ORIGINS", + "paramname": "originsOut", + "paramtype": "EInputActionOrigin *" + } + ], + "returntype": "int" + }, + { + "methodname": "GetAnalogActionHandle", + "methodname_flat": "SteamAPI_ISteamInput_GetAnalogActionHandle", + "params": [ + { "paramname":"pszActionName", "paramtype":"const char *" } + ], + "returntype": "InputAnalogActionHandle_t" + }, + { + "methodname": "GetAnalogActionData", + "methodname_flat": "SteamAPI_ISteamInput_GetAnalogActionData", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"analogActionHandle", "paramtype":"InputAnalogActionHandle_t" } + ], + "returntype": "InputAnalogActionData_t" + }, + { + "methodname": "GetAnalogActionOrigins", + "methodname_flat": "SteamAPI_ISteamInput_GetAnalogActionOrigins", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"actionSetHandle", "paramtype":"InputActionSetHandle_t" }, + { "paramname":"analogActionHandle", "paramtype":"InputAnalogActionHandle_t" }, + { + "desc": "Receives list of action origins", + "out_array_count": "STEAM_INPUT_MAX_ORIGINS", + "paramname": "originsOut", + "paramtype": "EInputActionOrigin *" + } + ], + "returntype": "int" + }, + { + "methodname": "GetGlyphForActionOrigin", + "methodname_flat": "SteamAPI_ISteamInput_GetGlyphForActionOrigin", + "params": [ + { "paramname":"eOrigin", "paramtype":"EInputActionOrigin" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetStringForActionOrigin", + "methodname_flat": "SteamAPI_ISteamInput_GetStringForActionOrigin", + "params": [ + { "paramname":"eOrigin", "paramtype":"EInputActionOrigin" } + ], + "returntype": "const char *" + }, + { + "methodname": "StopAnalogActionMomentum", + "methodname_flat": "SteamAPI_ISteamInput_StopAnalogActionMomentum", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"eAction", "paramtype":"InputAnalogActionHandle_t" } + ], + "returntype": "void" + }, + { + "methodname": "GetMotionData", + "methodname_flat": "SteamAPI_ISteamInput_GetMotionData", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" } + ], + "returntype": "InputMotionData_t" + }, + { + "methodname": "TriggerVibration", + "methodname_flat": "SteamAPI_ISteamInput_TriggerVibration", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"usLeftSpeed", "paramtype":"unsigned short" }, + { "paramname":"usRightSpeed", "paramtype":"unsigned short" } + ], + "returntype": "void" + }, + { + "methodname": "SetLEDColor", + "methodname_flat": "SteamAPI_ISteamInput_SetLEDColor", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"nColorR", "paramtype":"uint8" }, + { "paramname":"nColorG", "paramtype":"uint8" }, + { "paramname":"nColorB", "paramtype":"uint8" }, + { "paramname":"nFlags", "paramtype":"unsigned int" } + ], + "returntype": "void" + }, + { + "methodname": "TriggerHapticPulse", + "methodname_flat": "SteamAPI_ISteamInput_TriggerHapticPulse", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"eTargetPad", "paramtype":"ESteamControllerPad" }, + { "paramname":"usDurationMicroSec", "paramtype":"unsigned short" } + ], + "returntype": "void" + }, + { + "methodname": "TriggerRepeatedHapticPulse", + "methodname_flat": "SteamAPI_ISteamInput_TriggerRepeatedHapticPulse", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"eTargetPad", "paramtype":"ESteamControllerPad" }, + { "paramname":"usDurationMicroSec", "paramtype":"unsigned short" }, + { "paramname":"usOffMicroSec", "paramtype":"unsigned short" }, + { "paramname":"unRepeat", "paramtype":"unsigned short" }, + { "paramname":"nFlags", "paramtype":"unsigned int" } + ], + "returntype": "void" + }, + { + "methodname": "ShowBindingPanel", + "methodname_flat": "SteamAPI_ISteamInput_ShowBindingPanel", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" } + ], + "returntype": "bool" + }, + { + "methodname": "GetInputTypeForHandle", + "methodname_flat": "SteamAPI_ISteamInput_GetInputTypeForHandle", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" } + ], + "returntype": "ESteamInputType" + }, + { + "methodname": "GetControllerForGamepadIndex", + "methodname_flat": "SteamAPI_ISteamInput_GetControllerForGamepadIndex", + "params": [ + { "paramname":"nIndex", "paramtype":"int" } + ], + "returntype": "InputHandle_t" + }, + { + "methodname": "GetGamepadIndexForController", + "methodname_flat": "SteamAPI_ISteamInput_GetGamepadIndexForController", + "params": [ + { "paramname":"ulinputHandle", "paramtype":"InputHandle_t" } + ], + "returntype": "int" + }, + { + "methodname": "GetStringForXboxOrigin", + "methodname_flat": "SteamAPI_ISteamInput_GetStringForXboxOrigin", + "params": [ + { "paramname":"eOrigin", "paramtype":"EXboxOrigin" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetGlyphForXboxOrigin", + "methodname_flat": "SteamAPI_ISteamInput_GetGlyphForXboxOrigin", + "params": [ + { "paramname":"eOrigin", "paramtype":"EXboxOrigin" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetActionOriginFromXboxOrigin", + "methodname_flat": "SteamAPI_ISteamInput_GetActionOriginFromXboxOrigin", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"eOrigin", "paramtype":"EXboxOrigin" } + ], + "returntype": "EInputActionOrigin" + }, + { + "methodname": "TranslateActionOrigin", + "methodname_flat": "SteamAPI_ISteamInput_TranslateActionOrigin", + "params": [ + { "paramname":"eDestinationInputType", "paramtype":"ESteamInputType" }, + { "paramname":"eSourceOrigin", "paramtype":"EInputActionOrigin" } + ], + "returntype": "EInputActionOrigin" + }, + { + "methodname": "GetDeviceBindingRevision", + "methodname_flat": "SteamAPI_ISteamInput_GetDeviceBindingRevision", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" }, + { "paramname":"pMajor", "paramtype":"int *" }, + { "paramname":"pMinor", "paramtype":"int *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetRemotePlaySessionID", + "methodname_flat": "SteamAPI_ISteamInput_GetRemotePlaySessionID", + "params": [ + { "paramname":"inputHandle", "paramtype":"InputHandle_t" } + ], + "returntype": "uint32" + } + ], + "version_string": "SteamInput002" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamController", + "name_flat": "SteamAPI_SteamController_v008" + } + ], + "classname": "ISteamController", + "fields": [], + "methods": [ + { + "methodname": "Init", + "methodname_flat": "SteamAPI_ISteamController_Init", + "params": [], + "returntype": "bool" + }, + { + "methodname": "Shutdown", + "methodname_flat": "SteamAPI_ISteamController_Shutdown", + "params": [], + "returntype": "bool" + }, + { + "methodname": "RunFrame", + "methodname_flat": "SteamAPI_ISteamController_RunFrame", + "params": [], + "returntype": "void" + }, + { + "methodname": "GetConnectedControllers", + "methodname_flat": "SteamAPI_ISteamController_GetConnectedControllers", + "params": [ + { + "desc": "Receives list of connected controllers", + "out_array_count": "STEAM_CONTROLLER_MAX_COUNT", + "paramname": "handlesOut", + "paramtype": "ControllerHandle_t *" + } + ], + "returntype": "int" + }, + { + "methodname": "GetActionSetHandle", + "methodname_flat": "SteamAPI_ISteamController_GetActionSetHandle", + "params": [ + { "paramname":"pszActionSetName", "paramtype":"const char *" } + ], + "returntype": "ControllerActionSetHandle_t" + }, + { + "methodname": "ActivateActionSet", + "methodname_flat": "SteamAPI_ISteamController_ActivateActionSet", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"actionSetHandle", "paramtype":"ControllerActionSetHandle_t" } + ], + "returntype": "void" + }, + { + "methodname": "GetCurrentActionSet", + "methodname_flat": "SteamAPI_ISteamController_GetCurrentActionSet", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" } + ], + "returntype": "ControllerActionSetHandle_t" + }, + { + "methodname": "ActivateActionSetLayer", + "methodname_flat": "SteamAPI_ISteamController_ActivateActionSetLayer", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"actionSetLayerHandle", "paramtype":"ControllerActionSetHandle_t" } + ], + "returntype": "void" + }, + { + "methodname": "DeactivateActionSetLayer", + "methodname_flat": "SteamAPI_ISteamController_DeactivateActionSetLayer", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"actionSetLayerHandle", "paramtype":"ControllerActionSetHandle_t" } + ], + "returntype": "void" + }, + { + "methodname": "DeactivateAllActionSetLayers", + "methodname_flat": "SteamAPI_ISteamController_DeactivateAllActionSetLayers", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" } + ], + "returntype": "void" + }, + { + "methodname": "GetActiveActionSetLayers", + "methodname_flat": "SteamAPI_ISteamController_GetActiveActionSetLayers", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { + "desc": "Receives list of active layers", + "out_array_count": "STEAM_CONTROLLER_MAX_ACTIVE_LAYERS", + "paramname": "handlesOut", + "paramtype": "ControllerActionSetHandle_t *" + } + ], + "returntype": "int" + }, + { + "methodname": "GetDigitalActionHandle", + "methodname_flat": "SteamAPI_ISteamController_GetDigitalActionHandle", + "params": [ + { "paramname":"pszActionName", "paramtype":"const char *" } + ], + "returntype": "ControllerDigitalActionHandle_t" + }, + { + "methodname": "GetDigitalActionData", + "methodname_flat": "SteamAPI_ISteamController_GetDigitalActionData", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"digitalActionHandle", "paramtype":"ControllerDigitalActionHandle_t" } + ], + "returntype": "InputDigitalActionData_t" + }, + { + "methodname": "GetDigitalActionOrigins", + "methodname_flat": "SteamAPI_ISteamController_GetDigitalActionOrigins", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"actionSetHandle", "paramtype":"ControllerActionSetHandle_t" }, + { "paramname":"digitalActionHandle", "paramtype":"ControllerDigitalActionHandle_t" }, + { + "desc": "Receives list of aciton origins", + "out_array_count": "STEAM_CONTROLLER_MAX_ORIGINS", + "paramname": "originsOut", + "paramtype": "EControllerActionOrigin *" + } + ], + "returntype": "int" + }, + { + "methodname": "GetAnalogActionHandle", + "methodname_flat": "SteamAPI_ISteamController_GetAnalogActionHandle", + "params": [ + { "paramname":"pszActionName", "paramtype":"const char *" } + ], + "returntype": "ControllerAnalogActionHandle_t" + }, + { + "methodname": "GetAnalogActionData", + "methodname_flat": "SteamAPI_ISteamController_GetAnalogActionData", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"analogActionHandle", "paramtype":"ControllerAnalogActionHandle_t" } + ], + "returntype": "InputAnalogActionData_t" + }, + { + "methodname": "GetAnalogActionOrigins", + "methodname_flat": "SteamAPI_ISteamController_GetAnalogActionOrigins", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"actionSetHandle", "paramtype":"ControllerActionSetHandle_t" }, + { "paramname":"analogActionHandle", "paramtype":"ControllerAnalogActionHandle_t" }, + { + "desc": "Receives list of action origins", + "out_array_count": "STEAM_CONTROLLER_MAX_ORIGINS", + "paramname": "originsOut", + "paramtype": "EControllerActionOrigin *" + } + ], + "returntype": "int" + }, + { + "methodname": "GetGlyphForActionOrigin", + "methodname_flat": "SteamAPI_ISteamController_GetGlyphForActionOrigin", + "params": [ + { "paramname":"eOrigin", "paramtype":"EControllerActionOrigin" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetStringForActionOrigin", + "methodname_flat": "SteamAPI_ISteamController_GetStringForActionOrigin", + "params": [ + { "paramname":"eOrigin", "paramtype":"EControllerActionOrigin" } + ], + "returntype": "const char *" + }, + { + "methodname": "StopAnalogActionMomentum", + "methodname_flat": "SteamAPI_ISteamController_StopAnalogActionMomentum", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"eAction", "paramtype":"ControllerAnalogActionHandle_t" } + ], + "returntype": "void" + }, + { + "methodname": "GetMotionData", + "methodname_flat": "SteamAPI_ISteamController_GetMotionData", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" } + ], + "returntype": "InputMotionData_t" + }, + { + "methodname": "TriggerHapticPulse", + "methodname_flat": "SteamAPI_ISteamController_TriggerHapticPulse", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"eTargetPad", "paramtype":"ESteamControllerPad" }, + { "paramname":"usDurationMicroSec", "paramtype":"unsigned short" } + ], + "returntype": "void" + }, + { + "methodname": "TriggerRepeatedHapticPulse", + "methodname_flat": "SteamAPI_ISteamController_TriggerRepeatedHapticPulse", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"eTargetPad", "paramtype":"ESteamControllerPad" }, + { "paramname":"usDurationMicroSec", "paramtype":"unsigned short" }, + { "paramname":"usOffMicroSec", "paramtype":"unsigned short" }, + { "paramname":"unRepeat", "paramtype":"unsigned short" }, + { "paramname":"nFlags", "paramtype":"unsigned int" } + ], + "returntype": "void" + }, + { + "methodname": "TriggerVibration", + "methodname_flat": "SteamAPI_ISteamController_TriggerVibration", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"usLeftSpeed", "paramtype":"unsigned short" }, + { "paramname":"usRightSpeed", "paramtype":"unsigned short" } + ], + "returntype": "void" + }, + { + "methodname": "SetLEDColor", + "methodname_flat": "SteamAPI_ISteamController_SetLEDColor", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"nColorR", "paramtype":"uint8" }, + { "paramname":"nColorG", "paramtype":"uint8" }, + { "paramname":"nColorB", "paramtype":"uint8" }, + { "paramname":"nFlags", "paramtype":"unsigned int" } + ], + "returntype": "void" + }, + { + "methodname": "ShowBindingPanel", + "methodname_flat": "SteamAPI_ISteamController_ShowBindingPanel", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" } + ], + "returntype": "bool" + }, + { + "methodname": "GetInputTypeForHandle", + "methodname_flat": "SteamAPI_ISteamController_GetInputTypeForHandle", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" } + ], + "returntype": "ESteamInputType" + }, + { + "methodname": "GetControllerForGamepadIndex", + "methodname_flat": "SteamAPI_ISteamController_GetControllerForGamepadIndex", + "params": [ + { "paramname":"nIndex", "paramtype":"int" } + ], + "returntype": "ControllerHandle_t" + }, + { + "methodname": "GetGamepadIndexForController", + "methodname_flat": "SteamAPI_ISteamController_GetGamepadIndexForController", + "params": [ + { "paramname":"ulControllerHandle", "paramtype":"ControllerHandle_t" } + ], + "returntype": "int" + }, + { + "methodname": "GetStringForXboxOrigin", + "methodname_flat": "SteamAPI_ISteamController_GetStringForXboxOrigin", + "params": [ + { "paramname":"eOrigin", "paramtype":"EXboxOrigin" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetGlyphForXboxOrigin", + "methodname_flat": "SteamAPI_ISteamController_GetGlyphForXboxOrigin", + "params": [ + { "paramname":"eOrigin", "paramtype":"EXboxOrigin" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetActionOriginFromXboxOrigin", + "methodname_flat": "SteamAPI_ISteamController_GetActionOriginFromXboxOrigin", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"eOrigin", "paramtype":"EXboxOrigin" } + ], + "returntype": "EControllerActionOrigin" + }, + { + "methodname": "TranslateActionOrigin", + "methodname_flat": "SteamAPI_ISteamController_TranslateActionOrigin", + "params": [ + { "paramname":"eDestinationInputType", "paramtype":"ESteamInputType" }, + { "paramname":"eSourceOrigin", "paramtype":"EControllerActionOrigin" } + ], + "returntype": "EControllerActionOrigin" + }, + { + "methodname": "GetControllerBindingRevision", + "methodname_flat": "SteamAPI_ISteamController_GetControllerBindingRevision", + "params": [ + { "paramname":"controllerHandle", "paramtype":"ControllerHandle_t" }, + { "paramname":"pMajor", "paramtype":"int *" }, + { "paramname":"pMinor", "paramtype":"int *" } + ], + "returntype": "bool" + } + ], + "version_string": "SteamController008" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamUGC", + "name_flat": "SteamAPI_SteamUGC_v015" + }, + { + "kind": "gameserver", + "name": "SteamGameServerUGC", + "name_flat": "SteamAPI_SteamGameServerUGC_v015" + } + ], + "classname": "ISteamUGC", + "fields": [], + "methods": [ + { + "methodname": "CreateQueryUserUGCRequest", + "methodname_flat": "SteamAPI_ISteamUGC_CreateQueryUserUGCRequest", + "params": [ + { "paramname":"unAccountID", "paramtype":"AccountID_t" }, + { "paramname":"eListType", "paramtype":"EUserUGCList" }, + { "paramname":"eMatchingUGCType", "paramtype":"EUGCMatchingUGCType" }, + { "paramname":"eSortOrder", "paramtype":"EUserUGCListSortOrder" }, + { "paramname":"nCreatorAppID", "paramtype":"AppId_t" }, + { "paramname":"nConsumerAppID", "paramtype":"AppId_t" }, + { "paramname":"unPage", "paramtype":"uint32" } + ], + "returntype": "UGCQueryHandle_t" + }, + { + "methodname": "CreateQueryAllUGCRequest", + "methodname_flat": "SteamAPI_ISteamUGC_CreateQueryAllUGCRequestPage", + "params": [ + { "paramname":"eQueryType", "paramtype":"EUGCQuery" }, + { "paramname":"eMatchingeMatchingUGCTypeFileType", "paramtype":"EUGCMatchingUGCType" }, + { "paramname":"nCreatorAppID", "paramtype":"AppId_t" }, + { "paramname":"nConsumerAppID", "paramtype":"AppId_t" }, + { "paramname":"unPage", "paramtype":"uint32" } + ], + "returntype": "UGCQueryHandle_t" + }, + { + "methodname": "CreateQueryAllUGCRequest", + "methodname_flat": "SteamAPI_ISteamUGC_CreateQueryAllUGCRequestCursor", + "params": [ + { "paramname":"eQueryType", "paramtype":"EUGCQuery" }, + { "paramname":"eMatchingeMatchingUGCTypeFileType", "paramtype":"EUGCMatchingUGCType" }, + { "paramname":"nCreatorAppID", "paramtype":"AppId_t" }, + { "paramname":"nConsumerAppID", "paramtype":"AppId_t" }, + { "paramname":"pchCursor", "paramtype":"const char *" } + ], + "returntype": "UGCQueryHandle_t" + }, + { + "methodname": "CreateQueryUGCDetailsRequest", + "methodname_flat": "SteamAPI_ISteamUGC_CreateQueryUGCDetailsRequest", + "params": [ + { "paramname":"pvecPublishedFileID", "paramtype":"PublishedFileId_t *" }, + { "paramname":"unNumPublishedFileIDs", "paramtype":"uint32" } + ], + "returntype": "UGCQueryHandle_t" + }, + { + "callresult": "SteamUGCQueryCompleted_t", + "methodname": "SendQueryUGCRequest", + "methodname_flat": "SteamAPI_ISteamUGC_SendQueryUGCRequest", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetQueryUGCResult", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCResult", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"pDetails", "paramtype":"SteamUGCDetails_t *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetQueryUGCNumTags", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCNumTags", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" } + ], + "returntype": "uint32" + }, + { + "methodname": "GetQueryUGCTag", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCTag", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"indexTag", "paramtype":"uint32" }, + { + "out_string_count": "cchValueSize", + "paramname": "pchValue", + "paramtype": "char *" + }, + { "paramname":"cchValueSize", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetQueryUGCTagDisplayName", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCTagDisplayName", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"indexTag", "paramtype":"uint32" }, + { + "out_string_count": "cchValueSize", + "paramname": "pchValue", + "paramtype": "char *" + }, + { "paramname":"cchValueSize", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetQueryUGCPreviewURL", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCPreviewURL", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { + "out_string_count": "cchURLSize", + "paramname": "pchURL", + "paramtype": "char *" + }, + { "paramname":"cchURLSize", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetQueryUGCMetadata", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCMetadata", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { + "out_string_count": "cchMetadatasize", + "paramname": "pchMetadata", + "paramtype": "char *" + }, + { "paramname":"cchMetadatasize", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetQueryUGCChildren", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCChildren", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"pvecPublishedFileID", "paramtype":"PublishedFileId_t *" }, + { "paramname":"cMaxEntries", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetQueryUGCStatistic", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCStatistic", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"eStatType", "paramtype":"EItemStatistic" }, + { "paramname":"pStatValue", "paramtype":"uint64 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetQueryUGCNumAdditionalPreviews", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCNumAdditionalPreviews", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" } + ], + "returntype": "uint32" + }, + { + "methodname": "GetQueryUGCAdditionalPreview", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"previewIndex", "paramtype":"uint32" }, + { + "out_string_count": "cchURLSize", + "paramname": "pchURLOrVideoID", + "paramtype": "char *" + }, + { "paramname":"cchURLSize", "paramtype":"uint32" }, + { + "out_string_count": "cchURLSize", + "paramname": "pchOriginalFileName", + "paramtype": "char *" + }, + { "paramname":"cchOriginalFileNameSize", "paramtype":"uint32" }, + { "paramname":"pPreviewType", "paramtype":"EItemPreviewType *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetQueryUGCNumKeyValueTags", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCNumKeyValueTags", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" } + ], + "returntype": "uint32" + }, + { + "methodname": "GetQueryUGCKeyValueTag", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCKeyValueTag", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"keyValueTagIndex", "paramtype":"uint32" }, + { + "out_string_count": "cchKeySize", + "paramname": "pchKey", + "paramtype": "char *" + }, + { "paramname":"cchKeySize", "paramtype":"uint32" }, + { + "out_string_count": "cchValueSize", + "paramname": "pchValue", + "paramtype": "char *" + }, + { "paramname":"cchValueSize", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetQueryUGCKeyValueTag", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryFirstUGCKeyValueTag", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"pchKey", "paramtype":"const char *" }, + { + "out_string_count": "cchValueSize", + "paramname": "pchValue", + "paramtype": "char *" + }, + { "paramname":"cchValueSize", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "ReleaseQueryUGCRequest", + "methodname_flat": "SteamAPI_ISteamUGC_ReleaseQueryUGCRequest", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" } + ], + "returntype": "bool" + }, + { + "methodname": "AddRequiredTag", + "methodname_flat": "SteamAPI_ISteamUGC_AddRequiredTag", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"pTagName", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "AddRequiredTagGroup", + "methodname_flat": "SteamAPI_ISteamUGC_AddRequiredTagGroup", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"pTagGroups", "paramtype":"const SteamParamStringArray_t *" } + ], + "returntype": "bool" + }, + { + "methodname": "AddExcludedTag", + "methodname_flat": "SteamAPI_ISteamUGC_AddExcludedTag", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"pTagName", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetReturnOnlyIDs", + "methodname_flat": "SteamAPI_ISteamUGC_SetReturnOnlyIDs", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"bReturnOnlyIDs", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetReturnKeyValueTags", + "methodname_flat": "SteamAPI_ISteamUGC_SetReturnKeyValueTags", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"bReturnKeyValueTags", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetReturnLongDescription", + "methodname_flat": "SteamAPI_ISteamUGC_SetReturnLongDescription", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"bReturnLongDescription", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetReturnMetadata", + "methodname_flat": "SteamAPI_ISteamUGC_SetReturnMetadata", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"bReturnMetadata", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetReturnChildren", + "methodname_flat": "SteamAPI_ISteamUGC_SetReturnChildren", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"bReturnChildren", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetReturnAdditionalPreviews", + "methodname_flat": "SteamAPI_ISteamUGC_SetReturnAdditionalPreviews", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"bReturnAdditionalPreviews", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetReturnTotalOnly", + "methodname_flat": "SteamAPI_ISteamUGC_SetReturnTotalOnly", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"bReturnTotalOnly", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetReturnPlaytimeStats", + "methodname_flat": "SteamAPI_ISteamUGC_SetReturnPlaytimeStats", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"unDays", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "SetLanguage", + "methodname_flat": "SteamAPI_ISteamUGC_SetLanguage", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"pchLanguage", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetAllowCachedResponse", + "methodname_flat": "SteamAPI_ISteamUGC_SetAllowCachedResponse", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"unMaxAgeSeconds", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "SetCloudFileNameFilter", + "methodname_flat": "SteamAPI_ISteamUGC_SetCloudFileNameFilter", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"pMatchCloudFileName", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetMatchAnyTag", + "methodname_flat": "SteamAPI_ISteamUGC_SetMatchAnyTag", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"bMatchAnyTag", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetSearchText", + "methodname_flat": "SteamAPI_ISteamUGC_SetSearchText", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"pSearchText", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetRankedByTrendDays", + "methodname_flat": "SteamAPI_ISteamUGC_SetRankedByTrendDays", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"unDays", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "AddRequiredKeyValueTag", + "methodname_flat": "SteamAPI_ISteamUGC_AddRequiredKeyValueTag", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"pKey", "paramtype":"const char *" }, + { "paramname":"pValue", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "callresult": "SteamUGCRequestUGCDetailsResult_t", + "methodname": "RequestUGCDetails", + "methodname_flat": "SteamAPI_ISteamUGC_RequestUGCDetails", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" }, + { "paramname":"unMaxAgeSeconds", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "CreateItemResult_t", + "methodname": "CreateItem", + "methodname_flat": "SteamAPI_ISteamUGC_CreateItem", + "params": [ + { "paramname":"nConsumerAppId", "paramtype":"AppId_t" }, + { "paramname":"eFileType", "paramtype":"EWorkshopFileType" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "StartItemUpdate", + "methodname_flat": "SteamAPI_ISteamUGC_StartItemUpdate", + "params": [ + { "paramname":"nConsumerAppId", "paramtype":"AppId_t" }, + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "UGCUpdateHandle_t" + }, + { + "methodname": "SetItemTitle", + "methodname_flat": "SteamAPI_ISteamUGC_SetItemTitle", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pchTitle", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetItemDescription", + "methodname_flat": "SteamAPI_ISteamUGC_SetItemDescription", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pchDescription", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetItemUpdateLanguage", + "methodname_flat": "SteamAPI_ISteamUGC_SetItemUpdateLanguage", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pchLanguage", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetItemMetadata", + "methodname_flat": "SteamAPI_ISteamUGC_SetItemMetadata", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pchMetaData", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetItemVisibility", + "methodname_flat": "SteamAPI_ISteamUGC_SetItemVisibility", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"eVisibility", "paramtype":"ERemoteStoragePublishedFileVisibility" } + ], + "returntype": "bool" + }, + { + "methodname": "SetItemTags", + "methodname_flat": "SteamAPI_ISteamUGC_SetItemTags", + "params": [ + { "paramname":"updateHandle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pTags", "paramtype":"const SteamParamStringArray_t *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetItemContent", + "methodname_flat": "SteamAPI_ISteamUGC_SetItemContent", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pszContentFolder", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetItemPreview", + "methodname_flat": "SteamAPI_ISteamUGC_SetItemPreview", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pszPreviewFile", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetAllowLegacyUpload", + "methodname_flat": "SteamAPI_ISteamUGC_SetAllowLegacyUpload", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"bAllowLegacyUpload", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "RemoveAllItemKeyValueTags", + "methodname_flat": "SteamAPI_ISteamUGC_RemoveAllItemKeyValueTags", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" } + ], + "returntype": "bool" + }, + { + "methodname": "RemoveItemKeyValueTags", + "methodname_flat": "SteamAPI_ISteamUGC_RemoveItemKeyValueTags", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pchKey", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "AddItemKeyValueTag", + "methodname_flat": "SteamAPI_ISteamUGC_AddItemKeyValueTag", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pchKey", "paramtype":"const char *" }, + { "paramname":"pchValue", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "AddItemPreviewFile", + "methodname_flat": "SteamAPI_ISteamUGC_AddItemPreviewFile", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pszPreviewFile", "paramtype":"const char *" }, + { "paramname":"type", "paramtype":"EItemPreviewType" } + ], + "returntype": "bool" + }, + { + "methodname": "AddItemPreviewVideo", + "methodname_flat": "SteamAPI_ISteamUGC_AddItemPreviewVideo", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pszVideoID", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdateItemPreviewFile", + "methodname_flat": "SteamAPI_ISteamUGC_UpdateItemPreviewFile", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"pszPreviewFile", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdateItemPreviewVideo", + "methodname_flat": "SteamAPI_ISteamUGC_UpdateItemPreviewVideo", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"pszVideoID", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "RemoveItemPreview", + "methodname_flat": "SteamAPI_ISteamUGC_RemoveItemPreview", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"index", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "callresult": "SubmitItemUpdateResult_t", + "methodname": "SubmitItemUpdate", + "methodname_flat": "SteamAPI_ISteamUGC_SubmitItemUpdate", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"pchChangeNote", "paramtype":"const char *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetItemUpdateProgress", + "methodname_flat": "SteamAPI_ISteamUGC_GetItemUpdateProgress", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"punBytesProcessed", "paramtype":"uint64 *" }, + { "paramname":"punBytesTotal", "paramtype":"uint64 *" } + ], + "returntype": "EItemUpdateStatus" + }, + { + "callresult": "SetUserItemVoteResult_t", + "methodname": "SetUserItemVote", + "methodname_flat": "SteamAPI_ISteamUGC_SetUserItemVote", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" }, + { "paramname":"bVoteUp", "paramtype":"bool" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "GetUserItemVoteResult_t", + "methodname": "GetUserItemVote", + "methodname_flat": "SteamAPI_ISteamUGC_GetUserItemVote", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "UserFavoriteItemsListChanged_t", + "methodname": "AddItemToFavorites", + "methodname_flat": "SteamAPI_ISteamUGC_AddItemToFavorites", + "params": [ + { "paramname":"nAppId", "paramtype":"AppId_t" }, + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "UserFavoriteItemsListChanged_t", + "methodname": "RemoveItemFromFavorites", + "methodname_flat": "SteamAPI_ISteamUGC_RemoveItemFromFavorites", + "params": [ + { "paramname":"nAppId", "paramtype":"AppId_t" }, + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageSubscribePublishedFileResult_t", + "methodname": "SubscribeItem", + "methodname_flat": "SteamAPI_ISteamUGC_SubscribeItem", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoteStorageUnsubscribePublishedFileResult_t", + "methodname": "UnsubscribeItem", + "methodname_flat": "SteamAPI_ISteamUGC_UnsubscribeItem", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetNumSubscribedItems", + "methodname_flat": "SteamAPI_ISteamUGC_GetNumSubscribedItems", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetSubscribedItems", + "methodname_flat": "SteamAPI_ISteamUGC_GetSubscribedItems", + "params": [ + { "paramname":"pvecPublishedFileID", "paramtype":"PublishedFileId_t *" }, + { "paramname":"cMaxEntries", "paramtype":"uint32" } + ], + "returntype": "uint32" + }, + { + "methodname": "GetItemState", + "methodname_flat": "SteamAPI_ISteamUGC_GetItemState", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "uint32" + }, + { + "methodname": "GetItemInstallInfo", + "methodname_flat": "SteamAPI_ISteamUGC_GetItemInstallInfo", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" }, + { "paramname":"punSizeOnDisk", "paramtype":"uint64 *" }, + { + "out_string_count": "cchFolderSize", + "paramname": "pchFolder", + "paramtype": "char *" + }, + { "paramname":"cchFolderSize", "paramtype":"uint32" }, + { "paramname":"punTimeStamp", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetItemDownloadInfo", + "methodname_flat": "SteamAPI_ISteamUGC_GetItemDownloadInfo", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" }, + { "paramname":"punBytesDownloaded", "paramtype":"uint64 *" }, + { "paramname":"punBytesTotal", "paramtype":"uint64 *" } + ], + "returntype": "bool" + }, + { + "methodname": "DownloadItem", + "methodname_flat": "SteamAPI_ISteamUGC_DownloadItem", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" }, + { "paramname":"bHighPriority", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "BInitWorkshopForGameServer", + "methodname_flat": "SteamAPI_ISteamUGC_BInitWorkshopForGameServer", + "params": [ + { "paramname":"unWorkshopDepotID", "paramtype":"DepotId_t" }, + { "paramname":"pszFolder", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SuspendDownloads", + "methodname_flat": "SteamAPI_ISteamUGC_SuspendDownloads", + "params": [ + { "paramname":"bSuspend", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "callresult": "StartPlaytimeTrackingResult_t", + "methodname": "StartPlaytimeTracking", + "methodname_flat": "SteamAPI_ISteamUGC_StartPlaytimeTracking", + "params": [ + { "paramname":"pvecPublishedFileID", "paramtype":"PublishedFileId_t *" }, + { "paramname":"unNumPublishedFileIDs", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "StopPlaytimeTrackingResult_t", + "methodname": "StopPlaytimeTracking", + "methodname_flat": "SteamAPI_ISteamUGC_StopPlaytimeTracking", + "params": [ + { "paramname":"pvecPublishedFileID", "paramtype":"PublishedFileId_t *" }, + { "paramname":"unNumPublishedFileIDs", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "StopPlaytimeTrackingResult_t", + "methodname": "StopPlaytimeTrackingForAllItems", + "methodname_flat": "SteamAPI_ISteamUGC_StopPlaytimeTrackingForAllItems", + "params": [], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "AddUGCDependencyResult_t", + "methodname": "AddDependency", + "methodname_flat": "SteamAPI_ISteamUGC_AddDependency", + "params": [ + { "paramname":"nParentPublishedFileID", "paramtype":"PublishedFileId_t" }, + { "paramname":"nChildPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoveUGCDependencyResult_t", + "methodname": "RemoveDependency", + "methodname_flat": "SteamAPI_ISteamUGC_RemoveDependency", + "params": [ + { "paramname":"nParentPublishedFileID", "paramtype":"PublishedFileId_t" }, + { "paramname":"nChildPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "AddAppDependencyResult_t", + "methodname": "AddAppDependency", + "methodname_flat": "SteamAPI_ISteamUGC_AddAppDependency", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" }, + { "paramname":"nAppID", "paramtype":"AppId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "RemoveAppDependencyResult_t", + "methodname": "RemoveAppDependency", + "methodname_flat": "SteamAPI_ISteamUGC_RemoveAppDependency", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" }, + { "paramname":"nAppID", "paramtype":"AppId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "GetAppDependenciesResult_t", + "methodname": "GetAppDependencies", + "methodname_flat": "SteamAPI_ISteamUGC_GetAppDependencies", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "DeleteItemResult_t", + "methodname": "DeleteItem", + "methodname_flat": "SteamAPI_ISteamUGC_DeleteItem", + "params": [ + { "paramname":"nPublishedFileID", "paramtype":"PublishedFileId_t" } + ], + "returntype": "SteamAPICall_t" + } + ], + "version_string": "STEAMUGC_INTERFACE_VERSION015" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamAppList", + "name_flat": "SteamAPI_SteamAppList_v001" + } + ], + "classname": "ISteamAppList", + "fields": [], + "methods": [ + { + "methodname": "GetNumInstalledApps", + "methodname_flat": "SteamAPI_ISteamAppList_GetNumInstalledApps", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetInstalledApps", + "methodname_flat": "SteamAPI_ISteamAppList_GetInstalledApps", + "params": [ + { "paramname":"pvecAppID", "paramtype":"AppId_t *" }, + { "paramname":"unMaxAppIDs", "paramtype":"uint32" } + ], + "returntype": "uint32" + }, + { + "methodname": "GetAppName", + "methodname_flat": "SteamAPI_ISteamAppList_GetAppName", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" }, + { + "out_string": "", + "paramname": "pchName", + "paramtype": "char *" + }, + { "paramname":"cchNameMax", "paramtype":"int" } + ], + "returntype": "int" + }, + { + "methodname": "GetAppInstallDir", + "methodname_flat": "SteamAPI_ISteamAppList_GetAppInstallDir", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" }, + { "paramname":"pchDirectory", "paramtype":"char *" }, + { "paramname":"cchNameMax", "paramtype":"int" } + ], + "returntype": "int" + }, + { + "methodname": "GetAppBuildId", + "methodname_flat": "SteamAPI_ISteamAppList_GetAppBuildId", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" } + ], + "returntype": "int" + } + ], + "version_string": "STEAMAPPLIST_INTERFACE_VERSION001" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamHTMLSurface", + "name_flat": "SteamAPI_SteamHTMLSurface_v005" + } + ], + "classname": "ISteamHTMLSurface", + "enums": [ + { + "enumname": "EHTMLMouseButton", + "fqname": "ISteamHTMLSurface::EHTMLMouseButton", + "values": [ + { "name":"eHTMLMouseButton_Left", "value":"0" }, + { "name":"eHTMLMouseButton_Right", "value":"1" }, + { "name":"eHTMLMouseButton_Middle", "value":"2" } + ] + }, + { + "enumname": "EMouseCursor", + "fqname": "ISteamHTMLSurface::EMouseCursor", + "values": [ + { "name":"dc_user", "value":"0" }, + { "name":"dc_none", "value":"1" }, + { "name":"dc_arrow", "value":"2" }, + { "name":"dc_ibeam", "value":"3" }, + { "name":"dc_hourglass", "value":"4" }, + { "name":"dc_waitarrow", "value":"5" }, + { "name":"dc_crosshair", "value":"6" }, + { "name":"dc_up", "value":"7" }, + { "name":"dc_sizenw", "value":"8" }, + { "name":"dc_sizese", "value":"9" }, + { "name":"dc_sizene", "value":"10" }, + { "name":"dc_sizesw", "value":"11" }, + { "name":"dc_sizew", "value":"12" }, + { "name":"dc_sizee", "value":"13" }, + { "name":"dc_sizen", "value":"14" }, + { "name":"dc_sizes", "value":"15" }, + { "name":"dc_sizewe", "value":"16" }, + { "name":"dc_sizens", "value":"17" }, + { "name":"dc_sizeall", "value":"18" }, + { "name":"dc_no", "value":"19" }, + { "name":"dc_hand", "value":"20" }, + { "name":"dc_blank", "value":"21" }, + { "name":"dc_middle_pan", "value":"22" }, + { "name":"dc_north_pan", "value":"23" }, + { "name":"dc_north_east_pan", "value":"24" }, + { "name":"dc_east_pan", "value":"25" }, + { "name":"dc_south_east_pan", "value":"26" }, + { "name":"dc_south_pan", "value":"27" }, + { "name":"dc_south_west_pan", "value":"28" }, + { "name":"dc_west_pan", "value":"29" }, + { "name":"dc_north_west_pan", "value":"30" }, + { "name":"dc_alias", "value":"31" }, + { "name":"dc_cell", "value":"32" }, + { "name":"dc_colresize", "value":"33" }, + { "name":"dc_copycur", "value":"34" }, + { "name":"dc_verticaltext", "value":"35" }, + { "name":"dc_rowresize", "value":"36" }, + { "name":"dc_zoomin", "value":"37" }, + { "name":"dc_zoomout", "value":"38" }, + { "name":"dc_help", "value":"39" }, + { "name":"dc_custom", "value":"40" }, + { "name":"dc_last", "value":"41" } + ] + }, + { + "enumname": "EHTMLKeyModifiers", + "fqname": "ISteamHTMLSurface::EHTMLKeyModifiers", + "values": [ + { "name":"k_eHTMLKeyModifier_None", "value":"0" }, + { "name":"k_eHTMLKeyModifier_AltDown", "value":"1" }, + { "name":"k_eHTMLKeyModifier_CtrlDown", "value":"2" }, + { "name":"k_eHTMLKeyModifier_ShiftDown", "value":"4" } + ] + } + ], + "fields": [], + "methods": [ + { + "methodname": "Init", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_Init", + "params": [], + "returntype": "bool" + }, + { + "methodname": "Shutdown", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_Shutdown", + "params": [], + "returntype": "bool" + }, + { + "callresult": "HTML_BrowserReady_t", + "methodname": "CreateBrowser", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_CreateBrowser", + "params": [ + { "paramname":"pchUserAgent", "paramtype":"const char *" }, + { "paramname":"pchUserCSS", "paramtype":"const char *" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "RemoveBrowser", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_RemoveBrowser", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" } + ], + "returntype": "void" + }, + { + "methodname": "LoadURL", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_LoadURL", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"pchURL", "paramtype":"const char *" }, + { "paramname":"pchPostData", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SetSize", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_SetSize", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"unWidth", "paramtype":"uint32" }, + { "paramname":"unHeight", "paramtype":"uint32" } + ], + "returntype": "void" + }, + { + "methodname": "StopLoad", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_StopLoad", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" } + ], + "returntype": "void" + }, + { + "methodname": "Reload", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_Reload", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" } + ], + "returntype": "void" + }, + { + "methodname": "GoBack", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_GoBack", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" } + ], + "returntype": "void" + }, + { + "methodname": "GoForward", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_GoForward", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" } + ], + "returntype": "void" + }, + { + "methodname": "AddHeader", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_AddHeader", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"pchKey", "paramtype":"const char *" }, + { "paramname":"pchValue", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "ExecuteJavascript", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_ExecuteJavascript", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"pchScript", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "MouseUp", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_MouseUp", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"eMouseButton", "paramtype":"ISteamHTMLSurface::EHTMLMouseButton" } + ], + "returntype": "void" + }, + { + "methodname": "MouseDown", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_MouseDown", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"eMouseButton", "paramtype":"ISteamHTMLSurface::EHTMLMouseButton" } + ], + "returntype": "void" + }, + { + "methodname": "MouseDoubleClick", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_MouseDoubleClick", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"eMouseButton", "paramtype":"ISteamHTMLSurface::EHTMLMouseButton" } + ], + "returntype": "void" + }, + { + "methodname": "MouseMove", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_MouseMove", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"x", "paramtype":"int" }, + { "paramname":"y", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "MouseWheel", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_MouseWheel", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"nDelta", "paramtype":"int32" } + ], + "returntype": "void" + }, + { + "methodname": "KeyDown", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_KeyDown", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"nNativeKeyCode", "paramtype":"uint32" }, + { "paramname":"eHTMLKeyModifiers", "paramtype":"ISteamHTMLSurface::EHTMLKeyModifiers" }, + { "paramname":"bIsSystemKey", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "KeyUp", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_KeyUp", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"nNativeKeyCode", "paramtype":"uint32" }, + { "paramname":"eHTMLKeyModifiers", "paramtype":"ISteamHTMLSurface::EHTMLKeyModifiers" } + ], + "returntype": "void" + }, + { + "methodname": "KeyChar", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_KeyChar", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"cUnicodeChar", "paramtype":"uint32" }, + { "paramname":"eHTMLKeyModifiers", "paramtype":"ISteamHTMLSurface::EHTMLKeyModifiers" } + ], + "returntype": "void" + }, + { + "methodname": "SetHorizontalScroll", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_SetHorizontalScroll", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"nAbsolutePixelScroll", "paramtype":"uint32" } + ], + "returntype": "void" + }, + { + "methodname": "SetVerticalScroll", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_SetVerticalScroll", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"nAbsolutePixelScroll", "paramtype":"uint32" } + ], + "returntype": "void" + }, + { + "methodname": "SetKeyFocus", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_SetKeyFocus", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"bHasKeyFocus", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "ViewSource", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_ViewSource", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" } + ], + "returntype": "void" + }, + { + "methodname": "CopyToClipboard", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_CopyToClipboard", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" } + ], + "returntype": "void" + }, + { + "methodname": "PasteFromClipboard", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_PasteFromClipboard", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" } + ], + "returntype": "void" + }, + { + "methodname": "Find", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_Find", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"pchSearchStr", "paramtype":"const char *" }, + { "paramname":"bCurrentlyInFind", "paramtype":"bool" }, + { "paramname":"bReverse", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "StopFind", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_StopFind", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" } + ], + "returntype": "void" + }, + { + "methodname": "GetLinkAtPosition", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_GetLinkAtPosition", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"x", "paramtype":"int" }, + { "paramname":"y", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "SetCookie", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_SetCookie", + "params": [ + { "paramname":"pchHostname", "paramtype":"const char *" }, + { "paramname":"pchKey", "paramtype":"const char *" }, + { "paramname":"pchValue", "paramtype":"const char *" }, + { "paramname":"pchPath", "paramtype":"const char *" }, + { "paramname":"nExpires", "paramtype":"RTime32" }, + { "paramname":"bSecure", "paramtype":"bool" }, + { "paramname":"bHTTPOnly", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "SetPageScaleFactor", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_SetPageScaleFactor", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"flZoom", "paramtype":"float" }, + { "paramname":"nPointX", "paramtype":"int" }, + { "paramname":"nPointY", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "SetBackgroundMode", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_SetBackgroundMode", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"bBackgroundMode", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "SetDPIScalingFactor", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_SetDPIScalingFactor", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"flDPIScaling", "paramtype":"float" } + ], + "returntype": "void" + }, + { + "methodname": "OpenDeveloperTools", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_OpenDeveloperTools", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" } + ], + "returntype": "void" + }, + { + "methodname": "AllowStartRequest", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_AllowStartRequest", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"bAllowed", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "JSDialogResponse", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_JSDialogResponse", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"bResult", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "ignore": null, + "methodname": "FileLoadDialogResponse", + "methodname_flat": "SteamAPI_ISteamHTMLSurface_FileLoadDialogResponse", + "params": [ + { "paramname":"unBrowserHandle", "paramtype":"HHTMLBrowser" }, + { "paramname":"pchSelectedFiles", "paramtype":"const char **" } + ], + "returntype": "void" + } + ], + "version_string": "STEAMHTMLSURFACE_INTERFACE_VERSION_005" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamInventory", + "name_flat": "SteamAPI_SteamInventory_v003" + }, + { + "kind": "gameserver", + "name": "SteamGameServerInventory", + "name_flat": "SteamAPI_SteamGameServerInventory_v003" + } + ], + "classname": "ISteamInventory", + "fields": [], + "methods": [ + { + "desc": "Find out the status of an asynchronous inventory result handle.", + "methodname": "GetResultStatus", + "methodname_flat": "SteamAPI_ISteamInventory_GetResultStatus", + "params": [ + { "paramname":"resultHandle", "paramtype":"SteamInventoryResult_t" } + ], + "returntype": "EResult" + }, + { + "desc": "Copies the contents of a result set into a flat array. The specific contents of the result set depend on which query which was used.", + "methodname": "GetResultItems", + "methodname_flat": "SteamAPI_ISteamInventory_GetResultItems", + "params": [ + { "paramname":"resultHandle", "paramtype":"SteamInventoryResult_t" }, + { + "desc": "Output array", + "out_array_count": "punOutItemsArraySize", + "paramname": "pOutItemsArray", + "paramtype": "SteamItemDetails_t *" + }, + { "paramname":"punOutItemsArraySize", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetResultItemProperty", + "methodname_flat": "SteamAPI_ISteamInventory_GetResultItemProperty", + "params": [ + { "paramname":"resultHandle", "paramtype":"SteamInventoryResult_t" }, + { "paramname":"unItemIndex", "paramtype":"uint32" }, + { "paramname":"pchPropertyName", "paramtype":"const char *" }, + { + "out_string_count": "punValueBufferSizeOut", + "paramname": "pchValueBuffer", + "paramtype": "char *" + }, + { "paramname":"punValueBufferSizeOut", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "desc": "Returns the server time at which the result was generated. Compare against the value of IClientUtils::GetServerRealTime() to determine age.", + "methodname": "GetResultTimestamp", + "methodname_flat": "SteamAPI_ISteamInventory_GetResultTimestamp", + "params": [ + { "paramname":"resultHandle", "paramtype":"SteamInventoryResult_t" } + ], + "returntype": "uint32" + }, + { + "desc": "Returns true if the result belongs to the target steam ID or false if the result does not. This is important when using DeserializeResult to verify that a remote player is not pretending to have a different users inventory.", + "methodname": "CheckResultSteamID", + "methodname_flat": "SteamAPI_ISteamInventory_CheckResultSteamID", + "params": [ + { "paramname":"resultHandle", "paramtype":"SteamInventoryResult_t" }, + { "paramname":"steamIDExpected", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "desc": "Destroys a result handle and frees all associated memory.", + "methodname": "DestroyResult", + "methodname_flat": "SteamAPI_ISteamInventory_DestroyResult", + "params": [ + { "paramname":"resultHandle", "paramtype":"SteamInventoryResult_t" } + ], + "returntype": "void" + }, + { + "desc": "Captures the entire state of the current users Steam inventory.", + "methodname": "GetAllItems", + "methodname_flat": "SteamAPI_ISteamInventory_GetAllItems", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" } + ], + "returntype": "bool" + }, + { + "desc": "Captures the state of a subset of the current users Steam inventory identified by an array of item instance IDs.", + "methodname": "GetItemsByID", + "methodname_flat": "SteamAPI_ISteamInventory_GetItemsByID", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { + "array_count": "unCountInstanceIDs", + "paramname": "pInstanceIDs", + "paramtype": "const SteamItemInstanceID_t *" + }, + { "paramname":"unCountInstanceIDs", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "SerializeResult", + "methodname_flat": "SteamAPI_ISteamInventory_SerializeResult", + "params": [ + { "paramname":"resultHandle", "paramtype":"SteamInventoryResult_t" }, + { + "out_buffer_count": "punOutBufferSize", + "paramname": "pOutBuffer", + "paramtype": "void *" + }, + { "paramname":"punOutBufferSize", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "DeserializeResult", + "methodname_flat": "SteamAPI_ISteamInventory_DeserializeResult", + "params": [ + { "paramname":"pOutResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { + "buffer_count": "punOutBufferSize", + "paramname": "pBuffer", + "paramtype": "const void *" + }, + { "paramname":"unBufferSize", "paramtype":"uint32" }, + { "paramname":"bRESERVED_MUST_BE_FALSE", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "GenerateItems", + "methodname_flat": "SteamAPI_ISteamInventory_GenerateItems", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { + "array_count": "unArrayLength", + "paramname": "pArrayItemDefs", + "paramtype": "const SteamItemDef_t *" + }, + { + "array_count": "unArrayLength", + "paramname": "punArrayQuantity", + "paramtype": "const uint32 *" + }, + { "paramname":"unArrayLength", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "desc": "GrantPromoItems() checks the list of promotional items for which the user may be eligible and grants the items (one time only).", + "methodname": "GrantPromoItems", + "methodname_flat": "SteamAPI_ISteamInventory_GrantPromoItems", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" } + ], + "returntype": "bool" + }, + { + "methodname": "AddPromoItem", + "methodname_flat": "SteamAPI_ISteamInventory_AddPromoItem", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { "paramname":"itemDef", "paramtype":"SteamItemDef_t" } + ], + "returntype": "bool" + }, + { + "methodname": "AddPromoItems", + "methodname_flat": "SteamAPI_ISteamInventory_AddPromoItems", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { + "array_count": "unArrayLength", + "paramname": "pArrayItemDefs", + "paramtype": "const SteamItemDef_t *" + }, + { "paramname":"unArrayLength", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "desc": "ConsumeItem() removes items from the inventory permanently.", + "methodname": "ConsumeItem", + "methodname_flat": "SteamAPI_ISteamInventory_ConsumeItem", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { "paramname":"itemConsume", "paramtype":"SteamItemInstanceID_t" }, + { "paramname":"unQuantity", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "ExchangeItems", + "methodname_flat": "SteamAPI_ISteamInventory_ExchangeItems", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { + "array_count": "unArrayGenerateLength", + "paramname": "pArrayGenerate", + "paramtype": "const SteamItemDef_t *" + }, + { + "array_count": "unArrayGenerateLength", + "paramname": "punArrayGenerateQuantity", + "paramtype": "const uint32 *" + }, + { "paramname":"unArrayGenerateLength", "paramtype":"uint32" }, + { + "array_count": "unArrayDestroyLength", + "paramname": "pArrayDestroy", + "paramtype": "const SteamItemInstanceID_t *" + }, + { + "array_count": "unArrayDestroyLength", + "paramname": "punArrayDestroyQuantity", + "paramtype": "const uint32 *" + }, + { "paramname":"unArrayDestroyLength", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "TransferItemQuantity", + "methodname_flat": "SteamAPI_ISteamInventory_TransferItemQuantity", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { "paramname":"itemIdSource", "paramtype":"SteamItemInstanceID_t" }, + { "paramname":"unQuantity", "paramtype":"uint32" }, + { "paramname":"itemIdDest", "paramtype":"SteamItemInstanceID_t" } + ], + "returntype": "bool" + }, + { + "desc": "Deprecated method. Playtime accounting is performed on the Steam servers.", + "methodname": "SendItemDropHeartbeat", + "methodname_flat": "SteamAPI_ISteamInventory_SendItemDropHeartbeat", + "params": [], + "returntype": "void" + }, + { + "desc": "Playtime credit must be consumed and turned into item drops by your game.", + "methodname": "TriggerItemDrop", + "methodname_flat": "SteamAPI_ISteamInventory_TriggerItemDrop", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { "paramname":"dropListDefinition", "paramtype":"SteamItemDef_t" } + ], + "returntype": "bool" + }, + { + "methodname": "TradeItems", + "methodname_flat": "SteamAPI_ISteamInventory_TradeItems", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { "paramname":"steamIDTradePartner", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { + "array_count": "nArrayGiveLength", + "paramname": "pArrayGive", + "paramtype": "const SteamItemInstanceID_t *" + }, + { + "array_count": "nArrayGiveLength", + "paramname": "pArrayGiveQuantity", + "paramtype": "const uint32 *" + }, + { "paramname":"nArrayGiveLength", "paramtype":"uint32" }, + { + "array_count": "nArrayGetLength", + "paramname": "pArrayGet", + "paramtype": "const SteamItemInstanceID_t *" + }, + { + "array_count": "nArrayGetLength", + "paramname": "pArrayGetQuantity", + "paramtype": "const uint32 *" + }, + { "paramname":"nArrayGetLength", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "desc": "LoadItemDefinitions triggers the automatic load and refresh of item definitions.", + "methodname": "LoadItemDefinitions", + "methodname_flat": "SteamAPI_ISteamInventory_LoadItemDefinitions", + "params": [], + "returntype": "bool" + }, + { + "methodname": "GetItemDefinitionIDs", + "methodname_flat": "SteamAPI_ISteamInventory_GetItemDefinitionIDs", + "params": [ + { + "desc": "List of item definition IDs", + "out_array_count": "punItemDefIDsArraySize", + "paramname": "pItemDefIDs", + "paramtype": "SteamItemDef_t *" + }, + { + "desc": "Size of array is passed in and actual size used is returned in this param", + "paramname": "punItemDefIDsArraySize", + "paramtype": "uint32 *" + } + ], + "returntype": "bool" + }, + { + "methodname": "GetItemDefinitionProperty", + "methodname_flat": "SteamAPI_ISteamInventory_GetItemDefinitionProperty", + "params": [ + { "paramname":"iDefinition", "paramtype":"SteamItemDef_t" }, + { "paramname":"pchPropertyName", "paramtype":"const char *" }, + { + "out_string_count": "punValueBufferSizeOut", + "paramname": "pchValueBuffer", + "paramtype": "char *" + }, + { "paramname":"punValueBufferSizeOut", "paramtype":"uint32 *" } + ], + "returntype": "bool" + }, + { + "callresult": "SteamInventoryEligiblePromoItemDefIDs_t", + "methodname": "RequestEligiblePromoItemDefinitionsIDs", + "methodname_flat": "SteamAPI_ISteamInventory_RequestEligiblePromoItemDefinitionsIDs", + "params": [ + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetEligiblePromoItemDefinitionIDs", + "methodname_flat": "SteamAPI_ISteamInventory_GetEligiblePromoItemDefinitionIDs", + "params": [ + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { + "desc": "List of item definition IDs", + "out_array_count": "punItemDefIDsArraySize", + "paramname": "pItemDefIDs", + "paramtype": "SteamItemDef_t *" + }, + { + "desc": "Size of array is passed in and actual size used is returned in this param", + "paramname": "punItemDefIDsArraySize", + "paramtype": "uint32 *" + } + ], + "returntype": "bool" + }, + { + "callresult": "SteamInventoryStartPurchaseResult_t", + "methodname": "StartPurchase", + "methodname_flat": "SteamAPI_ISteamInventory_StartPurchase", + "params": [ + { + "array_count": "unArrayLength", + "paramname": "pArrayItemDefs", + "paramtype": "const SteamItemDef_t *" + }, + { + "array_count": "unArrayLength", + "paramname": "punArrayQuantity", + "paramtype": "const uint32 *" + }, + { "paramname":"unArrayLength", "paramtype":"uint32" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "SteamInventoryRequestPricesResult_t", + "methodname": "RequestPrices", + "methodname_flat": "SteamAPI_ISteamInventory_RequestPrices", + "params": [], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetNumItemsWithPrices", + "methodname_flat": "SteamAPI_ISteamInventory_GetNumItemsWithPrices", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetItemsWithPrices", + "methodname_flat": "SteamAPI_ISteamInventory_GetItemsWithPrices", + "params": [ + { + "array_count": "unArrayLength", + "desc": "Items with prices", + "out_array_count": "pArrayItemDefs", + "paramname": "pArrayItemDefs", + "paramtype": "SteamItemDef_t *" + }, + { + "array_count": "unArrayLength", + "desc": "List of prices for the given item defs", + "out_array_count": "pPrices", + "paramname": "pCurrentPrices", + "paramtype": "uint64 *" + }, + { + "array_count": "unArrayLength", + "desc": "List of prices for the given item defs", + "out_array_count": "pPrices", + "paramname": "pBasePrices", + "paramtype": "uint64 *" + }, + { "paramname":"unArrayLength", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetItemPrice", + "methodname_flat": "SteamAPI_ISteamInventory_GetItemPrice", + "params": [ + { "paramname":"iDefinition", "paramtype":"SteamItemDef_t" }, + { "paramname":"pCurrentPrice", "paramtype":"uint64 *" }, + { "paramname":"pBasePrice", "paramtype":"uint64 *" } + ], + "returntype": "bool" + }, + { + "methodname": "StartUpdateProperties", + "methodname_flat": "SteamAPI_ISteamInventory_StartUpdateProperties", + "params": [], + "returntype": "SteamInventoryUpdateHandle_t" + }, + { + "methodname": "RemoveProperty", + "methodname_flat": "SteamAPI_ISteamInventory_RemoveProperty", + "params": [ + { "paramname":"handle", "paramtype":"SteamInventoryUpdateHandle_t" }, + { "paramname":"nItemID", "paramtype":"SteamItemInstanceID_t" }, + { "paramname":"pchPropertyName", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetProperty", + "methodname_flat": "SteamAPI_ISteamInventory_SetPropertyString", + "params": [ + { "paramname":"handle", "paramtype":"SteamInventoryUpdateHandle_t" }, + { "paramname":"nItemID", "paramtype":"SteamItemInstanceID_t" }, + { "paramname":"pchPropertyName", "paramtype":"const char *" }, + { "paramname":"pchPropertyValue", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetProperty", + "methodname_flat": "SteamAPI_ISteamInventory_SetPropertyBool", + "params": [ + { "paramname":"handle", "paramtype":"SteamInventoryUpdateHandle_t" }, + { "paramname":"nItemID", "paramtype":"SteamItemInstanceID_t" }, + { "paramname":"pchPropertyName", "paramtype":"const char *" }, + { "paramname":"bValue", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "SetProperty", + "methodname_flat": "SteamAPI_ISteamInventory_SetPropertyInt64", + "params": [ + { "paramname":"handle", "paramtype":"SteamInventoryUpdateHandle_t" }, + { "paramname":"nItemID", "paramtype":"SteamItemInstanceID_t" }, + { "paramname":"pchPropertyName", "paramtype":"const char *" }, + { "paramname":"nValue", "paramtype":"int64" } + ], + "returntype": "bool" + }, + { + "methodname": "SetProperty", + "methodname_flat": "SteamAPI_ISteamInventory_SetPropertyFloat", + "params": [ + { "paramname":"handle", "paramtype":"SteamInventoryUpdateHandle_t" }, + { "paramname":"nItemID", "paramtype":"SteamItemInstanceID_t" }, + { "paramname":"pchPropertyName", "paramtype":"const char *" }, + { "paramname":"flValue", "paramtype":"float" } + ], + "returntype": "bool" + }, + { + "methodname": "SubmitUpdateProperties", + "methodname_flat": "SteamAPI_ISteamInventory_SubmitUpdateProperties", + "params": [ + { "paramname":"handle", "paramtype":"SteamInventoryUpdateHandle_t" }, + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" } + ], + "returntype": "bool" + }, + { + "desc": "Look up the given token and return a pseudo-Inventory item.", + "methodname": "InspectItem", + "methodname_flat": "SteamAPI_ISteamInventory_InspectItem", + "params": [ + { "paramname":"pResultHandle", "paramtype":"SteamInventoryResult_t *" }, + { "paramname":"pchItemToken", "paramtype":"const char *" } + ], + "returntype": "bool" + } + ], + "version_string": "STEAMINVENTORY_INTERFACE_V003" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamVideo", + "name_flat": "SteamAPI_SteamVideo_v002" + } + ], + "classname": "ISteamVideo", + "fields": [], + "methods": [ + { + "methodname": "GetVideoURL", + "methodname_flat": "SteamAPI_ISteamVideo_GetVideoURL", + "params": [ + { "paramname":"unVideoAppID", "paramtype":"AppId_t" } + ], + "returntype": "void" + }, + { + "methodname": "IsBroadcasting", + "methodname_flat": "SteamAPI_ISteamVideo_IsBroadcasting", + "params": [ + { "paramname":"pnNumViewers", "paramtype":"int *" } + ], + "returntype": "bool" + }, + { + "callback": "GetOPFSettingsResult_t", + "methodname": "GetOPFSettings", + "methodname_flat": "SteamAPI_ISteamVideo_GetOPFSettings", + "params": [ + { "paramname":"unVideoAppID", "paramtype":"AppId_t" } + ], + "returntype": "void" + }, + { + "methodname": "GetOPFStringForApp", + "methodname_flat": "SteamAPI_ISteamVideo_GetOPFStringForApp", + "params": [ + { "paramname":"unVideoAppID", "paramtype":"AppId_t" }, + { "paramname":"pchBuffer", "paramtype":"char *" }, + { "paramname":"pnBufferSize", "paramtype":"int32 *" } + ], + "returntype": "bool" + } + ], + "version_string": "STEAMVIDEO_INTERFACE_V002" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamParentalSettings", + "name_flat": "SteamAPI_SteamParentalSettings_v001" + } + ], + "classname": "ISteamParentalSettings", + "fields": [], + "methods": [ + { + "methodname": "BIsParentalLockEnabled", + "methodname_flat": "SteamAPI_ISteamParentalSettings_BIsParentalLockEnabled", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsParentalLockLocked", + "methodname_flat": "SteamAPI_ISteamParentalSettings_BIsParentalLockLocked", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BIsAppBlocked", + "methodname_flat": "SteamAPI_ISteamParentalSettings_BIsAppBlocked", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" } + ], + "returntype": "bool" + }, + { + "methodname": "BIsAppInBlockList", + "methodname_flat": "SteamAPI_ISteamParentalSettings_BIsAppInBlockList", + "params": [ + { "paramname":"nAppID", "paramtype":"AppId_t" } + ], + "returntype": "bool" + }, + { + "methodname": "BIsFeatureBlocked", + "methodname_flat": "SteamAPI_ISteamParentalSettings_BIsFeatureBlocked", + "params": [ + { "paramname":"eFeature", "paramtype":"EParentalFeature" } + ], + "returntype": "bool" + }, + { + "methodname": "BIsFeatureInBlockList", + "methodname_flat": "SteamAPI_ISteamParentalSettings_BIsFeatureInBlockList", + "params": [ + { "paramname":"eFeature", "paramtype":"EParentalFeature" } + ], + "returntype": "bool" + } + ], + "version_string": "STEAMPARENTALSETTINGS_INTERFACE_VERSION001" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamRemotePlay", + "name_flat": "SteamAPI_SteamRemotePlay_v001" + } + ], + "classname": "ISteamRemotePlay", + "fields": [], + "methods": [ + { + "methodname": "GetSessionCount", + "methodname_flat": "SteamAPI_ISteamRemotePlay_GetSessionCount", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "GetSessionID", + "methodname_flat": "SteamAPI_ISteamRemotePlay_GetSessionID", + "params": [ + { "paramname":"iSessionIndex", "paramtype":"int" } + ], + "returntype": "RemotePlaySessionID_t" + }, + { + "methodname": "GetSessionSteamID", + "methodname_flat": "SteamAPI_ISteamRemotePlay_GetSessionSteamID", + "params": [ + { "paramname":"unSessionID", "paramtype":"RemotePlaySessionID_t" } + ], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "GetSessionClientName", + "methodname_flat": "SteamAPI_ISteamRemotePlay_GetSessionClientName", + "params": [ + { "paramname":"unSessionID", "paramtype":"RemotePlaySessionID_t" } + ], + "returntype": "const char *" + }, + { + "methodname": "GetSessionClientFormFactor", + "methodname_flat": "SteamAPI_ISteamRemotePlay_GetSessionClientFormFactor", + "params": [ + { "paramname":"unSessionID", "paramtype":"RemotePlaySessionID_t" } + ], + "returntype": "ESteamDeviceFormFactor" + }, + { + "methodname": "BGetSessionClientResolution", + "methodname_flat": "SteamAPI_ISteamRemotePlay_BGetSessionClientResolution", + "params": [ + { "paramname":"unSessionID", "paramtype":"RemotePlaySessionID_t" }, + { "paramname":"pnResolutionX", "paramtype":"int *" }, + { "paramname":"pnResolutionY", "paramtype":"int *" } + ], + "returntype": "bool" + }, + { + "methodname": "BSendRemotePlayTogetherInvite", + "methodname_flat": "SteamAPI_ISteamRemotePlay_BSendRemotePlayTogetherInvite", + "params": [ + { "paramname":"steamIDFriend", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + } + ], + "version_string": "STEAMREMOTEPLAY_INTERFACE_VERSION001" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamNetworkingMessages_SteamAPI", + "name_flat": "SteamAPI_SteamNetworkingMessages_SteamAPI_v002" + }, + { + "kind": "gameserver", + "name": "SteamGameServerNetworkingMessages_SteamAPI", + "name_flat": "SteamAPI_SteamGameServerNetworkingMessages_SteamAPI_v002" + } + ], + "classname": "ISteamNetworkingMessages", + "fields": [], + "methods": [ + { + "methodname": "SendMessageToUser", + "methodname_flat": "SteamAPI_ISteamNetworkingMessages_SendMessageToUser", + "params": [ + { "paramname":"identityRemote", "paramtype":"const SteamNetworkingIdentity &" }, + { "paramname":"pubData", "paramtype":"const void *" }, + { "paramname":"cubData", "paramtype":"uint32" }, + { "paramname":"nSendFlags", "paramtype":"int" }, + { "paramname":"nRemoteChannel", "paramtype":"int" } + ], + "returntype": "EResult" + }, + { + "methodname": "ReceiveMessagesOnChannel", + "methodname_flat": "SteamAPI_ISteamNetworkingMessages_ReceiveMessagesOnChannel", + "params": [ + { "paramname":"nLocalChannel", "paramtype":"int" }, + { "paramname":"ppOutMessages", "paramtype":"SteamNetworkingMessage_t **" }, + { "paramname":"nMaxMessages", "paramtype":"int" } + ], + "returntype": "int" + }, + { + "methodname": "AcceptSessionWithUser", + "methodname_flat": "SteamAPI_ISteamNetworkingMessages_AcceptSessionWithUser", + "params": [ + { "paramname":"identityRemote", "paramtype":"const SteamNetworkingIdentity &" } + ], + "returntype": "bool" + }, + { + "methodname": "CloseSessionWithUser", + "methodname_flat": "SteamAPI_ISteamNetworkingMessages_CloseSessionWithUser", + "params": [ + { "paramname":"identityRemote", "paramtype":"const SteamNetworkingIdentity &" } + ], + "returntype": "bool" + }, + { + "methodname": "CloseChannelWithUser", + "methodname_flat": "SteamAPI_ISteamNetworkingMessages_CloseChannelWithUser", + "params": [ + { "paramname":"identityRemote", "paramtype":"const SteamNetworkingIdentity &" }, + { "paramname":"nLocalChannel", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "GetSessionConnectionInfo", + "methodname_flat": "SteamAPI_ISteamNetworkingMessages_GetSessionConnectionInfo", + "params": [ + { "paramname":"identityRemote", "paramtype":"const SteamNetworkingIdentity &" }, + { "paramname":"pConnectionInfo", "paramtype":"SteamNetConnectionInfo_t *" }, + { "paramname":"pQuickStatus", "paramtype":"SteamNetworkingQuickConnectionStatus *" } + ], + "returntype": "ESteamNetworkingConnectionState" + } + ], + "version_string": "SteamNetworkingMessages002" + }, + { + "accessors": [ + { + "kind": "user", + "name": "SteamNetworkingSockets_SteamAPI", + "name_flat": "SteamAPI_SteamNetworkingSockets_SteamAPI_v009" + }, + { + "kind": "gameserver", + "name": "SteamGameServerNetworkingSockets_SteamAPI", + "name_flat": "SteamAPI_SteamGameServerNetworkingSockets_SteamAPI_v009" + } + ], + "classname": "ISteamNetworkingSockets", + "fields": [], + "methods": [ + { + "methodname": "CreateListenSocketIP", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_CreateListenSocketIP", + "params": [ + { "paramname":"localAddress", "paramtype":"const SteamNetworkingIPAddr &" }, + { "paramname":"nOptions", "paramtype":"int" }, + { "paramname":"pOptions", "paramtype":"const SteamNetworkingConfigValue_t *" } + ], + "returntype": "HSteamListenSocket" + }, + { + "methodname": "ConnectByIPAddress", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_ConnectByIPAddress", + "params": [ + { "paramname":"address", "paramtype":"const SteamNetworkingIPAddr &" }, + { "paramname":"nOptions", "paramtype":"int" }, + { "paramname":"pOptions", "paramtype":"const SteamNetworkingConfigValue_t *" } + ], + "returntype": "HSteamNetConnection" + }, + { + "methodname": "CreateListenSocketP2P", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_CreateListenSocketP2P", + "params": [ + { "paramname":"nLocalVirtualPort", "paramtype":"int" }, + { "paramname":"nOptions", "paramtype":"int" }, + { "paramname":"pOptions", "paramtype":"const SteamNetworkingConfigValue_t *" } + ], + "returntype": "HSteamListenSocket" + }, + { + "methodname": "ConnectP2P", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_ConnectP2P", + "params": [ + { "paramname":"identityRemote", "paramtype":"const SteamNetworkingIdentity &" }, + { "paramname":"nRemoteVirtualPort", "paramtype":"int" }, + { "paramname":"nOptions", "paramtype":"int" }, + { "paramname":"pOptions", "paramtype":"const SteamNetworkingConfigValue_t *" } + ], + "returntype": "HSteamNetConnection" + }, + { + "methodname": "AcceptConnection", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_AcceptConnection", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" } + ], + "returntype": "EResult" + }, + { + "methodname": "CloseConnection", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_CloseConnection", + "params": [ + { "paramname":"hPeer", "paramtype":"HSteamNetConnection" }, + { "paramname":"nReason", "paramtype":"int" }, + { "paramname":"pszDebug", "paramtype":"const char *" }, + { "paramname":"bEnableLinger", "paramtype":"bool" } + ], + "returntype": "bool" + }, + { + "methodname": "CloseListenSocket", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_CloseListenSocket", + "params": [ + { "paramname":"hSocket", "paramtype":"HSteamListenSocket" } + ], + "returntype": "bool" + }, + { + "methodname": "SetConnectionUserData", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_SetConnectionUserData", + "params": [ + { "paramname":"hPeer", "paramtype":"HSteamNetConnection" }, + { "paramname":"nUserData", "paramtype":"int64" } + ], + "returntype": "bool" + }, + { + "methodname": "GetConnectionUserData", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetConnectionUserData", + "params": [ + { "paramname":"hPeer", "paramtype":"HSteamNetConnection" } + ], + "returntype": "int64" + }, + { + "methodname": "SetConnectionName", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_SetConnectionName", + "params": [ + { "paramname":"hPeer", "paramtype":"HSteamNetConnection" }, + { "paramname":"pszName", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "GetConnectionName", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetConnectionName", + "params": [ + { "paramname":"hPeer", "paramtype":"HSteamNetConnection" }, + { "paramname":"pszName", "paramtype":"char *" }, + { "paramname":"nMaxLen", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "SendMessageToConnection", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_SendMessageToConnection", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" }, + { "paramname":"pData", "paramtype":"const void *" }, + { "paramname":"cbData", "paramtype":"uint32" }, + { "paramname":"nSendFlags", "paramtype":"int" }, + { "paramname":"pOutMessageNumber", "paramtype":"int64 *" } + ], + "returntype": "EResult" + }, + { + "methodname": "SendMessages", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_SendMessages", + "params": [ + { "paramname":"nMessages", "paramtype":"int" }, + { "paramname":"pMessages", "paramtype":"SteamNetworkingMessage_t *const *" }, + { "paramname":"pOutMessageNumberOrResult", "paramtype":"int64 *" } + ], + "returntype": "void" + }, + { + "methodname": "FlushMessagesOnConnection", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_FlushMessagesOnConnection", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" } + ], + "returntype": "EResult" + }, + { + "methodname": "ReceiveMessagesOnConnection", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_ReceiveMessagesOnConnection", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" }, + { "paramname":"ppOutMessages", "paramtype":"SteamNetworkingMessage_t **" }, + { "paramname":"nMaxMessages", "paramtype":"int" } + ], + "returntype": "int" + }, + { + "methodname": "GetConnectionInfo", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetConnectionInfo", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" }, + { "paramname":"pInfo", "paramtype":"SteamNetConnectionInfo_t *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetQuickConnectionStatus", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetQuickConnectionStatus", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" }, + { "paramname":"pStats", "paramtype":"SteamNetworkingQuickConnectionStatus *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetDetailedConnectionStatus", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetDetailedConnectionStatus", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" }, + { "paramname":"pszBuf", "paramtype":"char *" }, + { "paramname":"cbBuf", "paramtype":"int" } + ], + "returntype": "int" + }, + { + "methodname": "GetListenSocketAddress", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetListenSocketAddress", + "params": [ + { "paramname":"hSocket", "paramtype":"HSteamListenSocket" }, + { "paramname":"address", "paramtype":"SteamNetworkingIPAddr *" } + ], + "returntype": "bool" + }, + { + "methodname": "CreateSocketPair", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_CreateSocketPair", + "params": [ + { "paramname":"pOutConnection1", "paramtype":"HSteamNetConnection *" }, + { "paramname":"pOutConnection2", "paramtype":"HSteamNetConnection *" }, + { "paramname":"bUseNetworkLoopback", "paramtype":"bool" }, + { "paramname":"pIdentity1", "paramtype":"const SteamNetworkingIdentity *" }, + { "paramname":"pIdentity2", "paramtype":"const SteamNetworkingIdentity *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetIdentity", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetIdentity", + "params": [ + { "paramname":"pIdentity", "paramtype":"SteamNetworkingIdentity *" } + ], + "returntype": "bool" + }, + { + "methodname": "InitAuthentication", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_InitAuthentication", + "params": [], + "returntype": "ESteamNetworkingAvailability" + }, + { + "methodname": "GetAuthenticationStatus", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetAuthenticationStatus", + "params": [ + { "paramname":"pDetails", "paramtype":"SteamNetAuthenticationStatus_t *" } + ], + "returntype": "ESteamNetworkingAvailability" + }, + { + "methodname": "CreatePollGroup", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_CreatePollGroup", + "params": [], + "returntype": "HSteamNetPollGroup" + }, + { + "methodname": "DestroyPollGroup", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_DestroyPollGroup", + "params": [ + { "paramname":"hPollGroup", "paramtype":"HSteamNetPollGroup" } + ], + "returntype": "bool" + }, + { + "methodname": "SetConnectionPollGroup", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_SetConnectionPollGroup", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" }, + { "paramname":"hPollGroup", "paramtype":"HSteamNetPollGroup" } + ], + "returntype": "bool" + }, + { + "methodname": "ReceiveMessagesOnPollGroup", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_ReceiveMessagesOnPollGroup", + "params": [ + { "paramname":"hPollGroup", "paramtype":"HSteamNetPollGroup" }, + { "paramname":"ppOutMessages", "paramtype":"SteamNetworkingMessage_t **" }, + { "paramname":"nMaxMessages", "paramtype":"int" } + ], + "returntype": "int" + }, + { + "methodname": "ReceivedRelayAuthTicket", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_ReceivedRelayAuthTicket", + "params": [ + { "paramname":"pvTicket", "paramtype":"const void *" }, + { "paramname":"cbTicket", "paramtype":"int" }, + { "paramname":"pOutParsedTicket", "paramtype":"SteamDatagramRelayAuthTicket *" } + ], + "returntype": "bool" + }, + { + "methodname": "FindRelayAuthTicketForServer", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_FindRelayAuthTicketForServer", + "params": [ + { "paramname":"identityGameServer", "paramtype":"const SteamNetworkingIdentity &" }, + { "paramname":"nRemoteVirtualPort", "paramtype":"int" }, + { "paramname":"pOutParsedTicket", "paramtype":"SteamDatagramRelayAuthTicket *" } + ], + "returntype": "int" + }, + { + "methodname": "ConnectToHostedDedicatedServer", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_ConnectToHostedDedicatedServer", + "params": [ + { "paramname":"identityTarget", "paramtype":"const SteamNetworkingIdentity &" }, + { "paramname":"nRemoteVirtualPort", "paramtype":"int" }, + { "paramname":"nOptions", "paramtype":"int" }, + { "paramname":"pOptions", "paramtype":"const SteamNetworkingConfigValue_t *" } + ], + "returntype": "HSteamNetConnection" + }, + { + "methodname": "GetHostedDedicatedServerPort", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerPort", + "params": [], + "returntype": "uint16" + }, + { + "methodname": "GetHostedDedicatedServerPOPID", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerPOPID", + "params": [], + "returntype": "SteamNetworkingPOPID" + }, + { + "methodname": "GetHostedDedicatedServerAddress", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerAddress", + "params": [ + { "paramname":"pRouting", "paramtype":"SteamDatagramHostedAddress *" } + ], + "returntype": "EResult" + }, + { + "methodname": "CreateHostedDedicatedServerListenSocket", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_CreateHostedDedicatedServerListenSocket", + "params": [ + { "paramname":"nLocalVirtualPort", "paramtype":"int" }, + { "paramname":"nOptions", "paramtype":"int" }, + { "paramname":"pOptions", "paramtype":"const SteamNetworkingConfigValue_t *" } + ], + "returntype": "HSteamListenSocket" + }, + { + "methodname": "GetGameCoordinatorServerLogin", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetGameCoordinatorServerLogin", + "params": [ + { "paramname":"pLoginInfo", "paramtype":"SteamDatagramGameCoordinatorServerLogin *" }, + { "paramname":"pcbSignedBlob", "paramtype":"int *" }, + { "paramname":"pBlob", "paramtype":"void *" } + ], + "returntype": "EResult" + }, + { + "methodname": "ConnectP2PCustomSignaling", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_ConnectP2PCustomSignaling", + "params": [ + { "paramname":"pSignaling", "paramtype":"ISteamNetworkingConnectionSignaling *" }, + { "paramname":"pPeerIdentity", "paramtype":"const SteamNetworkingIdentity *" }, + { "paramname":"nRemoteVirtualPort", "paramtype":"int" }, + { "paramname":"nOptions", "paramtype":"int" }, + { "paramname":"pOptions", "paramtype":"const SteamNetworkingConfigValue_t *" } + ], + "returntype": "HSteamNetConnection" + }, + { + "methodname": "ReceivedP2PCustomSignal", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_ReceivedP2PCustomSignal", + "params": [ + { "paramname":"pMsg", "paramtype":"const void *" }, + { "paramname":"cbMsg", "paramtype":"int" }, + { "paramname":"pContext", "paramtype":"ISteamNetworkingSignalingRecvContext *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetCertificateRequest", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetCertificateRequest", + "params": [ + { "paramname":"pcbBlob", "paramtype":"int *" }, + { "paramname":"pBlob", "paramtype":"void *" }, + { "paramname":"errMsg", "paramtype":"SteamNetworkingErrMsg &" } + ], + "returntype": "bool" + }, + { + "methodname": "SetCertificate", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_SetCertificate", + "params": [ + { "paramname":"pCertificate", "paramtype":"const void *" }, + { "paramname":"cbCertificate", "paramtype":"int" }, + { "paramname":"errMsg", "paramtype":"SteamNetworkingErrMsg &" } + ], + "returntype": "bool" + }, + { + "methodname": "RunCallbacks", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_RunCallbacks", + "params": [], + "returntype": "void" + } + ], + "version_string": "SteamNetworkingSockets009" + }, + { + "accessors": [ + { + "kind": "global", + "name": "SteamNetworkingUtils_SteamAPI", + "name_flat": "SteamAPI_SteamNetworkingUtils_SteamAPI_v003" + } + ], + "classname": "ISteamNetworkingUtils", + "fields": [], + "methods": [ + { + "methodname": "AllocateMessage", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_AllocateMessage", + "params": [ + { "paramname":"cbAllocateBuffer", "paramtype":"int" } + ], + "returntype": "SteamNetworkingMessage_t *" + }, + { + "methodname": "InitRelayNetworkAccess", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_InitRelayNetworkAccess", + "params": [], + "returntype": "void" + }, + { + "methodname": "GetRelayNetworkStatus", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetRelayNetworkStatus", + "params": [ + { "paramname":"pDetails", "paramtype":"SteamRelayNetworkStatus_t *" } + ], + "returntype": "ESteamNetworkingAvailability" + }, + { + "methodname": "GetLocalPingLocation", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetLocalPingLocation", + "params": [ + { "paramname":"result", "paramtype":"SteamNetworkPingLocation_t &" } + ], + "returntype": "float" + }, + { + "methodname": "EstimatePingTimeBetweenTwoLocations", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_EstimatePingTimeBetweenTwoLocations", + "params": [ + { "paramname":"location1", "paramtype":"const SteamNetworkPingLocation_t &" }, + { "paramname":"location2", "paramtype":"const SteamNetworkPingLocation_t &" } + ], + "returntype": "int" + }, + { + "methodname": "EstimatePingTimeFromLocalHost", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_EstimatePingTimeFromLocalHost", + "params": [ + { "paramname":"remoteLocation", "paramtype":"const SteamNetworkPingLocation_t &" } + ], + "returntype": "int" + }, + { + "methodname": "ConvertPingLocationToString", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_ConvertPingLocationToString", + "params": [ + { "paramname":"location", "paramtype":"const SteamNetworkPingLocation_t &" }, + { "paramname":"pszBuf", "paramtype":"char *" }, + { "paramname":"cchBufSize", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "ParsePingLocationString", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_ParsePingLocationString", + "params": [ + { "paramname":"pszString", "paramtype":"const char *" }, + { "paramname":"result", "paramtype":"SteamNetworkPingLocation_t &" } + ], + "returntype": "bool" + }, + { + "methodname": "CheckPingDataUpToDate", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_CheckPingDataUpToDate", + "params": [ + { "paramname":"flMaxAgeSeconds", "paramtype":"float" } + ], + "returntype": "bool" + }, + { + "methodname": "GetPingToDataCenter", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetPingToDataCenter", + "params": [ + { "paramname":"popID", "paramtype":"SteamNetworkingPOPID" }, + { "paramname":"pViaRelayPoP", "paramtype":"SteamNetworkingPOPID *" } + ], + "returntype": "int" + }, + { + "methodname": "GetDirectPingToPOP", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetDirectPingToPOP", + "params": [ + { "paramname":"popID", "paramtype":"SteamNetworkingPOPID" } + ], + "returntype": "int" + }, + { + "methodname": "GetPOPCount", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetPOPCount", + "params": [], + "returntype": "int" + }, + { + "methodname": "GetPOPList", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetPOPList", + "params": [ + { "paramname":"list", "paramtype":"SteamNetworkingPOPID *" }, + { "paramname":"nListSz", "paramtype":"int" } + ], + "returntype": "int" + }, + { + "methodname": "GetLocalTimestamp", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetLocalTimestamp", + "params": [], + "returntype": "SteamNetworkingMicroseconds" + }, + { + "methodname": "SetDebugOutputFunction", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetDebugOutputFunction", + "params": [ + { "paramname":"eDetailLevel", "paramtype":"ESteamNetworkingSocketsDebugOutputType" }, + { "paramname":"pfnFunc", "paramtype":"FSteamNetworkingSocketsDebugOutput" } + ], + "returntype": "void" + }, + { + "methodname": "SetGlobalConfigValueInt32", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalConfigValueInt32", + "params": [ + { "paramname":"eValue", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"val", "paramtype":"int32" } + ], + "returntype": "bool" + }, + { + "methodname": "SetGlobalConfigValueFloat", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalConfigValueFloat", + "params": [ + { "paramname":"eValue", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"val", "paramtype":"float" } + ], + "returntype": "bool" + }, + { + "methodname": "SetGlobalConfigValueString", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalConfigValueString", + "params": [ + { "paramname":"eValue", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"val", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetGlobalConfigValuePtr", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalConfigValuePtr", + "params": [ + { "paramname":"eValue", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"val", "paramtype":"void *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetConnectionConfigValueInt32", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetConnectionConfigValueInt32", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" }, + { "paramname":"eValue", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"val", "paramtype":"int32" } + ], + "returntype": "bool" + }, + { + "methodname": "SetConnectionConfigValueFloat", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetConnectionConfigValueFloat", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" }, + { "paramname":"eValue", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"val", "paramtype":"float" } + ], + "returntype": "bool" + }, + { + "methodname": "SetConnectionConfigValueString", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetConnectionConfigValueString", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" }, + { "paramname":"eValue", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"val", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetGlobalCallback_SteamNetConnectionStatusChanged", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_SteamNetConnectionStatusChanged", + "params": [ + { "paramname":"fnCallback", "paramtype":"FnSteamNetConnectionStatusChanged" } + ], + "returntype": "bool" + }, + { + "methodname": "SetGlobalCallback_SteamNetAuthenticationStatusChanged", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_SteamNetAuthenticationStatusChanged", + "params": [ + { "paramname":"fnCallback", "paramtype":"FnSteamNetAuthenticationStatusChanged" } + ], + "returntype": "bool" + }, + { + "methodname": "SetGlobalCallback_SteamRelayNetworkStatusChanged", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_SteamRelayNetworkStatusChanged", + "params": [ + { "paramname":"fnCallback", "paramtype":"FnSteamRelayNetworkStatusChanged" } + ], + "returntype": "bool" + }, + { + "methodname": "SetGlobalCallback_MessagesSessionRequest", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_MessagesSessionRequest", + "params": [ + { "paramname":"fnCallback", "paramtype":"FnSteamNetworkingMessagesSessionRequest" } + ], + "returntype": "bool" + }, + { + "methodname": "SetGlobalCallback_MessagesSessionFailed", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_MessagesSessionFailed", + "params": [ + { "paramname":"fnCallback", "paramtype":"FnSteamNetworkingMessagesSessionFailed" } + ], + "returntype": "bool" + }, + { + "methodname": "SetConfigValue", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetConfigValue", + "params": [ + { "paramname":"eValue", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"eScopeType", "paramtype":"ESteamNetworkingConfigScope" }, + { "paramname":"scopeObj", "paramtype":"intptr_t" }, + { "paramname":"eDataType", "paramtype":"ESteamNetworkingConfigDataType" }, + { "paramname":"pArg", "paramtype":"const void *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetConfigValueStruct", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetConfigValueStruct", + "params": [ + { "paramname":"opt", "paramtype":"const SteamNetworkingConfigValue_t &" }, + { "paramname":"eScopeType", "paramtype":"ESteamNetworkingConfigScope" }, + { "paramname":"scopeObj", "paramtype":"intptr_t" } + ], + "returntype": "bool" + }, + { + "methodname": "GetConfigValue", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetConfigValue", + "params": [ + { "paramname":"eValue", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"eScopeType", "paramtype":"ESteamNetworkingConfigScope" }, + { "paramname":"scopeObj", "paramtype":"intptr_t" }, + { "paramname":"pOutDataType", "paramtype":"ESteamNetworkingConfigDataType *" }, + { "paramname":"pResult", "paramtype":"void *" }, + { "paramname":"cbResult", "paramtype":"size_t *" } + ], + "returntype": "ESteamNetworkingGetConfigValueResult" + }, + { + "methodname": "GetConfigValueInfo", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetConfigValueInfo", + "params": [ + { "paramname":"eValue", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"pOutName", "paramtype":"const char **" }, + { "paramname":"pOutDataType", "paramtype":"ESteamNetworkingConfigDataType *" }, + { "paramname":"pOutScope", "paramtype":"ESteamNetworkingConfigScope *" }, + { "paramname":"pOutNextValue", "paramtype":"ESteamNetworkingConfigValue *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetFirstConfigValue", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetFirstConfigValue", + "params": [], + "returntype": "ESteamNetworkingConfigValue" + }, + { + "methodname": "SteamNetworkingIPAddr_ToString", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_ToString", + "params": [ + { "paramname":"addr", "paramtype":"const SteamNetworkingIPAddr &" }, + { "paramname":"buf", "paramtype":"char *" }, + { "paramname":"cbBuf", "paramtype":"uint32" }, + { "paramname":"bWithPort", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "SteamNetworkingIPAddr_ParseString", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_ParseString", + "params": [ + { "paramname":"pAddr", "paramtype":"SteamNetworkingIPAddr *" }, + { "paramname":"pszStr", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "SteamNetworkingIdentity_ToString", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIdentity_ToString", + "params": [ + { "paramname":"identity", "paramtype":"const SteamNetworkingIdentity &" }, + { "paramname":"buf", "paramtype":"char *" }, + { "paramname":"cbBuf", "paramtype":"uint32" } + ], + "returntype": "void" + }, + { + "methodname": "SteamNetworkingIdentity_ParseString", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIdentity_ParseString", + "params": [ + { "paramname":"pIdentity", "paramtype":"SteamNetworkingIdentity *" }, + { "paramname":"pszStr", "paramtype":"const char *" } + ], + "returntype": "bool" + } + ], + "version_string": "SteamNetworkingUtils003" + }, + { + "accessors": [ + { + "kind": "gameserver", + "name": "SteamGameServer", + "name_flat": "SteamAPI_SteamGameServer_v013" + } + ], + "classname": "ISteamGameServer", + "fields": [], + "methods": [ + { + "methodname": "SetProduct", + "methodname_flat": "SteamAPI_ISteamGameServer_SetProduct", + "params": [ + { "paramname":"pszProduct", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SetGameDescription", + "methodname_flat": "SteamAPI_ISteamGameServer_SetGameDescription", + "params": [ + { "paramname":"pszGameDescription", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SetModDir", + "methodname_flat": "SteamAPI_ISteamGameServer_SetModDir", + "params": [ + { "paramname":"pszModDir", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SetDedicatedServer", + "methodname_flat": "SteamAPI_ISteamGameServer_SetDedicatedServer", + "params": [ + { "paramname":"bDedicated", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "LogOn", + "methodname_flat": "SteamAPI_ISteamGameServer_LogOn", + "params": [ + { "paramname":"pszToken", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "LogOnAnonymous", + "methodname_flat": "SteamAPI_ISteamGameServer_LogOnAnonymous", + "params": [], + "returntype": "void" + }, + { + "methodname": "LogOff", + "methodname_flat": "SteamAPI_ISteamGameServer_LogOff", + "params": [], + "returntype": "void" + }, + { + "methodname": "BLoggedOn", + "methodname_flat": "SteamAPI_ISteamGameServer_BLoggedOn", + "params": [], + "returntype": "bool" + }, + { + "methodname": "BSecure", + "methodname_flat": "SteamAPI_ISteamGameServer_BSecure", + "params": [], + "returntype": "bool" + }, + { + "methodname": "GetSteamID", + "methodname_flat": "SteamAPI_ISteamGameServer_GetSteamID", + "params": [], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "WasRestartRequested", + "methodname_flat": "SteamAPI_ISteamGameServer_WasRestartRequested", + "params": [], + "returntype": "bool" + }, + { + "methodname": "SetMaxPlayerCount", + "methodname_flat": "SteamAPI_ISteamGameServer_SetMaxPlayerCount", + "params": [ + { "paramname":"cPlayersMax", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "SetBotPlayerCount", + "methodname_flat": "SteamAPI_ISteamGameServer_SetBotPlayerCount", + "params": [ + { "paramname":"cBotplayers", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "SetServerName", + "methodname_flat": "SteamAPI_ISteamGameServer_SetServerName", + "params": [ + { "paramname":"pszServerName", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SetMapName", + "methodname_flat": "SteamAPI_ISteamGameServer_SetMapName", + "params": [ + { "paramname":"pszMapName", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SetPasswordProtected", + "methodname_flat": "SteamAPI_ISteamGameServer_SetPasswordProtected", + "params": [ + { "paramname":"bPasswordProtected", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "SetSpectatorPort", + "methodname_flat": "SteamAPI_ISteamGameServer_SetSpectatorPort", + "params": [ + { "paramname":"unSpectatorPort", "paramtype":"uint16" } + ], + "returntype": "void" + }, + { + "methodname": "SetSpectatorServerName", + "methodname_flat": "SteamAPI_ISteamGameServer_SetSpectatorServerName", + "params": [ + { "paramname":"pszSpectatorServerName", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "ClearAllKeyValues", + "methodname_flat": "SteamAPI_ISteamGameServer_ClearAllKeyValues", + "params": [], + "returntype": "void" + }, + { + "methodname": "SetKeyValue", + "methodname_flat": "SteamAPI_ISteamGameServer_SetKeyValue", + "params": [ + { "paramname":"pKey", "paramtype":"const char *" }, + { "paramname":"pValue", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SetGameTags", + "methodname_flat": "SteamAPI_ISteamGameServer_SetGameTags", + "params": [ + { "paramname":"pchGameTags", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SetGameData", + "methodname_flat": "SteamAPI_ISteamGameServer_SetGameData", + "params": [ + { "paramname":"pchGameData", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SetRegion", + "methodname_flat": "SteamAPI_ISteamGameServer_SetRegion", + "params": [ + { "paramname":"pszRegion", "paramtype":"const char *" } + ], + "returntype": "void" + }, + { + "methodname": "SendUserConnectAndAuthenticate", + "methodname_flat": "SteamAPI_ISteamGameServer_SendUserConnectAndAuthenticate", + "params": [ + { "paramname":"unIPClient", "paramtype":"uint32" }, + { "paramname":"pvAuthBlob", "paramtype":"const void *" }, + { "paramname":"cubAuthBlobSize", "paramtype":"uint32" }, + { "paramname":"pSteamIDUser", "paramtype":"CSteamID *" } + ], + "returntype": "bool" + }, + { + "methodname": "CreateUnauthenticatedUserConnection", + "methodname_flat": "SteamAPI_ISteamGameServer_CreateUnauthenticatedUserConnection", + "params": [], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "SendUserDisconnect", + "methodname_flat": "SteamAPI_ISteamGameServer_SendUserDisconnect", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "BUpdateUserData", + "methodname_flat": "SteamAPI_ISteamGameServer_BUpdateUserData", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchPlayerName", "paramtype":"const char *" }, + { "paramname":"uScore", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetAuthSessionTicket", + "methodname_flat": "SteamAPI_ISteamGameServer_GetAuthSessionTicket", + "params": [ + { "paramname":"pTicket", "paramtype":"void *" }, + { "paramname":"cbMaxTicket", "paramtype":"int" }, + { "paramname":"pcbTicket", "paramtype":"uint32 *" } + ], + "returntype": "HAuthTicket" + }, + { + "methodname": "BeginAuthSession", + "methodname_flat": "SteamAPI_ISteamGameServer_BeginAuthSession", + "params": [ + { "paramname":"pAuthTicket", "paramtype":"const void *" }, + { "paramname":"cbAuthTicket", "paramtype":"int" }, + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "EBeginAuthSessionResult" + }, + { + "methodname": "EndAuthSession", + "methodname_flat": "SteamAPI_ISteamGameServer_EndAuthSession", + "params": [ + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "CancelAuthTicket", + "methodname_flat": "SteamAPI_ISteamGameServer_CancelAuthTicket", + "params": [ + { "paramname":"hAuthTicket", "paramtype":"HAuthTicket" } + ], + "returntype": "void" + }, + { + "methodname": "UserHasLicenseForApp", + "methodname_flat": "SteamAPI_ISteamGameServer_UserHasLicenseForApp", + "params": [ + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"appID", "paramtype":"AppId_t" } + ], + "returntype": "EUserHasLicenseForAppResult" + }, + { + "methodname": "RequestUserGroupStatus", + "methodname_flat": "SteamAPI_ISteamGameServer_RequestUserGroupStatus", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"steamIDGroup", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "bool" + }, + { + "methodname": "GetGameplayStats", + "methodname_flat": "SteamAPI_ISteamGameServer_GetGameplayStats", + "params": [], + "returntype": "void" + }, + { + "callresult": "GSReputation_t", + "methodname": "GetServerReputation", + "methodname_flat": "SteamAPI_ISteamGameServer_GetServerReputation", + "params": [], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetPublicIP", + "methodname_flat": "SteamAPI_ISteamGameServer_GetPublicIP", + "params": [], + "returntype": "SteamIPAddress_t" + }, + { + "methodname": "HandleIncomingPacket", + "methodname_flat": "SteamAPI_ISteamGameServer_HandleIncomingPacket", + "params": [ + { "paramname":"pData", "paramtype":"const void *" }, + { "paramname":"cbData", "paramtype":"int" }, + { "paramname":"srcIP", "paramtype":"uint32" }, + { "paramname":"srcPort", "paramtype":"uint16" } + ], + "returntype": "bool" + }, + { + "methodname": "GetNextOutgoingPacket", + "methodname_flat": "SteamAPI_ISteamGameServer_GetNextOutgoingPacket", + "params": [ + { "paramname":"pOut", "paramtype":"void *" }, + { "paramname":"cbMaxOut", "paramtype":"int" }, + { "paramname":"pNetAdr", "paramtype":"uint32 *" }, + { "paramname":"pPort", "paramtype":"uint16 *" } + ], + "returntype": "int" + }, + { + "methodname": "EnableHeartbeats", + "methodname_flat": "SteamAPI_ISteamGameServer_EnableHeartbeats", + "params": [ + { "paramname":"bActive", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "SetHeartbeatInterval", + "methodname_flat": "SteamAPI_ISteamGameServer_SetHeartbeatInterval", + "params": [ + { "paramname":"iHeartbeatInterval", "paramtype":"int" } + ], + "returntype": "void" + }, + { + "methodname": "ForceHeartbeat", + "methodname_flat": "SteamAPI_ISteamGameServer_ForceHeartbeat", + "params": [], + "returntype": "void" + }, + { + "callresult": "AssociateWithClanResult_t", + "methodname": "AssociateWithClan", + "methodname_flat": "SteamAPI_ISteamGameServer_AssociateWithClan", + "params": [ + { "paramname":"steamIDClan", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + }, + { + "callresult": "ComputeNewPlayerCompatibilityResult_t", + "methodname": "ComputeNewPlayerCompatibility", + "methodname_flat": "SteamAPI_ISteamGameServer_ComputeNewPlayerCompatibility", + "params": [ + { "paramname":"steamIDNewPlayer", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + } + ], + "version_string": "SteamGameServer013" + }, + { + "accessors": [ + { + "kind": "gameserver", + "name": "SteamGameServerStats", + "name_flat": "SteamAPI_SteamGameServerStats_v001" + } + ], + "classname": "ISteamGameServerStats", + "fields": [], + "methods": [ + { + "callresult": "GSStatsReceived_t", + "methodname": "RequestUserStats", + "methodname_flat": "SteamAPI_ISteamGameServerStats_RequestUserStats", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + }, + { + "methodname": "GetUserStat", + "methodname_flat": "SteamAPI_ISteamGameServerStats_GetUserStatInt32", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pData", "paramtype":"int32 *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetUserStat", + "methodname_flat": "SteamAPI_ISteamGameServerStats_GetUserStatFloat", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pData", "paramtype":"float *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetUserAchievement", + "methodname_flat": "SteamAPI_ISteamGameServerStats_GetUserAchievement", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"pbAchieved", "paramtype":"bool *" } + ], + "returntype": "bool" + }, + { + "methodname": "SetUserStat", + "methodname_flat": "SteamAPI_ISteamGameServerStats_SetUserStatInt32", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"nData", "paramtype":"int32" } + ], + "returntype": "bool" + }, + { + "methodname": "SetUserStat", + "methodname_flat": "SteamAPI_ISteamGameServerStats_SetUserStatFloat", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"fData", "paramtype":"float" } + ], + "returntype": "bool" + }, + { + "methodname": "UpdateUserAvgRateStat", + "methodname_flat": "SteamAPI_ISteamGameServerStats_UpdateUserAvgRateStat", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" }, + { "paramname":"flCountThisSession", "paramtype":"float" }, + { "paramname":"dSessionLength", "paramtype":"double" } + ], + "returntype": "bool" + }, + { + "methodname": "SetUserAchievement", + "methodname_flat": "SteamAPI_ISteamGameServerStats_SetUserAchievement", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "ClearUserAchievement", + "methodname_flat": "SteamAPI_ISteamGameServerStats_ClearUserAchievement", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" }, + { "paramname":"pchName", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "callresult": "GSStatsStored_t", + "methodname": "StoreUserStats", + "methodname_flat": "SteamAPI_ISteamGameServerStats_StoreUserStats", + "params": [ + { "paramname":"steamIDUser", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "SteamAPICall_t" + } + ], + "version_string": "SteamGameServerStats001" + } + ], + "structs": [ + { + "fields": [ + { "fieldname":"m_rgubIPv6", "fieldtype":"uint8 [16]" }, + { "fieldname":"m_eType", "fieldtype":"ESteamIPType" } + ], + "methods": [ + { + "methodname": "IsSet", + "methodname_flat": "SteamAPI_SteamIPAddress_t_IsSet", + "params": [], + "returntype": "bool" + } + ], + "struct": "SteamIPAddress_t" + }, + { + "fields": [ + { "fieldname":"m_gameID", "fieldtype":"CGameID" }, + { "fieldname":"m_unGameIP", "fieldtype":"uint32" }, + { "fieldname":"m_usGamePort", "fieldtype":"uint16" }, + { "fieldname":"m_usQueryPort", "fieldtype":"uint16" }, + { "fieldname":"m_steamIDLobby", "fieldtype":"CSteamID" } + ], + "struct": "FriendGameInfo_t" + }, + { + "fields": [ + { "fieldname":"m_szKey", "fieldtype":"char [256]" }, + { "fieldname":"m_szValue", "fieldtype":"char [256]" } + ], + "methods": [ + { + "methodname": "Construct", + "methodname_flat": "SteamAPI_MatchMakingKeyValuePair_t_Construct", + "params": [], + "returntype": "void" + } + ], + "struct": "MatchMakingKeyValuePair_t" + }, + { + "fields": [ + { + "fieldname": "m_usConnectionPort", + "fieldtype": "uint16", + "private": true + }, + { + "fieldname": "m_usQueryPort", + "fieldtype": "uint16", + "private": true + }, + { + "fieldname": "m_unIP", + "fieldtype": "uint32", + "private": true + } + ], + "methods": [ + { + "methodname": "Construct", + "methodname_flat": "SteamAPI_servernetadr_t_Construct", + "params": [], + "returntype": "void" + }, + { + "methodname": "Init", + "methodname_flat": "SteamAPI_servernetadr_t_Init", + "params": [ + { "paramname":"ip", "paramtype":"unsigned int" }, + { "paramname":"usQueryPort", "paramtype":"uint16" }, + { "paramname":"usConnectionPort", "paramtype":"uint16" } + ], + "returntype": "void" + }, + { + "methodname": "GetQueryPort", + "methodname_flat": "SteamAPI_servernetadr_t_GetQueryPort", + "params": [], + "returntype": "uint16" + }, + { + "methodname": "SetQueryPort", + "methodname_flat": "SteamAPI_servernetadr_t_SetQueryPort", + "params": [ + { "paramname":"usPort", "paramtype":"uint16" } + ], + "returntype": "void" + }, + { + "methodname": "GetConnectionPort", + "methodname_flat": "SteamAPI_servernetadr_t_GetConnectionPort", + "params": [], + "returntype": "uint16" + }, + { + "methodname": "SetConnectionPort", + "methodname_flat": "SteamAPI_servernetadr_t_SetConnectionPort", + "params": [ + { "paramname":"usPort", "paramtype":"uint16" } + ], + "returntype": "void" + }, + { + "methodname": "GetIP", + "methodname_flat": "SteamAPI_servernetadr_t_GetIP", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "SetIP", + "methodname_flat": "SteamAPI_servernetadr_t_SetIP", + "params": [ + { "paramname":"unIP", "paramtype":"uint32" } + ], + "returntype": "void" + }, + { + "methodname": "GetConnectionAddressString", + "methodname_flat": "SteamAPI_servernetadr_t_GetConnectionAddressString", + "params": [], + "returntype": "const char *" + }, + { + "methodname": "GetQueryAddressString", + "methodname_flat": "SteamAPI_servernetadr_t_GetQueryAddressString", + "params": [], + "returntype": "const char *" + }, + { + "methodname": "operator<", + "methodname_flat": "SteamAPI_servernetadr_t_IsLessThan", + "params": [ + { "paramname":"netadr", "paramtype":"const servernetadr_t &" } + ], + "returntype": "bool" + }, + { + "methodname": "operator=", + "methodname_flat": "SteamAPI_servernetadr_t_Assign", + "params": [ + { "paramname":"that", "paramtype":"const servernetadr_t &" } + ], + "returntype": "void" + } + ], + "struct": "servernetadr_t" + }, + { + "fields": [ + { "fieldname":"m_NetAdr", "fieldtype":"servernetadr_t" }, + { "fieldname":"m_nPing", "fieldtype":"int" }, + { "fieldname":"m_bHadSuccessfulResponse", "fieldtype":"bool" }, + { "fieldname":"m_bDoNotRefresh", "fieldtype":"bool" }, + { "fieldname":"m_szGameDir", "fieldtype":"char [32]" }, + { "fieldname":"m_szMap", "fieldtype":"char [32]" }, + { "fieldname":"m_szGameDescription", "fieldtype":"char [64]" }, + { "fieldname":"m_nAppID", "fieldtype":"uint32" }, + { "fieldname":"m_nPlayers", "fieldtype":"int" }, + { "fieldname":"m_nMaxPlayers", "fieldtype":"int" }, + { "fieldname":"m_nBotPlayers", "fieldtype":"int" }, + { "fieldname":"m_bPassword", "fieldtype":"bool" }, + { "fieldname":"m_bSecure", "fieldtype":"bool" }, + { "fieldname":"m_ulTimeLastPlayed", "fieldtype":"uint32" }, + { "fieldname":"m_nServerVersion", "fieldtype":"int" }, + { + "fieldname": "m_szServerName", + "fieldtype": "char [64]", + "private": true + }, + { "fieldname":"m_szGameTags", "fieldtype":"char [128]" }, + { "fieldname":"m_steamID", "fieldtype":"CSteamID" } + ], + "methods": [ + { + "methodname": "Construct", + "methodname_flat": "SteamAPI_gameserveritem_t_Construct", + "params": [], + "returntype": "void" + }, + { + "methodname": "GetName", + "methodname_flat": "SteamAPI_gameserveritem_t_GetName", + "params": [], + "returntype": "const char *" + }, + { + "methodname": "SetName", + "methodname_flat": "SteamAPI_gameserveritem_t_SetName", + "params": [ + { "paramname":"pName", "paramtype":"const char *" } + ], + "returntype": "void" + } + ], + "struct": "gameserveritem_t" + }, + { + "fields": [ + { "fieldname":"m_eType", "fieldtype":"ESteamPartyBeaconLocationType" }, + { "fieldname":"m_ulLocationID", "fieldtype":"uint64" } + ], + "struct": "SteamPartyBeaconLocation_t" + }, + { + "fields": [ + { "fieldname":"m_ppStrings", "fieldtype":"const char **" }, + { "fieldname":"m_nNumStrings", "fieldtype":"int32" } + ], + "struct": "SteamParamStringArray_t" + }, + { + "fields": [ + { "fieldname":"m_steamIDUser", "fieldtype":"CSteamID" }, + { "fieldname":"m_nGlobalRank", "fieldtype":"int32" }, + { "fieldname":"m_nScore", "fieldtype":"int32" }, + { "fieldname":"m_cDetails", "fieldtype":"int32" }, + { "fieldname":"m_hUGC", "fieldtype":"UGCHandle_t" } + ], + "struct": "LeaderboardEntry_t" + }, + { + "fields": [ + { "fieldname":"m_bConnectionActive", "fieldtype":"uint8" }, + { "fieldname":"m_bConnecting", "fieldtype":"uint8" }, + { "fieldname":"m_eP2PSessionError", "fieldtype":"uint8" }, + { "fieldname":"m_bUsingRelay", "fieldtype":"uint8" }, + { "fieldname":"m_nBytesQueuedForSend", "fieldtype":"int32" }, + { "fieldname":"m_nPacketsQueuedForSend", "fieldtype":"int32" }, + { "fieldname":"m_nRemoteIP", "fieldtype":"uint32" }, + { "fieldname":"m_nRemotePort", "fieldtype":"uint16" } + ], + "struct": "P2PSessionState_t" + }, + { + "fields": [ + { "fieldname":"eMode", "fieldtype":"EInputSourceMode" }, + { "fieldname":"x", "fieldtype":"float" }, + { "fieldname":"y", "fieldtype":"float" }, + { "fieldname":"bActive", "fieldtype":"bool" } + ], + "struct": "InputAnalogActionData_t" + }, + { + "fields": [ + { "fieldname":"bState", "fieldtype":"bool" }, + { "fieldname":"bActive", "fieldtype":"bool" } + ], + "struct": "InputDigitalActionData_t" + }, + { + "fields": [ + { "fieldname":"rotQuatX", "fieldtype":"float" }, + { "fieldname":"rotQuatY", "fieldtype":"float" }, + { "fieldname":"rotQuatZ", "fieldtype":"float" }, + { "fieldname":"rotQuatW", "fieldtype":"float" }, + { "fieldname":"posAccelX", "fieldtype":"float" }, + { "fieldname":"posAccelY", "fieldtype":"float" }, + { "fieldname":"posAccelZ", "fieldtype":"float" }, + { "fieldname":"rotVelX", "fieldtype":"float" }, + { "fieldname":"rotVelY", "fieldtype":"float" }, + { "fieldname":"rotVelZ", "fieldtype":"float" } + ], + "struct": "InputMotionData_t" + }, + { + "fields": [ + { "fieldname":"m_nPublishedFileId", "fieldtype":"PublishedFileId_t" }, + { "fieldname":"m_eResult", "fieldtype":"EResult" }, + { "fieldname":"m_eFileType", "fieldtype":"EWorkshopFileType" }, + { "fieldname":"m_nCreatorAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_nConsumerAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_rgchTitle", "fieldtype":"char [129]" }, + { "fieldname":"m_rgchDescription", "fieldtype":"char [8000]" }, + { "fieldname":"m_ulSteamIDOwner", "fieldtype":"uint64" }, + { "fieldname":"m_rtimeCreated", "fieldtype":"uint32" }, + { "fieldname":"m_rtimeUpdated", "fieldtype":"uint32" }, + { "fieldname":"m_rtimeAddedToUserList", "fieldtype":"uint32" }, + { "fieldname":"m_eVisibility", "fieldtype":"ERemoteStoragePublishedFileVisibility" }, + { "fieldname":"m_bBanned", "fieldtype":"bool" }, + { "fieldname":"m_bAcceptedForUse", "fieldtype":"bool" }, + { "fieldname":"m_bTagsTruncated", "fieldtype":"bool" }, + { "fieldname":"m_rgchTags", "fieldtype":"char [1025]" }, + { "fieldname":"m_hFile", "fieldtype":"UGCHandle_t" }, + { "fieldname":"m_hPreviewFile", "fieldtype":"UGCHandle_t" }, + { "fieldname":"m_pchFileName", "fieldtype":"char [260]" }, + { "fieldname":"m_nFileSize", "fieldtype":"int32" }, + { "fieldname":"m_nPreviewFileSize", "fieldtype":"int32" }, + { "fieldname":"m_rgchURL", "fieldtype":"char [256]" }, + { "fieldname":"m_unVotesUp", "fieldtype":"uint32" }, + { "fieldname":"m_unVotesDown", "fieldtype":"uint32" }, + { "fieldname":"m_flScore", "fieldtype":"float" }, + { "fieldname":"m_unNumChildren", "fieldtype":"uint32" } + ], + "struct": "SteamUGCDetails_t" + }, + { + "fields": [ + { "fieldname":"m_itemId", "fieldtype":"SteamItemInstanceID_t" }, + { "fieldname":"m_iDefinition", "fieldtype":"SteamItemDef_t" }, + { "fieldname":"m_unQuantity", "fieldtype":"uint16" }, + { "fieldname":"m_unFlags", "fieldtype":"uint16" } + ], + "struct": "SteamItemDetails_t" + }, + { + "consts": [ + { "constname":"k_cchMaxString", "consttype":"int", "constval":"48" } + ], + "fields": [ + { "fieldname":"m_ipv6", "fieldtype":"uint8 [16]" }, + { "fieldname":"m_port", "fieldtype":"uint16" } + ], + "methods": [ + { + "methodname": "Clear", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_Clear", + "params": [], + "returntype": "void" + }, + { + "methodname": "IsIPv6AllZeros", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros", + "params": [], + "returntype": "bool" + }, + { + "methodname": "SetIPv6", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_SetIPv6", + "params": [ + { "paramname":"ipv6", "paramtype":"const uint8 *" }, + { "paramname":"nPort", "paramtype":"uint16" } + ], + "returntype": "void" + }, + { + "methodname": "SetIPv4", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_SetIPv4", + "params": [ + { "paramname":"nIP", "paramtype":"uint32" }, + { "paramname":"nPort", "paramtype":"uint16" } + ], + "returntype": "void" + }, + { + "methodname": "IsIPv4", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_IsIPv4", + "params": [], + "returntype": "bool" + }, + { + "methodname": "GetIPv4", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_GetIPv4", + "params": [], + "returntype": "uint32" + }, + { + "methodname": "SetIPv6LocalHost", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost", + "params": [ + { "paramname":"nPort", "paramtype":"uint16" } + ], + "returntype": "void" + }, + { + "methodname": "IsLocalHost", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_IsLocalHost", + "params": [], + "returntype": "bool" + }, + { + "methodname": "ToString", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_ToString", + "params": [ + { "paramname":"buf", "paramtype":"char *" }, + { "paramname":"cbBuf", "paramtype":"uint32" }, + { "paramname":"bWithPort", "paramtype":"bool" } + ], + "returntype": "void" + }, + { + "methodname": "ParseString", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_ParseString", + "params": [ + { "paramname":"pszStr", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "operator==", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_IsEqualTo", + "params": [ + { "paramname":"x", "paramtype":"const SteamNetworkingIPAddr &" } + ], + "returntype": "bool" + } + ], + "struct": "SteamNetworkingIPAddr" + }, + { + "consts": [ + { "constname":"k_cchMaxString", "consttype":"int", "constval":"128" }, + { "constname":"k_cchMaxGenericString", "consttype":"int", "constval":"32" }, + { "constname":"k_cchMaxXboxPairwiseID", "consttype":"int", "constval":"33" }, + { "constname":"k_cbMaxGenericBytes", "consttype":"int", "constval":"32" } + ], + "fields": [ + { "fieldname":"m_eType", "fieldtype":"ESteamNetworkingIdentityType" }, + { "fieldname":"m_cbSize", "fieldtype":"int" }, + { "fieldname":"m_szUnknownRawString", "fieldtype":"char [128]" } + ], + "methods": [ + { + "methodname": "Clear", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_Clear", + "params": [], + "returntype": "void" + }, + { + "methodname": "IsInvalid", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_IsInvalid", + "params": [], + "returntype": "bool" + }, + { + "methodname": "SetSteamID", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_SetSteamID", + "params": [ + { "paramname":"steamID", "paramtype":"CSteamID", "paramtype_flat":"uint64_steamid" } + ], + "returntype": "void" + }, + { + "methodname": "GetSteamID", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_GetSteamID", + "params": [], + "returntype": "CSteamID", + "returntype_flat": "uint64_steamid" + }, + { + "methodname": "SetSteamID64", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_SetSteamID64", + "params": [ + { "paramname":"steamID", "paramtype":"uint64" } + ], + "returntype": "void" + }, + { + "methodname": "GetSteamID64", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_GetSteamID64", + "params": [], + "returntype": "uint64" + }, + { + "methodname": "SetXboxPairwiseID", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID", + "params": [ + { "paramname":"pszString", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetXboxPairwiseID", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID", + "params": [], + "returntype": "const char *" + }, + { + "methodname": "SetPSNID", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_SetPSNID", + "params": [ + { "paramname":"id", "paramtype":"uint64" } + ], + "returntype": "void" + }, + { + "methodname": "GetPSNID", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_GetPSNID", + "params": [], + "returntype": "uint64" + }, + { + "methodname": "SetStadiaID", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_SetStadiaID", + "params": [ + { "paramname":"id", "paramtype":"uint64" } + ], + "returntype": "void" + }, + { + "methodname": "GetStadiaID", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_GetStadiaID", + "params": [], + "returntype": "uint64" + }, + { + "methodname": "SetIPAddr", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_SetIPAddr", + "params": [ + { "paramname":"addr", "paramtype":"const SteamNetworkingIPAddr &" } + ], + "returntype": "void" + }, + { + "methodname": "GetIPAddr", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_GetIPAddr", + "params": [], + "returntype": "const SteamNetworkingIPAddr *" + }, + { + "methodname": "SetLocalHost", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_SetLocalHost", + "params": [], + "returntype": "void" + }, + { + "methodname": "IsLocalHost", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_IsLocalHost", + "params": [], + "returntype": "bool" + }, + { + "methodname": "SetGenericString", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_SetGenericString", + "params": [ + { "paramname":"pszString", "paramtype":"const char *" } + ], + "returntype": "bool" + }, + { + "methodname": "GetGenericString", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_GetGenericString", + "params": [], + "returntype": "const char *" + }, + { + "methodname": "SetGenericBytes", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_SetGenericBytes", + "params": [ + { "paramname":"data", "paramtype":"const void *" }, + { "paramname":"cbLen", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetGenericBytes", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_GetGenericBytes", + "params": [ + { "paramname":"cbLen", "paramtype":"int &" } + ], + "returntype": "const uint8 *" + }, + { + "methodname": "operator==", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_IsEqualTo", + "params": [ + { "paramname":"x", "paramtype":"const SteamNetworkingIdentity &" } + ], + "returntype": "bool" + }, + { + "methodname": "ToString", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_ToString", + "params": [ + { "paramname":"buf", "paramtype":"char *" }, + { "paramname":"cbBuf", "paramtype":"uint32" } + ], + "returntype": "void" + }, + { + "methodname": "ParseString", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_ParseString", + "params": [ + { "paramname":"pszStr", "paramtype":"const char *" } + ], + "returntype": "bool" + } + ], + "struct": "SteamNetworkingIdentity" + }, + { + "fields": [ + { "fieldname":"m_identityRemote", "fieldtype":"SteamNetworkingIdentity" }, + { "fieldname":"m_nUserData", "fieldtype":"int64" }, + { "fieldname":"m_hListenSocket", "fieldtype":"HSteamListenSocket" }, + { "fieldname":"m_addrRemote", "fieldtype":"SteamNetworkingIPAddr" }, + { "fieldname":"m__pad1", "fieldtype":"uint16" }, + { "fieldname":"m_idPOPRemote", "fieldtype":"SteamNetworkingPOPID" }, + { "fieldname":"m_idPOPRelay", "fieldtype":"SteamNetworkingPOPID" }, + { "fieldname":"m_eState", "fieldtype":"ESteamNetworkingConnectionState" }, + { "fieldname":"m_eEndReason", "fieldtype":"int" }, + { "fieldname":"m_szEndDebug", "fieldtype":"char [128]" }, + { "fieldname":"m_szConnectionDescription", "fieldtype":"char [128]" }, + { "fieldname":"m_eTransportKind", "fieldtype":"ESteamNetTransportKind" }, + { "fieldname":"reserved", "fieldtype":"uint32 [63]" } + ], + "struct": "SteamNetConnectionInfo_t" + }, + { + "fields": [ + { "fieldname":"m_eState", "fieldtype":"ESteamNetworkingConnectionState" }, + { "fieldname":"m_nPing", "fieldtype":"int" }, + { "fieldname":"m_flConnectionQualityLocal", "fieldtype":"float" }, + { "fieldname":"m_flConnectionQualityRemote", "fieldtype":"float" }, + { "fieldname":"m_flOutPacketsPerSec", "fieldtype":"float" }, + { "fieldname":"m_flOutBytesPerSec", "fieldtype":"float" }, + { "fieldname":"m_flInPacketsPerSec", "fieldtype":"float" }, + { "fieldname":"m_flInBytesPerSec", "fieldtype":"float" }, + { "fieldname":"m_nSendRateBytesPerSecond", "fieldtype":"int" }, + { "fieldname":"m_cbPendingUnreliable", "fieldtype":"int" }, + { "fieldname":"m_cbPendingReliable", "fieldtype":"int" }, + { "fieldname":"m_cbSentUnackedReliable", "fieldtype":"int" }, + { "fieldname":"m_usecQueueTime", "fieldtype":"SteamNetworkingMicroseconds" }, + { "fieldname":"reserved", "fieldtype":"uint32 [16]" } + ], + "struct": "SteamNetworkingQuickConnectionStatus" + }, + { + "fields": [ + { "fieldname":"m_pData", "fieldtype":"void *" }, + { "fieldname":"m_cbSize", "fieldtype":"int" }, + { "fieldname":"m_conn", "fieldtype":"HSteamNetConnection" }, + { "fieldname":"m_identityPeer", "fieldtype":"SteamNetworkingIdentity" }, + { "fieldname":"m_nConnUserData", "fieldtype":"int64" }, + { "fieldname":"m_usecTimeReceived", "fieldtype":"SteamNetworkingMicroseconds" }, + { "fieldname":"m_nMessageNumber", "fieldtype":"int64" }, + { "fieldname":"m_pfnFreeData", "fieldtype":"void (*)(SteamNetworkingMessage_t *)" }, + { "fieldname":"m_pfnRelease", "fieldtype":"void (*)(SteamNetworkingMessage_t *)" }, + { "fieldname":"m_nChannel", "fieldtype":"int" }, + { "fieldname":"m_nFlags", "fieldtype":"int" }, + { "fieldname":"m_nUserData", "fieldtype":"int64" } + ], + "methods": [ + { + "methodname": "Release", + "methodname_flat": "SteamAPI_SteamNetworkingMessage_t_Release", + "params": [], + "returntype": "void" + } + ], + "struct": "SteamNetworkingMessage_t" + }, + { + "fields": [ + { "fieldname":"m_data", "fieldtype":"uint8 [512]" } + ], + "struct": "SteamNetworkPingLocation_t" + }, + { + "fields": [ + { "fieldname":"m_eValue", "fieldtype":"ESteamNetworkingConfigValue" }, + { "fieldname":"m_eDataType", "fieldtype":"ESteamNetworkingConfigDataType" }, + { "fieldname":"m_int64", "fieldtype":"int64_t" } + ], + "methods": [ + { + "methodname": "SetInt32", + "methodname_flat": "SteamAPI_SteamNetworkingConfigValue_t_SetInt32", + "params": [ + { "paramname":"eVal", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"data", "paramtype":"int32_t" } + ], + "returntype": "void" + }, + { + "methodname": "SetInt64", + "methodname_flat": "SteamAPI_SteamNetworkingConfigValue_t_SetInt64", + "params": [ + { "paramname":"eVal", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"data", "paramtype":"int64_t" } + ], + "returntype": "void" + }, + { + "methodname": "SetFloat", + "methodname_flat": "SteamAPI_SteamNetworkingConfigValue_t_SetFloat", + "params": [ + { "paramname":"eVal", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"data", "paramtype":"float" } + ], + "returntype": "void" + }, + { + "methodname": "SetPtr", + "methodname_flat": "SteamAPI_SteamNetworkingConfigValue_t_SetPtr", + "params": [ + { "paramname":"eVal", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"data", "paramtype":"void *" } + ], + "returntype": "void" + }, + { + "methodname": "SetString", + "methodname_flat": "SteamAPI_SteamNetworkingConfigValue_t_SetString", + "params": [ + { "paramname":"eVal", "paramtype":"ESteamNetworkingConfigValue" }, + { "paramname":"data", "paramtype":"const char *" } + ], + "returntype": "void" + } + ], + "struct": "SteamNetworkingConfigValue_t" + }, + { + "fields": [ + { + "fieldname": "buf", + "fieldtype": "char [8]", + "private": true + } + ], + "methods": [ + { + "methodname": "c_str", + "methodname_flat": "SteamAPI_SteamNetworkingPOPIDRender_c_str", + "params": [], + "returntype": "const char *" + } + ], + "struct": "SteamNetworkingPOPIDRender" + }, + { + "fields": [ + { + "fieldname": "buf", + "fieldtype": "char [128]", + "private": true + } + ], + "methods": [ + { + "methodname": "c_str", + "methodname_flat": "SteamAPI_SteamNetworkingIdentityRender_c_str", + "params": [], + "returntype": "const char *" + } + ], + "struct": "SteamNetworkingIdentityRender" + }, + { + "fields": [ + { + "fieldname": "buf", + "fieldtype": "char [48]", + "private": true + } + ], + "methods": [ + { + "methodname": "c_str", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddrRender_c_str", + "params": [], + "returntype": "const char *" + } + ], + "struct": "SteamNetworkingIPAddrRender" + }, + { + "fields": [ + { "fieldname":"m_cbSize", "fieldtype":"int" }, + { "fieldname":"m_data", "fieldtype":"char [128]" } + ], + "methods": [ + { + "methodname": "Clear", + "methodname_flat": "SteamAPI_SteamDatagramHostedAddress_Clear", + "params": [], + "returntype": "void" + }, + { + "methodname": "GetPopID", + "methodname_flat": "SteamAPI_SteamDatagramHostedAddress_GetPopID", + "params": [], + "returntype": "SteamNetworkingPOPID" + }, + { + "methodname": "SetDevAddress", + "methodname_flat": "SteamAPI_SteamDatagramHostedAddress_SetDevAddress", + "params": [ + { "paramname":"nIP", "paramtype":"uint32" }, + { "paramname":"nPort", "paramtype":"uint16" }, + { "paramname":"popid", "paramtype":"SteamNetworkingPOPID" } + ], + "returntype": "void" + } + ], + "struct": "SteamDatagramHostedAddress" + }, + { + "fields": [ + { "fieldname":"m_identity", "fieldtype":"SteamNetworkingIdentity" }, + { "fieldname":"m_routing", "fieldtype":"SteamDatagramHostedAddress" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" }, + { "fieldname":"m_rtime", "fieldtype":"RTime32" }, + { "fieldname":"m_cbAppData", "fieldtype":"int" }, + { "fieldname":"m_appData", "fieldtype":"char [2048]" } + ], + "struct": "SteamDatagramGameCoordinatorServerLogin" + } + ], + "typedefs": [ + { "typedef":"uint8", "type":"unsigned char" }, + { "typedef":"int8", "type":"signed char" }, + { "typedef":"int16", "type":"short" }, + { "typedef":"uint16", "type":"unsigned short" }, + { "typedef":"int32", "type":"int" }, + { "typedef":"uint32", "type":"unsigned int" }, + { "typedef":"int64", "type":"long long" }, + { "typedef":"uint64", "type":"unsigned long long" }, + { "typedef":"lint64", "type":"long long" }, + { "typedef":"ulint64", "type":"unsigned long long" }, + { "typedef":"intp", "type":"long long" }, + { "typedef":"uintp", "type":"unsigned long long" }, + { "typedef":"Salt_t", "type":"unsigned char [8]" }, + { "typedef":"GID_t", "type":"unsigned long long" }, + { "typedef":"JobID_t", "type":"unsigned long long" }, + { "typedef":"TxnID_t", "type":"unsigned long long" }, + { "typedef":"PackageId_t", "type":"unsigned int" }, + { "typedef":"BundleId_t", "type":"unsigned int" }, + { "typedef":"AppId_t", "type":"unsigned int" }, + { "typedef":"AssetClassId_t", "type":"unsigned long long" }, + { "typedef":"PhysicalItemId_t", "type":"unsigned int" }, + { "typedef":"DepotId_t", "type":"unsigned int" }, + { "typedef":"RTime32", "type":"unsigned int" }, + { "typedef":"CellID_t", "type":"unsigned int" }, + { "typedef":"SteamAPICall_t", "type":"unsigned long long" }, + { "typedef":"AccountID_t", "type":"unsigned int" }, + { "typedef":"PartnerId_t", "type":"unsigned int" }, + { "typedef":"ManifestId_t", "type":"unsigned long long" }, + { "typedef":"SiteId_t", "type":"unsigned long long" }, + { "typedef":"PartyBeaconID_t", "type":"unsigned long long" }, + { "typedef":"HAuthTicket", "type":"unsigned int" }, + { "typedef":"PFNLegacyKeyRegistration", "type":"void (*)(const char *, const char *)" }, + { "typedef":"PFNLegacyKeyInstalled", "type":"bool (*)()" }, + { "typedef":"PFNPreMinidumpCallback", "type":"void (*)(void *)" }, + { "typedef":"BREAKPAD_HANDLE", "type":"void *" }, + { "typedef":"HSteamPipe", "type":"int" }, + { "typedef":"HSteamUser", "type":"int" }, + { "typedef":"FriendsGroupID_t", "type":"short" }, + { "typedef":"HServerListRequest", "type":"void *" }, + { "typedef":"HServerQuery", "type":"int" }, + { "typedef":"UGCHandle_t", "type":"unsigned long long" }, + { "typedef":"PublishedFileUpdateHandle_t", "type":"unsigned long long" }, + { "typedef":"PublishedFileId_t", "type":"unsigned long long" }, + { "typedef":"UGCFileWriteStreamHandle_t", "type":"unsigned long long" }, + { "typedef":"SteamLeaderboard_t", "type":"unsigned long long" }, + { "typedef":"SteamLeaderboardEntries_t", "type":"unsigned long long" }, + { "typedef":"SNetSocket_t", "type":"unsigned int" }, + { "typedef":"SNetListenSocket_t", "type":"unsigned int" }, + { "typedef":"ScreenshotHandle", "type":"unsigned int" }, + { "typedef":"HTTPRequestHandle", "type":"unsigned int" }, + { "typedef":"HTTPCookieContainerHandle", "type":"unsigned int" }, + { "typedef":"InputHandle_t", "type":"unsigned long long" }, + { "typedef":"InputActionSetHandle_t", "type":"unsigned long long" }, + { "typedef":"InputDigitalActionHandle_t", "type":"unsigned long long" }, + { "typedef":"InputAnalogActionHandle_t", "type":"unsigned long long" }, + { "typedef":"ControllerHandle_t", "type":"unsigned long long" }, + { "typedef":"ControllerActionSetHandle_t", "type":"unsigned long long" }, + { "typedef":"ControllerDigitalActionHandle_t", "type":"unsigned long long" }, + { "typedef":"ControllerAnalogActionHandle_t", "type":"unsigned long long" }, + { "typedef":"UGCQueryHandle_t", "type":"unsigned long long" }, + { "typedef":"UGCUpdateHandle_t", "type":"unsigned long long" }, + { "typedef":"HHTMLBrowser", "type":"unsigned int" }, + { "typedef":"SteamItemInstanceID_t", "type":"unsigned long long" }, + { "typedef":"SteamItemDef_t", "type":"int" }, + { "typedef":"SteamInventoryResult_t", "type":"int" }, + { "typedef":"SteamInventoryUpdateHandle_t", "type":"unsigned long long" }, + { "typedef":"RemotePlaySessionID_t", "type":"unsigned int" }, + { "typedef":"FnSteamNetConnectionStatusChanged", "type":"void (*)(SteamNetConnectionStatusChangedCallback_t *)" }, + { "typedef":"FnSteamNetAuthenticationStatusChanged", "type":"void (*)(SteamNetAuthenticationStatus_t *)" }, + { "typedef":"FnSteamRelayNetworkStatusChanged", "type":"void (*)(SteamRelayNetworkStatus_t *)" }, + { "typedef":"FnSteamNetworkingMessagesSessionRequest", "type":"void (*)(SteamNetworkingMessagesSessionRequest_t *)" }, + { "typedef":"FnSteamNetworkingMessagesSessionFailed", "type":"void (*)(SteamNetworkingMessagesSessionFailed_t *)" }, + { "typedef":"HSteamNetConnection", "type":"unsigned int" }, + { "typedef":"HSteamListenSocket", "type":"unsigned int" }, + { "typedef":"HSteamNetPollGroup", "type":"unsigned int" }, + { "typedef":"SteamNetworkingErrMsg", "type":"char [1024]" }, + { "typedef":"SteamNetworkingPOPID", "type":"unsigned int" }, + { "typedef":"SteamNetworkingMicroseconds", "type":"long long" }, + { "typedef":"FSteamNetworkingSocketsDebugOutput", "type":"void (*)(ESteamNetworkingSocketsDebugOutputType, const char *)" } + ] +} diff --git a/lib/steam/public/steam/steam_api_common.h b/lib/steam/public/steam/steam_api_common.h new file mode 100644 index 0000000..7620a8d --- /dev/null +++ b/lib/steam/public/steam/steam_api_common.h @@ -0,0 +1,235 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== +// +// Steamworks SDK minimal include +// +// Defines the minimal set of things we need to use any single interface +// or register for any callback. +// +//============================================================================= + +#ifndef STEAM_API_COMMON_H +#define STEAM_API_COMMON_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steamtypes.h" +#include "steamclientpublic.h" + +// S_API defines the linkage and calling conventions for steam_api.dll exports +#if defined( _WIN32 ) && !defined( _X360 ) + #if defined( STEAM_API_EXPORTS ) + #define S_API extern "C" __declspec( dllexport ) + #elif defined( STEAM_API_NODLL ) + #define S_API extern "C" + #else + #define S_API extern "C" __declspec( dllimport ) + #endif // STEAM_API_EXPORTS +#elif defined( GNUC ) + #if defined( STEAM_API_EXPORTS ) + #define S_API extern "C" __attribute__ ((visibility("default"))) + #else + #define S_API extern "C" + #endif // STEAM_API_EXPORTS +#else // !WIN32 + #if defined( STEAM_API_EXPORTS ) + #define S_API extern "C" + #else + #define S_API extern "C" + #endif // STEAM_API_EXPORTS +#endif + +#if ( defined(STEAM_API_EXPORTS) || defined(STEAM_API_NODLL) ) && !defined(API_GEN) +#define STEAM_PRIVATE_API( ... ) __VA_ARGS__ +#elif defined(STEAM_API_EXPORTS) && defined(API_GEN) +#define STEAM_PRIVATE_API( ... ) +#else +#define STEAM_PRIVATE_API( ... ) protected: __VA_ARGS__ public: +#endif + +// handle to a communication pipe to the Steam client +typedef int32 HSteamPipe; +// handle to single instance of a steam user +typedef int32 HSteamUser; +// function prototype +#if defined( POSIX ) +#define __cdecl +#endif +extern "C" typedef void (__cdecl *SteamAPIWarningMessageHook_t)(int, const char *); +extern "C" typedef uint32 ( *SteamAPI_CheckCallbackRegistered_t )( int iCallbackNum ); +#if defined( __SNC__ ) + #pragma diag_suppress=1700 // warning 1700: class "%s" has virtual functions but non-virtual destructor +#endif + +//----------------------------------------------------------------------------------------------------------------------------------------------------------// +// steam callback and call-result helpers +// +// The following macros and classes are used to register your application for +// callbacks and call-results, which are delivered in a predictable manner. +// +// STEAM_CALLBACK macros are meant for use inside of a C++ class definition. +// They map a Steam notification callback directly to a class member function +// which is automatically prototyped as "void func( callback_type *pParam )". +// +// CCallResult is used with specific Steam APIs that return "result handles". +// The handle can be passed to a CCallResult object's Set function, along with +// an object pointer and member-function pointer. The member function will +// be executed once the results of the Steam API call are available. +// +// CCallback and CCallbackManual classes can be used instead of STEAM_CALLBACK +// macros if you require finer control over registration and unregistration. +// +// Callbacks and call-results are queued automatically and are only +// delivered/executed when your application calls SteamAPI_RunCallbacks(). +// +// Note that there is an alternative, lower level callback dispatch mechanism. +// See SteamAPI_ManualDispatch_Init +//----------------------------------------------------------------------------------------------------------------------------------------------------------// + +// Dispatch all queued Steamworks callbacks. +// +// This is safe to call from multiple threads simultaneously, +// but if you choose to do this, callback code could be executed on any thread. +// One alternative is to call SteamAPI_RunCallbacks from the main thread only, +// and call SteamAPI_ReleaseCurrentThreadMemory regularly on other threads. +S_API void S_CALLTYPE SteamAPI_RunCallbacks(); + +// Declares a callback member function plus a helper member variable which +// registers the callback on object creation and unregisters on destruction. +// The optional fourth 'var' param exists only for backwards-compatibility +// and can be ignored. +#define STEAM_CALLBACK( thisclass, func, .../*callback_type, [deprecated] var*/ ) \ + _STEAM_CALLBACK_SELECT( ( __VA_ARGS__, 4, 3 ), ( /**/, thisclass, func, __VA_ARGS__ ) ) + +// Declares a callback function and a named CCallbackManual variable which +// has Register and Unregister functions instead of automatic registration. +#define STEAM_CALLBACK_MANUAL( thisclass, func, callback_type, var ) \ + CCallbackManual< thisclass, callback_type > var; void func( callback_type *pParam ) + +// Dispatch callbacks relevant to the gameserver client and interfaces. +// To register for these, you need to use STEAM_GAMESERVER_CALLBACK. +// (Or call SetGameserverFlag on your CCallbackBase object.) +S_API void S_CALLTYPE SteamGameServer_RunCallbacks(); + +// Same as STEAM_CALLBACK, but for callbacks on the gameserver interface. +// These will be dispatched during SteamGameServer_RunCallbacks +#define STEAM_GAMESERVER_CALLBACK( thisclass, func, /*callback_type, [deprecated] var*/... ) \ + _STEAM_CALLBACK_SELECT( ( __VA_ARGS__, GS, 3 ), ( this->SetGameserverFlag();, thisclass, func, __VA_ARGS__ ) ) +#define STEAM_GAMESERVER_CALLBACK_MANUAL( thisclass, func, callback_type, var ) \ + CCallbackManual< thisclass, callback_type, true > var; void func( callback_type *pParam ) + +//----------------------------------------------------------------------------- +// Purpose: base for callbacks and call results - internal implementation detail +//----------------------------------------------------------------------------- +class CCallbackBase +{ +public: + CCallbackBase() { m_nCallbackFlags = 0; m_iCallback = 0; } + // don't add a virtual destructor because we export this binary interface across dll's + virtual void Run( void *pvParam ) = 0; + virtual void Run( void *pvParam, bool bIOFailure, SteamAPICall_t hSteamAPICall ) = 0; + int GetICallback() { return m_iCallback; } + virtual int GetCallbackSizeBytes() = 0; + +protected: + enum { k_ECallbackFlagsRegistered = 0x01, k_ECallbackFlagsGameServer = 0x02 }; + uint8 m_nCallbackFlags; + int m_iCallback; + friend class CCallbackMgr; + +private: + CCallbackBase( const CCallbackBase& ); + CCallbackBase& operator=( const CCallbackBase& ); +}; + +//----------------------------------------------------------------------------- +// Purpose: templated base for callbacks - internal implementation detail +//----------------------------------------------------------------------------- +template< int sizeof_P > +class CCallbackImpl : protected CCallbackBase +{ +public: + virtual ~CCallbackImpl() { if ( m_nCallbackFlags & k_ECallbackFlagsRegistered ) SteamAPI_UnregisterCallback( this ); } + void SetGameserverFlag() { m_nCallbackFlags |= k_ECallbackFlagsGameServer; } + +protected: + friend class CCallbackMgr; + virtual void Run( void *pvParam ) = 0; + virtual void Run( void *pvParam, bool /*bIOFailure*/, SteamAPICall_t /*hSteamAPICall*/ ) { Run( pvParam ); } + virtual int GetCallbackSizeBytes() { return sizeof_P; } +}; + + +//----------------------------------------------------------------------------- +// Purpose: maps a steam async call result to a class member function +// template params: T = local class, P = parameter struct +//----------------------------------------------------------------------------- +template< class T, class P > +class CCallResult : private CCallbackBase +{ +public: + typedef void (T::*func_t)( P*, bool ); + + CCallResult(); + ~CCallResult(); + + void Set( SteamAPICall_t hAPICall, T *p, func_t func ); + bool IsActive() const; + void Cancel(); + + void SetGameserverFlag() { m_nCallbackFlags |= k_ECallbackFlagsGameServer; } +private: + virtual void Run( void *pvParam ); + virtual void Run( void *pvParam, bool bIOFailure, SteamAPICall_t hSteamAPICall ); + virtual int GetCallbackSizeBytes() { return sizeof( P ); } + + SteamAPICall_t m_hAPICall; + T *m_pObj; + func_t m_Func; +}; + + + +//----------------------------------------------------------------------------- +// Purpose: maps a steam callback to a class member function +// template params: T = local class, P = parameter struct, +// bGameserver = listen for gameserver callbacks instead of client callbacks +//----------------------------------------------------------------------------- +template< class T, class P, bool bGameserver = false > +class CCallback : public CCallbackImpl< sizeof( P ) > +{ +public: + typedef void (T::*func_t)(P*); + + // NOTE: If you can't provide the correct parameters at construction time, you should + // use the CCallbackManual callback object (STEAM_CALLBACK_MANUAL macro) instead. + CCallback( T *pObj, func_t func ); + + void Register( T *pObj, func_t func ); + void Unregister(); + +protected: + virtual void Run( void *pvParam ); + + T *m_pObj; + func_t m_Func; +}; + + +//----------------------------------------------------------------------------- +// Purpose: subclass of CCallback which allows default-construction in +// an unregistered state; you must call Register manually +//----------------------------------------------------------------------------- +template< class T, class P, bool bGameServer = false > +class CCallbackManual : public CCallback< T, P, bGameServer > +{ +public: + CCallbackManual() : CCallback< T, P, bGameServer >( nullptr, nullptr ) {} + + // Inherits public Register and Unregister functions from base class +}; + +// Internal implementation details for all of the above +#include "steam_api_internal.h" + +#endif // STEAM_API_COMMON_H diff --git a/lib/steam/public/steam/steam_api_flat.h b/lib/steam/public/steam/steam_api_flat.h new file mode 100644 index 0000000..c0571a9 --- /dev/null +++ b/lib/steam/public/steam/steam_api_flat.h @@ -0,0 +1,1088 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== +// +// Purpose: Header for "flat" SteamAPI. Use this for binding to other languages. +// This file is auto-generated, do not edit it. +// +//============================================================================= + +#ifndef STEAMAPIFLAT_H +#define STEAMAPIFLAT_H + +#include "steam/steam_api.h" +#include "steam/isteamgameserver.h" +#include "steam/isteamgameserverstats.h" + +typedef uint64 uint64_steamid; // Used when passing or returning CSteamID +typedef uint64 uint64_gameid; // Used when passing or return CGameID + + + +// ISteamClient +S_API HSteamPipe SteamAPI_ISteamClient_CreateSteamPipe( ISteamClient* self ); +S_API bool SteamAPI_ISteamClient_BReleaseSteamPipe( ISteamClient* self, HSteamPipe hSteamPipe ); +S_API HSteamUser SteamAPI_ISteamClient_ConnectToGlobalUser( ISteamClient* self, HSteamPipe hSteamPipe ); +S_API HSteamUser SteamAPI_ISteamClient_CreateLocalUser( ISteamClient* self, HSteamPipe * phSteamPipe, EAccountType eAccountType ); +S_API void SteamAPI_ISteamClient_ReleaseUser( ISteamClient* self, HSteamPipe hSteamPipe, HSteamUser hUser ); +S_API ISteamUser * SteamAPI_ISteamClient_GetISteamUser( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamGameServer * SteamAPI_ISteamClient_GetISteamGameServer( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API void SteamAPI_ISteamClient_SetLocalIPBinding( ISteamClient* self, const SteamIPAddress_t & unIP, uint16 usPort ); +S_API ISteamFriends * SteamAPI_ISteamClient_GetISteamFriends( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamUtils * SteamAPI_ISteamClient_GetISteamUtils( ISteamClient* self, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamMatchmaking * SteamAPI_ISteamClient_GetISteamMatchmaking( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamMatchmakingServers * SteamAPI_ISteamClient_GetISteamMatchmakingServers( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API void * SteamAPI_ISteamClient_GetISteamGenericInterface( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamUserStats * SteamAPI_ISteamClient_GetISteamUserStats( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamGameServerStats * SteamAPI_ISteamClient_GetISteamGameServerStats( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamApps * SteamAPI_ISteamClient_GetISteamApps( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamNetworking * SteamAPI_ISteamClient_GetISteamNetworking( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamRemoteStorage * SteamAPI_ISteamClient_GetISteamRemoteStorage( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamScreenshots * SteamAPI_ISteamClient_GetISteamScreenshots( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamGameSearch * SteamAPI_ISteamClient_GetISteamGameSearch( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API uint32 SteamAPI_ISteamClient_GetIPCCallCount( ISteamClient* self ); +S_API void SteamAPI_ISteamClient_SetWarningMessageHook( ISteamClient* self, SteamAPIWarningMessageHook_t pFunction ); +S_API bool SteamAPI_ISteamClient_BShutdownIfAllPipesClosed( ISteamClient* self ); +S_API ISteamHTTP * SteamAPI_ISteamClient_GetISteamHTTP( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamController * SteamAPI_ISteamClient_GetISteamController( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamUGC * SteamAPI_ISteamClient_GetISteamUGC( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamAppList * SteamAPI_ISteamClient_GetISteamAppList( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamMusic * SteamAPI_ISteamClient_GetISteamMusic( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamMusicRemote * SteamAPI_ISteamClient_GetISteamMusicRemote( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamHTMLSurface * SteamAPI_ISteamClient_GetISteamHTMLSurface( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamInventory * SteamAPI_ISteamClient_GetISteamInventory( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamVideo * SteamAPI_ISteamClient_GetISteamVideo( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamParentalSettings * SteamAPI_ISteamClient_GetISteamParentalSettings( ISteamClient* self, HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamInput * SteamAPI_ISteamClient_GetISteamInput( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamParties * SteamAPI_ISteamClient_GetISteamParties( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); +S_API ISteamRemotePlay * SteamAPI_ISteamClient_GetISteamRemotePlay( ISteamClient* self, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char * pchVersion ); + +// ISteamUser +S_API ISteamUser *SteamAPI_SteamUser_v021(); +S_API HSteamUser SteamAPI_ISteamUser_GetHSteamUser( ISteamUser* self ); +S_API bool SteamAPI_ISteamUser_BLoggedOn( ISteamUser* self ); +S_API uint64_steamid SteamAPI_ISteamUser_GetSteamID( ISteamUser* self ); +S_API int SteamAPI_ISteamUser_InitiateGameConnection( ISteamUser* self, void * pAuthBlob, int cbMaxAuthBlob, uint64_steamid steamIDGameServer, uint32 unIPServer, uint16 usPortServer, bool bSecure ); +S_API void SteamAPI_ISteamUser_TerminateGameConnection( ISteamUser* self, uint32 unIPServer, uint16 usPortServer ); +S_API void SteamAPI_ISteamUser_TrackAppUsageEvent( ISteamUser* self, uint64_gameid gameID, int eAppUsageEvent, const char * pchExtraInfo ); +S_API bool SteamAPI_ISteamUser_GetUserDataFolder( ISteamUser* self, char * pchBuffer, int cubBuffer ); +S_API void SteamAPI_ISteamUser_StartVoiceRecording( ISteamUser* self ); +S_API void SteamAPI_ISteamUser_StopVoiceRecording( ISteamUser* self ); +S_API EVoiceResult SteamAPI_ISteamUser_GetAvailableVoice( ISteamUser* self, uint32 * pcbCompressed, uint32 * pcbUncompressed_Deprecated, uint32 nUncompressedVoiceDesiredSampleRate_Deprecated ); +S_API EVoiceResult SteamAPI_ISteamUser_GetVoice( ISteamUser* self, bool bWantCompressed, void * pDestBuffer, uint32 cbDestBufferSize, uint32 * nBytesWritten, bool bWantUncompressed_Deprecated, void * pUncompressedDestBuffer_Deprecated, uint32 cbUncompressedDestBufferSize_Deprecated, uint32 * nUncompressBytesWritten_Deprecated, uint32 nUncompressedVoiceDesiredSampleRate_Deprecated ); +S_API EVoiceResult SteamAPI_ISteamUser_DecompressVoice( ISteamUser* self, const void * pCompressed, uint32 cbCompressed, void * pDestBuffer, uint32 cbDestBufferSize, uint32 * nBytesWritten, uint32 nDesiredSampleRate ); +S_API uint32 SteamAPI_ISteamUser_GetVoiceOptimalSampleRate( ISteamUser* self ); +S_API HAuthTicket SteamAPI_ISteamUser_GetAuthSessionTicket( ISteamUser* self, void * pTicket, int cbMaxTicket, uint32 * pcbTicket ); +S_API EBeginAuthSessionResult SteamAPI_ISteamUser_BeginAuthSession( ISteamUser* self, const void * pAuthTicket, int cbAuthTicket, uint64_steamid steamID ); +S_API void SteamAPI_ISteamUser_EndAuthSession( ISteamUser* self, uint64_steamid steamID ); +S_API void SteamAPI_ISteamUser_CancelAuthTicket( ISteamUser* self, HAuthTicket hAuthTicket ); +S_API EUserHasLicenseForAppResult SteamAPI_ISteamUser_UserHasLicenseForApp( ISteamUser* self, uint64_steamid steamID, AppId_t appID ); +S_API bool SteamAPI_ISteamUser_BIsBehindNAT( ISteamUser* self ); +S_API void SteamAPI_ISteamUser_AdvertiseGame( ISteamUser* self, uint64_steamid steamIDGameServer, uint32 unIPServer, uint16 usPortServer ); +S_API SteamAPICall_t SteamAPI_ISteamUser_RequestEncryptedAppTicket( ISteamUser* self, void * pDataToInclude, int cbDataToInclude ); +S_API bool SteamAPI_ISteamUser_GetEncryptedAppTicket( ISteamUser* self, void * pTicket, int cbMaxTicket, uint32 * pcbTicket ); +S_API int SteamAPI_ISteamUser_GetGameBadgeLevel( ISteamUser* self, int nSeries, bool bFoil ); +S_API int SteamAPI_ISteamUser_GetPlayerSteamLevel( ISteamUser* self ); +S_API SteamAPICall_t SteamAPI_ISteamUser_RequestStoreAuthURL( ISteamUser* self, const char * pchRedirectURL ); +S_API bool SteamAPI_ISteamUser_BIsPhoneVerified( ISteamUser* self ); +S_API bool SteamAPI_ISteamUser_BIsTwoFactorEnabled( ISteamUser* self ); +S_API bool SteamAPI_ISteamUser_BIsPhoneIdentifying( ISteamUser* self ); +S_API bool SteamAPI_ISteamUser_BIsPhoneRequiringVerification( ISteamUser* self ); +S_API SteamAPICall_t SteamAPI_ISteamUser_GetMarketEligibility( ISteamUser* self ); +S_API SteamAPICall_t SteamAPI_ISteamUser_GetDurationControl( ISteamUser* self ); +S_API bool SteamAPI_ISteamUser_BSetDurationControlOnlineState( ISteamUser* self, EDurationControlOnlineState eNewState ); + +// ISteamFriends +S_API ISteamFriends *SteamAPI_SteamFriends_v017(); +S_API const char * SteamAPI_ISteamFriends_GetPersonaName( ISteamFriends* self ); +S_API SteamAPICall_t SteamAPI_ISteamFriends_SetPersonaName( ISteamFriends* self, const char * pchPersonaName ); +S_API EPersonaState SteamAPI_ISteamFriends_GetPersonaState( ISteamFriends* self ); +S_API int SteamAPI_ISteamFriends_GetFriendCount( ISteamFriends* self, int iFriendFlags ); +S_API uint64_steamid SteamAPI_ISteamFriends_GetFriendByIndex( ISteamFriends* self, int iFriend, int iFriendFlags ); +S_API EFriendRelationship SteamAPI_ISteamFriends_GetFriendRelationship( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API EPersonaState SteamAPI_ISteamFriends_GetFriendPersonaState( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API const char * SteamAPI_ISteamFriends_GetFriendPersonaName( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API bool SteamAPI_ISteamFriends_GetFriendGamePlayed( ISteamFriends* self, uint64_steamid steamIDFriend, FriendGameInfo_t * pFriendGameInfo ); +S_API const char * SteamAPI_ISteamFriends_GetFriendPersonaNameHistory( ISteamFriends* self, uint64_steamid steamIDFriend, int iPersonaName ); +S_API int SteamAPI_ISteamFriends_GetFriendSteamLevel( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API const char * SteamAPI_ISteamFriends_GetPlayerNickname( ISteamFriends* self, uint64_steamid steamIDPlayer ); +S_API int SteamAPI_ISteamFriends_GetFriendsGroupCount( ISteamFriends* self ); +S_API FriendsGroupID_t SteamAPI_ISteamFriends_GetFriendsGroupIDByIndex( ISteamFriends* self, int iFG ); +S_API const char * SteamAPI_ISteamFriends_GetFriendsGroupName( ISteamFriends* self, FriendsGroupID_t friendsGroupID ); +S_API int SteamAPI_ISteamFriends_GetFriendsGroupMembersCount( ISteamFriends* self, FriendsGroupID_t friendsGroupID ); +S_API void SteamAPI_ISteamFriends_GetFriendsGroupMembersList( ISteamFriends* self, FriendsGroupID_t friendsGroupID, CSteamID * pOutSteamIDMembers, int nMembersCount ); +S_API bool SteamAPI_ISteamFriends_HasFriend( ISteamFriends* self, uint64_steamid steamIDFriend, int iFriendFlags ); +S_API int SteamAPI_ISteamFriends_GetClanCount( ISteamFriends* self ); +S_API uint64_steamid SteamAPI_ISteamFriends_GetClanByIndex( ISteamFriends* self, int iClan ); +S_API const char * SteamAPI_ISteamFriends_GetClanName( ISteamFriends* self, uint64_steamid steamIDClan ); +S_API const char * SteamAPI_ISteamFriends_GetClanTag( ISteamFriends* self, uint64_steamid steamIDClan ); +S_API bool SteamAPI_ISteamFriends_GetClanActivityCounts( ISteamFriends* self, uint64_steamid steamIDClan, int * pnOnline, int * pnInGame, int * pnChatting ); +S_API SteamAPICall_t SteamAPI_ISteamFriends_DownloadClanActivityCounts( ISteamFriends* self, CSteamID * psteamIDClans, int cClansToRequest ); +S_API int SteamAPI_ISteamFriends_GetFriendCountFromSource( ISteamFriends* self, uint64_steamid steamIDSource ); +S_API uint64_steamid SteamAPI_ISteamFriends_GetFriendFromSourceByIndex( ISteamFriends* self, uint64_steamid steamIDSource, int iFriend ); +S_API bool SteamAPI_ISteamFriends_IsUserInSource( ISteamFriends* self, uint64_steamid steamIDUser, uint64_steamid steamIDSource ); +S_API void SteamAPI_ISteamFriends_SetInGameVoiceSpeaking( ISteamFriends* self, uint64_steamid steamIDUser, bool bSpeaking ); +S_API void SteamAPI_ISteamFriends_ActivateGameOverlay( ISteamFriends* self, const char * pchDialog ); +S_API void SteamAPI_ISteamFriends_ActivateGameOverlayToUser( ISteamFriends* self, const char * pchDialog, uint64_steamid steamID ); +S_API void SteamAPI_ISteamFriends_ActivateGameOverlayToWebPage( ISteamFriends* self, const char * pchURL, EActivateGameOverlayToWebPageMode eMode ); +S_API void SteamAPI_ISteamFriends_ActivateGameOverlayToStore( ISteamFriends* self, AppId_t nAppID, EOverlayToStoreFlag eFlag ); +S_API void SteamAPI_ISteamFriends_SetPlayedWith( ISteamFriends* self, uint64_steamid steamIDUserPlayedWith ); +S_API void SteamAPI_ISteamFriends_ActivateGameOverlayInviteDialog( ISteamFriends* self, uint64_steamid steamIDLobby ); +S_API int SteamAPI_ISteamFriends_GetSmallFriendAvatar( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API int SteamAPI_ISteamFriends_GetMediumFriendAvatar( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API int SteamAPI_ISteamFriends_GetLargeFriendAvatar( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API bool SteamAPI_ISteamFriends_RequestUserInformation( ISteamFriends* self, uint64_steamid steamIDUser, bool bRequireNameOnly ); +S_API SteamAPICall_t SteamAPI_ISteamFriends_RequestClanOfficerList( ISteamFriends* self, uint64_steamid steamIDClan ); +S_API uint64_steamid SteamAPI_ISteamFriends_GetClanOwner( ISteamFriends* self, uint64_steamid steamIDClan ); +S_API int SteamAPI_ISteamFriends_GetClanOfficerCount( ISteamFriends* self, uint64_steamid steamIDClan ); +S_API uint64_steamid SteamAPI_ISteamFriends_GetClanOfficerByIndex( ISteamFriends* self, uint64_steamid steamIDClan, int iOfficer ); +S_API uint32 SteamAPI_ISteamFriends_GetUserRestrictions( ISteamFriends* self ); +S_API bool SteamAPI_ISteamFriends_SetRichPresence( ISteamFriends* self, const char * pchKey, const char * pchValue ); +S_API void SteamAPI_ISteamFriends_ClearRichPresence( ISteamFriends* self ); +S_API const char * SteamAPI_ISteamFriends_GetFriendRichPresence( ISteamFriends* self, uint64_steamid steamIDFriend, const char * pchKey ); +S_API int SteamAPI_ISteamFriends_GetFriendRichPresenceKeyCount( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API const char * SteamAPI_ISteamFriends_GetFriendRichPresenceKeyByIndex( ISteamFriends* self, uint64_steamid steamIDFriend, int iKey ); +S_API void SteamAPI_ISteamFriends_RequestFriendRichPresence( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API bool SteamAPI_ISteamFriends_InviteUserToGame( ISteamFriends* self, uint64_steamid steamIDFriend, const char * pchConnectString ); +S_API int SteamAPI_ISteamFriends_GetCoplayFriendCount( ISteamFriends* self ); +S_API uint64_steamid SteamAPI_ISteamFriends_GetCoplayFriend( ISteamFriends* self, int iCoplayFriend ); +S_API int SteamAPI_ISteamFriends_GetFriendCoplayTime( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API AppId_t SteamAPI_ISteamFriends_GetFriendCoplayGame( ISteamFriends* self, uint64_steamid steamIDFriend ); +S_API SteamAPICall_t SteamAPI_ISteamFriends_JoinClanChatRoom( ISteamFriends* self, uint64_steamid steamIDClan ); +S_API bool SteamAPI_ISteamFriends_LeaveClanChatRoom( ISteamFriends* self, uint64_steamid steamIDClan ); +S_API int SteamAPI_ISteamFriends_GetClanChatMemberCount( ISteamFriends* self, uint64_steamid steamIDClan ); +S_API uint64_steamid SteamAPI_ISteamFriends_GetChatMemberByIndex( ISteamFriends* self, uint64_steamid steamIDClan, int iUser ); +S_API bool SteamAPI_ISteamFriends_SendClanChatMessage( ISteamFriends* self, uint64_steamid steamIDClanChat, const char * pchText ); +S_API int SteamAPI_ISteamFriends_GetClanChatMessage( ISteamFriends* self, uint64_steamid steamIDClanChat, int iMessage, void * prgchText, int cchTextMax, EChatEntryType * peChatEntryType, CSteamID * psteamidChatter ); +S_API bool SteamAPI_ISteamFriends_IsClanChatAdmin( ISteamFriends* self, uint64_steamid steamIDClanChat, uint64_steamid steamIDUser ); +S_API bool SteamAPI_ISteamFriends_IsClanChatWindowOpenInSteam( ISteamFriends* self, uint64_steamid steamIDClanChat ); +S_API bool SteamAPI_ISteamFriends_OpenClanChatWindowInSteam( ISteamFriends* self, uint64_steamid steamIDClanChat ); +S_API bool SteamAPI_ISteamFriends_CloseClanChatWindowInSteam( ISteamFriends* self, uint64_steamid steamIDClanChat ); +S_API bool SteamAPI_ISteamFriends_SetListenForFriendsMessages( ISteamFriends* self, bool bInterceptEnabled ); +S_API bool SteamAPI_ISteamFriends_ReplyToFriendMessage( ISteamFriends* self, uint64_steamid steamIDFriend, const char * pchMsgToSend ); +S_API int SteamAPI_ISteamFriends_GetFriendMessage( ISteamFriends* self, uint64_steamid steamIDFriend, int iMessageID, void * pvData, int cubData, EChatEntryType * peChatEntryType ); +S_API SteamAPICall_t SteamAPI_ISteamFriends_GetFollowerCount( ISteamFriends* self, uint64_steamid steamID ); +S_API SteamAPICall_t SteamAPI_ISteamFriends_IsFollowing( ISteamFriends* self, uint64_steamid steamID ); +S_API SteamAPICall_t SteamAPI_ISteamFriends_EnumerateFollowingList( ISteamFriends* self, uint32 unStartIndex ); +S_API bool SteamAPI_ISteamFriends_IsClanPublic( ISteamFriends* self, uint64_steamid steamIDClan ); +S_API bool SteamAPI_ISteamFriends_IsClanOfficialGameGroup( ISteamFriends* self, uint64_steamid steamIDClan ); +S_API int SteamAPI_ISteamFriends_GetNumChatsWithUnreadPriorityMessages( ISteamFriends* self ); +S_API void SteamAPI_ISteamFriends_ActivateGameOverlayRemotePlayTogetherInviteDialog( ISteamFriends* self, uint64_steamid steamIDLobby ); +S_API bool SteamAPI_ISteamFriends_RegisterProtocolInOverlayBrowser( ISteamFriends* self, const char * pchProtocol ); +S_API void SteamAPI_ISteamFriends_ActivateGameOverlayInviteDialogConnectString( ISteamFriends* self, const char * pchConnectString ); + +// ISteamUtils +S_API ISteamUtils *SteamAPI_SteamUtils_v010(); +S_API ISteamUtils *SteamAPI_SteamGameServerUtils_v010(); +S_API uint32 SteamAPI_ISteamUtils_GetSecondsSinceAppActive( ISteamUtils* self ); +S_API uint32 SteamAPI_ISteamUtils_GetSecondsSinceComputerActive( ISteamUtils* self ); +S_API EUniverse SteamAPI_ISteamUtils_GetConnectedUniverse( ISteamUtils* self ); +S_API uint32 SteamAPI_ISteamUtils_GetServerRealTime( ISteamUtils* self ); +S_API const char * SteamAPI_ISteamUtils_GetIPCountry( ISteamUtils* self ); +S_API bool SteamAPI_ISteamUtils_GetImageSize( ISteamUtils* self, int iImage, uint32 * pnWidth, uint32 * pnHeight ); +S_API bool SteamAPI_ISteamUtils_GetImageRGBA( ISteamUtils* self, int iImage, uint8 * pubDest, int nDestBufferSize ); +S_API uint8 SteamAPI_ISteamUtils_GetCurrentBatteryPower( ISteamUtils* self ); +S_API uint32 SteamAPI_ISteamUtils_GetAppID( ISteamUtils* self ); +S_API void SteamAPI_ISteamUtils_SetOverlayNotificationPosition( ISteamUtils* self, ENotificationPosition eNotificationPosition ); +S_API bool SteamAPI_ISteamUtils_IsAPICallCompleted( ISteamUtils* self, SteamAPICall_t hSteamAPICall, bool * pbFailed ); +S_API ESteamAPICallFailure SteamAPI_ISteamUtils_GetAPICallFailureReason( ISteamUtils* self, SteamAPICall_t hSteamAPICall ); +S_API bool SteamAPI_ISteamUtils_GetAPICallResult( ISteamUtils* self, SteamAPICall_t hSteamAPICall, void * pCallback, int cubCallback, int iCallbackExpected, bool * pbFailed ); +S_API uint32 SteamAPI_ISteamUtils_GetIPCCallCount( ISteamUtils* self ); +S_API void SteamAPI_ISteamUtils_SetWarningMessageHook( ISteamUtils* self, SteamAPIWarningMessageHook_t pFunction ); +S_API bool SteamAPI_ISteamUtils_IsOverlayEnabled( ISteamUtils* self ); +S_API bool SteamAPI_ISteamUtils_BOverlayNeedsPresent( ISteamUtils* self ); +S_API SteamAPICall_t SteamAPI_ISteamUtils_CheckFileSignature( ISteamUtils* self, const char * szFileName ); +S_API bool SteamAPI_ISteamUtils_ShowGamepadTextInput( ISteamUtils* self, EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, const char * pchDescription, uint32 unCharMax, const char * pchExistingText ); +S_API uint32 SteamAPI_ISteamUtils_GetEnteredGamepadTextLength( ISteamUtils* self ); +S_API bool SteamAPI_ISteamUtils_GetEnteredGamepadTextInput( ISteamUtils* self, char * pchText, uint32 cchText ); +S_API const char * SteamAPI_ISteamUtils_GetSteamUILanguage( ISteamUtils* self ); +S_API bool SteamAPI_ISteamUtils_IsSteamRunningInVR( ISteamUtils* self ); +S_API void SteamAPI_ISteamUtils_SetOverlayNotificationInset( ISteamUtils* self, int nHorizontalInset, int nVerticalInset ); +S_API bool SteamAPI_ISteamUtils_IsSteamInBigPictureMode( ISteamUtils* self ); +S_API void SteamAPI_ISteamUtils_StartVRDashboard( ISteamUtils* self ); +S_API bool SteamAPI_ISteamUtils_IsVRHeadsetStreamingEnabled( ISteamUtils* self ); +S_API void SteamAPI_ISteamUtils_SetVRHeadsetStreamingEnabled( ISteamUtils* self, bool bEnabled ); +S_API bool SteamAPI_ISteamUtils_IsSteamChinaLauncher( ISteamUtils* self ); +S_API bool SteamAPI_ISteamUtils_InitFilterText( ISteamUtils* self, uint32 unFilterOptions ); +S_API int SteamAPI_ISteamUtils_FilterText( ISteamUtils* self, ETextFilteringContext eContext, uint64_steamid sourceSteamID, const char * pchInputMessage, char * pchOutFilteredText, uint32 nByteSizeOutFilteredText ); +S_API ESteamIPv6ConnectivityState SteamAPI_ISteamUtils_GetIPv6ConnectivityState( ISteamUtils* self, ESteamIPv6ConnectivityProtocol eProtocol ); + +// ISteamMatchmaking +S_API ISteamMatchmaking *SteamAPI_SteamMatchmaking_v009(); +S_API int SteamAPI_ISteamMatchmaking_GetFavoriteGameCount( ISteamMatchmaking* self ); +S_API bool SteamAPI_ISteamMatchmaking_GetFavoriteGame( ISteamMatchmaking* self, int iGame, AppId_t * pnAppID, uint32 * pnIP, uint16 * pnConnPort, uint16 * pnQueryPort, uint32 * punFlags, uint32 * pRTime32LastPlayedOnServer ); +S_API int SteamAPI_ISteamMatchmaking_AddFavoriteGame( ISteamMatchmaking* self, AppId_t nAppID, uint32 nIP, uint16 nConnPort, uint16 nQueryPort, uint32 unFlags, uint32 rTime32LastPlayedOnServer ); +S_API bool SteamAPI_ISteamMatchmaking_RemoveFavoriteGame( ISteamMatchmaking* self, AppId_t nAppID, uint32 nIP, uint16 nConnPort, uint16 nQueryPort, uint32 unFlags ); +S_API SteamAPICall_t SteamAPI_ISteamMatchmaking_RequestLobbyList( ISteamMatchmaking* self ); +S_API void SteamAPI_ISteamMatchmaking_AddRequestLobbyListStringFilter( ISteamMatchmaking* self, const char * pchKeyToMatch, const char * pchValueToMatch, ELobbyComparison eComparisonType ); +S_API void SteamAPI_ISteamMatchmaking_AddRequestLobbyListNumericalFilter( ISteamMatchmaking* self, const char * pchKeyToMatch, int nValueToMatch, ELobbyComparison eComparisonType ); +S_API void SteamAPI_ISteamMatchmaking_AddRequestLobbyListNearValueFilter( ISteamMatchmaking* self, const char * pchKeyToMatch, int nValueToBeCloseTo ); +S_API void SteamAPI_ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable( ISteamMatchmaking* self, int nSlotsAvailable ); +S_API void SteamAPI_ISteamMatchmaking_AddRequestLobbyListDistanceFilter( ISteamMatchmaking* self, ELobbyDistanceFilter eLobbyDistanceFilter ); +S_API void SteamAPI_ISteamMatchmaking_AddRequestLobbyListResultCountFilter( ISteamMatchmaking* self, int cMaxResults ); +S_API void SteamAPI_ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter( ISteamMatchmaking* self, uint64_steamid steamIDLobby ); +S_API uint64_steamid SteamAPI_ISteamMatchmaking_GetLobbyByIndex( ISteamMatchmaking* self, int iLobby ); +S_API SteamAPICall_t SteamAPI_ISteamMatchmaking_CreateLobby( ISteamMatchmaking* self, ELobbyType eLobbyType, int cMaxMembers ); +S_API SteamAPICall_t SteamAPI_ISteamMatchmaking_JoinLobby( ISteamMatchmaking* self, uint64_steamid steamIDLobby ); +S_API void SteamAPI_ISteamMatchmaking_LeaveLobby( ISteamMatchmaking* self, uint64_steamid steamIDLobby ); +S_API bool SteamAPI_ISteamMatchmaking_InviteUserToLobby( ISteamMatchmaking* self, uint64_steamid steamIDLobby, uint64_steamid steamIDInvitee ); +S_API int SteamAPI_ISteamMatchmaking_GetNumLobbyMembers( ISteamMatchmaking* self, uint64_steamid steamIDLobby ); +S_API uint64_steamid SteamAPI_ISteamMatchmaking_GetLobbyMemberByIndex( ISteamMatchmaking* self, uint64_steamid steamIDLobby, int iMember ); +S_API const char * SteamAPI_ISteamMatchmaking_GetLobbyData( ISteamMatchmaking* self, uint64_steamid steamIDLobby, const char * pchKey ); +S_API bool SteamAPI_ISteamMatchmaking_SetLobbyData( ISteamMatchmaking* self, uint64_steamid steamIDLobby, const char * pchKey, const char * pchValue ); +S_API int SteamAPI_ISteamMatchmaking_GetLobbyDataCount( ISteamMatchmaking* self, uint64_steamid steamIDLobby ); +S_API bool SteamAPI_ISteamMatchmaking_GetLobbyDataByIndex( ISteamMatchmaking* self, uint64_steamid steamIDLobby, int iLobbyData, char * pchKey, int cchKeyBufferSize, char * pchValue, int cchValueBufferSize ); +S_API bool SteamAPI_ISteamMatchmaking_DeleteLobbyData( ISteamMatchmaking* self, uint64_steamid steamIDLobby, const char * pchKey ); +S_API const char * SteamAPI_ISteamMatchmaking_GetLobbyMemberData( ISteamMatchmaking* self, uint64_steamid steamIDLobby, uint64_steamid steamIDUser, const char * pchKey ); +S_API void SteamAPI_ISteamMatchmaking_SetLobbyMemberData( ISteamMatchmaking* self, uint64_steamid steamIDLobby, const char * pchKey, const char * pchValue ); +S_API bool SteamAPI_ISteamMatchmaking_SendLobbyChatMsg( ISteamMatchmaking* self, uint64_steamid steamIDLobby, const void * pvMsgBody, int cubMsgBody ); +S_API int SteamAPI_ISteamMatchmaking_GetLobbyChatEntry( ISteamMatchmaking* self, uint64_steamid steamIDLobby, int iChatID, CSteamID * pSteamIDUser, void * pvData, int cubData, EChatEntryType * peChatEntryType ); +S_API bool SteamAPI_ISteamMatchmaking_RequestLobbyData( ISteamMatchmaking* self, uint64_steamid steamIDLobby ); +S_API void SteamAPI_ISteamMatchmaking_SetLobbyGameServer( ISteamMatchmaking* self, uint64_steamid steamIDLobby, uint32 unGameServerIP, uint16 unGameServerPort, uint64_steamid steamIDGameServer ); +S_API bool SteamAPI_ISteamMatchmaking_GetLobbyGameServer( ISteamMatchmaking* self, uint64_steamid steamIDLobby, uint32 * punGameServerIP, uint16 * punGameServerPort, CSteamID * psteamIDGameServer ); +S_API bool SteamAPI_ISteamMatchmaking_SetLobbyMemberLimit( ISteamMatchmaking* self, uint64_steamid steamIDLobby, int cMaxMembers ); +S_API int SteamAPI_ISteamMatchmaking_GetLobbyMemberLimit( ISteamMatchmaking* self, uint64_steamid steamIDLobby ); +S_API bool SteamAPI_ISteamMatchmaking_SetLobbyType( ISteamMatchmaking* self, uint64_steamid steamIDLobby, ELobbyType eLobbyType ); +S_API bool SteamAPI_ISteamMatchmaking_SetLobbyJoinable( ISteamMatchmaking* self, uint64_steamid steamIDLobby, bool bLobbyJoinable ); +S_API uint64_steamid SteamAPI_ISteamMatchmaking_GetLobbyOwner( ISteamMatchmaking* self, uint64_steamid steamIDLobby ); +S_API bool SteamAPI_ISteamMatchmaking_SetLobbyOwner( ISteamMatchmaking* self, uint64_steamid steamIDLobby, uint64_steamid steamIDNewOwner ); +S_API bool SteamAPI_ISteamMatchmaking_SetLinkedLobby( ISteamMatchmaking* self, uint64_steamid steamIDLobby, uint64_steamid steamIDLobbyDependent ); + +// ISteamMatchmakingServerListResponse +S_API void SteamAPI_ISteamMatchmakingServerListResponse_ServerResponded( ISteamMatchmakingServerListResponse* self, HServerListRequest hRequest, int iServer ); +S_API void SteamAPI_ISteamMatchmakingServerListResponse_ServerFailedToRespond( ISteamMatchmakingServerListResponse* self, HServerListRequest hRequest, int iServer ); +S_API void SteamAPI_ISteamMatchmakingServerListResponse_RefreshComplete( ISteamMatchmakingServerListResponse* self, HServerListRequest hRequest, EMatchMakingServerResponse response ); + +// ISteamMatchmakingPingResponse +S_API void SteamAPI_ISteamMatchmakingPingResponse_ServerResponded( ISteamMatchmakingPingResponse* self, gameserveritem_t & server ); +S_API void SteamAPI_ISteamMatchmakingPingResponse_ServerFailedToRespond( ISteamMatchmakingPingResponse* self ); + +// ISteamMatchmakingPlayersResponse +S_API void SteamAPI_ISteamMatchmakingPlayersResponse_AddPlayerToList( ISteamMatchmakingPlayersResponse* self, const char * pchName, int nScore, float flTimePlayed ); +S_API void SteamAPI_ISteamMatchmakingPlayersResponse_PlayersFailedToRespond( ISteamMatchmakingPlayersResponse* self ); +S_API void SteamAPI_ISteamMatchmakingPlayersResponse_PlayersRefreshComplete( ISteamMatchmakingPlayersResponse* self ); + +// ISteamMatchmakingRulesResponse +S_API void SteamAPI_ISteamMatchmakingRulesResponse_RulesResponded( ISteamMatchmakingRulesResponse* self, const char * pchRule, const char * pchValue ); +S_API void SteamAPI_ISteamMatchmakingRulesResponse_RulesFailedToRespond( ISteamMatchmakingRulesResponse* self ); +S_API void SteamAPI_ISteamMatchmakingRulesResponse_RulesRefreshComplete( ISteamMatchmakingRulesResponse* self ); + +// ISteamMatchmakingServers +S_API ISteamMatchmakingServers *SteamAPI_SteamMatchmakingServers_v002(); +S_API HServerListRequest SteamAPI_ISteamMatchmakingServers_RequestInternetServerList( ISteamMatchmakingServers* self, AppId_t iApp, MatchMakingKeyValuePair_t ** ppchFilters, uint32 nFilters, ISteamMatchmakingServerListResponse * pRequestServersResponse ); +S_API HServerListRequest SteamAPI_ISteamMatchmakingServers_RequestLANServerList( ISteamMatchmakingServers* self, AppId_t iApp, ISteamMatchmakingServerListResponse * pRequestServersResponse ); +S_API HServerListRequest SteamAPI_ISteamMatchmakingServers_RequestFriendsServerList( ISteamMatchmakingServers* self, AppId_t iApp, MatchMakingKeyValuePair_t ** ppchFilters, uint32 nFilters, ISteamMatchmakingServerListResponse * pRequestServersResponse ); +S_API HServerListRequest SteamAPI_ISteamMatchmakingServers_RequestFavoritesServerList( ISteamMatchmakingServers* self, AppId_t iApp, MatchMakingKeyValuePair_t ** ppchFilters, uint32 nFilters, ISteamMatchmakingServerListResponse * pRequestServersResponse ); +S_API HServerListRequest SteamAPI_ISteamMatchmakingServers_RequestHistoryServerList( ISteamMatchmakingServers* self, AppId_t iApp, MatchMakingKeyValuePair_t ** ppchFilters, uint32 nFilters, ISteamMatchmakingServerListResponse * pRequestServersResponse ); +S_API HServerListRequest SteamAPI_ISteamMatchmakingServers_RequestSpectatorServerList( ISteamMatchmakingServers* self, AppId_t iApp, MatchMakingKeyValuePair_t ** ppchFilters, uint32 nFilters, ISteamMatchmakingServerListResponse * pRequestServersResponse ); +S_API void SteamAPI_ISteamMatchmakingServers_ReleaseRequest( ISteamMatchmakingServers* self, HServerListRequest hServerListRequest ); +S_API gameserveritem_t * SteamAPI_ISteamMatchmakingServers_GetServerDetails( ISteamMatchmakingServers* self, HServerListRequest hRequest, int iServer ); +S_API void SteamAPI_ISteamMatchmakingServers_CancelQuery( ISteamMatchmakingServers* self, HServerListRequest hRequest ); +S_API void SteamAPI_ISteamMatchmakingServers_RefreshQuery( ISteamMatchmakingServers* self, HServerListRequest hRequest ); +S_API bool SteamAPI_ISteamMatchmakingServers_IsRefreshing( ISteamMatchmakingServers* self, HServerListRequest hRequest ); +S_API int SteamAPI_ISteamMatchmakingServers_GetServerCount( ISteamMatchmakingServers* self, HServerListRequest hRequest ); +S_API void SteamAPI_ISteamMatchmakingServers_RefreshServer( ISteamMatchmakingServers* self, HServerListRequest hRequest, int iServer ); +S_API HServerQuery SteamAPI_ISteamMatchmakingServers_PingServer( ISteamMatchmakingServers* self, uint32 unIP, uint16 usPort, ISteamMatchmakingPingResponse * pRequestServersResponse ); +S_API HServerQuery SteamAPI_ISteamMatchmakingServers_PlayerDetails( ISteamMatchmakingServers* self, uint32 unIP, uint16 usPort, ISteamMatchmakingPlayersResponse * pRequestServersResponse ); +S_API HServerQuery SteamAPI_ISteamMatchmakingServers_ServerRules( ISteamMatchmakingServers* self, uint32 unIP, uint16 usPort, ISteamMatchmakingRulesResponse * pRequestServersResponse ); +S_API void SteamAPI_ISteamMatchmakingServers_CancelServerQuery( ISteamMatchmakingServers* self, HServerQuery hServerQuery ); + +// ISteamGameSearch +S_API ISteamGameSearch *SteamAPI_SteamGameSearch_v001(); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_AddGameSearchParams( ISteamGameSearch* self, const char * pchKeyToFind, const char * pchValuesToFind ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_SearchForGameWithLobby( ISteamGameSearch* self, uint64_steamid steamIDLobby, int nPlayerMin, int nPlayerMax ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_SearchForGameSolo( ISteamGameSearch* self, int nPlayerMin, int nPlayerMax ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_AcceptGame( ISteamGameSearch* self ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_DeclineGame( ISteamGameSearch* self ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_RetrieveConnectionDetails( ISteamGameSearch* self, uint64_steamid steamIDHost, char * pchConnectionDetails, int cubConnectionDetails ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_EndGameSearch( ISteamGameSearch* self ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_SetGameHostParams( ISteamGameSearch* self, const char * pchKey, const char * pchValue ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_SetConnectionDetails( ISteamGameSearch* self, const char * pchConnectionDetails, int cubConnectionDetails ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_RequestPlayersForGame( ISteamGameSearch* self, int nPlayerMin, int nPlayerMax, int nMaxTeamSize ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_HostConfirmGameStart( ISteamGameSearch* self, uint64 ullUniqueGameID ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_CancelRequestPlayersForGame( ISteamGameSearch* self ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_SubmitPlayerResult( ISteamGameSearch* self, uint64 ullUniqueGameID, uint64_steamid steamIDPlayer, EPlayerResult_t EPlayerResult ); +S_API EGameSearchErrorCode_t SteamAPI_ISteamGameSearch_EndGame( ISteamGameSearch* self, uint64 ullUniqueGameID ); + +// ISteamParties +S_API ISteamParties *SteamAPI_SteamParties_v002(); +S_API uint32 SteamAPI_ISteamParties_GetNumActiveBeacons( ISteamParties* self ); +S_API PartyBeaconID_t SteamAPI_ISteamParties_GetBeaconByIndex( ISteamParties* self, uint32 unIndex ); +S_API bool SteamAPI_ISteamParties_GetBeaconDetails( ISteamParties* self, PartyBeaconID_t ulBeaconID, CSteamID * pSteamIDBeaconOwner, SteamPartyBeaconLocation_t * pLocation, char * pchMetadata, int cchMetadata ); +S_API SteamAPICall_t SteamAPI_ISteamParties_JoinParty( ISteamParties* self, PartyBeaconID_t ulBeaconID ); +S_API bool SteamAPI_ISteamParties_GetNumAvailableBeaconLocations( ISteamParties* self, uint32 * puNumLocations ); +S_API bool SteamAPI_ISteamParties_GetAvailableBeaconLocations( ISteamParties* self, SteamPartyBeaconLocation_t * pLocationList, uint32 uMaxNumLocations ); +S_API SteamAPICall_t SteamAPI_ISteamParties_CreateBeacon( ISteamParties* self, uint32 unOpenSlots, SteamPartyBeaconLocation_t * pBeaconLocation, const char * pchConnectString, const char * pchMetadata ); +S_API void SteamAPI_ISteamParties_OnReservationCompleted( ISteamParties* self, PartyBeaconID_t ulBeacon, uint64_steamid steamIDUser ); +S_API void SteamAPI_ISteamParties_CancelReservation( ISteamParties* self, PartyBeaconID_t ulBeacon, uint64_steamid steamIDUser ); +S_API SteamAPICall_t SteamAPI_ISteamParties_ChangeNumOpenSlots( ISteamParties* self, PartyBeaconID_t ulBeacon, uint32 unOpenSlots ); +S_API bool SteamAPI_ISteamParties_DestroyBeacon( ISteamParties* self, PartyBeaconID_t ulBeacon ); +S_API bool SteamAPI_ISteamParties_GetBeaconLocationData( ISteamParties* self, SteamPartyBeaconLocation_t BeaconLocation, ESteamPartyBeaconLocationData eData, char * pchDataStringOut, int cchDataStringOut ); + +// ISteamRemoteStorage +S_API ISteamRemoteStorage *SteamAPI_SteamRemoteStorage_v014(); +S_API bool SteamAPI_ISteamRemoteStorage_FileWrite( ISteamRemoteStorage* self, const char * pchFile, const void * pvData, int32 cubData ); +S_API int32 SteamAPI_ISteamRemoteStorage_FileRead( ISteamRemoteStorage* self, const char * pchFile, void * pvData, int32 cubDataToRead ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_FileWriteAsync( ISteamRemoteStorage* self, const char * pchFile, const void * pvData, uint32 cubData ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_FileReadAsync( ISteamRemoteStorage* self, const char * pchFile, uint32 nOffset, uint32 cubToRead ); +S_API bool SteamAPI_ISteamRemoteStorage_FileReadAsyncComplete( ISteamRemoteStorage* self, SteamAPICall_t hReadCall, void * pvBuffer, uint32 cubToRead ); +S_API bool SteamAPI_ISteamRemoteStorage_FileForget( ISteamRemoteStorage* self, const char * pchFile ); +S_API bool SteamAPI_ISteamRemoteStorage_FileDelete( ISteamRemoteStorage* self, const char * pchFile ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_FileShare( ISteamRemoteStorage* self, const char * pchFile ); +S_API bool SteamAPI_ISteamRemoteStorage_SetSyncPlatforms( ISteamRemoteStorage* self, const char * pchFile, ERemoteStoragePlatform eRemoteStoragePlatform ); +S_API UGCFileWriteStreamHandle_t SteamAPI_ISteamRemoteStorage_FileWriteStreamOpen( ISteamRemoteStorage* self, const char * pchFile ); +S_API bool SteamAPI_ISteamRemoteStorage_FileWriteStreamWriteChunk( ISteamRemoteStorage* self, UGCFileWriteStreamHandle_t writeHandle, const void * pvData, int32 cubData ); +S_API bool SteamAPI_ISteamRemoteStorage_FileWriteStreamClose( ISteamRemoteStorage* self, UGCFileWriteStreamHandle_t writeHandle ); +S_API bool SteamAPI_ISteamRemoteStorage_FileWriteStreamCancel( ISteamRemoteStorage* self, UGCFileWriteStreamHandle_t writeHandle ); +S_API bool SteamAPI_ISteamRemoteStorage_FileExists( ISteamRemoteStorage* self, const char * pchFile ); +S_API bool SteamAPI_ISteamRemoteStorage_FilePersisted( ISteamRemoteStorage* self, const char * pchFile ); +S_API int32 SteamAPI_ISteamRemoteStorage_GetFileSize( ISteamRemoteStorage* self, const char * pchFile ); +S_API int64 SteamAPI_ISteamRemoteStorage_GetFileTimestamp( ISteamRemoteStorage* self, const char * pchFile ); +S_API ERemoteStoragePlatform SteamAPI_ISteamRemoteStorage_GetSyncPlatforms( ISteamRemoteStorage* self, const char * pchFile ); +S_API int32 SteamAPI_ISteamRemoteStorage_GetFileCount( ISteamRemoteStorage* self ); +S_API const char * SteamAPI_ISteamRemoteStorage_GetFileNameAndSize( ISteamRemoteStorage* self, int iFile, int32 * pnFileSizeInBytes ); +S_API bool SteamAPI_ISteamRemoteStorage_GetQuota( ISteamRemoteStorage* self, uint64 * pnTotalBytes, uint64 * puAvailableBytes ); +S_API bool SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount( ISteamRemoteStorage* self ); +S_API bool SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp( ISteamRemoteStorage* self ); +S_API void SteamAPI_ISteamRemoteStorage_SetCloudEnabledForApp( ISteamRemoteStorage* self, bool bEnabled ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_UGCDownload( ISteamRemoteStorage* self, UGCHandle_t hContent, uint32 unPriority ); +S_API bool SteamAPI_ISteamRemoteStorage_GetUGCDownloadProgress( ISteamRemoteStorage* self, UGCHandle_t hContent, int32 * pnBytesDownloaded, int32 * pnBytesExpected ); +S_API bool SteamAPI_ISteamRemoteStorage_GetUGCDetails( ISteamRemoteStorage* self, UGCHandle_t hContent, AppId_t * pnAppID, char ** ppchName, int32 * pnFileSizeInBytes, CSteamID * pSteamIDOwner ); +S_API int32 SteamAPI_ISteamRemoteStorage_UGCRead( ISteamRemoteStorage* self, UGCHandle_t hContent, void * pvData, int32 cubDataToRead, uint32 cOffset, EUGCReadAction eAction ); +S_API int32 SteamAPI_ISteamRemoteStorage_GetCachedUGCCount( ISteamRemoteStorage* self ); +S_API UGCHandle_t SteamAPI_ISteamRemoteStorage_GetCachedUGCHandle( ISteamRemoteStorage* self, int32 iCachedContent ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_PublishWorkshopFile( ISteamRemoteStorage* self, const char * pchFile, const char * pchPreviewFile, AppId_t nConsumerAppId, const char * pchTitle, const char * pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, SteamParamStringArray_t * pTags, EWorkshopFileType eWorkshopFileType ); +S_API PublishedFileUpdateHandle_t SteamAPI_ISteamRemoteStorage_CreatePublishedFileUpdateRequest( ISteamRemoteStorage* self, PublishedFileId_t unPublishedFileId ); +S_API bool SteamAPI_ISteamRemoteStorage_UpdatePublishedFileFile( ISteamRemoteStorage* self, PublishedFileUpdateHandle_t updateHandle, const char * pchFile ); +S_API bool SteamAPI_ISteamRemoteStorage_UpdatePublishedFilePreviewFile( ISteamRemoteStorage* self, PublishedFileUpdateHandle_t updateHandle, const char * pchPreviewFile ); +S_API bool SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTitle( ISteamRemoteStorage* self, PublishedFileUpdateHandle_t updateHandle, const char * pchTitle ); +S_API bool SteamAPI_ISteamRemoteStorage_UpdatePublishedFileDescription( ISteamRemoteStorage* self, PublishedFileUpdateHandle_t updateHandle, const char * pchDescription ); +S_API bool SteamAPI_ISteamRemoteStorage_UpdatePublishedFileVisibility( ISteamRemoteStorage* self, PublishedFileUpdateHandle_t updateHandle, ERemoteStoragePublishedFileVisibility eVisibility ); +S_API bool SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTags( ISteamRemoteStorage* self, PublishedFileUpdateHandle_t updateHandle, SteamParamStringArray_t * pTags ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_CommitPublishedFileUpdate( ISteamRemoteStorage* self, PublishedFileUpdateHandle_t updateHandle ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_GetPublishedFileDetails( ISteamRemoteStorage* self, PublishedFileId_t unPublishedFileId, uint32 unMaxSecondsOld ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_DeletePublishedFile( ISteamRemoteStorage* self, PublishedFileId_t unPublishedFileId ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_EnumerateUserPublishedFiles( ISteamRemoteStorage* self, uint32 unStartIndex ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_SubscribePublishedFile( ISteamRemoteStorage* self, PublishedFileId_t unPublishedFileId ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_EnumerateUserSubscribedFiles( ISteamRemoteStorage* self, uint32 unStartIndex ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_UnsubscribePublishedFile( ISteamRemoteStorage* self, PublishedFileId_t unPublishedFileId ); +S_API bool SteamAPI_ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription( ISteamRemoteStorage* self, PublishedFileUpdateHandle_t updateHandle, const char * pchChangeDescription ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_GetPublishedItemVoteDetails( ISteamRemoteStorage* self, PublishedFileId_t unPublishedFileId ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_UpdateUserPublishedItemVote( ISteamRemoteStorage* self, PublishedFileId_t unPublishedFileId, bool bVoteUp ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_GetUserPublishedItemVoteDetails( ISteamRemoteStorage* self, PublishedFileId_t unPublishedFileId ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles( ISteamRemoteStorage* self, uint64_steamid steamId, uint32 unStartIndex, SteamParamStringArray_t * pRequiredTags, SteamParamStringArray_t * pExcludedTags ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_PublishVideo( ISteamRemoteStorage* self, EWorkshopVideoProvider eVideoProvider, const char * pchVideoAccount, const char * pchVideoIdentifier, const char * pchPreviewFile, AppId_t nConsumerAppId, const char * pchTitle, const char * pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, SteamParamStringArray_t * pTags ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_SetUserPublishedFileAction( ISteamRemoteStorage* self, PublishedFileId_t unPublishedFileId, EWorkshopFileAction eAction ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_EnumeratePublishedFilesByUserAction( ISteamRemoteStorage* self, EWorkshopFileAction eAction, uint32 unStartIndex ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_EnumeratePublishedWorkshopFiles( ISteamRemoteStorage* self, EWorkshopEnumerationType eEnumerationType, uint32 unStartIndex, uint32 unCount, uint32 unDays, SteamParamStringArray_t * pTags, SteamParamStringArray_t * pUserTags ); +S_API SteamAPICall_t SteamAPI_ISteamRemoteStorage_UGCDownloadToLocation( ISteamRemoteStorage* self, UGCHandle_t hContent, const char * pchLocation, uint32 unPriority ); + +// ISteamUserStats +S_API ISteamUserStats *SteamAPI_SteamUserStats_v012(); +S_API bool SteamAPI_ISteamUserStats_RequestCurrentStats( ISteamUserStats* self ); +S_API bool SteamAPI_ISteamUserStats_GetStatInt32( ISteamUserStats* self, const char * pchName, int32 * pData ); +S_API bool SteamAPI_ISteamUserStats_GetStatFloat( ISteamUserStats* self, const char * pchName, float * pData ); +S_API bool SteamAPI_ISteamUserStats_SetStatInt32( ISteamUserStats* self, const char * pchName, int32 nData ); +S_API bool SteamAPI_ISteamUserStats_SetStatFloat( ISteamUserStats* self, const char * pchName, float fData ); +S_API bool SteamAPI_ISteamUserStats_UpdateAvgRateStat( ISteamUserStats* self, const char * pchName, float flCountThisSession, double dSessionLength ); +S_API bool SteamAPI_ISteamUserStats_GetAchievement( ISteamUserStats* self, const char * pchName, bool * pbAchieved ); +S_API bool SteamAPI_ISteamUserStats_SetAchievement( ISteamUserStats* self, const char * pchName ); +S_API bool SteamAPI_ISteamUserStats_ClearAchievement( ISteamUserStats* self, const char * pchName ); +S_API bool SteamAPI_ISteamUserStats_GetAchievementAndUnlockTime( ISteamUserStats* self, const char * pchName, bool * pbAchieved, uint32 * punUnlockTime ); +S_API bool SteamAPI_ISteamUserStats_StoreStats( ISteamUserStats* self ); +S_API int SteamAPI_ISteamUserStats_GetAchievementIcon( ISteamUserStats* self, const char * pchName ); +S_API const char * SteamAPI_ISteamUserStats_GetAchievementDisplayAttribute( ISteamUserStats* self, const char * pchName, const char * pchKey ); +S_API bool SteamAPI_ISteamUserStats_IndicateAchievementProgress( ISteamUserStats* self, const char * pchName, uint32 nCurProgress, uint32 nMaxProgress ); +S_API uint32 SteamAPI_ISteamUserStats_GetNumAchievements( ISteamUserStats* self ); +S_API const char * SteamAPI_ISteamUserStats_GetAchievementName( ISteamUserStats* self, uint32 iAchievement ); +S_API SteamAPICall_t SteamAPI_ISteamUserStats_RequestUserStats( ISteamUserStats* self, uint64_steamid steamIDUser ); +S_API bool SteamAPI_ISteamUserStats_GetUserStatInt32( ISteamUserStats* self, uint64_steamid steamIDUser, const char * pchName, int32 * pData ); +S_API bool SteamAPI_ISteamUserStats_GetUserStatFloat( ISteamUserStats* self, uint64_steamid steamIDUser, const char * pchName, float * pData ); +S_API bool SteamAPI_ISteamUserStats_GetUserAchievement( ISteamUserStats* self, uint64_steamid steamIDUser, const char * pchName, bool * pbAchieved ); +S_API bool SteamAPI_ISteamUserStats_GetUserAchievementAndUnlockTime( ISteamUserStats* self, uint64_steamid steamIDUser, const char * pchName, bool * pbAchieved, uint32 * punUnlockTime ); +S_API bool SteamAPI_ISteamUserStats_ResetAllStats( ISteamUserStats* self, bool bAchievementsToo ); +S_API SteamAPICall_t SteamAPI_ISteamUserStats_FindOrCreateLeaderboard( ISteamUserStats* self, const char * pchLeaderboardName, ELeaderboardSortMethod eLeaderboardSortMethod, ELeaderboardDisplayType eLeaderboardDisplayType ); +S_API SteamAPICall_t SteamAPI_ISteamUserStats_FindLeaderboard( ISteamUserStats* self, const char * pchLeaderboardName ); +S_API const char * SteamAPI_ISteamUserStats_GetLeaderboardName( ISteamUserStats* self, SteamLeaderboard_t hSteamLeaderboard ); +S_API int SteamAPI_ISteamUserStats_GetLeaderboardEntryCount( ISteamUserStats* self, SteamLeaderboard_t hSteamLeaderboard ); +S_API ELeaderboardSortMethod SteamAPI_ISteamUserStats_GetLeaderboardSortMethod( ISteamUserStats* self, SteamLeaderboard_t hSteamLeaderboard ); +S_API ELeaderboardDisplayType SteamAPI_ISteamUserStats_GetLeaderboardDisplayType( ISteamUserStats* self, SteamLeaderboard_t hSteamLeaderboard ); +S_API SteamAPICall_t SteamAPI_ISteamUserStats_DownloadLeaderboardEntries( ISteamUserStats* self, SteamLeaderboard_t hSteamLeaderboard, ELeaderboardDataRequest eLeaderboardDataRequest, int nRangeStart, int nRangeEnd ); +S_API SteamAPICall_t SteamAPI_ISteamUserStats_DownloadLeaderboardEntriesForUsers( ISteamUserStats* self, SteamLeaderboard_t hSteamLeaderboard, CSteamID * prgUsers, int cUsers ); +S_API bool SteamAPI_ISteamUserStats_GetDownloadedLeaderboardEntry( ISteamUserStats* self, SteamLeaderboardEntries_t hSteamLeaderboardEntries, int index, LeaderboardEntry_t * pLeaderboardEntry, int32 * pDetails, int cDetailsMax ); +S_API SteamAPICall_t SteamAPI_ISteamUserStats_UploadLeaderboardScore( ISteamUserStats* self, SteamLeaderboard_t hSteamLeaderboard, ELeaderboardUploadScoreMethod eLeaderboardUploadScoreMethod, int32 nScore, const int32 * pScoreDetails, int cScoreDetailsCount ); +S_API SteamAPICall_t SteamAPI_ISteamUserStats_AttachLeaderboardUGC( ISteamUserStats* self, SteamLeaderboard_t hSteamLeaderboard, UGCHandle_t hUGC ); +S_API SteamAPICall_t SteamAPI_ISteamUserStats_GetNumberOfCurrentPlayers( ISteamUserStats* self ); +S_API SteamAPICall_t SteamAPI_ISteamUserStats_RequestGlobalAchievementPercentages( ISteamUserStats* self ); +S_API int SteamAPI_ISteamUserStats_GetMostAchievedAchievementInfo( ISteamUserStats* self, char * pchName, uint32 unNameBufLen, float * pflPercent, bool * pbAchieved ); +S_API int SteamAPI_ISteamUserStats_GetNextMostAchievedAchievementInfo( ISteamUserStats* self, int iIteratorPrevious, char * pchName, uint32 unNameBufLen, float * pflPercent, bool * pbAchieved ); +S_API bool SteamAPI_ISteamUserStats_GetAchievementAchievedPercent( ISteamUserStats* self, const char * pchName, float * pflPercent ); +S_API SteamAPICall_t SteamAPI_ISteamUserStats_RequestGlobalStats( ISteamUserStats* self, int nHistoryDays ); +S_API bool SteamAPI_ISteamUserStats_GetGlobalStatInt64( ISteamUserStats* self, const char * pchStatName, int64 * pData ); +S_API bool SteamAPI_ISteamUserStats_GetGlobalStatDouble( ISteamUserStats* self, const char * pchStatName, double * pData ); +S_API int32 SteamAPI_ISteamUserStats_GetGlobalStatHistoryInt64( ISteamUserStats* self, const char * pchStatName, int64 * pData, uint32 cubData ); +S_API int32 SteamAPI_ISteamUserStats_GetGlobalStatHistoryDouble( ISteamUserStats* self, const char * pchStatName, double * pData, uint32 cubData ); +S_API bool SteamAPI_ISteamUserStats_GetAchievementProgressLimitsInt32( ISteamUserStats* self, const char * pchName, int32 * pnMinProgress, int32 * pnMaxProgress ); +S_API bool SteamAPI_ISteamUserStats_GetAchievementProgressLimitsFloat( ISteamUserStats* self, const char * pchName, float * pfMinProgress, float * pfMaxProgress ); + +// ISteamApps +S_API ISteamApps *SteamAPI_SteamApps_v008(); +S_API ISteamApps *SteamAPI_SteamGameServerApps_v008(); +S_API bool SteamAPI_ISteamApps_BIsSubscribed( ISteamApps* self ); +S_API bool SteamAPI_ISteamApps_BIsLowViolence( ISteamApps* self ); +S_API bool SteamAPI_ISteamApps_BIsCybercafe( ISteamApps* self ); +S_API bool SteamAPI_ISteamApps_BIsVACBanned( ISteamApps* self ); +S_API const char * SteamAPI_ISteamApps_GetCurrentGameLanguage( ISteamApps* self ); +S_API const char * SteamAPI_ISteamApps_GetAvailableGameLanguages( ISteamApps* self ); +S_API bool SteamAPI_ISteamApps_BIsSubscribedApp( ISteamApps* self, AppId_t appID ); +S_API bool SteamAPI_ISteamApps_BIsDlcInstalled( ISteamApps* self, AppId_t appID ); +S_API uint32 SteamAPI_ISteamApps_GetEarliestPurchaseUnixTime( ISteamApps* self, AppId_t nAppID ); +S_API bool SteamAPI_ISteamApps_BIsSubscribedFromFreeWeekend( ISteamApps* self ); +S_API int SteamAPI_ISteamApps_GetDLCCount( ISteamApps* self ); +S_API bool SteamAPI_ISteamApps_BGetDLCDataByIndex( ISteamApps* self, int iDLC, AppId_t * pAppID, bool * pbAvailable, char * pchName, int cchNameBufferSize ); +S_API void SteamAPI_ISteamApps_InstallDLC( ISteamApps* self, AppId_t nAppID ); +S_API void SteamAPI_ISteamApps_UninstallDLC( ISteamApps* self, AppId_t nAppID ); +S_API void SteamAPI_ISteamApps_RequestAppProofOfPurchaseKey( ISteamApps* self, AppId_t nAppID ); +S_API bool SteamAPI_ISteamApps_GetCurrentBetaName( ISteamApps* self, char * pchName, int cchNameBufferSize ); +S_API bool SteamAPI_ISteamApps_MarkContentCorrupt( ISteamApps* self, bool bMissingFilesOnly ); +S_API uint32 SteamAPI_ISteamApps_GetInstalledDepots( ISteamApps* self, AppId_t appID, DepotId_t * pvecDepots, uint32 cMaxDepots ); +S_API uint32 SteamAPI_ISteamApps_GetAppInstallDir( ISteamApps* self, AppId_t appID, char * pchFolder, uint32 cchFolderBufferSize ); +S_API bool SteamAPI_ISteamApps_BIsAppInstalled( ISteamApps* self, AppId_t appID ); +S_API uint64_steamid SteamAPI_ISteamApps_GetAppOwner( ISteamApps* self ); +S_API const char * SteamAPI_ISteamApps_GetLaunchQueryParam( ISteamApps* self, const char * pchKey ); +S_API bool SteamAPI_ISteamApps_GetDlcDownloadProgress( ISteamApps* self, AppId_t nAppID, uint64 * punBytesDownloaded, uint64 * punBytesTotal ); +S_API int SteamAPI_ISteamApps_GetAppBuildId( ISteamApps* self ); +S_API void SteamAPI_ISteamApps_RequestAllProofOfPurchaseKeys( ISteamApps* self ); +S_API SteamAPICall_t SteamAPI_ISteamApps_GetFileDetails( ISteamApps* self, const char * pszFileName ); +S_API int SteamAPI_ISteamApps_GetLaunchCommandLine( ISteamApps* self, char * pszCommandLine, int cubCommandLine ); +S_API bool SteamAPI_ISteamApps_BIsSubscribedFromFamilySharing( ISteamApps* self ); +S_API bool SteamAPI_ISteamApps_BIsTimedTrial( ISteamApps* self, uint32 * punSecondsAllowed, uint32 * punSecondsPlayed ); + +// ISteamNetworking +S_API ISteamNetworking *SteamAPI_SteamNetworking_v006(); +S_API ISteamNetworking *SteamAPI_SteamGameServerNetworking_v006(); +S_API bool SteamAPI_ISteamNetworking_SendP2PPacket( ISteamNetworking* self, uint64_steamid steamIDRemote, const void * pubData, uint32 cubData, EP2PSend eP2PSendType, int nChannel ); +S_API bool SteamAPI_ISteamNetworking_IsP2PPacketAvailable( ISteamNetworking* self, uint32 * pcubMsgSize, int nChannel ); +S_API bool SteamAPI_ISteamNetworking_ReadP2PPacket( ISteamNetworking* self, void * pubDest, uint32 cubDest, uint32 * pcubMsgSize, CSteamID * psteamIDRemote, int nChannel ); +S_API bool SteamAPI_ISteamNetworking_AcceptP2PSessionWithUser( ISteamNetworking* self, uint64_steamid steamIDRemote ); +S_API bool SteamAPI_ISteamNetworking_CloseP2PSessionWithUser( ISteamNetworking* self, uint64_steamid steamIDRemote ); +S_API bool SteamAPI_ISteamNetworking_CloseP2PChannelWithUser( ISteamNetworking* self, uint64_steamid steamIDRemote, int nChannel ); +S_API bool SteamAPI_ISteamNetworking_GetP2PSessionState( ISteamNetworking* self, uint64_steamid steamIDRemote, P2PSessionState_t * pConnectionState ); +S_API bool SteamAPI_ISteamNetworking_AllowP2PPacketRelay( ISteamNetworking* self, bool bAllow ); +S_API SNetListenSocket_t SteamAPI_ISteamNetworking_CreateListenSocket( ISteamNetworking* self, int nVirtualP2PPort, SteamIPAddress_t nIP, uint16 nPort, bool bAllowUseOfPacketRelay ); +S_API SNetSocket_t SteamAPI_ISteamNetworking_CreateP2PConnectionSocket( ISteamNetworking* self, uint64_steamid steamIDTarget, int nVirtualPort, int nTimeoutSec, bool bAllowUseOfPacketRelay ); +S_API SNetSocket_t SteamAPI_ISteamNetworking_CreateConnectionSocket( ISteamNetworking* self, SteamIPAddress_t nIP, uint16 nPort, int nTimeoutSec ); +S_API bool SteamAPI_ISteamNetworking_DestroySocket( ISteamNetworking* self, SNetSocket_t hSocket, bool bNotifyRemoteEnd ); +S_API bool SteamAPI_ISteamNetworking_DestroyListenSocket( ISteamNetworking* self, SNetListenSocket_t hSocket, bool bNotifyRemoteEnd ); +S_API bool SteamAPI_ISteamNetworking_SendDataOnSocket( ISteamNetworking* self, SNetSocket_t hSocket, void * pubData, uint32 cubData, bool bReliable ); +S_API bool SteamAPI_ISteamNetworking_IsDataAvailableOnSocket( ISteamNetworking* self, SNetSocket_t hSocket, uint32 * pcubMsgSize ); +S_API bool SteamAPI_ISteamNetworking_RetrieveDataFromSocket( ISteamNetworking* self, SNetSocket_t hSocket, void * pubDest, uint32 cubDest, uint32 * pcubMsgSize ); +S_API bool SteamAPI_ISteamNetworking_IsDataAvailable( ISteamNetworking* self, SNetListenSocket_t hListenSocket, uint32 * pcubMsgSize, SNetSocket_t * phSocket ); +S_API bool SteamAPI_ISteamNetworking_RetrieveData( ISteamNetworking* self, SNetListenSocket_t hListenSocket, void * pubDest, uint32 cubDest, uint32 * pcubMsgSize, SNetSocket_t * phSocket ); +S_API bool SteamAPI_ISteamNetworking_GetSocketInfo( ISteamNetworking* self, SNetSocket_t hSocket, CSteamID * pSteamIDRemote, int * peSocketStatus, SteamIPAddress_t * punIPRemote, uint16 * punPortRemote ); +S_API bool SteamAPI_ISteamNetworking_GetListenSocketInfo( ISteamNetworking* self, SNetListenSocket_t hListenSocket, SteamIPAddress_t * pnIP, uint16 * pnPort ); +S_API ESNetSocketConnectionType SteamAPI_ISteamNetworking_GetSocketConnectionType( ISteamNetworking* self, SNetSocket_t hSocket ); +S_API int SteamAPI_ISteamNetworking_GetMaxPacketSize( ISteamNetworking* self, SNetSocket_t hSocket ); + +// ISteamScreenshots +S_API ISteamScreenshots *SteamAPI_SteamScreenshots_v003(); +S_API ScreenshotHandle SteamAPI_ISteamScreenshots_WriteScreenshot( ISteamScreenshots* self, void * pubRGB, uint32 cubRGB, int nWidth, int nHeight ); +S_API ScreenshotHandle SteamAPI_ISteamScreenshots_AddScreenshotToLibrary( ISteamScreenshots* self, const char * pchFilename, const char * pchThumbnailFilename, int nWidth, int nHeight ); +S_API void SteamAPI_ISteamScreenshots_TriggerScreenshot( ISteamScreenshots* self ); +S_API void SteamAPI_ISteamScreenshots_HookScreenshots( ISteamScreenshots* self, bool bHook ); +S_API bool SteamAPI_ISteamScreenshots_SetLocation( ISteamScreenshots* self, ScreenshotHandle hScreenshot, const char * pchLocation ); +S_API bool SteamAPI_ISteamScreenshots_TagUser( ISteamScreenshots* self, ScreenshotHandle hScreenshot, uint64_steamid steamID ); +S_API bool SteamAPI_ISteamScreenshots_TagPublishedFile( ISteamScreenshots* self, ScreenshotHandle hScreenshot, PublishedFileId_t unPublishedFileID ); +S_API bool SteamAPI_ISteamScreenshots_IsScreenshotsHooked( ISteamScreenshots* self ); +S_API ScreenshotHandle SteamAPI_ISteamScreenshots_AddVRScreenshotToLibrary( ISteamScreenshots* self, EVRScreenshotType eType, const char * pchFilename, const char * pchVRFilename ); + +// ISteamMusic +S_API ISteamMusic *SteamAPI_SteamMusic_v001(); +S_API bool SteamAPI_ISteamMusic_BIsEnabled( ISteamMusic* self ); +S_API bool SteamAPI_ISteamMusic_BIsPlaying( ISteamMusic* self ); +S_API AudioPlayback_Status SteamAPI_ISteamMusic_GetPlaybackStatus( ISteamMusic* self ); +S_API void SteamAPI_ISteamMusic_Play( ISteamMusic* self ); +S_API void SteamAPI_ISteamMusic_Pause( ISteamMusic* self ); +S_API void SteamAPI_ISteamMusic_PlayPrevious( ISteamMusic* self ); +S_API void SteamAPI_ISteamMusic_PlayNext( ISteamMusic* self ); +S_API void SteamAPI_ISteamMusic_SetVolume( ISteamMusic* self, float flVolume ); +S_API float SteamAPI_ISteamMusic_GetVolume( ISteamMusic* self ); + +// ISteamMusicRemote +S_API ISteamMusicRemote *SteamAPI_SteamMusicRemote_v001(); +S_API bool SteamAPI_ISteamMusicRemote_RegisterSteamMusicRemote( ISteamMusicRemote* self, const char * pchName ); +S_API bool SteamAPI_ISteamMusicRemote_DeregisterSteamMusicRemote( ISteamMusicRemote* self ); +S_API bool SteamAPI_ISteamMusicRemote_BIsCurrentMusicRemote( ISteamMusicRemote* self ); +S_API bool SteamAPI_ISteamMusicRemote_BActivationSuccess( ISteamMusicRemote* self, bool bValue ); +S_API bool SteamAPI_ISteamMusicRemote_SetDisplayName( ISteamMusicRemote* self, const char * pchDisplayName ); +S_API bool SteamAPI_ISteamMusicRemote_SetPNGIcon_64x64( ISteamMusicRemote* self, void * pvBuffer, uint32 cbBufferLength ); +S_API bool SteamAPI_ISteamMusicRemote_EnablePlayPrevious( ISteamMusicRemote* self, bool bValue ); +S_API bool SteamAPI_ISteamMusicRemote_EnablePlayNext( ISteamMusicRemote* self, bool bValue ); +S_API bool SteamAPI_ISteamMusicRemote_EnableShuffled( ISteamMusicRemote* self, bool bValue ); +S_API bool SteamAPI_ISteamMusicRemote_EnableLooped( ISteamMusicRemote* self, bool bValue ); +S_API bool SteamAPI_ISteamMusicRemote_EnableQueue( ISteamMusicRemote* self, bool bValue ); +S_API bool SteamAPI_ISteamMusicRemote_EnablePlaylists( ISteamMusicRemote* self, bool bValue ); +S_API bool SteamAPI_ISteamMusicRemote_UpdatePlaybackStatus( ISteamMusicRemote* self, AudioPlayback_Status nStatus ); +S_API bool SteamAPI_ISteamMusicRemote_UpdateShuffled( ISteamMusicRemote* self, bool bValue ); +S_API bool SteamAPI_ISteamMusicRemote_UpdateLooped( ISteamMusicRemote* self, bool bValue ); +S_API bool SteamAPI_ISteamMusicRemote_UpdateVolume( ISteamMusicRemote* self, float flValue ); +S_API bool SteamAPI_ISteamMusicRemote_CurrentEntryWillChange( ISteamMusicRemote* self ); +S_API bool SteamAPI_ISteamMusicRemote_CurrentEntryIsAvailable( ISteamMusicRemote* self, bool bAvailable ); +S_API bool SteamAPI_ISteamMusicRemote_UpdateCurrentEntryText( ISteamMusicRemote* self, const char * pchText ); +S_API bool SteamAPI_ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds( ISteamMusicRemote* self, int nValue ); +S_API bool SteamAPI_ISteamMusicRemote_UpdateCurrentEntryCoverArt( ISteamMusicRemote* self, void * pvBuffer, uint32 cbBufferLength ); +S_API bool SteamAPI_ISteamMusicRemote_CurrentEntryDidChange( ISteamMusicRemote* self ); +S_API bool SteamAPI_ISteamMusicRemote_QueueWillChange( ISteamMusicRemote* self ); +S_API bool SteamAPI_ISteamMusicRemote_ResetQueueEntries( ISteamMusicRemote* self ); +S_API bool SteamAPI_ISteamMusicRemote_SetQueueEntry( ISteamMusicRemote* self, int nID, int nPosition, const char * pchEntryText ); +S_API bool SteamAPI_ISteamMusicRemote_SetCurrentQueueEntry( ISteamMusicRemote* self, int nID ); +S_API bool SteamAPI_ISteamMusicRemote_QueueDidChange( ISteamMusicRemote* self ); +S_API bool SteamAPI_ISteamMusicRemote_PlaylistWillChange( ISteamMusicRemote* self ); +S_API bool SteamAPI_ISteamMusicRemote_ResetPlaylistEntries( ISteamMusicRemote* self ); +S_API bool SteamAPI_ISteamMusicRemote_SetPlaylistEntry( ISteamMusicRemote* self, int nID, int nPosition, const char * pchEntryText ); +S_API bool SteamAPI_ISteamMusicRemote_SetCurrentPlaylistEntry( ISteamMusicRemote* self, int nID ); +S_API bool SteamAPI_ISteamMusicRemote_PlaylistDidChange( ISteamMusicRemote* self ); + +// ISteamHTTP +S_API ISteamHTTP *SteamAPI_SteamHTTP_v003(); +S_API ISteamHTTP *SteamAPI_SteamGameServerHTTP_v003(); +S_API HTTPRequestHandle SteamAPI_ISteamHTTP_CreateHTTPRequest( ISteamHTTP* self, EHTTPMethod eHTTPRequestMethod, const char * pchAbsoluteURL ); +S_API bool SteamAPI_ISteamHTTP_SetHTTPRequestContextValue( ISteamHTTP* self, HTTPRequestHandle hRequest, uint64 ulContextValue ); +S_API bool SteamAPI_ISteamHTTP_SetHTTPRequestNetworkActivityTimeout( ISteamHTTP* self, HTTPRequestHandle hRequest, uint32 unTimeoutSeconds ); +S_API bool SteamAPI_ISteamHTTP_SetHTTPRequestHeaderValue( ISteamHTTP* self, HTTPRequestHandle hRequest, const char * pchHeaderName, const char * pchHeaderValue ); +S_API bool SteamAPI_ISteamHTTP_SetHTTPRequestGetOrPostParameter( ISteamHTTP* self, HTTPRequestHandle hRequest, const char * pchParamName, const char * pchParamValue ); +S_API bool SteamAPI_ISteamHTTP_SendHTTPRequest( ISteamHTTP* self, HTTPRequestHandle hRequest, SteamAPICall_t * pCallHandle ); +S_API bool SteamAPI_ISteamHTTP_SendHTTPRequestAndStreamResponse( ISteamHTTP* self, HTTPRequestHandle hRequest, SteamAPICall_t * pCallHandle ); +S_API bool SteamAPI_ISteamHTTP_DeferHTTPRequest( ISteamHTTP* self, HTTPRequestHandle hRequest ); +S_API bool SteamAPI_ISteamHTTP_PrioritizeHTTPRequest( ISteamHTTP* self, HTTPRequestHandle hRequest ); +S_API bool SteamAPI_ISteamHTTP_GetHTTPResponseHeaderSize( ISteamHTTP* self, HTTPRequestHandle hRequest, const char * pchHeaderName, uint32 * unResponseHeaderSize ); +S_API bool SteamAPI_ISteamHTTP_GetHTTPResponseHeaderValue( ISteamHTTP* self, HTTPRequestHandle hRequest, const char * pchHeaderName, uint8 * pHeaderValueBuffer, uint32 unBufferSize ); +S_API bool SteamAPI_ISteamHTTP_GetHTTPResponseBodySize( ISteamHTTP* self, HTTPRequestHandle hRequest, uint32 * unBodySize ); +S_API bool SteamAPI_ISteamHTTP_GetHTTPResponseBodyData( ISteamHTTP* self, HTTPRequestHandle hRequest, uint8 * pBodyDataBuffer, uint32 unBufferSize ); +S_API bool SteamAPI_ISteamHTTP_GetHTTPStreamingResponseBodyData( ISteamHTTP* self, HTTPRequestHandle hRequest, uint32 cOffset, uint8 * pBodyDataBuffer, uint32 unBufferSize ); +S_API bool SteamAPI_ISteamHTTP_ReleaseHTTPRequest( ISteamHTTP* self, HTTPRequestHandle hRequest ); +S_API bool SteamAPI_ISteamHTTP_GetHTTPDownloadProgressPct( ISteamHTTP* self, HTTPRequestHandle hRequest, float * pflPercentOut ); +S_API bool SteamAPI_ISteamHTTP_SetHTTPRequestRawPostBody( ISteamHTTP* self, HTTPRequestHandle hRequest, const char * pchContentType, uint8 * pubBody, uint32 unBodyLen ); +S_API HTTPCookieContainerHandle SteamAPI_ISteamHTTP_CreateCookieContainer( ISteamHTTP* self, bool bAllowResponsesToModify ); +S_API bool SteamAPI_ISteamHTTP_ReleaseCookieContainer( ISteamHTTP* self, HTTPCookieContainerHandle hCookieContainer ); +S_API bool SteamAPI_ISteamHTTP_SetCookie( ISteamHTTP* self, HTTPCookieContainerHandle hCookieContainer, const char * pchHost, const char * pchUrl, const char * pchCookie ); +S_API bool SteamAPI_ISteamHTTP_SetHTTPRequestCookieContainer( ISteamHTTP* self, HTTPRequestHandle hRequest, HTTPCookieContainerHandle hCookieContainer ); +S_API bool SteamAPI_ISteamHTTP_SetHTTPRequestUserAgentInfo( ISteamHTTP* self, HTTPRequestHandle hRequest, const char * pchUserAgentInfo ); +S_API bool SteamAPI_ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate( ISteamHTTP* self, HTTPRequestHandle hRequest, bool bRequireVerifiedCertificate ); +S_API bool SteamAPI_ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS( ISteamHTTP* self, HTTPRequestHandle hRequest, uint32 unMilliseconds ); +S_API bool SteamAPI_ISteamHTTP_GetHTTPRequestWasTimedOut( ISteamHTTP* self, HTTPRequestHandle hRequest, bool * pbWasTimedOut ); + +// ISteamInput +S_API ISteamInput *SteamAPI_SteamInput_v002(); +S_API bool SteamAPI_ISteamInput_Init( ISteamInput* self ); +S_API bool SteamAPI_ISteamInput_Shutdown( ISteamInput* self ); +S_API void SteamAPI_ISteamInput_RunFrame( ISteamInput* self ); +S_API int SteamAPI_ISteamInput_GetConnectedControllers( ISteamInput* self, InputHandle_t * handlesOut ); +S_API InputActionSetHandle_t SteamAPI_ISteamInput_GetActionSetHandle( ISteamInput* self, const char * pszActionSetName ); +S_API void SteamAPI_ISteamInput_ActivateActionSet( ISteamInput* self, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle ); +S_API InputActionSetHandle_t SteamAPI_ISteamInput_GetCurrentActionSet( ISteamInput* self, InputHandle_t inputHandle ); +S_API void SteamAPI_ISteamInput_ActivateActionSetLayer( ISteamInput* self, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle ); +S_API void SteamAPI_ISteamInput_DeactivateActionSetLayer( ISteamInput* self, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle ); +S_API void SteamAPI_ISteamInput_DeactivateAllActionSetLayers( ISteamInput* self, InputHandle_t inputHandle ); +S_API int SteamAPI_ISteamInput_GetActiveActionSetLayers( ISteamInput* self, InputHandle_t inputHandle, InputActionSetHandle_t * handlesOut ); +S_API InputDigitalActionHandle_t SteamAPI_ISteamInput_GetDigitalActionHandle( ISteamInput* self, const char * pszActionName ); +S_API InputDigitalActionData_t SteamAPI_ISteamInput_GetDigitalActionData( ISteamInput* self, InputHandle_t inputHandle, InputDigitalActionHandle_t digitalActionHandle ); +S_API int SteamAPI_ISteamInput_GetDigitalActionOrigins( ISteamInput* self, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputDigitalActionHandle_t digitalActionHandle, EInputActionOrigin * originsOut ); +S_API InputAnalogActionHandle_t SteamAPI_ISteamInput_GetAnalogActionHandle( ISteamInput* self, const char * pszActionName ); +S_API InputAnalogActionData_t SteamAPI_ISteamInput_GetAnalogActionData( ISteamInput* self, InputHandle_t inputHandle, InputAnalogActionHandle_t analogActionHandle ); +S_API int SteamAPI_ISteamInput_GetAnalogActionOrigins( ISteamInput* self, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputAnalogActionHandle_t analogActionHandle, EInputActionOrigin * originsOut ); +S_API const char * SteamAPI_ISteamInput_GetGlyphForActionOrigin( ISteamInput* self, EInputActionOrigin eOrigin ); +S_API const char * SteamAPI_ISteamInput_GetStringForActionOrigin( ISteamInput* self, EInputActionOrigin eOrigin ); +S_API void SteamAPI_ISteamInput_StopAnalogActionMomentum( ISteamInput* self, InputHandle_t inputHandle, InputAnalogActionHandle_t eAction ); +S_API InputMotionData_t SteamAPI_ISteamInput_GetMotionData( ISteamInput* self, InputHandle_t inputHandle ); +S_API void SteamAPI_ISteamInput_TriggerVibration( ISteamInput* self, InputHandle_t inputHandle, unsigned short usLeftSpeed, unsigned short usRightSpeed ); +S_API void SteamAPI_ISteamInput_SetLEDColor( ISteamInput* self, InputHandle_t inputHandle, uint8 nColorR, uint8 nColorG, uint8 nColorB, unsigned int nFlags ); +S_API void SteamAPI_ISteamInput_TriggerHapticPulse( ISteamInput* self, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec ); +S_API void SteamAPI_ISteamInput_TriggerRepeatedHapticPulse( ISteamInput* self, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec, unsigned short usOffMicroSec, unsigned short unRepeat, unsigned int nFlags ); +S_API bool SteamAPI_ISteamInput_ShowBindingPanel( ISteamInput* self, InputHandle_t inputHandle ); +S_API ESteamInputType SteamAPI_ISteamInput_GetInputTypeForHandle( ISteamInput* self, InputHandle_t inputHandle ); +S_API InputHandle_t SteamAPI_ISteamInput_GetControllerForGamepadIndex( ISteamInput* self, int nIndex ); +S_API int SteamAPI_ISteamInput_GetGamepadIndexForController( ISteamInput* self, InputHandle_t ulinputHandle ); +S_API const char * SteamAPI_ISteamInput_GetStringForXboxOrigin( ISteamInput* self, EXboxOrigin eOrigin ); +S_API const char * SteamAPI_ISteamInput_GetGlyphForXboxOrigin( ISteamInput* self, EXboxOrigin eOrigin ); +S_API EInputActionOrigin SteamAPI_ISteamInput_GetActionOriginFromXboxOrigin( ISteamInput* self, InputHandle_t inputHandle, EXboxOrigin eOrigin ); +S_API EInputActionOrigin SteamAPI_ISteamInput_TranslateActionOrigin( ISteamInput* self, ESteamInputType eDestinationInputType, EInputActionOrigin eSourceOrigin ); +S_API bool SteamAPI_ISteamInput_GetDeviceBindingRevision( ISteamInput* self, InputHandle_t inputHandle, int * pMajor, int * pMinor ); +S_API uint32 SteamAPI_ISteamInput_GetRemotePlaySessionID( ISteamInput* self, InputHandle_t inputHandle ); + +// ISteamController +S_API ISteamController *SteamAPI_SteamController_v008(); +S_API bool SteamAPI_ISteamController_Init( ISteamController* self ); +S_API bool SteamAPI_ISteamController_Shutdown( ISteamController* self ); +S_API void SteamAPI_ISteamController_RunFrame( ISteamController* self ); +S_API int SteamAPI_ISteamController_GetConnectedControllers( ISteamController* self, ControllerHandle_t * handlesOut ); +S_API ControllerActionSetHandle_t SteamAPI_ISteamController_GetActionSetHandle( ISteamController* self, const char * pszActionSetName ); +S_API void SteamAPI_ISteamController_ActivateActionSet( ISteamController* self, ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetHandle ); +S_API ControllerActionSetHandle_t SteamAPI_ISteamController_GetCurrentActionSet( ISteamController* self, ControllerHandle_t controllerHandle ); +S_API void SteamAPI_ISteamController_ActivateActionSetLayer( ISteamController* self, ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetLayerHandle ); +S_API void SteamAPI_ISteamController_DeactivateActionSetLayer( ISteamController* self, ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetLayerHandle ); +S_API void SteamAPI_ISteamController_DeactivateAllActionSetLayers( ISteamController* self, ControllerHandle_t controllerHandle ); +S_API int SteamAPI_ISteamController_GetActiveActionSetLayers( ISteamController* self, ControllerHandle_t controllerHandle, ControllerActionSetHandle_t * handlesOut ); +S_API ControllerDigitalActionHandle_t SteamAPI_ISteamController_GetDigitalActionHandle( ISteamController* self, const char * pszActionName ); +S_API InputDigitalActionData_t SteamAPI_ISteamController_GetDigitalActionData( ISteamController* self, ControllerHandle_t controllerHandle, ControllerDigitalActionHandle_t digitalActionHandle ); +S_API int SteamAPI_ISteamController_GetDigitalActionOrigins( ISteamController* self, ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetHandle, ControllerDigitalActionHandle_t digitalActionHandle, EControllerActionOrigin * originsOut ); +S_API ControllerAnalogActionHandle_t SteamAPI_ISteamController_GetAnalogActionHandle( ISteamController* self, const char * pszActionName ); +S_API InputAnalogActionData_t SteamAPI_ISteamController_GetAnalogActionData( ISteamController* self, ControllerHandle_t controllerHandle, ControllerAnalogActionHandle_t analogActionHandle ); +S_API int SteamAPI_ISteamController_GetAnalogActionOrigins( ISteamController* self, ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetHandle, ControllerAnalogActionHandle_t analogActionHandle, EControllerActionOrigin * originsOut ); +S_API const char * SteamAPI_ISteamController_GetGlyphForActionOrigin( ISteamController* self, EControllerActionOrigin eOrigin ); +S_API const char * SteamAPI_ISteamController_GetStringForActionOrigin( ISteamController* self, EControllerActionOrigin eOrigin ); +S_API void SteamAPI_ISteamController_StopAnalogActionMomentum( ISteamController* self, ControllerHandle_t controllerHandle, ControllerAnalogActionHandle_t eAction ); +S_API InputMotionData_t SteamAPI_ISteamController_GetMotionData( ISteamController* self, ControllerHandle_t controllerHandle ); +S_API void SteamAPI_ISteamController_TriggerHapticPulse( ISteamController* self, ControllerHandle_t controllerHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec ); +S_API void SteamAPI_ISteamController_TriggerRepeatedHapticPulse( ISteamController* self, ControllerHandle_t controllerHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec, unsigned short usOffMicroSec, unsigned short unRepeat, unsigned int nFlags ); +S_API void SteamAPI_ISteamController_TriggerVibration( ISteamController* self, ControllerHandle_t controllerHandle, unsigned short usLeftSpeed, unsigned short usRightSpeed ); +S_API void SteamAPI_ISteamController_SetLEDColor( ISteamController* self, ControllerHandle_t controllerHandle, uint8 nColorR, uint8 nColorG, uint8 nColorB, unsigned int nFlags ); +S_API bool SteamAPI_ISteamController_ShowBindingPanel( ISteamController* self, ControllerHandle_t controllerHandle ); +S_API ESteamInputType SteamAPI_ISteamController_GetInputTypeForHandle( ISteamController* self, ControllerHandle_t controllerHandle ); +S_API ControllerHandle_t SteamAPI_ISteamController_GetControllerForGamepadIndex( ISteamController* self, int nIndex ); +S_API int SteamAPI_ISteamController_GetGamepadIndexForController( ISteamController* self, ControllerHandle_t ulControllerHandle ); +S_API const char * SteamAPI_ISteamController_GetStringForXboxOrigin( ISteamController* self, EXboxOrigin eOrigin ); +S_API const char * SteamAPI_ISteamController_GetGlyphForXboxOrigin( ISteamController* self, EXboxOrigin eOrigin ); +S_API EControllerActionOrigin SteamAPI_ISteamController_GetActionOriginFromXboxOrigin( ISteamController* self, ControllerHandle_t controllerHandle, EXboxOrigin eOrigin ); +S_API EControllerActionOrigin SteamAPI_ISteamController_TranslateActionOrigin( ISteamController* self, ESteamInputType eDestinationInputType, EControllerActionOrigin eSourceOrigin ); +S_API bool SteamAPI_ISteamController_GetControllerBindingRevision( ISteamController* self, ControllerHandle_t controllerHandle, int * pMajor, int * pMinor ); + +// ISteamUGC +S_API ISteamUGC *SteamAPI_SteamUGC_v015(); +S_API ISteamUGC *SteamAPI_SteamGameServerUGC_v015(); +S_API UGCQueryHandle_t SteamAPI_ISteamUGC_CreateQueryUserUGCRequest( ISteamUGC* self, AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint32 unPage ); +S_API UGCQueryHandle_t SteamAPI_ISteamUGC_CreateQueryAllUGCRequestPage( ISteamUGC* self, EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint32 unPage ); +S_API UGCQueryHandle_t SteamAPI_ISteamUGC_CreateQueryAllUGCRequestCursor( ISteamUGC* self, EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, const char * pchCursor ); +S_API UGCQueryHandle_t SteamAPI_ISteamUGC_CreateQueryUGCDetailsRequest( ISteamUGC* self, PublishedFileId_t * pvecPublishedFileID, uint32 unNumPublishedFileIDs ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_SendQueryUGCRequest( ISteamUGC* self, UGCQueryHandle_t handle ); +S_API bool SteamAPI_ISteamUGC_GetQueryUGCResult( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, SteamUGCDetails_t * pDetails ); +S_API uint32 SteamAPI_ISteamUGC_GetQueryUGCNumTags( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index ); +S_API bool SteamAPI_ISteamUGC_GetQueryUGCTag( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, uint32 indexTag, char * pchValue, uint32 cchValueSize ); +S_API bool SteamAPI_ISteamUGC_GetQueryUGCTagDisplayName( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, uint32 indexTag, char * pchValue, uint32 cchValueSize ); +S_API bool SteamAPI_ISteamUGC_GetQueryUGCPreviewURL( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, char * pchURL, uint32 cchURLSize ); +S_API bool SteamAPI_ISteamUGC_GetQueryUGCMetadata( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, char * pchMetadata, uint32 cchMetadatasize ); +S_API bool SteamAPI_ISteamUGC_GetQueryUGCChildren( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, PublishedFileId_t * pvecPublishedFileID, uint32 cMaxEntries ); +S_API bool SteamAPI_ISteamUGC_GetQueryUGCStatistic( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, EItemStatistic eStatType, uint64 * pStatValue ); +S_API uint32 SteamAPI_ISteamUGC_GetQueryUGCNumAdditionalPreviews( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index ); +S_API bool SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, uint32 previewIndex, char * pchURLOrVideoID, uint32 cchURLSize, char * pchOriginalFileName, uint32 cchOriginalFileNameSize, EItemPreviewType * pPreviewType ); +S_API uint32 SteamAPI_ISteamUGC_GetQueryUGCNumKeyValueTags( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index ); +S_API bool SteamAPI_ISteamUGC_GetQueryUGCKeyValueTag( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, uint32 keyValueTagIndex, char * pchKey, uint32 cchKeySize, char * pchValue, uint32 cchValueSize ); +S_API bool SteamAPI_ISteamUGC_GetQueryFirstUGCKeyValueTag( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, const char * pchKey, char * pchValue, uint32 cchValueSize ); +S_API bool SteamAPI_ISteamUGC_ReleaseQueryUGCRequest( ISteamUGC* self, UGCQueryHandle_t handle ); +S_API bool SteamAPI_ISteamUGC_AddRequiredTag( ISteamUGC* self, UGCQueryHandle_t handle, const char * pTagName ); +S_API bool SteamAPI_ISteamUGC_AddRequiredTagGroup( ISteamUGC* self, UGCQueryHandle_t handle, const SteamParamStringArray_t * pTagGroups ); +S_API bool SteamAPI_ISteamUGC_AddExcludedTag( ISteamUGC* self, UGCQueryHandle_t handle, const char * pTagName ); +S_API bool SteamAPI_ISteamUGC_SetReturnOnlyIDs( ISteamUGC* self, UGCQueryHandle_t handle, bool bReturnOnlyIDs ); +S_API bool SteamAPI_ISteamUGC_SetReturnKeyValueTags( ISteamUGC* self, UGCQueryHandle_t handle, bool bReturnKeyValueTags ); +S_API bool SteamAPI_ISteamUGC_SetReturnLongDescription( ISteamUGC* self, UGCQueryHandle_t handle, bool bReturnLongDescription ); +S_API bool SteamAPI_ISteamUGC_SetReturnMetadata( ISteamUGC* self, UGCQueryHandle_t handle, bool bReturnMetadata ); +S_API bool SteamAPI_ISteamUGC_SetReturnChildren( ISteamUGC* self, UGCQueryHandle_t handle, bool bReturnChildren ); +S_API bool SteamAPI_ISteamUGC_SetReturnAdditionalPreviews( ISteamUGC* self, UGCQueryHandle_t handle, bool bReturnAdditionalPreviews ); +S_API bool SteamAPI_ISteamUGC_SetReturnTotalOnly( ISteamUGC* self, UGCQueryHandle_t handle, bool bReturnTotalOnly ); +S_API bool SteamAPI_ISteamUGC_SetReturnPlaytimeStats( ISteamUGC* self, UGCQueryHandle_t handle, uint32 unDays ); +S_API bool SteamAPI_ISteamUGC_SetLanguage( ISteamUGC* self, UGCQueryHandle_t handle, const char * pchLanguage ); +S_API bool SteamAPI_ISteamUGC_SetAllowCachedResponse( ISteamUGC* self, UGCQueryHandle_t handle, uint32 unMaxAgeSeconds ); +S_API bool SteamAPI_ISteamUGC_SetCloudFileNameFilter( ISteamUGC* self, UGCQueryHandle_t handle, const char * pMatchCloudFileName ); +S_API bool SteamAPI_ISteamUGC_SetMatchAnyTag( ISteamUGC* self, UGCQueryHandle_t handle, bool bMatchAnyTag ); +S_API bool SteamAPI_ISteamUGC_SetSearchText( ISteamUGC* self, UGCQueryHandle_t handle, const char * pSearchText ); +S_API bool SteamAPI_ISteamUGC_SetRankedByTrendDays( ISteamUGC* self, UGCQueryHandle_t handle, uint32 unDays ); +S_API bool SteamAPI_ISteamUGC_AddRequiredKeyValueTag( ISteamUGC* self, UGCQueryHandle_t handle, const char * pKey, const char * pValue ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_RequestUGCDetails( ISteamUGC* self, PublishedFileId_t nPublishedFileID, uint32 unMaxAgeSeconds ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_CreateItem( ISteamUGC* self, AppId_t nConsumerAppId, EWorkshopFileType eFileType ); +S_API UGCUpdateHandle_t SteamAPI_ISteamUGC_StartItemUpdate( ISteamUGC* self, AppId_t nConsumerAppId, PublishedFileId_t nPublishedFileID ); +S_API bool SteamAPI_ISteamUGC_SetItemTitle( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pchTitle ); +S_API bool SteamAPI_ISteamUGC_SetItemDescription( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pchDescription ); +S_API bool SteamAPI_ISteamUGC_SetItemUpdateLanguage( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pchLanguage ); +S_API bool SteamAPI_ISteamUGC_SetItemMetadata( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pchMetaData ); +S_API bool SteamAPI_ISteamUGC_SetItemVisibility( ISteamUGC* self, UGCUpdateHandle_t handle, ERemoteStoragePublishedFileVisibility eVisibility ); +S_API bool SteamAPI_ISteamUGC_SetItemTags( ISteamUGC* self, UGCUpdateHandle_t updateHandle, const SteamParamStringArray_t * pTags ); +S_API bool SteamAPI_ISteamUGC_SetItemContent( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pszContentFolder ); +S_API bool SteamAPI_ISteamUGC_SetItemPreview( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pszPreviewFile ); +S_API bool SteamAPI_ISteamUGC_SetAllowLegacyUpload( ISteamUGC* self, UGCUpdateHandle_t handle, bool bAllowLegacyUpload ); +S_API bool SteamAPI_ISteamUGC_RemoveAllItemKeyValueTags( ISteamUGC* self, UGCUpdateHandle_t handle ); +S_API bool SteamAPI_ISteamUGC_RemoveItemKeyValueTags( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pchKey ); +S_API bool SteamAPI_ISteamUGC_AddItemKeyValueTag( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pchKey, const char * pchValue ); +S_API bool SteamAPI_ISteamUGC_AddItemPreviewFile( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pszPreviewFile, EItemPreviewType type ); +S_API bool SteamAPI_ISteamUGC_AddItemPreviewVideo( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pszVideoID ); +S_API bool SteamAPI_ISteamUGC_UpdateItemPreviewFile( ISteamUGC* self, UGCUpdateHandle_t handle, uint32 index, const char * pszPreviewFile ); +S_API bool SteamAPI_ISteamUGC_UpdateItemPreviewVideo( ISteamUGC* self, UGCUpdateHandle_t handle, uint32 index, const char * pszVideoID ); +S_API bool SteamAPI_ISteamUGC_RemoveItemPreview( ISteamUGC* self, UGCUpdateHandle_t handle, uint32 index ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_SubmitItemUpdate( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pchChangeNote ); +S_API EItemUpdateStatus SteamAPI_ISteamUGC_GetItemUpdateProgress( ISteamUGC* self, UGCUpdateHandle_t handle, uint64 * punBytesProcessed, uint64 * punBytesTotal ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_SetUserItemVote( ISteamUGC* self, PublishedFileId_t nPublishedFileID, bool bVoteUp ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_GetUserItemVote( ISteamUGC* self, PublishedFileId_t nPublishedFileID ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_AddItemToFavorites( ISteamUGC* self, AppId_t nAppId, PublishedFileId_t nPublishedFileID ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_RemoveItemFromFavorites( ISteamUGC* self, AppId_t nAppId, PublishedFileId_t nPublishedFileID ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_SubscribeItem( ISteamUGC* self, PublishedFileId_t nPublishedFileID ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_UnsubscribeItem( ISteamUGC* self, PublishedFileId_t nPublishedFileID ); +S_API uint32 SteamAPI_ISteamUGC_GetNumSubscribedItems( ISteamUGC* self ); +S_API uint32 SteamAPI_ISteamUGC_GetSubscribedItems( ISteamUGC* self, PublishedFileId_t * pvecPublishedFileID, uint32 cMaxEntries ); +S_API uint32 SteamAPI_ISteamUGC_GetItemState( ISteamUGC* self, PublishedFileId_t nPublishedFileID ); +S_API bool SteamAPI_ISteamUGC_GetItemInstallInfo( ISteamUGC* self, PublishedFileId_t nPublishedFileID, uint64 * punSizeOnDisk, char * pchFolder, uint32 cchFolderSize, uint32 * punTimeStamp ); +S_API bool SteamAPI_ISteamUGC_GetItemDownloadInfo( ISteamUGC* self, PublishedFileId_t nPublishedFileID, uint64 * punBytesDownloaded, uint64 * punBytesTotal ); +S_API bool SteamAPI_ISteamUGC_DownloadItem( ISteamUGC* self, PublishedFileId_t nPublishedFileID, bool bHighPriority ); +S_API bool SteamAPI_ISteamUGC_BInitWorkshopForGameServer( ISteamUGC* self, DepotId_t unWorkshopDepotID, const char * pszFolder ); +S_API void SteamAPI_ISteamUGC_SuspendDownloads( ISteamUGC* self, bool bSuspend ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_StartPlaytimeTracking( ISteamUGC* self, PublishedFileId_t * pvecPublishedFileID, uint32 unNumPublishedFileIDs ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_StopPlaytimeTracking( ISteamUGC* self, PublishedFileId_t * pvecPublishedFileID, uint32 unNumPublishedFileIDs ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_StopPlaytimeTrackingForAllItems( ISteamUGC* self ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_AddDependency( ISteamUGC* self, PublishedFileId_t nParentPublishedFileID, PublishedFileId_t nChildPublishedFileID ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_RemoveDependency( ISteamUGC* self, PublishedFileId_t nParentPublishedFileID, PublishedFileId_t nChildPublishedFileID ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_AddAppDependency( ISteamUGC* self, PublishedFileId_t nPublishedFileID, AppId_t nAppID ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_RemoveAppDependency( ISteamUGC* self, PublishedFileId_t nPublishedFileID, AppId_t nAppID ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_GetAppDependencies( ISteamUGC* self, PublishedFileId_t nPublishedFileID ); +S_API SteamAPICall_t SteamAPI_ISteamUGC_DeleteItem( ISteamUGC* self, PublishedFileId_t nPublishedFileID ); + +// ISteamAppList +S_API ISteamAppList *SteamAPI_SteamAppList_v001(); +S_API uint32 SteamAPI_ISteamAppList_GetNumInstalledApps( ISteamAppList* self ); +S_API uint32 SteamAPI_ISteamAppList_GetInstalledApps( ISteamAppList* self, AppId_t * pvecAppID, uint32 unMaxAppIDs ); +S_API int SteamAPI_ISteamAppList_GetAppName( ISteamAppList* self, AppId_t nAppID, char * pchName, int cchNameMax ); +S_API int SteamAPI_ISteamAppList_GetAppInstallDir( ISteamAppList* self, AppId_t nAppID, char * pchDirectory, int cchNameMax ); +S_API int SteamAPI_ISteamAppList_GetAppBuildId( ISteamAppList* self, AppId_t nAppID ); + +// ISteamHTMLSurface +S_API ISteamHTMLSurface *SteamAPI_SteamHTMLSurface_v005(); +S_API bool SteamAPI_ISteamHTMLSurface_Init( ISteamHTMLSurface* self ); +S_API bool SteamAPI_ISteamHTMLSurface_Shutdown( ISteamHTMLSurface* self ); +S_API SteamAPICall_t SteamAPI_ISteamHTMLSurface_CreateBrowser( ISteamHTMLSurface* self, const char * pchUserAgent, const char * pchUserCSS ); +S_API void SteamAPI_ISteamHTMLSurface_RemoveBrowser( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle ); +S_API void SteamAPI_ISteamHTMLSurface_LoadURL( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, const char * pchURL, const char * pchPostData ); +S_API void SteamAPI_ISteamHTMLSurface_SetSize( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, uint32 unWidth, uint32 unHeight ); +S_API void SteamAPI_ISteamHTMLSurface_StopLoad( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle ); +S_API void SteamAPI_ISteamHTMLSurface_Reload( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle ); +S_API void SteamAPI_ISteamHTMLSurface_GoBack( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle ); +S_API void SteamAPI_ISteamHTMLSurface_GoForward( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle ); +S_API void SteamAPI_ISteamHTMLSurface_AddHeader( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, const char * pchKey, const char * pchValue ); +S_API void SteamAPI_ISteamHTMLSurface_ExecuteJavascript( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, const char * pchScript ); +S_API void SteamAPI_ISteamHTMLSurface_MouseUp( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, ISteamHTMLSurface::EHTMLMouseButton eMouseButton ); +S_API void SteamAPI_ISteamHTMLSurface_MouseDown( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, ISteamHTMLSurface::EHTMLMouseButton eMouseButton ); +S_API void SteamAPI_ISteamHTMLSurface_MouseDoubleClick( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, ISteamHTMLSurface::EHTMLMouseButton eMouseButton ); +S_API void SteamAPI_ISteamHTMLSurface_MouseMove( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, int x, int y ); +S_API void SteamAPI_ISteamHTMLSurface_MouseWheel( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, int32 nDelta ); +S_API void SteamAPI_ISteamHTMLSurface_KeyDown( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, uint32 nNativeKeyCode, ISteamHTMLSurface::EHTMLKeyModifiers eHTMLKeyModifiers, bool bIsSystemKey ); +S_API void SteamAPI_ISteamHTMLSurface_KeyUp( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, uint32 nNativeKeyCode, ISteamHTMLSurface::EHTMLKeyModifiers eHTMLKeyModifiers ); +S_API void SteamAPI_ISteamHTMLSurface_KeyChar( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, uint32 cUnicodeChar, ISteamHTMLSurface::EHTMLKeyModifiers eHTMLKeyModifiers ); +S_API void SteamAPI_ISteamHTMLSurface_SetHorizontalScroll( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, uint32 nAbsolutePixelScroll ); +S_API void SteamAPI_ISteamHTMLSurface_SetVerticalScroll( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, uint32 nAbsolutePixelScroll ); +S_API void SteamAPI_ISteamHTMLSurface_SetKeyFocus( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, bool bHasKeyFocus ); +S_API void SteamAPI_ISteamHTMLSurface_ViewSource( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle ); +S_API void SteamAPI_ISteamHTMLSurface_CopyToClipboard( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle ); +S_API void SteamAPI_ISteamHTMLSurface_PasteFromClipboard( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle ); +S_API void SteamAPI_ISteamHTMLSurface_Find( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, const char * pchSearchStr, bool bCurrentlyInFind, bool bReverse ); +S_API void SteamAPI_ISteamHTMLSurface_StopFind( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle ); +S_API void SteamAPI_ISteamHTMLSurface_GetLinkAtPosition( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, int x, int y ); +S_API void SteamAPI_ISteamHTMLSurface_SetCookie( ISteamHTMLSurface* self, const char * pchHostname, const char * pchKey, const char * pchValue, const char * pchPath, RTime32 nExpires, bool bSecure, bool bHTTPOnly ); +S_API void SteamAPI_ISteamHTMLSurface_SetPageScaleFactor( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, float flZoom, int nPointX, int nPointY ); +S_API void SteamAPI_ISteamHTMLSurface_SetBackgroundMode( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, bool bBackgroundMode ); +S_API void SteamAPI_ISteamHTMLSurface_SetDPIScalingFactor( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, float flDPIScaling ); +S_API void SteamAPI_ISteamHTMLSurface_OpenDeveloperTools( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle ); +S_API void SteamAPI_ISteamHTMLSurface_AllowStartRequest( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, bool bAllowed ); +S_API void SteamAPI_ISteamHTMLSurface_JSDialogResponse( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, bool bResult ); +S_API void SteamAPI_ISteamHTMLSurface_FileLoadDialogResponse( ISteamHTMLSurface* self, HHTMLBrowser unBrowserHandle, const char ** pchSelectedFiles ); + +// ISteamInventory +S_API ISteamInventory *SteamAPI_SteamInventory_v003(); +S_API ISteamInventory *SteamAPI_SteamGameServerInventory_v003(); +S_API EResult SteamAPI_ISteamInventory_GetResultStatus( ISteamInventory* self, SteamInventoryResult_t resultHandle ); +S_API bool SteamAPI_ISteamInventory_GetResultItems( ISteamInventory* self, SteamInventoryResult_t resultHandle, SteamItemDetails_t * pOutItemsArray, uint32 * punOutItemsArraySize ); +S_API bool SteamAPI_ISteamInventory_GetResultItemProperty( ISteamInventory* self, SteamInventoryResult_t resultHandle, uint32 unItemIndex, const char * pchPropertyName, char * pchValueBuffer, uint32 * punValueBufferSizeOut ); +S_API uint32 SteamAPI_ISteamInventory_GetResultTimestamp( ISteamInventory* self, SteamInventoryResult_t resultHandle ); +S_API bool SteamAPI_ISteamInventory_CheckResultSteamID( ISteamInventory* self, SteamInventoryResult_t resultHandle, uint64_steamid steamIDExpected ); +S_API void SteamAPI_ISteamInventory_DestroyResult( ISteamInventory* self, SteamInventoryResult_t resultHandle ); +S_API bool SteamAPI_ISteamInventory_GetAllItems( ISteamInventory* self, SteamInventoryResult_t * pResultHandle ); +S_API bool SteamAPI_ISteamInventory_GetItemsByID( ISteamInventory* self, SteamInventoryResult_t * pResultHandle, const SteamItemInstanceID_t * pInstanceIDs, uint32 unCountInstanceIDs ); +S_API bool SteamAPI_ISteamInventory_SerializeResult( ISteamInventory* self, SteamInventoryResult_t resultHandle, void * pOutBuffer, uint32 * punOutBufferSize ); +S_API bool SteamAPI_ISteamInventory_DeserializeResult( ISteamInventory* self, SteamInventoryResult_t * pOutResultHandle, const void * pBuffer, uint32 unBufferSize, bool bRESERVED_MUST_BE_FALSE ); +S_API bool SteamAPI_ISteamInventory_GenerateItems( ISteamInventory* self, SteamInventoryResult_t * pResultHandle, const SteamItemDef_t * pArrayItemDefs, const uint32 * punArrayQuantity, uint32 unArrayLength ); +S_API bool SteamAPI_ISteamInventory_GrantPromoItems( ISteamInventory* self, SteamInventoryResult_t * pResultHandle ); +S_API bool SteamAPI_ISteamInventory_AddPromoItem( ISteamInventory* self, SteamInventoryResult_t * pResultHandle, SteamItemDef_t itemDef ); +S_API bool SteamAPI_ISteamInventory_AddPromoItems( ISteamInventory* self, SteamInventoryResult_t * pResultHandle, const SteamItemDef_t * pArrayItemDefs, uint32 unArrayLength ); +S_API bool SteamAPI_ISteamInventory_ConsumeItem( ISteamInventory* self, SteamInventoryResult_t * pResultHandle, SteamItemInstanceID_t itemConsume, uint32 unQuantity ); +S_API bool SteamAPI_ISteamInventory_ExchangeItems( ISteamInventory* self, SteamInventoryResult_t * pResultHandle, const SteamItemDef_t * pArrayGenerate, const uint32 * punArrayGenerateQuantity, uint32 unArrayGenerateLength, const SteamItemInstanceID_t * pArrayDestroy, const uint32 * punArrayDestroyQuantity, uint32 unArrayDestroyLength ); +S_API bool SteamAPI_ISteamInventory_TransferItemQuantity( ISteamInventory* self, SteamInventoryResult_t * pResultHandle, SteamItemInstanceID_t itemIdSource, uint32 unQuantity, SteamItemInstanceID_t itemIdDest ); +S_API void SteamAPI_ISteamInventory_SendItemDropHeartbeat( ISteamInventory* self ); +S_API bool SteamAPI_ISteamInventory_TriggerItemDrop( ISteamInventory* self, SteamInventoryResult_t * pResultHandle, SteamItemDef_t dropListDefinition ); +S_API bool SteamAPI_ISteamInventory_TradeItems( ISteamInventory* self, SteamInventoryResult_t * pResultHandle, uint64_steamid steamIDTradePartner, const SteamItemInstanceID_t * pArrayGive, const uint32 * pArrayGiveQuantity, uint32 nArrayGiveLength, const SteamItemInstanceID_t * pArrayGet, const uint32 * pArrayGetQuantity, uint32 nArrayGetLength ); +S_API bool SteamAPI_ISteamInventory_LoadItemDefinitions( ISteamInventory* self ); +S_API bool SteamAPI_ISteamInventory_GetItemDefinitionIDs( ISteamInventory* self, SteamItemDef_t * pItemDefIDs, uint32 * punItemDefIDsArraySize ); +S_API bool SteamAPI_ISteamInventory_GetItemDefinitionProperty( ISteamInventory* self, SteamItemDef_t iDefinition, const char * pchPropertyName, char * pchValueBuffer, uint32 * punValueBufferSizeOut ); +S_API SteamAPICall_t SteamAPI_ISteamInventory_RequestEligiblePromoItemDefinitionsIDs( ISteamInventory* self, uint64_steamid steamID ); +S_API bool SteamAPI_ISteamInventory_GetEligiblePromoItemDefinitionIDs( ISteamInventory* self, uint64_steamid steamID, SteamItemDef_t * pItemDefIDs, uint32 * punItemDefIDsArraySize ); +S_API SteamAPICall_t SteamAPI_ISteamInventory_StartPurchase( ISteamInventory* self, const SteamItemDef_t * pArrayItemDefs, const uint32 * punArrayQuantity, uint32 unArrayLength ); +S_API SteamAPICall_t SteamAPI_ISteamInventory_RequestPrices( ISteamInventory* self ); +S_API uint32 SteamAPI_ISteamInventory_GetNumItemsWithPrices( ISteamInventory* self ); +S_API bool SteamAPI_ISteamInventory_GetItemsWithPrices( ISteamInventory* self, SteamItemDef_t * pArrayItemDefs, uint64 * pCurrentPrices, uint64 * pBasePrices, uint32 unArrayLength ); +S_API bool SteamAPI_ISteamInventory_GetItemPrice( ISteamInventory* self, SteamItemDef_t iDefinition, uint64 * pCurrentPrice, uint64 * pBasePrice ); +S_API SteamInventoryUpdateHandle_t SteamAPI_ISteamInventory_StartUpdateProperties( ISteamInventory* self ); +S_API bool SteamAPI_ISteamInventory_RemoveProperty( ISteamInventory* self, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, const char * pchPropertyName ); +S_API bool SteamAPI_ISteamInventory_SetPropertyString( ISteamInventory* self, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, const char * pchPropertyName, const char * pchPropertyValue ); +S_API bool SteamAPI_ISteamInventory_SetPropertyBool( ISteamInventory* self, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, const char * pchPropertyName, bool bValue ); +S_API bool SteamAPI_ISteamInventory_SetPropertyInt64( ISteamInventory* self, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, const char * pchPropertyName, int64 nValue ); +S_API bool SteamAPI_ISteamInventory_SetPropertyFloat( ISteamInventory* self, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, const char * pchPropertyName, float flValue ); +S_API bool SteamAPI_ISteamInventory_SubmitUpdateProperties( ISteamInventory* self, SteamInventoryUpdateHandle_t handle, SteamInventoryResult_t * pResultHandle ); +S_API bool SteamAPI_ISteamInventory_InspectItem( ISteamInventory* self, SteamInventoryResult_t * pResultHandle, const char * pchItemToken ); + +// ISteamVideo +S_API ISteamVideo *SteamAPI_SteamVideo_v002(); +S_API void SteamAPI_ISteamVideo_GetVideoURL( ISteamVideo* self, AppId_t unVideoAppID ); +S_API bool SteamAPI_ISteamVideo_IsBroadcasting( ISteamVideo* self, int * pnNumViewers ); +S_API void SteamAPI_ISteamVideo_GetOPFSettings( ISteamVideo* self, AppId_t unVideoAppID ); +S_API bool SteamAPI_ISteamVideo_GetOPFStringForApp( ISteamVideo* self, AppId_t unVideoAppID, char * pchBuffer, int32 * pnBufferSize ); + +// ISteamParentalSettings +S_API ISteamParentalSettings *SteamAPI_SteamParentalSettings_v001(); +S_API bool SteamAPI_ISteamParentalSettings_BIsParentalLockEnabled( ISteamParentalSettings* self ); +S_API bool SteamAPI_ISteamParentalSettings_BIsParentalLockLocked( ISteamParentalSettings* self ); +S_API bool SteamAPI_ISteamParentalSettings_BIsAppBlocked( ISteamParentalSettings* self, AppId_t nAppID ); +S_API bool SteamAPI_ISteamParentalSettings_BIsAppInBlockList( ISteamParentalSettings* self, AppId_t nAppID ); +S_API bool SteamAPI_ISteamParentalSettings_BIsFeatureBlocked( ISteamParentalSettings* self, EParentalFeature eFeature ); +S_API bool SteamAPI_ISteamParentalSettings_BIsFeatureInBlockList( ISteamParentalSettings* self, EParentalFeature eFeature ); + +// ISteamRemotePlay +S_API ISteamRemotePlay *SteamAPI_SteamRemotePlay_v001(); +S_API uint32 SteamAPI_ISteamRemotePlay_GetSessionCount( ISteamRemotePlay* self ); +S_API RemotePlaySessionID_t SteamAPI_ISteamRemotePlay_GetSessionID( ISteamRemotePlay* self, int iSessionIndex ); +S_API uint64_steamid SteamAPI_ISteamRemotePlay_GetSessionSteamID( ISteamRemotePlay* self, RemotePlaySessionID_t unSessionID ); +S_API const char * SteamAPI_ISteamRemotePlay_GetSessionClientName( ISteamRemotePlay* self, RemotePlaySessionID_t unSessionID ); +S_API ESteamDeviceFormFactor SteamAPI_ISteamRemotePlay_GetSessionClientFormFactor( ISteamRemotePlay* self, RemotePlaySessionID_t unSessionID ); +S_API bool SteamAPI_ISteamRemotePlay_BGetSessionClientResolution( ISteamRemotePlay* self, RemotePlaySessionID_t unSessionID, int * pnResolutionX, int * pnResolutionY ); +S_API bool SteamAPI_ISteamRemotePlay_BSendRemotePlayTogetherInvite( ISteamRemotePlay* self, uint64_steamid steamIDFriend ); + +// ISteamNetworkingMessages +S_API ISteamNetworkingMessages *SteamAPI_SteamNetworkingMessages_SteamAPI_v002(); +S_API ISteamNetworkingMessages *SteamAPI_SteamGameServerNetworkingMessages_SteamAPI_v002(); +S_API EResult SteamAPI_ISteamNetworkingMessages_SendMessageToUser( ISteamNetworkingMessages* self, const SteamNetworkingIdentity & identityRemote, const void * pubData, uint32 cubData, int nSendFlags, int nRemoteChannel ); +S_API int SteamAPI_ISteamNetworkingMessages_ReceiveMessagesOnChannel( ISteamNetworkingMessages* self, int nLocalChannel, SteamNetworkingMessage_t ** ppOutMessages, int nMaxMessages ); +S_API bool SteamAPI_ISteamNetworkingMessages_AcceptSessionWithUser( ISteamNetworkingMessages* self, const SteamNetworkingIdentity & identityRemote ); +S_API bool SteamAPI_ISteamNetworkingMessages_CloseSessionWithUser( ISteamNetworkingMessages* self, const SteamNetworkingIdentity & identityRemote ); +S_API bool SteamAPI_ISteamNetworkingMessages_CloseChannelWithUser( ISteamNetworkingMessages* self, const SteamNetworkingIdentity & identityRemote, int nLocalChannel ); +S_API ESteamNetworkingConnectionState SteamAPI_ISteamNetworkingMessages_GetSessionConnectionInfo( ISteamNetworkingMessages* self, const SteamNetworkingIdentity & identityRemote, SteamNetConnectionInfo_t * pConnectionInfo, SteamNetworkingQuickConnectionStatus * pQuickStatus ); + +// ISteamNetworkingSockets +S_API ISteamNetworkingSockets *SteamAPI_SteamNetworkingSockets_SteamAPI_v009(); +S_API ISteamNetworkingSockets *SteamAPI_SteamGameServerNetworkingSockets_SteamAPI_v009(); +S_API HSteamListenSocket SteamAPI_ISteamNetworkingSockets_CreateListenSocketIP( ISteamNetworkingSockets* self, const SteamNetworkingIPAddr & localAddress, int nOptions, const SteamNetworkingConfigValue_t * pOptions ); +S_API HSteamNetConnection SteamAPI_ISteamNetworkingSockets_ConnectByIPAddress( ISteamNetworkingSockets* self, const SteamNetworkingIPAddr & address, int nOptions, const SteamNetworkingConfigValue_t * pOptions ); +S_API HSteamListenSocket SteamAPI_ISteamNetworkingSockets_CreateListenSocketP2P( ISteamNetworkingSockets* self, int nLocalVirtualPort, int nOptions, const SteamNetworkingConfigValue_t * pOptions ); +S_API HSteamNetConnection SteamAPI_ISteamNetworkingSockets_ConnectP2P( ISteamNetworkingSockets* self, const SteamNetworkingIdentity & identityRemote, int nRemoteVirtualPort, int nOptions, const SteamNetworkingConfigValue_t * pOptions ); +S_API EResult SteamAPI_ISteamNetworkingSockets_AcceptConnection( ISteamNetworkingSockets* self, HSteamNetConnection hConn ); +S_API bool SteamAPI_ISteamNetworkingSockets_CloseConnection( ISteamNetworkingSockets* self, HSteamNetConnection hPeer, int nReason, const char * pszDebug, bool bEnableLinger ); +S_API bool SteamAPI_ISteamNetworkingSockets_CloseListenSocket( ISteamNetworkingSockets* self, HSteamListenSocket hSocket ); +S_API bool SteamAPI_ISteamNetworkingSockets_SetConnectionUserData( ISteamNetworkingSockets* self, HSteamNetConnection hPeer, int64 nUserData ); +S_API int64 SteamAPI_ISteamNetworkingSockets_GetConnectionUserData( ISteamNetworkingSockets* self, HSteamNetConnection hPeer ); +S_API void SteamAPI_ISteamNetworkingSockets_SetConnectionName( ISteamNetworkingSockets* self, HSteamNetConnection hPeer, const char * pszName ); +S_API bool SteamAPI_ISteamNetworkingSockets_GetConnectionName( ISteamNetworkingSockets* self, HSteamNetConnection hPeer, char * pszName, int nMaxLen ); +S_API EResult SteamAPI_ISteamNetworkingSockets_SendMessageToConnection( ISteamNetworkingSockets* self, HSteamNetConnection hConn, const void * pData, uint32 cbData, int nSendFlags, int64 * pOutMessageNumber ); +S_API void SteamAPI_ISteamNetworkingSockets_SendMessages( ISteamNetworkingSockets* self, int nMessages, SteamNetworkingMessage_t *const * pMessages, int64 * pOutMessageNumberOrResult ); +S_API EResult SteamAPI_ISteamNetworkingSockets_FlushMessagesOnConnection( ISteamNetworkingSockets* self, HSteamNetConnection hConn ); +S_API int SteamAPI_ISteamNetworkingSockets_ReceiveMessagesOnConnection( ISteamNetworkingSockets* self, HSteamNetConnection hConn, SteamNetworkingMessage_t ** ppOutMessages, int nMaxMessages ); +S_API bool SteamAPI_ISteamNetworkingSockets_GetConnectionInfo( ISteamNetworkingSockets* self, HSteamNetConnection hConn, SteamNetConnectionInfo_t * pInfo ); +S_API bool SteamAPI_ISteamNetworkingSockets_GetQuickConnectionStatus( ISteamNetworkingSockets* self, HSteamNetConnection hConn, SteamNetworkingQuickConnectionStatus * pStats ); +S_API int SteamAPI_ISteamNetworkingSockets_GetDetailedConnectionStatus( ISteamNetworkingSockets* self, HSteamNetConnection hConn, char * pszBuf, int cbBuf ); +S_API bool SteamAPI_ISteamNetworkingSockets_GetListenSocketAddress( ISteamNetworkingSockets* self, HSteamListenSocket hSocket, SteamNetworkingIPAddr * address ); +S_API bool SteamAPI_ISteamNetworkingSockets_CreateSocketPair( ISteamNetworkingSockets* self, HSteamNetConnection * pOutConnection1, HSteamNetConnection * pOutConnection2, bool bUseNetworkLoopback, const SteamNetworkingIdentity * pIdentity1, const SteamNetworkingIdentity * pIdentity2 ); +S_API bool SteamAPI_ISteamNetworkingSockets_GetIdentity( ISteamNetworkingSockets* self, SteamNetworkingIdentity * pIdentity ); +S_API ESteamNetworkingAvailability SteamAPI_ISteamNetworkingSockets_InitAuthentication( ISteamNetworkingSockets* self ); +S_API ESteamNetworkingAvailability SteamAPI_ISteamNetworkingSockets_GetAuthenticationStatus( ISteamNetworkingSockets* self, SteamNetAuthenticationStatus_t * pDetails ); +S_API HSteamNetPollGroup SteamAPI_ISteamNetworkingSockets_CreatePollGroup( ISteamNetworkingSockets* self ); +S_API bool SteamAPI_ISteamNetworkingSockets_DestroyPollGroup( ISteamNetworkingSockets* self, HSteamNetPollGroup hPollGroup ); +S_API bool SteamAPI_ISteamNetworkingSockets_SetConnectionPollGroup( ISteamNetworkingSockets* self, HSteamNetConnection hConn, HSteamNetPollGroup hPollGroup ); +S_API int SteamAPI_ISteamNetworkingSockets_ReceiveMessagesOnPollGroup( ISteamNetworkingSockets* self, HSteamNetPollGroup hPollGroup, SteamNetworkingMessage_t ** ppOutMessages, int nMaxMessages ); +S_API bool SteamAPI_ISteamNetworkingSockets_ReceivedRelayAuthTicket( ISteamNetworkingSockets* self, const void * pvTicket, int cbTicket, SteamDatagramRelayAuthTicket * pOutParsedTicket ); +S_API int SteamAPI_ISteamNetworkingSockets_FindRelayAuthTicketForServer( ISteamNetworkingSockets* self, const SteamNetworkingIdentity & identityGameServer, int nRemoteVirtualPort, SteamDatagramRelayAuthTicket * pOutParsedTicket ); +S_API HSteamNetConnection SteamAPI_ISteamNetworkingSockets_ConnectToHostedDedicatedServer( ISteamNetworkingSockets* self, const SteamNetworkingIdentity & identityTarget, int nRemoteVirtualPort, int nOptions, const SteamNetworkingConfigValue_t * pOptions ); +S_API uint16 SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerPort( ISteamNetworkingSockets* self ); +S_API SteamNetworkingPOPID SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerPOPID( ISteamNetworkingSockets* self ); +S_API EResult SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerAddress( ISteamNetworkingSockets* self, SteamDatagramHostedAddress * pRouting ); +S_API HSteamListenSocket SteamAPI_ISteamNetworkingSockets_CreateHostedDedicatedServerListenSocket( ISteamNetworkingSockets* self, int nLocalVirtualPort, int nOptions, const SteamNetworkingConfigValue_t * pOptions ); +S_API EResult SteamAPI_ISteamNetworkingSockets_GetGameCoordinatorServerLogin( ISteamNetworkingSockets* self, SteamDatagramGameCoordinatorServerLogin * pLoginInfo, int * pcbSignedBlob, void * pBlob ); +S_API HSteamNetConnection SteamAPI_ISteamNetworkingSockets_ConnectP2PCustomSignaling( ISteamNetworkingSockets* self, ISteamNetworkingConnectionSignaling * pSignaling, const SteamNetworkingIdentity * pPeerIdentity, int nRemoteVirtualPort, int nOptions, const SteamNetworkingConfigValue_t * pOptions ); +S_API bool SteamAPI_ISteamNetworkingSockets_ReceivedP2PCustomSignal( ISteamNetworkingSockets* self, const void * pMsg, int cbMsg, ISteamNetworkingSignalingRecvContext * pContext ); +S_API bool SteamAPI_ISteamNetworkingSockets_GetCertificateRequest( ISteamNetworkingSockets* self, int * pcbBlob, void * pBlob, SteamNetworkingErrMsg & errMsg ); +S_API bool SteamAPI_ISteamNetworkingSockets_SetCertificate( ISteamNetworkingSockets* self, const void * pCertificate, int cbCertificate, SteamNetworkingErrMsg & errMsg ); +S_API void SteamAPI_ISteamNetworkingSockets_RunCallbacks( ISteamNetworkingSockets* self ); + +// ISteamNetworkingUtils +S_API ISteamNetworkingUtils *SteamAPI_SteamNetworkingUtils_SteamAPI_v003(); +S_API SteamNetworkingMessage_t * SteamAPI_ISteamNetworkingUtils_AllocateMessage( ISteamNetworkingUtils* self, int cbAllocateBuffer ); +S_API void SteamAPI_ISteamNetworkingUtils_InitRelayNetworkAccess( ISteamNetworkingUtils* self ); +S_API ESteamNetworkingAvailability SteamAPI_ISteamNetworkingUtils_GetRelayNetworkStatus( ISteamNetworkingUtils* self, SteamRelayNetworkStatus_t * pDetails ); +S_API float SteamAPI_ISteamNetworkingUtils_GetLocalPingLocation( ISteamNetworkingUtils* self, SteamNetworkPingLocation_t & result ); +S_API int SteamAPI_ISteamNetworkingUtils_EstimatePingTimeBetweenTwoLocations( ISteamNetworkingUtils* self, const SteamNetworkPingLocation_t & location1, const SteamNetworkPingLocation_t & location2 ); +S_API int SteamAPI_ISteamNetworkingUtils_EstimatePingTimeFromLocalHost( ISteamNetworkingUtils* self, const SteamNetworkPingLocation_t & remoteLocation ); +S_API void SteamAPI_ISteamNetworkingUtils_ConvertPingLocationToString( ISteamNetworkingUtils* self, const SteamNetworkPingLocation_t & location, char * pszBuf, int cchBufSize ); +S_API bool SteamAPI_ISteamNetworkingUtils_ParsePingLocationString( ISteamNetworkingUtils* self, const char * pszString, SteamNetworkPingLocation_t & result ); +S_API bool SteamAPI_ISteamNetworkingUtils_CheckPingDataUpToDate( ISteamNetworkingUtils* self, float flMaxAgeSeconds ); +S_API int SteamAPI_ISteamNetworkingUtils_GetPingToDataCenter( ISteamNetworkingUtils* self, SteamNetworkingPOPID popID, SteamNetworkingPOPID * pViaRelayPoP ); +S_API int SteamAPI_ISteamNetworkingUtils_GetDirectPingToPOP( ISteamNetworkingUtils* self, SteamNetworkingPOPID popID ); +S_API int SteamAPI_ISteamNetworkingUtils_GetPOPCount( ISteamNetworkingUtils* self ); +S_API int SteamAPI_ISteamNetworkingUtils_GetPOPList( ISteamNetworkingUtils* self, SteamNetworkingPOPID * list, int nListSz ); +S_API SteamNetworkingMicroseconds SteamAPI_ISteamNetworkingUtils_GetLocalTimestamp( ISteamNetworkingUtils* self ); +S_API void SteamAPI_ISteamNetworkingUtils_SetDebugOutputFunction( ISteamNetworkingUtils* self, ESteamNetworkingSocketsDebugOutputType eDetailLevel, FSteamNetworkingSocketsDebugOutput pfnFunc ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetGlobalConfigValueInt32( ISteamNetworkingUtils* self, ESteamNetworkingConfigValue eValue, int32 val ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetGlobalConfigValueFloat( ISteamNetworkingUtils* self, ESteamNetworkingConfigValue eValue, float val ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetGlobalConfigValueString( ISteamNetworkingUtils* self, ESteamNetworkingConfigValue eValue, const char * val ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetGlobalConfigValuePtr( ISteamNetworkingUtils* self, ESteamNetworkingConfigValue eValue, void * val ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetConnectionConfigValueInt32( ISteamNetworkingUtils* self, HSteamNetConnection hConn, ESteamNetworkingConfigValue eValue, int32 val ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetConnectionConfigValueFloat( ISteamNetworkingUtils* self, HSteamNetConnection hConn, ESteamNetworkingConfigValue eValue, float val ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetConnectionConfigValueString( ISteamNetworkingUtils* self, HSteamNetConnection hConn, ESteamNetworkingConfigValue eValue, const char * val ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_SteamNetConnectionStatusChanged( ISteamNetworkingUtils* self, FnSteamNetConnectionStatusChanged fnCallback ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_SteamNetAuthenticationStatusChanged( ISteamNetworkingUtils* self, FnSteamNetAuthenticationStatusChanged fnCallback ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_SteamRelayNetworkStatusChanged( ISteamNetworkingUtils* self, FnSteamRelayNetworkStatusChanged fnCallback ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_MessagesSessionRequest( ISteamNetworkingUtils* self, FnSteamNetworkingMessagesSessionRequest fnCallback ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_MessagesSessionFailed( ISteamNetworkingUtils* self, FnSteamNetworkingMessagesSessionFailed fnCallback ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetConfigValue( ISteamNetworkingUtils* self, ESteamNetworkingConfigValue eValue, ESteamNetworkingConfigScope eScopeType, intptr_t scopeObj, ESteamNetworkingConfigDataType eDataType, const void * pArg ); +S_API bool SteamAPI_ISteamNetworkingUtils_SetConfigValueStruct( ISteamNetworkingUtils* self, const SteamNetworkingConfigValue_t & opt, ESteamNetworkingConfigScope eScopeType, intptr_t scopeObj ); +S_API ESteamNetworkingGetConfigValueResult SteamAPI_ISteamNetworkingUtils_GetConfigValue( ISteamNetworkingUtils* self, ESteamNetworkingConfigValue eValue, ESteamNetworkingConfigScope eScopeType, intptr_t scopeObj, ESteamNetworkingConfigDataType * pOutDataType, void * pResult, size_t * cbResult ); +S_API bool SteamAPI_ISteamNetworkingUtils_GetConfigValueInfo( ISteamNetworkingUtils* self, ESteamNetworkingConfigValue eValue, const char ** pOutName, ESteamNetworkingConfigDataType * pOutDataType, ESteamNetworkingConfigScope * pOutScope, ESteamNetworkingConfigValue * pOutNextValue ); +S_API ESteamNetworkingConfigValue SteamAPI_ISteamNetworkingUtils_GetFirstConfigValue( ISteamNetworkingUtils* self ); +S_API void SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_ToString( ISteamNetworkingUtils* self, const SteamNetworkingIPAddr & addr, char * buf, uint32 cbBuf, bool bWithPort ); +S_API bool SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_ParseString( ISteamNetworkingUtils* self, SteamNetworkingIPAddr * pAddr, const char * pszStr ); +S_API void SteamAPI_ISteamNetworkingUtils_SteamNetworkingIdentity_ToString( ISteamNetworkingUtils* self, const SteamNetworkingIdentity & identity, char * buf, uint32 cbBuf ); +S_API bool SteamAPI_ISteamNetworkingUtils_SteamNetworkingIdentity_ParseString( ISteamNetworkingUtils* self, SteamNetworkingIdentity * pIdentity, const char * pszStr ); + +// ISteamGameServer +S_API ISteamGameServer *SteamAPI_SteamGameServer_v013(); +S_API void SteamAPI_ISteamGameServer_SetProduct( ISteamGameServer* self, const char * pszProduct ); +S_API void SteamAPI_ISteamGameServer_SetGameDescription( ISteamGameServer* self, const char * pszGameDescription ); +S_API void SteamAPI_ISteamGameServer_SetModDir( ISteamGameServer* self, const char * pszModDir ); +S_API void SteamAPI_ISteamGameServer_SetDedicatedServer( ISteamGameServer* self, bool bDedicated ); +S_API void SteamAPI_ISteamGameServer_LogOn( ISteamGameServer* self, const char * pszToken ); +S_API void SteamAPI_ISteamGameServer_LogOnAnonymous( ISteamGameServer* self ); +S_API void SteamAPI_ISteamGameServer_LogOff( ISteamGameServer* self ); +S_API bool SteamAPI_ISteamGameServer_BLoggedOn( ISteamGameServer* self ); +S_API bool SteamAPI_ISteamGameServer_BSecure( ISteamGameServer* self ); +S_API uint64_steamid SteamAPI_ISteamGameServer_GetSteamID( ISteamGameServer* self ); +S_API bool SteamAPI_ISteamGameServer_WasRestartRequested( ISteamGameServer* self ); +S_API void SteamAPI_ISteamGameServer_SetMaxPlayerCount( ISteamGameServer* self, int cPlayersMax ); +S_API void SteamAPI_ISteamGameServer_SetBotPlayerCount( ISteamGameServer* self, int cBotplayers ); +S_API void SteamAPI_ISteamGameServer_SetServerName( ISteamGameServer* self, const char * pszServerName ); +S_API void SteamAPI_ISteamGameServer_SetMapName( ISteamGameServer* self, const char * pszMapName ); +S_API void SteamAPI_ISteamGameServer_SetPasswordProtected( ISteamGameServer* self, bool bPasswordProtected ); +S_API void SteamAPI_ISteamGameServer_SetSpectatorPort( ISteamGameServer* self, uint16 unSpectatorPort ); +S_API void SteamAPI_ISteamGameServer_SetSpectatorServerName( ISteamGameServer* self, const char * pszSpectatorServerName ); +S_API void SteamAPI_ISteamGameServer_ClearAllKeyValues( ISteamGameServer* self ); +S_API void SteamAPI_ISteamGameServer_SetKeyValue( ISteamGameServer* self, const char * pKey, const char * pValue ); +S_API void SteamAPI_ISteamGameServer_SetGameTags( ISteamGameServer* self, const char * pchGameTags ); +S_API void SteamAPI_ISteamGameServer_SetGameData( ISteamGameServer* self, const char * pchGameData ); +S_API void SteamAPI_ISteamGameServer_SetRegion( ISteamGameServer* self, const char * pszRegion ); +S_API bool SteamAPI_ISteamGameServer_SendUserConnectAndAuthenticate( ISteamGameServer* self, uint32 unIPClient, const void * pvAuthBlob, uint32 cubAuthBlobSize, CSteamID * pSteamIDUser ); +S_API uint64_steamid SteamAPI_ISteamGameServer_CreateUnauthenticatedUserConnection( ISteamGameServer* self ); +S_API void SteamAPI_ISteamGameServer_SendUserDisconnect( ISteamGameServer* self, uint64_steamid steamIDUser ); +S_API bool SteamAPI_ISteamGameServer_BUpdateUserData( ISteamGameServer* self, uint64_steamid steamIDUser, const char * pchPlayerName, uint32 uScore ); +S_API HAuthTicket SteamAPI_ISteamGameServer_GetAuthSessionTicket( ISteamGameServer* self, void * pTicket, int cbMaxTicket, uint32 * pcbTicket ); +S_API EBeginAuthSessionResult SteamAPI_ISteamGameServer_BeginAuthSession( ISteamGameServer* self, const void * pAuthTicket, int cbAuthTicket, uint64_steamid steamID ); +S_API void SteamAPI_ISteamGameServer_EndAuthSession( ISteamGameServer* self, uint64_steamid steamID ); +S_API void SteamAPI_ISteamGameServer_CancelAuthTicket( ISteamGameServer* self, HAuthTicket hAuthTicket ); +S_API EUserHasLicenseForAppResult SteamAPI_ISteamGameServer_UserHasLicenseForApp( ISteamGameServer* self, uint64_steamid steamID, AppId_t appID ); +S_API bool SteamAPI_ISteamGameServer_RequestUserGroupStatus( ISteamGameServer* self, uint64_steamid steamIDUser, uint64_steamid steamIDGroup ); +S_API void SteamAPI_ISteamGameServer_GetGameplayStats( ISteamGameServer* self ); +S_API SteamAPICall_t SteamAPI_ISteamGameServer_GetServerReputation( ISteamGameServer* self ); +S_API SteamIPAddress_t SteamAPI_ISteamGameServer_GetPublicIP( ISteamGameServer* self ); +S_API bool SteamAPI_ISteamGameServer_HandleIncomingPacket( ISteamGameServer* self, const void * pData, int cbData, uint32 srcIP, uint16 srcPort ); +S_API int SteamAPI_ISteamGameServer_GetNextOutgoingPacket( ISteamGameServer* self, void * pOut, int cbMaxOut, uint32 * pNetAdr, uint16 * pPort ); +S_API void SteamAPI_ISteamGameServer_EnableHeartbeats( ISteamGameServer* self, bool bActive ); +S_API void SteamAPI_ISteamGameServer_SetHeartbeatInterval( ISteamGameServer* self, int iHeartbeatInterval ); +S_API void SteamAPI_ISteamGameServer_ForceHeartbeat( ISteamGameServer* self ); +S_API SteamAPICall_t SteamAPI_ISteamGameServer_AssociateWithClan( ISteamGameServer* self, uint64_steamid steamIDClan ); +S_API SteamAPICall_t SteamAPI_ISteamGameServer_ComputeNewPlayerCompatibility( ISteamGameServer* self, uint64_steamid steamIDNewPlayer ); + +// ISteamGameServerStats +S_API ISteamGameServerStats *SteamAPI_SteamGameServerStats_v001(); +S_API SteamAPICall_t SteamAPI_ISteamGameServerStats_RequestUserStats( ISteamGameServerStats* self, uint64_steamid steamIDUser ); +S_API bool SteamAPI_ISteamGameServerStats_GetUserStatInt32( ISteamGameServerStats* self, uint64_steamid steamIDUser, const char * pchName, int32 * pData ); +S_API bool SteamAPI_ISteamGameServerStats_GetUserStatFloat( ISteamGameServerStats* self, uint64_steamid steamIDUser, const char * pchName, float * pData ); +S_API bool SteamAPI_ISteamGameServerStats_GetUserAchievement( ISteamGameServerStats* self, uint64_steamid steamIDUser, const char * pchName, bool * pbAchieved ); +S_API bool SteamAPI_ISteamGameServerStats_SetUserStatInt32( ISteamGameServerStats* self, uint64_steamid steamIDUser, const char * pchName, int32 nData ); +S_API bool SteamAPI_ISteamGameServerStats_SetUserStatFloat( ISteamGameServerStats* self, uint64_steamid steamIDUser, const char * pchName, float fData ); +S_API bool SteamAPI_ISteamGameServerStats_UpdateUserAvgRateStat( ISteamGameServerStats* self, uint64_steamid steamIDUser, const char * pchName, float flCountThisSession, double dSessionLength ); +S_API bool SteamAPI_ISteamGameServerStats_SetUserAchievement( ISteamGameServerStats* self, uint64_steamid steamIDUser, const char * pchName ); +S_API bool SteamAPI_ISteamGameServerStats_ClearUserAchievement( ISteamGameServerStats* self, uint64_steamid steamIDUser, const char * pchName ); +S_API SteamAPICall_t SteamAPI_ISteamGameServerStats_StoreUserStats( ISteamGameServerStats* self, uint64_steamid steamIDUser ); + +// SteamIPAddress_t +S_API bool SteamAPI_SteamIPAddress_t_IsSet( SteamIPAddress_t* self ); + +// MatchMakingKeyValuePair_t +S_API void SteamAPI_MatchMakingKeyValuePair_t_Construct( MatchMakingKeyValuePair_t* self ); + +// servernetadr_t +S_API void SteamAPI_servernetadr_t_Construct( servernetadr_t* self ); +S_API void SteamAPI_servernetadr_t_Init( servernetadr_t* self, unsigned int ip, uint16 usQueryPort, uint16 usConnectionPort ); +S_API uint16 SteamAPI_servernetadr_t_GetQueryPort( servernetadr_t* self ); +S_API void SteamAPI_servernetadr_t_SetQueryPort( servernetadr_t* self, uint16 usPort ); +S_API uint16 SteamAPI_servernetadr_t_GetConnectionPort( servernetadr_t* self ); +S_API void SteamAPI_servernetadr_t_SetConnectionPort( servernetadr_t* self, uint16 usPort ); +S_API uint32 SteamAPI_servernetadr_t_GetIP( servernetadr_t* self ); +S_API void SteamAPI_servernetadr_t_SetIP( servernetadr_t* self, uint32 unIP ); +S_API const char * SteamAPI_servernetadr_t_GetConnectionAddressString( servernetadr_t* self ); +S_API const char * SteamAPI_servernetadr_t_GetQueryAddressString( servernetadr_t* self ); +S_API bool SteamAPI_servernetadr_t_IsLessThan( servernetadr_t* self, const servernetadr_t & netadr ); +S_API void SteamAPI_servernetadr_t_Assign( servernetadr_t* self, const servernetadr_t & that ); + +// gameserveritem_t +S_API void SteamAPI_gameserveritem_t_Construct( gameserveritem_t* self ); +S_API const char * SteamAPI_gameserveritem_t_GetName( gameserveritem_t* self ); +S_API void SteamAPI_gameserveritem_t_SetName( gameserveritem_t* self, const char * pName ); + +// SteamNetworkingIPAddr +S_API void SteamAPI_SteamNetworkingIPAddr_Clear( SteamNetworkingIPAddr* self ); +S_API bool SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros( SteamNetworkingIPAddr* self ); +S_API void SteamAPI_SteamNetworkingIPAddr_SetIPv6( SteamNetworkingIPAddr* self, const uint8 * ipv6, uint16 nPort ); +S_API void SteamAPI_SteamNetworkingIPAddr_SetIPv4( SteamNetworkingIPAddr* self, uint32 nIP, uint16 nPort ); +S_API bool SteamAPI_SteamNetworkingIPAddr_IsIPv4( SteamNetworkingIPAddr* self ); +S_API uint32 SteamAPI_SteamNetworkingIPAddr_GetIPv4( SteamNetworkingIPAddr* self ); +S_API void SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost( SteamNetworkingIPAddr* self, uint16 nPort ); +S_API bool SteamAPI_SteamNetworkingIPAddr_IsLocalHost( SteamNetworkingIPAddr* self ); +S_API void SteamAPI_SteamNetworkingIPAddr_ToString( SteamNetworkingIPAddr* self, char * buf, uint32 cbBuf, bool bWithPort ); +S_API bool SteamAPI_SteamNetworkingIPAddr_ParseString( SteamNetworkingIPAddr* self, const char * pszStr ); +S_API bool SteamAPI_SteamNetworkingIPAddr_IsEqualTo( SteamNetworkingIPAddr* self, const SteamNetworkingIPAddr & x ); + +// SteamNetworkingIdentity +S_API void SteamAPI_SteamNetworkingIdentity_Clear( SteamNetworkingIdentity* self ); +S_API bool SteamAPI_SteamNetworkingIdentity_IsInvalid( SteamNetworkingIdentity* self ); +S_API void SteamAPI_SteamNetworkingIdentity_SetSteamID( SteamNetworkingIdentity* self, uint64_steamid steamID ); +S_API uint64_steamid SteamAPI_SteamNetworkingIdentity_GetSteamID( SteamNetworkingIdentity* self ); +S_API void SteamAPI_SteamNetworkingIdentity_SetSteamID64( SteamNetworkingIdentity* self, uint64 steamID ); +S_API uint64 SteamAPI_SteamNetworkingIdentity_GetSteamID64( SteamNetworkingIdentity* self ); +S_API bool SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID( SteamNetworkingIdentity* self, const char * pszString ); +S_API const char * SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID( SteamNetworkingIdentity* self ); +S_API void SteamAPI_SteamNetworkingIdentity_SetPSNID( SteamNetworkingIdentity* self, uint64 id ); +S_API uint64 SteamAPI_SteamNetworkingIdentity_GetPSNID( SteamNetworkingIdentity* self ); +S_API void SteamAPI_SteamNetworkingIdentity_SetStadiaID( SteamNetworkingIdentity* self, uint64 id ); +S_API uint64 SteamAPI_SteamNetworkingIdentity_GetStadiaID( SteamNetworkingIdentity* self ); +S_API void SteamAPI_SteamNetworkingIdentity_SetIPAddr( SteamNetworkingIdentity* self, const SteamNetworkingIPAddr & addr ); +S_API const SteamNetworkingIPAddr * SteamAPI_SteamNetworkingIdentity_GetIPAddr( SteamNetworkingIdentity* self ); +S_API void SteamAPI_SteamNetworkingIdentity_SetLocalHost( SteamNetworkingIdentity* self ); +S_API bool SteamAPI_SteamNetworkingIdentity_IsLocalHost( SteamNetworkingIdentity* self ); +S_API bool SteamAPI_SteamNetworkingIdentity_SetGenericString( SteamNetworkingIdentity* self, const char * pszString ); +S_API const char * SteamAPI_SteamNetworkingIdentity_GetGenericString( SteamNetworkingIdentity* self ); +S_API bool SteamAPI_SteamNetworkingIdentity_SetGenericBytes( SteamNetworkingIdentity* self, const void * data, uint32 cbLen ); +S_API const uint8 * SteamAPI_SteamNetworkingIdentity_GetGenericBytes( SteamNetworkingIdentity* self, int & cbLen ); +S_API bool SteamAPI_SteamNetworkingIdentity_IsEqualTo( SteamNetworkingIdentity* self, const SteamNetworkingIdentity & x ); +S_API void SteamAPI_SteamNetworkingIdentity_ToString( SteamNetworkingIdentity* self, char * buf, uint32 cbBuf ); +S_API bool SteamAPI_SteamNetworkingIdentity_ParseString( SteamNetworkingIdentity* self, const char * pszStr ); + +// SteamNetworkingMessage_t +S_API void SteamAPI_SteamNetworkingMessage_t_Release( SteamNetworkingMessage_t* self ); + +// SteamNetworkingConfigValue_t +S_API void SteamAPI_SteamNetworkingConfigValue_t_SetInt32( SteamNetworkingConfigValue_t* self, ESteamNetworkingConfigValue eVal, int32_t data ); +S_API void SteamAPI_SteamNetworkingConfigValue_t_SetInt64( SteamNetworkingConfigValue_t* self, ESteamNetworkingConfigValue eVal, int64_t data ); +S_API void SteamAPI_SteamNetworkingConfigValue_t_SetFloat( SteamNetworkingConfigValue_t* self, ESteamNetworkingConfigValue eVal, float data ); +S_API void SteamAPI_SteamNetworkingConfigValue_t_SetPtr( SteamNetworkingConfigValue_t* self, ESteamNetworkingConfigValue eVal, void * data ); +S_API void SteamAPI_SteamNetworkingConfigValue_t_SetString( SteamNetworkingConfigValue_t* self, ESteamNetworkingConfigValue eVal, const char * data ); + +// SteamNetworkingPOPIDRender +S_API const char * SteamAPI_SteamNetworkingPOPIDRender_c_str( SteamNetworkingPOPIDRender* self ); + +// SteamNetworkingIdentityRender +S_API const char * SteamAPI_SteamNetworkingIdentityRender_c_str( SteamNetworkingIdentityRender* self ); + +// SteamNetworkingIPAddrRender +S_API const char * SteamAPI_SteamNetworkingIPAddrRender_c_str( SteamNetworkingIPAddrRender* self ); + +// SteamDatagramHostedAddress +S_API void SteamAPI_SteamDatagramHostedAddress_Clear( SteamDatagramHostedAddress* self ); +S_API SteamNetworkingPOPID SteamAPI_SteamDatagramHostedAddress_GetPopID( SteamDatagramHostedAddress* self ); +S_API void SteamAPI_SteamDatagramHostedAddress_SetDevAddress( SteamDatagramHostedAddress* self, uint32 nIP, uint16 nPort, SteamNetworkingPOPID popid ); +#endif // STEAMAPIFLAT_H diff --git a/lib/steam/public/steam/steam_api_internal.h b/lib/steam/public/steam/steam_api_internal.h new file mode 100644 index 0000000..258ba18 --- /dev/null +++ b/lib/steam/public/steam/steam_api_internal.h @@ -0,0 +1,408 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== +// +// Internal implementation details of the steamworks SDK. +// +// You should be able to figure out how to use the SDK by reading +// steam_api_common.h, and should not need to understand anything in here. +// +//----------------------------------------------------------------------------- + +#ifdef STEAM_CALLBACK_BEGIN +#error "This file should only be included from steam_api_common.h" +#endif + +#include + +// Internal functions used to locate/create interfaces +S_API HSteamPipe S_CALLTYPE SteamAPI_GetHSteamPipe(); +S_API HSteamUser S_CALLTYPE SteamAPI_GetHSteamUser(); +S_API HSteamPipe S_CALLTYPE SteamGameServer_GetHSteamPipe(); +S_API HSteamUser S_CALLTYPE SteamGameServer_GetHSteamUser(); +S_API void *S_CALLTYPE SteamInternal_ContextInit( void *pContextInitData ); +S_API void *S_CALLTYPE SteamInternal_CreateInterface( const char *ver ); +S_API void *S_CALLTYPE SteamInternal_FindOrCreateUserInterface( HSteamUser hSteamUser, const char *pszVersion ); +S_API void *S_CALLTYPE SteamInternal_FindOrCreateGameServerInterface( HSteamUser hSteamUser, const char *pszVersion ); + +// Macro used to define a type-safe accessor that will always return the version +// of the interface of the *header file* you are compiling with! We also bounce +// through a safety function that checks for interfaces being created or destroyed. +// +// SteamInternal_ContextInit takes a base pointer for the equivalent of +// struct { void (*pFn)(void* pCtx); uintptr_t counter; void *ptr; } +// Do not change layout or add non-pointer aligned data! +#define STEAM_DEFINE_INTERFACE_ACCESSOR( type, name, expr, kind, version ) \ + inline void S_CALLTYPE SteamInternal_Init_ ## name( type *p ) { *p = (type)( expr ); } \ + STEAM_CLANG_ATTR( "interface_accessor_kind:" kind ";interface_accessor_version:" version ";" ) \ + inline type name() { \ + static void* s_CallbackCounterAndContext[ 3 ] = { (void*)&SteamInternal_Init_ ## name, 0, 0 }; \ + return *(type*)SteamInternal_ContextInit( s_CallbackCounterAndContext ); \ + } + +#define STEAM_DEFINE_USER_INTERFACE_ACCESSOR( type, name, version ) \ + STEAM_DEFINE_INTERFACE_ACCESSOR( type, name, SteamInternal_FindOrCreateUserInterface( SteamAPI_GetHSteamUser(), version ), "user", version ) +#define STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( type, name, version ) \ + STEAM_DEFINE_INTERFACE_ACCESSOR( type, name, SteamInternal_FindOrCreateGameServerInterface( SteamGameServer_GetHSteamUser(), version ), "gameserver", version ) + +// +// Internal stuff used for the standard, higher-level callback mechanism +// + +// Internal functions used by the utility CCallback objects to receive callbacks +S_API void S_CALLTYPE SteamAPI_RegisterCallback( class CCallbackBase *pCallback, int iCallback ); +S_API void S_CALLTYPE SteamAPI_UnregisterCallback( class CCallbackBase *pCallback ); +// Internal functions used by the utility CCallResult objects to receive async call results +S_API void S_CALLTYPE SteamAPI_RegisterCallResult( class CCallbackBase *pCallback, SteamAPICall_t hAPICall ); +S_API void S_CALLTYPE SteamAPI_UnregisterCallResult( class CCallbackBase *pCallback, SteamAPICall_t hAPICall ); + +// disable this warning; this pattern need for steam callback registration +#ifdef _MSVC_VER +#pragma warning( push ) +#pragma warning( disable: 4355 ) // 'this' : used in base member initializer list +#endif + +#define _STEAM_CALLBACK_AUTO_HOOK( thisclass, func, param ) +#define _STEAM_CALLBACK_HELPER( _1, _2, SELECTED, ... ) _STEAM_CALLBACK_##SELECTED +#define _STEAM_CALLBACK_SELECT( X, Y ) _STEAM_CALLBACK_HELPER X Y +#define _STEAM_CALLBACK_3( extra_code, thisclass, func, param ) \ + struct CCallbackInternal_ ## func : private CCallbackImpl< sizeof( param ) > { \ + CCallbackInternal_ ## func () { extra_code SteamAPI_RegisterCallback( this, param::k_iCallback ); } \ + CCallbackInternal_ ## func ( const CCallbackInternal_ ## func & ) { extra_code SteamAPI_RegisterCallback( this, param::k_iCallback ); } \ + CCallbackInternal_ ## func & operator=( const CCallbackInternal_ ## func & ) { return *this; } \ + private: virtual void Run( void *pvParam ) { _STEAM_CALLBACK_AUTO_HOOK( thisclass, func, param ) \ + thisclass *pOuter = reinterpret_cast( reinterpret_cast(this) - offsetof( thisclass, m_steamcallback_ ## func ) ); \ + pOuter->func( reinterpret_cast( pvParam ) ); \ + } \ + } m_steamcallback_ ## func ; void func( param *pParam ) +#define _STEAM_CALLBACK_4( _, thisclass, func, param, var ) \ + CCallback< thisclass, param > var; void func( param *pParam ) +#define _STEAM_CALLBACK_GS( _, thisclass, func, param, var ) \ + CCallback< thisclass, param, true > var; void func( param *pParam ) + +#ifndef API_GEN + +template< class T, class P > +inline CCallResult::CCallResult() +{ + m_hAPICall = k_uAPICallInvalid; + m_pObj = nullptr; + m_Func = nullptr; + m_iCallback = P::k_iCallback; +} + +template< class T, class P > +inline void CCallResult::Set( SteamAPICall_t hAPICall, T *p, func_t func ) +{ + if ( m_hAPICall ) + SteamAPI_UnregisterCallResult( this, m_hAPICall ); + + m_hAPICall = hAPICall; + m_pObj = p; + m_Func = func; + + if ( hAPICall ) + SteamAPI_RegisterCallResult( this, hAPICall ); +} + +template< class T, class P > +inline bool CCallResult::IsActive() const +{ + return (m_hAPICall != k_uAPICallInvalid); +} + +template< class T, class P > +inline void CCallResult::Cancel() +{ + if ( m_hAPICall != k_uAPICallInvalid ) + { + SteamAPI_UnregisterCallResult( this, m_hAPICall ); + m_hAPICall = k_uAPICallInvalid; + } +} + +template< class T, class P > +inline CCallResult::~CCallResult() +{ + Cancel(); +} + +template< class T, class P > +inline void CCallResult::Run( void *pvParam ) +{ + m_hAPICall = k_uAPICallInvalid; // caller unregisters for us + (m_pObj->*m_Func)((P *)pvParam, false); +} + +template< class T, class P > +inline void CCallResult::Run( void *pvParam, bool bIOFailure, SteamAPICall_t hSteamAPICall ) +{ + if ( hSteamAPICall == m_hAPICall ) + { + m_hAPICall = k_uAPICallInvalid; // caller unregisters for us + (m_pObj->*m_Func)((P *)pvParam, bIOFailure); + } +} + +template< class T, class P, bool bGameserver > +inline CCallback< T, P, bGameserver >::CCallback( T *pObj, func_t func ) + : m_pObj( nullptr ), m_Func( nullptr ) +{ + if ( bGameserver ) + { + this->SetGameserverFlag(); + } + Register( pObj, func ); +} + +template< class T, class P, bool bGameserver > +inline void CCallback< T, P, bGameserver >::Register( T *pObj, func_t func ) +{ + if ( !pObj || !func ) + return; + + if ( this->m_nCallbackFlags & CCallbackBase::k_ECallbackFlagsRegistered ) + Unregister(); + + m_pObj = pObj; + m_Func = func; + // SteamAPI_RegisterCallback sets k_ECallbackFlagsRegistered + SteamAPI_RegisterCallback( this, P::k_iCallback ); +} + +template< class T, class P, bool bGameserver > +inline void CCallback< T, P, bGameserver >::Unregister() +{ + // SteamAPI_UnregisterCallback removes k_ECallbackFlagsRegistered + SteamAPI_UnregisterCallback( this ); +} + +template< class T, class P, bool bGameserver > +inline void CCallback< T, P, bGameserver >::Run( void *pvParam ) +{ + (m_pObj->*m_Func)((P *)pvParam); +} + +#endif // #ifndef API_GEN + +// structure that contains client callback data +// see callbacks documentation for more details +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx +#endif + +/// Internal structure used in manual callback dispatch +struct CallbackMsg_t +{ + HSteamUser m_hSteamUser; // Specific user to whom this callback applies. + int m_iCallback; // Callback identifier. (Corresponds to the k_iCallback enum in the callback structure.) + uint8 *m_pubParam; // Points to the callback structure + int m_cubParam; // Size of the data pointed to by m_pubParam +}; +#pragma pack( pop ) + +// Macros to define steam callback structures. Used internally for debugging +#ifdef STEAM_CALLBACK_INSPECTION_ENABLED + #include "../../clientdll/steam_api_callback_inspection.h" +#else + #define STEAM_CALLBACK_BEGIN( callbackname, callbackid ) struct callbackname { enum { k_iCallback = callbackid }; + #define STEAM_CALLBACK_MEMBER( varidx, vartype, varname ) vartype varname ; + #define STEAM_CALLBACK_MEMBER_ARRAY( varidx, vartype, varname, varcount ) vartype varname [ varcount ]; + #define STEAM_CALLBACK_END(nArgs) }; +#endif + +// Forward declare all of the Steam interfaces. (Do we really need to do this?) +class ISteamClient; +class ISteamUser; +class ISteamGameServer; +class ISteamFriends; +class ISteamUtils; +class ISteamMatchmaking; +class ISteamContentServer; +class ISteamMatchmakingServers; +class ISteamUserStats; +class ISteamApps; +class ISteamNetworking; +class ISteamRemoteStorage; +class ISteamScreenshots; +class ISteamMusic; +class ISteamMusicRemote; +class ISteamGameServerStats; +class ISteamPS3OverlayRender; +class ISteamHTTP; +class ISteamController; +class ISteamUGC; +class ISteamAppList; +class ISteamHTMLSurface; +class ISteamInventory; +class ISteamVideo; +class ISteamParentalSettings; +class ISteamGameSearch; +class ISteamInput; +class ISteamParties; +class ISteamRemotePlay; + +//----------------------------------------------------------------------------- +// Purpose: Base values for callback identifiers, each callback must +// have a unique ID. +//----------------------------------------------------------------------------- +enum { k_iSteamUserCallbacks = 100 }; +enum { k_iSteamGameServerCallbacks = 200 }; +enum { k_iSteamFriendsCallbacks = 300 }; +enum { k_iSteamBillingCallbacks = 400 }; +enum { k_iSteamMatchmakingCallbacks = 500 }; +enum { k_iSteamContentServerCallbacks = 600 }; +enum { k_iSteamUtilsCallbacks = 700 }; +enum { k_iClientFriendsCallbacks = 800 }; +enum { k_iClientUserCallbacks = 900 }; +enum { k_iSteamAppsCallbacks = 1000 }; +enum { k_iSteamUserStatsCallbacks = 1100 }; +enum { k_iSteamNetworkingCallbacks = 1200 }; +enum { k_iSteamNetworkingSocketsCallbacks = 1220 }; +enum { k_iSteamNetworkingMessagesCallbacks = 1250 }; +enum { k_iSteamNetworkingUtilsCallbacks = 1280 }; +enum { k_iClientRemoteStorageCallbacks = 1300 }; +enum { k_iClientDepotBuilderCallbacks = 1400 }; +enum { k_iSteamGameServerItemsCallbacks = 1500 }; +enum { k_iClientUtilsCallbacks = 1600 }; +enum { k_iSteamGameCoordinatorCallbacks = 1700 }; +enum { k_iSteamGameServerStatsCallbacks = 1800 }; +enum { k_iSteam2AsyncCallbacks = 1900 }; +enum { k_iSteamGameStatsCallbacks = 2000 }; +enum { k_iClientHTTPCallbacks = 2100 }; +enum { k_iClientScreenshotsCallbacks = 2200 }; +enum { k_iSteamScreenshotsCallbacks = 2300 }; +enum { k_iClientAudioCallbacks = 2400 }; +enum { k_iClientUnifiedMessagesCallbacks = 2500 }; +enum { k_iSteamStreamLauncherCallbacks = 2600 }; +enum { k_iClientControllerCallbacks = 2700 }; +enum { k_iSteamControllerCallbacks = 2800 }; +enum { k_iClientParentalSettingsCallbacks = 2900 }; +enum { k_iClientDeviceAuthCallbacks = 3000 }; +enum { k_iClientNetworkDeviceManagerCallbacks = 3100 }; +enum { k_iClientMusicCallbacks = 3200 }; +enum { k_iClientRemoteClientManagerCallbacks = 3300 }; +enum { k_iClientUGCCallbacks = 3400 }; +enum { k_iSteamStreamClientCallbacks = 3500 }; +enum { k_IClientProductBuilderCallbacks = 3600 }; +enum { k_iClientShortcutsCallbacks = 3700 }; +enum { k_iClientRemoteControlManagerCallbacks = 3800 }; +enum { k_iSteamAppListCallbacks = 3900 }; +enum { k_iSteamMusicCallbacks = 4000 }; +enum { k_iSteamMusicRemoteCallbacks = 4100 }; +enum { k_iClientVRCallbacks = 4200 }; +enum { k_iClientGameNotificationCallbacks = 4300 }; +enum { k_iSteamGameNotificationCallbacks = 4400 }; +enum { k_iSteamHTMLSurfaceCallbacks = 4500 }; +enum { k_iClientVideoCallbacks = 4600 }; +enum { k_iClientInventoryCallbacks = 4700 }; +enum { k_iClientBluetoothManagerCallbacks = 4800 }; +enum { k_iClientSharedConnectionCallbacks = 4900 }; +enum { k_ISteamParentalSettingsCallbacks = 5000 }; +enum { k_iClientShaderCallbacks = 5100 }; +enum { k_iSteamGameSearchCallbacks = 5200 }; +enum { k_iSteamPartiesCallbacks = 5300 }; +enum { k_iClientPartiesCallbacks = 5400 }; +enum { k_iSteamSTARCallbacks = 5500 }; +enum { k_iClientSTARCallbacks = 5600 }; +enum { k_iSteamRemotePlayCallbacks = 5700 }; +enum { k_iClientCompatCallbacks = 5800 }; +enum { k_iSteamChatCallbacks = 5900 }; + +#ifdef _MSVC_VER +#pragma warning( pop ) +#endif + +// CSteamAPIContext encapsulates the Steamworks API global accessors into +// a single object. +// +// DEPRECATED: Used the global interface accessors instead! +// +// This will be removed in a future iteration of the SDK +class CSteamAPIContext +{ +public: + CSteamAPIContext() { Clear(); } + inline void Clear() { memset( this, 0, sizeof(*this) ); } + inline bool Init(); // NOTE: This is defined in steam_api.h, to avoid this file having to include everything + ISteamClient* SteamClient() const { return m_pSteamClient; } + ISteamUser* SteamUser() const { return m_pSteamUser; } + ISteamFriends* SteamFriends() const { return m_pSteamFriends; } + ISteamUtils* SteamUtils() const { return m_pSteamUtils; } + ISteamMatchmaking* SteamMatchmaking() const { return m_pSteamMatchmaking; } + ISteamGameSearch* SteamGameSearch() const { return m_pSteamGameSearch; } + ISteamUserStats* SteamUserStats() const { return m_pSteamUserStats; } + ISteamApps* SteamApps() const { return m_pSteamApps; } + ISteamMatchmakingServers* SteamMatchmakingServers() const { return m_pSteamMatchmakingServers; } + ISteamNetworking* SteamNetworking() const { return m_pSteamNetworking; } + ISteamRemoteStorage* SteamRemoteStorage() const { return m_pSteamRemoteStorage; } + ISteamScreenshots* SteamScreenshots() const { return m_pSteamScreenshots; } + ISteamHTTP* SteamHTTP() const { return m_pSteamHTTP; } + ISteamController* SteamController() const { return m_pController; } + ISteamUGC* SteamUGC() const { return m_pSteamUGC; } + ISteamAppList* SteamAppList() const { return m_pSteamAppList; } + ISteamMusic* SteamMusic() const { return m_pSteamMusic; } + ISteamMusicRemote* SteamMusicRemote() const { return m_pSteamMusicRemote; } + ISteamHTMLSurface* SteamHTMLSurface() const { return m_pSteamHTMLSurface; } + ISteamInventory* SteamInventory() const { return m_pSteamInventory; } + ISteamVideo* SteamVideo() const { return m_pSteamVideo; } + ISteamParentalSettings* SteamParentalSettings() const { return m_pSteamParentalSettings; } + ISteamInput* SteamInput() const { return m_pSteamInput; } +private: + ISteamClient *m_pSteamClient; + ISteamUser *m_pSteamUser; + ISteamFriends *m_pSteamFriends; + ISteamUtils *m_pSteamUtils; + ISteamMatchmaking *m_pSteamMatchmaking; + ISteamGameSearch *m_pSteamGameSearch; + ISteamUserStats *m_pSteamUserStats; + ISteamApps *m_pSteamApps; + ISteamMatchmakingServers *m_pSteamMatchmakingServers; + ISteamNetworking *m_pSteamNetworking; + ISteamRemoteStorage *m_pSteamRemoteStorage; + ISteamScreenshots *m_pSteamScreenshots; + ISteamHTTP *m_pSteamHTTP; + ISteamController *m_pController; + ISteamUGC *m_pSteamUGC; + ISteamAppList *m_pSteamAppList; + ISteamMusic *m_pSteamMusic; + ISteamMusicRemote *m_pSteamMusicRemote; + ISteamHTMLSurface *m_pSteamHTMLSurface; + ISteamInventory *m_pSteamInventory; + ISteamVideo *m_pSteamVideo; + ISteamParentalSettings *m_pSteamParentalSettings; + ISteamInput *m_pSteamInput; +}; + +class CSteamGameServerAPIContext +{ +public: + CSteamGameServerAPIContext() { Clear(); } + inline void Clear() { memset( this, 0, sizeof(*this) ); } + inline bool Init(); // NOTE: This is defined in steam_gameserver.h, to avoid this file having to include everything + + ISteamClient *SteamClient() const { return m_pSteamClient; } + ISteamGameServer *SteamGameServer() const { return m_pSteamGameServer; } + ISteamUtils *SteamGameServerUtils() const { return m_pSteamGameServerUtils; } + ISteamNetworking *SteamGameServerNetworking() const { return m_pSteamGameServerNetworking; } + ISteamGameServerStats *SteamGameServerStats() const { return m_pSteamGameServerStats; } + ISteamHTTP *SteamHTTP() const { return m_pSteamHTTP; } + ISteamInventory *SteamInventory() const { return m_pSteamInventory; } + ISteamUGC *SteamUGC() const { return m_pSteamUGC; } + ISteamApps *SteamApps() const { return m_pSteamApps; } + +private: + ISteamClient *m_pSteamClient; + ISteamGameServer *m_pSteamGameServer; + ISteamUtils *m_pSteamGameServerUtils; + ISteamNetworking *m_pSteamGameServerNetworking; + ISteamGameServerStats *m_pSteamGameServerStats; + ISteamHTTP *m_pSteamHTTP; + ISteamInventory *m_pSteamInventory; + ISteamUGC *m_pSteamUGC; + ISteamApps *m_pSteamApps; +}; + + diff --git a/lib/steam/public/steam/steam_gameserver.h b/lib/steam/public/steam/steam_gameserver.h new file mode 100644 index 0000000..abd8b57 --- /dev/null +++ b/lib/steam/public/steam/steam_gameserver.h @@ -0,0 +1,114 @@ +//====== Copyright © 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: +// +//============================================================================= + +#ifndef STEAM_GAMESERVER_H +#define STEAM_GAMESERVER_H +#ifdef _WIN32 +#pragma once +#endif + +#include "steam_api.h" +#include "isteamgameserver.h" +#include "isteamgameserverstats.h" + +enum EServerMode +{ + eServerModeInvalid = 0, // DO NOT USE + eServerModeNoAuthentication = 1, // Don't authenticate user logins and don't list on the server list + eServerModeAuthentication = 2, // Authenticate users, list on the server list, don't run VAC on clients that connect + eServerModeAuthenticationAndSecure = 3, // Authenticate users, list on the server list and VAC protect clients +}; + +/// Pass to SteamGameServer_Init to indicate that the same UDP port will be used for game traffic +/// UDP queries. In this case, Steam will not open up a socket to handle server browser queries, +/// and you must use ISteamGameServer::HandleIncomingPacket and ISteamGameServer::GetNextOutgoingPacket +/// to handle packets related to server discovery on your socket. +#define MASTERSERVERUPDATERPORT_USEGAMESOCKETSHARE ((uint16)-1) + +// Initialize SteamGameServer client and interface objects, and set server properties which may not be changed. +// +// After calling this function, you should set any additional server parameters, and then +// call ISteamGameServer::LogOnAnonymous() or ISteamGameServer::LogOn() +// +// - unIP will usually be zero. If you are on a machine with multiple IP addresses, you can pass a non-zero +// value here and the relevant sockets will be bound to that IP. This can be used to ensure that +// the IP you desire is the one used in the server browser. +// - usGamePort is the port that clients will connect to for gameplay. You will usually open up your +// own socket bound to this port. +// - usQueryPort is the port that will manage server browser related duties and info +// pings from clients. If you pass MASTERSERVERUPDATERPORT_USEGAMESOCKETSHARE for usQueryPort, then it +// will use "GameSocketShare" mode, which means that the game is responsible for sending and receiving +// UDP packets for the master server updater. See references to GameSocketShare in isteamgameserver.h. +// - The version string should be in the form x.x.x.x, and is used by the master server to detect when the +// server is out of date. (Only servers with the latest version will be listed.) +inline bool SteamGameServer_Init( uint32 unIP, uint16 usGamePort, uint16 usQueryPort, EServerMode eServerMode, const char *pchVersionString ); + +// Shutdown SteamGameSeverXxx interfaces, log out, and free resources. +S_API void SteamGameServer_Shutdown(); + +// Most Steam API functions allocate some amount of thread-local memory for +// parameter storage. Calling SteamGameServer_ReleaseCurrentThreadMemory() +// will free all API-related memory associated with the calling thread. +// This memory is released automatically by SteamGameServer_RunCallbacks(), +// so single-threaded servers do not need to explicitly call this function. +inline void SteamGameServer_ReleaseCurrentThreadMemory(); + +S_API bool SteamGameServer_BSecure(); +S_API uint64 SteamGameServer_GetSteamID(); + +// Older SDKs exported this global pointer, but it is no longer supported. +// You should use SteamGameServerClient() or CSteamGameServerAPIContext to +// safely access the ISteamClient APIs from your game server application. +//S_API ISteamClient *g_pSteamClientGameServer; + +// SteamGameServer_InitSafe has been replaced with SteamGameServer_Init and +// is no longer supported. Use SteamGameServer_Init instead. +//S_API void S_CALLTYPE SteamGameServer_InitSafe(); + +//============================================================================= +// +// Internal implementation details below +// +//============================================================================= + +#ifndef STEAM_API_EXPORTS +// This function must be declared inline in the header so the module using steam_api.dll gets the version names they want. +inline bool CSteamGameServerAPIContext::Init() +{ + m_pSteamClient = ::SteamGameServerClient(); + if ( !m_pSteamClient ) + return false; + + m_pSteamGameServer = ::SteamGameServer(); + m_pSteamGameServerUtils = ::SteamGameServerUtils(); + m_pSteamGameServerNetworking = ::SteamGameServerNetworking(); + m_pSteamGameServerStats = ::SteamGameServerStats(); + m_pSteamHTTP = ::SteamGameServerHTTP(); + m_pSteamInventory = ::SteamGameServerInventory(); + m_pSteamUGC = ::SteamGameServerUGC(); + m_pSteamApps = ::SteamGameServerApps(); + if ( !m_pSteamGameServer || !m_pSteamGameServerUtils || !m_pSteamGameServerNetworking || !m_pSteamGameServerStats + || !m_pSteamHTTP || !m_pSteamInventory || !m_pSteamUGC || !m_pSteamApps ) + return false; + + return true; +} +#endif + +S_API bool S_CALLTYPE SteamInternal_GameServer_Init( uint32 unIP, uint16 usLegacySteamPort, uint16 usGamePort, uint16 usQueryPort, EServerMode eServerMode, const char *pchVersionString ); +inline bool SteamGameServer_Init( uint32 unIP, uint16 usGamePort, uint16 usQueryPort, EServerMode eServerMode, const char *pchVersionString ) +{ + if ( !SteamInternal_GameServer_Init( unIP, 0, usGamePort, usQueryPort, eServerMode, pchVersionString ) ) + return false; + + return true; +} +inline void SteamGameServer_ReleaseCurrentThreadMemory() +{ + SteamAPI_ReleaseCurrentThreadMemory(); +} + +#endif // STEAM_GAMESERVER_H diff --git a/lib/steam/public/steam/steamclientpublic.h b/lib/steam/public/steam/steamclientpublic.h new file mode 100644 index 0000000..981fd7e --- /dev/null +++ b/lib/steam/public/steam/steamclientpublic.h @@ -0,0 +1,1519 @@ +//========= Copyright � 1996-2008, Valve LLC, All rights reserved. ============ +// +// Purpose: +// +//============================================================================= + +#ifndef STEAMCLIENTPUBLIC_H +#define STEAMCLIENTPUBLIC_H +#ifdef _WIN32 +#pragma once +#endif +//lint -save -e1931 -e1927 -e1924 -e613 -e726 + +// This header file defines the interface between the calling application and the code that +// knows how to communicate with the connection manager (CM) from the Steam service + +// This header file is intended to be portable; ideally this 1 header file plus a lib or dll +// is all you need to integrate the client library into some other tree. So please avoid +// including or requiring other header files if possible. This header should only describe the +// interface layer, no need to include anything about the implementation. + +#include "steamtypes.h" +#include "steamuniverse.h" + +// General result codes +enum EResult +{ + k_EResultNone = 0, // no result + k_EResultOK = 1, // success + k_EResultFail = 2, // generic failure + k_EResultNoConnection = 3, // no/failed network connection +// k_EResultNoConnectionRetry = 4, // OBSOLETE - removed + k_EResultInvalidPassword = 5, // password/ticket is invalid + k_EResultLoggedInElsewhere = 6, // same user logged in elsewhere + k_EResultInvalidProtocolVer = 7, // protocol version is incorrect + k_EResultInvalidParam = 8, // a parameter is incorrect + k_EResultFileNotFound = 9, // file was not found + k_EResultBusy = 10, // called method busy - action not taken + k_EResultInvalidState = 11, // called object was in an invalid state + k_EResultInvalidName = 12, // name is invalid + k_EResultInvalidEmail = 13, // email is invalid + k_EResultDuplicateName = 14, // name is not unique + k_EResultAccessDenied = 15, // access is denied + k_EResultTimeout = 16, // operation timed out + k_EResultBanned = 17, // VAC2 banned + k_EResultAccountNotFound = 18, // account not found + k_EResultInvalidSteamID = 19, // steamID is invalid + k_EResultServiceUnavailable = 20, // The requested service is currently unavailable + k_EResultNotLoggedOn = 21, // The user is not logged on + k_EResultPending = 22, // Request is pending (may be in process, or waiting on third party) + k_EResultEncryptionFailure = 23, // Encryption or Decryption failed + k_EResultInsufficientPrivilege = 24, // Insufficient privilege + k_EResultLimitExceeded = 25, // Too much of a good thing + k_EResultRevoked = 26, // Access has been revoked (used for revoked guest passes) + k_EResultExpired = 27, // License/Guest pass the user is trying to access is expired + k_EResultAlreadyRedeemed = 28, // Guest pass has already been redeemed by account, cannot be acked again + k_EResultDuplicateRequest = 29, // The request is a duplicate and the action has already occurred in the past, ignored this time + k_EResultAlreadyOwned = 30, // All the games in this guest pass redemption request are already owned by the user + k_EResultIPNotFound = 31, // IP address not found + k_EResultPersistFailed = 32, // failed to write change to the data store + k_EResultLockingFailed = 33, // failed to acquire access lock for this operation + k_EResultLogonSessionReplaced = 34, + k_EResultConnectFailed = 35, + k_EResultHandshakeFailed = 36, + k_EResultIOFailure = 37, + k_EResultRemoteDisconnect = 38, + k_EResultShoppingCartNotFound = 39, // failed to find the shopping cart requested + k_EResultBlocked = 40, // a user didn't allow it + k_EResultIgnored = 41, // target is ignoring sender + k_EResultNoMatch = 42, // nothing matching the request found + k_EResultAccountDisabled = 43, + k_EResultServiceReadOnly = 44, // this service is not accepting content changes right now + k_EResultAccountNotFeatured = 45, // account doesn't have value, so this feature isn't available + k_EResultAdministratorOK = 46, // allowed to take this action, but only because requester is admin + k_EResultContentVersion = 47, // A Version mismatch in content transmitted within the Steam protocol. + k_EResultTryAnotherCM = 48, // The current CM can't service the user making a request, user should try another. + k_EResultPasswordRequiredToKickSession = 49,// You are already logged in elsewhere, this cached credential login has failed. + k_EResultAlreadyLoggedInElsewhere = 50, // You are already logged in elsewhere, you must wait + k_EResultSuspended = 51, // Long running operation (content download) suspended/paused + k_EResultCancelled = 52, // Operation canceled (typically by user: content download) + k_EResultDataCorruption = 53, // Operation canceled because data is ill formed or unrecoverable + k_EResultDiskFull = 54, // Operation canceled - not enough disk space. + k_EResultRemoteCallFailed = 55, // an remote call or IPC call failed + k_EResultPasswordUnset = 56, // Password could not be verified as it's unset server side + k_EResultExternalAccountUnlinked = 57, // External account (PSN, Facebook...) is not linked to a Steam account + k_EResultPSNTicketInvalid = 58, // PSN ticket was invalid + k_EResultExternalAccountAlreadyLinked = 59, // External account (PSN, Facebook...) is already linked to some other account, must explicitly request to replace/delete the link first + k_EResultRemoteFileConflict = 60, // The sync cannot resume due to a conflict between the local and remote files + k_EResultIllegalPassword = 61, // The requested new password is not legal + k_EResultSameAsPreviousValue = 62, // new value is the same as the old one ( secret question and answer ) + k_EResultAccountLogonDenied = 63, // account login denied due to 2nd factor authentication failure + k_EResultCannotUseOldPassword = 64, // The requested new password is not legal + k_EResultInvalidLoginAuthCode = 65, // account login denied due to auth code invalid + k_EResultAccountLogonDeniedNoMail = 66, // account login denied due to 2nd factor auth failure - and no mail has been sent + k_EResultHardwareNotCapableOfIPT = 67, // + k_EResultIPTInitError = 68, // + k_EResultParentalControlRestricted = 69, // operation failed due to parental control restrictions for current user + k_EResultFacebookQueryError = 70, // Facebook query returned an error + k_EResultExpiredLoginAuthCode = 71, // account login denied due to auth code expired + k_EResultIPLoginRestrictionFailed = 72, + k_EResultAccountLockedDown = 73, + k_EResultAccountLogonDeniedVerifiedEmailRequired = 74, + k_EResultNoMatchingURL = 75, + k_EResultBadResponse = 76, // parse failure, missing field, etc. + k_EResultRequirePasswordReEntry = 77, // The user cannot complete the action until they re-enter their password + k_EResultValueOutOfRange = 78, // the value entered is outside the acceptable range + k_EResultUnexpectedError = 79, // something happened that we didn't expect to ever happen + k_EResultDisabled = 80, // The requested service has been configured to be unavailable + k_EResultInvalidCEGSubmission = 81, // The set of files submitted to the CEG server are not valid ! + k_EResultRestrictedDevice = 82, // The device being used is not allowed to perform this action + k_EResultRegionLocked = 83, // The action could not be complete because it is region restricted + k_EResultRateLimitExceeded = 84, // Temporary rate limit exceeded, try again later, different from k_EResultLimitExceeded which may be permanent + k_EResultAccountLoginDeniedNeedTwoFactor = 85, // Need two-factor code to login + k_EResultItemDeleted = 86, // The thing we're trying to access has been deleted + k_EResultAccountLoginDeniedThrottle = 87, // login attempt failed, try to throttle response to possible attacker + k_EResultTwoFactorCodeMismatch = 88, // two factor code mismatch + k_EResultTwoFactorActivationCodeMismatch = 89, // activation code for two-factor didn't match + k_EResultAccountAssociatedToMultiplePartners = 90, // account has been associated with multiple partners + k_EResultNotModified = 91, // data not modified + k_EResultNoMobileDevice = 92, // the account does not have a mobile device associated with it + k_EResultTimeNotSynced = 93, // the time presented is out of range or tolerance + k_EResultSmsCodeFailed = 94, // SMS code failure (no match, none pending, etc.) + k_EResultAccountLimitExceeded = 95, // Too many accounts access this resource + k_EResultAccountActivityLimitExceeded = 96, // Too many changes to this account + k_EResultPhoneActivityLimitExceeded = 97, // Too many changes to this phone + k_EResultRefundToWallet = 98, // Cannot refund to payment method, must use wallet + k_EResultEmailSendFailure = 99, // Cannot send an email + k_EResultNotSettled = 100, // Can't perform operation till payment has settled + k_EResultNeedCaptcha = 101, // Needs to provide a valid captcha + k_EResultGSLTDenied = 102, // a game server login token owned by this token's owner has been banned + k_EResultGSOwnerDenied = 103, // game server owner is denied for other reason (account lock, community ban, vac ban, missing phone) + k_EResultInvalidItemType = 104, // the type of thing we were requested to act on is invalid + k_EResultIPBanned = 105, // the ip address has been banned from taking this action + k_EResultGSLTExpired = 106, // this token has expired from disuse; can be reset for use + k_EResultInsufficientFunds = 107, // user doesn't have enough wallet funds to complete the action + k_EResultTooManyPending = 108, // There are too many of this thing pending already + k_EResultNoSiteLicensesFound = 109, // No site licenses found + k_EResultWGNetworkSendExceeded = 110, // the WG couldn't send a response because we exceeded max network send size + k_EResultAccountNotFriends = 111, // the user is not mutually friends + k_EResultLimitedUserAccount = 112, // the user is limited + k_EResultCantRemoveItem = 113, // item can't be removed + k_EResultAccountDeleted = 114, // account has been deleted + k_EResultExistingUserCancelledLicense = 115, // A license for this already exists, but cancelled + k_EResultCommunityCooldown = 116, // access is denied because of a community cooldown (probably from support profile data resets) + k_EResultNoLauncherSpecified = 117, // No launcher was specified, but a launcher was needed to choose correct realm for operation. + k_EResultMustAgreeToSSA = 118, // User must agree to china SSA or global SSA before login + k_EResultLauncherMigrated = 119, // The specified launcher type is no longer supported; the user should be directed elsewhere +}; + +// Error codes for use with the voice functions +enum EVoiceResult +{ + k_EVoiceResultOK = 0, + k_EVoiceResultNotInitialized = 1, + k_EVoiceResultNotRecording = 2, + k_EVoiceResultNoData = 3, + k_EVoiceResultBufferTooSmall = 4, + k_EVoiceResultDataCorrupted = 5, + k_EVoiceResultRestricted = 6, + k_EVoiceResultUnsupportedCodec = 7, + k_EVoiceResultReceiverOutOfDate = 8, + k_EVoiceResultReceiverDidNotAnswer = 9, + +}; + +// Result codes to GSHandleClientDeny/Kick +enum EDenyReason +{ + k_EDenyInvalid = 0, + k_EDenyInvalidVersion = 1, + k_EDenyGeneric = 2, + k_EDenyNotLoggedOn = 3, + k_EDenyNoLicense = 4, + k_EDenyCheater = 5, + k_EDenyLoggedInElseWhere = 6, + k_EDenyUnknownText = 7, + k_EDenyIncompatibleAnticheat = 8, + k_EDenyMemoryCorruption = 9, + k_EDenyIncompatibleSoftware = 10, + k_EDenySteamConnectionLost = 11, + k_EDenySteamConnectionError = 12, + k_EDenySteamResponseTimedOut = 13, + k_EDenySteamValidationStalled = 14, + k_EDenySteamOwnerLeftGuestUser = 15, +}; + +// return type of GetAuthSessionTicket +typedef uint32 HAuthTicket; +const HAuthTicket k_HAuthTicketInvalid = 0; + +// results from BeginAuthSession +enum EBeginAuthSessionResult +{ + k_EBeginAuthSessionResultOK = 0, // Ticket is valid for this game and this steamID. + k_EBeginAuthSessionResultInvalidTicket = 1, // Ticket is not valid. + k_EBeginAuthSessionResultDuplicateRequest = 2, // A ticket has already been submitted for this steamID + k_EBeginAuthSessionResultInvalidVersion = 3, // Ticket is from an incompatible interface version + k_EBeginAuthSessionResultGameMismatch = 4, // Ticket is not for this game + k_EBeginAuthSessionResultExpiredTicket = 5, // Ticket has expired +}; + +// Callback values for callback ValidateAuthTicketResponse_t which is a response to BeginAuthSession +enum EAuthSessionResponse +{ + k_EAuthSessionResponseOK = 0, // Steam has verified the user is online, the ticket is valid and ticket has not been reused. + k_EAuthSessionResponseUserNotConnectedToSteam = 1, // The user in question is not connected to steam + k_EAuthSessionResponseNoLicenseOrExpired = 2, // The license has expired. + k_EAuthSessionResponseVACBanned = 3, // The user is VAC banned for this game. + k_EAuthSessionResponseLoggedInElseWhere = 4, // The user account has logged in elsewhere and the session containing the game instance has been disconnected. + k_EAuthSessionResponseVACCheckTimedOut = 5, // VAC has been unable to perform anti-cheat checks on this user + k_EAuthSessionResponseAuthTicketCanceled = 6, // The ticket has been canceled by the issuer + k_EAuthSessionResponseAuthTicketInvalidAlreadyUsed = 7, // This ticket has already been used, it is not valid. + k_EAuthSessionResponseAuthTicketInvalid = 8, // This ticket is not from a user instance currently connected to steam. + k_EAuthSessionResponsePublisherIssuedBan = 9, // The user is banned for this game. The ban came via the web api and not VAC +}; + +// results from UserHasLicenseForApp +enum EUserHasLicenseForAppResult +{ + k_EUserHasLicenseResultHasLicense = 0, // User has a license for specified app + k_EUserHasLicenseResultDoesNotHaveLicense = 1, // User does not have a license for the specified app + k_EUserHasLicenseResultNoAuth = 2, // User has not been authenticated +}; + + +// Steam account types +enum EAccountType +{ + k_EAccountTypeInvalid = 0, + k_EAccountTypeIndividual = 1, // single user account + k_EAccountTypeMultiseat = 2, // multiseat (e.g. cybercafe) account + k_EAccountTypeGameServer = 3, // game server account + k_EAccountTypeAnonGameServer = 4, // anonymous game server account + k_EAccountTypePending = 5, // pending + k_EAccountTypeContentServer = 6, // content server + k_EAccountTypeClan = 7, + k_EAccountTypeChat = 8, + k_EAccountTypeConsoleUser = 9, // Fake SteamID for local PSN account on PS3 or Live account on 360, etc. + k_EAccountTypeAnonUser = 10, + + // Max of 16 items in this field + k_EAccountTypeMax +}; + + + +//----------------------------------------------------------------------------- +// Purpose: +//----------------------------------------------------------------------------- +enum EAppReleaseState +{ + k_EAppReleaseState_Unknown = 0, // unknown, required appinfo or license info is missing + k_EAppReleaseState_Unavailable = 1, // even owners can't see game in library yet, no AppInfo released + k_EAppReleaseState_Prerelease = 2, // app can be purchased and is visible in library, nothing else. Only Common AppInfo section released + k_EAppReleaseState_PreloadOnly = 3, // owners can preload app, but not play it. All AppInfo sections fully released + k_EAppReleaseState_Released = 4, // owners can download and play app. +}; + + +//----------------------------------------------------------------------------- +// Purpose: +//----------------------------------------------------------------------------- +enum EAppOwnershipFlags +{ + k_EAppOwnershipFlags_None = 0x0000, // unknown + k_EAppOwnershipFlags_OwnsLicense = 0x0001, // owns license for this game + k_EAppOwnershipFlags_FreeLicense = 0x0002, // not paid for game + k_EAppOwnershipFlags_RegionRestricted = 0x0004, // owns app, but not allowed to play in current region + k_EAppOwnershipFlags_LowViolence = 0x0008, // only low violence version + k_EAppOwnershipFlags_InvalidPlatform = 0x0010, // app not supported on current platform + k_EAppOwnershipFlags_SharedLicense = 0x0020, // license was granted by authorized local device + k_EAppOwnershipFlags_FreeWeekend = 0x0040, // owned by a free weekend licenses + k_EAppOwnershipFlags_RetailLicense = 0x0080, // has a retail license for game, (CD-Key etc) + k_EAppOwnershipFlags_LicenseLocked = 0x0100, // shared license is locked (in use) by other user + k_EAppOwnershipFlags_LicensePending = 0x0200, // owns app, but transaction is still pending. Can't install or play + k_EAppOwnershipFlags_LicenseExpired = 0x0400, // doesn't own app anymore since license expired + k_EAppOwnershipFlags_LicensePermanent = 0x0800, // permanent license, not borrowed, or guest or freeweekend etc + k_EAppOwnershipFlags_LicenseRecurring = 0x1000, // Recurring license, user is charged periodically + k_EAppOwnershipFlags_LicenseCanceled = 0x2000, // Mark as canceled, but might be still active if recurring + k_EAppOwnershipFlags_AutoGrant = 0x4000, // Ownership is based on any kind of autogrant license + k_EAppOwnershipFlags_PendingGift = 0x8000, // user has pending gift to redeem + k_EAppOwnershipFlags_RentalNotActivated = 0x10000, // Rental hasn't been activated yet + k_EAppOwnershipFlags_Rental = 0x20000, // Is a rental + k_EAppOwnershipFlags_SiteLicense = 0x40000, // Is from a site license + k_EAppOwnershipFlags_LegacyFreeSub = 0x80000, // App only owned through Steam's legacy free sub + k_EAppOwnershipFlags_InvalidOSType = 0x100000, // app not supported on current OS version, used to indicate a game is 32-bit on post-catalina. Currently it's own flag so the library will display a notice. + k_EAppOwnershipFlags_TimedTrial = 0x200000, // App is playable only for limited time +}; + + +//----------------------------------------------------------------------------- +// Purpose: designed as flags to allow filters masks +// NOTE: If you add to this, please update PackageAppType (SteamConfig) as well as populatePackageAppType +//----------------------------------------------------------------------------- +enum EAppType +{ + k_EAppType_Invalid = 0x000, // unknown / invalid + k_EAppType_Game = 0x001, // playable game, default type + k_EAppType_Application = 0x002, // software application + k_EAppType_Tool = 0x004, // SDKs, editors & dedicated servers + k_EAppType_Demo = 0x008, // game demo + k_EAppType_Media_DEPRECATED = 0x010, // legacy - was used for game trailers, which are now just videos on the web + k_EAppType_DLC = 0x020, // down loadable content + k_EAppType_Guide = 0x040, // game guide, PDF etc + k_EAppType_Driver = 0x080, // hardware driver updater (ATI, Razor etc) + k_EAppType_Config = 0x100, // hidden app used to config Steam features (backpack, sales, etc) + k_EAppType_Hardware = 0x200, // a hardware device (Steam Machine, Steam Controller, Steam Link, etc.) + k_EAppType_Franchise = 0x400, // A hub for collections of multiple apps, eg films, series, games + k_EAppType_Video = 0x800, // A video component of either a Film or TVSeries (may be the feature, an episode, preview, making-of, etc) + k_EAppType_Plugin = 0x1000, // Plug-in types for other Apps + k_EAppType_MusicAlbum = 0x2000, // "Video game soundtrack album" + k_EAppType_Series = 0x4000, // Container app for video series + k_EAppType_Comic_UNUSED = 0x8000, // Comic Book + k_EAppType_Beta = 0x10000, // this is a beta version of a game + + k_EAppType_Shortcut = 0x40000000, // just a shortcut, client side only + k_EAppType_DepotOnly_DEPRECATED = 0x80000000, // there shouldn't be any appinfo for depots +}; + + + +//----------------------------------------------------------------------------- +// types of user game stats fields +// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE +//----------------------------------------------------------------------------- +enum ESteamUserStatType +{ + k_ESteamUserStatTypeINVALID = 0, + k_ESteamUserStatTypeINT = 1, + k_ESteamUserStatTypeFLOAT = 2, + // Read as FLOAT, set with count / session length + k_ESteamUserStatTypeAVGRATE = 3, + k_ESteamUserStatTypeACHIEVEMENTS = 4, + k_ESteamUserStatTypeGROUPACHIEVEMENTS = 5, + + // max, for sanity checks + k_ESteamUserStatTypeMAX +}; + + +//----------------------------------------------------------------------------- +// Purpose: Chat Entry Types (previously was only friend-to-friend message types) +//----------------------------------------------------------------------------- +enum EChatEntryType +{ + k_EChatEntryTypeInvalid = 0, + k_EChatEntryTypeChatMsg = 1, // Normal text message from another user + k_EChatEntryTypeTyping = 2, // Another user is typing (not used in multi-user chat) + k_EChatEntryTypeInviteGame = 3, // Invite from other user into that users current game + k_EChatEntryTypeEmote = 4, // text emote message (deprecated, should be treated as ChatMsg) + //k_EChatEntryTypeLobbyGameStart = 5, // lobby game is starting (dead - listen for LobbyGameCreated_t callback instead) + k_EChatEntryTypeLeftConversation = 6, // user has left the conversation ( closed chat window ) + // Above are previous FriendMsgType entries, now merged into more generic chat entry types + k_EChatEntryTypeEntered = 7, // user has entered the conversation (used in multi-user chat and group chat) + k_EChatEntryTypeWasKicked = 8, // user was kicked (data: 64-bit steamid of actor performing the kick) + k_EChatEntryTypeWasBanned = 9, // user was banned (data: 64-bit steamid of actor performing the ban) + k_EChatEntryTypeDisconnected = 10, // user disconnected + k_EChatEntryTypeHistoricalChat = 11, // a chat message from user's chat history or offilne message + //k_EChatEntryTypeReserved1 = 12, // No longer used + //k_EChatEntryTypeReserved2 = 13, // No longer used + k_EChatEntryTypeLinkBlocked = 14, // a link was removed by the chat filter. +}; + + +//----------------------------------------------------------------------------- +// Purpose: Chat Room Enter Responses +//----------------------------------------------------------------------------- +enum EChatRoomEnterResponse +{ + k_EChatRoomEnterResponseSuccess = 1, // Success + k_EChatRoomEnterResponseDoesntExist = 2, // Chat doesn't exist (probably closed) + k_EChatRoomEnterResponseNotAllowed = 3, // General Denied - You don't have the permissions needed to join the chat + k_EChatRoomEnterResponseFull = 4, // Chat room has reached its maximum size + k_EChatRoomEnterResponseError = 5, // Unexpected Error + k_EChatRoomEnterResponseBanned = 6, // You are banned from this chat room and may not join + k_EChatRoomEnterResponseLimited = 7, // Joining this chat is not allowed because you are a limited user (no value on account) + k_EChatRoomEnterResponseClanDisabled = 8, // Attempt to join a clan chat when the clan is locked or disabled + k_EChatRoomEnterResponseCommunityBan = 9, // Attempt to join a chat when the user has a community lock on their account + k_EChatRoomEnterResponseMemberBlockedYou = 10, // Join failed - some member in the chat has blocked you from joining + k_EChatRoomEnterResponseYouBlockedMember = 11, // Join failed - you have blocked some member already in the chat + // k_EChatRoomEnterResponseNoRankingDataLobby = 12, // No longer used + // k_EChatRoomEnterResponseNoRankingDataUser = 13, // No longer used + // k_EChatRoomEnterResponseRankOutOfRange = 14, // No longer used + k_EChatRoomEnterResponseRatelimitExceeded = 15, // Join failed - to many join attempts in a very short period of time +}; + + +typedef void (*PFNLegacyKeyRegistration)( const char *pchCDKey, const char *pchInstallPath ); +typedef bool (*PFNLegacyKeyInstalled)(); + +const unsigned int k_unSteamAccountIDMask = 0xFFFFFFFF; +const unsigned int k_unSteamAccountInstanceMask = 0x000FFFFF; +const unsigned int k_unSteamUserDefaultInstance = 1; // fixed instance for all individual users + +// Special flags for Chat accounts - they go in the top 8 bits +// of the steam ID's "instance", leaving 12 for the actual instances +enum EChatSteamIDInstanceFlags +{ + k_EChatAccountInstanceMask = 0x00000FFF, // top 8 bits are flags + + k_EChatInstanceFlagClan = ( k_unSteamAccountInstanceMask + 1 ) >> 1, // top bit + k_EChatInstanceFlagLobby = ( k_unSteamAccountInstanceMask + 1 ) >> 2, // next one down, etc + k_EChatInstanceFlagMMSLobby = ( k_unSteamAccountInstanceMask + 1 ) >> 3, // next one down, etc + + // Max of 8 flags +}; + + +//----------------------------------------------------------------------------- +// Purpose: Marketing message flags that change how a client should handle them +//----------------------------------------------------------------------------- +enum EMarketingMessageFlags +{ + k_EMarketingMessageFlagsNone = 0, + k_EMarketingMessageFlagsHighPriority = 1 << 0, + k_EMarketingMessageFlagsPlatformWindows = 1 << 1, + k_EMarketingMessageFlagsPlatformMac = 1 << 2, + k_EMarketingMessageFlagsPlatformLinux = 1 << 3, + + //aggregate flags + k_EMarketingMessageFlagsPlatformRestrictions = + k_EMarketingMessageFlagsPlatformWindows | + k_EMarketingMessageFlagsPlatformMac | + k_EMarketingMessageFlagsPlatformLinux, +}; + + + +//----------------------------------------------------------------------------- +// Purpose: Possible positions to tell the overlay to show notifications in +//----------------------------------------------------------------------------- +enum ENotificationPosition +{ + k_EPositionTopLeft = 0, + k_EPositionTopRight = 1, + k_EPositionBottomLeft = 2, + k_EPositionBottomRight = 3, +}; + + +//----------------------------------------------------------------------------- +// Purpose: Broadcast upload result details +//----------------------------------------------------------------------------- +enum EBroadcastUploadResult +{ + k_EBroadcastUploadResultNone = 0, // broadcast state unknown + k_EBroadcastUploadResultOK = 1, // broadcast was good, no problems + k_EBroadcastUploadResultInitFailed = 2, // broadcast init failed + k_EBroadcastUploadResultFrameFailed = 3, // broadcast frame upload failed + k_EBroadcastUploadResultTimeout = 4, // broadcast upload timed out + k_EBroadcastUploadResultBandwidthExceeded = 5, // broadcast send too much data + k_EBroadcastUploadResultLowFPS = 6, // broadcast FPS too low + k_EBroadcastUploadResultMissingKeyFrames = 7, // broadcast sending not enough key frames + k_EBroadcastUploadResultNoConnection = 8, // broadcast client failed to connect to relay + k_EBroadcastUploadResultRelayFailed = 9, // relay dropped the upload + k_EBroadcastUploadResultSettingsChanged = 10, // the client changed broadcast settings + k_EBroadcastUploadResultMissingAudio = 11, // client failed to send audio data + k_EBroadcastUploadResultTooFarBehind = 12, // clients was too slow uploading + k_EBroadcastUploadResultTranscodeBehind = 13, // server failed to keep up with transcode + k_EBroadcastUploadResultNotAllowedToPlay = 14, // Broadcast does not have permissions to play game + k_EBroadcastUploadResultBusy = 15, // RTMP host to busy to take new broadcast stream, choose another + k_EBroadcastUploadResultBanned = 16, // Account banned from community broadcast + k_EBroadcastUploadResultAlreadyActive = 17, // We already already have an stream running. + k_EBroadcastUploadResultForcedOff = 18, // We explicitly shutting down a broadcast + k_EBroadcastUploadResultAudioBehind = 19, // Audio stream was too far behind video + k_EBroadcastUploadResultShutdown = 20, // Broadcast Server was shut down + k_EBroadcastUploadResultDisconnect = 21, // broadcast uploader TCP disconnected + k_EBroadcastUploadResultVideoInitFailed = 22, // invalid video settings + k_EBroadcastUploadResultAudioInitFailed = 23, // invalid audio settings +}; + + +//----------------------------------------------------------------------------- +// Purpose: codes for well defined launch options +//----------------------------------------------------------------------------- +enum ELaunchOptionType +{ + k_ELaunchOptionType_None = 0, // unknown what launch option does + k_ELaunchOptionType_Default = 1, // runs the game, app, whatever in default mode + k_ELaunchOptionType_SafeMode = 2, // runs the game in safe mode + k_ELaunchOptionType_Multiplayer = 3, // runs the game in multiplayer mode + k_ELaunchOptionType_Config = 4, // runs config tool for this game + k_ELaunchOptionType_OpenVR = 5, // runs game in VR mode using OpenVR + k_ELaunchOptionType_Server = 6, // runs dedicated server for this game + k_ELaunchOptionType_Editor = 7, // runs game editor + k_ELaunchOptionType_Manual = 8, // shows game manual + k_ELaunchOptionType_Benchmark = 9, // runs game benchmark + k_ELaunchOptionType_Option1 = 10, // generic run option, uses description field for game name + k_ELaunchOptionType_Option2 = 11, // generic run option, uses description field for game name + k_ELaunchOptionType_Option3 = 12, // generic run option, uses description field for game name + k_ELaunchOptionType_OculusVR = 13, // runs game in VR mode using the Oculus SDK + k_ELaunchOptionType_OpenVROverlay = 14, // runs an OpenVR dashboard overlay + k_ELaunchOptionType_OSVR = 15, // runs game in VR mode using the OSVR SDK + + + k_ELaunchOptionType_Dialog = 1000, // show launch options dialog +}; + + +//----------------------------------------------------------------------------- +// Purpose: true if this launch option is any of the vr launching types +//----------------------------------------------------------------------------- +static inline bool BIsVRLaunchOptionType( const ELaunchOptionType eType ) +{ + return eType == k_ELaunchOptionType_OpenVR + || eType == k_ELaunchOptionType_OpenVROverlay + || eType == k_ELaunchOptionType_OculusVR + || eType == k_ELaunchOptionType_OSVR; +} + + +//----------------------------------------------------------------------------- +// Purpose: true if this launch option is any of the vr launching types +//----------------------------------------------------------------------------- +static inline bool BIsLaunchOptionTypeExemptFromGameTheater( const ELaunchOptionType eType ) +{ + return eType == k_ELaunchOptionType_Config + || eType == k_ELaunchOptionType_Server + || eType == k_ELaunchOptionType_Editor + || eType == k_ELaunchOptionType_Manual; +} + + +//----------------------------------------------------------------------------- +// Purpose: code points for VR HMD vendors and models +// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN A DATABASE +//----------------------------------------------------------------------------- +enum EVRHMDType +{ + k_eEVRHMDType_None = -1, // unknown vendor and model + + k_eEVRHMDType_Unknown = 0, // unknown vendor and model + + k_eEVRHMDType_HTC_Dev = 1, // original HTC dev kits + k_eEVRHMDType_HTC_VivePre = 2, // htc vive pre + k_eEVRHMDType_HTC_Vive = 3, // htc vive consumer release + k_eEVRHMDType_HTC_VivePro = 4, // htc vive pro release + k_eEVRHMDType_HTC_ViveCosmos = 5, // HTC Vive Cosmos + + k_eEVRHMDType_HTC_Unknown = 20, // unknown htc hmd + + k_eEVRHMDType_Oculus_DK1 = 21, // Oculus DK1 + k_eEVRHMDType_Oculus_DK2 = 22, // Oculus DK2 + k_eEVRHMDType_Oculus_Rift = 23, // Oculus Rift + k_eEVRHMDType_Oculus_RiftS = 24, // Oculus Rift S + k_eEVRHMDType_Oculus_Quest = 25, // Oculus Quest + + k_eEVRHMDType_Oculus_Unknown = 40, // // Oculus unknown HMD + + k_eEVRHMDType_Acer_Unknown = 50, // Acer unknown HMD + k_eEVRHMDType_Acer_WindowsMR = 51, // Acer QHMD Windows MR headset + + k_eEVRHMDType_Dell_Unknown = 60, // Dell unknown HMD + k_eEVRHMDType_Dell_Visor = 61, // Dell Visor Windows MR headset + + k_eEVRHMDType_Lenovo_Unknown = 70, // Lenovo unknown HMD + k_eEVRHMDType_Lenovo_Explorer = 71, // Lenovo Explorer Windows MR headset + + k_eEVRHMDType_HP_Unknown = 80, // HP unknown HMD + k_eEVRHMDType_HP_WindowsMR = 81, // HP Windows MR headset + k_eEVRHMDType_HP_Reverb = 82, // HP Reverb Windows MR headset + k_eEVRHMDType_HP_ReverbG2 = 1463, // HP Reverb G2 Windows MR headset + + k_eEVRHMDType_Samsung_Unknown = 90, // Samsung unknown HMD + k_eEVRHMDType_Samsung_Odyssey = 91, // Samsung Odyssey Windows MR headset + + k_eEVRHMDType_Unannounced_Unknown = 100, // Unannounced unknown HMD + k_eEVRHMDType_Unannounced_WindowsMR = 101, // Unannounced Windows MR headset + + k_eEVRHMDType_vridge = 110, // VRIDGE tool + + k_eEVRHMDType_Huawei_Unknown = 120, // Huawei unknown HMD + k_eEVRHMDType_Huawei_VR2 = 121, // Huawei VR2 3DOF headset + k_eEVRHMDType_Huawei_EndOfRange = 129, // end of Huawei HMD range + + k_eEVRHmdType_Valve_Unknown = 130, // Valve Unknown HMD + k_eEVRHmdType_Valve_Index = 131, // Valve Index HMD + +}; + + +//----------------------------------------------------------------------------- +// Purpose: true if this is from an Oculus HMD +//----------------------------------------------------------------------------- +static inline bool BIsOculusHMD( EVRHMDType eType ) +{ + return eType == k_eEVRHMDType_Oculus_DK1 || eType == k_eEVRHMDType_Oculus_DK2 || eType == k_eEVRHMDType_Oculus_Rift || eType == k_eEVRHMDType_Oculus_RiftS || eType == k_eEVRHMDType_Oculus_Quest || eType == k_eEVRHMDType_Oculus_Unknown; +} + + +//----------------------------------------------------------------------------- +// Purpose: true if this is from a Windows MR HMD +//----------------------------------------------------------------------------- +static inline bool BIsWindowsMRHeadset( EVRHMDType eType ) +{ + return eType >= k_eEVRHMDType_Acer_WindowsMR && eType <= k_eEVRHMDType_Unannounced_WindowsMR; +} + + +//----------------------------------------------------------------------------- +// Purpose: true if this is from a Hauwei HMD +//----------------------------------------------------------------------------- +static inline bool BIsHuaweiHeadset( EVRHMDType eType ) +{ + return eType >= k_eEVRHMDType_Huawei_Unknown && eType <= k_eEVRHMDType_Huawei_EndOfRange; +} + + +//----------------------------------------------------------------------------- +// Purpose: true if this is from an Vive HMD +//----------------------------------------------------------------------------- +static inline bool BIsViveHMD( EVRHMDType eType ) +{ + return eType == k_eEVRHMDType_HTC_Dev || eType == k_eEVRHMDType_HTC_VivePre || eType == k_eEVRHMDType_HTC_Vive || eType == k_eEVRHMDType_HTC_Unknown || eType == k_eEVRHMDType_HTC_VivePro; +} + + +//----------------------------------------------------------------------------- +// Purpose: Reasons a user may not use the Community Market. +// Used in MarketEligibilityResponse_t. +//----------------------------------------------------------------------------- +enum EMarketNotAllowedReasonFlags +{ + k_EMarketNotAllowedReason_None = 0, + + // A back-end call failed or something that might work again on retry + k_EMarketNotAllowedReason_TemporaryFailure = (1 << 0), + + // Disabled account + k_EMarketNotAllowedReason_AccountDisabled = (1 << 1), + + // Locked account + k_EMarketNotAllowedReason_AccountLockedDown = (1 << 2), + + // Limited account (no purchases) + k_EMarketNotAllowedReason_AccountLimited = (1 << 3), + + // The account is banned from trading items + k_EMarketNotAllowedReason_TradeBanned = (1 << 4), + + // Wallet funds aren't tradable because the user has had no purchase + // activity in the last year or has had no purchases prior to last month + k_EMarketNotAllowedReason_AccountNotTrusted = (1 << 5), + + // The user doesn't have Steam Guard enabled + k_EMarketNotAllowedReason_SteamGuardNotEnabled = (1 << 6), + + // The user has Steam Guard, but it hasn't been enabled for the required + // number of days + k_EMarketNotAllowedReason_SteamGuardOnlyRecentlyEnabled = (1 << 7), + + // The user has recently forgotten their password and reset it + k_EMarketNotAllowedReason_RecentPasswordReset = (1 << 8), + + // The user has recently funded his or her wallet with a new payment method + k_EMarketNotAllowedReason_NewPaymentMethod = (1 << 9), + + // An invalid cookie was sent by the user + k_EMarketNotAllowedReason_InvalidCookie = (1 << 10), + + // The user has Steam Guard, but is using a new computer or web browser + k_EMarketNotAllowedReason_UsingNewDevice = (1 << 11), + + // The user has recently refunded a store purchase by his or herself + k_EMarketNotAllowedReason_RecentSelfRefund = (1 << 12), + + // The user has recently funded his or her wallet with a new payment method that cannot be verified + k_EMarketNotAllowedReason_NewPaymentMethodCannotBeVerified = (1 << 13), + + // Not only is the account not trusted, but they have no recent purchases at all + k_EMarketNotAllowedReason_NoRecentPurchases = (1 << 14), + + // User accepted a wallet gift that was recently purchased + k_EMarketNotAllowedReason_AcceptedWalletGift = (1 << 15), +}; + + +// +// describes XP / progress restrictions to apply for games with duration control / +// anti-indulgence enabled for minor Steam China users. +// +// WARNING: DO NOT RENUMBER +enum EDurationControlProgress +{ + k_EDurationControlProgress_Full = 0, // Full progress + k_EDurationControlProgress_Half = 1, // deprecated - XP or persistent rewards should be halved + k_EDurationControlProgress_None = 2, // deprecated - XP or persistent rewards should be stopped + + k_EDurationControl_ExitSoon_3h = 3, // allowed 3h time since 5h gap/break has elapsed, game should exit - steam will terminate the game soon + k_EDurationControl_ExitSoon_5h = 4, // allowed 5h time in calendar day has elapsed, game should exit - steam will terminate the game soon + k_EDurationControl_ExitSoon_Night = 5, // game running after day period, game should exit - steam will terminate the game soon +}; + + +// +// describes which notification timer has expired, for steam china duration control feature +// +// WARNING: DO NOT RENUMBER +enum EDurationControlNotification +{ + k_EDurationControlNotification_None = 0, // just informing you about progress, no notification to show + k_EDurationControlNotification_1Hour = 1, // "you've been playing for N hours" + + k_EDurationControlNotification_3Hours = 2, // deprecated - "you've been playing for 3 hours; take a break" + k_EDurationControlNotification_HalfProgress = 3,// deprecated - "your XP / progress is half normal" + k_EDurationControlNotification_NoProgress = 4, // deprecated - "your XP / progress is zero" + + k_EDurationControlNotification_ExitSoon_3h = 5, // allowed 3h time since 5h gap/break has elapsed, game should exit - steam will terminate the game soon + k_EDurationControlNotification_ExitSoon_5h = 6, // allowed 5h time in calendar day has elapsed, game should exit - steam will terminate the game soon + k_EDurationControlNotification_ExitSoon_Night = 7,// game running after day period, game should exit - steam will terminate the game soon +}; + + +// +// Specifies a game's online state in relation to duration control +// +enum EDurationControlOnlineState +{ + k_EDurationControlOnlineState_Invalid = 0, // nil value + k_EDurationControlOnlineState_Offline = 1, // currently in offline play - single-player, offline co-op, etc. + k_EDurationControlOnlineState_Online = 2, // currently in online play + k_EDurationControlOnlineState_OnlineHighPri = 3, // currently in online play and requests not to be interrupted +}; + + +#pragma pack( push, 1 ) + +#define CSTEAMID_DEFINED + +// Steam ID structure (64 bits total) +class CSteamID +{ +public: + + //----------------------------------------------------------------------------- + // Purpose: Constructor + //----------------------------------------------------------------------------- + CSteamID() + { + m_steamid.m_comp.m_unAccountID = 0; + m_steamid.m_comp.m_EAccountType = k_EAccountTypeInvalid; + m_steamid.m_comp.m_EUniverse = k_EUniverseInvalid; + m_steamid.m_comp.m_unAccountInstance = 0; + } + + + //----------------------------------------------------------------------------- + // Purpose: Constructor + // Input : unAccountID - 32-bit account ID + // eUniverse - Universe this account belongs to + // eAccountType - Type of account + //----------------------------------------------------------------------------- + CSteamID( uint32 unAccountID, EUniverse eUniverse, EAccountType eAccountType ) + { + Set( unAccountID, eUniverse, eAccountType ); + } + + + //----------------------------------------------------------------------------- + // Purpose: Constructor + // Input : unAccountID - 32-bit account ID + // unAccountInstance - instance + // eUniverse - Universe this account belongs to + // eAccountType - Type of account + //----------------------------------------------------------------------------- + CSteamID( uint32 unAccountID, unsigned int unAccountInstance, EUniverse eUniverse, EAccountType eAccountType ) + { +#if defined(_SERVER) && defined(Assert) + Assert( ( k_EAccountTypeIndividual != eAccountType ) || ( unAccountInstance == k_unSteamUserDefaultInstance ) ); // enforce that for individual accounts, instance is always 1 +#endif // _SERVER + InstancedSet( unAccountID, unAccountInstance, eUniverse, eAccountType ); + } + + + //----------------------------------------------------------------------------- + // Purpose: Constructor + // Input : ulSteamID - 64-bit representation of a Steam ID + // Note: Will not accept a uint32 or int32 as input, as that is a probable mistake. + // See the stubbed out overloads in the private: section for more info. + //----------------------------------------------------------------------------- + CSteamID( uint64 ulSteamID ) + { + SetFromUint64( ulSteamID ); + } +#ifdef INT64_DIFFERENT_FROM_INT64_T + CSteamID( uint64_t ulSteamID ) + { + SetFromUint64( (uint64)ulSteamID ); + } +#endif + + + //----------------------------------------------------------------------------- + // Purpose: Sets parameters for steam ID + // Input : unAccountID - 32-bit account ID + // eUniverse - Universe this account belongs to + // eAccountType - Type of account + //----------------------------------------------------------------------------- + void Set( uint32 unAccountID, EUniverse eUniverse, EAccountType eAccountType ) + { + m_steamid.m_comp.m_unAccountID = unAccountID; + m_steamid.m_comp.m_EUniverse = eUniverse; + m_steamid.m_comp.m_EAccountType = eAccountType; + + if ( eAccountType == k_EAccountTypeClan || eAccountType == k_EAccountTypeGameServer ) + { + m_steamid.m_comp.m_unAccountInstance = 0; + } + else + { + m_steamid.m_comp.m_unAccountInstance = k_unSteamUserDefaultInstance; + } + } + + + //----------------------------------------------------------------------------- + // Purpose: Sets parameters for steam ID + // Input : unAccountID - 32-bit account ID + // eUniverse - Universe this account belongs to + // eAccountType - Type of account + //----------------------------------------------------------------------------- + void InstancedSet( uint32 unAccountID, uint32 unInstance, EUniverse eUniverse, EAccountType eAccountType ) + { + m_steamid.m_comp.m_unAccountID = unAccountID; + m_steamid.m_comp.m_EUniverse = eUniverse; + m_steamid.m_comp.m_EAccountType = eAccountType; + m_steamid.m_comp.m_unAccountInstance = unInstance; + } + + + //----------------------------------------------------------------------------- + // Purpose: Initializes a steam ID from its 52 bit parts and universe/type + // Input : ulIdentifier - 52 bits of goodness + //----------------------------------------------------------------------------- + void FullSet( uint64 ulIdentifier, EUniverse eUniverse, EAccountType eAccountType ) + { + m_steamid.m_comp.m_unAccountID = ( ulIdentifier & k_unSteamAccountIDMask ); // account ID is low 32 bits + m_steamid.m_comp.m_unAccountInstance = ( ( ulIdentifier >> 32 ) & k_unSteamAccountInstanceMask ); // account instance is next 20 bits + m_steamid.m_comp.m_EUniverse = eUniverse; + m_steamid.m_comp.m_EAccountType = eAccountType; + } + + + //----------------------------------------------------------------------------- + // Purpose: Initializes a steam ID from its 64-bit representation + // Input : ulSteamID - 64-bit representation of a Steam ID + //----------------------------------------------------------------------------- + void SetFromUint64( uint64 ulSteamID ) + { + m_steamid.m_unAll64Bits = ulSteamID; + } + + + //----------------------------------------------------------------------------- + // Purpose: Clear all fields, leaving an invalid ID. + //----------------------------------------------------------------------------- + void Clear() + { + m_steamid.m_comp.m_unAccountID = 0; + m_steamid.m_comp.m_EAccountType = k_EAccountTypeInvalid; + m_steamid.m_comp.m_EUniverse = k_EUniverseInvalid; + m_steamid.m_comp.m_unAccountInstance = 0; + } + + +#if defined( INCLUDED_STEAM2_USERID_STRUCTS ) + //----------------------------------------------------------------------------- + // Purpose: Initializes a steam ID from a Steam2 ID structure + // Input: pTSteamGlobalUserID - Steam2 ID to convert + // eUniverse - universe this ID belongs to + //----------------------------------------------------------------------------- + void SetFromSteam2( TSteamGlobalUserID *pTSteamGlobalUserID, EUniverse eUniverse ) + { + m_steamid.m_comp.m_unAccountID = pTSteamGlobalUserID->m_SteamLocalUserID.Split.Low32bits * 2 + + pTSteamGlobalUserID->m_SteamLocalUserID.Split.High32bits; + m_steamid.m_comp.m_EUniverse = eUniverse; // set the universe + m_steamid.m_comp.m_EAccountType = k_EAccountTypeIndividual; // Steam 2 accounts always map to account type of individual + m_steamid.m_comp.m_unAccountInstance = k_unSteamUserDefaultInstance; // Steam2 only knew one instance + } + + //----------------------------------------------------------------------------- + // Purpose: Fills out a Steam2 ID structure + // Input: pTSteamGlobalUserID - Steam2 ID to write to + //----------------------------------------------------------------------------- + void ConvertToSteam2( TSteamGlobalUserID *pTSteamGlobalUserID ) const + { + // only individual accounts have any meaning in Steam 2, only they can be mapped + // Assert( m_steamid.m_comp.m_EAccountType == k_EAccountTypeIndividual ); + + pTSteamGlobalUserID->m_SteamInstanceID = 0; + pTSteamGlobalUserID->m_SteamLocalUserID.Split.High32bits = m_steamid.m_comp.m_unAccountID % 2; + pTSteamGlobalUserID->m_SteamLocalUserID.Split.Low32bits = m_steamid.m_comp.m_unAccountID / 2; + } +#endif // defined( INCLUDED_STEAM_COMMON_STEAMCOMMON_H ) + + //----------------------------------------------------------------------------- + // Purpose: Converts steam ID to its 64-bit representation + // Output : 64-bit representation of a Steam ID + //----------------------------------------------------------------------------- + uint64 ConvertToUint64() const + { + return m_steamid.m_unAll64Bits; + } + + + //----------------------------------------------------------------------------- + // Purpose: Converts the static parts of a steam ID to a 64-bit representation. + // For multiseat accounts, all instances of that account will have the + // same static account key, so they can be grouped together by the static + // account key. + // Output : 64-bit static account key + //----------------------------------------------------------------------------- + uint64 GetStaticAccountKey() const + { + // note we do NOT include the account instance (which is a dynamic property) in the static account key + return (uint64) ( ( ( (uint64) m_steamid.m_comp.m_EUniverse ) << 56 ) + ((uint64) m_steamid.m_comp.m_EAccountType << 52 ) + m_steamid.m_comp.m_unAccountID ); + } + + + //----------------------------------------------------------------------------- + // Purpose: create an anonymous game server login to be filled in by the AM + //----------------------------------------------------------------------------- + void CreateBlankAnonLogon( EUniverse eUniverse ) + { + m_steamid.m_comp.m_unAccountID = 0; + m_steamid.m_comp.m_EAccountType = k_EAccountTypeAnonGameServer; + m_steamid.m_comp.m_EUniverse = eUniverse; + m_steamid.m_comp.m_unAccountInstance = 0; + } + + + //----------------------------------------------------------------------------- + // Purpose: create an anonymous game server login to be filled in by the AM + //----------------------------------------------------------------------------- + void CreateBlankAnonUserLogon( EUniverse eUniverse ) + { + m_steamid.m_comp.m_unAccountID = 0; + m_steamid.m_comp.m_EAccountType = k_EAccountTypeAnonUser; + m_steamid.m_comp.m_EUniverse = eUniverse; + m_steamid.m_comp.m_unAccountInstance = 0; + } + + //----------------------------------------------------------------------------- + // Purpose: Is this an anonymous game server login that will be filled in? + //----------------------------------------------------------------------------- + bool BBlankAnonAccount() const + { + return m_steamid.m_comp.m_unAccountID == 0 && BAnonAccount() && m_steamid.m_comp.m_unAccountInstance == 0; + } + + //----------------------------------------------------------------------------- + // Purpose: Is this a game server account id? (Either persistent or anonymous) + //----------------------------------------------------------------------------- + bool BGameServerAccount() const + { + return m_steamid.m_comp.m_EAccountType == k_EAccountTypeGameServer || m_steamid.m_comp.m_EAccountType == k_EAccountTypeAnonGameServer; + } + + //----------------------------------------------------------------------------- + // Purpose: Is this a persistent (not anonymous) game server account id? + //----------------------------------------------------------------------------- + bool BPersistentGameServerAccount() const + { + return m_steamid.m_comp.m_EAccountType == k_EAccountTypeGameServer; + } + + //----------------------------------------------------------------------------- + // Purpose: Is this an anonymous game server account id? + //----------------------------------------------------------------------------- + bool BAnonGameServerAccount() const + { + return m_steamid.m_comp.m_EAccountType == k_EAccountTypeAnonGameServer; + } + + //----------------------------------------------------------------------------- + // Purpose: Is this a content server account id? + //----------------------------------------------------------------------------- + bool BContentServerAccount() const + { + return m_steamid.m_comp.m_EAccountType == k_EAccountTypeContentServer; + } + + + //----------------------------------------------------------------------------- + // Purpose: Is this a clan account id? + //----------------------------------------------------------------------------- + bool BClanAccount() const + { + return m_steamid.m_comp.m_EAccountType == k_EAccountTypeClan; + } + + + //----------------------------------------------------------------------------- + // Purpose: Is this a chat account id? + //----------------------------------------------------------------------------- + bool BChatAccount() const + { + return m_steamid.m_comp.m_EAccountType == k_EAccountTypeChat; + } + + //----------------------------------------------------------------------------- + // Purpose: Is this a chat account id? + //----------------------------------------------------------------------------- + bool IsLobby() const + { + return ( m_steamid.m_comp.m_EAccountType == k_EAccountTypeChat ) + && ( m_steamid.m_comp.m_unAccountInstance & k_EChatInstanceFlagLobby ); + } + + + //----------------------------------------------------------------------------- + // Purpose: Is this an individual user account id? + //----------------------------------------------------------------------------- + bool BIndividualAccount() const + { + return m_steamid.m_comp.m_EAccountType == k_EAccountTypeIndividual || m_steamid.m_comp.m_EAccountType == k_EAccountTypeConsoleUser; + } + + + //----------------------------------------------------------------------------- + // Purpose: Is this an anonymous account? + //----------------------------------------------------------------------------- + bool BAnonAccount() const + { + return m_steamid.m_comp.m_EAccountType == k_EAccountTypeAnonUser || m_steamid.m_comp.m_EAccountType == k_EAccountTypeAnonGameServer; + } + + //----------------------------------------------------------------------------- + // Purpose: Is this an anonymous user account? ( used to create an account or reset a password ) + //----------------------------------------------------------------------------- + bool BAnonUserAccount() const + { + return m_steamid.m_comp.m_EAccountType == k_EAccountTypeAnonUser; + } + + //----------------------------------------------------------------------------- + // Purpose: Is this a faked up Steam ID for a PSN friend account? + //----------------------------------------------------------------------------- + bool BConsoleUserAccount() const + { + return m_steamid.m_comp.m_EAccountType == k_EAccountTypeConsoleUser; + } + + // simple accessors + void SetAccountID( uint32 unAccountID ) { m_steamid.m_comp.m_unAccountID = unAccountID; } + void SetAccountInstance( uint32 unInstance ){ m_steamid.m_comp.m_unAccountInstance = unInstance; } + + AccountID_t GetAccountID() const { return m_steamid.m_comp.m_unAccountID; } + uint32 GetUnAccountInstance() const { return m_steamid.m_comp.m_unAccountInstance; } + EAccountType GetEAccountType() const { return ( EAccountType ) m_steamid.m_comp.m_EAccountType; } + EUniverse GetEUniverse() const { return m_steamid.m_comp.m_EUniverse; } + void SetEUniverse( EUniverse eUniverse ) { m_steamid.m_comp.m_EUniverse = eUniverse; } + bool IsValid() const; + + // this set of functions is hidden, will be moved out of class + explicit CSteamID( const char *pchSteamID, EUniverse eDefaultUniverse = k_EUniverseInvalid ); + const char * Render() const; // renders this steam ID to string + static const char * Render( uint64 ulSteamID ); // static method to render a uint64 representation of a steam ID to a string + + void SetFromString( const char *pchSteamID, EUniverse eDefaultUniverse ); + // SetFromString allows many partially-correct strings, constraining how + // we might be able to change things in the future. + // SetFromStringStrict requires the exact string forms that we support + // and is preferred when the caller knows it's safe to be strict. + // Returns whether the string parsed correctly. + bool SetFromStringStrict( const char *pchSteamID, EUniverse eDefaultUniverse ); + bool SetFromSteam2String( const char *pchSteam2ID, EUniverse eUniverse ); + + inline bool operator==( const CSteamID &val ) const { return m_steamid.m_unAll64Bits == val.m_steamid.m_unAll64Bits; } + inline bool operator!=( const CSteamID &val ) const { return !operator==( val ); } + inline bool operator<( const CSteamID &val ) const { return m_steamid.m_unAll64Bits < val.m_steamid.m_unAll64Bits; } + inline bool operator>( const CSteamID &val ) const { return m_steamid.m_unAll64Bits > val.m_steamid.m_unAll64Bits; } + + // DEBUG function + bool BValidExternalSteamID() const; + +private: + // These are defined here to prevent accidental implicit conversion of a u32AccountID to a CSteamID. + // If you get a compiler error about an ambiguous constructor/function then it may be because you're + // passing a 32-bit int to a function that takes a CSteamID. You should explicitly create the SteamID + // using the correct Universe and account Type/Instance values. + CSteamID( uint32 ); + CSteamID( int32 ); + + // 64 bits total + union SteamID_t + { + struct SteamIDComponent_t + { +#ifdef VALVE_BIG_ENDIAN + EUniverse m_EUniverse : 8; // universe this account belongs to + unsigned int m_EAccountType : 4; // type of account - can't show as EAccountType, due to signed / unsigned difference + unsigned int m_unAccountInstance : 20; // dynamic instance ID + uint32 m_unAccountID : 32; // unique account identifier +#else + uint32 m_unAccountID : 32; // unique account identifier + unsigned int m_unAccountInstance : 20; // dynamic instance ID + unsigned int m_EAccountType : 4; // type of account - can't show as EAccountType, due to signed / unsigned difference + EUniverse m_EUniverse : 8; // universe this account belongs to +#endif + } m_comp; + + uint64 m_unAll64Bits; + } m_steamid; +}; + +inline bool CSteamID::IsValid() const +{ + if ( m_steamid.m_comp.m_EAccountType <= k_EAccountTypeInvalid || m_steamid.m_comp.m_EAccountType >= k_EAccountTypeMax ) + return false; + + if ( m_steamid.m_comp.m_EUniverse <= k_EUniverseInvalid || m_steamid.m_comp.m_EUniverse >= k_EUniverseMax ) + return false; + + if ( m_steamid.m_comp.m_EAccountType == k_EAccountTypeIndividual ) + { + if ( m_steamid.m_comp.m_unAccountID == 0 || m_steamid.m_comp.m_unAccountInstance != k_unSteamUserDefaultInstance ) + return false; + } + + if ( m_steamid.m_comp.m_EAccountType == k_EAccountTypeClan ) + { + if ( m_steamid.m_comp.m_unAccountID == 0 || m_steamid.m_comp.m_unAccountInstance != 0 ) + return false; + } + + if ( m_steamid.m_comp.m_EAccountType == k_EAccountTypeGameServer ) + { + if ( m_steamid.m_comp.m_unAccountID == 0 ) + return false; + // Any limit on instances? We use them for local users and bots + } + return true; +} + +// generic invalid CSteamID +#define k_steamIDNil CSteamID() + +// This steamID comes from a user game connection to an out of date GS that hasnt implemented the protocol +// to provide its steamID +#define k_steamIDOutofDateGS CSteamID( 0, 0, k_EUniverseInvalid, k_EAccountTypeInvalid ) +// This steamID comes from a user game connection to an sv_lan GS +#define k_steamIDLanModeGS CSteamID( 0, 0, k_EUniversePublic, k_EAccountTypeInvalid ) +// This steamID can come from a user game connection to a GS that has just booted but hasnt yet even initialized +// its steam3 component and started logging on. +#define k_steamIDNotInitYetGS CSteamID( 1, 0, k_EUniverseInvalid, k_EAccountTypeInvalid ) +// This steamID can come from a user game connection to a GS that isn't using the steam authentication system but still +// wants to support the "Join Game" option in the friends list +#define k_steamIDNonSteamGS CSteamID( 2, 0, k_EUniverseInvalid, k_EAccountTypeInvalid ) + + +#ifdef STEAM +// Returns the matching chat steamID, with the default instance of 0 +// If the steamID passed in is already of type k_EAccountTypeChat it will be returned with the same instance +CSteamID ChatIDFromSteamID( const CSteamID &steamID ); +// Returns the matching clan steamID, with the default instance of 0 +// If the steamID passed in is already of type k_EAccountTypeClan it will be returned with the same instance +CSteamID ClanIDFromSteamID( const CSteamID &steamID ); +// Asserts steamID type before conversion +CSteamID ChatIDFromClanID( const CSteamID &steamIDClan ); +// Asserts steamID type before conversion +CSteamID ClanIDFromChatID( const CSteamID &steamIDChat ); + +#endif // _STEAM + + +//----------------------------------------------------------------------------- +// Purpose: encapsulates an appID/modID pair +//----------------------------------------------------------------------------- +class CGameID +{ +public: + + CGameID() + { + m_gameID.m_nType = k_EGameIDTypeApp; + m_gameID.m_nAppID = k_uAppIdInvalid; + m_gameID.m_nModID = 0; + } + + explicit CGameID( uint64 ulGameID ) + { + m_ulGameID = ulGameID; + } +#ifdef INT64_DIFFERENT_FROM_INT64_T + CGameID( uint64_t ulGameID ) + { + m_ulGameID = (uint64)ulGameID; + } +#endif + + explicit CGameID( int32 nAppID ) + { + m_ulGameID = 0; + m_gameID.m_nAppID = nAppID; + } + + explicit CGameID( uint32 nAppID ) + { + m_ulGameID = 0; + m_gameID.m_nAppID = nAppID; + } + + CGameID( uint32 nAppID, uint32 nModID ) + { + m_ulGameID = 0; + m_gameID.m_nAppID = nAppID; + m_gameID.m_nModID = nModID; + m_gameID.m_nType = k_EGameIDTypeGameMod; + } + + CGameID( const CGameID &that ) + { + m_ulGameID = that.m_ulGameID; + } + + CGameID& operator=( const CGameID & that ) + { + m_ulGameID = that.m_ulGameID; + return *this; + } + + // Hidden functions used only by Steam + explicit CGameID( const char *pchGameID ); + const char *Render() const; // render this Game ID to string + static const char *Render( uint64 ulGameID ); // static method to render a uint64 representation of a Game ID to a string + + // must include checksum_crc.h first to get this functionality +#if defined( CHECKSUM_CRC_H ) + CGameID( uint32 nAppID, const char *pchModPath ) + { + m_ulGameID = 0; + m_gameID.m_nAppID = nAppID; + m_gameID.m_nType = k_EGameIDTypeGameMod; + + char rgchModDir[MAX_PATH]; + V_FileBase( pchModPath, rgchModDir, sizeof( rgchModDir ) ); + CRC32_t crc32; + CRC32_Init( &crc32 ); + CRC32_ProcessBuffer( &crc32, rgchModDir, V_strlen( rgchModDir ) ); + CRC32_Final( &crc32 ); + + // set the high-bit on the mod-id + // reduces crc32 to 31bits, but lets us use the modID as a guaranteed unique + // replacement for appID's + m_gameID.m_nModID = crc32 | (0x80000000); + } + + CGameID( const char *pchExePath, const char *pchAppName ) + { + m_ulGameID = 0; + m_gameID.m_nAppID = k_uAppIdInvalid; + m_gameID.m_nType = k_EGameIDTypeShortcut; + + CRC32_t crc32; + CRC32_Init( &crc32 ); + if ( pchExePath ) + CRC32_ProcessBuffer( &crc32, pchExePath, V_strlen( pchExePath ) ); + if ( pchAppName ) + CRC32_ProcessBuffer( &crc32, pchAppName, V_strlen( pchAppName ) ); + CRC32_Final( &crc32 ); + + // set the high-bit on the mod-id + // reduces crc32 to 31bits, but lets us use the modID as a guaranteed unique + // replacement for appID's + m_gameID.m_nModID = crc32 | (0x80000000); + } + +#if defined( VSTFILEID_H ) + + CGameID( VstFileID vstFileID ) + { + m_ulGameID = 0; + m_gameID.m_nAppID = k_uAppIdInvalid; + m_gameID.m_nType = k_EGameIDTypeP2P; + + CRC32_t crc32; + CRC32_Init( &crc32 ); + const char *pchFileId = vstFileID.Render(); + CRC32_ProcessBuffer( &crc32, pchFileId, V_strlen( pchFileId ) ); + CRC32_Final( &crc32 ); + + // set the high-bit on the mod-id + // reduces crc32 to 31bits, but lets us use the modID as a guaranteed unique + // replacement for appID's + m_gameID.m_nModID = crc32 | (0x80000000); + } + +#endif /* VSTFILEID_H */ + +#endif /* CHECKSUM_CRC_H */ + + + uint64 ToUint64() const + { + return m_ulGameID; + } + + uint64 *GetUint64Ptr() + { + return &m_ulGameID; + } + + void Set( uint64 ulGameID ) + { + m_ulGameID = ulGameID; + } + + bool IsMod() const + { + return ( m_gameID.m_nType == k_EGameIDTypeGameMod ); + } + + bool IsShortcut() const + { + return ( m_gameID.m_nType == k_EGameIDTypeShortcut ); + } + + bool IsP2PFile() const + { + return ( m_gameID.m_nType == k_EGameIDTypeP2P ); + } + + bool IsSteamApp() const + { + return ( m_gameID.m_nType == k_EGameIDTypeApp ); + } + + uint32 ModID() const + { + return m_gameID.m_nModID; + } + + uint32 AppID() const + { + return m_gameID.m_nAppID; + } + + bool operator == ( const CGameID &rhs ) const + { + return m_ulGameID == rhs.m_ulGameID; + } + + bool operator != ( const CGameID &rhs ) const + { + return !(*this == rhs); + } + + bool operator < ( const CGameID &rhs ) const + { + return ( m_ulGameID < rhs.m_ulGameID ); + } + + bool IsValid() const + { + // each type has it's own invalid fixed point: + switch( m_gameID.m_nType ) + { + case k_EGameIDTypeApp: + return m_gameID.m_nAppID != k_uAppIdInvalid; + + case k_EGameIDTypeGameMod: + return m_gameID.m_nAppID != k_uAppIdInvalid && m_gameID.m_nModID & 0x80000000; + + case k_EGameIDTypeShortcut: + return (m_gameID.m_nModID & 0x80000000) != 0; + + case k_EGameIDTypeP2P: + return m_gameID.m_nAppID == k_uAppIdInvalid && m_gameID.m_nModID & 0x80000000; + + default: + return false; + } + + } + + void Reset() + { + m_ulGameID = 0; + } + + + +private: + + enum EGameIDType + { + k_EGameIDTypeApp = 0, + k_EGameIDTypeGameMod = 1, + k_EGameIDTypeShortcut = 2, + k_EGameIDTypeP2P = 3, + }; + + struct GameID_t + { +#ifdef VALVE_BIG_ENDIAN + unsigned int m_nModID : 32; + unsigned int m_nType : 8; + unsigned int m_nAppID : 24; +#else + unsigned int m_nAppID : 24; + unsigned int m_nType : 8; + unsigned int m_nModID : 32; +#endif + }; + + union + { + uint64 m_ulGameID; + GameID_t m_gameID; + }; +}; + +#pragma pack( pop ) + +const int k_cchGameExtraInfoMax = 64; + + +//----------------------------------------------------------------------------- +// Constants used for query ports. +//----------------------------------------------------------------------------- + +#define QUERY_PORT_NOT_INITIALIZED 0xFFFF // We haven't asked the GS for this query port's actual value yet. +#define QUERY_PORT_ERROR 0xFFFE // We were unable to get the query port for this server. + + +//----------------------------------------------------------------------------- +// Purpose: Passed as argument to SteamAPI_UseBreakpadCrashHandler to enable optional callback +// just before minidump file is captured after a crash has occurred. (Allows app to append additional comment data to the dump, etc.) +//----------------------------------------------------------------------------- +typedef void (*PFNPreMinidumpCallback)(void *context); + +//----------------------------------------------------------------------------- +// Purpose: Used by ICrashHandler interfaces to reference particular installed crash handlers +//----------------------------------------------------------------------------- +typedef void *BREAKPAD_HANDLE; +#define BREAKPAD_INVALID_HANDLE (BREAKPAD_HANDLE)0 + +enum EGameSearchErrorCode_t +{ + k_EGameSearchErrorCode_OK = 1, + k_EGameSearchErrorCode_Failed_Search_Already_In_Progress = 2, + k_EGameSearchErrorCode_Failed_No_Search_In_Progress = 3, + k_EGameSearchErrorCode_Failed_Not_Lobby_Leader = 4, // if not the lobby leader can not call SearchForGameWithLobby + k_EGameSearchErrorCode_Failed_No_Host_Available = 5, // no host is available that matches those search params + k_EGameSearchErrorCode_Failed_Search_Params_Invalid = 6, // search params are invalid + k_EGameSearchErrorCode_Failed_Offline = 7, // offline, could not communicate with server + k_EGameSearchErrorCode_Failed_NotAuthorized = 8, // either the user or the application does not have priveledges to do this + k_EGameSearchErrorCode_Failed_Unknown_Error = 9, // unknown error +}; + +enum EPlayerResult_t +{ + k_EPlayerResultFailedToConnect = 1, // failed to connect after confirming + k_EPlayerResultAbandoned = 2, // quit game without completing it + k_EPlayerResultKicked = 3, // kicked by other players/moderator/server rules + k_EPlayerResultIncomplete = 4, // player stayed to end but game did not conclude successfully ( nofault to player ) + k_EPlayerResultCompleted = 5, // player completed game +}; + + +enum ESteamIPv6ConnectivityProtocol +{ + k_ESteamIPv6ConnectivityProtocol_Invalid = 0, + k_ESteamIPv6ConnectivityProtocol_HTTP = 1, // because a proxy may make this different than other protocols + k_ESteamIPv6ConnectivityProtocol_UDP = 2, // test UDP connectivity. Uses a port that is commonly needed for other Steam stuff. If UDP works, TCP probably works. +}; + +// For the above transport protocol, what do we think the local machine's connectivity to the internet over ipv6 is like +enum ESteamIPv6ConnectivityState +{ + k_ESteamIPv6ConnectivityState_Unknown = 0, // We haven't run a test yet + k_ESteamIPv6ConnectivityState_Good = 1, // We have recently been able to make a request on ipv6 for the given protocol + k_ESteamIPv6ConnectivityState_Bad = 2, // We failed to make a request, either because this machine has no ipv6 address assigned, or it has no upstream connectivity +}; + + +// Define compile time assert macros to let us validate the structure sizes. +#define VALVE_COMPILE_TIME_ASSERT( pred ) typedef char compile_time_assert_type[(pred) ? 1 : -1]; + +#if defined(__linux__) || defined(__APPLE__) +// The 32-bit version of gcc has the alignment requirement for uint64 and double set to +// 4 meaning that even with #pragma pack(8) these types will only be four-byte aligned. +// The 64-bit version of gcc has the alignment requirement for these types set to +// 8 meaning that unless we use #pragma pack(4) our structures will get bigger. +// The 64-bit structure packing has to match the 32-bit structure packing for each platform. +#define VALVE_CALLBACK_PACK_SMALL +#else +#define VALVE_CALLBACK_PACK_LARGE +#endif + +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error ??? +#endif + +typedef struct ValvePackingSentinel_t +{ + uint32 m_u32; + uint64 m_u64; + uint16 m_u16; + double m_d; +} ValvePackingSentinel_t; + +#pragma pack( pop ) + + +#if defined(VALVE_CALLBACK_PACK_SMALL) +VALVE_COMPILE_TIME_ASSERT( sizeof(ValvePackingSentinel_t) == 24 ) +#elif defined(VALVE_CALLBACK_PACK_LARGE) +VALVE_COMPILE_TIME_ASSERT( sizeof(ValvePackingSentinel_t) == 32 ) +#else +#error ??? +#endif + +#endif // STEAMCLIENTPUBLIC_H diff --git a/lib/steam/public/steam/steamdatagram_tickets.h b/lib/steam/public/steam/steamdatagram_tickets.h new file mode 100644 index 0000000..b9cae3a --- /dev/null +++ b/lib/steam/public/steam/steamdatagram_tickets.h @@ -0,0 +1,286 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== +// +// Types and utilities for handling steam datagram tickets. These are +// useful for both the client and the backend ticket generating authority. +// +//============================================================================= + +#ifndef STEAMDATAGRAM_TICKETS_H +#define STEAMDATAGRAM_TICKETS_H +#ifdef _WIN32 +#pragma once +#endif + +#ifndef assert + #include +#endif + +#include +#include "steamnetworkingtypes.h" + +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error "Must define VALVE_CALLBACK_PACK_SMALL or VALVE_CALLBACK_PACK_LARGE" +#endif + +/// Max length of serialized auth ticket. This is important so that we +/// can ensure that we always fit into a single UDP datagram (along with +/// other certs and signatures) and keep the implementation simple. +const size_t k_cbSteamDatagramMaxSerializedTicket = 512; + +/// Network-routable identifier for a service. This is an intentionally +/// opaque byte blob. The relays know how to use this to forward it on +/// to the intended destination, but otherwise clients really should not +/// need to know what's inside. (Indeed, we don't really want them to +/// know, as it could reveal information useful to an attacker.) +struct SteamDatagramHostedAddress +{ + + // Size of data blob. + int m_cbSize; + + // Opaque data + char m_data[ 128 ]; + + // Reset to empty state + void Clear() { memset( this, 0, sizeof(*this) ); } + + // Parse the data center out of the blob. + SteamNetworkingPOPID GetPopID() const { return CalculateSteamNetworkingPOPIDFromString( m_data ); } + + /// Set a dummy routing blob with a hardcoded IP:port. You should only use + /// this in a dev environment, since the address is in plaintext! + /// In production this information should come from the server, + /// using ISteamNetworkingSockets::GetHostedDedicatedServerAddress + void SetDevAddress( uint32 nIP, uint16 nPort, SteamNetworkingPOPID popid = 0 ) + { + GetSteamNetworkingLocationPOPStringFromID( popid, m_data ); + m_cbSize = 4; + m_data[m_cbSize++] = 1; + m_data[m_cbSize++] = 1; + m_data[m_cbSize++] = char(nPort); + m_data[m_cbSize++] = char(nPort>>8); + m_data[m_cbSize++] = char(nIP); + m_data[m_cbSize++] = char(nIP>>8); + m_data[m_cbSize++] = char(nIP>>16); + m_data[m_cbSize++] = char(nIP>>24); + } + + /// Convert to/from std::string (or anything that acts like it). + /// Useful for interfacing with google protobuf. It's a template + /// mainly so that we don't have to include in the header. + /// Note: by "string", we don't mean that it's text. It's a binary + /// blob, and it might have zeros in it. (std::string can handle that.) + template bool SetFromStdString( const T &str ) + { + if ( str.length() >= sizeof(m_data) ) + { + m_cbSize = 0; + return false; + } + m_cbSize = (int)str.length(); + memcpy( m_data, str.c_str(), m_cbSize ); + return true; + } + template void GetAsStdString( T *str ) const + { + str->assign( m_data, m_cbSize ); + } +}; + +/// Ticket used to gain access to the relay network. +struct SteamDatagramRelayAuthTicket +{ + SteamDatagramRelayAuthTicket() { Clear(); } + + /// Reset all fields + void Clear() { memset( this, 0, sizeof(*this) ); m_nRestrictToVirtualPort = -1; } + + /// Identity of the gameserver we want to talk to. This is required. + SteamNetworkingIdentity m_identityGameserver; + + /// Identity of the person who was authorized. This is required. + SteamNetworkingIdentity m_identityAuthorizedClient; + + /// SteamID is authorized to send from a particular public IP. If this + /// is 0, then the sender is not restricted to a particular IP. + /// + /// Recommend to leave this set to zero. + uint32 m_unPublicIP; + + /// Time when the ticket expires. Recommended: take the current + /// time and add 6 hours, or maybe a bit longer if your gameplay + /// sessions are longer. + /// + /// NOTE: relays may reject tickets with expiry times excessively + /// far in the future, so contact us if you wish to use an expiry + /// longer than, say, 24 hours. + RTime32 m_rtimeTicketExpiry; + + /// Routing information where the gameserver is listening for + /// relayed traffic. You should fill this in when generating + /// a ticket. + /// + /// When generating tickets on your backend: + /// - In production: The gameserver knows the proper routing + /// information, so you need to call + /// ISteamNetworkingSockets::GetHostedDedicatedServerAddress + /// and send the info to your backend. + /// - In development, you will need to provide public IP + /// of the server using SteamDatagramServiceNetID::SetDevAddress. + /// Relays need to be able to send UDP + /// packets to this server. Since it's very likely that + /// your server is behind a firewall/NAT, make sure that + /// the address is the one that the outside world can use. + /// The traffic from the relays will be "unsolicited", so + /// stateful firewalls won't work -- you will probably have + /// to set up an explicit port forward. + /// On the client: + /// - this field will always be blank. + SteamDatagramHostedAddress m_routing; + + /// App ID this is for. This is required, and should be the + /// App ID the client is running. (Even if your gameserver + /// uses a different App ID.) + uint32 m_nAppID; + + /// Restrict this ticket to be used for a particular virtual port? + /// Set to -1 to allow any virtual port. + /// + /// This is useful as a security measure, and also so the client will + /// use the right ticket (which might have extra fields that are useful + /// for proper analytics), if the client happens to have more than one + /// appropriate ticket. + /// + /// Note: if a client has more that one acceptable ticket, they will + /// always use the one expiring the latest. + int m_nRestrictToVirtualPort; + + // + // Extra fields. + // + // These are collected for backend analytics. For example, you might + // send a MatchID so that all of the records for a particular match can + // be located. Or send a game mode field so that you can compare + // the network characteristics of different game modes. + // + // (At the time of this writing we don't have a way to expose the data + // we collect to partners, but we hope to in the future so that you can + // get visibility into network conditions.) + // + + struct ExtraField + { + enum EType + { + k_EType_String, + k_EType_Int, // For most small integral values. Uses google protobuf sint64, so it's small on the wire. WARNING: In some places this value may be transmitted in JSON, in which case precision may be lost in backend analytics. Don't use this for an "identifier", use it for a scalar quantity. + k_EType_Fixed64, // 64 arbitrary bits. This value is treated as an "identifier". In places where JSON format is used, it will be serialized as a string. No aggregation / analytics can be performed on this value. + }; + int /* EType */ m_eType; + char m_szName[28]; + + union { + char m_szStringValue[128]; + int64 m_nIntValue; + uint64 m_nFixed64Value; + }; + }; + enum { k_nMaxExtraFields = 16 }; + int m_nExtraFields; + ExtraField m_vecExtraFields[ k_nMaxExtraFields ]; + + /// Helper to add an extra field in a single call + void AddExtraField_Int( const char *pszName, int64 val ) + { + ExtraField *p = AddExtraField( pszName, ExtraField::k_EType_Int ); + if ( p ) + p->m_nIntValue = val; + } + void AddExtraField_Fixed64( const char *pszName, uint64 val ) + { + ExtraField *p = AddExtraField( pszName, ExtraField::k_EType_Fixed64 ); + if ( p ) + p->m_nFixed64Value = val; + } + void AddExtraField_String( const char *pszName, const char *val ) + { + ExtraField *p = AddExtraField( pszName, ExtraField::k_EType_String ); + if ( p ) + { + size_t l = strlen( val ); + if ( l > sizeof(p->m_szStringValue)-1 ) + l = sizeof(p->m_szStringValue)-1; + memcpy( p->m_szStringValue, val, l ); + p->m_szStringValue[l] = '\0'; + } + } + +private: + ExtraField *AddExtraField( const char *pszName, ExtraField::EType eType ) + { + if ( m_nExtraFields >= k_nMaxExtraFields ) + { + assert( false ); + return NULL; + } + ExtraField *p = &m_vecExtraFields[ m_nExtraFields++ ]; + p->m_eType = eType; + + size_t l = strlen( pszName ); + if ( l > sizeof(p->m_szName)-1 ) + l = sizeof(p->m_szName)-1; + memcpy( p->m_szName, pszName, l ); + p->m_szName[l] = '\0'; + return p; + } +}; + +#pragma pack(pop) + +/// Max size of user data blob +const size_t k_cbMaxSteamDatagramGameCoordinatorServerLoginAppData = 2048; + +/// Max size of serialized data blob +const size_t k_cbMaxSteamDatagramGameCoordinatorServerLoginSerialized = 4096; + +/// Structure that describes a gameserver attempting to authenticate +/// with your central server allocator / matchmaking service ("game coordinator"). +/// This is useful because the game coordinator needs to know: +/// +/// - What data center is the gameserver running in? +/// - The routing blob of the gameserver +/// - Is the gameserver actually trusted? +/// +/// Using this structure, you can securely communicate this information +/// to your server, and you can do this WITHOUT maintaining any +/// whitelists or tables of IP addresses. +/// +/// See ISteamNetworkingSockets::GetGameCoordinatorServerLogin +struct SteamDatagramGameCoordinatorServerLogin +{ + /// Server's identity + SteamNetworkingIdentity m_identity; + + /// Routing info. Note that this includes the POPID + SteamDatagramHostedAddress m_routing; + + /// AppID that the server thinks it is running + AppId_t m_nAppID; + + /// Unix timestamp when this was generated + RTime32 m_rtime; + + /// Size of application data + int m_cbAppData; + + /// Application data. This is any additional information + /// that you need to identify the server not contained above. + /// (E.g. perhaps a public IP as seen by the coordinator service.) + char m_appData[ k_cbMaxSteamDatagramGameCoordinatorServerLoginAppData ]; +}; + +#endif // STEAMDATAGRAM_TICKETS_H diff --git a/lib/steam/public/steam/steamencryptedappticket.h b/lib/steam/public/steam/steamencryptedappticket.h new file mode 100644 index 0000000..764c683 --- /dev/null +++ b/lib/steam/public/steam/steamencryptedappticket.h @@ -0,0 +1,40 @@ +//========= Copyright © 1996-2010, Valve LLC, All rights reserved. ============ +// +// Purpose: utilities to decode/decrypt a ticket from the +// ISteamUser::RequestEncryptedAppTicket, ISteamUser::GetEncryptedAppTicket API +// +// To use: declare CSteamEncryptedAppTicket, then call BDecryptTicket +// if BDecryptTicket returns true, other accessors are valid +// +//============================================================================= + +#include "steam_api.h" + +static const int k_nSteamEncryptedAppTicketSymmetricKeyLen = 32; + + +S_API bool SteamEncryptedAppTicket_BDecryptTicket( const uint8 *rgubTicketEncrypted, uint32 cubTicketEncrypted, + uint8 *rgubTicketDecrypted, uint32 *pcubTicketDecrypted, + const uint8 rgubKey[k_nSteamEncryptedAppTicketSymmetricKeyLen], int cubKey ); + +S_API bool SteamEncryptedAppTicket_BIsTicketForApp( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted, AppId_t nAppID ); + +S_API RTime32 SteamEncryptedAppTicket_GetTicketIssueTime( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted ); + +S_API void SteamEncryptedAppTicket_GetTicketSteamID( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted, CSteamID *psteamID ); + +S_API AppId_t SteamEncryptedAppTicket_GetTicketAppID( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted ); + +S_API bool SteamEncryptedAppTicket_BUserOwnsAppInTicket( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted, AppId_t nAppID ); + +S_API bool SteamEncryptedAppTicket_BUserIsVacBanned( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted ); + +S_API bool SteamEncryptedAppTicket_BGetAppDefinedValue( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted, uint32 *pValue ); + +S_API const uint8 *SteamEncryptedAppTicket_GetUserVariableData( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted, uint32 *pcubUserData ); + +S_API bool SteamEncryptedAppTicket_BIsTicketSigned( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted, const uint8 *pubRSAKey, uint32 cubRSAKey ); + +S_API bool SteamEncryptedAppTicket_BIsLicenseBorrowed( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted ); + +S_API bool SteamEncryptedAppTicket_BIsLicenseTemporary( uint8 *rgubTicketDecrypted, uint32 cubTicketDecrypted ); diff --git a/lib/steam/public/steam/steamhttpenums.h b/lib/steam/public/steam/steamhttpenums.h new file mode 100644 index 0000000..ff8551e --- /dev/null +++ b/lib/steam/public/steam/steamhttpenums.h @@ -0,0 +1,99 @@ +//====== Copyright © 1996-2010, Valve Corporation, All rights reserved. ======= +// +// Purpose: HTTP related enums, stuff that is shared by both clients and servers, and our +// UI projects goes here. +// +//============================================================================= + +#ifndef STEAMHTTPENUMS_H +#define STEAMHTTPENUMS_H +#ifdef _WIN32 +#pragma once +#endif + +// HTTP related types + +// This enum is used in client API methods, do not re-number existing values. +enum EHTTPMethod +{ + k_EHTTPMethodInvalid = 0, + k_EHTTPMethodGET, + k_EHTTPMethodHEAD, + k_EHTTPMethodPOST, + k_EHTTPMethodPUT, + k_EHTTPMethodDELETE, + k_EHTTPMethodOPTIONS, + k_EHTTPMethodPATCH, + + // The remaining HTTP methods are not yet supported, per rfc2616 section 5.1.1 only GET and HEAD are required for + // a compliant general purpose server. We'll likely add more as we find uses for them. + + // k_EHTTPMethodTRACE, + // k_EHTTPMethodCONNECT +}; + + +// HTTP Status codes that the server can send in response to a request, see rfc2616 section 10.3 for descriptions +// of each of these. +enum EHTTPStatusCode +{ + // Invalid status code (this isn't defined in HTTP, used to indicate unset in our code) + k_EHTTPStatusCodeInvalid = 0, + + // Informational codes + k_EHTTPStatusCode100Continue = 100, + k_EHTTPStatusCode101SwitchingProtocols = 101, + + // Success codes + k_EHTTPStatusCode200OK = 200, + k_EHTTPStatusCode201Created = 201, + k_EHTTPStatusCode202Accepted = 202, + k_EHTTPStatusCode203NonAuthoritative = 203, + k_EHTTPStatusCode204NoContent = 204, + k_EHTTPStatusCode205ResetContent = 205, + k_EHTTPStatusCode206PartialContent = 206, + + // Redirection codes + k_EHTTPStatusCode300MultipleChoices = 300, + k_EHTTPStatusCode301MovedPermanently = 301, + k_EHTTPStatusCode302Found = 302, + k_EHTTPStatusCode303SeeOther = 303, + k_EHTTPStatusCode304NotModified = 304, + k_EHTTPStatusCode305UseProxy = 305, + //k_EHTTPStatusCode306Unused = 306, (used in old HTTP spec, now unused in 1.1) + k_EHTTPStatusCode307TemporaryRedirect = 307, + + // Error codes + k_EHTTPStatusCode400BadRequest = 400, + k_EHTTPStatusCode401Unauthorized = 401, // You probably want 403 or something else. 401 implies you're sending a WWW-Authenticate header and the client can sent an Authorization header in response. + k_EHTTPStatusCode402PaymentRequired = 402, // This is reserved for future HTTP specs, not really supported by clients + k_EHTTPStatusCode403Forbidden = 403, + k_EHTTPStatusCode404NotFound = 404, + k_EHTTPStatusCode405MethodNotAllowed = 405, + k_EHTTPStatusCode406NotAcceptable = 406, + k_EHTTPStatusCode407ProxyAuthRequired = 407, + k_EHTTPStatusCode408RequestTimeout = 408, + k_EHTTPStatusCode409Conflict = 409, + k_EHTTPStatusCode410Gone = 410, + k_EHTTPStatusCode411LengthRequired = 411, + k_EHTTPStatusCode412PreconditionFailed = 412, + k_EHTTPStatusCode413RequestEntityTooLarge = 413, + k_EHTTPStatusCode414RequestURITooLong = 414, + k_EHTTPStatusCode415UnsupportedMediaType = 415, + k_EHTTPStatusCode416RequestedRangeNotSatisfiable = 416, + k_EHTTPStatusCode417ExpectationFailed = 417, + k_EHTTPStatusCode4xxUnknown = 418, // 418 is reserved, so we'll use it to mean unknown + k_EHTTPStatusCode429TooManyRequests = 429, + k_EHTTPStatusCode444ConnectionClosed = 444, // nginx only? + + // Server error codes + k_EHTTPStatusCode500InternalServerError = 500, + k_EHTTPStatusCode501NotImplemented = 501, + k_EHTTPStatusCode502BadGateway = 502, + k_EHTTPStatusCode503ServiceUnavailable = 503, + k_EHTTPStatusCode504GatewayTimeout = 504, + k_EHTTPStatusCode505HTTPVersionNotSupported = 505, + k_EHTTPStatusCode5xxUnknown = 599, +}; + +#endif // STEAMHTTPENUMS_H \ No newline at end of file diff --git a/lib/steam/public/steam/steamnetworkingtypes.h b/lib/steam/public/steam/steamnetworkingtypes.h new file mode 100644 index 0000000..457e53f --- /dev/null +++ b/lib/steam/public/steam/steamnetworkingtypes.h @@ -0,0 +1,1628 @@ +//====== Copyright Valve Corporation, All rights reserved. ==================== +// +// Purpose: misc networking utilities +// +//============================================================================= + +#ifndef STEAMNETWORKINGTYPES +#define STEAMNETWORKINGTYPES +#pragma once + +#include +#include +#include "steamtypes.h" +#include "steamclientpublic.h" + +//----------------------------------------------------------------------------- +// SteamNetworkingSockets config. +//#define STEAMNETWORKINGSOCKETS_STANDALONELIB // Comment this in to support compiling/linking with the standalone library / gamenetworkingsockets opensource +#define STEAMNETWORKINGSOCKETS_STEAMAPI // Compiling/link with steam_api.h and Steamworks SDK +//----------------------------------------------------------------------------- + +#if !defined( STEAMNETWORKINGSOCKETS_OPENSOURCE ) && !defined( STEAMNETWORKINGSOCKETS_STREAMINGCLIENT ) + #define STEAMNETWORKINGSOCKETS_STEAM +#endif +#ifdef NN_NINTENDO_SDK // We always static link on Nintendo + #define STEAMNETWORKINGSOCKETS_STATIC_LINK +#endif +#if defined( STEAMNETWORKINGSOCKETS_STATIC_LINK ) + #define STEAMNETWORKINGSOCKETS_INTERFACE extern "C" +#elif defined( STEAMNETWORKINGSOCKETS_FOREXPORT ) + #ifdef _WIN32 + #define STEAMNETWORKINGSOCKETS_INTERFACE extern "C" __declspec( dllexport ) + #else + #define STEAMNETWORKINGSOCKETS_INTERFACE extern "C" __attribute__((visibility("default"))) + #endif +#else + #ifdef _WIN32 + #define STEAMNETWORKINGSOCKETS_INTERFACE extern "C" __declspec( dllimport ) + #else + #define STEAMNETWORKINGSOCKETS_INTERFACE extern "C" + #endif +#endif + +#if defined( VALVE_CALLBACK_PACK_SMALL ) +#pragma pack( push, 4 ) +#elif defined( VALVE_CALLBACK_PACK_LARGE ) +#pragma pack( push, 8 ) +#else +#error "Must define VALVE_CALLBACK_PACK_SMALL or VALVE_CALLBACK_PACK_LARGE" +#endif + +struct SteamDatagramRelayAuthTicket; +struct SteamDatagramHostedAddress; +struct SteamDatagramGameCoordinatorServerLogin; +struct SteamNetConnectionStatusChangedCallback_t; +struct SteamNetAuthenticationStatus_t; +struct SteamRelayNetworkStatus_t; +struct SteamNetworkingMessagesSessionRequest_t; +struct SteamNetworkingMessagesSessionFailed_t; + +typedef void (*FnSteamNetConnectionStatusChanged)( SteamNetConnectionStatusChangedCallback_t * ); +typedef void (*FnSteamNetAuthenticationStatusChanged)( SteamNetAuthenticationStatus_t * ); +typedef void (*FnSteamRelayNetworkStatusChanged)(SteamRelayNetworkStatus_t *); +typedef void (*FnSteamNetworkingMessagesSessionRequest)(SteamNetworkingMessagesSessionRequest_t *); +typedef void (*FnSteamNetworkingMessagesSessionFailed)(SteamNetworkingMessagesSessionFailed_t *); + +/// Handle used to identify a connection to a remote host. +typedef uint32 HSteamNetConnection; +const HSteamNetConnection k_HSteamNetConnection_Invalid = 0; + +/// Handle used to identify a "listen socket". Unlike traditional +/// Berkeley sockets, a listen socket and a connection are two +/// different abstractions. +typedef uint32 HSteamListenSocket; +const HSteamListenSocket k_HSteamListenSocket_Invalid = 0; + +/// Handle used to identify a poll group, used to query many +/// connections at once efficiently. +typedef uint32 HSteamNetPollGroup; +const HSteamNetPollGroup k_HSteamNetPollGroup_Invalid = 0; + +/// Max length of diagnostic error message +const int k_cchMaxSteamNetworkingErrMsg = 1024; + +/// Used to return English-language diagnostic error messages to caller. +/// (For debugging or spewing to a console, etc. Not intended for UI.) +typedef char SteamNetworkingErrMsg[ k_cchMaxSteamNetworkingErrMsg ]; + +/// Identifier used for a network location point of presence. (E.g. a Valve data center.) +/// Typically you won't need to directly manipulate these. +typedef uint32 SteamNetworkingPOPID; + +/// A local timestamp. You can subtract two timestamps to get the number of elapsed +/// microseconds. This is guaranteed to increase over time during the lifetime +/// of a process, but not globally across runs. You don't need to worry about +/// the value wrapping around. Note that the underlying clock might not actually have +/// microsecond resolution. +typedef int64 SteamNetworkingMicroseconds; + +/// Describe the status of a particular network resource +enum ESteamNetworkingAvailability +{ + // Negative values indicate a problem. + // + // In general, we will not automatically retry unless you take some action that + // depends on of requests this resource, such as querying the status, attempting + // to initiate a connection, receive a connection, etc. If you do not take any + // action at all, we do not automatically retry in the background. + k_ESteamNetworkingAvailability_CannotTry = -102, // A dependent resource is missing, so this service is unavailable. (E.g. we cannot talk to routers because Internet is down or we don't have the network config.) + k_ESteamNetworkingAvailability_Failed = -101, // We have tried for enough time that we would expect to have been successful by now. We have never been successful + k_ESteamNetworkingAvailability_Previously = -100, // We tried and were successful at one time, but now it looks like we have a problem + + k_ESteamNetworkingAvailability_Retrying = -10, // We previously failed and are currently retrying + + // Not a problem, but not ready either + k_ESteamNetworkingAvailability_NeverTried = 1, // We don't know because we haven't ever checked/tried + k_ESteamNetworkingAvailability_Waiting = 2, // We're waiting on a dependent resource to be acquired. (E.g. we cannot obtain a cert until we are logged into Steam. We cannot measure latency to relays until we have the network config.) + k_ESteamNetworkingAvailability_Attempting = 3, // We're actively trying now, but are not yet successful. + + k_ESteamNetworkingAvailability_Current = 100, // Resource is online/available + + + k_ESteamNetworkingAvailability_Unknown = 0, // Internal dummy/sentinel, or value is not applicable in this context + k_ESteamNetworkingAvailability__Force32bit = 0x7fffffff, +}; + +// +// Describing network hosts +// + +/// Different methods of describing the identity of a network host +enum ESteamNetworkingIdentityType +{ + // Dummy/empty/invalid. + // Plese note that if we parse a string that we don't recognize + // but that appears reasonable, we will NOT use this type. Instead + // we'll use k_ESteamNetworkingIdentityType_UnknownType. + k_ESteamNetworkingIdentityType_Invalid = 0, + + // + // Basic platform-specific identifiers. + // + k_ESteamNetworkingIdentityType_SteamID = 16, // 64-bit CSteamID + + // + // Special identifiers. + // + + // Use their IP address (and port) as their "identity". + // These types of identities are always unauthenticated. + // They are useful for porting plain sockets code, and other + // situations where you don't care about authentication. In this + // case, the local identity will be "localhost", + // and the remote address will be their network address. + // + // We use the same type for either IPv4 or IPv6, and + // the address is always store as IPv6. We use IPv4 + // mapped addresses to handle IPv4. + k_ESteamNetworkingIdentityType_IPAddress = 1, + + // Generic string/binary blobs. It's up to your app to interpret this. + // This library can tell you if the remote host presented a certificate + // signed by somebody you have chosen to trust, with this identity on it. + // It's up to you to ultimately decide what this identity means. + k_ESteamNetworkingIdentityType_GenericString = 2, + k_ESteamNetworkingIdentityType_GenericBytes = 3, + + // This identity type is used when we parse a string that looks like is a + // valid identity, just of a kind that we don't recognize. In this case, we + // can often still communicate with the peer! Allowing such identities + // for types we do not recognize useful is very useful for forward + // compatibility. + k_ESteamNetworkingIdentityType_UnknownType = 4, + + // Make sure this enum is stored in an int. + k_ESteamNetworkingIdentityType__Force32bit = 0x7fffffff, +}; + +#pragma pack(push,1) + +/// Store an IP and port. IPv6 is always used; IPv4 is represented using +/// "IPv4-mapped" addresses: IPv4 aa.bb.cc.dd => IPv6 ::ffff:aabb:ccdd +/// (RFC 4291 section 2.5.5.2.) +struct SteamNetworkingIPAddr +{ + void Clear(); // Set everything to zero. E.g. [::]:0 + bool IsIPv6AllZeros() const; // Return true if the IP is ::0. (Doesn't check port.) + void SetIPv6( const uint8 *ipv6, uint16 nPort ); // Set IPv6 address. IP is interpreted as bytes, so there are no endian issues. (Same as inaddr_in6.) The IP can be a mapped IPv4 address + void SetIPv4( uint32 nIP, uint16 nPort ); // Sets to IPv4 mapped address. IP and port are in host byte order. + bool IsIPv4() const; // Return true if IP is mapped IPv4 + uint32 GetIPv4() const; // Returns IP in host byte order (e.g. aa.bb.cc.dd as 0xaabbccdd). Returns 0 if IP is not mapped IPv4. + void SetIPv6LocalHost( uint16 nPort = 0); // Set to the IPv6 localhost address ::1, and the specified port. + bool IsLocalHost() const; // Return true if this identity is localhost. (Either IPv6 ::1, or IPv4 127.0.0.1) + + // Max length of the buffer needed to hold IP formatted using ToString, including '\0' + // ([0123:4567:89ab:cdef:0123:4567:89ab:cdef]:12345) + enum { k_cchMaxString = 48 }; + + /// Print to a string, with or without the port. Mapped IPv4 addresses are printed + /// as dotted decimal (12.34.56.78), otherwise this will print the canonical + /// form according to RFC5952. If you include the port, IPv6 will be surrounded by + /// brackets, e.g. [::1:2]:80. Your buffer should be at least k_cchMaxString bytes + /// to avoid truncation + /// + /// See also SteamNetworkingIdentityRender + inline void ToString( char *buf, size_t cbBuf, bool bWithPort ) const; + + /// Parse an IP address and optional port. If a port is not present, it is set to 0. + /// (This means that you cannot tell if a zero port was explicitly specified.) + inline bool ParseString( const char *pszStr ); + + /// RFC4038, section 4.2 + struct IPv4MappedAddress { + uint64 m_8zeros; + uint16 m_0000; + uint16 m_ffff; + uint8 m_ip[ 4 ]; // NOTE: As bytes, i.e. network byte order + }; + + union + { + uint8 m_ipv6[ 16 ]; + IPv4MappedAddress m_ipv4; + }; + uint16 m_port; // Host byte order + + /// See if two addresses are identical + bool operator==(const SteamNetworkingIPAddr &x ) const; +}; + +/// An abstract way to represent the identity of a network host. All identities can +/// be represented as simple string. Furthermore, this string representation is actually +/// used on the wire in several places, even though it is less efficient, in order to +/// facilitate forward compatibility. (Old client code can handle an identity type that +/// it doesn't understand.) +struct SteamNetworkingIdentity +{ + /// Type of identity. + ESteamNetworkingIdentityType m_eType; + + // + // Get/Set in various formats. + // + + void Clear(); + bool IsInvalid() const; // Return true if we are the invalid type. Does not make any other validity checks (e.g. is SteamID actually valid) + + void SetSteamID( CSteamID steamID ); + CSteamID GetSteamID() const; // Return black CSteamID (!IsValid()) if identity is not a SteamID + void SetSteamID64( uint64 steamID ); // Takes SteamID as raw 64-bit number + uint64 GetSteamID64() const; // Returns 0 if identity is not SteamID + + void SetIPAddr( const SteamNetworkingIPAddr &addr ); // Set to specified IP:port + const SteamNetworkingIPAddr *GetIPAddr() const; // returns null if we are not an IP address. + + // "localhost" is equivalent for many purposes to "anonymous." Our remote + // will identify us by the network address we use. + void SetLocalHost(); // Set to localhost. (We always use IPv6 ::1 for this, not 127.0.0.1) + bool IsLocalHost() const; // Return true if this identity is localhost. + + bool SetGenericString( const char *pszString ); // Returns false if invalid length + const char *GetGenericString() const; // Returns nullptr if not generic string type + + bool SetGenericBytes( const void *data, size_t cbLen ); // Returns false if invalid size. + const uint8 *GetGenericBytes( int &cbLen ) const; // Returns null if not generic bytes type + + /// See if two identities are identical + bool operator==(const SteamNetworkingIdentity &x ) const; + + /// Print to a human-readable string. This is suitable for debug messages + /// or any other time you need to encode the identity as a string. It has a + /// URL-like format (type:). Your buffer should be at least + /// k_cchMaxString bytes big to avoid truncation. + /// + /// See also SteamNetworkingIPAddrRender + void ToString( char *buf, size_t cbBuf ) const; + + /// Parse back a string that was generated using ToString. If we don't understand the + /// string, but it looks "reasonable" (it matches the pattern type: and doesn't + /// have any funky characters, etc), then we will return true, and the type is set to + /// k_ESteamNetworkingIdentityType_UnknownType. false will only be returned if the string + /// looks invalid. + bool ParseString( const char *pszStr ); + + // Max sizes + enum { + k_cchMaxString = 128, // Max length of the buffer needed to hold any identity, formatted in string format by ToString + k_cchMaxGenericString = 32, // Max length of the string for generic string identities. Including terminating '\0' + k_cbMaxGenericBytes = 32, + }; + + // + // Internal representation. Don't access this directly, use the accessors! + // + // Number of bytes that are relevant below. This MUST ALWAYS be + // set. (Use the accessors!) This is important to enable old code to work + // with new identity types. + int m_cbSize; + union { + uint64 m_steamID64; + char m_szGenericString[ k_cchMaxGenericString ]; + uint8 m_genericBytes[ k_cbMaxGenericBytes ]; + char m_szUnknownRawString[ k_cchMaxString ]; + SteamNetworkingIPAddr m_ip; + uint32 m_reserved[ 32 ]; // Pad structure to leave easy room for future expansion + }; +}; +#pragma pack(pop) + +// +// Connection status +// + +/// High level connection status +enum ESteamNetworkingConnectionState +{ + + /// Dummy value used to indicate an error condition in the API. + /// Specified connection doesn't exist or has already been closed. + k_ESteamNetworkingConnectionState_None = 0, + + /// We are trying to establish whether peers can talk to each other, + /// whether they WANT to talk to each other, perform basic auth, + /// and exchange crypt keys. + /// + /// - For connections on the "client" side (initiated locally): + /// We're in the process of trying to establish a connection. + /// Depending on the connection type, we might not know who they are. + /// Note that it is not possible to tell if we are waiting on the + /// network to complete handshake packets, or for the application layer + /// to accept the connection. + /// + /// - For connections on the "server" side (accepted through listen socket): + /// We have completed some basic handshake and the client has presented + /// some proof of identity. The connection is ready to be accepted + /// using AcceptConnection(). + /// + /// In either case, any unreliable packets sent now are almost certain + /// to be dropped. Attempts to receive packets are guaranteed to fail. + /// You may send messages if the send mode allows for them to be queued. + /// but if you close the connection before the connection is actually + /// established, any queued messages will be discarded immediately. + /// (We will not attempt to flush the queue and confirm delivery to the + /// remote host, which ordinarily happens when a connection is closed.) + k_ESteamNetworkingConnectionState_Connecting = 1, + + /// Some connection types use a back channel or trusted 3rd party + /// for earliest communication. If the server accepts the connection, + /// then these connections switch into the rendezvous state. During this + /// state, we still have not yet established an end-to-end route (through + /// the relay network), and so if you send any messages unreliable, they + /// are going to be discarded. + k_ESteamNetworkingConnectionState_FindingRoute = 2, + + /// We've received communications from our peer (and we know + /// who they are) and are all good. If you close the connection now, + /// we will make our best effort to flush out any reliable sent data that + /// has not been acknowledged by the peer. (But note that this happens + /// from within the application process, so unlike a TCP connection, you are + /// not totally handing it off to the operating system to deal with it.) + k_ESteamNetworkingConnectionState_Connected = 3, + + /// Connection has been closed by our peer, but not closed locally. + /// The connection still exists from an API perspective. You must close the + /// handle to free up resources. If there are any messages in the inbound queue, + /// you may retrieve them. Otherwise, nothing may be done with the connection + /// except to close it. + /// + /// This stats is similar to CLOSE_WAIT in the TCP state machine. + k_ESteamNetworkingConnectionState_ClosedByPeer = 4, + + /// A disruption in the connection has been detected locally. (E.g. timeout, + /// local internet connection disrupted, etc.) + /// + /// The connection still exists from an API perspective. You must close the + /// handle to free up resources. + /// + /// Attempts to send further messages will fail. Any remaining received messages + /// in the queue are available. + k_ESteamNetworkingConnectionState_ProblemDetectedLocally = 5, + +// +// The following values are used internally and will not be returned by any API. +// We document them here to provide a little insight into the state machine that is used +// under the hood. +// + + /// We've disconnected on our side, and from an API perspective the connection is closed. + /// No more data may be sent or received. All reliable data has been flushed, or else + /// we've given up and discarded it. We do not yet know for sure that the peer knows + /// the connection has been closed, however, so we're just hanging around so that if we do + /// get a packet from them, we can send them the appropriate packets so that they can + /// know why the connection was closed (and not have to rely on a timeout, which makes + /// it appear as if something is wrong). + k_ESteamNetworkingConnectionState_FinWait = -1, + + /// We've disconnected on our side, and from an API perspective the connection is closed. + /// No more data may be sent or received. From a network perspective, however, on the wire, + /// we have not yet given any indication to the peer that the connection is closed. + /// We are in the process of flushing out the last bit of reliable data. Once that is done, + /// we will inform the peer that the connection has been closed, and transition to the + /// FinWait state. + /// + /// Note that no indication is given to the remote host that we have closed the connection, + /// until the data has been flushed. If the remote host attempts to send us data, we will + /// do whatever is necessary to keep the connection alive until it can be closed properly. + /// But in fact the data will be discarded, since there is no way for the application to + /// read it back. Typically this is not a problem, as application protocols that utilize + /// the lingering functionality are designed for the remote host to wait for the response + /// before sending any more data. + k_ESteamNetworkingConnectionState_Linger = -2, + + /// Connection is completely inactive and ready to be destroyed + k_ESteamNetworkingConnectionState_Dead = -3, + + k_ESteamNetworkingConnectionState__Force32Bit = 0x7fffffff +}; + +/// Enumerate various causes of connection termination. These are designed to work similar +/// to HTTP error codes: the numeric range gives you a rough classification as to the source +/// of the problem. +enum ESteamNetConnectionEnd +{ + // Invalid/sentinel value + k_ESteamNetConnectionEnd_Invalid = 0, + + // + // Application codes. These are the values you will pass to + // ISteamNetworkingSockets::CloseConnection. You can use these codes if + // you want to plumb through application-specific reason codes. If you don't + // need this facility, feel free to always pass + // k_ESteamNetConnectionEnd_App_Generic. + // + // The distinction between "normal" and "exceptional" termination is + // one you may use if you find useful, but it's not necessary for you + // to do so. The only place where we distinguish between normal and + // exceptional is in connection analytics. If a significant + // proportion of connections terminates in an exceptional manner, + // this can trigger an alert. + // + + // 1xxx: Application ended the connection in a "usual" manner. + // E.g.: user intentionally disconnected from the server, + // gameplay ended normally, etc + k_ESteamNetConnectionEnd_App_Min = 1000, + k_ESteamNetConnectionEnd_App_Generic = k_ESteamNetConnectionEnd_App_Min, + // Use codes in this range for "normal" disconnection + k_ESteamNetConnectionEnd_App_Max = 1999, + + // 2xxx: Application ended the connection in some sort of exceptional + // or unusual manner that might indicate a bug or configuration + // issue. + // + k_ESteamNetConnectionEnd_AppException_Min = 2000, + k_ESteamNetConnectionEnd_AppException_Generic = k_ESteamNetConnectionEnd_AppException_Min, + // Use codes in this range for "unusual" disconnection + k_ESteamNetConnectionEnd_AppException_Max = 2999, + + // + // System codes. These will be returned by the system when + // the connection state is k_ESteamNetworkingConnectionState_ClosedByPeer + // or k_ESteamNetworkingConnectionState_ProblemDetectedLocally. It is + // illegal to pass a code in this range to ISteamNetworkingSockets::CloseConnection + // + + // 3xxx: Connection failed or ended because of problem with the + // local host or their connection to the Internet. + k_ESteamNetConnectionEnd_Local_Min = 3000, + + // You cannot do what you want to do because you're running in offline mode. + k_ESteamNetConnectionEnd_Local_OfflineMode = 3001, + + // We're having trouble contacting many (perhaps all) relays. + // Since it's unlikely that they all went offline at once, the best + // explanation is that we have a problem on our end. Note that we don't + // bother distinguishing between "many" and "all", because in practice, + // it takes time to detect a connection problem, and by the time + // the connection has timed out, we might not have been able to + // actively probe all of the relay clusters, even if we were able to + // contact them at one time. So this code just means that: + // + // * We don't have any recent successful communication with any relay. + // * We have evidence of recent failures to communicate with multiple relays. + k_ESteamNetConnectionEnd_Local_ManyRelayConnectivity = 3002, + + // A hosted server is having trouble talking to the relay + // that the client was using, so the problem is most likely + // on our end + k_ESteamNetConnectionEnd_Local_HostedServerPrimaryRelay = 3003, + + // We're not able to get the SDR network config. This is + // *almost* always a local issue, since the network config + // comes from the CDN, which is pretty darn reliable. + k_ESteamNetConnectionEnd_Local_NetworkConfig = 3004, + + // Steam rejected our request because we don't have rights + // to do this. + k_ESteamNetConnectionEnd_Local_Rights = 3005, + + // ICE P2P rendezvous failed because we were not able to + // determine our "public" address (e.g. reflexive address via STUN) + // + // If relay fallback is available (it always is on Steam), then + // this is only used internally and will not be returned as a high + // level failure. + k_ESteamNetConnectionEnd_Local_P2P_ICE_NoPublicAddresses = 3006, + + k_ESteamNetConnectionEnd_Local_Max = 3999, + + // 4xxx: Connection failed or ended, and it appears that the + // cause does NOT have to do with the local host or their + // connection to the Internet. It could be caused by the + // remote host, or it could be somewhere in between. + k_ESteamNetConnectionEnd_Remote_Min = 4000, + + // The connection was lost, and as far as we can tell our connection + // to relevant services (relays) has not been disrupted. This doesn't + // mean that the problem is "their fault", it just means that it doesn't + // appear that we are having network issues on our end. + k_ESteamNetConnectionEnd_Remote_Timeout = 4001, + + // Something was invalid with the cert or crypt handshake + // info you gave me, I don't understand or like your key types, + // etc. + k_ESteamNetConnectionEnd_Remote_BadCrypt = 4002, + + // You presented me with a cert that was I was able to parse + // and *technically* we could use encrypted communication. + // But there was a problem that prevents me from checking your identity + // or ensuring that somebody int he middle can't observe our communication. + // E.g.: - the CA key was missing (and I don't accept unsigned certs) + // - The CA key isn't one that I trust, + // - The cert doesn't was appropriately restricted by app, user, time, data center, etc. + // - The cert wasn't issued to you. + // - etc + k_ESteamNetConnectionEnd_Remote_BadCert = 4003, + + // We couldn't rendezvous with the remote host because + // they aren't logged into Steam + k_ESteamNetConnectionEnd_Remote_NotLoggedIn = 4004, + + // We couldn't rendezvous with the remote host because + // they aren't running the right application. + k_ESteamNetConnectionEnd_Remote_NotRunningApp = 4005, + + // Something wrong with the protocol version you are using. + // (Probably the code you are running is too old.) + k_ESteamNetConnectionEnd_Remote_BadProtocolVersion = 4006, + + // NAT punch failed failed because we never received any public + // addresses from the remote host. (But we did receive some + // signals form them.) + // + // If relay fallback is available (it always is on Steam), then + // this is only used internally and will not be returned as a high + // level failure. + k_ESteamNetConnectionEnd_Remote_P2P_ICE_NoPublicAddresses = 4007, + + k_ESteamNetConnectionEnd_Remote_Max = 4999, + + // 5xxx: Connection failed for some other reason. + k_ESteamNetConnectionEnd_Misc_Min = 5000, + + // A failure that isn't necessarily the result of a software bug, + // but that should happen rarely enough that it isn't worth specifically + // writing UI or making a localized message for. + // The debug string should contain further details. + k_ESteamNetConnectionEnd_Misc_Generic = 5001, + + // Generic failure that is most likely a software bug. + k_ESteamNetConnectionEnd_Misc_InternalError = 5002, + + // The connection to the remote host timed out, but we + // don't know if the problem is on our end, in the middle, + // or on their end. + k_ESteamNetConnectionEnd_Misc_Timeout = 5003, + + // We're having trouble talking to the relevant relay. + // We don't have enough information to say whether the + // problem is on our end or not. + k_ESteamNetConnectionEnd_Misc_RelayConnectivity = 5004, + + // There's some trouble talking to Steam. + k_ESteamNetConnectionEnd_Misc_SteamConnectivity = 5005, + + // A server in a dedicated hosting situation has no relay sessions + // active with which to talk back to a client. (It's the client's + // job to open and maintain those sessions.) + k_ESteamNetConnectionEnd_Misc_NoRelaySessionsToClient = 5006, + + // While trying to initiate a connection, we never received + // *any* communication from the peer. + //k_ESteamNetConnectionEnd_Misc_ServerNeverReplied = 5007, + + // P2P rendezvous failed in a way that we don't have more specific + // information + k_ESteamNetConnectionEnd_Misc_P2P_Rendezvous = 5008, + + // NAT punch failed, probably due to NAT/firewall configuration. + // + // If relay fallback is available (it always is on Steam), then + // this is only used internally and will not be returned as a high + // level failure. + k_ESteamNetConnectionEnd_Misc_P2P_NAT_Firewall = 5009, + + // Our peer replied that it has no record of the connection. + // This should not happen ordinarily, but can happen in a few + // exception cases: + // + // - This is an old connection, and the peer has already cleaned + // up and forgotten about it. (Perhaps it timed out and they + // closed it and were not able to communicate this to us.) + // - A bug or internal protocol error has caused us to try to + // talk to the peer about the connection before we received + // confirmation that the peer has accepted the connection. + // - The peer thinks that we have closed the connection for some + // reason (perhaps a bug), and believes that is it is + // acknowledging our closure. + k_ESteamNetConnectionEnd_Misc_PeerSentNoConnection = 5010, + + k_ESteamNetConnectionEnd_Misc_Max = 5999, + + k_ESteamNetConnectionEnd__Force32Bit = 0x7fffffff +}; + +/// Max length, in bytes (including null terminator) of the reason string +/// when a connection is closed. +const int k_cchSteamNetworkingMaxConnectionCloseReason = 128; + +/// Max length, in bytes (include null terminator) of debug description +/// of a connection. +const int k_cchSteamNetworkingMaxConnectionDescription = 128; + +/// Describe the state of a connection. +struct SteamNetConnectionInfo_t +{ + + /// Who is on the other end? Depending on the connection type and phase of the connection, we might not know + SteamNetworkingIdentity m_identityRemote; + + /// Arbitrary user data set by the local application code + int64 m_nUserData; + + /// Handle to listen socket this was connected on, or k_HSteamListenSocket_Invalid if we initiated the connection + HSteamListenSocket m_hListenSocket; + + /// Remote address. Might be all 0's if we don't know it, or if this is N/A. + /// (E.g. Basically everything except direct UDP connection.) + SteamNetworkingIPAddr m_addrRemote; + uint16 m__pad1; + + /// What data center is the remote host in? (0 if we don't know.) + SteamNetworkingPOPID m_idPOPRemote; + + /// What relay are we using to communicate with the remote host? + /// (0 if not applicable.) + SteamNetworkingPOPID m_idPOPRelay; + + /// High level state of the connection + ESteamNetworkingConnectionState m_eState; + + /// Basic cause of the connection termination or problem. + /// See ESteamNetConnectionEnd for the values used + int m_eEndReason; + + /// Human-readable, but non-localized explanation for connection + /// termination or problem. This is intended for debugging / + /// diagnostic purposes only, not to display to users. It might + /// have some details specific to the issue. + char m_szEndDebug[ k_cchSteamNetworkingMaxConnectionCloseReason ]; + + /// Debug description. This includes the internal connection ID, + /// connection type (and peer information), and any name + /// given to the connection by the app. This string is used in various + /// internal logging messages. + /// + /// Note that the connection ID *usually* matches the HSteamNetConnection + /// handle, but in certain cases with symmetric connections it might not. + char m_szConnectionDescription[ k_cchSteamNetworkingMaxConnectionDescription ]; + + /// Internal stuff, room to change API easily + uint32 reserved[64]; +}; + +/// Quick connection state, pared down to something you could call +/// more frequently without it being too big of a perf hit. +struct SteamNetworkingQuickConnectionStatus +{ + + /// High level state of the connection + ESteamNetworkingConnectionState m_eState; + + /// Current ping (ms) + int m_nPing; + + /// Connection quality measured locally, 0...1. (Percentage of packets delivered + /// end-to-end in order). + float m_flConnectionQualityLocal; + + /// Packet delivery success rate as observed from remote host + float m_flConnectionQualityRemote; + + /// Current data rates from recent history. + float m_flOutPacketsPerSec; + float m_flOutBytesPerSec; + float m_flInPacketsPerSec; + float m_flInBytesPerSec; + + /// Estimate rate that we believe that we can send data to our peer. + /// Note that this could be significantly higher than m_flOutBytesPerSec, + /// meaning the capacity of the channel is higher than you are sending data. + /// (That's OK!) + int m_nSendRateBytesPerSecond; + + /// Number of bytes pending to be sent. This is data that you have recently + /// requested to be sent but has not yet actually been put on the wire. The + /// reliable number ALSO includes data that was previously placed on the wire, + /// but has now been scheduled for re-transmission. Thus, it's possible to + /// observe m_cbPendingReliable increasing between two checks, even if no + /// calls were made to send reliable data between the checks. Data that is + /// awaiting the Nagle delay will appear in these numbers. + int m_cbPendingUnreliable; + int m_cbPendingReliable; + + /// Number of bytes of reliable data that has been placed the wire, but + /// for which we have not yet received an acknowledgment, and thus we may + /// have to re-transmit. + int m_cbSentUnackedReliable; + + /// If you asked us to send a message right now, how long would that message + /// sit in the queue before we actually started putting packets on the wire? + /// (And assuming Nagle does not cause any packets to be delayed.) + /// + /// In general, data that is sent by the application is limited by the + /// bandwidth of the channel. If you send data faster than this, it must + /// be queued and put on the wire at a metered rate. Even sending a small amount + /// of data (e.g. a few MTU, say ~3k) will require some of the data to be delayed + /// a bit. + /// + /// In general, the estimated delay will be approximately equal to + /// + /// ( m_cbPendingUnreliable+m_cbPendingReliable ) / m_nSendRateBytesPerSecond + /// + /// plus or minus one MTU. It depends on how much time has elapsed since the last + /// packet was put on the wire. For example, the queue might have *just* been emptied, + /// and the last packet placed on the wire, and we are exactly up against the send + /// rate limit. In that case we might need to wait for one packet's worth of time to + /// elapse before we can send again. On the other extreme, the queue might have data + /// in it waiting for Nagle. (This will always be less than one packet, because as soon + /// as we have a complete packet we would send it.) In that case, we might be ready + /// to send data now, and this value will be 0. + SteamNetworkingMicroseconds m_usecQueueTime; + + /// Internal stuff, room to change API easily + uint32 reserved[16]; +}; + +#pragma pack( pop ) + +// +// Network messages +// + +/// Max size of a single message that we can SEND. +/// Note: We might be wiling to receive larger messages, +/// and our peer might, too. +const int k_cbMaxSteamNetworkingSocketsMessageSizeSend = 512 * 1024; + +/// A message that has been received. +struct SteamNetworkingMessage_t +{ + + /// Message payload + void *m_pData; + + /// Size of the payload. + int m_cbSize; + + /// For messages received on connections: what connection did this come from? + /// For outgoing messages: what connection to send it to? + /// Not used when using the ISteamNetworkingMessages interface + HSteamNetConnection m_conn; + + /// For inbound messages: Who sent this to us? + /// For outbound messages on connections: not used. + /// For outbound messages on the ad-hoc ISteamNetworkingMessages interface: who should we send this to? + SteamNetworkingIdentity m_identityPeer; + + /// For messages received on connections, this is the user data + /// associated with the connection. + /// + /// This is *usually* the same as calling GetConnection() and then + /// fetching the user data associated with that connection, but for + /// the following subtle differences: + /// + /// - This user data will match the connection's user data at the time + /// is captured at the time the message is returned by the API. + /// If you subsequently change the userdata on the connection, + /// this won't be updated. + /// - This is an inline call, so it's *much* faster. + /// - You might have closed the connection, so fetching the user data + /// would not be possible. + /// + /// Not used when sending messages, + int64 m_nConnUserData; + + /// Local timestamp when the message was received + /// Not used for outbound messages. + SteamNetworkingMicroseconds m_usecTimeReceived; + + /// Message number assigned by the sender. + /// This is not used for outbound messages + int64 m_nMessageNumber; + + /// Function used to free up m_pData. This mechanism exists so that + /// apps can create messages with buffers allocated from their own + /// heap, and pass them into the library. This function will + /// usually be something like: + /// + /// free( pMsg->m_pData ); + void (*m_pfnFreeData)( SteamNetworkingMessage_t *pMsg ); + + /// Function to used to decrement the internal reference count and, if + /// it's zero, release the message. You should not set this function pointer, + /// or need to access this directly! Use the Release() function instead! + void (*m_pfnRelease)( SteamNetworkingMessage_t *pMsg ); + + /// When using ISteamNetworkingMessages, the channel number the message was received on + /// (Not used for messages sent or received on "connections") + int m_nChannel; + + /// Bitmask of k_nSteamNetworkingSend_xxx flags. + /// For received messages, only the k_nSteamNetworkingSend_Reliable bit is valid. + /// For outbound messages, all bits are relevant + int m_nFlags; + + /// Arbitrary user data that you can use when sending messages using + /// ISteamNetworkingUtils::AllocateMessage and ISteamNetworkingSockets::SendMessage. + /// (The callback you set in m_pfnFreeData might use this field.) + /// + /// Not used for received messages. + int64 m_nUserData; + + /// You MUST call this when you're done with the object, + /// to free up memory, etc. + inline void Release(); + + // For code compatibility, some accessors +#ifndef API_GEN + inline uint32 GetSize() const { return m_cbSize; } + inline const void *GetData() const { return m_pData; } + inline int GetChannel() const { return m_nChannel; } + inline HSteamNetConnection GetConnection() const { return m_conn; } + inline int64 GetConnectionUserData() const { return m_nConnUserData; } + inline SteamNetworkingMicroseconds GetTimeReceived() const { return m_usecTimeReceived; } + inline int64 GetMessageNumber() const { return m_nMessageNumber; } +#endif +protected: + // Declare destructor protected. You should never need to declare a message + // object on the stack or create one yourself. + // - You will receive a pointer to a message object when you receive messages (e.g. ISteamNetworkingSockets::ReceiveMessagesOnConnection) + // - You can allocate a message object for efficient sending using ISteamNetworkingUtils::AllocateMessage + // - Call Release() to free the object + inline ~SteamNetworkingMessage_t() {} +}; + +// +// Flags used to set options for message sending +// + +// Send the message unreliably. Can be lost. Messages *can* be larger than a +// single MTU (UDP packet), but there is no retransmission, so if any piece +// of the message is lost, the entire message will be dropped. +// +// The sending API does have some knowledge of the underlying connection, so +// if there is no NAT-traversal accomplished or there is a recognized adjustment +// happening on the connection, the packet will be batched until the connection +// is open again. +// +// Migration note: This is not exactly the same as k_EP2PSendUnreliable! You +// probably want k_ESteamNetworkingSendType_UnreliableNoNagle +const int k_nSteamNetworkingSend_Unreliable = 0; + +// Disable Nagle's algorithm. +// By default, Nagle's algorithm is applied to all outbound messages. This means +// that the message will NOT be sent immediately, in case further messages are +// sent soon after you send this, which can be grouped together. Any time there +// is enough buffered data to fill a packet, the packets will be pushed out immediately, +// but partially-full packets not be sent until the Nagle timer expires. See +// ISteamNetworkingSockets::FlushMessagesOnConnection, ISteamNetworkingMessages::FlushMessagesToUser +// +// NOTE: Don't just send every message without Nagle because you want packets to get there +// quicker. Make sure you understand the problem that Nagle is solving before disabling it. +// If you are sending small messages, often many at the same time, then it is very likely that +// it will be more efficient to leave Nagle enabled. A typical proper use of this flag is +// when you are sending what you know will be the last message sent for a while (e.g. the last +// in the server simulation tick to a particular client), and you use this flag to flush all +// messages. +const int k_nSteamNetworkingSend_NoNagle = 1; + +// Send a message unreliably, bypassing Nagle's algorithm for this message and any messages +// currently pending on the Nagle timer. This is equivalent to using k_ESteamNetworkingSend_Unreliable +// and then immediately flushing the messages using ISteamNetworkingSockets::FlushMessagesOnConnection +// or ISteamNetworkingMessages::FlushMessagesToUser. (But using this flag is more efficient since you +// only make one API call.) +const int k_nSteamNetworkingSend_UnreliableNoNagle = k_nSteamNetworkingSend_Unreliable|k_nSteamNetworkingSend_NoNagle; + +// If the message cannot be sent very soon (because the connection is still doing some initial +// handshaking, route negotiations, etc), then just drop it. This is only applicable for unreliable +// messages. Using this flag on reliable messages is invalid. +const int k_nSteamNetworkingSend_NoDelay = 4; + +// Send an unreliable message, but if it cannot be sent relatively quickly, just drop it instead of queuing it. +// This is useful for messages that are not useful if they are excessively delayed, such as voice data. +// NOTE: The Nagle algorithm is not used, and if the message is not dropped, any messages waiting on the +// Nagle timer are immediately flushed. +// +// A message will be dropped under the following circumstances: +// - the connection is not fully connected. (E.g. the "Connecting" or "FindingRoute" states) +// - there is a sufficiently large number of messages queued up already such that the current message +// will not be placed on the wire in the next ~200ms or so. +// +// If a message is dropped for these reasons, k_EResultIgnored will be returned. +const int k_nSteamNetworkingSend_UnreliableNoDelay = k_nSteamNetworkingSend_Unreliable|k_nSteamNetworkingSend_NoDelay|k_nSteamNetworkingSend_NoNagle; + +// Reliable message send. Can send up to k_cbMaxSteamNetworkingSocketsMessageSizeSend bytes in a single message. +// Does fragmentation/re-assembly of messages under the hood, as well as a sliding window for +// efficient sends of large chunks of data. +// +// The Nagle algorithm is used. See notes on k_ESteamNetworkingSendType_Unreliable for more details. +// See k_ESteamNetworkingSendType_ReliableNoNagle, ISteamNetworkingSockets::FlushMessagesOnConnection, +// ISteamNetworkingMessages::FlushMessagesToUser +// +// Migration note: This is NOT the same as k_EP2PSendReliable, it's more like k_EP2PSendReliableWithBuffering +const int k_nSteamNetworkingSend_Reliable = 8; + +// Send a message reliably, but bypass Nagle's algorithm. +// +// Migration note: This is equivalent to k_EP2PSendReliable +const int k_nSteamNetworkingSend_ReliableNoNagle = k_nSteamNetworkingSend_Reliable|k_nSteamNetworkingSend_NoNagle; + +// By default, message sending is queued, and the work of encryption and talking to +// the operating system sockets, etc is done on a service thread. This is usually a +// a performance win when messages are sent from the "main thread". However, if this +// flag is set, and data is ready to be sent immediately (either from this message +// or earlier queued data), then that work will be done in the current thread, before +// the current call returns. If data is not ready to be sent (due to rate limiting +// or Nagle), then this flag has no effect. +// +// This is an advanced flag used to control performance at a very low level. For +// most applications running on modern hardware with more than one CPU core, doing +// the work of sending on a service thread will yield the best performance. Only +// use this flag if you have a really good reason and understand what you are doing. +// Otherwise you will probably just make performance worse. +const int k_nSteamNetworkingSend_UseCurrentThread = 16; + +// When sending a message using ISteamNetworkingMessages, automatically re-establish +// a broken session, without returning k_EResultNoConnection. Without this flag, +// if you attempt to send a message, and the session was proactively closed by the +// peer, or an error occurred that disrupted communications, then you must close the +// session using ISteamNetworkingMessages::CloseSessionWithUser before attempting to +// send another message. (Or you can simply add this flag and retry.) In this way, +// the disruption cannot go unnoticed, and a more clear order of events can be +// ascertained. This is especially important when reliable messages are used, since +// if the connection is disrupted, some of those messages will not have been delivered, +// and it is in general not possible to know which. Although a +// SteamNetworkingMessagesSessionFailed_t callback will be posted when an error occurs +// to notify you that a failure has happened, callbacks are asynchronous, so it is not +// possible to tell exactly when it happened. And because the primary purpose of +// ISteamNetworkingMessages is to be like UDP, there is no notification when a peer closes +// the session. +// +// If you are not using any reliable messages (e.g. you are using ISteamNetworkingMessages +// exactly as a transport replacement for UDP-style datagrams only), you may not need to +// know when an underlying connection fails, and so you may not need this notification. +const int k_nSteamNetworkingSend_AutoRestartBrokenSession = 32; + +// +// Ping location / measurement +// + +/// Object that describes a "location" on the Internet with sufficient +/// detail that we can reasonably estimate an upper bound on the ping between +/// the two hosts, even if a direct route between the hosts is not possible, +/// and the connection must be routed through the Steam Datagram Relay network. +/// This does not contain any information that identifies the host. Indeed, +/// if two hosts are in the same building or otherwise have nearly identical +/// networking characteristics, then it's valid to use the same location +/// object for both of them. +/// +/// NOTE: This object should only be used in the same process! Do not serialize it, +/// send it over the wire, or persist it in a file or database! If you need +/// to do that, convert it to a string representation using the methods in +/// ISteamNetworkingUtils(). +struct SteamNetworkPingLocation_t +{ + uint8 m_data[ 512 ]; +}; + +/// Max possible length of a ping location, in string format. This is +/// an extremely conservative worst case value which leaves room for future +/// syntax enhancements. Most strings in practice are a lot shorter. +/// If you are storing many of these, you will very likely benefit from +/// using dynamic memory. +const int k_cchMaxSteamNetworkingPingLocationString = 1024; + +/// Special values that are returned by some functions that return a ping. +const int k_nSteamNetworkingPing_Failed = -1; +const int k_nSteamNetworkingPing_Unknown = -2; + +// +// Configuration values +// + +/// Configuration values can be applied to different types of objects. +enum ESteamNetworkingConfigScope +{ + + /// Get/set global option, or defaults. Even options that apply to more specific scopes + /// have global scope, and you may be able to just change the global defaults. If you + /// need different settings per connection (for example), then you will need to set those + /// options at the more specific scope. + k_ESteamNetworkingConfig_Global = 1, + + /// Some options are specific to a particular interface. Note that all connection + /// and listen socket settings can also be set at the interface level, and they will + /// apply to objects created through those interfaces. + k_ESteamNetworkingConfig_SocketsInterface = 2, + + /// Options for a listen socket. Listen socket options can be set at the interface layer, + /// if you have multiple listen sockets and they all use the same options. + /// You can also set connection options on a listen socket, and they set the defaults + /// for all connections accepted through this listen socket. (They will be used if you don't + /// set a connection option.) + k_ESteamNetworkingConfig_ListenSocket = 3, + + /// Options for a specific connection. + k_ESteamNetworkingConfig_Connection = 4, + + k_ESteamNetworkingConfigScope__Force32Bit = 0x7fffffff +}; + +// Different configuration values have different data types +enum ESteamNetworkingConfigDataType +{ + k_ESteamNetworkingConfig_Int32 = 1, + k_ESteamNetworkingConfig_Int64 = 2, + k_ESteamNetworkingConfig_Float = 3, + k_ESteamNetworkingConfig_String = 4, + k_ESteamNetworkingConfig_Ptr = 5, + + k_ESteamNetworkingConfigDataType__Force32Bit = 0x7fffffff +}; + +/// Configuration options +enum ESteamNetworkingConfigValue +{ + k_ESteamNetworkingConfig_Invalid = 0, + + /// [global float, 0--100] Randomly discard N pct of packets instead of sending/recv + /// This is a global option only, since it is applied at a low level + /// where we don't have much context + k_ESteamNetworkingConfig_FakePacketLoss_Send = 2, + k_ESteamNetworkingConfig_FakePacketLoss_Recv = 3, + + /// [global int32]. Delay all outbound/inbound packets by N ms + k_ESteamNetworkingConfig_FakePacketLag_Send = 4, + k_ESteamNetworkingConfig_FakePacketLag_Recv = 5, + + /// [global float] 0-100 Percentage of packets we will add additional delay + /// to (causing them to be reordered) + k_ESteamNetworkingConfig_FakePacketReorder_Send = 6, + k_ESteamNetworkingConfig_FakePacketReorder_Recv = 7, + + /// [global int32] Extra delay, in ms, to apply to reordered packets. + k_ESteamNetworkingConfig_FakePacketReorder_Time = 8, + + /// [global float 0--100] Globally duplicate some percentage of packets we send + k_ESteamNetworkingConfig_FakePacketDup_Send = 26, + k_ESteamNetworkingConfig_FakePacketDup_Recv = 27, + + /// [global int32] Amount of delay, in ms, to delay duplicated packets. + /// (We chose a random delay between 0 and this value) + k_ESteamNetworkingConfig_FakePacketDup_TimeMax = 28, + + /// [connection int32] Timeout value (in ms) to use when first connecting + k_ESteamNetworkingConfig_TimeoutInitial = 24, + + /// [connection int32] Timeout value (in ms) to use after connection is established + k_ESteamNetworkingConfig_TimeoutConnected = 25, + + /// [connection int32] Upper limit of buffered pending bytes to be sent, + /// if this is reached SendMessage will return k_EResultLimitExceeded + /// Default is 512k (524288 bytes) + k_ESteamNetworkingConfig_SendBufferSize = 9, + + /// [connection int32] Minimum/maximum send rate clamp, 0 is no limit. + /// This value will control the min/max allowed sending rate that + /// bandwidth estimation is allowed to reach. Default is 0 (no-limit) + k_ESteamNetworkingConfig_SendRateMin = 10, + k_ESteamNetworkingConfig_SendRateMax = 11, + + /// [connection int32] Nagle time, in microseconds. When SendMessage is called, if + /// the outgoing message is less than the size of the MTU, it will be + /// queued for a delay equal to the Nagle timer value. This is to ensure + /// that if the application sends several small messages rapidly, they are + /// coalesced into a single packet. + /// See historical RFC 896. Value is in microseconds. + /// Default is 5000us (5ms). + k_ESteamNetworkingConfig_NagleTime = 12, + + /// [connection int32] Don't automatically fail IP connections that don't have + /// strong auth. On clients, this means we will attempt the connection even if + /// we don't know our identity or can't get a cert. On the server, it means that + /// we won't automatically reject a connection due to a failure to authenticate. + /// (You can examine the incoming connection and decide whether to accept it.) + /// + /// This is a dev configuration value, and you should not let users modify it in + /// production. + k_ESteamNetworkingConfig_IP_AllowWithoutAuth = 23, + + /// [connection int32] Do not send UDP packets with a payload of + /// larger than N bytes. If you set this, k_ESteamNetworkingConfig_MTU_DataSize + /// is automatically adjusted + k_ESteamNetworkingConfig_MTU_PacketSize = 32, + + /// [connection int32] (read only) Maximum message size you can send that + /// will not fragment, based on k_ESteamNetworkingConfig_MTU_PacketSize + k_ESteamNetworkingConfig_MTU_DataSize = 33, + + /// [connection int32] Allow unencrypted (and unauthenticated) communication. + /// 0: Not allowed (the default) + /// 1: Allowed, but prefer encrypted + /// 2: Allowed, and preferred + /// 3: Required. (Fail the connection if the peer requires encryption.) + /// + /// This is a dev configuration value, since its purpose is to disable encryption. + /// You should not let users modify it in production. (But note that it requires + /// the peer to also modify their value in order for encryption to be disabled.) + k_ESteamNetworkingConfig_Unencrypted = 34, + + /// [global int32] 0 or 1. Some variables are "dev" variables. They are useful + /// for debugging, but should not be adjusted in production. When this flag is false (the default), + /// such variables will not be enumerated by the ISteamnetworkingUtils::GetFirstConfigValue + /// ISteamNetworkingUtils::GetConfigValueInfo functions. The idea here is that you + /// can use those functions to provide a generic mechanism to set any configuration + /// value from a console or configuration file, looking up the variable by name. Depending + /// on your game, modifying other configuration values may also have negative effects, and + /// you may wish to further lock down which variables are allowed to be modified by the user. + /// (Maybe no variables!) Or maybe you use a whitelist or blacklist approach. + /// + /// (This flag is itself a dev variable.) + k_ESteamNetworkingConfig_EnumerateDevVars = 35, + + /// [connection int32] Set this to 1 on outbound connections and listen sockets, + /// to enable "symmetric connect mode", which is useful in the following + /// common peer-to-peer use case: + /// + /// - The two peers are "equal" to each other. (Neither is clearly the "client" + /// or "server".) + /// - Either peer may initiate the connection, and indeed they may do this + /// at the same time + /// - The peers only desire a single connection to each other, and if both + /// peers initiate connections simultaneously, a protocol is needed for them + /// to resolve the conflict, so that we end up with a single connection. + /// + /// This use case is both common, and involves subtle race conditions and tricky + /// pitfalls, which is why the API has support for dealing with it. + /// + /// If an incoming connection arrives on a listen socket or via custom signaling, + /// and the application has not attempted to make a matching outbound connection + /// in symmetric mode, then the incoming connection can be accepted as usual. + /// A "matching" connection means that the relevant endpoint information matches. + /// (At the time this comment is being written, this is only supported for P2P + /// connections, which means that the peer identities must match, and the virtual + /// port must match. At a later time, symmetric mode may be supported for other + /// connection types.) + /// + /// If connections are initiated by both peers simultaneously, race conditions + /// can arise, but fortunately, most of them are handled internally and do not + /// require any special awareness from the application. However, there + /// is one important case that application code must be aware of: + /// If application code attempts an outbound connection using a ConnectXxx + /// function in symmetric mode, and a matching incoming connection is already + /// waiting on a listen socket, then instead of forming a new connection, + /// the ConnectXxx call will accept the existing incoming connection, and return + /// a connection handle to this accepted connection. + /// IMPORTANT: in this case, a SteamNetConnectionStatusChangedCallback_t + /// has probably *already* been posted to the queue for the incoming connection! + /// (Once callbacks are posted to the queue, they are not modified.) It doesn't + /// matter if the callback has not been consumed by the app. Thus, application + /// code that makes use of symmetric connections must be aware that, when processing a + /// SteamNetConnectionStatusChangedCallback_t for an incoming connection, the + /// m_hConn may refer to a new connection that the app has has not + /// seen before (the usual case), but it may also refer to a connection that + /// has already been accepted implicitly through a call to Connect()! In this + /// case, AcceptConnection() will return k_EResultDuplicateRequest. + /// + /// Only one symmetric connection to a given peer (on a given virtual port) + /// may exist at any given time. If client code attempts to create a connection, + /// and a (live) connection already exists on the local host, then either the + /// existing connection will be accepted as described above, or the attempt + /// to create a new connection will fail. Furthermore, linger mode functionality + /// is not supported on symmetric connections. + /// + /// A more complicated race condition can arise if both peers initiate a connection + /// at roughly the same time. In this situation, each peer will receive an incoming + /// connection from the other peer, when the application code has already initiated + /// an outgoing connection to that peer. The peers must resolve this conflict and + /// decide who is going to act as the "server" and who will act as the "client". + /// Typically the application does not need to be aware of this case as it is handled + /// internally. On both sides, the will observe their outbound connection being + /// "accepted", although one of them one have been converted internally to act + /// as the "server". + /// + /// In general, symmetric mode should be all-or-nothing: do not mix symmetric + /// connections with a non-symmetric connection that it might possible "match" + /// with. If you use symmetric mode on any connections, then both peers should + /// use it on all connections, and the corresponding listen socket, if any. The + /// behaviour when symmetric and ordinary connections are mixed is not defined by + /// this API, and you should not rely on it. (This advice only applies when connections + /// might possibly "match". For example, it's OK to use all symmetric mode + /// connections on one virtual port, and all ordinary, non-symmetric connections + /// on a different virtual port, as there is no potential for ambiguity.) + /// + /// When using the feature, you should set it in the following situations on + /// applicable objects: + /// + /// - When creating an outbound connection using ConnectXxx function + /// - When creating a listen socket. (Note that this will automatically cause + /// any accepted connections to inherit the flag.) + /// - When using custom signaling, before accepting an incoming connection. + /// + /// Setting the flag on listen socket and accepted connections will enable the + /// API to automatically deal with duplicate incoming connections, even if the + /// local host has not made any outbound requests. (In general, such duplicate + /// requests from a peer are ignored internally and will not be visible to the + /// application code. The previous connection must be closed or resolved first.) + k_ESteamNetworkingConfig_SymmetricConnect = 37, + + /// [connection int32] For connection types that use "virtual ports", this can be used + /// to assign a local virtual port. For incoming connections, this will always be the + /// virtual port of the listen socket (or the port requested by the remote host if custom + /// signaling is used and the connection is accepted), and cannot be changed. For + /// connections initiated locally, the local virtual port will default to the same as the + /// requested remote virtual port, if you do not specify a different option when creating + /// the connection. The local port is only relevant for symmetric connections, when + /// determining if two connections "match." In this case, if you need the local and remote + /// port to differ, you can set this value. + /// + /// You can also read back this value on listen sockets. + /// + /// This value should not be read or written in any other context. + k_ESteamNetworkingConfig_LocalVirtualPort = 38, + + // + // Callbacks + // + + // On Steam, you may use the default Steam callback dispatch mechanism. If you prefer + // to not use this dispatch mechanism (or you are not running with Steam), or you want + // to associate specific functions with specific listen sockets or connections, you can + // register them as configuration values. + // + // Note also that ISteamNetworkingUtils has some helpers to set these globally. + + /// [connection FnSteamNetConnectionStatusChanged] Callback that will be invoked + /// when the state of a connection changes. + /// + /// IMPORTANT: callbacks are dispatched to the handler that is in effect at the time + /// the event occurs, which might be in another thread. For example, immediately after + /// creating a listen socket, you may receive an incoming connection. And then immediately + /// after this, the remote host may close the connection. All of this could happen + /// before the function to create the listen socket has returned. For this reason, + /// callbacks usually must be in effect at the time of object creation. This means + /// you should set them when you are creating the listen socket or connection, or have + /// them in effect so they will be inherited at the time of object creation. + /// + /// For example: + /// + /// exterm void MyStatusChangedFunc( SteamNetConnectionStatusChangedCallback_t *info ); + /// SteamNetworkingConfigValue_t opt; opt.SetPtr( k_ESteamNetworkingConfig_Callback_ConnectionStatusChanged, MyStatusChangedFunc ); + /// SteamNetworkingIPAddr localAddress; localAddress.Clear(); + /// HSteamListenSocket hListenSock = SteamNetworkingSockets()->CreateListenSocketIP( localAddress, 1, &opt ); + /// + /// When accepting an incoming connection, there is no atomic way to switch the + /// callback. However, if the connection is DOA, AcceptConnection() will fail, and + /// you can fetch the state of the connection at that time. + /// + /// If all connections and listen sockets can use the same callback, the simplest + /// method is to set it globally before you create any listen sockets or connections. + k_ESteamNetworkingConfig_Callback_ConnectionStatusChanged = 201, + + /// [global FnSteamNetAuthenticationStatusChanged] Callback that will be invoked + /// when our auth state changes. If you use this, install the callback before creating + /// any connections or listen sockets, and don't change it. + /// See: ISteamNetworkingUtils::SetGlobalCallback_SteamNetAuthenticationStatusChanged + k_ESteamNetworkingConfig_Callback_AuthStatusChanged = 202, + + /// [global FnSteamRelayNetworkStatusChanged] Callback that will be invoked + /// when our auth state changes. If you use this, install the callback before creating + /// any connections or listen sockets, and don't change it. + /// See: ISteamNetworkingUtils::SetGlobalCallback_SteamRelayNetworkStatusChanged + k_ESteamNetworkingConfig_Callback_RelayNetworkStatusChanged = 203, + + /// [global FnSteamNetworkingMessagesSessionRequest] Callback that will be invoked + /// when a peer wants to initiate a SteamNetworkingMessagesSessionRequest. + /// See: ISteamNetworkingUtils::SetGlobalCallback_MessagesSessionRequest + k_ESteamNetworkingConfig_Callback_MessagesSessionRequest = 204, + + /// [global FnSteamNetworkingMessagesSessionFailed] Callback that will be invoked + /// when a session you have initiated, or accepted either fails to connect, or loses + /// connection in some unexpected way. + /// See: ISteamNetworkingUtils::SetGlobalCallback_MessagesSessionFailed + k_ESteamNetworkingConfig_Callback_MessagesSessionFailed = 205, + + /// [global FnSteamNetworkingSocketsCreateConnectionSignaling] Callback that will + /// be invoked when we need to create a signaling object for a connection + /// initiated locally. See: ISteamNetworkingSockets::ConnectP2P, + /// ISteamNetworkingMessages. + k_ESteamNetworkingConfig_Callback_CreateConnectionSignaling = 206, + + // + // P2P settings + // + +// /// [listen socket int32] When you create a P2P listen socket, we will automatically +// /// open up a UDP port to listen for LAN connections. LAN connections can be made +// /// without any signaling: both sides can be disconnected from the Internet. +// /// +// /// This value can be set to zero to disable the feature. +// k_ESteamNetworkingConfig_P2P_Discovery_Server_LocalPort = 101, +// +// /// [connection int32] P2P connections can perform broadcasts looking for the peer +// /// on the LAN. +// k_ESteamNetworkingConfig_P2P_Discovery_Client_RemotePort = 102, + + /// [connection string] Comma-separated list of STUN servers that can be used + /// for NAT piercing. If you set this to an empty string, NAT piercing will + /// not be attempted. Also if "public" candidates are not allowed for + /// P2P_Transport_ICE_Enable, then this is ignored. + k_ESteamNetworkingConfig_P2P_STUN_ServerList = 103, + + /// [connection int32] What types of ICE candidates to share with the peer. + /// See k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_xxx values + k_ESteamNetworkingConfig_P2P_Transport_ICE_Enable = 104, + + /// [connection int32] When selecting P2P transport, add various + /// penalties to the scores for selected transports. (Route selection + /// scores are on a scale of milliseconds. The score begins with the + /// route ping time and is then adjusted.) + k_ESteamNetworkingConfig_P2P_Transport_ICE_Penalty = 105, + k_ESteamNetworkingConfig_P2P_Transport_SDR_Penalty = 106, + //k_ESteamNetworkingConfig_P2P_Transport_LANBeacon_Penalty = 107, + + // + // Settings for SDR relayed connections + // + + /// [int32 global] If the first N pings to a port all fail, mark that port as unavailable for + /// a while, and try a different one. Some ISPs and routers may drop the first + /// packet, so setting this to 1 may greatly disrupt communications. + k_ESteamNetworkingConfig_SDRClient_ConsecutitivePingTimeoutsFailInitial = 19, + + /// [int32 global] If N consecutive pings to a port fail, after having received successful + /// communication, mark that port as unavailable for a while, and try a + /// different one. + k_ESteamNetworkingConfig_SDRClient_ConsecutitivePingTimeoutsFail = 20, + + /// [int32 global] Minimum number of lifetime pings we need to send, before we think our estimate + /// is solid. The first ping to each cluster is very often delayed because of NAT, + /// routers not having the best route, etc. Until we've sent a sufficient number + /// of pings, our estimate is often inaccurate. Keep pinging until we get this + /// many pings. + k_ESteamNetworkingConfig_SDRClient_MinPingsBeforePingAccurate = 21, + + /// [int32 global] Set all steam datagram traffic to originate from the same + /// local port. By default, we open up a new UDP socket (on a different local + /// port) for each relay. This is slightly less optimal, but it works around + /// some routers that don't implement NAT properly. If you have intermittent + /// problems talking to relays that might be NAT related, try toggling + /// this flag + k_ESteamNetworkingConfig_SDRClient_SingleSocket = 22, + + /// [global string] Code of relay cluster to force use. If not empty, we will + /// only use relays in that cluster. E.g. 'iad' + k_ESteamNetworkingConfig_SDRClient_ForceRelayCluster = 29, + + /// [connection string] For debugging, generate our own (unsigned) ticket, using + /// the specified gameserver address. Router must be configured to accept unsigned + /// tickets. + k_ESteamNetworkingConfig_SDRClient_DebugTicketAddress = 30, + + /// [global string] For debugging. Override list of relays from the config with + /// this set (maybe just one). Comma-separated list. + k_ESteamNetworkingConfig_SDRClient_ForceProxyAddr = 31, + + /// [global string] For debugging. Force ping times to clusters to be the specified + /// values. A comma separated list of = values. E.g. "sto=32,iad=100" + /// + /// This is a dev configuration value, you probably should not let users modify it + /// in production. + k_ESteamNetworkingConfig_SDRClient_FakeClusterPing = 36, + + // + // Log levels for debugging information of various subsystems. + // Higher numeric values will cause more stuff to be printed. + // See ISteamNetworkingUtils::SetDebugOutputFunction for more + // information + // + // The default for all values is k_ESteamNetworkingSocketsDebugOutputType_Warning. + // + k_ESteamNetworkingConfig_LogLevel_AckRTT = 13, // [connection int32] RTT calculations for inline pings and replies + k_ESteamNetworkingConfig_LogLevel_PacketDecode = 14, // [connection int32] log SNP packets send/recv + k_ESteamNetworkingConfig_LogLevel_Message = 15, // [connection int32] log each message send/recv + k_ESteamNetworkingConfig_LogLevel_PacketGaps = 16, // [connection int32] dropped packets + k_ESteamNetworkingConfig_LogLevel_P2PRendezvous = 17, // [connection int32] P2P rendezvous messages + k_ESteamNetworkingConfig_LogLevel_SDRRelayPings = 18, // [global int32] Ping relays + + k_ESteamNetworkingConfigValue__Force32Bit = 0x7fffffff +}; + +// Bitmask of types to share +const int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Default = -1; // Special value - use user defaults +const int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Disable = 0; // Do not do any ICE work at all or share any IP addresses with peer +const int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Relay = 1; // Relayed connection via TURN server. +const int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Private = 2; // host addresses that appear to be link-local or RFC1918 addresses +const int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Public = 4; // STUN reflexive addresses, or host address that isn't a "private" address +const int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_All = 0x7fffffff; + +/// In a few places we need to set configuration options on listen sockets and connections, and +/// have them take effect *before* the listen socket or connection really starts doing anything. +/// Creating the object and then setting the options "immediately" after creation doesn't work +/// completely, because network packets could be received between the time the object is created and +/// when the options are applied. To set options at creation time in a reliable way, they must be +/// passed to the creation function. This structure is used to pass those options. +/// +/// For the meaning of these fields, see ISteamNetworkingUtils::SetConfigValue. Basically +/// when the object is created, we just iterate over the list of options and call +/// ISteamNetworkingUtils::SetConfigValueStruct, where the scope arguments are supplied by the +/// object being created. +struct SteamNetworkingConfigValue_t +{ + /// Which option is being set + ESteamNetworkingConfigValue m_eValue; + + /// Which field below did you fill in? + ESteamNetworkingConfigDataType m_eDataType; + + /// Option value + union + { + int32_t m_int32; + int64_t m_int64; + float m_float; + const char *m_string; // Points to your '\0'-terminated buffer + void *m_ptr; + } m_val; + + // + // Shortcut helpers to set the type and value in a single call + // + inline void SetInt32( ESteamNetworkingConfigValue eVal, int32_t data ) + { + m_eValue = eVal; + m_eDataType = k_ESteamNetworkingConfig_Int32; + m_val.m_int32 = data; + } + inline void SetInt64( ESteamNetworkingConfigValue eVal, int64_t data ) + { + m_eValue = eVal; + m_eDataType = k_ESteamNetworkingConfig_Int64; + m_val.m_int64 = data; + } + inline void SetFloat( ESteamNetworkingConfigValue eVal, float data ) + { + m_eValue = eVal; + m_eDataType = k_ESteamNetworkingConfig_Float; + m_val.m_float = data; + } + inline void SetPtr( ESteamNetworkingConfigValue eVal, void *data ) + { + m_eValue = eVal; + m_eDataType = k_ESteamNetworkingConfig_Ptr; + m_val.m_ptr = data; + } + inline void SetString( ESteamNetworkingConfigValue eVal, const char *data ) // WARNING - Just saves your pointer. Does NOT make a copy of the string + { + m_eValue = eVal; + m_eDataType = k_ESteamNetworkingConfig_Ptr; + m_val.m_string = data; + } +}; + +/// Return value of ISteamNetworkintgUtils::GetConfigValue +enum ESteamNetworkingGetConfigValueResult +{ + k_ESteamNetworkingGetConfigValue_BadValue = -1, // No such configuration value + k_ESteamNetworkingGetConfigValue_BadScopeObj = -2, // Bad connection handle, etc + k_ESteamNetworkingGetConfigValue_BufferTooSmall = -3, // Couldn't fit the result in your buffer + k_ESteamNetworkingGetConfigValue_OK = 1, + k_ESteamNetworkingGetConfigValue_OKInherited = 2, // A value was not set at this level, but the effective (inherited) value was returned. + + k_ESteamNetworkingGetConfigValueResult__Force32Bit = 0x7fffffff +}; + +// +// Debug output +// + +/// Detail level for diagnostic output callback. +/// See ISteamNetworkingUtils::SetDebugOutputFunction +enum ESteamNetworkingSocketsDebugOutputType +{ + k_ESteamNetworkingSocketsDebugOutputType_None = 0, + k_ESteamNetworkingSocketsDebugOutputType_Bug = 1, // You used the API incorrectly, or an internal error happened + k_ESteamNetworkingSocketsDebugOutputType_Error = 2, // Run-time error condition that isn't the result of a bug. (E.g. we are offline, cannot bind a port, etc) + k_ESteamNetworkingSocketsDebugOutputType_Important = 3, // Nothing is wrong, but this is an important notification + k_ESteamNetworkingSocketsDebugOutputType_Warning = 4, + k_ESteamNetworkingSocketsDebugOutputType_Msg = 5, // Recommended amount + k_ESteamNetworkingSocketsDebugOutputType_Verbose = 6, // Quite a bit + k_ESteamNetworkingSocketsDebugOutputType_Debug = 7, // Practically everything + k_ESteamNetworkingSocketsDebugOutputType_Everything = 8, // Wall of text, detailed packet contents breakdown, etc + + k_ESteamNetworkingSocketsDebugOutputType__Force32Bit = 0x7fffffff +}; + +/// Setup callback for debug output, and the desired verbosity you want. +typedef void (*FSteamNetworkingSocketsDebugOutput)( ESteamNetworkingSocketsDebugOutputType nType, const char *pszMsg ); + +// +// Valve data centers +// + +/// Convert 3- or 4-character ID to 32-bit int. +inline SteamNetworkingPOPID CalculateSteamNetworkingPOPIDFromString( const char *pszCode ) +{ + // OK we made a bad decision when we decided how to pack 3-character codes into a uint32. We'd like to support + // 4-character codes, but we don't want to break compatibility. The migration path has some subtleties that make + // this nontrivial, and there are already some IDs stored in SQL. Ug, so the 4 character code "abcd" will + // be encoded with the digits like "0xddaabbcc". + // + // Also: we don't currently use 1- or 2-character codes, but if ever do in the future, let's make sure don't read + // past the end of the string and access uninitialized memory. (And if the string is empty, we always want + // to return 0 and not read bytes past the '\0'.) + // + // There is also extra paranoia to make sure the bytes are not treated as signed. + SteamNetworkingPOPID result = (uint32)(uint8)pszCode[0] << 16U; + if ( pszCode[1] ) + { + result |= ( (uint32)(uint8)pszCode[1] << 8U ); + if ( pszCode[2] ) + { + result |= (uint32)(uint8)pszCode[2] | ( (uint32)(uint8)pszCode[3] << 24U ); + } + } + return result; +} + +/// Unpack integer to string representation, including terminating '\0' +/// +/// See also SteamNetworkingPOPIDRender +template +inline void GetSteamNetworkingLocationPOPStringFromID( SteamNetworkingPOPID id, char (&szCode)[N] ) +{ + static_assert( N >= 5, "Fixed-size buffer not big enough to hold SDR POP ID" ); + szCode[0] = char( id >> 16U ); + szCode[1] = char( id >> 8U ); + szCode[2] = char( id ); + szCode[3] = char( id >> 24U ); // See comment above about deep regret and sadness + szCode[4] = 0; +} + +/// The POPID "dev" is used in non-production environments for testing. +const SteamNetworkingPOPID k_SteamDatagramPOPID_dev = ( (uint32)'d' << 16U ) | ( (uint32)'e' << 8U ) | (uint32)'v'; + +/// Utility class for printing a SteamNetworkingPOPID. +struct SteamNetworkingPOPIDRender +{ + SteamNetworkingPOPIDRender( SteamNetworkingPOPID x ) { GetSteamNetworkingLocationPOPStringFromID( x, buf ); } + inline const char *c_str() const { return buf; } +private: + char buf[ 8 ]; +}; + + +/////////////////////////////////////////////////////////////////////////////// +// +// Internal stuff +#ifndef API_GEN + +// For code compatibility +typedef SteamNetworkingMessage_t ISteamNetworkingMessage; +typedef SteamNetworkingErrMsg SteamDatagramErrMsg; + +inline void SteamNetworkingIPAddr::Clear() { memset( this, 0, sizeof(*this) ); } +inline bool SteamNetworkingIPAddr::IsIPv6AllZeros() const { const uint64 *q = (const uint64 *)m_ipv6; return q[0] == 0 && q[1] == 0; } +inline void SteamNetworkingIPAddr::SetIPv6( const uint8 *ipv6, uint16 nPort ) { memcpy( m_ipv6, ipv6, 16 ); m_port = nPort; } +inline void SteamNetworkingIPAddr::SetIPv4( uint32 nIP, uint16 nPort ) { m_ipv4.m_8zeros = 0; m_ipv4.m_0000 = 0; m_ipv4.m_ffff = 0xffff; m_ipv4.m_ip[0] = uint8(nIP>>24); m_ipv4.m_ip[1] = uint8(nIP>>16); m_ipv4.m_ip[2] = uint8(nIP>>8); m_ipv4.m_ip[3] = uint8(nIP); m_port = nPort; } +inline bool SteamNetworkingIPAddr::IsIPv4() const { return m_ipv4.m_8zeros == 0 && m_ipv4.m_0000 == 0 && m_ipv4.m_ffff == 0xffff; } +inline uint32 SteamNetworkingIPAddr::GetIPv4() const { return IsIPv4() ? ( (uint32(m_ipv4.m_ip[0])<<24) | (uint32(m_ipv4.m_ip[1])<<16) | (uint32(m_ipv4.m_ip[2])<<8) | uint32(m_ipv4.m_ip[3]) ) : 0; } +inline void SteamNetworkingIPAddr::SetIPv6LocalHost( uint16 nPort ) { m_ipv4.m_8zeros = 0; m_ipv4.m_0000 = 0; m_ipv4.m_ffff = 0; m_ipv6[12] = 0; m_ipv6[13] = 0; m_ipv6[14] = 0; m_ipv6[15] = 1; m_port = nPort; } +inline bool SteamNetworkingIPAddr::IsLocalHost() const { return ( m_ipv4.m_8zeros == 0 && m_ipv4.m_0000 == 0 && m_ipv4.m_ffff == 0 && m_ipv6[12] == 0 && m_ipv6[13] == 0 && m_ipv6[14] == 0 && m_ipv6[15] == 1 ) || ( GetIPv4() == 0x7f000001 ); } +inline bool SteamNetworkingIPAddr::operator==(const SteamNetworkingIPAddr &x ) const { return memcmp( this, &x, sizeof(SteamNetworkingIPAddr) ) == 0; } + +inline void SteamNetworkingIdentity::Clear() { memset( this, 0, sizeof(*this) ); } +inline bool SteamNetworkingIdentity::IsInvalid() const { return m_eType == k_ESteamNetworkingIdentityType_Invalid; } +inline void SteamNetworkingIdentity::SetSteamID( CSteamID steamID ) { SetSteamID64( steamID.ConvertToUint64() ); } +inline CSteamID SteamNetworkingIdentity::GetSteamID() const { return CSteamID( GetSteamID64() ); } +inline void SteamNetworkingIdentity::SetSteamID64( uint64 steamID ) { m_eType = k_ESteamNetworkingIdentityType_SteamID; m_cbSize = sizeof( m_steamID64 ); m_steamID64 = steamID; } +inline uint64 SteamNetworkingIdentity::GetSteamID64() const { return m_eType == k_ESteamNetworkingIdentityType_SteamID ? m_steamID64 : 0; } +inline void SteamNetworkingIdentity::SetIPAddr( const SteamNetworkingIPAddr &addr ) { m_eType = k_ESteamNetworkingIdentityType_IPAddress; m_cbSize = (int)sizeof(m_ip); m_ip = addr; } +inline const SteamNetworkingIPAddr *SteamNetworkingIdentity::GetIPAddr() const { return m_eType == k_ESteamNetworkingIdentityType_IPAddress ? &m_ip : NULL; } +inline void SteamNetworkingIdentity::SetLocalHost() { m_eType = k_ESteamNetworkingIdentityType_IPAddress; m_cbSize = (int)sizeof(m_ip); m_ip.SetIPv6LocalHost(); } +inline bool SteamNetworkingIdentity::IsLocalHost() const { return m_eType == k_ESteamNetworkingIdentityType_IPAddress && m_ip.IsLocalHost(); } +inline bool SteamNetworkingIdentity::SetGenericString( const char *pszString ) { size_t l = strlen( pszString ); if ( l >= sizeof(m_szGenericString) ) return false; + m_eType = k_ESteamNetworkingIdentityType_GenericString; m_cbSize = int(l+1); memcpy( m_szGenericString, pszString, m_cbSize ); return true; } +inline const char *SteamNetworkingIdentity::GetGenericString() const { return m_eType == k_ESteamNetworkingIdentityType_GenericString ? m_szGenericString : NULL; } +inline bool SteamNetworkingIdentity::SetGenericBytes( const void *data, size_t cbLen ) { if ( cbLen > sizeof(m_genericBytes) ) return false; + m_eType = k_ESteamNetworkingIdentityType_GenericBytes; m_cbSize = int(cbLen); memcpy( m_genericBytes, data, m_cbSize ); return true; } +inline const uint8 *SteamNetworkingIdentity::GetGenericBytes( int &cbLen ) const { if ( m_eType != k_ESteamNetworkingIdentityType_GenericBytes ) return NULL; + cbLen = m_cbSize; return m_genericBytes; } +inline bool SteamNetworkingIdentity::operator==(const SteamNetworkingIdentity &x ) const { return m_eType == x.m_eType && m_cbSize == x.m_cbSize && memcmp( m_genericBytes, x.m_genericBytes, m_cbSize ) == 0; } +inline void SteamNetworkingMessage_t::Release() { (*m_pfnRelease)( this ); } + +#endif // #ifndef API_GEN + +#endif // #ifndef STEAMNETWORKINGTYPES diff --git a/lib/steam/public/steam/steamps3params.h b/lib/steam/public/steam/steamps3params.h new file mode 100644 index 0000000..c7a659d --- /dev/null +++ b/lib/steam/public/steam/steamps3params.h @@ -0,0 +1,112 @@ +//====== Copyright 1996-2008, Valve Corporation, All rights reserved. ======= +// +// Purpose: +// +//============================================================================= + +#ifndef STEAMPS3PARAMS_H +#define STEAMPS3PARAMS_H +#ifdef _WIN32 +#pragma once +#endif + +//----------------------------------------------------------------------------------------------------------------------------------------------------------// +// PlayStation 3 initialization parameters +// +// The following structure must be passed to when loading steam_api_ps3.prx +//----------------------------------------------------------------------------------------------------------------------------------------------------------// +#define STEAM_PS3_PATH_MAX 1055 +#define STEAM_PS3_SERVICE_ID_MAX 32 +#define STEAM_PS3_COMMUNICATION_ID_MAX 10 +#define STEAM_PS3_COMMUNICATION_SIG_MAX 160 +#define STEAM_PS3_LANGUAGE_MAX 64 +#define STEAM_PS3_REGION_CODE_MAX 16 +#define STEAM_PS3_CURRENT_PARAMS_VER 2 +struct SteamPS3Params_t +{ + uint32 m_unVersion; // set to STEAM_PS3_CURRENT_PARAMS_VER + + void *pReserved; + uint32 m_nAppId; // set to your game's appid + + char m_rgchInstallationPath[ STEAM_PS3_PATH_MAX ]; // directory containing latest steam prx's and sdata. Can be read only (BDVD) + char m_rgchSystemCache[ STEAM_PS3_PATH_MAX ]; // temp working cache, not persistent + char m_rgchGameData[ STEAM_PS3_PATH_MAX ]; // persistent game data path for storing user data + char m_rgchNpServiceID[ STEAM_PS3_SERVICE_ID_MAX ]; + char m_rgchNpCommunicationID[ STEAM_PS3_COMMUNICATION_ID_MAX ]; + char m_rgchNpCommunicationSig[ STEAM_PS3_COMMUNICATION_SIG_MAX ]; + + // Language should be one of the following. must be zero terminated + // danish + // dutch + // english + // finnish + // french + // german + // italian + // korean + // norwegian + // polish + // portuguese + // russian + // schinese + // spanish + // swedish + // tchinese + char m_rgchSteamLanguage[ STEAM_PS3_LANGUAGE_MAX ]; + + // region codes are "SCEA", "SCEE", "SCEJ". must be zero terminated + char m_rgchRegionCode[ STEAM_PS3_REGION_CODE_MAX ]; + + // Should be SYS_TTYP3 through SYS_TTYP10, if it's 0 then Steam won't spawn a + // thread to read console input at all. Using this let's you use Steam console commands + // like: profile_on, profile_off, profile_dump, mem_stats, mem_validate. + unsigned int m_cSteamInputTTY; + + struct Ps3netInit_t + { + bool m_bNeedInit; + void *m_pMemory; + int m_nMemorySize; + int m_flags; + } m_sysNetInitInfo; + + struct Ps3jpgInit_t + { + bool m_bNeedInit; + } m_sysJpgInitInfo; + + struct Ps3pngInit_t + { + bool m_bNeedInit; + } m_sysPngInitInfo; + + struct Ps3sysutilUserInfo_t + { + bool m_bNeedInit; + } m_sysSysUtilUserInfo; + + bool m_bIncludeNewsPage; +}; + + +//----------------------------------------------------------------------------------------------------------------------------------------------------------// +// PlayStation 3 memory structure +//----------------------------------------------------------------------------------------------------------------------------------------------------------// +#define STEAMPS3_MALLOC_INUSE 0x53D04A51 +#define STEAMPS3_MALLOC_SYSTEM 0x0D102C48 +#define STEAMPS3_MALLOC_OK 0xFFD04A51 +struct SteamPS3Memory_t +{ + bool m_bSingleAllocation; // If true, Steam will request one 6MB allocation and use the returned memory for all future allocations + // If false, Steam will make call malloc for each allocation + + // required function pointers + void* (*m_pfMalloc)(size_t); + void* (*m_pfRealloc)(void *, size_t); + void (*m_pfFree)(void *); + size_t (*m_pUsable_size)(void*); +}; + + +#endif // STEAMPS3PARAMS_H diff --git a/lib/steam/public/steam/steamtypes.h b/lib/steam/public/steam/steamtypes.h new file mode 100644 index 0000000..afef409 --- /dev/null +++ b/lib/steam/public/steam/steamtypes.h @@ -0,0 +1,263 @@ +//========= Copyright © 1996-2008, Valve LLC, All rights reserved. ============ +// +// Purpose: +// +//============================================================================= + +#ifndef STEAMTYPES_H +#define STEAMTYPES_H +#ifdef _WIN32 +#pragma once +#endif + +#define S_CALLTYPE __cdecl + +// Steam-specific types. Defined here so this header file can be included in other code bases. +#ifndef WCHARTYPES_H +typedef unsigned char uint8; +#endif + +#if defined( __GNUC__ ) && !defined(POSIX) + #if __GNUC__ < 4 + #error "Steamworks requires GCC 4.X (4.2 or 4.4 have been tested)" + #endif + #define POSIX 1 +#endif + +#if defined(__x86_64__) || defined(_WIN64) || defined(__aarch64__) +#define X64BITS +#endif + +// Make sure VALVE_BIG_ENDIAN gets set on PS3, may already be set previously in Valve internal code. +#if !defined(VALVE_BIG_ENDIAN) && defined(_PS3) +#define VALVE_BIG_ENDIAN +#endif + +typedef unsigned char uint8; +typedef signed char int8; + +#if defined( _WIN32 ) + +typedef __int16 int16; +typedef unsigned __int16 uint16; +typedef __int32 int32; +typedef unsigned __int32 uint32; +typedef __int64 int64; +typedef unsigned __int64 uint64; + +typedef int64 lint64; +typedef uint64 ulint64; + +#ifdef X64BITS +typedef __int64 intp; // intp is an integer that can accomodate a pointer +typedef unsigned __int64 uintp; // (ie, sizeof(intp) >= sizeof(int) && sizeof(intp) >= sizeof(void *) +#else +typedef __int32 intp; +typedef unsigned __int32 uintp; +#endif + +#else // _WIN32 + +typedef short int16; +typedef unsigned short uint16; +typedef int int32; +typedef unsigned int uint32; +typedef long long int64; +typedef unsigned long long uint64; + +// [u]int64 are actually defined as 'long long' and gcc 64-bit +// doesn't automatically consider them the same as 'long int'. +// Changing the types for [u]int64 is complicated by +// there being many definitions, so we just +// define a 'long int' here and use it in places that would +// otherwise confuse the compiler. +typedef long int lint64; +typedef unsigned long int ulint64; + +#ifdef X64BITS +typedef long long intp; +typedef unsigned long long uintp; +#else +typedef int intp; +typedef unsigned int uintp; +#endif + +#endif // else _WIN32 + +#ifdef API_GEN +# define STEAM_CLANG_ATTR(ATTR) __attribute__((annotate( ATTR ))) +#else +# define STEAM_CLANG_ATTR(ATTR) +#endif + +#define STEAM_METHOD_DESC(DESC) STEAM_CLANG_ATTR( "desc:" #DESC ";" ) +#define STEAM_IGNOREATTR() STEAM_CLANG_ATTR( "ignore" ) +#define STEAM_OUT_STRUCT() STEAM_CLANG_ATTR( "out_struct: ;" ) +#define STEAM_OUT_STRING() STEAM_CLANG_ATTR( "out_string: ;" ) +#define STEAM_OUT_ARRAY_CALL(COUNTER,FUNCTION,PARAMS) STEAM_CLANG_ATTR( "out_array_call:" #COUNTER "," #FUNCTION "," #PARAMS ";" ) +#define STEAM_OUT_ARRAY_COUNT(COUNTER, DESC) STEAM_CLANG_ATTR( "out_array_count:" #COUNTER ";desc:" #DESC ) +#define STEAM_ARRAY_COUNT(COUNTER) STEAM_CLANG_ATTR( "array_count:" #COUNTER ";" ) +#define STEAM_ARRAY_COUNT_D(COUNTER, DESC) STEAM_CLANG_ATTR( "array_count:" #COUNTER ";desc:" #DESC ) +#define STEAM_BUFFER_COUNT(COUNTER) STEAM_CLANG_ATTR( "buffer_count:" #COUNTER ";" ) +#define STEAM_OUT_BUFFER_COUNT(COUNTER) STEAM_CLANG_ATTR( "out_buffer_count:" #COUNTER ";" ) +#define STEAM_OUT_STRING_COUNT(COUNTER) STEAM_CLANG_ATTR( "out_string_count:" #COUNTER ";" ) +#define STEAM_DESC(DESC) STEAM_CLANG_ATTR("desc:" #DESC ";") +#define STEAM_CALL_RESULT(RESULT_TYPE) STEAM_CLANG_ATTR("callresult:" #RESULT_TYPE ";") +#define STEAM_CALL_BACK(RESULT_TYPE) STEAM_CLANG_ATTR("callback:" #RESULT_TYPE ";") +#define STEAM_FLAT_NAME(NAME) STEAM_CLANG_ATTR("flat_name:" #NAME ";") + +const int k_cubSaltSize = 8; +typedef uint8 Salt_t[ k_cubSaltSize ]; + +//----------------------------------------------------------------------------- +// GID (GlobalID) stuff +// This is a globally unique identifier. It's guaranteed to be unique across all +// racks and servers for as long as a given universe persists. +//----------------------------------------------------------------------------- +// NOTE: for GID parsing/rendering and other utils, see gid.h +typedef uint64 GID_t; + +const GID_t k_GIDNil = 0xffffffffffffffffull; + +// For convenience, we define a number of types that are just new names for GIDs +typedef uint64 JobID_t; // Each Job has a unique ID +typedef GID_t TxnID_t; // Each financial transaction has a unique ID + +const GID_t k_TxnIDNil = k_GIDNil; +const GID_t k_TxnIDUnknown = 0; + +const JobID_t k_JobIDNil = 0xffffffffffffffffull; + +// this is baked into client messages and interfaces as an int, +// make sure we never break this. +typedef uint32 PackageId_t; +const PackageId_t k_uPackageIdInvalid = 0xFFFFFFFF; + +typedef uint32 BundleId_t; +const BundleId_t k_uBundleIdInvalid = 0; + +// this is baked into client messages and interfaces as an int, +// make sure we never break this. +typedef uint32 AppId_t; +const AppId_t k_uAppIdInvalid = 0x0; + +typedef uint64 AssetClassId_t; +const AssetClassId_t k_ulAssetClassIdInvalid = 0x0; + +typedef uint32 PhysicalItemId_t; +const PhysicalItemId_t k_uPhysicalItemIdInvalid = 0x0; + + +// this is baked into client messages and interfaces as an int, +// make sure we never break this. AppIds and DepotIDs also presently +// share the same namespace, but since we'd like to change that in the future +// I've defined it seperately here. +typedef uint32 DepotId_t; +const DepotId_t k_uDepotIdInvalid = 0x0; + +// RTime32 +// We use this 32 bit time representing real world time. +// It offers 1 second resolution beginning on January 1, 1970 (Unix time) +typedef uint32 RTime32; + +typedef uint32 CellID_t; +const CellID_t k_uCellIDInvalid = 0xFFFFFFFF; + +// handle to a Steam API call +typedef uint64 SteamAPICall_t; +const SteamAPICall_t k_uAPICallInvalid = 0x0; + +typedef uint32 AccountID_t; + +typedef uint32 PartnerId_t; +const PartnerId_t k_uPartnerIdInvalid = 0; + +// ID for a depot content manifest +typedef uint64 ManifestId_t; +const ManifestId_t k_uManifestIdInvalid = 0; + +// ID for cafe sites +typedef uint64 SiteId_t; +const SiteId_t k_ulSiteIdInvalid = 0; + +// Party Beacon ID +typedef uint64 PartyBeaconID_t; +const PartyBeaconID_t k_ulPartyBeaconIdInvalid = 0; + +enum ESteamIPType +{ + k_ESteamIPTypeIPv4 = 0, + k_ESteamIPTypeIPv6 = 1, +}; + +#pragma pack( push, 1 ) + +struct SteamIPAddress_t +{ + union { + + uint32 m_unIPv4; // Host order + uint8 m_rgubIPv6[16]; // Network order! Same as inaddr_in6. (0011:2233:4455:6677:8899:aabb:ccdd:eeff) + + // Internal use only + uint64 m_ipv6Qword[2]; // big endian + }; + + ESteamIPType m_eType; + + bool IsSet() const + { + if ( k_ESteamIPTypeIPv4 == m_eType ) + { + return m_unIPv4 != 0; + } + else + { + return m_ipv6Qword[0] !=0 || m_ipv6Qword[1] != 0; + } + } + + static SteamIPAddress_t IPv4Any() + { + SteamIPAddress_t ipOut; + ipOut.m_eType = k_ESteamIPTypeIPv4; + ipOut.m_unIPv4 = 0; + + return ipOut; + } + + static SteamIPAddress_t IPv6Any() + { + SteamIPAddress_t ipOut; + ipOut.m_eType = k_ESteamIPTypeIPv6; + ipOut.m_ipv6Qword[0] = 0; + ipOut.m_ipv6Qword[1] = 0; + + return ipOut; + } + + static SteamIPAddress_t IPv4Loopback() + { + SteamIPAddress_t ipOut; + ipOut.m_eType = k_ESteamIPTypeIPv4; + ipOut.m_unIPv4 = 0x7f000001; + + return ipOut; + } + + static SteamIPAddress_t IPv6Loopback() + { + SteamIPAddress_t ipOut; + ipOut.m_eType = k_ESteamIPTypeIPv6; + ipOut.m_ipv6Qword[0] = 0; + ipOut.m_ipv6Qword[1] = 0; + ipOut.m_rgubIPv6[15] = 1; + + return ipOut; + } +}; + +#pragma pack( pop ) + + +#endif // STEAMTYPES_H diff --git a/lib/steam/public/steam/steamuniverse.h b/lib/steam/public/steam/steamuniverse.h new file mode 100644 index 0000000..2318935 --- /dev/null +++ b/lib/steam/public/steam/steamuniverse.h @@ -0,0 +1,27 @@ +//========= Copyright � 1996-2008, Valve LLC, All rights reserved. ============ +// +// Purpose: +// +//============================================================================= + +#ifndef STEAMUNIVERSE_H +#define STEAMUNIVERSE_H +#ifdef _WIN32 +#pragma once +#endif + + +// Steam universes. Each universe is a self-contained Steam instance. +enum EUniverse +{ + k_EUniverseInvalid = 0, + k_EUniversePublic = 1, + k_EUniverseBeta = 2, + k_EUniverseInternal = 3, + k_EUniverseDev = 4, + // k_EUniverseRC = 5, // no such universe anymore + k_EUniverseMax +}; + + +#endif // STEAMUNIVERSE_H diff --git a/lib/steam/redistributable_bin/linux32/libsteam_api.so b/lib/steam/redistributable_bin/linux32/libsteam_api.so new file mode 100644 index 0000000000000000000000000000000000000000..bb5d4fe80816a4a11408bc7e21abae8dbf45d3db GIT binary patch literal 409801 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

-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

RSK6 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 literal 0 HcmV?d00001 diff --git a/lib/steam/redistributable_bin/osx/libsteam_api.dylib b/lib/steam/redistributable_bin/osx/libsteam_api.dylib new file mode 100644 index 0000000000000000000000000000000000000000..d89750e32989d4e20b830d2e5b55ce3ed4a4cb51 GIT binary patch literal 453312 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

oz0%6L3Dvoc-@&a5mBf#Wj9 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

N!{Z%!%-U9NPz(onji@pl&#;-3RNsIXo2X|b6 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%0Ad1-X%elPP*u)M@v@y7(3h?2}% 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 N0;3@?8Ulkg1OU_JwYUHP literal 0 HcmV?d00001 diff --git a/lib/steam/redistributable_bin/steam_api.dll b/lib/steam/redistributable_bin/steam_api.dll new file mode 100644 index 0000000000000000000000000000000000000000..8fb32b4c1c2c8527bcc404e4bc9cd06de1cd7860 GIT binary patch literal 239904 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%0DP^hY>pC@iL zRPI2YnBNrxd18KlOCJDz?X{D_%`$vx#&W+VMij8Z2F)(YHZyfl2!&EjDXAr>Gg$x1tWuU zkMBg_`nnDHN=d%bcOv*PKg(hromBtH6IL|3b}BH9*;_C-u0ro`i;u=fv))rP$Qoah zYK^lquXCd?F+Ar)XdLI{^=@WhV~ce`P0|u;5}pad(!9d8$zQ-u3sG7B6S?(-kFo7R z?0p@X8FwchqS0}Oz;+-KV6y}NG$1J9rJB=bHcj@=@dZ3Ho2Kv`{4O`|hh_*g(4#JF zO5-lbh`55Ui>ASfOBnCG3{g(VFz0bwlBrtB+T?0>&AcPmuH}w=sbwm;f5j_*lgl`n z9DG~u^Dm@yjcZ9v9Z3XtH^E~uYJ!sWsHLRywt>d?w1(YbmaD`1vt~>PNW=voqJ!cL z={tPuIy#ORrms0=rcr3OYRr{ZFQb)QTD`O>#rVW!xBBeGpX>7w>2u1g$$|4FXvTX0 z4eHq|e&-H+Dr@G)G%jym;!RCzcO5^e`1R=+^OrZJsNeHj%Uj$v$(9%H@w@Q{!)sE! zn?{+hTzi!&mS)?n`E?hcA1G{20eiSS?Ftv|G$MmmpAjy40P*|kVYV24^&sQ;Qg7oA z*w1O_2ed=)&JS**thcd}rzq15RN`7xp0^KBc+4ZssWb0b5`+770)gSMU}`Eg_%W9| z=?=d22QDr#5Q^=zr$b62A`kt`8l6I@Oha}Y-Ps8gRlBDeMF2r1zGK+gcx~@y1p#I zKTYDghXdSBv#0y&B$$?%H1Nq6wN9*yXbOyW<_fR@C>yf_P57r{e^%Kp2aC#YebD!x)s zV?66eWYvQ>MTzLxI#-0#X`<1wl~;9E@>Zb&=Heb}sFq~+zD+-nUB9lSg0T0+afzTv z2PQJ1{TzQP&fsIh=lE9g#s{2-%1iN>4R?w)MYuR>zVt>FN2Jx$@#+*^ol8i#`K$k`ko_jqg1!<8uzzTnFtJRuI@Ap(l$rpO9e7ILWqU6F?IA3qOc?i-E{gz?dV zFz(}eXaJ0Fl8Tp6aU8}<{fJ+{xKIyxoU!hxBXBMZBpNDUmB`6hn2TX+$#Wj}TcW&R zgZe%V>ZJne#r%;nRQ@>Jlby|mbP8`y4`~&L^e_!+4^9g6wk->Jz5v#X5D}=ya;SZ; zIL{pkHv!eJ@sz3WDp@B&-uH9!7~^G(BCx&aX7n#n&B;{9E=$bCpWc$WK;6IC6D?YS zh7n5qiCcir6nn0}Sc6?`xRfbDnJAPbF2d)?y=`3IiyF;cSO`{xlEOcn!j8;qSdSV{ zXb#LxW$2ppBabZ&U6Wz9EelugQ&^1}1YsQAI$!@x4V(6O5{T9u_KYTmGVSGE& zflQE!a8U+}R79u6?3ZQW>To#m6B;)?<|3C2niDqPKz|}LG$Q=3;$0_vdDg?FS3Uf& zx`v5BzGi%9g~Rwxz!AE1IlJl7(4{w0(p$L~IoEvw|p~W{}Ha z?bMZL%!5g06cc&OZjbI?lt%pQ*k8+Cn@(%S!2$LLlZ;l1DWCVt?~zOsC6moemZa+%hpS)E z16jH1eL@-Q(65_#0xQiGmFA;uel-*qok=`Dks{d#0^gC^QLNe8VcspBI1&ydhvz%3 zO!Gx6!@H$}2mC}|nmg%iFe7hwb0KyuO(HI6%WJvJc=s%$Eh}dimtQ&CA>7Cjpx`1( zm?TabjFt_MeP7pl)+OHFGSwV9CT!!9?x&gHgxq0L9dbFN<#u0}H#~z;vlq+g=io)|u=jQ`1*nx6UUw`aMNG_` zszW(dM=$T5$IloTy}(xZ^6n?0lsHiD9>crF-QJKy*zA3ii7-wSt{h~3Vjk&k1x)bD zmqiQncB=wuUOa8?*I+sr1JeQIhBlb8$RJ>fCcp%F*pKtqQ^E9U3`_^j#p-lmdheF6 z0j5tAV2avcI;z3+yN?HgX~baxP~Eu#pp}JiqLI}zc>?cN74bga>)iFhrTInffmr9; zyM9brcQdyw>+#}w6z}q#YPQsQ7~og2U5!<@WHZvpgu|l8*;OaH$|F=IXjlr*DX4lk zY$x$fZyNCE3eAZUC!^ms$~eTDKvt3^Dyr%Ei|9q0y()0LUszkfrhwk|>SSWNpx$%L zC~%Tq;1RocaV8;jLW0JXxz8HlkD1# z7N?o{M^U+*`?Q<2fmXlN#GKP~)8ZZ^;AcqCol6`NdF`H-@jJ!&ABUtvykulOv<0Vr z)cPq>kzilzjeW^xm$SI=!FRlc`{8mF*~Lr)##S7^(A{vr+>V(#s}DFsmLOvdp+-o|gqB4-c# zcUH7{zg;%(*mI8U|I24KJe5lwy?;j=$WDS5esjC;2;PEpm8Nb44TUR=$f{MNLO*Jh z0`}8Fy9d@ZMb;spT)xeyO^N&C)I=m!Ed0bsxnY?CnBq zb_+kA*W!F~qZAv_GKV9&Jw%<)w=?)Ivwe;9V{GV2yC3&UTbG9Ps6zUOb;;N1&0pYC zO`V_K*v0Ybt*bF(V9whXe}X>xO~(eidWzLeiUl# zVlGg-32)|GAiqKOw8*)uT{Y(}@oq|Q{EtiL_`I8@H~y4w^LVInC;3|co>UQbPYX2) zC~ZiJn)ECGPE{SP2a-xnoekxY#(O9hb~pYQix6NeFn4v9s!4aryhv&MzH>3;YxUmw z2buDxBnMZ@XM#eFhiJ;4Hj4J}qx*igA>T*A)aKUir$}P#_Ho{}JR0r&3hR_=Uviu-R_?Rf$TmD9PC4AgS=$G$IQ;&U+UHH1#6*uFbs&VJ*+|L{WtC@xL4Jg!y5&OM!5!)$UJbq2(4umZ8f-Y>@}yHXa?e?!l_#tQK3v$R#v zC`MsZ?E1}(LhA)_Zf7WY+k{}68ph#%syt%1-OnO~ZtpTjF@kx|{~f`6{Ji)Q`aHpG zl#NR0+z7~E&EUM>y0jZ39CFS@vt;c8f6ax7x zp>nV5zRBc$1(lm(_vy>1+-z{@b5yRFhe8nKMqobn%fgF>)ytIAeWjp+T=3DCWj%7!FC#g$Wxnq%8m*79E=66W;-m8`AO)0 zp-(ZgiKpezMol)6$fXKBZOoHap^EQ|H{Mw|DpLy$?$pu1-xdbyjh?DD(FpZJF75h}Ld5Ft%!@i3?3#435z!*ZrIe8o#2GRf zso&S@Z5$$V)fU?L8FG0F+jVq;#^pH0jBQ1%Rl!SBll&aL8(@M(z1#r~Aen*U1iAD! zHc>z?p3iNtr!;8T4cdrkHwR=JWsk_))}1Vy?H8`VQ!2UGt^{e2;BSmjCm2iX1_MI- zD9i6RUk9ac9f;Da&iJCm*u6;b9QLSxY^U-WF^1(=;{|9>04Q)h`qU!=vG_gPe{nBl z%P8&|My>{%yVN-1@NPlIRw#xV;mf0P9P2VQQy&ToIrD`dmx_$@DJNv~94Ws=GyD5M z`}<|WVfXL<5l4~GQ?e+0Tb`E^4YT3&HIMHGu7bdKXfSUT-X0dNVatyx()*rf;Uo!a z##lI0*TepEIgTymO^lI~T&8Xbu3BDLxdSF$9whiL$r^*pUFXCorev_Y4y%3(JJden zfp+8_1FidO9&xP5_hL|y;|k*wIaEA(fB(yPv!6XwNX_=4VnDm2XxHv7^MNn+Z39_# z0aQqXF$S*2U63UkoI>hOd@<85T$s$l_rGGllI3!m{p!pnpb*=y^r|{7)4t+%a(-sN z(oB1NzZ$@_3k1MQ;XJzUw6`H)+8-bpW7=&VR^X#~SV=JBvGbhGv`ZzYpX&tEF0@{X z+su2M)=Oda^RqS6E^hg4(8IKklnU+VmV0mqqk4N7|#x(%PR(nf68kwp}0l!eAFY+KmFOAW|HhQJ6V69+iAogCcIG^w#c7*l+qLbs&2#<11ASI30MxsW}13X3v~R&|9Rw7>h1zBF>`U ztM?nd=vb5QO0GDI?rpfApU`@5!*&uv-`e>8s(F{Stxt~$!d3~*m+qZP*ii9Ku!1(` z$Gp2{D+!C#(DVu zF2ciWlovWFJp5HQoxJCtrIR0wiLWJQCe{bN0hwXFnH4zJCFNjLg7MkIH!vZN>RyOx zQD~#gOGtAhp|D7y?1QI0cS0oJ{0btulQO3vk{=7{`&yEX%h!?9CX&17h-9P9d*?%f z8G2SOhDwlqWf*-scl zPYEjt>PaOPrRrk4w_@)xK&D}jO&I3VitY)*)#%X_+Jo`+cpGwfDCnHKH7+P=Bg*P+ zVLk4!o~)2&Tx?#Gcb-sKXo1-U%|(cEh;)ILWq2DVL9^_M6w!!Hb44^FYcv!)aRw)e z)ZhbPi)ch%ge&0grIzkDco^1GW|_vrLcicUaV=h6_N(Ng(a#%}9q_{01k@BXU zbK|LmS8o-}JTeW*ZfD|mq2HFxn!0Vf6{65SXlU-k5h&Cm54ra79oAwJ-Ix}W*o{g5 zw5UX0ASAJ?Yus&D7;MqyTj;T=Au-RlMZo55?3Ou$BKKpHR1m|X*bE&WtudbyfSx8B zS%f0X5{gsgofL~x(%RaV*8~2hvwb6BUqXV1l zK2Cd@UVeGeId)NS>2ghSCAY(PScWJhcNK~;_UT1t@d2q5nK+_5y*xV+W9x;eF+?*z zClE~?z>udw>paF091-%fr!Luk@@8EnsM6m{hW7ap{wKG%r#lM#nhPI&&(?#cO^ll0 z*e~yxmCd<8whQBP=Ymzy*7uTKJy>xP7eMmai|TXv%A&3BCcAc;Z8;sj!!^+{$0o2m z1b>!#@A!?(l}1ts`GK=rKS-|0=0e7vSjMDze#nKaCUxVRWd4!v&3x|`ZWDyo_wKYO zIp8XiyQZ4#B{{9(%y9*J;|^^UH1Ynl#W=C5sj*$BTS*5!$lpXu3B@Gzha2B#Qb4dq z+02a-D_0JxS$U0JR)pe$xxUx!P;jwjb~vZU=8wXezeio{X5W!jgie>^l6@T#_9IPL zm2A%GlV=m`xqaVlOZLqBWsy#}U%J0XnPEAd@A<2#+evE=*$0mW3u6txg2}!fv)#1y zV^a?*b{rxeGe_(3!Jl;rL{lbsib zEwB0Bs4ZBT%dyh;N+1`kk!F3i5Fwbn!1qef;>GAwU(}}hZJaR=6MW*`IHGJ1Y0*ZZ zjVDB>un}d}-Y-LxWW*OTD;m=TRrCaWT~s+3LlqHk|388%Xtd2ipd+|oU1&4Q)&*Y! zNiM_TFMDWMQz%G|R8XoUNUgC&(x@t7PPILx(VaV6eB*!zO?tb8Y7FdB5xF;#&X?j%&)G@)!Ct?K+X}bPiUX8 zi^v8<*^u?>z{^%US5x!_<-slsdKed(5%I3Hnkb_LG~52^*)gMY%el#Ommu zX$QfFpsy<|i*|&~2V=e;UUSk)$8K&+2GrT4j*h^6AHGPUwA5YOkctf_W3c+idd zCfr^n@ikHw)*{SObvLSVXg#85X8Y874q;H@+E<&TA*z>Xfhe`)MZ+sS`SYPX*aggA zV7zmd(VFFI4PS3w(4T$}m(GJftM!qZ#kw(Xce@?DO#I1+{bBu~v0#c=UzjfLj8gM<>+5Z8f#C%` z1}~NA*3ZhrE26}zz<&nNYn&>3#+4Z4?=_A)gWoh)q2%Ree-~FsAy-(tOR~k|W$M>n zjiLy2c2_Ueb-|x5kRm#pT>1X1yHgisJv%h@tLTJKVXl1>Wx4b3=nd`#%k#GRwueTK z*;d{AM&9nFp)_4t9x+WLk{J_U`ND8SLd?y@jfKBZ6dI=gA$-F`m;gdpq@}Xt7I>3|Ee&zvisQIyVCF~x7|10&vLbGD3Cx& z2ok-xj}CT)E)HFard(vqw%#|Yi{icXb=1x?UqihKf?d*O?(iL6d!gCt&uNqH&AJmE z3NzK05*)Gs-#f+!_%~Yjp*2j5?^<)(%(-{CeRECsD(4&&3Dc_kC&gTcmP5LUq5Ry< z`1d*>N>ss@0)w7GP~ynxvXY<4Cb3!m;JpEXck%NaP|g>Pqmt*@_Dc5ex$(fB_tLN` zehHoU)m~|_GU=RIRx#3dzyhgPC=+vO@gsQYEmue2VtaCsqq3|_)**wVN*A%xd(%pEV+X(tHIah8*H)e{zAE}wk4LS`XvZnWvsCL^_YxHt zi}y0tmf&D2SpA%M4pCH2H#{PWcoImMC0)XOG82ns_Nsa$II-xR9Yqtgc&}O9(tG1x zXkPKNe7km`x#conK`rSd!ADzHCF6Q+a5WwfK(d5FTs_m4WMAc%?*sM`f)1>068 z7p&X4s*qM@$gE;&*@IgHb8kEX*WmDKVv~lia=RAxjc9Sb7`m*_*eRN=L^FPuiWru$ zSVh6)`J#Rk+>8d);)AYsv*bzCnzXXL@%+K%uH3ve9YwZ`f?G3Jrqw1Flx3{O5jHxZgA|LA-2zuO)#%ck>>A(N z&K`7`$9I_<|Ds*dcJEeaQRp&Hd$gjYKySJ`tv14`1eqom};D#TF0;%Jd76-hg!=ti96K6 zI9|p*s`UX!w8Nw_tb^UTyz9Q7Lmb{le?|ol@_B^M@A+)zvz1R9pDsSXniSoRy5LUSq$dRI69q) zPv|LE`F0W%f_Eq336LJ`P_pACVptKkNL_XjGV?0WGmbj3|J$>yF}*Y>2d1gz5|#*; zxYX+1R58`p78or}KS@nEo)SxpM@fRXU?L01Ru0#i)swYbTcUzsCL(_{bkqU>28Mhb z^#`iktGnj{{Oa!cbjP+yS?6(5IGC)^tJeS?Ps0PNu+G#zW$4290J4=H|8@LjDvGrp zy>)r`R!_P5!%jKnN_Ug#qa6!`$zX-~iZY;6#p%AHOg&7GS(Mcw!?0}~MBf`VZ0{x~ zF$BDK3nBG3+{a&n1Z>FnHhhzb)UgC!)Xy#r6cbCpd)IsV7x4t70P!!pjjxix7cr~C zVJ$P%l9*J7Xer+^REoF39EqCdWan!x~6u)E)*1%Ao2%4MzJ)2#*5#3Lxig){L8CJ~Ro+aMQ>iI@cV{+>)t z4(nwStR{!`Jc(3E{HfEQEl>Cj;2hRt#32aG*7J$SVprhrdHZ5o;%Jdyh|$Iusli)k zQ#_gCI#vPwUPbqKB;%s{;yl?l%9XWYmV26sTe8!3Xx3`r(Ci%SLT&$L{Cw0Jj(KR} zr|r&6tVab&7cHt8jMLG)eWh2i{izmYlMv?T)6=#GM#9_r7J33hLjEj-s^w!t3q98O zFX?q`TsRQKMG+iExpz~Bae~Mu&(m#h!|(WOoLCSjHBLxmlM`15rWhxddmDRr9xip( z&0LOu%@)FvWb5fG@>I8zmih0N8v>$)WT)|sfkSn>{E+$6KR6RLkE%P7NBojCNf$~b zE}oM^=ApX1?u0}(S(8L$6W;K6aJ*pMi5miE)SdWVAhYho4+7r06T!gXx)Tz~;lz^Q zb)j25)*q#z;#tqI0Gu0C=pMr)kyy|&0 zl&%|^tSipejbzcFv`h2I>sonVQRAsJPaJuSF4pCSrzsbr0W)b zE8AS}sk@{quxwFmJb@)*-#^>e87OF8+qQOtV`KxL1WV?Qfwr{XU9E@*Qm_s}0xNQU?Ek1xf{IxW)v@YKvHi$7S?EWST zmd>S8<|#~x?PZfV9)g>gj=k3Uz6;NvgX`a8>gsMwUTExy_`Q$yG`R=c1hFU^7j+tZ z5G7Y&u{kOJ>fN*$HzOaJ+v~+^2em9Pwnd8aTBy5l&w(08gZsiIFbe(7bs?h2 zfrd+kxX5Df6Z>7Z*CZY5z&7L%E9t>H2*Sd7?9QhNf^ZS2h{hQ-jCeGImJWkfdlr0XSw`(BJfN|~cxOdnL)Q)e+`q|UJe6+>kZ!unOD*m+Qk|o4+iJ1Q7 zrKSU`Bg5cat*JhYs5|%?b1vZ%({a9pdwTgH z?&*s?%Sa@PTgKpyM+RHVT-lkU}ws)hx0hzFkz zYY{R6d<_LM3xeq@z2Z%8-?ya_)Y+|z;HQKgT<~4}1g*(I>i7t$z)C0ksu9YPU*n~^ z-~C!w=c*Zn1A&;`98B0V_lOg@dmsK{N5{;KgE*|m0vPkMBxOHC?*#Al#~Q%!b?6VQ^=7@DXS3z}s=&3~6`Ij!-b+ zFids^9G$JApg20CpjQgoyX5BYtor@|yvo`ujbWE6p~+$v6=N~`RsGA=%(LundmAog zBQi&s+r>~XeEW|n0yj7m3xI+GR&HxLN|+y;FLHECHE+ZHFoKzuZt-wpM3aMQkl0F3 zVfUw$(zo0nNe}TX1wv{xFm7{uyp6IohUZKSm)>lpgqGl}F5TA_JZ4sVHvh!oXen^k zUKyBMUl1l8$g3~7OTNd~7u+r1!|Ds@QcLg$oqkU})mY0&+#!i75{4wMCULtYE+^3- zi8=KJ{}!w4-(!_MnPgXnf_O`CJQ-=tVVyyO=I{$bqEQlf@$)p3Aohp(N{uHrov&Ah zsy#Rlxz){Z%~#@2IeAus>l|*7CE1gl&Dj^*BJFehhomuWQb%USkfCn&gJ6Ke+juV>0+*io89(oIB3mM-Lpyg1&N9!^7_$c< zxCpSf=e6wV%4;`=+(%wtS72n`8%S|u z2vV*(%vGD4R98QkWkyp?Ht9nBD^2~WGaSU=s zu8~G%@eiRh{foaEiIGDll`JbHi*}`zeBA)lfSCP4rUkdVRt+Z+U#qE@%{5enx; z@gqL+CF#vs`416hc19t8QM*d6!&_#O`Ih+LUnhG<9|qK=6__~-FIz)+YFL#%rM0CH zEoL*vcyAcWtMsLzd~2Ex62Yc}AS~>@qZAjrw^0s}wRDeDeR1FXUreDX#A&_1$d$y~ z)@1-Tv@TLwt~?MhxfYO)u$-)O#aQ|kv#nrez!NTX7Zv0OF%}FBks5@myd4@Tb(E@k z^q`VD%GGR1iIe4imjXC*%ha}Mc*3bbpOgKeQ!cMTO6;Noo>0CPbERLn4d$-y;_<;D z4cnd=53lFvw>1Mx0-PulU^R7~c7l9T^9WbWr5#GA4|wg@evblYz@EX)J~b;FPIOT4 zHxy6pm`4l`=R!Hj<8aYd{Ao^!<#73}Bl_v%(y0=>=F+JGY`{V#V$&?Ll{xHQN&dpR zi?0hDmo83YF^tpg1iZM*t1B2EbekVpY2qnqw?w8cj_y)c+I-q}ccfl7k6yL}Khn;0 zd|F1}q3vn21_h=f-kLxzaqXo;&91sMHZcEykwsm89WuWRs z_cTH6#O+YMkb+BA%6>gt+=-GMk$GotFvHiiYKZr@B^j;nCFPv-9j}!vXJ9T=<1AHw zI~QzX7gZ~v58ylDd*l0WRd=eaf!R+$q~Ji1Q{iBF^CgJmC(&zJdkCEHMS4NG60*Vk z*uRIDJ|jhb@vIQHzub><0$%pjaO%fJX_|bA>?pqKv3g^}qo=*isaDpk*#YMqb4R$+ zsbc~MkLSGTcWFrCvv`hE9M9&_;~3h0pChGpmHA4zERlVC-6gZ-m|YwRd`rfcEV+9? z@?(KqjM2f_dtss(D7`IWfz%++(g@k7RzO~5TX99|h{OA+HEfYOpK;Oma!q*i_L00? zlDLVs{fcY)P6ULc2jUjeG843QwwY34p0r>D&ZGcFk!GsEr>9&EwkwEp1_Kxai5tG& zjkuqfI<9zF=Y$RH;ceGTQj3%*YpysE`C-(J;e0qw| zh|rhRlwgxjmW@9)g~p+*{z){sTTv3|It$Mx;wQShTLv&v@`LC;Y=N(J8}FT+cY>P> zb4T8rdtTY|qUe{14;gL>ybVv05XWIvJ<{F|%~P})mfQFC%IgbUfsf5RY_IbU@7aN! zzbl3&aR16~!#qsoQZ?~v@E%?0&fAV1dtRHlV^2wBPZt+lzLKNCG^+LyZ|FgO%XI_J z4tvbK)?IWUFr-3#7s-cRU8NWZ#fQFUJ0`e!dME^4a)dJU-%_{z<>5N2TJN^ks{dee z65tas1C>ZQJ<5e1N6=6+yB3+_V7Un(=FZz|uJ+_b@_GQujy*5>PI?=k1R6O< zvboBzJ>^k?i|t?P@AS|-4J#h!7w0O`o-M9M=LOJA>jV?fj$ zjQ1BGg-f&p-4yr1wXGwukR;H`QA8Wd9AR-NHM}x|4V7Y_fUe72Y4vwEiC1SDNJCG;Z>7J-r z+FGF+yy3rU#$=jr-F$gXHgL^5hF;O09eMh|Rj$sxH;P;CL5Jnnh70doH*uoI_-w7h!36mt2!dWS|=7as)AjH7@nRMw#SvQtOY#_fQlb%3+k) z2!%NtY#-Q0cO*H~9}#cb{C3?>>2C+DN`-kM=Ww(8VmK;JbIAlo41TnfwV&2BSecT2 zy!8tDEPM1^RCRxR79Ab%58z)hG2Og+VupF$#LV7y5H}hq&Dq}DMp;K-v`Ft}CI#oy z^_g=F%ei{`u{Kw*JM11j34IF3>^}a~zG=D#`;vltAk(We!%sv{o;+!^xqEj`=yru4~&Z7wzJ^u`3~6Hx6;cN*AY+73$j+et{ zu}7%~zP#K+2U!PRt!r&lUbJc=QH=acNrTlIf$o+ z4E3Y6%uJQ1{uAN)S6v=1R@}3TcM0u^a$?=O9vBB@*4+bqv1iW`&u9l@u@cPI?!!Em zJmMYgVBBkTd-pybiwmmaJ_(@A^|}N+_=eezli}6~gz#vYxU^6g3EIg?VFY>~D9NB& zmW0<8%2ZmT)W6b;yltHhIV0z_Amb}SiYFqx@M7XJpP*XKTq`^^uB-6Z+^6FwJn;y5 zWejRsp%8_MET63WV$`L-3qbmN-o1pM-0=oSN$2qw9zhW=F#zjqgt!r&9&dfuleY77 z<7?9@EHQGCE(br48uMRzGR56z@7~y)fGx`ftn$7=AMWE}9pbZvZ$){@<))D9E^8>0 zJ0OM@ewu8?o5$z}q`x3ED{x++5t+L3qj1qbjL5LsgCG{`YR9))sQmueAW4Sn0{fj6unN^GV(9UMkLgm`Ub0{9GxjRBnLPN}*MDkId% zp}wzEIyi=&rZR!^DS2}fdB4YoCVFFXOC>kVEOYJq2s)aDZynCt!#IEjGvOuaV6t{I zCKN&nh{G%)2>#myyAt8VxGVEO3-Q{TvMl7xi_Ys7X`4_Co|LLfd@-~yG}j$9Hn23# z^DT9+MN1ES5|na5*;lum1@b%#fR`aLFNcCWH*#tGr_cdbI|t z5PWAo69quae66c50^WEB2&7dYAKAh-$Aqd|rKSszJlBc12vTz>PHH;h%4z!oDU@2; zgyxP+(`&XA!`cC5z=aLrAs5v+!zGzz{5<5b{>w&PBl5#w zXkbtBVmX}LGPiipUQc{h$OFF%MvhO(;~dfjzNh9roz{@D#_d#o^>HQX1&}x7B~XQMJV(h%h@4OhP3H;#I+;mgv3@kJ16qO z(TZ)Zn-c$^Hdlw0604$1s(2w%+b#4Pg10sp>wvc=<7;;y zc#WwWU*`RAn{>dN6QS|p-pS5o-azXzZ@m2s+JFBG+PBUWk3`$$O`9lC4CvdyXnmkF4INeM8wW&3ssm_0B&;q>{IM`}xz+I9tx=Iq>cLcsl|4Q}s` z{_sVE5beC!AbukmV}p2zvDa<_-2wRa*v~WvWgy z25W3T$OA)lPwf%zWQ2fgsoADQh&7(&YlQuLfz5}?I6z%L0n!!|FW}}-A7=+Sr2(lW(SSGJz-DP6Gtt0r$HzL1SWTLsuO*-F>jeX=dR~f1UzbQ#+b)fd z{f2l|x+3~oIKL+<3a$`?sM2G8m&}PSt=09!_MFoSH^kHBfW7Io`Br?*e8<0LzOh2u z;(MZ~PkXQuthqEaKZ|6i<9cNMBtlK4E|9j^Q`uQKU#5cOve5jS^;eUuP*TQ&SCEPQ zFL4A;R&c_w&^#D;aCNIuJeG5HykSJ+j=*pssT^)Jue7F@d9F-|)TCpkr~bI~Cos57 zRq~ogmC+TmREeFAuEqdiTk&MRni5Y=R_DZ%Q`D$36`@*5aSjZ@u~Ay44Mx%4enqZnJIm0uC7at7JiUtAT|-?K2XN2>XQHW)`8VF_=}E6Iv^Q4|G(@b72|a1A1>7}B){z>Q^&wI!+_lDz z6D;Q4Cgu-`^2qU<+Y-!Pt`_r;B^G-0wj^9c%Bgo}G&s3woVxB7@O)kxVZUn8f57Ig zW;~Z$>VZ4qh8}@%%1)nTUdF}t0kf3>=nzY@WnjUpeEWh6;Q}Wvf^Ei6pYTiNS1D6U z5pY|4Y^OGj>;4yh*W6gHvVX;#=)+-tRW>(HC%4tTbD*wuMU$s#iOc+?dnWnp;hXJg ztz6}#O!d>SM0d%q$;HQJXYtV}({eeA?SDNWIeRu3?dPSn;sAX~@ND9UVd!BZ7!Zhd z1(VMyIcg1|%t^{v)Hcm;?(pN?kVTQ);lu#kEPmCjYXaV;quD`d`8jS~7HMqlAY-P( zd&djBlfCa5j>?XjTtYh{uf-Sq`bB``D))rqz6rQNjnuy@O?sc(rvCABhMHTs%+>0B zy2XeTtWFY5?H*t#y({kXKHdc&`w&mIcDqp=xsvLrbQy8w9_7!Piqq7)k$RV*OSJl; znp_O(u5BhD&N2z9;twV_Wz8pUK-EFwH3l-}ML{sNu6<@xmNn>PYm>)voh-y@_xg+q z2EeuBOuVwdg1dS-Zi`A4%v9aFY{&1W(@CwZJ@J5hMN^9Ih&qdQG4S0-NG&Ejr{w6E zeQUfM2ok$;P>0`{V{{~0LrF{}(ffw6$I-jbJV`T6DUJKqUb0zqX*Y-u`BCVhEGko1 zQky#${d9oArAiu^&fJh}9KT^D^seRxa!frhTOrS#xmyuG8)(gxf_%L$%>OR>d$MU(dNb3 z2z$gLOgl&AD&v8cQuKjFe$${6HnAB z#pdF%<{VT7bBPUjmD_mVd0R^Fn}Q-WH!StNz82eodwZh}e-hCU2K;pWAJ*OmKC0?W z{GXXjk|8h500{;}h!PZy+GwVnGduI~VzWqLbJ|8moo_k)O zbIx;~^SnB0-9$!ng$lwm%R=5j1~Nq4eNJAf+pzDrnDQPrNc(OJJ#hp|e{3`jX+< z&2pFoIxMzkm*#x%&-J|GnRLXG^D#?uT81X6fz{04vI3@==>n-;6P7q|1>CQs`78Bo z#T&ZZMP&}&j3cQD0w*=MZ7d8pSv}08ph%{%GplTY>B8VRdGB?pPhxB+91A9S7^ex+ zDd1da-f{Q&(js@&__1z(SEJiFe(aq(tJ3!&>Oc;)YRVh|_ap%~dq)_9!w?@iEIp5yq=PeXOR~WfM4UMCrkYf%4-1rFAT)>ycs8 zcfENs9400?N2_LnFn<`244&F>0bM>&)UJdfSgkBnL1U!$U$IxDhwoupg4 z&ieXq-17CV8;KFBv`nP@w}OzFn#Dep5Ah@qugvY=wYD&j$04!Y7OBmfX%Wv&dxM@% z=S6d_<=a*dJE5y`UlBji%HPO2RfNgW);#_GvUhVwv~v5Gwif7I2TOG7o00d3V2wX( z1=Wqdo|`pjJPWr>O+s0BWxC5jbQU{#O*-k)>OQ}&{qH9 zGusxjNjs8!#KLlx(i>(KG^V$S*-Y<|zKy9p!cbxEp9?DV5mGL8cUpA+y6m}_dpvaL zk8iN6u?YxlGz9N)aE@2cuV!KAl&OM56Xi|-0#8cOMFl2mckg^5OxCs$wdsC$k3NJPDicx!#Rj1K6IN?lA#M( z7{o9wwkQ^>#U|xQ`nwWYEYc zTTD3!vrv8Q55oUMPt~C=zn5IwlYqJ+#hnwQr+~+Kcm8!U-tW&7x{2>DD9#p7(&c?d z*vR=J)CPI%aL&x{hKvVKrAb;WJYvj#wYp80rAhJ5{~*oP)Nwtyr3DBETsQjrL)kBh zoX%ti{evWu^3|6_T$jvz5Y?&Jl03ut(>BhJ&~;ny1H<%>avIrGSGw8(ZLbCra&bVu z`fDE0v0$PIbGD=aox$i5cXTxF|4r1_QNM_0pvq zmlVW{Tg(!af>ewV#bY?bnIA96z3Q`>ryI zWE8}7>}5xEZc%GS%iQUtEd*1|qgDS<=;vu-2jq;o-*D;vvW&}g(a60;TU^TloEA=XE|gp&LK1*00ZsFGI}mRGH&sG2~bUpx7jnmjamaA2wGDBRJy;sYu;A{8)$ zm=+rM3)pCUbhUa7HMYo)<(>7=>E1NtU`4O#6$x`nBni_TJ~d}S?vCJM;jA|1Jv-;u zH#}2J+^^Pia}Ks<2hYnv6Ef22!~pcl57uN|`QCb$>-Sf7@zlXn=aqe-T#?VXHcw&-#?7caBy>Svni4b5 z@IG64l#uA*#zUI^?n}|%qWO8F%3)U0BVv1tc2-`XuYAw)V*~!myfv43e-T2$ZHbSz zmZZc--`Wi_V%88Jc~U~D5#pmu-v6xl2-M2jk4`VY8P8I}f(DB|rzD+i_W{x^gb z|5e)OCT{*C=bt}R5S*C&qN-;B$pZU=mdh8QzN58l^eR6ex{IBVR(Bm&tM2+_C|UnN z2EnRzHnYe2HQKdyh3HniUVh>MP%}&0#%^-c;BX%V85mgf<7Q%xQzVO1<7QorF{xSA z%=Oo<=Ejej47;pY_8okn(0M88MO`Srwl@8R9XP;OF-m;^oQTd^=L2BnU^WaBt##YE z^2Swm(<3z!R)2FjdK4}4N1kB$w6miOF`JiZ8CK&pQ8%p6q|ZuKRW@PnoRgSwU$uXo{%cLs#BToUSFbKUgcx(-M?)Jlb zMnsIG%Xd64was}T2LdM#3iLU7eZVPE-?S?H349Tz@u3hsq4R2A6uc0*N{->Hl0i@M zi`FhCbh|#KWGtb+m7>2C@U1S|%t1M=l*KCsGz13|`bd~mfsB>h7yOsEK(_^#>oeDI zKLu8}#;C}Pt9;0*@j5km*;DGKjo?>dJ7**-52o@)+KQRC8O&Qc-`;n~r{5waPdOHt z52p@Yx$koHr~~+#gZffo>4pVd5%|Tv4x_XrW0p&7a?CFoSzFqI1IUl+jG3i_QD@}K z9tW4#vN|sL2T?q#uU6lzl0zoXKN!qKlG#5h3*-i3%R(cIo@WIAs(Y>Bjbv~`xi zBUWfV!Rx)aR^7`{D~E=*!=G#{VAQ#k9b2oyv{9`tm`g@M^zUe;0|;Txe|jC5w0ed> z_4V^Ds77wxCy>1rbZm*fF8?MleM|t0o<9*MIfw<+{lTDdRkX1iJ}0W#w>Q!{;Ndz% z@LL<=mqt!HLu2aHHPSWB<_F&9B(zhD$g^9~J#U?2Hucv~#;D4DGMAPIg~~UXe{-{N z3_^VpWpR=;0UOj3Ko!ss)iVo0gyj2FE#2=RGhIInx6Ymofm4d4mNif!v~?B_XC~LV z)yZCJ-1-t2)~2o@thNB|R9ci#hPYfgXe?6fP`T+w&6?(cyRPtGF4XwiFJO=HmeAHGvOeACf?&jj zNdpzj*^H=l-cR;`6TO{ADOZmc<@P%Db$MnZ2HA)#)@M@EmO9lbVBucyfxZ{KU1sEI z%D!{{nCTcGA+=HO?v<6q&Vfd^CowFOc=TMc0{}wNt5_Ze3YJ)qpuKvqTCLTSgp`Aw zC0|Qe3}? zo{c4Bj8-9r78|$+QhIAkYmBpGTLHb3HjIF&CVuxqn z!|-CYc`wL4i~I2Q+*kU&zs$j+ZpA53+`uj@Mb4~MNADIWbh**fd_h_)7Jin-x^$%s z9~U#&`vK%k`tEw{cPyi9a1Q|3t-GBaaIAh5%|bzlYSkd0uXs*cj4jCPAI04|EcKhe z(uXQ+b4;uY)g#nm-{}7lkqUFLqC;QeM_s3;gWL24zSUC^wXg4TAg@Ts^&rIsCIk_? z7ZSFy|H)XW|H&tflTSSH#AB<`$l_W|1V7WcAbeGE@I-4?`Hop%4o;c1Cg_{B9#;yW zoURNf+;($JG`DM>SUx!rePl>DK3)aOweD_N{7Gw~W$~#6Ez5>l?o9sDDF!mQ4&@_8 zKH|P%O>jj-6?>aRn<1idgLCCpcv(ah1#!8O6D&kv;cdQ+I$Q5d;sA6?B-dwNz9~0M z_Fp;^_wiGse$Qt!__UK2F5O`UML)Vm{WCqNH&TSmY5Gdu$Tn;FvbAA>gdn*JCXD;7x2KcvT<^E}SP<2(d1R#!lP)T*!kAG4@%{0C&O3G4&AAr0-3Al>#S4%Ih8dx(wVu5UE+3_SHp`~q(8eye)h;` zm%}U$WUszne|}$!a!@vfDk(tnez)-7u{Y%X6%LU*Tf@v36oE~;15w}>~ zq_CT13m549%3n5h0sDI~JNZ;}4nl-s-8#;C!?~qGJeaWDw^u}+X*Fv;JujRd!`a+! zea~$_{WGj3M;ltcx^TWD3^!p!ajujz>~B;>kjtl>o33%o9VvaO`kWkJb|+yEeqN4c zQitK%;vz8GweCpYP-MF+a)7|f?x-tzEzUAhg=9#lb*$pFj;%;Ea$Kr6svVAL4)z>K zu(s}{T@Y#I12*2MQx`yRfKG~%nI5)pq_Zf}RkUen22-(SFO*>pSFf{JboH>nY*Vb; zD?LS-QVW>B49qXRsWmQ_;$Xqz+dGTuVq3TJ9qGG}XvutC^Ph?&TAH~^m>7CljI8G} zyB<&tx(EJB4`G`HFO5)XB^_5gwXB8lYA-9_V(mWmRhCm{VmbW<-IwpEsbl_+W24d7 zhp-hH>deu>T2@p82gC(eS0}&NvUo`K*D@d>uQ)~fs>QUEyR|4`am^wK^5VXwWK=)X z33;Ng;B7X60W?nej+vuFPa(rJ8vBH_M%2_L{@-?qsmBS|Tru}}2VWLv4jg-HYJafI zc-!bP@QDI5{8Y+NZSkpjBDU#4^Sc6;vA;9ai&Y5c2-S*W>8a~f^>*1LvgK^kx!aI3 zXo{}i*hTgJlffloV1g4b!>el_OxHdr-0|cUnrq)*+MWSkyG|vR>A^ANFN)1C%@xex z*vVKX0gX9)o&&n5sg*I?|N5q!TySs7Kx3#?SOz935!Rg5DfawQ*7`_$I_67+gL5=M z{M*-M2J)7h^)^S1s&AXs_W9-x}0&Bz7um_#T5$A{WH@a zCb66Gn#Wvd>%*gO&^z?`Z(Jp(WU5zB-j?dsrbE?a9p*-%DW}gWm?(8PcxFGC6Iz|K zz7RZP)=j~2v#tz!mlDLA)$OnU_OLHJ#@|V6c=UDgZ3R)L#365@QE7trQ{^IQ5pP)yWPW!#CjtIrc z!hROLM4yvh;e#r4k+$gl4|#)$FeqLLg->!wvJteA-N>%PsPyDzm8heTo z;ccR=b#bVuH74$wkwBdvK7Mg%RCwDTcy$ENtWG{{^+@so;TinU3@c)@)vIcnI!aT` zZB~y$KQnxoCgHoCoTcsYL6;~&0_f!G?>sQaUmC~8GUjfrR&)PBudT!)J_&|l`(0t? zvVp4h2yuf2$$B?|9j{O` zHZcD3%)HmFuWDFBtI}79X9D=MATDVpelUDk4Q)`x}AKb554&Qe9c3t*CnG>cJ+yU2J{h zaJRo@PT-NRj{EuQPRCsJ4@Wa+gm-f1Nah^svgYKB5% zyE5gK{^AAT6wBDWFf#bb>B-%aT!@qwrc~w8;Q~g5=QGOb8t9xx7NNUZ;DzVbwMBKc z>Oapx)b|Z~9Q}reg%f>2;H@DV`$isu{FekAr6*h6SD>vR4EB#>h5+(;0c@*#W{YzU z+6JMIhncRM4i$3^9!6T)&@0xgpy%uGEay%ZI&kYyzV{`mLBu)z4AbanY08vKPldm0 z&C%B856K;i$=}XqNiG&!lBGCwZZq@!U2F3@t=z>G{`Pf$io{*5PCWbd)=+({`4pw9 z>-eQywczS!E`X@DK0&X6uIz7h$!D|&ShWay-N?%oB%cDEkaIZCY7thX@|Ea(CB`e> zXPXvFGu-D#hZl{W;A?HlKSkZ9Z;LBfC@IB~LTxQgqXk@McFPa-1KQ|o;%0r|KVsjN zbmJAY$B9--UHH1>=^#(se^rPG1YozFQ_5 zx~Nr`RQ-G!vw9|`b{iAVu2h%5EkfN>Du-r;Unp+*gqtVko!3-}>mlJ8)xgYOUCfx( zzu>eLy$ z;U$67O*VbF5sl1D)%G5hB8fw#*BdYTQV6F#r#9WCHC}OF@wF;-;8jX>WmByKuMC(n zC8JeU{0@XgHP99M$v~!P3OYlNKnKxv5t_hO4uis^iTe6rv);y!{|0GfVjUM!r@^{I;|j95ZwMBKY*{ ztDs<3t6b_is%I$kUmADsDp57^M#^atvn6KN|WX|`;*HNW3e;J5c>QX9`|i zqW4RU;tVGvdN0OXNU6a}i5JN}bG9H!VR%ge4vAlq1lgAO+3DSjpC$F=-ClXH3|-1t zxCn6I7@3BR?ZL}i=YTkZrQT=82x>WF(+NRJYsa-d;2@i4{`d)Vz0b^X`gg5+A0&gl z1&)y`40Yz7hM^;3m-VVXI6k7wNb3;e2eM)h=26wE2E!G*&V?0I>>8Ii znf+6(dQDDEC<6ANwrH(owypC~Pq+^?Aq0>8>JpUZ@vDZ$`e5tgf~G}f6GCT}@0q#G zC&oi~%|#0NwW*ap(`B@C_sPJKha3Pa5g0D+Pe}#a(-lKw$oA*l`3{={qG?4(vd|4i zeq5ZiBnzvV_{V4Qm{Qe+)53BR3 zWo)i1EdUdBr9uxC8~v69zE=H=7VGQk>WuEX(*3(nl7lQ_Lj+!;>z7rlNjqfo3C1Dj zc(o{Z)Ya7Tt8RanoU!jJSHJmwD4#zs=?YTAT!D}I*jX~N;A}94>LG?>gZ1)?5{-L#FN{_|der)Ve zF+WqUFYOLSKTqV+emg*xPdSVOQ%uVm5ZCrLl__0cz z8aHBPjp%|vWoF1Da`jVn+G1KNOM9D2RaWTe;h~5%RDoy-MAvd zYgjylhXb2KfovXnB15f^Ra~FmP;92>q&B7M_`r)ar1sh`(ztrfev!6SoEHp5fBZUN zYx8sjE?nIw2hcU^AjY+3xCX85l1AKO?Iyd33Y&8X8OJx~6I7MTT+ zq1@oa$dDIJtD%B>{gI*Z8^2hqe$NR9;xsE&7fs+6e8rn7uN?mhno5?}s!Tls35M(4 z9LH*Wtg8EM>gZOJ>Y-zH(>3u`^d4Gskz02;K;XFyeFwMR`qstoiKwQt@?EW^ZB%yi zwZN9f?-ZH8?~R>gVsH9zNM5-QXBq^cA^gI!?JdjRMZ>kZm3_%&Z5#!$J66w2wfuhl zX##Ozw_O#rm4F+0g7wlwF!B$&@xLW)w z48QU=^}QhMEZsqrzB8AzNC4s++btVtYd6Tck`FjoPqW!h+sN9h1g=#sPZfU+T15!D z(G(q)mZrqFfAEgjLc<36owG@Lw{nQ0SE>zl;rIxx5hE>D z;2@v`uFBh*;@{_ex?Bi4saex)X5Py^t=5x|Pv5Xme*^b%=+!Jau*-^`R`{ZQ4(U zW0gMXOK^r!SuBNU8ih3Px7+zG-?4NlJUDdVQ)S zxMo%shpw!y#*wAy9_X`H>%m-Hr=6A8mk-p~@~Y0*t%pRYqlM~E zcSY_#D!NrmPo>`DKH>Vlm3&G>7-|VCraq-exl~_s>x}#5l0;|km|Z5;O1BydHt@DG z0-alL+^_ose_CG0RjZ>f0hni`gfb>j89BmM@l=jI!#Qr7C^?erHmGgGiNE4eis|9B z;q{w}D~$Ueq?U_>q^?#ElEb+FJ3PM>=1*x?wQAH!-?!iXnYZLKQh~aKM<~MNGkScY z+gl&VS{{4kQJx^tV)stpw9x|6S)z^_ERg2B)#^g2qFhbmht8mFz7fEUHx>#}mnV6c zFOPhbZyoMPmnc3`Vd$w^)&C;tDLJ8Bb>PG@G2=HK4=$2wJ;p2pWE>E^w&?&cz~bR(W#c+z&$MV4T>68JO7C z#qpidES0VPAzZ}B&2C5H4Rof_ov2n$R*C4~{a$ueqVFHd`jrzW zL!&O;!*$$;{|e(_DPb8`W^|7m(&kK?+vqjLF~Q%A(!gD3eN1(-bp2D zzreI!J$naOrujR3g9=G*3}(+32q6a}q@AQj9~P?vF{X@eyNo9+J&1fQk=!|jTmA^6 zCh~-Ya>JGB%C6?`$P>MaJ}r^J{QHq@!$`n1rYYZw_m(fU5qS?RjvLI#aSvKB&C)Z- z)iy|$6tNg>{*ffM5gL#%Z%;`_Vh{3H)di$QfsTV{fBNe@Op~ob_0A;jqd|>ESatRI@ z6F6OC6LtNX@-els; z^5|y$TUy?xzY#@CrYqVksa8DgYHNH*d2alXY*Sz42|c%jT68a;6SZP)$8;$j|B?JM z!Td;6ONy0P#S%9`prvNG0?wxG+c4TJfMb6D#Qbg($l3F|el_{OsTWw4JPXGrf?Z!t0=4}?~q6H3P z(EG2=vXX&#j&Vj*?>RF&@`S(^JtZsVW}N_k58?GlB%&EHi{pQoT)xYK^pYsVkK2YW zLeUg-e@^HlT{U;1jCg5GrWqHNdLytjtwn7di^gR6;nP+#pAK?%8#;xPQ!b5t(Wc8~ zl(B`*Lz5HL>h?L!8HT}If&!3J>`VfE;Y$VH2uu%`5 zU|x}(|5a<|jgMlpz8&2r%k}R8O9r7Fru;Ri{I{VG3mbiC1%3-8V2+rDIU-N!P>&XX zB2P#ncO4sR*wIAKepIh2(4fW*3rmNLcj9KIaU=!Ehq46)L_U~OVZ1&J#Cdj5N{yPV z$h}qo>eCTS$A3uelMH=Iv2t?iqcOp(Tm)O-TsV$>1eTKN1b54EAs582%W*Y$?z)V? zxy$hf*ZkdibN$|DE^GcCzcTHz7t>L|Wq?-Ch2!|AEUN01ju<){_w?rPP%P$de(*|+ zgsq%d(yB_QEDtG-HK=`V9Cxn2$I#(gxsZ>Ov-LMLWeqOz9~_a|t^R+@!!{j2n5f6R zSYfVFQPQUz20mS>_`z{Iez1-lywm@*tWQFG|BTf_40*x9NgbavaYMRJr}qIU28W@8 zP2=8xp;(=^qJR&h?yo+g=Z&6Dl%8rNp9=OVbCCF0Horu>|3n^A9qyNvuk-!w9hT6@ zThrxqJZ~XGKEK&RWc2IP#)^E)CXyWzVNg~CZ7Vjfg&&YiW~HJ!%O-)Zn`iYd+AO%9 zK;8q<%`ywphcQ$g)A7^M*xt5*)R_BOf_S&_WC5QW&NTmFZ}WayJG<#=`4Fomh_}>` z*dblmEKoN$5x$b3U)D)IQ#a*pl8a#E_}XBdf2YLoj!9`^cz0UMz$OngS~J}D9eYA1 zGoy>CbvEg&RtDZHIC(XSI$`LB{ks0pk2n-Aqkb#aA8m|DwIPZLq|S98d4tXq(bz)X;g%$hVK?t=ajl937gGf1Y@MO8MEk!*h+$@C#-|16U6 zKA@?V6r$1F*MhSkXy7SeO{_`bn|m~F(74;%bf?BQ@*>+;U}obRIk+-^h0$ z#nfJ&E~g>&GOu7D$(z*2Xrdt9igW!2Lz6A1V;{S3QUt=$L}LYdQyf(bD$ujJo9!9d zW_R>ujW7PbjwY_7D!)FvJ_mP5%PHI;M}~zvqy;pi^t<2={r-334r}rKRoo$67{(oP z4*jjTL-HD%^+_kVL)tqXcSr^scj&x-4tI!(!rzNK-Wq{B1X8Er4gr{T%GkKWp5am7 z*E1}*!`l>>8uT72)u_$dPu}L|HU7|hibeK@PP;m4&-@iA{rBi`Kjq4s8lY$vDzz#vViE_w*Pr zG`~U?X$mPxR_Gv;=b!MDhrhKRER{5x^i~Pv+;Hq& zK~(yU-Y*1E9SO(ASRP8e`ob?XeJj?Jthy?(gcc7(?lh-qP`E zwdj7>8})R+-|lVx7oeKdv{r1r(>h2yvoEo`%sd(z>PVfr>ucnC?A<_)z+S)5?>WYa z8~m?@4p#{;>+Ol+=#URXq*n^Y(iZixpBQKV>|v~s{HXaE+d}NEYo1|T96-Dt4+_I;Pc;( z9GOi2^NyYW?q^a`*K})ejP0HD*eZq>mW)kG{f(1x2n7Mq->0S`-Xv3DjRH{^zWVnZ zds?X7aC;dFNEs~!SNsE>VL~c$d=%8}sQQeLEI9a|mVpyJn+|m1%H@L9TVZ3F<5oW< zKY6RS$WP|#NBKckQlmc5*LI0mab9>^kfP|;-x$n~HQ&K=wThR*G_vFnXMM~GgdBpo zl7A{NE2Tgynz`!4HhPQ_BV5#L@&@8rp($$h7Lgu~0-Q*F1HO7hgy`Ul_K4oz*jS0} zULNXQ`D&KVdk%RKZ0Ii}Pv=Qwi&jEhWo*G9EHC&!=&_=*O`Su!&a>sY2A2=I0X+WY z1&$4W7_Pwb^-wMhSWIMQEuh1gxsB$vMqO;Zg>vhZ54Yd9QE??c(sT+NuIwGdvMuqQg39{zIr}B^(aNYvDB6w!x#1PE?c4Ma)d*Mi-tt`W> z4W`V@t=nN14^&Jq4#oqny1MIBf1j~O{_TsR&a?wU)!Ed!V~F%tK)-Nx9`AOu37BEyw6}R z7wJQ$pl(PPQd6!JlK(UTgQYu#Ig~$hmWXtaWz3>Ly|KXOhht==TwtXX_%r9*DMeOF zkw3G_PRX)TCiycL*(pb#(DfAiGpp^Ccde8Xf9Cae$}THqhCg$)o${iUGRvQNhn?~> zE2YAp`87M`->sDS{>-4A(qg4l`7`gbQ`T82i~N}z?37z1B_+|a#Ve@5`ZKjGi-FIx zin#rmm)S)wu~Iz#%o%pd6f337pLw&Ll5eG4=FhyvPC3cmPB+A?Tf#H0=kEK(Z)_x< z5l^`MojM>uPtb>A^A1WZBxrX%`u+XG%BEH)y-mAVzk%#p^(4q8M#NhB%9WqT838;s zf~0v|Esw48c)y(20avx!z+3W}M|o4LX(0K`kK}QMe%vCD*YOy;|9^OtDi`a*R$I8A z<}LE_{Mh}%$CJ7*)}JS_N#(6rzlkVXT0+r<>aXWb4LvT8V&tKY=*OGnQR&B<<*}E? z$jj4H6A>91YDKiFM5?OP#K|oF#goM8zgR(3cnp*t(3&d8Z&)#kRa&Yp7D%>W9WN)h zXjLmMSpNZij!hz*y~p391?$(^j|kSkWDC|O$R`BrA6^e~I0{Sm=B_MT=Bz(dt2^l_ z>Yse7?8?$I=T2nK#xW8ut3kVX{=g6;!9adc#OicLOhP7E9YI=wAiW4peJtn;57IS* zI7NByvNFPrTJVa$d&~2f(G|OOUs~*Z@t-VoZz)tQ#kEdZphArW%Nv7e&@@^OINioc zvnuw0I6KF<`6{AD7aM~$+P*NhpbzgFF9GBwgURUR*t)Xl$~Q^uTF~uq;3NN$;Aj*F#7rpCRmMU+T&u=N zIqh#JP_X)Dk?i#y8cGtS&rvM4700?mXQ z2GKJe(q3(_1;V@ehAA^I+a_o%bcs3&7L2;}8)rj7APCqVJ1@bw6jDCDx1gd2n2ui6H^U&f$!zmz#?8T39Z{lR`HvcZYp zf_Zgn-*nbZV;+QY=$y!h_+1khPk4oLhQ`$ej+&l2T;62V1qPCZ1)?VC))jE1N2vfY zBB2Y~*u=K!?|VKN(Z++KXmtw3 zs7)usz^8Gs-8RZjK(I#r=O+SD-5plx7b2MgwhH59{DZ7I^(x@5H{KTeYkYW*u)ppU z`)evssr24Y)kc^4BCU7CT4aqx7xx+c;?Od*&;L>I<^e)ahbE%BD28Y95*)*e^xat8 zN4AW9^Z!ai-A3mRaBg|*c>KMr*ku`(4fQCUQt7GMROIH|L{XN(1vV=+OMgh79}{%~rni^bIF8 zwY;sgf8dh@xm9A^&|OJ&k*Lw5D+wiQA`lp?cB!sCK0DoAWru z&$CbQDW5&XEt~f&W4@<|gZy5*d^BBN`!-_D*e5!gP9V_o_sAi7=NXR{HQX#t75`zW*hGRJw)?@^HRne+J*C3Ab)iUxgZ1Y^36U-x7Us$K*e^bW+8yJ z0zp_7{oR;GX%xa9!J210_Z5vrpxPY9jL%!Y7A(&u64nrT+5AOXl@-PQa~~EoZyCf# zv(yE=TD$Udy$V#)@<^r5>!fK5&HM%Hp!u>?Q)5kg706fHewb>^{L=q}H-Tn>RlPY* zh0^t?E6X&LhrI|y4$T;r-wR!9qrw`tLoJtmL2P0U7;W4YUHqmozX*qe-Pq%D@2W&M zuvoAcT6T-~p$`cE(2gzTKkkjp<~(oxf)3%L@O#^G=le#1CO=yjO}uCz?k14q{D~Kb z51ee#rVIgB%bg#$@Cinws(PC1(lg%Y9bvrCHWyR{OZ<)dypcF_9&n+PkM4bpnc#ed zc=k5!A$_4)gzlOS+_GlGr)T+8z9Uw7Xz9{GCMGdtSXfPsRG=DfjAtLmP~e z6;-fq-2CVz5d1okz)LH4F|6$bKe z%6##3uv8EzJoIAZJR0qq+D8ERZ#Ab>oR!wS6OfmE~ zr)Zn6!4OFb8oDum_nPkwgL1?S2HzhsgVyja?ftulm(gL3seF$$s_6J=tvg!lF+=Im zm3p7eh;+CJ_8!WQEbzDj`8PB~&tRGxq73we%y(+2yFWA3$Oo{WWU#o&`P)YOz~_$k z{(~b&TO^Y?f8SpiEtp25hVs37E;-UrjuKhmA%QH|CLW!PwMkTi9g7$&SR>D~z>KG5 zj$+N#@RP7jINSTImjOnO=Y&S-ar;nbArd=(V+2Bsui0Buvw9f{__3Hw+0s}{3YNxq z4^|uT>YCMJ31sVl;d~ae2`9EiK*S}{03o7|ht^am_cgwR(k@~T)1&bZ(m;71>PvRK{ zE^0rb0%MUe-iTO!k!(~e0~s}|CRW`B$z^m3%#E|3~$K;yw$^<`0b*#FasTx*8s+J$GmGh!>k#sO|n6V>io<#$7Uo#me5dvV1DAq`!KiR=ht` zxpZM5=1>PIVv)UOMrmcAC{XJFgkR|!fg_;Q#3MwJ+CgsHsm-^}(<>%XFVj(xS5v+h zhdc9{I=oHu^aK&@R5+C+G+&xd*sYp6sEmkrDMnzTkdG-Qq?EBZj@qqTnDvWhuE*kC z;`D7@5e9g*svX8B9>T6EhE(Q^gy%<|YTWL4n|{Wav})4hJW$(~tk4RfOusEf#NQSk z5Iky=^)^K0Ar7Zn^>yC4<8#eW4Lr&+Z7Zv<&#*2Wt8DgQYsK`E`)1uI_HG{B$62gd zo;Tf9BpQ675P@^drVJPg?4hwQxZ=qp4KsQq8{%v?dD`mUG`w= zLS3=E|Mk#k@wfud5PxWF$Fw)x6^S6!3Etk?1O;8e(S%N8s0ci>xs8b#r^^17&*SB$ zJ}`~3begwCMw5pNxy}*XA8DL~xhTkb+D2*;er2T18SH{6tn7nGf;bWWhh~Kc+arX_ zHk@{-e?%xP8YILhPhTJ9=8kM4gBG|&_H%OJ1F8rF14-owPUF)AWAq4Oz+Q#nTRhW; zV3_UeXDTclqhq@)^8oJ}$ffBlA?<>zWy%Q0VPTDE{+BjEKPAUH9TnM*&@{2JU2&>f zyrnVce z7)PkaQ4!3QpK$Oi{&tD^j$56e7niu}7Dfi$>qZkJEI1o?a~8iQ;Htsw!K2EGH1^7E z_cpyk;TkJ-BB?1Jbntf0+<0ONelP|WhzL)VpYV%s!9nU+45u9rDR^brbML6wlH{?T zGj~k=NEqK`2HNc>TzFDCkr7%t`%f>tgvGNA@&?ulK{JQ=1GneUx6_;Z0FQXX2lQZ1R>u2l!n&>~^>O*8C zzJTQ;T?dmz5w9)MPyl|->ssIo(^AvkyEDS0eJ{zSulb$OWcnpLah%*3)csTRHVoY} zv+-1rY~knFYmVlgVBuq5!wiPdtCa;!ZFgl;7wL|Hj*8&eO-mp=9qvs_mTaqw9Ojc2 z$5@Cy0VnKeb%{V!?sVFDr8q)A1?Rk2uWE6=s+rU5$8x$=YYeKn)I>xB3DA^gRtQg< zK(vybDn&H+JOniwcWI{6e9g6=6s!D=m91JW_(XE}VvTRY5X`DS@&ufenW4TAi{0Q$ zu?QA9W!iWFLA=dwQ5Oqky&^A~0bz26`Zp_Ev|Rm=r!EIL%wgg%!4nI;8M(Ee>;9as z%0uuR9f%J^Bv}ww*({Jat%=76U@BL9-;pQOG>9k(98?VJTw~b?;#=@ww-KM(4tBkK zpt8UT7xYjOWyBUCxsgVqi@T}H&|svJJ}9$PB~reWnBSj~xmjnECcUcFe*ogo{%-e=KD~ALx7RVeND$?LdmIIu18oic)0LQ>aD_3)VE@SIVa3DBvnVn+1 z?<#90%CF^IvSt35^QC$FuD=_nlQyl)MEWkBKjxwmXBmG7Dw9>ADfG<)Iq-QPU*wry zY=pX>qp3FQjP*7*^P(qpBV@7V@zS2%-^=VqL*0yEn$Pe@JP}E*y!~h;qs4Qvsf=9N)83B)@^DBw>DJ4f_ILhC{Vu?csaDcegd|xjO^&%|Su_ z=C>iTc6g4p%TXndZXO{L<2}Q)q!@OZgQZ#Sbn8F@_)L$$#&;b z?TzML`kh7l4Cd2KPN9#%8>MRJoZ*I24ZEZvpYBj(M==eOdt`&OZ%TtytOrO#rZmVv zb%Q|Za~ljugPG5T9mvHrjHPKHB14vrQqMrUD^-QGFR1|fvt77ZV9XTBc!BF_%~v=a zpMvo~`;_1kqPt-EV~r!^obw{RBmk03TS#X2MOr6hTk75OBBR51hBd7M4^ablPTfU7 zRNjhDA7HuxpA9Ih0W?9<6-oo{5%1D~D-Bk=0jJ}$4J=(+-gY)&$vE+P8c#)LOSoI- z2DkUWMQ~7gip#SY%CcqgTsxho`rOX?X)?jXXOUDPk(HrW7Z3J+rV=8z#s}JG2QL+n zXKwWYa+#9Md=Cp=<|s2?`mSd$UwSQTF*D!Egd58SrQ{cN$>#*X_GAilr6@BffR(a5 z3QVOij{?oy__QgGDO1vCCjM-+AVxeJHXe*Ns%Yb(Xk)*KWEuy1LVYjDuxiw$db}Q^ z9|we?J~dSjx*s`4U(c<5DFB^^OI=`eszwDzWC5LlfF$h`bs7{v+%9xXWT={|25EHI$8(B zi}+t{RlgF~FLo7re47r5D#U4nB*IQKhQ2T^HbVu`ryW37%T>0yd4kzhg2=2`?Yu8d z?|*x|_P?sl&A(`Olbi28I@8_NJV;H_9d2FT`^K_juJ!)n?V60;(aj#}Guq4dl*W%8 zi!FCXPI}glM|0w7NnffODF^kHc$QVV+w}h8os6EErD)1O+%NNO`@FZH?89jPY3Z>N zSA&q5Rvma$(5a_qF0@;)OFVOW37jNa-t<#7TUFJlZ&~?_X5H&SL)UC<7MQ^N<>Q0? z{p+sCI2?UiME%&3|DCm$ z#(q>H3qbcQ1r^9i4d+ioCD`MCXU!L^fl*+a%aTCx{5wc&WhbcQ}MC#Mr~NWiBHt^yA=@1gln2EiIvHSfJK^njGi zr`13;dJIX&a`PwB*l+Kpv2)CS(WqoaLd3(v_z88CTKgu7!Y5b-9NFq3LeQv4yVLum zyTtrRnDNQhEYk9b8svT4U9$Eg4D_I3SK8r##1EFR;FR3(+1csqnomUSFn{OL1)B|< z&42;WZQw0&V>?!zJN(TY1JgMZKT2!F-^x5LRWO{@H&_XrnUQ-uj^HHtMAyt*>{*}V zeZ~n#eF82-;lL0b-C5eduAV$@xwK~BU8R}a%P1WdH<;p0GGt?;_{f!p= z{JvJL`zi%l6?*9Y&~6RN**5WX<-Bz#8*urpu* zjU;~T03lLWwc-@foz5f^!WoXpWhkxUO507P(J_&oQ>vrO2Gw0wwos4SFh+(hi#js< zoA6T{-lqFxX&mx+|NEvAw=uuOJuSQuPF@(ULCD)PtE9njmo!BBHWDOuW9*g^PiR@< z8f@wxw95xC{d>x0CO)PEs7Uk{lqeStER@`5S(qKM>r33~=Unlxdx%DZi|9#S!=_m! z8zG^4E~?rv*Z))T8xUN{4;J%tdJgsM==mrzJE#ZI{3<15`4#uf^*?_m84^2qw{o6g zzWGy_hcII!8%mh3@zbP&;BR}o_g>_nTA_p;<~gc}66Tp!*56uLUz9xm^$qfHh&s}3 z-F$jms-AJ&FbvN}=)m6r6L0gK6fhk}y!Qh92JiI3n;8Ya+xb7(;9a}xvIg(HZ4KV* zGsF7BiCqoeH+KG1U*8tZPUbos8yXwDM|RG>ly$u^x54|?q7rv6b#*j&FHU}=}aa znm!!%E~j(pW_mLpB$3wI&-xkEO?6Wmaz z3cJ}2T3_c)&e0Wk^}@3+;www$jKWz;`nf3GqPp1XggGp+s8cnx2vEem$eYIRs3@iG zCX3a0!@QUw7%RGs(3^E?xwP4#K46Q*3-N55?@76!}WK_q&@YeS}YnZ`pQZ;CCkjQsWH8@Nj}mYsrw)fMcL z=hsAC19f!NH7piO_?Anie=>rPm*(HenIJk)4AaJ6r+r!q!qA@{yCdy;Xz63&R@`>s zyEjLzWy#yG$x!xIAyLgUMX~18QdDmid+-HSIK#r7?>4}(8*wQ@dqc~m`mW|otD(2G zb+-?qUZQ7Hw9*#MC_=1>jDnLoFMK5m9N|SXrn}9|@GUc@pNzS4m=eZ%*uTpgIm(2@ z<~mz*!^bCjo4R-lAI}fww2WRbuOjiJ%$BGFtep~`krVQwEzy~kgO0$0#J};WGb>+m zweUEv0uGF5Cn>Etl!U=`h;Ucd09HgA;j!Z)t>5nC!2B80tAdl@uZ2(KKtYT*uc9vd zW6Sk3E-)_+HzrZbV1WL^_*KcuSzu1aH7kr^fqTq?yX28jJeirTxs0y#aGG1K&lgx*X|M`&$yX=KU=UZRg8^bAYS`Xr zTn}WI;Y?oKMCLWjocL+Tt`W%gTac{-E#m6Z`)n@K<;d}g^v>IK4vC^~F>~2bYQZ5M zpE^*y7%d8cZLWlPA@EoBuPw)nsbQv%Jm~7?)Z-6H^0c|hrmau3&c=ArUa`vkhH{iA zVR#-;{}RS)dLFEpm@*gMrZD;GPndA^=CT)lhL+mM=Ui9pVB$s0uPL~6J4Nx2pM z-uqr-X3gTypSV#C1{DjWN)JbVKXm&1EnO-;%eWqE8Qvb@xNhfE6zQCVIgq*4!cC-_ zvRk4sIjn$4?1b=!8R%SP8}Y=G>b8R9Yvo_Q zpk>jF3%HQ38N=cIgtxGiazuaM*ac-iHihfHx>m3{8l#h`*Z-DXGXgAE+okhoUR2^L<8RD8 z))s{7{h&DvsLdJ2Vg(D0F8_(OD`WrQs_{Ns6gfFDctzx7eyG^LbL}Kzg*VKcNygBa zKn@m6tkcQjDTnCudGg4bWQE3Ecp&L8C(1MoGqO`CcF~yWt{Y2_*>j56u3)v}dz^K9 zw{g~`)O)(tFksGyJ^b2d-F|>8>OC*=n^N!j70-V~y~o=WBNHe$xzS(g)53Si<=gD~ z*Xa61ZN}VCtK7Q7 zjbLM~f-P!4i(J!N7AFVdSf@^t0*if?;o-U>wZv|xUbiEFNfb&u?5qK(I%EqjZ}TCZ z#8+2vSFI6r6}8THosSd+6NB;r31Ea^^-TV7+tM0E`u+%3WbbLk9|N4qho*L-vA^>* zw3o`1$&Y=ldI}y#qFoTDd-?7Jr;LC5noJ{3`D!(WP6ZsWI$t9{?uxtkVcSPTgIvJQ zR8Qzy7qliz+{~7EjBu%*LzF2SuaK*8_&dO z@EVgI)}{+9pn)b%ufm?r+w>Z>87ul)Z<=^P%Zj1!$sC=!l~jSwQ~b8B7&00U;eCuR z*Kl5ONOHXpeWSFL$aO)EtWf2mXFrvW1kc!=fa1$TI6GLQ-ajr&p#Trf z-`xEtiGWM;zM5c;nxs)@p839VG56+CtA~NiRS=SAs5SJ{-htQi7@d(=D5Turo!;gv zcqmUMu9TlPV$WU1cR@*44;OK}NZOtpVFARI67ET%ny52rb-Z_+!XiP9;jsfTwl-`01@TjX&S}%=S$O!hlU8@GQ>Tblg#akfoYm5`z`| z!h{c&$S>2S~hVFBT9Xn+wcL4SO^}8(=n2RzEm?w&QNFFncmIs!f8ZX@ll6XA`(8y z8EWW`^yd!iGwl!#UA@(!^`rJmOd3u4&5K?oabzqTH9SW`-rI7a7n)Rk4QegPu(f5koF7vzO;hKahq`>4uxzHg<1tO6X%){oez>dAn9#9eB(&ceOshw;KxWGDtJc`10CgMxPp3J!49i}9aaT9tO|Bm6}+Ci(}=G!XE%tjq-`L6 zHNvyFZhX1eZ)8Nadj{gt{C4+1T-x968i-2=wmS#nXxjopgoE&u0y%0Mx?7J6XQ{j` zB`L9Zn%d#NCvvbKcZhHr+$Bm*vmLMv#=@%*r3?pb2i4#$fY-71|6qFj_J1WM|543K zm|pml^?Q~Nh79S`+N}4>cj@2j;|<{SDrm zIvc$8NBKPrA7hB;m&r$|<((*gh!u9ix#{>P6t_G$ZAuJ5FJ$aI?7iS4IyVqMkdqM? z;UMv0_!k*;c<1kye%@^L3&zRx!msJ)dblL@d#PC%DurRv4(s>n7xn2r*MCgVoSt{aAyyaDeZxz|P^7AxoCRHU<*se<%OD8oc9xr*K`^ zxi)mkn_sM(Z{H47ejAr=udk9_y>ip>A;!A?4r?AHXA0mJpfzCI4}05pNy&C88O-j@ ztfIP(=M#X&{0E8_O6J4fmGp9Keg)6Z%j}xW;@JE${i#0wJR2sNI74o~ai`@l6Ecm) z*IwD+t=mEA9nXuug26v`eR#^V&XUZ)y`%}s^n14A47iOB%1kl!li%g`NRGlsuVQXqxQ!K zn!ijoXVA^dM+5B@Ay>~QIe!egdioN-f@)L?$d`+o;7k9AW@gYe@PAZx!2CtxX+9>t z1bBM8g^TzoFt8eMb@cp^JO>}@-F7oIKV&s9C$y*MqYgVqitX5uvm;c~(R0XjNfBQD zn>>jdrPwsFfycbzepA6=xOUYu=k=D8Rh<-PmgRfA5RUp*1B0B+OwnkKsv4GKu^C^ zajLuLp?CTo2~F&2+n2wG$|Q{nNekv{Ms0_Xrw(&ab7akrY9oh&#!>!yz$(_?hkDm} z)D%`9)KhPRr-esCYrMq!Hn)XM2i!1Ajo)Q- zM>>4TssBGT)3d{Br{{gUc@loE8-9P+C%b;z`db=q?HkdHT?cm^%z62;cc>c9UJYsojE(~j|F_RR&Ne*7kV?#<$eDS z)~X)cuypO!S7mAKJHSrt>*<$`-t$RsPlo|6+4Qcc2t{^oYyjV6_1saC)qx}d5m%O8 zdmZ~SE2z|ZHs-n^9s4(;r;ThPqu13zO5{)uCn7p#^GmXLHFCT^+MXLfkjuL}npd*- z!jj0#IU<~J@U;U$hi60`1W_TO!xnvH^juhSLx&c@%tjJ289_{Ou#o+rAM&;el2twY zxuHYnlr2zDB2pZLBPY%ZW~*=L+SQ8T zMtU>v002M^hyld|`_8(FciE&{S^18&UHkGkkYK*ln|aHpGG3p`2!tK$9@&>4l#Jh% zc@g^HWef%$NFqFvpJ$X=HGs_uFTK zD!ffz{ze8zd%yh?dW%Op{svs45Pg@h1OgG28LZ{W+x!q2yDIxy7>w|UUWWnORk@Eu zN3R2^Z|{nOz1$4<^{zP7n^oPrf;*d*-oFj?>unaZ7xg@6L6_rfN+hn~J-T?GU0=e@ zE6+^=sQ1*O?{k)Ik>eJo-EB)qzl&kJoCD1&F!o8J8dnczXk-DE8 zsUU!}hZjX~QM>wT1aK;$b9*ELlK0ugqqp{NM8A5w_TJs#-yXU`9YE4nRgdY9YyD`# zB|T^5$ME_e#gTaCQ*^rqx~x0idsB%VM}fS6$GlqY1Qxx^2Fb&g>^<;K-@wcB?-^U$ z+f&oqt%AA|ym^?DQA`gdqyi9hx&oj2KZ--=SbANe4-mi!LB?vzRjl4hla@`w<06{r zNJ(T+2N)c}iI1iBYRjGUjl=sAtl6{$`qGEc!ISG_rRUi0hN+8BO|8sp$lcz6)S&0i z!PD}>2S92ow}PC#7j38Ay(>;VB$omo``$`nT|dN&+z`m~CV3=9E)b)7J{0Pyx0^TA z<$6r{Fx-uY=-O$G0rX0bXc`$TsI_YkqVSqTGtgr9w5pb67%Xc)-^-}~u z<88fGXBqrmLb6DP%z$gTIZA}&?%r-o{;m1M)WbaXZ|pe$KJQP?TwDn##q(cJMaeM?%ksy_G(zBXhh>Fv64FJ-S!4{f)0stuk*Snn0*tb1G`c zY=KR-k1ktZ-@V(|E=A^q#tjc7a@-jzh9;b3S9gzBQbx--A7z{ZCE4jky{In>cc;eK zw{$6Yx5&%xWybC9=pCpE9NKiKg)R;wS7V;9)>xZY=Y7@_jcuT>=re#F&X+&M^5+cs zGg|%-@I526Cg3wi2gVYzdW>xx<5{(ofP2+-N&@_W(AmrjjW6N%%15xPh6t zvm&>)4Vhz&%C_DGzDVDDk?k41E1rs0wn@?00#Ef)47sIwjDNyJyVV=0$k07nEgOER z`UC+>rtBl zxCNJU1q#)C;lGb>d9iuL_|h{#xTm>-jLy0SEuz86)LjP(R31 zz@xrF7EYb|=Y)|oH6FZP$3zNVF&m=H5uAuc-B&S+ugK(d-{4OAl^y5DLw0OS(bHl(Puf-#Mz425jhu9 zN3XNzLqR(r9j~FcH2xw^Ra?9AhjKB%fbQkIOb6BmFwuIK_4j-@`!xpGm|dRSzhj|U zzrUw^kF{T&bB)S@=Q3oi_IV@QeW*MShzKm+SX#OrF7iNSKg$ZmC+EW5YM}Bc;b!`S z9^q$&dD?yFQ3*8pyWYxvG)|%Hg%Bx1ohZ4mIk}2(UOsgWonTTvk=~DCJjECt6stTd z^-tw(%>yej=Ni^17Hu;0B!;bkM3l!0kps%+0ka8+>0Z8fUbG4?8lJkB=uR8{^>~i{ zf8@OhTvTQM_kUPaRFcUpRLW6NF-37rMP&dnG|)*z*SXGh z&Ya<=W>QUZdXV49`tSif8fLJe6v*pdv2#n_GdDSyoh6>H5(ipO90(Dt99VyegT5D~ zhhTh&gFNvo&wDMbzs?(crmA;5Uyw8PjF+bj7S<2)_*_B^mtEC9mtez%cN_Yg0>z0J za)hj_uBSV7*nmrQI-BtetK_lp267@C9;!bW-hfihO%Bzc4ELG!N5g$)^=vp{8fH*5 zWAOG>gSWjJyz=XNT_l;1pkwW%ya98)7ua4~5Wobdtba7#aE#S($XxSzNrl;rL%^)Q zT`1Ap>waHzcT$D_j$OKAjeVA5Y~9Ig4rz<#>yFgx9Wv*L_hNw7Q~IM}hI#JoX1>QN z3E0d>nC|z>Qf+^RN%yt!cj3f{xi%YKA^U^&XYj@rNjKiC&$@vN;>~i3kT_plii7{e zh=uVsBZ#E(MbH-+)@pw9ltF~mUcQ3N7%l9AUYma^9OwwNdT*aTVs5wn!g5dsp{f-woqOOwZ zf#(2BVkhsbxS60G`>9>ag#qiT1Lt}hNE)pqx~x>oTDNO?tmVS`9oApP%?IsRLuI77 zxyes6-R5erKi;~(&9Qo4#9O~;lX+|HfM=716Po7&Iz7C)Cf!(j@_6Cbx}_b5h!K2D zDBlZUpLgAW=9`wVW^wU*uxGEGeUkSfg>G7k0~a~m?;68|$5js3BMW%(opD7Z4-axx z#P?J66WPVGD18?_k}nG|nN)ZBRa%(uT6@ZAB>nWs`vS+v^v{XvwqtFKSk>o$!I6V^ z0P;l=CyLNZr!hIT{UnR4ak6k~_{Dzi8NE&g#^x?8YZCU(=9gq)TsE7zjz<#CtkWN@ z3ucCy{N?@+Wv)_lm;OK^-~9YFsfnqqZP2y_seGAuW_`Z$gDGhDC~|nS2hnf>{(Y za?AJ$u(B4M$d%K@vWD1YF*%Wo^3*2po~12vJ8aM8P0qo5>9zV@X&kX#eI_aNBE=~S zrb7JW{jr^wZj7Q<<#t$~%kvezDVI7$$hw7V3-ZJdHu89dGnA*` z8!k)^3HmtpTuGyZxt^%lJtfupcit|2Q$p>!a3MeWLY|o?Bl5hfEwMSzP%_QR<^&n& zYsj8SXM1mA{Zf(=b#wY#lQ)?)qWZzQ)_iPM`UiZ};RxHYWtT=4ZYQ+EvmdmT=QU zO2T3ZJFVf!u6VRbk8IxiAf^yZp=S=9**Euqws8BxJq!0sKDVtmX{ssozmka*t?^d= zhVo`;Hl5BKAxzqtBfesiWsoZHk)S=d){VZyea=$a!hOzMT0iXh^?SS<7FKaLmY;X| zil*zmdxO9Kt5th`*dSkZ5&vqRzZylVfyvv%HHm2vboJH_sPnxy@kR<7x>~+bmLzR0 zoy??pX_%eburT##@13Wr-+S`H#Z%uGJaNJI4F0&WV|cImk0ebm+}`5GBwE(QZx9@q zyH8^$PoAQcZi&E?M~u=V!)yH_@C)~KUAQE0sq0Lax-MLrluilPyKWzC7)~P1r6#+M z?b@$*-9fsJt|nB3-gV)Zx~{pe>rATa!s)OGz3cQ&Or6=_PrWy)%y64{Tc&iy&5KeZ zL%MFAdn7DqU7Kx<*Ny-F-iI#mswAIl1H;vYt8}=!S*f{hFmB|@mG-HyZo!e;c=lPo z$EWd>%<*8J-p(+d7kBOP-ErZ&3wks&*N|)((maP}N16`PUD9$=X^!4OUw+Ry;=272 zkqbj3=bYrganIrW!q2uC?mB=Gn{j>%IzU%$=j61E<2A2eq)42iI^PQ0wps&qD0+c0Jd7 z_s?O)VYy)^cISqAuttSSwU{T=r0 zI>M_Y*LB!Byu(Mg8i9tc&)l{_vgMpPpttAD7Rk!hg16wsZVwwuGA{Ft%CYPiMOsgK zxnTpdZ>+H_N*PcSmawkuM-o_FLsdI)v+sn5@@T&DzKi3v$C6qoA6gb8}B#oXa=SKk2=hpTOc&84xh1tX)SD*B%j`=bG~^ zNxRE7^5`J9s~06);*5>Kp2b2j;*l7>IRcfu?+j&61(?seC+a{u+a zhxGXLv@3<_rNYEptyl7n>F+DkNQY~BafzxzKink$w8YU#Nh8yeM_n=H7%Ob<7F9#;2qurKb-cdE*uPh63sNsHU@~#MjBlHwb8CNmIsgZ6BsO zN=xmN)KI$IFReIxio?Yy8}R3NYNS&GJv}u{EzM<@RC;RX0$W%;^Alpd z#g^ECZ&+f>i!8Af4omEzdz4!h?&9XfZLcq!znh*{X2OjQSE9Y3Aj_UT#aExqVI>Yn zioNtt?gWju4wulQ9i?Rj+>a`>JA0HmT!Yewm|exi=7Qp)Nm{A2Np=Cpva5SeL4m)$ zUmx9t+rAQ}m$K;QvV7f=m0vVLMfEw*Rw}*XqSE35hcCJ|iKDof1}d=6EMd-YlsHN* z#kZH`HcssYLfL(0byg_~*E#+DuZ*=BhMWQ!#sCk{M0Yrs!!F@weboS-4o2O*?IPQNAnR zUXVY_kywH$+g_07$aduy7bVS5?cu9m$I_139ZUI6Qi;RvattqWIZATv*$yrFrlj$i zDWekOQ!-QI6O)IJ8Ux(7IT3T_gYr4I}F=4E|V47n>nsn)ecuG0VVJ#`n=1|bIThlTbF%!+YC#FoP zSX7sR=9FT4jw6QwL)FZkJC=4fkGiRQqrVPcn?R{<99>pa#JnHX#hjC$V=gLo=}Ea9 zX1lpWd71NzN?rD%Y=^lxSLOeA=_eMK6{vJ_95iBKevv~(GOOXJQY$DRyApb$xMU`& z{Z0MSW|n439aD>Q$_gCjTzh^2)pf}sV$T_9?pP|Z|0ce#eTM}fm$>PXLHROX~e7pFQ3X|g(FD5e*Off^tGP@e4Kq9WQ{3N)#pIEw*O#>&B0 z-0uHn8u|fZcIG>c&gfp-{{N7FQL)+XbPgYC&Mhu0%IV%HDc_Yx{ss23qU<~~X0uF3 z=G>CvLN#W(nTt!zoHKR5TzcMIDhEd>v15BcnJUcjMaK>;p4w^3?h^m%C|S(+Bpvsdpvef!^x~F-Nmds zQQI8ztxPBS(Zuo4v2>zuEdG63WZ=3&T8*@n;$m5YnaiB!EJn%{r#+{3)R(HR)vKju z1O4Dl@CD4&OE!*q+99PMO6kXxl33D=Y==|k?BPYZ#p4(=31#^OInsNY_BU}UV`6b( zA!pA&g~Q9&E`Lq~zjzs>m#1wMNhV&-6Lg-`)5zcOWx8@X3MGuM9sd`q^XKZ71KhEaz`dlF&wQ~BO=5*zG zGgWVup}t1*oohLO{M*hv)8Xo7E-d3*!eHgJnV(f+FPUl1mD7u_wf@vEzIyyO>33tU z^L68Y-8=tfew_1%l`!9N(yv=5UwvfQsA)nv_X>rrt>k~zek^xKI%Zs21^>U0t;Ug| zPe7L@nL;{2<~y@~@R|pkJC@0a9adbDEywAf!(BQTml~@H39nB$wV|_1?4^0;Jo6J6^(jVsT zm_9jTy&V1E;!mCSOxM>aoUQHIvI_Lg+?NW@Y|Sy6TU_E>VHwLpb7>jj9V`pgFw9xN z7Xy}AVjDbVi5*ikrKos%k=bF)spPrR&p(U#n%-xrArr2qo%Qn@dT(tyi!oO|qxK~Z z`MK-yOG@lB%|(vs<^o62Bu;RAyzErREJ=*b=K3nTw9qTJYmASq)6MlBZe`fJEv(H) z((^BCRG);{J}?N9AsuW`0JC8}l*1CJfR(Ts*2Cff39&0+BkY5-V#a+3?1g=B2)u9< zs^K`)zPZB425*a02?@AF)W1@up0KlX^7}g zcqo7+unP9Ud5EIj(!mLCkhaat%wnOM6D56^nVFsA$Sy#g_EP2&H>_?dIe@?3U1xOF1yET^Ny&Q*zok0#9Z zXxFZox%J6^4Wrgc_q$$`g$tnKvnl|t3#e<^i;?@Ruw=vPj~HZ8xzWvpNdxMG*}9;+Is)X$M;{)Zy? zhpDZ-xwaU7Y5ZL=G+TDDbLL+(l&vhsWiD~J%1Y!qg}zHl)@-BMHmmKsOTF#uOP~G9 z3Cehuv8o#0Ax6zsTv(K^ulGvxrN?c~OO2sMy9W_ zfKoR9ez>faYFoNaIHRrqGPEscW|6&+;Vx@0wZX%MELV$Ccf*fM?isAi{L1AEL6}Pe z<1e$g6y_fbBX#^!oBd6?b&gk;esOOcw#NKpZr|QavX|x~Mna~2x?L_kG;=z~zImvl zG`l3 z;jb2A%d_#}=7w_ypO6N)Hqb&sLhvHA{MVw2$_fgYKcl$bEn`owK*M5ujy6u0y*+Zy zj=pWnlzPhD^23j=VO2}JJsm1``!8!=`EdD!4JW%~U#t7)y!A()dK-7&ll#!Q7O@3f z+R4YXzud97TSC_70ZHwjxTaI*QBUJ&34El%x&>n+BVPP%)1<?m>Y`w{$$ad+OK` z>o**r(xwNxuLwzeD9^dYOuBBx^tiITHNKmoww#b+CBE!gSY?YSef?a^e3M+SEil&aPuo27vGfn zb+9%kdc*IhtJ;sYMuole^QmUznl(>2bo;~spFQ4c{Mm^94{4t@fAj7&)1RMZzwl1e z$@a#y-qqJGnzUi8x$WYC3;Q*EG9=&m{s)d}=3^T>J-MuUQj4O7EtYjX)oW_Ao0C8I z_}OogM&H?5D)8Qn#b*LNt~U2+6Kg8VHXnSc`I`M-9WDuTq}&uWy`}fp!u1a(-u%h7 zM>>yr<*Uy+f4gGo3;*H7N@Ye=9Y0+&zr&rI3L9k<2Y;BjVPf>ziWpzI zopH~1Z&fk%v$gjO&A&aM=$vWU*w!=4mOr3rN8VU7sBHdS54VilIc4Cg1z+CtRLHQT z)V$Ca4*v1r!;y!Z9nXvDJapCLKgG{^d&Bm?jFUI#?SHo8wA&X=9mxpF`Tg6ux10)l zb==~s-*RiYZ*?($vU}6#w-?4eACdab&M%$I4h)WO`Oe7gRa2KVJNkL~K+CAF;$Asd zJUzA3x34#nQD*8n=9PxKGeTeZsFQu{J#!-_uRDED*|h4R-9EXoBL1m*A=`%3f48D~ z>nGoh@%(n=jiCW2D(^5ymUb-JHRs&wqp#I#(ZG@wJ8RU$q(Eh|1zd!r-(Gy3mIrV;SZ}L{J6qA;>ok)9($$H zh1UZ9^+LB1`Hy^fU6+WBTVCG%>Aq=O`t1rGbKv3fWm}$D@zG5k!>83;)o}ibGcHrx zf#6S6D|+HPOXHRs z&ps4ts>wWcb-{*?2@B6{TlQe%(${BStoQHe#LE1#uF>7*jeEg#qHUFCnYHDctku<% z=kGIpvt;MiO=A|A#=JegYVQZXXY{;lbx^CMl%N6IQd_OmHnsiAlQQ!e_qNzw(f|4W zZ2Q97o>LGkTJpZsor?73%(v!>tN zhxgNs@A_rNmxDgZxHznRi`nB=j4%7HQ`)5I*JQu*?Xk>8e|()kpt^V8ih3*VS<~~^ z#IUyQ4kq5R@6lh{yz*?TxV&H*Fz3SUAM^;`c2nh#zZ^L*@|g!p4>mly^rumiu6nw~ zOP{^<)~`(-?O*!f`r*fRJk~Yyk+}Y0zrOjPx%mwl5 zXIH#7DR$edZ;sts(0JLhN3?axw+_DdgAu3u?H`?5eQ@fgb`j?q&Pf_EdEd*Q&rUfK zvh?{U%e47}j`EHIK9+~}nob6PP?8fKx~|_nzrQl0d6(C3K0n~GV;x(>bWLg8BfcbL-2CUK#L1LZ3$;d+G4u zfD3zm-t7*YS;4ls7VzX!>&aISZRz&v;QlwHZZ55wRQN;v6;IxL_EgZuXOE1o7}&w| z`Aen$9{TS7rk@0b-{X98;Gxmgqu=;uT{PgEKe6akkTc6$0 zqr}wr&Y{abSlw*>ijloiw!PZ>skQH3SUIg%yOi#|b~YQb>cI=ne)}i9_wUD=C;ZWR z$FQ?s^#6AEJq_}&*%jFO!pXOWy!OhP4aGl&M98b@`B+|FZ<(`y`q^%SKR+^cNssS7 zZJ2#?$rr6wyguxf>p%PWP~i0!z8LoLqR3{QU)|l|omTG!Z|u6G{yW=`{pZF*H#J|Y(qzJ6_Rr^Qcx>a;)F@$2<#${IIs*X`Q2w#m&_ zKO4JyLFw%$ZHGVKzPan+{Q5WCvpVv}`VZ$GD;nOa_~4?4%kFaB*6)d;O+DW!@3$!- zYU}+oUyJ;*iBu~me%%xEKYhGg;{Mj(xu5Mm_}3|eXAZwB@ulx(j`;SE_D?uJ^Pc!* zd%e$>FM7W~%lZ1vLnEIr3R&^YQ%MiFwx-{Ie%xl)j=dXJClqDxAGhPyxB7m6p;>|b z=8dfnzWc~q%SN7j#`@j4LsRd}ZqW7V9$zkNFZpSv1@GTBXzUHszwZCsM}tQ_wR=vt zr_L;QZ8^8$vF{=#_dlAsa_PdK8~k>B{--O~-7@6k9k2h}8P|5%p2Fzr(D2)@DPEj^ z+mUYf=Ohn!=8>ztVSO?NU9)QOugRU?AJ=Ji_X7*dD$3ol&E7s3U7q|&;T^$8BOlin zSXv-m7{vM~xSll3#YNxH~|zB!p@1N0)H^{H30@{R#c~mO}mRu>YOg3EbT+(Oldcp1`V4nJ4I> zvT-r)A}jYy-QDH8?`vm;m`OaB9=}+dp>>z1m-SC3K1Lk>5CgS=+>b8czKWfAa;JI{ zA)VO8%>IIYce{X+I0!kAP^Gx#;9tf)>;hcbZy@ZSUH`wxx3;8`db_{LnIBXLkSPRE zKQl)8_+0Gb^%7?&W^w2mQ!s)x?V^i*lk6rLceC!h-aX!O6H!nW+A?Prn5(N!Q*u+&Me!K9ATo}%I=D#xw(NnaR#lCH!R z4FgG+1)%PBH7b`bg1EN>3ES6akN4RVeRi3$B+h7`dzw$jp_0Cg8OdAPSJEj2GdLjv zN0PM!&js4?xSRki`mgNCME_=<6c238|&$14s9I!l<9e8 z8jtH~X?BgM>o$Tk zrL4n9EelP>F6|S~$P^X3lxl>pZlco0@#rKpjd(JKM=_Jg-pxqrJ`Ej;dp4@lFVj<% zbW}bi#Fl)F`ifbeeKPXR*Yi+$>RqYlU*HR`@-CyUlA}=uIa?O`p1(56Q+&y;%Hcxo&kt4~wW9<)~ue`osg7n}U+#t|(3^3Qz9MM9~N$yzdJ)l0&Fb@{Pa##gh;Sd}L z?I!LmfeFIF3{emR{lNmsV1*2@ffMFIIY{`WumV=WM%V|{a2`x4qzh)~0~5drzGDAh zEoMe&-G5Q+KdOIq-LGs*=FIqa|K@QgkGSo_%il z^Dn%(;-!~gS^4T~uUG!(jW<`l_4Yff*S!1Q+V?;B(6es+hK-vxZ`rzS`$s!=e*8(* zuHAd~e)`$x`}Q9=c<75S4||V%_4UzjzWuKH`yY-S|M902H78H~eEOGP&zwE?+wbT9 z;0JsI0)v9<)o&2euuT$pulZTJs>EMy0ct2KJ`k1lfGREJc+W)Wp|9{c`{nNRZ5Auw+ z2R#dxF+4{A$3dR^jv9-?a_~aTIG(ovFGOWP)TxA9c?KR*{PD>Yf!{8b89E{Abdr=Cfdt9i*;o+vkR{-=1dbC6Bm z1(bZ2UWR;qRcq8hrS;F{|Lb&QZB|N}QaY)jf68(tp+5gqPFbZ&No6f8>%lzi4$7N@ z%}7z|+>7M?DJ`{sqV`Js<4S4%Iqpnyl(@N+$B1pT(m%&n-zJd#AtSDoTD8MJ<;|1+ z#8cx$VjKPZ*X5RcYR8C-PgzaNHy4cWHONlT^#8gn5;vPPNlFyq&?J{JXb#k zgZrsOX^-WQL@2$h?}Z36Noo-&>xFLGIVj+Lh%c+6P# zLnM5#Pg4?8?L1d4&(`oQ5Zpnwe+Op=Sr# znGn5MwkA;7l~C?dfHGpsN3Kn(Z3(eb_Zl<^J&Q`6G=T(#*YOL-^{5%`ibkQ`&=@ot?T_|AEoeV98NC6uqSD_P=m6A) z4ngzKIMj(+&>3hv>P8dM`Ka_+IVyd+1icZhK!>9%&=F`QdK0=DmGR+0N1d{tT@emED3GlozIGXVCx#zRK{dI)Qr78+6`@h_D4g| zp=d)?t|1$vR_vkZ1e9O<)$-6Ls0$54-KYt@54{?d@!u4c@!t$xf_rmxIoblPL|dY3 z(QtGt+6vu^wnn{Z8}v9Dfu2RLMT2t~52y)ki$$ z?Swkf&gg8k3pyXY9$k!fMJv#5=t?vi-H7%;t5EsrwnJziv>NS;o<{qjnuBqIhNAt^ zaC86~i4H_#P&qIMp+nGQG!9KiEvOBRM+?wIbOt&UEk~2krRXqp1$ra83LTDm&=Kek z^d@v4nt~ohN1`?8DD*sPMMH8EVn?IR(Xpr*9fx*9Z$Ss44m1Uwf=)mS&;oQ0Is*-0 z0-1*fqcYd=fR9#=y&<|3ZG^5sL(x^J3H6}O&>d)VbRXIhJ&LwQYtU=akV&*Z+8mXM zsv9~4?T;p+L(wVd1T=t&ssIf}XP^zxd1ynl9BqUyMMKdQXlry8DihoebPBo;4PZj6 zMuXAQXajwMBONp}k95#*G!%_QTca_kOoW5b04BT?G#Jf58=yI8L)3{jLT96)=zO#_ zx)_y-awQtT#JCo1h;Bt2p?lF#)Qh%8kE1ey2Imu=iLyD`5H+KX&~9jJv_C2nsTB<{ zGp^8vXaU*?ogx0{Jn@gD9O92wh(Eeg{L$6oA4Pe@AKfeds8`&(Q66ze&x$)5JQ?>G zj!(298i6)Kqr|-r$EUcX7I8;Y#JxZ5C3ZAN?1N}8v7@uaZlS%zjxH7*N;yT7DW_-( zyt6a^<$M}wx zthePO-+5J9qH7)@Q@V?@e4 z8ncX(XiO4D#)_CFeHky3mxPfqBlVT?%eaZA=8{e+Eh6qx7a2d%lz_tuv&2o;G^HKn`c~Rg(wA`-O|G(jk+CLbsjrMTNmI%x zV=kHyvi6a2C*_p85;FG0d<%b5u(^DFEo0H>FBy-~gqCuOe>9<`e`o0RQs!BDcx9Gx zYlM-p8_fuia;mG?VS0PY7?!e0c?$J1r|M;vt3IP&)OA~`UUwPevYwYQBja4mGOlE- zi&@f_@hg?e8Y<(Ga`=2E}7 za@YqgUlx4-bvQSsj73lUOrXlc>UN_byjV!>YS*LhysvNQ}CjA)C-@1LI@>4xv?KMYY>-y|yY{tM0DSP1SoqwcC}`m7_?F z79-tsy>C^zYRsy1hw63mPpfVp6zWG+-7=11mSx)N!m{-csMLkLo!i|M9-M zs6LTn(P%H3<0X#x)QzK#L{;Vly&sIWkYhrPzY%)*RhV?&n3J-^>;0g@r0B=KQFpn< zROzUZtis%+?@_2QR^Ra|=_Jx;MqcrL{V_%#dn#^%UwEsZ`^~<-RQ)gYRQaaqGm0`N z`}#$~jP#vf#B9~eU%Q@@vx>Bnob}bUu(V+^*TUVOx;a-RK(hK6E3x1U-ZkFQXkAT$&J@Eq2NqfSRz&`8NW+9gRZYL1oV;5Vc^JJ~t6R7)`-0 z=b#Mq9yA>HdT0)InLEwcWpBud{aJK2`XD+VmE(3X`X*X|zJkgggPd1aVqb_x5x)Vt z7Q5_W#9$9Ww_<+|-HYx-z358xIJylzi#~(~yZBBhYC<=m5$Gy33jGZ2gI1vyRL<=w zs0YnJ_n`gBuOXU)eHZFPzd&cBpQH29?dW3kEwln%hpt5TqN~y6=tlHavbgNU5dVju0Um;S%tohdeF7#KGKoB zsvX$pqq6sOgScatJtHgWhN4HY%UZyOe-E?)dMxBH+p%bvn+R#e6(P$oa zIkKJDd!jDvGtkx82cmB5ccC+ge>Ez5WO3+yxGzALqG{rfdoOeacDceaVeg2p!afNN z!5)cvu*((B4)lK1f_qnVANE4@C^{Fd!hJAWgZ*yQgIy+=^VsL1dDvsnkm(7r%h2ZN zbkvNNq216isGD*(Mf+oa6dj7DqgM1WbUyyg&91j&3Dh8}u~xCs1u>LhMAuO+9*}q1b1k)z~d)IQDzd z71;ZuQP|yRCH4VmAMA6`D$pKz3JXyc`SLP}D z6}~bTa3yP`qn>6{?y_bw+>2S+80M*d?sBzaxXYD?VOCdxDxI0WGRw72Z4 z`dfg%as4QJBGHsg(v z)HRCQnNw!fUxrzZJ!O`^hFQM5V3-RTb;h;2%2(|XsIjZ|p42m?YA?fZm+Lwi)6BD^ z9IgKqvy@-$V5lk3e?W~t zWme@>X89}EOVT%LcUkS>$x|KbdQ*DP*r%53PqC|5%3t;Z{Qbr5?=Q2G%3Xz*)~U72 zexy8wAb!TUl-X4Fn8dZNyZ;=l!k046t`uIm*9|XwkVZR**{Hkh&&e|vl9$@sQfC_3 zOO)EGc2rO67-rcoRlDwLzftwK+B=oM5?AI1)gNlVRG$8pJwU0aQy-&h4@v#?ud~0q ze;w2w=`?+wQ+t~#Uv>Q}$D+(W#{CVk%LuNu%Q#nI^Yr|cS)SZ7+)MRiO}V@Dd0g$A zs(d6Z`4kjS(%(C*Y{uUjS!(mCiR&G#Ool33?O*wAkt=-MhMT;4U49J3P~F{gP^FKW z&Wg_i35MeD#^KIOI^$_;v!Q$9GTv<3w&#hqgX^ZNQkB1kyVBb7*L62+F^S4#XpJv^ z&7A?dN3EXw__58+7xc9Zp3^0#;lm-GG4uLPc5mzG+1>ZiLxGde$DMgR{EnwzX=&;E zpXrBA%{ujANPPDX3ufJ->Stspb&?v%huR%_@$)tR&Yk+7t1P+;ZF807Ouxj?C9Qsa zy&&9_U!-HpPzkQ?!@LasucYR*FXAgvJyBKGfF8IupXr*E|Fa<*{>VJ4whV>`95yb&`V!nbNe12GyHsdw9$&7 z*>P>o+#KD%9xvw6zI=PxxP@``Vt&8Sa7zEde39|X*PM&vu08T#=#29N@E>x2_XAJF zwRRRgwW|$3Gvyh7X5Xt7anJB|q?@mAgMaqsGrv6-7x&AYlUe;j@INvBx@%sHJDC1S zT_A+l_U?%nIvxVA(0pFKE>_!XZyua2sWn`V7IYT?h= zZ6}YnUHYH6y<^g@i}O-GkK>OvE#8cKWYT@X?yvZ9Hrpn5=Z9Ct{rr5^&XpT^!;t&? z+e+)b9ryI@&vf`?!!@KgV$t*|@5Ie2s%Tmr6hZu>BO8CVI_|ENkvqQ8sE;MG{i@#Y z#`PUHsgLtyKjOcb{`Mp9#cdfmE%LS|T?T93?*lviur}_akGkL0W!JGmT1COSRS6%& zeV@AM=df>hn~`nuf9fszFz&_a?>zhb{k-kSJZRICg`T*i-;VsWXihI_&y_>2S{L_P z&D@WY?!9g>8!0W~RVD)~7bbHM0+iZgV0IdwI)e7j2HKdi>Gz-4_2ih%32* z4D*(_o#~dW6=vQHWsSJ_$f_-In|eQ(*DZkhReYTLY~0qkr#swp_qxseAXv@V&?Y;! z#vQKs+Zmc-Y%b25aTb?7v^VGp_NYuRVCMPwT;&>5o^&KfN=qwBYl#9sWi6 zYrByXdy0uYN+?^fMI@~&i_OAZ@26u8*+~%fh);v6!@wlSh*q--P z#l80PhqoWFQ@+)cubsNNDz4YMm_;MLr@kw8@7#Z}D$c#^{$aSKJ-*E@ln+g!WiHu*JceU2%t-gm&nj z(Rr|zoG_|Mr`>Vq+AfbW-O+;du6`jaYj<4JR-xTnS2i82?Mw7bU9vlF<_%A+%pbs; zw%m=Ut^0I$+=n4yAAI@4K*qy+FTNSNC$87Nw_82_5XbYC=6}EQhdwFX>^q(vXvGKn_3(zeCn~$4)*xj!)cn#uJ-ngbG0JXe)Wy$re?x7rE4!gf zGL_xXsxW0Y)V<*|J-(qUW+}U&RXvs6Q0MVa_3(z8UQ~8Nqa4a^sHKCl8(MXAuO8n} z+Y8EWXxBSH zq5JMoc0-d#D!ZYpuT^$KD;S?LP7IyDLD>y;KC0}7X5=fop{wJR-O!4r%5JFkeU+ZR zq5IY=yP^FbS9U{9rOIxobGWh_>glBHhAz>R-B9l;<^w*4x{HZ;Lp_fvyP?+c%5JE)wXz#(`+A2S-_V-n%5JE$P}vRD zdMLZ0?lT|h@eS2H%6>^TZyc{;mCJ0+j=|7g7-ShDOAv9+cIaQP)p84p^%n@{+Ozbv zNnvr0Yz=F?e_CI1Wo9dn%)FV-Vpc7=1Q7q+5}*If7%g*VPbktdS^UU;OlA=;P_^gs z_B;v6J{`!fk6(+*Pj|OQ_40-#z2sL zx|It9xep~a_F;W~QV(gv=Jy3^&0TfU5T;og{sZu7wGGx zqb>;QIQ>s7lHBThxc3E;PC36&Zlot|CT0t)@cD~fK9z*4@pB6n$NAhNfEXx%VzZn5f@hyxcFv7gyXR?gZ?Yr<+V%qdEN3o$nV{dTI%F|MFa^j;VyZypEE- ze_905oVZo{r7!h9i#>D!_ou)=9|?P@dh2C3R4@oNm zdlVSuk}y|F%Rio^Wg}dMUs}>8dDv%MmY#&WQhWNxmGs<%Tj7_Ulwmb?kIzl~C7gWx z+si+W_$?t^jbA!?KXc5Qz`xBT+?C4ZA6L@z5Y9qeG0R8dSg}t4qs=7DmD1Pj| zkR@--FDy?dz;6G}_6eF5yw{0Y9FpQv@|?##)O z+Nk$qR4JoosJtA+j9YhJyXlI|k!?ZEj9YnNpwF#PKX*#`D=vkbp;;-r?BJ<*GjlK! zF;GjV@ZEXEh07k}ap%vZX1#Tg%B)apm50_o$w?J(l16A20^_78}b6q!yr-z9wouPv2=Rj+1 z*jck?G#k;nmoVHT)$dQ)a62n; zl$$D(q7ilK&g00zOtPXxB--R5%qn=y-942oR(h?~TJ^i7K%R_u9~ zg)sul`b@&sG*xL_KqY)gvjlx!YKlsJa-1ywi!>y>1&mKs)<4%{A88r&sKzX5oV_gl z%hRpQ{^xXK_<2SnT?=MO!-^VZ6BRf4yu>@~MVH_&?YSKFfE*`sE)zd#8&Nrq*Dh7z zjdP~I-wB_edoT0fdzrs~{GXRwVw*m%;u~e(=qvkP)MzisN6urSB!8*BQiyBh z>tF5-ytBUsB>a{9`)snr_6L7||8j|Y$1TeL#AZwEIWW>$aasNLysyGVp}oK&k$s<8 zAN=!paz9i%p2{)H*r`B`G(^SC$lt%5w^6PvkT6F31wX9DnhBM$CVq0>7Om5EYwOnk z@_rk;r>?($zLM6z{;2D}^|E%cT&U}RdHjo)`Cp!Y&Iq-mf7F-m<^I>ED*t+D3ozQ} z@^DY3sc?Vgf5PW~rF`&H2FDt`%+j@f93%kvrHuA9!~{$J1ed;hJz_s1FOU*66$ z?^E%Oep+=|ISU^D`}9A2^zZ$nE9&}R-VPBT)b-zSS^hC=>-t|_|HYoV{+GwUdrMva z%lqlOkLvngUcUQ|*7d(U{YA&>`un%<@KDzIAbl(!s;1Ae{XPuT=bqnLhY5MCi_%{V z)GY4=a{bM`0)|$JnavdsctKujXNDNCf)m_O0hQnZFVuj>CW{$jzydaKLpfA}2dbb3 z;D!qDfETpZgaHfKzzr4P0WWB6@COUn zzzr2(CJ!mE2eTLC#eZh7fDPPG0hLe%HDCq{X`0vwlk{UyCzOjFs-Ol;Y-q)R6`W83 z9;gBf`Fc@PThaq*&luDKHjp-Ui-HHdU@{X1EMNmSRDedgJ*XFIz|@X#Usx9`J(vK#LhH;DmCJW1s@{fLH7w z`OA;Dn89NvJZfRAT2ULg#T~pL7f@!10V$u1Aq!?1C(@R3T*^4qh;PGglkoJJw6Rmd z5Z;YjIaGkOxr{X#UzOOaK#l|H125(pFh!FeSV6{+6Lo`(JuBhLF;{|qjNxB}xdx<9 zr5#P(i4Rtg<618x`Ps0SgN&<6v#Rg^L9M9ZNPs-Ol;JqZU^_+L48jpJ6@KSuHZCscrxwF;z9yke(~ zE2oQc3A6lwvIV3)Y^W1t47<@v@Pdh}Sqs>}3FY8{8Zh-$X_`?n%Uoor^p6}P z8f6o+^tFsN3*q#+K;p{Sl<~#*Fo9G2paMML1&J?xVUzi~AAT}+WlTwWxXT!k@#kfH znen%P4a_YmD_RNqSQM4{>ITXQHjs99qbA0fN!k~46=_wW+BM`McIFU`a%=rb6D(i@ zH&lQJydYy#8$dcBKlogM-GaJN4@jF^sgI0F8}44*^fs3;5*}*8DFdpZCf}HqzO2Hn zoc^;C$ArpwuEEVTki4K0cgauMU*?rc%5J62WloUusg*EJC!iFqA)v1pWPE7E zE2q!oDGHOcyM%=br~>%`ESZbUs1@8$30^S8Q9p1(1$dy6eB{_FM`aFl(^g*G%gI-> z@E_bD$ElMxsK9Ka9XzNPYQPjvIyX=zRE|g4jdMa3;mgHLTGBVt@0Hk%K9#jYIbo`B ztAQB$U(Qvg1o8zlWsx{it}4Pxxunk0PI9b^zqEy$u;uhs1?mAW$d?J_$uBFoLB@cI za!CF%#wsyakza-Qf9F*`xVuFQkwm_6VH zjkr#bFV@9C1!c6MZjke%jQI-89`FKR5Y)^d$D0L}ac99SW5|ZxOMh0h!k==xu}j~0 zEV$Dia$Lw_phkfLZ!V+O|^6AYb@1g9U6*4wX;^ zGB0}37-`4hgaMi3Y?R9jHnCGTH(CKzVjn?zAjgLVwSgNdzyn^;k1^`wri}7MTWJR~ zY5|*o-2!gR72pA{sD#H|jxqT%qs)!ct}>rj$uUda%;HWs3o89(L)}mT9;h*s7Ajx% zl>RWI7O0`$ZKzw^LDG|PXX1F2@oI`D9BnRR!R9NIhj2Au8c7?0j6*Bx1X(Xy!ig(p zr~)s<$hc?xSV6wa?3Db?d(JIO={U&QYIq&J?r90^mwhDil3%#h+SHA2WLmgvK8Rt&sJTvLou-iz( ziOQU4CA`ev71*V1s!;i&r!i;8^u){)%n$<>u!0So;D&OjfGY4p4ak?e zO<;x?u!0lHeN>_z@IuU3{Gb9nPzCY@Un{twQjoByd(#mG(78?@aXsKrA*JObc!tW4yAW*ZyzhEhBgkx~s!9Xn)rov))7ruhVhXS=h;DQR^w}G^a5d8&t!rib2 z4ny#lfm&Cv!X2;*4#0VcJRGQ{!CZI;zJ}&r#tsz2QmBH!BY|2k$byGpBb3fg}Ys3pTRcoMe5F=+g4pwPQf+Rlp7|&qwpRah6dkLcF2Z@zysev(;w)6$c2Yt6MO?rkC88o zhnes^Y=vVGdOT3;0k?u1o`{R^3JKX~95=eq12_te&IfA!zyXV4Eqnu4|H1qPnQ$Mh zg459E0(}CduoN~!4Yaw)ybV*~8Q26rLxdKjjfZmB4vhnXv=mqXo8b=_7#O784(~!W zL<9wCso;j!;Shud2Whb|1(w2oXkIT!8wCqtJzRw7`axO-JOu~gx&}eo1b6}tK#LIW z&BG*k2-d@o(7IuemH<=XDcAvjKv#a6@D`X0|A8+dsBw_i1;)W#cpVNxy-@OpTj3sf z3y#87R|RQ(AsZIMCO8Y%Hwn^gFdyCkFEkDd(t5!JSOD+95ePK}X%=w8GN=OWYSMtQ za2LD+N8s9~v}(z4(gI1Hg}SUbQS z@CKZKt`R|64lIL@AoyC^2eRN1*a^Yc1!=t@51xZ>p+nms?Piz@Z$ULgm>E|v1D=IX zp;0^96{f@Uupe5sr#|o?Y=I^nXk&N<&O=IMkoIr*0DgfU9qAW%4NgMOPLvrQf{pMi zbneWv9xxx?hA$yBDoDEla^O+;0IH#NmmqC8Oob(|4NgPE^+DPQm<_MNQE1bZdcrJN z4qM?zFn0^mlEDefU@KgJw$Zc!%!T)$2HJKfKXAfQ*aKJh;CO(!;DK{+Lkwkt$6+0O z56ydW{DK3Pz=!ZHH0>3nCBby~f7p8y@FuG7Z~V?oK{l~00?J}RP(;AVz9(IQN`car zMMX>6hBlHWB}r+EsB9t%Dhetp%BrFwUr5yz0qr#$u>)!VO90yeKLPq`AuE8{fDM3y zfJ`0e1k46J2lyP2spm)@U<%*~z#%|O17sR-9bhqFFQA2yBRPP%fR_O$0Rv5-5pX}? zZNRU9erB{Kpb_v8U>D#NpsR%=M!?m88Gy$C?*L8#dRjT+089cb20Q~e3g~Qu>;k3$ z?gIP=@FCzVppPBA1WX1j2J8Tw0$k`o8o*@0GQc~4Q-B`Xpda7{%m-`&dH_y^D{AMy{V0o)JR4EPGr zp@1WLz}0{`fF}WO1AYW_7=ktjQ~>S;ya+e|_#4oBC}b261gr$?29RN}xd0d7KEM{h zFMt7s$OCXE;3dE>0RBqYX24>=F2J9FONWCFzyiP~z;}Q?MQC%t?SNMRUjkZ>fSm<+ z0ZRa{0)7MZ9mx?V;10kGfX@IeM?oe4C4i}b6@d2urvROcK`+1ySOj<(@Cl&ZXy`Uz zEMOYoVZiHvj9I*i^0k;6w0X_o!0_a`}c>+uV+zr?Y_y%xZ8F&n+0Ne(625=CN zF$OdPMgtlE_X4&8z6W$43z-E>0W1P+2Yd-=F%C8mFbQx6;5oo20A@V+2N(^w3Gf); zV?e8`P)C3l@Bm;3;9J1CSA&Ouv4ClSd4N@b=K${jeg#}~4M&CossOhDo&oFu90RnQ z02u}30ImTv0PY1m4tN!C0B{D-=UVhpfSG`$fR_LV0e=JfU5B;>+y~eK_yWL|<2fJ? zPyv_*co6U`U@zcT!1)t7q6LfqOb0v#H~=`u3EKsz0Ne^#2lyE97vS;=)DJegSlvj5YyG0?Y!r5Pkr;oD9Uy@WHrqizh0gM({~XbVN@K#E1Z} znOKMwfqXl0kZhcomP_&oJ&AM(PV^f_3dxmZI4L3{2;CoBj6hon&MYiLFla0SI^*Gu zUQMnc6Uem)fs~Vp#7QbhrEo6EBu~Y_y;Y6gkT4ayz#FkI zej2%fOeZ&zo5;;%2JSSPMP`#ZGrxs+k(b&0Nn+W;{$S<7IqI9W#aTGXW;Z)H73=2Bwi|Vx}=S zFw>bEnVXoKnHkJXW)?G>nZw+|%w=w6<}tT1w=?sZ1&!aTq{$UMX>Wgcc8VU{t=nH9`RW)-uVd6apKd7N3pJi$E4JjJYKo@UlD|6$fM z8<=O9XPJ%6bIkM13(O|wMdl^uWo9$;3bTdT%4}n{Gp{l`n4QdP%%r53l<}K!J zW;gQ=vxj+?*~`4gyw7~V>|;J;K4Ly*_A{R_2bfQpgUli3Gv;&VF!Kd-g!z&=%6!Fq z&3wZgW4>j+W4>pOGe0mtGCwgVn3K%U%qiwH^9%DU^BZ%9`JMTL`I9-z{Kfpu`~&4@ zSeE7347LT^l0AoQ#kOYKux;6P?73`v_B=L|?Z9?qJF%VF^Vu$JSGF5_0ed0ao$bN) zWP7m}u~}?ywhwzT+n4RfUcz3=_Gd3+2e6m31KC0BVD<`@XH~44)v#Jt$Ld)FYh+EV znYFN1*2dad2b<02u(@m=o6i=oL)fA0Ft(7rk{!+#u_M@#>?pRF9nF@orED2Hh8@d} zW5=^su~)O#uoKv8+3VPHb|UL!E7(f5igmG**lM<0E3_E~l#`yBf``vSX(eUW{MeVN_NzQS%{x3b&V?d+@U4t6K| z8v8o?2D^)WlYNVQo88U6!|q|<{dZ>`&|o_9Xi=dx|~H{=)vs{>GkRe`o(- z|76dyf3bhF7~pdZ$8sE(!L{I8a_4ZZxYk@743OJ#=W^}2^SDf|1J{x3#C7J*=elrR zxo+GA+=X0st_RnX>&0EfWpTZ^KHSAzU#=f_33n;ipSz43z+KJ_7Cno!njALhf$v9&Qo0n7fy|kGr2+!acw}$UVd@ZWXth zdz5>Odz@RtJ;6Q6J;kl%p61qZ|KZki8@OkSFf=-X8*cq&eWK}4puB$6@2ZA)?oVvPPx&a7x*@QDzLXvXJcgyHf!W)SzZj$6A zW#g(sxq&2jBkOBZp$5uxL4STxUOslb=nJ}Bu`ielM-(BHS;U!MIq$FShwsehCt}EzFAg^*Xd6tTN5XCUhSMS9| z%~YAG(niw<*~#}ccs)L6748PF_Pem%C;@7L(~r$}fnaexu4Z-yTw}cMM%oaG@aer* z`KXE8lQ7G$*yg*it2`lEk+a@gS(E3ht#x{FsHm9{$y{18la3}-@kr8V`zDl~NABuX)CdLYl^3&g93gbxOIU6sKy z-%yXQ!s&@Ndk~7}!$Knqw8&OnRpC)QqaVoYKdh6=rR42B~Lhn@Qna|&pDz_2NU}a6MbFxA& z5}T(CwbVuVnzFG*)Cb&^DJh^xC9YauFwXqMQZUjLZ1DNhp%qpN^>=!3r(Y0NOGzp4 zgRsG=XcfsU_Bd1WRm3bs6QEy8m2GJyx@K>nM!{6avS7^6L?$aN_({w~6i!;gJ|?Kp z&BPKl)?MZDC8(riNRtqSHWJKSVR5e8Ta{Q4fj7?ShwZK&f!-8s9p>{*jw>~6aLRKk zgYK!Yq4d+|Me63@7CD;~3`ZpMe3vse`(`BZc)~;psp17MQWDxsL>}dLSG&E``5Ry1 zYZQMasZux{YCa78yC+@@;|iG?VOCmnd7U_tMx>59!eO0bx)G$mAIz51CW;FHHqXu#OJ5IN1d}uaX1n|q>iuTg@&6xc_H~|ZCJ2$xf_L^ z4tt{#q{Ux(O;Pbk<&sxqsHdr}2KaI*PA^5eaxQdNBF2kNG-AAy{^q7 zJ)9&h+6%qzWLBx99_p?zzK(FdoEp!9{5+orr%c5##-P>JE;MFc&|O(v?+GL`UJ`PN ztB$(NRn1B?)?MLuQfY{-ujG%0dl4%9qu}&-;`{z2sPMzwL03Ko)Ht^^rhU>(1}@Se zgD6DX#Abl~LfWuXRCc zU~X{LG>*)vropvD`BTFWT1L2P5pGHlwhHA;anmM4LQXHs2nmWqz!(BVY{AJ&RxQeA zr65R5Zb~7S7?e?yCb=uqWsiiMPSJ`nq?oeHoC#Hvve;J#l^2sFd0*&#M>^jLTDoI}Ez6FtARPgpRUOGX$d~p%)6&xZ?uAaXF`B2O+s)Iyo{z zXzB7hCRuu7AlTU=*VK3iBd!jCp?+U|U3%GyxP|%Y(k|kQ1~<^0BBUfKthrPdp#mvP zTanXW?Go{GFcfvh`Dik}jBr)C>ub|Q#&ij_(SdR9V9gjWLWPJjyM2CiU6S-C?7Sct zGGR`lBobCC`4yDXKhj+}*_+(-l-45tm}d2;`%r=?u-`3=-4j-3m@^>en5Z72%R{q6 z$TbOlg$Ub2RVHLGBQTQqYZ|U7?o>%vc|Mqf!iRlp>#@HlhPT%1SSWtJ1SnrT|IOFa;D#=y<8E zNyG#oCF2#Xg&4KRc&gG>7gW+kIZ{ZoNJ855kEyGI^DIe(SvgQOodR|ItWR{XR&!x*B5SjB?Q^$FZLyJ?}Uy6 z#fDMS%9~0)hPy==3U~u_qDx_^pseoWoB=w3hSinyES^)cbt&aJRaKCYs`vp{6cUYg zLrueZ#>$5r8R19_(6CaVuEOW^$E`SwLKQlg1S380N>G?rpj(uII2&>>tye3kKTfSjMml};5>DqLyNQ0ktRs#arNSpS6#(;zaz{CE_F zm>?g5xyPiH1rF7eWH@8pt_I}@-mtQ=;_^JfZi=l2UmPof6&6g(FzHvRH;6A4`Q^JN zp^r&{1S3dMLbImmhlRz>#qpi2P_l$B6^mX;SYi&hS&@P;wrH$#eN|0L{!(<#5nSbl zM$KaK6}!6TVGF~nWJF_v9=Y>V{^ zRZfu;No)ujfm(xzaOG44d>(Y>R33cw!4aj2a+IZ^LXJUK;--i$A{~}Rr+}P{g6AfM zpj`BZHDQDmS>I2oiK&SwP3aOPtziwVG?1#FMlmJM21*%~s&ufijNa{c1z_0RliXMm zM-3e2*fDlbBQ? zOo7%FsTG$WC0|JylZ48N;v&i@yp-!FBiOR_Q%WXI5iu17vOL8q#tjR@*-EjSq-!PR z$kH-NDOQ|ly<;Rry`L_?P9Yp<5V%no(WF>?8O}Cp&08i&tYT^ZtVU);nF)2V9A5{wDifhs67*q)Ei!4*t ze>8CzJ5`;O#yVn|i55bNZ=sus)<8-KDV9Hmu*9uA$`wK6I;};IVqR&jcMPGXTIv{u zm&Pi`DEx#A9K%~g=-?l2T&=G#=!%;HR>o4WE7E?G^1K>X3mHZ=wic)#HLZJ2zqiVL_FpAa})zaMC!63vQ`@x1d-ulxpOew z&`Cm zghJC(b=dq+9di+YNtR<6QE^T-(rB_Q5hmAb)5=rq+>)TuaA{}@YYH@RE>WtM!frGf zslo(!`uOOMs#4i8q02%5fVS4?ddRQBtYCx!Y0Z78X=7_9+bdWs8xmvWM5EtBuy+~z z%ze-&1ZCqwAjuO;iQ?ng@?>Ow8@cTT?yiu3cQgphd8JDuuj$$5KBs74nl1aN-SpEQk?8hX0BH_|5bP0;lI+rG{O^ z=u9v}|0=ySpijwmaehK^ouIsR@?Eq?6ws7HI&xH)#B?Pm1~rw@rBeg~2?;hC#84ri z(iQjx2>-;zW0jE8s9Kl>&7gs1n|9qI>jRQWYlss`cdRK@QB06-MMdl)H&$|{Lyh82 zt{5ty76K0?!;manc(UjOXq+1^q0&lLdDe8Dd`cu?k$g%lad?)l5X-GrD!$5bQ`l>` z;W+Py)|!g&h(I!5flhYNRSzyPK{B3FOqyvbN<(<*iDL+xHUeErm<|Q$Nn$AHG$k>F zo>CG+h%`1EM{VS^lk!{|KE<{mM1V@`u`E9Rh$!Iz6)`ePPc@Sc5Rg4hmc4{6Sg3q= z6`C3`uXGdO2(^Sgo2&}*GRC=azEH|S@?Cyu&xa5mOtUWHD$*h!qCWA%MHxLJ9vySh z)tSjE8^Oeu;;C+hwTd#*$|KkwI1X{)mv~gTz4b|%E#`>hqb5zlSU4G_v^KQVwAwI) zoL*xHRHl`$fSF#Vp*=m#X~G?1Z>lAMOPquguDvX07~l1CejSv+!RVWrPouGcokN15cc1QpGpI6YFusF7T8^RS%ApA)}a zQBF#HssfL*4hNlKi9A9$Ni`xqZCMKC6jP*DcM*^Br~(U}lq0zDwMa+l#GJ=siGsoa zg*GR($D$4^D=&Rd2~!%03+drzr9n9LOOsJi?8HhsMe9*cb5Hyxp?wt6CAEpvB~Yd* zazIyT@0qmUOPW)paenG^#ge6vPB=!7b|*Nlq`AqOUmCb9CBmGPv}Z|a?SlfLC9X=B zdnyK_!f^?KQS{^qN^}}^q;8m$PWi};NO7e;y1^hIu`@zs;!;8>L`H^dm1Y9!LAtPg zRB2m7JXI1s7`GH-tnF9uWD=$+R>y6KNQRqN9|+=@0e3alIw+`C!lY$By0gqxm14cV zLV975onqo<@<_-?o+f@PNTTB9snTPZP*^b*Tq^E1PE?NA-o?)NLx1B_NRzG2D1$DE zMA**R6xrH@H3VYND79D)@ze)uWLnk?iH3I5B3i&p~WH?D~n{ zHLqB129%!ki7Z#L36QX(G?x5cD7lF@TRY50U5QKobddTi2yK+s)_B4}E=i~|RPH{j&e zvIfKe#hj9~nOJ&k7IYP{x<|jzHxbK5~MH&oWHa~ zHG*r=fE40U3xZ@N)6<&or$K;L(4Or4m|8TPrQ&ZS^84-Dk8W90%ACmZf6j`J+!Vjeh zw&?7|6e%b!3{Za{;e3}Y#~92}DFbBX2m*&hHk|@W=t+K|1WAM=blMXoJWVw5%+2KS zJYiy(=9xy#=s+hSsW4-3uOjy^NOv;jdT2l~u6s&=UFa3?l{`D86hm;lOugULj54GY z%`7KWHr%wy31$F7DCoR}>nDWC0Es0u83jc)&`T)7=b0g-BhC)TwlK065rx@Sta=!Q z4e7#iq=cA)G0DZH1@Q-6gmRP2L2@K$VOWkuOw>gfgT;-ULir+zh?!tnOB`N;HHL9` zp^}x9K!yzd2ovoX?a}Hdqm!bBroGdw9bJ|{3yYg-2~jZ0OD8L(mJF@`jZ=Zh_AB9* zv(RLOa2pZQ)2*@?=f*a#JQdZ)$nWSgzmue+W)*`IWRBwrptFd`;&L&io&Ax_1zRjn zq!fuzMpruWSP?TmoTrE;xG{-vv1f~3zfuma)AQo!p_+jjR}~h$xy1QBWxj-yi9K+9 zvIMTXNMIISW}*6Vp>`>19UlSpqcWHV>rJ22yggWuf zNq5S)ZwEQP+KMbVb& z7Ee)eFcLkR2OG2$?{kbJCd!gFtG@KmXkUGm?` z!A5E67TM;IEu5bkl>knDqJssa8(dmiC3k)(hf~xgzCd9mk*ncfrKK_?3~~M&s+CSh zOj*@3cko}-bu8`844oI>EKufjIi`0Hn+ET~N2Kr~^lFgaEd zC6nbPVJTXB85)k&5ABglP=7l9!8Bu4YT`neiOH8?C@xi^gyqr+wQ$!Xp6p&K?4?v9 zPz=jb<|TfMrLz7eOjaXzX)uQcv4Qy0>}cs?e(@=k?yHKy$4|+@kV;8G5tZc#NlM7# zh$m6yLM}?8_wae-va7JjnpOZJprx;r52Fk=he79SnU`$;*e9( zECNR0$o?vYkZw$dG)xssYEo7pJ<`Y+kp?zYHWik{C56L2V+ckBOW~0I7$hnp7*xmK zdlG|}z?R6`1sF+I<4f74CrMNzsWQ-^ijp*79?FF~+d~qRM9rxSfb+q`qheAug@l}{ zpApfLcQqmotpl9_NNU<6sOiy1Gfko?5;MT>1fwk45;Sa?2KV3!(zQhm;vgLIquIuy@^*&T0sb}x*c%tD8eQVDw)vB-y&YKaF>5=TTrQ?#;(G|KD2aZ1T+Ot*1h z)tYekMRLqCL`Xa|%LF1SUg4s&_eP>Tm9c|`_6vfp96c9u5zf1jNXC&el}dLOiHN?s zP}Q1?M*|`Wj@%Nm7EZ^Z3Ymn?&~TcfDe|ixCo@4HrJ#=@=VhbvMA?WG(6^FKD-DDx z(Q$~%ZaTUn+D~F=7YrgEiA~2iv|Tu19ht<{BaAKFf0N|y8`|<>zM%@saxPHbkC#pw zv=l{)=U%uxx+y?bR^lp9#8H0H8BZ$#9D=lJ9E~R>sX~Y!C+){u`!L}#$#6FXqJx!_ zY5X*CC885aP70dR@2&y9d+7RhpWMv|Kbjp~$ANDLF||*lLl3Z-=rB;l}ItEab=a28eeG*OH}r< zBm#dF=Liy|NZIJ+fBF0CX zLrB=rA+BLbus%z~!=^RG8{ovZXsG;p-11IW#)yYJ!?nf@3$%?Dd+PGs6j!_n`KG$u zO+doklsG8Rk0mz3-JgnFE=YP?nvf0c-6J>7DPMmUMhvZcN?anci{XeOVL&VJR{ERj zus#CO#^lA)-GsT$s%n?wwb3Esh6&4j=&wX2j&S<1-c&rzRPjQ)P*!xzL494UNJv^_ zf`vt)Z0ILlcZQpI6>d!mVI}3I@NyLH_`=1=r8rI&Yef=C7L9+?dkw|Cm!b8>ioB3a zWtuG@VGHJlii%Pwk6Hx?y&rr2aY8UQ?g@K8Wqx)(m*S7`EgT5dKD4|hmfN& z0rU|C^r&aWdeh=l-H#2g&CFe(cuWf^pPun?1;WlaZc!hUnQxHPV4 z0Z$AaDGscK_f!vy3+a9mx_1QGV8Rzy&nssZK~4}g4QE+b7r*dLtRnJ&&7ymIv0%lE z(+RM%C}C-mqm=6mBL3A>>}ycavQU}uKyiMLa3wAd!KXDA4jWIHcRYTP%Ud0Pk8qgm z!s0y2CuJu$LnVJ$?fWN2f8N^5AsgiGh3 zl)7=KAf#1XahfncIW}F#g~6Yr8=D_H^b=v+vSM{$T5s<~(>3loOr1Uza_QVA_i zfD&akw9YJkSRm#Vkn|~0Un^k=gdra1brw0X6{{wZlwnd?xYW{{>#i=w{qIm0rMs&{ zzDUTpAHWO$q0l?FM49DYOCk zc~Pz;QHfxVaC+;V9y%I#1}kgIhhV)$5sD4%{!56M*iOgf2t+#eO_?E8%7mrG-+&=R z)<+0;!iNIb^x%&2AeK9O12G#rLuYbPB4WE0`8&EhK0<>uxg~WFWi?P7oL5uplN(;- zMtuV`b>XCuI0^@+;6%Mv+;tBr%0*_AA)7Q|exyje8R7Q2^XqHtV0WUg>BhSx_Q%T#WxRBDQPMCirp}3hV5S7l9Mmn0m zJ|P|*&k0P36^{rLXnY=A)+NkCH0MC!6Qa-zVwotvGY~Y!=AVf7;X{_7>*xUGJ(ARQ z!kGky=WdgO!X-91`qH zVewRLs=RP|-4yhDWwPtt6zPM6rI#JB^f?~S)h@qJZk4Hy$I)0Aplf42(MM(|7msaJ z0mNL=;3O56bVwD^VhutZjS^bggvRfBj;)ZiKRUe@4{fGS(dHpEw7PI#k-IXt35VM! zZvFTKshBHEA0b^gF!k9qgmGlTin%0kO|? z3P?kNLY0IHd8gvMI@t&+fowqA(h#^%zG>-32pRI+JPC;;NLNAxm7&f`Y6$^qGb#$~ zH024H>C2OVoTfZQaMO_|U^iEuQrZv6Z$hsq`Q-_@oR)_bF?hn^X=z!dbUd&~zS1C9 z=HwaHLWp!Kua5P861tD#U^u#NW4xgQw3P;P(Ql)Nb0|JE>dNzD zurF>*lPRmP`aLxKibz*AMiZzOe0?|8u_zBP<8WY6qbHx^FrXvR7-AV-x(1dGV{@=8 zxmq@yi+Qau%8kJQ2|$ugIF!avv8F6plIT+b<1yvucgDXJ7B!|_s(_ue!07NmOnK-w zFbXZhW|>H{#h`%Q5pE~Qt!y$9ob2N)MpHu7(osX~d zHWJT?ej6Vlj(#untf3BE_KNZ^5)qQUKxic5(AH%yPfahsC{B1+J-GBptV}PFl8Fd`#2VZaFh3tBS)Jpcm$cECu$)qv{(^lv}vLjMX_ zs0fx{REFX{q=FH`lG27RmcFMk$^yS1TUN-IENyl1-o!lEXnHXabdSzl(=EbvZcJcf zx`e!zQRWF?h~}##k*8uxV0MjtCe-s*S~D7f#O7^We}crH3U$S`F@B$y z#wEu(aaASmBgr9SGr+n6r8l>6;@NY;F?3?rgA%`^IZ>*@3;zP3t(qHwJrZs@d@J*f zb62^r_0dl{v$d z>k75Y$sdcjTPS@WrnJW8@f0+|UI$Ur(qRQfq0BQloM0q2tj{lFPJp(CFs=5D zOm<6Y;F!)Dk!`YELSnuxqbxLw9ePAIa3xL*AHy{#q+3Qw&@;x{faNmeN92ue0s4mp z@4|7`LJ1^5`6AQj@1P@RlFu)(J{W-WI-#ie5u0 z&&ew$q)Oy(m83G{6n!Jqn_g4n7T?k^3tf>2P7mUW@4Wt7Shl^)uRp>4Q11)1z!3au?U*Kr5uxfCw@I9hyIphF+ zBGV|52&yGc!4fLHx{~HDF^TemkXtEVOM~GWk7ER;Q}S|g?FwBLNcy!9oL>5jJSfuP z#c4Y(O5mN@;p5@EJ8peE$}#pj;w^ZsPy=e|tM;TSA4N$c%i?JU{Zi zxMSq|3EB6|PLb!C9U|X(S)O&W?;Wnmtq4u70f1ag&2_gUBZ{*k6FK@VD zYd+0W{zu=*e`mE=bbd++P`!?g%(aBd z4t>(p^6&I_=x^KXyfFXhv;X#YC|~}zNWL|rb1lb8axF88B5f7I3x85NZq2jgg&!z? z3Dq<7b_QwFrcLMvJ{dNHvV*MV2$?vmX;yFP-D97NUsgOSe$HHW_$>XFebWr#a}Dsf zuR5?QOMD&o|IEL|N7>Tnb7|t|NchhK|J{{GS6)cIT6t{cHHq`TX@!ttbPGa8AGq#7 z7AZe){Q-46{s;R%JN!E#s+&TT#i2CwL1w}~F{7-6f6XlDe>b|bqO!_0sk+8}{bWzA z*H5W?t1;#)Fl*; zOfl<(;*s@V7yZ8?ga1ne12*<=7}3GtDTV&9(-T*uhMT3ofxxc87r(BrQz;e?8eW|7SQDH9eu+X;_|HQNRkoN{_N~A zLc}a~$zypiJG(ERlP%cFc|#Xgm7RMfOb+weBwj+6WDzhqKj}}zXN6xFdXUz5um+#U)^p?>d>$1M$O-&D0Ut2*`|w7NoI$eC z?+j8(@<<`cCmrx@6d6MhJtPIB9RH6ZBS{&4k0M3*O>qd(tBoq7QD1z5)8f}yq$$V$ z1;8o=22DXRN0K4ZLCDjEbd|ESgGhr=XALMBBuh=pm!~b4(w0Z1E|;aw z{x3?pOsKz+v_t(vydMi%{m9dedU%ERJkg^sS3|xB6P5745l;x@q$AQ%F4uzhPGC35 zxJIRh@^LEiqkQur*E->UCpZ(z-71t_jCVd#1s+!7T`UDWN*ye;SLA;c%D)n_9HBcO z|&a<$N^ zwB8|pQfU(9C?XN%cvc6@!Kkwb{|Lzy>JrU|hyz;%DP^oS-Q`X*>$8R(>K z6+pT2mY}v}ea0EKdHNpG^U!B9eIE-0kV@ax0#3ZX|4+!;|D?R=Nn6w<)W)$Ai*Yj< z2#Mik|5J$#wKHv%e`jlG9{-cJFQ5GHkX^ID&uICN(QgxmKZkF}FXlJ$`}os*XO&h}rV6SSt2V0ksZOgptF`Jfbx^%ny-~eSeOldF zqt%pYf||vejhcO$FEyRDT5Xv&s9mhxsNJVMt?jJS>gshj=w|Eg)-BVm(V+lzay0g4 zwBbKE5EJmRLcKw~UA+urwNC96?M&_6+V`|yXisVxT?bun z-9G(B!yMCM%NLfD7RK7a+S{tK=2%Btoz^MVnby0lE36x=+wEi`Aq$ZAPQI^Nul`m2 zk>*#;ecH9UX&I-l(l_ZJ(Lb->so$&rOn*ZEm;QW%)iBI(gW(p# z1BO+GO@{Xk#|&o-Z9&^*#=*uhMyGL-afv639a4RxI;Hws z)l+Rzk3johr7l&EIP=qhxLx|?+O>sIRC*L{K3JEJ>Se}TT2{$hQ9J+Ig4ZTejOaDB0UjD7;R z>(=}A4f>n(bM^D}i}erbSLxU2H|V$OKhz)8AJHGv|DZpm|5Kk~=xMmrpfi{axrU*J zV#6521Vfd{r4KQg3vgwv)MexyurNP{E_*n`CIdk=5s9rEcupF%XrJRmI_P2a*yS4%hQ&PmaUdIEbmw{ zt^KWotZM5pYo)cxdb{;e>(ka}tuI+Wv>vj4X+3W3V(Vq=YrDcW+IE%AWt(jCLsnt5CE(;d(q)%~pd zQ^)Gt>AULt>aWmS^#y3j(fSAVoAg`sJM^FEzd?JQMtiY_)`m<&S3@sDKf^$S2JMz( zco40$$*|9G#BkEk&e+L#fw7lSW3(7^&{h-BQa-fKTH_|;UgOuslg0|uWYbL3-KLeM zU8bX^JaduRX`W@i-@MYi-u#kzhxuLehvrYsKbe0qpJO@K($#W_#blXanPl->9<;1P zi)^$UvK)oI`NwiDG;Vs8h}tc$F>tw*ijS^u!=pnWrKkJ#41KKyPw&psCV zztdjhnCE!W@soor$9ysP+>O7KH$(Tv^40u}u(MC_>-p#TUHtplH(^s%sXVG%RGU=+ z^)mHZ^*ieK)!(a6K&Kp-Z*DZ-WS(Qb-MkQdd&K;xd9C?b z@NT>LP4j!^Pt0FImQR^~H*?@$Ps<>S%`(KY7@T{}@_}WhZIf-QZKrLQZMSW&?GpQB zd!0RKZ?sRhL+;iK=8>GQ>aSX^vZ!;_}u+tGF>%$b&6mcAB;rP^|X<$lWw%Tt!;p+oyEUs-;&Ot1#6 z)6g?qYbV>pey*OsNzG`U)8^|I!L~H&GmY;VKQc0=mZm|bLg;UU=_b=0({rZnrq58f z9+rNVS(ZC3Ev*-$?aQsJtuH_azqHOdCkRH3ge>JB zh9X17N@1oa+BqD%YByBkmolohb&9_~HR$*w@O#bAn)Ss&l8NM=HY`om~fN_QKA=4_;ho(cOOjxgD=HuY{Y4aKL zSu?R@SXx=KEXORzEhj9eEoUreEyS8(ZDnmonUKlAXC!2+HcQt}H$YdQyHYnw_q6#4 z^rpA1zl~%u7-?eOiT_6Rlj;)nAoX3k`;E)c9*2yabu%RAPa8{Rg%|U=SGCyjA*|OS z#}|&T9N#*AaGZ4f;`rS`vKi6{G__%*p~NuOaJAt&Lxo|I;d+DD;5SS)yleWx^p~l( z*=inYUSi&DIbyj0bsul_TIX0FvaYnQvu?M(Zhap;=`m{wEb3%i(6-sO$M%u!uU;-geGS2bU?LH#EDjSiaLnoH0R>NMHt z3ClI>HD%gr?Nsgk+7qylSE65AtII{Zeys0q7-Xn4)EMdwGhx-9HXJtmWH@bTVQg#c z0-JW3@d~5am~9+s90$8L-8j?uIC>n`)Wei#nrOPq)XQSD47a!}zgv0RMB5_UW47(K zH{hLgwfD65b6n#f6B)!n2x)|^`G!AF{i>#;HV-y?i}oem9^I9C&d|o7hGnP(mzEjU z8{Rg23=ia_;S!_4INEr%u^QgTBI9b~i^d(Wq$iADQopT^A*b=Nj{gBZVuq@d>Oz%T zWm1h(c{B~0XEm>B-qzGXZ*S4g*DljOgryhYUvHjGt4r=Qi8s8wq=>+Ny~pA?cZ41S}#REYOq?ZS6gqi z&a>WYebV}z^-b#@>j%(0&eqYUw+*wE!G_Pa-ELcMd)~GK_Ua?sCi}#|JB}}@{4ZxP21hK6pU%&Q2Gc%- zF}E_SZI{}wuurnr3U;0m;(vbC^V(OmJGF0XSL&aD>|bH1HZ&RL8y+_N$FSY-0c_20 zhStXJ#zFAPC&DA2W4zC}#`uNlQuNfXn(si5@(t{H2E6{utR?7y>#TFF+pKR`TiY^i z7ufRPuTMlTycIpopSE-0jgPY5Zok|9h5Z-%7{@+J>o$hE;~3|(=W~Q!_y?X-<*CY5 zH>uXC%`;nnLw4lNC0(!Tl=8@>f)>!_q46^#InYJ9NcZWqg(}vIFeSAG% zqPj=*m#V9}FMRSw^=$P*^-A@3@V{@>EY&;;KVh5Zl%|u`ru_@DsnRuI6n2kp1H5QI z{Nq*dtZarq4Bg-}4KtP+pEhgYE)obA|GTPP{ z*Il4Bz~^6~eHuRhJK9g+?`P|-hktk%Mu$)7UeayR|D;#J7ShqsYFMEr<6+~y=;<#p z>&^4c3oJ|F8$So1;vQ)ASO z){Mj0=X#A-Q?Ho~-}z3>y_%Jp4Ui_f{+gCuhLKhcyuCWrbkz)K^D*sl^bDu9XW-2d zU52g|MnRdn&bn^89=a@DD|pG7`pz^s$+IK_e&kNoF4b<;QPnZkarEyQ>Q?G@>P&TK zbvJbn$U}eiK=m+nk-8XT^+xq{NXBCI67^E`a*Ws3z_VPB@%twAX7x5m`Y!cu^D_Q={>~R}E?!HPbaS;IYorEYK`OgkTAza=B);W(~%I>oJD#k}JbVZX(8VHL$#OhM=L*FvqaKu+XsBu*9&`Fa!PkJa{<^ zt&6QotV^xS;m579uC=bWZnSQ)ZiXG%Y25{Xey??(b-(o>?DSE10>`Z_S_o;z)mt26#kX zCP06yOf|6F`%DKh&N*&6Z8~epFt;;zM&H@jJkYF#?~{+wPnmgwxytM@2hG#r(=ULo zFEy`*zHc;dHt#g=Ht#bZM4x&bed<|rhNYdQv!w@o>wy+6`mlV&AIdN~sC~*|O8J+p^Dc5aXre@C47oR=2Zuw)U|0wGOmu(f{UKi>zhV3DzpB z2VVJfw8;Xr$5OP#TC~Gvw83uh{~&mO9DF}(%>c(cgWG-4V`{_x*FWv2u|*V?cWCu9)+bk4I7Yw=uBsO4|`wxK*VRPh|Uz*%j^^ERdx?XA=B-1 z>fP<@5O>zKoy1SMeS`h`w_UzW`p^QhqhR7V)>u{7!y1qHqWKqx>;=+GpTpx3Xkf zy1~!xZ{gwhWy8}cM&w|kr3SuzBVt1HEDJ45EX&bvtha2kY_sgL?8OM^F#Pfp@W~1M z@l5#qS%@m|R--i=afM>o(23R>^rMZ|8PJY}(2V8KiuKTlZP13j(1gR#f)mgH0_o3$ z^1iF_D%L}7+vkf*y^zTnEizPjGZ`I zIWisH99fS34&GsOWIKjAiXGz}6CE{u#rNlNLI|JD4?`?$JU@}I;p_ND^a}I%h5QnJIll&@ z^G*CVjL-L?M?1_P<4<5@MO3X+nW}E8ER0!sl~I+g8itY9c-2H$^g2}|?D;&^Le&zC zXV<_(+oakCTfJAcUv(JP`h@BX?Dcn+A1yz_j{z++SRpR3RJR%eB>bF zBgb{8b!T-Mu>GC&JrE-qsMjJ&lCLk)mkH4>k3OiMuBW!I*su}NkZp$j@ZFCa&LVb| zVQgh=XY7m!Cy)MpJUs1*#ww!+{?uaQ65~>M^qY;l5gj>Z3 zWt)mkWv20_38p$z5ToFE@CVnJHkmfVvg{RX%V}7ZR_1Q7Dp}_Kh!7ORqEx{v_n7Mt zCs=4+4r{W}yve-Hyk8h6hDL~)kX$2dND<_=3^pWa>48?H`s6|Tg<5VibcZa2?E`yS z2^wQX+fW@5^@Fwx)ehPsr}?uOfwV(=bXN61YZRd+>cIWAVb1Rscz;|)`$*a|4nwb4 zrmhqE#RcdIH=_@vJ>D7gcC@eSj2>&>}wIc>N>=b0K9VD(V{Q z>L{e@tcsvl&PGo>5xws`slTOtY?g^fOwwqwqFwV%!w{XMtt<8v9-)OBP18*a;a?Nj zlR8+9RF)b_U^l%hF|Z z-uuq}rB9w5c&x5-;aksqb!dv}sm&di&+4+2pT)hv&tjJ?=U9eiGuwT0_^Yn_hx~ol zR};^6Kf#;$bHh|IEl|EoAcq^1(Xtaerc`x4->D^jwCU6?-(Bs_!zs5}h2Bcl1)vI# z+jh!qXlNK*g;$k$HMr7OtLn@5p|7}3-NPxcDH(fOtFj97vr2rvU{+oZ->d7nyk4bJ zL2v2b)m_ik;8*zP|0yzNF@59=U|JAv7IPjNi)q8oVi@vt`}6l4&6_b{!>y-YnE3mY zj*qT8c*){*I@#Z208wZdLDhyr%s3@!fQrhrY8y z|NG>d_pLYDw|C#MK=aA|E4uyN|GZ}(pZ(DeZ~iu??!GR6U$u1p)Y^|vt{i^u<^Qzx zA9!Tq-a8lSUT++8Yu1W)zp8Dst8lt%iN@3C+gtaluU`35r&%3-Fm-+S0keO_*MF@3 z&}~cv|qpRp2x;M`^q!-|M2AFCti4MjpN=f zd;eK+-}kM`yETkrA#Kd6O5Vx0N2B&Uk754F$bcZt<djy&*^*Ko~0Tzdj8{&_kQ?P?XL6qi|Ff%GrI9zW+)>>%ORS9AuHQ&{`|-fC%*It zrd2K8`kQ~!e)ZAZ`igb8e*g1_pL{m<*=4);bngG+x%W?;(6MOz(GP613k$~IuXA6x zX6ScgUvGM<Xwu ze*aAC0pDNpL*tek9haYa;SybK`EAVeh1V=&T0HcWt>5U<@r_0TT=}%l!JMCo0ArohRd}+p(;d}1ivZH!H zO^45CeA7-dX=|r*J9|&vd{Jd)uRreS-mlhk*P|~unGNr+x@1M>l!u=_vg7w14~%}{ z@^f148T@teGmrn#rr?T|Cw_+N{sm#rFZuo-@`&yp0$R(Gm?#%fz z-Mu;|q`R#;wHt@?=CB7lE6-WyQg!A#qAfDc>C_en6IVE~1=Hhksm?=gf}*#?hWLh{ zOVyL_P9L=G)LDFxMU~$@3HxN}_C(c1LW4uiyGXC;PQXAANAhClo220gsj1bHPD8`h zyh^R%)fyc_VOR6l$%uuak&0{6sdH%)wkQT&m05W{e;w{37mDNg!IT=V)1~3pw7@Lv zeH2S9#aRn5LID(=H7IMS8Y-MzwKuGNwy?M+px0V|_e(}hxoCsx(4V87Z0Tc9{!%!wMPtFESKPMen+Lx6d%=-$4%_SZ z9K7<(4Vt4(ZT>t_KQCwLKd*74A9(U(&$31CTV0pUzU9@4op$g9H(=Yw{w=28f{P>PX2CcjOyT`tM^3pChI)7U-rNibU#Vdw?b?qNtwSRoz zvL{_xAMC&H*skf1jvSW%&jm;F&$*}V$2D_iTzh?ERlz$Ghul=Qz0>s9nohpCeTt~s zGymXc{wCAi@&|wMPT0LW_~5=nH~!@K^mx&X!H0Nt%U0-B zsR;(_%vW6Ds|?f)4ho_}y8%JQMElT+ZwdRrGK6=a3430YVdV9^cDZ^vKXXWm(h-I6QY1?6=RuN^8INk9Wr|J7p;a+g}N%PQzp$&ke5Mf zUTYkriqRi#=1ju1e(0{IpKiX2fAXiA=l=MzbVx6hOnE@LfT7Th=JHNl`KJxUQb|aqIt9q=}gaOme9+}p2 zT+td=w{M%WEBf8%ed7(o^|O1ox-;jyL!XRu^lT`+bwHPv*F9#uzE8(hqc50!)ARhS zj8)M1`I5%BfA_R;*WX)p-i-a%FX?_^aSX-(zv~csY3MM9V&Ptz>af}r(&36`>97`p zBjS+_uco&7H3o2Yu+rHJN2u>dBgkM`{S#Z=WSoMzh>i|*`t2E#rR@} z*Dn6KYW#`w)xMGAR;-)1n*De{uXl!jaj5dcuD7YLS%2LFSFd@ve{uV+Ki>DL(^4?H z=er%pw!LTQ*{9b1I>|P4ZJqy{d%h`uC-cRfv#S~N58Mh&?yH~ZpvU9Hwiw=}jc6D5*-+b=ZQI3hC^;2+68Z8^|9zcpt+*QFF8duG^ z^c-KeXFlt9aQVK)+>>)h_FMK~HrM0Oo-do;?p@RJ!1L;jwOdaQyrfcdw6Lo7+^=_3 zxBsohYMp2LZCzgf_Lr>8q=icDK=O=vjis7QX#;+Tnd#8U!)~Y8@4&OQN zvb)>Qc(23RLldTYM_t#xU`USl-1XlXAKYL*(0WSd*&aEJxnj>A_>NK;K3^ty-=CZp6e(}udtDj*0bNo+Q@+3cf@|JA_9#DY;BAGD7vH`4&8_x6HI=0gzTyt9eXXbU z=6eqB*xX}(Mm;~PMJCMD8Ocnw7&XLm{OxZ)+H&loGTqlBhRV%UTR0~EXfx6LF@=i1 zLbM$H!()olVL9q7*}#Hsn9rhiL*{-M;d^K!ri%_Q3@WuS-rz?>(?rK$uuZKxvEy=7 z9R%+d9#X4Z9P!|qTJKV|7c>jwpcdGkKQ;WDlYXbPQZM$i)c^HX=54O$8_wOR*`}Jg z=lJRu&h>u1_1by91-{$36_5YEv;9w<+WXHA*mitm@BgouGmnRA@8fvG7z|^NkqI%@ z3}+}@H%rFS6?v8F4^64|#zkEZDwTS8^7+{x0Ft>RvdkbSvF zjHF)A)BWRl?w`NcneUnNJLmU(f4`s4@4QZ;!zma_ioxQQOa;5SR`xK7v)X9} zGkGLH;Ly69b;3XPK=AsuXy~K2X-^os7%Iv9{&~p<`L(Q3H}nOZK+pZVLvSYu`JXSzyUfiUMI>P2xY;G z69TA$&{}PzI3VJv<*Olsozq4It$`!h06Z|5M;Jfo0{~$W>>v=%CxJi!%^rhrMy^ij zBbnFBaKLiyR~!^$_Qb(&EBX18Kc56Uqm~nDHJ|V%%h|M=Odne>{|$v@9TUL>|0vep z%5Wu0IH%Oas5<33=yTsz@}i-kbXRLaL_Dm@5MMQZjqq%2oAZc1&7686&}Y1O{A>UY zQKaM$(>Bps=070=6It+Zw3O{`dEYrX52Z7`4a{AdqOI>=j4!d2{ym$})O%DhZ?iZ= zG9!1PJ_-YEJD1A%?y9kv#a0Ui1=Bp+{v(y)W;gp!akYE+(0t+iXh59anzz?iCUJKP zF7xoex7@@P&!@D> zhz}Y&Urt>&j{L2lrQ0RP!a(795T}*(AU#Kk-#W+9#j$icSZ`4z%}mRfzoK<66J#O) zwr|K)CPI0UQjYCZ_W&DQh0j$2&qgNx|9lp#78U?y*b4VR6$VmqZTOF%`M)W%>9%rI zsDN;ZM-X=#9~Lk9taZ*bxlFIi3HOvbID3u>}gi&1;e^Yrk4=-cOne3)N%r`Q+ku0=8^^vx`I8ai~QIX+|Xdo1eN z@ECmHN9x{+A^+Fg7rmN8{J+yi#Ign|EVJ^4kHHHf#tS_xE9#~$F=Q3w|KM>muuh_n z35rbAUlF8dzE!iDB0r!-mbsiG?+)i4(7kw!EZZvRM&5NZ?Y36lf@F_E0)x%UCm<^y ze^p3rG-JNXzhE{2KyG*g$G?#qICd1kLDBgZZmcn5+1gu$MOfGhdryIzK6>f8>DrVX z>{I!9ZGb47KVP25>&w^;-2P9o`&THu2Ye?~7Y1LY@FouE-@-7cGuixJSChV4vi^?2 z#b&0#p9nj2`M4ZobEDcB1(m?utqv%R-j+HR;LHr+b6Tj?7pyC}xWH2Fk+sz+?VV)A z2MAi-J&}FIu8)WgvlPmDXGpr@Dj;f6#B?+X9@iFwMNg%gS=ukfmPv67#BH9tUs7RJ za~WNXZg`}mnxUe+MUSM+u}eMfR<(j~U#ggS#wkzFl9U{KS^ExB8Gj5lce-B0GwqpC zvyn-*=;&)Vegz(5%{$uBXpTh@YbPOf4Adz{&2^2mX}^?A40sGgvdTk z#=7eBY(bWXrR;A=5Q5Efhs|E>oC(KIxtz$bnH5PyMykih4SRZ-Xx?$pc!SKk?q7nx300^Z>4yCw?t| z>A_%@Pnes-!74t7!PpDKaK+#*)^)XjdD28c6w{f?A|f1BrMfvgkYz<_KQ%^)l=&OK zl6hcf0C8*x{$VcKF@lbV5FhzU_6dKx0{d zo0M(-SC)g&!h7+k+7!9P-saOiiFX%|c6G3dxgG`ui$2++y!lsgd=Z3L8pNlgLCZcV zYH=Hv>JB5w7{31(SJ&}IJ^G_C18A-@^J@a^nA`ZJg9vu3*RQ52kPYWJ{_w};to zv;DZJp zM68Gv5fKrwRz$>#h=^DbDbJ?^hvO%oc+&Ax=*zMRjP0|B@l*1Q zpL#vx@7~V%f`UMI8{>qYb3;6VBQUT_pzlG(31=ND;P)|3SiGM=|09eOmcpKJ&Upe$ zrZG zAHka>@akK@e+%>eyF0`Hjsq;SFXANZb6SY|aRgqmSm0IT5C`C_6>vSI17L$8kPZfn ze@I~5orn|Q69kUi#xelE>SBSfy)oU z|ACL9ya=DbZ-gtn5Le&`T-hq{u}O>vxD7|(lSd0&3_ilzodWM?j1xXEQDAKs{tsMu zqriujFdhK)=|jM^y972YW1O)1Jb?>_84s`rN8mkZD};^X1Xe!>JK*Yr1U?R4!j)SE zK0BLn!u3Z9TyhQL0rtZYct7%yaP>xkjhBHJc<Ma}8xXkYKE?^3MVbijdsg6@sf-8Mj3aQ}3V{m` zME(IAz(M#7vSTC%Mji?UEqzop#vNOPQq(u3mkM6(gjS14&c3giNFyLF^@3mQGw&uF^@2Lqrlsa zU>@PEPlT9*BXHPFA@;=)IQ&w9w+u3m@b)JK-nIq)z_Aw!9Or@`IOf?9=x>ez-Z@#| z9gKN|DXjuW9mG7sI}j7$h&F+Df|GE$n*0C3<9 z0kJ;fsR;UqIhL_|gp_(2soyxDkCp0Q6lq0yi8caPwrw312uZK&IykM)0oKD)7-M z%nN}0|0wXWr$ZoJ9|P8J5ctS7%p+V`5V-tO<`F)!pTK(LCE<$Z0GS2r7{S|sJR*E% zhrkB7UdTMcZC;3La0G783w&*ud4z8uZwOyU41}wpNw{&7z%>(@NB9)} zN4N#$LHP8c0=I5M9KhERC*h082f{b56S#Q-(gj?*R^ZE9kv`y-@dDRChk!mlz*p}= zdhcSHh3E?b?_ULh=Me+pAIMk2f1p8l5p{;}(j0+5A&rC=QLhNQ?-O|P4(1X5gYSet zKNbRhe+KsK5O{7C^9WBtm+0yE0(-A-L50oR}UoQy!y_Io!Oa+1Ic z$Q!~lD+Hdt7kt299}fY&zXE?jEQF`P2V{$gg6vOVCEqL?U*MJIxrs~ zoY5&T3+iah?Gw1*8Rii#M7ampA4lN*2ME0PV&)MpLS7Trb_!fH72kpPl?2wJ90==}zz3S4 z1AK5);F3F;N4WG!flDUiJMcb~6XE^W3tYU8c|d02_yFGKD_MX$pheg`PT-qMm`Au1 z`h;&?B5>y(dMoUjvIgx~BG*mVHxfZuHvc=R6l1AlB4`1P@f z1Nhx!f!{A?obdP_fhR^8C;V}n!0)%?ci=aj0Wv3{-2nXgn*{bCCc;0_7Z9FaCGh8a z87KUS3H%l9nDD1d1)fBV0XEjj8z6JcCPv_ueFav)pHM;h67sMm{>zSk=LJfL%BO zV~9ThVi*I?-zG59hB$%ILj=kfFitqXSzs9Tj<9mFKpy%)X5pm*Q_=SV-uEX6eD6u- z1wi}z9&pbZfuEzVB0PAlz>m>C5Pou_z}6#~M|ki6fge52Ji`4C3;g6z*Z~imCvbl& z{trCxlE9Caz#jPF9RfeSi+P0a!Y06dI0AP~64=?tJi?=B?}Xo=ZwY`t1Z~fIv`ql* z+#~#URAA?B_yIf6#}FRAP~aC=Fpsd~7J=VB4}0L(up!*NS>WgBuLxUq2<$?h5FWWf zVEc8cR$gkNCJLU^c6VA~+`2zPB1_zv4jt^Z~y>zeLyuF2ems3;bja1N`4R1YTSQ9^gMEf&U^;0Podv1YWV5 zd4yL#BCy|m%p>fxNx(r{3~)D&!1yf!4E2WaDzr7iE0ziHCzuytDUN{KDe$VBU#|Ihk(nbgt!;SdvWfJ>$iaS3AC*M+i?W0Mj8lLA?*QjW0uia3FV+XM!YSA^_3fxf$#M_4o<(0wZN z2)G9!a4wF(QfL#p9~D?S3EzRPjRJj#g9kWks(?Qp=>+dJw4rE?{J8%Ssktc-F%LImY!yhOhuL;Xb0wbH5M<}!kj3AAK%E1DwZem`5{c!|V zZx1m8N1(JbL^F;+8JdI@$UDLq@`JDvu@c6RE<)uNf%7LZF95!u51iK(Vi%4;-V=Ba zvDK-D?>q-1CsY-Rl@9e0xTSEjR+3L)`i-Fq-~qn#qQJeFgAu+5f5P{B1b%@2DFEz#0DS#wf$yCHJ7CKZ0^dd7 zNVs=U;I2m)C)~bS;5!(f2w&SHa0g-|+;*|RH;_)k*D;0=?nA#xxNEk+H`g*w_|_zW zJFjJ&uz8BWofuyT-&icLWfS58?l@22R>VcP{jdO;spyXY{uNhX6VgfeGGYkOi6d~! z?IAEW-U57eo4{ADgdcG8T>@W4UILkuJb}04nmu9Zc7bL1KcRQ6Kp*-w!Z}Y0WYI1N z=c2zMWG@#u2lomH=RPa24E}_r_#a`(Ljq@`Z3Ted*}%K+5jY(&5SqbFXu^3g;dIy& zPHPirUWea-8N&iC2eS-e26PFhJt)w6G|Ld$Zx)z$9m^1AA!fq-BL!wNmLbf)Ltr-M z*Mzy4ZxhVLzwxnK*t_@2j)x_IO9>4AH95{Cf90hH{5jzENKPE#sVxhp>P!9sY|81B* zoqlu(w6W8#MGT0Oa5yvxed`5s%UH%oOoV>qWq@aJ1cn|I7=%5c?*)N@r&)$D3_gNC zEHF^O{|mjn?Q=WlclGqP&g^dKYVYis-_={L_}P)(>}Zbl_Rd?-(UCS`7ezM0qG$Gk zd1v&tHuW^I-fnVl>TK_A4?eZzbAF-H+fwqg6+ie-XKvI7b#7#|*Vb6h+1%yl{cPEm zRbnpZZ7CKCet)H>I4fW5%jOr9{gNSGnS+8m$cK(%zZGx2v79r^26LPVLpj$hzaq-b z%vNV=;G2~l@w@%f3R7N2tZ@f9ceh^&GP1q1Iae6S6^8VsBr%usMj^D7PfFxzkF zC!*w}-3&TZySppdifvM2_6Fu!wQYnym9=J}PC#Zm(mDDGh3?(#>9 z)b$rj*&*8kt@AM`boZBhzfc}7T9;?S!@w@ehSt+rb_8(;HFsxAOE#ZxDUKB?X5NIc zoD<#KqHL*vK47k2E+eaF7mLgF%nBDde{=WnSY@ENvd})*l+V*3UT(=3%l?2~L*pjb zi5m6no}NxUcb%z$55sz;RLtkCN1(WafqTKM7RyirO9LC4Y)7taQ7r^d)!M*1cdVT2 zw~R8hwP6%ZwGrN`hk<=|&)kmgu||f0golB>y|4oF(qd_~W#ln?1M|Y%fM2v^4Q&mK zo!Js%&F0ZwD`?-gJ%8HGpwnI$9kZ=a)pNIl`c~LQnr6Nde8+l2F|2LuFH!aiM5Os zc}7*GHCxHH74rkiF(jx@5@Q)BCWxiV!eXx9@ACVLCCwR3z$!JD^A<-Np-o%MSdplv z71>-q+n4tPc3rkgj1`}$uv;k8sk?uD7a}@Y0eG|`5pcW zKd;LV@YWkEIB70GXY{!AXv3N|m+^+#MrW=*)!7AI9lB_x<}zN?n9kv1!C#0=9fLXL z2~^POr)?FCJu8cC*?xpNvp_wx>a46vnl@MP29dT8U>MB}u2x@Qs`94Ib-a{ixe{1K zR`h2phKWWsI~0yGEmWep*%G?gnfcsMt}mC*RaDc)AQ5tV1#|0IDTp~dRn%1v@TRO~ ztj(C^*BQ<)rQVV|94T~w2xQCiujH2@}e=XQG{a}!;*{hkufM%77W1|hVta9ANj=#M%YB`GIo~-I#Xslc!Lw#gT{gvDb%$b5*R9(rd zqpkN*D74~kLcW+Cph)Unv~5x6sL(=P5J3j%Xe$**x{G5a3rKH|i!HMZqdx6HX;EG1~sIR-NT+JnwlR_gX>+lNTe4HDrFXUDQ zq#pL{Jw?hWLw_RCsQNXcw8-!4RNv^-B&eqtxi+E~oSyDY(n3dt7EP;ZydGGTtEg^# zRufZat6-GmFK(*jDt>D&n=hI=ETgwV70s#}7xMBVR$RfvMOQ;^$z9a^bNzwb*hpgn zG9R@UWvVeIT~IYU|0AwqHu;UCQgR@kt)@E8&r&HhTViC zo+HqVycMcpvlKl++}Dssjh{kE3=dQ#u@=*OikUW7@KR4v9L4A+(qP-P(=K-WhJ2}u zCbfdL+T})dM8w{cv$@<>O(CULc&KBJ+gfCIT|B}=!9J&$D^SRy zcsu;;3cmqjiM@iEN+k?foV4235}A`m0~sRtqh@Dnw3LT+E(-o`tX{1pB3Kk=$atxT zf<2K#Hsmq~1$R5vmWkTZG=S9thNx54M%G2RuUA|-f7CDF?1}CgSu0396>7v@O@;8X z)6)1Ul!A45dn2WDRA^x&r>UD?z`fS6XA0LFnr0VTPlZ~SKbl|NQxrm>j-jaJE(-pr z53}P=n`?Nn)UdeHFIn~*SXB}?SMau%g`N6FTv#T(2}=dr%);1+j~iIHZ%*PMwV0Kw zoD>?OZFY|J<&}#MYavq|u9|B3f+;pm8)?u9F8LZNg@{7prBFdZ&l?+|p0-TqzY7X@ z5@VpVlq;5SCCswETXHBOkeu(+0U8&o z_f)BcW$6zrDCBT`uxw0?#6iU^N}$Wn<~1|uST@lkOEqg1YkOzV&nuS`M}#p$CD#b9 zA9m-~7*pL|Gt_c*&1%MjdD3}hEiU2`hAOU>u@bFAZq8Ov_^UfZ%qCZLBGtt(-~E^7#WXg$}w89)m~WGr7c~Vxs+Glv9)8dtiEDu z{iI4^NbQB@+)yVjIHQ8jEe_}_snSQPfb~RJFyGahEf4nLnmwwD)n&Bo*& z`GKh;t^^?W?K%XFpHvAss&Ubb&U#0wR+z6XSihX@$c`2Iak5}jpXwas+;}_$-4I$e zbr*WpI#Vg1C0E=`%7dod-nn90I28=mEa(=XMeS4J6lnw>V$U*T?mzkDRI(LT5sR3! z$7v96TXqGVQHD?2sGkHiyV>icA~!~sx*{D9r)gjyo(c>0l!qpEIz?UKHz*);(rN@t z>N|>keXBLsKjMiFZ)L<>H2g?!y}dX|6*bx}$Mg)1spHB9J!GHFznlP4Bn`%Z`+N(t z`7!@x#ZXVuSPVkCJCDc4qbHm8t~BIKjYZRniz@VZ%*)A;dXB~-5VQN>Joe=TA)#q3 z4!TN!H3)c$AzUu_a-va^X<|ap95ikHEtz+`10gKv}u-35BEi+rrn5~8} zxL0ON88_B&#&6NuQcHX^3MdJ5O#ydUdn__p=A_q%2{c|y^mp%M^@^T5wM$13m@wC* z08`4Cp>*yU4yu~cY0=P9npOQX_?ouw*%BUzO4(6CoiEb2jn zWgB7wDU<`dE5a)9#UYFt3#qfv-Y zt1QbQ?V{nYmO|}`96DjcgmV;&8~xtutsVM0pu89#%Oe|(y@-IW+WP}NMG=_lGL=mnDW-;^ z>GB6letDRtz%-nhvtN=QDGqf6ow#(i_hq5?Zb&tiYo>uuqMhQX-r4UoAYNt3FiXfG1rreiAkm86U2tK5`u`*pCos#No^u`fq>T0Culgho}yerrm zvOtR-=*GNV`?8?0*6(PV_cEmGyscHkg)1*ZS;Ani9$uy{zZ`uThjj$uQ_?R(U&3Im zj;G-IvH3!=^fL6N95xZ;X^Z2q@~0Y=rnMyf%u1LpisZHW70h2$t2rgjJ?&{$6TADI zIfjKK_K8Y3nKiZmszD9LrpNvQZGA`M27%vr?EE zL114tb#7)InsYTO68EuC2<9{mS7$NxiQLROA{D{NX`f#SC$omA`ogKf3N3Ms^nwrK z!U1h?OCz^pC&ZLd#3A~i*zcJC*1ll}$n1!!GpU*NN}bdi-MIDBKa4f#L_te*gNsUv z?2pN){4ABai+R=7o+=UHqULYv@ApT8eXh*W$8FV&*yxV-3!;F`lnG-sXP1w4wb-w# zdUw58h#H7=N*T)yjjLJ@yUEok%&Dj|SM%c11@X=5xI zCuyP;m~%9w zwOZIK^HD2=RnnYYkzvFYdD|qQbD>%P z);d)K!9A$LkdLNBkLLwzMoiQa2SwDa^oV|OwN+Nv*(w-O!IBk3b91YjLWNJH5PT5N z4AIshSow;+>G-LsY*5-oOrnQMQelmUzlhetrT7fiMpi7ISJkp~2*TLN8ARGtUR_Xa zsGnwzyBPT?jK=6=9`@|jR%o5)kxI?esD?@UkaDqcI-jcMMqY8p-8%HDxskVf7~Abz z(}vbsR!r}@QB^S8s0?C%71h~LGB46jT8*gvh*iwgOIfEOsG4!VMw9~Qmf^92>SZIz zWYxtP_ijWrcyf7f5*Ru*q!kPjdnFcn8r5d5!hKA;dO;ajH8=9oc9Hb3rhNw(^U$(m zw4g{dkEtcgJz;OdOi$-wMdXNTi&80l%*mwDc#A|5>YPj(lta1;cG5J+uhdCRX)nO0 z!a$>ikZ?1l;mon3a_w0vsL)u;NzY;z#|FZOEYRKKs)pt*NJ$N~bAy`7ZQ@OO@1YXjSYRcha<$RZ-hD_GPAF6L(6S>b zVs0lrK~3^TwpvE0w`B2P%>c|BYUK4^)+)2Jg#qQdqGS@{!ByR~I>ELJ<>5tm3mjgg zHcCC0RZ&a*v`XS+G4%5XNNK_70Cu6!-{eZB&rG6?K?o*duuiekw^2nrAG#vvuY5Ve z35rJbdvX=aLY5>sbZ%4=r?35`9A2)Xe4II1&JyJWMWgx)b7lQI0F3f+hDOz~FRxt( zDoM8R)hgnoj4o=@UMpqvOSP6|)si*dT2*v43CZXhoJCKo^wlbgQ@MnwRSKnkTBT^S z8`^{}A!t{QT7RuFE;dt3>GKn+R>@SkYV{J4Mhrn6+KZ&72(;P@3gx{|t=d_y84Njz z%%$m9aM3Q&!&uZ}No$pJX(Niah4zX+vJh`g-P^X5^4BVh_!CvUN?=vtwEkLUq**H4 zV7m1j+6a>Mo-X|i#OFYJQ}<;g+8DxGsC#i_a#%__Xt_}l6S+f!0^JR=9DjB0THPpL z6HTn#yqcnEAOI_#1|xYH1stWOjzb$k>@*5Xg2Q`6b}g%Rb{F@I)PfI`qx7UZExbHl zvGB6qCSnj**K0qAlkjlko`6;nsli97fHqIGSjc%oI@tPflEx;^HoQ$hb%VMVZpaxL zD>+g1?c+=un>g*_3^`44ir%+r#Sp!wkRmpgm&8LEF*2*Ef0&kjj9~94BXzyGk{5|< zgty*Y$s6nl-3W8qLCKv=94@>q!0Rjem+STsi<+j^SE(56(QnrX#I~mP6q2LB0bei zp(Z4A(ecL;qj^0{fW16!nElKdn-u z3JH59GYT+fXxq+GE|&bkQ_Q-H#nomItlW;N#2qcQx{D?36J8lEs&4+NwBnAIT47hM zd8Ae)mhe=nRc~?B<%s&#@-;b~>t5*Leid<>dwaERjY6r9T3PkSv$M6PrF#m#mSlss zQgy*7y^Sj-*NxYbn@4Sxn^Ff8f^7eAOa~`O#-3L0q|`tjV0^|q@#YVP=Q81HS)-7~ zQ>hjXj?jXd5YX`mwZDlON{0O@|ZN@|u30;)@D9xH7=1|kp%j_g) z$|)B+{?;Py7?_)RBBrX3okIBV-CiUl>DiE4HAHjmtL0lLS9R6t#p+G9RaFy~3bvNj7;*ZugR0h4<%-!Um=-p*G-nG1<;txpQ_N1r zghm?zCR}FSm0hN9bs@5dIn6}%VFn88U? z86R?NX10{aWE3|-@l+a~*Tuf|t2CE|s`;RHlj$UKg5DC^R`UHtzQ5crsHXUVkls(G zgcP-QXcx6qQ&2OL@iYq}T70g5Kt#kTv6iuhB?oC;U5H!BSWrZw1{ipfb~2`LGJrH- zASe#bAFS2_yi83Oq25oXgbb?gsEOP@uaL}taG!a<#@^q@ASdLUZv95sOmCr zz$&wru_D%}iM9Hp*kn_e7cy%FE25~DZBDhRaW(yQwlYSvj+&LRH%OYw_>dA9>9$hB z&%x<^%}l`~c5V(H_r*gR%9m7C`O@YJUUX^Iv&-t##ZWd<4+T5IX&%ev2imorlE|jW zP{vhlANhQ`U1=+m!BM7#aOlpc{=RcHqZ5`2Hc=R~rUr}lI`BBIA%`XQGUjw&jvdSM ztLZ5O_5K4v+$K+j8jWHDJte$rNtXbS#|vJ%S*5g$FwI4#8^H%fBUriWH+ z8uN%(Oci5vv^Qbrl+Mm<|8nK?Dr$2zZ+kgnjV3;+Oh`o|_fo6S>efidOkZcN<`vJJ zgSi{4f3a*Jcpnz7fSD!Ko@%w=@r=C@Q#zWpXwgr>&)X-gs+Dq7YoULsrHan}RsBJ% zg2{Z;3b?voTp3k>E+04EEQ(0xq}B*8_0tn2c2NkX{A*riL zZ*RrYerl!g!A;xL)R`N3X(ufELJ8TEPHGM68EFzf-?}i;9%}aXGI2*;qrHgIQLRGCq zT9ee=jFP3I-chSHH@iwq6Eu%rB}M8yBKF`zcR$YL3wZ7#Si?2>gjAU-tRfaMdx+DB zXF4O^6r+WQh8?^0)Wm3;%f3=pxszATvP|3j)V{_XHCmW_4h><2TO(a+ua*ZtYY|+X_I=iu>t#i@v9 zC!8tiUoVw5Q}NIZP4!7%#1olGd1#Ueo<5xP(6n?+Rr>{<#9GQql!`heh=hUMH#??$ z;b-V9Eacu$4xWlC8j?a0)C`qebZ63-5@96eKzm+T%;SwaT9TNRlm+>2!4k8ISb`5h zwuvR=rn;N3idbSbI5eof#`i@gN_L_q+?v7${R5_@onXBeT zUR-@1)An776o%GDRw~K7X3L9oz%dUEyI9#ywsr$r7`)ugs8cH*V_g&qH3uViwSX*{ ztL8>t^DvUgld8FfH|!#VrD=No}NxRjZs`Ci~XGRtKAfgnbaja@Q@ltT;g0PplB)ixRXO4!&}aZURq@=<3u*c z2ys=if-}(IRjE31otIf9yi^&SPvk1A=~ixWOm*5DBqph+@;58ftG9jeCRqFAC7jF} zI4z!E>a6bgj29uPu9`_wCi9gm76xL)rcXJR!Q z%Os?2WsIGr9KGE-x5l=GC>&(mC>If{$PQ5>G#BH8qSZKAYZzOiR3!AWP-!j>tZpzJ zH5W^My7{H6Ky^tVe&M3w7u6G&BdayE=2h3l#`@1tNaHJ0#Jz2LCyHfVm08PJ!&vGU zMs@aU`$3(TOeNWGc4b#mzeHK3D-Vs6Ohb%HEx5{_qy75vHkX3F%TqYWxWn9RfL!Gv zV@E;-vmrOCMhcEt&1fLdWG<&1&02InrfCSPC^dIDgMKKfROe>ap}9t`UV>EMv4J<`|m#%DAds@x!UY+-`eiiK|R6>V(c8!@}xCS+T%uzJ6Mw zaf&p85AB7~u?kHhr=$W;{T_LWo=dp47nH9+jT=aPaT%yGP+X~c_FnkcjHDc0V}&*> z300N2;HVi%Ignf7U2jw(bQGl`*260wZ4{JBAC-dG>xHU37D6iTEJoxhb183l+{V*^J#hQ0qFgSPQMM2PtDIC(1ua zEv>^tRkrJ1WgaT_+LQ(Kbj@xwJAlo6{8ifM5thbLr4^@#T8+V^rEyegMGbjzUvZUP z_ab#s@mKpIdwQ9Niap*d(h6I96`iM4t*4YNl<`uHaKN|7DusuXoyJRS(A@8b4WkQR z=m7{*i7T8`8sd%(UGxqguxM{JDM(!+{@_Ecg3?Kj;;HSFQN$r;&#~V%r#mStHB0TB zM%sDBm}-`4w%XZ^iLGX-W)uAaJ#%1lG879{>8RBbmECk&l$1&Ns1?XGaXO%=Q!xRF zi<+MjZFi~^Q;<5THBtfTPHAE?DnGSS>spYBN$zRRB7jm_4DQ~T+=4{R)ks5EUYSd#G&!uYVqEt%#v`W>Eut6c2n^q^@ zXX+TgV={TQZz=CcHTZyi6LETX{E4Y~YTd6%FRF&! zcoDB(()-KoA|`Q$NCe{UF_!Cg7LmQP-^X ztS!UX?+5oy?V_z&>sje}L_8ysQ@vxkF4&m4o|pD*9~i*Gv?6YBg;}S%bylaLaMkOj z#O$(3;-=R@aM*DySZdZ#`$;d%i2U?(SSKM2Bvp@a+P z8Q4!^tW=m^$ggg1)wP?nsg5sJ@K&TrdmVE}u`q-UPYmxJqzsKBPPyp#YrUkhzDC3~ zTODJqhcq+RY;}w%S^EwzidN>OQ|ZC0g7Z`{G%YJ4j~VMY>CQ+63(~23x2hO*4sve8 zPN-pJs9DKbf<2eS>s+hLUiB%LI>@<$cL>v74D_@vj_PIWVX#sMIrrRbrGL1ouv*_6 zprjIpa;|Pai#<;@55|Sz#qH!wUD*Qmg=k*ggP8=j8(M8D?XFp6_2dikCv!nl!y0}Z8AAqw$4poS=ADPzMW9dPO16&n_C%uLN= z-47F6!dT5I(phV(x<0d(FEx8LbFH^Fan>x=Z1Fe8n)u?jYDU8}4-Ggdl;EwiY8JZO zfYm>`iXw<2Lp4`8oi=kthH|c;qwMg9vi+;Y>m~Gz5_1VJ-8aYTzYR<4QG&}!L8xJ`X#zs!vOD)r+p|ylnG;+#-gub#JDeP^S zO(CbK)lrMu6N_3?WD;9RwAlL|?|3Fg5r&2^Z7SizrH>k!VK-nZFNM8?8NClZ+Cc2| zDqCHk^_CJg=vuO+EG2AVRqiRaWmgpOjGFrOEVX){FqUxE$}iZP-GW%@Az_c+c|iH8 z%ggGUl!cvyDfYr-16RsY!iL<&b%!Xrpo`M=rwV&Hb3?Q#V>u_Kna(A26%s+l%+x&L zKIEF`ePT@}VXWq?K7eLNnzWX%Mh5z7lQfg?G}8*O=%u$}y`{K`ps9>HCy7S)Sb3DD z{&+NoUPPs!@P`BWCF zx~KI}vo}axXRhW&IGWwfV!=j+TCPyHRrjKaAU8!-h?{G9qxT+2yNqO*k!{2ne3;!c zx1)QkG??x8sk9aMfYVkHizxB9fo73!+DyY!Tf8exUYx6Ds^JqCJeo_zm6%T|`tLYt zoxO%xv~+vsI(rRs2L>?p{kwRyk)?(Wb7}3S0JW+RS?bs@R*4xH4O^N$9L%WUFDsU?aAgum~__t6`kE%J0W>)N`^cvf>Vf z1+&CQqc9gcq52C{_mSc?F|stV(G1NZ&VWzYni=UGgf01;RoREcF&7j6TwM6Ejab;4 z7#9uu%IBm~nHm~vIB_}3GFKx@J)2dDgNy9+OxTyrrq>0Ru+*@jcbbj!?KQM3MIQSv zR;?jl|xXH!+<#v0C+ z;^^w0A{y4H?%mw+Xj2{<_Reg%;?w1hMg(L|8V!0|xJ4xqW*QzE$}G8RrW!s>`S4z+ zk&;+qz6_sP86?|wftiY|QVrey< zitm3?>Mus+xoBv~ZEVtI|pRchuGt=b&Rqc}yhvs&?xaN=g zT~S^CQP9`C%qp};P`Q#FQB6T55-}Ggf6K7nzr33Bes)Cj+-$WD$y}8DxciJ9aaIe3 zRL!fe1$EX+R=Q9iZa`WUXw6o~7!)|(u&RD?xS9iyj~OdDab*|126pbVOnu5;$&7qz zkXz!RWS`|@t212Nw{0*9Yc(sLGq0e=j}$F=>+O}yI7f_lja4jZY{hA=V{uYgD_L>x zzl^t7PzD$SP1q_KvC?ojTNtt|t2%2XYw)xNcCw^E&m2R!VLwx2z;Y+02Cb4O{#JCI zxExTb^kH`nqlm&wsS-YtRuwYxr|dP%*mRY6&D8@r6PYUcX#5Yt^apdeON4dRW@4$2 zQX%ZNu56Je6wUd~aqR8#m#~N7M_{l32D$qb-dx z4&i8(Y@at7rhmZO9VKz1Fl0jk4Zc$xElV;T%{z zFlo#diH8k)GtMC!;THBb%Z<+^FKJw^e>Gp#G73lK-JmKdE8pE@60JI0XyU$dbG}inxRaem zdm&Jv`{Jo4qb>&MBpfZY+A!@NEBTG5sov3ED-oh}1d^3ksF!e#G=mQ`T2*{nBc!S0 zDWix(WNYkqH0^LZu@+p0Rh5Iz!G>FT!9hw));6qxO=HxNiw!^SRiIbVEEADNANR6X z!A<26?GbBAYr&ndyJ zz0G>}NH_RUdyVp3ycQ8RFUqw_q#l*cUP+bObzie*U9%5}8u5>mMXQwwB74Ks_7rK^ zv!Wlhb2aOA`Tc%wg}7mEX4|Uvo0Q(D`O*! zGHvSExUAgUQZ>xqy;Mzkn^j|-L=hz$Y>=f{VJs&dB_Z0D5J zkhQi3)EaP)bnDw{RZgrmqq&Y>5dUlMOr^0gXS1d#LR|3g#O2$P`fai4vcRQTD*c43 zSuc3aRXmNIQ(jIY18=jc2(=-pn2V8L^c!J@s7K3m9;O|QT0v*A7g8xdJEeG0*;hvD z4wIfnHJl06QbpaiW)s15Mk>6Gs_2SdhN{BbsG5jYGkY|oQ+OKH5>Ym!Ch;_?(S$6T zaMbeFy6!0b8&OtWfskcr6fT^M8g2Qp@^EZ&BYKHOn!JX=sGgo0HLkDaFh-E55muvq zb##+>+Nhm5hIO2^YJ@Aj73D&?bm>A=L13dT9>ov#a1Q4=jmxV!Y$AyFp^c8uNW0YC zs4M0nqTD*O%I6i*xt(@2Y9YvWJTs)ZwVIYm_!t%FNra{`oKr#s@3m^Asmff9dWbG5 z*LaL(l5)=}8%3J5{<=L-Dk~QJGe@)~Vw95!U5kn@8(mTu)+*A?)#cinH-jLm$r;4g@cy z!z;`iio!%=j03G%8bN1K`8M-(QRqqbK8E?7%1fIK1R+@VI*Pp*mZUiv@faf!{gsp? zKHynbRck(DWGHC5Ab^$DCA|M8i^Zm*zIGJxN-gVn3@pYd!b*>`-IlR(r8v@^8^Z2{ z>f3zjx}sq)s#p7+I(h5VEB%ei$hX-0E5o%I*18IBqbdzB#PsDl@ev}E)7 zKCFkgKf6gfMH<0}T1*QnxqR~4+6k#_vvG;|>n~CX0a|TNZx#(tpHdQ*UIrDKv<0JA zm_EA1Qa0z92vOy1&_vydOIptOgrvgPtcbg{*mD%knm$;~Ya>C4t3huj)(MQD>`0GR zR5$yTmA+r-Sy`;A+h(y9Q-jgaV?#ljXi%`MSM_n!aTp>%4~f}OC7%5~MeUlO`sSu( zFsS3ka5*T7YUVejtn@ah220*4#dKwE!DvqrN7WNKsnpU6`?Rk?5p5%=aHN!N!5N&z z1T?DTX-~5np3cW5ZQRl~3t456i(2|&QA#5$-%vM~0M+L31ipdn+ryf!+Y*W{0 zYu>$%RCclM|0-H7_ufUEo~Qnw1goKKIL_+rm2f?U?TK7{mryNw72V5?t1XM?RaK9Z zn`>lUSXDN2RA?I2k;#56OgJ^9f&O5u-*z4$`h#kCRab)^W(JAyta_e$r-n4FZd^rk zyI63-(X17`Od#fGSx`t++S8yG{9LPUVjV|sgC`>ZH~{8=ae7MXUaOyi#7hPCup~anbTO7lR#8 z8{w~a(ejIXC7K0F$=KuOTHd)?-A0Z{(#TfJh;4_;D{+qpy!T_zj#Ke`>J2e#sVke*$ohvQf z)A_5F#Vyzcg=}r1jvuG8N~0BtI)-ZWc)4D`$N-xPB~l#sQ7bfyCshrLTVth`a!_+) zB%;C!&zZGrMPdSSFSSZDs#_tZW6q(phnjt+sBmE#%-r?%YUY+~q2JF_;I=uF_E57^ zfzHmBJFrJUq3mO=3?4ucp}ay3?r zT<)b-K``_DRTbRx7%Da(qi|E}h{uzoEoUssIPIZk$3PoVu=XbJ(r)%TjpSWS$1d+`^Qfj3LtSX5 zlrxsur|`8)St8R7CrhHV!n7qE4O+qZ50zKK$x2P`YS61{6~4^oArGK+YE_eIXl(tB2_CwTNQ0tj(>QkLJ8u=0r%ki%HRQ=r#a>uJ@7 zDlS?_mP&FRjj&NMpp^%&7?z&<*D)n+Rg5SFYsRFliV?cusUqfZmVwqgsJIb9y=h$w zsLKS2gNhq*OXh`je4&ww19E1L&`8CR$iHy?v*Lb9I=EWy)Ol*ug7U93*XJrilsTz1 z+RGhSY}tdG^~TyCvsAHRN`Fa)IXOlxakY%jNWu9${vcuV|JF+D!Wsq38#8bM20G0igW$l8i^ zYD28BHn0Xsvn8z>8#qx@kjb{Bk+p#}%qR8I*uXzkh0<;Y9W;Adj4WM!E0;)k7}%Bf zvgOn@a|3VU4r*ODD5p+%7}(p(GtVE(=6i~kwJ&C`WUk)(wQJ*b)<#xT)dJ4bbLllL z^|?`Hj(Hf_QK(#fcSbS&;G zuA;g0%3RrRtT^gDjcN$4-pA0=s&z}^X;eenI=kmJmZZ?Z$c=a!K8)T1p7}*ht{QwpVKjviANQ`)v zC6MqjDj*fXruDgg#YsfK5F71dDXDWbY9V*)Tr886b~I|$($&0L_IhP=vO+(jQZ2Z~ zlu~|1rPye1nQ<`>BYSNMWJz9gFmfm6K$i3gAC*G5AQtCqSWN6^%jp}=foHA$N*q+& zI9aYPN(Dc4Jkn=6>I76?ji{Iha+!*5wve)yUurd_rT$8*$zJwUhLw+XZrSx(spMDP zR62NSs=c)fOB4K3Z+~xD@^DFAG9(Tv?&{tpjnK<|lnTMVYz^^CJd*6Ru4Jf`9TAVv zhu4F8H76BX2ODm5ke$U*)$B%2U-Pk1K%2%Jw!*Z?ryz2fI>(xpU+F2WZpl{qhttVuInt5KSn-C_UzzGXKpmz1=jtV_M+?fspLmq;@7|{xGjr)0qAmi1$UfN zm#pOmb-uxNet{*uJvbp;^RG8ba?nm8^Go649Yk+n)0juOK}(&=xa(XkxI|n{o$VN5 z>J1{_1%*=T$GVb}nMD3^YQ-y$WG0b+l3c+cH;On?Wl3qSyWdcIU2TCmS9+K87t9N>^;M%7T76n1aD-Ml#kjp;#*Y0_1(F-Laud8 z@Un4Ix*{Tn2qf76*%1k1E+|Ht>6wrDLxHXlEy#D9N4{b2`9KP7QGg}!>IZJIK z1~lGg_AH?TOJlmOVX`fX%{gefmJ3d)AYN((gu<5+-w1twXom~3l{o^!&+5W zg`_qr2IOQL2BT!>K^3-+rDmsMLiW+x8D*=lBTSjAc-u<8-+?zJ*b=AhRm=zhDJ5P- zLr;fXXAg$-a8dWq=xcm%sQYIWA$1ec(*SV?okile?(AT?Fo{&=UdQyCR{Vs$h23nFXpY@zm3_J4G8Fuc33|s%I3_A$lr;N+6 z$MO9JFT<9>=H?9SIP7qog#Xsrp1Z9v|x=4|)^ z&h`M?-^1CsjmS&<@1Uz;`*GwacxQi>v!kx(?3znZF2Kd$+=$;VgYD(-w|hPE z9k>&Ao1lOAr6_CY&OsWsAPs|`=Im);;C(2Ei=YM0XYqOJHJoh*R$Rx~fr#&E#B}{< z5C_tFD>%+YoYP^y<5Qe<0J{;>u@on4E?dLdGbp$HPRy_)4$iRKfyJ-Qu(mg3*Z~Kj zj9#B%hXIe_e>)Dq_d_%6kwZ`(ugS0;d|&^%413_sD91Nu*tGpKYzxpcDZ^emFvAMK zgW!2_Vul?Ezfl}_;`B;f!S5Fy>oFJh&mMz%15AFW$JjeO);h&w z2OR}2d~O5p7W{wr2_8H4c#l<%#Bbn#5H=fOQ<>_qc}IKfvJ*YF1U8T2vy0E0VY})e zk8OXQ$4&uW+}~r%fGc0)v7--wKXAi=9?QShW8-mLg><;u-S}KO1Ti4(8}WO`WaP`|IlJ^G&R+N;XZz#x zoj0H!;PaL*aCXC&P{)AnH==$4hvB!$H*#;Ro@!0f@ z_#bfN=a3Fy27d2^&(&Y>*r7Li?A)7RdxOWu;rk^JN3&b!%ZHW`c;pu_>#w- zg3Y{JVf%S}1{UMD3qR>G?>58--vGzg;d`~mHi3KMHTe7~q~jK7A*OBM zn2O(LK<7HxPJq_hYdy9VdgEcU3HBYZzYDrAE<~OD7dW0rtp9+|e~>pXqF%iO%|9Wp z@cF*o9=qd79P!&@f5vaXjy)*T=a6SldF-%%Bdz#;-#<}C;5in@P59q<_^*8eb@f?~ zUG+DVHI6QhoqzP$)%nwfJxB1`UT|6GakDac8~uRe!x|K zfgLob9)mW9y0D=QeLHZ-O!Nuu=m$E`Uz~w*pT*g=_}`wnXy>!h{_+3)TRGd%iGHFB z{XVc0c88vcK7T&?fH|C9jo%-_@nF~#;P(LdZou#B=ArJu=0@ATLu-}2ZV93RK``|#TfC!;T!g|eKD_6E$E zgMOkN{AWNLpYO%73*Rq*-D9W0Z#wG8G{gto-sG{am?Ih#TJ*gLm8vk1fRa!@;@r-Kayriqk#z0Qj%O zZ?}W{@@W~?aXiMPUt?@|9DVt2nt6Pm0d)O5pHeq!<6+Q$X5*bw$ozIuGds)-T7nHHtB|gmDZ!eK>AeiTGC`PGH|L zZ~)uR$NUGJhrsrNGH1>Bz8SoeVS6idFGby2KNa(W@1yR059J4}xd-*?=N`NEL6p;v z(Kr3XV@Ga9J;C?Ke}p=IKl&B?@4N?47x4Kd9GBq#cl;22$WQUV@1i~elkP%W*oks~ z6!qmds3SldKHvFk)c4<_FUN0_cc4#u7=8OMJa!8{Kac-U#_yZ&M!iA|JGLN}U8skT zpzqp_I`u2`FTX^8g5weR-y!(l4fsAD{%sFoyxWF43f&{W13uu0Ki~*Fga1$bJ<@U? z>LU0~L7Y>e@#xRc2JrtI9!LL!_-{u#kATgFAAlP;@Lseh#4riJulXI?#$y=!fDPY9 zUcq-Fj@zJn73{7?9&SE5!!B(>IW;4{f#;e~Uci2+?=L)vGXE9I;72Hvhf(%F#s42c zIqyLI`8jNVj5+|Dn|_GC1~wahhPlu~C`(`>J|DIXbzm#{C-{xSF~1%C5d2@j@g{KG zc|Yndc%FCwzR(#4-;!T&w)U5pUqNptKHmh6qhYt^C!8&W-HT`&ThR_L&!Eo*R(MGB zIF!wc@OugEf?-T|Q5F+WHvhpq?7!f~?>kWUm%*ll|Bb`{=DZp{ufRBj<9+*~eD*;( zIv%?l*fJh@1D?ZP<*{Y3d4hXvDbNYtoAAHs`2CuFG4?=XKO8T4CB}Pj90`u$#h4Qv zmSN8T18>Q&CxCr1ZZG*T$`m-@LnsSi%4O)^fC(6%J3fJ!fu&bN|0?udz>8O+@A)|X zcP8djQ!?z7`S6>EzOe&!aW2w><2Zb;bY<96`2CU|^x0>k4lKa@rwjcU?3Z;y6S!v( zbA=^{*#{qvkM*N&44`f-#yGtU_5Cd9_97i;qb}h%VzV3 z?@DOlcnj<&osT2Xb)Ls|0Uq@Be-H9*4a)HX{D#k0V1E4A_c6|X7vttVsH=CQFaI|B zCBkOR!*50X{u*bud<*>%>Ub+`Ui=RFuzT_Q_t2lhxAX)254ig4oSlOI9kB)Tb?^W8Xj%_eZ2 z2cJR2aTs{^MZf2M1)7_{@nwt^!0or7Jp$XlivAP7-E}kK#AgrfWXIbxZ2MB2S1rr1 zwY}&w`!ejwbHI_!u*$h;LpUzR_h<2WEo>IU_Ms)HZ)d{~xaZyAI34!Q8FoPv{*TXX zr)AhWd>@{XVF$Os7sm(jzoT1m&ex7}zIouDh4a4o8OCO3*c~{o$MMp+IA3hbu>JA- z6F3$+GVI}*8MX(;NIYV-reYa z&i%0Sapz*^gUJH`neJqF zntP&qlH2CK%bo4Ex~I9Py0hG)+@sxQx5a&@`)+rRd%8QrZE^?Ma`p-Kah794Y?!TJ zA7WYdQTBeejGe{-g*hTC@Hkb9We%8e{9kY_Azz^Th9jATJ}D+j$Oq* z%tqN7R%DkjpIyezVCS(h#+?7K@s8t6aJaLNGtP0H|FV}@#_^n2I9KtH^7Z^9{Br(r z{xN<9{{+91e~1t9VZMf6z%S$_ei>iIFXiv$>-c;4`}ha=`}xH@$1mZ7e1Q9WEnmr3 z^E~h8V?4_%{DZvA3w$~6<3+xVuiztml%LNp;^*wd|-&Hb_aJ@@A z(tVY?pZjX}ZSDkjfA@9nf$l->E8MrZ`?_y;4{%@OzScd=eZ70QJIOu7J<>hceXBdp z9q&$b-|X(=zQH}heUp2r`$l(%`)hZb`>6X%_vh|!+(+Dp-QDi*-N)TOyT5RsbpPZ& zi*3AmHT)1G50U-AKWM0-@4n~zq)^OpK+gd|L8vDKI{I@-RbUff6pFckF!6p z-RueWC-z77JGP7cmi?Xmn?28-W&dD%*uU6w?4Rs!xHj|`_E+|2_7r=Dy}-WB?q&C| z@3AfHyX^byZgwAgh;3%yVn1LHvj^Ev*;e*T_G9)l_AB-%dw~6j{gBFP&dGTb%DX_c-@E_d4Hq?sI-oX_wfuGbM1CAUfgivR=yv{km zImmg9^D1XQ=k?CM&i>A;o!2_!_&z+tJ&tO}IX~T*?ld`boq0~PGskIl-s~LV9O}H? zImDUhyvdp5yuo>+^ET&j=P>83&WX-6=bg^c&XLYLoEgq6=NRWG=LBbp)9xJW9Osc{S**V2&b53*K<-FUO?R?X@+xeFB9cQz1m-B7sPUjBi zI`>+)-+iBZvHO1a!*0pVx_#~^+=|=j&Uepr=eeJCuX3+d%l}JL-PO9dkeFUgLhs{h<31_iA^&dx`r2 z_k8CpXT&Ku!_JVi$XVeman5m;I?J5*Iu|%aXSMSlXN|MU$vfvcIcK?3amJipr{r`y zUCw~xJN-_dbFOoyQ+8H5S!d8$>@0A4oU@&U&Zu)LdlzeEGg&ihVMnpq>?C$Fo64rM zX>1Cc#ZF_Vvv;sIHiNyB9mh^!C$gj2yIB*P%#LTruw&UN>?Zalb_e@ByMb+B*Rs#D zP3+6;3+y`fO?Ex|47-MXihY`Wg?)orvs>9M>^AmQ_Br--b|br)eU1Io-Q)hl zecs*0|Hhx?yZK-E)BGv^B>yx2B;Uy&<-g~T@$LLi{15yW{C9kVd!h3VcN_mXf0(zk z7uiM5pPiq$ui&rY*E=8PbKOs}UVfwdq;oaTxDUEdvOC$2obNgh@(1{j`A_&({xkkX zzKMU0f0^IJZ{fG{oB5acSNK=?L;N=W1O9#fUH)zU9sUjeP5v!@AOAZ49>1U8%kSZL z^DTTczl-0_@8EaxAMzjZ@%*QJe|`%8jPoz|l@8+vJKu0R+)n36oE1Fh{+9oSKfxd8 zH}Eg;8~Nw?HGBiVj$h9|$FJp|;v4yA_-Fa2`QP~q{CWOQ{u2K;{}2BM{}=xi-@*6r zU-K6^y5s+i`~MsF|2OXcZ`}Xixc|R#|9|8D|0m=AbDT3;{SaTl6Mc=X5uw#k(f`FF zm0*oS;{R#;a4ki-g7phxy;<~n(sH$bQD)E%oX!K_8(Km(>>Nl`{4FzqN$l6cnczWn@wAGB$r>^ zJ)A8C3l$Zqs4)jVSn9UO_m^Y2yi$eU{4vl|%F&ii3ets5EzMbMBB&rS*0*w4CBytx zRJN+s{FMb-^el^olvZG)_H19?rv*D5c#XhVcF31jxPUKQo{AS7WmPpeZWkw2hJbn* zt{+mwh^o|DTv^B$v$Ut^P$_t0mBMyrwv^9dJK4^$QvWa>lUY#6t)e1Ps<&aEdhr@s zb*iI^-0F`OX~#E(ct;kmVHu`{v)B!-BUezX3QMu$NEYim<&@O|?r4$!J~vyUxBphK zV7R4NDvga+7W+Z;Z; z6y#rBS1r2Js$q4dUHc$Kjm7@u;1%uZCKEa!8)#R~o}zeVMqPKG;1-MNgQpYCX2wX- zhLVfm>gq-qADM|?#Hgamp}1YTXzIzR@Jo25t)zk1o3@p5=(fz1V&PsEt;ZN*ZH-?8 zrg&&p(t_%vo#ms`!Ul!3)KNS;VaV3mJ##y{$82qT@bW4HVS534&{(Zy1O4kd7(Tk>&@#kV!zhLc==n;*bcCCifR^Z?&j z`s54?X8Uu}aEzI?m!X2>d z$|Ic2M&k^%hWXg8GB24Z{6F5l13t3kD1Xl;7z4(D$ruhW7#oMZ^WEN^ZSX1W?VP36 zoJOlPCdi|iCu!Kxyt#QZ(#pV}oO8}O=bUrSIp>^n&iMaThk2>Hx?1lo#}DsnRsH(w z>gww1>gpv(yQ$MKVBqeiH|%eJzO)D!ug(crj?6S~u-lT)TyLW!eMU2lF9wnuu_nJD&q z$6y@*)QWT$ICZYP2KCLw_OdZqoFot+s3FwWK7;k*Ea7U&X=4B!yt##I%jYC363da$ zr$H_JXpX||7O7y+V+6_EuH8N9_@> zpwK8%O3ts_Na=#$v=A-J`}ldN`xVT!Ce&a_fpJiav`%-HCQ!aNORLHpg>b5IlTq7C z;V~0n$Z5qxq`|37?se}?4YoO8gn7|TW?4FMdm(FIEf8OWOW$=~_qCw|n}97;;**S+ z?08i7K-a!4(vpy5-LOavkDZwBm3CnfS1uwYF`LM`UbjbTAln=yLlzWgU2@_2XmD#1&`G@$+!0B~NahBmz?hAcOTa%Ol#0>c^bSUw zN%TQ@dpV39_>8rUu`)ze68{I6blMi#o+gu!J)*y@b~c!g1Vc$tpbuS1g&|s+Dhv&c z9PoI3{V3|A*wOE#Y5feKnVju!CjHZ;Eyhw3TkI!gMw?CLLY3gsK|1bCjFG-NOV2P0 z?;vqr7@zN^8e?cnFjo}>%~%@jx;Nzd+eH=0pm}@&(barEOlK$jp@d3hSw4lZ|eY#&ukXY-6Ipa9=Vc zdW;+)r4Pf|@NhIcQTVCAB}X4Urkw=J6x*~pfRY0Rx3Z%#%Ri0VaI6Oh1qZ1_Ok%N_ z9vsv?@rCJuctpZc0z$kB&pqzqPe!K5rcDS_F>f^#DqNxb>^f^3t=m$ukU%5ssTXWQ zomMjkYCk{~nCXKW;EwAB_j;xwABhnU0;Yx*Y=EhV9ffHkA4Q>oY!u2*As<6*HJbgX zGE;H2bG<^dA5n)erruvnjXmXh!9}^P1>@5JBu_|b$ClUf57cC#@%uk6mSNNtab;#1wvYldA3@tgjRd5xiV?Qn_tB3FQ)D3X493cBu^~=sW zqaXIQPrh2K&;L~_s?ArdCW^X!oh!Y4MX*eq#epj*I%QE4>#0z;AD%5uYIdGlVb*X< zS%Fe$yQqrI5!KD{X=0Z12Bg46OO_N0!*iokAJv6=S+Zr7KoxJHsu8mER?YCUf|A>& zv^4v%YGH1k*i@}&iDFAh<9IS$41Cs^(wX2q9cEHi$U&qRtJ9ZIp2x<;sQnzE{k2|j z)lV;}rCtcH*+&{#2n-Si*QUQjMLu^d-ep;LmKt7Aoc9oJFg-~7v$~(K_+`Bf`Hql9 z%8lEoXFpFK?VtAbieWKOB;Y1u4E22wEX*m~dG%vOu>;CV$9@y~8*zZQR*>K~8|h-M zm5C^R?vZpAg;V(trr7Y#LM(D#VitRPv==c-EO+>)_~`}>UD2@EL35+-94*2k_TSjq zWWTbNF0y1jMFCs5E#Rh-5C?#%Pj02B{A4StzyK7@&Ev%3JS~osTq#J%oQ%^cd9hN* zp{+;`g@#)!IO$~z1ionSk>v|rKAs|Bs@n}y>>Emrgz{*HyQAS&I^=l->NUg$je=C` z-A-?SaypZvtNj5S@+?|>^&0%4uf)AFg3JaK@ff0qtX)k94#S}`HoDOyAc+h{Z}iIG z(Do7px8ai#pvQ|jEtlc#r5P6n^A}gT9Rn&9WVA{73AG@?8&NgLvMP<{-uKMQ5D(^Vo9zw`f55n zcUoHIZ|B6GNyqRiU)I}VB>7%{yl}}>{&~a}Ag3~xirtg=5tz#ZNNSMrCP+{;B*0T+~($vUH5ypJXFl%(r^pZx$Mn)FVkUGbiOvM4T%( zfy`{rU=C=HSAqa%2{0{MVq7M8*G5Vh9!NUc>7Nle5-|~Z^7vvjOEM_E(cuVDf28~n z9N@Y%B|cXsiEP!CBSa~6CWm!jqzWWk2KnfaH88V=%R{&6j3d>=;t z#5$%b5I9GH#+08O5ICDIW4O2k3_(FxKr0X!jH<$3(E1TG5q ztWh(Ol1p0k7e2^yNz24{E@|>`xE|hj;iT>GVJ(Suv>kX*TwxxyfZ1M>2M6XnIO%S^ zfuH)XU)d(Zg!uGF^O1==B_Hz>=Zm^Z_86 z(BlU$u|ZRkv6s#JRQ1Ix>5m}nd%m1=4glVuP7&Ws<6^!?M^7Tj#ew^#_C5$Cz?|?H zAgGP80d}onP{*mQ4ekY+x5pNcX9UbKpv_YR zJIgi7!lTP>;jE1V3*7)*MPvou^`}^3a0}PnEPQLz%JJgA*p9+)W|^kV615Ymf7(r* z0ZmL(8yOP;y3)D%!cKBHOEP-WJ{{wz$}w$cF-~&u>Zb^%Ia)XCTf}lbx5V8g*CTp$ zw2l@Q?>8dwXC^F4r4!($NOxw*^-tnPWJjx|;Eu#CNTcm$*}@l?! zx}1UqQJ^lXpFs@6ypKFO7i+Cs^~QJ)zsv{|JCN&$`&16fi$Q?BO(`Gx86W)z&HuQ%-6Rh?pVm;B(0-R^BgzIh?#V{jEb~Sm0}sH&<52p-BKtNzK0hTAc~eA zBy7OHRJW*H)ROTn84&}6J}e(#9%8}DuH^^+)Xz0e-9kKCO};ro*s2JS`|(=^2-b;W zrO_7bhhc(aiy$XEY)EJDZt>&vW*|(Z9t?!Z^chbq)J1g`ccM=mBBJBjpG z##$A0J3;XpiEhF2mPkcw+Y$<;(~{F{P+~3-2%%uwZ%YN!(uW1pQj$lwjyO*{v%g9% zTRfnGgQ>T`6M?LLd{?<_v_F^<(wTG(g@0u`Fyu;kt&fJ7b@=yOuM)jk~|qDDwQhLs_qg~9B& z)GiEpUqe7zgTq5tqQN354T(CI&8DRm&Wb`R`?4Yxe%3yHikfQJF!~h^jg|!1yLB>>16-PeYYK6tm04s zBnq_3P$2vtc^=2F6{xnO5y#&K?q*>z|?}iqv?oXfujFS!QKS0!$ z$7x&#BU*?0+k1$raGi2!Vo6==h3!#QL_pK%Jl(4=z&Im<5PC9dStQ*)!UWw~ZJ#<| ze&tu6swJ;7$%OC#%QLFkM|oQxFn;5 zCv-vNirH{r-AM+?=oH6Wm82rurnDb~TQW|v-b_PJ&XT;tUOKpy%rnE(94FI{ZKBz^ z9GSEQ8J`KB;!?koHo5~GfVw!r&s?@oeKckq-Fxdf3pwJoMK(uPhtUxtG+e9A+jcjl z=Xl95^nAhb0fec|6KCsKMyW3q8+AmZuQd~LO||PHtknI8+c#7_@!kH2Te4Qf%vEqq zFBJ6&2Vwu5-Yw||ONe>Uekp;tT^%p7NLTv3Szm)Sa-j}sj~(x3qfG! zs3t&5?Uo1ws>SlO)W&IVxbZFfp`)?$xan-C9mgtu$*8~>uF&}p@q#mCTI?g@Sx+M# zMmaJQID2<4EV&*5ubf}#Zg(B`=5hqx)L|<*n|FpJPL4}DCv|c4M~(8a1zrW@q9mRo ziv20eyg+K}d)rdBF48(iJD9GA&~Zg&FYmUhTO=(PlQm@hAnUAt46ILMY4^^jM9@*8 zrL3c((h+^XplyVjgU&+B*^Qa0QbU2tQR!dz5x|pD9Iesd%%C*A3U#9UFj8nYrn@Qr ztXshOB$-wzLa%V^k9L#{mQ+3ElXGUpueROD=A#pILX9cv1Zm;VkXCp149-UVDQ@m` z|J83$oUF=9OUf!ZX1xI%j*i@s(N(}@^1vpe@u3M4?8D$ygG`|Y9|r?40=GxqO-pK60z|WiL~jjRo;}1Y8LMm?(``^q>sF+si_Iv@h{J_g z9SgEcWJ*k}Use_PTS+@W!Pws1K|s>h?t~1|)^hf&CkKloJiS4- z^sA_TK>8ynE*P;+({J~ZeQTwfGo}t4Y5twC^{J(*4oLa!z^$@DpoLWXdg~qz2XiaK zv|r7)kygG~To4!i;05H)3@&dembqHX?wmV9RVOL$Q7Wf%JfO;_M<2iUl~QQ*1@TU4 zC;lv*-NI&RE#XEGj5WP40AXAruoUI4A7y`>p-C6U9zB0|In8pOBG(R*x{@s_c1kUq zM1ZnS6s->`=zB4b8jGh1Mz0uZ8phJn3wL3T_R>BKdHB1qJ&NB9*em1`rDO_fx}1*? z3$q2P0!x5J*deYl&g1dF=Zq3nyc z1t%yr{T6|j(&^l(0cWAQu%@p{hDXOFKU^p{*kXBI4pZK1bxaP+`u^o1?@Uw!ry=NS zaur^{#Vm>G#WacS$@UJT?w0S`!O~!hSG7sh4TRwfwWI%c^MWdrEECSbPoyucYjceb zG^M%$Ms&tD9`~zADnF_6H?E?Jg~M2~-!obwK!ugLlxt0j0jX15{pe-Cj5eCo7l~6N z^hHe82yN%iRZ*Y@n^YVCj*P?v7Aw)(J9+64DR_dqt6%e25Ze>FJT;SQMC#ON>FghhxtM9A=f@Of!#>aUC;rX>|UM4r!!c3h~5 zD8NkP(wq)JB*Kl`@HT|FK!jKeM~*AE@&pqhr9P!gI^W8+!a%gN_X|K0*-Caksh8WT zcfX{y8bju(@9?w|4u zV53{>51>*|!prUR^3z{)KfkXvAi)uSn@C9=Q??6N9vSDi<&=IeVC};t-QnBZ{jKN? z)gEfdiCaFlNF7#kt%DvG6=E~yhuG;tS^#s4SrsE7S|r+`#7KCu=B^=H!&6eTaf7D( z;OSy$tWu~eI4YU_)vBR-Ge<$&GEOs>?qYCG(xT=MtUU5fR>lzogf=k~3Gx!3X_bif z(&au>lIFmG3UVN)q~K|7REOILHjx{6Wo~L3M?s$s>8_<{?%<4o(#WX9)v3$N02#OL3STp1?%kk3hvEwM0ill#bc({w=THF9k}_i`khp`a z2;3@N?=80{o!7so9-TTtYG*Jpk@+(j9TIY^W(_rmCyOqOksvV!aYMU9~8M=Y4<9%l~niKMsO1KC^lES0T^zk0z<<8Zt zKdDJKlcW9s35cD!aSfq5>)2yD{&dB$7*ZN9Zo?4%?UrjGBofZhEqsYx{pM2~cMXYm z)!N@XZQue9t&unJWNzWACt09m>|#R|`igpbx-vQUt!7}}>C;=x)$?8G+TnWt+^v#` zFu|46M5q{-^sE|RQUw>ll5#Ue@Evm`GmOz-LsPD)wkKnxwF-=z-m@SQFChgQAl-!{ zW=tP->M@K&7yWTQNHXw)+7K{iO87lqeDxibYRKS5CZ7R?MYu5`;hh~|G$A=&e0k6m z43(LP7Al9;p4N%Zjd6h_S&&fUVRFww;n?r}kVZkjHmluv&L-qFN{`8ptxJi;{>pp~ zUnpL0BXhq>vX8IS2eTyCC1nQ3RAP$CNHe5%*oALzcpfj3>}WXtMwl}qb1-q)m>xzH zdSkE=<@QXQ^|BT)BDiW%`3TB{rp*u+4g;QDm3EWi4Y(x-x5$0V45Zx3*fyBc+2{aC zj>Qe>wWXNYd3WezfOV^?bO)I`cv05Y9Y$7aYo!Md^>cwHp>yc9rPP3hI`E7nP*)J( zS&>tloHrM0gyA^eww8vIcO)P#jM#{QGZv@RL7|P}lKaNO*CZ?lh41(99t3;aaazAi zD}8?p@!fXO6c(KOP+6QqdY*al#uRw4RBD`#fwbV*gj(R+hlN+uyk0^Zk}ZMo6PZBH ziDL!4ytr0~am^&vEOuf9z%6MAd}lILS-=bEt%hJmk$Y$;a!KtJVQRg4iXCYk3=5W< zVAEH=_5{Rs^gL;%PA4JsFt!SqnPHMuCXgya7Md8kYVui%%VnmmiQ1$Jn;7uk5-%LT|{A(@CPEXb+u_$?c~UA2P~nDm-%0!8pFaGfjy1eMiY~+r8)RuVT*D7c&*FMTbeG^M-AX zsvE>|4-11e1Xahu>Vb+1by1OhY=$T!Re#pa?hU>cpZXA4CwMMu!lU$4RrlA3(nfPJ zor0{w81LscCWG1e6d@k)bOw5+Czz}K;ZfqQZ*GTjO~ozIPu@%_F~+adcg zI=hh3i--!oS6{G{{Sf_0adoH>?JB-y$#|x!-)`f^5XHND$PtXF7q6s|Gk%2M>W8Z~ z;@Zs;qfDi9VaSy(BEfO`5J?+gAvrh14ZW?-$@B+(& zpGbA-hSmNYKDYC3dgfYtwp*C6$fcxeHKQH^ja#Le_kX?KU^AHYEU`fHh4 zWZu2mkSTER0#5pyeLP+}_6i*?#7Ti8Kz(%79SvwLI%}b6_84kZjF`}4pUK{ihxeUq zZ-*-TWMtt{%pJ&i%rF?N0!dAw9Rz>iLe3Elslm8gcI|`D161b2h>QI}k}E$h>)z5fQTbi3e^}B6TF#8*6lk~llSO|_=l%YCaJ+vN@gtk) z+diQ5Q|79_rpznf1SK7hI7|Cq;SsxBBGbwa#=(nzBDf==UV6zLK@6(+Efn zbMcpyg`j}LT*8^1WcL{B38{ll(vo(@2g#zq)OQZABQFtB5|w}NPH+IhTE+KnL13xr zdZAnVYHKtZtuIcd&`T9pDSo*-J71$YvwSTc9g%jcTK`Y!8T3KVZT3$uU%sc<73m=S zE~8&OSp9`LK#XBExqeNiSjs-%?OiV$0~MJld=^T2IO@x(AzYEf+_GP08~_)o3Le>C zXYj*{x{$0XJ5sEw$th9}7SCoLIl&5)h@btkY_(Ww$akc)X1Ov{$?s(PN@Tp{UpD7xWwCcV zWF*w=rkt35T~pbRclZViulHSshJDVA-_^_;is8e95jY#2Hj4hWeR%}KuC}@6VfD&> zstv$rQ_?xt+NAf?U@1rS>E(NCMw8zF)o1R?7;j8$K6U3wvHa`GSrHiQd2Ve6*MffS zS6s&Gt$;n)6$I`G#}f<>Cx;QDbUa7c8WFT^@TZ( zE`ME&+R8f;krQ9Mg!#AjwcPA?wz}IpyZh@Ky|tZAcXxXSM;2_3`~B(Y(*FMS8=IST z68vIxGTkSiV{xh~|EMQO|D$3#oY(Fq_22s1>Zyav46dP_ z9xHTUj|pha%MN5b6p?F%75c9EsJftq*&ZTC)Qzx3rgCzuZ?2IGYMIQ$_kB>~1_9nX z%|E)^XGz!25&Sby{#ll8eLRqUax*>K8>M5sD}&RQ{b>F&K}?9DiD~r%fRoYqoU#q5 z6TJ|QY6 zxVQCHAKQ%XtCuf4Sjy$1!Lt?AoePXpU(k_<9f=t>5h5d^*V}O)Zf}mop{igX2z!4O?7~sb4%0Pm2IGG0(C}~5(`IwWm2|^ zxZx79-jVes3_r>uwQpL@_?Dz3M2PglMUC*==DI{kt&N=iY~V8ws(5m%D5?iK1F2J< zv{f>p0*?jbOf(IJ+XZ1qbl)H(HE|;%Aj>NU;kOI73-K*_`r1O;kV@yo(CV|lutn~t z5H_fKF67N9lb(<|_ijWrF#ZlK*h0Ok5y?|n$t^Vok;W`FMt5^s}L67NW`IPa%Nx+NXP zWDpCDVo(;EX@+=JMlJvtoiRvM`4+SPiW?ewBh@=d5_6qgd$h?QX*MlL92 zD$q+S^clgOErjW%6Y-kR-q?!_YuPepT*eEg+*#V_g_Fuy<@w^tL%KprgtW%S`dT`s z{3=0WL;;!=)$OZ#aN!mMX{AqWY)rW49sP3A2HvP3`yvW9+V0eoE&)R z0m(pY{h+%TQ?PRgq-nE*WJBn0c#*bylrBo=|8n+bBdutaAc3)pR`S$?o)}y`Ayhh=~)M*+u+d-%$IczQClS|2vt{pCEpfldtBzk#j_M7 zAs(no#?QdBYf5)n=$F z)n8O6nQGEmj~th7rZ<%A0v(!`vc0P~IGK9h>?2>fZiZVVyg&#`;#M*oEs&`TssD%4 zHn=*atte9!p%ETK$&N=UB2~_9U{tu@!m1Gy3m1xh3VR*pIVU1b*~25%aU2K8M@4Tu zW_YB9b63cE!J|$6{lHMQ?MffVeMT5NrE%6a*vb%Zx7%EpVDd&=UhKd5jTk z9~a@`ZJrL&ac5$VN_gvahS3FBfOFjV9Enxcl9g?5=CY5#8cR%|flMRaPf?)<@jbr4 z($MpCh#c#ZgCk|+v%Hjz2|j?%gk(`Y$L`^5t8;s?GD(gDym(3`aD5oz6RIqIrUwT|M-`e>h}nezDnTQDN~H%OMO0>o#GkfEm5`MIx4hof zZv;tel+x9Rn!;*r)Q}7d^I$5bKWc`1<`>+{vOgc85io*EO?d&yn_=oMHagQVc65bi zF{4wyt=O^Y3_xml#VkO9S)d^0bU;Z%Xa&%|5uAbj)jUT|=Y|=uC)k4C+9HI;zJU&l8I{JOYz)_vGrexgLy2pR5Sddl#Q-^Vi;tqA7@2WbJ zL5h=zcnnyRFi68+Cpy6zS7ggP2;t8b6tX(e(1a}nl1J8RLB5d!j|9bvez;%T9*GtP z`k{oR&3rXA`zq&oD9j%e`8tmGNJN$l_3Vqfp)bhP89GqJ#bm@GK{0J~4ru}La>1&I zF1+~@jln8E5%E@k%J^5x45iYy%C?cu0aCd5gM-Uo@Ak9o4Ed+%XsA*eiSUDZs7k;K z*hz;^Z%9EIj20O&XK(}?VEv>s{kTPdW!WO8Ct7#)Bv_%|ZuT>ilf$feZ(M015Rj_0 zP~IHxk-S7p_fk+Gv$^TPGj+u_@Xq5Tk1(aFNjl>kMyZ9`YI#RNk$&Sg9stdgNBgJ! zOx17_prY97O=O+X*PLLR$$B3INAGC_-^aFs$m&}w$n%k@f*6uE>8eV@62$OGif#U^ zKa&7q!V-!+e6$zM38)`STrm!bj|fbxdV7;d%A?#6>SbSbSfMq77 z@aGX4BvgnvIZtWT3OKljvO%oxTV=t~iRiTm;0y+D6k_7NU*GMTf>hKtw0VJeJvqb{ zETe_4CrTUl0ZT;{#q17z{y2r-v@%$*cdG|pI3RIjST@r8)oMCCXRO$AKY0^Ycrf@% zFWNk~P$N~2O)wxtFCnl7i_`AJl98DUIn;j@PLv70j*uDCLil|;@?4CR>ewn4*zt2b z3u`{iA&3f4Rt{8s^@LF>fdj#ILmp#;Pw{sJ}?U@0Trtk@ri=Je=4hu=n~^ zmrZo!GWb+n)1hU#Y$O~ua}3r%0)hFO2wEc$lW*u`;rN!Ajl?%ZaY6XHQB3^3Z6OT3 zFOkcm?n})=0r$&SqU583Reh4`VqYGGO*!R}p|(WqSBjQeWrl~nkHxOjY_Q2^khh9bJWEMGYrp!=1ZvwLqd)T za>LW8gWo2XLs_iC-`CzNF+o)P~{BLC(y!nvoTrWzOIeR+En6NzB}NQri9!Qy0)$)8b%o6sBBRz34`$^4XY_?(sCc00X4s#H zLS3x3a=4^u&L3M~y&w=dI2iLN&dQ00zK~p@Tkyc(uu0(@ROJMDhf*wRT#@+PcloSK zX|OEyuKShgBs+)p8@gmegD;pjSPj0Q0!@$)wZSJgSFSf`U5Sf`W2Ej^sl~8#(jH=` zjXX257G|zg;ezADyl>JqmM-=-W`az1o|82aHScWe8xD3Mq~f&L1BfPi$N~Nyhy#C(8jN*8P{&H1ypyW{8d^A zw+gzqQ@HpCe-&t|1wD1!(AC$R2Dqz@eDq6Z#RH>GVuznccnQ{n<(cFGy^9OFT_i7b zBURoz0wVWZyaElYQ8C@|&J70VVO<*~^?TliPs$|`hb z8Y%UV{T;2nn13$ zMU&I9njQuSMwK@}2A9(j;`*W*jWI5H3mirkl1b8_kk<9^5N;9yAQ~`1iID``CTcF# z2x59s4WhcRk9;p6EU@(S`%&TrEe*e$tssS{T7qT@sJsnygIR)>kF2Fr5YfElvP+-S ztq2m$sJbLcHgnu4_tU-pNN12v_OIM`+v^3b^l^dFL=8i`GmF}54MCl=74I|CBEEX# zjd6d9Ovk1`u3)9qKcUMq2erFyC{{$8oVZDqP1tLW`UoRdzV2r)9pj|L4WDxBYqi4a z6Cxwfj8}(5j1C3zu@SWZVYk2VCS_AR+NUnrK@veo@vE;$ls%bPEbKh*u6+uRm?(N; zZlVn3SSN?Rm(>pRr~sd!j<{vUHYGWu zk;unScCcyAW^T(nw^g4s<8$P}K5awI@@3JTxOQaTCrGI=xaCc9TZd{u;@H|Xm3HKv zYMkABeGeDCy`jn4BAX-M6lxTyi1pY`cT-)NR`xK?0Yp8(aem`sY*gPXHuXN|^noch zj^e56x{J_#E}e_7S1m47;7>dSCVV5lM~b6|bGm;{&n)#rT*O3aPp7!|tK&s>Tv*ld ziv_x+@Xiy8h20SAj6?fEFsnIWi}6$IC1#OIv&x~=lCitoh?jlRCcqrKovrnShl;B- z^}ynJMrU`#OwW+%o1PcyX~$DvZ^k1h66cbQ)m-4D^E;}*U(8Ipzmj_GN9T}iwau80 zi^}2xqkn9HcVf91MouP08kSd(79&pyg8@VR0@Ft3G)i40kP0u*vRIi6Ld(Qpm?;^WPX+; zlif48xb+9abM5{Ty*W_z8A!m+Z~zP07ed0&T)we>Zrb*?3{4o>-f z!Nszy%sxnjJ1&ya@`ULW^9UNLR_)=uzaHV=l(?g-q~tL)mCL8JR?(o9V*$ zD-E`#{#YbWUapOZ?sh0^w_Q_VR@)?}G^jXgo$FuZT2=uh)PsERbTkbO1IicL3Rymq z`5ao%7HD1_lf&D$3ws)MCaM`@BD)%1MM6WAVUO?8G`v`^76}a9Tl}S&r7UvD{u{NX z|K~VG^%PCCINd_ekb52nQjeVA! zZh+yc0r(EUb_8gt8}PAvHF7=*yhd)}Fl(>S1`JgZJUGx3qXc817B+$=jsX-PMP2)@ zGcBy`NkJ^^`w-vC%b!WBy6g5f4^^Tk^uhvn#Efti8aT|u9{Oed{N8U^5vRKg9DJ4G{ zn!GNtfW3Q8 z=0Q2I{6`{ZKe6;7?{ck^k{07l8h=}Qf4hfVw~_51TcqA|NUgIT7BE7p=7-q9Wts?b z0f~sjL@kiXlhQ!qd9+G%ClX=mthgy$ge6pKCtVDUl@BEfmw3>Iuxhd1cJ{xf1(Y)lkt@e?#9vT@eCS5cG6S(8tYK&sn^OionJ3R%JP$eZ~6?Wln!~C#)}~mY4m+B#>@vv+>k$5UAv2j!z;b; zWkbyEW(8^#VC$b!%|q`2&=Au}7qJFIF>u=;IKl!U7r;q4R_V%ox$Wv&UOkn=gqdx9 zp+QU!65;X0>>T$r=*yh!@irp!R%a(j`s?+EOu6bxGyG^wG}EUHCat6#C(}lsbOYnJ zCSQOIMqY8{_+RwU7(q;*TYlOfzFwe4<|p{LQB2Sq>s}z{E=vkzX5;0pSwjym;?nR@ z>6d)^*3he&SHU#+2if8PUsNkJfF@Ge)B0nxY?*m1G+R3!jfc1mkWojY+Ct$sSUbKO zlH$nmck;Vdhaq8_Zdw2*Zv>qpBsOgI7ZRup2A)}eskaI(Ngup6BcEHPLe49~!t8=D z{J6|~JW5tcWzdSGlPV)RxSCG-Sz={0td+>XLIPc#NKiPTrj2kL*3_b%Sd-E)>B>&B zyX7sSuu~V|RcpA1>Eh4fG@s<@mvbG)y9z1Lt{(_4SKmZ`UN_iGj`{->;b1B~7;<%5 zway#->5q#u4TvYWk;XF|U+7(dFns7J5DRn?7$Tb!Lm1E^mWnx>6!7UiW)ly;7r1X= zR+sr~@YG_yE&HN+!@n{)=XDIa-sw}8g4Od~>>k7Q{yC>ci9ErD?<7jSFIx#VsU@v& z;VtPmQ-m7_kKcxcdJr-J(zM%?G17pFctejI5rLf0W*};?3zy%RI^bnQ*HmSm!U(Wx@@$j zifRsyM<^zA!YJuw1IwC1KO5{*ev(HG(BBmEO=MnnFF!#K<_bLrhe!0=GkqkBX$Rvg zT&*`BS()6l9O4phAYo~xHA*nT**>^M7Z4i#QuGp`tH0-eQn{rj$M?6WzD%1 ziZf3s3z~j{f|r&`Hmv6$Z#YFCB(v?qLLL)|hD1w}QSq`OV(|(ht`^22Spt@qqa7q!p;y)mQ3y#hUE z9AycUgOt8cd0keMV;C#fS9ZA%QvR3Ybdu;74~I-582ed8P7*VkAx3yl)t+LnQ%ems zz4x-n(&BNY4k6^jaWy$!xF03MZO+ozN2U7t`eLS{RmpvTQaU&xq1qqG4a;(2C3*!# zSc6{Ct|tTJ|DGXoaxe9lk5Hr=lKSn6lB_pmelVe+Y$f(3y^UxM!obHXEaW5$)Ekq* z?0kx#GkEkxSV*c@`@^GTlS+{WzJ5(bXVNeNgj@X?UP|cF3Zt<<=e^|!oi*u*fru^% z4n9cKew6;Cxa6zp*k2~u5=*8+(QHrQ89=~3Dr6vHFCfWuwKW2bP7`5Y-*C(`8$;YY znnp@!V*Br0F}GKd%3B})2W<#H<_UzWYn0IhXDe6Bg5XgLG@TT z4$+JWi)`x$kgMC!;1ICuNixjf+|8H{=A$uQ3mhkdTXeuznSAJVgb$A**FIFvtE0$B zQFJ@>LX=*E;-iRh$^3`4N*n$TV@W)ndSj%sSvT%Z2Qh0I9j*c4WqHwGI zIef+E-So`A{w)w3B#@JGNOF&gYQ!5=LMqf#z1e0mIhr4b+I6~X#8~#^VxfVS!q5CC z#+>lZnfH1lBp$~i(GMs>UoSSIa9=nQ zR9LyU;B}!pDjx#b9COYKJ6ydXbV3eoMNZ04xK@xiRWB7As_Z=@>Mv(zi3e;KL##l< zlRfEg_VLjBI3UglyrGQ=51mFw-O+&b0aNQ*Gt#s{b-D>XZk_Dyurt=l_I9WWYDQKy z#WkamWGpbTta3|DAyNdc;kw-$r>^0-+XZUgFPmN%>&^a**kK;WQw$T!l^)9RMQISd zvF)t)vt#8w^?Y6VVkwegyL%O!P!I1Ur0~e03_1MT-T=?#m(^eV+pwm?fnkQz$N)9n z@!>iGtQY4$u1wO&`3Vx~(pKoC==BdBT3ySrk;z)St^Q=uACvE>KOY?LUqyV}CXm^b z1|j-Cf#=wxNM%!FMB%WaIB81ApS8$b%XsgqX()ZGR=LfKo>rMt7M zx>OAC-}8W*g7lic4rCamiD*9#uq-E3^`^nL7jWIu7xOA;66*XhxXo;WQv^+Aw?p{v z4fU3{*ALaRQuBx8&8fF5A#$?Rl!SQ%FlQIt)nStE4}DSZeW1J?qNLAxn15||YqPhQ z9rgza4a3uEUKyE2V{;2@&IpqNhEba}T4>Bp_w+vDmyr_taaa|*^&H1e?2zcFkAwKi%6RV z!U|}aSqXfjs_SI=p5Zf#?O4c1xBgJmw4Em`NVl6ufb;lEW zmO`GG738xys$VEqsQmt#3L)Tu)+8r2XLXO_=2~`LY0v8o9CZ=uMCuhlEELs9g2L$_ ztAM~B3opqoUI*7ip+bpC%h@OC9u2}w0FiqPBV3E&ExC+bIXIJm!3jIGVPj%Y;O43OvF-7m`M(f(91QBQqNbm{#v+Q;_$)6xF* z8=IT^yVq`9f9d}E%I?agnwLJ@L}3@Zam* zb?MTRE~)?Sdft#y{yw9pf4p>Q4S)G)`-A!O;Y&|lecosYcjGhewZD2A{_=D9|35PS z@I?Ii@TJS&Z|JU=f4=k-{N*n6XX)tQAHH<=_dfxDKJC(L(T|s2w=}3{UV6i)z9#;a zzDWN)1^@Trqc_+Z4RFFu59fEk+z`i}rU;gTKp!nR_t!UiYdf9p?)DCx7)BWITO|%P z5>8;AylgI%n0xQP*T@b@%oCKve3t@9FfTbJW~hFZ|4%_;USR)~B<9QP59Uvjm^&m1 zlG%MaV0d{N&9?`OeA6rK*U*8UYB%4Qm3F^n6$vD*wBmn-m3E)~ccS|x`-AzjW&TQd z`qt>WMg4W(Lsq@L;>njFi*!oJ7b}3r+x!&$7^``dFhP~bY zpnGiZfRR0cdh6Na3^&LU2+5AX^!h}1ua3dS_Il+$_gJ5UvA$ZhS2b?)V!qo)>`SS) z@=t;hKVTQ;-DMe~rSs~gzB{UCdwmD4 zqug=4gkSNjr+a|oHG??RDW*Ib(QE7hh7(WX5g0b8(9WzWCm!&ugBOAmuf^lQqXrI2 zi9r(C@T?88F`n#3f-K39&h^bTx}UZAZA<-@*&{(=4aLeTp$+`Cy(kc-go}2a+yVjC zWeCx-am6zymx1AR7z}IYcw{o5h>tRW(oYR}@VZR@>*GOdJb1vG?v;5U)B7n5hRyVB zZ;qGkIAD6ql zz;4Fqi>EON_Ey$bscP(<%N4|;a4cSiqj%Jpv_p^)pv#_u+_D?F=|cJnu5(AW@jc!M2gR*6M|IpM6E zHxHvIa-=dnu}H2k((x7y5*Rl+n7!0tymWA!cuTJT@xVT{UcRL)Ln-|vn3D%z;9e&$ zfn+?LL9)@GA;*1&H1D&)F)|q8(ZX#NnO*{L0nRX%##=FX=v|1-`csBb`bof%2bi_; z)(nEBv4zx0NMG4dLLcz#^bcZQ?q*Qv(0Pg@MVjeNJnL(UgE<+!O%R8^R_G%jv;re~ zPr2gZ$Me9CxAoz$yUFHSrTaEz;_ZCB(`!3*A27kC&1|-q&Ksh5&@&e+;K4I|D9j@? zgkwQtq=(ywcEuv(x+}f*pF~TT|C%B>|1sqMTNLM+S$z-0B>Xyx`uBl7we9lQddR9`Nk94?%LD<;P?0 zI(Jk3Am8Egi$~(w@5r_NYzB$Cwo~ChcN)bzg;2C6B@ZyXc#a#^6#)AT$UipJWMTP4pIV4%$g&-w8}qr!~%Rl?Xnmjy`7LyHQGlAuT| zF-B|LBS4{Vulq1iD?sA;!63O;jD#Y3nj%?V=v6#%?*ch}K@<`dZB>C2J44()bDsoF zf}{2beoBN-sBnl9fcSlnJ6GK=z*Be%(vUL`F#6<*2+3}@0wG>%nLDNj1Q_(&@bZ+D zev+(VkKIn^m{z-zvE}OX z2p3p2jGVkkf@qN;G4q|9pBGCp=z!IxNEluJ&H^NPFmDA&^!nwr>$?b$R3nC);^8c{ zm&ou?8P5uglH3T^4`(GkEI^TmK39Om&yUAf^ksk-4oc2ZVMb|o zB=f=SFOLW?sKEV(7`S`EYkmyIG1JPK-{ZZbXq%270fMuY+o984MH0LEg>AIfdcYHH zLxG=xfzLNlk%oj0F_uJ zST)>T{}zvD9d(@NBb3z6xzh%shdi47DkSH+7}0pVoH7NfsdjnDqwOC7s%;(>-Fkyj z>0}!!NW326EbU$t8s~Jy%Z|tY_Aq2;HwurI<;Jt+*}LfG=|&Kb zapNb$+(B6d6wM({7wt(98BeL%RCkh7lr}`#zh>)#|-Xn}^d_Fy_VJ&Nqv z58_e2Un*4qE;$7|nm^p#_$z{Vwvb3MowTyodrsyQL)#DH(2tdQ(TSF2Mh6|p5qU)? z77rI|GvM*4r=+F+%F9Zik-1p&A>aEl(_ljco|Qu}0tt_R%;SyqwRDU^rezTE>xJ>? z9R^S!L#Hupy8Q|AhnJz0erh-)M97t@^O0reRr9&2#$u3;(yZn;? z31`_&;*cP%6mpfURRzb<}Qpgt|*A1!!Bm$kfhg-e`Pp}3a^xXEYVJ5R! zJU5dARg1g?BHkOt#eUBjOe)Xc&S-F~t0^>obH_=~g2jQD(Y0}ZvUc2`-^8s&de)ir zD7Lk+^f0I6QwEWJG(n)09!1>%^^l{nAByv>oH2+tCX15<`w7lh<8gY1dmYNo+>}4u z-Og>WayU{xGLB{`m9>5ZsrqTivta2{W^_5{PZE?hNQ$cUS-aCvU zpP_c%AbB(&#bm#a6b36iWAYu;3%OetFK{l!>ZVj7Kvk&O=!AZg<*Cl@>Lfnf|(D7-Z6 z3#<^2hlt*9eoz2GIvw}V^&z4HqXbGK70hk@2g^~o#3Fik;k=0-!eh}pZUSF)8+yZI zkx*2}hX!z{Y6LCqE!?T{!z4J?l$_AvvZ<6Xy5qy;NF0wzqvh2eBr95s{CFQBL(+nT zaQ6ZqDMmrD3B44LZL8B0y>d9K{-Y##awz`?vis2zL?pGUR$7zq-Sj<~Xf zqUVUS<3Cn{0|nAi#Lo3-KN<_?d;PdbET&d>g*~zBnzNKXJ^~TNS5}u(n^-a%$) zTgh;=IAOq)pb2E=Ay4eXCT8e!cr3^-NDip%<_Lw1kuJYK?9N6hGSr{j5)2ha#bV=p zbf3#(Yth=_-Z*`p2t^xK1$P7R`2iF-?I*MAqrt673uigz#Qz06jvlIUj~UU8*1+68 z`Gq_dx+g-hNYsi_@m^J@f2^c(Sw_ByL4xww?f79BpTie3{p(9wVg@p5)P*B{Mi{Tu zmvA_cRYYG7tqf68x1rwP&L>|gLZPpywxIVwB(!OZoI#q#q#(9doWF#xvOg9 z%)!Nzd_x$G=1iM06Q27jy5s%EFdnUJ4%69*E7UAr?=mN{Z(`8&kcii=FSpplt}IS! zzL`Zb?@VYb+)Hu2*+W<$l?$(I2GM-sY=&>)(U8z469j;3(aHV~PCwtuBWm;X!@Sh~ zwg3t`cMR!tSecwyN#Ral-_B!baUFB-=D)*%f<)954qq7zlIh%GV8?QTTQlDoz%U%< zh>!=Qe^Nd4#IG689<%|?_FX)hwLTKSk4+{@bx||Ru!0;ciblnG4ZfR4wVn*dNRZkF z3NAw6dw3KZ6E#znMH9~l=1lm#A_Q7`o8sWkKHtaVpxV!f(mfo_PL%Az_f`$-iC#e- ztDmCuzn@2QN2HaDHvNGR9=I0!hFSxhyj4^nAN`S{~7&L22tQzBCBbQ z|4@Q{MvmzJM1p=c4o^E0#GL(qPJ)LX*t91Sl@;lf&)C7`Su8F9k4|>dU1m zh`*iYvMK&@06{JxZM@6p?)QErfFwcorj^C~xQ9C0clL$mukuLrNtdAP;s&;sl&mya zg8O>T;`_A#l5x_XA&Wm^r}p||cwU>X7tS~S>j5k%YP^^y*ON1C^`Sh;6#mVF(HP+a zjd6Lbzb&le-w5DRS^aNJ`j{`+e4_!>%a9ase#mNyj+5%&R2RTD3QxnS%?rirvJPyhmmus7LR=Q`mrr4?9 z4Wgm5-4qU3m*E-B7sd|$y&#h7$?f^}Vt#}R%cE}Jp#tOgX%8NX;{W|19({k^X`D-) z^Tqx_5JgWV>PA+B1#GDL1{Kc}#!vr;VKfxu&{@BO>*tSn3_77uXM$q)J~4@vS}rE% zk9jmO=5Qg|kQ-b@xjzZ_-`JAmZuI|D(ErLLot&Sfi>A8_cOUy_JdVNvTE)GPGHZ^y%R#6o*=8|Na9BYz`9kz|9}2-$s_=dNKm^0y)^ zcnn)rG4V3uS<_Sl=kJ0jmIk$|I&)ep_#3DA4Fr1XBAP6<_ULS{SQGDTm9)B zj=KLx0fyW5blAfC5iaWSpTbzuVZ8)#^qg=fjDHSd==QVhES(|DKAk56984=B5-q2m zRdXL!&A)`v%+ldv(AfXS_}uTi5@PBk{5(R#Lfj^PfB(veyu1zlm6}Nk+L#Q5~@1y5UZK|HY%Z+0W?N z0US8SwyiDVc&TAl@qate6e^nSuMCIS{D#dd6EJtb{}aMM*^Xe@FIm!Xb~yjq{|2xi za zIBFm5pZ2xM*l>2ZH;Q)!uuw(s&9sk=n34)&9Zgd#=?b9e^~0UhpAbYesR~JS|C}}d z#6bUWJEEfZt(AE<%|z0#<*9c&6q&tq5 z2=4U#nt}cw?X|l)xZKN63ShxW1`kB5&t+q^7l+`r!U!nQUqvWm5pbTwCx;Q-Xlie8 z9C+})pV04I^J6F{&97hK~0wsQRF!s*t%CIz+2u@2qMS@`~ zJ*{qBu~NxN#p_8hG?z=p_w!TjzNKtFd*&_l?sjJ%LSYh3#5J z^9BJlINu}tC(=6k4A5va+L?OWb7)48wJ+~nm?!D2Qh0(z5xtb0d-&1jV?ajj|DD5;&QR1ASXidWHHg6F| z(;L0AvBWZ`*tZNL*h^*<&eM{FFkZ{2hp-$w3t+_02!r9RLKsj2<0{f{R~AaE7~Wcd zfvnTU7#J($?f{0pQF7MOJAO~h8RbrX8z+k0?*5u`@@RdI0JC`?kI$;AG=5GPe!MM@ z6n3A9l5l+>3ewa62?+`?zJ#VY&@Vt%tZ0>aV%m^%wO(uHvaI^G|LM+;)-U=Ge zDx!PsXGNh=5x*6oiC#~h`zd-q@azB@R9S(K8TO)e+j@j2784h({!TtjCQlh`62G#E zmK^Th;W<7erkXgv1w`}2b9+a*!JivI;%7)S3dTNpo(}~@SotAD&&h*~#6Dk$0a0FB zc&+3%Tt!zruehFz*}3e;gtw!PV_!T+Ja!7bjJ${Gy)Y>&2U$ACoe*tB>0-Xst1u)U z6Qkwsm0=?5330})XgSaP&^yf+NYT(#wPw+AQhc8b5v-bR1O}M5zRA31X2z~=ZlAng zhDmRet|^O_ATFl!iVV&5WRBRHTecRE5$=j;x5=dkWVm+vXEblLT~@%vbIG&z>0Qi& zLNv+aixKQ$oTf*IBh>GvQ#Hzr;F(NQbX->ahh*p|)??)e@wlDIVdKmLoEPYY4m_$p z?!K+bM}MXhcn&LUiIpJEHhz&D#U`Zytw4#EA8yUR*o$R7frn7lDO~cT9W;!derE}q zv8fqO6~{{PnM_HvPJF9{<8XWFUs%t_9}AsnYk zS#TQ96ZbM=g+)`S8tXXtMz3v;bxJS1R;4(c6BLbv@dm6(k!bmCJUd)G%sPh!_SQs& z#ggGg*8ue;9m^LkT4^JI#XvB*aHjoXXEID~H`T$M>|SLNEoL+9jLW4|0TRs_&*_e` z8a~3|z;!D^F-};&BAv0g~I2gS;n0v-OfB(nnnc4ii{YmraFK!NQGAP=)gXhjQFZ1_~+xL~i zQDQ5l{Bn!tIouiD{jOd#yR-fzL&Y(3%F^3?)BVh|+fxn9morF4NTP(@0}oRN-Nm?h zY(M8ydbbb`BxgX9m1Ni=9`0r6yNB@XjSf&Ayp8v6%*uTaCyGW3KS?|D zq`9;*w^Z*bMo~R(Mr$!G}R%Dd>n+3;P8EZ$59Me6dSh($NkBXnv}*;%J5>yqIe`h zND;IciAG}-o_jiaFPsEW%#nDk4Ga%?IPoYj9ELD#jB(t@JA|bUL%`8!q8?6l)|+yN zvjvVq$cQx@m}p(X)iXGbLj!IhI=+^cEn2fMyUs|02vHl&YaMet@Ow#6WGElGUQun) zv%{UAZi!G(&P&CRs@O(j;bO1HAuOl?s8+QXPOOx0Xih?Cw8keuZOJTS$4=yE8qX2u z^-X0sTFITn$?a5zgD%$b0RE)~nL(+c9CK^>b^uMQXAjR!K4nHd58xop zq6Byq?+Kgo!xOPXuL@o%#nDP`e(r|ty`@NyU+cHI4xPv5XbjxR@B=~^CK=wuke+>P0js5j?AV-+{lEYk<)5`mzv1fPDvy7V z1IJc>J~%#6#s0d5cLe)7$<)<8lEVylQyc-16{h;AELMsi^4vXMh17g-G&X~&mg*@Q zm1k{rfa*g6sE`U8;V>FWmMBNA`lsErjhdVHT(%5*#gi{xdey5gUD~|sRrs$9WFH!b zOlSPd+MQ1h--lfY-%fHkOR{6iTR%oP^&MObAI{_3S&Wl>Ue!GV>%ca^b$L_go4gNC6c7W}pqp{r)-OF(A zV=joWEe*`=t$qu6E$Z#h}sC*bXL-fBs>}*T>5+As|`(ArS(9zi{2#QUwK#A21_guDOUbe??K*~QqjKru;RoR#X+tyJVCtJzM0Z#nL znOlGC8_h3Hw|+r9O4KQtQvrAj}Bm6pA)pb1?TtUlBlpBWa5| zpNmTV$~YvhBXYC`;O6M7!g$mKAu7u8yfId0xzp%Z3y~n@^n3#kK&$SRSS;Mz>8}xD zafog7>~Q{quZ_TQ=V$2aBG9-5H+F_NoAT?0SjdFahGk`wkDn*cPVg{xf^QI_(MDTK zGv&GYq!+s17=`CfOYt{Fq1harj2dUv@SKz=zT=yPXtvMl$r{^~;BN`zK=h?jzQ)#X zEWw`Jlox|5-x@&EnViC7LJ3%KqnI8XG}gY>sIU0mDAxSj0$3hJso7RAcsy=YXZG6z z7&epssWx32&kD1SzaxM`N7ON!>e7#&BhQJBqQ<@_h(%SDNi?9Qvdh^}-zz{uilhxm;Vgyk6XIykQs89e z`-Nyo$2nXR(XzsE<_CmW^!C%rJbAP}-MIW<6q-A2CH#;OO&eAMw~BsPh=VdSG+oV{ zto(=z$08dIbS{MbRmzres-Ca*7J~sYDmO;M*xNrELet6CbUvJ|9AgDgv@OTr`LO^V z14bQN*GEI_19&*t6pzQorEFwB9)YLRnje(Qrt}jLh;EL?V<(H^wV%hkxB(vhWB}26 zGDG!INXe{6&wu@b6pe~o?>`klwV`%}%@iT%)gZ`t9E=_D(;^%c%y%7mSu3I(jfB%Y zKO;ucogv*+y`X(G8qQz#vtl%3$WB!W#_Al-$NO_4B#2B{G}ScR+kl@Jq39hi4i6E( z+gMJR6YMVpkdUm>oV2EYnRDAO3bC}O>9{%ir2rZwBR;mYx_W+Dg2c;|*ww?u&;3dO z300oH6S|+f8~D{ArYxCTF(zB0{+uIvwm6UcuSxJI;cO!M*&HcIhN*acDdy|Ot<&e#_HTF9^L;uXtzJ-P&kDkx_6In_1WnCFTA~X z`>5VrIhIBD>^TWhhR(nA_l&8pbR0eJTz1I6Vta1GYr$3D{cE=OwmcP_#QlvI0c_<~ zB<>;4yg!0@|651zrUVPt`xgAes9&0)oW>xT;yF-8S;8sF5Zy30l?pC;`|o79*2Za; zkPi|mOg*q-R|$ve?;}w0%!)?k@oH0i<3GqysrOuJ0+GC%GW26A9R*t2MD~v|WIM?q z8J!|jT1(sZ#LQ?#z+#bceuaOMA)_l{18X;JL*_Z_^`BWxy>xIZncJn9Pho{g(YpCT zk7PXz$@&)&BE1NgGF1T-J!_ubneI#eRgQ;(36hCsT2n+G|2x%c`!^XP%^U=jb@6Ng z57rx>g1Ecue~-b`y|-IoPqYMaud4nd63f~Gua{1Gqa);Ht{a@Ovc%<{`p+0-yXiF) z|4N4I$xs#9!eMrXqjpoy-E-LnLzmx7ybO}{Uow2Ebg>g$n=63vQv7!W&LX5vbGh@} zGEmlm|G6Nl`f`YsIZmJcZv?6?D(5^hOBdAyebIP4z8tEf_^JpzT9tPDqsCIt?SYq` z@T5!oJ-WzU>2~%z>TkI{YWG0oIHt_PJ{HAmFpq|(mqB-l5K$F(6p`(puPo-ryCd4F zQR|@{Ey3y6C&gUC&l&H0tQ7uZA2sEydzH)A*0$&<;}aIETS=S@7rHrgsJXIT58)0xahU$ zv7_lu^bIbCtv&nIbEj|(*xoP(+YslU;t{+l&lp@!i^5g0tsCOv;uzmZhHEid>yO8D zS=!i_!&%X9EJ9OqQ|5}|4sz*DVsSO*5_h}(rb0CHf=ypxPPDG#Z09!<<5_B_Hf(3+ zp6AWu5w)kC7(dNh#N%qorsv*sza@+6#(Xq}AAUSeab&f(78P-d-CZ8^*rDst;7=Ez zQB|-g100=pZcKMm{Mq!rnDaZll>}2dfsb@fs5XgJINk52tz`V>vS+@v0NF-1ADw_f z1dR$|tS0lbB$@1<;mxcDT2)uE^T}B$~pl{Jr^pcm>N}Kk#{u*2dwM)3zS>kryXUh<&!-=`2XvL@ZAamdLP6AAHGB1Ln@SWy& z&YV~MIRaGO{wz~luH9r?u?4uZ+;at}=tY88EynL19*-Tx3Op|w4H&c-G+uL@E%JOZ zCKEAK;FYVOP3-F9uw8C|4Y@{NaBoFfMPu{KCEW_%(*T=O?BgYk(GmB`(5)v2i=*wu ze7cxlT})I!ScPTLsP4IJ6?{3OVGlfefeh6n2y(r3e4D z+A_+UKzUyqDBTx^@!Y)E9-YfLhroINg>d%hY8_iu*>9^iE&Z0e8e|^L+k4y+@CsnQ z(g-tDk5NMH;wV~gxLVQTb_rGP zM=46^g%`xtomYckVpqvS%)QWyE{Lj~eTBQReX#_Y(J*J}>=rC_9r3uYY(FQ!XwF&H zU71hXmEZZo_&koO=+()2rrzZO=*;bCoBZ?G4OEZwB@Ga^#X-)m{xFNryi&jwR=ctH z+zDePfCx_FGXU!1o+!~rvWn>vEn!^r+$xVo1!~g`ANydURYYqtMEr!sBVs&3>j6Y6 zptfLYsIdFWq{ZqiE>dDcf~Odn&=iYDf6@u{sssxOP;QC2*b_frj7Rzr9+L?LWf&BV zhI=h~O@zkz>>wHkr*}F$4!G!x9BIQV&UrH*4WilV-_|;?H+p5$dns-;y)=j<-yX;; zZ;Ztr9xB!d-Ck@4v1mETS5q6=;W+8t5+Z6vUOak+vR_{3ada~B?)u6;#IGY}j<%za zY`Y&6#Ut{Zl_l>7V07no&Z9mFaYKOtwqa-4!jhoIQS1j;1qFcv`t*^UM?NNiP#3x|;Ooi&@eZ zk345i%5w9rafn*v6L+8Wav>@!Te#A?IZ!29F&<+4=Vw4Cc_}1Q9K-*4hlh&X$u&m+=6 z+=V~lXUC(5X}>&>;ApFUs>cIP^&|!o9Cl(_u&y|3X2@f~;#JA35v@mSr>T^1dNv6o zk%?}!%v|xrfnLU39WtmW4?Xsx#_wo2+vW6|#;dqCMy*yVpGUuHRKj|cRUN?*_cqxQVPp2PGh!uPA@)a>#wQqSZ%~bn`IZkcN2Hq*>O50 zacgRiaB&@TIX2=|nSTxElv@FdI9$DBcw&Ye)8e%T6Gw3xiEeR_4Q8VQtv#yK8I6oP zg`5SEkwoeBS((08aoiT+*tm_r?>owma}f?0B`}v7^TT6dzYrGoD@8cEsOL@D#j56Q ztTuYUBfC`B?!84w$o+mN`SCtt6f4>JWKe+;%MUK{<9*|h*b_)YM4XlO|3rwC%DaOo z-cN+$<_tw4o1*ZX#VC{f`^!6Qt}4!7_mNT@z6X!dT;V)WA0S@lV|I{EJdc|82 zq1t3cBVu&pr%4dCsvEgmr%#ulsd)ySF4cHB@<=qrlYd4Smvy?8cK(VeMPuTuv(F4- zqD{o8?h24-31VU+J}U;t?lLh=LqrcS5hI^1LF8~bMRUdDNuX%3&k19gWOqbnxSD65 z8%8x9Rxd6PWCM5d)NySQEzg`?{dpI`M(47IlEm@r^Dlx)728S99MGcqb^q}_ zS%22J0vLCm`m!*hy`4LNi92n6c>vS3G`*EWYP{||azyVzz9N96lNE3ftmgMpR(Vz; zIrhHWZ1yo_X_M|6*@?LP{tHW4mi8tg1_vYLMt%F^8Bt*Y64A$?sy?igxu_Vf2pWdj)u4 zh2>LLVNR@u1H*+&1|{_+E!{t+utw7c*)urdYF>xJ8E zf6$MD7-0RojzkBslECrehj*I{jsr>@8rt;i7=kE>*vGhBSr&xkM;rl~O+PS^je2n~)B%~3Eq?&rcN%o@J2vsqcj zv08<@OZ@pT4m`+QjH}`N(HNLF*1r(OKzkoT`A5~z^=LWePME(K#?itFlk*V%k_f^2 zD4XKxY#Z+^J^Ky4Z1`nA7Jdtko|6YW=LPcG{)!(3d27i8pisZ2E5xHw$piAM9t21n zobG(A-l9Ti_!9ka}!Kl&bHOuUFzs_S}9JkRZJiZX}9sdT4!t1(? zo)ylM{+lcYni5Je<#X0WbAyr8-wGmOgd?6Op1Uy0Y4Y1aByIyWni~v;-|=F2e1Wp$ zShDRzpmL|%-}PXi>;k;vh~@+%7r*C4F{k2aXZmRbw)rWtbyQVpyj(Cl{qF~mY$iwj z!TF6TMdMafdOQw>BY)t>p`sHhwuQD={8=wt6ODwkIsVX(gj5GoPR@}NqcJa-eg2Pl z1pYvpXg+ZJ{2%iuS~@v#Gw~-p0=L47=D`)unc#WQnt#e8a2!cuwFKvV`m;dqZA1uh z-lsq3``6y5&Hm(QQFocg@_{=M{RNMswU{JM68_SUp(PG*E8(yFy>IpBgX5LSc?;(t z?%n-g`w{H)Cy1O`J>P|22}v{08=ulS58&T0I1=PtoCF;yZA#|fhS0R-Z}aFV^3DET z2m@ncM)SfGQf;m#)k$u}r?kCQw_;(J0mB-x~%6=f@a77rR=Yl!;{D&7uIt{>xwlTRE zTK^e=gWmUPr&4vXMstSo;ry2m(c%D^!n{Hf%@uB?{`>?C5axJ#5-pL8ci_?!pLA)zN7?dL zx}E)w`WxIu`&wBQaJWJMqvwRXIlIe+1a5D&f$p!&=SXU?iQGcT>>%yWD7!^PNTbnk z`}-4EG;45&<2~>(rT0H+!Dqp}M0g^L#4eWtXEr8OccAh5;oefc+66H|%hGP#7#p_> zzB-HT>S!`7@Tww0u`7#vulyQ89NRM;IoKW^?wt9WEFOx4YEPcIygE;cz+oT_k=<-i zUuMy>#k_8Ntr%33;SD5F7~G;9B@HErdqMr=2u$Xl6lxOL0vEMQ!g$@toJU_f0#~Pv zjPeYY*NMR5xI~WT3-|8tbtACY(6Y@D48N?ETBn{H%tzrtc*=#5-RWwluNOjQH@Kvz zwrPv29%rMqf#)nok-JX~q0;rB$uwC{kr=kA7U1^(*Oz0thOm)zcJ71}E$Q6J>J6eX zL5{B6*HBk-ukYSaj>rY2Rqi}3gr%_I8@=r)vKB4Ro)bA$*m&j zU4p`8a>S!xY{s_=p`bHrK~yT+Rx}na+uvJ9VnM3N*3KTB|Kn~6uJ&Yx@ld^u6iF*` z!)3L3TNX)YG8_$%Z>JzQ*2u32Q0%(q;w0aW#gsn+CmNId64%AE1c0Fn$|q4C%SBYJK;)+yB; zdq)-pvUe1ur6RuZ^TOPuJ}ZQS7;(q<$Y)DXw4&>{JN9?tQQ(-_(#^KVCr6bJp2K3$ zHxw(UM>|luG&2>^h?P+8rSo$GNGOK0aH#7Iz@7@6Xi4RwmY(OqgG3^y$qcVY5_%Ee z7=dSQsP5bIeF#v;b~QPMm;L(6ZUsQ>jBwuU%S`{><8+dAkVs`dIy|pmbw|$xcXqrd zghOYJ0E)e2Haa8=pT_;)d(ekrJsF@*Bqhe)OGkt1R76V$7lZJS z55vY}*y2nuF$gd8A)w2^To&4y4aV+z5r@OpG;L=-7+d(o42sHPZMr&`)9yPnC^ja8 z+4&STo{+P`IVth-$;`^TFi6O{SnUswl1&6aRLj&vqu?x^moO-<^(bzI4oZ~?iAKQ1 z6Fkfy*y_)qs5Zu768j z%0XXE$A}VYDic>cy5c$D!8(J&rKn;#z{N>zg!Qx-<-+Tpx_FZH3=O=c&fNl0AdXU3yL$oIDC#X=F<*y3+w z@QH4m;uu?5z|kD>XmfhwvgJcT%Jf=4+k_R2hq4qN-MDrI=M%l|!ZAlhqy5!wxHKpQ zM3M|M1jS}`hQ!YcvtqWrNY;*%!7Yl%?TwBgD~lFv&KR%?Ivg z;W2OjbUf&G*81b|Rn(jU8&H2CYg`AJyEohsU~#5yiRK9BP3W;Grqi0?6Wu$vLUy^{ z%?^vAf0GfGOA9aCnfuclEE0XAz1pASHTiirJ!@`>ah};d4$B4}lp|>?nIO~tkQPj5 zGF?>FY4j{{QNK6i@N6cNqxo@D{myt>UdG|+bk}GVyMldU_ZaRB_pSj9R8^}M&KEx` zo;N3yNA~4Bg3~M3LOn(O1-eUUY%_EGcsCZ!33mORM^;xVLJ`dm4#B$z5je^~MkC;? z_4nWq^k9)rhFNcfBDgR+s3z2D;~C*RweKlKLp7WcU5)4v2c+0F!`aLGJfaztJa*l2 z3lZp?&*2p;3gvz2cpm9TOAF_(?R#<1F|$2;h~ve9A46u$AzR_Qacm%G3k?_?##CMovqFv-9D6(0@QMzR9lFvu(744VmM5kE5?dzNwmP8=xI1KoX`&9}Q( zv8v{noN7Q_JO+=vQq)!&!hn}(lOw0&C>jU%o_)&UP)w=2Sfgc=nTyB0{UZ`)hQOdf zAIV&62^XSyaG&Qy{&dX6tc(FRQB&!=;yF`38@*+<-c}~*TKh) zs%*1Zx`N_GCFHfOLYB<#%6BH`oO8}Orz7W_bIv*E3{P~gBpc1ne44Hq-7omQ?ddc< z-MzruZ0N#+2Tu&*5bFba`CCFf_%h;n7Rb}>hp4|WjCO{P>6mvlP`VLk&#GLm~l_obc8J0O4%)m=^aKP{? zvK7hxkWTbQt!?zqxy~Rs@k2XMDZ3gXS?@zNW&Z9FXK4dHKTJiQsMIPWjrj$tHTc*( zg5En0SFsDx(l7@gZ!$-*{)kTWxkfTge+zP!HOOm@>_p^9Pv<*Mo~5|h*VnH=i?teL z8AoZ6V}{*HftA~`A*yaq)^v0hmz+2EqgKPn3p%>h9g{`p_MKS@V`DVmN_}qA^hcFA zE~e{tT;+fw+p)GxDB}t0S(BIQ0_rF~&Xxm0I>|v zJH*L|L9WK#DU@&MXh`({P05~uSWJe=`g+89XsZ|%uPihp@vKtBBj#nu3)Yf`oNC7_ zPrHIb`i*%$4Jou|jcDzx(2}2;!LM^|<}^EA%wy1*hhdKj|Iy@h#Dm{iQxkHHtmw{k z24cXA?#P1;C?b$*2ugv|s+*EN(7nXERAL7gOw3j$Ca2g9f|XhV1S<4L*0iu)JOUA*zm? zufz2iBT!}jf-H8r!F@h0QRLIV1E=mr6@XmwhJH%!j=vDHVEL<#U+Qg;wOyn^Z^V`I z6jcS1)Y_bVEzr7)4e0#UuDED({Uur4m7IX?Gc%Rh^oQi@`P3>Rw?~cdp4Id%50<&3L_Bs&X~S^>jd=#0?fqf)X`l zYn_NstGUsF357t7qWENSlQj$V@+oD3I>T?aXJJwjvGt(-!CNf&6zWRi*6QihDw*P*$_yY0EqqgIBB+`kxVqC9JH zkC02|!Xam4xQ`DJn|p29?74S+1NSeir{zf*0g2BFWDECMG4hsG0w(ucGNCemsajE+ z+NCll*SF8=a46qz2f;zAkSCW=fC3;FauGCg9;$V+5Gx1&dGnV6JV z?Dx>y`eU|idLAbqw`H;k;^Y(dTzVcSpA>TGZJd0{mW|&y2{OH>tr+>bF(F%e1~F;9 zIa6(UDooq)l;l@z)u^`otOb+KXJ+-WLmDZOT%JR0g584L2)IVd6llkkFRq3GQ8<=ufbayTyK3X0Qc=IZgT{#$5#DL2kyFB^N+9!4F3?^f*?kO;gvflK%L#>GwPE_lPP<*zSgRL`5;|gAUYLYCk25rUp<# zp9jM(avL*b6x@mWA?84(X&?VcLK{Oq!VD;ydtqRx?enrVwKQhP-C|7X^W0{Ux~ayVkypiJxY zE=+QPD>|zDe9;Ac_XcgkLWd%j1?t}T(uR%ZK%|<1@}RE}2M<${sN?o)h#im9KuKY) z)cAgx!*G>G zR-C;M%D{hE#%d0!aF$RUqGeV-HbsJa=8rmDiU`g9*g<8%c|soP*iR5$vk*Y8;fC|& zEtx+X(7|duIX;*f{KbHu=K_!OJ0j}w{#A#}zE!glL26ORxBsTYrRj6iP^cIi-1&aj zVdwRup<-M^eUT@=|5(PQe%&ytm8v}Co}>#UGb8_U{Q|cArv{m3kCQMZ!ZQ@T%xwP3 zqL0$AecC^+UvYEZ*q{!ozcCwjHQsn2kM~cO$BHD1n)F7l5x@ri-F%D9inGOq)WbA` K+6ua&4F3VD$x-zH literal 0 HcmV?d00001 diff --git a/lib/steam/redistributable_bin/win64/steam_api64.dll b/lib/steam/redistributable_bin/win64/steam_api64.dll new file mode 100644 index 0000000000000000000000000000000000000000..c6e55cf6aa51e47aec5abc6ad2661bee47200a59 GIT binary patch literal 265504 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 XpPk!xZpWAdV<*pEvj0pp`||$*H+~Cd literal 0 HcmV?d00001 diff --git a/lib/steam/redistributable_bin/win64/steam_api64.lib b/lib/steam/redistributable_bin/win64/steam_api64.lib new file mode 100644 index 0000000000000000000000000000000000000000..a250a7319138b31053006a9c2213cf9dd864abd5 GIT binary patch literal 351730 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 IP=+o42i0uMu>b%7 literal 0 HcmV?d00001

r&kGd$=_7lM1?o#?UNO3ls>+4{5b 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