From c43f34ed91656b776b69c2382b7eefb55f7097ed Mon Sep 17 00:00:00 2001 From: Demetrius Kanios Date: Tue, 16 Jun 2026 11:24:56 -0700 Subject: [PATCH] Initial commit --- .gitignore | 31 +++ .gitmodules | 3 + Makefile | 54 ++++++ README.md | 0 build.gradle.kts | 14 ++ gradle.properties | 1 + gradle/libs.versions.toml | 5 + gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59536 bytes gradle/wrapper/gradle-wrapper.properties | 5 + gradlew | 234 +++++++++++++++++++++++ gradlew.bat | 89 +++++++++ plugin.wasm | Bin 0 -> 54609 bytes settings.gradle.kts | 10 + src/wasmWasiMain/kotlin/plugin/Plugin.kt | 53 +++++ wasi_snapshot_preview1.reactor.wasm | Bin 0 -> 52295 bytes wit | 1 + 16 files changed, 500 insertions(+) create mode 100644 .gitignore create mode 100644 .gitmodules create mode 100644 Makefile create mode 100644 README.md create mode 100644 build.gradle.kts create mode 100644 gradle.properties create mode 100644 gradle/libs.versions.toml create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100755 gradlew create mode 100644 gradlew.bat create mode 100644 plugin.wasm create mode 100644 settings.gradle.kts create mode 100644 src/wasmWasiMain/kotlin/plugin/Plugin.kt create mode 100644 wasi_snapshot_preview1.reactor.wasm create mode 160000 wit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0c3abc5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,31 @@ +/.gradle/ + +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# AWS User-specific +.idea/**/aws.xml + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +/build/ + +.idea +.kotlin + +### wit-bindgen-generated bindings ### +src/wasmWasiMain/kotlin/bindings/ +/tools/ diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..0a4f435 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "wit"] + path = wit + url = https://github.com/Pumpkin-MC/pumpkin-plugin-wit diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..8091c66 --- /dev/null +++ b/Makefile @@ -0,0 +1,54 @@ +BUILD_DEV_OUT_DIR=build/compileSync/wasmWasi/main/developmentExecutable/kotlin +BUILD_PROD_OUT_DIR=build/compileSync/wasmWasi/main/productionExecutable/optimized +BUILD_ROOT_DIR=build/ +BINDINGS_OUT_DIR=src/wasmWasiMain/kotlin/bindings/ +TOOLS_DIR=tools +WIT_BINDGEN_BRANCH=kotlin +WIT_BINDGEN_PATH=$(TOOLS_DIR)/bin/wit-bindgen +WIT_PATH=wit/v0.1 + +# Make sure this matches the value in `settings.gradle.kts` +PROJECT_NAME=pumpkin-plugin-template-kt + +.PHONY: componentify componentify-dev componentify-prod compile compile-dev compile-prod setup setup-and-componentify clean install-wit-bindgen run-wit-bindgen + +# default target for when you don't want to think about it +setup-and-componentify: # no dependencies, as setup and run "look" independent to the Makefile, this guarantees the order: + $(MAKE) setup + $(MAKE) componentify + +setup: install-wit-bindgen + +compile: compile-prod + +compile-dev: run-wit-bindgen + ./gradlew compileDevelopmentExecutableKotlinWasmWasi + +compile-prod: run-wit-bindgen + ./gradlew compileProductionExecutableKotlinWasmWasiOptimize + +componentify: componentify-prod + +componentify-dev: compile-dev + wasm-tools component embed $(WIT_PATH) $(BUILD_DEV_OUT_DIR)/$(PROJECT_NAME).wasm -o $(BUILD_DEV_OUT_DIR)/$(PROJECT_NAME)-embedded.wasm + wasm-tools component new $(BUILD_DEV_OUT_DIR)/$(PROJECT_NAME)-embedded.wasm --adapt wasi_snapshot_preview1=wasi_snapshot_preview1.reactor.wasm -o $(BUILD_DEV_OUT_DIR)/$(PROJECT_NAME)-component.wasm + cp $(BUILD_DEV_OUT_DIR)/$(PROJECT_NAME)-component.wasm $(BUILD_ROOT_DIR)/$(PROJECT_NAME).wasm + +componentify-prod: compile-prod + wasm-tools component embed $(WIT_PATH) $(BUILD_PROD_OUT_DIR)/$(PROJECT_NAME).wasm -o $(BUILD_PROD_OUT_DIR)/$(PROJECT_NAME)-embedded.wasm + wasm-tools component new $(BUILD_PROD_OUT_DIR)/$(PROJECT_NAME)-embedded.wasm --adapt wasi_snapshot_preview1=wasi_snapshot_preview1.reactor.wasm -o $(BUILD_PROD_OUT_DIR)/$(PROJECT_NAME)-component.wasm + cp $(BUILD_PROD_OUT_DIR)/$(PROJECT_NAME)-component.wasm $(BUILD_ROOT_DIR)/$(PROJECT_NAME).wasm + +clean: + ./gradlew clean + rm -rf build + rm -rf $(TOOLS_DIR) + rm -f $(BINDINGS_OUT_DIR)/* + +# doesn't depend on install-wit-bindgen* so that we can run the target +# multiple times with the same wit-bindgen installation +run-wit-bindgen: + $(WIT_BINDGEN_PATH) kotlin --kotlin-imports 'plugin.*' --kotlin-package-name pumpkin $(WIT_PATH) --out-dir=$(BINDINGS_OUT_DIR) + +install-wit-bindgen: + cargo install wit-bindgen-cli --git https://github.com/Kotlin/wit-bindgen --branch $(WIT_BINDGEN_BRANCH) --root $(TOOLS_DIR) diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..fc80218 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,14 @@ +plugins { + alias(libs.plugins.kotlinMultiplatform) +} + +repositories { + mavenCentral() +} + +kotlin { + wasmWasi { + nodejs() + binaries.executable() + } +} diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..29e08e8 --- /dev/null +++ b/gradle.properties @@ -0,0 +1 @@ +kotlin.code.style=official \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 0000000..ecc727f --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,5 @@ +[versions] +kotlin = "2.4.0" + +[plugins] +kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..7454180f2ae8848c63b8b4dea2cb829da983f2fa GIT binary patch literal 59536 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 QuEJmfE|#`Dqx|px0L@K;Y5)KL literal 0 HcmV?d00001 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..221c4f9 --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew new file mode 100755 index 0000000..1b6c787 --- /dev/null +++ b/gradlew @@ -0,0 +1,234 @@ +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +APP_NAME="Gradle" +APP_BASE_NAME=${0##*/} + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..107acd3 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,89 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/plugin.wasm b/plugin.wasm new file mode 100644 index 0000000000000000000000000000000000000000..3b418cfc545d275be1822917bbe1af233b8ad1e7 GIT binary patch literal 54609 zcmeFacVHA%*FS#m%x>Cl$kGu|Cz+_IBqX8Z!((P4Kok-r!TM;}>~3IFcEj$5;-f5x zB8t6Wf2@E78y0LR_TDRY6crzP<3X45{hT{9JF}Ywec$iJtyv9jyb+?KxPu}aOB0hqVq!YeC>Ju zXwVlA%?sxH0`r35cvm!-AL|VI*@#w%6!q;F_}xU#B;ja0u|F1;~|;Pb@UE}Q8%Fg zEJZmxsY1ahg^mX2c7>wB4w#U!o}IyHM<^BpO<5oq4g~|u(xSx|Y7Yju6CMRMbj^eZ z$}A_Fa~U*7QFC*S%SFYT*6dbjnQ@!L$wn zIJe&D(i!wO80aK+4tX{X?zRxx!QL4}&{oUr3<`LsgGWu9I#P|kAR6?CIz!Mk=FVCe z{~TXDjZ>jbm0Y9ZVrg0TGm2r>Jo#iAiy|9~0?UtLcAts{V_ofWShd99X3>@T=LBH^ zd+~Zw1s0@rM7?drEo_NKI#OLnA6GnLMbcC^tFR-2I=dY!7xuqUm<* zPb$06CF`9G+lPk+@@THaQMkkT*K9*LitN9u`C znjV7;hM{<{qijyFJ>3r!GJ!iaM3mTc%J1;OgK6kc9ZWU2=qd%uQfX;LDkW}(>7&Pi zHjR6xG^XK&Mwf%!q;)Emrg^a;(@f1~k0HGCRGTa3l78V}d(1)2{tyRKOuf5eaq>Uk z!uE(S-2{j7j@;aqP;3syR+rz`g(0(yqJ>5n4Koy9m=9abj-rwRJ@l@%%om46JL9?0 zV6eR`6m~Sj!VYxGVgM2x%3>HzF@Tm){~paVE87&()fEa1Gb8bZoxxcCoJgdtjPNn1 z$XhNtRMkb^fEE*oMmkSUvys_aNa3`qsNm5YQ(#_j_H3PN9=Z}g6*S=rcflPf7L1)* zXrjw>HSArg=|99HJ|`NPpC+b?cgT66a6E`9Pdo=E@%h_aW*jDRuzhsd}di1)O|MFs~eN(nPH9z!191H)A2RA?M;JB&x2rpb*WjCBbGFayA(>2FSv zDZQsQJE)W-dutzWb8S~BRu&5feV7o=PNZ4J>}ledAGQZ|qBL_HZex=VHZAQ7yD{0{ zFt5R+rJbgZX8HLh+#z?11V>AJ->5gMc6pWkQsc`nPP~e{#c0J4$L5Jn< zibhe(C%dSxFe7Ou*hjC9XfS|g9!?)OYIqyQU9&Mf%Zysclq92#Ep)}^M7ki68d|!M z`{@#zF>6jA_ol!sJwmg?n0$w4>z)?NR?&S823^tgX~7Zj8bcSf@aC>idmxrCfUmhd zm@pkG8_R(@OSD!!Uz(MtVkAqqaz5EoWQn;cm@>K;*o*`*h)}nctv1qZZWIWeVtSWQ zXBpe!)-{B0`B61}?6ET6Y>Y3lcr3FbNQhpZtTiBbrImC#2CeMVpndfDJFPp!)ZE^- zW^}WUH9DCqoWtCy0gHxtYeJxp_hRfy(dLrrh)kGMr*N?Tu}&X4sVqZzBOJ$^1Uhr{ zRYUq@bdaHba};Bi-xo`7k4N*l`s&c-t*Lwx_#Oh02< z!;6{O9qwVO!VgHzv9eAq_`z7w8s*P2Y2ZUs1+>OoUYXJ-W0>T_S*gJ-)x&2SxcKOl ziBfdJTlwEpChFe5^NkFvVqMuR9XEfXTe7`7=1(zZG|BXilRtySrQTL;{T+XvF^_>w zbz=NQ#*B_2)ok^~$zM*9TU`WyHN_cf`;Cs8zYayRHC6s5W4*dJApSOE{j#?W{w~9c z*C|XVvtzSu8;CSxom-S!#A$m1-3O*83us>=%f^e5XyoyjTNC)JpIURfsqsee9<4$ZXIby-~mYh7HI#!ms z42$jZ6FP$NIg!ALX*!gPI;FvDeiW^#jP@{E+Ph+Ncz(e^&ia}~)5XP%!u8JSg~Ao2 z7bmxhdz~~x>eH>D*pPkHxV|66LZb15>48I@XZUH}?SUm8nqGTy77B z=TosglsO6|F`aK-7{{g=FW8r}0YXh3KTHP(mwq{JXqsnMaX}$=>dfk9{Y4$+>JC%j z;wjhJC&z_c)GyQSP(feLiVTmVL5sE=WHv}_2<2q#{1o)z);5f>8N~J#=E_Om5i01- zGxvzt{wYG+o{d3h!^o_dZ+}=~*m~p)w%ydL=%o4lqy@b0d_J8uIRZJ%e=cW%^EpfK z>0AQlJVY%NYhr|UrlSMjGKTCt@V$VJz;b)0lNPX9oJeLd9{7dTi~Q%D5e)EA@XIDHn_Wb z$h9Z)?I)W5W4w)-%}NrWG#&@L9eRp<}MZa+!>N6U+VV< z!aHUp;;yD zxmL@wa!+LCT_LdD+ANx_)pE0!p(?9ZSB2PB!W|uK4s|>R?vga9-RR)Tq zlRMI@Z$#)J$b5EMi^90olmly~{*!4= zCnKLmrgDm!O3adlB_#iMqVNEslD;FurBEOT0#$;mj1~;rQ5kd7%Sai~t*~t6hciIv zERO018Fbjj0umKr8@T?eBOqlPI|&pRJb%{Pa9+9uP*YtBPVff5L|WvfkFenK3-sU% zNSXtBIy38#hTs2B&@@*_tKbE!2^K?fF?+{VT;M2K{En#nsO}~Q+6h~L(j~}D9QK0M z>v;|$m~b@7bQQm6iI0i4f+vNoaFgu60FxX1KM4&5O^DjAXsroUc4C$Tu0aU2Fjy7U zCL>^kgxBx@HM}AsqsF#q5rsq!YF!SZ7Ua?qQa_qpHpRlePV5iGo5ZF-aDHWhKF@5z zjFer(_j9lJ?LuCC_}|0h$6v}18+Qqq65*BnQhpUL zC?J;q-GBKP^6?k)tD)#+;&%~u%9vvo;xa#H*?}KOG^zCN*!kmQAANtu8*i{=-UXa% zH*oD|o@D297kT{~`y|=T?wg6s#)xU}Gr=dpHRci*Kl@iJD0BAwsqIh-o;N{ z_2cK~Jh1vb!Aa7-X4-Pyn5OR8EcLUbtmBXOb;9 zJlisr_nA9xx$f65zxZiQf=VW7y){$^+8l;Pa&fE4EaG0~vMzcvS}KSzf~J~7fn|!` z-As{Qe^$w}g|ZcxX;0hS>Zfg2J-`0^Hl* ze5Nf-vp)+3)N6A! zroC&$z1Keb{u{5Kf5T2$pXA<$`J-)m***1vy{102*VIS$n)>KoQ#bB4^@+WvKDF1> zXZD)<++I^(*lX%bdrf_1uc@!?HT8|XroOe;)OYrp`rcks-`{KMhkH%^c(19S?ltwZ zy{2y2YwDMKP2IZJ)PL_a_1nFse!th$AFWihNi5rb$wd4o6Y)nTVrM2|iLvxUH=r{; zJrl7!6LC%^;=D}6rJ0D!GZ9y3BCgFu+?a{DITLYLCgOoi#D+}7#!SSMnTTgH5zl8L zUd=?jnTdEi6R{~1@ku6POD5vWOvLv(BKLBh@AmteLru7i-;T#3*rY=;9#6o%b|0NW z#cgOjuc6XyYZJw4aYix}FVi3FU`OQQ7C)U!Wk=>C)D;%tsct%ZivxY)zyh1r!-yKE za#)?qK*W8qHddcQ2Wq1WC6*^$$lcsguSSW=#sOQLo1q%<$57#x9@<~cOpDi||G(zpkCfpjLN7~%>~_K3Px zatH0(lP0t$E)l=}+gOQ2gvIh}a}^5ZlsGlHU6Wcpxg}ilKs`_XK)G6RC{F0BI5c(y z0M{fv#ihtXh9l{UmO#{-4v0W2}z$|_sMNfwnjNCk%?dkTwN_53YAi7rJ|Dk z1ce9z3BnxLvA8t>yW@tC`Zu*&tPq@R3!KGFP1Y&P`~6oAd#TEv%`Vv zg$H%ONnDj+OgB>CC)^|SL9#GmhZFWAhv+~FmT(5;;RDRoC`^q!epC{?SnCVx6m#Kw zNvYjgA`u@d2yqY)uIlj?r`W)@@ROblSHT`?)H!gkLU%1)n`D1d7d#xOAA-&jM>3be zpP-1)2LT5$Q4dlTRV9N!zasotyXyt`X@aapg_8n?HVSX0{P01;C4{*<9D*HcNFtvg z8x|HDDaB?ZGwYt3V^*JlSi4V%dJr0t=}Mf$9kq)}K4MS_t{yiMxlxjmoMe&5t-xIr zG7T4|p<<${T&{~b)Q8q0a}@R-411gUz`R1Pwr{$N8tQ0+($N^;>{>z=ikzL{e(5>W z%jfz#bRw7OYDJ6XZNjJuFJ>-nH~!^n|Dh`ysenfe62u}5(jx}BR`o34fz7CJ+ywAD z1qfiX6!+*jZHELx4%}2#hl@V)bY9{p9q#Ed(DV0VE-jJ*q5Z4545?b4XM9OMuB;@_ zu}D1()at)@4GP3d|HW0VN-FH8t>P$2lAT(5R0_4)M9oN{)|jY<6zXOZ)tExvVxnfI zP`8?>qf@BcOw=(c)LIjDYzlR|i8?NYy2C^rpF-VfqE1Mm?lMvTNTKdFQ75KQ>rB*1 zDbzhCswsuK*F?=qq3$zLz7*LC-=l0rRfqGqR1 zkC>=ADbxlN6-uEVHBqf8)MF;9Err@>qS{la$4yj63iX7E3a3y{ny5$$^^}R~Orf4O zQFBwMXG~Nyg?iRR#Zsu}OjJCDdfr5JrBE-JsCg;WizaG*3iXnST987$Y@!yXP_LM% zlT)ZyP1HYAsMk!?DJj(JChF7_>J1aMD1~~{L?u$Fw@lPxt3keP;xL$*jr1K8cbbKJ z*TgNgaPOJ8(=FU46L*G%d*8$@vv41nxHB!>hbC^hh5N|Fon_%ZHgRWLxKB*n3JdqC zi95%_Z8mY|TDZ?l+<6x6a}#&Ih1+7{(B+%9`ohFrXyLvzaTi&*uT0#<7H+GFyTrnM zZQ?GqaQ`-OD=pkNChjr|_pOP$+`@fl;;yi8-MYf#HmiO$pa#_zb+$T34XLeao7%2+ zs9`mtcB*sLs2Wq_YL_}sov$uX7pf<#|5Q&=PgNJG2^C%nr-To}<=|m(DEJTD1>ON? zK;5INQM0H>)ElY^wSr23&0%6#6b6L7U>;Zlg-2OYG?WB4QS+kHk_`K$r}5ImTuL4W zO!cs&bQ;GrDW=a4@|C=)G`tVQaFrU~^Nis=V;s*orF<)t9{hI8dEW4nB^JHT*W!sO=ManN6clL@<5e;Fk>#a#LQdre86mWUOjv|2%2aeI|B*OU}!j(M?S zSCad%zUeU#vxU5*(??T`0zj^>VSL8I$A>wkk`Fx1Q(b_V#wI1A#+63}kaQsHz!9ZM z!EhASn6hiEI8UyI23StyVRcb75aEq%N+F63u1V+VI2@r4cP->%g#+f8vthjgC83Ni z$WV}kO1hE)k4YOTD#8v-V4Xr;%FW|3MZ%xvh{sA`TA@E>cWO_c-wzXE6a?G}(dw$k zyyzq1(*Gk?%(d}UO)&V04o|hdY^oMfXL=MBsf_}ur`pwvGWXks<=!HPwwurOOmy`S zC>$z~{^9V{xO$7|2cS3s6uV_2iAuDL+Ds{uBzZ!Jb8-@Si}#$v6w7pY_=mE=(VD~p-Z z3o4f-r39k|rIJ%DgAk^ez}QCEx+kyA zRV+a#uxG9i<~ZCB@uRseLGE6VO`LPu#We+UdO~zIpf!y7qT38OV5bjZ{(!)KPl!DW?|aQ(SSKT8w=o^7FQm+_lR}3X!#> zhf=T`}n-^Kx^X4jJzxpaEv_CEt7~ zdj_FK%rN>8ufSqhA>4I07kwhU%0(4`ihHG1MjT8hZVQa42LHI3Z4g?6lg}G(I7Z~IP z0$YG?K;gv_#vbm)R-g+3$;)Z*loS~Qzaqoi;YPC33xkm4IaIU_Cp-{4Qy4DcQ80K( z(XvxY3XTP$;CNa~7jjRr;%xOO$R!h2aVtg36qjcxDZMak z%1REL3R>kP*^J_zo?_9+X$(<%CZ!pyq_=<^TSUCoQ*LwyN^ja`f+DS+VI~R#Z!7Et zPnBCsB(3jM^4Y0#(Q^V~GY16(7gC<IT9^|CAhbYqYC}@j%$5)V7(|D_NxASVz07 z8M82SMrb8dF|u;(t)g7iEU+Mf*aJl~Jr#`%;gUQ|t)sD?L_0u_Lvu zdh82KJQAf-T?b%i6-ScLNIs<)-a}+4-Xf9V6mWJ>kcRA{rKbp(dkWFIFjc2#8)R6JEZhcC zbmvn_%o=UxG zDXdjAAJaOcBM7oe5 zeE1YfaOw%5CeH>Q?09ZhP;Y)0S>|bj6B<_ut<<@cpV=Zn(bQd;7LaZd-Nf zxA$F{@P4x5>#g^Ede6Bn-WSgO=8+vwJodnC3Gb^9{PNq2kA3@a!h6ozJ6HU=;ilUj zO?V&KzI*AW-_G26Zo<3tzIV=Edd9mqH+b*6_^R*zxbT|?u1R=byzHTCe|}~8E3Mw| zR&QQ<$-0Zayd&X#_v#P6yY$u5|8-izyMFC=KWtgHYPr|@>RmTH@yp8(y?8;w`|NMa z*RFf;`iGA3{(9%G4V!+y=gI35-Y+)Y`rwi`PrEYWJ@1QmUSGHSimTTpybtfXeC5uo z?%Q&D!u!xwufFrs>92oZ<6U|2Wt+bF{j2*fPIym$@$7G&J^iY8PVjEKZ}-0!zqsk` z8x!8upPj#L!$pt&6!Si?WY@cA-}lY?_a(e5F8%5AcRs!B?lTkKH$Odn_0n%2`?%Ko z_DfsOeg5w2*Q`uAB?P&6z|I^B6llT1a!)lzfO}_r*_TS%qYk~LG^*8K% z;G(N38pKzxIlRciFbJuRn45 z>30OYZ?1af#g!MIbF~7b;0xJJn{1*3GYi6KJmxOCHH)M zPQttPg)c5R@0+JTIEp5(^zXW>6MFE5TmC%%hz1-!(9pQ2QS|K_T~$p_e_ljS(-hV^Fd&axJ-T3hNADoO=pYVRR^sEbafA+|( z!<+Y9FxC6Xnlm=7|9It!%i#r|?s(w&hi`wa*}L+q^S-+8)?dH98BV(VnpIa`^~uZs z^j@(1!VNE+b@9V+;wv9GZC&!C&)-HHSiAh=b!UH;Jb$|Pmd~Dg>Eo+!S$Wi_x#-#|NPq- zU)^(F!u$A->$YtA<>@OLy|=7CXU%OtZ#(B-3Gb#KcE0n?cXz(n=KbcwCqH@c*^N)$ ziIe6>;l$!%UOL$&ZVuvLabOoym;)z`)q1gJMc`qsZs6);=<%_c!xoiDrS*zLi&&>R zJqry+E~1&P)3{t8pr^yqmj^yYPv;qh-&opVLN6pDV~R1QrMUJj4Sf{DBDz}pj$)X> zR%_o=$huQX^B7QIJhEt<=Dw6zbfepuRpJ15hbc;rbQfi2Q~yPI=tdpsgnZ)$YCokE z_*qu~Lv6M8iyn3vTMU(4f+E=c8Hq6vV;CL+gtBzcvE4~3VhVJi&>ozt#lqhWYNDh2 z)~+MPRtb*#R}*p;vf-3SiJUAdmM{{a_;jlqbJ?Wp0xW4#kCGhasCLU@QikcO*l5G_ z<8M&qXPTkV=994>h#P{K-C&A|sRP{^7I@=EAq~Yuo$MKn8rwRbk`fNjNY|m*&G?jQ z7}~+B|ECNSEF`EK`J02x{SATfjBvS1amx)=i>(pRVb<}cJ_?~MvtUoUzUgx9Cm8C? zuoZQd*fKO&V58}`962W;1(u-*!i;nSxHw16(Z?Cg$22*a&#~LHjF)0vhM89#-RZ2G zO9bZ;Gjq!)2Zshc{fcv8K8%WFKCr?p0TVk^hDXC3e=#RCDv8is$xTYjIMNh(W3mTL z47J4`BGB&QlFHa@ecgZjf8GuyS6TQZ0LBwc6hVtxw z3|S>@@dK3g&oV(0wo?k?*jRC3PDin*i>7{4_ngx-G*|P4#jywM#(IJ8Nj;mP9cEt1 z%!^G5%4=9@k1UM3b(q;CJ)6^BD-Nw!m-b_~S|QWZW)Z5)Rx9KUj*ObhbO?t%1I>Pm zowQC7Q!LZnl0}mofn|tME2hH)=CX&F28Xh@gX8xpp3G3^KT(sV4g@nsDgvkT_JX)x7K zp!)MXgHcWwh*#Q(X`c=E@6o3q3)T!MrFNMu9j=ES4!gQYKAdTuxV}n2tOScR(eJg9 zgLwvFsaMUk#3V4d+{VBqav1`UL%YJ3s7S8kW&LabN*BOgn0|EcLA%OEqq<9I!}bh3 zeSq!(y$p3@q-~O&!GRF>E+nyei_;!wa5|vEOL3#Z)r@r+9Xl}Ds{IU3;!p^fVHK#~ z_z(=yfr=X+sB8VkM|XPTM#yV(OZ(wB&gD7;>@k3F&%k2IT+za0;MY#KW^hHz^LS}- zOJmAg9xr-Ztf)@Iu@y1iGVa$8S4r&-Azfq@Ct$F4)fXGOS~NzWGj7kJp$FTO7%gPj z!YR&>P=W))3>}zqWEz>A$=QxWUa!ps#7-8;$iY4`0{y>bu5mCu3c<+o*OBG1JVvyQ z3PLMLHpo*`3{#8Y{CXlt4U{Kg%_;P^<;6gI2nN?&U3n}5J83eY6@-h0FVQ**J*n7s z(!jNb7CkVDX+Hbuo-4WG9ZR8NNX;$AP;4Fx(RgVt+y!?k{$AS8g}QPetRMF=+bQid ztK&+X#;r2k1i&V{!Y0we4A#RU*)twn^w>^-KI7>KlfritFpSSG1LrEiOlc`E9j7oc zgey{MF7_*Nb)Atfh1$+#_=!gi4=Hp>HHm}k#u-8^=xJb1ov@splI!nO3(EV)WH1bZ~^O&O#aa_xZfsMG7VA*%pP{` zmOZ#{hnm7TnbMeAeXFY&6~{HlpJ^@$b6^|O9G^%pu@PM~x5Od3#!qz>(McN0V)!VW zG>G=}DCs&r*@f&RRFPq&Jyn^Opq*c{^q?jKI82^@mXB+07ywp?DGr$7u>~=>$R0(p zzhWe8zUfB7eTBVO?_V&|kA{&Pn&U{=$D!Lt$4*0&Fv}VJf8JD>^!`arEJ~{hj9;h; zr>WsyYC`10iBqZxH`Row4=2^fr~JQFA!ucog<-}P6?>7m)3MmmrWJJ2{4Z*>K)AL< zZm!9q!uC|@W_w6YRB~`2ww62T9vB9IWt^e6aG)b|7SqZE%LeKM^b~B4!t1f&L>&U{ zjpmGF7#AoeiBZGp`aZ{*?w%@+nEtKjA#MC6Jh=akR@j$z$?)Wn#*R%ad= z)yrxgcE;G`(2ZM+4N2ip!ss~H40}pgqLJ&s7NP>sy&ETO4I<3+41@zZfK+FOAs7Z^ z;tUI>9J%mEIgSy^UQoKZMFyb;0fWe73G8|T2uI~wpH{_9B^8#^JgrJDg?ia}*o`_k zWvl_Fv2as*JPgmZQXF2;*(fHJKF;TxQ^R~Q=PM}^ld~doYKUVgbX11U#Gp=%S>&IP z>Wp*51OivrDw+dQYZI-DC(xi|soFlh5ehK5Jhpi6{VMn z!TXn_x&Jr+>G^{m`!O!b4rfkoUVeegUD%_@)3aCaK7IT3AF$8BL4)_*&oxkef~&i^ zdMym1eu@Qzx`9IZYJrNmSCWlY_g72Q14K}9uE9}*BpZ`tqurGCNvw_*FgwIM^nsH;~ZJN&H5HaLmH724(b2#%;|!y{My-Y@~Y-gg%2~aFTi>W!OR) z9;c9{Nh)WKo^M2w4R;SjzGrcEPEv0o>MtnY6MrG!KFIeR4%|uVDx&_9@;#ZJPxYuh zRop043)LPfnw;WzEXii3V$QT!4#kq}#BP~#)5!ADV);fUT4|%stCFnJJphV5k7Iz6 zx|-DaiWGb5{|}1whhi__aH6EHA$7KrVozr%wx3$8mg+8T3uf9;*eYemECzxdmHai2 zDg}=!Xdti*Zg>uJ_k#j2;%KC#-b`Y@CIy~JR{$=OWVlya=I#sPmvD$uQg0!We-rVu z-H12B6*nq|KMhT?L*0Fl?`5u@EvdH>^*5C7x%7OV>0;a@y4*+G28{Yb$N`1f(^-#4OjRa2`t!XX8 zxhib!qc^}5LYxgyU&TRINnK0j{EkZe0z&rQAju9)vIE>bA^J5Oc$L)KiS&CSeUUm64~k`=p)z-XOe^mSbQyXsXdVDvlm!Y?en)56_p;_k9= zcbT}mVWc;3*jZBVBsG2|gs{*TUUn;_kC>_nNr-Q5>@aG@kQ=Y}(C9 z&F*v4qj@5VJ`e*hW&?Z@9;N$;757o!#QASYy^Cz|BU$C;bgQUP6Iwxu`^hRe0Fr5y z?PQhh!YbR-tb(SeTcwZDe2jh&bUdN&FDiA2AWE}EJon@rkLZ#_84 z2D#nH^)`;GOX@nJ{h4yT`lq>E$n_3Rw@d0hMEeWndhJhh6(HBUI1n$X_Y&=Il!on6e=nLqTTq(;HZZol{Yv5lOY#+>>NQID0uz{Rj_PNa{l*FiE1{L&&nZP!n(P zD#Urrf$GOxy-HFaCfXfDyNN=UiMpvpa~E5$kkvU!uUyQG^42`sEx+zB>E%epgk>qW z`%$Iv(IkUy#W`{H6Fe{?sgICuJ4ws;DP*ljY(W@R6i_TpIF6W~Mtz*ICoxd_kJwx2 zt8FK!^fe#xpeH+enajgo`YKl3T~Yd_mWMi;mWOyqq<3kq(!0QQN@`VVEakE+}=`6aTA7wJB4uUWDu4PGo;q~$Duka8XM{WzfzbIoPyYJ<;et{$uoRrdv#>vZ~mmfm3Dt~YTvTDTib+)Wnl zMiaLRvXCF-NL?jH81!Q)AjqB4U=isI=#Q4AvgC|)!v4$YuAm?#bg#mgqe!5I_>5ye5Ec-5phD1+hvqBsB)ubUJHWKgI? zp@QN~lS0j)C?<+xP`qtY6lYNEPZaxu;$4$s{|t(KiDF++Y%(eK&7iMHv)@M1dCsXy2I>g&7odC$+x|6hD|0E*pht zls}2)CvJ)SCTYJ)o=doXFX?wl+it~nNLo_F8qf?!5!+E3OhisdRZ%uBXas+VlhwQnjVBcAD(Dh>J&xv@>OGnXH{55JJ_nWY48W|8cGe zUcsSE1u0VjWzHvYB)o!@xxf-$LCRcci<2@J+2Xl~U#!Q~f$AW2Fotg8gGU~ZM$#o& zlJM9gCE1EpQD869cxYBmnw3MdmBfHJmXl_e8SKnCKjHBi%i=CjwYJU@P(ljclZwkFIfBW(hDckjm*nbI zdtZuJDj{uc8kFSQHSj}${YZiRpumHaixk+86nMzuu^%b$uq{p&dc+nd3)y7smuHtD z`jN+E?NQmY(&$H?khRCH*weE1l!!G!8-=t{pv|+UHaIj{tv#npv)dP^Nc09`)07?- zwrirKxztLsH_lEZ`wxVG7fb;INx+MSfbpuPPSD%>KnOSiNiXS1WSN1)|K;ww420oD zV|^t{n)#Hp%|ZjyYGEnqHGuRQ0KHx#79?x{>18wX0ICL?G6P7N*A0P>b9EOU<;Hwm zWQ9KeK0sm0PxnQm#Rb8m5Ao;& z9`Beu`VfzIElv73g?qf0!bp8G9I8)-L-k2>DAC3DA~C%n=6zF4FB0>C#k3cxiU;^; z{84Sy+6(<3RqIDKQj+&^7E)AQh6nVb)^0OEue2_{3kL9zW*%tvDKVtl@Q`MkEpZ;w z>@!=Oif^k}52^EcDjlaugu!f5J!w@p98!Cb)EPs@uuu+?2_U zOkbIq+>~i+O0?uARlnBb_Hob+Bhp~^?<`61Jxcn<#)UeeZ?ljZL*{o`lF)k+7eigq ziTo&QKgcv0xs2;?xxmx;TP3Gx1&)SXD2=lUDYoEf*Pof?i0E3#(_jxTc0;riV| zZmzaaL$un;ybYI23q>H*yLq+$)!e$&A=9sEZJ+XZmp2`C)A<%@74 zjR*4RMkF2kRv*HRv!v@x{tiD_dXFIFrz{6_}obSV{oqC*!H!QgDNH0?vU$A7VmBQTPVVju}yTL|Rv%fWc^DFd8b0MLt%qqshCB8r48B zh6u*c(GHS;>Ka2543-on?=xLkPRe7_M9ct(D&kOO6H!GX&L)jX*Q8WMELPa!)YeRv zQc|u;8zHC@984?++msrdrj$HbZ$~B%s5LlEt$VuPBFAaN)cPMM0L3kG+o?d@BG(Ij z9_mqZ(_t8m(NPzt?x~XLsm8v5e(2JXWnTc<)3*@zM5;4p;)Xe{F4y*x9Q?`gZIO6; zC|uXo(Hx8pRm#iDkJJ&7IDG*6XkU9*ux5cj*hwE4)M?B8k@ohW_%?G)YsUBf@YUmK zU2*yj?SxcHchd3<+Nq&fyp}%p9FIh6J38C5Bxhq1jrtZ+)(Mf0PG1;G)yAWmiS+wA zeSUm~Tj{_zIhE$162^-X!@=43JmS1y`3XZ%rkG+WdGLvb1p26BLmVF}p6#VC>jtCY zuJ-n9(v9L;EKIE}Oldr#vnp-(bu4A{ypIqVbvH zs)ZL;3#-=|POSLI*M(~cylH$AA`rw#1oZqwO(hd3Lx49DfgMmgU8sWgSkQT9fE;{`V&L*LNT;IrFo%3hO|mF2`?s%i;F=$G17(3LBCd%SCrvb=c_BL z4Y$zyO&6MQ`qY^X(`xHxHcYHyq5m)HD_2f~aTRE+!PlYgaqb+kmeS7Hfn=lrJ(7uXsh9^~Lac z(74$%hzOZb|8Q$9y4Bgfb}c%)iyB_4+pUYhALrEQK9<62_zdeDyec;2PoYG+ukVW2 zw|FC6;Xo{vpqY|{f6nN_2iZHUZe1W#w1yT9)Ob?Jnc-MhXD8e;7^pWtH=9Zn5~qpx z$_iE!B4Ok6>(e5EP)o=!zD}DWuY=*IM?{ULa1-z)+t>uuSqd`~o?&a_?36L6|o#GVpb(HFyn#7E;Z6l{nu z5Qw4&F^1Q2;ly3xn6D*hP&D}Q-QIw1HH}^kOygiyBsnZRJ|2xMgw*+Sf?)+;<|Sv0 z5sy9QiFL&~(f^xy!eD{0cnvYhilHkBDqZ+YFcd}amKrnvK3=JS+Xs{};>)?nf$!F% z-gTLnEChW~MSqQOxdPP{-#nO!nv!CaTEWMd(Oia9&2B!Jv?n3u+4CEG=-baQa~xlc zhK^;G6Xpc{ZAP;w&oC02AdOOZqcVDTd`;b6r1^7DVPGUmS!R?K9Ca~z(~o0F4F&^- zbLnHXer=osHK-utl!`K2_j3%s>n1$=7_FfeT?@*rw^(I9+Mv=fbHaq0hK8mpZ|!7_ zg4)E1@U58*H590;Z`6*~YNu+G>gpS2PM=;sqfwiz)z)cKXCVDJuQqWKe$yHzduKKr zH$khLP&2h=;)E%+QzuTSudCC%phq0R88wr@(g-%xG)_eJsYgz%X=o%dGir{SSU+vz zQ8VisYmTjLXq=?YoZ2`E8cnHhXq<`68hB2eF|BrLL(NgOb<=0mPo4p#YwM^P9IZ{Q zt*>n$DYXp~YiCTYub)0`Qti~5X;W+Kj)ZOvwa3>?1H;-W_0#LLX*G@Y^;7HXCf7lW z`eW(Y)&rP6tuLbkH;$hm4J+5CAm7wPxD%#^V5I)J&*9x@LyvB?*lU^~9|amcZGal$3U|hG-hq$^qLvdrq@od5i-OjRTU!EcpNCSy2&*&>L)cc5M{%R2~%L#sWpwY z(`qKx&unZww$a;g+_9o4jT5x#Bt7L8=x~D5+q-6m!ZRX~_@u6|J~_s~f*vzQeG^Sd zlq1E=TG3zUT|5;n76vf~vt}6@dH}N*HhtQbJWiPw)L$x2qH7lT zD5uF)*HgS~{J2OLI0cP#T`h&a?j1)Lg9)InZ!;!;=-e>t>*&P9$u=%w0u`U!vLaPrP7XxMB4-9;+l?2N15f*3zI!IB<$-5 zjvuPvyWBKQLCDvI&zeVL2%$UmW0FQ|8W9uyWY~|{>iCq{2JuPnavfw~GmseYXa#|i z378@_;@#2007M?cNFTs}AG75#69sIb9z43IRAIc@Ff1Q}J&BtrlYyCG4O`QL(T-4z z>@YDH4h2o)>*JeU52IFeu~Ta%p?8=(1+8nw(Y5F#CZHRkK~kG|G}`k_H2Uc^6B@O~ z`Wa~&M#AJ0lVN{M0D_Zh8>V2SouJJGrzVOSL9nQ8Jg&B`Y4VKvnROEETM-M26pJp!|nY*E9-b)u<3tSM|%Ry>_7f^NZ1mWrp5Ve%5UQKh2kM0(4i z%CXaCVAHZ#6)%QVTefT|X<4U5(#n^LrV%w_l}Npujd2<(jToiEl1?;b8+|4=EerZk zJ>8Ze9hXLq6RrSE#m}iOhh`S z`xes28|)Ih;nT8B3dQEws8i82qMF&W#SF$qn1)It#&QjNFaG$2OBVfY_rj4VzXqKgemBpG#?Y3Z0IbR8alC|(>;?7ZDjId z_T4rk7(mU0^%mV7V<+`uOw$V>=&WcO5vH=DkUEVSvy)&VE4G^~vNVjHbTTHU7FjB0 zCqb{|w`p%h4I+KaGDltN^15S8(oWy}u+6m_GU6tg7$Ln;crq=wg?>8Ebeut+-rr{Q zw6s3Xf*R5(I%Evet>}}dVMXPeO@q3h*5g<%2gd7}tj^bBl#a7FwNuA!vNE!#I%Qk- zG@O;aE#z-Y&kalIg|{-Np{%?esRBfU{!nKKl@K#ZU>kUaA#J=e`gcmPSo-x;gG;tf z-Qu*TREt|@YMuZiTMgPoR=3w`sc=%KiOj#1w9;l`5I9dF6< zbzlR=G+5dQWaaOMwz8Y5Hnd0Lx~3vzFMs;5WpUMQ&^^^+-eHV)M)9(YSQfWEBwEZ& zO-({w+f>ZZxZB`nN$5TxQko^ek2ym)*bcq{;0>K={1Y2gI{(ygXt7O0*|_<-Fp$jb z3I)K>FCw%5yDVuySR#jxgpbOSGx(Z^zQ07l!<#Cp<1=rO(ICN87P=!Ui|fFWORjsA9YWWfNM zB;+^K5NMPyb3C?+m@UQP9EypNol2)Gr<2Ihbocwz=W=76hg>b zg7eLYKA}j>K~j>ec?h9wS}y1WgV>x%S9?IXvChDpky!cdm?7BnL%)q1V!|`THEnj1 z%GM1#q?xibM#S8P%0;)-Xa@k{PJK8R>{7Fs6st5$hMiyyT@_&%(fEbcU>FmRpoteK zc%d;PN=ZmZSvG1Wl|`ae6O=ok%|>q-qZ+`JLoZSHX%n%}jvZnS&zVywktJhVMYxPo zo87C;ElkvL`aoq2YSYDlCH%xj3ybJv2GL+Bk2Ph9iLD50g9PTnTDe>Y zsmYxl)vt|Mwbx9n@y?uFTQ{lx7;Ogj<7U|Q3Z`Nf4;RBO6;_Z_gY$yzDK?F?pF$VR zi}Y=$w4}5YzI}g&e>t|F8(|5*9{ABef--(R@f(C6-f_cv;rDm^_QCHM{0_wLRQxFK zS@`wF?`r%8H8S*QX@VDkm!a165p|a9>7{a zu)^zw^l}~xNPJHOB)wVzsT`evL>B|ZADeH)PX;8tmjaT#R{-LVosSFgxdf2%T?Rhh~|9U{u=UF5EnvuQ*a9`j#m{C3nunce*Ao;^&K#;H_0f}D|Ak|kJ zAju5_QaSz!Nc>j-Qob7j`vE=(NcHd%Ahpjg0Ljk301~~7!XwD?07=iDfPDcE1SGvC z01{mTAho9`AnCCTklNYhfTZ8mfK)$g0LlJ$1LBXZ$A#p-07!a$2G}3)cfeA>eNkzY zUI9q_>j6n#6Cm-Q3y43q02k8hT)+{4j{|xEWmL+6fCmFs1BL*}ek%dVE;j;F`&$P% z8Sr-lpM%0e1?C2%a`(lB>aRZ_)x!V-?gL2WDh0$JE5n8CIsp(WupUy8-dX9>Rt4Z8Y#N z0+K(x0!aDZG~jy%{0NZbZ3ZNM-x~2Bjr89Dsor)Qco`AmlLtt4DF7sS9s}POkofIm z#P>6x3P|NU1dz&61xWJ78~BL^ekvgT*wMI< z0pgEcV8kyq;FW-+&-H-Be+?k%btfRTgAGRdQ%3p=fTYi>fK zsa+jt#76>>Jq`n;exm`9xM8?6S&;KLJSPc*}ra0#d$hfcRrFl!a(k z1W570fK)#UAnAVqAlakLfFl8^KL2jO$$+Hq(SVfictE0W1|+>gfMl;YAn{)UNcqnO z#2>pH7oxiskn-OMNcnFAr1IVkNckTDB)wk(#2;hbfezgG~0VI2F0;GAzFM#AneZUMsrUDZESU~c>senY+ zV&G2!r2JO^l3uq1(){o_K%)Nukm!FiU=a#I{3`%yT&e|B07HOO-%9{#Jh%>!)IPfa$!|{sB>PTa{;M-*8-B9X8=jgRzR}Hc0g(eGKdNG0HpTO2awv!U_kPd5r7I{BOtZ2 z69MtZ;wSc7m3xK5mkATEK2}u4i089@691ke$14#Bd36Sh}GGHm- zzW|Bf&4ARN?*t?{j{;J@*8!>g-vUy(e>Y$bDxKu@1f+8814#K5K&r=~fKY`^03`jJ z0ZC3fAmy76Nc>I*BzYGD68)`!q~`-h{8d28|2-htg*su%3lRYa;E?i-`RlF?*0i# zdR+}jeC`CK{2KtNye}K^4**HOEr7)D2SB(6%Y{=?{vm*rUI|EYCIeDE9}P(M_y-`3 zQ$7Q>0Ma+*YMmL5vunxAI-M}`m_t?*@ zkROEaW&MNC=NIv{{8_%4@8JEUN@=RpA}x`wlJ1vYlfIF1WJNwqo+)?AE96!3M)`gD zH@V1hh=a>NJhp+2^ynvNrujNMu>mr3##FTvXE)kH;WGUgP8sfFceZ02x~wg(A0F)R zb+TdkozY03%a0Q++>M|gx08YaoYLckIEYq;y(WFDB)6ixYQ*UB3jXr`45w!~492VS zXGw_!o8?I0ADhL^AWzJa79oN!1I?0=L~(J&1o|c^R}O~f<>;s9FrV&?bBv*Jp~$cx zopY{+nDSA5PQdv=aSo^~fKBofMG}*WnwscFLlf?jceMwbn%sV0bEwHUnaAY5CMTS0 z4Ej1^I^hX6fJ3!&B7qargqMpQLey0m9gqr^L5H%I_O93*#^s(KiAmh)%#m{? z$%+4YIUYHImjk=3OKz#uTUY?+w6NKgGDKm4u67d?V?7GaE%MBzml86qqOF9N;>kWu z8OMeJeEY_Ox8YTihvHL9o1Z&l>9coS@t`uAsfhlz_0k)c-E{dwhz>&Zv-d7t`o=jQ zult;hX1yu-!{={X`R(QRZbsY%My^)v08g%hkBlNx(OSw}K3$>*FT93CJi9hZ!nYpi zrIwOLukgf^D)|x~tr;RY@DfsK5}wS${FmZ+h$lqc!(2Lv+d|R%EAZY+NNCPlChxB= zJiqjb+pk>z1ynl-s$TcR>q{>>XVYCjBECQ3-*3Ep#maL(Shof7{)lh>^5xrBpZC$d zKOj!p7qx1|q9~A#M}x?0D1?K|HbjDg3f^{uVtAZVHI#FdF-IZZ$t&JJj#4>>NbXS* zUV~J|^6=skdLcV9jzUIM#-XIbsE+8F zFa+>6kyb4Mfp{%7-V_CYsx9OS62%uh>I)_93E4xh+I?svJB*>f!h3x+3HFq=f^o3F ztZm+M4f)(4MfQIE<&x|F^W9Y!d<)a#qio(EK3sCeWiNlcP9dj~y_?^=J9+=w%OCn0 z$p)u=O-@FfdvckJo_WkJ^4C6x3C5e>TlMglw|}tidvGGoUw^o1#WS~GNrDVUy|OaK zGql+mqbz+Pf$PTqRD_j$Zv#X^6oG%s5w^2TKmT z1KFveA;LZB)v->zO%{1{=ful&ooJW`OXOWpDu)28DU?v}^0Y!cTZb1*73Skb3gkuF zZ+!*WCIERo>)~|D5_dRV^r8ijK!zJ{x0TSwDJPgw+wr*Z`geS25-N~aAqk~*5D_8r zhz>~yOYYIq0B{)4szJP&39oTAA`a0p=zK{|iZ$NwkJcF_La-JY=lw zP-Id<2$u7@36@;+7(abVPx!Q<7WuTp`{f(g+_vV9E7lc^W7LPnw=xpjm5!8u`>Z-K_FXKO0W~1Q|PO3AiIHS&- z^a5lDE=IaTbi8QHmrH2O!e7vw(fisx1s%_#)*dqB46nj)mB==qfyvT*hI%^mT=;q> zUd$}zQL2NU;-tP8VlusOGOn=6g{TloxUxolP@3Clr}c+f zCEcv>4$)6YWShZ=T=(UrH{#{S10dqMC+@!Z-L;pm`yFQVApY%p8?IV;&PVHiMjT(p z^?v>SkM{1LUU>P7FCYp!O8G98Bf-+?>Kn@l6q?N_tpw9e}XL@Rodymm*;G>(slW zHEU8SK39tUAO{^I#@n|0v730)@pY9|W132*HkQ&%q$w8mb>hBiyh+@X3(l`BFHha2 zqFGz0ygU>sFBdbS^70y*GnIB#Rh0T-0{l6Trf9sp{1{B(%v05+lN(D%&@@Y2Do4+O zKBHSIMve8iw2U4xJUFU`PllFNRoQuu6!%Am<8EMOm3=-2Miqh4BSr*=2P#JnA2|}B zM!H>;clhZ4a(Rs@T{%7Sf$1Bbt-uWLf4bmRm6ao!1EVV{hmU9;UFjcPBe(9Q;A6~s z89{~_rO&wxP&o>7uO?#}){N)qVwIJcPB-Z@wMy7#Y*q8{F?d$4d1P}%^Vp!T#^L+R zvW8;{I!d2$R#uQ8BWx2<0TH8HMvfX07%{>>eAK9l$_ihN^VGjAqAC;_ZP>iB%5L+j z5$3G5Nz7WCFl%iRvsQZvtEl!XM^;ug`zn3Set(O9RIn!Jh`op()#39;BeBXcL2<;g z$#%*gyjm)neN`2s{GJQd6(PKHpBv=_7HKMY)V)U41Jd+fx$?x0?lXU0!?^tv6oaU<0!4bh=)$oy( zBS()In~*Oj7L$4|#5&uZ>WE2=wRkVy4IbuXbRYgU`*x>N0n!;?WlpeN4N>RgJ zB$$p-VLHa}s>+d8n3@z-Phg}Uf`g-4#tt9r3l6WW@p%7>Oh?awp_^Mqwlr5Z`>O&Y z##YqyEYw>U7R^ntPOm~d6^h1YM0@w4RO5j#9DveO`t%{9Ol;pC1|~>U{Z$z+V#Mt3MrK+N8R9VIFvWlvM`GY*Qp5Mn|tkY@Ho?6z^QeJjC7?<$IdEUt# zj@-dcUcnfzWSmzqi4VuU$5Op(!(oGh(GC{|M+};@JuhDQCB|0XlQX;_f>LO%qe(q6 z%P}bBo-+1;{>yt2%l?Y)QmK=Xx`Tg%9LNgF=AspM=}4)ibxI)uDN5R z&REnbM)z2*@r+O`*LXxob=jT}in#+p>j5D(CznG#XeoI(=eCxC9V;WLQkp1nF1JT! zgOEx6vJb|+_+VqxXPmz2GYlE%JPh_UD$6T+NjYw4%4Ku=#SL+0nB^33ndLkGPkYz0 z97hdBb^D=Kzh~OU*dE(?*$GM9!I)jDsG2>+N4T(KCM3ZXI|bnz@(-+7^Cf%`u;EB* zd88h7SB7Fk6)TT))mK+n_aPm%+G=Sbup>MQc0nG%Vt6A(4jl+4XwcrN!J&EsrdjC# zACmb)GqBSD-~9^4QJQF700sXUL2LBOU<)#>VmX}G1aq{o8xf-dn*Bh~vsDjFnz)3l zn#c!LHE|!6YPcT+YLY>$sS$o?sY&@E7VEUMRp>mk>;n=@lMn)Jq~S9DbpQ`sS6yK0 zi_szhTUZO@fDKr&qD7ISIz+cohNUgVOOKKcClDV}xLXcyD_BUZ$&;AoFkg;H0Ncss zP5lm>6dYA0&VFT(u<9vd$!56Ne#z*1PRY0WHr!|IF)tO51Rvv&*IpnBP-dxtCpjpl znmEHm%g$0Xe5dY0s;0GW3fhuDf??yZ*qes}?~T2=X&2}3`L()`@HAF6yKL9kJzgO` ze|6ESYLTOhNeDfJ>^O&G6gHJImYhV3gT>vK^fTR`M_Km*U&miw#%oPK(HSo8J!7Bq zO(k{JG3uUBqEDshCpjAQs8q0Ihvq@1A9`!czf^k1@#gIMd!_V-eW8?Y)lYb=8xD;uyGLxMb4x2fwP3(( z(;wVJ%Nk_+#J0PZFK}PBwZ)=vT!d&?gb1J+t2+$+w%fQ<5tkEDI9 zyjcSdb{Uigk$)z)if-JGTw?sqEn6vq#P++bghtle_0VvB>ax?jDhI1qQ?2VYR-ae_ zTv+ik{rC}QNq4Z2|GUE}{=slcJ0w;nxYf(hHE|-&v=sAbO$)*vDuJ7eeO5GV8?0QO8%`r)Co6S(u>7U@2==i zB#)BKT#|aqd@qFt7DU15dMH%FM>4y|zU0pPxjpfxb}^XQQ-5O52E@%XHQ-iefg;v} z|1FGbHaZNN_1ssciyz+T=p5|yi1J#wCWX5_(vR}0yrxBco;W(htJ#_u_lY`7Y9jB; z+9fYdP5OPR4612j^+|R4T~kxv3}yZa$^B|C2Ir}K+EaxI^tx|tqQ=;&@z6|v5lxvD zfz+}+SaVSpt}M4AI|{^hft!$!m>*&p8`9;^%n1{@Q!08vqwJL{JBZYFVdAF0U*qtI z-MM)`np5atwSi-`d#iNIaQ9cKw(WYDJLc=5I~H8YuB@|f&uAQ@7F@GWdk<#fs=Ec4 z$4b5;l99MfF986{h<8y{3QlWHyV^4{%R?q!Nh~LsZb369>#Cg`3>YWsjo#L6Y+Ga} zDQ~)4v`=mu_K&-_W`>0)5r1k{=-cMUPPcN_e`eh}cdyp^ZjDRr%ax4$gh#8dgdFtB zcS$5TE7B8|3~8gSR`H>$oU&x ChlUma literal 0 HcmV?d00001 diff --git a/settings.gradle.kts b/settings.gradle.kts new file mode 100644 index 0000000..87eac3d --- /dev/null +++ b/settings.gradle.kts @@ -0,0 +1,10 @@ +// When changing this, make sure to modify the Makefile accordingly +rootProject.name = "pumpkin-plugin-template-kt" + +pluginManagement { + resolutionStrategy { + repositories { + gradlePluginPortal() + } + } +} diff --git a/src/wasmWasiMain/kotlin/plugin/Plugin.kt b/src/wasmWasiMain/kotlin/plugin/Plugin.kt new file mode 100644 index 0000000..15d96c8 --- /dev/null +++ b/src/wasmWasiMain/kotlin/plugin/Plugin.kt @@ -0,0 +1,53 @@ +package plugin; + +import pumpkin.* + +class PluginRootFunctionsExportsImpl { + companion object : PluginRootFunctions.Exports { + override fun initPlugin() { + Logging.log(Logging.Level.INFO, "Init Kotlin plugin!") + } + + override fun onLoad(context: Context.Context): Result { + Logging.log(Logging.Level.INFO, "Load Kotlin plugin!") + return Result.success(Unit) + } + + override fun onUnload(context: Context.Context): Result { + Logging.log(Logging.Level.INFO, "Unload Kotlin plugin!") + return Result.success(Unit) + } + + override fun handleCommand( + commandId: UInt, + sender: Command.CommandSender, + server: Server.Server, + args: Command.ConsumedArgs + ): Result { + TODO("Not yet implemented") + } + + override fun handleEvent(eventId: UInt, server: Server.Server, event: Event.Event): Event.Event { + TODO("Not yet implemented") + } + + override fun handleTask(handlerId: UInt, server: Server.Server) { + TODO("Not yet implemented") + } + } +} + +class MetadataImpl { + companion object : Metadata { + override fun getMetadata(): Metadata.PluginMetadata { + return Metadata.PluginMetadata( + name = "Example Kotlin Plugin", + version = "0.1.0", + authors = listOf("You"), + description = "An example plugin written in Kotlin", + dependencies = listOf(), + permissions = listOf() + ); + } + } +} diff --git a/wasi_snapshot_preview1.reactor.wasm b/wasi_snapshot_preview1.reactor.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4a674227854aa15b45c06ef03442ac88a560ea9b GIT binary patch literal 52295 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