Handle creation of new collision quads

Co-authored-by: sigonasr2 <sigonasr2@gmail.com>
master
sigonasr2, Sig, Sigo 9 months ago
parent 687cb667dc
commit dbf34258da
  1. 12
      C++/scripts/build.sh
  2. 10
      C++/scripts/web.sh
  3. BIN
      C++ProjectTemplate
  4. 1
      C++ProjectTemplate.js
  5. BIN
      C++ProjectTemplate.wasm
  6. 959
      TiledCollisionEditor.data
  7. 2
      TiledCollisionEditor.html
  8. 1
      TiledCollisionEditor.js
  9. BIN
      TiledCollisionEditor.wasm
  10. 53
      TiledCollisionEditor/main.cpp
  11. 0
      assets/Tiles/Basic Tileset.tsx
  12. 0
      assets/Tiles/tilemap-3-normal.png
  13. 0
      assets/font.png
  14. 2
      buildtemplate.html
  15. BIN
      ms-vscode.cpptools-1.16.3@linux-x64.vsix
  16. BIN
      pixelGameEngine_wasm.o
  17. 4
      sig

@ -6,28 +6,28 @@ if [[ -z $output ]]
then then
sudo apt install libx11-dev libpulse-dev mesa-common-dev libpng-dev libstdc++-12-dev sudo apt install libx11-dev libpulse-dev mesa-common-dev libpng-dev libstdc++-12-dev
fi fi
if [ ! -f "pixelGameEngine.o" ] if [ ! -f "${PROJECT_NAME}/pixelGameEngine.o" ]
then then
printf "Pixel Game Engine compile object missing. Compiling for the first time..." printf "Pixel Game Engine compile object missing. Compiling for the first time..."
g++ ${CUSTOM_PARAMS} -c pixelGameEngine.cpp g++ ${CUSTOM_PARAMS} -c ${PROJECT_NAME}/pixelGameEngine.cpp
fi fi
if [ "$1" = "test" ] if [ "$1" = "test" ]
then then
printf "Running tests...\n" printf "Running tests...\n"
echo "#define TEST_SUITE" > ./test/test.h echo "#define TEST_SUITE" > ./test/test.h
if g++ $(find . -type f -name "*.cpp" -not -name "pixelGameEngine.cpp") pixelGameEngine.o ${CUSTOM_PARAMS} -o ${PROJECT_NAME}; then if g++ $(find . -type f -name "*.cpp" -not -name "${PROJECT_NAME}/pixelGameEngine.cpp") pixelGameEngine.o ${CUSTOM_PARAMS} -o ${PROJECT_NAME}; then
./${PROJECT_NAME} "$@" ./${PROJECT_NAME} "$@"
fi fi
elif [ "$1" = "full" ] elif [ "$1" = "full" ]
then then
echo "" > ./test/test.h echo "" > ./test/test.h
g++ ${CUSTOM_PARAMS} -c pixelGameEngine.cpp g++ ${CUSTOM_PARAMS} -c ${PROJECT_NAME}/pixelGameEngine.cpp
if g++ $(find . -type f -name "*.cpp" -not -path "./test/*" -not -name "pixelGameEngine.cpp") pixelGameEngine.o ${CUSTOM_PARAMS} -o ${PROJECT_NAME}; then if g++ $(find . -type f -name "*.cpp" -not -path "./test/*" -not -name "${PROJECT_NAME}/pixelGameEngine.cpp") ${PROJECT_NAME}/pixelGameEngine.o ${CUSTOM_PARAMS} -o ${PROJECT_NAME}; then
./${PROJECT_NAME} "$@" ./${PROJECT_NAME} "$@"
fi fi
else else
echo "" > ./test/test.h echo "" > ./test/test.h
if g++ $(find . -type f -name "*.cpp" -not -path "./test/*" -not -name "pixelGameEngine.cpp") pixelGameEngine.o ${CUSTOM_PARAMS} -o ${PROJECT_NAME}; then if g++ $(find . -type f -name "*.cpp" -not -path "./test/*" -not -name "${PROJECT_NAME}/pixelGameEngine.cpp") ${PROJECT_NAME}/pixelGameEngine.o ${CUSTOM_PARAMS} -o ${PROJECT_NAME}; then
./${PROJECT_NAME} "$@" ./${PROJECT_NAME} "$@"
fi fi
fi fi

@ -6,18 +6,18 @@ then
sudo apt install libx11-dev libpulse-dev mesa-common-dev libpng-dev libstdc++-12-dev sudo apt install libx11-dev libpulse-dev mesa-common-dev libpng-dev libstdc++-12-dev
fi fi
if [[ "$1" == "full" || "$2" == "full" ]]; then if [[ "$1" == "full" || "$2" == "full" ]]; then
rm "pixelGameEngine_wasm.o" rm "${PROJECT_NAME}/pixelGameEngine_wasm.o"
fi fi
source ../emsdk/emsdk_env.sh source ../emsdk/emsdk_env.sh
if [ ! -f "pixelGameEngine_wasm.o" ] if [ ! -f "${PROJECT_NAME}/pixelGameEngine_wasm.o" ]
then then
printf "Pixel Game Engine compile object missing. Compiling for the first time..." printf "Pixel Game Engine compile object missing. Compiling for the first time..."
em++ -std=c++20 -O2 ${EMSCRIPTEN_CUSTOM_PARAMS} -s ALLOW_MEMORY_GROWTH=1 -s MAXIMUM_MEMORY=4GB -s MAX_WEBGL_VERSION=2 -s MIN_WEBGL_VERSION=2 -s USE_SDL_MIXER=2 -s USE_LIBPNG=1 -s USE_FREETYPE=1 -c pixelGameEngine.cpp -o pixelGameEngine_wasm.o em++ -std=c++20 -O2 ${EMSCRIPTEN_CUSTOM_PARAMS} -s ALLOW_MEMORY_GROWTH=1 -s MAXIMUM_MEMORY=4GB -s MAX_WEBGL_VERSION=2 -s MIN_WEBGL_VERSION=2 -s USE_SDL_MIXER=2 -s USE_LIBPNG=1 -s USE_FREETYPE=1 -c ${PROJECT_NAME}/pixelGameEngine.cpp -o ${PROJECT_NAME}/pixelGameEngine_wasm.o
fi fi
if [ -d "assets" ]; then if [ -d "assets" ]; then
em++ -std=c++20 -O2 ${EMSCRIPTEN_CUSTOM_PARAMS} -s ALLOW_MEMORY_GROWTH=1 -s MAXIMUM_MEMORY=4GB -s MAX_WEBGL_VERSION=2 -s MIN_WEBGL_VERSION=2 -s USE_SDL_MIXER=2 -s USE_LIBPNG=1 -s USE_FREETYPE=1 $(find . -type f -name "*.cpp" -not -path "./test/*" -not -name "pixelGameEngine.cpp") pixelGameEngine_wasm.o -o ${PROJECT_NAME}.html --preload-file ./assets em++ -std=c++20 -O2 ${EMSCRIPTEN_CUSTOM_PARAMS} -s ALLOW_MEMORY_GROWTH=1 -s MAXIMUM_MEMORY=4GB -s MAX_WEBGL_VERSION=2 -s MIN_WEBGL_VERSION=2 -s USE_SDL_MIXER=2 -s USE_LIBPNG=1 -s USE_FREETYPE=1 $(find . -type f -name "*.cpp" -not -path "./test/*" -not -name "pixelGameEngine.cpp") ${PROJECT_NAME}/pixelGameEngine_wasm.o -o ${PROJECT_NAME}.html --preload-file ./assets
else else
em++ -std=c++20 -O2 ${EMSCRIPTEN_CUSTOM_PARAMS} -s ALLOW_MEMORY_GROWTH=1 -s MAXIMUM_MEMORY=4GB -s MAX_WEBGL_VERSION=2 -s MIN_WEBGL_VERSION=2 -s USE_SDL_MIXER=2 -s USE_LIBPNG=1 -s USE_FREETYPE=1 $(find . -type f -name "*.cpp" -not -path "./test/*" -not -name "pixelGameEngine.cpp") pixelGameEngine_wasm.o -o ${PROJECT_NAME}.html em++ -std=c++20 -O2 ${EMSCRIPTEN_CUSTOM_PARAMS} -s ALLOW_MEMORY_GROWTH=1 -s MAXIMUM_MEMORY=4GB -s MAX_WEBGL_VERSION=2 -s MIN_WEBGL_VERSION=2 -s USE_SDL_MIXER=2 -s USE_LIBPNG=1 -s USE_FREETYPE=1 $(find . -type f -name "*.cpp" -not -path "./test/*" -not -name "pixelGameEngine.cpp") ${PROJECT_NAME}/pixelGameEngine_wasm.o -o ${PROJECT_NAME}.html
fi fi
cp buildtemplate.html ${PROJECT_NAME}.html cp buildtemplate.html ${PROJECT_NAME}.html

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

@ -0,0 +1,959 @@
<?xml version="1.0" encoding="UTF-8"?>
<tileset version="1.10" tiledversion="1.10.2" name="Basic Tileset" tilewidth="16" tileheight="16" tilecount="864" columns="32">
<transformations hflip="1" vflip="1" rotate="0" preferuntransformed="0"/>
<image source="tilemap-3-normal.png" width="512" height="432"/>
<tile id="3" type="Object">
<properties>
<property name="Name" value="Stop Sign"/>
</properties>
</tile>
<tile id="4" type="Object">
<properties>
<property name="Name" value="Stop Sign"/>
</properties>
</tile>
<tile id="8" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="9" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="10" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="11" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="12" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="13" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="14" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="15" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="16" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="17" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="18" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="19" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="20" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="21" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="22" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="23" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="24" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="35" type="Object">
<properties>
<property name="Name" value="Stop Sign"/>
</properties>
</tile>
<tile id="36" type="Object">
<properties>
<property name="Name" value="Stop Sign"/>
</properties>
</tile>
<tile id="40" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="41" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="42" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="43" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="44" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="45" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="46" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="47" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="48" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="49" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="50" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="51" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="52" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="53" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="54" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="55" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="56" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="67" type="Object">
<properties>
<property name="Name" value="Stop Sign"/>
</properties>
</tile>
<tile id="68" type="Object">
<properties>
<property name="Name" value="Stop Sign"/>
</properties>
</tile>
<tile id="72" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="73" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="74" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="75" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="76" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="77" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="78" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="79" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="80" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="81" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="82" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="83" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="84" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="85" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="86" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="87" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="88" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="99" type="Object">
<properties>
<property name="Name" value="Stop Sign"/>
</properties>
</tile>
<tile id="100" type="Object">
<properties>
<property name="Name" value="Stop Sign"/>
</properties>
</tile>
<tile id="104" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="105" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="106" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="107" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="108" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="109" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="110" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="111" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="112" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="113" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="114" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="115" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="116" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="117" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="118" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="119" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="120" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="136" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="137" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="138" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="139" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="140" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="141" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="142" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="143" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="144" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="145" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="146" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="147" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="148" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="149" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="150" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="151" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="152" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="168" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="169" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="170" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="171" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="172" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="173" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="174" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="175" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="176" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="177" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="178" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="179" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="180" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="181" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="182" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="183" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="184" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="200" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="201" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="202" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="203" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="204" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="205" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="206" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="207" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="208" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="209" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="210" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="211" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="212" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="213" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="214" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="215" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="216" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="232" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="233" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="234" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="235" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="236" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="237" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="238" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="239" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="240" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="241" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="242" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="243" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="244" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="245" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="246" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="247" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="248" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="264" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="265" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="266" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="267" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="268" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="269" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="270" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="271" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="272" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="273" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="274" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="275" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="276" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="277" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="278" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="279" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
<tile id="280" type="PerspectiveObject">
<properties>
<property name="Name" value="BlueHouse1"/>
</properties>
</tile>
</tileset>
<EFBFBD>PNG

IHDR°ßZÝÇzTXtRaw profile type exifxÚmPÁ Ă ü3EGŔ>C`h<EFBFBD>Ô :~Ml¤$ęI<EFBFBD>ă0ž<EFBFBD>#ź&<EFBFBD>$HÚJŽ9G<EFBFBD>TŠÜT<EFBFBD>hh'S<EFBFBD><EFBFBD>Řłˇ|čK˛Fh<EFBFBD>JśH+ż<EFBFBD><RS<EFBFBD>.Fĺí<EFBFBD>~/TńçËĂČú<EFBFBD><EFBFBD>M˝ťQu#°Č <EFBFBD>}+ćZśëú<EFBFBD>w[aR?´<EFBFBD>9#żüÜËŚÓŰ<EFBFBD>žćBT˛5<EFBFBD>š$ ŠŔÉI˛jARf<EFBFBD>ů7§<EFBFBD>đßZÄ×#ˇą<EFBFBD>iCCPICC profilex<EFBFBD>}<EFBFBD>=HĂ@Ĺ_SkEŞvqČP<EFBFBD>ě˘"<EFBFBD>KŠb,<EFBFBD>śBŤ&<EFBFBD>~M<EFBFBD>GÁľŕŕÇbŐÁĹYWWAüqvpRt<EFBFBD>˙<EFBFBD>ZÄxpÜ<EFBFBD>ĄQaŞŮTÍ2Ň<EFBFBD>¸<EFBFBD>ËŻ<EFBFBD>ÁWř@7fŃ/1SOf˛đ_÷đńő.ĘłźĎý9ú<EFBFBD><EFBFBD>É<EFBFBD>HcşaŻOoZ:ç}â0+K
ń9ń¸A$~äşěňç<EFBFBD>ĂĎ Ůôq<EFBFBD>X,u°ÜÁŹl¨ÄSÄEŐ(_ČšŹpŢâŹVjŹuOţÂPA[Îp<EFBFBD>ćXD)<EFBFBD><EFBFBD>ĽU#ĹD<EFBFBD>öăţaÇ<EFBFBD>"<EFBFBD>0rĚŁ
<EFBFBD>ă˙<EFBFBD>ßÝ<EFBFBD>ĹÉ 7)/śý1
w<EFBFBD>fÝśż<EFBFBD>mťyř<EFBFBD><EFBFBD>+­íŻ6<EFBFBD><EFBFBD>OŇëm-r l×mMŢ.w<EFBFBD>Ą']2$GňÓ<EFBFBD>Eŕý<EFBFBD>ž) Ţ˝Ťno­}<EFBFBD>>Yęjé88ĆJ<EFBFBD>˝ćńî<EFBFBD>ÎŢţ=Óęď<EFBFBD>űrľÉb<EFBFBD>âUiTXtXML:com.adobe.xmp<?xpacket begin="ďťż" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="XMP Core 4.4.0-Exiv2">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about=""
xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEvent#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:GIMP="http://www.gimp.org/xmp/"
xmlns:tiff="http://ns.adobe.com/tiff/1.0/"
xmlns:xmp="http://ns.adobe.com/xap/1.0/"
xmpMM:DocumentID="gimp:docid:gimp:dfee2470-fbb2-46ff-8f41-1f82143f8895"
xmpMM:InstanceID="xmp.iid:a1c2a389-d76b-4cad-9f2d-65107acb6ab3"
xmpMM:OriginalDocumentID="xmp.did:61ee3da2-3b95-46a3-9082-bc4ee6636679"
dc:Format="image/png"
GIMP:API="2.0"
GIMP:Platform="Windows"
GIMP:TimeStamp="1709678726242178"
GIMP:Version="2.10.36"
tiff:Orientation="1"
xmp:CreatorTool="GIMP 2.10"
xmp:MetadataDate="2024:03:05T16:45:21-06:00"
xmp:ModifyDate="2024:03:05T16:45:21-06:00">
<xmpMM:History>
<rdf:Seq>
<rdf:li
stEvt:action="saved"
stEvt:changed="/"
stEvt:instanceID="xmp.iid:6caab071-227d-49cb-9312-258b97c505a0"
stEvt:softwareAgent="Gimp 2.10 (Windows)"
stEvt:when="2024-02-23T16:34:41"/>
<rdf:li
stEvt:action="saved"
stEvt:changed="/"
stEvt:instanceID="xmp.iid:6f73116e-2a6b-4df3-8ee9-1b19e74acb2b"
stEvt:softwareAgent="Gimp 2.10 (Windows)"
stEvt:when="2024-03-05T16:45:26"/>
</rdf:Seq>
</xmpMM:History>
</rdf:Description>
</rdf:RDF>
</x:xmpmeta>
<?xpacket end="w"?>ő<EFBFBD>ąÉbKGD<EFBFBD>?<EFBFBD> pHYsĂĂÇo¨dtIMEč-<EFBFBD>^Ĺú IDATxÚíÝ}<EFBFBD>$e<EFBFBD>'đ_<EFBFBD>Ăôź<EFBFBD>3ÂŔź(Â<EFBFBD>
çp(xĂ)r<EFBFBD>캡*§Ąa (xŢé<EFBFBD>§L(*ĄěĂË/'+Ę<EFBFBD> ę<EFBFBD>ÁáŞç<EFBFBD>¨°"<EFBFBD>ŕ*ŤăËźŃŔô=ŻźőýŃ<EFBFBD>ŐYŮ<EFBFBD>Őő^YŐ<EFBFBD>OA÷SůTUVNç÷<EFBFBD>O><EFBFBD>5´öSkĆŁ<EFBFBD><EFBFBD>:ůîŚű.ýÝŞXý<EFBFBD>K<EFBFBD>Ś[nĺđpSëx˙Î<EFBFBD>Ó>÷;Nů<EFBFBD>=ůüNçŰâşëo<EFBFBD>E<EFBFBD>EDÄĆ<EFBFBD><EFBFBD>âŘWÝđóŹ˝đŇĄ<EFBFBD>ÝŻo|éďVĹ[<EFBFBD>9%VÇ%Ó<EFBFBD>˙ľˇßÖÔkź˙ő'<EFBFBD>OW\zާťžî÷=řŤ8ęČ<EFBFBD>ÇĽç}:>Ĺ<EFBFBD><EFBFBD>}ţőů_{űm1vö'<EFBFBD>z<EFBFBD>koż­Ž" á<EFBFBD>ţ4c<EFBFBD>đ/6vö'âÚŰokúB§Ă?"<EFBFBD>?<EFBFBD>_t3üËVä<EFBFBD>? |Đ<EFBFBD>đ/K ü<EFBFBD><EFBFBD>@/Ăż×E<EFBFBD>đ`Fe˙^Â<EFBFBD>NiËUGwBSýî˝óśž ˙lĐéŤ<EFBFBD>?Ľ<EFBFBD>.Č;ţ_˝ýöŽ<EFBFBD>ˇF<EFBFBD>?}1Đnő<EFBFBD><EFBFBD><EFBFBD>˙u]Ë=yöÇ <EFBFBD>­őXň¸#f|ĐĚ)<EFBFBD>Ł<EFBFBD>;!w á?ݲÓ=ĎÂ<EFBFBD>˙:ĆŁý˙ýţešOPß-ĚĄm@3§:uä_tt<EFBFBD>}źhůlřç=_#<EFBFBD>ĆL˙űś=ě/ zŕĆo<EFBFBD>Ňśö<EFBFBD><EFBFBD>+čZĐëđďwýţ?úí/cttÔ_tŮmˇý?-)Ĺe<EFBFBD>ÂżĂ(WřŻ˝ć<EFBFBD>NËŃ#ýţ÷=řŤR<GˇĂ?"â <EFBFBD>á/z`í5_<EFBFBD>üů<EFBFBD>çśCÇ <EFBFBD>c^ů<EFBFBD>Śű^wý<EFBFBD>qú+ßÖ<EFBFBD>|ü#Ťc˙/\Y×9üvúýŽ<EFBFBD><EFBFBD>ęwČÜĂ<EFBFBD>î<EFBFBD>ôoőóo6ü_pĚqUm<EFBFBD>6o<EFBFBD><EFBFBD><EFBFBD>eKW4ő<EFBFBD>úëŻýýˇýüÎŞđ_xńŞ~_{Í'ţ3<EFBFBD>NÍ_Ż9w],Zź¨­Ăß<EFBFBD>duŐďIAĐJ<EFBFBD>żfF/<EFBFBD>a˙Ł˘šuďői<EFBFBD>d<EFBFBD><EFBFBD>Hv\Ůöz鯿ţő÷<EFBFBD>[<EFBFBD>Ľh%üűŐ<EFBFBD>g<\|IOÂť s<EFBFBD><EFBFBD>T<EFBFBD>=Ň_ýŘźąĆË<EFBFBD>Đ<EFBFBD> šžż]<EFBFBD>ůu2ü÷˙Â<EFBFBD>šŁíűv<EFBFBD>đ <EFBFBD>ôÍ}<EFBFBD>nÚSĆ#˙¤¨7Ŕ;qM˙ <EFBFBD>Ţů {śýüÎĘDżěů˙ůËVÄöM<EFBFBD>PˇYÓ<EFBFBD>'<EFBFBD>ü7nÜÔÖ#őlŘ×
˙f<EFBFBD>Íüe+|´><EFBFBD>ţ­ý<EFBFBD>˙ąŻ>şí+TŢyíÝ(<EFBFBD>?Đíđ7
@Ă#ýţ÷ďÜ9tňÉo<EFBFBD>ç_rI×>´_ďý ÓŢs[řݲ}Ó#4Wôó<EFBFBD>˙Öm<EFBFBD>˝ń<EFBFBD>'wĽ<EFBFBD>Šá_ëü˙ŚÍ<EFBFBD>žJýőŻŻ­ó˙yá<EFBFBD><EFBFBD>D¸; ůf÷{ř§<EFBFBD><EFBFBD>Ó<EFBFBD>?aüŤˇßŢą<EFBFBD>˙Ěô#˙˘<EFBFBD><EFBFBD>ë¸ő׿óý<EFBFBD>ůÓî`Â?q˙Î<EFBFBD>Cď{ýë;Rö<EFBFBD>ţ:e×qëŻçú<EFBFBD>˙¤ŘžiCŐ(<EFBFBD>šä<EFBFBD>5(á<EFBFBD>)Úzy<EFBFBD>đĘ(/üĄî řýţ<EFBFBD>(<EFBFBD>żë˙Ą×j<EFBFBD>˙<EFBFBD>.üÍ ćŔ˝wŢ60á<EFBFBD>-<EFBFBD>˝eŻđúA6ü<EFBFBD>ß<EFBFBD>0<EFBFBD>ś|@ŮÂ?]ź˙ő'<EFBFBD>_{{sĹÍ <EFBFBD>˙<EFBFBD>s×ů <EFBFBD> ˙˘QshkPÖđĎÍö<EFBFBD>n<EFBFBD>뎿ąo7~?!P{@vB ´ľ¸ű<EFBFBD>{ăÔżřÓŰž#nzöÚJűËOZOĚ˙iĺ÷š ö-|<EFBFBD>ŤśŢÝ<EFBFBD>" ýűĘááńÓĎ?/<EFBFBD><EFBFBD><EFBFBD>ŘźysüâŰ7D3qŤ!:şu´ę9-<EFBFBD><EFBFBD>yĺ+~Í뎿ąî÷]Ďůß玿ţ<EFBFBD>ë_tţż<EFBFBD>đ7
@G
<EFBFBD>ťďš7žtÉyńí<EFBFBD>7={mŹX˛¸ňŘ<EFBFBD>ůűÔţDË#'<EFBFBD><EFBFBD>>hć <EFBFBD>Śť>ŮuÜúëßšţĂÓôŻ÷4´ĽHÂ?"*á?oţáßĺđoTłßĆXď<EFBFBD><EFBFBD>ë¸ő׿ýý<EFBFBD>Ž˙Ż'üÝ<EFBFBD>śéđ<EFBFBD><EFBFBD>JřĎ<EFBFBD>żOěŮţě<EFBFBD> îVíěQřˇóŰ<EFBFBD>îŞ7üĄ-@6ü#"49@5<EFBFBD>ţË2Ůą<EFBFBD>đ?öŐGÇwřŁÂ~Ž˙<EFBFBD>ŢŞuýłáo<EFBFBD>ÄŹVÂż<EFBFBD>Ą˙ţ ?5ţî @K@=á<EFBFBD><EFBFBD>žđţ@šÂżh ÂÝÂ_ř}ĽŃđ7'<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD>Á
˙FÎ˙ű>wýőo˙Zç˙ŰţF<EFBFBD>ÝJř3ŘGţőîÔ\Ç­żţíď?ěČ<EFBFBD>^Â_ř§wL<EFBFBD>Z^ýő/î_tý+áÍţÂčíČ-<EFBFBD>żđ<EFBFBD>pý?ôZ­ó˙í˙y+_k.ŔL/ĘţťĆ<EFBFBD>Éý=Ű<EFBFBD>#<EFBFBD><EFBFBD>Z ßHUĐëđ/
ůl{Ńă3<EFBFBD>đáßęH<EFBFBD>Q<EFBFBD><EFBFBD>ivĂżV° ýbÂ<EFBFBD>9´ľřĐűŢ÷=řŤŚ:_wý<EFBFBD>qú;ßŰô<EFBFBD>_wý<EFBFBD>ń­<EFBFBD>ţąŻg<EFBFBD>Ž˝đŇ<EFBFBD>ž˙+˙×'*<EFBFBD>ú+ăŕ<EFBFBD><EFBFBD>Ż<EFBFBD>ó˙žĎ]ýŰ׿čüťĂ?}5@zŔhôűäkÎ]o:ńřhľ˙ˇnúG[Ąo9ć<EFBFBD><EFBFBD>úŻ<EFBFBD>K
wHőrˇţúˇŻ˙p<EFBFBD><EFBFBD>ü<EFBFBD>P)<EFBFBD> ďמćU1ś}Gô˘?<EFBFBD>Őě<EFBFBD><EFBFBD>ë¸ő׿őţE×˙w*üwÜ˙<EFBFBD>Şß<EFBFBD>š<EFBFBD>ţ<EFBFBD>á}Ół×FDÄ<EFBFBD>?kŠ?Ókwř'Ă˙<EFBFBD><EFBFBD>ŐČÂéđ^ądqźü°ĽŃÍţt<EFBFBD>ë˙Ąˇ<EFBFBD>Î˙w"ü<EFBFBD> î 9gߏVűĚTÂ<EFBFBD><EFBFBD>Ix<EFBFBD>mßQ9z<EFBFBD>7<EFBFBD>żOtŁ?<EFBFBD>đţtšţ˝×Š9Ě\ł<EFBFBD>?­<EFBFBD>˙wˇţúˇŢxóĆÂű˙wj<EFBFBD>"@ĐtxĎ]°otŞ?Ýç:lýőď]˙˘Ë˙L¤Ť@6źŐjzĂuŘúëßťţE<EFBFBD>?]+ň<EFBFBD>Ü#˘îŁ÷VűĐůđ7üĎŹéÂ{Ţü9-<EFBFBD>#ýé ×˙Co]˙ßÉđ7ŔěéÂ;"Z
˙zűwÓĹ×^ßźůÖXştiUŰ<EFBFBD>ŢyĆ<EFBFBD>Ţĺ#üéhPë&=<EFBFBD><EFBFBD>˙tý#Şď8ŮÍŻöýţő×Tž5ď<EFBFBD>7˙(""8đŔĘ˙żyó<EFBFBD>Ş<EFBFBD>yÓ;Ď<EFBFBD>ˇÇ\9<<<EFBFBD>y˝÷Łßţ2ŢpŘąđâ/:[¤<EFBFBD>Ü#˘áűőöOÂż<EFBFBD>Ą<EFBFBD>öŚw<EFBFBD>1<EFBFBD>ř´ű~ń<EFBFBD>Şâ¤<EFBFBD>ÂÍšëZ~<EFBFBD>ţ <EFBFBD>Ě <EFBFBD><EFBFBD>nţťżośóu×ß<EFBFBD>/Şj۸qS|pőÇúb寞ňň8ęSŐÉă[vÇţď7ĽmÎüŮ1wÁě)ŁéśFúiôő/{ë<EFBFBD>-++<EFBFBD><EFBFBD>Çý@ů,ýťďt4ü<EFBFBD>űüxő<EFBFBD>ž <EFBFBD>uäË<EFBFBD>>ňě÷đ˙Ň%çĹU[ĎŠ
ÚŰ÷Dl<EFBFBD>Ř˙ŕýâń-ť#"&Ú2ölŚň˙$°é<EFBFBD><EFBFBD>y:đ<EFBFBD>yýV5úM`+<EFBFBD><EFBFBD>Ç˙ä˙<EFBFBD>/EţđĂďĆÜ<EFBFBD><EFBFBD>ęHßir <EFBFBD>v<EFBFBD>˙ąŻ>:î˝óśŇŻôÝ÷Ü_şäźŞŁé=Ű<EFBFBD><EFBFBD>Ű÷Ä<EFBFBD><EFBFBD>­ą"Gl<EFBFBD> ŢJ[JU(o<EFBFBD>lŤˇR$<EFBFBD>ßh˙ź˘č?Â<EFBFBD>^<EFBFBD>Őh<EFBFBD>Zá߲á<EFBFBD>őąšËbĂČÖJoŮZŐ<EFBFBD>ü<EFBFBD><<EFBFBD>nĎ.[Ťrtßl˙ä1@ř7ű;F<EFBFBD>NpůČŚřŘÜeSÚŇż'<EFBFBD>ö¤­¨<šwů]<EFBFBD>*Gůéç<EFBFBD>ŽŢëß<EFBFBD>şţ9î~âq9Đçá<EFBFBD>Ě5z:<EFBFBD>ţ7´áwÔ5 lPĂ˙Ňß<EFBFBD>]5ü<EFBFBD>ÝN¸|׌ĘUűź_Źş§ľĄüSÎţYW˙hW<EFBFBD>ńó<EFBFBD>üĺ@<EFBFBD>˝ţkÓÎ(Cř'?żkĎ#qőgĎW<EFBFBD>yGţ˝ űoď)ĹűXđ?żncĚ #˙Äťö<<EFBFBD>ňbE0óÂ?bbś}l<EFBFBD>X<EFBFBD>§ ťˇ[2<EFBFBD><EFBFBD> ˙+<EFBFBD>gâꍿԹçôá<EFBFBD>Ó.łöź m<EFBFBD>ţo^<EFBFBD>đWĚÜđ§9Oţîˇ><EFBFBD>v<EFBFBD>/<EFBFBD>×ţŃ<EFBFBD>m<EFBFBD>Ĺ/\\ť@xlkÜyĎ˝ąĘ6ţ(fbř÷r {{ä~°đ%<EFBFBD>ůËi<EFBFBD>Ń=ďŘśÇlÓůŮO<EFBFBD>?ý[Ě´#˙ä<EFBFBD>0gţě<EFBFBD>xÖżB*<EFBFBD><EFBFBD>[ xj×Xź`Ѣ<EFBFBD>Ëlőa;ň<EFBFBD><EFBFBD><EFBFBD>sŢóÂżŰá?q3 g+<EFBFBD>ĽG ˛ýŞ.;Üľ)w9òC^˙őôÓ:öü<EFBFBD>üÔ˛đţT<EFBFBD>7<EFBFBD>˙<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>K&ĎŐ&ď#ýXş-Y6}_<EFBFBD>n2 ó:Ň]xŠm*ü<EFBFBD>ŔL<EFBFBD>đ×Ë" óyóçLśí}éÇŇmɲˇî~ŕ|qű<EFBFBD>e Ţ6m<EFBFBD>íXĂ/ţôG0(_ěSvU÷JÂ|b>@TÉcéĽę[ĘťŽż<ćđ<EFBFBD><EFBFBD>/óÍ<EFBFBD>Ę´.ţËł*?ńo.Ë},Űn<EFBFBD>ön]<EFBFBD>?Ľ.<EFBFBD>d%Á<EFBFBD>÷UÁéű$EŔ<EFBFBD>ś<EFBFBD>îLŻůÁ<EFBFBD>qčaőU<EFBFBD>§ÖŘ!w3Hʸ.éĐń<EFBFBD>šíéDzíÍśiëë"ü)}řŕ%Öő­~wßso|č}ďîé
,_ž,>Ĺ<EFBFBD>Ť<EFBFBD><EFBFBD>FN[ěZőLĎŢűÜł+ßD8úđ<EFBFBD>L2ą9{<EFBFBD>ॸüˇë{~7ÁźóĹwŹ Ö˙î÷<EFBFBD>ßO?éÍńńË/<EFBFBD><EFBFBD>×ő<EFBFBD>×Ýrs<EFBFBD><EFBFBD>ăş[n<EFBFBD><EFBFBD><EFBFBD>C_rHÜőł{âď:˝ëç§Ë´.ţËł*á}ÖY<EFBFBD><EFBFBD><EFBFBD><EFBFBD>§ö<EFBFBD>Žě<EFBFBD>\éö<EFBFBD>GFâ˛Ë.*,lÓέË<EFBFBD><EFBFBD>-ńÜsĎ<EFBFBD>2ü_wő<EFBFBD>ńş<EFBFBD>ńv}Ž_<ínĹD?ÍvlÇMvî{đWqÔ<EFBFBD>/oé9ţ÷˙˝­éđďśVo\<EFBFBD>[ <EFBFBD>/>ô%<EFBFBD>T~žäďŻ<EFBFBD>X<EFBFBD>˙Â7âEË<EFBFBD><EFBFBD><EFBFBD>?nz8>|Ú<EFBFBD>'v߸šŞý39-îX˙@CŻ×IÝZ<EFBFBD>éćĚyŢó""bíÚ â %K*!<EFBFBD>ţó˙mUř'?´ˇĎÚľçL_DďyĘ6măşôz@­đo'á?C <EFBFBD>˛<EFBFBD>Złá<EFBFBD>zďĹ$Ŕ^ż~;Ľ<EFBFBD>°Ňţ¸éáşÚÓýÓ;këâsč×uţ T0Háßm­~@ŮżK ˝S|äŃ­<EFBFBD><EFBFBD>˙ÝŃ;<EFBFBD>ş÷ÁŞĺłíe
ĘAZ<EFBFBD>CoÖEř3P<EFBFBD>đ/_Đ Eço<EFBFBD><EFBFBD>°˛;Ö˘ö˘#Ź^\ŁŢ­uŮwöÔ?Áĺ{<EFBFBD><EFBFBD>ŇöÄOÄÜýűˇŇČňśiűÖĽs<EFBFBD>?-ĘţŃrř'<EFBFBD>đző<EFBFBD>Ŕ<EFBFBD>ž~ćÔsž89ÂJΊfĺľa-|ÉaąíÁűăGŽěéŃbťÖ%mŹÁ÷<EFBFBD><EFBFBD>󯡽ĚŰ´ #<EFBFBD>X<EFBFBD>ţt´(křˇC/ĂżŃ×/Ë$ŔF<EFBFBD>°<EFBFBD>é_ÖóĹ˝X<EFBFBD>dö˙Ă##<EFBFBD>ýŰ~ꊪŤlÓîŻ<EFBFBD>𧯠<EFBFBD>A˙<EFBFBD>Ţ~ŕţď×Đë÷ă<EFBFBD>ělęZłŹË~ž¸ë<EFBFBD>\Ęg<EFBFBD>ößşúşôđ§9<EFBFBD><EFBFBD>/nu<EFBFBD>ő<EFBFBD>żűmě3<ŻŤç<EFBFBD>;š.ié=ëŘśÇböĐsí źWźjâ˝üË?<EFBFBD>r<EFBFBD><EFBFBD>e ÝëŇ<EFBFBD>9Â<EFBFBD><EFBFBD>3)üűy 9_Ńú,ë˛<EFBFBD>/îÄş<EFBFBD>ĽÂż­ď˙Ż<EFBFBD>Í?ţtDD,}ĹŤŚ-lÓö­K§ç:ZĚ´#˙^~%pŁŻ<EFBFBD>׿,:5ËzĐ×ĺŃ<EFBFBD>/\Ü<EFBFBD>őXúşuu<EFBFBD>ŘŚ<EFBFBD>YáO_Â??tÓ<EFBFBD>%_Ó<EFBFBD>×<EFBFBD>mĎöO<EFBFBD>÷Üł[
˙źďčĽNͲś.ÍŮśĺ_}=\áO_<EFBFBD>zřýŰą;"˘ĆI¨ŻX294<EFBFBD><EFBFBD>pDÄĺ#<EFBFBD>Ą<EFBFBD>´%íEýk˝~żÜ°ŃóĹÍĄ<EFBFBD>ő|qť×ĽÓ{Úżőö8´<EFBFBD>SśiűÖĽs<EFBFBD>?-<EFBFBD>ż$<EFBFBD>+až7<EFBFBD><EFBFBD>P<EFBFBD>7NU[ň5˝y_ë;m˙<EFBFBD><EFBFBD>űžhä|q;fY<EFBFBD>ĺ|q'ÖeŹCďýżüsC<EFBFBD>mÓö­Kťç:Z<řË_ÍřŮţŮóé+b2čÓ]u ţ<EFBFBD>ű7¨j` šo|šÖĽ<EFBFBD>s˙śi9ž @řÓŃŕÁ_ţ*""Ö<EFBFBD>ťŽ/W ďë<EFBFBD><EFBFBD><EFBFBD>w>=ÔI<EFBFBD>gŰv<EFBFBD>=Ót˙D7'!vű+Â}ă[qŃ<EFBFBD><EFBFBD>śĺy>ůŠ5śi<EFBFBD>×EřSú <EFBFBD>˝ű<EFBFBD>{cxîÜ<EFBFBD>ŽŔS'ß=%Lł!űř<EFBFBD>ÝS&Í%ÁcEwă<EFBFBD>Řź'ójym<EFBFBD>gëXvjŰ]Ż<EFBFBD>Ř?ö<EFBFBD>e/}~|<EFBFBD>÷ż*­ź˙7<ôlźáâ×ÔýÝŢy<EFBFBD>/8é<EFBFBD><EFBFBD>˙ř=[ď,ëv˝^'ľ{]Śűđ<EFBFBD><09äEM˝ßß˙ţ<EFBFBD>ńČ#<EFBFBD>ŘŚ]\<EFBFBD>ţtĽh%ü[=mĐ<EFBFBD>ä<EFBFBD>ĂşÖT39<EFBFBD>N<EFBFBD>´ß21ŠoÇöŠĄ˝gűDĐëKéŇKăďż7ť<EFBFBD><EFBFBD>żýĚGNk¨˝Ő×ë¤NŹK=s<EFBFBD>{îŮ8<EFBFBD>zĎë×˙Î6íňş´:@řSę ,á_ Ç˝çâ<EFBFBD>Łřä&9IpVÚŇUúŢÇŇGŰ˝<EFBFBD><EFBFBD>×ÚűŻ.A§/!Ě<EFBFBD>_=đ<EFBFBD>Ćç)čż)ĹĹ ­<EFBFBD>ĎĄˇë"ü¨ <EFBFBD> ÇĘĺ{{'Ęm<EFBFBD><EFBFBD>7y.ylŮK<EFBFBD>ßÓ ĐŇű/Ń|<EFBFBD>ÓO<EFBFBD>zÝôÇ/ż0<EFBFBD>-_^W˙'<EFBFBD>x"""<EFBFBD>řůCÖĹ6<EFBFBD>uţ TPśđO<EFBFBD>cňsş-}$<EFBFBD>^.˝ě]=Ţ­ž˙^Č<EFBFBD>ó\ţ­ďUýžń×üŕĆ8ô°ú<EFBFBD>yGˇn<EFBFBD>Sß~Z,˙Ö÷z~n¸ŰëR<EFBFBD>=ąmÚžuif<EFBFBD>đ§Ô@ĂżVÖŰśkě<EFBFBD>Ž~%pťßŁ<EFBFBD>FzĄŮÓÓ<EFBFBD>ż=âçĹÇŢĐs<EFBFBD>őhšÓë2V<EFBFBD>ő´Mۡ.<EFBFBD>Îţ<EFBFBD>ş(sřˇŞ×áß<EFBFBD>Ń<EFBFBD>¤čä­<EFBFBD>ű}ř{P×ĹçĐÝuţ<EFBFBD>ŮŹ<EFBFBD>ţ<EFBFBD>çÍ<EFBFBD>3qťŢÔýüQz"`ł7#<EFBFBD>?3` _Ă˙Ž}wÄŞ§çMů<EFBFBD>ö(Ó5ÜýnČ68őĚţ<EFBFBD>şčçđŻU<EFBFBD>ôŰňôňčż,×p<EFBFBD>Ě<EFBFBD>ľOÜů<EFBFBD>挍Î<EFBFBD>ľO´d<EFBFBD>mÚÍ#˙ićJ] °6ôk<EFBFBD>r+ŢZŞÎ˙Ü<EFBFBD><EFBFBD>ňIÂű<EFBFBD>ŘĐ\0$zZ úŠ´sţŤ<EFBFBD><EFBFBD><EFBFBD>;*ĐîđOĎČ>Ď坪G<EFBFBD>eť]ld<EFBFBD><EFBFBD><EFBFBD>çř (šfďá<EFBFBD>đ<EFBFBD><EFBFBD>
<EFBFBD>A<EFBFBD>đ<EFBFBD>­˙'a<EFBFBD>|őoDT<EFBFBD>'ýXş-YśŰ§ÚuŔůâö1`đäÍţ<EFBFBD>ş<EFBFBD>đOń'˙_őôź<EFBFBD>ÍHÂ<ůęß<EFBFBD>ÉçI?<EFBFBD>nK<EFBFBD>]<EFBFBD>#<EFBFBD>ěŻđ<EFBFBD>pž¸<EFBFBD>˛sś<EFBFBD><EFBFBD>vôőnžú<EFBFBD>řŕßg<EFBFBD>vňČ?3@řSę<EFBFBD>ýÓ<EFBFBD>@ť%a<EFBFBD>ýRĄ1ôéŁ*<EFBFBD>ˇD×
 ű<EFBFBD>?Ľ.Ęţé˙ˇł¨W+ó<EFBFBD>ŕĎťŠNúH;)Ś´~˝p{ukŕ5+6Vý~Ć<EFBFBD>ĺ]é[ö÷RdĂO˙)""}lkUűťO;łc˙˛Że<EFBFBD>wć˝ĘnčŹď7ŢÍťáeż<EFBFBD>ŢŮŇ?Ţ<EFBFBD>.~Íx­ÇÓ#yEÁ×üÂ<EFBFBD>Ú GŃŘHĘÚ /mčó_9<<<EFBFBD>Ü[ý^<EFBFBD>?<EFBFBD>pΚ_<EFBFBD><EFBFBD><EFBFBD>=罡ŇööŰ÷äö)jĎ>><EFBFBD><EFBFBD>Fl|Ç<EFBFBD><EFBFBD>âßMö~ůýđ9<EFBFBD>u<EFBFBD><EFBFBD>üě'ńţ<EFBFBD>@/ <EFBFBD>éÂ?"âč?ýM<EFBFBD>\tň<EFBFBD>ÓYsîşX´xQu<EFBFBD>Çžúč<EFBFBD>w<EFBFBD>ÜZ¸łM~O$íŤ<EFBFBD><EFBFBD>é~E<EFBFBD>7b<EFBFBD>§ś<EFBFBD>8šírúŽZ2ńx<EFBFBD>ŢK<EFBFBD>Ż˙úÂÇŢóŚwĆwú<EFBFBD><EFBFBD>ďţâß˙Ů´ďÓ6Ż<EFBFBD>đüĎ
úÂěôĐu§o<EFBFBD>Óéď¤o4ü<EFBFBD>5(áߨ<EFBFBD>ĂĂăoűŘę);ßäç=ç˝7ö<EFBFBD>÷Ţ);ĺ<EFBFBD>ÖÝPľÍŰÉŚŰ<EFBFBD><EFBFBD><EFBFBD>ÇóvÜw<EFBFBD>Ü­ťĄ<EFBFBD>ďĺĹ/ZŁ[Găk˙ýâXzĐ<EFBFBD>š<EFBFBD>ĺI˙ö Ľ˙äÔ[­÷i<EFBFBD>7śÍ<EFBFBD>7g<EFBFBD>đ§/ĚÄ<EFBFBD>Ę ˙ä2@áßZř/Üôݸjő<EFBFBD>U;Řź<EFBFBD><EFBFBD>߯Z}f,ÜôÝÂ<EFBFBD>lZz<EFBFBD><EFBFBD>Ý9'˧ű|ňÓ§<EFBFBD>꽤<EFBFBD> ť<EFBFBD>ĘţľŢ§mŢÚ6ţ<EFBFBD>z ŃP­u4<EFBFBD> Ř^Ü<EFBFBD>żčVŔíx?ÂrGzŐę3ăCW~ĽjÇ{Őę3cóŠŐŁGK#bóŠË㳡ţU<EFBFBD>âçâŠí'N9Kvčşň+U;Ţä5j<EFBFBD><EFBFBD>ĺ˝\´î<EFBFBD>Ş Ý::0áo<EFBFBD>7ˇÍĎyĎâţ<EFBFBD>;<EFBFBD>î?ínIC)Ő5 <EFBFBD>`/:şÎ.Űé9ŮŁ˙éNÔ;`PĂş9Ůđ?`ÁžńčŘÓSwś7l<EFBFBD>ͧ.ßűóĆ˝<EFBFBD>ĹŇ ö<EFBFBD><EFBFBD>ŽěPÓ;ŮŘť<EFBFBD><EFBFBD>Ď}žóOü\ŐN8ťă<EFBFBD>č_˙{I´ë˝äÁ˘Ĺ<EFBFBD>âň5<EFBFBD><EFBFBD>ňy<EFBFBD>1üĎůĎ<EFBFBD>˛<EFBFBD>mŢü6_}ńçăĘł?÷ďÜéH<EFBFBD>rţĆąă<EFBFBD><EFBFBD>^<EFBFBD>ć-Sëh;]´:<EFBFBD><EFBFBD>7 0}Äß<EFBFBD>`<EFBFBD><EFBFBD>ük<EFBFBD>ű<EFBFBD>|`D ĹQ?Š´=:ötĺç¤ďÄr<EFBFBD><EFBFBD>úá#qßÉK*;íę<EFBFBD>űäÎ;ťăţě­<EFBFBD>z<EFBFBD><EFBFBD>Ü÷<EFBFBD>~žź÷ß<EFBFBD>÷RÉůŕ<EFBFBD>žyTDDÜňîűJţé!ęđÁ°Í[Űć!üé<EFBFBD>ŕ<EFBFBD>[<EFBFBD>Ż÷:ř˘<EFBFBD><EFBFBD>F<EFBFBD>Řłw¤ťŕ¤;:r@rŰßéŢŰtŔ űŮ äŰg<EFBFBD>ĄŢoî@<EFBFBD>?Íoóäót<EFBFBD><EFBFBD>~0í<EFBFBD>˘ ué<EFBFBD>­§Oˇ%ŻŰĘëĎÔsţ<EFBFBD>c<EFBFBD>>Ę_Č4ţđÇ 1<o¸ďĂ˙<EFBFBD>§Ý=´rxxÜ6o~<EFBFBD>ˇ{˛¨÷^řIŕç}Ă^ś8Č ßvŢ<EFBFBD>ž<EFBFBD>ţ<EFBFBD><ö¨ż<EFBFBD>i<EFBFBD>>ž-vďŢÝ÷áo<EFBFBD>ˇśÍ<EFBFBD>?}[Ô:<EFBFBD>w_ý˘"`ş#˙~ůNzá?áŔ6N~Íń<EFBFBD>ĺŐ˙66lÜTŐ<EFBFBD>,ťbů˛Â~Ů>Ů~Ye~ý<EFBFBD><EFBFBD>];wW<EFBFBD>ű=ümóćśy6ü ˙Ó7@=ç˙<EFBFBD>&üĺ łO7ä<EFBFBD>-Ú%ůęÝä5˛<EFBFBD>ĽŰ<EFBFBD>eóÖWř§><EFBFBD><EFBFBD>[gMŢlĺÄŢ´$ś<<1ëÖY_ŤjK<EFBFBD><EFBFBD>÷öKúDDnżt{ňe}ý<EFBFBD>ZR9<EFBFBD>đˇÍßćÂ<EFBFBD>~ÖĐ$Ŕvu;'<EFBFBD>řšeă<EFBFBD><EFBFBD>őH<EFBFBD><EFBFBD>ĹUmɲFśĆuoůűţE<EFBFBD><EFBFBD>>ס/ühüĂ<EFBFBD>WT}ŽI[ús-ę<EFBFBD>ô<EFBFBD><EFBFBD>Ü~éö˛żţŰ~4<EFBFBD>{úłç DřŰć<EFBFBD>msáĎ@­}#^łá-§iĺxÄä×ňFDe=<EFBFBD>?äyóçTľ%ËîŘž'>żęofô<EFBFBD>ś8ë;Ç<EFBFBD>ßwߍ>ťf>ע~I<EFBFBD>ôN;Ý/ť3/óëoŮ<EFBFBD>]´-NúćQqŮ[ďZ9<<~Áß^Qş?ňéÂß6on<EFBFBD>ďŮţ<EFBFBD>৯Íî÷HţX<EFBFBD>ŻĺMŹ<EFBFBD>É?ňô$ÇŞ <EFBFBD>[fî<EFBFBD>-/?liĺçZ<EFBFBD>kňXŇ<EFBFBD>^ś¨_ş=Ż­č5Ęřú1qôĹ<EFBFBD>ˇ|3Ť^<EFBFBD>żm>xŰ*şu
 <EFBFBD><EFBFBD>?Öź/J?R<EFBFBD>ő<EFBFBD>ŕÔŕř<EFBFBD>Ď:o§[kG<EFBFBD>]ŚhŮźÇËüúGő˘)<EFBFBD>áČŁ<EFBFBD>őô/l(ümóÖˇ9ôŤĘ)<EFBFBD>´ Nşcę<EFBFBD>Ä-Ç×ý¤­ö§{j<EFBFBD><EFBFBD>9ë;ŤĆ#zu <EFBFBD>üł,÷ë'G<EFBFBD>+<EFBFBD><EFBFBD>ÇËtî?ţ<EFBFBD> QŰćőos¸ ď ń˛<EFBFBD>7zgĽ}ѢEuyŇ˙7÷^<EFBFBD>^üž<EFBFBD>űS<EFBFBD> čh1˝#Lˇ%;ĆłžsÜxz'<EFBFBD>]&ďyň<EFBFBD>?ťł-ăëRřŰćőos¸ŕ<EFBFBD><EFBFBD>î<EFBFBD> ń˛Ę<EFBFBD>é <EFBFBD>żŕ¤;â7÷^:š|ŞPôĆÎ'<EFBFBD><EFBFBD>áçďŰ<EFBFBD> oG[ÔÖlż¤­č9Ëöú<EFBFBD>ţśyýŻ}]dĂ?-]ěXt\Ź<EFBFBD>_O ńlřWŞýĂWăO<EFBFBD>čbř§<EFBFBD><EFBFBD>lAĐęU3ŮL <EFBFBD>$üç<EFBFBD>Ţ;WWÇt<EFBFBD><EFBFBD>˙˘ż/F˙đŐşúg<EFBFBD><EFBFBD><EFBFBD>Ţ<EFBFBD>´´°O˛L"˝ě]?^Ť^wha˙d<EFBFBD>D­eáhżč÷tť<EFBFBD><EFBFBD>ńŃŃŃŞĆZE@Ţź<EFBFBD>l˙ZE@v^Ŕ9ˇ_3Ř<EFBFBD>Â?˝l=Á<EFBFBD><EFBFBD>E@=ĹI­ĺîúńúiűć<EFBFBD>{=<EFBFBD><EFBFBD>3ÓŹ<EFBFBD><EFBFBD>Ůłg<EFBFBD>|ş-Ż=ŻöÜŇ<EFBFBD>×<EFBFBD>ěŮśźe?hinřç<EFBFBD>}Ţ2Ť^whŰÿ轚rišriaRkš¤˝Vß<EFBFBD><EFBFBD><EFBFBD>]á ŚŮçÜr|,\¸0÷Hžđ(>3<EFBFBD>ŻŐţyA˙ĐĂ<EFBFBD>§<EFBFBD>ä<EFBFBD> ¤C<<EFBFBD>Ů<EFBFBD>ďäŃ~:¨<EFBFBD>×IÚ,Ü/Ć<EFBFBD>Ü]ł`Č[.űx=# Â]řÔU¤<EFBFBD>8 ć<EFBFBD>ÔŽü<EFBFBD> îşúÇ<EFBFBD>ÜţéĐO>iKC<EFBFBD>ÂčovO ř$(<EFBFBD><EFBFBD>ÎÓÁÚjQ0öäîxđţÍšA<EFBFBD><EFBFBD>z­ĐO$Ë-X¸_ĺ9<EFBFBD>Ç<EFBFBD>Ç<EFBFBD>ßë9%<EFBFBD>đ¨eĘ}śm<EFBFBD>ÔŤŢsw|yÝâ<EFBFBD>EóâÔ˙rE|čëÇFDÄ <EFBFBD>Öž{ߜ͝"b(§˙1{űĎ-<ęĎ+?hiU!<EFBFBD>-<EFBFBD>Î˙§<EFBFBD><EFBFBD>łGĺíH<EFBFBD>Ú<EFBFBD> Îţ<EFBFBD>].úEĎYôxRtä<EFBFBD>23ÓŹtđ'á<EFBFBD>¸ţŠďĹŁŁ;"[ d<EFBFBD>K<EFBFBD>? ˙ä<EFBFBD>Zůý<EFBFBD>ĺŞ?[¤Ű<EFBFBD>j<EFBFBD>äM<EFBFBD>+
÷N<EFBFBD>äé Îţ<EFBFBD>m/zźŢâ %@řŰB@łf§<EFBFBD>úÓNüܲxŮĄKăúőß+8Ňß] HzţýŽŃWe4 öy!˙ŇÔă<EFBFBD>ĚHÚÓ<EFBFBD>ĘĐyŤGţ`fúĐ×<EFBFBD><EFBFBD>r+Ě_Żß/;tiáďŐŚt<EFBFBD>_Żß/;ôŕĘhŔäďSeO Đ]N<EFBFBD><EFBFBD>žÚWřm<EFBFBD><<EFBFBD><EFBFBD>Č<EFBFBD>}Qř§ç¤GŞ<EFBFBD>Úűű¸đá<EFBFBD>ĽhścńdŔĄ<EFBFBD><EFBFBD><EFBFBD>!áOßéőWűFD\qÎůÂčl<EFBFBD>7PčOző|<EFBFBD>¨*<EFBFBD>>ýâţ<EFBFBD>;<EFBFBD>Ž8çüń^żátĘĐW._Ă<EFBFBD><EFBFBD>˝yIDAT×Ó<EFBFBD>Ü<EFBFBD>ű´tYĺ2Ŕąí;*˙eeŰŇËő+z<EFBFBD>źv ťf'<EFBFBD>|Ół×VOŮţţX0Kˇ%Ë<EFBFBD>˛ýý<EFBFBD>ý<EFBFBD>><EFBFBD>Ű/işočÄĎ-<EFBFBD><EFBFBD>XądqĽqĂČÖ8e<EFBFBD>Ép_ądqU[˛ě<EFBFBD><EFBFBD>­<EFBFBD>ý<EFBFBD>><EFBFBD>Ű/i˙Řg>ď8ýK+Ç#"ćÍ<EFBFBD>SiÜą}OU¸Ď<EFBFBD>?§Ş-YvÇö=<EFBFBD>ý<EFBFBD>>éB!Ý/iżőŻ6) Ëf'Ą<g~ő<EFBFBD>+b2°<EFBFBD>Ç<EFBFBD>śô˛EýŇíymI{Ä&[ş]L<EFBFBD>ňř<EFBFBD> úZá<EFBFBD>]ŚhŮźÇ<EFBFBD>.<EFBFBD>Á?<EFBFBD>ćÓľŐł<EFBFBD> <EFBFBD>ŇÁ?wÁdHď{ŚjĄš fWľ%Ëî{Ś°_śOśĐ;ł˛á<EFBFBD>ţ}î<EFBFBD>ŮU?g<EFBFBD>­ŐŻ¨Ńs],<EFBFBD>B8Ż˝<EFBFBD>ŔŽˇ<EFBFBD>đ<EFBFBD><EFBFBD>
@(0řţ?3ř,SÎ&ů}IENDŽB`<EFBFBD><EFBFBD>PNG

IHDR08łĽŞÉzTXtRaw profile type exifxÚmPA<EFBFBD>0 ť÷{B<EFBFBD><EFBFBD>śyN í{ţ\&@XjęÚŤIë÷łĽ×gM:ŐVŹÔÔ¸<EFBFBD>4rô˝fŇ˝î¨[xůŞ' <EFBFBD>Ň8<EFBFBD>ĐJÜ?ôüđ­<EFBFBD> öŚ<EFBFBD>ßnAě<EFBFBD><EFBFBD><EFBFBD>_"Č"HŘ<EFBFBD>Ý<EFBFBD>EĹZ=?a^é<EFBFBD>ć+<EFBFBD>2očgĚ(>ž<EFBFBD>ľbzË<EFBFBD>˙ó*YU¤x2<EFBFBD><EFBFBD><EFBFBD>M<EFBFBD>+¸ÂęP-:Á@<EFBFBD>ćt ýôBZŃIzý<EFBFBD>iCCPICC profilex<EFBFBD>}<EFBFBD>=HĂ@Ĺ_SĽ*-vqČP<EFBFBD>ěbEK<EFBFBD>`Ą´Zu0šô <EFBFBD>4$).<EFBFBD><EFBFBD>kÁÁ<EFBFBD>ĹŞ<EFBFBD><EFBFBD>łŽŽ<EFBFBD> řâěŕ¤č"%ţ/)´<EFBFBD>ńŕ¸ďî=îŢBŤĆTł/¨<EFBFBD>ed<EFBFBD> 1_XŻđ#<EFBFBD>AD<EFBFBD><EFBFBD>Š§˛<EFBFBD>9x<EFBFBD>Ż{řřzĺYŢçţ!Ľh2Ŕ'Ç<EFBFBD>nXÄÄł<EFBFBD><EFBFBD>Îy<EFBFBD>8Ě*<EFBFBD>B|N<eĐ<EFBFBD>š.ťüĆšě°Ŕ3ĂF.3O&Ë=,÷0Ť qDQ5Ęň.+<EFBFBD>ˇ8ŤľëÜ<EFBFBD>ż0XÔV˛\§9<EFBFBD>$<EFBFBD><EFBFBD>B"d4PE ˘´j¤<EFBFBD>ČĐ~ÂĂ?ćřÓä<EFBFBD>ÉUęP!9~đ?řÝ­Y<EFBFBD>MťIÁĐ˙bŰ@`h7műűŘśŰ'<EFBFBD>˙¸Ňşţz <EFBFBD>ű$˝ŮŐ"GŔđ6pqÝŐä=ŕr}Ň%Cr$?MĄTŢĎč<EFBFBD>
ŔČ-0´ćöÖŮÇé<EFBFBD>ŁŽ<EFBFBD>o<EFBFBD><EFBFBD>C`˛LŮëďčííß3<EFBFBD>ţ~Ő>rÎ<EFBFBD>şmÓ viTXtXML:com.adobe.xmp<?xpacket begin="ďťż" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="XMP Core 4.4.0-Exiv2">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about=""
xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEvent#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:GIMP="http://www.gimp.org/xmp/"
xmlns:tiff="http://ns.adobe.com/tiff/1.0/"
xmlns:xmp="http://ns.adobe.com/xap/1.0/"
xmpMM:DocumentID="gimp:docid:gimp:bfac6453-3cc6-4601-9579-bc0279b9b793"
xmpMM:InstanceID="xmp.iid:e891c682-cb82-4452-b610-a5154b1cdef1"
xmpMM:OriginalDocumentID="xmp.did:cdff7874-d247-45fb-bbf3-84ace2d0078e"
dc:Format="image/png"
GIMP:API="2.0"
GIMP:Platform="Windows"
GIMP:TimeStamp="1710322961523252"
GIMP:Version="2.10.36"
tiff:Orientation="1"
xmp:CreatorTool="GIMP 2.10"
xmp:MetadataDate="2024:03:13T04:42:39-05:00"
xmp:ModifyDate="2024:03:13T04:42:39-05:00">
<xmpMM:History>
<rdf:Seq>
<rdf:li
stEvt:action="saved"
stEvt:changed="/"
stEvt:instanceID="xmp.iid:d18a9fbb-3c4c-4728-a473-58e36ae49d0f"
stEvt:softwareAgent="Gimp 2.10 (Windows)"
stEvt:when="2024-03-13T04:42:41"/>
</rdf:Seq>
</xmpMM:History>
</rdf:Description>
</rdf:RDF>
</x:xmpmeta>
<?xpacket end="w"?>'VkšbKGD<EFBFBD>?<EFBFBD> pHYsĂĂÇo¨dtIMEč *)Ąţ<EFBFBD>ëIDATxÚí\Ý<EFBFBD><EFBFBD> ,Oď˙ĘíUç´ŽÂ<EFBFBD>Z<EFBFBD>WűmI˘Ăřłm`9oe{xy<EFBFBD><EFBFBD>R<<EFBFBD>Őëźë˙ŢÎ<EFBFBD>
s@Q}<EFBFBD>>ĘčŮ<EFBFBD><EFBFBD>ľłĎó<÷}ß<EFBFBD>zם<EFBFBD>ç<EFBFBD>ě{<EFBFBD>ĽöŻbD<EFBFBD><EFBFBD>eĆŔˇfÖ^<EFBFBD>Ź<EFBFBD>hŽ:×séŤ üśmŰn@Żr÷ŮŮŞß<EFBFBD>_w¨T?ÚéŻĐ3Ć<EFBFBD>¨ZĺłôKłśşxâ7<EFBFBD>5˛0âúľwf<EFBFBD>Đ<EFBFBD>ü(Ú<EFBFBD>1<EFBFBD>ű˙ë÷z3;);ćg>Eö,ëDb~=OBű,ů˝~ů<EFBFBD>ÚŻüŞ@'­žôź<EFBFBD>Űú­M~¤>đf3äýnű­nŐę&ŮżŁŽ-Ť=<EFBFBD>vf<EFBFBD>Őŕ.čG%ËŇŹnDzaÉ$˛Ú<EFBFBD><EFBFBD>jjß<EFBFBD>toń'G]9K<EFBFBD><EFBFBD>)lX;ÎĘđeLh<EFBFBD>ßC<EFBFBD><EFBFBD><EFBFBD>Ҩ ÷<EFBFBD>ĂvËŮa&[Ž5˝Jaš.Ťĺ>Š0<EFBFBD>ńF=<EFBFBD><EFBFBD>d<EFBFBD>ü<EFBFBD>ۧ }<EFBFBD>ÖĐżf <EFBFBD>'Ąý<EFBFBD>מ2#ϡ¸4-<EFBFBD>öäů¨×čź(ĺPy­YŞy$m!Kkżęš´x˛Ňďl<EFBFBD>]<EFBFBD>ďÉ<EFBFBD>ŽôţçŐď@-gĽ|ŘłGóŻüĂb<EFBFBD>ŹÎg î^.Ë
]KĹć[ţŢŰľäáitfXb`<EFBFBD><EFBFBD>3äŐd<EFBFBD>E?ćf ú~ŃrÁ<EFBFBD>yóŰx<EFBFBD>S<EFBFBD><EFBFBD>yć÷Ü+ćjôŠ5Ďśśů>Ş[+_śČď b´˙3ő˙Ę[óüě<Ýś´źýÍČ<EFBFBD>Y<@Ëk 8 <EFBFBD>Ą[%oĎŘ/`<EFBFBD>éá9źzDů<EFBFBD>h)SÜÍŔ<EFBFBD>ÓÂ3<EFBFBD>¨Ű#<EFBFBD>ľdl-+O<EFBFBD>žŮD<EFBFBD><EFBFBD>ŚŃö36c<EFBFBD>ě<EFBFBD>R§y<EFBFBD>ĆKs<EFBFBD>żbާůŇôc \´oŹuKĆě<EFBFBD>×ßż+<EFBFBD>ľË<EFBFBD>]L<EFBFBD>^°<EFBFBD>W>ŠAZś<EFBFBD>GÝ>R?2°żÎŻ9ĺ yşeSĘ:JíW<EFBFBD>áŰŘ˙? íł<EFBFBD>g´1f<EFBFBD>íGĺOCű3<EFBFBD>fć ˛éáUÓXZŞç>ń<EFBFBD>đÜű} cg<EFBFBD><EFBFBD>ĆkĎŽ<EFBFBD>(<EFBFBD>ŹÁ^ęÄwöXö"DwyÜ~<EFBFBD>ÔN{wöĽFşFdp{<EFBFBD>Ďâf<EFBFBD>Ć<EFBFBD>GkeThýëwą(ÍZď÷ <EFBFBD>tmË=ÍAHŚ<EFBFBD>q&šŐşÝÄ<EFBFBD>ç{brô8<EFBFBD>Τ<EFBFBD>ľx<EFBFBD>pčf<EFBFBD>ăűÖóż˛íÖ=ď<EFBFBD>Öó<EFBFBD>t3˘gćeS.Rb$W˙<EFBFBD>Ć<EFBFBD>.l*#C<EFBFBD>°<EFBFBD><EFBFBD>ŘĚ<EFBFBD>Ţ6<EFBFBD>é<EFBFBD>ą°]<EFBFBD>t<EFBFBD>TBÜÚ<EFBFBD>éŇąłŇËCb1yô[GëeiEÎ<EFBFBD>ĂĎD<EFBFBD>˝ҲŻwÖyođ´Ävé<EFBFBD><EFBFBD>y<EFBFBD><EFBFBD>wí8"'ăňÄm[ŢÉŇŠK˝<EFBFBD>oĄDYˇoZ.j´.ň\Â+ Gá<EFBFBD>Ő9ńNł[IENDŽB`<EFBFBD>

@ -35,7 +35,7 @@ var Module = {
})(), })(),
}; };
</script> </script>
<script async type="text/javascript" src="C++ProjectTemplate.js"></script> <script async type="text/javascript" src="TiledCollisionEditor.js"></script>
<script type="text/javascript"> <script type="text/javascript">
Module.canvas.addEventListener("resize", (e) => { Module.canvas.addEventListener("resize", (e) => {

File diff suppressed because one or more lines are too long

Binary file not shown.

@ -6,13 +6,17 @@
using namespace olc; using namespace olc;
using namespace olc::utils; using namespace olc::utils;
const std::string TILESET_DIR="./Tiles/"; const std::string TILESET_DIR="./assets/Tiles/";
class TiledCollisionEditor : public olc::PixelGameEngine class TiledCollisionEditor : public olc::PixelGameEngine
{ {
std::unordered_map<std::string,Tileset>tilesets; std::unordered_map<std::string,Tileset>tilesets;
std::unordered_map<std::string,Renderable>images; std::unordered_map<std::string,Renderable>images;
std::string activeTileset; std::string activeTileset;
Quadrilateral*editingQuad=nullptr;
Quadrilateral originalQuad;
std::string selectedObj="";
int editingPoint=4; //Which point we are editing (0-3.)
public: public:
TiledCollisionEditor() TiledCollisionEditor()
@ -23,7 +27,7 @@ public:
public: public:
bool OnUserCreate() override bool OnUserCreate() override
{ {
SetFontSprite("font.png"); SetFontSprite("assets/font.png");
std::string tilesetFilename=TILESET_DIR+"Basic Tileset.tsx"; std::string tilesetFilename=TILESET_DIR+"Basic Tileset.tsx";
Tileset&tileset=tilesets[tilesetFilename]=TSXParser{tilesetFilename}.GetData(); Tileset&tileset=tilesets[tilesetFilename]=TSXParser{tilesetFilename}.GetData();
@ -49,7 +53,9 @@ public:
} }
} }
std::string selectedObj=""; if(editingQuad==nullptr){
std::string selectedObj="";
}
for(auto&[objName,obj]:tileset.objects){ for(auto&[objName,obj]:tileset.objects){
FillRectDecal(obj.bounds.pos,vf2d{2.f,float(obj.bounds.size.y)},YELLOW); FillRectDecal(obj.bounds.pos,vf2d{2.f,float(obj.bounds.size.y)},YELLOW);
@ -75,6 +81,47 @@ public:
} }
} }
} }
const TilesetObject&obj=tileset.objects.at(selectedObj);
const bool EditingQuad=editingPoint<4&&editingQuad!=nullptr;
if(EditingQuad){
(*editingQuad)[editingPoint]=GetMousePos();
}
if(GetMouse(Mouse::LEFT).bPressed){
if(EditingQuad){
(*editingQuad)[editingPoint]=GetMousePos();
editingPoint++;
}else{
if(obj.collisionTiles.size()==0){
Quadrilateral newQuad;
newQuad.fill(obj.bounds.middle());
tilesets[activeTileset].objects[selectedObj].collisionTiles.push_back(newQuad);
}
editingPoint=0;
editingQuad=const_cast<Quadrilateral*>(&obj.collisionTiles.back());
originalQuad=*editingQuad;
}
}
if(GetMouse(Mouse::RIGHT).bPressed||GetKey(ESCAPE).bPressed){
if(EditingQuad){
editingPoint=4;
*editingQuad=originalQuad;
editingQuad=nullptr;
}
}
for(const Quadrilateral&quad:obj.collisionTiles){
std::vector<vf2d>points;
std::vector<vf2d>uvs;
std::vector<Pixel>cols;
points.assign(quad.begin(),quad.end());
uvs.assign(4,{0.f,0.f});
cols.assign(4,{255,40,40,128});
DrawPolygonDecal(nullptr,points,uvs,cols);
}
} }
/* Font test. /* Font test.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

@ -35,7 +35,7 @@ var Module = {
})(), })(),
}; };
</script> </script>
<script async type="text/javascript" src="_REPLACEME_"></script> <script async type="text/javascript" src="TiledCollisionEditor.js"></script>
<script type="text/javascript"> <script type="text/javascript">
Module.canvas.addEventListener("resize", (e) => { Module.canvas.addEventListener("resize", (e) => {

Binary file not shown.

4
sig

@ -1,8 +1,8 @@
export AUTO_UPDATE=true export AUTO_UPDATE=false
source utils/define.sh source utils/define.sh
define PROJECT_NAME "C++ProjectTemplate" define PROJECT_NAME "TiledCollisionEditor"
define CUSTOM_PARAMS "-std=c++17 -lX11 -lGL -lpthread -lpng -lstdc++fs -I/usr/include/lua5.3" define CUSTOM_PARAMS "-std=c++17 -lX11 -lGL -lpthread -lpng -lstdc++fs -I/usr/include/lua5.3"
define EMSCRIPTEN_CUSTOM_PARAMS "" define EMSCRIPTEN_CUSTOM_PARAMS ""
define LANGUAGE "C++" define LANGUAGE "C++"

Loading…
Cancel
Save