diff --git a/Makefile b/Makefile index c7e35a9..b6c296b 100644 --- a/Makefile +++ b/Makefile @@ -35,7 +35,7 @@ watch: run: cd cyberwow && \ - flutter run --pid-file /tmp/flutter.pid + flutter run --release --pid-file /tmp/flutter.pid # clang -target aarch64-linux-android21 cyberwow/native/hello.c -o cyberwow/native/output/hello c: diff --git a/README.md b/README.md index 813bb6b..c7a3e40 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,9 @@ A dumb android pruned full node for Wownero. +[Get it on F-Droid](https://f-droid.org/en/packages/org.wownero.cyberwow/) Get it on Google Play ## How to build diff --git a/cyberwow/lib/config.dart b/cyberwow/lib/config.dart index 5f37e8c..5881c8c 100644 --- a/cyberwow/lib/config.dart +++ b/cyberwow/lib/config.dart @@ -33,6 +33,6 @@ const emuHost = '192.168.10.100'; const host = isEmu ? emuHost : '127.0.0.1'; -const int hashLength = 12; +const int hashViewBlock = 6; const stdoutLineBufferSize = 100; diff --git a/cyberwow/lib/controller/rpc/rpc.dart b/cyberwow/lib/controller/rpc/rpc.dart index b1e01d9..f3be620 100644 --- a/cyberwow/lib/controller/rpc/rpc.dart +++ b/cyberwow/lib/controller/rpc/rpc.dart @@ -69,7 +69,9 @@ Future rpc(final String method, {final String field}) async { return null; } else { final _body = await compute(jsonDecode, response.body); - final _result = _body['result'] ?? const {}; + final _result = _body['result']; + if (_result == null) return null; + final _field = field == null ? _result : _result[field]; return _field; diff --git a/cyberwow/lib/helper.dart b/cyberwow/lib/helper.dart index c9b8ea6..ff6265b 100644 --- a/cyberwow/lib/helper.dart +++ b/cyberwow/lib/helper.dart @@ -32,7 +32,12 @@ String pretty(dynamic x) { ; } -String trimHash(String x) => x.substring(0, config.hashLength) + ' ...'; +String trimHash(String x) => +x.substring(0, config.hashViewBlock) ++ '-' ++ x.substring(config.hashViewBlock, config.hashViewBlock * 2) ++ ' ...'; + Map cleanKey(Map x) { final _cleaned = x.map ( diff --git a/cyberwow/lib/state.dart b/cyberwow/lib/state.dart index 17e52c8..bb347d9 100644 --- a/cyberwow/lib/state.dart +++ b/cyberwow/lib/state.dart @@ -305,21 +305,23 @@ class SyncedState extends HookedState { // log.finer('SyncedState: checkSync loop'); height = await rpc.height(); connected = await daemon.isConnected(); - final _getInfo = await rpc.getInfoSimple(); - getInfo = cleanKey(rpcView.getInfoView(_getInfo)); - getInfoCache = pretty(getInfo); + getInfo = await rpc.getInfoSimple(); + final _getInfoView = cleanKey(rpcView.getInfoView(getInfo)); + getInfoCache = pretty(_getInfoView); - final List> _getConnections = await rpc.getConnectionsSimple(); - getConnections = _getConnections + getConnections = await rpc.getConnectionsSimple(); + final List> _getConnectionsView = + getConnections .map(rpcView.getConnectionView) .map((x) => rpcView.simpleHeight(height, x)) .map(cleanKey) .toList(); - getConnectionsCache = pretty(getConnections); + getConnectionsCache = pretty(_getConnectionsView); - final List> _getTransactionPool = await rpc.getTransactionPoolSimple(); - getTransactionPool = _getTransactionPool.map(rpc2View.txView).map(cleanKey).toList(); - getTransactionPoolCache = pretty(getTransactionPool); + getTransactionPool = await rpc.getTransactionPoolSimple(); + final List> _getTransactionPoolView = + getTransactionPool.map(rpc2View.txView).map(cleanKey).toList(); + getTransactionPoolCache = pretty(_getTransactionPoolView); syncState(); } diff --git a/cyberwow/lib/widget/synced.dart b/cyberwow/lib/widget/synced.dart index 6d68964..a6ba5e7 100644 --- a/cyberwow/lib/widget/synced.dart +++ b/cyberwow/lib/widget/synced.dart @@ -36,7 +36,7 @@ Widget summary(BuildContext context, SyncedState state) { final poolLength = state.getTransactionPool.length; final poolLengthNotice = poolLength > 1 ? '[${poolLength}] ' : ''; final txNotice = state.getTransactionPool.isEmpty ? - '' : poolLengthNotice + state.getTransactionPool.first['id '].substring(0, 6) + ' ...'; + '' : poolLengthNotice + state.getTransactionPool.first['id_hash'].substring(0, 6) + ' ...'; return Container ( diff --git a/etc/scripts/build-external-libs/boost/build.sh b/etc/scripts/build-external-libs/boost/build.sh index 60304f9..8df015b 100755 --- a/etc/scripts/build-external-libs/boost/build.sh +++ b/etc/scripts/build-external-libs/boost/build.sh @@ -37,7 +37,7 @@ build_root=$BUILD_ROOT src_root=$BUILD_ROOT_SRC name=boost -version=1_68_0 +version=1_71_0 cd $src_root/${name}_${version} @@ -47,9 +47,6 @@ archs=(arm64) for arch in ${archs[@]}; do extra_cmake_flags="" case ${arch} in - "arm") - target_host=arm-linux-androideabi - ;; "arm64") target_host=aarch64-linux-android ;; @@ -73,10 +70,18 @@ for arch in ${archs[@]}; do CC=clang \ CXX=clang++; \ ./b2 \ - --prefix=${PREFIX} \ - --build-type=minimal \ + cxxstd=14 \ + toolset=clang \ + threading=multi \ + threadapi=pthread \ link=static \ runtime-link=static \ + target-os=android \ + --ignore-site-config \ + --prefix=${PREFIX} \ + --build-dir=android \ + -sICONV_PATH=${ICONV_PATH} \ + --build-type=minimal \ --with-chrono \ --with-date_time \ --with-filesystem \ @@ -86,13 +91,6 @@ for arch in ${archs[@]}; do --with-system \ --with-thread \ --with-locale \ - --build-dir=android \ - --stagedir=android \ - toolset=clang \ - threading=multi \ - threadapi=pthread \ - target-os=android \ - -sICONV_PATH=${ICONV_PATH} \ install \ -j${NPROC} \ ) diff --git a/etc/scripts/build-external-libs/boost/fetch.sh b/etc/scripts/build-external-libs/boost/fetch.sh index f2cccec..7e2e3c2 100755 --- a/etc/scripts/build-external-libs/boost/fetch.sh +++ b/etc/scripts/build-external-libs/boost/fetch.sh @@ -36,9 +36,9 @@ source etc/scripts/build-external-libs/env.sh cd $BUILD_ROOT_SRC name=boost -version=1_68_0 -dot_version=1.68.0 -hash=7f6130bc3cf65f56a618888ce9d5ea704fa10b462be126ad053e80e553d6d8b7 +version=1_71_0 +dot_version=1.71.0 +hash=d73a8da01e8bf8c7eda40b4c84915071a8c8a0df4a6734537ddde4a8580524ee rm -rf ${name}_${version} diff --git a/etc/scripts/build-external-libs/cppzmq/build.sh b/etc/scripts/build-external-libs/cppzmq/build.sh deleted file mode 100755 index 6140f11..0000000 --- a/etc/scripts/build-external-libs/cppzmq/build.sh +++ /dev/null @@ -1,69 +0,0 @@ -#!/bin/bash - -# Copyright (c) 2019, The Wownero Project -# Copyright (c) 2014-2019, The Monero Project -# -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without modification, are -# permitted provided that the following conditions are met: -# -# 1. Redistributions of source code must retain the above copyright notice, this list of -# conditions and the following disclaimer. -# -# 2. Redistributions in binary form must reproduce the above copyright notice, this list -# of conditions and the following disclaimer in the documentation and/or other -# materials provided with the distribution. -# -# 3. Neither the name of the copyright holder nor the names of its contributors may be -# used to endorse or promote products derived from this software without specific -# prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY -# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL -# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF -# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -set -e - -source etc/scripts/build-external-libs/env.sh - -build_root=$BUILD_ROOT -src_root=$BUILD_ROOT_SRC - -name=cppzmq - -cd $src_root/${name} - -archs=(arm64) -for arch in ${archs[@]}; do - extra_cmake_flags="" - case ${arch} in - "arm") - target_host=arm-linux-androideabi - ;; - "arm64") - target_host=aarch64-linux-android - ;; - "x86_64") - target_host=x86_64-linux-android - ;; - *) - exit 16 - ;; - esac - - # PREFIX=$build_root/build/${name}/$arch - PREFIX=$build_root/build/$arch - echo "building for ${arch}" - - mkdir -p $PREFIX/include - cp *.hpp $PREFIX/include/ -done - -exit 0 diff --git a/etc/scripts/build-external-libs/cppzmq/fetch.sh b/etc/scripts/build-external-libs/cppzmq/fetch.sh deleted file mode 100755 index 3c54d9e..0000000 --- a/etc/scripts/build-external-libs/cppzmq/fetch.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env bash - -# Copyright (c) 2019, The Wownero Project -# Copyright (c) 2014-2019, The Monero Project -# -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without modification, are -# permitted provided that the following conditions are met: -# -# 1. Redistributions of source code must retain the above copyright notice, this list of -# conditions and the following disclaimer. -# -# 2. Redistributions in binary form must reproduce the above copyright notice, this list -# of conditions and the following disclaimer in the documentation and/or other -# materials provided with the distribution. -# -# 3. Neither the name of the copyright holder nor the names of its contributors may be -# used to endorse or promote products derived from this software without specific -# prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY -# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL -# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF -# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -set -e - -source etc/scripts/build-external-libs/env.sh - -cd $BUILD_ROOT_SRC - -version=v4.2.3 -name=cppzmq -githash=6aa3ab686e916cb0e62df7fa7d12e0b13ae9fae6 - -rm -rf $name -git clone https://github.com/zeromq/cppzmq.git -b $version -cd $name -test `git rev-parse HEAD` = $githash || exit 1 - diff --git a/etc/scripts/build-external-libs/iconv/build.sh b/etc/scripts/build-external-libs/iconv/build.sh index eadd376..e7af77e 100755 --- a/etc/scripts/build-external-libs/iconv/build.sh +++ b/etc/scripts/build-external-libs/iconv/build.sh @@ -36,7 +36,7 @@ source etc/scripts/build-external-libs/env.sh build_root=$BUILD_ROOT src_root=$BUILD_ROOT_SRC -version=1.15 +version=1.16 name=libiconv cd $src_root/${name}-${version} @@ -45,9 +45,6 @@ archs=(arm64) for arch in ${archs[@]}; do extra_cmake_flags="" case ${arch} in - "arm") - target_host=arm-linux-androideabi - ;; "arm64") target_host=aarch64-linux-android ;; diff --git a/etc/scripts/build-external-libs/iconv/fetch.sh b/etc/scripts/build-external-libs/iconv/fetch.sh index 8ce9ede..df22c3c 100755 --- a/etc/scripts/build-external-libs/iconv/fetch.sh +++ b/etc/scripts/build-external-libs/iconv/fetch.sh @@ -35,8 +35,8 @@ source etc/scripts/build-external-libs/env.sh cd $BUILD_ROOT_SRC -version=1.15 -hash=ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178 +version=1.16 +hash=e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04 name=libiconv rm -rf ${name}-${version} diff --git a/etc/scripts/build-external-libs/openssl/build.sh b/etc/scripts/build-external-libs/openssl/build.sh index cc4a238..9655dc9 100755 --- a/etc/scripts/build-external-libs/openssl/build.sh +++ b/etc/scripts/build-external-libs/openssl/build.sh @@ -37,8 +37,7 @@ build_root=$BUILD_ROOT src_root=$BUILD_ROOT_SRC name=openssl -# version=1.0.2p -version=1.1.1c +version=1.1.1d cd $src_root/${name}-${version} @@ -46,9 +45,6 @@ archs=(arm64) for arch in ${archs[@]}; do extra_cmake_flags="" case ${arch} in - "arm") - target_host=arm-linux-androideabi - ;; "arm64") target_host=aarch64-linux-android ;; diff --git a/etc/scripts/build-external-libs/openssl/fetch.sh b/etc/scripts/build-external-libs/openssl/fetch.sh index 410f3bc..b480c7a 100755 --- a/etc/scripts/build-external-libs/openssl/fetch.sh +++ b/etc/scripts/build-external-libs/openssl/fetch.sh @@ -36,15 +36,14 @@ source etc/scripts/build-external-libs/env.sh cd $BUILD_ROOT_SRC name=openssl -# version=1.0.2p -version=1.1.1c -hash=50a98e07b1a89eb8f6a99477f262df71c6fa7bef77df4dc83025a2845c827d00 +version=1.1.1d +hash=1e3a91bc1f9dfce01af26026f856e064eab4c8ee0a8f457b5ae30b40b8b711f2 rm -rf ${name}-${version} curl -# -L -O \ https://www.openssl.org/source/openssl-${version}.tar.gz -# echo "${hash} ${name}-${version}.tar.gz" | sha256sum -c +echo "${hash} ${name}-${version}.tar.gz" | sha256sum -c tar xzf ${name}-${version}.tar.gz diff --git a/etc/scripts/build-external-libs/sodium/build.sh b/etc/scripts/build-external-libs/sodium/build.sh index 5dd1e4f..44dbd29 100755 --- a/etc/scripts/build-external-libs/sodium/build.sh +++ b/etc/scripts/build-external-libs/sodium/build.sh @@ -37,8 +37,9 @@ build_root=$BUILD_ROOT src_root=$BUILD_ROOT_SRC name=libsodium +version=1.0.18 -cd $src_root/${name} +cd $src_root/${name}-${version} ./autogen.sh @@ -46,9 +47,6 @@ archs=(arm64) for arch in ${archs[@]}; do extra_cmake_flags="" case ${arch} in - "arm") - target_host=arm-linux-androideabi - ;; "arm64") target_host=aarch64-linux-android ;; diff --git a/etc/scripts/build-external-libs/sodium/fetch.sh b/etc/scripts/build-external-libs/sodium/fetch.sh index 42c2e64..c9a7928 100755 --- a/etc/scripts/build-external-libs/sodium/fetch.sh +++ b/etc/scripts/build-external-libs/sodium/fetch.sh @@ -36,12 +36,14 @@ source etc/scripts/build-external-libs/env.sh cd $BUILD_ROOT_SRC name=libsodium -version=1.0.16 -githash=675149b9b8b66ff44152553fb3ebf9858128363d +version=1.0.18 +hash=d59323c6b712a1519a5daf710b68f5e7fde57040845ffec53850911f10a5d4f4 -rm -rf $name +rm -rf ${name}-${version} -git clone https://github.com/jedisct1/libsodium.git -b $version +curl -# -L -o ${name}-${version}.tar.gz \ +https://github.com/jedisct1/libsodium/archive/${version}.tar.gz -cd $name -test `git rev-parse HEAD` = $githash || exit 1 +echo "${hash} ${name}-${version}.tar.gz" | sha256sum -c + +tar xzf ${name}-${version}.tar.gz diff --git a/etc/scripts/build-external-libs/zeromq/build.sh b/etc/scripts/build-external-libs/zeromq/build.sh deleted file mode 100755 index e069e4b..0000000 --- a/etc/scripts/build-external-libs/zeromq/build.sh +++ /dev/null @@ -1,81 +0,0 @@ -#!/bin/bash - -# Copyright (c) 2019, The Wownero Project -# Copyright (c) 2014-2019, The Monero Project -# -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without modification, are -# permitted provided that the following conditions are met: -# -# 1. Redistributions of source code must retain the above copyright notice, this list of -# conditions and the following disclaimer. -# -# 2. Redistributions in binary form must reproduce the above copyright notice, this list -# of conditions and the following disclaimer in the documentation and/or other -# materials provided with the distribution. -# -# 3. Neither the name of the copyright holder nor the names of its contributors may be -# used to endorse or promote products derived from this software without specific -# prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY -# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL -# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF -# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -set -e - -source etc/scripts/build-external-libs/env.sh - -build_root=$BUILD_ROOT -src_root=$BUILD_ROOT_SRC - -name=libzmq - -cd $src_root/${name} - -./autogen.sh - -archs=(arm64) -for arch in ${archs[@]}; do - extra_cmake_flags="" - case ${arch} in - "arm") - target_host=arm-linux-androideabi - ;; - "arm64") - target_host=aarch64-linux-android - ;; - "x86_64") - target_host=x86_64-linux-android - ;; - *) - exit 16 - ;; - esac - - # PREFIX=$build_root/build/${name}/$arch - PREFIX=$build_root/build/$arch - echo "building for ${arch}" - - ( - PATH=$build_root/tool/$arch/$target_host/bin:$build_root/tool/$arch/bin:$PATH \ - CC=clang \ - CXX=clang++; \ - ./configure \ - --prefix=${PREFIX} \ - --host=${target_host} \ - --enable-static \ - --disable-shared \ - && make -j${NPROC} && make install && make clean \ - ) - -done - -exit 0 diff --git a/etc/scripts/build-external-libs/zeromq/fetch.sh b/etc/scripts/build-external-libs/zeromq/fetch.sh deleted file mode 100755 index 3167816..0000000 --- a/etc/scripts/build-external-libs/zeromq/fetch.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env bash - -# Copyright (c) 2019, The Wownero Project -# Copyright (c) 2014-2019, The Monero Project -# -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without modification, are -# permitted provided that the following conditions are met: -# -# 1. Redistributions of source code must retain the above copyright notice, this list of -# conditions and the following disclaimer. -# -# 2. Redistributions in binary form must reproduce the above copyright notice, this list -# of conditions and the following disclaimer in the documentation and/or other -# materials provided with the distribution. -# -# 3. Neither the name of the copyright holder nor the names of its contributors may be -# used to endorse or promote products derived from this software without specific -# prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY -# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL -# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF -# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -set -e - -source etc/scripts/build-external-libs/env.sh - -cd $BUILD_ROOT_SRC - -version=master -name=libzmq -githash=501d0815bf2b0abb93be8214fc66519918ef6c40 - -rm -rf $name -git clone https://github.com/zeromq/libzmq.git -b $version -cd libzmq -git checkout $githash - diff --git a/etc/scripts/build-external-libs/zlib/build.sh b/etc/scripts/build-external-libs/zlib/build.sh index d320f52..41a5f6c 100755 --- a/etc/scripts/build-external-libs/zlib/build.sh +++ b/etc/scripts/build-external-libs/zlib/build.sh @@ -45,9 +45,6 @@ archs=(arm64) for arch in ${archs[@]}; do extra_cmake_flags="" case ${arch} in - "arm") - target_host=arm-linux-androideabi - ;; "arm64") target_host=aarch64-linux-android ;; diff --git a/res/cyberwow/screenshot-1.png b/res/cyberwow/screenshot-1.png deleted file mode 100644 index 0571d94..0000000 Binary files a/res/cyberwow/screenshot-1.png and /dev/null differ