From 70e3f44deb28d32e80c4fba420895b8851b27a49 Mon Sep 17 00:00:00 2001 From: segfault-bilibili Date: Sun, 4 Jun 2023 17:36:06 +0800 Subject: [PATCH 1/2] avoid exceeded toast quota --- floatUI.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/floatUI.js b/floatUI.js index b64b7ae..2922cba 100644 --- a/floatUI.js +++ b/floatUI.js @@ -13101,10 +13101,14 @@ function algo_init() { initOCR(); - toastLog("半自动辅助开荒脚本能够在一个章节(section)内自动选BATTLE进行周回;"); - toastLog("且支持在第一回合自动凑连携(可在设置中关闭);"); - toastLog("以及支持地图型周回,但在找不到没打过(new)的关卡时不会自动拖动地图;"); - toastLog("另外,不会嗑药,也不会处理掉线等情况。"); + toast("半自动辅助开荒脚本能够在一个章节(section)内自动选BATTLE进行周回;"); + toast("且支持在第一回合自动凑连携(可在设置中关闭);"); + threads.start(function () { + // avoid exceeded toast quota + sleep(6000); + toast("以及支持地图型周回,但在找不到没打过(new)的关卡时不会自动拖动地图;"); + toast("另外,不会嗑药,也不会处理掉线等情况。"); + }); log("缩放图片..."); resizeKnownImgs();//必须放在initialize后面 From aee75fd9396c4525953ae9f4e911d4afba9286a4 Mon Sep 17 00:00:00 2001 From: segfault-bilibili Date: Mon, 5 Jun 2023 08:43:03 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BD=BF=E7=94=A8nodejs=E6=89=A7=E8=A1=8C?= =?UTF-8?q?=E9=9F=B3=E9=A2=91=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- audiofix.js | 229 +++++++++++++++++++++++++++++++++ floatUI.js | 59 +++++---- project.json | 3 +- update/updateList.json | 2 +- update/updateList.json.sig.txt | 2 +- 5 files changed, 269 insertions(+), 26 deletions(-) create mode 100644 audiofix.js diff --git a/audiofix.js b/audiofix.js new file mode 100644 index 0000000..3b0aeb4 --- /dev/null +++ b/audiofix.js @@ -0,0 +1,229 @@ +"nodejs"; + +const fs = require("fs"); +const path = require("path"); + +const EM_AARCH64 = 0xb7, EM_ARM = 0x28; +const ELFCLASS64 = 2, ELFCLASS32 = 1; + +function parseElf(elf) { + let result = {}; + + // parse elf header + const read_e_ident = elf.subarray(0, 16); + if (Buffer.compare(Buffer.from([0x7f, 0x45, 0x4c, 0x46]), read_e_ident.subarray(0, 4)) != 0) { + throw new Error("not ELF"); + } + + const eh = result.elf_header = { + e_ident: { + ei_class_2: read_e_ident.readUInt8(4), + ei_data: read_e_ident.readUInt8(5), + ei_version: read_e_ident.readUInt8(6), + ei_osabi: read_e_ident.readUInt8(7), + ei_abiversion: read_e_ident.readUInt8(8), + ei_nident_SIZE: read_e_ident.readUInt8(0xf), + }, + e_type: elf.readUInt16LE(0x10), + e_machine: elf.readUInt16LE(0x12), + e_version: elf.readUInt32LE(0x14), + } + + if (result.elf_header.e_ident.ei_nident_SIZE != 0) { + throw new Error("ei_nident_SIZE != 0"); + } + + let is64 = true; + let e_flags_offset = 0x30; + switch (eh.e_ident.ei_class_2) { + case ELFCLASS64: + if (eh.e_machine != EM_AARCH64) { + throw new Error(`e_machine (${eh.e_machine}) != EM_AARCH64`); + } + is64 = true; + eh.e_entry_START_ADDRESS = Number(elf.readBigUInt64LE(0x18)); + eh.e_phoff_PROGRAM_HEADER_OFFSET_IN_FILE = Number(elf.readBigUInt64LE(0x20)); + eh.e_shoff_SECTION_HEADER_OFFSET_IN_FILE = Number(elf.readBigUInt64LE(0x28)); + e_flags_offset = 0x30; + break; + case ELFCLASS32: + if (eh.e_machine != EM_ARM) { + throw new Error(`eh.e_machine (${eh.e_machine}) != EM_ARM`); + } + is64 = false; + addrLen = 4; + eh.e_entry_START_ADDRESS = elf.readUInt32LE(0x18); + eh.e_phoff_PROGRAM_HEADER_OFFSET_IN_FILE = elf.readUInt32LE(0x1c); + eh.e_shoff_SECTION_HEADER_OFFSET_IN_FILE = elf.readUInt32LE(0x20); + e_flags_offset = 0x24; + break; + default: + throw new Error(`unknown ei_class_2 = ${eh.e_ident.ei_class_2}`); + } + + eh.e_flags = elf.readUInt32LE(e_flags_offset); + eh.e_ehsize_ELF_HEADER_SIZE = elf.readUInt16LE(e_flags_offset + 4); + eh.e_phentsize_PROGRAM_HEADER_ENTRY_SIZE_IN_FILE = elf.readUInt16LE(e_flags_offset + 6); + eh.e_phnum_NUMBER_OF_PROGRAM_HEADER_ENTRIES = elf.readUInt16LE(e_flags_offset + 8); + eh.e_shentsize_SECTION_HEADER_ENTRY_SIZE = elf.readUInt16LE(e_flags_offset + 10); + eh.e_shnum_NUMBER_OF_SECTION_HEADER_ENTRIES = elf.readUInt16LE(e_flags_offset + 12); + eh.e_shtrndx_STRING_TABLE_INDEX = elf.readUInt16LE(e_flags_offset + 14); + + + // parse section header + const sh = result.section_header_table = []; + + const shoff = eh.e_shoff_SECTION_HEADER_OFFSET_IN_FILE; + const shnum = eh.e_shnum_NUMBER_OF_SECTION_HEADER_ENTRIES; + const shentsize = eh.e_shentsize_SECTION_HEADER_ENTRY_SIZE; + const read_shtab = elf.subarray(shoff, shoff + shentsize * shnum); + const shtrndx = eh.e_shtrndx_STRING_TABLE_INDEX; + + const read_shstrtab = elf.subarray(shoff + shentsize * shtrndx); + const strtab_offset = is64 ? Number(read_shstrtab.readBigUInt64LE(24)) : read_shstrtab.readUInt32LE(16); + const strtab_size = is64 ? Number(read_shstrtab.readBigUInt64LE(32)) : read_shstrtab.readUInt32LE(20); + const read_strtab = elf.subarray(strtab_offset, strtab_offset + strtab_size); + + for (let i = 0, offset = 0; i < shnum; i++, offset += shentsize) { + let read_entry = read_shtab.subarray(offset, offset + shentsize); + let s_name_off = read_entry.readUInt32LE(0); + let s_name_str = read_strtab.subarray(s_name_off, read_strtab.indexOf(0x00, s_name_off)).toString("ascii"); + sh.push({ + s_name: { + s_name_off: s_name_off, + s_name_str: s_name_str, + }, + s_type: read_entry.readUInt32LE(4), + s_flags: read_entry.readUInt32LE(8), + s_addr: is64 ? Number(read_entry.readBigUInt64LE(16)) : read_entry.readUInt32LE(12), + s_offset: is64 ? Number(read_entry.readBigUInt64LE(24)) : read_entry.readUInt32LE(16), + s_size: is64 ? Number(read_entry.readBigUInt64LE(32)) : read_entry.readUInt32LE(20), + s_link: read_entry.readUInt32LE(is64 ? 40 : 24), + s_info: read_entry.readUInt32LE(is64 ? 44 : 28), + s_addralign: is64 ? Number(read_entry.readBigUInt64LE(48)) : read_entry.readUInt32LE(32), + s_entsize: is64 ? Number(read_entry.readBigUInt64LE(56)) : read_entry.readUInt32LE(36), + }); + } + + + //parse dynamic symbol table + const dynsym = result.dynamic_symbol_table = []; + + const dynsym_sec = sh.find((entry) => entry.s_name.s_name_str === ".dynsym"); + const dynsym_secoffset = dynsym_sec.s_offset; + const dynsym_secsize = dynsym_sec.s_size; + const dynsym_entsize = dynsym_sec.s_entsize; + if (dynsym_entsize <= 0) { + throw new Error(`dynsym_entsize ${dynsym_entsize} <= 0`); + } + const read_dynsym = elf.subarray(dynsym_secoffset, dynsym_secoffset + dynsym_secsize); + + const dynstr_sec = sh.find((entry) => entry.s_name.s_name_str === ".dynstr"); + const dynstr_secoffset = dynstr_sec.s_offset; + const dynstr_secsize = dynstr_sec.s_size; + const read_dynstr = elf.subarray(dynstr_secoffset, dynstr_secoffset + dynstr_secsize); + for ( + let i = 0, offset = 0; + offset + dynsym_entsize <= dynsym_secsize; + i++, offset += dynsym_entsize + ) { + let read_entry = read_dynsym.subarray(offset, offset + dynsym_entsize); + let sym_name_off = read_entry.readUInt32LE(0); + let sym_name_str = read_dynstr.subarray(sym_name_off, read_dynstr.indexOf(0x00, sym_name_off)).toString("ascii"); + dynsym.push({ + sym_name: { + sym_name_off: sym_name_off, + sym_name_str: sym_name_str, + }, + sym_info: read_entry.readUInt8(is64 ? 4 : 12), + sym_other: read_entry.readUInt8(is64 ? 5 : 13), + sym_shndx: read_entry.readUInt16LE(is64 ? 6 : 14), + sym_value: is64 ? Number(read_entry.readBigUInt64LE(8)) : read_entry.readUInt32LE(4), + sym_size: is64 ? Number(read_entry.readBigUInt64LE(16)) : read_entry.readUInt32LE(8), + }); + } + + return result; +} + +function getTargetFunction(elf, info, funcName, funcOffset, bufLen) { + const syment = info.dynamic_symbol_table.find((entry) => entry.sym_name.sym_name_str === funcName); + const offset = syment.sym_value; + const size = syment.sym_size; + const func = elf.subarray(offset, offset + size); + if (funcOffset + bufLen > func.length) throw new Error("funcOffset + bufLen > func.length"); + return func.subarray(funcOffset, funcOffset + bufLen); +} + +function checkFunction(elf, info, funcName, funcOffset, buf) { + const target = getTargetFunction(elf, info, funcName, funcOffset, buf.length); + return Buffer.compare(target, buf) == 0; +} + +function patchFunction(elf, info, funcName, funcOffset, buf) { + const target = getTargetFunction(elf, info, funcName, funcOffset, buf.length); + buf.copy(target); +} + +const wdir = path.join(process.cwd(), "audio_sr_fix"); +fs.writeFileSync(path.join(wdir, "running"), ""); + +const libname = "libmadomagi_native.so"; +const funcToPatch = "criNcv_GetHardwareSamplingRate_ANDROID"; +const abiList = { + "arm64-v8a": [ + { + funcName: funcToPatch, + checkList: [ + { + offset: 8, + buf: [0xc0, 0x03, 0x5f, 0xd6], + } + ], + patchList: [ + { + offset: 4, + buf: [0x00, 0x70, 0x97, 0x52], + }, + ], + }, + ], + "armeabi-v7a": [ + { + funcName: funcToPatch, + checkList: [ + { + offset: 8, + buf: [0x1e, 0xff, 0x2f, 0xe1], + } + ], + patchList: [ + { + offset: 4, + buf: [0x80, 0x0b, 0x0b, 0xe3], + }, + ], + }, + ], +} + +for (let abi in abiList) { + let filepath = path.join(wdir, "lib", abi, libname); + if (!fs.existsSync(filepath)) { + console.log(`skipped nonexist file ${filepath}`); + continue; + } + let filedata = fs.readFileSync(filepath); + console.log(`patching ${filepath}`); + let info = parseElf(filedata); + abiList[abi].forEach((patchInfo) => { + let mismatch = patchInfo.checkList.find((check) => !checkFunction(filedata, info, patchInfo.funcName, check.offset, Buffer.from(check.buf))); + if (mismatch != null) throw new Error("check failed"); + patchInfo.patchList.forEach((patch) => patchFunction(filedata, info, patchInfo.funcName, patch.offset, Buffer.from(patch.buf))); + }); + let writeToPath = path.join(wdir, "lib", abi, libname); + fs.writeFileSync(writeToPath, filedata); + console.log(`written patched file to ${writeToPath}`); +}; + +fs.writeFileSync(path.join(wdir, "done"), ""); \ No newline at end of file diff --git a/floatUI.js b/floatUI.js index 2922cba..4209e83 100644 --- a/floatUI.js +++ b/floatUI.js @@ -13217,6 +13217,14 @@ function algo_init() { return; } + if (parseInt(getProjectVersion().split(".").join("")) < 724) { + alert("请升级", + "请先下载最新APK安装包(而不是在线更新),升级auto脚本到7.2.4或以上。\n" + +"详情请见app底部QQ群。" + ); + return; + } + try { privShell("id"); } catch (e) { @@ -13254,20 +13262,6 @@ function algo_init() { } const extractDir = files.join(files.cwd(), "audio_sr_fix"); - const searchPatterns = [ - //3.0.2 - { - abi: "arm64-v8a", - pattern: "\x08\x7A\x00\xD0\x00\x51\x4F\xB9\xC0\x03\x5F\xD6", - replace: "\x08\x7A\x00\xD0\x00\x70\x97\x52\xC0\x03\x5F\xD6" - }, - { - abi: "armeabi-v7a", - pattern: "\x04\x00\x9F\xE5\x00\x00\x9F\xE7\x1E\xFF\x2F\xE1\xDC\x41\xBC\x00", - replace: "\x04\x00\x9F\xE5\x80\x0B\x0B\xE3\x1E\xFF\x2F\xE1\xDC\x41\xBC\x00" - }, - ] - let fileNames = []; try { files.ensureDir(files.join(extractDir, "lib")); @@ -13276,8 +13270,7 @@ function algo_init() { while (zipentries.hasMoreElements()) { let entry = zipentries.nextElement(); let name = entry.getName(); - let searchPattern = searchPatterns.find((p) => name === "lib/" + p.abi + "/libmadomagi_native.so"); - if (searchPattern == null) continue; + if (!name.match(/^lib\/(arm64-v8a|armeabi-v7a)\/libmadomagi_native\.so$/)) continue; if (entry.isDirectory()) continue; let path = files.join(extractDir, name); @@ -13296,19 +13289,39 @@ function algo_init() { } stream.close(); + files.writeBytes(path, bytes); + log("written to ["+path+"]"); + if (isRevert) { log("keep file as-is"); - } else if (name.match(/\.so$/)) { - let count = binaryReplaceText(bytes, searchPattern.pattern, searchPattern.replace); - log("replaced "+count+" occurrences in ["+name+"]"); - if (count == 0) { - dialogs.alert("未找到特征", "请等待脚本更新适配"); + } else { + files.remove(files.join(extractDir, "running")); + files.remove(files.join(extractDir, "done")); + log("starting audiofix.js"); + let exec = engines.execScriptFile(files.join(files.cwd(), "audiofix.js")); + for (let deadlineTime = Date.now() + 30000; Date.now() < deadlineTime; ) { + if (files.exists(files.join(extractDir, "running"))) break; + } + if (!files.exists(files.join(extractDir, "running"))) { + log("failed to launch nodejs"); + dialogs.alert("启动NodeJS引擎出错", "请下载最新APK安装包更新后重试"); return; } + let isDone = false; + for (let deadlineTime = Date.now() + 30000; Date.now() < deadlineTime; ) { + if (files.exists(files.join(extractDir, "done"))) { + isDone = true; + break; + } + sleep(1000); + } + if (!isDone) { + exec.getEngine().forceStop(); + log("timeout"); + dialogs.alert("执行超时"); + } } - files.writeBytes(path, bytes); - log("written to ["+path+"]"); fileNames.push(name); } zipfile.close(); diff --git a/project.json b/project.json index c82e525..76dd318 100644 --- a/project.json +++ b/project.json @@ -5,7 +5,7 @@ "build" ], "packageName": "top.momoe.auto", - "versionName": "7.2.3", + "versionName": "7.2.4", "versionInfo": "", "versionCode": 1, "icon":"./images/icon.png", @@ -24,6 +24,7 @@ "armeabi-v7a" ], "features": { + "nodejs": "enabled", "builtInOCR": "with-models" } } \ No newline at end of file diff --git a/update/updateList.json b/update/updateList.json index 39d8cbe..a79a572 100644 --- a/update/updateList.json +++ b/update/updateList.json @@ -1 +1 @@ -{"packageName":"top.momoe.auto","versionName":"7.2.3","fileRootNode":[[{"src":"bin/scrcap2bmp-arm","integrity":"sha256-eTAYPZmhVYKP9ENPXJRT/LB2wW1KEQHcz9p0ARJB7gY=","fileJsonPath":"update/fileJson/0.json"},{"src":"bin/scrcap2bmp-arm64","integrity":"sha256-9BGB+hvT/Ox/36N5v52UmDPAKwLoo3GCZVIOb/P6bg4=","fileJsonPath":"update/fileJson/1.json"},{"src":"bin/scrcap2bmp-x86","integrity":"sha256-WWhA594oa1cfr2Vp50lXyUKsA1i73s6P0fic2qT0n3Q=","fileJsonPath":"update/fileJson/2.json"},{"src":"bin/scrcap2bmp-x86_64","integrity":"sha256-Ogk7vIEKNscLPNCuIYScn3rZOgc5FeZnfDno7UGcRA0=","fileJsonPath":"update/fileJson/3.json"},{"src":"bin/scrcap2bmp.c","integrity":"sha256-cQ+dx/cDj5Ngf1PL7fIjqAQlYI8fXNEFpVIplG6ybUA="},{"src":"bin/treble-overlay-bromite-webview.apk","integrity":"sha256-OTjeXd7gZmSds9elxhg8TCCzi+LNCyrSJghDfIpfiAs=","fileJsonPath":"update/fileJson/4.json"}],{"src":"floatUI.js","integrity":"sha256-yw3OKwMn5Sh5UD772pCiw5MiZxyv31apHoP6H4Ua+C8="},{"src":"gen.js","integrity":"sha256-pqTUxIIuFran6sAdU3PFV1L6BCV8A+YZm18DhuXqBhE="},[{"src":"images/accel.png","integrity":"sha256-pPz7nkizCqRih+wCOxNEM3ef2fY2gxdFnZKf095Xk8w=","fileJsonPath":"update/fileJson/5.json"},{"src":"images/accelBtnDown.png","integrity":"sha256-yGPbD045112V4Qsk1ERkg+ODI/WuBzxSGK7Hw5hJmwE=","fileJsonPath":"update/fileJson/6.json"},{"src":"images/backToMirrorsTop.png","integrity":"sha256-5sTPkEWf2/r2DOWHMelAK3GvRgKvGYJsNkiZYjTMH6A=","fileJsonPath":"update/fileJson/7.json"},{"src":"images/blast.png","integrity":"sha256-jPgxTmojiScJcyc1XpT8e/eGRVdzjentExsGAvGcleM=","fileJsonPath":"update/fileJson/8.json"},{"src":"images/blastBtnDown.png","integrity":"sha256-hVnVqMgbWXYrsVQ/YuSvrcjZOLALt4wYKGdrYbwwX9s=","fileJsonPath":"update/fileJson/9.json"},{"src":"images/bpExhaustRefillBtnJP.png","integrity":"sha256-cKLfI8zskeaA9EPYRioBZl7Qhqq9TBVRMbrROqU43Mo=","fileJsonPath":"update/fileJson/10.json"},{"src":"images/bpRefillBtnJP.png","integrity":"sha256-kEhK8iaHPvO31126tIsvG6ctJluKATigEw1gCkXqWbg=","fileJsonPath":"update/fileJson/11.json"},{"src":"images/bpRefilledOKBtnJP.png","integrity":"sha256-7/Eh0zVQ5oJdZNE6y6/yk+yxCpx0S3kCr6J28KG7dx0=","fileJsonPath":"update/fileJson/12.json"},{"src":"images/branchStart.png","integrity":"sha256-o9k6+DZg22m7ZCRJaofGoeHcG4Mqfk3zbTb0KhNzWLE=","fileJsonPath":"update/fileJson/13.json"},{"src":"images/charge.png","integrity":"sha256-07gdFeeae/r0Wm4aCmD5ENWnNGnpjGJ/B8nMq9L6oLg=","fileJsonPath":"update/fileJson/14.json"},{"src":"images/chargeBtnDown.png","integrity":"sha256-pXW7r39Vivn9cyQUnMYbdFY4dN/MjIxwoTawlN/eENM=","fileJsonPath":"update/fileJson/15.json"},{"src":"images/closeBtn.png","integrity":"sha256-BkcIdeK5DzD8E7a4QaQDE83W6t6YgBbKoCQrWWm4Fco=","fileJsonPath":"update/fileJson/16.json"},{"src":"images/connectIndicator.png","integrity":"sha256-WOOvT9dZ0SX4CsXBMa/qCb3a87TsvQJ7m4AyFB9wq/U=","fileJsonPath":"update/fileJson/17.json"},{"src":"images/connectIndicatorBtnDown.png","integrity":"sha256-WLgMiTFdudHC9GB1fYptY7o9Ep7S1OhhwHouaQHBJfY=","fileJsonPath":"update/fileJson/18.json"},{"src":"images/dark.png","integrity":"sha256-HIvoij4tUMXTZeFPmuVkupIAG+L/HupDpnCkO0ZQZsg=","fileJsonPath":"update/fileJson/19.json"},{"src":"images/dark32x32.png","integrity":"sha256-PcQuGbdhZ0Z8gBLnA0wDe/N2Ps3HPSNef1nzEwRmEyc=","fileJsonPath":"update/fileJson/20.json"},{"src":"images/darkBtnDown.png","integrity":"sha256-tMQV56ToeB7j8yJzR6HxITzLCOTx5m0Anp/aYg1eXlY=","fileJsonPath":"update/fileJson/21.json"},{"src":"images/doppel.png","integrity":"sha256-U/8qkLq3qsQtBd7UNxj5DT8CQvLy1aHaRjaInXhHAls=","fileJsonPath":"update/fileJson/22.json"},{"src":"images/doppelBtnDown.png","integrity":"sha256-I9F+TRvM6t5/0ig31/FGsI2pDWyNeMZor5IOpocGQBc=","fileJsonPath":"update/fileJson/23.json"},{"src":"images/downloadDataOKBtn.png","integrity":"sha256-MmYETe8gJw7idlrlLcGY0IPwY9R0+lcpkL/GjkjrnaU=","fileJsonPath":"update/fileJson/24.json"},{"src":"images/fire.png","integrity":"sha256-CgpbpEm4l2Zk7Yg6bpVp2AH2jKQz1wTOCFgz7y9YF9g=","fileJsonPath":"update/fileJson/25.json"},{"src":"images/fire32x32.png","integrity":"sha256-iho+yISj3tygK/pdeYg3uI8EYcPyG2tXif0VY8TRWi4=","fileJsonPath":"update/fileJson/26.json"},{"src":"images/fireBtnDown.png","integrity":"sha256-w44UyaduCzMrxu6b6K6tM0zDAsfx6BfA0RDbGXVdKBY=","fileJsonPath":"update/fileJson/27.json"},{"src":"images/freeSectionOnMapBranchJP.png","integrity":"sha256-VjWqMyGKVQp1k4KdJxy7zL9fcx0MZAxQij97HQ/RZt8=","fileJsonPath":"update/fileJson/28.json"},{"src":"images/icon.png","integrity":"sha256-nCS4XyLVff1lOyqflpX9mzKzyWTXgHyn+99ShSWYp2s=","fileJsonPath":"update/fileJson/29.json"},{"src":"images/intermission.png","integrity":"sha256-9wI5yIuV+4UfhEdBVkre1G00lkSr7QSSLPhylgpTMY8=","fileJsonPath":"update/fileJson/30.json"},{"src":"images/light.png","integrity":"sha256-ZLdUDKAmECZLLGLnKKeHeR1twDdRuHLoMIpEdWGI6ps=","fileJsonPath":"update/fileJson/31.json"},{"src":"images/light32x32.png","integrity":"sha256-93kVt6NzmgJ5dfsfmccSsSJYejAOM1cWNMfUZUArp6U=","fileJsonPath":"update/fileJson/32.json"},{"src":"images/lightBtnDown.png","integrity":"sha256-eiXwUasZxkiHXNdpkntzytltCQ/xVW/hgQSlBAhYzCE=","fileJsonPath":"update/fileJson/33.json"},{"src":"images/magia.png","integrity":"sha256-2aC3TXK1rhtSV8Y3TYdsXY2FsbtfcrbpQfg/QwkF0+k=","fileJsonPath":"update/fileJson/34.json"},{"src":"images/magiaBtnDown.png","integrity":"sha256-QHF9GKulZLaXbK/V3xAWO1cVpLhqpmUK3Qdb+dvsjPI=","fileJsonPath":"update/fileJson/35.json"},{"src":"images/mirrorsEntranceBtn.png","integrity":"sha256-m4T0R1NiKn1M2s3+hWQRgZV6JGN3YzfJw27UrUU9N3g=","fileJsonPath":"update/fileJson/36.json"},{"src":"images/mirrorsExerciseSortingBtn.png","integrity":"sha256-Ta4x1cnqV3QtPNBDfhQhgKQ/sS/KIdOLI4W97xQTyac=","fileJsonPath":"update/fileJson/37.json"},{"src":"images/mirrorsLoseLetterE.png","integrity":"sha256-p9THvdO+QLM5ydxpe4REmsp9RrRWC0rcAB/NUyA27ow=","fileJsonPath":"update/fileJson/38.json"},{"src":"images/mirrorsRankingReMatchBtnJP.png","integrity":"sha256-O9iT0qa6xfREggZPb2w/rz52xSxniLT+DSJCspcewOI=","fileJsonPath":"update/fileJson/39.json"},{"src":"images/mirrorsRankingVS.png","integrity":"sha256-HSq1t05XypMIV2QcsoJ/mbhuWEOmQnGQupqcl9K/fYQ=","fileJsonPath":"update/fileJson/40.json"},{"src":"images/mirrorsRedTriangle.png","integrity":"sha256-3aHUwjtejvaAoHWSXNVb5aEY9wXVRDmQo9/4cFjM2X0=","fileJsonPath":"update/fileJson/41.json"},{"src":"images/mirrorsReMatchBtn.png","integrity":"sha256-VirN3oehQfuT4ANbdLwhszlVTzZPzNdfUsR+UlXboQk=","fileJsonPath":"update/fileJson/42.json"},{"src":"images/mirrorsTop.png","integrity":"sha256-beMw8wVBlMBvaaozPSl98A7No7IemHST5TSiifx2qRw=","fileJsonPath":"update/fileJson/43.json"},{"src":"images/mirrorsVS.png","integrity":"sha256-P6Rh52dluchnB3wVPTaC2S96Fs0lURLmUg3xbGGje3g=","fileJsonPath":"update/fileJson/44.json"},{"src":"images/mirrorsWinLetterI.png","integrity":"sha256-UGXeQYV941H5VBShtsls1nb1gn3wxM5rEmVn1VARUPg=","fileJsonPath":"update/fileJson/45.json"},{"src":"images/newQuest.png","integrity":"sha256-91o0lb+hk14XxR9hIDH3nbapz0gRxONJdypfemWDbOE=","fileJsonPath":"update/fileJson/46.json"},{"src":"images/nextMirrorLowerCaseI.png","integrity":"sha256-YXUuffnre9yK1NGdWEi8nxPLH2EAAyQJQlwhX3FYxyA=","fileJsonPath":"update/fileJson/47.json"},{"src":"images/none.png","integrity":"sha256-WbhoP/DEb5gzz81M2KTayVUTuHZfCykN6YB73+gGoLo=","fileJsonPath":"update/fileJson/48.json"},{"src":"images/none32x32.png","integrity":"sha256-smIbrs9+1DRstJ49gVBlQajfQo4oW5+NHpqzAfqBCLk=","fileJsonPath":"update/fileJson/49.json"},{"src":"images/noneBtnDown.png","integrity":"sha256-ae/n48zwZGAXDipQ5PsjXXTOjOmzxgBzeoMgOCHhkDM=","fileJsonPath":"update/fileJson/50.json"},{"src":"images/OKButton.png","integrity":"sha256-RFH+8EOs7X30vffCQ02z2k+yv1eF8MH5NFunKz11pRw=","fileJsonPath":"update/fileJson/51.json"},{"src":"images/OKButtonGray.png","integrity":"sha256-OXXB5aRlsVwYCqSVa12c8kD2+HxyKi9uFaFx7dXWIbY=","fileJsonPath":"update/fileJson/52.json"},{"src":"images/qb.png","integrity":"sha256-8j2wlTdvM0alP+BSFpna+tlFyaqGhwT4yhh7alqy+9w=","fileJsonPath":"update/fileJson/53.json"},{"src":"images/sectionClearMagiaStone.png","integrity":"sha256-7Fi9xydC3y1Z68CV7fA2qwEY9Tc7KK9wZx8M1TlmbuM=","fileJsonPath":"update/fileJson/54.json"},{"src":"images/sectionOnMapBranchJP.png","integrity":"sha256-tZEw4HJ60k859DOHoGqYwozu6+sTZrTxAlYMe4MeyOo=","fileJsonPath":"update/fileJson/55.json"},{"src":"images/sectionOnMapChap7JP.png","integrity":"sha256-vJGgW/M3x8zcr3NJRKaoWJNuOQsq1nhQLZgwwiStDK4=","fileJsonPath":"update/fileJson/56.json"},{"src":"images/sectionOnMapJP.png","integrity":"sha256-aoLeu45WuryimyWN/iRmfmzcFoT1dVJ2CuXwiWpIk/Y=","fileJsonPath":"update/fileJson/57.json"},{"src":"images/shinnyNew.png","integrity":"sha256-jqEJuKiklYHtNvPnh/E8D2CyyZlI3WUQ0GyBepRMOFI=","fileJsonPath":"update/fileJson/58.json"},{"src":"images/shinnyNewBranch.png","integrity":"sha256-17CTn6IzwpG2QD2uCT2UPaHCcdmEEuGBwox1DKsvoY0=","fileJsonPath":"update/fileJson/59.json"},{"src":"images/shinnyNewChap7.png","integrity":"sha256-SwHNmOdzIz6bZI66XFYCsFA2m63ISL6pKAdHpOlhpaI=","fileJsonPath":"update/fileJson/60.json"},{"src":"images/skillEmptyCHS.png","integrity":"sha256-Aal+cW5UVBNBseIpqCI/7zkI/qn9N02ZNgERK3ebN6o=","fileJsonPath":"update/fileJson/61.json"},{"src":"images/skillEmptyCHT.png","integrity":"sha256-laG3053ZdMWgpsBFUSWBl0IIk43rCza1Aw3ZHbPFib0=","fileJsonPath":"update/fileJson/62.json"},{"src":"images/skillEmptyJP.png","integrity":"sha256-GWkXWPW5587vRYvWyboDrupfkiB02XCnVrtHjxQ4j3I=","fileJsonPath":"update/fileJson/63.json"},{"src":"images/skillLocked.png","integrity":"sha256-zCHcAnxfEHD6r/5qVKVs8W761kY5PjsdaS2PrfSxe2k=","fileJsonPath":"update/fileJson/64.json"},{"src":"images/skipBtn.png","integrity":"sha256-4VIB74tosd+k0cy9FNouh9Z6fKQXeRVj9DUUYdHyThw=","fileJsonPath":"update/fileJson/65.json"},{"src":"images/start.jpg","integrity":"sha256-J5brNdm2qmrbdgUN7XcI9UcvBt+9MuGdob1ZU9HN8FY=","fileJsonPath":"update/fileJson/66.json"},{"src":"images/startBtn.png","integrity":"sha256-mi44wlMzhSXrCCQDW/hAsrDBPUYD/kYtd+9ObvC+ccQ=","fileJsonPath":"update/fileJson/67.json"},{"src":"images/support.png","integrity":"sha256-xI0LF4kLCp7SqKfm1B3hSxGEHMCO0P4EsOiuLngHpWA=","fileJsonPath":"update/fileJson/68.json"},{"src":"images/water.png","integrity":"sha256-wH6k3AuaiP420SaxcQie1lWqpyKMQjh7t9t2OeLlVBQ=","fileJsonPath":"update/fileJson/69.json"},{"src":"images/water32x32.png","integrity":"sha256-dKyGkKCxBCTjSml1vSOWc7j5yvwSviHcO5wkLjpRdRQ=","fileJsonPath":"update/fileJson/70.json"},{"src":"images/waterBtnDown.png","integrity":"sha256-7BdN+aeUnwVTnmhD1dyPp+ZjpdhULrx2L0yMLQ1MRZo=","fileJsonPath":"update/fileJson/71.json"},{"src":"images/wood.png","integrity":"sha256-Dm4GflrhA+ydJ4fKz2NXFYuuh+RUle2V0L7dkr/hW0A=","fileJsonPath":"update/fileJson/72.json"},{"src":"images/wood32x32.png","integrity":"sha256-Nleoyrm3QtgUHjGiWYN4UeGWrEQ3KbxYnx2cs8out6w=","fileJsonPath":"update/fileJson/73.json"},{"src":"images/woodBtnDown.png","integrity":"sha256-iCHcW+IOa5XcSO3arpK5JJl6zW00im6tY8Z/kbUtxq0=","fileJsonPath":"update/fileJson/74.json"}],{"src":"main.js","integrity":"sha256-OstRab2cBg6/HyZ1QqsfP8o/Ubk/DN6eVjPbWeq3Ukg="},{"src":"project.json","integrity":"sha256-oO9/Mwg/6fOY24JqbcSSz0auujfgpWM0o2TlJ2ACPGc="}]} \ No newline at end of file +{"packageName":"top.momoe.auto","versionName":"7.2.4","fileRootNode":[{"src":"audiofix.js","integrity":"sha256-KjgKQU0CzbouMfoskDE/7PNmK8rA2HqrGCFzZSXE5ZQ="},[{"src":"bin/scrcap2bmp-arm","integrity":"sha256-eTAYPZmhVYKP9ENPXJRT/LB2wW1KEQHcz9p0ARJB7gY=","fileJsonPath":"update/fileJson/0.json"},{"src":"bin/scrcap2bmp-arm64","integrity":"sha256-9BGB+hvT/Ox/36N5v52UmDPAKwLoo3GCZVIOb/P6bg4=","fileJsonPath":"update/fileJson/1.json"},{"src":"bin/scrcap2bmp-x86","integrity":"sha256-WWhA594oa1cfr2Vp50lXyUKsA1i73s6P0fic2qT0n3Q=","fileJsonPath":"update/fileJson/2.json"},{"src":"bin/scrcap2bmp-x86_64","integrity":"sha256-Ogk7vIEKNscLPNCuIYScn3rZOgc5FeZnfDno7UGcRA0=","fileJsonPath":"update/fileJson/3.json"},{"src":"bin/scrcap2bmp.c","integrity":"sha256-cQ+dx/cDj5Ngf1PL7fIjqAQlYI8fXNEFpVIplG6ybUA="},{"src":"bin/treble-overlay-bromite-webview.apk","integrity":"sha256-OTjeXd7gZmSds9elxhg8TCCzi+LNCyrSJghDfIpfiAs=","fileJsonPath":"update/fileJson/4.json"}],{"src":"floatUI.js","integrity":"sha256-GHXpLPZB7SF7hrchMOwxYcVeMKLSkLSEwD+sFKoUtgU="},{"src":"gen.js","integrity":"sha256-pqTUxIIuFran6sAdU3PFV1L6BCV8A+YZm18DhuXqBhE="},[{"src":"images/accel.png","integrity":"sha256-pPz7nkizCqRih+wCOxNEM3ef2fY2gxdFnZKf095Xk8w=","fileJsonPath":"update/fileJson/5.json"},{"src":"images/accelBtnDown.png","integrity":"sha256-yGPbD045112V4Qsk1ERkg+ODI/WuBzxSGK7Hw5hJmwE=","fileJsonPath":"update/fileJson/6.json"},{"src":"images/backToMirrorsTop.png","integrity":"sha256-5sTPkEWf2/r2DOWHMelAK3GvRgKvGYJsNkiZYjTMH6A=","fileJsonPath":"update/fileJson/7.json"},{"src":"images/blast.png","integrity":"sha256-jPgxTmojiScJcyc1XpT8e/eGRVdzjentExsGAvGcleM=","fileJsonPath":"update/fileJson/8.json"},{"src":"images/blastBtnDown.png","integrity":"sha256-hVnVqMgbWXYrsVQ/YuSvrcjZOLALt4wYKGdrYbwwX9s=","fileJsonPath":"update/fileJson/9.json"},{"src":"images/bpExhaustRefillBtnJP.png","integrity":"sha256-cKLfI8zskeaA9EPYRioBZl7Qhqq9TBVRMbrROqU43Mo=","fileJsonPath":"update/fileJson/10.json"},{"src":"images/bpRefillBtnJP.png","integrity":"sha256-kEhK8iaHPvO31126tIsvG6ctJluKATigEw1gCkXqWbg=","fileJsonPath":"update/fileJson/11.json"},{"src":"images/bpRefilledOKBtnJP.png","integrity":"sha256-7/Eh0zVQ5oJdZNE6y6/yk+yxCpx0S3kCr6J28KG7dx0=","fileJsonPath":"update/fileJson/12.json"},{"src":"images/branchStart.png","integrity":"sha256-o9k6+DZg22m7ZCRJaofGoeHcG4Mqfk3zbTb0KhNzWLE=","fileJsonPath":"update/fileJson/13.json"},{"src":"images/charge.png","integrity":"sha256-07gdFeeae/r0Wm4aCmD5ENWnNGnpjGJ/B8nMq9L6oLg=","fileJsonPath":"update/fileJson/14.json"},{"src":"images/chargeBtnDown.png","integrity":"sha256-pXW7r39Vivn9cyQUnMYbdFY4dN/MjIxwoTawlN/eENM=","fileJsonPath":"update/fileJson/15.json"},{"src":"images/closeBtn.png","integrity":"sha256-BkcIdeK5DzD8E7a4QaQDE83W6t6YgBbKoCQrWWm4Fco=","fileJsonPath":"update/fileJson/16.json"},{"src":"images/connectIndicator.png","integrity":"sha256-WOOvT9dZ0SX4CsXBMa/qCb3a87TsvQJ7m4AyFB9wq/U=","fileJsonPath":"update/fileJson/17.json"},{"src":"images/connectIndicatorBtnDown.png","integrity":"sha256-WLgMiTFdudHC9GB1fYptY7o9Ep7S1OhhwHouaQHBJfY=","fileJsonPath":"update/fileJson/18.json"},{"src":"images/dark.png","integrity":"sha256-HIvoij4tUMXTZeFPmuVkupIAG+L/HupDpnCkO0ZQZsg=","fileJsonPath":"update/fileJson/19.json"},{"src":"images/dark32x32.png","integrity":"sha256-PcQuGbdhZ0Z8gBLnA0wDe/N2Ps3HPSNef1nzEwRmEyc=","fileJsonPath":"update/fileJson/20.json"},{"src":"images/darkBtnDown.png","integrity":"sha256-tMQV56ToeB7j8yJzR6HxITzLCOTx5m0Anp/aYg1eXlY=","fileJsonPath":"update/fileJson/21.json"},{"src":"images/doppel.png","integrity":"sha256-U/8qkLq3qsQtBd7UNxj5DT8CQvLy1aHaRjaInXhHAls=","fileJsonPath":"update/fileJson/22.json"},{"src":"images/doppelBtnDown.png","integrity":"sha256-I9F+TRvM6t5/0ig31/FGsI2pDWyNeMZor5IOpocGQBc=","fileJsonPath":"update/fileJson/23.json"},{"src":"images/downloadDataOKBtn.png","integrity":"sha256-MmYETe8gJw7idlrlLcGY0IPwY9R0+lcpkL/GjkjrnaU=","fileJsonPath":"update/fileJson/24.json"},{"src":"images/fire.png","integrity":"sha256-CgpbpEm4l2Zk7Yg6bpVp2AH2jKQz1wTOCFgz7y9YF9g=","fileJsonPath":"update/fileJson/25.json"},{"src":"images/fire32x32.png","integrity":"sha256-iho+yISj3tygK/pdeYg3uI8EYcPyG2tXif0VY8TRWi4=","fileJsonPath":"update/fileJson/26.json"},{"src":"images/fireBtnDown.png","integrity":"sha256-w44UyaduCzMrxu6b6K6tM0zDAsfx6BfA0RDbGXVdKBY=","fileJsonPath":"update/fileJson/27.json"},{"src":"images/freeSectionOnMapBranchJP.png","integrity":"sha256-VjWqMyGKVQp1k4KdJxy7zL9fcx0MZAxQij97HQ/RZt8=","fileJsonPath":"update/fileJson/28.json"},{"src":"images/icon.png","integrity":"sha256-nCS4XyLVff1lOyqflpX9mzKzyWTXgHyn+99ShSWYp2s=","fileJsonPath":"update/fileJson/29.json"},{"src":"images/intermission.png","integrity":"sha256-9wI5yIuV+4UfhEdBVkre1G00lkSr7QSSLPhylgpTMY8=","fileJsonPath":"update/fileJson/30.json"},{"src":"images/light.png","integrity":"sha256-ZLdUDKAmECZLLGLnKKeHeR1twDdRuHLoMIpEdWGI6ps=","fileJsonPath":"update/fileJson/31.json"},{"src":"images/light32x32.png","integrity":"sha256-93kVt6NzmgJ5dfsfmccSsSJYejAOM1cWNMfUZUArp6U=","fileJsonPath":"update/fileJson/32.json"},{"src":"images/lightBtnDown.png","integrity":"sha256-eiXwUasZxkiHXNdpkntzytltCQ/xVW/hgQSlBAhYzCE=","fileJsonPath":"update/fileJson/33.json"},{"src":"images/magia.png","integrity":"sha256-2aC3TXK1rhtSV8Y3TYdsXY2FsbtfcrbpQfg/QwkF0+k=","fileJsonPath":"update/fileJson/34.json"},{"src":"images/magiaBtnDown.png","integrity":"sha256-QHF9GKulZLaXbK/V3xAWO1cVpLhqpmUK3Qdb+dvsjPI=","fileJsonPath":"update/fileJson/35.json"},{"src":"images/mirrorsEntranceBtn.png","integrity":"sha256-m4T0R1NiKn1M2s3+hWQRgZV6JGN3YzfJw27UrUU9N3g=","fileJsonPath":"update/fileJson/36.json"},{"src":"images/mirrorsExerciseSortingBtn.png","integrity":"sha256-Ta4x1cnqV3QtPNBDfhQhgKQ/sS/KIdOLI4W97xQTyac=","fileJsonPath":"update/fileJson/37.json"},{"src":"images/mirrorsLoseLetterE.png","integrity":"sha256-p9THvdO+QLM5ydxpe4REmsp9RrRWC0rcAB/NUyA27ow=","fileJsonPath":"update/fileJson/38.json"},{"src":"images/mirrorsRankingReMatchBtnJP.png","integrity":"sha256-O9iT0qa6xfREggZPb2w/rz52xSxniLT+DSJCspcewOI=","fileJsonPath":"update/fileJson/39.json"},{"src":"images/mirrorsRankingVS.png","integrity":"sha256-HSq1t05XypMIV2QcsoJ/mbhuWEOmQnGQupqcl9K/fYQ=","fileJsonPath":"update/fileJson/40.json"},{"src":"images/mirrorsRedTriangle.png","integrity":"sha256-3aHUwjtejvaAoHWSXNVb5aEY9wXVRDmQo9/4cFjM2X0=","fileJsonPath":"update/fileJson/41.json"},{"src":"images/mirrorsReMatchBtn.png","integrity":"sha256-VirN3oehQfuT4ANbdLwhszlVTzZPzNdfUsR+UlXboQk=","fileJsonPath":"update/fileJson/42.json"},{"src":"images/mirrorsTop.png","integrity":"sha256-beMw8wVBlMBvaaozPSl98A7No7IemHST5TSiifx2qRw=","fileJsonPath":"update/fileJson/43.json"},{"src":"images/mirrorsVS.png","integrity":"sha256-P6Rh52dluchnB3wVPTaC2S96Fs0lURLmUg3xbGGje3g=","fileJsonPath":"update/fileJson/44.json"},{"src":"images/mirrorsWinLetterI.png","integrity":"sha256-UGXeQYV941H5VBShtsls1nb1gn3wxM5rEmVn1VARUPg=","fileJsonPath":"update/fileJson/45.json"},{"src":"images/newQuest.png","integrity":"sha256-91o0lb+hk14XxR9hIDH3nbapz0gRxONJdypfemWDbOE=","fileJsonPath":"update/fileJson/46.json"},{"src":"images/nextMirrorLowerCaseI.png","integrity":"sha256-YXUuffnre9yK1NGdWEi8nxPLH2EAAyQJQlwhX3FYxyA=","fileJsonPath":"update/fileJson/47.json"},{"src":"images/none.png","integrity":"sha256-WbhoP/DEb5gzz81M2KTayVUTuHZfCykN6YB73+gGoLo=","fileJsonPath":"update/fileJson/48.json"},{"src":"images/none32x32.png","integrity":"sha256-smIbrs9+1DRstJ49gVBlQajfQo4oW5+NHpqzAfqBCLk=","fileJsonPath":"update/fileJson/49.json"},{"src":"images/noneBtnDown.png","integrity":"sha256-ae/n48zwZGAXDipQ5PsjXXTOjOmzxgBzeoMgOCHhkDM=","fileJsonPath":"update/fileJson/50.json"},{"src":"images/OKButton.png","integrity":"sha256-RFH+8EOs7X30vffCQ02z2k+yv1eF8MH5NFunKz11pRw=","fileJsonPath":"update/fileJson/51.json"},{"src":"images/OKButtonGray.png","integrity":"sha256-OXXB5aRlsVwYCqSVa12c8kD2+HxyKi9uFaFx7dXWIbY=","fileJsonPath":"update/fileJson/52.json"},{"src":"images/qb.png","integrity":"sha256-8j2wlTdvM0alP+BSFpna+tlFyaqGhwT4yhh7alqy+9w=","fileJsonPath":"update/fileJson/53.json"},{"src":"images/sectionClearMagiaStone.png","integrity":"sha256-7Fi9xydC3y1Z68CV7fA2qwEY9Tc7KK9wZx8M1TlmbuM=","fileJsonPath":"update/fileJson/54.json"},{"src":"images/sectionOnMapBranchJP.png","integrity":"sha256-tZEw4HJ60k859DOHoGqYwozu6+sTZrTxAlYMe4MeyOo=","fileJsonPath":"update/fileJson/55.json"},{"src":"images/sectionOnMapChap7JP.png","integrity":"sha256-vJGgW/M3x8zcr3NJRKaoWJNuOQsq1nhQLZgwwiStDK4=","fileJsonPath":"update/fileJson/56.json"},{"src":"images/sectionOnMapJP.png","integrity":"sha256-aoLeu45WuryimyWN/iRmfmzcFoT1dVJ2CuXwiWpIk/Y=","fileJsonPath":"update/fileJson/57.json"},{"src":"images/shinnyNew.png","integrity":"sha256-jqEJuKiklYHtNvPnh/E8D2CyyZlI3WUQ0GyBepRMOFI=","fileJsonPath":"update/fileJson/58.json"},{"src":"images/shinnyNewBranch.png","integrity":"sha256-17CTn6IzwpG2QD2uCT2UPaHCcdmEEuGBwox1DKsvoY0=","fileJsonPath":"update/fileJson/59.json"},{"src":"images/shinnyNewChap7.png","integrity":"sha256-SwHNmOdzIz6bZI66XFYCsFA2m63ISL6pKAdHpOlhpaI=","fileJsonPath":"update/fileJson/60.json"},{"src":"images/skillEmptyCHS.png","integrity":"sha256-Aal+cW5UVBNBseIpqCI/7zkI/qn9N02ZNgERK3ebN6o=","fileJsonPath":"update/fileJson/61.json"},{"src":"images/skillEmptyCHT.png","integrity":"sha256-laG3053ZdMWgpsBFUSWBl0IIk43rCza1Aw3ZHbPFib0=","fileJsonPath":"update/fileJson/62.json"},{"src":"images/skillEmptyJP.png","integrity":"sha256-GWkXWPW5587vRYvWyboDrupfkiB02XCnVrtHjxQ4j3I=","fileJsonPath":"update/fileJson/63.json"},{"src":"images/skillLocked.png","integrity":"sha256-zCHcAnxfEHD6r/5qVKVs8W761kY5PjsdaS2PrfSxe2k=","fileJsonPath":"update/fileJson/64.json"},{"src":"images/skipBtn.png","integrity":"sha256-4VIB74tosd+k0cy9FNouh9Z6fKQXeRVj9DUUYdHyThw=","fileJsonPath":"update/fileJson/65.json"},{"src":"images/start.jpg","integrity":"sha256-J5brNdm2qmrbdgUN7XcI9UcvBt+9MuGdob1ZU9HN8FY=","fileJsonPath":"update/fileJson/66.json"},{"src":"images/startBtn.png","integrity":"sha256-mi44wlMzhSXrCCQDW/hAsrDBPUYD/kYtd+9ObvC+ccQ=","fileJsonPath":"update/fileJson/67.json"},{"src":"images/support.png","integrity":"sha256-xI0LF4kLCp7SqKfm1B3hSxGEHMCO0P4EsOiuLngHpWA=","fileJsonPath":"update/fileJson/68.json"},{"src":"images/water.png","integrity":"sha256-wH6k3AuaiP420SaxcQie1lWqpyKMQjh7t9t2OeLlVBQ=","fileJsonPath":"update/fileJson/69.json"},{"src":"images/water32x32.png","integrity":"sha256-dKyGkKCxBCTjSml1vSOWc7j5yvwSviHcO5wkLjpRdRQ=","fileJsonPath":"update/fileJson/70.json"},{"src":"images/waterBtnDown.png","integrity":"sha256-7BdN+aeUnwVTnmhD1dyPp+ZjpdhULrx2L0yMLQ1MRZo=","fileJsonPath":"update/fileJson/71.json"},{"src":"images/wood.png","integrity":"sha256-Dm4GflrhA+ydJ4fKz2NXFYuuh+RUle2V0L7dkr/hW0A=","fileJsonPath":"update/fileJson/72.json"},{"src":"images/wood32x32.png","integrity":"sha256-Nleoyrm3QtgUHjGiWYN4UeGWrEQ3KbxYnx2cs8out6w=","fileJsonPath":"update/fileJson/73.json"},{"src":"images/woodBtnDown.png","integrity":"sha256-iCHcW+IOa5XcSO3arpK5JJl6zW00im6tY8Z/kbUtxq0=","fileJsonPath":"update/fileJson/74.json"}],{"src":"main.js","integrity":"sha256-OstRab2cBg6/HyZ1QqsfP8o/Ubk/DN6eVjPbWeq3Ukg="},{"src":"project.json","integrity":"sha256-mSE/427T2dLkLlm8K/6x+CGy2ovzL0EGf7aj+hlJwdE="}]} \ No newline at end of file diff --git a/update/updateList.json.sig.txt b/update/updateList.json.sig.txt index 21226d7..5cb5681 100644 --- a/update/updateList.json.sig.txt +++ b/update/updateList.json.sig.txt @@ -1 +1 @@ -RrbIaygWG4M51Fh92ZJessDwSNBMe10+bsL7N3dFlFGj8yPTs0qYI3CzKbTHCpdOHhcc3hmngROO7vfqPea7ovimuOokADPKXBi4NCqJ+K5TLVLB/HtPNVcCimhRUd8PhU7fO036aqGw7tW59KETd9yrgBAP5Z0DEJFUSZC+tTI7rCP4i7jFfmFLAuUOOY/b1kD+JUuGBNBj203VnnFs9FpxP5iucXzhhg/25R7fS7p91toq4CDI8IvJP1drej67EZ7qxooptQm2gIfevr3rt112A0dyzzCzykamENN/5JKiG/Lb6LHDXUgwUK+0wPvlbZQhx505S9ZKn/guw355pQ== \ No newline at end of file +mNEZ5TPJmsun7+ogt2iwBajPLjt2JXy8Pop4EhHEE8pKiwvniVsAXDaXHmRSe+k2mLfciM9mYwNaptG3sNHB5mivOoIiGaazGigHGWTbPWZ1d2YnXZG/J1QrWt+raOHOvUp4Pf1NNk9iTOy6Cuzj9t2LeSEx4096voQM22kLRm8KyIlAZkGb7Qsh7MFeQZnwHq9x2ScfWr0IIIVmjkYgSlvoLkrtls+2bRjFrEPtclPnfhXTSwDzeWzpv1aM+1xWqZBlf588/vKeRaf79eFulzYFvIhPMSZYL+cb2G4ePAq0x5gtdV6JnQdrUy7l/VTcWLiguzQMaaVdvOE3crabzQ== \ No newline at end of file