From a5f93cb214219ce5d2afcfcdf67b40efd0d66a90 Mon Sep 17 00:00:00 2001 From: Ark74 Date: Sat, 28 Mar 2026 14:10:24 -0600 Subject: [PATCH] icecat: add release icecat-140.9.0-1gnu1 for ecne --- icecat/.cargo/config.toml.in | 4 +- icecat/.cron.yml | 3 +- icecat/CLOBBER | 2 +- icecat/Cargo.lock | 4 +- icecat/accessible/generic/DocAccessible.cpp | 11 +- icecat/accessible/ipc/DocAccessibleParent.cpp | 72 +- icecat/accessible/ipc/DocAccessibleParent.h | 12 +- .../tests/browser/fission/browser.toml | 2 + .../fission/browser_iframe_recreation.js | 29 + icecat/browser/config/version.txt | 2 +- icecat/browser/config/version_display.txt | 2 +- icecat/browser/confvars.sh | 2 +- icecat/config/milestone.txt | 2 +- icecat/debian/changelog | 6 + .../src/widgets/RequestListContextMenu.js | 2 +- .../test/browser_net_columns_time.js | 3 +- .../test/browser_net_copy_as_fetch.js | 111 +- .../browser/browser_device_state_restore.js | 12 +- icecat/docshell/base/BrowsingContext.cpp | 5 + icecat/docshell/base/BrowsingContext.h | 1 + icecat/dom/base/DocumentOrShadowRoot.cpp | 10 +- icecat/dom/base/MimeType.cpp | 13 +- icecat/dom/base/nsContentPermissionHelper.cpp | 35 +- icecat/dom/base/nsContentPermissionHelper.h | 8 +- icecat/dom/base/test/gtest/TestMimeType.cpp | 44 +- icecat/dom/bindings/BindingUtils.cpp | 135 +- icecat/dom/bindings/ErrorIPCUtils.h | 70 +- icecat/dom/bindings/ErrorResult.h | 9 +- .../bindings/ObservableArrayProxyHandler.cpp | 3 + icecat/dom/canvas/TexUnpackBlob.cpp | 10 +- icecat/dom/events/GlobalKeyListener.cpp | 5 + icecat/dom/indexedDB/ActorsParent.cpp | 8 + icecat/dom/ipc/BrowserBridgeParent.cpp | 27 +- icecat/dom/ipc/BrowserChild.cpp | 4 + icecat/dom/ipc/BrowserParent.cpp | 35 +- icecat/dom/ipc/ContentParent.cpp | 14 +- icecat/dom/ipc/ContentParent.h | 6 + icecat/dom/ipc/PContentPermissionRequest.ipdl | 1 - icecat/dom/localstorage/ActorsParent.cpp | 6 + icecat/dom/media/MediaData.cpp | 44 +- .../gmp-plugin-openh264/gmp-fake-openh264.cpp | 20 +- icecat/dom/media/gmp/GMPLoader.cpp | 119 +- icecat/dom/media/gmp/GMPSharedMemManager.h | 4 + icecat/dom/media/gmp/GMPVideoEncoderChild.cpp | 22 +- icecat/dom/media/gmp/GMPVideoEncoderChild.h | 3 + .../dom/media/gmp/GMPVideoEncoderParent.cpp | 8 + icecat/dom/media/gmp/GMPVideoEncoderParent.h | 1 + icecat/dom/media/gmp/GMPVideoEncoderProxy.h | 1 + icecat/dom/media/gmp/GMPVideoHost.cpp | 3 + .../dom/media/gmp/GMPVideoi420FrameImpl.cpp | 113 +- icecat/dom/media/gmp/GMPVideoi420FrameImpl.h | 30 +- icecat/dom/media/gmp/PGMPVideoEncoder.ipdl | 1 + icecat/dom/media/gtest/TestWebrtcGmpCodec.cpp | 279 + icecat/dom/media/gtest/moz.build | 1 + .../media/platforms/agnostic/VPXDecoder.cpp | 6 +- .../agnostic/gmp/GMPVideoEncoder.cpp | 18 + .../platforms/agnostic/gmp/GMPVideoEncoder.h | 1 + icecat/dom/media/webcodecs/AudioData.cpp | 2 +- .../dom/media/webrtc/jsep/JsepSessionImpl.cpp | 10 +- icecat/dom/media/webrtc/jsep/JsepTrack.cpp | 104 +- icecat/dom/media/webrtc/jsep/JsepTrack.h | 15 +- icecat/dom/media/webrtc/jsep/moz.build | 5 +- .../libwebrtcglue/WebrtcGmpVideoCodec.cpp | 83 +- .../libwebrtcglue/WebrtcGmpVideoCodec.h | 2 + .../media/webrtc/transport/mediapacket.cpp | 82 +- .../media/webrtc/transport/nricestunaddr.cpp | 13 + .../remoteworkers/RemoteWorkerController.cpp | 4 + icecat/gfx/2d/FilterNodeSoftware.cpp | 227 +- icecat/gfx/2d/FilterNodeSoftware.h | 22 +- icecat/gfx/2d/Filters.h | 3 +- icecat/gfx/2d/Rect.h | 17 +- icecat/gfx/2d/ScaledFontMac.cpp | 2 +- icecat/gfx/gl/GLContextEGL.h | 2 +- icecat/gfx/harfbuzz/src/hb-algs.hh | 15 + .../gfx/harfbuzz/src/hb-ot-shaper-arabic.cc | 43 +- icecat/gfx/layers/AnimationHelper.cpp | 6 +- icecat/gfx/layers/BufferTexture.cpp | 11 +- icecat/gfx/layers/ImageContainer.cpp | 15 +- icecat/gfx/layers/ImageDataSerializer.cpp | 55 +- icecat/gfx/layers/ImageDataSerializer.h | 13 +- icecat/gfx/layers/SourceSurfaceSharedData.cpp | 17 +- icecat/gfx/layers/SourceSurfaceSharedData.h | 2 +- icecat/gfx/layers/composite/TextureHost.cpp | 7 +- icecat/gfx/layers/ipc/ImageBridgeParent.cpp | 13 + .../gfx/layers/ipc/SharedPlanarYCbCrImage.cpp | 3 +- icecat/gfx/layers/opengl/TextureHostOGL.cpp | 10 + .../gfx/layers/wr/WebRenderBridgeParent.cpp | 22 +- icecat/image/moz.build | 2 + icecat/js/public/Value.h | 2 +- icecat/js/src/debugger/DebugScript.cpp | 18 + icecat/js/src/debugger/Debugger.cpp | 29 +- icecat/js/src/gc/Memory.cpp | 10 +- icecat/js/src/gc/Verifier.cpp | 6 +- .../Debugger-clearAllBreakpoints-finalized.js | 17 + .../Frame-onStep-generator-resumption-04.js | 31 + icecat/js/src/jit/IonAnalysis.cpp | 67 +- icecat/js/src/jit/MIR-wasm.h | 1 - icecat/js/src/vm/ArrayBufferObject.cpp | 27 +- icecat/layout/style/FontFace.cpp | 6 + icecat/media/libpng/ANNOUNCE | 37 +- icecat/media/libpng/AUTHORS | 12 +- icecat/media/libpng/CHANGES | 90 +- icecat/media/libpng/LICENSE | 4 +- icecat/media/libpng/README | 16 +- icecat/media/libpng/apng.patch | 20 +- icecat/media/libpng/arm/arm_init.c | 8 +- .../media/libpng/arm/filter_neon_intrinsics.c | 14 +- .../libpng/intel/filter_sse2_intrinsics.c | 58 +- icecat/media/libpng/libpng-manual.txt | 37 +- .../libpng/loongarch/filter_lsx_intrinsics.c | 37 +- .../libpng/loongarch/loongarch_lsx_init.c | 3 +- .../libpng/mips/filter_mmi_inline_assembly.c | 14 +- .../media/libpng/mips/filter_msa_intrinsics.c | 37 +- icecat/media/libpng/mips/mips_init.c | 6 +- icecat/media/libpng/moz.build | 16 +- icecat/media/libpng/moz.yaml | 7 +- icecat/media/libpng/png.c | 45 +- icecat/media/libpng/png.h | 1180 ++- icecat/media/libpng/pngconf.h | 49 +- icecat/media/libpng/pngdebug.h | 11 +- icecat/media/libpng/pngerror.c | 157 +- icecat/media/libpng/pngget.c | 15 +- icecat/media/libpng/pnginfo.h | 51 +- icecat/media/libpng/pngmem.c | 21 +- icecat/media/libpng/pngpread.c | 10 +- icecat/media/libpng/pngpriv.h | 979 +- icecat/media/libpng/pngread.c | 267 +- icecat/media/libpng/pngrio.c | 4 +- icecat/media/libpng/pngrtran.c | 125 +- icecat/media/libpng/pngrutil.c | 20 +- icecat/media/libpng/pngset.c | 19 +- icecat/media/libpng/pngstruct.h | 16 +- icecat/media/libpng/pngtrans.c | 4 +- icecat/media/libpng/pngwio.c | 8 +- icecat/media/libpng/pngwrite.c | 57 +- icecat/media/libpng/pngwutil.c | 10 +- .../libpng/powerpc/filter_vsx_intrinsics.c | 2 +- icecat/media/libpng/powerpc/powerpc_init.c | 2 +- .../modules/libpref/init/StaticPrefList.yaml | 6 + icecat/modules/libpref/parser/src/lib.rs | 3 +- icecat/modules/libpref/test/gtest/Parser.cpp | 12 + icecat/modules/zlib/{src => }/LICENSE | 2 +- icecat/modules/zlib/moz.yaml | 154 + icecat/modules/zlib/mozzconf.patch | 13 + icecat/modules/zlib/src/ChangeLog | 51 + icecat/modules/zlib/src/ChangeLog.moz | 97 - icecat/modules/zlib/src/FAQ | 367 - icecat/modules/zlib/src/INDEX | 68 - icecat/modules/zlib/src/README | 28 +- icecat/modules/zlib/src/compress.c | 46 +- icecat/modules/zlib/src/crc32.c | 166 +- icecat/modules/zlib/src/deflate.c | 176 +- icecat/modules/zlib/src/deflate.h | 8 +- icecat/modules/zlib/src/gzguts.h | 64 +- icecat/modules/zlib/src/gzlib.c | 103 +- icecat/modules/zlib/src/gzread.c | 314 +- icecat/modules/zlib/src/gzwrite.c | 267 +- icecat/modules/zlib/src/infback.c | 87 +- icecat/modules/zlib/src/inffast.c | 13 +- icecat/modules/zlib/src/inffixed.h | 182 +- icecat/modules/zlib/src/inflate.c | 189 +- icecat/modules/zlib/src/inflate.h | 2 +- icecat/modules/zlib/src/inftrees.c | 143 +- icecat/modules/zlib/src/inftrees.h | 4 +- icecat/modules/zlib/src/mozzconf.h | 21 + icecat/modules/zlib/src/trees.c | 28 +- icecat/modules/zlib/src/uncompr.c | 62 +- icecat/modules/zlib/src/zconf.h | 46 +- icecat/modules/zlib/src/zlib.h | 307 +- icecat/modules/zlib/src/zutil.c | 84 +- icecat/modules/zlib/src/zutil.h | 99 +- icecat/netwerk/base/nsStandardURL.cpp | 26 +- icecat/netwerk/base/nsStandardURL.h | 5 + icecat/netwerk/dns/effective_tld_names.dat | 62 +- .../protocol/http/PHttpChannelParams.h | 46 +- .../protocol/http/nsHttpResponseHead.cpp | 64 +- .../protocol/http/nsHttpResponseHead.h | 4 + .../webtransport/WebTransportSessionProxy.cpp | 10 +- .../webtransport/WebTransportSessionProxy.h | 3 +- icecat/parser/expat/00_xmlchar.patch | 19 +- icecat/parser/expat/01_noslop.patch | 2 +- .../expat/02_report_mismatched_tag.patch | 25 +- .../parser/expat/03_dont_generate_salt.patch | 6 +- .../expat/04_always_set_eventptrs.patch | 2 +- .../parser/expat/05_getcurrentbyteindex.patch | 2 +- ...s.patch => 06_always_store_rawnames.patch} | 65 +- .../expat/06_report_processing_entity.patch | 17 - ...=> 07_dont_ignore_undeclared_entity.patch} | 4 +- ...ude_xmlns.patch => 08_include_xmlns.patch} | 16 +- ...alsubset.patch => 09_internalsubset.patch} | 2 +- ...ion_limit.patch => 10_version_limit.patch} | 4 +- icecat/parser/expat/11_nested_entities.patch | 33 - ..._report.patch => 11_no_debug_report.patch} | 168 +- .../{14_unused.patch => 12_unused.patch} | 96 +- icecat/parser/expat/COPYING | 2 +- icecat/parser/expat/README_MOZILLA | 4 +- icecat/parser/expat/expat/lib/expat.h | 66 +- .../parser/expat/expat/lib/expat_external.h | 118 +- icecat/parser/expat/expat/lib/internal.h | 19 +- icecat/parser/expat/expat/lib/moz_xmlparse.c | 11 + icecat/parser/expat/expat/lib/xmlparse.c | 1434 ++- icecat/parser/expat/expat/lib/xmlrole.c | 2 +- icecat/parser/expat/expat/lib/xmlrole.h | 36 +- icecat/parser/expat/expat/lib/xmltok.c | 6 +- icecat/parser/expat/expat/lib/xmltok.h | 226 +- icecat/parser/expat/expat/lib/xmltok_ns.c | 5 +- icecat/parser/expat/moz.yaml | 22 +- icecat/security/ct/CTKnownLogs.h | 10 +- icecat/security/manager/ssl/StaticHPKPins.h | 2 +- .../security/manager/ssl/nsSTSPreloadList.inc | 3957 ++++---- icecat/security/manager/tools/log_list.json | 20 +- .../win/src/sandboxbroker/sandboxBroker.cpp | 56 +- .../dumps/blocklists/addons-bloomfilters.json | 8492 ++++------------- .../addons-bloomfilters/addons-mlbf.bin | Bin 876445 -> 882382 bytes .../addons-mlbf.bin.meta.json | 2 +- .../softblocks-addons-mlbf.bin | Bin 174266 -> 180796 bytes .../softblocks-addons-mlbf.bin.meta.json | 2 +- .../settings/dumps/blocklists/gfx.json | 28 +- .../main/devtools-compatibility-browsers.json | 446 +- .../settings/dumps/main/devtools-devices.json | 1073 +-- .../dumps/main/remote-permissions.json | 13 +- .../dumps/main/search-config-icons.json | 86 +- .../a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3 | Bin 2799 -> 3197 bytes ...c3fd-4bdb-41f3-2ebc-4cbed06a9bd3.meta.json | 2 +- .../settings/dumps/main/search-config-v2.json | 4 +- .../dumps/main/search-telemetry-v2.json | 277 +- .../services/settings/dumps/monitor/changes | 184 +- .../dumps/security-state/intermediates.json | 2355 +++-- .../settings/dumps/security-state/onecrl.json | 662 +- icecat/sourcestamp.txt | 4 +- .../transforms/mark_as_merged.py | 2 +- .../gecko_taskgraph/util/bugbug.py | 2 +- icecat/taskcluster/kinds/fetch/toolchains.yml | 10 +- .../taskcluster/kinds/mark-as-merged/kind.yml | 1 - icecat/taskcluster/kinds/toolchain/mingw.yml | 2 +- .../scripts/misc/build-mingw32-nsis.sh | 4 +- .../fetch/content-type/response.window.js.ini | 29 +- .../fetch/content-type/script.window.js.ini | 9 - icecat/third_party/aom/av1/encoder/pickcdef.c | 38 +- .../third_party/cbindgen/.cargo-checksum.json | 2 +- .../third_party/cbindgen/.cargo_vcs_info.json | 6 + .../cbindgen/.github/workflows/cbindgen.yml | 122 + .../cbindgen/.github/workflows/deploy.yml | 67 + .../vendor/anstream/.cargo-checksum.json | 2 +- .../vendor/anstream/.cargo_vcs_info.json | 6 + .../vendor/anstyle-parse/.cargo-checksum.json | 2 +- .../vendor/anstyle-parse/.cargo_vcs_info.json | 6 + .../vendor/anstyle-query/.cargo-checksum.json | 2 +- .../vendor/anstyle-query/.cargo_vcs_info.json | 6 + .../anstyle-wincon/.cargo-checksum.json | 2 +- .../anstyle-wincon/.cargo_vcs_info.json | 6 + .../vendor/anstyle/.cargo-checksum.json | 2 +- .../vendor/anstyle/.cargo_vcs_info.json | 6 + .../vendor/autocfg/.cargo-checksum.json | 2 +- .../vendor/autocfg/.cargo_vcs_info.json | 6 + .../vendor/bitflags/.cargo-checksum.json | 2 +- .../vendor/bitflags/.cargo_vcs_info.json | 6 + .../vendor/cfg-if/.cargo-checksum.json | 2 +- .../vendor/cfg-if/.cargo_vcs_info.json | 6 + .../vendor/cfg-if/.github/dependabot.yml | 14 + .../vendor/cfg-if/.github/workflows/main.yaml | 36 + .../cfg-if/.github/workflows/publish.yaml | 25 + .../cbindgen/vendor/clap/.cargo-checksum.json | 2 +- .../cbindgen/vendor/clap/.cargo_vcs_info.json | 6 + .../vendor/clap_builder/.cargo-checksum.json | 2 +- .../vendor/clap_builder/.cargo_vcs_info.json | 6 + .../vendor/clap_lex/.cargo-checksum.json | 2 +- .../vendor/clap_lex/.cargo_vcs_info.json | 6 + .../vendor/colorchoice/.cargo-checksum.json | 2 +- .../vendor/colorchoice/.cargo_vcs_info.json | 6 + .../vendor/dashmap/.cargo-checksum.json | 2 +- .../vendor/dashmap/.cargo_vcs_info.json | 6 + .../vendor/dashmap/.github/workflows/ci.yml | 55 + .../cbindgen/vendor/diff/.cargo-checksum.json | 2 +- .../cbindgen/vendor/diff/.cargo_vcs_info.json | 6 + .../vendor/diff/.github/workflows/main.yml | 25 + .../vendor/equivalent/.cargo-checksum.json | 2 +- .../vendor/equivalent/.cargo_vcs_info.json | 6 + .../equivalent/.github/workflows/ci.yml | 48 + .../vendor/errno/.cargo-checksum.json | 2 +- .../vendor/errno/.cargo_vcs_info.json | 6 + .../vendor/errno/.github/dependabot.yml | 10 + .../vendor/errno/.github/workflows/main.yml | 89 + .../vendor/fastrand/.cargo-checksum.json | 2 +- .../vendor/fastrand/.cargo_vcs_info.json | 6 + .../vendor/getrandom/.cargo-checksum.json | 2 +- .../vendor/getrandom/.cargo_vcs_info.json | 6 + .../vendor/hashbrown/.cargo-checksum.json | 2 +- .../vendor/hashbrown/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/heck/.cargo-checksum.json | 2 +- .../cbindgen/vendor/heck/.cargo_vcs_info.json | 6 + .../vendor/indexmap/.cargo-checksum.json | 2 +- .../vendor/indexmap/.cargo_vcs_info.json | 6 + .../vendor/indexmap/.github/workflows/ci.yml | 142 + .../cbindgen/vendor/indexmap/.rustfmt.toml | 1 + .../is_terminal_polyfill/.cargo-checksum.json | 2 +- .../is_terminal_polyfill/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/itoa/.cargo-checksum.json | 2 +- .../cbindgen/vendor/itoa/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/itoa/.github/FUNDING.yml | 1 + .../vendor/itoa/.github/workflows/ci.yml | 114 + .../vendor/lazy_static/.cargo-checksum.json | 2 +- .../vendor/lazy_static/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/libc/.cargo-checksum.json | 2 +- .../cbindgen/vendor/libc/.cargo_vcs_info.json | 6 + .../vendor/libc/.git-blame-ignore-revs | 6 + .../cbindgen/vendor/libc/.release-plz.toml | 49 + .../vendor/linux-raw-sys/.cargo-checksum.json | 2 +- .../vendor/linux-raw-sys/.cargo_vcs_info.json | 6 + .../vendor/lock_api/.cargo-checksum.json | 2 +- .../vendor/lock_api/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/log/.cargo-checksum.json | 2 +- .../cbindgen/vendor/log/.cargo_vcs_info.json | 6 + .../vendor/log/.github/workflows/main.yml | 146 + .../vendor/memchr/.cargo-checksum.json | 2 +- .../vendor/memchr/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/memchr/.ignore | 1 + .../vendor/memchr/.vim/coc-settings.json | 16 + .../vendor/once_cell/.cargo-checksum.json | 2 +- .../vendor/once_cell/.cargo_vcs_info.json | 6 + .../once_cell/.github/workflows/ci.yaml | 28 + .../once_cell_polyfill/.cargo-checksum.json | 2 +- .../once_cell_polyfill/.cargo_vcs_info.json | 6 + .../vendor/parking_lot/.cargo-checksum.json | 2 +- .../vendor/parking_lot/.cargo_vcs_info.json | 6 + .../.github/workflows/release-plz.yml | 53 + .../parking_lot/.github/workflows/rust.yml | 68 + .../parking_lot_core/.cargo-checksum.json | 2 +- .../parking_lot_core/.cargo_vcs_info.json | 6 + .../pretty_assertions/.cargo-checksum.json | 2 +- .../pretty_assertions/.cargo_vcs_info.json | 6 + .../vendor/proc-macro2/.cargo-checksum.json | 2 +- .../vendor/proc-macro2/.cargo_vcs_info.json | 6 + .../vendor/proc-macro2/.github/FUNDING.yml | 1 + .../proc-macro2/.github/workflows/ci.yml | 228 + .../vendor/quote/.cargo-checksum.json | 2 +- .../vendor/quote/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/quote/.github/FUNDING.yml | 1 + .../vendor/quote/.github/workflows/ci.yml | 110 + .../vendor/r-efi/.cargo-checksum.json | 2 +- .../vendor/r-efi/.cargo_vcs_info.json | 6 + .../r-efi/.github/workflows/publish.yml | 39 + .../r-efi/.github/workflows/rust-tests.yml | 125 + .../vendor/redox_syscall/.cargo-checksum.json | 2 +- .../vendor/redox_syscall/.cargo_vcs_info.json | 6 + .../vendor/redox_syscall/.gitlab-ci.yml | 16 + .../vendor/rustix/.cargo-checksum.json | 2 +- .../vendor/rustix/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/ryu/.cargo-checksum.json | 2 +- .../cbindgen/vendor/ryu/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/ryu/.github/FUNDING.yml | 1 + .../vendor/ryu/.github/workflows/ci.yml | 120 + .../vendor/scopeguard/.cargo-checksum.json | 2 +- .../vendor/scopeguard/.cargo_vcs_info.json | 6 + .../scopeguard/.github/workflows/ci.yaml | 49 + .../vendor/serde/.cargo-checksum.json | 2 +- .../vendor/serde/.cargo_vcs_info.json | 6 + .../vendor/serde_core/.cargo-checksum.json | 2 +- .../vendor/serde_core/.cargo_vcs_info.json | 6 + .../vendor/serde_derive/.cargo-checksum.json | 2 +- .../vendor/serde_derive/.cargo_vcs_info.json | 6 + .../vendor/serde_json/.cargo-checksum.json | 2 +- .../vendor/serde_json/.cargo_vcs_info.json | 6 + .../serde_json/.github/workflows/ci.yml | 156 + .../vendor/serde_spanned/.cargo-checksum.json | 2 +- .../vendor/serde_spanned/.cargo_vcs_info.json | 6 + .../vendor/serial_test/.cargo-checksum.json | 2 +- .../vendor/serial_test/.cargo_vcs_info.json | 6 + .../serial_test_derive/.cargo-checksum.json | 2 +- .../serial_test_derive/.cargo_vcs_info.json | 6 + .../vendor/smallvec/.cargo-checksum.json | 2 +- .../vendor/smallvec/.cargo_vcs_info.json | 6 + .../smallvec/.github/workflows/main.yml | 114 + .../vendor/strsim/.cargo-checksum.json | 2 +- .../vendor/strsim/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/strsim/.editorconfig | 13 + .../cbindgen/vendor/syn/.cargo-checksum.json | 2 +- .../cbindgen/vendor/syn/.cargo_vcs_info.json | 6 + .../vendor/tempfile/.cargo-checksum.json | 2 +- .../vendor/tempfile/.cargo_vcs_info.json | 6 + .../vendor/tempfile/.github/dependabot.yml | 10 + .../vendor/tempfile/.github/workflows/ci.yml | 107 + .../cbindgen/vendor/toml/.cargo-checksum.json | 2 +- .../cbindgen/vendor/toml/.cargo_vcs_info.json | 6 + .../vendor/toml_datetime/.cargo-checksum.json | 2 +- .../vendor/toml_datetime/.cargo_vcs_info.json | 6 + .../vendor/toml_parser/.cargo-checksum.json | 2 +- .../vendor/toml_parser/.cargo_vcs_info.json | 6 + .../vendor/toml_writer/.cargo-checksum.json | 2 +- .../vendor/toml_writer/.cargo_vcs_info.json | 6 + .../vendor/unicode-ident/.cargo-checksum.json | 2 +- .../vendor/unicode-ident/.cargo_vcs_info.json | 6 + .../vendor/unicode-ident/.github/FUNDING.yml | 1 + .../unicode-ident/.github/workflows/ci.yml | 110 + .../vendor/unicode-ident/tests/fst/.gitignore | 1 + .../vendor/utf8parse/.cargo-checksum.json | 2 +- .../vendor/utf8parse/.cargo_vcs_info.json | 6 + .../cbindgen/vendor/wasi/.cargo-checksum.json | 2 +- .../cbindgen/vendor/wasi/.cargo_vcs_info.json | 6 + .../vendor/wasi/.github/workflows/main.yml | 77 + .../cbindgen/vendor/wasi/.gitmodules | 0 .../vendor/windows-sys/.cargo-checksum.json | 2 +- .../vendor/windows-sys/.cargo_vcs_info.json | 6 + .../windows-targets/.cargo-checksum.json | 2 +- .../windows-targets/.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../windows_aarch64_msvc/.cargo-checksum.json | 2 +- .../windows_aarch64_msvc/.cargo_vcs_info.json | 6 + .../windows_i686_gnu/.cargo-checksum.json | 2 +- .../windows_i686_gnu/.cargo_vcs_info.json | 6 + .../windows_i686_gnullvm/.cargo-checksum.json | 2 +- .../windows_i686_gnullvm/.cargo_vcs_info.json | 6 + .../windows_i686_msvc/.cargo-checksum.json | 2 +- .../windows_i686_msvc/.cargo_vcs_info.json | 6 + .../windows_x86_64_gnu/.cargo-checksum.json | 2 +- .../windows_x86_64_gnu/.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../windows_x86_64_msvc/.cargo-checksum.json | 2 +- .../windows_x86_64_msvc/.cargo_vcs_info.json | 6 + .../vendor/winnow/.cargo-checksum.json | 2 +- .../vendor/winnow/.cargo_vcs_info.json | 6 + .../wit-bindgen-rt/.cargo-checksum.json | 2 +- .../wit-bindgen-rt/.cargo_vcs_info.json | 6 + .../vendor/yansi/.cargo-checksum.json | 2 +- .../vendor/yansi/.cargo_vcs_info.json | 6 + .../vendor/yansi/.github/workflows/ci.yml | 41 + .../vendor/yansi/.github/yansi-example.svg | 1 + .../vendor/yansi/.github/yansi-logo.png | Bin 0 -> 37427 bytes .../dump_syms/.cargo-checksum.json | 2 +- .../dump_syms/.cargo_vcs_info.json | 6 + .../dump_syms/.github/dependabot.yml | 7 + .../dump_syms/.github/workflows/ci.yml | 87 + .../dump_syms/.github/workflows/release.yml | 301 + .../vendor/addr2line/.cargo-checksum.json | 2 +- .../vendor/addr2line/.cargo_vcs_info.json | 6 + .../vendor/adler2/.cargo-checksum.json | 2 +- .../vendor/adler2/.cargo_vcs_info.json | 6 + .../vendor/ahash/.cargo-checksum.json | 2 +- .../vendor/ahash/.cargo_vcs_info.json | 6 + .../vendor/ahash/.github/workflows/rust.yml | 156 + .../vendor/aho-corasick/.cargo-checksum.json | 2 +- .../vendor/aho-corasick/.cargo_vcs_info.json | 6 + .../aho-corasick/.github/workflows/ci.yml | 148 + .../aho-corasick/.vim/coc-settings.json | 12 + .../allocator-api2/.cargo-checksum.json | 2 +- .../allocator-api2/.cargo_vcs_info.json | 6 + .../vendor/anstream/.cargo-checksum.json | 2 +- .../vendor/anstream/.cargo_vcs_info.json | 6 + .../vendor/anstyle-parse/.cargo-checksum.json | 2 +- .../vendor/anstyle-parse/.cargo_vcs_info.json | 6 + .../vendor/anstyle-query/.cargo-checksum.json | 2 +- .../vendor/anstyle-query/.cargo_vcs_info.json | 6 + .../anstyle-wincon/.cargo-checksum.json | 2 +- .../anstyle-wincon/.cargo_vcs_info.json | 6 + .../vendor/anstyle/.cargo-checksum.json | 2 +- .../vendor/anstyle/.cargo_vcs_info.json | 6 + .../vendor/anyhow/.cargo-checksum.json | 2 +- .../vendor/anyhow/.cargo_vcs_info.json | 6 + .../vendor/anyhow/.github/FUNDING.yml | 1 + .../vendor/anyhow/.github/workflows/ci.yml | 148 + .../vendor/arbitrary/.cargo-checksum.json | 2 +- .../vendor/arbitrary/.cargo_vcs_info.json | 6 + .../arbitrary/.github/workflows/rust.yml | 63 + .../vendor/arrayvec/.cargo-checksum.json | 2 +- .../vendor/arrayvec/.cargo_vcs_info.json | 6 + .../vendor/arrayvec/.github/workflows/ci.yml | 92 + .../vendor/autocfg/.cargo-checksum.json | 2 +- .../vendor/autocfg/.cargo_vcs_info.json | 6 + .../vendor/backtrace/.cargo-checksum.json | 2 +- .../vendor/backtrace/.cargo_vcs_info.json | 6 + .../actions/build-with-patched-std/action.yml | 50 + .../report-code-size-changes/action.yml | 111 + .../.github/workflows/check-binary-size.yml | 159 + .../backtrace/.github/workflows/main.yml | 274 + .../backtrace/.github/workflows/publish.yml | 52 + .../vendor/base64/.cargo-checksum.json | 2 +- .../vendor/base64/.cargo_vcs_info.json | 6 + .../vendor/base64/.circleci/config.yml | 135 + .../ISSUE_TEMPLATE/general-purpose-issue.md | 21 + .../vendor/binary-merge/.cargo-checksum.json | 2 +- .../vendor/binary-merge/.cargo_vcs_info.json | 5 + .../binary-merge/.github/workflows/rust.yml | 26 + .../bitflags-1.3.2/.cargo-checksum.json | 2 +- .../bitflags-1.3.2/.cargo_vcs_info.json | 5 + .../bitflags-1.3.2/.github/workflows/rust.yml | 56 + .../tests/compile-fail/.gitignore | 1 + .../vendor/bitflags/.cargo-checksum.json | 2 +- .../vendor/bitflags/.cargo_vcs_info.json | 6 + .../vendor/block-buffer/.cargo-checksum.json | 2 +- .../vendor/block-buffer/.cargo_vcs_info.json | 6 + .../vendor/brownstone/.cargo-checksum.json | 2 +- .../vendor/brownstone/.cargo_vcs_info.json | 6 + .../vendor/bumpalo/.cargo-checksum.json | 2 +- .../vendor/bumpalo/.cargo_vcs_info.json | 6 + .../vendor/byteorder/.cargo-checksum.json | 2 +- .../vendor/byteorder/.cargo_vcs_info.json | 6 + .../vendor/byteorder/.github/workflows/ci.yml | 183 + .../vendor/bytes/.cargo-checksum.json | 2 +- .../vendor/bytes/.cargo_vcs_info.json | 6 + .../vendor/bytes/.github/workflows/ci.yml | 211 + .../dump_syms/vendor/cab/.cargo-checksum.json | 2 +- .../dump_syms/vendor/cab/.cargo_vcs_info.json | 6 + .../vendor/cab/.github/workflows/tests.yml | 43 + .../dump_syms/vendor/cc/.cargo-checksum.json | 2 +- .../dump_syms/vendor/cc/.cargo_vcs_info.json | 6 + .../vendor/cfg-if/.cargo-checksum.json | 2 +- .../vendor/cfg-if/.cargo_vcs_info.json | 6 + .../vendor/cfg-if/.github/dependabot.yml | 14 + .../vendor/cfg-if/.github/workflows/main.yaml | 36 + .../cfg-if/.github/workflows/publish.yaml | 25 + .../vendor/cfg_aliases/.cargo-checksum.json | 2 +- .../vendor/cfg_aliases/.cargo_vcs_info.json | 6 + .../vendor/clap/.cargo-checksum.json | 2 +- .../vendor/clap/.cargo_vcs_info.json | 6 + .../vendor/clap_builder/.cargo-checksum.json | 2 +- .../vendor/clap_builder/.cargo_vcs_info.json | 6 + .../vendor/clap_lex/.cargo-checksum.json | 2 +- .../vendor/clap_lex/.cargo_vcs_info.json | 6 + .../vendor/colorchoice/.cargo-checksum.json | 2 +- .../vendor/colorchoice/.cargo_vcs_info.json | 6 + .../vendor/cpp_demangle/.cargo-checksum.json | 2 +- .../vendor/cpp_demangle/.cargo_vcs_info.json | 6 + .../cpp_demangle/.github/dependabot.yml | 7 + .../cpp_demangle/.github/workflows/ci.yml | 57 + .../vendor/cpufeatures/.cargo-checksum.json | 2 +- .../vendor/cpufeatures/.cargo_vcs_info.json | 6 + .../vendor/crc-catalog/.cargo-checksum.json | 2 +- .../vendor/crc-catalog/.cargo_vcs_info.json | 6 + .../crc-catalog/.github/workflows/rust.yaml | 51 + .../dump_syms/vendor/crc/.cargo-checksum.json | 2 +- .../dump_syms/vendor/crc/.cargo_vcs_info.json | 6 + .../vendor/crc/.github/workflows/ci.yaml | 49 + .../vendor/crc32fast/.cargo-checksum.json | 2 +- .../vendor/crc32fast/.cargo_vcs_info.json | 6 + .../vendor/crc32fast/.github/workflows/ci.yml | 125 + .../crossbeam-channel/.cargo-checksum.json | 2 +- .../crossbeam-channel/.cargo_vcs_info.json | 6 + .../crossbeam-deque/.cargo-checksum.json | 2 +- .../crossbeam-deque/.cargo_vcs_info.json | 6 + .../crossbeam-epoch/.cargo-checksum.json | 2 +- .../crossbeam-epoch/.cargo_vcs_info.json | 6 + .../crossbeam-queue/.cargo-checksum.json | 2 +- .../crossbeam-queue/.cargo_vcs_info.json | 6 + .../crossbeam-utils/.cargo-checksum.json | 2 +- .../crossbeam-utils/.cargo_vcs_info.json | 6 + .../vendor/crossbeam/.cargo-checksum.json | 2 +- .../vendor/crossbeam/.cargo_vcs_info.json | 6 + .../vendor/crypto-common/.cargo-checksum.json | 2 +- .../vendor/crypto-common/.cargo_vcs_info.json | 6 + .../vendor/debugid/.cargo-checksum.json | 2 +- .../vendor/deranged/.cargo-checksum.json | 2 +- .../vendor/deranged/.cargo_vcs_info.json | 6 + .../derive_arbitrary/.cargo-checksum.json | 2 +- .../derive_arbitrary/.cargo_vcs_info.json | 6 + .../vendor/digest/.cargo-checksum.json | 2 +- .../vendor/digest/.cargo_vcs_info.json | 6 + .../vendor/dirs-sys/.cargo-checksum.json | 2 +- .../vendor/dirs-sys/.cargo_vcs_info.json | 6 + .../vendor/dirs-sys/.github/workflows/ci.yml | 27 + .../vendor/dirs/.cargo-checksum.json | 2 +- .../vendor/dirs/.cargo_vcs_info.json | 6 + .../vendor/dirs/.github/workflows/rust.yml | 27 + .../vendor/displaydoc/.cargo-checksum.json | 2 +- .../vendor/displaydoc/.cargo_vcs_info.json | 6 + .../displaydoc/.github/workflows/ci.yml | 120 + .../vendor/elementtree/.cargo-checksum.json | 2 +- .../vendor/elementtree/.cargo_vcs_info.json | 6 + .../elementtree/.github/workflows/clippy.yml | 18 + .../elementtree/.github/workflows/rustfmt.yml | 18 + .../elementtree/.github/workflows/tests.yml | 32 + .../vendor/elsa/.cargo-checksum.json | 2 +- .../vendor/elsa/.cargo_vcs_info.json | 6 + .../vendor/elsa/.github/workflows/rust.yml | 22 + .../dump_syms/vendor/elsa/.travis.yml | 16 + .../vendor/equivalent/.cargo-checksum.json | 2 +- .../vendor/equivalent/.cargo_vcs_info.json | 6 + .../equivalent/.github/workflows/ci.yml | 48 + .../vendor/errno/.cargo-checksum.json | 2 +- .../vendor/errno/.cargo_vcs_info.json | 6 + .../vendor/errno/.github/dependabot.yml | 10 + .../vendor/errno/.github/workflows/main.yml | 89 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 5 + .../.circleci/config.yml | 60 + .../fallible-iterator/.cargo-checksum.json | 2 +- .../fallible-iterator/.cargo_vcs_info.json | 6 + .../.github/workflows/rust.yml | 30 + .../vendor/fastrand/.cargo-checksum.json | 2 +- .../vendor/fastrand/.cargo_vcs_info.json | 6 + .../vendor/flate2/.cargo-checksum.json | 2 +- .../vendor/flate2/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/fnv/.cargo-checksum.json | 2 +- .../dump_syms/vendor/fnv/.cargo_vcs_info.json | 5 + .../dump_syms/vendor/fnv/.travis.yml | 8 + .../vendor/foldhash/.cargo-checksum.json | 2 +- .../vendor/foldhash/.cargo_vcs_info.json | 6 + .../form_urlencoded/.cargo-checksum.json | 2 +- .../form_urlencoded/.cargo_vcs_info.json | 6 + .../futures-channel/.cargo-checksum.json | 2 +- .../futures-channel/.cargo_vcs_info.json | 6 + .../vendor/futures-core/.cargo-checksum.json | 2 +- .../vendor/futures-core/.cargo_vcs_info.json | 6 + .../futures-executor/.cargo-checksum.json | 2 +- .../futures-executor/.cargo_vcs_info.json | 6 + .../vendor/futures-io/.cargo-checksum.json | 2 +- .../vendor/futures-io/.cargo_vcs_info.json | 6 + .../vendor/futures-macro/.cargo-checksum.json | 2 +- .../vendor/futures-macro/.cargo_vcs_info.json | 6 + .../vendor/futures-sink/.cargo-checksum.json | 2 +- .../vendor/futures-sink/.cargo_vcs_info.json | 6 + .../vendor/futures-task/.cargo-checksum.json | 2 +- .../vendor/futures-task/.cargo_vcs_info.json | 6 + .../vendor/futures-util/.cargo-checksum.json | 2 +- .../vendor/futures-util/.cargo_vcs_info.json | 6 + .../vendor/futures/.cargo-checksum.json | 2 +- .../vendor/futures/.cargo_vcs_info.json | 6 + .../vendor/fxhash/.cargo-checksum.json | 2 +- .../vendor/generic-array/.cargo-checksum.json | 2 +- .../vendor/generic-array/.cargo_vcs_info.json | 6 + .../getrandom-0.2.16/.cargo-checksum.json | 2 +- .../getrandom-0.2.16/.cargo_vcs_info.json | 6 + .../vendor/getrandom/.cargo-checksum.json | 2 +- .../vendor/getrandom/.cargo_vcs_info.json | 6 + .../vendor/gimli/.cargo-checksum.json | 2 +- .../vendor/gimli/.cargo_vcs_info.json | 6 + .../vendor/goblin/.cargo-checksum.json | 2 +- .../vendor/goblin/.cargo_vcs_info.json | 6 + .../hashbrown-0.14.5/.cargo-checksum.json | 2 +- .../hashbrown-0.14.5/.cargo_vcs_info.json | 6 + .../vendor/hashbrown/.cargo-checksum.json | 2 +- .../vendor/hashbrown/.cargo_vcs_info.json | 6 + .../vendor/hermit-abi/.cargo-checksum.json | 2 +- .../vendor/hermit-abi/.cargo_vcs_info.json | 6 + .../http-body-util/.cargo-checksum.json | 2 +- .../http-body-util/.cargo_vcs_info.json | 7 + .../vendor/http-body/.cargo-checksum.json | 2 +- .../vendor/http-body/.cargo_vcs_info.json | 6 + .../vendor/http/.cargo-checksum.json | 2 +- .../vendor/http/.cargo_vcs_info.json | 6 + .../vendor/http/.github/workflows/ci.yml | 143 + .../vendor/httparse/.cargo-checksum.json | 2 +- .../vendor/httparse/.cargo_vcs_info.json | 6 + .../vendor/httparse/.github/FUNDING.yml | 1 + .../vendor/httparse/.github/workflows/ci.yml | 281 + .../httparse/.github/workflows/cibench.yml | 123 + .../httparse/.github/workflows/cifuzz.yml | 26 + .../vendor/hyper-rustls/.cargo-checksum.json | 2 +- .../vendor/hyper-rustls/.cargo_vcs_info.json | 6 + .../hyper-rustls/.github/dependabot.yml | 11 + .../hyper-rustls/.github/workflows/build.yml | 182 + .../vendor/hyper-rustls/.rustfmt.toml | 1 + .../vendor/hyper-util/.cargo-checksum.json | 2 +- .../vendor/hyper-util/.cargo_vcs_info.json | 6 + .../hyper-util/.github/workflows/CI.yml | 125 + .../vendor/hyper/.cargo-checksum.json | 2 +- .../vendor/hyper/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/hyper/README.md | 44 + .../icu_collections/.cargo-checksum.json | 2 +- .../icu_collections/.cargo_vcs_info.json | 6 + .../icu_locale_core/.cargo-checksum.json | 2 +- .../icu_locale_core/.cargo_vcs_info.json | 6 + .../icu_normalizer/.cargo-checksum.json | 2 +- .../icu_normalizer/.cargo_vcs_info.json | 6 + .../icu_normalizer_data/.cargo-checksum.json | 2 +- .../icu_normalizer_data/.cargo_vcs_info.json | 6 + .../icu_properties/.cargo-checksum.json | 2 +- .../icu_properties/.cargo_vcs_info.json | 6 + .../icu_properties_data/.cargo-checksum.json | 2 +- .../icu_properties_data/.cargo_vcs_info.json | 6 + .../vendor/icu_provider/.cargo-checksum.json | 2 +- .../vendor/icu_provider/.cargo_vcs_info.json | 6 + .../vendor/idna/.cargo-checksum.json | 2 +- .../vendor/idna/.cargo_vcs_info.json | 6 + .../vendor/idna_adapter/.cargo-checksum.json | 2 +- .../vendor/idna_adapter/.cargo_vcs_info.json | 6 + .../vendor/indent_write/.cargo-checksum.json | 2 +- .../vendor/indent_write/.cargo_vcs_info.json | 5 + .../vendor/indexmap/.cargo-checksum.json | 2 +- .../vendor/indexmap/.cargo_vcs_info.json | 6 + .../vendor/indexmap/.github/workflows/ci.yml | 159 + .../dump_syms/vendor/indexmap/.rustfmt.toml | 1 + .../inplace-vec-builder/.cargo-checksum.json | 2 +- .../inplace-vec-builder/.cargo_vcs_info.json | 5 + .../.github/workflows/rust.yml | 33 + .../vendor/ipnet/.cargo-checksum.json | 2 +- .../vendor/ipnet/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/ipnet/.travis.yml | 10 + .../vendor/iri-string/.cargo-checksum.json | 2 +- .../vendor/iri-string/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/iri-string/.editorconfig | 16 + .../dump_syms/vendor/iri-string/.gitmodules | 3 + .../is_terminal_polyfill/.cargo-checksum.json | 2 +- .../is_terminal_polyfill/.cargo_vcs_info.json | 6 + .../vendor/itoa/.cargo-checksum.json | 2 +- .../vendor/itoa/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/itoa/.github/FUNDING.yml | 1 + .../vendor/itoa/.github/workflows/ci.yml | 114 + .../vendor/jobserver/.cargo-checksum.json | 2 +- .../vendor/jobserver/.cargo_vcs_info.json | 6 + .../.github/actions/compile-make/action.yml | 36 + .../vendor/jobserver/.github/dependabot.yml | 8 + .../jobserver/.github/workflows/main.yml | 110 + .../jobserver/.github/workflows/publish.yml | 15 + .../vendor/joinery/.cargo-checksum.json | 2 +- .../vendor/joinery/.cargo_vcs_info.json | 5 + .../dump_syms/vendor/joinery/.travis.yml | 23 + .../vendor/js-sys/.cargo-checksum.json | 2 +- .../vendor/js-sys/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/js-sys/README.md | 7 + .../vendor/lazy_static/.cargo-checksum.json | 2 +- .../vendor/lazy_static/.cargo_vcs_info.json | 6 + .../vendor/leb128/.cargo-checksum.json | 2 +- .../vendor/leb128/.cargo_vcs_info.json | 5 + .../vendor/leb128/.github/dependabot.yml | 7 + .../vendor/libc/.cargo-checksum.json | 2 +- .../vendor/libc/.cargo_vcs_info.json | 6 + .../vendor/libc/.git-blame-ignore-revs | 6 + .../dump_syms/vendor/libc/.release-plz.toml | 49 + .../vendor/libredox/.cargo-checksum.json | 2 +- .../vendor/libredox/.cargo_vcs_info.json | 6 + .../vendor/linux-raw-sys/.cargo-checksum.json | 2 +- .../vendor/linux-raw-sys/.cargo_vcs_info.json | 6 + .../vendor/litemap/.cargo-checksum.json | 2 +- .../vendor/litemap/.cargo_vcs_info.json | 6 + .../vendor/lock_api/.cargo-checksum.json | 2 +- .../vendor/lock_api/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/log/.cargo-checksum.json | 2 +- .../dump_syms/vendor/log/.cargo_vcs_info.json | 6 + .../vendor/log/.github/workflows/main.yml | 146 + .../vendor/lru-slab/.cargo-checksum.json | 2 +- .../vendor/lzma-rs/.cargo-checksum.json | 2 +- .../vendor/lzma-rs/.cargo_vcs_info.json | 6 + .../vendor/lzxd/.cargo-checksum.json | 2 +- .../vendor/lzxd/.cargo_vcs_info.json | 6 + .../vendor/lzxd/.github/workflows/ci.yaml | 53 + .../vendor/maybe-owned/.cargo-checksum.json | 2 +- .../vendor/maybe-owned/.cargo_vcs_info.json | 5 + .../dump_syms/vendor/maybe-owned/.travis.yml | 13 + .../vendor/memchr/.cargo-checksum.json | 2 +- .../vendor/memchr/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/memchr/.ignore | 1 + .../vendor/memchr/.vim/coc-settings.json | 16 + .../vendor/memmap2/.cargo-checksum.json | 2 +- .../vendor/memmap2/.cargo_vcs_info.json | 6 + .../vendor/memmap2/.github/workflows/main.yml | 129 + .../minimal-lexical/.cargo-checksum.json | 2 +- .../minimal-lexical/.cargo_vcs_info.json | 5 + .../.github/ISSUE_TEMPLATE/bug_report.md | 41 + .../.github/ISSUE_TEMPLATE/custom.md | 21 + .../.github/ISSUE_TEMPLATE/documentation.md | 16 + .../.github/ISSUE_TEMPLATE/feature_request.md | 27 + .../.github/ISSUE_TEMPLATE/question.md | 11 + .../.github/PULL_REQUEST_TEMPLATE/bug_fix.md | 27 + .../.github/PULL_REQUEST_TEMPLATE/custom.md | 22 + .../PULL_REQUEST_TEMPLATE/documentation.md | 21 + .../.github/workflows/Cross.yml | 90 + .../.github/workflows/Features.yml | 23 + .../minimal-lexical/.github/workflows/OSX.yml | 40 + .../.github/workflows/Simple.yml | 41 + .../.github/workflows/Valgrind.yml | 24 + .../vendor/minimal-lexical/.gitmodules | 4 + .../vendor/miniz_oxide/.cargo-checksum.json | 2 +- .../vendor/miniz_oxide/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/mio/.cargo-checksum.json | 2 +- .../dump_syms/vendor/mio/.cargo_vcs_info.json | 6 + .../msvc-demangler/.cargo-checksum.json | 2 +- .../msvc-demangler/.cargo_vcs_info.json | 6 + .../msvc-demangler/.github/workflows/rust.yml | 26 + .../vendor/msvc-demangler/.travis.yml | 14 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../vendor/new_debug_unreachable/.travis.yml | 1 + .../vendor/nom-supreme/.cargo-checksum.json | 2 +- .../vendor/nom-supreme/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/nom/.cargo-checksum.json | 2 +- .../dump_syms/vendor/nom/.cargo_vcs_info.json | 6 + .../vendor/num-conv/.cargo-checksum.json | 2 +- .../vendor/num-conv/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/num-conv/README.md | 5 + .../vendor/num_cpus/.cargo-checksum.json | 2 +- .../vendor/num_cpus/.cargo_vcs_info.json | 6 + .../vendor/num_cpus/.github/FUNDING.yml | 2 + .../vendor/num_cpus/.github/workflows/ci.yml | 160 + .../vendor/num_threads/.cargo-checksum.json | 2 +- .../vendor/num_threads/.cargo_vcs_info.json | 6 + .../vendor/object/.cargo-checksum.json | 2 +- .../vendor/object/.cargo_vcs_info.json | 6 + .../vendor/once_cell/.cargo-checksum.json | 2 +- .../vendor/once_cell/.cargo_vcs_info.json | 6 + .../once_cell/.github/workflows/ci.yaml | 28 + .../once_cell_polyfill/.cargo-checksum.json | 2 +- .../once_cell_polyfill/.cargo_vcs_info.json | 6 + .../vendor/option-ext/.cargo-checksum.json | 2 +- .../vendor/option-ext/.cargo_vcs_info.json | 6 + .../vendor/parking_lot/.cargo-checksum.json | 2 +- .../vendor/parking_lot/.cargo_vcs_info.json | 6 + .../.github/workflows/release-plz.yml | 53 + .../parking_lot/.github/workflows/rust.yml | 68 + .../parking_lot_core/.cargo-checksum.json | 2 +- .../parking_lot_core/.cargo_vcs_info.json | 6 + .../vendor/pdb-addr2line/.cargo-checksum.json | 2 +- .../vendor/pdb-addr2line/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/pdb/.cargo-checksum.json | 2 +- .../dump_syms/vendor/pdb/.cargo_vcs_info.json | 6 + .../vendor/pdb/.github/workflows/ci.yml | 70 + .../percent-encoding/.cargo-checksum.json | 2 +- .../percent-encoding/.cargo_vcs_info.json | 6 + .../vendor/phf_shared/.cargo-checksum.json | 2 +- .../vendor/phf_shared/.cargo_vcs_info.json | 6 + .../pin-project-lite/.cargo-checksum.json | 2 +- .../pin-project-lite/.cargo_vcs_info.json | 6 + .../tests/expand/.rustfmt.toml | 1 + .../vendor/pin-utils/.cargo-checksum.json | 2 +- .../vendor/pin-utils/.cargo_vcs_info.json | 5 + .../dump_syms/vendor/pin-utils/.rustfmt.toml | 2 + .../dump_syms/vendor/pin-utils/.travis.yml | 41 + .../vendor/pkg-config/.cargo-checksum.json | 2 +- .../vendor/pkg-config/.cargo_vcs_info.json | 6 + .../pkg-config/.github/workflows/ci.yml | 41 + .../vendor/plain/.cargo-checksum.json | 2 +- .../dump_syms/vendor/plain/.travis.yml | 6 + .../vendor/potential_utf/.cargo-checksum.json | 2 +- .../vendor/potential_utf/.cargo_vcs_info.json | 6 + .../vendor/powerfmt/.cargo-checksum.json | 2 +- .../vendor/powerfmt/.cargo_vcs_info.json | 6 + .../vendor/ppv-lite86/.cargo-checksum.json | 2 +- .../vendor/ppv-lite86/.cargo_vcs_info.json | 6 + .../precomputed-hash/.cargo-checksum.json | 2 +- .../vendor/proc-macro2/.cargo-checksum.json | 2 +- .../vendor/proc-macro2/.cargo_vcs_info.json | 6 + .../vendor/proc-macro2/.github/FUNDING.yml | 1 + .../proc-macro2/.github/workflows/ci.yml | 228 + .../vendor/quinn-proto/.cargo-checksum.json | 2 +- .../vendor/quinn-proto/.cargo_vcs_info.json | 6 + .../vendor/quinn-udp/.cargo-checksum.json | 2 +- .../vendor/quinn-udp/.cargo_vcs_info.json | 6 + .../vendor/quinn/.cargo-checksum.json | 2 +- .../vendor/quinn/.cargo_vcs_info.json | 6 + .../vendor/quote/.cargo-checksum.json | 2 +- .../vendor/quote/.cargo_vcs_info.json | 6 + .../vendor/quote/.github/FUNDING.yml | 1 + .../vendor/quote/.github/workflows/ci.yml | 110 + .../vendor/r-efi/.cargo-checksum.json | 2 +- .../vendor/r-efi/.cargo_vcs_info.json | 6 + .../r-efi/.github/workflows/publish.yml | 70 + .../r-efi/.github/workflows/rust-tests.yml | 125 + .../vendor/rand/.cargo-checksum.json | 2 +- .../vendor/rand/.cargo_vcs_info.json | 6 + .../vendor/rand_chacha/.cargo-checksum.json | 2 +- .../vendor/rand_chacha/.cargo_vcs_info.json | 6 + .../vendor/rand_core/.cargo-checksum.json | 2 +- .../vendor/rand_core/.cargo_vcs_info.json | 6 + .../range-collections/.cargo-checksum.json | 2 +- .../range-collections/.cargo_vcs_info.json | 5 + .../.github/workflows/rust.yml | 26 + .../vendor/range-collections/.travis.yml | 12 + .../vendor/redox_syscall/.cargo-checksum.json | 2 +- .../vendor/redox_syscall/.cargo_vcs_info.json | 6 + .../vendor/redox_syscall/.gitlab-ci.yml | 16 + .../vendor/redox_users/.cargo-checksum.json | 2 +- .../vendor/redox_users/.cargo_vcs_info.json | 6 + .../vendor/redox_users/.gitlab-ci.yml | 32 + .../vendor/redox_users/.rustfmt.toml | 12 + .../dump_syms/vendor/redox_users/.travis.yml | 6 + .../regex-automata/.cargo-checksum.json | 2 +- .../regex-automata/.cargo_vcs_info.json | 6 + .../vendor/regex-syntax/.cargo-checksum.json | 2 +- .../vendor/regex-syntax/.cargo_vcs_info.json | 6 + .../vendor/regex/.cargo-checksum.json | 2 +- .../vendor/regex/.cargo_vcs_info.json | 6 + .../vendor/regex/.vim/coc-settings.json | 6 + .../regex/record/old-bench-log/.gitignore | 1 + .../vendor/reqwest/.cargo-checksum.json | 2 +- .../vendor/reqwest/.cargo_vcs_info.json | 6 + .../vendor/reqwest/.github/FUNDING.yml | 1 + .../vendor/reqwest/.github/dependabot.yml | 19 + .../vendor/reqwest/.github/workflows/ci.yml | 375 + .../vendor/ring/.cargo-checksum.json | 2 +- .../vendor/ring/.cargo_vcs_info.json | 7 + .../dump_syms/vendor/ring/README.md | 54 + .../rustc-demangle/.cargo-checksum.json | 2 +- .../rustc-demangle/.cargo_vcs_info.json | 6 + .../rustc-demangle/.github/dependabot.yml | 8 + .../rustc-demangle/.github/workflows/main.yml | 56 + .../vendor/rustc-hash/.cargo-checksum.json | 2 +- .../vendor/rustc-hash/.cargo_vcs_info.json | 6 + .../rustc-hash/.github/workflows/rust.yml | 73 + .../vendor/rustix/.cargo-checksum.json | 2 +- .../vendor/rustix/.cargo_vcs_info.json | 6 + .../rustls-pki-types/.cargo-checksum.json | 2 +- .../rustls-pki-types/.cargo_vcs_info.json | 6 + .../rustls-pki-types/.github/workflows/ci.yml | 223 + .../vendor/rustls-webpki/.cargo-checksum.json | 2 +- .../vendor/rustls-webpki/.cargo_vcs_info.json | 6 + .../vendor/rustls/.cargo-checksum.json | 2 +- .../vendor/rustls/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/rustls/.clippy.toml | 6 + .../vendor/rustversion/.cargo-checksum.json | 2 +- .../vendor/rustversion/.cargo_vcs_info.json | 6 + .../vendor/rustversion/.github/FUNDING.yml | 1 + .../rustversion/.github/workflows/ci.yml | 117 + .../dump_syms/vendor/ryu/.cargo-checksum.json | 2 +- .../dump_syms/vendor/ryu/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/ryu/.github/FUNDING.yml | 1 + .../vendor/ryu/.github/workflows/ci.yml | 120 + .../vendor/scopeguard/.cargo-checksum.json | 2 +- .../vendor/scopeguard/.cargo_vcs_info.json | 6 + .../scopeguard/.github/workflows/ci.yaml | 49 + .../vendor/scroll-0.11.0/.cargo-checksum.json | 2 +- .../vendor/scroll-0.11.0/.cargo_vcs_info.json | 6 + .../vendor/scroll-0.11.0/.travis.yml | 12 + .../vendor/scroll/.cargo-checksum.json | 2 +- .../vendor/scroll/.cargo_vcs_info.json | 6 + .../vendor/scroll_derive/.cargo-checksum.json | 2 +- .../vendor/scroll_derive/.cargo_vcs_info.json | 6 + .../vendor/semver/.cargo-checksum.json | 2 +- .../vendor/semver/.cargo_vcs_info.json | 6 + .../vendor/semver/.github/FUNDING.yml | 1 + .../vendor/semver/.github/workflows/ci.yml | 140 + .../vendor/serde/.cargo-checksum.json | 2 +- .../vendor/serde/.cargo_vcs_info.json | 6 + .../vendor/serde_derive/.cargo-checksum.json | 2 +- .../vendor/serde_derive/.cargo_vcs_info.json | 6 + .../vendor/serde_json/.cargo-checksum.json | 2 +- .../vendor/serde_json/.cargo_vcs_info.json | 6 + .../serde_json/.github/workflows/ci.yml | 156 + .../serde_urlencoded/.cargo-checksum.json | 2 +- .../serde_urlencoded/.cargo_vcs_info.json | 6 + .../serde_urlencoded/.github/workflows/CI.yml | 65 + .../vendor/sha2/.cargo-checksum.json | 2 +- .../vendor/sha2/.cargo_vcs_info.json | 6 + .../vendor/shlex/.cargo-checksum.json | 2 +- .../vendor/shlex/.cargo_vcs_info.json | 6 + .../vendor/shlex/.github/workflows/test.yml | 36 + .../vendor/simd-adler32/.cargo-checksum.json | 2 +- .../vendor/simd-adler32/.cargo_vcs_info.json | 6 + .../simd-adler32/.github/workflows/build.yaml | 173 + .../simd-adler32/.github/workflows/fuzz.yaml | 59 + .../.github/workflows/publish.yaml | 35 + .../vendor/simd-adler32/.rustfmt.toml | 2 + .../vendor/simplelog/.cargo-checksum.json | 2 +- .../vendor/simplelog/.cargo_vcs_info.json | 6 + .../vendor/siphasher/.cargo-checksum.json | 2 +- .../vendor/siphasher/.cargo_vcs_info.json | 6 + .../vendor/siphasher/.github/dependabot.yml | 8 + .../vendor/slab/.cargo-checksum.json | 2 +- .../vendor/slab/.cargo_vcs_info.json | 6 + .../vendor/smallvec/.cargo-checksum.json | 2 +- .../vendor/smallvec/.cargo_vcs_info.json | 6 + .../smallvec/.github/workflows/main.yml | 114 + .../vendor/socket2/.cargo-checksum.json | 2 +- .../vendor/socket2/.cargo_vcs_info.json | 6 + .../stable_deref_trait/.cargo-checksum.json | 2 +- .../stable_deref_trait/.cargo_vcs_info.json | 5 + .../vendor/string_cache/.cargo-checksum.json | 2 +- .../vendor/string_cache/.cargo_vcs_info.json | 6 + .../string_cache/.github/workflows/ci.yml | 65 + .../vendor/strsim/.cargo-checksum.json | 2 +- .../vendor/strsim/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/strsim/.editorconfig | 13 + .../vendor/subtle/.cargo-checksum.json | 2 +- .../vendor/subtle/.cargo_vcs_info.json | 6 + .../vendor/subtle/.github/workflows/test.yml | 64 + .../vendor/symbolic-cfi/.cargo-checksum.json | 2 +- .../symbolic-common/.cargo-checksum.json | 2 +- .../symbolic-debuginfo/.cargo-checksum.json | 2 +- .../symbolic-demangle/.cargo-checksum.json | 2 +- .../vendor/symbolic-ppdb/.cargo-checksum.json | 2 +- .../vendor/symbolic/.cargo-checksum.json | 2 +- .../dump_syms/vendor/syn/.cargo-checksum.json | 2 +- .../dump_syms/vendor/syn/.cargo_vcs_info.json | 6 + .../vendor/sync_wrapper/.cargo-checksum.json | 2 +- .../vendor/sync_wrapper/.cargo_vcs_info.json | 6 + .../vendor/synstructure/.cargo-checksum.json | 2 +- .../vendor/synstructure/.cargo_vcs_info.json | 6 + .../vendor/tempfile/.cargo-checksum.json | 2 +- .../vendor/tempfile/.cargo_vcs_info.json | 6 + .../vendor/tempfile/.github/dependabot.yml | 10 + .../vendor/tempfile/.github/workflows/ci.yml | 107 + .../vendor/termcolor/.cargo-checksum.json | 2 +- .../vendor/termcolor/.cargo_vcs_info.json | 6 + .../vendor/termcolor/.github/workflows/ci.yml | 64 + .../thiserror-1.0.69/.cargo-checksum.json | 2 +- .../thiserror-1.0.69/.cargo_vcs_info.json | 6 + .../thiserror-1.0.69/.github/FUNDING.yml | 1 + .../thiserror-1.0.69/.github/workflows/ci.yml | 112 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../thiserror-impl/.cargo-checksum.json | 2 +- .../thiserror-impl/.cargo_vcs_info.json | 6 + .../vendor/thiserror/.cargo-checksum.json | 2 +- .../vendor/thiserror/.cargo_vcs_info.json | 6 + .../vendor/thiserror/.github/FUNDING.yml | 1 + .../vendor/thiserror/.github/workflows/ci.yml | 128 + .../vendor/time-core/.cargo-checksum.json | 2 +- .../vendor/time-core/.cargo_vcs_info.json | 6 + .../vendor/time-macros/.cargo-checksum.json | 2 +- .../vendor/time-macros/.cargo_vcs_info.json | 6 + .../vendor/time/.cargo-checksum.json | 2 +- .../vendor/time/.cargo_vcs_info.json | 6 + .../vendor/tinystr/.cargo-checksum.json | 2 +- .../vendor/tinystr/.cargo_vcs_info.json | 6 + .../vendor/tinyvec/.cargo-checksum.json | 2 +- .../vendor/tinyvec/.cargo_vcs_info.json | 6 + .../tinyvec_macros/.cargo-checksum.json | 2 +- .../tinyvec_macros/.cargo_vcs_info.json | 6 + .../vendor/tokio-rustls/.cargo-checksum.json | 2 +- .../vendor/tokio-rustls/.cargo_vcs_info.json | 6 + .../vendor/tokio/.cargo-checksum.json | 2 +- .../vendor/tokio/.cargo_vcs_info.json | 6 + .../vendor/tower-http/.cargo-checksum.json | 2 +- .../vendor/tower-http/.cargo_vcs_info.json | 6 + .../vendor/tower-layer/.cargo-checksum.json | 2 +- .../vendor/tower-layer/.cargo_vcs_info.json | 6 + .../vendor/tower-service/.cargo-checksum.json | 2 +- .../vendor/tower-service/.cargo_vcs_info.json | 6 + .../vendor/tower/.cargo-checksum.json | 2 +- .../vendor/tower/.cargo_vcs_info.json | 6 + .../vendor/tracing-core/.cargo-checksum.json | 2 +- .../vendor/tracing-core/.cargo_vcs_info.json | 6 + .../vendor/tracing/.cargo-checksum.json | 2 +- .../vendor/tracing/.cargo_vcs_info.json | 6 + .../vendor/try-lock/.cargo-checksum.json | 2 +- .../vendor/try-lock/.cargo_vcs_info.json | 6 + .../vendor/try-lock/.github/workflows/CI.yml | 35 + .../vendor/typenum/.cargo-checksum.json | 2 +- .../vendor/typenum/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/typenum/.envrc | 1 + .../typenum/.github/workflows/check.yml | 107 + .../typenum/.github/workflows/publish.yml | 27 + .../vendor/unicode-ident/.cargo-checksum.json | 2 +- .../vendor/unicode-ident/.cargo_vcs_info.json | 6 + .../vendor/unicode-ident/.github/FUNDING.yml | 1 + .../unicode-ident/.github/workflows/ci.yml | 110 + .../vendor/unicode-ident/tests/fst/.gitignore | 1 + .../vendor/untrusted/.cargo-checksum.json | 2 +- .../vendor/untrusted/.cargo_vcs_info.json | 5 + .../vendor/untrusted/.github/workflows/ci.yml | 212 + .../dump_syms/vendor/url/.cargo-checksum.json | 2 +- .../dump_syms/vendor/url/.cargo_vcs_info.json | 6 + .../vendor/utf8_iter/.cargo-checksum.json | 2 +- .../vendor/utf8_iter/.cargo_vcs_info.json | 6 + .../vendor/utf8parse/.cargo-checksum.json | 2 +- .../vendor/utf8parse/.cargo_vcs_info.json | 6 + .../vendor/uuid/.cargo-checksum.json | 2 +- .../vendor/uuid/.cargo_vcs_info.json | 6 + .../vendor/version_check/.cargo-checksum.json | 2 +- .../vendor/version_check/.cargo_vcs_info.json | 6 + .../version_check/.github/workflows/ci.yml | 42 + .../vendor/version_check/.travis.yml | 6 + .../vendor/want/.cargo-checksum.json | 2 +- .../vendor/want/.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../.github/workflows/main.yml | 44 + .../.gitmodules | 3 + .../vendor/wasi/.cargo-checksum.json | 2 +- .../vendor/wasi/.cargo_vcs_info.json | 6 + .../vendor/wasi/.github/workflows/main.yml | 77 + .../dump_syms/vendor/wasi/.gitmodules | 0 .../wasm-bindgen-backend/.cargo-checksum.json | 2 +- .../wasm-bindgen-backend/.cargo_vcs_info.json | 6 + .../wasm-bindgen-futures/.cargo-checksum.json | 2 +- .../wasm-bindgen-futures/.cargo_vcs_info.json | 6 + .../vendor/wasm-bindgen-futures/README.md | 16 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../wasm-bindgen-macro/.cargo-checksum.json | 2 +- .../wasm-bindgen-macro/.cargo_vcs_info.json | 6 + .../vendor/wasm-bindgen-macro/README.md | 26 + .../wasm-bindgen-shared/.cargo-checksum.json | 2 +- .../wasm-bindgen-shared/.cargo_vcs_info.json | 6 + .../vendor/wasm-bindgen/.cargo-checksum.json | 2 +- .../vendor/wasm-bindgen/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/wasm-bindgen/README.md | 137 + .../vendor/wasmparser/.cargo-checksum.json | 2 +- .../vendor/wasmparser/.cargo_vcs_info.json | 6 + .../vendor/wasmparser/benches/.gitignore | 1 + .../vendor/watto/.cargo-checksum.json | 2 +- .../vendor/web-sys/.cargo-checksum.json | 2 +- .../vendor/web-sys/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/web-sys/README.md | 49 + .../vendor/web-time/.cargo-checksum.json | 2 +- .../vendor/web-time/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/web-time/README.md | 135 + .../vendor/webpki-roots/.cargo-checksum.json | 2 +- .../vendor/webpki-roots/.cargo_vcs_info.json | 6 + .../vendor/winapi-util/.cargo-checksum.json | 2 +- .../vendor/winapi-util/.cargo_vcs_info.json | 6 + .../winapi-util/.github/workflows/ci.yml | 87 + .../windows-sys-0.52.0/.cargo-checksum.json | 2 +- .../windows-sys-0.52.0/.cargo_vcs_info.json | 6 + .../windows-sys-0.59.0/.cargo-checksum.json | 2 +- .../windows-sys-0.59.0/.cargo_vcs_info.json | 6 + .../vendor/windows-sys/.cargo-checksum.json | 2 +- .../vendor/windows-sys/.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../windows-targets/.cargo-checksum.json | 2 +- .../windows-targets/.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../windows_aarch64_msvc/.cargo-checksum.json | 2 +- .../windows_aarch64_msvc/.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../windows_i686_gnu/.cargo-checksum.json | 2 +- .../windows_i686_gnu/.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../windows_i686_gnullvm/.cargo-checksum.json | 2 +- .../windows_i686_gnullvm/.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../windows_i686_msvc/.cargo-checksum.json | 2 +- .../windows_i686_msvc/.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../windows_x86_64_gnu/.cargo-checksum.json | 2 +- .../windows_x86_64_gnu/.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../.cargo-checksum.json | 2 +- .../.cargo_vcs_info.json | 6 + .../windows_x86_64_msvc/.cargo-checksum.json | 2 +- .../windows_x86_64_msvc/.cargo_vcs_info.json | 6 + .../wit-bindgen-rt/.cargo-checksum.json | 2 +- .../wit-bindgen-rt/.cargo_vcs_info.json | 6 + .../vendor/writeable/.cargo-checksum.json | 2 +- .../vendor/writeable/.cargo_vcs_info.json | 6 + .../vendor/yoke-derive/.cargo-checksum.json | 2 +- .../vendor/yoke-derive/.cargo_vcs_info.json | 6 + .../vendor/yoke/.cargo-checksum.json | 2 +- .../vendor/yoke/.cargo_vcs_info.json | 6 + .../zerocopy-derive/.cargo-checksum.json | 2 +- .../zerocopy-derive/.cargo_vcs_info.json | 6 + .../vendor/zerocopy/.cargo-checksum.json | 2 +- .../vendor/zerocopy/.cargo_vcs_info.json | 6 + .../zerofrom-derive/.cargo-checksum.json | 2 +- .../zerofrom-derive/.cargo_vcs_info.json | 6 + .../vendor/zerofrom/.cargo-checksum.json | 2 +- .../vendor/zerofrom/.cargo_vcs_info.json | 6 + .../vendor/zeroize/.cargo-checksum.json | 2 +- .../vendor/zeroize/.cargo_vcs_info.json | 6 + .../vendor/zerotrie/.cargo-checksum.json | 2 +- .../vendor/zerotrie/.cargo_vcs_info.json | 6 + .../zerovec-derive/.cargo-checksum.json | 2 +- .../zerovec-derive/.cargo_vcs_info.json | 6 + .../vendor/zerovec/.cargo-checksum.json | 2 +- .../vendor/zerovec/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/zip/.cargo-checksum.json | 2 +- .../dump_syms/vendor/zip/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/zip/.whitesource | 14 + .../vendor/zopfli/.cargo-checksum.json | 2 +- .../vendor/zopfli/.cargo/config.toml | 12 + .../vendor/zopfli/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/zopfli/.rustfmt.toml | 1 + .../vendor/zstd-safe/.cargo-checksum.json | 2 +- .../vendor/zstd-safe/.cargo_vcs_info.json | 6 + .../vendor/zstd-sys/.cargo-checksum.json | 2 +- .../vendor/zstd-sys/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/zstd-sys/Readme.md | 35 + .../vendor/zstd/.cargo-checksum.json | 2 +- .../vendor/zstd/.cargo_vcs_info.json | 6 + .../dump_syms/vendor/zstd/.gitmodules | 3 + .../rust/cubeb-coreaudio/.cargo-checksum.json | 2 +- .../src/backend/aggregate_device.rs | 58 +- .../rust/cubeb-coreaudio/src/backend/mod.rs | 58 +- .../cubeb-coreaudio/src/backend/tests/mod.rs | 1 + .../src/backend/tests/sync_callback.rs | 136 + .../resistfingerprinting/nsRFPService.cpp | 2 +- .../resistfingerprinting/nsRFPService.h | 4 +- .../telemetry/core/ipc/TelemetryComms.h | 72 +- .../telemetry/other/CombinedStacks.h | 9 + icecat/toolkit/library/rust/shared/Cargo.toml | 2 +- icecat/widget/EventForwards.h | 15 +- icecat/widget/MouseEvents.h | 13 +- icecat/widget/TextEvents.h | 13 + icecat/widget/WidgetEventImpl.cpp | 6 + icecat/widget/cocoa/nsCocoaWindow.mm | 4 +- icecat/widget/cocoa/nsMacSharingService.mm | 37 +- icecat/widget/gtk/nsImageToPixbuf.cpp | 41 +- icecat/widget/nsGUIEventIPC.h | 171 +- icecat/xpcom/base/ErrorList.py | 1 + icecat/xpcom/base/nsSystemInfo.cpp | 110 + icecat/xpcom/base/nsWindowsHelpers.h | 50 + icecat/xpcom/io/SlicedInputStream.cpp | 8 + .../xpcom/io/SnappyUncompressInputStream.cpp | 6 +- icecat/xpcom/metrics.yaml | 22 + 1197 files changed, 30593 insertions(+), 15344 deletions(-) create mode 100644 icecat/accessible/tests/browser/fission/browser_iframe_recreation.js create mode 100644 icecat/dom/media/gtest/TestWebrtcGmpCodec.cpp create mode 100644 icecat/js/src/jit-test/tests/debug/Debugger-clearAllBreakpoints-finalized.js create mode 100644 icecat/js/src/jit-test/tests/debug/Frame-onStep-generator-resumption-04.js rename icecat/modules/zlib/{src => }/LICENSE (95%) create mode 100644 icecat/modules/zlib/moz.yaml create mode 100644 icecat/modules/zlib/mozzconf.patch delete mode 100644 icecat/modules/zlib/src/ChangeLog.moz delete mode 100644 icecat/modules/zlib/src/FAQ delete mode 100644 icecat/modules/zlib/src/INDEX rename icecat/parser/expat/{07_always_store_rawnames.patch => 06_always_store_rawnames.patch} (60%) delete mode 100644 icecat/parser/expat/06_report_processing_entity.patch rename icecat/parser/expat/{08_dont_ignore_undeclared_entity.patch => 07_dont_ignore_undeclared_entity.patch} (84%) rename icecat/parser/expat/{09_include_xmlns.patch => 08_include_xmlns.patch} (87%) rename icecat/parser/expat/{10_internalsubset.patch => 09_internalsubset.patch} (87%) rename icecat/parser/expat/{12_version_limit.patch => 10_version_limit.patch} (85%) delete mode 100644 icecat/parser/expat/11_nested_entities.patch rename icecat/parser/expat/{13_no_debug_report.patch => 11_no_debug_report.patch} (51%) rename icecat/parser/expat/{14_unused.patch => 12_unused.patch} (62%) create mode 100644 icecat/third_party/cbindgen/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/.github/workflows/cbindgen.yml create mode 100644 icecat/third_party/cbindgen/.github/workflows/deploy.yml create mode 100644 icecat/third_party/cbindgen/vendor/anstream/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/anstyle-parse/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/anstyle-query/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/anstyle-wincon/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/anstyle/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/autocfg/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/bitflags/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/cfg-if/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/cfg-if/.github/dependabot.yml create mode 100644 icecat/third_party/cbindgen/vendor/cfg-if/.github/workflows/main.yaml create mode 100644 icecat/third_party/cbindgen/vendor/cfg-if/.github/workflows/publish.yaml create mode 100644 icecat/third_party/cbindgen/vendor/clap/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/clap_builder/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/clap_lex/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/colorchoice/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/dashmap/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/dashmap/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/diff/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/diff/.github/workflows/main.yml create mode 100644 icecat/third_party/cbindgen/vendor/equivalent/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/equivalent/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/errno/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/errno/.github/dependabot.yml create mode 100644 icecat/third_party/cbindgen/vendor/errno/.github/workflows/main.yml create mode 100644 icecat/third_party/cbindgen/vendor/fastrand/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/getrandom/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/hashbrown/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/heck/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/indexmap/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/indexmap/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/indexmap/.rustfmt.toml create mode 100644 icecat/third_party/cbindgen/vendor/is_terminal_polyfill/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/itoa/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/itoa/.github/FUNDING.yml create mode 100644 icecat/third_party/cbindgen/vendor/itoa/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/lazy_static/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/libc/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/libc/.git-blame-ignore-revs create mode 100644 icecat/third_party/cbindgen/vendor/libc/.release-plz.toml create mode 100644 icecat/third_party/cbindgen/vendor/linux-raw-sys/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/lock_api/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/log/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/log/.github/workflows/main.yml create mode 100644 icecat/third_party/cbindgen/vendor/memchr/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/memchr/.ignore create mode 100644 icecat/third_party/cbindgen/vendor/memchr/.vim/coc-settings.json create mode 100644 icecat/third_party/cbindgen/vendor/once_cell/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/once_cell/.github/workflows/ci.yaml create mode 100644 icecat/third_party/cbindgen/vendor/once_cell_polyfill/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/parking_lot/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/parking_lot/.github/workflows/release-plz.yml create mode 100644 icecat/third_party/cbindgen/vendor/parking_lot/.github/workflows/rust.yml create mode 100644 icecat/third_party/cbindgen/vendor/parking_lot_core/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/pretty_assertions/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/proc-macro2/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/proc-macro2/.github/FUNDING.yml create mode 100644 icecat/third_party/cbindgen/vendor/proc-macro2/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/quote/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/quote/.github/FUNDING.yml create mode 100644 icecat/third_party/cbindgen/vendor/quote/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/r-efi/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/r-efi/.github/workflows/publish.yml create mode 100644 icecat/third_party/cbindgen/vendor/r-efi/.github/workflows/rust-tests.yml create mode 100644 icecat/third_party/cbindgen/vendor/redox_syscall/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/redox_syscall/.gitlab-ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/rustix/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/ryu/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/ryu/.github/FUNDING.yml create mode 100644 icecat/third_party/cbindgen/vendor/ryu/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/scopeguard/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/scopeguard/.github/workflows/ci.yaml create mode 100644 icecat/third_party/cbindgen/vendor/serde/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/serde_core/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/serde_derive/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/serde_json/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/serde_json/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/serde_spanned/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/serial_test/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/serial_test_derive/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/smallvec/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/smallvec/.github/workflows/main.yml create mode 100644 icecat/third_party/cbindgen/vendor/strsim/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/strsim/.editorconfig create mode 100644 icecat/third_party/cbindgen/vendor/syn/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/tempfile/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/tempfile/.github/dependabot.yml create mode 100644 icecat/third_party/cbindgen/vendor/tempfile/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/toml/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/toml_datetime/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/toml_parser/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/toml_writer/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/unicode-ident/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/unicode-ident/.github/FUNDING.yml create mode 100644 icecat/third_party/cbindgen/vendor/unicode-ident/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/unicode-ident/tests/fst/.gitignore create mode 100644 icecat/third_party/cbindgen/vendor/utf8parse/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/wasi/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/wasi/.github/workflows/main.yml create mode 100644 icecat/third_party/cbindgen/vendor/wasi/.gitmodules create mode 100644 icecat/third_party/cbindgen/vendor/windows-sys/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/windows-targets/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/windows_aarch64_gnullvm/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/windows_aarch64_msvc/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/windows_i686_gnu/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/windows_i686_gnullvm/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/windows_i686_msvc/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/windows_x86_64_gnu/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/windows_x86_64_gnullvm/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/windows_x86_64_msvc/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/winnow/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/wit-bindgen-rt/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/yansi/.cargo_vcs_info.json create mode 100644 icecat/third_party/cbindgen/vendor/yansi/.github/workflows/ci.yml create mode 100644 icecat/third_party/cbindgen/vendor/yansi/.github/yansi-example.svg create mode 100644 icecat/third_party/cbindgen/vendor/yansi/.github/yansi-logo.png create mode 100644 icecat/third_party/dump_syms/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/.github/workflows/release.yml create mode 100644 icecat/third_party/dump_syms/vendor/addr2line/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/adler2/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/ahash/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/ahash/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/aho-corasick/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/aho-corasick/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/aho-corasick/.vim/coc-settings.json create mode 100644 icecat/third_party/dump_syms/vendor/allocator-api2/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/anstream/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/anstyle-parse/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/anstyle-query/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/anstyle-wincon/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/anstyle/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/anyhow/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/anyhow/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/anyhow/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/arbitrary/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/arbitrary/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/arrayvec/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/arrayvec/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/autocfg/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/backtrace/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/backtrace/.github/actions/build-with-patched-std/action.yml create mode 100644 icecat/third_party/dump_syms/vendor/backtrace/.github/actions/report-code-size-changes/action.yml create mode 100644 icecat/third_party/dump_syms/vendor/backtrace/.github/workflows/check-binary-size.yml create mode 100644 icecat/third_party/dump_syms/vendor/backtrace/.github/workflows/main.yml create mode 100644 icecat/third_party/dump_syms/vendor/backtrace/.github/workflows/publish.yml create mode 100644 icecat/third_party/dump_syms/vendor/base64/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/base64/.circleci/config.yml create mode 100644 icecat/third_party/dump_syms/vendor/base64/.github/ISSUE_TEMPLATE/general-purpose-issue.md create mode 100644 icecat/third_party/dump_syms/vendor/binary-merge/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/binary-merge/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/bitflags-1.3.2/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/bitflags-1.3.2/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/bitflags-1.3.2/tests/compile-fail/.gitignore create mode 100644 icecat/third_party/dump_syms/vendor/bitflags/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/block-buffer/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/brownstone/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/bumpalo/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/byteorder/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/byteorder/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/bytes/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/bytes/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/cab/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/cab/.github/workflows/tests.yml create mode 100644 icecat/third_party/dump_syms/vendor/cc/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/cfg-if/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/cfg-if/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/vendor/cfg-if/.github/workflows/main.yaml create mode 100644 icecat/third_party/dump_syms/vendor/cfg-if/.github/workflows/publish.yaml create mode 100644 icecat/third_party/dump_syms/vendor/cfg_aliases/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/clap/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/clap_builder/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/clap_lex/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/colorchoice/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/cpp_demangle/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/cpp_demangle/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/vendor/cpp_demangle/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/cpufeatures/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/crc-catalog/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/crc-catalog/.github/workflows/rust.yaml create mode 100644 icecat/third_party/dump_syms/vendor/crc/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/crc/.github/workflows/ci.yaml create mode 100644 icecat/third_party/dump_syms/vendor/crc32fast/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/crc32fast/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/crossbeam-channel/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/crossbeam-deque/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/crossbeam-epoch/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/crossbeam-queue/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/crossbeam-utils/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/crossbeam/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/crypto-common/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/deranged/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/derive_arbitrary/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/digest/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/dirs-sys/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/dirs-sys/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/dirs/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/dirs/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/displaydoc/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/displaydoc/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/elementtree/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/elementtree/.github/workflows/clippy.yml create mode 100644 icecat/third_party/dump_syms/vendor/elementtree/.github/workflows/rustfmt.yml create mode 100644 icecat/third_party/dump_syms/vendor/elementtree/.github/workflows/tests.yml create mode 100644 icecat/third_party/dump_syms/vendor/elsa/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/elsa/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/elsa/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/equivalent/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/equivalent/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/errno/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/errno/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/vendor/errno/.github/workflows/main.yml create mode 100644 icecat/third_party/dump_syms/vendor/fallible-iterator-0.2.0/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/fallible-iterator-0.2.0/.circleci/config.yml create mode 100644 icecat/third_party/dump_syms/vendor/fallible-iterator/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/fallible-iterator/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/fastrand/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/flate2/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/fnv/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/fnv/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/foldhash/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/form_urlencoded/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/futures-channel/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/futures-core/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/futures-executor/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/futures-io/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/futures-macro/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/futures-sink/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/futures-task/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/futures-util/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/futures/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/generic-array/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/getrandom-0.2.16/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/getrandom/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/gimli/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/goblin/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/hashbrown-0.14.5/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/hashbrown/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/hermit-abi/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/http-body-util/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/http-body/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/http/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/http/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/httparse/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/httparse/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/httparse/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/httparse/.github/workflows/cibench.yml create mode 100644 icecat/third_party/dump_syms/vendor/httparse/.github/workflows/cifuzz.yml create mode 100644 icecat/third_party/dump_syms/vendor/hyper-rustls/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/hyper-rustls/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/vendor/hyper-rustls/.github/workflows/build.yml create mode 100644 icecat/third_party/dump_syms/vendor/hyper-rustls/.rustfmt.toml create mode 100644 icecat/third_party/dump_syms/vendor/hyper-util/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/hyper-util/.github/workflows/CI.yml create mode 100644 icecat/third_party/dump_syms/vendor/hyper/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/hyper/README.md create mode 100644 icecat/third_party/dump_syms/vendor/icu_collections/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/icu_locale_core/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/icu_normalizer/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/icu_normalizer_data/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/icu_properties/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/icu_properties_data/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/icu_provider/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/idna/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/idna_adapter/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/indent_write/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/indexmap/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/indexmap/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/indexmap/.rustfmt.toml create mode 100644 icecat/third_party/dump_syms/vendor/inplace-vec-builder/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/inplace-vec-builder/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/ipnet/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/ipnet/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/iri-string/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/iri-string/.editorconfig create mode 100644 icecat/third_party/dump_syms/vendor/iri-string/.gitmodules create mode 100644 icecat/third_party/dump_syms/vendor/is_terminal_polyfill/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/itoa/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/itoa/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/itoa/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/jobserver/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/jobserver/.github/actions/compile-make/action.yml create mode 100644 icecat/third_party/dump_syms/vendor/jobserver/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/vendor/jobserver/.github/workflows/main.yml create mode 100644 icecat/third_party/dump_syms/vendor/jobserver/.github/workflows/publish.yml create mode 100644 icecat/third_party/dump_syms/vendor/joinery/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/joinery/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/js-sys/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/js-sys/README.md create mode 100644 icecat/third_party/dump_syms/vendor/lazy_static/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/leb128/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/leb128/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/vendor/libc/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/libc/.git-blame-ignore-revs create mode 100644 icecat/third_party/dump_syms/vendor/libc/.release-plz.toml create mode 100644 icecat/third_party/dump_syms/vendor/libredox/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/linux-raw-sys/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/litemap/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/lock_api/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/log/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/log/.github/workflows/main.yml create mode 100644 icecat/third_party/dump_syms/vendor/lzma-rs/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/lzxd/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/lzxd/.github/workflows/ci.yaml create mode 100644 icecat/third_party/dump_syms/vendor/maybe-owned/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/maybe-owned/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/memchr/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/memchr/.ignore create mode 100644 icecat/third_party/dump_syms/vendor/memchr/.vim/coc-settings.json create mode 100644 icecat/third_party/dump_syms/vendor/memmap2/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/memmap2/.github/workflows/main.yml create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/ISSUE_TEMPLATE/bug_report.md create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/ISSUE_TEMPLATE/custom.md create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/ISSUE_TEMPLATE/documentation.md create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/ISSUE_TEMPLATE/feature_request.md create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/ISSUE_TEMPLATE/question.md create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/PULL_REQUEST_TEMPLATE/bug_fix.md create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/PULL_REQUEST_TEMPLATE/custom.md create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/PULL_REQUEST_TEMPLATE/documentation.md create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/workflows/Cross.yml create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/workflows/Features.yml create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/workflows/OSX.yml create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/workflows/Simple.yml create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.github/workflows/Valgrind.yml create mode 100644 icecat/third_party/dump_syms/vendor/minimal-lexical/.gitmodules create mode 100644 icecat/third_party/dump_syms/vendor/miniz_oxide/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/mio/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/msvc-demangler/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/msvc-demangler/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/msvc-demangler/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/new_debug_unreachable/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/new_debug_unreachable/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/nom-supreme/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/nom/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/num-conv/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/num-conv/README.md create mode 100644 icecat/third_party/dump_syms/vendor/num_cpus/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/num_cpus/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/num_cpus/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/num_threads/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/object/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/once_cell/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/once_cell/.github/workflows/ci.yaml create mode 100644 icecat/third_party/dump_syms/vendor/once_cell_polyfill/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/option-ext/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/parking_lot/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/parking_lot/.github/workflows/release-plz.yml create mode 100644 icecat/third_party/dump_syms/vendor/parking_lot/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/parking_lot_core/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/pdb-addr2line/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/pdb/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/pdb/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/percent-encoding/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/phf_shared/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/pin-project-lite/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/pin-project-lite/tests/expand/.rustfmt.toml create mode 100644 icecat/third_party/dump_syms/vendor/pin-utils/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/pin-utils/.rustfmt.toml create mode 100644 icecat/third_party/dump_syms/vendor/pin-utils/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/pkg-config/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/pkg-config/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/plain/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/potential_utf/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/powerfmt/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/ppv-lite86/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/proc-macro2/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/proc-macro2/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/proc-macro2/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/quinn-proto/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/quinn-udp/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/quinn/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/quote/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/quote/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/quote/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/r-efi/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/r-efi/.github/workflows/publish.yml create mode 100644 icecat/third_party/dump_syms/vendor/r-efi/.github/workflows/rust-tests.yml create mode 100644 icecat/third_party/dump_syms/vendor/rand/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/rand_chacha/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/rand_core/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/range-collections/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/range-collections/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/range-collections/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/redox_syscall/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/redox_syscall/.gitlab-ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/redox_users/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/redox_users/.gitlab-ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/redox_users/.rustfmt.toml create mode 100644 icecat/third_party/dump_syms/vendor/redox_users/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/regex-automata/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/regex-syntax/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/regex/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/regex/.vim/coc-settings.json create mode 100644 icecat/third_party/dump_syms/vendor/regex/record/old-bench-log/.gitignore create mode 100644 icecat/third_party/dump_syms/vendor/reqwest/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/reqwest/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/reqwest/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/vendor/reqwest/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/ring/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/ring/README.md create mode 100644 icecat/third_party/dump_syms/vendor/rustc-demangle/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/rustc-demangle/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/vendor/rustc-demangle/.github/workflows/main.yml create mode 100644 icecat/third_party/dump_syms/vendor/rustc-hash/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/rustc-hash/.github/workflows/rust.yml create mode 100644 icecat/third_party/dump_syms/vendor/rustix/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/rustls-pki-types/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/rustls-pki-types/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/rustls-webpki/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/rustls/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/rustls/.clippy.toml create mode 100644 icecat/third_party/dump_syms/vendor/rustversion/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/rustversion/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/rustversion/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/ryu/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/ryu/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/ryu/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/scopeguard/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/scopeguard/.github/workflows/ci.yaml create mode 100644 icecat/third_party/dump_syms/vendor/scroll-0.11.0/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/scroll-0.11.0/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/scroll/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/scroll_derive/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/semver/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/semver/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/semver/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/serde/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/serde_derive/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/serde_json/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/serde_json/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/serde_urlencoded/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/serde_urlencoded/.github/workflows/CI.yml create mode 100644 icecat/third_party/dump_syms/vendor/sha2/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/shlex/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/shlex/.github/workflows/test.yml create mode 100644 icecat/third_party/dump_syms/vendor/simd-adler32/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/simd-adler32/.github/workflows/build.yaml create mode 100644 icecat/third_party/dump_syms/vendor/simd-adler32/.github/workflows/fuzz.yaml create mode 100644 icecat/third_party/dump_syms/vendor/simd-adler32/.github/workflows/publish.yaml create mode 100644 icecat/third_party/dump_syms/vendor/simd-adler32/.rustfmt.toml create mode 100644 icecat/third_party/dump_syms/vendor/simplelog/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/siphasher/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/siphasher/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/vendor/slab/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/smallvec/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/smallvec/.github/workflows/main.yml create mode 100644 icecat/third_party/dump_syms/vendor/socket2/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/stable_deref_trait/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/string_cache/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/string_cache/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/strsim/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/strsim/.editorconfig create mode 100644 icecat/third_party/dump_syms/vendor/subtle/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/subtle/.github/workflows/test.yml create mode 100644 icecat/third_party/dump_syms/vendor/syn/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/sync_wrapper/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/synstructure/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tempfile/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tempfile/.github/dependabot.yml create mode 100644 icecat/third_party/dump_syms/vendor/tempfile/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/termcolor/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/termcolor/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/thiserror-1.0.69/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/thiserror-1.0.69/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/thiserror-1.0.69/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/thiserror-impl-1.0.69/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/thiserror-impl/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/thiserror/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/thiserror/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/thiserror/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/time-core/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/time-macros/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/time/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tinystr/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tinyvec/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tinyvec_macros/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tokio-rustls/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tokio/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tower-http/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tower-layer/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tower-service/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tower/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tracing-core/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/tracing/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/try-lock/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/try-lock/.github/workflows/CI.yml create mode 100644 icecat/third_party/dump_syms/vendor/typenum/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/typenum/.envrc create mode 100644 icecat/third_party/dump_syms/vendor/typenum/.github/workflows/check.yml create mode 100644 icecat/third_party/dump_syms/vendor/typenum/.github/workflows/publish.yml create mode 100644 icecat/third_party/dump_syms/vendor/unicode-ident/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/unicode-ident/.github/FUNDING.yml create mode 100644 icecat/third_party/dump_syms/vendor/unicode-ident/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/unicode-ident/tests/fst/.gitignore create mode 100644 icecat/third_party/dump_syms/vendor/untrusted/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/untrusted/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/url/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/utf8_iter/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/utf8parse/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/uuid/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/version_check/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/version_check/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/version_check/.travis.yml create mode 100644 icecat/third_party/dump_syms/vendor/want/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wasi-0.11.1+wasi-snapshot-preview1/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wasi-0.11.1+wasi-snapshot-preview1/.github/workflows/main.yml create mode 100644 icecat/third_party/dump_syms/vendor/wasi-0.11.1+wasi-snapshot-preview1/.gitmodules create mode 100644 icecat/third_party/dump_syms/vendor/wasi/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wasi/.github/workflows/main.yml create mode 100644 icecat/third_party/dump_syms/vendor/wasi/.gitmodules create mode 100644 icecat/third_party/dump_syms/vendor/wasm-bindgen-backend/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wasm-bindgen-futures/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wasm-bindgen-futures/README.md create mode 100644 icecat/third_party/dump_syms/vendor/wasm-bindgen-macro-support/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wasm-bindgen-macro/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wasm-bindgen-macro/README.md create mode 100644 icecat/third_party/dump_syms/vendor/wasm-bindgen-shared/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wasm-bindgen/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wasm-bindgen/README.md create mode 100644 icecat/third_party/dump_syms/vendor/wasmparser/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wasmparser/benches/.gitignore create mode 100644 icecat/third_party/dump_syms/vendor/web-sys/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/web-sys/README.md create mode 100644 icecat/third_party/dump_syms/vendor/web-time/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/web-time/README.md create mode 100644 icecat/third_party/dump_syms/vendor/webpki-roots/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/winapi-util/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/winapi-util/.github/workflows/ci.yml create mode 100644 icecat/third_party/dump_syms/vendor/windows-sys-0.52.0/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows-sys-0.59.0/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows-sys/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows-targets-0.52.6/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows-targets/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_aarch64_gnullvm-0.52.6/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_aarch64_gnullvm/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_aarch64_msvc-0.52.6/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_aarch64_msvc/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_i686_gnu-0.52.6/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_i686_gnu/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_i686_gnullvm-0.52.6/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_i686_gnullvm/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_i686_msvc-0.52.6/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_i686_msvc/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_x86_64_gnu-0.52.6/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_x86_64_gnu/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_x86_64_gnullvm-0.52.6/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_x86_64_gnullvm/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_x86_64_msvc-0.52.6/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/windows_x86_64_msvc/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/wit-bindgen-rt/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/writeable/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/yoke-derive/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/yoke/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zerocopy-derive/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zerocopy/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zerofrom-derive/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zerofrom/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zeroize/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zerotrie/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zerovec-derive/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zerovec/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zip/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zip/.whitesource create mode 100644 icecat/third_party/dump_syms/vendor/zopfli/.cargo/config.toml create mode 100644 icecat/third_party/dump_syms/vendor/zopfli/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zopfli/.rustfmt.toml create mode 100644 icecat/third_party/dump_syms/vendor/zstd-safe/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zstd-sys/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zstd-sys/Readme.md create mode 100644 icecat/third_party/dump_syms/vendor/zstd/.cargo_vcs_info.json create mode 100644 icecat/third_party/dump_syms/vendor/zstd/.gitmodules create mode 100644 icecat/third_party/rust/cubeb-coreaudio/src/backend/tests/sync_callback.rs diff --git a/icecat/.cargo/config.toml.in b/icecat/.cargo/config.toml.in index 0470304d04..ac9ce3ce24 100644 --- a/icecat/.cargo/config.toml.in +++ b/icecat/.cargo/config.toml.in @@ -85,9 +85,9 @@ git = "https://github.com/mozilla/audioipc" rev = "e6f44a2bd1e57d11dfc737632a9e849077632330" replace-with = "vendored-sources" -[source."git+https://github.com/mozilla/cubeb-coreaudio-rs?rev=2407441a2f67341a0e13b4ba6547555e387c671c"] +[source."git+https://github.com/mozilla/cubeb-coreaudio-rs?rev=579b75af21c040700eee6a1d8520e222699fe4cd"] git = "https://github.com/mozilla/cubeb-coreaudio-rs" -rev = "2407441a2f67341a0e13b4ba6547555e387c671c" +rev = "579b75af21c040700eee6a1d8520e222699fe4cd" replace-with = "vendored-sources" [source."git+https://github.com/mozilla/cubeb-pulse-rs?rev=8678dcab1c287de79c4c184ccc2e065bc62b70e2"] diff --git a/icecat/.cron.yml b/icecat/.cron.yml index 29b3a60198..ef22a38f4d 100644 --- a/icecat/.cron.yml +++ b/icecat/.cron.yml @@ -263,8 +263,7 @@ jobs: - mozilla-release - mozilla-esr140 when: - - {weekday: 'Monday', hour: 8, minute: 0} - - {weekday: 'Thursday', hour: 8, minute: 0} + - {weekday: 'Monday', hour: 5, minute: 0} - name: daily-beta-perf job: diff --git a/icecat/CLOBBER b/icecat/CLOBBER index ca40ece1f7..875d653d2b 100644 --- a/icecat/CLOBBER +++ b/icecat/CLOBBER @@ -22,4 +22,4 @@ # changes to stick? As of bug 928195, this shouldn't be necessary! Please # don't change CLOBBER for WebIDL changes any more. -Merge day clobber 2026-01-12 \ No newline at end of file +Merge day clobber 2026-02-23 \ No newline at end of file diff --git a/icecat/Cargo.lock b/icecat/Cargo.lock index 7e61aa6052..b23c412d9d 100644 --- a/icecat/Cargo.lock +++ b/icecat/Cargo.lock @@ -1086,7 +1086,7 @@ dependencies = [ [[package]] name = "coreaudio-sys-utils" version = "0.1.0" -source = "git+https://github.com/mozilla/cubeb-coreaudio-rs?rev=2407441a2f67341a0e13b4ba6547555e387c671c#2407441a2f67341a0e13b4ba6547555e387c671c" +source = "git+https://github.com/mozilla/cubeb-coreaudio-rs?rev=579b75af21c040700eee6a1d8520e222699fe4cd#579b75af21c040700eee6a1d8520e222699fe4cd" dependencies = [ "core-foundation-sys", "coreaudio-sys", @@ -1398,7 +1398,7 @@ dependencies = [ [[package]] name = "cubeb-coreaudio" version = "0.1.0" -source = "git+https://github.com/mozilla/cubeb-coreaudio-rs?rev=2407441a2f67341a0e13b4ba6547555e387c671c#2407441a2f67341a0e13b4ba6547555e387c671c" +source = "git+https://github.com/mozilla/cubeb-coreaudio-rs?rev=579b75af21c040700eee6a1d8520e222699fe4cd#579b75af21c040700eee6a1d8520e222699fe4cd" dependencies = [ "atomic", "audio-mixer", diff --git a/icecat/accessible/generic/DocAccessible.cpp b/icecat/accessible/generic/DocAccessible.cpp index a3c6759cb2..6ce0183f61 100644 --- a/icecat/accessible/generic/DocAccessible.cpp +++ b/icecat/accessible/generic/DocAccessible.cpp @@ -1768,11 +1768,12 @@ void DocAccessible::DoInitialUpdate() { } #endif - // Fire reorder event after the document tree is constructed. Note, since - // this reorder event is processed by parent document then events targeted to - // this document may be fired prior to this reorder event. If this is - // a problem then consider to keep event processing per tab document. - if (!IsRoot()) { + // Fire a reorder event on the OuterDocAccessible after the document tree is + // constructed. Note that since this reorder event is processed by the parent + // document, events targeted to this child document may be fired prior to this + // reorder event. We don't fire a reorder event for remote documents; the + // parent process handles that. + if (!IPCDoc() && !IsRoot()) { RefPtr reorderEvent = new AccReorderEvent(LocalParent()); ParentDocument()->FireDelayedEvent(reorderEvent); } diff --git a/icecat/accessible/ipc/DocAccessibleParent.cpp b/icecat/accessible/ipc/DocAccessibleParent.cpp index b9fce0a322..a09cb3bba2 100644 --- a/icecat/accessible/ipc/DocAccessibleParent.cpp +++ b/icecat/accessible/ipc/DocAccessibleParent.cpp @@ -50,6 +50,7 @@ DocAccessibleParent::DocAccessibleParent() mTopLevel(false), mTopLevelInContentProcess(false), mShutdown(false), + mIsInitialTreeDone(false), mFocus(0), mCaretId(0), mCaretOffset(-1), @@ -145,7 +146,9 @@ mozilla::ipc::IPCResult DocAccessibleParent::ProcessShowEvent( // Otherwise, clients might crawl the incomplete subtree and they won't get // mutation events for the remaining pieces. if (aComplete || root != child) { - AttachChild(parent, childIdx, child); + if (!AttachChild(parent, childIdx, child)) { + return IPC_FAIL(this, "failed to attach child"); + } } } @@ -174,7 +177,9 @@ mozilla::ipc::IPCResult DocAccessibleParent::ProcessShowEvent( MOZ_ASSERT(rootParent); root = GetAccessible(mPendingShowChild); MOZ_ASSERT(root); - AttachChild(rootParent, mPendingShowIndex, root); + if (!AttachChild(rootParent, mPendingShowIndex, root)) { + return IPC_FAIL(this, "failed to attach pending show child"); + } mPendingShowChild = 0; mPendingShowParent = 0; mPendingShowIndex = 0; @@ -234,6 +239,11 @@ RemoteAccessible* DocAccessibleParent::CreateAcc( return nullptr; } + if (aAccData.GenericTypes() & eDocument) { + MOZ_ASSERT_UNREACHABLE("Invalid acc type"); + return nullptr; + } + newProxy = new RemoteAccessible(aAccData.ID(), this, aAccData.Role(), aAccData.Type(), aAccData.GenericTypes(), aAccData.RoleMapEntryIndex()); @@ -246,9 +256,20 @@ RemoteAccessible* DocAccessibleParent::CreateAcc( return newProxy; } -void DocAccessibleParent::AttachChild(RemoteAccessible* aParent, +bool DocAccessibleParent::AttachChild(RemoteAccessible* aParent, uint32_t aIndex, RemoteAccessible* aChild) { + if (aChild->RemoteParent()) { + MOZ_ASSERT_UNREACHABLE( + "Attempt to attach child which already has a parent!"); + return false; + } + + if (aParent == aChild) { + MOZ_ASSERT_UNREACHABLE("Attempt to make an accessible its own child!"); + return false; + } + aParent->AddChildAt(aIndex, aChild); aChild->SetParent(aParent); // ProxyCreated might have already been called if aChild is being moved. @@ -269,11 +290,16 @@ void DocAccessibleParent::AttachChild(RemoteAccessible* aParent, } MOZ_ASSERT(bridge->GetEmbedderAccessibleDoc() == this); if (DocAccessibleParent* childDoc = bridge->GetDocAccessibleParent()) { + MOZ_DIAGNOSTIC_ASSERT(!childDoc->RemoteParent(), + "Pending OOP child doc shouldn't have parent " + "once new OuterDoc is attached"); AddChildDoc(childDoc, aChild->ID(), false); } return true; }); } + + return true; } void DocAccessibleParent::ShutdownOrPrepareForMove(RemoteAccessible* aAcc) { @@ -286,6 +312,10 @@ void DocAccessibleParent::ShutdownOrPrepareForMove(RemoteAccessible* aAcc) { // the show event. For now, clear all of them by moving them to a temporary. auto children{std::move(aAcc->mChildren)}; for (RemoteAccessible* child : children) { + if (child == aAcc) { + MOZ_ASSERT_UNREACHABLE( + "Somehow an accessible got added as a child of itself!"); + } ShutdownOrPrepareForMove(child); } } @@ -603,6 +633,18 @@ mozilla::ipc::IPCResult DocAccessibleParent::RecvMutationEvents( mozilla::ipc::IPCResult DocAccessibleParent::RecvRequestAckMutationEvents() { if (!mShutdown) { + if (!mIsInitialTreeDone) { + // This is the first request for an ACK, which means we now have the + // initial tree. + mIsInitialTreeDone = true; + // If this document is already bound to its embedder, fire a reorder event + // to notify the client that the embedded document is available. If not, + // this will be handled when this document is bound in AddChildDoc. + if (RemoteAccessible* parent = RemoteParent()) { + parent->Document()->FireEvent(parent, + nsIAccessibleEvent::EVENT_REORDER); + } + } Unused << SendAckMutationEvents(); } return IPC_OK(); @@ -882,6 +924,11 @@ mozilla::ipc::IPCResult DocAccessibleParent::RecvBindChildDoc( ipc::IPCResult DocAccessibleParent::AddChildDoc(DocAccessibleParent* aChildDoc, uint64_t aParentID, bool aCreating) { + if (aChildDoc->RemoteParent()) { + return IPC_FAIL(this, + "Attempt to add child doc which already has a parent"); + } + // We do not use GetAccessible here because we want to be sure to not get the // document it self. ProxyEntry* e = mAccessibles.GetEntry(aParentID); @@ -930,11 +977,20 @@ ipc::IPCResult DocAccessibleParent::AddChildDoc(DocAccessibleParent* aChildDoc, aChildDoc->SetEmulatedWindowHandle(mEmulatedWindowHandle); } #endif // defined(XP_WIN) - // We need to fire a reorder event on the outer doc accessible. - // For same-process documents, this is fired by the content process, but - // this isn't possible when the document is in a different process to its - // embedder. - // FireEvent fires both OS and XPCOM events. + } + // We need to fire a reorder event on the embedder. We do this here rather + // than in the content process for two reasons: + // 1. It isn't possible for the content process to fire a reorder event on the + // embedder when the embedded document is in a different process to its + // embedder. + // 2. Doing it here ensures that the event is fired after the child document + // is bound. Otherwise, there could be a short period where the content + // process has fired the reorder event, but the child document isn't bound + // yet. + // However, if the initial tree hasn't been received yet, we don't want to + // fire the reorder event yet. That gets handled in + // RecvRequestAckMutationEvents. + if (aChildDoc->mIsInitialTreeDone) { FireEvent(outerDoc, nsIAccessibleEvent::EVENT_REORDER); } diff --git a/icecat/accessible/ipc/DocAccessibleParent.h b/icecat/accessible/ipc/DocAccessibleParent.h index 49eaccae47..21ec619536 100644 --- a/icecat/accessible/ipc/DocAccessibleParent.h +++ b/icecat/accessible/ipc/DocAccessibleParent.h @@ -325,11 +325,14 @@ class DocAccessibleParent : public RemoteAccessible, }; RemoteAccessible* CreateAcc(const AccessibleData& aAccData); - void AttachChild(RemoteAccessible* aParent, uint32_t aIndex, + bool AttachChild(RemoteAccessible* aParent, uint32_t aIndex, RemoteAccessible* aChild); [[nodiscard]] bool CheckDocTree() const; xpcAccessibleGeneric* GetXPCAccessible(RemoteAccessible* aProxy); + /** + * Fire an event to both OS and XPCOM consumers. + */ void FireEvent(RemoteAccessible* aAcc, const uint32_t& aType); /** @@ -365,9 +368,10 @@ class DocAccessibleParent : public RemoteAccessible, uint32_t mPendingShowIndex = 0; nsTHashSet mMovingIDs; uint64_t mActorID; - bool mTopLevel; - bool mTopLevelInContentProcess; - bool mShutdown; + bool mTopLevel : 1; + bool mTopLevelInContentProcess : 1; + bool mShutdown : 1; + bool mIsInitialTreeDone : 1; RefPtr mBrowsingContext; nsTHashSet> mPendingOOPChildDocs; diff --git a/icecat/accessible/tests/browser/fission/browser.toml b/icecat/accessible/tests/browser/fission/browser.toml index 8ddd5ed862..4993aa6eb8 100644 --- a/icecat/accessible/tests/browser/fission/browser.toml +++ b/icecat/accessible/tests/browser/fission/browser.toml @@ -11,6 +11,8 @@ support-files = [ ["browser_hidden_iframe.js"] https_first_disabled = true +["browser_iframe_recreation.js"] + ["browser_nested_iframe.js"] ["browser_reframe_root.js"] diff --git a/icecat/accessible/tests/browser/fission/browser_iframe_recreation.js b/icecat/accessible/tests/browser/fission/browser_iframe_recreation.js new file mode 100644 index 0000000000..f0edbf55f7 --- /dev/null +++ b/icecat/accessible/tests/browser/fission/browser_iframe_recreation.js @@ -0,0 +1,29 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +"use strict"; + +addAccessibleTask( + `test`, + async function testRecreation(browser, iframeDocAcc, topDocAcc) { + let iframe = findAccessibleChildByID(topDocAcc, DEFAULT_IFRAME_ID); + is(iframeDocAcc.parent, iframe, "iframe doc's parent is iframe"); + // The ARIA role currently causes re-creation. If that ever changes, we'll + // need to switch to another technique here. + info("Change iframe's role to recreate it"); + let shown = waitForEvent(EVENT_SHOW, DEFAULT_IFRAME_ID); + let reordered = waitForEvent(EVENT_REORDER, DEFAULT_IFRAME_ID); + await SpecialPowers.spawn( + topDocAcc.browsingContext, + [DEFAULT_IFRAME_ID], + id => { + content.document.getElementById(id).role = "foo"; + } + ); + iframe = (await shown).accessible; + await reordered; + is(iframeDocAcc.parent, iframe, "iframe doc's parent is iframe"); + }, + { chrome: false, topLevel: false, iframe: true, remoteIframe: true } +); diff --git a/icecat/browser/config/version.txt b/icecat/browser/config/version.txt index a8c401f5f5..2eff378069 100644 --- a/icecat/browser/config/version.txt +++ b/icecat/browser/config/version.txt @@ -1 +1 @@ -140.8.0 +140.9.0 diff --git a/icecat/browser/config/version_display.txt b/icecat/browser/config/version_display.txt index 713279f52b..76e7517231 100644 --- a/icecat/browser/config/version_display.txt +++ b/icecat/browser/config/version_display.txt @@ -1 +1 @@ -140.8.0esr +140.9.0esr diff --git a/icecat/browser/confvars.sh b/icecat/browser/confvars.sh index b5b8863889..92f7316e53 100755 --- a/icecat/browser/confvars.sh +++ b/icecat/browser/confvars.sh @@ -13,5 +13,5 @@ MOZ_BRANDING_DIRECTORY=browser/branding/unofficial MOZ_OFFICIAL_BRANDING_DIRECTORY=browser/branding/official # IceCat settings MOZ_APP_BASENAME=IceCat -MOZ_APP_VERSION=140.8.0 +MOZ_APP_VERSION=140.9.0 MOZ_DATA_REPORTING=0 diff --git a/icecat/config/milestone.txt b/icecat/config/milestone.txt index 8951cf3c57..2431abea5e 100644 --- a/icecat/config/milestone.txt +++ b/icecat/config/milestone.txt @@ -10,4 +10,4 @@ # hardcoded milestones in the tree from these two files. #-------------------------------------------------------- -140.8.0 +140.9.0 diff --git a/icecat/debian/changelog b/icecat/debian/changelog index bd35480694..c82e4710c4 100644 --- a/icecat/debian/changelog +++ b/icecat/debian/changelog @@ -1,3 +1,9 @@ +icecat (140.9.0-1gnu1+build1-0.12.0) ecne; urgency=medium + + * New upstream stable release (icecat-140.9.0-1gnu1) + + -- Capitulo Mexicano de Software Libre Sat, 28 Mar 2026 01:16:35 -0600 + icecat (140.8.0-2gnu1+build1-0.12.0) ecne; urgency=medium * New upstream stable release (icecat-140.8.0-2gnu1) diff --git a/icecat/devtools/client/netmonitor/src/widgets/RequestListContextMenu.js b/icecat/devtools/client/netmonitor/src/widgets/RequestListContextMenu.js index 248b5ff665..de4180e955 100644 --- a/icecat/devtools/client/netmonitor/src/widgets/RequestListContextMenu.js +++ b/icecat/devtools/client/netmonitor/src/widgets/RequestListContextMenu.js @@ -746,7 +746,7 @@ class RequestListContextMenu { }; const options = JSON.stringify(fetchOptions, null, 4); - const fetchString = `await fetch("${url}", ${options});`; + const fetchString = `await fetch(${JSON.stringify(url)}, ${options});`; return fetchString; } diff --git a/icecat/devtools/client/netmonitor/test/browser_net_columns_time.js b/icecat/devtools/client/netmonitor/test/browser_net_columns_time.js index c2e9a9b858..0d490b585a 100644 --- a/icecat/devtools/client/netmonitor/test/browser_net_columns_time.js +++ b/icecat/devtools/client/netmonitor/test/browser_net_columns_time.js @@ -50,10 +50,11 @@ add_task(async function () { const types = ["end", "response", "duration", "latency"]; for (const t of types) { + info("Check the timing column for type: " + t); await waitUntil(() => { const node = item.querySelector(".requests-list-" + t + "-time"); const value = parseInt(node.textContent, 10); - return value > 0; + return value >= 0; }); } diff --git a/icecat/devtools/client/netmonitor/test/browser_net_copy_as_fetch.js b/icecat/devtools/client/netmonitor/test/browser_net_copy_as_fetch.js index 517e9e54f8..e8589e097d 100644 --- a/icecat/devtools/client/netmonitor/test/browser_net_copy_as_fetch.js +++ b/icecat/devtools/client/netmonitor/test/browser_net_copy_as_fetch.js @@ -7,7 +7,7 @@ * Tests if Copy as Fetch works. */ -add_task(async function () { +add_task(async function testBasicCopyAsFetch() { const { tab, monitor } = await initNetMonitor(HTTPS_CURL_URL, { requestCount: 1, }); @@ -15,7 +15,9 @@ add_task(async function () { // GET request, no cookies (first request) await performRequest("GET"); - await testClipboardContent(`await fetch("https://example.com/browser/devtools/client/netmonitor/test/sjs_simple-test-server.sjs", { + await testClipboardContent( + monitor, + `await fetch("https://example.com/browser/devtools/client/netmonitor/test/sjs_simple-test-server.sjs", { "credentials": "omit", "headers": { "User-Agent": "${navigator.userAgent}", @@ -33,7 +35,8 @@ add_task(async function () { "referrer": "https://example.com/browser/devtools/client/netmonitor/test/html_copy-as-curl.html", "method": "GET", "mode": "cors" -});`); +});` + ); await teardown(monitor); @@ -54,39 +57,71 @@ add_task(async function () { ); await waitRequest; } - - async function testClipboardContent(expectedResult) { - const { document } = monitor.panelWin; - - const items = document.querySelectorAll(".request-list-item"); - EventUtils.sendMouseEvent({ type: "mousedown" }, items[items.length - 1]); - EventUtils.sendMouseEvent( - { type: "contextmenu" }, - document.querySelectorAll(".request-list-item")[0] - ); - - /* Ensure that the copy as fetch option is always visible */ - is( - !!getContextMenuItem(monitor, "request-list-context-copy-as-fetch"), - true, - 'The "Copy as Fetch" context menu item should not be hidden.' - ); - - await waitForClipboardPromise( - async function setup() { - await selectContextMenuItem( - monitor, - "request-list-context-copy-as-fetch" - ); - }, - function validate(result) { - if (typeof result !== "string") { - return false; - } - return expectedResult === result; - } - ); - - info("Clipboard contains a fetch command for item " + (items.length - 1)); - } }); + +/** + * Tests for Url escaping of copy as Fetch + */ +add_task(async function testUrlEscapeOfCopyAsFetch() { + const { monitor } = await initNetMonitor(HTTPS_CURL_URL, { + requestCount: 1, + }); + info("Starting test... "); + + const waitRequest = waitForNetworkEvents(monitor, 1); + await SpecialPowers.spawn( + gBrowser.selectedBrowser, + ['data:text/html,"+alert(document.domain)+"'], + url => { + content.fetch(url); + } + ); + await waitRequest; + + await testClipboardContent( + monitor, + `await fetch("data:text/html,\\"+alert(document.domain)+\\"", { + "credentials": "omit", + "headers": {}, + "method": "GET", + "mode": "cors" +});` + ); + + await teardown(monitor); +}); + +async function testClipboardContent(monitor, expectedResult) { + const { document } = monitor.panelWin; + + const items = document.querySelectorAll(".request-list-item"); + EventUtils.sendMouseEvent({ type: "mousedown" }, items[items.length - 1]); + EventUtils.sendMouseEvent( + { type: "contextmenu" }, + document.querySelectorAll(".request-list-item")[0] + ); + + /* Ensure that the copy as fetch option is always visible */ + is( + !!getContextMenuItem(monitor, "request-list-context-copy-as-fetch"), + true, + 'The "Copy as Fetch" context menu item should not be hidden.' + ); + + await waitForClipboardPromise( + async function setup() { + await selectContextMenuItem( + monitor, + "request-list-context-copy-as-fetch" + ); + }, + function validate(result) { + if (typeof result !== "string") { + return false; + } + return expectedResult === result; + } + ); + + info("Clipboard contains a fetch command for item " + (items.length - 1)); +} diff --git a/icecat/devtools/client/responsive/test/browser/browser_device_state_restore.js b/icecat/devtools/client/responsive/test/browser/browser_device_state_restore.js index 6a40e3b621..aa913caefe 100644 --- a/icecat/devtools/client/responsive/test/browser/browser_device_state_restore.js +++ b/icecat/devtools/client/responsive/test/browser/browser_device_state_restore.js @@ -10,15 +10,13 @@ const DEFAULT_DPPX = window.devicePixelRatio; /* eslint-disable max-len */ const TEST_DEVICE = { - name: "iPhone 6/7/8", - width: 375, - height: 667, - pixelRatio: 2, + name: "iPhone 17 / 17 Pro", + width: 402, + height: 874, + pixelRatio: 3, userAgent: - "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1", + "Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", touch: true, - icecatOS: false, - os: "iOS", featured: true, }; /* eslint-enable max-len */ diff --git a/icecat/docshell/base/BrowsingContext.cpp b/icecat/docshell/base/BrowsingContext.cpp index 5bcf586486..4499c40d59 100644 --- a/icecat/docshell/base/BrowsingContext.cpp +++ b/icecat/docshell/base/BrowsingContext.cpp @@ -2786,6 +2786,11 @@ void BrowsingContext::DidSet(FieldIndex, }); } +bool BrowsingContext::CanSet(FieldIndex, const bool&, + ContentParent* aSource) { + return XRE_IsParentProcess() && IsTop() && !aSource; +} + void BrowsingContext::DidSet(FieldIndex, bool aOldValue) { MOZ_ASSERT(IsTop(), "Should only set InRDMPane in the top-level browsing context"); diff --git a/icecat/docshell/base/BrowsingContext.h b/icecat/docshell/base/BrowsingContext.h index 0bd3efa16d..61460d8b60 100644 --- a/icecat/docshell/base/BrowsingContext.h +++ b/icecat/docshell/base/BrowsingContext.h @@ -1136,6 +1136,7 @@ class BrowsingContext : public nsILoadContext, public nsWrapperCache { return IsTop(); } + bool CanSet(FieldIndex, const bool&, ContentParent* aSource); void DidSet(FieldIndex, bool aOldValue); MOZ_CAN_RUN_SCRIPT_BOUNDARY void DidSet(FieldIndex, bool aOldValue); diff --git a/icecat/dom/base/DocumentOrShadowRoot.cpp b/icecat/dom/base/DocumentOrShadowRoot.cpp index 324d250517..828f6c85fc 100644 --- a/icecat/dom/base/DocumentOrShadowRoot.cpp +++ b/icecat/dom/base/DocumentOrShadowRoot.cpp @@ -7,6 +7,7 @@ #include "DocumentOrShadowRoot.h" #include "mozilla/AnimationComparator.h" #include "mozilla/EventStateManager.h" +#include "mozilla/Likely.h" #include "mozilla/PointerLockManager.h" #include "mozilla/PresShell.h" #include "mozilla/StyleSheet.h" @@ -112,6 +113,10 @@ void DocumentOrShadowRoot::RemoveSheetFromStylesIfApplicable( void DocumentOrShadowRoot::OnSetAdoptedStyleSheets(StyleSheet& aSheet, uint32_t aIndex, ErrorResult& aRv) { + if (MOZ_UNLIKELY(aIndex > mAdoptedStyleSheets.Length())) { + MOZ_ASSERT_UNREACHABLE("Out of sync proxy"); + return; + } Document& doc = *AsNode().OwnerDoc(); // 1. If value’s constructed flag is not set, or its constructor document is // not equal to this DocumentOrShadowRoot's node document, throw a @@ -164,7 +169,10 @@ void DocumentOrShadowRoot::OnSetAdoptedStyleSheets(StyleSheet& aSheet, void DocumentOrShadowRoot::OnDeleteAdoptedStyleSheets(StyleSheet& aSheet, uint32_t aIndex, ErrorResult&) { - MOZ_ASSERT(mAdoptedStyleSheets.ElementAt(aIndex) == &aSheet); + if (MOZ_UNLIKELY(mAdoptedStyleSheets.ElementAt(aIndex) != &aSheet)) { + MOZ_ASSERT_UNREACHABLE("Out of sync proxy"); + return; + } mAdoptedStyleSheets.RemoveElementAt(aIndex); auto existingIndex = mAdoptedStyleSheets.LastIndexOf(&aSheet); if (existingIndex != mAdoptedStyleSheets.NoIndex && existingIndex >= aIndex) { diff --git a/icecat/dom/base/MimeType.cpp b/icecat/dom/base/MimeType.cpp index 1e6d6a7cd4..86fd9c76c2 100644 --- a/icecat/dom/base/MimeType.cpp +++ b/icecat/dom/base/MimeType.cpp @@ -271,6 +271,7 @@ template const nsTSubstring& aMimeType, nsTSubstring& aOutEssence, nsTSubstring& aOutCharset) { + // https://fetch.spec.whatwg.org/#concept-header-extract-mime-type static char_type kCHARSET[] = {'c', 'h', 'a', 'r', 's', 'e', 't'}; static nsTDependentSubstring kCharset(kCHARSET, 7); @@ -278,8 +279,8 @@ template nsTAutoString prevContentType; nsTAutoString prevCharset; - prevContentType.Assign(aOutEssence); - prevCharset.Assign(aOutCharset); + aOutEssence.Truncate(); + aOutCharset.Truncate(); nsTArray> mimeTypeParts = SplitMimetype(aMimeType); @@ -292,9 +293,7 @@ template parsed = Parse(mimeTypeString); if (!parsed) { - aOutEssence.Truncate(); - aOutCharset.Truncate(); - return false; + continue; } parsed->GetEssence(aOutEssence); @@ -322,6 +321,10 @@ template } } + if (aOutEssence.IsEmpty()) { + return false; + } + return true; } diff --git a/icecat/dom/base/nsContentPermissionHelper.cpp b/icecat/dom/base/nsContentPermissionHelper.cpp index 0e1668ec5e..5b76715de1 100644 --- a/icecat/dom/base/nsContentPermissionHelper.cpp +++ b/icecat/dom/base/nsContentPermissionHelper.cpp @@ -44,12 +44,15 @@ class ContentPermissionRequestParent : public PContentPermissionRequestParent { // @param aIsRequestDelegatedToUnsafeThirdParty see // mIsRequestDelegatedToUnsafeThirdParty. ContentPermissionRequestParent( - const nsTArray& aRequests, Element* aElement, - nsIPrincipal* aPrincipal, nsIPrincipal* aTopLevelPrincipal, + Element* aElement, nsIPrincipal* aPrincipal, + nsIPrincipal* aTopLevelPrincipal, const bool aHasValidTransientUserGestureActivation, const bool aIsRequestDelegatedToUnsafeThirdParty); virtual ~ContentPermissionRequestParent(); + MOZ_CAN_RUN_SCRIPT_BOUNDARY + void Init(nsTArray&& aRequests); + bool IsBeingDestroyed(); nsCOMPtr mPrincipal; @@ -64,16 +67,13 @@ class ContentPermissionRequestParent : public PContentPermissionRequestParent { nsTArray mRequests; private: - // Not MOZ_CAN_RUN_SCRIPT because we can't annotate the thing we override yet. - MOZ_CAN_RUN_SCRIPT_BOUNDARY - virtual mozilla::ipc::IPCResult Recvprompt() override; virtual mozilla::ipc::IPCResult RecvDestroy() override; virtual void ActorDestroy(ActorDestroyReason why) override; }; ContentPermissionRequestParent::ContentPermissionRequestParent( - const nsTArray& aRequests, Element* aElement, - nsIPrincipal* aPrincipal, nsIPrincipal* aTopLevelPrincipal, + Element* aElement, nsIPrincipal* aPrincipal, + nsIPrincipal* aTopLevelPrincipal, const bool aHasValidTransientUserGestureActivation, const bool aIsRequestDelegatedToUnsafeThirdParty) { MOZ_COUNT_CTOR(ContentPermissionRequestParent); @@ -81,7 +81,6 @@ ContentPermissionRequestParent::ContentPermissionRequestParent( mPrincipal = aPrincipal; mTopLevelPrincipal = aTopLevelPrincipal; mElement = aElement; - mRequests = aRequests.Clone(); mHasValidTransientUserGestureActivation = aHasValidTransientUserGestureActivation; mIsRequestDelegatedToUnsafeThirdParty = aIsRequestDelegatedToUnsafeThirdParty; @@ -91,13 +90,14 @@ ContentPermissionRequestParent::~ContentPermissionRequestParent() { MOZ_COUNT_DTOR(ContentPermissionRequestParent); } -mozilla::ipc::IPCResult ContentPermissionRequestParent::Recvprompt() { +void ContentPermissionRequestParent::Init( + nsTArray&& aRequests) { + mRequests = std::move(aRequests); mProxy = new nsContentPermissionRequestProxy(this); if (NS_FAILED(mProxy->Init(mRequests))) { RefPtr proxy(mProxy); proxy->Cancel(); } - return IPC_OK(); } mozilla::ipc::IPCResult ContentPermissionRequestParent::RecvDestroy() { @@ -239,12 +239,12 @@ nsresult nsContentPermissionUtils::CreatePermissionArray( /* static */ PContentPermissionRequestParent* nsContentPermissionUtils::CreateContentPermissionRequestParent( - const nsTArray& aRequests, Element* aElement, - nsIPrincipal* aPrincipal, nsIPrincipal* aTopLevelPrincipal, + Element* aElement, nsIPrincipal* aPrincipal, + nsIPrincipal* aTopLevelPrincipal, const bool aHasValidTransientUserGestureActivation, const bool aIsRequestDelegatedToUnsafeThirdParty, const TabId& aTabId) { PContentPermissionRequestParent* parent = new ContentPermissionRequestParent( - aRequests, aElement, aPrincipal, aTopLevelPrincipal, + aElement, aPrincipal, aTopLevelPrincipal, aHasValidTransientUserGestureActivation, aIsRequestDelegatedToUnsafeThirdParty); ContentPermissionRequestParentMap()[parent] = aTabId; @@ -252,6 +252,14 @@ nsContentPermissionUtils::CreateContentPermissionRequestParent( return parent; } +/* static */ +void nsContentPermissionUtils::InitContentPermissionRequestParent( + PContentPermissionRequestParent* aActor, + nsTArray&& aRequests) { + static_cast(aActor)->Init( + std::move(aRequests)); +} + /* static */ nsresult nsContentPermissionUtils::AskPermission( nsIContentPermissionRequest* aRequest, nsPIDOMWindowInner* aWindow) { @@ -301,7 +309,6 @@ nsresult nsContentPermissionUtils::AskPermission( } ContentPermissionRequestChildMap()[req.get()] = child->GetTabId(); - req->Sendprompt(); return NS_OK; } diff --git a/icecat/dom/base/nsContentPermissionHelper.h b/icecat/dom/base/nsContentPermissionHelper.h index 18ce5c8f0f..91fda16141 100644 --- a/icecat/dom/base/nsContentPermissionHelper.h +++ b/icecat/dom/base/nsContentPermissionHelper.h @@ -63,11 +63,15 @@ class nsContentPermissionUtils { // @param aIsRequestDelegatedToUnsafeThirdParty see // ContentPermissionRequestParent. static PContentPermissionRequestParent* CreateContentPermissionRequestParent( - const nsTArray& aRequests, Element* aElement, - nsIPrincipal* aPrincipal, nsIPrincipal* aTopLevelPrincipal, + Element* aElement, nsIPrincipal* aPrincipal, + nsIPrincipal* aTopLevelPrincipal, const bool aHasValidTransientUserGestureActivation, const bool aIsRequestDelegatedToUnsafeThirdParty, const TabId& aTabId); + static void InitContentPermissionRequestParent( + PContentPermissionRequestParent* aActor, + nsTArray&& aRequests); + static nsresult AskPermission(nsIContentPermissionRequest* aRequest, nsPIDOMWindowInner* aWindow); diff --git a/icecat/dom/base/test/gtest/TestMimeType.cpp b/icecat/dom/base/test/gtest/TestMimeType.cpp index 40916130a8..b100b60e39 100644 --- a/icecat/dom/base/test/gtest/TestMimeType.cpp +++ b/icecat/dom/base/test/gtest/TestMimeType.cpp @@ -821,8 +821,8 @@ TEST(MimeTypeParsing, contentTypes1) bool parsed = CMimeType::Parse(val, contentType, contentCharset); - ASSERT_FALSE(parsed); - ASSERT_TRUE(contentType.EqualsLiteral("")); + ASSERT_TRUE(parsed); + ASSERT_TRUE(contentType.EqualsLiteral("text/plain")); ASSERT_TRUE(contentCharset.EqualsLiteral("")); } @@ -1074,3 +1074,43 @@ TEST(MimeTypeParsing, contentTypes20) ASSERT_TRUE(contentType.EqualsLiteral("text/plain")); ASSERT_TRUE(contentCharset.EqualsLiteral("")); } + +// U+002F(/) is not a valid HTTP token code point +// https://mimesniff.spec.whatwg.org/#http-token-code-point +TEST(MimeTypeParsing, invalidSubtype1) +{ + const nsAutoCString val("text/json/"); + RefPtr parsed = CMimeType::Parse(val); + ASSERT_TRUE(!parsed); +} + +TEST(MimeTypeParsing, invalidSubtype2) +{ + const nsAutoCString val("text/json/bad"); + RefPtr parsed = CMimeType::Parse(val); + ASSERT_TRUE(!parsed); +} + +TEST(MimeTypeParsing, EmptyParsing) +{ + constexpr nsLiteralCString val(""); + nsCString contentType; + nsCString contentCharset; + bool parsed = CMimeType::Parse(val, contentType, contentCharset); + + ASSERT_FALSE(parsed); + ASSERT_TRUE(contentType.EqualsLiteral("")); + ASSERT_TRUE(contentCharset.EqualsLiteral("")); +} + +TEST(MimeTypeParsing, EmptySubtype) +{ + constexpr nsLiteralCString val("audio/"); + nsCString contentType; + nsCString contentCharset; + bool parsed = CMimeType::Parse(val, contentType, contentCharset); + + ASSERT_FALSE(parsed); + ASSERT_TRUE(contentType.EqualsLiteral("")); + ASSERT_TRUE(contentCharset.EqualsLiteral("")); +} diff --git a/icecat/dom/bindings/BindingUtils.cpp b/icecat/dom/bindings/BindingUtils.cpp index f84efc6594..8c07e928f0 100644 --- a/icecat/dom/bindings/BindingUtils.cpp +++ b/icecat/dom/bindings/BindingUtils.cpp @@ -259,39 +259,6 @@ nsTArray& TErrorResult::CreateErrorMessageHelper( return message->mArgs; } -template -void TErrorResult::SerializeMessage( - IPC::MessageWriter* aWriter) const { - using namespace IPC; - AssertInOwningThread(); - MOZ_ASSERT(mUnionState == HasMessage); - MOZ_ASSERT(mExtra.mMessage); - WriteParam(aWriter, mExtra.mMessage->mArgs); - WriteParam(aWriter, mExtra.mMessage->mErrorNumber); -} - -template -bool TErrorResult::DeserializeMessage( - IPC::MessageReader* aReader) { - using namespace IPC; - AssertInOwningThread(); - auto readMessage = MakeUnique(); - if (!ReadParam(aReader, &readMessage->mArgs) || - !ReadParam(aReader, &readMessage->mErrorNumber)) { - return false; - } - if (!readMessage->HasCorrectNumberOfArguments()) { - return false; - } - - MOZ_ASSERT(mUnionState == HasNothing); - InitMessage(readMessage.release()); -#ifdef DEBUG - mUnionState = HasMessage; -#endif // DEBUG - return true; -} - template void TErrorResult::SetPendingExceptionWithMessage( JSContext* aCx, const char* context) { @@ -401,34 +368,106 @@ struct TErrorResult::DOMExceptionInfo { }; template -void TErrorResult::SerializeDOMExceptionInfo( +void TErrorResult::SerializeErrorResult( IPC::MessageWriter* aWriter) const { using namespace IPC; AssertInOwningThread(); - MOZ_ASSERT(mUnionState == HasDOMExceptionInfo); - MOZ_ASSERT(mExtra.mDOMExceptionInfo); - WriteParam(aWriter, mExtra.mDOMExceptionInfo->mMessage); - WriteParam(aWriter, mExtra.mDOMExceptionInfo->mRv); + + // It should be the case that mMightHaveUnreportedJSException can only be + // true when we're expecting a JS exception. We cannot send such messages + // over the IPC channel since there is no sane way of transferring the JS + // value over to the other side. Callers should never do that. + MOZ_ASSERT(!mMightHaveUnreportedJSException); + if (IsJSException() || IsJSContextException()) { + MOZ_CRASH( + "Cannot serialize an ErrorResult representing a Javascript exception"); + } + + WriteParam(aWriter, mResult); + if (IsErrorWithMessage()) { + MOZ_ASSERT(mResult == NS_ERROR_INTERNAL_ERRORRESULT_TYPEERROR || + mResult == NS_ERROR_INTERNAL_ERRORRESULT_RANGEERROR); + MOZ_ASSERT(mUnionState == HasMessage); + MOZ_ASSERT(mExtra.mMessage); + + WriteParam(aWriter, mExtra.mMessage->mArgs); + WriteParam(aWriter, mExtra.mMessage->mErrorNumber); + } else if (IsDOMException()) { + MOZ_ASSERT(mResult == NS_ERROR_INTERNAL_ERRORRESULT_DOMEXCEPTION); + MOZ_ASSERT(mUnionState == HasDOMExceptionInfo); + MOZ_ASSERT(mExtra.mDOMExceptionInfo); + + WriteParam(aWriter, mExtra.mDOMExceptionInfo->mMessage); + WriteParam(aWriter, mExtra.mDOMExceptionInfo->mRv); + } else { + MOZ_ASSERT(mUnionState == HasNothing); + } } template -bool TErrorResult::DeserializeDOMExceptionInfo( +bool TErrorResult::DeserializeErrorResult( IPC::MessageReader* aReader) { using namespace IPC; AssertInOwningThread(); - nsCString message; - nsresult rv; - if (!ReadParam(aReader, &message) || !ReadParam(aReader, &rv)) { + + nsresult result; + if (!ReadParam(aReader, &result)) { return false; } - MOZ_ASSERT(mUnionState == HasNothing); - MOZ_ASSERT(IsDOMException()); - InitDOMExceptionInfo(new DOMExceptionInfo(rv, message)); + switch (result) { + case NS_ERROR_INTERNAL_ERRORRESULT_JS_EXCEPTION: + case NS_ERROR_INTERNAL_ERRORRESULT_EXCEPTION_ON_JSCONTEXT: + // JS exceptions can not be serialized. + return false; + + case NS_ERROR_INTERNAL_ERRORRESULT_TYPEERROR: + case NS_ERROR_INTERNAL_ERRORRESULT_RANGEERROR: { + nsTArray args; + dom::ErrNum errorNumber; + if (!ReadParam(aReader, &args) || !ReadParam(aReader, &errorNumber)) { + return false; + } + + if (GetErrorArgCount(errorNumber) != args.Length()) { + return false; + } + + for (nsCString& arg : args) { + if (Utf8ValidUpTo(arg) != arg.Length()) { + return false; + } + } + + ClearUnionData(); + + nsTArray& messageArgsArray = + CreateErrorMessageHelper(errorNumber, result); + messageArgsArray = std::move(args); + MOZ_ASSERT(mExtra.mMessage->HasCorrectNumberOfArguments(), + "validated earlier"); #ifdef DEBUG - mUnionState = HasDOMExceptionInfo; -#endif // DEBUG - return true; + mUnionState = HasMessage; +#endif + return true; + } + + case NS_ERROR_INTERNAL_ERRORRESULT_DOMEXCEPTION: { + nsCString message; + nsresult rv; + if (!ReadParam(aReader, &message) || !ReadParam(aReader, &rv)) { + return false; + } + + ThrowDOMException(rv, message); + return true; + } + + default: + ClearUnionData(); + AssignErrorCode(result); + return true; + } } template diff --git a/icecat/dom/bindings/ErrorIPCUtils.h b/icecat/dom/bindings/ErrorIPCUtils.h index 064d851503..fa71b259e1 100644 --- a/icecat/dom/bindings/ErrorIPCUtils.h +++ b/icecat/dom/bindings/ErrorIPCUtils.h @@ -7,11 +7,8 @@ #ifndef IPC_ErrorIPCUtils_h #define IPC_ErrorIPCUtils_h -#include - #include "ipc/EnumSerializer.h" #include "ipc/IPCMessageUtils.h" -#include "mozilla/Assertions.h" #include "mozilla/ErrorResult.h" namespace IPC { @@ -24,64 +21,18 @@ struct ParamTraits template <> struct ParamTraits { - typedef mozilla::ErrorResult paramType; - - static void Write(MessageWriter* aWriter, const paramType& aParam) { - // It should be the case that mMightHaveUnreportedJSException can only be - // true when we're expecting a JS exception. We cannot send such messages - // over the IPC channel since there is no sane way of transferring the JS - // value over to the other side. Callers should never do that. - MOZ_ASSERT_IF(aParam.IsJSException(), - aParam.mMightHaveUnreportedJSException); - if (aParam.IsJSException() -#ifdef DEBUG - || aParam.mMightHaveUnreportedJSException -#endif - ) { - MOZ_CRASH( - "Cannot encode an ErrorResult representing a Javascript exception"); - } - - WriteParam(aWriter, aParam.mResult); - WriteParam(aWriter, aParam.IsErrorWithMessage()); - WriteParam(aWriter, aParam.IsDOMException()); - if (aParam.IsErrorWithMessage()) { - aParam.SerializeMessage(aWriter); - } else if (aParam.IsDOMException()) { - aParam.SerializeDOMExceptionInfo(aWriter); - } + static void Write(MessageWriter* aWriter, + const mozilla::ErrorResult& aParam) { + aParam.SerializeErrorResult(aWriter); } - static void Write(MessageWriter* aWriter, paramType&& aParam) { - Write(aWriter, static_cast(aParam)); + static void Write(MessageWriter* aWriter, mozilla::ErrorResult&& aParam) { + aParam.SerializeErrorResult(aWriter); aParam.SuppressException(); } - static bool Read(MessageReader* aReader, paramType* aResult) { - paramType readValue; - if (!ReadParam(aReader, &readValue.mResult)) { - return false; - } - bool hasMessage = false; - if (!ReadParam(aReader, &hasMessage)) { - return false; - } - bool hasDOMExceptionInfo = false; - if (!ReadParam(aReader, &hasDOMExceptionInfo)) { - return false; - } - if (hasMessage && hasDOMExceptionInfo) { - // Shouldn't have both! - return false; - } - if (hasMessage && !readValue.DeserializeMessage(aReader)) { - return false; - } else if (hasDOMExceptionInfo && - !readValue.DeserializeDOMExceptionInfo(aReader)) { - return false; - } - *aResult = std::move(readValue); - return true; + static bool Read(MessageReader* aReader, mozilla::ErrorResult* aResult) { + return aResult->DeserializeErrorResult(aReader); } }; @@ -90,14 +41,11 @@ struct ParamTraits { typedef mozilla::CopyableErrorResult paramType; static void Write(MessageWriter* aWriter, const paramType& aParam) { - ParamTraits::Write(aWriter, aParam); + aParam.SerializeErrorResult(aWriter); } static bool Read(MessageReader* aReader, paramType* aResult) { - // We can't cast *aResult to ErrorResult&, so cheat and just cast - // to ErrorResult*. - return ParamTraits::Read( - aReader, reinterpret_cast(aResult)); + return aResult->DeserializeErrorResult(aReader); } }; diff --git a/icecat/dom/bindings/ErrorResult.h b/icecat/dom/bindings/ErrorResult.h index 76ff54c3bc..3e5e2b624b 100644 --- a/icecat/dom/bindings/ErrorResult.h +++ b/icecat/dom/bindings/ErrorResult.h @@ -401,7 +401,7 @@ class TErrorResult { // Check whether the TErrorResult says to just throw whatever is on // the JSContext already. - bool IsJSContextException() { + bool IsJSContextException() const { return ErrorCode() == NS_ERROR_INTERNAL_ERRORRESULT_EXCEPTION_ON_JSCONTEXT; } @@ -481,11 +481,10 @@ class TErrorResult { friend struct IPC::ParamTraits; friend struct IPC::ParamTraits; - void SerializeMessage(IPC::MessageWriter* aWriter) const; - bool DeserializeMessage(IPC::MessageReader* aReader); + friend struct IPC::ParamTraits; - void SerializeDOMExceptionInfo(IPC::MessageWriter* aWriter) const; - bool DeserializeDOMExceptionInfo(IPC::MessageReader* aReader); + void SerializeErrorResult(IPC::MessageWriter* aWriter) const; + bool DeserializeErrorResult(IPC::MessageReader* aReader); // Helper method that creates a new Message for this TErrorResult, // and returns the arguments array from that Message. diff --git a/icecat/dom/bindings/ObservableArrayProxyHandler.cpp b/icecat/dom/bindings/ObservableArrayProxyHandler.cpp index 931950a492..fde26b72c8 100644 --- a/icecat/dom/bindings/ObservableArrayProxyHandler.cpp +++ b/icecat/dom/bindings/ObservableArrayProxyHandler.cpp @@ -277,6 +277,9 @@ bool ObservableArrayProxyHandler::GetBackingListObject( if (NS_WARN_IF(!newBackingListObj)) { return false; } + if (NS_WARN_IF(!JS_SetPrototype(aCx, newBackingListObj, nullptr))) { + return false; + } slotValue = JS::ObjectValue(*newBackingListObj); js::SetProxyReservedSlot(aProxy, OBSERVABLE_ARRAY_BACKING_LIST_OBJECT_SLOT, slotValue); diff --git a/icecat/dom/canvas/TexUnpackBlob.cpp b/icecat/dom/canvas/TexUnpackBlob.cpp index aed3ba0ea3..9fb66e5719 100644 --- a/icecat/dom/canvas/TexUnpackBlob.cpp +++ b/icecat/dom/canvas/TexUnpackBlob.cpp @@ -1110,10 +1110,6 @@ bool TexUnpackSurface::TexOrSubImage(bool isSubImage, bool needsRespec, //// const auto surfSize = surf->GetSize(); - if (uint32_t(surfSize.width) < size.x || uint32_t(surfSize.height) < size.y) { - gfxCriticalError() << "Source surface size too small for upload."; - return false; - } WebGLTexelFormat srcFormat; uint8_t srcBPP; @@ -1165,6 +1161,12 @@ bool TexUnpackSurface::TexOrSubImage(bool isSubImage, bool needsRespec, const auto& dstUnpacking = dstUnpackingRes.inspect(); MOZ_ASSERT(dstUnpacking.metrics.bytesPerRowStride == dstStride); + if (uint32_t(surfSize.width) < dstUnpacking.metrics.usedPixelsPerRow || + uint32_t(surfSize.height) < dstUnpacking.metrics.totalRows) { + gfxCriticalError() << "Source surface size too small for upload."; + return false; + } + // - const uint8_t* dstBegin = srcBegin; diff --git a/icecat/dom/events/GlobalKeyListener.cpp b/icecat/dom/events/GlobalKeyListener.cpp index 1a51a8ad94..f32e8c25cc 100644 --- a/icecat/dom/events/GlobalKeyListener.cpp +++ b/icecat/dom/events/GlobalKeyListener.cpp @@ -418,6 +418,11 @@ GlobalKeyListener::WalkHandlersResult GlobalKeyListener::WalkHandlersAndExecute( bool GlobalKeyListener::IsReservedKey(WidgetKeyboardEvent* aKeyEvent, KeyEventHandler* aHandler) { + // If the event is a reply event, it means that we've already sent the event + // to the remote process because of not reserved. + if (aKeyEvent->IsHandledInRemoteProcess()) { + return false; + } ReservedKey reserved = aHandler->GetIsReserved(); // reserved="true" means that the key is always reserved. reserved="false" // means that the key is never reserved. Otherwise, we check site-specific diff --git a/icecat/dom/indexedDB/ActorsParent.cpp b/icecat/dom/indexedDB/ActorsParent.cpp index 4bad5a15fe..c10466e750 100644 --- a/icecat/dom/indexedDB/ActorsParent.cpp +++ b/icecat/dom/indexedDB/ActorsParent.cpp @@ -18723,6 +18723,14 @@ mozilla::ipc::IPCResult NormalTransactionOp::RecvContinue( const PreprocessResponse& aResponse) { AssertIsOnOwningThread(); + // mWaitingForContinue is only touched on the owning thread. If it is not + // set, either we never sent Preprocess (child is misbehaving) or the op is + // still running on the connection thread. Calling NoteContinueReceived() + // in either case would race Cleanup() with DoDatabaseWork(). + if (NS_WARN_IF(!IsWaitingForContinue())) { + return IPC_FAIL(this, "Continue received when not waiting for continue"); + } + switch (aResponse.type()) { case PreprocessResponse::Tnsresult: SetFailureCode(aResponse.get_nsresult()); diff --git a/icecat/dom/ipc/BrowserBridgeParent.cpp b/icecat/dom/ipc/BrowserBridgeParent.cpp index 736ea9e9e2..b99adcca26 100644 --- a/icecat/dom/ipc/BrowserBridgeParent.cpp +++ b/icecat/dom/ipc/BrowserBridgeParent.cpp @@ -280,10 +280,13 @@ IPCResult BrowserBridgeParent::RecvSetEmbedderAccessible( # if defined(ANDROID) MonitorAutoLock mal(nsAccessibilityService::GetAndroidMonitor()); # endif - MOZ_ASSERT(aDoc || mEmbedderAccessibleDoc, - "Embedder doc shouldn't be cleared if it wasn't set"); - MOZ_ASSERT(!mEmbedderAccessibleDoc || !aDoc || mEmbedderAccessibleDoc == aDoc, - "Embedder doc shouldn't change from one doc to another"); + if (!aDoc && !mEmbedderAccessibleDoc) { + return IPC_FAIL(this, "Embedder doc shouldn't be cleared if it wasn't set"); + } + if (mEmbedderAccessibleDoc && aDoc && mEmbedderAccessibleDoc != aDoc) { + return IPC_FAIL(this, + "Embedder doc shouldn't change from one doc to another"); + } if (!aDoc && mEmbedderAccessibleDoc && !mEmbedderAccessibleDoc->IsShutdown()) { // We're clearing the embedder doc, so remove the pending child doc addition @@ -293,14 +296,22 @@ IPCResult BrowserBridgeParent::RecvSetEmbedderAccessible( mEmbedderAccessibleDoc = static_cast(aDoc); mEmbedderAccessibleID = aID; if (!aDoc) { - MOZ_ASSERT(!aID); + if (aID) { + return IPC_FAIL(this, "Attempt to clear embedder but id given"); + } return IPC_OK(); } - MOZ_ASSERT(aID); + if (!aID) { + return IPC_FAIL(this, "Attempt to set embedder without id"); + } if (GetDocAccessibleParent()) { // The embedded DocAccessibleParent has already been created. This can - // happen if, for example, an iframe is hidden and then shown or - // an iframe is reflowed by layout. + // happen if, for example, an iframe is hidden and then shown or an iframe + // Accessible is re-created. In the case of re-creation, the old iframe + // Accessible still exists at this point because this IPDL message is + // received *before* we receive the accessibility hide and show events. This + // is okay; DocAccessibleParent will store this as a pending OOP child + // document and add it when the new OuterDocAccessible arrives. mEmbedderAccessibleDoc->AddChildDoc(this); } return IPC_OK(); diff --git a/icecat/dom/ipc/BrowserChild.cpp b/icecat/dom/ipc/BrowserChild.cpp index 310e22a130..0e190c4cfc 100644 --- a/icecat/dom/ipc/BrowserChild.cpp +++ b/icecat/dom/ipc/BrowserChild.cpp @@ -2440,6 +2440,10 @@ mozilla::ipc::IPCResult BrowserChild::RecvRealKeyEvent( // we need to clear the flag explicitly here because ParamTraits should // keep checking the flag for avoiding regression. localEvent.mFlags.mNoRemoteProcessDispatch = false; + // The parent process won't use the native key bindings of the reply event + // anymore. To save the IPC cost, let's clear the edit commands before sending + // the event back to the parent process. + localEvent.PreventNativeKeyBindings(); SendReplyKeyEvent(localEvent, aUUID); return IPC_OK(); diff --git a/icecat/dom/ipc/BrowserParent.cpp b/icecat/dom/ipc/BrowserParent.cpp index 7b904bcee4..87578dcc7f 100644 --- a/icecat/dom/ipc/BrowserParent.cpp +++ b/icecat/dom/ipc/BrowserParent.cpp @@ -1291,6 +1291,14 @@ mozilla::ipc::IPCResult BrowserParent::RecvPDocAccessibleConstructor( return IPC_OK(); } + if (auto* prevTopLevel = GetTopLevelDocAccessible()) { + // Sometimes, we can get a new top level DocAccessibleParent before the + // old one gets destroyed. The old one will die pretty shortly anyway, + // so just destroy it now. If we don't do this, GetTopLevelDocAccessible() + // might return the wrong document for a short while. + prevTopLevel->Destroy(); + } + if (aBrowsingContext) { doc->SetBrowsingContext(aBrowsingContext.get_canonical()); } @@ -1325,13 +1333,6 @@ mozilla::ipc::IPCResult BrowserParent::RecvPDocAccessibleConstructor( return IPC_FAIL_NO_REASON(this); } - if (auto* prevTopLevel = GetTopLevelDocAccessible()) { - // Sometimes, we can get a new top level DocAccessibleParent before the - // old one gets destroyed. The old one will die pretty shortly anyway, - // so just destroy it now. If we don't do this, GetTopLevelDocAccessible() - // might return the wrong document for a short while. - prevTopLevel->Destroy(); - } doc->SetTopLevel(); a11y::DocManager::RemoteDocAdded(doc); # ifdef XP_WIN @@ -2782,7 +2783,10 @@ mozilla::ipc::IPCResult BrowserParent::RecvReplyKeyEvent( NS_WARN_IF(data.mPseudoCharCode != aEvent.mPseudoCharCode) || NS_WARN_IF(data.mKeyNameIndex != aEvent.mKeyNameIndex) || NS_WARN_IF(data.mCodeNameIndex != aEvent.mCodeNameIndex) || - NS_WARN_IF(data.mModifiers != aEvent.mModifiers)) { + NS_WARN_IF(data.mModifiers != aEvent.mModifiers) || + // The child process should've already cleared the editor commands + // because we don't use them. + NS_WARN_IF(aEvent.HasEditCommands())) { // Got different event data from what we stored before dispatching an // event with the ID. return Nothing(); @@ -3909,13 +3913,18 @@ mozilla::ipc::IPCResult BrowserParent::RecvInvokeDragSession( cookieJarSettings, aSourceWindowContext.GetMaybeDiscarded(), aSourceTopWindowContext.GetMaybeDiscarded()); - if (aVisualDnDData) { - const auto checkedSize = CheckedInt(aDragRect.height) * aStride; - if (checkedSize.isValid() && - aVisualDnDData->Size() >= checkedSize.value()) { + if (aVisualDnDData && aDragRect.width >= 0 && aDragRect.height >= 0) { + const auto checkedSize = CheckedInt(aDragRect.height) * aStride; + const auto computedStride = + CheckedInt(aDragRect.width) * gfx::BytesPerPixel(aFormat); + const auto checkedStride = CheckedInt(aStride); + if (checkedSize.isValid() && checkedSize.value() >= 0 && + aVisualDnDData->Size() >= static_cast(checkedSize.value()) && + computedStride.isValid() && checkedStride.isValid() && + computedStride.value() <= checkedStride.value()) { dragStartData->SetVisualization(gfx::CreateDataSourceSurfaceFromData( gfx::IntSize(aDragRect.width, aDragRect.height), aFormat, - aVisualDnDData->Data(), aStride)); + aVisualDnDData->Data(), checkedStride.value())); } } diff --git a/icecat/dom/ipc/ContentParent.cpp b/icecat/dom/ipc/ContentParent.cpp index 20e5dc975b..e726255171 100644 --- a/icecat/dom/ipc/ContentParent.cpp +++ b/icecat/dom/ipc/ContentParent.cpp @@ -5130,8 +5130,18 @@ ContentParent::AllocPContentPermissionRequestParent( topPrincipal = principal; } return nsContentPermissionUtils::CreateContentPermissionRequestParent( - aRequests, tp->GetOwnerElement(), aPrincipal, topPrincipal, - aIsHandlingUserInput, aMaybeUnsafePermissionDelegate, aTabId); + tp->GetOwnerElement(), aPrincipal, topPrincipal, aIsHandlingUserInput, + aMaybeUnsafePermissionDelegate, aTabId); +} + +mozilla::ipc::IPCResult ContentParent::RecvPContentPermissionRequestConstructor( + PContentPermissionRequestParent* aActor, + nsTArray&& aRequests, nsIPrincipal* aPrincipal, + nsIPrincipal* aTopLevelPrincipal, const bool& aIsHandlingUserInput, + const bool& aMaybeUnsafePermissionDelegate, const TabId& tabId) { + nsContentPermissionUtils::InitContentPermissionRequestParent( + aActor, std::move(aRequests)); + return IPC_OK(); } bool ContentParent::DeallocPContentPermissionRequestParent( diff --git a/icecat/dom/ipc/ContentParent.h b/icecat/dom/ipc/ContentParent.h index 75ab5336d1..96b1763364 100644 --- a/icecat/dom/ipc/ContentParent.h +++ b/icecat/dom/ipc/ContentParent.h @@ -538,6 +538,12 @@ class ContentParent final : public PContentParent, nsIPrincipal* aTopLevelPrincipal, const bool& aIsHandlingUserInput, const bool& aMaybeUnsafePermissionDelegate, const TabId& aTabId); + mozilla::ipc::IPCResult RecvPContentPermissionRequestConstructor( + PContentPermissionRequestParent* aActor, + nsTArray&& aRequests, nsIPrincipal* aPrincipal, + nsIPrincipal* aTopLevelPrincipal, const bool& aIsHandlingUserInput, + const bool& aMaybeUnsafePermissionDelegate, const TabId& tabId) override; + bool DeallocPContentPermissionRequestParent( PContentPermissionRequestParent* actor); diff --git a/icecat/dom/ipc/PContentPermissionRequest.ipdl b/icecat/dom/ipc/PContentPermissionRequest.ipdl index 0ce5acbe95..90a6032b96 100644 --- a/icecat/dom/ipc/PContentPermissionRequest.ipdl +++ b/icecat/dom/ipc/PContentPermissionRequest.ipdl @@ -16,7 +16,6 @@ protocol PContentPermissionRequest manager PContent; parent: - async prompt(); async Destroy(); child: diff --git a/icecat/dom/localstorage/ActorsParent.cpp b/icecat/dom/localstorage/ActorsParent.cpp index 1161a030c4..f0301e3bfe 100644 --- a/icecat/dom/localstorage/ActorsParent.cpp +++ b/icecat/dom/localstorage/ActorsParent.cpp @@ -6595,6 +6595,12 @@ mozilla::ipc::IPCResult LSRequestBase::RecvCancel() { mozilla::ipc::IPCResult LSRequestBase::RecvFinish() { AssertIsOnOwningThread(); + // A well-behaved content process only sends Finish() after receiving Ready(), + // which transitions us to WaitingForFinish. + if (NS_WARN_IF(mState != State::WaitingForFinish)) { + return IPC_FAIL(this, "Finish received in unexpected state"); + } + Finish(); return IPC_OK(); diff --git a/icecat/dom/media/MediaData.cpp b/icecat/dom/media/MediaData.cpp index 05ab6b80cc..9a2b830fca 100644 --- a/icecat/dom/media/MediaData.cpp +++ b/icecat/dom/media/MediaData.cpp @@ -10,6 +10,7 @@ #include "MediaInfo.h" #include "MediaResult.h" #include "PerformanceRecorder.h" +#include "PlatformDecoderModule.h" #include "VideoUtils.h" #include "YCbCrUtils.h" #include "mozilla/gfx/gfxVars.h" @@ -28,8 +29,12 @@ # include "mozilla/gfx/gfxVars.h" #endif +#define LOG(level, msg, ...) \ + MOZ_LOG_FMT(sPDMLog, level, "%s: " msg, __func__, ##__VA_ARGS__) namespace mozilla { +extern LazyLogModule sPDMLog; + using namespace mozilla::gfx; using layers::PlanarYCbCrData; using layers::PlanarYCbCrImage; @@ -186,6 +191,19 @@ static bool ValidatePlane(const VideoData::YCbCrBuffer::Plane& aPlane) { static MediaResult ValidateBufferAndPicture( const VideoData::YCbCrBuffer& aBuffer, const IntRect& aPicture) { + // mChromaSubsampling describes the relationship between plane sizes. + if (aBuffer.mChromaSubsampling == ChromaSubsampling::FULL) { + MOZ_ASSERT(aBuffer.mPlanes[1].mWidth == aBuffer.mPlanes[0].mWidth); + } else { + MOZ_ASSERT(aBuffer.mPlanes[1].mWidth == + (aBuffer.mPlanes[0].mWidth + 1) / 2); + } + if (aBuffer.mChromaSubsampling == ChromaSubsampling::HALF_WIDTH_AND_HEIGHT) { + MOZ_ASSERT(aBuffer.mPlanes[1].mHeight == + (aBuffer.mPlanes[0].mHeight + 1) / 2); + } else { + MOZ_ASSERT(aBuffer.mPlanes[1].mHeight == aBuffer.mPlanes[0].mHeight); + } // The following situation should never happen unless there is a bug // in the decoder if (aBuffer.mPlanes[1].mWidth != aBuffer.mPlanes[2].mWidth || @@ -193,7 +211,6 @@ static MediaResult ValidateBufferAndPicture( return MediaResult(NS_ERROR_INVALID_ARG, "Chroma planes with different sizes"); } - // The following situations could be triggered by invalid input if (aPicture.width <= 0 || aPicture.height <= 0) { return MediaResult(NS_ERROR_INVALID_ARG, "Empty picture rect"); @@ -203,7 +220,12 @@ static MediaResult ValidateBufferAndPicture( !ValidatePlane(aBuffer.mPlanes[2])) { return MediaResult(NS_ERROR_INVALID_ARG, "Invalid plane size"); } - + // ConstructPlanarYCbCrData() and ConvertI420AlphaToARGB() assume Chroma + // planes have equal strides. + if (aBuffer.mPlanes[1].mStride != aBuffer.mPlanes[2].mStride) { + return MediaResult(NS_ERROR_INVALID_ARG, + "Chroma planes with different strides"); + } // Ensure the picture size specified in the headers can be extracted out of // the frame we've been supplied without indexing out of bounds. CheckedUint32 xLimit = aPicture.x + CheckedUint32(aPicture.width); @@ -291,6 +313,7 @@ PlanarYCbCrData ConstructPlanarYCbCrData(const VideoInfo& aInfo, data.mYSkip = AssertedCast(Y.mSkip); data.mCbChannel = Cb.mData; data.mCrChannel = Cr.mData; + MOZ_ASSERT(Cb.mStride == Cr.mStride); data.mCbCrStride = AssertedCast(Cb.mStride); data.mCbSkip = AssertedCast(Cb.mSkip); data.mCrSkip = AssertedCast(Cr.mSkip); @@ -409,6 +432,22 @@ already_AddRefed VideoData::CreateAndCopyData( NS_ERROR(r.Message().get()); return nullptr; } + if (!ValidatePlane(aAlphaPlane)) { + MOZ_LOG_FMT(sPDMLog, LogLevel::Warning, "Invalid alpha plane"); + return nullptr; + } + // The alpha plane is expected to be the same size as the luma plane. + // See Method 1 at https://wiki.webmproject.org/alpha-channel + if (aBuffer.mPlanes[0].mWidth != aAlphaPlane.mWidth || + aBuffer.mPlanes[0].mHeight != aAlphaPlane.mHeight) { + MOZ_LOG_FMT(sPDMLog, LogLevel::Warning, "luma and alpha sizes differ"); + return nullptr; + } + // ConvertI420AlphaToARGB() expects equal strides for luma and alpha + if (aBuffer.mPlanes[0].mStride != aAlphaPlane.mStride) { + MOZ_LOG_FMT(sPDMLog, LogLevel::Warning, "luma and alpha strides differ"); + return nullptr; + } RefPtr v(new VideoData(aOffset, aTime, aDuration, aKeyframe, aTimecode, aInfo.mDisplay, 0)); @@ -635,3 +674,4 @@ CryptoScheme StringToCryptoScheme(const nsAString& aString) { } } // namespace mozilla +#undef LOG diff --git a/icecat/dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp b/icecat/dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp index f88ba49252..23c14a80d5 100644 --- a/icecat/dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp +++ b/icecat/dom/media/gmp-plugin-openh264/gmp-fake-openh264.cpp @@ -129,6 +129,10 @@ class FakeVideoEncoder : public GMPVideoEncoder { GMPVideoEncoderCallback* callback, int32_t numberOfCores, uint32_t maxPayloadSize) override { callback_ = callback; + constexpr uint16_t kFrameDropCadence = 5; + frame_drop_cadence_ = + codecSettings.mFrameDroppingOn ? kFrameDropCadence : 0; + num_frames_since_drop_ = 0; frame_size_ = (maxPayloadSize > 0 && maxPayloadSize < BIG_FRAME) ? maxPayloadSize : BIG_FRAME; @@ -146,6 +150,18 @@ class FakeVideoEncoder : public GMPVideoEncoder { void SendFrame(GMPVideoi420Frame* inputImage, GMPVideoFrameType frame_type, int nal_type) { + if (frame_drop_cadence_ > 0) { + const auto frame_drop_id = ++num_frames_since_drop_; + num_frames_since_drop_ %= frame_drop_cadence_; + GMPLOG(GL_DEBUG, + "Frame dropping is on, id=" + << frame_drop_id << "/" << frame_drop_cadence_ << ". " + << (frame_drop_id == frame_drop_cadence_ ? "Dropping" + : "Keeping")); + if (frame_drop_id == frame_drop_cadence_) { + return; + } + } // Encode this in a frame that looks a little bit like H.264. // Send SPS/PPS/IDR to avoid confusing people // Copy the data. This really should convert this to network byte order. @@ -201,7 +217,7 @@ class FakeVideoEncoder : public GMPVideoEncoder { f->SetCompleteFrame(true); f->SetBufferType(GMP_BufferLength32); - GMPLOG(GL_DEBUG, "Encoding complete. type= " + GMPLOG(GL_DEBUG, "Encoding complete. type=" << f->FrameType() << " NAL_type=" << (int)eframe.idr_nalu.h264_compat_ << " length=" << f->Size() @@ -271,6 +287,8 @@ class FakeVideoEncoder : public GMPVideoEncoder { GMPVideoHost* host_; GMPVideoEncoderCallback* callback_ = nullptr; + uint16_t frame_drop_cadence_ = 0; + uint16_t num_frames_since_drop_ = 0; uint32_t frame_size_ = BIG_FRAME; uint32_t frames_encoded_ = 0; }; diff --git a/icecat/dom/media/gmp/GMPLoader.cpp b/icecat/dom/media/gmp/GMPLoader.cpp index 0a684d6452..3749d3468c 100644 --- a/icecat/dom/media/gmp/GMPLoader.cpp +++ b/icecat/dom/media/gmp/GMPLoader.cpp @@ -8,14 +8,14 @@ #include #include "mozilla/Attributes.h" #include "nsExceptionHandler.h" +#include "GMPLog.h" #include "gmp-entrypoints.h" #include "prlink.h" #include "prenv.h" #include "prerror.h" #if defined(XP_WIN) && defined(MOZ_SANDBOX) # include "mozilla/sandboxTarget.h" -# include "mozilla/sandboxing/SandboxInitialization.h" -# include "mozilla/sandboxing/sandboxLogging.h" +# include "nsWindowsHelpers.h" #endif #if defined(XP_LINUX) && defined(MOZ_SANDBOX) # include "mozilla/Sandbox.h" @@ -83,18 +83,107 @@ class PassThroughGMPAdapter : public GMPAdapter { PRLibrary* mLib = nullptr; }; +#if defined(XP_WIN) && defined(MOZ_SANDBOX) +// This performs the same checks for an AppLocker policy that are performed in +// SaferpIsV2PolicyPresent from ntdll.dll, they are used to decide whether an +// AppLocker ioctl call is made. +static bool IsAppLockerPolicyPresent() { + // RuleCount check for policy configured via Local Security Policy. + DWORD ruleCount = 0; + DWORD ruleCountSize = sizeof(ruleCount); + if (RegGetValueW(HKEY_LOCAL_MACHINE, + LR"(SYSTEM\CurrentControlSet\Control\Srp\GP)", L"RuleCount", + RRF_RT_REG_DWORD, nullptr, &ruleCount, + &ruleCountSize) == ERROR_SUCCESS && + ruleCount != 0) { + return true; + } + + // Directory check for policy configured via Mobile Device Management. + static constexpr wchar_t appLockerMDMPath[] = LR"(\System32\AppLocker\MDM)"; + wchar_t path[MAX_PATH + sizeof(appLockerMDMPath) / sizeof(wchar_t)]; + UINT len = GetSystemWindowsDirectoryW(path, MAX_PATH); + if (len != 0 && len < MAX_PATH) { + wcscpy(path + len, appLockerMDMPath); + return GetFileAttributesW(path) != INVALID_FILE_ATTRIBUTES; + } + return false; +} + +static void EnsureAppLockerCacheIsWarm(const wchar_t* aWidePath) { + // IOCTL to \Device\SrpDevice (\\.\SrpDevice via DosDevices) that triggers + // AppLocker to cache the allow/deny decision for the DLL, warming the NTFS + // EA cache before the sandbox starts. + static constexpr DWORD IOCTL_SRP_VERIFY_DLL = 0x225804; + static constexpr wchar_t kSrpDevicePath[] = LR"(\\.\SrpDevice)"; + + // Buffer layout: [HANDLE as 8 bytes][USHORT pathBytes][WCHAR path...] + // The handle field is always 8 bytes. On x86 the handle is zero-extended. + struct SrpIoctlBuffer { + uint64_t handle; + USHORT pathBytes; + WCHAR path[1]; + }; + static constexpr DWORD kSrpHeaderSize = offsetof(SrpIoctlBuffer, path); + + UniquePtr fileHandle(CreateFileW( + aWidePath, FILE_READ_DATA | FILE_EXECUTE | SYNCHRONIZE, + FILE_SHARE_READ | FILE_SHARE_DELETE, nullptr, OPEN_EXISTING, 0, nullptr)); + if (fileHandle.get() == INVALID_HANDLE_VALUE) { + GMP_LOG_WARNING("EnsureAppLockerCacheIsWarm: CreateFileW failed (%lu)", + GetLastError()); + return; + } + + NtPathFromDosPath ntPath(aWidePath); + if (!ntPath.IsValid()) { + return; + } + + DWORD ioctlSize = kSrpHeaderSize + ntPath.LengthInBytes(); + auto buf = MakeUnique(ioctlSize); + auto* srp = reinterpret_cast(buf.get()); + + // ULONG_PTR is pointer-sized (4 bytes on x86, 8 on x64). Casting to uint64_t + // zero-extends on x86, matching the cdq zero-extension in x86 ntdll. + srp->handle = + static_cast(reinterpret_cast(fileHandle.get())); + srp->pathBytes = ntPath.LengthInBytes(); + if (!ntPath.CopyTo( + mozilla::Span(srp->path, ntPath.LengthInBytes() / sizeof(WCHAR)))) { + MOZ_DIAGNOSTIC_ASSERT(false, "CopyTo failed: buffer too small"); + return; + } + + UniquePtr srpDevice( + CreateFileW(kSrpDevicePath, FILE_READ_DATA, + FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, + nullptr, OPEN_EXISTING, 0, nullptr)); + if (srpDevice.get() == INVALID_HANDLE_VALUE) { + GMP_LOG_WARNING( + "EnsureAppLockerCacheIsWarm: opening SrpDevice failed (%lu)", + GetLastError()); + return; + } + + DWORD outBuf = 0; + DWORD bytesReturned = 0; + if (!DeviceIoControl(srpDevice.get(), IOCTL_SRP_VERIFY_DLL, srp, ioctlSize, + &outBuf, sizeof(outBuf), &bytesReturned, nullptr)) { + GMP_LOG_DEBUG( + "EnsureAppLockerCacheIsWarm: DeviceIoControl failed (%lu), " + "AppLocker may not be enabled", + GetLastError()); + } +} +#endif + bool GMPLoader::Load(const char* aUTF8LibPath, uint32_t aUTF8LibPathLen, const GMPPlatformAPI* aPlatformAPI, GMPAdapter* aAdapter) { CrashReporter::AutoRecordAnnotation autoLibPath( CrashReporter::Annotation::GMPLibraryPath, nsDependentCString(aUTF8LibPath)); - if (!getenv("MOZ_DISABLE_GMP_SANDBOX") && mSandboxStarter && - !mSandboxStarter->Start(aUTF8LibPath)) { - MOZ_CRASH("Cannot start sandbox!"); - return false; - } - // Load the GMP. PRLibSpec libSpec; #ifdef XP_WIN @@ -111,6 +200,20 @@ bool GMPLoader::Load(const char* aUTF8LibPath, uint32_t aUTF8LibPathLen, return false; } +# if defined(MOZ_SANDBOX) + if (IsAppLockerPolicyPresent()) { + EnsureAppLockerCacheIsWarm(widePath.get()); + } +# endif +#endif + + if (!getenv("MOZ_DISABLE_GMP_SANDBOX") && mSandboxStarter && + !mSandboxStarter->Start(aUTF8LibPath)) { + MOZ_CRASH("Cannot start sandbox!"); + return false; + } + +#ifdef XP_WIN libSpec.value.pathname_u = widePath.get(); libSpec.type = PR_LibSpec_PathnameU; #else diff --git a/icecat/dom/media/gmp/GMPSharedMemManager.h b/icecat/dom/media/gmp/GMPSharedMemManager.h index d3ae0fbd09..d7607297ee 100644 --- a/icecat/dom/media/gmp/GMPSharedMemManager.h +++ b/icecat/dom/media/gmp/GMPSharedMemManager.h @@ -11,6 +11,8 @@ namespace mozilla::gmp { +class GMPVideoi420FrameImpl; + enum class GMPSharedMemClass { Decoded, Encoded }; class GMPSharedMemManager { @@ -27,6 +29,8 @@ class GMPSharedMemManager { virtual bool MgrAllocShmem(size_t aSize, ipc::Shmem* aMem) { return false; } virtual void MgrDeallocShmem(ipc::Shmem& aMem) = 0; + virtual void MgrDecodedFrameDestroyed(GMPVideoi420FrameImpl* aFrame) {} + protected: virtual bool MgrIsOnOwningThread() const = 0; diff --git a/icecat/dom/media/gmp/GMPVideoEncoderChild.cpp b/icecat/dom/media/gmp/GMPVideoEncoderChild.cpp index f4b507d427..953bbcc60d 100644 --- a/icecat/dom/media/gmp/GMPVideoEncoderChild.cpp +++ b/icecat/dom/media/gmp/GMPVideoEncoderChild.cpp @@ -10,7 +10,6 @@ #include "mozilla/Unused.h" #include "GMPPlatform.h" #include "GMPVideoEncodedFrameImpl.h" -#include "GMPVideoi420FrameImpl.h" #include "runnable_utils.h" namespace mozilla::gmp { @@ -67,9 +66,26 @@ void GMPVideoEncoderChild::Encoded(GMPVideoEncodedFrame* aEncodedFrame, MOZ_CRASH("Encoded without any frame data!"); } + mLatestEncodedTimestamp = frameData.mTimestamp(); + aEncodedFrame->Destroy(); } +void GMPVideoEncoderChild::MgrDecodedFrameDestroyed( + GMPVideoi420FrameImpl* aFrame) { + if (NS_WARN_IF(!mPlugin)) { + return; + } + + // The OpenH264 encoder destroys the input frame if it has skipped encoding + // it. When it has encoded it, it calls the Encoded() callback before + // destroying the frame. + MOZ_ASSERT(mPlugin->GMPMessageLoop() == MessageLoop::current()); + if (aFrame->Timestamp() > mLatestEncodedTimestamp) { + (void)SendDroppedFrame(aFrame->Timestamp()); + } +} + void GMPVideoEncoderChild::Error(GMPErr aError) { if (NS_WARN_IF(!mPlugin)) { return; @@ -116,8 +132,10 @@ mozilla::ipc::IPCResult GMPVideoEncoderChild::RecvEncode( return IPC_FAIL(this, "!mVideoDecoder"); } + // The `this` destroyed callback outlives the frame, because `mVideoEncoder` + // is responsible for destroying the frame, and we outlive `mVideoEncoder`. auto* f = new GMPVideoi420FrameImpl(aInputFrame, std::move(aInputShmem), - &mVideoHost); + &mVideoHost, HostReportPolicy::Destroyed); // Ignore any return code. It is OK for this to fail without killing the // process. diff --git a/icecat/dom/media/gmp/GMPVideoEncoderChild.h b/icecat/dom/media/gmp/GMPVideoEncoderChild.h index 6cfd161c1f..b148b08cce 100644 --- a/icecat/dom/media/gmp/GMPVideoEncoderChild.h +++ b/icecat/dom/media/gmp/GMPVideoEncoderChild.h @@ -10,6 +10,7 @@ #include "mozilla/gmp/PGMPVideoEncoderChild.h" #include "gmp-video-encode.h" #include "GMPSharedMemManager.h" +#include "GMPVideoi420FrameImpl.h" #include "GMPVideoHost.h" namespace mozilla::gmp { @@ -39,6 +40,7 @@ class GMPVideoEncoderChild final : public PGMPVideoEncoderChild, // GMPSharedMemManager void MgrDeallocShmem(Shmem& aMem) override { DeallocShmem(aMem); } + void MgrDecodedFrameDestroyed(GMPVideoi420FrameImpl* aFrame) override; protected: bool MgrIsOnOwningThread() const override; @@ -66,6 +68,7 @@ class GMPVideoEncoderChild final : public PGMPVideoEncoderChild, GMPContentChild* mPlugin; GMPVideoEncoder* mVideoEncoder; GMPVideoHostImpl mVideoHost; + uint64_t mLatestEncodedTimestamp = 0; }; } // namespace mozilla::gmp diff --git a/icecat/dom/media/gmp/GMPVideoEncoderParent.cpp b/icecat/dom/media/gmp/GMPVideoEncoderParent.cpp index 53ac87878a..fdd91c8b51 100644 --- a/icecat/dom/media/gmp/GMPVideoEncoderParent.cpp +++ b/icecat/dom/media/gmp/GMPVideoEncoderParent.cpp @@ -271,6 +271,14 @@ mozilla::ipc::IPCResult GMPVideoEncoderParent::RecvEncodedData( return IPC_OK(); } +mozilla::ipc::IPCResult GMPVideoEncoderParent::RecvDroppedFrame( + const uint64_t& aTimestamp) { + if (mCallback) { + mCallback->Dropped(aTimestamp); + } + return IPC_OK(); +} + mozilla::ipc::IPCResult GMPVideoEncoderParent::RecvError(const GMPErr& aError) { if (mCallback) { mCallback->Error(aError); diff --git a/icecat/dom/media/gmp/GMPVideoEncoderParent.h b/icecat/dom/media/gmp/GMPVideoEncoderParent.h index 78306ab2f9..4b43dfd1c5 100644 --- a/icecat/dom/media/gmp/GMPVideoEncoderParent.h +++ b/icecat/dom/media/gmp/GMPVideoEncoderParent.h @@ -73,6 +73,7 @@ class GMPVideoEncoderParent final : public GMPVideoEncoderProxy, const GMPVideoEncodedFrameData& aEncodedFrame, nsTArray&& aEncodedData, nsTArray&& aCodecSpecificInfo) override; + mozilla::ipc::IPCResult RecvDroppedFrame(const uint64_t& aTimestamp) override; mozilla::ipc::IPCResult RecvError(const GMPErr& aError) override; mozilla::ipc::IPCResult RecvShutdown() override; diff --git a/icecat/dom/media/gmp/GMPVideoEncoderProxy.h b/icecat/dom/media/gmp/GMPVideoEncoderProxy.h index ad638ebb3a..6da7702770 100644 --- a/icecat/dom/media/gmp/GMPVideoEncoderProxy.h +++ b/icecat/dom/media/gmp/GMPVideoEncoderProxy.h @@ -19,6 +19,7 @@ class GMPVideoEncoderCallbackProxy : public GMPCallbackBase { virtual ~GMPVideoEncoderCallbackProxy() = default; virtual void Encoded(GMPVideoEncodedFrame* aEncodedFrame, const nsTArray& aCodecSpecificInfo) = 0; + virtual void Dropped(uint64_t aTimestamp) = 0; virtual void Error(GMPErr aError) = 0; }; diff --git a/icecat/dom/media/gmp/GMPVideoHost.cpp b/icecat/dom/media/gmp/GMPVideoHost.cpp index 76580f6c6a..7d59413516 100644 --- a/icecat/dom/media/gmp/GMPVideoHost.cpp +++ b/icecat/dom/media/gmp/GMPVideoHost.cpp @@ -93,6 +93,9 @@ void GMPVideoHostImpl::DecodedFrameCreated( void GMPVideoHostImpl::DecodedFrameDestroyed(GMPVideoi420FrameImpl* aFrame) { MOZ_ALWAYS_TRUE(mDecodedFrames.RemoveElement(aFrame)); + if (mSharedMemMgr && aFrame->mReportPolicy == HostReportPolicy::Destroyed) { + mSharedMemMgr->MgrDecodedFrameDestroyed(aFrame); + } } } // namespace mozilla::gmp diff --git a/icecat/dom/media/gmp/GMPVideoi420FrameImpl.cpp b/icecat/dom/media/gmp/GMPVideoi420FrameImpl.cpp index c291893033..b3a870b9c0 100644 --- a/icecat/dom/media/gmp/GMPVideoi420FrameImpl.cpp +++ b/icecat/dom/media/gmp/GMPVideoi420FrameImpl.cpp @@ -38,16 +38,25 @@ void GMPVideoi420FrameImpl::GMPFramePlane::Copy(uint8_t* aDst, } } -GMPVideoi420FrameImpl::GMPVideoi420FrameImpl(GMPVideoHostImpl* aHost) - : mHost(aHost), mWidth(0), mHeight(0), mTimestamp(0ll), mDuration(0ll) { +GMPVideoi420FrameImpl::GMPVideoi420FrameImpl( + GMPVideoHostImpl* aHost, + HostReportPolicy aReportPolicy /*= HostReportPolicy::None*/) + : mReportPolicy(aReportPolicy), + mHost(aHost), + mWidth(0), + mHeight(0), + mTimestamp(0ll), + mDuration(0ll) { MOZ_ASSERT(aHost); aHost->DecodedFrameCreated(this); } GMPVideoi420FrameImpl::GMPVideoi420FrameImpl( const GMPVideoi420FrameData& aFrameData, ipc::Shmem&& aShmemBuffer, - GMPVideoHostImpl* aHost) - : mHost(aHost), + GMPVideoHostImpl* aHost, + HostReportPolicy aReportPolicy /*= HostReportPolicy::None*/) + : mReportPolicy(aReportPolicy), + mHost(aHost), mShmemBuffer(std::move(aShmemBuffer)), mYPlane(aFrameData.mYPlane()), mUPlane(aFrameData.mUPlane()), @@ -63,8 +72,10 @@ GMPVideoi420FrameImpl::GMPVideoi420FrameImpl( GMPVideoi420FrameImpl::GMPVideoi420FrameImpl( const GMPVideoi420FrameData& aFrameData, nsTArray&& aArrayBuffer, - GMPVideoHostImpl* aHost) - : mHost(aHost), + GMPVideoHostImpl* aHost, + HostReportPolicy aReportPolicy /*= HostReportPolicy::None*/) + : mReportPolicy(aReportPolicy), + mHost(aHost), mArrayBuffer(std::move(aArrayBuffer)), mYPlane(aFrameData.mYPlane()), mUPlane(aFrameData.mUPlane()), @@ -146,30 +157,76 @@ bool GMPVideoi420FrameImpl::CheckFrameData( // if so. Note: Size() greater than expected is also an error, but with no // negative consequences int32_t half_width = (aFrameData.mWidth() + 1) / 2; - if ((aFrameData.mYPlane().mStride() <= 0) || - (aFrameData.mYPlane().mSize() <= 0) || - (aFrameData.mYPlane().mOffset() < 0) || - (aFrameData.mUPlane().mStride() <= 0) || - (aFrameData.mUPlane().mSize() <= 0) || - (aFrameData.mUPlane().mOffset() < - aFrameData.mYPlane().mOffset() + aFrameData.mYPlane().mSize()) || - (aFrameData.mVPlane().mStride() <= 0) || - (aFrameData.mVPlane().mSize() <= 0) || - (aFrameData.mVPlane().mOffset() < - aFrameData.mUPlane().mOffset() + aFrameData.mUPlane().mSize()) || - (aBufferSize < static_cast(aFrameData.mVPlane().mOffset()) + - static_cast(aFrameData.mVPlane().mSize())) || - (aFrameData.mYPlane().mStride() < aFrameData.mWidth()) || - (aFrameData.mUPlane().mStride() < half_width) || - (aFrameData.mVPlane().mStride() < half_width) || - (aFrameData.mYPlane().mSize() < - aFrameData.mYPlane().mStride() * aFrameData.mHeight()) || - (aFrameData.mUPlane().mSize() < - aFrameData.mUPlane().mStride() * ((aFrameData.mHeight() + 1) / 2)) || - (aFrameData.mVPlane().mSize() < - aFrameData.mVPlane().mStride() * ((aFrameData.mHeight() + 1) / 2))) { + int32_t half_height = (aFrameData.mHeight() + 1) / 2; + + // Check for negative offsets + if ((aFrameData.mYPlane().mOffset() < 0) || + (aFrameData.mUPlane().mOffset() < 0) || + (aFrameData.mVPlane().mOffset() < 0)) { return false; } + + // Check for non-positive strides and sizes + if ((aFrameData.mYPlane().mStride() <= 0) || + (aFrameData.mYPlane().mSize() <= 0) || + (aFrameData.mUPlane().mStride() <= 0) || + (aFrameData.mUPlane().mSize() <= 0) || + (aFrameData.mVPlane().mStride() <= 0) || + (aFrameData.mVPlane().mSize() <= 0)) { + return false; + } + + // Check stride requirements (must be at least as wide as the data) + if ((aFrameData.mYPlane().mStride() < aFrameData.mWidth()) || + (aFrameData.mUPlane().mStride() < half_width) || + (aFrameData.mVPlane().mStride() < half_width)) { + return false; + } + + // Validate plane end calculations + auto y_plane_end = CheckedInt(aFrameData.mYPlane().mOffset()) + + aFrameData.mYPlane().mSize(); + auto u_plane_end = CheckedInt(aFrameData.mUPlane().mOffset()) + + aFrameData.mUPlane().mSize(); + auto v_plane_end = CheckedInt(aFrameData.mVPlane().mOffset()) + + aFrameData.mVPlane().mSize(); + + if (!y_plane_end.isValid() || !u_plane_end.isValid() || + !v_plane_end.isValid()) { + return false; + } + + // Check that planes don't overlap + if ((aFrameData.mUPlane().mOffset() < y_plane_end.value()) || + (aFrameData.mVPlane().mOffset() < u_plane_end.value())) { + return false; + } + + // Check buffer size + if (aBufferSize < static_cast(v_plane_end.value())) { + return false; + } + + // Validate size calculations + auto y_expected_size = CheckedInt(aFrameData.mYPlane().mStride()) * + aFrameData.mHeight(); + auto u_expected_size = + CheckedInt(aFrameData.mUPlane().mStride()) * half_height; + auto v_expected_size = + CheckedInt(aFrameData.mVPlane().mStride()) * half_height; + + if (!y_expected_size.isValid() || !u_expected_size.isValid() || + !v_expected_size.isValid()) { + return false; + } + + // Check that allocated sizes are sufficient + if ((aFrameData.mYPlane().mSize() < y_expected_size.value()) || + (aFrameData.mUPlane().mSize() < u_expected_size.value()) || + (aFrameData.mVPlane().mSize() < v_expected_size.value())) { + return false; + } + return true; } diff --git a/icecat/dom/media/gmp/GMPVideoi420FrameImpl.h b/icecat/dom/media/gmp/GMPVideoi420FrameImpl.h index 1490495a90..35f86f269b 100644 --- a/icecat/dom/media/gmp/GMPVideoi420FrameImpl.h +++ b/icecat/dom/media/gmp/GMPVideoi420FrameImpl.h @@ -17,14 +17,24 @@ class GMPPlaneData; class GMPVideoi420FrameData; class GMPVideoHostImpl; -class GMPVideoi420FrameImpl final : public GMPVideoi420Frame { +enum class HostReportPolicy : uint8_t { + None, + Destroyed, +}; + +class GMPVideoi420FrameImpl : public GMPVideoi420Frame { public: - explicit GMPVideoi420FrameImpl(GMPVideoHostImpl* aHost); - GMPVideoi420FrameImpl(const GMPVideoi420FrameData& aFrameData, - ipc::Shmem&& aShmemBuffer, GMPVideoHostImpl* aHost); - GMPVideoi420FrameImpl(const GMPVideoi420FrameData& aFrameData, - nsTArray&& aArrayBuffer, - GMPVideoHostImpl* aHost); + explicit GMPVideoi420FrameImpl( + GMPVideoHostImpl* aHost, + HostReportPolicy aReportPolicy = HostReportPolicy::None); + GMPVideoi420FrameImpl( + const GMPVideoi420FrameData& aFrameData, ipc::Shmem&& aShmemBuffer, + GMPVideoHostImpl* aHost, + HostReportPolicy aReportPolicy = HostReportPolicy::None); + GMPVideoi420FrameImpl( + const GMPVideoi420FrameData& aFrameData, nsTArray&& aArrayBuffer, + GMPVideoHostImpl* aHost, + HostReportPolicy aReportPolicy = HostReportPolicy::None); virtual ~GMPVideoi420FrameImpl(); // This is called during a normal destroy sequence, which is @@ -75,7 +85,7 @@ class GMPVideoi420FrameImpl final : public GMPVideoi420Frame { const uint8_t* Buffer() const; int32_t AllocatedSize() const; - private: + protected: struct GMPFramePlane { explicit GMPFramePlane(const GMPPlaneData& aPlaneData); GMPFramePlane() = default; @@ -98,6 +108,10 @@ class GMPVideoi420FrameImpl final : public GMPVideoi420Frame { GMPErr MaybeResize(int32_t aNewSize); void DestroyBuffer(); + public: + const HostReportPolicy mReportPolicy; + + protected: GMPVideoHostImpl* mHost; nsTArray mArrayBuffer; ipc::Shmem mShmemBuffer; diff --git a/icecat/dom/media/gmp/PGMPVideoEncoder.ipdl b/icecat/dom/media/gmp/PGMPVideoEncoder.ipdl index 25b7d2b05b..959600e98b 100644 --- a/icecat/dom/media/gmp/PGMPVideoEncoder.ipdl +++ b/icecat/dom/media/gmp/PGMPVideoEncoder.ipdl @@ -43,6 +43,7 @@ parent: async EncodedData(GMPVideoEncodedFrameData aEncodedFrame, uint8_t[] aEncodedData, uint8_t[] aCodecSpecificInfo); + async DroppedFrame(uint64_t aTimestamp); async Error(GMPErr aErr); async Shutdown(); }; diff --git a/icecat/dom/media/gtest/TestWebrtcGmpCodec.cpp b/icecat/dom/media/gtest/TestWebrtcGmpCodec.cpp new file mode 100644 index 0000000000..18700b9282 --- /dev/null +++ b/icecat/dom/media/gtest/TestWebrtcGmpCodec.cpp @@ -0,0 +1,279 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim: set ts=2 et sw=2 tw=80: */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "api/video/i420_buffer.h" +#include "gmock/gmock.h" +#include "gtest/gtest.h" +#include "libwebrtcglue/WebrtcGmpVideoCodec.h" +#include "media/base/media_constants.h" +#include "mozilla/gtest/WaitFor.h" +#include "nsServiceManagerUtils.h" + +using testing::_; +using testing::AtLeast; +using testing::Eq; +using testing::Ge; +using testing::Gt; +using testing::InSequence; +using testing::Property; +using testing::Test; + +namespace mozilla { + +struct TestWebrtcGmpVideoEncoder : public Test { + nsCOMPtr mGmpThread; + RefPtr mEncoder; + webrtc::VideoCodec mCodecSettings; + webrtc::VideoEncoder::Settings mSettings = { + webrtc::VideoEncoder::Capabilities(/*loss_notification=*/true), + /*number_of_cores=*/1, /*max_payload_size=*/0}; + + void SetUp() override { + mEncoder = MakeRefPtr( + webrtc::SdpVideoFormat(cricket::kH264CodecName), "dummy"); + mCodecSettings.codecType = webrtc::VideoCodecType::kVideoCodecH264; + mCodecSettings.numberOfSimulcastStreams = 1; + mCodecSettings.simulcastStream[0].active = true; + mCodecSettings.simulcastStream[0].numberOfTemporalLayers = 1; + mCodecSettings.width = 640; + mCodecSettings.height = 480; + mCodecSettings.maxFramerate = 60; + mCodecSettings.minBitrate = 50; + mCodecSettings.startBitrate = 200; + mCodecSettings.maxBitrate = 1000; + + nsCOMPtr mps = + do_GetService("@mozilla.org/gecko-media-plugin-service;1"); + ASSERT_TRUE(mps); + mps->GetThread(getter_AddRefs(mGmpThread)); + ASSERT_TRUE(mGmpThread); + } + + void TearDown() override { mEncoder = nullptr; } +}; + +struct MockEncodedImageCallback : public webrtc::EncodedImageCallback { + MOCK_METHOD(Result, OnEncodedImage, + (const webrtc::EncodedImage&, const webrtc::CodecSpecificInfo*), + (override)); + MOCK_METHOD(void, OnDroppedFrame, (DropReason), (override)); +}; + +auto CreateBlackFrame(int width, int height) { + auto buffer = webrtc::I420Buffer::Create(width, height); + webrtc::I420Buffer::SetBlack(buffer.get()); + return buffer; +} + +TEST_F(TestWebrtcGmpVideoEncoder, EmptyLifecycle) {} + +TEST_F(TestWebrtcGmpVideoEncoder, InitEncode) { + mEncoder->InitEncode(&mCodecSettings, mSettings); + WaitFor(*mEncoder->InitPluginEvent()); +} + +TEST_F(TestWebrtcGmpVideoEncoder, Encode) { + using Result = webrtc::EncodedImageCallback::Result; + mEncoder->InitEncode(&mCodecSettings, mSettings); + WaitFor(*mEncoder->InitPluginEvent()); + + MozPromiseHolder doneHolder; + RefPtr donePromise = doneHolder.Ensure(__func__); + MockEncodedImageCallback callback; + constexpr uint32_t rtp_time = 55; + EXPECT_CALL( + callback, + OnEncodedImage( + Property(&webrtc::EncodedImage::RtpTimestamp, Eq(rtp_time)), _)) + .WillOnce([&] { + doneHolder.Resolve(true, "TestWebrtcGmpVideoEncoder::Encode"); + return Result(Result::OK); + }); + mEncoder->RegisterEncodeCompleteCallback(&callback); + std::vector types = { + webrtc::VideoFrameType::kVideoFrameKey}; + EXPECT_EQ( + mEncoder->Encode(webrtc::VideoFrame::Builder() + .set_rtp_timestamp(rtp_time) + .set_video_frame_buffer(CreateBlackFrame( + mCodecSettings.width, mCodecSettings.height)) + .build(), + &types), + WEBRTC_VIDEO_CODEC_OK); + EXPECT_EQ(WaitForResolve(donePromise), true); +} + +TEST_F(TestWebrtcGmpVideoEncoder, BackPressure) { + using Result = webrtc::EncodedImageCallback::Result; + mEncoder->InitEncode(&mCodecSettings, mSettings); + WaitFor(*mEncoder->InitPluginEvent()); + + MozPromiseHolder doneHolder; + RefPtr donePromise = doneHolder.Ensure(__func__); + MockEncodedImageCallback callback; + constexpr uint32_t rtpTime = 55; + constexpr size_t iterations = 1000; + Atomic lastRtpTime{}; + Atomic eventCount{}; + const auto countIteration = [&] { + size_t c = ++eventCount; + EXPECT_LE(c, iterations); + if (c == iterations) { + doneHolder.Resolve(true, "TestWebrtcGmpVideoEncoder::BackPressure"); + } + }; + EXPECT_CALL( + callback, + OnEncodedImage( + Property(&webrtc::EncodedImage::RtpTimestamp, + testing::AllOf(Ge(rtpTime), Gt(lastRtpTime))), + _)) + .Times(AtLeast(1)) + .WillRepeatedly([&](const auto& aImage, const auto*) { + lastRtpTime = aImage.RtpTimestamp(); + countIteration(); + return Result(Result::OK); + }); + EXPECT_CALL( + callback, + OnDroppedFrame(MockEncodedImageCallback::DropReason::kDroppedByEncoder)) + .Times(AtLeast(iterations / 10)) + .WillRepeatedly(countIteration); + mEncoder->RegisterEncodeCompleteCallback(&callback); + std::vector types = { + webrtc::VideoFrameType::kVideoFrameKey}; + EXPECT_EQ( + mEncoder->Encode(webrtc::VideoFrame::Builder() + .set_rtp_timestamp(rtpTime) + .set_video_frame_buffer(CreateBlackFrame( + mCodecSettings.width, mCodecSettings.height)) + .build(), + &types), + WEBRTC_VIDEO_CODEC_OK); + for (size_t i = 1; i < iterations; ++i) { + mEncoder->Encode(webrtc::VideoFrame::Builder() + .set_rtp_timestamp(rtpTime + i) + .set_video_frame_buffer(CreateBlackFrame( + mCodecSettings.width, mCodecSettings.height)) + .build(), + &types); + } + EXPECT_EQ(WaitForResolve(donePromise), true); + EXPECT_EQ(eventCount, iterations); +} + +TEST_F(TestWebrtcGmpVideoEncoder, ReUse) { + using Result = webrtc::EncodedImageCallback::Result; + mEncoder->InitEncode(&mCodecSettings, mSettings); + WaitFor(*mEncoder->InitPluginEvent()); + + MozPromiseHolder doneHolder; + RefPtr donePromise = doneHolder.Ensure(__func__); + MockEncodedImageCallback callback; + constexpr uint32_t rtpTime = 55; + constexpr uint32_t rtpTime2 = rtpTime * 2; + EXPECT_CALL(callback, + OnEncodedImage( + Property(&webrtc::EncodedImage::RtpTimestamp, rtpTime2), _)) + .WillOnce([&] { + doneHolder.Resolve(true, "TestWebrtcGmpVideoEncoder::ReUse"); + return Result(Result::OK); + }); + mEncoder->RegisterEncodeCompleteCallback(&callback); + + // Block the GMP thread until after Shutdown() as to avoid racing between the + // first encoded callback and the Shutdown() call. + Monitor mon(__func__); + bool block = true; + MOZ_ALWAYS_SUCCEEDS( + mGmpThread->Dispatch(NS_NewRunnableFunction(__func__, [&] { + MonitorAutoLock lock(mon); + while (block) { + lock.Wait(); + } + }))); + std::vector types = { + webrtc::VideoFrameType::kVideoFrameKey}; + EXPECT_EQ( + mEncoder->Encode(webrtc::VideoFrame::Builder() + .set_rtp_timestamp(rtpTime) + .set_video_frame_buffer(CreateBlackFrame( + mCodecSettings.width, mCodecSettings.height)) + .build(), + &types), + WEBRTC_VIDEO_CODEC_OK); + + // Shutdown mid-encode, then re-init and encode again. + mEncoder->Shutdown(); + { + MonitorAutoLock lock(mon); + block = false; + lock.Notify(); + } + mEncoder->InitEncode(&mCodecSettings, mSettings); + WaitFor(*mEncoder->InitPluginEvent()); + mEncoder->RegisterEncodeCompleteCallback(&callback); + + EXPECT_EQ( + mEncoder->Encode(webrtc::VideoFrame::Builder() + .set_rtp_timestamp(rtpTime2) + .set_video_frame_buffer(CreateBlackFrame( + mCodecSettings.width, mCodecSettings.height)) + .build(), + &types), + WEBRTC_VIDEO_CODEC_OK); + EXPECT_EQ(WaitForResolve(donePromise), true); +} + +TEST_F(TestWebrtcGmpVideoEncoder, TrackedFrameDrops) { + using Result = webrtc::EncodedImageCallback::Result; + // Tell the fakeopenh264 plugin to drop some allocated input frames without + // telling us. It will drop every fifth input frame. This shall get tracked + // as frame drops. + mCodecSettings.SetFrameDropEnabled(true); + mEncoder->InitEncode(&mCodecSettings, mSettings); + WaitFor(*mEncoder->InitPluginEvent()); + + Monitor m(__func__); + size_t numEvents = 0; + const auto handleEvent = ([&] { + MonitorAutoLock lock(m); + ++numEvents; + lock.Notify(); + }); + MockEncodedImageCallback callback; + { + InSequence s; + EXPECT_CALL(callback, OnEncodedImage(_, _)).Times(4).WillRepeatedly([&] { + handleEvent(); + return Result(Result::OK); + }); + EXPECT_CALL( + callback, + OnDroppedFrame(MockEncodedImageCallback::DropReason::kDroppedByEncoder)) + .WillOnce(handleEvent); + } + mEncoder->RegisterEncodeCompleteCallback(&callback); + + constexpr uint32_t ntpTime = 55; + std::vector types = { + webrtc::VideoFrameType::kVideoFrameKey}; + for (uint8_t i = 0; i < 5; ++i) { + EXPECT_EQ( + mEncoder->Encode(webrtc::VideoFrame::Builder() + .set_ntp_time_ms(ntpTime * (i + 1)) + .set_video_frame_buffer(CreateBlackFrame( + mCodecSettings.width, mCodecSettings.height)) + .build(), + &types), + WEBRTC_VIDEO_CODEC_OK); + MonitorAutoLock lock(m); + while (numEvents <= i) { + lock.Wait(); + } + } +} +} // namespace mozilla diff --git a/icecat/dom/media/gtest/moz.build b/icecat/dom/media/gtest/moz.build index 0e4d2fd4ea..aa8dfd911f 100644 --- a/icecat/dom/media/gtest/moz.build +++ b/icecat/dom/media/gtest/moz.build @@ -92,6 +92,7 @@ if CONFIG["MOZ_WEBRTC"] and CONFIG["OS_TARGET"] != "Android": "TestAudioDeviceEnumerator.cpp", "TestPacer.cpp", "TestVideoFrameConverter.cpp", + "TestWebrtcGmpCodec.cpp", ] TEST_HARNESS_FILES.gtest += [ diff --git a/icecat/dom/media/platforms/agnostic/VPXDecoder.cpp b/icecat/dom/media/platforms/agnostic/VPXDecoder.cpp index 002d8957ca..c849709299 100644 --- a/icecat/dom/media/platforms/agnostic/VPXDecoder.cpp +++ b/icecat/dom/media/platforms/agnostic/VPXDecoder.cpp @@ -187,13 +187,17 @@ RefPtr VPXDecoder::ProcessDecode( if (img->fmt == VPX_IMG_FMT_I420) { b.mChromaSubsampling = gfx::ChromaSubsampling::HALF_WIDTH_AND_HEIGHT; - + MOZ_ASSERT(img->y_chroma_shift == 1); b.mPlanes[1].mHeight = (img->d_h + 1) >> img->y_chroma_shift; + MOZ_ASSERT(img->x_chroma_shift == 1); b.mPlanes[1].mWidth = (img->d_w + 1) >> img->x_chroma_shift; b.mPlanes[2].mHeight = (img->d_h + 1) >> img->y_chroma_shift; b.mPlanes[2].mWidth = (img->d_w + 1) >> img->x_chroma_shift; } else if (img->fmt == VPX_IMG_FMT_I444) { + MOZ_ASSERT(b.mChromaSubsampling == gfx::ChromaSubsampling::FULL); + MOZ_ASSERT(img->y_chroma_shift == 0); + MOZ_ASSERT(img->x_chroma_shift == 0); b.mPlanes[1].mHeight = img->d_h; b.mPlanes[1].mWidth = img->d_w; diff --git a/icecat/dom/media/platforms/agnostic/gmp/GMPVideoEncoder.cpp b/icecat/dom/media/platforms/agnostic/gmp/GMPVideoEncoder.cpp index 477fb63d7c..d16963803c 100644 --- a/icecat/dom/media/platforms/agnostic/gmp/GMPVideoEncoder.cpp +++ b/icecat/dom/media/platforms/agnostic/gmp/GMPVideoEncoder.cpp @@ -427,6 +427,24 @@ void GMPVideoEncoder::Encoded(GMPVideoEncodedFrame* aEncodedFrame, } } +void GMPVideoEncoder::Dropped(uint64_t aTimestamp) { + MOZ_ASSERT(IsOnGMPThread()); + + RefPtr promise; + if (!mPendingEncodes.Remove(aTimestamp, getter_AddRefs(promise))) { + GMP_LOG_WARNING( + "[%p] GMPVideoEncoder::Dropped -- no frame matching timestamp %" PRIu64, + this, aTimestamp); + return; + } + + promise->Resolve(EncodedData(), __func__); + + if (mPendingEncodes.IsEmpty()) { + mDrainPromise.ResolveIfExists(EncodedData(), __func__); + } +} + void GMPVideoEncoder::Teardown(const MediaResult& aResult, StaticString aCallSite) { GMP_LOG_DEBUG("[%p] GMPVideoEncoder::Teardown", this); diff --git a/icecat/dom/media/platforms/agnostic/gmp/GMPVideoEncoder.h b/icecat/dom/media/platforms/agnostic/gmp/GMPVideoEncoder.h index 121d41cc59..d0646a4566 100644 --- a/icecat/dom/media/platforms/agnostic/gmp/GMPVideoEncoder.h +++ b/icecat/dom/media/platforms/agnostic/gmp/GMPVideoEncoder.h @@ -38,6 +38,7 @@ class GMPVideoEncoder final : public MediaDataEncoder, void Encoded(GMPVideoEncodedFrame* aEncodedFrame, const nsTArray& aCodecSpecificInfo) override; + void Dropped(uint64_t aTimestamp) override; void Error(GMPErr aError) override; void Terminated() override; diff --git a/icecat/dom/media/webcodecs/AudioData.cpp b/icecat/dom/media/webcodecs/AudioData.cpp index 4d72a1bf01..403b48355e 100644 --- a/icecat/dom/media/webcodecs/AudioData.cpp +++ b/icecat/dom/media/webcodecs/AudioData.cpp @@ -568,7 +568,7 @@ void AudioData::CopyTo(const AllowSharedBufferSource& aDestination, uint32_t bytesPerSample = BytesPerSamples(destFormat.value()); CheckedInt copyLength = bytesPerSample; copyLength *= copyElementCount; - if (copyLength.value() > destLength) { + if (!copyLength.isValid() || copyLength.value() > destLength) { auto msg = nsFmtCString(FMT_STRING("destination buffer of length {} too " "small for copying {} elements"), destLength, bytesPerSample * copyElementCount); diff --git a/icecat/dom/media/webrtc/jsep/JsepSessionImpl.cpp b/icecat/dom/media/webrtc/jsep/JsepSessionImpl.cpp index e173819bbe..e597852453 100644 --- a/icecat/dom/media/webrtc/jsep/JsepSessionImpl.cpp +++ b/icecat/dom/media/webrtc/jsep/JsepSessionImpl.cpp @@ -1905,17 +1905,17 @@ nsresult JsepSessionImpl::ValidateRemoteDescription(const Sdp& description) { const SdpMediaSection& oldMsection = mCurrentRemoteDescription->GetMediaSection(i); - if (mSdpHelper.MsectionIsDisabled(newMsection) || - mSdpHelper.MsectionIsDisabled(oldMsection)) { - continue; - } - if (oldMsection.GetMediaType() != newMsection.GetMediaType()) { JSEP_SET_ERROR("Remote description changes the media type of m-line " << i); return NS_ERROR_INVALID_ARG; } + if (mSdpHelper.MsectionIsDisabled(newMsection) || + mSdpHelper.MsectionIsDisabled(oldMsection)) { + continue; + } + bool differ = mSdpHelper.IceCredentialsDiffer(newMsection, oldMsection); if (mIsPendingOfferer.isSome() && *mIsPendingOfferer && differ && diff --git a/icecat/dom/media/webrtc/jsep/JsepTrack.cpp b/icecat/dom/media/webrtc/jsep/JsepTrack.cpp index f77ceaedba..96d7df79e2 100644 --- a/icecat/dom/media/webrtc/jsep/JsepTrack.cpp +++ b/icecat/dom/media/webrtc/jsep/JsepTrack.cpp @@ -5,10 +5,14 @@ #include "jsep/JsepTrack.h" #include "jsep/JsepCodecDescription.h" #include "jsep/JsepTrackEncoding.h" +#include "transport/logging.h" #include namespace mozilla { + +MOZ_MTLOG_MODULE("jsep") + void JsepTrack::GetNegotiatedPayloadTypes( std::vector* payloadTypes) const { if (!mNegotiatedDetails) { @@ -32,6 +36,8 @@ void JsepTrack::GetPayloadTypes( for (const auto& codec : codecs) { uint16_t pt; if (!codec->GetPtAsInt(&pt)) { + MOZ_MTLOG(ML_ERROR, "Codec " << codec->mName + << " does not have a valid payload type"); MOZ_ASSERT(false); continue; } @@ -52,14 +58,47 @@ void JsepTrack::EnsureSsrcs(SsrcGenerator& ssrcGenerator, size_t aNumber) { uint32_t ssrc, rtxSsrc; if (!ssrcGenerator.GenerateSsrc(&ssrc) || !ssrcGenerator.GenerateSsrc(&rtxSsrc)) { + MOZ_MTLOG(ML_ERROR, "Unable to generate SSRC"); return; } mSsrcs.push_back(ssrc); mSsrcToRtxSsrc[ssrc] = rtxSsrc; - MOZ_ASSERT(mSsrcs.size() == mSsrcToRtxSsrc.size()); + if (mSsrcs.size() != mSsrcToRtxSsrc.size()) { + MOZ_MTLOG(ML_ERROR, + "[" << mTrackId + << "]: mSsrcToRtxSsrc has different size than mSsrcs."); + MOZ_ASSERT(false); + mSsrcs.clear(); + mSsrcToRtxSsrc.clear(); + } } } +std::vector JsepTrack::GetRtxSsrcs() const { + std::vector result; + if (mRtxIsAllowed && + Preferences::GetBool("media.peerconnection.video.use_rtx", false) && + !mSsrcToRtxSsrc.empty()) { + if (mSsrcToRtxSsrc.size() != mSsrcs.size()) { + MOZ_MTLOG(ML_ERROR, + "[" << mTrackId + << "]: mSsrcToRtxSsrc has different size than mSsrcs."); + return {}; + } + for (const auto ssrc : mSsrcs) { + auto it = mSsrcToRtxSsrc.find(ssrc); + if (it != mSsrcToRtxSsrc.end()) { + result.push_back(it->second); + } else { + MOZ_MTLOG(ML_ERROR, + "[" << mTrackId << "]: No RTX SSRC found for SSRC " << ssrc); + return {}; + } + } + } + return result; +} + void JsepTrack::PopulateCodecs( const std::vector>& prototype, bool aUsePreferredCodecsOrder) { @@ -117,7 +156,10 @@ void JsepTrack::AddToAnswer(const SdpMediaSection& offer, } void JsepTrack::SetRids(const std::vector& aRids) { - MOZ_ASSERT(!aRids.empty()); + if (!aRids.size()) { + MOZ_MTLOG(ML_ERROR, "cannot set empty rids"); + return; + } if (!mRids.empty()) { return; } @@ -134,9 +176,17 @@ void JsepTrack::SetMaxEncodings(size_t aMax) { void JsepTrack::RecvTrackSetRemote(const Sdp& aSdp, const SdpMediaSection& aMsection) { mInHaveRemote = true; - MOZ_ASSERT(mDirection == sdp::kRecv); - MOZ_ASSERT(aMsection.GetMediaType() != - SdpMediaSection::MediaType::kApplication); + if (mDirection != sdp::kRecv) { + MOZ_MTLOG(ML_ERROR, "RecvTrackSetRemote called on non-receive track"); + MOZ_ASSERT(false); + return; + } + if (aMsection.GetMediaType() == SdpMediaSection::kApplication) { + MOZ_MTLOG(ML_ERROR, + "RecvTrackSetRemote called on application media section"); + MOZ_ASSERT(false); + return; + } std::string error; SdpHelper helper(&error); @@ -187,7 +237,11 @@ void JsepTrack::RecvTrackSetRemote(const Sdp& aSdp, } void JsepTrack::RecvTrackSetLocal(const SdpMediaSection& aMsection) { - MOZ_ASSERT(mDirection == sdp::kRecv); + if (mDirection != sdp::kRecv) { + MOZ_MTLOG(ML_ERROR, "RecvTrackSetLocal called on non-receive track"); + MOZ_ASSERT(false); + return; + } // TODO: Should more stuff live in here? Anything that needs to happen when we // decide we're ready to receive packets should probably go in here. @@ -259,9 +313,16 @@ void JsepTrack::SendTrackSetRemote(SsrcGenerator& aSsrcGenerator, void JsepTrack::AddToMsection( const std::vector>& codecs, SdpMediaSection* msection) const { - MOZ_ASSERT(msection->GetMediaType() == mType); - MOZ_ASSERT(!codecs.empty()); - + if (msection->GetMediaType() != mType) { + MOZ_MTLOG(ML_ERROR, "AddToMsection called on wrong media section type"); + MOZ_ASSERT(false); + return; + } + if (codecs.empty()) { + MOZ_MTLOG(ML_ERROR, "AddToMsection called with empty codecs"); + MOZ_ASSERT(false); + return; + } for (const auto& codec : codecs) { codec->AddToMediaSection(*msection); } @@ -279,8 +340,16 @@ void JsepTrack::AddToMsection( } void JsepTrack::UpdateSsrcs(SsrcGenerator& ssrcGenerator, size_t encodings) { - MOZ_ASSERT(mDirection == sdp::kSend); - MOZ_ASSERT(mType != SdpMediaSection::kApplication); + if (mDirection != sdp::kSend) { + MOZ_MTLOG(ML_ERROR, "UpdateSsrcs called on non-send track"); + MOZ_ASSERT(false); + return; + } + if (mType == SdpMediaSection::kApplication) { + MOZ_MTLOG(ML_ERROR, "UpdateSsrcs called on application media section"); + MOZ_ASSERT(false); + return; + } size_t numSsrcs = std::max(encodings, 1U); EnsureSsrcs(ssrcGenerator, numSsrcs); @@ -288,8 +357,10 @@ void JsepTrack::UpdateSsrcs(SsrcGenerator& ssrcGenerator, size_t encodings) { if (mNegotiatedDetails && mNegotiatedDetails->GetEncodingCount() > numSsrcs) { mNegotiatedDetails->TruncateEncodings(numSsrcs); } - - MOZ_ASSERT(!mSsrcs.empty()); + if (mSsrcs.empty()) { + MOZ_MTLOG(ML_ERROR, "UpdateSsrcs resulted in empty mSsrcs"); + MOZ_ASSERT(false); + } } void JsepTrack::PruneSsrcs(size_t aNumSsrcs) { @@ -352,7 +423,12 @@ void JsepTrack::AddToMsection(const std::vector& aRids, UpdateSsrcs(ssrcGenerator, aRids.size()); if (requireRtxSsrcs) { - MOZ_ASSERT(mSsrcs.size() == mSsrcToRtxSsrc.size()); + if (mSsrcs.size() != mSsrcToRtxSsrc.size()) { + MOZ_MTLOG(ML_ERROR, + "[" << mTrackId + << "]: mSsrcToRtxSsrc has different size than mSsrcs."); + return; + } std::vector allSsrcs; UniquePtr group(new SdpSsrcGroupAttributeList); for (const auto& ssrc : mSsrcs) { diff --git a/icecat/dom/media/webrtc/jsep/JsepTrack.h b/icecat/dom/media/webrtc/jsep/JsepTrack.h index 0bcc2f27e6..d753a77df5 100644 --- a/icecat/dom/media/webrtc/jsep/JsepTrack.h +++ b/icecat/dom/media/webrtc/jsep/JsepTrack.h @@ -166,20 +166,7 @@ class JsepTrack { virtual const std::vector& GetSsrcs() const { return mSsrcs; } - virtual std::vector GetRtxSsrcs() const { - std::vector result; - if (mRtxIsAllowed && - Preferences::GetBool("media.peerconnection.video.use_rtx", false) && - !mSsrcToRtxSsrc.empty()) { - MOZ_ASSERT(mSsrcToRtxSsrc.size() == mSsrcs.size()); - for (const auto ssrc : mSsrcs) { - auto it = mSsrcToRtxSsrc.find(ssrc); - MOZ_ASSERT(it != mSsrcToRtxSsrc.end()); - result.push_back(it->second); - } - } - return result; - } + virtual std::vector GetRtxSsrcs() const; virtual void EnsureSsrcs(SsrcGenerator& ssrcGenerator, size_t aNumber); diff --git a/icecat/dom/media/webrtc/jsep/moz.build b/icecat/dom/media/webrtc/jsep/moz.build index 0e7ebdc82f..8fc5ac162f 100644 --- a/icecat/dom/media/webrtc/jsep/moz.build +++ b/icecat/dom/media/webrtc/jsep/moz.build @@ -13,6 +13,9 @@ LOCAL_INCLUDES += [ "/third_party/sipcc", ] -UNIFIED_SOURCES += ["JsepSessionImpl.cpp", "JsepTrack.cpp", "SsrcGenerator.cpp"] +UNIFIED_SOURCES += ["JsepSessionImpl.cpp", "SsrcGenerator.cpp"] + +# Can not be built in unified build because of MOZ_MTLOG +SOURCES += ["JsepTrack.cpp"] FINAL_LIBRARY = "xul" diff --git a/icecat/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp b/icecat/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp index 13e0a27b43..cf4a309f5c 100644 --- a/icecat/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp +++ b/icecat/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.cpp @@ -257,6 +257,7 @@ void WebrtcGmpVideoEncoder::Close_g() { mGMP = nullptr; mHost = nullptr; mInitting = false; + mInputImageMap.Clear(); if (mCachedPluginId) { mReleasePluginEvent.Notify(*mCachedPluginId); @@ -340,6 +341,14 @@ void WebrtcGmpVideoEncoder::RegetEncoderForResolutionChange(uint32_t aWidth, void WebrtcGmpVideoEncoder::Encode_g( const webrtc::VideoFrame& aInputImage, std::vector aFrameTypes) { + auto reportDroppedOnExit = MakeScopeExit([&] { + MutexAutoLock lock(mCallbackMutex); + if (mCallback) { + mCallback->OnDroppedFrame( + webrtc::EncodedImageCallback::DropReason::kDroppedByEncoder); + } + }); + if (!mGMP) { // destroyed via Terminate(), failed to init, or just not initted yet GMP_LOG_DEBUG("GMP Encode: not initted yet"); @@ -347,6 +356,13 @@ void WebrtcGmpVideoEncoder::Encode_g( } MOZ_ASSERT(mHost); + if (mInputImageMap.Length() >= kMaxImagesInFlight) { + GMP_LOG_WARNING( + "GMP Encode: Max number of frames already in flight. Dropping this " + "one."); + return; + } + if (static_cast(aInputImage.width()) != mCodecParams.mWidth || static_cast(aInputImage.height()) != mCodecParams.mHeight) { GMP_LOG_DEBUG("GMP Encode: resolution change from %ux%u to %dx%d", @@ -387,7 +403,9 @@ void WebrtcGmpVideoEncoder::Encode_g( GMP_LOG_DEBUG("GMP Encode: failed to create frame"); return; } - frame->SetTimestamp(AssertedCast(aInputImage.ntp_time_ms() * 1000)); + const auto gmpTimestamp = + AssertedCast(aInputImage.ntp_time_ms() * 1000); + frame->SetTimestamp(gmpTimestamp); GMPCodecSpecificInfo info{}; info.mCodecType = kGMPVideoCodecH264; @@ -421,18 +439,23 @@ void WebrtcGmpVideoEncoder::Encode_g( MOZ_RELEASE_ASSERT(mInputImageMap.IsEmpty() || mInputImageMap.LastElement().ntp_timestamp_ms < aInputImage.ntp_time_ms()); - mInputImageMap.AppendElement( - InputImageData{.gmp_timestamp_us = frame->Timestamp(), - .ntp_timestamp_ms = aInputImage.ntp_time_ms(), - .timestamp_us = aInputImage.timestamp_us(), - .rtp_timestamp = aInputImage.rtp_timestamp(), - .frame_config = frameConfigs[0]}); GMP_LOG_DEBUG("GMP Encode: %" PRIu64, (frame->Timestamp())); err = mGMP->Encode(std::move(frame), codecSpecificInfo, gmp_frame_types); if (err != GMPNoErr) { GMP_LOG_DEBUG("GMP Encode: failed to encode frame"); + return; } + + // Once in mInputImageMap, frame drops are reported by GMP callbacks + // (Encoded/Dropped). + reportDroppedOnExit.release(); + mInputImageMap.AppendElement( + InputImageData{.gmp_timestamp_us = gmpTimestamp, + .ntp_timestamp_ms = aInputImage.ntp_time_ms(), + .timestamp_us = aInputImage.timestamp_us(), + .rtp_timestamp = aInputImage.rtp_timestamp(), + .frame_config = frameConfigs[0]}); } int32_t WebrtcGmpVideoEncoder::RegisterEncodeCompleteCallback( @@ -517,6 +540,7 @@ void WebrtcGmpVideoEncoder::Terminated() { mGMP = nullptr; mHost = nullptr; mInitting = false; + mInputImageMap.Clear(); if (gmp) { // Do this last, since this could cause us to be destroyed @@ -526,20 +550,23 @@ void WebrtcGmpVideoEncoder::Terminated() { // Could now notify that it's dead } +static int32_t GmpTimestampComparator(const InputImageData& aA, + const InputImageData& aB) { + const auto& a = aA.gmp_timestamp_us; + const auto& b = aB.gmp_timestamp_us; + return a < b ? -1 : a != b; +} + void WebrtcGmpVideoEncoder::Encoded( GMPVideoEncodedFrame* aEncodedFrame, const nsTArray& aCodecSpecificInfo) { MOZ_ASSERT(mGMPThread->IsOnCurrentThread()); Maybe data; - auto gmp_timestamp_comparator = [](const InputImageData& aA, - const InputImageData& aB) -> int32_t { - const auto& a = aA.gmp_timestamp_us; - const auto& b = aB.gmp_timestamp_us; - return a < b ? -1 : a != b; - }; + MOZ_ASSERT(!mInputImageMap.IsEmpty()); + MOZ_ASSERT(mInputImageMap.Length() <= kMaxImagesInFlight); size_t nextIdx = mInputImageMap.IndexOfFirstElementGt( InputImageData{.gmp_timestamp_us = aEncodedFrame->TimeStamp()}, - gmp_timestamp_comparator); + GmpTimestampComparator); const size_t numToRemove = nextIdx; size_t numFramesDropped = numToRemove; MOZ_ASSERT(nextIdx != 0); @@ -676,6 +703,34 @@ void WebrtcGmpVideoEncoder::Encoded( mCallback->OnEncodedImage(unit, &info); } +void WebrtcGmpVideoEncoder::Dropped(uint64_t aTimestamp) { + MOZ_ASSERT(mGMPThread->IsOnCurrentThread()); + MOZ_ASSERT(!mInputImageMap.IsEmpty()); + MOZ_ASSERT(mInputImageMap.Length() <= kMaxImagesInFlight); + + size_t nextIdx = mInputImageMap.IndexOfFirstElementGt( + InputImageData{.gmp_timestamp_us = aTimestamp}, GmpTimestampComparator); + const size_t numDropped = nextIdx; + MOZ_ASSERT(nextIdx != 0); + MOZ_ASSERT(mInputImageMap.ElementAt(nextIdx - 1).gmp_timestamp_us == + aTimestamp); + mInputImageMap.RemoveElementsAt(0, numDropped); + + GMP_LOG_DEBUG("GMP Dropped: %" PRIu64 + " dropped by encoder. Reporting %u frames dropped.", + aTimestamp, static_cast(numDropped)); + + MutexAutoLock lock(mCallbackMutex); + if (!mCallback) { + return; + } + + for (size_t i = 0; i < numDropped; ++i) { + mCallback->OnDroppedFrame( + webrtc::EncodedImageCallback::DropReason::kDroppedByEncoder); + } +} + // Decoder. WebrtcGmpVideoDecoder::WebrtcGmpVideoDecoder(std::string aPCHandle, TrackingId aTrackingId) diff --git a/icecat/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h b/icecat/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h index c9352204c6..4e93bfb9f3 100644 --- a/icecat/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h +++ b/icecat/dom/media/webrtc/libwebrtcglue/WebrtcGmpVideoCodec.h @@ -204,6 +204,8 @@ class WebrtcGmpVideoEncoder final : public GMPVideoEncoderCallbackProxy, void Encoded(GMPVideoEncodedFrame* aEncodedFrame, const nsTArray& aCodecSpecificInfo) override; + void Dropped(uint64_t aTimestamp) override; + void Error(GMPErr aError) override {} private: diff --git a/icecat/dom/media/webrtc/transport/mediapacket.cpp b/icecat/dom/media/webrtc/transport/mediapacket.cpp index e222612eb7..69ab8d83c7 100644 --- a/icecat/dom/media/webrtc/transport/mediapacket.cpp +++ b/icecat/dom/media/webrtc/transport/mediapacket.cpp @@ -8,7 +8,17 @@ #include +#include "ipc/EnumSerializer.h" #include "ipc/IPCMessageUtils.h" +#include "ipc/IPCMessageUtilsSpecializations.h" + +namespace IPC { +template <> +struct ParamTraits + : public ContiguousEnumSerializerInclusive< + mozilla::MediaPacket::Type, mozilla::MediaPacket::UNCLASSIFIED, + mozilla::MediaPacket::SCTP> {}; +} // namespace IPC namespace mozilla { @@ -31,66 +41,52 @@ MediaPacket MediaPacket::Clone() const { } void MediaPacket::Serialize(IPC::MessageWriter* aWriter) const { - aWriter->WriteUInt32(len_); - aWriter->WriteUInt32(capacity_); + WriteParam(aWriter, len_); + WriteParam(aWriter, capacity_); + WriteParam(aWriter, encrypted_len_); + WriteParam(aWriter, sdp_level_); + WriteParam(aWriter, type_); + if (len_) { aWriter->WriteBytes(data_.get(), len_); } - aWriter->WriteUInt32(encrypted_len_); if (encrypted_len_) { aWriter->WriteBytes(encrypted_data_.get(), encrypted_len_); } - aWriter->WriteInt32(sdp_level_.isSome() ? *sdp_level_ : -1); - aWriter->WriteInt32(type_); } bool MediaPacket::Deserialize(IPC::MessageReader* aReader) { Reset(); - uint32_t len; - if (!aReader->ReadUInt32(&len)) { + if (!ReadParam(aReader, &len_) || !ReadParam(aReader, &capacity_) || + !ReadParam(aReader, &encrypted_len_) || + !ReadParam(aReader, &sdp_level_) || !ReadParam(aReader, &type_)) { return false; } - uint32_t capacity; - if (!aReader->ReadUInt32(&capacity)) { + + if (capacity_ < len_) { return false; } - if (len) { - MOZ_RELEASE_ASSERT(capacity >= len); - UniquePtr data(new uint8_t[capacity]); - if (!aReader->ReadBytesInto(data.get(), len)) { + + // Kinda arbitrary, but we want some sort of ceiling here. + if ((capacity_ > 1024 * 1024) || (encrypted_len_ > 1024 * 1024)) { + return false; + } + + if (capacity_) { + data_.reset(new uint8_t[capacity_]); + if (len_) { + if (!aReader->ReadBytesInto(data_.get(), len_)) { + return false; + } + } + } + + if (encrypted_len_) { + encrypted_data_.reset(new uint8_t[encrypted_len_]); + if (!aReader->ReadBytesInto(encrypted_data_.get(), encrypted_len_)) { return false; } - data_ = std::move(data); - len_ = len; - capacity_ = capacity; } - - if (!aReader->ReadUInt32(&len)) { - return false; - } - if (len) { - UniquePtr data(new uint8_t[len]); - if (!aReader->ReadBytesInto(data.get(), len)) { - return false; - } - encrypted_data_ = std::move(data); - encrypted_len_ = len; - } - - int32_t sdp_level; - if (!aReader->ReadInt32(&sdp_level)) { - return false; - } - - if (sdp_level >= 0) { - sdp_level_ = Some(sdp_level); - } - - int32_t type; - if (!aReader->ReadInt32(&type)) { - return false; - } - type_ = static_cast(type); return true; } diff --git a/icecat/dom/media/webrtc/transport/nricestunaddr.cpp b/icecat/dom/media/webrtc/transport/nricestunaddr.cpp index d1e8d3ac52..7990b8e870 100644 --- a/icecat/dom/media/webrtc/transport/nricestunaddr.cpp +++ b/icecat/dom/media/webrtc/transport/nricestunaddr.cpp @@ -75,6 +75,19 @@ nsresult NrIceStunAddr::Deserialize(const char* buffer, size_t buffer_size) { nr_local_addr* from_addr = const_cast((const nr_local_addr*)buffer); + // Just in case + constexpr size_t ifname_size = + sizeof(from_addr->addr.ifname) / sizeof(from_addr->addr.ifname[0]); + constexpr size_t as_string_size = + sizeof(from_addr->addr.as_string) / sizeof(from_addr->addr.as_string[0]); + constexpr size_t fqdn_size = + sizeof(from_addr->addr.fqdn) / sizeof(from_addr->addr.fqdn[0]); + from_addr->addr.ifname[ifname_size - 1] = '\0'; + from_addr->addr.as_string[as_string_size - 1] = '\0'; + from_addr->addr.fqdn[fqdn_size - 1] = '\0'; + from_addr->addr.is_proxied = !!from_addr->addr.is_proxied; + from_addr->addr.tls = !!from_addr->addr.tls; + // At this point, from_addr->addr.addr is invalid (null), but will // be fixed by nr_local_addr_copy. if (nr_local_addr_copy(localAddr_, from_addr)) { diff --git a/icecat/dom/workers/remoteworkers/RemoteWorkerController.cpp b/icecat/dom/workers/remoteworkers/RemoteWorkerController.cpp index 424c10bd5f..c235b381b6 100644 --- a/icecat/dom/workers/remoteworkers/RemoteWorkerController.cpp +++ b/icecat/dom/workers/remoteworkers/RemoteWorkerController.cpp @@ -334,6 +334,10 @@ RefPtr RemoteWorkerController::SetServiceWorkerSkipWaitingFlag() AssertIsOnBackgroundThread(); MOZ_ASSERT(mObserver); + if (!mIsServiceWorker) { + return GenericPromise::CreateAndResolve(false, __func__); + } + RefPtr promise = new GenericPromise::Private(__func__); diff --git a/icecat/gfx/2d/FilterNodeSoftware.cpp b/icecat/gfx/2d/FilterNodeSoftware.cpp index d7d9d3866a..002a9bebe6 100644 --- a/icecat/gfx/2d/FilterNodeSoftware.cpp +++ b/icecat/gfx/2d/FilterNodeSoftware.cpp @@ -1765,12 +1765,10 @@ void FilterNodeComponentTransferSoftware::SetAttribute(uint32_t aIndex, void FilterNodeComponentTransferSoftware::GenerateLookupTable( ptrdiff_t aComponent, uint8_t aTables[4][256], bool aDisabled) { - if (aDisabled) { + if (aDisabled || !FillLookupTable(aComponent, aTables[aComponent])) { for (int32_t i = 0; i < 256; ++i) { aTables[aComponent][i] = i; } - } else { - FillLookupTable(aComponent, aTables[aComponent]); } } @@ -1927,32 +1925,29 @@ void FilterNodeTableTransferSoftware::SetAttribute(uint32_t aIndex, Invalidate(); } -void FilterNodeTableTransferSoftware::FillLookupTable(ptrdiff_t aComponent, +bool FilterNodeTableTransferSoftware::FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) { switch (aComponent) { case B8G8R8A8_COMPONENT_BYTEOFFSET_R: - FillLookupTableImpl(mTableR, aTable); + return FillLookupTableImpl(mTableR, aTable); break; case B8G8R8A8_COMPONENT_BYTEOFFSET_G: - FillLookupTableImpl(mTableG, aTable); - break; + return FillLookupTableImpl(mTableG, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_B: - FillLookupTableImpl(mTableB, aTable); - break; + return FillLookupTableImpl(mTableB, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_A: - FillLookupTableImpl(mTableA, aTable); - break; + return FillLookupTableImpl(mTableA, aTable); default: MOZ_ASSERT(false, "unknown component"); - break; + return false; } } -void FilterNodeTableTransferSoftware::FillLookupTableImpl( +bool FilterNodeTableTransferSoftware::FillLookupTableImpl( std::vector& aTableValues, uint8_t aTable[256]) { uint32_t tvLength = aTableValues.size(); - if (tvLength < 2) { - return; + if (tvLength < 1) { + return false; } for (size_t i = 0; i < 256; i++) { @@ -1965,6 +1960,7 @@ void FilterNodeTableTransferSoftware::FillLookupTableImpl( val = std::max(0, val); aTable[i] = val; } + return true; } void FilterNodeDiscreteTransferSoftware::SetAttribute(uint32_t aIndex, @@ -1990,32 +1986,28 @@ void FilterNodeDiscreteTransferSoftware::SetAttribute(uint32_t aIndex, Invalidate(); } -void FilterNodeDiscreteTransferSoftware::FillLookupTable(ptrdiff_t aComponent, +bool FilterNodeDiscreteTransferSoftware::FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) { switch (aComponent) { case B8G8R8A8_COMPONENT_BYTEOFFSET_R: - FillLookupTableImpl(mTableR, aTable); - break; + return FillLookupTableImpl(mTableR, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_G: - FillLookupTableImpl(mTableG, aTable); - break; + return FillLookupTableImpl(mTableG, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_B: - FillLookupTableImpl(mTableB, aTable); - break; + return FillLookupTableImpl(mTableB, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_A: - FillLookupTableImpl(mTableA, aTable); - break; + return FillLookupTableImpl(mTableA, aTable); default: MOZ_ASSERT(false, "unknown component"); - break; + return false; } } -void FilterNodeDiscreteTransferSoftware::FillLookupTableImpl( +bool FilterNodeDiscreteTransferSoftware::FillLookupTableImpl( std::vector& aTableValues, uint8_t aTable[256]) { uint32_t tvLength = aTableValues.size(); if (tvLength < 1) { - return; + return false; } for (size_t i = 0; i < 256; i++) { @@ -2027,6 +2019,7 @@ void FilterNodeDiscreteTransferSoftware::FillLookupTableImpl( val = std::max(0, val); aTable[i] = val; } + return true; } FilterNodeLinearTransferSoftware::FilterNodeLinearTransferSoftware() @@ -2072,28 +2065,24 @@ void FilterNodeLinearTransferSoftware::SetAttribute(uint32_t aIndex, Invalidate(); } -void FilterNodeLinearTransferSoftware::FillLookupTable(ptrdiff_t aComponent, +bool FilterNodeLinearTransferSoftware::FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) { switch (aComponent) { case B8G8R8A8_COMPONENT_BYTEOFFSET_R: - FillLookupTableImpl(mSlopeR, mInterceptR, aTable); - break; + return FillLookupTableImpl(mSlopeR, mInterceptR, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_G: - FillLookupTableImpl(mSlopeG, mInterceptG, aTable); - break; + return FillLookupTableImpl(mSlopeG, mInterceptG, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_B: - FillLookupTableImpl(mSlopeB, mInterceptB, aTable); - break; + return FillLookupTableImpl(mSlopeB, mInterceptB, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_A: - FillLookupTableImpl(mSlopeA, mInterceptA, aTable); - break; + return FillLookupTableImpl(mSlopeA, mInterceptA, aTable); default: MOZ_ASSERT(false, "unknown component"); - break; + return false; } } -void FilterNodeLinearTransferSoftware::FillLookupTableImpl( +bool FilterNodeLinearTransferSoftware::FillLookupTableImpl( Float aSlope, Float aIntercept, uint8_t aTable[256]) { for (size_t i = 0; i < 256; i++) { int32_t val = NS_lround(aSlope * i + 255 * aIntercept); @@ -2101,6 +2090,7 @@ void FilterNodeLinearTransferSoftware::FillLookupTableImpl( val = std::max(0, val); aTable[i] = val; } + return true; } FilterNodeGammaTransferSoftware::FilterNodeGammaTransferSoftware() @@ -2162,28 +2152,24 @@ void FilterNodeGammaTransferSoftware::SetAttribute(uint32_t aIndex, Invalidate(); } -void FilterNodeGammaTransferSoftware::FillLookupTable(ptrdiff_t aComponent, +bool FilterNodeGammaTransferSoftware::FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) { switch (aComponent) { case B8G8R8A8_COMPONENT_BYTEOFFSET_R: - FillLookupTableImpl(mAmplitudeR, mExponentR, mOffsetR, aTable); - break; + return FillLookupTableImpl(mAmplitudeR, mExponentR, mOffsetR, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_G: - FillLookupTableImpl(mAmplitudeG, mExponentG, mOffsetG, aTable); - break; + return FillLookupTableImpl(mAmplitudeG, mExponentG, mOffsetG, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_B: - FillLookupTableImpl(mAmplitudeB, mExponentB, mOffsetB, aTable); - break; + return FillLookupTableImpl(mAmplitudeB, mExponentB, mOffsetB, aTable); case B8G8R8A8_COMPONENT_BYTEOFFSET_A: - FillLookupTableImpl(mAmplitudeA, mExponentA, mOffsetA, aTable); - break; + return FillLookupTableImpl(mAmplitudeA, mExponentA, mOffsetA, aTable); default: MOZ_ASSERT(false, "unknown component"); - break; + return false; } } -void FilterNodeGammaTransferSoftware::FillLookupTableImpl(Float aAmplitude, +bool FilterNodeGammaTransferSoftware::FillLookupTableImpl(Float aAmplitude, Float aExponent, Float aOffset, uint8_t aTable[256]) { @@ -2194,12 +2180,14 @@ void FilterNodeGammaTransferSoftware::FillLookupTableImpl(Float aAmplitude, val = std::max(0, val); aTable[i] = val; } + return true; } FilterNodeConvolveMatrixSoftware::FilterNodeConvolveMatrixSoftware() : mDivisor(0), mBias(0), mEdgeMode(EDGE_MODE_DUPLICATE), + mKernelUnitLength(1.0f, 1.0f), mPreserveAlpha(false) {} int32_t FilterNodeConvolveMatrixSoftware::InputIndex(uint32_t aInputEnumIndex) { @@ -2245,7 +2233,21 @@ void FilterNodeConvolveMatrixSoftware::SetAttribute( uint32_t aIndex, const Size& aKernelUnitLength) { switch (aIndex) { case ATT_CONVOLVE_MATRIX_KERNEL_UNIT_LENGTH: + // Spec for feConvolveMatrix: + // If the attribute (kernelUnitLength) is not specified, the default value + // is one pixel in the offscreen bitmap. If a negative or zero value is + // specified the default value will be used instead. The first number is + // the x value. The second number is the y value. If the value is not + // specified, it defaults to the same value as x. mKernelUnitLength = aKernelUnitLength; + if (mKernelUnitLength.width <= 0.0f || + !std::isfinite(mKernelUnitLength.width)) { + mKernelUnitLength.width = 1.0f; + } + if (mKernelUnitLength.height <= 0.0f || + !std::isfinite(mKernelUnitLength.height)) { + mKernelUnitLength.height = mKernelUnitLength.width; + } break; default: MOZ_CRASH("GFX: FilterNodeConvolveMatrixSoftware::SetAttribute"); @@ -2446,20 +2448,26 @@ template already_AddRefed FilterNodeConvolveMatrixSoftware::DoRender( const IntRect& aRect, CoordType aKernelUnitLengthX, CoordType aKernelUnitLengthY) { + // Ensure multiply fits in an int32_t so convolve math won't overflow. + auto kernelArea = CheckedInt32(mKernelSize.width) * mKernelSize.height; if (mKernelSize.width <= 0 || mKernelSize.height <= 0 || - mKernelMatrix.size() != - uint32_t(mKernelSize.width * mKernelSize.height) || + !kernelArea.isValid() || + mKernelMatrix.size() != size_t(kernelArea.value()) || !IntRect(IntPoint(0, 0), mKernelSize).Contains(mTarget) || mDivisor == 0) { return Factory::CreateDataSourceSurface(aRect.Size(), SurfaceFormat::B8G8R8A8, true); } - IntRect srcRect = InflatedSourceRect(aRect); - + RectDouble srcRectD(aRect); + srcRectD.Inflate(GetInflateSourceMargin()); // Inflate the source rect by another pixel because the bilinear filtering in // ColorComponentAtPoint may want to access the margins. - srcRect.Inflate(1); + srcRectD.Inflate(1); + if (!RectIsInt32Safe(srcRectD)) { + return nullptr; + } + IntRect srcRect = TruncatedToInt(srcRectD); RefPtr input = GetInputDataSourceSurface(IN_CONVOLVE_MATRIX_IN, srcRect, @@ -2538,23 +2546,26 @@ IntRect FilterNodeConvolveMatrixSoftware::MapRectToSource( aMax, aSourceNode); } +MarginDouble FilterNodeConvolveMatrixSoftware::GetInflateSourceMargin() const { + double kulX = double(mKernelUnitLength.width); + double kulY = double(mKernelUnitLength.height); + MarginDouble margin; + margin.left = ceil(mTarget.x * kulX); + margin.top = ceil(mTarget.y * kulY); + margin.right = ceil((mKernelSize.width - mTarget.x - 1) * kulX); + margin.bottom = ceil((mKernelSize.height - mTarget.y - 1) * kulY); + return margin; +} + IntRect FilterNodeConvolveMatrixSoftware::InflatedSourceRect( const IntRect& aDestRect) { if (aDestRect.IsEmpty()) { return IntRect(); } - IntMargin margin; - margin.left = static_cast(ceil(mTarget.x * mKernelUnitLength.width)); - margin.top = static_cast(ceil(mTarget.y * mKernelUnitLength.height)); - margin.right = static_cast( - ceil((mKernelSize.width - mTarget.x - 1) * mKernelUnitLength.width)); - margin.bottom = static_cast( - ceil((mKernelSize.height - mTarget.y - 1) * mKernelUnitLength.height)); - - IntRect srcRect = aDestRect; - srcRect.Inflate(margin); - return srcRect; + RectDouble srcRect(aDestRect); + srcRect.Inflate(GetInflateSourceMargin()); + return RectIsInt32Safe(srcRect) ? TruncatedToInt(srcRect) : aDestRect; } IntRect FilterNodeConvolveMatrixSoftware::InflatedDestRect( @@ -2563,19 +2574,12 @@ IntRect FilterNodeConvolveMatrixSoftware::InflatedDestRect( return IntRect(); } - IntMargin margin; - margin.left = static_cast( - ceil((mKernelSize.width - mTarget.x - 1) * mKernelUnitLength.width)); - margin.top = static_cast( - ceil((mKernelSize.height - mTarget.y - 1) * mKernelUnitLength.height)); - margin.right = - static_cast(ceil(mTarget.x * mKernelUnitLength.width)); - margin.bottom = - static_cast(ceil(mTarget.y * mKernelUnitLength.height)); - - IntRect destRect = aSourceRect; + RectDouble destRect(aSourceRect); + MarginDouble margin = GetInflateSourceMargin(); + std::swap(margin.left, margin.right); + std::swap(margin.top, margin.bottom); destRect.Inflate(margin); - return destRect; + return RectIsInt32Safe(destRect) ? TruncatedToInt(destRect) : aSourceRect; } IntRect FilterNodeConvolveMatrixSoftware::GetOutputRectInRect( @@ -2609,6 +2613,11 @@ void FilterNodeDisplacementMapSoftware::SetAttribute(uint32_t aIndex, void FilterNodeDisplacementMapSoftware::SetAttribute(uint32_t aIndex, uint32_t aValue) { + // Refuse channel values that exceed channel maximum. + if (aValue > ColorChannel::COLOR_CHANNEL_MAX) { + return; + } + switch (aIndex) { case ATT_DISPLACEMENT_MAP_X_CHANNEL: mChannelX = static_cast(aValue); @@ -2655,7 +2664,7 @@ already_AddRefed FilterNodeDisplacementMapSoftware::Render( uint8_t* targetData = targetMap.GetData(); int32_t targetStride = targetMap.GetStride(); - static const ptrdiff_t channelMap[4] = { + static const ptrdiff_t channelMap[COLOR_CHANNEL_MAX + 1] = { B8G8R8A8_COMPONENT_BYTEOFFSET_R, B8G8R8A8_COMPONENT_BYTEOFFSET_G, B8G8R8A8_COMPONENT_BYTEOFFSET_B, B8G8R8A8_COMPONENT_BYTEOFFSET_A}; uint16_t xChannel = channelMap[mChannelX]; @@ -3346,7 +3355,8 @@ static inline Point3D Normalized(const Point3D& vec) { template FilterNodeLightingSoftware::FilterNodeLightingSoftware( const char* aTypeName) - : mSurfaceScale(0) + : mSurfaceScale(0), + mKernelUnitLength(1.0f, 1.0f) #if defined(MOZILLA_INTERNAL_API) && defined(NS_BUILD_REFCNT_LOGGING) , mTypeName(aTypeName) @@ -3399,6 +3409,23 @@ void FilterNodeLightingSoftware::SetAttribute( switch (aIndex) { case ATT_LIGHTING_KERNEL_UNIT_LENGTH: mKernelUnitLength = aKernelUnitLength; + // Spec for fe*Lighting: + // The first number is the value. The second number is the + // value. If the value is not specified, it defaults to the same + // value as . If kernelUnitLength is not specified, the dx and dy + // values should represent very small deltas relative to a given (x,y) + // position, which might be implemented in some cases as one pixel in the + // intermediate image offscreen bitmap, which is a pixel-based coordinate + // system, and thus potentially not scalable. If a negative or zero value + // is specified the default value will be used instead. + if (mKernelUnitLength.width <= 0.0f || + !std::isfinite(mKernelUnitLength.width)) { + mKernelUnitLength.width = 1.0f; + } + if (mKernelUnitLength.height <= 0.0f || + !std::isfinite(mKernelUnitLength.height)) { + mKernelUnitLength.height = mKernelUnitLength.width; + } break; default: MOZ_CRASH("GFX: FilterNodeLightingSoftware::SetAttribute size"); @@ -3547,22 +3574,33 @@ FilterNodeLightingSoftware::Render( return DoRender(aRect, mKernelUnitLength.width, mKernelUnitLength.height); } +template +MarginDouble FilterNodeLightingSoftware< + LightType, LightingType>::GetInflateSourceMargin() const { + double kulX = ceil(double(mKernelUnitLength.width)); + double kulY = ceil(double(mKernelUnitLength.height)); + return MarginDouble(kulY, kulX, kulY, kulX); +} + +template +IntRect FilterNodeLightingSoftware::InflatedSourceRect( + const IntRect& aDestRect) { + RectDouble srcRect(aDestRect); + srcRect.Inflate(GetInflateSourceMargin()); + return RectIsInt32Safe(srcRect) ? TruncatedToInt(srcRect) : aDestRect; +} + template void FilterNodeLightingSoftware< LightType, LightingType>::RequestFromInputsForRect(const IntRect& aRect) { - IntRect srcRect = aRect; - srcRect.Inflate(ceil(mKernelUnitLength.width), - ceil(mKernelUnitLength.height)); - RequestInputRect(IN_LIGHTING_IN, srcRect); + RequestInputRect(IN_LIGHTING_IN, InflatedSourceRect(aRect)); } template IntRect FilterNodeLightingSoftware::MapRectToSource( const IntRect& aRect, const IntRect& aMax, FilterNode* aSourceNode) { - IntRect srcRect = aRect; - srcRect.Inflate(ceil(mKernelUnitLength.width), - ceil(mKernelUnitLength.height)); - return MapInputRectToSource(IN_LIGHTING_IN, srcRect, aMax, aSourceNode); + return MapInputRectToSource(IN_LIGHTING_IN, InflatedSourceRect(aRect), aMax, + aSourceNode); } template @@ -3576,14 +3614,17 @@ FilterNodeLightingSoftware::DoRender( MOZ_ASSERT(aKernelUnitLengthY > 0, "aKernelUnitLengthY can be a negative or zero value"); - IntRect srcRect = aRect; - IntSize size = aRect.Size(); - srcRect.Inflate(ceil(float(aKernelUnitLengthX)), - ceil(float(aKernelUnitLengthY))); - + RectDouble srcRectD(aRect); + srcRectD.Inflate(GetInflateSourceMargin()); // Inflate the source rect by another pixel because the bilinear filtering in // ColorComponentAtPoint may want to access the margins. - srcRect.Inflate(1); + srcRectD.Inflate(1); + if (!RectIsInt32Safe(srcRectD)) { + return nullptr; + } + IntRect srcRect = TruncatedToInt(srcRectD); + + IntSize size = aRect.Size(); RefPtr input = GetInputDataSourceSurface( IN_LIGHTING_IN, srcRect, CAN_HANDLE_A8, EDGE_MODE_NONE); diff --git a/icecat/gfx/2d/FilterNodeSoftware.h b/icecat/gfx/2d/FilterNodeSoftware.h index 25b2481bfe..11c77651ab 100644 --- a/icecat/gfx/2d/FilterNodeSoftware.h +++ b/icecat/gfx/2d/FilterNodeSoftware.h @@ -360,7 +360,7 @@ class FilterNodeComponentTransferSoftware : public FilterNodeSoftware { void RequestFromInputsForRect(const IntRect& aRect) override; virtual void GenerateLookupTable(ptrdiff_t aComponent, uint8_t aTables[4][256], bool aDisabled); - virtual void FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) = 0; + virtual bool FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) = 0; bool mDisableR; bool mDisableG; @@ -379,10 +379,10 @@ class FilterNodeTableTransferSoftware uint32_t aSize) override; protected: - void FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) override; + bool FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) override; private: - void FillLookupTableImpl(std::vector& aTableValues, + bool FillLookupTableImpl(std::vector& aTableValues, uint8_t aTable[256]); std::vector mTableR; @@ -402,10 +402,10 @@ class FilterNodeDiscreteTransferSoftware uint32_t aSize) override; protected: - void FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) override; + bool FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) override; private: - void FillLookupTableImpl(std::vector& aTableValues, + bool FillLookupTableImpl(std::vector& aTableValues, uint8_t aTable[256]); std::vector mTableR; @@ -425,10 +425,10 @@ class FilterNodeLinearTransferSoftware void SetAttribute(uint32_t aIndex, Float aValue) override; protected: - void FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) override; + bool FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) override; private: - void FillLookupTableImpl(Float aSlope, Float aIntercept, uint8_t aTable[256]); + bool FillLookupTableImpl(Float aSlope, Float aIntercept, uint8_t aTable[256]); Float mSlopeR; Float mSlopeG; @@ -451,10 +451,10 @@ class FilterNodeGammaTransferSoftware void SetAttribute(uint32_t aIndex, Float aValue) override; protected: - void FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) override; + bool FillLookupTable(ptrdiff_t aComponent, uint8_t aTable[256]) override; private: - void FillLookupTableImpl(Float aAmplitude, Float aExponent, Float aOffset, + bool FillLookupTableImpl(Float aAmplitude, Float aExponent, Float aOffset, uint8_t aTable[256]); Float mAmplitudeR; @@ -502,6 +502,7 @@ class FilterNodeConvolveMatrixSoftware : public FilterNodeSoftware { CoordType aKernelUnitLengthX, CoordType aKernelUnitLengthY); + MarginDouble GetInflateSourceMargin() const; IntRect InflatedSourceRect(const IntRect& aDestRect); IntRect InflatedDestRect(const IntRect& aSourceRect); @@ -764,6 +765,9 @@ class FilterNodeLightingSoftware : public FilterNodeSoftware { CoordType aKernelUnitLengthX, CoordType aKernelUnitLengthY); + MarginDouble GetInflateSourceMargin() const; + IntRect InflatedSourceRect(const IntRect& aDestRect); + LightType mLight; LightingType mLighting; Float mSurfaceScale; diff --git a/icecat/gfx/2d/Filters.h b/icecat/gfx/2d/Filters.h index a9f77ce6aa..731575ccc0 100644 --- a/icecat/gfx/2d/Filters.h +++ b/icecat/gfx/2d/Filters.h @@ -193,7 +193,8 @@ enum ColorChannel { COLOR_CHANNEL_R = 0, COLOR_CHANNEL_G, COLOR_CHANNEL_B, - COLOR_CHANNEL_A + COLOR_CHANNEL_A, + COLOR_CHANNEL_MAX = COLOR_CHANNEL_A }; enum DisplacementMapInputs { diff --git a/icecat/gfx/2d/Rect.h b/icecat/gfx/2d/Rect.h index 0e1d2c8fdf..63e1c96f2c 100644 --- a/icecat/gfx/2d/Rect.h +++ b/icecat/gfx/2d/Rect.h @@ -169,6 +169,11 @@ struct MOZ_EMPTY_BASES IntRectTyped aRect.Height()); } + static IntRectTyped Truncate(const RectTyped& aRect) { + return IntRectTyped(int32_t(aRect.X()), int32_t(aRect.Y()), + int32_t(aRect.Width()), int32_t(aRect.Height())); + } + // Rounding isn't meaningful on an integer rectangle. void Round() {} void RoundIn() {} @@ -338,10 +343,10 @@ IntRectTyped RoundedToInt(const RectTyped& aRect) { int32_t(copy.Width()), int32_t(copy.Height())); } -template -bool RectIsInt32Safe(const RectTyped& aRect) { - float min = (float)std::numeric_limits::min(); - float max = (float)std::numeric_limits::max(); +template +bool RectIsInt32Safe(const RectTyped& aRect) { + F min = (F)std::numeric_limits::min(); + F max = (F)std::numeric_limits::max(); return aRect.x > min && aRect.y > min && aRect.width < max && aRect.height < max && aRect.XMost() < max && aRect.YMost() < max; } @@ -356,8 +361,8 @@ IntRectTyped RoundedOut(const RectTyped& aRect) { return IntRectTyped::RoundOut(aRect); } -template -IntRectTyped TruncatedToInt(const RectTyped& aRect) { +template +IntRectTyped TruncatedToInt(const RectTyped& aRect) { return IntRectTyped::Truncate(aRect); } diff --git a/icecat/gfx/2d/ScaledFontMac.cpp b/icecat/gfx/2d/ScaledFontMac.cpp index 6bfbcfe519..d7bb972df4 100644 --- a/icecat/gfx/2d/ScaledFontMac.cpp +++ b/icecat/gfx/2d/ScaledFontMac.cpp @@ -784,7 +784,7 @@ cairo_font_face_t* ScaledFontMac::CreateCairoFontFace( already_AddRefed UnscaledFontMac::CreateFromFontDescriptor( const uint8_t* aData, uint32_t aDataLength, uint32_t aIndex) { - if (aDataLength == 0) { + if (aDataLength == 0 || aIndex > aDataLength) { gfxWarning() << "Mac font descriptor is truncated."; return nullptr; } diff --git a/icecat/gfx/gl/GLContextEGL.h b/icecat/gfx/gl/GLContextEGL.h index 39b0036294..1e65c2b437 100644 --- a/icecat/gfx/gl/GLContextEGL.h +++ b/icecat/gfx/gl/GLContextEGL.h @@ -61,7 +61,7 @@ class GLContextEGL final : public GLContext { } static GLContextEGL* Cast(GLContext* gl) { - MOZ_ASSERT(gl->GetContextType() == GLContextType::EGL); + MOZ_RELEASE_ASSERT(gl->GetContextType() == GLContextType::EGL); return static_cast(gl); } diff --git a/icecat/gfx/harfbuzz/src/hb-algs.hh b/icecat/gfx/harfbuzz/src/hb-algs.hh index 0252fa7dfe..812839cdba 100644 --- a/icecat/gfx/harfbuzz/src/hb-algs.hh +++ b/icecat/gfx/harfbuzz/src/hb-algs.hh @@ -1042,6 +1042,21 @@ hb_unsigned_mul_overflows (unsigned int count, unsigned int size, unsigned *resu return (size > 0) && (count >= ((unsigned int) -1) / size); } +static inline bool +hb_unsigned_add_overflows (unsigned int a, unsigned int b, unsigned *result = nullptr) +{ +#if hb_has_builtin(__builtin_add_overflow) + unsigned stack_result; + if (!result) + result = &stack_result; + return __builtin_add_overflow (a, b, result); +#endif + + if (result) + *result = a + b; + return b > (unsigned int) -1 - a; +} + /* * Sort and search. diff --git a/icecat/gfx/harfbuzz/src/hb-ot-shaper-arabic.cc b/icecat/gfx/harfbuzz/src/hb-ot-shaper-arabic.cc index d25a3f6f48..384462bc5f 100644 --- a/icecat/gfx/harfbuzz/src/hb-ot-shaper-arabic.cc +++ b/icecat/gfx/harfbuzz/src/hb-ot-shaper-arabic.cc @@ -561,20 +561,29 @@ apply_stch (const hb_ot_shape_plan_t *plan HB_UNUSED, DEBUG_MSG (ARABIC, nullptr, "fixed tiles: count=%d width=%" PRId32, n_fixed, w_fixed); DEBUG_MSG (ARABIC, nullptr, "repeating tiles: count=%d width=%" PRId32, n_repeating, w_repeating); - /* Number of additional times to repeat each repeating tile. */ - int n_copies = 0; + static constexpr unsigned STCH_MAX_GLYPHS = 256; - hb_position_t w_remaining = w_total - w_fixed; - if (sign * w_remaining > sign * w_repeating && sign * w_repeating > 0) - n_copies = (sign * w_remaining) / (sign * w_repeating) - 1; + /* Number of additional times to repeat each repeating tile. */ + unsigned int n_copies = 0; + + int64_t w_remaining_signed = (int64_t) w_total - w_fixed; + int64_t w_repeating_signed = w_repeating; + if (sign < 0) + { + w_remaining_signed = -w_remaining_signed; + w_repeating_signed = -w_repeating_signed; + } + hb_position_t w_remaining = (hb_position_t) (w_total - w_fixed); + if (w_remaining_signed > w_repeating_signed && w_repeating_signed > 0) + n_copies = w_remaining_signed / w_repeating_signed - 1; /* See if we can improve the fit by adding an extra repeat and squeezing them together a bit. */ hb_position_t extra_repeat_overlap = 0; - hb_position_t shortfall = sign * w_remaining - sign * w_repeating * (n_copies + 1); + int64_t shortfall = w_remaining_signed - w_repeating_signed * (n_copies + 1); if (shortfall > 0 && n_repeating > 0) { ++n_copies; - hb_position_t excess = (n_copies + 1) * sign * w_repeating - sign * w_remaining; + int64_t excess = (n_copies + 1) * w_repeating_signed - w_remaining_signed; if (excess > 0) { extra_repeat_overlap = excess / (n_copies * n_repeating); @@ -582,10 +591,22 @@ apply_stch (const hb_ot_shape_plan_t *plan HB_UNUSED, } } + unsigned int max_copies = 0; + if (n_repeating > 0) + { + unsigned int base_glyphs = n_fixed + n_repeating; + if (base_glyphs < STCH_MAX_GLYPHS) + max_copies = (STCH_MAX_GLYPHS - base_glyphs) / n_repeating; + } + n_copies = hb_min (n_copies, max_copies); + if (step == MEASURE) { - extra_glyphs_needed += n_copies * n_repeating; - DEBUG_MSG (ARABIC, nullptr, "will add extra %d copies of repeating tiles", n_copies); + unsigned int added_glyphs = 0; + if (unlikely (hb_unsigned_mul_overflows (n_copies, n_repeating, &added_glyphs) || + hb_unsigned_add_overflows (extra_glyphs_needed, added_glyphs, &extra_glyphs_needed))) + break; + DEBUG_MSG (ARABIC, nullptr, "will add extra %u copies of repeating tiles", n_copies); } else { @@ -629,7 +650,9 @@ apply_stch (const hb_ot_shape_plan_t *plan HB_UNUSED, if (step == MEASURE) { - if (unlikely (!buffer->ensure (count + extra_glyphs_needed))) + unsigned int total_glyphs = 0; + if (unlikely (hb_unsigned_add_overflows (count, extra_glyphs_needed, &total_glyphs) || + !buffer->ensure (total_glyphs))) break; } else diff --git a/icecat/gfx/layers/AnimationHelper.cpp b/icecat/gfx/layers/AnimationHelper.cpp index e30cf5764e..c3535a97b5 100644 --- a/icecat/gfx/layers/AnimationHelper.cpp +++ b/icecat/gfx/layers/AnimationHelper.cpp @@ -239,8 +239,12 @@ static AnimationHelper::SampleResult SampleAnimationForProperty( #endif } - uint32_t segmentIndex = 0; size_t segmentSize = animation.mSegments.Length(); + if (segmentSize == 0) { + return AnimationHelper::SampleResult(); + } + + uint32_t segmentIndex = 0; PropertyAnimation::SegmentData* segment = animation.mSegments.Elements(); while (segment->mEndPortion < computedTiming.mProgress.Value() && segmentIndex < segmentSize - 1) { diff --git a/icecat/gfx/layers/BufferTexture.cpp b/icecat/gfx/layers/BufferTexture.cpp index e5d8e6ca41..45238b991b 100644 --- a/icecat/gfx/layers/BufferTexture.cpp +++ b/icecat/gfx/layers/BufferTexture.cpp @@ -156,7 +156,8 @@ BufferTextureData* BufferTextureData::CreateForYCbCr( gfx::ColorRange aColorRange, gfx::ChromaSubsampling aSubsampling, TextureFlags aTextureFlags) { uint32_t bufSize = ImageDataSerializer::ComputeYCbCrBufferSize( - aYSize, aYStride, aCbCrSize, aCbCrStride); + aDisplay, aYSize, aYStride, aCbCrSize, aCbCrStride, aColorDepth, + aSubsampling); if (bufSize == 0) { return nullptr; } @@ -274,11 +275,15 @@ bool BufferTextureData::BorrowMappedData(MappedTextureData& aData) { gfx::IntSize size = GetSize(); + auto stride = ImageDataSerializer::ComputeRGBStride(GetFormat(), size.width); + if (stride == 0) { + return false; + } + aData.data = GetBuffer(); aData.size = size; aData.format = GetFormat(); - aData.stride = - ImageDataSerializer::ComputeRGBStride(aData.format, size.width); + aData.stride = stride; return true; } diff --git a/icecat/gfx/layers/ImageContainer.cpp b/icecat/gfx/layers/ImageContainer.cpp index a55252e9f9..81b7a052b3 100644 --- a/icecat/gfx/layers/ImageContainer.cpp +++ b/icecat/gfx/layers/ImageContainer.cpp @@ -645,7 +645,9 @@ Maybe PlanarYCbCrData::From( yuvDesc.ySize().width < 0 || yuvDesc.ySize().height < 0 || yuvDesc.cbCrSize().width < 0 || yuvDesc.cbCrSize().height < 0 || yuvData.mYStride < 0 || yuvData.mCbCrStride < 0 || !yuvData.mYChannel || - !yuvData.mCbChannel || !yuvData.mCrChannel) { + !yuvData.mCbChannel || !yuvData.mCrChannel || + !(yuvData.YDataSize() <= yuvDesc.ySize()) || + !(yuvData.CbCrDataSize() <= yuvDesc.cbCrSize())) { gfxCriticalError() << "Unusual PlanarYCbCrData: " << yuvData.mYSkip << "," << yuvData.mCbSkip << "," << yuvData.mCrSkip << ", " << yuvDesc.ySize().width << "," << yuvDesc.ySize().height @@ -653,7 +655,8 @@ Maybe PlanarYCbCrData::From( << yuvDesc.cbCrSize().height << ", " << yuvData.mYStride << "," << yuvData.mCbCrStride << ", " << yuvData.mYChannel << "," << yuvData.mCbChannel << "," - << yuvData.mCrChannel; + << yuvData.mCrChannel << "," << yuvData.YDataSize().width + << "," << yuvData.YDataSize().height; return {}; } @@ -750,8 +753,12 @@ nsresult PlanarYCbCrImage::BuildSurfaceDescriptorBuffer( yOffset, cbOffset, crOffset); uint32_t bufferSize = ImageDataSerializer::ComputeYCbCrBufferSize( - ySize, pdata->mYStride, cbcrSize, pdata->mCbCrStride, yOffset, cbOffset, - crOffset); + pdata->mPictureRect, ySize, pdata->mYStride, cbcrSize, pdata->mCbCrStride, + yOffset, cbOffset, crOffset, pdata->mColorDepth, + pdata->mChromaSubsampling); + if (bufferSize == 0) { + return NS_ERROR_FAILURE; + } aSdBuffer.data() = aAllocate(bufferSize); diff --git a/icecat/gfx/layers/ImageDataSerializer.cpp b/icecat/gfx/layers/ImageDataSerializer.cpp index 12918e92c2..0a849a6882 100644 --- a/icecat/gfx/layers/ImageDataSerializer.cpp +++ b/icecat/gfx/layers/ImageDataSerializer.cpp @@ -58,36 +58,56 @@ uint32_t ComputeRGBBufferSize(IntSize aSize, SurfaceFormat aFormat) { return bufsize; } +static bool CheckYCbCrStride(const gfx::IntSize& aSize, int32_t aStride, + gfx::ColorDepth aDepth) { + gfx::SurfaceFormat format = gfx::SurfaceFormatForColorDepth(aDepth); + CheckedInt32 minStride = + CheckedInt32(gfx::BytesPerPixel(format)) * aSize.width; + return minStride.isValid() && aStride >= minStride.value(); +} + // Minimum required shmem size in bytes -uint32_t ComputeYCbCrBufferSize(const gfx::IntSize& aYSize, int32_t aYStride, +uint32_t ComputeYCbCrBufferSize(const gfx::IntRect& aDisplay, + const gfx::IntSize& aYSize, int32_t aYStride, const gfx::IntSize& aCbCrSize, - int32_t aCbCrStride) { + int32_t aCbCrStride, gfx::ColorDepth aDepth, + const ChromaSubsampling aSubsampling) { MOZ_ASSERT(aYSize.height >= 0 && aYSize.width >= 0); - if (aYSize.height < 0 || aYSize.width < 0 || aCbCrSize.height < 0 || + if (aDisplay.IsEmpty() || aDisplay.x < 0 || aDisplay.y < 0 || + !gfx::IntRect(gfx::IntPoint(), aYSize).Contains(aDisplay) || + aYSize.height < 0 || aYSize.width < 0 || aCbCrSize.height < 0 || aCbCrSize.width < 0 || !gfx::Factory::AllowedSurfaceSize(IntSize(aYStride, aYSize.height)) || !gfx::Factory::AllowedSurfaceSize( - IntSize(aCbCrStride, aCbCrSize.height))) { + IntSize(aCbCrStride, aCbCrSize.height)) || + !CheckYCbCrStride(aYSize, aYStride, aDepth) || + !CheckYCbCrStride(aCbCrSize, aCbCrStride, aDepth) || + !(ChromaSize(aYSize, aSubsampling) <= aCbCrSize)) { return 0; } - // Overflow checks are performed in AllowedSurfaceSize - return GetAlignedStride<4>(aYSize.height, aYStride) + - 2 * GetAlignedStride<4>(aCbCrSize.height, aCbCrStride); + // Overflow checks are performed only individually in AllowedSurfaceSize + auto bufLen = + CheckedInt(GetAlignedStride<4>(aYSize.height, aYStride)) + + CheckedInt(GetAlignedStride<4>(aCbCrSize.height, aCbCrStride)) * + 2; + if (!bufLen.isValid()) { + return 0; + } + return bufLen.value(); } -uint32_t ComputeYCbCrBufferSize(const gfx::IntSize& aYSize, int32_t aYStride, +uint32_t ComputeYCbCrBufferSize(const gfx::IntRect& aDisplay, + const gfx::IntSize& aYSize, int32_t aYStride, const gfx::IntSize& aCbCrSize, int32_t aCbCrStride, uint32_t aYOffset, - uint32_t aCbOffset, uint32_t aCrOffset) { - MOZ_ASSERT(aYSize.height >= 0 && aYSize.width >= 0); - - if (aYSize.height < 0 || aYSize.width < 0 || aCbCrSize.height < 0 || - aCbCrSize.width < 0 || - !gfx::Factory::AllowedSurfaceSize(IntSize(aYStride, aYSize.height)) || - !gfx::Factory::AllowedSurfaceSize( - IntSize(aCbCrStride, aCbCrSize.height))) { + uint32_t aCbOffset, uint32_t aCrOffset, + gfx::ColorDepth aDepth, + const ChromaSubsampling aSubsampling) { + uint32_t minBufLen = ComputeYCbCrBufferSize( + aDisplay, aYSize, aYStride, aCbCrSize, aCbCrStride, aDepth, aSubsampling); + if (minBufLen == 0) { return 0; } @@ -105,7 +125,8 @@ uint32_t ComputeYCbCrBufferSize(const gfx::IntSize& aYSize, int32_t aYStride, crEnd += cbCrLength; if (!yEnd.isValid() || !cbEnd.isValid() || !crEnd.isValid() || - yEnd.value() > aCbOffset || cbEnd.value() > aCrOffset) { + yEnd.value() > aCbOffset || cbEnd.value() > aCrOffset || + crEnd.value() < minBufLen) { return 0; } diff --git a/icecat/gfx/layers/ImageDataSerializer.h b/icecat/gfx/layers/ImageDataSerializer.h index 8584ea1a10..47e575a274 100644 --- a/icecat/gfx/layers/ImageDataSerializer.h +++ b/icecat/gfx/layers/ImageDataSerializer.h @@ -40,13 +40,18 @@ uint32_t ComputeRGBBufferSize(gfx::IntSize aSize, gfx::SurfaceFormat aFormat); /// This function is meant as a helper to know how much shared memory we need /// to allocate in a shmem in order to place a shared YCbCr image blob of /// given dimensions. -uint32_t ComputeYCbCrBufferSize(const gfx::IntSize& aYSize, int32_t aYStride, +uint32_t ComputeYCbCrBufferSize(const gfx::IntRect& aDisplay, + const gfx::IntSize& aYSize, int32_t aYStride, const gfx::IntSize& aCbCrSize, - int32_t aCbCrStride); -uint32_t ComputeYCbCrBufferSize(const gfx::IntSize& aYSize, int32_t aYStride, + int32_t aCbCrStride, gfx::ColorDepth aDepth, + const gfx::ChromaSubsampling aSubsampling); +uint32_t ComputeYCbCrBufferSize(const gfx::IntRect& aDisplay, + const gfx::IntSize& aYSize, int32_t aYStride, const gfx::IntSize& aCbCrSize, int32_t aCbCrStride, uint32_t aYOffset, - uint32_t aCbOffset, uint32_t aCrOffset); + uint32_t aCbOffset, uint32_t aCrOffset, + gfx::ColorDepth aDepth, + const gfx::ChromaSubsampling aSubsampling); uint32_t ComputeYCbCrBufferSize(uint32_t aBufferSize); void ComputeYCbCrOffsets(int32_t yStride, int32_t yHeight, int32_t cbCrStride, diff --git a/icecat/gfx/layers/SourceSurfaceSharedData.cpp b/icecat/gfx/layers/SourceSurfaceSharedData.cpp index 7040ffa73d..4a2cafb8a6 100644 --- a/icecat/gfx/layers/SourceSurfaceSharedData.cpp +++ b/icecat/gfx/layers/SourceSurfaceSharedData.cpp @@ -13,6 +13,7 @@ #include "mozilla/layers/SharedSurfacesChild.h" #include "mozilla/layers/SharedSurfacesParent.h" #include "nsDebug.h" // for NS_ABORT_OOM +#include "mozilla/image/SurfaceCache.h" #include "base/process_util.h" @@ -46,7 +47,7 @@ void SourceSurfaceSharedDataWrapper::Init( MOZ_CRASH("Invalid shared memory handle!"); } - bool mapped = EnsureMapped(len); + bool mapped = EnsureMapped(); if ((sizeof(uintptr_t) <= 4 || StaticPrefs::image_mem_shared_unmap_force_enabled_AtStartup()) && len / 1024 > @@ -77,10 +78,15 @@ void SourceSurfaceSharedDataWrapper::Init(SourceSurfaceSharedData* aSurface) { mBuf = aSurface->mBuf; } -bool SourceSurfaceSharedDataWrapper::EnsureMapped(size_t aLength) { +bool SourceSurfaceSharedDataWrapper::EnsureMapped() { MOZ_ASSERT(!GetData()); - if (mBufHandle.Size() < aLength) { + auto computedStride = + CheckedInt(mSize.width) * BytesPerPixel(mFormat); + if (mSize.width < 0 || mSize.height < 0 || mStride < 0 || + !computedStride.isValid() || mStride < computedStride.value() || + !image::SurfaceCache::IsLegalSize(mSize) || + mBufHandle.Size() < GetAlignedDataLength()) { return false; } @@ -118,9 +124,8 @@ bool SourceSurfaceSharedDataWrapper::Map(MapType aMapType, SharedSurfacesParent::RemoveTracking(this); } if (!dataPtr) { - size_t len = GetAlignedDataLength(); - if (!EnsureMapped(len)) { - NS_ABORT_OOM(len); + if (!EnsureMapped()) { + NS_ABORT_OOM(GetAlignedDataLength()); } dataPtr = GetData(); } diff --git a/icecat/gfx/layers/SourceSurfaceSharedData.h b/icecat/gfx/layers/SourceSurfaceSharedData.h index d442c00930..845448aa7c 100644 --- a/icecat/gfx/layers/SourceSurfaceSharedData.h +++ b/icecat/gfx/layers/SourceSurfaceSharedData.h @@ -104,7 +104,7 @@ class SourceSurfaceSharedDataWrapper final : public DataSourceSurface { return mozilla::ipc::shared_memory::PageAlignedSize(GetDataLength()); } - bool EnsureMapped(size_t aLength); + bool EnsureMapped(); // Protects mapping and unmapping of mBuf. Maybe mHandleLock; diff --git a/icecat/gfx/layers/composite/TextureHost.cpp b/icecat/gfx/layers/composite/TextureHost.cpp index e4d8449cac..7787427cc4 100644 --- a/icecat/gfx/layers/composite/TextureHost.cpp +++ b/icecat/gfx/layers/composite/TextureHost.cpp @@ -279,9 +279,10 @@ already_AddRefed CreateBackendIndependentTextureHost( case BufferDescriptor::TYCbCrDescriptor: { const YCbCrDescriptor& ycbcr = desc.get_YCbCrDescriptor(); reqSize = ImageDataSerializer::ComputeYCbCrBufferSize( - ycbcr.ySize(), ycbcr.yStride(), ycbcr.cbCrSize(), - ycbcr.cbCrStride(), ycbcr.yOffset(), ycbcr.cbOffset(), - ycbcr.crOffset()); + ycbcr.display(), ycbcr.ySize(), ycbcr.yStride(), + ycbcr.cbCrSize(), ycbcr.cbCrStride(), ycbcr.yOffset(), + ycbcr.cbOffset(), ycbcr.crOffset(), ycbcr.colorDepth(), + ycbcr.chromaSubsampling()); break; } case BufferDescriptor::TRGBDescriptor: { diff --git a/icecat/gfx/layers/ipc/ImageBridgeParent.cpp b/icecat/gfx/layers/ipc/ImageBridgeParent.cpp index 2e6d02a88e..4da783b259 100644 --- a/icecat/gfx/layers/ipc/ImageBridgeParent.cpp +++ b/icecat/gfx/layers/ipc/ImageBridgeParent.cpp @@ -181,7 +181,20 @@ class MOZ_STACK_CLASS AutoImageBridgeParentAsyncMessageSender final { ~AutoImageBridgeParentAsyncMessageSender() { mImageBridge->SendPendingAsyncMessages(); if (mToDestroy) { + // Iterate mToDestroy but de-duplicate it to avoid destroying the + // same texture parent actor twice. + nsTHashSet seenTextureParents; for (const auto& op : *mToDestroy) { + // Peek inside the op (as DestroyActor does) to see if we are about + // to destroy a PTextureParent. + if (op.type() == OpDestroy::TPTexture) { + PTextureParent* textureParent = op.get_PTexture().AsParent(); + if (!seenTextureParents.EnsureInserted(textureParent)) { + // Already seen, so skip this one. + continue; + } + } + mImageBridge->DestroyActor(op); } } diff --git a/icecat/gfx/layers/ipc/SharedPlanarYCbCrImage.cpp b/icecat/gfx/layers/ipc/SharedPlanarYCbCrImage.cpp index c4b361b153..e17e62b888 100644 --- a/icecat/gfx/layers/ipc/SharedPlanarYCbCrImage.cpp +++ b/icecat/gfx/layers/ipc/SharedPlanarYCbCrImage.cpp @@ -170,7 +170,8 @@ nsresult SharedPlanarYCbCrImage::CreateEmptyBuffer( // will try to manage this memory without knowing it belongs to a // shmem. mBufferSize = ImageDataSerializer::ComputeYCbCrBufferSize( - aYSize, mData.mYStride, aCbCrSize, mData.mCbCrStride); + mData.mPictureRect, aYSize, mData.mYStride, aCbCrSize, mData.mCbCrStride, + mData.mColorDepth, mData.mChromaSubsampling); mSize = mData.mPictureRect.Size(); mOrigin = mData.mPictureRect.TopLeft(); diff --git a/icecat/gfx/layers/opengl/TextureHostOGL.cpp b/icecat/gfx/layers/opengl/TextureHostOGL.cpp index 3b1adef141..50ae7ff59b 100644 --- a/icecat/gfx/layers/opengl/TextureHostOGL.cpp +++ b/icecat/gfx/layers/opengl/TextureHostOGL.cpp @@ -81,6 +81,11 @@ already_AddRefed CreateTextureHostOGL( #endif case SurfaceDescriptor::TEGLImageDescriptor: { + if (aDeallocator && !aDeallocator->IsSameProcess()) { + gfxCriticalError() + << "EGLImageDescriptor must only be used in same process"; + return nullptr; + } const EGLImageDescriptor& desc = aDesc.get_EGLImageDescriptor(); result = new EGLImageTextureHost(aFlags, (EGLImage)desc.image(), (EGLSync)desc.fence(), desc.size(), @@ -109,6 +114,11 @@ already_AddRefed CreateTextureHostOGL( #endif case SurfaceDescriptor::TSurfaceDescriptorSharedGLTexture: { + if (aDeallocator && !aDeallocator->IsSameProcess()) { + gfxCriticalError() << "SurfaceDescriptorSharedGLTexture must only be " + "used in same process"; + return nullptr; + } const auto& desc = aDesc.get_SurfaceDescriptorSharedGLTexture(); result = new GLTextureHost(aFlags, desc.texture(), desc.target(), diff --git a/icecat/gfx/layers/wr/WebRenderBridgeParent.cpp b/icecat/gfx/layers/wr/WebRenderBridgeParent.cpp index 30e7dd31b4..58ec1b5ae7 100644 --- a/icecat/gfx/layers/wr/WebRenderBridgeParent.cpp +++ b/icecat/gfx/layers/wr/WebRenderBridgeParent.cpp @@ -16,6 +16,7 @@ #include "GLContextProvider.h" #include "GLLibraryLoader.h" #include "nsExceptionHandler.h" +#include "mozilla/CheckedInt.h" #include "mozilla/Range.h" #include "mozilla/EnumeratedRange.h" #include "mozilla/StaticPrefs_gfx.h" @@ -314,8 +315,19 @@ class MOZ_STACK_CLASS AutoWebRenderBridgeParentAsyncMessageSender final { mWebRenderBridgeParent->SendPendingAsyncMessages(); if (mActorsToDestroy) { // Destroy the actors after sending the async messages because the latter - // may contain references to some actors. + // may contain references to some actors. De-duplicate the array to avoid + // destroying the same texture parent actor twice. + nsTHashSet seenTextureParents; for (const auto& op : *mActorsToDestroy) { + // Peek inside the op (as DestroyActor does) to see if we are about + // to destroy a PTextureParent. + if (op.type() == OpDestroy::TPTexture) { + PTextureParent* textureParent = op.get_PTexture().AsParent(); + if (!seenTextureParents.EnsureInserted(textureParent)) { + // Already seen, so skip this one. + continue; + } + } mWebRenderBridgeParent->DestroyActor(op); } } @@ -1864,12 +1876,16 @@ mozilla::ipc::IPCResult WebRenderBridgeParent::RecvGetSnapshot( return IPC_FAIL_NO_REASON(this); } - uint32_t buffer_size = size.width * size.height * 4; + auto buffer_size = (CheckedInt(size.width) * size.height * 4); + if (!buffer_size.isValid()) { + return IPC_FAIL_NO_REASON(this); + } FlushSceneBuilds(); FlushFrameGeneration(wr::RenderReasons::SNAPSHOT); mApi->Readback(start, size, bufferTexture->GetFormat(), - Range(buffer, buffer_size), aNeedsYFlip); + Range(buffer, buffer_size.value()), + aNeedsYFlip); return IPC_OK(); } diff --git a/icecat/image/moz.build b/icecat/image/moz.build index 7fbd88d284..a075a4f7f7 100644 --- a/icecat/image/moz.build +++ b/icecat/image/moz.build @@ -65,8 +65,10 @@ EXPORTS.mozilla.image += [ "ICOFileHeaders.h", "ImageMemoryReporter.h", "ImageUtils.h", + "PlaybackType.h", "Resolution.h", "SourceBuffer.h", + "SurfaceCache.h", "SurfaceFlags.h", "WebRenderImageProvider.h", ] diff --git a/icecat/js/public/Value.h b/icecat/js/public/Value.h index c70d5b6888..277b5e197c 100644 --- a/icecat/js/public/Value.h +++ b/icecat/js/public/Value.h @@ -426,7 +426,7 @@ constexpr uint64_t CanonicalizedNaNSignificand = 0x8000000000000; #endif #if defined(JS_RUNTIME_CANONICAL_NAN) -extern uint64_t CanonicalizedNaNBits; +extern JS_PUBLIC_API uint64_t CanonicalizedNaNBits; #else constexpr uint64_t CanonicalizedNaNBits = mozilla::SpecificNaNBitshasDebugScript()); DebugScriptMap* map = script->zone()->debugScriptMap; MOZ_ASSERT(map); @@ -205,7 +206,12 @@ JSBreakpointSite* DebugScript::getOrCreateBreakpointSite(JSContext* cx, /* static */ void DebugScript::destroyBreakpointSite(JS::GCContext* gcx, JSScript* script, jsbytecode* pc) { + if (IsAboutToBeFinalizedUnbarriered(script)) { + return; + } + DebugScript* debug = get(script); + JSBreakpointSite*& site = debug->breakpoints[script->pcToOffset(pc)]; MOZ_ASSERT(site); MOZ_ASSERT(site->isEmpty()); @@ -283,6 +289,10 @@ bool DebugScript::incrementStepperCount(JSContext* cx, HandleScript script) { /* static */ void DebugScript::decrementStepperCount(JS::GCContext* gcx, JSScript* script) { + if (IsAboutToBeFinalizedUnbarriered(script)) { + return; + } + DebugScript* debug = get(script); MOZ_ASSERT(debug); MOZ_ASSERT(debug->stepperCount > 0); @@ -328,6 +338,10 @@ bool DebugScript::incrementGeneratorObserverCount(JSContext* cx, /* static */ void DebugScript::decrementGeneratorObserverCount(JS::GCContext* gcx, JSScript* script) { + if (IsAboutToBeFinalizedUnbarriered(script)) { + return; + } + DebugScript* debug = get(script); MOZ_ASSERT(debug); MOZ_ASSERT(debug->generatorObserverCount > 0); @@ -393,6 +407,10 @@ void DebugAPI::checkDebugScriptAfterMovingGC(DebugScript* ds) { /* static */ bool DebugAPI::stepModeEnabledSlow(JSScript* script) { + if (IsAboutToBeFinalizedUnbarriered(script)) { + return false; + } + return DebugScript::get(script)->stepperCount > 0; } diff --git a/icecat/js/src/debugger/Debugger.cpp b/icecat/js/src/debugger/Debugger.cpp index 61d73a70bf..9af5c1e0ea 100644 --- a/icecat/js/src/debugger/Debugger.cpp +++ b/icecat/js/src/debugger/Debugger.cpp @@ -2025,26 +2025,27 @@ Completion Completion::fromJSFramePop(JSContext* cx, AbstractFramePtr frame, // // GetGeneratorObjectForFrame can return nullptr even when a generator // object does exist, if the frame is paused between the Generator and - // SetAliasedVar opcodes. But by checking the opcode first we eliminate that - // possibility, so it's fine to call genObj->isClosed(). + // SetAliasedVar opcodes. Rooted generatorObj( cx, GetGeneratorObjectForFrame(cx, frame)); - switch (JSOp(*pc)) { - case JSOp::InitialYield: - MOZ_ASSERT(!generatorObj->isClosed()); - return Completion(InitialYield(generatorObj)); - case JSOp::Yield: - MOZ_ASSERT(!generatorObj->isClosed()); - return Completion(Yield(generatorObj, frame.returnValue())); + if (generatorObj && !generatorObj->isClosed()) { + switch (JSOp(*pc)) { + case JSOp::InitialYield: + return Completion(InitialYield(generatorObj)); - case JSOp::Await: - MOZ_ASSERT(!generatorObj->isClosed()); - return Completion(Await(generatorObj, frame.returnValue())); + case JSOp::Yield: + return Completion(Yield(generatorObj, frame.returnValue())); - default: - return Completion(Return(frame.returnValue())); + case JSOp::Await: + return Completion(Await(generatorObj, frame.returnValue())); + + default: + break; + } } + + return Completion(Return(frame.returnValue())); } void Completion::trace(JSTracer* trc) { diff --git a/icecat/js/src/gc/Memory.cpp b/icecat/js/src/gc/Memory.cpp index 5540362f3b..7d02eb7f33 100644 --- a/icecat/js/src/gc/Memory.cpp +++ b/icecat/js/src/gc/Memory.cpp @@ -894,7 +894,10 @@ bool MarkPagesUnusedSoft(void* region, size_t length) { int status; do { # if defined(XP_DARWIN) - status = madvise(region, length, MADV_FREE_REUSABLE); + // Note: we use MADV_FREE instead of MADV_FREE_REUSABLE + MADV_FREE_REUSE to + // work around a kernel bug on macOS Tahoe. We should change this back once + // that bug is fixed. See bug 2015359. + status = madvise(region, length, MADV_FREE); # elif defined(XP_SOLARIS) status = posix_madvise(region, length, POSIX_MADV_DONTNEED); # else @@ -925,11 +928,6 @@ void MarkPagesInUseSoft(void* region, size_t length) { MOZ_ASSERT(DecommitEnabled()); CheckDecommit(region, length); -#if defined(XP_DARWIN) - while (madvise(region, length, MADV_FREE_REUSE) == -1 && errno == EAGAIN) { - } -#endif - MOZ_MAKE_MEM_UNDEFINED(region, length); } diff --git a/icecat/js/src/gc/Verifier.cpp b/icecat/js/src/gc/Verifier.cpp index e66d774067..eb8fc5a1aa 100644 --- a/icecat/js/src/gc/Verifier.cpp +++ b/icecat/js/src/gc/Verifier.cpp @@ -1215,10 +1215,14 @@ void GCRuntime::checkHeapBeforeMinorGC(AutoHeapSession& session) { // to tenured strings but contain nursery data. for (ZonesIter zone(rt, SkipAtoms); !zone.done(); zone.next()) { + if (zone->isGCFinished()) { + continue; // Don't access zones that are being swept off thread. + } + for (ArenaIter aiter(zone, gc::AllocKind::STRING); !aiter.done(); aiter.next()) { for (ArenaCellIterUnderGC cell(aiter.get()); !cell.done(); cell.next()) { - if (cell->is() && cell->as()->isDependent()) { + if (cell->as()->isDependent()) { JSDependentString* str = &cell->as()->asDependent(); if (str->isTenured() && str->base()->isTenured()) { MOZ_RELEASE_ASSERT(!str->hasCharsInCollectedNurseryRegion()); diff --git a/icecat/js/src/jit-test/tests/debug/Debugger-clearAllBreakpoints-finalized.js b/icecat/js/src/jit-test/tests/debug/Debugger-clearAllBreakpoints-finalized.js new file mode 100644 index 0000000000..bd092e95ea --- /dev/null +++ b/icecat/js/src/jit-test/tests/debug/Debugger-clearAllBreakpoints-finalized.js @@ -0,0 +1,17 @@ +gczeal(23); + +String + ""; + +var g = newGlobal({ newCompartment: true }); +var dbg = Debugger(g); +dbg.onNewScript = function (script) { + script.setBreakpoint(0, () => {}); +}; +g.eval(""); + +// Trigger GC, which will mark the eval script about to be finalized, +// and the DebugScriptMap entry will be removed. +Uint8Array; + +// This shouldn't try to use the DebugScriptMap entry. +dbg.clearAllBreakpoints(); diff --git a/icecat/js/src/jit-test/tests/debug/Frame-onStep-generator-resumption-04.js b/icecat/js/src/jit-test/tests/debug/Frame-onStep-generator-resumption-04.js new file mode 100644 index 0000000000..79ddb611f0 --- /dev/null +++ b/icecat/js/src/jit-test/tests/debug/Frame-onStep-generator-resumption-04.js @@ -0,0 +1,31 @@ +// Don't crash on {return:} from onStep in a generator at a Yield. + +// This test force-returns from each bytecode instruction in a generator. + +let g = newGlobal({ newCompartment: true }); +g.eval(` +function* gen() { + yield 1; +} +`) + +let dbg = new Debugger(g); + +let targetSteps = 0; +let found = true; +dbg.onEnterFrame = (frame) => { + let steps = 0; + frame.onStep = () => { + if (steps++ == targetSteps) { + found = true; + return { return: 0xdead }; + } + } +} +dbg.uncaughtExceptionHook = () => undefined + +while (found) { + found = false; + targetSteps++; + for (var y of g.gen()) {} +} diff --git a/icecat/js/src/jit/IonAnalysis.cpp b/icecat/js/src/jit/IonAnalysis.cpp index 5d4756f0c6..0efe238a27 100644 --- a/icecat/js/src/jit/IonAnalysis.cpp +++ b/icecat/js/src/jit/IonAnalysis.cpp @@ -568,8 +568,9 @@ static bool BlockIsSingleTest(MBasicBlock* phiBlock, MBasicBlock* testBlock, *ptest = nullptr; if (phiBlock != testBlock) { - MOZ_ASSERT(phiBlock->numSuccessors() == 1 && - phiBlock->getSuccessor(0) == testBlock); + MOZ_RELEASE_ASSERT(phiBlock->lastIns()->isGoto()); + MOZ_RELEASE_ASSERT(phiBlock->lastIns()->toGoto()->target() == testBlock); + MOZ_RELEASE_ASSERT(testBlock->numPredecessors() == 1); if (!phiBlock->begin()->isGoto()) { return false; } @@ -686,7 +687,7 @@ static bool IsTestInputMaybeToBool(MTest* test, MDefinition* value) { blockResult->setImplicitlyUsedUnchecked(); MInstruction* ins = block->lastIns(); - MOZ_ASSERT(ins->isGoto()); + MOZ_RELEASE_ASSERT(ins->isGoto()); ins->toGoto()->target()->removePredecessor(block); block->discardLastIns(); @@ -707,15 +708,14 @@ static bool IsTestInputMaybeToBool(MTest* test, MDefinition* value) { MInstruction* ins = block->lastIns(); if (ins->isTest()) { MTest* test = ins->toTest(); - MOZ_ASSERT(test->input() == value); + MOZ_RELEASE_ASSERT(test->input() == value); if (ifTrue != test->ifTrue()) { test->ifTrue()->removePredecessor(block); if (!ifTrue->addPredecessorSameInputsAs(block, existingPred)) { return false; } - MOZ_ASSERT(test->ifTrue() == test->getSuccessor(0)); - test->replaceSuccessor(0, ifTrue); + test->replaceSuccessor(MTest::TrueBranchIndex, ifTrue); } if (ifFalse != test->ifFalse()) { @@ -723,14 +723,13 @@ static bool IsTestInputMaybeToBool(MTest* test, MDefinition* value) { if (!ifFalse->addPredecessorSameInputsAs(block, existingPred)) { return false; } - MOZ_ASSERT(test->ifFalse() == test->getSuccessor(1)); - test->replaceSuccessor(1, ifFalse); + test->replaceSuccessor(MTest::FalseBranchIndex, ifFalse); } return true; } - MOZ_ASSERT(ins->isGoto()); + MOZ_RELEASE_ASSERT(ins->isGoto()); ins->toGoto()->target()->removePredecessor(block); block->discardLastIns(); @@ -775,8 +774,8 @@ static bool IsDiamondPattern(MBasicBlock* initialBlock) { return false; } - MBasicBlock* phiBlock = trueBranch->getSuccessor(0); - if (phiBlock != falseBranch->getSuccessor(0)) { + MBasicBlock* phiBlock = trueBranch->lastIns()->toGoto()->target(); + if (phiBlock != falseBranch->lastIns()->toGoto()->target()) { return false; } if (phiBlock->numPredecessors() != 2) { @@ -820,13 +819,13 @@ static bool IsDiamondPattern(MBasicBlock* initialBlock) { return true; } - MBasicBlock* phiBlock = trueBranch->getSuccessor(0); + MBasicBlock* phiBlock = trueBranch->lastIns()->toGoto()->target(); MBasicBlock* testBlock = phiBlock; - if (testBlock->numSuccessors() == 1) { + if (testBlock->lastIns()->isGoto()) { if (testBlock->isLoopBackedge()) { return true; } - testBlock = testBlock->getSuccessor(0); + testBlock = testBlock->lastIns()->toGoto()->target(); if (testBlock->numPredecessors() != 1) { return true; } @@ -838,7 +837,7 @@ static bool IsDiamondPattern(MBasicBlock* initialBlock) { return true; } - MOZ_ASSERT(phi->numOperands() == 2); + MOZ_RELEASE_ASSERT(phi->numOperands() == 2); // Make sure the test block does not have any outgoing loop backedges. if (!SplitCriticalEdgesForBlock(graph, testBlock)) { @@ -929,8 +928,8 @@ static bool IsTrianglePattern(MBasicBlock* initialBlock) { MBasicBlock* trueBranch = initialTest->ifTrue(); MBasicBlock* falseBranch = initialTest->ifFalse(); - if (trueBranch->numSuccessors() == 1 && - trueBranch->getSuccessor(0) == falseBranch) { + if (trueBranch->lastIns()->isGoto() && + trueBranch->lastIns()->toGoto()->target() == falseBranch) { if (trueBranch->numPredecessors() != 1) { return false; } @@ -940,8 +939,8 @@ static bool IsTrianglePattern(MBasicBlock* initialBlock) { return true; } - if (falseBranch->numSuccessors() == 1 && - falseBranch->getSuccessor(0) == trueBranch) { + if (falseBranch->lastIns()->isGoto() && + falseBranch->lastIns()->toGoto()->target() == trueBranch) { if (trueBranch->numPredecessors() != 2) { return false; } @@ -999,19 +998,19 @@ static bool IsTrianglePattern(MBasicBlock* initialBlock) { } MBasicBlock* phiBlock; - if (trueBranch->numSuccessors() == 1 && - trueBranch->getSuccessor(0) == falseBranch) { + if (trueBranch->lastIns()->isGoto() && + trueBranch->lastIns()->toGoto()->target() == falseBranch) { phiBlock = falseBranch; } else { - MOZ_ASSERT(falseBranch->getSuccessor(0) == trueBranch); + MOZ_ASSERT(falseBranch->lastIns()->toGoto()->target() == trueBranch); phiBlock = trueBranch; } MBasicBlock* testBlock = phiBlock; - if (testBlock->numSuccessors() == 1) { - MOZ_ASSERT(!testBlock->isLoopBackedge()); + if (testBlock->lastIns()->isGoto()) { + MOZ_RELEASE_ASSERT(!testBlock->isLoopBackedge()); - testBlock = testBlock->getSuccessor(0); + testBlock = testBlock->lastIns()->toGoto()->target(); if (testBlock->numPredecessors() != 1) { return true; } @@ -1023,7 +1022,7 @@ static bool IsTrianglePattern(MBasicBlock* initialBlock) { return true; } - MOZ_ASSERT(phi->numOperands() == 2); + MOZ_RELEASE_ASSERT(phi->numOperands() == 2); // If the phi-operand doesn't match the initial input, we can't fold the test. auto* phiInputForInitialBlock = @@ -1194,17 +1193,17 @@ static bool IsTrianglePattern(MBasicBlock* initialBlock) { } MBasicBlock* testBlock = phiBlock; - if (testBlock->numSuccessors() == 1) { + if (testBlock->lastIns()->isGoto()) { if (testBlock->isLoopBackedge()) { return true; } - testBlock = testBlock->getSuccessor(0); + testBlock = testBlock->lastIns()->toGoto()->target(); if (testBlock->numPredecessors() != 1) { return true; } } - MOZ_ASSERT(!phiBlock->isLoopBackedge()); + MOZ_RELEASE_ASSERT(!phiBlock->isLoopBackedge()); MPhi* phi = nullptr; MTest* finalTest = nullptr; @@ -1212,7 +1211,7 @@ static bool IsTrianglePattern(MBasicBlock* initialBlock) { return true; } - MOZ_ASSERT(phiBlock->numPredecessors() == phi->numOperands()); + MOZ_RELEASE_ASSERT(phiBlock->numPredecessors() == phi->numOperands()); // If the phi-operand doesn't match the initial input, we can't fold the test. auto* phiInputForInitialBlock = @@ -1243,7 +1242,7 @@ static bool IsTrianglePattern(MBasicBlock* initialBlock) { return true; } - MOZ_ASSERT(!pred->isLoopBackedge()); + MOZ_RELEASE_ASSERT(!pred->isLoopBackedge()); } // Ensure we found the single goto block. @@ -1270,7 +1269,7 @@ static bool IsTrianglePattern(MBasicBlock* initialBlock) { // Update all test instructions to point to the final target. while (phiBlock->numPredecessors()) { - mozilla::DebugOnly oldNumPred = phiBlock->numPredecessors(); + size_t oldNumPred = phiBlock->numPredecessors(); auto* pred = phiBlock->getPredecessor(0); auto* test = pred->lastIns()->toTest(); @@ -1281,7 +1280,7 @@ static bool IsTrianglePattern(MBasicBlock* initialBlock) { return false; } } else { - MOZ_ASSERT(test->ifFalse() == phiBlock); + MOZ_RELEASE_ASSERT(test->ifFalse() == phiBlock); if (!UpdateTestSuccessors(graph.alloc(), pred, test->input(), test->ifTrue(), finalTest->ifFalse(), testBlock)) { @@ -1290,7 +1289,7 @@ static bool IsTrianglePattern(MBasicBlock* initialBlock) { } // Ensure we've made progress. - MOZ_ASSERT(phiBlock->numPredecessors() + 1 == oldNumPred); + MOZ_RELEASE_ASSERT(phiBlock->numPredecessors() + 1 == oldNumPred); } // Remove phiBlock, if different from testBlock. diff --git a/icecat/js/src/jit/MIR-wasm.h b/icecat/js/src/jit/MIR-wasm.h index 27e9bb5ff0..f1c8079864 100644 --- a/icecat/js/src/jit/MIR-wasm.h +++ b/icecat/js/src/jit/MIR-wasm.h @@ -1346,7 +1346,6 @@ class MWasmLoadTableElement : public MBinaryInstruction, wasm::RefType refType) : MBinaryInstruction(classOpcode, elements, index) { setResultType(MIRType::WasmAnyRef); - setMovable(); initWasmRefType(wasm::MaybeRefType(refType)); } diff --git a/icecat/js/src/vm/ArrayBufferObject.cpp b/icecat/js/src/vm/ArrayBufferObject.cpp index 09f105044b..4def16af95 100644 --- a/icecat/js/src/vm/ArrayBufferObject.cpp +++ b/icecat/js/src/vm/ArrayBufferObject.cpp @@ -2266,36 +2266,15 @@ ResizableArrayBufferObject::createBufferAndData( size_t sourceByteLength = source->byteLength(); size_t newMaxByteLength = source->maxByteLength(); - if (newByteLength > sourceByteLength) { - // Copy into a larger buffer. - AutoSetNewObjectMetadata metadata(cx); - auto [buffer, toFill] = createBufferAndData( - cx, newByteLength, newMaxByteLength, metadata, nullptr); - if (!buffer) { - return nullptr; - } - - // The `createBufferAndData()` call first zero-initializes the complete - // buffer and then we copy over |sourceByteLength| bytes from |source|. It - // seems prudent to only zero-initialize the trailing bytes of |toFill| - // to avoid writing twice to `toFill[0..newByteLength]`. We don't yet - // implement this optimization, because this method is only called for - // small, inline buffers, so any write optimizations probably won't make - // much of a difference. - std::copy_n(source->dataPointer(), sourceByteLength, toFill); - - return buffer; - } - - // Copy into a smaller or same size buffer. AutoSetNewObjectMetadata metadata(cx); - auto [buffer, toFill] = createBufferAndData( + auto [buffer, toFill] = createBufferAndData( cx, newByteLength, newMaxByteLength, metadata, nullptr); if (!buffer) { return nullptr; } - std::uninitialized_copy_n(source->dataPointer(), newByteLength, toFill); + size_t nbytes = std::min(newByteLength, sourceByteLength); + std::copy_n(source->dataPointer(), nbytes, toFill); return buffer; } diff --git a/icecat/layout/style/FontFace.cpp b/icecat/layout/style/FontFace.cpp index 20769bf378..16e0f8d18b 100644 --- a/icecat/layout/style/FontFace.cpp +++ b/icecat/layout/style/FontFace.cpp @@ -281,6 +281,12 @@ void FontFace::MaybeResolve() { return; } + if (NS_IsMainThread() && !nsContentUtils::IsSafeToRunScript()) { + nsContentUtils::AddScriptRunner(NewRunnableMethod( + "FontFace::MaybeResolve", this, &FontFace::MaybeResolve)); + return; + } + mLoaded->MaybeResolve(this); } diff --git a/icecat/media/libpng/ANNOUNCE b/icecat/media/libpng/ANNOUNCE index 603b2df48e..5ada7ae879 100644 --- a/icecat/media/libpng/ANNOUNCE +++ b/icecat/media/libpng/ANNOUNCE @@ -1,5 +1,5 @@ -libpng 1.6.47 - February 18, 2025 -================================= +libpng 1.6.55 - February 9, 2026 +================================ This is a public release of libpng, intended for use in production code. @@ -7,15 +7,12 @@ This is a public release of libpng, intended for use in production code. Files available for download ---------------------------- -Source files with LF line endings (for Unix/Linux): +Source files: - * libpng-1.6.47.tar.xz (LZMA-compressed, recommended) - * libpng-1.6.47.tar.gz (deflate-compressed) - -Source files with CRLF line endings (for Windows): - - * lpng1647.7z (LZMA-compressed, recommended) - * lpng1647.zip (deflate-compressed) + * libpng-1.6.55.tar.xz (LZMA-compressed, recommended) + * libpng-1.6.55.tar.gz (deflate-compressed) + * lpng1655.7z (LZMA-compressed) + * lpng1655.zip (deflate-compressed) Other information: @@ -25,22 +22,16 @@ Other information: * TRADEMARK.md -Changes from version 1.6.46 to version 1.6.47 +Changes from version 1.6.54 to version 1.6.55 --------------------------------------------- - * Modified the behaviour of colorspace chunks in order to adhere - to the new precedence rules formulated in the latest draft of - the PNG Specification. - (Contributed by John Bowler) - * Fixed a latent bug in `png_write_iCCP`. - This would have been a read-beyond-end-of-malloc vulnerability, - introduced early in the libpng-1.6.0 development, yet (fortunately!) - it was inaccessible before the above-mentioned modification of the - colorspace precedence rules, due to pre-existing colorspace checks. - (Reported by Bob Friesenhahn; fixed by John Bowler) - + * Fixed CVE-2026-25646 (high severity): + Heap buffer overflow in `png_set_quantize`. + (Reported and fixed by Joshua Inscoe.) + * Resolved an oss-fuzz build issue involving nalloc. + (Contributed by Philippe Antoine.) Send comments/corrections/commendations to png-mng-implement at lists.sf.net. Subscription is required; visit -https://lists.sourceforge.net/lists/listinfo/png-mng-implement + to subscribe. diff --git a/icecat/media/libpng/AUTHORS b/icecat/media/libpng/AUTHORS index f30a4ee192..4094f4a57d 100644 --- a/icecat/media/libpng/AUTHORS +++ b/icecat/media/libpng/AUTHORS @@ -5,6 +5,7 @@ This is the list of PNG Reference Library ("libpng") Contributing Authors, for copyright and licensing purposes. * Adam Richter + * Alexander Smorkalov * Andreas Dilger * Chris Blume * Cosmin Truta @@ -16,21 +17,25 @@ Authors, for copyright and licensing purposes. * Guy Eric Schalnat * James Yu * John Bowler + * Joshua Inscoe * Kevin Bracey * Lucas Chollet * Magnus Holmgren * Mandar Sahastrabuddhe + * Manfred Schlaegl * Mans Rullgard * Matt Sarett * Mike Klein * Pascal Massimino * Paul Schmidt + * Petr Simecek * Philippe Antoine * Qiang Zhou * Sam Bushell * Samuel Williams * Simon-Pierre Cadieux * Tim Wegner + * Tobias Stoeckmann * Tom Lane * Tom Tanner * Vadim Barkov @@ -40,8 +45,9 @@ Authors, for copyright and licensing purposes. - Zixu Wang (王子旭) * Arm Holdings - Richard Townsend - * Google Inc. + * Google LLC - Dan Field + - Dragoș Tiselice - Leon Scroggins III - Matt Sarett - Mike Klein @@ -51,6 +57,10 @@ Authors, for copyright and licensing purposes. - GuXiWei (顾希伟) - JinBo (金波) - ZhangLixia (张利霞) + * Samsung Group + - Filip Wasil + * SpacemiT Hangzhou Technology, Co. + - Liang Junzhao (梁俊钊) The build projects, the build scripts, the test scripts, and other files in the "projects", "scripts" and "tests" directories, have diff --git a/icecat/media/libpng/CHANGES b/icecat/media/libpng/CHANGES index 834b5e1927..af9fcff6eb 100644 --- a/icecat/media/libpng/CHANGES +++ b/icecat/media/libpng/CHANGES @@ -5988,7 +5988,7 @@ Version 1.6.32rc01 [August 18, 2017] Version 1.6.32rc02 [August 22, 2017] Added contrib/oss-fuzz directory which contains files used by the oss-fuzz - project (https://github.com/google/oss-fuzz/tree/master/projects/libpng). + project . Version 1.6.32 [August 24, 2017] No changes. @@ -6251,7 +6251,93 @@ Version 1.6.47 [February 18, 2025] colorspace precedence rules, due to pre-existing colorspace checks. (Reported by Bob Friesenhahn; fixed by John Bowler) +Version 1.6.48 [April 30, 2025] + Fixed the floating-point version of the mDCv setter `png_set_mDCv`. + (Reported by Mohit Bakshi; fixed by John Bowler) + Added #error directives to discourage the inclusion of private + libpng implementation header files in PNG-supporting applications. + Added the CMake build option `PNG_LIBCONF_HEADER`, to be used as an + alternative to `DFA_XTRA`. + Removed the Travis CI configuration files, with heartfelt thanks for + their generous support of our project over the past five years! + +Version 1.6.49 [June 12, 2025] + Added SIMD-optimized code for the RISC-V Vector Extension (RVV). + (Contributed by Manfred Schlaegl, Dragos Tiselice and Filip Wasil) + Added various fixes and improvements to the build scripts and to + the sample code. + +Version 1.6.50 [July 1, 2025] + Improved the detection of the RVV Extension on the RISC-V platform. + (Contributed by Filip Wasil) + Replaced inline ASM with C intrinsics in the RVV code. + (Contributed by Filip Wasil) + Fixed a decoder defect in which unknown chunks trailing IDAT, set + to go through the unknown chunk handler, incorrectly triggered + out-of-place IEND errors. + (Contributed by John Bowler) + Fixed the CMake file for cross-platform builds that require `libm`. + +Version 1.6.51 [November 21, 2025] + Fixed CVE-2025-64505 (moderate severity): + Heap buffer overflow in `png_do_quantize` via malformed palette index. + (Reported by Samsung; analyzed by Fabio Gritti.) + Fixed CVE-2025-64506 (moderate severity): + Heap buffer over-read in `png_write_image_8bit` with 8-bit input and + `convert_to_8bit` enabled. + (Reported by Samsung and ; + analyzed by Fabio Gritti.) + Fixed CVE-2025-64720 (high severity): + Buffer overflow in `png_image_read_composite` via incorrect palette + premultiplication. + (Reported by Samsung; analyzed by John Bowler.) + Fixed CVE-2025-65018 (high severity): + Heap buffer overflow in `png_combine_row` triggered via + `png_image_finish_read`. + (Reported by .) + Fixed a memory leak in `png_set_quantize`. + (Reported by Samsung; analyzed by Fabio Gritti.) + Removed the experimental and incomplete ERROR_NUMBERS code. + (Contributed by Tobias Stoeckmann.) + Improved the RISC-V vector extension support; required RVV 1.0 or newer. + (Contributed by Filip Wasil.) + Added GitHub Actions workflows for automated testing. + Performed various refactorings and cleanups. + +Version 1.6.52 [December 3, 2025] + Fixed CVE-2025-66293 (high severity): + Out-of-bounds read in `png_image_read_composite`. + (Reported by flyfish101 .) + Fixed the Paeth filter handling in the RISC-V RVV implementation. + (Reported by Filip Wasil; fixed by Liang Junzhao.) + Improved the performance of the RISC-V RVV implementation. + (Contributed by Liang Junzhao.) + Added allocation failure fuzzing to oss-fuzz. + (Contributed by Philippe Antoine.) + +Version 1.6.53 [December 5, 2025] + Fixed a build failure on RISC-V RVV caused by a misspelled intrinsic. + (Contributed by Alexander Smorkalov.) + Fixed a build failure with CMake 4.1 or newer, on Windows, when using + Visual C++ without MASM installed. + +Version 1.6.54 [January 12, 2026] + Fixed CVE-2026-22695 (medium severity): + Heap buffer over-read in `png_image_read_direct_scaled`. + (Reported and fixed by Petr Simecek.) + Fixed CVE-2026-22801 (medium severity): + Integer truncation causing heap buffer over-read in `png_image_write_*`. + Implemented various improvements in oss-fuzz. + (Contributed by Philippe Antoine.) + +Version 1.6.55 [February 9, 2026] + Fixed CVE-2026-25646 (high severity): + Heap buffer overflow in `png_set_quantize`. + (Reported and fixed by Joshua Inscoe.) + Resolved an oss-fuzz build issue involving nalloc. + (Contributed by Philippe Antoine.) + Send comments/corrections/commendations to png-mng-implement at lists.sf.net. Subscription is required; visit -https://lists.sourceforge.net/lists/listinfo/png-mng-implement + to subscribe. diff --git a/icecat/media/libpng/LICENSE b/icecat/media/libpng/LICENSE index ea6df986cb..1b765ae9f9 100644 --- a/icecat/media/libpng/LICENSE +++ b/icecat/media/libpng/LICENSE @@ -4,8 +4,8 @@ COPYRIGHT NOTICE, DISCLAIMER, and LICENSE PNG Reference Library License version 2 --------------------------------------- - * Copyright (c) 1995-2025 The PNG Reference Library Authors. - * Copyright (c) 2018-2025 Cosmin Truta. + * Copyright (c) 1995-2026 The PNG Reference Library Authors. + * Copyright (c) 2018-2026 Cosmin Truta. * Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson. * Copyright (c) 1996-1997 Andreas Dilger. * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. diff --git a/icecat/media/libpng/README b/icecat/media/libpng/README index 57952fb215..6e0d1e3313 100644 --- a/icecat/media/libpng/README +++ b/icecat/media/libpng/README @@ -1,4 +1,4 @@ -README for libpng version 1.6.47 +README for libpng version 1.6.55 ================================ See the note about version numbers near the top of `png.h`. @@ -24,14 +24,14 @@ for more things than just PNG files. You can use zlib as a drop-in replacement for `fread()` and `fwrite()`, if you are so inclined. zlib should be available at the same place that libpng is, or at -https://zlib.net . +. You may also want a copy of the PNG specification. It is available as an RFC, a W3C Recommendation, and an ISO/IEC Standard. You can find -these at http://www.libpng.org/pub/png/pngdocs.html . +these at . -This code is currently being archived at https://libpng.sourceforge.io -in the download area, and at http://libpng.download/src . +This code is currently being archived at +in the download area, and at . This release, based in a large way on Glenn's, Guy's and Andreas' earlier work, was created and will be supported by myself and the PNG @@ -39,12 +39,12 @@ development group. Send comments, corrections and commendations to `png-mng-implement` at `lists.sourceforge.net`. (Subscription is required; visit -https://lists.sourceforge.net/lists/listinfo/png-mng-implement + to subscribe.) Send general questions about the PNG specification to `png-mng-misc` at `lists.sourceforge.net`. (Subscription is required; visit -https://lists.sourceforge.net/lists/listinfo/png-mng-misc + to subscribe.) Historical notes @@ -147,6 +147,7 @@ Files included in this distribution loongarch/ => Optimized code for LoongArch LSX mips/ => Optimized code for MIPS MSA and MIPS MMI powerpc/ => Optimized code for PowerPC VSX + riscv/ => Optimized code for the RISC-V platform ci/ => Scripts for continuous integration contrib/ => External contributions arm-neon/ => Optimized code for the ARM-NEON platform @@ -162,6 +163,7 @@ Files included in this distribution programs demonstrating the use of pngusr.dfa pngminus/ => Simple pnm2png and png2pnm programs pngsuite/ => Test images + riscv-rvv/ => Optimized code for the RISC-V Vector platform testpngs/ => Test images tools/ => Various tools visupng/ => VisualPng, a Windows viewer for PNG images diff --git a/icecat/media/libpng/apng.patch b/icecat/media/libpng/apng.patch index 6c765d8c6e..10fc018485 100644 --- a/icecat/media/libpng/apng.patch +++ b/icecat/media/libpng/apng.patch @@ -30,18 +30,18 @@ diff --git a/png.h b/png.h /* This triggers a compiler error in png.c, if png.c and png.h * do not agree upon the version number. */ -@@ -796,6 +811,10 @@ typedef PNG_CALLBACK(void, *png_write_st - #ifdef PNG_PROGRESSIVE_READ_SUPPORTED - typedef PNG_CALLBACK(void, *png_progressive_info_ptr, (png_structp, png_infop)); - typedef PNG_CALLBACK(void, *png_progressive_end_ptr, (png_structp, png_infop)); +@@ -801,6 +816,10 @@ typedef PNG_CALLBACK(void, *png_progress + (png_structp, png_infop)); + typedef PNG_CALLBACK(void, *png_progressive_end_ptr, + (png_structp, png_infop)); +#ifdef PNG_APNG_SUPPORTED -+typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, (png_structp, -+ png_uint_32)); ++typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, ++ (png_structp, png_uint_32)); +#endif /* The following callback receives png_uint_32 row_number, int pass for the * png_bytep data of the row. When transforming an interlaced image the -@@ -3338,6 +3357,75 @@ PNG_EXPORT(244, int, png_set_option, (pn +@@ -3506,6 +3525,75 @@ PNG_EXPORT(244, int, png_set_option, (pn * END OF HARDWARE AND SOFTWARE OPTIONS ******************************************************************************/ @@ -117,14 +117,14 @@ diff --git a/png.h b/png.h /* Maintainer: Put new public prototypes here ^, in libpng.3, in project * defs, and in scripts/symbols.def. */ -@@ -3346,7 +3434,11 @@ PNG_EXPORT(244, int, png_set_option, (pn +@@ -3514,7 +3602,11 @@ PNG_EXPORT(244, int, png_set_option, (pn * one to use is one more than this.) */ #ifdef PNG_EXPORT_LAST_ORDINAL +#ifdef PNG_APNG_SUPPORTED + PNG_EXPORT_LAST_ORDINAL(279); +#else - PNG_EXPORT_LAST_ORDINAL(259); + PNG_EXPORT_LAST_ORDINAL(259); +#endif /* APNG */ #endif @@ -302,7 +302,7 @@ diff --git a/pngget.c b/pngget.c diff --git a/pnginfo.h b/pnginfo.h --- a/pnginfo.h +++ b/pnginfo.h -@@ -282,5 +282,18 @@ defined(PNG_READ_BACKGROUND_SUPPORTED) +@@ -259,5 +259,18 @@ defined(PNG_READ_BACKGROUND_SUPPORTED) #ifdef PNG_sRGB_SUPPORTED int rendering_intent; #endif diff --git a/icecat/media/libpng/arm/arm_init.c b/icecat/media/libpng/arm/arm_init.c index 9088a901c5..4102ec4b76 100644 --- a/icecat/media/libpng/arm/arm_init.c +++ b/icecat/media/libpng/arm/arm_init.c @@ -35,14 +35,14 @@ #ifndef PNG_ARM_NEON_FILE # if defined(__aarch64__) || defined(_M_ARM64) /* ARM Neon is expected to be unconditionally available on ARM64. */ -# error "PNG_ARM_NEON_CHECK_SUPPORTED must not be defined on ARM64" +# error PNG_ARM_NEON_CHECK_SUPPORTED must not be defined on ARM64 # elif defined(__ARM_NEON__) || defined(__ARM_NEON) /* ARM Neon is expected to be available on the target CPU architecture. */ -# error "PNG_ARM_NEON_CHECK_SUPPORTED must not be defined on this CPU arch" +# error PNG_ARM_NEON_CHECK_SUPPORTED must not be defined on this CPU arch # elif defined(__linux__) # define PNG_ARM_NEON_FILE "linux.c" # else -# error "No support for run-time ARM Neon checking; use compile-time options" +# error No support for run-time ARM Neon checking; use compile-time options # endif #endif @@ -53,7 +53,7 @@ static int png_have_neon(png_structp png_ptr); #endif /* PNG_ARM_NEON_CHECK_SUPPORTED */ #ifndef PNG_ALIGNED_MEMORY_SUPPORTED -# error "ALIGNED_MEMORY is required; set: -DPNG_ALIGNED_MEMORY_SUPPORTED" +# error ALIGNED_MEMORY is required; please define PNG_ALIGNED_MEMORY_SUPPORTED #endif void diff --git a/icecat/media/libpng/arm/filter_neon_intrinsics.c b/icecat/media/libpng/arm/filter_neon_intrinsics.c index 7c3e0da4d8..6c3f1184a8 100644 --- a/icecat/media/libpng/arm/filter_neon_intrinsics.c +++ b/icecat/media/libpng/arm/filter_neon_intrinsics.c @@ -48,7 +48,7 @@ void png_read_filter_row_up_neon(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) + png_const_bytep prev_row) { png_bytep rp = row; png_bytep rp_stop = row + row_info->rowbytes; @@ -69,7 +69,7 @@ png_read_filter_row_up_neon(png_row_infop row_info, png_bytep row, void png_read_filter_row_sub3_neon(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) + png_const_bytep prev_row) { png_bytep rp = row; png_bytep rp_stop = row + row_info->rowbytes; @@ -116,7 +116,7 @@ png_read_filter_row_sub3_neon(png_row_infop row_info, png_bytep row, void png_read_filter_row_sub4_neon(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) + png_const_bytep prev_row) { png_bytep rp = row; png_bytep rp_stop = row + row_info->rowbytes; @@ -148,7 +148,7 @@ png_read_filter_row_sub4_neon(png_row_infop row_info, png_bytep row, void png_read_filter_row_avg3_neon(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) + png_const_bytep prev_row) { png_bytep rp = row; png_const_bytep pp = prev_row; @@ -216,7 +216,7 @@ png_read_filter_row_avg3_neon(png_row_infop row_info, png_bytep row, void png_read_filter_row_avg4_neon(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) + png_const_bytep prev_row) { png_bytep rp = row; png_bytep rp_stop = row + row_info->rowbytes; @@ -285,7 +285,7 @@ paeth(uint8x8_t a, uint8x8_t b, uint8x8_t c) void png_read_filter_row_paeth3_neon(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) + png_const_bytep prev_row) { png_bytep rp = row; png_const_bytep pp = prev_row; @@ -353,7 +353,7 @@ png_read_filter_row_paeth3_neon(png_row_infop row_info, png_bytep row, void png_read_filter_row_paeth4_neon(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) + png_const_bytep prev_row) { png_bytep rp = row; png_bytep rp_stop = row + row_info->rowbytes; diff --git a/icecat/media/libpng/intel/filter_sse2_intrinsics.c b/icecat/media/libpng/intel/filter_sse2_intrinsics.c index 2993f650b7..0f3c97a52c 100644 --- a/icecat/media/libpng/intel/filter_sse2_intrinsics.c +++ b/icecat/media/libpng/intel/filter_sse2_intrinsics.c @@ -26,30 +26,39 @@ * whichever of a, b, or c is closest to p=a+b-c. */ -static __m128i load4(const void* p) { +static __m128i +load4(const void *p) +{ int tmp; memcpy(&tmp, p, sizeof(tmp)); return _mm_cvtsi32_si128(tmp); } -static void store4(void* p, __m128i v) { +static void +store4(void *p, __m128i v) +{ int tmp = _mm_cvtsi128_si32(v); memcpy(p, &tmp, sizeof(int)); } -static __m128i load3(const void* p) { +static __m128i +load3(const void *p) +{ png_uint_32 tmp = 0; memcpy(&tmp, p, 3); return _mm_cvtsi32_si128(tmp); } -static void store3(void* p, __m128i v) { +static void +store3(void *p, __m128i v) +{ int tmp = _mm_cvtsi128_si32(v); memcpy(p, &tmp, 3); } -void png_read_filter_row_sub3_sse2(png_row_infop row_info, png_bytep row, - png_const_bytep prev) +void +png_read_filter_row_sub3_sse2(png_row_infop row_info, png_bytep row, + png_const_bytep prev) { /* The Sub filter predicts each pixel as the previous pixel, a. * There is no pixel to the left of the first pixel. It's encoded directly. @@ -81,8 +90,9 @@ void png_read_filter_row_sub3_sse2(png_row_infop row_info, png_bytep row, PNG_UNUSED(prev) } -void png_read_filter_row_sub4_sse2(png_row_infop row_info, png_bytep row, - png_const_bytep prev) +void +png_read_filter_row_sub4_sse2(png_row_infop row_info, png_bytep row, + png_const_bytep prev) { /* The Sub filter predicts each pixel as the previous pixel, a. * There is no pixel to the left of the first pixel. It's encoded directly. @@ -106,8 +116,9 @@ void png_read_filter_row_sub4_sse2(png_row_infop row_info, png_bytep row, PNG_UNUSED(prev) } -void png_read_filter_row_avg3_sse2(png_row_infop row_info, png_bytep row, - png_const_bytep prev) +void +png_read_filter_row_avg3_sse2(png_row_infop row_info, png_bytep row, + png_const_bytep prev) { /* The Avg filter predicts each pixel as the (truncated) average of a and b. * There's no pixel to the left of the first pixel. Luckily, it's @@ -119,7 +130,7 @@ void png_read_filter_row_avg3_sse2(png_row_infop row_info, png_bytep row, const __m128i zero = _mm_setzero_si128(); - __m128i b; + __m128i b; __m128i a, d = zero; png_debug(1, "in png_read_filter_row_avg3_sse2"); @@ -161,8 +172,9 @@ void png_read_filter_row_avg3_sse2(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_avg4_sse2(png_row_infop row_info, png_bytep row, - png_const_bytep prev) +void +png_read_filter_row_avg4_sse2(png_row_infop row_info, png_bytep row, + png_const_bytep prev) { /* The Avg filter predicts each pixel as the (truncated) average of a and b. * There's no pixel to the left of the first pixel. Luckily, it's @@ -171,7 +183,7 @@ void png_read_filter_row_avg4_sse2(png_row_infop row_info, png_bytep row, */ size_t rb; const __m128i zero = _mm_setzero_si128(); - __m128i b; + __m128i b; __m128i a, d = zero; png_debug(1, "in png_read_filter_row_avg4_sse2"); @@ -198,7 +210,9 @@ void png_read_filter_row_avg4_sse2(png_row_infop row_info, png_bytep row, } /* Returns |x| for 16-bit lanes. */ -static __m128i abs_i16(__m128i x) { +static __m128i +abs_i16(__m128i x) +{ #if PNG_INTEL_SSE_IMPLEMENTATION >= 2 return _mm_abs_epi16(x); #else @@ -217,7 +231,9 @@ static __m128i abs_i16(__m128i x) { } /* Bytewise c ? t : e. */ -static __m128i if_then_else(__m128i c, __m128i t, __m128i e) { +static __m128i +if_then_else(__m128i c, __m128i t, __m128i e) +{ #if PNG_INTEL_SSE_IMPLEMENTATION >= 3 return _mm_blendv_epi8(e,t,c); #else @@ -225,8 +241,9 @@ static __m128i if_then_else(__m128i c, __m128i t, __m128i e) { #endif } -void png_read_filter_row_paeth3_sse2(png_row_infop row_info, png_bytep row, - png_const_bytep prev) +void +png_read_filter_row_paeth3_sse2(png_row_infop row_info, png_bytep row, + png_const_bytep prev) { /* Paeth tries to predict pixel d using the pixel to the left of it, a, * and two pixels from the previous row, b and c: @@ -324,8 +341,9 @@ void png_read_filter_row_paeth3_sse2(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_paeth4_sse2(png_row_infop row_info, png_bytep row, - png_const_bytep prev) +void +png_read_filter_row_paeth4_sse2(png_row_infop row_info, png_bytep row, + png_const_bytep prev) { /* Paeth tries to predict pixel d using the pixel to the left of it, a, * and two pixels from the previous row, b and c: diff --git a/icecat/media/libpng/libpng-manual.txt b/icecat/media/libpng/libpng-manual.txt index 862fe2c5d0..ca689d0102 100644 --- a/icecat/media/libpng/libpng-manual.txt +++ b/icecat/media/libpng/libpng-manual.txt @@ -1,6 +1,6 @@ libpng-manual.txt - A description on how to use and modify libpng - Copyright (c) 2018-2025 Cosmin Truta + Copyright (c) 2018-2026 Cosmin Truta Copyright (c) 1998-2018 Glenn Randers-Pehrson This document is released under the libpng license. @@ -9,9 +9,9 @@ libpng-manual.txt - A description on how to use and modify libpng Based on: - libpng version 1.6.36, December 2018, through 1.6.47 - February 2025 + libpng version 1.6.36, December 2018, through 1.6.55 - February 2026 Updated and distributed by Cosmin Truta - Copyright (c) 2018-2025 Cosmin Truta + Copyright (c) 2018-2026 Cosmin Truta libpng versions 0.97, January 1998, through 1.6.35 - July 2018 Updated and distributed by Glenn Randers-Pehrson @@ -65,18 +65,22 @@ Libpng was written as a companion to the PNG specification, as a way of reducing the amount of time and effort it takes to support the PNG file format in application programs. -The PNG specification (second edition), November 2003, is available as +The PNG specification (Third Edition), June 2025, is available as +a W3C Recommendation at +. + +The PNG specification (Second Edition), November 2003, is available as a W3C Recommendation and as an ISO Standard (ISO/IEC 15948:2004 (E)) at . The W3C and ISO documents have identical technical content. The PNG-1.2 specification is available at -. -It is technically equivalent -to the PNG specification (second edition) but has some additional material. +. +It is technically equivalent to the PNG specification (Second Edition) +but has some additional material. The PNG-1.0 specification is available as RFC 2083 at - and as a + and as a W3C Recommendation at . Some additional chunks are described in the special-purpose public chunks @@ -3351,19 +3355,6 @@ Here is an example of writing two private chunks, prVt and miNE: /* Needed because miNE is not safe-to-copy */ png_set_keep_unknown_chunks(png, PNG_HANDLE_CHUNK_ALWAYS, (png_bytep) "miNE", 1); - # if PNG_LIBPNG_VER < 10600 - /* Deal with unknown chunk location bug in 1.5.x and earlier */ - png_set_unknown_chunk_location(png, info, 0, PNG_HAVE_IHDR); - png_set_unknown_chunk_location(png, info, 1, PNG_AFTER_IDAT); - # endif - # if PNG_LIBPNG_VER < 10500 - /* PNG_AFTER_IDAT writes two copies of the chunk prior to libpng-1.5.0, - * one before IDAT and another after IDAT, so don't use it; only use - * PNG_HAVE_IHDR location. This call resets the location previously - * set by assignment and png_set_unknown_chunk_location() for chunk 1. - */ - png_set_unknown_chunk_location(png, info, 1, PNG_HAVE_IHDR); - # endif #endif The high-level write interface @@ -4089,7 +4080,7 @@ READ APIs is filled in from the PNG header in the file. int png_image_begin_read_from_stdio (png_imagep image, - FILE* file) + FILE *file) The PNG header is read from the stdio FILE object. @@ -4164,7 +4155,7 @@ be written: int convert_to_8_bit, const void *buffer, png_int_32 row_stride, const void *colormap) - Write the image to the given (FILE*). + Write the image to the given FILE object. With all write APIs if image is in one of the linear formats with (png_uint_16) data then setting convert_to_8_bit will cause the output to be diff --git a/icecat/media/libpng/loongarch/filter_lsx_intrinsics.c b/icecat/media/libpng/loongarch/filter_lsx_intrinsics.c index af6cc763a0..8dc5319d56 100644 --- a/icecat/media/libpng/loongarch/filter_lsx_intrinsics.c +++ b/icecat/media/libpng/loongarch/filter_lsx_intrinsics.c @@ -102,8 +102,9 @@ out0 = __lsx_vadd_b(out0, _in3); \ } -void png_read_filter_row_up_lsx(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_up_lsx(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { size_t n = row_info->rowbytes; png_bytep rp = row; @@ -165,8 +166,9 @@ void png_read_filter_row_up_lsx(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_sub3_lsx(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_sub3_lsx(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { size_t n = row_info->rowbytes; png_uint_32 tmp; @@ -199,8 +201,9 @@ void png_read_filter_row_sub3_lsx(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_sub4_lsx(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_sub4_lsx(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { size_t n = row_info->rowbytes; __m128i vec_0, vec_1; @@ -222,8 +225,9 @@ void png_read_filter_row_sub4_lsx(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_avg3_lsx(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_avg3_lsx(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { size_t n = row_info->rowbytes; png_bytep nxt = row; @@ -275,8 +279,9 @@ void png_read_filter_row_avg3_lsx(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_avg4_lsx(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_avg4_lsx(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { size_t n = row_info->rowbytes; __m128i vec_0, vec_1, vec_2; @@ -306,9 +311,9 @@ void png_read_filter_row_avg4_lsx(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_paeth3_lsx(png_row_infop row_info, - png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_paeth3_lsx(png_row_infop row_info, + png_bytep row, png_const_bytep prev_row) { size_t n = row_info->rowbytes; png_bytep nxt = row; @@ -371,9 +376,9 @@ void png_read_filter_row_paeth3_lsx(png_row_infop row_info, } } -void png_read_filter_row_paeth4_lsx(png_row_infop row_info, - png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_paeth4_lsx(png_row_infop row_info, + png_bytep row, png_const_bytep prev_row) { size_t n = row_info->rowbytes; __m128i vec_a, vec_b, vec_c, vec_d; diff --git a/icecat/media/libpng/loongarch/loongarch_lsx_init.c b/icecat/media/libpng/loongarch/loongarch_lsx_init.c index 2c80fe81b6..7dde245519 100644 --- a/icecat/media/libpng/loongarch/loongarch_lsx_init.c +++ b/icecat/media/libpng/loongarch/loongarch_lsx_init.c @@ -17,7 +17,8 @@ #include #define LA_HWCAP_LSX (1<<4) -static int png_has_lsx(void) +static int +png_has_lsx(void) { int flags = 0; int flag = (int)getauxval(AT_HWCAP); diff --git a/icecat/media/libpng/mips/filter_mmi_inline_assembly.c b/icecat/media/libpng/mips/filter_mmi_inline_assembly.c index b330a46538..48768eec82 100644 --- a/icecat/media/libpng/mips/filter_mmi_inline_assembly.c +++ b/icecat/media/libpng/mips/filter_mmi_inline_assembly.c @@ -23,7 +23,7 @@ */ void png_read_filter_row_up_mmi(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) + png_const_bytep prev_row) { int istop = row_info->rowbytes; double rp,pp; @@ -46,7 +46,7 @@ void png_read_filter_row_up_mmi(png_row_infop row_info, png_bytep row, } void png_read_filter_row_sub3_mmi(png_row_infop row_info, png_bytep row, - png_const_bytep prev) + png_const_bytep prev) { int istop = row_info->rowbytes; double rp, pp, dest; @@ -105,7 +105,7 @@ void png_read_filter_row_sub3_mmi(png_row_infop row_info, png_bytep row, } void png_read_filter_row_sub4_mmi(png_row_infop row_info, png_bytep row, - png_const_bytep prev) + png_const_bytep prev) { /* The Sub filter predicts each pixel as the previous pixel, a. * There is no pixel to the left of the first pixel. It's encoded directly. @@ -133,7 +133,7 @@ void png_read_filter_row_sub4_mmi(png_row_infop row_info, png_bytep row, } void png_read_filter_row_avg3_mmi(png_row_infop row_info, png_bytep row, - png_const_bytep prev) + png_const_bytep prev) { int istop = row_info->rowbytes; double rp, pp, rp1, pp1; @@ -225,7 +225,7 @@ void png_read_filter_row_avg3_mmi(png_row_infop row_info, png_bytep row, } void png_read_filter_row_avg4_mmi(png_row_infop row_info, png_bytep row, - png_const_bytep prev) + png_const_bytep prev) { int istop = row_info->rowbytes; double rp,pp; @@ -261,7 +261,7 @@ void png_read_filter_row_avg4_mmi(png_row_infop row_info, png_bytep row, } void png_read_filter_row_paeth3_mmi(png_row_infop row_info, png_bytep row, - png_const_bytep prev) + png_const_bytep prev) { /* Paeth tries to predict pixel d using the pixel to the left of it, a, * and two pixels from the previous row, b and c: @@ -449,7 +449,7 @@ void png_read_filter_row_paeth3_mmi(png_row_infop row_info, png_bytep row, } void png_read_filter_row_paeth4_mmi(png_row_infop row_info, png_bytep row, - png_const_bytep prev) + png_const_bytep prev) { /* Paeth tries to predict pixel d using the pixel to the left of it, a, * and two pixels from the previous row, b and c: diff --git a/icecat/media/libpng/mips/filter_msa_intrinsics.c b/icecat/media/libpng/mips/filter_msa_intrinsics.c index a294f55130..074e9899cd 100644 --- a/icecat/media/libpng/mips/filter_msa_intrinsics.c +++ b/icecat/media/libpng/mips/filter_msa_intrinsics.c @@ -363,8 +363,9 @@ out0 += inp4; \ } -void png_read_filter_row_up_msa(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_up_msa(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { size_t i, cnt, cnt16, cnt32; size_t istop = row_info->rowbytes; @@ -454,8 +455,9 @@ void png_read_filter_row_up_msa(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_sub4_msa(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_sub4_msa(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { size_t count; size_t istop = row_info->rowbytes; @@ -493,8 +495,9 @@ void png_read_filter_row_sub4_msa(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_sub3_msa(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_sub3_msa(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { size_t count; size_t istop = row_info->rowbytes; @@ -538,8 +541,9 @@ void png_read_filter_row_sub3_msa(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_avg4_msa(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_avg4_msa(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { size_t i; png_bytep src = row; @@ -589,8 +593,9 @@ void png_read_filter_row_avg4_msa(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_avg3_msa(png_row_infop row_info, png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_avg3_msa(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { size_t i; png_bytep src = row; @@ -650,9 +655,9 @@ void png_read_filter_row_avg3_msa(png_row_infop row_info, png_bytep row, } } -void png_read_filter_row_paeth4_msa(png_row_infop row_info, - png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_paeth4_msa(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { int32_t count, rp_end; png_bytep nxt; @@ -721,9 +726,9 @@ void png_read_filter_row_paeth4_msa(png_row_infop row_info, } } -void png_read_filter_row_paeth3_msa(png_row_infop row_info, - png_bytep row, - png_const_bytep prev_row) +void +png_read_filter_row_paeth3_msa(png_row_infop row_info, png_bytep row, + png_const_bytep prev_row) { int32_t count, rp_end; png_bytep nxt; diff --git a/icecat/media/libpng/mips/mips_init.c b/icecat/media/libpng/mips/mips_init.c index 143f0a3714..5f9346f9e3 100644 --- a/icecat/media/libpng/mips/mips_init.c +++ b/icecat/media/libpng/mips/mips_init.c @@ -48,7 +48,7 @@ static int png_have_msa(png_structp png_ptr); #include PNG_MIPS_MSA_FILE #else /* PNG_MIPS_MSA_FILE */ -# error "PNG_MIPS_MSA_FILE undefined: no support for run-time MIPS MSA checks" +# error PNG_MIPS_MSA_FILE undefined: no support for run-time MIPS MSA checks #endif /* PNG_MIPS_MSA_FILE */ #endif /* PNG_MIPS_MSA_CHECK_SUPPORTED */ @@ -66,12 +66,12 @@ static int png_have_mmi(); #include PNG_MIPS_MMI_FILE #else /* PNG_MIPS_MMI_FILE */ -# error "PNG_MIPS_MMI_FILE undefined: no support for run-time MIPS MMI checks" +# error PNG_MIPS_MMI_FILE undefined: no support for run-time MIPS MMI checks #endif /* PNG_MIPS_MMI_FILE */ #endif /* PNG_MIPS_MMI_CHECK_SUPPORTED*/ #ifndef PNG_ALIGNED_MEMORY_SUPPORTED -# error "ALIGNED_MEMORY is required; set: -DPNG_ALIGNED_MEMORY_SUPPORTED" +# error ALIGNED_MEMORY is required; please define PNG_ALIGNED_MEMORY_SUPPORTED #endif /* MIPS supports two optimizations: MMI and MSA. The appropriate diff --git a/icecat/media/libpng/moz.build b/icecat/media/libpng/moz.build index cdbd821028..803dc04bef 100644 --- a/icecat/media/libpng/moz.build +++ b/icecat/media/libpng/moz.build @@ -13,7 +13,11 @@ EXPORTS += [ 'pnglibconf.h' ] -UNIFIED_SOURCES += [ +# libpng errors out if pngpriv.h is included more than once in order to prevent +# application that integrate libpng from including that file, unfortunately +# that also errors out when using unified sources so we have to disable it +# here. Similarly for all of the arch-specific sources below. +SOURCES += [ 'png.c', 'pngerror.c', 'pngget.c', @@ -38,7 +42,7 @@ SOURCES += [ if CONFIG['TARGET_CPU'] == 'arm' or CONFIG['TARGET_CPU'] == 'aarch64': DEFINES['MOZ_PNG_USE_ARM_NEON'] = True - UNIFIED_SOURCES += [ + SOURCES += [ 'arm/arm_init.c', 'arm/filter_neon_intrinsics.c', 'arm/palette_neon_intrinsics.c' @@ -51,14 +55,14 @@ if CONFIG['TARGET_CPU'] == 'arm' or CONFIG['TARGET_CPU'] == 'aarch64': if CONFIG['INTEL_ARCHITECTURE']: DEFINES['MOZ_PNG_USE_INTEL_SSE'] = True - UNIFIED_SOURCES += [ + SOURCES += [ 'intel/filter_sse2_intrinsics.c', 'intel/intel_init.c' ] if CONFIG['TARGET_CPU'] in ('mips32', 'mips64'): DEFINES['MOZ_PNG_USE_MIPS_MSA'] = True - UNIFIED_SOURCES += [ + SOURCES += [ 'mips/filter_mmi_inline_assembly.c', 'mips/filter_msa_intrinsics.c', 'mips/mips_init.c' @@ -66,7 +70,7 @@ if CONFIG['TARGET_CPU'] in ('mips32', 'mips64'): if CONFIG['HAVE_ALTIVEC']: DEFINES['MOZ_PNG_USE_POWERPC'] = True - UNIFIED_SOURCES += [ + SOURCES += [ 'powerpc/filter_vsx_intrinsics.c', 'powerpc/powerpc_init.c' ] @@ -74,7 +78,7 @@ if CONFIG['HAVE_ALTIVEC']: if CONFIG['TARGET_CPU'] == 'loongarch64': DEFINES['MOZ_PNG_USE_LOONGARCH_LSX'] = True CFLAGS += ['-mlsx'] - UNIFIED_SOURCES += [ + SOURCES += [ 'loongarch/filter_lsx_intrinsics.c', 'loongarch/loongarch_lsx_init.c', ] diff --git a/icecat/media/libpng/moz.yaml b/icecat/media/libpng/moz.yaml index 541984eb29..7ea222be20 100644 --- a/icecat/media/libpng/moz.yaml +++ b/icecat/media/libpng/moz.yaml @@ -11,9 +11,8 @@ origin: url: "http://www.libpng.org/pub/png/libpng.html" license: libpng - release: v1.6.47 (2025-02-18T11:18:30+02:00). - - revision: "v1.6.43" + release: v1.6.55 (2026-02-09T22:02:20+02:00). + revision: v1.6.55 license-file: LICENSE @@ -25,7 +24,7 @@ updatebot: enabled: True vendoring: - url: https://github.com/glennrp/libpng + url: https://github.com/pnggroup/libpng source-hosting: github tracking: tag diff --git a/icecat/media/libpng/png.c b/icecat/media/libpng/png.c index 6d533ec40b..a0cad0197e 100644 --- a/icecat/media/libpng/png.c +++ b/icecat/media/libpng/png.c @@ -1,6 +1,6 @@ /* png.c - location for general purpose libpng functions * - * Copyright (c) 2018-2025 Cosmin Truta + * Copyright (c) 2018-2026 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -13,7 +13,7 @@ #include "pngpriv.h" /* Generate a compiler error if there is an old png.h in the search path. */ -typedef png_libpng_version_1_6_47 Your_png_h_is_not_version_1_6_47; +typedef png_libpng_version_1_6_55 Your_png_h_is_not_version_1_6_55; /* Sanity check the chunks definitions - PNG_KNOWN_CHUNKS from pngpriv.h and the * corresponding macro definitions. This causes a compile time failure if @@ -101,17 +101,24 @@ png_sig_cmp(png_const_bytep sig, size_t start, size_t num_to_check) #if defined(PNG_READ_SUPPORTED) || defined(PNG_WRITE_SUPPORTED) /* Function to allocate memory for zlib */ PNG_FUNCTION(voidpf /* PRIVATE */, -png_zalloc,(voidpf png_ptr, uInt items, uInt size),PNG_ALLOCATED) +png_zalloc,(voidpf png_ptr, uInt items, uInt size), + PNG_ALLOCATED) { png_alloc_size_t num_bytes = size; if (png_ptr == NULL) return NULL; - if (items >= (~(png_alloc_size_t)0)/size) + /* This check against overflow is vestigial, dating back from + * the old times when png_zalloc used to be an exported function. + * We're still keeping it here for now, as an extra-cautious + * prevention against programming errors inside zlib, although it + * should rather be a debug-time assertion instead. + */ + if (size != 0 && items >= (~(png_alloc_size_t)0) / size) { - png_warning (png_voidcast(png_structrp, png_ptr), - "Potential overflow in png_zalloc()"); + png_warning(png_voidcast(png_structrp, png_ptr), + "Potential overflow in png_zalloc()"); return NULL; } @@ -238,10 +245,6 @@ png_user_version_check(png_structrp png_ptr, png_const_charp user_png_ver) png_warning(png_ptr, m); #endif -#ifdef PNG_ERROR_NUMBERS_SUPPORTED - png_ptr->flags = 0; -#endif - return 0; } @@ -255,7 +258,8 @@ png_user_version_check(png_structrp png_ptr, png_const_charp user_png_ver) PNG_FUNCTION(png_structp /* PRIVATE */, png_create_png_struct,(png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn, png_voidp mem_ptr, - png_malloc_ptr malloc_fn, png_free_ptr free_fn),PNG_ALLOCATED) + png_malloc_ptr malloc_fn, png_free_ptr free_fn), + PNG_ALLOCATED) { png_struct create_struct; # ifdef PNG_SETJMP_SUPPORTED @@ -359,7 +363,8 @@ png_create_png_struct,(png_const_charp user_png_ver, png_voidp error_ptr, /* Allocate the memory for an info_struct for the application. */ PNG_FUNCTION(png_infop,PNGAPI -png_create_info_struct,(png_const_structrp png_ptr),PNG_ALLOCATED) +png_create_info_struct,(png_const_structrp png_ptr), + PNG_ALLOCATED) { png_inforp info_ptr; @@ -700,7 +705,7 @@ png_get_io_ptr(png_const_structrp png_ptr) * function of your own because "FILE *" isn't necessarily available. */ void PNGAPI -png_init_io(png_structrp png_ptr, png_FILE_p fp) +png_init_io(png_structrp png_ptr, FILE *fp) { png_debug(1, "in png_init_io"); @@ -815,8 +820,8 @@ png_get_copyright(png_const_structrp png_ptr) return PNG_STRING_COPYRIGHT #else return PNG_STRING_NEWLINE \ - "libpng version 1.6.47" PNG_STRING_NEWLINE \ - "Copyright (c) 2018-2025 Cosmin Truta" PNG_STRING_NEWLINE \ + "libpng version 1.6.55" PNG_STRING_NEWLINE \ + "Copyright (c) 2018-2026 Cosmin Truta" PNG_STRING_NEWLINE \ "Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson" \ PNG_STRING_NEWLINE \ "Copyright (c) 1996-1997 Andreas Dilger" PNG_STRING_NEWLINE \ @@ -1491,7 +1496,7 @@ png_XYZ_from_xy(png_XYZ *XYZ, const png_xy *xy) } #endif /* COLORSPACE */ -#ifdef PNG_iCCP_SUPPORTED +#ifdef PNG_READ_iCCP_SUPPORTED /* Error message generation */ static char png_icc_tag_char(png_uint_32 byte) @@ -1567,9 +1572,7 @@ png_icc_profile_error(png_const_structrp png_ptr, png_const_charp name, return 0; } -#endif /* iCCP */ -#ifdef PNG_READ_iCCP_SUPPORTED /* Encoded value of D50 as an ICC XYZNumber. From the ICC 2010 spec the value * is XYZ(0.9642,1.0,0.8249), which scales to: * @@ -2257,8 +2260,8 @@ PNG_FP_End: int png_check_fp_string(png_const_charp string, size_t size) { - int state=0; - size_t char_index=0; + int state = 0; + size_t char_index = 0; if (png_check_fp_number(string, size, &state, &char_index) != 0 && (char_index == size || string[char_index] == 0)) @@ -3969,7 +3972,7 @@ png_image_free_function(png_voidp argument) # ifdef PNG_STDIO_SUPPORTED if (cp->owned_file != 0) { - FILE *fp = png_voidcast(FILE*, cp->png_ptr->io_ptr); + FILE *fp = png_voidcast(FILE *, cp->png_ptr->io_ptr); cp->owned_file = 0; /* Ignore errors here. */ diff --git a/icecat/media/libpng/png.h b/icecat/media/libpng/png.h index 5ce5640c6d..93ca074304 100644 --- a/icecat/media/libpng/png.h +++ b/icecat/media/libpng/png.h @@ -1,8 +1,8 @@ /* png.h - header file for PNG reference library * - * libpng version 1.6.47 + * libpng version 1.6.55 * - * Copyright (c) 2018-2025 Cosmin Truta + * Copyright (c) 2018-2026 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -14,7 +14,7 @@ * libpng versions 0.89, June 1996, through 0.96, May 1997: Andreas Dilger * libpng versions 0.97, January 1998, through 1.6.35, July 2018: * Glenn Randers-Pehrson - * libpng versions 1.6.36, December 2018, through 1.6.47, February 2025: + * libpng versions 1.6.36, December 2018, through 1.6.55, February 2026: * Cosmin Truta * See also "Contributing Authors", below. */ @@ -26,8 +26,8 @@ * PNG Reference Library License version 2 * --------------------------------------- * - * * Copyright (c) 1995-2025 The PNG Reference Library Authors. - * * Copyright (c) 2018-2025 Cosmin Truta. + * * Copyright (c) 1995-2026 The PNG Reference Library Authors. + * * Copyright (c) 2018-2026 Cosmin Truta. * * Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson. * * Copyright (c) 1996-1997 Andreas Dilger. * * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -238,7 +238,7 @@ * ... * 1.5.30 15 10530 15.so.15.30[.0] * ... - * 1.6.47 16 10647 16.so.16.47[.0] + * 1.6.55 16 10655 16.so.16.55[.0] * * Henceforth the source version will match the shared-library major and * minor numbers; the shared-library major version number will be used for @@ -274,7 +274,7 @@ */ /* Version information for png.h - this should match the version in png.c */ -#define PNG_LIBPNG_VER_STRING "1.6.47" +#define PNG_LIBPNG_VER_STRING "1.6.55" #define PNG_HEADER_VERSION_STRING " libpng version " PNG_LIBPNG_VER_STRING "\n" /* The versions of shared library builds should stay in sync, going forward */ @@ -285,7 +285,7 @@ /* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */ #define PNG_LIBPNG_VER_MAJOR 1 #define PNG_LIBPNG_VER_MINOR 6 -#define PNG_LIBPNG_VER_RELEASE 47 +#define PNG_LIBPNG_VER_RELEASE 55 /* This should be zero for a public release, or non-zero for a * development version. @@ -316,7 +316,7 @@ * From version 1.0.1 it is: * XXYYZZ, where XX=major, YY=minor, ZZ=release */ -#define PNG_LIBPNG_VER 10647 /* 1.6.47 */ +#define PNG_LIBPNG_VER 10655 /* 1.6.55 */ /* Library configuration: these options cannot be changed after * the library has been built. @@ -441,7 +441,7 @@ extern "C" { /* This triggers a compiler error in png.c, if png.c and png.h * do not agree upon the version number. */ -typedef char* png_libpng_version_1_6_47; +typedef char *png_libpng_version_1_6_55; /* Basic control structions. Read libpng-manual.txt or libpng.3 for more info. * @@ -800,20 +800,25 @@ typedef png_row_info * * png_row_infopp; * modify the buffer it is passed. The 'read' function, on the other hand, is * expected to return the read data in the buffer. */ -typedef PNG_CALLBACK(void, *png_error_ptr, (png_structp, png_const_charp)); -typedef PNG_CALLBACK(void, *png_rw_ptr, (png_structp, png_bytep, size_t)); -typedef PNG_CALLBACK(void, *png_flush_ptr, (png_structp)); -typedef PNG_CALLBACK(void, *png_read_status_ptr, (png_structp, png_uint_32, - int)); -typedef PNG_CALLBACK(void, *png_write_status_ptr, (png_structp, png_uint_32, - int)); +typedef PNG_CALLBACK(void, *png_error_ptr, + (png_structp, png_const_charp)); +typedef PNG_CALLBACK(void, *png_rw_ptr, + (png_structp, png_bytep, size_t)); +typedef PNG_CALLBACK(void, *png_flush_ptr, + (png_structp)); +typedef PNG_CALLBACK(void, *png_read_status_ptr, + (png_structp, png_uint_32, int)); +typedef PNG_CALLBACK(void, *png_write_status_ptr, + (png_structp, png_uint_32, int)); #ifdef PNG_PROGRESSIVE_READ_SUPPORTED -typedef PNG_CALLBACK(void, *png_progressive_info_ptr, (png_structp, png_infop)); -typedef PNG_CALLBACK(void, *png_progressive_end_ptr, (png_structp, png_infop)); +typedef PNG_CALLBACK(void, *png_progressive_info_ptr, + (png_structp, png_infop)); +typedef PNG_CALLBACK(void, *png_progressive_end_ptr, + (png_structp, png_infop)); #ifdef PNG_APNG_SUPPORTED -typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, (png_structp, - png_uint_32)); +typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, + (png_structp, png_uint_32)); #endif /* The following callback receives png_uint_32 row_number, int pass for the @@ -826,19 +831,19 @@ typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, (png_structp, * find the output pixel (x,y) given an interlaced sub-image pixel * (row,col,pass). (See below for these macros.) */ -typedef PNG_CALLBACK(void, *png_progressive_row_ptr, (png_structp, png_bytep, - png_uint_32, int)); +typedef PNG_CALLBACK(void, *png_progressive_row_ptr, + (png_structp, png_bytep, png_uint_32, int)); #endif #if defined(PNG_READ_USER_TRANSFORM_SUPPORTED) || \ defined(PNG_WRITE_USER_TRANSFORM_SUPPORTED) -typedef PNG_CALLBACK(void, *png_user_transform_ptr, (png_structp, png_row_infop, - png_bytep)); +typedef PNG_CALLBACK(void, *png_user_transform_ptr, + (png_structp, png_row_infop, png_bytep)); #endif #ifdef PNG_USER_CHUNKS_SUPPORTED -typedef PNG_CALLBACK(int, *png_user_chunk_ptr, (png_structp, - png_unknown_chunkp)); +typedef PNG_CALLBACK(int, *png_user_chunk_ptr, + (png_structp, png_unknown_chunkp)); #endif #ifdef PNG_UNKNOWN_CHUNKS_SUPPORTED /* not used anywhere */ @@ -896,9 +901,10 @@ PNG_FUNCTION(void, (PNGCAPI *png_longjmp_ptr), (jmp_buf, int), typedef); * ignores the first argument) should be completely compatible with the * following. */ -typedef PNG_CALLBACK(png_voidp, *png_malloc_ptr, (png_structp, - png_alloc_size_t)); -typedef PNG_CALLBACK(void, *png_free_ptr, (png_structp, png_voidp)); +typedef PNG_CALLBACK(png_voidp, *png_malloc_ptr, + (png_structp, png_alloc_size_t)); +typedef PNG_CALLBACK(void, *png_free_ptr, + (png_structp, png_voidp)); /* Section 4: exported functions * Here are the function definitions most commonly used. This is not @@ -930,20 +936,22 @@ typedef PNG_CALLBACK(void, *png_free_ptr, (png_structp, png_voidp)); */ /* Returns the version number of the library */ -PNG_EXPORT(1, png_uint_32, png_access_version_number, (void)); +PNG_EXPORT(1, png_uint_32, png_access_version_number, + (void)); /* Tell lib we have already handled the first magic bytes. * Handling more than 8 bytes from the beginning of the file is an error. */ -PNG_EXPORT(2, void, png_set_sig_bytes, (png_structrp png_ptr, int num_bytes)); +PNG_EXPORT(2, void, png_set_sig_bytes, + (png_structrp png_ptr, int num_bytes)); /* Check sig[start] through sig[start + num_to_check - 1] to see if it's a * PNG file. Returns zero if the supplied bytes match the 8-byte PNG * signature, and non-zero otherwise. Having num_to_check == 0 or * start > 7 will always fail (i.e. return non-zero). */ -PNG_EXPORT(3, int, png_sig_cmp, (png_const_bytep sig, size_t start, - size_t num_to_check)); +PNG_EXPORT(3, int, png_sig_cmp, + (png_const_bytep sig, size_t start, size_t num_to_check)); /* Simple signature checking function. This is the same as calling * png_check_sig(sig, n) := (png_sig_cmp(sig, 0, n) == 0). @@ -952,21 +960,21 @@ PNG_EXPORT(3, int, png_sig_cmp, (png_const_bytep sig, size_t start, /* Allocate and initialize png_ptr struct for reading, and any other memory. */ PNG_EXPORTA(4, png_structp, png_create_read_struct, - (png_const_charp user_png_ver, png_voidp error_ptr, - png_error_ptr error_fn, png_error_ptr warn_fn), - PNG_ALLOCATED); + (png_const_charp user_png_ver, + png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn), + PNG_ALLOCATED); /* Allocate and initialize png_ptr struct for writing, and any other memory */ PNG_EXPORTA(5, png_structp, png_create_write_struct, - (png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, - png_error_ptr warn_fn), - PNG_ALLOCATED); + (png_const_charp user_png_ver, + png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn), + PNG_ALLOCATED); PNG_EXPORT(6, size_t, png_get_compression_buffer_size, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); -PNG_EXPORT(7, void, png_set_compression_buffer_size, (png_structrp png_ptr, - size_t size)); +PNG_EXPORT(7, void, png_set_compression_buffer_size, + (png_structrp png_ptr, size_t size)); /* Moved from pngconf.h in 1.4.0 and modified to ensure setjmp/longjmp * match up. @@ -979,8 +987,8 @@ PNG_EXPORT(7, void, png_set_compression_buffer_size, (png_structrp png_ptr, * allocated by the library - the call will return NULL on a mismatch * indicating an ABI mismatch. */ -PNG_EXPORT(8, jmp_buf*, png_set_longjmp_fn, (png_structrp png_ptr, - png_longjmp_ptr longjmp_fn, size_t jmp_buf_size)); +PNG_EXPORT(8, jmp_buf*, png_set_longjmp_fn, + (png_structrp png_ptr, png_longjmp_ptr longjmp_fn, size_t jmp_buf_size)); # define png_jmpbuf(png_ptr) \ (*png_set_longjmp_fn((png_ptr), longjmp, (sizeof (jmp_buf)))) #else @@ -992,67 +1000,77 @@ PNG_EXPORT(8, jmp_buf*, png_set_longjmp_fn, (png_structrp png_ptr, * will use it; otherwise it will call PNG_ABORT(). This function was * added in libpng-1.5.0. */ -PNG_EXPORTA(9, void, png_longjmp, (png_const_structrp png_ptr, int val), - PNG_NORETURN); +PNG_EXPORTA(9, void, png_longjmp, + (png_const_structrp png_ptr, int val), + PNG_NORETURN); #ifdef PNG_READ_SUPPORTED /* Reset the compression stream */ -PNG_EXPORTA(10, int, png_reset_zstream, (png_structrp png_ptr), PNG_DEPRECATED); +PNG_EXPORTA(10, int, png_reset_zstream, + (png_structrp png_ptr), + PNG_DEPRECATED); #endif /* New functions added in libpng-1.0.2 (not enabled by default until 1.2.0) */ #ifdef PNG_USER_MEM_SUPPORTED PNG_EXPORTA(11, png_structp, png_create_read_struct_2, - (png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, - png_error_ptr warn_fn, + (png_const_charp user_png_ver, + png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn, png_voidp mem_ptr, png_malloc_ptr malloc_fn, png_free_ptr free_fn), - PNG_ALLOCATED); + PNG_ALLOCATED); PNG_EXPORTA(12, png_structp, png_create_write_struct_2, - (png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, - png_error_ptr warn_fn, + (png_const_charp user_png_ver, + png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn, png_voidp mem_ptr, png_malloc_ptr malloc_fn, png_free_ptr free_fn), - PNG_ALLOCATED); + PNG_ALLOCATED); #endif /* Write the PNG file signature. */ -PNG_EXPORT(13, void, png_write_sig, (png_structrp png_ptr)); +PNG_EXPORT(13, void, png_write_sig, + (png_structrp png_ptr)); /* Write a PNG chunk - size, type, (optional) data, CRC. */ -PNG_EXPORT(14, void, png_write_chunk, (png_structrp png_ptr, png_const_bytep - chunk_name, png_const_bytep data, size_t length)); +PNG_EXPORT(14, void, png_write_chunk, + (png_structrp png_ptr, + png_const_bytep chunk_name, png_const_bytep data, size_t length)); /* Write the start of a PNG chunk - length and chunk name. */ -PNG_EXPORT(15, void, png_write_chunk_start, (png_structrp png_ptr, +PNG_EXPORT(15, void, png_write_chunk_start, + (png_structrp png_ptr, png_const_bytep chunk_name, png_uint_32 length)); /* Write the data of a PNG chunk started with png_write_chunk_start(). */ -PNG_EXPORT(16, void, png_write_chunk_data, (png_structrp png_ptr, +PNG_EXPORT(16, void, png_write_chunk_data, + (png_structrp png_ptr, png_const_bytep data, size_t length)); /* Finish a chunk started with png_write_chunk_start() (includes CRC). */ -PNG_EXPORT(17, void, png_write_chunk_end, (png_structrp png_ptr)); +PNG_EXPORT(17, void, png_write_chunk_end, + (png_structrp png_ptr)); /* Allocate and initialize the info structure */ -PNG_EXPORTA(18, png_infop, png_create_info_struct, (png_const_structrp png_ptr), - PNG_ALLOCATED); +PNG_EXPORTA(18, png_infop, png_create_info_struct, + (png_const_structrp png_ptr), + PNG_ALLOCATED); /* DEPRECATED: this function allowed init structures to be created using the * default allocation method (typically malloc). Use is deprecated in 1.6.0 and * the API will be removed in the future. */ -PNG_EXPORTA(19, void, png_info_init_3, (png_infopp info_ptr, - size_t png_info_struct_size), PNG_DEPRECATED); +PNG_EXPORTA(19, void, png_info_init_3, + (png_infopp info_ptr, size_t png_info_struct_size), + PNG_DEPRECATED); /* Writes all the PNG information before the image. */ PNG_EXPORT(20, void, png_write_info_before_PLTE, - (png_structrp png_ptr, png_const_inforp info_ptr)); + (png_structrp png_ptr, png_const_inforp info_ptr)); PNG_EXPORT(21, void, png_write_info, - (png_structrp png_ptr, png_const_inforp info_ptr)); + (png_structrp png_ptr, png_const_inforp info_ptr)); #ifdef PNG_SEQUENTIAL_READ_SUPPORTED /* Read the information before the actual image data. */ PNG_EXPORT(22, void, png_read_info, - (png_structrp png_ptr, png_inforp info_ptr)); + (png_structrp png_ptr, png_inforp info_ptr)); #endif #ifdef PNG_TIME_RFC1123_SUPPORTED @@ -1062,45 +1080,54 @@ PNG_EXPORT(22, void, png_read_info, */ #if PNG_LIBPNG_VER < 10700 /* To do: remove this from libpng17 (and from libpng17/png.c and pngstruct.h) */ -PNG_EXPORTA(23, png_const_charp, png_convert_to_rfc1123, (png_structrp png_ptr, - png_const_timep ptime),PNG_DEPRECATED); +PNG_EXPORTA(23, png_const_charp, png_convert_to_rfc1123, + (png_structrp png_ptr, png_const_timep ptime), + PNG_DEPRECATED); #endif -PNG_EXPORT(241, int, png_convert_to_rfc1123_buffer, (char out[29], - png_const_timep ptime)); +PNG_EXPORT(241, int, png_convert_to_rfc1123_buffer, + (char out[29], png_const_timep ptime)); #endif #ifdef PNG_CONVERT_tIME_SUPPORTED /* Convert from a struct tm to png_time */ -PNG_EXPORT(24, void, png_convert_from_struct_tm, (png_timep ptime, - const struct tm * ttime)); +PNG_EXPORT(24, void, png_convert_from_struct_tm, + (png_timep ptime, const struct tm * ttime)); /* Convert from time_t to png_time. Uses gmtime() */ -PNG_EXPORT(25, void, png_convert_from_time_t, (png_timep ptime, time_t ttime)); +PNG_EXPORT(25, void, png_convert_from_time_t, + (png_timep ptime, time_t ttime)); #endif /* CONVERT_tIME */ #ifdef PNG_READ_EXPAND_SUPPORTED /* Expand data to 24-bit RGB, or 8-bit grayscale, with alpha if available. */ -PNG_EXPORT(26, void, png_set_expand, (png_structrp png_ptr)); -PNG_EXPORT(27, void, png_set_expand_gray_1_2_4_to_8, (png_structrp png_ptr)); -PNG_EXPORT(28, void, png_set_palette_to_rgb, (png_structrp png_ptr)); -PNG_EXPORT(29, void, png_set_tRNS_to_alpha, (png_structrp png_ptr)); +PNG_EXPORT(26, void, png_set_expand, + (png_structrp png_ptr)); +PNG_EXPORT(27, void, png_set_expand_gray_1_2_4_to_8, + (png_structrp png_ptr)); +PNG_EXPORT(28, void, png_set_palette_to_rgb, + (png_structrp png_ptr)); +PNG_EXPORT(29, void, png_set_tRNS_to_alpha, + (png_structrp png_ptr)); #endif #ifdef PNG_READ_EXPAND_16_SUPPORTED /* Expand to 16-bit channels, forces conversion of palette to RGB and expansion * of a tRNS chunk if present. */ -PNG_EXPORT(221, void, png_set_expand_16, (png_structrp png_ptr)); +PNG_EXPORT(221, void, png_set_expand_16, + (png_structrp png_ptr)); #endif #if defined(PNG_READ_BGR_SUPPORTED) || defined(PNG_WRITE_BGR_SUPPORTED) /* Use blue, green, red order for pixels. */ -PNG_EXPORT(30, void, png_set_bgr, (png_structrp png_ptr)); +PNG_EXPORT(30, void, png_set_bgr, + (png_structrp png_ptr)); #endif #ifdef PNG_READ_GRAY_TO_RGB_SUPPORTED /* Expand the grayscale to 24-bit RGB if necessary. */ -PNG_EXPORT(31, void, png_set_gray_to_rgb, (png_structrp png_ptr)); +PNG_EXPORT(31, void, png_set_gray_to_rgb, + (png_structrp png_ptr)); #endif #ifdef PNG_READ_RGB_TO_GRAY_SUPPORTED @@ -1110,18 +1137,20 @@ PNG_EXPORT(31, void, png_set_gray_to_rgb, (png_structrp png_ptr)); #define PNG_ERROR_ACTION_ERROR 3 #define PNG_RGB_TO_GRAY_DEFAULT (-1)/*for red/green coefficients*/ -PNG_FP_EXPORT(32, void, png_set_rgb_to_gray, (png_structrp png_ptr, +PNG_FP_EXPORT(32, void, png_set_rgb_to_gray, + (png_structrp png_ptr, int error_action, double red, double green)) -PNG_FIXED_EXPORT(33, void, png_set_rgb_to_gray_fixed, (png_structrp png_ptr, +PNG_FIXED_EXPORT(33, void, png_set_rgb_to_gray_fixed, + (png_structrp png_ptr, int error_action, png_fixed_point red, png_fixed_point green)) -PNG_EXPORT(34, png_byte, png_get_rgb_to_gray_status, (png_const_structrp - png_ptr)); +PNG_EXPORT(34, png_byte, png_get_rgb_to_gray_status, + (png_const_structrp png_ptr)); #endif #ifdef PNG_BUILD_GRAYSCALE_PALETTE_SUPPORTED -PNG_EXPORT(35, void, png_build_grayscale_palette, (int bit_depth, - png_colorp palette)); +PNG_EXPORT(35, void, png_build_grayscale_palette, + (int bit_depth, png_colorp palette)); #endif #ifdef PNG_READ_ALPHA_MODE_SUPPORTED @@ -1166,10 +1195,10 @@ PNG_EXPORT(35, void, png_build_grayscale_palette, (int bit_depth, #define PNG_ALPHA_OPTIMIZED 2 /* 'PNG' for opaque pixels, else 'STANDARD' */ #define PNG_ALPHA_BROKEN 3 /* the alpha channel is gamma encoded */ -PNG_FP_EXPORT(227, void, png_set_alpha_mode, (png_structrp png_ptr, int mode, - double output_gamma)) -PNG_FIXED_EXPORT(228, void, png_set_alpha_mode_fixed, (png_structrp png_ptr, - int mode, png_fixed_point output_gamma)) +PNG_FP_EXPORT(227, void, png_set_alpha_mode, + (png_structrp png_ptr, int mode, double output_gamma)) +PNG_FIXED_EXPORT(228, void, png_set_alpha_mode_fixed, + (png_structrp png_ptr, int mode, png_fixed_point output_gamma)) #endif #if defined(PNG_GAMMA_SUPPORTED) || defined(PNG_READ_ALPHA_MODE_SUPPORTED) @@ -1259,51 +1288,57 @@ PNG_FIXED_EXPORT(228, void, png_set_alpha_mode_fixed, (png_structrp png_ptr, */ #ifdef PNG_READ_STRIP_ALPHA_SUPPORTED -PNG_EXPORT(36, void, png_set_strip_alpha, (png_structrp png_ptr)); +PNG_EXPORT(36, void, png_set_strip_alpha, + (png_structrp png_ptr)); #endif #if defined(PNG_READ_SWAP_ALPHA_SUPPORTED) || \ defined(PNG_WRITE_SWAP_ALPHA_SUPPORTED) -PNG_EXPORT(37, void, png_set_swap_alpha, (png_structrp png_ptr)); +PNG_EXPORT(37, void, png_set_swap_alpha, + (png_structrp png_ptr)); #endif #if defined(PNG_READ_INVERT_ALPHA_SUPPORTED) || \ defined(PNG_WRITE_INVERT_ALPHA_SUPPORTED) -PNG_EXPORT(38, void, png_set_invert_alpha, (png_structrp png_ptr)); +PNG_EXPORT(38, void, png_set_invert_alpha, + (png_structrp png_ptr)); #endif #if defined(PNG_READ_FILLER_SUPPORTED) || defined(PNG_WRITE_FILLER_SUPPORTED) /* Add a filler byte to 8-bit or 16-bit Gray or 24-bit or 48-bit RGB images. */ -PNG_EXPORT(39, void, png_set_filler, (png_structrp png_ptr, png_uint_32 filler, - int flags)); +PNG_EXPORT(39, void, png_set_filler, + (png_structrp png_ptr, png_uint_32 filler, int flags)); /* The values of the PNG_FILLER_ defines should NOT be changed */ # define PNG_FILLER_BEFORE 0 # define PNG_FILLER_AFTER 1 /* Add an alpha byte to 8-bit or 16-bit Gray or 24-bit or 48-bit RGB images. */ -PNG_EXPORT(40, void, png_set_add_alpha, (png_structrp png_ptr, - png_uint_32 filler, int flags)); +PNG_EXPORT(40, void, png_set_add_alpha, + (png_structrp png_ptr, png_uint_32 filler, int flags)); #endif /* READ_FILLER || WRITE_FILLER */ #if defined(PNG_READ_SWAP_SUPPORTED) || defined(PNG_WRITE_SWAP_SUPPORTED) /* Swap bytes in 16-bit depth files. */ -PNG_EXPORT(41, void, png_set_swap, (png_structrp png_ptr)); +PNG_EXPORT(41, void, png_set_swap, + (png_structrp png_ptr)); #endif #if defined(PNG_READ_PACK_SUPPORTED) || defined(PNG_WRITE_PACK_SUPPORTED) /* Use 1 byte per pixel in 1, 2, or 4-bit depth files. */ -PNG_EXPORT(42, void, png_set_packing, (png_structrp png_ptr)); +PNG_EXPORT(42, void, png_set_packing, + (png_structrp png_ptr)); #endif #if defined(PNG_READ_PACKSWAP_SUPPORTED) || \ defined(PNG_WRITE_PACKSWAP_SUPPORTED) /* Swap packing order of pixels in bytes. */ -PNG_EXPORT(43, void, png_set_packswap, (png_structrp png_ptr)); +PNG_EXPORT(43, void, png_set_packswap, + (png_structrp png_ptr)); #endif #if defined(PNG_READ_SHIFT_SUPPORTED) || defined(PNG_WRITE_SHIFT_SUPPORTED) /* Converts files to legal bit depths. */ -PNG_EXPORT(44, void, png_set_shift, (png_structrp png_ptr, png_const_color_8p - true_bits)); +PNG_EXPORT(44, void, png_set_shift, + (png_structrp png_ptr, png_const_color_8p true_bits)); #endif #if defined(PNG_READ_INTERLACING_SUPPORTED) || \ @@ -1314,12 +1349,14 @@ PNG_EXPORT(44, void, png_set_shift, (png_structrp png_ptr, png_const_color_8p * necessary to call png_read_row or png_read_rows png_get_image_height * times for each pass. */ -PNG_EXPORT(45, int, png_set_interlace_handling, (png_structrp png_ptr)); +PNG_EXPORT(45, int, png_set_interlace_handling, + (png_structrp png_ptr)); #endif #if defined(PNG_READ_INVERT_SUPPORTED) || defined(PNG_WRITE_INVERT_SUPPORTED) /* Invert monochrome files */ -PNG_EXPORT(46, void, png_set_invert_mono, (png_structrp png_ptr)); +PNG_EXPORT(46, void, png_set_invert_mono, + (png_structrp png_ptr)); #endif #ifdef PNG_READ_BACKGROUND_SUPPORTED @@ -1328,10 +1365,12 @@ PNG_EXPORT(46, void, png_set_invert_mono, (png_structrp png_ptr)); * read. Doing so will result in unexpected behavior and possible warnings or * errors if the PNG file contains a bKGD chunk. */ -PNG_FP_EXPORT(47, void, png_set_background, (png_structrp png_ptr, +PNG_FP_EXPORT(47, void, png_set_background, + (png_structrp png_ptr, png_const_color_16p background_color, int background_gamma_code, int need_expand, double background_gamma)) -PNG_FIXED_EXPORT(215, void, png_set_background_fixed, (png_structrp png_ptr, +PNG_FIXED_EXPORT(215, void, png_set_background_fixed, + (png_structrp png_ptr, png_const_color_16p background_color, int background_gamma_code, int need_expand, png_fixed_point background_gamma)) #endif @@ -1344,20 +1383,23 @@ PNG_FIXED_EXPORT(215, void, png_set_background_fixed, (png_structrp png_ptr, #ifdef PNG_READ_SCALE_16_TO_8_SUPPORTED /* Scale a 16-bit depth file down to 8-bit, accurately. */ -PNG_EXPORT(229, void, png_set_scale_16, (png_structrp png_ptr)); +PNG_EXPORT(229, void, png_set_scale_16, + (png_structrp png_ptr)); #endif #ifdef PNG_READ_STRIP_16_TO_8_SUPPORTED #define PNG_READ_16_TO_8_SUPPORTED /* Name prior to 1.5.4 */ /* Strip the second byte of information from a 16-bit depth file. */ -PNG_EXPORT(48, void, png_set_strip_16, (png_structrp png_ptr)); +PNG_EXPORT(48, void, png_set_strip_16, + (png_structrp png_ptr)); #endif #ifdef PNG_READ_QUANTIZE_SUPPORTED /* Turn on quantizing, and reduce the palette to the number of colors * available. */ -PNG_EXPORT(49, void, png_set_quantize, (png_structrp png_ptr, +PNG_EXPORT(49, void, png_set_quantize, + (png_structrp png_ptr, png_colorp palette, int num_palette, int maximum_colors, png_const_uint_16p histogram, int full_quantize)); #endif @@ -1379,82 +1421,92 @@ PNG_EXPORT(49, void, png_set_quantize, (png_structrp png_ptr, * API (floating point or fixed.) Notice, however, that the 'file_gamma' value * is the inverse of a 'screen gamma' value. */ -PNG_FP_EXPORT(50, void, png_set_gamma, (png_structrp png_ptr, +PNG_FP_EXPORT(50, void, png_set_gamma, + (png_structrp png_ptr, double screen_gamma, double override_file_gamma)) -PNG_FIXED_EXPORT(208, void, png_set_gamma_fixed, (png_structrp png_ptr, +PNG_FIXED_EXPORT(208, void, png_set_gamma_fixed, + (png_structrp png_ptr, png_fixed_point screen_gamma, png_fixed_point override_file_gamma)) #endif #ifdef PNG_WRITE_FLUSH_SUPPORTED /* Set how many lines between output flushes - 0 for no flushing */ -PNG_EXPORT(51, void, png_set_flush, (png_structrp png_ptr, int nrows)); +PNG_EXPORT(51, void, png_set_flush, + (png_structrp png_ptr, int nrows)); /* Flush the current PNG output buffer */ -PNG_EXPORT(52, void, png_write_flush, (png_structrp png_ptr)); +PNG_EXPORT(52, void, png_write_flush, + (png_structrp png_ptr)); #endif /* Optional update palette with requested transformations */ -PNG_EXPORT(53, void, png_start_read_image, (png_structrp png_ptr)); +PNG_EXPORT(53, void, png_start_read_image, + (png_structrp png_ptr)); /* Optional call to update the users info structure */ -PNG_EXPORT(54, void, png_read_update_info, (png_structrp png_ptr, - png_inforp info_ptr)); +PNG_EXPORT(54, void, png_read_update_info, + (png_structrp png_ptr, png_inforp info_ptr)); #ifdef PNG_SEQUENTIAL_READ_SUPPORTED /* Read one or more rows of image data. */ -PNG_EXPORT(55, void, png_read_rows, (png_structrp png_ptr, png_bytepp row, +PNG_EXPORT(55, void, png_read_rows, + (png_structrp png_ptr, png_bytepp row, png_bytepp display_row, png_uint_32 num_rows)); #endif #ifdef PNG_SEQUENTIAL_READ_SUPPORTED /* Read a row of data. */ -PNG_EXPORT(56, void, png_read_row, (png_structrp png_ptr, png_bytep row, - png_bytep display_row)); +PNG_EXPORT(56, void, png_read_row, + (png_structrp png_ptr, png_bytep row, png_bytep display_row)); #endif #ifdef PNG_SEQUENTIAL_READ_SUPPORTED /* Read the whole image into memory at once. */ -PNG_EXPORT(57, void, png_read_image, (png_structrp png_ptr, png_bytepp image)); +PNG_EXPORT(57, void, png_read_image, + (png_structrp png_ptr, png_bytepp image)); #endif /* Write a row of image data */ -PNG_EXPORT(58, void, png_write_row, (png_structrp png_ptr, - png_const_bytep row)); +PNG_EXPORT(58, void, png_write_row, + (png_structrp png_ptr, png_const_bytep row)); /* Write a few rows of image data: (*row) is not written; however, the type * is declared as writeable to maintain compatibility with previous versions * of libpng and to allow the 'display_row' array from read_rows to be passed * unchanged to write_rows. */ -PNG_EXPORT(59, void, png_write_rows, (png_structrp png_ptr, png_bytepp row, - png_uint_32 num_rows)); +PNG_EXPORT(59, void, png_write_rows, + (png_structrp png_ptr, png_bytepp row, png_uint_32 num_rows)); /* Write the image data */ -PNG_EXPORT(60, void, png_write_image, (png_structrp png_ptr, png_bytepp image)); +PNG_EXPORT(60, void, png_write_image, + (png_structrp png_ptr, png_bytepp image)); /* Write the end of the PNG file. */ -PNG_EXPORT(61, void, png_write_end, (png_structrp png_ptr, - png_inforp info_ptr)); +PNG_EXPORT(61, void, png_write_end, + (png_structrp png_ptr, png_inforp info_ptr)); #ifdef PNG_SEQUENTIAL_READ_SUPPORTED /* Read the end of the PNG file. */ -PNG_EXPORT(62, void, png_read_end, (png_structrp png_ptr, png_inforp info_ptr)); +PNG_EXPORT(62, void, png_read_end, + (png_structrp png_ptr, png_inforp info_ptr)); #endif /* Free any memory associated with the png_info_struct */ -PNG_EXPORT(63, void, png_destroy_info_struct, (png_const_structrp png_ptr, - png_infopp info_ptr_ptr)); +PNG_EXPORT(63, void, png_destroy_info_struct, + (png_const_structrp png_ptr, png_infopp info_ptr_ptr)); /* Free any memory associated with the png_struct and the png_info_structs */ -PNG_EXPORT(64, void, png_destroy_read_struct, (png_structpp png_ptr_ptr, +PNG_EXPORT(64, void, png_destroy_read_struct, + (png_structpp png_ptr_ptr, png_infopp info_ptr_ptr, png_infopp end_info_ptr_ptr)); /* Free any memory associated with the png_struct and the png_info_structs */ -PNG_EXPORT(65, void, png_destroy_write_struct, (png_structpp png_ptr_ptr, - png_infopp info_ptr_ptr)); +PNG_EXPORT(65, void, png_destroy_write_struct, + (png_structpp png_ptr_ptr, png_infopp info_ptr_ptr)); /* Set the libpng method of handling chunk CRC errors */ -PNG_EXPORT(66, void, png_set_crc_action, (png_structrp png_ptr, int crit_action, - int ancil_action)); +PNG_EXPORT(66, void, png_set_crc_action, + (png_structrp png_ptr, int crit_action, int ancil_action)); /* Values for png_set_crc_action() say how to handle CRC errors in * ancillary and critical chunks, and whether to use the data contained @@ -1484,8 +1536,8 @@ PNG_EXPORT(66, void, png_set_crc_action, (png_structrp png_ptr, int crit_action, /* Set the filtering method(s) used by libpng. Currently, the only valid * value for "method" is 0. */ -PNG_EXPORT(67, void, png_set_filter, (png_structrp png_ptr, int method, - int filters)); +PNG_EXPORT(67, void, png_set_filter, + (png_structrp png_ptr, int method, int filters)); #endif /* WRITE */ /* Flags for png_set_filter() to say which filters to use. The flags @@ -1514,11 +1566,14 @@ PNG_EXPORT(67, void, png_set_filter, (png_structrp png_ptr, int method, #ifdef PNG_WRITE_SUPPORTED #ifdef PNG_WRITE_WEIGHTED_FILTER_SUPPORTED /* DEPRECATED */ -PNG_FP_EXPORT(68, void, png_set_filter_heuristics, (png_structrp png_ptr, - int heuristic_method, int num_weights, png_const_doublep filter_weights, +PNG_FP_EXPORT(68, void, png_set_filter_heuristics, + (png_structrp png_ptr, + int heuristic_method, int num_weights, + png_const_doublep filter_weights, png_const_doublep filter_costs)) PNG_FIXED_EXPORT(209, void, png_set_filter_heuristics_fixed, - (png_structrp png_ptr, int heuristic_method, int num_weights, + (png_structrp png_ptr, + int heuristic_method, int num_weights, png_const_fixed_point_p filter_weights, png_const_fixed_point_p filter_costs)) #endif /* WRITE_WEIGHTED_FILTER */ @@ -1537,44 +1592,44 @@ PNG_FIXED_EXPORT(209, void, png_set_filter_heuristics_fixed, * these values may not correspond directly to the zlib compression levels. */ #ifdef PNG_WRITE_CUSTOMIZE_COMPRESSION_SUPPORTED -PNG_EXPORT(69, void, png_set_compression_level, (png_structrp png_ptr, - int level)); +PNG_EXPORT(69, void, png_set_compression_level, + (png_structrp png_ptr, int level)); -PNG_EXPORT(70, void, png_set_compression_mem_level, (png_structrp png_ptr, - int mem_level)); +PNG_EXPORT(70, void, png_set_compression_mem_level, + (png_structrp png_ptr, int mem_level)); -PNG_EXPORT(71, void, png_set_compression_strategy, (png_structrp png_ptr, - int strategy)); +PNG_EXPORT(71, void, png_set_compression_strategy, + (png_structrp png_ptr, int strategy)); /* If PNG_WRITE_OPTIMIZE_CMF_SUPPORTED is defined, libpng will use a * smaller value of window_bits if it can do so safely. */ -PNG_EXPORT(72, void, png_set_compression_window_bits, (png_structrp png_ptr, - int window_bits)); +PNG_EXPORT(72, void, png_set_compression_window_bits, + (png_structrp png_ptr, int window_bits)); -PNG_EXPORT(73, void, png_set_compression_method, (png_structrp png_ptr, - int method)); +PNG_EXPORT(73, void, png_set_compression_method, + (png_structrp png_ptr, int method)); #endif /* WRITE_CUSTOMIZE_COMPRESSION */ #ifdef PNG_WRITE_CUSTOMIZE_ZTXT_COMPRESSION_SUPPORTED /* Also set zlib parameters for compressing non-IDAT chunks */ -PNG_EXPORT(222, void, png_set_text_compression_level, (png_structrp png_ptr, - int level)); +PNG_EXPORT(222, void, png_set_text_compression_level, + (png_structrp png_ptr, int level)); -PNG_EXPORT(223, void, png_set_text_compression_mem_level, (png_structrp png_ptr, - int mem_level)); +PNG_EXPORT(223, void, png_set_text_compression_mem_level, + (png_structrp png_ptr, int mem_level)); -PNG_EXPORT(224, void, png_set_text_compression_strategy, (png_structrp png_ptr, - int strategy)); +PNG_EXPORT(224, void, png_set_text_compression_strategy, + (png_structrp png_ptr, int strategy)); /* If PNG_WRITE_OPTIMIZE_CMF_SUPPORTED is defined, libpng will use a * smaller value of window_bits if it can do so safely. */ PNG_EXPORT(225, void, png_set_text_compression_window_bits, - (png_structrp png_ptr, int window_bits)); + (png_structrp png_ptr, int window_bits)); -PNG_EXPORT(226, void, png_set_text_compression_method, (png_structrp png_ptr, - int method)); +PNG_EXPORT(226, void, png_set_text_compression_method, + (png_structrp png_ptr, int method)); #endif /* WRITE_CUSTOMIZE_ZTXT_COMPRESSION */ #endif /* WRITE */ @@ -1589,7 +1644,8 @@ PNG_EXPORT(226, void, png_set_text_compression_method, (png_structrp png_ptr, #ifdef PNG_STDIO_SUPPORTED /* Initialize the input/output for the PNG file to the default functions. */ -PNG_EXPORT(74, void, png_init_io, (png_structrp png_ptr, png_FILE_p fp)); +PNG_EXPORT(74, void, png_init_io, + (png_structrp png_ptr, FILE *fp)); #endif /* Replace the (error and abort), and warning functions with user @@ -1600,11 +1656,13 @@ PNG_EXPORT(74, void, png_init_io, (png_structrp png_ptr, png_FILE_p fp)); * default function will be used. */ -PNG_EXPORT(75, void, png_set_error_fn, (png_structrp png_ptr, +PNG_EXPORT(75, void, png_set_error_fn, + (png_structrp png_ptr, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warning_fn)); /* Return the user pointer associated with the error functions */ -PNG_EXPORT(76, png_voidp, png_get_error_ptr, (png_const_structrp png_ptr)); +PNG_EXPORT(76, png_voidp, png_get_error_ptr, + (png_const_structrp png_ptr)); /* Replace the default data output functions with a user supplied one(s). * If buffered output is not used, then output_flush_fn can be set to NULL. @@ -1616,47 +1674,54 @@ PNG_EXPORT(76, png_voidp, png_get_error_ptr, (png_const_structrp png_ptr)); * default flush function, which uses the standard *FILE structure, will * be used. */ -PNG_EXPORT(77, void, png_set_write_fn, (png_structrp png_ptr, png_voidp io_ptr, +PNG_EXPORT(77, void, png_set_write_fn, + (png_structrp png_ptr, + png_voidp io_ptr, png_rw_ptr write_data_fn, png_flush_ptr output_flush_fn)); /* Replace the default data input function with a user supplied one. */ -PNG_EXPORT(78, void, png_set_read_fn, (png_structrp png_ptr, png_voidp io_ptr, - png_rw_ptr read_data_fn)); +PNG_EXPORT(78, void, png_set_read_fn, + (png_structrp png_ptr, + png_voidp io_ptr, png_rw_ptr read_data_fn)); /* Return the user pointer associated with the I/O functions */ -PNG_EXPORT(79, png_voidp, png_get_io_ptr, (png_const_structrp png_ptr)); +PNG_EXPORT(79, png_voidp, png_get_io_ptr, + (png_const_structrp png_ptr)); -PNG_EXPORT(80, void, png_set_read_status_fn, (png_structrp png_ptr, - png_read_status_ptr read_row_fn)); +PNG_EXPORT(80, void, png_set_read_status_fn, + (png_structrp png_ptr, png_read_status_ptr read_row_fn)); -PNG_EXPORT(81, void, png_set_write_status_fn, (png_structrp png_ptr, - png_write_status_ptr write_row_fn)); +PNG_EXPORT(81, void, png_set_write_status_fn, + (png_structrp png_ptr, png_write_status_ptr write_row_fn)); #ifdef PNG_USER_MEM_SUPPORTED /* Replace the default memory allocation functions with user supplied one(s). */ -PNG_EXPORT(82, void, png_set_mem_fn, (png_structrp png_ptr, png_voidp mem_ptr, - png_malloc_ptr malloc_fn, png_free_ptr free_fn)); +PNG_EXPORT(82, void, png_set_mem_fn, + (png_structrp png_ptr, + png_voidp mem_ptr, png_malloc_ptr malloc_fn, png_free_ptr free_fn)); /* Return the user pointer associated with the memory functions */ -PNG_EXPORT(83, png_voidp, png_get_mem_ptr, (png_const_structrp png_ptr)); +PNG_EXPORT(83, png_voidp, png_get_mem_ptr, + (png_const_structrp png_ptr)); #endif #ifdef PNG_READ_USER_TRANSFORM_SUPPORTED -PNG_EXPORT(84, void, png_set_read_user_transform_fn, (png_structrp png_ptr, - png_user_transform_ptr read_user_transform_fn)); +PNG_EXPORT(84, void, png_set_read_user_transform_fn, + (png_structrp png_ptr, png_user_transform_ptr read_user_transform_fn)); #endif #ifdef PNG_WRITE_USER_TRANSFORM_SUPPORTED -PNG_EXPORT(85, void, png_set_write_user_transform_fn, (png_structrp png_ptr, - png_user_transform_ptr write_user_transform_fn)); +PNG_EXPORT(85, void, png_set_write_user_transform_fn, + (png_structrp png_ptr, png_user_transform_ptr write_user_transform_fn)); #endif #ifdef PNG_USER_TRANSFORM_PTR_SUPPORTED -PNG_EXPORT(86, void, png_set_user_transform_info, (png_structrp png_ptr, - png_voidp user_transform_ptr, int user_transform_depth, - int user_transform_channels)); +PNG_EXPORT(86, void, png_set_user_transform_info, + (png_structrp png_ptr, + png_voidp user_transform_ptr, + int user_transform_depth, int user_transform_channels)); /* Return the user pointer associated with the user transform functions */ PNG_EXPORT(87, png_voidp, png_get_user_transform_ptr, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); #endif #ifdef PNG_USER_TRANSFORM_INFO_SUPPORTED @@ -1671,8 +1736,10 @@ PNG_EXPORT(87, png_voidp, png_get_user_transform_ptr, * find the output pixel (x,y) given an interlaced sub-image pixel * (row,col,pass). (See below for these macros.) */ -PNG_EXPORT(217, png_uint_32, png_get_current_row_number, (png_const_structrp)); -PNG_EXPORT(218, png_byte, png_get_current_pass_number, (png_const_structrp)); +PNG_EXPORT(217, png_uint_32, png_get_current_row_number, + (png_const_structrp)); +PNG_EXPORT(218, png_byte, png_get_current_pass_number, + (png_const_structrp)); #endif #ifdef PNG_READ_USER_CHUNKS_SUPPORTED @@ -1695,28 +1762,32 @@ PNG_EXPORT(218, png_byte, png_get_current_pass_number, (png_const_structrp)); * See "INTERACTION WITH USER CHUNK CALLBACKS" below for important notes about * how this behavior will change in libpng 1.7 */ -PNG_EXPORT(88, void, png_set_read_user_chunk_fn, (png_structrp png_ptr, +PNG_EXPORT(88, void, png_set_read_user_chunk_fn, + (png_structrp png_ptr, png_voidp user_chunk_ptr, png_user_chunk_ptr read_user_chunk_fn)); #endif #ifdef PNG_USER_CHUNKS_SUPPORTED -PNG_EXPORT(89, png_voidp, png_get_user_chunk_ptr, (png_const_structrp png_ptr)); +PNG_EXPORT(89, png_voidp, png_get_user_chunk_ptr, + (png_const_structrp png_ptr)); #endif #ifdef PNG_PROGRESSIVE_READ_SUPPORTED /* Sets the function callbacks for the push reader, and a pointer to a * user-defined structure available to the callback functions. */ -PNG_EXPORT(90, void, png_set_progressive_read_fn, (png_structrp png_ptr, +PNG_EXPORT(90, void, png_set_progressive_read_fn, + (png_structrp png_ptr, png_voidp progressive_ptr, png_progressive_info_ptr info_fn, png_progressive_row_ptr row_fn, png_progressive_end_ptr end_fn)); /* Returns the user pointer associated with the push read functions */ PNG_EXPORT(91, png_voidp, png_get_progressive_ptr, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); /* Function to be called when data becomes available */ -PNG_EXPORT(92, void, png_process_data, (png_structrp png_ptr, +PNG_EXPORT(92, void, png_process_data, + (png_structrp png_ptr, png_inforp info_ptr, png_bytep buffer, size_t buffer_size)); /* A function which may be called *only* within png_process_data to stop the @@ -1726,7 +1797,8 @@ PNG_EXPORT(92, void, png_process_data, (png_structrp png_ptr, * 'save' is set to true the routine will first save all the pending data and * will always return 0. */ -PNG_EXPORT(219, size_t, png_process_data_pause, (png_structrp, int save)); +PNG_EXPORT(219, size_t, png_process_data_pause, + (png_structrp, int save)); /* A function which may be called *only* outside (after) a call to * png_process_data. It returns the number of bytes of data to skip in the @@ -1734,45 +1806,53 @@ PNG_EXPORT(219, size_t, png_process_data_pause, (png_structrp, int save)); * application must skip than number of bytes of input data and pass the * following data to the next call to png_process_data. */ -PNG_EXPORT(220, png_uint_32, png_process_data_skip, (png_structrp)); +PNG_EXPORT(220, png_uint_32, png_process_data_skip, + (png_structrp)); /* Function that combines rows. 'new_row' is a flag that should come from * the callback and be non-NULL if anything needs to be done; the library * stores its own version of the new data internally and ignores the passed * in value. */ -PNG_EXPORT(93, void, png_progressive_combine_row, (png_const_structrp png_ptr, +PNG_EXPORT(93, void, png_progressive_combine_row, + (png_const_structrp png_ptr, png_bytep old_row, png_const_bytep new_row)); #endif /* PROGRESSIVE_READ */ -PNG_EXPORTA(94, png_voidp, png_malloc, (png_const_structrp png_ptr, - png_alloc_size_t size), PNG_ALLOCATED); +PNG_EXPORTA(94, png_voidp, png_malloc, + (png_const_structrp png_ptr, png_alloc_size_t size), + PNG_ALLOCATED); /* Added at libpng version 1.4.0 */ -PNG_EXPORTA(95, png_voidp, png_calloc, (png_const_structrp png_ptr, - png_alloc_size_t size), PNG_ALLOCATED); +PNG_EXPORTA(95, png_voidp, png_calloc, + (png_const_structrp png_ptr, png_alloc_size_t size), + PNG_ALLOCATED); /* Added at libpng version 1.2.4 */ -PNG_EXPORTA(96, png_voidp, png_malloc_warn, (png_const_structrp png_ptr, - png_alloc_size_t size), PNG_ALLOCATED); +PNG_EXPORTA(96, png_voidp, png_malloc_warn, + (png_const_structrp png_ptr, png_alloc_size_t size), + PNG_ALLOCATED); /* Frees a pointer allocated by png_malloc() */ -PNG_EXPORT(97, void, png_free, (png_const_structrp png_ptr, png_voidp ptr)); +PNG_EXPORT(97, void, png_free, + (png_const_structrp png_ptr, png_voidp ptr)); /* Free data that was allocated internally */ -PNG_EXPORT(98, void, png_free_data, (png_const_structrp png_ptr, - png_inforp info_ptr, png_uint_32 free_me, int num)); +PNG_EXPORT(98, void, png_free_data, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_uint_32 free_me, int num)); /* Reassign the responsibility for freeing existing data, whether allocated * by libpng or by the application; this works on the png_info structure passed * in, without changing the state for other png_info structures. */ -PNG_EXPORT(99, void, png_data_freer, (png_const_structrp png_ptr, - png_inforp info_ptr, int freer, png_uint_32 mask)); +PNG_EXPORT(99, void, png_data_freer, + (png_const_structrp png_ptr, png_inforp info_ptr, + int freer, png_uint_32 mask)); /* Assignments for png_data_freer */ #define PNG_DESTROY_WILL_FREE_DATA 1 -#define PNG_SET_WILL_FREE_DATA 1 -#define PNG_USER_WILL_FREE_DATA 2 +#define PNG_SET_WILL_FREE_DATA 1 +#define PNG_USER_WILL_FREE_DATA 2 /* Flags for png_ptr->free_me and info_ptr->free_me */ #define PNG_FREE_HIST 0x0008U #define PNG_FREE_ICCP 0x0010U @@ -1792,36 +1872,42 @@ PNG_EXPORT(99, void, png_data_freer, (png_const_structrp png_ptr, #define PNG_FREE_MUL 0x4220U /* PNG_FREE_SPLT|PNG_FREE_TEXT|PNG_FREE_UNKN */ #ifdef PNG_USER_MEM_SUPPORTED -PNG_EXPORTA(100, png_voidp, png_malloc_default, (png_const_structrp png_ptr, - png_alloc_size_t size), PNG_ALLOCATED PNG_DEPRECATED); -PNG_EXPORTA(101, void, png_free_default, (png_const_structrp png_ptr, - png_voidp ptr), PNG_DEPRECATED); +PNG_EXPORTA(100, png_voidp, png_malloc_default, + (png_const_structrp png_ptr, png_alloc_size_t size), + PNG_ALLOCATED PNG_DEPRECATED); +PNG_EXPORTA(101, void, png_free_default, + (png_const_structrp png_ptr, png_voidp ptr), + PNG_DEPRECATED); #endif #ifdef PNG_ERROR_TEXT_SUPPORTED /* Fatal error in PNG image of libpng - can't continue */ -PNG_EXPORTA(102, void, png_error, (png_const_structrp png_ptr, - png_const_charp error_message), PNG_NORETURN); +PNG_EXPORTA(102, void, png_error, + (png_const_structrp png_ptr, png_const_charp error_message), + PNG_NORETURN); /* The same, but the chunk name is prepended to the error string. */ -PNG_EXPORTA(103, void, png_chunk_error, (png_const_structrp png_ptr, - png_const_charp error_message), PNG_NORETURN); +PNG_EXPORTA(103, void, png_chunk_error, + (png_const_structrp png_ptr, png_const_charp error_message), + PNG_NORETURN); #else /* Fatal error in PNG image of libpng - can't continue */ -PNG_EXPORTA(104, void, png_err, (png_const_structrp png_ptr), PNG_NORETURN); +PNG_EXPORTA(104, void, png_err, + (png_const_structrp png_ptr), + PNG_NORETURN); # define png_error(s1,s2) png_err(s1) # define png_chunk_error(s1,s2) png_err(s1) #endif #ifdef PNG_WARNINGS_SUPPORTED /* Non-fatal error in libpng. Can continue, but may have a problem. */ -PNG_EXPORT(105, void, png_warning, (png_const_structrp png_ptr, - png_const_charp warning_message)); +PNG_EXPORT(105, void, png_warning, + (png_const_structrp png_ptr, png_const_charp warning_message)); /* Non-fatal error in libpng, chunk name is prepended to message. */ -PNG_EXPORT(106, void, png_chunk_warning, (png_const_structrp png_ptr, - png_const_charp warning_message)); +PNG_EXPORT(106, void, png_chunk_warning, + (png_const_structrp png_ptr, png_const_charp warning_message)); #else # define png_warning(s1,s2) ((void)(s1)) # define png_chunk_warning(s1,s2) ((void)(s1)) @@ -1830,17 +1916,17 @@ PNG_EXPORT(106, void, png_chunk_warning, (png_const_structrp png_ptr, #ifdef PNG_BENIGN_ERRORS_SUPPORTED /* Benign error in libpng. Can continue, but may have a problem. * User can choose whether to handle as a fatal error or as a warning. */ -PNG_EXPORT(107, void, png_benign_error, (png_const_structrp png_ptr, - png_const_charp warning_message)); +PNG_EXPORT(107, void, png_benign_error, + (png_const_structrp png_ptr, png_const_charp warning_message)); #ifdef PNG_READ_SUPPORTED /* Same, chunk name is prepended to message (only during read) */ -PNG_EXPORT(108, void, png_chunk_benign_error, (png_const_structrp png_ptr, - png_const_charp warning_message)); +PNG_EXPORT(108, void, png_chunk_benign_error, + (png_const_structrp png_ptr, png_const_charp warning_message)); #endif PNG_EXPORT(109, void, png_set_benign_errors, - (png_structrp png_ptr, int allowed)); + (png_structrp png_ptr, int allowed)); #else # ifdef PNG_ALLOW_BENIGN_ERRORS # define png_benign_error png_warning @@ -1864,169 +1950,181 @@ PNG_EXPORT(109, void, png_set_benign_errors, * png_info_struct. */ /* Returns "flag" if chunk data is valid in info_ptr. */ -PNG_EXPORT(110, png_uint_32, png_get_valid, (png_const_structrp png_ptr, - png_const_inforp info_ptr, png_uint_32 flag)); +PNG_EXPORT(110, png_uint_32, png_get_valid, + (png_const_structrp png_ptr, png_const_inforp info_ptr, png_uint_32 flag)); /* Returns number of bytes needed to hold a transformed row. */ -PNG_EXPORT(111, size_t, png_get_rowbytes, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(111, size_t, png_get_rowbytes, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); #ifdef PNG_INFO_IMAGE_SUPPORTED /* Returns row_pointers, which is an array of pointers to scanlines that was * returned from png_read_png(). */ -PNG_EXPORT(112, png_bytepp, png_get_rows, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(112, png_bytepp, png_get_rows, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); /* Set row_pointers, which is an array of pointers to scanlines for use * by png_write_png(). */ -PNG_EXPORT(113, void, png_set_rows, (png_const_structrp png_ptr, - png_inforp info_ptr, png_bytepp row_pointers)); +PNG_EXPORT(113, void, png_set_rows, + (png_const_structrp png_ptr, png_inforp info_ptr, png_bytepp row_pointers)); #endif /* Returns number of color channels in image. */ -PNG_EXPORT(114, png_byte, png_get_channels, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(114, png_byte, png_get_channels, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); #ifdef PNG_EASY_ACCESS_SUPPORTED /* Returns image width in pixels. */ -PNG_EXPORT(115, png_uint_32, png_get_image_width, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(115, png_uint_32, png_get_image_width, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); /* Returns image height in pixels. */ -PNG_EXPORT(116, png_uint_32, png_get_image_height, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(116, png_uint_32, png_get_image_height, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); /* Returns image bit_depth. */ -PNG_EXPORT(117, png_byte, png_get_bit_depth, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(117, png_byte, png_get_bit_depth, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); /* Returns image color_type. */ -PNG_EXPORT(118, png_byte, png_get_color_type, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(118, png_byte, png_get_color_type, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); /* Returns image filter_type. */ -PNG_EXPORT(119, png_byte, png_get_filter_type, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(119, png_byte, png_get_filter_type, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); /* Returns image interlace_type. */ -PNG_EXPORT(120, png_byte, png_get_interlace_type, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(120, png_byte, png_get_interlace_type, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); /* Returns image compression_type. */ -PNG_EXPORT(121, png_byte, png_get_compression_type, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(121, png_byte, png_get_compression_type, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); /* Returns image resolution in pixels per meter, from pHYs chunk data. */ PNG_EXPORT(122, png_uint_32, png_get_pixels_per_meter, - (png_const_structrp png_ptr, png_const_inforp info_ptr)); + (png_const_structrp png_ptr, png_const_inforp info_ptr)); PNG_EXPORT(123, png_uint_32, png_get_x_pixels_per_meter, - (png_const_structrp png_ptr, png_const_inforp info_ptr)); + (png_const_structrp png_ptr, png_const_inforp info_ptr)); PNG_EXPORT(124, png_uint_32, png_get_y_pixels_per_meter, - (png_const_structrp png_ptr, png_const_inforp info_ptr)); + (png_const_structrp png_ptr, png_const_inforp info_ptr)); /* Returns pixel aspect ratio, computed from pHYs chunk data. */ PNG_FP_EXPORT(125, float, png_get_pixel_aspect_ratio, - (png_const_structrp png_ptr, png_const_inforp info_ptr)) + (png_const_structrp png_ptr, png_const_inforp info_ptr)) PNG_FIXED_EXPORT(210, png_fixed_point, png_get_pixel_aspect_ratio_fixed, - (png_const_structrp png_ptr, png_const_inforp info_ptr)) + (png_const_structrp png_ptr, png_const_inforp info_ptr)) /* Returns image x, y offset in pixels or microns, from oFFs chunk data. */ PNG_EXPORT(126, png_int_32, png_get_x_offset_pixels, - (png_const_structrp png_ptr, png_const_inforp info_ptr)); + (png_const_structrp png_ptr, png_const_inforp info_ptr)); PNG_EXPORT(127, png_int_32, png_get_y_offset_pixels, - (png_const_structrp png_ptr, png_const_inforp info_ptr)); + (png_const_structrp png_ptr, png_const_inforp info_ptr)); PNG_EXPORT(128, png_int_32, png_get_x_offset_microns, - (png_const_structrp png_ptr, png_const_inforp info_ptr)); + (png_const_structrp png_ptr, png_const_inforp info_ptr)); PNG_EXPORT(129, png_int_32, png_get_y_offset_microns, - (png_const_structrp png_ptr, png_const_inforp info_ptr)); + (png_const_structrp png_ptr, png_const_inforp info_ptr)); #endif /* EASY_ACCESS */ #ifdef PNG_READ_SUPPORTED /* Returns pointer to signature string read from PNG header */ -PNG_EXPORT(130, png_const_bytep, png_get_signature, (png_const_structrp png_ptr, - png_const_inforp info_ptr)); +PNG_EXPORT(130, png_const_bytep, png_get_signature, + (png_const_structrp png_ptr, png_const_inforp info_ptr)); #endif #ifdef PNG_bKGD_SUPPORTED -PNG_EXPORT(131, png_uint_32, png_get_bKGD, (png_const_structrp png_ptr, - png_inforp info_ptr, png_color_16p *background)); +PNG_EXPORT(131, png_uint_32, png_get_bKGD, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_color_16p *background)); #endif #ifdef PNG_bKGD_SUPPORTED -PNG_EXPORT(132, void, png_set_bKGD, (png_const_structrp png_ptr, - png_inforp info_ptr, png_const_color_16p background)); +PNG_EXPORT(132, void, png_set_bKGD, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_const_color_16p background)); #endif #ifdef PNG_cHRM_SUPPORTED -PNG_FP_EXPORT(133, png_uint_32, png_get_cHRM, (png_const_structrp png_ptr, - png_const_inforp info_ptr, double *white_x, double *white_y, double *red_x, - double *red_y, double *green_x, double *green_y, double *blue_x, - double *blue_y)) -PNG_FP_EXPORT(230, png_uint_32, png_get_cHRM_XYZ, (png_const_structrp png_ptr, - png_const_inforp info_ptr, double *red_X, double *red_Y, double *red_Z, - double *green_X, double *green_Y, double *green_Z, double *blue_X, - double *blue_Y, double *blue_Z)) +PNG_FP_EXPORT(133, png_uint_32, png_get_cHRM, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + double *white_x, double *white_y, + double *red_x, double *red_y, + double *green_x, double *green_y, + double *blue_x, double *blue_y)) +PNG_FP_EXPORT(230, png_uint_32, png_get_cHRM_XYZ, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + double *red_X, double *red_Y, double *red_Z, + double *green_X, double *green_Y, double *green_Z, + double *blue_X, double *blue_Y, double *blue_Z)) PNG_FIXED_EXPORT(134, png_uint_32, png_get_cHRM_fixed, - (png_const_structrp png_ptr, png_const_inforp info_ptr, + (png_const_structrp png_ptr, png_const_inforp info_ptr, png_fixed_point *int_white_x, png_fixed_point *int_white_y, png_fixed_point *int_red_x, png_fixed_point *int_red_y, png_fixed_point *int_green_x, png_fixed_point *int_green_y, png_fixed_point *int_blue_x, png_fixed_point *int_blue_y)) PNG_FIXED_EXPORT(231, png_uint_32, png_get_cHRM_XYZ_fixed, - (png_const_structrp png_ptr, png_const_inforp info_ptr, + (png_const_structrp png_ptr, png_const_inforp info_ptr, png_fixed_point *int_red_X, png_fixed_point *int_red_Y, - png_fixed_point *int_red_Z, png_fixed_point *int_green_X, - png_fixed_point *int_green_Y, png_fixed_point *int_green_Z, + png_fixed_point *int_red_Z, + png_fixed_point *int_green_X, png_fixed_point *int_green_Y, + png_fixed_point *int_green_Z, png_fixed_point *int_blue_X, png_fixed_point *int_blue_Y, png_fixed_point *int_blue_Z)) #endif #ifdef PNG_cHRM_SUPPORTED -PNG_FP_EXPORT(135, void, png_set_cHRM, (png_const_structrp png_ptr, - png_inforp info_ptr, - double white_x, double white_y, double red_x, double red_y, double green_x, - double green_y, double blue_x, double blue_y)) -PNG_FP_EXPORT(232, void, png_set_cHRM_XYZ, (png_const_structrp png_ptr, - png_inforp info_ptr, double red_X, double red_Y, double red_Z, - double green_X, double green_Y, double green_Z, double blue_X, - double blue_Y, double blue_Z)) -PNG_FIXED_EXPORT(136, void, png_set_cHRM_fixed, (png_const_structrp png_ptr, - png_inforp info_ptr, png_fixed_point int_white_x, - png_fixed_point int_white_y, png_fixed_point int_red_x, - png_fixed_point int_red_y, png_fixed_point int_green_x, - png_fixed_point int_green_y, png_fixed_point int_blue_x, - png_fixed_point int_blue_y)) -PNG_FIXED_EXPORT(233, void, png_set_cHRM_XYZ_fixed, (png_const_structrp png_ptr, - png_inforp info_ptr, png_fixed_point int_red_X, png_fixed_point int_red_Y, - png_fixed_point int_red_Z, png_fixed_point int_green_X, - png_fixed_point int_green_Y, png_fixed_point int_green_Z, +PNG_FP_EXPORT(135, void, png_set_cHRM, + (png_const_structrp png_ptr, png_inforp info_ptr, + double white_x, double white_y, + double red_x, double red_y, + double green_x, double green_y, + double blue_x, double blue_y)) +PNG_FP_EXPORT(232, void, png_set_cHRM_XYZ, + (png_const_structrp png_ptr, png_inforp info_ptr, + double red_X, double red_Y, double red_Z, + double green_X, double green_Y, double green_Z, + double blue_X, double blue_Y, double blue_Z)) +PNG_FIXED_EXPORT(136, void, png_set_cHRM_fixed, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_fixed_point int_white_x, png_fixed_point int_white_y, + png_fixed_point int_red_x, png_fixed_point int_red_y, + png_fixed_point int_green_x, png_fixed_point int_green_y, + png_fixed_point int_blue_x, png_fixed_point int_blue_y)) +PNG_FIXED_EXPORT(233, void, png_set_cHRM_XYZ_fixed, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_fixed_point int_red_X, png_fixed_point int_red_Y, + png_fixed_point int_red_Z, + png_fixed_point int_green_X, png_fixed_point int_green_Y, + png_fixed_point int_green_Z, png_fixed_point int_blue_X, png_fixed_point int_blue_Y, png_fixed_point int_blue_Z)) #endif #ifdef PNG_cICP_SUPPORTED -PNG_EXPORT(250, png_uint_32, png_get_cICP, (png_const_structrp png_ptr, - png_const_inforp info_ptr, png_bytep colour_primaries, - png_bytep transfer_function, png_bytep matrix_coefficients, - png_bytep video_full_range_flag)); +PNG_EXPORT(250, png_uint_32, png_get_cICP, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + png_bytep colour_primaries, png_bytep transfer_function, + png_bytep matrix_coefficients, png_bytep video_full_range_flag)); #endif #ifdef PNG_cICP_SUPPORTED -PNG_EXPORT(251, void, png_set_cICP, (png_const_structrp png_ptr, - png_inforp info_ptr, png_byte colour_primaries, - png_byte transfer_function, png_byte matrix_coefficients, - png_byte video_full_range_flag)); +PNG_EXPORT(251, void, png_set_cICP, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_byte colour_primaries, png_byte transfer_function, + png_byte matrix_coefficients, png_byte video_full_range_flag)); #endif #ifdef PNG_cLLI_SUPPORTED -PNG_FP_EXPORT(252, png_uint_32, png_get_cLLI, (png_const_structrp png_ptr, - png_const_inforp info_ptr, double *maximum_content_light_level, - double *maximum_frame_average_light_level)) +PNG_FP_EXPORT(252, png_uint_32, png_get_cLLI, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + double *maximum_content_light_level, + double *maximum_frame_average_light_level)) PNG_FIXED_EXPORT(253, png_uint_32, png_get_cLLI_fixed, - (png_const_structrp png_ptr, png_const_inforp info_ptr, + (png_const_structrp png_ptr, png_const_inforp info_ptr, /* The values below are in cd/m2 (nits) and are scaled by 10,000; not * 100,000 as in the case of png_fixed_point. */ @@ -2035,11 +2133,12 @@ PNG_FIXED_EXPORT(253, png_uint_32, png_get_cLLI_fixed, #endif #ifdef PNG_cLLI_SUPPORTED -PNG_FP_EXPORT(254, void, png_set_cLLI, (png_const_structrp png_ptr, - png_inforp info_ptr, double maximum_content_light_level, - double maximum_frame_average_light_level)) -PNG_FIXED_EXPORT(255, void, png_set_cLLI_fixed, (png_const_structrp png_ptr, - png_inforp info_ptr, +PNG_FP_EXPORT(254, void, png_set_cLLI, + (png_const_structrp png_ptr, png_inforp info_ptr, + double maximum_content_light_level, + double maximum_frame_average_light_level)) +PNG_FIXED_EXPORT(255, void, png_set_cLLI_fixed, + (png_const_structrp png_ptr, png_inforp info_ptr, /* The values below are in cd/m2 (nits) and are scaled by 10,000; not * 100,000 as in the case of png_fixed_point. */ @@ -2048,64 +2147,73 @@ PNG_FIXED_EXPORT(255, void, png_set_cLLI_fixed, (png_const_structrp png_ptr, #endif #ifdef PNG_eXIf_SUPPORTED -PNG_EXPORT(246, png_uint_32, png_get_eXIf, (png_const_structrp png_ptr, - png_inforp info_ptr, png_bytep *exif)); -PNG_EXPORT(247, void, png_set_eXIf, (png_const_structrp png_ptr, - png_inforp info_ptr, png_bytep exif)); +PNG_EXPORT(246, png_uint_32, png_get_eXIf, + (png_const_structrp png_ptr, png_inforp info_ptr, png_bytep *exif)); +PNG_EXPORT(247, void, png_set_eXIf, + (png_const_structrp png_ptr, png_inforp info_ptr, png_bytep exif)); -PNG_EXPORT(248, png_uint_32, png_get_eXIf_1, (png_const_structrp png_ptr, - png_const_inforp info_ptr, png_uint_32 *num_exif, png_bytep *exif)); -PNG_EXPORT(249, void, png_set_eXIf_1, (png_const_structrp png_ptr, - png_inforp info_ptr, png_uint_32 num_exif, png_bytep exif)); +PNG_EXPORT(248, png_uint_32, png_get_eXIf_1, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + png_uint_32 *num_exif, png_bytep *exif)); +PNG_EXPORT(249, void, png_set_eXIf_1, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_uint_32 num_exif, png_bytep exif)); #endif #ifdef PNG_gAMA_SUPPORTED -PNG_FP_EXPORT(137, png_uint_32, png_get_gAMA, (png_const_structrp png_ptr, - png_const_inforp info_ptr, double *file_gamma)) +PNG_FP_EXPORT(137, png_uint_32, png_get_gAMA, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + double *file_gamma)) PNG_FIXED_EXPORT(138, png_uint_32, png_get_gAMA_fixed, - (png_const_structrp png_ptr, png_const_inforp info_ptr, + (png_const_structrp png_ptr, png_const_inforp info_ptr, png_fixed_point *int_file_gamma)) #endif #ifdef PNG_gAMA_SUPPORTED -PNG_FP_EXPORT(139, void, png_set_gAMA, (png_const_structrp png_ptr, - png_inforp info_ptr, double file_gamma)) -PNG_FIXED_EXPORT(140, void, png_set_gAMA_fixed, (png_const_structrp png_ptr, - png_inforp info_ptr, png_fixed_point int_file_gamma)) +PNG_FP_EXPORT(139, void, png_set_gAMA, + (png_const_structrp png_ptr, png_inforp info_ptr, + double file_gamma)) +PNG_FIXED_EXPORT(140, void, png_set_gAMA_fixed, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_fixed_point int_file_gamma)) #endif #ifdef PNG_hIST_SUPPORTED -PNG_EXPORT(141, png_uint_32, png_get_hIST, (png_const_structrp png_ptr, - png_inforp info_ptr, png_uint_16p *hist)); -PNG_EXPORT(142, void, png_set_hIST, (png_const_structrp png_ptr, - png_inforp info_ptr, png_const_uint_16p hist)); +PNG_EXPORT(141, png_uint_32, png_get_hIST, + (png_const_structrp png_ptr, png_inforp info_ptr, png_uint_16p *hist)); +PNG_EXPORT(142, void, png_set_hIST, + (png_const_structrp png_ptr, png_inforp info_ptr, png_const_uint_16p hist)); #endif -PNG_EXPORT(143, png_uint_32, png_get_IHDR, (png_const_structrp png_ptr, - png_const_inforp info_ptr, png_uint_32 *width, png_uint_32 *height, - int *bit_depth, int *color_type, int *interlace_method, - int *compression_method, int *filter_method)); +PNG_EXPORT(143, png_uint_32, png_get_IHDR, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + png_uint_32 *width, png_uint_32 *height, + int *bit_depth, int *color_type, + int *interlace_method, int *compression_method, int *filter_method)); -PNG_EXPORT(144, void, png_set_IHDR, (png_const_structrp png_ptr, - png_inforp info_ptr, png_uint_32 width, png_uint_32 height, int bit_depth, - int color_type, int interlace_method, int compression_method, - int filter_method)); +PNG_EXPORT(144, void, png_set_IHDR, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_uint_32 width, png_uint_32 height, + int bit_depth, int color_type, + int interlace_method, int compression_method, int filter_method)); #ifdef PNG_mDCV_SUPPORTED -PNG_FP_EXPORT(256, png_uint_32, png_get_mDCV, (png_const_structrp png_ptr, - png_const_inforp info_ptr, +PNG_FP_EXPORT(256, png_uint_32, png_get_mDCV, + (png_const_structrp png_ptr, png_const_inforp info_ptr, /* The chromaticities of the mastering display. As cHRM, but independent of * the encoding endpoints in cHRM, or cICP, or iCCP. These values will * always be in the range 0 to 1.3107. */ - double *white_x, double *white_y, double *red_x, double *red_y, - double *green_x, double *green_y, double *blue_x, double *blue_y, + double *white_x, double *white_y, + double *red_x, double *red_y, + double *green_x, double *green_y, + double *blue_x, double *blue_y, /* Mastering display luminance in cd/m2 (nits). */ double *mastering_display_maximum_luminance, double *mastering_display_minimum_luminance)) PNG_FIXED_EXPORT(257, png_uint_32, png_get_mDCV_fixed, - (png_const_structrp png_ptr, png_const_inforp info_ptr, + (png_const_structrp png_ptr, png_const_inforp info_ptr, png_fixed_point *int_white_x, png_fixed_point *int_white_y, png_fixed_point *int_red_x, png_fixed_point *int_red_y, png_fixed_point *int_green_x, png_fixed_point *int_green_y, @@ -2118,19 +2226,21 @@ PNG_FIXED_EXPORT(257, png_uint_32, png_get_mDCV_fixed, #endif #ifdef PNG_mDCV_SUPPORTED -PNG_FP_EXPORT(258, void, png_set_mDCV, (png_const_structrp png_ptr, - png_inforp info_ptr, +PNG_FP_EXPORT(258, void, png_set_mDCV, + (png_const_structrp png_ptr, png_inforp info_ptr, /* The chromaticities of the mastering display. As cHRM, but independent of * the encoding endpoints in cHRM, or cICP, or iCCP. */ - double white_x, double white_y, double red_x, double red_y, double green_x, - double green_y, double blue_x, double blue_y, + double white_x, double white_y, + double red_x, double red_y, + double green_x, double green_y, + double blue_x, double blue_y, /* Mastering display luminance in cd/m2 (nits). */ double mastering_display_maximum_luminance, double mastering_display_minimum_luminance)) -PNG_FIXED_EXPORT(259, void, png_set_mDCV_fixed, (png_const_structrp png_ptr, - png_inforp info_ptr, +PNG_FIXED_EXPORT(259, void, png_set_mDCV_fixed, + (png_const_structrp png_ptr, png_inforp info_ptr, /* The admissible range of these values is not the full range of a PNG * fixed point value. Negative values cannot be encoded and the maximum * value is about 1.3 */ @@ -2146,95 +2256,107 @@ PNG_FIXED_EXPORT(259, void, png_set_mDCV_fixed, (png_const_structrp png_ptr, #endif #ifdef PNG_oFFs_SUPPORTED -PNG_EXPORT(145, png_uint_32, png_get_oFFs, (png_const_structrp png_ptr, - png_const_inforp info_ptr, png_int_32 *offset_x, png_int_32 *offset_y, - int *unit_type)); +PNG_EXPORT(145, png_uint_32, png_get_oFFs, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + png_int_32 *offset_x, png_int_32 *offset_y, int *unit_type)); #endif #ifdef PNG_oFFs_SUPPORTED -PNG_EXPORT(146, void, png_set_oFFs, (png_const_structrp png_ptr, - png_inforp info_ptr, png_int_32 offset_x, png_int_32 offset_y, - int unit_type)); +PNG_EXPORT(146, void, png_set_oFFs, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_int_32 offset_x, png_int_32 offset_y, int unit_type)); #endif #ifdef PNG_pCAL_SUPPORTED -PNG_EXPORT(147, png_uint_32, png_get_pCAL, (png_const_structrp png_ptr, - png_inforp info_ptr, png_charp *purpose, png_int_32 *X0, - png_int_32 *X1, int *type, int *nparams, png_charp *units, - png_charpp *params)); +PNG_EXPORT(147, png_uint_32, png_get_pCAL, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_charp *purpose, png_int_32 *X0, png_int_32 *X1, + int *type, int *nparams, png_charp *units, png_charpp *params)); #endif #ifdef PNG_pCAL_SUPPORTED -PNG_EXPORT(148, void, png_set_pCAL, (png_const_structrp png_ptr, - png_inforp info_ptr, png_const_charp purpose, png_int_32 X0, png_int_32 X1, +PNG_EXPORT(148, void, png_set_pCAL, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_const_charp purpose, png_int_32 X0, png_int_32 X1, int type, int nparams, png_const_charp units, png_charpp params)); #endif #ifdef PNG_pHYs_SUPPORTED -PNG_EXPORT(149, png_uint_32, png_get_pHYs, (png_const_structrp png_ptr, - png_const_inforp info_ptr, png_uint_32 *res_x, png_uint_32 *res_y, - int *unit_type)); +PNG_EXPORT(149, png_uint_32, png_get_pHYs, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + png_uint_32 *res_x, png_uint_32 *res_y, int *unit_type)); #endif #ifdef PNG_pHYs_SUPPORTED -PNG_EXPORT(150, void, png_set_pHYs, (png_const_structrp png_ptr, - png_inforp info_ptr, png_uint_32 res_x, png_uint_32 res_y, int unit_type)); +PNG_EXPORT(150, void, png_set_pHYs, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_uint_32 res_x, png_uint_32 res_y, int unit_type)); #endif -PNG_EXPORT(151, png_uint_32, png_get_PLTE, (png_const_structrp png_ptr, - png_inforp info_ptr, png_colorp *palette, int *num_palette)); +PNG_EXPORT(151, png_uint_32, png_get_PLTE, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_colorp *palette, int *num_palette)); -PNG_EXPORT(152, void, png_set_PLTE, (png_structrp png_ptr, - png_inforp info_ptr, png_const_colorp palette, int num_palette)); +PNG_EXPORT(152, void, png_set_PLTE, + (png_structrp png_ptr, png_inforp info_ptr, + png_const_colorp palette, int num_palette)); #ifdef PNG_sBIT_SUPPORTED -PNG_EXPORT(153, png_uint_32, png_get_sBIT, (png_const_structrp png_ptr, - png_inforp info_ptr, png_color_8p *sig_bit)); +PNG_EXPORT(153, png_uint_32, png_get_sBIT, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_color_8p *sig_bit)); #endif #ifdef PNG_sBIT_SUPPORTED -PNG_EXPORT(154, void, png_set_sBIT, (png_const_structrp png_ptr, - png_inforp info_ptr, png_const_color_8p sig_bit)); +PNG_EXPORT(154, void, png_set_sBIT, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_const_color_8p sig_bit)); #endif #ifdef PNG_sRGB_SUPPORTED -PNG_EXPORT(155, png_uint_32, png_get_sRGB, (png_const_structrp png_ptr, - png_const_inforp info_ptr, int *file_srgb_intent)); +PNG_EXPORT(155, png_uint_32, png_get_sRGB, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + int *file_srgb_intent)); #endif #ifdef PNG_sRGB_SUPPORTED -PNG_EXPORT(156, void, png_set_sRGB, (png_const_structrp png_ptr, - png_inforp info_ptr, int srgb_intent)); -PNG_EXPORT(157, void, png_set_sRGB_gAMA_and_cHRM, (png_const_structrp png_ptr, - png_inforp info_ptr, int srgb_intent)); +PNG_EXPORT(156, void, png_set_sRGB, + (png_const_structrp png_ptr, png_inforp info_ptr, int srgb_intent)); +PNG_EXPORT(157, void, png_set_sRGB_gAMA_and_cHRM, + (png_const_structrp png_ptr, png_inforp info_ptr, int srgb_intent)); #endif #ifdef PNG_iCCP_SUPPORTED -PNG_EXPORT(158, png_uint_32, png_get_iCCP, (png_const_structrp png_ptr, - png_inforp info_ptr, png_charpp name, int *compression_type, +PNG_EXPORT(158, png_uint_32, png_get_iCCP, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_charpp name, int *compression_type, png_bytepp profile, png_uint_32 *proflen)); #endif #ifdef PNG_iCCP_SUPPORTED -PNG_EXPORT(159, void, png_set_iCCP, (png_const_structrp png_ptr, - png_inforp info_ptr, png_const_charp name, int compression_type, +PNG_EXPORT(159, void, png_set_iCCP, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_const_charp name, int compression_type, png_const_bytep profile, png_uint_32 proflen)); #endif #ifdef PNG_sPLT_SUPPORTED -PNG_EXPORT(160, int, png_get_sPLT, (png_const_structrp png_ptr, - png_inforp info_ptr, png_sPLT_tpp entries)); +PNG_EXPORT(160, int, png_get_sPLT, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_sPLT_tpp entries)); #endif #ifdef PNG_sPLT_SUPPORTED -PNG_EXPORT(161, void, png_set_sPLT, (png_const_structrp png_ptr, - png_inforp info_ptr, png_const_sPLT_tp entries, int nentries)); +PNG_EXPORT(161, void, png_set_sPLT, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_const_sPLT_tp entries, int nentries)); #endif #ifdef PNG_TEXT_SUPPORTED /* png_get_text also returns the number of text chunks in *num_text */ -PNG_EXPORT(162, int, png_get_text, (png_const_structrp png_ptr, - png_inforp info_ptr, png_textp *text_ptr, int *num_text)); +PNG_EXPORT(162, int, png_get_text, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_textp *text_ptr, int *num_text)); #endif /* Note while png_set_text() will accept a structure whose text, @@ -2245,35 +2367,41 @@ PNG_EXPORT(162, int, png_get_text, (png_const_structrp png_ptr, */ #ifdef PNG_TEXT_SUPPORTED -PNG_EXPORT(163, void, png_set_text, (png_const_structrp png_ptr, - png_inforp info_ptr, png_const_textp text_ptr, int num_text)); +PNG_EXPORT(163, void, png_set_text, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_const_textp text_ptr, int num_text)); #endif #ifdef PNG_tIME_SUPPORTED -PNG_EXPORT(164, png_uint_32, png_get_tIME, (png_const_structrp png_ptr, - png_inforp info_ptr, png_timep *mod_time)); +PNG_EXPORT(164, png_uint_32, png_get_tIME, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_timep *mod_time)); #endif #ifdef PNG_tIME_SUPPORTED -PNG_EXPORT(165, void, png_set_tIME, (png_const_structrp png_ptr, - png_inforp info_ptr, png_const_timep mod_time)); +PNG_EXPORT(165, void, png_set_tIME, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_const_timep mod_time)); #endif #ifdef PNG_tRNS_SUPPORTED -PNG_EXPORT(166, png_uint_32, png_get_tRNS, (png_const_structrp png_ptr, - png_inforp info_ptr, png_bytep *trans_alpha, int *num_trans, +PNG_EXPORT(166, png_uint_32, png_get_tRNS, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_bytep *trans_alpha, int *num_trans, png_color_16p *trans_color)); #endif #ifdef PNG_tRNS_SUPPORTED -PNG_EXPORT(167, void, png_set_tRNS, (png_structrp png_ptr, - png_inforp info_ptr, png_const_bytep trans_alpha, int num_trans, +PNG_EXPORT(167, void, png_set_tRNS, + (png_structrp png_ptr, png_inforp info_ptr, + png_const_bytep trans_alpha, int num_trans, png_const_color_16p trans_color)); #endif #ifdef PNG_sCAL_SUPPORTED -PNG_FP_EXPORT(168, png_uint_32, png_get_sCAL, (png_const_structrp png_ptr, - png_const_inforp info_ptr, int *unit, double *width, double *height)) +PNG_FP_EXPORT(168, png_uint_32, png_get_sCAL, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + int *unit, double *width, double *height)) #if defined(PNG_FLOATING_ARITHMETIC_SUPPORTED) || \ defined(PNG_FLOATING_POINT_SUPPORTED) /* NOTE: this API is currently implemented using floating point arithmetic, @@ -2282,21 +2410,22 @@ PNG_FP_EXPORT(168, png_uint_32, png_get_sCAL, (png_const_structrp png_ptr, * is highly recommended that png_get_sCAL_s be used instead. */ PNG_FIXED_EXPORT(214, png_uint_32, png_get_sCAL_fixed, - (png_const_structrp png_ptr, png_const_inforp info_ptr, int *unit, - png_fixed_point *width, png_fixed_point *height)) + (png_const_structrp png_ptr, png_const_inforp info_ptr, + int *unit, png_fixed_point *width, png_fixed_point *height)) #endif PNG_EXPORT(169, png_uint_32, png_get_sCAL_s, - (png_const_structrp png_ptr, png_const_inforp info_ptr, int *unit, - png_charpp swidth, png_charpp sheight)); + (png_const_structrp png_ptr, png_const_inforp info_ptr, + int *unit, png_charpp swidth, png_charpp sheight)); -PNG_FP_EXPORT(170, void, png_set_sCAL, (png_const_structrp png_ptr, - png_inforp info_ptr, int unit, double width, double height)) -PNG_FIXED_EXPORT(213, void, png_set_sCAL_fixed, (png_const_structrp png_ptr, - png_inforp info_ptr, int unit, png_fixed_point width, - png_fixed_point height)) -PNG_EXPORT(171, void, png_set_sCAL_s, (png_const_structrp png_ptr, - png_inforp info_ptr, int unit, - png_const_charp swidth, png_const_charp sheight)); +PNG_FP_EXPORT(170, void, png_set_sCAL, + (png_const_structrp png_ptr, png_inforp info_ptr, + int unit, double width, double height)) +PNG_FIXED_EXPORT(213, void, png_set_sCAL_fixed, + (png_const_structrp png_ptr, png_inforp info_ptr, + int unit, png_fixed_point width, png_fixed_point height)) +PNG_EXPORT(171, void, png_set_sCAL_s, + (png_const_structrp png_ptr, png_inforp info_ptr, + int unit, png_const_charp swidth, png_const_charp sheight)); #endif /* sCAL */ #ifdef PNG_SET_UNKNOWN_CHUNKS_SUPPORTED @@ -2399,7 +2528,8 @@ PNG_EXPORT(171, void, png_set_sCAL_s, (png_const_structrp png_ptr, * be processed by libpng. */ #ifdef PNG_HANDLE_AS_UNKNOWN_SUPPORTED -PNG_EXPORT(172, void, png_set_keep_unknown_chunks, (png_structrp png_ptr, +PNG_EXPORT(172, void, png_set_keep_unknown_chunks, + (png_structrp png_ptr, int keep, png_const_bytep chunk_list, int num_chunks)); #endif /* HANDLE_AS_UNKNOWN */ @@ -2407,14 +2537,14 @@ PNG_EXPORT(172, void, png_set_keep_unknown_chunks, (png_structrp png_ptr, * the result is therefore true (non-zero) if special handling is required, * false for the default handling. */ -PNG_EXPORT(173, int, png_handle_as_unknown, (png_const_structrp png_ptr, - png_const_bytep chunk_name)); +PNG_EXPORT(173, int, png_handle_as_unknown, + (png_const_structrp png_ptr, png_const_bytep chunk_name)); #endif /* SET_UNKNOWN_CHUNKS */ #ifdef PNG_STORE_UNKNOWN_CHUNKS_SUPPORTED -PNG_EXPORT(174, void, png_set_unknown_chunks, (png_const_structrp png_ptr, - png_inforp info_ptr, png_const_unknown_chunkp unknowns, - int num_unknowns)); +PNG_EXPORT(174, void, png_set_unknown_chunks, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_const_unknown_chunkp unknowns, int num_unknowns)); /* NOTE: prior to 1.6.0 this routine set the 'location' field of the added * unknowns to the location currently stored in the png_struct. This is * invariably the wrong value on write. To fix this call the following API @@ -2425,43 +2555,47 @@ PNG_EXPORT(174, void, png_set_unknown_chunks, (png_const_structrp png_ptr, */ PNG_EXPORT(175, void, png_set_unknown_chunk_location, - (png_const_structrp png_ptr, png_inforp info_ptr, int chunk, int location)); + (png_const_structrp png_ptr, png_inforp info_ptr, + int chunk, int location)); -PNG_EXPORT(176, int, png_get_unknown_chunks, (png_const_structrp png_ptr, - png_inforp info_ptr, png_unknown_chunkpp entries)); +PNG_EXPORT(176, int, png_get_unknown_chunks, + (png_const_structrp png_ptr, png_inforp info_ptr, + png_unknown_chunkpp entries)); #endif /* Png_free_data() will turn off the "valid" flag for anything it frees. * If you need to turn it off for a chunk that your application has freed, * you can use png_set_invalid(png_ptr, info_ptr, PNG_INFO_CHNK); */ -PNG_EXPORT(177, void, png_set_invalid, (png_const_structrp png_ptr, - png_inforp info_ptr, int mask)); +PNG_EXPORT(177, void, png_set_invalid, + (png_const_structrp png_ptr, png_inforp info_ptr, int mask)); #ifdef PNG_INFO_IMAGE_SUPPORTED /* The "params" pointer is currently not used and is for future expansion. */ #ifdef PNG_SEQUENTIAL_READ_SUPPORTED -PNG_EXPORT(178, void, png_read_png, (png_structrp png_ptr, png_inforp info_ptr, +PNG_EXPORT(178, void, png_read_png, + (png_structrp png_ptr, png_inforp info_ptr, int transforms, png_voidp params)); #endif #ifdef PNG_WRITE_SUPPORTED -PNG_EXPORT(179, void, png_write_png, (png_structrp png_ptr, png_inforp info_ptr, +PNG_EXPORT(179, void, png_write_png, + (png_structrp png_ptr, png_inforp info_ptr, int transforms, png_voidp params)); #endif #endif PNG_EXPORT(180, png_const_charp, png_get_copyright, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); PNG_EXPORT(181, png_const_charp, png_get_header_ver, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); PNG_EXPORT(182, png_const_charp, png_get_header_version, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); PNG_EXPORT(183, png_const_charp, png_get_libpng_ver, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); #ifdef PNG_MNG_FEATURES_SUPPORTED -PNG_EXPORT(184, png_uint_32, png_permit_mng_features, (png_structrp png_ptr, - png_uint_32 mng_features_permitted)); +PNG_EXPORT(184, png_uint_32, png_permit_mng_features, + (png_structrp png_ptr, png_uint_32 mng_features_permitted)); #endif /* For use in png_set_keep_unknown, added to version 1.2.6 */ @@ -2475,71 +2609,74 @@ PNG_EXPORT(184, png_uint_32, png_permit_mng_features, (png_structrp png_ptr, * messages before passing them to the error or warning handler. */ #ifdef PNG_ERROR_NUMBERS_SUPPORTED -PNG_EXPORT(185, void, png_set_strip_error_numbers, (png_structrp png_ptr, - png_uint_32 strip_mode)); +PNG_EXPORT(185, void, png_set_strip_error_numbers, + (png_structrp png_ptr, png_uint_32 strip_mode)); #endif /* Added in libpng-1.2.6 */ #ifdef PNG_SET_USER_LIMITS_SUPPORTED -PNG_EXPORT(186, void, png_set_user_limits, (png_structrp png_ptr, +PNG_EXPORT(186, void, png_set_user_limits, + (png_structrp png_ptr, png_uint_32 user_width_max, png_uint_32 user_height_max)); PNG_EXPORT(187, png_uint_32, png_get_user_width_max, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); PNG_EXPORT(188, png_uint_32, png_get_user_height_max, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); /* Added in libpng-1.4.0 */ -PNG_EXPORT(189, void, png_set_chunk_cache_max, (png_structrp png_ptr, - png_uint_32 user_chunk_cache_max)); +PNG_EXPORT(189, void, png_set_chunk_cache_max, + (png_structrp png_ptr, png_uint_32 user_chunk_cache_max)); PNG_EXPORT(190, png_uint_32, png_get_chunk_cache_max, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); /* Added in libpng-1.4.1 */ -PNG_EXPORT(191, void, png_set_chunk_malloc_max, (png_structrp png_ptr, - png_alloc_size_t user_chunk_cache_max)); +PNG_EXPORT(191, void, png_set_chunk_malloc_max, + (png_structrp png_ptr, png_alloc_size_t user_chunk_cache_max)); PNG_EXPORT(192, png_alloc_size_t, png_get_chunk_malloc_max, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); #endif #if defined(PNG_INCH_CONVERSIONS_SUPPORTED) PNG_EXPORT(193, png_uint_32, png_get_pixels_per_inch, - (png_const_structrp png_ptr, png_const_inforp info_ptr)); + (png_const_structrp png_ptr, png_const_inforp info_ptr)); PNG_EXPORT(194, png_uint_32, png_get_x_pixels_per_inch, - (png_const_structrp png_ptr, png_const_inforp info_ptr)); + (png_const_structrp png_ptr, png_const_inforp info_ptr)); PNG_EXPORT(195, png_uint_32, png_get_y_pixels_per_inch, - (png_const_structrp png_ptr, png_const_inforp info_ptr)); + (png_const_structrp png_ptr, png_const_inforp info_ptr)); PNG_FP_EXPORT(196, float, png_get_x_offset_inches, - (png_const_structrp png_ptr, png_const_inforp info_ptr)) + (png_const_structrp png_ptr, png_const_inforp info_ptr)) #ifdef PNG_FIXED_POINT_SUPPORTED /* otherwise not implemented. */ PNG_FIXED_EXPORT(211, png_fixed_point, png_get_x_offset_inches_fixed, - (png_const_structrp png_ptr, png_const_inforp info_ptr)) + (png_const_structrp png_ptr, png_const_inforp info_ptr)) #endif -PNG_FP_EXPORT(197, float, png_get_y_offset_inches, (png_const_structrp png_ptr, - png_const_inforp info_ptr)) +PNG_FP_EXPORT(197, float, png_get_y_offset_inches, + (png_const_structrp png_ptr, png_const_inforp info_ptr)) #ifdef PNG_FIXED_POINT_SUPPORTED /* otherwise not implemented. */ PNG_FIXED_EXPORT(212, png_fixed_point, png_get_y_offset_inches_fixed, - (png_const_structrp png_ptr, png_const_inforp info_ptr)) + (png_const_structrp png_ptr, png_const_inforp info_ptr)) #endif # ifdef PNG_pHYs_SUPPORTED -PNG_EXPORT(198, png_uint_32, png_get_pHYs_dpi, (png_const_structrp png_ptr, - png_const_inforp info_ptr, png_uint_32 *res_x, png_uint_32 *res_y, - int *unit_type)); +PNG_EXPORT(198, png_uint_32, png_get_pHYs_dpi, + (png_const_structrp png_ptr, png_const_inforp info_ptr, + png_uint_32 *res_x, png_uint_32 *res_y, int *unit_type)); # endif /* pHYs */ #endif /* INCH_CONVERSIONS */ /* Added in libpng-1.4.0 */ #ifdef PNG_IO_STATE_SUPPORTED -PNG_EXPORT(199, png_uint_32, png_get_io_state, (png_const_structrp png_ptr)); +PNG_EXPORT(199, png_uint_32, png_get_io_state, + (png_const_structrp png_ptr)); /* Removed from libpng 1.6; use png_get_io_chunk_type. */ -PNG_REMOVED(200, png_const_bytep, png_get_io_chunk_name, (png_structrp png_ptr), - PNG_DEPRECATED) +PNG_REMOVED(200, png_const_bytep, png_get_io_chunk_name, + (png_structrp png_ptr), + PNG_DEPRECATED) PNG_EXPORT(216, png_uint_32, png_get_io_chunk_type, - (png_const_structrp png_ptr)); + (png_const_structrp png_ptr)); /* The flags returned by png_get_io_state() are the following: */ # define PNG_IO_NONE 0x0000 /* no I/O at this moment */ @@ -2664,21 +2801,26 @@ PNG_EXPORT(216, png_uint_32, png_get_io_chunk_type, #endif /* READ_COMPOSITE_NODIV */ #ifdef PNG_READ_INT_FUNCTIONS_SUPPORTED -PNG_EXPORT(201, png_uint_32, png_get_uint_32, (png_const_bytep buf)); -PNG_EXPORT(202, png_uint_16, png_get_uint_16, (png_const_bytep buf)); -PNG_EXPORT(203, png_int_32, png_get_int_32, (png_const_bytep buf)); +PNG_EXPORT(201, png_uint_32, png_get_uint_32, + (png_const_bytep buf)); +PNG_EXPORT(202, png_uint_16, png_get_uint_16, + (png_const_bytep buf)); +PNG_EXPORT(203, png_int_32, png_get_int_32, + (png_const_bytep buf)); #endif -PNG_EXPORT(204, png_uint_32, png_get_uint_31, (png_const_structrp png_ptr, - png_const_bytep buf)); +PNG_EXPORT(204, png_uint_32, png_get_uint_31, + (png_const_structrp png_ptr, png_const_bytep buf)); /* No png_get_int_16 -- may be added if there's a real need for it. */ /* Place a 32-bit number into a buffer in PNG byte order (big-endian). */ #ifdef PNG_WRITE_INT_FUNCTIONS_SUPPORTED -PNG_EXPORT(205, void, png_save_uint_32, (png_bytep buf, png_uint_32 i)); +PNG_EXPORT(205, void, png_save_uint_32, + (png_bytep buf, png_uint_32 i)); #endif #ifdef PNG_SAVE_INT_32_SUPPORTED -PNG_EXPORT(206, void, png_save_int_32, (png_bytep buf, png_int_32 i)); +PNG_EXPORT(206, void, png_save_int_32, + (png_bytep buf, png_int_32 i)); #endif /* Place a 16-bit number into a buffer in PNG byte order. @@ -2686,7 +2828,8 @@ PNG_EXPORT(206, void, png_save_int_32, (png_bytep buf, png_int_32 i)); * just to avoid potential problems on pre-ANSI C compilers. */ #ifdef PNG_WRITE_INT_FUNCTIONS_SUPPORTED -PNG_EXPORT(207, void, png_save_uint_16, (png_bytep buf, unsigned int i)); +PNG_EXPORT(207, void, png_save_uint_16, + (png_bytep buf, unsigned int i)); /* No png_save_int_16 -- may be added if there's a real need for it. */ #endif @@ -2733,10 +2876,10 @@ PNG_EXPORT(207, void, png_save_uint_16, (png_bytep buf, unsigned int i)); #ifdef PNG_CHECK_FOR_INVALID_INDEX_SUPPORTED PNG_EXPORT(242, void, png_set_check_for_invalid_index, - (png_structrp png_ptr, int allowed)); + (png_structrp png_ptr, int allowed)); # ifdef PNG_GET_PALETTE_MAX_SUPPORTED -PNG_EXPORT(243, int, png_get_palette_max, (png_const_structp png_ptr, - png_const_infop info_ptr)); +PNG_EXPORT(243, int, png_get_palette_max, + (png_const_structp png_ptr, png_const_infop info_ptr)); # endif #endif /* CHECK_FOR_INVALID_INDEX */ @@ -3100,24 +3243,25 @@ typedef struct * the png_controlp field 'opaque' to NULL (or, safer, memset the whole thing.) */ #ifdef PNG_STDIO_SUPPORTED -PNG_EXPORT(234, int, png_image_begin_read_from_file, (png_imagep image, - const char *file_name)); +PNG_EXPORT(234, int, png_image_begin_read_from_file, + (png_imagep image, const char *file_name)); /* The named file is opened for read and the image header is filled in * from the PNG header in the file. */ -PNG_EXPORT(235, int, png_image_begin_read_from_stdio, (png_imagep image, - FILE* file)); +PNG_EXPORT(235, int, png_image_begin_read_from_stdio, + (png_imagep image, FILE *file)); /* The PNG header is read from the stdio FILE object. */ #endif /* STDIO */ -PNG_EXPORT(236, int, png_image_begin_read_from_memory, (png_imagep image, - png_const_voidp memory, size_t size)); +PNG_EXPORT(236, int, png_image_begin_read_from_memory, + (png_imagep image, png_const_voidp memory, size_t size)); /* The PNG header is read from the given memory buffer. */ -PNG_EXPORT(237, int, png_image_finish_read, (png_imagep image, - png_const_colorp background, void *buffer, png_int_32 row_stride, - void *colormap)); +PNG_EXPORT(237, int, png_image_finish_read, + (png_imagep image, + png_const_colorp background, void *buffer, png_int_32 row_stride, + void *colormap)); /* Finish reading the image into the supplied buffer and clean up the * png_image structure. * @@ -3150,7 +3294,8 @@ PNG_EXPORT(237, int, png_image_finish_read, (png_imagep image, * written to the colormap; this may be less than the original value. */ -PNG_EXPORT(238, void, png_image_free, (png_imagep image)); +PNG_EXPORT(238, void, png_image_free, + (png_imagep image)); /* Free any data allocated by libpng in image->opaque, setting the pointer to * NULL. May be called at any time after the structure is initialized. */ @@ -3174,15 +3319,17 @@ PNG_EXPORT(238, void, png_image_free, (png_imagep image)); * colormap_entries: set to the number of entries in the color-map (0 to 256) */ #ifdef PNG_SIMPLIFIED_WRITE_STDIO_SUPPORTED -PNG_EXPORT(239, int, png_image_write_to_file, (png_imagep image, - const char *file, int convert_to_8bit, const void *buffer, - png_int_32 row_stride, const void *colormap)); +PNG_EXPORT(239, int, png_image_write_to_file, + (png_imagep image, + const char *file, int convert_to_8bit, const void *buffer, + png_int_32 row_stride, const void *colormap)); /* Write the image to the named file. */ -PNG_EXPORT(240, int, png_image_write_to_stdio, (png_imagep image, FILE *file, - int convert_to_8_bit, const void *buffer, png_int_32 row_stride, - const void *colormap)); - /* Write the image to the given (FILE*). */ +PNG_EXPORT(240, int, png_image_write_to_stdio, + (png_imagep image, + FILE *file, int convert_to_8_bit, const void *buffer, + png_int_32 row_stride, const void *colormap)); + /* Write the image to the given FILE object. */ #endif /* SIMPLIFIED_WRITE_STDIO */ /* With all write APIs if image is in one of the linear formats with 16-bit @@ -3206,9 +3353,11 @@ PNG_EXPORT(240, int, png_image_write_to_stdio, (png_imagep image, FILE *file, * notices) you need to use one of the other APIs. */ -PNG_EXPORT(245, int, png_image_write_to_memory, (png_imagep image, void *memory, - png_alloc_size_t * PNG_RESTRICT memory_bytes, int convert_to_8_bit, - const void *buffer, png_int_32 row_stride, const void *colormap)); +PNG_EXPORT(245, int, png_image_write_to_memory, + (png_imagep image, + void *memory, png_alloc_size_t * PNG_RESTRICT memory_bytes, + int convert_to_8_bit, + const void *buffer, png_int_32 row_stride, const void *colormap)); /* Write the image to the given memory buffer. The function both writes the * whole PNG data stream to *memory and updates *memory_bytes with the count * of bytes written. @@ -3322,26 +3471,45 @@ PNG_EXPORT(245, int, png_image_write_to_memory, (png_imagep image, void *memory, * selected at run time. */ #ifdef PNG_SET_OPTION_SUPPORTED + +/* HARDWARE: ARM Neon SIMD instructions supported */ #ifdef PNG_ARM_NEON_API_SUPPORTED -# define PNG_ARM_NEON 0 /* HARDWARE: ARM Neon SIMD instructions supported */ -#endif -#define PNG_MAXIMUM_INFLATE_WINDOW 2 /* SOFTWARE: force maximum window */ -#define PNG_SKIP_sRGB_CHECK_PROFILE 4 /* SOFTWARE: Check ICC profile for sRGB */ -#ifdef PNG_MIPS_MSA_API_SUPPORTED -# define PNG_MIPS_MSA 6 /* HARDWARE: MIPS Msa SIMD instructions supported */ -#endif -#ifdef PNG_DISABLE_ADLER32_CHECK_SUPPORTED -# define PNG_IGNORE_ADLER32 8 /* SOFTWARE: disable Adler32 check on IDAT */ -#endif -#ifdef PNG_POWERPC_VSX_API_SUPPORTED -# define PNG_POWERPC_VSX 10 /* HARDWARE: PowerPC VSX SIMD instructions - * supported */ -#endif -#ifdef PNG_MIPS_MMI_API_SUPPORTED -# define PNG_MIPS_MMI 12 /* HARDWARE: MIPS MMI SIMD instructions supported */ +# define PNG_ARM_NEON 0 #endif -#define PNG_OPTION_NEXT 14 /* Next option - numbers must be even */ +/* SOFTWARE: Force maximum window */ +#define PNG_MAXIMUM_INFLATE_WINDOW 2 + +/* SOFTWARE: Check ICC profile for sRGB */ +#define PNG_SKIP_sRGB_CHECK_PROFILE 4 + +/* HARDWARE: MIPS MSA SIMD instructions supported */ +#ifdef PNG_MIPS_MSA_API_SUPPORTED +# define PNG_MIPS_MSA 6 +#endif + +/* SOFTWARE: Disable Adler32 check on IDAT */ +#ifdef PNG_DISABLE_ADLER32_CHECK_SUPPORTED +# define PNG_IGNORE_ADLER32 8 +#endif + +/* HARDWARE: PowerPC VSX SIMD instructions supported */ +#ifdef PNG_POWERPC_VSX_API_SUPPORTED +# define PNG_POWERPC_VSX 10 +#endif + +/* HARDWARE: MIPS MMI SIMD instructions supported */ +#ifdef PNG_MIPS_MMI_API_SUPPORTED +# define PNG_MIPS_MMI 12 +#endif + +/* HARDWARE: RISC-V RVV SIMD instructions supported */ +#ifdef PNG_RISCV_RVV_API_SUPPORTED +# define PNG_RISCV_RVV 14 +#endif + +/* Next option - numbers must be even */ +#define PNG_OPTION_NEXT 16 /* Return values: NOTE: there are four values and 'off' is *not* zero */ #define PNG_OPTION_UNSET 0 /* Unset - defaults to off */ @@ -3437,7 +3605,7 @@ PNG_EXPORT(279, void, png_write_frame_tail, (png_structp png_ptr, #ifdef PNG_APNG_SUPPORTED PNG_EXPORT_LAST_ORDINAL(279); #else - PNG_EXPORT_LAST_ORDINAL(259); + PNG_EXPORT_LAST_ORDINAL(259); #endif /* APNG */ #endif diff --git a/icecat/media/libpng/pngconf.h b/icecat/media/libpng/pngconf.h index 42fa973c20..4508452419 100644 --- a/icecat/media/libpng/pngconf.h +++ b/icecat/media/libpng/pngconf.h @@ -1,8 +1,8 @@ /* pngconf.h - machine-configurable file for libpng * - * libpng version 1.6.47 + * libpng version 1.6.55 * - * Copyright (c) 2018-2025 Cosmin Truta + * Copyright (c) 2018-2026 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -219,25 +219,13 @@ /* NOTE: PNGCBAPI always defaults to PNGCAPI. */ # if defined(PNGAPI) && !defined(PNG_USER_PRIVATEBUILD) -# error "PNG_USER_PRIVATEBUILD must be defined if PNGAPI is changed" +# error PNG_USER_PRIVATEBUILD must be defined if PNGAPI is changed # endif -# if (defined(_MSC_VER) && _MSC_VER < 800) ||\ - (defined(__BORLANDC__) && __BORLANDC__ < 0x500) - /* older Borland and MSC - * compilers used '__export' and required this to be after - * the type. - */ -# ifndef PNG_EXPORT_TYPE -# define PNG_EXPORT_TYPE(type) type PNG_IMPEXP -# endif -# define PNG_DLL_EXPORT __export -# else /* newer compiler */ -# define PNG_DLL_EXPORT __declspec(dllexport) -# ifndef PNG_DLL_IMPORT -# define PNG_DLL_IMPORT __declspec(dllimport) -# endif -# endif /* compiler */ +# define PNG_DLL_EXPORT __declspec(dllexport) +# ifndef PNG_DLL_IMPORT +# define PNG_DLL_IMPORT __declspec(dllimport) +# endif #else /* !Windows */ # if (defined(__IBMC__) || defined(__IBMCPP__)) && defined(__OS2__) @@ -479,7 +467,7 @@ #if CHAR_BIT == 8 && UCHAR_MAX == 255 typedef unsigned char png_byte; #else -# error "libpng requires 8-bit bytes" +# error libpng requires 8-bit bytes #endif #if INT_MIN == -32768 && INT_MAX == 32767 @@ -487,7 +475,7 @@ #elif SHRT_MIN == -32768 && SHRT_MAX == 32767 typedef short png_int_16; #else -# error "libpng requires a signed 16-bit type" +# error libpng requires a signed 16-bit integer type #endif #if UINT_MAX == 65535 @@ -495,7 +483,7 @@ #elif USHRT_MAX == 65535 typedef unsigned short png_uint_16; #else -# error "libpng requires an unsigned 16-bit type" +# error libpng requires an unsigned 16-bit integer type #endif #if INT_MIN < -2147483646 && INT_MAX > 2147483646 @@ -503,7 +491,7 @@ #elif LONG_MIN < -2147483646 && LONG_MAX > 2147483646 typedef long int png_int_32; #else -# error "libpng requires a signed 32-bit (or more) type" +# error libpng requires a signed 32-bit (or longer) integer type #endif #if UINT_MAX > 4294967294U @@ -511,7 +499,7 @@ #elif ULONG_MAX > 4294967294U typedef unsigned long int png_uint_32; #else -# error "libpng requires an unsigned 32-bit (or more) type" +# error libpng requires an unsigned 32-bit (or longer) integer type #endif /* Prior to 1.6.0, it was possible to disable the use of size_t and ptrdiff_t. @@ -592,10 +580,6 @@ typedef const png_fixed_point * png_const_fixed_point_p; typedef size_t * png_size_tp; typedef const size_t * png_const_size_tp; -#ifdef PNG_STDIO_SUPPORTED -typedef FILE * png_FILE_p; -#endif - #ifdef PNG_FLOATING_POINT_SUPPORTED typedef double * png_doublep; typedef const double * png_const_doublep; @@ -617,6 +601,15 @@ typedef double * * png_doublepp; /* Pointers to pointers to pointers; i.e., pointer to array */ typedef char * * * png_charppp; +#ifdef PNG_STDIO_SUPPORTED +/* With PNG_STDIO_SUPPORTED it was possible to use I/O streams that were + * not necessarily stdio FILE streams, to allow building Windows applications + * before Win32 and Windows CE applications before WinCE 3.0, but that kind + * of support has long been discontinued. + */ +typedef FILE * png_FILE_p; /* [Deprecated] */ +#endif + #endif /* PNG_BUILDING_SYMBOL_TABLE */ #endif /* PNGCONF_H */ diff --git a/icecat/media/libpng/pngdebug.h b/icecat/media/libpng/pngdebug.h index ab9ea632d9..0337918aec 100644 --- a/icecat/media/libpng/pngdebug.h +++ b/icecat/media/libpng/pngdebug.h @@ -1,6 +1,6 @@ -/* pngdebug.h - Debugging macros for libpng, also used in pngtest.c +/* pngdebug.h - internal debugging macros for libpng * - * Copyright (c) 2018 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2013 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -10,6 +10,10 @@ * and license in png.h */ +#ifndef PNGPRIV_H +# error This file must not be included by applications; please include +#endif + /* Define PNG_DEBUG at compile time for debugging information. Higher * numbers for PNG_DEBUG mean more debugging information. This has * only been added since version 0.95 so it is not implemented throughout @@ -34,9 +38,6 @@ #define PNGDEBUG_H /* These settings control the formatting of messages in png.c and pngerror.c */ /* Moved to pngdebug.h at 1.5.0 */ -# ifndef PNG_LITERAL_SHARP -# define PNG_LITERAL_SHARP 0x23 -# endif # ifndef PNG_LITERAL_LEFT_SQUARE_BRACKET # define PNG_LITERAL_LEFT_SQUARE_BRACKET 0x5b # endif diff --git a/icecat/media/libpng/pngerror.c b/icecat/media/libpng/pngerror.c index 275b188d04..72dc20ea87 100644 --- a/icecat/media/libpng/pngerror.c +++ b/icecat/media/libpng/pngerror.c @@ -1,6 +1,6 @@ /* pngerror.c - stub functions for i/o and memory allocation * - * Copyright (c) 2018-2024 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2017 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -39,46 +39,6 @@ PNG_FUNCTION(void,PNGAPI png_error,(png_const_structrp png_ptr, png_const_charp error_message), PNG_NORETURN) { -#ifdef PNG_ERROR_NUMBERS_SUPPORTED - char msg[16]; - if (png_ptr != NULL) - { - if ((png_ptr->flags & - (PNG_FLAG_STRIP_ERROR_NUMBERS|PNG_FLAG_STRIP_ERROR_TEXT)) != 0) - { - if (*error_message == PNG_LITERAL_SHARP) - { - /* Strip "#nnnn " from beginning of error message. */ - int offset; - for (offset = 1; offset<15; offset++) - if (error_message[offset] == ' ') - break; - - if ((png_ptr->flags & PNG_FLAG_STRIP_ERROR_TEXT) != 0) - { - int i; - for (i = 0; i < offset - 1; i++) - msg[i] = error_message[i + 1]; - msg[i - 1] = '\0'; - error_message = msg; - } - - else - error_message += offset; - } - - else - { - if ((png_ptr->flags & PNG_FLAG_STRIP_ERROR_TEXT) != 0) - { - msg[0] = '0'; - msg[1] = '\0'; - error_message = msg; - } - } - } - } -#endif if (png_ptr != NULL && png_ptr->error_fn != NULL) (*(png_ptr->error_fn))(png_constcast(png_structrp,png_ptr), error_message); @@ -89,7 +49,8 @@ png_error,(png_const_structrp png_ptr, png_const_charp error_message), } #else PNG_FUNCTION(void,PNGAPI -png_err,(png_const_structrp png_ptr),PNG_NORETURN) +png_err,(png_const_structrp png_ptr), + PNG_NORETURN) { /* Prior to 1.5.2 the error_fn received a NULL pointer, expressed * erroneously as '\0', instead of the empty string "". This was @@ -216,21 +177,6 @@ void PNGAPI png_warning(png_const_structrp png_ptr, png_const_charp warning_message) { int offset = 0; - if (png_ptr != NULL) - { -#ifdef PNG_ERROR_NUMBERS_SUPPORTED - if ((png_ptr->flags & - (PNG_FLAG_STRIP_ERROR_NUMBERS|PNG_FLAG_STRIP_ERROR_TEXT)) != 0) -#endif - { - if (*warning_message == PNG_LITERAL_SHARP) - { - for (offset = 1; offset < 15; offset++) - if (warning_message[offset] == ' ') - break; - } - } - } if (png_ptr != NULL && png_ptr->warning_fn != NULL) (*(png_ptr->warning_fn))(png_constcast(png_structrp,png_ptr), warning_message + offset); @@ -431,8 +377,8 @@ static const char png_digit[16] = { }; static void /* PRIVATE */ -png_format_buffer(png_const_structrp png_ptr, png_charp buffer, png_const_charp - error_message) +png_format_buffer(png_const_structrp png_ptr, png_charp buffer, + png_const_charp error_message) { png_uint_32 chunk_name = png_ptr->chunk_name; int iout = 0, ishift = 24; @@ -511,8 +457,8 @@ png_chunk_warning(png_const_structrp png_ptr, png_const_charp warning_message) #ifdef PNG_READ_SUPPORTED #ifdef PNG_BENIGN_ERRORS_SUPPORTED void PNGAPI -png_chunk_benign_error(png_const_structrp png_ptr, png_const_charp - error_message) +png_chunk_benign_error(png_const_structrp png_ptr, + png_const_charp error_message) { if ((png_ptr->flags & PNG_FLAG_BENIGN_ERRORS_WARN) != 0) png_chunk_warning(png_ptr, error_message); @@ -569,7 +515,8 @@ png_chunk_report(png_const_structrp png_ptr, png_const_charp message, int error) #ifdef PNG_ERROR_TEXT_SUPPORTED #ifdef PNG_FLOATING_POINT_SUPPORTED PNG_FUNCTION(void, -png_fixed_error,(png_const_structrp png_ptr, png_const_charp name),PNG_NORETURN) +png_fixed_error,(png_const_structrp png_ptr, png_const_charp name), + PNG_NORETURN) { # define fixed_message "fixed point overflow in " # define fixed_message_ln ((sizeof fixed_message)-1) @@ -712,42 +659,9 @@ png_default_error,(png_const_structrp png_ptr, png_const_charp error_message), PNG_NORETURN) { #ifdef PNG_CONSOLE_IO_SUPPORTED -#ifdef PNG_ERROR_NUMBERS_SUPPORTED - /* Check on NULL only added in 1.5.4 */ - if (error_message != NULL && *error_message == PNG_LITERAL_SHARP) - { - /* Strip "#nnnn " from beginning of error message. */ - int offset; - char error_number[16]; - for (offset = 0; offset<15; offset++) - { - error_number[offset] = error_message[offset + 1]; - if (error_message[offset] == ' ') - break; - } - - if ((offset > 1) && (offset < 15)) - { - error_number[offset - 1] = '\0'; - fprintf(stderr, "libpng error no. %s: %s", - error_number, error_message + offset + 1); - fprintf(stderr, PNG_STRING_NEWLINE); - } - - else - { - fprintf(stderr, "libpng error: %s, offset=%d", - error_message, offset); - fprintf(stderr, PNG_STRING_NEWLINE); - } - } - else -#endif - { - fprintf(stderr, "libpng error: %s", error_message ? error_message : - "undefined"); - fprintf(stderr, PNG_STRING_NEWLINE); - } + fprintf(stderr, "libpng error: %s", error_message ? error_message : + "undefined"); + fprintf(stderr, PNG_STRING_NEWLINE); #else PNG_UNUSED(error_message) /* Make compiler happy */ #endif @@ -755,7 +669,8 @@ png_default_error,(png_const_structrp png_ptr, png_const_charp error_message), } PNG_FUNCTION(void,PNGAPI -png_longjmp,(png_const_structrp png_ptr, int val),PNG_NORETURN) +png_longjmp,(png_const_structrp png_ptr, int val), + PNG_NORETURN) { #ifdef PNG_SETJMP_SUPPORTED if (png_ptr != NULL && png_ptr->longjmp_fn != NULL && @@ -785,40 +700,8 @@ static void /* PRIVATE */ png_default_warning(png_const_structrp png_ptr, png_const_charp warning_message) { #ifdef PNG_CONSOLE_IO_SUPPORTED -# ifdef PNG_ERROR_NUMBERS_SUPPORTED - if (*warning_message == PNG_LITERAL_SHARP) - { - int offset; - char warning_number[16]; - for (offset = 0; offset < 15; offset++) - { - warning_number[offset] = warning_message[offset + 1]; - if (warning_message[offset] == ' ') - break; - } - - if ((offset > 1) && (offset < 15)) - { - warning_number[offset + 1] = '\0'; - fprintf(stderr, "libpng warning no. %s: %s", - warning_number, warning_message + offset); - fprintf(stderr, PNG_STRING_NEWLINE); - } - - else - { - fprintf(stderr, "libpng warning: %s", - warning_message); - fprintf(stderr, PNG_STRING_NEWLINE); - } - } - else -# endif - - { - fprintf(stderr, "libpng warning: %s", warning_message); - fprintf(stderr, PNG_STRING_NEWLINE); - } + fprintf(stderr, "libpng warning: %s", warning_message); + fprintf(stderr, PNG_STRING_NEWLINE); #else PNG_UNUSED(warning_message) /* Make compiler happy */ #endif @@ -866,12 +749,8 @@ png_get_error_ptr(png_const_structrp png_ptr) void PNGAPI png_set_strip_error_numbers(png_structrp png_ptr, png_uint_32 strip_mode) { - if (png_ptr != NULL) - { - png_ptr->flags &= - ((~(PNG_FLAG_STRIP_ERROR_NUMBERS | - PNG_FLAG_STRIP_ERROR_TEXT))&strip_mode); - } + PNG_UNUSED(png_ptr) + PNG_UNUSED(strip_mode) } #endif diff --git a/icecat/media/libpng/pngget.c b/icecat/media/libpng/pngget.c index fcdb6c8632..9288f94b05 100644 --- a/icecat/media/libpng/pngget.c +++ b/icecat/media/libpng/pngget.c @@ -1,6 +1,6 @@ /* pngget.c - retrieval of values from info struct * - * Copyright (c) 2018-2024 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -122,8 +122,8 @@ png_get_compression_type(png_const_structrp png_ptr, png_const_inforp info_ptr) } png_uint_32 PNGAPI -png_get_x_pixels_per_meter(png_const_structrp png_ptr, png_const_inforp - info_ptr) +png_get_x_pixels_per_meter(png_const_structrp png_ptr, + png_const_inforp info_ptr) { #ifdef PNG_pHYs_SUPPORTED png_debug(1, "in png_get_x_pixels_per_meter"); @@ -143,8 +143,8 @@ png_get_x_pixels_per_meter(png_const_structrp png_ptr, png_const_inforp } png_uint_32 PNGAPI -png_get_y_pixels_per_meter(png_const_structrp png_ptr, png_const_inforp - info_ptr) +png_get_y_pixels_per_meter(png_const_structrp png_ptr, + png_const_inforp info_ptr) { #ifdef PNG_pHYs_SUPPORTED png_debug(1, "in png_get_y_pixels_per_meter"); @@ -186,8 +186,8 @@ png_get_pixels_per_meter(png_const_structrp png_ptr, png_const_inforp info_ptr) #ifdef PNG_FLOATING_POINT_SUPPORTED float PNGAPI -png_get_pixel_aspect_ratio(png_const_structrp png_ptr, png_const_inforp - info_ptr) +png_get_pixel_aspect_ratio(png_const_structrp png_ptr, + png_const_inforp info_ptr) { #ifdef PNG_READ_pHYs_SUPPORTED png_debug(1, "in png_get_pixel_aspect_ratio"); @@ -737,7 +737,6 @@ png_get_iCCP(png_const_structrp png_ptr, png_inforp info_ptr, } return 0; - } #endif diff --git a/icecat/media/libpng/pnginfo.h b/icecat/media/libpng/pnginfo.h index 07c68b8b0b..f2e705417b 100644 --- a/icecat/media/libpng/pnginfo.h +++ b/icecat/media/libpng/pnginfo.h @@ -1,6 +1,6 @@ -/* pnginfo.h - header file for PNG reference library +/* pnginfo.h - internal structures for libpng * - * Copyright (c) 2018 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2013,2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -10,43 +10,20 @@ * and license in png.h */ - /* png_info is a structure that holds the information in a PNG file so - * that the application can find out the characteristics of the image. - * If you are reading the file, this structure will tell you what is - * in the PNG file. If you are writing the file, fill in the information - * you want to put into the PNG file, using png_set_*() functions, then - * call png_write_info(). +#ifndef PNGPRIV_H +# error This file must not be included by applications; please include +#endif + +/* INTERNAL, PRIVATE definition of a PNG. * - * The names chosen should be very close to the PNG specification, so - * consult that document for information about the meaning of each field. + * png_info is a modifiable description of a PNG datastream. The fields inside + * this structure are accessed through png_get_() functions and modified + * using png_set_() functions. * - * With libpng < 0.95, it was only possible to directly set and read the - * the values in the png_info_struct, which meant that the contents and - * order of the values had to remain fixed. With libpng 0.95 and later, - * however, there are now functions that abstract the contents of - * png_info_struct from the application, so this makes it easier to use - * libpng with dynamic libraries, and even makes it possible to use - * libraries that don't have all of the libpng ancillary chunk-handing - * functionality. In libpng-1.5.0 this was moved into a separate private - * file that is not visible to applications. - * - * The following members may have allocated storage attached that should be - * cleaned up before the structure is discarded: palette, trans, text, - * pcal_purpose, pcal_units, pcal_params, hist, iccp_name, iccp_profile, - * splt_palettes, scal_unit, row_pointers, and unknowns. By default, these - * are automatically freed when the info structure is deallocated, if they were - * allocated internally by libpng. This behavior can be changed by means - * of the png_data_freer() function. - * - * More allocation details: all the chunk-reading functions that - * change these members go through the corresponding png_set_* - * functions. A function to clear these members is available: see - * png_free_data(). The png_set_* functions do not depend on being - * able to point info structure members to any of the storage they are - * passed (they make their own copies), EXCEPT that the png_set_text - * functions use the same storage passed to them in the text_ptr or - * itxt_ptr structure argument, and the png_set_rows and png_set_unknowns - * functions do not make their own copies. + * Some functions in libpng do directly access members of png_info. However, + * this should be avoided. png_struct objects contain members which hold + * caches, sometimes optimised, of the values from png_info objects, and + * png_info is not passed to the functions which read and write image data. */ #ifndef PNGINFO_H #define PNGINFO_H diff --git a/icecat/media/libpng/pngmem.c b/icecat/media/libpng/pngmem.c index 90c13b1068..b7adff82f5 100644 --- a/icecat/media/libpng/pngmem.c +++ b/icecat/media/libpng/pngmem.c @@ -1,6 +1,6 @@ /* pngmem.c - stub functions for memory allocation * - * Copyright (c) 2018 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2014,2016 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -46,7 +46,8 @@ png_destroy_png_struct(png_structrp png_ptr) * have the ability to do that. */ PNG_FUNCTION(png_voidp,PNGAPI -png_calloc,(png_const_structrp png_ptr, png_alloc_size_t size),PNG_ALLOCATED) +png_calloc,(png_const_structrp png_ptr, png_alloc_size_t size), + PNG_ALLOCATED) { png_voidp ret; @@ -118,7 +119,8 @@ png_malloc_array_checked(png_const_structrp png_ptr, int nelements, PNG_FUNCTION(png_voidp /* PRIVATE */, png_malloc_array,(png_const_structrp png_ptr, int nelements, - size_t element_size),PNG_ALLOCATED) + size_t element_size), + PNG_ALLOCATED) { if (nelements <= 0 || element_size == 0) png_error(png_ptr, "internal error: array alloc"); @@ -128,7 +130,8 @@ png_malloc_array,(png_const_structrp png_ptr, int nelements, PNG_FUNCTION(png_voidp /* PRIVATE */, png_realloc_array,(png_const_structrp png_ptr, png_const_voidp old_array, - int old_elements, int add_elements, size_t element_size),PNG_ALLOCATED) + int old_elements, int add_elements, size_t element_size), + PNG_ALLOCATED) { /* These are internal errors: */ if (add_elements <= 0 || element_size == 0 || old_elements < 0 || @@ -167,7 +170,8 @@ png_realloc_array,(png_const_structrp png_ptr, png_const_voidp old_array, * function png_malloc_default is also provided. */ PNG_FUNCTION(png_voidp,PNGAPI -png_malloc,(png_const_structrp png_ptr, png_alloc_size_t size),PNG_ALLOCATED) +png_malloc,(png_const_structrp png_ptr, png_alloc_size_t size), + PNG_ALLOCATED) { png_voidp ret; @@ -241,7 +245,8 @@ png_free(png_const_structrp png_ptr, png_voidp ptr) } PNG_FUNCTION(void,PNGAPI -png_free_default,(png_const_structrp png_ptr, png_voidp ptr),PNG_DEPRECATED) +png_free_default,(png_const_structrp png_ptr, png_voidp ptr), + PNG_DEPRECATED) { if (png_ptr == NULL || ptr == NULL) return; @@ -255,8 +260,8 @@ png_free_default,(png_const_structrp png_ptr, png_voidp ptr),PNG_DEPRECATED) * of allocating and freeing memory. */ void PNGAPI -png_set_mem_fn(png_structrp png_ptr, png_voidp mem_ptr, png_malloc_ptr - malloc_fn, png_free_ptr free_fn) +png_set_mem_fn(png_structrp png_ptr, png_voidp mem_ptr, + png_malloc_ptr malloc_fn, png_free_ptr free_fn) { if (png_ptr != NULL) { diff --git a/icecat/media/libpng/pngpread.c b/icecat/media/libpng/pngpread.c index fd3ac1de72..e0fb81d047 100644 --- a/icecat/media/libpng/pngpread.c +++ b/icecat/media/libpng/pngpread.c @@ -1,6 +1,6 @@ /* pngpread.c - read a png file in push mode * - * Copyright (c) 2018-2024 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -312,6 +312,14 @@ png_push_read_chunk(png_structrp png_ptr, png_inforp info_ptr) png_benign_error(png_ptr, "Too many IDATs found"); } + else if ((png_ptr->mode & PNG_HAVE_IDAT) != 0) + { + /* These flags must be set consistently for all non-IDAT chunks, + * including the unknown chunks. + */ + png_ptr->mode |= PNG_HAVE_CHUNK_AFTER_IDAT | PNG_AFTER_IDAT; + } + if (chunk_name == png_IHDR) { if (png_ptr->push_length != 13) diff --git a/icecat/media/libpng/pngpriv.h b/icecat/media/libpng/pngpriv.h index eec7d6b83e..ac1fb47f41 100644 --- a/icecat/media/libpng/pngpriv.h +++ b/icecat/media/libpng/pngpriv.h @@ -1,6 +1,6 @@ /* pngpriv.h - private declarations for use inside libpng * - * Copyright (c) 2018-2024 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -19,8 +19,20 @@ * they should be well aware of the issues that may arise from doing so. */ + +/* pngpriv.h must be included first in each translation unit inside libpng. + * On the other hand, it must not be included at all, directly or indirectly, + * by any application code that uses the libpng API. + */ #ifndef PNGPRIV_H -#define PNGPRIV_H +# define PNGPRIV_H +#else +# error Duplicate inclusion of pngpriv.h; please check the libpng source files +#endif + +#if defined(PNG_H) || defined(PNGCONF_H) || defined(PNGLCONF_H) +# error This file must not be included by applications; please include +#endif /* Feature Test Macros. The following are defined here to ensure that correctly * implemented libraries reveal the APIs libpng needs to build and hide those @@ -57,7 +69,6 @@ */ #if defined(HAVE_CONFIG_H) && !defined(PNG_NO_CONFIG_H) # include - /* Pick up the definition of 'restrict' from config.h if it was read: */ # define PNG_RESTRICT restrict #endif @@ -67,9 +78,7 @@ * are not internal definitions may be required. This is handled below just * before png.h is included, but load the configuration now if it is available. */ -#ifndef PNGLCONF_H -# include "pnglibconf.h" -#endif +#include "pnglibconf.h" /* Local renames may change non-exported API functions from png.h */ #if defined(PNG_PREFIX) && !defined(PNGPREFIX_H) @@ -134,6 +143,20 @@ # endif #endif +#ifndef PNG_RISCV_RVV_OPT + /* RISCV_RVV optimizations are being controlled by the compiler settings, + * typically the target compiler will define __riscv but the rvv extension + * availability has to be explicitly stated. This is why if no + * PNG_RISCV_RVV_OPT was defined then a runtime check will be executed. + * + * To enable RISCV_RVV optimizations unconditionally, and compile the + * associated code, pass --enable-riscv-rvv=yes or --enable-riscv-rvv=on + * to configure or put -DPNG_RISCV_RVV_OPT=2 in CPPFLAGS. + */ + +# define PNG_RISCV_RVV_OPT 0 +#endif + #if PNG_ARM_NEON_OPT > 0 /* NEON optimizations are to be at least considered by libpng, so enable the * callbacks to do this. @@ -279,6 +302,16 @@ # define PNG_LOONGARCH_LSX_IMPLEMENTATION 0 #endif +#if PNG_RISCV_RVV_OPT > 0 && __riscv_v >= 1000000 +# define PNG_FILTER_OPTIMIZATIONS png_init_filter_functions_rvv +# ifndef PNG_RISCV_RVV_IMPLEMENTATION + /* Use the intrinsics code by default. */ +# define PNG_RISCV_RVV_IMPLEMENTATION 1 +# endif +#else +# define PNG_RISCV_RVV_IMPLEMENTATION 0 +#endif /* PNG_RISCV_RVV_OPT > 0 && __riscv_v >= 1000000 */ + /* Is this a build of a DLL where compilation of the object modules requires * different preprocessor settings to those required for a simple library? If * so PNG_BUILD_DLL must be set. @@ -681,7 +714,7 @@ /* #define PNG_FLAG_KEEP_UNKNOWN_CHUNKS 0x8000U */ /* #define PNG_FLAG_KEEP_UNSAFE_CHUNKS 0x10000U */ #define PNG_FLAG_LIBRARY_MISMATCH 0x20000U -#define PNG_FLAG_STRIP_ERROR_NUMBERS 0x40000U + /* 0x40000U unused */ #define PNG_FLAG_STRIP_ERROR_TEXT 0x80000U #define PNG_FLAG_BENIGN_ERRORS_WARN 0x100000U /* Added to libpng-1.4.0 */ #define PNG_FLAG_APP_WARNINGS_WARN 0x200000U /* Added to libpng-1.6.0 */ @@ -1005,17 +1038,15 @@ * must match that used in the build, or we must be using pnglibconf.h.prebuilt: */ #if PNG_ZLIB_VERNUM != 0 && PNG_ZLIB_VERNUM != ZLIB_VERNUM -# error ZLIB_VERNUM != PNG_ZLIB_VERNUM \ - "-I (include path) error: see the notes in pngpriv.h" - /* This means that when pnglibconf.h was built the copy of zlib.h that it - * used is not the same as the one being used here. Because the build of - * libpng makes decisions to use inflateInit2 and inflateReset2 based on the - * zlib version number and because this affects handling of certain broken - * PNG files the -I directives must match. +# error The include path of is incorrect + /* When pnglibconf.h was built, the copy of zlib.h that it used was not the + * same as the one being used here. Considering how libpng makes decisions + * to use the zlib API based on the zlib version number, the -I options must + * match. * - * The most likely explanation is that you passed a -I in CFLAGS. This will - * not work; all the preprocessor directives and in particular all the -I - * directives must be in CPPFLAGS. + * A possible cause of this mismatch is that you passed an -I option in + * CFLAGS, which is unlikely to work. All the preprocessor options, and all + * the -I options in particular, should be in CPPFLAGS. */ #endif @@ -1058,15 +1089,17 @@ extern "C" { */ /* Zlib support */ #define PNG_UNEXPECTED_ZLIB_RETURN (-7) -PNG_INTERNAL_FUNCTION(void, png_zstream_error,(png_structrp png_ptr, int ret), +PNG_INTERNAL_FUNCTION(void, png_zstream_error, + (png_structrp png_ptr, int ret), PNG_EMPTY); /* Used by the zlib handling functions to ensure that z_stream::msg is always * set before they return. */ #ifdef PNG_WRITE_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_free_buffer_list,(png_structrp png_ptr, - png_compression_bufferp *list),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_free_buffer_list, + (png_structrp png_ptr, png_compression_bufferp *list), + PNG_EMPTY); /* Free the buffer list used by the compressed write code. */ #endif @@ -1078,22 +1111,25 @@ PNG_INTERNAL_FUNCTION(void,png_free_buffer_list,(png_structrp png_ptr, defined(PNG_READ_RGB_TO_GRAY_SUPPORTED)) || \ (defined(PNG_sCAL_SUPPORTED) && \ defined(PNG_FLOATING_ARITHMETIC_SUPPORTED)) -PNG_INTERNAL_FUNCTION(png_fixed_point,png_fixed,(png_const_structrp png_ptr, - double fp, png_const_charp text),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(png_fixed_point, png_fixed, + (png_const_structrp png_ptr, double fp, png_const_charp text), + PNG_EMPTY); #endif #if defined(PNG_FLOATING_POINT_SUPPORTED) && \ !defined(PNG_FIXED_POINT_MACRO_SUPPORTED) && \ (defined(PNG_cLLI_SUPPORTED) || defined(PNG_mDCV_SUPPORTED)) -PNG_INTERNAL_FUNCTION(png_uint_32,png_fixed_ITU,(png_const_structrp png_ptr, - double fp, png_const_charp text),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(png_uint_32, png_fixed_ITU, + (png_const_structrp png_ptr, double fp, png_const_charp text), + PNG_EMPTY); #endif /* Check the user version string for compatibility, returns false if the version * numbers aren't compatible. */ -PNG_INTERNAL_FUNCTION(int,png_user_version_check,(png_structrp png_ptr, - png_const_charp user_png_ver),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_user_version_check, + (png_structrp png_ptr, png_const_charp user_png_ver), + PNG_EMPTY); #ifdef PNG_READ_SUPPORTED /* should only be used on read */ /* Security: read limits on the largest allocations while reading a PNG. This @@ -1118,24 +1154,28 @@ PNG_INTERNAL_FUNCTION(int,png_user_version_check,(png_structrp png_ptr, * does, however, call the application provided allocator and that could call * png_error (although that would be a bug in the application implementation.) */ -PNG_INTERNAL_FUNCTION(png_voidp,png_malloc_base,(png_const_structrp png_ptr, - png_alloc_size_t size),PNG_ALLOCATED); +PNG_INTERNAL_FUNCTION(png_voidp, png_malloc_base, + (png_const_structrp png_ptr, png_alloc_size_t size), + PNG_ALLOCATED); #if defined(PNG_TEXT_SUPPORTED) || defined(PNG_sPLT_SUPPORTED) ||\ defined(PNG_STORE_UNKNOWN_CHUNKS_SUPPORTED) /* Internal array allocator, outputs no error or warning messages on failure, * just returns NULL. */ -PNG_INTERNAL_FUNCTION(png_voidp,png_malloc_array,(png_const_structrp png_ptr, - int nelements, size_t element_size),PNG_ALLOCATED); +PNG_INTERNAL_FUNCTION(png_voidp, png_malloc_array, + (png_const_structrp png_ptr, int nelements, size_t element_size), + PNG_ALLOCATED); /* The same but an existing array is extended by add_elements. This function * also memsets the new elements to 0 and copies the old elements. The old * array is not freed or altered. */ -PNG_INTERNAL_FUNCTION(png_voidp,png_realloc_array,(png_const_structrp png_ptr, - png_const_voidp array, int old_elements, int add_elements, - size_t element_size),PNG_ALLOCATED); +PNG_INTERNAL_FUNCTION(png_voidp, png_realloc_array, + (png_const_structrp png_ptr, + png_const_voidp array, int old_elements, int add_elements, + size_t element_size), + PNG_ALLOCATED); #endif /* text, sPLT or unknown chunks */ /* Magic to create a struct when there is no struct to call the user supplied @@ -1144,84 +1184,106 @@ PNG_INTERNAL_FUNCTION(png_voidp,png_realloc_array,(png_const_structrp png_ptr, * restriction so libpng has to assume that the 'free' handler, at least, might * call png_error. */ -PNG_INTERNAL_FUNCTION(png_structp,png_create_png_struct, - (png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, - png_error_ptr warn_fn, png_voidp mem_ptr, png_malloc_ptr malloc_fn, - png_free_ptr free_fn),PNG_ALLOCATED); +PNG_INTERNAL_FUNCTION(png_structp, png_create_png_struct, + (png_const_charp user_png_ver, + png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn, + png_voidp mem_ptr, png_malloc_ptr malloc_fn, png_free_ptr free_fn), + PNG_ALLOCATED); /* Free memory from internal libpng struct */ -PNG_INTERNAL_FUNCTION(void,png_destroy_png_struct,(png_structrp png_ptr), +PNG_INTERNAL_FUNCTION(void, png_destroy_png_struct, + (png_structrp png_ptr), PNG_EMPTY); /* Free an allocated jmp_buf (always succeeds) */ -PNG_INTERNAL_FUNCTION(void,png_free_jmpbuf,(png_structrp png_ptr),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_free_jmpbuf, + (png_structrp png_ptr), + PNG_EMPTY); /* Function to allocate memory for zlib. PNGAPI is disallowed. */ -PNG_INTERNAL_FUNCTION(voidpf,png_zalloc,(voidpf png_ptr, uInt items, uInt size), +PNG_INTERNAL_FUNCTION(voidpf, png_zalloc, + (voidpf png_ptr, uInt items, uInt size), PNG_ALLOCATED); /* Function to free memory for zlib. PNGAPI is disallowed. */ -PNG_INTERNAL_FUNCTION(void,png_zfree,(voidpf png_ptr, voidpf ptr),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_zfree, + (voidpf png_ptr, voidpf ptr), + PNG_EMPTY); /* Next four functions are used internally as callbacks. PNGCBAPI is required * but not PNG_EXPORT. PNGAPI added at libpng version 1.2.3, changed to * PNGCBAPI at 1.5.0 */ -PNG_INTERNAL_FUNCTION(void PNGCBAPI,png_default_read_data,(png_structp png_ptr, - png_bytep data, size_t length),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void PNGCBAPI, png_default_read_data, + (png_structp png_ptr, png_bytep data, size_t length), + PNG_EMPTY); #ifdef PNG_PROGRESSIVE_READ_SUPPORTED -PNG_INTERNAL_FUNCTION(void PNGCBAPI,png_push_fill_buffer,(png_structp png_ptr, - png_bytep buffer, size_t length),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void PNGCBAPI, png_push_fill_buffer, + (png_structp png_ptr, png_bytep buffer, size_t length), + PNG_EMPTY); #endif -PNG_INTERNAL_FUNCTION(void PNGCBAPI,png_default_write_data,(png_structp png_ptr, - png_bytep data, size_t length),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void PNGCBAPI, png_default_write_data, + (png_structp png_ptr, png_bytep data, size_t length), + PNG_EMPTY); #ifdef PNG_WRITE_FLUSH_SUPPORTED # ifdef PNG_STDIO_SUPPORTED -PNG_INTERNAL_FUNCTION(void PNGCBAPI,png_default_flush,(png_structp png_ptr), +PNG_INTERNAL_FUNCTION(void PNGCBAPI, png_default_flush, + (png_structp png_ptr), PNG_EMPTY); # endif #endif /* Reset the CRC variable */ -PNG_INTERNAL_FUNCTION(void,png_reset_crc,(png_structrp png_ptr),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_reset_crc, + (png_structrp png_ptr), + PNG_EMPTY); /* Write the "data" buffer to whatever output you are using */ -PNG_INTERNAL_FUNCTION(void,png_write_data,(png_structrp png_ptr, - png_const_bytep data, size_t length),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_data, + (png_structrp png_ptr, png_const_bytep data, size_t length), + PNG_EMPTY); /* Read and check the PNG file signature */ -PNG_INTERNAL_FUNCTION(void,png_read_sig,(png_structrp png_ptr, - png_inforp info_ptr),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_sig, + (png_structrp png_ptr, png_inforp info_ptr), + PNG_EMPTY); /* Read the chunk header (length + type name) */ -PNG_INTERNAL_FUNCTION(png_uint_32,png_read_chunk_header,(png_structrp png_ptr), +PNG_INTERNAL_FUNCTION(png_uint_32, png_read_chunk_header, + (png_structrp png_ptr), PNG_EMPTY); /* Read data from whatever input you are using into the "data" buffer */ -PNG_INTERNAL_FUNCTION(void,png_read_data,(png_structrp png_ptr, png_bytep data, - size_t length),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_data, + (png_structrp png_ptr, png_bytep data, size_t length), + PNG_EMPTY); /* Read bytes into buf, and update png_ptr->crc */ -PNG_INTERNAL_FUNCTION(void,png_crc_read,(png_structrp png_ptr, png_bytep buf, - png_uint_32 length),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_crc_read, + (png_structrp png_ptr, png_bytep buf, png_uint_32 length), + PNG_EMPTY); /* Read "skip" bytes, read the file crc, and (optionally) verify png_ptr->crc */ -PNG_INTERNAL_FUNCTION(int,png_crc_finish,(png_structrp png_ptr, - png_uint_32 skip),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_crc_finish, + (png_structrp png_ptr, png_uint_32 skip), + PNG_EMPTY); /* Calculate the CRC over a section of data. Note that we are only * passing a maximum of 64K on systems that have this as a memory limit, * since this is the maximum buffer size we can specify. */ -PNG_INTERNAL_FUNCTION(void,png_calculate_crc,(png_structrp png_ptr, - png_const_bytep ptr, size_t length),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_calculate_crc, + (png_structrp png_ptr, png_const_bytep ptr, size_t length), + PNG_EMPTY); #ifdef PNG_WRITE_FLUSH_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_flush,(png_structrp png_ptr),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_flush, + (png_structrp png_ptr), + PNG_EMPTY); #endif /* Write various chunks */ @@ -1229,68 +1291,86 @@ PNG_INTERNAL_FUNCTION(void,png_flush,(png_structrp png_ptr),PNG_EMPTY); /* Write the IHDR chunk, and update the png_struct with the necessary * information. */ -PNG_INTERNAL_FUNCTION(void,png_write_IHDR,(png_structrp png_ptr, - png_uint_32 width, png_uint_32 height, int bit_depth, int color_type, - int compression_method, int filter_method, int interlace_method),PNG_EMPTY); - -PNG_INTERNAL_FUNCTION(void,png_write_PLTE,(png_structrp png_ptr, - png_const_colorp palette, png_uint_32 num_pal),PNG_EMPTY); - -PNG_INTERNAL_FUNCTION(void,png_compress_IDAT,(png_structrp png_ptr, - png_const_bytep row_data, png_alloc_size_t row_data_length, int flush), +PNG_INTERNAL_FUNCTION(void, png_write_IHDR, + (png_structrp png_ptr, + png_uint_32 width, png_uint_32 height, int bit_depth, int color_type, + int compression_method, int filter_method, int interlace_method), PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_write_IEND,(png_structrp png_ptr),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_PLTE, + (png_structrp png_ptr, + png_const_colorp palette, png_uint_32 num_pal), + PNG_EMPTY); + +PNG_INTERNAL_FUNCTION(void, png_compress_IDAT, + (png_structrp png_ptr, + png_const_bytep row_data, png_alloc_size_t row_data_length, int flush), + PNG_EMPTY); + +PNG_INTERNAL_FUNCTION(void, png_write_IEND, + (png_structrp png_ptr), + PNG_EMPTY); #ifdef PNG_WRITE_gAMA_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_gAMA_fixed,(png_structrp png_ptr, - png_fixed_point file_gamma),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_gAMA_fixed, + (png_structrp png_ptr, png_fixed_point file_gamma), + PNG_EMPTY); #endif #ifdef PNG_WRITE_sBIT_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_sBIT,(png_structrp png_ptr, - png_const_color_8p sbit, int color_type),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_sBIT, + (png_structrp png_ptr, png_const_color_8p sbit, int color_type), + PNG_EMPTY); #endif #ifdef PNG_WRITE_cHRM_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_cHRM_fixed,(png_structrp png_ptr, - const png_xy *xy), PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_cHRM_fixed, + (png_structrp png_ptr, const png_xy *xy), + PNG_EMPTY); /* The xy value must have been previously validated */ #endif #ifdef PNG_WRITE_cICP_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_cICP,(png_structrp png_ptr, +PNG_INTERNAL_FUNCTION(void, png_write_cICP, + (png_structrp png_ptr, png_byte colour_primaries, png_byte transfer_function, - png_byte matrix_coefficients, png_byte video_full_range_flag), PNG_EMPTY); + png_byte matrix_coefficients, png_byte video_full_range_flag), + PNG_EMPTY); #endif #ifdef PNG_WRITE_cLLI_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_cLLI_fixed,(png_structrp png_ptr, - png_uint_32 maxCLL, png_uint_32 maxFALL), PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_cLLI_fixed, + (png_structrp png_ptr, png_uint_32 maxCLL, png_uint_32 maxFALL), + PNG_EMPTY); #endif #ifdef PNG_WRITE_mDCV_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_mDCV_fixed,(png_structrp png_ptr, - png_uint_16 red_x, png_uint_16 red_y, - png_uint_16 green_x, png_uint_16 green_y, - png_uint_16 blue_x, png_uint_16 blue_y, - png_uint_16 white_x, png_uint_16 white_y, - png_uint_32 maxDL, png_uint_32 minDL), PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_mDCV_fixed, + (png_structrp png_ptr, + png_uint_16 red_x, png_uint_16 red_y, + png_uint_16 green_x, png_uint_16 green_y, + png_uint_16 blue_x, png_uint_16 blue_y, + png_uint_16 white_x, png_uint_16 white_y, + png_uint_32 maxDL, png_uint_32 minDL), + PNG_EMPTY); #endif #ifdef PNG_WRITE_sRGB_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_sRGB,(png_structrp png_ptr, - int intent),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_sRGB, + (png_structrp png_ptr, int intent), + PNG_EMPTY); #endif #ifdef PNG_WRITE_eXIf_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_eXIf,(png_structrp png_ptr, - png_bytep exif, int num_exif),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_eXIf, + (png_structrp png_ptr, png_bytep exif, int num_exif), + PNG_EMPTY); #endif #ifdef PNG_WRITE_iCCP_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_iCCP,(png_structrp png_ptr, - png_const_charp name, png_const_bytep profile, png_uint_32 proflen), +PNG_INTERNAL_FUNCTION(void, png_write_iCCP, + (png_structrp png_ptr, + png_const_charp name, png_const_bytep profile, png_uint_32 proflen), PNG_EMPTY); /* Writes a previously 'set' profile. The profile argument is **not** * compressed. @@ -1298,82 +1378,106 @@ PNG_INTERNAL_FUNCTION(void,png_write_iCCP,(png_structrp png_ptr, #endif #ifdef PNG_WRITE_sPLT_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_sPLT,(png_structrp png_ptr, - png_const_sPLT_tp palette),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_sPLT, + (png_structrp png_ptr, png_const_sPLT_tp palette), + PNG_EMPTY); #endif #ifdef PNG_WRITE_tRNS_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_tRNS,(png_structrp png_ptr, +PNG_INTERNAL_FUNCTION(void, png_write_tRNS, + (png_structrp png_ptr, png_const_bytep trans, png_const_color_16p values, int number, - int color_type),PNG_EMPTY); + int color_type), + PNG_EMPTY); #endif #ifdef PNG_WRITE_bKGD_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_bKGD,(png_structrp png_ptr, - png_const_color_16p values, int color_type),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_bKGD, + (png_structrp png_ptr, png_const_color_16p values, int color_type), + PNG_EMPTY); #endif #ifdef PNG_WRITE_hIST_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_hIST,(png_structrp png_ptr, - png_const_uint_16p hist, int num_hist),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_hIST, + (png_structrp png_ptr, png_const_uint_16p hist, int num_hist), + PNG_EMPTY); #endif /* Chunks that have keywords */ #ifdef PNG_WRITE_tEXt_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_tEXt,(png_structrp png_ptr, - png_const_charp key, png_const_charp text, size_t text_len),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_tEXt, + (png_structrp png_ptr, + png_const_charp key, png_const_charp text, size_t text_len), + PNG_EMPTY); #endif #ifdef PNG_WRITE_zTXt_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_zTXt,(png_structrp png_ptr, png_const_charp - key, png_const_charp text, int compression),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_zTXt, + (png_structrp png_ptr, + png_const_charp key, png_const_charp text, int compression), + PNG_EMPTY); #endif #ifdef PNG_WRITE_iTXt_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_iTXt,(png_structrp png_ptr, +PNG_INTERNAL_FUNCTION(void, png_write_iTXt, + (png_structrp png_ptr, int compression, png_const_charp key, png_const_charp lang, - png_const_charp lang_key, png_const_charp text),PNG_EMPTY); + png_const_charp lang_key, png_const_charp text), + PNG_EMPTY); #endif #ifdef PNG_TEXT_SUPPORTED /* Added at version 1.0.14 and 1.2.4 */ -PNG_INTERNAL_FUNCTION(int,png_set_text_2,(png_const_structrp png_ptr, - png_inforp info_ptr, png_const_textp text_ptr, int num_text),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_set_text_2, + (png_const_structrp png_ptr, + png_inforp info_ptr, png_const_textp text_ptr, int num_text), + PNG_EMPTY); #endif #ifdef PNG_WRITE_oFFs_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_oFFs,(png_structrp png_ptr, - png_int_32 x_offset, png_int_32 y_offset, int unit_type),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_oFFs, + (png_structrp png_ptr, + png_int_32 x_offset, png_int_32 y_offset, int unit_type), + PNG_EMPTY); #endif #ifdef PNG_WRITE_pCAL_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_pCAL,(png_structrp png_ptr, - png_charp purpose, png_int_32 X0, png_int_32 X1, int type, int nparams, - png_const_charp units, png_charpp params),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_pCAL, + (png_structrp png_ptr, + png_charp purpose, png_int_32 X0, png_int_32 X1, + int type, int nparams, png_const_charp units, png_charpp params), + PNG_EMPTY); #endif #ifdef PNG_WRITE_pHYs_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_pHYs,(png_structrp png_ptr, +PNG_INTERNAL_FUNCTION(void, png_write_pHYs, + (png_structrp png_ptr, png_uint_32 x_pixels_per_unit, png_uint_32 y_pixels_per_unit, - int unit_type),PNG_EMPTY); + int unit_type), + PNG_EMPTY); #endif #ifdef PNG_WRITE_tIME_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_tIME,(png_structrp png_ptr, - png_const_timep mod_time),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_tIME, + (png_structrp png_ptr, png_const_timep mod_time), + PNG_EMPTY); #endif #ifdef PNG_WRITE_sCAL_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_write_sCAL_s,(png_structrp png_ptr, - int unit, png_const_charp width, png_const_charp height),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_sCAL_s, + (png_structrp png_ptr, + int unit, png_const_charp width, png_const_charp height), + PNG_EMPTY); #endif /* Called when finished processing a row of data */ -PNG_INTERNAL_FUNCTION(void,png_write_finish_row,(png_structrp png_ptr), - PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_finish_row, + (png_structrp png_ptr), + PNG_EMPTY); /* Internal use only. Called before first row of data */ -PNG_INTERNAL_FUNCTION(void,png_write_start_row,(png_structrp png_ptr), - PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_start_row, + (png_structrp png_ptr), + PNG_EMPTY); /* Combine a row of data, dealing with alpha, etc. if requested. 'row' is an * array of png_ptr->width pixels. If the image is not interlaced or this @@ -1401,8 +1505,9 @@ PNG_INTERNAL_FUNCTION(void,png_write_start_row,(png_structrp png_ptr), #ifndef PNG_USE_COMPILE_TIME_MASKS # define PNG_USE_COMPILE_TIME_MASKS 1 #endif -PNG_INTERNAL_FUNCTION(void,png_combine_row,(png_const_structrp png_ptr, - png_bytep row, int display),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_combine_row, + (png_const_structrp png_ptr, png_bytep row, int display), + PNG_EMPTY); #ifdef PNG_READ_INTERLACING_SUPPORTED /* Expand an interlaced row: the 'row_info' describes the pass data that has @@ -1411,153 +1516,230 @@ PNG_INTERNAL_FUNCTION(void,png_combine_row,(png_const_structrp png_ptr, * the pixels are *replicated* to the intervening space. This is essential for * the correct operation of png_combine_row, above. */ -PNG_INTERNAL_FUNCTION(void,png_do_read_interlace,(png_row_infop row_info, - png_bytep row, int pass, png_uint_32 transformations),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_do_read_interlace, + (png_row_infop row_info, + png_bytep row, int pass, png_uint_32 transformations), + PNG_EMPTY); #endif /* GRR TO DO (2.0 or whenever): simplify other internal calling interfaces */ #ifdef PNG_WRITE_INTERLACING_SUPPORTED /* Grab pixels out of a row for an interlaced pass */ -PNG_INTERNAL_FUNCTION(void,png_do_write_interlace,(png_row_infop row_info, - png_bytep row, int pass),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_do_write_interlace, + (png_row_infop row_info, png_bytep row, int pass), + PNG_EMPTY); #endif /* Unfilter a row: check the filter value before calling this, there is no point * calling it for PNG_FILTER_VALUE_NONE. */ -PNG_INTERNAL_FUNCTION(void,png_read_filter_row,(png_structrp pp, png_row_infop - row_info, png_bytep row, png_const_bytep prev_row, int filter),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row, + (png_structrp pp, png_row_infop row_info, + png_bytep row, png_const_bytep prev_row, int filter), + PNG_EMPTY); #if PNG_ARM_NEON_OPT > 0 -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_up_neon,(png_row_infop row_info, - png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub3_neon,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub4_neon,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg3_neon,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg4_neon,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth3_neon,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth4_neon,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_up_neon, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub3_neon, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub4_neon, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg3_neon, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg4_neon, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth3_neon, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth4_neon, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); #endif #if PNG_MIPS_MSA_IMPLEMENTATION == 1 -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_up_msa,(png_row_infop row_info, - png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub3_msa,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub4_msa,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg3_msa,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg4_msa,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth3_msa,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth4_msa,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_up_msa, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub3_msa, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub4_msa, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg3_msa, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg4_msa, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth3_msa, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth4_msa, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); #endif #if PNG_MIPS_MMI_IMPLEMENTATION > 0 -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_up_mmi,(png_row_infop row_info, - png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub3_mmi,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub4_mmi,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg3_mmi,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg4_mmi,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth3_mmi,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth4_mmi,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_up_mmi, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub3_mmi, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub4_mmi, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg3_mmi, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg4_mmi, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth3_mmi, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth4_mmi, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); #endif #if PNG_POWERPC_VSX_OPT > 0 -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_up_vsx,(png_row_infop row_info, - png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub3_vsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub4_vsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg3_vsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg4_vsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth3_vsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth4_vsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_up_vsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub3_vsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub4_vsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg3_vsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg4_vsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth3_vsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth4_vsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); #endif #if PNG_INTEL_SSE_IMPLEMENTATION > 0 -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub3_sse2,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub4_sse2,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg3_sse2,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg4_sse2,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth3_sse2,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth4_sse2,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub3_sse2, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub4_sse2, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg3_sse2, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg4_sse2, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth3_sse2, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth4_sse2, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); #endif #if PNG_LOONGARCH_LSX_IMPLEMENTATION == 1 -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_up_lsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub3_lsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_sub4_lsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg3_lsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_avg4_lsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth3_lsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_filter_row_paeth4_lsx,(png_row_infop - row_info, png_bytep row, png_const_bytep prev_row),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_up_lsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub3_lsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub4_lsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg3_lsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg4_lsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth3_lsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth4_lsx, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +#endif + +#if PNG_RISCV_RVV_IMPLEMENTATION == 1 +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_up_rvv, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub3_rvv, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_sub4_rvv, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg3_rvv, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_avg4_rvv, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth3_rvv, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_filter_row_paeth4_rvv, + (png_row_infop row_info, png_bytep row, png_const_bytep prev_row), + PNG_EMPTY); #endif /* Choose the best filter to use and filter the row data */ -PNG_INTERNAL_FUNCTION(void,png_write_find_filter,(png_structrp png_ptr, - png_row_infop row_info),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_write_find_filter, + (png_structrp png_ptr, png_row_infop row_info), + PNG_EMPTY); #ifdef PNG_SEQUENTIAL_READ_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_read_IDAT_data,(png_structrp png_ptr, - png_bytep output, png_alloc_size_t avail_out),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_IDAT_data, + (png_structrp png_ptr, png_bytep output, png_alloc_size_t avail_out), + PNG_EMPTY); /* Read 'avail_out' bytes of data from the IDAT stream. If the output buffer * is NULL the function checks, instead, for the end of the stream. In this * case a benign error will be issued if the stream end is not found or if * extra data has to be consumed. */ -PNG_INTERNAL_FUNCTION(void,png_read_finish_IDAT,(png_structrp png_ptr), +PNG_INTERNAL_FUNCTION(void, png_read_finish_IDAT, + (png_structrp png_ptr), PNG_EMPTY); /* This cleans up when the IDAT LZ stream does not end when the last image * byte is read; there is still some pending input. */ -PNG_INTERNAL_FUNCTION(void,png_read_finish_row,(png_structrp png_ptr), +PNG_INTERNAL_FUNCTION(void, png_read_finish_row, + (png_structrp png_ptr), PNG_EMPTY); /* Finish a row while reading, dealing with interlacing passes, etc. */ #endif /* SEQUENTIAL_READ */ /* Initialize the row buffers, etc. */ -PNG_INTERNAL_FUNCTION(void,png_read_start_row,(png_structrp png_ptr),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_start_row, + (png_structrp png_ptr), + PNG_EMPTY); #if ZLIB_VERNUM >= 0x1240 -PNG_INTERNAL_FUNCTION(int,png_zlib_inflate,(png_structrp png_ptr, int flush), - PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_zlib_inflate, + (png_structrp png_ptr, int flush), + PNG_EMPTY); # define PNG_INFLATE(pp, flush) png_zlib_inflate(pp, flush) #else /* Zlib < 1.2.4 */ # define PNG_INFLATE(pp, flush) inflate(&(pp)->zstream, flush) @@ -1565,38 +1747,44 @@ PNG_INTERNAL_FUNCTION(int,png_zlib_inflate,(png_structrp png_ptr, int flush), #ifdef PNG_READ_TRANSFORMS_SUPPORTED /* Optional call to update the users info structure */ -PNG_INTERNAL_FUNCTION(void,png_read_transform_info,(png_structrp png_ptr, - png_inforp info_ptr),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_transform_info, + (png_structrp png_ptr, png_inforp info_ptr), + PNG_EMPTY); #endif /* Shared transform functions, defined in pngtran.c */ #if defined(PNG_WRITE_FILLER_SUPPORTED) || \ defined(PNG_READ_STRIP_ALPHA_SUPPORTED) -PNG_INTERNAL_FUNCTION(void,png_do_strip_channel,(png_row_infop row_info, - png_bytep row, int at_start),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_do_strip_channel, + (png_row_infop row_info, png_bytep row, int at_start), + PNG_EMPTY); #endif #ifdef PNG_16BIT_SUPPORTED #if defined(PNG_READ_SWAP_SUPPORTED) || defined(PNG_WRITE_SWAP_SUPPORTED) -PNG_INTERNAL_FUNCTION(void,png_do_swap,(png_row_infop row_info, - png_bytep row),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_do_swap, + (png_row_infop row_info, png_bytep row), + PNG_EMPTY); #endif #endif #if defined(PNG_READ_PACKSWAP_SUPPORTED) || \ defined(PNG_WRITE_PACKSWAP_SUPPORTED) -PNG_INTERNAL_FUNCTION(void,png_do_packswap,(png_row_infop row_info, - png_bytep row),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_do_packswap, + (png_row_infop row_info, png_bytep row), + PNG_EMPTY); #endif #if defined(PNG_READ_INVERT_SUPPORTED) || defined(PNG_WRITE_INVERT_SUPPORTED) -PNG_INTERNAL_FUNCTION(void,png_do_invert,(png_row_infop row_info, - png_bytep row),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_do_invert, + (png_row_infop row_info, png_bytep row), + PNG_EMPTY); #endif #if defined(PNG_READ_BGR_SUPPORTED) || defined(PNG_WRITE_BGR_SUPPORTED) -PNG_INTERNAL_FUNCTION(void,png_do_bgr,(png_row_infop row_info, - png_bytep row),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_do_bgr, + (png_row_infop row_info, png_bytep row), + PNG_EMPTY); #endif /* The following decodes the appropriate chunks, and does error correction, @@ -1617,25 +1805,27 @@ typedef enum handled_ok /* known, supported and handled without error */ } png_handle_result_code; -PNG_INTERNAL_FUNCTION(png_handle_result_code,png_handle_unknown, - (png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length, int keep), - PNG_EMPTY); +PNG_INTERNAL_FUNCTION(png_handle_result_code, png_handle_unknown, + (png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length, int keep), + PNG_EMPTY); /* This is the function that gets called for unknown chunks. The 'keep' * argument is either non-zero for a known chunk that has been set to be * handled as unknown or zero for an unknown chunk. By default the function * just skips the chunk or errors out if it is critical. */ -PNG_INTERNAL_FUNCTION(png_handle_result_code,png_handle_chunk, - (png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(png_handle_result_code, png_handle_chunk, + (png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length), + PNG_EMPTY); /* This handles the current chunk png_ptr->chunk_name with unread * data[length] and returns one of the above result codes. */ #if defined(PNG_READ_UNKNOWN_CHUNKS_SUPPORTED) ||\ defined(PNG_HANDLE_AS_UNKNOWN_SUPPORTED) -PNG_INTERNAL_FUNCTION(int,png_chunk_unknown_handling, - (png_const_structrp png_ptr, png_uint_32 chunk_name),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_chunk_unknown_handling, + (png_const_structrp png_ptr, png_uint_32 chunk_name), + PNG_EMPTY); /* Exactly as the API png_handle_as_unknown() except that the argument is a * 32-bit chunk name, not a string. */ @@ -1643,46 +1833,65 @@ PNG_INTERNAL_FUNCTION(int,png_chunk_unknown_handling, /* Handle the transformations for reading and writing */ #ifdef PNG_READ_TRANSFORMS_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_do_read_transformations,(png_structrp png_ptr, - png_row_infop row_info),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_do_read_transformations, + (png_structrp png_ptr, png_row_infop row_info), + PNG_EMPTY); #endif #ifdef PNG_WRITE_TRANSFORMS_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_do_write_transformations,(png_structrp png_ptr, - png_row_infop row_info),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_do_write_transformations, + (png_structrp png_ptr, png_row_infop row_info), + PNG_EMPTY); #endif #ifdef PNG_READ_TRANSFORMS_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_init_read_transformations,(png_structrp png_ptr), - PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_init_read_transformations, + (png_structrp png_ptr), + PNG_EMPTY); #endif #ifdef PNG_PROGRESSIVE_READ_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_push_read_chunk,(png_structrp png_ptr, - png_inforp info_ptr),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_push_read_sig,(png_structrp png_ptr, - png_inforp info_ptr),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_push_check_crc,(png_structrp png_ptr),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_push_save_buffer,(png_structrp png_ptr), - PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_push_restore_buffer,(png_structrp png_ptr, - png_bytep buffer, size_t buffer_length),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_push_read_IDAT,(png_structrp png_ptr),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_process_IDAT_data,(png_structrp png_ptr, - png_bytep buffer, size_t buffer_length),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_push_process_row,(png_structrp png_ptr), - PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_push_have_info,(png_structrp png_ptr, - png_inforp info_ptr),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_push_have_end,(png_structrp png_ptr, - png_inforp info_ptr),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_push_have_row,(png_structrp png_ptr, - png_bytep row),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_push_read_end,(png_structrp png_ptr, - png_inforp info_ptr),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_process_some_data,(png_structrp png_ptr, - png_inforp info_ptr),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_read_push_finish_row,(png_structrp png_ptr), - PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_read_chunk, + (png_structrp png_ptr, png_inforp info_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_read_sig, + (png_structrp png_ptr, png_inforp info_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_check_crc, + (png_structrp png_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_save_buffer, + (png_structrp png_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_restore_buffer, + (png_structrp png_ptr, png_bytep buffer, size_t buffer_length), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_read_IDAT, + (png_structrp png_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_process_IDAT_data, + (png_structrp png_ptr, png_bytep buffer, size_t buffer_length), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_process_row, + (png_structrp png_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_have_info, + (png_structrp png_ptr, png_inforp info_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_have_end, + (png_structrp png_ptr, png_inforp info_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_have_row, + (png_structrp png_ptr, png_bytep row), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_push_read_end, + (png_structrp png_ptr, png_inforp info_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_process_some_data, + (png_structrp png_ptr, png_inforp info_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_read_push_finish_row, + (png_structrp png_ptr), + PNG_EMPTY); #endif /* PROGRESSIVE_READ */ #ifdef PNG_APNG_SUPPORTED @@ -1731,48 +1940,58 @@ PNG_INTERNAL_FUNCTION(void,png_write_reinit,(png_structp png_ptr, #ifdef PNG_iCCP_SUPPORTED /* Routines for checking parts of an ICC profile. */ #ifdef PNG_READ_iCCP_SUPPORTED -PNG_INTERNAL_FUNCTION(int,png_icc_check_length,(png_const_structrp png_ptr, - png_const_charp name, png_uint_32 profile_length), PNG_EMPTY); -#endif /* READ_iCCP */ -PNG_INTERNAL_FUNCTION(int,png_icc_check_header,(png_const_structrp png_ptr, - png_const_charp name, png_uint_32 profile_length, - png_const_bytep profile /* first 132 bytes only */, int color_type), +PNG_INTERNAL_FUNCTION(int, png_icc_check_length, + (png_const_structrp png_ptr, + png_const_charp name, png_uint_32 profile_length), + PNG_EMPTY); +#endif /* READ_iCCP */ +PNG_INTERNAL_FUNCTION(int, png_icc_check_header, + (png_const_structrp png_ptr, + png_const_charp name, png_uint_32 profile_length, + png_const_bytep profile /* first 132 bytes only */, int color_type), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_icc_check_tag_table, + (png_const_structrp png_ptr, + png_const_charp name, png_uint_32 profile_length, + png_const_bytep profile /* header plus whole tag table */), PNG_EMPTY); -PNG_INTERNAL_FUNCTION(int,png_icc_check_tag_table,(png_const_structrp png_ptr, - png_const_charp name, png_uint_32 profile_length, - png_const_bytep profile /* header plus whole tag table */), PNG_EMPTY); #endif /* iCCP */ #ifdef PNG_READ_RGB_TO_GRAY_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_set_rgb_coefficients, (png_structrp png_ptr), +PNG_INTERNAL_FUNCTION(void, png_set_rgb_coefficients, + (png_structrp png_ptr), PNG_EMPTY); /* Set the rgb_to_gray coefficients from the cHRM Y values (if unset) */ #endif /* READ_RGB_TO_GRAY */ /* Added at libpng version 1.4.0 */ -PNG_INTERNAL_FUNCTION(void,png_check_IHDR,(png_const_structrp png_ptr, - png_uint_32 width, png_uint_32 height, int bit_depth, - int color_type, int interlace_type, int compression_type, - int filter_type),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_check_IHDR, + (png_const_structrp png_ptr, + png_uint_32 width, png_uint_32 height, int bit_depth, int color_type, + int interlace_type, int compression_type, int filter_type), + PNG_EMPTY); /* Added at libpng version 1.5.10 */ #if defined(PNG_READ_CHECK_FOR_INVALID_INDEX_SUPPORTED) || \ defined(PNG_WRITE_CHECK_FOR_INVALID_INDEX_SUPPORTED) -PNG_INTERNAL_FUNCTION(void,png_do_check_palette_indexes, - (png_structrp png_ptr, png_row_infop row_info),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_do_check_palette_indexes, + (png_structrp png_ptr, png_row_infop row_info), + PNG_EMPTY); #endif #if defined(PNG_FLOATING_POINT_SUPPORTED) && defined(PNG_ERROR_TEXT_SUPPORTED) -PNG_INTERNAL_FUNCTION(void,png_fixed_error,(png_const_structrp png_ptr, - png_const_charp name),PNG_NORETURN); +PNG_INTERNAL_FUNCTION(void, png_fixed_error, + (png_const_structrp png_ptr, png_const_charp name), + PNG_NORETURN); #endif /* Puts 'string' into 'buffer' at buffer[pos], taking care never to overwrite * the end. Always leaves the buffer nul terminated. Never errors out (and * there is no error code.) */ -PNG_INTERNAL_FUNCTION(size_t,png_safecat,(png_charp buffer, size_t bufsize, - size_t pos, png_const_charp string),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(size_t, png_safecat, + (png_charp buffer, size_t bufsize, size_t pos, png_const_charp string), + PNG_EMPTY); /* Various internal functions to handle formatted warning messages, currently * only implemented for warnings. @@ -1783,8 +2002,9 @@ PNG_INTERNAL_FUNCTION(size_t,png_safecat,(png_charp buffer, size_t bufsize, * Returns the pointer to the start of the formatted string. This utility only * does unsigned values. */ -PNG_INTERNAL_FUNCTION(png_charp,png_format_number,(png_const_charp start, - png_charp end, int format, png_alloc_size_t number),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(png_charp, png_format_number, + (png_const_charp start, png_charp end, int format, png_alloc_size_t number), + PNG_EMPTY); /* Convenience macro that takes an array: */ #define PNG_FORMAT_NUMBER(buffer,format,number) \ @@ -1816,23 +2036,26 @@ PNG_INTERNAL_FUNCTION(png_charp,png_format_number,(png_const_charp start, typedef char png_warning_parameters[PNG_WARNING_PARAMETER_COUNT][ PNG_WARNING_PARAMETER_SIZE]; -PNG_INTERNAL_FUNCTION(void,png_warning_parameter,(png_warning_parameters p, - int number, png_const_charp string),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_warning_parameter, + (png_warning_parameters p, int number, png_const_charp string), + PNG_EMPTY); /* Parameters are limited in size to PNG_WARNING_PARAMETER_SIZE characters, * including the trailing '\0'. */ -PNG_INTERNAL_FUNCTION(void,png_warning_parameter_unsigned, +PNG_INTERNAL_FUNCTION(void, png_warning_parameter_unsigned, (png_warning_parameters p, int number, int format, png_alloc_size_t value), PNG_EMPTY); /* Use png_alloc_size_t because it is an unsigned type as big as any we * need to output. Use the following for a signed value. */ -PNG_INTERNAL_FUNCTION(void,png_warning_parameter_signed, +PNG_INTERNAL_FUNCTION(void, png_warning_parameter_signed, (png_warning_parameters p, int number, int format, png_int_32 value), PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_formatted_warning,(png_const_structrp png_ptr, - png_warning_parameters p, png_const_charp message),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_formatted_warning, + (png_const_structrp png_ptr, + png_warning_parameters p, png_const_charp message), + PNG_EMPTY); /* 'message' follows the X/Open approach of using @1, @2 to insert * parameters previously supplied using the above functions. Errors in * specifying the parameters will simply result in garbage substitutions. @@ -1854,14 +2077,16 @@ PNG_INTERNAL_FUNCTION(void,png_formatted_warning,(png_const_structrp png_ptr, * If benign errors aren't supported they end up as the corresponding base call * (png_warning or png_error.) */ -PNG_INTERNAL_FUNCTION(void,png_app_warning,(png_const_structrp png_ptr, - png_const_charp message),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_app_warning, + (png_const_structrp png_ptr, png_const_charp message), + PNG_EMPTY); /* The application provided invalid parameters to an API function or called * an API function at the wrong time, libpng can completely recover. */ -PNG_INTERNAL_FUNCTION(void,png_app_error,(png_const_structrp png_ptr, - png_const_charp message),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_app_error, + (png_const_structrp png_ptr, png_const_charp message), + PNG_EMPTY); /* As above but libpng will ignore the call, or attempt some other partial * recovery from the error. */ @@ -1870,8 +2095,9 @@ PNG_INTERNAL_FUNCTION(void,png_app_error,(png_const_structrp png_ptr, # define png_app_error(pp,s) png_error(pp,s) #endif -PNG_INTERNAL_FUNCTION(void,png_chunk_report,(png_const_structrp png_ptr, - png_const_charp message, int error),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_chunk_report, + (png_const_structrp png_ptr, png_const_charp message, int error), + PNG_EMPTY); /* Report a recoverable issue in chunk data. On read this is used to report * a problem found while reading a particular chunk and the * png_chunk_benign_error or png_chunk_warning function is used as @@ -1897,14 +2123,17 @@ PNG_INTERNAL_FUNCTION(void,png_chunk_report,(png_const_structrp png_ptr, #define PNG_sCAL_MAX_DIGITS (PNG_sCAL_PRECISION+1/*.*/+1/*E*/+10/*exponent*/) #ifdef PNG_FLOATING_POINT_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_ascii_from_fp,(png_const_structrp png_ptr, - png_charp ascii, size_t size, double fp, unsigned int precision), +PNG_INTERNAL_FUNCTION(void, png_ascii_from_fp, + (png_const_structrp png_ptr, + png_charp ascii, size_t size, double fp, unsigned int precision), PNG_EMPTY); #endif /* FLOATING_POINT */ #ifdef PNG_FIXED_POINT_SUPPORTED -PNG_INTERNAL_FUNCTION(void,png_ascii_from_fixed,(png_const_structrp png_ptr, - png_charp ascii, size_t size, png_fixed_point fp),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_ascii_from_fixed, + (png_const_structrp png_ptr, + png_charp ascii, size_t size, png_fixed_point fp), + PNG_EMPTY); #endif /* FIXED_POINT */ #endif /* sCAL */ @@ -1996,8 +2225,9 @@ PNG_INTERNAL_FUNCTION(void,png_ascii_from_fixed,(png_const_structrp png_ptr, * that omits the last character (i.e. set the size to the index of * the problem character.) This has not been tested within libpng. */ -PNG_INTERNAL_FUNCTION(int,png_check_fp_number,(png_const_charp string, - size_t size, int *statep, size_t *whereami),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_check_fp_number, + (png_const_charp string, size_t size, int *statep, size_t *whereami), + PNG_EMPTY); /* This is the same but it checks a complete string and returns true * only if it just contains a floating point number. As of 1.5.4 this @@ -2005,8 +2235,9 @@ PNG_INTERNAL_FUNCTION(int,png_check_fp_number,(png_const_charp string, * it was valid (otherwise it returns 0.) This can be used for testing * for negative or zero values using the sticky flag. */ -PNG_INTERNAL_FUNCTION(int,png_check_fp_string,(png_const_charp string, - size_t size),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_check_fp_string, + (png_const_charp string, size_t size), + PNG_EMPTY); #endif /* pCAL || sCAL */ #if defined(PNG_READ_GAMMA_SUPPORTED) ||\ @@ -2019,14 +2250,17 @@ PNG_INTERNAL_FUNCTION(int,png_check_fp_string,(png_const_charp string, * for overflow, true (1) if no overflow, in which case *res * holds the result. */ -PNG_INTERNAL_FUNCTION(int,png_muldiv,(png_fixed_point_p res, png_fixed_point a, - png_int_32 multiplied_by, png_int_32 divided_by),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_muldiv, + (png_fixed_point_p res, png_fixed_point a, + png_int_32 multiplied_by, png_int_32 divided_by), + PNG_EMPTY); /* Calculate a reciprocal - used for gamma values. This returns * 0 if the argument is 0 in order to maintain an undefined value; * there are no warnings. */ -PNG_INTERNAL_FUNCTION(png_fixed_point,png_reciprocal,(png_fixed_point a), +PNG_INTERNAL_FUNCTION(png_fixed_point, png_reciprocal, + (png_fixed_point a), PNG_EMPTY); #endif @@ -2035,11 +2269,13 @@ PNG_INTERNAL_FUNCTION(png_fixed_point,png_reciprocal,(png_fixed_point a), * values. Accuracy is suitable for gamma calculations but this is * not exact - use png_muldiv for that. Only required at present on read. */ -PNG_INTERNAL_FUNCTION(png_fixed_point,png_reciprocal2,(png_fixed_point a, - png_fixed_point b),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(png_fixed_point, png_reciprocal2, + (png_fixed_point a, png_fixed_point b), + PNG_EMPTY); /* Return true if the gamma value is significantly different from 1.0 */ -PNG_INTERNAL_FUNCTION(int,png_gamma_significant,(png_fixed_point gamma_value), +PNG_INTERNAL_FUNCTION(int, png_gamma_significant, + (png_fixed_point gamma_value), PNG_EMPTY); /* PNGv3: 'resolve' the file gamma according to the new PNGv3 rules for colour @@ -2050,8 +2286,9 @@ PNG_INTERNAL_FUNCTION(int,png_gamma_significant,(png_fixed_point gamma_value), * transforms. For this reason a gamma specified by png_set_gamma always takes * precedence. */ -PNG_INTERNAL_FUNCTION(png_fixed_point,png_resolve_file_gamma, - (png_const_structrp png_ptr),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(png_fixed_point, png_resolve_file_gamma, + (png_const_structrp png_ptr), + PNG_EMPTY); /* Internal fixed point gamma correction. These APIs are called as * required to convert single values - they don't need to be fast, @@ -2060,37 +2297,45 @@ PNG_INTERNAL_FUNCTION(png_fixed_point,png_resolve_file_gamma, * While the input is an 'unsigned' value it must actually be the * correct bit value - 0..255 or 0..65535 as required. */ -PNG_INTERNAL_FUNCTION(png_uint_16,png_gamma_correct,(png_structrp png_ptr, - unsigned int value, png_fixed_point gamma_value),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(png_uint_16,png_gamma_16bit_correct,(unsigned int value, - png_fixed_point gamma_value),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(png_byte,png_gamma_8bit_correct,(unsigned int value, - png_fixed_point gamma_value),PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_destroy_gamma_table,(png_structrp png_ptr), +PNG_INTERNAL_FUNCTION(png_uint_16, png_gamma_correct, + (png_structrp png_ptr, unsigned int value, png_fixed_point gamma_value), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(png_uint_16, png_gamma_16bit_correct, + (unsigned int value, png_fixed_point gamma_value), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(png_byte, png_gamma_8bit_correct, + (unsigned int value, png_fixed_point gamma_value), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_destroy_gamma_table, + (png_structrp png_ptr), + PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_build_gamma_table, + (png_structrp png_ptr, int bit_depth), PNG_EMPTY); -PNG_INTERNAL_FUNCTION(void,png_build_gamma_table,(png_structrp png_ptr, - int bit_depth),PNG_EMPTY); #endif /* READ_GAMMA */ #ifdef PNG_READ_RGB_TO_GRAY_SUPPORTED /* Set the RGB coefficients if not already set by png_set_rgb_to_gray */ -PNG_INTERNAL_FUNCTION(void,png_set_rgb_coefficients,(png_structrp png_ptr), +PNG_INTERNAL_FUNCTION(void, png_set_rgb_coefficients, + (png_structrp png_ptr), PNG_EMPTY); #endif #if defined(PNG_cHRM_SUPPORTED) || defined(PNG_READ_RGB_TO_GRAY_SUPPORTED) -PNG_INTERNAL_FUNCTION(int,png_XYZ_from_xy,(png_XYZ *XYZ, const png_xy *xy), +PNG_INTERNAL_FUNCTION(int, png_XYZ_from_xy, + (png_XYZ *XYZ, const png_xy *xy), PNG_EMPTY); #endif /* cHRM || READ_RGB_TO_GRAY */ #ifdef PNG_COLORSPACE_SUPPORTED -PNG_INTERNAL_FUNCTION(int,png_xy_from_XYZ,(png_xy *xy, const png_XYZ *XYZ), +PNG_INTERNAL_FUNCTION(int, png_xy_from_XYZ, + (png_xy *xy, const png_XYZ *XYZ), PNG_EMPTY); #endif /* SIMPLIFIED READ/WRITE SUPPORT */ #if defined(PNG_SIMPLIFIED_READ_SUPPORTED) ||\ - defined(PNG_SIMPLIFIED_WRITE_SUPPORTED) + defined(PNG_SIMPLIFIED_WRITE_SUPPORTED) /* The internal structure that png_image::opaque points to. */ typedef struct png_control { @@ -2118,28 +2363,34 @@ typedef struct png_control * errors that might occur. Returns true on success, false on failure (either * of the function or as a result of a png_error.) */ -PNG_INTERNAL_CALLBACK(void,png_safe_error,(png_structp png_ptr, - png_const_charp error_message),PNG_NORETURN); +PNG_INTERNAL_CALLBACK(void, png_safe_error, + (png_structp png_ptr, png_const_charp error_message), + PNG_NORETURN); #ifdef PNG_WARNINGS_SUPPORTED -PNG_INTERNAL_CALLBACK(void,png_safe_warning,(png_structp png_ptr, - png_const_charp warning_message),PNG_EMPTY); +PNG_INTERNAL_CALLBACK(void, png_safe_warning, + (png_structp png_ptr, png_const_charp warning_message), + PNG_EMPTY); #else # define png_safe_warning 0/*dummy argument*/ #endif -PNG_INTERNAL_FUNCTION(int,png_safe_execute,(png_imagep image, - int (*function)(png_voidp), png_voidp arg),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_safe_execute, + (png_imagep image, int (*function)(png_voidp), png_voidp arg), + PNG_EMPTY); /* Utility to log an error; this also cleans up the png_image; the function * always returns 0 (false). */ -PNG_INTERNAL_FUNCTION(int,png_image_error,(png_imagep image, - png_const_charp error_message),PNG_EMPTY); +PNG_INTERNAL_FUNCTION(int, png_image_error, + (png_imagep image, png_const_charp error_message), + PNG_EMPTY); #ifndef PNG_SIMPLIFIED_READ_SUPPORTED /* png_image_free is used by the write code but not exported */ -PNG_INTERNAL_FUNCTION(void, png_image_free, (png_imagep image), PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, png_image_free, + (png_imagep image), + PNG_EMPTY); #endif /* !SIMPLIFIED_READ */ #endif /* SIMPLIFIED READ/WRITE */ @@ -2150,8 +2401,9 @@ PNG_INTERNAL_FUNCTION(void, png_image_free, (png_imagep image), PNG_EMPTY); * the generic code is used. */ #ifdef PNG_FILTER_OPTIMIZATIONS -PNG_INTERNAL_FUNCTION(void, PNG_FILTER_OPTIMIZATIONS, (png_structp png_ptr, - unsigned int bpp), PNG_EMPTY); +PNG_INTERNAL_FUNCTION(void, PNG_FILTER_OPTIMIZATIONS, + (png_structp png_ptr, unsigned int bpp), + PNG_EMPTY); /* Just declare the optimization that will be used */ #else /* List *all* the possible optimizations here - this branch is required if @@ -2160,32 +2412,44 @@ PNG_INTERNAL_FUNCTION(void, PNG_FILTER_OPTIMIZATIONS, (png_structp png_ptr, */ # if PNG_ARM_NEON_OPT > 0 PNG_INTERNAL_FUNCTION(void, png_init_filter_functions_neon, - (png_structp png_ptr, unsigned int bpp), PNG_EMPTY); + (png_structp png_ptr, unsigned int bpp), + PNG_EMPTY); #endif #if PNG_MIPS_MSA_IMPLEMENTATION == 1 PNG_INTERNAL_FUNCTION(void, png_init_filter_functions_mips, - (png_structp png_ptr, unsigned int bpp), PNG_EMPTY); + (png_structp png_ptr, unsigned int bpp), + PNG_EMPTY); #endif # if PNG_MIPS_MMI_IMPLEMENTATION > 0 PNG_INTERNAL_FUNCTION(void, png_init_filter_functions_mips, - (png_structp png_ptr, unsigned int bpp), PNG_EMPTY); + (png_structp png_ptr, unsigned int bpp), + PNG_EMPTY); # endif # if PNG_INTEL_SSE_IMPLEMENTATION > 0 PNG_INTERNAL_FUNCTION(void, png_init_filter_functions_sse2, - (png_structp png_ptr, unsigned int bpp), PNG_EMPTY); + (png_structp png_ptr, unsigned int bpp), + PNG_EMPTY); # endif #endif #if PNG_LOONGARCH_LSX_OPT > 0 PNG_INTERNAL_FUNCTION(void, png_init_filter_functions_lsx, - (png_structp png_ptr, unsigned int bpp), PNG_EMPTY); + (png_structp png_ptr, unsigned int bpp), + PNG_EMPTY); #endif -PNG_INTERNAL_FUNCTION(png_uint_32, png_check_keyword, (png_structrp png_ptr, - png_const_charp key, png_bytep new_key), PNG_EMPTY); +# if PNG_RISCV_RVV_IMPLEMENTATION == 1 +PNG_INTERNAL_FUNCTION(void, png_init_filter_functions_rvv, + (png_structp png_ptr, unsigned int bpp), + PNG_EMPTY); +#endif + +PNG_INTERNAL_FUNCTION(png_uint_32, png_check_keyword, + (png_structrp png_ptr, png_const_charp key, png_bytep new_key), + PNG_EMPTY); #if PNG_ARM_NEON_IMPLEMENTATION == 1 PNG_INTERNAL_FUNCTION(void, @@ -2219,4 +2483,3 @@ PNG_INTERNAL_FUNCTION(int, #endif #endif /* PNG_VERSION_INFO_ONLY */ -#endif /* PNGPRIV_H */ diff --git a/icecat/media/libpng/pngread.c b/icecat/media/libpng/pngread.c index a9d11ef498..537abd9a48 100644 --- a/icecat/media/libpng/pngread.c +++ b/icecat/media/libpng/pngread.c @@ -1,6 +1,6 @@ /* pngread.c - read a PNG file * - * Copyright (c) 2018-2025 Cosmin Truta + * Copyright (c) 2018-2026 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -23,7 +23,8 @@ /* Create a PNG structure for reading, and allocate any memory needed. */ PNG_FUNCTION(png_structp,PNGAPI png_create_read_struct,(png_const_charp user_png_ver, png_voidp error_ptr, - png_error_ptr error_fn, png_error_ptr warn_fn),PNG_ALLOCATED) + png_error_ptr error_fn, png_error_ptr warn_fn), + PNG_ALLOCATED) { #ifndef PNG_USER_MEM_SUPPORTED png_structp png_ptr = png_create_png_struct(user_png_ver, error_ptr, @@ -39,7 +40,8 @@ png_create_read_struct,(png_const_charp user_png_ver, png_voidp error_ptr, PNG_FUNCTION(png_structp,PNGAPI png_create_read_struct_2,(png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn, png_voidp mem_ptr, - png_malloc_ptr malloc_fn, png_free_ptr free_fn),PNG_ALLOCATED) + png_malloc_ptr malloc_fn, png_free_ptr free_fn), + PNG_ALLOCATED) { png_structp png_ptr = png_create_png_struct(user_png_ver, error_ptr, error_fn, warn_fn, mem_ptr, malloc_fn, free_fn); @@ -599,7 +601,6 @@ png_read_row(png_structrp png_ptr, png_bytep row, png_bytep dsp_row) if (png_ptr->read_row_fn != NULL) (*(png_ptr->read_row_fn))(png_ptr, png_ptr->row_number, png_ptr->pass); - } #endif /* SEQUENTIAL_READ */ @@ -782,7 +783,12 @@ png_read_end(png_structrp png_ptr, png_inforp info_ptr) png_uint_32 chunk_name = png_ptr->chunk_name; if (chunk_name != png_IDAT) - png_ptr->mode |= PNG_HAVE_CHUNK_AFTER_IDAT; + { + /* These flags must be set consistently for all non-IDAT chunks, + * including the unknown chunks. + */ + png_ptr->mode |= PNG_HAVE_CHUNK_AFTER_IDAT | PNG_AFTER_IDAT; + } if (chunk_name == png_IEND) png_handle_chunk(png_ptr, info_ptr, length); @@ -889,7 +895,8 @@ png_read_destroy(png_structrp png_ptr) #endif #if defined(PNG_READ_EXPAND_SUPPORTED) && \ - defined(PNG_ARM_NEON_IMPLEMENTATION) + (defined(PNG_ARM_NEON_IMPLEMENTATION) || \ + defined(PNG_RISCV_RVV_IMPLEMENTATION)) png_free(png_ptr, png_ptr->riffled_palette); png_ptr->riffled_palette = NULL; #endif @@ -941,7 +948,7 @@ png_set_read_status_fn(png_structrp png_ptr, png_read_status_ptr read_row_fn) #ifdef PNG_INFO_IMAGE_SUPPORTED void PNGAPI png_read_png(png_structrp png_ptr, png_inforp info_ptr, - int transforms, voidp params) + int transforms, png_voidp params) { png_debug(1, "in png_read_png"); @@ -1178,19 +1185,20 @@ png_read_png(png_structrp png_ptr, png_inforp info_ptr, typedef struct { - /* Arguments: */ + /* Arguments */ png_imagep image; - png_voidp buffer; + png_voidp buffer; png_int_32 row_stride; - png_voidp colormap; + png_voidp colormap; png_const_colorp background; - /* Local variables: */ - png_voidp local_row; - png_voidp first_row; - ptrdiff_t row_bytes; /* step between rows */ - int file_encoding; /* E_ values above */ - png_fixed_point gamma_to_linear; /* For P_FILE, reciprocal of gamma */ - int colormap_processing; /* PNG_CMAP_ values above */ + + /* Instance variables */ + png_voidp local_row; + png_voidp first_row; + ptrdiff_t row_step; /* step between rows */ + int file_encoding; /* E_ values above */ + png_fixed_point gamma_to_linear; /* For P_FILE, reciprocal of gamma */ + int colormap_processing; /* PNG_CMAP_ values above */ } png_image_read_control; /* Do all the *safe* initialization - 'safe' means that png_error won't be @@ -1408,7 +1416,7 @@ png_image_read_header(png_voidp argument) #ifdef PNG_STDIO_SUPPORTED int PNGAPI -png_image_begin_read_from_stdio(png_imagep image, FILE* file) +png_image_begin_read_from_stdio(png_imagep image, FILE *file) { if (image != NULL && image->version == PNG_IMAGE_VERSION) { @@ -2911,17 +2919,17 @@ png_image_read_and_map(png_voidp argument) } { - png_uint_32 height = image->height; - png_uint_32 width = image->width; - int proc = display->colormap_processing; - png_bytep first_row = png_voidcast(png_bytep, display->first_row); - ptrdiff_t step_row = display->row_bytes; + png_uint_32 height = image->height; + png_uint_32 width = image->width; + int proc = display->colormap_processing; + png_bytep first_row = png_voidcast(png_bytep, display->first_row); + ptrdiff_t row_step = display->row_step; int pass; for (pass = 0; pass < passes; ++pass) { - unsigned int startx, stepx, stepy; - png_uint_32 y; + unsigned int startx, stepx, stepy; + png_uint_32 y; if (png_ptr->interlaced == PNG_INTERLACE_ADAM7) { @@ -2945,7 +2953,7 @@ png_image_read_and_map(png_voidp argument) for (; ylocal_row); - png_bytep outrow = first_row + y * step_row; + png_bytep outrow = first_row + y * row_step; png_const_bytep end_row = outrow + width; /* Read read the libpng data into the temporary buffer. */ @@ -3154,20 +3162,20 @@ png_image_read_colormapped(png_voidp argument) */ { png_voidp first_row = display->buffer; - ptrdiff_t row_bytes = display->row_stride; + ptrdiff_t row_step = display->row_stride; - /* The following expression is designed to work correctly whether it gives - * a signed or an unsigned result. + /* The following adjustment is to ensure that calculations are correct, + * regardless whether row_step is positive or negative. */ - if (row_bytes < 0) + if (row_step < 0) { char *ptr = png_voidcast(char*, first_row); - ptr += (image->height-1) * (-row_bytes); + ptr += (image->height-1) * (-row_step); first_row = png_voidcast(png_voidp, ptr); } display->first_row = first_row; - display->row_bytes = row_bytes; + display->row_step = row_step; } if (passes == 0) @@ -3185,17 +3193,17 @@ png_image_read_colormapped(png_voidp argument) else { - png_alloc_size_t row_bytes = (png_alloc_size_t)display->row_bytes; + ptrdiff_t row_step = display->row_step; while (--passes >= 0) { - png_uint_32 y = image->height; - png_bytep row = png_voidcast(png_bytep, display->first_row); + png_uint_32 y = image->height; + png_bytep row = png_voidcast(png_bytep, display->first_row); for (; y > 0; --y) { png_read_row(png_ptr, row, NULL); - row += row_bytes; + row += row_step; } } @@ -3203,6 +3211,61 @@ png_image_read_colormapped(png_voidp argument) } } +/* Row reading for interlaced 16-to-8 bit depth conversion with local buffer. */ +static int +png_image_read_direct_scaled(png_voidp argument) +{ + png_image_read_control *display = png_voidcast(png_image_read_control*, + argument); + png_imagep image = display->image; + png_structrp png_ptr = image->opaque->png_ptr; + png_inforp info_ptr = image->opaque->info_ptr; + png_bytep local_row = png_voidcast(png_bytep, display->local_row); + png_bytep first_row = png_voidcast(png_bytep, display->first_row); + ptrdiff_t row_step = display->row_step; + size_t row_bytes = png_get_rowbytes(png_ptr, info_ptr); + int passes; + + /* Handle interlacing. */ + switch (png_ptr->interlaced) + { + case PNG_INTERLACE_NONE: + passes = 1; + break; + + case PNG_INTERLACE_ADAM7: + passes = PNG_INTERLACE_ADAM7_PASSES; + break; + + default: + png_error(png_ptr, "unknown interlace type"); + } + + /* Read each pass using local_row as intermediate buffer. */ + while (--passes >= 0) + { + png_uint_32 y = image->height; + png_bytep output_row = first_row; + + for (; y > 0; --y) + { + /* Read into local_row (gets transformed 8-bit data). */ + png_read_row(png_ptr, local_row, NULL); + + /* Copy from local_row to user buffer. + * Use row_bytes (i.e. the actual size in bytes of the row data) for + * copying into output_row. Use row_step for advancing output_row, + * to respect the caller's stride for padding or negative (bottom-up) + * layouts. + */ + memcpy(output_row, local_row, row_bytes); + output_row += row_step; + } + } + + return 1; +} + /* Just the row reading part of png_image_read. */ static int png_image_read_composite(png_voidp argument) @@ -3228,17 +3291,18 @@ png_image_read_composite(png_voidp argument) } { - png_uint_32 height = image->height; - png_uint_32 width = image->width; - ptrdiff_t step_row = display->row_bytes; + png_uint_32 height = image->height; + png_uint_32 width = image->width; + ptrdiff_t row_step = display->row_step; unsigned int channels = (image->format & PNG_FORMAT_FLAG_COLOR) != 0 ? 3 : 1; + int optimize_alpha = (png_ptr->flags & PNG_FLAG_OPTIMIZE_ALPHA) != 0; int pass; for (pass = 0; pass < passes; ++pass) { - unsigned int startx, stepx, stepy; - png_uint_32 y; + unsigned int startx, stepx, stepy; + png_uint_32 y; if (png_ptr->interlaced == PNG_INTERLACE_ADAM7) { @@ -3270,7 +3334,7 @@ png_image_read_composite(png_voidp argument) png_read_row(png_ptr, inrow, NULL); outrow = png_voidcast(png_bytep, display->first_row); - outrow += y * step_row; + outrow += y * row_step; end_row = outrow + width * channels; /* Now do the composition on each pixel in this row. */ @@ -3289,20 +3353,44 @@ png_image_read_composite(png_voidp argument) if (alpha < 255) /* else just use component */ { - /* This is PNG_OPTIMIZED_ALPHA, the component value - * is a linear 8-bit value. Combine this with the - * current outrow[c] value which is sRGB encoded. - * Arithmetic here is 16-bits to preserve the output - * values correctly. - */ - component *= 257*255; /* =65535 */ - component += (255-alpha)*png_sRGB_table[outrow[c]]; + if (optimize_alpha != 0) + { + /* This is PNG_OPTIMIZED_ALPHA, the component value + * is a linear 8-bit value. Combine this with the + * current outrow[c] value which is sRGB encoded. + * Arithmetic here is 16-bits to preserve the output + * values correctly. + */ + component *= 257*255; /* =65535 */ + component += (255-alpha)*png_sRGB_table[outrow[c]]; - /* So 'component' is scaled by 255*65535 and is - * therefore appropriate for the sRGB to linear - * conversion table. - */ - component = PNG_sRGB_FROM_LINEAR(component); + /* Clamp to the valid range to defend against + * unforeseen cases where the data might be sRGB + * instead of linear premultiplied. + * (Belt-and-suspenders for CVE-2025-66293.) + */ + if (component > 255*65535) + component = 255*65535; + + /* So 'component' is scaled by 255*65535 and is + * therefore appropriate for the sRGB-to-linear + * conversion table. + */ + component = PNG_sRGB_FROM_LINEAR(component); + } + else + { + /* Compositing was already done on the palette + * entries. The data is sRGB premultiplied on black. + * Composite with the background in sRGB space. + * This is not gamma-correct, but matches what was + * done to the palette. + */ + png_uint_32 background = outrow[c]; + component += ((255-alpha) * background + 127) / 255; + if (component > 255) + component = 255; + } } outrow[c] = (png_byte)component; @@ -3391,12 +3479,12 @@ png_image_read_background(png_voidp argument) */ { png_bytep first_row = png_voidcast(png_bytep, display->first_row); - ptrdiff_t step_row = display->row_bytes; + ptrdiff_t row_step = display->row_step; for (pass = 0; pass < passes; ++pass) { - unsigned int startx, stepx, stepy; - png_uint_32 y; + unsigned int startx, stepx, stepy; + png_uint_32 y; if (png_ptr->interlaced == PNG_INTERLACE_ADAM7) { @@ -3423,7 +3511,7 @@ png_image_read_background(png_voidp argument) { png_bytep inrow = png_voidcast(png_bytep, display->local_row); - png_bytep outrow = first_row + y * step_row; + png_bytep outrow = first_row + y * row_step; png_const_bytep end_row = outrow + width; /* Read the row, which is packed: */ @@ -3468,7 +3556,7 @@ png_image_read_background(png_voidp argument) { png_bytep inrow = png_voidcast(png_bytep, display->local_row); - png_bytep outrow = first_row + y * step_row; + png_bytep outrow = first_row + y * row_step; png_const_bytep end_row = outrow + width; /* Read the row, which is packed: */ @@ -3514,9 +3602,9 @@ png_image_read_background(png_voidp argument) png_uint_16p first_row = png_voidcast(png_uint_16p, display->first_row); /* The division by two is safe because the caller passed in a - * stride which was multiplied by 2 (below) to get row_bytes. + * stride which was multiplied by 2 (below) to get row_step. */ - ptrdiff_t step_row = display->row_bytes / 2; + ptrdiff_t row_step = display->row_step / 2; unsigned int preserve_alpha = (image->format & PNG_FORMAT_FLAG_ALPHA) != 0; unsigned int outchannels = 1U+preserve_alpha; @@ -3530,8 +3618,8 @@ png_image_read_background(png_voidp argument) for (pass = 0; pass < passes; ++pass) { - unsigned int startx, stepx, stepy; - png_uint_32 y; + unsigned int startx, stepx, stepy; + png_uint_32 y; /* The 'x' start and step are adjusted to output components here. */ @@ -3558,7 +3646,7 @@ png_image_read_background(png_voidp argument) for (; yinterlaced != 0) + do_local_scale = 1; + } + change &= ~PNG_FORMAT_FLAG_LINEAR; } @@ -3986,23 +4083,23 @@ png_image_read_direct(png_voidp argument) */ { png_voidp first_row = display->buffer; - ptrdiff_t row_bytes = display->row_stride; + ptrdiff_t row_step = display->row_stride; if (linear != 0) - row_bytes *= 2; + row_step *= 2; - /* The following expression is designed to work correctly whether it gives - * a signed or an unsigned result. + /* The following adjustment is to ensure that calculations are correct, + * regardless whether row_step is positive or negative. */ - if (row_bytes < 0) + if (row_step < 0) { char *ptr = png_voidcast(char*, first_row); - ptr += (image->height-1) * (-row_bytes); + ptr += (image->height - 1) * (-row_step); first_row = png_voidcast(png_voidp, ptr); } display->first_row = first_row; - display->row_bytes = row_bytes; + display->row_step = row_step; } if (do_local_compose != 0) @@ -4031,19 +4128,37 @@ png_image_read_direct(png_voidp argument) return result; } + else if (do_local_scale != 0) + { + /* For interlaced 16-to-8 conversion, use an intermediate row buffer + * to avoid buffer overflows in png_combine_row. The local_row is sized + * for the transformed (8-bit) output, preventing the overflow that would + * occur if png_combine_row wrote 16-bit data directly to the user buffer. + */ + int result; + png_voidp row = png_malloc(png_ptr, png_get_rowbytes(png_ptr, info_ptr)); + + display->local_row = row; + result = png_safe_execute(image, png_image_read_direct_scaled, display); + display->local_row = NULL; + png_free(png_ptr, row); + + return result; + } + else { - png_alloc_size_t row_bytes = (png_alloc_size_t)display->row_bytes; + ptrdiff_t row_step = display->row_step; while (--passes >= 0) { - png_uint_32 y = image->height; - png_bytep row = png_voidcast(png_bytep, display->first_row); + png_uint_32 y = image->height; + png_bytep row = png_voidcast(png_bytep, display->first_row); for (; y > 0; --y) { png_read_row(png_ptr, row, NULL); - row += row_bytes; + row += row_step; } } diff --git a/icecat/media/libpng/pngrio.c b/icecat/media/libpng/pngrio.c index 3b137f275f..b4a216161b 100644 --- a/icecat/media/libpng/pngrio.c +++ b/icecat/media/libpng/pngrio.c @@ -1,6 +1,6 @@ /* pngrio.c - functions for data input * - * Copyright (c) 2018 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -56,7 +56,7 @@ png_default_read_data(png_structp png_ptr, png_bytep data, size_t length) /* fread() returns 0 on error, so it is OK to store this in a size_t * instead of an int, which is what fread() actually returns. */ - check = fread(data, 1, length, png_voidcast(png_FILE_p, png_ptr->io_ptr)); + check = fread(data, 1, length, png_voidcast(FILE *, png_ptr->io_ptr)); if (check != length) png_error(png_ptr, "Read Error"); diff --git a/icecat/media/libpng/pngrtran.c b/icecat/media/libpng/pngrtran.c index a6ce30a523..1fce9af121 100644 --- a/icecat/media/libpng/pngrtran.c +++ b/icecat/media/libpng/pngrtran.c @@ -1,6 +1,6 @@ /* pngrtran.c - transforms the data in a row for PNG readers * - * Copyright (c) 2018-2024 Cosmin Truta + * Copyright (c) 2018-2026 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -28,6 +28,12 @@ # endif #endif +#ifdef PNG_RISCV_RVV_IMPLEMENTATION +# if PNG_RISCV_RVV_IMPLEMENTATION == 1 +# define PNG_RISCV_RVV_INTRINSICS_AVAILABLE +# endif +#endif + #ifdef PNG_READ_SUPPORTED /* Set the action on getting a CRC error for an ancillary or critical chunk. */ @@ -495,9 +501,19 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette, { int i; + /* Initialize the array to index colors. + * + * Ensure quantize_index can fit 256 elements (PNG_MAX_PALETTE_LENGTH) + * rather than num_palette elements. This is to prevent buffer overflows + * caused by malformed PNG files with out-of-range palette indices. + * + * Be careful to avoid leaking memory. Applications are allowed to call + * this function more than once per png_struct. + */ + png_free(png_ptr, png_ptr->quantize_index); png_ptr->quantize_index = (png_bytep)png_malloc(png_ptr, - (png_alloc_size_t)num_palette); - for (i = 0; i < num_palette; i++) + PNG_MAX_PALETTE_LENGTH); + for (i = 0; i < PNG_MAX_PALETTE_LENGTH; i++) png_ptr->quantize_index[i] = (png_byte)i; } @@ -509,15 +525,14 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette, * Perhaps not the best solution, but good enough. */ - int i; + png_bytep quantize_sort; + int i, j; - /* Initialize an array to sort colors */ - png_ptr->quantize_sort = (png_bytep)png_malloc(png_ptr, + /* Initialize the local array to sort colors. */ + quantize_sort = (png_bytep)png_malloc(png_ptr, (png_alloc_size_t)num_palette); - - /* Initialize the quantize_sort array */ for (i = 0; i < num_palette; i++) - png_ptr->quantize_sort[i] = (png_byte)i; + quantize_sort[i] = (png_byte)i; /* Find the least used palette entries by starting a * bubble sort, and running it until we have sorted @@ -529,19 +544,18 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette, for (i = num_palette - 1; i >= maximum_colors; i--) { int done; /* To stop early if the list is pre-sorted */ - int j; done = 1; for (j = 0; j < i; j++) { - if (histogram[png_ptr->quantize_sort[j]] - < histogram[png_ptr->quantize_sort[j + 1]]) + if (histogram[quantize_sort[j]] + < histogram[quantize_sort[j + 1]]) { png_byte t; - t = png_ptr->quantize_sort[j]; - png_ptr->quantize_sort[j] = png_ptr->quantize_sort[j + 1]; - png_ptr->quantize_sort[j + 1] = t; + t = quantize_sort[j]; + quantize_sort[j] = quantize_sort[j + 1]; + quantize_sort[j + 1] = t; done = 0; } } @@ -553,18 +567,18 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette, /* Swap the palette around, and set up a table, if necessary */ if (full_quantize != 0) { - int j = num_palette; + j = num_palette; /* Put all the useful colors within the max, but don't * move the others. */ for (i = 0; i < maximum_colors; i++) { - if ((int)png_ptr->quantize_sort[i] >= maximum_colors) + if ((int)quantize_sort[i] >= maximum_colors) { do j--; - while ((int)png_ptr->quantize_sort[j] >= maximum_colors); + while ((int)quantize_sort[j] >= maximum_colors); palette[i] = palette[j]; } @@ -572,7 +586,7 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette, } else { - int j = num_palette; + j = num_palette; /* Move all the used colors inside the max limit, and * develop a translation table. @@ -580,13 +594,13 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette, for (i = 0; i < maximum_colors; i++) { /* Only move the colors we need to */ - if ((int)png_ptr->quantize_sort[i] >= maximum_colors) + if ((int)quantize_sort[i] >= maximum_colors) { png_color tmp_color; do j--; - while ((int)png_ptr->quantize_sort[j] >= maximum_colors); + while ((int)quantize_sort[j] >= maximum_colors); tmp_color = palette[j]; palette[j] = palette[i]; @@ -624,8 +638,7 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette, } } } - png_free(png_ptr, png_ptr->quantize_sort); - png_ptr->quantize_sort = NULL; + png_free(png_ptr, quantize_sort); } else { @@ -695,8 +708,8 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette, break; t->next = hash[d]; - t->left = (png_byte)i; - t->right = (png_byte)j; + t->left = png_ptr->palette_to_index[i]; + t->right = png_ptr->palette_to_index[j]; hash[d] = t; } } @@ -1107,8 +1120,8 @@ png_set_rgb_to_gray(png_structrp png_ptr, int error_action, double red, #if defined(PNG_READ_USER_TRANSFORM_SUPPORTED) || \ defined(PNG_WRITE_USER_TRANSFORM_SUPPORTED) void PNGAPI -png_set_read_user_transform_fn(png_structrp png_ptr, png_user_transform_ptr - read_user_transform_fn) +png_set_read_user_transform_fn(png_structrp png_ptr, + png_user_transform_ptr read_user_transform_fn) { png_debug(1, "in png_set_read_user_transform_fn"); @@ -1768,19 +1781,51 @@ png_init_read_transformations(png_structrp png_ptr) } else /* if (png_ptr->trans_alpha[i] != 0xff) */ { - png_byte v, w; + if ((png_ptr->flags & PNG_FLAG_OPTIMIZE_ALPHA) != 0) + { + /* Premultiply only: + * component = round((component * alpha) / 255) + */ + png_uint_32 component; - v = png_ptr->gamma_to_1[palette[i].red]; - png_composite(w, v, png_ptr->trans_alpha[i], back_1.red); - palette[i].red = png_ptr->gamma_from_1[w]; + component = png_ptr->gamma_to_1[palette[i].red]; + component = + (component * png_ptr->trans_alpha[i] + 128) / 255; + palette[i].red = png_ptr->gamma_from_1[component]; - v = png_ptr->gamma_to_1[palette[i].green]; - png_composite(w, v, png_ptr->trans_alpha[i], back_1.green); - palette[i].green = png_ptr->gamma_from_1[w]; + component = png_ptr->gamma_to_1[palette[i].green]; + component = + (component * png_ptr->trans_alpha[i] + 128) / 255; + palette[i].green = png_ptr->gamma_from_1[component]; - v = png_ptr->gamma_to_1[palette[i].blue]; - png_composite(w, v, png_ptr->trans_alpha[i], back_1.blue); - palette[i].blue = png_ptr->gamma_from_1[w]; + component = png_ptr->gamma_to_1[palette[i].blue]; + component = + (component * png_ptr->trans_alpha[i] + 128) / 255; + palette[i].blue = png_ptr->gamma_from_1[component]; + } + else + { + /* Composite with background color: + * component = + * alpha * component + (1 - alpha) * background + */ + png_byte v, w; + + v = png_ptr->gamma_to_1[palette[i].red]; + png_composite(w, v, + png_ptr->trans_alpha[i], back_1.red); + palette[i].red = png_ptr->gamma_from_1[w]; + + v = png_ptr->gamma_to_1[palette[i].green]; + png_composite(w, v, + png_ptr->trans_alpha[i], back_1.green); + palette[i].green = png_ptr->gamma_from_1[w]; + + v = png_ptr->gamma_to_1[palette[i].blue]; + png_composite(w, v, + png_ptr->trans_alpha[i], back_1.blue); + palette[i].blue = png_ptr->gamma_from_1[w]; + } } } else @@ -1798,6 +1843,7 @@ png_init_read_transformations(png_structrp png_ptr) * transformations elsewhere. */ png_ptr->transformations &= ~(PNG_COMPOSE | PNG_GAMMA); + png_ptr->flags &= ~PNG_FLAG_OPTIMIZE_ALPHA; } /* color_type == PNG_COLOR_TYPE_PALETTE */ /* if (png_ptr->background_gamma_type!=PNG_BACKGROUND_GAMMA_UNKNOWN) */ @@ -5003,13 +5049,8 @@ png_do_read_transformations(png_structrp png_ptr, png_row_infop row_info) #ifdef PNG_READ_QUANTIZE_SUPPORTED if ((png_ptr->transformations & PNG_QUANTIZE) != 0) - { png_do_quantize(row_info, png_ptr->row_buf + 1, png_ptr->palette_lookup, png_ptr->quantize_index); - - if (row_info->rowbytes == 0) - png_error(png_ptr, "png_do_quantize returned rowbytes=0"); - } #endif /* READ_QUANTIZE */ #ifdef PNG_READ_EXPAND_16_SUPPORTED diff --git a/icecat/media/libpng/pngrutil.c b/icecat/media/libpng/pngrutil.c index 29cb7a348e..a0c06fabae 100644 --- a/icecat/media/libpng/pngrutil.c +++ b/icecat/media/libpng/pngrutil.c @@ -1,6 +1,6 @@ /* pngrutil.c - utilities to read a PNG file * - * Copyright (c) 2018-2024 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -2391,7 +2391,7 @@ png_handle_tIME(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length) static png_handle_result_code /* PRIVATE */ png_handle_tEXt(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length) { - png_text text_info; + png_text text_info; png_bytep buffer; png_charp key; png_charp text; @@ -2417,10 +2417,6 @@ png_handle_tEXt(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length) } #endif - /* TODO: this doesn't work and shouldn't be necessary. */ - if ((png_ptr->mode & PNG_HAVE_IDAT) != 0) - png_ptr->mode |= PNG_AFTER_IDAT; - buffer = png_read_buffer(png_ptr, length+1); if (buffer == NULL) @@ -2468,8 +2464,8 @@ static png_handle_result_code /* PRIVATE */ png_handle_zTXt(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length) { png_const_charp errmsg = NULL; - png_bytep buffer; - png_uint_32 keyword_length; + png_bytep buffer; + png_uint_32 keyword_length; png_debug(1, "in png_handle_zTXt"); @@ -2491,10 +2487,6 @@ png_handle_zTXt(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length) } #endif - /* TODO: should not be necessary. */ - if ((png_ptr->mode & PNG_HAVE_IDAT) != 0) - png_ptr->mode |= PNG_AFTER_IDAT; - /* Note, "length" is sufficient here; we won't be adding * a null terminator later. The limit check in png_handle_chunk should be * sufficient. @@ -2611,10 +2603,6 @@ png_handle_iTXt(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length) } #endif - /* TODO: should not be necessary. */ - if ((png_ptr->mode & PNG_HAVE_IDAT) != 0) - png_ptr->mode |= PNG_AFTER_IDAT; - buffer = png_read_buffer(png_ptr, length+1); if (buffer == NULL) diff --git a/icecat/media/libpng/pngset.c b/icecat/media/libpng/pngset.c index 93e01c3a4b..1f431c5e9a 100644 --- a/icecat/media/libpng/pngset.c +++ b/icecat/media/libpng/pngset.c @@ -300,17 +300,14 @@ png_set_mDCV(png_const_structrp png_ptr, png_inforp info_ptr, double maxDL, double minDL) { png_set_mDCV_fixed(png_ptr, info_ptr, - /* The ITU approach is to scale by 50,000, not 100,000 so just divide - * the input values by 2 and use png_fixed: - */ - png_fixed(png_ptr, white_x / 2, "png_set_mDCV(white(x))"), - png_fixed(png_ptr, white_y / 2, "png_set_mDCV(white(y))"), - png_fixed(png_ptr, red_x / 2, "png_set_mDCV(red(x))"), - png_fixed(png_ptr, red_y / 2, "png_set_mDCV(red(y))"), - png_fixed(png_ptr, green_x / 2, "png_set_mDCV(green(x))"), - png_fixed(png_ptr, green_y / 2, "png_set_mDCV(green(y))"), - png_fixed(png_ptr, blue_x / 2, "png_set_mDCV(blue(x))"), - png_fixed(png_ptr, blue_y / 2, "png_set_mDCV(blue(y))"), + png_fixed(png_ptr, white_x, "png_set_mDCV(white(x))"), + png_fixed(png_ptr, white_y, "png_set_mDCV(white(y))"), + png_fixed(png_ptr, red_x, "png_set_mDCV(red(x))"), + png_fixed(png_ptr, red_y, "png_set_mDCV(red(y))"), + png_fixed(png_ptr, green_x, "png_set_mDCV(green(x))"), + png_fixed(png_ptr, green_y, "png_set_mDCV(green(y))"), + png_fixed(png_ptr, blue_x, "png_set_mDCV(blue(x))"), + png_fixed(png_ptr, blue_y, "png_set_mDCV(blue(y))"), png_fixed_ITU(png_ptr, maxDL, "png_set_mDCV(maxDL)"), png_fixed_ITU(png_ptr, minDL, "png_set_mDCV(minDL)")); } diff --git a/icecat/media/libpng/pngstruct.h b/icecat/media/libpng/pngstruct.h index f3ed832f81..f3ce353d8c 100644 --- a/icecat/media/libpng/pngstruct.h +++ b/icecat/media/libpng/pngstruct.h @@ -1,6 +1,6 @@ -/* pngstruct.h - header file for PNG reference library +/* pngstruct.h - internal structures for libpng * - * Copyright (c) 2018-2022 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -10,11 +10,9 @@ * and license in png.h */ -/* The structure that holds the information to read and write PNG files. - * The only people who need to care about what is inside of this are the - * people who will be modifying the library for their own special needs. - * It should NOT be accessed directly by an application. - */ +#ifndef PNGPRIV_H +# error This file must not be included by applications; please include +#endif #ifndef PNGSTRUCT_H #define PNGSTRUCT_H @@ -377,7 +375,8 @@ struct png_struct_def /* New member added in libpng-1.6.36 */ #if defined(PNG_READ_EXPAND_SUPPORTED) && \ - defined(PNG_ARM_NEON_IMPLEMENTATION) + (defined(PNG_ARM_NEON_IMPLEMENTATION) || \ + defined(PNG_RISCV_RVV_IMPLEMENTATION)) png_bytep riffled_palette; /* buffer for accelerated palette expansion */ #endif @@ -427,7 +426,6 @@ struct png_struct_def #ifdef PNG_READ_QUANTIZE_SUPPORTED /* The following three members were added at version 1.0.14 and 1.2.4 */ - png_bytep quantize_sort; /* working sort array */ png_bytep index_to_palette; /* where the original index currently is in the palette */ png_bytep palette_to_index; /* which original index points to this diff --git a/icecat/media/libpng/pngtrans.c b/icecat/media/libpng/pngtrans.c index 222b4987f9..19f5c641b2 100644 --- a/icecat/media/libpng/pngtrans.c +++ b/icecat/media/libpng/pngtrans.c @@ -802,8 +802,8 @@ png_do_check_palette_indexes(png_structrp png_ptr, png_row_infop row_info) defined(PNG_WRITE_USER_TRANSFORM_SUPPORTED) #ifdef PNG_USER_TRANSFORM_PTR_SUPPORTED void PNGAPI -png_set_user_transform_info(png_structrp png_ptr, png_voidp - user_transform_ptr, int user_transform_depth, int user_transform_channels) +png_set_user_transform_info(png_structrp png_ptr, png_voidp user_transform_ptr, + int user_transform_depth, int user_transform_channels) { png_debug(1, "in png_set_user_transform_info"); diff --git a/icecat/media/libpng/pngwio.c b/icecat/media/libpng/pngwio.c index 38c9c006cb..96a3187ff0 100644 --- a/icecat/media/libpng/pngwio.c +++ b/icecat/media/libpng/pngwio.c @@ -1,6 +1,6 @@ /* pngwio.c - functions for data output * - * Copyright (c) 2018 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2014,2016,2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -54,7 +54,7 @@ png_default_write_data(png_structp png_ptr, png_bytep data, size_t length) if (png_ptr == NULL) return; - check = fwrite(data, 1, length, (png_FILE_p)(png_ptr->io_ptr)); + check = fwrite(data, 1, length, (FILE *)png_ptr->io_ptr); if (check != length) png_error(png_ptr, "Write Error"); @@ -77,12 +77,12 @@ png_flush(png_structrp png_ptr) void PNGCBAPI png_default_flush(png_structp png_ptr) { - png_FILE_p io_ptr; + FILE *io_ptr; if (png_ptr == NULL) return; - io_ptr = png_voidcast(png_FILE_p, (png_ptr->io_ptr)); + io_ptr = png_voidcast(FILE *, png_ptr->io_ptr); fflush(io_ptr); } # endif diff --git a/icecat/media/libpng/pngwrite.c b/icecat/media/libpng/pngwrite.c index 663c03559e..0248182497 100644 --- a/icecat/media/libpng/pngwrite.c +++ b/icecat/media/libpng/pngwrite.c @@ -1,6 +1,6 @@ /* pngwrite.c - general routines to write a PNG file * - * Copyright (c) 2018-2025 Cosmin Truta + * Copyright (c) 2018-2026 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -551,7 +551,8 @@ png_convert_from_time_t(png_timep ptime, time_t ttime) /* Initialize png_ptr structure, and allocate any memory needed */ PNG_FUNCTION(png_structp,PNGAPI png_create_write_struct,(png_const_charp user_png_ver, png_voidp error_ptr, - png_error_ptr error_fn, png_error_ptr warn_fn),PNG_ALLOCATED) + png_error_ptr error_fn, png_error_ptr warn_fn), + PNG_ALLOCATED) { #ifndef PNG_USER_MEM_SUPPORTED png_structrp png_ptr = png_create_png_struct(user_png_ver, error_ptr, @@ -565,7 +566,8 @@ png_create_write_struct,(png_const_charp user_png_ver, png_voidp error_ptr, PNG_FUNCTION(png_structp,PNGAPI png_create_write_struct_2,(png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn, png_voidp mem_ptr, - png_malloc_ptr malloc_fn, png_free_ptr free_fn),PNG_ALLOCATED) + png_malloc_ptr malloc_fn, png_free_ptr free_fn), + PNG_ALLOCATED) { png_structrp png_ptr = png_create_png_struct(user_png_ver, error_ptr, error_fn, warn_fn, mem_ptr, malloc_fn, free_fn); @@ -1385,8 +1387,8 @@ png_set_write_status_fn(png_structrp png_ptr, png_write_status_ptr write_row_fn) #ifdef PNG_WRITE_USER_TRANSFORM_SUPPORTED void PNGAPI -png_set_write_user_transform_fn(png_structrp png_ptr, png_user_transform_ptr - write_user_transform_fn) +png_set_write_user_transform_fn(png_structrp png_ptr, + png_user_transform_ptr write_user_transform_fn) { png_debug(1, "in png_set_write_user_transform_fn"); @@ -1402,7 +1404,7 @@ png_set_write_user_transform_fn(png_structrp png_ptr, png_user_transform_ptr #ifdef PNG_INFO_IMAGE_SUPPORTED void PNGAPI png_write_png(png_structrp png_ptr, png_inforp info_ptr, - int transforms, voidp params) + int transforms, png_voidp params) { png_debug(1, "in png_write_png"); @@ -1567,18 +1569,20 @@ png_image_write_init(png_imagep image) /* Arguments to png_image_write_main: */ typedef struct { - /* Arguments: */ - png_imagep image; + /* Arguments */ + png_imagep image; png_const_voidp buffer; - png_int_32 row_stride; + png_int_32 row_stride; png_const_voidp colormap; - int convert_to_8bit; - /* Local variables: */ + int convert_to_8bit; + + /* Instance variables */ png_const_voidp first_row; - ptrdiff_t row_bytes; - png_voidp local_row; + png_voidp local_row; + ptrdiff_t row_step; + /* Byte count for memory writing */ - png_bytep memory; + png_bytep memory; png_alloc_size_t memory_bytes; /* not used for STDIO */ png_alloc_size_t output_bytes; /* running total */ } png_image_write_control; @@ -1685,7 +1689,7 @@ png_write_image_16bit(png_voidp argument) } png_write_row(png_ptr, png_voidcast(png_const_bytep, display->local_row)); - input_row += (png_uint_16)display->row_bytes/(sizeof (png_uint_16)); + input_row += display->row_step / 2; } return 1; @@ -1811,7 +1815,7 @@ png_write_image_8bit(png_voidp argument) png_write_row(png_ptr, png_voidcast(png_const_bytep, display->local_row)); - input_row += (png_uint_16)display->row_bytes/(sizeof (png_uint_16)); + input_row += display->row_step / 2; } /* while y */ } @@ -1836,7 +1840,7 @@ png_write_image_8bit(png_voidp argument) } png_write_row(png_ptr, output_row); - input_row += (png_uint_16)display->row_bytes/(sizeof (png_uint_16)); + input_row += display->row_step / 2; } } @@ -2152,16 +2156,16 @@ png_image_write_main(png_voidp argument) { png_const_bytep row = png_voidcast(png_const_bytep, display->buffer); - ptrdiff_t row_bytes = display->row_stride; + ptrdiff_t row_step = display->row_stride; if (linear != 0) - row_bytes *= (sizeof (png_uint_16)); + row_step *= 2; - if (row_bytes < 0) - row += (image->height-1) * (-row_bytes); + if (row_step < 0) + row += (image->height-1) * (-row_step); display->first_row = row; - display->row_bytes = row_bytes; + display->row_step = row_step; } /* Apply 'fast' options if the flag is set. */ @@ -2182,8 +2186,7 @@ png_image_write_main(png_voidp argument) * before it is written. This only applies when the input is 16-bit and * either there is an alpha channel or it is converted to 8-bit. */ - if ((linear != 0 && alpha != 0 ) || - (colormap == 0 && display->convert_to_8bit != 0)) + if (linear != 0 && (alpha != 0 || display->convert_to_8bit != 0)) { png_bytep row = png_voidcast(png_bytep, png_malloc(png_ptr, png_get_rowbytes(png_ptr, info_ptr))); @@ -2209,13 +2212,13 @@ png_image_write_main(png_voidp argument) else { png_const_bytep row = png_voidcast(png_const_bytep, display->first_row); - ptrdiff_t row_bytes = display->row_bytes; + ptrdiff_t row_step = display->row_step; png_uint_32 y = image->height; for (; y > 0; --y) { png_write_row(png_ptr, row); - row += row_bytes; + row += row_step; } } @@ -2342,7 +2345,7 @@ int PNGAPI png_image_write_to_stdio(png_imagep image, FILE *file, int convert_to_8bit, const void *buffer, png_int_32 row_stride, const void *colormap) { - /* Write the image to the given (FILE*). */ + /* Write the image to the given FILE object. */ if (image != NULL && image->version == PNG_IMAGE_VERSION) { if (file != NULL && buffer != NULL) diff --git a/icecat/media/libpng/pngwutil.c b/icecat/media/libpng/pngwutil.c index 39fd906303..5ca4d843f1 100644 --- a/icecat/media/libpng/pngwutil.c +++ b/icecat/media/libpng/pngwutil.c @@ -1,6 +1,6 @@ /* pngwutil.c - utilities to write a PNG file * - * Copyright (c) 2018-2024 Cosmin Truta + * Copyright (c) 2018-2025 Cosmin Truta * Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson * Copyright (c) 1996-1997 Andreas Dilger * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. @@ -487,10 +487,10 @@ png_free_buffer_list(png_structrp png_ptr, png_compression_bufferp *listp) */ typedef struct { - png_const_bytep input; /* The uncompressed input data */ - png_alloc_size_t input_len; /* Its length */ - png_uint_32 output_len; /* Final compressed length */ - png_byte output[1024]; /* First block of output */ + png_const_bytep input; /* The uncompressed input data */ + png_alloc_size_t input_len; /* Its length */ + png_uint_32 output_len; /* Final compressed length */ + png_byte output[1024]; /* First block of output */ } compression_state; static void diff --git a/icecat/media/libpng/powerpc/filter_vsx_intrinsics.c b/icecat/media/libpng/powerpc/filter_vsx_intrinsics.c index 01cf8800dc..5acc17c949 100644 --- a/icecat/media/libpng/powerpc/filter_vsx_intrinsics.c +++ b/icecat/media/libpng/powerpc/filter_vsx_intrinsics.c @@ -23,7 +23,7 @@ #if PNG_POWERPC_VSX_OPT > 0 #ifndef __VSX__ -# error "This code requires VSX support (POWER7 and later). Please provide -mvsx compiler flag." +# error This code requires VSX support (POWER7 and later); please compile with -mvsx #endif #define vec_ld_unaligned(vec,data) vec = vec_vsx_ld(0,data) diff --git a/icecat/media/libpng/powerpc/powerpc_init.c b/icecat/media/libpng/powerpc/powerpc_init.c index 9027480098..70782eda1b 100644 --- a/icecat/media/libpng/powerpc/powerpc_init.c +++ b/icecat/media/libpng/powerpc/powerpc_init.c @@ -46,7 +46,7 @@ static int png_have_vsx(png_structp png_ptr); #include PNG_POWERPC_VSX_FILE #else /* PNG_POWERPC_VSX_FILE */ -# error "PNG_POWERPC_VSX_FILE undefined: no support for run-time POWERPC VSX checks" +# error PNG_POWERPC_VSX_FILE undefined: no support for run-time POWERPC VSX checks #endif /* PNG_POWERPC_VSX_FILE */ #endif /* PNG_POWERPC_VSX_CHECK_SUPPORTED */ diff --git a/icecat/modules/libpref/init/StaticPrefList.yaml b/icecat/modules/libpref/init/StaticPrefList.yaml index 1698f39c35..720f0f67c0 100644 --- a/icecat/modules/libpref/init/StaticPrefList.yaml +++ b/icecat/modules/libpref/init/StaticPrefList.yaml @@ -13475,6 +13475,12 @@ login-us.microsoftonline.com mirror: never +# Whether to fallback to old mime-type parser when CMimeType::Parse fails +- name: network.http.fallback_to_net_parse_ct + type: RelaxedAtomicBool + value: true + mirror: always + # The factor by which to increase the keepalive timeout when the # NS_HTTP_LARGE_KEEPALIVE flag is used for a connection - name: network.http.largeKeepaliveFactor diff --git a/icecat/modules/libpref/parser/src/lib.rs b/icecat/modules/libpref/parser/src/lib.rs index 3a0ad2c777..7192a22c32 100644 --- a/icecat/modules/libpref/parser/src/lib.rs +++ b/icecat/modules/libpref/parser/src/lib.rs @@ -352,7 +352,8 @@ impl<'t> Parser<'t> { Parser { path: path, kind: kind, - buf: buf, + // Skip a UTF-8 BOM if present at the start of the input. + buf: buf.strip_prefix(&[0xef, 0xbb, 0xbf]).unwrap_or(buf), i: 0, line_num: 1, pref_fn: pref_fn, diff --git a/icecat/modules/libpref/test/gtest/Parser.cpp b/icecat/modules/libpref/test/gtest/Parser.cpp index 972d32cfca..f4ecbe896f 100644 --- a/icecat/modules/libpref/test/gtest/Parser.cpp +++ b/icecat/modules/libpref/test/gtest/Parser.cpp @@ -492,5 +492,17 @@ pref("int.ok", 0); "test:4: prefs parse error: unknown keyword\n" ); + // UTF-8 BOM should be skipped at the start of the input. + USER("\xEF\xBB\xBF" R"( +user_pref("int.ok", 1); + )", + "" + ); + + // UTF-8 BOM followed by no content. + USER("\xEF\xBB\xBF", + "" + ); + // clang-format on } diff --git a/icecat/modules/zlib/src/LICENSE b/icecat/modules/zlib/LICENSE similarity index 95% rename from icecat/modules/zlib/src/LICENSE rename to icecat/modules/zlib/LICENSE index ab8ee6f714..b7a69d058e 100644 --- a/icecat/modules/zlib/src/LICENSE +++ b/icecat/modules/zlib/LICENSE @@ -1,6 +1,6 @@ Copyright notice: - (C) 1995-2022 Jean-loup Gailly and Mark Adler + (C) 1995-2026 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/icecat/modules/zlib/moz.yaml b/icecat/modules/zlib/moz.yaml new file mode 100644 index 0000000000..3bd35eaf11 --- /dev/null +++ b/icecat/modules/zlib/moz.yaml @@ -0,0 +1,154 @@ +schema: 1 + +bugzilla: + product: Core + component: General + +origin: + name: zlib + description: A massively spiffy yet delicately unobtrusive compression library + + url: https://github.com/madler/zlib + + release: v1.3.2 (2026-02-17T05:01:19-08:00). + revision: v1.3.2 + + license: Zlib + +vendoring: + url: https://github.com/madler/zlib + source-hosting: github + tracking: tag + + exclude: + - ".**" + - "*.cmakein" + - "*.in" + - "*.map" + - "*.xml" + - "**/CMakeLists.txt" + - "BUILD.bazel" + - "CMakeLists.txt" + - "FAQ" + - "INDEX" + - "Makefile" + - "Makefile.in" + - "MODULE.bazel" + - "README-cmake.md" + - "amiga" + - "configure" + - "contrib" + - "doc" + - "examples" + - "make_vms.com" + - "msdos" + - "nintendods" + - "old" + - "os400" + - "qnx" + - "test" + - "watcom" + - "win32" + - "zlib.3" + - "zlib.3.pdf" + + include: + - "*.c" + - "*.h" + - ChangeLog + - LICENSE + - README + + keep: + - LICENSE + - src/mozzconf.h + - src/moz.build + + patches: + - mozzconf.patch + + update-actions: + - action: move-file + from: '{vendor_dir}/adler32.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/compress.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/crc32.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/deflate.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/gzclose.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/gzlib.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/gzread.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/gzwrite.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/infback.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/inffast.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/inflate.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/inftrees.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/trees.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/uncompr.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/zutil.c' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/crc32.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/deflate.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/gzguts.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/inffast.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/inffixed.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/inflate.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/inftrees.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/trees.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/zconf.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/zlib.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/zutil.h' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/ChangeLog' + to: '{vendor_dir}/src/' + - action: move-file + from: '{vendor_dir}/README' + to: '{vendor_dir}/src/' diff --git a/icecat/modules/zlib/mozzconf.patch b/icecat/modules/zlib/mozzconf.patch new file mode 100644 index 0000000000..fe2387876f --- /dev/null +++ b/icecat/modules/zlib/mozzconf.patch @@ -0,0 +1,13 @@ +diff --git a/src/zconf.h b/src/zconf.h +--- a/src/zconf.h ++++ b/src/zconf.h +@@ -8,6 +8,9 @@ + #ifndef ZCONF_H + #define ZCONF_H + ++/* This header does prefixing as below, but with an updated set of names. */ ++#include "mozzconf.h" ++ + /* + * If you *really* need a unique prefix for all types and library functions, + * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/icecat/modules/zlib/src/ChangeLog b/icecat/modules/zlib/src/ChangeLog index b801a1031e..312753edad 100644 --- a/icecat/modules/zlib/src/ChangeLog +++ b/icecat/modules/zlib/src/ChangeLog @@ -1,6 +1,57 @@ ChangeLog file for zlib +Changes in 1.3.2 (17 Feb 2026) +- Continued rewrite of CMake build [Vollstrecker] +- Various portability improvements +- Various github workflow additions and improvements +- Check for negative lengths in crc32_combine functions +- Copy only the initialized window contents in inflateCopy +- Prevent the use of insecure functions without an explicit request +- Add compressBound_z and deflateBound_z functions for large values +- Use atomics to build inflate fixed tables once +- Add definition of ZLIB_INSECURE to build tests with c89 and c94 +- Add --undefined option to ./configure for UBSan checker +- Copy only the initialized deflate state in deflateCopy +- Zero inflate state on allocation +- Remove untgz from contrib +- Add _z versions of the compress and uncompress functions +- Vectorize the CRC-32 calculation on the s390x +- Set bit 11 of the zip header flags in minizip if UTF-8 +- Update OS/400 support +- Add a test to configure to check for a working compiler +- Check for invalid NULL pointer inputs to zlib operations +- Add --mandir to ./configure to specify manual directory +- Add LICENSE.Info-Zip to contrib/minizip +- Remove vstudio projects in lieu of cmake-generated projects +- Replace strcpy() with memcpy() in contrib/minizip + +Changes in 1.3.1.2 (8 Dec 2025) +- Improve portability to RISC OS +- Permit compiling contrib/minizip/unzip.c with decryption +- Enable build of shared library on AIX +- Make deflateBound() more conservative and handle Z_STREAM_END +- Add zipAlreadyThere() to minizip zip.c to help avoid duplicates +- Make z_off_t 64 bits by default +- Add deflateUsed() function to get the used bits in the last byte +- Avoid out-of-bounds pointer arithmetic in inflateCopy() +- Add Haiku to configure for proper LDSHARED settings +- Add Bazel targets +- Complete rewrite of CMake build [Vollstrecker] +- Clarify the use of errnum in gzerror() +- Note that gzseek() requests are deferred until the next operation +- Note the use of gzungetc() to run a deferred seek while reading +- Fix bug in inflatePrime() for 16-bit ints +- Add a "G" option to force gzip, disabling transparency in gzread() +- Improve the discrimination between trailing garbage and bad gzip +- Allow gzflush() to write empty gzip members +- Remove redundant frees of point list on error in examples/zran.c +- Clarify the use of inflateGetHeader() +- Update links to the RFCs +- Return all available uncompressed data on error in gzread.c +- Support non-blocking devices in the gz* routines +- Various other small improvements + Changes in 1.3.1 (22 Jan 2024) - Reject overflows of zip header fields in minizip - Fix bug in inflateSync() for data held in bit buffer diff --git a/icecat/modules/zlib/src/ChangeLog.moz b/icecat/modules/zlib/src/ChangeLog.moz deleted file mode 100644 index ca9e3cd870..0000000000 --- a/icecat/modules/zlib/src/ChangeLog.moz +++ /dev/null @@ -1,97 +0,0 @@ - - Mozilla ChangeLog file for zlib - -Mozilla.org changes: -- 17 June 2004 - Sync'd with 1.2.1 release - see bug #226733 - -- 17 June 2004 - Add mozzconf.h - -- 17 June 2004 - Turn off ZLIB_DLL to fix static build bustage - -- 24 June 2004 - do not prototype strerror for VMS in zutil.h - -- 25 June 2004 - define NO_vsnprintf for VMS in zutil.h - -- 21 September 2004 - applied patch for DoS vulnerabililty in inflate.c - see bug #258009 - -- 02 November 2004 - Sync'ed with 1.2.2 release - (keeping '#include "mozzconf.h"' in zconf.h) - Our patches of 24, 25 June and 21 Sept are now in the zlib - distribution. - See bug #248644 - -- 24 July 2005 - Sync'ed with 1.2.3 release - (keeping '#include "mozzconf.h"' in zconf.h) - See bugs #299445 and #300349 - -- 24 July 2005 - Added treatment of HAVE_VISIBILITY_PRAGMA in mozzconf.h - -- 24 July 2005 - Updated zlib.def with new symbols in zlib version 1.2.3 - -- 13 September 2009 - Don't enable zlib's debug output when the Mozilla build is in debug mode (bug 431950) - -- 18 September 2010 - Sync'ed with 1.2.5 release - (keeping '#include "mozzconf.h"' in zconf.h) - See bug #573137 - -- 8 February 2012 - Sync'ed with 1.2.6 release - (keeping '#include "mozzconf.h"' in zconf.h) - See bug #722391 - -- 4 May 2012 - Sync'ed with 1.2.7 release - (keeping '#include "mozzconf.h"' in zconf.h) - See bug #751697 - -- 9 May 2013 - Sync'ed with 1.2.8 release - (keeping '#include "mozzconf.h"' in zconf.h) - See bug #866964 - -- 16 January 2017 - Sync'ed with 1.2.11 release - (keeping '#include "mozzconf.h"' in zconf.h) - See bug #1328099 - -- 28 May 2021 - Add because of the error: implicit declaration of function {lseek, read, write} is invalid in C99. - See bug #1701197 - -- 28 March 2022 - Backport upstream fix for CVE-2018-25032 - See bug #1761799 - -- 29 March 2022 - Sync'ed with 1.2.12 release - (keeping '#include "mozzconf.h"' in zconf.h) - See bug #1761764 - -- 21 October 2022 - Sync'ed with 1.2.13 release - (keeping '#include "mozzconf.h"' in zconf.h) - See bug #1796811 - -- 18 August 2023 - Sync'ed with 1.3 release - (keeping '#include "mozzconf.h"' in zconf.h) - See bug #1849470 - -- 23 January 2024 - Sync'ed with 1.3.1 release - (keeping '#include "mozzconf.h"' in zconf.h) - See bug #1875968 diff --git a/icecat/modules/zlib/src/FAQ b/icecat/modules/zlib/src/FAQ deleted file mode 100644 index 92f5d3e29f..0000000000 --- a/icecat/modules/zlib/src/FAQ +++ /dev/null @@ -1,367 +0,0 @@ - - Frequently Asked Questions about zlib - - -If your question is not there, please check the zlib home page -http://zlib.net/ which may have more recent information. -The latest zlib FAQ is at http://zlib.net/zlib_faq.html - - - 1. Is zlib Y2K-compliant? - - Yes. zlib doesn't handle dates. - - 2. Where can I get a Windows DLL version? - - The zlib sources can be compiled without change to produce a DLL. See the - file win32/DLL_FAQ.txt in the zlib distribution. - - 3. Where can I get a Visual Basic interface to zlib? - - See - * http://marknelson.us/1997/01/01/zlib-engine/ - * win32/DLL_FAQ.txt in the zlib distribution - - 4. compress() returns Z_BUF_ERROR. - - Make sure that before the call of compress(), the length of the compressed - buffer is equal to the available size of the compressed buffer and not - zero. For Visual Basic, check that this parameter is passed by reference - ("as any"), not by value ("as long"). - - 5. deflate() or inflate() returns Z_BUF_ERROR. - - Before making the call, make sure that avail_in and avail_out are not zero. - When setting the parameter flush equal to Z_FINISH, also make sure that - avail_out is big enough to allow processing all pending input. Note that a - Z_BUF_ERROR is not fatal--another call to deflate() or inflate() can be - made with more input or output space. A Z_BUF_ERROR may in fact be - unavoidable depending on how the functions are used, since it is not - possible to tell whether or not there is more output pending when - strm.avail_out returns with zero. See http://zlib.net/zlib_how.html for a - heavily annotated example. - - 6. Where's the zlib documentation (man pages, etc.)? - - It's in zlib.h . Examples of zlib usage are in the files test/example.c - and test/minigzip.c, with more in examples/ . - - 7. Why don't you use GNU autoconf or libtool or ...? - - Because we would like to keep zlib as a very small and simple package. - zlib is rather portable and doesn't need much configuration. - - 8. I found a bug in zlib. - - Most of the time, such problems are due to an incorrect usage of zlib. - Please try to reproduce the problem with a small program and send the - corresponding source to us at zlib@gzip.org . Do not send multi-megabyte - data files without prior agreement. - - 9. Why do I get "undefined reference to gzputc"? - - If "make test" produces something like - - example.o(.text+0x154): undefined reference to `gzputc' - - check that you don't have old files libz.* in /usr/lib, /usr/local/lib or - /usr/X11R6/lib. Remove any old versions, then do "make install". - -10. I need a Delphi interface to zlib. - - See the contrib/delphi directory in the zlib distribution. - -11. Can zlib handle .zip archives? - - Not by itself, no. See the directory contrib/minizip in the zlib - distribution. - -12. Can zlib handle .Z files? - - No, sorry. You have to spawn an uncompress or gunzip subprocess, or adapt - the code of uncompress on your own. - -13. How can I make a Unix shared library? - - By default a shared (and a static) library is built for Unix. So: - - make distclean - ./configure - make - -14. How do I install a shared zlib library on Unix? - - After the above, then: - - make install - - However, many flavors of Unix come with a shared zlib already installed. - Before going to the trouble of compiling a shared version of zlib and - trying to install it, you may want to check if it's already there! If you - can #include , it's there. The -lz option will probably link to - it. You can check the version at the top of zlib.h or with the - ZLIB_VERSION symbol defined in zlib.h . - -15. I have a question about OttoPDF. - - We are not the authors of OttoPDF. The real author is on the OttoPDF web - site: Joel Hainley, jhainley@myndkryme.com. - -16. Can zlib decode Flate data in an Adobe PDF file? - - Yes. See http://www.pdflib.com/ . To modify PDF forms, see - http://sourceforge.net/projects/acroformtool/ . - -17. Why am I getting this "register_frame_info not found" error on Solaris? - - After installing zlib 1.1.4 on Solaris 2.6, running applications using zlib - generates an error such as: - - ld.so.1: rpm: fatal: relocation error: file /usr/local/lib/libz.so: - symbol __register_frame_info: referenced symbol not found - - The symbol __register_frame_info is not part of zlib, it is generated by - the C compiler (cc or gcc). You must recompile applications using zlib - which have this problem. This problem is specific to Solaris. See - http://www.sunfreeware.com for Solaris versions of zlib and applications - using zlib. - -18. Why does gzip give an error on a file I make with compress/deflate? - - The compress and deflate functions produce data in the zlib format, which - is different and incompatible with the gzip format. The gz* functions in - zlib on the other hand use the gzip format. Both the zlib and gzip formats - use the same compressed data format internally, but have different headers - and trailers around the compressed data. - -19. Ok, so why are there two different formats? - - The gzip format was designed to retain the directory information about a - single file, such as the name and last modification date. The zlib format - on the other hand was designed for in-memory and communication channel - applications, and has a much more compact header and trailer and uses a - faster integrity check than gzip. - -20. Well that's nice, but how do I make a gzip file in memory? - - You can request that deflate write the gzip format instead of the zlib - format using deflateInit2(). You can also request that inflate decode the - gzip format using inflateInit2(). Read zlib.h for more details. - -21. Is zlib thread-safe? - - Yes. However any library routines that zlib uses and any application- - provided memory allocation routines must also be thread-safe. zlib's gz* - functions use stdio library routines, and most of zlib's functions use the - library memory allocation routines by default. zlib's *Init* functions - allow for the application to provide custom memory allocation routines. - - Of course, you should only operate on any given zlib or gzip stream from a - single thread at a time. - -22. Can I use zlib in my commercial application? - - Yes. Please read the license in zlib.h. - -23. Is zlib under the GNU license? - - No. Please read the license in zlib.h. - -24. The license says that altered source versions must be "plainly marked". So - what exactly do I need to do to meet that requirement? - - You need to change the ZLIB_VERSION and ZLIB_VERNUM #defines in zlib.h. In - particular, the final version number needs to be changed to "f", and an - identification string should be appended to ZLIB_VERSION. Version numbers - x.x.x.f are reserved for modifications to zlib by others than the zlib - maintainers. For example, if the version of the base zlib you are altering - is "1.2.3.4", then in zlib.h you should change ZLIB_VERNUM to 0x123f, and - ZLIB_VERSION to something like "1.2.3.f-zachary-mods-v3". You can also - update the version strings in deflate.c and inftrees.c. - - For altered source distributions, you should also note the origin and - nature of the changes in zlib.h, as well as in ChangeLog and README, along - with the dates of the alterations. The origin should include at least your - name (or your company's name), and an email address to contact for help or - issues with the library. - - Note that distributing a compiled zlib library along with zlib.h and - zconf.h is also a source distribution, and so you should change - ZLIB_VERSION and ZLIB_VERNUM and note the origin and nature of the changes - in zlib.h as you would for a full source distribution. - -25. Will zlib work on a big-endian or little-endian architecture, and can I - exchange compressed data between them? - - Yes and yes. - -26. Will zlib work on a 64-bit machine? - - Yes. It has been tested on 64-bit machines, and has no dependence on any - data types being limited to 32-bits in length. If you have any - difficulties, please provide a complete problem report to zlib@gzip.org - -27. Will zlib decompress data from the PKWare Data Compression Library? - - No. The PKWare DCL uses a completely different compressed data format than - does PKZIP and zlib. However, you can look in zlib's contrib/blast - directory for a possible solution to your problem. - -28. Can I access data randomly in a compressed stream? - - No, not without some preparation. If when compressing you periodically use - Z_FULL_FLUSH, carefully write all the pending data at those points, and - keep an index of those locations, then you can start decompression at those - points. You have to be careful to not use Z_FULL_FLUSH too often, since it - can significantly degrade compression. Alternatively, you can scan a - deflate stream once to generate an index, and then use that index for - random access. See examples/zran.c . - -29. Does zlib work on MVS, OS/390, CICS, etc.? - - It has in the past, but we have not heard of any recent evidence. There - were working ports of zlib 1.1.4 to MVS, but those links no longer work. - If you know of recent, successful applications of zlib on these operating - systems, please let us know. Thanks. - -30. Is there some simpler, easier to read version of inflate I can look at to - understand the deflate format? - - First off, you should read RFC 1951. Second, yes. Look in zlib's - contrib/puff directory. - -31. Does zlib infringe on any patents? - - As far as we know, no. In fact, that was originally the whole point behind - zlib. Look here for some more information: - - http://www.gzip.org/#faq11 - -32. Can zlib work with greater than 4 GB of data? - - Yes. inflate() and deflate() will process any amount of data correctly. - Each call of inflate() or deflate() is limited to input and output chunks - of the maximum value that can be stored in the compiler's "unsigned int" - type, but there is no limit to the number of chunks. Note however that the - strm.total_in and strm_total_out counters may be limited to 4 GB. These - counters are provided as a convenience and are not used internally by - inflate() or deflate(). The application can easily set up its own counters - updated after each call of inflate() or deflate() to count beyond 4 GB. - compress() and uncompress() may be limited to 4 GB, since they operate in a - single call. gzseek() and gztell() may be limited to 4 GB depending on how - zlib is compiled. See the zlibCompileFlags() function in zlib.h. - - The word "may" appears several times above since there is a 4 GB limit only - if the compiler's "long" type is 32 bits. If the compiler's "long" type is - 64 bits, then the limit is 16 exabytes. - -33. Does zlib have any security vulnerabilities? - - The only one that we are aware of is potentially in gzprintf(). If zlib is - compiled to use sprintf() or vsprintf(), then there is no protection - against a buffer overflow of an 8K string space (or other value as set by - gzbuffer()), other than the caller of gzprintf() assuring that the output - will not exceed 8K. On the other hand, if zlib is compiled to use - snprintf() or vsnprintf(), which should normally be the case, then there is - no vulnerability. The ./configure script will display warnings if an - insecure variation of sprintf() will be used by gzprintf(). Also the - zlibCompileFlags() function will return information on what variant of - sprintf() is used by gzprintf(). - - If you don't have snprintf() or vsnprintf() and would like one, you can - find a portable implementation here: - - http://www.ijs.si/software/snprintf/ - - Note that you should be using the most recent version of zlib. Versions - 1.1.3 and before were subject to a double-free vulnerability, and versions - 1.2.1 and 1.2.2 were subject to an access exception when decompressing - invalid compressed data. - -34. Is there a Java version of zlib? - - Probably what you want is to use zlib in Java. zlib is already included - as part of the Java SDK in the java.util.zip package. If you really want - a version of zlib written in the Java language, look on the zlib home - page for links: http://zlib.net/ . - -35. I get this or that compiler or source-code scanner warning when I crank it - up to maximally-pedantic. Can't you guys write proper code? - - Many years ago, we gave up attempting to avoid warnings on every compiler - in the universe. It just got to be a waste of time, and some compilers - were downright silly as well as contradicted each other. So now, we simply - make sure that the code always works. - -36. Valgrind (or some similar memory access checker) says that deflate is - performing a conditional jump that depends on an uninitialized value. - Isn't that a bug? - - No. That is intentional for performance reasons, and the output of deflate - is not affected. This only started showing up recently since zlib 1.2.x - uses malloc() by default for allocations, whereas earlier versions used - calloc(), which zeros out the allocated memory. Even though the code was - correct, versions 1.2.4 and later was changed to not stimulate these - checkers. - -37. Will zlib read the (insert any ancient or arcane format here) compressed - data format? - - Probably not. Look in the comp.compression FAQ for pointers to various - formats and associated software. - -38. How can I encrypt/decrypt zip files with zlib? - - zlib doesn't support encryption. The original PKZIP encryption is very - weak and can be broken with freely available programs. To get strong - encryption, use GnuPG, http://www.gnupg.org/ , which already includes zlib - compression. For PKZIP compatible "encryption", look at - http://www.info-zip.org/ - -39. What's the difference between the "gzip" and "deflate" HTTP 1.1 encodings? - - "gzip" is the gzip format, and "deflate" is the zlib format. They should - probably have called the second one "zlib" instead to avoid confusion with - the raw deflate compressed data format. While the HTTP 1.1 RFC 2616 - correctly points to the zlib specification in RFC 1950 for the "deflate" - transfer encoding, there have been reports of servers and browsers that - incorrectly produce or expect raw deflate data per the deflate - specification in RFC 1951, most notably Microsoft. So even though the - "deflate" transfer encoding using the zlib format would be the more - efficient approach (and in fact exactly what the zlib format was designed - for), using the "gzip" transfer encoding is probably more reliable due to - an unfortunate choice of name on the part of the HTTP 1.1 authors. - - Bottom line: use the gzip format for HTTP 1.1 encoding. - -40. Does zlib support the new "Deflate64" format introduced by PKWare? - - No. PKWare has apparently decided to keep that format proprietary, since - they have not documented it as they have previous compression formats. In - any case, the compression improvements are so modest compared to other more - modern approaches, that it's not worth the effort to implement. - -41. I'm having a problem with the zip functions in zlib, can you help? - - There are no zip functions in zlib. You are probably using minizip by - Giles Vollant, which is found in the contrib directory of zlib. It is not - part of zlib. In fact none of the stuff in contrib is part of zlib. The - files in there are not supported by the zlib authors. You need to contact - the authors of the respective contribution for help. - -42. The match.asm code in contrib is under the GNU General Public License. - Since it's part of zlib, doesn't that mean that all of zlib falls under the - GNU GPL? - - No. The files in contrib are not part of zlib. They were contributed by - other authors and are provided as a convenience to the user within the zlib - distribution. Each item in contrib has its own license. - -43. Is zlib subject to export controls? What is its ECCN? - - zlib is not subject to export controls, and so is classified as EAR99. - -44. Can you please sign these lengthy legal documents and fax them back to us - so that we can use your software in our product? - - No. Go away. Shoo. diff --git a/icecat/modules/zlib/src/INDEX b/icecat/modules/zlib/src/INDEX deleted file mode 100644 index 2ba0641204..0000000000 --- a/icecat/modules/zlib/src/INDEX +++ /dev/null @@ -1,68 +0,0 @@ -CMakeLists.txt cmake build file -ChangeLog history of changes -FAQ Frequently Asked Questions about zlib -INDEX this file -Makefile dummy Makefile that tells you to ./configure -Makefile.in template for Unix Makefile -README guess what -configure configure script for Unix -make_vms.com makefile for VMS -test/example.c zlib usages examples for build testing -test/minigzip.c minimal gzip-like functionality for build testing -test/infcover.c inf*.c code coverage for build coverage testing -treebuild.xml XML description of source file dependencies -zconf.h.cmakein zconf.h template for cmake -zconf.h.in zconf.h template for configure -zlib.3 Man page for zlib -zlib.3.pdf Man page in PDF format -zlib.map Linux symbol information -zlib.pc.in Template for pkg-config descriptor -zlib.pc.cmakein zlib.pc template for cmake -zlib2ansi perl script to convert source files for C++ compilation - -amiga/ makefiles for Amiga SAS C -as400/ makefiles for AS/400 -doc/ documentation for formats and algorithms -msdos/ makefiles for MSDOS -nintendods/ makefile for Nintendo DS -old/ makefiles for various architectures and zlib documentation - files that have not yet been updated for zlib 1.2.x -qnx/ makefiles for QNX -watcom/ makefiles for OpenWatcom -win32/ makefiles for Windows - - zlib public header files (required for library use): -zconf.h -zlib.h - - private source files used to build the zlib library: -adler32.c -compress.c -crc32.c -crc32.h -deflate.c -deflate.h -gzclose.c -gzguts.h -gzlib.c -gzread.c -gzwrite.c -infback.c -inffast.c -inffast.h -inffixed.h -inflate.c -inflate.h -inftrees.c -inftrees.h -trees.c -trees.h -uncompr.c -zutil.c -zutil.h - - source files for sample programs -See examples/README.examples - - unsupported contributions by third parties -See contrib/README.contrib diff --git a/icecat/modules/zlib/src/README b/icecat/modules/zlib/src/README index c5f917540b..2b1e6f36fe 100644 --- a/icecat/modules/zlib/src/README +++ b/icecat/modules/zlib/src/README @@ -1,10 +1,10 @@ ZLIB DATA COMPRESSION LIBRARY -zlib 1.3.1 is a general purpose data compression library. All the code is -thread safe. The data format used by the zlib library is described by RFCs -(Request for Comments) 1950 to 1952 in the files -http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and -rfc1952 (gzip format). +zlib 1.3.2 is a general purpose data compression library. All the code is +thread safe (though see the FAQ for caveats). The data format used by the zlib +library is described by RFCs (Request for Comments) 1950 to 1952 at +https://datatracker.ietf.org/doc/html/rfc1950 (zlib format), rfc1951 (deflate +format) and rfc1952 (gzip format). All functions of the compression library are documented in the file zlib.h (volunteer to write man pages welcome, contact zlib@gzip.org). A usage example @@ -21,17 +21,17 @@ make_vms.com. Questions about zlib should be sent to , or to Gilles Vollant for the Windows DLL version. The zlib home page is -http://zlib.net/ . Before reporting a problem, please check this site to +https://zlib.net/ . Before reporting a problem, please check this site to verify that you have the latest version of zlib; otherwise get the latest version and check whether the problem still exists or not. -PLEASE read the zlib FAQ http://zlib.net/zlib_faq.html before asking for help. +PLEASE read the zlib FAQ https://zlib.net/zlib_faq.html before asking for help. Mark Nelson wrote an article about zlib for the Jan. 1997 issue of Dr. Dobb's Journal; a copy of the article is available at -https://marknelson.us/posts/1997/01/01/zlib-engine.html . +https://zlib.net/nelson/ . -The changes made in version 1.3.1 are documented in the file ChangeLog. +The changes made in version 1.3.2 are documented in the file ChangeLog. Unsupported third party contributions are provided in directory contrib/ . @@ -43,9 +43,9 @@ can be found at https://github.com/pmqs/IO-Compress . A Python interface to zlib written by A.M. Kuchling is available in Python 1.5 and later versions, see -http://docs.python.org/library/zlib.html . +https://docs.python.org/3/library/zlib.html . -zlib is built into tcl: http://wiki.tcl.tk/4610 . +zlib is built into tcl: https://wiki.tcl-lang.org/page/zlib . An experimental package to read and write files in .zip format, written on top of zlib by Gilles Vollant , is available in the @@ -69,9 +69,7 @@ Notes for some targets: - zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works with other compilers. Use "make test" to check your compiler. -- gzdopen is not supported on RISCOS or BEOS. - -- For PalmOs, see http://palmzlib.sourceforge.net/ +- For PalmOs, see https://palmzlib.sourceforge.net/ Acknowledgments: @@ -83,7 +81,7 @@ Acknowledgments: Copyright notice: - (C) 1995-2024 Jean-loup Gailly and Mark Adler + (C) 1995-2026 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/icecat/modules/zlib/src/compress.c b/icecat/modules/zlib/src/compress.c index f43bacf7ab..bd74b9488e 100644 --- a/icecat/modules/zlib/src/compress.c +++ b/icecat/modules/zlib/src/compress.c @@ -1,5 +1,5 @@ /* compress.c -- compress a memory buffer - * Copyright (C) 1995-2005, 2014, 2016 Jean-loup Gailly, Mark Adler + * Copyright (C) 1995-2026 Jean-loup Gailly, Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -18,13 +18,19 @@ compress2 returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_BUF_ERROR if there was not enough room in the output buffer, Z_STREAM_ERROR if the level parameter is invalid. + + The _z versions of the functions take size_t length arguments. */ -int ZEXPORT compress2(Bytef *dest, uLongf *destLen, const Bytef *source, - uLong sourceLen, int level) { +int ZEXPORT compress2_z(Bytef *dest, z_size_t *destLen, const Bytef *source, + z_size_t sourceLen, int level) { z_stream stream; int err; const uInt max = (uInt)-1; - uLong left; + z_size_t left; + + if ((sourceLen > 0 && source == NULL) || + destLen == NULL || (*destLen > 0 && dest == NULL)) + return Z_STREAM_ERROR; left = *destLen; *destLen = 0; @@ -43,23 +49,36 @@ int ZEXPORT compress2(Bytef *dest, uLongf *destLen, const Bytef *source, do { if (stream.avail_out == 0) { - stream.avail_out = left > (uLong)max ? max : (uInt)left; + stream.avail_out = left > (z_size_t)max ? max : (uInt)left; left -= stream.avail_out; } if (stream.avail_in == 0) { - stream.avail_in = sourceLen > (uLong)max ? max : (uInt)sourceLen; + stream.avail_in = sourceLen > (z_size_t)max ? max : + (uInt)sourceLen; sourceLen -= stream.avail_in; } err = deflate(&stream, sourceLen ? Z_NO_FLUSH : Z_FINISH); } while (err == Z_OK); - *destLen = stream.total_out; + *destLen = (z_size_t)(stream.next_out - dest); deflateEnd(&stream); return err == Z_STREAM_END ? Z_OK : err; } - +int ZEXPORT compress2(Bytef *dest, uLongf *destLen, const Bytef *source, + uLong sourceLen, int level) { + int ret; + z_size_t got = *destLen; + ret = compress2_z(dest, &got, source, sourceLen, level); + *destLen = (uLong)got; + return ret; +} /* =========================================================================== */ +int ZEXPORT compress_z(Bytef *dest, z_size_t *destLen, const Bytef *source, + z_size_t sourceLen) { + return compress2_z(dest, destLen, source, sourceLen, + Z_DEFAULT_COMPRESSION); +} int ZEXPORT compress(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen) { return compress2(dest, destLen, source, sourceLen, Z_DEFAULT_COMPRESSION); @@ -69,7 +88,12 @@ int ZEXPORT compress(Bytef *dest, uLongf *destLen, const Bytef *source, If the default memLevel or windowBits for deflateInit() is changed, then this function needs to be updated. */ -uLong ZEXPORT compressBound(uLong sourceLen) { - return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + - (sourceLen >> 25) + 13; +z_size_t ZEXPORT compressBound_z(z_size_t sourceLen) { + z_size_t bound = sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + + (sourceLen >> 25) + 13; + return bound < sourceLen ? (z_size_t)-1 : bound; +} +uLong ZEXPORT compressBound(uLong sourceLen) { + z_size_t bound = compressBound_z(sourceLen); + return (uLong)bound != bound ? (uLong)-1 : (uLong)bound; } diff --git a/icecat/modules/zlib/src/crc32.c b/icecat/modules/zlib/src/crc32.c index 6c38f5c04c..d9ade51502 100644 --- a/icecat/modules/zlib/src/crc32.c +++ b/icecat/modules/zlib/src/crc32.c @@ -1,5 +1,5 @@ /* crc32.c -- compute the CRC-32 of a data stream - * Copyright (C) 1995-2022 Mark Adler + * Copyright (C) 1995-2026 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h * * This interleaved implementation of a CRC makes use of pipelined multiple @@ -24,11 +24,18 @@ # include # ifndef DYNAMIC_CRC_TABLE # define DYNAMIC_CRC_TABLE -# endif /* !DYNAMIC_CRC_TABLE */ -#endif /* MAKECRCH */ +# endif +#endif +#ifdef DYNAMIC_CRC_TABLE +# define Z_ONCE +#endif #include "zutil.h" /* for Z_U4, Z_U8, z_crc_t, and FAR definitions */ +#ifdef HAVE_S390X_VX +# include "contrib/crc32vx/crc32_vx_hooks.h" +#endif + /* A CRC of a message is computed on N braids of words in the message, where each word consists of W bytes (4 or 8). If N is 3, for example, then three @@ -99,7 +106,8 @@ #endif /* If available, use the ARM processor CRC32 instruction. */ -#if defined(__aarch64__) && defined(__ARM_FEATURE_CRC32) && W == 8 +#if defined(__aarch64__) && defined(__ARM_FEATURE_CRC32) && \ + defined(W) && W == 8 # define ARMCRC32 #endif @@ -152,10 +160,10 @@ local z_word_t byte_swap(z_word_t word) { Return a(x) multiplied by b(x) modulo p(x), where p(x) is the CRC polynomial, reflected. For speed, this requires that a not be zero. */ -local z_crc_t multmodp(z_crc_t a, z_crc_t b) { - z_crc_t m, p; +local uLong multmodp(uLong a, uLong b) { + uLong m, p; - m = (z_crc_t)1 << 31; + m = (uLong)1 << 31; p = 0; for (;;) { if (a & m) { @@ -171,12 +179,12 @@ local z_crc_t multmodp(z_crc_t a, z_crc_t b) { /* Return x^(n * 2^k) modulo p(x). Requires that x2n_table[] has been - initialized. + initialized. n must not be negative. */ -local z_crc_t x2nmodp(z_off64_t n, unsigned k) { - z_crc_t p; +local uLong x2nmodp(z_off64_t n, unsigned k) { + uLong p; - p = (z_crc_t)1 << 31; /* x^0 == 1 */ + p = (uLong)1 << 31; /* x^0 == 1 */ while (n) { if (n & 1) p = multmodp(x2n_table[k & 31], p); @@ -204,83 +212,8 @@ local z_crc_t FAR crc_table[256]; local void write_table64(FILE *, const z_word_t FAR *, int); #endif /* MAKECRCH */ -/* - Define a once() function depending on the availability of atomics. If this is - compiled with DYNAMIC_CRC_TABLE defined, and if CRCs will be computed in - multiple threads, and if atomics are not available, then get_crc_table() must - be called to initialize the tables and must return before any threads are - allowed to compute or combine CRCs. - */ - -/* Definition of once functionality. */ -typedef struct once_s once_t; - -/* Check for the availability of atomics. */ -#if defined(__STDC__) && __STDC_VERSION__ >= 201112L && \ - !defined(__STDC_NO_ATOMICS__) - -#include - -/* Structure for once(), which must be initialized with ONCE_INIT. */ -struct once_s { - atomic_flag begun; - atomic_int done; -}; -#define ONCE_INIT {ATOMIC_FLAG_INIT, 0} - -/* - Run the provided init() function exactly once, even if multiple threads - invoke once() at the same time. The state must be a once_t initialized with - ONCE_INIT. - */ -local void once(once_t *state, void (*init)(void)) { - if (!atomic_load(&state->done)) { - if (atomic_flag_test_and_set(&state->begun)) - while (!atomic_load(&state->done)) - ; - else { - init(); - atomic_store(&state->done, 1); - } - } -} - -#else /* no atomics */ - -/* Structure for once(), which must be initialized with ONCE_INIT. */ -struct once_s { - volatile int begun; - volatile int done; -}; -#define ONCE_INIT {0, 0} - -/* Test and set. Alas, not atomic, but tries to minimize the period of - vulnerability. */ -local int test_and_set(int volatile *flag) { - int was; - - was = *flag; - *flag = 1; - return was; -} - -/* Run the provided init() function once. This is not thread-safe. */ -local void once(once_t *state, void (*init)(void)) { - if (!state->done) { - if (test_and_set(&state->begun)) - while (!state->done) - ; - else { - init(); - state->done = 1; - } - } -} - -#endif - /* State for once(). */ -local once_t made = ONCE_INIT; +local z_once_t made = Z_ONCE_INIT; /* Generate tables for a byte-wise 32-bit CRC calculation on the polynomial: @@ -326,7 +259,7 @@ local void make_crc_table(void) { p = (z_crc_t)1 << 30; /* x^1 */ x2n_table[0] = p; for (n = 1; n < 32; n++) - x2n_table[n] = p = multmodp(p, p); + x2n_table[n] = p = (z_crc_t)multmodp(p, p); #ifdef W /* initialize the braiding tables -- needs x2n_table[] */ @@ -529,11 +462,11 @@ local void braid(z_crc_t ltl[][256], z_word_t big[][256], int n, int w) { int k; z_crc_t i, p, q; for (k = 0; k < w; k++) { - p = x2nmodp((n * w + 3 - k) << 3, 0); + p = (z_crc_t)x2nmodp((n * w + 3 - k) << 3, 0); ltl[k][0] = 0; big[w - 1 - k][0] = 0; for (i = 1; i < 256; i++) { - ltl[k][i] = q = multmodp(i << 24, p); + ltl[k][i] = q = (z_crc_t)multmodp(i << 24, p); big[w - 1 - k][i] = byte_swap(q); } } @@ -548,7 +481,7 @@ local void braid(z_crc_t ltl[][256], z_word_t big[][256], int n, int w) { */ const z_crc_t FAR * ZEXPORT get_crc_table(void) { #ifdef DYNAMIC_CRC_TABLE - once(&made, make_crc_table); + z_once(&made, make_crc_table); #endif /* DYNAMIC_CRC_TABLE */ return (const z_crc_t FAR *)crc_table; } @@ -572,9 +505,8 @@ const z_crc_t FAR * ZEXPORT get_crc_table(void) { #define Z_BATCH_ZEROS 0xa10d3d0c /* computed from Z_BATCH = 3990 */ #define Z_BATCH_MIN 800 /* fewest words in a final batch */ -unsigned long ZEXPORT crc32_z(unsigned long crc, const unsigned char FAR *buf, - z_size_t len) { - z_crc_t val; +uLong ZEXPORT crc32_z(uLong crc, const unsigned char FAR *buf, z_size_t len) { + uLong val; z_word_t crc1, crc2; const z_word_t *word; z_word_t val0, val1, val2; @@ -585,7 +517,7 @@ unsigned long ZEXPORT crc32_z(unsigned long crc, const unsigned char FAR *buf, if (buf == Z_NULL) return 0; #ifdef DYNAMIC_CRC_TABLE - once(&made, make_crc_table); + z_once(&made, make_crc_table); #endif /* DYNAMIC_CRC_TABLE */ /* Pre-condition the CRC */ @@ -640,7 +572,7 @@ unsigned long ZEXPORT crc32_z(unsigned long crc, const unsigned char FAR *buf, } word += 3 * last; num -= 3 * last; - val = x2nmodp(last, 6); + val = x2nmodp((int)last, 6); crc = multmodp(val, crc) ^ crc1; crc = multmodp(val, crc) ^ crc2; } @@ -691,13 +623,12 @@ local z_word_t crc_word_big(z_word_t data) { #endif /* ========================================================================= */ -unsigned long ZEXPORT crc32_z(unsigned long crc, const unsigned char FAR *buf, - z_size_t len) { +uLong ZEXPORT crc32_z(uLong crc, const unsigned char FAR *buf, z_size_t len) { /* Return initial CRC, if requested. */ if (buf == Z_NULL) return 0; #ifdef DYNAMIC_CRC_TABLE - once(&made, make_crc_table); + z_once(&made, make_crc_table); #endif /* DYNAMIC_CRC_TABLE */ /* Pre-condition the CRC */ @@ -1012,28 +943,19 @@ unsigned long ZEXPORT crc32_z(unsigned long crc, const unsigned char FAR *buf, #endif /* ========================================================================= */ -unsigned long ZEXPORT crc32(unsigned long crc, const unsigned char FAR *buf, - uInt len) { +uLong ZEXPORT crc32(uLong crc, const unsigned char FAR *buf, uInt len) { + #ifdef HAVE_S390X_VX + return crc32_z_hook(crc, buf, len); + #endif return crc32_z(crc, buf, len); } -/* ========================================================================= */ -uLong ZEXPORT crc32_combine64(uLong crc1, uLong crc2, z_off64_t len2) { -#ifdef DYNAMIC_CRC_TABLE - once(&made, make_crc_table); -#endif /* DYNAMIC_CRC_TABLE */ - return multmodp(x2nmodp(len2, 3), crc1) ^ (crc2 & 0xffffffff); -} - -/* ========================================================================= */ -uLong ZEXPORT crc32_combine(uLong crc1, uLong crc2, z_off_t len2) { - return crc32_combine64(crc1, crc2, (z_off64_t)len2); -} - /* ========================================================================= */ uLong ZEXPORT crc32_combine_gen64(z_off64_t len2) { + if (len2 < 0) + return 0; #ifdef DYNAMIC_CRC_TABLE - once(&made, make_crc_table); + z_once(&made, make_crc_table); #endif /* DYNAMIC_CRC_TABLE */ return x2nmodp(len2, 3); } @@ -1045,5 +967,17 @@ uLong ZEXPORT crc32_combine_gen(z_off_t len2) { /* ========================================================================= */ uLong ZEXPORT crc32_combine_op(uLong crc1, uLong crc2, uLong op) { - return multmodp(op, crc1) ^ (crc2 & 0xffffffff); + if (op == 0) + return 0; + return multmodp(op, crc1 & 0xffffffff) ^ (crc2 & 0xffffffff); +} + +/* ========================================================================= */ +uLong ZEXPORT crc32_combine64(uLong crc1, uLong crc2, z_off64_t len2) { + return crc32_combine_op(crc1, crc2, crc32_combine_gen64(len2)); +} + +/* ========================================================================= */ +uLong ZEXPORT crc32_combine(uLong crc1, uLong crc2, z_off_t len2) { + return crc32_combine64(crc1, crc2, (z_off64_t)len2); } diff --git a/icecat/modules/zlib/src/deflate.c b/icecat/modules/zlib/src/deflate.c index 012ea8148e..d7d2c7c1ee 100644 --- a/icecat/modules/zlib/src/deflate.c +++ b/icecat/modules/zlib/src/deflate.c @@ -1,5 +1,5 @@ /* deflate.c -- compress data using the deflation algorithm - * Copyright (C) 1995-2024 Jean-loup Gailly and Mark Adler + * Copyright (C) 1995-2026 Jean-loup Gailly and Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -37,7 +37,7 @@ * REFERENCES * * Deutsch, L.P.,"DEFLATE Compressed Data Format Specification". - * Available in http://tools.ietf.org/html/rfc1951 + * Available at https://datatracker.ietf.org/doc/html/rfc1951 * * A description of the Rabin and Karp algorithm is given in the book * "Algorithms" by R. Sedgewick, Addison-Wesley, p252. @@ -52,7 +52,7 @@ #include "deflate.h" const char deflate_copyright[] = - " deflate 1.3.1 Copyright 1995-2024 Jean-loup Gailly and Mark Adler "; + " deflate 1.3.2 Copyright 1995-2026 Jean-loup Gailly and Mark Adler "; /* If you use the zlib library in a product, an acknowledgment is welcome in the documentation of your product. If for some reason you cannot @@ -170,8 +170,8 @@ local const config configuration_table[10] = { #define CLEAR_HASH(s) \ do { \ s->head[s->hash_size - 1] = NIL; \ - zmemzero((Bytef *)s->head, \ - (unsigned)(s->hash_size - 1)*sizeof(*s->head)); \ + zmemzero(s->head, (unsigned)(s->hash_size - 1)*sizeof(*s->head)); \ + s->slid = 0; \ } while (0) /* =========================================================================== @@ -195,8 +195,8 @@ local void slide_hash(deflate_state *s) { m = *--p; *p = (Pos)(m >= wsize ? m - wsize : NIL); } while (--n); - n = wsize; #ifndef FASTEST + n = wsize; p = &s->prev[n]; do { m = *--p; @@ -206,6 +206,7 @@ local void slide_hash(deflate_state *s) { */ } while (--n); #endif + s->slid = 1; } /* =========================================================================== @@ -259,7 +260,14 @@ local void fill_window(deflate_state *s) { more = (unsigned)(s->window_size -(ulg)s->lookahead -(ulg)s->strstart); /* Deal with !@#$% 64K limit: */ +#ifdef _MSC_VER +#pragma warning(push) +#pragma warning(disable: 4127) +#endif if (sizeof(int) <= 2) { +#ifdef _MSC_VER +#pragma warning(pop) +#endif if (more == 0 && s->strstart == 0 && s->lookahead == 0) { more = wsize; @@ -431,6 +439,7 @@ int ZEXPORT deflateInit2_(z_streamp strm, int level, int method, if (windowBits == 8) windowBits = 9; /* until 256-byte window bug fixed */ s = (deflate_state *) ZALLOC(strm, 1, sizeof(deflate_state)); if (s == Z_NULL) return Z_MEM_ERROR; + zmemzero(s, sizeof(deflate_state)); strm->state = (struct internal_state FAR *)s; s->strm = strm; s->status = INIT_STATE; /* to pass state test in deflateReset() */ @@ -712,10 +721,23 @@ int ZEXPORT deflateSetHeader(z_streamp strm, gz_headerp head) { /* ========================================================================= */ int ZEXPORT deflatePending(z_streamp strm, unsigned *pending, int *bits) { if (deflateStateCheck(strm)) return Z_STREAM_ERROR; - if (pending != Z_NULL) - *pending = strm->state->pending; if (bits != Z_NULL) *bits = strm->state->bi_valid; + if (pending != Z_NULL) { + *pending = (unsigned)strm->state->pending; + if (*pending != strm->state->pending) { + *pending = (unsigned)-1; + return Z_BUF_ERROR; + } + } + return Z_OK; +} + +/* ========================================================================= */ +int ZEXPORT deflateUsed(z_streamp strm, int *bits) { + if (deflateStateCheck(strm)) return Z_STREAM_ERROR; + if (bits != Z_NULL) + *bits = strm->state->bi_used; return Z_OK; } @@ -831,28 +853,34 @@ int ZEXPORT deflateTune(z_streamp strm, int good_length, int max_lazy, * * Shifts are used to approximate divisions, for speed. */ -uLong ZEXPORT deflateBound(z_streamp strm, uLong sourceLen) { +z_size_t ZEXPORT deflateBound_z(z_streamp strm, z_size_t sourceLen) { deflate_state *s; - uLong fixedlen, storelen, wraplen; + z_size_t fixedlen, storelen, wraplen, bound; /* upper bound for fixed blocks with 9-bit literals and length 255 (memLevel == 2, which is the lowest that may not use stored blocks) -- ~13% overhead plus a small constant */ fixedlen = sourceLen + (sourceLen >> 3) + (sourceLen >> 8) + (sourceLen >> 9) + 4; + if (fixedlen < sourceLen) + fixedlen = (z_size_t)-1; /* upper bound for stored blocks with length 127 (memLevel == 1) -- ~4% overhead plus a small constant */ storelen = sourceLen + (sourceLen >> 5) + (sourceLen >> 7) + (sourceLen >> 11) + 7; + if (storelen < sourceLen) + storelen = (z_size_t)-1; - /* if can't get parameters, return larger bound plus a zlib wrapper */ - if (deflateStateCheck(strm)) - return (fixedlen > storelen ? fixedlen : storelen) + 6; + /* if can't get parameters, return larger bound plus a wrapper */ + if (deflateStateCheck(strm)) { + bound = fixedlen > storelen ? fixedlen : storelen; + return bound + 18 < bound ? (z_size_t)-1 : bound + 18; + } /* compute wrapper length */ s = strm->state; - switch (s->wrap) { + switch (s->wrap < 0 ? -s->wrap : s->wrap) { case 0: /* raw deflate */ wraplen = 0; break; @@ -882,18 +910,25 @@ uLong ZEXPORT deflateBound(z_streamp strm, uLong sourceLen) { break; #endif default: /* for compiler happiness */ - wraplen = 6; + wraplen = 18; } /* if not default parameters, return one of the conservative bounds */ - if (s->w_bits != 15 || s->hash_bits != 8 + 7) - return (s->w_bits <= s->hash_bits && s->level ? fixedlen : storelen) + - wraplen; + if (s->w_bits != 15 || s->hash_bits != 8 + 7) { + bound = s->w_bits <= s->hash_bits && s->level ? fixedlen : + storelen; + return bound + wraplen < bound ? (z_size_t)-1 : bound + wraplen; + } /* default settings: return tight bound for that case -- ~0.03% overhead plus a small constant */ - return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + - (sourceLen >> 25) + 13 - 6 + wraplen; + bound = sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + + (sourceLen >> 25) + 13 - 6 + wraplen; + return bound < sourceLen ? (z_size_t)-1 : bound; +} +uLong ZEXPORT deflateBound(z_streamp strm, uLong sourceLen) { + z_size_t bound = deflateBound_z(strm, sourceLen); + return (uLong)bound != bound ? (uLong)-1 : (uLong)bound; } /* ========================================================================= @@ -917,8 +952,8 @@ local void flush_pending(z_streamp strm) { deflate_state *s = strm->state; _tr_flush_bits(s); - len = s->pending; - if (len > strm->avail_out) len = strm->avail_out; + len = s->pending > strm->avail_out ? strm->avail_out : + (unsigned)s->pending; if (len == 0) return; zmemcpy(strm->next_out, s->pending_out, len); @@ -938,8 +973,8 @@ local void flush_pending(z_streamp strm) { #define HCRC_UPDATE(beg) \ do { \ if (s->gzhead->hcrc && s->pending > (beg)) \ - strm->adler = crc32(strm->adler, s->pending_buf + (beg), \ - s->pending - (beg)); \ + strm->adler = crc32_z(strm->adler, s->pending_buf + (beg), \ + s->pending - (beg)); \ } while (0) /* ========================================================================= */ @@ -1073,8 +1108,8 @@ int ZEXPORT deflate(z_streamp strm, int flush) { put_byte(s, (s->gzhead->extra_len >> 8) & 0xff); } if (s->gzhead->hcrc) - strm->adler = crc32(strm->adler, s->pending_buf, - s->pending); + strm->adler = crc32_z(strm->adler, s->pending_buf, + s->pending); s->gzindex = 0; s->status = EXTRA_STATE; } @@ -1082,9 +1117,9 @@ int ZEXPORT deflate(z_streamp strm, int flush) { if (s->status == EXTRA_STATE) { if (s->gzhead->extra != Z_NULL) { ulg beg = s->pending; /* start of bytes to update crc */ - uInt left = (s->gzhead->extra_len & 0xffff) - s->gzindex; + ulg left = (s->gzhead->extra_len & 0xffff) - s->gzindex; while (s->pending + left > s->pending_buf_size) { - uInt copy = s->pending_buf_size - s->pending; + ulg copy = s->pending_buf_size - s->pending; zmemcpy(s->pending_buf + s->pending, s->gzhead->extra + s->gzindex, copy); s->pending = s->pending_buf_size; @@ -1295,12 +1330,13 @@ int ZEXPORT deflateCopy(z_streamp dest, z_streamp source) { ss = source->state; - zmemcpy((voidpf)dest, (voidpf)source, sizeof(z_stream)); + zmemcpy(dest, source, sizeof(z_stream)); ds = (deflate_state *) ZALLOC(dest, 1, sizeof(deflate_state)); if (ds == Z_NULL) return Z_MEM_ERROR; + zmemzero(ds, sizeof(deflate_state)); dest->state = (struct internal_state FAR *) ds; - zmemcpy((voidpf)ds, (voidpf)ss, sizeof(deflate_state)); + zmemcpy(ds, ss, sizeof(deflate_state)); ds->strm = dest; ds->window = (Bytef *) ZALLOC(dest, ds->w_size, 2*sizeof(Byte)); @@ -1313,18 +1349,23 @@ int ZEXPORT deflateCopy(z_streamp dest, z_streamp source) { deflateEnd (dest); return Z_MEM_ERROR; } - /* following zmemcpy do not work for 16-bit MSDOS */ - zmemcpy(ds->window, ss->window, ds->w_size * 2 * sizeof(Byte)); - zmemcpy((voidpf)ds->prev, (voidpf)ss->prev, ds->w_size * sizeof(Pos)); - zmemcpy((voidpf)ds->head, (voidpf)ss->head, ds->hash_size * sizeof(Pos)); - zmemcpy(ds->pending_buf, ss->pending_buf, ds->lit_bufsize * LIT_BUFS); + /* following zmemcpy's do not work for 16-bit MSDOS */ + zmemcpy(ds->window, ss->window, ss->high_water); + zmemcpy(ds->prev, ss->prev, + (ss->slid || ss->strstart - ss->insert > ds->w_size ? ds->w_size : + ss->strstart - ss->insert) * sizeof(Pos)); + zmemcpy(ds->head, ss->head, ds->hash_size * sizeof(Pos)); ds->pending_out = ds->pending_buf + (ss->pending_out - ss->pending_buf); + zmemcpy(ds->pending_out, ss->pending_out, ss->pending); #ifdef LIT_MEM ds->d_buf = (ushf *)(ds->pending_buf + (ds->lit_bufsize << 1)); ds->l_buf = ds->pending_buf + (ds->lit_bufsize << 2); + zmemcpy(ds->d_buf, ss->d_buf, ss->sym_next * sizeof(ush)); + zmemcpy(ds->l_buf, ss->l_buf, ss->sym_next); #else ds->sym_buf = ds->pending_buf + ds->lit_bufsize; + zmemcpy(ds->sym_buf, ss->sym_buf, ss->sym_next); #endif ds->l_desc.dyn_tree = ds->dyn_ltree; @@ -1347,9 +1388,9 @@ int ZEXPORT deflateCopy(z_streamp dest, z_streamp source) { */ local uInt longest_match(deflate_state *s, IPos cur_match) { unsigned chain_length = s->max_chain_length;/* max hash chain length */ - register Bytef *scan = s->window + s->strstart; /* current string */ - register Bytef *match; /* matched string */ - register int len; /* length of current match */ + Bytef *scan = s->window + s->strstart; /* current string */ + Bytef *match; /* matched string */ + int len; /* length of current match */ int best_len = (int)s->prev_length; /* best match length so far */ int nice_match = s->nice_match; /* stop if match long enough */ IPos limit = s->strstart > (IPos)MAX_DIST(s) ? @@ -1364,13 +1405,13 @@ local uInt longest_match(deflate_state *s, IPos cur_match) { /* Compare two bytes at a time. Note: this is not always beneficial. * Try with and without -DUNALIGNED_OK to check. */ - register Bytef *strend = s->window + s->strstart + MAX_MATCH - 1; - register ush scan_start = *(ushf*)scan; - register ush scan_end = *(ushf*)(scan + best_len - 1); + Bytef *strend = s->window + s->strstart + MAX_MATCH - 1; + ush scan_start = *(ushf*)scan; + ush scan_end = *(ushf*)(scan + best_len - 1); #else - register Bytef *strend = s->window + s->strstart + MAX_MATCH; - register Byte scan_end1 = scan[best_len - 1]; - register Byte scan_end = scan[best_len]; + Bytef *strend = s->window + s->strstart + MAX_MATCH; + Byte scan_end1 = scan[best_len - 1]; + Byte scan_end = scan[best_len]; #endif /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16. @@ -1494,10 +1535,10 @@ local uInt longest_match(deflate_state *s, IPos cur_match) { * Optimized version for FASTEST only */ local uInt longest_match(deflate_state *s, IPos cur_match) { - register Bytef *scan = s->window + s->strstart; /* current string */ - register Bytef *match; /* matched string */ - register int len; /* length of current match */ - register Bytef *strend = s->window + s->strstart + MAX_MATCH; + Bytef *scan = s->window + s->strstart; /* current string */ + Bytef *match; /* matched string */ + int len; /* length of current match */ + Bytef *strend = s->window + s->strstart + MAX_MATCH; /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16. * It is easy to get rid of this optimization if necessary. @@ -1557,7 +1598,7 @@ local uInt longest_match(deflate_state *s, IPos cur_match) { local void check_match(deflate_state *s, IPos start, IPos match, int length) { /* check that the match is indeed a match */ Bytef *back = s->window + (int)match, *here = s->window + start; - IPos len = length; + IPos len = (IPos)length; if (match == (IPos)-1) { /* match starts one byte before the current window -- just compare the subsequent length-1 bytes */ @@ -1629,13 +1670,14 @@ local block_state deflate_stored(deflate_state *s, int flush) { * this is 32K. This can be as small as 507 bytes for memLevel == 1. For * large input and output buffers, the stored block size will be larger. */ - unsigned min_block = MIN(s->pending_buf_size - 5, s->w_size); + unsigned min_block = (unsigned)(MIN(s->pending_buf_size - 5, s->w_size)); /* Copy as many min_block or larger stored blocks directly to next_out as * possible. If flushing, copy the remaining available input to next_out as * stored blocks, if there is enough space. */ - unsigned len, left, have, last = 0; + int last = 0; + unsigned len, left, have; unsigned used = s->strm->avail_in; do { /* Set len to the maximum size block that we can copy directly with the @@ -1643,12 +1685,12 @@ local block_state deflate_stored(deflate_state *s, int flush) { * would be copied from what's left in the window. */ len = MAX_STORED; /* maximum deflate stored block length */ - have = (s->bi_valid + 42) >> 3; /* number of header bytes */ + have = ((unsigned)s->bi_valid + 42) >> 3; /* bytes in header */ if (s->strm->avail_out < have) /* need room for header */ break; /* maximum stored block length that will fit in avail_out: */ have = s->strm->avail_out - have; - left = s->strstart - s->block_start; /* bytes left in window */ + left = (unsigned)(s->strstart - s->block_start); /* window bytes */ if (len > (ulg)left + s->strm->avail_in) len = left + s->strm->avail_in; /* limit len to the input */ if (len > have) @@ -1671,10 +1713,10 @@ local block_state deflate_stored(deflate_state *s, int flush) { _tr_stored_block(s, (char *)0, 0L, last); /* Replace the lengths in the dummy stored block with len. */ - s->pending_buf[s->pending - 4] = len; - s->pending_buf[s->pending - 3] = len >> 8; - s->pending_buf[s->pending - 2] = ~len; - s->pending_buf[s->pending - 1] = ~len >> 8; + s->pending_buf[s->pending - 4] = (Bytef)len; + s->pending_buf[s->pending - 3] = (Bytef)(len >> 8); + s->pending_buf[s->pending - 2] = (Bytef)~len; + s->pending_buf[s->pending - 1] = (Bytef)(~len >> 8); /* Write the stored block header bytes. */ flush_pending(s->strm); @@ -1745,8 +1787,10 @@ local block_state deflate_stored(deflate_state *s, int flush) { s->high_water = s->strstart; /* If the last block was written to next_out, then done. */ - if (last) + if (last) { + s->bi_used = 8; return finish_done; + } /* If flushing and all input has been consumed, then done. */ if (flush != Z_NO_FLUSH && flush != Z_FINISH && @@ -1754,7 +1798,7 @@ local block_state deflate_stored(deflate_state *s, int flush) { return block_done; /* Fill the window with any remaining input. */ - have = s->window_size - s->strstart; + have = (unsigned)(s->window_size - s->strstart); if (s->strm->avail_in > have && s->block_start >= (long)s->w_size) { /* Slide the window down. */ s->block_start -= s->w_size; @@ -1781,11 +1825,11 @@ local block_state deflate_stored(deflate_state *s, int flush) { * have enough input for a worthy block, or if flushing and there is enough * room for the remaining input as a stored block in the pending buffer. */ - have = (s->bi_valid + 42) >> 3; /* number of header bytes */ + have = ((unsigned)s->bi_valid + 42) >> 3; /* bytes in header */ /* maximum stored block length that will fit in pending: */ - have = MIN(s->pending_buf_size - have, MAX_STORED); + have = (unsigned)MIN(s->pending_buf_size - have, MAX_STORED); min_block = MIN(have, s->w_size); - left = s->strstart - s->block_start; + left = (unsigned)(s->strstart - s->block_start); if (left >= min_block || ((left || flush == Z_FINISH) && flush != Z_NO_FLUSH && s->strm->avail_in == 0 && left <= have)) { @@ -1798,6 +1842,8 @@ local block_state deflate_stored(deflate_state *s, int flush) { } /* We've done all we can with the available input and output. */ + if (last) + s->bi_used = 8; return last ? finish_started : need_more; } @@ -1846,7 +1892,7 @@ local block_state deflate_fast(deflate_state *s, int flush) { /* longest_match() sets match_start */ } if (s->match_length >= MIN_MATCH) { - check_match(s, s->strstart, s->match_start, s->match_length); + check_match(s, s->strstart, s->match_start, (int)s->match_length); _tr_tally_dist(s, s->strstart - s->match_start, s->match_length - MIN_MATCH, bflush); @@ -1968,7 +2014,7 @@ local block_state deflate_slow(deflate_state *s, int flush) { uInt max_insert = s->strstart + s->lookahead - MIN_MATCH; /* Do not insert strings in hash table beyond this. */ - check_match(s, s->strstart - 1, s->prev_match, s->prev_length); + check_match(s, s->strstart - 1, s->prev_match, (int)s->prev_length); _tr_tally_dist(s, s->strstart - 1 - s->prev_match, s->prev_length - MIN_MATCH, bflush); @@ -2076,7 +2122,7 @@ local block_state deflate_rle(deflate_state *s, int flush) { /* Emit match if have run of MIN_MATCH or longer, else emit literal */ if (s->match_length >= MIN_MATCH) { - check_match(s, s->strstart, s->strstart - 1, s->match_length); + check_match(s, s->strstart, s->strstart - 1, (int)s->match_length); _tr_tally_dist(s, 1, s->match_length - MIN_MATCH, bflush); diff --git a/icecat/modules/zlib/src/deflate.h b/icecat/modules/zlib/src/deflate.h index 300c6ada62..0732ba83ad 100644 --- a/icecat/modules/zlib/src/deflate.h +++ b/icecat/modules/zlib/src/deflate.h @@ -1,5 +1,5 @@ /* deflate.h -- internal compression state - * Copyright (C) 1995-2024 Jean-loup Gailly + * Copyright (C) 1995-2026 Jean-loup Gailly * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -271,6 +271,9 @@ typedef struct internal_state { /* Number of valid bits in bi_buf. All bits above the last valid bit * are always zero. */ + int bi_used; + /* Last number of used bits when going to a byte boundary. + */ ulg high_water; /* High water mark offset in window for initialized bytes -- bytes above @@ -279,6 +282,9 @@ typedef struct internal_state { * updated to the new high water mark. */ + int slid; + /* True if the hash table has been slid since it was cleared. */ + } FAR deflate_state; /* Output a byte on the stream. diff --git a/icecat/modules/zlib/src/gzguts.h b/icecat/modules/zlib/src/gzguts.h index eba72085bb..266305debc 100644 --- a/icecat/modules/zlib/src/gzguts.h +++ b/icecat/modules/zlib/src/gzguts.h @@ -1,5 +1,5 @@ /* gzguts.h -- zlib internal header definitions for gz* operations - * Copyright (C) 2004-2024 Mark Adler + * Copyright (C) 2004-2026 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -17,6 +17,18 @@ # define ZLIB_INTERNAL #endif +#if defined(_WIN32) +# ifndef WIN32_LEAN_AND_MEAN +# define WIN32_LEAN_AND_MEAN +# endif +# ifndef _CRT_SECURE_NO_WARNINGS +# define _CRT_SECURE_NO_WARNINGS +# endif +# ifndef _CRT_NONSTDC_NO_DEPRECATE +# define _CRT_NONSTDC_NO_DEPRECATE +# endif +#endif + #include #include "zlib.h" #ifdef STDC @@ -25,8 +37,8 @@ # include #endif -#ifndef _POSIX_SOURCE -# define _POSIX_SOURCE +#ifndef _POSIX_C_SOURCE +# define _POSIX_C_SOURCE 200112L #endif #include @@ -36,19 +48,13 @@ #if defined(__TURBOC__) || defined(_MSC_VER) || defined(_WIN32) # include +# include #endif -#if defined(_WIN32) +#if defined(_WIN32) && !defined(WIDECHAR) # define WIDECHAR #endif -#ifdef WINAPI_FAMILY -# define open _open -# define read _read -# define write _write -# define close _close -#endif - #ifdef NO_DEFLATE /* for compatibility with old definition */ # define NO_GZCOMPRESS #endif @@ -72,33 +78,28 @@ #endif #ifndef HAVE_VSNPRINTF -# ifdef MSDOS +# if !defined(NO_vsnprintf) && \ + (defined(MSDOS) || defined(__TURBOC__) || defined(__SASC) || \ + defined(VMS) || defined(__OS400) || defined(__MVS__)) /* vsnprintf may exist on some MS-DOS compilers (DJGPP?), but for now we just assume it doesn't. */ # define NO_vsnprintf # endif -# ifdef __TURBOC__ -# define NO_vsnprintf -# endif # ifdef WIN32 /* In Win32, vsnprintf is available as the "non-ANSI" _vsnprintf. */ -# if !defined(vsnprintf) && !defined(NO_vsnprintf) -# if !defined(_MSC_VER) || ( defined(_MSC_VER) && _MSC_VER < 1500 ) -# define vsnprintf _vsnprintf +# if !defined(_MSC_VER) || ( defined(_MSC_VER) && _MSC_VER < 1500 ) +# ifndef vsnprintf +# define vsnprintf _vsnprintf # endif # endif -# endif -# ifdef __SASC -# define NO_vsnprintf -# endif -# ifdef VMS -# define NO_vsnprintf -# endif -# ifdef __OS400__ -# define NO_vsnprintf -# endif -# ifdef __MVS__ -# define NO_vsnprintf +# elif !defined(__STDC_VERSION__) || __STDC_VERSION__-0 < 199901L +/* Otherwise if C89/90, assume no C99 snprintf() or vsnprintf() */ +# ifndef NO_snprintf +# define NO_snprintf +# endif +# ifndef NO_vsnprintf +# define NO_vsnprintf +# endif # endif #endif @@ -182,7 +183,9 @@ typedef struct { unsigned char *out; /* output buffer (double-sized when reading) */ int direct; /* 0 if processing gzip, 1 if transparent */ /* just for reading */ + int junk; /* -1 = start, 1 = junk candidate, 0 = in gzip */ int how; /* 0: get header, 1: copy, 2: decompress */ + int again; /* true if EAGAIN or EWOULDBLOCK on last i/o */ z_off64_t start; /* where the gzip data started, for rewinding */ int eof; /* true if end of input file reached */ int past; /* true if read requested past end */ @@ -192,7 +195,6 @@ typedef struct { int reset; /* true if a reset is pending after a Z_FINISH */ /* seek request */ z_off64_t skip; /* amount to skip (already rewound if backwards) */ - int seek; /* true if seek request pending */ /* error information */ int err; /* error code */ char *msg; /* error message */ diff --git a/icecat/modules/zlib/src/gzlib.c b/icecat/modules/zlib/src/gzlib.c index 983153cc8e..7a37a96cf0 100644 --- a/icecat/modules/zlib/src/gzlib.c +++ b/icecat/modules/zlib/src/gzlib.c @@ -1,19 +1,19 @@ /* gzlib.c -- zlib functions common to reading and writing gzip files - * Copyright (C) 2004-2024 Mark Adler + * Copyright (C) 2004-2026 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ #include "gzguts.h" -#if defined(_WIN32) && !defined(__BORLANDC__) +#if defined(__DJGPP__) +# define LSEEK llseek +#elif defined(_WIN32) && !defined(__BORLANDC__) && !defined(UNDER_CE) # define LSEEK _lseeki64 -#else -#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0 +#elif defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0 # define LSEEK lseek64 #else # define LSEEK lseek #endif -#endif #if defined UNDER_CE @@ -52,7 +52,7 @@ char ZLIB_INTERNAL *gz_strwinerror(DWORD error) { msgbuf[chars] = 0; } - wcstombs(buf, msgbuf, chars + 1); + wcstombs(buf, msgbuf, chars + 1); /* assumes buf is big enough */ LocalFree(msgbuf); } else { @@ -72,10 +72,12 @@ local void gz_reset(gz_statep state) { state->eof = 0; /* not at end of file */ state->past = 0; /* have not read past end yet */ state->how = LOOK; /* look for gzip header */ + state->junk = -1; /* mark first member */ } else /* for writing ... */ state->reset = 0; /* no deflateReset pending */ - state->seek = 0; /* no seek request pending */ + state->again = 0; /* no stalled i/o yet */ + state->skip = 0; /* no seek request pending */ gz_error(state, Z_OK, NULL); /* clear error */ state->x.pos = 0; /* no uncompressed data yet */ state->strm.avail_in = 0; /* no input data yet */ @@ -85,16 +87,13 @@ local void gz_reset(gz_statep state) { local gzFile gz_open(const void *path, int fd, const char *mode) { gz_statep state; z_size_t len; - int oflag; -#ifdef O_CLOEXEC - int cloexec = 0; -#endif + int oflag = 0; #ifdef O_EXCL int exclusive = 0; #endif /* check input */ - if (path == NULL) + if (path == NULL || mode == NULL) return NULL; /* allocate gzFile structure to return */ @@ -103,6 +102,7 @@ local gzFile gz_open(const void *path, int fd, const char *mode) { return NULL; state->size = 0; /* no buffers allocated yet */ state->want = GZBUFSIZE; /* requested buffer size */ + state->err = Z_OK; /* no error yet */ state->msg = NULL; /* no error message yet */ /* interpret mode */ @@ -133,7 +133,7 @@ local gzFile gz_open(const void *path, int fd, const char *mode) { break; #ifdef O_CLOEXEC case 'e': - cloexec = 1; + oflag |= O_CLOEXEC; break; #endif #ifdef O_EXCL @@ -153,6 +153,14 @@ local gzFile gz_open(const void *path, int fd, const char *mode) { case 'F': state->strategy = Z_FIXED; break; + case 'G': + state->direct = -1; + break; +#ifdef O_NONBLOCK + case 'N': + oflag |= O_NONBLOCK; + break; +#endif case 'T': state->direct = 1; break; @@ -168,22 +176,30 @@ local gzFile gz_open(const void *path, int fd, const char *mode) { return NULL; } - /* can't force transparent read */ + /* direct is 0, 1 if "T", or -1 if "G" (last "G" or "T" wins) */ if (state->mode == GZ_READ) { - if (state->direct) { + if (state->direct == 1) { + /* can't force a transparent read */ free(state); return NULL; } - state->direct = 1; /* for empty file */ + if (state->direct == 0) + /* default when reading is auto-detect of gzip vs. transparent -- + start with a transparent assumption in case of an empty file */ + state->direct = 1; } + else if (state->direct == -1) { + /* "G" has no meaning when writing -- disallow it */ + free(state); + return NULL; + } + /* if reading, direct == 1 for auto-detect, -1 for gzip only; if writing or + appending, direct == 0 for gzip, 1 for transparent (copy in to out) */ /* save the path name for error messages */ #ifdef WIDECHAR - if (fd == -2) { + if (fd == -2) len = wcstombs(NULL, path, 0); - if (len == (z_size_t)-1) - len = 0; - } else #endif len = strlen((const char *)path); @@ -193,29 +209,29 @@ local gzFile gz_open(const void *path, int fd, const char *mode) { return NULL; } #ifdef WIDECHAR - if (fd == -2) + if (fd == -2) { if (len) wcstombs(state->path, path, len + 1); else *(state->path) = 0; + } else #endif + { #if !defined(NO_snprintf) && !defined(NO_vsnprintf) (void)snprintf(state->path, len + 1, "%s", (const char *)path); #else strcpy(state->path, path); #endif + } /* compute the flags for open() */ - oflag = + oflag |= #ifdef O_LARGEFILE O_LARGEFILE | #endif #ifdef O_BINARY O_BINARY | -#endif -#ifdef O_CLOEXEC - (cloexec ? O_CLOEXEC : 0) | #endif (state->mode == GZ_READ ? O_RDONLY : @@ -228,11 +244,23 @@ local gzFile gz_open(const void *path, int fd, const char *mode) { O_APPEND))); /* open the file with the appropriate flags (or just use fd) */ - state->fd = fd > -1 ? fd : ( + if (fd == -1) + state->fd = open((const char *)path, oflag, 0666); #ifdef WIDECHAR - fd == -2 ? _wopen(path, oflag, 0666) : + else if (fd == -2) + state->fd = _wopen(path, oflag, _S_IREAD | _S_IWRITE); #endif - open((const char *)path, oflag, 0666)); + else { +#ifdef O_NONBLOCK + if (oflag & O_NONBLOCK) + fcntl(fd, F_SETFL, fcntl(fd, F_GETFL) | O_NONBLOCK); +#endif +#ifdef O_CLOEXEC + if (oflag & O_CLOEXEC) + fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | O_CLOEXEC); +#endif + state->fd = fd; + } if (state->fd == -1) { free(state->path); free(state); @@ -359,9 +387,10 @@ z_off64_t ZEXPORT gzseek64(gzFile file, z_off64_t offset, int whence) { /* normalize offset to a SEEK_CUR specification */ if (whence == SEEK_SET) offset -= state->x.pos; - else if (state->seek) - offset += state->skip; - state->seek = 0; + else { + offset += state->past ? 0 : state->skip; + state->skip = 0; + } /* if within raw area while reading, just go there */ if (state->mode == GZ_READ && state->how == COPY && @@ -372,7 +401,7 @@ z_off64_t ZEXPORT gzseek64(gzFile file, z_off64_t offset, int whence) { state->x.have = 0; state->eof = 0; state->past = 0; - state->seek = 0; + state->skip = 0; gz_error(state, Z_OK, NULL); state->strm.avail_in = 0; state->x.pos += offset; @@ -401,10 +430,7 @@ z_off64_t ZEXPORT gzseek64(gzFile file, z_off64_t offset, int whence) { } /* request skip (if not zero) */ - if (offset) { - state->seek = 1; - state->skip = offset; - } + state->skip = offset; return state->x.pos + offset; } @@ -428,7 +454,7 @@ z_off64_t ZEXPORT gztell64(gzFile file) { return -1; /* return position */ - return state->x.pos + (state->seek ? state->skip : 0); + return state->x.pos + (state->past ? 0 : state->skip); } /* -- see zlib.h -- */ @@ -535,7 +561,7 @@ void ZLIB_INTERNAL gz_error(gz_statep state, int err, const char *msg) { } /* if fatal, set state->x.have to 0 so that the gzgetc() macro fails */ - if (err != Z_OK && err != Z_BUF_ERROR) + if (err != Z_OK && err != Z_BUF_ERROR && !state->again) state->x.have = 0; /* set error code, and if no message, then done */ @@ -572,6 +598,7 @@ unsigned ZLIB_INTERNAL gz_intmax(void) { return INT_MAX; #else unsigned p = 1, q; + do { q = p; p <<= 1; diff --git a/icecat/modules/zlib/src/gzread.c b/icecat/modules/zlib/src/gzread.c index 4168cbc887..8b3e369dac 100644 --- a/icecat/modules/zlib/src/gzread.c +++ b/icecat/modules/zlib/src/gzread.c @@ -1,5 +1,5 @@ /* gzread.c -- zlib functions for reading gzip files - * Copyright (C) 2004-2017 Mark Adler + * Copyright (C) 2004-2026 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -8,23 +8,36 @@ /* Use read() to load a buffer -- return -1 on error, otherwise 0. Read from state->fd, and update state->eof, state->err, and state->msg as appropriate. This function needs to loop on read(), since read() is not guaranteed to - read the number of bytes requested, depending on the type of descriptor. */ + read the number of bytes requested, depending on the type of descriptor. It + also needs to loop to manage the fact that read() returns an int. If the + descriptor is non-blocking and read() returns with no data in order to avoid + blocking, then gz_load() will return 0 if some data has been read, or -1 if + no data has been read. Either way, state->again is set true to indicate a + non-blocking event. If errno is non-zero on return, then there was an error + signaled from read(). *have is set to the number of bytes read. */ local int gz_load(gz_statep state, unsigned char *buf, unsigned len, unsigned *have) { int ret; unsigned get, max = ((unsigned)-1 >> 2) + 1; + state->again = 0; + errno = 0; *have = 0; do { get = len - *have; if (get > max) get = max; - ret = read(state->fd, buf + *have, get); + ret = (int)read(state->fd, buf + *have, get); if (ret <= 0) break; *have += (unsigned)ret; } while (*have < len); if (ret < 0) { + if (errno == EAGAIN || errno == EWOULDBLOCK) { + state->again = 1; + if (*have != 0) + return 0; + } gz_error(state, Z_ERRNO, zstrerror()); return -1; } @@ -50,10 +63,14 @@ local int gz_avail(gz_statep state) { if (strm->avail_in) { /* copy what's there to the start */ unsigned char *p = state->in; unsigned const char *q = strm->next_in; - unsigned n = strm->avail_in; - do { - *p++ = *q++; - } while (--n); + + if (q != p) { + unsigned n = strm->avail_in; + + do { + *p++ = *q++; + } while (--n); + } } if (gz_load(state, state->in + strm->avail_in, state->size - strm->avail_in, &got) == -1) @@ -104,39 +121,44 @@ local int gz_look(gz_statep state) { } } - /* get at least the magic bytes in the input buffer */ - if (strm->avail_in < 2) { - if (gz_avail(state) == -1) - return -1; - if (strm->avail_in == 0) - return 0; - } - - /* look for gzip magic bytes -- if there, do gzip decoding (note: there is - a logical dilemma here when considering the case of a partially written - gzip file, to wit, if a single 31 byte is written, then we cannot tell - whether this is a single-byte file, or just a partially written gzip - file -- for here we assume that if a gzip file is being written, then - the header will be written in a single operation, so that reading a - single byte is sufficient indication that it is not a gzip file) */ - if (strm->avail_in > 1 && - strm->next_in[0] == 31 && strm->next_in[1] == 139) { + /* if transparent reading is disabled, which would only be at the start, or + if we're looking for a gzip member after the first one, which is not at + the start, then proceed directly to look for a gzip member next */ + if (state->direct == -1 || state->junk == 0) { inflateReset(strm); state->how = GZIP; + state->junk = state->junk != -1; state->direct = 0; return 0; } - /* no gzip header -- if we were decoding gzip before, then this is trailing - garbage. Ignore the trailing garbage and finish. */ - if (state->direct == 0) { - strm->avail_in = 0; - state->eof = 1; - state->x.have = 0; + /* otherwise we're at the start with auto-detect -- we check to see if the + first four bytes could be gzip header in order to decide whether or not + this will be a transparent read */ + + /* load any header bytes into the input buffer -- if the input is empty, + then it's not an error as this is a transparent read of zero bytes */ + if (gz_avail(state) == -1) + return -1; + if (strm->avail_in == 0 || (state->again && strm->avail_in < 4)) + /* if non-blocking input stalled before getting four bytes, then + return and wait until a later call has accumulated enough */ + return 0; + + /* see if this is (likely) gzip input -- if the first four bytes are + consistent with a gzip header, then go look for the first gzip member, + otherwise proceed to copy the input transparently */ + if (strm->avail_in > 3 && + strm->next_in[0] == 31 && strm->next_in[1] == 139 && + strm->next_in[2] == 8 && strm->next_in[3] < 32) { + inflateReset(strm); + state->how = GZIP; + state->junk = 1; + state->direct = 0; return 0; } - /* doing raw i/o, copy any leftover input to output -- this assumes that + /* doing raw i/o: copy any leftover input to output -- this assumes that the output buffer is larger than the input buffer, which also assures space for gzungetc() */ state->x.next = state->out; @@ -144,15 +166,17 @@ local int gz_look(gz_statep state) { state->x.have = strm->avail_in; strm->avail_in = 0; state->how = COPY; - state->direct = 1; return 0; } /* Decompress from input to the provided next_out and avail_out in the state. On return, state->x.have and state->x.next point to the just decompressed - data. If the gzip stream completes, state->how is reset to LOOK to look for - the next gzip stream or raw data, once state->x.have is depleted. Returns 0 - on success, -1 on failure. */ + data. If the gzip stream completes, state->how is reset to LOOK to look for + the next gzip stream or raw data, once state->x.have is depleted. Returns 0 + on success, -1 on failure. If EOF is reached when looking for more input to + complete the gzip member, then an unexpected end of file error is raised. + If there is no more input, but state->again is true, then EOF has not been + reached, and no error is raised. */ local int gz_decomp(gz_statep state) { int ret = Z_OK; unsigned had; @@ -162,28 +186,41 @@ local int gz_decomp(gz_statep state) { had = strm->avail_out; do { /* get more input for inflate() */ - if (strm->avail_in == 0 && gz_avail(state) == -1) - return -1; + if (strm->avail_in == 0 && gz_avail(state) == -1) { + ret = state->err; + break; + } if (strm->avail_in == 0) { - gz_error(state, Z_BUF_ERROR, "unexpected end of file"); + if (!state->again) + gz_error(state, Z_BUF_ERROR, "unexpected end of file"); break; } /* decompress and handle errors */ ret = inflate(strm, Z_NO_FLUSH); + if (strm->avail_out < had) + /* any decompressed data marks this as a real gzip stream */ + state->junk = 0; if (ret == Z_STREAM_ERROR || ret == Z_NEED_DICT) { gz_error(state, Z_STREAM_ERROR, "internal error: inflate stream corrupt"); - return -1; + break; } if (ret == Z_MEM_ERROR) { gz_error(state, Z_MEM_ERROR, "out of memory"); - return -1; + break; } if (ret == Z_DATA_ERROR) { /* deflate stream invalid */ + if (state->junk == 1) { /* trailing garbage is ok */ + strm->avail_in = 0; + state->eof = 1; + state->how = LOOK; + ret = Z_OK; + break; + } gz_error(state, Z_DATA_ERROR, strm->msg == NULL ? "compressed data error" : strm->msg); - return -1; + break; } } while (strm->avail_out && ret != Z_STREAM_END); @@ -192,11 +229,14 @@ local int gz_decomp(gz_statep state) { state->x.next = strm->next_out - state->x.have; /* if the gzip stream completed successfully, look for another */ - if (ret == Z_STREAM_END) + if (ret == Z_STREAM_END) { + state->junk = 0; state->how = LOOK; + return 0; + } - /* good decompression */ - return 0; + /* return decompression status */ + return ret != Z_OK ? -1 : 0; } /* Fetch data and put it in the output buffer. Assumes state->x.have is 0. @@ -227,25 +267,31 @@ local int gz_fetch(gz_statep state) { strm->next_out = state->out; if (gz_decomp(state) == -1) return -1; + break; + default: + gz_error(state, Z_STREAM_ERROR, "state corrupt"); + return -1; } } while (state->x.have == 0 && (!state->eof || strm->avail_in)); return 0; } -/* Skip len uncompressed bytes of output. Return -1 on error, 0 on success. */ -local int gz_skip(gz_statep state, z_off64_t len) { +/* Skip state->skip (> 0) uncompressed bytes of output. Return -1 on error, 0 + on success. */ +local int gz_skip(gz_statep state) { unsigned n; /* skip over len bytes or reach end-of-file, whichever comes first */ - while (len) + do { /* skip over whatever is in output buffer */ if (state->x.have) { - n = GT_OFF(state->x.have) || (z_off64_t)state->x.have > len ? - (unsigned)len : state->x.have; + n = GT_OFF(state->x.have) || + (z_off64_t)state->x.have > state->skip ? + (unsigned)state->skip : state->x.have; state->x.have -= n; state->x.next += n; state->x.pos += n; - len -= n; + state->skip -= n; } /* output buffer empty -- return if we're at the end of the input */ @@ -258,30 +304,32 @@ local int gz_skip(gz_statep state, z_off64_t len) { if (gz_fetch(state) == -1) return -1; } + } while (state->skip); return 0; } /* Read len bytes into buf from file, or less than len up to the end of the - input. Return the number of bytes read. If zero is returned, either the - end of file was reached, or there was an error. state->err must be - consulted in that case to determine which. */ + input. Return the number of bytes read. If zero is returned, either the end + of file was reached, or there was an error. state->err must be consulted in + that case to determine which. If there was an error, but some uncompressed + bytes were read before the error, then that count is returned. The error is + still recorded, and so is deferred until the next call. */ local z_size_t gz_read(gz_statep state, voidp buf, z_size_t len) { z_size_t got; unsigned n; + int err; /* if len is zero, avoid unnecessary operations */ if (len == 0) return 0; /* process a skip request */ - if (state->seek) { - state->seek = 0; - if (gz_skip(state, state->skip) == -1) - return 0; - } + if (state->skip && gz_skip(state) == -1) + return 0; /* get len bytes to buf, or less than len if at the end */ got = 0; + err = 0; do { /* set n to the maximum amount of len that fits in an unsigned int */ n = (unsigned)-1; @@ -295,37 +343,36 @@ local z_size_t gz_read(gz_statep state, voidp buf, z_size_t len) { memcpy(buf, state->x.next, n); state->x.next += n; state->x.have -= n; + if (state->err != Z_OK) + /* caught deferred error from gz_fetch() */ + err = -1; } /* output buffer empty -- return if we're at the end of the input */ - else if (state->eof && state->strm.avail_in == 0) { - state->past = 1; /* tried to read past end */ + else if (state->eof && state->strm.avail_in == 0) break; - } /* need output data -- for small len or new stream load up our output - buffer */ + buffer, so that gzgetc() can be fast */ else if (state->how == LOOK || n < (state->size << 1)) { /* get more output, looking for header if required */ - if (gz_fetch(state) == -1) - return 0; + if (gz_fetch(state) == -1 && state->x.have == 0) + /* if state->x.have != 0, error will be caught after copy */ + err = -1; continue; /* no progress yet -- go back to copy above */ /* the copy above assures that we will leave with space in the output buffer, allowing at least one gzungetc() to succeed */ } /* large len -- read directly into user buffer */ - else if (state->how == COPY) { /* read directly */ - if (gz_load(state, (unsigned char *)buf, n, &n) == -1) - return 0; - } + else if (state->how == COPY) /* read directly */ + err = gz_load(state, (unsigned char *)buf, n, &n); /* large len -- decompress directly into user buffer */ else { /* state->how == GZIP */ state->strm.avail_out = n; state->strm.next_out = (unsigned char *)buf; - if (gz_decomp(state) == -1) - return 0; + err = gz_decomp(state); n = state->x.have; state->x.have = 0; } @@ -335,7 +382,11 @@ local z_size_t gz_read(gz_statep state, voidp buf, z_size_t len) { buf = (char *)buf + n; got += n; state->x.pos += n; - } while (len); + } while (len && !err); + + /* note read past eof */ + if (len && state->eof) + state->past = 1; /* return number of bytes read into user buffer */ return got; @@ -345,16 +396,18 @@ local z_size_t gz_read(gz_statep state, voidp buf, z_size_t len) { int ZEXPORT gzread(gzFile file, voidp buf, unsigned len) { gz_statep state; - /* get internal structure */ + /* get internal structure and check that it's for reading */ if (file == NULL) return -1; state = (gz_statep)file; - - /* check that we're reading and that there's no (serious) error */ - if (state->mode != GZ_READ || - (state->err != Z_OK && state->err != Z_BUF_ERROR)) + if (state->mode != GZ_READ) return -1; + /* check that there was no (serious) error */ + if (state->err != Z_OK && state->err != Z_BUF_ERROR && !state->again) + return -1; + gz_error(state, Z_OK, NULL); + /* since an int is returned, make sure len fits in one, otherwise return with an error (this avoids a flaw in the interface) */ if ((int)len < 0) { @@ -366,28 +419,40 @@ int ZEXPORT gzread(gzFile file, voidp buf, unsigned len) { len = (unsigned)gz_read(state, buf, len); /* check for an error */ - if (len == 0 && state->err != Z_OK && state->err != Z_BUF_ERROR) - return -1; + if (len == 0) { + if (state->err != Z_OK && state->err != Z_BUF_ERROR) + return -1; + if (state->again) { + /* non-blocking input stalled after some input was read, but no + uncompressed bytes were produced -- let the application know + this isn't EOF */ + gz_error(state, Z_ERRNO, zstrerror()); + return -1; + } + } - /* return the number of bytes read (this is assured to fit in an int) */ + /* return the number of bytes read */ return (int)len; } /* -- see zlib.h -- */ -z_size_t ZEXPORT gzfread(voidp buf, z_size_t size, z_size_t nitems, gzFile file) { +z_size_t ZEXPORT gzfread(voidp buf, z_size_t size, z_size_t nitems, + gzFile file) { z_size_t len; gz_statep state; - /* get internal structure */ + /* get internal structure and check that it's for reading */ if (file == NULL) return 0; state = (gz_statep)file; - - /* check that we're reading and that there's no (serious) error */ - if (state->mode != GZ_READ || - (state->err != Z_OK && state->err != Z_BUF_ERROR)) + if (state->mode != GZ_READ) return 0; + /* check that there was no (serious) error */ + if (state->err != Z_OK && state->err != Z_BUF_ERROR && !state->again) + return 0; + gz_error(state, Z_OK, NULL); + /* compute bytes to read -- error on overflow */ len = nitems * size; if (size && len / size != nitems) { @@ -409,16 +474,18 @@ int ZEXPORT gzgetc(gzFile file) { unsigned char buf[1]; gz_statep state; - /* get internal structure */ + /* get internal structure and check that it's for reading */ if (file == NULL) return -1; state = (gz_statep)file; - - /* check that we're reading and that there's no (serious) error */ - if (state->mode != GZ_READ || - (state->err != Z_OK && state->err != Z_BUF_ERROR)) + if (state->mode != GZ_READ) return -1; + /* check that there was no (serious) error */ + if (state->err != Z_OK && state->err != Z_BUF_ERROR && !state->again) + return -1; + gz_error(state, Z_OK, NULL); + /* try output buffer (no need to check for skip request) */ if (state->x.have) { state->x.have--; @@ -438,26 +505,25 @@ int ZEXPORT gzgetc_(gzFile file) { int ZEXPORT gzungetc(int c, gzFile file) { gz_statep state; - /* get internal structure */ + /* get internal structure and check that it's for reading */ if (file == NULL) return -1; state = (gz_statep)file; - - /* in case this was just opened, set up the input buffer */ - if (state->mode == GZ_READ && state->how == LOOK && state->x.have == 0) - (void)gz_look(state); - - /* check that we're reading and that there's no (serious) error */ - if (state->mode != GZ_READ || - (state->err != Z_OK && state->err != Z_BUF_ERROR)) + if (state->mode != GZ_READ) return -1; + /* in case this was just opened, set up the input buffer */ + if (state->how == LOOK && state->x.have == 0) + (void)gz_look(state); + + /* check that there was no (serious) error */ + if (state->err != Z_OK && state->err != Z_BUF_ERROR && !state->again) + return -1; + gz_error(state, Z_OK, NULL); + /* process a skip request */ - if (state->seek) { - state->seek = 0; - if (gz_skip(state, state->skip) == -1) - return -1; - } + if (state->skip && gz_skip(state) == -1) + return -1; /* can't push EOF */ if (c < 0) @@ -483,6 +549,7 @@ int ZEXPORT gzungetc(int c, gzFile file) { if (state->x.next == state->out) { unsigned char *src = state->out + state->x.have; unsigned char *dest = state->out + (state->size << 1); + while (src > state->out) *--dest = *--src; state->x.next = dest; @@ -502,32 +569,31 @@ char * ZEXPORT gzgets(gzFile file, char *buf, int len) { unsigned char *eol; gz_statep state; - /* check parameters and get internal structure */ + /* check parameters, get internal structure, and check that it's for + reading */ if (file == NULL || buf == NULL || len < 1) return NULL; state = (gz_statep)file; - - /* check that we're reading and that there's no (serious) error */ - if (state->mode != GZ_READ || - (state->err != Z_OK && state->err != Z_BUF_ERROR)) + if (state->mode != GZ_READ) return NULL; - /* process a skip request */ - if (state->seek) { - state->seek = 0; - if (gz_skip(state, state->skip) == -1) - return NULL; - } + /* check that there was no (serious) error */ + if (state->err != Z_OK && state->err != Z_BUF_ERROR && !state->again) + return NULL; + gz_error(state, Z_OK, NULL); - /* copy output bytes up to new line or len - 1, whichever comes first -- - append a terminating zero to the string (we don't check for a zero in - the contents, let the user worry about that) */ + /* process a skip request */ + if (state->skip && gz_skip(state) == -1) + return NULL; + + /* copy output up to a new line, len-1 bytes, or there is no more output, + whichever comes first */ str = buf; left = (unsigned)len - 1; if (left) do { /* assure that something is in the output buffer */ if (state->x.have == 0 && gz_fetch(state) == -1) - return NULL; /* error */ + break; /* error */ if (state->x.have == 0) { /* end of file */ state->past = 1; /* read past end */ break; /* return what we have */ @@ -548,7 +614,9 @@ char * ZEXPORT gzgets(gzFile file, char *buf, int len) { buf += n; } while (left && eol == NULL); - /* return terminated string, or if nothing, end of file */ + /* append a terminating zero to the string (we don't check for a zero in + the contents, let the user worry about that) -- return the terminated + string, or if nothing was read, NULL */ if (buf == str) return NULL; buf[0] = 0; @@ -570,7 +638,7 @@ int ZEXPORT gzdirect(gzFile file) { (void)gz_look(state); /* return 1 if transparent, 0 if processing a gzip stream */ - return state->direct; + return state->direct == 1; } /* -- see zlib.h -- */ @@ -578,12 +646,10 @@ int ZEXPORT gzclose_r(gzFile file) { int ret, err; gz_statep state; - /* get internal structure */ + /* get internal structure and check that it's for reading */ if (file == NULL) return Z_STREAM_ERROR; state = (gz_statep)file; - - /* check that we're reading */ if (state->mode != GZ_READ) return Z_STREAM_ERROR; diff --git a/icecat/modules/zlib/src/gzwrite.c b/icecat/modules/zlib/src/gzwrite.c index 435b4621b5..13a3700a83 100644 --- a/icecat/modules/zlib/src/gzwrite.c +++ b/icecat/modules/zlib/src/gzwrite.c @@ -1,5 +1,5 @@ /* gzwrite.c -- zlib functions for writing gzip files - * Copyright (C) 2004-2019 Mark Adler + * Copyright (C) 2004-2026 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -74,9 +74,13 @@ local int gz_comp(gz_statep state, int flush) { /* write directly if requested */ if (state->direct) { while (strm->avail_in) { + errno = 0; + state->again = 0; put = strm->avail_in > max ? max : strm->avail_in; - writ = write(state->fd, strm->next_in, put); + writ = (int)write(state->fd, strm->next_in, put); if (writ < 0) { + if (errno == EAGAIN || errno == EWOULDBLOCK) + state->again = 1; gz_error(state, Z_ERRNO, zstrerror()); return -1; } @@ -88,8 +92,9 @@ local int gz_comp(gz_statep state, int flush) { /* check for a pending reset */ if (state->reset) { - /* don't start a new gzip member unless there is data to write */ - if (strm->avail_in == 0) + /* don't start a new gzip member unless there is data to write and + we're not flushing */ + if (strm->avail_in == 0 && flush == Z_NO_FLUSH) return 0; deflateReset(strm); state->reset = 0; @@ -103,10 +108,14 @@ local int gz_comp(gz_statep state, int flush) { if (strm->avail_out == 0 || (flush != Z_NO_FLUSH && (flush != Z_FINISH || ret == Z_STREAM_END))) { while (strm->next_out > state->x.next) { + errno = 0; + state->again = 0; put = strm->next_out - state->x.next > (int)max ? max : (unsigned)(strm->next_out - state->x.next); - writ = write(state->fd, state->x.next, put); + writ = (int)write(state->fd, state->x.next, put); if (writ < 0) { + if (errno == EAGAIN || errno == EWOULDBLOCK) + state->again = 1; gz_error(state, Z_ERRNO, zstrerror()); return -1; } @@ -138,10 +147,12 @@ local int gz_comp(gz_statep state, int flush) { return 0; } -/* Compress len zeros to output. Return -1 on a write error or memory - allocation failure by gz_comp(), or 0 on success. */ -local int gz_zero(gz_statep state, z_off64_t len) { - int first; +/* Compress state->skip (> 0) zeros to output. Return -1 on a write error or + memory allocation failure by gz_comp(), or 0 on success. state->skip is + updated with the number of successfully written zeros, in case there is a + stall on a non-blocking write destination. */ +local int gz_zero(gz_statep state) { + int first, ret; unsigned n; z_streamp strm = &(state->strm); @@ -149,29 +160,34 @@ local int gz_zero(gz_statep state, z_off64_t len) { if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1) return -1; - /* compress len zeros (len guaranteed > 0) */ + /* compress state->skip zeros */ first = 1; - while (len) { - n = GT_OFF(state->size) || (z_off64_t)state->size > len ? - (unsigned)len : state->size; + do { + n = GT_OFF(state->size) || (z_off64_t)state->size > state->skip ? + (unsigned)state->skip : state->size; if (first) { memset(state->in, 0, n); first = 0; } strm->avail_in = n; strm->next_in = state->in; + ret = gz_comp(state, Z_NO_FLUSH); + n -= strm->avail_in; state->x.pos += n; - if (gz_comp(state, Z_NO_FLUSH) == -1) + state->skip -= n; + if (ret == -1) return -1; - len -= n; - } + } while (state->skip); return 0; } /* Write len bytes from buf to file. Return the number of bytes written. If - the returned value is less than len, then there was an error. */ + the returned value is less than len, then there was an error. If the error + was a non-blocking stall, then the number of bytes consumed is returned. + For any other error, 0 is returned. */ local z_size_t gz_write(gz_statep state, voidpc buf, z_size_t len) { z_size_t put = len; + int ret; /* if len is zero, avoid unnecessary operations */ if (len == 0) @@ -182,16 +198,13 @@ local z_size_t gz_write(gz_statep state, voidpc buf, z_size_t len) { return 0; /* check for seek request */ - if (state->seek) { - state->seek = 0; - if (gz_zero(state, state->skip) == -1) - return 0; - } + if (state->skip && gz_zero(state) == -1) + return 0; /* for small len, copy to input buffer, otherwise compress directly */ if (len < state->size) { /* copy to input buffer, compress when full */ - do { + for (;;) { unsigned have, copy; if (state->strm.avail_in == 0) @@ -206,9 +219,11 @@ local z_size_t gz_write(gz_statep state, voidpc buf, z_size_t len) { state->x.pos += copy; buf = (const char *)buf + copy; len -= copy; - if (len && gz_comp(state, Z_NO_FLUSH) == -1) - return 0; - } while (len); + if (len == 0) + break; + if (gz_comp(state, Z_NO_FLUSH) == -1) + return state->again ? put - len : 0; + } } else { /* consume whatever's left in the input buffer */ @@ -219,13 +234,16 @@ local z_size_t gz_write(gz_statep state, voidpc buf, z_size_t len) { state->strm.next_in = (z_const Bytef *)buf; do { unsigned n = (unsigned)-1; + if (n > len) n = (unsigned)len; state->strm.avail_in = n; + ret = gz_comp(state, Z_NO_FLUSH); + n -= state->strm.avail_in; state->x.pos += n; - if (gz_comp(state, Z_NO_FLUSH) == -1) - return 0; len -= n; + if (ret == -1) + return state->again ? put - len : 0; } while (len); } @@ -242,9 +260,10 @@ int ZEXPORT gzwrite(gzFile file, voidpc buf, unsigned len) { return 0; state = (gz_statep)file; - /* check that we're writing and that there's no error */ - if (state->mode != GZ_WRITE || state->err != Z_OK) + /* check that we're writing and that there's no (serious) error */ + if (state->mode != GZ_WRITE || (state->err != Z_OK && !state->again)) return 0; + gz_error(state, Z_OK, NULL); /* since an int is returned, make sure len fits in one, otherwise return with an error (this avoids a flaw in the interface) */ @@ -268,9 +287,10 @@ z_size_t ZEXPORT gzfwrite(voidpc buf, z_size_t size, z_size_t nitems, return 0; state = (gz_statep)file; - /* check that we're writing and that there's no error */ - if (state->mode != GZ_WRITE || state->err != Z_OK) + /* check that we're writing and that there's no (serious) error */ + if (state->mode != GZ_WRITE || (state->err != Z_OK && !state->again)) return 0; + gz_error(state, Z_OK, NULL); /* compute bytes to read -- error on overflow */ len = nitems * size; @@ -296,16 +316,14 @@ int ZEXPORT gzputc(gzFile file, int c) { state = (gz_statep)file; strm = &(state->strm); - /* check that we're writing and that there's no error */ - if (state->mode != GZ_WRITE || state->err != Z_OK) + /* check that we're writing and that there's no (serious) error */ + if (state->mode != GZ_WRITE || (state->err != Z_OK && !state->again)) return -1; + gz_error(state, Z_OK, NULL); /* check for seek request */ - if (state->seek) { - state->seek = 0; - if (gz_zero(state, state->skip) == -1) - return -1; - } + if (state->skip && gz_zero(state) == -1) + return -1; /* try writing to input buffer for speed (state->size == 0 if buffer not initialized) */ @@ -338,9 +356,10 @@ int ZEXPORT gzputs(gzFile file, const char *s) { return -1; state = (gz_statep)file; - /* check that we're writing and that there's no error */ - if (state->mode != GZ_WRITE || state->err != Z_OK) + /* check that we're writing and that there's no (serious) error */ + if (state->mode != GZ_WRITE || (state->err != Z_OK && !state->again)) return -1; + gz_error(state, Z_OK, NULL); /* write string */ len = strlen(s); @@ -349,16 +368,47 @@ int ZEXPORT gzputs(gzFile file, const char *s) { return -1; } put = gz_write(state, s, len); - return put < len ? -1 : (int)len; + return len && put == 0 ? -1 : (int)put; } +#if (((!defined(STDC) && !defined(Z_HAVE_STDARG_H)) || !defined(NO_vsnprintf)) && \ + (defined(STDC) || defined(Z_HAVE_STDARG_H) || !defined(NO_snprintf))) || \ + defined(ZLIB_INSECURE) +/* If the second half of the input buffer is occupied, write out the contents. + If there is any input remaining due to a non-blocking stall on write, move + it to the start of the buffer. Return true if this did not open up the + second half of the buffer. state->err should be checked after this to + handle a gz_comp() error. */ +local int gz_vacate(gz_statep state) { + z_streamp strm; + + strm = &(state->strm); + if (strm->next_in + strm->avail_in <= state->in + state->size) + return 0; + (void)gz_comp(state, Z_NO_FLUSH); + if (strm->avail_in == 0) { + strm->next_in = state->in; + return 0; + } + memmove(state->in, strm->next_in, strm->avail_in); + strm->next_in = state->in; + return strm->avail_in > state->size; +} +#endif + #if defined(STDC) || defined(Z_HAVE_STDARG_H) #include /* -- see zlib.h -- */ int ZEXPORTVA gzvprintf(gzFile file, const char *format, va_list va) { - int len; - unsigned left; +#if defined(NO_vsnprintf) && !defined(ZLIB_INSECURE) +#warning "vsnprintf() not available -- gzprintf() stub returns Z_STREAM_ERROR" +#warning "you can recompile with ZLIB_INSECURE defined to use vsprintf()" + /* prevent use of insecure vsprintf(), unless purposefully requested */ + (void)file, (void)format, (void)va; + return Z_STREAM_ERROR; +#else + int len, ret; char *next; gz_statep state; z_streamp strm; @@ -369,24 +419,34 @@ int ZEXPORTVA gzvprintf(gzFile file, const char *format, va_list va) { state = (gz_statep)file; strm = &(state->strm); - /* check that we're writing and that there's no error */ - if (state->mode != GZ_WRITE || state->err != Z_OK) + /* check that we're writing and that there's no (serious) error */ + if (state->mode != GZ_WRITE || (state->err != Z_OK && !state->again)) return Z_STREAM_ERROR; + gz_error(state, Z_OK, NULL); /* make sure we have some buffer space */ if (state->size == 0 && gz_init(state) == -1) return state->err; /* check for seek request */ - if (state->seek) { - state->seek = 0; - if (gz_zero(state, state->skip) == -1) - return state->err; - } + if (state->skip && gz_zero(state) == -1) + return state->err; /* do the printf() into the input buffer, put length in len -- the input - buffer is double-sized just for this function, so there is guaranteed to - be state->size bytes available after the current contents */ + buffer is double-sized just for this function, so there should be + state->size bytes available after the current contents */ + ret = gz_vacate(state); + if (state->err) { + if (ret && state->again) { + /* There was a non-blocking stall on write, resulting in the part + of the second half of the output buffer being occupied. Return + a Z_BUF_ERROR to let the application know that this gzprintf() + needs to be retried. */ + gz_error(state, Z_BUF_ERROR, "stalled write on gzprintf"); + } + if (!state->again) + return state->err; + } if (strm->avail_in == 0) strm->next_in = state->in; next = (char *)(state->in + (strm->next_in - state->in) + strm->avail_in); @@ -412,19 +472,16 @@ int ZEXPORTVA gzvprintf(gzFile file, const char *format, va_list va) { if (len == 0 || (unsigned)len >= state->size || next[state->size - 1] != 0) return 0; - /* update buffer and position, compress first half if past that */ + /* update buffer and position */ strm->avail_in += (unsigned)len; state->x.pos += len; - if (strm->avail_in >= state->size) { - left = strm->avail_in - state->size; - strm->avail_in = state->size; - if (gz_comp(state, Z_NO_FLUSH) == -1) - return state->err; - memmove(state->in, state->in + state->size, left); - strm->next_in = state->in; - strm->avail_in = left; - } + + /* write out buffer if more than half is occupied */ + ret = gz_vacate(state); + if (state->err && !state->again) + return state->err; return len; +#endif } int ZEXPORTVA gzprintf(gzFile file, const char *format, ...) { @@ -444,6 +501,17 @@ int ZEXPORTVA gzprintf(gzFile file, const char *format, int a1, int a2, int a3, int a4, int a5, int a6, int a7, int a8, int a9, int a10, int a11, int a12, int a13, int a14, int a15, int a16, int a17, int a18, int a19, int a20) { +#if defined(NO_snprintf) && !defined(ZLIB_INSECURE) +#warning "snprintf() not available -- gzprintf() stub returns Z_STREAM_ERROR" +#warning "you can recompile with ZLIB_INSECURE defined to use sprintf()" + /* prevent use of insecure sprintf(), unless purposefully requested */ + (void)file, (void)format, (void)a1, (void)a2, (void)a3, (void)a4, (void)a5, + (void)a6, (void)a7, (void)a8, (void)a9, (void)a10, (void)a11, (void)a12, + (void)a13, (void)a14, (void)a15, (void)a16, (void)a17, (void)a18, + (void)a19, (void)a20; + return Z_STREAM_ERROR; +#else + int ret; unsigned len, left; char *next; gz_statep state; @@ -459,24 +527,34 @@ int ZEXPORTVA gzprintf(gzFile file, const char *format, int a1, int a2, int a3, if (sizeof(int) != sizeof(void *)) return Z_STREAM_ERROR; - /* check that we're writing and that there's no error */ - if (state->mode != GZ_WRITE || state->err != Z_OK) + /* check that we're writing and that there's no (serious) error */ + if (state->mode != GZ_WRITE || (state->err != Z_OK && !state->again)) return Z_STREAM_ERROR; + gz_error(state, Z_OK, NULL); /* make sure we have some buffer space */ if (state->size == 0 && gz_init(state) == -1) - return state->error; + return state->err; /* check for seek request */ - if (state->seek) { - state->seek = 0; - if (gz_zero(state, state->skip) == -1) - return state->error; - } + if (state->skip && gz_zero(state) == -1) + return state->err; /* do the printf() into the input buffer, put length in len -- the input buffer is double-sized just for this function, so there is guaranteed to be state->size bytes available after the current contents */ + ret = gz_vacate(state); + if (state->err) { + if (ret && state->again) { + /* There was a non-blocking stall on write, resulting in the part + of the second half of the output buffer being occupied. Return + a Z_BUF_ERROR to let the application know that this gzprintf() + needs to be retried. */ + gz_error(state, Z_BUF_ERROR, "stalled write on gzprintf"); + } + if (!state->again) + return state->err; + } if (strm->avail_in == 0) strm->next_in = state->in; next = (char *)(strm->next_in + strm->avail_in); @@ -510,16 +588,13 @@ int ZEXPORTVA gzprintf(gzFile file, const char *format, int a1, int a2, int a3, /* update buffer and position, compress first half if past that */ strm->avail_in += len; state->x.pos += len; - if (strm->avail_in >= state->size) { - left = strm->avail_in - state->size; - strm->avail_in = state->size; - if (gz_comp(state, Z_NO_FLUSH) == -1) - return state->err; - memmove(state->in, state->in + state->size, left); - strm->next_in = state->in; - strm->avail_in = left; - } + + /* write out buffer if more than half is occupied */ + ret = gz_vacate(state); + if (state->err && !state->again) + return state->err; return (int)len; +#endif } #endif @@ -533,20 +608,18 @@ int ZEXPORT gzflush(gzFile file, int flush) { return Z_STREAM_ERROR; state = (gz_statep)file; - /* check that we're writing and that there's no error */ - if (state->mode != GZ_WRITE || state->err != Z_OK) + /* check that we're writing and that there's no (serious) error */ + if (state->mode != GZ_WRITE || (state->err != Z_OK && !state->again)) return Z_STREAM_ERROR; + gz_error(state, Z_OK, NULL); /* check flush parameter */ if (flush < 0 || flush > Z_FINISH) return Z_STREAM_ERROR; /* check for seek request */ - if (state->seek) { - state->seek = 0; - if (gz_zero(state, state->skip) == -1) - return state->err; - } + if (state->skip && gz_zero(state) == -1) + return state->err; /* compress remaining data with requested flush */ (void)gz_comp(state, flush); @@ -564,20 +637,19 @@ int ZEXPORT gzsetparams(gzFile file, int level, int strategy) { state = (gz_statep)file; strm = &(state->strm); - /* check that we're writing and that there's no error */ - if (state->mode != GZ_WRITE || state->err != Z_OK || state->direct) + /* check that we're compressing and that there's no (serious) error */ + if (state->mode != GZ_WRITE || (state->err != Z_OK && !state->again) || + state->direct) return Z_STREAM_ERROR; + gz_error(state, Z_OK, NULL); /* if no change is requested, then do nothing */ if (level == state->level && strategy == state->strategy) return Z_OK; /* check for seek request */ - if (state->seek) { - state->seek = 0; - if (gz_zero(state, state->skip) == -1) - return state->err; - } + if (state->skip && gz_zero(state) == -1) + return state->err; /* change compression parameters for subsequent input */ if (state->size) { @@ -606,11 +678,8 @@ int ZEXPORT gzclose_w(gzFile file) { return Z_STREAM_ERROR; /* check for seek request */ - if (state->seek) { - state->seek = 0; - if (gz_zero(state, state->skip) == -1) - ret = state->err; - } + if (state->skip && gz_zero(state) == -1) + ret = state->err; /* flush, free memory, and close file */ if (gz_comp(state, Z_FINISH) == -1) diff --git a/icecat/modules/zlib/src/infback.c b/icecat/modules/zlib/src/infback.c index e7b25b307a..e6443feb45 100644 --- a/icecat/modules/zlib/src/infback.c +++ b/icecat/modules/zlib/src/infback.c @@ -1,5 +1,5 @@ /* infback.c -- inflate using a call-back interface - * Copyright (C) 1995-2022 Mark Adler + * Copyright (C) 1995-2026 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -46,7 +46,7 @@ int ZEXPORT inflateBackInit_(z_streamp strm, int windowBits, #ifdef Z_SOLO return Z_STREAM_ERROR; #else - strm->zfree = zcfree; + strm->zfree = zcfree; #endif state = (struct inflate_state FAR *)ZALLOC(strm, 1, sizeof(struct inflate_state)); @@ -63,57 +63,6 @@ int ZEXPORT inflateBackInit_(z_streamp strm, int windowBits, return Z_OK; } -/* - Return state with length and distance decoding tables and index sizes set to - fixed code decoding. Normally this returns fixed tables from inffixed.h. - If BUILDFIXED is defined, then instead this routine builds the tables the - first time it's called, and returns those tables the first time and - thereafter. This reduces the size of the code by about 2K bytes, in - exchange for a little execution time. However, BUILDFIXED should not be - used for threaded applications, since the rewriting of the tables and virgin - may not be thread-safe. - */ -local void fixedtables(struct inflate_state FAR *state) { -#ifdef BUILDFIXED - static int virgin = 1; - static code *lenfix, *distfix; - static code fixed[544]; - - /* build fixed huffman tables if first call (may not be thread safe) */ - if (virgin) { - unsigned sym, bits; - static code *next; - - /* literal/length table */ - sym = 0; - while (sym < 144) state->lens[sym++] = 8; - while (sym < 256) state->lens[sym++] = 9; - while (sym < 280) state->lens[sym++] = 7; - while (sym < 288) state->lens[sym++] = 8; - next = fixed; - lenfix = next; - bits = 9; - inflate_table(LENS, state->lens, 288, &(next), &(bits), state->work); - - /* distance table */ - sym = 0; - while (sym < 32) state->lens[sym++] = 5; - distfix = next; - bits = 5; - inflate_table(DISTS, state->lens, 32, &(next), &(bits), state->work); - - /* do this just once */ - virgin = 0; - } -#else /* !BUILDFIXED */ -# include "inffixed.h" -#endif /* BUILDFIXED */ - state->lencode = lenfix; - state->lenbits = 9; - state->distcode = distfix; - state->distbits = 5; -} - /* Macros for inflateBack(): */ /* Load returned state from inflate_fast() */ @@ -293,7 +242,7 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, state->mode = STORED; break; case 1: /* fixed block */ - fixedtables(state); + inflate_fixed(state); Tracev((stderr, "inflate: fixed codes block%s\n", state->last ? " (last)" : "")); state->mode = LEN; /* decode codes */ @@ -303,8 +252,8 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, state->last ? " (last)" : "")); state->mode = TABLE; break; - case 3: - strm->msg = (char *)"invalid block type"; + default: + strm->msg = (z_const char *)"invalid block type"; state->mode = BAD; } DROPBITS(2); @@ -315,7 +264,7 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, BYTEBITS(); /* go to byte boundary */ NEEDBITS(32); if ((hold & 0xffff) != ((hold >> 16) ^ 0xffff)) { - strm->msg = (char *)"invalid stored block lengths"; + strm->msg = (z_const char *)"invalid stored block lengths"; state->mode = BAD; break; } @@ -353,7 +302,8 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, DROPBITS(4); #ifndef PKZIP_BUG_WORKAROUND if (state->nlen > 286 || state->ndist > 30) { - strm->msg = (char *)"too many length or distance symbols"; + strm->msg = (z_const char *) + "too many length or distance symbols"; state->mode = BAD; break; } @@ -375,7 +325,7 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, ret = inflate_table(CODES, state->lens, 19, &(state->next), &(state->lenbits), state->work); if (ret) { - strm->msg = (char *)"invalid code lengths set"; + strm->msg = (z_const char *)"invalid code lengths set"; state->mode = BAD; break; } @@ -398,7 +348,8 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, NEEDBITS(here.bits + 2); DROPBITS(here.bits); if (state->have == 0) { - strm->msg = (char *)"invalid bit length repeat"; + strm->msg = (z_const char *) + "invalid bit length repeat"; state->mode = BAD; break; } @@ -421,7 +372,8 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, DROPBITS(7); } if (state->have + copy > state->nlen + state->ndist) { - strm->msg = (char *)"invalid bit length repeat"; + strm->msg = (z_const char *) + "invalid bit length repeat"; state->mode = BAD; break; } @@ -435,7 +387,8 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, /* check for end-of-block code (better have one) */ if (state->lens[256] == 0) { - strm->msg = (char *)"invalid code -- missing end-of-block"; + strm->msg = (z_const char *) + "invalid code -- missing end-of-block"; state->mode = BAD; break; } @@ -449,7 +402,7 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, ret = inflate_table(LENS, state->lens, state->nlen, &(state->next), &(state->lenbits), state->work); if (ret) { - strm->msg = (char *)"invalid literal/lengths set"; + strm->msg = (z_const char *)"invalid literal/lengths set"; state->mode = BAD; break; } @@ -458,7 +411,7 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, ret = inflate_table(DISTS, state->lens + state->nlen, state->ndist, &(state->next), &(state->distbits), state->work); if (ret) { - strm->msg = (char *)"invalid distances set"; + strm->msg = (z_const char *)"invalid distances set"; state->mode = BAD; break; } @@ -517,7 +470,7 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, /* invalid code */ if (here.op & 64) { - strm->msg = (char *)"invalid literal/length code"; + strm->msg = (z_const char *)"invalid literal/length code"; state->mode = BAD; break; } @@ -549,7 +502,7 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, } DROPBITS(here.bits); if (here.op & 64) { - strm->msg = (char *)"invalid distance code"; + strm->msg = (z_const char *)"invalid distance code"; state->mode = BAD; break; } @@ -564,7 +517,7 @@ int ZEXPORT inflateBack(z_streamp strm, in_func in, void FAR *in_desc, } if (state->offset > state->wsize - (state->whave < state->wsize ? left : 0)) { - strm->msg = (char *)"invalid distance too far back"; + strm->msg = (z_const char *)"invalid distance too far back"; state->mode = BAD; break; } diff --git a/icecat/modules/zlib/src/inffast.c b/icecat/modules/zlib/src/inffast.c index 9354676e78..d1657f3f30 100644 --- a/icecat/modules/zlib/src/inffast.c +++ b/icecat/modules/zlib/src/inffast.c @@ -1,5 +1,5 @@ /* inffast.c -- fast decoding - * Copyright (C) 1995-2017 Mark Adler + * Copyright (C) 1995-2026 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -155,7 +155,8 @@ void ZLIB_INTERNAL inflate_fast(z_streamp strm, unsigned start) { dist += (unsigned)hold & ((1U << op) - 1); #ifdef INFLATE_STRICT if (dist > dmax) { - strm->msg = (char *)"invalid distance too far back"; + strm->msg = (z_const char *) + "invalid distance too far back"; state->mode = BAD; break; } @@ -168,8 +169,8 @@ void ZLIB_INTERNAL inflate_fast(z_streamp strm, unsigned start) { op = dist - op; /* distance back in window */ if (op > whave) { if (state->sane) { - strm->msg = - (char *)"invalid distance too far back"; + strm->msg = (z_const char *) + "invalid distance too far back"; state->mode = BAD; break; } @@ -265,7 +266,7 @@ void ZLIB_INTERNAL inflate_fast(z_streamp strm, unsigned start) { goto dodist; } else { - strm->msg = (char *)"invalid distance code"; + strm->msg = (z_const char *)"invalid distance code"; state->mode = BAD; break; } @@ -280,7 +281,7 @@ void ZLIB_INTERNAL inflate_fast(z_streamp strm, unsigned start) { break; } else { - strm->msg = (char *)"invalid literal/length code"; + strm->msg = (z_const char *)"invalid literal/length code"; state->mode = BAD; break; } diff --git a/icecat/modules/zlib/src/inffixed.h b/icecat/modules/zlib/src/inffixed.h index d628327769..05ce88e4ff 100644 --- a/icecat/modules/zlib/src/inffixed.h +++ b/icecat/modules/zlib/src/inffixed.h @@ -1,94 +1,94 @@ - /* inffixed.h -- table for decoding fixed codes - * Generated automatically by makefixed(). - */ +/* inffixed.h -- table for decoding fixed codes + * Generated automatically by makefixed(). + */ - /* WARNING: this file should *not* be used by applications. - It is part of the implementation of this library and is - subject to change. Applications should only use zlib.h. - */ +/* WARNING: this file should *not* be used by applications. + It is part of the implementation of this library and is + subject to change. Applications should only use zlib.h. + */ - static const code lenfix[512] = { - {96,7,0},{0,8,80},{0,8,16},{20,8,115},{18,7,31},{0,8,112},{0,8,48}, - {0,9,192},{16,7,10},{0,8,96},{0,8,32},{0,9,160},{0,8,0},{0,8,128}, - {0,8,64},{0,9,224},{16,7,6},{0,8,88},{0,8,24},{0,9,144},{19,7,59}, - {0,8,120},{0,8,56},{0,9,208},{17,7,17},{0,8,104},{0,8,40},{0,9,176}, - {0,8,8},{0,8,136},{0,8,72},{0,9,240},{16,7,4},{0,8,84},{0,8,20}, - {21,8,227},{19,7,43},{0,8,116},{0,8,52},{0,9,200},{17,7,13},{0,8,100}, - {0,8,36},{0,9,168},{0,8,4},{0,8,132},{0,8,68},{0,9,232},{16,7,8}, - {0,8,92},{0,8,28},{0,9,152},{20,7,83},{0,8,124},{0,8,60},{0,9,216}, - {18,7,23},{0,8,108},{0,8,44},{0,9,184},{0,8,12},{0,8,140},{0,8,76}, - {0,9,248},{16,7,3},{0,8,82},{0,8,18},{21,8,163},{19,7,35},{0,8,114}, - {0,8,50},{0,9,196},{17,7,11},{0,8,98},{0,8,34},{0,9,164},{0,8,2}, - {0,8,130},{0,8,66},{0,9,228},{16,7,7},{0,8,90},{0,8,26},{0,9,148}, - {20,7,67},{0,8,122},{0,8,58},{0,9,212},{18,7,19},{0,8,106},{0,8,42}, - {0,9,180},{0,8,10},{0,8,138},{0,8,74},{0,9,244},{16,7,5},{0,8,86}, - {0,8,22},{64,8,0},{19,7,51},{0,8,118},{0,8,54},{0,9,204},{17,7,15}, - {0,8,102},{0,8,38},{0,9,172},{0,8,6},{0,8,134},{0,8,70},{0,9,236}, - {16,7,9},{0,8,94},{0,8,30},{0,9,156},{20,7,99},{0,8,126},{0,8,62}, - {0,9,220},{18,7,27},{0,8,110},{0,8,46},{0,9,188},{0,8,14},{0,8,142}, - {0,8,78},{0,9,252},{96,7,0},{0,8,81},{0,8,17},{21,8,131},{18,7,31}, - {0,8,113},{0,8,49},{0,9,194},{16,7,10},{0,8,97},{0,8,33},{0,9,162}, - {0,8,1},{0,8,129},{0,8,65},{0,9,226},{16,7,6},{0,8,89},{0,8,25}, - {0,9,146},{19,7,59},{0,8,121},{0,8,57},{0,9,210},{17,7,17},{0,8,105}, - {0,8,41},{0,9,178},{0,8,9},{0,8,137},{0,8,73},{0,9,242},{16,7,4}, - {0,8,85},{0,8,21},{16,8,258},{19,7,43},{0,8,117},{0,8,53},{0,9,202}, - {17,7,13},{0,8,101},{0,8,37},{0,9,170},{0,8,5},{0,8,133},{0,8,69}, - {0,9,234},{16,7,8},{0,8,93},{0,8,29},{0,9,154},{20,7,83},{0,8,125}, - {0,8,61},{0,9,218},{18,7,23},{0,8,109},{0,8,45},{0,9,186},{0,8,13}, - {0,8,141},{0,8,77},{0,9,250},{16,7,3},{0,8,83},{0,8,19},{21,8,195}, - {19,7,35},{0,8,115},{0,8,51},{0,9,198},{17,7,11},{0,8,99},{0,8,35}, - {0,9,166},{0,8,3},{0,8,131},{0,8,67},{0,9,230},{16,7,7},{0,8,91}, - {0,8,27},{0,9,150},{20,7,67},{0,8,123},{0,8,59},{0,9,214},{18,7,19}, - {0,8,107},{0,8,43},{0,9,182},{0,8,11},{0,8,139},{0,8,75},{0,9,246}, - {16,7,5},{0,8,87},{0,8,23},{64,8,0},{19,7,51},{0,8,119},{0,8,55}, - {0,9,206},{17,7,15},{0,8,103},{0,8,39},{0,9,174},{0,8,7},{0,8,135}, - {0,8,71},{0,9,238},{16,7,9},{0,8,95},{0,8,31},{0,9,158},{20,7,99}, - {0,8,127},{0,8,63},{0,9,222},{18,7,27},{0,8,111},{0,8,47},{0,9,190}, - {0,8,15},{0,8,143},{0,8,79},{0,9,254},{96,7,0},{0,8,80},{0,8,16}, - {20,8,115},{18,7,31},{0,8,112},{0,8,48},{0,9,193},{16,7,10},{0,8,96}, - {0,8,32},{0,9,161},{0,8,0},{0,8,128},{0,8,64},{0,9,225},{16,7,6}, - {0,8,88},{0,8,24},{0,9,145},{19,7,59},{0,8,120},{0,8,56},{0,9,209}, - {17,7,17},{0,8,104},{0,8,40},{0,9,177},{0,8,8},{0,8,136},{0,8,72}, - {0,9,241},{16,7,4},{0,8,84},{0,8,20},{21,8,227},{19,7,43},{0,8,116}, - {0,8,52},{0,9,201},{17,7,13},{0,8,100},{0,8,36},{0,9,169},{0,8,4}, - {0,8,132},{0,8,68},{0,9,233},{16,7,8},{0,8,92},{0,8,28},{0,9,153}, - {20,7,83},{0,8,124},{0,8,60},{0,9,217},{18,7,23},{0,8,108},{0,8,44}, - {0,9,185},{0,8,12},{0,8,140},{0,8,76},{0,9,249},{16,7,3},{0,8,82}, - {0,8,18},{21,8,163},{19,7,35},{0,8,114},{0,8,50},{0,9,197},{17,7,11}, - {0,8,98},{0,8,34},{0,9,165},{0,8,2},{0,8,130},{0,8,66},{0,9,229}, - {16,7,7},{0,8,90},{0,8,26},{0,9,149},{20,7,67},{0,8,122},{0,8,58}, - {0,9,213},{18,7,19},{0,8,106},{0,8,42},{0,9,181},{0,8,10},{0,8,138}, - {0,8,74},{0,9,245},{16,7,5},{0,8,86},{0,8,22},{64,8,0},{19,7,51}, - {0,8,118},{0,8,54},{0,9,205},{17,7,15},{0,8,102},{0,8,38},{0,9,173}, - {0,8,6},{0,8,134},{0,8,70},{0,9,237},{16,7,9},{0,8,94},{0,8,30}, - {0,9,157},{20,7,99},{0,8,126},{0,8,62},{0,9,221},{18,7,27},{0,8,110}, - {0,8,46},{0,9,189},{0,8,14},{0,8,142},{0,8,78},{0,9,253},{96,7,0}, - {0,8,81},{0,8,17},{21,8,131},{18,7,31},{0,8,113},{0,8,49},{0,9,195}, - {16,7,10},{0,8,97},{0,8,33},{0,9,163},{0,8,1},{0,8,129},{0,8,65}, - {0,9,227},{16,7,6},{0,8,89},{0,8,25},{0,9,147},{19,7,59},{0,8,121}, - {0,8,57},{0,9,211},{17,7,17},{0,8,105},{0,8,41},{0,9,179},{0,8,9}, - {0,8,137},{0,8,73},{0,9,243},{16,7,4},{0,8,85},{0,8,21},{16,8,258}, - {19,7,43},{0,8,117},{0,8,53},{0,9,203},{17,7,13},{0,8,101},{0,8,37}, - {0,9,171},{0,8,5},{0,8,133},{0,8,69},{0,9,235},{16,7,8},{0,8,93}, - {0,8,29},{0,9,155},{20,7,83},{0,8,125},{0,8,61},{0,9,219},{18,7,23}, - {0,8,109},{0,8,45},{0,9,187},{0,8,13},{0,8,141},{0,8,77},{0,9,251}, - {16,7,3},{0,8,83},{0,8,19},{21,8,195},{19,7,35},{0,8,115},{0,8,51}, - {0,9,199},{17,7,11},{0,8,99},{0,8,35},{0,9,167},{0,8,3},{0,8,131}, - {0,8,67},{0,9,231},{16,7,7},{0,8,91},{0,8,27},{0,9,151},{20,7,67}, - {0,8,123},{0,8,59},{0,9,215},{18,7,19},{0,8,107},{0,8,43},{0,9,183}, - {0,8,11},{0,8,139},{0,8,75},{0,9,247},{16,7,5},{0,8,87},{0,8,23}, - {64,8,0},{19,7,51},{0,8,119},{0,8,55},{0,9,207},{17,7,15},{0,8,103}, - {0,8,39},{0,9,175},{0,8,7},{0,8,135},{0,8,71},{0,9,239},{16,7,9}, - {0,8,95},{0,8,31},{0,9,159},{20,7,99},{0,8,127},{0,8,63},{0,9,223}, - {18,7,27},{0,8,111},{0,8,47},{0,9,191},{0,8,15},{0,8,143},{0,8,79}, - {0,9,255} - }; +static const code lenfix[512] = { + {96,7,0},{0,8,80},{0,8,16},{20,8,115},{18,7,31},{0,8,112},{0,8,48}, + {0,9,192},{16,7,10},{0,8,96},{0,8,32},{0,9,160},{0,8,0},{0,8,128}, + {0,8,64},{0,9,224},{16,7,6},{0,8,88},{0,8,24},{0,9,144},{19,7,59}, + {0,8,120},{0,8,56},{0,9,208},{17,7,17},{0,8,104},{0,8,40},{0,9,176}, + {0,8,8},{0,8,136},{0,8,72},{0,9,240},{16,7,4},{0,8,84},{0,8,20}, + {21,8,227},{19,7,43},{0,8,116},{0,8,52},{0,9,200},{17,7,13},{0,8,100}, + {0,8,36},{0,9,168},{0,8,4},{0,8,132},{0,8,68},{0,9,232},{16,7,8}, + {0,8,92},{0,8,28},{0,9,152},{20,7,83},{0,8,124},{0,8,60},{0,9,216}, + {18,7,23},{0,8,108},{0,8,44},{0,9,184},{0,8,12},{0,8,140},{0,8,76}, + {0,9,248},{16,7,3},{0,8,82},{0,8,18},{21,8,163},{19,7,35},{0,8,114}, + {0,8,50},{0,9,196},{17,7,11},{0,8,98},{0,8,34},{0,9,164},{0,8,2}, + {0,8,130},{0,8,66},{0,9,228},{16,7,7},{0,8,90},{0,8,26},{0,9,148}, + {20,7,67},{0,8,122},{0,8,58},{0,9,212},{18,7,19},{0,8,106},{0,8,42}, + {0,9,180},{0,8,10},{0,8,138},{0,8,74},{0,9,244},{16,7,5},{0,8,86}, + {0,8,22},{64,8,0},{19,7,51},{0,8,118},{0,8,54},{0,9,204},{17,7,15}, + {0,8,102},{0,8,38},{0,9,172},{0,8,6},{0,8,134},{0,8,70},{0,9,236}, + {16,7,9},{0,8,94},{0,8,30},{0,9,156},{20,7,99},{0,8,126},{0,8,62}, + {0,9,220},{18,7,27},{0,8,110},{0,8,46},{0,9,188},{0,8,14},{0,8,142}, + {0,8,78},{0,9,252},{96,7,0},{0,8,81},{0,8,17},{21,8,131},{18,7,31}, + {0,8,113},{0,8,49},{0,9,194},{16,7,10},{0,8,97},{0,8,33},{0,9,162}, + {0,8,1},{0,8,129},{0,8,65},{0,9,226},{16,7,6},{0,8,89},{0,8,25}, + {0,9,146},{19,7,59},{0,8,121},{0,8,57},{0,9,210},{17,7,17},{0,8,105}, + {0,8,41},{0,9,178},{0,8,9},{0,8,137},{0,8,73},{0,9,242},{16,7,4}, + {0,8,85},{0,8,21},{16,8,258},{19,7,43},{0,8,117},{0,8,53},{0,9,202}, + {17,7,13},{0,8,101},{0,8,37},{0,9,170},{0,8,5},{0,8,133},{0,8,69}, + {0,9,234},{16,7,8},{0,8,93},{0,8,29},{0,9,154},{20,7,83},{0,8,125}, + {0,8,61},{0,9,218},{18,7,23},{0,8,109},{0,8,45},{0,9,186},{0,8,13}, + {0,8,141},{0,8,77},{0,9,250},{16,7,3},{0,8,83},{0,8,19},{21,8,195}, + {19,7,35},{0,8,115},{0,8,51},{0,9,198},{17,7,11},{0,8,99},{0,8,35}, + {0,9,166},{0,8,3},{0,8,131},{0,8,67},{0,9,230},{16,7,7},{0,8,91}, + {0,8,27},{0,9,150},{20,7,67},{0,8,123},{0,8,59},{0,9,214},{18,7,19}, + {0,8,107},{0,8,43},{0,9,182},{0,8,11},{0,8,139},{0,8,75},{0,9,246}, + {16,7,5},{0,8,87},{0,8,23},{64,8,0},{19,7,51},{0,8,119},{0,8,55}, + {0,9,206},{17,7,15},{0,8,103},{0,8,39},{0,9,174},{0,8,7},{0,8,135}, + {0,8,71},{0,9,238},{16,7,9},{0,8,95},{0,8,31},{0,9,158},{20,7,99}, + {0,8,127},{0,8,63},{0,9,222},{18,7,27},{0,8,111},{0,8,47},{0,9,190}, + {0,8,15},{0,8,143},{0,8,79},{0,9,254},{96,7,0},{0,8,80},{0,8,16}, + {20,8,115},{18,7,31},{0,8,112},{0,8,48},{0,9,193},{16,7,10},{0,8,96}, + {0,8,32},{0,9,161},{0,8,0},{0,8,128},{0,8,64},{0,9,225},{16,7,6}, + {0,8,88},{0,8,24},{0,9,145},{19,7,59},{0,8,120},{0,8,56},{0,9,209}, + {17,7,17},{0,8,104},{0,8,40},{0,9,177},{0,8,8},{0,8,136},{0,8,72}, + {0,9,241},{16,7,4},{0,8,84},{0,8,20},{21,8,227},{19,7,43},{0,8,116}, + {0,8,52},{0,9,201},{17,7,13},{0,8,100},{0,8,36},{0,9,169},{0,8,4}, + {0,8,132},{0,8,68},{0,9,233},{16,7,8},{0,8,92},{0,8,28},{0,9,153}, + {20,7,83},{0,8,124},{0,8,60},{0,9,217},{18,7,23},{0,8,108},{0,8,44}, + {0,9,185},{0,8,12},{0,8,140},{0,8,76},{0,9,249},{16,7,3},{0,8,82}, + {0,8,18},{21,8,163},{19,7,35},{0,8,114},{0,8,50},{0,9,197},{17,7,11}, + {0,8,98},{0,8,34},{0,9,165},{0,8,2},{0,8,130},{0,8,66},{0,9,229}, + {16,7,7},{0,8,90},{0,8,26},{0,9,149},{20,7,67},{0,8,122},{0,8,58}, + {0,9,213},{18,7,19},{0,8,106},{0,8,42},{0,9,181},{0,8,10},{0,8,138}, + {0,8,74},{0,9,245},{16,7,5},{0,8,86},{0,8,22},{64,8,0},{19,7,51}, + {0,8,118},{0,8,54},{0,9,205},{17,7,15},{0,8,102},{0,8,38},{0,9,173}, + {0,8,6},{0,8,134},{0,8,70},{0,9,237},{16,7,9},{0,8,94},{0,8,30}, + {0,9,157},{20,7,99},{0,8,126},{0,8,62},{0,9,221},{18,7,27},{0,8,110}, + {0,8,46},{0,9,189},{0,8,14},{0,8,142},{0,8,78},{0,9,253},{96,7,0}, + {0,8,81},{0,8,17},{21,8,131},{18,7,31},{0,8,113},{0,8,49},{0,9,195}, + {16,7,10},{0,8,97},{0,8,33},{0,9,163},{0,8,1},{0,8,129},{0,8,65}, + {0,9,227},{16,7,6},{0,8,89},{0,8,25},{0,9,147},{19,7,59},{0,8,121}, + {0,8,57},{0,9,211},{17,7,17},{0,8,105},{0,8,41},{0,9,179},{0,8,9}, + {0,8,137},{0,8,73},{0,9,243},{16,7,4},{0,8,85},{0,8,21},{16,8,258}, + {19,7,43},{0,8,117},{0,8,53},{0,9,203},{17,7,13},{0,8,101},{0,8,37}, + {0,9,171},{0,8,5},{0,8,133},{0,8,69},{0,9,235},{16,7,8},{0,8,93}, + {0,8,29},{0,9,155},{20,7,83},{0,8,125},{0,8,61},{0,9,219},{18,7,23}, + {0,8,109},{0,8,45},{0,9,187},{0,8,13},{0,8,141},{0,8,77},{0,9,251}, + {16,7,3},{0,8,83},{0,8,19},{21,8,195},{19,7,35},{0,8,115},{0,8,51}, + {0,9,199},{17,7,11},{0,8,99},{0,8,35},{0,9,167},{0,8,3},{0,8,131}, + {0,8,67},{0,9,231},{16,7,7},{0,8,91},{0,8,27},{0,9,151},{20,7,67}, + {0,8,123},{0,8,59},{0,9,215},{18,7,19},{0,8,107},{0,8,43},{0,9,183}, + {0,8,11},{0,8,139},{0,8,75},{0,9,247},{16,7,5},{0,8,87},{0,8,23}, + {64,8,0},{19,7,51},{0,8,119},{0,8,55},{0,9,207},{17,7,15},{0,8,103}, + {0,8,39},{0,9,175},{0,8,7},{0,8,135},{0,8,71},{0,9,239},{16,7,9}, + {0,8,95},{0,8,31},{0,9,159},{20,7,99},{0,8,127},{0,8,63},{0,9,223}, + {18,7,27},{0,8,111},{0,8,47},{0,9,191},{0,8,15},{0,8,143},{0,8,79}, + {0,9,255} +}; - static const code distfix[32] = { - {16,5,1},{23,5,257},{19,5,17},{27,5,4097},{17,5,5},{25,5,1025}, - {21,5,65},{29,5,16385},{16,5,3},{24,5,513},{20,5,33},{28,5,8193}, - {18,5,9},{26,5,2049},{22,5,129},{64,5,0},{16,5,2},{23,5,385}, - {19,5,25},{27,5,6145},{17,5,7},{25,5,1537},{21,5,97},{29,5,24577}, - {16,5,4},{24,5,769},{20,5,49},{28,5,12289},{18,5,13},{26,5,3073}, - {22,5,193},{64,5,0} - }; +static const code distfix[32] = { + {16,5,1},{23,5,257},{19,5,17},{27,5,4097},{17,5,5},{25,5,1025}, + {21,5,65},{29,5,16385},{16,5,3},{24,5,513},{20,5,33},{28,5,8193}, + {18,5,9},{26,5,2049},{22,5,129},{64,5,0},{16,5,2},{23,5,385}, + {19,5,25},{27,5,6145},{17,5,7},{25,5,1537},{21,5,97},{29,5,24577}, + {16,5,4},{24,5,769},{20,5,49},{28,5,12289},{18,5,13},{26,5,3073}, + {22,5,193},{64,5,0} +}; diff --git a/icecat/modules/zlib/src/inflate.c b/icecat/modules/zlib/src/inflate.c index 94ecff015a..5f5d4922b7 100644 --- a/icecat/modules/zlib/src/inflate.c +++ b/icecat/modules/zlib/src/inflate.c @@ -1,5 +1,5 @@ /* inflate.c -- zlib decompression - * Copyright (C) 1995-2022 Mark Adler + * Copyright (C) 1995-2026 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -85,12 +85,6 @@ #include "inflate.h" #include "inffast.h" -#ifdef MAKEFIXED -# ifndef BUILDFIXED -# define BUILDFIXED -# endif -#endif - local int inflateStateCheck(z_streamp strm) { struct inflate_state FAR *state; if (strm == Z_NULL || @@ -110,6 +104,7 @@ int ZEXPORT inflateResetKeep(z_streamp strm) { state = (struct inflate_state FAR *)strm->state; strm->total_in = strm->total_out = state->total = 0; strm->msg = Z_NULL; + strm->data_type = 0; if (state->wrap) /* to support ill-conceived Java test suite */ strm->adler = state->wrap & 1; state->mode = HEAD; @@ -202,6 +197,7 @@ int ZEXPORT inflateInit2_(z_streamp strm, int windowBits, state = (struct inflate_state FAR *) ZALLOC(strm, 1, sizeof(struct inflate_state)); if (state == Z_NULL) return Z_MEM_ERROR; + zmemzero(state, sizeof(struct inflate_state)); Tracev((stderr, "inflate: allocated\n")); strm->state = (struct internal_state FAR *)state; state->strm = strm; @@ -234,123 +230,11 @@ int ZEXPORT inflatePrime(z_streamp strm, int bits, int value) { } if (bits > 16 || state->bits + (uInt)bits > 32) return Z_STREAM_ERROR; value &= (1L << bits) - 1; - state->hold += (unsigned)value << state->bits; + state->hold += (unsigned long)value << state->bits; state->bits += (uInt)bits; return Z_OK; } -/* - Return state with length and distance decoding tables and index sizes set to - fixed code decoding. Normally this returns fixed tables from inffixed.h. - If BUILDFIXED is defined, then instead this routine builds the tables the - first time it's called, and returns those tables the first time and - thereafter. This reduces the size of the code by about 2K bytes, in - exchange for a little execution time. However, BUILDFIXED should not be - used for threaded applications, since the rewriting of the tables and virgin - may not be thread-safe. - */ -local void fixedtables(struct inflate_state FAR *state) { -#ifdef BUILDFIXED - static int virgin = 1; - static code *lenfix, *distfix; - static code fixed[544]; - - /* build fixed huffman tables if first call (may not be thread safe) */ - if (virgin) { - unsigned sym, bits; - static code *next; - - /* literal/length table */ - sym = 0; - while (sym < 144) state->lens[sym++] = 8; - while (sym < 256) state->lens[sym++] = 9; - while (sym < 280) state->lens[sym++] = 7; - while (sym < 288) state->lens[sym++] = 8; - next = fixed; - lenfix = next; - bits = 9; - inflate_table(LENS, state->lens, 288, &(next), &(bits), state->work); - - /* distance table */ - sym = 0; - while (sym < 32) state->lens[sym++] = 5; - distfix = next; - bits = 5; - inflate_table(DISTS, state->lens, 32, &(next), &(bits), state->work); - - /* do this just once */ - virgin = 0; - } -#else /* !BUILDFIXED */ -# include "inffixed.h" -#endif /* BUILDFIXED */ - state->lencode = lenfix; - state->lenbits = 9; - state->distcode = distfix; - state->distbits = 5; -} - -#ifdef MAKEFIXED -#include - -/* - Write out the inffixed.h that is #include'd above. Defining MAKEFIXED also - defines BUILDFIXED, so the tables are built on the fly. makefixed() writes - those tables to stdout, which would be piped to inffixed.h. A small program - can simply call makefixed to do this: - - void makefixed(void); - - int main(void) - { - makefixed(); - return 0; - } - - Then that can be linked with zlib built with MAKEFIXED defined and run: - - a.out > inffixed.h - */ -void makefixed(void) -{ - unsigned low, size; - struct inflate_state state; - - fixedtables(&state); - puts(" /* inffixed.h -- table for decoding fixed codes"); - puts(" * Generated automatically by makefixed()."); - puts(" */"); - puts(""); - puts(" /* WARNING: this file should *not* be used by applications."); - puts(" It is part of the implementation of this library and is"); - puts(" subject to change. Applications should only use zlib.h."); - puts(" */"); - puts(""); - size = 1U << 9; - printf(" static const code lenfix[%u] = {", size); - low = 0; - for (;;) { - if ((low % 7) == 0) printf("\n "); - printf("{%u,%u,%d}", (low & 127) == 99 ? 64 : state.lencode[low].op, - state.lencode[low].bits, state.lencode[low].val); - if (++low == size) break; - putchar(','); - } - puts("\n };"); - size = 1U << 5; - printf("\n static const code distfix[%u] = {", size); - low = 0; - for (;;) { - if ((low % 6) == 0) printf("\n "); - printf("{%u,%u,%d}", state.distcode[low].op, state.distcode[low].bits, - state.distcode[low].val); - if (++low == size) break; - putchar(','); - } - puts("\n };"); -} -#endif /* MAKEFIXED */ - /* Update the window with the last wsize (normally 32K) bytes written before returning. If window does not exist yet, create it. This is only called @@ -642,12 +526,12 @@ int ZEXPORT inflate(z_streamp strm, int flush) { if ( #endif ((BITS(8) << 8) + (hold >> 8)) % 31) { - strm->msg = (char *)"incorrect header check"; + strm->msg = (z_const char *)"incorrect header check"; state->mode = BAD; break; } if (BITS(4) != Z_DEFLATED) { - strm->msg = (char *)"unknown compression method"; + strm->msg = (z_const char *)"unknown compression method"; state->mode = BAD; break; } @@ -656,7 +540,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { if (state->wbits == 0) state->wbits = len; if (len > 15 || len > state->wbits) { - strm->msg = (char *)"invalid window size"; + strm->msg = (z_const char *)"invalid window size"; state->mode = BAD; break; } @@ -672,12 +556,12 @@ int ZEXPORT inflate(z_streamp strm, int flush) { NEEDBITS(16); state->flags = (int)(hold); if ((state->flags & 0xff) != Z_DEFLATED) { - strm->msg = (char *)"unknown compression method"; + strm->msg = (z_const char *)"unknown compression method"; state->mode = BAD; break; } if (state->flags & 0xe000) { - strm->msg = (char *)"unknown header flags set"; + strm->msg = (z_const char *)"unknown header flags set"; state->mode = BAD; break; } @@ -793,7 +677,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { if (state->flags & 0x0200) { NEEDBITS(16); if ((state->wrap & 4) && hold != (state->check & 0xffff)) { - strm->msg = (char *)"header crc mismatch"; + strm->msg = (z_const char *)"header crc mismatch"; state->mode = BAD; break; } @@ -840,7 +724,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { state->mode = STORED; break; case 1: /* fixed block */ - fixedtables(state); + inflate_fixed(state); Tracev((stderr, "inflate: fixed codes block%s\n", state->last ? " (last)" : "")); state->mode = LEN_; /* decode codes */ @@ -854,8 +738,8 @@ int ZEXPORT inflate(z_streamp strm, int flush) { state->last ? " (last)" : "")); state->mode = TABLE; break; - case 3: - strm->msg = (char *)"invalid block type"; + default: + strm->msg = (z_const char *)"invalid block type"; state->mode = BAD; } DROPBITS(2); @@ -864,7 +748,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { BYTEBITS(); /* go to byte boundary */ NEEDBITS(32); if ((hold & 0xffff) != ((hold >> 16) ^ 0xffff)) { - strm->msg = (char *)"invalid stored block lengths"; + strm->msg = (z_const char *)"invalid stored block lengths"; state->mode = BAD; break; } @@ -905,7 +789,8 @@ int ZEXPORT inflate(z_streamp strm, int flush) { DROPBITS(4); #ifndef PKZIP_BUG_WORKAROUND if (state->nlen > 286 || state->ndist > 30) { - strm->msg = (char *)"too many length or distance symbols"; + strm->msg = (z_const char *) + "too many length or distance symbols"; state->mode = BAD; break; } @@ -923,12 +808,12 @@ int ZEXPORT inflate(z_streamp strm, int flush) { while (state->have < 19) state->lens[order[state->have++]] = 0; state->next = state->codes; - state->lencode = (const code FAR *)(state->next); + state->lencode = state->distcode = (const code FAR *)(state->next); state->lenbits = 7; ret = inflate_table(CODES, state->lens, 19, &(state->next), &(state->lenbits), state->work); if (ret) { - strm->msg = (char *)"invalid code lengths set"; + strm->msg = (z_const char *)"invalid code lengths set"; state->mode = BAD; break; } @@ -952,7 +837,8 @@ int ZEXPORT inflate(z_streamp strm, int flush) { NEEDBITS(here.bits + 2); DROPBITS(here.bits); if (state->have == 0) { - strm->msg = (char *)"invalid bit length repeat"; + strm->msg = (z_const char *) + "invalid bit length repeat"; state->mode = BAD; break; } @@ -975,7 +861,8 @@ int ZEXPORT inflate(z_streamp strm, int flush) { DROPBITS(7); } if (state->have + copy > state->nlen + state->ndist) { - strm->msg = (char *)"invalid bit length repeat"; + strm->msg = (z_const char *) + "invalid bit length repeat"; state->mode = BAD; break; } @@ -989,7 +876,8 @@ int ZEXPORT inflate(z_streamp strm, int flush) { /* check for end-of-block code (better have one) */ if (state->lens[256] == 0) { - strm->msg = (char *)"invalid code -- missing end-of-block"; + strm->msg = (z_const char *) + "invalid code -- missing end-of-block"; state->mode = BAD; break; } @@ -1003,7 +891,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { ret = inflate_table(LENS, state->lens, state->nlen, &(state->next), &(state->lenbits), state->work); if (ret) { - strm->msg = (char *)"invalid literal/lengths set"; + strm->msg = (z_const char *)"invalid literal/lengths set"; state->mode = BAD; break; } @@ -1012,7 +900,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { ret = inflate_table(DISTS, state->lens + state->nlen, state->ndist, &(state->next), &(state->distbits), state->work); if (ret) { - strm->msg = (char *)"invalid distances set"; + strm->msg = (z_const char *)"invalid distances set"; state->mode = BAD; break; } @@ -1066,7 +954,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { break; } if (here.op & 64) { - strm->msg = (char *)"invalid literal/length code"; + strm->msg = (z_const char *)"invalid literal/length code"; state->mode = BAD; break; } @@ -1104,7 +992,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { DROPBITS(here.bits); state->back += here.bits; if (here.op & 64) { - strm->msg = (char *)"invalid distance code"; + strm->msg = (z_const char *)"invalid distance code"; state->mode = BAD; break; } @@ -1121,7 +1009,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { } #ifdef INFLATE_STRICT if (state->offset > state->dmax) { - strm->msg = (char *)"invalid distance too far back"; + strm->msg = (z_const char *)"invalid distance too far back"; state->mode = BAD; break; } @@ -1136,7 +1024,8 @@ int ZEXPORT inflate(z_streamp strm, int flush) { copy = state->offset - copy; if (copy > state->whave) { if (state->sane) { - strm->msg = (char *)"invalid distance too far back"; + strm->msg = (z_const char *) + "invalid distance too far back"; state->mode = BAD; break; } @@ -1195,7 +1084,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { state->flags ? hold : #endif ZSWAP32(hold)) != state->check) { - strm->msg = (char *)"incorrect data check"; + strm->msg = (z_const char *)"incorrect data check"; state->mode = BAD; break; } @@ -1209,7 +1098,7 @@ int ZEXPORT inflate(z_streamp strm, int flush) { if (state->wrap && state->flags) { NEEDBITS(32); if ((state->wrap & 4) && hold != (state->total & 0xffffffff)) { - strm->msg = (char *)"incorrect length check"; + strm->msg = (z_const char *)"incorrect length check"; state->mode = BAD; break; } @@ -1440,7 +1329,6 @@ int ZEXPORT inflateCopy(z_streamp dest, z_streamp source) { struct inflate_state FAR *state; struct inflate_state FAR *copy; unsigned char FAR *window; - unsigned wsize; /* check input */ if (inflateStateCheck(source) || dest == Z_NULL) @@ -1451,6 +1339,7 @@ int ZEXPORT inflateCopy(z_streamp dest, z_streamp source) { copy = (struct inflate_state FAR *) ZALLOC(source, 1, sizeof(struct inflate_state)); if (copy == Z_NULL) return Z_MEM_ERROR; + zmemzero(copy, sizeof(struct inflate_state)); window = Z_NULL; if (state->window != Z_NULL) { window = (unsigned char FAR *) @@ -1462,8 +1351,8 @@ int ZEXPORT inflateCopy(z_streamp dest, z_streamp source) { } /* copy state */ - zmemcpy((voidpf)dest, (voidpf)source, sizeof(z_stream)); - zmemcpy((voidpf)copy, (voidpf)state, sizeof(struct inflate_state)); + zmemcpy(dest, source, sizeof(z_stream)); + zmemcpy(copy, state, sizeof(struct inflate_state)); copy->strm = dest; if (state->lencode >= state->codes && state->lencode <= state->codes + ENOUGH - 1) { @@ -1471,10 +1360,8 @@ int ZEXPORT inflateCopy(z_streamp dest, z_streamp source) { copy->distcode = copy->codes + (state->distcode - state->codes); } copy->next = copy->codes + (state->next - state->codes); - if (window != Z_NULL) { - wsize = 1U << state->wbits; - zmemcpy(window, state->window, wsize); - } + if (window != Z_NULL) + zmemcpy(window, state->window, state->whave); copy->window = window; dest->state = (struct internal_state FAR *)copy; return Z_OK; diff --git a/icecat/modules/zlib/src/inflate.h b/icecat/modules/zlib/src/inflate.h index f127b6b1fa..f758e0dcc1 100644 --- a/icecat/modules/zlib/src/inflate.h +++ b/icecat/modules/zlib/src/inflate.h @@ -100,7 +100,7 @@ struct inflate_state { unsigned char FAR *window; /* allocated sliding window, if needed */ /* bit accumulator */ unsigned long hold; /* input bit accumulator */ - unsigned bits; /* number of bits in "in" */ + unsigned bits; /* number of bits in hold */ /* for string and stored block copying */ unsigned length; /* literal or length of data to copy */ unsigned offset; /* distance back to copy string from */ diff --git a/icecat/modules/zlib/src/inftrees.c b/icecat/modules/zlib/src/inftrees.c index 98cfe16445..dcbc64e05b 100644 --- a/icecat/modules/zlib/src/inftrees.c +++ b/icecat/modules/zlib/src/inftrees.c @@ -1,15 +1,29 @@ /* inftrees.c -- generate Huffman trees for efficient decoding - * Copyright (C) 1995-2024 Mark Adler + * Copyright (C) 1995-2026 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ +#ifdef MAKEFIXED +# ifndef BUILDFIXED +# define BUILDFIXED +# endif +#endif +#ifdef BUILDFIXED +# define Z_ONCE +#endif + #include "zutil.h" #include "inftrees.h" +#include "inflate.h" + +#ifndef NULL +# define NULL 0 +#endif #define MAXBITS 15 const char inflate_copyright[] = - " inflate 1.3.1 Copyright 1995-2024 Mark Adler "; + " inflate 1.3.2 Copyright 1995-2026 Mark Adler "; /* If you use the zlib library in a product, an acknowledgment is welcome in the documentation of your product. If for some reason you cannot @@ -47,9 +61,9 @@ int ZLIB_INTERNAL inflate_table(codetype type, unsigned short FAR *lens, unsigned mask; /* mask for low root bits */ code here; /* table entry for duplication */ code FAR *next; /* next available space in table */ - const unsigned short FAR *base; /* base value table to use */ - const unsigned short FAR *extra; /* extra bits table to use */ - unsigned match; /* use base and extra for symbol >= match */ + const unsigned short FAR *base = NULL; /* base value table to use */ + const unsigned short FAR *extra = NULL; /* extra bits table to use */ + unsigned match = 0; /* use base and extra for symbol >= match */ unsigned short count[MAXBITS+1]; /* number of codes of each length */ unsigned short offs[MAXBITS+1]; /* offsets in table for each length */ static const unsigned short lbase[31] = { /* Length codes 257..285 base */ @@ -57,7 +71,7 @@ int ZLIB_INTERNAL inflate_table(codetype type, unsigned short FAR *lens, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0}; static const unsigned short lext[31] = { /* Length codes 257..285 extra */ 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, - 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 203, 77}; + 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 199, 75}; static const unsigned short dbase[32] = { /* Distance codes 0..29 base */ 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, @@ -175,7 +189,6 @@ int ZLIB_INTERNAL inflate_table(codetype type, unsigned short FAR *lens, /* set up for code type */ switch (type) { case CODES: - base = extra = work; /* dummy value--not used */ match = 20; break; case LENS: @@ -183,10 +196,9 @@ int ZLIB_INTERNAL inflate_table(codetype type, unsigned short FAR *lens, extra = lext; match = 257; break; - default: /* DISTS */ + case DISTS: base = dbase; extra = dext; - match = 0; } /* initialize state for loop */ @@ -297,3 +309,116 @@ int ZLIB_INTERNAL inflate_table(codetype type, unsigned short FAR *lens, *bits = root; return 0; } + +#ifdef BUILDFIXED +/* + If this is compiled with BUILDFIXED defined, and if inflate will be used in + multiple threads, and if atomics are not available, then inflate() must be + called with a fixed block (e.g. 0x03 0x00) to initialize the tables and must + return before any other threads are allowed to call inflate. + */ + +static code *lenfix, *distfix; +static code fixed[544]; + +/* State for z_once(). */ +local z_once_t built = Z_ONCE_INIT; + +local void buildtables(void) { + unsigned sym, bits; + static code *next; + unsigned short lens[288], work[288]; + + /* literal/length table */ + sym = 0; + while (sym < 144) lens[sym++] = 8; + while (sym < 256) lens[sym++] = 9; + while (sym < 280) lens[sym++] = 7; + while (sym < 288) lens[sym++] = 8; + next = fixed; + lenfix = next; + bits = 9; + inflate_table(LENS, lens, 288, &(next), &(bits), work); + + /* distance table */ + sym = 0; + while (sym < 32) lens[sym++] = 5; + distfix = next; + bits = 5; + inflate_table(DISTS, lens, 32, &(next), &(bits), work); +} +#else /* !BUILDFIXED */ +# include "inffixed.h" +#endif /* BUILDFIXED */ + +/* + Return state with length and distance decoding tables and index sizes set to + fixed code decoding. Normally this returns fixed tables from inffixed.h. + If BUILDFIXED is defined, then instead this routine builds the tables the + first time it's called, and returns those tables the first time and + thereafter. This reduces the size of the code by about 2K bytes, in + exchange for a little execution time. However, BUILDFIXED should not be + used for threaded applications if atomics are not available, as it will + not be thread-safe. + */ +void inflate_fixed(struct inflate_state FAR *state) { +#ifdef BUILDFIXED + z_once(&built, buildtables); +#endif /* BUILDFIXED */ + state->lencode = lenfix; + state->lenbits = 9; + state->distcode = distfix; + state->distbits = 5; +} + +#ifdef MAKEFIXED +#include + +/* + Write out the inffixed.h that will be #include'd above. Defining MAKEFIXED + also defines BUILDFIXED, so the tables are built on the fly. main() writes + those tables to stdout, which would directed to inffixed.h. Compile this + along with zutil.c: + + cc -DMAKEFIXED -o fix inftrees.c zutil.c + ./fix > inffixed.h + */ +int main(void) { + unsigned low, size; + struct inflate_state state; + + inflate_fixed(&state); + puts("/* inffixed.h -- table for decoding fixed codes"); + puts(" * Generated automatically by makefixed()."); + puts(" */"); + puts(""); + puts("/* WARNING: this file should *not* be used by applications."); + puts(" It is part of the implementation of this library and is"); + puts(" subject to change. Applications should only use zlib.h."); + puts(" */"); + puts(""); + size = 1U << 9; + printf("static const code lenfix[%u] = {", size); + low = 0; + for (;;) { + if ((low % 7) == 0) printf("\n "); + printf("{%u,%u,%d}", (low & 127) == 99 ? 64 : state.lencode[low].op, + state.lencode[low].bits, state.lencode[low].val); + if (++low == size) break; + putchar(','); + } + puts("\n};"); + size = 1U << 5; + printf("\nstatic const code distfix[%u] = {", size); + low = 0; + for (;;) { + if ((low % 6) == 0) printf("\n "); + printf("{%u,%u,%d}", state.distcode[low].op, state.distcode[low].bits, + state.distcode[low].val); + if (++low == size) break; + putchar(','); + } + puts("\n};"); + return 0; +} +#endif /* MAKEFIXED */ diff --git a/icecat/modules/zlib/src/inftrees.h b/icecat/modules/zlib/src/inftrees.h index 396f74b5da..84d053697c 100644 --- a/icecat/modules/zlib/src/inftrees.h +++ b/icecat/modules/zlib/src/inftrees.h @@ -1,5 +1,5 @@ /* inftrees.h -- header to use inftrees.c - * Copyright (C) 1995-2005, 2010 Mark Adler + * Copyright (C) 1995-2026 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -60,3 +60,5 @@ typedef enum { int ZLIB_INTERNAL inflate_table(codetype type, unsigned short FAR *lens, unsigned codes, code FAR * FAR *table, unsigned FAR *bits, unsigned short FAR *work); +struct inflate_state; +void ZLIB_INTERNAL inflate_fixed(struct inflate_state FAR *state); diff --git a/icecat/modules/zlib/src/mozzconf.h b/icecat/modules/zlib/src/mozzconf.h index ec947f07a3..6e74f881f3 100644 --- a/icecat/modules/zlib/src/mozzconf.h +++ b/icecat/modules/zlib/src/mozzconf.h @@ -160,9 +160,30 @@ #define slide_hash MOZ_Z_slide_hash #define uncompress2 MOZ_Z_uncompress2 +/* New as of zlib-1.2.9 */ +#define adler32_z MOZ_Z_adler32_z +#define crc32_z MOZ_Z_crc32_z +#define deflateGetDictionary MOZ_Z_deflateGetDictionary +#define gzfread MOZ_Z_gzfread +#define gzfwrite MOZ_Z_gzfwrite +#define inflateCodesUsed MOZ_Z_inflateCodesUsed +#define inflateValidate MOZ_Z_inflateValidate + /* New as of zlib-1.2.13 */ #define crc32_combine_gen MOZ_Z_crc32_combine_gen #define crc32_combine_gen64 MOZ_Z_crc32_combine_gen64 #define crc32_combine_op MOZ_Z_crc32_combine_op +/* New as of zlib-1.3.1.2 */ +#define deflateUsed MOZ_Z_deflateUsed + +/* New as of zlib-1.3.2 */ +#define compress_z MOZ_Z_compress_z +#define compress2_z MOZ_Z_compress2_z +#define compressBound_z MOZ_Z_compressBound_z +#define deflateBound_z MOZ_Z_deflateBound_z +#define inflate_fixed MOZ_Z_inflate_fixed +#define uncompress_z MOZ_Z_uncompress_z +#define uncompress2_z MOZ_Z_uncompress2_z + #endif diff --git a/icecat/modules/zlib/src/trees.c b/icecat/modules/zlib/src/trees.c index 6a523ef34e..8e4da01e9f 100644 --- a/icecat/modules/zlib/src/trees.c +++ b/icecat/modules/zlib/src/trees.c @@ -1,5 +1,5 @@ /* trees.c -- output deflated data using Huffman coding - * Copyright (C) 1995-2024 Jean-loup Gailly + * Copyright (C) 1995-2026 Jean-loup Gailly * detect_data_type() function provided freely by Cosmin Truta, 2006 * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -112,7 +112,7 @@ local int base_dist[D_CODES]; #else # include "trees.h" -#endif /* GEN_TREES_H */ +#endif /* defined(GEN_TREES_H) || !defined(STDC) */ struct static_tree_desc_s { const ct_data *static_tree; /* static tree or NULL */ @@ -152,7 +152,7 @@ local TCONST static_tree_desc static_bl_desc = * IN assertion: 1 <= len <= 15 */ local unsigned bi_reverse(unsigned code, int len) { - register unsigned res = 0; + unsigned res = 0; do { res |= code & 1; code >>= 1, res <<= 1; @@ -184,10 +184,11 @@ local void bi_windup(deflate_state *s) { } else if (s->bi_valid > 0) { put_byte(s, (Byte)s->bi_buf); } + s->bi_used = ((s->bi_valid - 1) & 7) + 1; s->bi_buf = 0; s->bi_valid = 0; #ifdef ZLIB_DEBUG - s->bits_sent = (s->bits_sent + 7) & ~7; + s->bits_sent = (s->bits_sent + 7) & ~(ulg)7; #endif } @@ -466,6 +467,7 @@ void ZLIB_INTERNAL _tr_init(deflate_state *s) { s->bi_buf = 0; s->bi_valid = 0; + s->bi_used = 0; #ifdef ZLIB_DEBUG s->compressed_len = 0L; s->bits_sent = 0L; @@ -724,7 +726,7 @@ local void scan_tree(deflate_state *s, ct_data *tree, int max_code) { if (++count < max_count && curlen == nextlen) { continue; } else if (count < min_count) { - s->bl_tree[curlen].Freq += count; + s->bl_tree[curlen].Freq += (ush)count; } else if (curlen != 0) { if (curlen != prevlen) s->bl_tree[curlen].Freq++; s->bl_tree[REP_3_6].Freq++; @@ -817,7 +819,7 @@ local int build_bl_tree(deflate_state *s) { } /* Update opt_len to include the bit length tree and counts */ s->opt_len += 3*((ulg)max_blindex + 1) + 5 + 5 + 4; - Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld", + Tracev((stderr, "\ndyn trees: dyn %lu, stat %lu", s->opt_len, s->static_len)); return max_blindex; @@ -843,13 +845,13 @@ local void send_all_trees(deflate_state *s, int lcodes, int dcodes, Tracev((stderr, "\nbl code %2d ", bl_order[rank])); send_bits(s, s->bl_tree[bl_order[rank]].Len, 3); } - Tracev((stderr, "\nbl tree: sent %ld", s->bits_sent)); + Tracev((stderr, "\nbl tree: sent %lu", s->bits_sent)); send_tree(s, (ct_data *)s->dyn_ltree, lcodes - 1); /* literal tree */ - Tracev((stderr, "\nlit tree: sent %ld", s->bits_sent)); + Tracev((stderr, "\nlit tree: sent %lu", s->bits_sent)); send_tree(s, (ct_data *)s->dyn_dtree, dcodes - 1); /* distance tree */ - Tracev((stderr, "\ndist tree: sent %ld", s->bits_sent)); + Tracev((stderr, "\ndist tree: sent %lu", s->bits_sent)); } /* =========================================================================== @@ -932,7 +934,7 @@ local void compress_block(deflate_state *s, const ct_data *ltree, extra = extra_dbits[code]; if (extra != 0) { dist -= (unsigned)base_dist[code]; - send_bits(s, dist, extra); /* send the extra distance bits */ + send_bits(s, (int)dist, extra); /* send the extra bits */ } } /* literal or match pair ? */ @@ -1006,11 +1008,11 @@ void ZLIB_INTERNAL _tr_flush_block(deflate_state *s, charf *buf, /* Construct the literal and distance trees */ build_tree(s, (tree_desc *)(&(s->l_desc))); - Tracev((stderr, "\nlit data: dyn %ld, stat %ld", s->opt_len, + Tracev((stderr, "\nlit data: dyn %lu, stat %lu", s->opt_len, s->static_len)); build_tree(s, (tree_desc *)(&(s->d_desc))); - Tracev((stderr, "\ndist data: dyn %ld, stat %ld", s->opt_len, + Tracev((stderr, "\ndist data: dyn %lu, stat %lu", s->opt_len, s->static_len)); /* At this point, opt_len and static_len are the total bit lengths of * the compressed block data, excluding the tree representations. @@ -1083,7 +1085,7 @@ void ZLIB_INTERNAL _tr_flush_block(deflate_state *s, charf *buf, #endif } Tracev((stderr,"\ncomprlen %lu(%lu) ", s->compressed_len >> 3, - s->compressed_len - 7*last)); + s->compressed_len - 7*(ulg)last)); } /* =========================================================================== diff --git a/icecat/modules/zlib/src/uncompr.c b/icecat/modules/zlib/src/uncompr.c index 5e256663b4..2195e78550 100644 --- a/icecat/modules/zlib/src/uncompr.c +++ b/icecat/modules/zlib/src/uncompr.c @@ -1,5 +1,5 @@ /* uncompr.c -- decompress a memory buffer - * Copyright (C) 1995-2003, 2010, 2014, 2016 Jean-loup Gailly, Mark Adler + * Copyright (C) 1995-2026 Jean-loup Gailly, Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -23,24 +23,24 @@ memory, Z_BUF_ERROR if there was not enough room in the output buffer, or Z_DATA_ERROR if the input data was corrupted, including if the input data is an incomplete zlib stream. + + The _z versions of the functions take size_t length arguments. */ -int ZEXPORT uncompress2(Bytef *dest, uLongf *destLen, const Bytef *source, - uLong *sourceLen) { +int ZEXPORT uncompress2_z(Bytef *dest, z_size_t *destLen, const Bytef *source, + z_size_t *sourceLen) { z_stream stream; int err; const uInt max = (uInt)-1; - uLong len, left; - Byte buf[1]; /* for detection of incomplete stream when *destLen == 0 */ + z_size_t len, left; + + if (sourceLen == NULL || (*sourceLen > 0 && source == NULL) || + destLen == NULL || (*destLen > 0 && dest == NULL)) + return Z_STREAM_ERROR; len = *sourceLen; - if (*destLen) { - left = *destLen; - *destLen = 0; - } - else { - left = 1; - dest = buf; - } + left = *destLen; + if (left == 0 && dest == Z_NULL) + dest = (Bytef *)&stream.reserved; /* next_out cannot be NULL */ stream.next_in = (z_const Bytef *)source; stream.avail_in = 0; @@ -56,30 +56,46 @@ int ZEXPORT uncompress2(Bytef *dest, uLongf *destLen, const Bytef *source, do { if (stream.avail_out == 0) { - stream.avail_out = left > (uLong)max ? max : (uInt)left; + stream.avail_out = left > (z_size_t)max ? max : (uInt)left; left -= stream.avail_out; } if (stream.avail_in == 0) { - stream.avail_in = len > (uLong)max ? max : (uInt)len; + stream.avail_in = len > (z_size_t)max ? max : (uInt)len; len -= stream.avail_in; } err = inflate(&stream, Z_NO_FLUSH); } while (err == Z_OK); - *sourceLen -= len + stream.avail_in; - if (dest != buf) - *destLen = stream.total_out; - else if (stream.total_out && err == Z_BUF_ERROR) - left = 1; + /* Set len and left to the unused input data and unused output space. Set + *sourceLen to the amount of input consumed. Set *destLen to the amount + of data produced. */ + len += stream.avail_in; + left += stream.avail_out; + *sourceLen -= len; + *destLen -= left; inflateEnd(&stream); return err == Z_STREAM_END ? Z_OK : err == Z_NEED_DICT ? Z_DATA_ERROR : - err == Z_BUF_ERROR && left + stream.avail_out ? Z_DATA_ERROR : + err == Z_BUF_ERROR && len == 0 ? Z_DATA_ERROR : err; } - +int ZEXPORT uncompress2(Bytef *dest, uLongf *destLen, const Bytef *source, + uLong *sourceLen) { + int ret; + z_size_t got = *destLen, used = *sourceLen; + ret = uncompress2_z(dest, &got, source, &used); + *sourceLen = (uLong)used; + *destLen = (uLong)got; + return ret; +} +int ZEXPORT uncompress_z(Bytef *dest, z_size_t *destLen, const Bytef *source, + z_size_t sourceLen) { + z_size_t used = sourceLen; + return uncompress2_z(dest, destLen, source, &used); +} int ZEXPORT uncompress(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen) { - return uncompress2(dest, destLen, source, &sourceLen); + uLong used = sourceLen; + return uncompress2(dest, destLen, source, &used); } diff --git a/icecat/modules/zlib/src/zconf.h b/icecat/modules/zlib/src/zconf.h index c6305ec3de..3842decc17 100644 --- a/icecat/modules/zlib/src/zconf.h +++ b/icecat/modules/zlib/src/zconf.h @@ -1,5 +1,5 @@ /* zconf.h -- configuration of the zlib compression library - * Copyright (C) 1995-2024 Jean-loup Gailly, Mark Adler + * Copyright (C) 1995-2026 Jean-loup Gailly, Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -36,7 +36,10 @@ # ifndef Z_SOLO # define compress z_compress # define compress2 z_compress2 +# define compress_z z_compress_z +# define compress2_z z_compress2_z # define compressBound z_compressBound +# define compressBound_z z_compressBound_z # endif # define crc32 z_crc32 # define crc32_combine z_crc32_combine @@ -47,6 +50,7 @@ # define crc32_z z_crc32_z # define deflate z_deflate # define deflateBound z_deflateBound +# define deflateBound_z z_deflateBound_z # define deflateCopy z_deflateCopy # define deflateEnd z_deflateEnd # define deflateGetDictionary z_deflateGetDictionary @@ -62,6 +66,7 @@ # define deflateSetDictionary z_deflateSetDictionary # define deflateSetHeader z_deflateSetHeader # define deflateTune z_deflateTune +# define deflateUsed z_deflateUsed # define deflate_copyright z_deflate_copyright # define get_crc_table z_get_crc_table # ifndef Z_SOLO @@ -131,9 +136,12 @@ # define inflate_copyright z_inflate_copyright # define inflate_fast z_inflate_fast # define inflate_table z_inflate_table +# define inflate_fixed z_inflate_fixed # ifndef Z_SOLO # define uncompress z_uncompress # define uncompress2 z_uncompress2 +# define uncompress_z z_uncompress_z +# define uncompress2_z z_uncompress2_z # endif # define zError z_zError # ifndef Z_SOLO @@ -237,10 +245,12 @@ # endif #endif -#if defined(ZLIB_CONST) && !defined(z_const) -# define z_const const -#else -# define z_const +#ifndef z_const +# ifdef ZLIB_CONST +# define z_const const +# else +# define z_const +# endif #endif #ifdef Z_SOLO @@ -436,11 +446,11 @@ typedef uLong FAR uLongf; typedef unsigned long z_crc_t; #endif -#ifdef HAVE_UNISTD_H /* may be set to #if 1 by ./configure */ +#if HAVE_UNISTD_H-0 /* may be set to #if 1 by ./configure */ # define Z_HAVE_UNISTD_H #endif -#ifdef HAVE_STDARG_H /* may be set to #if 1 by ./configure */ +#if HAVE_STDARG_H-0 /* may be set to #if 1 by ./configure */ # define Z_HAVE_STDARG_H #endif @@ -473,12 +483,8 @@ typedef uLong FAR uLongf; #endif #ifndef Z_HAVE_UNISTD_H -# ifdef __WATCOMC__ -# define Z_HAVE_UNISTD_H -# endif -#endif -#ifndef Z_HAVE_UNISTD_H -# if defined(_LARGEFILE64_SOURCE) && !defined(_WIN32) +# if defined(__WATCOMC__) || defined(__GO32__) || \ + (defined(_LARGEFILE64_SOURCE) && !defined(_WIN32)) # define Z_HAVE_UNISTD_H # endif #endif @@ -513,17 +519,19 @@ typedef uLong FAR uLongf; #endif #ifndef z_off_t -# define z_off_t long +# define z_off_t long long #endif #if !defined(_WIN32) && defined(Z_LARGE64) # define z_off64_t off64_t +#elif defined(__MINGW32__) +# define z_off64_t long long +#elif defined(_WIN32) && !defined(__GNUC__) +# define z_off64_t __int64 +#elif defined(__GO32__) +# define z_off64_t offset_t #else -# if defined(_WIN32) && !defined(__GNUC__) -# define z_off64_t __int64 -# else -# define z_off64_t z_off_t -# endif +# define z_off64_t z_off_t #endif /* MVS linker does not support external names larger than 8 bytes */ diff --git a/icecat/modules/zlib/src/zlib.h b/icecat/modules/zlib/src/zlib.h index 8d4b932eaf..a57d336134 100644 --- a/icecat/modules/zlib/src/zlib.h +++ b/icecat/modules/zlib/src/zlib.h @@ -1,7 +1,7 @@ /* zlib.h -- interface of the 'zlib' general purpose compression library - version 1.3.1, January 22nd, 2024 + version 1.3.2, February 17th, 2026 - Copyright (C) 1995-2024 Jean-loup Gailly and Mark Adler + Copyright (C) 1995-2026 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -24,24 +24,28 @@ The data format used by the zlib library is described by RFCs (Request for - Comments) 1950 to 1952 in the files http://tools.ietf.org/html/rfc1950 + Comments) 1950 to 1952 at https://datatracker.ietf.org/doc/html/rfc1950 (zlib format), rfc1951 (deflate format) and rfc1952 (gzip format). */ #ifndef ZLIB_H #define ZLIB_H -#include "zconf.h" +#ifdef ZLIB_BUILD +# include +#else +# include "zconf.h" +#endif #ifdef __cplusplus extern "C" { #endif -#define ZLIB_VERSION "1.3.1" -#define ZLIB_VERNUM 0x1310 +#define ZLIB_VERSION "1.3.2" +#define ZLIB_VERNUM 0x1320 #define ZLIB_VER_MAJOR 1 #define ZLIB_VER_MINOR 3 -#define ZLIB_VER_REVISION 1 +#define ZLIB_VER_REVISION 2 #define ZLIB_VER_SUBREVISION 0 /* @@ -441,7 +445,7 @@ ZEXTERN int ZEXPORT inflate(z_streamp strm, int flush); The Z_BLOCK option assists in appending to or combining deflate streams. To assist in this, on return inflate() always sets strm->data_type to the - number of unused bits in the last byte taken from strm->next_in, plus 64 if + number of unused bits in the input taken from strm->next_in, plus 64 if inflate() is currently decoding the last block in the deflate stream, plus 128 if inflate() returned immediately after decoding an end-of-block code or decoding the complete header up to just before the first byte of the deflate @@ -587,18 +591,21 @@ ZEXTERN int ZEXPORT deflateInit2(z_streamp strm, The strategy parameter is used to tune the compression algorithm. Use the value Z_DEFAULT_STRATEGY for normal data, Z_FILTERED for data produced by a - filter (or predictor), Z_HUFFMAN_ONLY to force Huffman encoding only (no - string match), or Z_RLE to limit match distances to one (run-length - encoding). Filtered data consists mostly of small values with a somewhat - random distribution. In this case, the compression algorithm is tuned to - compress them better. The effect of Z_FILTERED is to force more Huffman - coding and less string matching; it is somewhat intermediate between - Z_DEFAULT_STRATEGY and Z_HUFFMAN_ONLY. Z_RLE is designed to be almost as - fast as Z_HUFFMAN_ONLY, but give better compression for PNG image data. The - strategy parameter only affects the compression ratio but not the - correctness of the compressed output even if it is not set appropriately. - Z_FIXED prevents the use of dynamic Huffman codes, allowing for a simpler - decoder for special applications. + filter (or predictor), Z_RLE to limit match distances to one (run-length + encoding), or Z_HUFFMAN_ONLY to force Huffman encoding only (no string + matching). Filtered data consists mostly of small values with a somewhat + random distribution, as produced by the PNG filters. In this case, the + compression algorithm is tuned to compress them better. The effect of + Z_FILTERED is to force more Huffman coding and less string matching than the + default; it is intermediate between Z_DEFAULT_STRATEGY and Z_HUFFMAN_ONLY. + Z_RLE is almost as fast as Z_HUFFMAN_ONLY, but should give better + compression for PNG image data than Huffman only. The degree of string + matching from most to none is: Z_DEFAULT_STRATEGY, Z_FILTERED, Z_RLE, then + Z_HUFFMAN_ONLY. The strategy parameter affects the compression ratio but + never the correctness of the compressed output, even if it is not set + optimally for the given data. Z_FIXED uses the default string matching, but + prevents the use of dynamic Huffman codes, allowing for a simpler decoder + for special applications. deflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_STREAM_ERROR if any parameter is invalid (such as an invalid @@ -758,8 +765,8 @@ ZEXTERN int ZEXPORT deflateTune(z_streamp strm, returns Z_OK on success, or Z_STREAM_ERROR for an invalid deflate stream. */ -ZEXTERN uLong ZEXPORT deflateBound(z_streamp strm, - uLong sourceLen); +ZEXTERN uLong ZEXPORT deflateBound(z_streamp strm, uLong sourceLen); +ZEXTERN z_size_t ZEXPORT deflateBound_z(z_streamp strm, z_size_t sourceLen); /* deflateBound() returns an upper bound on the compressed size after deflation of sourceLen bytes. It must be called after deflateInit() or @@ -771,6 +778,9 @@ ZEXTERN uLong ZEXPORT deflateBound(z_streamp strm, to return Z_STREAM_END. Note that it is possible for the compressed size to be larger than the value returned by deflateBound() if flush options other than Z_FINISH or Z_NO_FLUSH are used. + + delfateBound_z() is the same, but takes and returns a size_t length. Note + that a long is 32 bits on Windows. */ ZEXTERN int ZEXPORT deflatePending(z_streamp strm, @@ -785,6 +795,21 @@ ZEXTERN int ZEXPORT deflatePending(z_streamp strm, or bits are Z_NULL, then those values are not set. deflatePending returns Z_OK if success, or Z_STREAM_ERROR if the source + stream state was inconsistent. If an int is 16 bits and memLevel is 9, then + it is possible for the number of pending bytes to not fit in an unsigned. In + that case Z_BUF_ERROR is returned and *pending is set to the maximum value + of an unsigned. + */ + +ZEXTERN int ZEXPORT deflateUsed(z_streamp strm, + int *bits); +/* + deflateUsed() returns in *bits the most recent number of deflate bits used + in the last byte when flushing to a byte boundary. The result is in 1..8, or + 0 if there has not yet been a flush. This helps determine the location of + the last bit of a deflate stream. + + deflateUsed returns Z_OK if success, or Z_STREAM_ERROR if the source stream state was inconsistent. */ @@ -987,13 +1012,15 @@ ZEXTERN int ZEXPORT inflatePrime(z_streamp strm, int bits, int value); /* - This function inserts bits in the inflate input stream. The intent is - that this function is used to start inflating at a bit position in the - middle of a byte. The provided bits will be used before any bytes are used - from next_in. This function should only be used with raw inflate, and - should be used before the first inflate() call after inflateInit2() or - inflateReset(). bits must be less than or equal to 16, and that many of the - least significant bits of value will be inserted in the input. + This function inserts bits in the inflate input stream. The intent is to + use inflatePrime() to start inflating at a bit position in the middle of a + byte. The provided bits will be used before any bytes are used from + next_in. This function should be used with raw inflate, before the first + inflate() call, after inflateInit2() or inflateReset(). It can also be used + after an inflate() return indicates the end of a deflate block or header + when using Z_BLOCK. bits must be less than or equal to 16, and that many of + the least significant bits of value will be inserted in the input. The + other bits in value can be non-zero, and will be ignored. If bits is negative, then the input stream bit buffer is emptied. Then inflatePrime() can be called again to put bits in the buffer. This is used @@ -1001,7 +1028,15 @@ ZEXTERN int ZEXPORT inflatePrime(z_streamp strm, to feeding inflate codes. inflatePrime returns Z_OK if success, or Z_STREAM_ERROR if the source - stream state was inconsistent. + stream state was inconsistent, or if bits is out of range. If inflate was + in the middle of processing a header, trailer, or stored block lengths, then + it is possible for there to be only eight bits available in the bit buffer. + In that case, bits > 8 is considered out of range. However, when used as + outlined above, there will always be 16 bits available in the buffer for + insertion. As noted in its documentation above, inflate records the number + of bits in the bit buffer on return in data_type. 32 minus that is the + number of bits available for insertion. inflatePrime does not update + data_type with the new number of bits in buffer. */ ZEXTERN long ZEXPORT inflateMark(z_streamp strm); @@ -1047,20 +1082,22 @@ ZEXTERN int ZEXPORT inflateGetHeader(z_streamp strm, The text, time, xflags, and os fields are filled in with the gzip header contents. hcrc is set to true if there is a header CRC. (The header CRC - was valid if done is set to one.) If extra is not Z_NULL, then extra_max - contains the maximum number of bytes to write to extra. Once done is true, - extra_len contains the actual extra field length, and extra contains the - extra field, or that field truncated if extra_max is less than extra_len. - If name is not Z_NULL, then up to name_max characters are written there, - terminated with a zero unless the length is greater than name_max. If - comment is not Z_NULL, then up to comm_max characters are written there, - terminated with a zero unless the length is greater than comm_max. When any - of extra, name, or comment are not Z_NULL and the respective field is not - present in the header, then that field is set to Z_NULL to signal its - absence. This allows the use of deflateSetHeader() with the returned - structure to duplicate the header. However if those fields are set to - allocated memory, then the application will need to save those pointers - elsewhere so that they can be eventually freed. + was valid if done is set to one.) The extra, name, and comment pointers + much each be either Z_NULL or point to space to store that information from + the header. If extra is not Z_NULL, then extra_max contains the maximum + number of bytes that can be written to extra. Once done is true, extra_len + contains the actual extra field length, and extra contains the extra field, + or that field truncated if extra_max is less than extra_len. If name is not + Z_NULL, then up to name_max characters, including the terminating zero, are + written there. If comment is not Z_NULL, then up to comm_max characters, + including the terminating zero, are written there. The application can tell + that the name or comment did not fit in the provided space by the absence of + a terminating zero. If any of extra, name, or comment are not present in + the header, then that field's pointer is set to Z_NULL. This allows the use + of deflateSetHeader() with the returned structure to duplicate the header. + Note that if those fields initially pointed to allocated memory, then the + application will need to save them elsewhere so that they can be eventually + freed. If inflateGetHeader is not used, then the header information is simply discarded. The header is always checked for validity, including the header @@ -1208,13 +1245,14 @@ ZEXTERN uLong ZEXPORT zlibCompileFlags(void); 21: FASTEST -- deflate algorithm with only one, lowest compression level 22,23: 0 (reserved) - The sprintf variant used by gzprintf (zero is best): + The sprintf variant used by gzprintf (all zeros is best): 24: 0 = vs*, 1 = s* -- 1 means limited to 20 arguments after the format - 25: 0 = *nprintf, 1 = *printf -- 1 means gzprintf() not secure! + 25: 0 = *nprintf, 1 = *printf -- 1 means gzprintf() is not secure! 26: 0 = returns value, 1 = void -- 1 means inferred string length returned + 27: 0 = gzprintf() present, 1 = not -- 1 means gzprintf() returns an error Remainder: - 27-31: 0 (reserved) + 28-31: 0 (reserved) */ #ifndef Z_SOLO @@ -1226,11 +1264,14 @@ ZEXTERN uLong ZEXPORT zlibCompileFlags(void); stream-oriented functions. To simplify the interface, some default options are assumed (compression level and memory usage, standard memory allocation functions). The source code of these utility functions can be modified if - you need special options. + you need special options. The _z versions of the functions use the size_t + type for lengths. Note that a long is 32 bits on Windows. */ -ZEXTERN int ZEXPORT compress(Bytef *dest, uLongf *destLen, +ZEXTERN int ZEXPORT compress(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen); +ZEXTERN int ZEXPORT compress_z(Bytef *dest, z_size_t *destLen, + const Bytef *source, z_size_t sourceLen); /* Compresses the source buffer into the destination buffer. sourceLen is the byte length of the source buffer. Upon entry, destLen is the total size @@ -1244,9 +1285,12 @@ ZEXTERN int ZEXPORT compress(Bytef *dest, uLongf *destLen, buffer. */ -ZEXTERN int ZEXPORT compress2(Bytef *dest, uLongf *destLen, +ZEXTERN int ZEXPORT compress2(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen, int level); +ZEXTERN int ZEXPORT compress2_z(Bytef *dest, z_size_t *destLen, + const Bytef *source, z_size_t sourceLen, + int level); /* Compresses the source buffer into the destination buffer. The level parameter has the same meaning as in deflateInit. sourceLen is the byte @@ -1261,21 +1305,24 @@ ZEXTERN int ZEXPORT compress2(Bytef *dest, uLongf *destLen, */ ZEXTERN uLong ZEXPORT compressBound(uLong sourceLen); +ZEXTERN z_size_t ZEXPORT compressBound_z(z_size_t sourceLen); /* compressBound() returns an upper bound on the compressed size after compress() or compress2() on sourceLen bytes. It would be used before a compress() or compress2() call to allocate the destination buffer. */ -ZEXTERN int ZEXPORT uncompress(Bytef *dest, uLongf *destLen, +ZEXTERN int ZEXPORT uncompress(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen); +ZEXTERN int ZEXPORT uncompress_z(Bytef *dest, z_size_t *destLen, + const Bytef *source, z_size_t sourceLen); /* Decompresses the source buffer into the destination buffer. sourceLen is - the byte length of the source buffer. Upon entry, destLen is the total size + the byte length of the source buffer. On entry, *destLen is the total size of the destination buffer, which must be large enough to hold the entire uncompressed data. (The size of the uncompressed data must have been saved previously by the compressor and transmitted to the decompressor by some - mechanism outside the scope of this compression library.) Upon exit, destLen + mechanism outside the scope of this compression library.) On exit, *destLen is the actual size of the uncompressed data. uncompress returns Z_OK if success, Z_MEM_ERROR if there was not @@ -1285,8 +1332,10 @@ ZEXTERN int ZEXPORT uncompress(Bytef *dest, uLongf *destLen, buffer with the uncompressed data up to that point. */ -ZEXTERN int ZEXPORT uncompress2(Bytef *dest, uLongf *destLen, +ZEXTERN int ZEXPORT uncompress2(Bytef *dest, uLongf *destLen, const Bytef *source, uLong *sourceLen); +ZEXTERN int ZEXPORT uncompress2_z(Bytef *dest, z_size_t *destLen, + const Bytef *source, z_size_t *sourceLen); /* Same as uncompress, except that sourceLen is a pointer, where the length of the source is *sourceLen. On return, *sourceLen is the number of @@ -1314,13 +1363,17 @@ ZEXTERN gzFile ZEXPORT gzopen(const char *path, const char *mode); 'R' for run-length encoding as in "wb1R", or 'F' for fixed code compression as in "wb9F". (See the description of deflateInit2 for more information about the strategy parameter.) 'T' will request transparent writing or - appending with no compression and not using the gzip format. + appending with no compression and not using the gzip format. 'T' cannot be + used to force transparent reading. Transparent reading is automatically + performed if there is no gzip header at the start. Transparent reading can + be disabled with the 'G' option, which will instead return an error if there + is no gzip header. 'N' will open the file in non-blocking mode. - "a" can be used instead of "w" to request that the gzip stream that will - be written be appended to the file. "+" will result in an error, since + 'a' can be used instead of 'w' to request that the gzip stream that will + be written be appended to the file. '+' will result in an error, since reading and writing to the same gzip file is not supported. The addition of - "x" when writing will create the file exclusively, which fails if the file - already exists. On systems that support it, the addition of "e" when + 'x' when writing will create the file exclusively, which fails if the file + already exists. On systems that support it, the addition of 'e' when reading or writing will set the flag to close the file on an execve() call. These functions, as well as gzip, will read and decode a sequence of gzip @@ -1339,14 +1392,22 @@ ZEXTERN gzFile ZEXPORT gzopen(const char *path, const char *mode); insufficient memory to allocate the gzFile state, or if an invalid mode was specified (an 'r', 'w', or 'a' was not provided, or '+' was provided). errno can be checked to determine if the reason gzopen failed was that the - file could not be opened. + file could not be opened. Note that if 'N' is in mode for non-blocking, the + open() itself can fail in order to not block. In that case gzopen() will + return NULL and errno will be EAGAIN or ENONBLOCK. The call to gzopen() can + then be re-tried. If the application would like to block on opening the + file, then it can use open() without O_NONBLOCK, and then gzdopen() with the + resulting file descriptor and 'N' in the mode, which will set it to non- + blocking. */ ZEXTERN gzFile ZEXPORT gzdopen(int fd, const char *mode); /* Associate a gzFile with the file descriptor fd. File descriptors are obtained from calls like open, dup, creat, pipe or fileno (if the file has - been previously opened with fopen). The mode parameter is as in gzopen. + been previously opened with fopen). The mode parameter is as in gzopen. An + 'e' in mode will set fd's flag to close the file on an execve() call. An 'N' + in mode will set fd's non-blocking flag. The next call of gzclose on the returned gzFile will also close the file descriptor fd, just like fclose(fdopen(fd, mode)) closes the file descriptor @@ -1416,10 +1477,16 @@ ZEXTERN int ZEXPORT gzread(gzFile file, voidp buf, unsigned len); stream. Alternatively, gzerror can be used before gzclose to detect this case. + gzread can be used to read a gzip file on a non-blocking device. If the + input stalls and there is no uncompressed data to return, then gzread() will + return -1, and errno will be EAGAIN or EWOULDBLOCK. gzread() can then be + called again. + gzread returns the number of uncompressed bytes actually read, less than len for end of file, or -1 for error. If len is too large to fit in an int, then nothing is read, -1 is returned, and the error state is set to - Z_STREAM_ERROR. + Z_STREAM_ERROR. If some data was read before an error, then that data is + returned until exhausted, after which the next call will signal the error. */ ZEXTERN z_size_t ZEXPORT gzfread(voidp buf, z_size_t size, z_size_t nitems, @@ -1443,15 +1510,20 @@ ZEXTERN z_size_t ZEXPORT gzfread(voidp buf, z_size_t size, z_size_t nitems, multiple of size, then the final partial item is nevertheless read into buf and the end-of-file flag is set. The length of the partial item read is not provided, but could be inferred from the result of gztell(). This behavior - is the same as the behavior of fread() implementations in common libraries, - but it prevents the direct use of gzfread() to read a concurrently written - file, resetting and retrying on end-of-file, when size is not 1. + is the same as that of fread() implementations in common libraries. This + could result in data loss if used with size != 1 when reading a concurrently + written file or a non-blocking file. In that case, use size == 1 or gzread() + instead. */ ZEXTERN int ZEXPORT gzwrite(gzFile file, voidpc buf, unsigned len); /* Compress and write the len uncompressed bytes at buf to file. gzwrite - returns the number of uncompressed bytes written or 0 in case of error. + returns the number of uncompressed bytes written, or 0 in case of error or + if len is 0. If the write destination is non-blocking, then gzwrite() may + return a number of bytes written that is not 0 and less than len. + + If len does not fit in an int, then 0 is returned and nothing is written. */ ZEXTERN z_size_t ZEXPORT gzfwrite(voidpc buf, z_size_t size, @@ -1466,9 +1538,18 @@ ZEXTERN z_size_t ZEXPORT gzfwrite(voidpc buf, z_size_t size, if there was an error. If the multiplication of size and nitems overflows, i.e. the product does not fit in a z_size_t, then nothing is written, zero is returned, and the error state is set to Z_STREAM_ERROR. + + If writing a concurrently read file or a non-blocking file with size != 1, + a partial item could be written, with no way of knowing how much of it was + not written, resulting in data loss. In that case, use size == 1 or + gzwrite() instead. */ +#if defined(STDC) || defined(Z_HAVE_STDARG_H) ZEXTERN int ZEXPORTVA gzprintf(gzFile file, const char *format, ...); +#else +ZEXTERN int ZEXPORTVA gzprintf(); +#endif /* Convert, format, compress, and write the arguments (...) to file under control of the string format, as in fprintf. gzprintf returns the number of @@ -1476,11 +1557,19 @@ ZEXTERN int ZEXPORTVA gzprintf(gzFile file, const char *format, ...); of error. The number of uncompressed bytes written is limited to 8191, or one less than the buffer size given to gzbuffer(). The caller should assure that this limit is not exceeded. If it is exceeded, then gzprintf() will - return an error (0) with nothing written. In this case, there may also be a - buffer overflow with unpredictable consequences, which is possible only if - zlib was compiled with the insecure functions sprintf() or vsprintf(), - because the secure snprintf() or vsnprintf() functions were not available. - This can be determined using zlibCompileFlags(). + return an error (0) with nothing written. + + In that last case, there may also be a buffer overflow with unpredictable + consequences, which is possible only if zlib was compiled with the insecure + functions sprintf() or vsprintf(), because the secure snprintf() and + vsnprintf() functions were not available. That would only be the case for + a non-ANSI C compiler. zlib may have been built without gzprintf() because + secure functions were not available and having gzprintf() be insecure was + not an option, in which case, gzprintf() returns Z_STREAM_ERROR. All of + these possibilities can be determined using zlibCompileFlags(). + + If a Z_BUF_ERROR is returned, then nothing was written due to a stall on + the non-blocking write destination. */ ZEXTERN int ZEXPORT gzputs(gzFile file, const char *s); @@ -1489,6 +1578,11 @@ ZEXTERN int ZEXPORT gzputs(gzFile file, const char *s); the terminating null character. gzputs returns the number of characters written, or -1 in case of error. + The number of characters written may be less than the length of the string + if the write destination is non-blocking. + + If the length of the string does not fit in an int, then -1 is returned + and nothing is written. */ ZEXTERN char * ZEXPORT gzgets(gzFile file, char *buf, int len); @@ -1501,8 +1595,13 @@ ZEXTERN char * ZEXPORT gzgets(gzFile file, char *buf, int len); left untouched. gzgets returns buf which is a null-terminated string, or it returns NULL - for end-of-file or in case of error. If there was an error, the contents at - buf are indeterminate. + for end-of-file or in case of error. If some data was read before an error, + then that data is returned until exhausted, after which the next call will + return NULL to signal the error. + + gzgets can be used on a file being concurrently written, and on a non- + blocking device, both as for gzread(). However lines may be broken in the + middle, leaving it up to the application to reassemble them as needed. */ ZEXTERN int ZEXPORT gzputc(gzFile file, int c); @@ -1513,11 +1612,19 @@ ZEXTERN int ZEXPORT gzputc(gzFile file, int c); ZEXTERN int ZEXPORT gzgetc(gzFile file); /* - Read and decompress one byte from file. gzgetc returns this byte or -1 - in case of end of file or error. This is implemented as a macro for speed. - As such, it does not do all of the checking the other functions do. I.e. - it does not check to see if file is NULL, nor whether the structure file - points to has been clobbered or not. + Read and decompress one byte from file. gzgetc returns this byte or -1 in + case of end of file or error. If some data was read before an error, then + that data is returned until exhausted, after which the next call will return + -1 to signal the error. + + This is implemented as a macro for speed. As such, it does not do all of + the checking the other functions do. I.e. it does not check to see if file + is NULL, nor whether the structure file points to has been clobbered or not. + + gzgetc can be used to read a gzip file on a non-blocking device. If the + input stalls and there is no uncompressed data to return, then gzgetc() will + return -1, and errno will be EAGAIN or EWOULDBLOCK. gzread() can then be + called again. */ ZEXTERN int ZEXPORT gzungetc(int c, gzFile file); @@ -1530,6 +1637,11 @@ ZEXTERN int ZEXPORT gzungetc(int c, gzFile file); output buffer size of pushed characters is allowed. (See gzbuffer above.) The pushed character will be discarded if the stream is repositioned with gzseek() or gzrewind(). + + gzungetc(-1, file) will force any pending seek to execute. Then gztell() + will report the position, even if the requested seek reached end of file. + This can be used to determine the number of uncompressed bytes in a gzip + file without having to read it into a buffer. */ ZEXTERN int ZEXPORT gzflush(gzFile file, int flush); @@ -1559,7 +1671,8 @@ ZEXTERN z_off_t ZEXPORT gzseek(gzFile file, If the file is opened for reading, this function is emulated but can be extremely slow. If the file is opened for writing, only forward seeks are supported; gzseek then compresses a sequence of zeroes up to the new - starting position. + starting position. For reading or writing, any actual seeking is deferred + until the next read or write operation, or close operation when writing. gzseek returns the resulting offset location as measured in bytes from the beginning of the uncompressed stream, or -1 in case of error, in @@ -1567,7 +1680,7 @@ ZEXTERN z_off_t ZEXPORT gzseek(gzFile file, would be before the current position. */ -ZEXTERN int ZEXPORT gzrewind(gzFile file); +ZEXTERN int ZEXPORT gzrewind(gzFile file); /* Rewind file. This function is supported only for reading. @@ -1575,7 +1688,7 @@ ZEXTERN int ZEXPORT gzrewind(gzFile file); */ /* -ZEXTERN z_off_t ZEXPORT gztell(gzFile file); +ZEXTERN z_off_t ZEXPORT gztell(gzFile file); Return the starting position for the next gzread or gzwrite on file. This position represents a number of bytes in the uncompressed data stream, @@ -1620,8 +1733,11 @@ ZEXTERN int ZEXPORT gzdirect(gzFile file); If gzdirect() is used immediately after gzopen() or gzdopen() it will cause buffers to be allocated to allow reading the file to determine if it - is a gzip file. Therefore if gzbuffer() is used, it should be called before - gzdirect(). + is a gzip file. Therefore if gzbuffer() is used, it should be called before + gzdirect(). If the input is being written concurrently or the device is non- + blocking, then gzdirect() may give a different answer once four bytes of + input have been accumulated, which is what is needed to confirm or deny a + gzip header. Before this, gzdirect() will return true (1). When writing, gzdirect() returns true (1) if transparent writing was requested ("wT" for the gzopen() mode), or false (0) otherwise. (Note: @@ -1631,7 +1747,7 @@ ZEXTERN int ZEXPORT gzdirect(gzFile file); gzip file reading and decompression, which may not be desired.) */ -ZEXTERN int ZEXPORT gzclose(gzFile file); +ZEXTERN int ZEXPORT gzclose(gzFile file); /* Flush all pending output for file, if necessary, close file and deallocate the (de)compression state. Note that once file is closed, you @@ -1659,9 +1775,10 @@ ZEXTERN int ZEXPORT gzclose_w(gzFile file); ZEXTERN const char * ZEXPORT gzerror(gzFile file, int *errnum); /* Return the error message for the last error which occurred on file. - errnum is set to zlib error number. If an error occurred in the file system - and not in the compression library, errnum is set to Z_ERRNO and the - application may consult errno to get the exact error code. + If errnum is not NULL, *errnum is set to zlib error number. If an error + occurred in the file system and not in the compression library, *errnum is + set to Z_ERRNO and the application may consult errno to get the exact error + code. The application must not modify the returned string. Future calls to this function may invalidate the previously returned string. If file is @@ -1712,7 +1829,8 @@ ZEXTERN uLong ZEXPORT adler32(uLong adler, const Bytef *buf, uInt len); ZEXTERN uLong ZEXPORT adler32_z(uLong adler, const Bytef *buf, z_size_t len); /* - Same as adler32(), but with a size_t length. + Same as adler32(), but with a size_t length. Note that a long is 32 bits + on Windows. */ /* @@ -1748,7 +1866,8 @@ ZEXTERN uLong ZEXPORT crc32(uLong crc, const Bytef *buf, uInt len); ZEXTERN uLong ZEXPORT crc32_z(uLong crc, const Bytef *buf, z_size_t len); /* - Same as crc32(), but with a size_t length. + Same as crc32(), but with a size_t length. Note that a long is 32 bits on + Windows. */ /* @@ -1758,14 +1877,14 @@ ZEXTERN uLong ZEXPORT crc32_combine(uLong crc1, uLong crc2, z_off_t len2); seq1 and seq2 with lengths len1 and len2, CRC-32 check values were calculated for each, crc1 and crc2. crc32_combine() returns the CRC-32 check value of seq1 and seq2 concatenated, requiring only crc1, crc2, and - len2. len2 must be non-negative. + len2. len2 must be non-negative, otherwise zero is returned. */ /* ZEXTERN uLong ZEXPORT crc32_combine_gen(z_off_t len2); Return the operator corresponding to length len2, to be used with - crc32_combine_op(). len2 must be non-negative. + crc32_combine_op(). len2 must be non-negative, otherwise zero is returned. */ ZEXTERN uLong ZEXPORT crc32_combine_op(uLong crc1, uLong crc2, uLong op); @@ -1888,9 +2007,9 @@ ZEXTERN int ZEXPORT gzgetc_(gzFile file); /* backward compatibility */ ZEXTERN z_off_t ZEXPORT gzseek64(gzFile, z_off_t, int); ZEXTERN z_off_t ZEXPORT gztell64(gzFile); ZEXTERN z_off_t ZEXPORT gzoffset64(gzFile); - ZEXTERN uLong ZEXPORT adler32_combine64(uLong, uLong, z_off_t); - ZEXTERN uLong ZEXPORT crc32_combine64(uLong, uLong, z_off_t); - ZEXTERN uLong ZEXPORT crc32_combine_gen64(z_off_t); + ZEXTERN uLong ZEXPORT adler32_combine64(uLong, uLong, z_off64_t); + ZEXTERN uLong ZEXPORT crc32_combine64(uLong, uLong, z_off64_t); + ZEXTERN uLong ZEXPORT crc32_combine_gen64(z_off64_t); # endif #else ZEXTERN gzFile ZEXPORT gzopen(const char *, const char *); diff --git a/icecat/modules/zlib/src/zutil.c b/icecat/modules/zlib/src/zutil.c index b1c5d2d3c6..4ea02a9c36 100644 --- a/icecat/modules/zlib/src/zutil.c +++ b/icecat/modules/zlib/src/zutil.c @@ -1,5 +1,5 @@ /* zutil.c -- target dependent utility functions for the compression library - * Copyright (C) 1995-2017 Jean-loup Gailly + * Copyright (C) 1995-2026 Jean-loup Gailly * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -86,28 +86,36 @@ uLong ZEXPORT zlibCompileFlags(void) { flags += 1L << 21; #endif #if defined(STDC) || defined(Z_HAVE_STDARG_H) -# ifdef NO_vsnprintf - flags += 1L << 25; -# ifdef HAS_vsprintf_void - flags += 1L << 26; -# endif -# else -# ifdef HAS_vsnprintf_void - flags += 1L << 26; -# endif -# endif +# ifdef NO_vsnprintf +# ifdef ZLIB_INSECURE + flags += 1L << 25; +# else + flags += 1L << 27; +# endif +# ifdef HAS_vsprintf_void + flags += 1L << 26; +# endif +# else +# ifdef HAS_vsnprintf_void + flags += 1L << 26; +# endif +# endif #else flags += 1L << 24; -# ifdef NO_snprintf - flags += 1L << 25; -# ifdef HAS_sprintf_void - flags += 1L << 26; -# endif -# else -# ifdef HAS_snprintf_void - flags += 1L << 26; -# endif -# endif +# ifdef NO_snprintf +# ifdef ZLIB_INSECURE + flags += 1L << 25; +# else + flags += 1L << 27; +# endif +# ifdef HAS_sprintf_void + flags += 1L << 26; +# endif +# else +# ifdef HAS_snprintf_void + flags += 1L << 26; +# endif +# endif #endif return flags; } @@ -142,28 +150,34 @@ const char * ZEXPORT zError(int err) { #ifndef HAVE_MEMCPY -void ZLIB_INTERNAL zmemcpy(Bytef* dest, const Bytef* source, uInt len) { - if (len == 0) return; - do { - *dest++ = *source++; /* ??? to be unrolled */ - } while (--len != 0); +void ZLIB_INTERNAL zmemcpy(void FAR *dst, const void FAR *src, z_size_t n) { + uchf *p = dst; + const uchf *q = src; + while (n) { + *p++ = *q++; + n--; + } } -int ZLIB_INTERNAL zmemcmp(const Bytef* s1, const Bytef* s2, uInt len) { - uInt j; - - for (j = 0; j < len; j++) { - if (s1[j] != s2[j]) return 2*(s1[j] > s2[j])-1; +int ZLIB_INTERNAL zmemcmp(const void FAR *s1, const void FAR *s2, z_size_t n) { + const uchf *p = s1, *q = s2; + while (n) { + if (*p++ != *q++) + return (int)p[-1] - (int)q[-1]; + n--; } return 0; } -void ZLIB_INTERNAL zmemzero(Bytef* dest, uInt len) { +void ZLIB_INTERNAL zmemzero(void FAR *b, z_size_t len) { + uchf *p = b; if (len == 0) return; - do { - *dest++ = 0; /* ??? to be unrolled */ - } while (--len != 0); + while (len) { + *p++ = 0; + len--; + } } + #endif #ifndef Z_SOLO diff --git a/icecat/modules/zlib/src/zutil.h b/icecat/modules/zlib/src/zutil.h index 48dd7febae..a9bc23ca62 100644 --- a/icecat/modules/zlib/src/zutil.h +++ b/icecat/modules/zlib/src/zutil.h @@ -1,5 +1,5 @@ /* zutil.h -- internal interface and configuration of the compression library - * Copyright (C) 1995-2024 Jean-loup Gailly, Mark Adler + * Copyright (C) 1995-2026 Jean-loup Gailly, Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ @@ -36,6 +36,10 @@ define "local" for the non-static meaning of "static", for readability (compile with -Dlocal if your debugger can't find static symbols) */ +extern const char deflate_copyright[]; +extern const char inflate_copyright[]; +extern const char inflate9_copyright[]; + typedef unsigned char uch; typedef uch FAR uchf; typedef unsigned short ush; @@ -48,6 +52,8 @@ typedef unsigned long ulg; # define Z_U8 unsigned long # elif (ULLONG_MAX == 0xffffffffffffffff) # define Z_U8 unsigned long long +# elif (ULONG_LONG_MAX == 0xffffffffffffffff) +# define Z_U8 unsigned long long # elif (UINT_MAX == 0xffffffffffffffff) # define Z_U8 unsigned # endif @@ -63,7 +69,9 @@ extern z_const char * const z_errmsg[10]; /* indexed by 2-zlib_error */ /* To be used only when the state is known to be valid */ /* common constants */ - +#if MAX_WBITS < 9 || MAX_WBITS > 15 +# error MAX_WBITS must be in 9..15 +#endif #ifndef DEF_WBITS # define DEF_WBITS MAX_WBITS #endif @@ -141,7 +149,7 @@ extern z_const char * const z_errmsg[10]; /* indexed by 2-zlib_error */ # define OS_CODE 7 #endif -#ifdef __acorn +#if defined(__acorn) || defined(__riscos) # define OS_CODE 13 #endif @@ -168,11 +176,10 @@ extern z_const char * const z_errmsg[10]; /* indexed by 2-zlib_error */ #endif /* provide prototypes for these when building zlib without LFS */ -#if !defined(_WIN32) && \ - (!defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0) - ZEXTERN uLong ZEXPORT adler32_combine64(uLong, uLong, z_off_t); - ZEXTERN uLong ZEXPORT crc32_combine64(uLong, uLong, z_off_t); - ZEXTERN uLong ZEXPORT crc32_combine_gen64(z_off_t); +#ifndef Z_LARGE64 + ZEXTERN uLong ZEXPORT adler32_combine64(uLong, uLong, z_off64_t); + ZEXTERN uLong ZEXPORT crc32_combine64(uLong, uLong, z_off64_t); + ZEXTERN uLong ZEXPORT crc32_combine_gen64(z_off64_t); #endif /* common defaults */ @@ -211,9 +218,9 @@ extern z_const char * const z_errmsg[10]; /* indexed by 2-zlib_error */ # define zmemzero(dest, len) memset(dest, 0, len) # endif #else - void ZLIB_INTERNAL zmemcpy(Bytef* dest, const Bytef* source, uInt len); - int ZLIB_INTERNAL zmemcmp(const Bytef* s1, const Bytef* s2, uInt len); - void ZLIB_INTERNAL zmemzero(Bytef* dest, uInt len); + void ZLIB_INTERNAL zmemcpy(void FAR *, const void FAR *, z_size_t); + int ZLIB_INTERNAL zmemcmp(const void FAR *, const void FAR *, z_size_t); + void ZLIB_INTERNAL zmemzero(void FAR *, z_size_t); #endif /* Diagnostic functions */ @@ -251,4 +258,74 @@ extern z_const char * const z_errmsg[10]; /* indexed by 2-zlib_error */ #define ZSWAP32(q) ((((q) >> 24) & 0xff) + (((q) >> 8) & 0xff00) + \ (((q) & 0xff00) << 8) + (((q) & 0xff) << 24)) +#ifdef Z_ONCE +/* + Create a local z_once() function depending on the availability of atomics. + */ + +/* Check for the availability of atomics. */ +#if defined(__STDC__) && __STDC_VERSION__ >= 201112L && \ + !defined(__STDC_NO_ATOMICS__) + +#include +typedef struct { + atomic_flag begun; + atomic_int done; +} z_once_t; +#define Z_ONCE_INIT {ATOMIC_FLAG_INIT, 0} + +/* + Run the provided init() function exactly once, even if multiple threads + invoke once() at the same time. The state must be a once_t initialized with + Z_ONCE_INIT. + */ +local void z_once(z_once_t *state, void (*init)(void)) { + if (!atomic_load(&state->done)) { + if (atomic_flag_test_and_set(&state->begun)) + while (!atomic_load(&state->done)) + ; + else { + init(); + atomic_store(&state->done, 1); + } + } +} + +#else /* no atomics */ + +#warning zlib not thread-safe + +typedef struct z_once_s { + volatile int begun; + volatile int done; +} z_once_t; +#define Z_ONCE_INIT {0, 0} + +/* Test and set. Alas, not atomic, but tries to limit the period of + vulnerability. */ +local int test_and_set(int volatile *flag) { + int was; + + was = *flag; + *flag = 1; + return was; +} + +/* Run the provided init() function once. This is not thread-safe. */ +local void z_once(z_once_t *state, void (*init)(void)) { + if (!state->done) { + if (test_and_set(&state->begun)) + while (!state->done) + ; + else { + init(); + state->done = 1; + } + } +} + +#endif /* ?atomics */ + +#endif /* Z_ONCE */ + #endif /* ZUTIL_H */ diff --git a/icecat/netwerk/base/nsStandardURL.cpp b/icecat/netwerk/base/nsStandardURL.cpp index b2778adf36..e6f06dfe80 100644 --- a/icecat/netwerk/base/nsStandardURL.cpp +++ b/icecat/netwerk/base/nsStandardURL.cpp @@ -3400,8 +3400,20 @@ nsresult nsStandardURL::ReadPrivate(nsIObjectInputStream* stream) { } mSupportsFileURL = supportsFileURL; + if (!IsValid()) { + return NS_ERROR_MALFORMED_URI; + } + // wait until object is set up, then modify path to include the param if (old_param.mLen >= 0) { // note that mLen=0 is ";" + // old_param is a local; IsValid() doesn't check it. Bounds-check + // explicitly. + CheckedInt end = CheckedInt(uint32_t(old_param.mPos)) + + uint32_t(old_param.mLen); + if (!end.isValid() || end.value() > mSpec.Length()) { + return NS_ERROR_MALFORMED_URI; + } + // If this wasn't empty, it marks characters between the end of the // file and start of the query - mPath should include the param, // query and ref already. Bump the mFilePath and @@ -3417,10 +3429,6 @@ nsresult nsStandardURL::ReadPrivate(nsIObjectInputStream* stream) { return rv; } - if (!IsValid()) { - return NS_ERROR_MALFORMED_URI; - } - clearOnExit.release(); return NS_OK; @@ -3656,11 +3664,6 @@ bool nsStandardURL::Deserialize(const URIParams& aParams) { mSupportsFileURL = params.supportsFileURL(); - nsresult rv = CheckIfHostIsAscii(); - if (NS_FAILED(rv)) { - return false; - } - // Some sanity checks NS_ENSURE_TRUE(mScheme.mPos == 0, false); NS_ENSURE_TRUE(mScheme.mLen > 0, false); @@ -3683,6 +3686,11 @@ bool nsStandardURL::Deserialize(const URIParams& aParams) { return false; } + nsresult rv = CheckIfHostIsAscii(); + if (NS_FAILED(rv)) { + return false; + } + clearOnExit.release(); return true; diff --git a/icecat/netwerk/base/nsStandardURL.h b/icecat/netwerk/base/nsStandardURL.h index a0f55b05ac..e0602f1d02 100644 --- a/icecat/netwerk/base/nsStandardURL.h +++ b/icecat/netwerk/base/nsStandardURL.h @@ -603,6 +603,11 @@ inline nsDependentCSubstring nsStandardURL::Host() { if (mHost.mLen > 0) { pos = mHost.mPos; len = mHost.mLen; + MOZ_RELEASE_ASSERT(pos < mSpec.Length()); + // `pos + len - 1 < mSpec.Length()` is `len <= mSpec.Length() - pos` + // but also avoids overflow. Underflow can't happen because of previous + // assert. + MOZ_RELEASE_ASSERT(len <= mSpec.Length() - pos); if (mSpec.CharAt(pos) == '[' && mSpec.CharAt(pos + len - 1) == ']') { pos++; len -= 2; diff --git a/icecat/netwerk/dns/effective_tld_names.dat b/icecat/netwerk/dns/effective_tld_names.dat index cb58bf9f34..fcc30c777e 100644 --- a/icecat/netwerk/dns/effective_tld_names.dat +++ b/icecat/netwerk/dns/effective_tld_names.dat @@ -5,8 +5,8 @@ // Please pull this list from, and only from https://publicsuffix.org/list/public_suffix_list.dat, // rather than any other VCS sites. Pulling from any other URL is not guaranteed to be supported. -// VERSION: 2026-02-15_17-15-07_UTC -// COMMIT: 1e7d25f31fa3b180951d9a9567e4148e105d1fdd +// VERSION: 2026-03-09_08-24-09_UTC +// COMMIT: 3c5eb8e70837e15570608f2cb5abe8579e09c9b9 // Instructions on pulling and using this list can be found at https://publicsuffix.org/list/. @@ -3824,8 +3824,14 @@ mil.kg net.kg org.kg -// kh : http://www.mptc.gov.kh/dns_registration.htm -*.kh +// kh : https://trc.gov.kh +// Submitted by khnic@trc.gov.kh +kh +com.kh +edu.kh +gov.kh +net.kh +org.kh // ki : https://www.iana.org/domains/root/db/ki.html ki @@ -6818,7 +6824,7 @@ org.zw // newGTLDs -// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2026-02-15T15:24:49Z +// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2026-02-18T15:51:43Z // This list is auto-generated, don't edit it manually. // aaa : American Automobile Association, Inc. // https://www.iana.org/domains/root/db/aaa.html @@ -9476,7 +9482,7 @@ one // https://www.iana.org/domains/root/db/ong.html ong -// onl : iRegistry GmbH +// onl : Jolly Host, LLC // https://www.iana.org/domains/root/db/onl.html onl @@ -10744,7 +10750,7 @@ weir // https://www.iana.org/domains/root/db/whoswho.html whoswho -// wien : punkt.wien GmbH +// wien : domainworx Service & Management GmbH // https://www.iana.org/domains/root/db/wien.html wien @@ -11363,6 +11369,8 @@ barsy.ca // Alibaba Cloud API Gateway // Submitted by Alibaba Cloud Security alibabacloudcs.com +ms.fun +ms.show // all-inkl.com : https://all-inkl.com // Submitted by Werner Kaltofen @@ -12457,9 +12465,10 @@ beagleboard.io // Submitted by Herman Martinus bearblog.dev -// Beget Ltd -// Submitted by Lev Nekrasov +// Beget LLC : https://beget.com +// Submitted by Lev Nekrasov & Nikita Radchenko *.beget.app +*.begetcdn.cloud // Besties : https://besties.house // Submitted by Hazel Cora @@ -12914,7 +12923,11 @@ caffeine.site caffeine.xyz // dhosting.pl Sp. z o.o. : https://dhosting.pl/ -// Submitted by Michal Kokoszkiewicz +// Submitted by Szczepan Redzioch +mybox.company +intouch.email +mybox.me +mybox.page dfirma.pl dkonto.pl you2.pl @@ -13441,9 +13454,11 @@ relay.evervault.app relay.evervault.dev // Expo : https://expo.dev/ -// Submitted by James Ide +// Submitted by Phil Pluckthun expo.app +on.expo.app staging.expo.app +on.staging.expo.app // Fabrica Technologies, Inc. : https://www.fabrica.dev/ // Submitted by Eric Jiang @@ -14289,10 +14304,6 @@ us1-plenit.com webadorsite.com jouwweb.site -// Joyent : https://www.joyent.com/ -// Submitted by Brian Bennett -*.triton.zone - // JS.ORG : http://dns.js.org // Submitted by Stefan Keim js.org @@ -14306,6 +14317,10 @@ khplay.nl // Submitted by Tomi Juntunen kapsi.fi +// KataBump : https://katabump.com +// Submitted by Thibault Lapeyre +kdns.fr + // Katholieke Universiteit Leuven : https://www.kuleuven.be // Submitted by Abuse KU Leuven ezproxy.kuleuven.be @@ -14547,10 +14562,6 @@ polyspace.com mayfirst.info mayfirst.org -// Maze Play : https://www.mazeplay.com -// Submitted by Adam Humpherys -mazeplay.com - // McHost : https://mchost.ru // Submitted by Evgeniy Subbotin mcdir.me @@ -14688,6 +14699,10 @@ net.ru org.ru pp.ru +// MyOwn srl : https://www.myown.eu/ +// Submitted by Stephane Bouvard +my.be + // Mythic Beasts : https://www.mythic-beasts.com // Submitted by Paul Cammish hostedpi.com @@ -15964,6 +15979,10 @@ lima.zone site.transip.me *.transurl.nl +// Triton Data Center project : https://tritondatacenter.com +// Submitted by Triton Data Center staff +*.triton.zone + // Tunnelmole: https://tunnelmole.com // Submitted by Robbie Cahill tunnelmole.net @@ -16154,6 +16173,11 @@ localcert.net windsurf.app windsurf.build +// WirelessCar : https://wirelesscar.com +// Submitted by Martin Lindberg +drive-platform.com +drive-platform.io + // WISP : https://wisp.gg // Submitted by Stepan Fedotov panel.gg diff --git a/icecat/netwerk/protocol/http/PHttpChannelParams.h b/icecat/netwerk/protocol/http/PHttpChannelParams.h index 8e2840db68..ff531ef44f 100644 --- a/icecat/netwerk/protocol/http/PHttpChannelParams.h +++ b/icecat/netwerk/protocol/http/PHttpChannelParams.h @@ -10,6 +10,7 @@ #define ALLOW_LATE_NSHTTP_H_INCLUDE 1 #include "base/basictypes.h" +#include "ipc/EnumSerializer.h" #include "ipc/IPCMessageUtils.h" #include "ipc/IPCMessageUtilsSpecializations.h" #include "nsHttp.h" @@ -34,6 +35,19 @@ struct RequestHeaderTuple { typedef CopyableTArray RequestHeaderTuples; +struct HttpVersionValidator { + using IntegralType = std::underlying_type_t; + + static bool IsLegalValue(const IntegralType e) { + return e == static_cast(HttpVersion::UNKNOWN) || + e == static_cast(HttpVersion::v0_9) || + e == static_cast(HttpVersion::v1_0) || + e == static_cast(HttpVersion::v1_1) || + e == static_cast(HttpVersion::v2_0) || + e == static_cast(HttpVersion::v3_0); + } +}; + } // namespace net } // namespace mozilla @@ -61,6 +75,18 @@ struct ParamTraits { } }; +template <> +struct ParamTraits + : public EnumSerializer {}; + +template <> +struct ParamTraits + : public ContiguousEnumSerializerInclusive< + mozilla::net::nsHttpRequestHead::ParsedMethodType, + mozilla::net::nsHttpRequestHead::kMethod_Custom, + mozilla::net::nsHttpRequestHead::kMethod_Trace> {}; + template <> struct ParamTraits { typedef mozilla::net::nsHttpAtom paramType; @@ -192,33 +218,29 @@ struct ParamTraits { aParam.Enter(); WriteParam(aWriter, aParam.mHeaders); WriteParam(aWriter, aParam.mMethod); - WriteParam(aWriter, static_cast(aParam.mVersion)); + WriteParam(aWriter, aParam.mVersion); WriteParam(aWriter, aParam.mRequestURI); WriteParam(aWriter, aParam.mPath); WriteParam(aWriter, aParam.mOrigin); - WriteParam(aWriter, static_cast(aParam.mParsedMethod)); + WriteParam(aWriter, aParam.mParsedMethod); WriteParam(aWriter, aParam.mHTTPS); aParam.Exit(); } static bool Read(MessageReader* aReader, paramType* aResult) { - uint32_t version; - uint8_t method; aResult->Enter(); if (!ReadParam(aReader, &aResult->mHeaders) || !ReadParam(aReader, &aResult->mMethod) || - !ReadParam(aReader, &version) || + !ReadParam(aReader, &aResult->mVersion) || !ReadParam(aReader, &aResult->mRequestURI) || !ReadParam(aReader, &aResult->mPath) || !ReadParam(aReader, &aResult->mOrigin) || - !ReadParam(aReader, &method) || !ReadParam(aReader, &aResult->mHTTPS)) { + !ReadParam(aReader, &aResult->mParsedMethod) || + !ReadParam(aReader, &aResult->mHTTPS)) { aResult->Exit(); return false; } - aResult->mVersion = static_cast(version); - aResult->mParsedMethod = - static_cast(method); aResult->Exit(); return true; } @@ -234,7 +256,7 @@ struct ParamTraits { const paramType& aParam) MOZ_NO_THREAD_SAFETY_ANALYSIS { aParam.Enter(); WriteParam(aWriter, aParam.mHeaders); - WriteParam(aWriter, static_cast(aParam.mVersion)); + WriteParam(aWriter, aParam.mVersion); WriteParam(aWriter, aParam.mStatus); WriteParam(aWriter, aParam.mStatusText); WriteParam(aWriter, aParam.mContentLength); @@ -255,10 +277,9 @@ struct ParamTraits { } static bool Read(MessageReader* aReader, paramType* aResult) { - uint32_t version; aResult->Enter(); if (!ReadParam(aReader, &aResult->mHeaders) || - !ReadParam(aReader, &version) || + !ReadParam(aReader, &aResult->mVersion) || !ReadParam(aReader, &aResult->mStatus) || !ReadParam(aReader, &aResult->mStatusText) || !ReadParam(aReader, &aResult->mContentLength) || @@ -279,7 +300,6 @@ struct ParamTraits { return false; } - aResult->mVersion = static_cast(version); aResult->Exit(); return true; } diff --git a/icecat/netwerk/protocol/http/nsHttpResponseHead.cpp b/icecat/netwerk/protocol/http/nsHttpResponseHead.cpp index f457ac7e23..23d31432d8 100644 --- a/icecat/netwerk/protocol/http/nsHttpResponseHead.cpp +++ b/icecat/netwerk/protocol/http/nsHttpResponseHead.cpp @@ -293,6 +293,25 @@ void nsHttpResponseHead::FlattenNetworkOriginalHeaders(nsACString& buf) { mHeaders.FlattenOriginalHeader(buf); } +class ResponseHeaderVisitor : public nsIHttpHeaderVisitor { + using callbackType = + std::function; + NS_DECL_ISUPPORTS + explicit ResponseHeaderVisitor(callbackType&& aCallback) + : mCallback(std::move(aCallback)) {} + + NS_IMETHOD VisitHeader(const nsACString& aName, + const nsACString& aValue) override { + mCallback(aName, aValue); + return NS_OK; + } + + private: + virtual ~ResponseHeaderVisitor() = default; + callbackType mCallback; +}; +NS_IMPL_ISUPPORTS(ResponseHeaderVisitor, nsIHttpHeaderVisitor) + nsresult nsHttpResponseHead::ParseCachedHead(const char* block) { RecursiveMutexAutoLock monitor(mRecursiveMutex); LOG(("nsHttpResponseHead::ParseCachedHead [this=%p]\n", this)); @@ -318,6 +337,15 @@ nsresult nsHttpResponseHead::ParseCachedHead(const char* block) { } while (true); + // fixup content-type header. + mContentTypeBuffer.Truncate(); + RefPtr visitor = new ResponseHeaderVisitor( + [&](const nsACString& aName, const nsACString& aValue) + MOZ_REQUIRES(mRecursiveMutex) { + MOZ_ASSERT(nsHttp::Content_Type.val().EqualsIgnoreCase(aName)); + ParseContentTypeValue(nsHttp::ResolveAtom(aName), aValue); + }); + (void)mHeaders.GetOriginalHeader(nsHttp::Content_Type, visitor); return NS_OK; } @@ -444,6 +472,33 @@ nsresult nsHttpResponseHead::ParseHeaderLine(const nsACString& line) { return ParseHeaderLine_locked(line, true); } +void nsHttpResponseHead::ParseContentTypeValue(const nsHttpAtom& aAtom, + const nsACString& aValue) { + if (!mContentTypeBuffer.IsEmpty()) { + mContentTypeBuffer.AppendLiteral(","); + } + mContentTypeBuffer.Append(aValue); + mContentType.Truncate(); + mContentCharset.Truncate(); + if (CMimeType::Parse(mContentTypeBuffer, mContentType, mContentCharset)) { + } else if (StaticPrefs::network_http_fallback_to_net_parse_ct()) { + bool dummy; + net_ParseContentType(aValue, mContentType, mContentCharset, &dummy); + } + LOG(("ParseContentType [input=%s, type=%s, charset=%s]\n", + nsPromiseFlatCString(aValue).get(), mContentType.get(), + mContentCharset.get())); + + nsAutoCString existingHeader; + if (NS_SUCCEEDED(mHeaders.GetHeader(aAtom, existingHeader)) && + existingHeader != mContentTypeBuffer) { + // Always set the header to the merged buffer, as per Fetch spec. + DebugOnly rv = mHeaders.SetHeader( + aAtom, mContentTypeBuffer, false, nsHttpHeaderArray::eVarietyResponse); + MOZ_ASSERT(NS_SUCCEEDED(rv)); + } +} + nsresult nsHttpResponseHead::ParseHeaderLine_locked( const nsACString& line, bool originalFromNetHeaders) { nsHttpAtom hdr; @@ -487,14 +542,7 @@ nsresult nsHttpResponseHead::ParseHeaderLine_locked( } } else if (hdr == nsHttp::Content_Type) { - if (StaticPrefs::network_standard_content_type_parsing_response_headers() && - CMimeType::Parse(val, mContentType, mContentCharset)) { - } else { - bool dummy; - net_ParseContentType(val, mContentType, mContentCharset, &dummy); - } - LOG(("ParseContentType [input=%s, type=%s, charset=%s]\n", val.get(), - mContentType.get(), mContentCharset.get())); + ParseContentTypeValue(hdr, val); } else if (hdr == nsHttp::Cache_Control) { ParseCacheControl(mHeaders.PeekHeader(hdr)); } else if (hdr == nsHttp::Pragma) { diff --git a/icecat/netwerk/protocol/http/nsHttpResponseHead.h b/icecat/netwerk/protocol/http/nsHttpResponseHead.h index 9c320ffc71..6a4eb21cd1 100644 --- a/icecat/netwerk/protocol/http/nsHttpResponseHead.h +++ b/icecat/netwerk/protocol/http/nsHttpResponseHead.h @@ -160,6 +160,9 @@ class nsHttpResponseHead { // https://fetch.spec.whatwg.org/#content-length-header nsresult ParseResponseContentLength(const nsACString& aHeaderStr) MOZ_REQUIRES(mRecursiveMutex); + void ParseContentTypeValue(const nsHttpAtom& aAtom, + const nsACString& aContentTypeValue) + MOZ_REQUIRES(mRecursiveMutex); nsresult ParseStatusLine_locked(const nsACString& line) MOZ_REQUIRES(mRecursiveMutex); @@ -210,6 +213,7 @@ class nsHttpResponseHead { uint16_t mStatus MOZ_GUARDED_BY(mRecursiveMutex){200}; nsCString mStatusText MOZ_GUARDED_BY(mRecursiveMutex); int64_t mContentLength MOZ_GUARDED_BY(mRecursiveMutex){-1}; + nsCString mContentTypeBuffer MOZ_GUARDED_BY(mRecursiveMutex); nsCString mContentType MOZ_GUARDED_BY(mRecursiveMutex); nsCString mContentCharset MOZ_GUARDED_BY(mRecursiveMutex); bool mHasCacheControl MOZ_GUARDED_BY(mRecursiveMutex){false}; diff --git a/icecat/netwerk/protocol/webtransport/WebTransportSessionProxy.cpp b/icecat/netwerk/protocol/webtransport/WebTransportSessionProxy.cpp index ef6bf1c4d2..3c39f790d6 100644 --- a/icecat/netwerk/protocol/webtransport/WebTransportSessionProxy.cpp +++ b/icecat/netwerk/protocol/webtransport/WebTransportSessionProxy.cpp @@ -135,13 +135,12 @@ nsresult WebTransportSessionProxy::AsyncConnectWithClient( mDedicatedConnection = aDedicated; - if (!aServerCertHashes.IsEmpty()) { - mServerCertHashes.Clear(); - mServerCertHashes.AppendElements(aServerCertHashes); - } - { MutexAutoLock lock(mMutex); + if (!aServerCertHashes.IsEmpty()) { + mServerCertHashes.Clear(); + mServerCertHashes.AppendElements(aServerCertHashes); + } ChangeState(WebTransportSessionProxyState::NEGOTIATING); } @@ -252,6 +251,7 @@ NS_IMETHODIMP WebTransportSessionProxy::GetDedicated(bool* dedicated) { NS_IMETHODIMP WebTransportSessionProxy::GetServerCertificateHashes( nsTArray>& aServerCertHashes) { + MutexAutoLock lock(mMutex); aServerCertHashes.Clear(); aServerCertHashes.AppendElements(mServerCertHashes); return NS_OK; diff --git a/icecat/netwerk/protocol/webtransport/WebTransportSessionProxy.h b/icecat/netwerk/protocol/webtransport/WebTransportSessionProxy.h index 205e479f3d..ca8f5cdaea 100644 --- a/icecat/netwerk/protocol/webtransport/WebTransportSessionProxy.h +++ b/icecat/netwerk/protocol/webtransport/WebTransportSessionProxy.h @@ -191,7 +191,8 @@ class WebTransportSessionProxy final nsTArray> mPendingCreateStreamEvents MOZ_GUARDED_BY(mMutex); nsCOMPtr mTarget MOZ_GUARDED_BY(mMutex); - nsTArray> mServerCertHashes; + nsTArray> mServerCertHashes + MOZ_GUARDED_BY(mMutex); bool mDedicatedConnection; // for WebTranport nsIWebTransport::HTTPVersion mHTTPVersion = nsIWebTransport::HTTPVersion::h3; }; diff --git a/icecat/parser/expat/00_xmlchar.patch b/icecat/parser/expat/00_xmlchar.patch index 49e0f9a99a..a2927f8c06 100644 --- a/icecat/parser/expat/00_xmlchar.patch +++ b/icecat/parser/expat/00_xmlchar.patch @@ -1,30 +1,31 @@ diff --git a/expat/lib/expat_external.h b/expat/lib/expat_external.h --- a/expat/lib/expat_external.h +++ b/expat/lib/expat_external.h -@@ -137,6 +137,9 @@ extern "C" { +@@ -138,6 +138,9 @@ extern "C" { + # endif # endif - #endif +/* BEGIN MOZILLA CHANGE (typedef XML_Char to char16_t) */ +#if 0 + - #ifdef XML_UNICODE /* Information is UTF-16 encoded. */ - # ifdef XML_UNICODE_WCHAR_T + # ifdef XML_UNICODE /* Information is UTF-16 encoded. */ + # ifdef XML_UNICODE_WCHAR_T typedef wchar_t XML_Char; -@@ -150,6 +153,9 @@ typedef char XML_Char; +@@ -151,6 +154,9 @@ typedef char XML_Char; typedef char XML_LChar; - #endif /* XML_UNICODE */ + # endif /* XML_UNICODE */ +#endif +/* END MOZILLA CHANGE */ + - #ifdef XML_LARGE_SIZE /* Use large integers for file/stream positions. */ + # ifdef XML_LARGE_SIZE /* Use large integers for file/stream positions. */ typedef long long XML_Index; typedef unsigned long long XML_Size; diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c +index a187a3a18f19..3a3bb9aa45e2 100644 --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -194,6 +194,9 @@ typedef char ICHAR; +@@ -195,6 +195,9 @@ typedef char ICHAR; #endif @@ -34,7 +35,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c #ifdef XML_UNICODE # ifdef XML_UNICODE_WCHAR_T -@@ -211,6 +214,9 @@ typedef char ICHAR; +@@ -212,6 +215,9 @@ typedef char ICHAR; #endif diff --git a/icecat/parser/expat/01_noslop.patch b/icecat/parser/expat/01_noslop.patch index 22b24f2a44..7bf66177a8 100644 --- a/icecat/parser/expat/01_noslop.patch +++ b/icecat/parser/expat/01_noslop.patch @@ -1,7 +1,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -269,7 +269,9 @@ typedef struct { +@@ -270,7 +270,9 @@ typedef struct { #define INIT_DATA_BUF_SIZE 1024 #define INIT_ATTS_SIZE 16 #define INIT_ATTS_VERSION 0xFFFFFFFF diff --git a/icecat/parser/expat/02_report_mismatched_tag.patch b/icecat/parser/expat/02_report_mismatched_tag.patch index aa4bd5c838..6f499d7c55 100644 --- a/icecat/parser/expat/02_report_mismatched_tag.patch +++ b/icecat/parser/expat/02_report_mismatched_tag.patch @@ -1,17 +1,17 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -764,6 +764,9 @@ struct XML_ParserStruct { - ACCOUNTING m_accounting; +@@ -791,6 +791,9 @@ struct XML_ParserStruct { ENTITY_STATS m_entity_stats; #endif + XML_Bool m_reenter; +/* BEGIN MOZILLA CHANGE (Report opening tag of mismatched closing tag) */ + const XML_Char* m_mismatch; +/* END MOZILLA CHANGE */ }; - #define MALLOC(parser, s) (parser->m_mem.malloc_fcn((s))) -@@ -1189,6 +1192,10 @@ parserCreate(const XML_Char *encodingNam + #if XML_GE == 1 +@@ -1538,6 +1541,10 @@ parserCreate(const XML_Char *encodingName, parser->m_internalEncoding = XmlGetInternalEncoding(); } @@ -22,22 +22,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c return parser; } -@@ -2645,6 +2652,14 @@ XML_SetBillionLaughsAttackProtectionActi - } - #endif /* XML_GE == 1 */ - -+/* BEGIN MOZILLA CHANGE (Report opening tag of mismatched closing tag) */ -+const XML_Char * XMLCALL -+MOZ_XML_GetMismatchedTag(XML_Parser parser) -+{ -+ return parser->m_mismatch; -+} -+/* END MOZILLA CHANGE */ -+ - XML_Bool XMLCALL - XML_SetReparseDeferralEnabled(XML_Parser parser, XML_Bool enabled) { - if (parser != NULL && (enabled == XML_TRUE || enabled == XML_FALSE)) { -@@ -3117,6 +3132,33 @@ doContent(XML_Parser parser, int startTa +@@ -3593,6 +3600,33 @@ doContent(XML_Parser parser, int startTagLevel, const ENCODING *enc, len = XmlNameLength(enc, rawName); if (len != tag->rawNameLength || memcmp(tag->rawName, rawName, len) != 0) { diff --git a/icecat/parser/expat/03_dont_generate_salt.patch b/icecat/parser/expat/03_dont_generate_salt.patch index 91cb70eb24..7a3ee364ea 100644 --- a/icecat/parser/expat/03_dont_generate_salt.patch +++ b/icecat/parser/expat/03_dont_generate_salt.patch @@ -1,7 +1,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -796,6 +796,8 @@ static const XML_Char implicitContext[] +@@ -1046,6 +1046,8 @@ static const XML_Char implicitContext[] ASCII_s, ASCII_p, ASCII_a, ASCII_c, ASCII_e, '\0'}; @@ -10,7 +10,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c /* To avoid warnings about unused functions: */ #if ! defined(HAVE_ARC4RANDOM_BUF) && ! defined(HAVE_ARC4RANDOM) -@@ -957,9 +959,13 @@ ENTROPY_DEBUG(const char *label, unsigne +@@ -1210,9 +1212,13 @@ ENTROPY_DEBUG(const char *label, unsigned long entropy) { } return entropy; } @@ -24,7 +24,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c unsigned long entropy; (void)parser; -@@ -999,6 +1005,10 @@ generate_hash_secret_salt(XML_Parser par +@@ -1252,6 +1258,10 @@ generate_hash_secret_salt(XML_Parser parser) { entropy * (unsigned long)2305843009213693951ULL); } #endif diff --git a/icecat/parser/expat/04_always_set_eventptrs.patch b/icecat/parser/expat/04_always_set_eventptrs.patch index c097c3856f..07174b6577 100644 --- a/icecat/parser/expat/04_always_set_eventptrs.patch +++ b/icecat/parser/expat/04_always_set_eventptrs.patch @@ -1,7 +1,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -2328,6 +2328,10 @@ XML_ResumeParser(XML_Parser parser) { +@@ -2536,6 +2536,10 @@ XML_ParseBuffer(XML_Parser parser, int len, int isFinal) { XmlUpdatePosition(parser->m_encoding, parser->m_positionPtr, parser->m_bufferPtr, &parser->m_position); parser->m_positionPtr = parser->m_bufferPtr; diff --git a/icecat/parser/expat/05_getcurrentbyteindex.patch b/icecat/parser/expat/05_getcurrentbyteindex.patch index 5ae0d38172..69b6c11942 100644 --- a/icecat/parser/expat/05_getcurrentbyteindex.patch +++ b/icecat/parser/expat/05_getcurrentbyteindex.patch @@ -1,7 +1,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -2357,7 +2357,13 @@ XML_GetCurrentByteIndex(XML_Parser parse +@@ -2780,7 +2780,13 @@ XML_GetCurrentByteIndex(XML_Parser parser) { if (parser->m_eventPtr) return (XML_Index)(parser->m_parseEndByteIndex - (parser->m_parseEndPtr - parser->m_eventPtr)); diff --git a/icecat/parser/expat/07_always_store_rawnames.patch b/icecat/parser/expat/06_always_store_rawnames.patch similarity index 60% rename from icecat/parser/expat/07_always_store_rawnames.patch rename to icecat/parser/expat/06_always_store_rawnames.patch index 3b71b368ec..adfc7ab5de 100644 --- a/icecat/parser/expat/07_always_store_rawnames.patch +++ b/icecat/parser/expat/06_always_store_rawnames.patch @@ -1,10 +1,10 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -491,6 +491,13 @@ static enum XML_Error doProlog(XML_Parse +@@ -511,6 +511,13 @@ static enum XML_Error doProlog(XML_Parser parser, const ENCODING *enc, enum XML_Account account); - static enum XML_Error processInternalEntity(XML_Parser parser, ENTITY *entity, - XML_Bool betweenDecl); + static enum XML_Error processEntity(XML_Parser parser, ENTITY *entity, + XML_Bool betweenDecl, enum EntityType type); +/* BEGIN MOZILLA CHANGE (Bug 1746996 - Ensure that storeRawNames is always called) */ +static enum XML_Error doContentInternal(XML_Parser parser, int startTagLevel, + const ENCODING *enc, const char *start, @@ -15,10 +15,10 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c static enum XML_Error doContent(XML_Parser parser, int startTagLevel, const ENCODING *enc, const char *start, const char *end, const char **endPtr, -@@ -2756,10 +2763,14 @@ contentProcessor(XML_Parser parser, cons - enum XML_Error result = doContent( - parser, 0, parser->m_encoding, start, end, endPtr, - (XML_Bool)! parser->m_parsingStatus.finalBuffer, XML_ACCOUNT_DIRECT); +@@ -3210,10 +3217,14 @@ contentProcessor(XML_Parser parser, const char *start, const char *end, + parser, parser->m_parentParser ? 1 : 0, parser->m_encoding, start, end, + endPtr, (XML_Bool)! parser->m_parsingStatus.finalBuffer, + XML_ACCOUNT_DIRECT); +/* BEGIN MOZILLA CHANGE (Bug 1746996 - Ensure that storeRawNames is always called) */ +#if 0 if (result == XML_ERROR_NONE) { @@ -30,38 +30,36 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c return result; } -@@ -2872,6 +2883,24 @@ externalEntityContentProcessor(XML_Parse +@@ -3331,10 +3342,14 @@ externalEntityContentProcessor(XML_Parser parser, const char *start, = doContent(parser, 1, parser->m_encoding, start, end, endPtr, (XML_Bool)! parser->m_parsingStatus.finalBuffer, XML_ACCOUNT_ENTITY_EXPANSION); +/* BEGIN MOZILLA CHANGE (Bug 1746996 - Ensure that storeRawNames is always called) */ +#if 0 + if (result == XML_ERROR_NONE) { + if (! storeRawNames(parser)) + return XML_ERROR_NO_MEMORY; + } ++#endif ++/* END MOZILLA CHANGE */ + return result; + } + +@@ -3342,6 +3357,21 @@ static enum XML_Error + doContent(XML_Parser parser, int startTagLevel, const ENCODING *enc, + const char *s, const char *end, const char **nextPtr, + XML_Bool haveMore, enum XML_Account account) { ++/* BEGIN MOZILLA CHANGE (Bug 1746996 - Ensure that storeRawNames is always called) */ ++ enum XML_Error result = doContentInternal(parser, startTagLevel, enc, s, end, ++ nextPtr, haveMore, account); + if (result == XML_ERROR_NONE) { + if (! storeRawNames(parser)) + return XML_ERROR_NO_MEMORY; + } -+#endif -+/* END MOZILLA CHANGE */ + return result; +} + +static enum XML_Error -+doContent(XML_Parser parser, int startTagLevel, const ENCODING *enc, -+ const char *s, const char *end, const char **nextPtr, -+ XML_Bool haveMore, enum XML_Account account) { -+/* BEGIN MOZILLA CHANGE (Bug 1746996 - Ensure that storeRawNames is always called) */ -+ enum XML_Error result = doContentInternal(parser, startTagLevel, enc, s, end, -+ nextPtr, haveMore, account); - if (result == XML_ERROR_NONE) { - if (! storeRawNames(parser)) - return XML_ERROR_NO_MEMORY; -@@ -2880,9 +2909,10 @@ externalEntityContentProcessor(XML_Parse - } - - static enum XML_Error --doContent(XML_Parser parser, int startTagLevel, const ENCODING *enc, -- const char *s, const char *end, const char **nextPtr, -- XML_Bool haveMore, enum XML_Account account) { +doContentInternal(XML_Parser parser, int startTagLevel, const ENCODING *enc, + const char *s, const char *end, const char **nextPtr, + XML_Bool haveMore, enum XML_Account account) { @@ -69,18 +67,3 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c /* save one level of indirection */ DTD *const dtd = parser->m_dtd; -@@ -6038,10 +6068,14 @@ internalEntityProcessor(XML_Parser parse - parser->m_encoding, s, end, nextPtr, - (XML_Bool)! parser->m_parsingStatus.finalBuffer, - XML_ACCOUNT_DIRECT); -+/* BEGIN MOZILLA CHANGE (Bug 1746996 - Ensure that storeRawNames is always called) */ -+#if 0 - if (result == XML_ERROR_NONE) { - if (! storeRawNames(parser)) - return XML_ERROR_NO_MEMORY; - } -+#endif -+/* END MOZILLA CHANGE */ - return result; - } - } diff --git a/icecat/parser/expat/06_report_processing_entity.patch b/icecat/parser/expat/06_report_processing_entity.patch deleted file mode 100644 index 41bc684b57..0000000000 --- a/icecat/parser/expat/06_report_processing_entity.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c ---- a/expat/lib/xmlparse.c -+++ b/expat/lib/xmlparse.c -@@ -2680,6 +2680,13 @@ MOZ_XML_GetMismatchedTag(XML_Parser pars - } - /* END MOZILLA CHANGE */ - -+/* BEGIN MOZILLA CHANGE (Report whether the parser is currently expanding an entity) */ -+XML_Bool XMLCALL -+MOZ_XML_ProcessingEntityValue(XML_Parser parser) { -+ return parser->m_openInternalEntities != NULL; -+} -+/* END MOZILLA CHANGE */ -+ - XML_Bool XMLCALL - XML_SetReparseDeferralEnabled(XML_Parser parser, XML_Bool enabled) { - if (parser != NULL && (enabled == XML_TRUE || enabled == XML_FALSE)) { diff --git a/icecat/parser/expat/08_dont_ignore_undeclared_entity.patch b/icecat/parser/expat/07_dont_ignore_undeclared_entity.patch similarity index 84% rename from icecat/parser/expat/08_dont_ignore_undeclared_entity.patch rename to icecat/parser/expat/07_dont_ignore_undeclared_entity.patch index 8d07e2ae03..5c069c5be7 100644 --- a/icecat/parser/expat/08_dont_ignore_undeclared_entity.patch +++ b/icecat/parser/expat/07_dont_ignore_undeclared_entity.patch @@ -1,7 +1,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -3028,9 +3028,15 @@ doContentInternal(XML_Parser parser, int +@@ -3487,9 +3487,15 @@ doContentInternal(XML_Parser parser, int startTagLevel, const ENCODING *enc, } else if (! entity) { if (parser->m_skippedEntityHandler) parser->m_skippedEntityHandler(parser->m_handlerArg, name, 0); @@ -17,7 +17,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c } if (entity->open) return XML_ERROR_RECURSIVE_ENTITY_REF; -@@ -6229,7 +6235,13 @@ appendAttributeValue(XML_Parser parser, +@@ -6785,7 +6791,13 @@ appendAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, if ((pool == &parser->m_tempPool) && parser->m_defaultHandler) reportDefault(parser, enc, ptr, next); */ diff --git a/icecat/parser/expat/09_include_xmlns.patch b/icecat/parser/expat/08_include_xmlns.patch similarity index 87% rename from icecat/parser/expat/09_include_xmlns.patch rename to icecat/parser/expat/08_include_xmlns.patch index fa5a1e2329..d4dbb23411 100644 --- a/icecat/parser/expat/09_include_xmlns.patch +++ b/icecat/parser/expat/08_include_xmlns.patch @@ -1,7 +1,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -3458,6 +3458,9 @@ storeAtts(XML_Parser parser, const ENCOD +@@ -3929,6 +3929,9 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, int n; XML_Char *uri; int nPrefixes = 0; @@ -11,7 +11,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c BINDING *binding; const XML_Char *localPart; -@@ -3615,7 +3618,15 @@ storeAtts(XML_Parser parser, const ENCOD +@@ -4086,7 +4089,15 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, appAtts[attIndex], bindingsPtr); if (result) return result; @@ -27,7 +27,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c } else { /* deal with other prefixed names later */ attIndex++; -@@ -3647,6 +3658,12 @@ storeAtts(XML_Parser parser, const ENCOD +@@ -4118,6 +4129,12 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, da->value, bindingsPtr); if (result) return result; @@ -40,7 +40,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c } else { (da->id->name)[-1] = 2; nPrefixes++; -@@ -3665,7 +3682,13 @@ storeAtts(XML_Parser parser, const ENCOD +@@ -4136,7 +4153,13 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, /* expand prefixed attribute names, check for duplicates, and clear flags that say whether attributes were specified */ i = 0; @@ -51,10 +51,10 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c + if (nPrefixes || nXMLNSDeclarations) { +#endif +/* END MOZILLA CHANGE */ - int j; /* hash table index */ + unsigned int j; /* hash table index */ unsigned long version = parser->m_nsAttsVersion; -@@ -3675,6 +3698,9 @@ storeAtts(XML_Parser parser, const ENCOD +@@ -4146,6 +4169,9 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, } unsigned int nsAttsSize = 1u << parser->m_nsAttsPower; @@ -64,7 +64,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c unsigned char oldNsAttsPower = parser->m_nsAttsPower; /* size of hash table must be at least 2 * (# of prefixed attributes) */ if ((nPrefixes << 1) -@@ -3724,6 +3750,9 @@ storeAtts(XML_Parser parser, const ENCOD +@@ -4194,6 +4220,9 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, parser->m_nsAtts[--j].version = version; } parser->m_nsAttsVersion = --version; @@ -74,7 +74,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c /* expand prefixed names and check for duplicates */ for (; i < attIndex; i += 2) { -@@ -3823,10 +3852,63 @@ storeAtts(XML_Parser parser, const ENCOD +@@ -4293,10 +4322,63 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, parser->m_nsAtts[j].hash = uriHash; parser->m_nsAtts[j].uriName = s; diff --git a/icecat/parser/expat/10_internalsubset.patch b/icecat/parser/expat/09_internalsubset.patch similarity index 87% rename from icecat/parser/expat/10_internalsubset.patch rename to icecat/parser/expat/09_internalsubset.patch index 27a9fb8025..3cc3249058 100644 --- a/icecat/parser/expat/10_internalsubset.patch +++ b/icecat/parser/expat/09_internalsubset.patch @@ -1,7 +1,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -5752,7 +5752,13 @@ doProlog(XML_Parser parser, const ENCODI +@@ -6227,7 +6227,13 @@ doProlog(XML_Parser parser, const ENCODING *enc, const char *s, const char *end, entity->open = XML_TRUE; entityTrackingOnOpen(parser, entity, __LINE__); if (! parser->m_externalEntityRefHandler( diff --git a/icecat/parser/expat/12_version_limit.patch b/icecat/parser/expat/10_version_limit.patch similarity index 85% rename from icecat/parser/expat/12_version_limit.patch rename to icecat/parser/expat/10_version_limit.patch index a505f726e5..99f6bfb6e7 100644 --- a/icecat/parser/expat/12_version_limit.patch +++ b/icecat/parser/expat/10_version_limit.patch @@ -1,7 +1,7 @@ diff --git a/expat/lib/xmltok.c b/expat/lib/xmltok.c --- a/expat/lib/xmltok.c +++ b/expat/lib/xmltok.c -@@ -1148,6 +1148,10 @@ static const char KW_yes[] = {ASCII_y, A +@@ -1148,6 +1148,10 @@ static const char KW_yes[] = {ASCII_y, ASCII_e, ASCII_s, '\0'}; static const char KW_no[] = {ASCII_n, ASCII_o, '\0'}; @@ -12,7 +12,7 @@ diff --git a/expat/lib/xmltok.c b/expat/lib/xmltok.c static int doParseXmlDecl(const ENCODING *(*encodingFinder)(const ENCODING *, const char *, const char *), -@@ -1175,6 +1179,13 @@ doParseXmlDecl(const ENCODING *(*encodin +@@ -1175,6 +1179,13 @@ doParseXmlDecl(const ENCODING *(*encodingFinder)(const ENCODING *, const char *, *versionPtr = val; if (versionEndPtr) *versionEndPtr = ptr; diff --git a/icecat/parser/expat/11_nested_entities.patch b/icecat/parser/expat/11_nested_entities.patch deleted file mode 100644 index 290d187f4c..0000000000 --- a/icecat/parser/expat/11_nested_entities.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c ---- a/expat/lib/xmlparse.c -+++ b/expat/lib/xmlparse.c -@@ -6085,7 +6085,29 @@ processInternalEntity(XML_Parser parser, - entityTrackingOnClose(parser, entity, __LINE__); - #endif /* XML_GE == 1 */ - entity->open = XML_FALSE; -+/* BEGIN MOZILLA CHANGE (Bug 569229 - Deal with parser interruption from nested entities) */ -+#if 0 - parser->m_openInternalEntities = openEntity->next; -+#else -+ if (parser->m_openInternalEntities == openEntity) { -+ parser->m_openInternalEntities = openEntity->next; -+ } -+ else { -+ /* openEntity should be closed, but it contains an inner entity that is -+ still open. Remove openEntity from the m_openInternalEntities linked -+ list by looking for the inner entity in the list that links to -+ openEntity and fixing up its 'next' member -+ */ -+ OPEN_INTERNAL_ENTITY *innerOpenEntity = parser->m_openInternalEntities; -+ do { -+ if (innerOpenEntity->next == openEntity) { -+ innerOpenEntity->next = openEntity->next; -+ break; -+ } -+ } while ((innerOpenEntity = innerOpenEntity->next)); -+ } -+#endif -+/* END MOZILLA CHANGE */ - /* put openEntity back in list of free instances */ - openEntity->next = parser->m_freeInternalEntities; - parser->m_freeInternalEntities = openEntity; diff --git a/icecat/parser/expat/13_no_debug_report.patch b/icecat/parser/expat/11_no_debug_report.patch similarity index 51% rename from icecat/parser/expat/13_no_debug_report.patch rename to icecat/parser/expat/11_no_debug_report.patch index 3d1f7d94a5..cd5dbf384d 100644 --- a/icecat/parser/expat/13_no_debug_report.patch +++ b/icecat/parser/expat/11_no_debug_report.patch @@ -1,7 +1,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -444,16 +444,24 @@ typedef unsigned long long XmlBigCount; +@@ -456,24 +456,36 @@ typedef unsigned long long XmlBigCount; typedef struct accounting { XmlBigCount countBytesDirect; XmlBigCount countBytesIndirect; @@ -14,6 +14,18 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c unsigned long long activationThresholdBytes; } ACCOUNTING; + typedef struct MALLOC_TRACKER { + XmlBigCount bytesAllocated; ++/* BEGIN MOZILLA CHANGE (don't report debug information) */ ++# if 0 + XmlBigCount peakBytesAllocated; // updated live only for debug level >=2 + unsigned long debugLevel; ++#endif ++/* END MOZILLA CHANGE */ + float maximumAmplificationFactor; // >=1.0 + XmlBigCount activationThresholdBytes; + } MALLOC_TRACKER; + typedef struct entity_stats { +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +#if 0 @@ -26,7 +38,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c } ENTITY_STATS; #endif /* XML_GE == 1 */ -@@ -611,18 +619,26 @@ static void parserInit(XML_Parser parser +@@ -632,18 +644,26 @@ static void parserInit(XML_Parser parser, const XML_Char *encodingName); static float accountingGetCurrentAmplification(XML_Parser rootParser); static void accountingReportStats(XML_Parser originParser, const char *epilog); static void accountingOnAbort(XML_Parser originParser); @@ -53,9 +65,9 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c static void entityTrackingOnOpen(XML_Parser parser, ENTITY *entity, int sourceLine); static void entityTrackingOnClose(XML_Parser parser, ENTITY *entity, -@@ -632,8 +648,12 @@ static XML_Parser getRootParserOf(XML_Pa +@@ -653,8 +673,12 @@ static void entityTrackingOnClose(XML_Parser parser, ENTITY *entity, + static XML_Parser getRootParserOf(XML_Parser parser, unsigned int *outLevelDiff); - #endif /* XML_GE == 1 */ +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +#if 0 @@ -66,7 +78,123 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c #define poolStart(pool) ((pool)->start) #define poolLength(pool) ((pool)->ptr - (pool)->start) -@@ -1292,15 +1312,23 @@ parserInit(XML_Parser parser, const XML_ +@@ -814,6 +838,8 @@ struct XML_ParserStruct { + #endif + + #if XML_GE == 1 ++/* BEGIN MOZILLA CHANGE (don't report debug information) */ ++#if 0 + static void + expat_heap_stat(XML_Parser rootParser, char operator, XmlBigCount absDiff, + XmlBigCount newTotal, XmlBigCount peakTotal, int sourceLine) { +@@ -827,6 +853,8 @@ expat_heap_stat(XML_Parser rootParser, char operator, XmlBigCount absDiff, + (void *)rootParser, rootParser->m_accounting.countBytesDirect, operator, + absDiff, newTotal, peakTotal, (double)amplification, sourceLine); + } ++#endif ++/* END MOZILLA CHANGE */ + + static bool + expat_heap_increase_tolerable(XML_Parser rootParser, XmlBigCount increase, +@@ -855,9 +883,13 @@ expat_heap_increase_tolerable(XML_Parser rootParser, XmlBigCount increase, + } + } + ++/* BEGIN MOZILLA CHANGE (don't report debug information) */ ++#if 0 + if (! tolerable && (rootParser->m_alloc_tracker.debugLevel >= 1)) { + expat_heap_stat(rootParser, '+', increase, newTotal, newTotal, sourceLine); + } ++#endif ++/* END MOZILLA CHANGE */ + + return tolerable; + } +@@ -901,6 +933,8 @@ expat_malloc(XML_Parser parser, size_t size, int sourceLine) { + // Update accounting + rootParser->m_alloc_tracker.bytesAllocated += bytesToAllocate; + ++/* BEGIN MOZILLA CHANGE (don't report debug information) */ ++#if 0 + // Report as needed + if (rootParser->m_alloc_tracker.debugLevel >= 2) { + if (rootParser->m_alloc_tracker.bytesAllocated +@@ -912,6 +946,8 @@ expat_malloc(XML_Parser parser, size_t size, int sourceLine) { + rootParser->m_alloc_tracker.bytesAllocated, + rootParser->m_alloc_tracker.peakBytesAllocated, sourceLine); + } ++#endif ++/* END MOZILLA CHANGE */ + + return (char *)mallocedPtr + sizeof(size_t) + EXPAT_MALLOC_PADDING; + } +@@ -941,12 +977,16 @@ expat_free(XML_Parser parser, void *ptr, int sourceLine) { + assert(rootParser->m_alloc_tracker.bytesAllocated >= bytesAllocated); + rootParser->m_alloc_tracker.bytesAllocated -= bytesAllocated; + ++/* BEGIN MOZILLA CHANGE (don't report debug information) */ ++#if 0 + // Report as needed + if (rootParser->m_alloc_tracker.debugLevel >= 2) { + expat_heap_stat(rootParser, '-', bytesAllocated, + rootParser->m_alloc_tracker.bytesAllocated, + rootParser->m_alloc_tracker.peakBytesAllocated, sourceLine); + } ++#endif ++/* END MOZILLA CHANGE */ + + // NOTE: This may be freeing rootParser, so freeing has to come last + parser->m_mem.free_fcn(mallocedPtr); +@@ -1011,6 +1051,8 @@ expat_realloc(XML_Parser parser, void *ptr, size_t size, int sourceLine) { + rootParser->m_alloc_tracker.bytesAllocated -= absDiff; + } + ++/* BEGIN MOZILLA CHANGE (don't report debug information) */ ++#if 0 + // Report as needed + if (rootParser->m_alloc_tracker.debugLevel >= 2) { + if (rootParser->m_alloc_tracker.bytesAllocated +@@ -1022,6 +1064,8 @@ expat_realloc(XML_Parser parser, void *ptr, size_t size, int sourceLine) { + rootParser->m_alloc_tracker.bytesAllocated, + rootParser->m_alloc_tracker.peakBytesAllocated, sourceLine); + } ++#endif ++/* END MOZILLA CHANGE */ + + // Update in-block recorded size + *(size_t *)mallocedPtr = size; +@@ -1431,8 +1475,12 @@ parserCreate(const XML_Char *encodingName, + // Initialize .m_alloc_tracker + memset(&parser->m_alloc_tracker, 0, sizeof(MALLOC_TRACKER)); + if (parentParser == NULL) { ++/* BEGIN MOZILLA CHANGE (don't report debug information) */ ++#if 0 + parser->m_alloc_tracker.debugLevel + = getDebugLevel("EXPAT_MALLOC_DEBUG", 0u); ++#endif ++/* END MOZILLA CHANGE */ + parser->m_alloc_tracker.maximumAmplificationFactor + = EXPAT_ALLOC_TRACKER_MAXIMUM_AMPLIFICATION_DEFAULT; + parser->m_alloc_tracker.activationThresholdBytes +@@ -1452,6 +1500,8 @@ parserCreate(const XML_Char *encodingName, + assert(SIZE_MAX - rootParser->m_alloc_tracker.bytesAllocated >= increase); + rootParser->m_alloc_tracker.bytesAllocated += increase; + ++/* BEGIN MOZILLA CHANGE (don't report debug information) */ ++#if 0 + // Report on allocation + if (rootParser->m_alloc_tracker.debugLevel >= 2) { + if (rootParser->m_alloc_tracker.bytesAllocated +@@ -1464,6 +1514,8 @@ parserCreate(const XML_Char *encodingName, + rootParser->m_alloc_tracker.bytesAllocated, + rootParser->m_alloc_tracker.peakBytesAllocated, __LINE__); + } ++#endif ++/* END MOZILLA CHANGE */ + #else + parser->m_parentParser = NULL; + #endif // XML_GE == 1 +@@ -1644,15 +1696,23 @@ parserInit(XML_Parser parser, const XML_Char *encodingName) { #if XML_GE == 1 memset(&parser->m_accounting, 0, sizeof(ACCOUNTING)); @@ -90,7 +218,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c } /* moves list of bindings to m_freeBindingList */ -@@ -8069,6 +8097,8 @@ accountingGetCurrentAmplification(XML_Pa +@@ -8667,6 +8727,8 @@ accountingGetCurrentAmplification(XML_Parser rootParser) { static void accountingReportStats(XML_Parser originParser, const char *epilog) { @@ -99,7 +227,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c const XML_Parser rootParser = getRootParserOf(originParser, NULL); assert(! rootParser->m_parentParser); -@@ -8084,6 +8114,8 @@ accountingReportStats(XML_Parser originP +@@ -8682,6 +8744,8 @@ accountingReportStats(XML_Parser originParser, const char *epilog) { (void *)rootParser, rootParser->m_accounting.countBytesDirect, rootParser->m_accounting.countBytesIndirect, (double)amplificationFactor, epilog); @@ -108,7 +236,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c } static void -@@ -8091,6 +8123,8 @@ accountingOnAbort(XML_Parser originParse +@@ -8689,6 +8753,8 @@ accountingOnAbort(XML_Parser originParser) { accountingReportStats(originParser, " ABORTING\n"); } @@ -117,7 +245,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c static void accountingReportDiff(XML_Parser rootParser, unsigned int levelsAwayFromRootParser, const char *before, -@@ -8127,6 +8161,8 @@ accountingReportDiff(XML_Parser rootPars +@@ -8725,6 +8791,8 @@ accountingReportDiff(XML_Parser rootParser, } fprintf(stderr, "\"\n"); } @@ -126,7 +254,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c static XML_Bool accountingDiffTolerated(XML_Parser originParser, int tok, const char *before, -@@ -8174,11 +8210,15 @@ accountingDiffTolerated(XML_Parser origi +@@ -8772,11 +8840,15 @@ accountingDiffTolerated(XML_Parser originParser, int tok, const char *before, || (amplificationFactor <= rootParser->m_accounting.maximumAmplificationFactor); @@ -142,7 +270,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c return tolerated; } -@@ -8197,6 +8237,8 @@ testingAccountingGetCountBytesIndirect(X +@@ -8795,6 +8867,8 @@ testingAccountingGetCountBytesIndirect(XML_Parser parser) { return parser->m_accounting.countBytesIndirect; } @@ -151,7 +279,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c static void entityTrackingReportStats(XML_Parser rootParser, ENTITY *entity, const char *action, int sourceLine) { -@@ -8220,9 +8262,13 @@ entityTrackingReportStats(XML_Parser roo +@@ -8818,9 +8892,13 @@ entityTrackingReportStats(XML_Parser rootParser, ENTITY *entity, entity->is_param ? "%" : "&", entityName, action, entity->textLen, sourceLine); } @@ -165,7 +293,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c const XML_Parser rootParser = getRootParserOf(originParser, NULL); assert(! rootParser->m_parentParser); -@@ -8234,15 +8280,21 @@ entityTrackingOnOpen(XML_Parser originPa +@@ -8832,15 +8910,21 @@ entityTrackingOnOpen(XML_Parser originParser, ENTITY *entity, int sourceLine) { } entityTrackingReportStats(rootParser, entity, "OPEN ", sourceLine); @@ -186,19 +314,19 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c +/* END MOZILLA CHANGE */ } - static XML_Parser -@@ -8260,6 +8312,8 @@ getRootParserOf(XML_Parser parser, unsig - return rootParser; - } + #endif /* XML_GE == 1 */ +@@ -8862,6 +8946,8 @@ getRootParserOf(XML_Parser parser, unsigned int *outLevelDiff) { + + #if XML_GE == 1 +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +#if 0 const char * unsignedCharToPrintable(unsigned char c) { switch (c) { -@@ -8781,9 +8835,13 @@ unsignedCharToPrintable(unsigned char c) - } +@@ -9385,9 +9471,13 @@ unsignedCharToPrintable(unsigned char c) { assert(0); /* never gets here */ + // LCOV_EXCL_STOP } +#endif +/* END MOZILLA CHANGE */ @@ -210,7 +338,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c static unsigned long getDebugLevel(const char *variableName, unsigned long defaultDebugLevel) { const char *const valueOrNull = getenv(variableName); -@@ -8802,3 +8860,5 @@ getDebugLevel(const char *variableName, +@@ -9406,3 +9496,5 @@ getDebugLevel(const char *variableName, unsigned long defaultDebugLevel) { return debugLevel; } diff --git a/icecat/parser/expat/14_unused.patch b/icecat/parser/expat/12_unused.patch similarity index 62% rename from icecat/parser/expat/14_unused.patch rename to icecat/parser/expat/12_unused.patch index 57a5f02351..f9ade9df8d 100644 --- a/icecat/parser/expat/14_unused.patch +++ b/icecat/parser/expat/12_unused.patch @@ -1,23 +1,23 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c -@@ -564,8 +564,12 @@ static XML_Bool setContext(XML_Parser pa +@@ -592,8 +592,12 @@ static XML_Bool setContext(XML_Parser parser, const XML_Char *context); static void FASTCALL normalizePublicId(XML_Char *s); - static DTD *dtdCreate(const XML_Memory_Handling_Suite *ms); + static DTD *dtdCreate(XML_Parser parser); +/* BEGIN MOZILLA CHANGE (unused API) */ +#if 0 /* do not call if m_parentParser != NULL */ - static void dtdReset(DTD *p, const XML_Memory_Handling_Suite *ms); + static void dtdReset(DTD *p, XML_Parser parser); +#endif +/* END MOZILLA CHANGE */ - static void dtdDestroy(DTD *p, XML_Bool isDocEntity, - const XML_Memory_Handling_Suite *ms); + static void dtdDestroy(DTD *p, XML_Bool isDocEntity, XML_Parser parser); static int dtdCopy(XML_Parser oldParser, DTD *newDtd, const DTD *oldDtd, -@@ -576,7 +580,11 @@ static NAMED *lookup(XML_Parser parser, + XML_Parser parser); +@@ -602,7 +606,11 @@ static int copyEntityTable(XML_Parser oldParser, HASH_TABLE *newTable, + static NAMED *lookup(XML_Parser parser, HASH_TABLE *table, KEY name, size_t createSize); - static void FASTCALL hashTableInit(HASH_TABLE *table, - const XML_Memory_Handling_Suite *ms); + static void FASTCALL hashTableInit(HASH_TABLE *table, XML_Parser parser); +/* BEGIN MOZILLA CHANGE (unused API) */ +#if 0 static void FASTCALL hashTableClear(HASH_TABLE *table); @@ -26,16 +26,16 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c static void FASTCALL hashTableDestroy(HASH_TABLE *table); static void FASTCALL hashTableIterInit(HASH_TABLE_ITER *iter, const HASH_TABLE *table); -@@ -800,6 +808,8 @@ struct XML_ParserStruct { - #define REALLOC(parser, p, s) (parser->m_mem.realloc_fcn((p), (s))) - #define FREE(parser, p) (parser->m_mem.free_fcn((p))) +@@ -1074,6 +1082,8 @@ expat_realloc(XML_Parser parser, void *ptr, size_t size, int sourceLine) { + } + #endif // XML_GE == 1 +/* BEGIN MOZILLA CHANGE (unused API) */ +#if 0 XML_Parser XMLCALL XML_ParserCreate(const XML_Char *encodingName) { return XML_ParserCreate_MM(encodingName, NULL, NULL); -@@ -810,6 +820,8 @@ XML_ParserCreateNS(const XML_Char *encod +@@ -1084,6 +1094,8 @@ XML_ParserCreateNS(const XML_Char *encodingName, XML_Char nsSep) { XML_Char tmp[2] = {nsSep, 0}; return XML_ParserCreate_MM(encodingName, NULL, tmp); } @@ -44,7 +44,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c // "xml=http://www.w3.org/XML/1998/namespace" static const XML_Char implicitContext[] -@@ -1331,6 +1343,8 @@ parserInit(XML_Parser parser, const XML_ +@@ -1715,6 +1727,8 @@ parserInit(XML_Parser parser, const XML_Char *encodingName) { #endif } @@ -53,7 +53,25 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c /* moves list of bindings to m_freeBindingList */ static void FASTCALL moveToFreeBindingList(XML_Parser parser, BINDING *bindings) { -@@ -1409,6 +1423,8 @@ XML_SetEncoding(XML_Parser parser, const +@@ -1784,6 +1798,8 @@ XML_ParserReset(XML_Parser parser, const XML_Char *encodingName) { + dtdReset(parser->m_dtd, parser); + return XML_TRUE; + } ++#endif ++/* END MOZILLA CHANGE */ + + static XML_Bool + parserBusy(XML_Parser parser) { +@@ -1798,6 +1814,8 @@ parserBusy(XML_Parser parser) { + } + } + ++/* BEGIN MOZILLA CHANGE (unused API) */ ++#if 0 + enum XML_Status XMLCALL + XML_SetEncoding(XML_Parser parser, const XML_Char *encodingName) { + if (parser == NULL) +@@ -1823,6 +1841,8 @@ XML_SetEncoding(XML_Parser parser, const XML_Char *encodingName) { } return XML_STATUS_OK; } @@ -62,7 +80,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c XML_Parser XMLCALL XML_ExternalEntityParserCreate(XML_Parser oldParser, const XML_Char *context, -@@ -1665,6 +1681,8 @@ XML_UseParserAsHandlerArg(XML_Parser par +@@ -2109,6 +2129,8 @@ XML_UseParserAsHandlerArg(XML_Parser parser) { parser->m_handlerArg = parser; } @@ -71,7 +89,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c enum XML_Error XMLCALL XML_UseForeignDTD(XML_Parser parser, XML_Bool useDTD) { if (parser == NULL) -@@ -1681,6 +1699,8 @@ XML_UseForeignDTD(XML_Parser parser, XML +@@ -2124,6 +2146,8 @@ XML_UseForeignDTD(XML_Parser parser, XML_Bool useDTD) { return XML_ERROR_FEATURE_REQUIRES_XML_DTD; #endif } @@ -80,7 +98,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetReturnNSTriplet(XML_Parser parser, int do_nst) { -@@ -1756,6 +1776,8 @@ XML_SetElementHandler(XML_Parser parser, +@@ -2198,6 +2222,8 @@ XML_SetElementHandler(XML_Parser parser, XML_StartElementHandler start, parser->m_endElementHandler = end; } @@ -89,7 +107,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetStartElementHandler(XML_Parser parser, XML_StartElementHandler start) { if (parser != NULL) -@@ -1767,6 +1789,8 @@ XML_SetEndElementHandler(XML_Parser pars +@@ -2209,6 +2235,8 @@ XML_SetEndElementHandler(XML_Parser parser, XML_EndElementHandler end) { if (parser != NULL) parser->m_endElementHandler = end; } @@ -98,7 +116,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetCharacterDataHandler(XML_Parser parser, -@@ -1798,6 +1822,8 @@ XML_SetCdataSectionHandler(XML_Parser pa +@@ -2240,6 +2268,8 @@ XML_SetCdataSectionHandler(XML_Parser parser, parser->m_endCdataSectionHandler = end; } @@ -107,7 +125,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetStartCdataSectionHandler(XML_Parser parser, XML_StartCdataSectionHandler start) { -@@ -1819,6 +1845,8 @@ XML_SetDefaultHandler(XML_Parser parser, +@@ -2261,6 +2291,8 @@ XML_SetDefaultHandler(XML_Parser parser, XML_DefaultHandler handler) { parser->m_defaultHandler = handler; parser->m_defaultExpandInternalEntities = XML_FALSE; } @@ -116,7 +134,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetDefaultHandlerExpand(XML_Parser parser, XML_DefaultHandler handler) { -@@ -1837,6 +1865,8 @@ XML_SetDoctypeDeclHandler(XML_Parser par +@@ -2279,6 +2311,8 @@ XML_SetDoctypeDeclHandler(XML_Parser parser, XML_StartDoctypeDeclHandler start, parser->m_endDoctypeDeclHandler = end; } @@ -125,7 +143,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetStartDoctypeDeclHandler(XML_Parser parser, XML_StartDoctypeDeclHandler start) { -@@ -1849,6 +1879,8 @@ XML_SetEndDoctypeDeclHandler(XML_Parser +@@ -2291,6 +2325,8 @@ XML_SetEndDoctypeDeclHandler(XML_Parser parser, XML_EndDoctypeDeclHandler end) { if (parser != NULL) parser->m_endDoctypeDeclHandler = end; } @@ -134,7 +152,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetUnparsedEntityDeclHandler(XML_Parser parser, -@@ -1873,6 +1905,8 @@ XML_SetNamespaceDeclHandler(XML_Parser p +@@ -2315,6 +2351,8 @@ XML_SetNamespaceDeclHandler(XML_Parser parser, parser->m_endNamespaceDeclHandler = end; } @@ -143,7 +161,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetStartNamespaceDeclHandler(XML_Parser parser, XML_StartNamespaceDeclHandler start) { -@@ -1893,6 +1927,8 @@ XML_SetNotStandaloneHandler(XML_Parser p +@@ -2335,6 +2373,8 @@ XML_SetNotStandaloneHandler(XML_Parser parser, if (parser != NULL) parser->m_notStandaloneHandler = handler; } @@ -152,7 +170,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetExternalEntityRefHandler(XML_Parser parser, -@@ -1911,6 +1947,8 @@ XML_SetExternalEntityRefHandlerArg(XML_P +@@ -2353,6 +2393,8 @@ XML_SetExternalEntityRefHandlerArg(XML_Parser parser, void *arg) { parser->m_externalEntityRefHandlerArg = parser; } @@ -161,7 +179,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetSkippedEntityHandler(XML_Parser parser, XML_SkippedEntityHandler handler) { -@@ -1944,6 +1982,8 @@ XML_SetEntityDeclHandler(XML_Parser pars +@@ -2386,6 +2428,8 @@ XML_SetEntityDeclHandler(XML_Parser parser, XML_EntityDeclHandler handler) { if (parser != NULL) parser->m_entityDeclHandler = handler; } @@ -170,7 +188,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c void XMLCALL XML_SetXmlDeclHandler(XML_Parser parser, XML_XmlDeclHandler handler) { -@@ -2401,6 +2441,8 @@ XML_GetCurrentByteIndex(XML_Parser parse +@@ -2856,6 +2900,8 @@ XML_GetCurrentByteIndex(XML_Parser parser) { /* END MOZILLA CHANGE */ } @@ -179,7 +197,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c int XMLCALL XML_GetCurrentByteCount(XML_Parser parser) { if (parser == NULL) -@@ -2429,6 +2471,8 @@ XML_GetInputContext(XML_Parser parser, i +@@ -2884,6 +2930,8 @@ XML_GetInputContext(XML_Parser parser, int *offset, int *size) { #endif /* XML_CONTEXT_BYTES > 0 */ return (const char *)0; } @@ -188,7 +206,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c XML_Size XMLCALL XML_GetCurrentLineNumber(XML_Parser parser) { -@@ -2454,6 +2498,8 @@ XML_GetCurrentColumnNumber(XML_Parser pa +@@ -2909,6 +2957,8 @@ XML_GetCurrentColumnNumber(XML_Parser parser) { return parser->m_position.columnNumber; } @@ -196,8 +214,8 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c +#if 0 void XMLCALL XML_FreeContentModel(XML_Parser parser, XML_Content *model) { - if (parser != NULL) -@@ -2682,6 +2728,8 @@ XML_GetFeatureList(void) { + if (parser == NULL) +@@ -3159,6 +3209,8 @@ XML_GetFeatureList(void) { return features; } @@ -206,16 +224,16 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c #if XML_GE == 1 XML_Bool XMLCALL -@@ -7146,6 +7194,8 @@ dtdCreate(const XML_Memory_Handling_Suit +@@ -7770,6 +7822,8 @@ dtdCreate(XML_Parser parser) { return p; } +/* BEGIN MOZILLA CHANGE (unused API) */ +#if 0 static void - dtdReset(DTD *p, const XML_Memory_Handling_Suite *ms) { + dtdReset(DTD *p, XML_Parser parser) { HASH_TABLE_ITER iter; -@@ -7186,6 +7236,8 @@ dtdReset(DTD *p, const XML_Memory_Handli +@@ -7810,6 +7864,8 @@ dtdReset(DTD *p, XML_Parser parser) { p->hasParamEntityRefs = XML_FALSE; p->standalone = XML_FALSE; } @@ -223,8 +241,8 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c +/* END MOZILLA CHANGE */ static void - dtdDestroy(DTD *p, XML_Bool isDocEntity, const XML_Memory_Handling_Suite *ms) { -@@ -7540,6 +7592,8 @@ lookup(XML_Parser parser, HASH_TABLE *ta + dtdDestroy(DTD *p, XML_Bool isDocEntity, XML_Parser parser) { +@@ -8164,6 +8220,8 @@ lookup(XML_Parser parser, HASH_TABLE *table, KEY name, size_t createSize) { return table->v[i]; } @@ -233,7 +251,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c static void FASTCALL hashTableClear(HASH_TABLE *table) { size_t i; -@@ -7549,6 +7603,8 @@ hashTableClear(HASH_TABLE *table) { +@@ -8173,6 +8231,8 @@ hashTableClear(HASH_TABLE *table) { } table->used = 0; } @@ -242,7 +260,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c static void FASTCALL hashTableDestroy(HASH_TABLE *table) { -@@ -8223,6 +8279,8 @@ accountingDiffTolerated(XML_Parser origi +@@ -8853,6 +8913,8 @@ accountingDiffTolerated(XML_Parser originParser, int tok, const char *before, return tolerated; } @@ -251,7 +269,7 @@ diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c unsigned long long testingAccountingGetCountBytesDirect(XML_Parser parser) { if (! parser) -@@ -8236,6 +8294,8 @@ testingAccountingGetCountBytesIndirect(X +@@ -8866,6 +8928,8 @@ testingAccountingGetCountBytesIndirect(XML_Parser parser) { return 0; return parser->m_accounting.countBytesIndirect; } diff --git a/icecat/parser/expat/COPYING b/icecat/parser/expat/COPYING index ce9e593929..c6d184a8aa 100644 --- a/icecat/parser/expat/COPYING +++ b/icecat/parser/expat/COPYING @@ -1,5 +1,5 @@ Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper -Copyright (c) 2001-2022 Expat maintainers +Copyright (c) 2001-2025 Expat maintainers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the diff --git a/icecat/parser/expat/README_MOZILLA b/icecat/parser/expat/README_MOZILLA index 724ca660ee..466a0cbc95 100644 --- a/icecat/parser/expat/README_MOZILLA +++ b/icecat/parser/expat/README_MOZILLA @@ -4,6 +4,6 @@ See moz.yaml for the current in-tree version. To update run $ ./mach vendor parser/expat/moz.yaml --patch-mode=none -$ hg commit -m "Bug X - Update to Expat x.x.x." +$ git commit -a -m "Bug X - Update to Expat x.x.x." $ ./mach vendor parser/expat/moz.yaml --patch-mode=only -$ hg commit -m "Bug X - Apply local patches to Expat x.x.x." +$ git commit -a -m "Bug X - Apply local patches to Expat x.x.x." diff --git a/icecat/parser/expat/expat/lib/expat.h b/icecat/parser/expat/expat/lib/expat.h index 523b37d8d5..6c7c418692 100644 --- a/icecat/parser/expat/expat/lib/expat.h +++ b/icecat/parser/expat/expat/lib/expat.h @@ -11,7 +11,7 @@ Copyright (c) 2000-2005 Fred L. Drake, Jr. Copyright (c) 2001-2002 Greg Stein Copyright (c) 2002-2016 Karl Waclawek - Copyright (c) 2016-2024 Sebastian Pipping + Copyright (c) 2016-2026 Sebastian Pipping Copyright (c) 2016 Cristian Rodríguez Copyright (c) 2016 Thomas Beutlich Copyright (c) 2017 Rhodri James @@ -19,6 +19,7 @@ Copyright (c) 2023 Hanno Böck Copyright (c) 2023 Sony Corporation / Snild Dolkow Copyright (c) 2024 Taichi Haradaguchi <20001722@ymail.ne.jp> + Copyright (c) 2025 Matthew Fernandez Licensed under the MIT license: Permission is hereby granted, free of charge, to any person obtaining @@ -42,21 +43,21 @@ */ #ifndef Expat_INCLUDED -#define Expat_INCLUDED 1 +# define Expat_INCLUDED 1 -#include -#include "expat_external.h" +# include +# include "expat_external.h" -#ifdef __cplusplus +# ifdef __cplusplus extern "C" { -#endif +# endif struct XML_ParserStruct; typedef struct XML_ParserStruct *XML_Parser; typedef unsigned char XML_Bool; -#define XML_TRUE ((XML_Bool)1) -#define XML_FALSE ((XML_Bool)0) +# define XML_TRUE ((XML_Bool)1) +# define XML_FALSE ((XML_Bool)0) /* The XML_Status enum gives the possible return values for several API functions. The preprocessor #defines are included so this @@ -73,11 +74,11 @@ typedef unsigned char XML_Bool; */ enum XML_Status { XML_STATUS_ERROR = 0, -#define XML_STATUS_ERROR XML_STATUS_ERROR +# define XML_STATUS_ERROR XML_STATUS_ERROR XML_STATUS_OK = 1, -#define XML_STATUS_OK XML_STATUS_OK +# define XML_STATUS_OK XML_STATUS_OK XML_STATUS_SUSPENDED = 2 -#define XML_STATUS_SUSPENDED XML_STATUS_SUSPENDED +# define XML_STATUS_SUSPENDED XML_STATUS_SUSPENDED }; enum XML_Error { @@ -276,7 +277,7 @@ XML_ParserCreate_MM(const XML_Char *encoding, /* Prepare a parser object to be reused. This is particularly valuable when memory allocation overhead is disproportionately high, - such as when a large number of small documnents need to be parsed. + such as when a large number of small documents need to be parsed. All handlers are cleared from the parser, except for the unknownEncodingHandler. The parser's external state is re-initialized except for the values of ns and ns_triplets. @@ -680,7 +681,7 @@ XMLPARSEAPI(void) XML_SetUserData(XML_Parser parser, void *userData); /* Returns the last value set by XML_SetUserData or NULL. */ -#define XML_GetUserData(parser) (*(void **)(parser)) +# define XML_GetUserData(parser) (*(void **)(parser)) /* This is equivalent to supplying an encoding argument to XML_ParserCreate. On success XML_SetEncoding returns non-zero, @@ -752,7 +753,7 @@ XML_GetSpecifiedAttributeCount(XML_Parser parser); XMLPARSEAPI(int) XML_GetIdAttributeIndex(XML_Parser parser); -#ifdef XML_ATTR_INFO +# ifdef XML_ATTR_INFO /* Source file byte offsets for the start and end of attribute names and values. The value indices are exclusive of surrounding quotes; thus in a UTF-8 source file an attribute value of "blah" will yield: @@ -773,7 +774,7 @@ typedef struct { */ XMLPARSEAPI(const XML_AttrInfo *) XML_GetAttributeInfo(XML_Parser parser); -#endif +# endif /* Parses some input. Returns XML_STATUS_ERROR if a fatal error is detected. The last call to XML_Parse must have isFinal true; len @@ -970,9 +971,9 @@ XMLPARSEAPI(const char *) XML_GetInputContext(XML_Parser parser, int *offset, int *size); /* For backwards compatibility with previous versions. */ -#define XML_GetErrorLineNumber XML_GetCurrentLineNumber -#define XML_GetErrorColumnNumber XML_GetCurrentColumnNumber -#define XML_GetErrorByteIndex XML_GetCurrentByteIndex +# define XML_GetErrorLineNumber XML_GetCurrentLineNumber +# define XML_GetErrorColumnNumber XML_GetCurrentColumnNumber +# define XML_GetErrorByteIndex XML_GetCurrentByteIndex /* Frees the content model passed to the element declaration handler */ XMLPARSEAPI(void) @@ -1032,7 +1033,10 @@ enum XML_FeatureEnum { XML_FEATURE_BILLION_LAUGHS_ATTACK_PROTECTION_MAXIMUM_AMPLIFICATION_DEFAULT, XML_FEATURE_BILLION_LAUGHS_ATTACK_PROTECTION_ACTIVATION_THRESHOLD_DEFAULT, /* Added in Expat 2.6.0. */ - XML_FEATURE_GE + XML_FEATURE_GE, + /* Added in Expat 2.7.2. */ + XML_FEATURE_ALLOC_TRACKER_MAXIMUM_AMPLIFICATION_DEFAULT, + XML_FEATURE_ALLOC_TRACKER_ACTIVATION_THRESHOLD_DEFAULT, /* Additional features must be added to the end of this enum. */ }; @@ -1045,7 +1049,7 @@ typedef struct { XMLPARSEAPI(const XML_Feature *) XML_GetFeatureList(void); -#if defined(XML_DTD) || (defined(XML_GE) && XML_GE == 1) +# if defined(XML_DTD) || (defined(XML_GE) && XML_GE == 1) /* Added in Expat 2.4.0 for XML_DTD defined and * added in Expat 2.6.0 for XML_GE == 1. */ XMLPARSEAPI(XML_Bool) @@ -1057,7 +1061,17 @@ XML_SetBillionLaughsAttackProtectionMaximumAmplification( XMLPARSEAPI(XML_Bool) XML_SetBillionLaughsAttackProtectionActivationThreshold( XML_Parser parser, unsigned long long activationThresholdBytes); -#endif + +/* Added in Expat 2.7.2. */ +XMLPARSEAPI(XML_Bool) +XML_SetAllocTrackerMaximumAmplification(XML_Parser parser, + float maximumAmplificationFactor); + +/* Added in Expat 2.7.2. */ +XMLPARSEAPI(XML_Bool) +XML_SetAllocTrackerActivationThreshold( + XML_Parser parser, unsigned long long activationThresholdBytes); +# endif /* Added in Expat 2.6.0. */ XMLPARSEAPI(XML_Bool) @@ -1066,12 +1080,12 @@ XML_SetReparseDeferralEnabled(XML_Parser parser, XML_Bool enabled); /* Expat follows the semantic versioning convention. See https://semver.org */ -#define XML_MAJOR_VERSION 2 -#define XML_MINOR_VERSION 6 -#define XML_MICRO_VERSION 4 +# define XML_MAJOR_VERSION 2 +# define XML_MINOR_VERSION 7 +# define XML_MICRO_VERSION 4 -#ifdef __cplusplus +# ifdef __cplusplus } -#endif +# endif #endif /* not Expat_INCLUDED */ diff --git a/icecat/parser/expat/expat/lib/expat_external.h b/icecat/parser/expat/expat/lib/expat_external.h index 449eae7b02..a4f3b66ff9 100644 --- a/icecat/parser/expat/expat/lib/expat_external.h +++ b/icecat/parser/expat/expat/lib/expat_external.h @@ -12,7 +12,7 @@ Copyright (c) 2001-2002 Greg Stein Copyright (c) 2002-2006 Karl Waclawek Copyright (c) 2016 Cristian Rodríguez - Copyright (c) 2016-2019 Sebastian Pipping + Copyright (c) 2016-2025 Sebastian Pipping Copyright (c) 2017 Rhodri James Copyright (c) 2018 Yury Gribov Licensed under the MIT license: @@ -38,7 +38,7 @@ */ #ifndef Expat_External_INCLUDED -#define Expat_External_INCLUDED 1 +# define Expat_External_INCLUDED 1 /* External API definitions */ @@ -64,12 +64,12 @@ compiled with the cdecl calling convention as the default since system headers may assume the cdecl convention. */ -#ifndef XMLCALL -# if defined(_MSC_VER) -# define XMLCALL __cdecl -# elif defined(__GNUC__) && defined(__i386) && ! defined(__INTEL_COMPILER) -# define XMLCALL __attribute__((cdecl)) -# else +# ifndef XMLCALL +# if defined(_MSC_VER) +# define XMLCALL __cdecl +# elif defined(__GNUC__) && defined(__i386) && ! defined(__INTEL_COMPILER) +# define XMLCALL __attribute__((cdecl)) +# else /* For any platform which uses this definition and supports more than one calling convention, we need to extend this definition to declare the convention used on that platform, if it's possible to @@ -80,92 +80,92 @@ pre-processor and how to specify the same calling convention as the platform's malloc() implementation. */ -# define XMLCALL -# endif -#endif /* not defined XMLCALL */ +# define XMLCALL +# endif +# endif /* not defined XMLCALL */ -#if ! defined(XML_STATIC) && ! defined(XMLIMPORT) -# ifndef XML_BUILDING_EXPAT +# if ! defined(XML_STATIC) && ! defined(XMLIMPORT) +# ifndef XML_BUILDING_EXPAT /* using Expat from an application */ -# if defined(_MSC_EXTENSIONS) && ! defined(__BEOS__) && ! defined(__CYGWIN__) -# define XMLIMPORT __declspec(dllimport) +# if defined(_MSC_VER) && ! defined(__BEOS__) && ! defined(__CYGWIN__) +# define XMLIMPORT __declspec(dllimport) +# endif + # endif +# endif /* not defined XML_STATIC */ +# ifndef XML_ENABLE_VISIBILITY +# define XML_ENABLE_VISIBILITY 0 # endif -#endif /* not defined XML_STATIC */ -#ifndef XML_ENABLE_VISIBILITY -# define XML_ENABLE_VISIBILITY 0 -#endif - -#if ! defined(XMLIMPORT) && XML_ENABLE_VISIBILITY -# define XMLIMPORT __attribute__((visibility("default"))) -#endif +# if ! defined(XMLIMPORT) && XML_ENABLE_VISIBILITY +# define XMLIMPORT __attribute__((visibility("default"))) +# endif /* If we didn't define it above, define it away: */ -#ifndef XMLIMPORT -# define XMLIMPORT -#endif +# ifndef XMLIMPORT +# define XMLIMPORT +# endif -#if defined(__GNUC__) \ - && (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)) -# define XML_ATTR_MALLOC __attribute__((__malloc__)) -#else -# define XML_ATTR_MALLOC -#endif +# if defined(__GNUC__) \ + && (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)) +# define XML_ATTR_MALLOC __attribute__((__malloc__)) +# else +# define XML_ATTR_MALLOC +# endif -#if defined(__GNUC__) \ - && ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) -# define XML_ATTR_ALLOC_SIZE(x) __attribute__((__alloc_size__(x))) -#else -# define XML_ATTR_ALLOC_SIZE(x) -#endif +# if defined(__GNUC__) \ + && ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) +# define XML_ATTR_ALLOC_SIZE(x) __attribute__((__alloc_size__(x))) +# else +# define XML_ATTR_ALLOC_SIZE(x) +# endif -#define XMLPARSEAPI(type) XMLIMPORT type XMLCALL +# define XMLPARSEAPI(type) XMLIMPORT type XMLCALL -#ifdef __cplusplus +# ifdef __cplusplus extern "C" { -#endif +# endif -#ifdef XML_UNICODE_WCHAR_T -# ifndef XML_UNICODE -# define XML_UNICODE +# ifdef XML_UNICODE_WCHAR_T +# ifndef XML_UNICODE +# define XML_UNICODE +# endif +# if defined(__SIZEOF_WCHAR_T__) && (__SIZEOF_WCHAR_T__ != 2) +# error "sizeof(wchar_t) != 2; Need -fshort-wchar for both Expat and libc" +# endif # endif -# if defined(__SIZEOF_WCHAR_T__) && (__SIZEOF_WCHAR_T__ != 2) -# error "sizeof(wchar_t) != 2; Need -fshort-wchar for both Expat and libc" -# endif -#endif /* BEGIN MOZILLA CHANGE (typedef XML_Char to char16_t) */ #if 0 -#ifdef XML_UNICODE /* Information is UTF-16 encoded. */ -# ifdef XML_UNICODE_WCHAR_T +# ifdef XML_UNICODE /* Information is UTF-16 encoded. */ +# ifdef XML_UNICODE_WCHAR_T typedef wchar_t XML_Char; typedef wchar_t XML_LChar; -# else +# else typedef unsigned short XML_Char; typedef char XML_LChar; -# endif /* XML_UNICODE_WCHAR_T */ -#else /* Information is UTF-8 encoded. */ +# endif /* XML_UNICODE_WCHAR_T */ +# else /* Information is UTF-8 encoded. */ typedef char XML_Char; typedef char XML_LChar; -#endif /* XML_UNICODE */ +# endif /* XML_UNICODE */ #endif /* END MOZILLA CHANGE */ -#ifdef XML_LARGE_SIZE /* Use large integers for file/stream positions. */ +# ifdef XML_LARGE_SIZE /* Use large integers for file/stream positions. */ typedef long long XML_Index; typedef unsigned long long XML_Size; -#else +# else typedef long XML_Index; typedef unsigned long XML_Size; -#endif /* XML_LARGE_SIZE */ +# endif /* XML_LARGE_SIZE */ -#ifdef __cplusplus +# ifdef __cplusplus } -#endif +# endif #endif /* not Expat_External_INCLUDED */ diff --git a/icecat/parser/expat/expat/lib/internal.h b/icecat/parser/expat/expat/lib/internal.h index 167ec36804..61266ebb77 100644 --- a/icecat/parser/expat/expat/lib/internal.h +++ b/icecat/parser/expat/expat/lib/internal.h @@ -28,7 +28,7 @@ Copyright (c) 2002-2003 Fred L. Drake, Jr. Copyright (c) 2002-2006 Karl Waclawek Copyright (c) 2003 Greg Stein - Copyright (c) 2016-2024 Sebastian Pipping + Copyright (c) 2016-2025 Sebastian Pipping Copyright (c) 2018 Yury Gribov Copyright (c) 2019 David Loffredo Copyright (c) 2023-2024 Sony Corporation / Snild Dolkow @@ -108,6 +108,7 @@ #endif #include // ULONG_MAX +#include // size_t #if defined(_WIN32) \ && (! defined(__USE_MINGW_ANSI_STDIO) \ @@ -127,6 +128,9 @@ # elif ULONG_MAX == 18446744073709551615u // 2^64-1 # define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "ld" # define EXPAT_FMT_SIZE_T(midpart) "%" midpart "lu" +# elif defined(__wasm32__) // 32bit mode Emscripten or WASI SDK +# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "ld" +# define EXPAT_FMT_SIZE_T(midpart) "%" midpart "zu" # else # define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "d" # define EXPAT_FMT_SIZE_T(midpart) "%" midpart "u" @@ -145,6 +149,16 @@ 100.0f #define EXPAT_BILLION_LAUGHS_ATTACK_PROTECTION_ACTIVATION_THRESHOLD_DEFAULT \ 8388608 // 8 MiB, 2^23 + +#define EXPAT_ALLOC_TRACKER_MAXIMUM_AMPLIFICATION_DEFAULT 100.0f +#define EXPAT_ALLOC_TRACKER_ACTIVATION_THRESHOLD_DEFAULT \ + 67108864 // 64 MiB, 2^26 + +// NOTE: If function expat_alloc was user facing, EXPAT_MALLOC_ALIGNMENT would +// have to take sizeof(long double) into account +#define EXPAT_MALLOC_ALIGNMENT sizeof(long long) // largest parser (sub)member +#define EXPAT_MALLOC_PADDING ((EXPAT_MALLOC_ALIGNMENT) - sizeof(size_t)) + /* NOTE END */ #include "expat.h" // so we can use type XML_Parser below @@ -168,6 +182,9 @@ extern #endif XML_Bool g_reparseDeferralEnabledDefault; // written ONLY in runtests.c #if defined(XML_TESTING) +void *expat_malloc(XML_Parser parser, size_t size, int sourceLine); +void expat_free(XML_Parser parser, void *ptr, int sourceLine); +void *expat_realloc(XML_Parser parser, void *ptr, size_t size, int sourceLine); extern unsigned int g_bytesScanned; // used for testing only #endif diff --git a/icecat/parser/expat/expat/lib/moz_xmlparse.c b/icecat/parser/expat/expat/lib/moz_xmlparse.c index 9f991a3afb..caeb4ad2e1 100644 --- a/icecat/parser/expat/expat/lib/moz_xmlparse.c +++ b/icecat/parser/expat/expat/lib/moz_xmlparse.c @@ -149,3 +149,14 @@ MOZ_XML_ParserFree(XML_Parser parser) { XML_Bool MOZ_XML_SetReparseDeferralEnabled(XML_Parser parser, int enabled) { return XML_SetReparseDeferralEnabled(parser, enabled); } + +const XML_Char * XMLCALL +MOZ_XML_GetMismatchedTag(XML_Parser parser) +{ + return parser->m_mismatch; +} + +XML_Bool XMLCALL +MOZ_XML_ProcessingEntityValue(XML_Parser parser) { + return parser->m_openInternalEntities != NULL; +} diff --git a/icecat/parser/expat/expat/lib/xmlparse.c b/icecat/parser/expat/expat/lib/xmlparse.c index 5e0aff89c6..e4ca4e62e6 100644 --- a/icecat/parser/expat/expat/lib/xmlparse.c +++ b/icecat/parser/expat/expat/lib/xmlparse.c @@ -1,4 +1,4 @@ -/* c5625880f4bf417c1463deee4eb92d86ff413f802048621c57e25fe483eb59e4 (2.6.4+) +/* fab937ab8b186d7d296013669c332e6dfce2f99567882cff1f8eb24223c524a7 (2.7.4+) __ __ _ ___\ \/ /_ __ __ _| |_ / _ \\ /| '_ \ / _` | __| @@ -13,7 +13,7 @@ Copyright (c) 2002-2016 Karl Waclawek Copyright (c) 2005-2009 Steven Solie Copyright (c) 2016 Eric Rahm - Copyright (c) 2016-2024 Sebastian Pipping + Copyright (c) 2016-2026 Sebastian Pipping Copyright (c) 2016 Gaurav Copyright (c) 2016 Thomas Beutlich Copyright (c) 2016 Gustavo Grieco @@ -39,8 +39,12 @@ Copyright (c) 2022 Sean McBride Copyright (c) 2023 Owain Davies Copyright (c) 2023-2024 Sony Corporation / Snild Dolkow - Copyright (c) 2024 Berkay Eren Ürün + Copyright (c) 2024-2025 Berkay Eren Ürün Copyright (c) 2024 Hanno Böck + Copyright (c) 2025 Matthew Fernandez + Copyright (c) 2025 Atrem Borovik + Copyright (c) 2025 Alfonso Gregory + Copyright (c) 2026 Rosen Penev Licensed under the MIT license: Permission is hereby granted, free of charge, to any person obtaining @@ -97,10 +101,10 @@ #include #include /* memset(), memcpy() */ #include -#include /* UINT_MAX */ +#include /* INT_MAX, UINT_MAX */ #include /* fprintf */ #include /* getenv, rand_s */ -#include /* uintptr_t */ +#include /* SIZE_MAX, uintptr_t */ #include /* isnan */ #ifdef _WIN32 @@ -133,11 +137,6 @@ # endif /* defined(GRND_NONBLOCK) */ #endif /* defined(HAVE_GETRANDOM) || defined(HAVE_SYSCALL_GETRANDOM) */ -#if defined(HAVE_LIBBSD) \ - && (defined(HAVE_ARC4RANDOM_BUF) || defined(HAVE_ARC4RANDOM)) -# include -#endif - #if defined(_WIN32) && ! defined(LOAD_LIBRARY_SEARCH_SYSTEM32) # define LOAD_LIBRARY_SEARCH_SYSTEM32 0x00000800 #endif @@ -154,8 +153,6 @@ * Linux >=3.17 + glibc (including <2.25) (syscall SYS_getrandom): HAVE_SYSCALL_GETRANDOM, \ * BSD / macOS >=10.7 / glibc >=2.36 (arc4random_buf): HAVE_ARC4RANDOM_BUF, \ * BSD / macOS (including <10.7) / glibc >=2.36 (arc4random): HAVE_ARC4RANDOM, \ - * libbsd (arc4random_buf): HAVE_ARC4RANDOM_BUF + HAVE_LIBBSD, \ - * libbsd (arc4random): HAVE_ARC4RANDOM + HAVE_LIBBSD, \ * Linux (including <3.17) / BSD / macOS (including <10.7) / Solaris >=8 (/dev/urandom): XML_DEV_URANDOM, \ * Windows >=Vista (rand_s): _WIN32. \ \ @@ -240,7 +237,7 @@ typedef struct { unsigned char power; size_t size; size_t used; - const XML_Memory_Handling_Suite *mem; + XML_Parser parser; } HASH_TABLE; static size_t keylen(KEY s); @@ -318,8 +315,11 @@ typedef struct tag { const char *rawName; /* tagName in the original encoding */ int rawNameLength; TAG_NAME name; /* tagName in the API encoding */ - char *buf; /* buffer for name components */ - char *bufEnd; /* end of the buffer */ + union { + char *raw; /* for byte-level access (rawName storage) */ + XML_Char *str; /* for character-level access (converted name) */ + } buf; /* buffer for name components */ + char *bufEnd; /* end of the buffer */ BINDING *bindings; } TAG; @@ -333,6 +333,10 @@ typedef struct { const XML_Char *publicId; const XML_Char *notation; XML_Bool open; + XML_Bool hasMore; /* true if entity has not been completely processed */ + /* An entity can be open while being already completely processed (hasMore == + XML_FALSE). The reason is the delayed closing of entities until their inner + entities are processed and closed */ XML_Bool is_param; XML_Bool is_internal; /* true if declared in internal subset outside PE */ } ENTITY; @@ -352,7 +356,7 @@ typedef struct { typedef struct block { struct block *next; int size; - XML_Char s[1]; + XML_Char s[]; } BLOCK; typedef struct { @@ -361,7 +365,7 @@ typedef struct { const XML_Char *end; XML_Char *ptr; XML_Char *start; - const XML_Memory_Handling_Suite *mem; + XML_Parser parser; } STRING_POOL; /* The XML_Char before the name is used to determine whether @@ -423,6 +427,12 @@ typedef struct { int *scaffIndex; } DTD; +enum EntityType { + ENTITY_INTERNAL, + ENTITY_ATTRIBUTE, + ENTITY_VALUE, +}; + typedef struct open_internal_entity { const char *internalEventPtr; const char *internalEventEndPtr; @@ -430,6 +440,7 @@ typedef struct open_internal_entity { ENTITY *entity; int startTagLevel; XML_Bool betweenDecl; /* WFC: PE Between Declarations */ + enum EntityType type; } OPEN_INTERNAL_ENTITY; enum XML_Account { @@ -453,6 +464,18 @@ typedef struct accounting { unsigned long long activationThresholdBytes; } ACCOUNTING; +typedef struct MALLOC_TRACKER { + XmlBigCount bytesAllocated; +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +# if 0 + XmlBigCount peakBytesAllocated; // updated live only for debug level >=2 + unsigned long debugLevel; +#endif +/* END MOZILLA CHANGE */ + float maximumAmplificationFactor; // >=1.0 + XmlBigCount activationThresholdBytes; +} MALLOC_TRACKER; + typedef struct entity_stats { /* BEGIN MOZILLA CHANGE (don't report debug information) */ #if 0 @@ -497,8 +520,8 @@ static enum XML_Error doProlog(XML_Parser parser, const ENCODING *enc, const char *next, const char **nextPtr, XML_Bool haveMore, XML_Bool allowClosingDoctype, enum XML_Account account); -static enum XML_Error processInternalEntity(XML_Parser parser, ENTITY *entity, - XML_Bool betweenDecl); +static enum XML_Error processEntity(XML_Parser parser, ENTITY *entity, + XML_Bool betweenDecl, enum EntityType type); /* BEGIN MOZILLA CHANGE (Bug 1746996 - Ensure that storeRawNames is always called) */ static enum XML_Error doContentInternal(XML_Parser parser, int startTagLevel, const ENCODING *enc, const char *start, @@ -536,18 +559,22 @@ static enum XML_Error storeAttributeValue(XML_Parser parser, const char *ptr, const char *end, STRING_POOL *pool, enum XML_Account account); -static enum XML_Error appendAttributeValue(XML_Parser parser, - const ENCODING *enc, - XML_Bool isCdata, const char *ptr, - const char *end, STRING_POOL *pool, - enum XML_Account account); +static enum XML_Error +appendAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, + const char *ptr, const char *end, STRING_POOL *pool, + enum XML_Account account, const char **nextPtr); static ATTRIBUTE_ID *getAttributeId(XML_Parser parser, const ENCODING *enc, const char *start, const char *end); static int setElementTypePrefix(XML_Parser parser, ELEMENT_TYPE *elementType); #if XML_GE == 1 static enum XML_Error storeEntityValue(XML_Parser parser, const ENCODING *enc, const char *start, const char *end, - enum XML_Account account); + enum XML_Account account, + const char **nextPtr); +static enum XML_Error callStoreEntityValue(XML_Parser parser, + const ENCODING *enc, + const char *start, const char *end, + enum XML_Account account); #else static enum XML_Error storeSelfEntityValue(XML_Parser parser, ENTITY *entity); #endif @@ -563,23 +590,21 @@ static XML_Bool setContext(XML_Parser parser, const XML_Char *context); static void FASTCALL normalizePublicId(XML_Char *s); -static DTD *dtdCreate(const XML_Memory_Handling_Suite *ms); +static DTD *dtdCreate(XML_Parser parser); /* BEGIN MOZILLA CHANGE (unused API) */ #if 0 /* do not call if m_parentParser != NULL */ -static void dtdReset(DTD *p, const XML_Memory_Handling_Suite *ms); +static void dtdReset(DTD *p, XML_Parser parser); #endif /* END MOZILLA CHANGE */ -static void dtdDestroy(DTD *p, XML_Bool isDocEntity, - const XML_Memory_Handling_Suite *ms); +static void dtdDestroy(DTD *p, XML_Bool isDocEntity, XML_Parser parser); static int dtdCopy(XML_Parser oldParser, DTD *newDtd, const DTD *oldDtd, - const XML_Memory_Handling_Suite *ms); + XML_Parser parser); static int copyEntityTable(XML_Parser oldParser, HASH_TABLE *newTable, STRING_POOL *newPool, const HASH_TABLE *oldTable); static NAMED *lookup(XML_Parser parser, HASH_TABLE *table, KEY name, size_t createSize); -static void FASTCALL hashTableInit(HASH_TABLE *table, - const XML_Memory_Handling_Suite *ms); +static void FASTCALL hashTableInit(HASH_TABLE *table, XML_Parser parser); /* BEGIN MOZILLA CHANGE (unused API) */ #if 0 static void FASTCALL hashTableClear(HASH_TABLE *table); @@ -590,8 +615,7 @@ static void FASTCALL hashTableIterInit(HASH_TABLE_ITER *iter, const HASH_TABLE *table); static NAMED *FASTCALL hashTableIterNext(HASH_TABLE_ITER *iter); -static void FASTCALL poolInit(STRING_POOL *pool, - const XML_Memory_Handling_Suite *ms); +static void FASTCALL poolInit(STRING_POOL *pool, XML_Parser parser); static void FASTCALL poolClear(STRING_POOL *pool); static void FASTCALL poolDestroy(STRING_POOL *pool); static XML_Char *poolAppend(STRING_POOL *pool, const ENCODING *enc, @@ -611,15 +635,15 @@ static XML_Content *build_model(XML_Parser parser); static ELEMENT_TYPE *getElementType(XML_Parser parser, const ENCODING *enc, const char *ptr, const char *end); -static XML_Char *copyString(const XML_Char *s, - const XML_Memory_Handling_Suite *memsuite); +static XML_Char *copyString(const XML_Char *s, XML_Parser parser); static unsigned long generate_hash_secret_salt(XML_Parser parser); static XML_Bool startParsing(XML_Parser parser); static XML_Parser parserCreate(const XML_Char *encodingName, const XML_Memory_Handling_Suite *memsuite, - const XML_Char *nameSep, DTD *dtd); + const XML_Char *nameSep, DTD *dtd, + XML_Parser parentParser); static void parserInit(XML_Parser parser, const XML_Char *encodingName); @@ -651,10 +675,10 @@ static void entityTrackingOnOpen(XML_Parser parser, ENTITY *entity, int sourceLine); static void entityTrackingOnClose(XML_Parser parser, ENTITY *entity, int sourceLine); +#endif /* XML_GE == 1 */ static XML_Parser getRootParserOf(XML_Parser parser, unsigned int *outLevelDiff); -#endif /* XML_GE == 1 */ /* BEGIN MOZILLA CHANGE (don't report debug information) */ #if 0 @@ -752,6 +776,10 @@ struct XML_ParserStruct { const char *m_positionPtr; OPEN_INTERNAL_ENTITY *m_openInternalEntities; OPEN_INTERNAL_ENTITY *m_freeInternalEntities; + OPEN_INTERNAL_ENTITY *m_openAttributeEntities; + OPEN_INTERNAL_ENTITY *m_freeAttributeEntities; + OPEN_INTERNAL_ENTITY *m_openValueEntities; + OPEN_INTERNAL_ENTITY *m_freeValueEntities; XML_Bool m_defaultExpandInternalEntities; int m_tagLevel; ENTITY *m_declEntity; @@ -797,16 +825,261 @@ struct XML_ParserStruct { unsigned long m_hash_secret_salt; #if XML_GE == 1 ACCOUNTING m_accounting; + MALLOC_TRACKER m_alloc_tracker; ENTITY_STATS m_entity_stats; #endif + XML_Bool m_reenter; /* BEGIN MOZILLA CHANGE (Report opening tag of mismatched closing tag) */ const XML_Char* m_mismatch; /* END MOZILLA CHANGE */ }; -#define MALLOC(parser, s) (parser->m_mem.malloc_fcn((s))) -#define REALLOC(parser, p, s) (parser->m_mem.realloc_fcn((p), (s))) -#define FREE(parser, p) (parser->m_mem.free_fcn((p))) +#if XML_GE == 1 +# define MALLOC(parser, s) (expat_malloc((parser), (s), __LINE__)) +# define REALLOC(parser, p, s) (expat_realloc((parser), (p), (s), __LINE__)) +# define FREE(parser, p) (expat_free((parser), (p), __LINE__)) +#else +# define MALLOC(parser, s) (parser->m_mem.malloc_fcn((s))) +# define REALLOC(parser, p, s) (parser->m_mem.realloc_fcn((p), (s))) +# define FREE(parser, p) (parser->m_mem.free_fcn((p))) +#endif + +#if XML_GE == 1 +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +#if 0 +static void +expat_heap_stat(XML_Parser rootParser, char operator, XmlBigCount absDiff, + XmlBigCount newTotal, XmlBigCount peakTotal, int sourceLine) { + // NOTE: This can be +infinity or -nan + const float amplification + = (float)newTotal / (float)rootParser->m_accounting.countBytesDirect; + fprintf( + stderr, + "expat: Allocations(%p): Direct " EXPAT_FMT_ULL("10") ", allocated %c" EXPAT_FMT_ULL( + "10") " to " EXPAT_FMT_ULL("10") " (" EXPAT_FMT_ULL("10") " peak), amplification %8.2f (xmlparse.c:%d)\n", + (void *)rootParser, rootParser->m_accounting.countBytesDirect, operator, + absDiff, newTotal, peakTotal, (double)amplification, sourceLine); +} +#endif +/* END MOZILLA CHANGE */ + +static bool +expat_heap_increase_tolerable(XML_Parser rootParser, XmlBigCount increase, + int sourceLine) { + assert(rootParser != NULL); + assert(increase > 0); + + XmlBigCount newTotal = 0; + bool tolerable = true; + + // Detect integer overflow + if ((XmlBigCount)-1 - rootParser->m_alloc_tracker.bytesAllocated < increase) { + tolerable = false; + } else { + newTotal = rootParser->m_alloc_tracker.bytesAllocated + increase; + + if (newTotal >= rootParser->m_alloc_tracker.activationThresholdBytes) { + assert(newTotal > 0); + // NOTE: This can be +infinity when dividing by zero but not -nan + const float amplification + = (float)newTotal / (float)rootParser->m_accounting.countBytesDirect; + if (amplification + > rootParser->m_alloc_tracker.maximumAmplificationFactor) { + tolerable = false; + } + } + } + +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +#if 0 + if (! tolerable && (rootParser->m_alloc_tracker.debugLevel >= 1)) { + expat_heap_stat(rootParser, '+', increase, newTotal, newTotal, sourceLine); + } +#endif +/* END MOZILLA CHANGE */ + + return tolerable; +} + +# if defined(XML_TESTING) +void * +# else +static void * +# endif +expat_malloc(XML_Parser parser, size_t size, int sourceLine) { + // Detect integer overflow + if (SIZE_MAX - size < sizeof(size_t) + EXPAT_MALLOC_PADDING) { + return NULL; + } + + const XML_Parser rootParser = getRootParserOf(parser, NULL); + assert(rootParser->m_parentParser == NULL); + + const size_t bytesToAllocate = sizeof(size_t) + EXPAT_MALLOC_PADDING + size; + + if ((XmlBigCount)-1 - rootParser->m_alloc_tracker.bytesAllocated + < bytesToAllocate) { + return NULL; // i.e. signal integer overflow as out-of-memory + } + + if (! expat_heap_increase_tolerable(rootParser, bytesToAllocate, + sourceLine)) { + return NULL; // i.e. signal violation as out-of-memory + } + + // Actually allocate + void *const mallocedPtr = parser->m_mem.malloc_fcn(bytesToAllocate); + + if (mallocedPtr == NULL) { + return NULL; + } + + // Update in-block recorded size + *(size_t *)mallocedPtr = size; + + // Update accounting + rootParser->m_alloc_tracker.bytesAllocated += bytesToAllocate; + +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +#if 0 + // Report as needed + if (rootParser->m_alloc_tracker.debugLevel >= 2) { + if (rootParser->m_alloc_tracker.bytesAllocated + > rootParser->m_alloc_tracker.peakBytesAllocated) { + rootParser->m_alloc_tracker.peakBytesAllocated + = rootParser->m_alloc_tracker.bytesAllocated; + } + expat_heap_stat(rootParser, '+', bytesToAllocate, + rootParser->m_alloc_tracker.bytesAllocated, + rootParser->m_alloc_tracker.peakBytesAllocated, sourceLine); + } +#endif +/* END MOZILLA CHANGE */ + + return (char *)mallocedPtr + sizeof(size_t) + EXPAT_MALLOC_PADDING; +} + +# if defined(XML_TESTING) +void +# else +static void +# endif +expat_free(XML_Parser parser, void *ptr, int sourceLine) { + assert(parser != NULL); + + if (ptr == NULL) { + return; + } + + const XML_Parser rootParser = getRootParserOf(parser, NULL); + assert(rootParser->m_parentParser == NULL); + + // Extract size (to the eyes of malloc_fcn/realloc_fcn) and + // the original pointer returned by malloc/realloc + void *const mallocedPtr = (char *)ptr - EXPAT_MALLOC_PADDING - sizeof(size_t); + const size_t bytesAllocated + = sizeof(size_t) + EXPAT_MALLOC_PADDING + *(size_t *)mallocedPtr; + + // Update accounting + assert(rootParser->m_alloc_tracker.bytesAllocated >= bytesAllocated); + rootParser->m_alloc_tracker.bytesAllocated -= bytesAllocated; + +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +#if 0 + // Report as needed + if (rootParser->m_alloc_tracker.debugLevel >= 2) { + expat_heap_stat(rootParser, '-', bytesAllocated, + rootParser->m_alloc_tracker.bytesAllocated, + rootParser->m_alloc_tracker.peakBytesAllocated, sourceLine); + } +#endif +/* END MOZILLA CHANGE */ + + // NOTE: This may be freeing rootParser, so freeing has to come last + parser->m_mem.free_fcn(mallocedPtr); +} + +# if defined(XML_TESTING) +void * +# else +static void * +# endif +expat_realloc(XML_Parser parser, void *ptr, size_t size, int sourceLine) { + assert(parser != NULL); + + if (ptr == NULL) { + return expat_malloc(parser, size, sourceLine); + } + + if (size == 0) { + expat_free(parser, ptr, sourceLine); + return NULL; + } + + const XML_Parser rootParser = getRootParserOf(parser, NULL); + assert(rootParser->m_parentParser == NULL); + + // Extract original size (to the eyes of the caller) and the original + // pointer returned by malloc/realloc + void *mallocedPtr = (char *)ptr - EXPAT_MALLOC_PADDING - sizeof(size_t); + const size_t prevSize = *(size_t *)mallocedPtr; + + // Classify upcoming change + const bool isIncrease = (size > prevSize); + const size_t absDiff + = (size > prevSize) ? (size - prevSize) : (prevSize - size); + + // Ask for permission from accounting + if (isIncrease) { + if (! expat_heap_increase_tolerable(rootParser, absDiff, sourceLine)) { + return NULL; // i.e. signal violation as out-of-memory + } + } + + // NOTE: Integer overflow detection has already been done for us + // by expat_heap_increase_tolerable(..) above + assert(SIZE_MAX - sizeof(size_t) - EXPAT_MALLOC_PADDING >= size); + + // Actually allocate + mallocedPtr = parser->m_mem.realloc_fcn( + mallocedPtr, sizeof(size_t) + EXPAT_MALLOC_PADDING + size); + + if (mallocedPtr == NULL) { + return NULL; + } + + // Update accounting + if (isIncrease) { + assert((XmlBigCount)-1 - rootParser->m_alloc_tracker.bytesAllocated + >= absDiff); + rootParser->m_alloc_tracker.bytesAllocated += absDiff; + } else { // i.e. decrease + assert(rootParser->m_alloc_tracker.bytesAllocated >= absDiff); + rootParser->m_alloc_tracker.bytesAllocated -= absDiff; + } + +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +#if 0 + // Report as needed + if (rootParser->m_alloc_tracker.debugLevel >= 2) { + if (rootParser->m_alloc_tracker.bytesAllocated + > rootParser->m_alloc_tracker.peakBytesAllocated) { + rootParser->m_alloc_tracker.peakBytesAllocated + = rootParser->m_alloc_tracker.bytesAllocated; + } + expat_heap_stat(rootParser, isIncrease ? '+' : '-', absDiff, + rootParser->m_alloc_tracker.bytesAllocated, + rootParser->m_alloc_tracker.peakBytesAllocated, sourceLine); + } +#endif +/* END MOZILLA CHANGE */ + + // Update in-block recorded size + *(size_t *)mallocedPtr = size; + + return (char *)mallocedPtr + sizeof(size_t) + EXPAT_MALLOC_PADDING; +} +#endif // XML_GE == 1 /* BEGIN MOZILLA CHANGE (unused API) */ #if 0 @@ -853,11 +1126,14 @@ writeRandomBytes_getrandom_nonblock(void *target, size_t count) { void *const currentTarget = (void *)((char *)target + bytesWrittenTotal); const size_t bytesToWrite = count - bytesWrittenTotal; + assert(bytesToWrite <= INT_MAX); + const int bytesWrittenMore = # if defined(HAVE_GETRANDOM) - getrandom(currentTarget, bytesToWrite, getrandomFlags); + (int)getrandom(currentTarget, bytesToWrite, getrandomFlags); # else - syscall(SYS_getrandom, currentTarget, bytesToWrite, getrandomFlags); + (int)syscall(SYS_getrandom, currentTarget, bytesToWrite, + getrandomFlags); # endif if (bytesWrittenMore > 0) { @@ -1033,8 +1309,11 @@ generate_hash_secret_salt(XML_Parser parser) { # endif /* ! defined(_WIN32) && defined(XML_DEV_URANDOM) */ /* .. and self-made low quality for backup: */ + entropy = gather_time_entropy(); +# if ! defined(__wasi__) /* Process ID is 0 bits entropy if attacker has local access */ - entropy = gather_time_entropy() ^ getpid(); + entropy ^= getpid(); +# endif /* Factors are 2^31-1 and 2^61-1 (Mersenne primes M31 and M61) */ if (sizeof(unsigned long) == 4) { @@ -1052,9 +1331,10 @@ generate_hash_secret_salt(XML_Parser parser) { static unsigned long get_hash_secret_salt(XML_Parser parser) { - if (parser->m_parentParser != NULL) - return get_hash_secret_salt(parser->m_parentParser); - return parser->m_hash_secret_salt; + const XML_Parser rootParser = getRootParserOf(parser, NULL); + assert(! rootParser->m_parentParser); + + return rootParser->m_hash_secret_salt; } static enum XML_Error @@ -1088,7 +1368,29 @@ callProcessor(XML_Parser parser, const char *start, const char *end, #if defined(XML_TESTING) g_bytesScanned += (unsigned)have_now; #endif - const enum XML_Error ret = parser->m_processor(parser, start, end, endPtr); + // Run in a loop to eliminate dangerous recursion depths + enum XML_Error ret; + *endPtr = start; + while (1) { + // Use endPtr as the new start in each iteration, since it will + // be set to the next start point by m_processor. + ret = parser->m_processor(parser, *endPtr, end, endPtr); + + // Make parsing status (and in particular XML_SUSPENDED) take + // precedence over re-enter flag when they disagree + if (parser->m_parsingStatus.parsing != XML_PARSING) { + parser->m_reenter = XML_FALSE; + } + + if (! parser->m_reenter) { + break; + } + + parser->m_reenter = XML_FALSE; + if (ret != XML_ERROR_NONE) + return ret; + } + if (ret == XML_ERROR_NONE) { // if we consumed nothing, remember what we had on this parse attempt. if (*endPtr == start) { @@ -1118,19 +1420,43 @@ XML_Parser XMLCALL XML_ParserCreate_MM(const XML_Char *encodingName, const XML_Memory_Handling_Suite *memsuite, const XML_Char *nameSep) { - return parserCreate(encodingName, memsuite, nameSep, NULL); + return parserCreate(encodingName, memsuite, nameSep, NULL, NULL); } static XML_Parser parserCreate(const XML_Char *encodingName, const XML_Memory_Handling_Suite *memsuite, const XML_Char *nameSep, - DTD *dtd) { - XML_Parser parser; + DTD *dtd, XML_Parser parentParser) { + XML_Parser parser = NULL; + +#if XML_GE == 1 + const size_t increase + = sizeof(size_t) + EXPAT_MALLOC_PADDING + sizeof(struct XML_ParserStruct); + + if (parentParser != NULL) { + const XML_Parser rootParser = getRootParserOf(parentParser, NULL); + if (! expat_heap_increase_tolerable(rootParser, increase, __LINE__)) { + return NULL; + } + } +#else + UNUSED_P(parentParser); +#endif if (memsuite) { XML_Memory_Handling_Suite *mtemp; +#if XML_GE == 1 + void *const sizeAndParser + = memsuite->malloc_fcn(sizeof(size_t) + EXPAT_MALLOC_PADDING + + sizeof(struct XML_ParserStruct)); + if (sizeAndParser != NULL) { + *(size_t *)sizeAndParser = sizeof(struct XML_ParserStruct); + parser = (XML_Parser)((char *)sizeAndParser + sizeof(size_t) + + EXPAT_MALLOC_PADDING); +#else parser = memsuite->malloc_fcn(sizeof(struct XML_ParserStruct)); if (parser != NULL) { +#endif mtemp = (XML_Memory_Handling_Suite *)&(parser->m_mem); mtemp->malloc_fcn = memsuite->malloc_fcn; mtemp->realloc_fcn = memsuite->realloc_fcn; @@ -1138,39 +1464,94 @@ parserCreate(const XML_Char *encodingName, } } else { XML_Memory_Handling_Suite *mtemp; - parser = (XML_Parser)malloc(sizeof(struct XML_ParserStruct)); +#if XML_GE == 1 + void *const sizeAndParser = malloc(sizeof(size_t) + EXPAT_MALLOC_PADDING + + sizeof(struct XML_ParserStruct)); + if (sizeAndParser != NULL) { + *(size_t *)sizeAndParser = sizeof(struct XML_ParserStruct); + parser = (XML_Parser)((char *)sizeAndParser + sizeof(size_t) + + EXPAT_MALLOC_PADDING); +#else + parser = malloc(sizeof(struct XML_ParserStruct)); if (parser != NULL) { +#endif mtemp = (XML_Memory_Handling_Suite *)&(parser->m_mem); mtemp->malloc_fcn = malloc; mtemp->realloc_fcn = realloc; mtemp->free_fcn = free; } - } + } // cppcheck-suppress[memleak symbolName=sizeAndParser] // Cppcheck >=2.18.0 if (! parser) return parser; +#if XML_GE == 1 + // Initialize .m_alloc_tracker + memset(&parser->m_alloc_tracker, 0, sizeof(MALLOC_TRACKER)); + if (parentParser == NULL) { +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +#if 0 + parser->m_alloc_tracker.debugLevel + = getDebugLevel("EXPAT_MALLOC_DEBUG", 0u); +#endif +/* END MOZILLA CHANGE */ + parser->m_alloc_tracker.maximumAmplificationFactor + = EXPAT_ALLOC_TRACKER_MAXIMUM_AMPLIFICATION_DEFAULT; + parser->m_alloc_tracker.activationThresholdBytes + = EXPAT_ALLOC_TRACKER_ACTIVATION_THRESHOLD_DEFAULT; + + // NOTE: This initialization needs to come this early because these fields + // are read by allocation tracking code + parser->m_parentParser = NULL; + parser->m_accounting.countBytesDirect = 0; + } else { + parser->m_parentParser = parentParser; + } + + // Record XML_ParserStruct allocation we did a few lines up before + const XML_Parser rootParser = getRootParserOf(parser, NULL); + assert(rootParser->m_parentParser == NULL); + assert(SIZE_MAX - rootParser->m_alloc_tracker.bytesAllocated >= increase); + rootParser->m_alloc_tracker.bytesAllocated += increase; + +/* BEGIN MOZILLA CHANGE (don't report debug information) */ +#if 0 + // Report on allocation + if (rootParser->m_alloc_tracker.debugLevel >= 2) { + if (rootParser->m_alloc_tracker.bytesAllocated + > rootParser->m_alloc_tracker.peakBytesAllocated) { + rootParser->m_alloc_tracker.peakBytesAllocated + = rootParser->m_alloc_tracker.bytesAllocated; + } + + expat_heap_stat(rootParser, '+', increase, + rootParser->m_alloc_tracker.bytesAllocated, + rootParser->m_alloc_tracker.peakBytesAllocated, __LINE__); + } +#endif +/* END MOZILLA CHANGE */ +#else + parser->m_parentParser = NULL; +#endif // XML_GE == 1 + parser->m_buffer = NULL; parser->m_bufferLim = NULL; parser->m_attsSize = INIT_ATTS_SIZE; - parser->m_atts - = (ATTRIBUTE *)MALLOC(parser, parser->m_attsSize * sizeof(ATTRIBUTE)); + parser->m_atts = MALLOC(parser, parser->m_attsSize * sizeof(ATTRIBUTE)); if (parser->m_atts == NULL) { FREE(parser, parser); return NULL; } #ifdef XML_ATTR_INFO - parser->m_attInfo = (XML_AttrInfo *)MALLOC( - parser, parser->m_attsSize * sizeof(XML_AttrInfo)); + parser->m_attInfo = MALLOC(parser, parser->m_attsSize * sizeof(XML_AttrInfo)); if (parser->m_attInfo == NULL) { FREE(parser, parser->m_atts); FREE(parser, parser); return NULL; } #endif - parser->m_dataBuf - = (XML_Char *)MALLOC(parser, INIT_DATA_BUF_SIZE * sizeof(XML_Char)); + parser->m_dataBuf = MALLOC(parser, INIT_DATA_BUF_SIZE * sizeof(XML_Char)); if (parser->m_dataBuf == NULL) { FREE(parser, parser->m_atts); #ifdef XML_ATTR_INFO @@ -1184,7 +1565,7 @@ parserCreate(const XML_Char *encodingName, if (dtd) parser->m_dtd = dtd; else { - parser->m_dtd = dtdCreate(&parser->m_mem); + parser->m_dtd = dtdCreate(parser); if (parser->m_dtd == NULL) { FREE(parser, parser->m_dataBuf); FREE(parser, parser->m_atts); @@ -1199,6 +1580,8 @@ parserCreate(const XML_Char *encodingName, parser->m_freeBindingList = NULL; parser->m_freeTagList = NULL; parser->m_freeInternalEntities = NULL; + parser->m_freeAttributeEntities = NULL; + parser->m_freeValueEntities = NULL; parser->m_groupSize = 0; parser->m_groupConnector = NULL; @@ -1216,8 +1599,8 @@ parserCreate(const XML_Char *encodingName, parser->m_protocolEncodingName = NULL; - poolInit(&parser->m_tempPool, &(parser->m_mem)); - poolInit(&parser->m_temp2Pool, &(parser->m_mem)); + poolInit(&parser->m_tempPool, parser); + poolInit(&parser->m_temp2Pool, parser); parserInit(parser, encodingName); if (encodingName && ! parser->m_protocolEncodingName) { @@ -1253,7 +1636,7 @@ parserInit(XML_Parser parser, const XML_Char *encodingName) { parser->m_processor = prologInitProcessor; XmlPrologStateInit(&parser->m_prologState); if (encodingName != NULL) { - parser->m_protocolEncodingName = copyString(encodingName, &(parser->m_mem)); + parser->m_protocolEncodingName = copyString(encodingName, parser); } parser->m_curBase = NULL; XmlInitEncoding(&parser->m_initEncoding, &parser->m_encoding, 0); @@ -1305,6 +1688,8 @@ parserInit(XML_Parser parser, const XML_Char *encodingName) { parser->m_eventEndPtr = NULL; parser->m_positionPtr = NULL; parser->m_openInternalEntities = NULL; + parser->m_openAttributeEntities = NULL; + parser->m_openValueEntities = NULL; parser->m_defaultExpandInternalEntities = XML_TRUE; parser->m_tagLevel = 0; parser->m_tagStack = NULL; @@ -1313,8 +1698,9 @@ parserInit(XML_Parser parser, const XML_Char *encodingName) { parser->m_unknownEncodingMem = NULL; parser->m_unknownEncodingRelease = NULL; parser->m_unknownEncodingData = NULL; - parser->m_parentParser = NULL; parser->m_parsingStatus.parsing = XML_INITIALIZED; + // Reentry can only be triggered inside m_processor calls + parser->m_reenter = XML_FALSE; #ifdef XML_DTD parser->m_isParamEntity = XML_FALSE; parser->m_useForeignDTD = XML_FALSE; @@ -1384,6 +1770,24 @@ XML_ParserReset(XML_Parser parser, const XML_Char *encodingName) { openEntity->next = parser->m_freeInternalEntities; parser->m_freeInternalEntities = openEntity; } + /* move m_openAttributeEntities to m_freeAttributeEntities (i.e. same task but + * for attributes) */ + openEntityList = parser->m_openAttributeEntities; + while (openEntityList) { + OPEN_INTERNAL_ENTITY *openEntity = openEntityList; + openEntityList = openEntity->next; + openEntity->next = parser->m_freeAttributeEntities; + parser->m_freeAttributeEntities = openEntity; + } + /* move m_openValueEntities to m_freeValueEntities (i.e. same task but + * for value entities) */ + openEntityList = parser->m_openValueEntities; + while (openEntityList) { + OPEN_INTERNAL_ENTITY *openEntity = openEntityList; + openEntityList = openEntity->next; + openEntity->next = parser->m_freeValueEntities; + parser->m_freeValueEntities = openEntity; + } moveToFreeBindingList(parser, parser->m_inheritedBindings); FREE(parser, parser->m_unknownEncodingMem); if (parser->m_unknownEncodingRelease) @@ -1393,10 +1797,27 @@ XML_ParserReset(XML_Parser parser, const XML_Char *encodingName) { FREE(parser, (void *)parser->m_protocolEncodingName); parser->m_protocolEncodingName = NULL; parserInit(parser, encodingName); - dtdReset(parser->m_dtd, &parser->m_mem); + dtdReset(parser->m_dtd, parser); return XML_TRUE; } +#endif +/* END MOZILLA CHANGE */ +static XML_Bool +parserBusy(XML_Parser parser) { + switch (parser->m_parsingStatus.parsing) { + case XML_PARSING: + case XML_SUSPENDED: + return XML_TRUE; + case XML_INITIALIZED: + case XML_FINISHED: + default: + return XML_FALSE; + } +} + +/* BEGIN MOZILLA CHANGE (unused API) */ +#if 0 enum XML_Status XMLCALL XML_SetEncoding(XML_Parser parser, const XML_Char *encodingName) { if (parser == NULL) @@ -1405,8 +1826,7 @@ XML_SetEncoding(XML_Parser parser, const XML_Char *encodingName) { XXX There's no way for the caller to determine which of the XXX possible error cases caused the XML_STATUS_ERROR return. */ - if (parser->m_parsingStatus.parsing == XML_PARSING - || parser->m_parsingStatus.parsing == XML_SUSPENDED) + if (parserBusy(parser)) return XML_STATUS_ERROR; /* Get rid of any previous encoding name */ @@ -1417,7 +1837,7 @@ XML_SetEncoding(XML_Parser parser, const XML_Char *encodingName) { parser->m_protocolEncodingName = NULL; else { /* Copy the new encoding name into allocated memory */ - parser->m_protocolEncodingName = copyString(encodingName, &(parser->m_mem)); + parser->m_protocolEncodingName = copyString(encodingName, parser); if (! parser->m_protocolEncodingName) return XML_STATUS_ERROR; } @@ -1448,6 +1868,7 @@ XML_ExternalEntityParserCreate(XML_Parser oldParser, const XML_Char *context, XML_ExternalEntityRefHandler oldExternalEntityRefHandler; XML_SkippedEntityHandler oldSkippedEntityHandler; XML_UnknownEncodingHandler oldUnknownEncodingHandler; + void *oldUnknownEncodingHandlerData; XML_ElementDeclHandler oldElementDeclHandler; XML_AttlistDeclHandler oldAttlistDeclHandler; XML_EntityDeclHandler oldEntityDeclHandler; @@ -1493,6 +1914,7 @@ XML_ExternalEntityParserCreate(XML_Parser oldParser, const XML_Char *context, oldExternalEntityRefHandler = parser->m_externalEntityRefHandler; oldSkippedEntityHandler = parser->m_skippedEntityHandler; oldUnknownEncodingHandler = parser->m_unknownEncodingHandler; + oldUnknownEncodingHandlerData = parser->m_unknownEncodingHandlerData; oldElementDeclHandler = parser->m_elementDeclHandler; oldAttlistDeclHandler = parser->m_attlistDeclHandler; oldEntityDeclHandler = parser->m_entityDeclHandler; @@ -1528,9 +1950,10 @@ XML_ExternalEntityParserCreate(XML_Parser oldParser, const XML_Char *context, */ if (parser->m_ns) { XML_Char tmp[2] = {parser->m_namespaceSeparator, 0}; - parser = parserCreate(encodingName, &parser->m_mem, tmp, newDtd); + parser = parserCreate(encodingName, &parser->m_mem, tmp, newDtd, oldParser); } else { - parser = parserCreate(encodingName, &parser->m_mem, NULL, newDtd); + parser + = parserCreate(encodingName, &parser->m_mem, NULL, newDtd, oldParser); } if (! parser) @@ -1552,6 +1975,7 @@ XML_ExternalEntityParserCreate(XML_Parser oldParser, const XML_Char *context, parser->m_externalEntityRefHandler = oldExternalEntityRefHandler; parser->m_skippedEntityHandler = oldSkippedEntityHandler; parser->m_unknownEncodingHandler = oldUnknownEncodingHandler; + parser->m_unknownEncodingHandlerData = oldUnknownEncodingHandlerData; parser->m_elementDeclHandler = oldElementDeclHandler; parser->m_attlistDeclHandler = oldAttlistDeclHandler; parser->m_entityDeclHandler = oldEntityDeclHandler; @@ -1574,7 +1998,7 @@ XML_ExternalEntityParserCreate(XML_Parser oldParser, const XML_Char *context, parser->m_prologState.inEntityValue = oldInEntityValue; if (context) { #endif /* XML_DTD */ - if (! dtdCopy(oldParser, parser->m_dtd, oldDtd, &parser->m_mem) + if (! dtdCopy(oldParser, parser->m_dtd, oldDtd, parser) || ! setContext(parser, context)) { XML_ParserFree(parser); return NULL; @@ -1627,7 +2051,7 @@ XML_ParserFree(XML_Parser parser) { } p = tagList; tagList = tagList->parent; - FREE(parser, p->buf); + FREE(parser, p->buf.raw); destroyBindings(p->bindings, parser); FREE(parser, p); } @@ -1645,7 +2069,34 @@ XML_ParserFree(XML_Parser parser) { entityList = entityList->next; FREE(parser, openEntity); } - + /* free m_openAttributeEntities and m_freeAttributeEntities */ + entityList = parser->m_openAttributeEntities; + for (;;) { + OPEN_INTERNAL_ENTITY *openEntity; + if (entityList == NULL) { + if (parser->m_freeAttributeEntities == NULL) + break; + entityList = parser->m_freeAttributeEntities; + parser->m_freeAttributeEntities = NULL; + } + openEntity = entityList; + entityList = entityList->next; + FREE(parser, openEntity); + } + /* free m_openValueEntities and m_freeValueEntities */ + entityList = parser->m_openValueEntities; + for (;;) { + OPEN_INTERNAL_ENTITY *openEntity; + if (entityList == NULL) { + if (parser->m_freeValueEntities == NULL) + break; + entityList = parser->m_freeValueEntities; + parser->m_freeValueEntities = NULL; + } + openEntity = entityList; + entityList = entityList->next; + FREE(parser, openEntity); + } destroyBindings(parser->m_freeBindingList, parser); destroyBindings(parser->m_inheritedBindings, parser); poolDestroy(&parser->m_tempPool); @@ -1659,14 +2110,16 @@ XML_ParserFree(XML_Parser parser) { #else if (parser->m_dtd) #endif /* XML_DTD */ - dtdDestroy(parser->m_dtd, (XML_Bool)! parser->m_parentParser, - &parser->m_mem); - FREE(parser, (void *)parser->m_atts); + dtdDestroy(parser->m_dtd, (XML_Bool)! parser->m_parentParser, parser); + FREE(parser, parser->m_atts); #ifdef XML_ATTR_INFO - FREE(parser, (void *)parser->m_attInfo); + FREE(parser, parser->m_attInfo); #endif FREE(parser, parser->m_groupConnector); - FREE(parser, parser->m_buffer); + // NOTE: We are avoiding FREE(..) here because parser->m_buffer + // is not being allocated with MALLOC(..) but with plain + // .malloc_fcn(..). + parser->m_mem.free_fcn(parser->m_buffer); FREE(parser, parser->m_dataBuf); FREE(parser, parser->m_nsAtts); FREE(parser, parser->m_unknownEncodingMem); @@ -1689,8 +2142,7 @@ XML_UseForeignDTD(XML_Parser parser, XML_Bool useDTD) { return XML_ERROR_INVALID_ARGUMENT; #ifdef XML_DTD /* block after XML_Parse()/XML_ParseBuffer() has been called */ - if (parser->m_parsingStatus.parsing == XML_PARSING - || parser->m_parsingStatus.parsing == XML_SUSPENDED) + if (parserBusy(parser)) return XML_ERROR_CANT_CHANGE_FEATURE_ONCE_PARSING; parser->m_useForeignDTD = useDTD; return XML_ERROR_NONE; @@ -1707,8 +2159,7 @@ XML_SetReturnNSTriplet(XML_Parser parser, int do_nst) { if (parser == NULL) return; /* block after XML_Parse()/XML_ParseBuffer() has been called */ - if (parser->m_parsingStatus.parsing == XML_PARSING - || parser->m_parsingStatus.parsing == XML_SUSPENDED) + if (parserBusy(parser)) return; parser->m_ns_triplets = do_nst ? XML_TRUE : XML_FALSE; } @@ -1997,8 +2448,7 @@ XML_SetParamEntityParsing(XML_Parser parser, if (parser == NULL) return 0; /* block after XML_Parse()/XML_ParseBuffer() has been called */ - if (parser->m_parsingStatus.parsing == XML_PARSING - || parser->m_parsingStatus.parsing == XML_SUSPENDED) + if (parserBusy(parser)) return 0; #ifdef XML_DTD parser->m_paramEntityParsing = peParsing; @@ -2012,13 +2462,14 @@ int XMLCALL XML_SetHashSalt(XML_Parser parser, unsigned long hash_salt) { if (parser == NULL) return 0; - if (parser->m_parentParser) - return XML_SetHashSalt(parser->m_parentParser, hash_salt); + + const XML_Parser rootParser = getRootParserOf(parser, NULL); + assert(! rootParser->m_parentParser); + /* block after XML_Parse()/XML_ParseBuffer() has been called */ - if (parser->m_parsingStatus.parsing == XML_PARSING - || parser->m_parsingStatus.parsing == XML_SUSPENDED) + if (parserBusy(rootParser)) return 0; - parser->m_hash_secret_salt = hash_salt; + rootParser->m_hash_secret_salt = hash_salt; return 1; } @@ -2201,6 +2652,10 @@ XML_ParseBuffer(XML_Parser parser, int len, int isFinal) { XmlUpdatePosition(parser->m_encoding, parser->m_positionPtr, parser->m_bufferPtr, &parser->m_position); parser->m_positionPtr = parser->m_bufferPtr; +/* BEGIN MOZILLA CHANGE (always set m_eventPtr/m_eventEndPtr) */ + parser->m_eventPtr = parser->m_bufferPtr; + parser->m_eventEndPtr = parser->m_bufferPtr; +/* END MOZILLA CHANGE */ return result; } @@ -2286,8 +2741,10 @@ XML_GetBuffer(XML_Parser parser, int len) { parser->m_errorCode = XML_ERROR_NO_MEMORY; return NULL; } - newBuf = (char *)MALLOC(parser, bufferSize); - if (newBuf == 0) { + // NOTE: We are avoiding MALLOC(..) here to leave limiting + // the input size to the application using Expat. + newBuf = parser->m_mem.malloc_fcn(bufferSize); + if (newBuf == NULL) { parser->m_errorCode = XML_ERROR_NO_MEMORY; return NULL; } @@ -2297,7 +2754,10 @@ XML_GetBuffer(XML_Parser parser, int len) { memcpy(newBuf, &parser->m_bufferPtr[-keep], EXPAT_SAFE_PTR_DIFF(parser->m_bufferEnd, parser->m_bufferPtr) + keep); - FREE(parser, parser->m_buffer); + // NOTE: We are avoiding FREE(..) here because parser->m_buffer + // is not being allocated with MALLOC(..) but with plain + // .malloc_fcn(..). + parser->m_mem.free_fcn(parser->m_buffer); parser->m_buffer = newBuf; parser->m_bufferEnd = parser->m_buffer @@ -2313,7 +2773,10 @@ XML_GetBuffer(XML_Parser parser, int len) { if (parser->m_bufferPtr) { memcpy(newBuf, parser->m_bufferPtr, EXPAT_SAFE_PTR_DIFF(parser->m_bufferEnd, parser->m_bufferPtr)); - FREE(parser, parser->m_buffer); + // NOTE: We are avoiding FREE(..) here because parser->m_buffer + // is not being allocated with MALLOC(..) but with plain + // .malloc_fcn(..). + parser->m_mem.free_fcn(parser->m_buffer); parser->m_bufferEnd = newBuf + EXPAT_SAFE_PTR_DIFF(parser->m_bufferEnd, parser->m_bufferPtr); @@ -2330,6 +2793,11 @@ XML_GetBuffer(XML_Parser parser, int len) { return parser->m_bufferEnd; } +static void +triggerReenter(XML_Parser parser) { + parser->m_reenter = XML_TRUE; +} + enum XML_Status XMLCALL XML_StopParser(XML_Parser parser, XML_Bool resumable) { if (parser == NULL) @@ -2403,10 +2871,6 @@ XML_ResumeParser(XML_Parser parser) { XmlUpdatePosition(parser->m_encoding, parser->m_positionPtr, parser->m_bufferPtr, &parser->m_position); parser->m_positionPtr = parser->m_bufferPtr; -/* BEGIN MOZILLA CHANGE (always set m_eventPtr/m_eventEndPtr) */ - parser->m_eventPtr = parser->m_bufferPtr; - parser->m_eventEndPtr = parser->m_bufferPtr; -/* END MOZILLA CHANGE */ return result; } @@ -2502,28 +2966,43 @@ XML_GetCurrentColumnNumber(XML_Parser parser) { #if 0 void XMLCALL XML_FreeContentModel(XML_Parser parser, XML_Content *model) { - if (parser != NULL) - FREE(parser, model); + if (parser == NULL) + return; + + // NOTE: We are avoiding FREE(..) here because the content model + // has been created using plain .malloc_fcn(..) rather than MALLOC(..). + parser->m_mem.free_fcn(model); } void *XMLCALL XML_MemMalloc(XML_Parser parser, size_t size) { if (parser == NULL) return NULL; - return MALLOC(parser, size); + + // NOTE: We are avoiding MALLOC(..) here to not include + // user allocations with allocation tracking and limiting. + return parser->m_mem.malloc_fcn(size); } void *XMLCALL XML_MemRealloc(XML_Parser parser, void *ptr, size_t size) { if (parser == NULL) return NULL; - return REALLOC(parser, ptr, size); + + // NOTE: We are avoiding REALLOC(..) here to not include + // user allocations with allocation tracking and limiting. + return parser->m_mem.realloc_fcn(ptr, size); } void XMLCALL XML_MemFree(XML_Parser parser, void *ptr) { - if (parser != NULL) - FREE(parser, ptr); + if (parser == NULL) + return; + + // NOTE: We are avoiding FREE(..) here because XML_MemMalloc and + // XML_MemRealloc are not using MALLOC(..) and REALLOC(..) + // but plain .malloc_fcn(..) and .realloc_fcn(..), internally. + parser->m_mem.free_fcn(ptr); } void XMLCALL @@ -2723,6 +3202,13 @@ XML_GetFeatureList(void) { EXPAT_BILLION_LAUGHS_ATTACK_PROTECTION_ACTIVATION_THRESHOLD_DEFAULT}, /* Added in Expat 2.6.0. */ {XML_FEATURE_GE, XML_L("XML_GE"), 0}, + /* Added in Expat 2.7.2. */ + {XML_FEATURE_ALLOC_TRACKER_MAXIMUM_AMPLIFICATION_DEFAULT, + XML_L("XML_AT_MAX_AMP"), + (long int)EXPAT_ALLOC_TRACKER_MAXIMUM_AMPLIFICATION_DEFAULT}, + {XML_FEATURE_ALLOC_TRACKER_ACTIVATION_THRESHOLD_DEFAULT, + XML_L("XML_AT_ACT_THRES"), + (long int)EXPAT_ALLOC_TRACKER_ACTIVATION_THRESHOLD_DEFAULT}, #endif {XML_FEATURE_END, NULL, 0}}; @@ -2753,22 +3239,30 @@ XML_SetBillionLaughsAttackProtectionActivationThreshold( parser->m_accounting.activationThresholdBytes = activationThresholdBytes; return XML_TRUE; } -#endif /* XML_GE == 1 */ -/* BEGIN MOZILLA CHANGE (Report opening tag of mismatched closing tag) */ -const XML_Char * XMLCALL -MOZ_XML_GetMismatchedTag(XML_Parser parser) -{ - return parser->m_mismatch; -} -/* END MOZILLA CHANGE */ - -/* BEGIN MOZILLA CHANGE (Report whether the parser is currently expanding an entity) */ XML_Bool XMLCALL -MOZ_XML_ProcessingEntityValue(XML_Parser parser) { - return parser->m_openInternalEntities != NULL; +XML_SetAllocTrackerMaximumAmplification(XML_Parser parser, + float maximumAmplificationFactor) { + if ((parser == NULL) || (parser->m_parentParser != NULL) + || isnan(maximumAmplificationFactor) + || (maximumAmplificationFactor < 1.0f)) { + return XML_FALSE; + } + parser->m_alloc_tracker.maximumAmplificationFactor + = maximumAmplificationFactor; + return XML_TRUE; } -/* END MOZILLA CHANGE */ + +XML_Bool XMLCALL +XML_SetAllocTrackerActivationThreshold( + XML_Parser parser, unsigned long long activationThresholdBytes) { + if ((parser == NULL) || (parser->m_parentParser != NULL)) { + return XML_FALSE; + } + parser->m_alloc_tracker.activationThresholdBytes = activationThresholdBytes; + return XML_TRUE; +} +#endif /* XML_GE == 1 */ XML_Bool XMLCALL XML_SetReparseDeferralEnabled(XML_Parser parser, XML_Bool enabled) { @@ -2788,10 +3282,10 @@ static XML_Bool storeRawNames(XML_Parser parser) { TAG *tag = parser->m_tagStack; while (tag) { - int bufSize; - int nameLen = sizeof(XML_Char) * (tag->name.strLen + 1); + size_t bufSize; + size_t nameLen = sizeof(XML_Char) * (tag->name.strLen + 1); size_t rawNameLen; - char *rawNameBuf = tag->buf + nameLen; + char *rawNameBuf = tag->buf.raw + nameLen; /* Stop if already stored. Since m_tagStack is a stack, we can stop at the first entry that has already been copied; everything below it in the stack is already been accounted for in a @@ -2806,23 +3300,23 @@ storeRawNames(XML_Parser parser) { /* Detect and prevent integer overflow. */ if (rawNameLen > (size_t)INT_MAX - nameLen) return XML_FALSE; - bufSize = nameLen + (int)rawNameLen; - if (bufSize > tag->bufEnd - tag->buf) { - char *temp = (char *)REALLOC(parser, tag->buf, bufSize); + bufSize = nameLen + rawNameLen; + if (bufSize > (size_t)(tag->bufEnd - tag->buf.raw)) { + char *temp = REALLOC(parser, tag->buf.raw, bufSize); if (temp == NULL) return XML_FALSE; - /* if tag->name.str points to tag->buf (only when namespace + /* if tag->name.str points to tag->buf.str (only when namespace processing is off) then we have to update it */ - if (tag->name.str == (XML_Char *)tag->buf) + if (tag->name.str == tag->buf.str) tag->name.str = (XML_Char *)temp; /* if tag->name.localPart is set (when namespace processing is on) then update it as well, since it will always point into tag->buf */ if (tag->name.localPart) tag->name.localPart - = (XML_Char *)temp + (tag->name.localPart - (XML_Char *)tag->buf); - tag->buf = temp; + = (XML_Char *)temp + (tag->name.localPart - tag->buf.str); + tag->buf.raw = temp; tag->bufEnd = temp + bufSize; rawNameBuf = temp + nameLen; } @@ -2837,8 +3331,9 @@ static enum XML_Error PTRCALL contentProcessor(XML_Parser parser, const char *start, const char *end, const char **endPtr) { enum XML_Error result = doContent( - parser, 0, parser->m_encoding, start, end, endPtr, - (XML_Bool)! parser->m_parsingStatus.finalBuffer, XML_ACCOUNT_DIRECT); + parser, parser->m_parentParser ? 1 : 0, parser->m_encoding, start, end, + endPtr, (XML_Bool)! parser->m_parsingStatus.finalBuffer, + XML_ACCOUNT_DIRECT); /* BEGIN MOZILLA CHANGE (Bug 1746996 - Ensure that storeRawNames is always called) */ #if 0 if (result == XML_ERROR_NONE) { @@ -2930,6 +3425,11 @@ externalEntityInitProcessor3(XML_Parser parser, const char *start, return XML_ERROR_NONE; case XML_FINISHED: return XML_ERROR_ABORTED; + case XML_PARSING: + if (parser->m_reenter) { + return XML_ERROR_UNEXPECTED_STATE; // LCOV_EXCL_LINE + } + /* Fall through */ default: start = next; } @@ -3128,7 +3628,7 @@ doContentInternal(XML_Parser parser, int startTagLevel, const ENCODING *enc, reportDefault(parser, enc, s, next); break; } - result = processInternalEntity(parser, entity, XML_FALSE); + result = processEntity(parser, entity, XML_FALSE, ENTITY_INTERNAL); if (result != XML_ERROR_NONE) return result; } else if (parser->m_externalEntityRefHandler) { @@ -3157,15 +3657,15 @@ doContentInternal(XML_Parser parser, int startTagLevel, const ENCODING *enc, tag = parser->m_freeTagList; parser->m_freeTagList = parser->m_freeTagList->parent; } else { - tag = (TAG *)MALLOC(parser, sizeof(TAG)); + tag = MALLOC(parser, sizeof(TAG)); if (! tag) return XML_ERROR_NO_MEMORY; - tag->buf = (char *)MALLOC(parser, INIT_TAG_BUF_SIZE); - if (! tag->buf) { + tag->buf.raw = MALLOC(parser, INIT_TAG_BUF_SIZE); + if (! tag->buf.raw) { FREE(parser, tag); return XML_ERROR_NO_MEMORY; } - tag->bufEnd = tag->buf + INIT_TAG_BUF_SIZE; + tag->bufEnd = tag->buf.raw + INIT_TAG_BUF_SIZE; } tag->bindings = NULL; tag->parent = parser->m_tagStack; @@ -3178,31 +3678,32 @@ doContentInternal(XML_Parser parser, int startTagLevel, const ENCODING *enc, { const char *rawNameEnd = tag->rawName + tag->rawNameLength; const char *fromPtr = tag->rawName; - toPtr = (XML_Char *)tag->buf; + toPtr = tag->buf.str; for (;;) { - int bufSize; int convLen; const enum XML_Convert_Result convert_res = XmlConvert(enc, &fromPtr, rawNameEnd, (ICHAR **)&toPtr, (ICHAR *)tag->bufEnd - 1); - convLen = (int)(toPtr - (XML_Char *)tag->buf); + convLen = (int)(toPtr - tag->buf.str); if ((fromPtr >= rawNameEnd) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE)) { tag->name.strLen = convLen; break; } - bufSize = (int)(tag->bufEnd - tag->buf) << 1; + if (SIZE_MAX / 2 < (size_t)(tag->bufEnd - tag->buf.raw)) + return XML_ERROR_NO_MEMORY; + const size_t bufSize = (size_t)(tag->bufEnd - tag->buf.raw) * 2; { - char *temp = (char *)REALLOC(parser, tag->buf, bufSize); + char *temp = REALLOC(parser, tag->buf.raw, bufSize); if (temp == NULL) return XML_ERROR_NO_MEMORY; - tag->buf = temp; + tag->buf.raw = temp; tag->bufEnd = temp + bufSize; toPtr = (XML_Char *)temp + convLen; } } } - tag->name.str = (XML_Char *)tag->buf; + tag->name.str = tag->buf.str; *toPtr = XML_T('\0'); result = storeAtts(parser, enc, s, &(tag->name), &(tag->bindings), account); @@ -3254,7 +3755,9 @@ doContentInternal(XML_Parser parser, int startTagLevel, const ENCODING *enc, } if ((parser->m_tagLevel == 0) && (parser->m_parsingStatus.parsing != XML_FINISHED)) { - if (parser->m_parsingStatus.parsing == XML_SUSPENDED) + if (parser->m_parsingStatus.parsing == XML_SUSPENDED + || (parser->m_parsingStatus.parsing == XML_PARSING + && parser->m_reenter)) parser->m_processor = epilogProcessor; else return epilogProcessor(parser, next, end, nextPtr); @@ -3342,7 +3845,9 @@ doContentInternal(XML_Parser parser, int startTagLevel, const ENCODING *enc, } if ((parser->m_tagLevel == 0) && (parser->m_parsingStatus.parsing != XML_FINISHED)) { - if (parser->m_parsingStatus.parsing == XML_SUSPENDED) + if (parser->m_parsingStatus.parsing == XML_SUSPENDED + || (parser->m_parsingStatus.parsing == XML_PARSING + && parser->m_reenter)) parser->m_processor = epilogProcessor; else return epilogProcessor(parser, next, end, nextPtr); @@ -3475,14 +3980,22 @@ doContentInternal(XML_Parser parser, int startTagLevel, const ENCODING *enc, break; /* LCOV_EXCL_STOP */ } - *eventPP = s = next; switch (parser->m_parsingStatus.parsing) { case XML_SUSPENDED: + *eventPP = next; *nextPtr = next; return XML_ERROR_NONE; case XML_FINISHED: + *eventPP = next; return XML_ERROR_ABORTED; + case XML_PARSING: + if (parser->m_reenter) { + *nextPtr = next; + return XML_ERROR_NONE; + } + /* Fall through */ default:; + *eventPP = s = next; } } /* not reached */ @@ -3584,14 +4097,14 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if ((unsigned)parser->m_attsSize > (size_t)(-1) / sizeof(ATTRIBUTE)) { + if ((unsigned)parser->m_attsSize > SIZE_MAX / sizeof(ATTRIBUTE)) { parser->m_attsSize = oldAttsSize; return XML_ERROR_NO_MEMORY; } #endif - temp = (ATTRIBUTE *)REALLOC(parser, (void *)parser->m_atts, - parser->m_attsSize * sizeof(ATTRIBUTE)); + temp = REALLOC(parser, parser->m_atts, + parser->m_attsSize * sizeof(ATTRIBUTE)); if (temp == NULL) { parser->m_attsSize = oldAttsSize; return XML_ERROR_NO_MEMORY; @@ -3603,14 +4116,14 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ # if UINT_MAX >= SIZE_MAX - if ((unsigned)parser->m_attsSize > (size_t)(-1) / sizeof(XML_AttrInfo)) { + if ((unsigned)parser->m_attsSize > SIZE_MAX / sizeof(XML_AttrInfo)) { parser->m_attsSize = oldAttsSize; return XML_ERROR_NO_MEMORY; } # endif - temp2 = (XML_AttrInfo *)REALLOC(parser, (void *)parser->m_attInfo, - parser->m_attsSize * sizeof(XML_AttrInfo)); + temp2 = REALLOC(parser, parser->m_attInfo, + parser->m_attsSize * sizeof(XML_AttrInfo)); if (temp2 == NULL) { parser->m_attsSize = oldAttsSize; return XML_ERROR_NO_MEMORY; @@ -3765,7 +4278,7 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, if (nPrefixes || nXMLNSDeclarations) { #endif /* END MOZILLA CHANGE */ - int j; /* hash table index */ + unsigned int j; /* hash table index */ unsigned long version = parser->m_nsAttsVersion; /* Detect and prevent invalid shift */ @@ -3802,15 +4315,14 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if (nsAttsSize > (size_t)(-1) / sizeof(NS_ATT)) { + if (nsAttsSize > SIZE_MAX / sizeof(NS_ATT)) { /* Restore actual size of memory in m_nsAtts */ parser->m_nsAttsPower = oldNsAttsPower; return XML_ERROR_NO_MEMORY; } #endif - temp = (NS_ATT *)REALLOC(parser, parser->m_nsAtts, - nsAttsSize * sizeof(NS_ATT)); + temp = REALLOC(parser, parser->m_nsAtts, nsAttsSize * sizeof(NS_ATT)); if (! temp) { /* Restore actual size of memory in m_nsAtts */ parser->m_nsAttsPower = oldNsAttsPower; @@ -3866,7 +4378,7 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, if (! b) return XML_ERROR_UNBOUND_PREFIX; - for (j = 0; j < b->uriLen; j++) { + for (j = 0; j < (unsigned int)b->uriLen; j++) { const XML_Char c = b->uri[j]; if (! poolAppendChar(&parser->m_tempPool, c)) return XML_ERROR_NO_MEMORY; @@ -4013,7 +4525,7 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, return XML_ERROR_NONE; prefixLen = 0; if (parser->m_ns_triplets && binding->prefix->name) { - for (; binding->prefix->name[prefixLen++];) + while (binding->prefix->name[prefixLen++]) ; /* prefixLen includes null terminator */ } tagNamePtr->localPart = localPart; @@ -4042,12 +4554,12 @@ storeAtts(XML_Parser parser, const ENCODING *enc, const char *attStr, * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if ((unsigned)(n + EXPAND_SPARE) > (size_t)(-1) / sizeof(XML_Char)) { + if ((unsigned)(n + EXPAND_SPARE) > SIZE_MAX / sizeof(XML_Char)) { return XML_ERROR_NO_MEMORY; } #endif - uri = (XML_Char *)MALLOC(parser, (n + EXPAND_SPARE) * sizeof(XML_Char)); + uri = MALLOC(parser, (n + EXPAND_SPARE) * sizeof(XML_Char)); if (! uri) return XML_ERROR_NO_MEMORY; binding->uriAlloc = n + EXPAND_SPARE; @@ -4288,13 +4800,13 @@ addBinding(XML_Parser parser, PREFIX *prefix, const ATTRIBUTE_ID *attId, * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if ((unsigned)(len + EXPAND_SPARE) > (size_t)(-1) / sizeof(XML_Char)) { + if ((unsigned)(len + EXPAND_SPARE) > SIZE_MAX / sizeof(XML_Char)) { return XML_ERROR_NO_MEMORY; } #endif - XML_Char *temp = (XML_Char *)REALLOC( - parser, b->uri, sizeof(XML_Char) * (len + EXPAND_SPARE)); + XML_Char *temp + = REALLOC(parser, b->uri, sizeof(XML_Char) * (len + EXPAND_SPARE)); if (temp == NULL) return XML_ERROR_NO_MEMORY; b->uri = temp; @@ -4302,7 +4814,7 @@ addBinding(XML_Parser parser, PREFIX *prefix, const ATTRIBUTE_ID *attId, } parser->m_freeBindingList = b->nextTagBinding; } else { - b = (BINDING *)MALLOC(parser, sizeof(BINDING)); + b = MALLOC(parser, sizeof(BINDING)); if (! b) return XML_ERROR_NO_MEMORY; @@ -4315,13 +4827,12 @@ addBinding(XML_Parser parser, PREFIX *prefix, const ATTRIBUTE_ID *attId, * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if ((unsigned)(len + EXPAND_SPARE) > (size_t)(-1) / sizeof(XML_Char)) { + if ((unsigned)(len + EXPAND_SPARE) > SIZE_MAX / sizeof(XML_Char)) { return XML_ERROR_NO_MEMORY; } #endif - b->uri - = (XML_Char *)MALLOC(parser, sizeof(XML_Char) * (len + EXPAND_SPARE)); + b->uri = MALLOC(parser, sizeof(XML_Char) * (len + EXPAND_SPARE)); if (! b->uri) { FREE(parser, b); return XML_ERROR_NO_MEMORY; @@ -4481,14 +4992,21 @@ doCdataSection(XML_Parser parser, const ENCODING *enc, const char **startPtr, /* LCOV_EXCL_STOP */ } - *eventPP = s = next; switch (parser->m_parsingStatus.parsing) { case XML_SUSPENDED: + *eventPP = next; *nextPtr = next; return XML_ERROR_NONE; case XML_FINISHED: + *eventPP = next; return XML_ERROR_ABORTED; + case XML_PARSING: + if (parser->m_reenter) { + return XML_ERROR_UNEXPECTED_STATE; // LCOV_EXCL_LINE + } + /* Fall through */ default:; + *eventPP = s = next; } } /* not reached */ @@ -4820,7 +5338,7 @@ entityValueInitProcessor(XML_Parser parser, const char *s, const char *end, } /* found end of entity value - can store it now */ return storeEntityValue(parser, parser->m_encoding, s, end, - XML_ACCOUNT_DIRECT); + XML_ACCOUNT_DIRECT, NULL); } else if (tok == XML_TOK_XML_DECL) { enum XML_Error result; result = processXmlDecl(parser, 0, start, next); @@ -4947,7 +5465,7 @@ entityValueProcessor(XML_Parser parser, const char *s, const char *end, break; } /* found end of entity value - can store it now */ - return storeEntityValue(parser, enc, s, end, XML_ACCOUNT_DIRECT); + return storeEntityValue(parser, enc, s, end, XML_ACCOUNT_DIRECT, NULL); } start = next; } @@ -5390,9 +5908,9 @@ doProlog(XML_Parser parser, const ENCODING *enc, const char *s, const char *end, #if XML_GE == 1 // This will store the given replacement text in // parser->m_declEntity->textPtr. - enum XML_Error result - = storeEntityValue(parser, enc, s + enc->minBytesPerChar, - next - enc->minBytesPerChar, XML_ACCOUNT_NONE); + enum XML_Error result = callStoreEntityValue( + parser, enc, s + enc->minBytesPerChar, next - enc->minBytesPerChar, + XML_ACCOUNT_NONE); if (parser->m_declEntity) { parser->m_declEntity->textPtr = poolStart(&dtd->entityValuePool); parser->m_declEntity->textLen @@ -5685,7 +6203,7 @@ doProlog(XML_Parser parser, const ENCODING *enc, const char *s, const char *end, return XML_ERROR_NO_MEMORY; } - char *const new_connector = (char *)REALLOC( + char *const new_connector = REALLOC( parser, parser->m_groupConnector, parser->m_groupSize *= 2); if (new_connector == NULL) { parser->m_groupSize /= 2; @@ -5700,20 +6218,22 @@ doProlog(XML_Parser parser, const ENCODING *enc, const char *s, const char *end, * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if (parser->m_groupSize > (size_t)(-1) / sizeof(int)) { + if (parser->m_groupSize > SIZE_MAX / sizeof(int)) { + parser->m_groupSize /= 2; return XML_ERROR_NO_MEMORY; } #endif - int *const new_scaff_index = (int *)REALLOC( + int *const new_scaff_index = REALLOC( parser, dtd->scaffIndex, parser->m_groupSize * sizeof(int)); - if (new_scaff_index == NULL) + if (new_scaff_index == NULL) { + parser->m_groupSize /= 2; return XML_ERROR_NO_MEMORY; + } dtd->scaffIndex = new_scaff_index; } } else { - parser->m_groupConnector - = (char *)MALLOC(parser, parser->m_groupSize = 32); + parser->m_groupConnector = MALLOC(parser, parser->m_groupSize = 32); if (! parser->m_groupConnector) { parser->m_groupSize = 0; return XML_ERROR_NO_MEMORY; @@ -5817,7 +6337,7 @@ doProlog(XML_Parser parser, const ENCODING *enc, const char *s, const char *end, enum XML_Error result; XML_Bool betweenDecl = (role == XML_ROLE_PARAM_ENTITY_REF ? XML_TRUE : XML_FALSE); - result = processInternalEntity(parser, entity, betweenDecl); + result = processEntity(parser, entity, betweenDecl, ENTITY_INTERNAL); if (result != XML_ERROR_NONE) return result; handleDefault = XML_FALSE; @@ -5876,8 +6396,11 @@ doProlog(XML_Parser parser, const ENCODING *enc, const char *s, const char *end, case XML_ROLE_CONTENT_EMPTY: if (dtd->in_eldecl) { if (parser->m_elementDeclHandler) { - XML_Content *content - = (XML_Content *)MALLOC(parser, sizeof(XML_Content)); + // NOTE: We are avoiding MALLOC(..) here to so that + // applications that are not using XML_FreeContentModel but + // plain free(..) or .free_fcn() to free the content model's + // memory are safe. + XML_Content *content = parser->m_mem.malloc_fcn(sizeof(XML_Content)); if (! content) return XML_ERROR_NO_MEMORY; content->quant = XML_CQUANT_NONE; @@ -5933,7 +6456,7 @@ doProlog(XML_Parser parser, const ENCODING *enc, const char *s, const char *end, name = el->name; dtd->scaffold[myindex].name = name; nameLen = 0; - for (; name[nameLen++];) + while (name[nameLen++]) ; /* Detect and prevent integer overflow */ @@ -6028,6 +6551,12 @@ doProlog(XML_Parser parser, const ENCODING *enc, const char *s, const char *end, return XML_ERROR_NONE; case XML_FINISHED: return XML_ERROR_ABORTED; + case XML_PARSING: + if (parser->m_reenter) { + *nextPtr = next; + return XML_ERROR_NONE; + } + /* Fall through */ default: s = next; tok = XmlPrologTok(enc, s, end, &next); @@ -6095,106 +6624,92 @@ epilogProcessor(XML_Parser parser, const char *s, const char *end, default: return XML_ERROR_JUNK_AFTER_DOC_ELEMENT; } - parser->m_eventPtr = s = next; switch (parser->m_parsingStatus.parsing) { case XML_SUSPENDED: + parser->m_eventPtr = next; *nextPtr = next; return XML_ERROR_NONE; case XML_FINISHED: + parser->m_eventPtr = next; return XML_ERROR_ABORTED; + case XML_PARSING: + if (parser->m_reenter) { + return XML_ERROR_UNEXPECTED_STATE; // LCOV_EXCL_LINE + } + /* Fall through */ default:; + parser->m_eventPtr = s = next; } } } static enum XML_Error -processInternalEntity(XML_Parser parser, ENTITY *entity, XML_Bool betweenDecl) { - const char *textStart, *textEnd; - const char *next; - enum XML_Error result; - OPEN_INTERNAL_ENTITY *openEntity; +processEntity(XML_Parser parser, ENTITY *entity, XML_Bool betweenDecl, + enum EntityType type) { + OPEN_INTERNAL_ENTITY *openEntity, **openEntityList, **freeEntityList; + switch (type) { + case ENTITY_INTERNAL: + parser->m_processor = internalEntityProcessor; + openEntityList = &parser->m_openInternalEntities; + freeEntityList = &parser->m_freeInternalEntities; + break; + case ENTITY_ATTRIBUTE: + openEntityList = &parser->m_openAttributeEntities; + freeEntityList = &parser->m_freeAttributeEntities; + break; + case ENTITY_VALUE: + openEntityList = &parser->m_openValueEntities; + freeEntityList = &parser->m_freeValueEntities; + break; + /* default case serves merely as a safety net in case of a + * wrong entityType. Therefore we exclude the following lines + * from the test coverage. + * + * LCOV_EXCL_START + */ + default: + // Should not reach here + assert(0); + /* LCOV_EXCL_STOP */ + } - if (parser->m_freeInternalEntities) { - openEntity = parser->m_freeInternalEntities; - parser->m_freeInternalEntities = openEntity->next; + if (*freeEntityList) { + openEntity = *freeEntityList; + *freeEntityList = openEntity->next; } else { - openEntity - = (OPEN_INTERNAL_ENTITY *)MALLOC(parser, sizeof(OPEN_INTERNAL_ENTITY)); + openEntity = MALLOC(parser, sizeof(OPEN_INTERNAL_ENTITY)); if (! openEntity) return XML_ERROR_NO_MEMORY; } entity->open = XML_TRUE; + entity->hasMore = XML_TRUE; #if XML_GE == 1 entityTrackingOnOpen(parser, entity, __LINE__); #endif entity->processed = 0; - openEntity->next = parser->m_openInternalEntities; - parser->m_openInternalEntities = openEntity; + openEntity->next = *openEntityList; + *openEntityList = openEntity; openEntity->entity = entity; + openEntity->type = type; openEntity->startTagLevel = parser->m_tagLevel; openEntity->betweenDecl = betweenDecl; openEntity->internalEventPtr = NULL; openEntity->internalEventEndPtr = NULL; - textStart = (const char *)entity->textPtr; - textEnd = (const char *)(entity->textPtr + entity->textLen); - /* Set a safe default value in case 'next' does not get set */ - next = textStart; - if (entity->is_param) { - int tok - = XmlPrologTok(parser->m_internalEncoding, textStart, textEnd, &next); - result = doProlog(parser, parser->m_internalEncoding, textStart, textEnd, - tok, next, &next, XML_FALSE, XML_FALSE, - XML_ACCOUNT_ENTITY_EXPANSION); - } else { - result = doContent(parser, parser->m_tagLevel, parser->m_internalEncoding, - textStart, textEnd, &next, XML_FALSE, - XML_ACCOUNT_ENTITY_EXPANSION); + // Only internal entities make use of the reenter flag + // therefore no need to set it for other entity types + if (type == ENTITY_INTERNAL) { + triggerReenter(parser); } - - if (result == XML_ERROR_NONE) { - if (textEnd != next && parser->m_parsingStatus.parsing == XML_SUSPENDED) { - entity->processed = (int)(next - textStart); - parser->m_processor = internalEntityProcessor; - } else if (parser->m_openInternalEntities->entity == entity) { -#if XML_GE == 1 - entityTrackingOnClose(parser, entity, __LINE__); -#endif /* XML_GE == 1 */ - entity->open = XML_FALSE; -/* BEGIN MOZILLA CHANGE (Bug 569229 - Deal with parser interruption from nested entities) */ -#if 0 - parser->m_openInternalEntities = openEntity->next; -#else - if (parser->m_openInternalEntities == openEntity) { - parser->m_openInternalEntities = openEntity->next; - } - else { - /* openEntity should be closed, but it contains an inner entity that is - still open. Remove openEntity from the m_openInternalEntities linked - list by looking for the inner entity in the list that links to - openEntity and fixing up its 'next' member - */ - OPEN_INTERNAL_ENTITY *innerOpenEntity = parser->m_openInternalEntities; - do { - if (innerOpenEntity->next == openEntity) { - innerOpenEntity->next = openEntity->next; - break; - } - } while ((innerOpenEntity = innerOpenEntity->next)); - } -#endif -/* END MOZILLA CHANGE */ - /* put openEntity back in list of free instances */ - openEntity->next = parser->m_freeInternalEntities; - parser->m_freeInternalEntities = openEntity; - } - } - return result; + return XML_ERROR_NONE; } static enum XML_Error PTRCALL internalEntityProcessor(XML_Parser parser, const char *s, const char *end, const char **nextPtr) { + UNUSED_P(s); + UNUSED_P(end); + UNUSED_P(nextPtr); ENTITY *entity; const char *textStart, *textEnd; const char *next; @@ -6204,72 +6719,71 @@ internalEntityProcessor(XML_Parser parser, const char *s, const char *end, return XML_ERROR_UNEXPECTED_STATE; entity = openEntity->entity; - textStart = ((const char *)entity->textPtr) + entity->processed; - textEnd = (const char *)(entity->textPtr + entity->textLen); - /* Set a safe default value in case 'next' does not get set */ - next = textStart; - if (entity->is_param) { - int tok - = XmlPrologTok(parser->m_internalEncoding, textStart, textEnd, &next); - result = doProlog(parser, parser->m_internalEncoding, textStart, textEnd, - tok, next, &next, XML_FALSE, XML_TRUE, - XML_ACCOUNT_ENTITY_EXPANSION); - } else { - result = doContent(parser, openEntity->startTagLevel, - parser->m_internalEncoding, textStart, textEnd, &next, - XML_FALSE, XML_ACCOUNT_ENTITY_EXPANSION); - } + // This will return early + if (entity->hasMore) { + textStart = ((const char *)entity->textPtr) + entity->processed; + textEnd = (const char *)(entity->textPtr + entity->textLen); + /* Set a safe default value in case 'next' does not get set */ + next = textStart; - if (result != XML_ERROR_NONE) + if (entity->is_param) { + int tok + = XmlPrologTok(parser->m_internalEncoding, textStart, textEnd, &next); + result = doProlog(parser, parser->m_internalEncoding, textStart, textEnd, + tok, next, &next, XML_FALSE, XML_FALSE, + XML_ACCOUNT_ENTITY_EXPANSION); + } else { + result = doContent(parser, openEntity->startTagLevel, + parser->m_internalEncoding, textStart, textEnd, &next, + XML_FALSE, XML_ACCOUNT_ENTITY_EXPANSION); + } + + if (result != XML_ERROR_NONE) + return result; + // Check if entity is complete, if not, mark down how much of it is + // processed + if (textEnd != next + && (parser->m_parsingStatus.parsing == XML_SUSPENDED + || (parser->m_parsingStatus.parsing == XML_PARSING + && parser->m_reenter))) { + entity->processed = (int)(next - (const char *)entity->textPtr); + return result; + } + + // Entity is complete. We cannot close it here since we need to first + // process its possible inner entities (which are added to the + // m_openInternalEntities during doProlog or doContent calls above) + entity->hasMore = XML_FALSE; + if (! entity->is_param + && (openEntity->startTagLevel != parser->m_tagLevel)) { + return XML_ERROR_ASYNC_ENTITY; + } + triggerReenter(parser); return result; + } // End of entity processing, "if" block will return here - if (textEnd != next && parser->m_parsingStatus.parsing == XML_SUSPENDED) { - entity->processed = (int)(next - (const char *)entity->textPtr); - return result; - } - + // Remove fully processed openEntity from open entity list. #if XML_GE == 1 entityTrackingOnClose(parser, entity, __LINE__); #endif + // openEntity is m_openInternalEntities' head, as we set it at the start of + // this function and we skipped doProlog and doContent calls with hasMore set + // to false. This means we can directly remove the head of + // m_openInternalEntities + assert(parser->m_openInternalEntities == openEntity); entity->open = XML_FALSE; - parser->m_openInternalEntities = openEntity->next; + parser->m_openInternalEntities = parser->m_openInternalEntities->next; + /* put openEntity back in list of free instances */ openEntity->next = parser->m_freeInternalEntities; parser->m_freeInternalEntities = openEntity; - // If there are more open entities we want to stop right here and have the - // upcoming call to XML_ResumeParser continue with entity content, or it would - // be ignored altogether. - if (parser->m_openInternalEntities != NULL - && parser->m_parsingStatus.parsing == XML_SUSPENDED) { - return XML_ERROR_NONE; - } - - if (entity->is_param) { - int tok; - parser->m_processor = prologProcessor; - tok = XmlPrologTok(parser->m_encoding, s, end, &next); - return doProlog(parser, parser->m_encoding, s, end, tok, next, nextPtr, - (XML_Bool)! parser->m_parsingStatus.finalBuffer, XML_TRUE, - XML_ACCOUNT_DIRECT); - } else { - parser->m_processor = contentProcessor; - /* see externalEntityContentProcessor vs contentProcessor */ - result = doContent(parser, parser->m_parentParser ? 1 : 0, - parser->m_encoding, s, end, nextPtr, - (XML_Bool)! parser->m_parsingStatus.finalBuffer, - XML_ACCOUNT_DIRECT); -/* BEGIN MOZILLA CHANGE (Bug 1746996 - Ensure that storeRawNames is always called) */ -#if 0 - if (result == XML_ERROR_NONE) { - if (! storeRawNames(parser)) - return XML_ERROR_NO_MEMORY; - } -#endif -/* END MOZILLA CHANGE */ - return result; + if (parser->m_openInternalEntities == NULL) { + parser->m_processor = entity->is_param ? prologProcessor : contentProcessor; } + triggerReenter(parser); + return XML_ERROR_NONE; } static enum XML_Error PTRCALL @@ -6285,8 +6799,70 @@ static enum XML_Error storeAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, const char *ptr, const char *end, STRING_POOL *pool, enum XML_Account account) { - enum XML_Error result - = appendAttributeValue(parser, enc, isCdata, ptr, end, pool, account); + const char *next = ptr; + enum XML_Error result = XML_ERROR_NONE; + + while (1) { + if (! parser->m_openAttributeEntities) { + result = appendAttributeValue(parser, enc, isCdata, next, end, pool, + account, &next); + } else { + OPEN_INTERNAL_ENTITY *const openEntity = parser->m_openAttributeEntities; + if (! openEntity) + return XML_ERROR_UNEXPECTED_STATE; + + ENTITY *const entity = openEntity->entity; + const char *const textStart + = ((const char *)entity->textPtr) + entity->processed; + const char *const textEnd + = (const char *)(entity->textPtr + entity->textLen); + /* Set a safe default value in case 'next' does not get set */ + const char *nextInEntity = textStart; + if (entity->hasMore) { + result = appendAttributeValue( + parser, parser->m_internalEncoding, isCdata, textStart, textEnd, + pool, XML_ACCOUNT_ENTITY_EXPANSION, &nextInEntity); + if (result != XML_ERROR_NONE) + break; + // Check if entity is complete, if not, mark down how much of it is + // processed. A XML_SUSPENDED check here is not required as + // appendAttributeValue will never suspend the parser. + if (textEnd != nextInEntity) { + entity->processed + = (int)(nextInEntity - (const char *)entity->textPtr); + continue; + } + + // Entity is complete. We cannot close it here since we need to first + // process its possible inner entities (which are added to the + // m_openAttributeEntities during appendAttributeValue) + entity->hasMore = XML_FALSE; + continue; + } // End of entity processing, "if" block skips the rest + + // Remove fully processed openEntity from open entity list. +#if XML_GE == 1 + entityTrackingOnClose(parser, entity, __LINE__); +#endif + // openEntity is m_openAttributeEntities' head, since we set it at the + // start of this function and because we skipped appendAttributeValue call + // with hasMore set to false. This means we can directly remove the head + // of m_openAttributeEntities + assert(parser->m_openAttributeEntities == openEntity); + entity->open = XML_FALSE; + parser->m_openAttributeEntities = parser->m_openAttributeEntities->next; + + /* put openEntity back in list of free instances */ + openEntity->next = parser->m_freeAttributeEntities; + parser->m_freeAttributeEntities = openEntity; + } + + // Break if an error occurred or there is nothing left to process + if (result || (parser->m_openAttributeEntities == NULL && end == next)) { + break; + } + } + if (result) return result; if (! isCdata && poolLength(pool) && poolLastChar(pool) == 0x20) @@ -6299,7 +6875,7 @@ storeAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, static enum XML_Error appendAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, const char *ptr, const char *end, STRING_POOL *pool, - enum XML_Account account) { + enum XML_Account account, const char **nextPtr) { DTD *const dtd = parser->m_dtd; /* save one level of indirection */ #ifndef XML_DTD UNUSED_P(account); @@ -6317,6 +6893,9 @@ appendAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, #endif switch (tok) { case XML_TOK_NONE: + if (nextPtr) { + *nextPtr = next; + } return XML_ERROR_NONE; case XML_TOK_INVALID: if (enc == parser->m_encoding) @@ -6370,7 +6949,7 @@ appendAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, case XML_TOK_ENTITY_REF: { const XML_Char *name; ENTITY *entity; - char checkEntityDecl; + bool checkEntityDecl; XML_Char ch = (XML_Char)XmlPredefinedEntityName( enc, ptr + enc->minBytesPerChar, next - enc->minBytesPerChar); if (ch) { @@ -6463,21 +7042,11 @@ appendAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, return XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF; } else { enum XML_Error result; - const XML_Char *textEnd = entity->textPtr + entity->textLen; - entity->open = XML_TRUE; -#if XML_GE == 1 - entityTrackingOnOpen(parser, entity, __LINE__); -#endif - result = appendAttributeValue(parser, parser->m_internalEncoding, - isCdata, (const char *)entity->textPtr, - (const char *)textEnd, pool, - XML_ACCOUNT_ENTITY_EXPANSION); -#if XML_GE == 1 - entityTrackingOnClose(parser, entity, __LINE__); -#endif - entity->open = XML_FALSE; - if (result) - return result; + result = processEntity(parser, entity, XML_FALSE, ENTITY_ATTRIBUTE); + if ((result == XML_ERROR_NONE) && (nextPtr != NULL)) { + *nextPtr = next; + } + return result; } } break; default: @@ -6506,7 +7075,7 @@ appendAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, static enum XML_Error storeEntityValue(XML_Parser parser, const ENCODING *enc, const char *entityTextPtr, const char *entityTextEnd, - enum XML_Account account) { + enum XML_Account account, const char **nextPtr) { DTD *const dtd = parser->m_dtd; /* save one level of indirection */ STRING_POOL *pool = &(dtd->entityValuePool); enum XML_Error result = XML_ERROR_NONE; @@ -6524,8 +7093,9 @@ storeEntityValue(XML_Parser parser, const ENCODING *enc, return XML_ERROR_NO_MEMORY; } + const char *next; for (;;) { - const char *next + next = entityTextPtr; /* XmlEntityValueTok doesn't always set the last arg */ int tok = XmlEntityValueTok(enc, entityTextPtr, entityTextEnd, &next); @@ -6587,16 +7157,8 @@ storeEntityValue(XML_Parser parser, const ENCODING *enc, } else dtd->keepProcessing = dtd->standalone; } else { - entity->open = XML_TRUE; - entityTrackingOnOpen(parser, entity, __LINE__); - result = storeEntityValue( - parser, parser->m_internalEncoding, (const char *)entity->textPtr, - (const char *)(entity->textPtr + entity->textLen), - XML_ACCOUNT_ENTITY_EXPANSION); - entityTrackingOnClose(parser, entity, __LINE__); - entity->open = XML_FALSE; - if (result) - goto endEntityValue; + result = processEntity(parser, entity, XML_FALSE, ENTITY_VALUE); + goto endEntityValue; } break; } @@ -6684,6 +7246,81 @@ endEntityValue: # ifdef XML_DTD parser->m_prologState.inEntityValue = oldInEntityValue; # endif /* XML_DTD */ + // If 'nextPtr' is given, it should be updated during the processing + if (nextPtr != NULL) { + *nextPtr = next; + } + return result; +} + +static enum XML_Error +callStoreEntityValue(XML_Parser parser, const ENCODING *enc, + const char *entityTextPtr, const char *entityTextEnd, + enum XML_Account account) { + const char *next = entityTextPtr; + enum XML_Error result = XML_ERROR_NONE; + while (1) { + if (! parser->m_openValueEntities) { + result + = storeEntityValue(parser, enc, next, entityTextEnd, account, &next); + } else { + OPEN_INTERNAL_ENTITY *const openEntity = parser->m_openValueEntities; + if (! openEntity) + return XML_ERROR_UNEXPECTED_STATE; + + ENTITY *const entity = openEntity->entity; + const char *const textStart + = ((const char *)entity->textPtr) + entity->processed; + const char *const textEnd + = (const char *)(entity->textPtr + entity->textLen); + /* Set a safe default value in case 'next' does not get set */ + const char *nextInEntity = textStart; + if (entity->hasMore) { + result = storeEntityValue(parser, parser->m_internalEncoding, textStart, + textEnd, XML_ACCOUNT_ENTITY_EXPANSION, + &nextInEntity); + if (result != XML_ERROR_NONE) + break; + // Check if entity is complete, if not, mark down how much of it is + // processed. A XML_SUSPENDED check here is not required as + // appendAttributeValue will never suspend the parser. + if (textEnd != nextInEntity) { + entity->processed + = (int)(nextInEntity - (const char *)entity->textPtr); + continue; + } + + // Entity is complete. We cannot close it here since we need to first + // process its possible inner entities (which are added to the + // m_openValueEntities during storeEntityValue) + entity->hasMore = XML_FALSE; + continue; + } // End of entity processing, "if" block skips the rest + + // Remove fully processed openEntity from open entity list. +# if XML_GE == 1 + entityTrackingOnClose(parser, entity, __LINE__); +# endif + // openEntity is m_openValueEntities' head, since we set it at the + // start of this function and because we skipped storeEntityValue call + // with hasMore set to false. This means we can directly remove the head + // of m_openValueEntities + assert(parser->m_openValueEntities == openEntity); + entity->open = XML_FALSE; + parser->m_openValueEntities = parser->m_openValueEntities->next; + + /* put openEntity back in list of free instances */ + openEntity->next = parser->m_freeValueEntities; + parser->m_freeValueEntities = openEntity; + } + + // Break if an error occurred or there is nothing left to process + if (result + || (parser->m_openValueEntities == NULL && entityTextEnd == next)) { + break; + } + } + return result; } @@ -6845,8 +7482,8 @@ defineAttribute(ELEMENT_TYPE *type, ATTRIBUTE_ID *attId, XML_Bool isCdata, if (type->nDefaultAtts == type->allocDefaultAtts) { if (type->allocDefaultAtts == 0) { type->allocDefaultAtts = 8; - type->defaultAtts = (DEFAULT_ATTRIBUTE *)MALLOC( - parser, type->allocDefaultAtts * sizeof(DEFAULT_ATTRIBUTE)); + type->defaultAtts + = MALLOC(parser, type->allocDefaultAtts * sizeof(DEFAULT_ATTRIBUTE)); if (! type->defaultAtts) { type->allocDefaultAtts = 0; return 0; @@ -6866,13 +7503,13 @@ defineAttribute(ELEMENT_TYPE *type, ATTRIBUTE_ID *attId, XML_Bool isCdata, * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if ((unsigned)count > (size_t)(-1) / sizeof(DEFAULT_ATTRIBUTE)) { + if ((unsigned)count > SIZE_MAX / sizeof(DEFAULT_ATTRIBUTE)) { return 0; } #endif - temp = (DEFAULT_ATTRIBUTE *)REALLOC(parser, type->defaultAtts, - (count * sizeof(DEFAULT_ATTRIBUTE))); + temp = REALLOC(parser, type->defaultAtts, + (count * sizeof(DEFAULT_ATTRIBUTE))); if (temp == NULL) return 0; type->allocDefaultAtts = count; @@ -7163,19 +7800,19 @@ normalizePublicId(XML_Char *publicId) { } static DTD * -dtdCreate(const XML_Memory_Handling_Suite *ms) { - DTD *p = ms->malloc_fcn(sizeof(DTD)); +dtdCreate(XML_Parser parser) { + DTD *p = MALLOC(parser, sizeof(DTD)); if (p == NULL) return p; - poolInit(&(p->pool), ms); - poolInit(&(p->entityValuePool), ms); - hashTableInit(&(p->generalEntities), ms); - hashTableInit(&(p->elementTypes), ms); - hashTableInit(&(p->attributeIds), ms); - hashTableInit(&(p->prefixes), ms); + poolInit(&(p->pool), parser); + poolInit(&(p->entityValuePool), parser); + hashTableInit(&(p->generalEntities), parser); + hashTableInit(&(p->elementTypes), parser); + hashTableInit(&(p->attributeIds), parser); + hashTableInit(&(p->prefixes), parser); #ifdef XML_DTD p->paramEntityRead = XML_FALSE; - hashTableInit(&(p->paramEntities), ms); + hashTableInit(&(p->paramEntities), parser); #endif /* XML_DTD */ p->defaultPrefix.name = NULL; p->defaultPrefix.binding = NULL; @@ -7197,7 +7834,7 @@ dtdCreate(const XML_Memory_Handling_Suite *ms) { /* BEGIN MOZILLA CHANGE (unused API) */ #if 0 static void -dtdReset(DTD *p, const XML_Memory_Handling_Suite *ms) { +dtdReset(DTD *p, XML_Parser parser) { HASH_TABLE_ITER iter; hashTableIterInit(&iter, &(p->elementTypes)); for (;;) { @@ -7205,7 +7842,7 @@ dtdReset(DTD *p, const XML_Memory_Handling_Suite *ms) { if (! e) break; if (e->allocDefaultAtts != 0) - ms->free_fcn(e->defaultAtts); + FREE(parser, e->defaultAtts); } hashTableClear(&(p->generalEntities)); #ifdef XML_DTD @@ -7222,9 +7859,9 @@ dtdReset(DTD *p, const XML_Memory_Handling_Suite *ms) { p->in_eldecl = XML_FALSE; - ms->free_fcn(p->scaffIndex); + FREE(parser, p->scaffIndex); p->scaffIndex = NULL; - ms->free_fcn(p->scaffold); + FREE(parser, p->scaffold); p->scaffold = NULL; p->scaffLevel = 0; @@ -7240,7 +7877,7 @@ dtdReset(DTD *p, const XML_Memory_Handling_Suite *ms) { /* END MOZILLA CHANGE */ static void -dtdDestroy(DTD *p, XML_Bool isDocEntity, const XML_Memory_Handling_Suite *ms) { +dtdDestroy(DTD *p, XML_Bool isDocEntity, XML_Parser parser) { HASH_TABLE_ITER iter; hashTableIterInit(&iter, &(p->elementTypes)); for (;;) { @@ -7248,7 +7885,7 @@ dtdDestroy(DTD *p, XML_Bool isDocEntity, const XML_Memory_Handling_Suite *ms) { if (! e) break; if (e->allocDefaultAtts != 0) - ms->free_fcn(e->defaultAtts); + FREE(parser, e->defaultAtts); } hashTableDestroy(&(p->generalEntities)); #ifdef XML_DTD @@ -7260,10 +7897,10 @@ dtdDestroy(DTD *p, XML_Bool isDocEntity, const XML_Memory_Handling_Suite *ms) { poolDestroy(&(p->pool)); poolDestroy(&(p->entityValuePool)); if (isDocEntity) { - ms->free_fcn(p->scaffIndex); - ms->free_fcn(p->scaffold); + FREE(parser, p->scaffIndex); + FREE(parser, p->scaffold); } - ms->free_fcn(p); + FREE(parser, p); } /* Do a deep copy of the DTD. Return 0 for out of memory, non-zero otherwise. @@ -7271,7 +7908,7 @@ dtdDestroy(DTD *p, XML_Bool isDocEntity, const XML_Memory_Handling_Suite *ms) { */ static int dtdCopy(XML_Parser oldParser, DTD *newDtd, const DTD *oldDtd, - const XML_Memory_Handling_Suite *ms) { + XML_Parser parser) { HASH_TABLE_ITER iter; /* Copy the prefix table. */ @@ -7346,13 +7983,12 @@ dtdCopy(XML_Parser oldParser, DTD *newDtd, const DTD *oldDtd, * from -Wtype-limits on platforms where * sizeof(int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if ((size_t)oldE->nDefaultAtts - > ((size_t)(-1) / sizeof(DEFAULT_ATTRIBUTE))) { + if ((size_t)oldE->nDefaultAtts > SIZE_MAX / sizeof(DEFAULT_ATTRIBUTE)) { return 0; } #endif newE->defaultAtts - = ms->malloc_fcn(oldE->nDefaultAtts * sizeof(DEFAULT_ATTRIBUTE)); + = MALLOC(parser, oldE->nDefaultAtts * sizeof(DEFAULT_ATTRIBUTE)); if (! newE->defaultAtts) { return 0; } @@ -7514,7 +8150,7 @@ lookup(XML_Parser parser, HASH_TABLE *table, KEY name, size_t createSize) { /* table->size is a power of 2 */ table->size = (size_t)1 << INIT_POWER; tsize = table->size * sizeof(NAMED *); - table->v = table->mem->malloc_fcn(tsize); + table->v = MALLOC(table->parser, tsize); if (! table->v) { table->size = 0; return NULL; @@ -7549,12 +8185,12 @@ lookup(XML_Parser parser, HASH_TABLE *table, KEY name, size_t createSize) { unsigned long newMask = (unsigned long)newSize - 1; /* Detect and prevent integer overflow */ - if (newSize > (size_t)(-1) / sizeof(NAMED *)) { + if (newSize > SIZE_MAX / sizeof(NAMED *)) { return NULL; } size_t tsize = newSize * sizeof(NAMED *); - NAMED **newV = table->mem->malloc_fcn(tsize); + NAMED **newV = MALLOC(table->parser, tsize); if (! newV) return NULL; memset(newV, 0, tsize); @@ -7570,7 +8206,7 @@ lookup(XML_Parser parser, HASH_TABLE *table, KEY name, size_t createSize) { } newV[j] = table->v[i]; } - table->mem->free_fcn(table->v); + FREE(table->parser, table->v); table->v = newV; table->power = newPower; table->size = newSize; @@ -7583,7 +8219,7 @@ lookup(XML_Parser parser, HASH_TABLE *table, KEY name, size_t createSize) { } } } - table->v[i] = table->mem->malloc_fcn(createSize); + table->v[i] = MALLOC(table->parser, createSize); if (! table->v[i]) return NULL; memset(table->v[i], 0, createSize); @@ -7598,7 +8234,7 @@ static void FASTCALL hashTableClear(HASH_TABLE *table) { size_t i; for (i = 0; i < table->size; i++) { - table->mem->free_fcn(table->v[i]); + FREE(table->parser, table->v[i]); table->v[i] = NULL; } table->used = 0; @@ -7610,17 +8246,17 @@ static void FASTCALL hashTableDestroy(HASH_TABLE *table) { size_t i; for (i = 0; i < table->size; i++) - table->mem->free_fcn(table->v[i]); - table->mem->free_fcn(table->v); + FREE(table->parser, table->v[i]); + FREE(table->parser, table->v); } static void FASTCALL -hashTableInit(HASH_TABLE *p, const XML_Memory_Handling_Suite *ms) { +hashTableInit(HASH_TABLE *p, XML_Parser parser) { p->power = 0; p->size = 0; p->used = 0; p->v = NULL; - p->mem = ms; + p->parser = parser; } static void FASTCALL @@ -7640,13 +8276,13 @@ hashTableIterNext(HASH_TABLE_ITER *iter) { } static void FASTCALL -poolInit(STRING_POOL *pool, const XML_Memory_Handling_Suite *ms) { +poolInit(STRING_POOL *pool, XML_Parser parser) { pool->blocks = NULL; pool->freeBlocks = NULL; pool->start = NULL; pool->ptr = NULL; pool->end = NULL; - pool->mem = ms; + pool->parser = parser; } static void FASTCALL @@ -7673,13 +8309,13 @@ poolDestroy(STRING_POOL *pool) { BLOCK *p = pool->blocks; while (p) { BLOCK *tem = p->next; - pool->mem->free_fcn(p); + FREE(pool->parser, p); p = tem; } p = pool->freeBlocks; while (p) { BLOCK *tem = p->next; - pool->mem->free_fcn(p); + FREE(pool->parser, p); p = tem; } } @@ -7789,7 +8425,7 @@ poolBytesToAllocateFor(int blockSize) { static XML_Bool FASTCALL poolGrow(STRING_POOL *pool) { if (pool->freeBlocks) { - if (pool->start == 0) { + if (pool->start == NULL) { pool->blocks = pool->freeBlocks; pool->freeBlocks = pool->freeBlocks->next; pool->blocks->next = NULL; @@ -7834,8 +8470,7 @@ poolGrow(STRING_POOL *pool) { if (bytesToAllocate == 0) return XML_FALSE; - temp = (BLOCK *)pool->mem->realloc_fcn(pool->blocks, - (unsigned)bytesToAllocate); + temp = REALLOC(pool->parser, pool->blocks, bytesToAllocate); if (temp == NULL) return XML_FALSE; pool->blocks = temp; @@ -7875,7 +8510,7 @@ poolGrow(STRING_POOL *pool) { if (bytesToAllocate == 0) return XML_FALSE; - tem = pool->mem->malloc_fcn(bytesToAllocate); + tem = MALLOC(pool->parser, bytesToAllocate); if (! tem) return XML_FALSE; tem->size = blockSize; @@ -7902,16 +8537,21 @@ nextScaffoldPart(XML_Parser parser) { * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if (parser->m_groupSize > ((size_t)(-1) / sizeof(int))) { + if (parser->m_groupSize > SIZE_MAX / sizeof(int)) { return -1; } #endif - dtd->scaffIndex = (int *)MALLOC(parser, parser->m_groupSize * sizeof(int)); + dtd->scaffIndex = MALLOC(parser, parser->m_groupSize * sizeof(int)); if (! dtd->scaffIndex) return -1; dtd->scaffIndex[0] = 0; } + // Will casting to int be safe further down? + if (dtd->scaffCount > INT_MAX) { + return -1; + } + if (dtd->scaffCount >= dtd->scaffSize) { CONTENT_SCAFFOLD *temp; if (dtd->scaffold) { @@ -7924,26 +8564,25 @@ nextScaffoldPart(XML_Parser parser) { * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if (dtd->scaffSize > (size_t)(-1) / 2u / sizeof(CONTENT_SCAFFOLD)) { + if (dtd->scaffSize > SIZE_MAX / 2u / sizeof(CONTENT_SCAFFOLD)) { return -1; } #endif - temp = (CONTENT_SCAFFOLD *)REALLOC( - parser, dtd->scaffold, dtd->scaffSize * 2 * sizeof(CONTENT_SCAFFOLD)); + temp = REALLOC(parser, dtd->scaffold, + dtd->scaffSize * 2 * sizeof(CONTENT_SCAFFOLD)); if (temp == NULL) return -1; dtd->scaffSize *= 2; } else { - temp = (CONTENT_SCAFFOLD *)MALLOC(parser, INIT_SCAFFOLD_ELEMENTS - * sizeof(CONTENT_SCAFFOLD)); + temp = MALLOC(parser, INIT_SCAFFOLD_ELEMENTS * sizeof(CONTENT_SCAFFOLD)); if (temp == NULL) return -1; dtd->scaffSize = INIT_SCAFFOLD_ELEMENTS; } dtd->scaffold = temp; } - next = dtd->scaffCount++; + next = (int)dtd->scaffCount++; me = &dtd->scaffold[next]; if (dtd->scaffLevel) { CONTENT_SCAFFOLD *parent @@ -7975,22 +8614,25 @@ build_model(XML_Parser parser) { * from -Wtype-limits on platforms where * sizeof(unsigned int) < sizeof(size_t), e.g. on x86_64. */ #if UINT_MAX >= SIZE_MAX - if (dtd->scaffCount > (size_t)(-1) / sizeof(XML_Content)) { + if (dtd->scaffCount > SIZE_MAX / sizeof(XML_Content)) { return NULL; } - if (dtd->contentStringLen > (size_t)(-1) / sizeof(XML_Char)) { + if (dtd->contentStringLen > SIZE_MAX / sizeof(XML_Char)) { return NULL; } #endif if (dtd->scaffCount * sizeof(XML_Content) - > (size_t)(-1) - dtd->contentStringLen * sizeof(XML_Char)) { + > SIZE_MAX - dtd->contentStringLen * sizeof(XML_Char)) { return NULL; } const size_t allocsize = (dtd->scaffCount * sizeof(XML_Content) + (dtd->contentStringLen * sizeof(XML_Char))); - ret = (XML_Content *)MALLOC(parser, allocsize); + // NOTE: We are avoiding MALLOC(..) here to so that + // applications that are not using XML_FreeContentModel but plain + // free(..) or .free_fcn() to free the content model's memory are safe. + ret = parser->m_mem.malloc_fcn(allocsize); if (! ret) return NULL; @@ -8111,7 +8753,7 @@ getElementType(XML_Parser parser, const ENCODING *enc, const char *ptr, } static XML_Char * -copyString(const XML_Char *s, const XML_Memory_Handling_Suite *memsuite) { +copyString(const XML_Char *s, XML_Parser parser) { size_t charsRequired = 0; XML_Char *result; @@ -8123,7 +8765,7 @@ copyString(const XML_Char *s, const XML_Memory_Handling_Suite *memsuite) { charsRequired++; /* Now allocate space for the copy */ - result = memsuite->malloc_fcn(charsRequired * sizeof(XML_Char)); + result = MALLOC(parser, charsRequired * sizeof(XML_Char)); if (result == NULL) return NULL; /* Copy the original into place */ @@ -8142,10 +8784,10 @@ accountingGetCurrentAmplification(XML_Parser rootParser) { + rootParser->m_accounting.countBytesIndirect; const float amplificationFactor = rootParser->m_accounting.countBytesDirect - ? (countBytesOutput + ? ((float)countBytesOutput / (float)(rootParser->m_accounting.countBytesDirect)) - : ((lenOfShortestInclude - + rootParser->m_accounting.countBytesIndirect) + : ((float)(lenOfShortestInclude + + rootParser->m_accounting.countBytesIndirect) / (float)lenOfShortestInclude); assert(! rootParser->m_parentParser); return amplificationFactor; @@ -8318,7 +8960,7 @@ entityTrackingReportStats(XML_Parser rootParser, ENTITY *entity, (void *)rootParser, rootParser->m_entity_stats.countEverOpened, rootParser->m_entity_stats.currentDepth, rootParser->m_entity_stats.maximumDepthSeen, - (rootParser->m_entity_stats.currentDepth - 1) * 2, "", + ((int)rootParser->m_entity_stats.currentDepth - 1) * 2, "", entity->is_param ? "%" : "&", entityName, action, entity->textLen, sourceLine); } @@ -8357,6 +8999,8 @@ entityTrackingOnClose(XML_Parser originParser, ENTITY *entity, int sourceLine) { /* END MOZILLA CHANGE */ } +#endif /* XML_GE == 1 */ + static XML_Parser getRootParserOf(XML_Parser parser, unsigned int *outLevelDiff) { XML_Parser rootParser = parser; @@ -8372,6 +9016,8 @@ getRootParserOf(XML_Parser parser, unsigned int *outLevelDiff) { return rootParser; } +#if XML_GE == 1 + /* BEGIN MOZILLA CHANGE (don't report debug information) */ #if 0 const char * @@ -8889,11 +9535,13 @@ unsignedCharToPrintable(unsigned char c) { return "\\xFE"; case 255: return "\\xFF"; + // LCOV_EXCL_START default: assert(0); /* never gets here */ return "dead code"; } assert(0); /* never gets here */ + // LCOV_EXCL_STOP } #endif /* END MOZILLA CHANGE */ diff --git a/icecat/parser/expat/expat/lib/xmlrole.c b/icecat/parser/expat/expat/lib/xmlrole.c index 2c48bf4086..d56bee82dd 100644 --- a/icecat/parser/expat/expat/lib/xmlrole.c +++ b/icecat/parser/expat/expat/lib/xmlrole.c @@ -16,6 +16,7 @@ Copyright (c) 2017 Rhodri James Copyright (c) 2019 David Loffredo Copyright (c) 2021 Donghee Na + Copyright (c) 2025 Alfonso Gregory Licensed under the MIT license: Permission is hereby granted, free of charge, to any person obtaining @@ -46,7 +47,6 @@ # include "winconfig.h" #endif -#include "expat_external.h" #include "internal.h" #include "xmlrole.h" #include "ascii.h" diff --git a/icecat/parser/expat/expat/lib/xmlrole.h b/icecat/parser/expat/expat/lib/xmlrole.h index a7904274c9..9d0d4ff11b 100644 --- a/icecat/parser/expat/expat/lib/xmlrole.h +++ b/icecat/parser/expat/expat/lib/xmlrole.h @@ -10,7 +10,7 @@ Copyright (c) 2000 Clark Cooper Copyright (c) 2002 Karl Waclawek Copyright (c) 2002 Fred L. Drake, Jr. - Copyright (c) 2017-2024 Sebastian Pipping + Copyright (c) 2017-2025 Sebastian Pipping Licensed under the MIT license: Permission is hereby granted, free of charge, to any person obtaining @@ -34,19 +34,13 @@ */ #ifndef XmlRole_INCLUDED -#define XmlRole_INCLUDED 1 +# define XmlRole_INCLUDED 1 -#ifdef __VMS -/* 0 1 2 3 0 1 2 3 - 1234567890123456789012345678901 1234567890123456789012345678901 */ -# define XmlPrologStateInitExternalEntity XmlPrologStateInitExternalEnt -#endif +# include "xmltok.h" -#include "xmltok.h" - -#ifdef __cplusplus +# ifdef __cplusplus extern "C" { -#endif +# endif enum { XML_ROLE_ERROR = -1, @@ -107,11 +101,11 @@ enum { XML_ROLE_CONTENT_ELEMENT_PLUS, XML_ROLE_PI, XML_ROLE_COMMENT, -#ifdef XML_DTD +# ifdef XML_DTD XML_ROLE_TEXT_DECL, XML_ROLE_IGNORE_SECT, XML_ROLE_INNER_PARAM_ENTITY_REF, -#endif /* XML_DTD */ +# endif /* XML_DTD */ XML_ROLE_PARAM_ENTITY_REF }; @@ -120,23 +114,23 @@ typedef struct prolog_state { const char *end, const ENCODING *enc); unsigned level; int role_none; -#ifdef XML_DTD +# ifdef XML_DTD unsigned includeLevel; int documentEntity; int inEntityValue; -#endif /* XML_DTD */ +# endif /* XML_DTD */ } PROLOG_STATE; void XmlPrologStateInit(PROLOG_STATE *state); -#ifdef XML_DTD +# ifdef XML_DTD void XmlPrologStateInitExternalEntity(PROLOG_STATE *state); -#endif /* XML_DTD */ +# endif /* XML_DTD */ -#define XmlTokenRole(state, tok, ptr, end, enc) \ - (((state)->handler)(state, tok, ptr, end, enc)) +# define XmlTokenRole(state, tok, ptr, end, enc) \ + (((state)->handler)(state, tok, ptr, end, enc)) -#ifdef __cplusplus +# ifdef __cplusplus } -#endif +# endif #endif /* not XmlRole_INCLUDED */ diff --git a/icecat/parser/expat/expat/lib/xmltok.c b/icecat/parser/expat/expat/lib/xmltok.c index a240eb1c93..3f2858b970 100644 --- a/icecat/parser/expat/expat/lib/xmltok.c +++ b/icecat/parser/expat/expat/lib/xmltok.c @@ -24,6 +24,7 @@ Copyright (c) 2022 Martin Ettl Copyright (c) 2022 Sean McBride Copyright (c) 2023 Hanno Böck + Copyright (c) 2025 Alfonso Gregory Licensed under the MIT license: Permission is hereby granted, free of charge, to any person obtaining @@ -56,7 +57,6 @@ # include "winconfig.h" #endif -#include "expat_external.h" #include "internal.h" #include "xmltok.h" #include "nametab.h" @@ -1409,7 +1409,7 @@ unknown_toUtf16(const ENCODING *enc, const char **fromP, const char *fromLim, } ENCODING * -XmlInitUnknownEncoding(void *mem, int *table, CONVERTER convert, +XmlInitUnknownEncoding(void *mem, const int *table, CONVERTER convert, void *userData) { int i; struct unknown_encoding *e = (struct unknown_encoding *)mem; @@ -1672,7 +1672,7 @@ initScan(const ENCODING *const *encodingTable, const INIT_ENCODING *enc, # undef ns ENCODING * -XmlInitUnknownEncodingNS(void *mem, int *table, CONVERTER convert, +XmlInitUnknownEncodingNS(void *mem, const int *table, CONVERTER convert, void *userData) { ENCODING *enc = XmlInitUnknownEncoding(mem, table, convert, userData); if (enc) diff --git a/icecat/parser/expat/expat/lib/xmltok.h b/icecat/parser/expat/expat/lib/xmltok.h index c51fce1ec1..79a9fb7687 100644 --- a/icecat/parser/expat/expat/lib/xmltok.h +++ b/icecat/parser/expat/expat/lib/xmltok.h @@ -35,113 +35,113 @@ */ #ifndef XmlTok_INCLUDED -#define XmlTok_INCLUDED 1 +# define XmlTok_INCLUDED 1 -#ifdef __cplusplus +# ifdef __cplusplus extern "C" { -#endif +# endif /* The following token may be returned by XmlContentTok */ -#define XML_TOK_TRAILING_RSQB \ - -5 /* ] or ]] at the end of the scan; might be \ - start of illegal ]]> sequence */ +# define XML_TOK_TRAILING_RSQB \ + -5 /* ] or ]] at the end of the scan; might be \ + start of illegal ]]> sequence */ /* The following tokens may be returned by both XmlPrologTok and XmlContentTok. */ -#define XML_TOK_NONE -4 /* The string to be scanned is empty */ -#define XML_TOK_TRAILING_CR \ - -3 /* A CR at the end of the scan; \ - might be part of CRLF sequence */ -#define XML_TOK_PARTIAL_CHAR -2 /* only part of a multibyte sequence */ -#define XML_TOK_PARTIAL -1 /* only part of a token */ -#define XML_TOK_INVALID 0 +# define XML_TOK_NONE -4 /* The string to be scanned is empty */ +# define XML_TOK_TRAILING_CR \ + -3 /* A CR at the end of the scan; \ + might be part of CRLF sequence */ +# define XML_TOK_PARTIAL_CHAR -2 /* only part of a multibyte sequence */ +# define XML_TOK_PARTIAL -1 /* only part of a token */ +# define XML_TOK_INVALID 0 /* The following tokens are returned by XmlContentTok; some are also returned by XmlAttributeValueTok, XmlEntityTok, XmlCdataSectionTok. */ -#define XML_TOK_START_TAG_WITH_ATTS 1 -#define XML_TOK_START_TAG_NO_ATTS 2 -#define XML_TOK_EMPTY_ELEMENT_WITH_ATTS 3 /* empty element tag */ -#define XML_TOK_EMPTY_ELEMENT_NO_ATTS 4 -#define XML_TOK_END_TAG 5 -#define XML_TOK_DATA_CHARS 6 -#define XML_TOK_DATA_NEWLINE 7 -#define XML_TOK_CDATA_SECT_OPEN 8 -#define XML_TOK_ENTITY_REF 9 -#define XML_TOK_CHAR_REF 10 /* numeric character reference */ +# define XML_TOK_START_TAG_WITH_ATTS 1 +# define XML_TOK_START_TAG_NO_ATTS 2 +# define XML_TOK_EMPTY_ELEMENT_WITH_ATTS 3 /* empty element tag */ +# define XML_TOK_EMPTY_ELEMENT_NO_ATTS 4 +# define XML_TOK_END_TAG 5 +# define XML_TOK_DATA_CHARS 6 +# define XML_TOK_DATA_NEWLINE 7 +# define XML_TOK_CDATA_SECT_OPEN 8 +# define XML_TOK_ENTITY_REF 9 +# define XML_TOK_CHAR_REF 10 /* numeric character reference */ /* The following tokens may be returned by both XmlPrologTok and XmlContentTok. */ -#define XML_TOK_PI 11 /* processing instruction */ -#define XML_TOK_XML_DECL 12 /* XML decl or text decl */ -#define XML_TOK_COMMENT 13 -#define XML_TOK_BOM 14 /* Byte order mark */ +# define XML_TOK_PI 11 /* processing instruction */ +# define XML_TOK_XML_DECL 12 /* XML decl or text decl */ +# define XML_TOK_COMMENT 13 +# define XML_TOK_BOM 14 /* Byte order mark */ /* The following tokens are returned only by XmlPrologTok */ -#define XML_TOK_PROLOG_S 15 -#define XML_TOK_DECL_OPEN 16 /* */ -#define XML_TOK_NAME 18 -#define XML_TOK_NMTOKEN 19 -#define XML_TOK_POUND_NAME 20 /* #name */ -#define XML_TOK_OR 21 /* | */ -#define XML_TOK_PERCENT 22 -#define XML_TOK_OPEN_PAREN 23 -#define XML_TOK_CLOSE_PAREN 24 -#define XML_TOK_OPEN_BRACKET 25 -#define XML_TOK_CLOSE_BRACKET 26 -#define XML_TOK_LITERAL 27 -#define XML_TOK_PARAM_ENTITY_REF 28 -#define XML_TOK_INSTANCE_START 29 +# define XML_TOK_PROLOG_S 15 +# define XML_TOK_DECL_OPEN 16 /* */ +# define XML_TOK_NAME 18 +# define XML_TOK_NMTOKEN 19 +# define XML_TOK_POUND_NAME 20 /* #name */ +# define XML_TOK_OR 21 /* | */ +# define XML_TOK_PERCENT 22 +# define XML_TOK_OPEN_PAREN 23 +# define XML_TOK_CLOSE_PAREN 24 +# define XML_TOK_OPEN_BRACKET 25 +# define XML_TOK_CLOSE_BRACKET 26 +# define XML_TOK_LITERAL 27 +# define XML_TOK_PARAM_ENTITY_REF 28 +# define XML_TOK_INSTANCE_START 29 /* The following occur only in element type declarations */ -#define XML_TOK_NAME_QUESTION 30 /* name? */ -#define XML_TOK_NAME_ASTERISK 31 /* name* */ -#define XML_TOK_NAME_PLUS 32 /* name+ */ -#define XML_TOK_COND_SECT_OPEN 33 /* */ -#define XML_TOK_CLOSE_PAREN_QUESTION 35 /* )? */ -#define XML_TOK_CLOSE_PAREN_ASTERISK 36 /* )* */ -#define XML_TOK_CLOSE_PAREN_PLUS 37 /* )+ */ -#define XML_TOK_COMMA 38 +# define XML_TOK_NAME_QUESTION 30 /* name? */ +# define XML_TOK_NAME_ASTERISK 31 /* name* */ +# define XML_TOK_NAME_PLUS 32 /* name+ */ +# define XML_TOK_COND_SECT_OPEN 33 /* */ +# define XML_TOK_CLOSE_PAREN_QUESTION 35 /* )? */ +# define XML_TOK_CLOSE_PAREN_ASTERISK 36 /* )* */ +# define XML_TOK_CLOSE_PAREN_PLUS 37 /* )+ */ +# define XML_TOK_COMMA 38 /* The following token is returned only by XmlAttributeValueTok */ -#define XML_TOK_ATTRIBUTE_VALUE_S 39 +# define XML_TOK_ATTRIBUTE_VALUE_S 39 /* The following token is returned only by XmlCdataSectionTok */ -#define XML_TOK_CDATA_SECT_CLOSE 40 +# define XML_TOK_CDATA_SECT_CLOSE 40 /* With namespace processing this is returned by XmlPrologTok for a name with a colon. */ -#define XML_TOK_PREFIXED_NAME 41 +# define XML_TOK_PREFIXED_NAME 41 -#ifdef XML_DTD -# define XML_TOK_IGNORE_SECT 42 -#endif /* XML_DTD */ +# ifdef XML_DTD +# define XML_TOK_IGNORE_SECT 42 +# endif /* XML_DTD */ -#ifdef XML_DTD -# define XML_N_STATES 4 -#else /* not XML_DTD */ -# define XML_N_STATES 3 -#endif /* not XML_DTD */ +# ifdef XML_DTD +# define XML_N_STATES 4 +# else /* not XML_DTD */ +# define XML_N_STATES 3 +# endif /* not XML_DTD */ -#define XML_PROLOG_STATE 0 -#define XML_CONTENT_STATE 1 -#define XML_CDATA_SECTION_STATE 2 -#ifdef XML_DTD -# define XML_IGNORE_SECTION_STATE 3 -#endif /* XML_DTD */ +# define XML_PROLOG_STATE 0 +# define XML_CONTENT_STATE 1 +# define XML_CDATA_SECTION_STATE 2 +# ifdef XML_DTD +# define XML_IGNORE_SECTION_STATE 3 +# endif /* XML_DTD */ -#define XML_N_LITERAL_TYPES 2 -#define XML_ATTRIBUTE_VALUE_LITERAL 0 -#define XML_ENTITY_VALUE_LITERAL 1 +# define XML_N_LITERAL_TYPES 2 +# define XML_ATTRIBUTE_VALUE_LITERAL 0 +# define XML_ENTITY_VALUE_LITERAL 1 /* The size of the buffer passed to XmlUtf8Encode must be at least this. */ -#define XML_UTF8_ENCODE_MAX 4 +# define XML_UTF8_ENCODE_MAX 4 /* The size of the buffer passed to XmlUtf16Encode must be at least this. */ -#define XML_UTF16_ENCODE_MAX 2 +# define XML_UTF16_ENCODE_MAX 2 typedef struct position { /* first line and first column are 0 not 1 */ @@ -220,63 +220,63 @@ struct encoding { the prolog outside literals, comments and processing instructions. */ -#define XmlTok(enc, state, ptr, end, nextTokPtr) \ - (((enc)->scanners[state])(enc, ptr, end, nextTokPtr)) +# define XmlTok(enc, state, ptr, end, nextTokPtr) \ + (((enc)->scanners[state])(enc, ptr, end, nextTokPtr)) -#define XmlPrologTok(enc, ptr, end, nextTokPtr) \ - XmlTok(enc, XML_PROLOG_STATE, ptr, end, nextTokPtr) +# define XmlPrologTok(enc, ptr, end, nextTokPtr) \ + XmlTok(enc, XML_PROLOG_STATE, ptr, end, nextTokPtr) -#define XmlContentTok(enc, ptr, end, nextTokPtr) \ - XmlTok(enc, XML_CONTENT_STATE, ptr, end, nextTokPtr) +# define XmlContentTok(enc, ptr, end, nextTokPtr) \ + XmlTok(enc, XML_CONTENT_STATE, ptr, end, nextTokPtr) -#define XmlCdataSectionTok(enc, ptr, end, nextTokPtr) \ - XmlTok(enc, XML_CDATA_SECTION_STATE, ptr, end, nextTokPtr) +# define XmlCdataSectionTok(enc, ptr, end, nextTokPtr) \ + XmlTok(enc, XML_CDATA_SECTION_STATE, ptr, end, nextTokPtr) -#ifdef XML_DTD +# ifdef XML_DTD -# define XmlIgnoreSectionTok(enc, ptr, end, nextTokPtr) \ - XmlTok(enc, XML_IGNORE_SECTION_STATE, ptr, end, nextTokPtr) +# define XmlIgnoreSectionTok(enc, ptr, end, nextTokPtr) \ + XmlTok(enc, XML_IGNORE_SECTION_STATE, ptr, end, nextTokPtr) -#endif /* XML_DTD */ +# endif /* XML_DTD */ /* This is used for performing a 2nd-level tokenization on the content of a literal that has already been returned by XmlTok. */ -#define XmlLiteralTok(enc, literalType, ptr, end, nextTokPtr) \ - (((enc)->literalScanners[literalType])(enc, ptr, end, nextTokPtr)) +# define XmlLiteralTok(enc, literalType, ptr, end, nextTokPtr) \ + (((enc)->literalScanners[literalType])(enc, ptr, end, nextTokPtr)) -#define XmlAttributeValueTok(enc, ptr, end, nextTokPtr) \ - XmlLiteralTok(enc, XML_ATTRIBUTE_VALUE_LITERAL, ptr, end, nextTokPtr) +# define XmlAttributeValueTok(enc, ptr, end, nextTokPtr) \ + XmlLiteralTok(enc, XML_ATTRIBUTE_VALUE_LITERAL, ptr, end, nextTokPtr) -#define XmlEntityValueTok(enc, ptr, end, nextTokPtr) \ - XmlLiteralTok(enc, XML_ENTITY_VALUE_LITERAL, ptr, end, nextTokPtr) +# define XmlEntityValueTok(enc, ptr, end, nextTokPtr) \ + XmlLiteralTok(enc, XML_ENTITY_VALUE_LITERAL, ptr, end, nextTokPtr) -#define XmlNameMatchesAscii(enc, ptr1, end1, ptr2) \ - (((enc)->nameMatchesAscii)(enc, ptr1, end1, ptr2)) +# define XmlNameMatchesAscii(enc, ptr1, end1, ptr2) \ + (((enc)->nameMatchesAscii)(enc, ptr1, end1, ptr2)) -#define XmlNameLength(enc, ptr) (((enc)->nameLength)(enc, ptr)) +# define XmlNameLength(enc, ptr) (((enc)->nameLength)(enc, ptr)) -#define XmlSkipS(enc, ptr) (((enc)->skipS)(enc, ptr)) +# define XmlSkipS(enc, ptr) (((enc)->skipS)(enc, ptr)) -#define XmlGetAttributes(enc, ptr, attsMax, atts) \ - (((enc)->getAtts)(enc, ptr, attsMax, atts)) +# define XmlGetAttributes(enc, ptr, attsMax, atts) \ + (((enc)->getAtts)(enc, ptr, attsMax, atts)) -#define XmlCharRefNumber(enc, ptr) (((enc)->charRefNumber)(enc, ptr)) +# define XmlCharRefNumber(enc, ptr) (((enc)->charRefNumber)(enc, ptr)) -#define XmlPredefinedEntityName(enc, ptr, end) \ - (((enc)->predefinedEntityName)(enc, ptr, end)) +# define XmlPredefinedEntityName(enc, ptr, end) \ + (((enc)->predefinedEntityName)(enc, ptr, end)) -#define XmlUpdatePosition(enc, ptr, end, pos) \ - (((enc)->updatePosition)(enc, ptr, end, pos)) +# define XmlUpdatePosition(enc, ptr, end, pos) \ + (((enc)->updatePosition)(enc, ptr, end, pos)) -#define XmlIsPublicId(enc, ptr, end, badPtr) \ - (((enc)->isPublicId)(enc, ptr, end, badPtr)) +# define XmlIsPublicId(enc, ptr, end, badPtr) \ + (((enc)->isPublicId)(enc, ptr, end, badPtr)) -#define XmlUtf8Convert(enc, fromP, fromLim, toP, toLim) \ - (((enc)->utf8Convert)(enc, fromP, fromLim, toP, toLim)) +# define XmlUtf8Convert(enc, fromP, fromLim, toP, toLim) \ + (((enc)->utf8Convert)(enc, fromP, fromLim, toP, toLim)) -#define XmlUtf16Convert(enc, fromP, fromLim, toP, toLim) \ - (((enc)->utf16Convert)(enc, fromP, fromLim, toP, toLim)) +# define XmlUtf16Convert(enc, fromP, fromLim, toP, toLim) \ + (((enc)->utf16Convert)(enc, fromP, fromLim, toP, toLim)) typedef struct { ENCODING initEnc; @@ -299,7 +299,7 @@ int XmlSizeOfUnknownEncoding(void); typedef int(XMLCALL *CONVERTER)(void *userData, const char *p); -ENCODING *XmlInitUnknownEncoding(void *mem, int *table, CONVERTER convert, +ENCODING *XmlInitUnknownEncoding(void *mem, const int *table, CONVERTER convert, void *userData); int XmlParseXmlDeclNS(int isGeneralTextEntity, const ENCODING *enc, @@ -312,10 +312,10 @@ int XmlInitEncodingNS(INIT_ENCODING *p, const ENCODING **encPtr, const char *name); const ENCODING *XmlGetUtf8InternalEncodingNS(void); const ENCODING *XmlGetUtf16InternalEncodingNS(void); -ENCODING *XmlInitUnknownEncodingNS(void *mem, int *table, CONVERTER convert, - void *userData); -#ifdef __cplusplus +ENCODING *XmlInitUnknownEncodingNS(void *mem, const int *table, + CONVERTER convert, void *userData); +# ifdef __cplusplus } -#endif +# endif #endif /* not XmlTok_INCLUDED */ diff --git a/icecat/parser/expat/expat/lib/xmltok_ns.c b/icecat/parser/expat/expat/lib/xmltok_ns.c index fbdd3e3c7b..810ca2c6d0 100644 --- a/icecat/parser/expat/expat/lib/xmltok_ns.c +++ b/icecat/parser/expat/expat/lib/xmltok_ns.c @@ -12,6 +12,7 @@ Copyright (c) 2002 Fred L. Drake, Jr. Copyright (c) 2002-2006 Karl Waclawek Copyright (c) 2017-2021 Sebastian Pipping + Copyright (c) 2025 Alfonso Gregory Licensed under the MIT license: Permission is hereby granted, free of charge, to any person obtaining @@ -98,13 +99,13 @@ NS(findEncoding)(const ENCODING *enc, const char *ptr, const char *end) { int i; XmlUtf8Convert(enc, &ptr, end, &p, p + ENCODING_MAX - 1); if (ptr != end) - return 0; + return NULL; *p = 0; if (streqci(buf, KW_UTF_16) && enc->minBytesPerChar == 2) return enc; i = getEncodingIndex(buf); if (i == UNKNOWN_ENC) - return 0; + return NULL; return NS(encodings)[i]; } diff --git a/icecat/parser/expat/moz.yaml b/icecat/parser/expat/moz.yaml index 9d0d701f99..9ec11452b9 100644 --- a/icecat/parser/expat/moz.yaml +++ b/icecat/parser/expat/moz.yaml @@ -9,8 +9,8 @@ origin: name: libexpat description: Expat is an XML parser. url: https://github.com/libexpat/libexpat - release: R_2_6_4 (2024-11-07T02:31:34+01:00). - revision: R_2_6_4 + release: R_2_7_4 (2026-01-31T12:16:55+01:00). + revision: R_2_7_4 license: MIT license-file: COPYING @@ -27,6 +27,7 @@ vendoring: - "**" - expat/lib/Makefile.am - expat/lib/libexpat.def.cmake + - expat/lib/libexpat.map.in include: - AUTHORS @@ -39,6 +40,7 @@ vendoring: - expat_config.h - expat_config_moz.h - expat_config_rlbox.h + - README_MOZILLA - rlbox_expat.h - rlbox_expat_types.h - sources.mozbuild @@ -53,12 +55,10 @@ vendoring: - 03_dont_generate_salt.patch - 04_always_set_eventptrs.patch - 05_getcurrentbyteindex.patch - - 06_report_processing_entity.patch - - 07_always_store_rawnames.patch - - 08_dont_ignore_undeclared_entity.patch - - 09_include_xmlns.patch - - 10_internalsubset.patch - - 11_nested_entities.patch - - 12_version_limit.patch - - 13_no_debug_report.patch - - 14_unused.patch + - 06_always_store_rawnames.patch + - 07_dont_ignore_undeclared_entity.patch + - 08_include_xmlns.patch + - 09_internalsubset.patch + - 10_version_limit.patch + - 11_no_debug_report.patch + - 12_unused.patch diff --git a/icecat/security/ct/CTKnownLogs.h b/icecat/security/ct/CTKnownLogs.h index dee0fba44d..a3f97a30b7 100644 --- a/icecat/security/ct/CTKnownLogs.h +++ b/icecat/security/ct/CTKnownLogs.h @@ -14,7 +14,7 @@ #include -static const PRTime kCTExpirationTime = INT64_C(1777287252000000); +static const PRTime kCTExpirationTime = INT64_C(1779695596000000); namespace mozilla::ct { @@ -327,8 +327,8 @@ const CTLogInfo kCTLogList[] = { "\xa3\x4f\x6b\xa3\x37\xdd\xaa\x18\xde\x8a\x12\x25\xdb\x9c\xbd\x03\x72\x61" "\xc9", 91}, - {"Let's Encrypt 'Oak2026h1'", CTLogState::Admissible, CTLogFormat::RFC6962, - 1765578600000, // 2025-12-12T22:30:00Z + {"Let's Encrypt 'Oak2026h1'", CTLogState::Retired, CTLogFormat::RFC6962, + 1772236800000, // 2026-02-28T00:00:00Z 4, // operated by Let's Encrypt "\x30\x59\x30\x13\x06\x07\x2a\x86\x48\xce\x3d\x02\x01\x06\x08\x2a\x86\x48" "\xce\x3d\x03\x01\x07\x03\x42\x00\x04\x99\xd4\x61\x70\x22\xfa\x77\x93\x0d" @@ -337,8 +337,8 @@ const CTLogInfo kCTLogList[] = { "\x48\x90\x23\x40\xde\x7a\x4d\x89\x32\xfb\xd7\x0a\xeb\x5e\x8c\xa2\xf1\xf6" "\x49", 91}, - {"Let's Encrypt 'Oak2026h2'", CTLogState::Admissible, CTLogFormat::RFC6962, - 1765578600000, // 2025-12-12T22:30:00Z + {"Let's Encrypt 'Oak2026h2'", CTLogState::Retired, CTLogFormat::RFC6962, + 1772236800000, // 2026-02-28T00:00:00Z 4, // operated by Let's Encrypt "\x30\x59\x30\x13\x06\x07\x2a\x86\x48\xce\x3d\x02\x01\x06\x08\x2a\x86\x48" "\xce\x3d\x03\x01\x07\x03\x42\x00\x04\x6a\x70\x9d\xb3\x96\xe3\xec\x85\x36" diff --git a/icecat/security/manager/ssl/StaticHPKPins.h b/icecat/security/manager/ssl/StaticHPKPins.h index d0d50ceb77..f3b1bede0f 100644 --- a/icecat/security/manager/ssl/StaticHPKPins.h +++ b/icecat/security/manager/ssl/StaticHPKPins.h @@ -726,4 +726,4 @@ static const TransportSecurityPreload kPublicKeyPinningPreloadList[] = { static const int32_t kUnknownId = -1; -static const PRTime kPreloadPKPinsExpirationTime = INT64_C(1779706430495000); +static const PRTime kPreloadPKPinsExpirationTime = INT64_C(1782114773318000); diff --git a/icecat/security/manager/ssl/nsSTSPreloadList.inc b/icecat/security/manager/ssl/nsSTSPreloadList.inc index 39366acd1d..67d9b6015b 100644 --- a/icecat/security/manager/ssl/nsSTSPreloadList.inc +++ b/icecat/security/manager/ssl/nsSTSPreloadList.inc @@ -8,7 +8,7 @@ /*****************************************************************************/ #include -const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); +const PRTime gPreloadListExpirationTime = INT64_C(1784533969259000); %% 0--1.de, 1 0-0.io, 1 @@ -16,6 +16,8 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 0-1.party, 1 0-24.com, 1 0-24.net, 1 +0-9.com, 1 +0-nuisibles.fr, 1 0.com.ms, 1 0.sb, 1 0.tl, 1 @@ -163,7 +165,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 0571z6.com, 1 0595.com, 1 0597z6.com, 1 -059958.com, 1 060579.com, 1 060798.com, 1 06091994.xyz, 1 @@ -186,7 +187,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 07d88.com, 1 07d88.net, 1 07f.de, 1 -0800-horoscope.com, 1 08000113.nl, 1 0800829988.com, 1 081115.com, 0 @@ -308,6 +308,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 0xfc.de, 1 0xfn.eu, 1 0xheuts.nl, 1 +0xinsider.com, 1 0xn.de, 1 0xnotes.me, 1 0xnull.de, 1 @@ -334,7 +335,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 10000spoons.tk, 1 10001000.xyz, 1 100048.com, 1 -1000ftad.ch, 1 1000inf.ru, 1 1000ps.at, 1 1000ps.de, 1 @@ -371,6 +371,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 100pluspro.com, 1 100pour100print.com, 1 100pudov.tk, 1 +100reach.com, 1 100refer.tk, 1 100sapog.tk, 1 100skidok.ga, 1 @@ -405,6 +406,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 10218e.com, 0 10218f.com, 0 10218h.com, 0 +1024.ee, 1 1024.kr, 1 1025.ga, 1 1031ex.com, 1 @@ -423,6 +425,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 1068511.com, 1 106906.xyz, 1 10705.ml, 1 +1071kongremerkezi.com, 1 107996.com, 1 1079fm.ga, 1 107fm.kz, 1 @@ -533,6 +536,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 113z6.com, 1 11400.com, 1 11443837.com, 0 +114514911.xyz, 1 114514ss.com, 1 114online.com, 1 115.one, 1 @@ -540,6 +544,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 1174healing.com, 1 117766.xyz, 1 1177z6.com, 1 +11792.com, 1 1190america.tk, 1 1199bet.vip, 0 119sh.com, 1 @@ -1076,6 +1081,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 1911-movie.jp, 1 1911trust.com, 1 1912x.com, 1 +191512.xyz, 1 192.com, 1 1920.tk, 1 1920301.com, 1 @@ -1246,6 +1252,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 1password.com, 1 1password.eu, 1 1picture.hu, 1 +1placedessaisons.com, 1 1plus.red, 1 1plus1tv.zone, 1 1pluss.ee, 1 @@ -1254,7 +1261,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 1q2w.nl, 1 1q365a.com, 1 1r.is, 1 -1rail.com.au, 1 +1rail.com.au, 0 1roadsquadtransport.com, 1 1rs.nl, 1 1rust.net, 1 @@ -1416,6 +1423,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 1xbetkor.com, 1 1xbetkr.com, 1 1xbetkr1.com, 1 +1xbetmm.com, 1 1xbetqq.com, 1 1xbetsd.com, 1 1xbetst.com, 1 @@ -1508,6 +1516,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 2024-7.com, 0 2024-8.com, 0 2024-9.com, 0 +2026.com.ar, 1 2030404.com, 1 2030411.com, 1 2030calculator.com, 1 @@ -1531,6 +1540,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 2083236893.com, 1 208garfield.com, 1 208medical.org, 1 +20deg.com, 1 20denier.com, 1 20gg.de, 1 20mcc.in, 1 @@ -1543,6 +1553,12 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 214701.xyz, 1 21566365.com, 0 216digital.com, 1 +21bit.com, 1 +21bit1.com, 1 +21bit22.com, 1 +21bit24.com, 1 +21bit5.com, 1 +21bit9.com, 1 21gou.com, 1 21kampus.com, 1 21lab.co, 1 @@ -1561,7 +1577,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 220control.ru, 1 2211.cf, 1 22168365.com, 1 -221b.store, 1 222001.com, 1 222382.xyz, 1 2226321.com, 1 @@ -1666,6 +1681,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 240525.com, 1 241552.com, 1 242552.com, 1 +244.life, 1 2444.cf, 1 245990.xyz, 1 245meadowvistaway.com, 1 @@ -1718,21 +1734,19 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 24hrbrandbash.com, 1 24images.com, 1 24k.co.jp, 1 -24meg.com, 1 24onlain.tk, 1 -24see.com, 1 24shares.cc, 1 24slides.com, 1 24toolkit.com, 1 24x7aircargoservices.co.in, 1 24x7serversupport.io, 1 +24zegarki.pl, 1 2500.cf, 1 2502.net, 1 250250.best, 1 2525admin.nl, 1 253007.com, 1 2531111.ru, 1 -253325.com, 1 254vc.ml, 1 256br.com, 1 256k.me, 1 @@ -1758,7 +1772,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 2601.de, 1 262569.com, 1 263mail.com, 1 -267326.com, 1 269196.com, 1 2698pacificave.com, 1 26uuu.mobi, 1 @@ -1773,19 +1786,15 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 28-industries.com, 1 280.social, 1 281180.de, 1 -283228.com, 1 28359.eu, 1 28365cn-365.com, 1 -283928.com, 1 28428.com, 0 284365.com, 1 -287628.com, 1 2881dh.com, 1 28865.de, 1 28865.eu, 1 288cn-563.com, 1 288game.net, 1 -289728.com, 1 28spots.net, 1 291167.xyz, 1 293685.com, 1 @@ -1883,7 +1892,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 2think.org, 1 2to.co, 1 2travel8.world, 1 -2ugaming.com, 1 2url.link, 1 2ustyle.com, 1 2vnews.com, 1 @@ -2167,11 +2175,9 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 377ks.com, 1 377zzz.com, 1 37889658.com, 0 -379237.com, 1 379437.com, 1 379637.com, 1 379700.com, 1 -379737.com, 1 3798.com, 0 37987.com, 1 37987d.com, 1 @@ -2190,19 +2196,14 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 3880p.com, 1 38888msc.com, 1 38irkutsk.tk, 1 -390539.com, 1 -390trains.com, 1 392365.com, 0 393335.ml, 0 394553.com, 1 3957b.com, 1 3957d.com, 1 3957g.com, 1 -396228.com, 0 3963bb.com, 1 3963cc.com, 0 -396539.com, 1 -397039.com, 1 3970a.com, 1 3970aa.com, 1 3970abc.com, 1 @@ -2249,7 +2250,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 3970z.com, 1 3970zz.com, 1 397542.com, 1 -398039.com, 1 39news.tk, 1 39sihu.com, 0 39w66.com, 1 @@ -2282,7 +2282,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 3d-fotoshpalery.com.ua, 1 3d-glow.de, 1 3d-station.fr, 1 -3d47.com, 1 3dadvance.fr, 1 3dall.ro, 1 3danimation.tk, 1 @@ -2430,7 +2429,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 3wikipedia.org, 1 3wincorp.com, 1 3xceler.com.br, 1 -3xx.click, 1 3xx.link, 1 3z4m.stream, 1 3zm-cheats.de, 1 @@ -2459,7 +2457,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 4025369.com, 1 403.ch, 1 403page.com, 1 -404.blue, 1 404.city, 1 404.guide, 1 4048kkk.com, 1 @@ -2564,7 +2561,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 476470.com, 1 47essays.com, 1 47yr.com, 1 -483329.com, 1 483610.com, 1 48365365cn.com, 1 48365cn-365.com, 1 @@ -2650,7 +2646,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 4mm.org, 1 4n3.net, 1 4n6.io, 1 -4netguides.org, 1 +4netguides.org, 0 4nikola.de, 1 4nk.network, 1 4o.pw, 0 @@ -2662,6 +2658,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 4project.co.il, 1 4q-quartet.tk, 1 4racers.jp, 1 +4recon.se, 1 4ree.tk, 1 4screens.net, 1 4season-flowers.com, 1 @@ -2863,6 +2860,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 52evar.com, 1 52evar1.com, 1 52hentai.ml, 1 +52iv.one, 1 52kb1.com, 1 52kb365.com, 0 52ncp.net, 1 @@ -2888,10 +2886,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 5533445.com, 1 55365t.com, 1 5557552.com, 1 -555bet86.com, 1 -555kb.com, 1 555w.org, 1 -555xl.com, 1 555zlong.com, 1 556185.com, 1 557.pm, 1 @@ -2903,7 +2898,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 5611bet.com, 1 562656.com, 1 562956.com, 1 -563398.com, 1 5633bet.com, 1 56365t.com, 1 5663.cc, 1 @@ -2927,7 +2921,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 589174.com, 1 589team.com, 1 592227.com, 0 -593398.com, 1 594795.com, 1 595380.com, 1 5981168.com, 1 @@ -3019,6 +3012,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 5peciali5t.tk, 1 5penazi.sk, 1 5percentperweek.com, 1 +5play.life, 1 5sjsa.com, 1 5snb.club, 1 5sporn.com, 1 @@ -3111,6 +3105,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 6396zzz.com, 0 63fg.com, 1 63gaming.com, 1 +64.place, 1 644.ro, 1 645ds.com, 0 64970.com, 1 @@ -3284,7 +3279,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 6729z.co, 1 6729zz.co, 1 672bbb.com, 1 -673395.com, 1 673422.com, 0 673569.com, 1 673bbb.com, 1 @@ -3298,12 +3292,10 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 67836565.com, 1 678365t.com, 1 678678365.com, 1 -682368.com, 1 68522c.com, 1 68522k.com, 1 68522m.com, 1 68522s.com, 1 -68622.com, 1 68622a.com, 1 68622b.com, 1 68reg.tk, 1 @@ -3425,12 +3417,8 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 7261696e626f77.net, 1 727sss.com, 1 730.no, 1 -732273.com, 1 -736373.com, 1 -736573.com, 1 737478.xyz, 1 -739373.com, 1 -739673.com, 1 +73k.us, 1 740424.ml, 1 740660.com, 1 740cashbuyers.com, 1 @@ -3439,8 +3427,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 7478vip2.cc, 1 74dy.org, 1 74th.jp, 1 -750375.com, 1 -750475.com, 1 751930.com, 1 7552001.com, 1 7552002.com, 1 @@ -3458,12 +3444,8 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 755249.com, 1 755274.com, 1 755294.com, 0 -756975.com, 1 757409.com, 1 -758375.com, 1 -759375.com, 1 759419.com, 1 -759675.com, 1 75refer.tk, 1 76.to, 1 761.com, 1 @@ -3476,7 +3458,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 76669.com, 1 766788.xyz, 1 767333.xyz, 1 -769sc.com, 0 76networks.tk, 1 76o.cn, 1 77018dd.com, 0 @@ -3504,7 +3485,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 77online.com, 1 78.to, 1 780aa.com, 1 -783346.com, 1 78365b.com, 0 783lab.com, 1 787637.com, 1 @@ -3549,6 +3529,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 7kovrikov.ru, 1 7kvadratov.by, 1 7l00p.com, 1 +7matic.net, 1 7money.co, 1 7net.uk, 1 7nets.com, 1 @@ -3578,7 +3559,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 800999.xyz, 1 800email.com, 1 800ink.com, 1 -800live.com, 1 800mattress.com, 1 800perkins.com, 1 800sports.com, 1 @@ -3607,6 +3587,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 8097d.com, 1 80993.net, 1 80bin.com, 1 +80dental.com.my, 1 80motorsclub.tk, 1 80smaniacs.nl, 1 81.cz, 1 @@ -3665,7 +3646,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 8226d.com, 1 8228d.com, 1 8229d88.com, 1 -823582.com, 1 82365f.com, 1 82365g.com, 1 82365h.com, 1 @@ -3688,8 +3668,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 82365y.com, 1 82365z.com, 1 825148.com, 1 -825382.com, 1 -826282.com, 1 82781111.com, 0 82783333.com, 0 82784444.com, 0 @@ -3708,7 +3686,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 83365365.com, 1 834365.com, 1 8349822.com, 1 -838888.net, 1 83ir2k8b.duckdns.org, 1 83kb88.com, 1 84000.com, 1 @@ -3795,11 +3772,9 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 872291.com, 0 8722ph.com, 1 8722usa.com, 1 -873394.com, 1 877027.com, 0 877791.com, 0 878365cn.com, 1 -878431.com, 1 8796.jp, 1 87kb88.com, 1 8809d88.com, 1 @@ -3930,7 +3905,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 8l.com.au, 1 8maerz.at, 1 8me.nl, 1 -8n.pw, 0 +8n.pw, 1 8shequapp.com, 1 8t8.eu, 1 8tech.com.hk, 1 @@ -3944,6 +3919,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 8yun.cf, 1 8yun.ga, 0 9-11commission.gov, 1 +9.kz, 1 9.lviv.ua, 1 9.ms, 1 90.cx, 1 @@ -4021,7 +3997,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9076.cf, 1 9077.cf, 1 9078.cf, 1 -907856.com, 1 9079.cf, 1 9080.cf, 1 9081.cf, 1 @@ -4041,7 +4016,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9098.cf, 1 90daydiet.org, 1 90daysales.com, 1 -90minut.com, 1 90r.jp, 1 90splease.com, 1 91-av.com, 1 @@ -4082,12 +4056,10 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9125.cf, 1 9126.cf, 1 9127.cf, 1 -912891.com, 1 9129.cf, 1 9130.cf, 1 9131.cf, 1 9132.cf, 1 -913291.com, 1 9133.cf, 1 913391.com, 1 9134.cf, 1 @@ -4133,7 +4105,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9176.cf, 1 9177.cf, 1 9179.cf, 1 -917991.com, 1 9180.cf, 1 9181.cf, 1 9181181.com, 1 @@ -4168,7 +4139,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 918kissinw.com, 1 9190.cf, 1 9193.cf, 1 -919391.com, 1 9194.cf, 1 9195.cf, 1 9197.cf, 1 @@ -4197,7 +4167,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9201.cf, 1 9202.cf, 1 9203.cf, 1 -920392.com, 1 9204.cf, 1 9205.cf, 1 9206.cf, 1 @@ -4210,7 +4179,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9215.cf, 1 9216.cf, 1 9217.cf, 1 -921792.com, 1 9218.cf, 1 9219.cf, 1 9220.cf, 1 @@ -4235,16 +4203,12 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9242.cf, 1 9243.cf, 1 9245.cf, 1 -924592.com, 1 9246.cf, 1 9247.cf, 1 -924892.com, 1 924992.com, 1 -925892.com, 1 925silverjewelry.com, 1 926792.com, 1 927092.com, 1 -929592.com, 1 9297.co, 1 9297a.co, 1 9297aa.co, 1 @@ -4410,7 +4374,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9397r.com, 1 9398.cf, 1 939wns.com, 1 -93ag8.com, 1 93cq.com, 1 9401.cf, 1 9402.cf, 1 @@ -4558,7 +4521,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9618.cf, 1 9619.cf, 1 9620.cf, 1 -96200.com, 1 9621.cf, 1 9622.cf, 1 96220.com, 1 @@ -4725,8 +4687,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 987987.com, 1 987kisscountry.com, 1 988.gov, 1 -9882258.com, 1 -9884458.com, 1 98877.com, 1 98944448.com, 1 98944449.com, 1 @@ -4828,18 +4788,12 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 998sa.com, 1 998wei.com, 1 998wns.com, 1 -9990058.com, 1 9991.cf, 1 -9991158.com, 1 -9992258.com, 1 999321365.com, 1 -9993358.com, 1 999365t.com, 1 9994.cf, 1 9994553.com, 1 -9995558.com, 1 9998722.com, 1 -9998k8.com, 1 99998522.com, 1 99999822.com, 1 999998722.com, 1 @@ -4848,7 +4802,9 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 999family.com, 0 999salon.co, 1 999zlong.com, 1 +99bt.com, 1 99buffets.com, 1 +99dog.com, 1 99furnitureideasandtips.gq, 1 99furnitureideasexamples.ga, 1 99laptops.com, 1 @@ -4866,7 +4822,6 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9ccn.top, 1 9elements.com, 0 9face.com, 1 -9fruit.com, 1 9fvip.net, 1 9gag.com, 1 9hosts.net, 1 @@ -4955,6 +4910,7 @@ const PRTime gPreloadListExpirationTime = INT64_C(1782125626821000); 9pkfz.com, 1 9point6.com, 1 9ranks.com, 1 +9rx.cz, 1 9tailedkitsune.com, 1 9to5linux.com, 1 9uelle.jp, 0 @@ -4970,7 +4926,6 @@ a-air.com.ua, 1 a-allard.be, 0 a-bio.com, 1 a-busty.com, 1 -a-care.net, 1 a-frique.com, 1 a-gokan.com, 1 a-h-p.de, 1 @@ -5036,7 +4991,7 @@ a2n-expertise.com, 1 a2ssrl.duckdns.org, 1 a2z-restoration.com, 1 a2zbabyname.com, 1 -a2zplumbing.com.au, 1 +a2zplumbing.com.au, 0 a340.com, 1 a356.top, 1 a36533.com, 1 @@ -5063,7 +5018,6 @@ a899365.com, 0 a9-9.top, 0 a9297.co, 1 a9728.co, 1 -a9l.im, 1 aa-security.be, 1 aa.cx, 1 aa43d.cn, 1 @@ -5101,6 +5055,7 @@ aadl.ga, 1 aadskeuken.nl, 1 aadv.com.br, 1 aaenhunze.nl, 1 +aafip.org, 1 aaflalo.me, 1 aagetransport.no, 1 aahhbali.com, 1 @@ -5204,6 +5159,7 @@ ab3.army, 1 ab91corp.com, 1 abaca.bar, 1 abaco.cr, 1 +abacoaggregate.net, 1 abaconappliancerepairs.co.za, 1 abacross.com, 1 abacus-marketing.uk, 1 @@ -5223,7 +5179,6 @@ abahanavillas.com, 1 abakan-news.net, 1 abalsa.tk, 1 abambo.tk, 1 -abancommercials.com, 1 abandoned-zone.tk, 1 abandoned.tk, 1 abandonedmines.gov, 1 @@ -5313,6 +5268,7 @@ abdul.win, 1 abdulawal.tk, 1 abdulazizgolca.com, 1 abdulkarimm.tk, 1 +abdulkerimsesli.de, 1 abdullaeff.net, 1 abdullahavci.com, 1 abdullahavci.com.tr, 1 @@ -5325,7 +5281,6 @@ abdullahki.com, 1 abdullahkoyuncu.de, 1 abdullahzubayerofficial.ml, 1 abdulraheem.org, 1 -abdulraheemalick.com, 1 abdulrahman.eu, 1 abdulwahaab.ca, 1 abduramshad.ml, 1 @@ -5448,6 +5403,7 @@ abnamropensioenen.nl, 0 abnbfcu.org, 1 abnehmen-sport-fitness.de, 1 abnobapetstore.co.uk, 1 +abnobdoss.com, 1 abnradiofm.tk, 1 aboat.cc, 1 aboces.org, 1 @@ -5556,7 +5512,7 @@ aboutyou.ro, 1 aboutyou.se, 1 aboutyou.si, 1 aboutyou.sk, 1 -abovethefirehouse.com, 1 +abovethefirehouse.com, 0 abox-kb.com, 1 abpages.com, 1 abpis.hr, 1 @@ -5611,12 +5567,12 @@ absolutechristmas.com, 1 absolutedouble.co.uk, 1 absolutegames.ga, 1 absoluteloveadoptions.com, 1 -absolutepackaging.net, 1 absolutepondcare.com, 1 absoluterush.net, 1 absoluteup.com.au, 1 absolutezero.tk, 1 absolution.ga, 1 +absolutmedia.ro, 1 absolutperm.tk, 1 absolutweb.tk, 1 absorbent-pad.com, 1 @@ -5630,6 +5586,7 @@ abstractbarista.com, 1 abstractbarista.net, 0 abstractive.ai, 1 absurdia.tk, 1 +absurdityindex.org, 1 absurdopedia.wiki, 1 absyscyborg.com, 1 abteam.tk, 1 @@ -5653,6 +5610,7 @@ abuse.fi, 1 abuse.io, 1 abusive-host.tk, 1 abvlbasketviganello.ch, 0 +abvplumbing.com, 1 aby-action.com, 1 abys.se, 1 abysra.com, 1 @@ -5761,7 +5719,6 @@ access-not-allowed.gq, 1 access-odata.com, 1 access-techniques.com, 1 access-token.tk, 1 -access.beer, 1 access2employment.com, 1 access2mobility.com, 1 accessacab.co.uk, 1 @@ -5820,6 +5777,7 @@ accreditedbuildingservices.com, 1 accretech.vn, 1 accsaber.com, 1 accslot.com, 1 +accstrading.com, 1 acct-affiliate.com, 1 accubitsdemo.ml, 1 accudemia.net, 1 @@ -5926,7 +5884,6 @@ achill.org, 1 achimrosenhagen.de, 1 achinsk.tk, 1 achintyaesbee.tk, 1 -achireland.com, 1 achkandiro.ml, 1 achkandiro.tk, 1 achl.fr, 1 @@ -6003,7 +5960,6 @@ aconseg.com, 1 acopatableware.com, 1 acordes.online, 1 acorespro.com, 1 -acorn.works, 1 acorncastles.co.uk, 1 acornli.com, 1 acornmetal.com.au, 1 @@ -6038,7 +5994,6 @@ acquireoil.com, 1 acquisition.gov, 1 acquisitiongateway.gov, 1 acquisitionstars.com, 1 -acrackstreams.city, 1 acraftedpassion.com, 1 acrealamendolara.tk, 1 acreinfoco.com, 1 @@ -6079,7 +6034,6 @@ acsmuhendislik.com.tr, 1 acsports.ca, 1 acss.com, 1 acstallningsmontage.se, 1 -acsvalves.com, 1 act-news.com, 1 act-on.com, 1 act-web-sa.com, 1 @@ -6122,13 +6076,14 @@ actionphototours.com, 1 actionraingutters.com, 1 actionsack.com, 1 actionsandreactions.com, 1 -actionsecuritycameras.com, 1 actionverb.com, 1 actisgolf.com, 1 actiumhealth.com, 0 activat3rs.com, 1 +activate.ch, 1 activate.swiss, 1 activated.win, 1 +activatenow.com, 1 activators.ml, 1 active-electrical.com, 1 active-english.tk, 1 @@ -6184,7 +6139,6 @@ actris.ac.cy, 1 actro.ga, 1 actro.gq, 1 actronx.tk, 1 -actserv.co.ke, 1 actsofkindness.org, 1 actsofsilence.com, 1 actu-itech.cf, 1 @@ -6199,10 +6153,12 @@ actualno.com, 1 actualprogressivevotersguide.com, 1 actualseomedia.com, 1 actualsizemusic.tk, 1 +actualtechnoshamanism.net, 1 actumeridien.com, 1 acturaad.nl, 1 actus-banque.fr, 1 actuse.tk, 1 +actwisetherapy.com, 1 acuarios.tk, 1 acuarismo-iquique.tk, 1 acuarius.tk, 1 @@ -6217,7 +6173,6 @@ acupofsalt.tv, 1 acupuncture.ml, 1 acupuncturecornwall.co.uk, 1 acupuncturefoundation.com, 1 -acupuncturefoundation.org, 1 acupuntura.coach, 1 acupuntura.doctor, 1 acupuntura.institute, 1 @@ -6245,6 +6200,7 @@ acwi.gov, 1 acworth-ga.gov, 1 acyclovir-cream.cf, 1 acyclovir400mg.ml, 1 +acylia.com, 1 acytec.cl, 1 ad-bp.top, 1 ad-disruptio.fr, 0 @@ -6258,6 +6214,7 @@ ad-notam.pt, 1 ad-notam.uk, 1 ad-notam.us, 1 ad-s.cn, 1 +ad-visions.pl, 1 ad-web.tk, 1 ad.nl, 1 ad13.in, 1 @@ -6269,7 +6226,7 @@ adac-musikreisen.de, 1 adachi.work, 1 adacomputerscience.org, 1 adacprod.fr, 1 -adad95.de, 1 +adad95.de, 0 adadimall.com, 1 adaera.com, 1 adaeze-wolf.com, 1 @@ -6277,6 +6234,7 @@ adagia.eu, 1 adaircomo.gov, 1 adaircosomo.gov, 1 adalabtech.com, 1 +adalie.me, 1 adalis.org, 1 adalite-staging-testnet.herokuapp.com, 1 adalpha.tech, 1 @@ -6301,6 +6259,7 @@ adamevevod.com, 1 adamfontenot.com, 1 adamgibbins.com, 1 adamh.us, 1 +adamiskandar.com, 1 adamj.eu, 1 adamjoycegames.co.uk, 1 adamkissee.com, 1 @@ -6324,7 +6283,6 @@ adamscountyil.gov, 1 adamscountyne.gov, 1 adamscountypa.gov, 1 adamscs.com, 1 -adamshemrent.se, 1 adamsmithsociety.com, 1 adamstas.com, 1 adamsweb.tk, 1 @@ -6339,6 +6297,7 @@ adapt-elektronik.com, 1 adapt-iq.co.nz, 1 adaptationclearinghouse.org, 1 adaptations.uk.com, 1 +adaptationtools.com, 1 adaptex-shop.eu, 1 adaptex.pl, 1 adapti.de, 1 @@ -6375,7 +6334,6 @@ adblockextreme.com, 1 adblockextreme.net, 1 adblockextreme.org, 1 adbw.xyz, 1 -adc-dentalcare.com, 0 adc64.com, 1 adceuta.tk, 1 adcoglazing.co.uk, 1 @@ -6400,10 +6358,10 @@ addictedtotravel.pl, 1 addictioncounsellors.co.nz, 1 addictionsolutionsllc.com, 1 addictiveblogs.com, 1 -addictlaw.com, 1 addictstore.it, 1 addiko.com, 1 addiko.net, 1 +addis-dittebrandt.de, 1 addisoncrump.info, 1 addisondubovi.ch, 1 addisonvt.gov, 1 @@ -6483,6 +6441,7 @@ adf-safetytools.com, 1 adf.africa, 1 adf.gov, 1 adfc-nrw.de, 1 +adfconsumer.gov.au, 1 adfisicateca.org, 1 adflegal.org, 0 adfs.pro, 1 @@ -6497,7 +6456,6 @@ adgreetz.com, 1 adh.org.au, 1 adhadse.com, 1 adhap.fr, 1 -adhd-explained.com, 1 adhd-inattentive.com, 1 adhdgroup.org, 1 adhdyoga.ca, 1 @@ -6546,7 +6504,6 @@ adjustablebeds.ca, 1 adjustablebeds.com.au, 1 adjustablebeds.org, 1 adjutor.xyz, 1 -adk-wohnungsaufloesung.berlin, 1 adkinvest.co.il, 1 adld.center, 1 adlerneves.com, 1 @@ -6555,6 +6512,7 @@ adlerosn.com, 1 adlerosn.com.br, 1 adlershop.ch, 1 adlignum.se, 1 +adlims.com, 1 adliomar.tk, 1 adm-sarov.ru, 1 admac.co.uk, 1 @@ -6656,10 +6614,9 @@ adorkable.eu, 1 adorkable.social, 1 adorned.ga, 1 adoropets.com.br, 1 -adotta.me, 1 adoucishop.fr, 1 +adownloader.org, 1 adp.fr, 1 -adphosting.it, 1 adphotography.pl, 1 adpot.xyz, 0 adquest.ro, 1 @@ -6709,6 +6666,7 @@ adrianweb.ml, 1 adriarae.xyz, 1 adriatika.tk, 1 adriatrans.ga, 1 +adridri.fr, 1 adrienfelsmann.fr, 1 adrieng.fr, 1 adrienkohlbecker.com, 1 @@ -6721,7 +6679,6 @@ adrino.gq, 1 adrino.ml, 1 adrup.com, 1 ads-kuwait.net, 1 -ads.gd, 1 adsb.lol, 1 adsbouncycastles.co.uk, 1 adscss.eu, 1 @@ -6806,7 +6763,7 @@ advanceddisposables.co.uk, 0 advancedelectricalservicesqld.com.au, 1 advancedfueladditives.com, 1 advancedhealthmedical.com.au, 0 -advancedinteg.com, 0 +advancedinteg.com, 1 advancedkiosks.com, 1 advancednetflowtraining.com, 1 advancedoneroofing.com, 1 @@ -6839,6 +6796,7 @@ advara.com, 1 advarra.com, 1 advasa.jp, 0 advasa.net, 1 +advayan.com, 1 advbizintel.com, 1 advena.com.au, 1 advenacs.com, 1 @@ -6890,6 +6848,7 @@ advertizer.com, 1 adverts.ie, 1 advery.tk, 1 advgrow.com, 1 +advi.no, 1 advice24.tk, 1 advicepay.com, 0 advicepharma.com, 1 @@ -6912,7 +6871,6 @@ advocat.te.ua, 1 advocatae.com, 1 advocatburo.tk, 1 advocateanakha.com, 1 -advocatize.com, 1 advocator.ca, 1 advoervice.ga, 1 advogadavaleria.com.br, 1 @@ -6949,6 +6907,7 @@ advtran.com, 0 advu.no, 1 adware.pl, 0 adwokat-kielce.com.pl, 1 +adwokat.bydgoszcz.pl, 1 adwokatkosterka.pl, 1 adwokatzdunek.pl, 1 adwork.net, 1 @@ -7015,6 +6974,7 @@ aegisalarm.com, 1 aegisys.com, 1 aegon.hu, 0 aegrel.ee, 1 +aegrel.eu, 1 aeh5134.cc, 1 aeha.tk, 1 aehe.us, 1 @@ -7026,6 +6986,7 @@ aeis-api.azurewebsites.net, 1 aejaca.com, 1 aeksantcugat.tk, 1 aeksistem.com, 1 +aekwien.at, 1 aelgame.com, 1 aelia.cc, 1 aelia.im, 1 @@ -7035,7 +6996,7 @@ aelisya.net, 0 aelyapi.com, 1 aenes.com, 1 aeolservice.es, 1 -aeon.co, 0 +aeonbig.com.my, 1 aeonc.com, 1 aeonct.org, 1 aeonfoundation.my, 1 @@ -7065,9 +7026,10 @@ aerobiconline.tk, 1 aerobiomasa.com, 1 aerobotz.com, 0 aeroclub-tolhuin.tk, 1 +aeroct.com.br, 1 aerodoc.com, 1 aeroeggtech.com, 1 -aeroelectronics.net, 1 +aeroelectronics.net, 0 aeroequity.com, 1 aeroexpress.tk, 1 aerofarms.com, 1 @@ -7105,6 +7067,7 @@ aerozone.tk, 1 aertel.ie, 1 aerztezentrum.io, 1 aes.org.pt, 1 +aesencryption.org, 1 aesi.bg, 1 aesm.limited, 1 aesm.ltd, 1 @@ -7280,10 +7243,8 @@ aficionados.com.br, 1 afilia3.com, 1 afilio.de, 1 afilmedia.llc, 1 -afinaudio.com, 1 afinterio.com, 1 afishablogs.tk, 1 -afive.us, 1 afiyetolsun.jp, 1 afk.surf, 1 afkmind.com, 1 @@ -7300,6 +7261,7 @@ afoikrali.gr, 1 aforadearrastu.tk, 1 aforism.tk, 1 afp548.com, 1 +afrahalurdun.online, 1 afreelancersworld.com, 1 afreserve.com, 1 afreshperspective.com, 1 @@ -7320,7 +7282,6 @@ africanleapsafaris.com, 1 africanmangoforum.ga, 1 africanmangoforum.gq, 1 africansafaris.co.nz, 1 -africantourer.com, 1 africaone-publishing.com, 1 afrijet.ga, 1 afrimarket.ci, 1 @@ -7338,12 +7299,12 @@ afroditehotel.tk, 1 afroenergy.org, 1 afrogospel.tk, 1 afroludi.tk, 1 -afropages.fr, 1 afroto.com, 0 afs-ag.com, 1 afse.fr, 1 afslankstudiovelserbroek.nl, 0 afsys.com.br, 1 +aftamurae.com, 1 after-whoru.tk, 1 afterblokrock.tk, 1 afterdarklabs.net, 0 @@ -7409,7 +7370,6 @@ ag8876.com, 1 ag888818.com, 1 ag889.com, 1 ag8891.com, 1 -ag8vip.com, 1 ag918.cc, 0 ag918.co, 1 ag918.top, 1 @@ -7492,7 +7452,6 @@ agencestaff.fr, 1 agencetourismemali.ml, 1 agenciaalafia.com.br, 1 agenciacanina.tk, 1 -agenciacoder.com, 1 agenciacorujadesign.com.br, 1 agenciacrown.es, 1 agenciadeperformanceembh.com, 1 @@ -7534,11 +7493,12 @@ agenter.tk, 1 agentesevillanocooper.tk, 1 agentfire.com, 1 agentfirewall.com, 1 +agenticdelivery.se, 1 +agenticsoftwarefactory.com, 1 agentpak.com, 1 agentpatrolest.ga, 1 agentpoint.website, 1 agentprovocateur.com, 1 -agentrisk.com, 0 agentsmith.tk, 1 agentum.ga, 1 agentur-etcetera.de, 1 @@ -7570,7 +7530,6 @@ aghasahadkhan.com, 1 aghayeva-edler.de, 1 aghdirfood.com, 1 agiairini.cz, 1 -agic-geneve.ch, 1 agiftinside.com, 1 agilan.nl, 1 agile.coach, 1 @@ -7597,6 +7556,7 @@ agingstats.gov, 1 agingstop.net, 1 aginion.com, 1 aginion.net, 1 +aginternational.org, 1 agioanmark.tk, 1 agiosthomas.tk, 1 agirc-arrco.fr, 1 @@ -7639,6 +7599,7 @@ agnesk.blog, 1 agnesmatilda.tk, 1 agnestakeaway.be, 1 agneta.tk, 1 +agnify.io, 1 agnosia.tk, 1 agnosticism.tk, 1 agnusbostel.tk, 1 @@ -7672,7 +7633,6 @@ agowa338.de, 1 agpandit.in, 1 agph.org, 1 agpideas.com, 1 -agpsn.com, 1 agr.asia, 1 agralines.tk, 1 agrarking.com, 1 @@ -7680,6 +7640,7 @@ agrarking.de, 1 agrarkredit.de, 1 agravery.com, 1 agraw.tk, 1 +agrcars.com, 1 agregator.tk, 1 agremo.com, 1 agreor.com, 1 @@ -7803,7 +7764,6 @@ ahccmadison.com, 0 ahccorleone.tk, 1 ahcfacilities.com, 1 ahcpr.gov, 1 -ahd-cyber.org, 1 ahd.com, 0 ahealthyjourney.ca, 1 ahegaoroulette.com, 1 @@ -7865,6 +7825,7 @@ ahorrocoop.cl, 1 ahorroenergeticoenhogares.es, 1 ahosamuel.com, 1 ahouansou.cz, 1 +ahqf.com, 1 ahrefs.com, 1 ahroproject.org, 1 ahrq.gov, 1 @@ -7883,6 +7844,8 @@ ahuhvac.com, 1 ahv-gmbh.net, 1 ahwah.net, 1 ai-analytics-hub.com, 1 +ai-articlehumanizer.cloud, 1 +ai-crafters.io, 1 ai-cs.top, 1 ai-genit.com, 1 ai-kyousei.com, 1 @@ -7893,12 +7856,12 @@ ai.co.nl, 1 ai.futbol, 1 ai.gov, 1 ai.gov.ae, 1 -ai.market, 1 ai.moda, 1 ai.mr, 0 ai00.vip, 1 ai1989.com, 1 ai2-jp.com, 1 +ai47.us, 1 aiabs.co, 1 aiaccinu.eu.org, 1 aiag.org, 1 @@ -7909,6 +7872,7 @@ aiasesoriainmobiliaria.com, 1 aiasnet.it, 1 aiat.net, 1 aiatsis.gov.au, 1 +aiavt-stg-01.com, 1 aib.gov.uk, 1 aibes.org, 1 aibili.pt, 1 @@ -8041,6 +8005,7 @@ aimwa.com, 1 aina.moi, 1 ainameals.com, 1 ainamoroms.com, 1 +ainativedata.io, 1 aine.com.br, 1 ainewsto.com, 0 ainfographie.com, 1 @@ -8057,7 +8022,6 @@ aion.eu, 1 aion.fi, 1 aiosetups.com, 1 aiot.pw, 1 -aipbarcelona.com, 1 aipcardio.hu, 1 aipderm.eu, 1 aipderm.ro, 1 @@ -8073,7 +8037,6 @@ aipodcast.education, 1 aiprime.solutions, 1 aiproductivelab.com, 1 aipulse.org, 1 -aiqinggu.com, 1 aiqingli.com, 1 air-business.tk, 1 air-clan.tk, 1 @@ -8163,11 +8126,10 @@ airborne-commando.tk, 1 airburners.com, 1 airburners.net, 1 aircareair.tk, 1 -aircheapfare.com, 1 -aircheapfares.com, 1 aircomet.tk, 1 airconditioning.tk, 1 airconditioningcondensers.tk, 1 +airconditioningservicejohannesburg.co.za, 1 airconsboksburg.co.za, 1 airconservicingcapetown.co.za, 1 airconsfourways.co.za, 1 @@ -8176,6 +8138,7 @@ aircraftspruce.ca, 1 aircraftspruce.com, 1 aircrewdepot.com, 1 aircrewportpages.com, 1 +aircrewtrac.com, 1 airday.tk, 1 airdeer.com, 1 airdropkings.com, 1 @@ -8186,21 +8149,15 @@ airedaleterrier.com.br, 1 airensmuseum.com, 1 aires-autoroute-areas.com, 1 airethilien.tk, 1 -aireuropeflights.com, 1 airez.tk, 1 airfan.cf, 1 airfarecheapdeal.com, 1 airfarecheapeurope.com, 1 airfarecompareprices.com, 1 airfaredealstoindia.com, 1 -airfarefrom.com, 1 -airfarehonolulu.com, 1 -airfarehoteldeals.com, 1 airfaremexicocity.com, 1 -airfareorlando.com, 1 airfaresdomestic.com, 1 airfareseconomy.com, 1 -airfaresfrom.com, 1 airfareshotels.com, 1 airfarestoamerica.com, 1 airfarestogermany.com, 1 @@ -8208,7 +8165,6 @@ airfareticketsdeals.com, 1 airfaretousa.com, 1 airfield.gq, 1 airfix.com, 1 -airflightsdeals.com, 1 airflowterravista.com, 1 airflux.fr, 1 airforce-technology.com, 1 @@ -8239,7 +8195,6 @@ airlineandtickets.com, 1 airlinebe.com, 1 airlineblue.com, 1 airlinebookingtickets.com, 1 -airlinebuyticket.com, 1 airlineby.com, 1 airlinec.com, 1 airlinecheapflightinternationalticket.com, 1 @@ -8257,9 +8212,7 @@ airlinefareprices.com, 1 airlinefaresdiscount.com, 1 airlinefee.com, 1 airlinefirstclass.com, 1 -airlineflight.biz, 1 airlineflightcheap.com, 1 -airlineflights.biz, 1 airlineflightsdeals.com, 1 airlineflightsdiscount.com, 1 airlineflightsfares.com, 1 @@ -8277,7 +8230,6 @@ airlinenationwide.com, 1 airlinenews.tk, 1 airlinenewzealand.com, 1 airlineoil.com, 1 -airlinep.com, 1 airlineplanetickets.com, 1 airlinesair.com, 1 airlinesamsterdam.com, 1 @@ -8324,7 +8276,6 @@ airlinesparis.com, 1 airlinesphonenumber.com, 1 airlinespolicyhub.com, 1 airlinessanfrancisco.com, 1 -airlinesseating.com, 1 airlinessingapore.com, 1 airlinestexas.com, 1 airlinesto.com, 1 @@ -8342,7 +8293,6 @@ airlinestojapan.com, 1 airlinestolasvegas.com, 1 airlinestolosangeles.com, 1 airlinestomiami.com, 1 -airlinestoorlando.com, 1 airlinestophoenix.com, 1 airlinestosingapore.com, 1 airlinestoturkey.com, 1 @@ -8353,11 +8303,8 @@ airlinesunitedstates.com, 1 airlinesvegas.com, 1 airlinesvietnam.com, 1 airlineti.com, 1 -airlinetic.com, 1 airlineticketscheapflights.com, 1 airlineticketsfrom.com, 1 -airlineticketspurchase.com, 1 -airlineticketswith.com, 1 airlineto.com, 1 airlinetocanada.com, 1 airlinetohawaii.com, 1 @@ -8476,6 +8423,7 @@ aisawa22.com, 1 aiscale.fr, 1 aischannel.com, 1 aischepervers-porn.com, 1 +aisdent.com, 1 aisdr.com, 1 aisedomains.ga, 1 aisera.com, 1 @@ -8483,6 +8431,7 @@ aish.ml, 1 aishima.com, 1 aisi316l.net, 1 aising.jp, 1 +aisolutions-hammer.at, 1 aisp.sg, 1 aispirit.tk, 1 aisrvs.net, 1 @@ -8562,6 +8511,7 @@ ajeventhire.co.uk, 1 ajfite.com, 0 ajforum.tk, 1 ajhstamps.co.uk, 1 +ajial212.com, 1 ajiboye.com, 1 ajinabraham.com, 1 ajito.pw, 1 @@ -8622,15 +8572,16 @@ akademicka.pl, 1 akademie-frankfurt.de, 1 akadseguros.com.br, 0 akaike.co.jp, 1 +akamai.com, 1 akamon.ac.jp, 1 akamsg.com, 1 akamsg.me, 1 akamslinkphoneqr.co, 1 -akamsnetworksetup.com, 1 -akamspairyourphone.com, 1 +akamsnetworksetup.com, 0 +akamspairyourphone.com, 0 akamsphonelink.com, 1 akamu.de, 0 -akaphonelink.com, 1 +akaphonelink.com, 0 akaratasker.com, 1 akari.net, 1 akariforge.com, 1 @@ -8648,6 +8599,7 @@ akashstephen.com, 1 akasi.cf, 1 akasmedikal.com, 1 akasmedikal.net, 1 +akatdo.com, 1 akatsukainuneko.co.jp, 1 akaxaka.tk, 1 akaziya.cf, 1 @@ -8658,7 +8610,6 @@ akbtv.ru, 1 akcenty.com.ua, 1 akcevybuch.cz, 1 akconciergerie.fr, 1 -akcpetinsurance.com, 1 akcs.one, 1 akdenizecza.com, 1 akdenizecza.com.tr, 1 @@ -8702,7 +8653,7 @@ akilli-devre.com, 1 akimbocore.com, 1 akimeder.tk, 1 akimitsu.co.jp, 1 -aking.com.my, 1 +aking.com.my, 0 akinoiro.ru, 1 akinokae.de, 1 akiranet.tk, 1 @@ -8711,7 +8662,7 @@ akita-boutique.com, 1 akita-stream.com, 1 akitacyber.com, 1 akiym.com, 1 -akj.io, 0 +akj.io, 1 akkerwinde.tk, 1 akko.wtf, 1 akkoniq.com, 1 @@ -8747,19 +8698,18 @@ akrasa.xyz, 1 akrep.com, 1 akrilikhavuz.com, 1 akritikos.info, 1 +akro.cz, 1 akrobat.cf, 1 akrochem.com, 1 akronhousing.gov, 1 akronohiorescue.gov, 1 akropolis-ravensburg.de, 1 akroslive.com, 1 -akrvall.se, 1 akrzon.com, 1 aksehir.bel.tr, 1 akselinurmio.fi, 1 aksenov.tk, 1 aksenovalexey.tk, 1 -aksesuarai.com, 1 akshavitrends.com, 1 akshay.in.eu.org, 1 akshit.me, 1 @@ -8795,7 +8745,6 @@ akumat.com.pl, 1 akumat.eu, 1 akumat.pl, 1 akumbittiyolyardim.com, 1 -akupunktur-akupunktoer.dk, 0 akupunktura.tk, 1 akura.cf, 1 akura.tk, 1 @@ -8830,7 +8779,7 @@ al2schaos.tk, 1 al3ilm.com, 1 al3xpro.com, 1 al911.net, 1 -alaan.com, 1 +alaan.com, 0 alaattinkaraca.tk, 1 alab.space, 1 alabalaporto.tk, 1 @@ -8892,10 +8841,10 @@ alancolephotography.com, 1 aland.co.uk, 1 alandoyle.com, 1 alandoyle.link, 1 +alanforutah.com, 1 alanhua.ng, 1 alanhuang.name, 1 alaninkenya.org, 1 -alaniz-law.com, 0 alankardresswalla.tk, 1 alankatona.com, 1 alanokling.nl, 1 @@ -8947,6 +8896,7 @@ alavieestbelle.be, 1 alb-flirt.de, 1 alb-media.tk, 1 alba.ovh, 1 +alba24.ro, 1 albaadani.com, 1 albadon.tk, 1 albaform.com, 1 @@ -8984,7 +8934,6 @@ albatrosboat.it, 1 albatrostercume.com, 1 albauroman.com, 1 albayan.ae, 1 -albeelaw.com, 1 albemarlehistory.org, 1 albendazole.ga, 1 albendazole.ml, 1 @@ -9054,7 +9003,6 @@ alcaralifusi.tk, 1 alcarpentry.co, 1 alcatraz-webdesign.tk, 1 alcatrazeast.com, 1 -alcatraztourtickets.com, 1 alchakov.tk, 1 alchemist-heaven.tk, 1 alchemisten.tk, 1 @@ -9067,6 +9015,7 @@ alchemytechconnect.com, 1 alchemytechevents.com, 1 alchemytechonline.com, 1 alchemytechresource.com, 1 +alchemytechsource.com, 1 alchemywellness.health, 1 alchevsk-news.ru, 1 alchevsknews.ru, 1 @@ -9098,7 +9047,6 @@ aldebaranbm.com, 1 aldenstate.com, 1 alderautomation.ca, 1 alderimages.com, 1 -aldersgatemontgomery.org, 1 aldervets.co.uk, 1 aldevadigital.com, 1 aldien.com.br, 1 @@ -9128,7 +9076,6 @@ alegromania.tk, 1 alehinta.fi, 1 alejandrocruz.es, 0 alejandromateoconde.tk, 1 -alejandromillalen.com, 1 alejandromunoz.es, 1 alejandropernett.tk, 1 alejandrophones.com.mx, 1 @@ -9151,7 +9098,6 @@ aleksejjocic.tk, 1 alelectricista.es, 1 alelin.ml, 1 alemagia.pl, 1 -aleman-auto.com, 1 alemangranada.tk, 1 alen.nl, 1 alena.ga, 1 @@ -9189,6 +9135,7 @@ alesizu.net, 1 alesraa-academy.com, 1 alesryjacek.cz, 1 aless.io, 1 +alessalopez.exposed, 1 alessandraoliva.tk, 1 alessandrobasi.it, 1 alessandrolapiana.com, 1 @@ -9196,7 +9143,6 @@ alessandrotravel.com, 1 alessandroz.ddns.net, 1 alessiacornici.com, 1 alessiomesiano.com, 1 -alestarestaurant.com, 1 alesto-mail.eu, 1 alesto.at, 1 aleszejdl.cz, 1 @@ -9283,6 +9229,7 @@ alexgonzalez-online.tk, 1 alexhaack.de, 1 alexhaidar.com, 1 alexhaydock.co.uk, 1 +alexhaydock.com, 1 alexhd.de, 1 alexhodgkinson.tk, 1 alexia.fr, 1 @@ -9293,7 +9240,6 @@ alexischaussy.xyz, 1 alexismeza.com.mx, 1 alexismeza.dk, 1 alexismeza.es, 1 -alexisparcellsmd.com, 0 alexispoficial.tk, 1 alexisquero.tk, 1 alexisshaw.com, 1 @@ -9412,6 +9358,7 @@ algerie-music.tk, 1 algerie360.com, 1 alghanimcatering.com, 1 algibranstore.id, 1 +algo2world.com, 1 algoarmada.com, 1 algoentremanos.com, 1 algoesolutions.com, 1 @@ -9439,7 +9386,6 @@ algotech.org, 1 algotest.in, 1 algrape.com, 1 alhamedeia.tk, 1 -alhayes.com, 1 alhidayahkg.com, 1 alhomaidani.com, 1 alhost.ml, 1 @@ -9504,6 +9450,7 @@ alifeadjacent.com, 1 alifeinbinary.com, 1 alight.ge, 1 alightwell.com, 1 +align-pilates.lt, 1 align27.com, 1 alignancekinesiologie.fr, 1 alignedchiro.org, 1 @@ -9561,7 +9508,7 @@ alistairshepherd.uk, 1 alistaku.tk, 1 alistar.ltd, 1 alistelab.com, 1 -alistshop.com, 1 +alistshop.com, 0 alisufyan.cloud, 1 alisufyan.net, 1 alisufyan.pk, 1 @@ -9629,8 +9576,6 @@ all-gsm-solutions.tk, 1 all-mountains.fr, 1 all-music.ml, 1 all-music.tk, 1 -all-payroll-solutions.com, 1 -all-payroll-solutions.de, 1 all-pics.tk, 1 all-rating.tk, 1 all-seo.tk, 1 @@ -9669,10 +9614,12 @@ allai.su, 1 allamakee.k12.ia.us, 1 allamericangutterprotection.com, 0 allamericanprotection.net, 1 +allamericanroofpros.com, 1 allamericatrans.com, 0 allandrich.ml, 1 allandrichonline.tk, 1 allangirvan.net, 1 +allanik.art, 1 allanlopez.tk, 1 allanta.be, 1 allapresenter.com, 1 @@ -9681,7 +9628,6 @@ allarticles.tk, 1 allas.se, 1 allas.tk, 1 allasianpics.com, 1 -allatoonadiesel.com, 0 allattaremoda.com.br, 1 allauthor.com, 1 allballband.com, 1 @@ -9710,7 +9656,6 @@ allcleanportapottyrental.com, 1 allcloud.com, 1 allcooking.tk, 1 allcookingclub.com, 1 -allcouponat.com, 1 allcourts.tk, 1 allcoveredbyac.com, 1 allcrimea.tk, 1 @@ -9749,6 +9694,7 @@ allegrettowines.com, 0 allemanniamarburg.at, 1 allemoz.com, 1 allemoz.fr, 1 +allen-health.co.uk, 1 allenacampbell.tk, 1 allenarchive.com, 1 allencountyinvoters.gov, 1 @@ -9770,12 +9716,9 @@ allerbestefreunde.de, 1 allergento.shop, 1 allergento.store, 0 allergictoidiots.tk, 1 -allergy.university, 1 allergyweb.cf, 1 allergyweb.ga, 1 -allerhand.design, 1 allerlei-havelte.nl, 1 -allerstorfer.at, 1 allerzeiten.com, 1 allerzieleninhetvondelpark.nl, 1 alles-nur-ge.cloud, 1 @@ -9824,7 +9767,6 @@ alli-diet-pill.cf, 1 alli-pills.cf, 1 alliance-immobilier-service-neuf.fr, 1 alliance-psychiatry.com, 0 -allianceairlinesflights.com, 1 allianceautomation.com.au, 1 alliancebank.com, 1 allianceblock.io, 1 @@ -9837,10 +9779,12 @@ alliances-globalsolutions.com, 0 alliancesolutionsgrp.com, 1 allianskyrkan.se, 1 allianz-pro-schiene.de, 1 +allianz-trade-collections.de, 1 allianz-trade.ae, 1 allianz-trade.be, 1 allianz-trade.ch, 1 allianz-trade.co.nz, 1 +allianz-trade.co.uk, 1 allianz-trade.co.za, 1 allianz-trade.com, 1 allianz-trade.com.br, 1 @@ -9862,8 +9806,10 @@ allianz-trade.kr, 1 allianz-trade.lt, 1 allianz-trade.lv, 1 allianz-trade.ma, 1 +allianz-trade.my, 1 allianz-trade.nl, 1 allianz-trade.no, 1 +allianz-trade.nz, 1 allianz-trade.pl, 1 allianz-trade.qa, 1 allianz-trade.ro, 1 @@ -9878,6 +9824,44 @@ allianzdirect.com, 1 allianzdirect.de, 1 allianzdirect.it, 1 allianzdirect.nl, 1 +allianztrade.ae, 1 +allianztrade.be, 1 +allianztrade.ch, 1 +allianztrade.co.nz, 1 +allianztrade.co.uk, 1 +allianztrade.co.za, 1 +allianztrade.com.br, 1 +allianztrade.com.tw, 1 +allianztrade.cz, 1 +allianztrade.de, 1 +allianztrade.dk, 1 +allianztrade.ee, 1 +allianztrade.fi, 1 +allianztrade.fr, 1 +allianztrade.gr, 1 +allianztrade.hk, 1 +allianztrade.hu, 1 +allianztrade.id, 1 +allianztrade.in, 1 +allianztrade.it, 1 +allianztrade.jp, 1 +allianztrade.kr, 1 +allianztrade.lt, 1 +allianztrade.lv, 1 +allianztrade.ma, 1 +allianztrade.nl, 1 +allianztrade.no, 1 +allianztrade.nz, 1 +allianztrade.pl, 1 +allianztrade.qa, 1 +allianztrade.ro, 1 +allianztrade.se, 1 +allianztrade.sg, 1 +allianztrade.sk, 1 +allianztrade.tw, 1 +allianztrade.uk, 1 +allianztrade.us, 1 +allianztrade.vn, 1 alliedartistswv.org, 1 allieddigital.net, 1 alliedinterpreting.com, 1 @@ -9976,7 +9960,6 @@ allshapes.co.nz, 1 allshiftmed.com, 1 allshousedesigns.com, 0 allslots777.com.pk, 1 -allslotspak.com, 1 allsmart.gr, 1 allsouls.co.za, 1 allspinecare.com, 1 @@ -10021,6 +10004,7 @@ allureclinic.pt, 1 alluremedicalaesthetic.com, 1 allurescarves.com, 0 alluringdesigns.tk, 1 +alluriva.ch, 1 alluvion.studio, 1 allvideofoot.tk, 1 allvips.ru, 1 @@ -10050,17 +10034,20 @@ almadenglobal.com, 1 almagalla.com, 1 almaher-est.com, 1 almajaniyate.ga, 1 +almaleaders.net, 1 almalinux.org, 1 almanea.email, 1 almanea.family, 1 almanea.net, 1 almanea.org, 1 +almanilan.com, 1 almanshood.com, 1 almanyada-denklik.de, 1 almanyada-denklik.info.tr, 1 almarail.tk, 1 almargen.ga, 1 almargen.tk, 1 +almaridgo.com, 1 almarin.es, 1 almark-baupartner.eu, 1 almasoft.ga, 1 @@ -10126,6 +10113,7 @@ alohotels.com, 1 alojadalu.com.br, 1 alola.co.uk, 1 alolabor.org, 1 +aloma.io, 1 alomch.gq, 1 alomendia.tk, 1 alomobittersgh.com, 1 @@ -10148,6 +10136,7 @@ alotennis.ir, 1 alotso.com, 1 alottajava.com, 1 alov.blog, 1 +alovesinh.com, 1 alp-eastlink-portal-model.azurewebsites.net, 1 alp-samsungca-portal-model.azurewebsites.net, 1 alp-spectrum-portal-model.azurewebsites.net, 1 @@ -10185,14 +10174,12 @@ alpes-revetements.com, 1 alpesc.com, 1 alpetrov.cf, 1 alpha-ag.ru, 1 -alpha-associates.ch, 1 alpha-bet.com.ua, 1 alpha-centauri.tk, 1 alpha-force.net, 0 alpha-ink.de, 1 alpha-kamera.de, 1 alpha.ch, 1 -alphaagency360.com, 1 alphaassurances.com, 1 alphabet-z.xyz, 1 alphabetsigns.com, 1 @@ -10260,6 +10247,7 @@ alpineplanet.com, 1 alpinepubliclibrary.org, 1 alpinestarmassage.com, 1 alpinewy.gov, 1 +alplink.eu, 1 alplogopedia.it, 1 alpparts.com, 1 alpstar.kiev.ua, 1 @@ -10274,7 +10262,6 @@ alrahman.de, 1 alrdc.com, 1 alre-outillage.fr, 1 alredaldaem.com, 1 -alredho.com, 1 alrehmantech.tk, 1 alrioart.com, 1 alroniks.com, 0 @@ -10510,6 +10497,7 @@ alvimedika.com.ua, 1 alvinalvelino.com, 1 alvinaonline.com, 1 alvirzy.tk, 1 +alvixinsurance.com, 1 alvn.ga, 1 alvorada-rs.com.br, 1 alvordschools.org, 1 @@ -10531,7 +10519,6 @@ alxu.ca, 1 aly.pet, 1 alyafood.com, 1 alykkelife.com, 1 -alyoung.com, 1 alyssamilano.tk, 1 alyusr.com.sa, 1 alyx.sh, 1 @@ -10587,6 +10574,7 @@ amaiharajuku.com, 1 amaisd.org, 1 amaiz.com, 0 amalbansode.com, 1 +amaleki.com, 1 amalelmohtar.com, 0 amalfi5stars.com, 1 amalfipositanoboatrental.com, 1 @@ -10756,8 +10744,10 @@ amdelisi.tk, 1 amdental.lv, 1 amdiagnostics.com.au, 1 amdm.ru, 1 +amdmachines.com, 1 amdrumors.com, 1 amdukis-bordercollies.tk, 1 +amebaiot.com, 1 amebavirtual.tk, 1 amebolounge.tk, 1 amechancez.work, 1 @@ -10769,13 +10759,13 @@ ameego.net, 1 ameego.nl, 1 ameego.org, 1 ameen.tech, 1 -ameenaccounting.co.za, 1 ameeradubai.com, 1 amees.me, 0 ameho.me, 0 ameisenbaer.tk, 1 amelanchiers.tk, 1 amelia-wedding.pl, 1 +ameliagb.com, 1 ameliatillbryssel.se, 1 amelielei.net, 1 amello.de, 1 @@ -10804,14 +10794,13 @@ americamilitar.com, 1 american-automotive.tk, 1 american-school-search.com, 1 americanaatbrand.com, 1 -americanac.net, 1 -americanacrylicaward.com, 1 americanartwarehouse.com, 1 americanbooks.cf, 1 americanbuzz.tk, 1 americancanyon.gov, 1 americancasinoguide.shop, 1 americanclimatecorps.gov, 1 +americancraftsman.net, 1 americandisinfectingassociation.com, 1 americandisinfectingassociation.org, 1 americandrugrehabs.com, 1 @@ -10830,7 +10819,6 @@ americanlegaltranscription.com, 1 americanmessaging.net, 1 americanmusical.com, 0 americanoncology.com, 1 -americanpointer.co, 1 americanpop.be, 1 americanpridefund.com, 1 americanreels.com, 1 @@ -10936,7 +10924,6 @@ amilum.org, 1 amimi.tk, 1 amimore.ru, 1 aminafrance.com, 1 -aminatakondeh.me, 1 amineptine.com, 1 aminfarhoodi.tk, 1 aminformatica.ml, 1 @@ -10957,7 +10944,6 @@ amirarsalan.tk, 1 amirasyraf.com, 0 amirautos.com, 0 amirhanova-a.ru, 1 -amirhosseinabutalebi.com, 1 amirkaraj.tk, 1 amis-du-cinema.com, 1 amis-sh.fr, 1 @@ -10982,7 +10968,6 @@ amleather.pl, 1 amliorefemme.tk, 1 amlisten.com, 1 amlops.com.au, 1 -amm-ceramics.com, 1 ammanagingdirectors.com, 1 amministratore.biz, 1 amministratore.roma.it, 1 @@ -11008,7 +10993,7 @@ amoatuaexistencia.com.br, 1 amobileway.co.uk, 1 amoc.org, 1 amodeocarlo.com, 1 -amoderm.com, 1 +amoebababy.eu, 1 amoeboids.com, 1 amogus.cloud, 1 amokinio.com, 1 @@ -11114,7 +11099,6 @@ amscrosscomp.nl, 1 amsel305nc.ddnss.de, 1 amsev.de, 1 amsmart.hu, 1 -amsochile.cl, 1 amstelradio.tk, 1 amstelveentje.nl, 1 amsterdam.nl, 1 @@ -11265,8 +11249,8 @@ anandmaratha.com, 1 anangeix.tk, 1 anantshri.info, 1 ananyagupta.tk, 1 -anaprieto.com, 1 anapsi.tk, 1 +anaquadrada.com, 1 anar.biz, 0 anarajaoui.ma, 1 anarcasmetalicos.tk, 1 @@ -11368,7 +11352,6 @@ andamineglobal.com, 1 andantepiano.studio, 1 andefang.com, 1 andel.info, 0 -andercloud.de, 1 anders.hamburg, 1 andersbedraad.nl, 1 anderskp.dk, 0 @@ -11394,6 +11377,7 @@ andhania.one, 1 andhrawishesh.com, 1 andiamoluggage.com, 1 andibo.net, 1 +andin.art, 1 andiplusben.com, 1 andis.com, 1 andisadhdspot.com, 1 @@ -11402,7 +11386,6 @@ andnet.tk, 1 andoaingo-gaztetxea.tk, 1 andobil.com, 1 andoms.fi, 1 -andonivr.com, 1 andonix.com, 1 andorraimperial.tk, 1 andorrainsiders.com, 1 @@ -11583,6 +11566,8 @@ andropia-online.fr, 1 androscoggincountyema.gov, 1 androskylugo.com, 0 androtix.com, 1 +andrzej-na-rowerze.pl, 1 +andrzejnarowerze.pl, 1 andscape.com, 1 andsecure.ch, 0 andthisismyodyssey.tk, 1 @@ -11649,7 +11634,6 @@ anexperimentedblog.tk, 1 anextraordinaryday.net, 1 anfadern.com, 1 anfieldbc.co.uk, 1 -anfilada.info, 1 anfr.fr, 1 anfra.fi, 1 angablade.com, 1 @@ -11657,6 +11641,7 @@ angarstroy.com, 1 ange-de-bonheur444.com, 1 angel-body.com, 1 angel-jrk.com, 1 +angel-serv.com, 1 angel-wing.jp, 1 angela.baby, 1 angelaheck.com, 1 @@ -11701,7 +11686,6 @@ angelsdecay.tk, 1 angelsgirl.eu.org, 1 angelshha.com, 1 angelsmile.tk, 1 -angelsmithphotography.com, 1 angelspetfuneralhome.com, 1 angelswar.ga, 1 angeltorri.tk, 1 @@ -11712,7 +11696,7 @@ angepsychedelices.tk, 1 angeredmoon.tk, 1 angermanalvorna.tk, 1 angestoepselt.de, 1 -angie-webdesign.ch, 0 +angie-webdesign.ch, 1 angiejones.com, 1 angielynx.net, 1 angiesite.tk, 1 @@ -11721,6 +11705,7 @@ angiolinikids.it, 1 angione.ca, 1 angione.se, 1 angisonline.cz, 1 +angiszi.hu, 1 angkapaito.net, 1 angkasa.net.id, 1 anglarsports.com, 1 @@ -11761,6 +11746,7 @@ anhdvshop.com, 1 anhembi.br, 1 anhoa.edu.vn, 1 anhtus.com, 1 +anhtus.vn, 1 ani-man.de, 1 aniababan.com, 1 aniabuduje.pl, 1 @@ -11774,7 +11760,6 @@ anievo.id, 0 aniforprez.net, 1 anightmareonelmstreet.tk, 1 anihilated.tk, 1 -anihime.com, 1 anihonetwallpaper.com, 1 anikajulie.com, 1 anikaras.ga, 1 @@ -11927,7 +11912,6 @@ aniwatch.me, 1 aniwhen.com, 1 aniya.moe, 1 anja-vastgoed.nl, 1 -anjajoerger.life, 1 anjansundaram.com, 1 anjara.eu, 1 anjocerdena.com, 1 @@ -11957,6 +11941,7 @@ ankaraotomobilyedekparca.com.tr, 1 ankaraotoparca.com.tr, 1 ankaraparts.com.tr, 1 ankararentacar.name.tr, 1 +ankarasaglikkabini.com, 1 ankaraseo.name.tr, 1 ankarasoket.com.tr, 1 ankarasondajkuyusutemizleme.com, 1 @@ -11974,6 +11959,7 @@ ankitverma.me, 1 ankiuser.net, 1 ankiweb.net, 1 anklepainclinic.sg, 1 +ankorltd.ru, 1 ankos.cf, 1 ankosofttech.com, 1 ankosofttech.de, 1 @@ -12043,6 +12029,7 @@ annetta.com, 1 annettewindlin.ch, 1 annevankesteren.nl, 1 annevankesteren.org, 1 +annexvault.com, 1 anney-life.com, 1 anniangel-porn.com, 1 annicascakes.nl, 1 @@ -12071,7 +12058,6 @@ anns.eu, 1 annu.tk, 1 annuaire-auto-ecole.com, 1 annuaire-express.tk, 1 -annuaire404.com, 1 annual.ga, 1 annualreportowl.com, 1 annuire.org, 1 @@ -12137,9 +12123,7 @@ anoual-lycee.tk, 1 anouncer.ga, 1 anova.com, 1 anoxinon.media, 1 -anp.it, 1 anpaju.gq, 1 -anpigabon.ga, 1 anquankongjian.com, 1 anquanssl.com, 1 ans-ge.ch, 0 @@ -12199,6 +12183,7 @@ antani.cloud, 1 antarcti.co, 1 antarctida.tk, 1 antaresmedia.com.py, 1 +antaressystems.net, 1 antarktida.ru, 1 antarktida.tk, 1 antarlina.com, 1 @@ -12319,7 +12304,6 @@ antihistory.gq, 1 antihistory.ml, 1 antihype.space, 1 antijob.tk, 1 -antik-trodelmarkt.de, 1 antikfloors.ga, 1 antikfloors.gq, 1 antikfloors.ml, 1 @@ -12588,6 +12572,7 @@ apachelounge.com, 1 apachetoday.com, 1 apadmi.com, 0 apadrinaunolivo.org, 1 +apaeilha.org.br, 1 apaesthetics.com, 1 apaleo.com, 1 apambiente.pt, 1 @@ -12655,8 +12640,6 @@ apex-promotion.com, 1 apex-writers.com, 1 apex.ac, 1 apex.aw, 1 -apexchain-dev.com, 1 -apexchimneyrepairs.com, 1 apexconsulting.io, 1 apexes.co.jp, 1 apexfacades.com.au, 1 @@ -12685,13 +12668,13 @@ aphelionband.ga, 1 aphelis.net, 1 aphorismen-archiv.de, 1 api-agri.ga, 1 -api-bitrefill.com, 1 api-hany.cf, 1 api.biz.tr, 1 api.lookout.com, 1 api.org.tr, 1 api.recurly.com, 1 api.saxo, 1 +api.spa, 1 api.tr, 1 api2cart.com, 1 api42.ch, 1 @@ -12704,7 +12687,6 @@ apicep.com, 1 apico-fish.ru, 1 apicoltore.it, 1 apiculture.net, 1 -apido.de, 1 apienergisahomol.com, 1 apifiregroup.com, 1 apigb.com, 1 @@ -12794,6 +12776,7 @@ apoioterapeutico.com, 1 apokalipsis.tk, 1 apola.best, 1 apolitical.co, 1 +apolloautopecas.com.br, 1 apollodiet.com, 1 apollogames.cz, 1 apolloheatingandair.com, 0 @@ -12808,7 +12791,6 @@ apollux.ro, 1 apollyon.work, 1 apologrouptv.net, 1 apoly.de, 1 -aponkral.com, 1 aponkral.com.tr, 1 aponkral.dev, 1 aponkral.net, 1 @@ -12881,7 +12863,6 @@ appartamento.tk, 1 appartement-evolene.net, 0 appartement-oostduinkerke.tk, 1 appartementhaus-am-uke.de, 1 -appartementhaus-badria.de, 1 appartementspanje.tk, 1 appartementvlissingen.tk, 1 appartenfrance.com, 1 @@ -12898,7 +12879,6 @@ appemployees.tk, 1 appen.com, 1 appen.com.cn, 1 appengine.google.com, 1 -appetiser.com.au, 1 appetto.co, 1 appfollow.io, 1 appgeek.com.br, 1 @@ -12972,6 +12952,7 @@ applicationmanager.gov, 1 applicationtracker.com, 1 applied-anthropology.com, 1 applied-privacy.net, 1 +appliedinnovationinc.com, 1 appliedmaths.lk, 1 appliedprinciples.co.ke, 1 appliedresearchanddesign.com, 1 @@ -12981,6 +12962,7 @@ applingcounty.gov, 1 applique.co.jp, 0 appliquette.com.au, 1 appllio.com, 1 +applogytel.es, 1 apploye.com, 0 apply.eu, 1 apply55gx.com, 1 @@ -13059,7 +13041,6 @@ appuntisulblog.it, 1 appunwrapped.com, 1 appveyor.com, 1 appwardbeta.com, 1 -appwhats.space, 0 appworld.ga, 1 appwrk.com, 1 appypie.com, 1 @@ -13096,7 +13077,6 @@ apropotv.ro, 0 apropotv.tk, 1 aprosoftwaresolutions.com, 1 aprovatotal.com.br, 1 -aprpullmanportermuseum.org, 0 aprsdroid.org, 1 apruebame.tech, 1 apruvd.com, 1 @@ -13146,13 +13126,14 @@ apviz.io, 1 apw-dortmund.de, 1 aqarategypt.com, 1 aqarbab.com, 1 +aqas-arch.de, 1 aqas.de, 1 aqdlt.tv, 1 aqdun.com, 0 aqenglish.pk, 1 aqihub.info, 1 aqlivia.com, 1 -aqmetrics.com, 1 +aqmetrics.com, 0 aqqrate.com, 1 aqss.rs, 1 aqu.com, 1 @@ -13248,13 +13229,13 @@ aquitysolutions.com, 1 aquivardenafilo.gq, 1 aqusto.pl, 1 aqworlds.cf, 1 +aqy.fr, 1 ar-1xbet.com, 1 ar-android.com, 1 ar-informatique.ch, 0 ar-oma.tk, 1 ar-vernet.fr, 1 ar.al, 1 -ara.wales, 1 araadvocats.net, 1 arab-drama.tv, 1 arab-romance.tk, 1 @@ -13330,6 +13311,7 @@ arasikackm.com, 1 arasozgun.net, 1 aratum.com, 1 aravalionyx.com, 1 +aravana74.ru, 1 aravindhebbali.com, 1 aravitor.com, 1 aravo.com, 1 @@ -13347,6 +13329,7 @@ arbeitskraft.de, 1 arbeitslosenverwaltung.de, 1 arbejdsdag.dk, 1 arbeta.re, 0 +arbitix.io, 1 arbitmax.com, 1 arbitrarion.com, 1 arbitrary.ch, 1 @@ -13358,6 +13341,7 @@ arboleda-hurtado.com, 1 arbolesdenavidad.info, 1 arbolesdenavidad.site, 1 arbophil.fr, 1 +arbopolar.de, 1 arborio.com.ua, 1 arboristadvice.com, 1 arboristic.de, 1 @@ -13477,6 +13461,7 @@ arcourts1st.gov, 1 arcourts6th.gov, 1 arcovix.com, 1 arcproject.org.uk, 1 +arcpx.com, 1 arcsar.eu, 1 arcserv.com, 1 arcskoru.com, 1 @@ -13503,10 +13488,14 @@ ardacar.com, 1 ardakannews.tk, 1 ardania.de, 1 ardaninmutfagi.com, 1 +ardeal24.ro, 1 ardeche-guide.com, 1 ardennes.com, 1 +ardens.co.uk, 1 ardentinsure.com.au, 1 +ardentsia.com, 1 ardenwolfsky.com, 1 +ardhi-dz.com, 1 arditech.ml, 1 ardmoreok.gov, 1 ardo.tk, 1 @@ -13525,7 +13514,6 @@ area51bit.com, 1 area51bit.it, 1 areacinquentaeum.tk, 1 areacode231.com, 1 -areaf5.es, 1 areallyneatwebsite.com, 1 arealsultan.ga, 1 areanet.tk, 1 @@ -13632,7 +13620,6 @@ arhipka.tk, 1 arhitectura.ru, 1 arhivpalanka.rs, 1 ari.beauty, 1 -ari.gg, 1 ari.lt, 1 aria-best.ru, 1 aria-best.su, 1 @@ -13648,8 +13635,6 @@ arian.io, 1 ariana.wtf, 1 ariashii.tk, 1 aribicara.tk, 1 -aric-assurances.fr, 1 -aricabos.com.br, 1 aricabus.tk, 1 aricaluchalibre.tk, 1 aridhia.com, 1 @@ -13735,6 +13720,7 @@ arjen-robben.tk, 1 arjunasdaughter.pub, 1 arjunvedbrat.com, 1 arjweb.co.uk, 1 +ark.swiss, 1 ark4nyc.com, 1 arkaan.tk, 1 arkadaslik.tk, 1 @@ -13769,7 +13755,6 @@ arknights.work, 0 arknodejs.com, 1 arkomaok.gov, 1 arks.cards, 1 -arksan.com.tr, 1 arktci.com, 1 arkutinofamilyresort.com, 1 arlatools.com, 1 @@ -13793,7 +13778,6 @@ armadateam.tk, 1 armadillogaragedoors.com, 1 armadilloprojects.co.uk, 1 armadilloroofing.co.uk, 1 -armadilloscubatx.com, 1 armado.tk, 1 armagangultekin.av.tr, 1 armageddonclan.tk, 1 @@ -13922,7 +13906,6 @@ aromahexe.at, 1 aromaimportado.com.br, 1 aromaonlinestore-korat.com, 1 aromatherapy.cf, 1 -aromatlas.com, 1 aromatraining.com, 1 aromavadisi.com, 1 aromex.ml, 1 @@ -13977,6 +13960,7 @@ arrivedconsulting.com, 1 arriveguidelines.org, 1 arrivehealth.com, 1 arrmaforum.com, 1 +arroapp.com.ar, 1 arroba.digital, 1 arrotatore.roma.it, 1 arrow-api.nl, 1 @@ -14033,6 +14017,7 @@ art-illustration.tk, 1 art-khotyn.tk, 1 art-kuchni.tk, 1 art-news.tk, 1 +art-okon.ru, 1 art-online.tk, 1 art-pix.de, 1 art-pix.net, 1 @@ -14092,6 +14077,7 @@ arteinstudio.it, 1 artel.od.ua, 1 artelignum.tk, 1 artelista.com, 1 +artem.se, 0 artembusiness.tk, 1 artemida-dot.tk, 1 artemis-fowl.tk, 1 @@ -14122,7 +14108,6 @@ artetbalade.tk, 1 artetculture.tk, 1 artevos.com, 1 artevos.de, 1 -artex.com.br, 1 artexhibition.jp, 1 artextasia.com, 1 artfabrics.com, 1 @@ -14170,6 +14155,7 @@ artificethefilm.com, 1 artificiala.gq, 1 artificialaxis.com, 1 artificialdiffusion.com, 1 +artificialheights.com, 1 artificialintelligenceproject.com, 1 artificialplants.tk, 1 artificialpoetry.com, 1 @@ -14189,6 +14175,7 @@ artisan-emmanuel.fr, 1 artisan-ravalement-facade.fr, 1 artisan.tk, 1 artisanat2france.fr, 1 +artisanconstructionco.com, 1 artisanhd.com, 1 artisanportrait.com, 1 artisansoftaste.com, 1 @@ -14260,6 +14247,7 @@ artru.tk, 1 arts.gov, 1 artsalon.tk, 1 artscanvas.org, 1 +artshouse.com.au, 1 artsinbushwick.org, 1 artslife.com, 1 artsmagazine.com, 1 @@ -14379,7 +14367,6 @@ asabacortoscaseros.tk, 1 asadatec.de, 1 asaduddinowaisi.tk, 1 asafaweb.com, 1 -asafilm.co, 1 asafomba.com, 0 asahi-tax.or.jp, 1 asahiseikou.com, 1 @@ -14404,7 +14391,6 @@ asap.gov, 1 asapboardshop.com, 1 asaphomeinspect.com, 1 asapp.com, 0 -asaprestoration247.com, 1 asara.tk, 1 asart.bg, 1 asas-tn.org, 1 @@ -14487,12 +14473,17 @@ asexualitat.cat, 1 asfaleianet.gr, 1 asfalteros.cz, 1 asfalti.it, 1 +asfalti.milano.it, 1 asfalto.roma.it, 1 asfberbagi.org, 1 asfono.gov, 1 asg-egy.com, 1 asgard-engineering.com, 1 +asgassociationbenefitplans.com, 1 asgeirolafs.com, 1 +asgfinancialadvisors.com, 1 +asgnqpc.com, 1 +ashargrosirparfum.com, 1 asharq.com, 1 ashastalent.com, 0 ashbee.buzz, 1 @@ -14517,10 +14508,12 @@ asherosborne.com, 1 asheroto.com, 1 asherrit.com, 1 ashersec.com, 1 +ashersgrp.com, 1 ashesdiamonds.com, 1 ashesheriff.gov, 1 ashevillemenshealth.com, 1 ashfak.tk, 1 +ashfordcastle.com, 1 ashgroveclinic.com.au, 1 ashgw.me, 0 ashiba-kagu.com, 1 @@ -14559,10 +14552,8 @@ asia-fhjt.com, 1 asia-fuhui.com, 1 asia4five.com, 1 asiabyte.com, 1 -asiacommerce.id, 1 asiadirect.co.th, 1 asiafaninfo.net, 1 -asiaferguson.com, 1 asiafood-curator.com, 1 asiagate.ga, 1 asiahabit.com, 0 @@ -14635,12 +14626,10 @@ askbiblescholars.com, 1 askbill.org.uk, 1 askbrake.com, 1 askcaisse.com, 1 -askcascade.com, 0 askdeliver.tk, 1 asker-massasje.no, 1 askerweb.cf, 1 askeverythingonline.com, 1 -askeygeek.com, 1 askfoto.com, 1 askfront.com, 1 askgamblers.com, 1 @@ -14674,7 +14663,6 @@ aslanzone.shop, 1 aslia.no, 1 asliceofny.com, 1 asliving1.com, 1 -aslme.org, 1 aslsp.org, 1 asm.io, 1 asm13.org, 1 @@ -14862,6 +14850,7 @@ assurances-brg.com, 1 assured.se, 0 assuredallies.com, 1 assuredspc.com, 1 +assuretechnical.com, 1 assureuk.co.uk, 1 assusoft.eu, 1 assyriatwpmi.gov, 1 @@ -14902,6 +14891,7 @@ asterix-obelix.ga, 1 asterobot.net, 1 astettner.de, 1 asthamishra.com, 1 +asthene.com, 1 asthithwa.com, 1 asthma-explained.com, 1 asthowen.com, 1 @@ -15002,6 +14992,7 @@ astroxe.com, 1 astroze.it, 1 astrumadvies.nl, 1 astsummer.tk, 1 +asttu.org, 1 astucas.com, 1 astucedirecte.tk, 1 astucewebmaster.com, 1 @@ -15231,10 +15222,10 @@ atkstore.com, 1 atl-paas.net, 0 atl.direct, 1 atl.wiki, 1 +atlacademy.org, 1 atlach.com, 1 atlan.digital, 1 atlan.nl, 1 -atlanta-airport-parking.com, 1 atlantacustomfab.com, 1 atlantahealthcare.tk, 1 atlantajewishlifefestival.com, 1 @@ -15300,7 +15291,6 @@ atlastube.com, 1 atlasuno.com, 1 atlaswu.com, 1 atletico-guacuano.tk, 1 -atletika.hu, 1 atletismomacotera.tk, 1 atlucknow.com, 1 atm-bur.ru, 1 @@ -15338,9 +15328,7 @@ atocrailwarrants.org, 1 atoctravelagents.org, 1 atoka.io, 1 atolm.net, 1 -atom-china.org, 1 atombase.org, 1 -atomeus.nl, 0 atomglimpses.cn, 1 atomic-bounce.com, 1 atomic.radio, 1 @@ -15370,10 +15358,10 @@ atplonline.co, 1 atproducts.xyz, 1 atpx.com, 1 atradius.co.uk, 1 -atragumi.hu, 1 atraining.ru, 1 atramare.com, 1 atrands.com, 1 +atraverslobjectif.com, 1 atrdsymposium.org, 1 atrec.org, 1 atrevillot.com, 1 @@ -15408,7 +15396,6 @@ attendu.cz, 0 attengo.ga, 1 attentioninsight.com, 1 attentionpleats.com.tw, 1 -attesawp.com, 1 atthehelmins.com, 1 attic-design.com, 1 atticinsulation-houston.com, 1 @@ -15445,7 +15432,6 @@ atuin.be, 1 atulhost.com, 1 atumfire.ru, 1 atunel.tk, 1 -atvirtual.at, 1 atvlifesaver.net, 1 atvsafety.gov, 1 atwatermn.gov, 1 @@ -15473,7 +15459,6 @@ au-inter.net, 1 au-troisieme-oeil.com, 1 au.by, 1 au.search.yahoo.com, 0 -au2pb.org, 1 aubagne.fr, 1 aubassadeurs-airfly.fr, 1 aubassadeurs.fr, 1 @@ -15501,6 +15486,7 @@ aucklandadventurejet.co.nz, 0 aucklandcastles.co.uk, 1 aucneteurope.com, 1 aucoindufruit.fr, 1 +auction.com, 1 auctionbv.tk, 1 audacityland.com, 1 audencia.com, 0 @@ -15564,6 +15550,7 @@ audit.tw, 1 auditeorganum.cz, 1 auditingfirm.tk, 1 audition-radio.tk, 1 +audition.com.br, 1 auditiontapes.co.uk, 1 auditore-host.tk, 1 auditorwashingtoncountyohio.gov, 1 @@ -15575,7 +15562,6 @@ audumakrasas.lv, 1 auenhof-agrar.de, 1 auerbach-verlag.de, 1 aufay.me, 1 -aufeergroup.eu, 1 aufeerjob.cz, 1 aufiowilauf.at, 1 aufmerksamkeitsstudie.com, 1 @@ -15585,7 +15571,6 @@ auftragsfertigung.at, 1 aufwachzeit.at, 1 aufwachzeit.com, 1 aufwecken.dynu.net, 1 -augendre.info, 1 augenlaser-chemnitz.de, 1 augenlaser-dresden.de, 1 augenlaserzentrum-dresden.com, 1 @@ -15719,6 +15704,7 @@ ausbilderportal.com, 1 ausbildung-rbg.de, 1 ausbildungplus.de, 1 ausbrightfacilities.com.au, 1 +ausbusinessregister.com.au, 1 auscanalliancecorp.com, 1 auscube.tk, 1 auscultador.com, 1 @@ -15734,7 +15720,6 @@ ausgrants.au, 1 ausgrants.com, 1 ausgrants.com.au, 1 ausics.net, 1 -ausielogistics.com.au, 1 auskast.com, 1 auskate.tk, 1 auskunftsbegehren.at, 1 @@ -15764,11 +15749,12 @@ austbrokers.com.au, 1 austcm.com.au, 1 austenplumbing.com, 1 austercita.tk, 1 -austickcarremoval.com.au, 1 +austickcarremoval.com.au, 0 austillconstruction.com, 1 austin-security-cameras.com, 1 austinbestdjs.com, 1 austincardiac.com, 1 +austincenters.com, 1 austincosmetic.com, 1 austinface.com, 1 austinlaw.co.uk, 1 @@ -15852,14 +15838,15 @@ autism-explained.com, 1 autism.ie, 1 autisme-france.fr, 1 autismewoerden.nl, 1 +autismoemcurso.com.br, 1 autista.roma.it, 1 autistici.org, 1 +autix.es, 1 auto-albrecht.de, 1 auto-anleitung.de, 1 auto-arsenal.tk, 1 auto-borse.tk, 1 auto-delchev.com, 1 -auto-drpciv.ro, 1 auto-ecole-du-tursan.fr, 1 auto-ecole-remparts.fr, 1 auto-graph.eu, 1 @@ -15985,7 +15972,6 @@ autojur.com.br, 1 autokasko.tk, 1 autokeskus.com, 1 autokino-sachsen.de, 1 -autoklub.cz, 1 autoknife.cf, 1 autokontinent.ml, 1 autokovrik-diskont.ru, 1 @@ -16172,6 +16158,7 @@ automotivewish.ga, 1 automotiveworth.ga, 1 automotiveyankee.ga, 1 automoto-tom.net, 1 +automotoscout.de, 1 automouseclick.com, 1 automuovifix.fi, 1 autonewsreview.com, 1 @@ -16210,7 +16197,6 @@ autorefuellings.com, 1 autorefuellings.ru, 1 autoreinigung-noack.de, 1 autoren-magazin.de, 1 -autorepguide.com, 1 autorepmans.com, 1 autoresponderilimitado.tk, 1 autoreview.ml, 1 @@ -16244,7 +16230,6 @@ autospurghi.roma.it, 1 autospurgo.co, 1 autospurgo.com, 1 autospurgo.milano.it, 1 -autospurgo.name, 1 autostationsest.ga, 1 autostickere.ro, 1 autostodulky.cz, 1 @@ -16297,6 +16282,7 @@ autozuki.com, 1 autres-talents.fr, 1 auts.fi, 0 autumnhungary.tk, 1 +autumnplantfair.nz, 1 autya.ga, 1 auventsettoilesregional.ca, 1 auventsettoilesregional.com, 1 @@ -16313,6 +16299,7 @@ auxessenceselfiques.fr, 1 auxilion.de, 1 auxilius.be, 1 auxion.net, 1 +auxite.io, 1 auxmode.com, 1 auzeau.fr, 1 av-autoparts.gr, 1 @@ -16521,6 +16508,7 @@ avionicbooks.tk, 1 avions.ga, 1 aviorair.com, 0 aviprime.by, 1 +avirahost.com.br, 1 aviruptribedi.com, 1 avisbabes.com, 1 avishanx.com, 1 @@ -16596,7 +16584,6 @@ avsd01.com, 1 avstack.io, 1 avstekla.ru, 1 avt-ukraine.com, 1 -avtechno.ru, 1 avtecmedia.com, 0 avto-bazar.tk, 1 avto-signal.cf, 1 @@ -16622,6 +16609,7 @@ avtoucheba.tk, 1 avtours.gr, 1 avtoveles.by, 1 avtovikup.ml, 1 +avtovokzaly-ua.com, 1 avtovokzaly.ru, 1 avtoyurist.cf, 1 avtoyurist.ga, 1 @@ -16768,6 +16756,7 @@ axiniteguitars.ca, 1 axiniteguitars.com, 1 axioinvest.com, 1 axiom4.net, 1 +axiomametering.com, 1 axiome.cpa, 1 axiomecomptables.ca, 1 axiomecpa.ca, 1 @@ -16802,7 +16791,6 @@ axitoequities.au, 1 axitoequities.com.au, 1 axitolending.au, 1 axitolending.com.au, 1 -axl.net, 1 axmedmessi.tk, 1 axoftglobal.com, 1 axoftglobal.ru, 1 @@ -16984,7 +16972,6 @@ aza.gg, 1 azadblog.tk, 1 azadliq.online, 1 azafraneshelca.es, 1 -azairline.com, 1 azaleos.com, 1 azalhavayolu.com.tr, 1 azapp-vvv-program-api-dev.azurewebsites.net, 1 @@ -17054,6 +17041,7 @@ azorin.tk, 1 azort.com, 1 azotobacter.nl, 1 azoulaygroup.org, 1 +azovgroup.com, 1 azplayersclub.com, 1 azpousivmechu.cz, 1 azquality.com, 1 @@ -17064,6 +17052,7 @@ azrhymes.com, 1 azs-nw.ru, 1 azsalud.gov, 1 azsec.biz, 1 +azshop.ro, 1 azso.pro, 1 azsoriginal.pw, 0 azsupport.com, 1 @@ -17120,7 +17109,6 @@ b-designer.tk, 1 b-digital.cf, 1 b-digital.ga, 1 b-digital.gq, 1 -b-entropy.com, 1 b-freerobux.ga, 1 b-honey.gr, 1 b-institute.ml, 1 @@ -17137,6 +17125,7 @@ b-utstore.com, 1 b-wartburg.de, 1 b.ee, 1 b.ls, 1 +b.lu, 1 b.wtf, 1 b00de.ga, 1 b0hr.ai, 1 @@ -17154,7 +17143,6 @@ b1nzy-pinged.me, 1 b1r0d4l0m.com, 1 b1rd.tk, 1 b24.pt, 1 -b2b-leads.nl, 1 b2b-nestle.com.br, 1 b2bazun.com, 1 b2bchiemihara.com, 1 @@ -17166,7 +17154,9 @@ b2bpoke.com, 1 b2markt.de, 1 b2music.asia, 1 b2og.com, 1 +b3313.org, 1 b3bra.win, 1 +b3ia.com, 1 b3pacific.com, 1 b3t4.org, 1 b3tec.fr, 1 @@ -17216,7 +17206,6 @@ b70663.com, 1 b70664.com, 1 b70884.com, 1 b70991.com, 1 -b70992.com, 1 b70993.com, 1 b70994.com, 1 b70995.com, 1 @@ -17317,13 +17306,13 @@ babbel.tk, 1 babbelchat.tk, 1 babbels.com, 1 babblefeed.tk, 1 +babeatlas.com, 1 babehunt.tk, 1 babekids.tk, 1 babel.es, 1 babel.nl, 1 babel.ua, 1 babeleo.com, 1 -babelfisch.eu, 1 babelfish.money, 1 babes.com, 1 babesnetwork.com, 1 @@ -17555,7 +17544,6 @@ badeurlaub.tk, 1 badf00d.de, 1 badge.rs, 1 badgeboundprep.com, 1 -badgerherald.com, 1 badges.fedoraproject.org, 1 badges.stg.fedoraproject.org, 1 badgetree.com, 1 @@ -17578,6 +17566,7 @@ badmintonargentina.tk, 1 badmintonbeersheva.co.il, 1 badmintonclubwaarschoot.tk, 1 badmintondk.cz, 0 +badmintonline.nl, 1 badmintonoverdag.tk, 1 badmonkey.fr, 1 badmood.tk, 1 @@ -17593,7 +17582,6 @@ badoo.de, 1 badoo.eu, 1 badoo.us, 1 badpc.net, 1 -badphilosopher.com, 1 badpinguin.gq, 1 badpreachers.tk, 1 badrap.io, 1 @@ -17625,6 +17613,7 @@ baer-concepts.de, 1 baer-holger.de, 0 baer.space, 1 baesystems-she.com, 1 +baeverdock.com, 1 baevserver.ddns.net, 1 bafing.com, 1 bafoeg-rechner.de, 1 @@ -17656,6 +17645,7 @@ bagssale.ga, 1 bagu.biz, 1 bagu.fr, 1 bagumum-kotakediri.com, 1 +baguncadamente.com, 1 bagusat.com, 1 bagwrap.com, 1 bahadirh.ml, 1 @@ -17892,7 +17882,6 @@ balloonbeautiesli.com, 1 ballotapi.com, 1 ballotaudit.com, 1 ballpythonsaspets.com, 1 -ballrace.ph, 1 ballstonspa.gov, 1 balluncar.tk, 1 ballweg-tech.de, 1 @@ -17919,6 +17908,7 @@ baltimorecitysheriff.gov, 1 baltimorecolonrectal.com, 1 baltimoreroofingservices.com, 0 baltlex.de, 1 +baltrag.com, 1 bam.com.gt, 1 bamaland.org, 1 bambamthetanman.com, 0 @@ -17958,6 +17948,7 @@ bananatreenews.today, 1 bananatrunkingprotocol.com, 1 bananavapes.com, 1 bananenbr0t.de, 1 +bananes.top, 1 banania.fr, 1 bananice.moe, 1 bananium.fr, 1 @@ -17970,6 +17961,7 @@ banch.io, 1 bancoagricola.com, 1 bancoatlantida.com.ni, 1 bancobica.com.ar, 1 +bancobig.es, 1 bancobpm.it, 1 bancodeloja.fin.ec, 1 bancoeconomico.ao, 1 @@ -18054,7 +18046,6 @@ banham.co.uk, 0 banham.com, 1 banhphongtomquangtran.com, 1 bani-hashem.tk, 1 -banijay.com, 1 banimarket.by, 0 banja-kulasi.ga, 1 banjonelson.tk, 1 @@ -18161,10 +18152,16 @@ baoge55.com, 1 baogiathicongnoithat.com, 1 baokhangfood.com, 1 baokhanhhoa.vn, 1 +baooyony.xyz, 1 baoqibiao.com, 1 baoquangninh.vn, 1 baoxiache.com, 1 baoxue5.com, 0 +baoyoany.xyz, 1 +baoyony.com, 1 +baoyony.xyz, 1 +baoyoony.xyz, 1 +baoyoyny.xyz, 1 bapeel.tk, 1 bapha.be, 1 baptist-colleges.com, 1 @@ -18190,7 +18187,6 @@ baratzegrowshop.com, 1 baravalle.com, 1 baraxolka.ga, 1 baraxolka.ml, 1 -barbara-bertagnolli.co.uk, 1 barbara-fuchs-gruene-fuerth.de, 1 barbarabryce.com, 1 barbaraedanielsantos.ga, 1 @@ -18199,10 +18195,10 @@ barbaramoorman.tk, 1 barbarareynoldsphotography.com, 1 barbarianbear.art, 1 barbarians.com, 0 +barbas.com, 1 barbate.fr, 1 barbatulsuperior.ro, 1 barbeirocetif.com.br, 1 -barbericonic.com, 1 barberscorner.tk, 1 barbershop-harmony.org, 0 barbershopbabo.com, 1 @@ -18290,6 +18286,7 @@ barkio.com, 1 barklanepets.com, 0 barkmembership.com, 1 barkstop.net, 1 +barlaplana.es, 1 barlettaviva.it, 1 barlex.pl, 1 barley.com, 1 @@ -18297,6 +18294,7 @@ barleyandbirch.com, 1 barlogova.sk, 1 barlotta.net, 1 barlow-media.club, 1 +barm.cc, 1 barmenteros.com, 1 barmusic.tk, 1 barnabycolby.io, 1 @@ -18547,6 +18545,7 @@ bastenhorst.de, 0 bastian-fluegel.de, 1 bastille.net, 1 bastillebsd.org, 1 +bastion-scan.eu, 1 bastionadvokat.ml, 1 bastionentifo.tk, 1 bastisgroup.com, 1 @@ -18591,7 +18590,6 @@ batch.com, 0 batchfoundation.org, 1 batchjob.ai, 1 batchroom.com, 1 -batdongsancongnghiep.vn, 0 bateaux-sans-permis.com, 0 batechnic.dk, 1 batelco.com, 1 @@ -18658,7 +18656,6 @@ battlegroundproductions.org, 1 battleguard.net, 1 battleleague.com.br, 1 battlemedialab.com, 1 -battleofthegridiron.com, 1 battlerealms.cc, 1 battlerite.tk, 1 battletech.tk, 1 @@ -18678,6 +18675,7 @@ bauchtanz.tk, 1 bauer-plus.de, 1 bauer-reininghorses.com, 1 bauer.network, 0 +bauermediaoutdoor.co.uk, 1 bauermediaoutdoor.com, 1 bauermediaoutdoor.nl, 1 bauernhof-koch-edingen.de, 1 @@ -18792,6 +18790,7 @@ baysidementalhealth.com, 1 baysidephotography.ga, 1 bayt.com, 1 baytobayaircon.com.au, 1 +baytv.it, 1 bayvets.co.uk, 1 bayvetsreferrals.co.uk, 1 bayvotesfl.gov, 1 @@ -18822,6 +18821,7 @@ baze.cz, 1 bazel.build, 1 bazhan.wang, 1 bazinga-events.nl, 1 +bazis-kazan.ru, 1 bazomag.pl, 1 bazooka.se, 1 bazos.at, 1 @@ -18887,7 +18887,6 @@ bbox.org, 1 bbp.ng, 1 bbpnas.win, 1 bbqenbites.nl, 1 -bbqs-algarve.com, 1 bbqstars.com, 1 bbrassart.fr, 1 bbrigittae.hu, 1 @@ -18897,6 +18896,7 @@ bbs-buchholz.eu, 1 bbschat.tk, 1 bbsec.xyz, 1 bbsis.org, 1 +bbt.com.vn, 1 bbusa.tk, 1 bbw-wrestling.com, 1 bbwanalsex.com, 1 @@ -18947,7 +18947,6 @@ bcm.is, 0 bcmguide.com, 1 bcmhire.co.uk, 1 bcn.cv, 1 -bcnation.com, 1 bcnet.com.hk, 1 bcoffices.com.mx, 1 bcomm.com.au, 1 @@ -18985,7 +18984,6 @@ bda-boulevarddesairs.com, 0 bdasites.in, 1 bdbe.ga, 1 bdbpayroll.com, 1 -bdbxml.net, 1 bdcdev.in, 1 bdd.fi, 1 bddam.fr, 1 @@ -19004,6 +19002,7 @@ bdmusic25.us, 1 bdo-tools.jp, 1 bdo.com, 1 bdpachicago.tech, 1 +bdplus.cc, 1 bdpn.ru, 1 bdrmedia.rs, 1 bdrops.de, 1 @@ -19026,6 +19025,7 @@ be-up-developpement.com, 1 be-wear.ch, 1 be-webdesign.com, 1 be.ax, 1 +be.brussels, 1 be.search.yahoo.com, 0 be.st, 1 be2cloud.de, 1 @@ -19042,7 +19042,6 @@ bea.gov, 1 beabadoartesanato.com.br, 1 beable.com, 1 beacham.online, 1 -beachcitiestaxandaccounting.com, 1 beachcitybody.com, 1 beachcitycastles.com, 0 beachcruisers.tk, 1 @@ -19064,7 +19063,6 @@ beaconfed.org, 1 beacongaragedoors.com, 1 beaconhealthoptions.com, 1 beaconinvesting.com, 1 -beaconinvestingetfs.com, 1 beaconny.gov, 1 beadaptive.ca, 1 beadare.com, 1 @@ -19093,6 +19091,7 @@ beam.mw, 1 beamdisinfo.org, 1 beamitaly.tk, 1 beamitapp.com, 1 +beamleaks.com, 1 bean-jam.jp, 1 beanbot.party, 1 beanboygames.com, 1 @@ -19100,7 +19099,6 @@ beancount.io, 1 beanieshow.co.uk, 1 beanilla.com, 1 beanjuice.me, 1 -beansgalore.com.au, 0 beanshencr.com, 1 beaoriflame.hu, 1 bearcloud.id.lv, 1 @@ -19124,6 +19122,7 @@ bearrun.com, 1 bearslakeinn.com, 1 bearzoutdoor.com, 1 beasel.biz, 1 +beasr.world, 1 beast-books.com, 1 beast.rent, 1 beastlog.tk, 1 @@ -19131,6 +19130,7 @@ beastnet.works, 1 beastnet.xyz, 1 beastowner.com, 1 beastowner.li, 1 +beatareszka.com, 1 beatbikers.com, 1 beatbox.zone, 1 beatbreaker.tk, 1 @@ -19142,6 +19142,7 @@ beatmalaria.org, 1 beaton.tk, 1 beatquantum.com, 1 beatrice-nightscout.herokuapp.com, 1 +beatrice-raws.org, 1 beatricedailysun.com, 1 beatriz-urbano-vega.tk, 1 beatrizaebischer.ch, 0 @@ -19223,11 +19224,28 @@ beautywien.at, 1 beaver-creek.ga, 1 beavercityut.gov, 1 beaverdamautos.com, 1 +beaverdoc.com, 1 +beaverdock.ai, 1 +beaverdock.co, 1 +beaverdock.com, 1 +beaverdock.io, 1 +beaverdock.net, 1 +beaverdock.org, 1 +beaverdock.us, 1 +beaverdock.xyz, 1 +beaverdok.com, 1 +beaverdokc.com, 1 +beaverdpck.com, 1 beaverheadcountymt.gov, 1 +beaverock.com, 1 +beaversock.com, 1 +beaverstreetcafe.com, 1 beavertails.com, 1 beavertales.ca, 1 beavillabea.it, 1 beavivo.de, 0 +beavrdock.com, 1 +beavredock.com, 1 bebaspedia.com, 1 bebbiboni.tk, 1 bebche.bg, 1 @@ -19244,6 +19262,7 @@ bebesreborns.com, 1 bebest.gov, 1 bebetrotteur.com, 1 bebidasrd.com, 1 +bebitoo.com, 1 beble.pl, 1 bebodywise.com, 1 beboldpr.com, 0 @@ -19375,10 +19394,10 @@ beecleanmarine.com, 1 beedsolyjas.tk, 1 beeebraa.download, 1 beefclan.tk, 1 +beefitcincy.com, 1 beeg.hu, 1 beegarage.com, 1 beehive.govt.nz, 1 -beehive.systems, 1 beehive42.com, 1 beehive42.eu, 1 beehive42.net, 1 @@ -19435,6 +19454,7 @@ beerview.ga, 1 beerwestmag.com, 1 beerxa.cz, 1 bees-portal.com, 1 +beesafe.pl, 1 beescloud.com, 1 beesnoosa.com, 1 beesoft.com.vn, 1 @@ -19501,7 +19521,6 @@ behaving.tk, 1 behealthandrehab.com, 1 behealthoncologia.com, 1 behealthpr.com, 1 -behealthyeveryday.eu, 1 behealthyoga.com, 1 beheeronline.nl, 1 behemoth.cf, 1 @@ -19517,7 +19536,6 @@ behold.gq, 1 behomewithlove.com.br, 1 behoreal.cz, 1 behotelmalta.com, 1 -behpooshshop.com, 1 behrer.se, 1 beiersdorf-svz.ch, 1 beihelsinki.de, 1 @@ -19580,7 +19598,6 @@ belastingmiddeling.nl, 1 belayarus.tk, 1 belbin.com, 1 belcanto.cz, 1 -belcoda.com, 0 beleadsteam.com, 1 beleaf.cz, 0 belebey.city, 1 @@ -19783,9 +19800,11 @@ benchling.com, 1 benchmark-dental.com, 0 benchmark-ip.com, 1 benchmarkmonument.com, 1 +benchmarkstudio.net, 1 benclarkphotography.com.au, 1 bencobuilders.co.uk, 1 bencrump.com, 1 +bendahmane.fr, 1 bendd.me, 1 bende.com.au, 0 bendechrai.com, 0 @@ -19808,6 +19827,7 @@ benedictineravenstore.com, 1 benedictoaguilar.tech, 1 benedikto.tk, 1 benedyktynki-sakramentki.org, 1 +benedyktynki.info, 1 benee-awraham.nl, 1 benefactgroup.com, 1 benefeds.com, 1 @@ -19838,6 +19858,7 @@ benevita.life, 1 benevita.live, 1 benevita.organic, 1 benewahcountyid.gov, 1 +benficafootballcamp.lt, 1 bengalcat.tk, 1 bengalcatscare.com, 1 bengaldisom.tk, 1 @@ -19866,7 +19887,6 @@ benimsetin.com, 1 benimsetin.org, 1 beninca.link, 1 beninrevele.bj, 1 -benizon.shop, 1 benjamin-horvath.com, 1 benjamin-suess.de, 1 benjamin-thomsen.de, 1 @@ -19889,6 +19909,7 @@ benjilopez.com, 1 benjonline.tk, 1 benkelmed.com, 1 benken.tk, 1 +benlashri.com, 1 benleb.de, 1 benleemd.com, 1 benmack.net, 1 @@ -20039,12 +20060,12 @@ beritatopbanten.com, 0 berjou.me, 1 berk.tk, 1 berkat-luqs.ddns.net, 1 +berkeantar.com, 1 berkeleybeacon.com, 1 berkeleyca.gov, 1 berkeleypolitical.review, 1 berkhills.com, 1 berksbulls.com, 1 -berksenergyhvac.com, 1 berkshire.com, 1 berkshireesupply.com, 0 berksholocaustmuseum.org, 1 @@ -20178,11 +20199,13 @@ bertsmithvwparts.com, 1 bertuah.com, 1 bertusengelbrecht.com, 1 berufenavi.de, 1 +berufswahlpass.de, 1 berwickpa.gov, 1 berz.one, 1 berzkalne.co.uk, 1 besant.de, 1 besarfe.com, 0 +besatas.com, 1 besb66.club, 1 besb66.me, 1 besb66.ninja, 1 @@ -20202,7 +20225,6 @@ beskar.pro, 1 besnard.me, 1 besnik.de, 0 besnik.tk, 1 -besola.de, 1 besole.ch, 1 besolov.tk, 1 besox.be, 1 @@ -20254,7 +20276,6 @@ best-wedding-quotes.com, 1 best66.me, 1 besta.tk, 1 bestaction.tk, 1 -bestads.co.il, 1 bestafricaradio.tk, 1 bestallgames.com, 1 bestarts.tk, 1 @@ -20319,7 +20340,6 @@ bestevakantieparken.be, 1 bestevakantieparken.com, 1 bestevakantieparken.nl, 1 bestfcu.org, 1 -bestfewo.de, 1 bestfidgettoysforadhd.com, 1 bestfinancialcu.org, 1 bestfitnesswatchreview.info, 1 @@ -20342,7 +20362,6 @@ bestill.foundation, 1 bestinductioncooktop.us, 1 bestinsider.net, 0 bestinsulatedwaterbottle.tk, 1 -bestinver.es, 0 bestitwork.tk, 1 bestjumptrampolines.be, 1 bestkbeauty.com, 1 @@ -20498,8 +20517,8 @@ bestmattressabout.com, 1 bestmattresses.tk, 1 bestmaturepics.com, 1 bestmedsmmj.com, 1 +bestmicro.fr, 1 bestmodels.ua, 1 -bestmorkiepups.com, 1 bestmotherfucking.website, 1 bestnetentcasino.info, 1 bestnetflowanalyzer.com, 1 @@ -20525,7 +20544,6 @@ bestpcsecurity.com, 1 bestplus.ml, 1 bestplus.tk, 1 bestpneu.cz, 1 -bestpomskypups.com, 1 bestporn.pics, 1 bestpornclip.com, 1 bestporngirls.com, 1 @@ -20540,11 +20558,11 @@ bestratedtransport.com.au, 1 bestrating-hengelo.nl, 1 bestreleases.tk, 1 bestremote.io, 1 -bestresumeobjectiveexamples.com, 1 bestrongandhomosexual.top, 1 bestroofinginkansascity.com, 1 bestroutes.net, 1 bestsatoshifaucet.ga, 1 +bestsavingscoupon.com, 1 bestsextoys.com, 1 bestsheepadoodles.com, 1 bestshopping.ga, 1 @@ -20576,6 +20594,7 @@ bestwriterjobs.tk, 1 bestzoo.tk, 1 besured.nl, 1 besv.com, 1 +besverdock.com, 1 beszerzokozpont.hu, 1 bet-platform.com, 1 bet08vip.com, 0 @@ -20599,7 +20618,6 @@ bet333789.com, 0 bet333h.com, 1 bet333n.com, 0 bet333r.com, 0 -bet333x.com, 1 bet333y.com, 1 bet333z.com, 0 bet338c.com, 1 @@ -20633,7 +20651,6 @@ bet365q8.com, 1 bet365q9.com, 1 bet365r8.com, 1 bet365vip2.com, 1 -bet365vip2020.com, 0 bet365vip7.com, 1 bet365x0.com, 1 bet365x1.com, 1 @@ -20719,7 +20736,6 @@ betaworx.eu, 1 betbed.ml, 1 betbravo.et, 1 betbrothers.es, 1 -betc.com, 1 betcn-mart.com, 1 betecnet.de, 1 betel.tk, 1 @@ -20790,6 +20806,7 @@ bettaline.com.au, 1 bettashoerepairs.com.au, 1 bettendorf.gov, 1 bettenhaus-schlafoase.de, 1 +better.ad, 1 better.com, 1 better.fyi, 1 betterbaseball.com, 1 @@ -20877,7 +20894,6 @@ beulen.link, 1 beulen.pro, 1 beurettes-en-chaleur.tk, 1 beursbever.be, 1 -beurswandwereld.nl, 1 beus.ink, 1 beusefulbook.ru, 1 beuteugeu.com, 1 @@ -20887,7 +20903,6 @@ beuty-flowers.tk, 1 bevallarta.com, 1 bevcrushesit.ca, 1 bevedo.com, 1 -bevedo.cz, 1 bevedo.sk, 1 beveiligingscamerawestland.nl, 1 bevelbeer.com, 1 @@ -20996,11 +21011,13 @@ bezoekopenmonumentdag.nl, 1 bezoekopenmonumentendag.nl, 1 bezoomnyville.com, 1 bezopasna-rabota.tk, 1 +bezorebne.cz, 1 bezpaliuk.com, 1 bezpecnostsiti.cf, 1 bezpieczny.pl, 1 bezpiecznyiphone.pl, 1 bezpredel.tk, 1 +bf-bogdan.ru, 1 bf2statistics.eu, 1 bfam.tv, 1 bfbet365.com, 1 @@ -21043,7 +21060,6 @@ bgembassy-cairo.com, 1 bgemi.net, 1 bget.org.uk, 1 bgetfuel.co.uk, 1 -bgfalconmedia.com, 1 bgfashion.net, 1 bgfr.net, 1 bggcapital.com, 1 @@ -21067,6 +21083,7 @@ bgsc.org, 1 bgschuledortmund.de, 1 bgtraffic.tk, 1 bgunikat.eu, 1 +bgv.org.tr, 1 bh-oberland.de, 1 bh.sb, 1 bhacit.com, 0 @@ -21092,6 +21109,7 @@ bhitnews.tk, 1 bhnnews.com, 1 bhodisoft.com, 1 bhogavati.tk, 1 +bhojpurisex.site, 1 bhpropco.com, 1 bhrc.wa.gov.au, 1 bhrenovations.com, 0 @@ -21100,6 +21118,7 @@ bhsportugal.org, 1 bhtechconnection.com, 0 bhtelecom.ba, 1 bhub.tk, 1 +bhulakkad.com, 1 bhuntr.com, 1 bhuttae.com, 1 bhuvanreddy.space, 1 @@ -21120,7 +21139,6 @@ biagioroggia.com, 1 biagiowineandspirits.com, 1 biahposter.com, 1 biancadark.tk, 1 -biancapaulphotography.com, 1 biancapulizie.it, 1 biancasalgueiro.tk, 1 biancavandenberg.nl, 1 @@ -21155,6 +21173,7 @@ bibitbunga.com, 1 bibitec.de, 1 bible-maroc.com, 1 bible4u.net, 1 +biblear.org, 1 biblebrainhealth.com, 1 bibleforchildren.ru, 1 biblegen.com, 1 @@ -21163,7 +21182,6 @@ biblemesh.com, 0 biblemobile.com, 1 biblesearch.tw, 1 biblesignposts.com, 1 -bibletower.net, 0 bibleversesfordailyliving.com, 1 biblia.es, 1 bibliadoczytania.pl, 1 @@ -21253,6 +21271,7 @@ bien-etre-sante.info, 1 bienbailao.com, 1 biene.rocks, 1 bienenfreunde.tk, 1 +bienertplus50.de, 1 bienestarinmobiliarioyaliadas.com, 1 bienhacerlimpiezas.es, 1 bienici.com, 1 @@ -21306,6 +21325,7 @@ big-radio.net, 1 big-tits-video.ru, 1 big-travel.tk, 1 big.one, 1 +big.pt, 1 big.ua, 1 big.wtf, 1 big12sports.com, 1 @@ -21348,12 +21368,12 @@ bigbroeyes.com, 1 bigbunce.ru, 0 bigbusy.net, 1 bigcakes.dk, 1 +bigcare.com, 1 bigcedar.com, 0 bigchance.tk, 1 bigchris.tk, 1 bigclassaction.com, 1 bigcomputerchair.gq, 1 -bigcorestintas.com.br, 1 bigcountry.com.br, 1 bigdaddyslash.tk, 1 bigdatatop.cf, 1 @@ -21489,6 +21509,7 @@ bikerebel.com, 1 bikerestart.com, 1 bikersclub.tk, 1 bikersmadrid.es, 1 +bikerzbits.com, 1 bikesandbits.tk, 1 bikesdirect.com, 1 bikeshopitalia.com, 1 @@ -21503,7 +21524,6 @@ bikini.tk, 1 bikinibich.tk, 1 bikinis.ga, 1 bikinis.tk, 1 -bikiniseli.com, 1 bikkelbroeders.com, 0 bikkelbroeders.nl, 0 biknet.tk, 1 @@ -21624,8 +21644,10 @@ bilmodel.dk, 1 biltullen.com, 1 bim.physio, 1 bimacitizen.com, 1 +bimber.nl, 1 bimbingan.tk, 1 bimedis.com, 1 +bimilogo.it, 1 bimmerguide.de, 1 bimmerlabs.com, 1 bimoge.tk, 1 @@ -21727,7 +21749,6 @@ bio-medical.com, 1 bio-place.com, 1 bio-verzeichnis.de, 1 bio-world.com, 1 -bio24.si, 0 bioadva.com, 1 bioagency.it, 1 bioagroapteka.bg, 1 @@ -21776,7 +21797,6 @@ biofeedback-luzern.ch, 1 biofeedbackcalifornia.org, 1 biofire.gr, 1 biofizpribor.ru, 1 -bioflamma.com, 1 bioforce.tk, 1 biofourmis.com, 0 biofuels-news.com, 1 @@ -21859,7 +21879,6 @@ bioplaces.es, 1 bioplaces.eu, 1 bioplaces.fr, 1 biopreferred.gov, 1 -biopro-st.com, 1 biopsychiatry.com, 1 bioqual.com, 1 biored.com.tr, 1 @@ -21867,11 +21886,11 @@ bioreference.com, 1 bioresonanz-ibiza.com, 1 biosafe.ch, 0 biosalts.it, 1 -biosbits.org, 1 bioscience.co.uk, 0 biosearch.tk, 1 bioseguridad.gob.pa, 1 bioselect.com.cy, 1 +biosency.com, 1 bioshine.com.sg, 1 bioshome.de, 1 biosignalanalytics.com, 1 @@ -21885,7 +21904,7 @@ biosuit.ga, 1 biosupplyalliance.com, 1 biot.tk, 1 biotage.com, 1 -biotal.ua, 1 +biotal.ua, 0 biotanquesbts.com, 1 biote.com, 1 biotec.tk, 1 @@ -21943,6 +21962,7 @@ birkhoff.me, 0 birkilise.com, 1 birkilise.net, 1 birkilise.org, 1 +birkmayeraerospace.com, 1 birman.tk, 1 birminghamal911.gov, 1 birminghammoneyman.com, 1 @@ -21951,7 +21971,7 @@ birnenhain.de, 1 birobidjan.tk, 1 birobidzhan-news.net, 1 birone.tk, 1 -bironthemes.com, 1 +bironthemes.com, 0 birosuli.hu, 1 birouldeimagine.ro, 1 birow.com, 1 @@ -22065,7 +22085,6 @@ bitcoin-youtube.net, 1 bitcoin.asia, 1 bitcoin.ch, 1 bitcoin.co.nz, 1 -bitcoin.com.sc, 1 bitcoin.de, 1 bitcoin.gob.sv, 1 bitcoin.im, 1 @@ -22180,7 +22199,7 @@ bitraepool.com, 1 bitrate.tk, 1 bitredirixe.top, 1 bitref.com, 1 -bitrefill.com, 1 +bitrefill.com, 0 bitrefill.info, 1 bitrefill.me, 1 bitronixcode.com, 1 @@ -22235,6 +22254,7 @@ biupay.com.br, 1 biurokarier.edu.pl, 1 biuropulawy.pl, 1 biurosuszec.pl, 1 +biv.lt, 1 bivg.ru, 0 bixbydevelopers.com, 1 bixilon.de, 1 @@ -22252,6 +22272,7 @@ bizarnijaponsko.cz, 1 bizarrefuture.cf, 1 bizbelarus.tk, 1 bizboatest.ga, 1 +bizbuzzgo.com, 1 bizcalcs.com, 1 bizdemevcut.com.tr, 1 bizdir.tk, 1 @@ -22309,7 +22330,7 @@ bjc.hu, 1 bjcw.com, 1 bjecard.buzz, 1 bjerregaard.me, 1 -bjfconsulting.fr, 1 +bjfconsulting.fr, 0 bjfuli.com, 1 bjjmississauga.com, 1 bjksportscentre.com, 1 @@ -22455,6 +22476,7 @@ bkin-42740.xyz, 1 bkin-43450.xyz, 1 bkin-46680.xyz, 1 bkk24.de, 1 +bkkf.at, 1 bkkposn.com, 1 bklaindia.com, 1 bkli.me, 1 @@ -22538,6 +22560,7 @@ blackbyte.it, 1 blackcastle.tk, 1 blackcat.ca, 1 blackcatcard.com, 1 +blackcatinfo.com, 1 blackcatinformatics.ca, 1 blackcatinformatics.com, 1 blackcatwanderlust.com, 1 @@ -22545,8 +22568,6 @@ blackchristmas.tk, 1 blackchrome.com.au, 1 blackco.ga, 1 blackcountrymusicband.co.uk, 1 -blackdown.de, 1 -blackdragoninc.org, 1 blackeaglenet.tk, 1 blackedbyte.com, 1 blackenedsoil.com, 1 @@ -22554,7 +22575,6 @@ blackestdespondency.tk, 1 blackexpo.id, 1 blackeyes.gq, 1 blackeyes.tk, 1 -blackfeather.in, 1 blackfield.org, 1 blackfire.io, 1 blackfirecrew.tk, 1 @@ -22638,7 +22658,7 @@ blackslots.club, 1 blacksniffer.tk, 1 blackspark.tk, 1 blackspider.tk, 1 -blacksprut.com, 1 +blacksprut.com, 0 blacksprut.pro, 1 blackstonepress.tk, 1 blackstonetubrefinishers.ca, 1 @@ -22648,6 +22668,7 @@ blackstump.xyz, 1 blacksun-sole-nero.net, 1 blacksvets.co.uk, 1 blackswan.tk, 1 +blackswanai.de, 1 blackswancompany.com, 1 blackswirl.com, 1 blacktemplars.tk, 1 @@ -22657,6 +22678,7 @@ blacktubes.cf, 1 blacktubes.ga, 1 blacktubes.ml, 1 blacktype.bet, 1 +blackveilsecurity.com, 1 blackvinegarcollection.com, 0 blackwaterlounge.com, 1 blackwaterutilities.tk, 1 @@ -22704,6 +22726,7 @@ blakesite.com, 1 blakezone.com, 1 blako-squad.tk, 1 blakylle.de, 1 +blammmedia.com, 1 blan.tk, 1 blana.ro, 1 blanboom.org, 1 @@ -22755,7 +22778,6 @@ blau-weiss-aachen.de, 1 blau-weiss-stolberg.de, 1 blaudev.es, 1 blauejungsbolzum.de, 1 -blauesschwarz.de, 0 blaugelb-frankfurt.de, 1 blauglockenbaum.de, 1 blaumedia.com, 1 @@ -22770,6 +22792,7 @@ blayneallan.com, 1 blaze-in.com, 1 blazebit.com, 1 blazefire.tk, 1 +blazejmrozinski.com, 1 blazelock.com, 1 blazeweb.ml, 1 blazing.cz, 1 @@ -22808,6 +22831,8 @@ blessrank.com, 1 blesssemijoiasoficial.com.br, 1 blesswebdesigns.com, 1 bleta.io, 1 +bletinsurance.com, 1 +bletvip.com, 1 bleu-roy.com, 1 bleuwire.com, 1 blevinstirepros.com, 1 @@ -22815,7 +22840,6 @@ blewebprojects.com, 1 bleyershoes.com, 1 blic-zajm.gq, 1 blichmann.eu, 1 -blick-durchblick.com, 1 blicy.net, 1 blideobames.com, 1 blids.nl, 1 @@ -22928,7 +22952,6 @@ blockcreams.com, 1 blocked.icu, 1 blockedservers.com, 1 blockified.io, 1 -blockitall.us, 1 blockmomsest.ga, 1 blocksettle.com, 1 blockshopauto.com, 1 @@ -23021,7 +23044,6 @@ blogssl.com, 0 blogstar.tk, 1 blogtechnologiczny.pl, 1 blogtheque.com, 1 -blogtroterzy.pl, 1 bloguerrilla.it, 1 blogvadim.ga, 1 blogworm.eu, 1 @@ -23034,6 +23056,7 @@ bloms.de, 1 blomsbegravning.se, 1 blonde-hexe.net, 1 blondeangels.com, 1 +bloo.pw, 1 bloob.io, 1 bloobasket.com, 1 bloobirds.com, 1 @@ -23187,6 +23210,7 @@ blueride.se, 1 blueridgelife.com, 1 blueridgemachinery.com, 1 blueridgemanorky.gov, 1 +blueripple.com, 1 blueroocarwash.com, 1 blues-and-pictures.com, 1 bluesbarn.tk, 1 @@ -23390,12 +23414,12 @@ boardroominsiders.com, 1 boardroommind.com, 1 boards.ie, 1 boardsoftware.net, 1 +boardsort.com, 1 boardspot.com, 1 boardusersers.ga, 1 boat-engines.eu, 1 boat-systems.pl, 0 boatandsailboat.com, 1 -boathut.com.au, 1 boats.com, 0 boatsandoats.com, 1 boatseller.org, 1 @@ -23463,21 +23487,14 @@ bodas.com.mx, 1 bodas.net, 1 bodascartagena.com, 1 bodclansite.tk, 1 +bodedono.com.br, 1 bodegagarces.tk, 1 bodegastemporales.com.mx, 1 bodemplaten4x4.nl, 1 -boden.co.uk, 1 boden.com, 1 -boden.eu, 1 -boden.fr, 1 -bodenclothing.com.au, 1 -bodendirect.at, 1 -bodendirect.de, 1 bodenpreview.co.uk, 1 bodenpreview.com, 1 bodenpreview.de, 1 -bodensee-hochwasser.info, 1 -bodenusa.com, 1 bodesi.com, 1 bodhi.fedoraproject.org, 1 bodies.es, 1 @@ -23526,7 +23543,6 @@ boensite.tk, 1 boenyc.gov, 1 boerandolphcountyga.gov, 1 boerderijspel.nl, 1 -boesckens.de, 1 boesenlaw.com, 1 boevik.ml, 1 boew.de, 1 @@ -23592,7 +23608,6 @@ bolalocobrews.co.uk, 1 bolaodarico.com.br, 1 bolbilisim.com, 1 bolcaparca.com.tr, 1 -bold-fabrics.com, 1 boldare.com, 1 boldbeau.pt, 1 boldhaus.de, 1 @@ -23655,8 +23670,8 @@ bolte.org, 1 boltingmaster.com, 1 boltmobile.ca, 1 bolton-consulting.org, 1 -boltonac.com, 1 boltonct.gov, 1 +boltup.ai, 1 boltz.exchange, 1 boluhaberleri.tk, 1 bolur.is, 1 @@ -23668,6 +23683,7 @@ bolzanoinfo.it, 1 boma.ml, 1 bomanufacture.com, 1 bombard.ga, 1 +bombeck.io, 1 bombeirostv.pt, 0 bomberosceuta.tk, 1 bomberus.de, 1 @@ -23835,7 +23851,6 @@ book-sites.cf, 1 bookameeting.se, 1 bookbazar.co.in, 1 bookcabaurangabad.com, 1 -bookcheapairline.com, 1 bookcreator.com, 1 bookdubaihome.com, 1 bookergroupjobs.co.uk, 1 @@ -23897,7 +23912,7 @@ bookultra.com, 1 bookvuz.tk, 1 bookworld.gr, 1 bookwormstory.social, 1 -bookyourdata.com, 0 +bookyourdata.com, 1 bookyoursmog.com, 1 bool.be, 1 boom2.network, 1 @@ -23927,6 +23942,7 @@ boonecountywv.gov, 1 boonecsdia.gov, 1 booneiowa.gov, 1 boonemo.gov, 1 +boonsfis.com, 1 booox.biz, 1 booox.cc, 1 booox.net, 1 @@ -23961,6 +23977,7 @@ bootsa.tk, 1 bootspraxis.com, 1 bootstrapcollab.com, 0 bootsverleih-buch-balduinstein.de, 1 +bootsverleih-buch.de, 1 bootswinter.tk, 1 bootytube.net, 1 boozinyan.com, 1 @@ -24037,6 +24054,7 @@ born2dance.tk, 1 born2flygirl.com, 1 bornan.sport, 1 bornandgrazed.com, 0 +bornapunda.com, 1 bornbinder.com, 1 borneoarabic.com, 1 borneodictionary.com, 1 @@ -24123,14 +24141,15 @@ boswellboropd-pa.gov, 1 bot-manager.pl, 1 bot.country, 1 botabota.ca, 1 -botanical.house, 1 botanicalinstitute.org, 1 botanicoved.com, 1 botaniqlandscapeconsultants.com, 1 botanischer-garten-solingen.de, 1 botanischkunstenaarsnederland.nl, 1 +botanymaxlanka.com, 1 botarticle.ga, 1 botbrother.ml, 1 +botchat.ca, 1 botealis.ch, 0 botebote.lt, 1 botelegram.tk, 1 @@ -24146,6 +24165,7 @@ botmedia.cf, 1 botnam.com, 1 botoes-primor.pt, 1 botoks.tk, 1 +botosani24.ro, 1 botox.bz, 1 botpago.cl, 1 botschaft.digital, 1 @@ -24208,7 +24228,6 @@ bounce-n-go.co.uk, 1 bounce-on.co.uk, 1 bounce-r-us.co.uk, 1 bounce-xtreme.co.uk, 1 -bounce4fun.co.uk, 1 bounce4kidz.com, 1 bounce4less.ie, 1 bounceaboutnewark.co.uk, 1 @@ -24248,7 +24267,6 @@ bouncybouncyboocastlehire.co.uk, 1 bouncycastle.net.au, 1 bouncycastlehire-norwich.com, 1 bouncycastlehire.co.uk, 1 -bouncycastlehireauckland.co.nz, 1 bouncycastlehirebexley.co.uk, 1 bouncycastlehirechelmsford.org.uk, 1 bouncycastlehirehull.co.uk, 1 @@ -24345,7 +24363,6 @@ bowmar.gov, 1 bownhpd.gov, 1 bowwowinsurance.com.au, 1 box-it-up.nl, 1 -box-mail.org, 1 box.bz, 1 box.co.uk, 1 box.sklep.pl, 1 @@ -24376,7 +24393,7 @@ boxofficebengal.tk, 1 boxofficefunding.com, 1 boxofninjas.ca, 1 boxoptions.com, 1 -boxpark.co.uk, 1 +boxpark.co.uk, 0 boxpirates.to, 0 boxsite.ga, 1 boxtub.com, 1 @@ -24446,7 +24463,6 @@ bpvr.nl, 1 bpx.exchange, 1 bpx.global, 1 bq1.me, 1 -bq5.me, 1 bq8.me, 1 bqgw.info, 1 bqgw8.com, 0 @@ -24469,7 +24485,6 @@ braathe.no, 1 brabant.nl, 1 brabantia.com, 1 brabantse-delta.nl, 1 -brabantserfgoed.nl, 1 brabotax.nl, 1 braccialini.tk, 1 brace-automotive.com, 1 @@ -24485,7 +24500,6 @@ brackettvilletx.gov, 1 bracknellvets.co.uk, 1 bractwogothica.ml, 1 brad.fi, 1 -bradalnutri.com.br, 1 bradeales.com, 1 bradentonfl.gov, 1 bradfield-designs.com, 1 @@ -24616,6 +24630,7 @@ brandketers.com, 1 brandmonkey.dk, 0 brandmovers.co, 1 brandmrwijchen.nl, 1 +brandnaked.nl, 1 brandnucreations.com, 1 brando753.xyz, 1 brandon-manilow.tk, 1 @@ -24641,7 +24656,6 @@ brands-polo.gq, 1 brandsafe.io, 1 brandsclub.tk, 1 brandsource.com, 1 -brandsseekers.com, 1 brandstof-prijzen.nl, 1 brandsynergy.pl, 1 brandtechdesign.co.uk, 1 @@ -24669,8 +24683,8 @@ bransive.com.au, 1 bransonwestmo.gov, 1 brantleycounty-ga.gov, 1 branw.xyz, 0 +branzell.kim, 1 brard.it, 1 -brasas.ec, 1 brascast.com, 1 brasco.tk, 1 brasdir.com, 1 @@ -24727,7 +24741,6 @@ bravegk.com.ua, 1 bravelions.org, 1 bravelittlesquirrel.com, 1 bravelocation.com, 1 -bravelychoc.com, 1 bravenboer.tk, 1 braverytechnology.com, 1 bravewiki.tk, 1 @@ -24752,6 +24765,7 @@ braxtoncountywv.gov, 1 braxtonfair.com, 1 braychappell.com, 0 brayden.gq, 1 +braydenshort.com, 1 braynblog.ml, 1 brayva.com, 1 brazenfol.io, 1 @@ -24829,6 +24843,7 @@ breen.com.br, 1 breentwp.gov, 1 breethe.com, 1 breezisaas.com, 1 +breezitech.io, 1 breezly.fr, 1 breezyapp.hu, 1 breezypointmn.gov, 1 @@ -24949,6 +24964,7 @@ brianregan.com, 0 brianroadifer.com, 1 briansemrau.com, 1 briansmith.org, 1 +brianterealtygroup.com, 1 brianum.de, 1 brianum.net, 1 brianvalente.tk, 1 @@ -24963,6 +24979,7 @@ brickfilmfestival.tk, 1 brickfilms.com, 1 brickftp.com, 1 brickland.tk, 1 +brickmayhem.com, 1 brickrodeo.com, 1 bricks-clicks.com, 1 bricksandmotor.co.uk, 1 @@ -24975,11 +24992,11 @@ bricolajeux.ch, 0 bricomium.com, 1 bricoportale.it, 1 brid.gy, 0 +brid.pw, 1 bridal.tk, 1 bridalfabrics.ru, 1 bridalgallerysalem.com, 1 bridalreflections.com, 1 -bridalshoes.com, 1 bridalweddingshow.ga, 1 bridebook.com, 1 bridesbouquet.ml, 1 @@ -25068,7 +25085,6 @@ brigittaseasons.com, 1 brigittaspromise.org, 1 brigittebutt.tk, 1 brigittefontaine.tk, 1 -brijesh.fyi, 1 brilalux.pe, 1 brileytownshipmi.gov, 1 brili.com, 1 @@ -25112,7 +25128,6 @@ brisamar8.de, 1 brisbanecashforcars.com.au, 1 brisbanelogistics.com.au, 1 brisbanerecordbar.com.au, 1 -brisbine.cloud, 1 brisceremony.com, 1 brisignshop.com.au, 1 briskteaching.com, 1 @@ -25132,7 +25147,6 @@ britannia-jewellery.co.uk, 1 britannia.no, 1 britanniapandi.com, 1 british-assessment.co.uk, 1 -britishairlinesflights.com, 1 britishantiquefurniture.co.uk, 1 britishbee.org.uk, 1 britishbee.uk, 1 @@ -25153,7 +25167,6 @@ britishgeneralelection.ga, 1 britishgeneralelection.ml, 1 britishgroupsg.com, 1 britishmeat.com, 1 -britishpearl.com, 1 britishpropoliss.my.id, 1 britishsfaward.org, 1 britney-galaxy.com, 1 @@ -25167,13 +25180,11 @@ brittainconsulting.ca, 1 brittany.com.ph, 1 brittanyferriesnewsroom.com, 1 brittas-world.tk, 1 -britva-optom.com, 1 brivawn.com, 1 brix-central.tk, 1 brixxonline.nl, 0 brizawen.com, 1 brizzly.ro, 1 -brizzo.net, 1 brk-t.com, 1 brk-t.org, 1 brk.dk, 1 @@ -25251,6 +25262,7 @@ brogan.com, 1 broilertrade.com, 1 brojagraphics.de, 1 brokebitch.org, 1 +brokebitchabq.org, 1 brokebitchnyc.org, 1 brokeinkorea.tk, 1 brokenbiz-news.tk, 1 @@ -25325,7 +25337,7 @@ broomcastle.net, 1 broomcastle.org, 1 broomcastle.social, 1 broomecountyny.gov, 1 -broomorchard.com, 1 +broomorchard.com, 0 brosay-legko.ml, 1 brossmanit.com, 1 brother.com.hk, 1 @@ -25614,7 +25626,6 @@ btcpop.co, 1 btcrit.com, 1 btcwip.com, 1 btd.be, 1 -btddd.com, 1 btdirect.uk, 1 btdproductions.tk, 1 btec.ae, 1 @@ -25684,12 +25695,13 @@ bubblelist.tk, 1 bubblesco.tk, 1 bubblespetspa.com, 0 bubblin.io, 1 -bubcs.com, 1 +bubblyliving.com, 1 bublup.com, 1 bubnovsky.org, 1 bubok.com, 1 bubok.com.ar, 1 bubok.es, 1 +bubok.pt, 1 bubra.net, 1 bubra.stream, 1 bubsngrubs.com.au, 1 @@ -25763,6 +25775,7 @@ buddy-development-backoffice-webapp.azurewebsites.net, 1 buddy-development-rabodirectconnect-api.azurewebsites.net, 1 buddy-locator.com, 1 buddy.net, 1 +buddyboss.com, 1 buddyme.me, 1 budeanu.com, 1 budejce.cz, 1 @@ -25810,15 +25823,17 @@ buenavistava.gov, 1 buenavistava.org, 1 buendnis-deutschland.de, 1 buenosairesconnect.com, 1 -buentaller.com, 1 +buenosairesrunway.com, 1 bueny.com, 1 bueny.net, 1 +buergerbus-digital.de, 1 buergerinitiative-pronatur.de, 1 buergerwehr-ettlingen.de, 1 buero13-design.de, 1 bueroplus.de, 1 buerstaedter-zeitung.de, 1 buesiforquo.cf, 1 +bueteeearchives.net, 1 bufete.tk, 1 buff-buff.tk, 1 buffalo-ny-gay-chat.com, 1 @@ -26025,6 +26040,7 @@ bulutkey.com, 1 bulvar.tk, 1 bumastemra.nl, 1 bumblebee.cf, 1 +bumblebeebeekeeping.com, 1 bumblebeekids.uk, 1 bumbleforfriends.com, 1 bumenn.is, 1 @@ -26042,7 +26058,6 @@ bunadarbankinn.is, 1 bunaken.tk, 1 bunbun.be, 1 bunburydad.tk, 1 -bunchful.com, 1 buncombecounty.org, 1 buncranacarndonaghgreenway.ie, 1 bund-muelheim.de, 1 @@ -26113,7 +26128,6 @@ bureaudirectoryers.ga, 1 bureausuite.co.za, 1 bureauwbtv.nl, 1 bureauwsnp.nl, 1 -bureauzelfstandigenfryslan.nl, 1 burenservice.nl, 1 burevestnik.tk, 1 burewala.tk, 1 @@ -26224,6 +26238,7 @@ burz.ai, 1 burz.net, 1 burz.one, 1 burz.ro, 1 +burza-techniky.cz, 1 burzcast.com, 1 burzcast.ro, 1 burzgroup.com, 1 @@ -26592,7 +26607,6 @@ butsa.tk, 1 butserdocumentary.tk, 1 buttedesmortssd1wi.gov, 1 butter.horse, 1 -butterflytigress.com, 1 butterhost.ga, 1 buttermilk.cf, 1 butternutbox.com, 0 @@ -26711,7 +26725,6 @@ buymyvoip.com, 1 buyneurontin.ml, 1 buynothingyear.com, 1 buyornot.tk, 1 -buyorsellcampers.com, 1 buypal.com.pe, 1 buypapercheap.net, 1 buypersonalproxy.com, 1 @@ -26806,7 +26819,6 @@ bvrlodge.ro, 1 bvrpd-pa.gov, 1 bvusd.org, 1 bvv-europe.eu, 1 -bvwnews.com, 1 bvwphotography.com, 1 bw.codes, 1 bw1970s.com, 1 @@ -26919,6 +26931,7 @@ byredo.com, 1 byrest.com, 1 byrko.sk, 1 byronkg.us, 1 +byrtz.de, 1 byrut.org, 1 byshop.tk, 1 byskafasi.com, 1 @@ -26928,6 +26941,7 @@ bystryj-zajm.tk, 1 byte-lab.tk, 1 byte.nl, 1 byte128.com, 0 +bytebin.org, 1 bytebiter.io, 1 byteblobs.com, 1 bytebodega.com, 1 @@ -26935,6 +26949,7 @@ bytebolt.at, 1 bytebucket.org, 1 bytebytego.com, 1 bytedance.com, 1 +byteengine.net, 1 byteflies.com, 0 bytegrowth.com, 1 byteguardian.nl, 1 @@ -27035,7 +27050,6 @@ c19ic.com, 1 c19ivermectin.com, 1 c19ivermectin.org, 1 c19ivm.org, 1 -c19legacy.com, 1 c19probiotics.com, 1 c19proxalutamide.com, 1 c19study.com, 1 @@ -27060,7 +27074,6 @@ c3hv.cn, 1 c3soc.de, 1 c3speak.com, 1 c3speak.de, 1 -c3stream.de, 1 c3vo.de, 0 c3w.at, 1 c3wien.at, 1 @@ -27257,7 +27270,6 @@ caerdav.com, 1 caesar.me.uk, 1 caesar.today, 1 caesarkabalan.com, 0 -caesegatos.com.br, 1 caetano.es, 1 caetano.pt, 1 caetanoflotas.es, 1 @@ -27341,7 +27353,7 @@ cai.im, 1 cai.sg, 1 caiben.org, 1 caibi.io, 1 -caileb.com, 1 +caileb.com, 0 cailoli.com, 1 cainesjannif.com, 1 cainhoyathletic.com, 1 @@ -27438,6 +27450,7 @@ calculadora-de-derivadas.com, 1 calculadora-de-integrales.com, 1 calculadoraconversor.com, 1 calculadoratrabalhista.com, 1 +calculafin.com.br, 1 calcularis.ch, 1 calculate-vat.uk, 1 calculate.co.kr, 1 @@ -27495,6 +27508,7 @@ calhouncountyflsheriff.gov, 1 calhouncountyil.gov, 1 calhounfalls.gov, 1 calhounmi911.gov, 1 +calia.cc, 1 calialabs.com, 1 calibarber.com, 1 calibermind.com, 1 @@ -27504,7 +27518,6 @@ calibso.net, 1 calicojudge.com, 1 calidadbio.com, 1 calidognia.com, 1 -calidoinvierno.com, 1 califarul.ro, 1 californiabudgetfinance.tk, 1 californiabuilding.ma, 1 @@ -27519,7 +27532,7 @@ californianet.tk, 1 californiaonlinedivorce.com, 0 californiapa.gov, 1 californiapayroll.com, 1 -californiaschools.us, 0 +californiaschools.us, 1 californiatitlesearch.com, 1 californiavalues.cf, 1 calim.com.ar, 1 @@ -27528,7 +27541,6 @@ calimesa.gov, 1 calinadrian.uk, 1 calinetworks.com, 1 caliph.one, 1 -calista-directinvestors.eu, 1 calisteniaperu.ga, 1 calistogaca.gov, 1 calitateavietii-ardeal.ro, 1 @@ -27563,7 +27575,6 @@ callhub.io, 1 calliari.org, 1 calliesalls.com, 1 calligraph.gq, 1 -calligraphychic.com, 1 callinsdecor.com.br, 1 callipeg.com, 1 callmewatkins.com, 1 @@ -27673,7 +27684,6 @@ cameos.bo, 1 camera-podvod.tk, 1 cameraforensics.com, 1 camerahire.com.au, 1 -camerajabber.com, 1 cameraman.tk, 1 cameramark.nl, 1 camerashot.tk, 1 @@ -27745,6 +27755,7 @@ campcreekinn.com, 1 campdesante.com, 1 campdetarragona.tk, 1 campeonatoalemao.com.br, 1 +campercollective.com, 1 camperdays.de, 1 camperdirectoryers.ga, 1 camperdirectoryest.ga, 1 @@ -27756,9 +27767,7 @@ campfire.moe, 1 campfiretails.org, 1 campguaikinima.com, 1 camping-aupigeonnier.fr, 1 -camping-chantemerle.com, 1 camping-dulac-dordogne.com, 1 -camping-fleur-oleron.com, 1 camping-seilershof.de, 1 camping-trentino.it, 1 camping.it, 1 @@ -27814,6 +27823,7 @@ camslurp.org, 1 camsupplier.ml, 1 camsupplierers.ga, 1 camtor.ml, 1 +camu.us, 1 camunaslab.org, 1 camunda.com, 0 camunda.org, 1 @@ -27959,7 +27969,6 @@ candymade.net, 1 candypalace.tk, 1 candysailing.ml, 1 candysamira.org, 1 -candytip.ru, 1 candywings.com, 1 candyxs.org, 1 cane.bg, 1 @@ -28019,7 +28028,7 @@ cannellecitron86-biomonde.fr, 1 canningcityfc.org.au, 1 canningpartners.com.au, 1 cannoli.london, 1 -cannon.org.cn, 1 +cannon.org.cn, 0 cannoncountytn.gov, 1 cannonriverwatershedmn.gov, 1 cannonsforsale.com, 1 @@ -28122,6 +28131,7 @@ capellen.tk, 1 capemaypoint.org, 1 capeoni.fr, 1 capeprivacy.com, 0 +capestone.com.au, 1 capetown.travel, 1 capetowncpf.co.za, 1 capetownelite.co.za, 1 @@ -28171,6 +28181,7 @@ capitalstakepool.info, 1 capitaltg.com, 0 capitaltruepartner.hk, 1 capitaltruepartnertechnology.cn, 1 +capitalwaveinsight.com, 1 capitan.ml, 1 capitanbeilinson.tk, 1 capitanlorenzana.com, 1 @@ -28178,7 +28189,6 @@ capitapeskanova.tk, 1 capitein.tk, 1 capitolavenue62.co.in, 1 capitolcarwashwv.com, 1 -capitolcounseling.net, 0 capitolnational.com, 1 capitolpathways.org, 1 capitolrisk.tk, 1 @@ -28220,7 +28230,6 @@ capsule.org, 0 capsulekitchen.co, 1 capsulezone.tk, 1 captain-dandelion.com, 1 -captain-droid.com, 1 captainark.net, 1 captainchef.net, 1 captainclaw.tk, 1 @@ -28313,16 +28322,18 @@ carboncountywy.gov, 1 carbondaleil.gov, 1 carboneventsupport.lu, 1 carbonkiller.org, 1 +carbonkopi.com, 1 carbonlib.com, 0 carbonmapper.org, 1 carbonnel.me, 0 carbono.uy, 1 carbonopuro.es, 0 -carbonreal-test.azurewebsites.net, 1 carbonrus.com, 1 carbonswap.exchange, 1 carbonswap.finance, 1 carbonvision.cn, 0 +carbophile.com, 1 +carbophile.org, 1 carbuzz.com, 1 carcatron.org, 1 carceloinfierno.tk, 1 @@ -28423,7 +28434,6 @@ career-log.jp, 1 career.how, 1 careerandjobsearch.tk, 1 careercapital.co.za, 1 -careerfoundry.com, 0 careergigo.com, 1 careerminds.com, 1 careernet.in, 1 @@ -28474,6 +28484,7 @@ carfinans.ru, 1 carfixautorepair.com, 1 carforme.gr, 1 carfraemill.co.uk, 1 +cargillsbank.com, 1 cargo.build, 1 cargobas.com, 1 cargobay.net, 1 @@ -28490,6 +28501,7 @@ caricature.fr, 0 caricatureavenue.com, 1 carien.eu, 1 carigami.fr, 1 +carignan.quebec, 1 carijournals.org, 0 cariki.gq, 1 carikiv.gq, 1 @@ -28502,7 +28514,7 @@ caringmedicine.ga, 1 caringpups.com, 1 carinsuranceliveest.ga, 1 carinthia.eu, 1 -carinzo.com, 1 +carinvesting.com.br, 1 carioca-romania.ro, 0 cariocabelos.com.br, 1 cariproperti.com, 1 @@ -28624,7 +28636,7 @@ carniceriaserrador.es, 1 carnildo.com, 1 carnivalcostumes.tk, 1 carnivalkingsupplies.com, 1 -carnivalliqueur.com, 1 +carnivalliqueur.com, 0 carnivalstore.de, 1 carnivorousplants.co.uk, 1 carobme.de, 1 @@ -28659,7 +28671,6 @@ carolinegirvan.com, 1 carolineovercash.com, 1 carolinepleuvret.fr, 1 carolmolinari.tk, 1 -carottage-beton.com, 1 carousel.ga, 1 carouselbuses.co.uk, 1 carouselinsights.com, 1 @@ -28773,7 +28784,6 @@ cartegrise.xyz, 1 carteles.tk, 1 cartelesparaimprimir.com, 1 cartelloni.roma.it, 1 -cartenova.co, 1 cartercountymo.gov, 1 carterdan.net, 1 carterjonas.co.uk, 1 @@ -28792,7 +28802,6 @@ carthagecement.com.tn, 1 carthagesavings.com, 1 cartierplan.ga, 0 cartographiepremiereligne.ca, 1 -cartoleriabotticelli.it, 1 cartomancieperso.tk, 1 cartona.com, 1 cartongesso.roma.it, 1 @@ -28867,7 +28876,7 @@ casadoarbitro.com.br, 1 casadopulpo.com, 1 casadostratoresjau.com.br, 1 casadue.de, 1 -casaearomas.com.br, 1 +casaearomas.com.br, 0 casaessencias.com.br, 1 casafina.tk, 1 casagami.ga, 1 @@ -28999,7 +29008,6 @@ cash-generator.tk, 1 cash.app, 1 cash.me, 1 cash.nyc, 1 -cash1loans.com, 1 cashamerican.tk, 1 cashati.com, 1 cashbackcow.us, 1 @@ -29220,7 +29228,6 @@ caspianrentcar.com, 1 caspicards.com, 1 caspiconstruction.com, 1 caspiliving.com, 1 -cassa.ro, 1 casscoroadmi.gov, 1 casscountyia.gov, 1 casscountyil.gov, 1 @@ -29275,7 +29282,6 @@ castle-emarketing.com, 1 castle-engine.io, 1 castle-house-ireland.com, 1 castlebar.one, 0 -castlebeats.de, 1 castlecapers.com.au, 1 castledurrow.com, 1 castleflame.fr, 1 @@ -29326,8 +29332,8 @@ catalogcomputerhardware.tk, 1 catalogingpro.com, 1 catalogobiblioteca.com, 1 catalogobiblioteca.net, 1 +catalogodoamor.com, 1 catalogosdemujer.com, 1 -catalogosvirtualesonline.com, 1 catalogueau.com, 0 catalojic.tk, 1 catalonia.tk, 1 @@ -29368,7 +29374,6 @@ catchook.com, 1 catchteamca.gov, 1 catchthestars.org, 1 catchup-enschede.tk, 1 -catchyz.com, 1 catclouds.net, 1 catcontent.cloud, 1 catcoxx.com, 1 @@ -29458,7 +29463,6 @@ catprint.com, 1 catrepeller.com, 1 catrinasporelmundo.com, 1 catrins-kunst.de, 1 -catsarch.co, 1 catsarch.com, 1 catscreativecakes.ga, 1 catsmagic.pp.ua, 1 @@ -29514,6 +29518,7 @@ cavemax.com, 1 cavisson.com, 1 cavistenancy.fr, 1 cavsconnect.com, 1 +cavuno.com, 1 cavzodiaco.com.br, 1 caw.be, 1 cawagiras.ga, 1 @@ -29579,6 +29584,7 @@ cboard.net, 1 cboost.nl, 1 cboss.xyz, 1 cbozarks.com, 1 +cbplus.tn, 1 cbpridecenter.org, 0 cbr-rcb.ca, 1 cbr-xml-daily.ru, 1 @@ -29619,7 +29625,6 @@ ccaj.io, 1 ccak.training, 1 ccaptioning.com, 1 ccatpracticetest.com, 1 -ccatpracticetests.com, 1 ccattestprep.com, 1 ccautomobil.de, 1 ccb.gov, 1 @@ -29818,13 +29823,12 @@ ceakumal.org, 1 ceannard.net, 1 ceatheneum.com, 1 ceba-cuec.ca, 0 -cebek.co.uk, 1 +cebek.co.uk, 0 cebolinha-imaginaria.com, 1 cebrita.tk, 1 cec.com.es, 1 cec.nom.es, 1 cec.org.es, 1 -cec.org.pt, 1 cecalivo.tk, 1 cecame.ch, 1 cecamericas.com, 1 @@ -29866,9 +29870,10 @@ ceew.in, 1 cefaction.pt, 1 cefi.work, 1 cefonline.com, 1 -cefpress.com, 1 cefta.int, 1 +cegelem.fr, 1 cegfw.com, 1 +cegpalota.hu, 1 cehjournal.org, 1 ceiba.com.co, 1 ceicer.eu, 1 @@ -29933,6 +29938,7 @@ celiac.com, 1 celigo.com, 1 celinaohiopd.gov, 1 celine-patisserie.fr, 1 +celinecity.com, 1 celineitalia.tk, 1 celinesrecipes.com, 1 cellboost.cf, 1 @@ -29945,6 +29951,7 @@ cellmart.ru, 1 cellnatsci.com, 1 cellonline.org, 1 cellopasorobles.com, 1 +cellpex.com, 1 cellphonedb.org, 1 cellrg.org, 1 cellsheet.me, 1 @@ -29971,8 +29978,10 @@ celtigafutbolclub.com, 1 celulares.com, 1 celulas-estaminais.info, 1 celuliteonline.com, 1 +celyrian.com, 1 cemada.cz, 1 cembra.ch, 1 +cemcerkez.com, 1 cement-co2-protocol.org, 1 cementplas.es, 0 cementscience.com, 1 @@ -30034,8 +30043,6 @@ central4.me, 1 centralbank.ae, 1 centralbetsers.ga, 1 centralbetsest.ga, 1 -centralcityjuniorkindergarten.com, 1 -centralclinic.science, 1 centralcoasthomeloans.com.au, 1 centralcoaststadium.com.au, 1 centralconvergence.com, 1 @@ -30047,10 +30054,11 @@ centralegedimat.eu, 1 centralengland.coop, 1 centralesnucleaires.fr, 1 centralfor.me, 1 +centralhaat.com, 1 centralhome.com, 1 centralhq.tk, 1 centralimpressos.com.br, 0 -centralisgroup.com, 1 +centralisgroup.com, 0 centralitasbaratas.es, 1 centralkladno.cz, 1 centrallaketownshipmi.gov, 1 @@ -30130,8 +30138,6 @@ centurioninfosec.com, 0 centurionlaboratories.com.ua, 1 centurionunderground.com, 1 century-properties.com, 1 -century21.es, 0 -century21.pt, 0 centurycarwashinglewood.com, 1 centuryfighters.tk, 1 centuryforum.tk, 1 @@ -30140,7 +30146,6 @@ centurylink.cf, 1 centuryreporters.com, 1 centurystudios.com, 1 centurytiling.com.au, 1 -ceo-consulting.eu, 1 ceomanipur.nic.in, 1 ceomonthlyest.ga, 1 cephalexin.ga, 1 @@ -30192,6 +30197,7 @@ cernac.cz, 1 cernakova.eu, 1 cernalistina.eu, 1 cernko.de, 1 +cernyn.com, 1 ceroresiduo.com, 0 cerovica.tk, 1 cerpus-course.com, 1 @@ -30257,7 +30263,6 @@ certum.cn, 1 certum.shop, 0 certusquartz.com, 1 certyhukil.ga, 1 -cerulean.work, 1 cervejista.com, 1 cervek.me, 1 cervellomorto.tk, 1 @@ -30295,7 +30300,6 @@ cespedes.fr, 1 cestasdepresente.com.br, 1 cestasedelicias.com.br, 1 cestaswmonline.com.br, 1 -cestgada.com, 1 cestinavass.lol, 1 cestpasviolent.com, 1 cestujnamiru.cz, 1 @@ -30368,6 +30372,7 @@ cfotech.ca, 1 cfotech.co.nz, 1 cfotech.co.uk, 1 cfotech.com.au, 1 +cfotech.ie, 1 cfotech.in, 1 cfotech.news, 1 cfpa-formation.fr, 1 @@ -30422,7 +30427,7 @@ cgpa-de.org, 1 cgpcollective.com, 1 cgpe.com, 1 cgplumbing.com, 1 -cgplumbingservice.com, 1 +cgplumbingservice.com, 0 cgps.ch, 1 cgsmart.com, 1 cgsmotors.com, 1 @@ -30493,6 +30498,7 @@ chaisystems.net, 1 chaitanyapandit.com, 1 chaizhikang.com, 1 chakanaherb.be, 1 +chakrakali.com, 1 chalanbiltv.net, 1 chaldal.com, 1 chalet-charmettes.fr, 1 @@ -30511,7 +30517,7 @@ challengeskins.com, 1 chalons-agglo.fr, 1 chalonsenchampagne.fr, 1 chalov.ml, 1 -chama.gr, 0 +chama.gr, 1 chamanga.store, 1 chamartin.tk, 1 chamath.co.uk, 1 @@ -30565,6 +30571,7 @@ chandracenter.com, 1 chandradeepdey.com, 1 chandramani.tk, 1 changdunovel.com, 1 +change-coaching-gmbh.ch, 1 change10000lives.com.ph, 1 changeactivation.com, 1 changeanalytics.us, 1 @@ -30591,6 +30598,7 @@ channellife.ca, 1 channellife.co.nz, 1 channellife.co.uk, 1 channellife.com.au, 1 +channellife.ie, 1 channellife.in, 1 channellife.news, 1 channelpro.es, 1 @@ -30602,6 +30610,7 @@ chantage.tk, 1 chantalflores.co.uk, 1 chantellbeauty.co.uk, 1 chantierjob.com, 1 +chantuong.org, 1 chanty.com, 1 chanz.com, 1 chaos-darmstadt.de, 1 @@ -30679,6 +30688,7 @@ charlescwcooke.com, 1 charlesdickens.tk, 1 charlesheidsieck.com, 1 charlesmarkhotel.com, 1 +charlesodale.com, 1 charlesperkinsacademy.com.au, 1 charlesreedcagle.com, 0 charlesreid1.com, 1 @@ -30765,7 +30775,6 @@ chaskafire.gov, 1 chaskamn.gov, 1 chaskapolice.gov, 1 chasoslov.tk, 1 -chasse-maree.com, 1 chasseurdetruites.com, 1 chastitybelts.tk, 1 chat-buddy.com, 1 @@ -30779,6 +30788,7 @@ chat40.net, 1 chat4me.tk, 1 chataberan.cz, 1 chatacademies.org.uk, 1 +chatalmuluk.com, 1 chatarpaullaw.com, 1 chataynazz.ga, 1 chatbarran.tk, 1 @@ -30896,7 +30906,6 @@ cheapairfarefrom.com, 1 cheapairfaresdeals.com, 1 cheapairfaresticket.com, 1 cheapairlinesuk.com, 1 -cheapairplaneticket.biz, 1 cheapalarmparts.com.au, 0 cheapandbesthosting.com, 1 cheapautoinsuranceblog.com, 1 @@ -30906,18 +30915,15 @@ cheapervacations.com, 1 cheapessay.net, 1 cheapestdirectdebit.co.uk, 1 cheapestgamecards.com, 1 -cheapestwaytofly.com, 1 cheapestwebcamsites.com, 1 cheapexpenseers.ga, 1 cheapexpenseest.ga, 1 -cheapfareto.com, 1 cheapflightatlanta.com, 1 cheapflightla.com, 1 cheapflightmexico.com, 1 cheapflightsengland.com, 1 cheapflightsticketstoindia.com, 1 cheapiesystems.com, 1 -cheapinternationalair.com, 1 cheaplasix.tk, 1 cheaplookers.ga, 1 cheaplookest.ga, 1 @@ -30991,7 +30997,6 @@ checkmack.cf, 1 checkmack.ga, 1 checkmack.gq, 1 checkmarket.com, 1 -checkmarx.com, 1 checkme.gq, 1 checkme.ml, 1 checkmedia.org, 1 @@ -31150,7 +31155,6 @@ chernovcy-news.ru, 1 chernyak.id.au, 1 cherokeecountyga.gov, 1 cherrett.digital, 0 -cherry-green.ch, 1 cherry-handmade.ml, 1 cherryband.space, 1 cherrybread.net, 1 @@ -31160,7 +31164,6 @@ cherrycreeknorth.com, 1 cherryjimbo.sucks, 1 cherrynova.live, 0 cherryonit.com, 0 -cherrypink.no, 1 cherubicsoft.com, 1 cheryboomcar.ro, 1 cheryls.com, 1 @@ -31280,7 +31283,6 @@ chiki.tk, 1 chikucab.com, 1 chikumablog.com, 1 chilapaweb.tk, 1 -chilbert.co, 1 child-theater-bs.co.il, 1 childbravery.com, 1 childcare.gov, 1 @@ -31530,6 +31532,7 @@ choiceuniontown.org, 1 choirofbeirut.cf, 1 choisirmoneau.blog, 1 chokladfantasi.net, 1 +chokoppang.com, 1 cholleria.es, 1 chollima.pro, 1 chollospain.cf, 1 @@ -31629,6 +31632,7 @@ chrispaul.ml, 1 chrispontius.tk, 1 chrisrude.com, 1 chrisshort.net, 1 +chrissimpsonseo.com, 1 chrisspencercreative.com, 1 chrisspencermusic.com, 1 chrissx.de, 1 @@ -31716,7 +31720,6 @@ christmaspages.tk, 1 christmaspartyhire.co.uk, 1 christmasrecipe.tk, 1 christo.ga, 1 -christofer.pro, 1 christoph.media, 1 christophbartschat.com, 0 christophe-beclier.fr, 1 @@ -31813,7 +31816,6 @@ chronoc.de, 1 chronocarpe.com, 1 chronocolis.ml, 1 chronodelivery.com, 1 -chronology.no, 1 chronometre-en-ligne.com, 1 chronoshop.cz, 0 chronotech.fr, 1 @@ -31845,6 +31847,7 @@ chtj.uk, 1 chtodelat.ga, 1 chtyvo.tk, 1 chuan.top, 1 +chuanchih.com, 1 chuanggu.com, 0 chubbygirlpics.com, 1 chubr.cf, 1 @@ -31852,7 +31855,6 @@ chubuhokenservice.com, 1 chuckame.fr, 1 chuckblier.com, 1 chucklesthebeard.website, 1 -chuckmckinnon.com, 1 chuckval.tk, 1 chudnov.tk, 1 chugoku-navi.jp, 1 @@ -31925,7 +31927,6 @@ chuvashiya.tk, 1 chv.ro, 1 chvalov.com, 1 chwempower.com, 1 -chytraauta.cz, 1 chytris.cf, 1 chytris.cz, 1 chziq.com, 1 @@ -31949,7 +31950,6 @@ cialismarketing.net, 1 cialisonlinee.com, 0 cialisprice.net, 1 cialisshop.net, 1 -cialisvtr.com, 1 cialisworld.net, 1 cialisworld.org, 1 ciallo.de, 1 @@ -31999,6 +31999,7 @@ cidikit.tk, 1 cidones.tk, 1 cie-theatre-montfaucon.ch, 0 cie.nl, 1 +ciekawieoprawie.pl, 1 ciekwestronki.cf, 1 ciekwestronki.ga, 1 ciekwestronki.gq, 1 @@ -32022,6 +32023,7 @@ cign.nl, 1 cigniti.com, 1 cignium.com, 1 cigotracker.com, 1 +cihanbagdatli.com, 1 cihanmedya.ga, 1 cihar.com, 1 cihr-irsc.gc.ca, 1 @@ -32046,7 +32048,6 @@ cimice.it, 1 cimsp.com, 1 cimsp.net, 1 cimtools.net, 1 -cin-dere-lla.com, 1 cin.net.au, 1 cinafilm.com, 1 cinay.pw, 1 @@ -32134,7 +32135,6 @@ cipherboy.com, 1 cipherfunk.com, 1 cipherlist.eu, 0 ciphermail.com, 1 -ciphermining.com, 1 ciphersuite.info, 1 ciphertech.com.tw, 1 cipherwizards.com, 1 @@ -32195,6 +32195,7 @@ cirquequirk.com, 1 cirriton.de, 1 cirro.io, 1 cirroenergy.com, 1 +cirrusrays.com, 1 cirugiaesteticalarrarte.es, 1 cirugiaplasticasanluis.com, 1 cirugiatotal.com, 1 @@ -32282,8 +32283,8 @@ citromail.hu, 1 citroner.blog, 1 citrusamerica.com, 1 citrusbocc.gov, 1 -citrusbug.com, 1 citruscounty.gov, 1 +citruscs.com, 1 citruspi.com, 1 citruspi.io, 1 citsc.de, 1 @@ -32530,6 +32531,7 @@ civilengineeringhandbook.tk, 1 civilhost.tk, 1 civiliansnews.com, 1 civillines.nl, 1 +civiltoday.com, 1 civilvirus.tk, 1 civmob.com, 1 cixbrasil.com, 1 @@ -32577,7 +32579,7 @@ ck.cx, 1 ck0.eu, 1 ck1020.cc, 1 ckcg.tk, 1 -ckeke.com, 1 +ckeke.com, 0 ckenel.com, 1 ckenell.com, 1 ckenelley.com, 1 @@ -32712,7 +32714,6 @@ clarkmanagementconsulting.com, 1 clarkmerrick.com, 1 clarknationalaccounts.com, 1 clarkpacific.com.au, 1 -clarkpro.biz, 1 clarksburgma.gov, 1 clarksmeathouse.com, 0 clarkstatecontract.com, 1 @@ -32721,7 +32722,7 @@ clarksvilletn.gov, 1 clarkturnkey.com, 1 clarktwpmi.gov, 1 clarkwinkelmann.com, 1 -clarosports.com, 1 +clarosports.com, 0 clarotvpromocao.com.br, 1 clarr.tk, 1 claryssabarbosa.com.br, 1 @@ -32795,7 +32796,6 @@ classx.tk, 1 classy-websites.de, 1 classyng.com, 1 clatsopcounty.gov, 1 -claude.ai, 1 claude.com, 1 claude.me, 1 claude.photo, 1 @@ -32914,7 +32914,6 @@ clearip.com, 1 clearklima.hu, 1 clearlake.com, 1 clearlinux.org, 1 -clearmatics.com, 1 clearpathtechnology.co.uk, 1 clearpay.co.uk, 1 clearpicturelegalvideo.com, 1 @@ -32923,10 +32922,10 @@ clearpointcreditcounselingsolutions.org, 1 clearsafetalk.com, 1 clearsailingproperties.com, 1 clearsoftcomputacion.com, 1 -clearstep.health, 0 clearstone.au, 1 clearstoneip.com, 0 clearstreamcapital.com, 1 +cleartest.co.uk, 1 cleartheear.co.uk, 1 clearview-creative.com, 1 clearview-psychiatry.com, 1 @@ -33016,13 +33015,14 @@ clevyrcares.com, 1 clevyrcreative.com, 1 clevyrgames.com, 1 clevyrhosting.com, 1 +clevyrhub.com, 1 clevyrnode.com, 1 clevyrnodejs.com, 1 clevyrstream.com, 1 clevyrstreamjs.com, 1 clevyrstudios.com, 1 clevyrvr.com, 1 -cleysense.com, 0 +clflife.com, 1 clgp.jp, 1 clgraphix.com, 1 clial.com, 1 @@ -33053,7 +33053,6 @@ clickfreescore.com, 1 clickheretobegin.tk, 1 clickhost.com.au, 1 clickhouse.tech, 1 -clickhyundai.com, 0 clickinfo.tk, 1 clickingmad.com, 1 clickipo.com, 1 @@ -33105,7 +33104,6 @@ clik.ga, 1 clim-past-discuss.net, 1 clim-past.net, 1 climaencusco.com, 1 -climaffaires.com, 1 climall.com, 1 climarte.org, 1 climate-film.com, 1 @@ -33145,9 +33143,7 @@ clindamycinantibiotic.tk, 1 clindamycinprice.tk, 1 clindoeilmontagne.com, 0 clingout.com, 1 -clinic-manager.academy, 1 clinica.zapto.org, 1 -clinicaacurar.com.br, 1 clinicaarques.es, 1 clinicadeesteticaembh.com, 1 clinicadentalados.com, 1 @@ -33216,7 +33212,6 @@ clipperai.com, 1 clips.ga, 1 cliqit.com.au, 1 cliquetis.ddns.net, 1 -clirnet.com, 1 clive.io, 1 cliveptr.cc, 1 clkbw.com, 1 @@ -33253,7 +33248,6 @@ cloneprint.com, 1 clonestack.com, 1 cloneuniverse.com, 1 cloneuniverse.de, 1 -clonex.wtf, 1 clonidine-hydrochloride.ga, 1 clonix.tk, 1 clonoe.tk, 1 @@ -33320,7 +33314,6 @@ cloudberrylab.com, 1 cloudbleed.info, 1 cloudboard.fr, 1 cloudbook.wiki, 1 -cloudbool.com, 1 cloudbreaker.net, 1 cloudbrothers.info, 0 cloudbytesconnect.com, 1 @@ -33351,6 +33344,7 @@ cloudflare.irish, 1 cloudflareonazure.com, 1 cloudfleet.ai, 1 cloudforce.com, 1 +cloudforge.cz, 1 cloudfree.shop, 1 cloudfronts.com, 1 cloudfudge.com, 1 @@ -33429,7 +33423,6 @@ cloudtocloud.ddns.net, 0 cloudtocloud.tk, 1 cloudtropia.de, 1 cloudtskr.com, 1 -cloudturing.chat, 1 cloudturing.com, 1 cloudu.de, 1 cloudup.com, 1 @@ -33539,7 +33532,6 @@ clubetravel.org, 1 clubexpress.com, 1 clubfactory.ml, 1 clubfailed.tk, 1 -clubfamily.de, 1 clubfatass.com, 1 clubforce.com, 1 clubfunday.ga, 1 @@ -33593,6 +33585,7 @@ clueless.tk, 1 cluelesscraft.com, 1 cluin.org, 1 cluj.help, 1 +cluj24.ro, 1 clun.top, 0 clurinternational.com, 1 clush.pw, 1 @@ -33645,7 +33638,6 @@ cmlachapelle.ch, 1 cmlcpa.ca, 1 cmlex.com, 1 cmlignon.ch, 1 -cmmcinfo.org, 1 cmn-group.com, 0 cmn-groupe.com, 0 cmngroup.com, 0 @@ -33655,6 +33647,7 @@ cmogus.com, 1 cmonlien.fr, 1 cmotech.asia, 1 cmotech.ca, 1 +cmotech.ie, 1 cmotech.in, 1 cmotech.news, 1 cmotech.uk, 1 @@ -33701,6 +33694,7 @@ cnat.mx, 1 cnatraining.network, 1 cnb.ie, 1 cnb1901.com, 1 +cnbcollege.edu.in, 1 cnbs.ch, 1 cnc-lehrgang.de, 1 cncexplorer.com, 1 @@ -33713,7 +33707,6 @@ cnet.com, 1 cnetion.com, 1 cnetw.xyz, 1 cnews.ru, 1 -cnfree.xyz, 0 cng.com.au, 1 cngf.com, 1 cni-certing.it, 1 @@ -33736,8 +33729,8 @@ cnsbordercellatlas.org, 1 cnslub.ru, 1 cnss.gob.do, 1 cntr.fr, 1 -cntras.com, 1 cntraveller.com, 1 +cnv-academy.com, 1 cnvt.fr, 1 cnxiangxian.com, 1 cnzhengmai.com, 1 @@ -33760,7 +33753,6 @@ coachablebyabel.nl, 1 coachbakery.com, 1 coachcommunio.com, 1 coaches-website.de, 1 -coachfoundation.com, 1 coachinfopreneur.com, 1 coaching-aus-leidenschaft.com, 1 coaching-impulse.ch, 0 @@ -33807,6 +33799,7 @@ coatsandcocktails.org, 1 cobaka.tk, 1 cobalt.tools, 1 cobaltia.org, 1 +cobatab.edu.mx, 1 cobb-ranch.com, 0 cobbcountygeorgia.ml, 1 coberturaplus.com, 1 @@ -33817,7 +33810,6 @@ coboxviagens.com.br, 1 cobracastles.co.uk, 1 cobralelie.nl, 1 cobranzasimg.com, 1 -cobs.si, 1 coc.de, 1 coca-colasip.com, 1 cocaine.ninja, 1 @@ -33894,7 +33886,6 @@ code-ch.com, 1 code-gen.ca, 1 code-in-plate.tk, 1 code-judge.tk, 1 -code-maze.com, 1 code-poets.co.uk, 1 code-server.host, 1 code-styling.de, 1 @@ -33926,7 +33917,6 @@ codeclub.gq, 1 codecnetworks.com, 1 codecolliders.com, 1 codecommunity.io, 1 -codeconnect.ir, 1 codecool.com, 0 codecreate.co.uk, 1 codecrew.us, 1 @@ -33948,7 +33938,6 @@ codeguide.ru, 1 codehangar.io, 1 codehelper.ml, 1 codeheroes.be, 1 -codeheroes.fr, 1 codehupy.org.py, 1 codehz.one, 1 codeidea.ga, 1 @@ -34032,9 +34021,7 @@ codevo.mobi, 1 codevo.org, 1 codevo.ws, 1 codewaifu.com, 1 -codeward.io, 1 codewild.de, 1 -codewills.com, 1 codewing.de, 1 codewitchbella.com, 0 codewithalisha.ga, 1 @@ -34116,7 +34103,6 @@ coffeebreak.bg, 1 coffeechi.ir, 1 coffeeholic.tk, 1 coffeehousewriters.com, 1 -coffeeplazahamburg.com, 1 coffeesense.coffee, 1 coffeestain.ltd, 1 coffeestory.in.ua, 1 @@ -34190,11 +34176,11 @@ coingate.com, 1 coinhako.com, 1 coinjar-sandbox.com, 1 coinjar.com, 1 +coinjp.io, 1 coinlend.org, 1 coinliq.com, 1 coinloan.io, 1 coinmama.com, 1 -coinmarketjob.com, 1 coinmedium.com, 1 coinmotion.com, 1 coinnector.com, 1 @@ -34238,8 +34224,6 @@ colatyso3.com, 1 colazxk.xyz, 1 colbert.ml, 1 colburnadamswi.gov, 1 -colchesterglobal.co.nz, 1 -colchesterglobal.com, 1 colchesterglobal.com.au, 1 colcomm.com, 1 cold.world, 1 @@ -34285,6 +34269,7 @@ coletteclubs.com, 1 coletteschley.de, 1 colfaxcountyne.gov, 1 colfaxia.gov, 1 +colframe.com.co, 1 colibri.jp, 1 colibriexpress.tk, 1 colibrigroup.com, 1 @@ -34549,7 +34534,6 @@ com.fo, 1 com4.no, 0 comactor.com, 1 comactor.fr, 1 -comagexinvoice.com, 1 comalia.com, 1 comanchecountyks.gov, 1 comanchenationpolice.gov, 1 @@ -34568,7 +34552,6 @@ comaypa.es, 1 combatix.io, 1 combattrecellulite.com, 1 combidarlehen.de, 1 -combineconquer.com, 1 combineid.com, 1 combloux.com, 1 combos-2020.tk, 1 @@ -34612,7 +34595,6 @@ comet-xray.com, 1 comet.eu.org, 1 comet.tech, 1 cometbot.cf, 1 -cometcache.com, 1 comete-electricite.fr, 1 cometer.co, 1 cometer.io, 1 @@ -34620,7 +34602,6 @@ cometonovascotia.ca, 1 comevius.com, 1 comevius.org, 1 comevius.xyz, 1 -comewith.online, 1 comex.biz, 1 comfandivirtual.com.co, 1 comff.net, 1 @@ -34803,7 +34784,6 @@ compagniedesateliers.com, 0 compagniedesvoyageurs.com, 1 compagniemartin.com, 0 compagnonsbtp.com, 1 -compalliance.com, 1 companion-web.net, 1 company-bike.com, 1 company-info-plugins.nl, 1 @@ -34815,6 +34795,7 @@ compaoffers.com, 1 comparamejor.com, 1 comparatif-moto.fr, 1 comparativadetarifasenergeticas.es, 1 +comparazionequote.net, 1 compare-energie.fr, 1 compareairfaredeals.com, 1 compareer.com, 1 @@ -34822,6 +34803,7 @@ compareleasedlines.co.uk, 1 comparemymobile.com, 1 compareshow.com, 1 comparesoft.com, 1 +comparetaxsoftware.com, 1 comparetheproject.com, 1 comparewatch.com, 1 compareweddinginsurance.org.uk, 1 @@ -34839,7 +34821,6 @@ compassregroup.com, 1 compattatori.it, 1 compdermcenter.com, 1 compensadosbello.com.br, 1 -compete4ever.com, 1 competencyassessment.ca, 1 competis.cf, 1 competitiontree.com, 1 @@ -34987,7 +34968,6 @@ computop.com, 1 computron.ga, 1 comqi.com, 1 comquadro.com.br, 1 -comquestmed.com, 1 comra-therapy.com, 1 comradesofmight.tk, 1 comsoli.com.br, 1 @@ -35004,6 +34984,7 @@ comunicazionenellaristorazione.it, 1 comunidadmontepinar.es, 1 comunidadreparando.com, 1 comunidadvegetariana.com, 1 +comunilife.org, 1 comuniondelucia.com, 1 comunismo.tk, 1 comunistas.tk, 1 @@ -35031,7 +35012,6 @@ concept.cleaning, 1 concept3d.com, 1 concept4photography.com, 1 concept5.co.il, 1 -conceptatelier.de, 1 conceptec.de, 1 conceptfoundation.org, 1 conceptluxury.it, 1 @@ -35050,7 +35030,7 @@ conciencianimal.tk, 1 concierge.diet, 1 conciertoscolombia.tk, 1 conciliainc.com, 1 -concilig.com.br, 0 +concilig.com.br, 1 concilioderivendel.tk, 1 conciliumnotaire.ca, 1 conciseflow.co.za, 1 @@ -35063,6 +35043,7 @@ conclusive.co.za, 1 concor.ne.jp, 1 concord.sh, 1 concordance.bible, 1 +concordvoice.chat, 1 concrefy.com, 1 concretedreamsoftexas.com, 1 concretehermit.com, 0 @@ -35072,7 +35053,6 @@ concreterepairatlanta.com, 0 concreterepairconcreteleveling.com, 1 concreterstoowoomba.com, 1 concreterswollongong.com, 1 -concreteshopper.com.au, 1 concurseirosdeplantao.com.br, 1 concursos.com.br, 1 concursosabertos.com.br, 1 @@ -35099,7 +35079,6 @@ conectada.tk, 1 conectagob.gov.co, 1 conectatop.com.br, 1 conectens.com, 1 -conectumfinanse.pl, 1 conejicos.tk, 1 conesin.com, 1 conews.ml, 1 @@ -35181,6 +35160,7 @@ congenio.de, 1 congenio.eu, 1 congenio.net, 1 congineer.com, 1 +congmc.com, 1 congnghe.so, 1 congoproject.tk, 1 congregacionmitacol.org, 0 @@ -35209,11 +35189,12 @@ connect-av.co.uk, 1 connect.facebook.net, 1 connect.gov, 1 connect.net.pk, 1 +connectagoods.com, 1 connectaimpianti.it, 1 connectall.tk, 1 connectapparelstore.com, 1 connectavid.com, 1 -connectedinvestors.com, 0 +connectedinvestors.com, 1 connectedmind.me, 1 connectfss.com, 1 connectheor.com, 1 @@ -35250,6 +35231,7 @@ connexas.eu, 1 connexdevices.co.za, 1 connexio.digital, 1 connext.de, 1 +connextglobal.com, 1 connictro.de, 1 connieetterphotography.com, 1 conning.com, 1 @@ -35357,7 +35339,6 @@ constexpr.org, 1 constinit.org, 1 constipationrecords.tk, 1 constitution.website, 0 -constru-vegas.com.mx, 1 construccionesceyve.com, 1 construct.net, 1 constructexpres.ro, 1 @@ -35366,10 +35347,10 @@ construction-digitale.fr, 0 construction-group.ga, 1 construction-robotics.de, 1 constructionaltavista.com, 1 +constructionmetrika.ca, 1 constructionmichelouellet.com, 1 constructionnews.ie, 1 constructionskillstest.com, 1 -constructionstudent.uk, 1 constructoraisaba.com, 1 construguia.co, 1 construred.tk, 1 @@ -35429,7 +35410,6 @@ consumershempmd.com, 1 consumertesting.com, 1 consumidor.gov, 1 consumptionjunction.com, 1 -consumr.ai, 1 consuwijzer.nl, 1 consyltec.de, 1 contabilidadebhpampulha.com.br, 1 @@ -35439,7 +35419,6 @@ contact-checker.tk, 1 contact.inc, 1 contact.xyz, 1 contactbadger.com, 1 -contacted.io, 0 contactelus88.fr, 1 contactsrl.it, 1 contactstay.com, 1 @@ -35448,12 +35427,11 @@ contailor.de, 1 contalbi.pt, 1 contaminatie.nl, 1 contango.xyz, 1 +contato.vip, 1 contecgmbh.com, 1 contempfleury.com, 1 -contemplativeeducation.org, 1 contemptevoke.com, 1 contenedoresdereciclaje.online, 1 -content.watch, 1 contentcaching.com, 1 contentpass.io, 1 contentpass.net, 1 @@ -35540,6 +35518,7 @@ convecteurs.net, 1 convenantencheck.nl, 1 convergence.fi, 1 convergencela.com, 1 +convergent.tn, 1 convergenza.roma.it, 1 convergnce.com, 1 conversationexchange.com, 1 @@ -35571,7 +35550,6 @@ conwaypdnh.gov, 1 conwaysc.gov, 1 conwood.best, 1 conwood.my.id, 1 -conwx.com, 1 conxcon.de, 1 coo.ooo, 1 coobis.com, 1 @@ -35581,16 +35559,15 @@ cooferro.tk, 1 coogee.com.au, 1 cooink.net, 0 cook-maestro.com, 1 -cookcoifas.com.br, 1 cookcountyclerkil.gov, 1 cookcountysheriffil.gov, 1 +cookedplay.com, 1 cookescastles.co.uk, 1 cookicons.co, 1 cookie-directive.cf, 1 cookie4.com, 1 cookieandkate.com, 1 cookiecrook.com, 1 -cookiedatabase.org, 1 cookiefamily.org, 1 cookielaw.org, 1 cookiepedia.co.uk, 1 @@ -35606,6 +35583,7 @@ cookingperfected.com, 1 cookingperformancegroup.com, 1 cooko.at, 1 cooks.house, 1 +cooks.ly, 1 cooksite.tk, 1 cooktiva.com, 1 cooktoprepairaustin.com, 1 @@ -35652,7 +35630,6 @@ coolthissummer.ca, 1 coolulder.net, 1 coolweirdfacts.ga, 1 coolwinefix.com, 1 -coombsinc.com, 1 coomer.st, 1 coomonte.tk, 1 coonelnel.net, 1 @@ -35678,6 +35655,7 @@ coordinafit.com, 1 coordonnees-gps.fr, 1 coore.jp, 1 coorpacademy.com, 1 +coosada911al.gov, 1 coosbayor.gov, 1 cooscountynh.gov, 1 cooscountyor.gov, 1 @@ -35756,7 +35734,6 @@ corbax.com, 1 corbeille-de-fruit.fr, 1 corbettparadise.com, 1 corbettreporting.com, 1 -corbi.net.au, 1 corbusier.gq, 1 corcoranmn.gov, 1 cord-blood.tk, 1 @@ -35770,7 +35747,7 @@ corderosa.tk, 1 cordeydesign.ch, 0 cordial.systems, 1 cordialapis.com, 1 -cordialsystems.com, 1 +cordialsystems.com, 0 cordioea.net, 1 cordis.io, 0 cordlessdog.com, 1 @@ -35831,7 +35808,6 @@ coresystems.hu, 1 coretechnology.ie, 1 coretema.eu, 1 coreum.ca, 1 -coreup.de, 1 corevetconnect.co.uk, 1 corexpert.com, 1 coreyjmahler.com, 1 @@ -35895,7 +35871,6 @@ coroadeflores.pt, 1 coroas10.tk, 1 coroimagen.tk, 1 corona-data.eu, 1 -corona-renderer.cloud, 1 coronacheck.nl, 1 coronasafe.network, 1 coronastationphotography.com, 1 @@ -35909,7 +35884,6 @@ coronavirusfortbend.gov, 1 coronavirustesting.gov, 1 coronersconnect.co.uk, 1 cororocierodebelen.tk, 1 -corover.ai, 1 corp.goog, 1 corpconsulting.com, 1 corpdocs.com.au, 1 @@ -35942,7 +35916,6 @@ corpuschristilansdale.org, 1 corpuschristisouthriver.org, 1 corpuschristitx.gov, 1 corpusslayer.com, 1 -corpvs.com.br, 1 corr-met.pl, 1 corradofranco.it, 1 corrales-sanchez.tk, 1 @@ -35998,6 +35971,7 @@ cortep.fr, 1 cortestesisat.net, 1 cortex-development.de, 1 cortex-tickets.de, 1 +cortexsage.com, 1 cortezco.gov, 1 cortezsanitation.gov, 1 corthouts.pl, 1 @@ -36019,6 +35993,7 @@ corvax.kiev.ua, 1 corvel.com, 1 corvettesalvage.com, 1 corvetto.tk, 1 +corvly.com, 1 corvus.eu.org, 1 corvuscorax.info, 1 coryadum.com, 1 @@ -36078,6 +36053,7 @@ cosmosearch-azerbaijan.tk, 1 cosmosenalerta.tk, 1 cosmosfala.com.br, 1 cosmosmkt.com.mx, 1 +cosmowords.games, 1 cosmoz.ga, 1 cosmundi.de, 1 cosmv.org, 1 @@ -36089,7 +36065,6 @@ cosplaysr.com, 1 cospol.ch, 0 cosset.com.tw, 1 costa-ballena.tk, 1 -costa-blanca.space, 1 costalinux.tk, 1 costaneranorte.cl, 1 costaricadreamers.com, 1 @@ -36100,7 +36075,6 @@ costco.co.kr, 1 costco.co.nz, 1 costco.co.uk, 1 costco.com.au, 1 -costco.com.mx, 1 costcoinsider.com, 1 costel.tk, 1 costelcom.co, 1 @@ -36155,7 +36129,6 @@ couchidiomas.com, 1 couchscreen.de, 1 couetteduvet.fr, 1 cougar-bordeaux.fr, 1 -cougargrades.io, 1 coughlan.de, 1 could.jp, 1 couleur-lavande.com, 1 @@ -36290,6 +36263,7 @@ coutellerie-suisse.fr, 1 coutelleriederibbes.fr, 1 coutts.com, 1 couverture-barre.fr, 1 +cov.com, 1 covar.com.co, 1 cove.chat, 1 coventa.cl, 1 @@ -36370,7 +36344,6 @@ coyote.cf, 1 coyote105.com, 1 coyotegear-usa.com, 1 coyotehillstecate.com, 1 -coz-artistic.net, 1 cozanne.fr, 1 coze.zone, 1 cozinharaz.com, 1 @@ -36379,13 +36352,13 @@ cozmoapp.com, 1 cozmoyachts.com, 1 cozo.me, 1 coztacukrzyca.pl, 1 -cozumelairlines.com, 1 cozumelflight.com, 1 cozumelisparadise.com, 1 cozyeggdesigns.com, 1 cozyfarms.in, 1 cozynergy.com, 1 cp-st-martin.be, 1 +cp.pt, 1 cpac.moe, 1 cpac.nyc, 1 cpacharge.com, 0 @@ -36454,7 +36427,6 @@ cpsnap.org, 1 cpsq.fr, 1 cpstest.live, 1 cpstest.org, 1 -cptcreative.com, 1 cptoon.com, 1 cpts-tdm16.fr, 1 cptvl.de, 1 @@ -36523,6 +36495,7 @@ cradleofaviation.org, 1 cradletocareer.org.uk, 1 craft-beer.life, 1 craft-me-in.com, 1 +craft.eu.org, 1 craftadda.com, 1 craftandbuild.de, 1 craftbyhand.com, 1 @@ -36532,6 +36505,7 @@ craftchocolate.store, 1 craftcms.com, 1 crafted.cat, 1 craftedcharmweddingplanning.com, 1 +craftedsignal.io, 1 crafterbase.de, 1 crafters-room.com, 1 crafters.co.jp, 1 @@ -36560,7 +36534,7 @@ craftyguy.net, 1 craftyphotons.net, 1 craftyun.cn, 1 craig-mullins.com, 1 -craigary.net, 0 +craigary.net, 1 craigbates.co.uk, 0 craigdavis.ga, 1 craigfrancis.co.uk, 1 @@ -36677,7 +36651,7 @@ crcmc.com.tw, 1 crcncc.org, 1 crcprojects.in, 1 crcr.pw, 1 -cre-pf.org.au, 1 +cre-pf.org.au, 0 cre8ivedeals.com, 1 crea-shops.ch, 0 crea.bg, 1 @@ -36751,6 +36725,7 @@ creativedijital.com.tr, 1 creativeedge.ch, 1 creativeeducation.tk, 1 creativeexpertdesigner.com, 1 +creativefinisheshub.com, 1 creativegraphix.com, 1 creativeground.com, 1 creativeground.com.au, 1 @@ -36792,6 +36767,7 @@ creattic.tk, 1 creatuasociacion.es, 1 creature.social, 1 creayes.com, 1 +creaza.nl, 1 crebita.de, 1 creche-noel.com, 1 crechepequenopolegar.com.br, 1 @@ -36819,8 +36795,6 @@ creditcheckup.com, 1 creditcorponline.com, 0 creditenonstop.ro, 1 crediteurope.ru, 1 -creditfair.in, 1 -credithuman.com, 1 creditif.tk, 1 creditkarma.ca, 1 creditkarma.com, 1 @@ -36855,7 +36829,6 @@ creeksideproconstruction.com, 1 creelandgow.com, 1 creep.tk, 1 creepycraft.nl, 1 -creepymemes.com, 1 creepynuts.com, 1 creepypastas.com, 1 creepystories.tk, 1 @@ -36873,6 +36846,7 @@ cremornelec.com.au, 1 crena.ch, 1 crepa.ch, 0 crepusculofansmexico.tk, 1 +crepz.ai, 1 crescendo.ai, 0 crescendo.ventures, 1 crescent-moon.tk, 1 @@ -36882,7 +36856,6 @@ cresoweb.it, 1 cresserons.fr, 0 cressetcapital.com, 1 crestalepropiedades.com.ar, 1 -crestaproject.com, 1 crestasantos.com, 1 crestataustin.com.my, 1 crestaurant.com.au, 1 @@ -36948,10 +36921,8 @@ crimeamet.ml, 1 crimean-wines.tk, 1 crimeandwar.com, 1 crimefreeliving.com, 1 -crimeid.cc, 1 crimemuseum.org, 1 crimereports.com, 1 -crimes.media, 1 crimestoppersnt.com.au, 1 crimethincx.tk, 1 crimewatch.net, 1 @@ -36992,10 +36963,8 @@ criptozoologia.tk, 1 cris.org.in, 1 cris2006.com, 1 crisantacademy.com, 1 -crisis.jp, 1 crisisactual.com, 1 crisisclubers.ga, 1 -crisisconnections.org, 1 crisisdelos40.tk, 1 crisisnextdoor.gov, 1 crisispreparedness.com, 1 @@ -37189,11 +37158,9 @@ crowdee.com, 1 crowdfiber.com, 1 crowdpress.it, 1 crowdsim3d.com, 1 -crowdstack.com, 1 crowdstack.io, 1 crowdsupply.com, 1 croweleaseaccountingexpress.com, 1 -croweserver.com, 1 crowleytxlicensedelectrician.com, 1 crown-beverage.com, 1 crown-building.com, 1 @@ -37203,7 +37170,6 @@ crowncastles.co.uk, 1 crownchessclub.com, 1 crownedhijab.com, 1 crownhotelharrogate.com, 1 -crownmazda.ca, 1 crownmutual.com, 1 crownmutualgroup.com, 1 crownpeak.com, 1 @@ -37229,6 +37195,7 @@ crsoresina.it, 1 crspcrst.ca, 1 crsserviceogkloak.dk, 1 crstat.ru, 1 +crt.sh, 1 crt2014-2024review.gov, 1 crtevents.co.uk, 1 crtified.me, 1 @@ -37269,6 +37236,7 @@ crute.me, 1 crutic.gq, 1 cruxreasoning.com, 1 cruzadamorada.tk, 1 +cruzrealestatepropertiesllc.com, 1 crvenikrst.tk, 1 cry-sys.de, 0 cryb.me, 1 @@ -37374,6 +37342,7 @@ cryptopartyutah.org, 1 cryptopaste.org, 1 cryptophobia.nl, 1 cryptopolitan.com, 1 +cryptops.fr, 1 cryptorival.com, 1 cryptoscamdb.org, 1 cryptoscope.io, 1 @@ -37390,6 +37359,7 @@ cryptox-trading.com, 1 cryptoya.io, 1 cryptozoologyguide.com, 1 cryptpad.cz, 1 +cryptpeer.com, 1 cryptsetup.com, 1 cryptulo.com, 1 crys.cloud, 1 @@ -37419,11 +37389,11 @@ crystalprinting.com.au, 1 crystalsdollz.tk, 1 crystalsky.tk, 1 crystalspringsms.gov, 1 -crystmaple.net, 1 cryz.ru, 1 cs-algeria.tk, 1 cs-bot.tk, 1 cs-colorscreed-betongulve.dk, 1 +cs-dahoam.de, 1 cs-escom.tk, 1 cs-ice.tk, 1 cs-lite.tk, 1 @@ -37493,8 +37463,6 @@ csevolution.tk, 1 csexy.ml, 1 csfa.be, 1 csfcloud.com, 1 -csfd.cz, 1 -csfd.sk, 1 csffa.ca, 1 csfm.com, 1 csgbusiness.co.uk, 1 @@ -37598,6 +37566,7 @@ ct.search.yahoo.com, 0 ctafo.com, 0 ctauditors.gov, 1 ctbirding.org, 1 +ctc-g.com.sg, 1 ctcloud.ml, 1 ctcom-peru.com, 1 ctconp.org, 1 @@ -37611,7 +37580,6 @@ ctet.nic.in, 1 ctf-albstadt.de, 1 ctf-archive.com, 0 ctf.link, 1 -ctg.com, 1 cthomas.work, 1 cthulhuden.com, 1 ctir.gov.br, 1 @@ -37636,6 +37604,7 @@ ctpe.info, 1 ctpe.net, 1 ctpro.net, 1 ctr-sante.eu, 1 +ctrackcrystal.co.za, 1 ctrl-click.fr, 1 ctrl.blog, 1 ctrl.gr, 0 @@ -37657,13 +37626,13 @@ cuantocuestauruguay.com, 1 cuantusambiental.com, 1 cuarentagrados.tk, 1 cuaresmaysemanasanta.tk, 1 -cuartaraiz.com, 1 cuartetocontinental.tk, 1 cuartob.tk, 1 cuasotinhyeu.vn, 1 cuatlanta.org, 1 cuatroporcuatro.tk, 1 cuatroymedia.com, 1 +cuautosearch.com, 1 cuban.wiki, 1 cubanchino.tk, 1 cubanda.de, 1 @@ -37697,7 +37666,6 @@ cubia.com, 1 cubia4.com, 1 cubic-lynx.com, 1 cubicle.tk, 1 -cubiest.com, 1 cubigames.tk, 1 cubikus.fr, 1 cubile.xyz, 1 @@ -37742,7 +37710,6 @@ cuetoems.com, 1 cuevafelina.tk, 1 cuevasymontoto.com, 1 cufoon.com, 1 -cugetliber.ro, 1 cuhadardokuma.com, 1 cuhawaii.com, 1 cuidadosamente.com, 1 @@ -37751,12 +37718,12 @@ cuio.net, 1 cuir-lipari.fr, 1 cuisine-centrale17.fr, 1 cuisine-ultime.fr, 1 +cuisineburst.com, 1 cuitrau.tk, 1 cujanovic.com, 1 cukrarnalahoda.cz, 1 cukrinelape.com, 1 cukrzyca.net, 1 -cuktech.tr, 1 cukurbag.ml, 1 culan.dk, 0 culaoxi.com, 0 @@ -37815,7 +37782,6 @@ cuminas.com, 1 cumingcountyne.gov, 1 cumlaudegent.be, 1 cumman.life, 1 -cummiesin.me, 1 cumnock.name, 1 cumnock.org, 1 cumplegenial.com, 1 @@ -37920,15 +37886,12 @@ currentbitcoin.news, 1 currentchaos.tk, 1 currenteurope.eu, 1 currenthaus.com, 1 -currentlystreaming.com, 1 currycountynm.gov, 1 currycountyor.gov, 1 currynissanmaparts.com, 1 currytech.cn, 1 cursed-empire.airforce, 1 -cursed.foundation, 1 cursedpine.studio, 1 -curseus.com, 1 cursillosdezaragoza.tk, 1 cursoalia.com, 0 cursoandroid.com, 1 @@ -37940,7 +37903,6 @@ cursorcam.tk, 1 cursos-trabajadores.net, 1 cursos.com, 1 cursos.enf.br, 1 -cursosbajoprecio.com, 1 cursosdepestanas.com, 1 cursosemmaus.es, 1 cursosforex.com, 1 @@ -38003,6 +37965,7 @@ customromlist.com, 1 customsandals.tk, 1 customsportsocks.com, 0 customtel.com.au, 1 +customtruckaccessories.com, 1 customtshirtrequest.com, 0 customwebsitesplus.com, 0 customwritings.com, 1 @@ -38019,7 +37982,6 @@ cutaquigusa.com, 1 cute-urls.ml, 1 cute2u.com, 1 cuteboibutt.ml, 1 -cutegifmaker.com, 1 cutehost.ga, 1 cutemodel.ml, 1 cutenfunnypets.com, 1 @@ -38147,7 +38109,6 @@ cwrau.de, 1 cwrau.info, 1 cwrau.io, 1 cwrau.rocks, 1 -cws.ae, 1 cwtsamplecenter.com, 1 cwtv.cc, 1 cwtv.in, 1 @@ -38156,7 +38117,6 @@ cx100.io, 1 cxbmystore.com, 1 cxcarepro.com, 1 cxense.com, 1 -cxfund.com.cn, 1 cxologic.com, 1 cxologic.io, 1 cxologic.net, 1 @@ -38166,7 +38126,6 @@ cxotrustsummit.com, 1 cxpbrasil.com.br, 1 cy.ax, 1 cy.technology, 1 -cyabra.com, 1 cyanhexagon.com, 1 cyanogenupdatetracker.com, 1 cybaa.io, 1 @@ -38224,6 +38183,7 @@ cybercitadel.com, 1 cyberclasse.ca, 1 cyberclaw.tk, 1 cybercloud.cc, 0 +cyberclub.com.br, 1 cyberconsultia.com, 1 cybercrew.cc, 1 cybercrew.rocks, 1 @@ -38231,6 +38191,7 @@ cybercrime.gov, 1 cyberd.org, 0 cyberdan.co.uk, 1 cyberdean.fr, 1 +cyberdefgeek.com, 1 cyberdevelopment.es, 1 cyberdiscoverycommunity.uk, 1 cyberdog.ch, 1 @@ -38255,7 +38216,6 @@ cybergreen.cz, 1 cybergroup.cf, 1 cyberguardian.consulting, 1 cyberhaus.ch, 1 -cyberhelden.nl, 1 cyberhipsters.nl, 1 cyberhost.uk, 1 cyberinfraarmor.com, 1 @@ -38328,6 +38288,7 @@ cyberschmiede.at, 1 cyberschmiede.com, 1 cyberschmiede.de, 1 cyberscroll.com, 1 +cybersecops.bg, 1 cybersecur.co.ao, 0 cybersecurite-info.fr, 1 cybersecurity.gov, 1 @@ -38349,7 +38310,7 @@ cyberskyline.com, 1 cybersmart.co.uk, 1 cybersolution.tk, 1 cybersolve.com, 1 -cybersoulz.com, 1 +cybersoulz.com, 0 cybersound.tk, 1 cyberspect.io, 1 cyberspot-ci.net, 1 @@ -38436,7 +38397,6 @@ cynop.me, 1 cynqx.com, 1 cynrgie.fr, 1 cynthiacherry.com, 1 -cyoa.com, 1 cyon.ch, 1 cyp.io, 1 cype.dedyn.io, 1 @@ -38444,6 +38404,7 @@ cyph.com, 1 cyph.healthcare, 1 cyph.ws, 1 cyphar.com, 1 +cyphene.com, 1 cypherbot.org, 1 cypherock.com, 1 cypherpunk.observer, 1 @@ -38452,6 +38413,7 @@ cypressca.gov, 1 cypro.co.uk, 1 cyprus-company-for.gr, 1 cyprus-company-service.com, 1 +cyprus-consult.com, 1 cyprustimes.com, 1 cyqual.com, 1 cyraco.com, 1 @@ -38479,6 +38441,7 @@ cytobank.org, 1 cytosorbents.com, 1 cytovet.ru, 1 cyvault.io, 1 +cywall.co, 1 cz.ma, 1 cz.nl, 1 czakey.net, 1 @@ -38506,6 +38469,7 @@ czechpoint.cz, 1 czechps.cz, 1 czechvirus.cz, 1 czeh.us, 1 +czerner.cz, 1 czewo-data.de, 1 czirnich.org, 1 czk.mk, 1 @@ -38527,7 +38491,7 @@ d-diabetiki.ru, 1 d-eisenbahn.com, 1 d-ku.de, 1 d-macindustries.com, 1 -d-mind.de, 1 +d-mind.de, 0 d-shed.tk, 1 d-soft.tk, 1 d-solutions.com.au, 1 @@ -38566,6 +38530,7 @@ d25vkjbt1xiu01.cloudfront.net, 1 d25x5pqe2jwu0a.cloudfront.net, 1 d2evs.net, 1 d2i06m35fc7thi.cloudfront.net, 1 +d2i28hdolds51o.cloudfront.net, 1 d2servicios.com, 1 d2trade.tk, 1 d2woj1dt0tk6sn.cloudfront.net, 1 @@ -38603,7 +38568,6 @@ d8181.com, 1 d82365.com, 1 d883vip.com, 1 d884vip.com, 1 -d8859.com, 1 d885vip.com, 1 d886vip.com, 1 d887vip.com, 1 @@ -38656,12 +38620,12 @@ dachdeckerei-hagen.de, 0 dachdeckermeister-egon-weiss.de, 1 dachdeckermeister-moeller.de, 1 dachlaeufer.com, 1 -dachnie-reshenia.ru, 0 dachshundsaspets.com, 1 dachshundtalk.com, 1 daciaclubnederland.nl, 1 daconsult.uk, 1 dacsansach.com, 1 +dacubeking.com, 1 dacxichain.com, 1 dad, 1 dad256.tk, 1 @@ -38698,7 +38662,6 @@ daemon-hentai.tk, 1 daemon.xin, 1 daemons.ml, 1 daemonslayer.net, 1 -daemus.ro, 0 daemwool.ch, 1 daenet.de, 1 daer.cloud, 1 @@ -38818,6 +38781,7 @@ daintonparkgolf.co.uk, 1 dairikab.go.id, 1 dairy.com.sg, 1 dairydata.ie, 1 +dairygoldagri.ie, 1 daisidaniels.co.uk, 1 daisuki.pw, 1 daisy-peanut.com, 1 @@ -38895,7 +38859,6 @@ dallaswater.gov, 1 dallaswestinternational.ga, 1 dallatana.tk, 1 dallatur.com.br, 1 -dalliard.ch, 1 dallinbryce.com, 1 dallincooper.com, 1 dalliope.com, 1 @@ -38996,6 +38959,7 @@ dancerzone.tk, 1 danceworld.tk, 1 dancingangels.tk, 1 dancingcubs.co.uk, 1 +dancol.org, 1 danddy.eu, 1 dandelikaliadventure.com, 1 dandelion.eu, 1 @@ -39064,7 +39028,7 @@ danielberanek.cz, 1 danielbotelho.com, 1 danielcardoso.net, 1 danielcolquitt.com, 1 -danieldavies.co.uk, 1 +danieldavies.co.uk, 0 danielderidderfansite.tk, 1 danieldevine.tk, 1 danielduran.tk, 1 @@ -39078,6 +39042,7 @@ danielfisher.com, 1 danielfukuda.com, 1 danielg0.co.uk, 1 danielg0.com, 1 +danielgamrot.cz, 1 danielgil.pt, 1 danielgorr.de, 1 danielgray.email, 1 @@ -39159,10 +39124,9 @@ dankeroni.de, 1 dankim.de, 0 dankojunasevic.tk, 1 danla.nl, 1 -danlirette.ca, 1 danlirette.com, 1 danlockton.tk, 1 -danloona.nl, 1 +danma.in, 1 danmaby.com, 1 danmassarano.com, 1 danminkevitch.com, 0 @@ -39221,8 +39185,9 @@ dante.ms, 1 dantesinferno.tk, 1 danthecloudman.com, 1 dantikap.tk, 1 +dantob.com.au, 1 dantri.com.vn, 1 -danux.co.uk, 1 +danux.co.uk, 0 danvillebikeandfootwear.com, 1 danvillein.gov, 1 danvillevt.gov, 1 @@ -39276,6 +39241,7 @@ darean.ml, 1 darebioscience.com, 1 daredefydiscover.ca, 1 daredorm.com, 1 +darehousingfoundation.org, 1 darenc.gov, 1 darenet.org, 1 daresay.games, 1 @@ -39297,6 +39263,7 @@ darioush.com, 0 dariusheghbali.tk, 1 dariusstoica.com, 1 dariusstoica.de, 1 +dariusstoica.ro, 1 darix.tk, 1 dark-ages.tk, 1 dark-crystal.tk, 1 @@ -39305,7 +39272,6 @@ dark-infection.de, 1 dark-lake.com, 0 dark-legion.tk, 1 dark-manga.com, 1 -dark-nova.me, 1 dark-nova.tk, 1 dark-programs.com, 1 dark-vision.cz, 1 @@ -39339,6 +39305,7 @@ darkforceofhappiness.tk, 1 darkgames.cf, 1 darkgrid.eu, 1 darkhall.tk, 1 +darkhelm.org, 1 darkhuntersworld.tk, 1 darkinvasion.tk, 1 darkishgreen.com, 1 @@ -39359,6 +39326,7 @@ darknessflickers.com, 0 darknessinme.tk, 1 darkoctoberseance.com, 1 darkoff.tk, 1 +darkorp.dk, 1 darkotip.tk, 1 darkovepredmety.cz, 1 darkpassionsite.tk, 1 @@ -39371,7 +39339,6 @@ darkroomvr.com, 1 darksair.org, 1 darkscience.tk, 1 darksecret.dk, 1 -darkseller.in, 1 darkserver.fedoraproject.org, 1 darkserver.stg.fedoraproject.org, 1 darksideprod.tk, 1 @@ -39400,8 +39367,10 @@ darlenenbocek.com, 1 darlington.tk, 1 darlingtonia.nl, 1 darlingtonwi.gov, 1 +darmoweporady.pl, 1 darmowy-tarot.pl, 1 darnashop.fr, 1 +darngoodflooring.com, 1 darom.jp, 1 darosen.de, 1 darosen.eu, 1 @@ -39410,6 +39379,7 @@ darren.to, 1 darrenflemingphotography.co.uk, 1 darrenlines.uk, 1 darrenm.net, 1 +darrentoh.ai, 1 darrouzettisd.gov, 1 dart-tanke.com, 1 dart-tanke.de, 1 @@ -39495,6 +39465,7 @@ data-jt.de, 1 data-loader.com, 1 data-mail.tk, 1 data-mining.co.uk, 1 +data-mirror.org, 1 data-privacy.tk, 1 data-reader.de, 1 data-replicator.cloud, 1 @@ -39522,9 +39493,8 @@ databeam.de, 0 databiz.co, 1 databiz.ga, 1 datablender.nl, 1 -databridge360.com, 1 +databridge360.com, 0 databutlr.com, 1 -databutlr.net, 1 datacad.com, 1 datacalle.com, 1 datacandy.com, 0 @@ -39537,7 +39507,7 @@ datacenternews.asia, 1 datacenternews.ca, 1 datacenternews.co.nz, 1 datacenternews.us, 1 -datacenterunited.com, 1 +datacentrenews.ie, 1 datacentrenews.in, 1 datacentrenews.uk, 1 datacentresupport.com, 1 @@ -39555,7 +39525,7 @@ datacomm.com, 1 datacommissioner.gov.au, 0 datacomp.sk, 1 datacool.tk, 1 -datacorp.fr, 1 +datacorp.fr, 0 datadefendersforum.com, 1 datadoghq.com, 1 datadorf.de, 1 @@ -39594,7 +39564,6 @@ datamationgroup.com, 1 datamish.com, 1 datamotion.com, 1 datanaka.com, 1 -datanetusa.com, 1 datapiped.com, 1 dataprisma.com.br, 1 dataprivacyframework.gov, 1 @@ -39650,6 +39619,7 @@ datawarehouseinfo.com, 1 dataweeknl.nl, 1 datax-cloud.de, 1 dataxl.net, 1 +datayoyo.fr, 1 datazoo.asia, 1 datazoo.com, 1 date-conference.com, 1 @@ -39673,7 +39643,6 @@ datenretter.tk, 1 datenrettung360.at, 1 datenrettung360.de, 1 datenschutz-berlin.de, 1 -datenschutz-consult.de, 1 datenschutz-gruenwald.de, 1 datenschutz-individuell.de, 1 datenschutz-isny.de, 1 @@ -39718,7 +39687,6 @@ datn-x.de, 1 datnenhamiltongarden.com, 1 datorb.com, 1 datorhjalpen.link, 1 -datorhjalptaby.se, 1 datos-quimsaitw.es, 1 datosfreak.tk, 1 datovy-portal.cz, 1 @@ -39854,7 +39822,6 @@ davidlyness.com, 1 davidmanouchehri.com, 1 davidmessenger.co.uk, 1 davidmgarvin.com, 1 -davidmirandamd.com, 0 davidmlujan.com, 1 davidmyers.org, 1 davidn.cz, 1 @@ -39943,7 +39910,6 @@ dawnson.is, 1 dawnzine.com, 1 dawonmedax.com, 1 dawprogram.org, 1 -dawrimiz.com, 1 dawson-floridavilla.co.uk, 1 dawsoncountyga.gov, 1 dawsoncountyne.gov, 1 @@ -39964,6 +39930,7 @@ day, 1 day.marketing, 1 dayachts.com, 1 dayagainstdrm.org, 1 +dayasgames.com, 1 daybreaklearning.com.au, 1 daybuy.tw, 1 daycomtech.com, 1 @@ -39972,6 +39939,7 @@ daycubrem.com, 1 daydream.is, 1 daydream.team, 1 dayesh.tk, 1 +dayfloorcoveringinstallation.com, 1 daygametraining.com, 1 daylafit.com, 1 daylightpirates.org, 1 @@ -40036,6 +40004,7 @@ dbeilharz.de, 1 dbeilharz.eu, 1 dbentertainment.co.uk, 1 dbeta.co.uk, 1 +dbfopraga-pn.waw.pl, 0 dbgames.info, 1 dbhome.org, 1 dbhouse.tk, 1 @@ -40219,6 +40188,7 @@ de-ooyevaar.nl, 1 de-osopanda.com, 1 de-penaranda.be, 1 de-pot.net, 1 +de-sa.com.tr, 1 de-servers.de, 1 de-spil.be, 1 de-wikipedia.com, 1 @@ -40275,6 +40245,7 @@ dealerselectric.com, 1 dealerwriter.com, 1 dealflowpro.io, 1 dealha.com, 1 +dealhabibi.com, 1 dealinflatables.co.uk, 1 dealjumbo.com, 1 deallix.com, 1 @@ -40305,6 +40276,7 @@ dearbornheightsmi.gov, 1 dearburma.com, 1 dearfrannypodcast.com, 1 dearktiel.nl, 1 +dearpeople.eu, 1 deasserstadsloop.nl, 1 deasy-store.com, 1 death-notices.co.uk, 1 @@ -40327,8 +40299,6 @@ deautismespecialist.nl, 1 deavel.com, 1 deavel.fr, 1 deavel.net, 1 -deavita.fr, 1 -deavita.net, 1 deavon.tk, 1 debacker.biz, 1 debarkader34.tk, 1 @@ -40355,6 +40325,7 @@ debeer.tech, 1 debelareabogados.es, 0 debelbaum.com, 1 debelicd.tk, 1 +deberranger.com, 1 debesiukas.lt, 1 debewaker.tk, 1 debian-hell.org, 1 @@ -40443,6 +40414,7 @@ decisivetactics.com, 1 deciso.eu, 1 decisora.com, 1 decizzy.com, 1 +deckconnect.me, 1 deckerammo.com, 1 deckerville-mi.gov, 1 deckfix.co.nz, 1 @@ -40451,6 +40423,7 @@ deckshop.pro, 1 declarando.es, 1 declaration250.gov, 1 declarativ.ga, 1 +declarpro.fr, 1 declivitas.com, 1 declutteringmymess.com, 1 deco.tax, 1 @@ -40458,7 +40431,9 @@ decoating.pl, 1 decock-usedcars.be, 1 decode.ga, 1 decodeanddestroy.com, 1 +decodeit.nz, 1 decoder.eu.org, 1 +decodiverse.com, 1 decombejean.fr, 1 decompression.tk, 1 decompressneuroma.com, 1 @@ -40494,7 +40469,6 @@ decotrend.ro, 1 decoyoctopus.tk, 1 decrousaz-ceramique.ch, 0 decrypt.co, 1 -decrypto.net, 1 decs.es, 1 decstasy.de, 1 decsys.work, 1 @@ -40550,7 +40524,6 @@ deepgrade.in, 1 deepharbor.vc, 1 deephill.com, 1 deephue.studio, 1 -deepid.com, 1 deepinsight.io, 0 deepl.com, 1 deepmountains.tk, 1 @@ -40586,6 +40559,7 @@ defcon.org, 1 defcon.social, 1 defcongame.tk, 1 defectivebydesign.org, 1 +defectradar.com, 1 defeestboek.nl, 1 defeestridders.tk, 1 defelo.de, 1 @@ -40670,7 +40644,6 @@ degreeducation.tk, 1 degreeverify.com, 1 degreeverify.net, 1 degreeverify.org, 1 -degressif.com, 1 degroetenvanrosaline.nl, 1 degrootenslot.nl, 0 degroupnews.com, 1 @@ -40709,7 +40682,6 @@ deinsparen24.de, 1 deinupdate.de, 1 deionized.ga, 1 deitec-global.com, 1 -deitte.com, 1 deitti.net, 1 deja-lu.de, 1 dejandayoff.com, 1 @@ -40733,7 +40705,6 @@ dekas.link, 1 dekasegi-kansai.com, 1 dekbedden.nl, 1 dekel.co.il, 1 -dekesharon.com, 1 dekeurslagers.nl, 1 dekhanyalcalde.com, 1 dekinai.moe, 1 @@ -40790,7 +40761,6 @@ delemont.ch, 1 delete.cf, 1 deletebin.com, 1 deletebin.org, 1 -deletecat.com, 1 delfi.ee, 1 delfi.lt, 1 delfi.net, 1 @@ -40927,7 +40897,6 @@ delyfrut.cl, 1 delzottolink.com, 1 demaison.pro, 1 demakkelijkevegan.nl, 1 -demandcaster.com, 1 demander.tk, 1 demandmatrix.com, 1 demannen.tk, 1 @@ -41031,7 +41000,6 @@ denboschtimemachine.eu, 1 denboschtimemachine.nl, 1 dencel.lv, 1 denchik.tk, 1 -dencore.eu, 1 dendi.tk, 1 dendibanget.tk, 1 dendionigi.com, 1 @@ -41083,6 +41051,7 @@ denizkutan.com, 0 denizlicilingir.org, 1 denizlihaber.tk, 1 denizlihaberleri.tk, 1 +denizlihaliyikama.net, 1 denizlisohbet.tk, 1 denizuydur.nl, 1 denk-it.be, 0 @@ -41100,7 +41069,6 @@ denningny.gov, 1 dennino.gr, 1 dennis-carpenter.com, 1 dennis.reisen, 1 -dennis50jaar.nl, 1 dennisang.com, 1 denniscsl.com, 1 dennisdgr.ddns.net, 1 @@ -41288,8 +41256,6 @@ depuratore.it, 1 deqa-vet.de, 1 der-bank-blog.de, 1 der-beste-schumpeter-vortrag.de, 1 -der-elite.blog, 1 -der-gardinenmann.de, 1 der-niedergelassene-arzt.de, 1 der-rohrstock.club, 1 der-umzugsprofi.com, 1 @@ -41303,7 +41269,6 @@ deratisation.paris, 1 deratisationidf.com, 1 deratisationparis-75.com, 1 derattizzare.it, 1 -derattizzazione.name, 1 derattizzazioni.biz, 1 derattizzazioni.it, 1 derattizzazioni.milano.it, 1 @@ -41376,6 +41341,7 @@ derpy.pp.ua, 1 derpynerd.xyz, 1 derre.fr, 1 derreichesack.com, 1 +derrickvoice.io, 1 derricofinancialservices.com, 0 derrigimlaghtokylemoregreenway.ie, 1 derriteice.com, 1 @@ -41405,6 +41371,7 @@ desarrollosintecsa.com, 1 descargapormega.ml, 1 descobrim.com, 1 desconfiats.tk, 1 +desconteira.com.br, 1 descopera.ro, 1 descubre.ml, 1 descuentomi.es, 1 @@ -41442,6 +41409,7 @@ deshevle-net.com, 1 deshobi.cloud, 1 desiderantes.tk, 1 desideriushogeschool.be, 1 +design-dein-ding.ch, 1 design-n-art.tk, 1 design-netzwerk.eu, 1 design-production.jp, 1 @@ -41554,6 +41522,7 @@ dessinbtp.com, 1 dessinemoilademocratie.ch, 0 desstrade.com, 1 dest-gottskar-nidingen.se, 1 +destan.bg, 1 destcyr.com, 1 destech.nl, 1 desteconsilium.be, 1 @@ -41586,11 +41555,11 @@ destruction-frelon-asiatique.com, 1 destruction-guepes.com, 1 destructive-revolution.tk, 1 destructoradepapel.com.es, 1 +destruye.es, 1 destudio.org.ua, 1 destyntek.com, 1 desu.ne.jp, 1 desuchan.org, 1 -desucla.com, 1 desvan.tk, 1 deswaffelaars.tk, 1 desy.tk, 1 @@ -41712,9 +41681,11 @@ devalbert.com, 1 devalkincentives.nl, 1 devalps.eu, 1 devanstavern.tk, 1 +devarena.pp.ua, 1 devastacion.tk, 1 devb.nl, 1 devbay.cc, 1 +devcarollo.com, 1 devcf.com, 1 devcftc.gov, 1 devchuli.ml, 1 @@ -41842,6 +41813,7 @@ devrekarti.com, 1 devries.frl, 1 devries.one, 1 devrijejansenist.nl, 1 +devrijheidameland.nl, 1 devs-env.com, 1 devs-from.asia, 1 devsectools.com, 1 @@ -41932,6 +41904,7 @@ dffgpro.de, 1 dfg.re, 1 dfiik.com, 1 dfilip.icu, 1 +dfkp.de, 1 dfm.ae, 0 dfmn.berlin, 1 dfmvf.org, 1 @@ -42008,6 +41981,7 @@ dgries.de, 1 dgrj.com.br, 1 dgroups.org, 1 dgschell.com, 1 +dgst.cloud, 1 dgt-portal.de, 1 dgtl.hosting, 1 dgtl.tools, 1 @@ -42045,7 +42019,6 @@ dhit.pl, 1 dhl-smart.ch, 1 dhlcotizadorexpo-qa.azurewebsites.net, 1 dhlinux.org, 1 -dhlkh.com, 1 dhlparcel.nl, 1 dhome.at, 1 dhrupad.tk, 1 @@ -42108,6 +42081,7 @@ dialogportal.com, 1 dialogue.co, 1 dialoguecorp.com, 1 dialoguecorp.eu, 1 +dialox.ai, 1 dialradio24.tk, 1 dialybiendong.tk, 1 diamant.family, 1 @@ -42163,7 +42137,7 @@ diansung.com, 1 diaocan.com, 1 diaoyu8.com, 1 diapazon.kz, 1 -diapuls.ru, 1 +diapuls.ru, 0 diare-na-miru.cz, 1 diario-egipto.com, 1 diariodearaxa.com.br, 1 @@ -42198,7 +42172,6 @@ diccionarioabierto.com, 1 diccionariodedudas.com, 1 diccionarioperu.com, 1 diccionarqui.com, 1 -dice.tokyo, 1 dicelab-rhul.org, 1 dicelab.co.uk, 1 dicemer.com, 1 @@ -42271,7 +42244,6 @@ didiwinata.com, 1 didiwinata.my.id, 1 didsomeoneclone.me, 1 didtrumpopengovernmentyet.com, 1 -didtweb.com, 1 die-besten-weisheiten.de, 1 die-borts.ch, 1 die-cms-manufaktur.de, 1 @@ -42325,6 +42297,7 @@ diegotoledo.eu, 1 diegotoledo.it, 1 diegovisual.tk, 1 diehumanisten.de, 1 +diekinvest.nl, 1 diekleinekartenfabrik.de, 1 diekperaiwseis.gr, 1 dielinke-igb.de, 1 @@ -42351,8 +42324,6 @@ dierenwiki.nl, 1 dieschnuckelchen.myasustor.com, 1 diesdasananas.spdns.de, 1 dieselanimals.lt, 1 -dieselfiltersonline.com, 0 -diesellange.com.ar, 1 dieselndust.com, 1 dieselor.bg, 1 dieselor.com, 1 @@ -42363,7 +42334,6 @@ diesse.nl, 0 dieste.com, 1 dieta-figura.tk, 1 dietandexercises.tk, 1 -dietanic.co, 1 dietaryguidelines.gov, 1 dietbrand.eu, 1 dieter.one, 1 @@ -42396,7 +42366,7 @@ differentgirleveryday.ml, 1 differenziare.it, 1 difficulty.ga, 1 diffnow.com, 1 -diflora.it, 1 +diflora.it, 0 diflucangeneric.ml, 1 diflucanonline.tk, 1 diflucanpill.ga, 1 @@ -42461,6 +42431,7 @@ digimortals.nl, 1 digino.jp, 1 digino.us, 1 digino.xyz, 1 +diginow.in, 1 digionline.de, 1 digiparse.com, 1 digipartindex.ch, 1 @@ -42523,7 +42494,6 @@ digitalbox.jp, 0 digitalbridge.com, 1 digitalbridge.com.au, 1 digitalbuero.eu, 1 -digitalbuyer.com, 1 digitalcanvas.com.br, 1 digitalcarbide.com, 1 digitalcash.cf, 1 @@ -42534,6 +42504,7 @@ digitalchefs.nl, 1 digitalchurch.ng, 1 digitalcircusmerch.com, 0 digitalcitizens.uk, 1 +digitalcodes.info, 1 digitalcoffeepodcast.com, 1 digitalcolony.com, 1 digitalcolposcopy.com, 1 @@ -42550,13 +42521,11 @@ digitaldeli.org, 1 digitaldeli.tv, 1 digitaldeli.us, 1 digitaldeliarchive.com, 1 -digitaldem.it, 1 digitaldesign.ga, 1 digitaldesk.net, 1 digitaldisaster.tk, 1 digitaldruck.info, 1 digitale-afvalscheiding.nl, 0 -digitale-ausleihe.de, 1 digitale-bibliothek.tk, 1 digitale-gesellschaft.ch, 1 digitale-oekonomie.ch, 1 @@ -42608,6 +42577,7 @@ digitalmaine.com, 1 digitalmanager.guru, 1 digitalmaniac.co.uk, 1 digitalmarketingagency-consultant.com, 1 +digitalmarketingfirst.co.uk, 1 digitalmarketingnetic.com, 1 digitalmint.io, 1 digitalmove.co.uk, 1 @@ -42738,6 +42708,7 @@ dillonm.io, 1 dillynbarber.com, 0 dilmahtea.me, 1 dilmarames.com, 0 +dilolabs.fr, 1 dimagrimentoincorso.it, 1 dimamergel.com, 1 dimanss47.net, 1 @@ -42754,6 +42725,7 @@ dimesanmedical.com, 1 dimesitegusto.com, 1 dimeven.tk, 1 dimez.ru, 1 +dimfin.ru, 1 dimiro.co.tz, 1 dimism.eu, 1 dimitri-davies.com, 1 @@ -42827,7 +42799,7 @@ dinos-mag.tk, 1 dinotv.at, 1 dintrafic.net, 1 diobrasperu.com, 1 -diocesedeosorio.org, 1 +diocesedeosorio.org, 0 diodo.me, 1 dioesfoto.com, 1 diogbatech.tk, 1 @@ -42879,12 +42851,11 @@ dirdur.cf, 1 direc-tory.tk, 1 direct-aesthetics.com, 1 direct-sel.com, 1 -direct.cz, 0 +direct.cz, 1 direct2trade.co.nz, 1 direct365.es, 1 directaccident.co.uk, 1 directadmin.com, 1 -directairlineflights.com, 1 directautoverhuur.com, 1 directb2b.ca, 1 directcouriers.com.au, 1 @@ -42896,6 +42867,7 @@ direction.lv, 1 directions.ee, 1 directions.fi, 1 directions.lt, 1 +directions.tools, 1 directlendingsolutions.com, 1 directlook.tk, 1 directly.ga, 1 @@ -42941,7 +42913,6 @@ dirk-weise.de, 1 dirkdavid.org, 1 dirkdebacker.be, 1 dirki.tk, 1 -dirkjonker.nl, 1 dirkkok.nl, 1 dirko.net, 0 dirksencenter.org, 1 @@ -43030,6 +43001,7 @@ discordsworld.tk, 1 discotek.club, 1 discotheque.tk, 1 discountduuka.com, 1 +discounted.tours, 1 discountforelectronics.tk, 1 discounto.de, 1 discountpark.fr, 1 @@ -43056,7 +43028,6 @@ discoverkeesler.marketing, 1 discoverlutruwita.com, 1 discoverradiance.com, 1 discoversnoop.com, 1 -discoverthehawkesbury.com.au, 1 discoverthreejs.com, 1 discoverucg.co.uk, 1 discoverx.com, 1 @@ -43176,19 +43147,16 @@ diskuze-seznam.cz, 1 diskuzeseznam.cz, 1 dislepsia.tk, 1 dismail.de, 1 -dismar.mx, 1 dismed.fr, 1 disneywallpapers.tk, 1 disobey.net, 1 disoluto.tk, 1 disorderboutique.com, 1 -disordersport.com, 1 disostruzioni.it, 1 disougstroy.com.ua, 1 disparada.com.br, 1 dispartilaw.com, 1 dispatched.tk, 1 -displaycalibration.de, 1 displaynote.com, 1 displayrd.com, 1 disposable.link, 1 @@ -43209,7 +43177,6 @@ distancelove.cf, 1 distancelove.ml, 1 distancelove.tk, 1 distancionno.com, 1 -distant.land, 1 distekinc.com, 0 distelbentelo.nl, 1 distelsdetails.com, 1 @@ -43301,7 +43268,7 @@ diverse-cuts.com, 0 diverse.systems, 1 diversificarte.com, 1 diversify.cf, 1 -diversify.com, 1 +diversify.com, 0 diversify.ga, 1 diversity-otherwise.tk, 1 diversityflags.com.au, 1 @@ -43309,6 +43276,7 @@ diversityflags.nz, 1 diversitywatch.co.nz, 1 diversovariable.tk, 1 diversual.com, 1 +divert.cloud, 1 divertidores.tk, 1 diverzus.nl, 1 divestos.org, 1 @@ -43329,7 +43297,6 @@ divinedecay.tk, 1 divinefeminineyoga.com, 1 divinemercyparishvld.com, 1 divinemercyparishvlds.com, 1 -divinepathretreat.com, 1 divineprovidenceorphanage.org, 1 divinerooms.com, 1 divinho.com.br, 1 @@ -43346,7 +43313,6 @@ divizja.tk, 1 divjak.at, 1 divo-remont.tk, 1 divorce.com, 1 -divorceattorneyshouston.com, 1 divorcefiller.com, 1 divorceformsfiller.com, 1 divorcelawyer365.com, 1 @@ -43358,7 +43324,6 @@ divviup.org, 1 divvy.tk, 1 divyahindi.com, 1 diw-bau.cloud, 1 -diwan.ir, 1 dixa.tech, 1 dixeo.fr, 1 dixibox.com, 1 @@ -43442,6 +43407,7 @@ djazair.ml, 1 djazair.tk, 1 djazim.tk, 1 djbardhi.tk, 1 +djbass.com.se, 1 djbell.tk, 1 djbessi.tk, 1 djbobbytables.com, 1 @@ -43492,6 +43458,7 @@ djhypnoticstate.tk, 1 djichtus.tk, 1 djieno.com, 1 djinstinct.tk, 1 +djipanov.com, 1 djjab.com, 1 djjacs.tk, 1 djjonimix.tk, 1 @@ -43567,7 +43534,7 @@ djsp.it, 1 djsp.uk, 1 djsp.work, 1 djswebserver.com, 1 -djt-vom-chausseehaus.de, 1 +djt-vom-chausseehaus.de, 0 djtavo.tk, 1 djthibodeau.com, 1 djtiago.tk, 1 @@ -43598,7 +43565,6 @@ dkcomputers.com.au, 1 dkdigital.tk, 1 dkds.us, 1 dkec2.space, 1 -dken.guru, 1 dkengineeringwork.com, 1 dkern.eu, 1 dkern.net, 1 @@ -43629,6 +43595,8 @@ dkwedding.gr, 1 dl-protect.tk, 1 dl.google.com, 1 dl444.net, 1 +dl5dt.de, 1 +dl5dt.net, 1 dlabs.codes, 1 dlaces.it, 1 dlagos.com, 1 @@ -43751,7 +43719,6 @@ dmi.es, 1 dmi.gov.lb, 1 dmia.org.au, 1 dmiapis.id, 1 -dmiaviation.com, 1 dmilb.org, 1 dmineiros.com.br, 1 dmitaxapp.ca, 1 @@ -43761,6 +43728,7 @@ dmitrykataev.ru, 1 dmitrysnotes.ru, 1 dmitrysyrov.com, 1 dmix.ca, 1 +dmkthinks.org, 1 dmkuchnie.pl, 0 dmlaser.nl, 1 dmlive.wiki, 1 @@ -43797,14 +43765,13 @@ dn9b1f9o30q82.cloudfront.net, 1 dna-agency.it, 1 dna-technology.ua, 1 dna.li, 0 -dnadesigngroup.com, 1 dnadk.com, 1 dnaka91.rocks, 1 dnalounge.com, 1 dnapagamentos.com.br, 1 dnapizza.com, 1 dnash.tk, 1 -dnatechnology.io, 1 +dnatechnology.io, 0 dnb.co.in, 1 dnb.no, 1 dnb.se, 1 @@ -43835,7 +43802,6 @@ dnbvietnam.com, 1 dnc.org.nz, 1 dndblog.tk, 1 dnddobbelstenen.nl, 1 -dndesturia.uk, 1 dndtools.net, 1 dnel.me, 1 dnepr-news.ru, 1 @@ -43984,6 +43950,7 @@ dockstore.org, 1 dockysearch.com, 1 doclassworks.com, 1 docline.gov, 1 +docloq.com, 1 doclures.com, 1 docmode.org, 1 docogo.ga, 1 @@ -44010,7 +43977,6 @@ docteurjacquel.fr, 1 docteurqui.fr, 0 doctoblog.fr, 1 doctorapuestas.pe, 1 -doctorapuestasargentina.com, 1 doctorbini.com, 1 doctorcalefon.com, 1 doctordabbah.com, 1 @@ -44031,7 +43997,7 @@ doctorpup.com, 1 doctorradio.tk, 1 doctorrayaneh.com, 1 doctorsarfarazdo.ga, 1 -doctorsatdoor.com, 1 +doctorsatdoor.com, 0 doctorshealthfund.com.au, 1 doctorsinternet.com, 1 doctorswithoutborders.org, 1 @@ -44072,6 +44038,7 @@ docusign.jp, 0 docusign.mx, 0 docusign.nl, 0 docutayho.com, 1 +docvox.com.br, 1 docxtemplater.com, 1 doczlo.tk, 1 doda.space, 1 @@ -44093,6 +44060,7 @@ dodi-repacks.site, 1 dodiedods.fr, 1 dodikod.tk, 1 dodolle.co.uk, 1 +dodopizza.ru, 1 dodotool.com, 1 dodotool.ru, 1 doedelzakken-jsh.tk, 1 @@ -44121,7 +44089,7 @@ dofus-aide.tk, 1 dofus.market, 1 dog-likeeyes.tk, 1 dog-sounds.com, 0 -dog.systems, 0 +dog.systems, 1 doga-osusume.jp, 1 doga.tk, 1 dogadostuambalaj.com, 1 @@ -44187,7 +44155,6 @@ doist.com, 1 doit-intl.com, 1 doit.com, 1 doitauto.de, 1 -doj.gov.in, 1 doja-cat.ru, 1 dojah.io, 1 dojifish.space, 1 @@ -44266,7 +44233,6 @@ dolo.tk, 1 dolomiasdearagon.com, 1 dolomititour.com, 1 dolonki.beauty, 1 -dolorhunter.com, 1 dolorism.com, 1 dolph.de, 1 dolphbit.de, 1 @@ -44327,6 +44293,7 @@ domains.lt, 1 domainscope.com, 1 domainsearchindia.com, 1 domainsecurityinfo.com, 1 +domainsecurityscanner.com, 1 domainservice.cf, 1 domainsetup.email, 1 domainsilk.com, 1 @@ -44367,6 +44334,7 @@ domian.cz, 1 dominanta-law.com, 1 dominationgame.co.uk, 1 dominctheroofguy.com, 1 +domindev.com, 1 dominguezchannelclaims.com, 1 dominicana-lux.cf, 1 dominicandfelixroco.tk, 1 @@ -44461,7 +44429,6 @@ domythesis.net, 1 domyzitrka.cz, 1 domznak.ru, 1 don-news.tk, 1 -don-zalmrol.be, 1 dona.to, 0 donacarlota.net.br, 1 donacije.rs, 1 @@ -44470,7 +44437,6 @@ donalblaney.cf, 1 donalblaney.ga, 1 donalblaney.gq, 1 donaldduck.nl, 1 -donaldrussell.com, 1 donaldtrump.ga, 1 donaldwarner.com, 1 donama.co, 1 @@ -44558,6 +44524,7 @@ dont.watch, 1 dontaerayford.co, 0 dontarriva.org.uk, 1 dontasktoask.com, 1 +dontbeevil.com, 1 dontbreakme.com, 1 dontbubble.me, 1 dontcageus.org, 1 @@ -44591,7 +44558,7 @@ dontwastethewood.com, 1 donumanimo.pl, 1 donutchurroworld.com, 1 donutcompany.co.jp, 1 -donutdip.com, 1 +donutdip.com, 0 donutprincessla.com, 1 donvine.com, 1 donwana.com, 1 @@ -44636,6 +44603,7 @@ doorloop.com, 1 doornmore.com, 1 doors-and-windows.tk, 1 doorservice.ml, 1 +doorslite.ru, 1 doorsystemsweden.se, 1 doortodoor.ml, 1 doorzy.ca, 1 @@ -44701,6 +44669,7 @@ dorpsoverlegboskoop.nl, 1 dorpsparade.tk, 1 dorquelle.com, 1 dorrtownshipmi.gov, 1 +dorsett-consulting.com, 1 dorth.nl, 1 dortmund.de, 1 dortmund.directory, 1 @@ -44769,7 +44738,6 @@ dotheevolution.tk, 1 dothegangnamstyle.tk, 1 dotjesper.com, 1 dotjs.party, 1 -dotker.com, 1 dotkniseandroida.cz, 1 dotkod.pl, 1 dotlab.net, 1 @@ -44809,13 +44777,10 @@ dotzauer-stb.de, 1 douai.me, 1 douari.info, 1 douari.jp, 1 -douari.net, 1 -douari.xxx, 1 douban.city, 1 double20.gg, 1 doublearm.in, 1 doublebass-solo.com, 1 -doublebassworkshop.com, 1 doubled.ml, 1 doubledees.africa, 1 doubledees.co.ke, 1 @@ -44866,7 +44831,6 @@ doujinrepublic.com, 1 doujinshi.info, 1 doukhobor.org, 1 dourowineselection.pt, 1 -doutorapostas.pt, 1 douyin.com, 1 douyinec.com, 1 douyinmusicpromotion.com, 1 @@ -44904,7 +44868,6 @@ downalarm.cz, 1 downalarm.sk, 1 downandouts.tk, 1 downarea.com, 1 -downduvet.co.uk, 1 downer.email, 1 downer.info, 1 downestan.ga, 1 @@ -44973,7 +44936,6 @@ doyoucheck.com, 0 doyoulyft.com, 1 doypacky.cz, 1 doze-cloud.tech, 1 -dozen-donuts.com, 1 dozor.ga, 1 dozor.gq, 1 dozor.tk, 1 @@ -44997,9 +44959,8 @@ dpd.com.pl, 1 dpecuador.com, 1 dpereira.net, 1 dperkins.org, 1 -dperson.net, 1 dpeter.me, 1 -dpg.no, 1 +dpg.no, 0 dphipartner.com, 1 dpid.org, 1 dpim.org.my, 1 @@ -45169,6 +45130,7 @@ drapetra.com.br, 1 drardiving.com, 1 drardivingcenter.com, 1 dras.hu, 1 +drashna.net, 1 drasocalzado.com, 1 drasoclothes.com, 1 drastic-ds.com, 1 @@ -45210,9 +45172,9 @@ drcbxlpundw8t.cloudfront.net, 1 drchrislivingston.com, 1 drchrono.com, 0 drclark.pro, 1 +drclear.co.uk, 1 drclub.tk, 1 drcommodore.it, 1 -drcorderocirujanoplastico.com, 1 drcroof.com, 1 drdach.pl, 1 drdamirplasticsurgeon.com, 1 @@ -45255,7 +45217,6 @@ dreamflux.ai, 1 dreamflux.xyz, 1 dreamforcetv.pro, 1 dreamhostremixer.com, 1 -dreamhotels.com, 1 dreamimd.com, 0 dreaminds.de, 1 dreaminformatique.tk, 1 @@ -45270,6 +45231,7 @@ dreamlinks.tk, 1 dreamlux.cz, 1 dreamlux.sk, 1 dreammagnets.nl, 1 +dreammeaningnow.com, 1 dreamms.gg, 1 dreamofice.cn, 1 dreamoza.com, 1 @@ -45291,7 +45253,6 @@ dreamswelcome.com, 1 dreamsxxl.com, 1 dreamsystems.tk, 1 dreamtapestry.ga, 1 -dreamweavers.live, 1 dreamworldstudio.tk, 1 dreamy-flat-lyon.fr, 1 dreamytheatre.com, 1 @@ -45369,6 +45330,7 @@ drhiteshpatel.in, 1 drhogarth.co.uk, 1 drhouserepairs.com, 1 drianpublishing.tk, 1 +dribbble.com, 1 drica.tk, 1 dricka.tk, 1 driesjtuver.nl, 1 @@ -45412,6 +45374,8 @@ dripship.club, 1 dripshop.live, 1 drison.com, 1 drissner.me, 1 +drissner.media, 1 +drititleagent.com, 1 driv.io, 1 drive.google.com, 1 driveandpark.de, 1 @@ -45480,6 +45444,7 @@ drks.de, 1 drksachsen.de, 1 drlandis.com, 1 drlarakiortho.com, 1 +drlc.com.au, 1 drleoplasticsurgery.com, 1 drlevi.cf, 1 drlevi.ga, 1 @@ -45528,6 +45493,7 @@ dronebase.cf, 1 dronebl.org, 1 dronebox.nu, 1 dronedeploy.com, 1 +droneid.org, 1 droneland.nl, 1 droneops.ro, 1 dronepanorama.net, 1 @@ -45540,7 +45506,6 @@ dronesquadcoptersales.ga, 1 droneup.pl, 1 droneways.tech, 1 dronix.tk, 1 -dronografia.es, 0 droomhuis-in-zuid-holland-kopen.nl, 1 drop-zone.tk, 1 drop.com, 1 @@ -45572,7 +45537,6 @@ drowz.ee, 1 drozd.biz, 1 drozera.com, 1 drpalmer-training.com, 1 -drpancholi.com, 1 drpatyuen.com, 1 drpetervoigt.ddns.net, 1 drpetervoigt.de, 1 @@ -45610,7 +45574,6 @@ drtimothysteelnetwork.com, 1 drtimothysteelresults.com, 1 drtimothysteelscholarship.com.au, 1 drtimothysteelvideos.com, 1 -drtomson.ee, 1 drtragency.com, 1 drtsaiclinic.com, 1 drtti.io, 1 @@ -45645,9 +45608,8 @@ drummer.cf, 1 drummondframing.com, 1 drumnbass.tk, 1 drumscrib.com, 1 -drunkcalc.com, 1 +drunkcalc.com, 0 drunkendropkes.tk, 1 -drupal.org, 1 drupalfr.be, 1 drusantia.net, 1 drusillas.co.uk, 1 @@ -45657,7 +45619,6 @@ druznek.xyz, 1 druzya.store, 1 drv.gov.ua, 1 drvanessaphua.com, 1 -drvishnusubramani.com, 0 drvonschwarz.com, 1 drwang.group, 0 drweissbrot.com, 1 @@ -45679,7 +45640,7 @@ dryskin.ga, 1 dryskin.gq, 1 dryskin.ml, 1 dryskin.tk, 1 -dryusdan.space, 1 +drywall.com.co, 1 drywallresponse.gov, 1 dryzgov.tk, 1 drzhnn.com, 1 @@ -45727,6 +45688,7 @@ dsgvo-analyse.de, 1 dsgvo.name, 1 dsh.io, 1 dshield.org, 1 +dsigroup.com.tw, 1 dsimonitor.online, 1 dsiteam.in, 1 dsjbvba.be, 1 @@ -45799,7 +45761,7 @@ dtgmns.com, 1 dtguide.ga, 1 dths.dk, 1 dtinel.org, 1 -dtk-vom-chausseehaus.de, 1 +dtk-vom-chausseehaus.de, 0 dtleague.eu, 1 dtmbnl.com, 1 dtmbx.com, 1 @@ -45873,7 +45835,6 @@ duboisinvestissements.com, 1 dubolom.tk, 1 dubovi.ch, 1 dubrava.tk, 1 -dubreuilville.ca, 1 dubrovnik.tours, 1 dubrovnikfoodtours.com, 1 dubrovskiy.cf, 1 @@ -46026,6 +45987,7 @@ dundeeutility.tk, 1 dunedot.tk, 1 dunesadventure.net, 1 dunescorporation.tk, 1 +dunesharbourbeach.com.au, 1 dungbui.co, 0 dungbui.net, 1 dungchata.com, 1 @@ -46054,7 +46016,6 @@ duo.com, 1 duobus.nl, 1 duodeno.tk, 1 duoduocha.com, 0 -duoduodazhe.com, 1 duohao.xyz, 1 duolife.us, 1 duoluodeyu.com, 1 @@ -46079,6 +46040,7 @@ duquoinil.gov, 1 dura.si, 1 durabletravailler.tk, 1 duracell.com, 1 +duracfilm.cz, 1 durad.in.rs, 1 durad.xyz, 1 duraes.pt, 0 @@ -46121,14 +46083,13 @@ dusk.run, 1 duskraven.tk, 1 dusmomente.com, 1 dusnan.com, 1 -dusonchet-construction.ch, 1 +dusonchet-construction.ch, 0 dust.bio, 1 dust.tk, 1 dust4you.tk, 1 dustbox.tk, 1 dustinbrett.com, 1 dustindecker.com, 1 -dustinpurdy.com, 1 dustjacket.one, 1 dustman.tk, 1 dustpla.net, 1 @@ -46179,7 +46140,6 @@ dutt.ch, 1 dutton.uk, 1 duttonmt.gov, 1 dutyfreeperfumes.tk, 1 -duurzaamgww.nl, 1 duurzaamwonen.amsterdam, 1 duux.com, 1 duv.al, 1 @@ -46195,7 +46155,6 @@ duvalo.net, 1 duvalo.sk, 1 duvernay-asphalte.ca, 1 duvessa.tk, 1 -duwitmu.com, 1 duxbow.de, 1 duxbury-ma.gov, 1 duxi-s-feromonami.ga, 1 @@ -46356,7 +46315,7 @@ dynamicquantum.net, 1 dynamicroofingconcepts.com, 1 dynamicsandlearning.com, 1 dynamicsdays.info, 1 -dynamicservers.co.uk, 1 +dynamicservers.co.uk, 0 dynamicsnetwork.net, 1 dynamicsretailnotes.com, 1 dynamictesting.co.uk, 1 @@ -46373,10 +46332,10 @@ dynarex.com, 1 dynasoft.co.ke, 1 dynastic.co, 1 dynasty-warriors.net, 1 +dynastynetwork.com, 1 dynastyredzone.com, 1 dynatos-cloud.com, 1 dyndns.au, 1 -dyneco.io, 1 dynn.be, 0 dyno.com, 1 dynorphin.com, 1 @@ -46497,6 +46456,7 @@ dzyabchenko.com, 0 dzyszla.pl, 1 e-alink.com, 1 e-almott.com, 1 +e-altum.pl, 1 e-antikvar.tk, 1 e-bags.tk, 1 e-balloons.tk, 1 @@ -46520,6 +46480,7 @@ e-classroom.tk, 1 e-coduct.eu, 1 e-coexist.com, 1 e-colle.info, 1 +e-collectis.fr, 1 e-commerce.news, 1 e-copys.com, 1 e-coretvasa.cz, 1 @@ -46630,7 +46591,6 @@ e-sauna.tk, 1 e-scraper.com, 1 e-sell.tk, 1 e-sell.today, 1 -e-servicerms.com, 1 e-shobai.com, 1 e-shonai.com, 1 e-sisyu.com, 0 @@ -46653,6 +46613,7 @@ e-tech-solution.net, 1 e-technology.tk, 1 e-techsolution.com, 1 e-techsolutions.net, 1 +e-tek.io, 1 e-tires.tk, 1 e-top.uz, 1 e-traceur-france.fr, 1 @@ -46668,6 +46629,7 @@ e-vau.de, 0 e-verify.gov, 1 e-virtus.com, 1 e-visa.mn, 1 +e-vokzal.com, 1 e-vykladkaret.cz, 1 e-walks.tk, 1 e-wish.tk, 1 @@ -46682,13 +46644,14 @@ e.mail.ru, 1 e.wtf, 1 e02.cn, 1 e15r.co, 1 +e1981.com, 1 e1e0.net, 0 e27.co, 1 e2b.com.au, 1 e2ebrindes.com.br, 1 e2ee-meet.de, 1 e2epartners.org, 1 -e2essentialelements.com, 0 +e2essentialelements.com, 1 e2feed.com, 1 e2i.com.sg, 1 e2net.social, 1 @@ -46842,6 +46805,7 @@ earthpixz.com, 1 earthpoints.org, 1 earthquake.gov, 1 earthsalala.com, 1 +earthseed.cc, 1 earthshotprize.org, 1 earthsocialism.org, 1 earthsolidarity.org, 1 @@ -46859,7 +46823,6 @@ easiest-way.de, 1 easlerlaw.com, 1 east-front-miniatures.com, 0 east-line.su, 1 -east-westlogistics.com, 1 eastafricafeed.ga, 1 eastarapmetdistco.gov, 1 eastarm.net, 1 @@ -46870,6 +46833,7 @@ eastchesternyfd.gov, 1 eastcoastautoconcepts.com, 1 eastcoastcars.net, 0 eastcoastexports.tk, 1 +eastcoastpep.com, 1 eastcoasttours.com.au, 1 eastcornwallsrt.org.uk, 1 eastcottvets.co.uk, 1 @@ -46962,6 +46926,7 @@ easyescortwebsites.com, 1 easyeuicc.org, 1 easyfiles.ch, 1 easyfiles.gq, 1 +easyfilings.co.uk, 1 easyfloors.ae, 1 easyfoto.tk, 1 easygenerator.com, 1 @@ -47127,7 +47092,7 @@ ebenda.org, 1 ebenica.sk, 1 ebenvloedaanleggen.nl, 1 eberharter-steine.at, 1 -eberls.com, 1 +eberls.com, 0 eberspacher-rus.ru, 1 ebest.co.jp, 1 ebetbananom.tk, 1 @@ -47235,10 +47200,10 @@ eccologic.net, 1 eccouncil.org, 1 eccu.edu, 1 ecdn.cz, 1 -ecdpm.org, 1 ece-inc.net, 1 ecelembrou.ovh, 1 ecemella.com, 1 +ecemi-alu.com, 1 ecency.com, 1 ecetechsol.com, 1 ecetiner.com, 1 @@ -47254,7 +47219,6 @@ echidna.com.au, 1 echidnalock.com.au, 1 echinus.solutions, 1 echo-bms.com, 1 -echo-in.info, 1 echo-n.nz, 0 echo-online.de, 1 echoanalytics.com, 1 @@ -47264,7 +47228,6 @@ echodyne.com, 1 echoesbase.com, 1 echoeshq.com, 0 echoesin.com, 1 -echofoxtrot.co, 1 echoit.net, 1 echoit.net.au, 1 echoit.services, 1 @@ -47300,7 +47263,6 @@ eckel.co, 1 eckerl.org, 1 eckersondesign.com, 1 eckfordtownshipmi.gov, 1 -eckindustries.com, 1 eckler.ca, 1 eckotech.fr, 1 eckstein.tech, 1 @@ -47328,7 +47290,6 @@ eclixo.com, 1 ecmx.eu, 1 ecnetworker.com, 1 eco-derattizzazione.it, 1 -eco-gripfloor.com, 1 eco-nyashky.com.ua, 1 eco-price.ru, 1 eco-rally.cz, 1 @@ -47341,6 +47302,8 @@ eco69.com, 1 eco69.eu, 1 eco69.pl, 1 ecoacqua.net, 1 +ecoanirnalhealth.com, 1 +ecoanlmalhealth.com, 1 ecobalispa.com, 1 ecobiosaude.com.br, 1 ecobunker.co.uk, 1 @@ -47357,7 +47320,6 @@ ecodepur.co.ao, 1 ecodepur.fr, 1 ecodesign-labo.jp, 1 ecodesigns.nl, 1 -ecodrive.in.ua, 1 ecoelectricsandiego.com, 1 ecoelegance.com.au, 1 ecoeuropa.cf, 1 @@ -47417,6 +47379,7 @@ ecommercenews.com.au, 1 ecommercenews.in, 1 ecommercenews.uk, 1 ecommerceuropa.eu, 1 +ecomove.pt, 1 ecomovers.com, 1 ecompen.co.za, 1 ecomsight.com, 0 @@ -47426,12 +47389,12 @@ ecomweb.ro, 0 econativa.pt, 1 econcept.li, 1 econclubny.org, 1 -econews.pt, 1 econfia.cf, 1 econmarketingdigital.com, 1 economia.cl, 1 economias.pt, 1 economic-sanctions.com, 1 +economiciqhub.com, 1 economicnews.ga, 1 economics-colleges.com, 1 economie.gouv.fr, 1 @@ -47452,7 +47415,6 @@ ecopaint.pt, 1 ecopark.asia, 1 ecopath.org, 1 ecopiscines.fr, 1 -ecopond.co.nz, 1 ecopowerenginewash.com, 0 ecopoweroil.com, 1 ecorak.de, 1 @@ -47487,6 +47449,7 @@ ecoute.tv, 1 ecovadis.ltd, 1 ecoventfix.com, 1 ecowater.com, 1 +ecowatt.pt, 1 ecowoman-armenian.tk, 1 ecowoman-bengalian.tk, 1 ecowoman-indonezian.tk, 1 @@ -47494,7 +47457,6 @@ ecowoman-turkey.tk, 1 ecowoman-ukraine.tk, 1 ecozip.it, 1 ecozona.tk, 1 -ecpa-eg.com, 1 ecpic.gov, 1 ecpl.ru, 1 ecr-test-partnapp.azurewebsites.net, 1 @@ -47541,7 +47503,6 @@ ed.gov, 1 ed.gs, 1 ed.nl, 1 ed394jed.fr, 1 -eda-az.com, 1 eda-records.com, 1 eda.cooking, 0 eda.gov, 1 @@ -47626,7 +47587,6 @@ edgeinvestments.estate, 1 edgeless.pp.ua, 0 edgelogs.com, 1 edgemagazine.net, 1 -edgemasterspaint.com, 1 edgeofnoservers.com, 1 edgeservices.co.uk, 1 edgetalk.net, 1 @@ -47707,6 +47667,7 @@ edmundo.ro, 1 edmundy.tk, 1 edocr.com, 1 edok.com.br, 1 +edoo.pl, 1 edopomoga.gov.ua, 1 edoss.co.za, 0 edotplus.ch, 1 @@ -47753,6 +47714,7 @@ edubirdie.com, 1 edublognews.tk, 1 edubox.pt, 1 educ-aid.site, 1 +educa.cloud, 1 educabis.tk, 1 educacaopocos.com.br, 1 educacionnm.ml, 1 @@ -47800,7 +47762,6 @@ educheck.tech, 1 educourse.nl, 1 edudip-next.com, 1 edudip.com, 1 -edufever.com, 1 edufever.in, 0 eduflow.at, 1 edugeton.com, 1 @@ -47830,7 +47791,6 @@ edupay.co.at, 1 eduproject.tk, 1 eduproquality.tk, 1 eduqfix.com, 1 -eduradiadores.com.br, 1 eduroam.no, 1 eduroam.uy, 1 edusanjal.com, 1 @@ -47911,7 +47871,6 @@ eemcevn.com, 1 een-eenvoudige-test-voor-de-maximum-lengte-van-een-nederlandse.nl, 1 een.com, 1 eenfotowaard.nl, 1 -eenmailsturen.nl, 0 eentweevijf.be, 1 eenvxing.com, 1 eenzwolle.nl, 1 @@ -47961,7 +47920,6 @@ efesocollins.org, 1 efesocollins.org.nz, 1 efesoformayor.co.nz, 1 efesoformayor.nz, 1 -efesoformayor.org, 1 efesoformayor.org.nz, 1 eff.org, 1 effdocs.com, 1 @@ -48001,7 +47959,6 @@ eficsolar.com, 1 efiglobal.com, 1 efiledcsuperiorcourt.gov, 1 efinanceng.com, 1 -efirbet.com, 1 efirma.com, 1 eflorashop.ch, 1 eflorashop.com, 1 @@ -48025,7 +47982,6 @@ efre-bw.de, 1 efsalon.net.pe, 1 efsanesi.tk, 1 eft.boutique, 1 -eftcorp.biz, 1 eftelingcraft.net, 1 efterfest.tk, 1 eftotoekspertizbalikesir.com, 1 @@ -48101,7 +48057,6 @@ egliseclichy92.fr, 1 eglisedenantes.fr, 1 egly.se, 1 egm-sakura.com, 1 -egmbypga.com, 1 ego4u.com, 1 ego4u.de, 1 egoclan.tk, 1 @@ -48177,6 +48132,7 @@ ehne.de, 1 ehome.im, 1 ehometools.com, 1 ehorizon.jp, 1 +ehourapp.com, 1 ehpad-ariege.fr, 1 ehpsmt.gov, 1 ehr.bg, 1 @@ -48216,7 +48172,6 @@ eifach.top, 1 eifel-adventure.de, 1 eifel.website, 1 eifelstuebchen.de, 1 -eiffageconstruction.com, 1 eigenaardig.tk, 1 eigenbubi.de, 1 eigendeeg.eu, 1 @@ -48258,6 +48213,7 @@ einfach-fitz.at, 1 einfach-was-eigenes.com, 1 einfach-was-eigenes.de, 1 einfachkiss.at, 1 +einfachverbeamtet.de, 1 einfachwaseigenes.de, 1 einheizpreis.de, 1 einhorn.space, 1 @@ -48300,6 +48256,8 @@ eisneramperadvisory.com, 1 eit-solutions.com.au, 1 eit-web.de, 0 eitbtaldea.eus, 1 +eito.com.au, 1 +eitt.pl, 1 eivanec.com, 1 eivavolleyball.com, 1 eiyoushi-shigoto.com, 1 @@ -48347,6 +48305,7 @@ ekalisch.de, 1 ekamfoundationmumbai.org, 0 ekamus.tk, 1 ekatalendra.com, 1 +ekaterinagolubovich.exposed, 1 ekati.ru, 1 ekawaiishop.com, 1 ekb-avia.ru, 0 @@ -48368,6 +48327,7 @@ ekivita.eu, 1 ekklesia-web.com, 1 eklepka.com, 1 eklitzke.org, 1 +ekloz.org, 1 ekmanager.tk, 1 ekmo.cz, 1 eko69.pl, 1 @@ -48491,6 +48451,7 @@ elchanchoganador.com, 1 elcient.com, 1 elcigaro.bg, 1 elcin.tk, 1 +elcofrecolecciones.com, 1 elcom.au, 1 elcom.com.au, 1 elcom.net.au, 1 @@ -48511,7 +48472,6 @@ elcomtechnology.net, 1 elcomtv.com, 1 elcontadorsac.com, 1 elcontrol.tk, 1 -elcorbett.com, 1 elcosmos.tk, 1 elcosteno.tk, 1 elcozinante.com, 1 @@ -48623,6 +48583,7 @@ electroforum.tk, 1 electrofreakz.tk, 1 electrofusion.de, 1 electrogenic.co.uk, 1 +electroheatinduction.com.mx, 1 electrohelp.ga, 1 electroiq.com, 1 electrolandia.tk, 1 @@ -48652,9 +48613,9 @@ electronsweatshop.com, 1 electropromdq.com.ar, 1 electroscope.com.au, 1 electrosoftcloud.com, 0 +electrosoup.com, 1 electrostatics.com, 1 electrostore.com.ec, 1 -electrotounes.tn, 1 electroyclima.es, 1 electrozona.bg, 1 electrozone.bg, 1 @@ -48677,7 +48638,6 @@ elegantlatex.tk, 1 elegantly-clean.co.uk, 1 elegantseagulls.com, 0 eleganza.ga, 1 -eleicoes2018.com, 1 elejido.es, 1 elejordemarketingconsultancy.com, 1 elekner.tk, 1 @@ -48685,6 +48645,7 @@ elekta.com, 1 elektiriklidireksiyontamiri.com, 1 elektiriktasarruf.tk, 1 elektrac.cz, 1 +elektricketrhovisko.sk, 1 elektriker-frankfurt.eu, 1 elektriker-notdienst-zentrale.de, 1 elektrilevi.ee, 1 @@ -48722,7 +48683,6 @@ elektromicrosystems.pl, 1 elektromobil-zubehoer.de, 1 elektromosev.cz, 1 elektromotor.tk, 1 -elektronicka-servisni-knizka.cz, 1 elektronickakancelar.cz, 1 elektroniksigarasehri1.com, 1 elektronische-post.org, 1 @@ -48747,7 +48707,6 @@ elektrumdrive.com, 1 elektrumdrive.ee, 1 elektrumdrive.lt, 1 elektrumdrive.lv, 1 -elektrumgroup.com, 1 elektrumloterija.lv, 1 elektryczka.pl, 1 elelenin.cf, 1 @@ -48825,7 +48784,6 @@ elephpant.cz, 1 eleplant.fi, 1 elepover.com, 1 elesconditedelola.com, 1 -elestoque.org, 1 eletem.org, 1 eletminosegert.ro, 1 eletom.pl, 1 @@ -48850,7 +48808,7 @@ elevatewebdesigns.com, 1 elevationplumbingandheating.com, 1 elevator.ee, 1 elevatoraptitudetest.com, 1 -elevaweb.cl, 1 +elevaweb.cl, 0 elevelo.eu, 1 elevenbeta.tk, 1 elevenensemble.tk, 1 @@ -48926,6 +48884,7 @@ eligrey.com, 1 eliguli.com, 1 elijahbrown.tk, 1 elijahgrey.com, 1 +elijahtreefelling.com, 1 elikers.ml, 1 elimidrol.com, 1 eliminations.tk, 1 @@ -49086,6 +49045,7 @@ ellinkauppa.fi, 0 elliot.cat, 0 elliotadler.co, 0 elliotlewisms.com, 1 +elliotluque.com, 1 elliott-assist.com, 1 elliottallanhilsinger.com, 0 elliottbernstein.com, 1 @@ -49146,7 +49106,6 @@ elon.gov, 1 elona-wvw.de, 1 elonaspitze.de, 1 elonma.gov, 1 -elontime.de, 1 elorbe.com, 1 elorrieta.eus, 1 elosconstrutora.com.br, 1 @@ -49240,7 +49199,6 @@ elvcino.com, 0 elverdaderoamor.tk, 1 elvermann.de, 1 elvikom.co.uk, 1 -elvikom.pl, 1 elviraszabo.com, 1 elvis-atouchofgold.com, 1 elvis-presley.tk, 1 @@ -49250,13 +49208,13 @@ elvispresley.net, 1 elvisvrconnect.co.uk, 1 elvonet.hr, 1 elvorti.bg, 1 -elvorti.com, 1 elvtr.com, 1 elvy.nl, 1 elweronete.tk, 1 elwix.com, 1 elyazmusic.com, 1 elyland.net, 1 +elyonyireh.edu.co, 1 elysian-systems.com, 1 elysiandigital.co, 1 elysiria.fr, 1 @@ -49264,7 +49222,6 @@ elysium-team.tk, 1 elysium.coop, 1 elysiumware.com, 1 elyx70days.org, 1 -elz-ergotherapie.de, 1 em-biotek.cz, 0 em-racing.com, 1 em-racing.de, 1 @@ -49275,6 +49232,7 @@ emad7.tk, 1 emagazine.com, 1 emagicone.com, 1 emaging-productions.fr, 1 +emaging.fr, 1 emagrecerconsciente.com.br, 1 emaicopy.com.tw, 1 email-pipeline.xyz, 1 @@ -49286,7 +49244,6 @@ email2gallery.com, 1 emailable.com, 1 emailablev.com, 1 emailalaperformance.fr, 1 -emailassist.ai, 1 emailbusters.tk, 1 emailer.party, 1 emailexpress.ga, 1 @@ -49309,6 +49266,7 @@ emailthing.xyz, 1 emakicms.com, 1 emaks.tk, 1 emalm.com, 1 +emanaclinic.com, 1 emancipet.org, 1 emanol.co.uk, 1 emanuel-loos.eu, 1 @@ -49363,7 +49321,6 @@ embryooptions.com, 1 embutidoselpipi.com, 1 emby.cloud, 1 emcado.com, 1 -emccglobal.org, 1 emccr-ehtp.com, 1 emceemanic.tk, 1 emcentrix-com-site-mvc.azurewebsites.net, 1 @@ -49378,7 +49335,6 @@ emdep.com, 1 emdesigns.tk, 1 emdrtherapytoronto.com, 1 emdrupholm.dk, 1 -emdvcorasia.com, 1 emedpractice.com, 1 emeetattd.ddns.net, 1 emekegitimakademi.com, 1 @@ -49483,12 +49439,14 @@ emma-und-felix-heiraten.de, 1 emmababy420.com, 1 emmabeckettlifecoach.co.uk, 1 emmabolton.uk, 1 +emmad.net, 1 emmadreams.net, 1 emmaengel.de, 1 emmajayne.tk, 1 emmalegalnurse.com, 1 emmalevy.me, 1 emmaliddell.com, 0 +emmanuel-mx.com, 1 emmanuelle-et-julien.ch, 1 emmaowl.com, 1 emmastarr.net, 1 @@ -49519,6 +49477,7 @@ emoforum.tk, 1 emoji-meaning.org, 1 emoji-symbols.org, 1 emoji.build, 1 +emoji.bzh, 1 emoji.web.tr, 1 emoji.wf, 1 emojiace.com, 1 @@ -49637,7 +49596,6 @@ emq.io, 1 emrawi.org, 1 emreaydinfan.tk, 1 emrecicekmuhendislik.com, 1 -emresaglam.com, 1 emrider.es, 1 emrullahsahin.com, 1 ems.gov, 1 @@ -49658,14 +49616,12 @@ emtofis.com, 1 emtradingacademy.com, 1 emtreview.com, 1 emtunc.org, 1 -emu.land, 1 emulation-archive.org, 1 emulator.wtf, 1 emulatronic.tk, 1 emulefans.com, 1 emulovers.com, 1 emulsifier.ga, 1 -emunet.net, 1 emurom.net, 1 emuser.tk, 1 emusicuz.tk, 1 @@ -49689,6 +49645,7 @@ enaah.de, 1 enable-javascript.com, 1 enabling.ga, 1 enablingcommunities.com.au, 1 +enact-ai.com, 1 enactor.co, 1 enago.com, 1 enai.eu, 1 @@ -49720,6 +49677,7 @@ encinitastrainer.com, 1 encipher.me, 1 encirca.com, 0 encircleapp.com, 1 +enclavecairns.com.au, 1 encode.host, 1 encontra-me.org, 1 encontracarros.pt, 1 @@ -49735,6 +49693,7 @@ encredible.org, 0 encretplomb.ch, 0 encryp.ch, 1 encrypt.cf, 1 +encrypt.click, 1 encrypt.my.id, 1 encrypted.at, 1 encrypted.google.com, 1 @@ -49754,6 +49713,7 @@ encycarpedia.com, 1 end.tf, 1 endangeredwatch.com, 1 endavantstap9b.tk, 1 +endbeachpollution.sydney, 1 endbegins.tk, 1 endbox.email, 1 endcottagevets.co.uk, 1 @@ -49913,7 +49873,7 @@ energyreferral.link, 1 energysaveroregon.com, 1 energysite.tk, 1 energystar.gov, 1 -energysystems.com, 1 +energysystems.com, 0 energytrust.tk, 1 energyuse.net, 1 energywisdom.tk, 1 @@ -49964,7 +49924,6 @@ enganchesevilla.es, 1 engardelinux.org, 1 engaugetools.com, 1 engbers.com, 1 -engehall.com, 1 engelandautohuur.nl, 1 engeldasein.at, 1 engeldasein.com, 1 @@ -50008,9 +49967,7 @@ engl-customshop.net, 1 engl-distribution.com, 1 engl-distribution.de, 1 engl-distribution.net, 1 -engl-server.de, 0 engl-systems.de, 1 -englandbeach.com, 1 englandgenealogy.co.uk, 1 englandlearn.com, 0 englandschool.tk, 1 @@ -50019,7 +49976,6 @@ english-community.com, 1 english-to-russian-translation.tk, 1 english-training.tk, 1 english.events, 1 -english4oman.com, 1 englishbulgaria.net, 1 englishcast.com.br, 1 englishclassworksheets.com, 1 @@ -50170,7 +50126,7 @@ enshin-karate.tk, 1 enshrouded.com, 1 ensightpharma.com, 1 ensilencio.tk, 1 -ensimini.com, 1 +ensimini.com, 0 ensingpodotherapie.nl, 1 enskat.de, 1 enslavedplantationclub.com, 1 @@ -50179,6 +50135,7 @@ ensma.fr, 1 ensobrands.com, 1 ensons.de, 1 ensonyan.com, 1 +enspiredwellness.com, 1 enstavideo.com, 0 ensured.com, 1 ensured.nl, 1 @@ -50241,7 +50198,6 @@ entrepreneurialFree Software.org, 1 entrepreneurnight.com, 1 entrepreneurresources.com, 1 entreprise-innovante.fr, 1 -entreprise-punaise-de-lit.com, 1 entreprise-ravalement-facade.paris, 1 entreprises.gouv.fr, 1 entreprisesavendre.quebec, 0 @@ -50407,6 +50363,7 @@ eosagonline.ru, 1 eosguru.ru, 1 eosol.services, 1 eostar.ro, 1 +eov.org.tr, 1 eov2.com, 1 ep-cortex.com, 1 ep-plus.jp, 1 @@ -50487,6 +50444,7 @@ epiqcourtreportingblog.com, 1 episkevh-plaketas.gr, 1 episode.tk, 1 episource.com, 0 +epistalux.com, 1 epistas.com, 1 epistas.de, 1 epistemes.org, 1 @@ -50509,7 +50467,6 @@ epnuffic.nl, 0 epobocka.com, 1 epoch-film.ml, 1 epochcg.pt, 1 -epochstream.com, 1 epolitiker.com, 1 epos.az, 1 eposmidlands.co.uk, 1 @@ -50537,7 +50494,7 @@ epropertyplus.com, 1 eprosto.cf, 1 eprzybornik.pl, 1 epsamsg.com, 1 -epsilogix.com, 1 +epsilogix.com, 0 epsilon.photography, 1 epsilontel.com, 1 epsmil.it, 1 @@ -50552,7 +50509,6 @@ epubreader.net, 1 epubreader.org, 1 epvd.tk, 1 epweb.pro, 1 -eqalert.ru, 1 eqassociates.com, 1 eqbal.org, 1 eqibank.com, 1 @@ -50606,7 +50562,6 @@ equisecu.com, 1 equitable-igwm.com, 1 equitablehealthycities.org, 1 equitazionepertutti.it, 1 -equiton.com, 1 equitybank.com, 1 equityelevate.com, 1 equityloupe.ru, 1 @@ -50655,7 +50610,6 @@ erdewiege.moe, 1 erdineks.com, 1 ereader.uno, 1 erebuildings.com, 1 -erectiepillenwinkel.nl, 1 erector.cf, 1 erector.tk, 1 eredmenye.xyz, 1 @@ -50730,6 +50684,7 @@ ericsaadeonline.tk, 1 ericsilva.me, 1 ericsilva.org, 1 ericspeidel.de, 1 +ericterminal.com, 1 ericvantijn.tk, 1 ericwie.se, 0 eridan.me, 1 @@ -50849,6 +50804,7 @@ ersei.net, 1 erseni.net, 1 ershiwo.com, 1 ersinbiltekin.tk, 1 +ersolar.com.au, 1 erspro.net, 1 erste-hilfe-sbh.de, 1 erste-hyp.de, 1 @@ -50883,7 +50839,7 @@ erwerbslosenforum.de, 1 erwin.saarland, 1 erwinmi.gov, 1 erwinonline.tk, 1 -erwinpaal.nl, 1 +erwinpaal.nl, 0 erwinschmaeh.ch, 1 erwinsite.tk, 1 erwinwensveen.nl, 1 @@ -50894,7 +50850,6 @@ eryz.tech, 1 erzaehlwerkstatt-heilbronn.de, 1 erzbistum-bamberg.de, 1 es-ostan.tk, 1 -es-ramonage.fr, 1 es-sharing.eu, 1 es-sicherheit.ch, 1 es-tools.at, 1 @@ -50924,7 +50879,6 @@ esb777.us, 1 esb8886.com, 1 esb999.com, 1 esb999.info, 0 -esb999.us, 0 esba11.cc, 1 esba11.com, 1 esbuilders.co.nz, 0 @@ -50945,7 +50899,6 @@ escancia.tk, 1 escandell.cat, 1 escaparate.tk, 1 escapees.com, 0 -escapeforyou.com, 1 escapegames.dk, 1 escapely.com, 1 escapemotions.com, 1 @@ -50961,7 +50914,7 @@ escmatrix.com, 1 escobarservice7000.com, 1 escobeira.pt, 1 escoben.tk, 1 -escolaaberje.com.br, 0 +escolaaberje.com.br, 1 escolaconquer.com.br, 1 escoladejudo.com.br, 1 escoladepilota.tk, 1 @@ -50999,7 +50952,6 @@ escueladelsabor.com, 1 escueladeministerioytecnologia.com, 1 escuelaparapapas.tk, 1 escuelasargento.tk, 1 -escuelitasansebastian.cl, 1 escuelotika-online.tk, 1 escursione.it, 1 esd.cc, 1 @@ -51047,7 +50999,6 @@ esiedu.com, 1 esiga.mx, 1 esignandpay.net, 1 esignering.se, 1 -esignprod.herokuapp.com, 1 esigtorg.ru, 0 esike.hu, 1 esiliati.org, 1 @@ -51123,7 +51074,6 @@ espacioseideas.mx, 1 espacioweb.tk, 1 espacoalimentoesaude.com.br, 1 espacosaudesuplementos.com.br, 1 -espaiarrela.com, 1 espaiblancandorra.ga, 1 espaiblancandorra.gq, 1 espaiblancandorra.ml, 1 @@ -51172,6 +51122,7 @@ esprihealth.com, 1 espritguitare.com, 1 espritguitare.fr, 1 esprk.com, 1 +espub.org, 1 esq, 1 esquelario.tk, 1 esquirebrotherhood.tk, 1 @@ -51187,6 +51138,7 @@ esri.pl, 1 esrinfo.com, 1 esrs.gov, 1 ess-ecologica.cat, 1 +essank.xyz, 1 essay-writing-topics-fce.tk, 1 essayads.com, 1 essaybrand.com, 1 @@ -51207,9 +51159,9 @@ essayservices.org, 1 essayshark.com, 1 essaytalk.com, 1 essaywebsite.com, 1 +esse.tools, 1 essecharlie.com, 1 essenah.com, 1 -essencesdeprana.org, 1 essencespresso.es, 0 essenciasparis.com.br, 1 essendi.de, 1 @@ -51292,6 +51244,7 @@ esthesoleil.jp, 1 esthetiqueboissiere.fr, 1 estilopack-loja.com.br, 1 estintori.roma.it, 1 +estioffice.co.il, 1 estiv-ales.fr, 1 estlat.eu, 0 estocq.fr, 1 @@ -51349,12 +51302,10 @@ esverify.org, 1 esw.com, 1 eswaranthenellaicatering.in, 1 eswikipedia.org, 1 -esy.com.br, 1 esy.nl, 1 esyoil.com, 1 esys.ga, 1 esystems.tk, 1 -eszkola.pl, 1 et-inf.de, 1 et-xprojects.co.za, 1 et.al, 1 @@ -51389,6 +51340,8 @@ etechsolution.net, 1 eteck.co.tt, 1 etemadsazeh.com, 1 eteradia.dynv6.net, 1 +etere.su, 1 +etergrowth.com, 1 eteries.com, 1 eterkludd.se, 1 eternal-chaos.tk, 1 @@ -51423,6 +51376,7 @@ eth0.nl, 0 ethaligan.fr, 1 ethan-hanlon.xyz, 1 ethan.pm, 1 +ethancg.com, 1 ethanjones.me, 1 ethanlew.is, 1 ethanopp.com, 0 @@ -51438,7 +51392,6 @@ etherderbies.com, 1 etherdream.com, 1 ethereal-skies.tk, 1 etherealcollapse.tk, 1 -ethereum-news.info, 1 ethereumnews.best, 1 ethereumnews.digital, 1 ethereumnews.live, 1 @@ -51493,6 +51446,7 @@ etisalat.af, 1 etitlelien.net, 1 etke.cc, 1 etlab.in, 1 +etld.com.br, 1 etme.com, 1 etnoforum.tk, 1 etnoria.com, 1 @@ -51542,6 +51496,7 @@ eu-datenbank.de, 1 eu-secured.com, 1 eu-stellenangebot.de, 1 eu.ax, 1 +eu.pe, 1 eu4ua.org, 1 euaaaio.ru, 0 euc.world, 1 @@ -51599,6 +51554,31 @@ eulen.com, 1 eulenschmiede.de, 1 euler.finance, 1 euleres.tk, 1 +eulerhermes.be, 1 +eulerhermes.bg, 1 +eulerhermes.co.jp, 1 +eulerhermes.co.nz, 1 +eulerhermes.co.uk, 1 +eulerhermes.co.za, 1 +eulerhermes.com, 1 +eulerhermes.com.hk, 1 +eulerhermes.com.tr, 1 +eulerhermes.cz, 1 +eulerhermes.de, 1 +eulerhermes.es, 1 +eulerhermes.fi, 1 +eulerhermes.fr, 1 +eulerhermes.gr, 1 +eulerhermes.hk, 1 +eulerhermes.it, 1 +eulerhermes.kr, 1 +eulerhermes.lv, 1 +eulerhermes.my, 1 +eulerhermes.nl, 1 +eulerhermes.se, 1 +eulerhermes.sg, 1 +eulerhermes.sk, 1 +eulerhermes.tw, 1 eulerkey.cn, 1 eulessplumbers.com, 1 euman.ml, 1 @@ -51851,6 +51831,8 @@ evarni.com, 1 evasioncreole.com, 1 evasionteam.tk, 1 evasovova.cz, 1 +evastats.gg, 1 +evav.ca, 1 evavangunsteren.com, 1 evavolfova.cz, 1 evavonschirach.com, 1 @@ -51863,6 +51845,7 @@ eve-online-com.ru, 1 eve-ua.com, 1 eve.tax, 1 eve0s.com, 1 +eveandi.health, 1 eveaz.com, 1 eveco-mebel.ga, 1 evedanjailbreak.com, 1 @@ -51918,6 +51901,7 @@ eventcore.tk, 1 eventdata.co.uk, 1 eventdata.uk, 1 eventdays.tk, 1 +eventdrop.at, 1 eventex-rentals.com, 1 eventfun.tk, 1 eventhub.events, 1 @@ -51926,13 +51910,11 @@ eventinsurancesettlementqc.com, 1 eventive.org, 0 eventlista.no, 1 eventmake.es, 1 -eventmall.com.br, 1 eventnature.de, 1 eventnexus.co.uk, 1 eventoopartyrooms.com, 1 eventosbgp.com, 1 eventosbyt.pt, 1 -eventosclick.com, 1 eventosdeluchalibre.tk, 1 eventosenmendoza.com.ar, 1 eventosformativos.tk, 1 @@ -51952,7 +51934,6 @@ eventplanner.nl, 1 eventprazdnik.ru, 1 events1.co.il, 1 eventsbytma.com, 1 -eventsforyou.fr, 1 eventsmaster.ca, 1 eventso.net, 1 eventstack.nl, 1 @@ -51964,7 +51945,7 @@ everacommerce.com, 1 everaerts.eu, 1 everand.com, 1 everberg.tk, 1 -everchanging.de, 1 +everchanging.de, 0 evercheck.com, 1 evercred.com, 1 everdivemarine.com, 1 @@ -52064,7 +52045,6 @@ everythingweb.site, 1 everytrycounts.gov, 1 everyveterancountsohio.gov, 1 eveshaiwu.com, 1 -eveshamglass.co.uk, 1 evest.com, 1 evetdermisin.com, 1 evetech.net, 1 @@ -52100,7 +52080,6 @@ evin.ml, 1 evin.tk, 1 evisa.us.com, 1 evisos.cl, 1 -evisos.com, 1 evisos.com.ar, 1 evisos.com.mx, 1 evisos.es, 1 @@ -52108,12 +52087,12 @@ evitacion.com, 1 evkitdigital.com.br, 1 evl.one, 1 evlconsulting.com.au, 1 -evlilikilan.com, 0 +evlilikilan.com, 1 evlqa1sp1tzb05zo-reoo0vhj9a1t5pousfudnkg.com, 0 +evmodssweden.se, 1 evo-ai.com, 1 evo-exchange.com, 1 evo.moe, 1 -evobox.store, 1 evoco.vc, 0 evodation.com, 1 evodation.org, 1 @@ -52147,7 +52126,6 @@ evolvedevlabs.de, 1 evolvemodular.ca, 1 evolvetechnologies.co.uk, 1 evolvewithquantum.com, 1 -evolvexengineering.com, 1 evolvicity.org, 1 evolvingseo.com, 1 evolvingthoughts.net, 1 @@ -52215,6 +52193,7 @@ ewp.homes, 1 ewp.live, 1 ewritingservice.com, 1 ewsfeed.com, 1 +ewtpro.com, 1 ewuchuan.com, 1 ewuraba.co, 1 ewycena.pl, 1 @@ -52257,7 +52236,6 @@ example.ng, 1 exampleessays.com, 1 examroll.fr, 1 examroo.nl, 0 -examroom.ai, 1 examsite.tk, 1 examsmate.in, 1 examsoft.com, 1 @@ -52270,6 +52248,7 @@ exashop.tn, 1 exaspace.de, 1 exatmiseis.net, 0 exatom.io, 1 +exavo.fr, 1 excaliburmatrix.tk, 1 excaliburvintagequests.com, 1 excavation.ga, 1 @@ -52296,7 +52275,6 @@ excellentrencontrer.tk, 1 excellentsurferers.ga, 1 excellentsurferest.ga, 1 excellingleaders.nl, 1 -excelnutritional.com.br, 1 excelpedia.net, 1 excelsamurai.com, 1 excelsiorcomics.com.br, 0 @@ -52400,6 +52378,10 @@ exodium.tk, 1 exodus-net.pl, 1 exodus.com, 1 exodus.io, 1 +exogenis.co.uk, 1 +exogenis.dk, 1 +exogenis.sg, 1 +exogenis.tech, 1 exogenous.ga, 1 exogn.com, 1 exomind.cf, 1 @@ -52437,7 +52419,6 @@ expatmortgage.uk, 1 expatriate.pl, 0 expe.voyage, 1 expectful.com, 0 -expectingplus.com, 1 expediteplus-asia.com, 1 expediteplus.biz, 1 expediteplus.ca, 1 @@ -52522,7 +52503,6 @@ exploit.cz, 0 exploit.party, 1 exploited.cz, 1 exploithe.net, 1 -explora.studio, 1 explorance.com, 1 exploraturuta.com, 1 exploravacations.in, 1 @@ -52643,7 +52623,6 @@ extact.com, 1 extendedteam.co, 1 extendedteam.net, 1 extendet.tk, 1 -extendgroup.com, 1 extendresources.com, 0 extendwings.com, 1 extenselizzembalagens.com.br, 1 @@ -52793,6 +52772,7 @@ ezee-fix.co.uk, 1 ezekia.com, 1 ezequiel-garzon.net, 1 ezercommerce.com, 1 +ezfinanz.com, 1 ezgif.com, 1 ezhub.de, 1 ezik-ido.tk, 1 @@ -52835,6 +52815,7 @@ f-sulzmann.de, 1 f-thie.de, 1 f-u-c-k.wien, 1 f.bi, 1 +f.box, 1 f.dog, 1 f.hk.cn, 1 f.tl, 1 @@ -52843,7 +52824,6 @@ f00228.com, 1 f00f.org, 1 f0x.es, 1 f1-onlineliga.com, 1 -f13ts.nl, 1 f1bigpicture.com, 1 f1classement.com, 0 f1collection.com, 1 @@ -52943,8 +52923,8 @@ fabian-klose.net, 1 fabian-kluge.de, 1 fabian-zoske.de, 1 fabian.gq, 1 -fabianbeiner.com, 1 -fabianbeiner.de, 1 +fabianbeiner.com, 0 +fabianbeiner.de, 0 fabianbertona.com, 1 fabianegli.ch, 1 fabianfranke.de, 1 @@ -52981,7 +52961,6 @@ fableheartmedia.com, 1 fabpilot.com, 1 fabriano.com, 1 fabricacultural.org.br, 1 -fabricademonstros.com.br, 1 fabricandoclientes.com.br, 1 fabricio.adv.br, 1 fabriciokleinadvocacia.com.br, 1 @@ -53023,7 +53002,7 @@ facadatabase.gov, 1 facan-godollo.hu, 1 facanabota.com, 1 facanabota.com.br, 1 -facanacaveira.com, 1 +facanacaveira.com, 0 facarospauls.com, 1 facchinaggio.milano.it, 1 facchinaggio.roma.it, 1 @@ -53063,7 +53042,7 @@ fachcar.ma, 1 fachfusspflege-exner.de, 1 fachim.tk, 1 fachiri.tk, 1 -fachschaften.org, 0 +fachschaften.org, 1 fachschaftslisten.at, 1 fachschaftslisten.org, 1 fachversand-hennes.de, 1 @@ -53113,7 +53092,6 @@ factorit.fr, 1 factorway.com, 1 factory-f.net, 1 factory-fan.com, 1 -factory01.it, 1 factorypartsdirect.com, 1 factozia.tk, 1 facts-about-bees.ml, 1 @@ -53235,7 +53213,6 @@ fairgolfteams.com, 1 fairhavenvt.gov, 1 fairisleaccommodation.com, 1 fairleevt.gov, 1 -fairlesslaw.com, 1 fairline.com, 1 fairlingtonumc.org, 1 fairmates.tk, 1 @@ -53247,6 +53224,7 @@ fairmonttamarak.ml, 1 fairmountfireco.gov, 1 fairplay.im, 1 fairporthots.com, 1 +fairtprm.com, 1 fairtrade010.nl, 1 fairviewcounseling.org, 1 fairviewevents.ca, 0 @@ -53260,6 +53238,7 @@ fairyclinic.com.tw, 1 fairydust.space, 1 fairystar.com.tw, 1 fairyth.tk, 1 +faisalyusra.my.id, 1 faisia.tk, 1 faith-for-life.com, 1 faithadvisorers.ga, 1 @@ -53315,6 +53294,7 @@ fakturi.com, 1 fakturoid.cz, 1 fal.moe, 1 falaeapp.org, 1 +falastin.tk, 1 falbros.com, 1 falcatus-dalmatians.hu, 1 falce.in, 1 @@ -53338,7 +53318,6 @@ faldoria.de, 1 falegname-roma.it, 1 falegname.roma.it, 1 falegnameria.milano.it, 1 -falixnodes.net, 1 falkenbergthomsen.dk, 1 falkenthal.org, 1 falkentyre.com, 1 @@ -53446,7 +53425,7 @@ familysinners.com, 1 familystockexchangeers.ga, 1 familytreehq.com, 1 familytrees.net, 1 -familytreewebinars.com, 1 +familytreewebinars.com, 0 familyzone.ga, 1 famion.eu, 1 famiport.com, 1 @@ -53608,7 +53587,6 @@ fareast.tk, 1 fareinternational.com, 1 farenheit.net, 1 faresair.com, 1 -faresfrom.com, 1 fareto.com, 1 fareuntrasloco.it, 1 farexpress.it, 1 @@ -53652,10 +53630,8 @@ farmer-miniaturen.tk, 1 farmerbrossamples.com, 1 farmerfairness.gov, 1 farmers.gov, 1 -farmerschilemarket.com, 1 farmersfridge.com, 0 farmersgirlkitchen.co.uk, 1 -farmforte.com, 1 farmhouse.com.my, 1 farmhouse.com.sg, 1 farming.co.uk, 1 @@ -53779,7 +53755,6 @@ fashionunited.no, 1 fashionunited.nz, 1 fashionunited.pl, 1 fashionunited.pt, 1 -fashionunited.ru, 1 fashionunited.se, 1 fashionunited.uk, 1 fashionusa.gq, 1 @@ -53799,7 +53774,6 @@ fast-cargo.ml, 1 fast-drops.cf, 1 fast-events.eu, 1 fast-host.gq, 1 -fast-host.net, 1 fast-mobile.tk, 1 fast-pro.co.jp, 1 fast-silver.tk, 1 @@ -54013,7 +53987,6 @@ fbiic.gov, 1 fbijobs.gov, 1 fbilab.gov, 1 fbk.moe, 1 -fbnquest.com, 1 fbo.gov, 1 fbo.network, 1 fboerman.nl, 1 @@ -54105,6 +54078,7 @@ fear-crowd.tk, 1 fearedcreation.tk, 1 fearfactory.tk, 1 fearghus.org, 1 +fearglas.cloud, 1 fearlessmusic.tk, 1 fearstyle.tk, 1 fearunknown.tk, 1 @@ -54148,7 +54122,6 @@ federalbus.ga, 1 federalbusers.ga, 1 federalbusest.ga, 1 federalcalendarest.ga, 1 -federalcriminaldefenseattorney.com, 1 federalinvestments.gov, 1 federaljob.net, 1 federaljobs.gov, 1 @@ -54167,6 +54140,7 @@ fedi.solutions, 1 fedidcard.gov, 1 fedifeed.net, 1 fedinvest.gov, 0 +fedishark.eu, 1 fedistatus.com, 1 fedistatus.eu, 1 fedistatus.net, 1 @@ -54201,6 +54175,7 @@ fedpartnership.gov, 1 fedramp.gov, 1 fedres.gov, 1 fedrigoni.com, 1 +fedrigopeinture.fr, 1 fedrooms.gov, 1 fedrtc.org, 1 fedsfeedfamilies.gov, 1 @@ -54236,7 +54211,7 @@ feek.org, 1 feel-events.com, 1 feel-it.nl, 1 feel.aero, 1 -feelbycubanas.com, 1 +feelaugust.com, 1 feelclear.com, 1 feeld.cloud, 1 feelerfolg.com, 1 @@ -54261,7 +54236,6 @@ feetek.net, 1 feetnesclub.tk, 1 feetpa.ws, 1 feetsco.com, 1 -feezlinkz.com.ng, 1 feezmodo.com, 1 fef.moe, 1 fefacaram.com.br, 1 @@ -54302,7 +54276,6 @@ fejasport.hu, 1 fejervar.hu, 1 fejlaw.com.au, 0 fejo.dk, 1 -fekepp.net, 1 feketerichard.hu, 1 fekir.info, 1 felcas.com.co, 1 @@ -54321,6 +54294,7 @@ felin.es, 1 felinefriend.co.uk, 1 felinepc.com, 1 felipesexto.tk, 1 +felippettoassociates.com, 1 feliratok.eu, 1 felis.com.mx, 1 feliscatus.tk, 1 @@ -54424,6 +54398,7 @@ fennie.onthewifi.com, 0 fenns.co.za, 1 fennville.gov, 1 fennydewit.nl, 1 +fenogent.com, 1 fenom.ga, 1 fenris.ovh, 1 fenritec.eu, 0 @@ -54556,6 +54531,7 @@ ferwor.studio, 1 ferydoonzandi.tk, 1 fescuesodsouthernindiana.com, 1 feseev.ml, 1 +fesoftware.net, 1 festaprylar.se, 1 festar.tk, 1 festesuniversitaries.tk, 1 @@ -54613,7 +54589,6 @@ feudaltactics.com, 1 feudias.com, 1 feuer-u-stein.de, 1 feuerhuhn.de, 1 -feuerkids.de, 1 feuerloescher-test.de, 1 feuernatter.de, 1 feuerwehr-bubikon.ch, 1 @@ -54633,6 +54608,7 @@ fevolden.com, 1 fewo-groden.de, 1 fewo-hafeninsel-stralsund.de, 1 fewo-thueringer-wald.de, 1 +fewo-wendl.de, 1 fewo-wildrosenpfad.de, 1 fewo.plus, 1 fewo.reise, 1 @@ -54652,8 +54628,9 @@ ff-koenigstein-opf.de, 1 ff-obersunzing-niedersunzing.de, 1 ff-tostedt.de, 1 ff15.ddns.net, 1 +ff2.cn, 1 ff5197.co, 1 -ff5g.com, 1 +ff5g.com, 0 ff62.fr, 1 ff6729.co, 1 ff6957.co, 1 @@ -54661,7 +54638,6 @@ ff9297.co, 1 ff9397.com, 1 ff9728.co, 1 ffamranteatime.com, 1 -ffaprivatebank.com, 1 ffazeshift.net, 1 ffb.gov, 1 ffb1.com, 1 @@ -54711,7 +54687,6 @@ fh-jituan.com, 1 fh-mittelstand.de, 1 fh-photographie.art, 1 fh-wechat.com, 1 -fh-x.de, 1 fh-zh.com, 1 fh.spb.ru, 1 fh169.cc, 1 @@ -54804,6 +54779,7 @@ ficlab.com, 1 fico.com, 1 ficor.gov, 1 fid-elite.ch, 0 +fidbank.co.uk, 1 fiddle.to, 1 fiddlesaw.com, 1 fiddlestickstoys.com.au, 1 @@ -54836,7 +54812,6 @@ fieldeffect.com, 1 fieldelectriconline.com, 1 fieldgroupny.com, 1 fieldsgynroboticsurgery.com, 1 -fieldsusa.com, 1 fieldworkbrewing.com, 1 fieldworks.ne.jp, 1 fiemmeimpianti.it, 1 @@ -54924,6 +54899,7 @@ fil-tec-rixen.com, 1 filamentia.nl, 1 filanthropystar.org, 1 filantropikum.com, 1 +filapanel.com, 1 filaretihairlove.gr, 1 filassistance.fr, 1 filcosplay.tk, 1 @@ -54955,23 +54931,22 @@ fileshare.to, 1 filesharing.to, 1 filesharingshop.com, 1 filesmp3.org, 1 -filesoup.io, 1 filestar.io, 1 filestartest.io, 1 filesuffix.com, 1 filetransfer.one, 1 +filetransparency.com, 1 filezilla-project.org, 1 -filgamaa.com, 1 filhomes.ph, 1 fili.com, 1 filialelectronica.hn, 1 filidorwiese.nl, 1 filigrana.tk, 1 +filiienterprise.com, 1 filiio.com, 1 filiotech.com, 1 filiotech.pl, 1 filip-prochazka.com, 0 -filipi.no, 1 filipinasdailynews.tk, 1 filipinochinese.tk, 1 filipinostaff.uk, 1 @@ -54993,7 +54968,6 @@ film.ru, 1 filmbabasi.net, 1 filmbasar.com, 1 filmbest.tk, 1 -filmbooster.com, 1 filmbrain.com, 1 filmcorner.tk, 1 filmdates.co.uk, 1 @@ -55004,7 +54978,6 @@ filmfog.cf, 1 filmfog.ga, 1 filmfreeway.com, 1 filmimpact.com, 0 -filminebandim.com, 0 filmisfun.com, 1 filmisfun.net, 1 filmizleindir.tk, 1 @@ -55070,7 +55043,6 @@ final-expense-quotes.com, 1 final-rest.co.uk, 1 final-x.com, 1 finalashes.tk, 1 -finalesuperuser.com, 1 finalfate.tk, 1 finalfoursteam.tk, 1 finalfourstream.tk, 1 @@ -55096,6 +55068,7 @@ financemain.com, 1 financenews.tk, 1 financepre.com, 1 financestead.com, 1 +financetool.de, 1 financetwenty.com, 1 financewhile.com, 1 financewithcromulent.com, 1 @@ -55123,6 +55096,7 @@ finanzfluss.de, 1 finanzia.fi, 1 finanzierung-sofortzusage.de, 1 finanztime.com, 1 +finanztool.info, 1 finanzwende-recherche.de, 1 finaster.com.br, 1 finatcosmeticos.com.br, 1 @@ -55144,6 +55118,7 @@ findahero.com.au, 1 findairconditioningers.ga, 1 findairconditioningest.ga, 1 findallgames.com, 0 +findandfunds.com, 1 findanengineer.com, 1 findapinball.com, 1 findautoloan.ml, 1 @@ -55181,7 +55156,6 @@ findmassmoney.gov, 1 findmeapp.fr, 1 findmentalhealth.co.uk, 0 findmybottleshop.com.au, 1 -findmycare.ca, 1 findmyfamily.org, 1 findmytricks.com, 0 findnhmoney.gov, 1 @@ -55236,7 +55210,6 @@ finexo.ch, 1 finfleet.id, 1 finform.ch, 1 finfowe.com, 1 -finfreeservice.com, 1 finfriend.work, 1 fingerlakesgaming.com, 0 fingerprintjs.com, 1 @@ -55256,6 +55229,7 @@ finity.com, 1 finkelstein.fr, 1 finlandcook.online, 1 finlandcook.top, 1 +finlay.nyc, 1 finlayjacks.co.nz, 1 finlaylloyd.com, 1 finlays.net, 1 @@ -55301,7 +55275,6 @@ finvantive.nl, 1 finverse.com, 0 finwarriors.tk, 1 finwe.info, 1 -finy.pl, 1 finzy.com, 1 fionahengartner.ch, 1 fionamcbride.com, 1 @@ -55371,14 +55344,13 @@ firerain.me, 1 fireservicerota.co.uk, 1 fireshellsecurity.team, 1 firesmoke.ca, 1 -firesofheaven.org, 1 -firesprite.com, 0 +firesprite.com, 1 firestart.tk, 1 firestarter.fi, 1 firestuff.org, 1 firetotheprisons.org, 1 fireurboss.tk, 1 -firevap.org, 1 +firewallfairy.com, 1 firewallremoval.cf, 1 firewallremovalers.ga, 1 fireware.tk, 1 @@ -55437,11 +55409,11 @@ firstbaptistfargo.com, 1 firstbooks.ml, 1 firstbridge.io, 1 firstbus.co.uk, 1 +firstcall.cloud, 1 firstcallnc.com, 1 firstcapitalfcu.com, 1 firstcentralsavings.com, 1 firstchoicebouncycastlehire.co.uk, 1 -firstchoicefriseur.at, 1 firstchoicejunkservice.com, 1 firstchoiceliquor.com.au, 1 firstchurchmn.org, 1 @@ -55457,6 +55429,7 @@ firstcommunity.com, 1 firstcontact.cf, 1 firstdry.com.br, 1 firstechpayments.com, 0 +firstenergyservice.com, 1 firstever.eu, 1 firstfederalbath.com, 1 firstfinanceit.com, 1 @@ -55475,6 +55448,7 @@ firstlinesecurities.com, 1 firstload.tk, 1 firstmall.de, 1 firstmarket.tech, 1 +firstmarketscanner.com, 1 firstname.tk, 1 firstnet.gov, 1 firstnetwork.cf, 1 @@ -55482,6 +55456,7 @@ firstorion.com, 1 firstottawa.com, 1 firstphilec.com, 1 firstplace.ga, 1 +firstpoint.com.tr, 1 firstqa.com, 0 firstresponder.gov, 1 firstshowing.net, 1 @@ -55565,19 +55540,20 @@ fiskalloy.com, 1 fiskaly.com, 1 fiskarsinlaituri.fi, 1 fisophi.com, 1 -fispan.com, 1 +fispan.com, 0 fistingtogether.com, 1 fistwerk.de, 1 fisvo.org, 0 fit-4u.ch, 0 +fit-corner.nl, 1 fit365.jp, 0 +fit3pl.in, 1 fit81.com, 1 fit81.it, 1 fitanu.com, 1 fitasdobonfim.com, 1 fitbase.cf, 1 fitbeautyjet.com, 1 -fitbizcpa.org, 1 fitc.jp, 1 fitcamp.fitness, 1 fitch-journal.com, 1 @@ -55632,14 +55608,15 @@ fitssey.com, 1 fitt-together.co.uk, 1 fittar.eu, 1 fittherapy.biz, 0 +fittipaldijr.com, 1 fittmetlynn.nl, 1 fittydent.bg, 1 fitup.health, 1 fitxxxsandy.net, 1 +fitz-family.com, 1 fitzsim.org, 1 fitzwilliamhotelbelfast.com, 1 fiu.ee, 0 -five.sh, 1 five15.net, 1 fiveboosts.xyz, 1 fiveclassauto.com, 1 @@ -55651,7 +55628,6 @@ fiverr.com, 1 fiveslice.pizza, 1 fivestar.et, 1 fivestaraussie.com, 1 -fivestartrader.com, 1 fivethirtyeight.com, 1 fiveyearsahead.com, 1 fivolodigital.com, 1 @@ -55694,6 +55670,7 @@ fixpoint.systems, 1 fixtesisat.com, 1 fixthetimeline.com, 1 fixthetimeline.org, 1 +fixthevuln.com, 1 fixupx.com, 1 fixverkaufen.de, 1 fixville.co, 1 @@ -55739,6 +55716,7 @@ fjordbank.ee, 1 fjordbank.lt, 1 fjordboge.dk, 1 fjordenpaard.tk, 1 +fjordrykkur.is, 1 fjsb.com, 1 fjugstad.com, 1 fjzone.org, 1 @@ -55766,7 +55744,6 @@ flagcdn.com, 1 flaggorvarlden.se, 1 flaggrimsby.co.uk, 1 flagi-panstw.pl, 1 -flagipanstw.info.pl, 1 flagipanstw.pl, 1 flagistrany.ru, 1 flagium.org, 1 @@ -55797,6 +55774,7 @@ flam.lu, 1 flam.studio, 1 flaman-h7a.fr, 1 flamanville.fr, 1 +flamby.ovh, 1 flameflyff.com, 1 flamehaze.tk, 1 flamellugano.com, 1 @@ -55842,7 +55820,6 @@ flasaki.gr, 1 flash-games.tk, 1 flash-payments.com, 1 flash.homes, 1 -flashback.org, 1 flashbackband.tk, 1 flashbeat.tk, 1 flashcardsmobile.com, 1 @@ -55989,6 +55966,7 @@ flexdrukker.nl, 1 flexex.io, 1 flexfone.dk, 1 flexforcemonkey.com, 1 +flexgloble.com, 1 flexgs.ca, 1 flexgs.net, 1 flexhyp.de, 1 @@ -56042,7 +56020,6 @@ flightdiary.cf, 1 flightdiary.ga, 1 flightdiary.gq, 1 flightfrankfurt.com, 1 -flighthonolulu.com, 1 flighthub-sms.com, 1 flightjackets.tk, 1 flightrights.gov, 1 @@ -56050,9 +56027,7 @@ flightscarhire.com, 1 flightschoolbooking.com, 1 flightschoolcandidates.gov, 1 flightschoolxxi.com, 1 -flightstimes.com, 1 flightti.com, 1 -flightticketsto.com, 1 flightzero.cf, 1 fliino.com, 1 fliino.eu, 1 @@ -56065,6 +56040,7 @@ flingflong.co, 1 flinny.org, 1 flintavenue.com, 1 flintregistry.org, 1 +flintriverkeeper.org, 1 flintstones.tk, 1 flip-flop.tk, 1 flip.kim, 1 @@ -56215,7 +56191,7 @@ floridaindependent.com, 1 floridaplasticsurgery.com, 1 floridaroofdesign.com, 1 floridarrc.com, 1 -floridaschools.us, 0 +floridaschools.us, 1 floridastadium.ga, 1 floridastadiumers.ga, 1 floridastadiumest.ga, 1 @@ -56246,6 +56222,7 @@ flourishgrazingevents.co.uk, 1 flourishtogether.com, 0 flow-serv.com, 1 flow.su, 1 +flow28.co.uk, 1 flowair24.ru, 1 flowalizer.com, 1 flowalyzer.com, 1 @@ -56295,11 +56272,14 @@ flownonfiction.com, 1 flownty.com, 0 flowoodpolice.gov, 1 flowreplicator.com, 1 +flowsales.online, 1 flowsave-staging.nl, 1 +flowsave.nl, 1 flowscale.com, 1 flowstars.tk, 1 flowstateyoga.com.au, 1 flowtex.tk, 1 +flowweaver.ai, 1 flowzone.eu, 1 floya.brussels, 1 floydcountyga.gov, 1 @@ -56364,8 +56344,6 @@ flutterwave.com, 1 fluui.com.br, 1 flux.today, 0 flux360.net, 1 -fluxerstatic.com, 1 -fluxerusercontent.com, 1 fluxforge.com, 1 fluxnet.tk, 1 fluxoid.com, 1 @@ -56388,7 +56366,7 @@ flybis.net, 1 flyboarder.tk, 1 flyboyfpv.com, 1 flycolumbus.com, 1 -flyddiction.com, 0 +flyddiction.com, 1 flyer-homes.com, 1 flyer.tools, 1 flyerdatabase.tk, 1 @@ -56583,6 +56561,7 @@ fokan.ch, 1 fokep.no, 1 fokos.de, 0 fokus.ag, 1 +fokusfalter.ch, 1 fol.tf, 1 folar.ga, 1 folclore.tk, 1 @@ -56637,7 +56616,6 @@ fondbaikal.ml, 1 fonds-dieter.be, 1 fondsnieuws.nl, 1 fondsvermittler.com, 1 -fonduri-structurale.ro, 1 fondy.ua, 1 fondzee.cz, 1 fonemisitme.com, 1 @@ -56964,6 +56942,7 @@ foresttownrcwi.gov, 1 forestvets.com, 1 forever.gq, 1 foreverbreak.com, 1 +foreverclean.com, 1 forevercollage.com, 1 foreverpontiac.com, 1 foreverreem.com, 0 @@ -56985,7 +56964,6 @@ forexmarketsm.tk, 1 forexnese.com, 1 forexnew.org, 1 forexpattern.tk, 1 -forexsignalroom.com, 1 forextickler.com, 1 forexwinway.com, 1 forexworld.cf, 1 @@ -57086,6 +57064,7 @@ formweb.de, 1 formyourcorp.com, 1 fornarisandres.com, 1 fornata.it, 1 +fornatov.com, 1 forneyplus.com, 1 fornoreason.net.au, 1 foro-coopfuture.tk, 1 @@ -57133,10 +57112,19 @@ forsythco.com, 1 forsythcountync.gov, 1 forsythmo.gov, 1 forsyththeatre.com, 1 +fortannov.com, 1 +fortanof.com, 1 +fortanov.co, 1 +fortanov.com, 1 +fortanov.net, 1 +fortanov.org, 1 +fortanove.com, 1 +fortanuv.com, 1 fortatkinsonia.gov, 1 fortatkinsonwi.gov, 1 fortawesome.org, 1 fortbendisd.gov, 1 +fortbridge.co.uk, 1 fortcommunity.com, 1 fortdeposital.gov, 1 fortdodgeradio.com, 1 @@ -57164,13 +57152,14 @@ fortisinc.com, 1 fortissimusbellator.pt, 1 fortknoxster.com, 1 fortmatic.com, 1 -fortnet.online, 1 +fortnanov.com, 1 fortnightlyofeugene.org, 1 fortnitedb.com, 1 fortnitemagic.ga, 1 fortniterefund.com, 1 fortnitetrends.com, 1 fortoglethorpega.gov, 1 +fortonov.com, 1 fortress.no, 0 fortress.sk, 1 fortressgb.com, 1 @@ -57247,6 +57236,7 @@ forvisualdesign.com, 0 forward-fly-fishing.ch, 0 forward-proxy.email, 1 forward.lc, 1 +forwardblood.com, 1 forwardemail.net, 1 forwardfever.tk, 1 forwardfinancingest.ga, 1 @@ -57275,7 +57265,6 @@ fossunited.org, 1 foster.ga, 1 fosteringconsultant.com, 1 fosters.ky, 1 -fosterthechange.com, 1 fosterunity.com, 1 fosterwiki.com, 1 fosttest.be, 1 @@ -57300,7 +57289,7 @@ fotoallerlei.com, 1 fotoapp.ch, 1 fotoarchiv-niederrhein.de, 1 fotoblog.nrw, 1 -fotobodyart.nl, 1 +fotobodyart.nl, 0 fotobrb.de, 1 fotobringer.de, 1 fotobrinke.de, 1 @@ -57318,6 +57307,7 @@ fotografiamakro.pl, 1 fotografies.tk, 1 fotografija.tk, 1 fotografoivanalmeida.com.br, 1 +fotografontes.com.br, 1 fotografy-help.de, 1 fotogruppe-phos.de, 1 fotohiking.com, 1 @@ -57328,6 +57318,7 @@ fotolectura.tk, 1 fotoleitner.com, 1 fotoleitner.de, 1 fotoloji.art, 1 +fotomac.com.tr, 1 fotomodel.cf, 1 fotomodels.tk, 1 fotonippon.com, 1 @@ -57373,7 +57364,6 @@ foundationsasha.org, 1 foundationspecialisteast.com, 1 foundchurch.co.uk, 1 founderinvestors.tk, 1 -founderio.net, 1 founderscard.com, 1 foundland.com, 1 foundrehotels.com, 1 @@ -57413,7 +57403,6 @@ foutras.com, 1 foutrelis.com, 1 fovndry.com, 1 fowesolutions.net, 1 -foweyretreat.co.uk, 1 fowlmanor.tk, 1 fowlsmurf.net, 1 fowos.de, 1 @@ -57422,7 +57411,6 @@ fox.my, 0 fox13now.com, 1 fox17online.com, 1 fox47news.com, 1 -fox4now.com, 1 foxandfish.be, 1 foxart.com.tr, 1 foxbenjaminfox.com, 1 @@ -57469,7 +57457,6 @@ fp7-smartcode.eu, 1 fpalzira.es, 1 fpasca.com, 1 fpc.gov, 1 -fpcdn.io, 1 fpcorporatefinance.eu, 1 fpcs-anchorage.com, 1 fpcslidell.org, 1 @@ -57478,12 +57465,10 @@ fpersona.com, 1 fpf.ch, 1 fpf.org, 1 fpgamania.com, 1 -fpjscdn.net, 1 fpki.sh, 1 fpline.jp, 1 fpmafi.com, 1 fpnet.tk, 1 -fpnpmcdn.net, 1 fpoe.eu, 1 fppq.org.br, 1 fprinnovaciones.es, 1 @@ -57501,6 +57486,7 @@ fpt.icu, 1 fptbb.com, 1 fptsoftware.com, 1 fpu.sk, 1 +fpvracerbern.ch, 1 fpy.cz, 1 fr-fotopage.tk, 1 fr.search.yahoo.com, 0 @@ -57615,6 +57601,7 @@ fran.cr, 1 franc-token.com, 1 franca-ravet.eu, 1 francabellarsi.tk, 1 +francastro.eu, 1 france-cartouches.fr, 1 france-chien.fr, 1 france-news.cf, 1 @@ -57674,6 +57661,7 @@ francoisharvey.ca, 1 francoislaude.fr, 1 francoislepage.com, 0 franconia.space, 1 +francoraso.com, 1 francosud.ca, 1 francovital.com, 1 francoz.me, 0 @@ -57756,7 +57744,7 @@ frantajaros.cz, 1 frantic1048.com, 1 frantorregrosa.me, 1 frantz.gr, 1 -frantzeskidis.com, 1 +frantzeskidis.com, 0 franz-vatter.de, 1 franz.beer, 1 franzen.tk, 1 @@ -57866,7 +57854,6 @@ freddieleeman.nl, 1 freddieonfire.tk, 0 freddo.tk, 1 freddyhasderyk.tk, 1 -freddyjs.com, 1 freddythechick.net, 1 freddyvasquez.com, 1 freddyxvasquez.com, 1 @@ -58046,7 +58033,6 @@ freemazes.tk, 1 freemchosting.tk, 1 freeme.gq, 1 freemedia.tech, 1 -freemegamovies.com, 1 freemilf.org, 1 freemilfpics.com, 1 freeminecraftmaps.tk, 1 @@ -58154,7 +58140,6 @@ freewoman.club, 1 freewoodfactory.com, 1 freexmovie.com, 1 freexxxmovies.biz, 1 -freeyourmusic.com, 1 freeyourself.nu, 1 freeza.cf, 1 freeza.tk, 1 @@ -58179,6 +58164,7 @@ freightcenter.com, 1 freightinsightservice.com, 1 freightscore.net, 1 freikirchebergen.de, 1 +freiraum-plus.com, 1 freiszene.de, 1 freitas.org, 1 freitasbastos.com.br, 1 @@ -58210,7 +58196,6 @@ frenchdays.fr, 1 frenchmac.com, 1 frenchtonpups.com, 1 frenchtownmi.gov, 1 -frenchvandal.com, 0 frendamos-roleplay.ml, 1 frendle.tech, 1 frenetic.lv, 1 @@ -58284,6 +58269,7 @@ freundinnenausflug.de, 0 freundlieb.ch, 1 frexxi.com, 1 freyapearls.com.au, 1 +frgal.cz, 1 fribourgviking.net, 1 frickelboxx.de, 1 frickelmeister.de, 1 @@ -58405,7 +58391,6 @@ friv-2018.ga, 1 frizim.com, 1 frizo.com, 1 frlcnews.com, 1 -frlt.one, 1 frltexas.com, 1 frlunit.com, 1 frly.de, 0 @@ -58487,13 +58472,11 @@ froogo.co.uk, 1 frosinonetoday.it, 1 frost.com, 1 frost.kiwi, 1 -frostbits.net, 1 frostbytex.ca, 1 frostexpert.ru, 1 frostfire.tk, 1 frostland.net, 1 frostland.pro, 1 -frostplatform.com, 1 frostprotection.co.uk, 1 frostwarning.com, 1 frostwolf.tk, 1 @@ -58565,6 +58548,7 @@ frutuozo.com.br, 1 fruturaproduce.com, 1 fruxh.moe, 1 fruxnux.net, 1 +fruxon.com, 1 frwmb.gov, 1 fry.at, 1 frydrychit.cz, 1 @@ -58586,7 +58570,7 @@ fsalmeron.tk, 1 fsapubs.gov, 0 fsatech.com, 1 fsavc.org.uk, 1 -fsbn.eu, 1 +fsbn.eu, 0 fsbpaintrock.com, 1 fsbtahlequah.com, 1 fsch2009.com, 1 @@ -58616,7 +58600,6 @@ fspk.fyi, 1 fspk.pro, 1 fspk.tech, 1 fsrs.gov, 1 -fssai.gov.in, 1 fssc.com, 1 fsscms.com, 1 fssolutions.com, 1 @@ -58727,7 +58710,6 @@ fuel.london, 1 fuel.ventures, 1 fuel2go.eu, 1 fuelbyte.sg, 1 -fuelco.com.au, 1 fuelcycle.com, 1 fueleconomy.gov, 1 fuelgalicia.tk, 1 @@ -58800,7 +58782,6 @@ fujieb.com, 1 fujifilm-connect.com, 1 fujikatu.tk, 1 fujikochan.tk, 1 -fujimurado.com, 1 fujitsu, 1 fujivibe.art, 1 fujiwarashinzo.com, 1 @@ -58827,7 +58808,6 @@ fulfilmentcrowd.com, 1 fulfyld.com, 1 fulgaz.com, 0 fulgentoncology.com, 1 -fulgenzis.com, 1 fulisex.com, 1 fuliwang.info, 1 full-service-suite.com, 1 @@ -58861,7 +58841,6 @@ fulltextarchive.com, 1 fulltxt.ml, 1 fully-covered.tk, 1 fully-hair.tk, 1 -fullzest.com, 1 fultoncountyar.gov, 1 fultoncountyil.gov, 1 fultoncountyilelections.gov, 1 @@ -58913,6 +58892,7 @@ fundamentalrightsforum.eu, 1 fundamentals.lu, 1 fundamentt.com, 1 fundayltd.com, 1 +fundcapitalnow.com, 1 fundedschools.ml, 1 fundelva.com, 1 fundera.com, 1 @@ -59161,6 +59141,7 @@ furseo.co, 1 fursho.ws, 1 furshows.org, 1 furtainment.com, 1 +furtanov.com, 1 furthestpoint.org, 1 furtodo.at, 1 furtodo.com, 1 @@ -59188,6 +59169,7 @@ fuscina.co.uk, 1 fuse.com.vn, 1 fuselight.nl, 1 fuseos.net, 1 +fusestudio.net, 1 fuseyahoken.com, 1 fushee.com, 1 fushimidc.com, 1 @@ -59227,7 +59209,6 @@ fut21gen.com, 1 futa.agency, 1 futa.wiki, 1 futabadc.jp, 1 -futacockinside.me, 1 futalis.de, 1 futarara.ga, 1 futaritomo.tk, 1 @@ -59278,7 +59259,6 @@ futuregadget-apt.ph, 1 futuregrowthva.com, 1 futureimmigration.net, 1 futuremadein.eu, 1 -futurenode.dk, 1 futureofyoucdc.sg, 1 futureplan.de, 1 futureplanet.tk, 1 @@ -59305,6 +59285,7 @@ fuxgames.com, 1 fuxia.ai, 1 fuyeor.com, 1 fuyeor.net, 1 +fuyeor.org, 1 fuyeor.top, 1 fuyer.cn, 0 fuyu.moe, 1 @@ -59331,7 +59312,6 @@ fw-einsatz.de, 1 fwaux.de, 1 fwba.hopto.org, 1 fwd.pp.ua, 1 -fwdmovers.com, 1 fwdx.net, 1 fwest.ovh, 1 fwest98.nl, 1 @@ -59411,7 +59391,6 @@ fxv.pizza, 1 fxvdd.com, 1 fxvdigital.com, 1 fxwebstudio.com.au, 0 -fya.ch, 1 fyers.in, 1 fyfywka.com, 1 fyllehack.se, 1 @@ -59455,6 +59434,7 @@ g-fruit.gr, 1 g-lab.xyz, 1 g-m-w.eu, 1 g-p-design.com, 1 +g-partners.com, 1 g-printec.com, 1 g-rom.net, 1 g-sp.azurewebsites.net, 1 @@ -59475,14 +59455,12 @@ g1313g.com, 1 g15ubezpieczenia.pl, 1 g2-inc.com, 1 g2jp.uk, 1 -g2links.com, 0 g2pla.net, 1 g2risksolutions.com, 1 g2soft.net, 0 g36533.com, 1 g36594.com, 1 g3circuit.com, 1 -g3cs.org, 1 g3d.ro, 1 g3hardcore.tk, 1 g3homefoods.com, 1 @@ -59560,7 +59538,6 @@ gabrielrm.dynu.net, 1 gabrielsimonet.ch, 1 gabrielsteens.nl, 1 gabrielvillarreal.com, 0 -gabrielyin.com, 0 gabryjeluk.tk, 1 gabskent.de, 1 gabtitui.gov.au, 0 @@ -59574,7 +59551,6 @@ gacheamotors.cl, 1 gachiyase.com, 1 gachoki.com, 1 gachter.name, 0 -gachw.org, 0 gaci88play.com, 1 gacirenin.cf, 1 gacirenin.tk, 1 @@ -59609,6 +59585,7 @@ gadgetshome.ml, 1 gadgetslab.tk, 1 gadingpromosindo.tk, 1 gadkiy-farm.tk, 1 +gadrian.com.br, 1 gadsdensoefl.gov, 1 gadse.games, 1 gadzilla.tk, 1 @@ -59799,6 +59776,7 @@ gamagam.gq, 1 gamalawadforum.tk, 1 gamalhamza.tk, 1 gamanlu.com, 1 +gamatotv.io, 1 gambarian.com, 1 gamberorosso.menu, 1 gamberorotto.com, 1 @@ -59936,7 +59914,6 @@ games-station.tk, 1 games2kids.net, 1 games4theworld.org, 1 gamesandcasino.com, 1 -gamesaviour.com, 1 gamesbrowser.org, 1 gamescatalogue.blog, 1 gamesclix.com, 1 @@ -59947,7 +59924,6 @@ gameserver-sponsor.me, 1 gameserver.fun, 1 gamesgalaxy.it, 1 gamesgate.tk, 1 -gameshack.io, 1 gameship.ga, 1 gameshopsrbija.com, 1 gameshowchallenge.ie, 1 @@ -60025,6 +60001,7 @@ gamoloco.com, 0 gamrenovation.ca, 1 gamtosgidas.lt, 1 gan.wtf, 1 +ganaconelbarrio.com, 1 ganaha.org, 1 ganardinerillo.tk, 1 ganasoku.net, 1 @@ -60032,7 +60009,6 @@ gancedo.com.es, 1 ganchev.bg, 1 gandalfcz.tk, 1 gandalfservice.com, 1 -gandhiashramsabarmati.org, 1 gandmfamilydental.com, 1 gandour.com, 0 gangbangs.tk, 1 @@ -60074,7 +60050,7 @@ gapfa.ro, 1 gaphag.ddns.net, 1 gapo.re, 1 gaponov.tk, 1 -garage-leone.com, 1 +garage-leone.com, 0 garage.click, 1 garage042.bg, 1 garage15.com.ua, 1 @@ -60122,6 +60098,7 @@ gardeniaorganic.com, 1 gardenroomsdirect.co.uk, 1 gardensuperstore.com.au, 1 gardentotable.org, 1 +gardenwith.me, 1 gardevault.eu, 1 gardinenzubehoer.tk, 1 gardinolsson.se, 1 @@ -60220,6 +60197,7 @@ gasb87leaseaccounting.com, 1 gasbarkenora.com, 1 gasenergy.kz, 1 gasesdelaguajira.com, 1 +gasestepiesa.ro, 1 gasfitermaipu.cl, 1 gasherde.tk, 1 gashtline.ir, 1 @@ -60322,13 +60300,13 @@ gavilanz.ddnsfree.com, 1 gavin.sh, 1 gavindebecker.com, 1 gavinedson.com, 1 -gavingreer.com, 1 gavins.stream, 1 gavintang.me, 1 gavinwhite.net, 1 gaviti.com, 1 gavlix.se, 1 gaw.sh, 1 +gawel.ch, 1 gawinex.com, 1 gay-jays.com, 1 gay.amsterdam, 1 @@ -60395,7 +60373,6 @@ gbcomm.tk, 1 gbcsummercamps.com, 1 gbdavisplasticsurgery.com, 1 gbecreativeagency.com, 1 -gbedu360.com, 1 gbenson.net, 1 gbes.com, 1 gbfoundation.org, 1 @@ -60448,7 +60425,6 @@ gcn.ie, 1 gcode.space, 1 gcoded.de, 1 gconcept.tk, 1 -gconduit.com, 1 gconstruction.org, 1 gcoption.pro, 1 gcorevape.ca, 1 @@ -60464,7 +60440,6 @@ gcso.gov, 1 gcstats.org, 1 gcstechnologies.com, 1 gctdtx.gov, 1 -gcubedinc.com, 1 gcuf.edu.pk, 1 gcustom.email, 1 gcwatx.gov, 1 @@ -60516,7 +60491,6 @@ gear4music.it, 1 gear4music.nl, 1 gear4music.no, 1 gear4music.se, 1 -gearbot.rocks, 1 gearboxhero.com, 1 gearev.net, 1 gearfinder.nl, 1 @@ -60550,7 +60524,6 @@ gecbunlari.com, 1 gecem.org, 1 gechr.io, 1 geckler-ee.de, 0 -geckoroutes.com, 0 geckos-geocaching.de, 1 geckosurfschool.com, 0 geckowithahat.com, 1 @@ -60567,6 +60540,7 @@ geecrat.com, 1 geek-hub.de, 1 geek-rooms.tk, 1 geek.ch, 1 +geek.tw, 1 geek1.de, 1 geekabit.nl, 1 geekandi.com, 1 @@ -60579,7 +60553,6 @@ geekcq.com, 1 geekcreations.co.uk, 1 geekdoit.com, 1 geekedin.ga, 1 -geekelectronico.com, 1 geekflare.com, 1 geekgear.tk, 1 geekhelpline.com.au, 1 @@ -60627,7 +60600,6 @@ geemprestimos.com, 1 geen.gp, 1 geenspam.net, 1 geerdsen.net, 1 -geertdegraaf.nl, 1 geertjanvanhest.nl, 1 geertswei.nl, 1 gees.ch, 1 @@ -60640,6 +60612,7 @@ gefolge.org, 1 gegeco.ch, 0 gegevensdelen.nl, 1 gego-bergen.de, 1 +gehenna2035.com, 1 geheugenvannederland.nl, 1 gehirn.co.jp, 1 gehirn.jp, 1 @@ -60664,13 +60637,15 @@ geisten.net, 1 geitenijs.com, 1 geitex.com, 1 gekko.tk, 1 -gekkoldprom.ru, 1 gekleurdverleden.be, 1 geko.cf, 1 +gel.monster, 1 gelaendermanufaktur.de, 1 gelair.com.au, 1 gelanc.ml, 1 gelaterista.de, 1 +gelatinous.monster, 1 +gelatinous.org, 1 gelb-computer.de, 1 gelcocktail.fr, 1 geld-im-blick.de, 1 @@ -60712,7 +60687,6 @@ gemails.eu, 1 gemailt.net, 1 gemaskeerd.nl, 1 gematik.de, 1 -gemawardian.com, 1 gemax-online.de, 1 gembet99.com, 1 gemdirt.com, 1 @@ -60739,11 +60713,13 @@ gemonite.com, 1 gemooi.com, 1 gemour.pl, 1 gemquery.com, 1 +gemsen.com, 1 gemstones.com, 1 gemwerx.com, 1 gen.cn.eu.org, 1 gen.net.eu.org, 1 gen3marketing.com, 1 +genaropretill.com, 1 genbars.jp, 1 genbrugge.tk, 1 genchev.io, 0 @@ -60816,6 +60792,7 @@ generator-energy.kz, 1 generator-energy.ru, 1 generatorcountry.com, 1 generatorkodowkreskowych.pl, 1 +generatorlabs.com, 1 generatormusic.tk, 1 generatorreview.pro, 1 generators-pro.ru, 1 @@ -61152,6 +61129,7 @@ gepgroup.gr, 1 gepo69.net, 1 gepps.de, 0 geppy.im, 1 +gequma.de, 1 gera-haushaltsaufloesung.de, 1 gerainano.com, 1 geraintwhite.co.uk, 1 @@ -61258,7 +61236,6 @@ gestione-certificazioni.it, 1 gestionth.com, 1 gestor.co, 1 gestorehotel.com, 1 -gestorestecnologicos.com, 1 gestoriaycontratos.com, 1 gestus.tk, 1 gesundheits-fakten.de, 1 @@ -61280,7 +61257,7 @@ get.gov, 1 get.how, 1 getabear.com, 1 getacrane.co.uk, 1 -getahearing.com, 1 +getahearing.com, 0 getaldea.com, 1 getalink.ga, 1 getalitools.ru, 1 @@ -61316,6 +61293,7 @@ getcare.com, 1 getcarina.com, 1 getcerta.com, 1 getchip.cc, 1 +getclarity.life, 1 getcleanworx.co.uk, 1 getclever.marketing, 1 getcloak.com, 1 @@ -61379,7 +61357,6 @@ getitpeople.com, 1 getjerry.com, 1 getjms.com, 1 getkeyport.com, 1 -getkliq.com, 1 getlaminas.org, 1 getlantern.org, 0 getlawyered.com.au, 1 @@ -61406,10 +61383,8 @@ getmywellness.com, 1 getnetset.com, 1 getnetworkvisibility.com, 1 getnew.tk, 1 -getnexar.com, 1 getnib.com, 1 getnikola.com, 1 -getonlinecalculator.com, 1 getonwikipedia.com, 1 getoxley.com, 1 getpagespeed.com, 1 @@ -61471,6 +61446,7 @@ getthinkworksafe.co.uk, 1 getticker.com, 1 gettingtvers.ga, 1 gettopquality.com, 1 +gettrack.us, 1 getts.ro, 1 getts.shop, 1 gettwo.ml, 1 @@ -61579,8 +61555,6 @@ gg6957.co, 1 gg9297.co, 1 gg9397.com, 1 gg9728.co, 1 -ggaustraliagames.com, 1 -ggb.world, 1 ggchamber.com, 1 ggddrenthe.nl, 1 ggdrop.com, 1 @@ -61592,6 +61566,7 @@ ggiveilig.nl, 1 gglks.com, 1 ggmmontascale.it, 1 ggpoker.com, 1 +ggpuketi.com, 1 ggretrobox.com, 1 ggrks.lol, 1 ggs-marschallstrasse.de, 1 @@ -61654,6 +61629,7 @@ ghosthost.site, 1 ghosthunting.dk, 1 ghostinbox.pl, 1 ghostinfluence.com, 1 +ghostkeys.eu, 1 ghostlight.tk, 1 ghostmail.no, 1 ghostmarket.io, 1 @@ -61687,7 +61663,6 @@ giacomodebidda.com, 1 giacomomaniaci.it, 1 giacomopelagatti.it, 1 giacomosecchi.com, 1 -giakki.eu, 1 gialai.gov.vn, 1 gialupa.tk, 1 giamcanhieuqua.vn, 1 @@ -61820,6 +61795,7 @@ gigatron.tk, 1 gigawa.lt, 1 gigawattz.com, 1 gigbh.com, 1 +gigent.xyz, 1 giggear.com.au, 1 gigharborsound.com, 1 gigharborwa.gov, 1 @@ -61871,6 +61847,7 @@ gim-app.tk, 1 gim.ac.in, 1 gimbal.ca, 1 gimme.money, 1 +gimmecalc.com, 1 gimmickbots.com, 1 gimmickmedia.de, 1 gimmix.lk, 1 @@ -61887,6 +61864,7 @@ ginatony.com, 1 ginecomastiatratamento.com.br, 1 ginen.xyz, 0 ginepolice.gov, 1 +ginesenergy.com, 1 ginev.tk, 1 gingerhomemaking.com, 1 gingerxumd.com, 1 @@ -61949,7 +61927,6 @@ giri.co, 1 girishkumar.tk, 1 girl.science, 1 girlan.net, 1 -girlandhermoon.com, 0 girlbaito.jp, 1 girlboss.ceo, 1 girlboss.systems, 1 @@ -62051,7 +62028,6 @@ giusyesabatino.it, 1 givaudan.com, 1 give.net, 1 give2charity.co, 1 -give2charityapp.com, 1 giveasquare.com, 1 giveasquare.net, 1 giveasquare.org, 1 @@ -62171,7 +62147,6 @@ glas-systeme.eu, 1 glascentro-gmbh.de, 1 glascentro.de, 1 glasck.com, 1 -glasck.gg, 1 glasdon.com, 1 glase.shop, 1 glaserceramics.com, 1 @@ -62284,6 +62259,7 @@ glitchcity.wiki, 1 glitchcomic.tk, 1 glitched.online, 1 glitchtip.com, 1 +glitchworks.ch, 1 glitterblast.uk, 1 glitteringmariah.tk, 1 glitzerstuecke.de, 1 @@ -62362,7 +62338,7 @@ globalhealth.gov, 1 globalhomeautomation.ca, 1 globalhomicideers.ga, 1 globalhorses.de, 1 -globalhubb.ro, 1 +globalincomeexperts.com, 1 globalind.com.au, 1 globalink.tk, 1 globalinvestorgate.com, 1 @@ -62396,7 +62372,6 @@ globalperspectivescanada.com, 1 globalpolarbear.com, 1 globalpouchfactory.com, 0 globalprivacyassembly.com, 1 -globalprocess.co.nz, 1 globalproduction.ga, 1 globalprojetores.com.br, 1 globalradio.tk, 1 @@ -62467,6 +62442,7 @@ globifytalent.com, 1 globit.com.tr, 1 globoasiatico.com.ph, 1 globologic.com, 1 +globotech.be, 0 globotur.de, 1 globowood.ml, 1 globus-plus.ml, 1 @@ -62508,6 +62484,7 @@ glotter.com, 1 glotwpnjpd.gov, 1 gloucesterva.gov, 1 glovementor.com, 1 +glovitech.co.kr, 1 glowcdn.com, 1 glowfic.com, 1 glp1thailand.com, 1 @@ -62515,11 +62492,6 @@ glpreparation.com, 1 glreit.com, 1 glsauto.com, 1 gltjp.com, 1 -gluconote.net, 1 -gluconote.org, 1 -gluconotes.com, 1 -gluconotes.net, 1 -gluconotes.org, 1 glue.tk, 1 gluechapter.ga, 1 glueck-im-norden.de, 1 @@ -62691,6 +62663,7 @@ go889w.com, 1 goabase.com, 1 goabase.net, 1 goaddress.co.ke, 1 +goagu.top, 1 goaheadireland.ie, 1 goalgrass.com, 1 goalswizard.com, 1 @@ -62705,7 +62678,6 @@ goatbots.com, 1 goathub.io, 0 goatlord.tk, 1 goatstore.ca, 1 -goaudits.com, 1 gobarrelroll.com, 1 gobebra.com, 1 gobeline.com, 1 @@ -62716,7 +62688,6 @@ goblintears.com, 1 gobookmart.com, 1 gobouncy.co.uk, 1 gobouncy.com, 1 -gobox.pt, 1 gobus.ee, 1 gobytedesign.uk, 1 gocar.ie, 1 @@ -62817,9 +62788,9 @@ goetzinger-web.de, 1 goexam.net, 0 gofabcnc.com, 1 gofelix.de, 1 +goffertpraat.nl, 1 gofigure.fr, 0 gofile.link, 1 -gofin.fr, 1 goflix.cf, 1 goflo.net, 1 gofobo.com, 1 @@ -62831,6 +62802,7 @@ gofriends.cf, 1 gofuel.ae, 1 gofundhourly.tk, 1 gofundme.com, 1 +gogalactic.ai, 1 goge.ml, 1 gogebic.gov, 1 gogetssl.com, 0 @@ -62873,7 +62845,6 @@ gokgids.nl, 1 gokhankesici.com, 1 gokkastenstip.nl, 1 gokmenguresci.com, 1 -gokon.se, 0 goksu.in, 1 goktoday.com, 1 gokyrgyzstan.com, 1 @@ -62917,7 +62888,7 @@ goldendogs.tk, 1 goldeneggs.club, 1 goldeneyesantafe.com, 1 goldenfashion.co.za, 1 -goldengatexpress.org, 1 +goldenfawz.com, 1 goldenglow.fans, 1 goldenhillsoftware.com, 1 goldenhilltower.com, 1 @@ -63103,6 +63074,7 @@ good-linux.cf, 1 good-luck3500.ga, 1 good-wishes-4-u.ga, 1 gooday.life, 1 +goodbalancefeature.com, 1 goodbeast.com, 1 goodbits.tech, 1 goodbriar.com, 1 @@ -63110,7 +63082,6 @@ goodchoiceflowers.com, 1 gooddatingsites.ml, 1 gooddayatwork.co.uk, 1 gooddomain.co, 1 -gooddomain.com, 1 gooddomainna.me, 1 goodearth.com.tw, 1 goodees.com, 1 @@ -63118,6 +63089,7 @@ goodenglish.ga, 1 goodesign.su, 1 goodfeatherfarms.com, 1 goodfeels.net, 1 +goodfolks.ai, 1 goodfoodrussia.com, 1 goodfundsgateway.com, 1 goodgame.ruhr, 1 @@ -63156,6 +63128,7 @@ goodsync.com, 1 goodtasteofhome.com, 1 goodtea.com, 1 goodth.ink, 1 +goodtls.com, 1 goodtotell.nl, 1 goodtrader.tk, 1 goodtrip.kr, 1 @@ -63214,7 +63187,6 @@ gopass-dev.com, 1 gopass.health, 1 gopher.tk, 1 gopherdata.net, 1 -gophersland.com, 1 gophoto.it, 1 gophouse.org, 1 gopigment.com, 1 @@ -63327,6 +63299,7 @@ gospelcologne.de, 1 gospeldesign.tk, 1 gospelidea.com, 1 gospellifewc.com, 1 +gospelmusicstreams.com, 1 gospelofthekingdom.com, 1 gospelstreamingsermons.com, 1 gospelunited.tk, 1 @@ -63436,6 +63409,7 @@ gourmetfestival.de, 1 gourmetspalencia.com, 1 gourmetstars.cz, 1 gourmetvitamins.ga, 1 +gourmetwitch.org, 1 gousto.co.uk, 1 goutsmits-tegelwerken.nl, 1 gouwdata.nl, 0 @@ -63496,6 +63470,7 @@ gp-engineering.se, 1 gp-lightstone.de, 1 gpalabs.com, 1 gpbdev.ru, 1 +gpc.work, 1 gpccp.cc, 0 gpcmicro.com, 1 gpcp.org, 1 @@ -63548,6 +63523,7 @@ gptunnel.kz, 1 gptunnel.ru, 1 gpu.nu, 1 gpupods.cloud, 1 +gpuserver.kz, 1 gpwatimes.org, 1 gpwih.com, 1 gpwmd-portal.org, 1 @@ -63652,6 +63628,7 @@ grahamedgecombe.com, 1 grahamfamilydentalwy.com, 0 grahamleeonline.com, 1 grahamsmith.tech, 1 +grahamstevenson.me.uk, 1 graide.io, 1 grailians.com, 1 grailify.com, 1 @@ -63660,7 +63637,6 @@ grain-staging.co, 0 grain.com, 0 graine-de-cafe.com, 1 graingert.co.uk, 1 -graliv.net, 0 grallersdegegants.tk, 1 grama.pro, 1 gramati.com.br, 1 @@ -63672,6 +63648,7 @@ gramlee.com, 1 grammar.hu, 1 grammarcheck.net, 1 grammarhouse.me, 0 +grammaroftheshot.com, 1 grammofono.gr, 1 grampage.ru, 1 gramtarang.org.in, 1 @@ -63789,7 +63766,6 @@ granttwpstclairmi.gov, 1 granulate.io, 1 grape33.com, 1 grapee.jp, 1 -grapeintentions.com, 1 grapevine.is, 1 graph.org, 1 graphe.gq, 1 @@ -63831,7 +63807,6 @@ grass-haus.de, 1 grass.markets, 1 grassau.com, 1 grassberry.in, 1 -grasscity.com, 0 grasshoppervape.com, 1 grasski.net, 0 grasslaketownship.gov, 1 @@ -63885,6 +63860,7 @@ gravityformspdfextended.com, 1 gravityinvestments.com, 1 gravitylab.fr, 0 gravityledger.com, 1 +gravitynode.ovh, 1 gravitypdf.com, 1 gravityresearchgroup.cf, 1 gravityresearchgroup.ga, 1 @@ -63895,7 +63871,7 @@ grawe-blog.at, 1 gray.network, 1 grayarrow.com, 1 graycat.ml, 1 -graydaze.com, 1 +graydaze.com, 0 grayduck.mn, 1 grayhatter.com, 1 grayingrainbows.com, 1 @@ -63949,7 +63925,6 @@ greatgiftidea.com, 1 greatgooglymoogly.tk, 1 greathairtransplants.com, 1 greathillpartners.com, 1 -greatlakelocksmiths.co.nz, 1 greatlakesdatastream.ca, 1 greatlakesden.net, 1 greatlakesstone.com, 1 @@ -64023,6 +63998,7 @@ greenbaytechsupport.com, 1 greenbrickgroup.com, 1 greenburghny.gov, 1 greencapital.gent, 1 +greencarbon.kr, 1 greencbd.com, 1 greencocktail.ga, 1 greencoconutresort.cf, 1 @@ -64184,7 +64160,6 @@ gregoryrealestategroup.com, 1 gregorywiest.com, 1 gregpierson.com, 0 gregproffit.com, 1 -gregtutors.com, 1 greizer.tk, 1 grekiskagudar.tk, 1 grekos.com.pl, 1 @@ -64206,7 +64181,6 @@ grenoblepartners.com, 1 grenti.eu, 1 grenzach.com, 1 grepable.com, 1 -grepular.com, 1 gresak.io, 0 greshamhistorical.org, 1 gresrewop.ca, 1 @@ -64274,7 +64248,6 @@ griffin.com, 1 griffinguthrie.com, 1 griffinsrfc.tk, 1 griffithobs.org, 1 -griffithobservatory.org, 1 griffonwise.com, 1 griffophotography.tk, 1 grifomarchetti.com, 1 @@ -64285,7 +64258,7 @@ grigo.tk, 1 grigorev.tk, 1 grijalba.tk, 1 grijpskerk500.tk, 1 -grilehub.ro, 1 +grilehub.ro, 0 grillboxtaxi.de, 1 grillen-darf-nicht-gesund-sein.de, 1 grillfocused.com, 1 @@ -64403,12 +64376,10 @@ ground-control.de, 1 groundball.tk, 1 groundcaresolutionsllc.com, 1 groundfm.tk, 1 -groundjerusalem.com, 1 groundmc.net, 1 groundsdirect.com, 1 groundspan.com, 1 groundthumpinmotors.com, 1 -group-digitcom.com, 1 group14.technology, 1 group4layers.net, 1 groupama.hu, 1 @@ -64435,6 +64406,7 @@ groupeh4.com, 1 groupeleriverain.com, 1 groupeleven.com, 0 groupensd.com, 1 +groupeperrier.com, 0 grouperacinecotedesbar.fr, 1 groupescr.fr, 0 groupghistelinck-cars.be, 1 @@ -64480,10 +64452,8 @@ growitsecure.com, 1 growledlamp.fr, 1 growme.gq, 1 growth-rocket.com, 1 -growth.design, 1 growthagent.com, 1 growthandrenewal.ca, 1 -growthauction.com, 1 growthbutton.in, 1 growthlab.com.my, 1 growthoutpatient.com, 1 @@ -64492,6 +64462,7 @@ growthservicesinc.com, 0 growthsimulationest.ga, 1 growthtoysers.ga, 1 growthtoysest.ga, 1 +growthwheel.net, 1 growy.ch, 0 grozdanov.tk, 1 grozny-news.net, 1 @@ -64554,6 +64525,7 @@ grunwaldzki.center, 1 grupatvogzivota.tk, 1 grupcarles.com, 1 grupdedansa.tk, 1 +grupdigital.com, 1 gruphepsi.tk, 1 grupo-famia.tk, 1 grupo-rbd.com, 1 @@ -64582,6 +64554,7 @@ grupokls.com, 1 grupolegalsgf.com, 1 grupomacroex.com, 1 grupomanquecura.tk, 1 +grupomazzucco.com, 1 grupomedlegal.com, 1 grupomfn.com.br, 1 grupomonti.com.ar, 1 @@ -64592,11 +64565,11 @@ grupoparco.com, 1 grupopilau.com.br, 1 grupoproabienesraices.com.mx, 1 grupopronto.com.br, 1 +gruporecovery.com, 1 gruporesult.com.br, 1 grupos.cf, 1 gruposanjose.tk, 1 gruposousa.pt, 1 -grupotorivac.com, 1 grupovendap.com, 1 grupovisabeira.com, 1 gruppa.ml, 1 @@ -64605,7 +64578,7 @@ gruppakolibri.ml, 1 gruppe-casablanca.tk, 1 gruppe.schwarz, 1 grupporigoni.com, 1 -grupposanmarco.eu, 0 +grupposanmarco.eu, 1 grupposiciliaviola.tk, 1 gruppotac.com, 1 gruppouna.it, 1 @@ -64613,7 +64586,7 @@ grupxaloc.cat, 0 grurez.com, 1 gruslic.org.mx, 1 gruveo.com, 1 -gruver.de, 1 +gruver.de, 0 gruzchiki.ml, 1 gruzchiki74.tk, 1 gruzinfo.tk, 1 @@ -64665,6 +64638,7 @@ gsmsolutions.co.rs, 1 gsmtool.tk, 1 gsmvermist.tk, 1 gsp.com, 1 +gspann.com, 1 gspcreations.com, 1 gspilar.tk, 1 gsplast.com, 1 @@ -64672,6 +64646,7 @@ gsrank.org, 1 gsrc.io, 1 gss.ind.br, 1 gstackrankers.com, 1 +gstcalc.nz, 1 gstehlik.com, 1 gstrans.bg, 1 gsv.dk, 1 @@ -64727,6 +64702,8 @@ gtsb.io, 1 gtslotcars.com, 1 gtsoftware.gr, 1 gtupgrade.eu, 1 +gtw0.mx, 1 +gtw0.org, 1 gtwaction.org, 1 gtxmail.de, 1 gtxthere.tk, 1 @@ -64742,6 +64719,7 @@ guadix.es, 1 guajars.cl, 1 gualanexteriorremodeling.com, 1 guamcourts.gov, 1 +guanggaonet.com, 1 guangjiangk.com, 1 guanquan.com, 1 guanwangquanji.com, 1 @@ -64777,6 +64755,7 @@ guarever.tk, 1 guarrato.tk, 1 guategmala.ga, 1 guateradio.tk, 1 +guatx.com, 1 guatzessen.at, 1 guayaquil-consort.tk, 1 gubagoo.com, 1 @@ -64869,6 +64848,7 @@ guiaturisticanuevayork.com, 1 guichetunique-pl.org, 1 guid2steamid.pw, 1 guidaditalia.com, 1 +guidaev.com, 1 guidanceetbienetre.com, 1 guidanceflammejumelle.com, 1 guidaturisticavigevano.it, 1 @@ -64918,9 +64898,10 @@ guilhom.com, 1 guillaume-briand.fr, 1 guillaume-simonet.com, 1 guillaumechirache.com, 1 +guillaumechirache.fr, 1 guillaumecote.me, 1 guillaumematheron.fr, 1 -guillaumesworld.com, 1 +guillaumesworld.com, 0 guille.tk, 1 guillemagullo.tk, 1 guillembosch.es, 1 @@ -64931,6 +64912,7 @@ guiltyfox.ca, 1 guiltyfox.com, 1 guim.co.uk, 1 guinaliu.tk, 1 +guinder.com.br, 1 guineapig101.com, 1 guineapigmustach.es, 1 guinel-johnson.fr, 0 @@ -64957,11 +64939,11 @@ guldhaug.org, 1 guldkorn.dk, 1 gule.loan, 1 gulenbase.no, 1 +gulfbreezefence.com, 1 gulfcoastfirm.com, 1 gulfcoastwaterauthoritytx.gov, 1 gulfdinar.com, 1 gulffamilyclinic.com, 1 -gulfjobsy.com, 1 gulfstream.ru, 0 gulfvestors.com, 1 gulkhannasir.tk, 1 @@ -65027,7 +65009,6 @@ guralptechnic.com, 1 gurbetilan.com, 0 guri.ml, 1 gurkantuna.com, 1 -gurkhatech.com, 1 gurl.eu.org, 1 gurleyal.gov, 1 gurmat.info, 1 @@ -65039,10 +65020,10 @@ guruarchive.com, 1 gurugamer.com, 1 gurumobile.tk, 1 gurunanakdarvar.tk, 1 -gurunpa.com, 1 gururi.com, 1 gurusewa.net, 1 guruworld.tk, 1 +gus-erp.com, 1 gus.ca, 1 gus.expert, 1 gus.insure, 1 @@ -65076,7 +65057,7 @@ gustimaulan.com, 1 gustinetx.gov, 1 gusto.com, 1 gustoclean.com.au, 1 -gustom.io, 0 +gustom.io, 1 gusuraman.tk, 1 gut-aue.com, 1 gute-nachricht.org, 1 @@ -65141,7 +65122,6 @@ guzun.com, 1 gv-neumann.de, 1 gv-salto.nl, 1 gvaa.nl, 1 -gvarliani.com, 1 gvatas.in, 1 gvc-it.tk, 1 gvdgroup.tk, 1 @@ -65182,7 +65162,6 @@ gwmean.tk, 1 gwnmarketing.com, 1 gworkspace.lt, 1 gworld.cf, 1 -gwrr.com, 1 gwsquickwash.com, 1 gwy15.com, 1 gxbank.my, 1 @@ -65192,7 +65171,6 @@ gxiangsoft.com, 1 gxm5.com, 1 gxmyqy.net, 1 gyaanprasaar.tk, 1 -gyan365.com, 1 gyannews.ga, 1 gyas.nl, 1 gybagardlin.tk, 1 @@ -65278,10 +65256,8 @@ h-gac.gov, 1 h-i-ambacht.nl, 1 h-jo.net, 1 h-maxton.de, 1 -h-nikonam.ir, 1 h-node.org, 1 h-server.myfirewall.org, 1 -h-u.social, 1 h-var.com, 1 h.fo, 1 h.hk.cn, 1 @@ -65299,18 +65275,15 @@ h11.io, 1 h11.moe, 1 h18.nl, 1 h1ctf.com, 1 -h2.com.sg, 1 h2.ee, 1 h2020faros.eu, 1 h24.org, 1 h2b.cz, 1 -h2breeze.com, 1 h2cclipboard.com, 1 h2cdn.cloud, 1 h2gonc.gov, 1 h2hc.email, 1 h2insaat.com, 1 -h2ocoin.org, 1 h2ole.com, 1 h2omusic.tk, 1 h2oracing.it, 1 @@ -65319,10 +65292,8 @@ h2products.co.uk, 1 h2rul.eu, 1 h36533.com, 1 h3artbl33d.nl, 1 -h3thai.online, 1 h3x.jp, 0 h3z.jp, 1 -h4k.online, 1 h4kr.io, 1 h51365.com, 1 h5197.co, 1 @@ -65382,7 +65353,6 @@ haberer.me, 1 haberizma.com, 1 haberlandconsulting.com, 1 haberlanddesign.com, 1 -haberlanddigital.com, 1 haberlandgroup.com, 1 haberlandpartners.com, 1 habermatik.net, 1 @@ -65429,7 +65399,6 @@ hackablestuff.cf, 1 hackadena.com, 1 hackamac.tk, 1 hackathontwjr.ml, 0 -hackatruck.com.br, 1 hackbarth.guru, 1 hackbeil.name, 1 hackbubble.me, 1 @@ -65438,10 +65407,9 @@ hackclubmauritius.nl, 1 hackcraft.net, 1 hackdown.eu.org, 1 hackdown.tech, 1 -hackdra.com, 1 hackeado.tk, 1 hacked.be, 1 -hacked.com, 1 +hacked.com, 0 hackedaf.com, 1 hackendoz.com, 1 hackengine.ga, 1 @@ -65515,6 +65483,7 @@ hacoas.com, 1 hacp.gov, 1 hacquemand.be, 1 hacquemand.co, 1 +hacquemand.com, 1 hacsapp.co.uk, 1 hadaly.fr, 1 hadan-it.com, 0 @@ -65539,6 +65508,7 @@ hadopi.fr, 1 hadotifpc.in, 1 hadouk.in, 1 hadouken.tk, 1 +hadow.fr, 1 hadrienbbt.fr, 1 hadroncms.com, 1 hadrons.org, 1 @@ -65561,6 +65531,7 @@ hafeoz.com, 1 haferman.net, 1 haferman.org, 1 hafiz-alquran.com, 1 +hafiz.uz, 1 hafizalquran.com, 1 hafizkadir.tk, 1 hafling.net, 1 @@ -65662,7 +65633,7 @@ haizum.pro, 1 hajekdavid.cz, 1 hajekj.cz, 1 hajekj.net, 1 -hajery.com, 0 +hajery.com, 1 hak-lab.com, 1 hak-zona.tk, 1 hak.edu.ee, 1 @@ -65717,7 +65688,6 @@ halfbeastest.ga, 1 halff.com, 1 halfhosting.de, 1 halfmba.com, 1 -halfmoonbayhighschool.com, 1 halfords.com, 0 halfords.ie, 0 halfreal.tk, 1 @@ -65735,7 +65705,6 @@ halilova.tk, 1 halilweb.tk, 1 halilyagcioglu.tk, 1 halimjr.com, 0 -halkakoop.com, 1 halkbank.mk, 1 halkegitimkurs.com, 1 halkoyu.org, 1 @@ -65803,7 +65772,6 @@ hamburgcode.com, 1 hamburger-reinigung.de, 1 hamburger-umzuege.de, 1 hamburger-wirtschaft.de, 1 -hamburgerbesteld.nl, 1 hamburgerland.tk, 1 hamburgerwithcheese.com, 1 hamdenct.gov, 1 @@ -66092,7 +66060,6 @@ happy-space.tk, 1 happy-wans.com, 1 happy.academy, 1 happy2hub.eu, 1 -happy5thwheelers.com, 1 happyagain.se, 1 happyandrelaxeddogs.com, 1 happyanimalsshop.com, 1 @@ -66125,7 +66092,6 @@ happyfuture.tk, 1 happygadget.me, 1 happygardencenter.com.br, 1 happygeek.com, 1 -happygiftapp.cl, 1 happygiftapp.com, 1 happygreats.ml, 1 happygreats.tk, 1 @@ -66210,7 +66176,6 @@ hardeecountyfl.gov, 1 hardeeflvotes.gov, 1 hardeman.nu, 0 hardenburghny.gov, 1 -hardened.com.br, 1 hardenize.com, 1 hardesec.com, 1 hardfloorcleaninglondon.co.uk, 1 @@ -66231,7 +66196,6 @@ hardis-group.com, 0 hardjump.tk, 1 hardknocksacademy.org, 1 hardmetal.tk, 1 -hardmine.ru, 1 hardnet.cz, 1 hardnetsoft.com, 1 hardnode.org, 1 @@ -66277,6 +66241,7 @@ harishgoyal.tk, 1 harithaayurveda.com, 1 haritsa.co.id, 1 hariz.ga, 1 +harizalan.hu, 1 harlan.cc, 1 harlem-mt.gov, 1 harlemeverafter.com, 1 @@ -66287,7 +66252,7 @@ harlingentx.gov, 1 harlor.de, 1 harmandinjuryhub.scot, 1 harmfarm.nl, 1 -harmim.cz, 1 +harmim.cz, 0 harmlesspeopleers.ga, 1 harmlesspeopleest.ga, 1 harmonicasireland.com, 0 @@ -66318,7 +66283,6 @@ haroldkip.nl, 1 haroldkramer.tk, 1 haroldsharpe.com, 1 harp.gov, 1 -harpcoin.co, 1 harpen.de, 1 harperreed.com, 1 harpersvilleal.gov, 1 @@ -66375,7 +66339,6 @@ harryxxjohnson.ga, 1 harryyy.me, 0 harshani.ga, 1 harshee.ml, 1 -harshilkhimasia.com, 1 hart.amsterdam, 1 hartan.to, 1 hartcountyky.gov, 1 @@ -66391,6 +66354,7 @@ hartlieb.me, 1 hartmancpa.com, 1 hartmann-hartmann.eu, 1 hartmannindustries.com, 1 +hartonfilm.com, 1 hartsfieldrock.tk, 1 hartslagnu.nl, 1 hartstart.info, 1 @@ -66428,7 +66392,6 @@ has.report, 1 has.work, 1 hasabig.wang, 1 hasalittle.wang, 1 -hasandurmus.com, 1 hasankayra04.com, 1 hasas-automatizari.ro, 1 hasas-cnc.ro, 1 @@ -66457,7 +66420,7 @@ hashinteractive.com, 0 hashish.net, 1 hashiura.jp, 1 hashmart.io, 1 -hashnode.com, 0 +hashnode.com, 1 hashplex.com, 1 hashru.nl, 1 hashsters.com, 1 @@ -66582,7 +66545,6 @@ havasformula.com, 1 havasuinsurance.com, 1 havasutacohacienda.com, 1 have-it.tk, 1 -have.jp, 1 haveabounce.co.uk, 1 havedicewillsave.com, 1 haveforeningen-enghaven.dk, 1 @@ -66650,9 +66612,9 @@ haydenbleasel.com, 0 haydenfranklin.com, 1 haydenjames.io, 1 haydockusedtrucks.co.uk, 1 -hayesfusion.com, 1 hayestwpclaremi.gov, 1 hayestwpotsegomi.gov, 1 +hayfit.id, 1 hayfordoleary.com, 1 hayhurstrealestate.com, 0 hayl.me.uk, 1 @@ -66757,6 +66719,7 @@ hcqmeta.com, 1 hcr.io, 0 hcscrusaders.com, 1 hcsoffshore.com, 1 +hcst.be, 1 hcstrache.at, 1 hctegelhandel.tk, 1 hctr002.tk, 1 @@ -66769,7 +66732,6 @@ hd-olimpo.club, 1 hd-outillage.com, 1 hd4arab.tk, 1 hd6729.com, 1 -hd6957.com, 1 hd9721.com, 1 hdaccess.info, 1 hdbigass.com, 1 @@ -66781,6 +66743,7 @@ hdcamsites.com, 1 hdcoupler.com.au, 1 hddrecovery.net.au, 1 hdeaves.uk, 1 +hdentertainment.de, 1 hdevent.net, 1 hdfreex.com, 1 hdgrannytube.com, 1 @@ -66813,6 +66776,7 @@ hdsexxx.net, 1 hdsi.io, 1 hdsinemax.com, 0 hdspot.org, 1 +hdsr.nl, 1 hdtech.com.pl, 1 hdtvblogsers.ga, 1 hdtvblogsest.ga, 1 @@ -66857,7 +66821,6 @@ headsmackskatepark.tk, 1 headspaequipment.com, 1 headstartkernow.org.uk, 1 headstrong.de, 1 -headsuphealth.com, 1 headtopics.com, 1 headuser.org, 1 headwall-hosting.com, 1 @@ -66865,7 +66828,6 @@ headwayapp.co, 1 healdsburg.gov, 1 healinfoods.com, 1 healingmatters.ca, 1 -healingriverscounseling.net, 0 healingthenaturalway.cf, 1 healingthenaturalway.ga, 1 healingthenaturalway.gq, 1 @@ -67081,7 +67043,6 @@ healthmuscle.tk, 1 healthmystical.ga, 1 healthnano.ga, 1 healthnational.ga, 1 -healthnetworkcollective.com, 1 healthnobel.ga, 1 healthnorman.tk, 1 healthnorthamerican.ga, 1 @@ -67179,7 +67140,6 @@ healthvariety.ga, 1 healthvariety.tk, 1 healthveedersburg.tk, 1 healthvision.ml, 1 -healthvitalzone.com, 1 healthwarior.tk, 1 healthwausau.tk, 1 healthwealthtime.org, 1 @@ -67195,7 +67155,6 @@ healthyankee.ga, 1 healthyarizona.tk, 1 healthyarkansas.tk, 1 healthybeauty365bn.com, 1 -healthybrewhub.com, 1 healthyburn.tk, 1 healthychoices.tk, 1 healthyclinic.tk, 1 @@ -67248,6 +67207,7 @@ hearingbydesign.co.nz, 1 hearkener.com, 1 heart-cartoons.tk, 1 heart-valve-surgery.com, 1 +heartalyze.com, 1 heartbeat24.de, 1 heartbound.wiki, 1 heartcard.tk, 1 @@ -67293,7 +67253,6 @@ heartyapp.tw, 1 heartymail.com, 1 heaslip-aluminium-smelter-engineering.com, 1 heat-press.com.au, 1 -heat-ua.pt, 1 heat.gov, 1 heatairservices.com, 0 heatbyte.info, 1 @@ -67385,6 +67344,7 @@ heeftmijnwebsitehttpsnodig.nl, 1 heeler.red, 1 heello.es, 1 heerenveen.nl, 1 +heerenveenlokaal.nl, 1 heerlijkland.com, 1 heerlijkland.nl, 1 heesenyachts.com, 0 @@ -67412,7 +67372,6 @@ hehome.xyz, 0 heiaheia.com, 1 heibel.tk, 1 heibobo.cf, 1 -heibobo.com, 1 heibobo.ga, 1 heibobo.gq, 1 heibobo.ml, 1 @@ -67470,7 +67429,6 @@ heinop.de, 1 heinopeters.eu, 1 heinrich1.de, 1 heinrich5991.de, 1 -heins.info, 1 heins.one, 1 heinzdekat.tk, 1 heinzencastellano.tk, 1 @@ -67480,7 +67438,6 @@ heiri-web.ch, 1 heirportal.com, 1 heise.cf, 1 heise.ml, 1 -heisenberg.co, 1 heishop.com.br, 1 heishop.mx, 1 heist-clan.tk, 1 @@ -67588,6 +67545,7 @@ heliumtech.tk, 1 heliwing.com, 1 helix.am, 1 helixagencyservices.com, 1 +helixnebula.tech, 1 helixsense.com, 1 helixternak.com, 1 helkyn.eu, 1 @@ -67883,7 +67841,6 @@ her.porn, 1 her123.win, 1 herald-review.com, 1 herald.ga, 1 -heraldcourier.com, 1 heraldik-wiki.de, 1 heraldmakassar.com, 1 heratnews.tk, 1 @@ -67914,6 +67871,7 @@ herboristerie-dufayel.fr, 1 herbosia.fr, 1 herbreathonglass.tk, 1 herbsociety.org, 1 +herbstgroup.io, 1 herbsupplements.co.uk, 1 herbweb.net, 1 herbweb.org, 1 @@ -67967,6 +67925,7 @@ hermes-servizi.it, 1 hermesawards.com, 1 hermesoft.at, 1 hermessenger.fr, 1 +hermetas.org, 1 hermetien.tk, 1 hermietkreeft.site, 0 herminghaus24.de, 1 @@ -68002,7 +67961,6 @@ heromuster.com, 1 heronhallacademy.org.uk, 1 heroofkings.com, 1 heroplusgroup.com, 0 -heroxin.com, 1 herpderpderpderp.com, 1 herpes-no.com, 1 herq.top, 0 @@ -68050,6 +68008,7 @@ hesabtube.com, 1 hesama.tk, 1 hesaplama.net, 1 hesapozeti.com.tr, 1 +hesbenergie.be, 1 hescos.tk, 1 hesgotrizz.com, 1 heshamelsawah.clinic, 1 @@ -68062,7 +68021,7 @@ hessen.de, 1 hessen.social, 1 hessenheim.tk, 1 hessentoday.de, 1 -hessis.eu, 1 +hessis.eu, 0 hessis.xyz, 1 hessischer-landtag.de, 1 hesslag.com, 1 @@ -68096,6 +68055,7 @@ hetushu.com, 1 hetveurtheater.nl, 1 hetvezercsarda.hu, 1 hetwalhalla.nl, 1 +hetwebsitebedrijf.nl, 1 heureka2.com, 1 heute-kaufen.de, 1 heute.training, 1 @@ -68161,7 +68121,6 @@ hey-staging.com, 1 hey.com, 1 hey.pw, 1 heybilly.io, 1 -heyblogging.com, 0 heybookmark.ga, 1 heybookmark.gq, 1 heybritney.tk, 1 @@ -68224,7 +68183,6 @@ hgvnet.de, 1 hgwld.com, 1 hgyo.me, 1 hgyoseo.com, 1 -hgzw.com, 0 hh-host.de, 1 hh-massage.de, 1 hh-medic.com, 1 @@ -68308,6 +68266,7 @@ hide.me, 1 hideallip.com, 1 hideandseek.org, 1 hidedd.com, 1 +hidelife.ru, 1 hidemee.com, 1 hidemyipaddress.com, 1 hideouswebsite.com, 1 @@ -68370,6 +68329,7 @@ highdonate.tk, 1 higheducation.ml, 1 highend-audiopc.com, 1 highenergy.tk, 1 +highenergymagic.net, 1 higherairspace.eu, 1 higherpress.org, 1 highftp.tk, 1 @@ -68458,6 +68418,7 @@ hilarymundial.tk, 1 hilbertwi.gov, 1 hilde.link, 1 hiledge.com, 1 +hilfe.de, 1 hilfiker.cloud, 1 hilfikernet.ch, 1 hilfikers.com, 1 @@ -68485,6 +68446,7 @@ hillsfarmstays.co.uk, 1 hillshandymate.com, 1 hillside-il.gov, 1 hillsidecustom.com, 1 +hillsidemooloolahvalley.com.au, 1 hillsphotosoc.tk, 1 hillstohome.com, 1 hillstrak.com.au, 1 @@ -68531,13 +68493,11 @@ hindustantimes.ml, 1 hinduworld.tk, 1 hindweb.tk, 1 hinesitecoding.com, 1 -hingehealth.com, 1 hingle.me, 1 hinhanhykhoa.com, 1 hinit.no, 1 hinkel.tk, 1 hinketsujyoshi-no-torisetsu.com, 1 -hinntsai.com, 1 hinotify.io, 1 hinsdaledental.com, 1 hintergedanken.com, 0 @@ -68573,6 +68533,7 @@ hippocamp.io, 1 hippogriffhaven.com, 1 hippogriffhaven.net, 1 hippolini-herold.de, 1 +hiprax.com, 1 hiprosun.com, 1 hips.com, 1 hipstermamaproductions.com, 1 @@ -68674,7 +68635,7 @@ hit.moe, 1 hitchcockcountyne.gov, 1 hitchen.net, 1 hitchens.tk, 1 -hitchhikerslive.com, 1 +hitchhikerslive.com, 0 hitchpin.com, 1 hitchunion.org, 1 hitech-news.ml, 1 @@ -68809,6 +68770,7 @@ hkmap.com, 1 hkmap.net, 1 hkmusz.cn, 1 hknhuisartsen.nl, 1 +hknit.de, 1 hkno.it, 1 hkoreatv.gq, 1 hkp-usa.com, 1 @@ -69199,7 +69161,6 @@ homake.cf, 1 homato.uk, 1 homberg.de, 1 hombresg.net, 1 -homd.xyz, 1 home-design.bg, 1 home-hunts.com, 1 home-insurance-quotes.tk, 1 @@ -69236,6 +69197,7 @@ homeblaster.ga, 1 homebrew.tk, 1 homebrewshop.be, 1 homebrewworm.tk, 1 +homebrookgosnells.com.au, 1 homebuilder.tk, 1 homebutton.tk, 1 homecache.ga, 1 @@ -69436,7 +69398,6 @@ homemadetipsest.ga, 1 homemaintenanceservicesindubai.com, 1 homemarks.ga, 1 homemaster-chita.ru, 0 -homematicblog.de, 0 homemediadb.org, 1 homemember.ga, 1 homemessenger.ga, 1 @@ -69607,7 +69568,6 @@ honeyspot.de, 1 honeysucklerosephotography.com, 1 honeysucklewhite.com, 1 honeytracks.com, 1 -honeyuniversity.net, 1 honeyxlips.com, 1 hong.com.br, 1 hong.io, 1 @@ -69623,7 +69583,6 @@ hongorw.tk, 1 hongosdemexico.tk, 1 honguyensy.tk, 1 hongyun-rent.com, 1 -honigconte.com, 1 honigkuchenpferdeher.de, 1 honk.house, 1 honkai.sr, 1 @@ -69762,7 +69721,7 @@ hornblower.tk, 1 hornburg.io, 1 hornby.com, 1 horneytownbrewing.com, 1 -horngyihyangped.com.tw, 1 +horngyihyangped.com.tw, 0 hornofamerica.com, 1 horntec.at, 1 hornwiesen-grundschule.de, 1 @@ -69779,7 +69738,6 @@ horoscopist.com, 1 horoscopo.ml, 1 horotoday.tk, 1 horovod.im, 1 -horozo.com, 1 horrell.ca, 1 horrendous-servers.com, 1 horror-forum.de, 1 @@ -69788,7 +69746,6 @@ horrorfreaks.tk, 1 horrormovies.gr, 1 horrorserv.com, 1 horrycountysc.gov, 1 -horsa.cc, 1 horsa.io, 1 horsa.xyz, 1 horsebreeding.cf, 1 @@ -69818,6 +69775,7 @@ horvatia.tk, 1 horvatnyelvkonyv.hu, 1 hory.me, 1 horza.org, 1 +hoscad.net, 1 hosch.co.nz, 1 hose.ga, 1 hosen-flicken.de, 1 @@ -69844,7 +69802,6 @@ hospicespringfling.org, 1 hospicewebsite.org, 1 hospicewise.org, 1 hospicjumzory.pl, 1 -hospimedia.fr, 1 hospitable.com, 1 hospitalcmq.com, 1 hospitalcruzvermelha.pt, 1 @@ -69881,7 +69838,6 @@ hostcloud.ml, 1 hostcoz.com, 1 hostcsr.com, 1 hostdns.com, 1 -hosteasy.nl, 0 hosted-power.com, 1 hostedcomments.com, 1 hosteddatabase.in, 1 @@ -69891,6 +69847,7 @@ hostedghost.nl, 1 hostedghost.org, 1 hostedtalkgadget.google.com, 1 hosteko.com, 1 +hostel.brussels, 1 hosteleriauno.es, 1 hostelgeeks.com, 1 hostelio.com, 1 @@ -69917,6 +69874,7 @@ hosting.ua, 0 hostingactive.it, 0 hostingalternative.com, 0 hostingdesignweb.com, 0 +hostingdetails.eu, 1 hostingdirect.nl, 1 hostingdirectory.ga, 1 hostingelite.tk, 1 @@ -70016,19 +69974,16 @@ hotel-rosskopf.it, 1 hotel-valgardena.net, 1 hotel-vipiteno.net, 1 hotel-vivendi.de, 1 -hotel-waldheim.eu, 1 hotel-zurrose.de, 1 hotel3232nyc.com, 1 hotel43.com, 1 hotelandplace.com, 1 -hotelbird.com, 1 hotelbiz.cf, 1 hotelbiz.ga, 1 hotelbiz.gq, 1 hotelbretagne.dk, 1 hotelcharlestonsantateresa.com, 1 hotelcoco.co.uk, 1 -hotelconsulado.com.br, 1 hotelcorporate.codes, 1 hotelcorporatecodes.com, 1 hoteldealsphuket.com, 1 @@ -70047,7 +70002,7 @@ hotelitalia.tk, 1 hotelite.tk, 1 hotelizalde.com, 1 hotelkeihan.co.jp, 1 -hotelkiara.mx, 1 +hotelkentavar.com, 1 hotellamm.it, 1 hotellocaldubai.com, 1 hotelmap.com, 1 @@ -70055,6 +70010,7 @@ hotelmariasas.it, 1 hotelmelograno.eu, 1 hotelmirage-bg.com, 1 hotelnagarkotparadise.tk, 1 +hotelpalotacity.hu, 1 hotelparqcentral.com, 1 hotelpenzance.com, 1 hotelplanner.com, 1 @@ -70081,6 +70037,7 @@ hotelsonline.tk, 1 hotelsrejber.cz, 1 hotelsrit.tk, 1 hotelsthisweekend.com, 1 +hotelstrandparken.dk, 1 hotelsvetaekaterina.com, 1 hotelswithallinclusive.com, 1 hotelswithprivatepool.com, 1 @@ -70090,6 +70047,7 @@ hotelv.com, 0 hotelvalena.com, 1 hotelvillafiorita.com, 1 hotelvisegrad.hu, 1 +hotelwestplonsk.pl, 1 hotelylangylang.com, 1 hotelylangylang.fr, 1 hotelylangylang.re, 1 @@ -70292,7 +70250,6 @@ howarh.com, 0 howcodingworks.com, 1 howdidido.com, 1 howdl.com, 1 -howdoesmycode.work, 1 howdy.fr, 1 howdymassage.com, 1 howeda.de, 1 @@ -70321,10 +70278,10 @@ howsmytls.com, 1 howto-connect.com, 1 howto-outlook.com, 0 howtobehealthy.tk, 1 -howtodesignwebsite.com, 1 howtogeek.com, 1 howtogeekpro.com, 1 howtogosolar.org, 0 +howtohireaiagents.com, 1 howtohomepage.tk, 1 howtomakefriends.tk, 1 howtomanagedevices.com, 1 @@ -70383,7 +70340,6 @@ hpneo-conseil.com, 1 hpnso.com, 1 hprasath.com, 1 hpruehl.de, 1 -hpscb.com, 1 hpsdigital.hu, 1 hpsldc.com, 1 hpsq.io, 1 @@ -70464,7 +70420,7 @@ hrpage.ml, 1 hrpayhub.com, 1 hrprofessionals.tk, 1 hrreporter.com, 1 -hrrpnepal.org, 1 +hrrpnepal.org, 0 hrsa.gov, 1 hrseoservice.com, 1 hrstapps-dev.com, 1 @@ -70568,9 +70524,9 @@ htlball.at, 1 htljobs.at, 1 htlle.at, 1 htm-partners.com, 1 -htmag.co.il, 1 htmainternational.com, 1 htmanager.fr, 1 +htmarketingsolutions.com.au, 1 htmdom.com, 1 html-builder.tk, 1 html-code-generator.com, 1 @@ -70618,6 +70574,7 @@ httpsarnemergan.ml, 1 httpsecured.net, 1 httpsiseasy.com, 1 httpsispisseasy.com, 1 +httpsornot.com, 1 httpsrdr.me, 1 httpsredirector.com, 1 httpssify.com, 1 @@ -70667,7 +70624,6 @@ huanxu.com, 1 huapont.com, 1 huapood.com, 1 huaqian.art, 1 -huarenda.com, 0 huashan.co.uk, 1 huashang.tk, 1 huaskj.com, 1 @@ -70730,7 +70686,7 @@ hudognik.com, 1 hudsonregional.gov, 1 hudsonsolutions.com, 1 hudsonwi.gov, 1 -hudu.com, 1 +hudu.com, 0 huduser.gov, 1 huecomundo.tk, 1 hueffenhardt.de, 1 @@ -71007,6 +70963,7 @@ huonit.com.au, 0 huoyankan.com, 1 huoyou.com, 1 hup.hu, 0 +hupoints.com, 1 hurdafiyatlari.site, 1 hurdaphysio.fi, 1 hurinkazan2020.com, 1 @@ -71112,7 +71069,6 @@ hwnd.io, 1 hwr-barsinghausen.de, 1 hwsw.io, 1 hwvv.nl, 1 -hwy25landscaping.com, 1 hx-sun.com, 1 hx53.de, 1 hx678.cc, 1 @@ -71191,7 +71147,6 @@ hydrosaat.ch, 1 hydroscans.com, 1 hydrosense.click, 1 hydrosila.com, 0 -hydrostor.ca, 1 hydroturbine.info, 0 hydrozen.io, 1 hydrozone.fr, 1 @@ -71338,6 +71293,7 @@ hyundaipartsdeal.com, 1 hyundaisrilanka.lk, 1 hyunjoonkim.net, 1 hyvinvointineuvoja.fi, 1 +hyweene.fr, 1 hyy.chat, 1 hyyen.com, 1 hyyperchat.com, 1 @@ -71421,7 +71377,6 @@ i7.io, 1 i7sas.tk, 1 i88i.gq, 1 i9297.co, 1 -i95dev.com, 0 i9728.co, 1 i9s.in, 1 ia-tools.com, 1 @@ -71546,8 +71501,7 @@ ibb.co.com, 1 ibb.istanbul, 1 ibc.com, 1 ibcfinancial.com, 1 -ibcmed.com, 0 -ibcrage.com, 1 +ibcmed.com, 1 ibdmdb.org, 1 ibe.de, 1 ibec.ie, 1 @@ -71575,11 +71529,9 @@ ibi.mt, 1 ibidyoupeace.com, 1 ibiki-boushi-makura.net, 1 ibilog.net, 1 -ibin.co, 1 ibipoint.com, 1 ibiu.xyz, 0 ibizads.tk, 1 -ibizaluxuryachts.com, 1 ibk.at, 1 iblackfriday.ro, 1 ibles.pl, 1 @@ -71602,7 +71554,7 @@ ibpsrecruitment.co.in, 1 ibq.life, 1 ibra.org.uk, 1 ibrainmedicine.org, 1 -ibrave.nl, 1 +ibrave.nl, 0 ibrom.eu, 1 ibron.co, 0 ibsglobal.co.za, 1 @@ -71615,11 +71567,11 @@ ibuildings.com, 1 ibuildings.nl, 1 ibuildutd.com, 1 ibuki.run, 1 +ibuluxe.com, 1 ibuprofens.gq, 1 iburgs.com, 1 ibutv.com, 1 ibuzz.tk, 1 -ibvv.cz, 1 ibwc.gov, 1 ibwil.com, 1 ibz.be, 1 @@ -71717,12 +71669,10 @@ ichglaubesbackt.de, 1 ichibanfansub.com.br, 1 ichibot.trade, 1 ichibot.vip, 1 -ichigo.university, 1 ichigoproduction.kr, 1 ichijoh.co.jp, 1 ichisound.ml, 1 ichitaka.tk, 1 -ichitaso.com, 1 ichizenn.com, 1 ichkannmitgestalten.de, 1 ichmt.org, 1 @@ -71765,7 +71715,6 @@ icom.edu, 1 icomputeconsulting.com, 1 icomuk.co.uk, 1 icon-programming.tk, 1 -iconbuild.com, 1 iconcope.org, 1 icone-one.fr, 1 iconexperience.com, 1 @@ -71788,8 +71737,10 @@ icorlando.org, 1 icounseling.com, 1 icountnm.gov, 1 icowhitepapers.co, 1 +icpa-banyuwangi.ac.id, 1 icpamerica.com, 1 icpc2016.in.th, 1 +icpchue.com, 1 icpchue.xyz, 1 icpcnj.org, 1 icq-project.net, 1 @@ -71947,13 +71898,13 @@ idempiere.org, 1 iden-tt.com, 1 iden-tt.net, 1 iden-tt.org, 1 +idenef.co.jp, 1 idenfit.com, 1 idensys.nl, 1 ident-clinic.be, 1 ident4u.de, 1 identassist.com, 1 identeco.de, 1 -identifyme.net, 1 identifytag.com, 1 identigraf.center, 1 identikpkh.com, 1 @@ -72053,6 +72004,7 @@ ieap.it, 1 iear.be, 1 iear.nl, 1 iec-telecom.com, 1 +iedc.ie, 1 iedereenaanzet.nl, 1 iedr.ie, 1 ieduex.com, 1 @@ -72075,7 +72027,6 @@ ienohikari-koubo.com, 1 ieomidi.com, 1 iepaiement.fr, 1 iepanywhere.com, 1 -ierecordings.com, 1 ieros.it, 1 iesledzkarjeru.lv, 1 iesm.lk, 1 @@ -72162,6 +72113,7 @@ ig.fr, 1 ig.me, 1 iga-semi.jp, 1 igame.ml, 1 +igaming.express, 1 igamingaffiliateprograms.com, 1 igamingdirectory.com, 1 igamingnyheder.dk, 1 @@ -72173,6 +72125,7 @@ igc-market.ru, 1 igc.in.th, 1 igcomputers.bg, 1 igdb.com, 1 +igeeksblog.com, 1 igen.fr, 1 igenuinebeauty.co.jp, 1 igforum.tk, 1 @@ -72182,10 +72135,11 @@ igglabs.com, 1 iggprivate.com, 1 iggsoft.com, 1 iggsoftware.com, 1 -iggyz.com, 1 igi-2.com, 1 +igibee.pl, 1 igiftcards.de, 1 igiftcards.nl, 1 +igig.ie, 1 igimusic.com, 0 igiugig.gov, 1 igkabel.cf, 1 @@ -72208,6 +72162,7 @@ igmus.org, 1 ign-proprete.fr, 1 ignace72.eu, 1 ignacjanskiednimlodziezy.pl, 1 +ignasiesteve.com, 1 ignat-mag.com, 1 ignat-torcov.tk, 1 ignatij.tk, 1 @@ -72335,7 +72290,7 @@ iieccpora.org, 1 iiet.pl, 0 iig-order.com, 1 iihr.res.in, 1 -iii-coalition.us, 0 +iii-coalition.us, 1 iiid.work, 1 iiii.gq, 1 iiii.loan, 1 @@ -72343,6 +72298,7 @@ iiij.ml, 1 iiinhoj.com, 1 iiipublishing.com, 1 iiit.pl, 1 +iiitint.online, 1 iinehp.com, 1 iinf.in, 1 iinix.com, 1 @@ -72357,7 +72313,7 @@ iiservices.org, 1 iisjy.cn, 1 iispeed.com, 1 iisuss.gq, 1 -iita.org, 1 +iita.org, 0 iitbmonash.org, 1 iitcr.ca, 1 iitcr.com, 1 @@ -72390,6 +72346,7 @@ ikall.com, 1 ikama.cz, 1 ikara.social, 1 ikari-san.tk, 1 +ikaria.com.gr, 1 ikaros.tk, 1 ikarus-itkurs.de, 1 ikazumitsu.tk, 1 @@ -72430,6 +72387,7 @@ ikmx.net, 1 iknowd.org, 1 iknowthatgirl.com, 1 iknowthatgirlpremium.com, 1 +ikoreg.nl, 1 ikra24.in.ua, 1 ikrab.club, 1 iks.moe, 1 @@ -72444,6 +72402,7 @@ ikvts.de, 1 ikwildjworden.com, 1 ikwileendomein.tk, 1 ikx.me, 1 +ikymomo.com, 1 ikzoekeengoedkopeauto.nl, 1 ikzoektim.nl, 1 il12thcourt.gov, 1 @@ -72532,9 +72491,8 @@ illimitmail.com, 1 illinitechservice.com, 0 illinoiscaselaw.com, 1 illinoiscourtscommission.gov, 1 -illinoiseagle.com, 0 illinoishealth.tk, 1 -illinoisschools.us, 0 +illinoisschools.us, 1 illinoistitlesearch.com, 1 illiweb.com, 1 illjinx.info, 1 @@ -72640,7 +72598,6 @@ image.hosting, 1 image.tf, 1 image4arab.tk, 1 imagealbums.tk, 1 -imagebin.ca, 1 imagecom.tk, 1 imagecurl.com, 0 imagelr.com, 1 @@ -72672,6 +72629,7 @@ imaginenewcastle.net.au, 1 imagineokla.gov, 1 imaginescape.tk, 1 imaginethefloor.tk, 1 +imaginethissound.com, 1 imagingstudio.co.uk, 0 imagisphe.re, 1 imajjeans.com, 1 @@ -72730,7 +72688,6 @@ imedi.it, 1 imediabay.com, 1 imediafly.com, 1 imediato.pt, 1 -imediatoonline.com, 1 imena-znachenie.ru, 1 imenalfa.com, 1 imenieto.com, 1 @@ -72738,7 +72695,6 @@ imeria.tk, 1 imerys-mineraux-decoratifs.com, 1 imesh-light.tk, 1 imex-dtp.com, 1 -imfacademy.com, 1 imforza.com, 0 img.ovh, 1 imgaa.com, 1 @@ -72771,7 +72727,7 @@ imisa.com.mx, 1 imisto.net, 1 imitationjewelry.tk, 1 imitza.com, 0 -imjconnect.co.uk, 1 +imjason.hk, 1 imjo.in, 1 imjosepho.lol, 1 imjustcreative.com, 1 @@ -72916,7 +72872,6 @@ immtel.co, 1 immtel.com, 1 immune.cf, 1 immunetolerance.org, 1 -immuniweb.com, 1 immunoboost.be, 1 immunowell-jcv-portal.com, 1 immutable.com, 0 @@ -72971,6 +72926,7 @@ impactovenezuela.com, 1 impactparcels.co.uk, 1 impactphysio.co.uk, 1 impactpub.ch, 0 +impactyou-academy.nl, 1 impactyou.nl, 1 impakho.com, 1 impalaparts.com, 1 @@ -73021,7 +72977,6 @@ implanttrade.hu, 1 implementconsultinggroup.com, 1 implicitsuccess.com, 1 implosion.tk, 1 -implude.com, 0 import-shopping.de, 1 important-stories.com, 1 importanteducation.tk, 1 @@ -73070,7 +73025,7 @@ imprimetextile.fr, 1 improbo-group.com, 1 improd.works, 1 improfestival.ee, 1 -improsupreme.com, 0 +improsupreme.com, 1 improv.ee, 1 improved-madness.de, 1 improvenerg.com, 1 @@ -73130,7 +73085,6 @@ in-flames.com, 1 in-line.ru, 1 in-love.tk, 1 in-melbet.com, 1 -in-nova-re.com, 1 in-star.com.ua, 1 in-ua.com, 1 in.search.yahoo.com, 0 @@ -73155,11 +73109,13 @@ inara.cz, 1 inares.org, 1 inarigal.com, 1 inarizona.tk, 1 +inastia.fr, 1 inatel.br, 1 inavegas.com, 1 inawe.life, 1 inawisdom.com, 1 inbetweenathome.nl, 1 +inbetweenermelo.nl, 1 inbitcoin.it, 1 inblank.tk, 1 inbound.tk, 1 @@ -73221,6 +73177,7 @@ incn.su, 1 incnjp.com, 1 incntfit.com, 1 incognito.org.uk, 1 +incoko.ai, 1 income-earnings.tk, 1 incomeaccess.com, 1 incomeplus.tk, 1 @@ -73290,7 +73247,6 @@ index-education.net, 1 index-games.com, 1 index.co.cr, 1 index.law, 1 -index.love, 1 indexacapital.com, 1 indexcesmad.cz, 1 indexhost.tk, 1 @@ -73358,6 +73314,7 @@ indiawise.co.uk, 1 indiaworlddigital.tk, 1 indicana.pl, 1 indicatifs.fr, 1 +indichosts.net, 1 indicia.nl, 1 indico.tk, 1 indicodata.ai, 1 @@ -73379,7 +73336,6 @@ indigo.tk, 1 indigoblack.com.au, 1 indigobooks.gq, 1 indigodergisi.com, 1 -indigojewelers.com, 1 indigosakura.com, 1 indigterms.com, 1 indihome.co.id, 1 @@ -73459,7 +73415,6 @@ industrialcontainer.com, 1 industrialgassprings.com, 1 industrialprecisionmfg.com, 0 industriascruz.co, 1 -industrilokal.com, 1 industrydecarbonization.com, 1 industryoutlaws.tk, 1 industryskillsaustralia.org.au, 1 @@ -73498,7 +73453,6 @@ inf-it.com, 1 inf0sec.nl, 1 infakt.pl, 1 infaktcdn.pl, 1 -infalaw.com, 1 infamousguild.tk, 1 infans.be, 1 infantry.org.ua, 1 @@ -73536,21 +73490,21 @@ infinitelightofbeing.org, 1 infinitenews.cf, 1 infinitenews.ml, 1 infiniteserieslabs.com, 1 +infinitetimetoact.com, 1 infinitewealth.com.au, 1 infinitiofallentownparts.com, 1 infinitiofaugustaparts.com, 1 infinitiofmarinparts.com, 1 infinitipartsdeal.com, 1 infinitiresearch.com, 1 +infinitisoftware.net, 1 infinito.tk, 1 -infinitomarca.com, 1 infinitoporciento.tk, 1 infinity-area.com, 1 infinity-photography.co.uk, 1 infinity-store.fr, 1 infinitybc.se, 1 infinitybooksindia.in, 1 -infinitybots.gg, 1 infinityels.com, 1 infinityfaces.tk, 1 infinityfx.co, 1 @@ -73561,7 +73515,7 @@ infinityready.com, 1 infinityrecruitinggroup.com, 1 infinityspm.com, 1 infinityvr.net, 1 -infinityweb.com.au, 1 +infinityweb.com.au, 0 infinityworks.com, 1 infino.me, 1 infinoe.fr, 1 @@ -73583,6 +73537,7 @@ inflatiecalculator.nl, 1 inflationstation.net, 1 inflexa.com, 1 inflexsys.com, 0 +inflowave.io, 1 influencemobile.services, 1 influencestaging.services, 1 influencetechpr.com, 1 @@ -73634,7 +73589,6 @@ infocapsol.com, 1 infocert.digital, 1 infocert.it, 1 infocielo.com, 1 -infocision.com, 1 infocoin.es, 1 infocrypto.pl, 1 infocus.company, 0 @@ -73747,10 +73701,11 @@ infosecindex.com, 1 infosecsw.ca, 0 infosectek.io, 1 infosective.org, 1 +infosecurite.com, 1 infoserp.net.pe, 1 infoshield.sa, 1 infosolution.biz, 0 -infosoph.org, 1 +infosoph.org, 0 infostack.store, 1 infostor.com, 1 infosystem.cf, 1 @@ -73761,7 +73716,6 @@ infotectsecurity.com, 1 infoteka.cf, 1 infotelsystems.com, 1 infotics.es, 1 -infotune.nl, 1 infotv.io, 1 infotype.ga, 1 infovb.org, 1 @@ -73828,7 +73782,6 @@ ingebroer.com, 1 ingegnereambientale.tk, 1 ingemmologie.com, 1 ingenesis.com, 1 -ingeni.ink, 1 ingeniasas.com, 1 ingenieurbatiment.com, 1 ingenieure-website.de, 1 @@ -73837,6 +73790,7 @@ ingenium.si, 1 ingeniumsociety.tk, 1 ingenius.ws, 1 ingenuitycloudservices.com, 1 +ingeospect.si, 1 ingerhy.com, 1 ingermany.ml, 1 ingersolltwpmi.gov, 1 @@ -73862,6 +73816,7 @@ ingo-struck.de, 1 ingolfsskali.is, 1 ingoschlueter.de, 1 ingrain-ed.com, 1 +ingrammicro.de, 1 ingredientwatch.com, 1 ingresatupedido.com, 1 ingresosautomaticos.tk, 1 @@ -73963,8 +73918,8 @@ inlink.ee, 1 inlink.eu, 1 inlink.ltd, 1 inlink.one, 1 +inlock.ai, 1 inlocon.de, 1 -inlucknow.org, 1 inlumi.com, 1 inmaaa.cf, 1 inmateintake.com, 1 @@ -73993,7 +73948,6 @@ innari.it, 1 innatepotatoes.com, 1 innatocol.com, 1 inncoaching.nl, 1 -innectsphere.ca, 1 innenstadtkirche.de, 1 inner-change-mastery.com, 1 inner-vision.tk, 1 @@ -74056,6 +74010,7 @@ innovativeunderwriters.com, 1 innovatopia.jp, 1 innovent.com, 1 innover.se, 1 +innovex-inc.com, 1 innoviafilms.com, 0 innoviahome.com, 1 innovinity.io, 1 @@ -74170,6 +74125,7 @@ insider-invest.tk, 1 insiderateers.ga, 1 insiderateest.ga, 1 insiders.ga, 1 +insidertradingabout.com, 1 insiderx.com, 1 insidethefirewall.tk, 1 insidetheigloo.com, 1 @@ -74178,7 +74134,7 @@ insideview.com, 1 insightfabric.com, 1 insightfulpsychics.com, 1 insighti.com, 1 -insights.plus, 1 +insightrestoration247.com, 1 insights.solutions, 1 insightsoftware.com, 1 insightsvt.com, 1 @@ -74199,6 +74155,7 @@ insomniac.ro, 1 insomniasec.com, 0 insource.org, 1 inspaceindustrial.com, 1 +inspectia.io, 1 inspiraenterprise.com, 1 inspirascholen.be, 1 inspirationallight.com, 1 @@ -74239,7 +74196,7 @@ insside.net, 1 insst.es, 1 insta-viewer.ml, 1 instabizmart.com, 1 -instacart.careers, 1 +instacart.careers, 0 instacart.com, 1 instachina.ru, 1 instacredito.pt, 1 @@ -74318,6 +74275,7 @@ instytut.tk, 1 instytutwellsense.pl, 1 insulationmachinestore.com, 1 insulations.ga, 1 +insulationstop.com, 1 insulectro.com, 1 insult.es, 1 insultband.tk, 1 @@ -74348,6 +74306,7 @@ insurebuysest.ga, 1 insured-event.tk, 1 insuredcloud.ga, 1 insuredcreativity.com, 1 +insurekidsnow.gov, 1 insuremycar.ru, 1 insureon.com, 1 insurethebox.tk, 1 @@ -74393,7 +74352,6 @@ integral-calculator.com, 1 integral-calculator.ru, 1 integral-re.com, 1 integralblue.com, 1 -integralcare.org, 1 integralinmobiliario.com, 1 integralkk.com, 1 integralrechner.de, 1 @@ -74406,7 +74364,7 @@ integratedaesthetics.com, 1 integratedbms.co.za, 1 integratedmedicalonline.com, 1 integratedphysio.com.au, 1 -integration-mouvements-oculaires.com, 1 +integration-mouvements-oculaires.com, 0 integrativetherapy.com.mt, 1 integrator.io, 1 integreatedmedia.com, 1 @@ -74416,7 +74374,6 @@ integritet.com.se, 1 integrity.gov, 1 integritydetail.com, 1 integrityglobal.com, 1 -integrityhomecontractors.com, 1 integritykrakow.pl, 1 integrityline.com, 1 integrityriskintl.com, 1 @@ -74451,9 +74408,9 @@ intellibill.io, 1 intellicore.cl, 1 intellicus.com, 1 intellicyb.com, 1 +intellify.me, 1 intelligence-explosion.com, 1 intelligence-privee.com, 1 -intelligencia.ai, 1 intelligentglo.fi, 1 intelligentgo.org, 1 intelligentnegotiator.com, 0 @@ -74501,7 +74458,6 @@ interaffairs.com, 1 interaktiva.fi, 1 interallied.org, 1 interativashop.com.br, 1 -interbanco.com.gt, 1 interbank.pe, 1 interbase.org, 1 interbec.com, 0 @@ -74603,9 +74559,7 @@ internationaldelight.com, 1 internationaldesigncomp.com, 1 internationalepolitik.de, 0 internationalfashionjobs.com, 1 -internationalflightstickets.com, 1 internationalfm.tk, 1 -internationalfrom.com, 1 internationaljoustingleague.tk, 1 internationallaborlaw.com, 1 internationalmedicaleducation.co.uk, 1 @@ -74642,7 +74596,6 @@ internetinhetbuitengebied.nl, 1 internetional.nl, 1 internetivo.com, 1 internetk.tk, 1 -internetkultur.se, 1 internetkunskap.se, 1 internetline.tk, 1 internetmagaz.tk, 1 @@ -74682,6 +74635,7 @@ interpol.gov, 1 interprete.tk, 1 interratrade.gr, 1 interregtesimnext.eu, 1 +interruptmedia.com, 1 intersectionconsultancy.co.uk, 1 intersein-landshut.de, 1 intersein-sangha-landshut.de, 1 @@ -74720,7 +74674,7 @@ interwebz.cloud, 1 interwebz.nz, 1 interwerk.de, 1 intestclub.tk, 1 -intgr8ai.com, 0 +intgr8ai.com, 1 inthe10.com, 1 inthechair.com, 1 inthechileanwoods.tk, 1 @@ -74748,6 +74702,7 @@ intmissioncenter.org, 0 into-the-mountain.com, 1 intomsk.tk, 1 inton.biz, 1 +intoneccm.com, 1 intoparking.fi, 1 intor.fi, 1 intosec.nl, 1 @@ -74765,6 +74720,7 @@ intrador.com, 1 intraedge.com, 1 intrafi.com, 1 intralan.nl, 1 +intralogix.online, 1 intranet.dvag, 1 intranetcity.ch, 1 intranetconsultant.au, 1 @@ -74790,18 +74746,18 @@ intstyle.com.ua, 1 intsurfing.com, 1 intsys.fi, 1 intuitionmedicineonline.org, 1 +intuitlearn.com, 1 intux.be, 0 intvonline.com, 1 intvoting.com, 1 intygrate.com, 1 inu.nl, 1 inuba.com, 1 -inuevostiempos.es, 1 inuki.org, 1 inumcoeli.com.br, 1 inusasha.de, 1 inuyasha-petition.tk, 1 -inuyasi.com, 1 +inuyasi.com, 0 invadecafe.tk, 1 invaded.ga, 1 invadion.com, 1 @@ -74899,6 +74855,7 @@ investirfazbem.com.br, 0 investisiya.az, 1 investment-adh.com, 1 investment.com, 1 +investmentanalysethat.com, 1 investmentmonitor.ai, 1 investmentpal.com, 1 investmentrankingsers.ga, 1 @@ -74912,6 +74869,7 @@ investor.gov, 1 investorcom.com, 1 investoren-beteiligung.de, 1 investorforms.com, 1 +investorimpulse.com, 1 investorloanshub.com, 1 investormonkey.com, 1 investorplace.com, 1 @@ -74955,7 +74913,6 @@ involve.asia, 1 invuite.com, 1 invuite.com.au, 1 inwebo.net, 1 -inwepo.co, 1 inwhite-medical.ru, 1 inwit.tk, 1 inwmsp.pl, 1 @@ -74973,7 +74930,6 @@ inzernettechnologies.com, 1 inzestfreunde.de, 1 inzichtmeditatie.nl, 1 inzidenz.eu, 1 -inzite.com, 1 io-markets.com, 0 io.kg, 1 io.nl.eu.org, 1 @@ -75029,7 +74985,6 @@ ionspin.com, 0 ionstudio.pe, 1 ionutnica.ro, 1 ionx.co.uk, 1 -iop.intuit.com, 1 iopex.com, 1 iopool.us, 1 ioretreat.com, 1 @@ -75050,7 +75005,6 @@ iot-alliances.com, 1 iotaiy.com, 1 iotaker.jp, 1 iotanodes.org, 1 -iotbusinessforum.com.br, 1 iotekha.tv, 1 iotfen.com, 1 iotflowers.com, 1 @@ -75101,11 +75055,11 @@ ip6.biz, 1 ip6.li, 1 ip8g.com, 1 ipaddressreputation.com, 1 -ipadizate.com, 1 ipadizate.es, 1 ipadkaitori.jp, 0 ipadr.is, 1 ipadresse.de, 1 +ipadresy.win, 1 ipafricatv.online, 1 ipal.im, 1 ipal.name, 1 @@ -75202,7 +75156,6 @@ iprisk.info, 1 iprjb.org, 0 iprod.it, 1 iproducemusic.com, 1 -iproductrepair.com, 1 iprofinews.ru, 1 iproov.com, 1 iprox.nl, 1 @@ -75255,6 +75208,7 @@ ipv6.gr, 1 ipv6.jetzt, 0 ipv6.pictures, 1 ipv64.net, 0 +ipv6cybersecurity.com, 1 ipv6ioffentligsektor.se, 1 ipvbook.com, 0 ipview.tk, 1 @@ -75273,6 +75227,7 @@ iqreview.ru, 1 iqsecurity.eu, 1 iqsmn.org, 0 iqtechportal.com, 1 +iquiz.ie, 1 iqviet.com, 1 iqxbusiness.com, 1 ir.to, 1 @@ -75343,7 +75298,6 @@ irealisatie.nl, 1 ireba-navi.com, 1 iredellcountync.gov, 1 iregister.al, 1 -ireiguam.org, 1 ireland.gq, 1 irelandinternetstuffs4u.tk, 1 irelandondemand.ie, 1 @@ -75548,6 +75502,7 @@ isavanderbrugge.nl, 1 isavings.com, 1 isbase.de, 1 isbaseballstillon.com, 1 +isbc.org, 1 isbk.de, 0 isbndirect.com, 0 isbul.net, 1 @@ -75556,7 +75511,6 @@ isc2.org, 0 isc2estoniachapter.ee, 1 isca-apologetics.org, 1 ischool.co.jp, 1 -iscloud.org, 1 iscontrol.com.mx, 1 iscoolentertainment.com, 1 iscribblesolutions.com, 1 @@ -75566,9 +75520,10 @@ isdn.jp, 1 isdown.cz, 1 isecjobs.com, 1 isecrets.se, 1 +isecurenet.in, 1 iseecure.be, 1 +iseegallery.com, 1 isengard.dk, 1 -isense.tw, 1 isentek.com, 1 isericsuffocating.com, 1 iseriemandopkantoor.nl, 1 @@ -75640,7 +75595,6 @@ islamadel.com, 1 islamantarih.tk, 1 islambolivia.tk, 1 islamdersi.tk, 1 -islamdin.com, 1 islamfirst.ml, 1 islamicacademy.tk, 1 islamicarchitecturalheritage.com, 1 @@ -75686,7 +75640,6 @@ islensktlambakjot.is, 1 isleofman.tk, 1 isleoftheserpent.com, 1 isletmenlikkursuankara.tk, 1 -isliada.org, 1 islief.com, 1 islightdown.today, 1 islikimas.lt, 1 @@ -75745,7 +75698,6 @@ isoshelter.net, 1 isotope.gov, 1 isotopes.gov, 1 isovideo.com, 1 -isowebtech.com, 1 ispactivo.com, 1 ispadmin.eu, 1 ispanika.tk, 1 @@ -75763,16 +75715,15 @@ ispsoft.pro, 1 isputinstillpresident.com, 1 ispymissions.ga, 1 isqi.org, 1 -isra-mag.com, 1 israel-alma.org, 1 israel-in-color.com, 1 -israel-nadlan.com, 1 israel-real.estate, 1 israel-web.com, 1 israelbiblicalstudies.com, 1 israelcareersers.ga, 1 israelcareersest.ga, 1 israelflorist.com, 1 +israelinfo.co.il, 1 israelitas.tk, 1 israelitopbox.ga, 1 israelmesianico.tk, 1 @@ -75790,7 +75741,6 @@ isreedyinthe.uk, 1 isreedyinthe.us, 1 isreedyintheuk.com, 1 isrib.com, 1 -isrokapa.com, 1 issacdelgado.com, 1 issaias.net, 0 issaquah.cam, 1 @@ -75799,7 +75749,6 @@ isscouncil.com, 1 issea.wiki, 1 issforum.org, 1 issho.jp, 1 -issimaequestre.com, 1 issio.net, 1 isslshop.com, 1 issnet.cf, 1 @@ -75809,7 +75758,6 @@ issuehub.de, 1 issuerconsulting.com, 1 issues.email, 1 issuetrak.com, 1 -issundries.com, 1 issww.top, 1 ist-analys.com, 1 ist-analyse.com, 1 @@ -75822,7 +75770,9 @@ istanbuleskort.tk, 1 istanbulhaberleri.tk, 1 istanbulhomes.com, 1 istanbulmasajsalonu.tk, 1 +istanbulnlp.com.tr, 1 istanbulrobotmuzesi.com, 1 +istanbultoursgroup.net, 1 istarlit.com, 1 istdas.lol, 1 istec.com.ua, 1 @@ -75938,6 +75888,7 @@ italentado.ml, 1 italgold.it, 1 italia-facile.ru, 1 italiaeconomy.it, 1 +italiainvestigazioni.com, 1 italiale.tk, 1 italian-shoes.tk, 1 italiana-lacrima.tk, 1 @@ -75985,6 +75936,7 @@ itbrief.ca, 1 itbrief.co.nz, 1 itbrief.co.uk, 1 itbrief.com.au, 1 +itbrief.ie, 1 itbrief.in, 1 itbrief.news, 1 itbrouwerij.be, 1 @@ -76075,6 +76027,7 @@ itioc10.tk, 1 itis.gov, 1 itis4u.ch, 1 itisjustnot.cricket, 1 +itisyourmoney.co.uk, 1 itiweb.tk, 1 itk.se, 1 itleaked.gq, 1 @@ -76092,6 +76045,9 @@ itmindscape.com, 1 itms.co.jp, 1 itnet.com.ua, 1 itnota.com, 1 +itnp.co.th, 1 +itnp.swiss, 1 +itnpgroup.com, 1 ito-dc-nagoya.jp, 1 itoady.com, 1 itochan.jp, 1 @@ -76116,6 +76072,7 @@ itpress.fi, 1 itprosmgmt.com, 1 itprotect.pl, 1 itqlatam.com, 1 +itrad.ie, 1 itradeit.in, 1 itradenetwork.com, 1 itraffic.cf, 1 @@ -76162,7 +76119,6 @@ itsburning.nl, 1 itscalculator.com, 1 itscc.kr, 1 itsch-itsche.com, 1 -itscitycommerce.com, 1 itsdcdn.com, 1 itsdho.com, 1 itsdho.org, 1 @@ -76249,7 +76205,7 @@ itxartu.tk, 1 itxn.cn, 0 itxnorge.no, 1 itxuc.com, 1 -ity.moe, 1 +ity.moe, 0 ityco.com, 1 ityrecare.com, 1 ityug247.com, 1 @@ -76262,8 +76218,11 @@ itzine.ru, 1 itzkavin.tk, 1 itzlive.tk, 1 iubuniversity.tk, 1 +iuecvip.com, 1 iufun.com, 1 iuniverse.com.au, 1 +iupathomeadvantage.com, 1 +iupatvip.com, 1 iupibaby.pt, 1 iuppiter-ssd.it, 1 iurisnow.com, 1 @@ -76309,6 +76268,7 @@ ivelop.me, 0 ivendi.com, 1 iventishirts.com, 1 ivermectin.gq, 1 +iverscustomcycles.com, 1 iversionesdp.com, 1 ivetazivot.cz, 1 ivetebolos.com.br, 1 @@ -76321,7 +76281,6 @@ ivisa.ga, 1 ivisitkorea.com, 1 ivixor.ru, 1 ivkh.ee, 1 -ivkom.com, 1 ivkymppi.fi, 1 ivmmeta.com, 1 ivmstatus.com, 1 @@ -76333,6 +76292,7 @@ ivo.co.za, 1 ivocopro.com, 1 ivocotec.com, 1 ivoid.cf, 1 +ivonne.ca, 1 ivopetkov.com, 1 ivor.io, 1 ivor.is, 1 @@ -76342,7 +76302,6 @@ ivory.com, 1 ivory.de, 1 ivoryandgrace.com, 1 ivoryhomes.com, 1 -ivorymp3.com, 1 ivotemahdi.com, 1 ivpark.fr, 1 ivpbot.tk, 1 @@ -76356,6 +76315,7 @@ ivsign.net, 1 ivtherapyclinic.ru, 1 ivy-league-colleges.com, 1 ivyandrose.co, 1 +ivyar.org, 1 ivybaby.bg, 1 ivygarden.az, 1 ivyhelpers.com, 1 @@ -76398,13 +76358,12 @@ iwill.tr, 1 iwl.me, 1 iwmf.ir, 1 iwonder.tw, 1 -iworksus.com, 1 iwp.ch, 1 iwsgroup.com, 1 iwsquote.com, 1 iwstraining.com, 1 iwtsd.gov, 1 -iww.me, 0 +iww.me, 1 iww.mx, 1 iww.org.au, 1 ix.run, 1 @@ -76449,6 +76408,7 @@ izanagi52.ddns.net, 1 izapi4.fr, 1 izavel.com, 1 izbansaatleri.com, 1 +izdemosite.com, 1 izecubz.me, 1 izemporium.com, 1 izeno.com, 1 @@ -76492,6 +76452,7 @@ izvorul-bucovinei.ro, 1 izxxs.com, 1 izxxs.net, 1 izxzw.net, 1 +izyvape.cz, 1 izzardink.com, 1 izzqz.me, 1 izzy.is, 1 @@ -76510,6 +76471,7 @@ j-ph.ovh, 1 j-robertson.com, 1 j-step.or.jp, 1 j.ac, 1 +j.box, 1 j.ls, 1 j.sh, 1 j.wtf, 1 @@ -76600,7 +76562,6 @@ jabramson.com, 1 jabramson.net, 1 jabsolutions.tk, 1 jacaranda-deutschland.org, 1 -jaccblog.com, 1 jacekowski.org, 1 jachtbouw.eu, 1 jachtypruszynski.pl, 1 @@ -76619,6 +76580,7 @@ jackblues.tk, 1 jackcasady.com, 1 jackcon.com, 1 jackdawphoto.co.uk, 1 +jackds.nl, 1 jacket-coat.tk, 1 jackets-coats.tk, 1 jackets-coatsplus.tk, 1 @@ -76695,6 +76657,7 @@ jacobtamassiaadvocacia.adv.br, 1 jacobtaylor.id.au, 1 jacool.tk, 1 jacopo.tk, 1 +jacopogiorgini.it, 1 jacopomolina.me, 1 jacquant.be, 1 jacquelinebellefontaine.co.uk, 1 @@ -76705,7 +76668,6 @@ jacquin.bzh, 1 jacquin.eu, 1 jacspb.ru, 1 jad.so, 1 -jadalaq.com, 1 jadara.info, 1 jadb.nl, 1 jadchaar.me, 1 @@ -76763,6 +76725,7 @@ jaimeayala.com, 1 jainnatory.ca, 1 jainnotary.ca, 1 jaion.tech, 1 +jaipandya.com, 1 jairoenfrancien.tk, 1 jairsinho.me, 1 jaisiam.co.th, 1 @@ -76790,6 +76753,8 @@ jakincode.army, 1 jakincode.com, 1 jako.tk, 1 jakob-bleek.de, 1 +jakob-schons.de, 1 +jakob-schons.eu, 1 jakob-server.tk, 1 jakobbuis.nl, 1 jakobczyk.org, 1 @@ -76920,6 +76885,7 @@ jammucake.com, 1 jammy4312.me, 1 jamonesrute.com, 1 jamonsilva.com, 1 +jamrulidze.com, 1 jamstack.icu, 1 jamstallt.se, 1 jamstatic.fr, 1 @@ -76937,6 +76903,7 @@ jan-reiss.de, 1 jan-rieger.de, 1 jan-roenspies.de, 1 jan-von.de, 1 +jan.so, 1 jana-rambusch.net, 1 janada.cz, 1 janakane.gotdns.ch, 1 @@ -76977,6 +76944,7 @@ janikrabe.com, 1 janilowski.pl, 1 janine-und-johannes.de, 1 janisphotos.de, 0 +janithmalinga.xyz, 1 janjic.net, 1 janjoris.nl, 1 jankamp.com, 1 @@ -77011,7 +76979,6 @@ janu.services, 1 janu.software, 1 january.com, 1 janulkowedomki.pl, 1 -janus-it.pl, 1 januszex.top, 1 janv.it, 1 janvanmechelen.tk, 1 @@ -77213,7 +77180,6 @@ javierjurado.tk, 1 javierlorente.es, 1 javiermascherano.tk, 1 javiersanchez.tk, 1 -javiscoffee.com, 1 javitron.tk, 1 javleech.com, 1 javna.com, 1 @@ -77471,7 +77437,6 @@ jecnetwork.gq, 1 jed.site, 1 jeda.ch, 1 jeda.im, 1 -jedar-agency.com, 1 jedatw.com, 1 jedayoshi.com, 1 jedayoshi.me, 1 @@ -77479,6 +77444,7 @@ jedayoshi.net, 1 jedayoshi.tk, 1 jedcg.com, 1 jeddahlyn.nl, 1 +jedediahhinkle.com, 1 jedepannetonordi.ch, 0 jedepannetonordi.com, 0 jedepannetonordi.fr, 0 @@ -77570,6 +77536,7 @@ jelleluteijn.pro, 1 jelleraaijmakers.nl, 1 jellinbah.com.au, 1 jellybeanpress.com, 1 +jellyfin.one, 1 jellyfin.spdns.eu, 1 jellyfish.co, 1 jellyfishlivewire.co.uk, 1 @@ -77589,7 +77556,6 @@ jemnezymy.com, 1 jemoreng.tk, 1 jemputan-karyawan.site, 1 jems-il.gov, 1 -jemshoes.com, 1 jena-fans-aurich.tk, 1 jena.de, 1 jena.space, 0 @@ -77667,6 +77633,7 @@ jeremycrews.com, 1 jeremyfaton.me, 1 jeremyharnois.com, 1 jeremyhodges.uk, 1 +jeremyjohnsonphoto.com, 1 jeremynally.com, 1 jeremyness.com, 1 jeremysermersheim.com, 1 @@ -77709,11 +77676,11 @@ jerusalempersonalsest.ga, 1 jerusalemplus.tv, 1 jesec.cn, 1 jesec.io, 1 -jesen.org, 1 jesiensredniowiecza.pl, 1 jesmatboutique.com, 1 jesmh.de, 1 jesolo.tk, 1 +jesolve.com, 1 jesperandersson.tk, 1 jespersen.tk, 1 jessacharlie.com, 1 @@ -77778,7 +77745,6 @@ jetcost.com, 1 jetcraft.tk, 1 jetdrywallinteriors.com, 1 jetedhumain.fr, 1 -jetflex.de, 1 jethash.io, 1 jetkittens.co.uk, 1 jetmirshatri.com, 0 @@ -77838,7 +77804,7 @@ jezero.tk, 1 jezura.cz, 1 jezykoteka.pl, 1 jezzicat.org, 1 -jf-igrejanovadosobral.pt, 0 +jf-igrejanovadosobral.pt, 1 jf-madalena.tk, 1 jf-sulpice.notaires.fr, 1 jf886.cc, 1 @@ -78006,7 +77972,6 @@ jilljoe.com, 1 jillvirus.tk, 1 jillynmalone.studio, 1 jilworldwide.org, 1 -jimautoservice.pl, 1 jimbeam-welcomesessions.at, 1 jimbiproducts.com, 1 jimbosprint.com, 1 @@ -78071,6 +78036,7 @@ jinkou.ga, 1 jinkou.gq, 1 jinkou.ml, 1 jinliming.ml, 1 +jinma.site, 1 jinng.org, 1 jino.gq, 1 jinritemai.com, 1 @@ -78090,6 +78056,7 @@ jiri-vincour.cz, 1 jiriholy.cz, 1 jirkanch-ayollar.ga, 1 jirkanch-ayollar.ml, 1 +jirniy.com, 1 jis.school, 1 jisai.net.cn, 1 jischool.org, 1 @@ -78144,6 +78111,7 @@ jkessen.de, 1 jkest.cc, 0 jkfasham.com.au, 1 jkg.tw, 1 +jkimdds.com, 0 jkinteriorspa.com, 1 jkjpm.com, 1 jkloli.tk, 1 @@ -78202,7 +78170,7 @@ jmb-jetshades.com, 1 jmb.lc, 1 jmbaxi.com, 1 jmbaxico.com, 1 -jmbaxigroup.com, 1 +jmbaxigroup.com, 0 jmbaximarineservices.com, 1 jmbcorpcell.com, 1 jmbfe.com, 1 @@ -78296,7 +78264,6 @@ jobalicious.nl, 1 jobanzeigen.de, 1 jobapps.ch, 1 jobassadeurs.fr, 1 -jobbkk.com, 1 jobbnorge.no, 1 jobbois.com, 1 jobbs.se, 1 @@ -78316,6 +78283,7 @@ jobfresh.ga, 1 jobfury.com, 1 jobgether.com, 1 jobhouse.jp, 1 +jobhunt.pl, 1 jobie.tk, 1 jobindex.dk, 1 jobintourism.gr, 1 @@ -78361,10 +78329,8 @@ joburgplumbing.co.za, 1 jobwinner.ch, 1 jobynet.tk, 1 jobzcorner.tk, 1 -jocafil.com, 1 jocata.com, 1 jocelynjenkins.com, 1 -jochem.sh, 1 jock2go.eu, 1 jockbusuttil.co.uk, 1 jockbusuttil.com, 1 @@ -78429,7 +78395,6 @@ joeyfelix.com, 1 joeyhoer.com, 1 joeysglassbaytown.com, 1 joeysmith.com, 0 -joeysslimeventure.com, 1 joeyvanvenrooij.nl, 1 joeyvilaro.com, 1 jofel-kinderkleding.tk, 1 @@ -78452,14 +78417,12 @@ johan.nl, 1 johanaskalova.cz, 1 johanbollen.com, 1 johand.io, 1 -johanlog.com, 1 johann.tk, 1 johanna-besmier.fr, 1 johanna.gallery, 1 johannabest.com, 1 johannaojanen.com, 1 johannavarmala.fi, 1 -johannes-bauer.com, 1 johannes-schaefer.de, 1 johannes-sprink.de, 0 johannes-zinke.de, 1 @@ -78544,7 +78507,6 @@ johnsonho.net, 1 johnsonroofingltd.co.nz, 1 johnsons-wellfield.co.uk, 1 johnsons.tk, 1 -johnsonsca.com, 1 johnsonscorporate.com.au, 1 johnsonsexpress.com, 1 johnspion.tk, 1 @@ -78570,6 +78532,7 @@ joinamericacorps.gov, 1 joinamericorps.gov, 1 joincahoot.com, 1 joinclyde.com, 1 +joindns4.eu, 1 joinentre.com, 1 joinfear.tk, 1 joingy.com, 1 @@ -78804,7 +78767,6 @@ jose-alexand.re, 1 jose-latino.tk, 1 jose-manuel-benito-alvarez.tk, 1 josebernabe.ch, 1 -josedaniel.website, 1 joseenriquegonzalez.tk, 1 joseetesser.nl, 1 josef-lotz.de, 1 @@ -78853,11 +78815,8 @@ joshozuna.com, 1 joshparker.uk, 1 joshs.domains, 1 joshs.guide, 1 -joshs.photos, 1 joshschmelzle.com, 1 -joshspage.ltd, 1 joshspage.ltd.uk, 1 -joshspage.uk, 1 joshthewanderer.com, 1 joshu.am, 1 joshua-kuepper.de, 1 @@ -78937,7 +78896,6 @@ jovenespuntales.com, 1 jovenespuntales.es, 1 jovic.hamburg, 1 jovisa.com.tw, 1 -joweb.co, 1 jowm-jo.com, 1 joworld.net, 0 joy-iq.com, 1 @@ -78996,7 +78954,7 @@ jpg.am, 1 jpg.fr, 1 jpg.tf, 1 jpgangbang.com, 1 -jphev.de, 0 +jphev.de, 1 jphost.ml, 1 jpilan.com, 1 jpinfo.tk, 1 @@ -79020,7 +78978,6 @@ jpsinflatables.co.uk, 1 jpst.it, 1 jptv4.us, 1 jpvermogensregie.com, 1 -jpvisual.com, 1 jqlin.com, 1 jqlsql.com, 1 jquery.wtf, 1 @@ -79049,6 +79006,7 @@ jrlopezoficial.com, 1 jrmora.com, 0 jrock.tk, 1 jrock.us, 1 +jrockrevolution.com, 1 jrom.net, 1 jross.me, 1 jrroofinglancs.co.uk, 1 @@ -79110,7 +79068,6 @@ jsmgroningen.nl, 1 jsn.one, 1 jsnfwlr.com, 0 jso-crescendo.ch, 1 -json.download, 1 json.id, 0 jsonprice.org, 1 jsonvalidator.tk, 1 @@ -79166,7 +79123,6 @@ jualkambing.tk, 1 juancadc.es, 1 juancarlosflores.tk, 1 juancarlosgalvez.tk, 1 -juancarlosllaque.com, 1 juancatalangomez.es, 1 juanfrancisco.tech, 1 juanherranz.com, 0 @@ -79206,6 +79162,7 @@ judgeball.com, 1 judi-online.ga, 1 judi.ga, 1 judi.tk, 1 +judic-ia.com, 1 judicialappointments.scot, 1 judicialstudiesjournal.ie, 1 judiciary.gov.ph, 1 @@ -79213,7 +79170,6 @@ judiciaryni.uk, 1 judidominokiukiu.ga, 1 judidominokiukiu.ml, 1 judithsargentini.nl, 1 -judjas.com, 1 judo2point0.com, 1 judobasicsers.ga, 1 judobasicsest.ga, 1 @@ -79270,7 +79226,7 @@ juku-wing.jp, 1 julb.de, 1 julditec.com, 1 jule-spil.dk, 1 -julenetxaniz.eus, 0 +julenetxaniz.eus, 1 julenlanda.com, 0 julesfrans.be, 1 julesroovers.nl, 1 @@ -79307,7 +79263,6 @@ julianvmodesto.com, 1 julianwallmeroth.de, 1 julianweigle.de, 1 juliaoantiguidades.com.br, 1 -juliard.club, 1 julias.zone, 1 juliasugar.net, 1 juliawebber.co.za, 1 @@ -79398,12 +79353,12 @@ junebo.nu, 1 junebo.se, 1 juneereccentre.com.au, 1 junefolkhogskola.se, 1 -juneis.dog, 1 juneis.pet, 1 juneiscute.pet, 1 junethack.net, 1 junews.it, 1 junfk.shop, 1 +jungamer.uk, 1 junge-linke.tk, 1 jungefreiheit.de, 1 jungelinke.tk, 1 @@ -79427,12 +79382,14 @@ juniorsambo.tk, 1 juniorsbook.com, 1 juniorsplanet.in, 1 juniper.es, 1 +juniper.net, 1 junis.nl, 1 junix.systems, 1 junjie.pro, 1 junjun-web.net, 0 junkcarbin.com, 1 junkcarboys.ca, 1 +junkcarremovalbrampton.ca, 1 junkdrome.org, 0 junkersparadise.tk, 1 junkfoodcafe.com, 1 @@ -79461,6 +79418,7 @@ jura-reiseschutz.de, 1 jura-versicherungen.de, 1 juragan.ga, 1 juragantembakau.com, 1 +jurai.pro, 1 jurancic.com, 1 jurassicworldfilmen.cf, 1 jurcic-prpic.hr, 1 @@ -79578,6 +79536,7 @@ justknigi.gq, 1 justlovecoffeefranchise.com, 0 justmade.com.br, 1 justmensgloves.com, 1 +justmy.space, 1 justmyblog.net, 0 justmysocks.xyz, 1 justnajoua.tk, 1 @@ -79599,6 +79558,7 @@ justsfa.org, 1 justshare.tk, 1 juststone.net.au, 1 justthepill.com, 1 +justwatermark.com, 1 justweather.org, 1 justyy.com, 1 justzz.xyz, 1 @@ -79692,7 +79652,6 @@ k-homes.net, 1 k-labs.be, 1 k-linkcarecenter.com, 1 k-matsudaclinic.com, 1 -k-moto.sk, 1 k-net.dk, 1 k-netz.de, 1 k-pan.com, 1 @@ -79704,6 +79663,7 @@ k-so.de, 1 k-system.de, 1 k-taxi.co.uk, 1 k-will.tk, 1 +k.box, 1 k.gy, 1 k.hk.cn, 1 k.sh, 1 @@ -79716,7 +79676,7 @@ k21academy.com, 1 k24klik.com, 1 k258059.net, 1 k29.ee, 1 -k2corporatemobility.com, 1 +k2advocacy.com, 1 k2lin.com, 1 k2velosi.com, 1 k36533.com, 1 @@ -79745,7 +79705,6 @@ k869.co, 0 k86921.com, 0 k86930.com, 1 k86967.com, 0 -k87.app, 1 k87073.com, 0 k87074.com, 0 k87075.com, 0 @@ -79792,6 +79751,7 @@ ka4aka.tk, 1 ka4ka-ru.tk, 1 ka4ka.cf, 1 ka4ka.ml, 1 +kaag-it.com, 1 kaagenbraassem.nl, 1 kaalberry.com, 0 kaamoscreations.com, 1 @@ -79864,7 +79824,6 @@ kadidak.com, 0 kadifeli.com, 1 kadinhaber.tk, 1 kadinhayati.com, 1 -kadinisci.org, 1 kadinsaglikhaber.tk, 1 kadinvesaglik.tk, 1 kadizadeinsaat.com.tr, 1 @@ -79875,7 +79834,6 @@ kadro.com.pl, 1 kadvi.tk, 1 kadykchanskiy.ml, 1 kadymacdonalddenton.ca, 1 -kaeme.com, 1 kaeptns-sechser.de, 1 kaeru-seitai.com, 1 kaesehagen.nl, 1 @@ -79920,7 +79878,6 @@ kaiahealth.com, 1 kaibaunderwear.com.ar, 1 kaibinyang.com, 1 kaibinyang.tk, 1 -kaiche.com, 1 kaidoblogi.eu, 1 kaigojj.com, 1 kaihipay.jp, 1 @@ -79942,6 +79899,7 @@ kaipop.com, 1 kairainyhappy.com, 1 kairion.de, 1 kairoscope.org, 1 +kairoscyprus.com, 1 kais08.com, 1 kaisanord.org, 1 kaiseraerospace.tk, 1 @@ -79950,7 +79908,6 @@ kaiserinformativo.com, 1 kaisev.net, 1 kaishi009.com, 1 kaisla.ai, 1 -kaisto.net, 0 kaisyo.co.jp, 1 kaitol.click, 1 kaitseministeerium.ee, 0 @@ -80006,7 +79963,7 @@ kakvzyatdolg.ml, 1 kakvzyatzaim.cf, 1 kakvzyatzaim.gq, 1 kakvzyatzaim.tk, 1 -kal.co.jp, 1 +kal.co.jp, 0 kal05.tk, 1 kalabhavashricreations.com, 1 kaladarb.com, 0 @@ -80044,13 +80001,13 @@ kalimantan.tk, 1 kalimari.tk, 1 kalimat.gq, 1 kalimba-hangszerbolt.hu, 1 -kalimojo.fr, 1 kalin.eu.org, 1 kalina.ml, 1 kaliningrad-news.net, 1 kaliningrad.gq, 1 kaliningrad.ml, 1 kalinka-shop.tk, 1 +kalinkaoptics.com, 1 kaliocommerce.com, 1 kalisch.eu, 1 kalisiconstructionltd.co.uk, 1 @@ -80095,10 +80052,9 @@ kalvellido.net, 1 kalwak.cr, 1 kalwestelectric.com, 1 kalyancity.in.ua, 1 -kalyandevelopers.com, 1 kalyangupta.ml, 1 kalyazin-online.tk, 1 -kalypsoapp.com, 1 +kalyndachase.com.au, 1 kam-serwis.pl, 1 kamada.com, 1 kamagrajel.org, 1 @@ -80107,7 +80063,6 @@ kamandula.tk, 1 kamanja.io, 1 kamareddine.tk, 1 kamasutra-training.gq, 1 -kamata-saisyuusyou.com, 1 kamata-shinkyu-seikotsu.jp, 1 kamataryo.com, 1 kamataworks.com, 1 @@ -80147,7 +80102,6 @@ kamin-island.ru, 1 kaminholz.eu, 1 kaminoke.info, 0 kaminoyamasaigube.com, 1 -kaminy-msk.ru, 0 kamio.co.uk, 1 kamisato-ent.com, 1 kamistik.com, 1 @@ -80172,6 +80126,7 @@ kamppailusali.fi, 1 kampungcyber.tk, 1 kampunginggris-ue.com, 1 kampusku.tk, 1 +kampyn.com, 1 kamrad.tk, 1 kamranmirhazar.com, 1 kamsoft.pl, 1 @@ -80201,6 +80156,7 @@ kanbanblog.com, 1 kanbanflow.com, 1 kanbanflowbackup.com, 1 kancelarblanik.cz, 1 +kancelaria.torun.pl, 1 kancelariawlt.pl, 1 kancolle.me, 1 kancriaura.org, 1 @@ -80264,7 +80220,6 @@ kano.tk, 1 kanoonkehaath.in, 1 kanootours.com, 1 kanotijd.nl, 1 -kanoumokuzai.co.jp, 1 kanpian369.com, 1 kanru-clinic.com.tw, 1 kansascityzoo.org, 0 @@ -80346,6 +80301,7 @@ karabukhaber.tk, 1 karachay.tk, 1 karada.live, 1 karadenizhaberleri.tk, 1 +karadenizmetal.tr, 1 karagory.cloud, 1 karajonline.tk, 1 karakafa.net, 1 @@ -80436,6 +80392,8 @@ karloluiten.nl, 1 karloskontana.tk, 1 karlov.tk, 1 karlproctor.co.uk, 1 +karlsen.fr, 1 +karlsen.org, 1 karlskronajk.tk, 1 karlsmithmn.org, 1 karlson.gq, 1 @@ -80473,6 +80431,7 @@ karr.ga, 1 karramba.tk, 1 karriharju.tk, 1 karrot.world, 1 +karryfishing.com, 1 karsiyakacilingir.biz.tr, 1 karsofsystems.com, 1 karsta.de, 1 @@ -80491,6 +80450,7 @@ kartek.com, 1 kartenplanet.ch, 1 kartikmohta.com, 1 karting-normandie.fr, 0 +kartingzone.ru, 1 kartoffel-stampfer.com, 1 kartoffel-tobi.de, 1 kartonki.tk, 1 @@ -80564,7 +80524,7 @@ kastelruth.biz, 1 kastemperaturen.ga, 1 kastgroup.com, 1 kastrup.is, 1 -kastrupvinduet.dk, 1 +kastrupvinduet.dk, 0 kastuvas-tau.lt, 1 kasu.ga, 1 kasuganozaka.net, 1 @@ -80576,7 +80536,7 @@ kat.tf, 0 kat4at.tk, 1 katabump.com, 1 katagena.com, 1 -kataiszilveszter.hu, 0 +kataiszilveszter.hu, 1 katalog-parfyum.tk, 1 katalog-serverof.ml, 1 katalog-serverov.cf, 1 @@ -80624,7 +80584,6 @@ katherineswynford.tk, 1 kathleendeisher.com, 1 kathmandupost.com, 1 kathrin-maren-enders.de, 1 -kathrineaspaas.no, 1 kathrynbernardo.tk, 1 kathy.best, 1 kathy.lgbt, 1 @@ -80691,7 +80650,7 @@ kausta.me, 1 kaustubhk.com, 1 kava.io, 1 kavalasite.gr, 1 -kavaofi.com, 1 +kavaofi.com, 0 kavaplius.lt, 1 kavatasygarety.tk, 1 kaveh24.com, 1 @@ -80713,13 +80672,11 @@ kawaii.su, 1 kawaiicon.org, 1 kawaiiku.de, 1 kawaiilo.li, 1 -kawaitomato.com, 1 kawamipiano.com, 1 kawamura-inc.jp, 1 kawasaki.com, 1 kawasakipartsonline.co.uk, 1 kawcityok.gov, 1 -kaweruhjawa.com, 1 kawigraphics.com, 1 kawistamade.com, 1 kawnation.gov, 1 @@ -80823,6 +80780,7 @@ kc3.moe, 1 kc9.com, 1 kc9.lol, 1 kc9.vip, 1 +kca2009.com, 1 kcagsolutions.com, 1 kcc8.com, 1 kcchung.com, 1 @@ -80995,7 +80953,6 @@ keisinger.name, 1 keitaro.io, 1 keith.pro, 1 keithazzopardi.tk, 1 -keithblakemorenoble.com, 1 keithmcmillen.com, 1 keiths.ml, 1 keithstaxis.co.uk, 1 @@ -81067,6 +81024,7 @@ kelyan.fr, 1 kemahtx.gov, 1 kemanai.akita.jp, 1 kemand.com, 1 +kemapack.com, 1 kemba.com, 1 kemeha.tk, 1 kemerovo-news.net, 1 @@ -81128,8 +81086,6 @@ kenhhomestay.com, 1 kenhv.com, 1 keniasfamilychildcare.com, 1 keniff.gq, 1 -kenkobox.jp, 1 -kenlewis.com, 1 kennards.co.nz, 1 kennebec.gov, 1 kennedy.cf, 1 @@ -81194,6 +81150,7 @@ keos.tk, 1 kep-sbt.hu, 1 kepak.tk, 1 kepakoti.fi, 1 +kephren.com, 1 kepkonyvtar.hu, 1 kepleruniklinikum.at, 1 keppler.tk, 1 @@ -81259,7 +81216,7 @@ kesen.wang, 0 keshankang.org, 1 keshausconsulting.com, 1 keshav.cc, 1 -keshavnet.com, 0 +keshavnet.com, 1 kesif360.com, 1 kesifasya.com, 1 kesinidulu.com, 1 @@ -81324,6 +81281,7 @@ kevinapease.com, 1 kevinaud.io, 1 kevinbarbieri.com, 1 kevinbardot.alwaysdata.net, 1 +kevinborja.com, 1 kevinbowers.me, 1 kevinchang.me, 1 kevincordes.de, 1 @@ -81380,7 +81338,6 @@ keycodingjohannesburg.co.za, 1 keydelay.tk, 1 keydifferencemedia.com, 1 keyesrobot.cn, 1 -keyfortech.com, 1 keyfoundation.xyz, 1 keygen.sh, 1 keyhani.tk, 1 @@ -81399,7 +81356,6 @@ keypers.io, 1 keyphotojs.cf, 1 keypoint.edu.au, 1 keyrana.com, 1 -keyroot.tech, 1 keys.fedoraproject.org, 1 keyscore.me, 1 keyserver.sexy, 0 @@ -81408,6 +81364,7 @@ keysix.com, 1 keysmedspa.com, 1 keysofart.com, 1 keysso.net, 1 +keystone-europe.com, 1 keystoneco.gov, 1 keystore.eu.org, 1 keysupport.net, 1 @@ -81438,7 +81395,6 @@ kfgleasing.pl, 1 kfintech.com, 1 kfjgyb.com, 0 kfjh.se, 1 -kfk.haus, 1 kflo.org, 1 kfm.ink, 0 kfmhf.ca, 1 @@ -81487,6 +81443,7 @@ khakassia.tk, 1 khaki.ga, 1 khakim.gq, 1 khakim.tk, 1 +khalabansho.com, 1 khaledalsabt.com, 1 khaledkhan.ml, 1 khaleesi.tk, 1 @@ -81495,6 +81452,7 @@ khalidmail.tk, 1 khaliinfo.tk, 1 khalilicollections.org, 1 khalti.com, 1 +khanh.id, 1 khankandi.tk, 1 khanovaskola.cz, 1 khaolak-house.com, 1 @@ -81506,10 +81464,12 @@ kharkov.tk, 1 khas.co.uk, 1 khatapana.com, 1 khatnip.net, 1 +khatwa-editions.org, 1 khayal-3d.com, 1 khda.gov.ae, 1 khdestiny.tk, 1 khebranet.tk, 1 +khedma.uk, 1 khepri.uk, 1 kherson-news.ru, 1 kheshtar.pl, 1 @@ -81533,6 +81493,7 @@ khouloud.de, 1 khoury-dulla.ch, 0 khouryalexandre.com, 0 khoxuongchothuegiare.vn, 1 +khprop.com, 1 khramtsov.org, 1 khro.me, 1 khs1994.com, 1 @@ -81591,7 +81552,6 @@ kicktipp.it, 1 kicktipp.nl, 1 kicktipp.pl, 1 kicktipp.pt, 1 -kickzy.nl, 1 kicnews.org, 1 kicou.info, 1 kiczela.eu, 1 @@ -81686,10 +81646,13 @@ kievlove.tk, 1 kiewit.com, 1 kiewiterp.com, 1 kiezlerovi.cz, 1 -kif.rocks, 0 +kif.rocks, 1 kiffmarks.com, 1 kifid.nl, 1 +kigermap.cn, 1 kigermap.com, 1 +kighub.cn, 1 +kigyounomori.com, 1 kihi.news, 1 kiinanharjakoirat.tk, 1 kiind.com.au, 1 @@ -81714,8 +81677,10 @@ kikchat.co.il, 0 kiki.ee, 1 kikikanri.biz, 1 kikivega.net, 1 +kikki.io, 1 kikoskia.com, 0 kiku.pw, 1 +kildarestreet.com, 1 kilian-sommer.de, 1 kilian.gallery, 1 kiliansommer.de, 1 @@ -81723,6 +81688,7 @@ kilianvalkhof.com, 1 kiliflix.de, 1 kilimstyle.com, 1 kilinskiego12.pl, 1 +kilintime.com, 1 kilkennyaccountingservices.ie, 1 kilkennycoco.ie, 1 kilkimzaibu.tk, 1 @@ -81746,7 +81712,6 @@ killme.rocks, 1 killmebaby.ml, 1 killmenow.tk, 1 killteamseller.it, 1 -killtv.me, 0 killua-website.tk, 1 killymoonbouncycastles.com, 1 kilo-files.tk, 1 @@ -81791,7 +81756,6 @@ kimochi.info, 1 kimonocloud.com, 1 kimonoplatform.com, 1 kimoo.co, 1 -kimoo.net, 1 kimootoko.net, 0 kimotodental.com, 1 kimotrip.com, 1 @@ -81839,6 +81803,7 @@ kinautas.com, 1 kincaimedia.net, 1 kindan.net, 1 kindapoth.com, 1 +kinde.com, 1 kinder-garten.tk, 1 kinderarzt-berlin-zia.de, 1 kinderarzt-traunstein.de, 1 @@ -81905,6 +81870,7 @@ kingchess.vip, 1 kingcourriel.fr, 1 kingcute.com, 1 kingdombuilderschurch.org, 1 +kingdomcincy.com, 1 kingdomcitymo.gov, 1 kingdomcrawlers.tk, 1 kingdomnubia.com, 1 @@ -81970,6 +81936,8 @@ kink.bio, 1 kinkcheck.top, 1 kinkenonline.com, 1 kinklist.me, 0 +kinkorainvestments.com, 1 +kinkorainvestments.com.au, 1 kinksecrets.ga, 1 kinky-books.com, 1 kinkyinlaws.com, 1 @@ -82092,6 +82060,7 @@ kirkintillochbc.co.uk, 1 kirkkonummenavhkerho.net, 1 kirksville.gov, 1 kirkwood-smith.com, 1 +kirkwood.biz, 1 kirkwoodfencing.com, 1 kirkwoodoutdoors.com, 1 kirmizipill.com, 1 @@ -82133,11 +82102,13 @@ kisma.de, 1 kismy.ga, 1 kismy.tk, 1 kismyder.tk, 1 +kisomacosmetics.de, 1 kissanime.moe, 1 kissedbyabee.com, 1 kisser.name, 1 kissesb.net, 1 kissgyms.com, 1 +kissgyongyi.hu, 1 kissielts.com, 1 kissima-gakou.ml, 1 kissimmee.gov, 1 @@ -82160,7 +82131,6 @@ kitacoffee.com, 1 kitaharima-ikiiki.com, 1 kitale.de, 1 kitarino.net, 1 -kitas-in-flensburg.de, 1 kitchen-design.cf, 1 kitchen-design.tk, 1 kitchenconverse.com, 1 @@ -82315,7 +82285,6 @@ kkn.moe, 1 kknapredak-rubin.tk, 1 kkpig.cn, 1 kkpp.ga, 1 -kkr-bridal.net, 1 kkren.me, 0 kks.ch, 1 kksg-sulzbach.de, 1 @@ -82400,7 +82369,7 @@ kleinestrandburg-heringsdorf.de, 0 kleinestrandburg-usedom.de, 0 kleinfein.co, 1 kleinhaneveld.tk, 1 -kleinhapl.com, 1 +kleinhapl.com, 0 kleinhelena.dynv6.net, 1 kleinlich.com, 1 kleinmechaniek.nl, 1 @@ -82448,6 +82417,7 @@ klima.com, 1 klimaanlage-fehler.net, 1 klimaatadaptatienederland.nl, 1 klimaatkids.be, 1 +klimaatklaar.nl, 1 klimacamp-sterkraderwald.de, 1 klimafakten.de, 1 klimakomplekt.com, 1 @@ -82510,7 +82480,6 @@ kloudstack.me, 1 klover-avantages.fr, 1 klover-cse.fr, 1 kloza.tk, 1 -klpl.com.sg, 1 kls-desk.com, 1 kls-platform.com, 1 kls.rs, 1 @@ -82582,11 +82551,11 @@ knarred.site, 1 knashaug.com, 1 knauf.com, 1 knautiluz.net, 0 +knb.nl, 1 knbbw-frnab.tk, 1 knbkress.com, 1 knblog.jp, 1 kncg.pw, 1 -kneblesauto.com, 1 knecht.ca, 1 knechtology.com, 1 kneepainclinic.sg, 1 @@ -82695,7 +82664,6 @@ knugen.nu, 1 knulla.me, 1 knulle.me, 1 knurps.de, 1 -knurses.com, 1 knutas.de, 1 knuterikskare.no, 1 knuthildebrandt.de, 0 @@ -82752,7 +82720,6 @@ kocaeliyiseyret.com, 1 kocca.kr, 1 koccoo.ga, 1 koch-wro.pl, 1 -koch.com.au, 1 kochadaiyaan.tk, 1 kochamkoszalin.pl, 1 kochbar.de, 1 @@ -82796,6 +82763,7 @@ koeeusa.org, 1 koef.nl, 1 koehlhoff.de, 1 koehn-consulting.com, 1 +koehn.com, 1 koelbli.ch, 1 koeldezomerdoor.nl, 1 koelnmafia.de, 1 @@ -82958,6 +82926,7 @@ komnakhon.com, 1 komo.am, 1 komodolabs.com, 1 komoraoze.cz, 1 +komornicy.torun.pl, 1 komornikmroczek.pl, 1 komp-plus.tk, 1 komp247.pl, 1 @@ -83019,6 +82988,7 @@ kondisave.org, 1 kondo-kougei.co.jp, 1 konectbus.co.uk, 1 konectus.io, 1 +koneti.fr, 1 konetsu.tk, 1 konf.ga, 1 konfekcjonowanie.com, 1 @@ -83032,7 +83002,6 @@ kongar.org, 1 kongedugnad.no, 1 kongjie.cf, 1 kongjie.ml, 1 -kongkritpost.com, 1 kongress-hostessen.de, 1 kongressband.de, 1 koniag-gs.com, 1 @@ -83052,11 +83021,10 @@ konnektiv.de, 1 konnektvpn.com, 1 konnex-it.de, 1 konnitanaka.com, 1 -konoka.top, 1 kononenko.ml, 1 konopizza.at, 1 konpyuta.nl, 1 -konser.co.uk, 1 +konser.co.uk, 0 konsertoversikt.no, 1 konservy.tk, 1 konsol.pro, 1 @@ -83066,7 +83034,6 @@ konstantinlichtenwald.com, 0 konstanz.tk, 1 konstitucia.com, 1 konsul.ga, 1 -konsul.id, 1 konsul.tk, 1 konsultacii-buhgaltera.ga, 1 konsultaciya-astrologa.cf, 1 @@ -83094,6 +83061,7 @@ kontrapolis.info, 1 kontrastonline.tk, 1 kontrol40.com, 1 kontrolapovinnosti.cz, 1 +kontrolewewspolnotach.pl, 1 kontur.tk, 1 konturalco.ru, 1 konus.tk, 1 @@ -83105,7 +83073,7 @@ konyahaber.tk, 1 konyalian.com, 1 konyhaelektronika.hu, 1 konzaross.tk, 1 -konzepttreu.de, 1 +konzepttreu.de, 0 konzertheld.de, 1 koobin.cat, 1 koobin.com, 1 @@ -83209,7 +83177,6 @@ korfbal.nl, 1 korfballeague.nl, 1 korhonen.cc, 1 korikart.net, 1 -korjoin.com, 1 korkortet.tk, 1 korkortonline.se, 1 korlatlanmobilinternet.hu, 1 @@ -83223,7 +83190,6 @@ koroshkabir.tk, 1 korotonomedya.net, 1 korrekttech.hu, 1 korrelzout.nl, 1 -korsordsvar.com, 1 korst.tk, 1 korstanjebouw.nl, 1 korstanjetimmerwerken.nl, 1 @@ -83273,7 +83239,6 @@ kostecki.com, 1 kostecki.org, 1 kostecki.tel, 1 kostenloses-forum.tk, 1 -kosterenpartners.com, 1 kostlyn.com, 1 kostroma-city.tk, 1 kostroma-news.net, 1 @@ -83322,6 +83287,7 @@ kottbulle.net, 1 kotthaus-bs.de, 1 kottur.is, 1 kotuiako.school.nz, 1 +kotuwa.com.au, 1 kotuwa.tk, 1 kotydomowe.com, 1 kouberacing.com.br, 1 @@ -83350,7 +83316,6 @@ kowalmik.tk, 1 kowalski7.cc, 1 kowalski7cc.xyz, 1 kowarschick.de, 1 -kowu.ru, 1 koyaanisqatsi.tk, 1 koyarecipes.com, 1 koyariz.com.tr, 1 @@ -83385,6 +83350,7 @@ kp45.ru, 1 kpfanworld.com, 1 kpinterface.com, 1 kpinvest.eu, 1 +kpirx.com, 1 kpit.com, 1 kpkhub.com, 1 kplante.com, 1 @@ -83470,6 +83436,7 @@ krang.org.uk, 1 kranjnakolo.ml, 1 krankenkasse-schweiz-liste.ch, 1 krankenkasse-schweiz-vergleich.ch, 1 +krankenkasse-schweiz-wechseln.ch, 0 krankenpflege-haushaltshilfe.de, 1 krankenpflege-journal.com, 1 krankenpflege.ch, 1 @@ -83535,7 +83502,6 @@ kredita.dk, 1 kreditkarta.ml, 1 kreditkarten123.de, 1 kreditkoll.nu, 1 -kredito.pt, 1 kreditonline.ml, 1 kreditor.gq, 1 kreditovnet.tk, 1 @@ -83544,13 +83510,13 @@ kreditzirkus.de, 1 krednal.ru, 1 kredytybezprowizji24.pl, 1 kredytzen.pl, 0 +kredz.com.br, 1 krefindo.de, 1 kreft.tk, 1 kreftprzewieda.pl, 1 kreideseetaucher.de, 1 kreidlernet.tk, 1 kreiglaw.com, 1 -krelln.net, 1 kremalicious.com, 1 kremenchug-news.ru, 1 kremenchugnews.ru, 1 @@ -83558,7 +83524,6 @@ kremer-sonnenschutzsysteme.de, 1 kremer.shop, 1 kreno.tech, 1 krenstetter.at, 1 -kreolis.net, 1 kresimir-blazevic.tk, 1 krestanskydarek.cz, 0 kretaforum.dk, 1 @@ -83612,6 +83577,7 @@ kriskonaturopathic.com, 1 kriskras99.nl, 1 krismurray.co.uk, 1 krisp.ai, 1 +krisp.kz, 1 krispeinture.be, 1 krispykremesa.com, 1 krispymods.com, 1 @@ -83662,6 +83628,7 @@ kroliczki.tk, 1 kroll.tk, 1 krolowarodzin.pl, 1 kromamoveis.com.br, 1 +kromati.co, 1 kromberg.tk, 1 kromciri.gq, 1 krome.sg, 1 @@ -83676,6 +83643,7 @@ krony.de, 1 kronych.cz, 1 kroo.com, 1 kroon.email, 1 +kroonlocks.com, 1 kropkait.pl, 1 krosno24.com, 1 krosovki-nike.tk, 1 @@ -83740,6 +83708,7 @@ kryolansaudi.com, 1 krypmonet.com, 1 krypsys.com, 1 krypt.com, 1 +krypta.me, 1 kryptera.se, 1 kryptix.eu, 1 kryptix.net, 1 @@ -83752,28 +83721,27 @@ kryptorebels.com, 1 kryptosekken.no, 1 kryptoslogic.com, 1 kryptostern.de, 1 +kryptoveritas.com, 1 kryptux.xyz, 1 krysecu.com, 1 kryshodel.ml, 1 krystal-framework.ml, 1 krytykawszystkiego.com, 1 krytykawszystkiego.pl, 1 -kryx.de, 1 krzysiamrozinska.pl, 1 krzysztofzaleski.com, 1 +krzyzu.ovh, 1 ks-19.com, 1 ks-39.com, 1 ks-59.com, 1 ks-79.com, 1 ks-89.com, 1 -ks-homeanthill.eu, 1 ks-niceman.tk, 1 ks.kr.ua, 1 ks.pl, 1 ks015.com, 0 ks017.com, 1 ks058.com, 1 -ks0618.com, 1 ks068.com, 0 ks0886.com, 1 ks16.net, 1 @@ -83785,7 +83753,6 @@ ks330.com, 1 ks335.com, 1 ks3636.com, 1 ks380.com, 0 -ks386.com, 1 ks5000.com, 0 ks5531.com, 0 ks5532.com, 1 @@ -83841,7 +83808,6 @@ kseniya.tk, 1 kseniyakoroleva.tk, 1 ksenomorf.tk, 1 ksenoris.by, 1 -ksero.com.pl, 1 ksero.info, 1 ksero.wroclaw.pl, 0 kserownia.eu, 1 @@ -83862,6 +83828,7 @@ kslpa.gov, 1 ksmsindia.com, 1 ksnl.net, 1 ksoftware.tk, 1 +ksolves.com, 1 ksopp.si, 1 ksp-electronics.ro, 1 kspndanautoba.id, 1 @@ -83874,7 +83841,6 @@ ksstille.de, 1 kst-dlvr.tk, 1 kst-service.tk, 1 kstar.eu, 1 -kstatecollegian.com, 1 kstdlvr.by, 1 ksteamship.com, 1 kstech.tech, 1 @@ -83903,6 +83869,7 @@ kthnxbai.xyz, 1 ktk-pc.de, 1 ktkprom.com, 1 ktlikescoffee.com, 1 +ktlspedition.de, 1 ktm-troxler.de, 1 ktnv.com, 1 ktphapn.org, 1 @@ -83946,7 +83913,6 @@ kubit.us, 1 kubmeta.com, 1 kubopro.com, 1 kubopro.cyou, 1 -kubota.ca, 1 kubota.co.nz, 1 kubotapower.com.au, 1 kubrakov.ml, 1 @@ -83969,6 +83935,7 @@ kuditel.net, 1 kudofoto.com, 1 kudoran.tk, 1 kuechler.info, 1 +kuehn.onl, 1 kuehndel.org, 1 kuehnel-online.eu, 1 kuemmling.eu, 1 @@ -84059,7 +84026,6 @@ kungsangen.com, 0 kungsangsgymnasiet.se, 1 kunitomo.jp, 1 kunnen.tech, 1 -kuno-sperrdienst.de, 1 kunri.tk, 1 kunst-im-kokon.de, 1 kunst-na-arbeid.tk, 1 @@ -84148,7 +84114,6 @@ kurosu.com.py, 1 kurrende.nrw, 0 kurs-dron.pl, 1 kurs-elektryka.pl, 1 -kurs-fotowoltaika.pl, 1 kurserne.dk, 1 kursk-news.net, 1 kursk-news.ru, 1 @@ -84165,7 +84130,6 @@ kurtdeutscher.com, 1 kurtisfranklin.com, 1 kurtki-moda.tk, 1 kurtlarvadisi-pusu-1.tk, 1 -kurtneuweiler.com, 1 kurtosys.com, 1 kurtschleinbeck.com, 1 kurungkurawal.id, 1 @@ -84312,9 +84276,11 @@ kybalion.info.pl, 1 kyber.club, 1 kyber.consulting, 1 kyber.network, 1 +kyberhub.com, 1 kyberna.xyz, 1 kybi.sk, 1 kyblik.fun, 1 +kyc-systems.com, 1 kycisrael.com, 1 kydara.com, 0 kyivparts.com, 1 @@ -84423,6 +84389,7 @@ l17r.eu, 1 l1qu1d.net, 1 l214.com, 1 l2dragonland.tk, 1 +l2family.net, 1 l2kl.com, 1 l2news.ga, 1 l2relax.ml, 1 @@ -84462,7 +84429,6 @@ la-sc.com, 1 la-tourmaline.ch, 1 la-verite.tk, 1 la-ville-aux-dames-auto-ecole.com, 1 -la360.us, 1 laa.gov.ly, 1 laac.io, 1 laakevahinko.fi, 1 @@ -84480,6 +84446,7 @@ labacanisima.tk, 1 labadusa.com, 1 labamassage.lt, 1 labambi.pl, 1 +labanca.com.uy, 1 labandadelamente.tk, 1 labandadelexpreso.tk, 1 labanochjonas.se, 1 @@ -84549,7 +84516,6 @@ labourparty.net.nz, 1 labourparty.nz, 1 labourparty.org.nz, 1 labourpolicies.org.nz, 1 -laboutiquedeluminia.fr, 1 laboutiquemarocaineduconvoyeur.com, 1 laboutiquemarocaineduconvoyeur.ma, 1 labpartnering.org, 1 @@ -84609,7 +84575,6 @@ lackan.tk, 1 lacker-baugutachten.de, 1 lackfer.tk, 1 lackinflaveis.com.br, 1 -lacledelareussite.com, 0 lacledeslan.com, 1 lacledeslan.org, 1 laclefdigitale.fr, 1 @@ -84651,7 +84616,6 @@ ladadate.com, 1 ladakhtrip.tours, 1 ladanivabelgium.tk, 1 ladanmokhtari.tk, 1 -ladderartspace.com.au, 1 laddrs.uk, 1 ladedu.com, 1 ladelicateparenthese.com, 1 @@ -84681,7 +84645,6 @@ lady-blog.ga, 1 lady-sadieann.co.uk, 1 lady-wishlist.my.id, 1 lady007.com.tw, 1 -ladyanja.org, 1 ladybanana.co.uk, 1 ladybird.tk, 1 ladybirdeducation.co.uk, 1 @@ -84691,7 +84654,6 @@ ladyboy.tv, 1 ladyboyfiles.com, 1 ladyboytube.tv, 1 ladybugjam.com, 1 -ladychina.com, 1 ladyestelle.org, 1 ladyisabell666.com, 1 ladykarame.org, 1 @@ -84707,6 +84669,7 @@ ladyofsongstv.com, 1 ladyoxytocin.com, 1 ladysecrets.cf, 1 ladysecrets.ga, 1 +ladyshields.com, 1 ladysybella.net, 1 ladytron.tk, 1 ladyvampira.com, 1 @@ -84796,7 +84759,6 @@ lagom.org.pl, 1 lagos-car-hire.com, 1 lagoscooperativecollege.com, 1 lagotto.tk, 1 -lagout.org, 1 lagovistatexas.gov, 1 lagrangeutilitiesky.gov, 1 lagrangiandesign.com, 1 @@ -84849,7 +84811,6 @@ lajna-serial.cz, 1 lajnaserial.cz, 1 lajornadafilipina.com, 1 lajusta.tk, 1 -lak.li, 1 lakabina.tk, 1 lakashirdetes.com, 1 lakashirdetesek.com, 1 @@ -84892,7 +84853,6 @@ lakesideholidays.uk, 1 lakesideinternationalhotel.com, 1 lakesidelodges.uk, 1 lakesiderealty.info, 1 -lakesideweb.design, 1 lakesitetn.gov, 1 lakespropertymgt.com, 1 lakestreetministorage.com, 1 @@ -85011,7 +84971,6 @@ lamp.re, 0 lamparassevilla.com, 1 lampbooks.gq, 1 lampco.com, 1 -lamper-design.nl, 1 lampertheimer-zeitung.de, 1 lamplightvideo.com, 1 lampposthomeschool.com, 1 @@ -85058,8 +85017,6 @@ lancerspiritonline.com, 1 lancertactical.eu, 1 lanceyip.com, 1 lanchong.tk, 1 -lancom.de, 1 -lanconstruct.be, 1 lancyvbc.ch, 0 land.nrw, 0 landart.tk, 1 @@ -85205,7 +85162,6 @@ lanyundev.com, 1 lanzalex.com, 1 lanzamientovirtual.es, 1 lanzarote.com, 1 -lanzastil.com, 1 lao.dog, 0 laobayy.com, 1 laoctavadireccion.tk, 1 @@ -85221,7 +85177,6 @@ laorg.studio, 1 laorquestadelamemoria.tk, 1 laostiaradio.tk, 1 laotravoz.tk, 1 -laowang.run, 1 laoxiwang.com, 1 laozhengxing.com, 0 laozhu.me, 1 @@ -85254,11 +85209,6 @@ lapinator.net, 1 lapinmalin.tk, 1 lapismagico.com, 1 lapix.com.co, 1 -laplace.chat, 1 -laplace.cn, 1 -laplace.live, 1 -laplace.network, 1 -laplace.properties, 1 lapland.shop, 1 laplandtouristtroupers.se, 1 laplanquedujoueur.com, 1 @@ -85280,7 +85230,6 @@ laprensadelasagradafamilia.org, 1 laprophan.com, 1 lapseofsanity.net, 1 lapshore.com, 1 -laptopantoan.vn, 1 laptopgiasi.vn, 1 laptopnaive.com, 1 laptopnewbie.eu.org, 1 @@ -85345,6 +85294,7 @@ lariche.lv, 1 larifari.ch, 1 larigami.de, 1 larimarhomes.ca, 1 +larimartransporte.de, 1 larimer.gov, 1 larimercolorado.gq, 1 lariver.org, 1 @@ -85367,7 +85317,6 @@ larry.buzz, 1 larryandprisca.it, 1 larryhmillerseniorhealth.com, 1 larryli.cn, 1 -larrywalshe.com, 1 lars-ewald.com, 1 lars-kusch.de, 1 lars-mense.de, 1 @@ -85461,10 +85410,12 @@ lassesworld.se, 1 lassiutriainen.fi, 1 lassovideos.com, 1 lasst-uns-beten.de, 1 +last-modified.com, 1 last-strike.org, 1 lastation.ca, 1 lastbooks.gq, 1 lastcast.bg, 1 +lastencore.org, 1 lastfriends.site, 1 lastingcar.com, 1 lastingmarksers.ga, 1 @@ -85557,6 +85508,7 @@ latka.tk, 1 latnetwork.com, 1 latoken.com, 1 latoquedor.com, 1 +latorrecastropol.es, 1 latortilleria.eu, 1 latos.tk, 1 latour-managedcare.ch, 1 @@ -85656,6 +85608,7 @@ lauzon-hitter.com, 1 lava.moe, 1 lavabit.com, 1 lavabit.no, 1 +lavadodesalascdmx.mx, 1 lavaggio.it, 1 lavaggista.it, 1 lavaldostana.es, 1 @@ -85704,7 +85657,6 @@ law-colleges.com, 1 law-moshkovich.co.il, 1 law-peters.de, 1 law-profile.com, 1 -law-zur.co.il, 1 law.co.il, 1 law22.com, 0 lawabidingcactus.com, 1 @@ -85714,7 +85666,6 @@ lawassociationtt.com, 1 lawcadia.co.uk, 1 lawcadia.com, 1 lawcancer.cf, 1 -lawcer.com, 1 lawcollaborator.com, 1 lawcore.com.ua, 1 lawcover.com.au, 1 @@ -85738,7 +85689,6 @@ lawmint.com, 1 lawmore.pl, 1 lawn-seeds.com, 1 lawn-tech.jp, 1 -lawnandordercs.com, 1 lawnenvyva.com, 1 lawnkitsers.ga, 1 lawnkitsest.ga, 1 @@ -85773,7 +85723,6 @@ lawstudio.legal, 1 lawsuit.tk, 1 lawsuitconsultanters.ga, 1 lawsuitconsultantest.ga, 1 -lawtests.ir, 1 lawtimesnews.com, 1 lawtrend.in, 1 lawvize.com, 1 @@ -85903,7 +85852,6 @@ lc863.com, 1 lc871.com, 0 lc873.com, 0 lc875.com, 0 -lc8841.com, 1 lc897.com, 1 lc8c.com, 1 lc8guidance.com, 1 @@ -85929,6 +85877,7 @@ lcfwasa.gov, 1 lcgaj.com, 1 lchardingplumbing.com.au, 1 lcht.ch, 1 +lcis-legal.ai, 1 lckube.it, 1 lclarkpdx.com, 1 lcle.uk, 1 @@ -85947,7 +85896,6 @@ lcsomo.gov, 1 lcti.biz, 1 lcv-psi.com, 1 lcv-psi.com.br, 1 -lcv.ceo, 1 lcv.cool, 1 lcv.email, 1 lcv.expert, 1 @@ -86013,7 +85961,7 @@ le-tempo.com, 1 le-therapeute.com, 1 le-upfitter.com, 1 le-vario.net, 1 -le-vit.com, 1 +le-vit.com, 0 le0n.ddns.net, 1 le0yn.ml, 1 le130rb.com, 1 @@ -86154,6 +86102,7 @@ learntosurflisbon.com, 1 learntotradethemarket.com, 1 learntube.cz, 0 learnupon.com, 1 +learnwelsh.cymru, 1 learnwisego-stage.com, 1 learnwith.cc, 0 leaseit24.com, 1 @@ -86173,6 +86122,7 @@ leathercollection.com, 1 leathercollection.de, 1 leathercollection.es, 1 leathercollection.fr, 1 +leathercollection.store, 1 leatherfur.tk, 1 leathergoods.tk, 1 leatherneckappliance.com, 1 @@ -86275,6 +86225,7 @@ ledgerscope.net, 0 ledgy.com, 1 ledhive.co.uk, 1 ledigajobb.se, 1 +ledlamba.com, 1 ledlampor365.se, 1 ledlenser.com, 1 ledlight.com, 1 @@ -86365,6 +86316,7 @@ leftclick.eu, 1 leftclick.fr, 1 leftclick.network, 1 leftclick.nl, 1 +leftcoast.events, 1 leftcoasthauling.com, 1 lefthandwater.gov, 1 lefucine.com, 1 @@ -86445,7 +86397,6 @@ legalnations.ga, 1 legalne-kasyna.com, 1 legalnews.cf, 1 legalnews.ml, 1 -legalneziolka.pl, 1 legalnorthamerican.ga, 1 legaloriginal.ga, 1 legalphase.ga, 1 @@ -86477,7 +86428,6 @@ legalsustain.ga, 1 legalthunder.ga, 1 legaltings.com, 1 legaltip.eu, 1 -legaltity.com, 1 legaltreasure.ga, 1 legalunique.ga, 1 legalverde.ga, 1 @@ -86600,6 +86550,7 @@ leisurevip.com, 1 leit.kr, 0 leitha.eu, 1 leitz-cloud.com, 1 +lejaimesteticaspa.com, 1 lejardindesmesanges.fr, 1 lejlax.com, 1 lejournaldublog.com, 0 @@ -86633,6 +86584,7 @@ lem0n.cc, 1 lem0n.eu.org, 1 lemaldive.eu, 1 lemanbleu.ch, 1 +lemarcheatavola.com, 1 lemarcheelagrandeguerra.it, 1 lemasdupalus.com, 1 lematelas.fr, 1 @@ -86655,6 +86607,7 @@ lemo.la, 1 lemoine.at, 1 lemon.nl.eu.org, 1 lemonade.com, 1 +lemonadefashion.com, 1 lemonardo.ga, 1 lemonbrain.ch, 1 lemoncloud.eu.org, 1 @@ -86666,6 +86619,7 @@ lemonsoftware.eu.org, 1 lemontownshippa.gov, 1 lemonwater.tk, 1 lemp.sh, 1 +lempetz.de, 1 lemr.fr, 1 lemvig.nu, 1 lemx.exchange, 1 @@ -86730,10 +86684,9 @@ lenoyau.com, 1 lenqiue.com, 0 lenr-experiment.tk, 1 lenr-forum.com, 1 -lens-soma.com, 1 lens.google.com, 1 lens.tw, 1 -lens.xyz, 1 +lens.xyz, 0 lenseshop.tk, 1 lensfiyat.com, 1 lensflair.studio, 1 @@ -86802,6 +86755,7 @@ leonklingele.de, 1 leonorebrandwebsites.nl, 1 leonpa.gov, 1 leonplast.tk, 1 +leontailoring.com, 1 leontiekoetter.de, 1 leontworzy.pl, 1 leontyev.tk, 1 @@ -86899,13 +86853,13 @@ lesblogueuses.fr, 1 lesbonzoms.alwaysdata.net, 1 lesborgestv.cat, 1 lesbrillantsdaristide.com, 1 +lescabanesduloupbleu.com, 1 lescharmesdebailly.com, 1 lescommunes.com, 1 lescomptoirsdepierrot.com, 1 lesconcours.tk, 1 -lescoquetteriesdenais.fr, 1 lescrapdesfilles.fr, 1 -lescrieursduweb.com, 0 +lescrieursduweb.com, 1 lesdelicesdeloris.fr, 1 lesdeuxfilles.be, 1 lesdeuxrives.com, 1 @@ -87121,7 +87075,6 @@ levidromelist.com, 1 levincc.com, 1 levinholidaypark.co.nz, 1 levis.fun, 1 -levis.name, 1 levischuck.com, 1 levisenlaw.com, 1 levitatingx.com, 1 @@ -87174,7 +87127,6 @@ lexe.club, 1 lexeri.com, 1 lexgo.be, 1 lexgo.lu, 1 -lexic.co, 1 lexico.pt, 1 lexicography.online, 1 lexicore.ga, 1 @@ -87195,6 +87147,7 @@ lexjunkie.xyz, 1 lexmedia.ro, 1 lexmondcommunications.com, 1 lexopen.dk, 1 +lexpars.com, 1 lexpartsofac.com, 1 lexpert.ca, 1 lexplicite.fr, 1 @@ -87237,7 +87190,6 @@ lfgss.com, 1 lfi-mv.de, 0 lfmosqueira.com.br, 1 lfn.moe, 1 -lfnaturopathie.com, 1 lforum.tk, 1 lfrconseil.com, 1 lfyhokk.tk, 1 @@ -87321,6 +87273,7 @@ liana.site, 1 lianand.com, 1 liangbi.ml, 1 liangfaner.com, 0 +liangji.com.tw, 1 liangmian.com, 1 liangxingai.com, 1 liangyichen.net, 0 @@ -87444,6 +87397,7 @@ libraryofcode.us, 1 librarytapes.tk, 1 librarytools.com, 1 libravatar.org, 1 +librazy.org, 1 libre-innovation.org, 1 libre.cr, 1 libre.net.au, 1 @@ -87485,6 +87439,8 @@ libstaffer.com, 1 libstaffer.net, 1 libstick.org, 1 libstock.si, 1 +libus.pro, 1 +libusova.pro, 1 libvolk.org, 1 libwizard.com, 1 libwizard.net, 1 @@ -87536,6 +87492,7 @@ lidel.org, 1 lidepla.com, 1 lidernaturascarlettbados.com, 1 liderok.tk, 1 +liderzyprawa.pl, 1 lidhedredovisning.se, 1 lidkoping.se, 1 lidl-gewinnspiel.de, 1 @@ -87591,7 +87548,6 @@ life-time.nl, 1 life24korea.com, 1 life4net.tk, 1 lifeandhealthtips.tk, 1 -lifeandhowtosurviveit.com, 1 lifeartstudios.net, 1 lifeasgame.tk, 1 lifeatthemax.graphics, 1 @@ -87615,6 +87571,7 @@ lifehacker.com, 1 lifeinhellfansite.tk, 1 lifeinhex.com, 1 lifeinsurancepro.org, 1 +lifeis.money, 1 lifeisabug.com, 1 lifeisbeautiful.com, 1 lifeismmo.com, 1 @@ -87679,7 +87636,6 @@ lifeupgame.fr, 1 lifewithdyna.com, 1 lifexpert.tk, 1 lifexue.com, 1 -lifi.is, 1 lift-world.info, 1 lift.hr, 1 liftagacademy.com, 1 @@ -87701,6 +87657,7 @@ ligaro.nl, 1 light.mail.ru, 1 lightandvideo.com, 1 lightbearer.tk, 1 +lightbluelearning.com, 0 lightbook.org, 1 lightcraftmc.tk, 1 lightdark.xyz, 1 @@ -87729,7 +87686,6 @@ lightoflifehomoeopathyclinic.com, 1 lightography.com, 1 lightonelectrical.com.au, 1 lightquantum.moe, 1 -lightrun.com, 1 lights0123.com, 1 lightsfromspace.com, 0 lightsheep.no, 0 @@ -87840,7 +87796,7 @@ lilstarry.com, 1 lilth.moe, 1 liltv.media, 1 lilula-web.jp, 1 -liluna.nl, 1 +liluna.nl, 0 lily-bearing.com, 1 lily-inn.com, 1 lily-luv.com, 1 @@ -87946,6 +87902,7 @@ lincolncountysd.gov, 1 lincolncountysheriffok.gov, 1 lincolncountytn.gov, 1 lincolncountywy.gov, 1 +lincolnfinewines.com, 1 lincolnil.gov, 1 lincolnimps.tk, 1 lincolnmoneyman.com, 1 @@ -88132,6 +88089,7 @@ linkthis.ml, 1 linkthisstatus.ml, 1 linkto.cf, 1 linku.com, 1 +linkupcareer.id, 1 linkurio.us, 1 linkurious.com, 1 linkuva.tk, 1 @@ -88153,6 +88111,7 @@ linncounty-ia.gov, 1 linncountyelections-ia.gov, 1 linncountyiowa.gov, 1 linncountyor.gov, 1 +linnemanlabs.com, 1 linngde.com, 1 linnich.de, 1 linocolombo.tk, 1 @@ -88184,7 +88143,7 @@ linotype.tk, 1 linpx.com, 0 linqapp.com, 1 linqhost.nl, 1 -linserto.it, 1 +linserto.it, 0 linss.com, 1 linss.com.cn, 1 linss.name, 1 @@ -88540,7 +88499,6 @@ littlesilvernj.gov, 1 littlesk.in, 1 littleskin.cn, 1 littlesouls.ml, 1 -littlesouthafrica.co.uk, 1 littlestars.bg, 1 littlesteve.es, 1 littletigerchinese.com, 1 @@ -88550,6 +88508,7 @@ liturgical.net, 1 liturkey.tk, 1 litvideoserver.de, 1 litvinenko.tech, 1 +litvinovdev.ru, 1 litwinek.pl, 1 litz.ca, 1 litzenberger.ca, 1 @@ -88684,6 +88643,7 @@ livewebtutor.com, 1 liveweddingartist.ca, 0 liveweddingpainter.ca, 1 livewirecommunications.co.uk, 1 +liveyouridea.com, 1 livezrejstejna.cz, 1 livfcshop.com, 1 livi.co.uk, 1 @@ -88760,7 +88720,6 @@ lizzwood.com, 1 lizzythepooch.com, 1 lj-creation.com, 1 ljason.cn, 1 -ljcybersolutions.uk, 1 ljdesign.be, 1 ljekarne-plantak.hr, 1 ljesports.com, 1 @@ -88837,6 +88796,7 @@ lmrcirurgiaplastica.pt, 1 lmrcouncil.gov, 1 lmsal.com, 1 lmsaura.com.br, 1 +lmsvisaoimoveis.com.br, 1 lmtls.me, 1 lmtravis.com, 1 lmvsci.gov, 1 @@ -89049,7 +89009,6 @@ locksmithssanmarcostx.com, 1 locksmithstaffordtx.com, 1 locksmiththewoodlands.com, 1 locksport.org.nz, 1 -lockwoodonlinejournals.com, 1 loco-concepts.nl, 1 loco-creations.nl, 1 locomediagroep.nl, 1 @@ -89073,6 +89032,7 @@ lodestarss.com, 1 lodewijkict.nl, 1 lodewillems.com, 1 lodger.cf, 1 +lodhagroup.in, 1 lodki-pvh.com, 0 lodni.site, 1 lodosswar.tk, 1 @@ -89191,7 +89151,6 @@ logodevir.org, 1 logoenvue.fr, 1 logoesun.com, 1 logofiyati.com, 1 -logoglo.com, 1 logolabben.cf, 1 logolando.tk, 1 logomarket.jp, 1 @@ -89229,6 +89188,7 @@ lohnsteuerhilfe-essen.de, 1 lohnsteuerhilfe.net, 1 lohocla.org, 1 lohr.me, 1 +loi25.io, 1 loic-raymond.fr, 1 loiit.ga, 1 loire-en-bateau.fr, 1 @@ -89410,7 +89370,6 @@ londontwpmi.gov, 1 londonukbasedvipcloseprotectionbodyguardservices.com, 1 londonvetspecialists.vet, 1 londonwomensclinic.com, 1 -lone-gunman.be, 1 lone-wolf.tk, 1 lonecesitope.com, 1 loneline.ss, 1 @@ -89497,7 +89456,6 @@ lonleymoon.tk, 1 lonniec.com, 1 lonniemason.net, 1 lonokedistrictcourtar.gov, 1 -lonsee.de, 1 lonza.ch, 1 lonza.com, 1 lonzagroup.net, 1 @@ -89544,7 +89502,6 @@ lootboy.de, 1 lootdog.io, 1 loothole.com, 1 lootlemon.com, 1 -lootrix.live, 1 loots.eu, 1 lootstudios.com, 0 loottitan.com, 1 @@ -89784,7 +89741,6 @@ loud-dragon.tk, 1 louderfaster.co.uk, 1 loudersent.ga, 1 loudgrowth.com, 1 -loudly.com, 1 loudmouth.tk, 1 loudontn911.gov, 1 loudouncountyva.gov, 1 @@ -89851,7 +89807,6 @@ love4taylor.xyz, 1 loveamber.me, 1 loveandloyalty.se, 1 loveasiangroup.com, 1 -lovebeingsexy.co.uk, 1 lovebigisland.com, 1 lovebirdhut.tk, 1 lovebo9.com, 1 @@ -90003,7 +89958,6 @@ lplbullets.com, 1 lpm.london, 1 lpmkonji.cf, 1 lpnjobsite.com, 1 -lpnm.us, 1 lps.in.ua, 1 lpsales.ca, 1 lpsolutions.com, 1 @@ -90038,7 +89992,6 @@ lrumeq.com, 1 lrv-grobbendonk.tk, 1 lrztp.org, 1 ls-alarm.de, 1 -lsa-international.com, 1 lsbk.ch, 1 lsbttiq.org, 1 lsc-dillingen.de, 1 @@ -90064,6 +90017,7 @@ lskgreengroup.cz, 1 lslbc.gov, 1 lsmodamodesta.com.br, 1 lspdonline.gq, 1 +lspl.pl, 1 lsquared.com, 1 lsrm.org, 1 lstma.com, 1 @@ -90119,6 +90073,7 @@ luathungson.vn, 1 lubar.me, 1 lubartow24.pl, 1 lubchemspecialties.com, 0 +lubenergy.com.ar, 1 lubosabo.tk, 1 lubot.net, 1 lubotodorov.com, 1 @@ -90128,6 +90083,7 @@ luc-nutrition.tk, 1 luc-oberson.ch, 0 luca-appeals.gov, 1 luca-steeb.com, 1 +lucaaltimare.it, 1 lucaconrads.de, 1 lucade.ddns.net, 0 lucafontana.net, 1 @@ -90251,10 +90207,8 @@ ludum-polus.xyz, 1 ludum.pl, 1 ludunwayoo.com, 1 ludwig.im, 1 -ludwiggrill.de, 1 ludwigjohnson.se, 1 ludwigpro.net, 1 -ludwigsburger-brauhaus.de, 1 luedeke-bremen.eu, 1 lueersen.homedns.org, 1 luehne.de, 1 @@ -90334,6 +90288,7 @@ lukaszuk.net, 1 lukaszuk.pl, 1 lukaszwojcik.com, 1 lukaszwojcik.net, 1 +lukaszwojcik.photo, 1 luke.id, 1 luke6887.me, 1 lukeandjesse.wedding, 1 @@ -90368,6 +90323,7 @@ lulu960.xyz, 1 lulugold.ba, 1 luluwoldtravel.com, 1 lumaesthetic.co.uk, 1 +lumafestival.com, 1 lumaistore.com.br, 1 lumalux.it, 1 lumapartners.com, 1 @@ -90375,7 +90331,6 @@ lumapr.com, 1 lumasearch.com, 1 lumbardhi.tk, 1 lumbercartel.ca, 1 -lumberg-automationusa.com, 1 lumberjackman.tk, 1 lumbre-encendedores.com, 1 lumchan.tk, 1 @@ -90385,7 +90340,7 @@ lumentell.us, 1 lumer.tech, 1 lumi.com, 1 lumi.pw, 1 -lumien.net, 1 +lumidatasolutions.com, 1 lumieredesoy.com, 1 luminabh.com.br, 1 luminal-creation.com, 1 @@ -90566,6 +90521,7 @@ luvey.com, 1 luviantrade.com.ec, 1 luvmihome.com, 1 luvscent.com, 1 +luwasuite.co.uk, 1 lux-house.tk, 1 lux-optica.pl, 1 luxanos.com, 1 @@ -90580,6 +90536,7 @@ luxedentalfl.com, 1 luxegram.co, 1 luxehomecompany.com, 1 luxehotels.com, 1 +luxekranen.nl, 1 luxelyhome.com, 1 luxemburgsite.tk, 1 luxereside.com, 1 @@ -90600,6 +90557,7 @@ luxplay.com.tw, 1 luxsat.tk, 1 luxsci.com, 1 luxstil.ga, 1 +luxtracking.com, 1 luxtransfer.am, 1 luxulyanvalley.co.uk, 1 luxur.is, 1 @@ -90641,11 +90599,10 @@ luzica.tk, 1 luziekurth.com, 1 luzonic.do, 1 luzsaude.pt, 1 -lv.com, 1 lv.lk, 1 lv.search.yahoo.com, 0 lv0.it, 0 -lvadviser.com, 1 +lv5.top, 1 lvcservicesplus.com.au, 0 lvcshu.com, 1 lvdgroup-innov8.com, 1 @@ -90686,10 +90643,12 @@ lxiv.eu, 1 lxnchan.cn, 1 lxx4380.com, 1 ly-nux.fr, 1 +ly3s.me, 1 lyam.fr, 1 lyanaprintable.com, 1 lyap-lyandiya.ga, 1 lyax.be, 1 +lybelul.com, 1 lycaknight.de, 1 lycaonsec.com, 1 lyceum.lk, 1 @@ -90745,11 +90704,13 @@ lyon-interactive.com, 1 lyon-synergie.com, 1 lyonelkaufmann.ch, 0 lyonliving.com, 1 +lyonrestoration.com, 1 lyonsbytes.com, 1 lyontwp-higginsmi.gov, 1 lyoproform.fr, 1 lyradhealth.com, 0 lyrae.de, 1 +lyram2m.com.br, 1 lyrateatro.it, 1 lyrex.net, 1 lyric.co.uk, 1 @@ -90808,6 +90769,7 @@ m-generator.com, 1 m-h-b.fr, 1 m-i.si, 1 m-idea.jp, 1 +m-ini.me, 1 m-jkelleystudio.com, 1 m-mail.fr, 1 m-matsuo.co.jp, 1 @@ -90848,6 +90810,7 @@ m2il.co, 1 m2international.com, 1 m2jest1c.ml, 1 m2os.com, 1 +m2t.com, 1 m2tm.fr, 1 m3-software.com, 1 m36533.com, 1 @@ -91108,8 +91071,8 @@ madge.tk, 1 madhawaweb.tk, 1 madhyrecords.com, 1 madian.tk, 1 -madil-thob.com, 1 madinahmarket.com, 1 +madinetmasr.estate, 1 madinina.tk, 1 madison.com, 1 madisoncountyalema.gov, 1 @@ -91215,6 +91178,7 @@ maestrocase.it, 1 maestrochalet.fr, 1 maestroholzbau.de, 1 maestrotuinhuizen.nl, 1 +maestrowu.com, 1 maeva-beauty.com, 1 maeva-beauty.fr, 1 maeva.com, 1 @@ -91280,7 +91244,6 @@ magentacares.com, 1 magentazorg.nl, 1 magento-ecommerce.it, 1 magento2.hu, 1 -magentodevelopment.co.uk, 1 magentrix.com, 0 magepro.fr, 1 mager.org, 1 @@ -91337,7 +91300,6 @@ magicpaper.net, 1 magicpet.com, 1 magicpill.com.au, 1 magicpin.in, 1 -magicport.ai, 1 magicsms.pl, 1 magicspaceninjapirates.de, 1 magictable.com, 1 @@ -91421,7 +91383,7 @@ magsdata.com, 1 magu.kz, 1 maguire.tk, 1 maguroalmare.com.br, 1 -maguspace.com, 0 +maguspace.com, 1 magutah.gov, 1 maguy-energies.com, 1 magwin.co.uk, 1 @@ -91451,7 +91413,6 @@ mahayana.tk, 1 mahbobmax.tk, 1 mahboobi.tk, 1 mahdafweb.tk, 1 -mahdiyar.id.ir, 1 mahealthsurveys.gov, 1 maherhost.uk, 1 maheshbabuphotography.tk, 1 @@ -91493,7 +91454,6 @@ maidinaustralia.com, 1 maidoty.net, 1 maie.ro, 1 maiebanatulfruncea.com, 1 -maierteamre.com, 1 maigesellschaft-lammersdorf.de, 1 maijia800.com, 1 maikendener.com, 0 @@ -91645,7 +91605,6 @@ maison-auriat.fr, 1 maison-coutin.com, 1 maison-du-mineur.com, 1 maison-eureka.fr, 1 -maison2com-event.fr, 1 maisondelafigue.com, 1 maisondepax.com, 1 maisondidon.com, 1 @@ -91679,12 +91638,12 @@ majavucic.com, 1 majelisriyadhah.com, 1 majemedia.com, 1 majestas.tk, 1 -majestic.games, 0 majesticpride.in, 1 majestio.tk, 1 majewskiplumbing.com, 1 majhang.com, 1 majid.info, 1 +majid.org, 1 majisign.co.uk, 1 majk.me, 1 majkassab.com, 1 @@ -91725,13 +91684,13 @@ makedonija.net.mk, 1 makeevkanews.ru, 1 makeit-so.de, 0 makeitpopadvertising.com, 1 +makeitredi.com, 1 makeitright.ca, 1 makeitshort.ml, 1 makeitsimple.pt, 1 makejustice.work, 1 makejusticework.org.uk, 1 makelindazi.com, 1 -makellos-kosmetik.de, 1 makelpunt.nl, 1 makemejob.com, 1 makemillion.tk, 1 @@ -91815,6 +91774,8 @@ malagarental.com, 1 malahov.tk, 1 malakye.com, 1 malami.gr, 1 +malamin.org, 1 +malamujercomunicacion.com, 0 malamutedoalasca.com.br, 1 malardalenvvs.se, 1 malariaadvice.gq, 1 @@ -92038,7 +91999,6 @@ manawill.jp, 1 manawithtea.com, 1 manbetx1998.live, 1 manboy.tk, 1 -mancaverevolution.com, 1 manchester.enf.br, 1 manchestermn.gov, 1 manchestermoneyman.com, 1 @@ -92118,11 +92078,9 @@ manhassetparkdistrictny.gov, 1 manhattan.at, 1 manhattan.institute, 1 manhattanchoralensemble.org, 1 -manhattanda.org, 1 manhattandermatologistsnyc.com, 1 manhattanks.gov, 1 manhuagui.com, 1 -manhwasco.net, 1 mani.tw, 1 mania.africa, 1 maniacoland.com, 1 @@ -92197,7 +92155,6 @@ mannigroup.com, 1 manningtreetilesandflooring.co.uk, 1 mannnen.nl, 1 mannservrice.cf, 1 -manny.lk, 1 mano.tours, 1 manoa.ar, 1 manobankas.lt, 1 @@ -92253,7 +92210,7 @@ manu.quebec, 1 manual-pdf.com, 1 manual-user-guide.com, 1 manualcert.ie, 1 -manualdousuario.net, 0 +manualeusoemanutenzione.com, 1 manualowl.com, 1 manualredeye.com, 1 manualscollection.com, 1 @@ -92374,6 +92331,7 @@ mapsly.com, 1 mapstack.org, 1 maptician.com, 1 mapuut.net, 1 +mapy.com, 1 maqcampo.com.br, 1 maqnelson.com.br, 1 maqnelsonagricola.com.br, 1 @@ -92390,6 +92348,7 @@ maquinariaspesadas.org, 0 maquinasperfectas.tk, 1 maquinasquepiensan.tk, 1 mar-eco.no, 1 +mar-zyg.pl, 1 mar.pt, 1 marabook.fr, 1 maracarlinicourses.com, 1 @@ -92480,6 +92439,7 @@ marchukov.com, 1 marcil-lavallee.ca, 1 marcillacetfils.fr, 1 marcinkurek.online, 1 +marcipanovedorty.cz, 1 marclange.net, 1 marco-burmeister.de, 1 marco-hegenberg.net, 1 @@ -92731,6 +92691,7 @@ markentier.tech, 1 markenzapatent.com, 1 markermatic.com, 1 market-garden.tk, 1 +market-money.ru, 1 market.android.com, 1 market.us, 1 marketbar.ie, 1 @@ -92738,6 +92699,7 @@ marketbasket.tk, 1 marketcalls.in, 1 marketcavalli.it, 1 marketcrypto.id, 1 +marketdocs.io, 1 marketforce.com, 1 marketgarden.tk, 1 marketgrid.ml, 1 @@ -92749,7 +92711,6 @@ marketing-boerse.de, 1 marketing1-0-1.com, 1 marketing4trends.com, 1 marketinganalytics.africa, 1 -marketingautomationplan.nl, 1 marketingbab.com, 1 marketingbrandingnews.com, 1 marketingbrandingnews.net, 1 @@ -92811,11 +92772,12 @@ markllego.com, 1 markmccluretoday.com, 1 markmet.fi, 0 markmetcalfe.io, 1 -markmorris.com.au, 1 +markmorris.com.au, 0 marknewtonband.com, 1 markocloud.com, 1 markoglou.com.gr, 1 markoheijnen.com, 1 +markopool.ru, 1 markov.com.ru, 1 markovonline.ru, 1 markovowest.bg, 1 @@ -92924,9 +92886,11 @@ marquisepools.com, 1 marrakechairporttransfer.com, 1 marrakechauxiliaire.com, 1 marredesefairebaladersurlenet.com, 1 +marretada.org, 1 marriage-shrine.jp, 1 marriageaustralia.org, 1 marriagecelebrantmelbourne.au, 1 +marriagemmatters.info, 1 marrickvilleapartments.com.au, 1 marronniergate.com, 0 marropax.com, 1 @@ -92961,6 +92925,7 @@ marshmallowchallenge.com, 1 marshmaloo.ir, 1 marshop.tk, 1 marsicano.tk, 1 +marsico.org, 1 marsikelektro.cz, 1 marsilioblack.tk, 1 marsmediavideo.com, 1 @@ -93011,6 +92976,7 @@ martinboerhof.nl, 1 martinbrandt.de, 1 martinbrower.us, 1 martinbuildingservices.co.uk, 1 +martinbykov.eu, 1 martincernac.cz, 1 martincornelissen.tk, 1 martindales.ltd.uk, 1 @@ -93020,6 +92986,7 @@ martinelias.cz, 1 martineric.tk, 1 martineve.com, 0 martinfresow.de, 1 +martingura.sk, 1 martinhal.cn, 1 martinhal.com, 1 martinhalfamilyblog.com, 1 @@ -93036,7 +93003,6 @@ martinkus.eu, 1 martinlabs.me, 1 martinlukes.cz, 1 martinmaze.com, 1 -martinmuc.de, 1 martino.ga, 1 martinploug.dk, 1 martinpohl.cz, 1 @@ -93061,7 +93027,6 @@ martinvillalba.info, 1 martinvillalba.net, 1 martinvillalba.org, 1 martinvotes.gov, 1 -martnlab.com, 1 martonvaro.com, 1 martonveronika.tk, 1 martosaranda.com, 1 @@ -93192,7 +93157,6 @@ masiavillalonga.com, 1 masiniunelte.store.ro, 1 masinky.tk, 1 masiorama.it, 1 -masjidalbayyinah.org, 1 masjidalnoorwairarapa.co.nz, 1 mask-skin.tk, 1 maskamuse.com, 1 @@ -93202,7 +93166,6 @@ maskedworld.tk, 1 maskim.fr, 1 masking.my.id, 1 maskinkultur.com, 1 -maskmail.co, 1 maskmy.id, 1 maskstyle.tk, 1 maslenka.tk, 1 @@ -93259,14 +93222,12 @@ massazh.cf, 1 massbank.eu, 1 massconsultores.com, 1 masse.org, 1 -massfone.com, 0 masshelpline.com, 1 masshost.tk, 1 masshpc.gov, 1 massimo.com.my, 1 massimocasa.it, 1 massimoturella.it, 1 -massindia.in, 1 massive.tk, 1 massiveanalyser.com, 1 massiveassault.tk, 1 @@ -93337,7 +93298,6 @@ mastersinesl.org, 1 mastersofscale.com, 1 mastersplace.tk, 1 masterstation.net, 1 -mastersthesiswriting.com, 1 masterstouch.co.za, 1 masterstruckingacademy.com, 1 mastertent.com, 1 @@ -93375,6 +93335,7 @@ matador.ch, 1 matafonov.tk, 1 mataharischoolsurf.com, 1 mataharitimoer.tk, 1 +matahub.de, 1 matanz.de, 1 matapacoin.org, 1 matarbyte.se, 1 @@ -93391,7 +93352,7 @@ matchable.uk, 1 matchflix.ch, 1 matchimmo.fr, 1 matchlive.ga, 1 -matchmove.com, 1 +matchmove.com, 0 matchmycourse.com, 1 matchory.com, 1 matchpointusa.com, 1 @@ -93460,6 +93421,7 @@ mathesongas.com, 0 mathesonsteplock.ca, 1 matheusmacedo.ddns.net, 1 mathewlane.com, 1 +mathfilm.dk, 1 mathias.re, 0 mathiasbynens.be, 1 mathiasgarbe.de, 1 @@ -93528,9 +93490,7 @@ matrimonio.com, 1 matrimonio.com.co, 1 matrimonio.com.pe, 1 matrimonios.cl, 1 -matrimoniosriviera.com, 1 matrimonyassist.com, 1 -matrimonybangladesh.com, 0 matriterie-sdv.ro, 1 matrix-team.tk, 1 matrix.org, 1 @@ -93552,6 +93512,7 @@ matsson.com, 1 matstodin.is, 1 matsu-semi.com, 1 matsu.gov, 1 +matsubaya1927.com, 1 matsuda-shikaiin.com, 1 matsuo-dental-clinic.jp, 0 matsushima-kosodate.com, 1 @@ -93562,7 +93523,7 @@ matt.re, 1 mattab.xyz, 1 mattadams.info, 1 mattajones.com, 1 -mattandreko.com, 1 +mattandreko.com, 0 mattandyana.com, 1 mattaponi.gov, 1 mattari-app.com, 1 @@ -93587,7 +93548,6 @@ matteomarescotti.it, 1 matteosaturn.com, 1 matteozinnia.it, 1 mattersource.com, 1 -mattes.cc, 1 mattessons.co.uk, 1 mattferderer.com, 1 mattfin.ch, 1 @@ -93615,7 +93575,7 @@ matthewohare.com, 0 matthewoliver.com, 1 matthewoshea.tk, 1 matthewprenger.com, 1 -matthewrochow.com, 1 +matthewrochow.com, 0 matthewsaeger.com, 1 matthewtester.com, 1 matthewthode.com, 1 @@ -93643,6 +93603,7 @@ matthieuschlosser.fr, 1 matthijssen.info, 1 matthijsvos.com, 1 matthijsvos.org, 1 +mattholihan.design, 1 matthrkac.com.au, 1 mattiash.se, 1 mattilsynet.no, 1 @@ -93715,7 +93676,6 @@ mau.life, 1 mau.lu, 1 mau.photos, 1 maubot.xyz, 1 -mauboussin.ma, 1 maudfourier.com, 0 mauditeboisson.tk, 1 maudok.gov, 1 @@ -93729,6 +93689,7 @@ maumovie.ml, 1 maunayogastudio.com, 1 maunder.ru, 1 maunium.net, 1 +maurice-brant.uk, 1 maurice-walker.com, 0 mauricechavez.tk, 1 mauricedb.nl, 1 @@ -93782,6 +93743,7 @@ mawrex.tech, 1 mawtinii.com, 1 max-anime.tk, 1 max-apk.com, 0 +max-it.tech, 1 max-moeglich.de, 1 max-went.pl, 1 max.com, 1 @@ -93844,7 +93806,6 @@ maxim.live, 1 maximababy.de, 1 maximalsparen.com, 0 maximanet.tk, 1 -maximbaz.com, 1 maximdeboiserie.be, 1 maximdens.be, 1 maximeferon.fr, 1 @@ -93891,7 +93852,6 @@ maxnac.tk, 1 maxnews.mn, 1 maxogles.com, 0 maxopen.cf, 1 -maxopolyworldnews.com, 1 maxostapenko.com, 1 maxp.info, 0 maxpapildai.lt, 1 @@ -93902,7 +93862,6 @@ maxrandolph.com, 1 maxrickettsuy.com, 1 maxrider.tk, 1 maxroganov.tk, 1 -maxs.com, 1 maxschleiffer.com, 1 maxthoene.de, 1 maxtire.com, 1 @@ -93946,6 +93905,7 @@ mayerbrownllz.com, 1 mayersoncreative.com, 1 mayfairlakes.org, 1 mayfairlimo.eu, 1 +mayfairwecare.com, 1 mayfieldheightsohio.gov, 1 mayflowerbocawina.tk, 1 mayflowercreative.com, 0 @@ -93965,7 +93925,6 @@ mayre-idol.tk, 1 mayrivermontessori.com, 0 maysalward.com, 1 maysambotros.tk, 1 -mayslandingcornholeleague.com, 1 maythai.eu, 1 maythai.pl, 1 mayuraakitchens.com, 1 @@ -94003,7 +93962,6 @@ mb.estate, 1 mb300sd.com, 1 mbabullshit.com, 1 mbaestlein.de, 1 -mbainflatables.co.uk, 1 mbakaro.in, 1 mbalaw.pl, 1 mbank.kg, 1 @@ -94081,8 +94039,9 @@ mcc.gov, 1 mccabes.com.au, 1 mccallkulak.org, 1 mccannhealth.com, 1 +mccarthyhire.co.uk, 1 mccarthyprestige.com.au, 1 -mccinc.ca, 1 +mccinc.ca, 0 mcclaincountyok.gov, 1 mccn.pp.ua, 1 mccom.at, 1 @@ -94163,7 +94122,6 @@ mcicoach.com, 1 mcideas.tk, 1 mcimotorcoach.com, 1 mcipoc.com, 1 -mcirculo.com.br, 1 mcivor.me, 1 mcjackk77.me, 1 mcjars.com, 1 @@ -94207,6 +94165,7 @@ mcnet.care, 1 mcnext.net, 1 mcnicolls.com, 1 mcnoobs.pro, 1 +mcnsrl.it, 1 mcochris.com, 1 mcon.se, 1 mconline.sg, 1 @@ -94267,7 +94226,6 @@ md-accounting.be, 1 md-carport.pl, 1 md-clinica.com.ua, 1 md-events.tk, 1 -md-mb.ro, 1 md-progressistes.fr, 1 md-service.net, 1 md28.in, 1 @@ -94352,6 +94310,7 @@ mealcast.ml, 1 mealnuzzle.com, 1 mealpedant.com, 1 meals.lv, 1 +mealthinker.com, 1 meamod.com, 1 meandliora.com, 1 meandmyemotions.org, 1 @@ -94363,7 +94322,6 @@ meao.io, 1 meao.market, 1 meao.online, 1 meao.pictures, 1 -meao.ru, 1 meapbot.com, 1 meapbot.net, 1 meapbot.org, 1 @@ -94387,7 +94345,6 @@ mebelipetrov.com, 1 mebeliside.bg, 1 mebelisk.com.br, 1 mebelizori.com, 1 -mebelok.com, 1 mebelshik.tk, 1 mebin.me, 1 mebin.studio, 1 @@ -94505,6 +94462,7 @@ mec539.com, 1 mec760.com, 1 mec825.com, 1 mec888.net, 1 +meca.vision, 1 mecafresa.pt, 1 mecalac.com, 1 mecalux.com, 1 @@ -94548,14 +94506,16 @@ med-metrix.com, 0 med-nagoya-neurosurgery.jp, 1 med-spravca.ml, 1 med.aid.pl, 1 -med.de, 1 meda.bg, 1 medaboutme.ru, 1 medadacademy.com, 1 +medalexey.ru, 1 medali21.tk, 1 medaliturki.tk, 1 medalofvalor.gov, 1 medatixx.de, 1 +medav.ru, 1 +medav.tech, 1 medbiocompany.com, 1 medbiocompany.ml, 1 medbreaker-friends.at, 1 @@ -94671,7 +94631,6 @@ mediasst.com, 1 mediastroke.com, 1 mediataput.ga, 1 mediathekview.de, 0 -mediation-mv.de, 1 mediationculturelleclp.ch, 0 mediationwithmeg.com, 1 mediatrust.org, 1 @@ -94755,7 +94714,6 @@ medifit.si, 1 medifoto.tk, 1 medify.id, 1 medigap-quote.net, 1 -medigo.at, 1 medihost.com.au, 1 medihostsolutions.com.au, 1 medikalsepetim.org, 1 @@ -94767,10 +94725,6 @@ medinaelst.nl, 1 medinc.tk, 1 medino.com, 1 medinorte.es, 1 -medinside.ch, 0 -medinside.li, 0 -medinsider.ch, 0 -medinsider.li, 0 medipaw.com, 0 mediro-ict.co.za, 1 medirota.com, 1 @@ -94795,7 +94749,6 @@ mediumseznam.cz, 1 medivisionsc.com, 1 medivox.tk, 1 mediweed.tk, 1 -mediwish.com, 1 medizin18.at, 1 mediziner-goettingen.tk, 1 medja.net, 1 @@ -94819,7 +94772,7 @@ medousaclinique.com, 1 medovea.ru, 1 medovoe.ml, 1 medpatches.com, 1 -medpeer.co.jp, 1 +medpeer.co.jp, 0 medpeer.jp, 1 medportalmd.tk, 1 medpost.com, 1 @@ -94849,6 +94802,7 @@ medtronicpain.com, 1 meduna.org, 1 medunovi.com, 1 meduza.io, 1 +medva1997.tech, 1 medvedikorenka.cz, 1 medvedivka.tk, 1 medvedka-nasekomoe.tk, 1 @@ -94893,7 +94847,6 @@ meetfranz.com, 1 meetfriends.tk, 1 meetgeek.ai, 0 meeting-server.ml, 1 -meetingvotes.com, 1 meetjeslandsetriathlon.tk, 1 meetmaps.com, 1 meetmarlo.com, 1 @@ -95078,8 +95031,8 @@ meinbaustoffversand.de, 1 meinbetriebsrat24.de, 1 meincasinoportalcheck.com, 1 meincenter-meinemeinung.de, 1 -meincoach.at, 1 meindm.at, 1 +meine-blutspende.ch, 1 meine-email-im.de, 0 meine-email-im.net, 1 meine-mav.digital, 1 @@ -95182,6 +95135,7 @@ melanin.cf, 1 melanotan2sverige.to, 1 melanto.ro, 1 melaodealmeirim.pt, 1 +melas.site, 1 melbar.com.au, 0 melbet-download-bd.com, 1 melbet-id.mobi, 1 @@ -95221,10 +95175,10 @@ meldaterraverde.com.br, 1 meldcode-assistent.nl, 1 melderegister-auskunft.de, 1 meldjeaan.be, 1 -meldknop.nl, 1 meldpuntemma.nl, 1 mele.ro, 1 meleagrisartfestival.gr, 1 +meledee.com, 1 meleeweb.net, 1 melenchatsmelenchiens.fr, 1 meleracupuncture.com, 1 @@ -95264,6 +95218,7 @@ melnessgroup.com, 1 melo-verse.com, 1 melodee.de, 1 melodict.com, 1 +melodify.cn, 1 melodija.tk, 1 melodiouscode.co.uk, 1 melodiouscode.com, 1 @@ -95348,7 +95303,7 @@ memoryjoggerlibrary.com, 1 memorylines.ml, 1 memoryofyou.eu, 1 memoryplex.com, 1 -memphisrap.com, 1 +memphisrap.com, 0 mempoo.space, 1 mempool.chat, 1 mempool.de, 1 @@ -95654,7 +95609,6 @@ merrettsurvey.com, 1 merrickcountyne.gov, 1 merrillanwi.gov, 1 merrimacwi.gov, 1 -merry-christmas.co.in, 1 merrychristmas.ml, 1 merryxmas2015.tk, 1 merson.tv, 1 @@ -95687,6 +95641,7 @@ mescaline.org, 1 mescaline.wiki, 1 mesdagh.be, 1 mesec.cz, 1 +mesele.com.tr, 1 mesh.gov, 1 meshcore.forum, 1 meshdigital.io, 1 @@ -95701,6 +95656,7 @@ meskiukas.tk, 1 meslekkursu.com, 1 mesmer.tk, 1 mesmerus.net, 1 +mesnumeriques.fr, 1 mesologie-soesterberg.nl, 1 mesomeds.com, 1 mesonandino.tk, 1 @@ -95744,7 +95700,6 @@ mesvision.com, 1 mesvt.com, 1 meszlenyiattila.tk, 1 meta-cdn.net, 1 -meta-coaching.uk, 1 meta-ctglobalboard.uk, 1 meta-db.com, 1 meta-word.com, 1 @@ -95837,7 +95792,6 @@ metapublic.com, 1 metarhia.com, 1 metaskil.com, 1 metasolutions.se, 1 -metasophi.com, 1 metastasys.net, 1 metastitch.in, 1 metasurfaces.com, 1 @@ -95859,6 +95813,7 @@ meteo-parc.com, 1 meteoabegondo.tk, 1 meteoben.com, 1 meteobox.co, 1 +meteobox.com, 1 meteobox.cz, 1 meteobox.de, 1 meteobox.es, 1 @@ -95981,7 +95936,7 @@ mettools.co.uk, 1 metu.social, 1 metver.tk, 1 metyweb.ga, 0 -meu-amor.com, 1 +metzlerweb.org, 1 meu.re, 0 meubairro360.com.br, 1 meubanco7.com.br, 1 @@ -95995,7 +95950,6 @@ meulenerkes.tk, 1 meulivro.biz, 1 meulocal.ml, 1 meuneneoficial.com.br, 1 -meupix.ai, 1 meuprimeirosite.rio.br, 1 meurisse.org, 1 meusagendamentos.com.br, 1 @@ -96058,11 +96012,11 @@ mfavis.com, 1 mfcentral.com, 1 mfeasy.in, 1 mfedderke.com, 0 -mfen.de, 1 mferphotography.com, 1 mfg-fx.com, 1 mfgo.link, 1 mfgusa.com, 1 +mfi.center, 1 mfi.co.nz, 1 mfi.io, 1 mfiles.pl, 1 @@ -96075,7 +96029,6 @@ mfoda-eg.com, 1 mforum.com.au, 1 mfrepair.com, 1 mft.global, 1 -mfxbe.de, 0 mfxer.com, 1 mfxm.fr, 1 mfyy123.com, 1 @@ -96122,7 +96075,6 @@ mgroupweb.com, 1 mgsdb.com, 1 mgsisk.com, 1 mgtbaas.eu, 1 -mgtc.shop, 1 mh-cdn.de, 1 mh-hannover.de, 0 mh-lg.de, 1 @@ -96139,7 +96091,6 @@ mhcdesignstudio.com, 1 mhdit.de, 1 mhealthspot.com, 1 mheistermann.de, 1 -mhermans.nl, 1 mhf.gc.ca, 1 mhf.rs, 1 mhforce.com, 1 @@ -96159,7 +96110,6 @@ mhmfoundationrepair.com, 1 mhonline.fr, 1 mhp.net, 1 mhparena-stuttgart.de, 1 -mhshokuhi.ir, 1 mhtdesign.net, 1 mhuig.top, 1 mhurologytriad.org, 1 @@ -96179,7 +96129,6 @@ mi-baks.bg, 1 mi-beratung.de, 1 mi-magia.com, 1 mi-ras.ru, 1 -mi-soul.com, 1 mi.ras.ru, 1 mi1k.cn, 1 mia-manager.dk, 1 @@ -96253,6 +96202,7 @@ micdagostini.com, 1 michadenheijer.com, 1 michael-gerard.com, 1 michael-glaser.de, 1 +michael-heimann.de, 1 michael-hess.com, 1 michael-r.ddns.net, 1 michael-r.dynv6.net, 1 @@ -96279,7 +96229,6 @@ michaeldancot.com, 1 michaeldjoseph.com, 1 michaeldundas.com, 1 michaeleisen.org, 1 -michaelfoods.com, 1 michaelgehrman.com, 0 michaelglaser.de, 1 michaelgroves.tk, 1 @@ -96414,7 +96363,6 @@ microblink.com, 1 microcert.cn, 1 microcomploja.com.br, 1 microcosm.com, 1 -microdata.es, 1 microdesic.com, 1 microdesk.com, 1 microdon.org, 1 @@ -96422,7 +96370,6 @@ microdot.fr, 1 microdots.de, 1 microdrive.pt, 1 microferma.site, 1 -microfinance-crimea.ru, 0 microgates.net, 1 microgroove.jp, 1 microhydrony.org, 1 @@ -96477,7 +96424,6 @@ middlesexwoodpigeonclub.co.uk, 1 middletowndelcopa.gov, 1 middletownny.gov, 1 middletownri.gov, 1 -mide.gob.do, 1 midea.kg, 1 mideo.tk, 1 midesa.eu, 1 @@ -96511,7 +96457,6 @@ midpss.lt, 1 midrandsolarsystems.co.za, 1 midrange.com, 1 midress.club, 1 -midrocket.com, 1 midspace.co.uk, 1 midspss.lt, 1 midterm.us, 1 @@ -96521,6 +96466,7 @@ midvalleysewer.gov, 1 midville-ga.gov, 1 midwaycitysanitaryca.gov, 1 midwest-hidta.gov, 1 +midwest-material.com, 1 midwest737simulations.com, 1 midwestapologetics.org, 1 midwestbloggers.org, 1 @@ -96537,7 +96483,6 @@ miedge.net, 1 miegl.com, 1 miegl.cz, 1 mielboreal.com, 0 -mielehybla.it, 1 mielelpinsapar.com, 0 mielenosoitukset.fi, 1 mielkan.com, 1 @@ -96736,7 +96681,6 @@ mike-bland.com, 1 mike-burns.com, 1 mike-et-pascale-sanger.com, 1 mike-stobbe.de, 1 -mike.fo, 1 mikeandemily.duckdns.org, 1 mikeblazer.net, 1 mikeblog.site, 1 @@ -96773,6 +96717,7 @@ mikewrites.online, 1 mikeybot.com, 1 mikeylab.com, 1 mikeyroxtravels.com, 1 +mikezak.music, 1 mikhail-youzhny.tk, 1 mikhailkolesnikov.tk, 1 mikhalt.tk, 1 @@ -96807,6 +96752,7 @@ mikropixel.de, 1 mikroskopmedia.com, 1 mikrotech.co.za, 1 mikrotest.com.tr, 1 +mikrotik.com, 1 mikrotike.tk, 1 mikrozajmy-na-kartu.cf, 1 miku-doujin.com, 1 @@ -96958,7 +96904,6 @@ millhousen.tech, 1 milliarden-liste.de, 1 millibirlik.tk, 1 millibitcoin.jp, 1 -millida.net, 1 milliegrace.org, 1 millikart.az, 1 millionaireclub.tk, 1 @@ -97003,7 +96948,6 @@ mim-standaard.nl, 1 mim.am, 1 mim.properties, 1 mimamau.de, 1 -mimarchi.nl, 1 mimavision.ddns.net, 1 mimemo.io, 1 mimeo.digital, 1 @@ -97029,6 +96973,7 @@ mimumimu.net, 1 mimundodxn.com, 1 mimura.com.br, 1 mimusic.cf, 1 +mimyoi.com, 1 min-forsyning.dk, 1 min.kiwi, 0 min2.ru, 1 @@ -97119,7 +97064,6 @@ mine-craftlife.com, 1 mine-pixl.de, 1 mine-temoin.fr, 1 mine260309.me, 0 -minebbs.com, 0 minebitcoin.tk, 1 minecity.fun, 1 minecraft-game.ga, 1 @@ -97135,7 +97079,6 @@ minecrafteasy.gq, 1 minecraften.net, 0 minecraftforever.tk, 1 minecraftforum.de, 1 -minecraftforum.fun, 1 minecraftforum.ovh, 1 minecraftgoldwar.tk, 1 minecraftgta5.ml, 1 @@ -97252,7 +97195,6 @@ minimepet.com, 1 minimonies.tk, 1 minimoon.nl, 1 minimotogp.tk, 1 -minimundo3d.com, 1 minin.tk, 1 mining-club.tk, 1 mining-technology.com, 1 @@ -97290,7 +97232,6 @@ mink-coat.tk, 1 minka.net.bo, 1 minkafighter.eu, 1 minkatilmancoaching.nl, 1 -minkymoon.jp, 1 minload.com, 1 minly.com, 1 minmaxgame.com, 1 @@ -97373,6 +97314,7 @@ miobeach.nl, 1 miobt.eu.org, 0 miodun.pl, 1 miodysudnik.pl, 1 +mioffice.ai, 1 miomiojoyeria.com, 0 miomiorun.com, 0 miorganics.ro, 1 @@ -97470,6 +97412,7 @@ miroslav.id, 1 mirotakampus.com, 1 mirprav.tk, 1 mirri.net, 1 +mirrordata.net, 1 mirrordream.net, 1 mirrormirror.tk, 1 mirrormirrorhairstyles.com, 1 @@ -97495,7 +97438,6 @@ mis1042.com, 0 mis1042.top, 1 misagarcia.com, 1 misaka.me, 1 -misakaloli.com, 0 misaki0.jp, 1 misakiya.co.jp, 1 misalacuna.cl, 1 @@ -97568,7 +97510,6 @@ missouri-sky.tk, 1 missouricity-airductcleaning.com, 1 missouriheatingcoolingadvice.com, 1 missourititlesearch.com, 1 -missoy.me, 1 misspoliticsaustralia.cf, 1 misspoliticsaustralia.ga, 1 misspoliticsaustralia.gq, 1 @@ -97674,12 +97615,10 @@ mito-meishi.shop, 1 mitokashi.ml, 1 mitometals.lv, 1 mitotalplay.com.mx, 1 -mitozen.com, 1 mitragacor.org, 1 mitranlogistik.com, 1 mitraseo.tk, 1 mitratech.com.br, 1 -mitrausahagoto.com, 1 mitrax.com.br, 1 mitre-bedford.org, 1 mitre10.com.au, 0 @@ -97786,6 +97725,7 @@ miyatakaikei.com, 1 miyavru.com, 1 miyazakian.com, 1 miyohiro.net, 1 +miyokoofficial.com, 1 miyokosamurai.com, 1 miyoshi-kikaku.co.jp, 1 miyoshi-kikaku.com, 0 @@ -97819,6 +97759,8 @@ mjollnir.fr, 1 mjpromotions.nl, 1 mjpronk.nl, 1 mjrlegends.com, 1 +mjs.art, 1 +mjs.social, 1 mjsdefenceacademy.com, 1 mjsports.bet, 1 mjstudios.tk, 1 @@ -97959,7 +97901,6 @@ mlshh.pp.ua, 1 mlstav.sk, 1 mlstverse.org, 1 mltrade.ml, 1 -mlukas.xyz, 1 mlv-psychosomatik.de, 1 mlv.me, 1 mlytics.com, 1 @@ -98016,7 +97957,6 @@ mmpiservices.fr, 1 mmprojects.nl, 1 mmquality.com, 1 mmr.ua, 1 -mmrproperty.co.za, 1 mms.is, 1 mmsindustries.com, 1 mmsl.cz, 1 @@ -98042,6 +97982,7 @@ mnccc.gov, 1 mnciitbhu.me, 1 mncloud.de, 1 mnd.sc, 1 +mndaily.com, 1 mndeveloper.com, 1 mne.moe, 1 mnec.io, 1 @@ -98055,7 +97996,6 @@ mnienamel.com, 1 mniopenresearch.org, 1 mnium.de, 1 mnjg123.de, 1 -mnml.blog, 1 mnmt.no, 1 mnnknz.de, 1 mno.family, 1 @@ -98078,6 +98018,7 @@ mnt9.com, 0 mnt9.de, 1 mnvotes.gov, 1 mo-en-karim.tk, 1 +mo-mochizuki.com, 1 mo-sick.net, 1 mo-vvs.dk, 1 mo.co.uk, 1 @@ -98120,7 +98061,7 @@ mobildeal.id, 1 mobildingser.com, 1 mobile-discothek.at, 1 mobile-holzofenpizza.de, 1 -mobile-industrial-robots.com, 1 +mobile-industrial-robots.com, 0 mobile-ivr.tk, 1 mobile-news.tk, 1 mobile-retter.de, 1 @@ -98141,6 +98082,7 @@ mobilehydraulics.com.au, 1 mobilelaby.com, 1 mobilelobbyers.ga, 1 mobilemechanicdenver.org, 1 +mobileminds.se, 1 mobileone.com.my, 1 mobilepartner.tk, 1 mobilepricepk.com, 1 @@ -98215,6 +98157,7 @@ mocaro.de, 1 mocasa.com, 1 mocdltraining.com, 1 mocent.de, 1 +mochi.lol, 1 mochilerostailandia.com, 1 mochiyuki.net, 1 mochizuki.moe, 0 @@ -98238,7 +98181,6 @@ modafilmdmodafinil.com, 1 modafinil.wiki, 1 modafinilyes.com, 1 modafo.com, 1 -modahaber.com, 1 modalogi.com, 1 modaltraining.co.uk, 1 modamia.pl, 1 @@ -98285,6 +98227,7 @@ modell-lq.net, 1 modellbahnshop.de, 1 modellbahnverwaltung.de, 1 modellismo.roma.it, 1 +modelmyretirement.com, 1 models-resource.com, 1 modelspoor-projecten.nl, 1 modelverse.online, 1 @@ -98335,7 +98278,7 @@ modistryusercontent.com, 1 modlimit.cf, 1 modperl.pl, 1 modpop.se, 1 -modrynstudio.com, 1 +modrynstudio.com, 0 modscrew.com, 1 modsecurity.net, 1 modszombies.com, 1 @@ -98372,7 +98315,6 @@ moedershart.nl, 1 moefactory.com, 1 moefire.tech, 1 moegi.ml, 1 -moego.me, 1 moego.pet, 1 moehlerinstitut.de, 1 moehrke.cc, 1 @@ -98468,6 +98410,7 @@ mojama3dz.com, 1 mojapeticia.sk, 1 mojartech.ml, 1 mojavenissanofbarstowparts.com, 1 +mojaveresearchinc.com, 1 mojavibe.com, 1 mojdrvar.tk, 1 moje-communication.de, 1 @@ -98533,7 +98476,6 @@ moleremovalsandiego.com, 1 molexces.com, 1 molezzo.com, 1 molinillo.tk, 1 -molise.store, 1 molkerei-ammerland.com, 1 molleron.net, 1 molletjesveer.tk, 1 @@ -98660,6 +98602,7 @@ moneck.info, 1 moneoci.com.br, 1 monese.com, 0 moneshaq.fr, 1 +monespaceallianztrade.fr, 1 moneta-rossii.ru, 1 monetag.com, 0 monetenfuchs.de, 1 @@ -98737,7 +98680,6 @@ monicz.pl, 1 monidenum.fr, 1 monific.com, 1 monika.tk, 1 -monikacheangphotography.com, 1 monikadesign.uk, 1 monikapierzchala.com, 1 monin.net, 1 @@ -98770,6 +98712,8 @@ monix.io, 1 monjardin.tk, 1 monjo.io, 1 monjob.tk, 1 +monkaru.com, 1 +monkel.lu, 1 monkey-donkey.es, 1 monkey47.com, 1 monkey47.events, 1 @@ -98804,6 +98748,7 @@ monorail.ga, 1 monorail.gq, 1 monorthopedagogue.ca, 1 monosecurity.se, 1 +monoseis-monotica.gr, 1 monosis.net, 1 monoskop.org, 1 monospazzole.roma.it, 1 @@ -98824,7 +98769,7 @@ monroeoregon.gov, 1 monroetn.gov, 1 monroeut.gov, 1 monroviaca.gov, 1 -monsalvat.no, 1 +monsalvat.no, 0 monsbah.com, 1 monscierge.com, 1 monshoppingcestcalais.fr, 1 @@ -98862,6 +98807,7 @@ montalvofarret.xyz, 1 montanabiack.de, 1 montanacreativitymovement.tk, 1 montanaguard.gov, 1 +montanaitservices.com, 1 montanaonlinedivorce.com, 1 montanarenewables.org, 1 montanatitlesearch.com, 1 @@ -98911,7 +98857,6 @@ montiallison.com, 1 monticelloky.gov, 1 monticellomn.gov, 1 montillafarm.com, 1 -montmeyran.fr, 1 montoneros.tk, 1 montop.tk, 1 montourcounty.gov, 1 @@ -99021,6 +98966,7 @@ mooresvilletribune.com, 1 mooretownrancheria-nsn.gov, 1 moorfunevents.co.uk, 1 moorheadmn.gov, 1 +mooring.social, 1 moormiles.com, 1 moorparkelectrical.com, 1 moorparkexteriorlighting.com, 1 @@ -99110,7 +99056,6 @@ morethandigital.info, 1 moretti.camp, 1 morevesi.cf, 1 morewithcore.com, 1 -morfide.com, 1 morgan-insurance.com, 1 morganappliancerepair.com, 1 morgancounty-al.gov, 1 @@ -99171,6 +99116,7 @@ morooi.cn, 0 morosystems.cloud, 1 morox.top, 1 morozko.gq, 1 +morozovsreinigung.ch, 1 morozstudio.tk, 1 morozyaka.tk, 1 morph3d.tk, 1 @@ -99247,7 +99193,6 @@ mosharof-hossain.ml, 1 moshaver-tahsili.com, 1 moshcore.tk, 1 moshegropper.com, 1 -moshiach.ru, 1 moshwire.com, 1 mosin.org, 1 mosio.com, 1 @@ -99259,7 +99204,7 @@ moskvagruz.tk, 1 moskvayigit.com, 1 moskvitch.org, 1 mosnews.tk, 1 -moso.io, 0 +moso.io, 1 mosobl.tk, 1 mosostore.nl, 1 mosquito-code.com, 1 @@ -99269,18 +99214,17 @@ mosr.sk, 1 mossad.gov.il, 1 mossan.net, 1 mosshi.be, 1 -mossia.net, 1 mossipanama.com, 1 mossplants.ru, 1 mossylog.tk, 1 most.tk, 1 mostaccino.com, 1 mostafabanaei.cf, 1 -mostamaracademy.ir, 1 mostazaketchup.com, 1 mostbet.com, 1 mostbet2.com, 1 mostbetr.com, 1 +mostdev.com, 1 mostdisturbingnews.com, 1 mosternaut.com, 1 mostertman.com, 1 @@ -99340,7 +99284,6 @@ motiva.health, 1 motivation.cc, 1 motivational-babes.com, 1 motivationalliance.com, 1 -motivemm.com, 1 motivness.com, 1 motivo.nl, 0 motiweb.fr, 1 @@ -99409,6 +99352,7 @@ motorzone.od.ua, 1 motoselfservices.fr, 1 motospaya.com, 0 motostorie.blog, 1 +motostyle.ua, 1 mototax.ch, 0 mototeam.tk, 1 mototsi.com, 1 @@ -99426,7 +99370,6 @@ mott.pe, 1 motte.tattoo, 1 motto-iikoto.com, 1 motum.no, 1 -motum.se, 1 motumblekinge.se, 1 motumport.se, 1 motumskane.se, 1 @@ -99435,7 +99378,6 @@ moturua.nz, 1 motusins.com, 1 motusrenaultbloemfontein.co.za, 1 motusrenaultmenlyn.co.za, 1 -motusrenaultwonderwaters.co.za, 1 motywacyjnedna.pl, 1 mou-pmr.tk, 1 moube.fr, 1 @@ -99498,6 +99440,7 @@ mousikofidi.info, 1 moussa-ibrahim.ml, 1 moussasolutions.com, 1 mousseacoustique.com, 1 +mouthtogut.com, 1 moutiezhaller.com, 1 mov, 1 movabletype.net, 1 @@ -99544,6 +99487,7 @@ movieeveningers.ga, 1 movieeveningest.ga, 1 moviefreeze.com, 1 movieglot.ml, 1 +moviego.st, 1 movieguys.org, 1 moviejack.org, 0 moviemadness.uk, 1 @@ -99577,6 +99521,7 @@ movinglogistics.nl, 0 movingoklahoma.org, 1 movingservice-houston.com, 1 movingtohttps.com, 1 +movingtoiceland.com, 1 movingtonewcastle.com, 1 movingtonewcastle.com.au, 1 movio.ga, 1 @@ -99599,6 +99544,7 @@ moyer.pub, 0 moylen.eu, 1 moyminsk.tk, 1 moyobi.com, 0 +moyos.net, 1 moyu.host, 0 moyufangge.com, 1 moyure.com, 1 @@ -99610,6 +99556,7 @@ mozektevidi.net, 1 mozfr.org, 1 mozgb.ru, 1 mozgovoy.tk, 1 +mozhiyodu.com, 1 mozilla-russia.org, 1 mozilla.cz, 1 moztopup.com, 1 @@ -99688,7 +99635,6 @@ mpu-ibbi.de, 1 mpu-vorbereitung.com.de, 1 mputra.com, 1 mpy.ovh, 1 -mqacg.com, 1 mqas.net, 1 mqbeauty.com.tw, 1 mqbx.nl, 1 @@ -99729,6 +99675,7 @@ mrbk.sa, 1 mrbounce.com, 1 mrbouncescrazycastles.co.uk, 1 mrbouncycastle.com, 1 +mrbrant.co.uk, 1 mrc-productivity.com, 1 mrc.uk.net, 1 mrca-sharp.com, 0 @@ -99784,6 +99731,7 @@ mrjunior.ga, 1 mrjunior.ml, 1 mrkapowski.com, 0 mrknee.gr, 1 +mrkzalamana.com, 1 mrlc.gov, 1 mrliu.me, 1 mrlove.tk, 1 @@ -99791,6 +99739,7 @@ mrmad.com.tw, 1 mrmanson.tk, 1 mrmarcie.com, 1 mrmasaleh.com, 1 +mrmatt.io, 1 mrmave.work, 1 mrmeeb.co.uk, 1 mrmemory.co.uk, 1 @@ -99834,7 +99783,6 @@ mrssclaus.ca, 1 mrstext.com, 1 mrston.ml, 1 mrstuudio.ee, 1 -mrsurething.com, 1 mrtechmelbourne.com, 1 mrtg.com, 1 mrtieungao.tk, 1 @@ -99906,8 +99854,8 @@ msk-news.net, 1 msklawyer.com, 1 msl.org, 0 mslegalsupport.com, 1 -mslinkpc.com, 1 -mslinkphoneqr.com, 1 +mslinkpc.com, 0 +mslinkphoneqr.com, 0 mslivros.com.br, 1 msm.ai, 1 msmadlemon.com, 1 @@ -99943,6 +99891,7 @@ msquadrat.de, 0 msquared.id.au, 1 msr-schaltanlagen.de, 1 msrf.de, 1 +msrl.com, 1 msrmotorsports.com, 1 msroot.de, 1 msrumon.com, 1 @@ -100090,7 +100039,6 @@ muafakatmalaysia.ga, 1 muafakatmalaysia.gq, 1 muafakatmalaysia.ml, 1 muarstabyggmarknad.tk, 1 -mubarak-card.com, 1 mubase.dk, 1 muble.tk, 1 muc.space, 1 @@ -100126,6 +100074,7 @@ mudramagik.com, 1 mudrc.net, 1 mudrex.com, 1 mudrockrentals.com, 1 +mue.com, 1 mueblum.com, 1 muehlbauers.com, 1 muelhau.pt, 1 @@ -100191,6 +100140,7 @@ mukiovoidwalker.com, 1 mukli.hu, 1 muku-flooring.com, 1 mukurtu.org, 1 +mukuru.com, 1 mukwa.gov, 1 mula.solutions, 1 mula.tk, 1 @@ -100240,7 +100190,6 @@ multikalender.de, 0 multikemasplastindo.com, 1 multilevelmarketing.cf, 1 multiline.ge, 1 -multilingualpress.org, 1 multilogik.com, 1 multilogin.com, 1 multimalin.ovh, 1 @@ -100333,7 +100282,6 @@ mundorealtv.tk, 1 mundoscrapbooking.online, 1 mundoseth.tk, 1 mundosteampunk.club, 1 -mundosuiri.info, 1 mundosuiri.ml, 1 mundowanderlust.com, 1 mundschenk.at, 1 @@ -100380,7 +100328,6 @@ muratbekgi.com, 1 muratcileli.tk, 1 muratoff.pp.ua, 1 muratore-roma.it, 1 -murbaut.web.id, 1 murciacobras.tk, 1 murciaprocuradores.tk, 1 murderbysound.servebeer.com, 1 @@ -100421,7 +100368,6 @@ murster.tw, 1 mursu.directory, 1 murtazamustafahirani.tk, 1 murz.tv, 1 -murzallawfirm.com, 1 murzik.space, 1 mus-tech.info, 1 musacomo.com, 1 @@ -100456,7 +100402,6 @@ museo.com.au, 1 museodefutbol.online, 1 museodeinsectos.tk, 1 museodelistmo.tk, 1 -museoebraicobo.it, 1 museorisorgimentotorino.it, 1 museoscala.org, 1 muserver.io, 1 @@ -100476,7 +100421,6 @@ mushka.ga, 1 mushman.tk, 1 mushroomcloud.moe, 1 mushroomnetwork.co.za, 1 -mushroomtutor.com, 1 music-colleges.com, 1 music-is-my-life.de, 1 music-privilege.fr, 1 @@ -100494,6 +100438,7 @@ musicaporbolivia.tk, 1 musicarenagh.com, 1 musicbox.party, 1 musicboxx.cz, 1 +musicbreeze.be, 1 musicbymelanie.dk, 1 musicc.net, 1 musicchris.de, 1 @@ -100545,6 +100490,7 @@ musiker.tk, 1 musikhaus-korn.de, 1 musikholics.com, 1 musikidersi.tk, 1 +musikkapelle-beuren.de, 1 musikkfondene.no, 1 musiktag2020.ch, 1 musiktest24.de, 1 @@ -100635,7 +100581,6 @@ muusika.fun, 1 muusikoiden.net, 1 muv.ac, 1 muv.co.uk, 1 -muvy.tube, 1 muwi.tk, 1 muxidream.cn, 1 muxup.com, 1 @@ -100650,6 +100595,7 @@ muzi-tips.tk, 1 muzi.cz, 1 muzicamp3.org, 1 muzicamp3.top, 1 +muzicanoua.org, 1 muzicari.tk, 1 muziekluisteren.eu, 1 muziekschatten.nl, 1 @@ -100661,7 +100607,6 @@ muzikbank.com.tr, 1 muzike.tk, 1 muzline.ua, 1 muzmo.ga, 1 -muzotakt.pl, 1 muzprosvet.tk, 1 muzykanawesele.info, 1 mv-schnuppertage.de, 0 @@ -100681,6 +100626,7 @@ mvib.net, 1 mviess.de, 0 mvisioncorp.com, 1 mvistatic.com, 1 +mvkpop.com, 1 mvmcorps.com, 1 mvmm.fr, 1 mvn.lu, 1 @@ -100724,7 +100670,7 @@ mwork.tech, 1 mwpromotion.fr, 1 mwr.team, 1 mwscouts.org, 1 -mwskwong.com, 0 +mwskwong.com, 1 mwstportal.li, 1 mwstrategicservices.com, 0 mwswire.com, 1 @@ -100733,7 +100679,6 @@ mwtown.gov, 1 mwu.dk, 1 mww.moe, 1 mwxjacg.com, 1 -mx-moto.fr, 0 mx-qr.com, 1 mx-quad.fr, 0 mx-server.uk, 1 @@ -100784,12 +100729,10 @@ my-lightning-container.com, 1 my-lightning.com, 1 my-meal.nl, 1 my-mediahome.ru, 1 -my-message.co, 1 my-meteo.net, 1 my-monobank-card.com.ua, 1 my-montenegro.tk, 1 my-msg.ai, 1 -my-msg.co, 1 my-nextcloud.at, 1 my-pawnshop.com.ua, 0 my-pharmacie.com, 1 @@ -100816,7 +100759,6 @@ my-visualforce.com, 1 my-web.xyz, 1 my-webcloud.at, 1 my-website.top, 1 -my-wishes.co, 1 my-woodcraft.com, 1 my.cat, 1 my.com.my, 1 @@ -100873,7 +100815,6 @@ mybakkupakku.com, 1 mybamoza.com, 1 mybaran.tk, 1 mybarcelona.tk, 1 -mybaseballmovie.com, 1 mybasepay.com, 1 mybathroom.tk, 1 mybaticloud.com, 1 @@ -100886,6 +100827,7 @@ mybeautyjobs.de, 1 mybestbook.tk, 1 mybestbooks.gq, 1 mybestteam.tk, 1 +mybeti.ai, 1 mybetterlife.blog, 1 mybicc.org, 1 mybieo.com, 1 @@ -100927,7 +100869,6 @@ mycam.gq, 1 mycandylove.com, 1 mycardplace.com, 1 mycarecorner.net, 1 -mycarinsurance123.com, 0 mycarwashers.com, 1 mycase.com, 0 mycase.com.ua, 1 @@ -100997,7 +100938,6 @@ mycreativeshotsblog.com, 1 mycreditcardcenter.com, 1 mycreditjunkie.com, 1 mycreditunion.gov, 1 -mycrm.coach, 0 mycrowdstack.com, 1 mycrypnet.io, 1 mycts.org, 1 @@ -101023,7 +100963,6 @@ mydesignrules.com, 1 mydestiny.tk, 1 mydetailbox.com, 1 mydigitalexperience.fr, 1 -mydigitalhealthwallet.com, 1 mydigitalmarketingempire.com, 1 mydigitalpublication.com, 1 mydirectsys.com, 1 @@ -101082,6 +101021,7 @@ myentspecialist.sg, 0 myepass.bg, 1 myepass.de, 1 myepidoma.gr, 1 +myer.com.au, 1 myers.house, 1 myersaggregates.co.uk, 1 myersbuildingsupplies.co.uk, 1 @@ -101164,6 +101104,7 @@ mygeek.tk, 1 mygeek911.com, 1 mygenderation.com, 1 mygeneral.org, 1 +mygeorges.fr, 1 mygeorgia.org, 1 mygermanuniversity.com, 1 mygest.me, 1 @@ -101172,7 +101113,6 @@ mygigabitnation.com, 1 mygignation.com, 1 mygilehery.tk, 1 mygimp.tk, 1 -mygirlfriendshouse.com, 1 myglobalnews.net, 1 myglobalopti.nl, 1 mygnmr.com, 0 @@ -101197,7 +101137,6 @@ myhealthchecked.com, 0 myhealthcheckup.ca, 1 myhealthsquad.ca, 1 myhealthyday.com, 1 -myhelcim.com, 1 myhell-anonim.tk, 1 myhelo.com, 1 myheritage.com, 1 @@ -101232,6 +101171,8 @@ myinsiderplus.com, 1 myinsitu.com, 1 myinstapy.ru, 0 myinsurancesource.com, 1 +myinternetreputation.com, 1 +myinternetreputation.org, 1 myinternist.com, 1 myinterrail.co.uk, 1 myinvestinglife.com, 1 @@ -101264,7 +101205,6 @@ mykursumlija.tk, 1 mykvb.com, 1 mylabaih.com, 1 mylacera.gov, 1 -myladychat.com, 1 mylastchapter.tk, 1 mylatestnews.org, 1 mylawer.ga, 1 @@ -101347,6 +101287,7 @@ mymun.net, 1 mymusiclist.alwaysdata.net, 1 mymusique.tk, 1 mymx.lu, 0 +myna.me, 1 mynak.se, 1 mynameisivan.ru, 1 mynameistavis.com, 1 @@ -101377,7 +101318,6 @@ mynewhorizons.shop, 1 mynewspaper.net, 1 mynext.events, 1 mynextmove.org, 1 -mynextstep.id, 1 mynic.my, 1 mynimo.com, 1 mynissan.ml, 1 @@ -101536,6 +101476,7 @@ myrig.net, 1 myrina.com, 1 myrom.tk, 1 myrotvorets.center, 1 +myroyaa.com, 1 myrunningcalendar.com, 1 myruststats.com, 1 myrvang.org, 1 @@ -101570,7 +101511,6 @@ myservicearl.com, 1 myserviceportal.de, 1 myservices.digital, 1 myservik.ml, 1 -mysexpedition.com, 1 mysexvids.net, 1 mysexycard.com, 1 myshenwang.tk, 1 @@ -101582,7 +101522,7 @@ myshowbiz.tk, 1 mysidekick.io, 1 mysignal.com, 1 mysill.gr, 1 -mysimsem.com, 0 +mysimsem.com, 1 mysisterandi.co.za, 1 myslc.gov, 1 mysmallbusinesssidekick.com, 1 @@ -101615,7 +101555,6 @@ mysteryplay.com, 1 mysteryshow.site, 1 mysterytag.com, 1 mystgames.tk, 1 -mystia.org, 1 mystic-falls.tk, 1 mystic-welten.de, 1 mysticalroseschoolofcaloocan.com, 1 @@ -101713,6 +101652,7 @@ myvet.ie, 1 myvi.gov, 1 myviewboard.com, 1 myvirtualserver.com, 0 +myvitalspro.com, 1 myvologda.tk, 1 myvotect.gov, 1 myvoucher.ie, 1 @@ -101721,6 +101661,7 @@ myvulcan-platinum.ru, 1 mywaffles.org, 1 mywalletcrypto.cf, 1 mywapforum.ga, 1 +mywatch.ru, 1 myweb360.de, 1 mywebcloud.at, 1 mywebexperience.gq, 1 @@ -101770,7 +101711,6 @@ mz2032.cc, 1 mz2033.cc, 1 mza.com, 1 mzademiryolu.com, 1 -mzadqatar.com, 1 mzak.pro, 1 mzakariya.com, 1 mzback.cc, 1 @@ -101809,16 +101749,14 @@ n.ms, 1 n.rich, 0 n.tt, 1 n0.be, 1 -n0099.net, 1 n03.top, 1 n0t404.com, 1 -n0v1.com, 1 n1.homes, 1 n15.org, 1 n1co68.freeboxos.fr, 1 n1mp.org, 1 n26.com, 1 -n2canada.ca, 0 +n2canada.ca, 1 n2diving.net, 1 n2o.io, 1 n2oclub.com, 1 @@ -101832,9 +101770,11 @@ n4mullingartolongford.ie, 1 n4zm.com, 1 n5197.co, 1 n61roscommon.ie, 1 +n64.cc, 1 n6729.co, 1 n6957.co, 1 n7.education, 0 +n7186c.com, 1 n8.gay, 1 n854.com, 1 n87pedia.tk, 1 @@ -101918,7 +101858,7 @@ nacres.tk, 1 nacsonline.tk, 1 nacu.com.np, 1 nacua.org, 1 -nacudeck.com, 1 +nacudeck.com, 0 naculus.com, 1 nacyklo.cz, 1 nad-r.com, 1 @@ -101969,7 +101909,6 @@ nagaya.si, 1 nagb.gov, 1 nagb.org, 1 nagel-dentaltechnik.de, 1 -nageler.org, 1 nagelideeen.ml, 1 naggie.net, 1 nagoonline.com, 1 @@ -101990,8 +101929,6 @@ naharro.fr, 1 naheulcraft.be, 1 nahfe.xyz, 1 nahman.tk, 1 -nahmii.dj, 1 -nahmii.dog, 1 nahouw.net, 1 nahrag.tk, 1 nahs-classof1972.com, 1 @@ -102045,7 +101982,6 @@ nakajima-kawara.com, 1 nakalabo.jp, 1 nakamastudios.com, 1 nakameguro-ekimae-shika.com, 1 -nakamuramudancas.com.br, 1 nakayama.industries, 1 nakayamaresearch.com, 1 nakazanie.ga, 1 @@ -102064,6 +102000,7 @@ nakedwomenpics.com, 1 nakenmodell.tk, 1 nakhonchaitour.com, 1 nakib4tech.com, 1 +nakiba.com, 1 nakim.cf, 1 nakin.tk, 1 nakisa.com, 1 @@ -102074,14 +102011,13 @@ nakkati.tk, 1 nakliyat.name.tr, 1 nakliye.name.tr, 1 nakluky.cz, 1 +naklwilson.net, 1 nako.blog, 1 nako.kr, 1 nako.no, 1 -nakskov-kropsterapi.dk, 1 nakukata.com, 1 nakupnabytku.sk, 1 nala.baby, 1 -nalanyinyun.top, 1 nalapadglobal.com, 1 nalapadtransport.com, 1 nalchik-news.net, 1 @@ -102105,7 +102041,6 @@ namastenaturo.fr, 1 namazon.org, 1 namazvakitleri.com.tr, 0 namdu.uz, 0 -name.am, 1 name.ax, 1 nameabusiness.com, 1 nameabusiness.pro, 1 @@ -102143,7 +102078,7 @@ nampapolice.gov, 1 namplan.pl, 1 namsbaekur.is, 1 namskra.is, 1 -namspi.uz, 1 +namspi.uz, 0 namu.la, 1 namu.live, 1 namu.moe, 1 @@ -102220,7 +102155,7 @@ nanubo.com, 1 nanubo.de, 1 nanxin.xyz, 1 nao-news.net, 1 -nao.sh, 1 +nao.sh, 0 naocan.cf, 1 naocan.ml, 1 naotron.com, 1 @@ -102245,7 +102180,6 @@ napkins-wholesale.nz, 1 napkins-wholesale.uk, 1 naplata.mk, 1 naples.tk, 1 -naplestotalgarage.com, 1 napo.tk, 1 napoleonoutlawed.tk, 1 napolict.com, 1 @@ -102437,7 +102371,6 @@ natbomusic.com, 1 natchezss.com, 1 nate.sh, 1 nateandxtina.wedding, 1 -natedoss.com, 1 nateev.fr, 1 nategreen.org, 0 natelefon.tk, 1 @@ -102472,7 +102405,6 @@ nathanielsigal.com, 1 nathanieltammer.com, 1 nathankonopinski.com, 1 nathanmfarrugia.com, 1 -nathanphoenix.com, 1 nathansmetana.com, 1 nathenmaxwell.tk, 1 nathumarket.com.br, 1 @@ -102504,6 +102436,7 @@ nationaleyecenter.id, 1 nationalfuse.com, 1 nationalgangcenter.gov, 1 nationalhomequotes.com, 1 +nationalinjuryadvocates.com, 1 nationalmall.gov, 1 nationalmap.gov, 1 nationalmattressday.com, 1 @@ -102530,6 +102463,7 @@ nationalvideoproductions.net, 1 nationalwellness.org, 1 nationandfreedom.tk, 1 nationdivergente.com, 1 +nationofleaders.org, 1 nationslending.com, 1 nationsreportcard.gov, 1 nationwide.com, 1 @@ -102611,7 +102545,10 @@ naturelife.bg, 1 naturelk.org, 1 naturesain.fr, 0 naturesbest.co.uk, 1 +natureschoicewellness.com, 1 natureshealthandbody.com, 1 +naturesinfusions.com.au, 1 +naturesplace.ca, 1 naturesupply.eu, 1 naturfreunde.at, 1 naturheilkunde-sabine-klein.de, 1 @@ -102685,7 +102622,6 @@ navigatorgpo.com, 1 navigay.me, 1 navigo-inc.com, 1 navigo.cc, 1 -navigo.global, 1 navigyurci.hu, 1 navinmolecular.com, 1 naviteq.eu, 1 @@ -102801,7 +102737,7 @@ nbranded.lt, 1 nbri.ru, 1 nbriresearch.com, 1 nbrown.us, 1 -nbx.com, 0 +nbx.com, 1 nc-beautypro.fr, 1 nc-formation.fr, 1 nc-network.io, 1 @@ -102880,7 +102816,6 @@ ncs-cleaning.dk, 1 ncsa.gov.qa, 1 ncsbadvisors.gov, 1 ncsbe-apps.gov, 1 -ncsc.gov.uk, 1 ncsccs.com, 1 ncshp.gov, 1 ncsis.gov, 1 @@ -102933,6 +102868,7 @@ ndr.world, 1 ndrew.me, 1 nds-online.ru, 1 ndscreening.com, 1 +ndtproject.com, 1 ndum.ch, 1 ndvlaw.com, 1 ndvr.com, 1 @@ -102960,7 +102896,7 @@ nearnorthus.com, 1 neartothesky.com, 1 neatful.eu.org, 1 neath-afan-gymnastics.com, 1 -neatlife.co.uk, 1 +neatlife.co.uk, 0 neatous.cz, 1 neatous.net, 1 neauviachannel.com, 1 @@ -102968,13 +102904,13 @@ neave.tv, 1 neaz.tk, 1 neb.li, 1 neba.io, 1 +nebatoken.com, 1 nebebra.stream, 1 nebelhauch.de, 1 nebenbeiblog.ch, 1 nebix.tk, 1 nebohost.tk, 1 neboley.cf, 1 -nebph.com, 1 nebraskadrypeas.gov, 1 nebraskajudicial.gov, 1 nebraskaresearch2.gov, 1 @@ -103267,7 +103203,6 @@ neodruid.tk, 1 neoedresources.org, 1 neoeliteconsulting.com, 1 neofinancial.com, 1 -neogames.com.co, 1 neohu.com, 0 neojo.org, 1 neoko.fr, 1 @@ -103403,7 +103338,6 @@ nerloee.dk, 1 neroninvestment.org, 1 neropiceno.tk, 1 nerot.eu, 1 -neroteknik.com.tr, 1 nerpa-club.ru, 1 nerss.ca, 1 nertus.ua, 1 @@ -103432,9 +103366,11 @@ nesstormented.tk, 1 nest-property.com, 1 nesta.ie, 1 nestbynature.com, 1 +nestdesigndeco.com, 1 nesterov.pw, 1 nestetic.com, 1 nestforms.com, 1 +nestinarka-park.com, 1 nestinvest.com, 1 nestlanddesign.com, 1 nestos-marble.gr, 1 @@ -103498,6 +103434,7 @@ netdiode.net, 1 netdiode.org, 1 netdir.tk, 1 netdnstrace1.com, 1 +netdoktor.dk, 1 netdox.de, 1 netducks.com, 1 netducks.space, 1 @@ -103578,13 +103515,13 @@ netmania.tk, 1 netmedia.tk, 1 netmedicaitalia.it, 1 netmeister.org, 1 +netmongrel.com, 1 netmouse.tk, 1 netmt.de, 1 netnea.com, 1 netnl.eu, 1 netoborona.tk, 1 netobur.net, 1 -netoffshop.ir, 1 netolice.com, 1 netolink.co.il, 1 netolink.com, 1 @@ -103621,9 +103558,10 @@ netse.net.tr, 1 netsearch.ga, 1 netsec.cloud, 1 netsecma.com, 1 +netsends.com, 1 netsensai.pl, 1 netsensor.com.br, 1 -netservice.co.uk, 1 +netservice.co.uk, 0 netshopgarden.com.br, 1 netsite.dk, 1 netslum.tk, 1 @@ -103679,6 +103617,7 @@ netwarc.nl, 1 netwatch.me, 1 netwave.pl, 1 netwerkstoom.nl, 1 +netwerkwaterenklimaat.nl, 1 netwidow.com, 1 netwings.com, 1 netwire-solutions.com, 1 @@ -103709,6 +103648,7 @@ networkmidlands.co.uk, 1 networkmidlands.uk, 1 networkmon.net, 1 networkperformancemonitoring.net, 1 +networks365.ca, 1 networksec.info, 1 networksecuritysolutions.info, 1 networksolutionsconsultant.com, 1 @@ -103718,7 +103658,7 @@ networktrafficanalysis.net, 1 networktrafficanalyzer.net, 1 networktrafficmonitoring.net, 1 networld.to, 1 -networthpal.com, 1 +networthpal.com, 0 networx-online.de, 1 netz-blog.de, 1 netz-noe.at, 1 @@ -103875,6 +103815,7 @@ new10.com, 1 newag.org.au, 1 newage.bg, 1 newagehoops.com, 1 +newageshutters.com, 1 newalbanyohio.gov, 1 newalive.net, 1 newamericanagent.com, 1 @@ -104004,12 +103945,12 @@ newingtonnhpolice.gov, 1 newinsane.info, 1 newipswichnh.gov, 1 newisys.com, 1 +newjerseysolarinitiative.com, 1 newjerseytitlesearch.com, 1 newjerseyvideography.com, 1 newkaliningrad.ru, 1 newlands-fasteners.com.au, 1 newledger.io, 1 -newledger.sg, 1 newlegalsteroid.com, 1 newlifefund.org, 1 newlondonhospital.org, 1 @@ -104062,7 +104003,6 @@ newpraguemn.gov, 1 newprairiepress.org, 1 newpress24.tk, 1 newquilters.com, 1 -newreality.nl, 0 newreleases.io, 1 newrelic.com, 1 newreligiousmovements.org, 1 @@ -104109,6 +104049,7 @@ news60.tk, 1 news89.cf, 1 news89.ga, 1 news89.gq, 1 +news8plus.com, 1 newsadvance.com, 1 newsarmenia.tk, 1 newsarticle.ml, 1 @@ -104145,6 +104086,7 @@ newsig.com, 1 newsignature.com, 1 newsinformer.ga, 1 newsinkansas.ml, 1 +newsinnovationmarket.com, 1 newsinpenn.ml, 1 newsinpolitics.ga, 1 newsireland.tk, 1 @@ -104207,6 +104149,7 @@ newtravelplans.com, 1 newusatoday.ga, 1 newvehicle.com, 1 newvisionhealing.com, 1 +newvistudio.com, 1 newwaterford-oh.gov, 1 newway.ie, 0 newwind.tk, 1 @@ -104221,7 +104164,7 @@ newyorknews.tk, 1 newyorkpub.com.br, 1 newyorkreporting.com, 1 newyorkrp.tk, 1 -newyorkschools.us, 0 +newyorkschools.us, 1 newyorktitlesearch.com, 1 newyorktoutsimplement.com, 0 newzashitnik.tk, 1 @@ -104248,7 +104191,6 @@ nexhealth.info, 1 nexiam.net, 1 nexicafiles.com, 1 nexinal.net, 1 -nexinformatique.com, 1 nexiodev.com, 1 nexiodevopslocal.com, 1 nexiopay.com, 1 @@ -104313,6 +104255,7 @@ nextgreencar.com, 1 nextintegrations.nl, 1 nextiot.de, 1 nextiva.com, 1 +nextjs.org, 1 nextlegends.gov, 1 nextlevel-forum.de, 1 nextlevel-it.co.uk, 1 @@ -104321,7 +104264,6 @@ nextme.se, 1 nextmed.ro, 1 nextmuseum.io, 1 nextos.com, 1 -nextperimeter.com, 1 nextpower-kepco.jp, 1 nextrasp.it, 1 nextrec.site, 1 @@ -104355,7 +104297,7 @@ nezis.tk, 1 nezkakukec.si, 1 nezrouge-est-vaudois.ch, 1 nezsultan.tk, 1 -nf-tel.com, 1 +nf-tel.com, 0 nf9q.com, 1 nfam.de, 1 nfb-ec.co.za, 1 @@ -104389,6 +104331,7 @@ nfl.duckdns.org, 1 nfl.zapto.org, 1 nflbox.me, 1 nflchan.org, 1 +nflo.pl, 1 nfls.io, 1 nfmhof.com, 1 nfo.co.il, 1 @@ -104454,7 +104397,6 @@ ngontinhtruyen.com.vn, 1 ngoresan.tk, 1 ngorod.tk, 1 ngorongorocratertanzania.org, 1 -ngplus.name, 1 ngroupllc.com, 1 ngsmedicare.com, 1 ngtdevel.com, 1 @@ -104486,7 +104428,6 @@ nhatrangbooks.com, 1 nhbp-nsn.gov, 1 nhbp.gov, 1 nhccnews.org, 1 -nhcps.com, 1 nhdecoration.fr, 1 nhdsilentheroes.org, 1 nhg.nl, 1 @@ -104588,6 +104529,7 @@ nicecontentnews.com, 1 niceguyit.biz, 1 nicelanaliz.com, 1 nicenipovoleno.cz, 1 +niceo.org, 1 nicepussypics.com, 1 nicesco.re, 1 nicestudio.co.il, 1 @@ -104700,7 +104642,6 @@ nicolasprovost.tk, 1 nicolaszambetti.ch, 1 nicolaus.sk, 1 nicolausbank.pl, 1 -nicolaw.uk, 1 nicolawealth.com, 1 nicoldev.es, 1 nicole-4-u.de, 1 @@ -104801,6 +104742,7 @@ nigel-aves-photography.com, 1 nigelfreake.eu, 1 nigelpentland.co.uk, 1 nigelpentland.net, 1 +nigelsnotebook.com, 1 nigelwright.com, 1 nigelwrightgroup.com, 1 nigeriaimagefoundation.org, 1 @@ -104907,7 +104849,6 @@ nikitacartes.xyz, 0 nikitagukov.ru, 1 nikitenko.tk, 1 nikitina.ml, 1 -nikitovka.com, 1 nikka.systems, 0 nikkasystems.com, 1 nikkasystems.se, 1 @@ -104975,6 +104916,7 @@ nilsnet.tk, 1 nilupul.org, 1 nimahoda.net, 1 nimb.com.np, 1 +nimber.pt, 1 nimbl.nz, 1 nimble.com.br, 1 nimblefins.co.uk, 1 @@ -105148,7 +105090,6 @@ nixx.tk, 1 nixxes.com, 1 nixxin.tk, 1 niyawe.de, 1 -niyazpoyilan.com, 0 niyen.com, 1 niyen.eu, 1 niyen.net, 1 @@ -105158,6 +105099,7 @@ niyonood.com, 1 nizamialemdernegi.org.tr, 1 nizarvoiceover.tk, 1 nizhaoheng.com, 1 +nizmaar.com, 1 nizozemsku.nl, 1 nja.au, 1 nja.id.au, 1 @@ -105312,7 +105254,6 @@ nntb.no, 1 no-andishan.ir, 1 no-b.kiev.ua, 1 no-bet.ru, 1 -no-cookies.net, 1 no-data.tk, 1 no-dev.de, 1 no-eye-deer.tk, 1 @@ -105332,7 +105273,6 @@ no-terrorism.tk, 1 no-tone.com, 1 no-war-on-iraq.tk, 1 no.search.yahoo.com, 0 -no1assignmenthelp.com, 1 no1universities.tk, 1 no2bacoorcityhood.tk, 1 no34infowey.co.uk, 1 @@ -105419,6 +105359,7 @@ nodejs.au, 1 nodejs.com.au, 1 nodejs.org, 1 nodelab-it.de, 1 +nodelulu.ai, 1 nodepoet.com, 1 noderunners.network, 1 nodespin.com, 1 @@ -105487,6 +105428,7 @@ nojum.tk, 1 nokarateinthepit.com, 1 nokchon.tk, 1 nokia.la, 1 +nokillingday.com, 1 nokomiswi.gov, 1 nokono.com, 1 nokoshop.fr, 1 @@ -105538,7 +105480,6 @@ nomaspicaduras.com, 1 nomee6.xyz, 1 nomek.it, 1 nomercy.tv, 1 -nomerel.com, 0 nomesbiblicos.com, 1 nomial.co.uk, 1 nomifensine.com, 1 @@ -105547,6 +105488,7 @@ nomios.fr, 1 nomo.com, 1 nomorephish.ru, 1 nomorepizzaparties.com, 1 +nomoslabs.io, 1 nomsing.tk, 1 nomtechbytes.com, 1 non-www.org, 1 @@ -105568,6 +105510,7 @@ nonprofit.info, 1 nonprofitdrupal.org, 1 nonqmloans.com, 1 nonsa.pl, 1 +nonsensebrand.es, 1 nonstopairductcleaning.com, 1 nonstopairductcleaninghoustontx.com, 1 nonstopjob.ga, 1 @@ -105652,20 +105595,22 @@ norderney-zs.de, 1 nordesttrasporti.it, 1 nordex.ca, 1 nordfinck.de, 1 +nordhealth-ai.com, 1 nordhealth.com, 1 nordhealth.dk, 1 nordhealth.fi, 1 nordhealth.no, 1 nordheide.design, 1 -nordhenergy.se, 1 nordhessen-zum-anklicken.de, 1 nordicequities.com, 1 nordicflowbased.eu, 1 nordichealthcaregroup.com, 1 nordicirc.com, 1 nordicnews.net, 1 +nordicnutrition.dk, 1 nordicoach.fr, 1 nordicpartners.dk, 1 +nordicperformancenutrition.dk, 1 nordicportalen.tk, 1 nordicsemi.com, 1 nordicsrit.tk, 1 @@ -105683,7 +105628,6 @@ nordlayer.com, 1 nordlichter-brv.de, 1 nordmark-pharma.de, 1 nordmoregatebilklubb.com, 1 -nordpass.asia, 1 nordpass.com, 1 nordsec.com, 1 nordseeblicke.de, 1 @@ -105884,6 +105828,7 @@ nosedoctor.net, 1 nosetup.tk, 1 noseware-apps.de, 1 nosfermiers.com, 1 +nosial.net, 1 nosinmiperro.tk, 1 nosite.co.za, 1 nosleepforrobots.com, 1 @@ -105918,9 +105863,7 @@ not-a.link, 1 not-binary.org, 1 not4me.ga, 1 not4me.tk, 1 -nota-web.com, 1 nota.moe, 1 -nota.place, 1 notabug.eu, 1 notabug.org, 1 notadd.store, 1 @@ -105949,6 +105892,7 @@ notary24.ru, 1 notarypublic.co.nz, 1 notbot.es, 1 notby.net, 1 +notcanadianlabour.ca, 1 notcompletelycorrect.com, 1 notcurses.com, 1 notdankmemer.lol, 1 @@ -105970,10 +105914,10 @@ notemaster.eu, 1 notenarchiv.eu, 1 notengosuelto.com, 1 noteonline.org, 1 -notes4z.com, 1 notesforpebble.com, 1 noteshare.net, 1 noteskeeper.ru, 1 +notetube.ai, 1 notfunny.tk, 1 notgerman.com, 1 nothinfancy.ca, 1 @@ -106032,6 +105976,7 @@ notonprem.com, 1 notora.tech, 1 notoriousdev.com, 1 notre-planete.info, 1 +notrecinema.com, 1 notrefuse.tk, 1 notresiteduvercors.tk, 1 notrid.com, 1 @@ -106053,7 +105998,6 @@ noudiari.es, 1 noudjalink.nl, 1 nougat-anduze.fr, 1 noumeet.com, 1 -noumezon.net, 1 nouragha.com, 1 nourishandnestle.com, 1 nourishbyfrida.com, 1 @@ -106077,6 +106021,7 @@ novacustomboxes.com, 1 novadir.com, 1 novagym.berlin, 1 novak.cf, 1 +novakdizajn.sk, 1 novakola.bg, 0 novalevante.info, 1 novalite.rs, 0 @@ -106094,13 +106039,13 @@ novaquantum.com, 1 novaquark.com, 1 novaratoday.it, 1 novarock.tk, 1 +novasentinel.pt, 1 novashare.io, 1 novasmilecr.net, 1 novasprint.tk, 1 -novatech.net, 0 novautomoveisusados.pt, 1 novavax.com, 0 -novavistawindows.com, 1 +novavistawindows.com, 0 novaway.ca, 1 novaya.media, 1 novaya.no, 1 @@ -106243,6 +106188,7 @@ noxx.global, 1 noxx.solutions, 1 noxx.uk, 1 noy.asia, 1 +noyada.cz, 1 noyax.com, 1 noyoga.at, 1 noyweb.tools, 1 @@ -106281,10 +106227,7 @@ nptfisheries.org, 1 nptn.tk, 1 npws.net, 1 nqesh.blog, 1 -nqesh.net, 1 -nqesh.org, 1 nqesh.ph, 1 -nqeshonline.com, 1 nqhomeinsurance.gov.au, 1 nrac.or.jp, 1 nrail.eu, 1 @@ -106294,7 +106237,6 @@ nrbri.ru, 1 nrc-gateway.gov, 1 nrc.gov, 1 nrchealth.com, 1 -nrclitchi.org, 1 nrd.gov, 1 nrdstd.io, 1 nreihofer.de, 1 @@ -106390,7 +106332,6 @@ nssdeviations.com, 1 nssfchile.tk, 1 nssquad.tk, 1 nstatic.xyz, 1 -nstd.net, 1 nstnet.org, 1 nsu.pw, 1 nsv.ee, 1 @@ -106406,7 +106347,6 @@ ntauthority.systems, 1 ntcoss.org.au, 1 ntcp.ph, 1 ntcrmezon.ru, 1 -ntdf.co.uk, 1 ntdse.org, 1 nte.email, 1 nte.no, 0 @@ -106423,7 +106363,6 @@ ntj125app.com, 1 ntk-institute.org, 1 ntlabs.org, 1 ntnews.com, 1 -ntnlst.com, 1 ntnlsvc-uat-webadmin.azurewebsites.net, 1 ntokens.com, 1 ntokens.com.br, 1 @@ -106503,6 +106442,7 @@ nuevaimagenpublicidad.es, 1 nuevapublicidad.tk, 1 nuevarepublica.cr, 1 nuevarepublicacr.com, 1 +nuevasolutions.com, 1 nuevatrend.co, 1 nuffield.nl, 1 nuffieldtrust.org.uk, 1 @@ -106537,6 +106477,7 @@ nulldev.org, 1 nulle-part.org, 1 nulledme.ga, 1 nulleds.tk, 1 +nullgender.com, 1 nullificatr.tk, 1 nullonerror.org, 1 nullprozentshop.de, 1 @@ -106549,7 +106490,6 @@ nulltime.net, 1 nullvoid.me, 1 nullxsec.net, 1 nully.xyz, 1 -nulook.co.id, 1 nulsc.biz, 1 nulsc.net, 1 numancia.tk, 1 @@ -106622,7 +106562,6 @@ nuriacamaras.com, 1 nurkamol.com, 1 nurmio.fi, 1 nurnabi.ml, 1 -nurolyn.store, 1 nurrobin.de, 1 nurseactioners.ga, 1 nurseactionest.ga, 1 @@ -106703,6 +106642,7 @@ nuzhenkredit.ml, 1 nuzhenkredit.tk, 1 nuzpost.com, 1 nv-art.ru, 1 +nv.tj.cn, 1 nvbw.de, 1 nvcmaine.gov, 1 nvcogct.gov, 1 @@ -106756,7 +106696,6 @@ nwfdaz.gov, 1 nwfem.com, 1 nwh.nz, 1 nwhf.no, 1 -nwimports.com, 1 nwitt.us, 1 nwmpcllc.com, 1 nwn.fi, 1 @@ -106780,6 +106719,7 @@ nxdomain.info, 1 nxedge.com, 1 nxit.ca, 1 nxnt.link, 1 +nxo.it, 1 nxplinc.com, 1 nxstudios.tk, 1 nxth.io, 1 @@ -106809,7 +106749,6 @@ nyantec.com, 1 nyaone-object-storage.com, 1 nyap.org, 0 nyatane.com, 1 -nyau.me, 1 nyawau.ch, 1 nyawork.com, 1 nyb.agency, 1 @@ -106818,7 +106757,6 @@ nycctp.com, 1 nycdentalimplantscenter.com, 1 nyce.net, 1 nycestateest.ga, 1 -nycfpa.org, 1 nycgangland.com, 1 nycoyote.org, 1 nycpac.net, 0 @@ -106942,6 +106880,7 @@ nztcap.com, 1 nztcap.de, 1 nztcapital.com, 1 nztcapital.de, 1 +nztcapital.net, 1 nztcs.org.nz, 1 nztfoundation.com, 1 nztholdings.com, 1 @@ -106949,6 +106888,7 @@ nztproperties.com, 1 nztservices.com, 1 nzttechnology.com, 1 nzttools.com, 1 +nzttools.net, 1 nztventures.com, 1 nztventures.de, 1 nztventures.net, 1 @@ -107068,12 +107008,14 @@ obereg.ga, 1 obereg.ml, 1 oberg.co, 1 oberg.us, 1 +oberlinreview.org, 1 obermeiers.eu, 1 oberndorf-am-lech.de, 1 oberpfalzverein.de, 1 oberrot.de, 1 obertshausen.de, 1 obery.com, 1 +oberzaun.de, 1 obet901vip.com, 1 obetz.gov, 1 obezma.com, 1 @@ -107155,7 +107097,6 @@ obsuzhday.com, 1 obsyk.ai, 1 obtainhigh.com, 1 obtima.org, 1 -obu4alka.ru, 1 obuchowicz.pl, 1 obuhov.ml, 1 obuhov.tk, 1 @@ -107176,7 +107117,6 @@ oc-minecraft.com, 1 ocab.se, 1 ocabj.net, 1 ocacnews.net, 1 -ocadefusion.fr, 1 ocaladepositionreporter.com, 1 ocalafl.gov, 1 ocalapd.gov, 1 @@ -107208,6 +107148,7 @@ occultisme.tk, 1 occultumproductions.tk, 1 occupational-therapy-colleges.com, 1 occupations.org.ru, 1 +occupros.com, 1 occupy4elephants.tk, 1 occupybakersfield.tk, 1 ocd2016.com, 1 @@ -107236,7 +107177,6 @@ oceanfirst.com, 0 oceaniahome.tk, 1 oceaniahotels.com, 1 oceanic.ws, 1 -oceanicquest.com, 1 oceanings.com, 1 oceanofapk.com, 1 oceanohost.com, 1 @@ -107268,7 +107208,6 @@ ochioneta.es, 1 ochk.org, 1 ochki-linzi.tk, 1 ochobeatsmedia.net, 1 -ochotnicky.com, 1 ochranaprirody.cz, 1 ochrepoint.com.au, 1 ochsenfeld-fotografie.de, 1 @@ -107340,6 +107279,7 @@ octavia.net, 1 octavianguzu.com, 1 octaviorojas.tk, 1 octobanana.com, 1 +october-academy.com, 1 octobered.com, 0 octocaptcha.com, 1 octod.tk, 1 @@ -107374,6 +107314,7 @@ odabasi.ch, 1 odabilocal.com, 1 odatakao.com, 1 oday.org, 1 +odbiciadusz.pl, 1 odbierzspozywke.pl, 1 odbtomsk.ru, 1 odd17.org, 1 @@ -107402,7 +107343,7 @@ odensc.com, 1 odensc.me, 1 odenvilleal.gov, 1 odeonentertainment.co.uk, 1 -odesigning.com, 1 +odesigning.com, 0 odessa-news.ru, 1 odessalove.tk, 1 odezdaotto.tk, 1 @@ -107429,7 +107370,6 @@ odo-pro.ru, 1 odontologiawilliampizarro.com, 1 odoo.co.th, 1 odoppelto.de, 1 -odoranswers.com, 1 odoru.ga, 1 odorucinema.ga, 1 odosblog.de, 1 @@ -107438,13 +107378,13 @@ odpbusurl.com, 1 odpikedoslike.com, 1 odpudzovace.sk, 1 odsylvie.cz, 1 +odszkodowania.torun.pl, 1 odszyfrowani.pl, 1 odtu.lu, 1 oducs.org, 1 oduncum.net, 1 odunpazari.bel.tr, 1 odvdigital.com, 1 -odxin.com, 1 odyso.org, 1 odyssee-animation.tk, 1 odyssey44.com, 1 @@ -107529,7 +107469,6 @@ offerman.industries, 1 offermann-koeln.de, 1 offers.jp, 1 offgamers.com, 1 -offgames.io, 1 offgrid.hr, 1 offgridauto.com, 1 office, 1 @@ -107593,6 +107532,7 @@ offshoot.rentals, 0 offshore-technology.com, 1 offshore.hosting, 1 offshorealert.com, 1 +offshoreenergymanager.com, 1 offshoremoney.tk, 1 offshoretravelsest.ga, 1 offshorewindwatchdog.com, 1 @@ -107669,10 +107609,8 @@ ogui.de, 1 ogunquit.gov, 1 ogurishun.tk, 1 ogurus.com, 1 -oguzhanozoglu.com, 1 ogyaa.jp, 0 -ogznet.com, 1 -oh14.de, 0 +oh14.de, 1 oh64.moe, 1 ohai.is, 1 ohai.social, 1 @@ -107760,6 +107698,7 @@ oitaven.es, 1 oitavenlife.com, 1 oiwe.info, 1 oja50.org, 1 +ojd-av.com, 1 ojdip.net, 1 ojee.nic.in, 1 ojjdp.gov, 1 @@ -107773,6 +107712,7 @@ ok-travel.tk, 1 ok.ru, 1 ok2a.org, 1 ok3on.cz, 1 +okahouse.com, 1 okaidi.es, 1 okaidi.fr, 1 okaidi.ro, 1 @@ -107794,6 +107734,7 @@ okchousebuyer.com, 1 okcp.ca, 1 okdisasterhelp.org, 1 okdousho.com, 1 +oke.com.tw, 1 okea.org, 0 okeb.com, 1 okeechobeecountyfl.gov, 1 @@ -107804,7 +107745,6 @@ okeliteairpros.com, 1 okemahok.gov, 1 okgun.co, 1 okhanvatansever.tk, 1 -okhelp.org, 1 okib.ca, 1 okiefrog.org, 1 okinawa-mag.net, 1 @@ -107837,6 +107777,7 @@ okna-tm.kz, 0 okna.ua, 1 oknakz-astana.kz, 1 oknavdom.tk, 1 +oknolite.ru, 1 oknopvh.ml, 1 okokorecepten.nl, 1 okosg.kr, 1 @@ -107993,6 +107934,7 @@ olffi.com, 1 olfnewcastle.com, 1 olfsecane.org, 1 olfuscluster.is, 0 +olgagarlo.es, 1 olgallery.tk, 1 olgamalytcheva.com, 1 olgamilosevic.edu.rs, 1 @@ -108068,6 +108010,7 @@ ollietoys.com, 1 ollion.com, 1 ollning.com, 1 ollo.ga, 1 +ollornog.de, 1 olltechjob.com, 1 olmari.fi, 1 olmc-nutley.org, 1 @@ -108085,7 +108028,6 @@ olofsson.cc, 1 ololmke.org, 1 olomercy.com, 1 olopp.org, 1 -oloveoil.store, 1 olphseaside.org, 1 olqoa.org, 1 olschurch.com, 1 @@ -108123,6 +108065,7 @@ olympusx.co.za, 1 om.yoga, 1 oma-opa-enkel-urlaub.de, 0 oma-opa-enkel.de, 0 +oma-snipingbot.com, 1 omadaidentity.com, 1 omaedu.ro, 1 omag.gov, 1 @@ -108166,7 +108109,6 @@ omegachess.tk, 1 omegaclickinsights.com, 1 omegacode.pl, 1 omegahosting.net, 1 -omegamc.ua, 1 omegathermoproducts.nl, 1 omegleporn.to, 1 omenu.co.uk, 1 @@ -108239,7 +108181,6 @@ omnilert.net, 1 omnirecherche.nl, 1 omniscimus.net, 0 omnisiens.se, 1 -omnisky.dk, 1 omnisphere-group.com, 1 omnissimmo.fr, 1 omnitaxhelp.com, 1 @@ -108254,6 +108195,7 @@ omolines.tv, 1 omoo.co, 0 omorashi.org, 1 omoteura.com, 1 +omox.co.uk, 1 omranic.com, 1 omrmz.org, 1 omro-wi.gov, 1 @@ -108323,7 +108265,6 @@ oncotarget.ru, 1 ond-inc.com, 1 ond-inc.jp, 1 ondajoven.tk, 1 -ondav.com, 1 ondcp.gov, 1 onde.xyz, 1 ondeapostar.pt, 1 @@ -108343,7 +108284,7 @@ ondrejvasicek.cz, 1 one-acleaning.com, 1 one-clue.com, 1 one-cozmic.com, 1 -one-dot.de, 0 +one-dot.de, 1 one-host.ga, 1 one-news.net, 0 one-pass.cloud, 1 @@ -108394,7 +108335,6 @@ oneearthliving.org, 1 oneearthsacredarts.com, 1 oneem.tk, 1 oneequity.com, 1 -oneest.com, 1 onefabday.com, 1 onefamily.com, 1 onefestivalplaza.com.au, 1 @@ -108480,13 +108420,13 @@ onetab.com, 1 onetakeonehit.tk, 1 onetap.com, 1 onetcenter.org, 1 -onetcodeconnector.org, 1 onetech.it, 1 +onetime.co, 1 +onetime.nl, 1 onetimesecret.com, 1 onetonline.org, 1 onetouchreveal.com, 1 onetouchreveal.it, 1 -onetouchrevealplus.com, 1 onetouchtour.com, 1 onetown.gq, 1 onetranslations.com.br, 0 @@ -108517,7 +108457,6 @@ onformative.net, 1 ong.ng, 1 ong.or.at, 1 ongao.top, 1 -ongea.io, 1 ongelukvandaag.nl, 1 ongewenstretour.nl, 1 ongiaenegogoa.com, 1 @@ -108556,6 +108495,7 @@ onkfaktor.de, 1 onkologiya.ga, 1 onkoloogiakeskus.ee, 1 onkoplus.de, 1 +onkori.ru, 1 onkvwave.ru, 1 onlanka.com, 1 onld.de, 1 @@ -108590,13 +108530,10 @@ online-sql-editor.com, 1 online-store-phones.tk, 1 online-taxes.tk, 1 online-tesis.com, 1 -online-textil.com, 1 online-textil.cz, 1 -online-textil.sk, 1 online-umwandeln.de, 1 online-video-cutter.com, 1 online-voice-recorder.com, 1 -online-wedding.site, 1 online-xxxmovies.com, 1 online.ee, 1 online.forum, 1 @@ -108678,7 +108615,6 @@ onlinepay.tk, 1 onlinepaydayloans365.tk, 1 onlineplay.ml, 1 onlinepokieau.net, 1 -onlinepokies.me, 1 onlineprojects.in, 1 onlineradio.com.pl, 1 onlineradio.pp.ua, 1 @@ -108863,8 +108799,8 @@ oog-osaka.jp, 1 oogami.name, 1 oogartsennet.nl, 1 ooharttemplates.com, 1 -oohcoloring.com, 1 ooiiuu.com, 1 +oolveri.com, 1 oomepu.com, 1 oompf.de, 1 oomph-delikatessen.tk, 1 @@ -108927,7 +108863,6 @@ open-data-apps.org, 1 open-desk.org, 1 open-douyin.com, 1 open-fixture-library.org, 1 -open-future.info, 1 open-greenenergy.com, 1 open-ibd.info, 1 open-infrastructure.net, 1 @@ -108958,7 +108893,6 @@ openargus.org, 1 openaudio.it, 1 openbackdoor.com, 1 openbank.us, 1 -openbayes.network, 1 openbayesstatus.com, 1 openbeecloud.com, 1 openbible.com.au, 1 @@ -108968,7 +108902,6 @@ openblink.biz, 1 openblink.org, 1 openblox.org, 1 openbooktheatrecompany.net, 1 -openbriefing.org, 0 openbsd.cz, 1 openbsdhosting.com, 1 openbusiness.tk, 1 @@ -108981,6 +108914,7 @@ openchipplatform.com, 1 opencircuit.nl, 1 opencity.spb.ru, 1 opencl.aw, 1 +openclaw-setup.me, 1 openclima.com, 1 openclub24.ru, 1 openconf.uk, 1 @@ -109010,6 +108944,7 @@ opengovpartnership.de, 1 openhandhelds.org, 1 openhisto.com, 1 openhistory.de, 1 +openhome.com.co, 1 openhousemelbourne.org, 1 openhwgroup.cn, 1 openhwgroup.org, 1 @@ -109017,6 +108952,7 @@ openinframap.org, 1 openinsieme.com, 1 openintel.com.br, 1 openintl.com, 1 +openinvite.biz, 1 openjawtech.com, 1 openjsf.org, 1 openjur.de, 1 @@ -109083,7 +109019,6 @@ openssl.org, 1 openstandia.jp, 1 openstem.com.au, 1 openstreetmap.is, 1 -openstreetmap.org, 1 opensyria.net, 1 opentapetes.com.br, 1 opentechalliance.com, 1 @@ -109159,14 +109094,14 @@ opiskelijaradio.com, 1 opiskelijaradio.fi, 1 opisrael.tk, 1 opito.com, 1 -opium.io, 0 +opium.io, 1 opix.fr, 1 opko.com, 1 opl.bz, 1 oplata-mvd.ga, 1 oplata-vklike.tk, 1 oplata.uz, 1 -oplium.com, 1 +oplium.com, 0 oplop.appspot.com, 1 opm.gov, 1 opmaakonderscheidingen.nl, 1 @@ -109232,7 +109167,6 @@ opstrengning.tk, 1 opswat.com, 1 opswill.com, 1 optalysys.com, 1 -opteam.pl, 1 opteamax.de, 1 opteamax.eu, 1 optenhoefel.de, 1 @@ -109251,7 +109185,7 @@ opticstore.com.ua, 1 optiekzien.nl, 0 optigear.nl, 1 optigon.no, 1 -optik-sehstern.de, 1 +optik-sehstern.de, 0 optik-tamara.de, 1 optik-trosdorff.de, 1 optikabane.com, 1 @@ -109287,6 +109221,7 @@ optimumactuariat.ca, 1 optimumfinancier.ca, 1 optimumfinancier.com, 1 optimumfinanciere.fr, 1 +optimumfmw.com, 1 optimumgam.ca, 1 optimumgam.com, 1 optimumgam.fr, 1 @@ -109361,6 +109296,7 @@ oraclematerias.com, 1 oracolo.tk, 1 oraculos.pt, 1 oraculosiono.net, 0 +orakelet.ai, 1 oraklinika.tk, 1 oralb.com, 1 oralchirurgie-phoenix.de, 1 @@ -109427,7 +109363,6 @@ orbitdefence.co.uk, 1 orbitfab.com, 1 orbitfoods.ca, 1 orbitforum.ga, 1 -orbitfurnituresolutions.com, 1 orbitgoods.ca, 1 orbitmoonalpha.com, 1 orbitpro.co, 1 @@ -109443,7 +109378,6 @@ orcamarine.tk, 1 orcas.tk, 1 orcasecurity.io, 1 orchardnh.org, 1 -orchestra-ppm.io, 1 orchestra.tk, 1 orchestremetropolitain.com, 1 orchidee-mariage.com, 1 @@ -109627,6 +109561,7 @@ orinoquiadata.tech, 1 oriocdn.com, 1 orion-rentals.tk, 1 orion-universe.com, 1 +orion180.com, 1 orioneclipse.com, 1 orionelement.com, 1 oriongames.eu, 1 @@ -109837,6 +109772,7 @@ osi-systems.com, 1 osiedlemalownicze.wroc.pl, 1 osimmo.fr, 1 osindesejados.com.br, 1 +osintcat.net, 1 osioptoelectronics.com, 1 osipenko.ua, 1 osiris-ai.co.uk, 1 @@ -109844,6 +109780,7 @@ osirisrising.tk, 1 osirisrp.online, 1 osirium.com, 1 osiriz.xyz, 1 +oskargajcowski.pl, 1 oskarkopra.fi, 1 oskcapital.com, 1 oskcapital.com.au, 1 @@ -109861,7 +109798,6 @@ oslinux.net, 1 oslo-kammerorkester.no, 1 oslofjorden.org, 1 osm.is, 1 -osm.org, 1 osmaniyehaber.tk, 1 osmanlitakilari.tk, 1 osmarks.net, 1 @@ -109885,6 +109821,7 @@ ospis.pl, 1 ospo-alliance.org, 1 ospo.zone, 1 ospoalliance.org, 1 +ospsuchoraczek.pl, 1 osrdmo.gov, 1 osrs.wiki, 1 osrsmap.net, 1 @@ -109928,6 +109865,7 @@ ostrovseocitra.cf, 1 ostrovseocitra.ga, 1 ostrovseocitra.gq, 1 ostrovseocitra.ml, 1 +ostrovsky-web.de, 1 ostseebad-sellin.de, 1 osttopst.online, 1 osuarez3.com, 1 @@ -110060,14 +109998,9 @@ ouipharma.fr, 1 oujj.link, 1 ouldlamara.tk, 1 oulunjujutsu.com, 1 -oumactive.com, 1 ouminews.net, 1 oumlaut.net, 1 -oumorienteering.com, 1 -oumpower.com, 1 -oumrace.com, 1 oumsnatch.com, 1 -oumsport.com, 1 ounage.de, 1 ouowo.gq, 1 our-box.de, 1 @@ -110108,7 +110041,6 @@ ouroestrela.pt, 1 ouroh2.com, 1 ouronyx.com, 0 ouropal.com, 1 -ourpharmacynetwork.com, 1 ourplanetary.com, 1 oursibparksplan.com, 1 oursmartcity.au, 1 @@ -110122,10 +110054,12 @@ ourtimepress.com, 1 ouruglyfood.com, 1 ourvau.lt, 1 ourwildsavorykitchen.com, 1 +ourwisconsinlife.com, 1 ourwits.com, 1 ourworldindata.org, 0 ourworldspeaks.com, 1 ousho.me, 1 +ousson.com, 1 oust.ch, 0 out-of-england.cf, 1 out-of-england.ga, 1 @@ -110155,6 +110089,7 @@ outernet.tk, 1 outerspace.ga, 1 outetc.com, 1 outfaced-dancestudio.de, 1 +outfame.com, 1 outfit-weimar.eu, 1 outgress.com, 1 outgrow.co, 1 @@ -110163,8 +110098,6 @@ outilsfroids.net, 1 outincanberra.com.au, 1 outinnationalsecurity.org, 1 outlaw-star.tk, 1 -outlawlogistics.com, 1 -outlet-center.by, 1 outletcity.bg, 1 outletstoresmalls.com, 1 outline.vn, 1 @@ -110175,7 +110108,6 @@ outnow.ch, 1 outofservice.com, 1 outofthefog.net, 1 outplay.ai, 1 -outplayed.in, 1 outplayhq.com, 1 outplnr.fr, 1 outpost.network, 1 @@ -110285,7 +110217,7 @@ ovirt.org, 1 oviser.ml, 1 ovisy.com, 1 ovmgroup.eu, 1 -ovni-owners.org.uk, 0 +ovni-owners.org.uk, 1 ovnrain.com, 0 ovo.st, 1 ovochi.tk, 1 @@ -110337,7 +110269,6 @@ owlbee.uk, 1 owldevelopers.tk, 1 owlhollowbakery.com, 1 owllee.com, 1 -owlmaster.org, 1 owlnull.me, 1 owlofminerva.net, 1 owlscrap.ru, 1 @@ -110347,6 +110278,7 @@ ownaquiznos.com, 1 ownc.at, 1 owncloud.com, 1 ownerbusiness.org, 1 +ownerinspections.com.au, 1 ownhost.com, 1 ownhosting.cloud, 1 ownhosting.de, 1 @@ -110510,7 +110442,6 @@ ozvfa.com, 1 ozvoip.net, 1 ozvolvo.org, 1 ozyurttesisat.com, 1 -ozzie.fr, 1 ozzyfant.de, 1 p-art.design, 1 p-e-g.org, 1 @@ -110521,7 +110452,6 @@ p-k-b.com, 1 p-konto.tk, 1 p-ku.com, 1 p-p.site, 1 -p-pac.com, 1 p-pc.de, 1 p-soc.com.br, 1 p.ac, 1 @@ -110535,7 +110465,6 @@ p1-apps.nl, 1 p1-test.nl, 1 p10.ru, 0 p1984.nl, 0 -p1hsinc.com, 1 p1ratrulezzz.me, 1 p2000app.nl, 1 p22.co, 1 @@ -110548,7 +110477,6 @@ p30mororgar.ir, 1 p333b.net, 1 p333e.net, 1 p333j.net, 0 -p35consulting.com, 1 p36533.com, 1 p4.pm, 1 p4c-admin.azurewebsites.net, 1 @@ -110567,7 +110495,6 @@ p9297.co, 1 p9728.co, 1 p99perf.com, 1 p99performance.com, 1 -p9cq.com, 1 p9d1.com, 1 pa-nganjuk.go.id, 1 pa-w.de, 1 @@ -110626,7 +110553,6 @@ pablonadiecomotu.tk, 1 pabloroblesminister.com, 1 pablosaraiva.com, 1 pabpunk.tk, 1 -pabrikvideo.com, 1 pac-clad.com, 1 pacareerzone.org, 1 pacasino.com, 1 @@ -110652,7 +110578,6 @@ pachamamita.de, 1 pachamamita.eu, 1 pachetomat.ro, 1 pachinstyle.com, 1 -pachuta.pl, 1 paciella.com, 1 pacificaent.net, 1 pacificbags.com.au, 1 @@ -110722,7 +110647,7 @@ pact2017.nl, 1 pacteo.com, 1 pactf-flag-4boxdpa21ogonzkcrs9p.com, 1 pactf.com, 1 -pactnetwork.com.au, 1 +pactnetwork.com.au, 0 pactum.com, 1 pactumdr.com.au, 1 pacxodka.ru, 1 @@ -110735,7 +110660,7 @@ padariareboleirense.pt, 1 padberx-marketing-consultants.de, 1 padderne.tk, 1 paddestoelen-encyclopedie.tk, 1 -paddle.com, 1 +paddle.com, 0 paddle.net, 1 paddlethecreek.com, 1 paddy.rocks, 1 @@ -110862,7 +110787,6 @@ painefamily.co.uk, 1 painesvillemunicipalcourt-ohio.gov, 1 painful.fun, 1 painkiller-tech.com, 1 -painresearchforum.org, 1 paint-it.pink, 1 paint4.life, 1 paintball-ljubljana.si, 1 @@ -110877,7 +110801,6 @@ paintingindurban.co.za, 1 paintingrepair.ga, 1 paintingtips.net, 1 paintpaina.com, 1 -paintscratch.com, 1 paintstaintt.com, 1 paio2-rec.com, 1 paipuman.jp, 1 @@ -110886,10 +110809,10 @@ pairsclassifiedads.tk, 1 paisa-dev.azurewebsites.net, 1 paisagia.com, 1 paisagia.com.br, 1 -paisano-online.com, 1 paisley.is, 1 paisleyandsparrow.com, 1 paistation.ch, 1 +paj-gps.it, 1 pajadam.me, 1 pajamka.com.ua, 1 pajbot.de, 1 @@ -111058,6 +110981,7 @@ pan.digital, 1 pana4ucloud.ddns.net, 1 panaceainfosec.com, 1 panaceallc.net, 1 +panama-listings.com, 1 panamacity.gov, 1 panamacitypolice.gov, 1 panamatravel.tk, 1 @@ -111135,6 +111059,7 @@ pandorageorgia.ge, 1 pandorarecovery.com, 1 pandorarox.com, 1 pandorawiki.org, 1 +pandorrah.nl, 1 pandorum.cf, 1 pandos.pl, 1 panduan-hamil.tk, 1 @@ -111182,7 +111107,6 @@ paniodpolskiego.eu, 1 panjiva.com, 1 pankiewiczlaw.com, 1 pankoff.net, 1 -panlex.org, 1 panmill.xyz, 1 panmourovaty.cz, 1 panmuseum.gr, 1 @@ -111223,6 +111147,7 @@ panthenolplus.co.uk, 1 panthenolplus.com, 1 pantherage.co.uk, 1 pantherauto.no, 1 +pantherxrare.com, 1 panthi.lk, 1 pantingly.tk, 1 pantonshire.com, 1 @@ -111283,6 +111208,7 @@ papelcraft.co.uk, 1 papeleo.digital, 1 papeleriayasesorias.com.co, 1 papelisimo.es, 1 +paper.aero, 1 paper.sc, 1 paper.wf, 1 paperandpage.com, 1 @@ -111303,9 +111229,8 @@ paperwritten.com, 1 papi.com, 1 papieri.dental, 1 papierniak.net, 1 -papierniczy.eu, 1 papierowyrycerz.pl, 1 -papillegustative.com, 1 +papillomatest.com, 1 papillon-events.be, 1 papkinadochka.ru, 1 paplajsoftware.com, 1 @@ -111317,6 +111242,7 @@ pappu.tk, 1 pappys.kitchen, 1 papuaone.com, 0 papuzkija.pl, 1 +papygeorges.fr, 1 paqtam.com, 1 par-allel.ru, 1 parabellum-barakaldo.tk, 1 @@ -111402,7 +111328,6 @@ parareflex.fr, 1 paras.tk, 1 parasail.co.nz, 1 parasatria.tk, 1 -parasgroupindia.com, 1 parasitologyclub.org, 1 parasomnia.tk, 1 paraspeech.com, 1 @@ -111420,7 +111345,6 @@ parcbotanique.com, 1 parcdumbravaminunata.ro, 1 parceirofinanceiro.pt, 1 parcelauditpartners.com, 1 -parcelow.com, 1 parceltrackr.com, 1 parcelup.com, 1 parckwart.de, 1 @@ -111428,6 +111352,7 @@ parcoursup.fr, 1 pardal.tk, 1 pardanaud.com, 1 pardiso-project.org, 1 +pardypanda.com, 1 parea-osterode.de, 1 paredesdecoura.pt, 1 paregion13.gov, 1 @@ -111440,7 +111365,6 @@ parentdrive.com, 1 parenthaven.com, 1 parentingplaydough.tk, 1 parentinterview.com, 1 -parentpay.com, 1 parentpayments.com.au, 1 parents-as-allies.com, 1 parentsandzebrasunited.com, 1 @@ -111592,7 +111516,6 @@ parleu2017.ee, 1 parleur.net, 1 parliament.gov.to, 1 parliamentcamp.com, 1 -parmacityfutsal.it, 1 parmartecultura.it, 1 parmatoday.it, 1 parmatwp.gov, 1 @@ -111710,7 +111633,6 @@ partsdost.com, 1 partsestore.com, 1 partsgeek.com, 1 partsguysusa.com, 1 -partwerx.com, 1 party-envy.com, 1 party-kneipe-bar.com, 1 party-land.pl, 1 @@ -111735,6 +111657,7 @@ partyrocksbounce.co.uk, 1 partyschnaps.com, 1 partyshop.ge, 1 partyshowlatam.com, 1 +partysoundandlighthire.co.uk, 1 partytime-uk.co.uk, 1 partytimeltd.ie, 1 partywithunicorns.com, 1 @@ -111846,6 +111769,7 @@ passwordlist.io, 0 passwords.google.com, 1 passwordsapp.org, 1 passwordscon.com, 1 +passwordscon.org, 1 passwordsecurity.info, 1 passwordsecuritycenter.com, 1 passwordsheeters.ga, 1 @@ -111938,6 +111862,7 @@ pathwayscenterforgriefandloss.org, 1 pathwaysthroughgrief.org, 1 patient.info, 1 patientcheckin.com, 1 +patientdesk.ai, 1 patientenverfuegung.digital, 1 patientjourneyapp.com, 0 patientspaid.com, 1 @@ -111997,6 +111922,7 @@ patrikjohan.tk, 1 patriksima.cz, 1 patrikx3.com, 1 patrimoine-neuwiller.fr, 0 +patrimoniumtouraine.com, 1 patriotbearingsupply.com, 1 patriotcs.tk, 1 patriotinsurancebrokers.com, 0 @@ -112062,7 +111988,6 @@ paulinaschubert.net, 1 paulini.ga, 1 pauliuspiecius.com, 1 pauljackson.ga, 1 -pauljmartinez.com, 0 pauljrowland.co.uk, 1 pauljzak.com, 1 paulknulst.de, 1 @@ -112103,7 +112028,6 @@ paulshir.is, 1 paulsinternet.com, 1 paulsitarz.com, 1 paulsnar.lv, 1 -paulstahl.com, 1 paulstamatiou.com, 1 paulstarosta.com, 1 paulswartz.net, 1 @@ -112157,7 +112081,6 @@ paw.pt, 1 pawafuru.com, 0 pawapuro.ga, 1 pawapuro.tk, 1 -pawbuddi.com, 1 pawchewgo.com, 1 pawdecor.com, 1 pawealthmanagement.com, 1 @@ -112183,6 +112106,7 @@ pawsru.org, 1 pawtraitcaptures.com.au, 1 paxata.com, 1 paxerahealth.com, 1 +paxhouse.net, 1 paxwinkel.nl, 1 pay.accountant, 1 pay.apartments, 1 @@ -112195,6 +112119,7 @@ pay.codes, 1 pay.com.au, 1 pay.condos, 1 pay.construction, 1 +pay.consulting, 1 pay.contractors, 1 pay.dance, 1 pay.dental, 1 @@ -112264,7 +112189,6 @@ paycrest.io, 1 paydollar.com, 1 paye.net, 0 payeasy.tech, 1 -payexpresse.com, 0 payfacto.com, 1 payfazz.com, 1 payfin.tech, 1 @@ -112291,9 +112215,9 @@ payment-express.net, 1 paymentaccuracy.gov, 1 paymentap.co.uk, 1 paymentjs.com, 1 +paymentportaldevopslocal.io, 1 payments.google.com, 1 paymeservice.com, 1 -paymongo.com, 1 paymongo.help, 1 paymore.org, 1 paymyphysician.com, 0 @@ -112466,7 +112390,7 @@ pcmaw.com, 1 pcminsk.by, 1 pcmkrembangan.or.id, 1 pcmobile.tech, 1 -pcmr.info, 0 +pcmr.info, 1 pcmscientific.com, 1 pcnaid.com, 1 pcnewsoft.tk, 1 @@ -112484,7 +112408,6 @@ pcpuhastaja.tk, 1 pcrab.ml, 1 pcrecovery.ga, 1 pcrla.com, 1 -pcrobot.cz, 1 pcrypt.org, 1 pcsafe.cf, 1 pcsbrasil.ml, 1 @@ -112526,12 +112449,14 @@ pdcs.nl, 1 pderas.com, 1 pdesinc.org, 1 pdf-archive.com, 0 +pdf-reader.ru, 1 pdf-tool.fr, 1 pdf.io, 1 pdf4pro.com, 1 pdfbear.com, 1 pdfbook-dl.ml, 1 pdfbooksonline.gq, 1 +pdfcoder.com, 1 pdfconvert.me, 1 pdfflier.cf, 1 pdfhelp.net, 1 @@ -112575,6 +112500,7 @@ peaceexpoest.ga, 1 peacefulexperiences.com, 1 peacefulrock.com, 1 peacekeeper.tk, 1 +peacemaker-academy.com, 1 peacepiperanch.com, 1 peacetourco.cf, 1 peacewiththewild.co.uk, 1 @@ -112624,11 +112550,11 @@ pebblenest.uk, 1 pebkac.gr, 0 peblet.be, 1 pebook.tk, 1 +pebuu.com, 1 pec-email.com, 1 pec.net, 1 pecadis.de, 1 pecan.ai, 1 -pecanplantationland.com, 1 pecasse.be, 0 pecetowicz.pl, 1 pecheneg.tk, 1 @@ -112687,7 +112613,6 @@ peen.ch, 1 peene.be, 1 peenee.in.th, 1 peenor.xyz, 1 -peep.gq, 1 peeptalk.dk, 1 peer.travel, 1 peerbearing.com, 1 @@ -112751,6 +112676,7 @@ peifi.de, 0 peihouston.com, 1 peippo.at, 1 peirong.me, 1 +pejetroperformance.com.br, 1 pejupiel.com, 1 pekarnasazava.cz, 1 pekarskis.com, 1 @@ -112781,13 +112707,14 @@ pelican.ie, 1 pelicanbaytx.gov, 1 pelicanconveyancing.co.uk, 1 pelicanottertailmn.gov, 1 +pelicanparty.games, 1 pelicans.tk, 1 peliculaonline.tk, 1 peliculaslatino.tk, 1 pelikone.fi, 1 pelinca.nl, 1 pellegrino.ar, 1 -pellerinstrategie.com, 1 +pellerinstrategie.com, 0 pellet.pordenone.it, 1 pellet.roma.it, 1 pelletgrillreviews.com, 1 @@ -112859,7 +112786,6 @@ penguinvillage.info, 1 penholder.ga, 1 peni.tk, 1 peniarth.cymru, 1 -peninsula360.com, 1 penispumpen.se, 1 pennan.tk, 1 penncrestbank.com, 1 @@ -112894,13 +112820,14 @@ pens-money.cf, 1 pens-money.ga, 1 pens-money.gq, 1 pensacolafl.gov, 1 +pensacolaseocompany.com, 1 pensacolawinterfest.org, 1 pensador.com, 1 pensador.info, 1 +pensago.com, 1 pensatore.tk, 1 pensia.tk, 1 pensieridigitali.tk, 1 -pensierolaterale.tech, 1 pensioenfonds-ey.nl, 0 pension-am-alten-waschhaus.de, 1 pension-chevaux.com, 1 @@ -112973,11 +112900,11 @@ peoplecareopticalanddental.com.au, 1 peoplecert.org, 1 peoplecheck.co.uk, 1 peoplecheck.com, 1 +peoplediein.space, 1 peoplefinders.ml, 1 peoplefirstservices.net, 1 peoplelikemeapp.com, 1 peopleofcolorcareers.com, 1 -peopleplanetconnect.org, 1 peoplesafe.co.uk, 1 peoplesbankal.com, 0 peoplescu.com, 1 @@ -113045,7 +112972,6 @@ percymagic.tk, 1 perd.re, 1 perdanabagus.tk, 1 perdita-capelli.tk, 1 -perditumtriumvirate.com, 1 perdolyathlendr.tk, 1 perecraft.com, 1 peredovaya.tk, 1 @@ -113067,7 +112993,6 @@ perevod-kakadu.com, 1 perewall.tk, 1 perezdecastro.org, 0 perf-b2b.com, 1 -perf.report, 1 perf1.com, 1 perfare.net, 1 perfect-blog.com, 1 @@ -113097,8 +113022,8 @@ perfectplrarticles.ga, 1 perfectpussypics.com, 1 perfectsize.pl, 1 perfectskinstudio.co.uk, 1 -perfectsnap.co.uk, 1 perfectsoft.tk, 1 +perfecttank.de, 1 perfecttimingtoday.com, 1 perfecttits.net, 1 perfectweb.today, 1 @@ -113123,7 +113048,6 @@ performancetransmission.net, 1 performidi.com, 1 performing-art-schools.com, 1 performingdreams.tk, 1 -performiptv.com, 1 performive.com, 1 perfumerie.tk, 1 perfumes.com.br, 1 @@ -113138,6 +113062,7 @@ peridoc.org, 1 peridotcapitalpartners.com, 1 periferiaegyesulet.hu, 1 perigon.ch, 1 +perimeter-scan.ru, 1 perin.name, 1 perini.com.au, 1 perinkac.cz, 1 @@ -113165,6 +113090,7 @@ perkypavla.com, 1 perlaphotography.com.au, 1 perlbanjo.com, 1 perlego.com, 1 +perlemedia.com, 1 perlina.co.il, 1 perm-jur.ch, 0 perm-juridique.ch, 0 @@ -113197,13 +113123,11 @@ permis-apoints.com, 1 permis-apoints.fr, 1 permis.online, 1 permiscoderoute.fr, 1 -permisecole.com, 1 permistheorique.be, 1 permistheoriqueenligne.be, 1 permitting.gov, 1 permutationcity.net, 1 pernod-ricard.io, 1 -peroduaselangor.com, 1 peronmedya.com, 1 perot.me, 1 perpedal.se, 1 @@ -113248,7 +113172,7 @@ persistshields.org, 1 persjrp.ca, 1 perso.pl, 1 persoform.ch, 1 -personacommunications.com.au, 1 +personacommunications.com.au, 0 personal-genome.com, 1 personal-scrum.de, 1 personal-scrum.eu, 1 @@ -113256,7 +113180,6 @@ personalaccidentsers.ga, 1 personalaccidentsest.ga, 1 personalcourtreporters.com, 1 personalfarewells.com.au, 1 -personalglobal.com.br, 1 personalhealth.ie, 1 personalhydroponics.com, 1 personaliseyourwine.com.au, 1 @@ -113363,7 +113286,6 @@ pestwerkz.com.sg, 1 pet-cat-accessories.ml, 1 pet-distributor.cz, 1 pet-guide.net, 1 -pet-hotel-mura.net, 1 pet-net.tk, 1 pet-tekk.co.uk, 1 peta.tk, 1 @@ -113384,6 +113306,7 @@ petcareonline.com, 1 petcharte.ga, 1 petclassy.ga, 1 petclaw.com, 1 +petcle.com, 1 petclient.ga, 1 petco.com, 1 petcollections.ga, 1 @@ -113526,11 +113449,9 @@ petredhot.ga, 1 petrequest.ga, 1 petricamarc.ro, 1 petrichorsolutions.co, 1 -petrifiedhaggis.com, 1 petrifiedhaggis.dedyn.io, 1 -petrifiedhaggis.net, 1 -petrifiedhaggis.org, 1 petrkulik.cz, 1 +petrobench.com, 1 petrochemprojects.ga, 1 petrol-power.tk, 1 petrol.com.ua, 1 @@ -113603,7 +113524,6 @@ pex.digital, 0 pexagontech.com, 1 peyote.org, 1 peyote.wiki, 1 -peytonwebster.com, 1 peyukoshop.com, 1 pf.dk, 1 pfa.or.jp, 1 @@ -113641,6 +113561,7 @@ pfh.world, 1 pfhstheroar.com, 1 pfingstberg.de, 1 pfingstsportfest.de, 1 +pfish.zone, 1 pflanzen-shop.ch, 1 pflanzen-werkstatt.de, 1 pflege.ch, 1 @@ -113662,7 +113583,7 @@ pfudor.tk, 1 pfwarriors.com, 1 pg-forum.at, 1 pg-forum.ch, 1 -pg-forum.de, 1 +pg-forum.de, 0 pg-it.at, 1 pg-mana.net, 1 pg-sec.com, 1 @@ -114032,6 +113953,7 @@ photonclub.ir, 1 photoncourier.com, 1 photonics.bg, 1 photonis.com, 1 +photonmatters.com, 1 photonsensor.com, 1 photonsphere.org, 1 photopalace.tk, 1 @@ -114067,7 +113989,6 @@ phoxden.net, 1 php.watch, 1 phpadmin666.com, 1 phpbb-tutorials.cf, 1 -phpbbchinese.com, 0 phpcraft.de, 1 phpdevlabs.tk, 1 phpdorset.co.uk, 1 @@ -114216,6 +114137,7 @@ piatabrasil.com.br, 1 piatenko.ml, 1 piatika.com, 1 piatika.in, 1 +piava.ai, 1 piavonpadberg.com, 1 pib.gd, 1 pibgd.fr, 1 @@ -114259,9 +114181,9 @@ pickhdtvers.ga, 1 pickhdtvest.ga, 1 picklaptop.com, 1 pickle-publishing.com, 1 +pickleballzone.com, 1 pickleland.com, 1 picklinik.id, 0 -pickmoney.es, 1 pickmysoap.gr, 1 picknetworkiscoming.sg, 1 picknrg.com, 1 @@ -114272,6 +114194,7 @@ pickswapest.ga, 1 picksygirl.com, 1 picktablet.com, 1 pickulsky.com, 1 +pickup-transporte.de, 1 pickupenc.ru, 1 picloudedge.com, 1 picme.tk, 1 @@ -114321,7 +114244,6 @@ pieceofcake.solutions, 1 piecesofmind.in.rs, 1 piecestech.com, 0 piechart.ga, 1 -pieddebiche-paris.com, 1 piedraconstruction.ma, 1 piedrahita.tk, 1 piedrasblancas.gov, 1 @@ -114347,6 +114269,7 @@ pier1url.com, 1 pier28.com, 1 pier2pier.org, 1 piercecountyne.gov, 1 +piercing.hu, 1 piercingnagykereskedes.hu, 1 piercingpiac.hu, 1 piercraft.com, 1 @@ -114385,6 +114308,7 @@ pif.gov, 1 pig-breeding.tk, 1 pig333.com, 1 pigb.net, 1 +pigboats.com, 1 pigeonholelive.com, 1 pigeonpairstays.com, 1 pigeonracinginformation.com, 1 @@ -114435,7 +114359,6 @@ pilates-mehr.de, 1 pilatesavenue.co.uk, 1 pilatesboutique.com, 1 pilatespt.nl, 1 -pilatesstation.co.th, 1 pilbaraports.com.au, 1 pilchuck.org, 1 pile.systems, 1 @@ -114446,7 +114369,6 @@ pilipinas.cc, 1 piliszek.net, 1 pillar.fi, 1 pillargrc.com, 1 -pillow.sk, 1 pillowcast.net, 1 pillowexpertsers.ga, 1 pillowexpertsest.ga, 1 @@ -114463,7 +114385,7 @@ pilotinusa.com, 1 pilotknobmo.gov, 1 pilotodianws.azurewebsites.net, 1 pilotorg.ru, 1 -pilotpen.us, 0 +pilotpen.us, 1 pilotproject.tk, 1 pilotshop.com, 1 pilsen.fun, 1 @@ -114488,6 +114410,7 @@ pims-hub.org.uk, 1 pimsa.com.tr, 1 pimsaautomotive.com, 1 pimylifeup.com, 1 +pin-communications.com, 1 pin.net.au, 1 pinacamauto.com, 1 pinalcourtsaz.gov, 1 @@ -114560,7 +114483,7 @@ pinkfoxwebdesign.com, 0 pinkhatbeard.com, 1 pinkitalia.tk, 1 pinklecfest.org, 1 -pinklittlenotebook.com, 1 +pinklittlenotebook.com, 0 pinkmango.travel, 0 pinkoffice.com, 1 pinkoi.com, 1 @@ -114585,7 +114508,6 @@ pinleather.rs, 0 pinmeto.com, 1 pinnacle-tex.com, 1 pinnaclecommunityservices.com.au, 1 -pinnaclefoundationrepair.com, 1 pinnacleholdings.com, 1 pinnaclelife.nz, 1 pinnacletrailers.com, 1 @@ -114737,7 +114659,7 @@ pissedoff.uk, 1 pissflaps.co.uk, 1 pissflaps.org.uk, 1 pist.is, 1 -pistacio.hr, 1 +pista73.com, 1 pistats.ddns.net, 1 pistolnz.org.nz, 1 pistonkandidatu.tk, 1 @@ -114858,6 +114780,7 @@ pixeltranslating.com, 1 pixelturkey.art, 1 pixelturkey.com, 1 pixelumin3d.com, 1 +pixelunion.eu, 1 pixelurbia.com, 1 pixeluser.de, 1 pixelution.at, 1 @@ -114917,7 +114840,6 @@ pjatnashki.ru, 1 pjax.xyz, 0 pjc.is, 1 pjentertainments.co.uk, 1 -pjleisure.co.uk, 1 pjo.no, 1 pjotor.tk, 1 pjshop.cf, 1 @@ -114982,13 +114904,11 @@ placetwist.net, 1 placidoandriolo.tk, 1 placiena.jp, 1 placing.com, 1 -placker.com, 1 plagiarismcheck.org, 1 plagiary.org, 1 plagu.ee, 1 plagued.tk, 1 plaid.com, 1 -plainfeeder.com, 1 plainfieldil.gov, 1 plainfieldpolicenj.gov, 1 plainfieldvt.gov, 1 @@ -115067,7 +114987,6 @@ planetfertilityest.ga, 1 planetgolf.de, 1 planetgrehen.tk, 1 planethowl.com, 1 -planeticke.com, 1 planetickettravel.com, 1 planetknauer.net, 1 planetmath.org, 1 @@ -115094,6 +115013,8 @@ planisanin.tk, 1 planiserin.tk, 1 planisware.academy, 1 planisware.cn, 1 +planisware.io, 1 +planisware.live, 1 planisys.net, 1 planit-inc.com, 1 planitz.com, 1 @@ -115162,7 +115083,6 @@ plasmatrap.com, 1 plasmoth.org, 1 plasofficial.it, 1 plassmann.ws, 1 -plast-pallet.ru, 1 plast.bg, 1 plast.design, 1 plastdesign.com.ua, 1 @@ -115219,7 +115139,6 @@ platinumkids.com.br, 1 platinumpavingnj.com, 1 platinumplumbingca.com, 1 platinumpoolsaz.com, 1 -platinumsystems.biz, 1 platinumtalkers.ga, 1 platinumtalkest.ga, 1 platitudemusic.com, 1 @@ -115254,6 +115173,7 @@ play-mate.tk, 1 play-telochki.tk, 1 play.cash, 1 play.google.com, 1 +play21bit.com, 1 play3niu11.com, 1 play3niu33.com, 1 play3niu55.com, 1 @@ -115269,6 +115189,7 @@ playball.tk, 1 playcasinos.ca, 1 playchiplet.com, 1 playcollect.net, 1 +playcooked.com, 1 playdaysparties.co.uk, 1 playdeadlock.com.cn, 1 playdlawosp.pl, 1 @@ -115316,6 +115237,7 @@ playstation-network.ga, 1 playstationplus.es, 1 playstationtrophies.org, 1 playtictactoe.org, 1 +playtinwhistle.com, 1 playtoearn.net, 1 playtop.tk, 1 playtopia.no, 1 @@ -115373,6 +115295,7 @@ plenty.jp, 1 plentybetter.com, 1 plentybetter.org, 1 pleo.io, 1 +plesksecuritycheck.com, 1 plesse.pl, 1 pletenkin-nn.ru, 1 pleven.bg, 1 @@ -115500,7 +115423,7 @@ plusreed.com, 1 plustwik.com, 1 plutiedev.com, 1 pluto5000.com, 1 -plutopia.ch, 1 +plutopia.ch, 0 pluxml.org, 1 plvsultra.com, 1 plyind.com, 1 @@ -115581,7 +115504,6 @@ pmsoft.nl, 0 pmt-documenten.nl, 1 pmtech.inf.br, 1 pmu.com.pl, 1 -pmvmaconnerie.fr, 1 pn.com.au, 1 pn.id.lv, 1 pnakosoft.com.au, 1 @@ -115751,6 +115673,7 @@ pocomo.ca, 1 pocopizza.co.uk, 1 pocopt.com, 1 pocopt.ru, 1 +pocsaismartsystem.hu, 1 pocze.ch, 1 pocztowski.it, 1 pod-emnik.by, 1 @@ -115849,7 +115772,7 @@ pogi.ee, 1 pogljad-brest.tk, 1 pogodavolgograd.tk, 1 pogodok.tk, 1 -pogomate.com, 1 +pogomate.com, 0 pogotowie-komputerowe.tk, 1 pogotowiekomputeroweolsztyn.pl, 1 pogrebeniq-sofia.com, 1 @@ -115860,8 +115783,10 @@ pohmagazine.org, 1 pohoron.ru, 1 poimel.ga, 1 poimenidou.gr, 1 +poimskaya.ru, 1 poin.tk, 1 poinsot.info, 1 +point11.ai, 1 pointagri.com, 1 pointbarre.tk, 1 pointblog.com, 1 @@ -115876,7 +115801,6 @@ pointiswunderland.de, 1 pointless.one, 1 pointmaquininha.com, 0 pointnull.com, 1 -pointonelab.com, 1 pointpalace.tk, 1 pointparfait.fr, 1 pointpleasantbeachnj.gov, 1 @@ -115905,6 +115829,7 @@ pojoksosmed.com, 1 pokafe.com, 1 pokagontownshipmi.gov, 1 pokalsocial.de, 1 +pokedb.de, 1 pokedex.mobi, 1 pokeelektronik.com, 1 pokeelektronik.com.tr, 1 @@ -115945,7 +115870,6 @@ pokerslab.com, 1 pokerventure.ga, 1 pokerventureers.ga, 1 pokerventureest.ga, 1 -pokeymanatee4.xyz, 1 poki.at, 1 poki.be, 1 poki.bg, 1 @@ -115971,6 +115895,7 @@ poki.ro, 1 poki.se, 1 pokl.cz, 1 pokoiki.pl, 1 +pokojovkyodlucie.cz, 1 pokon548.ink, 1 pokpok.tk, 1 pokrowcecardo.pl, 1 @@ -116006,6 +115931,7 @@ pole-mecanique.fr, 1 pole.net.nz, 1 pole1.co.uk, 1 polebarn.com, 1 +polecamps.com, 1 polemamas.com, 1 polemik.tk, 1 polenautohuur.nl, 1 @@ -116033,6 +115959,7 @@ policyinsure.com, 1 policymakr.com, 1 policymine.com, 1 policyreporter.us, 1 +policyrisk.com, 1 policytrusters.ga, 1 policytrustest.ga, 1 poliermachines.be, 1 @@ -116049,7 +115976,6 @@ polis.or.at, 1 polis812.ru, 1 polisanaraka.pl, 1 polisanarciarska.pl, 1 -polisave.co.il, 1 polish-dictionary.com, 1 polish-flag.com, 1 polish-translations.com, 1 @@ -116093,7 +116019,6 @@ politicsnews.ml, 1 politicsnews.tk, 1 politicsnigeria.com, 1 politik-bei-uns.de, 1 -politik-kommunikation.de, 1 politikainavigator.hu, 1 politique-etrangere.com, 1 politisor.com, 1 @@ -116137,6 +116062,7 @@ polorize.com, 1 polotshirts.org, 1 polourize.com, 1 polparts.nl, 1 +polrentgen.pl, 1 polski-dentysta-birmingham.uk, 1 polskiadwokat.org, 1 polskiemalzenstwo.org, 1 @@ -116150,7 +116076,7 @@ poltax.com.pl, 1 poltek-petrokimia.ac.id, 1 poltsamaa.edu.ee, 1 poltsamaalasteaed.edu.ee, 1 -poly.se, 1 +polyatomic.ai, 1 polycoise.com, 1 polycraftual.co.uk, 0 polygamer.net, 0 @@ -116161,10 +116087,11 @@ polygonthemes.com, 1 polygraphi.ae, 1 polymaint-services.com, 1 polymake.org, 1 +polymarketwatch.info, 1 polymath.pm, 1 polymerexpert.biz, 1 polymerix.de, 1 -polymesh.network, 1 +polymesh.network, 0 polymics.com, 0 polyna.eu, 1 polynesia.tech, 1 @@ -116203,7 +116130,7 @@ pompefunebrilariviera.it, 0 pompeii.tickets, 1 pompes-funebres-girard.com, 1 pomphreyslaw.com, 1 -ponabana.com, 1 +pon.com, 1 ponavia-rezidence.cz, 1 ponca-nsn.gov, 1 poncagedemarbre.fr, 1 @@ -116229,7 +116156,6 @@ pontificia.tk, 1 pontiwerx.com.au, 1 pontodogame.com.br, 1 pontosdevista.pt, 1 -pontosnews.gr, 1 pontotoccountyms.gov, 1 pontupagina.com, 1 ponvelab.com, 1 @@ -116303,7 +116229,6 @@ popkins.ga, 1 popkins.gq, 1 popkins.ml, 1 popkins.tk, 1 -popkulturysci.pl, 1 poplargrove-il.gov, 1 poplavok77.tk, 1 poplite.xyz, 1 @@ -116345,6 +116270,7 @@ populardogs.ml, 1 popularhairstyles.org, 1 popularmedianews.com, 1 population-ethics.com, 1 +population-europe.eu, 1 population.gov.au, 0 populationhealthdata.nl, 1 popup-stores.online, 1 @@ -116353,6 +116279,7 @@ popwaifu.click, 1 poquiloco.com, 1 poradls.cz, 1 poradludkastanka.cz, 1 +poradniarozwodowa.pl, 1 porady-wnetrzarskie.pl, 1 porady.elblag.pl, 1 porady.kalisz.pl, 1 @@ -116368,7 +116295,6 @@ porady.walbrzych.pl, 1 porady.zgora.pl, 1 poradywnetrzarskie.pl, 1 porazarul.by, 1 -porcepastora.com.ve, 1 porchdaydreamer.com, 1 porcore.com, 1 porelcorazon.com, 1 @@ -116413,6 +116339,7 @@ pornhubpremium.com, 1 pornhun.xyz, 1 pornimg.net, 1 porniwi.com, 1 +pornkaizen.com, 1 pornline.sex, 1 pornloupe.com, 1 pornmega.net, 1 @@ -116664,6 +116591,7 @@ postel.go.id, 1 posteo.com, 1 posteo.de, 1 posteo.net, 1 +postermaniacs.pe, 1 postermywall.com, 1 postern.net, 1 postern.nl, 1 @@ -116748,6 +116676,7 @@ potocarimc.ba, 1 potolok-brest.tk, 1 potolok.am, 1 potomac.cf, 1 +potomacexteriors.com, 1 potomania.cz, 1 potosi-bolivia.tk, 1 potosivlgwi.gov, 1 @@ -116861,7 +116790,6 @@ powerman.name, 1 powerman.top, 1 powerpc.pt, 1 powerpilot.co.za, 1 -powerplan.com, 1 powerplay.xyz, 0 powerplayer.tk, 1 powerroo.com.au, 1 @@ -116894,7 +116822,6 @@ powersergwiringconsultants.com, 1 powershaper.io, 1 powershellmagic.com, 1 powersmithsolar.com, 1 -powersolusa.com, 1 powersport.lt, 1 powersrealtygrp.com, 1 powerstreet.cloud, 1 @@ -116914,6 +116841,7 @@ powerwellness-korecki.de, 1 powerwheels.tk, 1 powerwithpeople.com, 1 powerzonewrestling.tk, 1 +powiatkrasnicki.pl, 1 powmobilegrooming.com, 1 poxiao.net, 1 poylabo.com, 1 @@ -116921,6 +116849,7 @@ poynter.net, 1 pozarevac.tk, 1 pozd.tk, 1 pozdravlyalka.gq, 1 +pozharcontrol.ru, 1 pozharnyi.tk, 1 pozitiffchik.ga, 1 pozitiffchik.ml, 1 @@ -116978,16 +116907,15 @@ ppsclt.com, 1 ppsl.nz, 1 ppsoft.es, 1 ppsoft.org, 1 -ppssh.org, 1 ppt.org, 1 ppuglobe.com, 1 ppweb.pro, 1 ppy.sh, 1 pqcrypta.com, 1 pqforce.com, 1 +pqg.capital, 1 pqgruber.com, 1 pqscript.com, 1 -pr-jf.de, 1 pr-news.spb.ru, 1 pr-project.tk, 1 pr.search.yahoo.com, 0 @@ -117015,15 +116943,16 @@ practicalcontracting.ca, 1 practicalgrowth.life, 1 practicalhomes.com.au, 1 practicallyedible.com, 1 +practicallyunhackable.com, 1 practicalmamawellness.com, 1 practicalneurology.com, 0 practicavial.com, 1 practicepanther.com, 1 practicepath.com, 1 +practiso.io, 1 practixdevelopment.com, 1 practo.com, 1 practodev.com, 1 -practopulse.com, 1 pracusalev.tk, 1 pradcooutdoorbrands.com, 1 pradeek.tk, 1 @@ -117099,12 +117028,14 @@ praser.net, 1 prashantcafe.tk, 1 prasinoscomputers.ml, 1 prasos.fi, 1 +prateekganguli.com, 1 prateep.io, 1 pratelloshop.tk, 1 pratemarkets.com, 1 prathambooks.org, 1 pratic.it, 1 praticienmedecinechinoise.be, 1 +praticonnect.com, 1 pratopronto.org, 1 pratorotoli.it, 1 pratosirunin.ga, 1 @@ -117127,7 +117058,10 @@ pravoslavie.tk, 1 pravoslavnayarus.tk, 1 pravosudie.tk, 1 prawicadlawolsztyna.pl, 1 +prawnik.torun.pl, 1 +prawnika.pl, 1 prawnikdlaanglii.co.uk, 1 +prawnikwewspolnocie.pl, 1 praxino.de, 0 praxis-am-tetraeder.de, 1 praxis-andrea-huber.de, 1 @@ -117145,6 +117079,7 @@ praxis-suchtmedizin.ch, 1 praxis-waedicity.ch, 1 praxis.nl, 1 praxisfilms.org, 1 +praxisglobe.com, 1 praxisgroup.services, 1 praxistipp24.com, 1 praxxys.ph, 1 @@ -117166,7 +117101,6 @@ pre-renewal.com, 1 preapps.com, 1 precambridge.tk, 1 precaria.org, 1 -precaston.com, 1 precedecaritas.com.br, 1 precedencemedia.com, 1 precept.uk.com, 1 @@ -117183,7 +117117,6 @@ precisebusiness.com, 1 precisebusiness.com.au, 1 precisefuture.com, 1 precisehotels.com, 1 -precisionclan.com, 1 precisioncourt.com, 1 precisiondentalnyc.com, 1 precisiondentistrynj.com, 1 @@ -117191,7 +117124,6 @@ precisiondigital-llc.com, 1 precisionicerinks.com, 0 precisionlender.com, 1 precisionmachineservice.com, 1 -precisionmarketdata.com, 1 precisiontrialsolutions.com, 1 precisionvaccinations.com, 1 precitaj.si, 1 @@ -117212,6 +117144,7 @@ predskazanie.cf, 1 predskazanie.ml, 1 predskazanie.tk, 1 predstavitelstvo-v-sude.tk, 1 +preea.com, 1 preecepools.co.uk, 1 preejaculation.ga, 1 preezy.de, 1 @@ -117232,7 +117165,7 @@ prefontaine.name, 1 pregen.tk, 1 pregnancytips.tk, 1 pregnantorcrazy.com, 1 -pregun.com.au, 1 +pregun.com.au, 0 pregunteleakaren.gov, 1 preis-alarm.info, 1 preis-alarm.org, 1 @@ -117321,6 +117254,7 @@ prensahispana.ga, 1 prensarural.org, 1 prepa-benjam.fr, 1 prepa-code.com, 1 +prepagolf.fr, 1 prepagosyescortforyou.com, 1 prepaid-cards.xyz, 1 prepaidgirl.com, 1 @@ -117536,6 +117470,7 @@ prijsvergelijken.ml, 1 prikeshsavla.com, 1 prikolkz.tk, 1 prim-wash.de, 1 +prim.com, 1 prima-backoefen.de, 1 prima-badezimmermoebel.de, 1 prima-bohrmaschinen.de, 1 @@ -117570,7 +117505,6 @@ primadatingportaler.com, 1 primadirectory.tk, 1 primaflorafloristaccrington.co.uk, 1 primalinea.pro, 1 -primalracing.com, 1 primalshop.dk, 1 primalsurvivor.net, 1 primananda.com, 1 @@ -117672,7 +117606,6 @@ print-street.tk, 1 printable-map-az.com, 1 printablemapaz.com, 1 printablemapforyou.com, 1 -printableschedule.net, 1 printandgo.fr, 1 printbase.cz, 0 printbigjournal.tk, 1 @@ -117692,9 +117625,9 @@ printmijn3dmodel.be, 1 printmydesigns.ml, 1 printperfect.ro, 1 printpoint.tk, 1 +printrollup.com, 1 printrollup.fr, 1 printscan.com, 1 -printsfinds.com, 1 printshoppy.com, 1 printsimple.eu, 1 printstudio.kiev.ua, 1 @@ -117734,11 +117667,12 @@ prisma.tk, 1 prismacloud.com, 1 prismacloud.xyz, 1 prismaot.tk, 1 +prismapixel.studio, 1 +prismatic.io, 1 prismatic.ro, 1 prismomarketing.com, 1 prisneutajovanamista.cz, 1 prisonerresource.com, 1 -pristinegrace.org, 1 pristinepotty.com, 1 pritchi.tk, 1 pritti-wummen.de, 1 @@ -117806,6 +117740,7 @@ privatecamsites.com, 1 privatecapsecurity.org, 1 privatedata.tk, 1 privatedns.uk, 1 +privatedrive.co, 1 privateger.me, 1 privategiant.com, 1 privatehd.to, 1 @@ -117835,6 +117770,7 @@ priveadressen.tk, 1 privelust.nl, 1 priverify.com, 1 privilegevisa.fr, 1 +privlabs.io, 1 privo.com, 1 privod-okna.ru, 1 privorot.cf, 1 @@ -117842,7 +117778,7 @@ privtell.com, 1 privw.com, 1 privy-staging.com, 1 privy.com, 0 -privylabs.com, 1 +privylabs.com, 0 prix-carburants-info.fr, 1 prix-carburants.gouv.fr, 1 prixaurorawards.ca, 1 @@ -117859,6 +117795,7 @@ prizecheck.ru, 1 prizecode.ru, 1 prizehometickets.com.au, 1 prizelink.com.au, 1 +prizelock.ca, 1 prizkod.ru, 1 prizrak-v-dospehah.ga, 1 prjktruby.com, 0 @@ -117907,9 +117844,7 @@ pro8-sfets.net, 1 pro98.nl, 1 proacousticsusa.com, 1 proact-it.co.uk, 1 -proactive.run, 1 proactivenews.ml, 1 -proactivsports.com, 1 proactivsports.net, 1 proadvanced.com, 1 proadvisorcoach.com, 0 @@ -117984,6 +117919,9 @@ proctorauth.com, 1 proctorial.cf, 1 proctorio.com, 1 proctorio.net, 1 +proculair.nl, 1 +proculaircontent.com, 1 +proculairworkers.com, 1 procurant.com, 1 procurement.moscow, 0 procurs.us, 1 @@ -117992,6 +117930,7 @@ prod-bp-geotab-api.azurewebsites.net, 1 prod-vigl-www-master.azurewebsites.net, 1 prodapt.com, 1 prodemos.nl, 1 +prodentim101-us.com, 1 prodesigntools.com, 1 prodesk.bg, 1 prodiadigital.com, 1 @@ -118020,6 +117959,7 @@ productive.io, 0 productiveplastics.com, 1 productosquimicosrd.com, 1 productpeo.pl, 1 +productpreneurmarketing.com, 1 products-for-health.tk, 1 products4more.at, 1 productsandfeatures.com, 1 @@ -118148,7 +118088,6 @@ progeste.pt, 1 progettodighe.it, 1 progettograjau.com, 1 progettolegalita.it, 1 -progettonazionale.it, 0 progezi.com, 1 progg.no, 1 proggersession.com, 1 @@ -118162,6 +118101,7 @@ progon.cf, 1 program-and.work, 1 programaarista.com, 1 programador-web-freelance.es, 1 +programadoresdepre.com.br, 1 programagetit.com.br, 1 programagrowup.com.br, 1 programalidera.com.br, 1 @@ -118295,6 +118235,7 @@ prokop.uk, 1 prokuratura.uz, 1 prolens-lankaran.tk, 1 proletaren.se, 1 +prolificzone.com, 1 prolikewoah.com, 1 prolinehardware.ie, 1 prolocofrascarolo.tk, 1 @@ -118348,7 +118289,7 @@ promodoble.com, 1 promods.net, 1 promods.store, 1 promofirstmedia.co.id, 1 -promohulp.nl, 1 +promohulp.nl, 0 promohunt.ru, 0 promokodi.tk, 1 promolife.be, 1 @@ -118406,6 +118347,7 @@ propagandablog.de, 0 propagationtools.com, 1 propanesale.cf, 1 propbot.com, 1 +propcashflow.my, 1 propecia.ml, 1 propelate.com, 1 propeld.com.au, 1 @@ -118430,7 +118372,6 @@ propertycareincorporated.com, 0 propertycrawl.com, 1 propertydealer.ga, 1 propertyfindercdn.com, 1 -propertyfurniture.com, 1 propertygroup.pl, 1 propertylondon.co.uk, 1 propertymarketplace.com.ng, 1 @@ -118528,6 +118469,7 @@ prosurf.com.hr, 1 prosurveillancegear.com, 1 prosvet.tk, 1 prosveta1901.tk, 1 +prosvirninvlad.me, 1 protanki.ml, 1 protanki.tk, 1 protapnews.tk, 1 @@ -118538,13 +118480,11 @@ proteccaocivil.net, 1 proteccaocivil.org, 1 protecciondelconsumidor.gov, 1 protecdata.ch, 1 -proteces.ru, 1 protecht.com.au, 1 protechtgroup.com, 1 protectapack.com.au, 1 protectasecurity.pe, 1 protected-forms.com, 1 -protectem.de, 1 protection-plexi.com, 1 protection-plexi.fr, 1 protection.ga, 1 @@ -118685,7 +118625,6 @@ proyectosinelec.com, 1 proyectostep.tk, 1 prozac20mg.cf, 1 prozesswunder.com, 1 -prozhedownload.com, 1 prozorlivec.tk, 1 prpbt.io, 1 prpferrara.it, 1 @@ -118722,7 +118661,6 @@ pruvo.net, 1 prvaboja.co.rs, 1 prvnirodinna.cz, 1 prwid.gov, 1 -pry.co, 1 pryan.org, 1 prylarprylar.se, 1 prytkov.com, 1 @@ -118811,6 +118749,7 @@ psihology.tk, 1 psihoterapevt1.by, 1 psihotest.tk, 1 psii.global, 0 +psikoklinik.com, 1 psikokoro.com, 1 psikoucka.cz, 1 psilly.com, 0 @@ -118866,6 +118805,7 @@ psprices.com, 1 psprsaz.gov, 1 psq.com.au, 1 psreturn.com.au, 1 +pssbau.hu, 1 pssgcsim.org, 1 pssschristchurch.tk, 1 pst.moe, 1 @@ -118882,7 +118822,6 @@ psw-training.de, 1 psyart.tk, 1 psycenter.tk, 1 psychcare.cz, 1 -psychcaremd.com, 1 psychedelia.com, 1 psychedelia.wiki, 1 psycheteelia.com, 1 @@ -118901,6 +118840,7 @@ psycho-logisch-koch.de, 1 psycho-news.tk, 1 psycho.space, 1 psychoactive.com, 1 +psychoactive.wiki, 1 psychoco.net, 1 psychologbruksela.be, 1 psychologi.cf, 1 @@ -118943,7 +118883,6 @@ psychotest.gq, 1 psychotestprep.com, 1 psychotherapie-ahlmeyer.de, 1 psychotherapie-hensiek.de, 1 -psychotherapie-kp.de, 0 psychotherapie-leipzig.eu, 1 psychotherapie-lichterfelde.berlin, 1 psychotherapie1220wien.at, 0 @@ -118959,6 +118898,7 @@ psygame.cf, 1 psyh.tk, 1 psyhelp.ro, 1 psyk-patienten.tk, 1 +psykologmonica.dk, 1 psykologtidningen.cf, 1 psykologtidningen.ga, 1 psykologtidningen.gq, 1 @@ -119198,8 +119138,6 @@ punchlist.com, 1 punchlistprosdfw.com, 1 punctually.gq, 1 pundak.games, 1 -pundeez.com, 0 -pundix.com, 1 puneindia.tk, 1 punematka.com, 1 pungatv.ml, 1 @@ -119249,7 +119187,6 @@ puppyfish.com, 1 puppygirl.ceo, 1 puppygirl.tokyo, 1 puppygock.ceo, 1 -puppyirl.gay, 1 puppykennel.tk, 1 puppylove.hu, 1 puppyporch.com, 1 @@ -119276,6 +119213,7 @@ pure-auto.eu, 1 pure-gmbh.com, 1 pure-paste.tk, 1 pure2life.nl, 0 +pureandroid.com, 1 purear.com.br, 1 pureart.co.jp, 1 pureart.jp, 1 @@ -119283,7 +119221,6 @@ pureatmospherellc.com, 1 pureaudioplayer.ru, 1 pureblissdental.com.au, 1 purebuttons.com, 1 -pureceli.com, 1 purecodedigital.com, 1 puredayshop.com.tw, 1 puredigital.nl, 1 @@ -119338,7 +119275,6 @@ purplestar.com, 1 purplestar.mobi, 1 purpletter.tk, 1 purplez.pw, 1 -purplscientific.com, 1 purpspc.com, 1 purreview.cf, 1 purrfectboudoir.com, 0 @@ -119429,7 +119365,6 @@ puuur-interiors.nl, 1 puvus.org, 1 puxlit.net, 1 puyallupnissanparts.com, 1 -puyblanc.info, 1 puzi.nl, 1 puzz.gg, 1 puzzle-welt.ch, 1 @@ -119452,7 +119387,6 @@ pvebuilds.xyz, 1 pver.nl, 1 pvgvethospital.co.uk, 1 pvh-membrany.ru, 1 -pvhe.pl, 1 pvideo.cz, 1 pvlrmnnk.com, 1 pvp-factions.fr, 1 @@ -119581,7 +119515,6 @@ pyxisfreelance.au, 1 pyxisfreelance.co, 1 pyxisfreelance.com.au, 1 pyxyp.com, 1 -pzasa.pl, 1 pzc.nl, 1 pzmk.org.pl, 1 pzsearch.nl, 1 @@ -119631,7 +119564,6 @@ qabalah.jp, 1 qabel.de, 1 qac.gov, 1 qaconstrucciones.com, 1 -qadmium.com, 1 qadmium.tk, 1 qadrishattari.tk, 1 qaina.net, 1 @@ -119654,7 +119586,7 @@ qataridiareg.com, 1 qatartimes.tk, 1 qatesol.org.au, 1 qauk.org, 1 -qaware.de, 1 +qaware.de, 0 qaz.cloud, 1 qbasic.tk, 1 qbasicsite.tk, 1 @@ -119714,6 +119646,7 @@ qfes.qld.gov.au, 1 qfig.au, 1 qfixinfo.com, 1 qgblog.org, 0 +qgdesavenjoueurs.fr, 1 qgiv.com, 1 qgtv.com, 1 qgushi.com, 1 @@ -119737,7 +119670,7 @@ qiannews.net, 0 qianqiao.me, 1 qiantuwenlu.com, 1 qiber.org, 1 -qibgroup.com.au, 1 +qibgroup.com.au, 0 qicoder.com, 1 qidn.ie, 1 qifu.me, 1 @@ -119757,7 +119690,6 @@ qingkong.net, 1 qinglingyu.cn, 1 qingly.me, 1 qingniantuzhai.com, 1 -qingpei.me, 1 qingran.net, 1 qingshanasd.cn, 1 qinlili.bid, 1 @@ -119826,7 +119758,7 @@ qnq.moe, 1 qnsgmd.com, 1 qnulabs.com, 1 qofpeacechurch.org, 1 -qolab.ai, 1 +qolab.ai, 0 qombo.nl, 1 qoml.net, 1 qonaro.com, 1 @@ -119839,7 +119771,6 @@ qosqo.tk, 1 qotw.net, 1 qover.com, 1 qoyyim.com, 1 -qozido.de, 1 qp666d.com, 0 qpai.net, 1 qpaypro.com, 1 @@ -119883,7 +119814,6 @@ qrcodedynamic.com, 1 qrcodes.tools, 1 qrcodewiz.com, 1 qrcontagion.com, 0 -qrish.live, 1 qristianuli.com, 0 qriveo.com, 1 qrlfinancial.com, 0 @@ -119911,6 +119841,7 @@ qstpcj25427.com, 1 qt.ax, 1 qtacairsoft.com, 1 qtakehd.com, 1 +qtdrop.com, 1 qthotels.com, 1 qtn.net, 1 qto.com, 1 @@ -120070,7 +120001,7 @@ quartzclinical.com, 1 quarus.net, 1 quasar.gr, 1 quasarcr.com, 1 -quasarelectronics.co.uk, 1 +quasarelectronics.co.uk, 0 quasarhomes.com, 1 quasarnet.gr, 1 quasartech.gr, 1 @@ -120093,6 +120024,7 @@ qubhockey.tk, 1 qubit.capital, 1 qubitoss.com, 1 qubitsandbytes.co.uk, 1 +qubotondo.it, 1 qubyte.codes, 1 quchronicle.com, 1 qudini.com, 1 @@ -120131,6 +120063,7 @@ queer-augsburg.de, 1 queer.pl, 1 queercinema.ch, 0 queerfest.tk, 1 +queerfotografie.nl, 1 queerlelystad.nl, 1 queerlinq.com, 1 queermerk.com, 1 @@ -120159,6 +120092,7 @@ quentar.tk, 1 quentin-informatique.fr, 1 quentin-sauvetre.fr, 1 quentinaurat.com, 1 +quentinb.giize.com, 1 quentinchevre.ch, 1 quentingemine.be, 1 quepourlesjuristes.fr, 1 @@ -120169,8 +120103,6 @@ quermes.net, 1 quernon.fr, 0 querocalcular.com.br, 1 query-massage.com, 0 -query.gov.ps, 1 -queryguard.net, 1 quesecelebra.info, 1 quessinternational.com, 1 quest-crusaders.de, 1 @@ -120192,11 +120124,11 @@ questforgaming.com, 1 questfororgasm.com, 1 questiii.com, 1 question.cf, 1 -question.com, 1 questionandanswer.ml, 1 questionyu.com, 0 questlawoffice.com, 1 questofaidance.tk, 1 +questofprogress.com, 1 questoj.cn, 1 questsocial.it, 1 questsys.com, 1 @@ -120244,7 +120176,7 @@ quicksell.co, 1 quicksell.store, 1 quickshops.ga, 1 quickstart.co.za, 1 -quicksupplies.us, 1 +quicksupplies.us, 0 quicksupply.com, 1 quicksus.com, 1 quicktapstudios.com, 1 @@ -120340,7 +120272,6 @@ quizz.biz, 1 quizzard.ga, 1 quizzard.tk, 1 quizzen.tk, 1 -quizzhit.com, 1 qul.link, 1 qulix.by, 1 qulix.ch, 1 @@ -120369,6 +120300,7 @@ quotesofgta.tk, 1 quotev.com, 1 quotidiani.net, 1 quotidianolavoce.it, 1 +quotivo.de, 1 quovadisaustria.com, 1 quoviz.com, 1 qupom.com.br, 1 @@ -120386,6 +120318,7 @@ qusi.ml, 1 qussaikhuli.tk, 1 quto.ru, 1 qutrade.io, 1 +quuck.nl, 1 quuz.org, 1 qv-eherkenning.nl, 1 qvg.company, 1 @@ -120618,7 +120551,6 @@ radarcupon.com.co, 1 radarcupon.com.mx, 1 radarcupon.es, 1 radarcupon.ro, 1 -radardetector.lol, 1 radarerp.net, 1 radarfirst.com, 1 radarstationery.com, 0 @@ -120646,7 +120578,6 @@ radiadoresalternativos.cl, 1 radiadoressoares.com.br, 1 radial.com, 1 radialplus.tk, 1 -radianceswimwear.com, 1 radiantenergy.tk, 1 radiantwonder.com, 1 radiationtherapy.tk, 1 @@ -120852,7 +120783,6 @@ radiovera.ru, 1 radiovertical.tk, 1 radiovirgendelcarmen.tk, 1 radiovolmax.tk, 1 -radiovulgaris.com, 1 radiowakeup.tk, 1 radioxanadu.tk, 1 radiozetta.tk, 1 @@ -120879,6 +120809,7 @@ radopsec.net, 1 radopsec.org, 1 radost-crikvenica.hr, 1 radost.digital, 1 +radost.sk, 1 radpath.at, 1 radpro.ai, 1 radreisetraumtreibstoff.de, 1 @@ -120964,7 +120895,6 @@ raidensnakesden.net, 1 raidentawork.lt, 1 raiderhacks.com, 1 raidertimes.com, 1 -raidkeeper.com, 1 raidstone.net, 1 raidstone.rocks, 1 raiffeisen-gv.ch, 1 @@ -120989,7 +120919,6 @@ railcard.co.uk, 1 railcarrxqa.com, 1 railclub.tk, 1 railfans.ca, 1 -railfeeding.com, 1 railgun.ac, 1 railgun.com.cn, 1 railgun.email, 1 @@ -121035,7 +120964,6 @@ rainbowflowers.co.uk, 0 rainbowheart.com, 1 rainbowinflatables.co.uk, 1 rainbowloompatterns.com, 1 -rainbowmarketing.ca, 1 rainbowmath.tk, 1 rainbowsmoothies.win, 1 rainbowstore.com.au, 0 @@ -121052,7 +120980,6 @@ raincoasttherapy.com, 1 raincoat.systems, 1 rainel.at, 1 rainerstoll.at, 1 -rainfall.ro, 1 rainfocus.com, 1 rainforest.engineering, 1 rainforestfoundation.org, 1 @@ -121130,7 +121057,6 @@ raku.land, 1 rakudo.org, 1 rakugokai.net, 1 rakuvisa.com, 1 -ralaoui.com, 1 ralaoui.me, 1 raleighadultmedicine.com, 1 raleighboneandjoint.com, 1 @@ -121151,6 +121077,7 @@ rallybase.eu, 1 rallycycling.com, 0 rallyekrumlov.cz, 1 rallyfotosaswin.tk, 1 +rallynavigator.com, 1 rallytrophy.tk, 1 ralphdeal.com, 1 raltha.com, 1 @@ -121226,7 +121153,6 @@ randallso.gov, 1 randallwilk.com, 1 randburgplumber-247.co.za, 1 randburgplumbing.co.za, 1 -randdtaxcreditspecialists.com, 1 randmevape.net, 1 randoequipement.com, 1 randolf.ca, 1 @@ -121296,6 +121222,7 @@ raniperearstikeskus.ee, 1 ranjanbiswas.net, 1 ranjeetmehta.tk, 1 rankae.com, 1 +rankandstyle.com, 1 rankeco.com, 1 rankia.ga, 1 ranking-deli.jp, 1 @@ -121306,6 +121233,7 @@ rankingide.tk, 1 rankingofe.com.pl, 1 rankingubezpieczeniowy.pl, 1 rankingubezpieczennazycie.pl, 1 +rankpoll.me, 1 ranksite.cf, 1 ranksite.ga, 1 ranksite.gq, 1 @@ -121328,7 +121256,6 @@ ranyeh.com, 1 ranzbak.nl, 1 raoliveoil.ga, 1 raomed.com.ar, 1 -raonpick.com, 1 raovatsaigon.tk, 1 rap4ever.org, 1 rapala.com, 1 @@ -121451,6 +121378,7 @@ ratemyfishtank.com, 1 ratenkauf.com, 1 rates.ca, 1 ratespy.com, 1 +ratexindex.com, 1 ratgeber-alltag.de, 1 ratgeber-beauty.com, 1 ratgeber-massagen.com, 1 @@ -121641,6 +121569,7 @@ rbknarkers.tk, 1 rbls.org, 1 rbltracker.com, 1 rbmafrica.co.za, 1 +rbmediaglobal.com, 1 rbmland.com, 1 rbprosthodontics.com, 1 rbs.ca, 1 @@ -121753,6 +121682,7 @@ rdmc.sh, 1 rdmc.shop, 1 rdmc.site, 1 rdmc.sn, 1 +rdmc.studio, 1 rdmc.support, 1 rdmc.systems, 1 rdmc.tel, 0 @@ -121772,8 +121702,6 @@ rdsm.be, 0 rdtagro.com.br, 1 rdtech.de, 1 rdto.io, 1 -rduser.lol, 1 -rduser.me, 1 rdv-cni.fr, 1 rdv-coquin-rapide.fr, 1 rdvobras.pt, 1 @@ -121831,7 +121759,7 @@ readsportsonly.com, 0 readup.tk, 1 ready4bf.tk, 1 ready5g.net, 1 -readycentbid.com, 1 +readycentbid.com, 0 readycentral.com, 1 readychurchsites.com, 1 readyclassroomcentral.com, 1 @@ -121859,6 +121787,7 @@ reakcjonista.tk, 1 reaksi.id, 1 real-it.nl, 1 real-linux.tk, 1 +real-milk.ru, 1 real-site.tk, 1 real-srebrenica-genocide.cf, 1 real-srebrenica-genocide.ga, 1 @@ -122011,7 +121940,6 @@ rebellyon.info, 1 rebelonline.nl, 1 rebelsi.pl, 1 rebelstudio.ml, 1 -rebelz.se, 1 rebirthlongboard.co.th, 1 rebizzield.com, 1 rebo.ai, 1 @@ -122045,6 +121973,7 @@ receitasdacassia.tk, 1 receitasdepesos.com.br, 1 receitasfavoritas.com, 1 recentiprogressi.it, 1 +recepsenel.com, 1 receptenwebsite.com, 1 reception247.com, 0 receptionsbook.com, 1 @@ -122104,6 +122033,8 @@ recode-lang.com, 1 recoilbox.com, 1 recolic.cc, 1 recolic.net, 1 +recollect.co.nz, 1 +recollect.net.au, 1 recollection.fr, 1 recollective.com, 1 recolor.ml, 1 @@ -122142,7 +122073,6 @@ recruitskill.cf, 1 recruitskill.ga, 1 recruitskill.gq, 1 recruitwithclutch.com, 1 -rectale.co, 1 rectale.com, 1 rectale.xyz, 1 rectecforum.com, 1 @@ -122201,6 +122131,7 @@ redcanary.co, 1 redcandycane.tk, 1 redcapital.cl, 1 redcardinal.tk, 1 +redcarnationhotels.com, 1 redcarpetmonday.com, 1 redcatrampageforum.com, 1 redcedar.gov, 1 @@ -122286,6 +122217,7 @@ rediazauthor.com, 1 redid.com.au, 1 redington-bizapp.com, 1 redington-bizboard.com, 1 +redingtonconnect.com, 1 redingtongroup.com, 1 redion.me, 1 redir.me, 1 @@ -122313,6 +122245,7 @@ redlineairdefence.com, 1 redlineairdefense.ai, 1 redlineairdefense.ca, 1 redlineairdefense.com, 1 +redlinecourier.com, 1 redlink.de, 1 redlink.tk, 1 redlinker.ml, 1 @@ -122326,7 +122259,7 @@ redmejoracontinua.com, 1 redmondoregon.gov, 1 redmore.me, 1 redneck-radio.tk, 1 -rednegocios.cl, 1 +rednegocios.cl, 0 redneragenturen.org, 1 rednex.tk, 1 rednsx.org, 0 @@ -122352,6 +122285,7 @@ redrescue.com, 1 redrivernm.gov, 1 redrockcontracting.com.au, 1 redrockrentalsllc.com, 1 +redroseart.com, 1 reds-dev.ga, 1 redseafire.cloud, 1 redsealine-invest.ru, 1 @@ -122360,6 +122294,7 @@ redshank-largeformat.co.uk, 1 redshell.pw, 1 redshoeswalking.net, 1 redsiege.com, 1 +redsift.cloud, 1 redsift.com, 1 redsift.io, 1 redsis.com, 1 @@ -122386,7 +122321,6 @@ redtsar2000papers.tk, 1 redtube.com, 1 redtubeplatinum.com, 1 redtubs.tk, 1 -redtune.jp, 1 reducealcoholism.com, 1 reducer.co.uk, 1 reduceritop.ro, 1 @@ -122396,7 +122330,6 @@ redulla.com, 1 redunion.tk, 1 redux.show, 1 redvau.lt, 1 -redvent-decor.ru, 1 redvent.ru, 1 redware.co.uk, 1 redwater.co.uk, 1 @@ -122429,7 +122362,6 @@ reelnews.ga, 1 reelranking.com, 1 reels.in.th, 1 reemployks.gov, 1 -reenergo.ru, 1 reenio.cz, 1 reentry.gov, 1 reerguer.pt, 1 @@ -122442,6 +122374,7 @@ reeson.info, 1 reeson.org, 0 reesrichards.co.uk, 1 reevaappliances.co.uk, 1 +reeview.me, 1 reevoo.com, 1 reezocar.com, 1 refa.nl, 1 @@ -122537,6 +122470,7 @@ refreshliving.us, 1 refreshmentshop.co.uk, 1 refriamericas.com, 1 refrigeracion2hermanos.com.mx, 1 +refstack.io, 1 refuelcollective.com, 0 refuelcreative.com.au, 0 refuelmcconnell.marketing, 1 @@ -122558,7 +122492,6 @@ regalador.com, 1 regalautosport.com, 1 regalcapitalwi.com, 1 regalosuhlala.com, 1 -regalosymuestrasgratis.com, 1 regalpaintingfdl.com, 1 regalradio.net, 1 regaltheatre.com.au, 1 @@ -122605,6 +122538,7 @@ reginalenz.com, 1 reginfo.gov, 1 regio-guide.de, 1 regio-salland.nl, 1 +regiobank.nl, 1 regiobeveland.nl, 1 regiofomento.com.br, 1 regioinfo.nl, 1 @@ -122620,6 +122554,7 @@ regionalgrowth.com, 1 regionalmissouri.com, 1 regionethost.tk, 1 regionethungaria.hu, 1 +regiongl.com, 1 regionmedia.cf, 1 regionstea.net, 1 regioplanverbindt.nl, 1 @@ -122669,6 +122604,7 @@ reguladordevoltagem.com.br, 1 regularlabs.com, 1 regulations.gov, 1 regulative.gq, 1 +regulatorysciencedata.eu, 1 rehab.cf, 1 rehabilitologist.ru, 1 rehabthailand.com, 1 @@ -122676,7 +122612,7 @@ rehabthailand.org, 1 rehansaeed.com, 1 rehasport-informationen.de, 1 rehasportwelt.de, 1 -rehazonaliftservice.nl, 1 +rehazonaliftservice.nl, 0 reher.pro, 1 rehive.com, 1 rehoboth-hollandscheveld.nl, 1 @@ -122710,7 +122646,6 @@ reikiblog.cf, 1 reikicrystal.com, 1 reikimaster.tk, 1 reilly.io, 1 -reimagine-education.com, 1 reimaginebelonging.org, 1 reimann.me, 1 reimers.de, 1 @@ -122743,6 +122678,7 @@ reinventersontravail.com, 1 reirei.cc, 1 reisdemuthwiltgen.com, 1 reisebuero-baader.de, 1 +reiseguiden.no, 1 reisekostenabrechnung.online, 1 reisen.ga, 1 reisenbauer.ee, 0 @@ -122776,6 +122712,7 @@ rejido.tk, 1 rejushiiplotter.ru, 1 rejuveaesthetic.com, 1 rejuvetclinicpromotion.com, 1 +rekayasainformatika.com, 1 rekenkameroost.nl, 1 rekka-j.com, 1 rekklab.com, 1 @@ -122850,7 +122787,6 @@ reliablemojo.com, 1 reliableparts.com, 1 reliablepi.com, 1 reliableremovals-blackpool.co.uk, 1 -reliablewire.com, 1 reliahost.nl, 1 reliancecard.com, 1 reliant.com, 0 @@ -122889,14 +122825,14 @@ remake-projects.tk, 1 remambo.jp, 1 remargem.com, 1 remargen.com, 1 +remarkmart.com, 1 remateszarate.cl, 0 remax-direct.co.il, 1 remax.at, 1 remaxelite.co.il, 1 remaxtop.co.il, 1 remayah.com, 1 -remdrivet.se, 1 -remeb.de, 1 +rembish.org, 1 remedi.tokyo, 1 remediohalkiparaladiabetes.org, 1 remedionaturales.com, 1 @@ -122966,7 +122902,6 @@ remoteassistants.io, 1 remotedesktop.corp.google.com, 1 remotedxb.com, 1 remoteoffice.ga, 1 -remotepeople.com, 1 remoteroom.jp, 1 remoteshack.cf, 1 remoteshack.ml, 1 @@ -122977,7 +122912,6 @@ removalcellulite.com, 1 removalsandstoragex.com, 1 removalsmanandvan.org, 1 removedrepo.com, 1 -remowin.com, 1 remploy.co.uk, 1 remptmotors.com, 0 remsenny.gov, 1 @@ -123019,10 +122953,8 @@ renderloop.com, 1 renderstack.io, 1 renderworld.tk, 1 renderzone.tk, 1 -rendevio.com, 1 rendez-vous.gq, 1 rendezvous-cafe.co.uk, 1 -rendezvousstyle.com, 1 rendre-service.ch, 0 rendutowers.org.au, 1 rene-cafe.nl, 1 @@ -123030,12 +122962,12 @@ rene-eizenhoefer.de, 1 rene-schwarz.com, 0 rene-stolp.de, 1 renearends.nl, 1 +renecoignard.com, 1 renecoignard.de, 1 renecoignard.fr, 1 renecoignard.net, 1 renecoignard.org, 1 renecoignard.ru, 1 -renegadeexploration.com, 1 renehsz.com, 1 renekoot.nl, 0 renem.net, 0 @@ -123209,10 +123141,11 @@ repl.ga, 1 replacebase.co.uk, 1 replacebase.com, 1 replacebase.eu, 1 -replacedbyrobot.info, 1 +replacedbyrobot.info, 0 replacementrate.ga, 1 replay.ga, 1 replaynexus.com, 1 +replenishradar.com, 1 replicacoin.ga, 1 replicagold.ml, 1 replici.net, 1 @@ -123238,7 +123171,7 @@ reportexagencies.net, 1 reportexhq.ca, 1 reportexhq.com, 1 reporting.gov, 1 -reportkey.ru, 1 +reportingonthetimes.com, 1 reportoid.tk, 1 reportoverdose.com, 1 reportquest.com, 1 @@ -123289,6 +123222,7 @@ requestio.pp.ua, 1 requestr.co.uk, 1 requeteguapas.com, 1 requeue.ga, 1 +requex.me, 1 requin.tk, 1 requirements.ga, 1 reregu.cf, 1 @@ -123300,14 +123234,15 @@ reroboto.org, 1 reroboto.social, 1 reroll.tv, 1 resale.condos, 1 -resalerental.com, 1 resanebartar.tk, 1 resbi.tk, 1 resc.la, 1 rescatec.com, 1 resch-verlag.com, 1 rescms-secure.com, 1 +rescuemycar.com, 1 rescuenode.com, 1 +rescuepcrepairs.com, 1 rescuer.gq, 1 rescuer.org.ua, 1 rescuer.tk, 1 @@ -123366,6 +123301,7 @@ resigno.tk, 1 resilience.sh, 1 resiliencebox.com, 1 resilientlouisianacommission.gov, 1 +resilienzatropical.it, 1 resimevi.tk, 1 resinbondedaggregates.com, 1 resindrivewayexperts.co.uk, 1 @@ -123376,7 +123312,6 @@ resistancebooks.com, 1 resistsa.blue, 1 resize2fs.de, 0 resju21.ch, 0 -resk.fr, 1 resmigazete.gov.tr, 1 resmim.net, 1 resoauth.support, 1 @@ -123458,6 +123393,7 @@ restaurant-neuemuehle.de, 1 restaurant-oregano.de, 1 restaurant-rosengarten.at, 1 restaurant-spartacus.tk, 1 +restaurantblossom.dk, 1 restaurantcleaningchicago.com, 1 restaurantdetgulepakhus.tk, 1 restaurantedonono.com.br, 1 @@ -123490,13 +123426,12 @@ restoran.cf, 1 restoranlibertas.com, 1 restorationcommercialroofing.com, 1 restorationphotos.tk, 1 -restorebodybalance.net, 0 restorehair.com, 1 -restoremykitchen.com, 1 restorerivers.eu, 1 restorers.org.uk, 1 restorethegulf.gov, 1 restoringhopeberks.org, 1 +restormel-handyman.co.uk, 1 restoruns.com, 1 restrealitaet.de, 1 restream.fi, 1 @@ -123548,6 +123483,7 @@ retecentre.com, 1 reteimprese.it, 1 reteteaz.net, 1 retetop95.it, 0 +retfe.com, 1 reth.ch, 1 rethinkingchurch.net, 1 rethinkproductivity.co.uk, 1 @@ -123643,6 +123579,7 @@ revalidatiekennisnet.nl, 1 revaloriza.cf, 1 revampdigital.co.nz, 0 revandtorque.com, 1 +revanops.io, 1 revapost.fr, 1 revayd.net, 1 revconnect.tk, 1 @@ -123651,6 +123588,7 @@ revda.su, 1 reveal-sound.com, 1 revealcellcamtracker.com, 1 revealdata.com, 1 +revealmarket.xyz, 1 revechat.com, 1 revellecoaching.com, 0 revellio.tk, 1 @@ -123669,7 +123607,6 @@ reversec.com, 1 reversecanada.com, 1 reversedns.tk, 1 reverseengineer.net, 1 -reverseloansolutions.com, 1 reversemortgageguides.com, 1 reversemortgageguides.org, 1 reversesouthafrica.com, 1 @@ -123684,6 +123621,7 @@ reviewengin.com, 1 reviewgeek.com, 1 reviewheaven.ml, 1 reviewku.id, 1 +reviewmi.co.uk, 1 reviews.anime.my, 0 reviewsonline.ml, 1 revijahak.hr, 1 @@ -123830,6 +123768,8 @@ rfds.com.au, 1 rfec.com, 1 rfeif.org, 1 rfgwealthadvisory.com, 1 +rfinder.com, 1 +rfinderradios.com, 1 rfn.cz, 1 rfnews.tk, 1 rfodistribution.co.za, 1 @@ -123976,6 +123916,7 @@ ricardopq.com, 1 ricardoquaresma.tk, 1 ricardotaakehb.tk, 1 ricardotorres.com.pt, 1 +ricassiocosta.me, 1 ricaud.me, 1 riccardogiannetto.com, 1 ricciardoantoninotindaro.art, 1 @@ -124029,6 +123970,7 @@ richbutler.co.uk, 1 richecommecresus.com, 1 richel-group.fr, 1 richerenches.fr, 1 +richeyweb.com, 1 richfieldadamscowi.gov, 1 richfieldsean.org, 1 richie.cloud, 0 @@ -124115,6 +124057,7 @@ ridetour.ru, 1 ridewithloop-url.com, 1 ridgecrestca.gov, 1 ridgefieldct.gov, 1 +ridgelineit.com.au, 1 ridgelysradar.com, 1 ridgespringsc.gov, 1 ridgewaterlodge.com, 1 @@ -124122,6 +124065,7 @@ ridgewaywi.gov, 1 ridgidgear.eu, 1 ridho.id, 1 ridingoklahoma.com, 1 +ridingthemagic.uk, 1 ridingthetigerpro.com, 1 rido.ml, 1 ridsdale.ca, 1 @@ -124129,8 +124073,7 @@ ridw.org, 1 riebe.eu, 1 rieboldt-service.de, 1 riechsteiner.tech, 0 -riecht-besser.de, 1 -riederle.com, 1 +riederle.com, 0 riedl-shk.de, 1 riekko-orkesteri.fi, 1 riemzac.com, 1 @@ -124182,7 +124125,6 @@ rightthingrecruit.com, 1 righttolife.org.uk, 1 righttrack.io, 1 rigidbuilding.com, 1 -rigidlandscapes.com.au, 1 rigly.uk, 1 rigonidiasiago-ar.com, 1 rigonidiasiago-usa.com, 1 @@ -124228,7 +124170,6 @@ rileyskains.com, 0 rileystar.com, 1 rilish.cf, 1 rillet.com, 0 -rilretg.com, 1 rim-kardzhali.bg, 1 rim-kardzhali.org, 1 riman.tk, 1 @@ -124237,6 +124178,7 @@ rime.red, 1 rimessaggio.it, 1 rimetsu.com, 1 rimin.moe, 1 +riminghuts.com, 1 riministreet.com, 0 riminitoday.it, 1 rimo.site, 1 @@ -124420,7 +124362,6 @@ ritual-gratek.ru, 1 ritual.com, 1 ritual.ml, 0 rituelamour.com, 1 -ritunewasser.ch, 1 ritus.md, 1 ritzlux.com.tw, 1 riusma.com, 1 @@ -124476,7 +124417,7 @@ rivistadipsichiatria.it, 1 rivmedia.co.uk, 1 rivolta.tk, 1 rivus.net, 1 -riwaya.co.uk, 0 +riwaya.co.uk, 1 riweco.ga, 1 rix.ninja, 1 rixcloud.moe, 1 @@ -124537,7 +124478,6 @@ rmbs.de, 1 rmbs.org, 1 rmc-clinic.ru, 1 rmcbs.de, 1 -rmcinsuranceservices.com, 1 rmconsulting.com, 1 rmdb.tk, 1 rmdhnreza.my.id, 1 @@ -124623,6 +124563,7 @@ roaster.ga, 1 roastrepublic.de, 1 rob006.net, 1 robandjanine.com, 1 +robarbeauty.com, 1 robaxin750mg.ml, 1 robben.io, 1 robbertt.com, 0 @@ -124765,6 +124706,7 @@ roc.gov.au, 0 rocabot.ddns.net, 1 rocahub.org, 1 roccasemijoias.com.br, 1 +roccoseuropeangarage.com, 1 rochcloud.cf, 1 rochediagram.com, 1 rochesterglobal.com, 1 @@ -124952,7 +124894,6 @@ rogagym.com, 1 rogaineforwomen.ga, 1 rogalcraigtaylor.com, 1 rogard.fr, 0 -rogarden.ro, 1 roge.pw, 1 rogeiro.net, 1 rogell.tk, 1 @@ -124976,7 +124917,6 @@ rogplus.nl, 1 rogue-e.xyz, 1 rogue.pw, 1 roguecoder.net, 1 -roguefortgame.com, 0 roguelicious.com, 1 roguenation.space, 1 roguenetworks.me, 1 @@ -124985,7 +124925,6 @@ roguerocket.com, 1 roguetech.ca, 1 roguevalleywinecountry.com, 1 rohal.tk, 1 -rohanbassett.com, 0 rohansingh.cf, 1 rohde.de, 0 rohedaten.de, 1 @@ -125052,6 +124991,7 @@ rollerderbywines.ga, 1 rollerwarehouse.com, 1 rolleyes.org, 1 rollforadventure.com.au, 1 +rolling.bike, 1 rollingbarge.com, 1 rollingcouchapp.com, 1 rollinghillsestates.gov, 1 @@ -125070,7 +125010,6 @@ rolotrans.ml, 1 rolstoelappartementen.tk, 1 roltech.ru, 1 rolzzandik.cf, 1 -roma-lindenhof.de, 0 roma-servizi.it, 1 romab.com, 1 romadiluna.band, 0 @@ -125089,6 +125028,7 @@ romancy.tk, 1 romandaphotography.com, 1 romanglos.de, 1 romania-film.ml, 1 +romania24.ro, 1 romaniacompany.com, 1 romanian.cam, 1 romanistaweb.it, 1 @@ -125124,7 +125064,6 @@ romatours.pt, 1 romatrip.it, 1 rombarte.pl, 1 romcom.info, 1 -romdrop.com, 1 rome-airport.net, 1 rome.tools, 1 romea.cz, 1 @@ -125145,7 +125084,6 @@ rommelwood.de, 1 romo-holidays.de, 1 romo-holidays.dk, 1 romspedia.com, 1 -romtex.co.uk, 1 romun.net, 1 romy.tw, 1 ronaldcantor.com, 1 @@ -125175,6 +125113,7 @@ ronniegane.kiwi, 1 ronomon.com, 1 ronsamazingstories.com, 1 ronthemonkey.com, 1 +ronza.us, 1 ronzertnert.xyz, 1 roobet.com, 1 roodarvasi.ir, 1 @@ -125255,7 +125194,6 @@ rootedtolast.org, 1 rootedwellnessot.com, 1 rooter.group, 1 rootergroupinc.ca, 1 -rootie.de, 1 rootingpalace.tk, 1 rootlair.com, 1 rootless.ga, 1 @@ -125272,6 +125210,7 @@ roots-example-project.com, 0 roots.io, 1 rootsandrain.com, 1 rootsbar.fr, 0 +rootsindia.com, 1 rootsinmadrid.tk, 1 rootsland.de, 1 rootsland.net, 1 @@ -125287,6 +125226,7 @@ roozbeh.tk, 1 rop.cx, 1 ropd.info, 1 ropesmart.com, 1 +ropo.uk, 1 roquebrunesurargens-tourisme.fr, 1 roques.tk, 1 rorelseprojektet.se, 1 @@ -125297,7 +125237,6 @@ rosabellas.co.uk, 1 rosabrasiv.ga, 1 rosacosmos.tn, 1 rosaflorbijoux.com.br, 1 -rosakkreditatsiya-forum.ru, 1 rosalinda.cl, 1 rosalindturner.co.uk, 1 rosalopezcortes.tk, 1 @@ -125339,7 +125278,6 @@ roses-eternelles.fr, 1 rosesanderslaw.com, 1 roset-moebel.de, 1 rosetiger.life, 1 -rosettapeters.com, 0 rosetteromance.tk, 1 rosetwig.ca, 1 rosevalleyfolk.com, 1 @@ -125350,6 +125288,7 @@ rosewebdesignstudio.co.uk, 1 rosewebdesignstudio.uk, 1 rosfan.by, 1 rosgenea.ru, 1 +roshanrsivakumar.com, 0 roshiya.co.in, 1 roshmed.com, 1 roshtech.co.ke, 1 @@ -125492,7 +125431,6 @@ routedlogic.net, 1 routemates.tk, 1 router24.info, 1 routerclub.ru, 1 -routeto.com, 1 routevanverzoening.nl, 1 rouwcentrumterheide.be, 1 rouxb.in, 1 @@ -125503,7 +125441,6 @@ roveridx.com, 1 roverkob.dk, 1 rovetf.tk, 1 rovezzano.tk, 1 -rovian.ua, 1 rovid.link, 1 rovin.tk, 1 rovino.es, 1 @@ -125590,7 +125527,6 @@ royalfoundation.com, 1 royalgardens.no, 1 royalgdeluxe.al, 1 royalgrandpalace.th, 1 -royalgrandshades.com, 1 royalgroup.msk.ru, 1 royalhosting.ch, 1 royalkidspleven.bg, 1 @@ -125603,6 +125539,7 @@ royaloakcornwall.com, 1 royaloz.ma, 1 royalpainters.co, 1 royalpalmbeachfl.gov, 1 +royalpalmsdubai.com, 1 royalpanda.com, 1 royalrace.tk, 1 royalreporting.ca, 1 @@ -125623,7 +125560,6 @@ royauction.com, 1 royaumesoublies.com, 1 roycampbell.tk, 1 royceandsteph.com, 1 -roycestars.com, 1 roycewilliams.net, 1 royger.tk, 1 royoy.com, 1 @@ -125645,6 +125581,11 @@ rozpieraki-hydrauliczne.pl, 1 rozprodat.cz, 1 rozsvitsvet.cz, 1 roztilefona.net, 1 +rozwod.bydgoszcz.pl, 1 +rozwod.gdansk.pl, 1 +rozwod.gdynia.pl, 1 +rozwod.torun.pl, 1 +rozwod.wloclawek.pl, 1 rp-megapolis.tk, 1 rp-murk.tk, 1 rpa.gov, 1 @@ -125708,6 +125649,8 @@ rrwolfe.com, 1 rs-cloud.ddns.net, 1 rs-devdemo.host, 1 rs-maschinenverleih.de, 1 +rs-nextcloud.de, 1 +rs-nonprod.de, 1 rs-sh.ru, 1 rs.wiki, 1 rsa-erp.com, 1 @@ -125746,11 +125689,9 @@ rsm-intern.de, 1 rsml.co.uk, 1 rsng.com, 1 rspevents.ro, 1 -rsquare.nl, 1 rsridentassist.com, 1 rsrnd.org, 1 rsruralrevendas.com.br, 1 -rsrv.fr, 1 rss-reader.net, 1 rss-reader.org, 1 rss.org.uk, 1 @@ -125885,6 +125826,7 @@ rubenplazagarcia.es, 1 rubens.cloud, 0 rubensalgado.com, 1 rubenschulz.nl, 1 +rubenshotel.com, 1 rubenshuis.be, 1 rubenslikkarchive.com, 1 rubensteinphotography.com, 1 @@ -125987,7 +125929,6 @@ rugk.dedyn.io, 1 rugspa.ie, 1 rugugu.jp, 1 ruha.co.in, 1 -ruhdental.com, 1 ruhi.pk, 1 ruhigehand.de, 1 ruhimustafa.tk, 1 @@ -125998,6 +125939,7 @@ ruhrmobil-e.de, 1 ruhrpott-media.com, 1 ruhrpott.rodeo, 1 rui-vet.com, 1 +ruiandrade.pt, 1 ruihuabao.com.cn, 1 ruileal.pt, 1 ruileitao.pt, 1 @@ -126010,7 +125952,6 @@ ruinsofchaos.com, 0 ruiruigeblog.com, 1 ruisai.org, 1 ruitersportbak.nl, 1 -ruixin.org, 1 ruja-pass.ddnss.de, 1 rujbin.ddns.net, 1 rukhaiyar.com, 1 @@ -126047,9 +125988,9 @@ rummey.co.uk, 1 rumoclock.dk, 1 rumreader.com, 1 rumtaste.com, 1 -rumusbilangan.com, 1 run-it-direct.co.uk, 1 run.cz, 1 +runa.io, 1 runagain.ch, 0 runalyze.com, 1 runame.ml, 1 @@ -126106,6 +126047,7 @@ runpartner.com, 1 runrun.es, 1 runrun.sk, 0 runschrauger.com, 1 +runsli.com, 1 runteller.com, 1 runvs.io, 1 ruobiyi.com, 0 @@ -126236,6 +126178,7 @@ rustorch.com, 1 rustup.rs, 1 rustwood.fun, 1 rusty44.com, 1 +rustypp.com, 1 rustyrambles.com, 0 rustytub.com, 1 rusunion.org, 1 @@ -126332,8 +126275,10 @@ rxbusiness.com, 1 rxcarbon.com, 1 rxcom.net, 1 rxhill.com, 1 +rxkids.org, 1 rxperiusdata.com, 1 rxphoto.com, 1 +rxsecurestores.com, 1 rxxx.ml, 1 rya.nc, 1 ryabinushka.tk, 1 @@ -126401,6 +126346,7 @@ ryoch.in, 1 ryois.me, 1 ryois.net, 1 ryona.agency, 1 +ryongyon.com, 1 rys.pw, 1 rythm.es, 1 ryu-ga-gotoku-audition.com, 1 @@ -126473,8 +126419,7 @@ s10y.eu, 1 s1128.com, 1 s1l3nt.org, 1 s1mplescripts.de, 1 -s1ris.org, 1 -s2.coach, 1 +s2.coach, 0 s20121946.ml, 1 s26s.com, 1 s2i.ch, 0 @@ -126525,7 +126470,6 @@ s95.de, 1 s9728.co, 1 s9h.cn, 0 sa-blog.net, 1 -sa-casino.live, 0 sa-mp.me, 1 sa-mp.ro, 1 sa-stu.com, 1 @@ -126589,6 +126533,7 @@ sable.gq, 1 saborcaribe.tk, 1 saboresdamontanha.com.br, 1 sabranie.com, 1 +sabriburhanoglu.com, 1 sabrina-auer.tk, 1 sabrinajoias.com, 1 sabrinajoias.com.br, 1 @@ -126629,7 +126574,6 @@ sacibo.ga, 1 sackmesser.ch, 1 saco.tech, 1 sacodealegria.com, 1 -sacolaotriangulo.com.br, 1 sacprincesse.com, 1 sacralis.com, 1 sacralrp.com, 1 @@ -126676,6 +126620,7 @@ sadsu.com, 0 sadubykovunu.com.ua, 1 sadurscy.pl, 1 sadus.tk, 1 +saduvia.com, 1 saechsischer-christstollen.shop, 0 saeder-krupp.de, 1 saedgn.com.cn, 1 @@ -126751,8 +126696,6 @@ safensoundstoragegroton.com, 1 safeo.fr, 1 safeocs.gov, 1 safepassvpn.com, 0 -safeplay.co, 1 -safeplayground.net, 1 safer-software.tk, 1 safera.com, 1 safercar.gov, 1 @@ -126775,6 +126718,7 @@ safespaces.azurewebsites.net, 1 safestayok.gov, 1 safestreets.cf, 1 safetables.ga, 1 +safetgroup.ie, 1 safethishome.com, 1 safetica.lt, 1 safetoopen.com, 1 @@ -126853,7 +126797,6 @@ sagomedia.tk, 1 sagradamadre.hu, 1 sagradobyme.cl, 1 sagsaga.org, 1 -saguaro.care, 1 saguarocc.com, 1 sahabatnesia.com, 1 sahabatsawit.com, 1 @@ -126875,6 +126818,7 @@ sahibinden.com, 1 sahih.nl, 1 sahilbahl.com, 1 sahilten.com, 1 +sahinlegalconsultancy.co.uk, 1 sahinozgenhukuk.com, 1 sahipleniyorum.com, 1 sahkotyot.eu, 1 @@ -126939,7 +126883,6 @@ saintalthegreat.org, 1 saintanthonylakin.org, 1 saintaugustineschool.tk, 1 saintbernardpetcare.com, 1 -saintbrunofootball.fr, 1 saintefoy-tarentaise.fr, 1 saintereso.tk, 1 sainteugenechurch.net, 1 @@ -126950,6 +126893,7 @@ sainth.de, 0 sainthedwig-saintmary.org, 1 sainthelena-centersquare.net, 1 sainthelenaparish.net, 1 +sainthelenas.org, 1 saintisidorecyo.com, 1 saintjamestheapostle.org, 1 saintjohn-bocaraton.com, 1 @@ -126986,13 +126930,9 @@ sairai.bid, 1 sairlerimiz.tk, 1 sairus.fr, 1 saisecure.net, 1 -saiserve.xyz, 1 saiserver.online, 1 saisons-fruits-legumes.fr, 1 saisyuusyou-ikebukuro.com, 1 -saisyuusyou-omiya.com, 1 -saisyuusyou-takasaki.com, 1 -saisyuusyou-utsunomiya.com, 1 sait.health, 1 saitapovan.com, 1 saitas.net, 1 @@ -127045,6 +126985,7 @@ sakurapink.top, 0 sakuraspanj.com, 1 saladgo.id, 1 saladin.vn, 1 +salahnos.com.ar, 1 salalfoundation.ca, 0 salamanders.tk, 1 salamence.tk, 1 @@ -127209,7 +127150,7 @@ saltcave.gq, 1 saltedfish.network, 1 saltedfishes.com, 1 saltedge.com, 1 -saltedpasta.com, 0 +saltedpasta.com, 1 saltercane.com, 0 saltlakecounty.gov, 1 saltlakehealth.gov, 1 @@ -127233,6 +127174,7 @@ saludakeuring.nl, 1 saludcarbajal.com, 1 saludnutrivida.com, 1 saluels.servemp3.com, 1 +saluki.cloud, 1 salukinet.tk, 1 salunganogroup.com, 1 salus-cm.care, 1 @@ -127260,6 +127202,7 @@ salzburgsfinest.tk, 1 salzerperu.com, 1 salzmann.solutions, 1 sam-football.fr, 1 +sam-ni.com, 1 sam-wells.be, 1 sam.gov, 1 sam66.cc, 1 @@ -127282,6 +127225,7 @@ samaritainsmeyrin.ch, 0 samarthtyagi.tk, 1 samatva-yogalaya.com, 1 samba.org, 1 +sambac.net, 1 sambeso.net, 1 sambi.se, 1 sambot22.tk, 1 @@ -127432,6 +127376,7 @@ sanalaile.tk, 1 sanalikaforum.tk, 1 sanandreasstories.com, 1 sanantoniolocksmithtx.com, 1 +sanaorganizasyon.com, 1 sanapaino.fi, 1 sanasport.at, 1 sanasport.bg, 1 @@ -127479,7 +127424,6 @@ sanderdorigo.nl, 1 sanderpoppe.com, 1 sanderscreditrepair.com, 1 sandersgaleandrussell.com, 1 -sandersmontalto.com, 1 sandersonfarms.com, 1 sanderspies.com, 1 sandervanderstap.nl, 1 @@ -127552,8 +127496,6 @@ sandwoman.tk, 1 sandybigboobs.com, 1 sandybigboobs.net, 1 sandycreekrvpark.com, 1 -sandykeymedical.com, 1 -sandyspringadventurepark.org, 1 sandyvazquez.com, 1 sanemind.de, 1 sanetschka.tk, 1 @@ -127567,13 +127509,11 @@ sangen.ml, 1 sangheon.com, 1 sangina.eu, 1 sangiovannilipioni.tk, 1 -sangitamusic.de, 1 sanglierhurlant.fr, 1 sangoandmiroku.tk, 1 sangowen.xyz, 1 sangreytinta.tk, 1 sanguanini.farm, 1 -sanguinebio.com, 1 sangwanbeach.tk, 1 sangyo-rock.com, 1 sanhotel.ml, 1 @@ -127730,7 +127670,6 @@ santmark.org, 1 santo.fi, 1 santodelgiorno.it, 1 santong.tk, 1 -santons-fouque.fr, 1 santorinidress.com, 1 santoscarmelitas.tk, 1 santosdecordoba.tk, 1 @@ -127738,7 +127677,7 @@ santoshpandit.com, 1 santoskhoury.com, 1 santral.org.tr, 1 santsadurni.cat, 1 -santswebdesign.com, 1 +santswebdesign.com, 0 santugon.tk, 1 santv.cc, 0 sanufreshve.com, 1 @@ -127747,7 +127686,6 @@ sanvicenteferrer.net, 1 sanweb.info, 1 sanyangwood.shop, 1 saochang.com, 1 -saojudastadeu.edu.br, 1 saolucasimagem.com.br, 1 saoneth.pl, 1 saopaulofc.com.br, 1 @@ -127783,7 +127721,7 @@ sapoghki.tk, 1 saponaria.com, 1 sapotech.de, 1 sapphi.st, 1 -sapphic.nl, 1 +sapphic.nl, 0 sapphic.site, 1 sapphirebet.com, 1 sapphireblinds.com.au, 0 @@ -127816,7 +127754,7 @@ sarah-harding.tk, 1 sarah-huenten.de, 1 sarah-jane.nl, 1 sarahbaker.co.nz, 1 -sarahbowling.org, 1 +sarahbowling.org, 0 sarahgriswold.com, 1 sarahjaneethan.co.uk, 1 sarahjaneredmond.com, 1 @@ -127857,6 +127795,7 @@ saratovlive.tk, 1 saratovnews.ml, 1 saratovtime.tk, 1 sarayeketabesoti.ir, 1 +sarayruiz.es, 1 sarbarhetsskanning.se, 1 sarbash.ee, 1 sarbel.tk, 1 @@ -127937,6 +127876,7 @@ sascorp.co.uk, 1 sascorp.es, 1 sasctg.com, 1 sash.pw, 1 +sasha-escort-frankfurt.com, 1 sashabognibov.tk, 1 sashaclothing.tk, 1 sashakrasnoyarsk.tk, 1 @@ -127988,6 +127928,7 @@ satheeshsbennet.tk, 1 satimagingcorp.com, 1 satindolls.tk, 1 satinn.pl, 1 +satinwood.com.au, 1 satirelabs.com, 1 satiscation.com, 1 satisfactory-calculator.com, 1 @@ -128188,7 +128129,6 @@ saxotrader.com, 1 saxynele.tk, 1 sayany.tk, 1 sayax.com.tr, 1 -saybecraft.ru, 1 saybrus.partners, 1 saybyebugs.com, 1 saydj.tk, 1 @@ -128216,7 +128156,7 @@ sb.ax, 0 sb.sb, 1 sb0.io, 1 sba.com.au, 1 -sba4u.com, 1 +sba4u.com, 0 sba7a.loans, 1 sbabeshin.tk, 1 sbacorporation.it, 1 @@ -128230,7 +128170,6 @@ sbcbatangas.edu.ph, 1 sbcountyarc.gov, 1 sbcountyatc.gov, 1 sbeech.uk, 0 -sbequineevac.org, 1 sber-solutions.kz, 1 sber-solutions.ru, 1 sber.games, 1 @@ -128352,7 +128291,6 @@ scanningpens.co.uk, 1 scanningpens.com, 1 scanpay.dk, 1 scanprice.us, 1 -scansec.com.br, 1 scansnus.com, 1 scantower.io, 1 scanutracker.com, 1 @@ -128421,10 +128359,11 @@ scenic.gallery, 1 scenicbyways.info, 1 scentlab.md, 1 scentlab.space, 1 +scento.com, 1 scepticism.com, 1 scers.gov, 1 scesc.uk, 1 -scfssp.it, 1 +scfssp.it, 0 scgsustainability.com, 1 sch44r0n.de, 1 schaafenstrasse.koeln, 1 @@ -128487,7 +128426,6 @@ schellenberg.ac, 1 schenectadycountyny.gov, 1 schenkel.tk, 1 schenkes.de, 0 -schepman.org, 1 scherfke.de, 1 schermen-en.nl, 1 schertztx.gov, 1 @@ -128552,6 +128490,7 @@ schloss-wackerbarth.de, 1 schlossanger.de, 1 schlossberg-hotel-wernigerode.de, 1 schlossfuchs.de, 1 +schlosshotel-hainich.de, 1 schlosslinderhof.de, 1 schlotterer.com, 1 schlouk-map.com, 1 @@ -128604,6 +128543,7 @@ schnyder-werbung.ch, 0 schody-rozycki.pl, 1 schoenheitsop.com, 1 schoenstatt-fathers.link, 1 +schoenstatt-fathers.us, 1 schoenstatt.link, 1 schoental.de, 1 schoepski.de, 1 @@ -128783,7 +128723,7 @@ schweizers-restaurant.de, 1 schwerkraftlabor.de, 1 schwertkriege.de, 1 schwertshop.de, 1 -schwesterseiten.com, 0 +schwesterseiten.com, 1 schwienbacher-karl.it, 1 schwifty.cloud, 1 schwiha.de, 1 @@ -128796,7 +128736,6 @@ sci-dril.net, 1 sci-internet.tk, 1 sci-rjb.fr, 1 sci.com, 1 -sciagebeton.net, 1 sciartel.ru, 1 scias.com, 1 scib.tk, 1 @@ -128876,6 +128815,8 @@ scms.com.my, 1 scn9a.com, 1 scnet.co.za, 1 scnow.com, 1 +scnsoft.com, 1 +scnsoft.de, 1 scodeno.vn, 1 scoebg.org, 1 scoffable.com, 1 @@ -128921,7 +128862,7 @@ scorobudem.ru, 1 scorpia.co.uk, 1 scorpiogroup.net, 1 scorpiomarine.co.in, 1 -scorpioncomputers.nl, 1 +scorpioncomputers.nl, 0 scorpiongames.tk, 1 scorpions-realm.tk, 1 scorpions.tk, 1 @@ -129052,6 +128993,7 @@ scripo-bay.com, 1 scrippsnews.com, 1 script-sign.com, 1 script.google.com, 1 +scriptablesolutions.com, 1 scriptamanent.org, 1 scripter.co, 1 scriptline.ga, 1 @@ -129133,10 +129075,10 @@ sdayman.com, 1 sdb.aero, 1 sdbc.com, 1 sdbehavioralhealth.gov, 1 +sdbidentity.nl, 1 sdc-uae.ae, 1 sdcardrecovery.de, 1 sdcargo.net, 1 -sdcitytimes.com, 1 sdeb.org, 1 sdebitati.it, 1 sdeu.fr, 1 @@ -129179,7 +129121,6 @@ sdslandscaping.uk, 1 sdsmanagement.me, 0 sdsmt.engineering, 1 sdstack.com, 1 -sdsucollegian.com, 1 sduconnect.nl, 0 sdut.gq, 1 sdvv.nl, 1 @@ -129297,7 +129238,6 @@ seasonsboutique.com.au, 1 seasonsof.berlin, 1 seaspecsdals.com, 1 seat61.com, 1 -seatbeltpledge.com, 1 seating.dynv6.net, 1 seatours.co.uk, 1 seatrandiscovery.com, 1 @@ -129404,6 +129344,7 @@ secnet.ga, 1 secnews.gr, 1 secnode.xyz, 1 secolve.com, 1 +secom.one, 1 secomea.com, 1 second-life-partner-ichien.com, 1 secondchancejobsforfelons.com, 1 @@ -129427,6 +129368,7 @@ secret-garden.it, 1 secret-queen.ga, 1 secret-queen.ml, 1 secret.garden, 1 +secret4.eu, 1 secretagentclub.tk, 1 secretar.is, 1 secretary-schools.com, 1 @@ -129444,6 +129386,7 @@ secretmuseum.net, 1 secretnerdsmartygames.com, 1 secretofanah.com, 1 secretosbolivia.tk, 1 +secretprovider.com, 1 secrets-marketing.tk, 1 secretsbynature.nl, 1 secretsdujeu.com, 1 @@ -129452,6 +129395,7 @@ secretstomartialarts.tk, 1 secretworld.ml, 1 secretzone.bg, 1 secrium.io, 1 +secrt.ca, 1 secs.london, 1 secta.cf, 1 secteam.ee, 1 @@ -129480,6 +129424,7 @@ secumailer.nl, 0 secundity.com, 1 secundity.nl, 1 secunm.org, 1 +securaa.io, 1 securai.de, 1 securapilot.com, 1 secure-automotive-cloud.com, 1 @@ -129493,7 +129438,6 @@ secure-share.com, 1 secure.advancepayroll.com.au, 1 secure.facebook.com, 0 secure.wang, 1 -secureacces.fr, 1 secureapplicationaccess.ca, 1 secureapplicationaccess.com, 1 secureauth.com, 1 @@ -129542,7 +129486,6 @@ securist.nl, 1 securite.jp, 1 securiteincendie.fr, 1 securitelandry.com, 1 -securitepubliqueaem.com, 1 securiti.ai, 1 securitum.pl, 1 security-24-7.com, 1 @@ -129563,6 +129506,7 @@ securitybrief.ca, 1 securitybrief.co.nz, 1 securitybrief.co.uk, 1 securitybrief.com.au, 1 +securitybrief.ie, 1 securitybrief.in, 1 securitybrief.news, 1 securitydelta.nl, 1 @@ -129609,6 +129553,7 @@ sedetecnicaizabal.com, 1 sedico.mx, 1 sedicomm.com, 0 sedigit.com, 1 +sedintechnologieshq.com, 1 sedirector.net, 1 sedkisghairi.com, 0 sedky.net, 1 @@ -129618,9 +129563,7 @@ sedoexperts.nl, 1 sedro-woolley.gov, 1 seduxury.com, 1 seduzironline.com.br, 1 -see-me.co, 1 see-now.co, 1 -see-you.co, 1 see.you, 1 seearmenia.tk, 1 seeaway.com.br, 1 @@ -129629,6 +129572,7 @@ seecat.biz, 1 seecdn.com, 1 seecdn.net, 1 seecustom.com, 1 +seedance2.live, 1 seedandleisure.co.uk, 1 seedbox.fr, 1 seedbox.hosting, 1 @@ -129682,7 +129626,6 @@ seewhatididhere.com, 1 seewines.com, 1 seexw.com, 1 sef.co.za, 1 -sefan.ru, 1 sefaratvisa.com, 1 sefareshpardeh.com, 0 seferleri.net, 1 @@ -129696,6 +129639,7 @@ seg-sys.com, 1 seg-tox.org, 1 seg.do, 1 sega-play.online, 1 +sega73.hu, 1 segamastersystem.tk, 1 segaretro.org, 1 segaskets.com.au, 1 @@ -129716,7 +129660,6 @@ segulink.com, 1 segurancaresidencialbh.com.br, 1 segurdatacr.com, 1 segurico.cz, 1 -seguridad-informacion.com, 1 seguridadconsumidor.gov, 1 seguridadsistem.tech, 1 seguridadsistemtienda.tech, 1 @@ -129735,7 +129678,6 @@ segurossura.com.pa, 1 segv.fi, 1 sehat-solusi-makmur.com, 1 sehati.cafe, 1 -sehatyab.com, 0 sehbasarwar.com, 1 seheyah.me, 1 sei-yu.net, 1 @@ -129752,7 +129694,6 @@ seikoman.tk, 1 seil.de, 1 seilbahntechnik.net, 1 seiler-ds.com, 1 -seilergeodrones.com, 1 seilerinst.com, 1 seilgold.de, 1 seimo.cn, 1 @@ -129788,6 +129729,7 @@ sejageek.com, 1 sejambemvindosaofuturo.com.br, 1 sejfzycia.pl, 1 sejie80.com, 1 +sejutaproperti.com, 1 sek.ai, 0 seka-ru.com, 1 sekainokokki.jp, 1 @@ -129857,6 +129799,7 @@ selfdefinition.org, 1 selfdefinition.tk, 1 selfelec.be, 1 selfemployed.ga, 1 +selfguide.com, 1 selfici.com, 1 selfici.cz, 1 selfiehome.cz, 1 @@ -129877,6 +129820,7 @@ selistina.tk, 1 selkiemckatrick.com, 1 selkirkelementary.com, 1 sell2orbit.com, 1 +sell4service.com, 1 sellajoch.com, 1 sellbit.io, 1 sellcoins.top, 1 @@ -129901,6 +129845,7 @@ sellmyshares.com.au, 1 sello.com, 1 sellocdn.com, 1 selloenseco.com, 1 +selloqr.com, 1 sellorbuy.uk, 1 sellorbuy.us, 1 sellphotos.tk, 1 @@ -129971,6 +129916,7 @@ seminovostoyota.com.br, 1 semiotical.com, 0 semiotika.tk, 1 semira.tk, 1 +semiramida-rieltor.ru, 1 semirben.de, 1 semiretire.ga, 1 semisupervised.com, 1 @@ -129981,8 +129927,8 @@ semops.gq, 1 semox.de, 1 semparar.com.br, 1 sempel.nl, 1 +semperfiyuma.com, 1 sempersalutaris.com, 1 -sempersolaris.com, 1 semplicementelight.com, 1 sempoctet.ca, 1 sempreupdate.com.br, 1 @@ -130070,6 +130016,7 @@ seniorcommunitymedia.com, 1 seniorem.eu, 1 seniorhelpers.com, 1 seniorhost.net, 1 +seniorliving-northbend.com, 1 seniorlivinginvestments.eu, 1 seniormanager.cz, 1 seniornavigator.org, 1 @@ -130083,6 +130030,7 @@ senneeeraerts.be, 1 sennik.tk, 1 senoctarsoft.tk, 1 senok.ml, 1 +senomix.com, 1 senooken.jp, 1 senor-cheapo.nl, 1 senork.de, 1 @@ -130213,11 +130161,9 @@ seohouston.com, 1 seoified.com, 1 seoinc.com, 1 seojaguar.tk, 1 -seojuice.it, 1 seokatka.tk, 1 seolabuitest.azurewebsites.net, 1 seoline.cf, 1 -seoline.ro, 1 seolinkstore.com, 1 seolister.cf, 1 seolisting.cf, 1 @@ -130226,7 +130172,6 @@ seolizer.de, 1 seolord.cf, 1 seomag.tk, 1 seomap.ir, 1 -seomarketing.bg, 1 seomaton.com, 1 seomaton.org, 1 seomaxion.com, 1 @@ -130269,14 +130214,12 @@ seospecialist.ma, 1 seosprint.gq, 1 seostrit.cf, 1 seostrit.tk, 1 -seosuccor.com, 1 seoteam.tk, 1 seotec.com.br, 1 seotesty.cz, 1 seotip.top, 1 seotologie.de, 1 seotoolset.tk, 1 -seotrainingcamp.com, 1 seoturkey.tk, 1 seotutorials32.tk, 1 seoulartcollective.tk, 1 @@ -130336,7 +130279,6 @@ seraph.tokyo, 1 serasa.com.br, 1 serasaexperian.com.br, 1 seratblog.ga, 1 -seratdl.ir, 1 serban.cv, 1 serban.ro, 1 serbanpaun.ro, 1 @@ -130494,7 +130436,7 @@ serverdozen.nl, 1 serverdragon.site, 1 serveretail.com, 1 serverhost.no, 1 -serverhuis.nl, 1 +serverhuis.nl, 0 serverhunter.com, 1 serverion.ga, 1 serverka.tk, 1 @@ -130573,7 +130515,7 @@ serviciosfncs.com, 1 servicioskoinonia.org, 1 serviciosprevisionfuneraria.com, 1 serviciotecnicoencomputacion.com.ve, 0 -servier.com, 1 +servier.com, 0 servietten-grosshandel.at, 1 servietten-grosshandel.be, 1 servietten-grosshandel.ch, 1 @@ -130657,19 +130599,22 @@ sestable.com, 1 sestry.tk, 1 set-freeporn.com, 1 setabun.or.jp, 1 -setapaklangkah.com, 1 seteampty.net, 1 setenforce.one, 1 setesat.com.br, 1 setevik.tk, 1 setgmt.com, 1 +seth.rocks, 1 sethcorker.com, 1 sethcurry.ga, 1 sethforprivacy.com, 1 sethjust.com, 1 sethlmatarassomd.com, 1 +sethm.uk, 1 +sethmb.xyz, 1 sethoedjo.com, 1 sethriedel.com, 1 +seths.tech, 1 sethvargo.com, 1 seti-germany.de, 0 setin.srl, 1 @@ -130743,6 +130688,7 @@ sewing-machines.com.ua, 1 sewing-world.ru, 1 sewingtales.com, 0 seworld.ml, 1 +sewtracker.com, 1 sex-test.com, 1 sex-vergleich.com, 1 sex5.com, 1 @@ -130753,7 +130699,6 @@ sexawynet.cam, 1 sexblag.club, 1 sexcamexpert.com, 1 sexcamsbay.com, 1 -sexdel.com, 1 sexdocka.nu, 1 sexdollg.com, 1 sexedquickies.com, 1 @@ -130915,6 +130860,8 @@ sfg-net.net, 1 sfg-net.org, 1 sfg-nordholz.de, 1 sfhp.org, 1 +sfi.org.pl, 1 +sfi.pl, 1 sfile.eu, 1 sfilm.cz, 1 sfinance.cz, 1 @@ -131003,7 +130950,6 @@ sgtt.ch, 0 sgutranscripts.org, 1 sh-heppelmann.de, 1 sh-network.de, 1 -sh0rt.in, 1 sh0rt.zone, 1 sh0u.jp, 1 sh0uld.net, 1 @@ -131041,7 +130987,6 @@ shadowknight.tk, 1 shadowlurker.com.au, 1 shadowmas.ddns.net, 1 shadowmorph.info, 1 -shadowping.com, 1 shadowranks.com, 1 shadowsing.com, 1 shadowsocks.ac, 1 @@ -131076,7 +131021,6 @@ shaftofdarkness.club, 0 shag-shag.ru, 1 shahadpharma.com, 1 shahar.cc, 0 -shaharklamka.com, 1 shaheedirfani.tk, 1 shaheednawazirfani.tk, 1 shahidafkar.tk, 1 @@ -131113,6 +131057,7 @@ shakerwebdesign.net, 1 shakespeareans.net, 1 shakespearesolutions.com.au, 0 shakesprimer.tk, 1 +shakibul.com, 1 shakingthehabitual.com, 1 shaknews.tk, 1 shakraphix.tk, 1 @@ -131151,7 +131096,6 @@ shanghaiair.com, 1 shanghaimineral.com, 0 shangobud.com, 1 shangren.lu, 1 -shangrenlu.cn, 1 shangyu.com.tw, 1 shanhay.tk, 1 shaniainternational.tk, 1 @@ -131198,7 +131142,6 @@ share2act-test.io, 1 shareabc.vip, 1 shareapollo.com, 1 sharebot.ga, 1 -shareby.cam, 0 sharedalbumsf.com, 1 sharedgoals.co, 1 sharedhealthmb.ca, 1 @@ -131264,7 +131207,6 @@ sharpapi.com, 1 sharpcranehire.com.au, 1 sharpe-practice.co.uk, 1 sharpe.systems, 1 -sharpgalapagos.jp, 1 sharpiesscrubs.tk, 1 sharpletters.net, 0 sharpmetals.com, 1 @@ -131364,6 +131306,7 @@ shehaal.com, 1 shehata.com, 1 sheilacantone.it, 1 sheilasdrivingschool.com, 1 +sheilasign.ch, 1 shek.zone, 1 shelburnepdvt.org, 1 shelbycounty-il.gov, 1 @@ -131390,8 +131333,8 @@ shellwhite.ga, 1 shellwhite.tk, 1 shelly-forum.com, 1 shelma.tk, 1 +shelt.com, 1 shelterislandtown.gov, 1 -sheltermap.de, 1 sheltieplanet.com, 1 sheltonvirtual.com, 1 shelvacu.com, 1 @@ -131468,7 +131411,6 @@ shhmale.com, 1 shia.dk, 1 shiawasedo.co.jp, 1 shibahara-shika.com, 1 -shibainu.com.br, 1 shibakery.com, 1 shibayan.jp, 1 shibbydex.com, 1 @@ -131484,18 +131426,19 @@ shielder.com, 1 shielder.it, 1 shieldnet.tk, 1 shieldnsheath.com, 1 +shields.house, 1 shieldsair.com, 1 shiellc.com, 1 shif.tk, 0 shift-record.com, 1 shift-to.co.jp, 1 +shiftbucket.com, 1 shiftcrypto.ch, 1 shiftcrypto.shop, 1 shiftcrypto.support, 1 shiftdelete.net, 1 shiftdevices.com, 1 shifters.ch, 1 -shiftgrit.com, 1 shifthappens.to, 1 shifti.ng, 1 shiftj.is, 1 @@ -131534,6 +131477,8 @@ shimmy1996.com, 1 shimo.im, 1 shinbukan-katorishintoryu.org, 1 shindocuba.tk, 1 +shine.studio, 0 +shineads.in, 1 shineiberia.tv, 1 shineindiarktutorial.ml, 1 shineleds.ga, 1 @@ -131560,7 +131505,6 @@ shinsyo.com, 1 shinta.ro, 1 shintoism.com, 1 shiny.gg, 1 -shinycleankitchen.com, 1 shinyhappydoggy.com, 0 shinyoko-saisyuusyou.com, 1 shinyokumiai.or.jp, 1 @@ -131569,11 +131513,11 @@ shinyupai.com, 1 shiomiya.com, 1 shiovawn.net, 1 ship-technology.com, 1 -shipaik.com, 1 shipamax.com, 1 shipard.com, 1 shipard.cz, 1 shipard.org, 1 +shipbee-lb.com, 1 shipbuddies.com, 1 shipengliang.com, 1 shipgoldchandler.com, 1 @@ -131593,7 +131537,6 @@ shippingyourworld.ca, 1 shippingyourworld.com, 1 shipshewana.gov, 1 shipsparrot.com, 1 -shiptest.net, 1 shiptron.com, 1 shiqi.ca, 1 shiqi.lol, 1 @@ -131734,7 +131677,6 @@ shop-ok.tk, 1 shop-on-the-internet.com, 1 shop-s.net, 1 shop-slivki.tk, 1 -shop-trapezbleche.de, 1 shop4d.com, 1 shop4im.com, 1 shop4you.de, 1 @@ -131760,7 +131702,6 @@ shopdougssupermarket.com, 1 shopdullestowncenter.com, 1 shopera.ch, 1 shopfazz.com, 1 -shopforcovers.com, 1 shopforeverproducts.com, 1 shopfskmall.com, 1 shopfully.com.au, 1 @@ -131799,6 +131740,7 @@ shoporangetheory.com, 1 shoposal.com, 1 shopperexpertss.com, 1 shoppersdepuertorico.com, 1 +shoppersvineyard.com, 1 shoppies.tk, 1 shopping-cart-migration.com, 1 shopping-il.org.il, 1 @@ -131954,7 +131896,6 @@ shoppingwinner.ga, 1 shoppingworth.ga, 1 shoppingyankee.ga, 1 shoppsb.com, 1 -shoppx.com, 1 shoppyad.com, 1 shopreme.com, 0 shopshap.ru, 1 @@ -132006,6 +131947,7 @@ shortnews.cf, 1 shortr.li, 1 shortstackcustoms.com, 1 shortstream.cz, 1 +shorttandemrepeats.com, 1 shortwave.com, 1 shortwave.tk, 1 shoruihokan.com, 1 @@ -132096,6 +132038,7 @@ shrines.tk, 1 shrinidhiclinic.in, 1 shrinker.tk, 1 shrinkhub.com, 1 +shrinkjson.com, 1 shrinkmydoc.com, 1 shroomery.org, 1 shropshireautonomy.co.uk, 1 @@ -132142,9 +132085,9 @@ shuletime.ml, 1 shulman.tk, 1 shulyaka.org.ru, 1 shuma.ga, 1 +shumka61.ru, 1 shumnyj-istochnik.tk, 1 shumov.tk, 1 -shunbao.com, 1 shunlian.live, 1 shunlian.video, 1 shunliancloud.cn, 1 @@ -132307,6 +132250,7 @@ siecon-it.com, 1 siega.pl, 1 siegemund-frankfurt.de, 1 siegfried.com.pe, 1 +siegfriedandjensen.com, 1 sieglercars.ch, 1 siegprod.tk, 1 sieh.es, 0 @@ -132355,6 +132299,7 @@ sig6.org, 1 sigabrt.org, 1 sigateway.com, 1 sigb.sh, 1 +sigecloud.com.br, 1 sigedtour.gov.bf, 1 sigep.org, 1 sigfridlinden.se, 1 @@ -132375,6 +132320,7 @@ sigi.tk, 1 sigint.pw, 0 sigio.nl, 1 sigma-apartments.com, 1 +sigma-lozenets.com, 1 sigma957.net, 1 sigmacomputers.ga, 1 sigmacomputing.com, 1 @@ -132401,6 +132347,7 @@ signaconsultoria.com.br, 1 signage.red, 1 signal.pm, 1 signal34.com, 1 +signalbee.trade, 1 signaldc.com, 1 signaldp.com, 0 signalmaps.co.uk, 1 @@ -132436,7 +132383,6 @@ signingcloud.com, 1 signitysolutions.com, 1 signix.net, 1 signmore.com, 1 -signmycode.com, 1 signora.gr, 1 signpath.io, 0 signrequest.com, 1 @@ -132460,6 +132406,7 @@ sigrid-mair.at, 1 sigsync.com, 1 sigterm.no, 1 sigterm.sh, 1 +sigurnosnisistemi.rs, 1 sigurnost.online, 1 siguza.net, 1 sigvik.ru, 1 @@ -132528,6 +132475,7 @@ silkrituals.com, 1 silkroad-iraq.com, 1 silkroad.com, 1 sillasdegamer.es, 1 +silleiro.com, 1 sillisalaatti.fi, 1 silly-billy.org, 1 sillysnapz.co.uk, 1 @@ -132535,10 +132483,10 @@ silo.org.br, 1 silodrome.com, 1 siloportem.eu, 1 siloportem.net, 1 +silosset.com, 1 silqueskineyeserum.com, 1 silsha.me, 1 silta.tk, 1 -silueta21.com, 1 silv.tk, 1 silvalli.com, 0 silver-fenrir.cn, 1 @@ -132557,7 +132505,6 @@ silvergoldbull.be, 1 silvergoldbull.bg, 1 silvergoldbull.bj, 1 silvergoldbull.by, 1 -silvergoldbull.ca, 1 silvergoldbull.cl, 1 silvergoldbull.cm, 1 silvergoldbull.cn, 1 @@ -132567,7 +132514,6 @@ silvergoldbull.co.il, 1 silvergoldbull.co.no, 1 silvergoldbull.co.tz, 1 silvergoldbull.co.uk, 1 -silvergoldbull.com, 1 silvergoldbull.com.au, 1 silvergoldbull.com.eg, 1 silvergoldbull.com.gh, 1 @@ -132668,12 +132614,12 @@ sim-mobile.ml, 1 sim4seed.org, 1 simabonnement.nl, 1 simac.fr, 1 +simacek.cz, 1 simaogv.net, 1 simaris.shop, 1 simark.ca, 1 simart.cf, 1 simaspava.com.tr, 1 -simava.org, 1 simbiat.eu, 1 simbiat.net, 1 simbiat.org, 1 @@ -132849,13 +132795,14 @@ simply-bob.de, 1 simply-pattinson.tk, 1 simply-pdf.de, 1 simply-premium.com, 1 +simply.com, 1 simply.scot, 1 simply2020.com, 1 simplybrave.net, 1 simplycharlottemason.com, 1 simplychocolate.com, 1 simplycloud.de, 1 -simplycodes.com, 1 +simplycodes.com, 0 simplydonelegal.com, 1 simplydonot.com, 1 simplydonut.com, 1 @@ -132880,7 +132827,6 @@ simplyuniforms.com.au, 1 simplyup.io, 1 simplyveritext.com, 1 simplyvoting.com, 1 -simpplr.com, 1 simprosuite.com, 1 simpson.edu, 1 simpsoncountyky.gov, 1 @@ -133002,6 +132948,7 @@ singingblackbird.tk, 1 singingwillow.nl, 1 singita.com, 1 single-in-stuttgart.de, 1 +single-invoice.co, 1 singlecellcourse.org, 1 singleeuropeansky.aero, 1 singlehandedsailing.tk, 1 @@ -133048,6 +132995,7 @@ sinonimosonline.com.br, 1 sinopec.com.ua, 1 sinopx.cf, 1 sinoscandinavia.se, 1 +sinot.info, 1 sinotouch.com, 1 sinpermiso.info, 1 sinquin.eu, 1 @@ -133271,6 +133219,7 @@ sitestudio.tk, 1 sitesweb.gq, 1 sitetalk.tk, 1 sitetuners.com, 1 +siteu.nl, 1 siteviseagency.com, 1 siteweb-seo.fr, 1 sitgesbeachhouse.com, 1 @@ -133278,10 +133227,10 @@ sitgesfilmfestival.com, 1 sithijaya.tk, 1 sithmanifest.com, 1 sitinjau.com, 1 -sitisnab.kz, 1 sitiwebferrara.it, 1 sitnik.ru, 1 sitnikov.ga, 1 +sito-online.ch, 1 sitra.fi, 0 sitting.bg, 1 sittogether.club, 1 @@ -133320,7 +133269,6 @@ sixstarwellbeing.com.au, 1 sixstrings.tk, 1 sixtiesgroovemachine.com, 1 sixtiesgroovemachine.nl, 1 -sixyy.com, 1 siyahiblog.com, 1 siyako.com, 1 siyanie-clean.ru, 1 @@ -133331,6 +133279,7 @@ sizeunknown.com, 1 sizeunknown.de, 1 sizeunknown.net, 1 sizeunknown.org, 1 +sizle.co, 1 sizyff.fr, 1 sj-leisure.com, 1 sj27user.ru, 1 @@ -133386,6 +133335,7 @@ skachat-zip.tk, 1 skachay-knighki.gq, 1 skachay-photo.gq, 1 skagen-feriebolig.dk, 1 +skaiciuoti.lt, 1 skaiman.ga, 1 skaitliukas.tk, 1 skakun.io, 1 @@ -133469,6 +133419,7 @@ skibbereencomhaltas.tk, 1 skibikers.tk, 1 skiclub-hohenlimburg.de, 1 skid.church, 1 +skiddle.com, 1 skidka.by, 1 skidki-ru.cf, 1 skidkimira.ru, 1 @@ -133497,6 +133448,7 @@ skill.moe, 1 skill.tk, 1 skill8.ro, 1 skillablers.com, 1 +skillai.hk, 1 skilldnsproc.com, 1 skillfloor.com, 1 skillmoe.at, 1 @@ -133538,7 +133490,6 @@ skinmarket.co, 1 skinmodo.com, 1 skinna.mx, 1 skinnation.tk, 1 -skinneymedspa.com, 0 skino.cz, 1 skinonline.co.za, 1 skinport.com, 1 @@ -133559,7 +133510,7 @@ skioakenfull.com, 1 skiozarts.fr, 1 skip.re, 1 skipfault.com, 1 -skipify.com, 1 +skipify.com, 0 skippy.dog, 0 skipr.co, 1 skipr.ninja, 1 @@ -133597,6 +133548,7 @@ skm.dk, 1 skmedia.ga, 1 skmsport.com, 1 skoander.com, 1 +skob.no, 1 skoda-im-dialog.de, 1 skodapower.tk, 1 skodapreowned.in, 1 @@ -133693,9 +133645,7 @@ sky-driver.ch, 1 sky-live.fr, 1 sky-motion.de, 1 sky-music.tk, 1 -sky-os.ru, 1 sky-wap.cf, 1 -sky2tours.com, 0 skyarch.net, 1 skybass.nl, 1 skybirch.com, 1 @@ -133728,6 +133678,7 @@ skydragoness.com, 1 skydrive.live.com, 0 skye.vg, 1 skyeeverest.tk, 1 +skyello.com, 1 skyem.co.uk, 0 skyeng.ru, 1 skyeto.com, 1 @@ -133736,6 +133687,7 @@ skyeyes.tw, 1 skyfall.network, 1 skyfcu.org, 1 skyfibertech.com, 1 +skyflight.hr, 1 skyfpicture.tk, 1 skygame.tk, 1 skygates.tk, 1 @@ -133756,6 +133708,7 @@ skylarker.org, 1 skylightcreative.com.au, 0 skylightipv.com, 1 skyline.tw, 1 +skylineattractions.com, 1 skylinehk.org, 1 skylinehouse.ca, 1 skylinemail.tw, 1 @@ -133772,7 +133725,7 @@ skymass.xyz, 1 skyminds.net, 1 skymkmk.com, 1 skymonk.tk, 1 -skynamo.com, 1 +skynamo.com, 0 skynet-research.us, 0 skynet.edu.kg, 1 skynet233.ch, 0 @@ -133783,12 +133736,12 @@ skynfans.com, 1 skynotify.co, 1 skyoceanblue.com, 1 skyoy.com, 0 +skypanic.com, 1 skypark.tk, 1 skypce.net, 1 skype, 1 skype.com, 0 skypech.com, 1 -skypicker.com, 1 skypicshd.com, 1 skyportcloud.com, 1 skyqueen.cc, 1 @@ -133798,19 +133751,29 @@ skyrider.me, 1 skyrosconsulting.com, 1 skys-entertainment.com, 1 skyscanner.ca, 1 +skyscanner.co.il, 1 skyscanner.co.in, 1 skyscanner.com, 1 skyscanner.com.au, 1 +skyscanner.com.br, 1 skyscanner.com.hk, 1 +skyscanner.com.ph, 1 skyscanner.de, 1 +skyscanner.dk, 1 skyscanner.es, 1 skyscanner.fr, 1 skyscanner.gg, 1 +skyscanner.ie, 1 +skyscanner.in, 1 skyscanner.jp, 1 skyscanner.net, 1 skyscanner.nl, 1 +skyscanner.no, 1 +skyscanner.ph, 1 +skyscanner.pl, 1 skyscanner.pt, 1 skyscanner.ru, 1 +skyscanner.uk, 1 skyscanner2024.com, 1 skyscheduler.work, 1 skyscnr.com, 1 @@ -133887,11 +133850,8 @@ slashnroses.com, 1 slashnroses.nl, 1 slashorg.net, 1 slashrepeat.com, 1 -slaskie.pl, 1 slate.fr, 1 slate.to, 1 -slated.ie, 0 -slatemc.com, 1 slatemc.fun, 1 slateteams.com, 0 slathering.cf, 1 @@ -133964,7 +133924,6 @@ slektforsker.no, 1 slemen.tk, 1 slepsluzbabeograd.org, 1 sletaem.ml, 1 -sletat.ru, 1 sletmo.com, 1 slev.tk, 1 slevermann.de, 0 @@ -134000,7 +133959,7 @@ slimcrm.vn, 1 slime5.com.tw, 1 slimed.cc, 1 slimer.com, 1 -slimgrafix.cz, 0 +slimgrafix.cz, 1 slimhost.com.ua, 0 slimpay.com, 1 slimspots.com, 1 @@ -134106,6 +134065,7 @@ sls.ltd, 1 slt24.de, 1 slubzcharakterem.pl, 1 sluciaconstruccion.com, 1 +slucky.de, 1 sluderno.org, 1 sludge.tk, 1 slugify.online, 1 @@ -134128,7 +134088,6 @@ slyarts.com, 1 slycegateway.com, 1 slycepay.com, 1 slycereporting.com, 1 -slymak.com, 1 slytigers.tk, 1 slyvon.com, 0 slzr.cloud, 1 @@ -134149,6 +134108,7 @@ smackhappy.com, 0 smadav.ml, 1 smahelova.cz, 1 smajlovic.info, 1 +smaki-wsi.pl, 1 smaksbanken.no, 1 smalandscountryclub.tk, 1 small-blog.cf, 1 @@ -134161,6 +134121,7 @@ smallchat.nl, 1 smallcraftadvisory.tk, 1 smallcubed.com, 1 smalldeveloper.ml, 1 +smalle-voet.de, 1 smallfarmersjournal.com, 1 smallfoot.tk, 1 smallingerland.nl, 1 @@ -134209,7 +134170,6 @@ smarriti.it, 1 smart-bezpeka.com, 1 smart-broker.ru, 1 smart-caq.com, 1 -smart-center.pt, 1 smart-dianza.ga, 1 smart-house.bg, 1 smart-hub.io, 1 @@ -134222,6 +134182,7 @@ smart-pharma.group, 1 smart-profile.ro, 1 smart-travel.tk, 1 smart-tux.de, 1 +smart-vilp.com, 1 smart-wind.ru, 1 smart-zona.tk, 1 smartacademy.ge, 1 @@ -134260,7 +134221,6 @@ smartdb.jp, 1 smartdeal.bg, 1 smartdigital.ga, 1 smarteco.tk, 1 -smartedukasi.co.id, 1 smartenspaces.com, 1 smarters-protv.com, 1 smarterskies.gov, 1 @@ -134327,6 +134287,7 @@ smartnotify.ca, 1 smartoctopus.art, 1 smartology.net, 1 smartoneclub.com, 1 +smartools.pro, 1 smartpanelsmm.com, 1 smartpatika.hu, 1 smartpheromones.com, 1 @@ -134389,7 +134350,6 @@ smashcooper.tk, 1 smashingconf.com, 0 smashingmagazine.com, 1 smashnl.tk, 1 -smashno.ru, 1 smatzone.in, 1 smavesto.de, 0 smb-analytics.pw, 1 @@ -134415,7 +134375,6 @@ sme-gmbh.com, 1 sme-gmbh.net, 1 sme.sk, 1 smedata.sk, 1 -smedix.com, 1 smeetsengraas.com, 1 smekonferencie.sk, 1 smeli.ar, 1 @@ -134427,7 +134386,6 @@ smereka-frnt.de, 1 smeso.it, 1 smeta.ml, 1 smetak.cz, 1 -smetana.pro, 1 smetbuildingproducts.com, 1 smeweb.com, 1 smeys.be, 1 @@ -134545,6 +134503,7 @@ smokingtapes.ga, 1 smokybay.is, 1 smokymountaingames.org, 1 smokyshores.radio, 0 +smol.cool, 1 smolbotbot.com, 1 smolensk-i.ru, 1 smolensk-news.net, 1 @@ -134571,7 +134530,6 @@ smoqerhome.ddns.net, 1 smorgasblog.ie, 1 smoser.eu, 1 smotret.tv, 1 -smotrowrelated.com, 1 smousebros.com, 1 smpelec.fr, 0 smphysio.com.au, 1 @@ -134590,7 +134548,6 @@ sms.storage, 1 sms1.ro, 1 sms72.tk, 1 smsaero.ru, 1 -smsalert.mobi, 1 smsalvand.tk, 1 smsappointment.com, 0 smsben.com, 0 @@ -134646,7 +134603,6 @@ snackmindful.com, 1 snacktakos.gr, 1 snackworks.com, 1 snacky.nl, 1 -snad.org.sa, 1 snafu.cz, 1 snagator.com, 1 snail.observer, 1 @@ -134671,6 +134627,7 @@ snapkit.com, 1 snapnread.com, 1 snaps.io, 1 snapshades.com, 1 +snapshotreport.org, 1 snapware.tk, 1 snapworks.net, 1 snapzfs.com, 1 @@ -134702,7 +134659,7 @@ sneakycode.net, 1 sneakynote.com, 1 sneakypaw.com, 1 sneed.company, 1 -sneedit.com, 0 +sneedit.com, 1 sneedit.de, 1 snegozaderzhatel.ru, 1 snehasish-chakraborty.com, 1 @@ -134716,6 +134673,7 @@ snelshops.nl, 1 snelwebshop.nl, 1 snelwegzen.nl, 1 snem.tk, 1 +snep.uk, 1 snepflix.com, 1 snerith.com, 1 snesdev.com, 1 @@ -134737,10 +134695,10 @@ sniffcat.com, 1 sniffing.gq, 1 sniffle.eu, 1 snikket.de, 1 +snipclip.me, 1 snipdrive.com, 1 snipettemag.com, 1 snipl.io, 1 -snipp.gg, 1 snipp.lol, 1 snippet.host, 1 snippet.ml, 1 @@ -134845,7 +134803,7 @@ soapex.com, 1 soaplakewa.gov, 1 soapsspoilers.com, 1 soar-npc.org, 1 -soat.fr, 0 +soat.fr, 1 soax.com, 0 sobakasite.tk, 1 sobaki.tk, 1 @@ -134947,7 +134905,6 @@ socialtide.ai, 1 socialtournaments.com, 0 socialtranslation.ga, 1 socialtrends.pl, 1 -socialutions.io, 1 socialwave.tk, 1 socialworklicensemap.com, 1 socialworkout.net, 1 @@ -134978,6 +134935,7 @@ sociosalafuerza.tk, 1 socioscasino.com, 1 socious.io, 1 sociusian.gq, 1 +sockscap64.com, 1 socksfromholland.com, 1 socktopus.io, 1 socomforums.tk, 1 @@ -135023,6 +134981,7 @@ soel.wa.edu.au, 1 soellner.info, 1 soelt.dk, 1 soelystsaebe.dk, 1 +soemanozeijlmans.eu, 1 soengen.com, 1 soenkem.ddnss.de, 1 soepvork.nl, 1 @@ -135077,6 +135036,7 @@ softelectronet.tk, 1 softenger.com, 1 softforge.co.uk, 1 softfuture.tk, 1 +softgamez.net, 1 softhints.com, 1 softios.com, 1 softizy.com, 1 @@ -135094,12 +135054,11 @@ softonic.nl, 1 softonic.pl, 1 softonic.ru, 1 softonic.se, 1 -softonit.ru, 0 +softonit.ru, 1 softonline.net, 1 softpark.cf, 1 softpark.ml, 1 softplay4hire.co.uk, 1 -softpractice.com, 1 softref.com, 1 softsaz.ir, 1 softsecmatheodexelle.be, 1 @@ -135128,6 +135087,7 @@ softwaresauna.com, 1 softwaresecurityandradefernando.be, 1 softwearautomation.com, 1 softweb-dev.de, 1 +softwerks.com, 1 softwing.de, 1 softwsabri.be, 1 softx.tk, 1 @@ -135149,6 +135109,7 @@ sogutma.com.tr, 1 sohamroy.me, 1 sohanakhan.tk, 1 soherco.cl, 1 +sohfga.com, 1 sohka.eu, 1 soho-art.com, 1 soil-journal.net, 1 @@ -135221,7 +135182,6 @@ solaronics.tk, 1 solarpanels.tk, 1 solarpanelscentralcoast.com, 1 solarplan-berlin.de, 1 -solarpoolheatingsa.co.za, 1 solarscan.com, 1 solarseason.ga, 1 solarstrom.net, 1 @@ -135245,6 +135205,7 @@ soldarizona.ga, 1 soldaten-genealogie.tk, 1 soldbypatrice.com, 1 soldierangels.tk, 1 +soldierer.com, 1 soldiersmg.tk, 1 sole-erdwaermetauscher.de, 1 soleanos.tk, 1 @@ -135300,7 +135261,6 @@ solitech.bg, 1 soliten.de, 1 soliujing.ml, 1 solium.com, 1 -soliumsolucion.com, 1 soliver.de, 1 soliver.eu, 1 solix.com, 1 @@ -135337,6 +135297,7 @@ solosesso.tk, 1 solostocks.com, 1 solostocks.it, 1 solostocks.ma, 1 +solovault.io, 1 sols.style, 1 solsea.io, 1 solsi.ga, 1 @@ -135346,6 +135307,7 @@ soltysblue.pl, 1 solu.la, 1 solucaomadeira.com, 1 solucion.gq, 1 +solucionesmarva.com, 1 solucionesmk.online, 1 solucionesremotas.cl, 1 solucionupsperu.com, 1 @@ -135389,7 +135351,6 @@ somaar.tk, 1 somaini.li, 1 somaliaonline.com, 1 somalilandtalk.tk, 1 -somanao.com, 1 somautomotivobr.com.br, 1 someapi.de, 1 somedial.ch, 1 @@ -135465,6 +135426,7 @@ son-tolkovatel.ml, 1 son-tolkovatel.tk, 1 sona-gaming.com, 1 sona.fr, 1 +sonalsrinath.com, 1 sonar.ga, 1 sonaraamat.com, 1 sonare-music.jp, 1 @@ -135561,15 +135523,16 @@ sonsonate.cf, 1 sonsonate.tk, 1 sontaycamera.com, 0 sontheim.de, 1 +sonus.health, 1 sony-psvita.ru, 1 sonyazi.com, 1 soohealthy.nl, 1 soom.ga, 1 soom.tk, 1 soomee.be, 1 +soonmeme.com, 1 soopure.nl, 1 soopy.moe, 1 -soortenbank.nl, 1 sopelaotaez.tk, 1 sopenamobilhome.com, 1 sopenguin.com, 1 @@ -135639,6 +135602,7 @@ sortek.mk, 1 sortiraparis.com, 1 sortirentrenous.com, 1 sortly.com, 1 +sortntrack.com, 1 sorubak.com, 1 soruly.com, 1 soruly.io, 1 @@ -135683,7 +135647,6 @@ sosnovka.ga, 1 sosns.com, 1 soso.ga, 1 soso.loan, 1 -soso.stream, 1 sosoft.tk, 1 sosoftplay.co.uk, 1 sosok.tk, 1 @@ -135695,7 +135658,7 @@ sosregistration.eu, 1 sossinistres.ca, 1 sostacancun.com, 1 soste.fi, 0 -sosteric.si, 1 +sosteric.si, 0 sosyalevin.com, 1 sosysadmin.com, 1 sosz.org, 1 @@ -135725,6 +135688,7 @@ soubriquet.org, 1 soudebalsa.com.br, 1 souenfermagem.com.br, 1 souenfermagem.org.br, 1 +souenfermeira.com, 1 soufastnet.com.br, 1 souga.eu.org, 1 sougou.com, 1 @@ -135785,7 +135749,6 @@ soundeo.net, 1 soundersmusic.com, 1 soundersu23.com, 1 soundexclusive4ever.tk, 1 -soundfingers.com, 1 soundfuntech.com, 1 soundgasm.net, 1 soundgo.gq, 1 @@ -135820,7 +135783,6 @@ soupbuahtaza.id, 1 soupleyoga.com, 1 souqfriday.com, 1 sour.is, 1 -souravbhor.com, 1 souravbhor.gq, 1 souravbhor.ml, 1 source-clan.tk, 1 @@ -135874,6 +135836,7 @@ southcoastlocksmiths.com.au, 0 southdakotahealth.tk, 1 southdakotanet.tk, 1 southeast-wholesale.com, 1 +southeastasianarchaeology.com, 1 southeastattacksquadron.org, 1 southeastwsf.org, 1 southelginumc.org, 1 @@ -135896,6 +135859,7 @@ southernsurgicalga.com, 1 southernvalve.com, 1 southfieldtownshipmi.gov, 1 southfloridaopenhousesearch.com, 1 +southforkresort.us, 1 southgatemi.gov, 1 southjacksonville-il.gov, 1 southkingstownri.gov, 1 @@ -135913,6 +135877,7 @@ southpeacearchives.org, 1 southphoenixair.tk, 1 southportland.gov, 1 southridgeservices.com, 1 +southrock.com, 1 southsands.com, 1 southshoreautowash.com, 1 southside-crew.com, 1 @@ -135942,17 +135907,13 @@ sova.cc, 1 sova.st, 1 sova.wiki, 1 sovasage.com, 1 +sovelia.com, 1 sovendus-benefits.com, 1 sovendus-campaign.com, 1 sovendus-connect.com, 1 sovendus-network.com, 1 -sovendus.ch, 1 sovendus.com, 1 sovendus.de, 1 -sovendus.dk, 1 -sovendus.nl, 1 -sovendus.pl, 1 -sovendus.se, 1 sovereign.bounceme.net, 1 sovereigngroup.com, 1 sovereignpcs.com, 0 @@ -135995,7 +135956,6 @@ soytranky.com, 1 soytusitio.com, 1 soyutwind.com, 1 soyuznik.ml, 1 -soyvigilante.com, 1 soyzvape.ru, 1 sozai-good.com, 1 sozai.tk, 1 @@ -136057,7 +136017,6 @@ spacegamesindustry.com, 1 spacehey.com, 1 spacehighway.ms, 1 spacehighways.net, 1 -spaceholder.cc, 1 spacehonor.com, 1 spacehost.de, 1 spaceint.fr, 1 @@ -136155,7 +136114,6 @@ spar.hu, 1 spar.si, 1 sparanoid.com, 1 sparanoid.net, 1 -sparanoid.network, 1 sparanoidstatus.com, 1 sparatryggt.se, 1 sparco.com, 1 @@ -136221,6 +136179,7 @@ spasem-park.tk, 1 spassamgeraet.top, 1 spasskellner-comedykellner.ch, 1 spatialnom.com, 1 +spatio.cn, 1 spatiugratis.tk, 1 spatter.cf, 1 spatter.tk, 1 @@ -136368,6 +136327,7 @@ speedynews.ml, 1 speedyplatypus.com, 1 speedyshopping.com.br, 1 speedzone.bg, 1 +speedzone.fi, 1 speelfabriek.tk, 1 speeli.com, 1 speeltjesvantruus.nl, 1 @@ -136415,6 +136375,7 @@ spetsnazsecurityinternational.co.uk, 1 spettacolocame.ga, 1 speventos.es, 1 speww.com, 1 +speybooks.com, 1 speycaster.net, 1 speztech.ru, 1 spf.gov.sg, 1 @@ -136425,6 +136386,7 @@ spherefluidics.com, 1 spherejoias.com.br, 1 sphericalmagic.com, 1 sphericalvision.cz, 1 +sphseagleeye.com, 1 sphynx-cats.com, 1 sphynxboyz.com.au, 1 spi-ind.com, 1 @@ -136438,7 +136400,6 @@ spicemoney.com, 0 spiceolife.ie, 1 spicerack.co.uk, 0 spicerack.uk, 1 -spicestore.hk, 1 spicevids.com, 1 spicevidsgay.com, 1 spichki.tk, 1 @@ -136514,6 +136475,7 @@ spinscity.club, 1 spinscity.info, 1 spinscity.net, 1 spinscity777.info, 1 +spintools.pro, 1 spintracer.de, 1 spion.su, 1 spireat.it, 1 @@ -136677,6 +136639,7 @@ sportmultimedia.pt, 1 sportnesia.com, 1 sportnieuws.nl, 1 sportnn.tk, 1 +sportnova.city, 1 sporto24.ml, 1 sportovni.site, 1 sportovnidum.cz, 1 @@ -136725,6 +136688,7 @@ sportucation.com, 1 sportucation.de, 1 sportverein-abtshagen.de, 1 sportvereine.online, 1 +sportverse.co.uk, 1 sportverzorging.tk, 1 sportvision.ml, 1 sportvissenfun.tk, 1 @@ -136830,7 +136794,6 @@ springfieldsd.gov, 1 springfieldvt.gov, 1 springgrillhouse.com, 1 springgrovepa.gov, 1 -springharveststore.com, 1 springhillmaine.com, 1 springinklee.com, 1 springlakemi.gov, 1 @@ -136874,6 +136837,7 @@ sprutech.de, 1 sps-lehrgang.de, 1 spscommerce.com, 1 spseiostrava.cz, 1 +spserver.work, 1 spstaticfiles.com, 1 spstechnical.com, 1 spt.tf, 1 @@ -137005,7 +136969,6 @@ sqxb0.ga, 1 sr-33.com, 1 sr-f.tk, 1 sr.ht, 1 -sr33.com, 1 sr3cybersecurity.com, 1 sr88.co.uk, 1 sr88.me.uk, 1 @@ -137033,7 +136996,10 @@ srebro.cc, 1 sreedhareeyam.tk, 1 sreeharis.tk, 1 sreemetaliks.com, 1 +sreenadh.in, 1 sremodelingnyc.com, 1 +srequest.ru, 1 +srequest.tech, 1 sreventplanning.com, 1 srfloki.com, 1 srgry.link, 1 @@ -137042,7 +137008,6 @@ sriamruthadevelopers.in, 1 srife.net, 1 srigc.com, 1 srilankan-hope-for-children.nl, 1 -srilankanguides.com, 1 srinisprojects.online, 1 srinona.com.my, 1 sriramdigital.tk, 1 @@ -137142,13 +137107,13 @@ sscd.no, 1 sscnapoli.it, 1 ssconn.com, 1 sscourtreporters.com, 1 -sscsignatureresizer.com, 1 ssdax.com, 0 ssddff.com, 1 ssdpalermo.it, 1 ssdtool.com, 1 ssenberg.nl, 1 ssense.co.jp, 0 +sservice.cz, 1 ssetechnologies.com, 1 ssf.no, 0 ssfca.gov, 1 @@ -137181,7 +137146,6 @@ sslcertificaten.nl, 1 sslcheck.nl, 1 sslcloud.net, 1 ssld.at, 1 -ssldecoder.eu, 1 ssldev.net, 1 sslgctx.gov, 1 sslhello.com, 1 @@ -137231,12 +137195,14 @@ ssuiteoffice.com, 1 ssuitesoft.com, 1 st-annen-museum.de, 1 st-benno.de, 1 +st-club.de, 1 st-damase.qc.ca, 1 st-kilian-markt-erlbach.de, 1 st-li.com, 0 st-mickalos.com, 1 st-news.de, 1 st-nicolaus.sk, 1 +st-shakyo.jp, 1 st-steuern.de, 1 st3tailor.com.br, 1 st42.fr, 1 @@ -137268,6 +137234,7 @@ stackery.io, 1 stackhub.cc, 1 stacklasvegas.com, 1 stackpay.li, 1 +stackplanner.io, 1 stackradar.com, 1 stackroute.com, 1 stackroute.in, 1 @@ -137360,7 +137327,6 @@ stageirites.com, 1 stageirites.fr, 1 stageirites.org, 1 stagemaster.cz, 1 -stagend.com, 1 stagewalker.no, 1 staging-amag.com, 1 staging-scholar.tk, 1 @@ -137442,7 +137408,6 @@ stan.store, 1 stanandjerre.org, 1 stanbeukers.com, 1 stancer.com, 1 -stanchierifamilylaw.com, 1 stancoe.org, 0 stancounty.gov, 1 stand.earth, 1 @@ -137456,7 +137421,6 @@ standard-wohnungsbaukredit.eu, 1 standard-wohnungsbaukredit.info, 1 standard-wohnungsbaukredit.net, 1 standard-wohnungsbaukredit.org, 1 -standardizarea.ro, 1 standardlifters.com, 1 standardmetrics.io, 1 standardnotes.com, 1 @@ -137494,6 +137458,7 @@ stankingma.com, 1 stankingma.nl, 1 stanleyblackanddecker.com, 1 stanleychuahphotography.com, 1 +stanleyharrold.com, 1 stanleytools.ca, 1 stanleytools.com, 1 stanmed24.pl, 1 @@ -137517,7 +137482,6 @@ star-citizen.wiki, 1 star-clean.it, 1 star-life.tk, 1 star-one.co.uk, 1 -star.watch, 1 starase.com, 0 starazagora.bg, 1 starb.in, 1 @@ -137571,6 +137535,7 @@ starka.st, 1 starken.com, 1 starking.net.cn, 1 starking.tk, 1 +starkinsider.com, 1 starknh.gov, 1 starkparks.gov, 1 starkstromkonsument.de, 1 @@ -137627,7 +137592,6 @@ start-school.by, 1 start.stockholm, 1 start2dance.tk, 1 startablog.tv, 1 -startag.xyz, 1 startandstop.fr, 1 startaninflatablebusiness.com, 1 startaxi.com.ua, 1 @@ -137653,7 +137617,6 @@ startlinks.tk, 1 startmail.com, 1 startner.com, 1 startnowcornwall.org.uk, 1 -startpage.com, 1 startpage.info, 1 startpage4u.tk, 1 startplats.tk, 1 @@ -137751,6 +137714,7 @@ stationmedia.tk, 1 stationnement-angouleme.com, 1 stationnement-stdizier.fr, 1 stationnement-villeurbanne.fr, 1 +statisbet.com, 1 statista.com, 1 statistik-online.org, 1 statistik-seminare.de, 1 @@ -137811,6 +137775,7 @@ stb-schefczyk.com, 1 stb-schefczyk.de, 1 stb-schefczyk.info, 1 stb-schefczyk.net, 1 +stb-strangmueller.de, 1 stb-timmler.de, 1 stb.gov, 1 stbarnabashealthsystem.com, 1 @@ -137834,6 +137799,7 @@ stclairvet.co.uk, 1 stclementmatawan.org, 1 stclementreligioused.org, 1 stcloudfl.gov, 1 +stclub.de, 1 stcomcybersecurity.net, 1 stconleths.ie, 1 stcplasticsurgery.com, 1 @@ -137883,7 +137849,6 @@ steampress.io, 1 steamscore.info, 1 steamsprays.tk, 1 steamstat.us, 1 -steamtrades.com, 1 steamwhirl.com, 1 steannes.com, 1 stebenkov.tk, 1 @@ -137911,6 +137876,7 @@ steelnavi.jp, 1 steeloncall.com, 1 steelpoint.com.pl, 1 steelsheds.biz, 1 +steelsoldiers.com, 1 steelvortex.tk, 1 steelzone.tk, 1 steemit.com, 1 @@ -137961,8 +137927,6 @@ steggemachine.com, 1 stehlik.co.uk, 1 stehlik.sk, 1 steigerlegal.ch, 1 -steilundfrech.agency, 1 -steinbach.ai, 1 steinbrich.eu, 1 steiner-dominik.at, 1 steiner.do, 1 @@ -137981,7 +137945,6 @@ steinmetz.cloud, 1 stek-usa-shop.com, 1 stek-usa.com, 1 stekelenburg.me, 1 -steklein.de, 1 stelcomp.com, 1 stelcron.com, 1 steldingreporters.com, 1 @@ -138043,7 +138006,6 @@ stena.cf, 1 stenaro.ch, 1 stencilsaustralia.com.au, 0 stendenlegal.nl, 1 -stenhojmedia.dk, 1 stening.co, 1 steno.nl, 1 stenographers.online, 1 @@ -138207,7 +138169,6 @@ stevenshame.com, 1 stevenski.com, 0 stevensonal.gov, 1 stevensontaxservices.com, 1 -stevensonvillager.com, 1 stevenspoint.gov, 1 steventress.com, 1 stevenz.blog, 1 @@ -138347,7 +138308,6 @@ stinkefingereinhorn.de, 1 stinkintechnology.com, 1 stinkmemes.com, 1 stinter.cf, 1 -stintup.com, 0 stiphosting.nl, 1 stipic-webit.de, 1 stirblaut.de, 1 @@ -138366,7 +138326,6 @@ stjohncamden.com, 1 stjohnin.com, 0 stjohnin.gov, 1 stjohnks.gov, 1 -stjohnofgodannualreport.nz, 1 stjohnpa.org, 1 stjohnsc.com, 1 stjohnskids.com, 1 @@ -138455,6 +138414,7 @@ stockholmpride.org, 1 stockilluminati.com, 1 stockmarkettoday.news, 1 stockmeta.jp, 1 +stockntech.net, 1 stockpile.com, 1 stockportny.gov, 1 stockportspiritualistchurch.co.uk, 1 @@ -138488,11 +138448,13 @@ stohrm.com, 1 stoianlawfirm.com, 1 stoicadarius.com, 1 stoicadarius.de, 1 +stoicadarius.ro, 1 stoicatedy.ovh, 1 stoicnotaries.com, 1 stoicus.com.br, 1 stoinov.com, 1 stoiximatikesetairies.tv, 1 +stoiximaweb.gr, 1 stokl.com.au, 0 stokrotkadelikatesy.pl, 1 stolarka.tk, 1 @@ -138535,7 +138497,6 @@ stonedwarf5.net, 1 stonedworms.de, 0 stoneedgeconcrete.com, 1 stonefusion.org.uk, 1 -stonegatewealth.com, 0 stonegray.ca, 1 stonehammerhead.org, 1 stonehengelabs.io, 1 @@ -138552,7 +138513,7 @@ stoneworld.ga, 1 stonexbullion.com, 1 stoneydsp.com, 1 stoningtonboroughct.gov, 1 -stonkslab.com, 1 +stonkslab.com, 0 stonnaltd.com, 1 stonnastructures.co.uk, 1 stonsil.com, 1 @@ -138618,7 +138579,6 @@ storage-books.gq, 1 storageideas.uk, 1 storageioblog.com, 1 storagenewsletter.com, 1 -storagex.co.uk, 1 storck.com, 1 stordbatlag.no, 1 store-en-stock.com, 1 @@ -138656,6 +138616,7 @@ storiadellarte.com, 1 storiadirectory.tk, 1 storiagraph.com, 1 storiatipic.com, 1 +storiediteecaffe.com, 1 stories-pro.com, 1 storiesbysign.com, 1 storiesofglass.nl, 1 @@ -138672,7 +138633,7 @@ stormairsoft.tk, 1 stormboost.cz, 1 stormchile.cl, 1 stormdamages.claims, 1 -stormenergygh.com, 1 +stormenergygh.com, 0 stormerauto.ae, 1 stormestudios.tk, 1 stormfest.tk, 1 @@ -138773,7 +138734,6 @@ strail-english.jp, 1 straitsresearch.com, 1 straitstimes.com, 1 strajnar.si, 1 -straka.name, 1 strakertranslations.com, 0 strakh.tk, 1 strakonak.cz, 1 @@ -138849,7 +138809,6 @@ stratfordnh.gov, 1 stratfordwi.gov, 1 stratforge.com, 1 strathspeycrown.com, 1 -strati.com.br, 1 stratiacyber.com, 1 stratible.com, 1 stratik.com.co, 1 @@ -138870,11 +138829,9 @@ stratuspayments.net, 1 stratussc.com, 0 straubs.eu, 1 strauss-advisor.de, 1 -strauss.eu.com, 1 strauss.tirol, 1 strauswolfs.nl, 1 stravato.com, 1 -stravato.net, 1 stravers.shoes, 1 strawberries.tk, 1 strawberry-laser.gr, 1 @@ -138967,7 +138924,6 @@ street-racing.tk, 1 streetart.tk, 1 streetartcities.com, 1 streetballromania.tk, 1 -streetcheck.co.uk, 1 streetdancecenter.com, 1 streetdreamz.tk, 1 streetforceteam.tk, 1 @@ -139001,6 +138957,7 @@ stressed.tk, 1 stressfreeprobate.com, 1 stressfrei-marceva.de, 1 streszczenia.pl, 1 +strettonreserve.com.au, 1 strettoweb.com, 1 strgco.com, 1 striae.cf, 1 @@ -139034,6 +138991,7 @@ strippersinthehoodxxx.com, 1 stripperweb.club, 1 striptizer.tk, 1 stritai.ru, 1 +strivestudio.com.mx, 1 strixmusic.com, 1 strizh.com.ua, 1 strl-tunis.tk, 1 @@ -139060,6 +139018,7 @@ strojmaster.tk, 1 strokesb.store, 1 strokesurvivor.nz, 1 strom-mit-system.de, 1 +strom-morava.cz, 1 strom.cz, 1 strom.family, 1 stroma.com, 0 @@ -139067,6 +139026,7 @@ stromak.cz, 0 stromberg.marketing, 1 stromectol.gq, 1 stromkomfort.cz, 1 +strommorava.cz, 1 strompraha.cz, 1 stromsparen24.at, 1 stromzivota.sk, 1 @@ -139187,7 +139147,7 @@ studenti.tk, 1 studentinaneta.com, 1 studentite.bg, 1 studentjournalist.ml, 1 -studentkhata.online, 1 +studentkhata.online, 0 studentklinikk.no, 1 studentloans.gov, 1 studentnep.tk, 1 @@ -139199,6 +139159,8 @@ students4sports.org, 1 studentscodecamp.com, 1 studentse.fr, 1 studentsfirstnb.com, 1 +studentskiservis.si, 1 +studentskodelo.si, 1 studentstc.cz, 1 studenttenant.com, 1 studenttracker.org, 1 @@ -139245,10 +139207,10 @@ studiobrandano.com, 1 studiocharloslivro.tk, 1 studioclassic.no, 1 studiodelbenessere.com, 1 -studiodentisticomasi.com, 1 +studiodentisticomasi.com, 0 studiodentisticosanmarco.it, 0 studiodoprazer.com.br, 1 -studiodpe.com, 0 +studiodpe.com, 1 studiodriban.com, 0 studioduurzaamwonen.nl, 1 studioelo.com.br, 0 @@ -139266,6 +139228,7 @@ studiolive.club, 1 studiolu.tk, 1 studiolupotti.it, 1 studiomarcella.com, 1 +studiomax.bg, 1 studiomenfis.com, 1 studionerisabatini.it, 1 studionorwood.com, 1 @@ -139274,6 +139237,7 @@ studioocasp.com.br, 1 studiopanamaitalia.com, 1 studiopirrate.com, 1 studiopoen.com.br, 1 +studiorachunkowe.pl, 1 studioshiftup.net, 1 studiosql.ml, 1 studiostawki.com, 1 @@ -139295,6 +139259,7 @@ studium.cz, 1 studius.gq, 1 studiweb.pro, 1 studlan.no, 0 +studlied.com, 1 studo.com, 1 studport.rv.ua, 1 studsovet.cf, 1 @@ -139303,6 +139268,7 @@ studuj.digital, 1 studujdigital.cz, 1 studujdigital.eu, 1 studwebs.ml, 1 +study-share.com, 1 studyarch.tk, 1 studybay.com, 0 studybeans.org, 1 @@ -139437,7 +139403,6 @@ suamicowi.gov, 1 suatdautu.com, 1 suaudeau.fr, 1 suaudeau.org, 1 -suayslim.com, 1 sub-net.at, 1 sub-topia.de, 1 subahankamal.tk, 1 @@ -139451,7 +139416,6 @@ subarus.tk, 1 subaruxv.pl, 1 subastatutraslado.com.mx, 1 subbacultcha.tk, 1 -subbdom.com, 1 subcenter.io, 1 subcollab.com, 1 subdev.org, 1 @@ -139477,9 +139441,10 @@ submeet.vet, 1 submelon.tech, 1 submit-link.cf, 1 submiteads.tk, 1 -submittable.com, 1 +submittable.com, 0 submityou-rlink.tk, 1 submityour-link.tk, 1 +subnet.com, 1 subnoto.com, 1 subology.co, 1 suborbital.io, 1 @@ -139494,7 +139459,7 @@ subsistence.wiki, 1 subsistencematters.net, 1 subsitude.tk, 1 subsoft.tk, 1 -subspace.institute, 0 +subspaceds9.us, 1 substanceandprogram.info, 0 substancelaw.com, 1 substances.be, 1 @@ -139587,11 +139552,11 @@ suemoto.net, 1 suempresa.cloud, 1 sueniosmundiales.com, 1 suenotek.com, 1 -suerteloteria.com, 1 suesse-kunst.de, 1 suessenbecker.de, 1 suessundbitter.de, 1 suevia-ka.de, 1 +suevia.com, 1 suffix.ru, 1 sufix.cz, 1 sufleu.ro, 1 @@ -139603,12 +139568,16 @@ sugar-homes.com, 1 sugar.lgbt, 1 sugarbeatsentertainment.com, 1 sugarbrother.com, 0 +sugarcribs.agency, 1 sugarcribs.com, 1 +sugarcribs.live, 1 +sugarcribs.net, 1 +sugarcribs.org, 1 +sugarcribs.vip, 1 sugarcrm.com, 1 sugarcube.ml, 1 sugarcube.tk, 1 sugardating.network, 1 -sugarfans.com, 1 sugarfetch.com, 1 sugargrant.gq, 1 sugarlandsara.com, 1 @@ -139651,6 +139620,7 @@ suikerspinnetje.nl, 1 suitcompany.com, 1 suite.li, 1 suite360sel.org, 1 +suiteassured.com, 1 suitebase.org, 1 suitecrm.com, 1 suitemail.org, 1 @@ -139659,6 +139629,7 @@ suitesapp.com, 1 suitesolutionsgroup.com, 1 suiteuser.org, 1 suitocracy.com, 1 +suitsizingtool.com, 1 sujal.com, 1 sujatadev.in, 1 sujiao.de, 1 @@ -139774,6 +139745,7 @@ summitlighthousela.org, 1 summitms.gov, 1 summitoralsurgerymt.com, 1 summitviewbaptistchurch.com, 1 +summitweb.eu, 1 summitwellnessgroup.com, 1 sumner-jc-wi.gov, 1 sumochki.tk, 1 @@ -139892,6 +139864,7 @@ sunpig.my, 1 sunpig.sg, 1 sunplant.biz, 1 sunplay.host, 1 +sunplus.com.pl, 1 sunpool.top, 1 sunpower.id, 1 sunpsychological.com, 1 @@ -139899,7 +139872,6 @@ sunradio.tk, 1 sunred.info, 1 sunred.org, 1 sunrichtec.com, 1 -sunrise-sunset.org, 1 sunrise.tk, 1 sunrisebeachmo.gov, 1 sunrisebeachtx.gov, 1 @@ -139940,6 +139912,7 @@ sunsunjewelry.net, 1 sunsunjewelry.org, 1 suntechnologies.com, 1 sunticschool.org, 1 +suntrion.com, 1 suntropez-shop.it, 1 sunwayestates.com, 1 sunwaymedical.com, 1 @@ -139949,7 +139922,6 @@ sunwei-proxy.tk, 1 sunwolf.studio, 0 sunyanzi.cf, 1 sunyanzi.tk, 1 -suomensotilas.fi, 1 suomentilitoimistot.fi, 1 suomiheraa.com, 1 suomika.pl, 1 @@ -139988,6 +139960,7 @@ super-puper.su, 0 super-segment.com, 1 super-silicon.com, 1 super-trophy.de, 1 +super2d.net, 1 super60.ag, 1 super60.biz, 1 super60.de, 1 @@ -140026,6 +139999,7 @@ supercastlessunshinecoast.com.au, 1 supercentenarian.com, 1 supercharged.co.uk, 1 superchargers.pt, 1 +superchopsticks.com, 1 supercinebattle.fr, 1 supercontent.cf, 1 supercontent.ga, 1 @@ -140052,6 +140026,7 @@ superfans.top, 1 superfastpress.com, 1 superfavorite.tk, 1 superfinancial-dorsetbranch.co.uk, 1 +superfluo.hr, 1 superfluous.tk, 1 superfly.tk, 1 superfoodsexplained.com, 1 @@ -140079,6 +140054,7 @@ superioropticalva.com, 1 superiorseamlessinc.com, 1 superiorvision.com, 1 superiorwi.gov, 1 +superiptv.pro, 1 superis.eu, 1 superit.com.br, 1 superjuf.com, 1 @@ -140228,6 +140204,7 @@ suresi.gen.tr, 1 suresign.au, 1 surest.com, 0 surestartblanks.com, 1 +sureststar.com, 1 surf1969.tk, 1 surfacespots.ga, 1 surfbluewave.com, 0 @@ -140318,6 +140295,7 @@ susanmmeyersauthor.com, 1 susann-kerk.de, 1 susanna-komischke.de, 0 susannaridge.com, 1 +susanyorke.ca, 1 susconam.org, 1 susdomicilios.co, 1 suseki.ga, 1 @@ -140381,7 +140359,6 @@ sutty.nl, 1 suurhelsinki.cf, 1 suuria.de, 1 suurimjulgus.ee, 1 -suutaripaivat.fi, 1 suv4.net, 1 suvacollections.com.br, 1 suvalor.com, 1 @@ -140403,6 +140380,7 @@ suzhouxinglu.com, 1 suziekovner.com, 1 suziepachecoart.com, 1 suzikogsm.tk, 1 +suzubot.com.br, 1 suzuki-aps.de, 1 suzuki-harga-promo.com, 1 suzuki.com, 1 @@ -140498,7 +140476,6 @@ svetplast.spb.ru, 0 svetrelaxu.cz, 1 svetserialov.to, 1 svev.no, 0 -svfintechja.com, 1 svfitness.ru, 1 svg-board.ml, 1 svgdesigns.com, 1 @@ -140541,7 +140518,6 @@ svseglobal.com, 1 svsewerut.gov, 1 svsg.co, 1 svswebmarketing.com, 1 -svtemplemn.org, 1 svtl.ch, 1 svtr.de, 1 svtv.org, 1 @@ -140553,6 +140529,7 @@ sw-s.info, 1 sw-servers.net, 1 sw33tp34.com, 1 swa-il.gov, 1 +swaa.life, 1 swabia.com, 1 swabifoundation.tk, 1 swac.org, 1 @@ -140562,6 +140539,7 @@ swag.pw, 1 swagat.tk, 1 swagger.io, 1 swagger.london, 1 +swaglab.rocks, 1 swaglookbook.com, 1 swagmoney.enterprises, 1 swahili-dictionary.com, 1 @@ -140654,7 +140632,6 @@ sweetintrigue.tk, 1 sweetlegs.jp, 1 sweetloaded.com, 1 sweetlycakes.com, 1 -sweetmedicinefarm.com, 0 sweetnest.com, 1 sweetparis.cf, 1 sweetpinkpussy.org, 1 @@ -140689,6 +140666,7 @@ swift-cut.de, 1 swift-devedge.de, 1 swiftapp.uk, 1 swiftauditor.com, 1 +swiftauth.net, 1 swiftbits.com, 1 swiftbonds.com, 1 swiftcashforcars.com.au, 1 @@ -140710,7 +140688,7 @@ swiftradiant.com, 1 swiftrecharge.com, 1 swiftsensors.com, 1 swiggles.com, 1 -swilab.ch, 0 +swilab.ch, 1 swilabible.be, 0 swilagod.be, 1 swilatag.be, 1 @@ -140749,6 +140727,7 @@ swiss-export-compliance.com, 1 swiss-spectator.ch, 1 swiss-vanilla.ch, 1 swiss-vanilla.com, 1 +swiss-watch.com.ua, 1 swiss404.net, 1 swissaquashop.ch, 1 swissbearfoodservices.com, 0 @@ -140770,7 +140749,6 @@ swisshub.io, 1 swissinternationalva.com, 1 swisslinux.org, 1 swissmakers.ch, 1 -swissmeyer.pl, 1 swissmodular.com, 1 swissneutral.net, 1 swissnoso.ch, 1 @@ -140806,6 +140784,7 @@ swkdevserver.tk, 1 swktestserver.tk, 1 swmlink.com, 1 swn-nec.de, 1 +swnet.casa, 1 swocaoh.gov, 1 swoop-qa.cloud, 1 swoop-support.com, 1 @@ -140825,12 +140804,13 @@ swostik.com, 1 swot-digital.com, 1 swparegionalcad.gov, 1 swpat.org, 1 +swpmethodistheritage.org.uk, 1 swprowood.com, 1 swqa.hu, 1 swretail.ga, 1 +swssd1ut.gov, 1 swtchart.org, 1 swtp-p-appsrv-coordination-backend-businessservices1.azurewebsites.net, 1 -swtp-p-appsrv-coordination-platform-businessservices1.azurewebsites.net, 1 swtp-p-appsrv-donorevaluation-api-businessservices1.azurewebsites.net, 1 swtp-p-appsrv-protocol-api-businessservices1.azurewebsites.net, 1 swtrayssq.gq, 1 @@ -140901,7 +140881,7 @@ sylino.tk, 1 syllogi.xyz, 1 sylphix.cn, 1 sylvaindurand.org, 1 -sylvainkalache.com, 1 +sylvainkalache.com, 0 sylvaloir.fr, 1 sylvangarden.net, 1 sylvankohchang.com, 1 @@ -140926,6 +140906,7 @@ symbiose-immobilier.ch, 0 symbiose.com, 1 symbiosecom.ch, 0 symbiote.com.au, 1 +symbiotic.fi, 1 symbo.xyz, 1 symbolics.digital, 1 symbolnodes.org, 1 @@ -140935,10 +140916,12 @@ symend.com, 0 symeonchen.com, 1 symetri.co.uk, 1 symetri.com, 1 +symetri.dk, 1 symetri.fi, 1 symetri.ie, 1 symetri.no, 1 symetri.se, 1 +symetri.us, 1 symetrigroup.com, 1 symetrix.tk, 1 symetryk.tk, 1 @@ -141001,8 +140984,6 @@ synergyofserra.com, 1 synergytherm.com, 1 synergyzone.tk, 1 synerio.com, 1 -synerionagile.com, 1 -synerionenterprise.com, 1 synetiq.co.uk, 1 synfrait.com, 1 synitsa.tk, 1 @@ -141094,6 +141075,7 @@ sysmike.de, 1 sysmike.net, 1 sysnet.com.sg, 1 sysnet.cz, 1 +sysoons.com, 1 sysopworld.cf, 1 sysopworld.ga, 1 sysopworld.gq, 1 @@ -141192,7 +141174,6 @@ szerbnyelvkonyv.hu, 1 szerelem.love, 1 szerver.com, 1 szerver.hu, 1 -szhighsun.com, 1 szih.org.pl, 1 szilagyicsalad.ddns.net, 1 szili.uk, 1 @@ -141266,14 +141247,12 @@ t0ny.name, 1 t12u.com, 1 t1cloud.com, 1 t1f.ru, 1 -t1movie.com, 1 t2-sit-test.tk, 0 t2000headphones.com, 1 t2000laserpointers.com, 1 t22.uk, 1 t23a.eu, 1 t2informatik.de, 1 -t2tea.com, 1 t33.eu, 1 t36533.com, 1 t3concrete.my, 1 @@ -141443,6 +141422,7 @@ tad.ua, 1 tadaaam.studio, 1 tadalafil-tablets.tk, 1 tadalafilindia.gq, 1 +tadashiku.jp, 1 tadaweb.com, 1 tadj-mahalat.com, 1 tadjiki.tk, 1 @@ -141488,6 +141468,7 @@ tagid.ga, 1 tagid.tk, 1 tagil-news.ru, 1 taginet.com, 1 +taglialegne.it, 1 tagliando.it, 1 taglioepiega.com, 1 taglioepiega.eu, 1 @@ -141562,6 +141543,7 @@ taiwanprize.com, 1 taiwantechtrek.tk, 1 taiwantour.info, 0 taiway.com, 1 +taiyo-eg.com, 1 taj-portal.tk, 1 tajbrighton.tk, 1 tajemna-mista.cz, 1 @@ -141576,7 +141558,6 @@ tajniy-smisl.tk, 1 tajnyodtah.sk, 1 tajrobe.wiki, 1 tajtowereg.com, 1 -tak-it.nl, 1 tak.gov, 1 tak.io, 1 takada418.jp, 1 @@ -141587,6 +141568,7 @@ takanenonadeshiko.com, 1 takano-recruit.com, 1 takano-takuhai.com, 1 takanogroup.co.jp, 1 +takanozawa.co.jp, 1 takao-hs.com, 1 takao.ga, 1 takarabrig.com, 1 @@ -141660,7 +141642,6 @@ talcualdigital.com, 1 taldia.es, 1 taleatherworks.com, 1 talendipank.ee, 1 -talengo.com, 1 talensahub.com, 1 talent-safari.com, 1 talentbazi.com, 1 @@ -141675,10 +141656,8 @@ talentguru.ml, 1 talenthubmpi.com, 1 talentimpuls.de, 1 talentio.com, 1 -talentlint.com, 1 talentlms.com, 1 talentmill.co, 1 -talento.dev.br, 0 talentoday.com, 1 talentplatform.ca, 1 talentplatform.com, 1 @@ -141698,7 +141677,6 @@ talichi.es, 1 talideon.com, 0 talikotang.tk, 1 talinhandmade.com, 1 -talisadesign.fi, 0 talisman-amulet.ga, 1 talk-local.com, 1 talk.google.com, 1 @@ -141716,7 +141694,6 @@ talkischeap.co.za, 1 talkischeap.tk, 1 talklikeyodaday.tk, 1 talkmojang.club, 1 -talkreal.net, 0 talkscope.cf, 1 talkscope.ml, 1 talksileby.tk, 1 @@ -141751,6 +141728,7 @@ taloman.fi, 1 talonro.com, 1 talos-app.io, 1 talos-staging.io, 1 +talosquant.com, 1 talpurwadalions.tk, 1 taltech.ee, 1 talusan.tk, 1 @@ -141870,16 +141848,16 @@ tangoanalytics.com, 1 tangosix.rs, 1 tangs.com, 1 tangselmedia.com, 1 -tanguay.cc, 1 tangub.today, 1 tangubpatientmonitoring.com, 1 tangyue.date, 1 tangzhao.net, 1 tanhaa.tk, 1 +taniawizualizacja.pl, 1 tanie-obraczki-szczecin.tk, 1 tanie-uprawnienia-sep.pl, 1 taniepaleciaki.pl, 1 -tanieserwetki.pl, 1 +tanieserwetki.pl, 0 taniguchi.jp.net, 1 taniguchi.link, 1 taniguchi.osaka.jp, 1 @@ -141898,7 +141876,6 @@ tanks.je, 1 tankski.co.uk, 0 tanming.com.my, 1 tanned.tk, 1 -tannenhof-moelln.de, 1 tanner.sh, 1 tanneradvisorysolutions.com.au, 1 tannercorporation.com, 0 @@ -141975,7 +141952,6 @@ tappezzeria.roma.it, 1 tappezziere.milano.it, 0 tappezziere.roma.it, 1 tapphosting.com, 1 -tappy.com.br, 1 tapquad.com, 1 taprix.org, 1 taproot.com, 1 @@ -142018,6 +141994,7 @@ targetbuilding.com, 1 targetlearning.com.au, 1 targetlonglife.tk, 1 targetmarc.com, 1 +targetoutsourcing.pe, 1 targetsportsworld.com, 1 targettrend.com, 1 targeturl.ru, 1 @@ -142035,6 +142012,7 @@ tarihpedia.com, 1 tarihvakti.com, 1 tarija.tk, 1 tarikigaru.ga, 1 +tarikin.com, 1 tarjaturunen.tk, 1 tarjetaolimpica.com.co, 1 tarjetasgraficas.tk, 1 @@ -142052,7 +142030,6 @@ tarot-online.com.pl, 1 tarot-online.fr, 1 tarot-online.it, 1 tarot-oracle.com, 0 -tarot.vn, 1 tarotcarmenruiz.com, 1 tarotreadingexplained.com, 1 tarotyvidente.es, 1 @@ -142073,7 +142050,7 @@ tartufomajella.it, 1 taruntarun.net, 1 tarus.gq, 1 tarvit.me, 1 -tarvoo.com, 1 +tarvoo.com, 0 tarzanka.ml, 1 tas.best, 1 tasarimgazetesi.com, 1 @@ -142101,7 +142078,6 @@ taskus.com, 1 taskwise.cf, 0 tasmaniangaspipeline.com.au, 1 tasnomanija.rs, 1 -tasogarenoinori.net, 1 tasonoken.tk, 1 tasports.com.au, 1 tasports2043.com.au, 1 @@ -142110,8 +142086,8 @@ tassweb.com.au, 1 taste2travel.com, 1 tastedrecipes.com, 1 tastefullyminimalist.com, 1 -tastehungary.com, 1 tastenewwines.com, 1 +tastfinity.com, 1 tastiquo.com, 1 tastycake.net, 0 tastycool.io, 1 @@ -142134,7 +142110,6 @@ tataru.it, 1 tatarworld.tk, 1 tatary.cf, 1 tatary.tk, 1 -tate.com, 1 tatecountyms.gov, 1 tateesq.com, 0 tateishi-ip.com, 1 @@ -142343,7 +142318,7 @@ tbassistant.xyz, 1 tbatr.tk, 1 tbcinteriorismo.com, 1 tbcloud.site, 0 -tbejos.com, 1 +tbfencing.au, 1 tbfocus.com, 1 tbi.equipment, 1 tbi.systems, 1 @@ -142419,6 +142394,8 @@ tcmk-tomsk.ru, 1 tcnapplications.com, 1 tco.zapto.org, 1 tcoa.tk, 1 +tcousin.com, 1 +tcousin.fr, 1 tcp.com, 1 tcpdata.com, 1 tcpride.org, 1 @@ -142426,6 +142403,7 @@ tcproducer.xyz, 1 tcptun.com, 1 tcr-ees.com, 1 tcrecord.org, 1 +tcrid.com, 1 tcspartner.eu, 1 tcttire.com, 1 tcuprs.com, 1 @@ -142484,17 +142462,17 @@ tea.codes, 1 tea.in.th, 1 teablr.com, 1 teach.gq, 1 -teachbase.ru, 1 teachbiz.net, 1 teachercall.kr, 1 teachercreatedmaterials.com, 0 -teachermommylife.com, 1 +teachermommylife.com, 0 teachernewsbd.com, 1 teacherph.com, 1 teacherpics.com, 1 teacherquinten.com, 1 teacherquotes.gq, 1 teachersasap.info, 1 +teachersplanner.org, 1 teachforall.org, 1 teaching-certification.com, 1 teachingamericanhistorymd.net, 1 @@ -142527,6 +142505,7 @@ team-atomic.tk, 1 team-azerty.com, 1 team-bbd.com, 1 team-building.tirol, 1 +team-clash.com, 1 team-cut.tk, 1 team-darkness.tk, 1 team-eklund-motorsport.tk, 1 @@ -142573,7 +142552,6 @@ teamengland.tk, 1 teamfriet.nl, 1 teamgoal1.com, 1 teamhd.org, 1 -teamhealth.com, 1 teamhinkleyc.com, 0 teamhybrid.com, 1 teamhybridforums.com, 1 @@ -142661,6 +142639,9 @@ teamsignia.com, 1 teamskillevolution.com, 1 teamsomeday.tk, 1 teamstarbugs.de, 1 +teamsterhomeadvantage.com, 1 +teamstersvip.com, 1 +teamstersvipair.com, 1 teamsudan.cf, 1 teamtheory.io, 1 teamtirith.com, 1 @@ -142762,7 +142743,7 @@ techarchive.tk, 1 techarkansas.tk, 1 techask.it, 1 techbelife.com, 1 -techboostclark.com, 1 +techboi.com.br, 1 techbrawl.org, 1 techbridge.jp, 1 techbuz.net, 1 @@ -142788,6 +142769,7 @@ techday.co.nz, 1 techday.co.uk, 1 techday.com, 1 techday.com.au, 1 +techday.ie, 1 techday.in, 1 techdayca.com, 1 techdirt.com, 1 @@ -142894,6 +142876,7 @@ technikoma.social, 1 technikplanet.de, 1 techniqueelevage.ddns.net, 1 techniquetechs.com, 1 +technischeserviceassen.nl, 1 techno-utopia.com, 1 technoairlines.com, 0 technoartstone.bg, 1 @@ -142955,7 +142938,7 @@ technopedia.gq, 1 technorthdakota.tk, 1 technosafebg.com, 1 technosapien.ml, 1 -technosoftware.com, 1 +technosoftware.com, 0 technospeakco.com, 1 technospiritindia.com, 1 technostone.tk, 1 @@ -143158,6 +143141,7 @@ teekadeus.com, 1 teekaymedia.tk, 1 teeko.cc, 1 teektalk.org, 1 +teelam.com, 1 teemill.com, 1 teemo.gg, 1 teemo.love, 1 @@ -143253,7 +143237,6 @@ tekmarc.com, 1 tekme.pt, 1 teknashop.com, 1 teknik-sipil.tk, 1 -teknikaldomain.me, 1 teknikhjalpen.ax, 1 tekniksnack.se, 1 tekniksomine.com.tr, 1 @@ -143264,7 +143247,6 @@ teknoforums.com, 1 teknoharekat.com, 1 teknokanguru.com.tr, 1 teknoleet.com, 1 -teknologipendidikan.id, 1 teknologipendidikan.or.id, 1 teknomarko.com, 0 teknon.tk, 1 @@ -143301,6 +143283,7 @@ telconews.co.nz, 1 telconews.co.uk, 1 telconews.com, 1 telconews.com.au, 1 +telconews.ie, 1 telconews.in, 1 teldak.pt, 1 teldoop.my.id, 0 @@ -143308,6 +143291,7 @@ tele-alarme.ch, 1 tele-assistance.ch, 0 tele-points.net, 1 tele-teen.ru, 1 +tele.wiki, 1 tele2vaxel.se, 1 teleafrica.ga, 1 telealarme.ch, 0 @@ -143476,6 +143460,7 @@ temnikova.tk, 1 temogroup.net, 1 temoinfidele.fr, 1 temonews.org, 1 +temovision.com, 1 temp-lars.army, 1 temp.pm, 1 tempa.com.ua, 1 @@ -143547,7 +143532,6 @@ tender.run, 1 tendermint.com, 1 tenderned.nl, 1 tenderwizard.com, 1 -tendiestown.com, 1 tendiris.ga, 1 tendmed.com.br, 1 tendo.com, 1 @@ -143563,6 +143547,7 @@ tenfeetsquare.net, 1 tenfingerscollective.tk, 1 tengdi.com, 1 tengodetodo.tk, 1 +tengoping.com, 1 tenhourguy.com, 1 tenibac.com, 1 tenibacgraphion.com, 1 @@ -143604,7 +143589,6 @@ tenshokudo.com, 1 tenshokufair.jp, 1 tensor.trade, 0 tent.io, 1 -tenta.com, 1 tentacle.monster, 1 tentacle.net, 1 tentacletank.com, 1 @@ -143626,6 +143610,7 @@ tenzorpro.com, 0 teoassessoria.com.br, 1 teoitaly.com, 1 teoletextsq.tk, 1 +teolino.eu, 1 teologia.promo, 0 teomahk.de, 1 teoria.com, 1 @@ -143653,6 +143638,7 @@ tequilaavion.com, 1 tequilamessenger.com, 1 tequilazor.com, 1 terabyte.services, 1 +terabyte.systems, 1 terabyteharddrive.net, 1 teracloud.at, 1 teradatta.ga, 1 @@ -143728,7 +143714,7 @@ terosclient.de, 1 terovania.com, 1 terovania.de, 1 terpelpanama.com, 1 -terpotiz.net, 0 +terpotiz.net, 1 terra-di-mezzo.it, 1 terra-med.ga, 1 terra-x.net, 1 @@ -143782,7 +143768,6 @@ terrenosparainvertir.com, 1 terres-et-territoires.com, 1 terresmagiques.com, 0 terrimcaleerphotography.com, 1 -terriscope.com, 1 territoriesredress.gov.au, 1 territoriocuchero.tk, 1 territoriya-msk.ru, 1 @@ -143919,7 +143904,6 @@ testrack.com, 1 tests-and-tips.info, 1 tests-und-tipps.info, 1 tests.careers, 1 -tests.pp.ru, 1 tests.school, 1 tests.tips, 1 testscorpiogroup.net, 1 @@ -143941,7 +143925,6 @@ tether.com, 1 tethercasinos.io, 1 tetherkr.com, 1 tetherqr.com, 1 -tethys.fr, 1 tetonas.tk, 1 tetonka.ch, 1 tetorix.gq, 1 @@ -143965,7 +143948,6 @@ teufel.de, 1 teufelaudio.nl, 1 teufelswerk.net, 0 teulon.eu, 1 -teungedj.de, 1 teunmulder.tk, 1 teunstuinposters.nl, 1 teusink.eu, 1 @@ -143976,6 +143958,7 @@ teutonia08.de, 1 teva.ru, 0 teveblad.be, 1 teverzamelen.nl, 1 +tevhidmeali.com, 1 tewarilab.co.uk, 1 tewkesburyyoga.com, 1 tex-izol.ru, 1 @@ -143991,6 +143974,7 @@ texascourtreporter.com, 1 texascourtreporters.com, 1 texascredit.com, 1 texasdefender.org, 1 +texasdesignstudio.com, 1 texasdivorceforall.com, 1 texasgynecomastia.com, 1 texashealthtrace.gov, 1 @@ -144003,7 +143987,7 @@ texasparkinglotstriping.com, 1 texaspaversoutdoorliving.com, 1 texasprosgaragedoors.com, 1 texasready.gov, 1 -texasschools.us, 0 +texasschools.us, 1 texasteam.tk, 1 texastitlesearch.com, 1 texasturfcourts.com, 1 @@ -144013,6 +143997,7 @@ texby.com, 1 texdot.gov, 1 texel.tk, 1 texfunding.com, 1 +texhfexlabs.de, 1 texicopolicenm.gov, 1 texier.mx, 1 texkings.com, 1 @@ -144023,14 +144008,12 @@ texnotroniks.tk, 1 texosmotr.tk, 1 text-to-video.ir, 1 text.is, 1 -text2html.pro, 1 textadventure.tk, 1 textamig.se, 1 textassistant.ga, 1 textcleaner.net, 1 textcounter.tk, 1 texteditor.co, 1 -textencrypted.com, 1 texter-linz.at, 1 textil-kyoto.tk, 1 textiles.bg, 1 @@ -144063,7 +144046,6 @@ tez.cool, 1 tezcam.tk, 1 tezfab.com, 1 teztarama.com, 1 -tf-amd.com.my, 1 tf-network.de, 1 tf2b.com, 1 tf2calculator.com, 1 @@ -144136,8 +144118,6 @@ th.search.yahoo.com, 0 thablubb.de, 1 thackba.de, 1 thackert.myfirewall.org, 1 -thadeie.gov.tt, 1 -thadert.com, 1 thai-massage.tk, 1 thai-residence.com, 1 thai-ridgeback.tk, 1 @@ -144196,13 +144176,12 @@ thanatoid.net, 1 thancon.com, 1 thanhnhua.vn, 1 thanhtrungmobile.vn, 1 -thankspenny.com, 1 +thankspenny.com, 0 thantra.tk, 1 thapduoc.com, 1 tharahkardu.in, 1 tharra.sa, 1 thaserv.de, 1 -thassoc.com, 1 thassos-world-web.tk, 1 thassos.tk, 1 that.host, 1 @@ -144224,16 +144203,8 @@ thax.cn, 1 thaxton.xyz, 0 thbl.fr, 1 thca.ca, 1 -thcdachs.com, 1 -thcdachs.de, 1 -thcdachs.eu, 1 -thcdachs.info, 1 -thcdachs.org, 1 thcdax.com, 1 thcdax.de, 1 -thcdax.eu, 1 -thcdax.info, 1 -thcdax.org, 1 the-ace.tk, 1 the-allmighty-mike.tk, 1 the-archive.io, 1 @@ -144347,7 +144318,9 @@ thearches.co.uk, 1 thearchimag.tk, 1 thearctichideaway.com, 1 thearkfamily.org, 1 +thearnabsen.com, 1 theartofcharm.com, 1 +theasciiway.com, 1 theasianshooters.com, 1 theastrocoach.com, 1 theataraxia.tk, 1 @@ -144392,6 +144365,7 @@ thebalancedsystem.org, 1 theballardpier.com, 1 thebalvenie.com, 1 thebamplayer.de, 1 +thebanksloganriver.com.au, 1 thebannekerfoundation.org, 1 thebannerstore.com, 1 thebasementdefender.com, 1 @@ -144399,7 +144373,6 @@ thebasementdefender.net, 1 thebasicstudio.com, 1 thebatesstudent.com, 1 thebathroomexchange.ga, 1 -thebatt.com, 1 thebaytalland.com, 1 thebcm.co.uk, 1 thebeatyard.nl, 0 @@ -144458,7 +144431,6 @@ theblog.cn, 1 theblogstarter.com, 1 theblondeabroad.com, 0 theblue.tk, 1 -thebluebanner.net, 1 theblueprint.global, 1 thebluered.net, 0 theblueroofcottage.ca, 1 @@ -144474,7 +144446,7 @@ theboats.pro, 1 thebobcoin.io, 1 thebodylanguageguide.tk, 1 thebodyshop.bg, 1 -theboltway.com, 1 +theboltway.com, 0 thebondyapp.com, 1 thebonerking.com, 1 thebook.pro, 1 @@ -144523,13 +144495,11 @@ thebutton2.com, 1 thebuttonpost.com, 1 thecabinetstore.com, 1 thecakeboxhampton.co.uk, 1 -thecaliberexchange.com, 1 thecalifornias.tk, 1 thecallingofmoses.com, 1 thecalmnessofblankspace.tk, 1 thecamels.org, 1 thecampanile.org, 1 -thecandidforum.com, 1 thecandystore.tk, 1 thecapital.pl, 1 thecardcloset.com, 1 @@ -144557,7 +144527,6 @@ thechallenge.fit, 1 thechannels.org, 1 thechatlinenumbers.com, 1 thechavs.xyz, 1 -thecheapairlinetickets.com, 1 thecheat.tk, 1 thecheese.co.nz, 1 thechels.uk, 1 @@ -144630,7 +144599,6 @@ thecultureclubhouse.com, 1 thecup.us, 1 thecureplainsong.tk, 1 thecurvyfashionista.com, 0 -thecustomdroid.com, 1 thecustomizewindows.com, 1 thecyberwire.com, 1 thecyclistchoice.com, 1 @@ -144658,7 +144626,6 @@ thedave.me, 1 thedave.photos, 1 thedawningofdarkness.tk, 1 thedayimetjesus.com, 1 -thedealerapp.co.uk, 1 thedeathmachine.tk, 1 thedeathofannakarina.tk, 1 thedebug.life, 1 @@ -144723,6 +144690,7 @@ theemploymentnetworkcla.com, 1 theender.net, 1 theendpoem.com, 1 theepankar.com, 1 +theepicstorm.com, 1 theescapegame.com, 0 theestatesatstgeorge.com, 1 theesuhlmann.de, 1 @@ -144775,7 +144743,6 @@ thefoodcops.com, 1 thefoodieblogger.com, 1 thefoot.tk, 1 theforbiddenfruitbar.co.uk, 1 -thefordhamram.com, 1 theforkedspoon.com, 1 thefountain.eu, 1 thefox.com.fr, 1 @@ -144843,7 +144810,6 @@ theglowclinic.nl, 1 thego2swatking.com, 1 thegoalinc.co.jp, 1 thegolden.com, 1 -thegoldengild.com, 1 thegoldenpreference.com, 1 thegoodboat.com, 1 thegoodegg.ie, 1 @@ -144906,6 +144872,7 @@ theheadplug.tk, 1 thehealinghorse.com, 1 thehealthshed.nl, 1 theheatingoilclub.co.uk, 1 +theheightsdurack.com.au, 1 thehelper.tk, 1 thehideoutrestaurant.com, 0 thehillstx.gov, 1 @@ -144914,7 +144881,6 @@ thehinesgaphideaway.com, 1 thehinhonline.com.vn, 1 thehivedesign.org, 1 thehoff.ddnss.de, 1 -thehofstrachronicle.com, 1 thehollandfam.com, 0 theholloways.tk, 1 thehomeassignment.com, 1 @@ -144968,11 +144934,9 @@ theinteracial.com, 1 theintercept.com, 0 theinternationalgeekconspiracy.eu, 1 theinvisibleman.tk, 1 -theislandtime.com, 1 theislandwellness.com, 1 theissen.io, 1 theisthelpline.com, 1 -theithacan.org, 1 theixiangrand.gr, 1 thejacksoninstitute.com.au, 1 thejakartapost.com, 1 @@ -144987,6 +144951,7 @@ thejoykiller.tk, 1 thejukebox.tk, 1 thejunkfiles.com, 1 thekalakriti.tk, 1 +thekamababa.com, 1 thekenyatimes.com, 1 thekev.in, 1 thekickassvirtualassistant.nl, 1 @@ -145153,7 +145118,6 @@ themprojects.com, 1 themrtaik.it, 1 themsuspokesman.com, 1 themtwashingtongroup.com, 1 -themurrayfamily.me.uk, 1 themusecollaborative.org, 1 themusicofchrisbulman.tk, 1 themusicthatnobodylikes.tk, 1 @@ -145172,6 +145136,7 @@ thendbcatalyst.com, 1 theneatgadgets.com, 1 thenerdshepherd.com, 1 thenest.se, 1 +thenetw.org, 1 theneverspodcast.com, 1 thenew3rs.org, 1 thenewannual.com, 1 @@ -145189,7 +145154,6 @@ thenichecast.com, 1 thenine.info, 1 theninenine.com, 1 thenobullshit.coach, 1 -thenocman.com, 1 thenolank.com, 1 thenordly.com, 1 thenorthschool.org.uk, 1 @@ -145359,6 +145323,7 @@ theprospectordaily.com, 1 theprowlernews.org, 1 thepsi.com, 1 theptclist.tk, 1 +thepuffprof.com, 1 thepulicegroup.com, 1 thepulpit.tk, 1 thepuppetdolls.tk, 1 @@ -145428,6 +145393,7 @@ therenegade.tk, 1 thereptiles.tk, 1 theresa-mayer.eu, 1 theresapolicewi.gov, 1 +thereservetownsville.com.au, 1 theresingles.tk, 1 therestaurantstore.com, 1 theresumeapp.com, 0 @@ -145441,7 +145407,6 @@ therevolutionist.tk, 1 therhetorical.ml, 0 therhodesresidences.com, 1 therichardsfamily.tk, 1 -therightmeal.nl, 1 therigy.com, 1 therigy.net, 1 theriverspecialist.com, 1 @@ -145491,9 +145456,7 @@ thesafetymag.com, 1 thesage.cf, 1 thesage.ga, 1 thesagresapartments.com, 1 -thesaltpacketguy.com, 1 -thesandb.com, 1 -thesarogroup.com, 0 +thesarogroup.com, 1 thesashcompany.com.au, 1 thesatriantoshow.tk, 1 thesaturdaypaper.com.au, 1 @@ -145533,7 +145496,6 @@ theshopally.com, 1 theshots.cz, 1 thesigit.tk, 1 thesignacademy.co.uk, 1 -thesignpostwsu.com, 1 thesilentfew.tk, 1 thesilentlink.org, 1 thesilentplanet.tk, 1 @@ -145554,12 +145516,14 @@ thesissurvey.gq, 1 thesistraffic.com, 1 thesiterank.com, 1 theskincourse.com, 1 +theskippingbeats.com, 1 thesleepdoctor.com, 0 theslotz.com, 1 theslotz1.co, 1 theslotz1.uk, 1 thesmartconsumer.com, 1 thesmexperiences.com, 1 +thesocialcopywriter.com, 1 thesocialitefamily.com, 0 thesocialmediacentral.com, 1 thesocialsyndicate.com, 1 @@ -145580,7 +145544,6 @@ thespittake.com, 1 thespoiler.co.il, 1 thestandards.tk, 1 thestatementjewelry.com, 1 -thesteins.org, 0 thestellahouse.com, 1 thestockoasis.com, 1 thestonestudio.in, 1 @@ -145603,7 +145566,6 @@ thesuffolkjournal.com, 1 thesugargirls.com, 1 thesultans.tk, 1 thesunflower.com, 1 -thesuntease.com, 1 thesupersunday.tk, 1 thesuppercircle.com, 1 thesupportplatform.org.uk, 1 @@ -145633,7 +145595,6 @@ thethreepercent.marketing, 1 thethymevortex.zapto.org, 1 theticker.org, 1 thetimdowling.co, 1 -thetimehotels.com, 1 thetinylife.com, 1 thetipo.eu, 1 thetipo.it.eu.org, 1 @@ -145706,7 +145667,6 @@ theverybusyoffice.co.uk, 1 thevetstop.co.uk, 1 thevictorianemporium.com, 1 thevillageok.gov, 1 -thevillasatparkaire.com, 1 thevine.one, 1 thevintagenews.com, 0 theviolenceofdevelopment.com, 1 @@ -145723,7 +145683,6 @@ thevoya.ga, 0 thewagesroom.co.uk, 1 thewalkerz.tk, 1 thewallet.today, 1 -thewarehousefellowship.org, 1 thewarwhoop.com, 1 thewatchdog.com.br, 1 thewaterfrontpoole.com, 1 @@ -145739,6 +145698,7 @@ thewebguru.net, 1 thewebmasters.tk, 1 thewebsitemarketingagency.com, 1 theweddingfit.com, 1 +thewedgemethodai.com, 1 theweed.tk, 1 theweightlossmedics.co.uk, 1 thewellbeingarchitect.ie, 1 @@ -145763,7 +145723,6 @@ thewisemangroup.com, 1 thewish.ml, 1 thewish.tk, 1 thewolfpacket.org, 1 -thewolseley.com, 1 thewomaninbloom.com, 1 thewombatsict.com.au, 1 thewomen.tk, 1 @@ -145904,7 +145863,7 @@ thinxtream.com, 1 thirard.com, 1 thirdbearsolutions.com, 0 thirdgenphoto.co.uk, 1 -thirdman.auction, 0 +thirdman.auction, 1 thirdwave.tk, 1 thirdwaveanalytics.com, 1 thirdwaverevenue.com, 1 @@ -145937,6 +145896,7 @@ thisistina.de, 1 thisistina.nl, 1 thisistwice.tk, 1 thisiswhywemom.com, 1 +thisline.eu, 1 thismatter.com, 1 thismumdoesntknowbest.com, 1 thispageisup.com, 1 @@ -145944,19 +145904,23 @@ thispageisup.net, 1 thisquarterly.sg, 1 thisserver.dontexist.net, 1 thisuniverse.tk, 1 +thiswasntinthebrochure.wtf, 1 thisyear.jp, 1 thitat.net, 1 thitruongsi.com, 1 thl.com, 1 thlautogarage.nl, 1 +thlfoods.com, 1 thmarch.co.uk, 1 thn.la, 1 thoenesfamilierecht.nl, 1 thoged.com, 1 thok.de, 1 +thol.com.vn, 1 tholab.io, 1 tholcomb.com, 1 thole.org, 1 +tholgym.com.vn, 1 thom4s.info, 1 thoma.uk, 1 thomalaudan.de, 1 @@ -146118,6 +146082,7 @@ threatint.uk, 1 threatint.zone, 1 threatlabs.eu, 1 threatlabs.nl, 1 +threatmeld.ai, 1 threatnix.io, 1 threatobserver.com, 1 threatutic.gq, 1 @@ -146152,6 +146117,7 @@ threewire.com, 0 threexxx.ch, 1 threv.net, 1 thriftdiving.com, 1 +thriftstore.gr, 1 thriftywp.com, 1 thrillernyc.com, 0 thrillkill.tk, 1 @@ -146184,7 +146150,6 @@ thscpac.org, 1 thsecurity.cz, 1 thtcmaps.com, 1 thuban.me, 1 -thuenhapho.com, 1 thues.eu, 1 thugcityrecords.tk, 1 thuisverplegingvandermeiren.be, 1 @@ -146229,6 +146194,7 @@ thymesavorpdx.com, 1 thyroidheadnecksurgery.com, 1 thyroidsurgery.com.sg, 1 ti-aiuto.io, 1 +ti-bill.ca, 1 ti-coast.com, 1 ti-js.com, 1 ti-nuage.fr, 1 @@ -146238,7 +146204,6 @@ ti780.com, 1 tiadolores.com.br, 1 tiagocasalribeiro.ml, 1 tiagomoraismorgado.tk, 1 -tiagomoreira.pt, 1 tiagoneves.tk, 1 tiagonunes.pt, 1 tiagosimao.com, 1 @@ -146285,6 +146250,7 @@ tibek-cnc-technik.de, 1 tiberian.tk, 1 tibetanmalashop.com, 1 tibiarock.tk, 1 +tibill.ca, 1 tibinonest.me, 1 tibipg.com, 1 tible.com, 1 @@ -146326,12 +146292,9 @@ ticketmeo.com, 1 ticketmorocco.com, 1 ticketpay.jp, 1 ticketpro.ca, 1 +ticketroster.com, 1 tickets2004.tk, 1 -ticketscheapairfare.com, 1 -ticketscheapairline.com, 1 -ticketscheapflights.com, 1 -ticketslover.com, 1 -ticketsolve.com, 1 +ticketsolve.com, 0 ticketsource.co.uk, 1 ticketsource.eu, 1 ticketsource.io, 1 @@ -146356,6 +146319,7 @@ tida.ge, 1 tidal.ninja, 1 tidal.zone, 1 tidalru.sh, 1 +tidalrush.de, 1 tide-the-knot.com, 1 tide.co, 1 tide.com, 1 @@ -146457,7 +146421,6 @@ tigernero.duckdns.org, 1 tigernewspaper.net, 1 tigernode.com, 1 tigerprop.com, 1 -tigerroofpa.com, 1 tigerspike.co.uk, 1 tigerspike.com, 1 tigerspike.com.au, 1 @@ -146567,6 +146530,7 @@ timberjoineryperth.com.au, 1 timberlinefcu.org, 1 timbertec.com, 1 timbishopartist.com, 1 +timbrica.com, 1 timbrust.de, 1 timcamara.com, 1 timco.cloud, 1 @@ -146582,7 +146546,7 @@ time-business.tk, 1 time-hotel.cf, 1 time-killers.tk, 1 time-pro.de, 1 -time.am, 1 +time.am, 0 time.cy, 1 time.ge, 1 time.gov, 1 @@ -146591,6 +146555,7 @@ time.ly, 1 time.sh, 1 time2060.ru, 1 time2choose.com, 1 +time2time.ru, 1 timeai.io, 1 timebomb.tk, 1 timebookings.cf, 1 @@ -146633,8 +146598,8 @@ timersuite.com, 1 timertomato.com, 1 timerway.com, 1 timescrypto.com, 1 -timesdelphic.com, 1 timesedlen.dk, 1 +timeseller.ru, 1 timeserver0.de, 1 timeserver1.de, 1 timeserver2.de, 1 @@ -146674,7 +146639,6 @@ timmcclure.ca, 1 timmdek.co.za, 1 timmerbedrijfpauel.nl, 1 timmermansadministratie.nl, 1 -timmistudio.com, 1 timmyrs.de, 1 timnash.co.uk, 1 timnegocia.com.br, 0 @@ -146682,12 +146646,10 @@ timnextgen.com.ph, 1 timniclasdemisch.de, 1 timniclasdemisch.eu, 1 timo-viveen.nl, 1 -timochan.cn, 1 timogrossenbacher.ch, 1 timonenko.cf, 1 timonline.tk, 1 timonrieger.de, 0 -timopark.com, 1 timosfoodbar.nl, 1 timotheeduran.com, 1 timotheories.gr, 1 @@ -146761,7 +146723,6 @@ tinmouthvt.gov, 1 tinneke.tk, 1 tinnhanhvietnam.tk, 1 tino-dtb.de, 1 -tinselandtwigllc.com, 1 tint.edu.in, 1 tintamas.tk, 1 tinte24.de, 1 @@ -146796,6 +146757,7 @@ tinyhousefinance.com.au, 1 tinylan.com, 1 tinylink.cf, 1 tinylotta.com, 1 +tinypixels-app.com, 1 tinyproxy.cf, 1 tinyproxy.ga, 1 tinyspeck.com, 1 @@ -146959,7 +146921,7 @@ tjzzz.com, 1 tk-its.net, 1 tk-its.org, 1 tk2net.com, 1 -tkach.in.ua, 1 +tk3ka.ru, 1 tkacz.pro, 1 tkafinearts.net, 1 tkanemoto.com, 0 @@ -147046,6 +147008,7 @@ tmbergtmberg.ml, 1 tmbergtmberg.tk, 1 tmbpublicite.com, 1 tmbservis.cz, 1 +tmc-consulting.com, 1 tmc.com.mt, 1 tmcjobs.com, 1 tmcrew.org, 1 @@ -147073,6 +147036,7 @@ tmpraider.net, 1 tmredondela.tk, 1 tmrservices.net, 1 tmshea.com, 1 +tmslr.org, 1 tmstats.fr, 1 tmt.band, 1 tmtanalysis.com, 1 @@ -147109,6 +147073,7 @@ tnt-21.com, 1 tnt.construction, 0 tnt2k.de, 1 tntbooks.ca, 1 +tntcars.pl, 1 tntware.com, 1 tnurocancer.com, 1 tnusedoil.gov, 1 @@ -147153,6 +147118,7 @@ tobias-picha.de, 1 tobias-sachs.de, 1 tobias-weidhase.de, 1 tobias.gr, 1 +tobias4.com.au, 1 tobiasbrunner.net, 1 tobiasconradi.com, 1 tobiase.de, 1 @@ -147233,7 +147199,6 @@ toddmclauchlin.ml, 1 toddmissiontx.gov, 1 toddvbanks.com, 1 todeva.com, 1 -todo.is, 0 todobus.tk, 1 todobuscadores.tk, 1 todocracy.com, 1 @@ -147270,6 +147235,7 @@ toeverynation.com, 1 tofa-koeln.de, 1 tofilmhub.com, 1 tofliving.nl, 1 +toformat.com, 1 tofu.cf, 1 tofu.kim, 1 tofuixi.com, 1 @@ -147308,6 +147274,7 @@ tokdeccor.com.br, 1 tokelaunso.tk, 1 token.im, 1 token2049.com, 1 +tokenfellow.com, 1 tokenizedhq.com, 1 tokenlabs.network, 1 tokenlon.im, 0 @@ -147391,6 +147358,7 @@ tollmanz.com, 0 tollywood.ga, 1 tolmaidis.com, 1 tolnavar.hu, 1 +tologa-location.be, 1 tolplaatwerk.nl, 1 tolstoevsky.tk, 1 tolucreaciones.com, 1 @@ -147488,7 +147456,6 @@ tomli.blog, 1 tomm.yt, 1 tomma.tk, 1 tommasocornelio.com, 1 -tommi.space, 1 tommic.eu, 0 tommybrown.ru, 1 tommyemo.com, 1 @@ -147516,7 +147483,6 @@ tomphill.co.uk, 0 tomrichards.net, 1 tomrunting.pro, 1 toms.ovh, 1 -tomschlick.com, 1 tomsdevsn.me, 1 tomsgastroguide.com, 1 tomsk-news.net, 1 @@ -147564,6 +147530,7 @@ toneelaccent.tk, 1 tonegidoarchief.nl, 1 toneknowledge.com, 1 tonemadison.com, 0 +toneofchoice.se, 1 toner24.at, 1 toner24.co.uk, 1 toner24.es, 1 @@ -147578,7 +147545,6 @@ tonerklick.de, 1 tonerkurier.de, 1 tonermaus.de, 1 tonermonster.de, 1 -tonetempo.com, 1 tonex.de, 1 tonex.nl, 1 tongdaiviettel.com.vn, 1 @@ -147669,6 +147635,7 @@ toolspain.tk, 1 toolsu.com, 1 tooltester.com, 1 tooltot.com, 0 +toolynest.com, 1 toolzone.cz, 1 toom-baumarkt.de, 1 toom.de, 1 @@ -147817,7 +147784,6 @@ topeyechang.com.tw, 1 topfd.net, 1 topfivepercent.co.uk, 1 topflightwildlife.com, 1 -topfood.club, 1 topfrags.pl, 1 topfreeporn.com, 1 topfx.com, 1 @@ -147825,6 +147791,7 @@ topfx.com.sc, 1 topgallant.gq, 1 topgoogle.com, 1 topgshop.ru, 1 +topgsm.pl, 1 toph.co, 1 tophat.studio, 1 tophatpuffin.com, 0 @@ -147865,6 +147832,7 @@ topmuzika.sk, 1 topnado.tk, 1 topnec.org, 1 topnet.tk, 1 +topnetmart.com, 1 topnews.gq, 1 topnews333.cf, 1 topnews333.tk, 1 @@ -147887,7 +147855,6 @@ toppdejtingsidor.com, 1 toppercan.es, 1 topporn.me, 1 topprice.ua, 1 -toppsnfts.com, 1 toppstugansundbyberg.se, 1 topradiosbrasil.tk, 1 toprandi.com, 1 @@ -147971,7 +147938,6 @@ torch-fan.site, 1 torch.security, 0 torchbearer.tk, 1 torchmc.ru, 1 -torchonline.com, 1 tordenskjold.de, 1 tordo.net, 1 toreni.us, 1 @@ -148099,7 +148065,6 @@ tosshi-life.com, 1 tossitaway.tk, 1 tosteberg.se, 0 tot.money, 0 -totaku.ru, 0 total-chaos.tk, 1 total-deco.eu, 1 total-destruction.tk, 1 @@ -148152,7 +148117,6 @@ totch.de, 1 tote.co.uk, 1 totemgames.tk, 1 tothetopmentoring.com, 1 -totheweb.com, 1 totlan.tk, 1 totnastic.tk, 1 toto-realestate.com, 1 @@ -148164,7 +148128,6 @@ totora.tk, 1 totositetv.net, 1 totp.fyi, 1 totsglobal.com, 1 -tottalbattle.com, 1 tottoya.com, 1 totugo.com, 1 totuus.sk, 1 @@ -148194,6 +148157,7 @@ touchtable.nl, 1 touchweb.be, 1 touchweb.ch, 1 touchweb.fr, 1 +toufy.me, 1 tough-construction.com, 1 toughcodes.com, 1 toughcoding.net, 1 @@ -148560,7 +148524,6 @@ townofwordenwi.gov, 1 townofwrightstownwi.gov, 1 townofwyomingwi.gov, 1 townresults.ga, 1 -townscorereport.com, 1 townsendhotel.com, 1 townshendvt.gov, 1 townshipoflower.org, 1 @@ -148602,7 +148565,6 @@ toysplace.ml, 1 toystory3.ga, 1 toyventure.ga, 1 tozawa.site, 1 -tozdev.com, 1 tp-genie.com, 1 tpa.or.th, 0 tpala-pg.fr, 1 @@ -148624,7 +148586,6 @@ tpedu.nl, 1 tpetrov.com, 1 tpf.hk, 1 tpgozd.si, 1 -tpi-polytechniek.com, 1 tpiada.tk, 1 tpk-parma.ru, 1 tpkbathrooms.com.au, 1 @@ -148670,6 +148631,7 @@ trace.guru, 1 trace.moe, 1 trace2race.com, 1 tracebit.com, 1 +tracecompass.com, 1 traceflix.com, 1 traceheatinguk.co.uk, 1 tracelight.io, 0 @@ -148724,7 +148686,6 @@ trackstaging.io, 1 tracktunnel.com, 1 trackura.com, 1 trackyourlogs.com, 1 -tractareautocluj.ro, 1 tractariauto.tk, 1 tractarimvbcluj.ro, 1 tractive.com, 1 @@ -148779,7 +148740,6 @@ tradeshowfreightservices.com, 1 tradesolution.no, 1 tradesrenovations.ca, 1 tradet.fi, 1 -tradetaurex.com, 1 tradeview.eu, 1 tradeville.ro, 1 tradewindsdental.com, 1 @@ -148787,7 +148747,6 @@ tradewithestonia.com, 0 tradexbank.ch, 1 tradexpress.ch, 1 tradezlist.tk, 1 -tradgardsmart.se, 1 tradik.com, 1 tradinews.com, 1 tradinews.fr, 1 @@ -148856,7 +148815,6 @@ trahnisoseda.tk, 1 trail-alps.ch, 1 trail-alps.com, 1 trail.pink, 1 -trailblazercommunitygroups.com, 1 trailblazers.tk, 1 trailcloud.ink, 1 trailerparty.com, 1 @@ -149016,6 +148974,7 @@ transfez.com, 0 transfigurewizard.com, 1 transformaniatime.com, 1 transformation.gouv.fr, 1 +transformation.tf, 1 transformationsnetzwerk-muensterland.de, 1 transformersmmdb.tk, 1 transformyourmarketing.com, 1 @@ -149149,6 +149108,7 @@ traslocatore.roma.it, 1 traslochi-trasporti-facchinaggio.it, 1 traslochi.eu, 1 traslochi.napoli.it, 1 +traslochi.umbria.it, 1 traslochiinternazionali.it, 1 trasloco.milano.it, 1 traslocoeasy.it, 1 @@ -149195,7 +149155,7 @@ travel4wellbeing.com, 1 traveladdiction.tk, 1 traveladventure.ml, 1 travelafricamag.com, 1 -travelairtravel.com, 1 +travelaiengineer.pro, 1 travelamm.com, 1 travelanchor.ga, 1 travelandtourism.tk, 1 @@ -149212,7 +149172,6 @@ travelcellar.ga, 1 travelcenter.tk, 1 travelchannel.ml, 1 travelcharm.ga, 1 -travelcheapdeals.com, 1 travelchinawith.me, 1 travelcircus.ga, 1 travelclinic.ml, 1 @@ -149222,6 +149181,7 @@ travelcollect.ga, 1 travelcollections.ga, 1 travelcolor.ga, 1 travelcompany.tk, 1 +travelcore.io, 1 travelcrown.ga, 1 traveldir.ga, 1 traveldodge.ga, 1 @@ -149240,7 +149200,6 @@ travelfashionlife.com, 1 travelfeature.ga, 1 travelfield.org, 1 travelfiesta.ga, 1 -travelflighthotel.com, 1 travelfoot.com, 1 travelfriend.tk, 1 travelfusion.com, 1 @@ -149383,6 +149342,7 @@ treasureboxhomes.org, 1 treasurecoastconnector.com, 1 treasureislandbeads.ga, 1 treasuretrooperguide.tk, 1 +treasuretrove.nl, 1 treasury.gov.lk, 1 treasurydirect.gov, 1 treasuryhunt.gov, 0 @@ -149392,6 +149352,7 @@ treatyoakdental.com, 1 treatyoself.com.au, 1 trebilfoundationsystems.com, 1 trebnie.nl, 1 +treborintl.com, 1 trecebits.com, 1 tredegar.com, 1 tredegarsurfaceprotection.com, 0 @@ -149401,7 +149362,7 @@ tree.gdn, 1 tree0.xyz, 1 treebaglia.xyz, 1 treecycle.com.au, 1 -treehousemidigama.com, 0 +treehousemidigama.com, 1 treehouseresort.nl, 1 treeinspection.com, 1 treeliss.com.br, 1 @@ -149528,9 +149489,10 @@ trezy.net, 1 trfmn.gov, 1 trharitasi.com, 1 trhastane.com, 1 -trhknih.cz, 1 +trhknih.cz, 0 tri.gg, 1 triad.earth, 1 +triadstop.com, 1 triage.clinic, 1 triage.md, 1 triageclinic.com, 1 @@ -149586,7 +149548,6 @@ tributh.ml, 1 tributh.net, 1 tributh.tk, 1 tributoconsuegra.tk, 1 -tricare.mil, 1 tricefy4.com, 1 tricherenligne.com, 1 triciaree.com, 0 @@ -149685,6 +149646,7 @@ trinitywernersville.org, 1 trink-und-partyspiele.de, 1 trinnes.net, 1 trintocpenalcu.com, 1 +triola-menuiseries.com, 1 triolait.ca, 1 triolait.com, 1 triollo-rural.tk, 1 @@ -149729,7 +149691,6 @@ trippati.com, 1 trippers.info, 1 trippinktattoos.com, 1 trips4foodies.com, 1 -tripstorome.com, 1 triptap.ru, 1 triptravels.tk, 1 triptych.is, 1 @@ -149760,7 +149721,6 @@ triumph-stuttgart.de, 1 triumphgroup.com, 1 triumphmotorcycles.co.uk, 1 triventsc.com, 1 -trivid.in, 1 trividtech.in, 1 triwan.sk, 1 trixi.com, 1 @@ -149774,6 +149734,7 @@ trkhosting.ga, 1 trkmakine.com.tr, 1 trkpuls.tk, 1 trksystems.com, 1 +trkye.com, 1 trlu867459.eu.org, 1 trmgo.de, 1 tro.bar, 1 @@ -150278,7 +150239,7 @@ tssvbraga.nl, 1 tst-band.tk, 1 tstr.io, 1 tstrom.net, 1 -tsu.re, 1 +tsu.re, 0 tsuda-dental-ortho.info, 1 tsudakahama.tech, 1 tsueri.cloud, 1 @@ -150338,8 +150299,8 @@ ttfscu.com, 1 ttill.de, 1 ttjnextgenjewels.com, 1 ttkia.com, 1 +ttl.space, 1 ttlet.com, 1 -ttlg.io, 1 ttluoli.com, 1 ttm.jp, 1 ttnmpls.org, 1 @@ -150351,7 +150312,6 @@ ttpwned.com, 1 ttr-home.com, 1 ttr3.eu, 1 ttrade.ga, 1 -tts-assessments.com, 1 ttshapn.org, 1 ttshnurses.org, 1 ttspttsp.com, 1 @@ -150393,7 +150353,6 @@ tubeview.ga, 1 tubexxxone.com, 1 tubing.cf, 1 tublat.com, 1 -tubs4fun.co.uk, 1 tubsof.fun, 1 tubul.net, 1 tubuscador.tk, 1 @@ -150411,7 +150370,6 @@ tucsonfcu.com, 1 tucsonpcrepair.com, 1 tucsonsewerscopes.com, 1 tucuatro.com, 1 -tucuxi.org, 1 tudatosantejmentesen.hu, 1 tudatosdori.hu, 1 tudinerito.tk, 1 @@ -150430,7 +150388,6 @@ tuerkei-immobilien.tk, 1 tuespr.com, 1 tuestilo.nl, 1 tuev-hessen.de, 1 -tufelicitacion.info, 1 tuffdall.as, 1 tuffmail.net, 1 tuffsruffs.se, 1 @@ -150452,6 +150409,7 @@ tuingereedschappen.net, 0 tuinhout-compleet.nl, 1 tuinieren.tk, 1 tuinmeubelkorting.nl, 1 +tuinvogelsenzo.nl, 1 tuitle.com, 1 tuja.hu, 1 tujardin.casa, 1 @@ -150495,11 +150453,11 @@ tulipzulip.org, 1 tulisan.tk, 1 tull.tk, 1 tuller.tk, 1 +tullphone.com.mx, 1 tulocura.tk, 1 tulosleep.com, 1 tulpawiki.org, 1 tulsa.tech, 1 -tulsafathers.com, 1 tulsameetingroom.com, 1 tulsaworld.com, 1 tulumcosmeticos.com.br, 1 @@ -150568,8 +150526,10 @@ tuppenceworth.ie, 1 tuppennysfireplace.com, 1 tuppersexmadrid.com.es, 1 tupperwaresalamanca.com, 1 +tuprag.com.tr, 1 tupsicoayuda.com, 0 tupugoya.org, 1 +tupyia.com, 1 tur.bo, 1 tur17.com, 1 turacoz.com, 1 @@ -150687,12 +150647,11 @@ turnali.tk, 1 turnalikoyu.tk, 1 turnaroundinsights.com, 1 turnbacktogod.com, 1 -turncircles.com, 1 turneragsupply.com, 0 turneroregon.gov, 1 turnet.tk, 1 turnierplanung.com, 1 -turnkey-ips.com, 1 +turnkey-ips.com, 0 turnkeycybersecurityandprivacysolutions.com, 1 turnningpoint.xyz, 1 turnoffmonitor.com, 1 @@ -150711,7 +150670,6 @@ turple.com, 1 turquoise.health, 1 turquoisetassel.com, 1 turretlabs.io, 1 -tursiae.org, 1 turtle.ai, 0 turtle.ky, 1 turtlecomputers.net, 1 @@ -150786,7 +150744,6 @@ tuttleok.gov, 1 tuttoandroid.net, 1 tuttohackintoshcydiajailbreak.org, 1 tuttonotizie.eu, 1 -tuttopappagalli.it, 1 tuttoperlestetica.com, 1 tutu.green, 1 tutu.ro, 1 @@ -150797,6 +150754,7 @@ tuulialaine.com, 1 tuva-news.net, 1 tuvankinhdoanhonline.com, 1 tuvanmat.com, 1 +tuvi.es, 1 tuwaner.com, 1 tuwima48.pl, 1 tuxamca.com, 1 @@ -150868,6 +150826,7 @@ tvfans.tk, 1 tvfr.gov, 1 tvgsc.sg, 1 tvguide.com, 1 +tview.co.uk, 1 tvindia.tk, 1 tvipper.com, 1 tvk.tirol, 1 @@ -150903,7 +150862,6 @@ tvreviewer.tk, 1 tvs-autoserv.de, 1 tvs-virtual.cz, 1 tvseasons.tk, 1 -tvseries.info, 1 tvseznam.cz, 1 tvseznamcz.cz, 1 tvsheerenhoek.nl, 1 @@ -150919,7 +150877,6 @@ tvtvtv.cz, 1 tvyvideo.com, 1 tvzahist.com.ua, 1 tw-analytics.com, 0 -tw-louis.com, 0 tw.edu.pl, 1 tw.search.yahoo.com, 0 tw.sharp, 1 @@ -150962,6 +150919,7 @@ twfier.com, 1 twfwd.email, 1 twg2029.com, 1 twhc.org.au, 1 +twice.vn, 1 twidy.jp, 0 twidy.uk, 1 twigandolive.com, 1 @@ -151025,7 +150983,6 @@ twoandahalfvan.eu, 1 twobitbusker.com, 1 twobridges.co.uk, 1 twobrothersbbq.com, 0 -twobrothersinn.com, 1 twocantalk.ca, 1 twoconnect.com, 0 twocornertiming.com, 1 @@ -151061,21 +151018,24 @@ twslots.online, 1 twtf.org.uk, 1 twtr.email, 1 twwd.de, 1 +twzrd.xyz, 1 tx577.com, 1 txblackbeltacademy.com, 1 txbooster.com, 1 +txdesignremodel.com, 1 txferretrescue.org, 1 txfnews.com, 1 txguess.com, 1 txhb.gov, 1 txlocksmiththewoodlands.com, 1 +txn.co.jp, 1 txokachat.cc, 1 txryan.com, 1 txsgmemorial.org, 1 txsmartbids.gov, 1 txsmartbuy.gov, 1 txtd.io, 1 -txtdb.com, 0 +txtdb.com, 1 txtdirect.com, 1 txtdirect.dev, 1 txtdirect.io, 1 @@ -151092,7 +151052,6 @@ ty587.com, 1 ty5998.com, 1 ty613.com, 1 ty637.com, 1 -ty705.com, 0 ty723.com, 0 ty736.com, 1 ty791.com, 1 @@ -151177,6 +151136,7 @@ typinglounge.com, 1 typist.tech, 1 typosphere.fr, 1 typr.com, 1 +tyr-x.com, 1 tyr0wl.com, 1 tyrael.eu, 1 tyraga.ga, 1 @@ -151187,6 +151147,7 @@ tyres-mechanical.com.au, 1 tyresales.com.au, 1 tyrkey.tk, 1 tyrocity.com, 1 +tyrolit-abrasivegrains.com, 1 tyronega.gov, 1 tyroola.co.id, 1 tyroola.co.nz, 1 @@ -151385,7 +151346,6 @@ ubuntu-tr.net, 1 ubuntu18.com, 1 ubuntuproductions.fi, 1 ubutovo.ga, 1 -ubuy.ae, 1 ubwash.re, 1 ubytovanihyncice.cz, 1 ubytovnastrazske.sk, 1 @@ -151397,6 +151357,7 @@ ucaskernel.com, 1 ucb.com, 1 ucbconcierge.jp, 1 ucbostad.se, 1 +ucca.online, 1 uccbenefits.ca, 1 ucch.be, 0 uccisme.net.ua, 1 @@ -151488,6 +151449,7 @@ ueken-ob.com, 1 uel-thompson-okanagan.ca, 1 ueliexpress.ch, 1 uelzen.online, 1 +uem.org.in, 1 uerkheim.ch, 1 uesaz.com, 1 uesc.org, 1 @@ -151505,15 +151467,12 @@ uffo.cz, 1 uffserver.ml, 1 ufh.com.cn, 1 ufindme.at, 1 -ufirst.ro, 1 -ufirsthealth.com, 1 uflmsan.pt, 1 ufm.dk, 1 ufocentre.com, 1 ufoet.cn, 0 ufologiahistorica.tk, 1 ufologiaweb.tk, 1 -ufone.com, 1 ufone.net, 1 ufos.tk, 1 ufplanets.com, 1 @@ -151612,7 +151571,7 @@ ukde.berlin, 1 ukdefencejournal.org.uk, 1 ukdri.ac.uk, 1 ukem.co.uk, 1 -ukformify.co.uk, 1 +ukformify.co.uk, 0 ukforum.net, 1 ukhas.net, 1 ukimmigration.law, 1 @@ -151637,7 +151596,6 @@ ukosystudio.com, 1 ukozliku.cz, 0 ukpr.group, 1 ukpropertyrescue.com, 1 -ukpropertyretrofit.com, 1 ukraflora.ua, 1 ukrainci.com.ua, 1 ukraine-standart.com.ua, 1 @@ -151646,6 +151604,7 @@ ukrainegov.org, 1 ukraineoversight.gov, 1 ukrainians.ch, 1 ukrainianwall.com, 1 +ukrainisch-uebersetzer.berlin, 1 ukrainskie-konstrukcii.com.ua, 1 ukrajinski-novyny.cz, 1 ukrajinskinovyny.cz, 1 @@ -151737,10 +151696,12 @@ ultra-pro.ga, 1 ultra.law, 1 ultrabkk.com, 1 ultrablock.org, 1 +ultrabuilds.com, 1 ultracentr.ml, 1 ultracoupon.net, 1 ultrafine.cf, 1 ultrahang-maganrendeles.hu, 1 +ultrakbd.com, 1 ultralife.cf, 1 ultraman.tk, 1 ultraonline.ml, 1 @@ -151857,7 +151818,6 @@ unaware.tk, 1 unbabel.com, 1 unbanked.com, 1 unbelievableplaces.de, 1 -unbelievaboat.com, 1 unbioctium.com, 1 unbl.eu.org, 1 unblockat.tk, 1 @@ -151921,6 +151881,7 @@ underwaterasia.info, 1 underwear-fashion.tk, 1 underwood.tk, 1 underwoodpatents.com, 1 +underworldechoesrecords.com, 1 underworlds.tk, 1 underwriting.ai, 1 undesk.com.br, 1 @@ -151974,7 +151935,6 @@ ungovernable.men, 1 ungrafakta.cf, 1 ungrafakta.gq, 1 ungrafakta.tk, 1 -unhabitat.org, 1 unhappy.tk, 1 uni-arts.com, 1 uni-chem.rs, 1 @@ -152047,6 +152007,7 @@ uniex.pw, 1 unifashion.ro, 1 unifestal.com, 1 unifiednetwork.me, 1 +unifiedradios.com, 1 unifiedwellness.ca, 1 unifimf.com, 1 uniflow360.com, 1 @@ -152054,6 +152015,7 @@ uniforcele.com, 1 uniformd.co.uk, 1 uniformebateriasheliar.com.br, 1 unify.id, 1 +unigamity.com, 1 unihifi.com, 1 unihostbrasil.com.br, 1 unik.bg, 1 @@ -152143,7 +152105,6 @@ uniteasia.org, 1 united-bk.com, 1 united-commune.com, 1 united-dm.ml, 1 -united-schools.net, 1 united-trackmaniacs.tk, 1 united-trainers-league.tk, 1 united.com, 0 @@ -152155,6 +152116,7 @@ unitedbaby.fr, 1 unitedbusinessbank.com, 1 unitedcall.de, 1 unitedcyberdevelopment.com, 1 +unitedearth.one, 1 unitedkingdoms-guild.com, 1 unitedliners.com, 1 unitedlisbon.school, 1 @@ -152176,7 +152138,6 @@ uniteinhealth.org, 1 unitel2000.de, 0 unitencup.tk, 1 unither.com, 1 -unitil.com, 1 unitingwa.org.au, 0 unitir.gq, 1 unitizer.com, 1 @@ -152190,7 +152151,6 @@ unityconsciousnessbooks.com, 1 unityfactory.io, 1 unityor.gov, 1 unitysavannah.org, 1 -unityseguros.com, 1 unitysyndicate.tk, 1 unityvox.com, 1 uniuni.info, 1 @@ -152244,7 +152204,6 @@ universityhealthplans.com, 1 universityhousemates.co.uk, 1 universityhousemates.uk, 1 universityinmaryland.com, 1 -universityofbohol.edu.ph, 1 universityofedinburgh.org.uk, 1 universityofnarowal.ga, 1 universitystar.com, 1 @@ -152268,7 +152227,6 @@ unixauto.hu, 1 unixauto.ro, 1 unixauto.sk, 1 unixer.tk, 1 -unixforum.org, 1 unixhost.ga, 1 unixteam.de, 1 unixtime.date, 1 @@ -152322,7 +152280,6 @@ unobrindes.com.br, 1 unoccupyabq.org, 1 unocha.org, 1 unofficialbpb.tk, 1 -unolab.cz, 1 unomodels.com, 1 unoodostoques.tk, 1 unope.ml, 1 @@ -152335,7 +152292,6 @@ unos.fr, 1 unosconotros.com, 1 unovosti.tk, 1 unp.me, 1 -unpar.ac.id, 1 unparenting.com, 1 unpi06cannes.fr, 1 unpkg.com, 1 @@ -152387,7 +152343,6 @@ unternehmensberater-website.de, 1 unternehmensbewertung.pro, 1 unternehmerrat-hagen.de, 1 unternimmteam.de, 1 -untethereddog.com, 0 unti.me, 1 unti.tk, 1 untrading.org, 1 @@ -152431,7 +152386,6 @@ upaisa.com, 1 upakovka-podarkov.tk, 1 upandatom.biz, 1 upandrunningtutorials.com, 1 -upanh.org, 1 upar.org, 1 upay.uz, 1 upbad.com, 1 @@ -152480,6 +152434,7 @@ upgradeit.dk, 1 upgradeloans.com, 1 upgrades-and-options.com, 1 upgraid.ru, 1 +upgrow.com, 1 upguard-team.com, 1 upguard.com, 1 upguard.com.au, 1 @@ -152524,6 +152479,7 @@ upnorth.solutions, 1 uportal.tk, 1 uppercloud.cf, 1 upperglass.co.uk, 1 +uppergroup.co.za, 1 upperinc.com, 1 upperskagittribe-nsn.gov, 1 uppfinnarenc.tk, 1 @@ -152564,7 +152520,6 @@ upskill.cl, 1 upskilllearning.ml, 1 upskirtmania.tk, 1 upsocial.ga, 1 -upsocial.pp.ua, 1 upstaff.com, 1 upstairs.one, 1 upstart.com, 1 @@ -152682,6 +152637,7 @@ urbanwindows.ca, 1 urbanxdevelopment.com, 0 urbest.io, 1 urbex-bretagne.fr, 1 +urbex.com.au, 1 urbex.link, 1 urbexdk.nl, 1 urbinat.eu, 1 @@ -152801,7 +152757,6 @@ usabilis.com, 0 usability.com.gr, 1 usability.gov, 1 usacarry.com, 1 -usacontainerllc.com, 1 usacrime.com, 1 usadba.net.ru, 1 usadepo.com, 1 @@ -152869,6 +152824,7 @@ usdt0.to, 1 use1.net, 1 usebosin.gq, 1 usebubbles.com, 1 +usecarscout.com, 1 used-laptop.in, 1 used255.xyz, 1 usedoilfieldhouses.com, 1 @@ -152967,6 +152923,7 @@ uspory.cz, 1 uspower.us, 1 uspsblog.com, 0 uspsoig.gov, 1 +uspsolutions.at, 1 usrspace.at, 1 uss-atlas.de, 1 ussee.org, 1 @@ -152985,7 +152942,6 @@ ustaywell.com, 1 ustc.fun, 1 ustc.run, 1 ustg.net, 1 -ustoy.com, 1 ustr.gov, 1 ustreasuryetf.com, 1 ustugov.kiev.ua, 1 @@ -153152,7 +153108,6 @@ uxteam.com, 1 uxtly.com, 1 uy.search.yahoo.com, 0 uydutamircisiadana.com, 1 -uyghurian.com, 1 uygindir.ml, 1 uyguluyo.com, 1 uygur.org, 1 @@ -153221,7 +153176,6 @@ v2bv.net, 1 v2bv.win, 1 v2ex.com, 1 v2generalcontractors.com, 1 -v2x.sk, 1 v2xtls.org, 1 v36533.com, 1 v4itservices.com.au, 1 @@ -153271,11 +153225,11 @@ vacatecleaning.melbourne, 1 vacati0n.tk, 1 vacation-in-pisak.tk, 1 vacationfund.co, 1 -vacationsforcouples.com, 1 vacationswithheather.com, 1 vacaturesonline.nl, 1 vaccantcorner.ml, 1 vaccinateiowa.gov, 1 +vaccinatieregister.nl, 1 vaccine.gov, 1 vaccines.gov, 1 vaccinestats.net, 1 @@ -153288,6 +153242,7 @@ vaclan.tk, 1 vaclavambroz.eu, 1 vacorps.com, 1 vacpackmedical.net, 1 +vacs.network, 1 vacsafe.cc, 1 vacuna.gov, 1 vacunas.gov, 1 @@ -153308,6 +153263,7 @@ vadosware.io, 1 vadras.rs, 1 vadstudio.md, 1 vadstudio.site, 1 +vaeksthjulet.net, 1 vael.town, 1 vaerdivand.dk, 1 vaew.com, 1 @@ -153338,6 +153294,7 @@ vaibhavchatarkar.com, 0 vaidikapriya.pub, 0 vaiiya.org, 1 vail.gov, 1 +vailox.com, 1 vaindil.com, 1 vaioswolke.xyz, 0 vairuok.lt, 1 @@ -153425,7 +153382,6 @@ valhallastrengthsthbne.com.au, 1 valiakhmetov.tk, 1 valiant.finance, 1 valiantprep.org, 1 -valianttms.com, 1 valice.com.au, 1 valid.com, 0 validateleads.com, 1 @@ -153452,6 +153408,7 @@ valkohattu.fi, 1 valkoi-konyvtar.tk, 1 valkoi-ksk.tk, 1 valkova.net, 1 +valkyrthreatintel.com, 1 valladolidlempira.tk, 1 vallansuunta.net, 1 vallartense.tk, 1 @@ -153524,6 +153481,7 @@ value4coins.com, 1 valueaddedonline.com, 1 valuelinksoftware.com, 1 valuemax.com.sg, 1 +valuemetric.gr, 1 valuemomentum.com, 1 valuemyhome.co.uk, 1 valuemyhome.uk, 1 @@ -153612,6 +153570,7 @@ vandermotten.be, 1 vanderrijt.nl, 1 vanderstraeten.dynv6.net, 1 vanderzwet.net, 1 +vandeventures.net, 1 vandi.tk, 1 vandidaz.com, 1 vandiepen.com, 1 @@ -153719,7 +153678,6 @@ vapeshoppos.com, 1 vapetaclope.cf, 1 vapevine.ca, 1 vapex.pl, 1 -vapify.pl, 1 vaplantatlas.org, 1 vapocial.com, 1 vapogang.cz, 1 @@ -153841,11 +153799,14 @@ vault12.com, 1 vault12.io, 1 vault182.xyz, 1 vault81.de, 1 +vaultbrix.com, 1 vaultdoma.in, 1 vaulters.net, 1 vaulters.org, 1 +vaultguard.sh, 1 vaultify.club, 1 vaultlabs1226.com, 1 +vaultoy.com, 1 vaultproject.io, 0 vaults.me, 1 vaur.fr, 1 @@ -153860,7 +153821,6 @@ vaxbook.com, 1 vayaport.com, 1 vayaprecio.es, 1 vayavotarcolorado.gov, 1 -vaygren.com, 1 vazdemelloconsultoria.com.br, 1 vazon.pp.ua, 1 vb-barbara-beck.de, 1 @@ -153974,7 +153934,6 @@ vectorgroupltd.com, 1 vectorizenow.com, 1 vectorlabs.com, 1 vectortrack.com.au, 1 -vectorwish.com, 1 vectrafon.com, 1 vectrum.cf, 1 vedantalimited.com, 1 @@ -154003,7 +153962,7 @@ veg-leiden.nl, 0 veg.lv, 0 vega-is.com, 1 vega-rumia.com.pl, 1 -vegaforeducation.com, 0 +vegaforeducation.com, 1 vegalanguageacademy.ca, 1 vegan-essen.tk, 1 vegan-friendly.co.il, 1 @@ -154046,7 +154005,6 @@ vegvor.com, 1 vehicledocs.ie, 1 vehicleenquiry.service.gov.uk, 1 vehiclehistory.gov, 1 -vehicleinforcheck.com, 1 vehicleinfozone.com, 1 vehiclematsuk.com, 0 vehicletax.service.gov.uk, 1 @@ -154056,6 +154014,8 @@ veikkosimpanen.fi, 1 veiligesmartcities.nl, 1 veiligthuistwente.nl, 1 veilletechno-it.info, 1 +veist.net, 1 +veist.org, 1 veittech.xyz, 1 vejanoticias.com.br, 1 vejaparki.lv, 1 @@ -154109,6 +154069,7 @@ velosrealestate.gr, 1 velossa.gr, 1 velotours.ga, 1 velovelo.gq, 1 +veloxsuite.com, 1 velozavr.ru, 1 veloztaxi.com, 1 velpak21.com, 1 @@ -154121,6 +154082,7 @@ veluwegroenonderhoud.nl, 1 veluwerally2002.tk, 1 veluzian.com, 1 velvet-tarantula.tk, 1 +velvetboudoir.com, 1 velvetempire.tk, 1 velvetfishing.bg, 1 velvetia.no, 1 @@ -154129,6 +154091,7 @@ velvox.net, 1 velvpay.com, 1 velyn.my.id, 1 vema-bg.com, 1 +vemm-reunion.org, 1 vemtambem.com, 1 vemviajar.pt, 1 venacifuentes.tk, 1 @@ -154263,6 +154226,7 @@ venturum.com, 1 venturum.de, 1 venturum.eu, 1 venturum.net, 1 +ventuseo.com, 1 ventusnavigation.com, 1 venuescanner.com, 1 venuescanner.net, 1 @@ -154271,13 +154235,11 @@ venus-erotic.com, 1 venus-football-giveaway.co.uk, 0 venusbeautyproducts.in, 1 venusmed.clinic, 1 -venusplc.com, 1 venzeo.com, 1 veoconocimiento.com, 1 vepein.ga, 1 vepein.gq, 1 veply.com, 1 -ver-me.com, 1 ver.ma, 0 vera-1.ru, 1 verae.tk, 1 @@ -154321,7 +154283,6 @@ vercountyil.gov, 1 verdantnature.com, 1 verdensflag.dk, 1 verdeplus.net, 1 -verdesfoundation.org, 1 verdiclub.ru, 1 verdict.gg, 1 verdictfoodservice.com, 1 @@ -154411,6 +154372,7 @@ verkami.com, 1 verkeersschoolrichardschut.nl, 1 verkeersschoolvanhouten.nl, 1 verkkovalmentajat.fi, 1 +verkore.com, 1 verkossa.tk, 1 verksampsykologi.com, 1 verlag-lq.at, 1 @@ -154492,6 +154454,7 @@ verstraetenusedcars.be, 1 versus-hair.com, 1 versus-projects.com, 1 versusforum.tk, 1 +vert.website, 1 vertanex.com, 1 vertaxaccountants.co.uk, 1 vertebrates.com, 1 @@ -154550,6 +154513,7 @@ very-good.ru, 1 veryapt.com, 1 verybin.com, 1 veryestate.com, 1 +veryfi.com, 1 veryfinecommentary.tk, 1 verygoodwebsite.ca, 1 veryhome.com.pe, 1 @@ -154626,7 +154590,6 @@ veterinario.roma.it, 1 veterinary-colleges.com, 1 veterinaryhelp.cf, 1 veterinaryvision.co.uk, 1 -veteriner.name.tr, 1 veterquimica.pe, 1 vetexpressmobilevet.com.au, 1 vetgraph.com, 1 @@ -154684,7 +154647,6 @@ vfnm.de, 1 vfree.org, 0 vfsglobal.com, 1 vfu.cz, 1 -vfxstudy.com, 1 vg-resource.com, 1 vg43.pt, 1 vgatest.nl, 1 @@ -154702,7 +154664,6 @@ vgpu.vladimir.ru, 1 vgrd-fleet-kunden.de, 1 vgropp.de, 1 vgyse.hu, 1 -vgywm.com, 1 vhelio.org, 1 vhiweb.com, 1 vhmf.nl, 1 @@ -154720,7 +154681,6 @@ via15.nl, 1 viabill.com, 1 viacdn.org, 1 viacon.io, 1 -viaconecta.co, 1 viacu.org, 1 viaelegancestore.com.br, 1 viaenginfeed.com, 1 @@ -154757,6 +154717,7 @@ vibbo.no, 1 vibecodescaler.com, 1 vibehire.co.uk, 1 vibeonline.tk, 1 +vibesolutions.eu, 1 vibesstudiobd.com, 1 vibgyyor.com, 1 vibioh.fr, 1 @@ -154783,7 +154744,6 @@ vichovska-vyhlidka.cz, 1 viciadasemesmaltes.com, 1 vician.cz, 1 vicicode.com, 1 -vicieux.art, 1 vicinityindustrial.com.au, 1 vicioanimal.pt, 1 viciousflora.com, 1 @@ -154793,6 +154753,7 @@ vickkingduvaldemedicis.fr, 0 vickyflipfloptravels.com, 0 vickyhundt.com, 1 vickylarraz.tk, 1 +vickynoriegacoach.com, 1 vickyoliver.tk, 1 vicmatus.com, 1 vico.vn, 1 @@ -154912,7 +154873,6 @@ videomail.io, 1 videomaker.it, 1 videomaniya.ml, 1 videomarketermastery.com, 1 -videonieuwsbericht.nl, 1 videonika.tk, 1 videonovinky.cz, 1 videopediablogs.tk, 1 @@ -155043,7 +155003,6 @@ vieweb.tk, 1 viewer.ga, 1 viewflix.win, 1 viewfreescore.com, 1 -viewgardencentre.co.uk, 1 viewing.nyc, 1 viewpointsfromfacebook.com, 1 views4you.com, 1 @@ -155068,8 +155027,6 @@ vigneshkumar.com, 1 vignette.eco, 1 vignobles-querre.com, 1 vignoblesdeletat.ch, 1 -vigo-krankenversicherung.de, 1 -vigo-select.de, 1 vigoinvestments.com, 1 vigordev.com, 1 vigoritout.com, 1 @@ -155086,7 +155043,7 @@ viikko.gq, 1 viikko.ml, 1 viilari.fi, 1 viilup.com, 1 -viio.me, 1 +viio.me, 0 viitanen.xyz, 1 vijay-international.com, 1 vijayam.ml, 1 @@ -155094,7 +155051,6 @@ vijaymishra.tk, 1 vijn.io, 1 vijoe.org, 1 vijverbenodigdheden.nl, 1 -vik.im, 1 vikalbino.com, 1 vikalbino.com.br, 1 vikalpgupta.com, 0 @@ -155126,6 +155082,7 @@ viktorovi.cz, 1 viktorprevaric.eu, 1 viku.fi, 1 vikweb.hu, 1 +viky.hu, 1 vikyho.cz, 1 vila-senov.cz, 1 vila11.com.br, 1 @@ -155145,6 +155102,7 @@ vilavilma.si, 1 vilavyhlidka.cz, 1 vilawatt.cat, 1 vilaydin.com, 1 +vilcon.dk, 1 vildlaithailand.cf, 1 vildlaithailand.gq, 1 vildlaithailand.tk, 1 @@ -155305,6 +155263,7 @@ vilostore.my.id, 1 viltsu.net, 1 vilvoordelaan.be, 1 vima.ch, 0 +vimar.ie, 1 vimbom.tk, 1 vimbowen.xyz, 1 vimeo.com, 1 @@ -155353,7 +155312,6 @@ vinciu.co, 1 vinciu.com, 0 vincour.info, 1 vincparca.com, 1 -vinculomartech.com.br, 1 vindafrid.com, 1 vindafrid.nu, 1 vindafrid.se, 1 @@ -155370,7 +155328,6 @@ vineripenutrition.com, 1 vinesauce.info, 1 vineta.tk, 1 vinetalk.net, 1 -vineyardchurches.org.uk, 1 vineyardscartersville.com, 1 vingaardshus.dk, 1 vingahiss.se, 1 @@ -155411,6 +155368,7 @@ vintagecommerce.it, 1 vintagejeeps.net, 1 vintagemakeupguide.com, 1 vintageportgifts.co.uk, 1 +vintageroadtripcollection.com, 1 vintagetoydepot.tk, 1 vintagetrailerbuyers.com, 1 vintagewedding.tk, 1 @@ -155427,6 +155385,7 @@ vinzer.tk, 1 vinzhelmets.com, 1 vinzite.com, 1 vinzlocks.com, 1 +viointel.com, 1 violapiekut.com, 1 violarenate.com, 1 violetfairy.tk, 1 @@ -155446,6 +155405,7 @@ vip-sauna.tk, 1 vip-soski.tk, 1 vip-ssl.com, 1 vip-transfer.by, 1 +vip21bit.com, 1 vip4553.com, 1 vip45bet365.com, 0 vip5414.com, 1 @@ -155497,7 +155457,6 @@ vipw6608.com, 0 vir-tec.eu, 0 viradadrums.com, 1 virajtharinda.tk, 1 -viral-labs.com, 1 viral-loops.com, 1 viral32111.com, 1 virala.tk, 1 @@ -155520,6 +155479,7 @@ vircloud.net, 1 virgi.tk, 1 virgil.gg, 1 virgilsecurity.com, 1 +virginia.org, 1 virginiaabc.gov, 1 virginiabeachcoolsculpting.com, 1 virginiagardens-fl.gov, 1 @@ -155560,7 +155520,6 @@ virtual-assistant.ml, 1 virtual-data-room.org, 1 virtual-dba.com, 1 virtual-insanity.tk, 1 -virtual-office24.com, 1 virtual-webcam.com, 1 virtualbrands.com, 0 virtualbrestby.tk, 1 @@ -155596,10 +155555,10 @@ virtualsex.ga, 1 virtualshell.ml, 1 virtualtaboo.com, 1 virtualtasksprout.com, 1 +virtualtravel.sk, 1 virtualux360.com, 1 virtualvaults.com, 0 virtualx.de, 1 -virtuareal.live, 1 virtubox.net, 1 virtubox.xyz, 1 virtubroker.com.mx, 1 @@ -155631,6 +155590,7 @@ visapro.com, 1 visapro.me, 1 visaprolaw.com, 1 visarewardprogramplatform.com, 1 +visaright.eu, 1 visartdecor.com.ua, 1 visasofoz.com, 1 visasytrabajo.com, 1 @@ -155641,7 +155601,6 @@ visatitans.co.uk, 1 visatitans.com, 1 visaxplorer.com, 1 visaya.com.co, 1 -visaynou.com, 1 visceralsound.ca, 1 viscondedemaua.com.br, 1 visdetech.com, 1 @@ -155786,6 +155745,7 @@ visudira.com, 1 visunext.de, 1 visuri.de, 1 visware.com, 1 +visy.com, 1 visyeva.hu, 1 vitaalcheck.nl, 1 vitaalfitcoaching.nl, 1 @@ -155823,6 +155783,7 @@ vitallispsy.com, 1 vitallispsy.de, 1 vitallispsy.eu, 1 vitallispsy.nl, 1 +vitalmetrics.org, 1 vitalmobility.ca, 1 vitalpartnerships.com, 1 vitalpraxis-lietz.de, 1 @@ -155839,6 +155800,7 @@ vitaminka.tk, 1 vitaminmovie.ga, 1 vitamins-and-minerals.com, 1 vitamixromania.ro, 1 +vitamove.ai, 1 vitanetonline.com, 1 vitapingu.de, 1 vitario.eu, 1 @@ -155963,7 +155925,6 @@ viviraty.pl, 1 vivirenelmundo.com, 1 vivirenelpoblado.com, 1 vivirenflorida.com, 1 -vivmoris.com, 1 vivo.cam, 1 vivoldi.com, 1 vivos.co.il, 1 @@ -155992,7 +155953,6 @@ viznet.tv, 1 vizyonpara.com, 1 vizzarragrup.com, 1 vjeff.com, 1 -vjeff.net, 1 vjk.dk, 1 vjn.ee, 1 vjshop.vn, 1 @@ -156046,7 +156006,6 @@ vklikers.tk, 1 vkolledzhe.tk, 1 vkox.com, 1 vkrutilca.tk, 1 -vksportphoto.com, 1 vkst-field-trials.dk, 1 vkstaticcdn.ru, 1 vkstaticcontent.ru, 1 @@ -156113,6 +156072,7 @@ vliegherrie.nl, 1 vlijmscherrup.tk, 1 vlike.ml, 1 vloeck.de, 1 +vloenhout.nl, 1 vloggerfaire.com, 1 vloggerspace.tk, 1 vlogmusic.io, 1 @@ -156127,7 +156087,6 @@ vm0.eu, 1 vm88.top, 0 vmagadane.tk, 1 vmath.my.id, 1 -vmautorajkot.com, 1 vmc-installation-entretien.fr, 1 vmc.co.id, 1 vmccnc.com, 1 @@ -156192,15 +156151,13 @@ vns6868.com, 0 vns6868.vip, 1 vns68722.com, 1 vns6969.com, 0 -vnsc.org, 1 +vnsc.org, 0 vntyper.org, 1 -vnumngr.com, 1 vnxf.vn, 1 vnya.loan, 1 voanaboa.pt, 1 voapt.by, 1 voatz.com, 1 -voboxcore.com, 1 vocably.de, 1 vocalcoach.com, 1 vocaloid.my, 1 @@ -156222,6 +156179,7 @@ vodex.ai, 0 vodicak.info, 1 vodicaknapocitac.sk, 1 voditel.ua, 1 +vodna.com.ua, 1 vodotech.sk, 1 vodpay.com, 1 vodpay.net, 1 @@ -156472,6 +156430,7 @@ volusia.gov, 1 volusiaelections.gov, 1 volusiasheriff.gov, 1 volusiavotes.gov, 1 +volveraslapelicula.com, 1 volvo-klub.cz, 1 volvo1800es.tk, 1 volvoklub.cz, 1 @@ -156501,13 +156460,11 @@ voodoobeginner.com, 1 voodoobtc.com, 1 voodoocat.cf, 1 voodooshaman.com, 1 -vooh.in, 0 vookstock.tk, 1 voom.pt, 1 voondo.de, 1 voorbijhetstigma.nl, 1 voorde.lol, 0 -voordehand.nl, 1 vooreenbeginner.nl, 1 voorhoede.nl, 1 voornaam-at-achternaam.be, 1 @@ -156703,6 +156660,7 @@ vpn4free.ga, 1 vpnalert.com, 1 vpnemail.com, 1 vpnent.com, 1 +vpngate-connector.com, 1 vpnhongkong.gq, 1 vpnhub.com, 1 vpnpro.com, 1 @@ -156731,7 +156689,6 @@ vpsmore.com, 1 vpsou.com, 1 vpspenergy.com, 1 vpsport.ch, 1 -vpsrussia.com, 1 vpsssl.com, 1 vpstrial.net, 1 vpsvz.cloud, 1 @@ -156791,7 +156748,6 @@ vr-immoponteq.de, 1 vr-immoservice.com, 1 vr-immoservice.net, 1 vr-immoworld.de, 1 -vr-payment.de, 1 vr-re-bank.ag, 1 vr-re-bank.at, 1 vr-re-bank.biz, 1 @@ -156842,6 +156798,7 @@ vrachi.online, 1 vractive.pl, 1 vragenlijstsoftware.nl, 1 vragenvanproust.nl, 1 +vrallart.com, 1 vramoni.ru, 1 vran.ga, 1 vranckaertsitsolutions.be, 1 @@ -156920,10 +156877,9 @@ vrnhn.nl, 0 vroad.org, 1 vroedvrouwella.be, 1 vron.house, 1 -vroomvroomvroom.co.nz, 0 +vroomvroomvroom.co.nz, 1 vros.co.id, 1 vrostove.tk, 1 -vrp.moe, 1 vrpornsites.xxx, 1 vrre.ag, 1 vrre.at, 1 @@ -157036,7 +156992,6 @@ vtaxi.se, 1 vtbclub.xyz, 1 vtbs.moe, 1 vtcourts.gov, 1 -vtcynic.com, 1 vtech.com, 1 vtechda.com, 1 vtechhealthcare.com, 1 @@ -157063,11 +157018,11 @@ vtupro.com, 1 vtvnetwork.org, 1 vtwonen.be, 1 vtwonen.nl, 1 +vuasach.net, 1 vubgenerali.sk, 1 vue-sur-mer.com, 1 vuefactory.io, 1 vuelacaruru.com, 1 -vuelosabajoprecio.net, 1 vueworks.com, 1 vugt.me, 1 vuitimig.com, 1 @@ -157101,6 +157056,7 @@ vulpine.club, 1 vulpix.uk, 1 vultrhxl.com, 1 vulva.observer, 1 +vulva.photos, 1 vumea.top, 1 vumerity.com, 0 vunn.com, 1 @@ -157134,7 +157090,7 @@ vveactiefbeheer.nl, 0 vvelzen.com, 1 vvg-vermietung.de, 1 vvlemmer.tk, 1 -vvlen.com, 1 +vvlen.com, 0 vvoip.org.uk, 1 vvpn.loan, 1 vvs.spb.ru, 1 @@ -157225,7 +157181,6 @@ w-architectes.com, 1 w-graj.net, 1 w-hub.ru, 1 w-o-o.nl, 1 -w-oasis.co.jp, 1 w-p-k.de, 1 w-permission.com, 1 w-spotlight.appspot.com, 1 @@ -157368,15 +157323,12 @@ wageworks.com, 1 wagidopaczek.pl, 1 wagihakowe.pl, 1 wagipaletowe.pl, 1 -wagistolowe.pl, 1 wagn3r.de, 1 wagrowieckierekodzielo.pl, 1 wagspuzzle.space, 1 waguramaurice.cf, 1 wagyudelicatessen.com, 1 waha-market.top, 1 -wahana.cloud, 1 -wahana.web.id, 1 wahay.org, 1 wahine.gq, 1 wahl-co.de, 1 @@ -157457,7 +157409,6 @@ walentin.co, 1 walentynki.tk, 1 walesmaine.gov, 1 walhal.la, 1 -walhello.nl, 1 waligorska.pl, 1 walk.onl, 1 walkal.com, 1 @@ -157612,7 +157563,6 @@ wangzhe100.xyz, 1 wangzuan168.cc, 1 wanicki.pl, 1 wanilia.pl, 1 -wanjuhui.com, 1 wank.party, 1 wannabfit.nl, 1 wannaknow.tk, 1 @@ -157700,6 +157650,7 @@ warennetworks.com, 1 warensecurity.com, 1 wareshoalssc.gov, 1 warezbook.org, 1 +warfare.com.br, 1 warfarina.com, 1 warfield.org.uk, 1 warfighters.de, 1 @@ -157748,6 +157699,7 @@ warrinainnisfail.com.au, 1 warringtonkidsbouncycastles.co.uk, 1 warringtonsownbuses.co.uk, 1 warriorofmars.com, 1 +warrnamboolaero.club, 1 warrock-es.tk, 1 warrs.com, 1 wars.aw, 1 @@ -157756,6 +157708,7 @@ warsawtravelers.pl, 1 warschild.org, 1 warsh.moe, 1 warships.cn, 1 +warsisawa.gr, 1 warstories.ca, 1 warszawa-pranie-dywanow.pl, 1 warszawska285.pl, 1 @@ -157769,6 +157722,7 @@ wartraining.com.br, 1 wartung.tk, 1 warubbermate.co.th, 1 warungmini-vanwou.nl, 1 +warungsiyas.com, 1 warwick.institute, 1 warwickbucks.gov, 1 warworld.ml, 1 @@ -157853,6 +157807,7 @@ watboeithet.nl, 1 watch-host.ga, 1 watch-wiki.org, 1 watchamovie.ga, 1 +watchaward.ru, 1 watchcom.co.za, 1 watchcom.org, 1 watchcom.org.za, 1 @@ -157862,6 +157817,7 @@ watchdogs.tk, 1 watchdreamer.com, 1 watchersrealm.tk, 1 watches-of-switzerland.co.uk, 1 +watchexpo.ru, 1 watchfinder.ae, 1 watchfinder.at, 1 watchfinder.au, 1 @@ -157902,6 +157858,7 @@ watchfreeonline.co.uk, 1 watchful.net, 1 watchgeneration.fr, 1 watchmagazine.cz, 1 +watchmedia.ru, 1 watchmoviesgallery.com, 1 watchparts-and-tools-okayama.co.jp, 1 watchpeopledie.tv, 1 @@ -158021,6 +157978,7 @@ wave-cockpit.de, 1 wave-electronics.com, 0 wave-inc.co.jp, 1 wave-utilities.co.uk, 1 +wave.graphics, 1 wave.is, 1 wave.red, 1 waveestetic.com, 1 @@ -158032,7 +157990,9 @@ wavered.cf, 1 waverity.ai, 1 waverlypa.gov, 1 waverlytn.gov, 1 +wavesejoy.cloud, 1 wavesite.tk, 1 +wavycat.me, 1 wavycat.ru, 1 waw-werbeagentur.de, 1 wawak.pl, 1 @@ -158053,7 +158013,7 @@ waycrossga.gov, 1 wayfairertravel.com, 0 wayfarium.com, 1 wayflyer.com, 1 -wayizi.com, 1 +wayizi.com, 0 waymobetta.com, 1 wayna-tech.com, 1 waynecochran.net, 1 @@ -158080,6 +158040,7 @@ waytofreedom.tk, 1 waytogrow.com, 1 waytoowoke.com, 1 waytt.cf, 1 +wazaap.be, 1 waze.com, 1 wazefaher.tk, 1 wazuh.com, 1 @@ -158107,6 +158068,7 @@ wbmonitor.eu, 1 wbnet.eu, 1 wboeijen.nl, 1 wbolt.com, 1 +wbostrom.se, 1 wbpersonalmonitor.de, 1 wbpgroup.com.au, 1 wbphed.gov.in, 1 @@ -158130,6 +158092,7 @@ wcaquatics.org, 1 wcarc.ca, 0 wcatherinekendall.co.uk, 1 wcboost.com, 1 +wccbi.org, 1 wccsports.com, 1 wccu.coop, 1 wcei.com.au, 1 @@ -158223,6 +158186,7 @@ wearejh.com, 1 wearemarketing.com, 1 wearemojo.com, 1 wearemoso.nl, 1 +wearemullet.com, 1 wearenh.gov, 1 wearepapermill.co, 1 wearepapermill.com, 1 @@ -158248,6 +158212,7 @@ weather.gov, 1 weather25.com, 1 weatherbell.com, 1 weatherbell.net, 1 +weatherfordfumc.com, 1 weatherguard.com, 1 weathermelon.io, 1 weathernet.co.uk, 1 @@ -158339,7 +158304,6 @@ webachtal.com, 1 webadiccion.net, 1 webadicta.net, 1 webadicto.net, 1 -webadish.co.uk, 1 webadmit.org, 1 webagenturschmid.ch, 1 webaholic.co.in, 1 @@ -158356,7 +158320,6 @@ webappky.cz, 1 webapplay.com, 1 webappperformance.com, 1 webapps-conception.fr, 1 -webappsec.shop, 1 webark.hu, 1 webart-factory.de, 1 webartex.ru, 1 @@ -158464,7 +158427,6 @@ webeast.eu, 1 webelement.sk, 0 webemployed.com, 1 webencrypt.org, 1 -webepc.it, 1 weber-immobilienberatung.de, 1 weber.com, 1 weber911.gov, 1 @@ -158473,7 +158435,7 @@ weberbasin.gov, 1 weberbasinut.gov, 1 weberelections.gov, 1 webers-testseite.de, 1 -webers-webdesign.de, 1 +webers-webdesign.de, 0 webescucha.tk, 1 webest.pl, 1 webexample.win, 0 @@ -158564,7 +158526,7 @@ weblate.cloud, 1 weblate.com, 1 weblate.cz, 1 weblate.org, 1 -weblax.fr, 1 +weblax.fr, 0 weblead.vip, 1 weblegion.tk, 1 weblian.ml, 1 @@ -158624,14 +158586,14 @@ webo.pl, 1 weboflies.tk, 1 webofthingsmarwane.xyz, 1 weboke.nl, 1 -weboperater.rs, 0 +weboperater.rs, 1 webowell.fr, 0 webp.tf, 1 webpantry.ga, 1 webparallax.cf, 1 webpark.ch, 1 +webpc.com.ua, 1 webpcstudio.com, 1 -webperformance.io, 1 webpiar.tk, 1 webpitarque.tk, 1 webpkgcache.com, 1 @@ -158715,7 +158677,6 @@ websitesdemos.tk, 1 websiteservice.pro, 1 websitesthatwork.biz, 1 websitestudio.fr, 1 -websktop.com, 1 websmartlink.tk, 1 websoftba.gq, 1 websofts.co.in, 1 @@ -158790,7 +158751,6 @@ webwatchdogs.net, 1 webwatcher.tk, 1 webwinkelwestland.nl, 1 webwit.pro, 1 -webworksnz.co, 0 webwweb.com.pl, 1 webyazilim.biz.tr, 1 webyrychle.cz, 1 @@ -158869,7 +158829,6 @@ weed.ren, 1 weedgranadagrowshop.com, 1 weedistillery.com, 1 weedlife.com, 1 -weednews.co, 0 weedworthy.com, 1 weefriendskids.com, 1 week-numbers.org, 1 @@ -158878,13 +158837,13 @@ weekend.london, 1 weekend4two.ch, 1 weekendbus.pl, 1 weekendcraft.com, 0 +weekendcurioso.com, 1 weekendinitaly.com, 1 weekendplayers.tk, 1 weekendstartup.ml, 1 weekly-app.com, 0 weekly-news.pl, 1 weeklydcoupgen.com, 1 -weelam.ca, 1 weelzbahamas.com, 1 weemakers.fr, 0 weepycat.com, 1 @@ -158893,7 +158852,6 @@ weerstationgiethoorn.nl, 1 weerstatistieken.nl, 1 weetalksls.com, 1 weetix.fr, 1 -weexend.com, 1 weezerosos.tk, 1 weezertabs.tk, 1 wefact.nl, 1 @@ -158918,6 +158876,7 @@ wegweiser-demenz.de, 1 wegwijzerhvb.nl, 1 wehaa-server2.com, 1 wehaaserver.com, 1 +wehatech.vn, 1 wehealasone.gov.ph, 1 weho.gov, 1 wehrmacht.org, 1 @@ -158999,7 +158958,6 @@ welcome26.ch, 0 welcomepowayan.tk, 1 welcometoohio.gov, 1 welcoop-logistique.com, 1 -welcorp.com, 1 weld.gov, 1 weldersnet.tk, 1 weldynz.co.nz, 1 @@ -159017,7 +158975,6 @@ welldeals.store, 1 welldoc.com, 0 welldocinc.com, 1 welldressedwalrus.com, 0 -wellen-reiten.com, 1 wellensteyn.ru, 1 weller.pm, 1 wellesleycosmeticsurgery.com, 1 @@ -159075,7 +159032,6 @@ welt-flaggen.de, 1 welteneroberer.de, 1 weltengilde.de, 1 weltenhueter.de, 1 -weltentanzer.com, 0 weltraum.gg, 1 weltumradler.tk, 1 weltverschwoerung.de, 1 @@ -159083,7 +159039,6 @@ welty.cc, 1 welty.co, 1 welty.io, 1 welty.me, 1 -wemad.com.au, 1 wemadegod.tk, 1 wemake.cx, 1 wemakeadifference.com.au, 1 @@ -159216,7 +159171,6 @@ wespeakk9.com, 1 wespringforward.com, 1 wesreportportal.com, 1 wessafety.net, 1 -wesseldijk.eu, 1 wesseling.de, 1 wesselius.tk, 1 wessner.co, 0 @@ -159305,6 +159259,7 @@ westmidlandslettings.com, 1 westmidlandsrailway.co.uk, 1 westmifflin.gov, 1 westmilwaukeewi.gov, 1 +westminster.fashion, 1 westminsterco.gov, 1 westminsternational.com.au, 1 westmodernclinic.com, 1 @@ -159365,7 +159320,6 @@ wetrepublic.com, 1 wetryrecipes.com, 1 wettbuero.de, 1 wetter.de, 1 -wettershus.se, 1 wetthost.com, 1 wetu.com, 1 wetumpkaal.gov, 1 @@ -159382,8 +159336,8 @@ weworkjpn.com, 1 wewritestuff.com, 1 wexfordbouncycastles.ie, 1 wexilapp.com, 1 +wexller.com, 1 weyerstall1880.de, 1 -weymouthslowik.com, 1 wf-bigsky-master.appspot.com, 1 wf-demo-eu.appspot.com, 1 wf-demo-hrd.appspot.com, 1 @@ -159439,7 +159393,7 @@ wgzdy.top, 0 wh-guide.de, 1 wh.gov, 1 wh966.com, 0 -whadda.uk, 1 +whadda.uk, 0 whakamatutu.org.nz, 1 whale-tales.org, 1 whalecrew.com, 1 @@ -159483,6 +159437,7 @@ whatiscss.tk, 1 whatisinternetsecurity.net, 1 whatisipfix.com, 1 whatisl.ovh, 1 +whatismycountry.com, 1 whatismyip.help, 1 whatismypublicip.com, 1 whatisnetflow.com, 1 @@ -159630,6 +159585,7 @@ whitechristmas.com.au, 1 whitecollar.net, 1 whitecollarfraud.com, 1 whitecreekny.gov, 1 +whitedragonmartialarts.org, 1 whitefieldnhpd.gov, 1 whitefishtownshipmi.gov, 1 whitefordtownshipmi.gov, 1 @@ -159663,6 +159619,7 @@ whiteneon.com, 1 whiteoak.org, 1 whitepack.ru, 1 whitepages.ml, 1 +whitepark.com.au, 1 whitepeaks.co.uk, 1 whitepeaks.fr, 1 whitepen.io, 1 @@ -159707,7 +159664,6 @@ whitmanwire.com, 1 whitmoreac.com, 1 whitneys2go.com, 1 whittle.in, 1 -whittlesfabrics.com, 1 whitworth.nyc, 1 whitworth.org, 1 whizkidpcservices.com, 1 @@ -159753,7 +159709,7 @@ whomanity.party, 1 whoneedstobeprimaried.today, 1 whong.media, 1 whonix.org, 1 -whoopee.my, 1 +whoopee.my, 0 whooshkaa.com, 1 whoownswhom.co.za, 1 whop.com, 1 @@ -159778,7 +159734,6 @@ whwcornwall.co.uk, 1 why-brexit.uk, 1 why918.com, 0 whychoosebob.id.au, 1 -whyescort.com, 1 whyinsurance.me, 1 whyleavetown.com, 1 whynohttps.com, 1 @@ -159815,7 +159770,6 @@ wickedsick.tk, 1 wickedvibes.tk, 1 wickersmith.com, 1 wickerwoman.com, 0 -wicklowcountycricket.com, 1 wickrath.com, 1 wickrath.net, 1 wicstunvetgroup.co.uk, 1 @@ -159873,10 +159827,10 @@ wifesbank.com, 1 wifi-hack.com, 0 wifi-names.com, 1 wifi-ooe.at, 1 -wifi.com.vn, 1 wifi.id, 1 wificonnect.cc, 1 wifidjelfa.com, 1 +wifiindosathifi.id, 1 wifimb.cz, 1 wifipineapple.com, 1 wifirst.net, 1 @@ -159890,8 +159844,6 @@ wigggle.it, 1 wigle.net, 1 wigmore-hall.org.uk, 0 wigsalon.ga, 1 -wigwam.design, 1 -wihiki.org, 1 wiiaam.com, 1 wiidatabase.de, 1 wiikipedia.com, 1 @@ -160156,7 +160108,6 @@ wildwill.co.uk, 1 wildwind.world, 1 wildwoodpolice-fl.gov, 1 wildwoodrockers.tk, 1 -wildworldimpact.com, 1 wildzap.ml, 1 wildzoopark.co.uk, 1 wildzoopark.com, 1 @@ -160164,7 +160115,7 @@ wiley.law, 1 wilf1rst.com, 1 wilfert.cc, 1 wilfert.xyz, 1 -wilfredstephenanfield.com, 0 +wilfredstephenanfield.com, 1 wilfredswholesale.com.au, 1 wilfrid-calixte.fr, 0 wilhelm-nathan.de, 1 @@ -160211,7 +160162,7 @@ williamparedes.tk, 1 williamscomposer.com, 1 williamscountyoh.gov, 1 williamsflintlocks.com, 0 -williamshomeheat.co.uk, 0 +williamshomeheat.co.uk, 1 williamsigal.com, 1 williamsrecord.com, 1 williamstonmipd.gov, 1 @@ -160263,6 +160214,7 @@ wilmington-il.gov, 1 wilmingtonohio.gov, 1 wilmingtonzen.tk, 1 wilmothgroup.com, 1 +wilo.com, 1 wils.jp, 1 wilshirelawfirm.com, 1 wilson-lincoln-wi.gov, 1 @@ -160296,6 +160248,7 @@ win-rar.com, 1 win-tech.net, 1 win.ch, 1 win11.ren, 1 +win21bit.com, 1 win5analysis.net, 1 win7stylebuilder.com, 0 win7tips.tk, 1 @@ -160362,7 +160315,7 @@ windsorhoteis.com, 1 windsorite.ca, 1 windsornc.gov, 1 windsorrslsubbranch.com.au, 1 -windstreamhosting.com, 0 +windstreamhosting.com, 1 windsurfercrs.com, 1 windturbine.tk, 1 windvanetech.com, 1 @@ -160384,7 +160337,7 @@ winegadgets.ru, 0 winek.tk, 1 winenews.it, 1 wineparis.com, 1 -winerytoursanfrancisco.com, 1 +wineriesil.com, 1 winetable.se, 1 winfieldchen.me, 1 winfieldpa.gov, 1 @@ -160395,6 +160348,7 @@ wing-tsun.cf, 1 wing-tsun.ga, 1 wing-tsun.gq, 1 wing-tsun.tk, 1 +wing.osaka, 1 wingchun.edu.au, 1 wingchunboxtribe.com, 1 wingechr.de, 1 @@ -160466,6 +160420,7 @@ winter-auszeit.de, 0 winter-elektro.de, 1 winter-leak.ml, 1 winter.ae, 1 +winter.vg, 1 winterarbitrationcenter.com, 1 winterbergwebcams.com, 1 wintercorn.com, 1 @@ -160479,7 +160434,6 @@ winterset.gov, 1 wintersproducts.nl, 1 winterstudies.ga, 1 winterthur.ch, 1 -winterwind-productions.com, 1 winterzine.cf, 1 winthropma.gov, 1 winthrythsrealm.com, 1 @@ -160604,7 +160558,6 @@ wiseup.com, 1 wiseupcorp.com, 1 wiseuplive.com.br, 1 wisewaynutrition.com, 1 -wish2025.com, 1 wishedu.com, 1 wishing3.com, 1 wishingyou.co.uk, 1 @@ -160706,6 +160659,8 @@ wizardk.tk, 1 wizardkami.tk, 1 wizardmeow.xin, 1 wizardschool.tk, 1 +wizardshive.com, 1 +wizardshive.ro, 1 wizardshop.cz, 1 wizardswebs.com, 1 wizart-studio.pl, 1 @@ -160788,7 +160743,6 @@ wmkowa.de, 1 wmmalls.com, 1 wmmi.org, 1 wmmkf.com, 1 -wmmks.com, 1 wmmp.link, 1 wmnrj.com, 1 wmo.ch, 1 @@ -160917,6 +160871,7 @@ wolfteam.tk, 1 wolfwings.us, 1 wolfy.design, 1 wolfy1339.com, 1 +wolkanca.com, 1 wolke7.wtf, 1 wolkenputzer.com, 1 wolkenspeicher.org, 1 @@ -161021,6 +160976,7 @@ woodbornekitchens.com, 1 woodbridgefurniture.com, 1 woodbridgegrp.com, 1 woodbridgepacific.com, 1 +woodburn.au, 0 woodbury.io, 1 woodburynj.gov, 1 woodcock.cloud, 1 @@ -161033,8 +160989,8 @@ woodfencestlouis.com, 1 woodfieldhc.ca, 1 woodfordcountyil.gov, 1 woodfordcountyky.gov, 1 +woodgraintales.co.il, 1 woodhavenmi.gov, 1 -woodhousechocolate.com, 1 woodlandboys.com, 1 woodlandcreekfurniture.com, 1 woodlandwindows.com, 0 @@ -161075,7 +161031,6 @@ woodyallen.tk, 1 woodysinstalaciones.com, 1 wooeffi.at, 1 woof.blue, 1 -woof.gq, 1 woofngoof.com, 1 woofsbakery.com, 1 woohoo.in, 1 @@ -161192,7 +161147,6 @@ workfromhomesites.ga, 1 workfromhomesites.ml, 1 workfromhometexas.tk, 1 workhandyman.com, 1 -workhorsemkt.com, 1 workin.space, 1 workindia.ml, 1 workinestonia.com, 0 @@ -161242,13 +161196,12 @@ workshopszwolle.nl, 1 workshopzwolle.com, 1 worksindev.com, 1 worksitevr.com, 1 -worksmile.com, 1 workspace-bibb.de, 1 workspacecleaners.com.au, 0 worksthatwork.com, 1 workstride.org, 1 worktefa.tk, 1 -workthings.de, 1 +worktrainer.com, 1 workvision.net, 1 workwithdata.com, 1 workwithusaid.gov, 1 @@ -161331,9 +161284,8 @@ worldix.ml, 1 worldix.tk, 1 worldjobs.tk, 1 worldjusticeproject.org, 1 -worldlandtrust.org, 1 worldlanguage.tk, 1 -worldline.com, 1 +worldline.com, 0 worldluxuryhome.tk, 1 worldmarathons.tk, 1 worldnewsinbox.ga, 1 @@ -161371,6 +161323,7 @@ worldsystems.com.co, 1 worldtalk.de, 1 worldtattooevents.com, 1 worldtempus.com, 0 +worldtera.com, 1 worldtrandingnews.ml, 1 worldtravelmagazine.tk, 1 worldturkmans.tk, 1 @@ -161490,7 +161443,6 @@ wp-hasty.com, 1 wp-in.de, 1 wp-mix.com, 1 wp-ninja.tk, 1 -wp-op.com, 1 wp-rebuild.com, 1 wp-rem.com, 1 wp-sec.com, 1 @@ -161523,7 +161475,6 @@ wpekspres.com, 1 wpetri.nl, 1 wpexplainer.com, 1 wpfactory.io, 1 -wpfiles.net, 1 wpformation.com, 1 wpforum.tk, 1 wpg-verwaltungen.de, 1 @@ -161559,10 +161510,6 @@ wpnovice.tk, 1 wpocs.com, 1 wpoptimalizace.cz, 1 wppbki1.com, 1 -wppodcast.cat, 1 -wppodcast.es, 1 -wppodcast.fr, 1 -wppodcast.org, 1 wprank.net, 1 wprepublic.com, 1 wpresscoder.com, 1 @@ -161627,7 +161574,7 @@ wrfalimentos.com.br, 1 wrglzd.com, 1 wrgms.com, 1 wrhomedecor.com.br, 1 -wrightbrand.com, 1 +wrightbrand.com, 0 wrightcountymo911.gov, 1 wrighthassall.co.uk, 1 wrightsecurity.co, 1 @@ -161676,22 +161623,22 @@ writtenworld.bg, 1 wrm.sr, 1 wrmea.org, 1 wrmh343.org, 1 -wrn.sh, 1 wrnck.cloud, 1 wroclawguide.com, 1 wrong.wang, 0 wrongaddress.com, 1 wrozbyonline.pl, 1 wrp.gov, 1 +wrssystems.co.uk, 1 wrtv.com, 1 wrytin.com, 1 wrzalski.com, 1 +ws3917.space, 1 wsa.poznan.pl, 1 wsadek.ovh, 1 wsave.be, 1 wsb.pl, 1 wsc.rip, 1 -wscad.com, 1 wscauth.de, 1 wscf.ch, 1 wscore.me, 1 @@ -161733,6 +161680,7 @@ wtdiw.com, 1 wtfast.com, 1 wtfbryan.com, 0 wtfindonesia.tk, 1 +wtfit.io, 1 wtfnope.org, 1 wth-security.nl, 1 wth.in, 1 @@ -161821,6 +161769,7 @@ wvpbs.tk, 1 wvpebd.gov, 1 wvrtboard.gov, 1 wvsdca.gov, 1 +wvsu-usc.org, 1 wvunclaimedproperty.gov, 1 wvv-8522.com, 1 wvv.de, 1 @@ -161961,7 +161910,6 @@ www.tiaa.org, 1 www.tl, 1 www.torproject.org, 0 www.tumblr.com, 0 -www.twitter.com, 1 www.united.com, 1 www.usaa.com, 0 www.vino.com, 0 @@ -161999,13 +161947,13 @@ wy6.org, 1 wyattirwin.com, 1 wyatttauber.com, 1 wyattworth.com, 1 +wybar.co.uk, 1 wybar.uk, 1 wycena.ga, 1 wyckoffnj.gov, 1 wyckoffspringmeadowcondos.com, 1 wycombetoday.com, 0 wyday.com, 1 -wydmy.com.pl, 1 wyff4.com, 1 wygibanki.pl, 1 wygodnie.pl, 1 @@ -162032,7 +161980,6 @@ wyomingtitlesearch.com, 1 wyomingvalleyjuniorspartans.org, 1 wypiska.pl, 1 wypozyczalniasamochodowkrakow.gq, 1 -wypracowania.pl, 1 wyprawywedkarskiepremium.pl, 1 wyrickstaxidermy.com, 1 wyrihaximus.net, 1 @@ -162105,7 +162052,6 @@ x5197.co, 1 x52.org, 1 x58p.com, 1 x58t.com, 1 -x58v.com, 1 x5x.host, 1 x6.nl, 1 x61.sh, 1 @@ -162138,6 +162084,7 @@ xajh.org, 1 xakep-slon.tk, 1 xakepctbo.tk, 1 xakiatech.com, 1 +xalamanalytics.com, 1 xalima.gq, 1 xampusolid.cat, 1 xanadu.ai, 1 @@ -162279,7 +162226,6 @@ xcashshop.com, 1 xccc.net, 1 xcdd.sh, 1 xce.pl, 1 -xcelit.io, 1 xcelvations.com, 1 xchangehoster.de, 1 xcharge.uk, 1 @@ -162319,6 +162265,7 @@ xdtag.com, 1 xdty.org, 1 xduce.com, 1 xeditpro.com, 1 +xeerpa.com, 1 xeforce.com, 1 xehopdongmuine.vn, 1 xehost.com, 1 @@ -162361,6 +162308,7 @@ xerbisworks.com, 1 xerdeso.tk, 1 xerezdeportivo.tk, 1 xerownia.eu, 1 +xerownia.pl, 1 xertainty.com, 1 xertainty.de, 1 xetown.com, 1 @@ -162383,7 +162331,6 @@ xg9gbbbr.nsupdate.info, 1 xgadget.de, 1 xgameshst.com, 1 xgclan.com, 1 -xgeni.us, 1 xgn.es, 1 xgp.pl, 1 xgpu.deals, 1 @@ -162443,13 +162390,14 @@ xiaoshijt.com, 1 xiaowangshen.com, 1 xiaoxia.li, 1 xiarain.com, 1 +xiashu8.com, 1 xiaxuejin.cn, 1 xiazhanjian.com, 0 xice.cf, 1 xice.wang, 1 xicreative.net, 1 xiecongan.org, 1 -xiedeacc.com, 1 +xiedeacc.com, 0 xiexiexi.com, 1 xif.at, 1 xifrem.com, 1 @@ -162462,6 +162410,7 @@ xilnex.com, 1 xilo.net, 1 xiluetmiami.com, 1 xiluo-sweet-home.tw, 1 +ximes.cloud, 1 ximes.com, 1 ximeshosted.com, 1 ximg.co, 1 @@ -162624,7 +162573,6 @@ xjjzp.net, 1 xjpvictor.info, 1 xjr-forum.de, 1 xjtu.love, 1 -xjtu.men, 1 xkblog.xyz, 1 xkcd.pw, 1 xkq.ch, 1 @@ -162658,7 +162606,6 @@ xmanyz.tk, 1 xmdhs.com, 1 xmediabigz.tk, 1 xmediazxy.tk, 1 -xmenrevolution.com, 1 xmessy.com, 1 xmgspace.me, 1 xmisystems.com, 0 @@ -162780,7 +162727,6 @@ xn--72c1ar3gd6fvd.xn--o3cw4h, 1 xn--73-dlclq0cfe.xn--p1ai, 1 xn--78je2j8a.cafe, 1 xn--7ca.co, 1 -xn--7dvy22i.com, 1 xn--7or43h.jp, 1 xn--7tq776cdf4a.xn--fiqs8s, 1 xn--7tq776cdf4a.xn--fiqz9s, 1 @@ -162875,7 +162821,6 @@ xn--anyd-7na.at, 1 xn--arelektrbunerisk-4bc73b.lv, 1 xn--aurdumeti-cmd.ro, 1 xn--autoschlssel-wesel-t6b.de, 1 -xn--avocai-timioara-kmf1a.ro, 1 xn--b1a.cc, 1 xn--b1aa9b.tk, 1 xn--b1ab6abhfh.xn--p1ai, 1 @@ -162894,6 +162839,7 @@ xn--bersetzungen-beglaubigt-bpc.de, 1 xn--berufsprfung-kinsthetik-b8b50d.ch, 1 xn--berwachungspaket-izb.at, 1 xn--billigbegravningsbyr-g0b.se, 1 +xn--bjugrd-lua.io, 1 xn--blusastlacotalpeas-20b.online, 1 xn--bm3bl9r.com, 1 xn--bognsroad-j3a.dk, 1 @@ -163018,6 +162964,7 @@ xn--gmq92k.nagoya, 1 xn--grnderlehrstuhl-0vb.de, 1 xn--grnstrm-r1ae.nu, 1 xn--gs8h.eu.org, 1 +xn--h-1ga.net, 1 xn--h1aaahdlb4aki4h.xn--p1ai, 1 xn--h1aaakmzd.xn--p1ai, 1 xn--h1aagcjb0ajh5g.xn--p1ai, 1 @@ -163122,7 +163069,6 @@ xn--morrhret-e0a.se, 1 xn--mrtelfuger-0cb.dk, 1 xn--mxac.net, 1 xn--myprmienportal-8hb.de, 1 -xn--myrepubic-wub.net, 1 xn--myrepublc-x5a.net, 1 xn--naade-dta.com, 1 xn--nbetcieczane-4ib.gen.tr, 1 @@ -163221,6 +163167,7 @@ xn--tigreray-i1a.org, 1 xn--tkuka-m3a3v.com, 1 xn--tkuka-m3a3v.nz, 1 xn--trdler-xxa.xyz, 1 +xn--tudentskodelo-9tc.si, 1 xn--u8jwd.ga, 1 xn--u9j920h4sbt5ex10f.online, 1 xn--u9j933ksxs6hu.com, 1 @@ -163342,7 +163289,6 @@ xotictrends.com, 1 xotika.tv, 1 xoue.com, 1 xoutpost.com, 1 -xoxo.news, 1 xp-ochrona.pl, 1 xp.nsupdate.info, 1 xparts.com.tr, 1 @@ -163384,6 +163330,7 @@ xpsauto.com, 1 xpsautomation.com, 1 xpsfactory.com, 1 xpsinnovation.com, 1 +xpsnow.net, 1 xpsrobotics.com, 1 xptrack.com, 1 xptrackstaging.com, 1 @@ -163565,6 +163512,7 @@ xurl.gq, 1 xurl.ltd, 1 xushuai.org, 1 xusqui.com, 1 +xuvero.com, 1 xuwei.de, 1 xuxiao.click, 1 xuyh0120.win, 1 @@ -163641,7 +163589,6 @@ xylexa.ai, 1 xylimelts.com.au, 1 xyloefarmoges.gr, 0 xylos.nl, 1 -xymaxreit.co.jp, 1 xynta.ch, 1 xynta.com, 1 xyquadrat.ch, 1 @@ -163680,7 +163627,6 @@ xyzzy.earth, 1 xyzzyyyz.com, 1 xz0.de, 1 xzclip.cn, 1 -xzib.com, 1 xzibits.com, 1 xztech.co, 1 y-erodoga.com, 1 @@ -163906,7 +163852,7 @@ yangzi.ml, 1 yanhongming.net, 1 yanik.info, 1 yanisvaroufakis.eu, 1 -yanivboost.com, 1 +yaniv.tv, 1 yankeeinstitute.org, 1 yann.tw, 1 yannic.world, 0 @@ -163965,7 +163911,6 @@ yardhelp.ga, 1 yardstik.com, 1 yardthyme.com, 1 yardtower.com, 1 -yaremchuk.org, 1 yaren-it.de, 1 yaren.it, 1 yarlesac.com, 1 @@ -164068,6 +164013,7 @@ ybzhao.com, 1 yc1820.com, 1 ycalculators.com, 1 ycatsh.net, 1 +ycb.fr, 1 ycbmdevelopment.com, 1 ycbmstaging.com, 1 ycdtc.org, 1 @@ -164206,6 +164152,7 @@ yesmirov.ga, 1 yesod.in, 1 yesogovinpetcare.com, 1 yesolo.tk, 1 +yesonline.me, 1 yespornfree.com, 1 yespornplease.com, 1 yessirgear.com, 0 @@ -164281,7 +164228,6 @@ yiff.rest, 1 yiff.rocks, 1 yiff.supply, 1 yigelangzi.com, 1 -yiguan.me, 1 yiheng.moe, 0 yihome.com.tw, 1 yihouse.tw, 1 @@ -164389,7 +164335,6 @@ yoga-prive.de, 1 yoga-zentrum-narayani.de, 1 yoga.is-an-engineer.com, 1 yogaangels.ga, 1 -yogaanswered.com, 1 yogachina.com, 1 yogaeastwest.com, 1 yogaecology.org, 1 @@ -164408,6 +164353,7 @@ yogatherapykosha.com, 1 yogaworld.tk, 1 yogesh.com.au, 1 yogibear.tk, 1 +yogimotto.com, 1 yogstation.net, 1 yogularm.de, 1 yogunet.de, 1 @@ -164453,6 +164399,7 @@ yongkang-clinic.com.tw, 1 yongnuo.fr, 1 yongnuorumors.com, 1 yongseovn.net, 1 +yoni-mip.com, 1 yonistap.com, 1 yonkersdentalspa.com, 1 yontu.be, 1 @@ -164492,15 +164439,18 @@ yorkshireinflatables.co.uk, 1 yorkshireterrier.com.br, 1 yorkshireterrieraspets.com, 1 yorname.ml, 0 +yornik.eu, 1 yornik.nl, 1 yoru.me, 0 yoryo.com, 1 yosakoinight.com, 1 yosbeda.com, 1 +yosefsa.xyz, 1 yosemo.de, 1 yosh.is, 1 yosheenetwork.fr, 1 yoshibaworks.com, 1 +yoshikawa-koumuten.co.jp, 1 yoshimura-seimenjo.com, 1 yoshitsugu.net, 1 yoshiya2020.com, 1 @@ -164509,6 +164459,7 @@ yosida-dental.com, 1 yosida95.com, 1 yosm.net, 1 yospos.org, 1 +yotavibe.com, 1 yoti.com, 1 yoticonnections.com, 1 yotilabs.com, 1 @@ -164579,7 +164530,6 @@ youlovehers.com, 1 youmeandjunee.com.au, 1 youmiracle.com, 1 youmonit.me, 1 -youms.de, 1 younameit.ru, 1 youneedfame.com, 1 younesclothing.com, 1 @@ -164642,10 +164592,9 @@ yourbristolsomerset.wedding, 1 yourbusiness.ml, 1 yourbusinessblueprint.com, 1 yourcareerhost.com, 1 -yourcause.digital, 1 yourcheshiremerseyside.wedding, 1 -yourchoice.in.net, 1 yourchoicematters.ca, 1 +yourcoder.in, 1 yourcomputer.expert, 1 yourcomputer.tk, 1 yourconscious.life, 1 @@ -164679,7 +164628,6 @@ yourforcesupport.net, 1 yourforcesupport.pro, 1 yourforcesupport.us, 1 yourforex.org, 1 -yourfriendlyrecipes.com, 1 yourfriendlytech.com, 1 yourfuntrivia.com, 1 yourgadget.ro, 1 @@ -164722,6 +164670,7 @@ youronly.one, 1 yourpalstore.com, 1 yourpersonalfoodnesscoach.nl, 1 yourpersonalfrance.com, 1 +yourpersonalplumbercan.com, 1 yourphotoscanned.com, 1 yourplanet.eu.org, 1 yoursaypenrith.com.au, 1 @@ -164828,6 +164777,7 @@ yq5.de, 1 yqagizev.tk, 1 yqmhz.com, 1 yr-labo.jp, 1 +yr.com.au, 1 yr.sa, 1 yr166166.com, 1 yrausquin.com, 0 @@ -164880,7 +164830,6 @@ yuanandyuan.info, 1 yuanandyuan.me, 1 yuanbangwulian.com, 1 yuanben.io, 1 -yuanbenlian.com, 1 yuanbiji.net, 1 yuandan.cf, 1 yuandan.gq, 1 @@ -164982,6 +164931,7 @@ yunite.one, 1 yunjishou.pro, 1 yunloc.com, 1 yunqueradehenares.tk, 1 +yunxinfoods.com, 1 yunzhu.li, 1 yuplay.com, 1 yupulse.be, 1 @@ -164989,6 +164939,7 @@ yuqi.me, 1 yuquepay.com, 1 yura.cf, 1 yuricarlenzoli.it, 1 +yurihi.net, 1 yurikirin.me, 1 yuriland.xyz, 1 yurimoens.be, 1 @@ -165011,7 +164962,6 @@ yuu.ink, 1 yuucchi.com, 1 yuuki0xff.jp, 1 yuumari.com, 1 -yuuta.moe, 1 yuvagalam.com, 1 yuvaskillfoundation.org, 1 yuweetek.com, 0 @@ -165033,6 +164983,7 @@ yuzneri.net, 1 yuzu.tk, 1 yuzurisa.com, 1 yvabph.com, 1 +yvesgille.fr, 1 yveslegendre.fr, 0 yvesx.com, 1 yveszarkaconsultant.fr, 1 @@ -165071,7 +165022,7 @@ yy6957.co, 1 yy9297.co, 1 yy9728.co, 1 yya.men, 1 -yyc.city, 1 +yyc.city, 0 yycbike.info, 1 yydjtc.top, 0 yyr.im, 1 @@ -165176,7 +165127,6 @@ z8851.com, 0 z8865.com, 1 z8876.com, 0 z8895.com, 1 -z8920.com, 1 z9297.co, 1 z95.jp, 1 z9728.co, 1 @@ -165223,7 +165173,6 @@ zackiarfan.ml, 1 zacks.eu, 1 zackzack.at, 1 zaclys.com, 0 -zacnaoliwka.pl, 0 zad-academy.com, 1 zadania.wiki, 1 zadm.de, 1 @@ -165240,6 +165189,7 @@ zafrani.ga, 1 zafrasa.com.ar, 1 zaftigpress.com, 1 zagadki-cosmosa.tk, 1 +zagelcast.com, 1 zageron.com, 1 zagi.net, 1 zagis.nl, 0 @@ -165303,7 +165253,7 @@ zajmy-contact.gq, 1 zajmy-contact.tk, 1 zajsoft.net, 1 zak.co.at, 1 -zakaacouture.com, 1 +zakaacouture.com, 0 zakachat-brauzer.gq, 1 zakachat-temi.gq, 1 zakaria.website, 1 @@ -165328,7 +165278,6 @@ zakojifarm.jp, 1 zakononline.cf, 1 zakpex.com, 1 zakr.es, 1 -zakratheme.com, 1 zakrentus-ostrus.space, 1 zakspartiesandevents.com, 1 zala.ml, 1 @@ -165366,7 +165315,10 @@ zandersgroup.com, 1 zandmhomes.com, 1 zandoodle.me.uk, 1 zandra.cf, 1 +zandro.ai, 1 +zandro.eu, 1 zandro.fit, 1 +zandro.fyi, 1 zandro.nl, 1 zanellidesigns.co.uk, 1 zaneslaw.com, 1 @@ -165399,6 +165351,7 @@ zaoren.tk, 1 zap-mag.ru, 1 zap-map.com, 1 zap51.in, 1 +zapad-s.ru, 1 zapamini.ml, 1 zapaska.tk, 1 zapcat.com.au, 1 @@ -165448,6 +165401,9 @@ zarinab.com, 1 zarja.tk, 1 zarjadnik.tk, 1 zarla.com, 1 +zarlacdn.com, 1 +zarladomains.com, 1 +zarlasites.com, 1 zarnitsa.eu, 1 zarnu.com, 1 zarobotok-forum.ga, 1 @@ -165463,7 +165419,6 @@ zas4eku.tk, 1 zaschtnik.ga, 1 zastenchivost.tk, 1 zasudili.ru, 1 -zataz.com, 1 zaterdagwelpen.tk, 1 zatey.ru, 1 zatp.com, 0 @@ -165624,8 +165579,8 @@ zebrabyte.ro, 1 zebraguide.com, 1 zebravinken.tk, 1 zebspeech.tk, 1 -zebulon.fr, 1 zecanard.com, 1 +zecanard.lol, 1 zecible.fr, 1 zeckenhilfe.de, 1 zectazepia.tk, 1 @@ -165798,6 +165753,7 @@ zercutie.com, 1 zerevia.com, 1 zerg.uk, 1 zergy.net, 1 +zerionplatform.com, 1 zerium.ml, 1 zerm.eu, 1 zerm.link, 1 @@ -165836,6 +165792,7 @@ zeroq.cl, 1 zeroscaler.io, 1 zerosector.io, 1 zeroseteatacado.com.br, 1 +zerotolerance.me, 1 zerotoleranceclan.tk, 1 zerotoone.de, 1 zerotoone.studio, 0 @@ -165883,8 +165840,8 @@ zeusindia.tk, 1 zeva-mundial.co.uk, 1 zevelev.net, 1 zevenbergenbos.tk, 1 +zevrobroker.com, 1 zewtie.com, 1 -zeynabacademy.com, 1 zeyoking.com, 1 zezov.com, 1 zf.com, 1 @@ -165980,7 +165937,6 @@ zhis.ltd, 1 zhitanska.com, 1 zhitomir-news.ru, 1 zhivoe.tk, 1 -zhixiu.com, 1 zhiyulife.pp.ua, 1 zhl123.com, 1 zhodani.space, 1 @@ -165989,7 +165945,6 @@ zhodino.ga, 1 zhonghongshunlian.com, 1 zhongxia.me, 1 zhongzicili.ws, 1 -zhongzilou.com, 1 zhorizon.jp, 1 zhouba.cz, 1 zhoujianghan.com, 0 @@ -166081,8 +166036,10 @@ zimmer-voss.de, 1 zimmerei-lehner.de, 1 zimmertech.net, 1 zimmo.be, 1 +zimo.fr, 1 zimperium.com, 0 zimpler.com, 1 +zimpligo.com, 1 zimt.gay, 1 zinabnews.tk, 1 zinchenko.gq, 1 @@ -166115,10 +166072,10 @@ zipalerts.com, 1 zipanguelike.com, 1 zipanguelike.run, 1 ziparcfhive.ga, 1 +zipe.ai, 1 ziphealthy.com, 1 zipjobs.com, 1 zipmedia.eu, 1 -zipnews.org, 1 zippie.tk, 1 zippingus.com, 1 zippo-days.me, 0 @@ -166227,6 +166184,7 @@ zlatapacka.cz, 1 zlatatlapka.cz, 1 zlatograd.bg, 1 zlatom.ru, 1 +zlatyruce.cz, 1 zlavomat.sk, 1 zlhuodong.vip, 1 zlima12.com, 1 @@ -166296,7 +166254,6 @@ zode.co, 1 zodee.com.au, 1 zodgame.xyz, 1 zodiacohouses.com, 1 -zodiaconline.com, 1 zodiak.tk, 1 zodii.bg, 1 zoeamar.com, 1 @@ -166308,8 +166265,8 @@ zoepolitics.ga, 1 zoepolitics.gq, 1 zoepolitics.ml, 1 zoetanxuanyo.com, 1 +zoeweston.com, 1 zoeyvid.de, 1 -zof.kh.ua, 1 zoflora.co.uk, 1 zofran-medication.cf, 1 zofran.ga, 1 @@ -166321,7 +166278,6 @@ zofrex.com, 0 zofzpcb.com, 1 zogatest.tk, 1 zogevikst.nl, 1 -zohditech.com, 1 zoho.com, 1 zoho.com.au, 1 zoho.eu, 1 @@ -166475,6 +166431,7 @@ zontractors.com, 1 zoo-tver.ru, 1 zooforum.tk, 1 zoogbook.ml, 1 +zoohl.com, 1 zooish.net, 1 zook.pw, 1 zook.systems, 1 @@ -166506,7 +166463,6 @@ zootime.org, 1 zoowiki.us, 1 zooxdata.com, 1 zopa.com, 1 -zor.com, 1 zorasvobodova.cz, 1 zorgbeurs.nl, 1 zorgclustertool.nl, 1 @@ -166634,6 +166590,7 @@ zubilo-perm.ru, 1 zubr.net, 1 zubro.net, 0 zuccarellostiftelsen.no, 1 +zuccolivillage.com.au, 1 zudomc.me, 1 zuefle.net, 1 zuehlcke.de, 1 @@ -166652,7 +166609,6 @@ zuitaotu.com, 1 zuivelonline.nl, 1 zuiverjegeest.nl, 1 zuiververloskundigen.nl, 1 -zuklescentras.lt, 1 zukong.party, 1 zukunft-mobilitaet.net, 1 zukunft-niederrhein.de, 1 @@ -166660,6 +166616,7 @@ zukunftswege.at, 1 zula.africa, 1 zulaoyun.ml, 1 zulfumehmet.tk, 1 +zuliette.com, 1 zulius.com, 1 zulu.ro, 1 zum-ziegenhainer.de, 1 @@ -166707,7 +166664,7 @@ zverovod.info, 1 zverskij-site.tk, 1 zvezdy-porno.ml, 1 zvh.io, 1 -zvo.me, 1 +zvo.me, 0 zvps.uk, 1 zvukipro.com, 0 zvvtheboys.tk, 1 @@ -166719,6 +166676,8 @@ zwemclub-rob.nl, 0 zwemschooldezwaantjes.tk, 1 zwergenfeste.ch, 1 zwerimex.com, 1 +zwerkandsons.com, 1 +zwg.me, 1 zwhblog.xyz, 0 zwickau.de, 1 zwijndrecht.nl, 1 diff --git a/icecat/security/manager/tools/log_list.json b/icecat/security/manager/tools/log_list.json index bd9cf2bf96..7d4535af55 100644 --- a/icecat/security/manager/tools/log_list.json +++ b/icecat/security/manager/tools/log_list.json @@ -1,6 +1,6 @@ { - "version": "84.3", - "log_list_timestamp": "2026-02-15T12:53:28Z", + "version": "85.16", + "log_list_timestamp": "2026-03-15T13:34:00Z", "operators": [ { "name": "Google", @@ -515,12 +515,8 @@ "url": "https://oak.ct.letsencrypt.org/2026h1/", "mmd": 86400, "state": { - "readonly": { - "timestamp": "2025-12-12T22:30:00Z", - "final_tree_head": { - "sha256_root_hash": "deSRNfTNPgd9wfzoXIznvi+QUTxuK0R+daC6JGKGK3Q=", - "tree_size": 598614696 - } + "retired": { + "timestamp": "2026-02-28T00:00:00Z" } }, "temporal_interval": { @@ -535,12 +531,8 @@ "url": "https://oak.ct.letsencrypt.org/2026h2/", "mmd": 86400, "state": { - "readonly": { - "timestamp": "2025-12-12T22:30:00Z", - "final_tree_head": { - "sha256_root_hash": "uTgg1k3DUbSFFdXewyyxbsQuCc9RupplMphTwtXqvf4=", - "tree_size": 130815692 - } + "retired": { + "timestamp": "2026-02-28T00:00:00Z" } }, "temporal_interval": { diff --git a/icecat/security/sandbox/win/src/sandboxbroker/sandboxBroker.cpp b/icecat/security/sandbox/win/src/sandboxbroker/sandboxBroker.cpp index 38d677b9a5..999601df0f 100644 --- a/icecat/security/sandbox/win/src/sandboxbroker/sandboxBroker.cpp +++ b/icecat/security/sandbox/win/src/sandboxbroker/sandboxBroker.cpp @@ -400,34 +400,34 @@ static void AddLLVMProfilePathDirectoryToPolicy( #undef WSTRING static void EnsureAppLockerAccess(sandbox::TargetPolicy* aPolicy) { - if (aPolicy->GetLockdownTokenLevel() < sandbox::USER_LIMITED) { - // The following rules are to allow DLLs to be loaded when the token level - // blocks access to AppLocker. If the sandbox does not allow access to the - // DLL or the AppLocker rules specifically block it, then it will not load. - auto result = aPolicy->AddRule(sandbox::TargetPolicy::SUBSYS_FILES, - sandbox::TargetPolicy::FILES_ALLOW_READONLY, - L"\\Device\\SrpDevice"); - if (sandbox::SBOX_ALL_OK != result) { - NS_ERROR("Failed to add rule for SrpDevice."); - LOG_E("Failed (ResultCode %d) to add read access to SrpDevice", result); - } - result = aPolicy->AddRule( - sandbox::TargetPolicy::SUBSYS_REGISTRY, - sandbox::TargetPolicy::REG_ALLOW_READONLY, - L"HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Control\\Srp\\GP\\"); - if (sandbox::SBOX_ALL_OK != result) { - NS_ERROR("Failed to add rule for Srp\\GP."); - LOG_E("Failed (ResultCode %d) to add read access to Srp\\GP", result); - } - // On certain Windows versions there is a double slash before GP. - result = aPolicy->AddRule( - sandbox::TargetPolicy::SUBSYS_REGISTRY, - sandbox::TargetPolicy::REG_ALLOW_READONLY, - L"HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Control\\Srp\\\\GP\\"); - if (sandbox::SBOX_ALL_OK != result) { - NS_ERROR("Failed to add rule for Srp\\\\GP."); - LOG_E("Failed (ResultCode %d) to add read access to Srp\\\\GP", result); - } + // At USER_LIMITED and above AppLocker is not blocked. + if (aPolicy->GetLockdownTokenLevel() >= sandbox::USER_LIMITED) { + return; + } + + // The ntdll check SaferpIsV2PolicyPresent reads from this key. + auto result = aPolicy->AddRule( + sandbox::TargetPolicy::SUBSYS_REGISTRY, + sandbox::TargetPolicy::REG_ALLOW_READONLY, + LR"(HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Srp\GP\)"); + if (sandbox::SBOX_ALL_OK != result) { + NS_ERROR(R"(Failed to add rule for Srp\GP.)"); + LOG_E(R"(Failed (ResultCode %d) to add read access to Srp\GP)", result); + } + + // When AppLocker is deployed via Mobile Device Management, without this + // rule SaferpIsV2PolicyPresent silently fails to detect AppLocker, causing + // the AppLocker check to be bypassed entirely. + AddCachedWindowsDirRule(aPolicy, sandbox::TargetPolicy::FILES_ALLOW_READONLY, + FOLDERID_System, uR"(\AppLocker\MDM)"_ns); + + // Read access to this device is required to make the AppLocker ioctl call. + result = aPolicy->AddRule(sandbox::TargetPolicy::SUBSYS_FILES, + sandbox::TargetPolicy::FILES_ALLOW_READONLY, + LR"(\Device\SrpDevice)"); + if (sandbox::SBOX_ALL_OK != result) { + NS_ERROR("Failed to add rule for SrpDevice."); + LOG_E("Failed (ResultCode %d) to add read access to SrpDevice", result); } } diff --git a/icecat/services/settings/dumps/blocklists/addons-bloomfilters.json b/icecat/services/settings/dumps/blocklists/addons-bloomfilters.json index fd739e7e06..1e4a9d483e 100644 --- a/icecat/services/settings/dumps/blocklists/addons-bloomfilters.json +++ b/icecat/services/settings/dumps/blocklists/addons-bloomfilters.json @@ -5,6802 +5,2384 @@ "blocked": [], "unblocked": [], "softblocked": [ - "brycekrispy-ai-typing@flowwrite:1.2.1", - "brycekrispy-ai-typing@flowwrite:1.2.2", - "brycekrispy-ai-typing@flowwrite:1.3.0", - "bookhub@d0dg3r:2.0.1", - "webmailnoads@ies-nyc.com:5.15.1.81", - "webmailnoads@ies-nyc.com:5.15.1.92", - "webmailnoads@ies-nyc.com:5.15.1.95", - "{6e173535-34c7-41eb-a534-f15a532b507d}:1.2", - "{412bc1a7-36cc-47cb-940d-ecde5e53f478}:2.1.23", - "{412bc1a7-36cc-47cb-940d-ecde5e53f478}:2.1.25", - "{412bc1a7-36cc-47cb-940d-ecde5e53f478}:2.2.7", - "{412bc1a7-36cc-47cb-940d-ecde5e53f478}:2.2.10", - "{89d19b73-3ebc-4c95-90b2-912b6fff39f5}:2.1.16", - "{89d19b73-3ebc-4c95-90b2-912b6fff39f5}:2.1.21", - "{89d19b73-3ebc-4c95-90b2-912b6fff39f5}:2.1.22", - "{89d19b73-3ebc-4c95-90b2-912b6fff39f5}:2.1.23", - "{89d19b73-3ebc-4c95-90b2-912b6fff39f5}:2.1.25", - "{89d19b73-3ebc-4c95-90b2-912b6fff39f5}:2.2.7", - "{89d19b73-3ebc-4c95-90b2-912b6fff39f5}:2.2.10", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.0.1", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.0.4", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.0.6", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.0.7", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.0.8", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.0.9", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.0.10", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.0.12", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.0", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.3", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.4", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.5", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.6", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.7", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.8", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.10", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.11", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.14", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.16", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.21", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.23", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.1.25", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.2.7", - "{7da5d9c6-3139-47ec-b635-542dbf2fe246}:2.2.10", - "avito-automation@example.com:1.0.0", - "url-gate@extension:3.0", - "url-gate@extension:3.1", - "simplemmo-tracker@example.com:0.1.0", - "gesture-for-android@example.com:1.0" + "{1d7d94c1-bda7-4851-9f9f-8802d2145255}:1.0", + "0196aafab5f143ffa24eee1274cef097@gmail.com:1.0", + "{4bcff424-8601-494b-a1dc-527f835e049f}:4.0", + "video-speed-controller@dmm-sokmil:1.0", + "{a42e0ede-3ffd-4b0b-824c-d539243bba03}:2.7.6", + "{a42e0ede-3ffd-4b0b-824c-d539243bba03}:2.7.7" ] }, - "schema": 1771202189350, + "schema": 1773621381773, "key_format": "{guid}:{version}", - "stash_time": 1771223706403, - "id": "7692c0bf-09f6-4102-973d-1beeb7ead83b", - "last_modified": 1771223791639 + "stash_time": 1773642905253, + "id": "8d0e0503-f971-464e-b55f-8faa0cd86bee", + "last_modified": 1773642980627 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "{24979cc7-7804-4384-98c9-b2172d26be1c}:1.0", - "instagram-focused@extension.local:1.0", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:5.8", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:5.7", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:5.6", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:5.5", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.7.3", - "{fc12cc8f-9663-4c6d-b200-2d755483e994}:1.0", - "{fc12cc8f-9663-4c6d-b200-2d755483e994}:1.1", - "{fc12cc8f-9663-4c6d-b200-2d755483e994}:1.2", - "affine-clipper-ff@yourdomain.com:0.0.7", - "affine-clipper-ff@yourdomain.com:0.0.7.1", - "{55dd8b4b-ca29-4dd5-8caf-22fb7f4bec3e}:1.0", - "{5269d88e-a67a-47dd-ab73-a2ac01562e04}:1.0", - "{c573bebb-d1f4-4f35-ba16-3998f0d4230a}:1.0" + "weakwords@lucasr.posteo.us:1.0.0", + "chatgpt-speedfix@local:2.1.5.1", + "ratnot@dev:0.8.15", + "tabconductor@antigravity.test:1.0.0", + "tabconductor@antigravity.test:1.0.1", + "tabconductor@antigravity.test:1.0.2", + "private-homepage@local:1.0", + "private-homepage@local:1.1", + "private-homepage@local:1.2", + "private-homepage@local:1.3", + "private-homepage@local:1.4", + "private-homepage@local:1.5", + "private-homepage@local:1.6", + "private-homepage@local:1.7", + "private-homepage@local:1.8", + "tabconductor@antigravity.test:1.0.3", + "lacemarket-user-blocker@localhost:2.0.2", + "{eff8657c-4e47-4869-8384-bb4de05e51cc}:1.0" ] }, - "schema": 1771180591238, + "schema": 1773599779791, "key_format": "{guid}:{version}", - "stash_time": 1771202106296, - "id": "b761652d-4f5b-4b84-82ab-763b910623cc", - "last_modified": 1771202189042 + "stash_time": 1773621305564, + "id": "fddf065f-5c36-4be9-8c43-a27d02f31c43", + "last_modified": 1773621381546 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "itznotmemail@web.de:0.1.5", - "itznotmemail@web.de:0.1.4", - "itznotmemail@web.de:0.1.3", - "itznotmemail@web.de:0.1.2", - "flaggy@jnylen.nu:1.1.2", - "@scrydan:1.0", - "speedtest@bigtify.net:1.0.0", - "speedtest@bigtify.net:1.1.0", - "speedtest@bigtify.net:2.0.0", - "{f2c0d4a2-85ae-4eb5-a5a2-f340d4de6b25}:0.0.1", - "{f2c0d4a2-85ae-4eb5-a5a2-f340d4de6b25}:0.0.2", - "{f2c0d4a2-85ae-4eb5-a5a2-f340d4de6b25}:0.0.5", - "tab-switcher@HimitsuArashi.com:1.0", - "entregas@easytech.com.br:1.0.0", - "entregas@easytech.com.br:1.0.1", - "entregas@easytech.com.br:1.0.2", - "entregas@easytech.com.br:1.0.3", - "pideva4327@manupay.com:2.1", - "warframe-market-lang-toggle@local:1.3", - "brycekrispy-ai-typing@icecat:1.2.0", - "{7f3a9c2b-2222-4f1a-b5c6-9e2d1a8f4b70}:1.0.26", - "{7f3a9c2b-2222-4f1a-b5c6-9e2d1a8f4b70}:1.0.25", - "{7f3a9c2b-2222-4f1a-b5c6-9e2d1a8f4b70}:1.0.24", - "{7f3a9c2b-2222-4f1a-b5c6-9e2d1a8f4b70}:1.0.20", - "@sc-fleet-info-v2:0.1", - "@sc-fleet-info-v2:0.2" + "smart-nav-fusion@example.com:2.0.0", + "pinnedtabsync@example.com:1.0", + "pinnedtabsync@example.com:1.0.0", + "pinnedtabsync@example.com:1.0.1", + "pinnedtabsync@example.com:1.0.2", + "pinnedtabsync@example.com:1.0.3", + "pinnedtabsync@example.com:1.0.4", + "boosmap-ruteo-zonas@addon:1.6", + "fox112-assistent@ab-softwerkstatt.de:2.6.6", + "sreader-solver@ben:1.0", + "boosmap-ruteo-zonas-fast@addon:2.2", + "tabshare@tab-mail-extension:0.1.0", + "{6d15731b-9610-4a4d-af6f-ba90caaca38f}:1.0", + "{315900f0-158b-11f1-b4ac-0800200c9a66}:1.1", + "{315900f0-158b-11f1-b4ac-0800200c9a66}:1.2", + "{315900f0-158b-11f1-b4ac-0800200c9a66}:1.6", + "{315900f0-158b-11f1-b4ac-0800200c9a66}:1.5", + "{315900f0-158b-11f1-b4ac-0800200c9a66}:1.4", + "boosmap-ruteo-dynamic@addon:3.0", + "flowlist-organizer@yourname:3.0", + "boosmap-zonas-2026@boosmap:4.0", + "chatgpt-dom-cleaner@local:1.3", + "mahdi9almusaad@gmail.com:1", + "mahdi9almusaad@gmail.com:2", + "{d3b3f5a2-7c1e-4e8a-9f2b-1a5c8d6e4f3b}:1.0", + "dckafdjeeaigohlilbbifkdoajddgafl@chrome-store-foxified-3891248527:1.26.103", + "{6405f5ec-2495-4e8b-9cdb-2073cc186b66}:1.0" ] }, - "schema": 1771158978636, + "schema": 1773578181614, "key_format": "{guid}:{version}", - "stash_time": 1771180507091, - "id": "bfe11a34-beb0-48d6-acb2-c6a3a3c238b3", - "last_modified": 1771180591002 + "stash_time": 1773599705463, + "id": "5d1c7449-2264-4f99-b9d6-6eb37f3dcf46", + "last_modified": 1773599779659 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "favory@sp4ce.pw:3.1.3", - "favory@sp4ce.pw:3.1.4", - "youtube-tab-sorter@local:2.5", - "pixel-art-picker@local:0.1.5", - "pixel-art-picker@local:0.1.3", - "pixel-art-picker@local:0.1.4", - "pixel-art-picker@local:0.1.6", - "pixel-art-picker@local:0.1.2", - "pixel-art-picker@local:0.1.1", - "pixel-art-picker@local:0.1.0", - "@elvenar-helper-extension:6.0.10", - "n.addon@example.com:5.2.1", - "{474c822d-da26-4dff-b0ca-fd834c018203}:1.0" + "vine-order-helper@htmb.com:1.0.2", + "vine-order-helper@htmb.com:1.0.1", + "vine-order-helper@htmb.com:1.0.3", + "saviosabu05@gmail.com:1.0.0", + "your-extension@example1111111111111101.com:2.6", + "your-extension@example111111111111111.com:2.6", + "plur@local:0.1.0", + "entra-analyzer@local.dev:1.5", + "entra-analyzer@local.dev:1.1", + "entra-analyzer@local.dev:1.6", + "smart-nav-fusion@example.com:1.0.6", + "PaperTrading4Dhan@viraniac.com:1.0.1", + "fdown-auto@deepeace:1.0", + "benjamin.tiktok-to-ytdlp@local:1.4.1", + "retire.js-pro@silico-industries:3.0.0", + "retire.js-pro@silico-industries:3.1.0", + "proxyswitch@ahmedabdelrady:1.0.0", + "volume-booster747@example.com:1.0", + "geminitoctoc@aosl.jb:1.9", + "geminitoctoc@aosl.jb:2.0", + "geminitoctoc@aosl.jb:2.01", + "smart-nav-fusion@example.com:2.0.1", + "re-recss@chksky:1.0.0" ] }, - "schema": 1771137391587, + "schema": 1773556582540, "key_format": "{guid}:{version}", - "stash_time": 1771158905376, - "id": "55f7a7e0-dfb6-437e-b504-c4098727aaa0", - "last_modified": 1771158978329 + "stash_time": 1773578105639, + "id": "2ca999cd-4140-4ff9-b633-777d91fb40ce", + "last_modified": 1773578181449 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "janitor@whoswhip.dev:0.1.0", - "@nosloping-fox:1.0", - "{25310851-e5bd-4dce-bb14-9876fbdb1554}:1.0", - "rx-vault@rx-studio.com:0.1.0", - "gundulagause@example.com:0.1.0", - "favory@sp4ce.pw:3.1.2", - "hurtownie-perfum@euforia.pl:1.0", - "{90483b33-2793-4aa2-9e1f-8bddce03828a}:1.0" + "meme-coins-tracker@panel.local:1.0.0", + "{8c9f0c3a-6e2a-4c9c-b7b2-1e5a7b6c9d10}:1.0.0", + "{1cbda93c-9f00-4cb1-8e9f-ee3fdacd6a09}:1.0", + "ff-unlisted@cluerate.qa:0.2.20", + "ff-unlisted@cluerate.qa:0.2.21", + "{9ec549b3-dfb0-400b-8360-f2a8d27eb8a5}:1.0", + "{9ec549b3-dfb0-400b-8360-f2a8d27eb8a5}:2.0", + "{9ec549b3-dfb0-400b-8360-f2a8d27eb8a5}:3.0", + "{a4cf00a0-53f4-4c96-ad5c-78327bb895c1}:1.0", + "{a4cf00a0-53f4-4c96-ad5c-78327bb895c1}:2.0", + "{a4cf00a0-53f4-4c96-ad5c-78327bb895c1}:3.0", + "{ffb3cbc3-3c7f-4171-8521-705425ca4cdc}:1.0", + "{9118d155-d0df-4ecf-8307-d22d4a3a4bc0}:1.0", + "{767d0eaf-e392-4474-9e8d-9036fbe89b4f}:5.0.1" ] }, - "schema": 1771115800444, + "schema": 1773534978789, "key_format": "{guid}:{version}", - "stash_time": 1771137306682, - "id": "4dfabb90-23c7-4bf1-8151-1dc30bbd0f6f", - "last_modified": 1771137391359 + "stash_time": 1773556505272, + "id": "c3a891bf-d567-4ebd-8ef1-5a9c9924c451", + "last_modified": 1773556582326 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "chazvibes-ponyplug001@local:1.1", - "youtube-short-filter@mehdi.be:1.0.0", - "{913b7e4c-91ec-4ea2-800f-5077b42cd7ff}:4.8.13", - "{913b7e4c-91ec-4ea2-800f-5077b42cd7ff}:4.8.12", - "{913b7e4c-91ec-4ea2-800f-5077b42cd7ff}:4.8.11", - "{913b7e4c-91ec-4ea2-800f-5077b42cd7ff}:4.8.15", - "{7f3a9c2b-2222-4f1a-b5c6-9e2d1a8f4b70}:1.0.22" + "flick-aegis-otp@serendeep.com:1.0.0", + "shovelshare@extension:1.0", + "shovelshare@extension:1.3", + "rudik26@gmail.com:0.9.951", + "cleartext@geeknik:0.1.0", + "mozilla-bridge@example.org:0.1.2", + "mozilla-bridge@example.org:0.1.1", + "{0c200c09-37c5-49f4-8eca-bc5f25d79e0d}:1.0.0", + "{0c200c09-37c5-49f4-8eca-bc5f25d79e0d}:101.1", + "{0c200c09-37c5-49f4-8eca-bc5f25d79e0d}:105.0", + "{0c200c09-37c5-49f4-8eca-bc5f25d79e0d}:106.0.1", + "cleartext@geeknik:0.1.1", + "cleartext@geeknik:0.1.2", + "{53a3ca60-900c-4eca-9ab6-c96484482ef0}:1.0", + "tc-daily-user-log@truecomfort:1.0.0", + "tc-daily-user-log@truecomfort:1.1.0", + "tc-daily-user-log@truecomfort:1.3.0", + "tc-daily-user-log@truecomfort:1.4.0", + "tc-daily-user-log@truecomfort:1.5.0", + "tc-daily-user-log@truecomfort:1.6.0", + "tc-daily-user-log@truecomfort:1.7.0", + "tc-daily-user-log@truecomfort:1.8.0", + "cga-investigation@certcga.com:1.4.0", + "cga-investigation@certcga.com:2.0.0", + "cga-investigation@certcga.com:2.1.2", + "cluerate@cluerate.com:0.2.4", + "cluerate@cluerate.com:0.2.5", + "cluerate@cluerate.com:0.2.6", + "cluerate@cluerate.com:0.2.8", + "cluerate@cluerate.com:0.2.7", + "swish-jira@internal:1.0.0", + "cluerate@cluerate.qa:0.2.17", + "cluerate@cluerate.qa:0.2.18", + "cluerate@cluerate.com:0.2.9", + "cluerate@cluerate.com:0.2.10", + "cluerate@cluerate.com:0.2.11", + "cluerate@cluerate.com:0.2.13", + "cluerate@cluerate.com:0.2.16", + "hmjkmjkepdijhoojdojkdfohbdgmmhki@chrome-store-foxified--598764597:3.1.17453.955", + "nckgahadagoaajjgafhacjanaoiihapd@chrome-store-foxified--598764597:2017.1019.418.1", + "ejjicmeblgpmajnghnpcppodonldlgfn@chrome-store-foxified--598764597:4.5.10", + "cmkneeaihlcdllananjlkmppnkdahdcc@chrome-store-foxified--598764597:0.0.9.4", + "{8c739e61-4665-4b27-892a-383aea9c7c77}:1.24.8", + "swisscows@celenity.dev:0.0.4", + "swisscows@celenity.dev:0.0.3", + "swisscows@celenity.dev:0.0.2", + "swisscows@celenity.dev:0.0.1", + "startpage@celenity.dev:0.0.5", + "startpage@celenity.dev:0.0.4", + "startpage@celenity.dev:0.0.3", + "startpage@celenity.dev:0.0.2", + "startpage@celenity.dev:0.0.1", + "no-search@celenity.dev:0.0.5", + "no-search@celenity.dev:0.0.4", + "no-search@celenity.dev:0.0.3", + "no-search@celenity.dev:0.0.2", + "no-search@celenity.dev:0.0.1", + "mojeek@celenity.dev:0.0.5", + "mojeek@celenity.dev:0.0.4", + "mojeek@celenity.dev:0.0.3", + "mojeek@celenity.dev:0.0.2", + "mojeek@celenity.dev:0.0.1", + "google-leta@celenity.dev:0.0.2", + "google-leta@celenity.dev:0.0.1", + "brave-leta@celenity.dev:0.0.2", + "brave-leta@celenity.dev:0.0.1", + "duckduckgo-lite@celenity.dev:0.0.5", + "duckduckgo-lite@celenity.dev:0.0.4", + "duckduckgo-lite@celenity.dev:0.0.3", + "duckduckgo-lite@celenity.dev:0.0.1", + "duckduckgo-html@celenity.dev:0.0.7", + "duckduckgo-html@celenity.dev:0.0.6", + "duckduckgo-html@celenity.dev:0.0.4", + "duckduckgo-html@celenity.dev:0.0.2", + "duckduckgo-html@celenity.dev:0.0.1", + "ddg@celenity.dev:0.0.3", + "ddg@celenity.dev:0.0.2", + "ddg@celenity.dev:0.0.1", + "duck-test@celenity.dev:0.0.1" ] }, - "schema": 1771094187551, + "schema": 1773513383460, "key_format": "{guid}:{version}", - "stash_time": 1771115706750, - "id": "cba135d7-0eaa-41a7-85fd-a42f50a262d2", - "last_modified": 1771115800228 + "stash_time": 1773534905507, + "id": "1ac423c1-79fe-4531-9c31-fe8b5b82e056", + "last_modified": 1773534978573 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "webrtc-ip-mask@extension:10.0.0", - "webrtc-ip-mask@extension:16.0", - "chazvibes-ponyplug001@local:1.0", - "boadgeojelhgndaghljhdicfkmllpafd@chrome-store-foxified-319909815:15.1120.0.4", - "{9ffe3ac9-488d-4f04-82bf-2584917ff553}:1.0", - "{9ffe3ac9-488d-4f04-82bf-2584917ff553}:1.1", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.7.2", - "{11cfd46d-f1de-465f-85ba-a59078bf9869}:1.0", - "{11cfd46d-f1de-465f-85ba-a59078bf9869}:1.1", - "{11cfd46d-f1de-465f-85ba-a59078bf9869}:1.1.1", - "{11cfd46d-f1de-465f-85ba-a59078bf9869}:1.2.0", - "{11cfd46d-f1de-465f-85ba-a59078bf9869}:1.2.2", - "{11cfd46d-f1de-465f-85ba-a59078bf9869}:1.2.3", - "{11cfd46d-f1de-465f-85ba-a59078bf9869}:1.2.4", - "com.tuonome.calcolatore-orario@addon:1.0", - "{8cd63403-0a72-4d8f-b973-c5318f3ab87c}:1.3", - "us-tz-spoofer-pro-v1@extension:3.0.0", - "@elvenar-helper-extension:6.0.1", - "@elvenar-helper-extension:6.0.0", - "@elvenar-helper-extension:5.9.1", - "vot-extension@local:1.11.0", - "{913b7e4c-91ec-4ea2-800f-5077b42cd7ff}:4.8.14", - "@elvenar-helper-extension:6.0.9", - "{62D72314-8CAC-47A8-ABE3-34B5B1BC35CC}:1.0", - "new-resolution-gotestingspace@gmail.com:0.0.0.1", - "new-resolution-gotestingspace@gmail.com:0.0.0.2", - "new-resolution-gotestingspace@gmail.com:0.0.0.3", - "f-ocr-gotestingspace@gmail.com:0.0.0.9", - "f-ocr-gotestingspace@gmail.com:0.0.0.10", - "f-ocr-gotestingspace@gmail.com:0.0.0.11", - "f-ocr-gotestingspace@gmail.com:0.0.0.12", - "f-ocr-gotestingspace@gmail.com:0.0.0.13", - "f-ocr-gotestingspace@gmail.com:0.0.0.14", - "dhiaggccakkgdfcadnklkbljcgicpckn@chrome-store-foxified--501995561:5.12.1" + "poteto@vnnet:1.0.0", + "poteto@vnnet:1.8.0", + "poteto@vnnet:2.5.6", + "poteto@vnnet:2.5.8", + "poteto@vnnet:2.6.0", + "poteto@vnnet:2.7.0", + "poteto@vnnet:2.7.2", + "poteto@vnnet:2.7.3", + "poteto@vnnet:2.7.5", + "poteto@vnnet:2.8.5", + "poteto@vnnet:3.1.0", + "poteto@vnnet:3.1.2", + "poteto@vnnet:3.7.1", + "modrinthproxy@bm:1.0", + "modrinthproxy@bm:1.1", + "ltvpn@org:1.0.3.3", + "ltvpn@org:1.0.5", + "ltvpn@org:1.0.5.1", + "ltvpn@org:1.0.6", + "{bf31eb31-0890-4da4-9cb5-f2c3dffed0bb}:2.0", + "hoverzoom-clean@proton.user:1.6", + "hoverzoom-clean@proton.user:1.5", + "hoverzoom-clean@proton.user:1.4", + "hoverzoom-clean@proton.user:1.3", + "fox112-assistent@ab-softwerkstatt.de:2.6.4", + "{95191f08-bd9c-4c25-aa0d-dc397afc1293}:1.0", + "phub-refined@myself.me:3.2.0", + "disextension@dispattern.com:1.0.1", + "disextension@dispattern.com:1.0.6", + "ekpipjofdicppbepocohdlgenahaneen@chrome-store-foxified--1589708663:1.7.2", + "{9b1cad53-bfe5-4401-a71b-9651a8b3dc93}:1.2.0", + "{9b1cad53-bfe5-4401-a71b-9651a8b3dc93}:1.3.0", + "{1de1557d-dd95-4e7a-b305-0409bea924af}:0.2.1", + "{1de1557d-dd95-4e7a-b305-0409bea924af}:0.2.2", + "{1de1557d-dd95-4e7a-b305-0409bea924af}:0.2.3", + "{1de1557d-dd95-4e7a-b305-0409bea924af}:0.2.4", + "{1de1557d-dd95-4e7a-b305-0409bea924af}:0.2.5", + "{1de1557d-dd95-4e7a-b305-0409bea924af}:0.2.6", + "{1de1557d-dd95-4e7a-b305-0409bea924af}:0.2.7", + "{1de1557d-dd95-4e7a-b305-0409bea924af}:0.2.8", + "disextension@dispattern.com:1.0.7", + "disextension@dispattern.com:1.1.0", + "{d3e2f0a1-1234-5678-9abc-def012345677}:2.0", + "osm-search@example.com:1.1", + "@vrp-assistant:0.1.0", + "aria2-browser-integration@localhost:1.2", + "aria2-manager-shihab@extension:1.0", + "{4390f3d5-3744-4219-af16-c6f2b988eb3d}:1.0.2" ] }, - "schema": 1771072589213, + "schema": 1773491781544, "key_format": "{guid}:{version}", - "stash_time": 1771094105351, - "id": "81c431cb-7635-46b5-bfc9-3fa4a975f4e0", - "last_modified": 1771094187149 + "stash_time": 1773513305231, + "id": "45f7e2dc-1fe6-4de6-a90b-d11f0b866c1d", + "last_modified": 1773513383293 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "{6d4db558-659b-40f6-aa0d-dcfd3137e203}:1.0", - "{6d4db558-659b-40f6-aa0d-dcfd3137e203}:1.1.0", - "youtubeplaybackinfo@orellazri.com:1.0", - "youtubeplaybackinfo@orellazri.com:1.1.0", - "youtubeplaybackinfo@orellazri.com:1.1.1", - "youtubeplaybackinfo@orellazri.com:1.1.2", - "owa_notifications@mbahnizen:1.3", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.6.3", - "{913b7e4c-91ec-4ea2-800f-5077b42cd7ff}:4.8.10", - "{913b7e4c-91ec-4ea2-800f-5077b42cd7ff}:4.8.9", - "bmeia-direct-scheduler@baryonx:1.1", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.7.0", - "webrtc-ip-mask@extension:17.0" + "{5e54ba25-22ee-4db1-9a04-6fb12f2cc3ba}:1.0", + "{5e54ba25-22ee-4db1-9a04-6fb12f2cc3ba}:1.1", + "{5e54ba25-22ee-4db1-9a04-6fb12f2cc3ba}:2.0", + "work-tools@emalekov-emil:5.9", + "omni-availability-monitor@lavankundana.dev:1.0", + "{b9745c42-5b64-4f58-aa75-5b839a441be5}:1.0", + "{b9745c42-5b64-4f58-aa75-5b839a441be5}:2.0", + "{a2d44f3d-51eb-44b4-9847-44ceea4e6148}:1.0", + "{a2d44f3d-51eb-44b4-9847-44ceea4e6148}:2.0", + "{80370e9d-f916-4bdc-a036-7a90fe9ae6fb}:1.0", + "slime-tabs-lord-pub@pepeyc7526.github.io:4.0" ] }, - "schema": 1771050995011, + "schema": 1773470193464, "key_format": "{guid}:{version}", - "stash_time": 1771072505996, - "id": "b648d872-b3fc-4898-8bc9-9e6212067e8f", - "last_modified": 1771072588985 + "stash_time": 1773491705888, + "id": "ad3338ef-b9ae-43ee-9190-358217771cf2", + "last_modified": 1773491781382 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "aws-prod-highlighter@example.com:1.0.0", - "flowtab@extension:1.0.0", - "ai-typing-assistant@brycepearson09:1.1.0", - "ai-typing-assistant@brycepearson09:1.2.0" + "{9ec4a3e1-f723-4aac-b44e-05e7d29e6964}:1.7.9", + "{9ec4a3e1-f723-4aac-b44e-05e7d29e6964}:1.8.1", + "{15004d56-aba0-460f-a1e7-8219fa0d5b49}:1.0", + "unified-msc-plugin@adobe.com:2.4.0", + "unified-msc-plugin@adobe.com:2.3.0", + "unified-msc-plugin@adobe.com:2.0.0", + "unified-msc-plugin@adobe.com:1.0.0", + "readinglist9401@laterread.com:1.0.0", + "Android@bravenhancer.com:21.0.1", + "enhancer@goldenfox.com:21.1.7", + "Iwara_Source_Downloader@esukew:4.1.0.1", + "psvc-test@timhmdv.com:1.3.3", + "omni-monitor@localtest.com:1.0", + "kizz-sound-booster@kizz:4.0", + "kizz-sound-booster-plus@kizz.dev:4.0", + "nytimes-reader-a43e6f6dd1e2@gviso2.com:1.0.8", + "kontenmanager@gmx.de:2026.0.3.5", + "kontenmanager@gmx.de:2026.0.3.6" ] }, - "schema": 1771029390844, + "schema": 1773448583348, "key_format": "{guid}:{version}", - "stash_time": 1771050906163, - "id": "c4ecbbe9-a5d4-45fd-abc8-d5cda21a8e7e", - "last_modified": 1771050994653 + "stash_time": 1773470106929, + "id": "a0609703-563a-44b5-9da9-0b7aeec09e47", + "last_modified": 1773470193299 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "{956582b3-75fc-466c-b709-08851e5b2934}:1.0.0", - "{fa846719-ae52-4cee-a85b-55fadae00b94}:1.1", - "{fa846719-ae52-4cee-a85b-55fadae00b94}:1.2", - "{fa846719-ae52-4cee-a85b-55fadae00b94}:1.3", - "bookmarklet-service@wpf.digital:1.1.1", - "bookmarklet-service@wpf.digital:1.1.2", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.0", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.1", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.2", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.3", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.4", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.5", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.6", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.7", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.8", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.9", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.9.1", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.9.2", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.9.3", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.9.4", - "{68de4974-42f8-4fbc-97db-eca8125ac1f8}:1.9.5", - "@musketier:1.0", - "@musketier:2.0", - "disable-browser-home-button@vrugtehagel:0.0.1" + "@Yomitoru-test:1.0.1", + "@Yomitoru:1.1.0", + "lexx@lexx.com.ua:1.0.0", + "cinema-companion@cinema-companion.local:1.0.0", + "cinema-companion@cinema-companion.local:1.0.1", + "cinema-companion@cinema-companion.local:1.0.2", + "work-tools@emalekov-emil:6.0", + "rove@jinzoningen.xyz:1.1.2", + "info@brie.fyi:1.5.45", + "info@brie.fyi:1.5.46", + "info@brie.fyi:1.5.47", + "mindframe@user-extension:3.4", + "mindframe@user-extension:1.0", + "mindframe@user-extension:1.1", + "mindframe@user-extension:1.1.1", + "{f33c8c6a-997c-4d7b-af58-ee683f8c898f}:1.4.0", + "{5af69f29-046e-4a31-8ce3-307aa32e42b7}:1.6.2.1", + "{21e9db70-fa31-42f2-a042-cdd70cad961d}:1.0", + "gemini-folders@deadbolt:1.0", + "video-speed-controller@local2:1.0.0", + "video-speed-controller@local:1.0.0", + "tangia-dungeon-autojoin@mrpatrick92:3.0.0", + "tangia-dungeon-autojoin@mrpatrick92:2.1.0", + "zoomcontrol6482@viewtools.net:1.0.0", + "zoomcontrol6482@viewtools.net:2.0.0", + "zoomcontrol6482@viewtools.net:3.0.0" ] }, - "schema": 1771007791691, + "schema": 1773426994967, "key_format": "{guid}:{version}", - "stash_time": 1771029306050, - "id": "03aa3e7e-9228-4159-a583-26058a595213", - "last_modified": 1771029390607 + "stash_time": 1773448505245, + "id": "f5c1c0a3-a162-4e12-98d6-c8afd71a5d4e", + "last_modified": 1773448583180 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "{32aadd9f-ebce-40df-9ab3-09b60781fed0}:5.0.0", - "{32aadd9f-ebce-40df-9ab3-09b60781fed0}:5.0.1", - "{32aadd9f-ebce-40df-9ab3-09b60781fed0}:5.2.0", - "{32aadd9f-ebce-40df-9ab3-09b60781fed0}:5.2.1", - "{32aadd9f-ebce-40df-9ab3-09b60781fed0}:5.3.0", - "driver-license-scraper@example.com:1.0", - "rio_wins_0_0_6_5@r10.wtf:0.0.6.5", - "rio_wins_0_0_6_5@r10.wtf:0.0.14", - "Remake-Timer@local:3.0.0", - "test55555@local:1.0.0", - "test55555@local:2.0.0", - "test55555@local:3.0.0", - "Master-timer@local:1.0.0", - "Master-timer@local:2.0.0", - "Master-timer@local:3.0.0", - "Master-timer@local:3.1.0", - "net.linkdumps@share-to.ffx-extension:0.1.3.1", - "net.linkdumps@share-to.ffx-extension:0.1.3.0", - "archive-redirector@yourname.local:1.3", - "archive-redirector@yourname.local:1.4", - "bili-kahe-undo@your-email.com:1.0.3", - "{0109989f-ae52-4b65-9f5a-527a0dbebfff}:1.0", - "{78694dc6-534c-499d-9ef3-8ea5e2d7120a}:1.0", - "{3c207078-f0fd-4621-ad77-8d34249147a7}:1.1.0.0", - "drag_to_privew@uxer:0.0.89", - "{1d63ff81-7862-4580-970c-14b499f91c76}:1.0" + "{3d67ce2d-70b6-4b17-a005-98ddd419bc8e}:1.0", + "raqeem-assistant@example.com:13.6.2", + "{4d40b872-cf7d-49e8-8d70-edfccf837f6e}:0.0.1", + "{4d40b872-cf7d-49e8-8d70-edfccf837f6e}:0.0.2", + "{4d40b872-cf7d-49e8-8d70-edfccf837f6e}:0.0.3", + "tab-autogroup@local:1.0.0", + "{e44c9a23-fe47-4830-8d55-39fc8ff153e3}:1.0", + "{3e32f02e-98dd-475d-810f-4c4679d13675}:2.0.4", + "{3e32f02e-98dd-475d-810f-4c4679d13675}:2.0.5", + "{3e32f02e-98dd-475d-810f-4c4679d13675}:2.1.0", + "{8dbcfe6c-d5c7-48ef-b10c-dcfc3d068805}:1.1", + "gblock@V2.3:2.3", + "{d4d5dbb6-66d0-4ac1-8687-6e3e0834d2ae}:1.2", + "{3f4e86c6-80ec-44de-b62e-d58752d9453a}:5.1.1" ] }, - "schema": 1770986181708, + "schema": 1773405384053, "key_format": "{guid}:{version}", - "stash_time": 1771007706520, - "id": "97ae7d97-c913-4528-b54c-8fbedc9eee68", - "last_modified": 1771007791433 + "stash_time": 1773426906985, + "id": "86c463ff-36aa-4a5c-8a86-022019511004", + "last_modified": 1773426994883 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "{e702b8a6-9c2f-44d3-b797-a207ffdc65ce}:3.1.9", - "{e702b8a6-9c2f-44d3-b797-a207ffdc65ce}:3.1.8", - "{e702b8a6-9c2f-44d3-b797-a207ffdc65ce}:3.1.7", - "{e702b8a6-9c2f-44d3-b797-a207ffdc65ce}:3.1.3", - "{0f390cc4-f49c-408a-838c-877d6d9d8ca3}:4.5.11", - "{0f390cc4-f49c-408a-838c-877d6d9d8ca3}:4.5.13", - "{0f390cc4-f49c-408a-838c-877d6d9d8ca3}:4.5.9", - "{0f390cc4-f49c-408a-838c-877d6d9d8ca3}:4.5.10", - "{0f390cc4-f49c-408a-838c-877d6d9d8ca3}:4.5.8", - "vpn@protons.ch:1.2.10", - "{64a74635-e22f-4354-8728-7e748634af18}:1.0.0", - "{64a74635-e22f-4354-8728-7e748634af18}:1.0.1", - "{64a74635-e22f-4354-8728-7e748634af18}:1.2.0", - "{64a74635-e22f-4354-8728-7e748634af18}:1.3.0", - "{64a74635-e22f-4354-8728-7e748634af18}:2.0.0", - "{64a74635-e22f-4354-8728-7e748634af18}:2.0.1", - "{64a74635-e22f-4354-8728-7e748634af18}:2.0.2", - "{64a74635-e22f-4354-8728-7e748634af18}:2.0.3", - "{64a74635-e22f-4354-8728-7e748634af18}:2.1.0", - "{031e6c8e-48d2-4b36-b55b-c22f25aeac69}:1.0.0", - "gmail-text-refiner@example.com:2.4.4", - "gmail-text-refiner@example.com:2.4.3", - "gmail-text-refiner@example.com:2.4.2", - "gmail-text-refiner@example.com:2.4.1", - "0dman-geo-tool@example.org:1", - "0dman-geo-tool@example.org:1.1", - "0dman-geo-tool@example.org:1.2", - "0dman-geo-tool@example.org:1.3", - "0dman-geo-tool@example.org:1.4", - "0dman-geo-tool@example.org:1.6", - "0dman-geo-tool@example.org:1.7", - "{9af95052-429a-4056-a163-e10253a54734}:0.1", - "{9af95052-429a-4056-a163-e10253a54734}:0.2", - "{9af95052-429a-4056-a163-e10253a54734}:0.3", - "{9af95052-429a-4056-a163-e10253a54734}:0.4", - "{9af95052-429a-4056-a163-e10253a54734}:0.4.1", - "{9af95052-429a-4056-a163-e10253a54734}:0.5.0", - "{9af95052-429a-4056-a163-e10253a54734}:1.0.0", - "{9af95052-429a-4056-a163-e10253a54734}:1.0.2", - "{9af95052-429a-4056-a163-e10253a54734}:1.1.0", - "{9af95052-429a-4056-a163-e10253a54734}:1.2.0", - "{9af95052-429a-4056-a163-e10253a54734}:1.2.1", - "{9af95052-429a-4056-a163-e10253a54734}:1.3.0", - "{9af95052-429a-4056-a163-e10253a54734}:1.4.0", - "{9af95052-429a-4056-a163-e10253a54734}:1.4.1", - "{9af95052-429a-4056-a163-e10253a54734}:1.5.0", - "{9af95052-429a-4056-a163-e10253a54734}:1.5.1", - "info@streamkey.ru:1.0.10", - "info@streamkey.ru:1.0.20", - "info@streamkey.ru:1.0.19", - "info@streamkey.ru:1.0.18", - "info@streamkey.ru:1.0.17", - "info@streamkey.ru:1.0.16", - "info@streamkey.ru:1.0.15", - "info@streamkey.ru:1.0.11", - "info@streamkey.ru:1.0.14", - "info@streamkey.ru:1.0.13", - "info@streamkey.ru:1.0.12", - "info@streamkey.ru:1.0.21", - "info@streamkey.ru:1.0.22", - "info@streamkey.ru:1.0.23", - "info@streamkey.ru:1.0.24", - "info@streamkey.ru:1.0.25", - "info@streamkey.ru:1.0.26", - "info@streamkey.ru:1.0.28", - "info@streamkey.ru:1.0.30", - "info@streamkey.ru:1.0.35", - "info@streamkey.ru:1.0.37", - "info@streamkey.ru:1.0.38", - "info@streamkey.ru:1.0.43", - "info@streamkey.ru:1.0.44", - "info@streamkey.ru:1.0.56", - "mobile-remover-tuonome@example.com:1.0", - "mobile-remover-tuonome@example.com:1.1", - "mobile-remover-tuonome@example.com:1.5" + "{89ec905b-27de-455b-8b04-c80c32e982d4}:1.7.8", + "{89ec905b-27de-455b-8b04-c80c32e982d4}:1.9.9", + "{89ec905b-27de-455b-8b04-c80c32e982d4}:1.9.99", + "{89ec905b-27de-455b-8b04-c80c32e982d4}:2.0.1", + "{3f9a017a-2ccf-4cd6-8cbe-d78ca8c8adba}:1.0", + "{3f9a017a-2ccf-4cd6-8cbe-d78ca8c8adba}:2.2", + "{3f9a017a-2ccf-4cd6-8cbe-d78ca8c8adba}:2.1", + "{3f9a017a-2ccf-4cd6-8cbe-d78ca8c8adba}:2.0", + "{3f9a017a-2ccf-4cd6-8cbe-d78ca8c8adba}:1.5", + "{3f9a017a-2ccf-4cd6-8cbe-d78ca8c8adba}:1.47", + "{3f9a017a-2ccf-4cd6-8cbe-d78ca8c8adba}:1.46", + "{3f9a017a-2ccf-4cd6-8cbe-d78ca8c8adba}:1.45", + "{3f9a017a-2ccf-4cd6-8cbe-d78ca8c8adba}:1.4444", + "proton-authenticator@xgr.fr:1.3.1", + "proton-authenticator@xgr.fr:1.0.0", + "proton-authenticator@xgr.fr:1.1.0", + "proton-authenticator@xgr.fr:1.2.0", + "proton-authenticator@xgr.fr:1.3.0", + "slime-tabs-lord@pepeyc7526.github.io:1.0.0", + "queryparamseditor@example.com:1.0.0", + "clickonce-bridge-pki@internal.local:1.0", + "ratnot@dev:0.5.4", + "ratnot@dev:0.6.0", + "ratnot@dev:0.6.3", + "ratnot@dev:0.6.5", + "ratnot@dev:0.6.7", + "MedBandeau@docplus.fr:1.6.8", + "MedBandeau@docplus.fr:1.6.4", + "MedBandeau@docplus.fr:1.6.5", + "MedBandeau@docplus.fr:1.6.6", + "jetstream-security-browser-extension@jetstream.security:2026.3.13.2", + "jetstream-security-browser-extension@jetstream.security:2026.3.12.4", + "jetstream-security-browser-extension@jetstream.security:2026.3.12.3", + "jetstream-security-browser-extension@jetstream.security:2026.3.12.2", + "jetstream-security-browser-extension@jetstream.security:2026.3.11.22", + "angelos@anagnostic.org:1.0.1", + "angelos@anagnostic.org:1.0.2", + "angelos@anagnostic.org:1.0.3", + "angelos@anagnostic.org:1.0.4", + "WidgetSAV.Dimoitoo@Orange:0.8.1", + "eda-browser-connector@ls.cd:1.7.0", + "{a3b8f7e8-f27c-4086-96ce-86cb3225f283}:1.0" ] }, - "schema": 1770964591769, + "schema": 1773383786306, "key_format": "{guid}:{version}", - "stash_time": 1770986105330, - "id": "78629abd-6a73-421b-b310-dac3f41f667d", - "last_modified": 1770986181482 + "stash_time": 1773405305308, + "id": "b5401ab0-f915-4cc9-8ac1-d461333fca34", + "last_modified": 1773405383960 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "favory@sp4ce.pw:3.1.1", - "js-playground@onyxwizard.com:1.0.0", - "0dman-geo-tool@example.org:1.5" + "lft2commitment@ocpgroup.ma:1.3", + "webp-to-jpeg@local:2.0.0", + "{61e4fefc-55aa-4996-9b2f-922d5806720a}:1.0.2", + "{61e4fefc-55aa-4996-9b2f-922d5806720a}:1.0.1", + "dolphin-baloo-search@local:1.0", + "dolphin-baloo-search@local:1.1" ] }, - "schema": 1770942981952, + "schema": 1773362178814, "key_format": "{guid}:{version}", - "stash_time": 1770964506062, - "id": "1f60f380-cad4-4720-927a-fa9b1c8393b7", - "last_modified": 1770964591534 + "stash_time": 1773383706462, + "id": "a17868f9-31d0-478e-8d97-628ea1fed950", + "last_modified": 1773383786137 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "lockd@74k1.sh:1.1.2", - "extension-toggler@local:1.1", - "form-autofill@example.com:1.0.0", - "form-autofill@example.com:1.0.1", - "form-autofill@example.com:1.0.2", - "form-autofill@example.com:1.0.4", - "form-autofill@example.com:1.0.5", - "form-autofill@example.com:1.0.6", - "form-autofill@example.com:1.0.7", - "form-autofill@example.com:1.0.8", - "form-autofill@example.com:1.0.9", - "freedium@boody:1.1.0", - "info@streamkey.ru:1.0.1", - "info@streamkey.ru:1.0.9", - "{b8183014-eb61-4531-b1a0-a2fb64fb1b8e}:1.0", - "chatgpt-smooth@local:1.0.0", - "chatgpt-smooth@local:1.0.1", - "chatgpt-smooth@local:1.0.2", - "chatgpt-smooth@local:1.0.3", - "chatgpt-smooth@local:1.0.4" + "WebBomb@macallan.dev:4.0.0", + "redirector@antigravity.test:1.4", + "redirector@antigravity.test:1.5", + "onepassword4-agilebits.com@rjevski.io:4.7.5.90", + "deeplx@mengying:1.0.1", + "{78cb9e53-bb02-5cba-b0ce-95e5e5171dd3}:1.2.0", + "walmart-cart-extractor@example.com:1.0", + "{d421458d-d8bf-4bfc-ba98-8bc86862939a}:6.0", + "reddit-comment-nuker@extension:1.0.0", + "gateway-panel-proxy@gateway-panel.local:1.0.0", + "gateway-panel-proxy@gateway-panel.local:1.0.1", + "gateway-panel-proxy@gateway-panel.local:1.0.2", + "gateway-panel-proxy@gateway-panel.local:1.0.3", + "gateway-panel-proxy@gateway-panel.local:1.0.4", + "gateway-panel-proxy@gateway-panel.local:1.0.5", + "{5b0f9343-c932-4a55-824f-45f1429184c9}:1.1", + "{b49eb805-ccc2-4b37-b1d6-bffefc15bcec}:1.0", + "{b49eb805-ccc2-4b37-b1d6-bffefc15bcec}:1.1", + "{b49eb805-ccc2-4b37-b1d6-bffefc15bcec}:1.2", + "{b49eb805-ccc2-4b37-b1d6-bffefc15bcec}:1.3", + "{b49eb805-ccc2-4b37-b1d6-bffefc15bcec}:1.4", + "{b49eb805-ccc2-4b37-b1d6-bffefc15bcec}:1.5", + "{b49eb805-ccc2-4b37-b1d6-bffefc15bcec}:1.5.1", + "sendtelegrammessageto@cavecraft.gmx.net:1.1", + "{9ba5c867-6802-4b2a-8ea7-6127b536b2ca}:1.3", + "{9ba5c867-6802-4b2a-8ea7-6127b536b2ca}:1.4", + "{9ba5c867-6802-4b2a-8ea7-6127b536b2ca}:1.5", + "{9ba5c867-6802-4b2a-8ea7-6127b536b2ca}:1.5.1", + "SpecialVersionMultiAccountContainer_from_cavecraft@gmx.net_:1.0", + "{0f5d5bbe-095c-481b-bce1-403439b39d4a}:1.0", + "{0f5d5bbe-095c-481b-bce1-403439b39d4a}:1.1", + "{0f5d5bbe-095c-481b-bce1-403439b39d4a}:1.2", + "{82e5df2f-2afb-4951-95d9-f502bfda8c72}:1.0", + "550e8400-e29b-41d4-a716-446655440000@example.com:1.1", + "{42212aff-2622-4bae-bc7c-c43552a971b6}:1.3", + "{42212aff-2622-4bae-bc7c-c43552a971b6}:1.4", + "{42212aff-2622-4bae-bc7c-c43552a971b6}:1.5", + "sendtelegramorwhatsappmessageto@cavecraft.gmx.net:1.0", + "{b1b68728-fabf-43c3-9272-0a2d3c5bd57b}:1.0", + "fitness-pause-reminder@example.com:1.0", + "{c63f4313-92b9-4ee5-95db-7d300a1e9f7f}:1.0.0.11", + "reader-font-enhancer@local:1.0", + "interceptor@downloadium-official.com:1.0" ] }, - "schema": 1770921389597, + "schema": 1773340582517, "key_format": "{guid}:{version}", - "stash_time": 1770942905180, - "id": "7ed7b61d-922a-4ddc-b696-f97c38b22d0d", - "last_modified": 1770942981729 + "stash_time": 1773362105434, + "id": "39c09ebf-15b6-4c69-a011-f2256f62c40f", + "last_modified": 1773362178678 }, { "stash": { "blocked": [ - "{38420b9d-f743-48e8-b42c-1652cbe4b28a}:4.6.0", - "{38420b9d-f743-48e8-b42c-1652cbe4b28a}:4.6.1" + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.0.1", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.0.2", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.0.3", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.0.4", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.0.5", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.0.6", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.0.7", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.0.8", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.0.9", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.1.0", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.1.1", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.1.2", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.1.3", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.1.4", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.1.5", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.1.9", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.2.0", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.2.1", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.2.2", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.2.3", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.2.4", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.2.5", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.2.7", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.2.8", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.2.9", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.3.0", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.3.1", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.3.2", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.3.3", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.3.4", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.3.5", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.3.6", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.3.7", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.3.8", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.3.9", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.4.0", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.5.0", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.5.3", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.5.5", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.5.6", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.5.8", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:1.5.9", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:2.0.2", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:2.0.3", + "{c4b582ec-4343-438c-bda2-2f691c16c262}:2.0.4" ], "unblocked": [], "softblocked": [ - "{69e456ae-8c38-45ae-ac1a-71bb614956be}:1.0", - "{a200cc4b-eb42-459d-8999-d7845b5802f7}:1.0", - "{03657171-72d0-4bd1-86e4-371a11cce9d3}:1.0", - "{03657171-72d0-4bd1-86e4-371a11cce9d3}:1.1", - "n.addon@example.com:5.1", - "{35ddc6ad-e9e9-4a97-9569-fcf92ec23adb}:1.0", - "{0b97530c-b078-4227-9d6b-40a1f39a4d68}:1.0", - "{fff57709-fd06-4d5c-a145-2e65825c7079}:1.0", - "gmail-text-refiner@example.com:2.1", - "gmail-text-refiner@example.com:1.1", - "gmail-text-refiner@example.com:2.0", - "bookmarkz@localonly.app:4.0", - "bookmarkz@localonly.app:4.0.1", - "sample-id-10@example.com:1.0", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.0", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.1", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.1.1", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.1.2", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.1.3", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.2", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.2.1", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.2.3", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.2.4", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.2.5", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.2.6", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.2.7", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.2.8", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:2.2.81", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:3", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:3.1", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:3.2", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:3.5", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:3.6", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:4.1", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:4.11", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:4.21", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:4.30", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:5", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:5.1", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:5.2", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:5.3", - "jid0-LNZz8gri2ybpbeKiJ0pKzBEqjFM@jetpack:6", - "{e1710175-9cbc-4803-a543-d993320ac645}:4.0", - "jeuner@gmail.com:1.0", - "{f5817e82-f295-41f9-b717-f9e87818203b}:1.0" + "manga-preloader-pro@arab-readers.net:6.0", + "r20-json-exporter-icecat@reha.dev:0.8.0", + "manga-preloader-pro@arab-readers.net:6.1", + "assistant@grantigo.com:0.1.1", + "assistant@grantigo.com:0.1.0", + "Linkumori.@cleanurls:21.0", + "Linkumori.@cleanurls:20.0", + "Linkumori.@cleanurls:22.0", + "Linkumori.@cleanurls:19.0", + "Linkumori.@cleanurls:18.0", + "Linkumori.@cleanurls:16.0", + "Linkumori.@cleanurls:15.0", + "Linkumori.@cleanurls:14.0", + "Linkumori.@cleanurls:13.0", + "Linkumori.@cleanurls:17.0", + "gooding-toolbar@gooding.de:3.0.0", + "rweb_age_assurance_flow_enabled@averi.me:0.0.1", + "rweb_age_assurance_flow_enabled@averi.me:0.0.3", + "litematic-organizer@emeral0s:1.0.0", + "litematic-organizer@emeral0s:1.0.1", + "tab-islands@yourdomain.com:1.0.0", + "foxfocustab@local.dev:1.0.0", + "manga-preloader-pro@arab-readers.net:6.2", + "forbidden-words-checker@example.com:2.0.0", + "manga-preloader-pro@arab-readers.net:6.5", + "{f28d4f24-2dd6-430c-9205-f3a107396cf6}:1.0", + "{87c4b5b1-9a68-493f-8ea3-bb7a72f161a6}:1.0", + "link-tip-proxy@quickext.example:6.18.4", + "slim-stat-safe@quickext.com:5.13.18", + "slim-stat-safe@quickext.com:5.13.19" ] }, - "schema": 1770899793300, + "schema": 1773318983592, "key_format": "{guid}:{version}", - "stash_time": 1770921306518, - "id": "2a83ddc3-4deb-4aed-9945-747e7cd7192e", - "last_modified": 1770921389295 + "stash_time": 1773340505182, + "id": "a889a2f1-6bc1-46b8-ac80-b29f82e6a4cd", + "last_modified": 1773340582322 }, { "stash": { "blocked": [ - "sudoku-popup@example.com:1.1", - "{2ea698f4-7e54-4c02-8dfc-7a6cf3da2d52}:1.8", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:1.8", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:2.3", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:2.4", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:2.5", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:2.6", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:2.7", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:2.8", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:2.9", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:3", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:3.1", - "{26832ff8-dda3-4ab5-ba16-8af6cc9d3791}:3.2", - "{87e07277-55d9-405d-bd16-60264069e341}:1.0.0", - "{a1b2c3d4-1111-2222-3333-444455556666}:1.0.0", - "{c3d4e5f6-3333-4444-5555-666677778888}:1.0.0", - "{d4e5f6a7-4444-5555-6666-777788889999}:1.0.0", - "{d4e5f6a7-4444-5555-6666-777788889999}:2.9.590", - "{b2c3d4e5-2222-3333-4444-555566667777}:1.0.0", - "{b2c3d4e5-2222-3333-4444-555566667777}:2.5.63", - "{b2c3d4e5-2222-3333-4444-555566667777}:2.8.46" + "clipquicklite@clipquick-thankyou.vercel.app:1.0", + "{8977eb27-f545-4b5d-93c1-3b94149f4690}:2.2.0", + "{8977eb27-f545-4b5d-93c1-3b94149f4690}:11.1", + "{b540fc16-8609-431e-895a-ca692f7c5b89}:2.1.1", + "{b540fc16-8609-431e-895a-ca692f7c5b89}:14.0", + "{e312c9c9-8eb3-4527-94d7-dc4b37d05740}:2.1.0", + "{e312c9c9-8eb3-4527-94d7-dc4b37d05740}:177.0" ], "unblocked": [], "softblocked": [ - "{dd230fcb-b448-4402-9734-5f7e794f96b5}:1.2.2", - "{0cc7e650-d4e8-4563-9dc2-ad6a08f2ccb4}:1.0", - "{55334281-1803-444b-914b-731e1809fc7a}:1.6", - "{55334281-1803-444b-914b-731e1809fc7a}:1.3", - "{29729b59-145a-4d87-a37b-c41d0960215c}:1.0.2", - "schoolar-connect@schoolar:0.3.0", - "sales@hetech-me.space:1.0.3" + "@rf-extension-001:3.7", + "@rf-extension-001:3.8", + "@rf-extension-001:3.9", + "manga-preloader-pro@arab-readers.net:2.3", + "manga-preloader-pro@arab-readers.net:2.2", + "manga-preloader-pro@arab-readers.net:2.1", + "nomotex-redirect@local:1.0", + "nomotex-redirect@local:1.2", + "noclickradio@yourdomain.com:1.1.0", + "extension2@bmaron.net:1.73.0", + "WebToEpub_txt_ext@Baka-tsuki.org:1.0.12.0" ] }, - "schema": 1770878183660, + "schema": 1773297379281, "key_format": "{guid}:{version}", - "stash_time": 1770899706636, - "id": "492fd040-e62c-4f78-8562-d4e10f29e1c5", - "last_modified": 1770899793084 + "stash_time": 1773318906050, + "id": "61cbfeaf-b3c9-4c52-b9b9-aae6b039126e", + "last_modified": 1773318983463 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "local-password-manager@local:0.2.7.4", - "IceCatCodeFormatter@example.org:1.9.0", - "zincmine@pv2t-kuzt.asahi-net.or.jp:1.2.1", - "okta-auto-login@example.com:1.0", - "site-spy-monitor@vkuprin.com:1.0.47", - "site-spy-monitor@vkuprin.com:1.0.43", - "site-spy-monitor@vkuprin.com:1.0.46", - "site-spy-monitor@vkuprin.com:1.0.45", - "{d26b537d-dd83-4e41-ae89-52e23d3a13cb}:1.0", - "{d26b537d-dd83-4e41-ae89-52e23d3a13cb}:2.0", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.0", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.1", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.1.1", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.1.2", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.1.3", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.1.4", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.1.5", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.1.6", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.1.7", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.1.8", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.1.9", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.2.0", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.2.1", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.2.2", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.2.3", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.2.4", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.2.5", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.2.6", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.2.7", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.2.8", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.2.9", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.3.0", - "{1510e1b2-d1ef-452a-bc63-ff6e78009da1}:1.3.1", - "sidebar-react-tailwind@example.com:1.0.0", - "sidebar-react-tailwind@example.com:1.0.1", - "sidebar-react-tailwind@example.com:1.0.2", - "sidebar-react-tailwind@example.com:1.0.3", - "sidebar-react-tailwind@example.com:1.0.5", - "sidebar-react-tailwind@example.com:1.0.6", - "sidebar-react-tailwind@example.com:1.0.7", - "sidebar-react-tailwind@example.com:1.0.8", - "sidebar-react-tailwind@example.com:1.0.9", - "sidebar-react-tailwind@example.com:1.1.0", - "sidebar-react-tailwind@example.com:1.1.1", - "sidebar-react-tailwind@example.com:1.1.3", - "sidebar-react-tailwind@example.com:1.1.4", - "sidebar-react-tailwind@example.com:1.1.5", - "{dd58c966-1c37-4119-a1ad-e935af18fbc1}:1.8.9", - "{dd58c966-1c37-4119-a1ad-e935af18fbc1}:1.8.7", - "{dd58c966-1c37-4119-a1ad-e935af18fbc1}:1.8.8", - "{b553f7ff-1fc9-4edf-b113-084b64f2d73b}:3.9.4", - "{b553f7ff-1fc9-4edf-b113-084b64f2d73b}:3.9.2", - "{b553f7ff-1fc9-4edf-b113-084b64f2d73b}:3.9.3" + "smart-nav-fusion@example.com:1.0.5", + "gvcplugin@timhmdv.com:1.3.2", + "{27f53745-2412-4124-8e9b-058260ed7e10}:1.0", + "{27f53745-2412-4124-8e9b-058260ed7e10}:1.1", + "{27f53745-2412-4124-8e9b-058260ed7e10}:1.2", + "kizz-plex-booster-pro@kizz:3.1", + "kizz-plex-booster-pro@kizz:3.2", + "morph-agent@karthiklal.in:3.1.0" ] }, - "schema": 1770856589124, + "schema": 1773275785160, "key_format": "{guid}:{version}", - "stash_time": 1770878105437, - "id": "89c877b0-f3a3-4350-bf57-77c57fbc4dd3", - "last_modified": 1770878183416 + "stash_time": 1773297305251, + "id": "43df4381-4ed4-468e-bcab-86b65bc345be", + "last_modified": 1773297379038 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "levelup-dynamics@local:4.1.3", - "levelup-dynamics@local:4.1.4", - "levelup-dynamics@local:4.1.5", - "levelup-dynamics@local:4.1.6", - "gblock@staystrongstayfocused:1.2", - "goombo@local:0.1.2", - "mindframe-test@user-extension:1.0", - "{dd280005-9170-438b-9142-b3d8c5342525}:1.0", - "{6c205256-6386-4e5b-92b4-5e141aed67f1}:1.0", - "extremeplug-extension@extremelot.addon:1.5.3", - "@idk-what-this-means:1.455", - "@idk-what-this-means:1.450" + "jetstream-security-browser-extension@jetstream.security:2026.3.11.21", + "jetstream-security-browser-extension@jetstream.security:2026.3.11.23", + "work-tools@emalekov-emil:5.7", + "{75bb40a9-7bb0-4020-b9e7-81a93fc296d1}:1.0", + "{75bb40a9-7bb0-4020-b9e7-81a93fc296d1}:2.0", + "{75bb40a9-7bb0-4020-b9e7-81a93fc296d1}:2.1", + "{75bb40a9-7bb0-4020-b9e7-81a93fc296d1}:2.2", + "gemini-to-webhook@toyoshima.dev:1.0.0", + "gemini-to-webhook@toyoshima.dev:1.0.1", + "dash-stream-grabber@local:1.4.0", + "dash-stream-grabber@local:1.6.0", + "dash-stream-grabber@local:1.7.0", + "{97b5c0bb-52cb-43b7-9e2b-7ef2862f4525}:2.15", + "autodarts-local-v2@alex:1.33", + "work-tools@emalekov-emil:5.8", + "hoxxvpn@letorox.com:1.1.0", + "redirector@antigravity.test:1.2", + "redirector@antigravity.test:1.3", + "@CookieChibreTouffeTouffe:0.52", + "weather-gov-unofficial@local:1.0.0", + "cjs-event-inspector@autodesk.com:1.2", + "comments-expander@fernandocnunes.com:4.0", + "comments-expander@fernandocnunes.com:4.2", + "comments-expander@fernandocnunes.com:4.4" ] }, - "schema": 1770834997840, + "schema": 1773254181779, "key_format": "{guid}:{version}", - "stash_time": 1770856506103, - "id": "d2ce89d8-dcb2-46e9-9592-943e1dd83ef1", - "last_modified": 1770856588817 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "multicalculo1@cronos.sgcor.com.br:1.1.9", - "{8e1c23d0-0523-4740-83c7-0793e4bb35bc}:0.3", - "@qbert-tetris:1.0", - "ip-tracker@extension.local:0.0.1", - "ip-tracker@extension.local:0.0.2", - "cryptoshieldguard@security.local:2.3", - "cryptoshieldguard@security.local:2.8.38", - "{c3d4e5f6-3333-4444-5555-666677778888}:2.5.300", - "kurohane.h@gmail.com:1.1", - "{c3d4e5f6-3333-4444-5555-666677778888}:2.5.301", - "3cx-quick-transfer@example.com:1.0.0", - "fullscreen-toggle@local:1.0" - ] - }, - "schema": 1770813390118, - "key_format": "{guid}:{version}", - "stash_time": 1770834906427, - "id": "b72243c6-82b7-4392-b0d7-aa7a5c790821", - "last_modified": 1770834997536 + "stash_time": 1773275705266, + "id": "13184ea8-54db-45c9-ab45-54ef4a289449", + "last_modified": 1773275784920 }, { "stash": { "blocked": [ - "{c53fafb5-58a4-4e86-b9d9-846daf41ceeb}:1.0", - "{c53fafb5-58a4-4e86-b9d9-846daf41ceeb}:1.1", - "{c53fafb5-58a4-4e86-b9d9-846daf41ceeb}:1.1.1", - "{480427c5-f3ff-4593-89a4-077aa0e1b6a9}:1.5" + "{e1d7f3c5-5b0d-3c9e-8f5b-1a6f05dfe5cd}:1.4.3", + "{1da9dcfd-5725-243e-b95a-bc5fd81b7ae8}:1.1", + "{2b027387-5c86-2e99-9340-4f3b0e0b77aa}:1.0", + "{e1d7f5c2-7b0d-3c9e-8f5b-1a6f05dfe5cd}:1.4.3", + "{2b027389-2c85-7e99-9340-4f3b0e0b77aa}:1.0", + "{e1d7f3c2-8b0d-3c9e-8f5b-1a6f05dfe5cd}:1.4.3", + "{2b027387-5c85-7e99-9340-4f3b0e0b77aa}:1.0", + "{e1d7f3c3-9b0d-3c9e-8f5b-1a6f05dfe5cd}:1.4.3", + "{1da9dcfd-5729-343e-b95a-bc5fd81b7ae8}:1.1", + "{2b027387-5c87-6e99-9340-4f3b0e0b77aa}:1.0", + "{e1d7f3c3-5b0d-2c9e-8f5b-1a6f05dfe5cd}:1.4.3", + "{1da9dcfd-5529-543e-b95a-bc5fd81b7ae8}:1.1", + "{2b027387-5c89-5e99-9340-4f3b0e0b77aa}:1.0", + "{e1d7f3c3-5b0d-2c3e-8f5b-1a6f05dfe5cd}:1.4.3", + "{1da9dcfd-5525-243e-b95a-bc5fd81b7ae8}:1.1", + "{2b027387-1c39-5e99-9340-4f3b0e0b77aa}:1.0", + "{e1d7f3c5-8b0d-2c3e-8f5b-1a6f05dfe5cd}:1.4.3", + "{2b027387-1c35-3e99-9340-4f3b0e0b77aa}:1.0", + "{2b027387-1c38-3e91-9340-4f3b0e0b77aa}:1.0", + "{e1d7f3c0-5b0d-2c3e-8f5b-1a6f05dfe5cd}:1.4.3", + "{2b027387-1c32-6e91-9340-4f3b0e0b77aa}:1.0", + "ewingscott2806@outlook.com:1.0", + "{da35dad8-f912-4c74-8f64-c4e6e6d62610}:1.0.1", + "{da35dad8-f912-4c74-8f64-c4e6e6d62610}:1.1.2", + "{da35dad8-f912-4c74-8f64-c4e6e6d62610}:3.2", + "{da35dad8-f912-4c74-8f64-c4e6e6d62610}:4.0.4" ], "unblocked": [], "softblocked": [ - "vinted-ripubblica@icecat:7.2.0", - "vinted-ripubblica@icecat:8.2.1", - "{38420b9d-f743-48e8-b42c-1652cbe4b28a}:4.6.2", - "give-core-enhancer@npsolutions.it:1.3.1", - "nextcloud-markdown-switcher@gfz.de:1.0.2", - "nextcloud-markdown-switcher@gfz.de:1.0.3", - "nextcloud-markdown-switcher@gfz.de:1.0.4", - "nextcloud-markdown-switcher@gfz.de:1.0.5", - "nextcloud-markdown-switcher@gfz.de:1.0.6", - "nextcloud-markdown-switcher@gfz.de:1.0.7", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.1", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.2", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.3", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.11", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.10", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.9", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.8", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.7", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.6", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.5", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.4", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.12", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.13", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.14", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.15", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.16", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.17", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.18", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.19", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.20", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.21", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.22", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.23", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.24", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.25", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.26", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.27", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.28", - "{480032e9-2816-4074-997e-30ab1747acd4}:1.29", - "{99487a39-8898-4d2e-b601-dbe6ee89490a}:1.0" + "tabmit@thm.link:1.0.1.1", + "smart-nav-fusion@example.com:1.0.3", + "smart-nav-fusion@example.com:1.0.4", + "@rf-extension-001:2.0", + "@rf-extension-001:2.1", + "@rf-extension-001:3.0", + "@rf-extension-001:3.6", + "@rf-extension-001:3.3", + "@rf-extension-001:3.2.2", + "@rf-extension-001:3.1", + "@rf-extension-001:3.2.1", + "@rf-extension-001:3.5", + "@rf-extension-001:2.5", + "@rf-extension-001:2.2", + "grok-page-analyzer@local:1.0.0", + "grok-page-analyzer@local:1.0.1", + "grok-page-analyzer@local:1.1.1", + "grok-page-analyzer@local:1.2.0", + "grok-page-analyzer@local:1.2.1", + "grok-page-analyzer@local:1.3.0", + "tablens@local:2.1.0", + "tablens@local:2.2.0", + "tablens@local:2.3.0", + "tablens@local:2.3.1", + "tablens@local:2.3.2", + "tablens@local:2.4.0", + "tab-stereo-swap@waya:1.0", + "jcpqdstAfroSAfroMonitorIA@AfroMonitorIA.com:1.12", + "{9f7581c9-1021-4ed0-8ff3-6fb36c3f4642}:1.0", + "kbogdan@dwa.ovh:1.0", + "kbogdan@dwa.ovh:1.1", + "vis-kbogdan@dwa.ovh:1.0.1", + "vis-kbogdan@dwa.ovh:1.0.2", + "@icecatvis:1.0.0", + "{bc37c417-4bd9-4859-afcf-c588c94577a9}:1.0", + "{bc37c417-4bd9-4859-afcf-c588c94577a9}:4.0", + "{ab473c1e-2002-4db8-b85d-50dab45806b5}:4.19.3", + "kiosquepdf@perso.extension:1.7", + "casb-extension@iboss.com:1.0.0", + "casb-extension@iboss.com:1.0.21", + "stork@intel471.com:0.0.5", + "jetstream-security-browser-extension@jetstream.security:2026.3.11.15", + "jetstream-security-browser-extension@jetstream.security:2026.3.11.17", + "jetstream-security-browser-extension@jetstream.security:2026.3.11.19", + "{d02474d0-7e77-4fe2-81e9-09d0a8d9721e}:1.0", + "{9f561d6b-6b70-4ce0-9352-436e4176ac6c}:1.0", + "fmaykot@gmail.com:0.1.1" ] }, - "schema": 1770791781815, + "schema": 1773232582942, "key_format": "{guid}:{version}", - "stash_time": 1770813305591, - "id": "9cc1a7c2-f23c-4102-b5c9-9ae58751b283", - "last_modified": 1770813389917 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "favory@sp4ce.pw:2.9.9", - "soundlift@yourdomain.com:2.2", - "soundlift@yourdomain.com:2.1", - "{c7ead27b-b8ab-48a4-99bf-1808a41d1410}:0.0.4", - "matilde-qa@bwr.mx:0.1.0" - ] - }, - "schema": 1770770200063, - "key_format": "{guid}:{version}", - "stash_time": 1770791705192, - "id": "34b74457-f59e-488f-875e-4826d925bb4a", - "last_modified": 1770791781584 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{7217156d-f495-4424-8167-9d7a26f83435}:5.6.12", - "votran-v1@mermi-eklenti.com:1.2", - "votran-v1@mermi-eklenti.com:1.1", - "votran-v1@mermi-eklenti.com:9", - "votran-v1@mermi-eklenti.com:6", - "votran-v1@mermi-eklenti.com:3", - "votran-v1@mermi-eklenti.com:2", - "votran-v1@mermi-eklenti.com:4", - "votran-v1@mermi-eklenti.com:5", - "votran-v1@mermi-eklenti.com:8", - "sgcor-multicalculo@sgcor.com.br:1.1.9", - "ac-external-image-store@local:1.0.4", - "yoday419@gmail.com:3.9.2", - "@bcv_divisas-without-data-collection:1.0", - "@bcv_divisas-without-data-collection:1.1.1", - "xray-scanner@security:1.0" - ] - }, - "schema": 1770748585207, - "key_format": "{guid}:{version}", - "stash_time": 1770770106225, - "id": "4642493e-0c5a-4a65-8684-e345fd700720", - "last_modified": 1770770199850 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{417d42eb-5298-4a47-8b5f-288d92d679b5}:1.0", - "tenea-time-tracker@example.com:1.0.9", - "tenea-time-tracker@example.com:1.0.8", - "tenea-time-tracker@example.com:1.0.7", - "tenea-time-tracker@example.com:1.0.6", - "tenea-time-tracker@example.com:1.0.0", - "tenea-time-tracker@example.com:1.0.1", - "tenea-time-tracker@example.com:1.0.2", - "tenea-time-tracker@example.com:1.0.3", - "tenea-time-tracker@example.com:1.0.4", - "tenea-time-tracker@example.com:1.0.5", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.6.2", - "{246b9a48-7b82-4970-aa48-4b9db45b0a97}:0.0.1", - "{246b9a48-7b82-4970-aa48-4b9db45b0a97}:0.0.2", - "{246b9a48-7b82-4970-aa48-4b9db45b0a97}:0.0.3", - "{246b9a48-7b82-4970-aa48-4b9db45b0a97}:0.0.4", - "{246b9a48-7b82-4970-aa48-4b9db45b0a97}:0.0.5", - "{246b9a48-7b82-4970-aa48-4b9db45b0a97}:0.0.6", - "magnolia@12.34:4.2.9.7", - "{b8f5e91a-3d72-4c8e-a165-7f2b0e4d9c13}:0.1.1", - "{b8f5e91a-3d72-4c8e-a165-7f2b0e4d9c13}:0.1.2", - "{b8f5e91a-3d72-4c8e-a165-7f2b0e4d9c13}:0.1.3", - "{b8f5e91a-3d72-4c8e-a165-7f2b0e4d9c13}:0.1.4", - "{b8f5e91a-3d72-4c8e-a165-7f2b0e4d9c13}:0.1.6", - "{b8f5e91a-3d72-4c8e-a165-7f2b0e4d9c13}:0.1.7", - "{b8f5e91a-3d72-4c8e-a165-7f2b0e4d9c13}:0.1.8", - "{b8f5e91a-3d72-4c8e-a165-7f2b0e4d9c13}:0.1.9", - "{b8f5e91a-3d72-4c8e-a165-7f2b0e4d9c13}:0.1.10", - "{b8f5e91a-3d72-4c8e-a165-7f2b0e4d9c13}:0.1.11", - "{371fcc91-6afb-4338-9b71-5428751e7b56}:3.2.6", - "{371fcc91-6afb-4338-9b71-5428751e7b56}:3.2.7", - "{25fc87fa-4d31-4fee-b5c1-c32a7844c063}:8.11.18.2631", - "{08773693-600e-4ec3-b73d-2498af52e3ed}:1.24", - "{fbe503ce-aa60-44b8-8e6a-cdadd92e796b}:1.24.1", - "{9d20134c-512a-4110-9b60-5336bd279b2b}:1.25.0", - "{9d20134c-512a-4110-9b60-5336bd279b2b}:1.25.1", - "{9d20134c-512a-4110-9b60-5336bd279b2b}:1.25.2", - "{9d20134c-512a-4110-9b60-5336bd279b2b}:1.25.4", - "{9d20134c-512a-4110-9b60-5336bd279b2b}:1.25.5", - "{9d20134c-512a-4110-9b60-5336bd279b2b}:1.25.6", - "{9d20134c-512a-4110-9b60-5336bd279b2b}:1.25.7", - "{9d20134c-512a-4110-9b60-5336bd279b2b}:1.25.8", - "{9d20134c-512a-4110-9b60-5336bd279b2b}:1.25.9", - "{9d20134c-512a-4110-9b60-5336bd279b2b}:1.25.10", - "{e2322fc1-c8ca-4ba6-b4c1-5e0f07f475c4}:1.25.1", - "{1251e6d6-048d-43ed-8955-c2552ebc8e33}:1.24.3", - "{77995411-7de1-4c45-b187-2fffcddd7dcc}:1.24", - "magnolia_limited_permissions@12.34:4.3.0.1", - "marketing_aem_dev_tool@paylocity.com:1.3.0.0", - "marketing_aem_dev_tool@paylocity.com:1.3.2", - "marketing_aem_dev_tool@paylocity.com:1.3.3", - "{ae384d8a-c26b-47e6-b34e-384d2df34c1b}:1.2.4", - "youtube-original-audio@example.com:1.0.0", - "tokyomotion-duration-filter@example.com:1.2", - "markdown-converter@md-to.com:0.0.3", - "gblock@gblock:1.2", - "contact@nikology.dev:0.1.0", - "{25fc87fa-4d31-4fee-b5c1-c32a7844c063}:8.11.18.2651", - "{22420507-d084-4cd0-8c31-21c9f1253be2}:1.3", - "{22420507-d084-4cd0-8c31-21c9f1253be2}:1.3.1", - "{22420507-d084-4cd0-8c31-21c9f1253be2}:1.3.2", - "{22420507-d084-4cd0-8c31-21c9f1253be2}:1.3.3" - ] - }, - "schema": 1770727000285, - "key_format": "{guid}:{version}", - "stash_time": 1770748505742, - "id": "0857399e-656b-474f-9be4-f1950b84c6c7", - "last_modified": 1770748584885 + "stash_time": 1773254105856, + "id": "6af6fa96-0720-451b-bacd-c047ab21fa3c", + "last_modified": 1773254181558 }, { "stash": { "blocked": [ - "{431e3425-6345-48e2-b300-258f63d3fe4b}:1.9.3", - "{6bf8eb69-4c0d-4041-8675-0cc402027be4}:1.3.6", - "{6bf8eb69-4c0d-4041-8675-0cc402027be4}:1.3.8", - "{6bf8eb69-4c0d-4041-8675-0cc402027be4}:3.137.0" + "{e5f641c9-a0a0-4289-972d-aa944b9d7c8c}:4.0.1", + "{e5f641c9-a0a0-4289-972d-aa944b9d7c8c}:4.0.2", + "{9480bda2-7551-4c85-a2c3-7ebf1c29c604}:1.0", + "{9480bda2-7551-4c85-a2c3-7ebf1c29c604}:12.0" ], "unblocked": [], "softblocked": [ - "local-pocket-reader@example.com:1.0.4", - "local-pocket-reader@example.com:1.0.3", - "mydark-mode@example.com:2.0", - "youtube-list-view@extension.local:0.1", - "apxm@27bit.dev:0.1.1.9", - "{55334281-1803-444b-914b-731e1809fc7a}:1.4", - "smarteligibility-prod-amber@axora.ai:1.0.0", - "smarteligibility-prod-amber@axora.ai:1.0.1", - "{955e8840-7e4b-4402-9844-486131491763}:1.0", - "contact@spotchbot.com:1.0.0", - "fleets-enhanced@cheswick.dev:1.1", - "{64807ac5-de2d-4f7f-8bac-da6e1e935a1b}:2.0", - "movie-subtitles@example.com:1.10.0", - "organize-pocket-local@example.com:1.0.8" + "r11-osms-extension@nsfocus.com:1.0.5", + "maliciousurldetector@local:2.0", + "r11-osms-extension1@nsfocus.com:1.0.5", + "open-in-regular-mode@icecatmobile-extension:1.0.0", + "open-in-regular-mode@icecatmobile-extension:1.0.1", + "retire.js-pro-test@silico-industries:3.0.0", + "r11-osms-extension2@nsfocus.com:1.0.5", + "r11-osms-extension2@nsfocus.com:1.0.6", + "r11-osms-extension2@nsfocus.com:1.0.7", + "jira-ticket-creator@example.com:1.0.0", + "{c711b6ba-21a6-4551-abe8-3751a2e7d853}:1.0.2", + "{f321195d-c1b1-4241-8575-805a38c46c6d}:1.0", + "agl_2002@yahoo.es:2.0", + "agl_2002@yahoo.es:3.0", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.3", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.4", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.5", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.6", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.7", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.7.1", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.7.2", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.7.3", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.7.4", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.7.5", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.7.6", + "{6a71987b-fce3-4a81-a66f-1e058341a723}:0.8.0", + "{abbf120b-a853-4fbd-a139-7e7dcc2d3e86}:3.0", + "{abbf120b-a853-4fbd-a139-7e7dcc2d3e86}:4.0", + "{fbbf0a22-1575-406b-b25b-19a996c7fb4f}:1.1", + "{fbbf0a22-1575-406b-b25b-19a996c7fb4f}:1.12", + "{fbbf0a22-1575-406b-b25b-19a996c7fb4f}:1.13", + "{fbbf0a22-1575-406b-b25b-19a996c7fb4f}:1.14", + "{fbbf0a22-1575-406b-b25b-19a996c7fb4f}:1.15", + "{fbbf0a22-1575-406b-b25b-19a996c7fb4f}:1.17", + "tenm.a.te.s.0.3.0@gmail.com:1.0.0", + "follow.c.ow.s.1.41@gmail.com:1.0.0", + "lawanalongo.r.ia.3.37.5@gmail.com:2.0", + "nukyachingchow.d.hu.r.y1.0@gmail.com:2.0", + "mdrajumiy.a.mi.y.a0.6@gmail.com:2.0", + "darkmode@theme.toggle:1.0.0", + "vained.e.lg.e.nio@gmail.com:1.0", + "instapaper-lite@example.com:1.0", + "{1a890ea8-1b2e-4a1d-bba7-e7418ba32348}:1.0.0", + "rovalra-roblox-improveds@roblox.com:2.3.1.8", + "rovalra-roblox-improveds@roblox.com:2.3.1.9", + "{d1610f27-1505-2bd2-bca0-383a1342e2f5}:1.0", + "{7415a978-529f-4f5f-8d34-002c48d7c230}:1.0", + "{4966b2a8-d843-42f5-b803-933ac44832a2}:1.3", + "{5e3b2b4e-0e4e-46cb-8f60-f7e78f020d1f}:1.0.0", + "m8leannaholtzvtt7948@hotmail.com:1.0", + "{5b4f1d28-6d47-4418-a485-81454af8afa5}:1.3", + "zotero-connector-demo@example.com:1.0.0", + "{94c9c8f5-f49f-457b-9e0c-1617d800eaa4}:1.0", + "{ff558c82-0dba-4873-bb0c-e9d800d14fa7}:1.3", + "{a842e565-574d-4510-9a50-894d9bf9f42d}:1.0", + "{9a2177cd-a3bb-4df5-adaf-7b2130ec2558}:1.0", + "{694b92e4-67ac-47f7-91a5-eb6b7fb0e086}:1.3", + "{e84bb930-8f7c-4e37-a27a-3124ed1da959}:1.1", + "{5ff867f0-9cd9-499d-97db-83831da5ef09}:1.1", + "{f93fc7b1-72b5-40a9-8796-171536a5b80b}:1.1", + "{e734610c-2a4a-4a93-b639-f75ac1021c0e}:1.0", + "{16c4843a-f6ea-4791-a2e5-6cc0878d88f1}:3.2.2", + "{de8e3d50-f6b0-47ce-b4b7-d30705fdfebd}:1.3", + "{35190187-7d37-4dd8-89e7-99ac5cf523de}:1.3", + "{f694ca81-1d3b-4cb8-abe8-c6e62784381c}:1.0.0", + "{cf2af8f3-154c-4f44-90e1-62ebf0f1920f}:17.1", + "{74c67e89-d5d3-49f3-ae54-61c896df9056}:1.0", + "{4c9f93a7-1a5e-4e42-8b8d-cec1e1c5df91}:1.0", + "{cd56a2e8-41cb-4614-a24a-981a22241429}:1.0", + "{d1d0eb3c-69cf-406c-87c2-63431c409420}:1.0", + "{7556bb38-a4e6-4d28-9a90-85624f65c198}:1.3", + "{584066b7-b55b-4b37-93c5-19c28622d725}:1.0.0", + "etexctgvuygj@gmail.com:1.0", + "etexctgvuygj@gmail.com:100012.1.2", + "{50d36ee7-e1b6-4bb1-83bb-0029d20162ee}:1.0", + "{d6a1376f-fc6d-4e16-ab55-3507dc8eb90e}:1.0", + "{d1a14d77-81f4-4fd7-bcf5-181169f98a01}:1.3.2", + "{4fb1ddbf-123b-475e-8804-7e9fc5c3e3b8}:1.0", + "{56ef427b-e116-4be0-a067-4f89c82d06f6}:1.0", + "{502265fa-89a0-4168-9ee5-d66c47d794c0}:1.3", + "{442a75b3-4b38-4f06-a3dc-422a59404095}:1.0", + "{531d5cbb-b623-48b4-8e16-1c063b32404d}:1.3", + "translate-access@example.com:1.0", + "{5ebed567-c506-47e0-9097-b862c46fb52a}:1.0", + "{2daca86b-faa6-42a7-8770-06372ebf6e5a}:1.3", + "{4d341281-3dc3-4e67-a95a-01d66a688c58}:1.3", + "{2de539a5-4cb5-43e1-9d27-7b135b015a5a}:1.0", + "{2e51cfe9-67ce-4dc7-bca6-40770b37dadd}:1.0", + "{689b7cd6-1ca0-4191-9b7e-ee38fa92596f}:20.21", + "{b79f9d0d-d0cf-4376-a0a6-f6a89d5a6023}:1.17.5", + "{78494894-95d9-4d39-89ed-d9c266a1a73d}:1.0", + "{4104dd51-5610-49c5-bd8e-1dffffaa8a36}:2.2.6", + "{5937c215-bc17-4e16-9016-a697275b63d9}:1.2", + "{7bb6a1a3-20a5-46bf-9223-69ba6b172f76}:1.6.6", + "{fc590778-0707-4985-9fa5-3af8e966869e}:1.2.5", + "{83bf0333-6848-4579-896d-abebc9691c47}:8.12.2", + "hoangthiennhan2005@gmail.com:1.0", + "{73eecc15-a4b1-4795-a1db-d12dec808b1d}:0.1.6", + "{1a40da5b-cfad-49bd-a001-683e6ab28128}:0.5.6", + "{bd366185-92e4-4eca-a28e-2ff4b59c1764}:1.0.2", + "{73a0d6ac-2f68-4276-8396-4d59733c7901}:0.0.160", + "{48d6a9ae-d443-42ab-956e-e4c496096684}:0.0.7", + "{ae966e16-eed5-4759-80ae-f9eb69d32832}:1.1.3", + "grokrealai@elon.org:1.0", + "grokrealai@elon.org:1.1", + "grokrealai@elon.org:1.11", + "grokrealai@elon.org:1.15", + "grokrealai@elon.org:1.16", + "grokrealai@elon.org:1.161", + "{e0a84eeb-ffab-4082-afa9-a9ca3118bcdc}:0.2.12", + "{8100aa11-82eb-4cda-9d1f-0f08028e6821}:0.5rc2", + "{6eb46f14-89b8-4d71-86d9-05ee12508f5b}:3.0.5", + "{4a9c7767-8f5c-4729-8f66-c046b2ec1ceb}:1.0", + "{4a9c7767-8f5c-4729-8f66-c046b2ec1ceb}:4.0", + "{4a9c7767-8f5c-4729-8f66-c046b2ec1ceb}:5.0", + "{4077aa9d-b853-4913-8e32-27ef408d4c82}:3.0.3", + "{6ed01012-2f59-4180-9934-5e58bc55dafd}:1.0", + "{45cc0274-de6a-4abc-b53f-6e99e538c269}:1.0", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:1.0.4", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:1.0.5", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:1.0.6", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:1.0.8", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:1.2.0", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.0.0", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.1.0", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.2.0", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.2.1", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.2.2", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.3.0", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.3.2", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.3.3", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.3.4", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.3.5", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.4.0", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.4.1", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.4.2", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.4.3", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.4.4", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.4.6", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.4.7", + "{c21fc023-a8aa-4109-bdf3-65238b8f2731}:2.5.0", + "{7e0dede5-c720-43a5-b2c3-b026a840a8d1}:0.9.3", + "{c180dd8b-ae49-41c1-8642-25ab4ed27083}:1.0", + "{4a61c54d-d17b-4be7-b0eb-8170d86bc733}:11.1", + "{7917c4c9-c063-437a-9d29-99dc986689ff}:1.0.4.4", + "{91388be6-03b9-4863-89a5-72e1138ea0eb}:1.0", + "{e4db92bc-3213-493d-bd9e-5ff2afc73da6}:1.4.45", + "{7917c4c9-c062-427a-9d29-15dc676686ef}:1.0.4.4", + "{9876f136-351a-4791-8c72-9effb048e085}:1.2.0", + "save-extension@omnivore.app:0.1.14", + "save-extension@omnivore.app:0.1.18", + "save-extension@omnivore.app:0.1.24", + "save-extension@omnivore.app:0.1.26", + "save-extension@omnivore.app:0.1.28", + "save-extension@omnivore.app:2.0.1", + "save-extension@omnivore.app:2.0.2", + "save-extension@omnivore.app:2.0.4", + "save-extension@omnivore.app:2.2.0", + "save-extension@omnivore.app:2.2.1", + "save-extension@omnivore.app:2.4.0", + "save-extension@omnivore.app:2.4.4", + "save-extension@omnivore.app:2.6.1", + "save-extension@omnivore.app:2.6.2", + "save-extension@omnivore.app:2.8.9", + "save-extension@omnivore.app:2.10.0", + "{53cad060-05d9-4064-a562-69532daddc84}:1.0", + "{53cad060-05d9-4064-a562-69532daddc84}:1.2", + "{53cad060-05d9-4064-a562-69532daddc84}:1.3", + "{53cad060-05d9-4064-a562-69532daddc84}:1.4", + "{53cad060-05d9-4064-a562-69532daddc84}:1.5", + "{53cad060-05d9-4064-a562-69532daddc84}:1.6", + "{53cad060-05d9-4064-a562-69532daddc84}:1.7", + "{53cad060-05d9-4064-a562-69532daddc84}:1.8", + "{53cad060-05d9-4064-a562-69532daddc84}:1.9", + "{53cad060-05d9-4064-a562-69532daddc84}:2.0", + "{53cad060-05d9-4064-a562-69532daddc84}:2.1", + "{53cad060-05d9-4064-a562-69532daddc84}:2.2", + "{53cad060-05d9-4064-a562-69532daddc84}:2.3", + "{53cad060-05d9-4064-a562-69532daddc84}:2.4", + "{53cad060-05d9-4064-a562-69532daddc84}:2.5", + "{53cad060-05d9-4064-a562-69532daddc84}:2.6", + "{53cad060-05d9-4064-a562-69532daddc84}:2.7", + "{53cad060-05d9-4064-a562-69532daddc84}:2.9", + "{53cad060-05d9-4064-a562-69532daddc84}:3.0", + "{53cad060-05d9-4064-a562-69532daddc84}:3.1", + "{53cad060-05d9-4064-a562-69532daddc84}:3.2", + "{53cad060-05d9-4064-a562-69532daddc84}:3.3", + "{53cad060-05d9-4064-a562-69532daddc84}:3.4", + "{53cad060-05d9-4064-a562-69532daddc84}:3.5", + "{53cad060-05d9-4064-a562-69532daddc84}:3.6", + "{53cad060-05d9-4064-a562-69532daddc84}:3.7", + "{53cad060-05d9-4064-a562-69532daddc84}:3.8", + "{53cad060-05d9-4064-a562-69532daddc84}:3.9", + "{53cad060-05d9-4064-a562-69532daddc84}:4.0", + "{53cad060-05d9-4064-a562-69532daddc84}:4.1", + "{53cad060-05d9-4064-a562-69532daddc84}:4.2", + "{53cad060-05d9-4064-a562-69532daddc84}:4.3", + "{53cad060-05d9-4064-a562-69532daddc84}:4.4", + "{53cad060-05d9-4064-a562-69532daddc84}:4.5", + "{53cad060-05d9-4064-a562-69532daddc84}:4.6", + "{53cad060-05d9-4064-a562-69532daddc84}:4.7", + "{53cad060-05d9-4064-a562-69532daddc84}:4.8", + "{53cad060-05d9-4064-a562-69532daddc84}:4.9", + "{53cad060-05d9-4064-a562-69532daddc84}:5.0", + "{53cad060-05d9-4064-a562-69532daddc84}:5.1", + "{53cad060-05d9-4064-a562-69532daddc84}:5.2", + "{53cad060-05d9-4064-a562-69532daddc84}:5.3", + "{53cad060-05d9-4064-a562-69532daddc84}:5.4", + "{53cad060-05d9-4064-a562-69532daddc84}:5.5", + "{53cad060-05d9-4064-a562-69532daddc84}:5.6", + "{53cad060-05d9-4064-a562-69532daddc84}:5.7", + "{53cad060-05d9-4064-a562-69532daddc84}:5.8", + "{53cad060-05d9-4064-a562-69532daddc84}:5.9", + "{53cad060-05d9-4064-a562-69532daddc84}:5.9.1", + "{53cad060-05d9-4064-a562-69532daddc84}:5.9.2", + "{53cad060-05d9-4064-a562-69532daddc84}:5.9.3", + "{53cad060-05d9-4064-a562-69532daddc84}:5.9.4", + "{53cad060-05d9-4064-a562-69532daddc84}:5.9.5", + "{53cad060-05d9-4064-a562-69532daddc84}:5.9.6", + "{53cad060-05d9-4064-a562-69532daddc84}:5.9.8", + "{53cad060-05d9-4064-a562-69532daddc84}:5.9.9", + "{53cad060-05d9-4064-a562-69532daddc84}:6.0", + "{53cad060-05d9-4064-a562-69532daddc84}:6.0.1", + "{53cad060-05d9-4064-a562-69532daddc84}:6.0.2", + "{53cad060-05d9-4064-a562-69532daddc84}:6.0.3", + "{53cad060-05d9-4064-a562-69532daddc84}:6.0.4", + "{53cad060-05d9-4064-a562-69532daddc84}:6.0.5", + "{53cad060-05d9-4064-a562-69532daddc84}:6.0.6", + "{53cad060-05d9-4064-a562-69532daddc84}:6.0.7", + "{53cad060-05d9-4064-a562-69532daddc84}:6.0.8", + "{53cad060-05d9-4064-a562-69532daddc84}:6.0.9", + "{53cad060-05d9-4064-a562-69532daddc84}:6.1.0", + "{53cad060-05d9-4064-a562-69532daddc84}:6.1.1", + "{53cad060-05d9-4064-a562-69532daddc84}:6.1.2", + "{53cad060-05d9-4064-a562-69532daddc84}:6.1.3", + "{53cad060-05d9-4064-a562-69532daddc84}:6.1.4", + "{53cad060-05d9-4064-a562-69532daddc84}:6.1.5", + "google-ua-search@avtoforex.ru:1.0", + "google-ua-search@avtoforex.ru:1.1", + "google-ru-search@avtoforex.ru:1.0", + "google-ru-search@avtoforex.ru:1.1", + "debug@ninja-cookie.com:0.2.4", + "debug@ninja-cookie.com:0.2.6", + "debug@ninja-cookie.com:0.2.7", + "debug@ninja-cookie.com:0.4.0", + "debug@ninja-cookie.com:0.5.2beta", + "debug@ninja-cookie.com:0.5.2", + "debug@ninja-cookie.com:0.5.3", + "debug@ninja-cookie.com:0.5.4", + "debug@ninja-cookie.com:0.5.5", + "debug@ninja-cookie.com:0.5.6", + "debug@ninja-cookie.com:0.6.0", + "debug@ninja-cookie.com:0.6.1", + "debug@ninja-cookie.com:0.6.2", + "debug@ninja-cookie.com:0.6.3", + "debug@ninja-cookie.com:0.7.0", + "{1b3439ed-00f6-4d28-b7f6-587a109e167f}:1.1", + "{1b3439ed-00f6-4d28-b7f6-587a109e167f}:1.2", + "{429214d0-ba0a-42e0-b09b-6c7dfb829e66}:1.0", + "{429214d0-ba0a-42e0-b09b-6c7dfb829e66}:2.0", + "{8c3335ad-053d-472c-8dbd-b7f318a2e545}:1.0", + "{8c3335ad-053d-472c-8dbd-b7f318a2e545}:2.0", + "{cfcb8fdd-e517-4bf3-990f-45ccd31a3ea3}:1.0", + "{cfcb8fdd-e517-4bf3-990f-45ccd31a3ea3}:2.0", + "{059befdf-8453-432b-b308-13347f60e482}:1.0.0", + "{059befdf-8453-432b-b308-13347f60e482}:1.0.1", + "{059befdf-8453-432b-b308-13347f60e482}:1.0.3", + "{059befdf-8453-432b-b308-13347f60e482}:1.0.4resigned1", + "emailthis@emailthis.me:1.0.6", + "emailthis@emailthis.me:1.1.0", + "emailthis@emailthis.me:1.2.1", + "emailthis@emailthis.me:1.5.0", + "emailthis@emailthis.me:2.0.0", + "emailthis@emailthis.me:2.1.0", + "emailthis@emailthis.me:2.5.0", + "emailthis@emailthis.me:2.5.1", + "emailthis@emailthis.me:2.5.2", + "emailthis@emailthis.me:2.5.3", + "emailthis@emailthis.me:2.5.4", + "emailthis@emailthis.me:2.5.5", + "emailthis@emailthis.me:2.6", + "emailthis@emailthis.me:2.6.1", + "emailthis@emailthis.me:2.6.2", + "@detrumpify:1.1.15", + "@detrumpify:1.1.25", + "@detrumpify:1.1.31", + "@detrumpify:1.1.33", + "@detrumpify:1.1.37", + "@detrumpify:1.1.39", + "@detrumpify:1.1.41", + "@detrumpify:1.2.1", + "@detrumpify:1.2.5", + "@detrumpify:1.2.6", + "@detrumpify:1.2.7", + "@detrumpify:1.2.10", + "@detrumpify:1.2.11", + "@detrumpify:1.2.12", + "@detrumpify:1.2.13resigned1", + "@detrumpify:1.4.0", + "@detrumpify:1.4.1", + "@detrumpify:1.4.2", + "qrscaner@laobubu.net:1.2.3", + "qrscaner@laobubu.net:1.2.4resigned1", + "{af0b21e9-d1e3-4964-80f2-34c55178e20f}:1.0.901", + "{a75e6a54-6a05-4dae-bffd-31e183a57a0f}:1.0", + "{dd7b7605-77e8-4d09-93fc-34efea12e12f}:1.0.0", + "{0aad18d9-ec25-4f39-acca-d9d21ecbc7a1}:1.0.1", + "{2c899d0c-2c21-12df-301c-91cf23cc73af}:1.3.0", + "{7e6d7094-cc01-49c0-a39c-8365f891ce59}:1.0", + "{ae5fbfa7-de4b-4a69-9146-fec7a60a7afd}:1.0", + "{f86db7e3-ac2b-44ae-a7eb-139e0233ffb1}:1.0", + "{62a93546-9a5f-4091-b3e2-aaaece2f02d8}:1.0", + "{346e9088-3f42-46d6-99b3-8df3e53af856}:1.0", + "{cd53cd35-78ab-4281-9e71-24c1088fa857}:1.0", + "{35c02bd3-532a-5303-3129-c1e5ba8065a2}:0.1.7", + "{1a3dbd16-6378-48ed-92ad-7bc58c80bec6}:1.0", + "{8c68f1d7-6ae5-42f4-977d-29a81c50b8b4}:1.0", + "{b5498e71-9960-4a4e-962c-ae75bcb65656}:1.0", + "{73908e0d-e48b-4002-80e6-096648257dd7}:1.0", + "{bc738228-baf0-4515-8cbc-a13cc3dedf5d}:1.0", + "{61f4c600-1e4f-438b-8972-858cc2c85eb4}:1.0", + "{860336fe-de91-4f5c-a609-9631759b3b21}:1.1", + "{5c3e5d0f-4202-4f1a-8295-e350bc439a58}:1.1", + "{93883955-d749-48ad-95af-5d421570d074}:1.0", + "{572b9c4a-5c5c-484b-8134-be987c845f2c}:4.10.8", + "{6dce0583-b36f-4b46-85ea-d47a11607f65}:1.0", + "{daa169ee-e59a-4681-ad52-27f3c22faaa6}:1.0", + "{c39221f3-a66b-4e5f-b0f6-a5add63ae20a}:1.0", + "textsnippet@local:1.0.0", + "{161dd607-49e9-493f-9c0e-d2e3203088df}:0.0.2", + "{a4bdbeea-b386-4d3d-b7a3-d071836107e7}:1.0.4", + "{a4bdbeea-b386-4d3d-b7a3-d071836107e7}:2.0.4", + "{459beb97-fda1-496f-a76c-4e23da23c73a}:0.5.10", + "{8c28dee9-2411-4c04-8b38-a4738c87d599}:3.2.5", + "{dbb4871f-a0c9-4719-96fe-576f4b285bee}:1.0", + "word_counter@addon.dev:1.0", + "text_highlighter@addon.dev:1.0", + "tab_organizer@addon.dev:1.0", + "scroll_to_top@addon.dev:1.0", + "screenshot_saver@addon.dev:1.0", + "quick_translator@addon.dev:1.0", + "link_collector@addon.dev:1.0", + "dark_mode_toggler@addon.dev:1.0", + "copy_all_images@addon.dev:1.0", + "auto_refresh@addon.dev:1.0", + "liquidrechner@vape-laden.de:1.0", + "video_downloader@addon.dev:1.0", + "price_tracker@addon.dev:1.0", + "page_saver@addon.dev:1.0", + "form_autofill@addon.dev:1.0", + "dom_reader@addon.dev:1.0", + "auto_clicker@addon.dev:1.0", + "ad_blocker@addon.dev:1.0", + "{d0a6ae5a-c8f8-46b6-8c78-3c3cbd8dc721}:1.9", + "{e1a36dd4-8154-441b-93f2-d54f9b4b1cf1}:1.0.3", + "{13182346-f2de-4679-ad53-0aa6501096d7}:1.3", + "{b6e1002c-2f2d-451d-bc9f-ac9384d269d4}:1.1.3", + "{beb69697-e473-4890-81d4-a8d7fa04663a}:0.0.4", + "{11326f80-490e-43e7-999c-9971f1916cbc}:2.2", + "{0f809676-9559-4d52-97d6-4a108d6bd172}:17.1", + "{813fa099-989f-4a31-8859-27b7ea30e194}:9.0.0", + "{117309d7-d06b-479b-8219-0f1d613844f0}:0.3.6", + "{202caebd-c34f-4575-88b0-76f215928615}:3.4.0", + "{7dd178ee-4a1e-4901-9531-0a44dae8c5c8}:1.0", + "{b2df2358-0233-49f6-9d88-0612a1042c43}:0.4.4", + "{0ec2f240-c789-46be-a520-e32752e9102d}:1.2.2", + "{94ab377d-196e-4777-9df3-619791bbcd27}:1.1", + "{e9ac6eca-a3e4-4a66-9790-4d5c3a73a0d1}:1.0", + "{976140d2-ddb3-10bb-1625-bc6d5480e820}:6.6.0", + "{d783f75c-4d96-404b-9670-4497d4c58625}:1.3", + "{97174c54-3567-445a-9e8f-68ff52aac088}:2.6.14", + "{e8cba98a-845a-4e8b-8eef-58e725d843c1}:1.3", + "{7536cf64-c87c-40bc-97b1-9b6bb4b9e7f0}:1.0", + "{0e684e3c-d549-408a-9550-91575bd01166}:1.1", + "hello@juicysearch.com:1.0", + "{197be075-cb1a-4e94-bcd8-4469e88b46cb}:1.0", + "{f65b5119-7bb5-41d0-9539-ef28c09ede4e}:1.0", + "{8235d0cb-84f5-4bb3-a8c5-f7fb573547a8}:1.0", + "{ca911399-18d6-437f-86e4-b457b5888eeb}:3.0.5", + "{15fde5ed-825b-4934-bf7a-00e1b17258a9}:0.3.0", + "{ef17f45a-45d8-48e2-a756-c1aacb32980b}:1.2.2", + "{d5737b5b-cc4c-4bc9-bf42-a18f15efb106}:20.21", + "{d371b7fd-77b5-437a-9bde-72d67fa81cad}:1.1", + "{20763523-d836-42ae-96a0-487b3985979a}:1.2.0", + "{73048ab9-7b71-4c0d-81d8-a8cf75221626}:3.2.0", + "{fc1746d7-d76f-42a0-a0b5-87e2ba5b155d}:1.1.6", + "{569d32da-df21-49f1-be37-0649237866b3}:0.0.4", + "{027c0f65-43fa-4b69-863a-18af6b57930a}:0.3.1", + "{c4c835ad-9ba7-4084-83f6-119c7ff1950b}:1.0", + "{4b5bc216-47e9-4ab4-9ca8-2405a3cf5316}:1.0", + "{f182a358-eb6b-42cc-bb3f-db5a3cffc12d}:1.0", + "{8696ede8-88d9-423d-84fc-f9f555e12ace}:1.0.0", + "{d862fb52-1d01-42a0-ba98-0f29d974b98a}:1.0", + "{b20380d1-7f0a-4d9b-a70f-9fef15fba238}:1.0", + "{2e137d48-0dab-4d33-8bd2-40b7f7a2f502}:1.0", + "{68480e4c-f1d2-44d6-8e70-b60533db98fe}:2.11.7", + "{a599c3ad-9835-4279-80b9-a9ae3b572809}:3.0", + "{db0a53ac-6b15-4cdb-a79d-a449fd630ba6}:4.0", + "{736ed245-4282-4e8b-9ff2-88a1a618afae}:1.0", + "{e05c2fc0-6bcd-4a2f-84c5-a6bff5be36a0}:1.0", + "{e05c2fc0-6bcd-4a2f-84c5-a6bff5be36a0}:2.0", + "{76269c3c-3f1c-4c8a-8f3a-2ad84ec521fe}:1.0", + "{76269c3c-3f1c-4c8a-8f3a-2ad84ec521fe}:2.0", + "{76269c3c-3f1c-4c8a-8f3a-2ad84ec521fe}:3.0", + "{76269c3c-3f1c-4c8a-8f3a-2ad84ec521fe}:4.0", + "{76269c3c-3f1c-4c8a-8f3a-2ad84ec521fe}:5.0", + "{0a5e0dd4-bd84-46f2-a51b-82af5910ddab}:1.0", + "{0a5e0dd4-bd84-46f2-a51b-82af5910ddab}:2.0", + "{43d9c736-6749-4207-a641-f6b2c2b8ce2b}:1.0", + "{43d9c736-6749-4207-a641-f6b2c2b8ce2b}:2.0", + "{4146fab4-22cd-4133-848b-89cceb8ee567}:1.0", + "{4146fab4-22cd-4133-848b-89cceb8ee567}:2.0", + "{bed64216-6b0c-4f65-99bc-58d22d96979e}:1.2.0", + "{756ddd25-369f-4cb6-825a-fb6530e97c62}:20.21", + "{8dace71d-2cdd-4b48-b5e7-54311bd25e2c}:0.5.2", + "{df262384-a57e-485e-9673-37bd7b29558a}:1.3.9", + "{6fcdeb3c-9886-4a1d-a17a-e892d5b5272a}:2.2.3", + "{8ec9ebcf-a4c8-4db4-b6f2-1996ab8b152b}:1.0", + "{58f41af7-c4e1-41d8-b4d4-5c7dcfb0cbda}:1.0", + "{4c67b73d-a68f-4158-aed5-27fa85601d85}:1.0", + "{c69fd7c4-9486-4438-ab19-55591ea1d389}:1.0", + "{b4eaeb3b-df45-4545-8f43-56c8b7fab873}:1.0", + "{df447403-1ea5-4a66-853c-0d9319ee7c90}:1.0", + "{1a76435d-1ebe-4285-bbba-64e6b8d37102}:1.0", + "{593dd77b-a88f-4bf1-babe-86b8fb2107fa}:1.0", + "{6569a0ba-63a9-4100-bae8-66d951951675}:1.0", + "{6569a0ba-63a9-4100-bae8-66d951951675}:1.1", + "{6569a0ba-63a9-4100-bae8-66d951951675}:1.2", + "{8c835d25-b168-43c2-ae82-8cf14d06583e}:1.0", + "{98f2ab26-0215-47c2-90d7-7b391eaa42ce}:1.0", + "{a0c9222a-ff53-4384-9688-75ef2341640a}:0.1.2", + "{0c16450f-57ea-48d2-9379-927d6cb1cf8e}:1.2.0", + "{1675109c-6702-42da-bcf2-d624058f460b}:1.0.4", + "{017328fc-da0d-1b06-aada-21db237f6b8c}:1.2.9", + "{758c1c8c-d910-458a-9684-6eabaa79305c}:1.0", + "{037328fc-da0d-1b06-aada-28db297f3b8c}:1.2.9", + "{66931440-6270-4599-a496-9f645c636248}:1.1.0", + "{227ed318-ee70-43b4-b451-553f8f74aeb9}:1.0", + "{370ed4e3-ac1a-4f4e-9527-81d86425581f}:1.0", + "{fc2c4b4b-4e41-43e8-b2d0-3f25f170c0b6}:1.0", + "{026fd124-9e18-4a36-b9bf-9be7e2b2aa81}:1.1.1", + "{026fd124-9e18-4a36-b9bf-9be7e2b2aa81}:1.2.1", + "{621a3f94-7d24-4cf9-99d7-f6a614af1d8c}:1.0", + "{38181aff-35f9-493a-94d7-a6ba6053ca06}:1.0", + "{97af8556-2913-4689-9073-dc3bdea5a3ee}:1.0", + "{0dd042f3-383b-4cbc-9fe4-0edc8391ba2f}:1.0", + "{c032597d-6f1b-4a1a-b087-c6da7263ff06}:5.0", + "{98c0209b-54e5-4044-a866-fe3b4a505b34}:1.0", + "{2ccdd7b9-df4c-40da-bd34-d96f2d5daf42}:1.0", + "{a5c6dd05-b2bf-406d-ab89-1126d6ac2706}:1.0", + "{1413d780-c6f3-48c9-a1f9-6f77bf7a79f7}:1.0", + "{c311f0fa-20aa-4aa9-8187-2d72c482e32c}:1.0", + "{cdecc213-ff28-404c-8b6c-5eac4bf42f59}:1.0", + "{7220e740-7a03-4ff3-8d9f-c3664d02ab82}:1.0", + "{a2fd25fd-95c5-455c-8bbf-bb8dfc1cc838}:1.0", + "{cf1c6bc9-056a-4367-9d62-593062b7ce3e}:1.0", + "google-ukraine-search@avtoforex.ru:1.0", + "google-russian-search@avtoforex.ru:1.0", + "{b42001d2-ed90-4d36-88ad-4a4b8262a1fb}:1.0", + "{da520567-c5b0-4496-8317-698c96778f52}:1.0", + "{eefb374b-ea77-47a1-bb1b-bd5758569056}:1.0", + "{fc947fe5-ee9b-4642-8837-c40cc00d60c0}:1.0", + "{b9ddfa6d-fb38-47a6-8cf2-8d1044540a1f}:1.0", + "{b9ddfa6d-fb38-47a6-8cf2-8d1044540a1f}:2.0", + "{9f5315ab-8d78-4f25-a135-e2d93840596f}:1.0", + "{9f5315ab-8d78-4f25-a135-e2d93840596f}:2.0", + "{b3c1725e-d1e2-4859-ae6d-74aa91ff2e86}:1.0", + "{b3c1725e-d1e2-4859-ae6d-74aa91ff2e86}:2.0", + "{a40223e3-b109-4414-a210-a02b8273fabf}:1.0", + "{a40223e3-b109-4414-a210-a02b8273fabf}:2.0", + "{79c7699f-33d0-4b2e-b9c9-b51c395be8cd}:1.0", + "{79c7699f-33d0-4b2e-b9c9-b51c395be8cd}:2.0", + "{57308a02-d0fd-4596-8bad-1f7f4b766337}:1.0", + "{57308a02-d0fd-4596-8bad-1f7f4b766337}:2.0", + "{ef3dccb3-68cb-4760-8b29-8c3f21b5a207}:1.0", + "{ef3dccb3-68cb-4760-8b29-8c3f21b5a207}:2.0", + "{72f79675-3bd3-4920-afdd-281fb38b371e}:1.0", + "{72f79675-3bd3-4920-afdd-281fb38b371e}:2.0", + "{40c27e0d-9095-4231-bf2c-f614deee1d92}:1.0", + "{40c27e0d-9095-4231-bf2c-f614deee1d92}:2.0", + "{a1d620ba-020b-4946-8aa7-3348da741853}:1.0", + "{a1d620ba-020b-4946-8aa7-3348da741853}:2.0", + "{ec9860af-b219-4c8f-b19f-5039ed3af057}:1.0", + "{ec9860af-b219-4c8f-b19f-5039ed3af057}:2.0", + "{4688de68-87c3-4f53-abbf-8a4036c02a45}:1.0", + "{4688de68-87c3-4f53-abbf-8a4036c02a45}:2.0", + "{6bdc68ad-0487-4329-8269-74d1f76ed2c8}:1.0", + "{6bdc68ad-0487-4329-8269-74d1f76ed2c8}:2.0", + "extension@tokentrace.ai:0.2.0" ] }, - "schema": 1770705381919, + "schema": 1773210981190, "key_format": "{guid}:{version}", - "stash_time": 1770726906132, - "id": "6afda584-7730-48e6-bb8f-10fd43e69ce3", - "last_modified": 1770727000065 + "stash_time": 1773232505366, + "id": "36815198-fa0b-4085-8742-ce36f59d6b2d", + "last_modified": 1773232582756 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "my-dark-mode@example.com:2.0" + "{648bdc74-94c6-4196-8789-d5947268867c}:6.4", + "{648bdc74-94c6-4196-8789-d5947268867c}:6.3", + "{648bdc74-94c6-4196-8789-d5947268867c}:6.2", + "{648bdc74-94c6-4196-8789-d5947268867c}:5.3", + "jcpqdstAfroSAfroMonitorIA@AfroMonitorIA.com:1.10", + "jcpqdstAfroSAfroMonitorIA@AfroMonitorIA.com:1.11", + "{648bdc74-94c6-4196-8789-d5947268867c}:6.5", + "fc-automation@your-domain.com:1.0.0", + "ighwopefe09rgueoprjvhkehvlwcjeourfeiojhrgkjegfkdsjdkclnediufv@netflix.com:1.3", + "redirector@antigravity.test:1.1", + "{4b206acb-c849-4621-98eb-17514c8ee814}:1.0", + "{4b206acb-c849-4621-98eb-17514c8ee814}:1.1.1", + "{4b206acb-c849-4621-98eb-17514c8ee814}:1.2", + "{4b206acb-c849-4621-98eb-17514c8ee814}:1.2.1", + "{4b206acb-c849-4621-98eb-17514c8ee814}:1.2.2", + "{4b206acb-c849-4621-98eb-17514c8ee814}:1.2.3", + "{4b206acb-c849-4621-98eb-17514c8ee814}:1.2.4", + "{4b206acb-c849-4621-98eb-17514c8ee814}:1.3.1" ] }, - "schema": 1770683791574, + "schema": 1773189384048, "key_format": "{guid}:{version}", - "stash_time": 1770705304894, - "id": "4ba454c0-c64a-4815-a969-3a5bc0df7aca", - "last_modified": 1770705381653 + "stash_time": 1773210905426, + "id": "fa6769e4-cb66-4209-8528-b7f23bac369f", + "last_modified": 1773210981015 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "{434c771f-f8ef-4a7b-baa4-33a3e1b63763}:3.1", - "toolbar-separator-1@local:1.0", - "{b6df675f-ace3-4054-a42f-19769596543c}:1.0", - "{301ce2a8-95d9-4e5d-ab47-b22727782b78}:1.0", - "{7638d1d7-e28d-470c-af97-fdbef33e275a}:1.0", - "{97c53a6f-829c-4d34-93a4-c355d9e84e52}:1.0", - "{ae75a998-61fc-4d97-b563-963028d825fe}:1.0", - "{d1cdf025-e2ea-4aec-bd09-1f9b66c5831e}:1.0", - "{f6f5b51a-7cf6-417b-acb7-4c2a817595d9}:3.0", - "{220e6d3c-237e-4f43-b79d-bb022f16413a}:0.1.0", - "{220e6d3c-237e-4f43-b79d-bb022f16413a}:1.0.0", - "{220e6d3c-237e-4f43-b79d-bb022f16413a}:1.0.1", - "yoday419@gmail.com:3.6", - "yoday419@gmail.com:3.5", - "yoday419@gmail.com:3.9.1" + "redirector@antigravity.test:1.0", + "ig2@softgarden.com:1.1", + "{648bdc74-94c6-4196-8789-d5947268867c}:6.0", + "{648bdc74-94c6-4196-8789-d5947268867c}:5.8", + "{648bdc74-94c6-4196-8789-d5947268867c}:5.7", + "{648bdc74-94c6-4196-8789-d5947268867c}:5.6", + "{648bdc74-94c6-4196-8789-d5947268867c}:5.5", + "{648bdc74-94c6-4196-8789-d5947268867c}:5.4", + "{648bdc74-94c6-4196-8789-d5947268867c}:5.9", + "{648bdc74-94c6-4196-8789-d5947268867c}:6.1" ] }, - "schema": 1770662193469, + "schema": 1773167793961, "key_format": "{guid}:{version}", - "stash_time": 1770683705986, - "id": "b20bd0e9-93a7-43a6-a57e-e26a75c027af", - "last_modified": 1770683791318 + "stash_time": 1773189305894, + "id": "abf0604c-3572-48e6-a0bd-fbe543947a92", + "last_modified": 1773189383806 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "{f5a9c8d2-1b3e-4f7a-9c0d-2e8b4a6f1c3d}:1.0.0", + "{f5a9c8d2-1b3e-4f7a-9c0d-2e8b4a6f1c3d}:1.1", + "{79875c40-ed9d-481a-a274-929daf40717d}:3.2.1", + "foxyflag@zeneka.org:1.0.0", + "camcookie@addon:1.0.0", + "camcookie@addon:1.1.0", + "{a1b2c3d4-e5f6-7890-abcd-ef1234569000}:1.0.32", + "site-specific-locales@hmpf.org:1.0.0", + "totp@mo:1.2.11", + "{84df0e81-9114-4f04-b73a-2fb009304f11}:2.0", + "gblock@V2.2:2.2", + "{1d2907cc-29ff-43b1-a385-be481f6a0f1d}:1.0", + "testlakshitha.k@koreanspa.lk:3.2", + "camcookie-internet@addon:2.0.0" + ] + }, + "schema": 1773146203926, + "key_format": "{guid}:{version}", + "stash_time": 1773167706441, + "id": "f5402580-136f-4e2d-bdc5-6f81f43e970f", + "last_modified": 1773167793738 }, { "stash": { "blocked": [ - "juvyrobledohz24562@outlook.com:1.0" + "{6d8a7c1b-9e2f-4c3d-8a0b-56789abcdef0}:1.2.1", + "live-football-scores@live-scores.com:1.0.0", + "live-football-scores@live-scores.com:1.3.0", + "live-football-scores@live-scores.com:1.4.5", + "{61e29143-5399-4f66-ba2a-2cc3e5f8c91b}:1.1.2", + "{61e29143-5399-4f66-ba2a-2cc3e5f8c91b}:1.8.0", + "promptvault-ai@local:1.0.0", + "promptvault-ai@local:1.3.0" ], "unblocked": [], "softblocked": [ - "shop-helper@neuffer.de:1.1", - "{22133576-7161-43a8-a89a-702f7ef55160}:0.66", - "{db1f302b-963d-4737-8027-95a810d4ba22}:1.0", - "job2cv@jbscan.local:1.2", - "gvcplugin@timhmdv.com:1.0.0", - "gvcplugin@timhmdv.com:1.1.0", - "gvcplugin@timhmdv.com:1.2.0", - "gvcplugin@timhmdv.com:1.3.0", - "gvcplugin@timhmdv.com:1.3.1", - "ai-page-translator@asychin:1.1.0", - "yttimetracker.nazarnik050406@gmail.com:2.0.1", - "yttimetracker.nazarnik050406@gmail.com:2.0.0", - "{6bf8eb69-4c0d-4041-8675-0cc402027be4}:1.3.7", - "{431e3425-6345-48e2-b300-258f63d3fe4b}:1.9.2", - "{431e3425-6345-48e2-b300-258f63d3fe4b}:1.9.1", - "CryptoPro@example.com:1.2" + "keepteamsawake@samvdb.dev:1.0.2", + "evetting-autofill@syafiq:1.0.2", + "arek.moga@gmail.com:6.9.998", + "arek.moga@gmail.com:6.9.7", + "r11-osms-extension@example.com:1.0.5", + "abcdra.localchosht.interceptor@example.com:1.1", + "{3e6d89e9-a95a-4fd8-b6e2-9d2fbef694df}:3.2", + "yt-list-view@local:1.2.5", + "beamng-manager-bridge@local:0.1.0", + "beamng-manager-bridge@local:0.1.1", + "beamng-manager-bridge@local:0.1.2", + "pl-en@magnus:1.3.1", + "pl@magnus:1.0.0" ] }, - "schema": 1770640593701, + "schema": 1773124592909, "key_format": "{guid}:{version}", - "stash_time": 1770662106712, - "id": "a6e655bf-a6f7-4a42-9e84-4edc99fdbb1b", - "last_modified": 1770662193316 + "stash_time": 1773146107304, + "id": "909c6348-a306-41f0-bc6a-bb7e7e669d00", + "last_modified": 1773146203757 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "{c8c4532b-56b9-4cbd-8dcd-ff2ddc333f34}:1.0", + "{caeb485e-8070-4520-8262-8ef288a3e35f}:5.12" + ] + }, + "schema": 1773102982579, + "key_format": "{guid}:{version}", + "stash_time": 1773124506304, + "id": "27d51109-3f2e-4e11-978d-43993e39d8e6", + "last_modified": 1773124592745 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "image-downloader@ozler365:16.0", + "{a24981ef-d744-48a9-b72c-92d93e6fdc59}:1.0.1", + "ton-extension@local:0.7.1", + "imap-mail-notifier@moz-addon.com:1.0", + "imap-mail-notifier@mzf-addon-self.com:1.0", + "enhancer@goldenfox.com:21.1.5" + ] + }, + "schema": 1773081398515, + "key_format": "{guid}:{version}", + "stash_time": 1773102905994, + "id": "bfc6cbe9-8d90-471d-9e6c-34766c14ea0f", + "last_modified": 1773102982384 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "support@astec.de:0.2", + "support@astec.de:0.1", + "arek.moga@gmail.com:6.9.99", + "recup-cairn@ekvidi:0.5", + "recup-cairn@ekvidi:0.6", + "recup-cairn@ekvidi:0.7", + "recup-cairn@ekvidi:0.8", + "recup-cairn@ekvidi:0.8.1", + "recup-cairn@ekvidi:0.8.2", + "regis-browser-history@ekvidi:0.1", + "regis-browser-history@ekvidi:0.2", + "regis-browser-history@ekvidi:0.3", + "regis-browser-bookmark@ekvidi:0.1", + "regis-browser-bookmark@ekvidi:0.2", + "admin@grossegger.com:2.20.1.1", + "{b88626de-9de8-445f-8ccf-1d6ea2177b00}:2.15.0", + "{fbb9ebcc-eaae-4a16-81d0-1ae0546418d3}:2.15.0", + "__newtabpageWork@vitaliy.com:2025.6.15", + "umpa@wac.it:1.3.0", + "kontenmanager@gmx.de:2026.0.3.2", + "kontenmanager@gmx.de:2026.0.3.3", + "kontenmanager@gmx.de:2026.0.3.4", + "fb-link-finder@hocgiahd:2.0", + "fb-link-finder@hocgiahd:2.1", + "znuny-scheduler@extension:1.3", + "{a39f3865-747c-4281-8efc-b609f869b6e8}:1.2", + "{a39f3865-747c-4281-8efc-b609f869b6e8}:1.3", + "{a39f3865-747c-4281-8efc-b609f869b6e8}:1.4", + "{a39f3865-747c-4281-8efc-b609f869b6e8}:1.5", + "{a39f3865-747c-4281-8efc-b609f869b6e8}:1.6", + "{a39f3865-747c-4281-8efc-b609f869b6e8}:1.7", + "{a39f3865-747c-4281-8efc-b609f869b6e8}:1.8resigned1", + "{a39f3865-747c-4281-8efc-b609f869b6e8}:1.9", + "arbeitszeit@fiori-extension:1.0.11", + "arbeitszeit@fiori-extension:1.0.10", + "arbeitszeit@fiori-extension:1.0.5", + "arbeitszeit@fiori-extension:1.0.6", + "arbeitszeit@fiori-extension:1.0.7", + "arbeitszeit@fiori-extension:1.0.8", + "neurai-sign@neuraiproject.org:0.7.2", + "{cf973959-6dc8-4f27-b708-1273f75d81c3}:1.0", + "{cf973959-6dc8-4f27-b708-1273f75d81c3}:2.0", + "chzzk-auto-log-power@personal.extension:1.2", + "{fa2aefc7-8f1d-45f5-a565-2e752d256937}:1.0", + "gitlab-mr-manager@ds-in.net:1.2.1", + "gitlab-mr-manager-v2@ds-in.net:1.2.1" + ] + }, + "schema": 1773059783495, + "key_format": "{guid}:{version}", + "stash_time": 1773081306821, + "id": "5fe260b7-d5c1-43af-b0cb-96159627ebe1", + "last_modified": 1773081398348 }, { "stash": { "blocked": [ - "smart-bookmarks-3ns400or@icecat.extension:3.4.5", - "smart-bookmarks-pyr72r6z@icecat.extension:2.6.7", - "smart-bookmarks-fjxm6op9@icecat.extension:2.6.5", - "secure-browse-sp5rdrz3@icecat.extension:2.7.4", - "secure-browse-re2gbt58@icecat.extension:2.1.9", - "secure-browse-39lav85a@icecat.extension:1.5.7", - "screenshot-master-sv3v71rz@icecat.extension:1.1.3", - "privacy-shield-pro-zy4dike4@icecat.extension:3.6.4", - "privacy-shield-pro-wv8j5759@icecat.extension:1.2.5", - "json-formatter-plus-i7p1phpv@icecat.extension:3.9.6", - "json-formatter-plus-c8m1htuz@icecat.extension:2.7.2", - "json-formatter-plus-bgpdnxd4@icecat.extension:2.4.0", - "image-gallery-saver-kbwz66su@icecat.extension:3.0.0", - "image-gallery-saver-cq8jzwbn@icecat.extension:2.9.3", - "image-gallery-saver-npt03ejd@icecat.extension:2.3.4", - "image-gallery-saver-crttrkmy@icecat.extension:1.6.3", - "dev-tools-pro-s4jtto87@icecat.extension:3.5.8", - "css-inspector-pro-2nqwu31o@icecat.extension:3.4.3", - "css-inspector-pro-cslm7frl@icecat.extension:3.0.2", - "css-inspector-pro-2j0x7h44@icecat.extension:2.8.8", - "css-inspector-pro-ble33a0u@icecat.extension:2.8.1", - "css-inspector-pro-owob4ik5@icecat.extension:2.8.0", - "css-inspector-pro-nauzjv6p@icecat.extension:2.0.7", - "css-inspector-pro-tjeufu3q@icecat.extension:1.8.2", - "css-inspector-pro-ckvz349f@icecat.extension:1.3.5", - "cookie-manager-plus-ztbgexi0@icecat.extension:2.6.1", - "cookie-manager-plus-2tnvnf9b@icecat.extension:2.4.0", - "cookie-manager-plus-6xbrp8u8@icecat.extension:1.7.3", - "cookie-manager-plus-tx5bmx3g@icecat.extension:1.5.4", - "video-downloader-pro-5jqm67r3@icecat.extension:3.9.7", - "video-downloader-pro-1obt1yvg@icecat.extension:2.9.4", - "smart-bookmarks-qa526zkw@icecat.extension:3.8.0", - "smart-bookmarks-cjotm5n4@icecat.extension:2.4.7", - "secure-browse-7vh8jln0@icecat.extension:2.9.6", - "secure-browse-jx7bwi2n@icecat.extension:1.7.2", - "screenshot-master-o69m0x9r@icecat.extension:3.9.3", - "screenshot-master-0cemepbm@icecat.extension:3.7.6", - "json-formatter-plus-w2vfxn9z@icecat.extension:2.2.8", - "json-formatter-plus-921tgjlh@icecat.extension:2.0.9", - "image-gallery-saver-tw7v5boz@icecat.extension:1.3.5", - "image-gallery-saver-imx7y8b8@icecat.extension:1.0.0", - "focus-timer-du2l4a30@icecat.extension:3.7.1", - "focus-timer-64jia8ok@icecat.extension:2.7.7", - "focus-timer-a7ijryrf@icecat.extension:1.6.2", - "dev-tools-pro-twp0f7ik@icecat.extension:2.8.1", - "dev-tools-pro-kh0td4ax@icecat.extension:1.4.1", - "cookie-manager-plus-uu7abzf6@icecat.extension:3.2.0", - "cookie-manager-plus-g0t3gftx@icecat.extension:2.3.6", - "cookie-manager-plus-o41wjakt@icecat.extension:2.2.4", - "cookie-manager-plus-toc5uqsc@icecat.extension:1.2.2", - "video-downloader-pro-ypeebatc@icecat.extension:2.6.7", - "video-downloader-pro-r4j5gpdf@icecat.extension:2.6.3", - "smart-bookmarks-20vfq7xe@icecat.extension:1.9.3", - "secure-browse-l4msfxeh@icecat.extension:3.8.6", - "quick-notes-dphtaks4@icecat.extension:2.8.2", - "privacy-shield-pro-o86gwkre@icecat.extension:1.8.8", - "image-gallery-saver-rncmcyvp@icecat.extension:3.9.8", - "image-gallery-saver-rrlvlg6s@icecat.extension:2.4.0", - "image-gallery-saver-uj5vl9yo@icecat.extension:1.0.7", - "cookie-manager-plus-6tu8zorg@icecat.extension:3.1.1", - "video-downloader-pro-dtr4e95e@icecat.extension:3.7.8", - "video-downloader-pro-t3riz7hu@icecat.extension:3.3.7", - "video-downloader-pro-9xvlvl64@icecat.extension:3.2.5", - "video-downloader-pro-i98xcopi@icecat.extension:3.2.4", - "video-downloader-pro-wxctoykv@icecat.extension:1.8.5", - "video-downloader-pro-f9n32gbe@icecat.extension:1.5.2", - "video-downloader-pro-fno2xy4f@icecat.extension:1.4.0", - "tab-manager-pro-cgki9ees@icecat.extension:2.8.8", - "tab-manager-pro-xgxhgc0k@icecat.extension:2.1.1", - "tab-manager-pro-i2lk9q3m@icecat.extension:1.3.4", - "tab-manager-pro-0l29w73a@icecat.extension:1.2.7", - "smart-bookmarks-u6fufvgi@icecat.extension:2.2.7", - "smart-bookmarks-ru50pimn@icecat.extension:2.1.3", - "smart-bookmarks-4r2ouj9w@icecat.extension:1.4.1", - "secure-browse-p62imqdp@icecat.extension:3.9.0", - "secure-browse-uvgvrung@icecat.extension:3.6.1", - "secure-browse-siae8wo4@icecat.extension:3.0.2", - "secure-browse-gvm4n44c@icecat.extension:2.5.7", - "secure-browse-nq90k45b@icecat.extension:2.5.5", - "screenshot-master-cqbx7yee@icecat.extension:3.3.7", - "screenshot-master-nxw6dkjv@icecat.extension:3.0.1", - "screenshot-master-qf51w93a@icecat.extension:1.4.3", - "quick-notes-vi51hxyz@icecat.extension:2.4.8", - "quick-notes-bkeldvu7@icecat.extension:1.6.6", - "quick-notes-w4hxo3yb@icecat.extension:1.6.4", - "css-inspector-pro-7nhcv5jl@icecat.extension:1.2.5", - "smartzoom-f7c6b154@icecat.extension:4.4.1", - "hidden-identity-f2-98857bc8@icecat.extension:2.9.3", - "voice-link-cce598d3@icecat.extension:5.0.3", - "video-downloader-pro-xb9zmsor@icecat.extension:1.1.8", - "screenshot-master-3ekwxtej@icecat.extension:2.6.1", - "edgevpn-f60544f6@icecat.extension:3.4.7", - "css-inspector-pro-9n9s66gk@icecat.extension:2.6.7", - "cookie-manager-plus-wd40r8m8@icecat.extension:1.2.6", - "boost-streamline-schedule-hu-14285ed4@icecat.extension:4.6.5", - "comprehensive-streamline-7658d7f8@icecat.extension:4.2.5", - "jzdownload@icecat.extension:1.0.0", - "video-downloader-pro-ebrxm82u@icecat.extension:3.6.9", - "smart-browser-master-sonfukn0@icecat.extension:3.5.7", - "turbo-tab-manager-0fbzf0c2@icecat.extension:3.7.1", - "quick-notes-72imbqfy@icecat.extension:1.6.2", - "quick-notes-1hze5jz9@icecat.extension:1.2.4", - "privacy-shield-pro-4pm6mx18@icecat.extension:3.7.3", - "privacy-shield-pro-gx6jduvq@icecat.extension:3.4.3", - "privacy-shield-pro-sy0xfvbv@icecat.extension:2.7.9", - "privacy-shield-pro-wq8aq8l3@icecat.extension:1.9.7", - "json-formatter-plus-kuyrz2d6@icecat.extension:3.9.9", - "json-formatter-plus-fqbyphig@icecat.extension:3.6.3", - "json-formatter-plus-vuaa84sg@icecat.extension:2.3.3", - "json-formatter-plus-8ynl2mu6@icecat.extension:1.6.6", - "image-gallery-saver-fcdwgr1n@icecat.extension:2.6.9", - "image-gallery-saver-jf3x1rb9@icecat.extension:2.3.8", - "image-gallery-saver-9fz3p3cm@icecat.extension:1.4.1", - "image-gallery-saver-fskuv7zh@icecat.extension:1.0.4", - "focus-timer-9bvzgqzy@icecat.extension:3.8.4", - "focus-timer-e7jexi73@icecat.extension:3.7.0", - "focus-timer-ixlzu0hp@icecat.extension:1.2.9", - "focus-timer-w8a82mm6@icecat.extension:1.1.8", - "dev-tools-pro-cq761uji@icecat.extension:3.7.0", - "dev-tools-pro-27m1im4f@icecat.extension:3.6.2", - "dev-tools-pro-mpfwktw2@icecat.extension:3.5.2", - "dev-tools-pro-1bsdobo5@icecat.extension:2.7.1", - "dev-tools-pro-vz6lg3ud@icecat.extension:1.5.3", - "css-inspector-pro-urx7ykg4@icecat.extension:2.9.2", - "css-inspector-pro-pjj1yq25@icecat.extension:2.1.3", - "cookie-manager-plus-xistptkh@icecat.extension:3.0.5", - "cookie-manager-plus-sf4orygi@icecat.extension:2.7.9", - "cookie-manager-plus-f6othijq@icecat.extension:2.5.0", - "cookie-manager-plus-juvpbq4o@icecat.extension:1.6.3", - "cookie-manager-plus-r25o5urg@icecat.extension:1.4.0", - "cookie-manager-plus-aogbda1p@icecat.extension:1.2.3", - "smartcommunity-7c7d6534@icecat.extension:1.0.1", - "smart-process-p6-fd92efcf@icecat.extension:4.4.5", - "smart-content-ee02fa77@icecat.extension:5.9.2", - "security-pad-1q-ef46c2cf@icecat.extension:5.4.6", - "reliable-amplify-30e773f2@icecat.extension:1.9.9", - "refine-screenshot-846ecb1b@icecat.extension:5.2.2", - "refine-image-de8146b4@icecat.extension:3.4.7", - "readable-font-7b323150@icecat.extension:4.4.8", - "pulsefeed-765a1f4d@icecat.extension:3.8.7", - "protected-history-193baf2c@icecat.extension:1.0.9", - "prime-search-notification-qg-cb46b569@icecat.extension:2.9.9", - "prime-identity-1b045967@icecat.extension:3.0.1", - "power-screenshot-vo-85434d71@icecat.extension:3.3.6", - "nova-content-8815fe45@icecat.extension:3.5.2", - "network-kit-ef7042e9@icecat.extension:5.3.0", - "find-screenshot-e63024ab@icecat.extension:1.7.4", - "elite-accelerate-vi-ab1f6fc0@icecat.extension:5.2.7", - "echo-navigation-e247beb3@icecat.extension:5.0.2", - "corefocus-9939168c@icecat.extension:2.8.4", - "boost-performance-107a64bc@icecat.extension:3.9.2", - "boost-debug-zn-7de80813@icecat.extension:5.4.0", - "advanced-elevate-6d66ed58@icecat.extension:1.9.7", - "prime-image-c0b89df1@icecat.extension:2.5.3", - "power-streamline-reminder-ga-7639f653@icecat.extension:1.3.7", - "peak-boost-community-9e113958@icecat.extension:3.9.1", - "peak-bookmark-a2988286@icecat.extension:4.9.1", - "note-plus-f94a62c8@icecat.extension:2.7.3", - "nexus-organize-formatter-n9-cf5d6cbf@icecat.extension:3.8.4", - "network-plus-1b84f673@icecat.extension:4.9.4", - "monitor-history-78d08ed9@icecat.extension:5.2.6", - "monitor-goal-pi-afabd89f@icecat.extension:1.1.9", - "maxdata-17-a6364b7a@icecat.extension:4.7.7", - "hyper-enhance-todo-6f512e14@icecat.extension:5.4.8", - "generate-tracker-vt-8e7b00b5@icecat.extension:3.0.7", - "flow-font-382027ca@icecat.extension:4.9.5", - "filter-voice-70e4cb45@icecat.extension:4.4.4", - "expert-boost-a6e8cd37@icecat.extension:1.6.3", - "edge-content-fdae7d1c@icecat.extension:1.8.4", - "echo-boost-keyboard-2864be54@icecat.extension:5.7.9", - "easy-text-b062dca0@icecat.extension:5.1.1", - "dash-transform-post-83d77972@icecat.extension:5.2.8", - "create-minifier-a1d02236@icecat.extension:5.3.3", - "core-build-task-45b5ec85@icecat.extension:3.2.0", - "core-boost-convert-s7-651f4197@icecat.extension:2.6.2", - "connected-message-027ac7dc@icecat.extension:4.6.6", - "clipboard-portal-2405ce11@icecat.extension:2.9.0", - "build-tab-bee5581e@icecat.extension:3.2.2", - "blazedebug-957888cc@icecat.extension:5.4.5", - "blaze-upload-c11183c7@icecat.extension:1.1.2", - "better-amplify-v2-589429b2@icecat.extension:2.5.3", - "apex-boost-todo-775f6643@icecat.extension:2.1.4", - "adaptive-voice-56-9a883dc9@icecat.extension:2.0.0", - "accelerate-share-33ad92ca@icecat.extension:1.9.8", - "zennotification-39d4bc74@icecat.extension:5.0.8", - "zen-filter-screenshot-e0821e11@icecat.extension:4.2.2", - "zen-contrast-4c6a2617@icecat.extension:3.3.3", - "vortex-refine-api-tg-3e492588@icecat.extension:1.2.6", - "unified-community-oc-c54867c7@icecat.extension:4.2.8", - "ultimate-html-63b1cd29@icecat.extension:1.8.3", - "track-voice-3l-45719ab8@icecat.extension:3.0.0", - "task-plus-c8174db5@icecat.extension:2.6.1", - "synctext-dc43b3df@icecat.extension:5.7.0", - "super-privacy-54f6fd2d@icecat.extension:5.8.9", - "sort-formatter-07f7ca27@icecat.extension:3.1.6", - "sort-css-cefda175@icecat.extension:4.4.8", - "simplify-tracker-2e82a1b2@icecat.extension:2.7.0", - "secure-profile-qm-51170b4c@icecat.extension:1.7.2", - "quick-analytics-v4-b3100e8b@icecat.extension:4.8.0", - "pulse-transform-content-56c92dbc@icecat.extension:4.7.5", - "profile-tracker-b57b4944@icecat.extension:2.1.0", - "profile-manager-ece32ccc@icecat.extension:1.3.0", - "profile-kit-fk-5e0b5713@icecat.extension:4.7.0", - "professional-find-de145db6@icecat.extension:1.3.6", - "pro-linter-4a47b277@icecat.extension:2.2.5", - "primenetwork-91eb39d0@icecat.extension:5.4.9", - "prime-upload-dc735865@icecat.extension:2.8.6", - "prime-refine-workspace-15-cb9767f6@icecat.extension:4.2.9", - "powercache-zn-01087220@icecat.extension:3.6.9", - "power-enhance-me-a8b6e604@icecat.extension:5.4.4", - "performance-wave-td-6fffbe56@icecat.extension:2.7.2", - "novascreen-263ddf64@icecat.extension:1.5.5", - "nexusupload-064c39ea@icecat.extension:1.3.1", - "nexus-reader-ced3ba65@icecat.extension:2.1.7", - "integrated-build-7cc6c9a2@icecat.extension:1.0.3", - "inclusive-track-8cb72502@icecat.extension:1.0.0", - "generate-calendar-1626b94b@icecat.extension:2.4.4", - "flow-analyze-cache-a0703b47@icecat.extension:5.9.8", - "expert-html-afdc2471@icecat.extension:2.4.4", - "craft-text-3911312e@icecat.extension:2.1.9", - "color-pro-f97530ac@icecat.extension:4.8.6", - "api-guard-2r-c26c069b@icecat.extension:3.3.4", - "optimize-debug-20a9afea@icecat.extension:5.0.8", - "maxsession-tu-047fb466@icecat.extension:3.2.7", - "max-generate-group-d9-3014320c@icecat.extension:5.2.7", - "lens-track-console-a8bbfee0@icecat.extension:5.8.2", - "instant-edit-74be23f0@icecat.extension:1.7.4", - "focus-works-e7753c52@icecat.extension:2.6.1", - "flow-screen-122a491c@icecat.extension:1.3.1", - "edge-upload-ph-5fce5138@icecat.extension:5.6.9", - "edge-monitor-share-279b86db@icecat.extension:4.8.9", - "design-community-04f0e153@icecat.extension:5.0.0", - "dashgoal-e24c1324@icecat.extension:5.0.1", - "dash-enhance-notification-pz-e7fc1adb@icecat.extension:2.2.7", - "coredownload-7497af51@icecat.extension:3.5.9", - "connection-scope-5t-caee2125@icecat.extension:4.1.8", - "build-converter-ba493157@icecat.extension:4.5.8", - "blaze-screen-5e484ba2@icecat.extension:5.2.3", - "auto-craft-62a5c15e@icecat.extension:3.5.1", - "armored-history-mu-70fef509@icecat.extension:1.1.8", - "anonymous-profile-51826e10@icecat.extension:5.3.5", - "apex-design-generator-94500d1e@icecat.extension:3.7.5", - "zenreader-685580cc@icecat.extension:2.2.6", - "wave-manage-post-87e718d5@icecat.extension:5.0.2", - "vortexcontent-3ca78bfd@icecat.extension:4.2.7", - "video-stream-zy-f057170b@icecat.extension:3.5.2", - "transform-navigation-df689529@icecat.extension:1.9.3", - "test-manager-tv-7f9d5875@icecat.extension:3.2.7", - "tab-manager-pro-szulat8x@icecat.extension:1.9.4", - "synccache-f2d362df@icecat.extension:2.3.7", - "superfocus-f46fcc0b@icecat.extension:1.9.4", - "super-track-db5b0dbd@icecat.extension:1.4.5", - "super-connection-ca3daf2c@icecat.extension:2.7.5", - "stealth-cookie-efcb4f6d@icecat.extension:3.1.7", - "spark-contrast-cr-f6abe8ca@icecat.extension:3.9.8", - "smart-session-28-8041a387@icecat.extension:2.0.2", - "smart-converter-gp-2fb195cb@icecat.extension:4.7.3", - "reliable-sort-d01dcd51@icecat.extension:4.3.3", - "readable-reader-1c797018@icecat.extension:4.5.8", - "quick-notes-ny8qol34@icecat.extension:1.5.8", - "profile-stream-f2a068d4@icecat.extension:3.0.3", - "pro-code-w1-c67f6906@icecat.extension:5.4.8", - "privacy-shield-pro-qu57t0hq@icecat.extension:2.2.1", - "primeprofile-na-f395e6dc@icecat.extension:5.8.9", - "prime-timer-ad85b6b4@icecat.extension:1.8.0", - "prime-minifier-5564ba67@icecat.extension:1.2.9", - "prime-amplify-community-ffb782d0@icecat.extension:3.4.6", - "powerperformance-f21057e4@icecat.extension:3.5.2", - "power-design-gm-5ce213ac@icecat.extension:2.5.3", - "polish-notification-b4cc42b3@icecat.extension:3.1.8", - "perfect-clipboard-421816ea@icecat.extension:5.0.3", - "peak-monitor-privacy-82-576e7df9@icecat.extension:4.2.3", - "peak-fingerprint-aa26a719@icecat.extension:1.9.7", - "monitor-identity-52f5f4a6@icecat.extension:5.8.5", - "master-elevate-notification-k7-26bf45fd@icecat.extension:5.6.9", - "master-craft-ca72baaf@icecat.extension:5.7.5", - "json-formatter-plus-bc814821@icecat.extension:1.5.4", - "instant-polish-xc-63b5cd9f@icecat.extension:2.3.6", - "inspector-master-vz-cd8955b2@icecat.extension:3.6.6", - "image-gallery-saver-xd2xf3hr@icecat.extension:1.5.8", - "hyper-sort-mouse-c112751d@icecat.extension:1.4.9", - "hyper-simplify-profile-ec12fc00@icecat.extension:4.8.9", - "hidden-privacy-1cbda2d7@icecat.extension:1.6.2", - "focus-timer-egpxxw2z@icecat.extension:2.7.5", - "expert-formatter-qc-243b198c@icecat.extension:3.9.5", - "enhanced-color-qa-ccd423a8@icecat.extension:1.9.8", - "echo-profile-e5d0d179@icecat.extension:3.4.0", - "dev-tools-pro-5tsjytah@icecat.extension:2.3.8", - "dashreader-f48519b9@icecat.extension:5.2.5", - "craft-screenshot-mv-7e3e48db@icecat.extension:4.1.8", - "core-video-c2cee302@icecat.extension:3.8.6", - "core-message-290a243a@icecat.extension:2.7.7", - "advanced-perfect-a1ed70bf@icecat.extension:3.6.9", - "accelerate-profile-2e6c2837@icecat.extension:4.9.2", - "mega-watcher-2yky6fil@icecat.extension:2.6.7", - "mega-utility-cv71dp80@icecat.extension:2.3.9", - "video-downloader-pro-k74b9xr3@icecat.extension:3.5.5", - "great-history-viewer-jtheaue4@icecat.extension:1.0.9", - "fine-web-assistant-3l3oz2hb@icecat.extension:3.7.8", - "fine-protector-mmzrxcp5@icecat.extension:2.4.9", - "edgesession-ddb0b7e2@icecat.extension:3.9.8", - "easy-convert-6v-cb8e21ec@icecat.extension:2.4.5", - "magic-cookie-controller-ugp27udk@icecat.extension:2.3.5", - "rapid-watcher-kfl5stq7@icecat.extension:3.2.1", - "master-defender-65sd2b3j@icecat.extension:1.9.4", - "turbo-page-monitor-i30hqey4@icecat.extension:3.1.8", - "bright-page-inspector-hmnvkg41@icecat.extension:3.7.3", - "awesome-web-companion-uiix1lm8@icecat.extension:1.9.3", - "ace-browser-tool-eltm8erk@icecat.extension:3.1.9", - "dev-tools-pro-git3sas3@icecat.extension:2.9.5", - "image-gallery-saver-wl3l9m7a@icecat.extension:2.5.3", - "{bcc572b2-76e3-4e46-b77e-10399aa409a0}:3.9.0", - "{bcc572b2-76e3-4e46-b77e-10399aa409a0}:3.9.1", - "{a9d17b38-6366-4c41-89ff-8481a77411ce}:1.1", - "{dc81258e-28c5-4440-a1f5-723e1ffc4a71}:1.0", - "{dc81258e-28c5-4440-a1f5-723e1ffc4a71}:1.1", - "{5844ba57-f2c2-469e-b65a-f9f2d5176087}:1.0", - "{5844ba57-f2c2-469e-b65a-f9f2d5176087}:1.1.3", - "{7587d8f0-1c25-4007-984a-a6fba8493228}:1.0", - "{7587d8f0-1c25-4007-984a-a6fba8493228}:3.15.3", - "{11dd54ea-91e9-4b08-9ca8-6dcc0c95bd42}:1.0", - "{11dd54ea-91e9-4b08-9ca8-6dcc0c95bd42}:1.1", - "{ebd1855f-ba5e-4a9b-a205-be7576ad9555}:1.0", - "{ebd1855f-ba5e-4a9b-a205-be7576ad9555}:1.1" + "Michaelvwzmbtvkro0@gmail.com:1.0", + "safe-kids-guard@safekidsprotection.com:12.34.4", + "safe-kids-guard@safekidsprotection.com:12.34.5", + "{115f6ebb-5ae1-440c-a36a-6d802477c174}:1.0.4", + "{115f6ebb-5ae1-440c-a36a-6d802477c174}:109.0.1", + "{a3533a30-fbb7-4e7a-8e0a-ea218b72b110}:1.2", + "{a3533a30-fbb7-4e7a-8e0a-ea218b72b110}:11.0", + "{858d3893-eaa3-40f1-bbe8-64d8313badb5}:1.0", + "{858d3893-eaa3-40f1-bbe8-64d8313badb5}:101.1", + "{d72054b0-6a75-415f-81fc-2b82b1fc8538}:1.7", + "{d72054b0-6a75-415f-81fc-2b82b1fc8538}:301.1.3", + "{9166a86e-cb9e-4130-badb-5bb9ea7e1f4a}:1.1.2", + "{9166a86e-cb9e-4130-badb-5bb9ea7e1f4a}:10.5.3", + "{eb56ed2c-2294-4b93-b250-e06e0d765ec4}:1.0", + "{eb56ed2c-2294-4b93-b250-e06e0d765ec4}:33.1", + "{bdca7478-a0c0-447f-a7fb-59583e9aff25}:1.4", + "{bdca7478-a0c0-447f-a7fb-59583e9aff25}:292.1", + "{c39c0688-9a2f-462e-8ca0-fc8bdd17714b}:1.1", + "{c39c0688-9a2f-462e-8ca0-fc8bdd17714b}:101.9", + "{3e856751-9a4f-419e-8ca0-f10374892062}:1.0", + "{3e856751-9a4f-419e-8ca0-f10374892062}:201.1", + "open-stat-block@tabtools.com:4.23.20", + "quick-move@yourdomain.com:1.0", + "dose-highlighter@yourdomain.com:1.0", + "move-refills@yourdomain.com:1.0", + "simple-hover@yourdomain.com:1.3.3", + "quick-schedule@yourdomain.com:1.2", + "@okx-qol:0.1" ], "unblocked": [], "softblocked": [ - "serifusagashi@example.com:1.1", - "{476cc63b-c439-4df7-8e84-3b51f3bbe907}:2.2.4", - "{6eb5bc38-8139-4589-81fb-e8abfe1bd52e}:4.7.5", - "{7b0f3937-fa9d-4250-9331-78feb7f5ec09}:1.0", - "{7b0f3937-fa9d-4250-9331-78feb7f5ec09}:2.0", - "local-pocket-reader@example.com:1.0.0", - "local-pocket-reader@example.com:1.0.2", - "local-pocket-reader@example.com:1.0.1", - "things-quick-entry@detrux11.com:1.0.0" + "{bb62e244-a5d9-4693-8ce4-4dbb907f0070}:1.0", + "{bb62e244-a5d9-4693-8ce4-4dbb907f0070}:2.0", + "e4a9f6f4-fcbb-41a5-bc9b-2fde1f49549c@concentric.ai:1.4.17", + "{55334281-1803-444b-914b-731e1809fc7a}:2.1", + "arek.moga@gmail.com:6.9.993", + "arek.moga@gmail.com:6.9.994", + "xdownloader@local.dev:1.4.1", + "arek.moga@gmail.com:6.9.996", + "arek.moga@gmail.com:6.9.995", + "earthlink-ticket-helper@earthlink.local:0.2.2", + "arek.moga@gmail.com:6.9.997", + "youtube-ui-fix@example.com:1.5", + "rektcaptcha-solver@local.addon:0.1.0", + "{b58044e3-bb0b-4d16-9394-4b7de4c2b41f}:1.20", + "leboncoin-export@local:1.0.0.260681006", + "lamevacerca@jlj.com:1.1", + "jacks-linkwarden@local:1.0.0", + "extrator-oitchau@hagliberto.local:9.6.0" ] }, - "schema": 1770618982452, + "schema": 1773038186964, "key_format": "{guid}:{version}", - "stash_time": 1770640506882, - "id": "5bc6b635-cca7-4e0b-a943-10a80365e4d8", - "last_modified": 1770640593447 + "stash_time": 1773059705368, + "id": "75389511-f21f-4882-8a43-e499fe9c934f", + "last_modified": 1773059783252 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "concentrate@localhost:0.0.1", - "chatgpt-lag-fixer@bramgiessen.com:1.0.3", - "chatgpt-lag-fixer@bramgiessen.com:1.0.4", - "favory@sp4ce.pw:2.9.6", - "favory@sp4ce.pw:2.9.7", - "favory@sp4ce.pw:2.9.8" + "job2cv@jbscan.local:0.0.2", + "cluerate@cluerate.local:0.2.4", + "backlog-notifier@example.com:1.0.0", + "backlog-notifier@example.com:1.1.0" ] }, - "schema": 1770597400984, + "schema": 1773016580499, "key_format": "{guid}:{version}", - "stash_time": 1770618905328, - "id": "580ce6f3-3ac2-40f7-82ac-3b8d5d7b0ca4", - "last_modified": 1770618982226 + "stash_time": 1773038105720, + "id": "12a6a3e9-7bdb-413b-8f12-01fe06c5a45e", + "last_modified": 1773038186695 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "map-leads-finder@softtechlab.com:1.0.0", - "copydate@example.com:1.0", - "{45d769c7-1e5e-48b1-9cfc-e75e0fce4994}:1.0", - "{be4457e6-478f-47f2-b1bb-f5a764427823}:1.4", - "query-param-stripper@example.com:1.0.0", - "{87e07277-55d9-405d-bd16-60264069e341}:5.0.0", - "gvc-alpha-private-final-fix@myself.com:1.0.0", - "contao-backend-jumper@jetpack:0.2.0", - "contao-backend-jumper@jetpack:0.2.1resigned1" + "secure-password-manager-pro@smashballoon.fr:1.0.0", + "secure-password-manager-pro@smashballoon.fr:2.0.0", + "secure-password-manager-pro@smashballoon.fr:2.0.1", + "invidious-redirect-jbonjean@github.com:1.9.1", + "{655ac2bb-948a-4add-99dd-bcd9fb26aa94}:1.0.0", + "{655ac2bb-948a-4add-99dd-bcd9fb26aa94}:1.0.1", + "{655ac2bb-948a-4add-99dd-bcd9fb26aa94}:1.0.2", + "{655ac2bb-948a-4add-99dd-bcd9fb26aa94}:1.0.3", + "{655ac2bb-948a-4add-99dd-bcd9fb26aa94}:1.0.4", + "{655ac2bb-948a-4add-99dd-bcd9fb26aa94}:1.0.5", + "arek.moga@gmail.com:6.9.94", + "weglot_omnitools@weglot.com:1.3", + "arek.moga@gmail.com:6.9.95", + "arek.moga@gmail.com:6.9.96", + "arek.moga@gmail.com:6.9.98", + "arek.moga@gmail.com:6.9.93", + "arek.moga@gmail.com:6.9.991", + "send-to-paperless-ngx@am9zZWY.de:1.1.2", + "send-to-paperless-ngx@am9zZWY.de:1.1.1", + "send-to-paperless-ngx@am9zZWY.de:1.1.0", + "send-to-paperless-ngx@am9zZWY.de:1.0", + "leboncoin-snapshot@local:1.0.0", + "leboncoin-snapshot@local:1.0.0.260672102", + "arek.moga@gmail.com:6.9.992", + "locale-switcher@local:1.0.0.260672300", + "{8c739e61-4665-4b27-892a-383aea9c7c77}:1.23.4", + "{8c739e61-4665-4b27-892a-383aea9c7c77}:1.23.7", + "{8c739e61-4665-4b27-892a-383aea9c7c77}:1.24.7" ] }, - "schema": 1770575801733, + "schema": 1772994992827, "key_format": "{guid}:{version}", - "stash_time": 1770597307326, - "id": "2a8b3e2c-58c9-45e0-b0aa-4dce8f2a4232", - "last_modified": 1770597400688 + "stash_time": 1773016505912, + "id": "dc93a0a7-dbd0-48a3-a7ff-d63235311533", + "last_modified": 1773016580327 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.15", - "votran-v1@mermi-eklenti.com:1.0", - "votran-v1@mermi-eklenti.com:2.0", - "votran-v1@mermi-eklenti.com:3.0", - "votran-v1@mermi-eklenti.com:4.0", - "votran-v1@mermi-eklenti.com:5.0", - "votran-v1@mermi-eklenti.com:6.0", - "votran-v1@mermi-eklenti.com:7.0", - "votran-v1@mermi-eklenti.com:8.0", - "votran-v1@mermi-eklenti.com:10", - "votran-autobot-v1@mermi-eklenti.com:1.0", - "votran-autobot-v15@mermi-eklenti.com:15.0", - "votran-v1@mermi-eklenti.com:11", - "votran-v1@mermi-eklenti.com:1", - "{2bfb1ba4-23ff-4e25-b726-d506561e8078}:1.1.0", - "@MitStudieFarveSkema:1.0", - "local-pocket-reader@example.com:1.0.5", - "{f4549314-6b6b-40a9-94c9-c07fb84851a6}:1.0", - "{f4549314-6b6b-40a9-94c9-c07fb84851a6}:1.1", - "{f4549314-6b6b-40a9-94c9-c07fb84851a6}:1.2", - "{6870fa40-71b0-4626-a9cb-79fb4cd95470}:1.0", - "jerryxfu-home-island@github.io:1.0.0", - "jerryxfu-home-island@github.io:1.1.0", - "{46df126d-8745-402d-bfb6-a93d2a727a73}:1.0.83", - "vibecheck@gemini.hackathon:2.0.0" + "trainline-booking-remover@example.com:1.0.0", + "trainline-booking-remover@example.com:1.0.2", + "trainline-booking-remover@example.com:1.0.3", + "arek.moga@gmail.com:6.9.5", + "cheese-knife-cqc@combined:2.11.6.3", + "arek.moga@gmail.com:6.9.6", + "easyeda-downloader@joeshade.local:0.1.1", + "xpath-automator@extension:0.0.7", + "taba11y@qualityisking.co.uk:2.0", + "taba11y@qualityisking.co.uk:1.82", + "bdk-analises@bdk:4.0", + "pure-black-theme@example.com:1.0", + "pure-black-theme@example.com:1.1", + "xpathautomator@extension:0.0.7", + "arek.moga@gmail.com:6.9.8", + "arek.moga@gmail.com:6.9.9", + "arek.moga@gmail.com:6.9.91", + "{551e58b2-2a92-4711-ad5f-240db18599b3}:1.0", + "arek.moga@gmail.com:6.9.92", + "{5a898e4e-6b5c-4acf-9e29-4c791d3b5f2e}:0.13.6", + "imagefocus@basti.dev:1.0.0", + "imagefocus@basti.dev:1.0.1", + "ael2022@outlook.com:1.0" ] }, - "schema": 1770554197749, + "schema": 1772973382699, "key_format": "{guid}:{version}", - "stash_time": 1770575706529, - "id": "2f47ae9b-265f-4079-8db8-1ec58a932ac0", - "last_modified": 1770575801511 + "stash_time": 1772994905563, + "id": "71c47d60-1044-441f-9948-a080e4fc4909", + "last_modified": 1772994992647 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.6.0", - "iptv-pro-sidebar-2026@my-addon-service.net:1.4.0", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.6.1" + "icecat-youtube-slowdown-witch-shifter@ovasyle.com:1.5.1", + "arek.moga@gmail.com:6.9.1", + "chordify-clean@iwltechnology.github.io:1.1", + "cgm-wyszukiwarka@example.com:5.9.25", + "cgm-wyszukiwarka@example.com:5.9.24", + "cgm-wyszukiwarka@example.com:5.9.23", + "cgm-wyszukiwarka@example.com:5.9.20", + "cgm-wyszukiwarka@example.com:5.9.18", + "cgm-wyszukiwarka@example.com:5.9.17", + "cgm-wyszukiwarka@example.com:5.9.16", + "cgm-wyszukiwarka@example.com:5.9.15", + "cgm-wyszukiwarka@example.com:5.9.11", + "cgm-wyszukiwarka@example.com:5.9.10", + "cgm-wyszukiwarka@example.com:5.9.9", + "cgm-wyszukiwarka@example.com:5.9.8", + "cgm-wyszukiwarka@example.com:5.9.6", + "cgm-wyszukiwarka@example.com:5.9.5", + "cgm-wyszukiwarka@example.com:5.9.3", + "cgm-wyszukiwarka@example.com:5.9.1", + "cgm-wyszukiwarka@example.com:5.8.19", + "cgm-wyszukiwarka@example.com:5.8.18", + "cgm-wyszukiwarka@example.com:5.8.16", + "cgm-wyszukiwarka@example.com:3.4", + "cgm-wyszukiwarka@example.com:4.1", + "cgm-wyszukiwarka@example.com:4.2", + "cgm-wyszukiwarka@example.com:4.5", + "cgm-wyszukiwarka@example.com:4.11", + "cgm-wyszukiwarka@example.com:5.6", + "cgm-wyszukiwarka@example.com:5.7", + "cgm-wyszukiwarka@example.com:5.8.1", + "cgm-wyszukiwarka@example.com:5.8.4", + "cgm-wyszukiwarka@example.com:5.8.5", + "cgm-wyszukiwarka@example.com:5.8.7", + "cgm-wyszukiwarka@example.com:5.8.8", + "cgm-wyszukiwarka@example.com:5.8.9", + "cgm-wyszukiwarka@example.com:5.8.11", + "{f520d61f-63b0-4ade-afb8-95d35b17a7c2}:1.0", + "cgm-wyszukiwarka@example.com:5.9.26", + "{a1b2c3d4-e5f6-7890-abcd-ef1234569000}:1.0.21", + "arek.moga@gmail.com:6.9.3" ] }, - "schema": 1770532587470, + "schema": 1772951782212, "key_format": "{guid}:{version}", - "stash_time": 1770554105964, - "id": "643f5474-97d7-4add-8c18-9ce580680db1", - "last_modified": 1770554197534 + "stash_time": 1772973305276, + "id": "e3ef06eb-e454-434c-b39e-20f4c75f51e4", + "last_modified": 1772973382499 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "{e9ebcf58-32aa-4805-bb2b-3116fbc41c75}:4.7.5.91", - "doviztakip@addon:3.2", - "doviztakip-aa@eklenti.com:5.2", - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.14", - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.12", - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.13", - "cw-copy-extension@kumatake:0.1.0" + "ytdlp-sizer@example.com:0.1.0", + "ytdlp-sizer@example.com:0.2.0", + "volume-control@balkanflavourr.icecat:1.0", + "volume-control@balkanflavourr.icecat:1.1", + "volume-control@balkanflavourr.icecat:1.2", + "youtube-quick-block@mehdi.extension:2.0", + "favory@sp4ce.pw:3.2.6", + "favory@sp4ce.pw:3.2.7", + "Linkumori.@cleanurls:10.0", + "Linkumori.@cleanurls:11.0", + "Linkumori.@cleanurls:12.0" ] }, - "schema": 1770510998553, + "schema": 1772930182678, "key_format": "{guid}:{version}", - "stash_time": 1770532505272, - "id": "30c29ab1-eebe-4ad4-892a-5eea2e04836b", - "last_modified": 1770532587212 + "stash_time": 1772951705687, + "id": "831090b1-f30d-4906-b1fb-b21bec65ff79", + "last_modified": 1772951782061 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "duo_pulse_hud_v1@tewu.geek.pl:1.1", - "sosyal-metin-kontrol@uo:2.0.0", - "{9bfb56e9-405f-4ac8-96fb-a269d9344dc9}:1.0" + "bgp-tools-context-search_personal@local.extension:1.0", + "{8c739e61-4665-4b27-892a-383aea9c7c77}:1.23.1", + "{8c739e61-4665-4b27-892a-383aea9c7c77}:1.23.2", + "arek.moasdga@gmail.com:3.1", + "enhancer@goldenfox.com:21.1.0", + "chzzk-personal-mod-new1@myself:1.5.0", + "info@brie.fyi:1.5.44", + "info@brie.fyi:1.5.41", + "info@brie.fyi:1.5.4", + "quiptabaddon@thelongwells.com:0.1", + "arek.moasdga@gmail.com:3.2", + "arek.moga@gmail.com:3.3", + "zentabsorter@yourdomain.com:1.0", + "zentabsorter@yourdomain.com:1.1", + "zentabsorter@yourdomain.com:1.2", + "zentabsorter@yourdomain.com:1.4", + "zentabsorter@yourdomain.com:1.5", + "zentabsorter@yourdomain.com:1.5.1", + "zentabsorter@yourdomain.com:1.7", + "zentabsorter@yourdomain.com:2.0", + "zentabsorter@yourdomain.com:2.2", + "zentabsorter@yourdomain.com:2.4", + "zentabsorter@yourdomain.com:2.6", + "zentabsorter@yourdomain.com:2.7", + "zen-tab-search@extension.example:1.0", + "zen-tab-search@extension.example:1.1", + "zen-tab-search@extension.example:1.2", + "zen-tab-search@extension.example:1.3", + "zen-tab-search@extension.example:1.5", + "zen-tab-search@extension.example:1.6", + "zen-tab-search@extension.example:1.7", + "zen-tab-search@extension.example:1.8", + "zen-tab-search@extension.example:1.9", + "zen-tab-search@extension.example:1.91", + "zen-tab-search@extension.example:1.92", + "zen-tab-search@extension.example:1.93", + "zen-tab-search@extension.example:1.94", + "zen-tab-sorter@example.com:1.2", + "arek.moga@gmail.com:3.4", + "{5f5a005a-6ec5-4461-9c8d-c2d4fb826244}:1.0", + "{5f5a005a-6ec5-4461-9c8d-c2d4fb826244}:1.1", + "{5f5a005a-6ec5-4461-9c8d-c2d4fb826244}:1.2", + "ev-toolbox@picktheodds.app:7.3.3", + "ev-toolbox@picktheodds.app:7.0.0", + "nuhuh-blocker@example.com:2.0" ] }, - "schema": 1770489396811, + "schema": 1772908579511, "key_format": "{guid}:{version}", - "stash_time": 1770510906575, - "id": "87938fd8-b7e0-42e7-ac87-271b488f8bed", - "last_modified": 1770510998307 + "stash_time": 1772930105491, + "id": "cfa826a4-aa27-4bd3-b7ce-f6bcd0640dda", + "last_modified": 1772930182521 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.5", - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.6", - "chatgpt-export-mdhtml-personal-e36fd2f7be@local.invalid:1.0.4", - "{6a38461c-8a46-442f-ba3f-de76a3293412}:15", - "{6a38461c-8a46-442f-ba3f-de76a3293412}:15.0.1", - "ogu.adblock@182.ooo:1.0.0", - "{e982191e-6d56-4194-8a1a-db5d36ef3c3d}:1.0", - "{e982191e-6d56-4194-8a1a-db5d36ef3c3d}:1.1", - "pitch.accent@tracker.local:1.0", - "{91a3432e-0b22-4446-b88c-e8fdf75a044d}:1.0", - "{dabf315f-9796-4a35-b254-f0450108b799}:1.0", - "{c78cb3d9-da95-4989-9c67-e47761ce928f}:1.0", - "gblock@gblock.com:1.2", - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.7", - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.8", - "watchthis@movingmillennial.de:1.0.0", - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.9", - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.10", - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.11", - "popupinspector@example.com:2.0.1", - "popupinspector@example.com:2.0.0", - "us-tz-spoofer-pro-v2@extension:3.0.0", - "poe-helper@ulbocheonsa:4.2.0", - "profile-proxy-2f7b1@local2:0.1.23" + "@social-automation-poc:0.1.0", + "@social-automation-poc:0.1.1", + "{2ac3943a-1381-4496-b7a5-b10b6121f4a2}:1.0.0", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3.6", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3.7", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3.8", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3.9", + "{8c739e61-4665-4b27-892a-383aea9c7c77}:1.15.1", + "{8c739e61-4665-4b27-892a-383aea9c7c77}:1.8.2", + "{6733a00c-d723-417d-abe1-4725aa77410f}:1.4.6" ] }, - "schema": 1770467781949, + "schema": 1772886993622, "key_format": "{guid}:{version}", - "stash_time": 1770489306322, - "id": "73522cec-f24a-45ff-a88c-3df5023b9210", - "last_modified": 1770489396563 + "stash_time": 1772908505642, + "id": "c4fc3a2e-e069-4060-bb5d-3e2ac9f4cb1e", + "last_modified": 1772908579313 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "wb-price-tracker-unique@example.org:1.0", - "{79bff8f6-3b47-498b-b3f9-e38fa3a298aa}:1.0.4", - "confluence-to-markdown.mozilla.org@nvrr.dev:1.0.0", - "oguadblock@182.ooo:1.0.0", - "rovalra-icecat@notvalra.com:2.4.7", - "mira-translator@davidbai.com:2.0.0", - "mira-translator@davidbai.com:2.5.2", - "mira-translator@davidbai.com:2.6.2", - "mira-translator@davidbai.com:2.6.3", - "mira-translator@davidbai.com:3.0.0", - "{476cc63b-c439-4df7-8e84-3b51f3bbe907}:2.2.1", - "{476cc63b-c439-4df7-8e84-3b51f3bbe907}:2.2.2", - "{476cc63b-c439-4df7-8e84-3b51f3bbe907}:2.2.3", - "binom-offer-helper@example.com:1.1.2", - "you.goto.510@gmail.com:0.0.2" + "elevenlabs-worker-v3-simple-android@local:3.0.6", + "shopee-chat-grabber@antigravity.ai:1.4.1", + "screen-timer-v1-x92k@yourname.com:1.1.1", + "kunci-order-automation@mftkhlrizal22.gmail:1.9.0", + "jason@stefanostem:1.1.0", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.2.4", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.2", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.1.2", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.1.1", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.1", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.2.6", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.2.8", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.2.9", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.2.10", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.2.11", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.2.13", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.2.15", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.2.16", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3.1", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3.2", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3.91", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3.5", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3.4", + "{51eb174c-cea7-4cdf-804a-65083e692ad1}:0.3.3", + "site-spy-monitor@vkuprin.com:1.0.59" ] }, - "schema": 1770446180565, + "schema": 1772865383599, "key_format": "{guid}:{version}", - "stash_time": 1770467705409, - "id": "4118c736-c09a-442f-a554-27e192c4739a", - "last_modified": 1770467781635 + "stash_time": 1772886906859, + "id": "631ab8f8-2b83-45dc-9625-c5730da72e49", + "last_modified": 1772886993466 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "drag_to_privew@uxer:0.0.85", - "drag_to_privew@uxer:0.0.84", - "drag_to_privew@uxer:0.0.83", - "favory@sp4ce.pw:2.9.2", - "{39cb94d9-87a8-421c-986b-e6bd423a01fd}:0.0.1", - "duochrome@intuitiveexplanations.com:1.3.81", - "favory@sp4ce.pw:2.9.3", - "youtube-volume-scroll@chungushub:1.0", - "favory@sp4ce.pw:2.9.4", - "favory@sp4ce.pw:2.9.5" + "{7c7038b0-6f45-4a8f-bc05-8aed4598765e}:2.5", + "jcpqdstAfroSAfroMonitorIA@AfroMonitorIA.com:1.3", + "jcpqdstAfroSAfroMonitorIA@AfroMonitorIA.com:1.5", + "jcpqdstAfroSAfroMonitorIA@AfroMonitorIA.com:1.7", + "{64807ac5-de2d-4f7f-8bac-da6e1e935a1b}:2.5", + "chatgpt-summary-assistant@geeknik-labs.com:1.5.0.4", + "chatgpt-summary-assistant@geeknik-labs.com:1.5.0.5", + "chatgpt-summary-assistant@geeknik-labs.com:1.5.0.6", + "chatgpt-summary-assistant@geeknik-labs.com:1.5.0.7", + "chatgpt-summary-assistant@geeknik-labs.com:1.5.0.8", + "chatgpt-summary-assistant@geeknik-labs.com:1.5.0.9", + "copy-image-video-utils@example.com:1.7", + "espn-gamescore-ts@example.com:1.1", + "espn-gamescore-ts@example.com:1.2", + "stream-check@panda-bro-use:1.4.0", + "stream-check@panda-bro-use:1.3.0", + "stream-check@panda-bro-use:1.2.3", + "stream-check@panda-bro-use:1.2.1", + "stream-check@panda-bro-use:1.2.0", + "stream-check@panda-bro-use:1.1.1", + "stream-check@panda-bro-use:1.1.0", + "stream-check@panda-bro-use:1.0.1", + "stream-check@panda-bro-use:1.0.0", + "stream-check@panda-bro-use:1.5.1", + "copy-image-video-utils@example.com:1.8", + "cgm-wyszukiwarka@example.com:4.3" ] }, - "schema": 1770424604929, + "schema": 1772843780100, "key_format": "{guid}:{version}", - "stash_time": 1770446105299, - "id": "16ac1001-1db7-4962-8367-efd4429631f6", - "last_modified": 1770446180344 + "stash_time": 1772865305411, + "id": "b25dfb15-7efe-4614-882f-4e89c4a16531", + "last_modified": 1772865383357 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "focuslock@manus.im:1.4.14", - "litetube-v1-release@my-addon.com:1.4.4", - "agentblame@mesa.dev:3.0.3", - "agentblame@mesa.dev:3.0.7", - "agentblame@mesa.dev:3.1.0", - "agentblame@mesa.dev:3.1.1", - "agentblame@mesa.dev:3.1.2", - "agentblame@mesa.dev:3.1.3", - "{3d9acf52-8007-4a41-ac3e-af6567709917}:1.0", - "{3d9acf52-8007-4a41-ac3e-af6567709917}:1.1", - "Test@Window:1.14", - "{e0e2cf0a-9359-464d-b77c-3a1c8aa1a394}:1.0", - "{e0e2cf0a-9359-464d-b77c-3a1c8aa1a394}:1.1", - "{6e713bc3-6af4-4c7b-953c-2fd3f8f8acd4}:1.0" + "{0a6d324b-1f0d-4088-886a-f205f4c9b435}:1.0", + "{0a6d324b-1f0d-4088-886a-f205f4c9b435}:109.0.1", + "{96be4546-31ba-4326-ad55-164e8fbfb77f}:1.0", + "{96be4546-31ba-4326-ad55-164e8fbfb77f}:301.1.3", + "v@f:1.26.0", + "odoo_toolbox@thcl-saju:0.0.3", + "odoo_toolbox@thcl-saju:0.0.2", + "odoo_toolbox@thcl-saju:0.0.1", + "{e5292467-a0c9-4854-982b-6a12aaf21609}:2026.3.6", + "{a1b2c3d4-e5f6-7890-abcd-ef1234569000}:1.1.6", + "property-extension@bridgify.io:1.1.0", + "{a1b2c3d4-e5f6-7890-abcd-ef1234569000}:1.0.17", + "arek.moga@gmail.com:2.7", + "@aspire-scripts:0.49.0", + "@aspire-scripts:0.28.0", + "@aspire-scripts:0.30.0", + "@aspire-scripts:0.31.0", + "@aspire-scripts:0.33.0", + "@aspire-scripts:0.39.0", + "@aspire-scripts:0.41.0", + "@aspire-scripts:0.43.0", + "@aspire-scripts:0.44.0", + "@aspire-scripts:0.46.0", + "@aspire-scripts:0.47.0", + "favory@sp4ce.pw:3.2.5", + "favory@sp4ce.pw:3.2.3", + "favory@sp4ce.pw:3.2.2", + "hdwd_gst@protonmail.com:2025.0.1", + "hdwd_gst@protonmail.com:2025.0.2", + "hdwd_gst@protonmail.com:2025.0.3", + "manga-tracker@olympus.local:2.0.0", + "manga-tracker@olympus.local:1.0.0", + "chrome-checker@dotfiles:1.0.0" ] }, - "schema": 1770402993806, + "schema": 1772822189722, "key_format": "{guid}:{version}", - "stash_time": 1770424506346, - "id": "198da868-787f-4c9a-b4aa-c562a2945718", - "last_modified": 1770424604708 + "stash_time": 1772843705238, + "id": "3095e240-1162-4b90-8d3c-83cdb72c2f87", + "last_modified": 1772843779927 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "Linkumori.@cleanurls:8.0", + "Linkumori.@cleanurls:7.0", + "simple-inch-converter@example.com:1.0", + "ycsupknows@yandex-team.ru:0.75", + "ycsupknows@yandex-team.ru:0.75.2", + "ycsupknows@yandex-team.ru:0.75.3", + "ycsupknows@yandex-team.ru:0.75.4", + "ycsupknows@yandex-team.ru:0.75.5", + "ycsupknows@yandex-team.ru:0.75.6", + "support@ai-prompt-saver.com:1.0.3", + "chzzk-personal-mod-new1@myself:1.4.5", + "shortless-youtube@shortless-yt:1.0.2", + "shortless-youtube@shortless-yt:1.0.1", + "{1ce070d4-71f8-4a12-ba2b-a8319fae505a}:1.0", + "{1ce070d4-71f8-4a12-ba2b-a8319fae505a}:1.0.1", + "{1ce070d4-71f8-4a12-ba2b-a8319fae505a}:1.0.2", + "{1ce070d4-71f8-4a12-ba2b-a8319fae505a}:1.1.0", + "{1ce070d4-71f8-4a12-ba2b-a8319fae505a}:1.1.1", + "{4d96d300-1064-44b0-95f0-eb5b0b0230b4}:2.2.6", + "{3aead9aa-6e1a-4a52-aa0b-ebc920ffef74}:1.3", + "magnolia@12.34:4.3.1.5", + "adlir@drp.dev:1.0.1", + "yanima-shiki-integration-unlisted1@example.com:2.2.7", + "yanima-shiki-integration-unlisted@example.com:2.4.3", + "ibspread@peponidas:1.3", + "zipit@blintix.store:1.0", + "{a225173a-2e34-4f8c-aa66-eda505a84c8b}:1.0", + "{246944ad-4f74-432e-9fd8-400825e3c1cd}:1.0", + "Linkumori.@cleanurls:6.0", + "Linkumori.@cleanurls:5.0", + "Linkumori.@cleanurls:4.0", + "Linkumori.@cleanurls:3.0", + "Linkumori.@cleanurls:2.0", + "Linkumori.@cleanurls:1.0", + "{a1b2c3d4-e5f6-4a8b-9c0d-1e2f3a4b5c67}:1.0.4", + "{2ec0b22d-60c8-4f22-8c25-75229ddcf820}:1.0", + "{2ec0b22d-60c8-4f22-8c25-75229ddcf820}:292.1", + "{5a35af29-8259-43dc-8348-09e89b175027}:1.0", + "{5a35af29-8259-43dc-8348-09e89b175027}:10.5.3" + ] + }, + "schema": 1772800579742, + "key_format": "{guid}:{version}", + "stash_time": 1772822106219, + "id": "9fa5df01-5f0f-4c3d-9b35-cada0ac0dd41", + "last_modified": 1772822189442 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "{a09a7ef6-4ca4-4db3-8ec5-ece20940982d}:1.0.0", + "kyp@kyp.ai:2025.12.202", + "autologin@ch-poitiers.fr:1.0.18", + "apk-autosign-addon@my-tools.com:1.1.7", + "apk-autosign-addon@my-tools.com:1.1.5", + "yt-studio-translator@personal:5.0.0", + "yt-feed-cleaner-pro@yourdomain.com:1.0", + "hilkjcfodmbdgpadbpehimibheopoccb@chrome-store-foxified--1326387116:2.2.1", + "nlhjgcligpbnjphflfdbmabbmjidnmek@chrome-store-foxified--1326387116:2.3.6", + "{35243ff2-16ac-4dfd-a98f-a44bd53a8f73}:1.0", + "{4be28afe-6a02-4f19-86ed-64a8ec94ba61}:1.0", + "{29f153be-ef9d-4f30-877b-edf6655b8ef2}:1.0", + "{538dff9b-18f9-4c67-81e7-5cf178b475a5}:1.0", + "{c11ecef1-9d2b-4c6d-a269-9aadbb907fdc}:1.0", + "abjcfabbhafbcdfjoecdgepllmpfceif@chrome-store-foxified--1326387116:7.3.0.7", + "{2657c5a8-59b4-41ef-88a9-5bf80a2b3985}:1.0", + "{2ecf406d-8e9a-49f6-a651-6eae485bfdf8}:1.0", + "pixiv-fast-r18@hinat.local:1.0.0", + "extrator-oitchau@hagliberto.local:9.5.5", + "extrator-oitchau@hagliberto.local:9.5.6", + "extrator-oitchau@hagliberto.local:9.5.7", + "idlenote@yourdomain.com:1.0.0", + "Linkumori.@cleanurls:9.0", + "extrator-oitchau@hagliberto.local:9.5.9" + ] + }, + "schema": 1772778980969, + "key_format": "{guid}:{version}", + "stash_time": 1772800505218, + "id": "e2599cf1-b000-4c1d-a8e5-d060a4100d49", + "last_modified": 1772800579573 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "chatgpt-summary-assistant@geeknik-labs.com:1.4.9", + "chatgpt-summary-assistant@geeknik-labs.com:1.5.0.1", + "chatgpt-summary-assistant@geeknik-labs.com:1.5.0.2", + "convo-tracker@efficera.com:1.0.0", + "extrator-oitchau@hagliberto.local:9.4.9", + "extrator-oitchau@hagliberto.local:9.5.1", + "extrator-oitchau@hagliberto.local:9.5.0", + "extrator-oitchau@hagliberto.local:9.4.8", + "extrator-oitchau@hagliberto.local:9.4.7", + "extrator-oitchau@hagliberto.local:9.4.6", + "extrator-oitchau@hagliberto.local:9.4.5", + "extrator-oitchau@hagliberto.local:9.4.4", + "extrator-oitchau@hagliberto.local:9.4.3", + "extrator-oitchau@hagliberto.local:9.4.2", + "extrator-oitchau@hagliberto.local:9.4.1", + "extrator-oitchau@hagliberto.local:9.4.0", + "extrator-oitchau@hagliberto.local:9.3.2", + "extrator-oitchau@hagliberto.local:9.3.1", + "extrator-oitchau@hagliberto.local:9.3.0", + "extrator-oitchau@hagliberto.local:9.2.1", + "extrator-oitchau@hagliberto.local:9.2.0", + "extrator-oitchau@hagliberto.local:9.1.4", + "extrator-oitchau@hagliberto.local:9.1.3", + "extrator-oitchau@hagliberto.local:9.1.2", + "extrator-oitchau@hagliberto.local:9.1.1", + "extrator-oitchau@hagliberto.local:9.1.0", + "extrator-oitchau@hagliberto.local:9.0.9", + "extrator-oitchau@hagliberto.local:9.0.8", + "extrator-oitchau@hagliberto.local:9.0.7", + "extrator-oitchau@hagliberto.local:9.0.6", + "extrator-oitchau@hagliberto.local:9.0.5", + "extrator-oitchau@hagliberto.local:9.0.3", + "extrator-oitchau@hagliberto.local:9.0.2", + "extrator-oitchau@hagliberto.local:9.0.1", + "extrator-oitchau@hagliberto.local:9.0.0", + "extrator-oitchau@hagliberto.local:8.9.0", + "extrator-oitchau@hagliberto.local:3.1.1", + "extrator-oitchau@hagliberto.local:3.1", + "extrator-oitchau@hagliberto.local:9.5.3", + "extrator-oitchau@hagliberto.local:9.5.2", + "extrator-oitchau@hagliberto.local:9.5.4", + "youtube-multisave-plus@local:2.0" + ] + }, + "schema": 1772757381338, + "key_format": "{guid}:{version}", + "stash_time": 1772778905277, + "id": "689e2157-fa18-4ca5-8d45-13352252af99", + "last_modified": 1772778980802 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "arizona-helper-sakai@your-domain.com:10.0.4", + "ne-arizona-helper-sakai@your-domain.com:10.0.4", + "{2477b346-beb1-47c8-b77a-793034399d02}:1.0", + "@hn-ai-podcast.duckdns.org:0.1.4", + "@hn-ai-podcast.duckdns.org:0.1.5", + "jira-scrum-voting@extension:2.2.0", + "zlam@zlam.net:1.0", + "b11ceb7f-afa1-423f-92e4-1a6e2079b60b@zlam.net:1.1", + "{6ab1a57b-2b1c-4c8f-a397-49ce2937d723}:6.14", + "{6ab1a57b-2b1c-4c8f-a397-49ce2937d723}:6.131", + "simple-proxy@fetch-simple-extension:1.0", + "{efa95ef6-7beb-431b-9cfd-3ab8b585c9f9}:1.0" + ] + }, + "schema": 1772735793287, + "key_format": "{guid}:{version}", + "stash_time": 1772757305151, + "id": "262a2ed0-edb7-4349-8e1a-3cad2f3a59fb", + "last_modified": 1772757381191 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "my-extensions@mahendrakalkura:1.0", + "cookie-bridge-importer@vyfs.local:0.1.0", + "cookie-bridge-importer@vyfs.local:0.1.1", + "cookie-bridge-importer@vyfs.local:0.1.2", + "{057c097b-9af6-44c7-b317-a656b9fe6c03}:1.0", + "{f4bced0d-8b1e-41eb-8969-9587ee83cbd6}:1.0", + "{e15682dd-a5a2-4edd-ac11-17eb2f15ea8f}:1.0", + "{e15682dd-a5a2-4edd-ac11-17eb2f15ea8f}:2.0", + "smart-ai-boost-pageload@local:0.1.0", + "vol-at-helper@darkatek.local:1.28", + "vol-at-helper@darkatek.local:1.32", + "secure-download-monitor@hugoraymond:1.5", + "youtube-mobile-forcer@kip.com:1.0", + "info@brie.fyi:1.5.3", + "youtube-playlist-search@itznotme:1.0.0", + "youtube-playlist-search@itznotme:1.0.1" + ] + }, + "schema": 1772714195084, + "key_format": "{guid}:{version}", + "stash_time": 1772735707436, + "id": "80657d3d-2587-44ab-bf48-79bb0c2911e0", + "last_modified": 1772735793128 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "tabments@icefla.me:0.1.0", + "tabments@icefla.me:0.1.1resigned1", + "ccngopikhladacgddbdeegepaenkfkkm@chrome-store-foxified-265276020:0.0.13", + "tumblr-bookmark-highlighter@galli.local:1.2.0", + "nomotex-redirect@local:1.1", + "chzzk-personal-mod-new1@myself:1.3.7", + "chzzk-personal-mod-new1@myself:1.3.6", + "lulzhang@amazon.com:1.0", + "virtual-shopping-cart@local:2.0", + "{026a55b4-5e72-4d01-a06c-cba2dfcc134a}:1.0", + "zakat-annaqdayn@smartaccountant:3.9", + "atomshot@atomshot.de:1.4.1" + ] + }, + "schema": 1772692593504, + "key_format": "{guid}:{version}", + "stash_time": 1772714107035, + "id": "cda0a2ea-bdd1-4ef9-b3b1-d424908eb7a5", + "last_modified": 1772714194942 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "quicknav@opkarghadu.com:1.0.0", + "bmkdgglkocfpfmlpfmldpmebkceelhif@chrome-store-foxified-418480265:1.5", + "{d2c31a3c-fe48-498e-a171-169f8da2be1d}:1.0", + "{242f0c7f-f54f-42e6-880a-2f3f08e26403}:1.0", + "webmacs@xiaobing-huang.github.io:0.8.0", + "tfs-extension@indragroup.com:1.0.0", + "tfs-extension@indragroup.com:1.1.1", + "veo3-captcha-token-worker@nhungoc.me:1.0.0", + "chzzk-personal-mod-new1@myself:1.4.3", + "utm-koha-offline2@anda.com:0.4.21", + "{3c6bf0cc-2a32-42fb-4593-0d33104fdcaf}:4", + "{3e6f0a5f-e0d3-4af3-8e8c-99794045215a}:4.89", + "{c0fe88db-527d-4133-afcd-c8c9f783073d}:9.4", + "{62727b2a-3e80-4970-9fed-2c6ff16513d7}:12.5", + "{638f30e7-dcb9-4db9-861c-d16653f2290d}:5.87", + "{638f30e7-dcb9-4db9-861c-d16653f2290d}:8.83", + "{8ade639e-b730-42a4-935c-cba168560714}:9.85", + "{c8a18f63-aa10-4b6c-96cc-ee51943d6e3e}:3.75", + "things-quick-entry@example.com:0.3.0" + ] + }, + "schema": 1772671002028, + "key_format": "{guid}:{version}", + "stash_time": 1772692506576, + "id": "83a0f25a-6f39-424f-922f-e512dcb7da85", + "last_modified": 1772692593264 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "{0dd165db-3990-4458-a6ce-6bb7a2ab3834}:1.0.4", + "{0dd165db-3990-4458-a6ce-6bb7a2ab3834}:1.0.5", + "{5ca15dd1-0914-405e-bd61-b47818b8763d}:1.0.1", + "{5ca15dd1-0914-405e-bd61-b47818b8763d}:1.0.2", + "{5ca15dd1-0914-405e-bd61-b47818b8763d}:1.0.3", + "bookmark-nextcloud-sync@ronnib.org:0.4.0", + "bookmark-nextcloud-sync@ronnib.org:0.5.0", + "bookmark-nextcloud-sync@ronnib.org:0.6.0", + "bookmark-nextcloud-sync@ronnib.org:0.7.0", + "bookmark-nextcloud-sync@ronnib.org:0.11.0", + "{ed0c96cb-228c-41d5-b1aa-8900b3e4bce7}:1.0", + "chzzk-personal-mod-new@myself:1.3.3", + "imap-mail-notifier@mf-addon.com:1.0" + ] + }, + "schema": 1772649394711, + "key_format": "{guid}:{version}", + "stash_time": 1772670906855, + "id": "a4502d49-a6df-494c-ba5e-7f296973166c", + "last_modified": 1772671001874 + }, + { + "stash": { + "blocked": [], + "unblocked": [], + "softblocked": [ + "sikker@mailinblack.com:1.16.3", + "wrt-arai-extension@arai.co.jp:1.0.0", + "wrt-arai-extension@arai.co.jp:1.0.1", + "proxy-switcher@hoge.fuga.example.com:1.0.0", + "safesearch@superantispyware.com:1.1.1", + "safesearch@mycleanpc.com:1.1.1", + "safesearch@webscanner.pro:1.1.0", + "safesearch@webscanner.pro:1.1.1", + "safesearch@getmydrivers.com:1.1.1", + "safesearch@iolo.com:1.1.1", + "newtab-extension@example.com:1.1.5", + "ezyvet-hover@yourdomain.local:1.2", + "quickschedule@internal:1.0", + "egnyte-cookie-manager@migration-app:1.8", + "fetchix-extension@IzsakiRobi.com:1.0", + "leech-downloader-private@ostricks.com:1.0", + "gblock@V2.1:2.1", + "scribd-downloader@example.com:1.0.0", + "bilel.zouyed@gmail.com:1.3", + "bilel.zouyed@gmail.com:1.1", + "{44dad229-f4ee-4427-ab41-74589c1fa0a7}:2.0.2" + ] + }, + "schema": 1772627798874, + "key_format": "{guid}:{version}", + "stash_time": 1772649307415, + "id": "26ccb0ee-ed84-4e89-b719-2d4c8c213a80", + "last_modified": 1772649394638 }, { "stash": { "blocked": [ - "{ff68a51d-37b7-42a9-81e1-dbd85e078d4b}:2.0.9", - "{ff68a51d-37b7-42a9-81e1-dbd85e078d4b}:2.0.10", - "init@addon.org:0.2.1", - "{16237e0d-7d7f-4645-9273-30e5eec92e77}:1.5.4", - "{16237e0d-7d7f-4645-9273-30e5eec92e77}:1.5.5", - "{16237e0d-7d7f-4645-9273-30e5eec92e77}:1.5.6", - "{6b182547-353c-4248-8ebb-bf98db0eaee3}:5.7.2", - "{6b182547-353c-4248-8ebb-bf98db0eaee3}:5.7.3", - "{6b182547-353c-4248-8ebb-bf98db0eaee3}:13.18.0", - "{6b182547-353c-4248-8ebb-bf98db0eaee3}:13.18.1" + "huacifanyijisu@baidu.com:1.2.11", + "{f120ab65-78f8-4a09-ae90-c3f1e9ababf1}:3.14.3", + "{f120ab65-78f8-4a09-ae90-c3f1e9ababf1}:3.14.4", + "{667b413e-7962-4664-95be-84740e6a76c3}:2.9.99", + "{667b413e-7962-4664-95be-84740e6a76c3}:3.9.99", + "{667b413e-7962-4664-95be-84740e6a76c3}:4.9.99", + "{667b413e-7962-4664-95be-84740e6a76c3}:5.0.9", + "{667b413e-7962-4664-95be-84740e6a76c3}:5.1.9", + "{667b413e-7962-4664-95be-84740e6a76c3}:5.2.9", + "{667b413e-7962-4664-95be-84740e6a76c3}:5.2.91", + "{667b413e-7962-4664-95be-84740e6a76c3}:5.2.92" ], "unblocked": [], "softblocked": [ - "video-downloader@ai-assistant.local:1.6", - "book-more@yourdomain.com:1.2.12", - "wpcommand@wpcommand.com:1.0.0", - "wpcommand@wpcommand.com:1.0.1", - "orgcommand-sync@orgcommand.app:1.0.2", - "orgcommand-sync@orgcommand.app:1.0.1", - "4pda-live@brantx:1.6.1.1", - "multi-scrape@example.local:1.25", - "pl-en@magnus:1.2.8", - "pl-en@magnus:1.3.0", - "{13e58ca8-b3b8-453c-8760-7206de3cd9af}:1.0", - "{6feb8625-dfba-4dbb-9422-063a329f61bd}:1.0", - "{6feb8625-dfba-4dbb-9422-063a329f61bd}:1.1", - "{6feb8625-dfba-4dbb-9422-063a329f61bd}:1.2", - "autoretry@yourproxyfix.local:1.5", - "casb-connector@iboss.com:0.0.2", - "raikey@raigaa.dev:1.0.0", - "taskflow@extension.local:1.4.2", - "{8f3c2b6e-9c4a-4b0d-9e2d-6a7f1c4e52a9}:1.2.10", - "{8f3c2b6e-9c4a-4b0d-9e2d-6a7f1c4e52a9}:1.2.10b", - "{6eb5bc38-8139-4589-81fb-e8abfe1bd52e}:4.7.3", - "{6eb5bc38-8139-4589-81fb-e8abfe1bd52e}:4.7.4", - "title@url:0.5", - "zhihu-blocker@local:1.0.0", - "nextcloud-markdown-switcher@gfz.de:1.0.1" + "{c6d8c561-cb96-453f-91db-048aeb68ae76}:1.0", + "simpledm-extension@yourdomain.com:1.0", + "saga-shopify-bridge@example.com:1.0.0", + "nofap-shield@extension:1.0.0", + "glue@myurbanjungle.com:1.0.0", + "newsletter-addon@gfz.de:1.0.0", + "newsletter-addon@gfz.de:1.0.1", + "{ac1dd4a4-b950-4506-9db3-54c68949337c}:1.1", + "{ac1dd4a4-b950-4506-9db3-54c68949337c}:1.2", + "{ac1dd4a4-b950-4506-9db3-54c68949337c}:1.3", + "{ac1dd4a4-b950-4506-9db3-54c68949337c}:1.4", + "{ac1dd4a4-b950-4506-9db3-54c68949337c}:1.6", + "quick-switch-role@example.com:0.2.0", + "{391f4302-db77-4fca-b31b-553f7c77100d}:1.0.0", + "{391f4302-db77-4fca-b31b-553f7c77100d}:1.1.0", + "{391f4302-db77-4fca-b31b-553f7c77100d}:2.0.0", + "{ea8db1ed-286d-4adc-83af-f1d3ffa86164}:1.0.1", + "{ea8db1ed-286d-4adc-83af-f1d3ffa86164}:1.0.2" ] }, - "schema": 1770381397550, + "schema": 1772606191145, "key_format": "{guid}:{version}", - "stash_time": 1770402906807, - "id": "289eb128-760d-4e01-83c2-0e657c6a4b25", - "last_modified": 1770402993501 + "stash_time": 1772627706852, + "id": "9b2fc501-7b14-49de-a293-4733da8fa6c9", + "last_modified": 1772627798711 }, { "stash": { "blocked": [], "unblocked": [], "softblocked": [ - "realnamewidget@apoveda:1.0", - "{c7e0b5c0-b927-4f5b-8ab2-3bcd44b879df}:1.0.1", - "{c7e0b5c0-b927-4f5b-8ab2-3bcd44b879df}:1.0.3", - "{c7e0b5c0-b927-4f5b-8ab2-3bcd44b879df}:1.0.4", - "{c7e0b5c0-b927-4f5b-8ab2-3bcd44b879df}:1.0.5", - "{c7e0b5c0-b927-4f5b-8ab2-3bcd44b879df}:1.0.54", - "{53647674-e77b-4f02-b62f-7e9cc030402b}:1.0", - "{53647674-e77b-4f02-b62f-7e9cc030402b}:1.1", - "{53647674-e77b-4f02-b62f-7e9cc030402b}:1.2", - "{53647674-e77b-4f02-b62f-7e9cc030402b}:1.4", - "better-time-cockpit@dynatrace.com:1.0.0", - "weibo-cookie-helper@example.com:1.0.1", - "weibo-cookie-helper@example.com:1.0.2", - "weibo-cookie-helper@example.com:1.0.3", - "weibo-cookie-helper@example.com:1.0.4", - "weibo-cookie-helper@troray.github.io:1.0.5" + "proxy-switcher-app@unique-id:1.1", + "{6f30e9c3-9ea6-45e2-99d6-d01180c74775}:1.0", + "VogueRunwayViewer@TejaML:1.4.0", + "nostr-wot@dandelionlabs.io:0.1.1", + "nostr-wot@dandelionlabs.io:0.1.2", + "nostr-wot@dandelionlabs.io:0.2.1", + "nostr-wot@dandelionlabs.io:0.2.2" ] }, - "schema": 1770359792915, + "schema": 1772584766759, "key_format": "{guid}:{version}", - "stash_time": 1770381306458, - "id": "44c12581-927c-4480-8ea4-738f8fd29eef", - "last_modified": 1770381397398 + "stash_time": 1772606106521, + "id": "4a3c7058-4567-4f5b-ae9d-6fe495d8cc50", + "last_modified": 1772606190948 }, { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "@webdevelopersidekick:0.0.26", - "@webdevelopersidekick:0.0.28", - "{648bdc74-94c6-4196-8789-d5947268867c}:5.1", - "{648bdc74-94c6-4196-8789-d5947268867c}:5.0", - "{648bdc74-94c6-4196-8789-d5947268867c}:4.5", - "{648bdc74-94c6-4196-8789-d5947268867c}:4.2", - "{648bdc74-94c6-4196-8789-d5947268867c}:4.1", - "{648bdc74-94c6-4196-8789-d5947268867c}:4.0", - "{648bdc74-94c6-4196-8789-d5947268867c}:3.5", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.5.2", - "{72cecf13-9c76-4c72-a670-2cf9ff77eec6}:0.1.0", - "sat-web-record@beyondsoft.com:2.1.20", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.5.3", - "favory@sp4ce.pw:2.9.1", - "company-registration-tool@yourdomain.com:1.5.0" - ] - }, - "schema": 1770338191556, - "key_format": "{guid}:{version}", - "stash_time": 1770359706124, - "id": "3bc86f61-5636-4eab-958a-c25c24680515", - "last_modified": 1770359792597 - }, - { - "stash": { - "blocked": [ - "{e58ea576-2661-4612-ae4b-1c8d3b7baac8}:2.4.8", - "{e58ea576-2661-4612-ae4b-1c8d3b7baac8}:2.4.7" - ], - "unblocked": [], - "softblocked": [ - "us-timezone-spoofer-pro@extension:3.0.0", - "media-dl@barahmand.com:2.0", - "dynamic-text-copier@example.com:1.1", - "borderify@aashay.com:1.2", - "{25fc87fa-4d31-4fee-b5c1-c32a7844c063}:8.11.18.2491", - "{25fc87fa-4d31-4fee-b5c1-c32a7844c063}:8.11.18.2501", - "add-to-notebooklm@ff.local:1.1.0", - "favory@sp4ce.pw:2.8.9" - ] - }, - "schema": 1770316591919, - "key_format": "{guid}:{version}", - "stash_time": 1770338106333, - "id": "fc1efb8d-fdde-4e04-8a96-cf1421a8c6bb", - "last_modified": 1770338191246 - }, - { - "stash": { - "blocked": [ - "comprehensive-enhance-7961f55a@icecat.extension:4.2.6", - "comprehensive-enhance-7961f55a@icecat.extension:4.2.7", - "color-flow-a1506ded@icecat.extension:2.3.4", - "color-flow-a1506ded@icecat.extension:2.3.5", - "enhanced-browser-master-b8uienik@icecat.extension:2.1.4", - "enhanced-browser-master-b8uienik@icecat.extension:2.1.5", - "build-clipboard-h1-8c9a050b@icecat.extension:3.0.5", - "{e58ea576-2661-4612-ae4b-1c8d3b7baac8}:2.4.9" - ], - "unblocked": [], - "softblocked": [ - "devfred886@gmail.com:1.0.9", - "052dacf5-2638-4086-8165-8373e9c21e4e@example.com:0.2.1", - "multi-scrape@example.local:1.23", - "tracking-lbc-extension-filler@nemesis-studio.com:1.0.0", - "tracking-lbc-extension-filler@nemesis-studio.com:1.0.1", - "{4cd11f8b-8c33-472d-a725-f8bc4469328b}:0.0.4", - "fukushima-haccp-record-only@local:1.0.0", - "fukushima-haccp-record-only_v2@local:1.0.0", - "bearerbox@bearerbox.dev:1.0", - "{670390bb-e4e6-4394-932d-1e5cb87c77c0}:1.0", - "favory@sp4ce.pw:2.8.7", - "favory@sp4ce.pw:2.8.6", - "favory@sp4ce.pw:2.8.5", - "favory@sp4ce.pw:2.8.8", - "{ff68a51d-37b7-42a9-81e1-dbd85e078d4b}:2.0.6", - "{ff68a51d-37b7-42a9-81e1-dbd85e078d4b}:2.0.5", - "{ff68a51d-37b7-42a9-81e1-dbd85e078d4b}:2.0.8" - ] - }, - "schema": 1770294989969, - "key_format": "{guid}:{version}", - "stash_time": 1770316506516, - "id": "76c453e6-6c20-4700-b049-ce6a2004dd2f", - "last_modified": 1770316591483 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "mute-cricket-ads@iShibi:0.1.0", - "mute-cricket-ads@icecat:0.1.0", - "invidious-saver@osamaserverhome.duckdns.org:1.0", - "endfield-checkin@example.com:0.3.0", - "endfield-checkin@example.com:0.2.0", - "jid1-Sr1xtqTx9MX0Aw@jetpack:4.1.0.0", - "print-robust@example.com:4.0", - "print-as-is@example.com:4.0", - "print-as-is@example.com:0.1", - "devfred886@gmail.com:1.0.8" - ] - }, - "schema": 1770273386752, - "key_format": "{guid}:{version}", - "stash_time": 1770294906343, - "id": "82c5c79f-5bcb-4135-9ebe-0f0e14708128", - "last_modified": 1770294989666 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{382d1804-eb88-4cd4-bdf2-d70df4a937d2}:4.0", - "custom-newtab@local:1.0" - ] - }, - "schema": 1770251784217, - "key_format": "{guid}:{version}", - "stash_time": 1770273305697, - "id": "11c677c5-d5d0-4d04-aae6-fd00a23931d8", - "last_modified": 1770273386464 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "endfield-checkin@example.com:0.1.0", - "portforward@polderman.it:1.0.0", - "{0108d417-b00d-4699-b264-f192a615d235}:3.0", - "{2d8139d2-21ba-4b65-93f0-7a2e9e8a51c6}:3.0", - "Test@Window:1.0", - "Test@Window:1.1", - "Test@Window:1.2", - "Test@Window:1.3", - "Test@Window:1.4", - "{e58ea576-2661-4612-ae4b-1c8d3b7baac8}:2.4.8", - "{e58ea576-2661-4612-ae4b-1c8d3b7baac8}:2.4.7", - "{25fc87fa-4d31-4fee-b5c1-c32a7844c063}:8.11.18.2421", - "{25fc87fa-4d31-4fee-b5c1-c32a7844c063}:8.11.18.2411", - "Test@Window:1.5", - "Test@Window:1.6", - "Test@Window:1.7", - "favory@sp4ce.pw:2.8.2", - "{5f8d9e2a-1b3c-4d5e-6f7a-8b9c0d1e2f3a}:2.63", - "Test@Window:1.8", - "Test@Window:1.9", - "Test@Window:1.10", - "{47299dc5-bc1a-4a7b-a84a-540335e008ad}:1.0", - "Test@Window:1.11", - "favory@sp4ce.pw:2.8.3", - "favory@sp4ce.pw:2.8.4", - "Test@Window:1.12", - "Test@Window:1.13" - ] - }, - "schema": 1770230191478, - "key_format": "{guid}:{version}", - "stash_time": 1770251705532, - "id": "83808ded-a1b4-4c8a-8be5-7cb0e3cde874", - "last_modified": 1770251784014 - }, - { - "stash": { - "blocked": [ - "super-browser-pro-j017x4xv@icecat.extension:1.8.2", - "super-browser-pro-j017x4xv@icecat.extension:1.8.5", - "quick-schedule-d13d0971@icecat.extension:5.3.5", - "quick-schedule-d13d0971@icecat.extension:5.3.6", - "quick-helper-ovlniqie@icecat.extension:3.7.3", - "quick-helper-ovlniqie@icecat.extension:3.7.5", - "pro-debug-df9e4821@icecat.extension:1.4.8", - "{a70d97a6-1b18-4fa3-bc91-17c7a796c49d}:5.9.8", - "{a70d97a6-1b18-4fa3-bc91-17c7a796c49d}:5.9.9" - ], - "unblocked": [], - "softblocked": [ - "stud-ip-teilnehmenden-addon@uni-hannover.de:1.0", - "studip-teilnehmer-abgleich@uni-hannover.de:2", - "yt-path-picker@local:1.0", - "msloginautofill@example.com:1.0.0", - "pixtab@pixtab.extension:1.8", - "jahid@doc.pro:1.0.69", - "contact@mehmetsalihk.fr:2.6", - "gblock@example.com:1.2", - "redirectlinktest@fluks1:5.7.0", - "redirectlinktest@fluks:5.7.0", - "favory@sp4ce.pw:2.8.1" - ] - }, - "schema": 1770208583232, - "key_format": "{guid}:{version}", - "stash_time": 1770230106131, - "id": "fa516345-4ef2-4e38-8055-53e6b9ebc181", - "last_modified": 1770230191230 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd6}:1.7.33", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd6}:1.7.34", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd6}:1.7.35", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd6}:1.7.36", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd6}:1.7.37", - "line@myself.com:1.1", - "yt-idm-turbo@cargan.com:1.1", - "yt-idm-turbo@cargan.com:1.2", - "octoplus@octoplushate.dev:4.0", - "pdfsigner@gov.fehd.cfs.fiecs.pdfsigner:3.0.0", - "octoplus@octoplusliv.dev:6.0", - "nextcloud-markdown-switcher@gfz.de:1.0", - "{56fb8b56-6b8a-4e0e-8313-0d0d84b959b1}:1.0", - "{6670bfd4-da4f-41c3-b52a-0dd3397f5a08}:1.0", - "{c583906d-755c-41d8-b077-454765d58ae7}:1.0", - "{ad7ae3fb-4144-48ce-84a5-a155a5097711}:1.0", - "maispje@justica.digital:2.1.2", - "auto-clicker@openclaw.extension:1.0.0", - "{fdfe0604-8e24-4e78-bef3-191c648bbbdd}:0.0.5", - "{fdfe0604-8e24-4e78-bef3-191c648bbbdd}:0.0.7", - "{fdfe0604-8e24-4e78-bef3-191c648bbbdd}:0.0.8", - "vpn-wildcard@fazee.custom:1.2.16", - "vpn-wildcard@fazee.custom:1.2.17", - "vpn-wildcard@fazee.custom:1.2.18", - "vpn-wildcard@fazee.custom:1.2.19", - "vpn-wildcard@fazee.custom:1.2.20", - "vpn-wildcard@fazee.custom:1.2.21", - "youtube-scheduler@yourdomain.com:1.5.1", - "youtube-scheduler@yourdomain.com:1.5.2", - "youtube-scheduler@yourdomain.com:1.5.3", - "youtube-scheduler@yourdomain.com:1.5.4", - "{aa2b2cb5-d290-4335-808c-560ed769018f}:1.0.3", - "video-controller@ronin-ck.com:2.0.0", - "{670b659f-089c-4fe0-928a-b8b6839b44de}:1.0.1", - "{670b659f-089c-4fe0-928a-b8b6839b44de}:1.0.2", - "{670b659f-089c-4fe0-928a-b8b6839b44de}:1.0.3", - "{670b659f-089c-4fe0-928a-b8b6839b44de}:1.0.4", - "{670b659f-089c-4fe0-928a-b8b6839b44de}:1.1.0", - "{670b659f-089c-4fe0-928a-b8b6839b44de}:1.1.1", - "{670b659f-089c-4fe0-928a-b8b6839b44de}:1.1.2", - "{670b659f-089c-4fe0-928a-b8b6839b44de}:1.1.3", - "{670b659f-089c-4fe0-928a-b8b6839b44de}:1.1.4", - "favory@sp4ce.pw:2.7.9" - ] - }, - "schema": 1770186996110, - "key_format": "{guid}:{version}", - "stash_time": 1770208505578, - "id": "067ae88d-7a17-4871-8aeb-fea346ee0895", - "last_modified": 1770208583018 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{60beab6d-17bb-411a-a55e-ed09f487ec1e}:5.6.9", - "mrm-downloader@nyt92.eu.org:1.3.4", - "mrm-downloader@nyt92.eu.org:1.3.3", - "restaurant-filter@example.com:1.0", - "support@timocom.com:0.1.4", - "vocab-collector@local:0.1.0", - "vocab-collector@local:0.1.1", - "vocab-collector@local:0.1.2", - "vocab-collector@local:1.0.0" - ] - }, - "schema": 1770165384966, - "key_format": "{guid}:{version}", - "stash_time": 1770186906659, - "id": "886769bc-6042-45d7-81df-7caeef62b66c", - "last_modified": 1770186995971 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "boost-monitor-converter-2fcac563@icecat.extension:5.8.5", - "boost-monitor-converter-2fcac563@icecat.extension:5.9.6", - "{d6f1dbe3-1238-47ff-ab3e-3451baac8e69}:2.5.0", - "{9ed2a9a5-a0fe-40d5-8836-0008249fe28b}:1.3.2.1", - "{9ed2a9a5-a0fe-40d5-8836-0008249fe28b}:2.3", - "{9ed2a9a5-a0fe-40d5-8836-0008249fe28b}:2.4.2", - "{9ed2a9a5-a0fe-40d5-8836-0008249fe28b}:2.4.3", - "{9ed2a9a5-a0fe-40d5-8836-0008249fe28b}:2.4.4", - "suspo-collector@example.com:1.0", - "suspo-collector@example.com:1.1", - "suspo-collector@example.com:1.2.1", - "{6f4156b8-4e01-4137-adad-e7aa28ce1707}:1.0", - "{6f4156b8-4e01-4137-adad-e7aa28ce1707}:1.1", - "{6f4156b8-4e01-4137-adad-e7aa28ce1707}:1.1.1", - "{6f4156b8-4e01-4137-adad-e7aa28ce1707}:1.4", - "shortkeys-custom-build@example.com:4.1.4", - "weather-buster-9000-xxx@extension.local:2.0.0", - "{f4a0e6b1-8c3a-4f2d-9e1a-7b5c2d8f3a4e}:1.0.1", - "{b2649c46-4196-42a1-bcff-da172f5bd9ec}:2.3.0", - "soft-gray-pdf-inveerter@usefull-tools:1.0" - ] - }, - "schema": 1770143792382, - "key_format": "{guid}:{version}", - "stash_time": 1770165305367, - "id": "50c4df6b-071e-4008-b2fb-997a39d77212", - "last_modified": 1770165384642 - }, - { - "stash": { - "blocked": [ - "packagetracking@livepackagetracking.com:1.0", - "packagetracking@livepackagetracking.com:1.1", - "packagetracking@livepackagetracking.com:1.2", - "maps@mapsdrivingdirections.com:1.0", - "maps@mapsdrivingdirections.com:1.1", - "maps@mapsdrivingdirections.com:1.2", - "maps@mapsdrivingdirections.com:1.3", - "earth@earthsatellite3d.com:1.0", - "earth@earthsatellite3d.com:1.1", - "earth@earthsatellite3d.com:1.2", - "earth@earthsatellite3d.com:1.3", - "earth@earthsatellite3d.com:1.4", - "{4aa8f833-0066-42e1-ba07-13e4b5fc3599}:1.0", - "{ec9cb034-58f8-4fb9-ae28-8240899a9da2}:1.0", - "{ffe1ffe4-603f-44c0-9770-06ac793366d7}:1.0", - "{89f4a5dc-9574-43d6-8eed-2a6b02df2dfe}:1.0", - "{db69bc71-48d6-4033-a6c9-dc08d3c5f880}:1.0", - "prime-watcher-kradk5oa@icecat.extension:1.1.5", - "prime-watcher-kradk5oa@icecat.extension:1.2.7" - ], - "unblocked": [], - "softblocked": [ - "techpriest@gurglorium.com:0.9.0", - "psydez@gmail.com:1.0", - "article-search@example.com:1.0.4", - "octoplus@octopluswin.dev:8.0", - "octoplus@octoplusbad.dev:3.0", - "octoplus@octoplusthree.dev:5.0", - "octoplus@octopluswell.dev:7.0", - "ai-tab-organizer@example.com:1.0.1", - "octoplus@octopluslove.dev:4.0", - "drag_to_privew@uxer:0.0.81", - "kurabu-ausweis@bremen1860.de:2.0.6", - "@minimalist-dev-build:8.7", - "@giseo-helper:1.1", - "{9fec991b-50db-4848-ad4e-beebf328c94b}:2.5.2", - "{9fec991b-50db-4848-ad4e-beebf328c94b}:2.5.4", - "{9fec991b-50db-4848-ad4e-beebf328c94b}:2.5.6", - "@giseo-helper:1.2", - "{77666993-534b-4850-bd76-63762591d6cb}:1.0", - "{1509130c-27fb-47a8-a04f-d75e3449ace9}:1.0", - "{613dc4be-da76-4e1a-9221-4e70cb5f3118}:1.0", - "drag_to_privew@uxer:0.0.82" - ] - }, - "schema": 1770122181689, - "key_format": "{guid}:{version}", - "stash_time": 1770143707307, - "id": "1297d5f2-c123-4a08-bde7-09f225b89b34", - "last_modified": 1770143792077 - }, - { - "stash": { - "blocked": [ - "john.harris26092001rz@outlook.com:1.0.8", - "{fc8e9751-4550-40e1-9bcf-1478088b9743}:3.9.4", - "secure-browse-emgwlkdx@icecat.extension:1.8.9", - "secure-browse-pqniu8vs@icecat.extension:3.2.7", - "power-cookie-master-hnye61ye@icecat.extension:3.9.0", - "power-cookie-master-hnye61ye@icecat.extension:4.1.0", - "zen-amplify-json-d7262187@icecat.extension:2.8.3", - "zen-amplify-json-d7262187@icecat.extension:2.8.5", - "smart-bookmarks-63gfz33o@icecat.extension:1.2.6", - "improved-tab-manager-2f4gskrh@icecat.extension:2.3.4", - "{cee33d67-2e65-4625-97a3-bf3496a4f1e6}:5.5.1" - ], - "unblocked": [], - "softblocked": [ - "robin.zhuang@sap.com:0.0.1", - "{fc8e9751-4550-40e1-9bcf-1478088b9743}:3.9.3", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.5.1", - "medminutes@imperialHealthtech.com:1.5.0", - "{80c8dd42-6c4a-44da-a29c-e4f54c296a50}:1.0", - "{80c8dd42-6c4a-44da-a29c-e4f54c296a50}:2.0", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.0", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.1", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.2", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.3", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.1", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.2", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.3", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.4", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.5", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.6", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.7", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.8", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.9", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.10", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.11", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.12", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.13", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.14", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.15", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.16", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.17", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.18", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.19", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.20", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.21", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.22", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.23", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.24", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.25", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.26", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.27", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.28", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.29", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.30", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.31", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.32", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.33", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.34", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.35", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.36", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.37", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.38", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.39", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.40", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.41", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.42", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.43", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.44", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.45", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.46", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.47", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.48", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.49", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.50", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.51", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.52", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.53", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.54", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.55", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.56", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.57", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.58", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.4.59", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.1", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.2", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.3", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.4", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.41", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.42", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.43", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.44", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.46", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.47", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.50", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.51", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.52", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.53", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.54", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.55", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.56", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.57", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.58", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.59", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.60", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.61", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.62", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.63", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.64", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.65", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.66", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.67", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.68", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.5.69", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.1", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.11", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.12", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.13", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.14", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.15", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.16", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.17", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.18", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.19", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.20", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.21", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.22", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.24", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.25", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.26", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.27", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.28", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.29", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.30", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.31", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.32", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.33", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.34", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.35", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.36", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.37", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.38", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.39", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.40", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.41", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.42", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.43", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.44", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.45", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.46", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.47", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.48", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.49", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.50", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.51", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.52", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.53", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.54", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.55", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.56", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.57", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.58", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.64", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.65", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.66", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.67", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.68", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.69", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.70", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.71", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.73", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.74", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.75", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.76", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.77", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.78", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.79", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.80", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.81", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.82", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.83", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.84", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.85", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.86", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.87", - "{1a1275a1-6e24-4788-8ec2-2cd5e98c9cd5}:1.6.88", - "endpoint-shield@adlibo.com:1.5.0", - "agent@blowtorch.local:1.0.0", - "octoplus@octoplusexe.dev:6.0", - "octoplus@octoplusend.dev:1.0", - "inist.users@gmail.com:3.19.3", - "inist.users@gmail.com:3.19.4", - "inist.users@gmail.com:3.19.5", - "inist.users@gmail.com:3.27.0", - "inist.users@gmail.com:3.19.6", - "inist.users@gmail.com:3.19.7", - "inist.users@gmail.com:3.19.8", - "inist.users@gmail.com:3.20.0", - "inist.users@gmail.com:3.21.0", - "inist.users@gmail.com:3.22.0", - "inist.users@gmail.com:3.22.1", - "inist.users@gmail.com:3.23.0", - "inist.users@gmail.com:3.23.1", - "vulcan-export-final@feature-adder.it:1.0.4", - "vulcan-export-final@feature-adder.it:1.0.5", - "vulcan-export-final@feature-adder.it:1.0.6", - "vulcan-export-final@feature-adder.it:1.1.0", - "my_extension_id@example.com:1.0", - "{95ccf8ff-7b52-49b6-9319-cbca4bcc7677}:1.0.1", - "{95ccf8ff-7b52-49b6-9319-cbca4bcc7677}:1.0.4", - "recipe-scraper@tailscale.local:1.0" - ] - }, - "schema": 1770100592617, - "key_format": "{guid}:{version}", - "stash_time": 1770122105209, - "id": "e94dc20f-cd74-416f-ba75-268a2a06277f", - "last_modified": 1770122181361 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "stereotweet@bjaxqq.com:1.0.0", - "{1ca57218-5c75-4941-ade2-05e1bc956cd9}:1.0", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.8.3", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.8.2", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.8.1", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.8", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.7.1", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.7", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.6", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.5", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.4", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.3", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.2", - "{4e03803e-a6d4-4bd5-9bf3-8bd52e0fdf5a}:1.1", - "claude-export-tool@example.com:1.0.0", - "claude-export-tool@example.com:1.0.1", - "grok-export-tool@example.com:1.0.0", - "chatgpt-export-tool@example.com:1.0.0" - ] - }, - "schema": 1770078991811, - "key_format": "{guid}:{version}", - "stash_time": 1770100506656, - "id": "fb083e71-9608-4a67-b0e1-cc4fc70c08b3", - "last_modified": 1770100592401 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{e1f404e8-db13-4a8d-a21a-75bcf87fa619}:2.6.5", - "{e1f404e8-db13-4a8d-a21a-75bcf87fa619}:2.6.8", - "{ab2c6387-bfcd-4c64-8cbb-2514b321385d}:1.0", - "{5d686bd0-460d-48a5-b13e-eccaebe5b4c4}:4.2.4", - "hnlghhimlfidcnmaimhmmjkhmofolnpl@integralbiometrics.com:2026.2.2.16223", - "schmidts_katz@cubimon.org:1.5", - "schmidts_katz@cubimon.org:1.3", - "schmidts_katz@cubimon.org:1.1", - "schmidts_katz@cubimon.org:1.4", - "schmidts_katz@cubimon.org:1.0", - "cubimmon93@gmail.com:1.8.0", - "streamkeys@streamkeys.com:1.8.0", - "streamkeys@streamkeys.com:1.8.1", - "{21c0c650-2c28-4102-a546-5349cd4048f3}:0.0.1" - ] - }, - "schema": 1770057395832, - "key_format": "{guid}:{version}", - "stash_time": 1770078907123, - "id": "4dff0afd-1619-4a85-a3bc-7f08fec889a8", - "last_modified": 1770078991338 - }, - { - "stash": { - "blocked": [ - "{ad370ce4-47b7-4f4f-b891-25576784af1d}:5.6.6", - "{ad370ce4-47b7-4f4f-b891-25576784af1d}:5.6.7", - "{ad370ce4-47b7-4f4f-b891-25576784af1d}:5.6.8", - "tab-alarm@extension.com:1.0.0", - "tab-alarm@extension.com:1.1.0", - "ultra-utility-abnla0so@icecat.extension:2.4.6", - "turbo-browser-helper-rbmi4mdi@icecat.extension:2.9.4", - "turbo-browser-helper-rbmi4mdi@icecat.extension:2.9.5", - "smart-keeper-6i4vcsgy@icecat.extension:1.3.6", - "smart-keeper-6i4vcsgy@icecat.extension:1.3.7", - "best-tab-organizer-7fr4n7ka@icecat.extension:2.9.7", - "best-tab-organizer-7fr4n7ka@icecat.extension:13.16.1", - "{b4a5b1b6-6225-40db-977f-41c107b04f19}:1.0", - "{71070de4-6220-496b-adc5-aa1931a63f6a}:1.0", - "{71070de4-6220-496b-adc5-aa1931a63f6a}:3.15.3", - "{78962e30-ef60-45ef-ad55-9949e497c554}:1.0", - "{78962e30-ef60-45ef-ad55-9949e497c554}:1.1.3" - ], - "unblocked": [], - "softblocked": [ - "r-helper@astralinux.ru:1.3.0", - "r-helper@astralinux.ru:1.3.1", - "octoplus@octoplustry.dev:4.0", - "swift-bookmark-manager-kxkejsbl@icecat.extension:3.5.2", - "{118beff8-a383-4cbe-9e02-1623f0cb1280}:1.0.4", - "tebex-autofill@local:1.0.0", - "admin-jkfix@torata.ch:1.0", - "secure-browse-emgwlkdx@icecat.extension:1.7.9", - "contact@bulenox.codes:4.3.23", - "{8fdea742-9b86-4c1f-a79b-e8b5c6aa21e7}:7.7", - "{e35301ab-9443-4437-aedb-81b3c2f9ef76}:1.0", - "smart-justify-v3@clean-fix:1.0", - "{71d7d949-a04e-4925-aef6-3b1730982a3c}:1.0", - "{95fd1cd9-1f2d-46ce-9dbe-6a954b59a315}:1.0", - "{d9e6daa5-40e2-4210-b333-3023a8256ec3}:1.1", - "{c22b3ac9-da98-467c-9d62-cbd20d1cff65}:2.1.5", - "{c22b3ac9-da98-467c-9d62-cbd20d1cff65}:2.1.9", - "cookie-cliker-tools@local:0.5" - ] - }, - "schema": 1770035790698, - "key_format": "{guid}:{version}", - "stash_time": 1770057306508, - "id": "6154dea9-e9df-412e-94ae-fa3f614c43b8", - "last_modified": 1770057395700 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "octoplus@octoplusmultib.dev:1.0", - "visited-links-colorizer@ngothang2805.github.io:1.2.7", - "octoplus@octoplusbeggin.dev:1.0", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.5.0", - "withdrawal-extractor@paynexbot.com:1.0.2", - "endpoint-shield@adlibo.com:1.4.0", - "endpoint-shield@adlibo.com:1.3.0", - "{49d75de4-60d6-4173-bd01-e355c78c5306}:1.0.0", - "jira-copy-button@extension.local:1.0.0", - "octoplus@octoplusend.dev:2.0", - "info1@latynka.pp.ua:0.0.1", - "octoplus@octoplusreal.dev:3.0", - "nord-paper-theme@dotfiles:1.0.0", - "nord-paper-theme@dotfiles:1.0.1", - "nord-paper-theme@dotfiles:1.0.2", - "nord-paper-theme@dotfiles:1.0.3", - "nord-paper-theme@dotfiles:1.0.4", - "nord-paper-theme@dotfiles:1.0.5" - ] - }, - "schema": 1770014195563, - "key_format": "{guid}:{version}", - "stash_time": 1770035706705, - "id": "368277b4-3d4f-46fc-89c9-5fc718756a0f", - "last_modified": 1770035790495 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.3.9", - "favory@sp4ce.pw:2.7.7", - "favory@sp4ce.pw:2.7.8", - "@confluence-style-fix:1.1", - "@confluence-style-fix:1.2", - "@confluence-style-fix:1.3", - "@confluence-style-fix:1.31" - ] - }, - "schema": 1769992580511, - "key_format": "{guid}:{version}", - "stash_time": 1770014106635, - "id": "96129b93-6844-4cb3-8b29-4a2ea1b27d26", - "last_modified": 1770014195250 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "screen-res-spoofer@example.com:5.0", - "stevereis93@gmail.com:0.2.9", - "octoplus@sakhiwo.dev:1.0", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.3.8", - "octoplus@mydomain.com:1.0", - "{54be7a61-d6aa-4938-b496-c1c986fd8af3}:0.1", - "{54be7a61-d6aa-4938-b496-c1c986fd8af3}:0.1.1", - "{54be7a61-d6aa-4938-b496-c1c986fd8af3}:0.1.2", - "twoje-id-rozszerzeniav2@example.com:1.0.0", - "twoje-id-rozszerzeniav2@example.com:1.0.1", - "container-automator-dev@local.local:1.0", - "sekercancepni@hotmail.com:1.0.0", - "{9fc10399-ff0d-41c1-9e84-5df6bea8d7c9}:1.0" - ] - }, - "schema": 1769970979264, - "key_format": "{guid}:{version}", - "stash_time": 1769992505540, - "id": "f2fab369-878d-40f9-968e-46d7f858a8e4", - "last_modified": 1769992580374 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{92409c9f-a7c8-44f2-ab96-57cf56b32f1c}:2.0", - "{92409c9f-a7c8-44f2-ab96-57cf56b32f1c}:1.0", - "{92409c9f-a7c8-44f2-ab96-57cf56b32f1c}:2.1", - "{92409c9f-a7c8-44f2-ab96-57cf56b32f1c}:2.2", - "{7c7038b0-6f45-4a8f-bc05-8aed4598765e}:1.0", - "{7c7038b0-6f45-4a8f-bc05-8aed4598765e}:2.0", - "{7c7038b0-6f45-4a8f-bc05-8aed4598765e}:1.5", - "{7c7038b0-6f45-4a8f-bc05-8aed4598765e}:1.1", - "{648bdc74-94c6-4196-8789-d5947268867c}:3.2", - "{648bdc74-94c6-4196-8789-d5947268867c}:3.1", - "{648bdc74-94c6-4196-8789-d5947268867c}:2.0", - "{648bdc74-94c6-4196-8789-d5947268867c}:1.3", - "{648bdc74-94c6-4196-8789-d5947268867c}:1.4", - "{648bdc74-94c6-4196-8789-d5947268867c}:1.1", - "{d6aa6b3b-749f-4f84-855e-fa709b733b2a}:1.0", - "endpoint-shield@adlibo.com:1.2.1", - "endpoint-shield@adlibo.com:1.1.0", - "endpoint-shield@adlibo.com:1.2.0", - "@link-collector:1.0", - "cool-bookmark-master-b7xmf65w@icecat.extension:2.1.4", - "pocket-csv@iamtrazy.dev:1.0.0", - "bright-extension-pyaz9dyg@icecat.extension:2.7.8", - "ultimate-cookie-manager-vd23jzmo@icecat.extension:2.1.8", - "elite-tool-ydbvn7i8@icecat.extension:1.5.4", - "elite-tool-ydbvn7i8@icecat.extension:1.5.6", - "saver-your-tabs@icecat.extension:1.2.0", - "saver-your-tabs@icecat.extension:1.3.0", - "saver-your-tabs@icecat.extension:1.5.0", - "{662917d2-f7ef-466a-8e95-37d46e528557}:1.5.2", - "{662917d2-f7ef-466a-8e95-37d46e528557}:1.5.3" - ] - }, - "schema": 1769949390781, - "key_format": "{guid}:{version}", - "stash_time": 1769970905254, - "id": "89eadc17-3193-4bd8-89ab-b245464d7aa1", - "last_modified": 1769970979102 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{3f7a0d32-bb7d-4f4b-99c9-bb58e1a9129a}:0.5", - "{3f7a0d32-bb7d-4f4b-99c9-bb58e1a9129a}:0.4", - "image-downloader@ozler365:15.5", - "{9d1d71e5-6e31-4499-a97e-35c8daa13f1b}:1.3.3", - "arc@dobybaxter.dev:1.0.1" - ] - }, - "schema": 1769927793759, - "key_format": "{guid}:{version}", - "stash_time": 1769949306304, - "id": "f7b22f4d-c422-437f-b244-ed69dfb1dfdc", - "last_modified": 1769949390564 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "tfs-extension@indra.com:1.0.0", - "ultimate-browser-pro-zup14ejf@icecat.extension:3.1.7", - "google-account-switcher@antigravity.ai:1.3", - "ultimate-browser-pro-zup14ejf@icecat.extension:13.16.0", - "ultimate-browser-pro-zup14ejf@icecat.extension:13.16.1", - "best-history-manager-eaypj5m4@icecat.extension:1.8.5", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.3.4", - "dynamic-text-copier@example.com:1.0", - "enhanced-add-on-8x946rbl@icecat.extension:1.0.7", - "enhanced-add-on-8x946rbl@icecat.extension:1.0.8", - "enhanced-add-on-8x946rbl@icecat.extension:1.0.9", - "awesome-history-viewer-s9c279wa@icecat.extension:1.1.4", - "awesome-history-viewer-s9c279wa@icecat.extension:1.1.5", - "awesome-history-viewer-s9c279wa@icecat.extension:1.1.6", - "awesome-history-viewer-s9c279wa@icecat.extension:1.1.7", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.3.6", - "steamgifts-region-helper@example.com:1.1", - "steamgifts-region-helper@example.com:1.2", - "steamgifts-region-helper@example.com:1.3", - "steamgifts-region-helper@example.com:1.4", - "steamgifts-region-helper@example.com:1.5", - "steamgifts-region-helper@example.com:1.6" - ] - }, - "schema": 1769906196355, - "key_format": "{guid}:{version}", - "stash_time": 1769927707268, - "id": "6ba66930-dd03-4420-b0aa-18422fa94991", - "last_modified": 1769927793499 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "microslop-to-microslop@wxn0.xyz:1.0", - "auto-justify-text-v6@yourname.com:6.1", - "steamgifts-region-paster@example.com:1.0", - "{44df8213-a17e-4915-a006-187d6d34bd95}:1.1.0", - "{44df8213-a17e-4915-a006-187d6d34bd95}:1.2.0", - "amazon_such_filter@example.com:1.0", - "amazon-such-filter@example.com:1.0", - "image-downloader@ozler365:15.4", - "{55990d14-944c-4462-863c-595fbbf51dbc}:1.0", - "gemini-stats@ardaemrekececioglu.com.tr:1.0.0", - "gemini-stats@ardaemrekececioglu.com.tr:2.2.0", - "gruung-assistant@contrib.lustgoddess.com:0.7", - "gruung-assistant@contrib.lustgoddess.com:0.9", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.3.3", - "tfs-connector@indra.com:1.0.0" - ] - }, - "schema": 1769884597838, - "key_format": "{guid}:{version}", - "stash_time": 1769906107107, - "id": "6cbfa66a-6581-4e53-aa91-2c200041763c", - "last_modified": 1769906196025 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "Movie.NoAds@vxh.io:1.0", - "Movie.NoAds@vxh.io:1.1", - "Movie.NoAds@vxh.io:1.2", - "Movie.NoAds@vxh.io:1.3", - "Movie.NoAds@vxh.io:1.4", - "Movie.NoAds@vxh.io:1.5", - "Movie.NoAds@vxh.io:1.6", - "VXH.NoAds@vxh.io:2.1", - "VXH.NoAds@vxh.io:2.2", - "VXH.NoAds@vxh.io:2.3", - "VXH.NoAds@vxh.io:2.4", - "VXH.NoAds@vxh.io:2.5", - "VXH.NoAds@vxh.io:2.6", - "VXH.NoAds@vxh.io:2.7", - "VXH.NoAds@vxh.io:2.8", - "VXH.NoAds@vxh.io:2.9", - "VXH.NoAds@vxh.io:2.10", - "VXH.NoAds@vxh.io:2.11", - "VXH.NoAds@vxh.io:2.12", - "VXH.NoAds@vxh.io:4.0", - "VXH.NoAds@vxh.io:4.1", - "VXH.NoAds@vxh.io:4.2", - "VXH.NoAds@vxh.io:4.3", - "VXH.NoAds@vxh.io:4.4", - "VXH.NoAds@vxh.io:4.5", - "VXH.NoAds@vxh.io:4.6", - "VXH.NoAds@vxh.io:4.7", - "VXH.NoAds@vxh.io:4.8", - "VXH.NoAds@vxh.io:4.9", - "VXH.NoAds@vxh.io:4.10", - "VXH.NoAds@vxh.io:4.11", - "VXH.NoAds@vxh.io:4.12", - "VXH.NoAds@vxh.io:4.13", - "VXH.NoAds@vxh.io:4.14", - "VXH.NoAds@vxh.io:4.15", - "jira-kanban-exporter@local:0.1.0", - "{46ac2b73-7f98-481d-bf46-d9ea9956665e}:2026.1.31.13310", - "hls@localhost:1.2", - "hls@localhost:1.1", - "{8e60c975-8458-461a-b2fe-86ce81dd71c4}:1.0", - "justifyarticles@technology:4.0", - "justifyarticles@technology:6.1", - "hls@localhost:1.0", - "hls@localhost:1.1.1", - "alon11559@gmail.com:2.5", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:4.4", - "{22dad1ca-b26d-4dde-afb5-e7494bba6831}:1.0", - "hls@localh:1.0", - "hls@localh:1.0.1", - "hls@localh:1.0.2", - "{3f7a0d32-bb7d-4f4b-99c9-bb58e1a9129a}:0.3", - "amazon-search-filter@mo-projects.de:3.1", - "mosa.albedre1@gmail.com:2.1", - "{7930e9e1-4a45-4ea1-875c-112453bcf1af}:1.0", - "{7930e9e1-4a45-4ea1-875c-112453bcf1af}:1.1", - "video-downloader-pro-7oj22vhx@icecat.extension:2.7.0", - "video-downloader-pro-7oj22vhx@icecat.extension:2.7.1", - "amazon-search-filter@example.com:3.2", - "{9f2b2c14-240a-4918-a37b-4bf90e31469b}:241029.1", - "n-a.addon@example.com:1.4", - "web-extension-history@icecat.extension:1.1.0", - "web-extension-history@icecat.extension:1.2.0", - "web-extension-history@icecat.extension:1.3.0", - "web-extension-history@icecat.extension:1.4.0" - ] - }, - "schema": 1769862993166, - "key_format": "{guid}:{version}", - "stash_time": 1769884506957, - "id": "44931076-37f3-4fbc-b5ac-208396377aec", - "last_modified": 1769884597635 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "image-grabber@euan.dev:1.0.0", - "instadownloaderv1@euan-dev.local:1.0.2", - "instadownloaderv1@euan-dev.local:1.0.3", - "instadownloaderv1@euan-dev.local:1.0.5", - "deep-scroll@euan.dev:1.0.0", - "{9fb30f92-e12d-44f2-aeb7-2a905bd4ec09}:1.0", - "{9a0338d6-8002-4727-9422-6a22531e1bbf}:1.0", - "ticketnotifier@mustafashakir.dev:13.2.16", - "mc@209.128.213.133:3.0.2", - "ticketnotifier@mustafashakir.dev:1.0.2", - "ticketnotifier@mustafashakir.dev:10.0", - "ticketnotifier@mustafashakir.dev:12.0", - "ticketnotifier@mustafashakir.dev:13.0", - "ticketnotifier@mustafashakir.dev:13.1", - "ticketnotifier@mustafashakir.dev:13.2", - "ticketnotifier@mustafashakir.dev:13.2.13", - "ticketnotifier@mustafashakir.dev:13.2.14", - "ticketnotifier@mustafashakir.dev:17.0.0", - "ticketnotifier@mustafashakir.dev:17.1", - "ticketnotifier@mustafashakir.dev:17.2", - "onepassword4x@agilebits.com:4.7.5.90", - "onepassword4x@agilebits.com:4.7.5.91" - ] - }, - "schema": 1769841392328, - "key_format": "{guid}:{version}", - "stash_time": 1769862907057, - "id": "d89b80a4-a1d1-404c-bcf6-435bdae87c3f", - "last_modified": 1769862992967 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "simple-snip-pinboard@example.com:5.2", - "{9a11ee2d-5441-425e-b358-ed9046ce0145}:1.0", - "simple-snip-pinboard@example.com:5.7", - "simple-snip-pinboard@example.com:5.6", - "simple-snip-pinboard@example.com:5.5", - "simple-snip-pinboard@example.com:5.3", - "simple-snip-pinboard@example.com:6.0", - "simple-snip-pinboard@example.com:4.7", - "simple-snip-pinboard@example.com:7.0", - "simple-snip-pinboard@example.com:6.5", - "simple-snip-pinboard@example.com:6.3", - "simple-snip-pinboard@example.com:6.1", - "youtube-mute-skip-kuromimi@github.io:1.0.0", - "simple-snip-pinboard@example.com:7.1", - "simple-snip-pinboard@example.com:6.4", - "lilin.shao@qq.com:3.0", - "reddit-removed-posts@extension.local:1.0.0", - "pinned-tabs-manager@yourname.com:1.0", - "pinned-tabs-manager@yourname.com:1.0.1", - "keyword-tab-cleaner@local:1.1" - ] - }, - "schema": 1769819794834, - "key_format": "{guid}:{version}", - "stash_time": 1769841306347, - "id": "731d2337-1c62-4e8c-96f6-245da00c313c", - "last_modified": 1769841392102 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{48ea8e77-95af-4a41-8f4c-e451fc82116e}:1.0", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.1.3", - "test-au2tologin@luckyfurrex:1.0", - "{06d98d51-c130-4c86-9fb9-4eb8ac6f2761}:2.4.0", - "{06d98d51-c130-4c86-9fb9-4eb8ac6f2761}:2.4.1", - "{b1935acd-8857-485d-96ec-b593365bfa7b}:1.0", - "luna-adblock@sensortower.com:2.0.0", - "luna-adblock@sensortower.com:2.1.0", - "luna-adblock@sensortower.com:2.1.1", - "{6ab1a57b-2b1c-4c8f-a397-49ce2937d723}:4.64", - "TabActions@Window:1.0", - "TabActions@Window:1.1", - "TabActions@Window:1.2", - "ultra-utility-abnla0so@icecat.extension:2.4.3", - "ultra-utility-abnla0so@icecat.extension:2.4.4", - "ultra-utility-abnla0so@icecat.extension:2.4.5" - ] - }, - "schema": 1769798196676, - "key_format": "{guid}:{version}", - "stash_time": 1769819707346, - "id": "84d79d63-c2d5-47d8-b961-8f1b0e82ece2", - "last_modified": 1769819794423 - }, - { - "stash": { - "blocked": [ - "{72956991-9a16-4b5d-b251-8970567cfc72}:3.53.2" - ], - "unblocked": [], - "softblocked": [ - "futaba_log_viewer@my-local-extension:1.0.7", - "favory@sp4ce.pw:2.7.6", - "{6fcfbe86-e569-4247-be0a-2ad6cc70a59d}:11.6", - "{4a5782ca-23f4-47ee-a8a7-d34d9b1c5bba}:1.0", - "{4a5782ca-23f4-47ee-a8a7-d34d9b1c5bba}:2.0", - "news-republic-full-content@axeleroy.com:0.1.0", - "news-republic-full-content@axeleroy.com:0.1.1", - "news-republic-full-content@axeleroy.com:0.1.2", - "futaba_log_viewer@my-local-extension:1.0.6", - "futaba_log_viewer@my-local-extension:1.0.4", - "futaba_log_viewer@my-local-extension:1.0.3", - "futaba_log_viewer@my-local-extension:1.0.2", - "futaba_log_viewer@my-local-extension:1.0.1", - "futaba_log_viewer@my-local-extension:1.0.0", - "darkblank@yourname.local:2.0", - "pembina-menu@pembina.com:3.2.6", - "pembina-menu@pembina.com:2026.1.2", - "{0f605b76-4fc3-44ba-a7cb-543f561b972e}:1.0", - "futaba_log_viewer@my-local-extension:1.1.0", - "futaba_log_viewer@my-local-extension:1.0.9", - "{6255b202-0905-4a69-af48-491cf8f87f09}:1.0", - "cashbox@local:1.0.2", - "balbe@xoich:1.0", - "balbe@xoich:1.1", - "mrscrooge-local@example.com:1.0.0", - "rovalra@local:2.4.5.1" - ] - }, - "schema": 1769776592327, - "key_format": "{guid}:{version}", - "stash_time": 1769798106275, - "id": "e0790068-70ee-4821-aeee-3222cfc5f249", - "last_modified": 1769798196545 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "youtube-prefetch-local@pc:1.3", - "youtube-prefetch-local@pc:1.3.1", - "{b06bd4b5-3c6b-42ca-b66f-b368d30857ce}:2.9.0", - "@hootly-ai:0.1.0", - "@hootly-ai:0.2.0", - "@hootly-ai:0.3.0", - "@hootly-ai:0.3.1", - "@hootly-ai:0.3.2", - "totp-generator-luca@example.com:1.0.2", - "nexus-marketing@at2.me:1.0.0", - "nexus-marketing@at2.me:1.1.0", - "nexus-marketing@at2.me:1.2.0", - "nexus-marketing@at2.me:1.11.2", - "nexus-marketing@at2.me:1.11.3", - "nexus-marketing@at2.me:1.11.1", - "nexus-marketing@at2.me:1.11.0", - "nexus-marketing@at2.me:1.10.0", - "nexus-marketing@at2.me:1.8.0", - "nexus-marketing@at2.me:1.7.0", - "nexus-marketing@at2.me:1.11.5", - "nexus-marketing@at2.me:1.6.1", - "nexus-marketing@at2.me:1.4.0" - ] - }, - "schema": 1769754991626, - "key_format": "{guid}:{version}", - "stash_time": 1769776506349, - "id": "74f59786-b577-4755-94f8-ff5b80797dd6", - "last_modified": 1769776592189 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "futaba_log_refiner@my-local-extension:1.7.5", - "futaba_log_refiner@my-local-extension:1.7.6", - "futaba_log_refiner@my-local-extension:1.7.7", - "favory@sp4ce.pw:2.7.5", - "dutch-lens@yourname.com:3.0", - "{8b1c822a-085d-4db1-87e4-a067b42006a4}:1.2.5", - "{102357be-960d-477c-b84e-38715be2cbaa}:1.0", - "{a4037bdf-d553-4c38-9754-afc47b75588a}:1.6.1", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.1.2" - ] - }, - "schema": 1769733391985, - "key_format": "{guid}:{version}", - "stash_time": 1769754906570, - "id": "5ae833b0-0af6-4b69-9d6a-d6fd9faacf0a", - "last_modified": 1769754991377 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{903f7f71-117b-4a69-aa2e-9f7350e535b7}:5.7.5", - "{903f7f71-117b-4a69-aa2e-9f7350e535b7}:5.7.6", - "futaba_log_refiner@my-local-extension:1.7.2", - "futaba_log_refiner@my-local-extension:1.7.1", - "futaba_log_refiner@my-local-extension:1.7.0", - "@aspire-scripts:0.42.0", - "custom-home@personal.extension:1.7.0", - "walfox@jade.local:1.3.1", - "{325a9de5-c38a-45ce-9b57-afe269690b09}:1.2", - "{325a9de5-c38a-45ce-9b57-afe269690b09}:1.1", - "{325a9de5-c38a-45ce-9b57-afe269690b09}:1.0", - "futaba_log_refiner@my-local-extension:1.7.3" - ] - }, - "schema": 1769711792578, - "key_format": "{guid}:{version}", - "stash_time": 1769733306499, - "id": "57c4a9d3-36f4-4553-8a72-1f8bfaca89fc", - "last_modified": 1769733391843 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "container-opener@gemini.local:3.0.0", - "container-opener@gemini.local:1.0.0", - "container-opener@gemini.local:1.2.0", - "container-opener@gemini.local:1.3.0", - "container-opener@gemini.local:1.4.0", - "container-opener@gemini.local:1.5.0", - "futaba_log_refiner@my-local-extension:1.6.9", - "futaba_log_refiner@my-local-extension:1.6.8", - "futaba_log_refiner@my-local-extension:1.6.6", - "futaba_log_refiner@my-local-extension:1.6.5", - "rovalra@local:2.4.4.1", - "google-translate@nguyen-thai-nguyen:2.0.16", - "stream-check@panda-bro-use:1.2.2", - "jcpqdsad1AfrofavorityStripds@dsoteer.com:1.10", - "jcpqdsad1AfrofavorityStripds@dsoteer.com:1.8", - "{06f5465b-6db8-4a37-9c05-ed70dc04f0a4}:2.0", - "favory@sp4ce.pw:2.7.4", - "dmm-doujin-enhancer@example.com:1.4.3", - "dmm-doujin-enhancer@example.com:1.4.2", - "dmm-doujin-enhancer@example.com:1.4.1", - "{06f5465b-6db8-4a37-9c05-ed70dc04f0a4}:3.0", - "{06f5465b-6db8-4a37-9c05-ed70dc04f0a4}:1.0", - "rwhn.pvt@gmail.com:1.0", - "line@myself.com:1.0", - "{b4a5c6d7-e8f9-4a0b-1c2d-3e4f5a6b7c8d}:1.0", - "{47d74cbe-f177-43fa-b728-123c9f4a6b71}:2.8.6", - "{47d74cbe-f177-43fa-b728-123c9f4a6b71}:2.8.7", - "{5c2274dc-28f5-49f8-ad14-20230331bdfd}:1.8.6", - "{5c2274dc-28f5-49f8-ad14-20230331bdfd}:1.8.7", - "{0165b03b-e0a6-4be3-9898-e14e4937c4dc}:5.6.4" - ] - }, - "schema": 1769690195284, - "key_format": "{guid}:{version}", - "stash_time": 1769711706546, - "id": "45d01bb8-6335-4f5a-b854-281db320a856", - "last_modified": 1769711792359 - }, - { - "stash": { - "blocked": [ - "{08a9b4e3-2128-47aa-852f-a473b9aaf914}:1.7.6", - "{08a9b4e3-2128-47aa-852f-a473b9aaf914}:1.7.7", - "{08a9b4e3-2128-47aa-852f-a473b9aaf914}:1.7.8", - "{03ac4746-b69a-485d-bd67-de1cd06c564c}:1.1.0", - "{ada077d6-d256-4536-9075-d7e014a2bb7c}:1.1.0" - ], - "unblocked": [], - "softblocked": [ - "{bf1cf5c9-4773-4423-92c9-10ac63295e57}:1.0", - "Bazaar@nchoremiot.com:3.0.1", - "futaba_log_refiner@my-local-extension:1.6.0", - "futaba_log_refiner@my-local-extension:1.5.9", - "futaba_log_refiner@my-local-extension:1.5.8", - "futaba_log_refiner@my-local-extension:1.6.2", - "futaba_log_refiner@my-local-extension:1.6.3", - "IPFire_LegendFilter@example.com:0.0.16", - "fleyetrap@inimation.com:1.0", - "fleyetrap@inimation.com:1.1", - "futaba_log_refiner@my-local-extension:1.6.4", - "jira_auto@nfz-lublin.pl:0.0.2", - "tablefilters@example.com:1.2.4", - "aidenix-context-search@example.com:1.0", - "aidenix-context-search@example.com:2.0", - "dissatisfied@pronsh.dev:0.3.2", - "dissatisfied@pronsh.dev:0.3.1", - "dissatisfied@pronsh.dev:0.31", - "{269539ab-07f3-4964-ae47-7d4deb557320}:1.60", - "{269539ab-07f3-4964-ae47-7d4deb557320}:1.61" - ] - }, - "schema": 1769668579022, - "key_format": "{guid}:{version}", - "stash_time": 1769690106952, - "id": "ab34abcb-a448-4405-a442-9153c1faa8b4", - "last_modified": 1769690195153 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{caeb485e-8070-4520-8262-8ef288a3e35f}:5.1", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:5.0", - "nuhuh-blocker@example.com:1.0", - "study-timerTEST2@local:1.0.0", - "study-timer@local:1.0.0", - "study-timer@local:1.1.0", - "study-timer@local:1.3.0", - "study-timer@local:1.5.0", - "study-timer@local:2.0.0", - "study-timer@local:2.1.0", - "study-timer@local:2.6.0", - "study-timer@local:3.0.0", - "study-timer@local:5.0.0", - "study-timerTEST@local:1.0.0", - "{314d4f37-f4e3-4ab5-92f2-995d9ea435cc}:3.0.11", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:5.3", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:5.2", - "futaba_log_refiner@my-local-extension:1.5.3", - "{5384b886-08a8-11f0-9f4f-af7f4c6512f7}:1.1.29", - "{5384b886-08a8-11f0-9f4f-af7f4c6512f7}:1.1.292", - "futaba_log_refiner@my-local-extension:1.5.5", - "futaba_log_refiner@my-local-extension:1.5.4", - "futaba_log_refiner@my-local-extension:1.5.7", - "{a030c6b5-b7e8-48e8-bfc9-88fa34d2fb82}:0.0.1", - "{9c0dbafb-e204-4223-9dec-f657b857f596}:0.0.1", - "{ae23403d-1852-4ae1-be1c-a8ffb12a76d8}:1.0", - "{52a3f112-8c8d-4515-b4c7-8a489da39240}:1.0", - "{5384b886-08a8-11f0-9f4f-af7f4c6512f7}:1.1.30" - ] - }, - "schema": 1769646991834, - "key_format": "{guid}:{version}", - "stash_time": 1769668505190, - "id": "68ea8d35-95d9-4ca0-b950-bb567ebf1b0f", - "last_modified": 1769668578822 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{33aa6550-5171-482c-bb8d-676300689fad}:1.0", - "{8a2ab1ee-78de-4383-b616-4941eadbe791}:1.0", - "contact@bullshit-meter.xyz:1.0.2", - "contact@bullshit-meter.xyz:1.0.3", - "automation_toolkit@icecat:1.0.0", - "RemoveInitialTabFirstTab@Window:1.0", - "RemoveInitialTabFirstTab@Window:1.1", - "RemoveInitialTabFirstTab@Window:1.2", - "RemoveInitialTabFirstTab@Window:1.3", - "RemoveInitialTabFirstTab@Window:1.4", - "RemoveInitialTabFirstTab@Window:1.5", - "RemoveInitialTabFirstTab@Window:1.6", - "RemoveInitialTabFirstTab@Window:1.7", - "RemoveInitialTabFirstTab@Window:1.8", - "RemoveInitialTabFirstTab@Window:1.9", - "RemoveInitialTabFirstTab@Window:1.10", - "RemoveInitialTabFirstTab@Window:1.11", - "RemoveInitialTabFirstTab@Window:2.0", - "RemoveInitialTabFirstTab@Window:2.1", - "RemoveInitialTabFirstTab@Window:2.2", - "RemoveInitialTabFirstTab@Window:2.3", - "p0gy27dmo@mozmail.com:1.0.0", - "offlinenotes@philiplabs:1.1", - "offlinenotes@philiplabs:1.2", - "offlinenotes@philiplabs:1.3", - "gameurdev@gmail.com:1.0", - "favory@sp4ce.pw:2.7.3", - "fse-hours@aerofinancialfse.com:1.0", - "{c9be124c-ab87-4023-b56e-aabc041e52aa}:1.0" - ] - }, - "schema": 1769625381856, - "key_format": "{guid}:{version}", - "stash_time": 1769646906785, - "id": "bd98d496-7f31-4213-8bfd-9a9956c40184", - "last_modified": 1769646991418 - }, - { - "stash": { - "blocked": [ - "{75bfc869-8d59-4540-8056-cb29dd196987}:1.0", - "{75bfc869-8d59-4540-8056-cb29dd196987}:2.0.16", - "{cb832a40-3ea6-4fe9-8b04-79cf1b84de2b}:1.0", - "{cb832a40-3ea6-4fe9-8b04-79cf1b84de2b}:21.0.15", - "{df2a20b6-9000-4260-bd8c-de886bb90c5d}:1.0", - "{df2a20b6-9000-4260-bd8c-de886bb90c5d}:2.0.19", - "{fb4a419f-9990-4c9c-81cb-3bc33f927e40}:1.0", - "{fb4a419f-9990-4c9c-81cb-3bc33f927e40}:2.0.16", - "{9b38720e-2f3f-4436-b259-11a19506e8dc}:1.0", - "{9b38720e-2f3f-4436-b259-11a19506e8dc}:1.2.3", - "{9b38720e-2f3f-4436-b259-11a19506e8dc}:1.2.4", - "AscaleIppin8829@outlook.com:1.0.2", - "{62bc4016-fc31-442f-9057-ce514ac92bae}:3.0.9", - "{62bc4016-fc31-442f-9057-ce514ac92bae}:3.1.1", - "{62bc4016-fc31-442f-9057-ce514ac92bae}:3.1.2", - "{62bc4016-fc31-442f-9057-ce514ac92bae}:3.1.3", - "{62bc4016-fc31-442f-9057-ce514ac92bae}:3.1.4" - ], - "unblocked": [], - "softblocked": [ - "yahoo-realtime-filter@example.com:2.4.1", - "dom-diff-inspector@yourdomain.local:3.0.0", - "clipforge@paku.local:1.0.0", - "clipforge@paku.local:1.0.1", - "down-imgs@arket:1.0.5", - "down-imgs@arket:1.0.6", - "down-imgs@arket:1.0.7", - "a.roth@c10.de:1.0.6", - "favory@sp4ce.pw:2.7.2", - "favory@sp4ce.pw:2.7.1", - "mini-memo-base@example.com:0.0.0.1", - "{858d39b9-bbab-42fc-9e94-d96926989e41}:2.0.0.2", - "{858d39b9-bbab-42fc-9e94-d96926989e41}:2.0.4.0", - "rovalra@local:2.4.2", - "rovalra@local:2.4.2.4", - "rovalra@local:2.4.3.1" - ] - }, - "schema": 1769603802914, - "key_format": "{guid}:{version}", - "stash_time": 1769625305205, - "id": "92510eba-4bb3-49eb-97d3-1f62c510325e", - "last_modified": 1769625381724 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{c98ffd67-a6fc-40fd-a851-97c2a35cc3a0}:1.0", - "healthorbit-ai@healthorbit.ai:1.0.0", - "lilin.shao@qq.com:1.0", - "{c3230521-365e-4340-9831-5079493630f9}:1.8.1.1", - "agregllm@fredb34670:1.1.4", - "jira_auto@nfz-lublin.pl:0.0.1", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.23.1", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.23.2", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.26.3", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.26.4", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.26.7", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.26.10", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.26.11", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.26.12", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.26.16", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.26.17", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.2", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.3", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.5", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.8", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.10", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.11", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.12", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.13", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.15", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.16", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:1.31.17", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:2.0.0", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:2.0.1", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:2.0.2", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:2.0.3", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:2.0.4", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:2.0.5", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:2.0.6", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:2.0.7", - "{ab3fd504-7947-4c15-a7cf-10181cc021ef}:2.0.8", - "CodeHSDelte@hacker-school.de:0.1.4" - ] - }, - "schema": 1769582190676, - "key_format": "{guid}:{version}", - "stash_time": 1769603707055, - "id": "cdd92282-9db2-4204-a4d9-02a4f3e2f891", - "last_modified": 1769603802790 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "retail-sync@monarch.com:1.0.21", - "video-sharpener@harze2k.dev:1.2.6", - "video-sharpener@harze2k.dev:1.2.7", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:4.5", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:4.0", - "civitai-forge-connector@example.com:1.0.0", - "elevenlabs-worker-v3-simple@local:3.0.5", - "elevenlabs-worker-v3-simple@local:3.0.6", - "video-sharpener@harze2k.dev:1.2.8.2", - "video-sharpener@harze2k.dev:1.2.8.1" - ] - }, - "schema": 1769560592238, - "key_format": "{guid}:{version}", - "stash_time": 1769582106629, - "id": "1c39327c-01b7-4379-b4da-e3f82789d67f", - "last_modified": 1769582190364 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "valra@media.recorder:1.0.10", - "valra@media.recorder:1.0.9", - "{ff5a5f54-4019-4be6-a1e4-60a9b6741da6}:1.0", - "multi-scrape@example.local:1.22", - "{7f2dc14a-2571-4296-a5aa-2fccc2aff852}:1.1", - "cotoit-suite@extension.local:1.2.0", - "flaggy@jnylen.nu:1.0", - "{a155b033-ec33-40d1-a9e1-3474b2f77f79}:1.0", - "video-sharpener@harze2k.dev:1.1.1", - "video-sharpener@harze2k.dev:1.0.6", - "rmftime-autofill@example.com:1.0.0", - "video-sharpener@harze2k.dev:1.2.1", - "video-sharpener@harze2k.dev:1.2.2", - "video-sharpener@harze2k.dev:1.2.5", - "video-sharpener@harze2k.dev:1.2.4", - "video-sharpener@harze2k.dev:1.2.3", - "{3ae78990-6037-4e52-b4f2-cb99ff072049}:1.0" - ] - }, - "schema": 1769538981350, - "key_format": "{guid}:{version}", - "stash_time": 1769560506555, - "id": "31c535ee-7c18-45a6-ac7b-67d12e6dfaf3", - "last_modified": 1769560592034 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "@office365relogin:1.0.0", - "@office365relogin:1.1.0", - "{f3d1050f-a694-4ae2-bb17-6bf89c90afb9}:1.0", - "bga-gpor@netpigs.net:1.0", - "favory@sp4ce.pw:2.6.8", - "{bf656f3a-345b-42d7-be1d-1c1bb7947f4f}:1.0", - "{f61861e5-c5b0-46f9-bfea-0f5933fc3af8}:1.0", - "{3b14377a-198f-424b-9e54-d2653e8e4fb6}:1.0", - "eclipse-tab@encre.com:1.0.0", - "eclipse-tab@encre.com:1.0.1", - "eclipse-tab@encre.com:1.0.2", - "eclipse-tab@encre.com:1.0.3", - "eclipse-tab@encre.com:1.0.4", - "eclipse-tab@encre.com:1.0.5", - "info@medgyd.lt:1.0", - "info@medgyd.lt:1.1", - "info@medgyd.lt:1.2", - "{08c01a08-9619-44f8-8606-1080e9f521f2}:1.0", - "{08c01a08-9619-44f8-8606-1080e9f521f2}:1.1", - "{08c01a08-9619-44f8-8606-1080e9f521f2}:1.2", - "tarkov-map-arrow@my-custom-extension:1.9", - "pricegrabber@euzentra.com:1.0.4", - "proxy-by-sites@example.com:1.8", - "proxy-by-sites@example.com:1.7", - "copy-tab-urls@example.com:1.0", - "copy-tab-urls@example.com:1.1", - "copy-tab-urls@example.com:1.2", - "{d5aefdfe-c9be-41ca-a3ef-5a760871b5c3}:1.9", - "{d5aefdfe-c9be-41ca-a3ef-5a760871b5c3}:2.2", - "{d5aefdfe-c9be-41ca-a3ef-5a760871b5c3}:3.0.0", - "{d5aefdfe-c9be-41ca-a3ef-5a760871b5c3}:3.0.1", - "{d5aefdfe-c9be-41ca-a3ef-5a760871b5c3}:3.0.2", - "{d5aefdfe-c9be-41ca-a3ef-5a760871b5c3}:3.0.3" - ] - }, - "schema": 1769517390477, - "key_format": "{guid}:{version}", - "stash_time": 1769538905446, - "id": "ec54b8a4-17bb-4815-90b8-6a14421e0036", - "last_modified": 1769538981110 - }, - { - "stash": { - "blocked": [ - "sazalbep.a.ri.5.4.54@gmail.com:2.0", - "{a92b9d7e-5729-4a56-a48d-183fd6e8b950}:1.3", - "mdshamim.m.ia.j.o.b8@gmail.com:1.0.0", - "Palitra215@Palitra215.dev:0.1.1", - "Palitra214@Palitra214.dev:0.1.1", - "Palitra213@Palitra213.dev:0.1.1", - "Palitra212@Palitra212.dev:0.1.1", - "Palitra21@Palitra21.dev:0.1.1", - "Palitra21@Palitra21.dev:0.2.1", - "hashpac2k@hashpack2.dev:0.1.1" - ], - "unblocked": [], - "softblocked": [ - "yet_another_speed_dial_rebuild@dudw:3.11.4", - "{525e49c2-aacd-4e6f-a1bf-c0ba2b283a60}:1.0", - "meediateek-allalaadija@example.com:1.1", - "{059ec54f-bd0d-4160-8215-a18e90d969b7}:1.0", - "{9fe3e3a9-ca0d-4c2f-ac16-1776f13ceb50}:1.0", - "{4bf6b62c-e62d-4f8e-aa42-e6e355137ee1}:1.0", - "{d402fb4e-06c6-44a2-8193-5fcd8b5807c1}:1.0", - "{e6935f70-4183-4fbb-9bb4-4c445c066b5b}:1.0", - "{ac2bdd16-8fc4-4a05-bfbc-075aefc9fd22}:1.0", - "quotr@eas-intl.com:1.1.7", - "{81c4a327-4188-45f7-8a4a-f1790a92d3b1}:2.1", - "{81c4a327-4188-45f7-8a4a-f1790a92d3b1}:2.2", - "address-autofiller@softwebtuts.com:0.0.9", - "address-autofiller@softwebtuts.com:0.1.4", - "address-autofiller@softwebtuts.com:0.1.5", - "address-autofiller@softwebtuts.com:0.1.7" - ] - }, - "schema": 1769495790646, - "key_format": "{guid}:{version}", - "stash_time": 1769517306568, - "id": "0a51da97-4d3d-47e8-ad6f-ce7742b87aab", - "last_modified": 1769517390268 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "Eleg-Discipline@sganti.com:1.0", - "Eleg-Discipline@sganti.com:2.0", - "{3bc7cf23-ea16-4023-aae8-09ad45323285}:1.0", - "{f7e2cea3-5356-4a8f-bb91-ca372dc07b1d}:1.2", - "{f7e2cea3-5356-4a8f-bb91-ca372dc07b1d}:1.3", - "threadjumper@Luminaera.tech:1.82", - "{a5d26837-faf7-11f0-8792-98fa9b1e9040}:0.1.1" - ] - }, - "schema": 1769474190691, - "key_format": "{guid}:{version}", - "stash_time": 1769495706324, - "id": "22f3a62c-1c15-4eb7-a79e-6a101b9f072f", - "last_modified": 1769495790445 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{95f1e97f-f924-4205-8ebf-a4e1a7a04daf}:1.0.2", - "twitch-adblock-remover@example.com:1.0", - "x-disable-recommend@example.com:1.0.0", - "x-disable-recommend-tab@example.com:1.0.1", - "{febb3170-32bb-4601-a3bf-92733e29fa4f}:0.5.0", - "{febb3170-32bb-4601-a3bf-92733e29fa4f}:0.6.0", - "{febb3170-32bb-4601-a3bf-92733e29fa4f}:0.7.0", - "{febb3170-32bb-4601-a3bf-92733e29fa4f}:0.7.1", - "{febb3170-32bb-4601-a3bf-92733e29fa4f}:0.7.2", - "{febb3170-32bb-4601-a3bf-92733e29fa4f}:0.8.0", - "{febb3170-32bb-4601-a3bf-92733e29fa4f}:0.9.0", - "{febb3170-32bb-4601-a3bf-92733e29fa4f}:0.10.0", - "{febb3170-32bb-4601-a3bf-92733e29fa4f}:0.10.1", - "{febb3170-32bb-4601-a3bf-92733e29fa4f}:0.10.2", - "{2f7e526d-acb5-4a91-b074-a6c41dad43c9}:0.10.0", - "{2f7e526d-acb5-4a91-b074-a6c41dad43c9}:0.10.1", - "{2f7e526d-acb5-4a91-b074-a6c41dad43c9}:0.11.0", - "{2f7e526d-acb5-4a91-b074-a6c41dad43c9}:0.11.1", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.5.0", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.6.0", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.6.1", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.6.2", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.7.0", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.7.1", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.7.2", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.8.0", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.8.1", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.8.2", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.9.1", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.9.2", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.9.3", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.9.4", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.12.0", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.13.0", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.14.0", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.15.0", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.16.0", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.16.1", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.17.0", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.17.1", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.17.2", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.17.3", - "{1a08c7c2-4277-4f54-83e6-cc89cc796d7b}:0.17.4" - ] - }, - "schema": 1769452594932, - "key_format": "{guid}:{version}", - "stash_time": 1769474106452, - "id": "452f8f13-3533-47a9-b7c2-910ebc50f2d2", - "last_modified": 1769474190488 - }, - { - "stash": { - "blocked": [ - "@750cc9e4-526e-4a0a-a943-f91f3baff918:1.7.5", - "@750cc9e4-526e-4a0a-a943-f91f3baff918:1.7.6", - "@aa339a7c-c7e0-4a05-b3ae-7c5b6bd3726d:2.8.7", - "@06363f8a-1b28-4aa1-a22e-4f3722ca2d99:5.3.0", - "@718418f6-2fbb-448a-b22e-3c6f01af5e96:3.0.0" - ], - "unblocked": [], - "softblocked": [ - "messenger-privacy@example.com:1.0.1", - "kontenmanager@gmx.de:2025.1.2.6", - "fast-replies@mullvad.local:1.0.0", - "mosa.albedre1@gmail.com:2.0", - "mosa.allbedre0@gmail.com:1.2", - "mosa.allbedre0@gmail.com:1.3", - "mosa.allbedre0@gmail.com:1.9", - "mosa.allbedre0@gmail.com:1.8", - "mosa.allbedre0@gmail.com:1.7", - "mosa.allbedre0@gmail.com:1.5", - "mosa.allbedre0@gmail.com:2.0", - "watani-autofill@tabadul:1.2", - "watani-autofill@tabadul:1.1", - "ticket-helper@mosa.local:1.0", - "ticket-helper@mosa.local:1.1", - "ticket-helper@mosa.local:1.2", - "mosa.albedre9@gmail.com:2.3", - "tsundoku@local:0.1.0", - "tsundoku@local:0.1.1", - "tsundoku@local:0.1.2", - "tsundoku@local:0.1.3", - "tsundoku@local:0.1.4", - "tsundoku@local:0.1.5", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.1.1", - "cors-bypass-addon@nomail.com:1.0", - "cashbox@local:1.0.1", - "cashbox@local:1.0", - "cors-bypass-addon@nomail.com:1.2", - "gmail-priority-focus@steven.local:1.0.1" - ] - }, - "schema": 1769430990205, - "key_format": "{guid}:{version}", - "stash_time": 1769452506231, - "id": "42a2494e-de80-4469-b6d4-c9824e72d23c", - "last_modified": 1769452594627 - }, - { - "stash": { - "blocked": [ - "{bb27358c-66c2-436f-ad90-edf5eaea1cef}:1.0", - "{bb27358c-66c2-436f-ad90-edf5eaea1cef}:372.6", - "{3fcb96bb-b010-4bcc-95a1-a99c92ad1a99}:1.0", - "{f857e801-4271-4bc0-a75e-749551f78cfc}:1.0", - "{cd4a0b36-1340-44a1-b52d-c80dcf29644b}:1.0", - "{f129a09e-50c2-4e0e-8ef9-c57729754eec}:1.0", - "{f129a09e-50c2-4e0e-8ef9-c57729754eec}:10921.4", - "{0ec8a631-2a6f-4b7f-9a04-d4a67b557359}:1.4.0", - "{0ec8a631-2a6f-4b7f-9a04-d4a67b557359}:1.4.1", - "{0ec8a631-2a6f-4b7f-9a04-d4a67b557359}:1.4.2", - "{88424a90-ce33-4d6d-a0f9-564de03d69d0}:1.0", - "{88424a90-ce33-4d6d-a0f9-564de03d69d0}:209.4", - "{088821a7-5835-4caa-8e65-4a8ac3f526c2}:1.0", - "{088821a7-5835-4caa-8e65-4a8ac3f526c2}:1.4", - "{bdd99b28-cec9-4835-b1f6-7f257841b2ac}:1.0", - "{bdd99b28-cec9-4835-b1f6-7f257841b2ac}:114.4", - "{e375b894-17f2-46d5-bae5-96fcfe1ac956}:1.0", - "{e375b894-17f2-46d5-bae5-96fcfe1ac956}:1.1.2", - "{1627bc55-6107-4da7-b621-8a2927585a9d}:1.0", - "{1627bc55-6107-4da7-b621-8a2927585a9d}:300929.15.2" - ], - "unblocked": [ - "{46cc18f3-9054-4edd-9441-102a1021b5d0}:1.0.5" - ], - "softblocked": [ - "{5dd08328-6a7a-4be4-82df-4b470c5d5314}:2.8.2", - "{5dd08328-6a7a-4be4-82df-4b470c5d5314}:2.8.3", - "{40420f6a-3aa4-4a54-8c97-41e46158a71e}:0.1.0", - "iam-cookies@education.lu:1.0", - "janssen-tarp@jans.io:1.16.0", - "{418c0307-f6d3-448d-8c2c-51a56e8d608d}:1.0", - "@4_in_1:1.0.0.0", - "{4e610dd0-f7d5-49fb-8e0c-ac254a263d03}:1.0", - "{4e610dd0-f7d5-49fb-8e0c-ac254a263d03}:2.0", - "mystartpage@local.dev:2.3", - "mystartpage@local.dev:2.4" - ] - }, - "schema": 1769409388122, - "key_format": "{guid}:{version}", - "stash_time": 1769430906599, - "id": "cdc3a97b-d7a2-41a4-8449-f1545186e90e", - "last_modified": 1769430990006 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "wewe3r63@gmail.com:1.0.1", - "futaba_log_refiner@my-local-extension:1.2.1", - "futaba_log_refiner@my-local-extension:1.2.3", - "futaba_log_refiner@my-local-extension:1.2.4", - "web-memo@example.com:2.5", - "web-memo@example.com:2.5.1", - "{f5e07a44-b0c0-42df-8c6a-550cb17b37ad}:2.0", - "{f5e07a44-b0c0-42df-8c6a-550cb17b37ad}:2020.3.19b", - "{f5e07a44-b0c0-42df-8c6a-550cb17b37ad}:2020.3.23", - "web-memo@example.com:2.5.2", - "{ee522a47-95a1-4534-88e4-8783f692d835}:1.4", - "{27678f20-0d24-48fc-b0d0-161e0c116be7}:3.2", - "{27678f20-0d24-48fc-b0d0-161e0c116be7}:3.3", - "web-memo@example.com:2.5.3", - "next-of-end@local:1.0", - "next-of-end@local:1.1", - "futaba_log_refiner@my-local-extension:1.4.0", - "futaba_log_refiner@my-local-extension:1.2.2", - "futaba_log_refiner@my-local-extension:1.3.0", - "futaba_log_refiner@my-local-extension:1.5.0", - "futaba_log_refiner@my-local-extension:1.4.1", - "custom-field-tool@example.com:1.1", - "xdr-nonews-block@titansofindustry.com:1.0.1" - ] - }, - "schema": 1769387783143, - "key_format": "{guid}:{version}", - "stash_time": 1769409306079, - "id": "16c90a2c-132c-4627-a967-d58c71cbec9b", - "last_modified": 1769409387892 - }, - { - "stash": { - "blocked": [ - "{0b48acff-5b83-4119-85ad-2304bb821843}:1.0", - "{0b48acff-5b83-4119-85ad-2304bb821843}:3.7.1", - "{c754bba5-6224-46b9-a79b-14880b79a1b7}:1.0", - "{c754bba5-6224-46b9-a79b-14880b79a1b7}:3.7.1", - "{96e6bdb0-ce8a-45b2-9899-a4ae2d33ec8a}:1.0", - "{96e6bdb0-ce8a-45b2-9899-a4ae2d33ec8a}:3.7.1" - ], - "unblocked": [], - "softblocked": [ - "chim-chat@extension:2.18", - "chim-chat@extension:2.17", - "{ee522a47-95a1-4534-88e4-8783f692d835}:1.3", - "{9221c5ed-7a88-4cae-995e-725d98b32872}:1.3", - "{9221c5ed-7a88-4cae-995e-725d98b32872}:1.4", - "ytm-noslop@zopi.eu:1.4.0", - "{0962e2c5-da83-4b6a-9851-a3e020f3bb97}:1.7.1", - "{0962e2c5-da83-4b6a-9851-a3e020f3bb97}:1.7.2", - "{0962e2c5-da83-4b6a-9851-a3e020f3bb97}:1.7.3", - "{4314d6c1-3332-4bed-a82a-ab46f8cb4cfe}:1.0", - "{648bdc74-94c6-4196-8789-d5947268867c}:3.4", - "{648bdc74-94c6-4196-8789-d5947268867c}:3.3", - "{6eba4401-a168-44ca-a734-8a501b357822}:1.0", - "textsbert@textsbert.com:0.1.34.3", - "favory@sp4ce.pw:2.6.7" - ] - }, - "schema": 1769366189669, - "key_format": "{guid}:{version}", - "stash_time": 1769387705690, - "id": "911c4349-9a11-4f79-bc61-e5d80fa31134", - "last_modified": 1769387782930 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{5194A9E5-5EC0-410E-BA4F-62A13EDBA7CD}:1.0.1", - "{4b16f5ce-c487-4994-96db-74c05f75674c}:1.0.0", - "{13e8a587-64b3-48b6-9864-87ef688c9e51}:1.0.1", - "RemoveInitialTab@FirstTab:1.0", - "{13e8a587-64b3-48b6-9864-87ef688c9e51}:1.0.0", - "{13e8a587-64b3-48b6-9864-87ef688c9e51}:1.0.2", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.1.0", - "concealbrowse@conceal.io:1.1.0.0", - "concealbrowse@conceal.io:1.1.1.0", - "concealbrowse@conceal.io:1.1.3.0", - "concealbrowse@conceal.io:1.1.4.0", - "concealbrowse@conceal.io:1.2.0.0", - "concealbrowse@conceal.io:1.2.1.0", - "concealbrowse@conceal.io:1.2.2.0", - "reset-psw@comune.sanvincenzo.li.it:1.0", - "reset-psw@comune.sanvincenzo.li.it:1.0.1", - "reset-psw@comune.sanvincenzo.li.it:1.1.0", - "reset-psw@comune.sanvincenzo.li.it:1.1.1" - ] - }, - "schema": 1769344589568, - "key_format": "{guid}:{version}", - "stash_time": 1769366106098, - "id": "f961fda1-9949-42e7-a2d2-c912e95f837f", - "last_modified": 1769366189472 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "@jules-code-scraper:1.5.0", - "{aff461a6-bfb9-41d3-b7dd-5851530717dc}:0.1", - "futaba_log_refiner@my-local-extension:1.1.9", - "futaba_log_refiner@my-local-extension:1.2.0" - ] - }, - "schema": 1769322981415, - "key_format": "{guid}:{version}", - "stash_time": 1769344506344, - "id": "84c91561-7007-4a13-be5b-54f0bd9193ce", - "last_modified": 1769344589363 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "yt-exact-age@example.com:1.0", - "yt-exact-age@example.com:1.1", - "yt-exact-age@example.com:1.2", - "mozeidon-dev@ac.local:3.1", - "mozeidon-dev@ac.local:3.2", - "{a98b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d}:2.3", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.0.8", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.0.9", - "{a0b96cb6-2142-4aec-987c-0f3888805fdc}:1.0", - "{a0b96cb6-2142-4aec-987c-0f3888805fdc}:1.1", - "battles-replay@teambattles.gg:1.9.5", - "battles-replay@teambattles.gg:1.9.4", - "battles-replay@teambattles.gg:1.9.3", - "battles-replay@teambattles.gg:1.9.2", - "battles-replay@teambattles.gg:1.9.1", - "battles-replay@teambattles.gg:1.9.0", - "battles-replay@teambattles.gg:2.0.0" - ] - }, - "schema": 1769301390582, - "key_format": "{guid}:{version}", - "stash_time": 1769322905835, - "id": "526ad46f-9eca-45a9-8631-80d136bbd6ef", - "last_modified": 1769322981211 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "Foxden@VisorCraft:1.0.4", - "Foxden@VisorCraft:1.0.5", - "youtube-min-duration-filter@example.local:1.0.0", - "Foxden@VisorCraft:1.0.7", - "{6fcfbe86-e569-4247-be0a-2ad6cc70a59d}:11.4", - "opl@onlinepicketline.org:2.0.0", - "Foxden@VisorCraft:1.0.8", - "{563e011a-2c77-4676-a390-b4fac0ce8e62}:1.5", - "Foxden@VisorCraft:1.0.9", - "volumen@mi.propio.id:2.0.9", - "@tomo-helper:1.0", - "subtitles-downloader@subtiltee.com:1.0.0", - "subtitles-downloader@subtiltee.com:1.0.1", - "subtitles-downloader@subtiltee.com:1.1.0", - "subtitles-downloader@subtiltee.com:1.2.0", - "subtitles-downloader@subtiltee.com:1.4.0", - "subtitles-downloader@subtiltee.com:1.4.1", - "puresnorlax@gmail.com:1.0.0", - "puresnorlax@gmail.com:1.0.1", - "Foxden@VisorCraft:1.0.10", - "send-to-x4@xatpy.dev:1.0.0", - "Foxden@VisorCraft:1.0.11", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.0.7", - "Foxden@VisorCraft:1.0.12", - "{b201f767-e14a-4219-9c43-3423f66d81a5}:1.0" - ] - }, - "schema": 1769279778864, - "key_format": "{guid}:{version}", - "stash_time": 1769301306581, - "id": "2ead4b39-9723-41bb-9451-974d05217e5a", - "last_modified": 1769301390155 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "futaba_log_refiner@my-local-extension:1.1.3", - "{42e7f701-cedb-44c4-8740-fdfff2b821e0}:3.0.6", - "{42e7f701-cedb-44c4-8740-fdfff2b821e0}:3.0.5", - "{d958574a-dafd-401b-830d-057683c50354}:1.0.0", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.0", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.1", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.1.1", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.1.2", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.1.3", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.2", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.2.1", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.2.2", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.2.3", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.3.1", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.3.2", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.3.3", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.3.4", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.3.5", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.3.6", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.4.0", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.4.1", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.5.1", - "{97e2ed84-dc3b-462a-b292-a14fe59ffeef}:1.5.2", - "{7c1dc351-6f6b-4cbc-bbfe-a8a2b7c3cc0d}:1.0", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.0.0", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.0.1", - "{4356487b-75be-46bd-b8f6-44c7fae168c0}:1.0", - "futaba_log_refiner@my-local-extension:1.1.0", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.0.2", - "futaba_log_refiner@my-local-extension:1.1.4", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.0.3", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.0.4", - "futaba_log_refiner@my-local-extension:1.1.5", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.0.5", - "futaba_log_refiner@my-local-extension:1.1.6", - "{8b1c822a-085d-4db1-87e4-a067b42006a4}:1.2.2", - "{8b1c822a-085d-4db1-87e4-a067b42006a4}:1.0", - "{8b1c822a-085d-4db1-87e4-a067b42006a4}:1.2", - "{8b1c822a-085d-4db1-87e4-a067b42006a4}:1.2.1", - "futaba_log_refiner@my-local-extension:1.1.7", - "{e4760449-4d85-4039-9f97-1d67905c436e}:1.1.2", - "@tabcollectoricecatextension:1.1.1", - "futaba_log_refiner@my-local-extension:1.1.8", - "{3244c550-6d4b-44d1-9287-1fd5166b2f9c}:1.0.6", - "gscoke@gmail.com:3.3.1", - "wallyxtyyensyion@ele.com:1", - "wallyxtyensyion@ele.com:1", - "michikora@agsystem.org:3.3.2", - "michikora@agsystem.org:3.3.1", - "michikora@agsystem.org:3.3.3", - "Foxden@VisorCraft:1.0.2", - "Foxden@VisorCraft:1.0.3" - ] - }, - "schema": 1769258194357, - "key_format": "{guid}:{version}", - "stash_time": 1769279705537, - "id": "7816300a-c5f5-4bd6-9c16-8b8fa82c2f95", - "last_modified": 1769279778635 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "my-switch@debian:1.1", - "yulaf-youtube-filter@vakkaskarakurt.com:1.0.7", - "yulaf-youtube-filter@vakkaskarakurt.com:2.1.3", - "my-switch@debian:1.2", - "{6b8f3647-59c7-4f5e-a768-6608555f8963}:1.0", - "my-switch@debian:1.3", - "futaba_log_refiner@my-local-extension:1.0.3", - "futaba_log_refiner@my-local-extension:1.0.4", - "futaba_log_refiner@my-local-extension:1.0.5", - "my-switch@debian:1.4", - "{6cb6cf8a-d704-4027-a87c-d33f214b1d9c}:2.0", - "{6cb6cf8a-d704-4027-a87c-d33f214b1d9c}:3.0", - "{6cb6cf8a-d704-4027-a87c-d33f214b1d9c}:4", - "{020f75df-ad0d-4318-8eab-2f25206a254d}:4", - "{b7fd5752-b38c-4e12-b83b-03880ea5d9d0}:1.0", - "{b7fd5752-b38c-4e12-b83b-03880ea5d9d0}:1.1", - "{f964e05a-34f2-41c0-9f35-c48ba0798d21}:1.0", - "{f964e05a-34f2-41c0-9f35-c48ba0798d21}:2.0", - "futaba_log_refiner@my-local-extension:1.0.6", - "futaba_log_refiner@my-local-extension:1.0.7", - "futaba_log_refiner@my-local-extension:1.0.8", - "futaba_log_refiner@my-local-extension:1.0.10", - "futaba_log_refiner@my-local-extension:1.0.11", - "futaba_log_refiner@my-local-extension:1.1.1", - "seivit@example.com:0.1.8", - "keyword-monitor@example.com:1.1", - "keyword-monitor@example.com:1.3", - "{a0e72d0d-ff22-4267-aabf-f710fb8c834c}:1.1", - "futaba_log_refiner@my-local-extension:1.1.2" - ] - }, - "schema": 1769236579225, - "key_format": "{guid}:{version}", - "stash_time": 1769258106846, - "id": "a60ab0fc-3dca-4b28-931b-d4929eb7d209", - "last_modified": 1769258194156 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "picpay-autologin@luckyfurrex:1.0", - "generated-ljvnf6187m9jg8soij74iz@chrome-store-foxified-506399689:7.8", - "generated-ljvnf6187m9jg8soij74iz@chrome-store-foxified-506399689:9.2", - "@Search-mref-field:1.0", - "{df78d414-b9a8-40d7-bc06-05f7a3ca6d09}:2.3", - "{df78d414-b9a8-40d7-bc06-05f7a3ca6d09}:2.2", - "my-switch@debian:1.0" - ] - }, - "schema": 1769214990873, - "key_format": "{guid}:{version}", - "stash_time": 1769236505303, - "id": "5a200a29-059f-4f9a-bb6f-d13dcf728cb6", - "last_modified": 1769236578987 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "ss@example.com:1.0.3", - "multi-scrape@example.local:1.21", - "@betterkick.persistent_avenger:1.0.0", - "@betterkick.persistent_avenger:1.0.2", - "{80c56608-4763-4e54-aff7-02d95c06d0fb}:0.3.0", - "{093fdd56-cac1-4d24-8fa3-7a3fbf4f71a3}:1.0", - "{093fdd56-cac1-4d24-8fa3-7a3fbf4f71a3}:1.1", - "888system888@example.com:1.1", - "888system888@example.com:1.3", - "github-contrib-graph@aaronfeledy.com:1.2.0", - "simple-snip-pinboard@example.com:4.8", - "simple-snip-pinboard@example.com:4.9", - "youtube-grabber@example.com:1.0.0", - "{f129a09e-50c2-4e0e-8ef9-c57729754eec}:300929.15.2" - ] - }, - "schema": 1769193390638, - "key_format": "{guid}:{version}", - "stash_time": 1769214906207, - "id": "55aa3144-1977-462d-857b-1b85d98a43fb", - "last_modified": 1769214990753 - }, - { - "stash": { - "blocked": [ - "{1c64caee-eabb-4bf1-bd8b-ce6e671d71e2}:4.3.11", - "{1c64caee-eabb-4bf1-bd8b-ce6e671d71e2}:4.4.11", - "{1c64caee-eabb-4bf1-bd8b-ce6e671d71e2}:4.5.11", - "{1c64caee-eabb-4bf1-bd8b-ce6e671d71e2}:4.8.13", - "{1c64caee-eabb-4bf1-bd8b-ce6e671d71e2}:4.9.13", - "{d1b40569-b0e1-4618-b6c9-adbb8b2c8393}:1.0.8", - "{d1b40569-b0e1-4618-b6c9-adbb8b2c8393}:1.8.13", - "{d1b40569-b0e1-4618-b6c9-adbb8b2c8393}:1.9.13", - "{d1b40569-b0e1-4618-b6c9-adbb8b2c8393}:1.11.15", - "{fc7a8c88-ff62-4db0-a7f8-7d6fccfdc5fd}:1.1.29", - "{fc7a8c88-ff62-4db0-a7f8-7d6fccfdc5fd}:1.2.29", - "qrcode.oren.chan@gmail.com:4.3.3", - "qrcode.oren.chan@gmail.com:4.3.5", - "{2915dd2b-ee17-44fe-a65d-a64e7b7eab8b}:1.31", - "{183cd3be-56b0-4a98-ad3a-8a168d3fe10b}:7.4.1", - "{c14b737d-dc85-4361-81da-f089551516fe}:7.4.0", - "{142ae0ee-4e38-4567-9fdc-d060e8e28948}:3.3.29", - "{8178af84-deed-498b-91fc-70054902f61c}:6.4.18.31", - "{9065c646-2cf0-4a65-9a11-0239c41df6e4}:6.4.18.31", - "{2de14ad0-1274-4fe3-9624-991c98a8a308}:7.3.5", - "{0bf67acb-f7c7-4b87-b8d2-0ff7081efb96}:6.4.19.32", - "{cce53464-fe3d-42a8-952d-cc538a5dec3f}:3.3.29", - "{03a400a3-252b-4bbd-a0a2-b5119f55e79c}:5.27.18.31", - "{2ed201a3-ce1e-49e5-9506-7502938162f8}:4.4.0", - "{eaa50fb0-b696-41bc-b098-5527ca906cf0}:2.10.0", - "{eaa50fb0-b696-41bc-b098-5527ca906cf0}:2.10.1", - "{eaa50fb0-b696-41bc-b098-5527ca906cf0}:2.10.2", - "{eaa50fb0-b696-41bc-b098-5527ca906cf0}:2.10.3", - "{79b8fbbf-bb7c-478e-b98c-4eb1577e5990}:2.1.8", - "Palitra211212@Palitra21121.dev:0.1.1", - "Palitra21122@Palitra2112.dev:0.1.1", - "Palitra2113@Palitra2113.dev:0.1.1", - "Palitra2112@Palitra2112.dev:0.1.1", - "Palitra2111@Palitra2111.dev:0.1.1", - "{6756c4b6-3200-473c-85b7-79a7950aa948}:3.7.4", - "{6756c4b6-3200-473c-85b7-79a7950aa948}:3.7.5", - "{1b647fa4-994c-47e8-8297-ec6e162d42e6}:1.2", - "{1b647fa4-994c-47e8-8297-ec6e162d42e6}:1.8", - "{1b647fa4-994c-47e8-8297-ec6e162d42e6}:2.0" - ], - "unblocked": [], - "softblocked": [ - "extension@scrapflow.com:1.0", - "{cdea0f81-9881-467e-b8d0-1446c3379306}:1.0.1", - "{cdea0f81-9881-467e-b8d0-1446c3379306}:1.0.2", - "{cdea0f81-9881-467e-b8d0-1446c3379306}:1.0.3", - "odysseus-01-21-2026@themast.com:1.2.0", - "multi-scrape@example.local:1.19", - "{c6696ffb-6755-40a5-8db3-0f5ed5bb70af}:4.2.7", - "{c6696ffb-6755-40a5-8db3-0f5ed5bb70af}:4.2.8", - "{992b29d4-693a-40da-9afa-98ddd0551336}:1.0" - ] - }, - "schema": 1769171796060, - "key_format": "{guid}:{version}", - "stash_time": 1769193306024, - "id": "9e01f2c7-23cb-4176-9ad6-2df60dfe1395", - "last_modified": 1769193390449 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "saml-cookies@yourdomain.local:1.0", - "eci-tracker@yourname.com:2.0", - "{bf468e8f-88b8-4746-94a0-2df6e71046f1}:1.0", - "extension@linkwy.com:1.0.0", - "{b5b1f950-d285-4405-ad7c-0fe10413533c}:1.0", - "{821f2f2c-0d87-41a6-b183-6d6224ee1e65}:1.0", - "{79eb3548-cb69-428f-9539-56e84836b036}:1.0", - "{79eb3548-cb69-428f-9539-56e84836b036}:1.2", - "{f85d2c36-caec-4551-85e5-038f63c9ab66}:2.0.21", - "mine-memo-base@example.com:0.1", - "mine-memo-base@example.com:0.1.1", - "mine-memo-base@example.com:0.1.1.1", - "open2ch@db3.so-net.ne.jp:0.2.3", - "open2ch@db3.so-net.ne.jp:0.2.4" - ] - }, - "schema": 1769150180099, - "key_format": "{guid}:{version}", - "stash_time": 1769171707552, - "id": "c70f1824-6484-4e9c-82bc-b255f0585d19", - "last_modified": 1769171795942 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "arc-mdn@mojokerto.id:2.5", - "arc-mdn@mojokerto.id:2.7", - "{8f999adb-bd01-4075-bb81-5d2540c2c4ac}:1.3", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:4.3", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:4.2", - "yet_another_speed_dial_rebuild@dudw:3.11.5", - "{44dd2281-c686-46e5-9aba-16534d7c14de}:1.0", - "{e7891ffd-8be5-4279-9931-0251b624bc98}:1.0", - "yahoo-realtime-filter@example.com:2.4" - ] - }, - "schema": 1769128592382, - "key_format": "{guid}:{version}", - "stash_time": 1769150105135, - "id": "c787d7b4-8883-4b18-8872-ff6ed916bca8", - "last_modified": 1769150179973 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "slowed-reverb-studio@audiothing.v3:2.0", - "{3d30d8a8-bb19-411e-9c43-3ae15067580c}:1.0", - "osiris-demo@hackathon.local:1.0", - "ztn-proxy@ztn.app:1.0", - "colorify@matus.local:1.0", - "colorify@matus.local:1.1", - "colorify@matus.local:1.2", - "{ba7188d1-65f7-4491-ba88-5ee1b334b610}:1.0", - "{e5945de4-2bc7-4900-848f-8447f9951dc4}:0.2.2", - "colorify@hello.local:1.2", - "colorify@hello.local:1.3", - "colorify@hello.local:1.4", - "simple-snip-pinboard@example.com:4.6", - "simple-snip-pinboard@example.com:4.5", - "simple-snip-pinboard@example.com:4.4", - "simple-snip-pinboard@example.com:4.3", - "simple-snip-pinboard@example.com:4.1", - "simple-snip-pinboard@example.com:4.0", - "simple-snip-pinboard@example.com:3.0", - "simple-snip-pinboard@example.com:1.18" - ] - }, - "schema": 1769106992173, - "key_format": "{guid}:{version}", - "stash_time": 1769128506378, - "id": "e75a5b7a-a7b5-451a-b5e7-7accade62523", - "last_modified": 1769128592022 - }, - { - "stash": { - "blocked": [ - "{c448872b-58f9-413e-8e3d-650fe708448e}:2.0.0", - "{c448872b-58f9-413e-8e3d-650fe708448e}:2.0.1", - "{c448872b-58f9-413e-8e3d-650fe708448e}:2.0.2", - "{c448872b-58f9-413e-8e3d-650fe708448e}:2.0.6", - "{57928fac-c9fa-44f5-be78-d185d67346c2}:4.1.5", - "{57928fac-c9fa-44f5-be78-d185d67346c2}:4.1.6", - "{57928fac-c9fa-44f5-be78-d185d67346c2}:4.1.7", - "{57928fac-c9fa-44f5-be78-d185d67346c2}:4.1.8", - "{57928fac-c9fa-44f5-be78-d185d67346c2}:4.1.9", - "{57928fac-c9fa-44f5-be78-d185d67346c2}:4.2.1", - "gemxrp-profiles@gemwallet.app:0.1.1", - "gemxrp-profiles@gemwallet.app:0.1.2", - "text-highlighter-670866@autoex.local:1.0.0", - "link-collector-687032@autoex.local:1.0.0", - "copy-all-text-428791@autoex.local:1.0.0", - "color-picker-130998@autoex.local:1.0.0", - "copy-clean-title-203840@autoex.local:1.0.0", - "url-shortener-842677@autoex.local:1.0.0", - "qr-code-generator-541750@autoex.local:1.0.0", - "color-picker-329889@autoex.local:1.0.0", - "cookie-viewer-268804@autoex.local:1.0.0", - "page-load-timer-681664@autoex.local:1.0.0", - "meta-tags-viewer-621691@autoex.local:1.0.0", - "dark-mode-toggle-493995@autoex.local:1.0.0", - "cookie-viewer-513632@autoex.local:1.0.0", - "color-picker-120336@autoex.local:1.0.0", - "toggle-sans-serif-312010@autoex.local:1.0.0", - "url-shortener-345953@autoex.local:1.0.0", - "link-collector-537783@autoex.local:1.0.0", - "copy-clean-title-454496@autoex.local:1.0.0", - "color-picker-061720@autoex.local:1.0.0", - "quick-note-saver-574754@autoex.local:1.0.0", - "quick-clip-organizer-881276@autoex.local:1.0.0", - "quick-color-picker-205805@autoex.local:1.0.0", - "quick-clip-reminder-353634@autoex.local:1.0.0", - "focus-timer-816060@autoex.local:1.0.0", - "quick-mood-tracker-657986@autoex.local:1.0.0", - "quick-notes-helper-657611@autoex.local:1.0.0", - "quick-notes-capture-853548@autoex.local:1.0.0", - "quick-access-notes-801522@autoex.local:1.0.0", - "focus-timer-803581@autoex.local:1.0.0", - "quick-color-picker-865641@autoex.local:1.0.0", - "quick-mood-tracker-589024@autoex.local:1.0.0", - "quick-note-capture-386260@autoex.local:1.0.0", - "quick-color-picker-382647@autoex.local:1.0.0", - "focus-timer-754919@autoex.local:1.0.0", - "quick-color-picker-235622@autoex.local:1.0.0", - "quick-notes-capture-524527@autoex.local:1.0.0", - "quick-note-capture-588818@autoex.local:1.0.0", - "quick-color-picker-636341@autoex.local:1.0.0", - "focus-timer-713466@autoex.local:1.0.0", - "image-extractor-787195@autoex.local:1.0.0", - "font-size-adjuster-911487@autoex.local:1.0.0", - "meta-tags-viewer-970722@autoex.local:1.0.0", - "cookie-viewer-975017@autoex.local:1.0.0", - "reading-time-estimator-027059@autoex.local:1.0.0", - "url-shortener-025853@autoex.local:1.0.0", - "toggle-sans-serif-039731@autoex.local:1.0.0", - "scroll-to-top-398943@autoex.local:1.0.0", - "table-to-csv-395819@autoex.local:1.0.0", - "copy-all-text-141342@autoex.local:1.0.0", - "qr-code-generator-544215@autoex.local:1.0.0", - "color-picker-545395@autoex.local:1.0.0", - "dark-mode-toggle-542497@autoex.local:1.0.0", - "text-highlighter-542271@autoex.local:1.0.0", - "quick-note-taker-493894@autoex.local:1.0.0", - "quick-note-saver-493615@autoex.local:1.0.0", - "quick-note-taker-481919@autoex.local:1.0.0", - "reading-time-estimator-477240@autoex.local:1.0.0", - "quick-note-saver-488506@autoex.local:1.0.0", - "quick-note-saver-485261@autoex.local:1.0.0", - "toggle-sans-serif-780982@autoex.local:1.0.0", - "password-generator-299251@autoex.local:1.0.0", - "remove-ads-306100@autoex.local:1.0.0", - "color-picker-427680@autoex.local:1.0.0", - "wigwam@wigwam.dev:0.1.1", - "nami@nami.dev:0.1.1", - "compas@compas.dev:0.1.1", - "lobstr@lobstr.dev:0.1.1", - "xaman@xaman.dev:0.1.1", - "xaman@xaman.dev:0.2.1", - "{57b5d4df-93d7-4e3a-af51-df6b0a384f3b}:1.0" - ], - "unblocked": [], - "softblocked": [ - "kazcfz@copy-n-paste:1.5.1", - "kazcfz@copy-n-paste:1.5.2", - "kazcfz@copy-n-paste:1.5.3", - "kazcfz@copy-n-paste:1.5.4", - "kazcfz@copy-n-paste:1.5.5", - "kazcfz@copy-n-paste:1.5.6", - "kazcfz@copy-n-paste:1.5.7", - "kazcfz@copy-n-paste:1.5.7.1", - "kazcfz@copy-n-paste:1.5.8", - "kazcfz@copy-n-paste:1.5.9", - "kazcfz@copy-n-paste:1.5.10", - "kazcfz@copy-n-paste:1.6.0", - "kazcfz@copy-n-paste:1.6.1", - "kazcfz@copy-n-paste:1.6.2", - "kazcfz@copy-n-paste:1.6.3", - "kyc010420@hanmail.net:1.0", - "editorseguro-obs@asisa.co:1.4.1", - "editorseguro-obs2@asisa.co:1.4.1", - "editorseguro-obs3@asisa.co:1.4.1", - "editorseguro-obs4@asisa.co:1.4.1", - "editorseguro-obs5@asisa.co:2.0", - "multi-scrape@example.local:1.0.2", - "multi-scrape@example.local:1.0.3", - "multi-scrape@example.local:1.0.4", - "multi-scrape@example.local:1.10", - "multi-scrape@example.local:1.11", - "multi-scrape@example.local:1.12", - "multi-scrape@example.local:1.13", - "multi-scrape@example.local:1.14", - "multi-scrape@example.local:1.15", - "multi-scrape@example.local:1.16", - "bookmarks@gamemodels3d.com:1.2", - "multi-scrape@example.local:1.17", - "multi-scrape@example.local:1.18", - "{91e9193f-72b5-4cb8-823b-13ea0f130d27}:2.0.6", - "{d6558581-1810-4b6d-bc06-a89c8f9f675e}:10.10", - "{79b8fbbf-bb7c-478e-b98c-4eb1577e5990}:2.1.7", - "{79b8fbbf-bb7c-478e-b98c-4eb1577e5990}:2.1.6", - "{0159b97e-e6d6-4d68-872e-40f3751c0428}:4.2.4", - "{6d2cd2c8-7bb5-444f-beba-1bcce5b0307e}:5.4.3", - "{6d2cd2c8-7bb5-444f-beba-1bcce5b0307e}:5.4.5", - "{6d2cd2c8-7bb5-444f-beba-1bcce5b0307e}:5.4.6", - "{87f7c179-cc96-4663-ac8b-a20f4c9e449b}:2.3.2" - ] - }, - "schema": 1769085392013, - "key_format": "{guid}:{version}", - "stash_time": 1769106906623, - "id": "8566570a-7f3f-4a22-ab2e-96ff74c1b71c", - "last_modified": 1769106991947 - }, - { - "stash": { - "blocked": [ - "{a4c5f8d2-7b9e-4e1c-9a3f-6d2b8c1e4f9a}:1.0.0", - "{a4c5f8d2-7b9e-4e1c-9a3f-6d2b8c1e4f9a}:2.0.0", - "{a4c5f8d2-7b9e-4e1c-9a3f-6d2b8c1e4f9a}:3.0.0", - "{a4c5f8d2-7b9e-4e1c-9a3f-6d2b8c1e4f9a}:4.0.0", - "{a4c5f8d2-7b9e-4e1c-9a3f-6d2b8c1e4f9a}:5.0.0", - "JupiterDeveloper@proton.me:1.10.0", - "JupiterDeveloper@proton.me:3.10.0", - "{608a9bdc-704b-4340-a200-27cd014e8a8d}:1.0", - "{608a9bdc-704b-4340-a200-27cd014e8a8d}:1.1.2", - "{441d6a0c-55f5-480f-91ce-e016aa533bfc}:1" - ], - "unblocked": [], - "softblocked": [ - "redirector@ai.int:0.1", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.5.4", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.5.3", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.0.0", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.3.1", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.4.1", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.4.2", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.4.3", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.5.0", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.5.0.1", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.5.1", - "{a3928358-883e-4730-858a-5e39aacea6cc}:1.5.2.2", - "kevin.salanier@epitech.eu:1.0.0", - "ebisu-checkout-alert-1-1-1@example.com:1.1.1", - "priceradar@priceradar.cloud:6.85.30", - "priceradar@priceradar.cloud:6.85.31", - "priceradar@priceradar.cloud:6.85.32", - "priceradar@priceradar.cloud:6.85.35", - "priceradar@priceradar.cloud:6.85.36", - "priceradar@priceradar.cloud:6.85.37", - "priceradar@priceradar.cloud:6.85.38", - "priceradar@priceradar.cloud:6.85.39", - "priceradar@priceradar.cloud:6.85.40", - "priceradar@priceradar.cloud:6.85.41", - "priceradar@priceradar.cloud:6.85.42", - "priceradar@priceradar.cloud:6.85.43", - "priceradar@priceradar.cloud:6.85.45", - "priceradar@priceradar.cloud:6.85.46", - "@TabURLCopier:1.0", - "{b244b990-8133-483c-b684-132cfa56c16c}:1.0", - "{b244b990-8133-483c-b684-132cfa56c16c}:1.2", - "{1d6cb6b4-cc88-48b3-99aa-498c80a4d745}:1.0", - "{1d6cb6b4-cc88-48b3-99aa-498c80a4d745}:2.0", - "{c40eca14-cbc8-4389-a3d0-cb3789aa6372}:1.0", - "{c40eca14-cbc8-4389-a3d0-cb3789aa6372}:2.0", - "{dd169b6a-110e-4466-bdfa-4daee0cd23f2}:1.0", - "{dd169b6a-110e-4466-bdfa-4daee0cd23f2}:2.0", - "{26bc8d26-9575-4628-8a3a-d53687524251}:1.0", - "{26bc8d26-9575-4628-8a3a-d53687524251}:2.0", - "{9e32dda4-fd87-46a3-9f64-c54e55a43888}:1.0", - "{9e32dda4-fd87-46a3-9f64-c54e55a43888}:2.0", - "{0de64374-325c-49be-bcd9-d0775c635b0d}:1.0", - "{0de64374-325c-49be-bcd9-d0775c635b0d}:2.0", - "{9c6dcc61-6a5b-467c-9e93-fbe546b8caaf}:1.0", - "{9c6dcc61-6a5b-467c-9e93-fbe546b8caaf}:2.0" - ] - }, - "schema": 1769063792849, - "key_format": "{guid}:{version}", - "stash_time": 1769085307009, - "id": "6bdfbc92-cb5a-41e0-8cb8-6194ae9b92f9", - "last_modified": 1769085391899 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "element-hider@yourname.com:1.1", - "{0f550d74-1c27-4596-ace8-5ab5aa132e80}:1.0", - "novapadev-ai-translator@novapadev-v2.2:1.0.0", - "novapadev-ai-translator@novapadev-v2.1:1.0.0", - "simple-translate@tuhoang:3.0.1", - "media-bridge@mediabridge.addon:1.0.0", - "yt-video-toggle@personal.local:1.0.0" - ] - }, - "schema": 1769042190683, - "key_format": "{guid}:{version}", - "stash_time": 1769063707083, - "id": "c87d633d-edf4-457d-a68f-d3cd96ba1002", - "last_modified": 1769063792733 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "kinozalhelper@elektrikis.id.lv:3.8.0", - "instagram-media-downloader-v1@kitten217.simplelogin.com:1.0.0", - "accounts.firefox.com.kitten217@simplelogin.com:1.0", - "{768f2162-b3be-4ff0-813c-e2512508481c}:2.0.0", - "{768f2162-b3be-4ff0-813c-e2512508481c}:1.0.0", - "{e3232b6a-8892-481c-abb6-0e845f1a811e}:1.0", - "{f1aab602-8c92-455e-80b1-0d2a05227ead}:0.0.1", - "{f1aab602-8c92-455e-80b1-0d2a05227ead}:0.0.2", - "{f1aab602-8c92-455e-80b1-0d2a05227ead}:0.0.3", - "{f1aab602-8c92-455e-80b1-0d2a05227ead}:0.0.4", - "{cfd2c47f-fa71-42bd-b547-8d251eab738c}:1.0" - ] - }, - "schema": 1769020591005, - "key_format": "{guid}:{version}", - "stash_time": 1769042106277, - "id": "9ddf1749-253a-49f0-9307-64d57d13701f", - "last_modified": 1769042190574 - }, - { - "stash": { - "blocked": [ - "@cae75f41-4720-45c4-8117-29a127724661:3.1.2", - "OneKey@OneKey.dev:0.1.1", - "aps@petra.dev:0.2.1", - "PattyHunt1215@outlook.com:1.1.1" - ], - "unblocked": [], - "softblocked": [ - "concealbrowse@conceal.io:0.9.0.0", - "concealbrowse@conceal.io:0.11.2.0", - "concealbrowse@conceal.io:0.11.5.0", - "dex-submit@p-wall.github.io:0.1.0", - "dex-submit@p-wall.github.io:0.1.1", - "dex-submit@p-wall.github.io:0.1.2", - "dex-submit@p-wall.github.io:0.1.3", - "steps-browser-addon@bertschinnovation.com:1.0.7", - "steps-browser-addon@bertschinnovation.com:1.1", - "steps-browser-addon@bertschinnovation.com:1.0.8", - "social-media-remover@example.com:1.0.0", - "social-media-remover@example.com:1.0.1", - "social-media-remover@example.com:1.0.2" - ] - }, - "schema": 1768998990704, - "key_format": "{guid}:{version}", - "stash_time": 1769020506693, - "id": "54f7fc71-68f7-480b-8833-444fc5fed07a", - "last_modified": 1769020590785 - }, - { - "stash": { - "blocked": [ - "{60090b36-a664-4c1e-a0e4-40964d5aaaab}:5.2.4", - "{60090b36-a664-4c1e-a0e4-40964d5aaaab}:5.2.5", - "{60090b36-a664-4c1e-a0e4-40964d5aaaab}:5.2.6" - ], - "unblocked": [ - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:0.0.1", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:1.0.1", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:1.0.2", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:1.0.3", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:1.1.0", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:1.1.1" - ], - "softblocked": [ - "suporte@habeasid.com.br:1.1", - "@wondersgroup.com2:1.2.0", - "{aadb0b3b-863c-4339-a92a-33cb66af2f94}:1.0", - "{898eb224-0470-4662-9f87-4e65b0ff10ee}:1.0", - "kyc-validator@your-domain.com:1.0", - "kyc-validator@your-domain.com:2.0", - "insta-dms-worker@example.com:1.0.1", - "{222ffe20-e3ec-4dcd-9783-b1608b05feff}:1.0", - "{611cdf39-2759-42bc-8954-a8582aae15be}:1.0", - "{00b424e4-4b59-4c0e-a973-acb3624b9a60}:0.1.2.1", - "@brightdata-proxy-extension:1.600.155", - "{89dacfe7-22fd-4274-b63b-0d6111b1e577}:6.0.2" - ] - }, - "schema": 1768977380274, - "key_format": "{guid}:{version}", - "stash_time": 1768998906816, - "id": "821c4d3b-4e41-4c00-8d56-9ae2f76e38ea", - "last_modified": 1768998990595 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{6c616888-fb42-46bd-8020-b0a6158aa3e2}:1.0", - "mozilla@sudovanilla.org:2.1", - "mozilla@sudovanilla.org:2.0", - "decentivizer@dh:1.0", - "test824u75@example.com:8.2.4", - "test824u74@example.com:8.2.4", - "test824u84@example.com:8.2.4", - "{5b7d47de-1a06-477a-bcdc-2a2c2f1d7adb}:8.2.4", - "simple-snip-pinboard@example.com:1.15", - "simple-snip-pinboard@example.com:1.14", - "simple-snip-pinboard@example.com:1.13", - "simple-snip-pinboard@example.com:1.5", - "simple-snip-pinboard@example.com:1.10", - "simple-snip-pinboard@example.com:1.9", - "simple-snip-pinboard@example.com:1.8", - "simple-snip-pinboard@example.com:1.7", - "simple-snip-pinboard@example.com:1.6", - "simple-snip-pinboard@example.com:1.12", - "test824u6@example.com:8.2.4", - "{6acfba12-cf95-4e77-b54c-855ba04086fc}:8.2.4", - "{e34c4fe5-ed71-4026-99ed-65e2d45650a1}:8.2.4", - "{183a3f02-266c-4713-97cb-2b084ac431af}:8.2.4", - "{77ae6281-998e-4b41-8ede-dda76fe8daa0}:8.2.4", - "{2bda1a87-690a-4741-a334-e9d3a1748b65}:8.2.5", - "{0358ae7a-8250-47cb-b4c6-fc312857e76b}:8.2.5", - "test824u7@example.com:8.2.4", - "workspaces@BornSupercharged:1.2.3", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:2.5", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:2.4", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:2.3", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:2.2", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:2.0", - "{caeb485e-8070-4520-8262-8ef288a3e35f}:1.2", - "@aspire-scripts:0.32.0", - "humorsensei@example.com:1.1", - "humorsensei@example.com:1.0" - ] - }, - "schema": 1768955790939, - "key_format": "{guid}:{version}", - "stash_time": 1768977305589, - "id": "4da6a4af-5b07-414b-85c2-969bfaaf90a8", - "last_modified": 1768977380175 - }, - { - "stash": { - "blocked": [ - "{d172002d-f177-4621-8d55-c2da4cf5c50f}:3.1.2" - ], - "unblocked": [], - "softblocked": [ - "yandex-links@local:1.1.0", - "smart-autofill@misteregis.github:1.0.1", - "smart-autofill@misteregis.github:1.0.0", - "{6c7d8c84-df8e-452c-a738-7b167e9471ee}:1.0.1", - "{cd624dcb-15d7-40c9-ae35-1a823590316b}:1.0", - "bhghoamapcdpbohphigoooaddinpkbai@chrome-store-foxified-378338646:4.18", - "{92e4f37f-1eea-4fa4-89e5-3db252a638d9}:5.8.3", - "siroko-extension@example.com:0.0.8", - "{4e1e6297-29ac-4976-b1f7-54cc9f3d76d2}:1.0", - "source-viewer-mobile@2026.dev:1.0", - "youtube-subscriptions-flow@example.com:1.0", - "ptmc@per-tab-media-control.addon:1.0.0" - ] - }, - "schema": 1768934192392, - "key_format": "{guid}:{version}", - "stash_time": 1768955706222, - "id": "8deedfd7-9b8b-447d-a3b4-865cc78cb049", - "last_modified": 1768955790668 - }, - { - "stash": { - "blocked": [ - "{aa812bee-9e92-48ba-9570-5faf0cfe2578}:1", - "{3dfd402c-2127-4af8-91b4-63af4fa202ef}:1.1", - "safery-wallet@saferywallet.com:1.1", - "safery-wallet@saferywallet.com:1.2", - "safery-wallet@saferywallet.com:1.3", - "safery-wallet@saferywallet.com:1.4" - ], - "unblocked": [], - "softblocked": [ - "{8a51f0da-ca02-4644-a540-95ef21d5d6c9}:0.1", - "{8a51f0da-ca02-4644-a540-95ef21d5d6c9}:0.2", - "archive-prefix@example.com:1.0", - "favory@sp4ce.pw:2.6.3", - "favory@sp4ce.pw:2.6.5", - "favory@sp4ce.pw:2.6.6", - "mediach@khylko98:1.0", - "mediach@khylko98:1.1", - "withdrawal-extractor-bot@yourdomain.com:1.0.4", - "withdrawal-extractor-bot@yourdomain.com:1.0.5", - "force-load-all-tabs@example.com:1.9", - "{8a4e6d94-9c6a-4f3e-9a0f-7e2c1d67aabc}:1.1.5", - "wp-admin-link@d-edge.com:1.1", - "wp-admin-link@d-edge.com:1.2", - "wp-admin-link@d-edge.com:1.3", - "wp-admin-link@d-edge.com:1.4", - "currently@machalow.com:3.6.2" - ] - }, - "schema": 1768912579563, - "key_format": "{guid}:{version}", - "stash_time": 1768934107023, - "id": "38d7bbd9-89fb-4a11-8387-34b43e87bc2a", - "last_modified": 1768934192207 - }, - { - "stash": { - "blocked": [ - "{7a11cb62-5825-4de7-8955-518ad2c5a8f5}:3.6.1", - "{7a11cb62-5825-4de7-8955-518ad2c5a8f5}:3.6.2", - "{44f9674d-f321-48f9-af8d-1586cafb254a}:2.7.8", - "{44f9674d-f321-48f9-af8d-1586cafb254a}:2.7.9", - "{44f9674d-f321-48f9-af8d-1586cafb254a}:2.8.1", - "{44f9674d-f321-48f9-af8d-1586cafb254a}:2.8.2", - "{dc89b3a3-796f-4570-8342-36a5d3596215}:4.0.6", - "{dc89b3a3-796f-4570-8342-36a5d3596215}:4.0.7", - "{dc89b3a3-796f-4570-8342-36a5d3596215}:4.0.8", - "{b393231e-5866-488e-9002-7007092c674a}:2.9.0", - "{b393231e-5866-488e-9002-7007092c674a}:2.9.1", - "{c96d5b67-cdc3-429f-ab34-08aec7896bd5}:1.0.0", - "{f2206705-ef29-49ea-a93d-1c5ae845e744}:1.0", - "{f2206705-ef29-49ea-a93d-1c5ae845e744}:1.1.2", - "{195450f2-910a-1bca-a7da-33b299ec3007}:1.20.0", - "{166415f2-122a-9bca-a7da-38b799ec3007}:1.20.0" - ], - "unblocked": [], - "softblocked": [ - "autobuy@pokemon-stock.local:1.0", - "quick-bookmarks@gamemodels3d.com:1.1", - "helper@myshop.local:1.0", - "better-icecat-history@javipas.com:1.0.0", - "quickbookmarks@gamemodels3d.com:1.1", - "contact@done.fr:1.0", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.1", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.2", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.3", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.4", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.5", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.6", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.7", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.8", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.9", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.10", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.11", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.12", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.13", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.14", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.15", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.16", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.17", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.18", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.19", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.20", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.21", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.22", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.23", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.24", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.25", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.26", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:0.0.27", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:28", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:29", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:30", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:31", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:33", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:34", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:35", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:36", - "{f34e3a08-b022-459a-a72a-07cd31eaefc7}:37", - "{99734f24-7c3b-435b-971c-4b2c1253c5bf}:1", - "{99734f24-7c3b-435b-971c-4b2c1253c5bf}:2", - "{99734f24-7c3b-435b-971c-4b2c1253c5bf}:3", - "priceradar@priceradar.cloud:6.85.25", - "priceradar@priceradar.cloud:6.85.27", - "priceradar@priceradar.cloud:6.85.28", - "priceradar@priceradar.cloud:6.85.29", - "{fbe338ac-8f23-417b-b3bd-cdfc4f1b417d}:1.1", - "gemini-widget-safe@tuo-nome-univoco.com:1.6", - "explane-popup@prtksh.com:1.0", - "quick-callout@example.com:1.0.0", - "tab-group-deduper@example.com:1.0.0", - "tab-group-deduper@example.com:3.0.0", - "quick-callout@example.com:1.0.3", - "stickyconnections@sticky.to:1.3.0" - ] - }, - "schema": 1768890990550, - "key_format": "{guid}:{version}", - "stash_time": 1768912505897, - "id": "a97a68aa-f42e-41f4-8fa6-025cbad4cfc3", - "last_modified": 1768912579410 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "workspaces@BornSupercharged:1.2.2", - "workspaces@BornSupercharged:1.2.1", - "workspaces@BornSupercharged:1.2.0", - "workspaces@BornSupercharged:1.1.3", - "addon@screener.com:1.0" - ] - }, - "schema": 1768869392496, - "key_format": "{guid}:{version}", - "stash_time": 1768890907355, - "id": "3ac56ccb-0385-4f7d-969d-14d442030ce8", - "last_modified": 1768890990331 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "addon@hurryup.com:0.1", - "addon@hurryup.com:0.2", - "addon@hurryup.com:0.2.1", - "addon@hurryup.com:0.3", - "addon@hurryup.com:0.4", - "addon@hurryup.com:0.4.1", - "addon@hurryup.com:0.4.2", - "addon@hurryup.com:0.5", - "addon@hurryup.com:0.5.1", - "addon@hurryup.com:0.6", - "{6fcfbe86-e569-4247-be0a-2ad6cc70a59d}:11.3", - "internet-attention-saver@example.com:0.1.0", - "twoje-id-rozszerzenia@example.com:1.0.0", - "{cb832a40-3ea6-4fe9-8b04-79cf1b84de2b}:2.0.16", - "{df2a20b6-9000-4260-bd8c-de886bb90c5d}:2.0.18", - "{75bfc869-8d59-4540-8056-cb29dd196987}:2.0.15", - "{fb4a419f-9990-4c9c-81cb-3bc33f927e40}:2.0.15", - "Earn-Knowledge@sganti.com:2.0", - "tools@bobbomers.nl:1.0", - "a-fine-start-custom@afinestart-murri.duckdns.org:3.0.6", - "{72d501f5-dc79-4a35-bf33-bd03f05e18f2}:1.1" - ] - }, - "schema": 1768847793534, - "key_format": "{guid}:{version}", - "stash_time": 1768869307020, - "id": "431299ff-6888-4254-accd-1dd1f02303f6", - "last_modified": 1768869392297 - }, - { - "stash": { - "blocked": [ - "quick-color-picker-825367@autoex.local:1.0.0", - "quick-bookmark-organizer-594500@autoex.local:1.0.0", - "focus-timer-028149@autoex.local:1.0.0", - "task-timer-tracker-783398@autoex.local:1.0.0", - "task-reminder-plus-767837@autoex.local:1.0.0", - "quick-recipe-finder-729603@autoex.local:1.0.0", - "quick-translate-helper-472606@autoex.local:1.0.0", - "task-timer-tracker-446882@autoex.local:1.0.0", - "quick-task-reminder-810692@autoex.local:1.0.0", - "quick-translate-snippet-077512@autoex.local:1.0.0", - "quick-reminder-tool-683525@autoex.local:1.0.0", - "quick-reminder-popup-538288@autoex.local:1.0.0", - "tab-mood-enhancer-028980@autoex.local:1.0.0", - "quick-quote-collector-700705@autoex.local:1.0.0", - "quick-text-translator-758431@autoex.local:1.0.0", - "tab-mood-manager-703527@autoex.local:1.0.0", - "quick-task-timer-348490@autoex.local:1.0.0", - "quick-note-collector-632357@autoex.local:1.0.0", - "quick-recipe-finder-147488@autoex.local:1.0.0", - "quick-note-taker-052015@autoex.local:1.0.0", - "quick-note-snippet-798247@autoex.local:1.0.0", - "quick-reference-notes-473347@autoex.local:1.0.0", - "instant-quote-collector-822417@autoex.local:1.0.0", - "quick-snack-timer-735995@autoex.local:1.0.0", - "reading-time-estimator-182967@autoex.local:1.0.0", - "quick-recipe-finder-094010@autoex.local:1.0.0", - "quick-quote-organizer-577810@autoex.local:1.0.0", - "quick-note-saver-204084@autoex.local:1.0.0", - "quick-translate-note-153144@autoex.local:1.0.0", - "quick-note-grabber-162534@autoex.local:1.0.0", - "quick-note-extractor-830779@autoex.local:1.0.0", - "mood-tracker-plus-644699@autoex.local:1.0.0", - "quick-emoji-picker-583758@autoex.local:1.0.0", - "quick-note-saver-006102@autoex.local:1.0.0", - "quick-note-keeper-591490@autoex.local:1.0.0", - "quick-comment-former-696730@autoex.local:1.0.0", - "quick-context-clue-534218@autoex.local:1.0.0", - "quick-bookmark-organizer-184680@autoex.local:1.0.0", - "quick-note-collector-454693@autoex.local:1.0.0", - "quick-note-capture-248297@autoex.local:1.0.0", - "quick-note-taker-378624@autoex.local:1.0.0", - "mood-tracker-popup-800015@autoex.local:1.0.0", - "quick-color-picker-939498@autoex.local:1.0.0", - "quick-text-summarizer-722306@autoex.local:1.0.0", - "quick-vocabulary-builder-162516@autoex.local:1.0.0", - "quick-note-popup-064219@autoex.local:1.0.0", - "text-clarity-enhancer-151667@autoex.local:1.0.0", - "quick-note-taker-534209@autoex.local:1.0.0", - "quick-note-collector-869556@autoex.local:1.0.0", - "quick-image-resizer-708049@autoex.local:1.0.0", - "image-color-extractor-379605@autoex.local:1.0.0", - "instant-language-swap-367362@autoex.local:1.0.0", - "quick-note-grabber-572524@autoex.local:1.0.0", - "quick-emoji-picker-844891@autoex.local:1.0.0", - "quick-note-highlighter-595443@autoex.local:1.0.0", - "quick-link-organizer-607069@autoex.local:1.0.0", - "quick-clip-saver-140600@autoex.local:1.0.0", - "focus-time-tracker-821893@autoex.local:1.0.0", - "focus-timer-pro-436220@autoex.local:1.0.0", - "focus-timer-plus-705807@autoex.local:1.0.0", - "phrase-enhancer-862120@autoex.local:1.0.0", - "focus-timer-buddy-534239@autoex.local:1.0.0", - "focus-text-highlighter-209263@autoex.local:1.0.0", - "focus-mode-toggle-992396@autoex.local:1.0.0", - "focus-mode-timer-534212@autoex.local:1.0.0", - "focus-mode-timer-464930@autoex.local:1.0.0", - "focus-mode-timer-399746@autoex.local:1.0.0", - "focus-mode-reminder-964676@autoex.local:1.0.0", - "bookmark-organizer-458378@autoex.local:1.0.0", - "instant-language-swap-824644@autoex.local:1.0.0", - "copy-all-text-625130@autoex.local:1.0.0", - "dark-mode-toggle-088318@autoex.local:1.0.0", - "image-extractor-082226@autoex.local:1.0.0", - "image-extractor-257265@autoex.local:1.0.0", - "image-extractor-559796@autoex.local:1.0.0", - "image-extractor-251963@autoex.local:1.0.0", - "image-extractor-065331@autoex.local:1.0.0", - "image-extractor-022534@autoex.local:1.0.0", - "qr-code-generator-337786@autoex.local:1.0.0", - "image-extractor-811546@autoex.local:1.0.0", - "text-to-speech-588081@autoex.local:1.0.0", - "text-to-speech-398951@autoex.local:1.0.0", - "remove-ads-509839@autoex.local:1.0.0", - "link-collector-612671@autoex.local:1.0.0", - "meta-tags-viewer-202162@autoex.local:1.0.0", - "image-extractor-686352@autoex.local:1.0.0", - "emojipicker@xmp.extension:1.0.0", - "diceroll@xmp.extension:1.0.0", - "colorwheel789@xmpi.net:1.0.0", - "timer123@xmpi.net:1.0.0", - "flipcard890@xmpi.net:1.0.0", - "colorpick456@xmpi.net:1.0.0", - "textcounter-2024@xmpi.net:1.0.0", - "quicknotes-2024@xmpi.net:1.0.0", - "quicknote789@xmpi.net:1.0.0", - "colornote@xmpi.net:1.0.0", - "keeper101@xmpi.net:1.0.0", - "colorpicker@xmp-tools.dev:1.0.0", - "quicknotes@xmpi.net:1.0.0", - "pixelcraft@xmp-tools.dev:1.0.0", - "focus-mode-reminder-708225@autoex.local:1.0.0", - "focus-mode-timer-172340@autoex.local:1.0.0", - "focus-mode-reminder-697026@autoex.local:1.0.0", - "focus-mode-reminder-593007@autoex.local:1.0.0", - "focused-reading-companion-345478@autoex.local:1.0.0", - "daily-habit-tracker-720080@autoex.local:1.0.0", - "color-code-reader-653767@autoex.local:1.0.0", - "quick-recipe-finder-816634@autoex.local:1.0.0", - "quick-note-saver-846304@autoex.local:1.0.0", - "password-generator-305212@autoex.local:1.0.0", - "meta-tags-viewer-370826@autoex.local:1.0.0", - "quick-word-counter-747846@autoex.local:1.0.0", - "text-to-speech-922982@autoex.local:1.0.0", - "text-highlighter-069495@autoex.local:1.0.0", - "quick-note-capture-181707@autoex.local:1.0.0", - "font-size-adjuster-655514@autoex.local:1.0.0", - "scroll-to-top-847591@autoex.local:1.0.0", - "table-to-csv-079798@autoex.local:1.0.0", - "remove-ads-866616@autoex.local:1.0.0", - "toggle-sans-serif-545080@autoex.local:1.0.0", - "font-size-adjuster-866177@autoex.local:1.0.0", - "link-collector-038369@autoex.local:1.0.0", - "qr-code-generator-294701@autoex.local:1.0.0", - "page-load-timer-917939@autoex.local:1.0.0", - "url-shortener-242635@autoex.local:1.0.0", - "dark-mode-toggle-826280@autoex.local:1.0.0", - "text-to-speech-990900@autoex.local:1.0.0", - "password-generator-804434@autoex.local:1.0.0", - "copy-all-text-622589@autoex.local:1.0.0", - "font-size-adjuster-610935@autoex.local:1.0.0", - "copy-clean-title-079704@autoex.local:1.0.0", - "copy-all-text-121505@autoex.local:1.0.0", - "cookie-viewer-911029@autoex.local:1.0.0", - "quick-word-counter-966540@autoex.local:1.0.0", - "reading-time-estimator-730325@autoex.local:1.0.0", - "copy-all-text-906044@autoex.local:1.0.0", - "copy-clean-title-547079@autoex.local:1.0.0", - "link-collector-260347@autoex.local:1.0.0", - "password-generator-305700@autoex.local:1.0.0", - "font-size-adjuster-352784@autoex.local:1.0.0", - "copy-all-text-680913@autoex.local:1.0.0", - "cookie-viewer-455045@autoex.local:1.0.0", - "meta-tags-viewer-382416@autoex.local:1.0.0", - "font-size-adjuster-860477@autoex.local:1.0.0", - "font-size-adjuster-090530@autoex.local:1.0.0", - "dark-mode-toggle-282929@autoex.local:1.0.0", - "cookie-viewer-138293@autoex.local:1.0.0", - "meta-tags-viewer-192729@autoex.local:1.0.0", - "scroll-to-top-609929@autoex.local:1.0.0", - "font-size-adjuster-918946@autoex.local:1.0.0", - "remove-ads-106516@autoex.local:1.0.0", - "qr-code-generator-037656@autoex.local:1.0.0", - "scroll-to-top-609154@autoex.local:1.0.0", - "password-generator-038875@autoex.local:1.0.0", - "copy-all-text-443390@autoex.local:1.0.0", - "quick-word-counter-004273@autoex.local:1.0.0", - "link-collector-977284@autoex.local:1.0.0", - "qr-code-generator-089139@autoex.local:1.0.0", - "page-load-timer-679922@autoex.local:1.0.0", - "quick-word-counter-499518@autoex.local:1.0.0", - "password-generator-077187@autoex.local:1.0.0", - "scroll-to-top-142924@autoex.local:1.0.0", - "toggle-sans-serif-058126@autoex.local:1.0.0", - "page-load-timer-982183@autoex.local:1.0.0", - "dark-mode-toggle-537902@autoex.local:1.0.0", - "qr-code-generator-847558@autoex.local:1.0.0", - "quick-word-counter-691228@autoex.local:1.0.0", - "scroll-to-top-080452@autoex.local:1.0.0", - "page-load-timer-668201@autoex.local:1.0.0", - "qr-code-generator-301905@autoex.local:1.0.0", - "reading-time-estimator-205211@autoex.local:1.0.0", - "scroll-to-top-340051@autoex.local:1.0.0", - "url-shortener-419453@autoex.local:1.0.0", - "dark-mode-toggle-584627@autoex.local:1.0.0", - "reading-time-estimator-435131@autoex.local:1.0.0", - "meta-tags-viewer-655271@autoex.local:1.0.0", - "text-to-speech-683736@autoex.local:1.0.0", - "password-generator-545392@autoex.local:1.0.0", - "url-shortener-188472@autoex.local:1.0.0", - "meta-tags-viewer-136774@autoex.local:1.0.0", - "copy-clean-title-986483@autoex.local:1.0.0", - "text-highlighter-028119@autoex.local:1.0.0", - "text-to-speech-186425@autoex.local:1.0.0", - "qr-code-generator-556366@autoex.local:1.0.0", - "table-to-csv-320428@autoex.local:1.0.0", - "page-load-timer-411840@autoex.local:1.0.0", - "meta-tags-viewer-665720@autoex.local:1.0.0", - "scroll-to-top-861843@autoex.local:1.0.0", - "qr-code-generator-594950@autoex.local:1.0.0", - "text-highlighter-262729@autoex.local:1.0.0", - "reading-time-estimator-009461@autoex.local:1.0.0", - "table-to-csv-817598@autoex.local:1.0.0", - "reading-time-estimator-761904@autoex.local:1.0.0", - "scroll-to-top-591531@autoex.local:1.0.0", - "url-shortener-181658@autoex.local:1.0.0", - "toggle-sans-serif-977412@autoex.local:1.0.0", - "remove-ads-413246@autoex.local:1.0.0", - "reading-time-estimator-705517@autoex.local:1.0.0", - "qr-code-generator-797406@autoex.local:1.0.0", - "table-to-csv-631278@autoex.local:1.0.0", - "quick-word-counter-721350@autoex.local:1.0.0", - "remove-ads-655508@autoex.local:1.0.0", - "meta-tags-viewer-696780@autoex.local:1.0.0", - "link-collector-213797@autoex.local:1.0.0", - "toggle-sans-serif-229894@autoex.local:1.0.0", - "remove-ads-923995@autoex.local:1.0.0", - "link-collector-527556@autoex.local:1.0.0", - "text-highlighter-759690@autoex.local:1.0.0", - "qr-code-generator-033330@autoex.local:1.0.0", - "text-highlighter-026836@autoex.local:1.0.0", - "quick-word-counter-244317@autoex.local:1.0.0", - "page-load-timer-922442@autoex.local:1.0.0", - "table-to-csv-888222@autoex.local:1.0.0", - "remove-ads-166639@autoex.local:1.0.0", - "quick-word-counter-197002@autoex.local:1.0.0", - "text-highlighter-263835@autoex.local:1.0.0", - "toggle-sans-serif-718981@autoex.local:1.0.0", - "text-highlighter-319245@autoex.local:1.0.0", - "reading-time-estimator-525094@autoex.local:1.0.0", - "remove-ads-865799@autoex.local:1.0.0", - "scroll-to-top-888337@autoex.local:1.0.0", - "table-to-csv-312405@autoex.local:1.0.0", - "text-to-speech-665739@autoex.local:1.0.0", - "toggle-sans-serif-280037@autoex.local:1.0.0", - "url-shortener-437594@autoex.local:1.0.0", - "table-to-csv-138263@autoex.local:1.0.0", - "table-to-csv-600062@autoex.local:1.0.0", - "password-generator-545077@autoex.local:1.0.0", - "link-collector-477244@autoex.local:1.0.0", - "image-extractor-477265@autoex.local:1.0.0", - "toggle-sans-serif-477245@autoex.local:1.0.0", - "copy-clean-title-477252@autoex.local:1.0.0", - "quick-note-keeper-469752@autoex.local:1.0.0", - "quick-note-taker-422526@autoex.local:1.0.0", - "quick-note-keeper-425735@autoex.local:1.0.0", - "focus-mode-toggle-422537@autoex.local:1.0.0", - "quick-context-clue-422542@autoex.local:1.0.0", - "quick-text-translator-422522@autoex.local:1.0.0", - "url-shortener-404074@autoex.local:1.0.0", - "scroll-to-top-286945@autoex.local:1.0.0", - "reading-time-estimator-607832@autoex.local:1.0.0", - "quick-word-counter-603139@autoex.local:1.0.0", - "quick-word-counter-410037@autoex.local:1.0.0", - "page-load-timer-390307@autoex.local:1.0.0", - "meta-tags-viewer-497740@autoex.local:1.0.0", - "font-size-adjuster-515566@autoex.local:1.0.0", - "copy-all-text-504298@autoex.local:1.0.0", - "cookie-viewer-491221@autoex.local:1.0.0", - "url-shortener-076605@autoex.local:1.0.0", - "toggle-sans-serif-020479@autoex.local:1.0.0", - "text-to-speech-161859@autoex.local:1.0.0", - "text-highlighter-623310@autoex.local:1.0.0", - "table-to-csv-292116@autoex.local:1.0.0", - "remove-ads-273907@autoex.local:1.0.0", - "reading-time-estimator-049394@autoex.local:1.0.0", - "quick-word-counter-064741@autoex.local:1.0.0", - "page-load-timer-185702@autoex.local:1.0.0", - "link-collector-038415@autoex.local:1.0.0", - "font-size-adjuster-280710@autoex.local:1.0.0", - "copy-clean-title-700768@autoex.local:1.0.0", - "copy-all-text-214099@autoex.local:1.0.0", - "cookie-viewer-193864@autoex.local:1.0.0", - "color-picker-296719@autoex.local:1.0.0", - "sessionclock123@xmpi.net:1.0.0", - "checkmate456@xmpi.net:1.0.0", - "linkkeeper123@xmpi.net:1.0.0", - "colorpalette456@xmpi.net:1.0.0", - "lettercount@xmp.extension:1.0.0", - "focuspulse@xmpi.net:1.0.0", - "breathespace@xmpi.net:1.0.0", - "codesnippet321@xmpi.net:1.0.0", - "tabcounterly@xmpi.net:1.0.0", - "tasklist012@xmpi.net:1.0.0", - "quicklistify@xmpi.net:1.0.0", - "notepad12332@xmpi.net:1.0.0", - "linksaver456@xmpi.net:1.0.0", - "notepinch@xmpi.net:1.0.0", - "colorstash@xmpi.net:1.0.0", - "linkkeep567@xmpi.net:1.0.0", - "tasklist-2024@xmpi.net:1.0.0", - "linkvault-2024@xmpi.net:1.0.0", - "textmetrics@xmp-tools.dev:1.0.0", - "tabkeeper@xmp-tools.dev:1.0.0", - "colorpalette@xmp-tools.dev:1.0.0", - "bookmarkflow@xmp-tools.dev:1.0.0", - "colorpicker-2024@xmpi.net:1.0.0", - "timeclock@xmpi.net:1.0.0", - "timezone@xmp-tools.dev:1.0.0", - "tabsaver@xmpi.net:1.0.0", - "wordcount@xmp-tools.dev:1.0.0", - "tabcounter@xmp-tools.dev:1.0.0", - "quicktally@xmpi.net:1.0.0", - "quicknote@xmp-tools.dev:1.0.0", - "colorpicker1@xmp-tools.dev:1.0.0", - "bookmarkkeep@xmpi.net:1.0.0", - "wordcounter@xmp-tools.dev:1.0.0", - "tabsaver@xmp-tools.dev:1.0.0", - "saver202@xmpi.net:1.0.0", - "quicknotes@xmp-tools.dev:1.0.0", - "palette456@xmpi.net:1.0.0", - "notepad123@xmpi.net:1.0.0", - "linkkeeper@xmp-tools.dev:1.0.0", - "goals789@xmpi.net:1.0.0", - "linksaver@xmpi.net:1.0.0", - "wordcounter@xmpi.net:1.0.0", - "tabcounter@xmpi.net:1.0.0", - "colorpicker@xmpi.net:1.0.0", - "brainwave@xmp-tools.dev:1.0.0", - "flowsync@xmp-tools.dev:1.0.0", - "mindbloom@xmp-tools.dev:1.0.0", - "zenflow@xmp-tools.dev:1.0.0", - "{283e6126-8712-49bc-9baf-1fb0cf4cc191}:5.8.9", - "{283e6126-8712-49bc-9baf-1fb0cf4cc191}:5.9.1", - "{283e6126-8712-49bc-9baf-1fb0cf4cc191}:5.9.2", - "{283e6126-8712-49bc-9baf-1fb0cf4cc191}:5.9.4", - "{283e6126-8712-49bc-9baf-1fb0cf4cc191}:5.9.5", - "Jupiterextension@calendrier.com:1.1", - "{a556a5ae-956c-448a-955d-eb0681da51cf}:3.1.9", - "{a556a5ae-956c-448a-955d-eb0681da51cf}:3.2.1", - "{a556a5ae-956c-448a-955d-eb0681da51cf}:3.2.2", - "{417de926-5168-48af-acb1-bd7bbd125844}:11.1.0", - "{58be7a76-bd4c-4dd9-99d6-afe23e0986a4}:1.0", - "{58be7a76-bd4c-4dd9-99d6-afe23e0986a4}:1.4", - "{bc8e49ea-3c2d-4aeb-9ae2-206c42795126}:1.0", - "{bc8e49ea-3c2d-4aeb-9ae2-206c42795126}:17000.4", - "{8c523595-3768-479b-9b1a-17236d0d290e}:1.0", - "{8c523595-3768-479b-9b1a-17236d0d290e}:3.2.4", - "{8c523595-3768-479b-9b1a-17236d0d290e}:1095.3", - "{8c523595-3768-479b-9b1a-17236d0d290e}:10921.4", - "{3e1f8bd1-6125-4dee-96a9-1eb461eaf26a}:1.0", - "{3e1f8bd1-6125-4dee-96a9-1eb461eaf26a}:3001.15.2", - "{138c56ab-4f3e-4d72-86bc-3eda127a4fa1}:1.0", - "{138c56ab-4f3e-4d72-86bc-3eda127a4fa1}:109.3", - "{138c56ab-4f3e-4d72-86bc-3eda127a4fa1}:114.4", - "{67d388ad-7cb4-4125-a24c-3bf908f4a9d8}:1.0", - "{67d388ad-7cb4-4125-a24c-3bf908f4a9d8}:109.32", - "{67d388ad-7cb4-4125-a24c-3bf908f4a9d8}:209.4" - ], - "unblocked": [], - "softblocked": [ - "{e01ca3f8-2ad1-4ed3-ad89-234db89a8218}:1.0", - "{e01ca3f8-2ad1-4ed3-ad89-234db89a8218}:2.0", - "{91db03ae-c1ed-4500-b3b8-59327abd735b}:1.0", - "{91db03ae-c1ed-4500-b3b8-59327abd735b}:2.0", - "{f229d5f5-f2ee-4d15-a6b0-8fc5a6bfad1b}:1.0", - "{f229d5f5-f2ee-4d15-a6b0-8fc5a6bfad1b}:2.0", - "{ca8972cd-7e72-4be3-bc4c-6b0b8d68c551}:1.0", - "{ca8972cd-7e72-4be3-bc4c-6b0b8d68c551}:2.0", - "{725b1b9d-91b1-497d-917d-2a10441d56f5}:1.0", - "{725b1b9d-91b1-497d-917d-2a10441d56f5}:2.0", - "{0a2f7aae-ad9d-4cbd-ad12-73bafc410a2c}:1.0", - "{0a2f7aae-ad9d-4cbd-ad12-73bafc410a2c}:2.0", - "{9a37f1d6-d790-4afb-a690-0b61a4aa36a4}:1.0", - "{9a37f1d6-d790-4afb-a690-0b61a4aa36a4}:2.0", - "{960c40a0-4080-4646-aaac-da633f16969d}:1.0", - "helper@myshop.local:1.6", - "helper@myshop.local:1.7", - "helper@myshop.local:2.0", - "smart-contact@cynetcorp.com:1.0.1", - "smart-contact@cynetcorp.com:1.0.0", - "droplink@example.local:0.1.0", - "droplink@example.local:0.1.1", - "droplink@example.local:0.1.2", - "droplink@example.local:0.1.3", - "droplink@example.local:0.1.4", - "droplink@example.local:0.1.5", - "droplink@example.local:0.1.6", - "droplink@example.local:0.1.7", - "droplink@example.local:0.1.8", - "droplink@example.local:0.1.9", - "helper@myshop.local:1.8", - "{c448872b-58f9-413e-8e3d-650fe708448e}:2.0.3", - "{06d09a41-7ecd-429e-a6fa-87b0d1b2d5cc}:299", - "{06d09a41-7ecd-429e-a6fa-87b0d1b2d5cc}:1.0.298", - "searx@search.raccoon-catfish.ts.net:1.5.1", - "searx@search.raccoon-catfish.ts.net:1.5.2", - "{74cea24b-2430-4ead-aa34-298576e1a801}:1.1.2", - "{74cea24b-2430-4ead-aa34-298576e1a801}:1.2.0", - "{c4472fe5-55e1-4efb-86a7-f25fd1062228}:4.9.1", - "{c4472fe5-55e1-4efb-86a7-f25fd1062228}:4.9.0" - ] - }, - "schema": 1768826193594, - "key_format": "{guid}:{version}", - "stash_time": 1768847707582, - "id": "395264fe-307c-4173-9e7d-dcb89c0c6889", - "last_modified": 1768847793349 - }, - { - "stash": { - "blocked": [ - "{2809f7b9-522f-433f-aefa-1e98dd1e9528}:1.8.9", - "{2809f7b9-522f-433f-aefa-1e98dd1e9528}:1.9.1", - "{2809f7b9-522f-433f-aefa-1e98dd1e9528}:1.9.2" - ], - "unblocked": [], - "softblocked": [ - "no-google-redirect@1.0.0:1.0.0", - "{f24367d3-9c5e-457e-9e91-f69b11d26776}:1.0.0", - "{46cc18f3-9054-4edd-9441-102a1021b5d0}:1.0.5", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:0.0.1", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:1.0.1", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:1.0.2", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:1.0.3", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:1.1.0", - "{62b0eac8-bb58-4cac-8396-7d1069e5b3f3}:1.1.1", - "sidebar-react-tailwind@example.com:1.1.2", - "export-credits@trendmicro.com:2.6.0", - "juhyuklee@shiftup.co.kr:1.0.2", - "juhyuklee@shiftup.co.kr:1.0.1" - ] - }, - "schema": 1768804589937, - "key_format": "{guid}:{version}", - "stash_time": 1768826107491, - "id": "cdba519f-a10e-4079-8086-dc502bb21db4", - "last_modified": 1768826193404 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "tumblr-dashboard-bookmark-highlighter@galli.local:1.0.0", - "tumblr-dashboard-bookmark-highlighter@galli.local:1.0.1", - "tumblr-dashboard-bookmark-highlighter@galli.local:1.0.2", - "tumblr-dashboard-bookmark-highlighter@galli.local:1.0.4", - "gitlabusercount@gitlabtools.toolsfake.com:1.2.0", - "nzherald-archive-redirect@local:1.1", - "nzherald-archive-redirect@local:1.2", - "nzherald-archive-redirect@local:1.3", - "chatutils@eridius.org:1.0.0", - "redirect@highspell.wiki:1.0", - "hello@margin.at:0.1.17", - "hello@margin.at:0.1.18", - "stream-director-pro-v@scaler.extension:1.0", - "stream@vw.extension:1.0", - "stream-director-pro@scaler.extension:1.0" - ] - }, - "schema": 1768782989846, - "key_format": "{guid}:{version}", - "stash_time": 1768804506661, - "id": "60e4c41c-c61f-4403-b808-66bbe2fdfb4c", - "last_modified": 1768804589840 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "bilingual-ard@jsonzilla.me:1.0.4", - "@pistarcallsignextractor:1.0", - "new-word-tab@graydesign:2.1.2", - "cookie-analyzer@vuridev.com:1.0.1", - "bandcamp-player-enhancer@extension.local:1.2.7", - "@newtab:1.1" - ] - }, - "schema": 1768761389518, - "key_format": "{guid}:{version}", - "stash_time": 1768782906751, - "id": "9926a95d-95a4-465c-bfb0-615dfd7b5e10", - "last_modified": 1768782989749 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "@attendance-eshtu:2.0", - "withes-extension@ict.withes.tech:1.8", - "{6bbbe977-5a10-4ea9-8beb-677b46a54577}:1.0", - "{c88d0b54-4359-4b6e-aacd-70a2d5355eb7}:1.0", - "{4a6f366e-9790-4466-b973-57cd27ca74f4}:1.0", - "IceCat-Price-Tracker@exzzy22:0.1.10", - "chim-chat@extension:2.16", - "chim-chat@extension:2.15", - "{7f3a9c2b-4444-4f1a-b5c6-303d1a8f4b85}:1.0.3", - "{7f3a9c2b-4444-4f1a-b5c6-303d1a8f4b85}:1.0.1", - "{7f3a9c2b-4444-4f1a-b5c6-303d1a8f4b85}:1.0.2" - ] - }, - "schema": 1768739789407, - "key_format": "{guid}:{version}", - "stash_time": 1768761306379, - "id": "168ae4c6-ab73-4a85-b569-d6b1a55d276c", - "last_modified": 1768761389241 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{b02f02ee-6a3f-4fd3-8dfb-9e667be793d0}:1.1", - "{eed75d16-644f-4d5e-a650-69052e8ad2ca}:0.1.1", - "{eed75d16-644f-4d5e-a650-69052e8ad2ca}:0.1.2", - "lilin.shao@qq.com:2.0", - "ryno-s-icecat@example.com:1.5.2", - "hunter-tool-internal@sorint.sec:1.0", - "support@cipherlayer.io:1.0.0", - "garmin-sleep-scraper@michele.dev:1.0" - ] - }, - "schema": 1768696579585, - "key_format": "{guid}:{version}", - "stash_time": 1768739706366, - "id": "389a3f06-2f02-496a-a7b0-f53bd3ca62ca", - "last_modified": 1768739789220 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "Android@bravenhancer.com:20.5.2", - "enhancer@goldenfox.com:20.6.2", - "{5dd0277f-e6bd-46de-9242-b4c007be9da5}:1.0", - "{5dd0277f-e6bd-46de-9242-b4c007be9da5}:2.0", - "gofile-download-control@example.com:3.0", - "gofile-download-control@example.com:2.0", - "english-filter@tu-usuario.com:1.1", - "chim-chat@extension:2.14", - "chim-chat@extension:2.13" - ] - }, - "schema": 1768674990717, - "key_format": "{guid}:{version}", - "stash_time": 1768696505243, - "id": "852b74e7-cf5b-4cbd-aaae-9b97ebb9ebe7", - "last_modified": 1768696579455 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "cloud-bookmark-icecat-r1@example.com:1.0.38", - "{7705f38d-341a-4ee5-a6d6-249cd456e552}:1.9.1", - "{7705f38d-341a-4ee5-a6d6-249cd456e552}:1.9.2", - "video-controller@example.com:1.1", - "video-controller@example.com:2.0.0", - "{1e413e83-d695-419b-a0e9-8d9274959fc9}:0.1", - "{1e413e83-d695-419b-a0e9-8d9274959fc9}:0.2", - "{1e413e83-d695-419b-a0e9-8d9274959fc9}:0.3", - "{1e413e83-d695-419b-a0e9-8d9274959fc9}:0.4" - ] - }, - "schema": 1768653391899, - "key_format": "{guid}:{version}", - "stash_time": 1768674906759, - "id": "a7003179-26c8-46f9-acd3-80a05023fb70", - "last_modified": 1768674990496 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "marklight@qiuhongsuccess.com:1.1.3", - "labo-scraper@yourdomain.com:1.0", - "{c71a74d3-c265-4916-ab36-3f1a167edb0c}:1.1", - "{c71a74d3-c265-4916-ab36-3f1a167edb0c}:1.2", - "pixtab@pixtab.extension:1.2", - "cycling-tryon@example.com:1.1.0", - "duolingo-anki-extension@mori23.dev:2.0.0", - "forum-assistant@jony-sokolov.ru:2.0.8" - ] - }, - "schema": 1768631791800, - "key_format": "{guid}:{version}", - "stash_time": 1768653308131, - "id": "0f8fc1d4-bdca-466f-a180-61a0c091269f", - "last_modified": 1768653391672 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{fbe7fcfc-24f9-4854-9182-34ada0d05711}:11.1.0", - "{f0a8c005-f8c9-417b-8a8a-1efdcec7334f}:1.0", - "reimbursement-helper@concur-extension:0.0.2", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:12.10", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:11.5.6", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:12.8", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:12.2", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:11.6", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:11.5.5", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:11", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.16.2", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.16.1", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.16", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.15.2", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.15", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.11", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.10", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:12.9", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.11.2", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.9.1", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.9", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.8.2", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.8", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.7.2", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.7", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.6.3", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.6.2", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.6.1", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.6", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.5.2", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.5.1", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.5", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10.1", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:10", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:9.5.1", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:9.5", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:9.0", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:8.1", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:8.0", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:7.9.1", - "{6a38461c-8a46-442f-ba3f-de76a3293411}:7.9", - "{0c395e4c-8a1c-4df8-af80-0035bcdfe42d}:1.0", - "{b7b9ed21-9b90-4e69-a22b-f74e345c11ad}:1.0", - "study-timer@local:2.3.0" - ] - }, - "schema": 1768610192259, - "key_format": "{guid}:{version}", - "stash_time": 1768631706731, - "id": "cd5a345c-bf21-4193-9937-48022de3b493", - "last_modified": 1768631791628 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "copy-TWE-info@bi.com.gt:1.0.4", - "copy-TWE-info@bi.com.gt:1.0.5", - "cyoa-assist@psculley3.gmail.com:1.1.3", - "{023f3b0e-f94b-4185-8f28-7df2932781fa}:2.2.9", - "{023f3b0e-f94b-4185-8f28-7df2932781fa}:2.3.1", - "{048b47da-972e-4fd3-9350-727e6248cf21}:1.0", - "{6dc0f794-6210-4c18-8cf6-d410e16b2515}:1.0", - "steamForBacklogged@cowokie:2.0", - "{321f4a8d-7bc8-4af8-b789-eebc1e0f30d2}:1.7.0", - "{18ff1f27-f7a8-4ccf-a0fa-96bc55a63705}:1.3.9", - "{18ff1f27-f7a8-4ccf-a0fa-96bc55a63705}:1.4.1", - "{366f0376-344e-4ad3-ac8a-5b5a6c8d1784}:1.0", - "filtro-dropdown@exemplo.com:1.0" - ] - }, - "schema": 1768588583749, - "key_format": "{guid}:{version}", - "stash_time": 1768610107347, - "id": "26cc5795-5b17-4607-905b-cfd7b872ca33", - "last_modified": 1768610192119 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "hv-tools@rxtx.pt:1.0.12", - "hv-tools@rxtx.pt:1.0.13", - "Bazaar@nchoremiot.com:2.5.38.1", - "{0b10a168-b0f4-45f2-840a-dab27a566b81}:1.0", - "{3d3dc5a8-9cf1-4ddd-8d68-19b451986254}:1.0", - "{6fcfbe86-e569-4247-be0a-2ad6cc70a59d}:11", - "site-search-link-opener@aaaaaaa.com:1.0.0", - "{c448872b-58f9-413e-8e3d-650fe708448e}:2.0.5", - "{0b863ad5-1180-4534-9335-f348f2830485}:3001.15.2" - ] - }, - "schema": 1768566990884, - "key_format": "{guid}:{version}", - "stash_time": 1768588506092, - "id": "469d1ab7-f143-4729-a83e-44d26908bdf4", - "last_modified": 1768588583612 - }, - { - "stash": { - "blocked": [ - "easyprint@easyprintapp.net:1.2", - "easyprint@easyprintapp.net:1.3", - "easyprint@easyprintapp.net:1.4", - "easyprint@easyprintapp.net:1.5", - "easyprint@easyprintapp.net:2.0", - "streamlivesnews@streamlivenews.com:1.0", - "streamlivesnews@streamlivenews.com:1.1", - "streamlivesnews@streamlivenews.com:1.3", - "onlineweatherforecast@onlineweatherforecast.net:1.0", - "onlineweatherforecast@onlineweatherforecast.net:1.1", - "transitschedules@transitschedules.net:1.0", - "placesnearme@placesnearme.org:1.0", - "placesnearme@placesnearme.org:1.1", - "convertfile@convertfile.ai:1.2", - "convertfile@convertfile.ai:1.3", - "trackyourorders@trackyourorders.net:1.0", - "loginsafley@loginonline.co:1.0", - "viewpdf_newvers@viewpdf.org:1.1", - "viewtemplates_newvers@viewtemplates.com:1.3", - "earthview360_newvers@earthview360.org:1.0", - "earthview360_newvers@earthview360.org:1.1", - "easydrivingdirections_newvers@easydrivingdirections.com:1.1", - "easydrivingdirections_newvers@easydrivingdirections.com:1.2", - "viewmanuals_newvers@viewmanuals.com:1.1", - "viewmanuals_newvers@viewmanuals.com:1.5", - "viewmanuals_newvers@viewmanuals.com:1.7", - "viewmanuals_newvers@viewmanuals.com:1.8", - "viewrecipes_aill@viewrecipes.net:1.5", - "viewrecipes_aill@viewrecipes.net:1.7", - "{35671959-00b7-4a35-8ef7-15ccb85ae0b9}:1.0", - "{6cfaa687-2cd4-4bb5-b42a-93b337b7c19d}:1.0", - "{a7f5bd39-dc46-4a18-ba6a-f3c7d57e0033}:1.0", - "{480be3d7-ec40-439d-aff7-58b046b43c28}:1.0", - "{9ea46e89-d635-4b43-83c2-bcf6d0f51e9a}:1.0", - "{d7035b29-e3b9-4cde-8ee5-bc5b0b0868c0}:1.0", - "{d6523caa-b90b-4e43-9231-03e7f8d1aa1c}:1.0", - "{9d44f21a-6c87-4484-a110-20598c4a59b5}:1.0", - "{5f488cad-9d5b-4f45-a749-e15113e11f48}:1.0", - "{5d4fef4c-1b2c-4687-9b7c-b1a92caffa92}:1.0", - "{46023b2e-32b9-4aa3-a72f-a7343435c961}:1.0", - "{8bf215e0-4cd2-45bb-a2bd-7641a24b262a}:1.0", - "{72864172-0078-493e-b147-1ab82cd42353}:1.0", - "{99183823-7c5c-42b2-aa00-f103caa76d99}:1.0", - "{42a71991-863e-40f7-a52f-4d056a4b02ec}:1.0", - "{16dd520a-e222-4053-8d5c-07bc854f1ba2}:1.0", - "{fdbf42b0-920a-4b59-9d08-8438832357c9}:1.0", - "{773bcc96-cd34-486b-8564-b6635789e4f2}:1.0", - "{4011c399-7979-47f1-9f95-3d4f7be49f79}:1.0", - "{f3badd56-a7f8-4a48-85bc-6fd77e0aff11}:1.0", - "{1fbaca9c-3546-4002-a2d9-7d376ae94418}:1.0", - "{5015dc6f-8115-4860-82a1-6b5a66430a1d}:1.0", - "{7f7d6d48-33c0-4750-ab94-555c697dd8e9}:1.0", - "{7d4fdd8b-a6d6-46df-bd6d-e1940abd821a}:1.0", - "{f2c33023-137e-425a-9ac1-40fb0431818a}:1.0", - "{e602a689-4848-4f75-82e1-ad06597a4cf1}:1.0", - "{6eb58bc3-5bcf-47d0-9d97-ceca83a586cf}:1.0", - "{3f69b6f5-861d-4877-9e93-abbd77f8353f}:1.0", - "{7a58ff65-1fc0-43c0-a351-4b14507f1d22}:1.0", - "{7c267434-aad1-41f9-af59-6ee00f364037}:1.0", - "{b551f823-e89e-4b1d-aa3a-3d44124fef22}:1.0", - "{6005b188-4606-433b-aa4c-39ecfce9030c}:1.0", - "{168d1b59-e353-48a3-a896-9cdf3d50cd51}:1.0", - "{550ebaeb-77aa-4140-bcfb-09aae2e7b2b5}:1.0", - "{9c33bf84-095c-4656-aac7-0e5a262658f1}:1.0", - "{1bdc3431-52ad-4837-b93c-ab9f2e95ca1a}:1.0", - "{95bc9b17-cf0a-43ac-83c9-b039bdb36ad4}:1.0", - "{8539418b-5635-4b68-992f-cb049b51e900}:1.0", - "{6b522a32-8ca3-4e5d-86d1-93ebb4ef68c6}:1.0", - "{6973833b-9ca7-4c6b-b0a2-e57d0f32b143}:1.0", - "{0afcdf1b-615d-4ebf-ad11-e263c7b8b04f}:1.0", - "{4550fc63-571d-4644-ac0c-0be83bbcdd77}:1.0", - "{9f38cbdf-e2a5-4256-97be-55a5a095f84e}:1.0", - "{e5ded49b-db98-4cd2-86e6-4ccbb0f88dfa}:1.0", - "{1d8b2775-a0cc-4461-9a08-dc3505f2ac87}:1.0", - "{cd966b42-8b65-4ba9-86a3-3deb8ca20d17}:1.0", - "{1dcf2f63-dd91-4420-bee2-dce224b87b52}:1.0", - "{626b09ab-4753-4fe0-b9cd-60746045cbae}:1.0", - "{91ef689e-8ff3-4133-bf8d-5d52716a69b3}:1.0", - "{207f65fd-5fae-4777-b0d1-8fcc448fe498}:1.0", - "{fd0674dc-5cdf-4b50-ab56-0c7c7ead693d}:1.0", - "{0d7fa241-d587-4f8b-98c1-4acab76d734b}:1.0", - "{6bf99fb3-b081-449c-9f6a-c793da5c5659}:1.0", - "{7402329a-9789-4c11-97e0-9f2108a55549}:1.0", - "{1375ba21-7913-45aa-bdca-400926e2e8f4}:1.0", - "{4869b892-c4af-49d3-bf6c-97a964addc70}:1.0", - "{51818b9a-397c-447c-95cb-a0911571eabc}:1.0", - "{1414adb7-8da5-4fa1-ad67-aad98b8d5154}:1.0", - "{b958747e-1e5a-40c4-aea9-6d90a3ddaabe}:1.0", - "{94a9de8b-fe4e-4448-ac7c-39838c719d80}:1.0", - "{6ab1ba24-3944-4a9a-ab72-ab3f73b3eac4}:1.0", - "{68ead0a9-f5b5-401e-b5eb-ae5ebb81ac31}:1.0", - "{2f3ee4af-a759-47a7-a6b8-1a254f0fad68}:1.0", - "{fe1a7fe1-1974-4bb8-8cae-343fff63c7a8}:1.0", - "{8c7081eb-210c-46bb-980e-2c4976170e8d}:1.0", - "{c498814f-eb02-4ff3-83d3-51cfb2af4939}:1.0", - "{6311b224-2203-4e0c-961b-1a7b5478b71b}:1.0", - "{a96f0e80-6487-42d5-bb19-855cd7477a3a}:1.0", - "{eba420f4-27f7-4938-af75-4374e995a5de}:1.0", - "{7bdc4568-73cb-43ba-a686-ac019d17e514}:1.0", - "{e596b83b-7ae1-490e-a7b7-3e9f5b8fe152}:1.0", - "{f1ead73b-ad2c-45d1-a649-8452e3fd2566}:1.0", - "{f8474e85-3ab5-4ee9-b925-5d8e634721ec}:1.0", - "{dd0d2e8e-143d-45f3-a80b-aa550e6518aa}:1.0", - "{4f92f0d5-5c8d-4016-b9f8-4790bf4105cc}:1.0", - "{eef535d8-d5af-44bd-b940-e44d15bd3ea1}:1.0", - "{b55e2fe5-647c-4bef-baba-cb1bc5159fca}:1.0", - "{a04acbb2-5787-4a09-9609-06d01b27577d}:1.0", - "{e1b75b03-2ea1-408a-a7d2-e96677052ab3}:1.0", - "{cf05d4bd-7eca-402e-be54-6f0a0bde1a96}:1.0", - "{27451ed8-e83a-4f39-a6e5-6a20155b8dae}:1.0", - "{5216aaf2-c4c7-4eb2-b377-35fd5e0719a3}:1.0", - "{0d9b58ff-7f9b-473e-b97b-46ad450929db}:1.0", - "{ca4182ef-ba0b-403e-951c-527d9f0817d0}:1.0", - "{8012aeae-abdd-4321-9b61-49a91407b2fa}:1.0", - "{ef6873bf-73f3-4e91-93d1-5826710a2525}:1.0", - "{0414b4da-e08c-45f0-b91c-af8f09cb0ec5}:1.0", - "{9f9c7d1f-c34d-4acc-9a9f-d0377cd6a832}:1.0", - "{78bd908e-256a-4023-befb-d54ab5434faf}:1.0", - "{6837d517-4cba-4244-bed7-e67310f62ea7}:1.0", - "{9861c6ed-36b4-4e85-a5ba-e4d8b646a517}:1.0", - "{5524e67b-0a7c-45bd-815f-9dcc8f9b05f7}:1.0", - "{8c5c190c-3248-40ad-8d8a-2e470f235b36}:1.0", - "{0ab8174e-f319-423d-a636-9b021b40e8d5}:1.0", - "{1b462efe-d68a-49a3-b0e0-5c9b77fa00ec}:1.0", - "{b3325a5a-143a-4aa4-8619-f0648dbd9817}:1.0", - "{293f19e2-db0f-4e57-b6ef-f14e413b713f}:1.0", - "{46d596c5-b0ba-48d0-897d-546988f4743b}:1.0", - "{5e566c91-8594-4c2e-a6ab-a7fdfa11463a}:1.0", - "{bfb98122-435d-4502-a40f-7764f0ab1b5b}:1.0", - "{85845107-5d4e-463e-90f2-58a7230fd666}:1.0", - "{ec717289-46d9-4d01-a6da-31f2f5404452}:1.0", - "{3afd9c3e-68dc-49ea-aaa2-314fa1c09646}:1.0", - "{eb6f414c-cff0-4369-94a5-337522e9e781}:1.0", - "{324658a2-1518-4fe2-aabd-714516b2cefc}:1.0", - "{84bb1d60-103f-4319-966c-873ea8654522}:1.0", - "{37129088-e4f2-4703-a62e-32e03117b231}:1.0", - "{4d10e571-7c5d-420d-a3cd-7bb88786f252}:1.0", - "{a54792d8-8693-4077-9e18-af96a5d23bc1}:1.0", - "{ceeae327-fd59-4220-9374-3322122e6cda}:1.0", - "{b6ba6cf7-0fde-4546-8743-61744b91cb42}:1.0", - "{5d1947a5-707b-47c3-8ba8-610ef527838d}:1.0", - "{225fd693-3cdb-4649-a187-cf2d434e5610}:1.0", - "{bb96bffa-534d-42b5-b4f4-037ccb775e3f}:1.0", - "{04fe272f-78b5-4ba3-9304-d19d9607a8af}:1.0", - "{c1f425ea-89b2-47c3-9d2d-fd113e42e7b8}:1.0", - "{432583db-ff88-4ab0-8c0b-10e9652d89f4}:1.0", - "{0200f8bd-69ea-47c6-a768-73cacb388e36}:1.0", - "{e57e0cce-0bab-4518-b0a4-48fd64b4a61b}:1.0", - "{596bf04f-3061-485e-bf13-06ccea63d9aa}:1.0", - "{afacec84-4de9-44bb-a0e8-b6db8364f5fe}:1.0", - "{5f284ee6-4853-4421-a78b-6816d04c6bcb}:1.0", - "{5813b9c9-caa9-4322-8169-ea89df40689b}:1.0", - "{8ba8847d-e765-432a-a604-017d5a6e0a47}:1.0", - "{26d2a279-79c1-408f-87a6-6603cfae8b97}:1.0", - "{92932b12-1e22-4751-8d8c-916452c2b397}:1.0", - "{cb151d5f-b2b5-4e5a-8ba6-270fe7ea4393}:1.0", - "{1a689891-6236-4db9-b652-ab63a49c8042}:1.0", - "{deb4c859-e7d3-48a9-8db4-8131cbadf50e}:1.0", - "{47c7df6d-319f-4ced-9475-0a27b92f70dc}:1.0", - "{fc686991-f16b-4d54-9e67-6a889b240500}:1.0", - "{e69d4399-35cf-4364-a129-01c49b1ce3b8}:1.0", - "{ffd788fd-de47-449a-8495-5511dcac5131}:1.0", - "{310ecb07-9527-47b0-bccc-ea65da1d114d}:1.0", - "{764772d5-93fc-42b9-aada-98cb5c86c7e0}:1.0", - "{ff95ec67-0ad2-43cf-9cad-40db6bd0f10b}:1.0", - "{1bf72391-afd0-4d44-906e-06a192ecccbf}:1.0", - "{29e6fa63-7403-4831-ab42-6d5008c355d3}:1.0", - "{bb54f980-f728-451f-82dc-a971d3fc894e}:1.0", - "{a47b7119-c6fc-476c-bd10-9d11a203f8ea}:1.0", - "{d60a35cb-f16c-409d-81e9-44d4d9cab0c8}:1.0", - "{fb01dc1a-f853-4766-a2ec-a872a0619c8a}:1.0", - "{74c6a0bc-fdcb-4cca-939a-9f0e0f54e1eb}:1.0", - "{888d1e21-49af-4c01-a07c-8799a40f1f28}:1.0", - "{77d9c641-29e1-49a8-ba0a-9fc140a1abb4}:1.0", - "{3491bc97-dd60-437f-a3f3-6832c4e94cac}:1.0", - "{95474ac5-94b9-4d57-9698-5397b6bea25f}:1.0", - "{5c610a18-8ca5-46e5-9760-982d06577060}:1.0", - "{fe0357fb-b401-4385-9af6-06b667570b5c}:1.0", - "{69535402-70a7-487c-8853-c05e520bbc8d}:1.0", - "{a9253665-a983-400b-bf5b-c7ab441b8315}:1.0", - "{9b7e02bd-c612-41f2-ac0a-f0d0bbc3907e}:1.0", - "{20b1ab38-b2ce-457c-b000-6c0fa95841a7}:1.0", - "{990316cd-b787-45be-9c85-2890ffbe9cd5}:1.0", - "{950c155d-6c44-4d05-9380-ed288df1f73f}:1.0", - "{1c028efe-3c40-4551-baa3-23223fb0ff82}:1.0", - "{cc681388-95b0-45ed-9b88-48a2b876ab62}:1.0", - "{7b3bdf94-734b-42ca-9c9f-5a6d0531d3c8}:1.0", - "{24649fca-a305-4b56-a458-3343b9ac2711}:1.0", - "{6d2d7044-3a0e-48e1-8b72-bb5a135bea8c}:1.0", - "{c15e8548-38b9-4fd1-b03e-11037f7954c6}:1.0", - "{dbb27ce5-edb2-4f47-ab9a-a11b3b5551ca}:1.0", - "{d21db038-13d1-4b6e-9f33-10bdf6bced0c}:1.0", - "{a29ac4aa-da19-46a4-9dbd-37e6ce80715e}:1.0", - "{b36898e3-d2a4-46d1-bf9f-dc8c4e881374}:1.0", - "{a5e94ab6-945d-4c49-a5a7-5bd3ee789fa2}:1.0", - "{62874236-6822-4e77-8bbf-d0f8f869c641}:1.0", - "{b23a3841-0f96-4d41-a05f-ceeaf361fe15}:1.0", - "{2406950a-6ddd-4cbd-85ca-06a2b0fc44e6}:1.0", - "{720276be-5524-49de-980f-e9e858fdcf4b}:1.0", - "{807cf134-79dc-487d-9024-804a2d203f38}:1.0", - "{00ce1915-e96f-4b54-ac79-bbcb78cb5440}:1.0", - "{4474f369-ab31-43fa-998f-4be21450efdb}:1.0", - "{044961c3-a013-4959-865e-64ead16937fe}:1.0", - "{3ea25900-8edb-428b-9abf-134b5fcf5346}:1.0", - "{479ce77f-bcb4-4040-88e9-86e33f56cefb}:1.0", - "{a6398b8f-1406-4484-90d4-9ef9d707636d}:1.0", - "{c42fae61-9d6c-4d44-ba26-b72e32caf25b}:1.0", - "{0ad3016c-ec60-4794-832b-8751e26be29a}:1.0", - "{bfd7ec72-41bd-4e1c-b636-13f1266dc94a}:1.0", - "{15bb6a77-2a4d-4c19-b904-3e1e603cef70}:1.0", - "{a393ec80-f53f-4a29-be8d-95c397931061}:1.0", - "{00a933be-37f1-495c-9259-37279b3f3135}:1.0", - "{68e00ea7-ee7a-45fc-87eb-e1559536ae6c}:1.0", - "{b7e7e1e5-71f9-43e4-a2dc-fbd23f96897b}:1.0", - "{03827721-529b-4eed-8cb3-6be63ae6bb51}:1.0", - "{8aacf4fd-f0e8-4dea-8ae6-a713304bf886}:1.0", - "{dc875bd4-8436-47d6-9524-8a66e73ce1a4}:1.0", - "{733b195e-003a-4e18-92c4-92805f6ec647}:1.0", - "{927f10c5-17e0-434d-9021-81daccf54223}:1.0", - "{1364fac7-f398-4e2b-8a9a-7b1a007f403e}:1.0", - "{06be3fac-fc92-4ead-bdea-f973bf5f8e79}:1.0", - "{d8d09afb-3dfe-48b1-938f-203dfd991534}:1.0", - "{4f88473e-fdde-42b1-b288-f91254e6016d}:1.0", - "{09ff3d2d-a92e-474d-a832-38e1d66eb693}:1.0", - "{4d9d71aa-83d2-48a0-a5a6-d61989650875}:1.0", - "{6873c040-67f3-42a3-9824-9174c80c24c8}:1.0", - "{82fbdb7c-4203-4e42-b7da-5c1b7a8194bb}:1.0", - "{e24f3b8d-458f-42b1-8de3-ee7f624a8dbd}:1.0", - "{59d6defd-f78e-49cd-8af8-d36d47736011}:1.0", - "{5cbb03e9-7d19-4c08-b5cb-0d0425521aca}:1.0", - "{7120bc25-982b-423a-b0f3-8c3f31722dfa}:1.0", - "{4680dfef-5239-4365-b046-6a007a6fdd89}:1.0", - "{b71869c4-60d1-488e-8a60-bb4a9a7564fd}:1.0", - "{9d64536a-c765-434d-a29d-ea1888caecfc}:1.0", - "{7e63b5a6-def8-41b8-9921-4d2f44c969c2}:1.0", - "{f0affe03-c7dd-4eb0-81fb-4374b282e405}:1.0", - "{58f2060f-a63c-4b74-8604-f8f18b316e54}:1.0", - "{25f05348-3b73-48b2-a9ce-1c255a9c9a37}:1.0", - "{8bdc0833-299c-42f3-adf3-3aba5ed6111e}:1.0", - "{042a5835-8973-4afd-8df6-33725d91daec}:1.0", - "{d0a9b23b-7971-472f-8306-b4f3463fc9a3}:1.0", - "{0127072c-b810-49bb-bced-7593d8984562}:1.0" - ], - "unblocked": [], - "softblocked": [ - "chinagate-echo666@chinagate.online:2.0.0", - "{5443487c-f5a8-4e1f-9aeb-49a9d934aed1}:1.0", - "{65f6cb15-ea73-4675-b56d-cee79eedd1c1}:1.0.2", - "{65f6cb15-ea73-4675-b56d-cee79eedd1c1}:1.0.1", - "{65f6cb15-ea73-4675-b56d-cee79eedd1c1}:1.2", - "web@golo.vin:1.7.4", - "{2fa42d77-7f3c-429d-984b-94bfcefd1d87}:1.0", - "translate-and-save@al2718x:0.0.11", - "raic_dev@proton.me:0.1", - "tab-renamer@leaver.me:1.0.0", - "tab-renamer@leaver.me:1.0.1", - "forum-assistant@jony-sokolov.ru:2.0.7" - ] - }, - "schema": 1768545393358, - "key_format": "{guid}:{version}", - "stash_time": 1768566906288, - "id": "0b09be35-4c8e-4a75-8ba5-da8423de6f42", - "last_modified": 1768566990759 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "hv-tools@rxtx.pt:1.0.11", - "chinagate-sales@chinagate.online:1.0.7", - "chinagate-sales@chinagate.online:1.0.5", - "forum-assistant@jony-sokolov.ru:2.0.6", - "chinagate-sales-echo666@chinagate.online:1.0.9", - "chinagate-sales-echo666@chinagate.online:1.0.8", - "{59b3e264-9334-4eb1-b5e7-65c669766b11}:1.3", - "{0836ca14-dd1d-4eef-86cd-f794ba063e0d}:1.0", - "{0836ca14-dd1d-4eef-86cd-f794ba063e0d}:1.1" - ] - }, - "schema": 1768523791841, - "key_format": "{guid}:{version}", - "stash_time": 1768545307523, - "id": "12e27db5-2f16-44fd-ab88-6a0815a061ee", - "last_modified": 1768545393181 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "Bazaar@nchoremiot.com:2.5.37.1", - "Bazaar@nchoremiot.com:2.5.36", - "Bazaar@nchoremiot.com:2.5.37.2", - "SASTweaks@rci.rogers.com:0.3.0", - "{e80494f4-2ac2-416c-a720-39af282f2441}:12.82", - "{e80494f4-2ac2-416c-a720-39af282f2441}:12.83", - "{e80494f4-2ac2-416c-a720-39af282f2441}:15.404.3", - "{e80494f4-2ac2-416c-a720-39af282f2441}:15.404.5", - "{e80494f4-2ac2-416c-a720-39af282f2441}:15.404.6", - "{8fdea742-9b86-4c1f-a79b-e8b5c6aa21e7}:7.1", - "{8fdea742-9b86-4c1f-a79b-e8b5c6aa21e7}:7.2", - "{8fdea742-9b86-4c1f-a79b-e8b5c6aa21e7}:6.9", - "{8fdea742-9b86-4c1f-a79b-e8b5c6aa21e7}:6.3", - "{8fdea742-9b86-4c1f-a79b-e8b5c6aa21e7}:6.8", - "kurabu-ausweis@bremen1860.de:1.0.0", - "securecrt-launcher@autozone.com:2.0.2", - "securecrt-launcher@autozone.com:1.0.4", - "better-error-log@justbax.uz:1.0.1", - "forum-assistant@jony-sokolov.ru:2.0.2", - "forum-assistant@jony-sokolov.ru:2.0.5", - "{517c58a8-95f9-467a-9f03-2d273654cdf8}:0.14.0", - "hv-tools@rxtx.pt:1.0.9", - "hv-tools@rxtx.pt:1.0.10", - "mosa.albedre6@gmail.com:1.1" - ] - }, - "schema": 1768502189961, - "key_format": "{guid}:{version}", - "stash_time": 1768523706211, - "id": "28f240d6-1ddc-4c08-9e03-a92e04e11d87", - "last_modified": 1768523791637 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "editorseguro-observaciones2@asisa.co:1.4.1", - "editorseguro-observaciones@asisa.co:1.4.1", - "editor-safemode@example.com:1.1", - "editor-seguro-asisa-obs@asisa.internal:1.4.1", - "ai-study-assistant@deepseek.user:1.2.5", - "ai-study-assistant@deepseek.user:1.2.2", - "priceradar@priceradar.cloud:6.85.10", - "priceradar@priceradar.cloud:6.85.11", - "priceradar@priceradar.cloud:6.85.23", - "priceradar@priceradar.cloud:6.85.12", - "priceradar@priceradar.cloud:6.85.14", - "priceradar@priceradar.cloud:6.85.22", - "open2ch@db3.so-net.ne.jp:0.2.2", - "open2ch@db3.so-net.ne.jp:0.2.1", - "ai-prompt-helper@manus.ai:1.0.0", - "{cf11117a-21cb-406d-bf0b-62d37aaf2874}:1.14", - "{cf11117a-21cb-406d-bf0b-62d37aaf2874}:1.15", - "{728d4e99-b1f6-4125-8376-a1b2c3d4e5f6}:1.0", - "{728d4e99-b1f6-4125-8376-a1b2c3d4e5f6}:1.1", - "morohoschidanieli@gmail.com:1.0.1", - "space-game-debugger@diego.local:1.5", - "{32343d46-c4e4-4afe-b26c-f9f94c139437}:1.0", - "{9f5cd67c-606f-41b8-99e2-a2816dc10209}:1.0" - ] - }, - "schema": 1768480589720, - "key_format": "{guid}:{version}", - "stash_time": 1768502106998, - "id": "d3285f06-f9d3-46c8-a65b-af409881b94f", - "last_modified": 1768502189864 - }, - { - "stash": { - "blocked": [ - "{3d65ca6d-c349-4c9d-b32c-b3734861d43e}:4.8.6", - "{3d65ca6d-c349-4c9d-b32c-b3734861d43e}:4.8.7", - "{3d65ca6d-c349-4c9d-b32c-b3734861d43e}:4.8.8", - "{f0e18123-9203-4b16-abf5-81b81946155e}:5.4.2", - "{f0e18123-9203-4b16-abf5-81b81946155e}:5.4.3", - "{f0e18123-9203-4b16-abf5-81b81946155e}:5.4.5", - "initio@addon.org:0.1.5" - ], - "unblocked": [], - "softblocked": [ - "{a57096a0-5cb5-451b-b787-4140d5ba4448}:1.5.4", - "priceradar@priceradar.cloud:6.85.16", - "priceradar@priceradar.cloud:6.85.17", - "priceradar@priceradar.cloud:6.85.18", - "priceradar@priceradar.cloud:6.85.19", - "priceradar@priceradar.cloud:6.85.20", - "kick-chat-toggle@kick.com:1.0", - "Black7adder@gmail.com:1.6", - "{c466efb2-3aae-4b8d-ba13-ff210dab4bf7}:2.0.22062.1", - "{c466efb2-3aae-4b8d-ba13-ff210dab4bf7}:2.0.22144.1", - "{c466efb2-3aae-4b8d-ba13-ff210dab4bf7}:2.1.22277.1", - "sub-reader-b-voicevox@your-unique-id.com:1.0.0", - "sub-reader-c-voicevox@your-unique-id.com:1.0.0", - "sub-reader-d-voicevox@your-unique-id.com:1.0.0", - "magnolia@12.34:4.2.8.1" - ] - }, - "schema": 1768458981071, - "key_format": "{guid}:{version}", - "stash_time": 1768480506788, - "id": "1bd52fc5-9779-48fc-8323-57fe43a8538f", - "last_modified": 1768480589514 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{7c6a4b6f-4c2f-4a3d-8a9b-5c1f2b9d1e77}:2.0", - "{7c6a4b6f-4c2f-4a3d-8a9b-5c1f2b9d1e77}:1.5.3", - "{7c6a4b6f-4c2f-4a3d-8a9b-5c1f2b9d1e77}:1.5.5", - "{7c6a4b6f-4c2f-4a3d-8a9b-5c1f2b9d1e77}:1.5.2", - "eye-extensions@eye.com:1.0.0", - "eye-extensions@eye.com:1.0.1", - "eye@tianji.com:1.0.1", - "eye@tianji.com:1.0.2", - "contact@pokerayou.info:1.0.2", - "contact@pokerayou.info:1.0.1" - ] - }, - "schema": 1768437381668, - "key_format": "{guid}:{version}", - "stash_time": 1768458905457, - "id": "e05cb8ee-33b8-45cd-b921-25195bee7c5d", - "last_modified": 1768458980897 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "addon@idriss-crypto.com:0.1.2", - "addon@idriss-crypto.com:0.1.5", - "addon@idriss-crypto.com:0.3.0", - "addon@idriss-crypto.com:0.3.1", - "addon@idriss-crypto.com:1.0.2", - "addon@idriss-crypto.com:1.0.3", - "addon@idriss-crypto.com:1.0.4", - "addon@idriss-crypto.com:1.0.5", - "addon@idriss-crypto.com:1.0.6", - "addon@idriss-crypto.com:1.0.7", - "{2500983d-3c64-46ae-87cc-c95e865ad16b}:1.1", - "{39f44523-4b88-4d95-b7d0-7b7db15d62f4}:1.0", - "{39f44523-4b88-4d95-b7d0-7b7db15d62f4}:2.0", - "image-downloader@ozler365:14.9", - "youtube-perplexity-buttons@huseyinfurkankiziloglu1.gmail.com:1.0.0", - "network-support.gtus@betmakers.com:1.1", - "{a8c60439-b92d-4982-b848-b3faff490544}:1.0", - "{50114083-b404-45a6-8af8-28eae06d6d45}:1.0", - "chim-chat@extension:2.9", - "chim-chat@extension:2.11", - "pagepulse@addon.com:1.0", - "hv-tools@rxtx.pt:1.0.7", - "hv-tools@rxtx.pt:1.0.8", - "dwd-taf-monitor@schoenebeckm:1.2", - "dwd-taf-monitor@schoenebeckm:2.1", - "dwd-taf-monitor@schoenebeckm:1.3", - "dwd-taf-monitor@schoenebeckm:1.4", - "dwd-taf-monitor@schoenebeckm:1.5", - "dwd-taf-monitor@schoenebeckm:1.6", - "dwd-taf-monitor@schoenebeckm:1.7", - "dwd-taf-monitor@schoenebeckm:1.8" - ] - }, - "schema": 1768415789487, - "key_format": "{guid}:{version}", - "stash_time": 1768437305625, - "id": "3a5020e6-24e7-4888-bb12-f4ae08651e0f", - "last_modified": 1768437381496 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "buscaid@seudominio.com:2.5.1", - "viretta@truth.interface:4.2.8", - "priceradar@priceradar.cloud:6.85.9", - "priceradar@priceradar.cloud:6.85.1", - "priceradar@priceradar.cloud:6.85.2", - "priceradar@priceradar.cloud:6.85.3", - "priceradar@priceradar.cloud:6.85.5", - "priceradar@priceradar.cloud:6.85.7", - "priceradar@priceradar.cloud:6.85.8", - "{99c2c493-40f3-477a-9cf5-3368c4ed3a72}:1.0", - "Pwn@kasem545.github.io:1.2.0", - "67016c9f-14a9-4f0b-8e2b-c7b464acad3e@example.com:1.0", - "youtube-theme-pro@example.com:1.2.1.4", - "barnabas.kamilly@vodafone.com:1.0", - "2fdc6cdb-d239-410a-a23e-05a861bad635@example.com:1.0", - "admincore-vpn@admincore.org:2.0.0", - "csv-tracker-test@example.com:0.1" - ] - }, - "schema": 1768394192613, - "key_format": "{guid}:{version}", - "stash_time": 1768415706832, - "id": "a556f619-9e71-4816-bc05-7ea1a55e52cd", - "last_modified": 1768415789288 - }, - { - "stash": { - "blocked": [ - "{63ce3427-167c-404c-8c6c-602dac1f61b7}:1.0", - "{63ce3427-167c-404c-8c6c-602dac1f61b7}:109.32", - "{db1c726d-f1c9-4961-8373-47adf1a4c3b5}:1.0", - "{db1c726d-f1c9-4961-8373-47adf1a4c3b5}:3.2.4", - "{5f3696b8-80bc-4fa1-a9f7-c18b64749faa}:5.6.0", - "{5f3696b8-80bc-4fa1-a9f7-c18b64749faa}:5.6.1", - "{95106873-05bb-4cf4-bd4d-4423c3ff56aa}:5.3.7", - "{95106873-05bb-4cf4-bd4d-4423c3ff56aa}:5.3.8", - "{95106873-05bb-4cf4-bd4d-4423c3ff56aa}:5.3.9", - "{381e2858-65da-44c8-a3cf-224a3f4ef887}:2.6.4", - "{381e2858-65da-44c8-a3cf-224a3f4ef887}:2.6.5", - "{381e2858-65da-44c8-a3cf-224a3f4ef887}:2.6.6", - "{381e2858-65da-44c8-a3cf-224a3f4ef887}:2.6.7", - "{2925a488-ebaf-48d0-b059-39d2b29aa783}:1.0", - "{2925a488-ebaf-48d0-b059-39d2b29aa783}:2.0", - "{c7615d09-13b2-4a8a-b5ea-e85fcd88994f}:1.0", - "{c7615d09-13b2-4a8a-b5ea-e85fcd88994f}:2.0", - "{086496b8-5849-4286-b4fb-b6c0903105b3}:1.0", - "{086496b8-5849-4286-b4fb-b6c0903105b3}:2.0", - "{a83ca2f1-6c40-416b-952a-6a4caa814036}:1.0", - "{a83ca2f1-6c40-416b-952a-6a4caa814036}:2.0", - "{17d18343-d020-4fe3-88e8-66a6934613c7}:1.0", - "{17d18343-d020-4fe3-88e8-66a6934613c7}:2.0", - "{650d1ff8-f601-4ebf-9e68-e21aacf89b92}:1.0", - "{650d1ff8-f601-4ebf-9e68-e21aacf89b92}:2.0", - "{cfd20493-406f-4ccf-8452-c941a7dcb10f}:11.1.0", - "{06b670cb-b64b-4ab0-92cb-f918495eb044}:11.1.0", - "{024a974b-dbe5-4d4c-b141-83be0ffea8fa}:1.0", - "{024a974b-dbe5-4d4c-b141-83be0ffea8fa}:2.3", - "{024a974b-dbe5-4d4c-b141-83be0ffea8fa}:11.3", - "{024a974b-dbe5-4d4c-b141-83be0ffea8fa}:1091.3", - "{024a974b-dbe5-4d4c-b141-83be0ffea8fa}:1095.3", - "{7cdece7f-00fa-41a1-a1ac-bbef57e0c962}:1.0", - "{7cdece7f-00fa-41a1-a1ac-bbef57e0c962}:301.15.2" - ], - "unblocked": [], - "softblocked": [ - "MinYT@example.org:9.0.4", - "{8ae6475f-8082-4e86-b55a-994aad3f7c12}:1.0.20", - "{8ae6475f-8082-4e86-b55a-994aad3f7c12}:1.0.27", - "tabme-like@carat.de:0.3.3", - "darkfilter@nikitka2k11.example.com:1337.0", - "ldcnohnnlpgglecmkldelbmiokgmikno@chrome-store-foxified-297124389:4.0.7", - "addon@trashmail.com:7.2.4", - "{d7a1626d-fe85-4aef-b8f9-7b28709b4165}:2.3.0", - "{401eb9fa-c372-4686-a774-0de196215737}:2.3.4", - "{e0c04942-b9d5-4619-a0a8-19f1eed0907a}:2.0.22062.1", - "{e0c04942-b9d5-4619-a0a8-19f1eed0907a}:2.0.22144.1", - "{e0c04942-b9d5-4619-a0a8-19f1eed0907a}:2.1.22277.1", - "technopatai-ai-asistan@atakan.dev:1.0.0", - "chim-chat@extension:2.10", - "eye-extensions@tianji.com:1.0.0", - "eye-extensions@tianji.com:1.0.1", - "eye-extensions@tianji.com:1.0.2", - "download-package@tianji.com:0.0.0", - "eye-extensions1@tianji.com:1.0.0", - "{6ab1a57b-2b1c-4c8f-a397-49ce2937d723}:4.63", - "{19081191-3f2a-4a52-9944-bdc2f392e9f1}:2025.2.21" - ] - }, - "schema": 1768372592742, - "key_format": "{guid}:{version}", - "stash_time": 1768394106490, - "id": "b7a7f547-4f10-446a-873e-4bdf962f015a", - "last_modified": 1768394192458 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{7d9b7c71-2616-4f43-b08e-4afb9c81a40a}:1.0", - "kbnn-tra-cuu@mydomain.com:1.3.7", - "kbnn-tra-cuu@mydomain.com:1.3.7.1", - "kbnn-tra-cuu@mydomain.com:1.3.7.2", - "kbnn-tra-cuu@mydomain.com:1.3.7.4", - "kbnn-tra-cuu@mydomain.com:1.3.7.5", - "chim-chat@extension:2.6", - "chim-chat@extension:2.7", - "chim-chat@extension:2.8", - "{3d808b4f-3422-425d-8b40-4bf9330fd6e3}:1.0", - "{b6a47c8f-90cf-4dc0-85fa-a57b81aaa50b}:2.2.1", - "kinozalhelper@elektrikis.id.lv:3.8.1", - "kinozalhelper@elektrikis.id.lv:3.8.2", - "kinozalhelper@elektrikis.id.lv:3.8.3", - "admincore-vpn@admincore.org:1.0.0", - "yang-profile-popup@example.com:1.0.4", - "garment-checker@thiha.com:4.0.0", - "animeplanet-additions@sandelier.com:2.0.4" - ] - }, - "schema": 1768350991442, - "key_format": "{guid}:{version}", - "stash_time": 1768372506281, - "id": "5a6a40ef-34dc-4940-b7a8-692ec767d20e", - "last_modified": 1768372592491 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "eappext@rainnsoft.com:0.0.1", - "diba103@tab-pin:0.0.1", - "{c5e2fb1f-0060-4a23-ab22-9f8bf32941e8}:1.0", - "ingeniousbirds@proton.me:0.0.0.6", - "{a992c867-377e-4a14-bf66-06f61ad299fe}:1.0", - "{1c0575dc-870a-4ecc-a555-713bdeded888}:1.0", - "chim-chat@extension:2.5", - "chim-chat@extension:2.4", - "chim-chat@extension:2.3" - ] - }, - "schema": 1768329389678, - "key_format": "{guid}:{version}", - "stash_time": 1768350906155, - "id": "1f9f2cdf-0409-4005-87e9-924f62b43428", - "last_modified": 1768350991168 - }, - { - "stash": { - "blocked": [ - "{2ba4590a-e59c-49cc-b7d2-5cfa71a9df8e}:1.0", - "{37546f25-64a3-4e73-ad1e-ca60e8180e67}:1.0", - "{05f15149-2025-4135-b58e-936746cda3f1}:1.0", - "{05f15149-2025-4135-b58e-936746cda3f1}:109.3", - "{722e7e77-61e8-4c9e-b2da-6cb0e475d8dc}:1.0", - "{722e7e77-61e8-4c9e-b2da-6cb0e475d8dc}:1.3", - "{722e7e77-61e8-4c9e-b2da-6cb0e475d8dc}:32.7.1", - "{722e7e77-61e8-4c9e-b2da-6cb0e475d8dc}:1231.3", - "{722e7e77-61e8-4c9e-b2da-6cb0e475d8dc}:3333.4", - "{722e7e77-61e8-4c9e-b2da-6cb0e475d8dc}:16666.4", - "{722e7e77-61e8-4c9e-b2da-6cb0e475d8dc}:17000.4" - ], - "unblocked": [], - "softblocked": [ - "slush@slushsui2.dev:0.1.1", - "goe-attainia-integration@goenergistics.com:1.0.0", - "ai-menu@exam2222ple.com:1.0", - "{17e88b83-99ed-49ee-9395-945821ce2cda}:2.0.22062.1", - "{17e88b83-99ed-49ee-9395-945821ce2cda}:2.0.22144.1", - "{17e88b83-99ed-49ee-9395-945821ce2cda}:2.1.22277.1", - "{17e56df6-3f52-4fba-85df-3953aa715c10}:2.0.22062.1", - "{17e56df6-3f52-4fba-85df-3953aa715c10}:2.0.22144.1", - "{17e56df6-3f52-4fba-85df-3953aa715c10}:2.1.22277.1", - "{ac373c6d-36b1-45f2-a34b-65aa715e7d3c}:1.0", - "{ac373c6d-36b1-45f2-a34b-65aa715e7d3c}:2.0.0", - "{836fd847-2bda-499a-825b-7301d7d1769c}:1.0", - "{836fd847-2bda-499a-825b-7301d7d1769c}:2.0", - "{60b64c73-06da-41c4-9eb2-b4a614cd84db}:1.0", - "{60b64c73-06da-41c4-9eb2-b4a614cd84db}:2.0", - "{ed802f99-7ba2-482d-b96f-cb9dffe2b01a}:1.0", - "{ed802f99-7ba2-482d-b96f-cb9dffe2b01a}:2.0", - "{3b3619f8-5fab-4a9c-b94b-aa4b54296a4b}:1.0", - "{3b3619f8-5fab-4a9c-b94b-aa4b54296a4b}:2.0", - "{41988268-e9f3-4f5d-b5f9-31a1b7b4fbc0}:1.0", - "{41988268-e9f3-4f5d-b5f9-31a1b7b4fbc0}:2.0", - "{83014e62-7faf-4e62-a208-b943a62510d9}:1.0", - "{83014e62-7faf-4e62-a208-b943a62510d9}:2.0", - "websummarize2notion@example.com:3.5", - "amazon-takipci-v5@gemini.local:12.6", - "{70e1944c-722b-4c7f-956c-004f7e24f008}:1.0", - "{70e1944c-722b-4c7f-956c-004f7e24f008}:2.0" - ] - }, - "schema": 1768307792908, - "key_format": "{guid}:{version}", - "stash_time": 1768329307029, - "id": "07b849b3-1547-4f34-b4a8-6780d206a7c7", - "last_modified": 1768329389519 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{06825226-7d24-4ffc-8862-c4befe4f82bd}:1.0", - "office-connector-v3@birthsupportbd.xyz:1.3", - "{774584fa-54e2-437a-bf27-104f2bc04807}:1.32", - "adamas.koff@yandex.ru:3.5", - "{da0dd7de-4d69-4079-b996-5b6088b34fbb}:2.0.64", - "{2679a16c-771a-4823-a9c3-33131fbc75ee}:2.0.64", - "{b6874cb7-8ece-43ad-8180-e3f7de48416a}:2.0.64", - "cartinel@cartinel.app:1.2.0", - "cartinel@cartinel.app:1.3.1", - "cartinel@cartinel.app:1.3.3", - "SuperDrag@qiannian.com:3.8.2", - "{75f06b56-4cc5-4c20-aa5e-6ccf5b0ad6fd}:2.0.64", - "dot-extension@parity.io:0.1.0", - "SuperDrag@qiannian.com:3.8.3", - "{2a03adba-b51d-4f92-8c63-a7adf2572d98}:220260112.2" - ] - }, - "schema": 1768286191551, - "key_format": "{guid}:{version}", - "stash_time": 1768307706895, - "id": "a311be2f-43a6-45cc-96cd-97a588744c48", - "last_modified": 1768307792733 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{774584fa-54e2-437a-bf27-104f2bc04807}:1.31", - "sis-courseforum-linker@yourdomain.com:1.3", - "kbnn-tra-cuu@mydomain.com:1.3.7.3", - "youtube-volume-normalizer@murahito130.co.jp:3.0.1", - "youtube-volume-normalizer-dev@murahito130.co.jp:3.0.1", - "emailai@sitcdinhvu.vn:1.1.4", - "{a1b2c3d4-e5f6-4a5b-8c9d-e1f2a3b4c5d6}:1.6", - "{a1b2c3d4-e5f6-4a5b-8c9d-e1f2a3b4c5d6}:1.7" - ] - }, - "schema": 1768264594872, - "key_format": "{guid}:{version}", - "stash_time": 1768286106545, - "id": "a92eea01-eedd-48f1-8422-e92e9b1d4587", - "last_modified": 1768286191310 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{1cb243bb-f736-4cbd-a4d3-220396c0cc1a}:1.0", - "{ebd57e35-a0c1-4fa1-85c7-73026e8bdc15}:1.0", - "{43065e13-181a-48da-98b4-f976ca462d2f}:1.0", - "snipper@heiko.dev:0.1.0", - "socks5-switcher@dein-name.addon:1.0", - "socks5-switcher@dein-name.addon:2.0", - "socks5-switcher@dein-name.addon:2.1", - "socks5-switcher@dein-name.addon:2.3", - "chim-chat@extension:2.2", - "{97e9c08a-78aa-4351-b5d7-1ffa96674977}:1.1", - "{97e9c08a-78aa-4351-b5d7-1ffa96674977}:1.2", - "{aa7ad30d-418b-48a0-9278-785535210e05}:1.0", - "tjsdeveloper.apps@gmail.com:1.1.6", - "amazon-takipci-v5@gemini.local:12.5", - "@5729ddf7-2c4f-4e57-ba92-baa51996b33a:5.3.9", - "@5729ddf7-2c4f-4e57-ba92-baa51996b33a:5.4.1", - "@5729ddf7-2c4f-4e57-ba92-baa51996b33a:5.4.2", - "asb-calendar-updater@asb:1.0", - "asb-calendar-updater@asb:1.1" - ] - }, - "schema": 1768242995484, - "key_format": "{guid}:{version}", - "stash_time": 1768264506927, - "id": "9899db0c-ef7e-4d07-804d-9db4e66d6f2c", - "last_modified": 1768264594640 - }, - { - "stash": { - "blocked": [], - "unblocked": [ - "atomic@example.com:1.0", - "atomic@example.com:1.1", - "atomic@example.com:1.2", - "atomic@example.com:1.3", - "atomic@example.com:2.0", - "atomic@example.com:2.1", - "atomic@example.com:2.2" - ], - "softblocked": [ - "PublicPodTracker@gmail.com:1.3", - "{29206186-5a69-4bd3-98ee-f004f7ca1ec2}:1.0", - "semnaturaextensionsigned@sign.ro:1.6", - "video-previews@uivil.github:1.0.2", - "{b5e57a1e-8452-4499-b0c4-635b588c9486}:0.3.3", - "priceradar@priceradar.cloud:6.85", - "@f2418b15-0998-43fc-a47a-9546d3690226:4.9.8", - "@9a1b0c82-2f63-4fcc-bcf1-faffcd9bec5d:4.9.7", - "egnyte-cookie-manager@migration-app:1.3", - "@86deb049-c35a-4c69-b0c0-a52a14fa3186:2.5.3", - "@7e1be1f1-5454-43e2-b4aa-b802a88cab11:5.8.2", - "{67788975-7308-472b-bc17-b99e4330ed8f}:1.7", - "{67788975-7308-472b-bc17-b99e4330ed8f}:1.6", - "{67788975-7308-472b-bc17-b99e4330ed8f}:1.4", - "{67788975-7308-472b-bc17-b99e4330ed8f}:1.3", - "{67788975-7308-472b-bc17-b99e4330ed8f}:1.2", - "{67788975-7308-472b-bc17-b99e4330ed8f}:1.1", - "{67788975-7308-472b-bc17-b99e4330ed8f}:1.0", - "{ac083b82-c9ab-41ec-bda0-4c3505e8fb53}:1.0", - "{ac083b82-c9ab-41ec-bda0-4c3505e8fb53}:4.0" - ] - }, - "schema": 1768221389790, - "key_format": "{guid}:{version}", - "stash_time": 1768242907066, - "id": "6ccaa70a-2454-4ab8-83e9-11e7560ab01c", - "last_modified": 1768242995377 - }, - { - "stash": { - "blocked": [ - "{f57ae733-95d1-4fc7-b61b-09e07c7442ec}:1" - ], - "unblocked": [], - "softblocked": [ - "{5abf0ed0-d3e9-474a-a304-88e89fd03df2}:1.3", - "{c6e1bf4d-ddeb-4dfd-b4f7-d80aae009da0}:105.3", - "{5abf0ed0-d3e9-474a-a304-88e89fd03df2}:1.0", - "emailai@sitcdinhvu.vn:1.1.2.1", - "{63ce3427-167c-404c-8c6c-602dac1f61b7}:109.31", - "priceradar@priceradar.cloud:6.84.8", - "{33cab89c-026a-43e2-a6b1-ec5a01a6ae54}:5.50", - "{c6e1bf4d-ddeb-4dfd-b4f7-d80aae009da0}:1.0", - "flowplugin@mostafa.dev:1.0.1", - "priceradar@priceradar.cloud:6.84.9", - "priceradar@priceradar.cloud:6.84.10", - "priceradar@priceradar.cloud:6.84.11", - "priceradar@priceradar.cloud:6.84.13", - "priceradar@priceradar.cloud:6.84.15", - "{93809a22-01b4-47c0-ae14-7b271fbf0e67}:1.0", - "{4c6e6c67-4cbf-4fd1-a7aa-bc1e0cd5e9c0}:1.0", - "youtube-upload-date@local:1.0.0", - "youtube-upload-date@local:1.0.1", - "youtube-upload-date@local:1.0.2", - "{2b51c334-5e28-4d7f-8272-727a8f128b5f}:1.0", - "@b45953e1-178f-49c4-878f-8e0f006cb850:3.8.5", - "@b45953e1-178f-49c4-878f-8e0f006cb850:3.8.6", - "@b45953e1-178f-49c4-878f-8e0f006cb850:3.8.7", - "MinYT@example.org:9.0" - ] - }, - "schema": 1768199790098, - "key_format": "{guid}:{version}", - "stash_time": 1768221306784, - "id": "db1987e4-0968-4a47-8a05-f0caeb880f90", - "last_modified": 1768221389638 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "pixiv-templater@gabszap:2.1.0", - "{71c78d5c-25b8-4821-bda2-a7dd4c793b60}:1.0.1", - "securecrt-launcher@autozone.com:1.0.2", - "priceradar@priceradar.cloud:6.84.4", - "priceradar@priceradar.cloud:6.84.6", - "priceradar@priceradar.cloud:6.84.5", - "priceradar@priceradar.cloud:6.84.7", - "focusera@focusora.space:1.0.1", - "{63ce3427-167c-404c-8c6c-602dac1f61b7}:109.3" - ] - }, - "schema": 1768178179306, - "key_format": "{guid}:{version}", - "stash_time": 1768199706427, - "id": "6cb6863e-d9f1-44d4-af75-c953561f5b61", - "last_modified": 1768199789950 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "image-downloader@ozler365:14.1", - "image-downloader@ozler365:14.3", - "twitch-command-menu@local:1.3.38", - "prv-magnetcatcher-v1@melchio:1.0.0", - "prv-magnetcatcher-v1@melchio:2.0.0", - "@446af9a7-0b10-4766-82cd-7270e9ecd30e:2.5.0", - "priceradar@priceradar.cloud:6.78", - "priceradar@priceradar.cloud:6.79", - "priceradar@priceradar.cloud:6.80", - "priceradar@priceradar.cloud:6.81", - "priceradar@priceradar.cloud:6.82", - "priceradar@priceradar.cloud:6.83", - "priceradar@priceradar.cloud:6.84", - "priceradar@priceradar.cloud:6.84.1", - "priceradar@priceradar.cloud:6.84.2", - "chim-chat@extension:2.0", - "chim-chat@extension:1.2", - "linkding-bookmarks-sync@local:0.1.0", - "linkding-bookmarks-sync@local:0.1.1", - "linkding-bookmarks-sync@local:0.1.2", - "chim-chat@extension:2.1" - ] - }, - "schema": 1768156588768, - "key_format": "{guid}:{version}", - "stash_time": 1768178106097, - "id": "c5e0f1c4-df37-4907-ba3d-1baa5212bb70", - "last_modified": 1768178179116 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "monitoring-alarm@local:1.3", - "guardianlink@example.com:2.0.0", - "image-downloader@ozler365:14.2", - "{5f346a63-5ac8-40c5-b795-41a189d6195c}:3.0", - "price-tracker@examples.local:0.1.0", - "price-tracker@examples.local:0.1.2", - "price-tracker@examples.local:0.1.3", - "price-tracker@examples.local:0.1.4", - "price-tracker@examples.local:0.1.5", - "price-tracker@examples.local:0.1.6", - "price-tracker@examples.local:0.1.9", - "text-expander@yourdomain.com:3.2.3", - "{a8f5778b-93d9-465b-847b-d772b7f07c46}:0.1.0", - "{532db4bf-63ca-4518-bb36-7f89ce9615f7}:7.6.0", - "chim-chat@extension:1.1", - "image-downloader@ozler365:14.5" - ] - }, - "schema": 1768134982704, - "key_format": "{guid}:{version}", - "stash_time": 1768156506255, - "id": "13f8cb0f-95f8-465f-9b3e-8760361714e4", - "last_modified": 1768156588522 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "my-custom-new-tab@local:1.3.2", - "my-custom-new-tab@local:1.3.1", - "my-custom-new-tab@local:1.3", - "my-custom-new-tab@local:1.2", - "@AutodartNotificator:1.0", - "@AutodartNotificator:2.0", - "{5f346a63-5ac8-40c5-b795-41a189d6195c}:1.0", - "{5f346a63-5ac8-40c5-b795-41a189d6195c}:2.0", - "screen-time-tracker@my-local-app:2.0", - "mcr2601.mr@gmail.com:1.0", - "mcr2601.mr@gmail.com:1.1", - "chim-chat@extension:1.0", - "greencoupon-ksa@shourk.com:0.0.2", - "bookmark-tracker@yourdomain.local:3.1", - "addontest49610@testexample.com:0.0.1", - "vektori-memory@vektori.cloud:1.0.4" - ] - }, - "schema": 1768091788509, - "key_format": "{guid}:{version}", - "stash_time": 1768134905741, - "id": "c466bdef-ebac-4735-880a-c48e16589e6c", - "last_modified": 1768134982508 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "@widewine:241029.1", - "{cd27dc3b-285f-49b7-896a-e99d210326aa}:1.0", - "openwith@darktrojan.net.signed:7.2.1", - "{6fcfbe86-e569-4247-be0a-2ad6cc70a59d}:10", - "{6fcfbe86-e569-4247-be0a-2ad6cc70a59d}:3.2", - "{6fcfbe86-e569-4247-be0a-2ad6cc70a59d}:3.3", - "{6fcfbe86-e569-4247-be0a-2ad6cc70a59d}:3.4", - "image-downloader@ozler365:6.5", - "image-downloader@ozler365:13.8", - "image-downloader@ozler365:12.8", - "custom-lightbeam-android@perfecta:3.0.1" - ] - }, - "schema": 1768070189404, - "key_format": "{guid}:{version}", - "stash_time": 1768091706411, - "id": "9cc749c2-1895-48f7-bafd-91b34d1d9ae1", - "last_modified": 1768091788436 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "twitch-socks5@example.com:1.0", - "svdownloader-addon@svalex.com:1.0.0", - "svdownloader-addon@svalex.com:1.0.1", - "pogdesign-imdb@benestrabaud.gmail.com:1.0", - "{af51db4b-43f3-48ff-9035-989b7c8cf72c}:0.1.0", - "{af51db4b-43f3-48ff-9035-989b7c8cf72c}:0.2.0", - "darkfilter@nikitka2k10.example.com:1337.0" - ] - }, - "schema": 1768048589281, - "key_format": "{guid}:{version}", - "stash_time": 1768070106017, - "id": "f2f7db2f-a088-4b65-8712-1f8d5a3a41f5", - "last_modified": 1768070189320 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "bookmark-tracker@unique-id.local:1.8", - "{fd9b2498-4028-46d7-a32d-d4febc58f37a}:1.0", - "{833a3f30-a3af-4be9-ac15-14572ca88a87}:0.1.0", - "{e85a1a44-34c7-40df-a025-fccf413a35cc}:0.1.0", - "orange-visited-links@firefox.com:1.0", - "contact@bulenox.codes:4.3.20", - "contact@bulenox.codes:4.3.21", - "exmanga@djob2eotwqw1.ru:4.2.2", - "lionwheel-notes@anipet.local:0.1.0" - ] - }, - "schema": 1768026989092, - "key_format": "{guid}:{version}", - "stash_time": 1768048506622, - "id": "d7d811f6-d02a-4c8a-afd8-f9741a4f15a6", - "last_modified": 1768048589191 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{aeb8b4fb-80d9-4161-b9a8-19035114d2f3}:1.0", - "{b30839e4-b5b6-4ca6-9a61-dc5e3d5bfbfe}:1.0", - "{04b664fe-bd67-486b-9ead-76395b45f4d1}:1.0", - "{e782b69a-5b9a-4c77-ae58-c3bc7b8cce4f}:1.0", - "@your-extension-id:1.0", - "youtube-filter-my@id-for-storage:1.0.5.8", - "{db1c726d-f1c9-4961-8373-47adf1a4c3b5}:301.15.2", - "{df2a20b6-9000-4260-bd8c-de886bb90c5d}:2.0.15", - "{cb832a40-3ea6-4fe9-8b04-79cf1b84de2b}:2.0.15" - ] - }, - "schema": 1768005390958, - "key_format": "{guid}:{version}", - "stash_time": 1768026906371, - "id": "bfd0b183-d096-4b75-8763-6ba57629bcbf", - "last_modified": 1768026989011 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "tiktokuzanti@benimozeluzantim.com:4.1", - "{394ff9d5-d5c5-4bf2-8296-736a81ddf40e}:1.0", - "{649ee148-3880-4330-8efe-46defe466516}:1.0", - "{649ee148-3880-4330-8efe-46defe466516}:1.5", - "@fcfe8fbb-be30-4567-b14f-83bfb2da1f7a:2.8.9", - "extension@getv2id.site:1.0.0", - "{32a6d9ee-aafd-4ed5-a839-c922cd909dd9}:11.1.0", - "{32a6d9ee-aafd-4ed5-a839-c922cd949dc7}:11.1.0" - ] - }, - "schema": 1767983793066, - "key_format": "{guid}:{version}", - "stash_time": 1768005306244, - "id": "facd5402-666d-4978-a7cb-3247ffb18567", - "last_modified": 1768005390801 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "@gabclassic:2.0.0", - "{6ce8f366-234a-402d-93a3-452c8cab1d8b}:1.0", - "{6ce8f366-234a-402d-93a3-452c8cab1d8b}:2.0", - "{6ce8f366-234a-402d-93a3-452c8cab1d8b}:3.0", - "{6ce8f366-234a-402d-93a3-452c8cab1d8b}:4.0", - "kok@rent.net:1.6.1", - "@e1f701c7-c2e3-4fef-a247-dadf7432d758:4.3.5", - "mqtt-navigation-control@pierre-yves:1.0", - "avatar70t@gmail.com:1.21", - "avatar70t@gmail.com:1.22", - "avatar70t@gmail.com:1.24", - "avatar70t@gmail.com:1.25", - "avatar70t@gmail.com:1.26", - "avatar70t@gmail.com:1.27", - "avatar70t@gmail.com:1.28", - "avatar70t@gmail.com:1.29", - "etp@2024:1.99" - ] - }, - "schema": 1767962179598, - "key_format": "{guid}:{version}", - "stash_time": 1767983707257, - "id": "54b201af-67a5-4e28-9d90-8b414e948282", - "last_modified": 1767983792874 - }, - { - "stash": { - "blocked": [ - "{750069e2-466c-4fec-89c7-b1eb525151ae}:1.0", - "{750069e2-466c-4fec-89c7-b1eb525151ae}:1.3", - "{4d76b35c-c4dc-416a-9149-439f4c042ed3}:1.0", - "{4d76b35c-c4dc-416a-9149-439f4c042ed3}:1.3" - ], - "unblocked": [], - "softblocked": [ - "{d7a7f42e-8289-4fd4-8a7f-09ba22572f7e}:1.0", - "faster-pull-request-gotestingspace@gmail.com:0.0.0.9", - "faster-pull-request-gotestingspace@gmail.com:0.0.0.10", - "hallesche-autorefresh@unicai.de:1.0", - "hallesche-autorefresh@unicai.de:2.1", - "autoclose-superpuestos@custom.addon:0.2.6", - "estremennu@dictionaries.addons.mozilla.org:0.0.0", - "estremennu@dictionaries.addons.mozilla.org:0.0.1", - "dungeon-ui@clauds-clauds:1.0.4", - "{e3b9c2a1-7f4d-4b6e-9a8c-2d1f6a5e0c47}:2.3" - ] - }, - "schema": 1767940589186, - "key_format": "{guid}:{version}", - "stash_time": 1767962105115, - "id": "f5af38ce-9630-4254-8edc-4916d0c654c3", - "last_modified": 1767962179280 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "smartlogin@local:1.0", - "stash-pr-changes@browser-extensions:0.0.3", - "@gabclassic:1.2.4", - "@qwick_wu_by_ajmal:1.0" - ] - }, - "schema": 1767918983113, - "key_format": "{guid}:{version}", - "stash_time": 1767940506166, - "id": "feea5434-c602-4208-8516-31b469c9b60a", - "last_modified": 1767940588954 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "{89240114-709b-4152-9d8e-cc993a072f5f}:0.1.0", - "{4f7aa2c1-9f2b-4ff5-b75c-2d5c3d26f266}:1.4.2", - "{4f7aa2c1-9f2b-4ff5-b75c-2d5c3d26f266}:1.4.3", - "smart-merger-v7@private-tools.local:1.7", - "webprivacyplugin_uniqueid@github.com:1.0", - "webprivacyplugin_uniqueid@github.com:1.0.2", - "webprivacyplugin_uniqueid@github.com:1.0.3", - "webprivacyplugin_uniqueid@github.com:1.0.4", - "webprivacyplugin_uniqueid@github.com:1.0.5", - "webprivacyplugin_uniqueid@github.com:1.0.6", - "webprivacyplugin_uniqueid@github.com:1.0.7", - "{bd1b8938-6545-49bf-9148-c2769f942c70}:1.0", - "{bd3dad08-035c-4cf0-970b-9183a59decda}:1.0", - "{bd3dad08-035c-4cf0-970b-9183a59decda}:2.0", - "{643b0a08-7f0a-414a-9fad-14f0ae3ec9ae}:1.0", - "{643b0a08-7f0a-414a-9fad-14f0ae3ec9ae}:2.0", - "{b6a0adbb-b239-4eef-9e6a-054061d27430}:1.0", - "{b6a0adbb-b239-4eef-9e6a-054061d27430}:2.0", - "{b61d5eaf-97bd-4c40-ae28-06eb7640fe12}:1.0", - "{b61d5eaf-97bd-4c40-ae28-06eb7640fe12}:2.0", - "{1668ac5c-bd20-4a3b-9ed7-9535d0da9f6e}:1.0", - "{1668ac5c-bd20-4a3b-9ed7-9535d0da9f6e}:2.0", - "{d4afc26d-7736-456a-b2cc-e8577af8ee67}:1.0", - "{d4afc26d-7736-456a-b2cc-e8577af8ee67}:2.0", - "{47904a1d-ce66-4e78-9f98-bcf9f7efe4bb}:1.0", - "{47904a1d-ce66-4e78-9f98-bcf9f7efe4bb}:2.0", - "{2dd0c94a-0307-4bdb-b427-3195fbaa16c3}:1.0", - "{2dd0c94a-0307-4bdb-b427-3195fbaa16c3}:2.0", - "{2c36b773-ea0d-420d-ba07-242ebbd61bb8}:1.0", - "{2c36b773-ea0d-420d-ba07-242ebbd61bb8}:2.0", - "{a6ecb1b0-ca63-4282-aca9-fd489c02f06d}:1.0", - "{a6ecb1b0-ca63-4282-aca9-fd489c02f06d}:2.0", - "{61bc0555-efdf-46fe-9a22-a1d9ddac381d}:1.0", - "{61bc0555-efdf-46fe-9a22-a1d9ddac381d}:2.0", - "{cf841ac8-c036-4b6e-85c9-296fe012a561}:1.0", - "{cf841ac8-c036-4b6e-85c9-296fe012a561}:2.0", - "{09b17d50-d0cc-4841-8281-9aa205d72b9d}:1.0", - "{09b17d50-d0cc-4841-8281-9aa205d72b9d}:2.0", - "{559ff750-3767-4883-9d0d-33a3b8dab754}:1.0", - "{559ff750-3767-4883-9d0d-33a3b8dab754}:2.0", - "{c8ef1f38-1a66-4baa-b648-2638dd0bd837}:1.0", - "{c8ef1f38-1a66-4baa-b648-2638dd0bd837}:2.0", - "{42c66ffd-71da-4c7f-8a83-ae5d5d6695d5}:1.0", - "{42c66ffd-71da-4c7f-8a83-ae5d5d6695d5}:2.0", - "{c7ec6ece-da1f-4ab5-a40a-c7e5d156c2e1}:1.0", - "{c7ec6ece-da1f-4ab5-a40a-c7e5d156c2e1}:2.0", - "{2eabc80c-4ec3-4312-bbf6-d2339d7f318f}:1.0", - "{2eabc80c-4ec3-4312-bbf6-d2339d7f318f}:2.0", - "{8ad1f6f1-de34-4fe2-a84a-9f553611ac45}:1.0", - "{8ad1f6f1-de34-4fe2-a84a-9f553611ac45}:2.0", - "{40989466-2377-4154-bc15-58d2857536fc}:1.0", - "{40989466-2377-4154-bc15-58d2857536fc}:2.0", - "{65b3e686-fa4d-4ca8-b4f5-cc516ee240eb}:1.0", - "{65b3e686-fa4d-4ca8-b4f5-cc516ee240eb}:2.0", - "{f6c81332-4695-4ae5-9650-a8c53271f1d0}:1.0", - "{f6c81332-4695-4ae5-9650-a8c53271f1d0}:2.0", - "{7dc716b8-f0f2-4f5d-a91f-0daca9ebceae}:1.0", - "{7dc716b8-f0f2-4f5d-a91f-0daca9ebceae}:2.0", - "{c7ca6075-24f8-4086-a10c-cc2dcf078aca}:1.0", - "{c7ca6075-24f8-4086-a10c-cc2dcf078aca}:2.0", - "{754cf76f-f743-4ec3-9327-7c7db60c6998}:1.0", - "{754cf76f-f743-4ec3-9327-7c7db60c6998}:2.0", - "{c177a31c-8c30-41ed-96b4-fc9fe32b91d8}:1.0", - "{c177a31c-8c30-41ed-96b4-fc9fe32b91d8}:2.0", - "{0979dc96-0686-49b4-b551-ad3c23a850dd}:1.0", - "{0979dc96-0686-49b4-b551-ad3c23a850dd}:2.0", - "{89fa6ec5-22bb-4b55-b476-68dc42773521}:1.0", - "{89fa6ec5-22bb-4b55-b476-68dc42773521}:2.0", - "{27ba81fa-7f33-4c8b-9ad7-b8091ef78fd6}:1.0", - "{27ba81fa-7f33-4c8b-9ad7-b8091ef78fd6}:2.0", - "{1e8c4650-e8b4-4fb7-a886-c65ebd935701}:1.0", - "{1e8c4650-e8b4-4fb7-a886-c65ebd935701}:2.0", - "{fdade90f-bce9-47e2-92ac-c83dc9f92651}:1.0", - "{fdade90f-bce9-47e2-92ac-c83dc9f92651}:2.0", - "{306a0e29-8e47-4a2f-a0a4-9d9dabc8b15f}:1.0", - "{306a0e29-8e47-4a2f-a0a4-9d9dabc8b15f}:2.0", - "{f1a71b59-c54a-4df5-977d-41ebb05bd3b1}:1.0", - "{f1a71b59-c54a-4df5-977d-41ebb05bd3b1}:2.0", - "{7692018b-e577-4bb1-850d-fc91b179736e}:1.0", - "{7692018b-e577-4bb1-850d-fc91b179736e}:2.0", - "{419345d6-dbd8-41a5-ba2e-36fad3068a1e}:1.0", - "{419345d6-dbd8-41a5-ba2e-36fad3068a1e}:2.0", - "{dfab43ba-f0d3-4769-b725-932bbc17b936}:1.0", - "{dfab43ba-f0d3-4769-b725-932bbc17b936}:2.0", - "{6ef6665d-fea6-4062-a072-4fa285817325}:1.0", - "{6ef6665d-fea6-4062-a072-4fa285817325}:2.0", - "{ffb983b8-1c6e-45cc-8b6c-4704fda897f0}:1.0", - "{ffb983b8-1c6e-45cc-8b6c-4704fda897f0}:2.0", - "{4b61ff73-5aee-44b2-93b4-a3fd7a8374ee}:1.0", - "{4b61ff73-5aee-44b2-93b4-a3fd7a8374ee}:2.0", - "{cebd34cc-8850-4f8d-bac2-3e67119e0362}:1.0", - "{cebd34cc-8850-4f8d-bac2-3e67119e0362}:2.0", - "{e305ce71-08ae-4a20-955b-941bc3559b7a}:1.0", - "{e305ce71-08ae-4a20-955b-941bc3559b7a}:2.0", - "{aa4bd7b1-591b-4575-af8c-53aedf6cd3dd}:1.0", - "{aa4bd7b1-591b-4575-af8c-53aedf6cd3dd}:2.0", - "{11e95c13-7398-459c-8724-42c38a9ac2e7}:1.0", - "{11e95c13-7398-459c-8724-42c38a9ac2e7}:2.0", - "{5a0e28a4-5160-4876-a458-47af6720800a}:1.0", - "{5a0e28a4-5160-4876-a458-47af6720800a}:2.0", - "{0adf8739-6bf2-4bcc-ab9b-be1909c1e709}:1.0", - "{0adf8739-6bf2-4bcc-ab9b-be1909c1e709}:2.0", - "{dc92e3a6-b385-430b-a036-ba3b1727ece4}:1.0", - "{dc92e3a6-b385-430b-a036-ba3b1727ece4}:2.0", - "{d8515790-113e-4cb4-aa6e-ba05bf0ae24c}:1.0", - "{d8515790-113e-4cb4-aa6e-ba05bf0ae24c}:2.0", - "{678bbe1a-1889-47e7-a290-8a67be1c07df}:1.0", - "{678bbe1a-1889-47e7-a290-8a67be1c07df}:2.0", - "{f225db46-7bbe-4977-94ed-e641aec7bf1f}:1.0", - "{f225db46-7bbe-4977-94ed-e641aec7bf1f}:2.0", - "{63fdc671-f40c-4da9-b98f-a74e12a3e74b}:1.0", - "{63fdc671-f40c-4da9-b98f-a74e12a3e74b}:2.0", - "{c2e57304-42d9-42e9-935f-a7ef8401fba3}:1.0", - "{c2e57304-42d9-42e9-935f-a7ef8401fba3}:2.0", - "{8db27f3c-36e6-4f16-9fe5-8b72224ed098}:1.0", - "{8db27f3c-36e6-4f16-9fe5-8b72224ed098}:2.0", - "{8027fd35-8471-4c4f-8294-557b64f209f9}:1.0", - "{8027fd35-8471-4c4f-8294-557b64f209f9}:2.0", - "{96d020f8-d253-4745-99ad-167ca69dd4ac}:1.0", - "{96d020f8-d253-4745-99ad-167ca69dd4ac}:2.0", - "{9e73fd92-615d-4157-9033-09bc0de502fb}:1.0", - "{9e73fd92-615d-4157-9033-09bc0de502fb}:2.0", - "{fe801b6a-4b43-4332-ad87-db695761d8b3}:1.0", - "{fe801b6a-4b43-4332-ad87-db695761d8b3}:2.0", - "{4c8fabd5-d00b-433f-b0f4-6b8444648179}:1.0", - "{4c8fabd5-d00b-433f-b0f4-6b8444648179}:2.0", - "{7a32b8d6-a980-4269-8326-10aeeb693abc}:1.0", - "{7a32b8d6-a980-4269-8326-10aeeb693abc}:2.0", - "{702d1262-9120-4798-90b4-3978bb318b51}:1.0", - "{702d1262-9120-4798-90b4-3978bb318b51}:2.0", - "{66c075d3-e14a-4ae3-979d-b0c7b4b6b1d8}:1.0", - "{66c075d3-e14a-4ae3-979d-b0c7b4b6b1d8}:2.0", - "{14928099-fe2d-436c-ba45-ce37d6bdf519}:1.0", - "{14928099-fe2d-436c-ba45-ce37d6bdf519}:2.0", - "{c0346e37-46ae-4c0c-bb91-c24c68233bbf}:1.0", - "{c0346e37-46ae-4c0c-bb91-c24c68233bbf}:2.0", - "{23a5b9d4-7181-4bcf-b182-0e2c5805c3eb}:1.0", - "{23a5b9d4-7181-4bcf-b182-0e2c5805c3eb}:2.0", - "{0038572c-a604-42c4-b5e4-ef3a2a01ad52}:1.0", - "{0038572c-a604-42c4-b5e4-ef3a2a01ad52}:2.0", - "{a0823100-8693-4439-8850-25380ada939b}:1.0", - "{a0823100-8693-4439-8850-25380ada939b}:2.0", - "{0fe4c032-38f3-4039-917e-7a251a4693bf}:1.0", - "{0fe4c032-38f3-4039-917e-7a251a4693bf}:2.0", - "{fcc9172a-76ba-4a21-9c94-a4f798292c7a}:1.0", - "{fcc9172a-76ba-4a21-9c94-a4f798292c7a}:2.0", - "{46d993c7-e8cd-4a0c-96ab-905b882533ca}:1.0", - "{46d993c7-e8cd-4a0c-96ab-905b882533ca}:2.0", - "{e4df79fa-1c15-4fa0-b2c8-4eee86e9054a}:1.0", - "{e4df79fa-1c15-4fa0-b2c8-4eee86e9054a}:2.0", - "{9d8514c0-72ca-45d4-8abe-324e61ac85c2}:1.0", - "{9d8514c0-72ca-45d4-8abe-324e61ac85c2}:2.0", - "{3642cb30-8229-4846-951a-c07207bce406}:1.0", - "{3642cb30-8229-4846-951a-c07207bce406}:2.0", - "{f5a91d8d-4827-4c6a-8eaf-82cffea4cf68}:1.0", - "{f5a91d8d-4827-4c6a-8eaf-82cffea4cf68}:2.0", - "{6c57f1b4-362a-4c88-bce4-f8fbce907cb5}:1.0", - "{6c57f1b4-362a-4c88-bce4-f8fbce907cb5}:2.0", - "{01e769d5-33d6-4a3c-87f0-8c88e35be541}:1.0", - "{01e769d5-33d6-4a3c-87f0-8c88e35be541}:2.0", - "{293bad88-8b7d-45a9-80aa-36ec44a0a27e}:1.0", - "{293bad88-8b7d-45a9-80aa-36ec44a0a27e}:2.0", - "{08fbfce6-aa63-43d8-86ae-18587edc4d67}:1.0", - "{08fbfce6-aa63-43d8-86ae-18587edc4d67}:2.0", - "{cfde0c8e-957c-47e4-b74f-f67569f56cb5}:1.0", - "{cfde0c8e-957c-47e4-b74f-f67569f56cb5}:2.0", - "{9dda9479-a0f3-4e7f-b5fa-557f96c0c8a3}:1.0", - "{9dda9479-a0f3-4e7f-b5fa-557f96c0c8a3}:2.0", - "{5290b95a-6451-4fdc-a68f-f102a1c60c4b}:1.0", - "{5290b95a-6451-4fdc-a68f-f102a1c60c4b}:2.0", - "{4bd7f864-2124-4576-afbe-1fd0a565081f}:1.0", - "{4bd7f864-2124-4576-afbe-1fd0a565081f}:2.0", - "{ecbb06bd-3c35-4edc-a57f-5ec454f4052c}:1.0", - "{ecbb06bd-3c35-4edc-a57f-5ec454f4052c}:2.0", - "{09efbfab-510c-45c8-9e56-92588d342907}:1.0", - "{09efbfab-510c-45c8-9e56-92588d342907}:2.0", - "{42b3ec69-8aeb-4b65-80fb-fa80f707cd82}:1.0", - "{42b3ec69-8aeb-4b65-80fb-fa80f707cd82}:2.0", - "{dd7185d3-3e4b-460e-8383-399fc4823dba}:1.0", - "{dd7185d3-3e4b-460e-8383-399fc4823dba}:2.0", - "{24c0f53c-c623-4aa1-b149-e72f31603d81}:1.0", - "{24c0f53c-c623-4aa1-b149-e72f31603d81}:2.0", - "{a602ab22-fda2-4575-a69f-0ce6fe6bba03}:1.0", - "{a602ab22-fda2-4575-a69f-0ce6fe6bba03}:2.0", - "{478b1712-062a-479e-a728-aa0366368207}:1.0", - "{478b1712-062a-479e-a728-aa0366368207}:2.0", - "{8759cd6d-f54e-4f36-886d-68f3e03dd2ce}:1.0", - "{8759cd6d-f54e-4f36-886d-68f3e03dd2ce}:2.0", - "{1fdfb195-f349-4558-85ff-5c074a1b01c4}:1.0", - "{1fdfb195-f349-4558-85ff-5c074a1b01c4}:2.0", - "{ce136c98-6660-436b-8b57-cf021d4d0e43}:1.0", - "{ce136c98-6660-436b-8b57-cf021d4d0e43}:2.0", - "{56c05f24-eefd-4b74-90fe-04a5e72d825f}:1.0", - "{56c05f24-eefd-4b74-90fe-04a5e72d825f}:2.0", - "{c5dee0cd-7958-4a22-9b1f-33be2a592e03}:1.0", - "{c5dee0cd-7958-4a22-9b1f-33be2a592e03}:2.0", - "{04207920-b1ab-405a-b8ee-4bdbcd55be11}:1.0", - "{04207920-b1ab-405a-b8ee-4bdbcd55be11}:2.0", - "{99d9fc04-c1a3-4ecb-b605-1100339c0e4c}:1.0", - "{99d9fc04-c1a3-4ecb-b605-1100339c0e4c}:2.0", - "{fd416326-684c-4482-9059-ce509d3ae4a2}:1.0", - "{fd416326-684c-4482-9059-ce509d3ae4a2}:2.0", - "{26ff120d-2b34-4c05-9b32-7f7d0afab502}:1.0", - "{26ff120d-2b34-4c05-9b32-7f7d0afab502}:2.0", - "{b22aea45-4b85-43b7-8996-533a227caec0}:1.0", - "{b22aea45-4b85-43b7-8996-533a227caec0}:2.0", - "{2be004ad-a3a6-4b39-aca1-f81e1da87e68}:1.0", - "{2be004ad-a3a6-4b39-aca1-f81e1da87e68}:2.0", - "{b8b699aa-3b4e-4a86-b43a-6b1f281b6338}:1.0", - "{b8b699aa-3b4e-4a86-b43a-6b1f281b6338}:2.0", - "{b67c8d83-036d-456e-a6a2-d6009c74c7d1}:1.0", - "{b67c8d83-036d-456e-a6a2-d6009c74c7d1}:2.0", - "{58baac43-b798-4d66-a4a1-1fd79902b701}:1.0", - "{58baac43-b798-4d66-a4a1-1fd79902b701}:2.0", - "{37aa6782-1366-4325-808d-02d81f79ec7e}:1.0", - "{37aa6782-1366-4325-808d-02d81f79ec7e}:2.0", - "{bc3fad0d-28d9-4384-ac8e-4a1461ce8433}:1.0", - "{bc3fad0d-28d9-4384-ac8e-4a1461ce8433}:2.0", - "{1b6e7244-f9cc-4db9-be84-1e6f732746b5}:1.0", - "{1b6e7244-f9cc-4db9-be84-1e6f732746b5}:2.0", - "{751fa676-b94c-4a40-a1c8-fbdd48be5ee3}:1.0", - "{751fa676-b94c-4a40-a1c8-fbdd48be5ee3}:2.0", - "{994d87e1-e75c-49d1-9709-a117e2c811f9}:1.0", - "{994d87e1-e75c-49d1-9709-a117e2c811f9}:2.0", - "{17be4119-d419-4530-a86c-fc6ea271bfe7}:1.0", - "{17be4119-d419-4530-a86c-fc6ea271bfe7}:2.0", - "{6a44b7f2-473d-4392-95fa-df92dac33ad8}:1.0", - "{6a44b7f2-473d-4392-95fa-df92dac33ad8}:2.0", - "{fcc04263-6422-4f2c-99e4-0ce9a65ffb71}:1.0", - "{fcc04263-6422-4f2c-99e4-0ce9a65ffb71}:2.0", - "{19bcf7e2-f4eb-4a4a-82da-af9ae52720a6}:1.0", - "{19bcf7e2-f4eb-4a4a-82da-af9ae52720a6}:2.0", - "{710f6d1e-675c-440b-8fa1-39a66e019a20}:1.0", - "{710f6d1e-675c-440b-8fa1-39a66e019a20}:2.0", - "{d06fdf92-9d05-4b9b-b632-f0775514a441}:1.0", - "{d06fdf92-9d05-4b9b-b632-f0775514a441}:2.0", - "{c1512e6c-9d34-44d6-b3a1-b3e22310bede}:1.0", - "{c1512e6c-9d34-44d6-b3a1-b3e22310bede}:2.0", - "{8420f538-b655-4baa-a517-1d0cd7137dc1}:1.0", - "{8420f538-b655-4baa-a517-1d0cd7137dc1}:2.0", - "{e11b19be-03b2-4429-ae23-6b13580505a4}:1.0", - "{e11b19be-03b2-4429-ae23-6b13580505a4}:2.0", - "{4b3b98e1-30fc-40c9-ac95-c5f1f9977efe}:1.0", - "{4b3b98e1-30fc-40c9-ac95-c5f1f9977efe}:2.0", - "{6c79e918-330e-44e2-b5a2-0912ba4bd43a}:1.0", - "{6c79e918-330e-44e2-b5a2-0912ba4bd43a}:2.0", - "{5e52970f-8a29-4d88-8e05-cc78f2060b82}:1.0", - "{5e52970f-8a29-4d88-8e05-cc78f2060b82}:2.0", - "{db90b08b-1827-48f6-a260-4b73c146e2f8}:1.0", - "{db90b08b-1827-48f6-a260-4b73c146e2f8}:2.0", - "{c1817685-68de-4740-9f83-654a7330e6a7}:1.0", - "{c1817685-68de-4740-9f83-654a7330e6a7}:2.0", - "{a6d84e74-d234-45b0-8a25-1a03470ed327}:1.0", - "{a6d84e74-d234-45b0-8a25-1a03470ed327}:2.0", - "{daf1e4f1-9bc9-413f-a24e-09481f356a91}:1.0", - "{daf1e4f1-9bc9-413f-a24e-09481f356a91}:2.0", - "{4a2c531b-57a7-4bc7-9d15-edc92e2b6925}:1.0", - "{4a2c531b-57a7-4bc7-9d15-edc92e2b6925}:2.0", - "{5beb8f41-0043-4e3f-b242-88ddf39119e3}:1.0", - "{5beb8f41-0043-4e3f-b242-88ddf39119e3}:2.0", - "{c4fa34f0-049c-4e31-a50f-b2c87875049a}:1.0", - "{c4fa34f0-049c-4e31-a50f-b2c87875049a}:2.0", - "{9fcba9f2-fac5-4210-9554-a55976ce1f1f}:1.0", - "{9fcba9f2-fac5-4210-9554-a55976ce1f1f}:2.0", - "{8a5b36dc-37d9-4863-93e2-c6e07be79682}:1.0", - "{8a5b36dc-37d9-4863-93e2-c6e07be79682}:2.0", - "{d2b280a0-b69e-47e1-bb6c-adf32af3beda}:1.0", - "{d2b280a0-b69e-47e1-bb6c-adf32af3beda}:2.0", - "{fdc694b0-856e-4259-9e46-bfa25cbaa38f}:1.0", - "{fdc694b0-856e-4259-9e46-bfa25cbaa38f}:2.0", - "{7a9ffa1d-74bb-4e11-a75d-cf485fcb5835}:1.0", - "{7a9ffa1d-74bb-4e11-a75d-cf485fcb5835}:2.0", - "{16dba576-8122-40e3-bebb-046d1f5e2cf9}:1.0", - "{16dba576-8122-40e3-bebb-046d1f5e2cf9}:2.0", - "{9d7539da-15f4-4aec-920d-5ea42a1dbc74}:1.0", - "{9d7539da-15f4-4aec-920d-5ea42a1dbc74}:2.0", - "{6334c983-73d4-405a-a4f7-8d3d0e9e4507}:1.0", - "{6334c983-73d4-405a-a4f7-8d3d0e9e4507}:2.0", - "{63c713f1-d599-4214-a722-f227285b7c26}:1.0", - "{63c713f1-d599-4214-a722-f227285b7c26}:2.0", - "{dbb61553-434d-413a-9862-fceb899ac9ca}:1.0", - "{dbb61553-434d-413a-9862-fceb899ac9ca}:2.0", - "{f71880b7-558e-4cf8-836c-f875385b3f57}:1.0", - "{f71880b7-558e-4cf8-836c-f875385b3f57}:2.0", - "{9c86b52e-0aa1-4098-b289-35ed76e0ae8e}:1.0", - "{9c86b52e-0aa1-4098-b289-35ed76e0ae8e}:2.0", - "{91c493d9-1b12-45a1-9836-ef1ce9a644df}:1.0", - "{91c493d9-1b12-45a1-9836-ef1ce9a644df}:2.0", - "{7fa3de45-6a20-4b76-8ff3-45e613c64c17}:1.0", - "{7fa3de45-6a20-4b76-8ff3-45e613c64c17}:2.0", - "{cdcf1396-a7cb-4038-aad2-9a26e27aac31}:1.0", - "{cdcf1396-a7cb-4038-aad2-9a26e27aac31}:2.0", - "{c1e521cd-d506-40d0-a585-f741aba00655}:1.0", - "{c1e521cd-d506-40d0-a585-f741aba00655}:2.0", - "{a392b802-c87a-4fca-a5ea-f930f4838524}:1.0", - "{a392b802-c87a-4fca-a5ea-f930f4838524}:2.0", - "{ae5b8ad1-24ad-4d74-9fc9-5cf41a212bfc}:1.0", - "{ae5b8ad1-24ad-4d74-9fc9-5cf41a212bfc}:2.0", - "{af5e466a-6499-4f6d-a82e-dec63bd6c501}:1.0", - "{af5e466a-6499-4f6d-a82e-dec63bd6c501}:2.0", - "{b5ee0088-1e85-4e9c-b3ec-48d1f820ec55}:1.0", - "{b5ee0088-1e85-4e9c-b3ec-48d1f820ec55}:2.0", - "{687354b6-b7a1-445a-8b94-d3c9a578e5af}:1.0", - "{687354b6-b7a1-445a-8b94-d3c9a578e5af}:2.0", - "{51babfde-13b6-4bb3-85e7-765e47ce2c95}:1.0", - "{51babfde-13b6-4bb3-85e7-765e47ce2c95}:2.0", - "{0bdc4201-068c-4bcd-b9cf-efc3a115be0d}:1.0", - "{0bdc4201-068c-4bcd-b9cf-efc3a115be0d}:2.0", - "{4178c5e0-c89b-4555-a19a-03b3d0984fa5}:1.0", - "{4178c5e0-c89b-4555-a19a-03b3d0984fa5}:2.0", - "{3d5ceaf5-440c-4e3c-a6fb-502c6b3940bd}:1.0", - "{3d5ceaf5-440c-4e3c-a6fb-502c6b3940bd}:2.0", - "{b335374a-4e49-4fe7-ae8a-09cabe067043}:1.0", - "{b335374a-4e49-4fe7-ae8a-09cabe067043}:2.0", - "{e0a41c39-6fdd-463d-8d36-c006deea2c11}:1.0", - "{e0a41c39-6fdd-463d-8d36-c006deea2c11}:2.0", - "{24e09631-83de-408b-aa14-3ea77c505f42}:1.0", - "{24e09631-83de-408b-aa14-3ea77c505f42}:2.0", - "{74141a8c-6885-401b-8520-31200737ba8e}:1.0", - "{74141a8c-6885-401b-8520-31200737ba8e}:2.0", - "{242005a3-14df-453a-b24e-f929ba788a55}:1.0", - "{242005a3-14df-453a-b24e-f929ba788a55}:2.0", - "{3aacdb72-da40-4346-b46d-1db94947552e}:1.0", - "{3aacdb72-da40-4346-b46d-1db94947552e}:2.0", - "{756160ea-14db-4124-9c91-03b4279d500e}:1.0", - "{756160ea-14db-4124-9c91-03b4279d500e}:2.0", - "{64981868-bef9-4ba5-b7ac-38659597fedc}:1.0", - "{64981868-bef9-4ba5-b7ac-38659597fedc}:2.0", - "{45f8c718-bc27-4951-9aad-357bb4978136}:1.0", - "{45f8c718-bc27-4951-9aad-357bb4978136}:2.0", - "{90f4de16-1f47-47ef-8a39-24eff3380c29}:1.0", - "{90f4de16-1f47-47ef-8a39-24eff3380c29}:2.0", - "{d6ae1d87-1876-4c49-b938-7eda03731c9b}:1.0", - "{d6ae1d87-1876-4c49-b938-7eda03731c9b}:2.0", - "{331bc9d5-35e9-4617-94e4-0db3dc1f5696}:1.0", - "{331bc9d5-35e9-4617-94e4-0db3dc1f5696}:2.0", - "{9e59866d-d835-4f37-a0f3-eb37649ee27c}:1.0", - "{9e59866d-d835-4f37-a0f3-eb37649ee27c}:2.0", - "{9ae356a8-0a60-4d06-b755-e664fb592a1b}:1.0", - "{9ae356a8-0a60-4d06-b755-e664fb592a1b}:2.0", - "{6515bfdd-360f-43b1-9707-51e2ea484c7f}:1.0", - "{6515bfdd-360f-43b1-9707-51e2ea484c7f}:2.0", - "{afce6fa2-0208-4936-8327-ae46b94b3fbf}:1.0", - "{afce6fa2-0208-4936-8327-ae46b94b3fbf}:2.0", - "{30696a72-44c2-4712-8668-a773b5487022}:1.0", - "{30696a72-44c2-4712-8668-a773b5487022}:2.0", - "{b4da3602-3413-4c76-880b-585d1e161f03}:1.0", - "{b4da3602-3413-4c76-880b-585d1e161f03}:2.0", - "{af75376b-c8cd-4f82-9b20-6b8134d1304a}:1.0", - "{af75376b-c8cd-4f82-9b20-6b8134d1304a}:2.0", - "{1d073038-4b4d-4d1e-bc52-a557d179adea}:1.0", - "{1d073038-4b4d-4d1e-bc52-a557d179adea}:2.0", - "{09463b95-90d1-4c66-b08d-579eedb5d392}:1.0", - "{09463b95-90d1-4c66-b08d-579eedb5d392}:2.0", - "{5c312b06-da26-440e-a01d-125c446d648b}:1.0", - "{5c312b06-da26-440e-a01d-125c446d648b}:2.0", - "{a9e39ca5-fa2c-4e42-89c7-668bd15e4952}:1.0", - "{a9e39ca5-fa2c-4e42-89c7-668bd15e4952}:2.0", - "{1ce57ba1-529c-4f8a-b23a-5cfd18825410}:1.0", - "{1ce57ba1-529c-4f8a-b23a-5cfd18825410}:2.0", - "{3a1c1160-0dc0-4b44-83e0-deaa032f7060}:1.0", - "{3a1c1160-0dc0-4b44-83e0-deaa032f7060}:2.0", - "{63976dda-febe-4987-af91-b70d19b85a97}:1.0", - "{63976dda-febe-4987-af91-b70d19b85a97}:2.0", - "{e69d3eff-77fc-48d7-93be-6dd7acdf9598}:1.0", - "{e69d3eff-77fc-48d7-93be-6dd7acdf9598}:2.0", - "{ae50a2cb-886f-4dd1-9df7-02400e74bdbf}:1.0", - "{ae50a2cb-886f-4dd1-9df7-02400e74bdbf}:2.0", - "{4b20e47b-cf99-404a-9c5f-ea12568fc792}:1.0", - "{4b20e47b-cf99-404a-9c5f-ea12568fc792}:2.0", - "{78673719-092a-470a-a8c9-b689037d2deb}:1.0", - "{78673719-092a-470a-a8c9-b689037d2deb}:2.0", - "{4e93a441-31c2-4ee7-b2e8-8c2447a066da}:1.0", - "{4e93a441-31c2-4ee7-b2e8-8c2447a066da}:2.0", - "{38a8bfd2-ffb1-4011-a8a9-07c91c210727}:1.0", - "{38a8bfd2-ffb1-4011-a8a9-07c91c210727}:2.0", - "{31f92beb-1e99-45c9-a3d3-85951f90c204}:1.0", - "{31f92beb-1e99-45c9-a3d3-85951f90c204}:2.0", - "{f7275e42-6f52-4abd-8ec7-8b140b781386}:1.0", - "{f7275e42-6f52-4abd-8ec7-8b140b781386}:2.0", - "{d37b7067-bb3e-4e81-bcd5-92cf8579e36b}:1.0", - "{d37b7067-bb3e-4e81-bcd5-92cf8579e36b}:2.0", - "{66013d92-5c03-42d5-a851-c749ed5e5479}:1.0", - "{66013d92-5c03-42d5-a851-c749ed5e5479}:2.0", - "{afbf24cc-a74a-4a21-a8a4-46607b64c9aa}:1.0", - "{afbf24cc-a74a-4a21-a8a4-46607b64c9aa}:2.0", - "{4a15d612-077c-44da-95f9-36a5caee0ac8}:1.0", - "{4a15d612-077c-44da-95f9-36a5caee0ac8}:2.0", - "{c11d9cce-5558-4eaa-91d4-acf758365ab2}:1.0", - "{c11d9cce-5558-4eaa-91d4-acf758365ab2}:2.0", - "{3ecabe9f-9b6e-4e3d-ab91-81b33f41843d}:1.0", - "{3ecabe9f-9b6e-4e3d-ab91-81b33f41843d}:2.0", - "{e0694fcf-94d2-44bf-b213-c43c8638dc44}:1.0", - "{e0694fcf-94d2-44bf-b213-c43c8638dc44}:2.0", - "{5256ff44-8502-402c-bd89-2b0691d33944}:1.0", - "{5256ff44-8502-402c-bd89-2b0691d33944}:2.0", - "{1d0ba545-9f5c-4236-8b39-ea50a8680033}:1.0", - "{1d0ba545-9f5c-4236-8b39-ea50a8680033}:2.0", - "{f600d3bc-3a08-47d8-97fc-e0cbdbe752ed}:1.0", - "{f600d3bc-3a08-47d8-97fc-e0cbdbe752ed}:2.0", - "@0d1f9958-ef5d-4312-8efc-b7d52610cdd3:5.0.9", - "@0d1f9958-ef5d-4312-8efc-b7d52610cdd3:5.1.0", - "@0d1f9958-ef5d-4312-8efc-b7d52610cdd3:5.1.1", - "{a19f9576-5f86-4ec2-afd5-b1e3294f2229}:0.1", - "{a19f9576-5f86-4ec2-afd5-b1e3294f2229}:0.2", - "{a19f9576-5f86-4ec2-afd5-b1e3294f2229}:0.3", - "{a19f9576-5f86-4ec2-afd5-b1e3294f2229}:1.0" - ] - }, - "schema": 1767897391591, - "key_format": "{guid}:{version}", - "stash_time": 1767918905992, - "id": "726964ec-1f36-4395-a68a-51412bcaddf6", - "last_modified": 1767918982674 - }, - { - "stash": { - "blocked": [], - "unblocked": [], - "softblocked": [ - "lunchlist-highlighter@example.com:1.0.0", - "{da0dd7de-4d69-4079-b996-5b6088b34fbb}:2.0.62", - "{b6874cb7-8ece-43ad-8180-e3f7de48416a}:2.0.62", - "{75f06b56-4cc5-4c20-aa5e-6ccf5b0ad6fd}:2.0.62", - "{692bd1bd-a799-4b3a-8e95-378c841165b8}:2.0.63", - "{692bd1bd-a799-4b3a-8e95-378c841165b8}:2.0.62", - "assistant-ticket-support@ecritel.net:1.0", - "versetto-meteo-brescia@tuodominio.com:1.9.0", - "download-manager-selector@example.com:1.0.0", - "download-manager-selector@example.com:1.1.0", - "download-manager-selector@example.com:1.2.0", - "{ded0b69b-cbfc-4adf-bbfe-655d2f5c66a0}:2.0.0", - "{ded0b69b-cbfc-4adf-bbfe-655d2f5c66a0}:2.0.1", - "{ded0b69b-cbfc-4adf-bbfe-655d2f5c66a0}:2.1.0", - "jid1-STQ4BLHpoWoQZQ@jetpack:2.0.0", - "jid1-STQ4BLHpoWoQZQ@jetpack:2.0.1", - "jid1-STQ4BLHpoWoQZQ@jetpack:2.1.0", - "{5cdb6bb8-c24a-41cd-a299-dbc963fdd707}:1.0", - "{233348b6-f453-4a84-b169-29951063b566}:1.0", - "{8fa03c58-8dd9-4ee4-8d38-c81dc4d0f14f}:1.7", - "icecat-bex@schabi.ch:2.0.0", - "icecat-bex@schabi.ch:2.0.2", - "image-downloader@ozler365:12.7", - "{e66f6a6b-a585-460d-a2c6-c40b4ff17eab}:1.0", - "ia-news-feed@tomas2p:1.0.0", - "{474cdbcf-58c1-4ae4-a2e3-242b8dbc6020}:1.2.4", - "newtab@customurladdon:1.0", - "@b6f94157-e4e5-4425-bc9e-220783aaa10f:1.9.6", - "{b1d9d2c2-9f53-4f6c-9c92-9b8fcb7a7c31}:1.4.0", - "{4f7aa2c1-9f2b-4ff5-b75c-2d5c3d26f2a5}:1.4.2" - ] - }, - "schema": 1767875945506, - "key_format": "{guid}:{version}", - "stash_time": 1767897306589, - "id": "7c892c21-e744-4d3f-886a-5a2faa64735e", - "last_modified": 1767897391436 - }, - { - "schema": 1767875911138, + "schema": 1772584712183, "attachment": { - "hash": "128e4b64d915b1ce81719dc4e069128079bdc705873ffb250b8fda1a22af5657", - "size": 174266, + "hash": "ba518030bb058a7d14a3e1ac2218599992f3196aa6ea99199170289763e2ca84", + "size": 180796, "filename": "filter.bin", - "location": "staging/addons-bloomfilters/c6d34303-4b8e-410a-9f30-58cd15c9eeb3.bin", + "location": "staging/addons-bloomfilters/261790b5-1813-4a25-9fe1-5b4c19cf1279.bin", "mimetype": "application/octet-stream" }, "key_format": "{guid}:{version}", "attachment_type": "softblocks-bloomfilter-base", - "generation_time": 1767875706366, - "id": "4f0e30ab-8e4f-4973-9796-92048b656347", - "last_modified": 1767875945351 + "generation_time": 1772584506789, + "id": "9de13b9e-c148-4385-ad60-9c940536a3b2", + "last_modified": 1772584766602 }, { - "schema": 1767854190545, + "schema": 1772562997137, "attachment": { - "hash": "cd8e64bf49ba15970bcc52f3a561da888b9c3240ca783a16c129c790116a26d1", - "size": 876445, + "hash": "ee96783e3e744f929e69179eada1f1d1db54586c3ab2139198b557f06f12deca", + "size": 882382, "filename": "filter.bin", - "location": "staging/addons-bloomfilters/318bab3e-2840-4d3f-b1a9-49c76650c0cc.bin", + "location": "staging/addons-bloomfilters/dcd6006c-59c5-4924-9d61-671a4df6aafa.bin", "mimetype": "application/octet-stream" }, "key_format": "{guid}:{version}", "attachment_type": "bloomfilter-base", - "generation_time": 1767875706366, - "id": "2f2d5105-a59b-4d36-91bf-aba0d17dfc24", - "last_modified": 1767875945345 + "generation_time": 1772584506789, + "id": "064d7fc5-9b6c-4ce4-81f4-9b0c74c7c32b", + "last_modified": 1772584766600 } ], - "timestamp": 1771223791639 + "timestamp": 1773642980627 } diff --git a/icecat/services/settings/dumps/blocklists/addons-bloomfilters/addons-mlbf.bin b/icecat/services/settings/dumps/blocklists/addons-bloomfilters/addons-mlbf.bin index 12b1f8adcd1d112e7fd8acb532713022ea85aebe..a8c89d68fd98735c2d7dcedea7529e8ca023eace 100644 GIT binary patch literal 882382 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 z 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 z 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�f$V#ld5tp2Uz( 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

=UIDJUQnip{h(lgv&@)nON7qr+oBbiwX3nZTijZ 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

)*-}>3d=a!Q^}+il=Ga&5H1eLntv% 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

;Az<7yzNl$Y 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

4S^8%Y>%7}sdnW3ONKm4gAAlnUS?X;z} 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

63&d9ICmnkW|6gn-Cezi1(Of&iDb589qmys`ZSk z!mJCS(MhG&mb#@A0T*c2=R`O#inBUX!AlmwG%Jr7t*wg(UdlsO%S+49j8k6PkfFNE zfjyGhq7Q5tKJBYB)wvXXeHV@P*aAvC71PL5#jtZU!MN7+)M*k6bVvo_L{VI0eHs9P zuT}k*{;8FFb|pw$`=^51SnH2(^O07sPb1}G2T1y_=0;TDnhOuQnNl}Dg0lSwP`X7! znL1xNhGR;bW)%zOr8oxfr8n^_+jcGK2vBe!k|~8UaYMYn5(JftX_I-bqbN8}IYLGm znR;9*xkupWCwc}hk_v*6bOL+d>>CV^N4P}s7p#fRI*17fUNaEak_J+VWW{Ym>j~OK zp|Vn;D7C{#qJ-4xhEgy-jVnTT4&;Fi>>g*Fr&6TdLa|!Q!ub!Q2Ds!SPZbGOAqauw znDkCHNP-zF`D^!jgSoFSqtN2xWgGsg-(@qxw3dZO{Hhh@IFpgb^H6*i z=6v_2XD}{Z0Pq0e{V6C4X9K3x`hMJ%0Q3HU=~KWD*~upr)>P8vgHE$kls7VAL;7<( z{>_@#>2)~d2mQn)5L|>xmf=A*^PlJ98|>xuKjKJE`bY_0`rk zndC2Rj)|xCfK(Y+9YIke?i<*6RNH~81d|;GeeKQcISUcw3hU7_dLU=?1-|`GBnPl& zrSfLtw~ahYFx5MK%d=;{Z4=WHtsO-9Rzdv5T-+XD4|tjk{op616xetpqX=4vKsU5l z8`AIF=&T{LL6p|~D{Q{}Yo54csl%j|E4t>1X*#Z2Y?z})tz{w066dqcdP}Mw$nzZF zZh{>bT(D_D5=5=$f6f^8)sI@ch|HxJe+?)}fxw^^_;tP_RVbwytOK|PVkA7XgCX{i zd>JB=gfz>4S!g#yMa_6xEuFHd10HSu%bW4SXydU%@)t!aCSl(8FoS%Zzg|wCog%hc zckgvz=M?r3oa&IhzXY;b(F}!nL4y%e#m7x?S9pWAafpV!Z@O|A%!^wE9OUjKY6Lsd zip8ROWCh??e2c=mBO}KTCFDq@4Q|~iezAC5EY>VDA{^+{txuoB#i`kwd1c0-CnS~N z>Tcrb8ISm^#Lo(EQa!_t+C3|sPPq1%oBIpbi8Vo#=LILH${vnkBk(>iOH=IS8g{&< zjmP(M)c&QsV`)UZg^sN5OxUkn&O(6VZc6e3pLX#LBpHA{d7htVt;98DsEG>lzCoXh zZvN_3_(-^ACp~?@Seo1ORt=Z=9ae6{rbOsR$6g}oENv&u6!G#J_&XE1XNM}Iqm^U0 zm+PQ|-U@82(x;8p&n|GegTD8qG}QAa+3t{fKv5f@iNbeL%5-l>$!+>pco6o`|B;*|SET^-q3@2DH(yaD<8n zal==mYuB{L9+G=hLHx16WH71uk2NDPj5KR0(9q_GPalAxya)-Z5+UE|yV(dJ;f&r44ZBnNWCw>jU@OmL8RA)k zd>_%(_F+CdQMyokx!UC<^G7S*@<5{iCyx$+ZP5&q-idymsrMlZ4YuvdJ(&#;1fXVG z6PYJfz_=ih8)KwDsU-B$d(lw>AQ-dbcF{rs zX~*Md7KNF)A(=w;c|peWS!4Hvp5x~^Y{Uj0tJR$)CB*eYc^mkE7y^Z$>^08^uOuW9LF1ets_RF2^@r2@xQVN>aP1 zns_Joq)|2G4uI5@JpSD*XeJHPtzHa$rmJFR8(@JRJ1xIkOQ_Rx`b}EU@aCx)4ZZMy z21-D;h%;D3ocmx-oKFv02nQEsK^%4JW@K z=ee{aB4gJDjL9D)C@<2^ug38d+Q5fCqSK;%$z5J0QQnmS8HRnSF7iW(&oLHSZ8ltG zB-m}yw3Tq#&rwU3m&gp&reW3r0Z8p2AYITUJl|?eTH z8U{QAu-TyY1Dm`ptjt@v;7s5&6MTUqwsk=>JKRC!m&f;^G(_ zlgKzu37Kfz{`~N4m}xk>?Jn+inS)0-!QmQP-u+NpxDp^Goj&U`8LjjqD+Z(h`xo z+lTzdF_2&WK5n#N1-eiZeQBoau8R#85n?d5%mCUAu$3L8)N^!Spx{AqJfBQ)=@)b z!_?2Vp`?3b4M^-UwhQ8aCmNHbnqA^Y{D$mgOkciekSF>Hw#|V?HDz{YVDlcIfGh?= z0T;HcL395)1}sJ2HZiS;2J1!x(~Y z7e9(K>E-pvY8Qvm_s3soOjkpMGvOox7fpzbh7{{TK}K?~n=8oN3Wk5~Kk6q9Q7;xU z0uL)8x6ShZeF=X&Io2l)sURvz`O>y>{Ug0g^R-r)aZ?#q1Cf6E@!Y1Xlw9c%>^D1T zqMNm7>jii<6zF(IUaDh!Oj|b0%LaHBZ7tle?I-%G9~D(0&cE=)1aBP@3!geyQFKQ& zozX{hrCq{gc)G@AD@}^;kf6c{CTuWYBNT3Ix>Xfwy+VXH!kGYXHbL~s%*5B0et8S_gW(gaMsf+pQNC~~lnjX_<{FizYeOGg9sz$@Tsd#0`dJq z`({d>sx>7<5V}^b?n9@CGsnR5C&A!jECeNrp|XgsTmuE@o>Be15{6S5syuWVDlPsv zv{RO5j`k1qVXFPA&T+*6huIGg_*4bW>wK&uJR9_QR(MUfT7l^w6@633#xr62Cl_{Ooh0MNgJd zG~`K}@9F?e{>bS@id+=Y9wWY=o@>zi*fhCQK)kV|7VL=*S%+$vdZX9Hq-5mt`R%L> zmM0hSI$%+%wCotX_)6%-;6I}j#MHP>XV?IemSg@L(tbj9mT6Lw1D~?o;jpyA zh_B|SFg3C%`|>{Xk(P(4Tn3aEK@9|;sk`P(uO>q7O7p^AF-6T}iMDf!lLIQD&wHRjlka85>BU|;1gvTH-mooouG!IV(`BsdDZEyZyTeP#hVjW)C4Jx;>g^Kr!&OUl zr#p>GjbftaY>csIJlkw1ApGE0J@IMt0f_x7dVsWya^cu+aktY@$IhcjuH3FRh69GV zsH)W&C0{}lMqOeMVbG5W{z>qY(xPg)`H+AM`E)*dd&clP?Sl5ReO>eKZ>@u^52Vj^{C{?3;G?;u?ngeEp0{ zgJ(%^aMHkWzGo6keyuOZ3p?5`gxE!sY6y{VwKuL|e=fJ&rWS+aH;fvyECg=rypKV# zw%!y1I8dPBSU|a)q#u=EOzeg#I=0`KHjKYRQ0B@>7*7!wVvZmZu-oB`i*IpY$8V(M zhBHaE9Q|?BnC;Ct?u_eP?vg8J=bD0XB3(tmYxu~vhP;guAga@T$+OM0tD`x8F zyZuckK20e8BAMuDpBb~J*irJ84d)kTG&aH2c}Mx>Xp~~H-@p6%EAw!*l1&6)e4FFq9wu4%+&3qxEyjrFR&vc-o0S4VK!>PWa}HiD(Mq0}D64A<;J^oCSY|dwrOD$ZXhJ zrJB+fffF6}C5c5@087eU7RHo^9I?+hKsj37n;x{0K05i=wmP%PL@xHOI9Z`DI3yaO z0yL0Zb*~*}n^oH(NoVW075KoPZ^z2tW2)K8UN1iv(YJFknFpQplTNSJB?8TJqx=Sb zk2hk3h*CToC9;=&l51NpPqT^8j{8GNyaadtitM#TIIA~CO2Rmi*YozbK?2jI(p3-= zQLS4ErPM1yeBaiHtC=G`U&;Ls>SX@E6_8o34AiUYqWH5024Dh^1c@1Hg~@Q*iH-AX zCdw17)Me&bc2Koydl}3uCf6wgiKT}v$A3R+JlQNhM})FRZXyQB3Q|N0_6pqotzD(Q zS-qWMbbZkACn(oUw_)qCgiO79Shd1b?Al3EF^)acBCtPkvF7n&;}p|_Bih?Y z#A8O+E8-@WfF*!xJ4#M7YChwe-SWXf^j6Q@WRL*vQ=YJ2ak0tCCbv}nb;s{EsZpa{ zBjw?OI7WG>@U*t=IL}VYE1FH#b;iQ`{3l?Yz%)_V7C6QAKiA^f()wOHAD3XJSUc~; zNNVJq==#Xt?!bGK$M3$8Qpz_0x!0V>eAAs!iFa{-aPH0PDsyk}ON!ADc21KvR|epm z<^PoIA}9(7`Ti(&XROtDXyPCq4m_5`l~8P}uKRvQER35N)D|6q?W9n>xUmhNpeT@Z z{dB;~Q>W*7L>2<-d0(N;m{|sCyRbQL@SL~)&MrOX-cW(6ofzMr(J;DL28VX#rD;`b#mCw=;DIYPppgsIr3<(~iD=*kV zlb{8ZBs3ojJzfH*2Q7!Vac=S)_6lycsut$>P7Q+CqGkg}Bs}E5ruW|JaOghp-}zs5 zCMMIl$LbBZxeu`*Om}aLG(jQyaue+fXrk>AcWfiY{%A1U-O}c?;Ut~OX$64O zls*gb)5n9m&LmVFzZRUKpX!M*pZCEFtfd&OJAYxaM`JzsxMgCc@3+hY=({FPrkA$xzuQ)SQW zi1vW2PVe%$(fEG;Ta6YSFfwav3av#-@UaMpd{&n++v^2;e0U8ZZn-2j534y}F16bi z8m@XK$`|M|+>p7ywk7iEb1t&B@AcuzZk^Kna>^`eg7wfb{8didM`_+kd$aam6rEX1 zP5F%~Sq}?^^+T27C6RC-&6Z78Yrqy64Y{0IlIv@0!kz~F(>#zeL#5L&r6Fs-MWo%D z&$@1?wnibRUnV;sn6;e}SCr&f^^t!HQozuz&DNeyWk*_>iu&?dM(M)GPn>eGY@W!9 zM0Z)Vs{XdAv7Qi_lVhjqDqthqfO(^TN<|vV`Q=E1yMWBl%@&Mz#0B10?H>Wa3!Gc% zi0Up3u;zx@^8wQG5>dz7N|MsoiO5hDET55kw zot2Q6WmKBxU_jw`hi7JJTbr|Eicxev6Bap&VOS^@G_Nf7RI`&BBR5>(xB&l8{a zGjfp2<=tY;joId1s@QU*FLguVd){g(?iV3ZMrcn3?$$q2Lv}AicH(BtGeN+Jdjd^B z)8i5Dswwx)S*6xHkix949ZBg$h&>sJ3kk99>u+APU$Wtdpv@?E3eam@0k^XuuShhX znh(k#*iu2}HUiqx^a_O?A*mW(c`lG2DWT{Ch0))$^gdB3xC)_moTD;V?S8XHfQIds8wL~qTe&z3YWHkG^|gX+)&U{uW-b+} zwzh_Y)+6sT0->bm?QP?Gx4Q`QZe&O~8i6n-V$ZR9oWQrl0-86mtc2HJ+dw4i%dkG!@fA+HE~DMF9OZJ613s9w(k zssHkNyrHbIeA5coYb6|)!j9qM3vv$pnagSqQG#eM@At$6|m0UHypYk`mBVp=qB7Q7rNSFx&4MBoQ>WhZZbUJC6?J9NW2H~VC7IMro z?-43%x)PmK27~}_le|P*CYAaX$;~j!eamhvLg?X;QFNeN zsl7S+EFCSMRDc+zA)KZ*wM?kY%~`TBkwAK=SHI!mM|q)e=Rda8icRrZxJtlRphLOP zT9#18N52ImF85rQGG>bG)*K4j0cA`J56-mtPyoL?cCNNbfrCJTxP>I6ZbeHo_7ah+ z6;cN27!Rm&Zs%xpw?(tXCn^2xQl|s%o6C0ZH8d`7>GWq>%i9s&>Q3c&TKtGV=#&(F zaaN2jJ+WBi!fQRGW}tsdnF>*aM5Zg&Dt1m0iYqF?W=_hSSv0m!4L}4L@Op2C{+tjK zRILG0wjK%+zo4!FXkn?;TOHDgCMbHP!pbAC-60PVkbVgJSa*5L)q?>u$6aBO09l27-DvdBloz z1BeB+EBOL)zq=(7wJ*Q0)RAhahHXhwH9~LumMp`72OI0r@h^6GY$Q=;ER}S!Wlv=a ztxL}s+L86N0<&6LAsQvx#&0`~0b5#1MW43^vW~sLAjP)Hn%@fKW~3WgH^rjQsi4BULzd!C?Xy2==vM*^E8Y-)N66cR}0K2ck2a z<$?h$4on*UL@D)%=uph@v8OInefZG$==}R2nvxPtGkZ$O=y&r;hyP4u-ARbJAVU}v ztH_F8a>N95pBdZkB)NskNm{;bI*kTZ`p1~hLT2vpMJ8qLH_*0j*wOA#F54oGID_~p zuFZ8SMf8qKl@Pl{I(88at00*%6_wgx30_(5d{DSDqIC|5wI@MCh_V84&uP#TG*hij z@4tFV6x-vYk4(SBc4P`@?X+*!j&$5Z?v}OdjOZL-eHK7Dt}V0JA{-3+%!iyk)+H<( zfjb}5%KhYE!Qj^@#5gt^Fxqb?YXKwamx_Of24amoqf^S0Es2UHhxZMtW@0Emxvp7W zem~dgQi}yyPSETsq5Xne2Y%+LC#^ncqmg5B-!4-+5*q+c>BAd{Y_NrE=r7R5I70LB z|AtDJ$nvQHky=m#ak}fLY%Hp*OFV2Y1ZMJ!5$5q?{f#US8VCeulQmB~MkxZ!?&g-> zPt>ci7K)8pYCuda!nUaqqbL0Gtr)_eA)Bf;r=L!JxIwOBWe1C(_*`52tN5Jxukpbp zq)oDn!{mMKTEdo2RE)eduBQG2f1y5Nq)@%G&bHaWWmhf)X+dquvE@BE9jyD5{aY|q zFQu!Z=tHCM+HF-B$A&DRV@=3qQ?u3Bs4)H&=;>auwKjt4Wk)_xYNB5yLPW`So7vq<$M$;$Y?C-h0AgX)qH-<7F;&C%SIS7wve81hj?EI6N0WC(a0I zRui^+k?0u9IuXN-gWEhXuk6O74&_jNAY|3xfynZy0?T7>U4~B03Cu!w%X7osslR=a ziek6Z1{3fkRQd(T2bG<^l2m8Ou|>WeW(C?PiPr1sIuXsft;HQ+L}uxToksv1#y2o9 z;z2xU2sE0zfJ9#Uz%l0qYLrLh{zUBB9IV-;I5R^nzyBjSL1h>qWE+=d29Zj`T-KS~ zjnL`&%nL3rQ`_#D542%5O@BG2IhO(`%@+S zU;v?dItP)`~G+YrlZ+`9jK*z_Dp}Qn%xkH<{>k4T= z+zP@0B=Ntn=D&UR)pW(R$FG8_8#zW$5Vm!p20d*vV4~rs5-!YH!d_GpRS!cGaAd}nf(^Wj7@Z~!0VDyWI_81wNyIC_$Q37d0CEVoRsxzDR;AlW$X3#N76y?EWDdwlfJzdeP08_r5BX z^}Cr)lNy)uYZw^-1aa$z*T{iT91wI(QQRPa&Y!)^b)CDTGwrC<^<7nL|MgP*CtI0N zJ_1$9Sk-*O&OJK4l&20X1_S`K^Y9b)<+uO0P}S0W zSkLD%c?6v>OAakZ_73s&^=Dic@Y&St|6(;Z}k@L0uY|`b{I^g|+jc?BfY9 zJ%sf_mZ|Fx!RxzSaqIeoX2LoD$q*(?{NpvnSOx$B1n44NX$?qOMo>o4#E`T^z_wO~ z@C>A#K|wS=BP8XJa54q)DCD2#gJL+ErOcGRO?v|eg$;Sel{I{PfMWviEZ9*heZ}MR z*g5JfvG2Xv*A9NQgE61lq1IScpXXbzzN!zP{8ntnKt(8mRLwKu_^U*;>FbNReQGow$3A0rJJzfWXT>v zf)M)>%jp&NpcoWLj85oo8h28n=^7>*$u_LJSmamoo8QGpgxEy#sTRxT*9JE~R?s*; z#^))hi4S{dRvUU==1L(#2=;3qkXU(LV=PK)CU!yw2?0YKm#c?R` z=zv*Nfa?z}Ih3Ay9H?oY>sdY(%QXPRop85&(Ajq94A}x7GK7&AC)gwD_M?e4wr>rO zf^4~`#T>dDWyM$I4QpZ5eUVoyPgB*~-r3ev#Jdk`Vqq%R$wfJoal(6i~$AD&kO|? z!A9R3dMVrbDQ+-@U)JSQ6hMz_lRu{W-Cj@ZVWZA%QDNLIFy#LVs#ePkxbvfypg$?p z!OQ)r;Z8B3_Gaq2m0Ltjze+Iy2L&DuTSjV)h>{XytP*wsm#uGwZf^+-O@DKtGu}YI$i@>zSg#ND7kF$PUzWy5?JQXwqqsq z%L3AN1}0=aF8R;a)X)IsBcYN>ViJ^(?xPRh-irH#W)k}`R61IMb&FWTE=g#Sptxmc6&8C_lqz0Azz20YbKpEaJ$TwGsq=m0tb~I$c`hx;@|->&h*QHmw4ZEt5->gk?GYMFOjbq zz2^@~j=V){3^H>B8$ag*Xkf(%5!i-8jj|1l^|Luog{dv9$DR|)r zLap&>1cK*7dyjN+QK9Eg2b89_|B<3}8@0E?!*?rg-sFCrJ=egz?;O^n88RUqeSSlY zSBNRftbkiTUy^wZXW-Yw044j+>Z;HM*f&-n6$0Suc?F%ARC^XGd)*>IIyyHy+Nw(p3PwM5XqhYlCTq8R-9mxQH~f>gVDf!0N(!f+fL5s9IaP}>egs{k_m*e} zc$bf_<`k9!4%as5Xa)%4d`N5MGP&)160`$0J%0X$-Hnrdy5i4z{t}1434PpBM~--Q z`j0Ha{XG56a3%+gW*BitYsB7}%z)-sUzTJ z*`Oxyfy)QywWOr63;&ZW*;kTH?Pbx_XOj+?X>#>C@jLdaiwh zTB^c;xvbD>gg8?zSadP4kOKK8d9atVgg=OptklGIYX#qwxmbMzO>ohf z<=dilX~(}-yFj*Z##lQiu`s`Ai+-UhjJc~GvK|?q?8Q9JU6H^o)kBd<6 z-Pm&cRRjf87JI~@v1ahB0ydqQ>6`<0j6Mpf{Bz9`=xh$zG9y=_`F-8C)^^|j23}9r z`Yh<`02F>Xb{ME;+5S2Y#4%f%=x%^M2q#%{57A;_Q!x7@A;tJ;} z;CONxdJU+p2X47-&6bQF?a+M+vK=Lp89o!lH)M+xPet=>GkhPq3V^N)MBxN^PZKPR zNO_YMQ$i;O(cn`zCM|fwQgs4L>?7T$uzV1+86M0Y_b($dqr68_TcAC3e>Od`6c3Pn zWx+lq%Ncp;%AHCoppzX^_UFbLI3lUwbqdBSAW}rdS|}}AmUqgwrb#^0rkREeYnisc zvDL-u_z{fJL4mR#`hh$52Es(f6n7?hUOW=egqQtvCo8iUdZRXt1%kS+WC#u5Wevm{ zQs`#XEQF0Wb_*o&yGd#e+um%qu!_l2-}Q?NN933pGLTKH{!3ypP0N7;NuLkJv>^du z>Y0U`6Gwi%H{k~}y2vGDdoxJTU?cg*q=`V(Tj$sKMUV3RQ4K1iT#&OTU`4z{R6u<% z5q{5BcpCT}0NX>HI4iObT_P}fs0$Vw?&4C@T>(b~)kv5-0ayrJhKt^1^-WJo9189%DM=SST1x#V+A@@!_vd9{$)+!i0ZnW*0LzW|8{1pDO^Mj-jqmxU78XG zzXPF)OC>-%s*YY9VAHeOy>-dxbqw+AIDLEa4t65!%LbmDC>wSd-$u(LsfS$uy$ll^Ev0?p#4hz%_N<+v z7ZE0*1u$Ezj|Si2;YQ>fq?nt;|DtH2j&$@`wZ?JeIvXxCs`0D!GG}M*TxY<$G_|yO zB%VIXVngPYt-4R(H@eDK`v}h>6q;PZZ)?yNebqq8Och80F#Pt zk*W$g9!^w-T`>Roq2KFrG65qs?~erUsk>^OGgzLjjwFG~E-yWV$ne=dpI;e;`dJGx zm#JlCwwo9Z%F3}9JtVF3AY_`LJOg0!bfGFihSJ|AskGtx&5O@E@UGiJ{}yPrw^1Hd zwFK@r>NNvd7Dw8sN@wK5!{jW+YYnzgRh=$*v;_kSf9LxH_x_x|R(`09IK{R-2Lj3! zJ^NvpyF}Wg4~l>DYG7AJhn`Fs`g98wF0$SDX;BA|G`&Lr>lgOY3eDD(j-outj}!KS zb8drRP7`>;mrN`y9?^<-Ewz9R=oH0YtX>M`u-b}fn>I*V+7*{pjn7 z3cv_AqB`;%zmpLwn9?{$U3=u`YAX2eidSBX1&xL{v>^aBK+3;LdPEcFwhnc`TJ@#j zz5=9JFkkiuB<`hqSMf03P`Gfkv@|Wu#ao?g7h$BXRIyVbj_%V9V+a3&8#dL_>}N?p zE{wc@d+bFqEsO+ylQAB5rh^{Gw)7>#*37H~Adr{Cqt(W`EPRIpg_&Gii6Ev$zDf27bNa5-Z5j8YxQ}WrCiB?d zIT(dstkdCJtvoL$KwTazkT>@UIegz)eH>m-(Gaiv3@1dL4M0NbqGgB)bC(#!#-qa+ zkory6G$oM7@wCJDb&R=D(4KIET&`9+ z|IbwvC)yFq`W+Jy)6XkjPnS4;kGsPjX~Cd?*bK`kq-VwDoG+K)U~1tH17P~Tf?X{l zNLh>X;VmozzGz0R=i)-T6xzl??{c08hAJiNhT%7D@ArpV@$u}Wqy!)_RV7adIN+}_ ztJC6bT$jfCi7-l4G1p8RJ{C4h(vqP|7t_X)dy2q&Iz7^%&E;j8b1b_mGs-D>21CMB znppdc?v;^N4$+@aOa+Q90bohc-FlPftp7C+76CuHCw1S79!91COS(tc{gK&p_~sA6 zHGlQhp>^#_YPU_etuc4V59D~4N|{&GcfIbB;&{_cB_4|Pub;flDJcTf|lRzXJagnT0(c-O32J#HyvFLA;PIpXZv^`vi5IB7*hB$gGseqMWFt*&t1pGg1 z3a;M4jCz6TsDvd^TZy@G2o!KR@L3f1;*&GA$nUv60dbafGSvPN067Dy0Lin3$JBm# zC$81(o-3XYf5f;@wqRtOAP z02CkrhKh^CCN9!BQ{o9#H_{3Ty#Kp6=OhgkPlyB^`lDT28hSx-2ff5>0HXkJ`C@ER zgVE}og8d$nKuzU+Z~J$bBnV#HR-Mruk+%pi7fR|!VD5~tW#F04j! z%6@8C5E*OG2Q_-}v@5_GU}z<5bN(61)Jn79i-eaj zMOch^6m|fSJ|5*rg^g^mAKl`?!7YwH(5MLuU3c#Ivu9ja7p;GnS#YvU!v5X*FmY2!k^x0BdZ6Mj7rNguXK4hYo z5A_JbippCh5&uEDLC}yZuh}=Nk3!dxh3=(`TJey{OJyePLDr4K8ug!kpPcny)#sfZ z;b1hM%;ZAPZMld8ebynKQJ&VCSL3C4R3bz9WyDPNj$MBg}*}U4EFPfSppTJ)VMxjMJ>OghQo7 zeyPsO{angKQ+^8ZqAf(}7Zjeuxe8ZMnn1O;b&-13h3Z;37@yEz6{wp~CT3Z&8y?}H zls1OooDOY}Uv@j|)ulVPjZ)mJ2V2rc*N#AR&geDNP@?A^+!+@Dukd!vvJCbsc*35kfkaKurDw=WJFcLq1Ch3&Tu3E0x>}P#h_1I zx^tC*W8pRu2l`-4gQ*HhnZ#3UR|)#8edauG8xWV;Z>Lr3@|o<|{KqiVnmL;PCvru5 zZ!*L$65R(o(}dLF-73%vV~+Ql7QQXbvrn4b(-yD{6^e@2rYA<^xGY!g8MIL_4r@Mp zXUKX|?lOxY!R@VWL5ljc!txQai^6R{sas7W>Ch6C<(b|?WB-kYL@h>lF)NzgCiqge zWILsEof_)~v-_dZ8Uc8k2n0Xr7>pIvYM}vKk{j05#m18$nYRo7w81kh72s1(JahSU z#ZY@_D3+M$Mh^)e0SBji z@Ok^6KPWqajpI4_v99OI|H!Xb*RupmnkETnbvC9R2UG^%0fOJmo~{A>Fc?=!SBBM5 z{79Ayvos5L|}9lA98R(U%lfk`P3_i_;fL4Y~E{as)a%rdMLMrjOr*T4Z7 z89fOnb7Jo=14%MkYOs@kHuF#MLqmU*a|MZcfE;-~!!o$)ze+TIjh-g8{N>cC^H6IygZ|4BR{(H?7Rjd?-O&`mm-WF~*W4*C zQ86b6A-vk4_(M{l*FAv23H0CsHL?crno*WeqIJwDFNPoS$mDlOU`%26999WU)BqyI zz7qT?LDE>sybC~gd!A---9~L~8pXf^*%_{B@?O{OVdhyG3!!#+WHj7%yZVfAO5XC! zwefcixyFZ5lbTQ5gu=fl!)em9ixrz?q6V<-G|`US3zx=_@d4s+~Y0 zmI=S7j^tiVj}^db190lbG?)VkBv!u;v!-n)B^ZG5E?oBelAguGZIOn#QD#H)bePqn z<-%!A+6>Dlcm61O41ItNa;_0%jGw`Oosn!sY=*1|)abE1oUzuc8O_S0xn#u3?Fr1r z5S0cC$h)Fi$8cXek+R_K=8>nt+!m37AZ31Fm5j4!`*B|-qN9<3f;W#Dw4Azxz(t)8 zxoEyss4o=qXNFd1z^zgUzLS0DCXC2>Bo#{yLG5jCD3F*$i@E=v8_sS;aabhSM>%To z70UEI1@BtuB=S2}_2V}vzbRW6y4G1lk!-kxd4Pb?tHxd^8*l%wOyj$3{DO8j%KI|u z@QZYjBb~}%VY6q+Yo?b}--XcRQv@2U=q7bwOn%sJd~>FriM}rYIlzp1gT5jP3@^3f zsSoWSg)LihdHMB;W{RGC!GBG2VKax{UlPSLKuvU~V@&JS)Df6 znlT}34mPU_S0)q{60_^LW(nAI3g}6E4pUf3`??82FT^r!6^O!!#06R<0eiNonAPol zuf|U)cku>`@eT^uA1gguUvX&gf$!Yo!^Lr_J=DKRhO;?Jsq97qujK%cx@hY8={z#6 zQ)iOZx>aPQ{xPKZMYwzbDEY;`6^5=l(N$nl?`_^%^`B9Z9)R#^_QpX{GjQ7`IN{qG zmm0YSnf7>NPP-dCccyd`uqXRcBMR0)PnJ_%4eZ)I5d|$za2EeOk&FhmufFu+7eFy1 ziJ4zsP0+7AahjJDx5U5!$lmNZL`G=mjWnf0haA-2;6RkK{`)Z`cqA7ndTplXJ3oPT zkyiUl@XLc|v3Vxfj*;tgGZ}a|uP-dYxGY%je)O2c^H!t?FWA$hcoBD92jzUyfG(Rs~vzP?ADM%=N5^3XuV(I8$9zrm!n0bDLDVq z9OHv^o2L{B+J@*79bM2Z}_k583m^W6DyPbHqH?YB25YI7-ftR9W-5C}T48oE! zv}9u$^6wK9i({22ATO9QQJce)RAgd-?oZBBi3@Mzmkk+WpfS>%(wb=qPx)0iSrPQk zK+$x3c11(!GTcLv`V1x{Y4Hmt0r?e60&~Ba@y3th(T<{E$iKD!xIe=znJoTWLw)E@ zgo*VksA6eRY@q}=ap>*y|bMmDho&H&*qwdE9{!ep_=ih_;mc+-u=CMOY8GqIZv}x7-Nn%{6jq51{Tda3B zM*W;=5GV2x!*#Sm1wlbu{NnsDeBM$b&TPw&qqV~%$%(UsqEVwDq-3;(KPGMs9bpo1M*k`v)Km=9kZ;2$GDv;f26niZOaqR>H11b~ zs?7vk`z>fm6a+Eaop6eYa;I2Tbj!a(b4GOpS+`zMdt=!MUyr#OH$m+VJtBol%7G%G z>J)*mM97d6kp9wi{j+ziVt_Ovw>sGF1F>cc5Kl1jz!rSkS&1p)wN5T@YHW zjaie}V{Yf?x3?yp zUZRnl{4i8BdT|`)zs%-gtC28yCL#S;gGyC*JphFcdN{O9a7^VwrZi@V2tNSU*e*lo zC$S{Xul6mtn`DQ_N%d*3Fmg=~FIO5Gv97=)aR0tYv~q5WRc10LimI}R^RJqS5{D!! z1n^|YA++h#%xr0XGoxt|=Y#5Y<~Aih5E?jHu$YRVE$t1n?yTdIudZ6WuLi$12+rFR z!fHyg2VX~N#$L#~B zhI1sUTYyU2;3pmaKkjeVl=uUN3c9`w(5c5}-V~Tu8cD!oc*?wovoesX!^fFaC%nTP z&0cs4deA>-g+YhwRpfbaY&A#J;oxj@lkf=Ck|%+fGVl#&ma4kRFPf}S$}aPD2Z#@G z1BEGXx#j@xvkKyn)O(^EHU8yW=>EO>F}2$E7h>Y*AJr8dn_scf}f% zC@|-qCUVkzXmI<*>X>L@rP9MvQ$H$3&)Z^v-8JfY{DLH`=)o>4sZNX(gh+%ClVq^cMT8Yt z8jz>9ld`^?1ZuD8%&?+gGGZJhd4-Jpy>d6_?2t$`aD%qbtJ<6#8jxjHCy0thgOZtH$m ze|artzgo$r1O{?rrRGMVk>8fCX2|c8yCd+Y=v$0OGfD;4(7Ra~(E8;P}T78T0+DEqJ>Eik9LH$(0BVj*hlo~GkfVEgH0RQ z-B#^@hXfA6yfKbLpM*H}5c@7arWcd2!!2jd<|PE$El5r_YrolOv6oLL*cc&+}BdZ%cXjO%DY|)mJxRUPrdzzI;fXykING;)@&Zy=> z?-p-=*V|6b1ix*2jR4Ckt4g_=xCDqaK;A#`-J5hoOVQ@!BFND$UL(iBm6;VuA{(Kl z+apILj`5$fvN4{fU!wMV>TgMyB{l zek05m=)iu9IQEce>oV&}u4=`986}_!8D+NPXOeg;yI66;18YD`K z%~VZn0K1eksB`CK>W{o+?$TqVLd-BPm)0y)wxZ{O-~lkB}mhd$iljP0W3SVeh+$ z#FdQEvVakW z{EL7;tIb=lixBX#K)XWG- zKD}q8J{h1f%}Ag$u}E19mXr#2R&&O1$rtf@_v`3)()78B2+Vzhc(QmWlx^xAhZ5dRE2 zoeMsk*koB#@_}Z_^ubN^vX+=%<^^URwmM3q#+D4@BSJ+%ix7F0EAw60=;-x-!RxBf zadm6g*|()ZakLqNXR$OW7;QUgOx#x!Z^Tje^U^_TpRpk`TQ7zP4$L+HX<|IyGC3!> z&)euqw8P*cj}1dy&xSRHN?ez)y$+~NKgur&PZwM}t{35p$M(%YOj;hmW^m$)-h_`e z-+owCmg-DrLpIK+K#B(1jJ?`Yy3Ygtd{^*uaV9(2U7s1U5LpnJt+TxJ6<&->{oNF4 z`6JWcaJmW!g{@;rJMa?`gRYt6a&qn((ZqW6&kdLhP8;I9o6Ez>^?2X%Hy&q}v6ZLT zxkBF6LAxu!Y>2ej?5gW&d^&C7D5@;fUEzf@USBh8D_E*kyB(v`_Q7U}?a-w15zUx4VH`PZ$`CSjVoNPPN)cP z3An5p<0l_etkSCH+EC3hcTpk#tm3VR*%sAS2I?oYYAG*mh|!i_s)12$Oof|CYHFH| zeQjpQFI^rPM6Cc6rgzO4%8HR;bBAtQvW-e-l|@%#(c3T%tp6%8muUXitG8M7Li@H=rL- zz`+GQ%-WcZR|ucfmxfFriV7~@5`}&&&Q*q&F_O-3DGOjn-c3*Jp}S+#Be`~F$TShP{1BT$X8VF*~B z!{~&&dC>hS`*mDb|CfA03Y3XSF?#2x7nj_xEIAq!Ra4y{kXEL&E{{dhNHI1%r~bV= z(piqSiwIM~%bOwm%)JRuc5GA*R?L$)qY!ZHTIh&b$0VQLuEYM{n(2TCj8 z!kd;av+CiP@omGo(LdRaJx^vev!nVD?-C`D7dhnx6J*vi*fgA{7q!=x2RZf8B@}T81bBi~Q z8Ly`qE$&=eee7k2R>d}Tz9Ra$L+oX=Z<)}UfqiH_I-=AekqjY`g9ZAhLYNT2grl>W`v606B1CkJkCI_Lwh zm|=KCvptyGD*Pe=7N3ku-)Y3hx{LFuKYpSwe^hzuuw^J0QO=Bs=X7)!mSd6C!B_&Q zFh1t|(@e^+#Poo-{0#C&MQ_1!YMg&y zFb+4#nz7_-;Ci5P>uFzej_zrKrK;erX|XnrG(Cfah6K_bM6mv?C7a$uFCU?;GY%P` zB|aE~wxpbfvv2l9D%m(wK`KnH{}|jaz?K<7W-aY&RMk2XWpSpeJDq~FunG#l`bGo? zTZ!8y8>$L(qQ)?nJ-t*R70*mL7{_Om{tS);2gbzd?W1Cm&VnMf;{9EGBVB2xii^jui(esoLF{%nL*LCD4iPMhwj;mzK_`8Sm-Hn`Z!>wK{rtW3NCG``V17n-GdgzJWyJ`Lk6aVrskmI-Osy;E{3W6SHo)<-Z3fmh2 zCtXQ?!F+ae?JI_a!qGP9CF=2aJ!lhTq%RmB??z=%w1rR3toO>dx|l~)4sII5+c*LZ zkyPqYQypxFN{Rq*M%|mfrQjyv=Feha6L7hgzcCw0y?Z|oZ;!1N3^`j@jEne6PMcRa zD%4TR}pFzJS2@^h^R}-nt;cfJN*}@($ z;^LEprnM0J(QfC=df<>t*)9KVlR@wHp)p_gJm<(NYDk7i{47^!X*I9YcKnrGW zgq;|XE3)vX=mf^|y{|R7)_Tb`4}zyjwO6yId9`h^@HWif`vm!il`cgoaO3)OJ-%0+##73aez^A`Qxa znIHET8j!ml9J3swl~e;6^}aGb5rR)!`>Yr@voQe~5bCRzRlzxeEl5grco|p8Wz)hm z#Iw-1n?&{U`+zPM(vux$1=bt`dyddIwJ zTE~I#>J_sM;nJ6sW{^BNCbQM07EOk@>WTl7z50HRRzAcePE~=z1T!pEUC+rWp}LfL z@6`MtLrBfb#72BRQ$mXnv}vfwchTx+fX5lywVs{t5dsXEB?UMt1V>H-JQ!-(nvS75 zI4DiMn0YQOs9!-7o_j`+2(dtE+NldT4MJz`rv+~O@Yyt=WSKpMgtIIt26fL}uZt!a z)K|C>rrxZ))E-?np4#TBQUp7n1sP45!=QmKwm#xUG1s#aGncBP4%kyh0|~{n1`3Es zCE^^VWp+KsNV%!$9OgaOg2f^XTW2exkbFGyDuNg?)9v{Q+Q|m#zW-MS3K&sigM7jN zq;7`XQ`C{U;B@PN%uW~3$rt@`5-$3St3AzChgc3 z6B56XHszg<7OcxO6>HC!`R=01yz0yPnjRe_R9a>X7vSZ5@BT!S9hJ2^=`Mi{_Mx6f zjN$AoSKpr|mR*8%vI(>UJRnnE30JPe-O;B0bZzf=z|ruPVv4w9{3Y9~iaengD9+zR z>@A@jJX}V);)V{+BZ4v?#J!a0<#+}%;J{V zx#HXgL=4~-p;zN$^=J&so02n%>jN=j;9m4kbJoHsSH%<83mFyOBN^^@$c5Zqcr8+Z zr0@1=JaM2+WoON#+8@&`B8F#rYbm;x@VM?i@5^Nn9yN}Yu>GE&eanD%`pPeH+kFyg zvNr;V5zt-79$FsUn=0ZKfQ`A!dR4(hMQuJ)KSfK`fs}4B>Z7z}X-1U9q}$)a8Q&|V zot-E$P^Zi-ngbde%TU&XU!rSE!HzZYm|9|fAD04iwx8q2++e)YY8M#4k{Bvul=JSC zU!7Zfi#n{c3T`b3fmjNi46g4L+~vg=rP4!I)q{EmCwxh^D#{+ zKwMD#f?F?QgU?qDpqa2cfz>PmN+FJZs4|Y1G5c_L3hfALT|mu#>@V^Pk0PQZbC?*S zJ4X9IXV4?ThlA1j4m|i+%V^U)fekT8XB-BC1Q04z1_ICP_CJ~7nq zKb!$=JPrfm3^yQ%5mql}<+gKL3LQ{w|4~7`-Z1X!rJK&!m?N=DMS>hgL0CPKs{w6B zCOSk`+G~InxM0%Hvf~l7l23Hrk)EXc7ufG+!HkHf&<12R=dO)hO0mG{CXxbGV>v{F z$r0KMprb&||Gx4R9#c0<1_xF=$nwxjhrE0T**~2|#l7pDx49C$C(VKK z^Si!IIEzPMNd3S7J3A?*>KsNUPo;{26S2_fU}A#Xp<~2bMg1AV>6D9#lu;cO2upcT z-Z|x7jXt@?quudr;)W9LTSgKEW4zWOO84TMy;T)$5pg1i^2C zwOB-Qr4X#U|}&m z3g`A@-USzmSq*MD)FBWtv>ozQFWKsv-|WwW7J?VfXc;zrh2P0JIHHE-+Fq#V94>fi zlE09;8cflRrpA3%&A9m$o>O5dOcGA=J(FV?^mpxtV?)UqNP|GvPw;UDS=Ipu1fbA@ z8`JfiG*VsuTODaxEqi;^f*Jk}GgQEwrBQVh4VG#^xDVS=35g0?@|na$H@x)7+&IPo zv9uh>b8EDE9CcR-bh_qL50Gl^`F7?H7I-73r>kd9pnN;f!i_Z&wqSxmtpW!^?A`t$ zOf);@Z(W6GoN&^cbt9JfwF|~UnUB~^1+zD&bthRE8ULmltlRkBI8t{Ox=T(OYBvk< zo}5Z3NmM5jz(b~K|0N4VNt@MDE3q3r~-{2=7;9Hb{;%pCoG;c6L@NyM=* zuzR!hDv~gW;M(o>I|QMef$R1y#V{3Yb3$&AB%c7K>sxO|DzAduw9)lEB3HPNDoxcS zxHU&1h@k=viC}>8BxJ$6RZK!IwtX?C$WxCO5zM~>xwH4H=(z+386sCtnHySli|IOA zYRgY&-21d#vHAT95<(WE{K0fdqh}v2)U87QvAD}IYaPJQBZlQp5b}RLwK~=Mr&!Hh zIhbsvb*)|Li1QpNj)r^-_{E?TR``DI`RimozkJZHvmKXGk0vTS3TiD{ASVo&QSWhn zZ_7-Kg>h%mnls)Z}khs&n(_(|xeRFcs>_*Fr8VXB;O~ zkC{5;j^~H2$B-<$Oma0i;1~Z(6Zx&=D=A1xKluXSudd@<5f5e3@gU~=8?=0@TAoRC zQI>8tL$cm@;50Non_YiU2@!n6cS17G+6ZloWQV1s3ZmfrY;#27dfpB8-Cwa$GZ1m` zT2h!NkG(mR*ypn>s0vtaI-}1QZ?%J#eTilsDmY+tWn8u>7{29lWmfbo?3X-&yG#qj zc0XdSbJmWgqN*&G!QPD zi++L`Ff_+(FR*wf-hVutTZyVI05u?tT69hW;+GVL)xbHghBOB(PK7?>@DUa+G2LLn zdOBMVwSf!!@G-#E$ zI5q+{!4#oSR4H;Hz!*UcGm?_3xME9kB>01&>-9 zA7GVTx!Q`?I8ate_Eb70yXJR5jf-&UdsE-@h?2fb3?!s!=B93P&@k8Tf?U2_Y1LBj zKIUzRO@kM@oJ%2yt=W))V>X{%I4ax4U@Q#h+>J|p%U*C(POv>FLUsUHY8w0-3%|er znpt{A%#vLL9Udm<-KO6!iQ8helWl%j9nu~7Ac8rz^G}UWN_jAv+YAUNS8V~ftw2px zwQIE}KxIL$!tL%J8!H$w-8Cj``2!rFkvE@skc_l%ciSQ5hsCo~{Qdh$PrFC`1rlTF zI{*|h>oO(Epjp$vmbHU_{bBZ?Z=@#ffT2>Qj!} zgffEds||Mv1GKs<%vE`^W}K<=i$p2iB7ppZfc5^c*D+MDAtqVz+>~jKjq55(tsqkz zaPSk&u>&sJrJm%U%>CLt6lJ);`>qVnq&VXQd&qB^5>r;TCC)3Xy>Qh^9Cmuxplc`z z8rl;-?r%){liQ*A7B&GsLCP}xwy1UZtIz#BE9bfR$}dGAEBipTrIaTfivLyvL@O;o zVhv*gl^?Jmnkk$Cx^5iOiYLl>G9|H`JF=ZI%-zoW?Ob1!21|<3RE|L7ZDjv4D7}sARxnnNXj)11ElqnpYuc4Ax^pAcu+jybShsp1QSf?Ac}Dc;wL0Q6P$W%WY# zN#1EGfK${DJWWXv>>uofklsRRga-BRDY`0djZ~T}v-Cb9$exaffh(2KTKuK7a+z|j z!5_z`qg#BbS(TPStIa_P&z{b`BI@cM;0aH$CLnW1&iof2#wM<(Wd)-oB{z7FjE@B} z<5orJ!mhyo&(I64sMrWf9QgE4*Fox)iT{4esD2A7G>_%m9&0-|_g!XYY(T96PNTSioVw| z3NjahV{8J%ZWu`o9r`_|yKWJ)d8G(aZr)`*b~5Wx3DRJ$kSmI41Nmfztx(2WRf-=_ zV@yxV2c5F27 z2Mk&08Kq;jS1*__%q>Z=Jpv#(+S|1xseFS_po2?OAqx}+9jiXJUzYB5h-`t*%MXm0 zQfCI)il(o9OvBMM5?sQ7zH^u7=rP-1v%{BlhPp9xzN(;Rau-G2omp5Q@szOVin_<* zWY=@TbJaS-kP5iCi^ICaT0WDuKWG>J{mm)ZHrGMqF}ivxJJ-C~!yBv?P#h@^hvqj^ z9C0{Ry$U$$npp&h%g>=93R6Hme!3dX#@|92f8y38GZGy(E-sobH#sX#Ykho#ED-OP zL|u=?&#Wevg5S)bnXz7I(kqa_!Q5QCABt)V01fMnDZTvc8xw zFj!1g%DA z-=|p%X~LiHHXJvm5eGi;uWQ>TTw&Xx6_jm|{2D`jiO$s6sYg9z1^Wg{zb%UEbtXL)Y8bW&2` z^f|&EQ2tAPg13W*cLRU6nxChV8rmu8&PI-X+VGuV&6DO;JKOPcq%s)@8XwnaZ&Ph? zBQQmpJwB+A@9m!W+Z*oyY=ddfm#h6_B7XJ}Q>G~{)%|%yji5$IqIn+ED z#%NItL1{<3QH$5sHrHirZ8~3MC3v|KMA|8cyi#p@^Fo{aPCru3z;;NGzc}&$0=mv^ z3J-YKskG2wu5~A>lRrCrRehu5NLWkiY9~-)5|O8nlL*SsW=zqeZG$X#vCwSV7pM-y zH|r-(l*FS-$}|Pcq+y*P@kv-Q0$XJsgI=;PyS2{Ex2v? zvBzzHp54(l@wivS5neG35AcL^C-an`nrHcr9dUT|GW=l-EQx-QeaNkI{O7Y#$UfC) zj3XKNFPsFVAMM56boe?&OX67+_o|*Z)2VxSGm}(_{v}QF>9H;P^A@rhd$Ej~MSWR6 z`0TlA`;70`HZNgsPv(z7w#JRk@8N*J=I_>JD&1AxjdJs5&~qzBKf7CXuBT)S7IvnXA=~jo^7a*G1qF0nqhDCFs;ow;%Rq z4(eRm7KhHAIAy;-pl+`>3{VlLB|J6MtuYAZNqY)_Yg&f!wQ}FC&0I-V{Gp!@`KUyj zNA8p<*bIkleFp$`UNNAtE%oUGlO$$gL_4%^Nw$d1jaLDk#KB8l*DuNKlb%4N&cuZM z7gXYrF#qHTvLLjKqbQPr6}tXRD2?_dR+%V^AqxJe^JupG5tTH2?c3LVL*onIz|wEQ zl)?8-Df!WPt7Lr5R8r3ymo$P8@HC`kv0--$w#9^$n;M%cS3H^6GPh0tQ6@KXJ7ND? z9R@EpI36hk)wj^^?Atb-BY@F|e^tYT+tCKpE*(Jp|FgiYz6V zxQjer;`6wvy?F3Kcvv-Gg*WP%E9md`55%? z|9q!}&)}d@tSF{a;@LMatp*W7004BYy13b^EE%3C@Fzq+5obAvI-N|7x}5xu_%wT+ zMw%8G4xdEssLvJtV({`Ok-24mJ|W#Tz&pwvG&ZJQ;; zflyYr&cV}e!Jn9hP0}GTU|8-L`eh}N;qtr2y@#I?R?isJLpopTqnf96++36 zMmcb+}3KC1-yuzg*W@a%r zEQgAx&9bw`f8diYNLLT8fA4&eiD+~ICc`i*DK;ezR8GGI==8c7^UpiQ#zB$>;Pf)v zM=>7!j%e5pVK99$Yrlb+B~T03k`%K-L88P?LvtXAcGgSUF?BLcq^9U4*X3gIl7}Kz z<6`Jt+{(E z9_TB`RyaDR9wafI8kny10g$WP80uFY_RDj`Ccat!mNLxhw_)PaUf(iLDiI5`AT2U1 zYox=tNr3Y1^i$m9z*l;YX3JXR8F1(%yMEPuHruk(7XWSm)ewPgDRvpL@XlqK_HjBo zvqYTffoL>o1rowYRTSfRZi)18)^2de%ld7Qr>ibut}VyiT)xZ&*HN#TaoS*8a~{Xx zC;fFXWV}LzbP`zyE)_QpwN)+KS4I2#G^B&SRZ6cVEWskx89ao7Kmt%@q|07&dy+bA zQ`2n;xS601cXJ|Nr)*`yGQj$K{o{^r*PM&{$@~L!`iqIl0JW70DP{wc-wh-?D7k8z z?__;#3+{xV=P4$W2Yg_2ri=%@UQWOI5Ow5dEcJl@{gjIEeCP8oEzwMwg9QgZHs{KxAK>T~Ychpl+Dh3#6uzWEP-Py>_ z&EgI~?H)~dqcis{fye!aWErz!mTU!#$vgb~S*<@%j;J|aexiTZB|$KCv7o2Cm`XD# zn(RcAatsg2Iy;p$k%w!0TD`=n z{umm{IVS%B`>KyXeN(m=U}sJ>D~iLQ+B%M7FhlnvvwnOcNTf&+4rE#zd$@|JR&mt& z7C$b%6$ng+d0A}7Gn-kz<1pxqz7;u~_`+^DC<5J(n=uvBe9qUX%!|+Ona?e2COaQo z{AV0#cvH)+cu!`j<+(p7v($8O5-+dJL!-rpxn{?yRe znrbsZiO~c?nL;|@21KY#Gp5@TO1V^vl%ci!FIB`HB0w+!?rhb19Ivs4; zFopqC1n+V&MQuBu9JP*s8F!ygAbRvwW$}#4h*$*C+d64rz4FZqTpw6gheHyDOa#3H z|9{RC8rRIaSaNGH7QW}A;?H!o`N}Z8bz0VGTh(inCB&#I%XTD%mklJ@Q#PWx7?|Gg zDAj7pLwLb?Dww|!W%M(~wJ(vW!9WKeQ>|c0OKy$*8~_uR-z0JUsHH)2053q$zkcpM zMHz(@&GFD_`i|{GXXCn?IR=ORCw@%lX(O9N)kF8hWvZ6$qx2)A)4L zy>K~rrrE&!Gs88lBtmCfKLC+}{ZmrkJktI5NCRJ?%E`d;98seuXgzEc^gqzZ2}_R;_5A&0_`4T96NU zo^MVE_z5|+vk;)y_`+kVSbG>env1#B^uBm3-{t~n+8X?7ptftUNmf*`M=1tpCXvc0 zOJ>7}!j5e~0JP9V!0WulxZ+KEBw_LB|H{BnVDg@K;yiOjk(*3Z*=@qi^LDu6SKA=# zF$DD{ynBo<*N=M5jPM<`;Ztv)14~cUe%x-RE=P-glzCEG-zWnAh(-pN zQvC|A96f)|rvth|8Vh4+t-nFQQ{kEbLW4E98Tl*^z`AG#1sigv=0bvJTo`oaAul=U za#nh{1#XN9ciE<&JwKAHvF7&^8lHG=woZwSZXpMmeejr@iy%^mLSMV?hA>N6mGpv% zU=RVOA=JaDN_;teiF`M2X$(4chd=$Ph$H4RG95%=c5@2kc&yg0LG|bI<40gH(yMV zlf9iT)+7B1HgKQgq4k+i2ctqg1=y~Xg6x;mWPobBy0D~${6%$ScUdI6ROUg0ZPw6Q z*kNi%&ER6`q<5YWhJ1QXMY?sjAZhx#dmO!U>Lb!D!!t9D?_`(1axN-6TS7+gTWuy- zh?Rlvdto{r6{`(d1nu?x^!#+WeK=P#pXymP9G9 zW#nnPb&9rJw1Bo^ULe*N&nQhOS74b&=zHkJzroMsU^<$AA)-{Hh7NR*1y zI|NIU832NLrYhe2DG=^Q)A+R0+#W#sOzbXLluAZD{}8- zTJV~iUA%q(6yVl1JwF#6A@OhUlo18S^0&Rq(nuG4cYnrEOGvo{t}{a6h=w|o6jV&> z0ozcxRn7nvuHg4BU~T6bgN{?Wc+{60(;u-BtyKz7Zg$np)@;fC_4aBgu#=0l<_?#(Mu^@YrB9#{7fC&W^k+I5xR;$b zk*cqb^o#16i=iQ;3f?qvfherzEi_vL){DK}$V{B=IiRT2CDfB&u3PIWZXr2RA16%= zn@ox~bkh3s|HIPuOG+1PP%|;UWc66`X$s=f9CoMyz`|iJjIfH*bAh0ax{-d*&`(3% z={V;`4pm3g-Zc8>Xs+JBl5T1DQd5tOA3toEPe8bs*`fGDU`|iFVfs)71MCoi%+mZ+ z$^TD6@Z+v0Ji<6tzOAyjd{@|$#%}!s;%;$wTJ3JkvGIE?q)@naqbpFyo!rorQayRt z(?-YpZNBdF^!Fr!RBTO1w!VD)Ra~GT7Py(TiA7@V6@(W8R9UadM!GU!Dpx8DrlsCm zIhGH^_eY6DQ84VV_?UqVV#1}YgiSV?6Q2aEfGR{y8r@m5Tv8~N5eHX^QS9a{lwvHt zF1II$33qksqJ4MfS${?cdjO!>$t+OxG~Z8 z7;@AVG%v+FWl?~fit>Y-43()Y5iF!YH46m92_thxcJe3V6Y=zh=LXxU^%oYoHOfaO z35Mt^-v-@de)u)Q>fZMIxGJHhW=B;Y-*FZE3&r5^PMa9~6&b5NcNk{$@2=?XU%%NY z04;Kppg#+&sbuv9bW~nRGTTEXh#Mvaw!65*YIYs>{MgJ?YKTz4-QG2=1jr3x< zJZwCoED$}tyLQ3PVW0;SMuCxSE{!#QXZA?dO#CE8>%?)>JZyR=U+p}h*&$7ecdXLX zUuOuHDWg%&vN;oPG(qEe=-T}nCs(lAC6@cZs8hJoIZba?aIV}iGnaQt53(Od{x(kU z^k7hh0NU>b6$HdnC+VPF;#>!>Ep4?$C3wF|ji5_hTv_9jG@rL3Z{i1(yvbbj-a3A) zHXfI1BVi*rX6^(@HSFB31&h)6YI+sDlwgM4Er<4tj7|Kq+!W zTkvm-O_(Y&C=LQsaKiv+IIWBGy5A=`Oje3SmO0}w^XF@;q^88|DSV@i0)X#{tMM(R zdFKTNLVNTCAT^|;m{}T!+DQePIPeDf4l%uybIF0&nKOA1c4Wg8?alMY{N6$)+PQkT zQXwg-{_%cf`dRufKp zSCs&=^O=2{>s%Ovod8_?fd`p3RLPF}wk6dM00}u$4KSF#y~I^Z=>2&xXM|ubc>>d~ zCnSc3Hk+;nm)eO=l5Zd;nFCH3!MC^sADN91N(B&c4qnOXO@hgvqJ$kY&XA2nXJJiX z%_d84D2_p~G5)3E!uh>*W9KW+oulGTm~%Cbjd^o|o$XT~0z{>fzxW>=gOz|^U&nIz zow*!p3U!+RDbwYMwa+;bL!HHo6)UxJ?yvod{V<8x)#&os_(5a^gp%r>CQ1Bb+ka9{ zMxezKW*h$#G(URbVsYuu`8S8iW{oV)Qu#40<_c#7aSd)VePD3HYWCo6`r7=E>-eFA zz4gzxNpIX#ahkQqz0Xk?o{{~=!Oe#YHDfFP59L_a>}wtu(P*(b4nLZgaLr zs291Qblqy}Y@`yy=($QU){<689f^P?!CY~bYToC4&!$@5IRe7f*`0%H%B;GL`Q*~2 z%+i3_=9YT99f$^*x=OsvR)^7qPv(hs-ok*Oi=h4>+C=p8Q#Fyuh!i}IjAI}aZcoI7 zk&U0VMue)J0DN8?wIG-iNtk7lUW*BL3bTId&+ri2CZ~E7n_fSS;9vZn!>3Cs*<+`8 zpb?KrFHHSSPEl23zV|a%>^bc6MQtDm$^W@FQ>R;imXV7G_i3$uV#frF&{R3 zsap6-V2}E)rtE=z^NBdOf57#Bao9>0SE^!D`@%sj=9L9w*ei1vV{O@syX)BoDrD+q1Jh&4f_ZcWpTkJvx!ihv+zXK@12kLd#wC!ZQ!+U?;+&|Gc}@6c6OTPq5{Zd8bw7zn8c<1B z-Y>|vfE0nAm&3uWa}v1e#QCj_fr{{wv=OsfY>x@yHqUr0=t7VPL7C>TP2%xC%&saG zr1@xks43+wHqYjQkK0v%#t}wbi94b_*L?VHPGL|qu)^2O4USa^FrXoOq@*6{6>YfE zx(VVUY{{YyJ|$x>LvH9F#POTqE;eWI><}YH)2ITXo$hVyDL{fNSL`-eaqp5B<9vCaYDZ7Uq!Hm(Zss+^OcI%OTUy%jCbCbQ$L)dDP1-t8+-ME`5 z%SO$hAu1L)_Vn4LcZ_1dQ1eqjq~Q)Er+?&U3Sf=j(cM*=T>ER`{@p=0p&>tf*9_Wq zebSYQeI<3s=`89^z~c;_moiD)V)C7caB%~HU{*JE6NJodk@QR>)s$xI(L_W+3O)S} zfG{GZ?D3u{#5tgU4cHILkVb{SOPFdQ3S$Fl|v8&bGm?vr|NTp?MT{Q?jEzIDVcvCz?KrCDXChortd&)d0c_ zLogw73xt%ieo0V7N^mm10Jg-!gagTY=sB5X6v$AEP0%19Rviitvkjg*$v$V^c@}j0 zMpmHBo`S8SCHf>{NM86C8iy{k3C<}oM9=(K!))1vqEWyt>!@zAGU$rS z+IWtMAjtB!AX;638@D;PL;&I+i#CFKnkp^%9uGqW#%iM*$NJkbG#t)$#gq=suLXdW_HdkA2L#6v>2T^-Fkm zfavc3R@To$GSD*VXdGwfvr?WC%2X>=eg&#pjOE$Dd*2?A z=h&z^NSx93>hev9PnEO~*ks`H0g;kG0*x@6SB_xO#&hb5USDiFNxEpmIF3w^FtF|7@N)U&m#-Zu!m%- zXUova0Kj)^Q4qm#8v1}T=A#O2Vb+p9X!PtP+LhezYnZ){M#BUK5eMTxuD_YuZLOuk z4Hk8K+Wq7RwRwE>4b0dGU(*0zGF-d!+4AU^#|EMuBR0Zf{`HTn!+|E6o-}xXXXGV$ zXRS`Dq+z$`P<9n`bv(8)UusgiyFy1k8LDl{GZJ@xz9H|D3nHS7RM4()p5cZ!lQN`7*-0p%pGlc6j@= zSMbn64SRWtx+zy}y#j&)ORCpiCbO$WT=fy)=l)LXHe8y8tptr3R2}$Kq(Ys!`}*|= zb73x^aT4M8fYT!OCn6X@(nlMs7b`Yf6x=#~(dg|oWIK-Q(?4?^>SBq8HdcJRjQXNt zS#u`U>74q|5hM_5LmMV)j{>BlhQAsrbx`HKHrEM2)6%{ zJB@$28ihLLmiLZY-L1`jeD0XypzEXik4-SknlLiG0i>^=xm(8cnN~T#cHhFls~LfV zb)$v~qK~y(N4(kT(_oZyhe!TEuPX5iDT`h-_(ju{*U23+4V(HVlB)wFd3h^;!khXZ zUjLvrI7gooOhY%CfrbqbZf1;@U3BGY{-HRQxj+!MLt58bbZTa`Pdn-vZ zYg<;pYK|)h4%nD)O%mbkYzjEN)98cf>di;%_F!@bPPHW&GD#O2KA)>M5yX(fgvR?v zSmz&>LH!;6_ZeO#RE=oWzJ~z)s`w@HHP5!p0hw6)>Ljn8SCToxPs?$Z_u#6l-ln(W z?=w#hmlbRhIA%SAROMy=yy9JabPofp4_%9h^G~ozAQbN|Q5?@D-!y$SII`&tMJ$pq zdh&KfKsKX^qebnJA6ZbWzl%wlv_~20MdWrQEK-aT|{m%^hT^E`8IqH@OYFaam0Kw{qWQzSKcp`Ve%^j1t#QJXRLi&Zp6RD{f;bvv#( zXTSZL8l?z$WkjX`JW8J0{-EwzIRa0kGLI_qt>Ov zrH?a(s@qN~@8}he;=r1-vf5$`3HrM#75s%p>sevQED1oNgw|{*Fe`~90dP{0B^M^~ zX(IaJjys<6z>pW-i#3-;%S3p?w8T0PO!?n?L!d1K!^o3(G0EB!TPR~>!d4S!Rq zaP4Vn{gOK1Hms5u_;R@TL?EbxMuREF0-lFkl3FsQTsP_4>amTm?Ipj!;dUma5)oxF z>!vD$`r821)k4w{mvqKB2RKctWPPr=uT&@?sM2vtDu;+~iM!sT=juCn2L44bDeffv z1m@;eLe{T#76y&Q^{aY~5N4Wms~jhvD4_#A!#3?mVCiLw!by)_V4_nk(?r^Pb>GYW zOng0{bVE?55GJ2HkH@4;hbt-%CV1VdBYQ3kZn;q@$bQJnTplt#PTUto#h3hK0YnQO zYhUn+1kf zG8*bzsSwK=_ctg50u@l(XZU8w5R%N2+2C+i(Kct@wFuRl4O!v6F|fZP*SOX+?0ycs z8V5IYl$!sx2Sq-%TlJ!KhBN#!_hYkgfu{`k@hWHFwoNDK4t+Vf{@+06>UhKGMps;n zt#N1Eso4_jshhc=Xx3{kQfjI#09}-lRxCVn8g+8;_RgH{FGUtj1d$K$2Vo;C_8 zmoA_W(Ix`Icq0lfUph2#cH+?B88Yog*+Ov}x*c@_XNff9rQ66k1u9u27TFT+GM=n& zK(;M%(sy&uQ#d9n#b?sUpS`X_o*~IgK3&_uyZO}a?^!VFv%nhs2Cd6lK;CH{CL&!G zL}L5Q3bMBJBo-pqs8EezcfaxiT?_@bcW8Y}51CyZ+n z=QKwtULjZmMi~iIk%}R-aGE+N5asMyL7-yDBK7vkfG;|ejPp3c0hr%VDXb#U;{LyM z2XoK9XfzpO!AXY6pal^@@FH*Jf3n|2bAzHTtd7EbzD)fT-?aP}N?L$MKFx z%oyz~g7>DyY`#%2`B-wigMpcrO2dO%dKKlBwZ*c~mOx+#*XW@MXp>YwQG<>r+XbRFBl{jfT^PGX6CmOc4dw7}d z`t05xT4kTn{`rN??8NvjI!@Wo%tqWwGEo>llDTSjGb(>ltB-^RkNr%0@Z4)pucwm* zMkyq_zl#G2S0cV~mqxV)Lrq&fjW3_4d_9hEJ#WRUKnq3qOaI|x$q`sxxK*Vl^*!>m zQyBd5z6){MM>p&tSp?ZO9QYOLLXDd_Y&d-mjQA55oH9SSb`Ptopax<=*+dJ|uWL?B zJX``gkym81P}_pENP>>4ZP?N8X6ebVD~2DrBDkG z4qKAHId9_PsD0%4@hNl8>MsdmTLIG{TWJHf&a~|*8FsBD@!7%y9p9>b%NL9dy|z?M z;XUo|EV$ef2p0++2J*%iSkjTVrAL)SCK#p1;KC$cw4-+2?Y}bj&;C=MF@B23m%n#E z5F+V|g$djM{p4w=AML{S-;JlB4_$?qc&Jl!(h12%+d!YsnW^1*&5eivBR3Rid$_ir z3dFCY(;v?|*8rk_KDB~3`7W#V=F(N%>xjv@Jz{)cc#5+NnAXqfFXu%I5Z-gn!6C$dq@be-1H3e*?@*bpFJUre9qR?ou`8+MZWI#DCo#3H0odHdWl z8&f9Ps4ZXv2sR^S%M!4$;|XHzw0e{No@f?9n!2E<9*v3`)z#^_w|cXuuMy+bUsCglq_pl_S77I?N1k)9u<=+sj7=yxP?(+Jwy;gEK#5sA4xgGuPXx1%Aohf_BT z(^HG8FH_K)pUn;s6r3k47<6-k^AH;c@Q@0np0ez6bIG;&cU)7Gzn?XBILbxl52~Xg zc9LUE@sq!Xz%rzX+vZ<$9P>f8j>n(O;d(GJ=l_*9W7?!VV!Y-Yv_ytY;UU;%8?0~0 zJqDyyR0O^wOO_Mmy*)1bh}-x;9=_p4MnBD0E4i*2Jk-&~Sf3B-K(G|9b@s{X4;}g* zedT`wCCufC-v;rUPL(?w5YA)NTb@HEX@N$~#`zw?P7rK(aW%w9xvH6!nReB*26{n& zZw2aB7Jy#BiBE;QgpI=x%F|u7!*%hSQ8Ta6!z)(EsURkOo$RX@b2% zen!9&k!e<(7NWzKc~f>czk>!>0q6Wl)*I%s=Of5*8Qb@J!{yfnPHdAAC$Y4dSyLa$ zafGggzf&WOQpV{t(#LUVR|*vk%FO;p*v|sqebwR08vA>vOB4$mJFps8L`AgIINk0T zx;skPz7S15I^7fnz1Rtr>B6djx9(YmIa_mO9_vNbbf2aFZ)`6=({B`|y2)SXoHt|H z8mn^l$ua@Lt_Qb^($_}+ZPlG?X!sEn{ZIS5D=1Zv)bt{x6l4jb_M8(DP?; z4!{+%h!gkSr@_IKFAaYi0x>q+8wL$;E}3HVjaOabQsJBU#`o6=sA^pG@unLzXjXh89sDi;#elLO4{L~u4UZb`fYL?8a-f7ge0oHuw-W_3-_+rw>rVTUSpK9Fb4?rktI-4xneCo@1G^$_f9}5LPfn)xXE-W#TLZAg7-)$UUWVDVx0r z#S6HuW^6JnTvEeX!5mth=>R2Z?raGUfZGgfdf0GMbU=!rhZlEIhH|~Mdf*YU`FV-o zr(DR}ot2H3&!V2aa2$LcvvjIFk5au%2Eqac5`3jfVt^~OTM{!8{Sj81{!LIx9}$6% zK_169n~6Hxn?B8iy88iQoplB8o*&l6m&V4l!#jD}UU8M@qMb}KPkUqn)cmjAf4haU(akF_QtY%uB_%uMoc@&+ofAvVViU5iuo!_60pNmPlYM(d81 z`nqp|G0lk)jlHE41#pIJ;ew~>OF&kk>bN)j|43zCxO_I6koOh0bKq&anhHGdFvWvZ z9`-sK`IO^wejZpA&-1+oOXek*C9?ZZy&#|z{kzLn963NpJb)nZ_tl71t$j0T@hLR* zb}Q9w9Z|WqVH9rpX$c~Ba)iUjX-vA=%IKhNn?{R*kypJ5;R)xcv5dF;J zbDu5pXpB#`FOBRACPkg+(_J-@Ef> z0Po}8Fdw2_jnH)MhHk<=j}qd;Kot2aZ@KUEszq+LUzl801o6Fq?wGOOoxKD+H8C89 z)-;_$8r!&<3RnGNfP@V(LEp$!FmV($rnWZ%pYE=)5NG$>UfFL4*)8Bv2|;ug%XGw) zPxIH6>|e2a)-gwsn*-WFInbP3DxmLJ+d?r0b|io>_=naPXfjfdkk~e6mI*XTy2Khy zm}Z~XNWUOLRb|+q*D}ZXZg8qhz7;{|mvtoj*7>P}+Z@>u^xpNc5C8U?_>GK-kf~E2 zT;&0f#<3-xubr|hm3s=3&joNG&LCp|#2QAn-qLZdZz}`9#>9}d2nRjYQZ*^-ISWUD zf})kycz9Q~>yRk48I%N2F(#S1w|=jMi`POEoJAu|*uQfJTLF>D%>;bldM>uUX~77Q6dNb)B@4Yg}8z z$dItTDGwT$ZD5`_DJA7Ueb^ykv}1kBBfIEF4yEwJ-|ZawqLCynwHJQnwYsYRASZX( z8~*Zw>NOVm_tOms$+~ls9nbuo82-hP_zB?p3#wpFM*ZMRn*?4nKVRG%GwUL(a=meF zEbgWDc;@#FuifMLTY&uZ;V|17TDs)IJfQK}qRN`P+J!QxGD^_*S-sDvz+bR#@6IVy zmxN5AVzs?F2-PewyU=z}f&Rm{Phx7WZrGw9!A%M2lZvIg5*dyMiRD>b4>N>3a?wyV z9i|&RLcJk}U5vOg6fe@SA@9G+aA3x-d-n@9>%4Ag*$Uz{k{@x=I^vak6V_Y}Q-{?` zFg*vgiq_Qob}{Q50WE-S`_dX3Qp7-8)X74bIG^^)G-WeAYx4FiX^QjGJvDf(#-i5V z$Y+$v$~+6%L1P044yz9GFbRg217(^dB6FkuVYh(d&fGKiskXmI^{9sLuadg$WRvMm zin%>#D42gi+bK^MWSDprLv#GuK7=zGH&ft7Pe0TV@$u7aT`DP@USN{;F45$&h9Zr6>5qwej;)TP0eN{F|9s%WSV5-J3CPS5nf2Ej~JNt&_5%0g7yNM=9Rkj&$6=)Mww zu)PSxAfP9+gMayNrtv)6tA3(A*pIKtEDX}?vq`0mWIy)x`rf!&`i`ESp1+;toTWY@ zvqJ0VU@mP98f)WgdfuMx46&Aaa=!A@GmR0f9WDUKbARdEZ*Nji5FVpM?FKIP%yOi0 zgk(Ojb1Yy!CqeOaS`%Otp(*9C(UV~q$FrnVP_GZvRCLlX_nKpDp1@^4Q9RyM7*HVMm*5{fxojv0GZn&dW3k}Vw- z7%x!sqMIh5RGiN@l_^MU%j~VIA`4ZKJhU!fQ2)YD=%R>*+)Kbf$<84Ji;gp|TPLD7 z7cPP-03yxEM=uIxlkjHpl`F1r)0#NuPGE*mB5OC}qRSKar=$Igpt?FqYqm zMge*Q@HHcXJK*QFUd96z_64tz$NY@@;=DH>vmf{I{Y0-1INBn^gXd*oszVas$hU z#o`I$iBw~n8#u7C1M>!>Wp05mA%|)cmU)WEN$0)d9NcM9!I^T z%9nJ%bQ5If*xKN-m%*D=2{MV`U#$Hc1mo#R{-R8kKn&sCV5Kq7STp?Xw!t8ri`52K znk9S8;B7Q}j$S4W?L)}j0Sxb&5xmeWI4$dnJnTo6;Vh;l6cpH^lW=(^p9)fPYey)h z==8J7VC~3B6JVBuQtYT<{t`w;14XA{SQ?=ttL-7Zo5<<^rd0jTu*a=urDu-MDs}yk7xYj_EX) z!1OK1+K8a`=~2jZs>ZQV@Dpe&k)y6P>gw&wB)RnN41iZ1Q}38RvSd1wOHPgd&2 z^iK1cnjW?5%sF3rOw0};r58*FXF z?TJ!Z^anhP%om32uv+g95f$hC*q}J9W5rflc2FzFe|RiF zWeCyoEN4*6gTnFLc=F2UWMh&Jm*nE4BeNRwYt5aUYk&r+U5cMDAY5^Bk^cqN_&Z*n zlPBKp>hZ^D^I8YiqbCk7$UK^JUMitTa}B9qn@!|U^FYorb~cLhf)iPfUnNMqWYlW+ zPex6gw>F@eCR~v$1-95rw>P}xn)X71#)FeYAaf@??~|~fRY<>F{=Oymdm6Eg=5#9= zNW`7qL{b3xVsIrW#$Yhl&n)BiujK~lQKqn&_K;FG&6avs6N?fT zeG^2|5gDKr+MR(`H-K=6Y`g}cm^Q|+yEMAnp1@u*O>Ao@nVY9SSC2s^O-G$X4YL^s zDt%?!f+2y!&|?t2+f}5YWs~N>7`Erk4}2!~FiE4%N5)=Rc)#jof_=F$Hg zh!ynjfoKa}DG1P(;rhc|JHJGf;zkK1y->S{jU#ic_jzTRDLndg0z>Dl_4recdv(O| z+)1o;Wdn`4q9xh+>YRo{jLT)9CerB_vz1GX%!?$eso7nL(na^B_ac9l_ML&-=^eUz zrhg{6I*?aXM%WJ`y$md`(jKN%wkxavuv{g2_w?$ExAGfsB*2HCX5i5>G|=###0)^X zjVWlbSgIvRh>jnFjDYQ;Gi|za_g}ZRs%1UBW|LIp4yf&ALJ3TN(_E18C) zyC||(b21(qXCXfHNsaRvn)NtY8G4@O0Pw-2^~aa3dHxn_ft6=l_)0mKb+3%O-HI_Ng_6?hI>}y8Y zR5X!5jQ?eXsMm6zo;*7Qb7!6w5Tf&5h-YYCA(6t33gfuQP>nat>0QF44c zvpg_4;P^BPtCP~m?V{QXQazu9d-Wi-C$XP?LYpKxO)=k%;Wjx#f2zG83pil!Mhb2V%4xljJ6mRaC9D;|YNvBz`T z$<0O_7344_Tg5dJEa2va0ocLkf+(B9Pl@n|o(4KjiZQZUcTAObLz~Q}CqOt-59w5< zd5a9b6bq`Yoa_yWlJ@e7^+wLzk%@v*E~aQ)=L6d*$=&AU2%t)pW>p&s6-9pkRc&YG z#fX<5a;jJ+9H5dAq^c)ZZj7k|(>J-uibFIJG3IJs$MUDEYVrnm1zHb&pcDj8`%AyY z2$kWC87oYfHBh6+>+vH)A~_?nzu^ zqsikrx;uVIsbx(`sjlrj?xnzuP=r7FvV-1{XHXJk)n_==2K4;?VbyRXYNC(Pn9Usn z%BYQAYbRB?wbS0WsePt1#$J0TuRl%pkN8r1Cnt8|8g~9e6DM(diUz`P)<`G$QWe3u z&LZMSm5P-qwDl@kkGqYas}*U-!&Bvh#f(l%y+PuYxx12Z_2yykR_nf*1InDW$1{S2 zO!O%hYVIp~mq1b6DBJ1iBh}*P!#JFidjCg=*-Fl8!$5<7EQoOh?6s> z_@b@Vjt@=0Rm3=TC4IoD%uW7+0$uJ?)iI_DOglDiYMYulM&}8W4<#(czfI)+Ze}N(^kKq&qU}3iIc-|66aCv+@pZ zzU6IG2GeHcy_9yu;D0(hyztPr`|ndAU&tN!N=g!x<_?_yoA)~x(N-nsh^t8MKBJp% zIC6Ln{rn=yU46}Cm9$<1l+SB}^3l#5#HxfU6iAzJ4tJQH;s;d$L=%mdshpTOjsAzs z?z8#qvyHy-(w5>78@22O2!H?3yDbh%e4}W-@l(OUUn)-c)K$bAv=A%&Yerck-Ks0a z(7hzInGT!=Re2T$^X1h5*4@SI1@NeiSrxR^eB^78O zu=sc7!Ecu@$Gin=AQbF@20PyfNGWhQviE&$3ld9cui<>3AVU zq!c4UP|&S4*7wMTn>78sg_gpVWJUW3RwTXOV_+0%*Y)0ttcgCI7V_0|neKOP{|Vgf z8Lx>ozi7uyF^?>e(uj5jb_vz2b){fe~QjU37tb%VR^yhYvK?k_pyps!q(Cy6rer4M-n<3{3a{=-$vY>mw zrvDuUKI{-375c?4-Ca(*=(D|dk?!8%_@NDG+PE!P3V01L$>}c(7E7c;k zbG$IfI1=;6Ic&K{VXVMKO`THXD3gxe`m6!1_P7>Dn&68@PjO$4MH%q}X(@g^pTk$$KWDlP5SwVA<@(Ph%R9xohwDkRq9MO3Axn|Qb) z$1P%3_0MD`<_#WL80>;wQ8&q6L+EfYX*{&}6bGu4HqwA^~bp zAg|0v!8ve%ChBR35Tc}_f=9j9Tm?gcVP7q7MXeRrJF^Q3loef53@ELqVx063XNX(i zaX`OyDsWN3MdJ8rRFO(wk2@_f%zx0i0f$fg1TBhXR7YY26v9&Qw#^xVolo+|Rq!UqyS$_DbvjIqzg7QF@xen+Nq z>Ar--exYdKp#^$}{@XoZT{WWq((xrkB^43_vxH()V2y;PIp7R8T;s*=<9u4JGlbEYGVN%wc~@l~g^@w% zn$eN@1BPIPHfG(G=pFQVzD_}i(Z(D|SSF)I@GEB>WGO3H45GSry~GI4-GpT{)x9Kq zX*x#%58Nd&vRKbM=+g3SCq1CC>T6W@g(!PN20y$`#|w}Z$e`k=gt1d&&tWwn1>pTc zXN9KX!g24)uFC9^JFqrLYos-yF}rOFE&BqUZkh|MoiM~Xw)@8Gre1vm_#Tg4lJq|f z{R@S7&nJ0gG4W@q)rN@3THfI6VAH-;!gpk6$oE`3$L}LQCLL%nyumYPYX7gGLda(p zWY9odnirU;k-W9<;!7^de~|2}_&f#|Wk(Bft^D0RNw=5V+ahm==+>Mq@n9;7UTh3PWF*N-5XFyqShN(rmZ#>ObY0w!XSsUIaeGl?ekC=D?8@`e+EiwW8Z6( zU_uF6y6NDzUh-^r0)<0{WG3}M^7Vr}wRro+sWyBvhc?R{Fym?rTO%(Y>Rc>Q?uB<5 z9qM209=x@_Fv5wo2MQDpvot#gSxk$OjR_b9txNW4x=va8QJ}p6qUi7PBqS!fzy`?V z=V&&Z5=;qZ;)~#6WgE}rR&)rdUG#wG*bZTGe5E|-v8he2Zf!NWd%+3hImgt5Kn|=J zx~S1{-&+#h$NYt*Ws)iq7QMT~Cbe)0qKpWF4ZMt5*FmxkHQ(%DDK5#_S(wDBP7FD4`UT+ivD_eepQ zrFCf>ZNb^}I+{#IWJnB7-*h#J^ImW%vXOxuTTS)$?Y-hwwV&IX8O_l(qAlXb^W^Vl zXgIId;-zTFhj6c!Lc2fN^m)E0Hawni1(6uSgrP^**F3FlYIbe$Y;61{bDTmD9NUaM7cb?Uq-RD z5OtShEp<~_j70{3ipUUgTEKz{MEMd3nqqCtlpAUdebCsd14PmUl|Z>ztPRmdb-9q1 zovpgeWo|M~24U|>UP#7VGVG%kwY!Vw6V{OLPgTc9QfDgD<$VSxam#rSl=Va?m(r*I zZdt?*RL8C_i&>ha`U2LJWQ0cn4{W=nCX{UzcwBA@p*}q&zl}A_AJkq&;3euIROfJ$ zkvvy;QW2GX(=@MS&fMf!HB8_&s%kVgeB1q&7>>Dp4 zJ+)7`2))sw2;{m6IS&3BGcw*y!1QoTV=t@0LvRFrI4UB5{Z4Epd-lc`8%v-tK`fvC zSn!SH^F!B)6h=^@`-Y-|^*_pXRQ#3(WCgh&gvz-qDPUks)|Y=)NVt3?1YPT0+EDr6 z`5@Cw&<*yUyb}7@OJI*ZVJks&m#P(uZnbvJkIeqCcJcc{yoIBzfb$>Q7@dt+`GDIX z|0bdIo!Er}6$zc&tKKoTZpo;e5M{_S47XlyCt-ZI_|SVYqp5xCm=>4My#@j%XsPC0 zeq2irv>>%sJD(>+1Kzoq4U)M4?~Bl#0)NX!7CB|=$X0tp}+Zf!r+M^Yb`d?#w-E#U&Jx{(D=mYxeW za76Pemd;7ISWJUG0W;*ou_y2bhIb^34DJbjD)|GUOHI+x!o6zJyEuAzaYI4?QuNO= zHjjN$r4A$TNGNHpVK2wYv{jO@QDu|9-GLI%*>PPz`Uj(d;&>MNV~jqP{6=<)W! zAn!P_rJ`SB#YfGq!=$Efoq?a(KNxo%bAc|jS)M$kDr4CV-nx zgp_lP>|FTVSQUV*k@X%7k4%4t=9`n{OR6m)qqa+qnCV=i%R1ugmrnVHH6rA?05(9$ zzoA@(K0`?kyh?FR4QajTE34bUjZq3+;`g)D-M3N3aY6YXI}w0S8__I3Cqvb?iO+W2 z%-LjOW~HFma^Fg@OPd`_cZV?qmfusq=&q<~W&&o7KCV zIEw3YemfuMbmza(kRv*4_uxWOs+?kgI1khjV#Zu+!fdNy+;B@8jA*}3y2$HHOCsjE z>D825Sa|l{&ke3H_bIPaLp;W%Z3Kl)z=k%3y^>llXKYG|DfEWBvJET1#J(GBMxx9L za9gT>s;{cE*gi8gh?fe`l8c21qkX$&;AQHG6h?G}^x~_@ZrDCQF0Y|5)w^I`lOmNy zOBleX0RZp#Mn)eyU(!}-AJ%eWb#B(PL$6p&h{72K*FGrk!muK z<62tI)RP2{)G9(!Els_!_-8y}pnOIF;4L2SIBHVsXbNw;29#gGO34*%J4~z*)AjZQ zlPXySVx+1}eIC~#3|`HkieRVdnfFw?Mo!ChMV!Q}#y$(s#KKm}Cbv8I!RRa#`xYP4 zxc*z9`=@jn+!00fso%aAKe=6XJ0UE9{n9~|e=%^aluZFw8AL;K+LsxCOCkw}4tw+(R$J0<^wNiDSl+F%P;Mk84}NCsdU zU-xAv$|30qFq(eHkewYA+iTbUbEjh%Es_3uS}8;VG=Vj~$jpi%LB@I!-@re(UDO9_ zU+f!kVPDO@anE*4{GzvE=k_BlVI2=$h0Nms`r}h(3ZNrCQJ#?H{~OX0@?m7- z6N-6{!(pE4wbt&-Tpi7l6DGR^3tm`yWqVL=zkO?(yfN*w&C~oblC|29lKc9uM=HJE z12yrA{{ZtPKd|zqR#GQC5@O8_Z0;~YE4xxvzTRYO zjGHF@2DdjRV}L<3TcqmD`VAzq2JKIS2M02Peey?g(6*$6xp?u0 ztK*@4dq4*bS?YiSV#P}OU`SpRjDAZSo733uaF7y{t#L2ER{09Ra`$X6L0a1{rl`l2 zy?p0q!JNA-@84!YwdDmu4Y5ho&o()IqLt=T$I@U8{3gjr%hc)tfqrpNORsg=LZM<0 z^Ja?)|G!&sp&jlOj^Q3O*HzZ*hpazBS&od>FcD2cwc6wez$7wj5ywc@5%yrdYI@|4 z-){#!1m-oE3W@i8kpzGCD%>zyk}&mKm}*8-4PMWXsHnojrmQrI^nJ+#JclljG1s_E z_AicN#;&6X4LyJcNE!zLA$6W;K)1DxB*vbnA)p;d(vhbpSUrC^yxr6&S}P3>lS@PB z;In&@FC_v%AMb=(>|g1>u_b4YHwpnMM~-%&>D)6pyY}$|i{i7pzWrey=D6v3X))JD z`1?U8mK{L50Yr~VO8X`VL}~}}^A{=@KJO(=0(=Jj%?MdhpoF4d#oKY)I|$!MWO|~~ zNF>!Yd%pK}1 zDAuyUc0UG}6qgU)D->huVC8~(XDm{iVi$8lR(=t=hpiD-0XS~A$7AoGc-04583+Kt za<=}ufR~Y`7HDdjU6qa=1WHV8wkmN~Y7;;IG99YKmL zsPIwxEUrxp197*tu;D?pb(_Isd2xs)tf9z4OYs5tg_xIJ%uN$Z?w;gZ&e?zpK8ae$ z$$aN1tl=IzVIdCay%9mSHlinJ^gwhKd>j2{6xX=4q^PN)WOVCGTj1AK9>xvrh-K-+PntGq?U9n28fU zf6PiVRP+G0v-$gZl!|b1rXBY?kUeu6;fzei**!`G!eV|tr!&teV*8!G!zt&$~dF zIaAcMR|yNw?0bxNQ-vD2<{AwH$M%-PHX@{SyC5c_6(024pVi_GkLOFp|0zn0Nx$3= zF*8iy&|XF3h{KfiNk4!IjY{t$Y6GoWXrvRplKfhp1sOwwudeelbaGigYrg4~>i;H9 z&-Antczk|*1r;#DH-&iEMZmg2rGVGC7RSQ@qs68aA2uL_=s=Sl1zVsie{UQwDA!fww;UN+*=he)|c>B-ugAat=2 z_CoQza4rvrZdeXQH}Zl&)3z^j!;Lz|$N>A(HutK}=LoL;TrAwckQv%!^)NXgvj47T z+@Hx1s(n$KMZm(L_3DPpWjD-G*aUJ%=%5gp?<=6u(&)CFM1?K&@<*uLz}Qosb)NlVbeQfN}^4NtE3 ze7j`cL_3H#u53pJkz@96=IA zLP}E_)kg8l{_myECIFe9MzvOfwSLrth+)koh?=-p8uGU1VT;#Y&7v|SQNd@vHs)h+ z7hoB`^T@BgnY#2J=nb{Xwu39=8BHx#_;*Qe01oGgAe)KsOPt@i1c7 zt75K0LyDW2*$+06O2(*^5_`RT2|`UfvCoX0RKuTHkJEqB$YKlJjl+0pPf{C5TQ}Ev zqM=x=ZQl=9*0Wf{l5GtV0d7lf>>*xla#vNE`t5lUT0ES>EDeWwhxKJu3niVe1n)7& z)|`cL-~}AFW;L*2%ZmVDSgD+08QnQH-@J3>0|c}(a^L1C>5IUnD$fN>& zf^=n@Yxg&r8Leg-t*bOzCN&Z);7JzQ(@5W1G_YEHUj_awhYbN z0nSCWcJj)2{AkgG;1LkWXt1NdYK;WtTZzaaDxemTC#X+E;1fi*J(JN@3b;L}El(jn zt2apF5>b|o2Z_&^A5+Z7fAQ!8t#-6;H5Jiz&taHaBlq1>moy}B`FZNV_WB*c2}{Gs z!Yl3fcmU$OVL@%gLAjx52~(~(Ai8}mKGVY)dSuI~yNit@R}}bNcHML}SGk}<32oU_ zgs2sVl~$3dqLYDI)FGn>eRZ8&aG4luU=M_vw(+*Oe&y&&hjS6D+@pzsClWi!>p(0- z#Sgxv-4QB&LEc{GYNSG0qp(5`rLFq!*YF|RI5j(LheyYlZL{ysT$5Zp+vLeYX_CoFT3K?aHP-_L{m=l zOh=hS7|FZ@P!}o;BxStO=c;bJ))|X46$y|y!i*D{N$t{(A|!z7ic%v?sAZifBGw3m zWtSaSyaUj=pB;?<(4SOJzX!)1ww^ouH)uut@mo*!1#~$;%HZ6{#H?C_8c2(vt#qyV z(t<3=rmO<>7ZXi*Ci>eTiJlR%K(pD;c1>4bo5q9`mNY4bYIM1pfVhoWBWm?dN-~HL z9BsQ}=M6Ds{5MX?Q-Np*m?-upZs{{F(ZN?@)l%nN#mGs|p_REkhFuX4mm-Z_qxl%N~6Rh7j;rld&vNq1>1WbT_2g>NBG(*cRBS$nJ3?*dKB zbI|EaI?vMDY0N8>XLm71o-l}ZXgI$3k~NwHi*Bm~ovnS7wfS$cF)3_z%vxRP^4d3c_o!}E&gMSQo0-av z^T%#mg$zv^Br@?+f;Gn`=Jx9(H-~Od9l#!ey#v|Qj>I+?_*_=3en>oBdf^5vKjb)U zOkzkxUlK4RFNwN^_E-%ydT`1tsL^PgnLXIn%NrhNUXUZAWD=5MrsL~@AQb#;G-Z4P zC^x^+Qo0@(&*|0K|3)N~3A%L{-5^Q}5_=A~`a=H~h<*kIDa}2!G+#JYj1lJHd*a~( zA8$n2s=)^lVkpnW`|qs@N`KD~wyB#iDFav;4;L)+qMjqlP`ihXEC)-AVNx|qw1Evn zED;Yz|3t7ufF$>a!8&YUis?m6IqFubdbDCphX!JL(bzJW;vE||qzd>#SFMMP&#Yw4 zz*9}WGse(&5c^d(INkdykt@zZQs927AWOmqnF|^4zi+&!hZX4U5;ZVQ%*?I&ZWu!y z==u3a?ew3Kd@ zjWAuFaGu>AIc9cT7d+_d8Vf2_i=~110E63Bng?NtI4Gh3NbcO4S8rOe)&L8gF7nK6 zA9nqr?B{miMAcgt_%<~)Ysy41$fOGjw2$p+?A}wh$Cfa01AS5}ABZ?$dU&NMGHS=(g64#4g*nSOZUHkHnwDs&A2YS3dSB51jQ2 zw3}rhSf(++?ig6N_ns#eG7_cM0h#AOm%8Auw$u?&XXtt9)s9V)Zq_VWiNjJ5ey z%mKmn;BlgQ7E4q<%+Ig`sIbL;kkV0r#ONrsj-&K;#I?H6^QNoM#c*Q&vfn9yw$Tc5TWnmG0XkG0%Hb$Jo0gC_Wl z(5cq_?hKzf{1H~8O4Y`z4_IoT&NBLN#;O0oX1rsNDo(K?S*QTlW=b8|U9R?O>91Gn z2CJrr)^cjOLDQ4$-EQEogV`Tb*W!nHK18}jl@9R9K0dN3d(a#%{EuQuk#Ovp6G)cS-2FOQ3{c1z zB7pbU7dn7`ncd#3efq`Bqf&I*_+knlnhP~&ED#9HijmJ%ii2dPuWDV+pxjZ+jplr+ zGQ7s*Fn}VQbm$#=DO$&SqM7Rjt#26M_%U+$h1P!(1EF<0 z2NpABq@3@VlwCPr-Iuv6{tz3c>hG7SFSa{5NHct{t8eB~@w9r*u+)lBYzo)B( zc=ume4cbutgNz|#ZlRg{Za6!+kkd<()C7d@1Z6Y{bz-@E2W$l+Nc_jTiB$c}*lRY{ zx>P~Lxhm*TDP2EHqIleld83(+fTWtDs5lIEY%@F7JVT#QM5@w%#2GbN9xi*1+PzWd z!ye8iF%9J3Hwd7@re1RqDRl8}C3Oqu{#Jx$_{3K)b`TK&IGJWUqD_&$I0H?HoAFhw z=Xi@X3JcS1l0Be#rVh!EHg=|VQ+&8>X8~{#NahH8Y(DrW+JWhlJx*?1-)*`XwSqt( z;}JmAn3%y0UQ0XB5hFoWQwsFRqiNSw&wzBr|H!TDbJ3U~r4)ZHB|%U+*5DRgwQM$T zTZyZI0TiGR=>8`Hn7I*{}KmCx8>K7{D zNVjZu@pqkxYf-=d*&#EK3jUC3)$s=PA`vm1+dZ^O;tqSzn63*1fWiEt>AZ7|;hni`T92~0%Gamh|vDqG8UON^-90(}8?h?MiN zTv7-o_zS7`>sgcVwvIE^B6)0lHw7XS949Kk1*)fIVjp=a_cAZdfc9I06Ju_ww8?|M#Xa^1c6MohqVRL3j$MQpq zVRvG2_kliAZK%{qE0TA-=?E8 z1)>AMyJfPe^orNY%??QRgGW#Q#=Wl|s7G`l}>iWbo*H-C- zK@iW!lSV3f#waDW1S*)^Ricgr->$eCx7=P|IY_GUVi~S4apjuHF>`@Ev3ua;o>kp8 zPQ0&45{DzU6t;|-FJ1l)+(lKPaV=Sv&2^_J*aX(LmxoVRUY-$a0AAVb96<1v92a`( zu4OZXyCTf4KD7aIgFqFHFz1zB(y+k$>LVJHmCwQ)nI>IYU&9O37X9R@T0@B1k zfIJy`M*jJ?yHuClu2fnz7ha7)%Rlq2aA%ZpP?IEW!qpL-xQp(6hglABcqvBLPO6WUoPt=&qcX2q8h?ckVw zBcuR`yG|YV{{e}r{VkqJDQ7xeL=!%&#b#HGUc_Qi1Q=@wDnJvWr^w>WjuJ>$dk3n; z%aC6D>}HHo6@bo`l_>P$Bpjs+_yMC)mhd|==bYK7-LkZdWnBSh=!z*7ZeSFYuC;lJ zZ%V0#w3dRabHY8Th*dU3guL-S&|c1?Of%rb3o_=<`W_dKr?wZ7O##=RC0wl$L4DS& z-)v|tcqIiqf;UyB4j=iB55=89cnxy4lf*wy*<%40cb&9@o9*lqo0!)&7RDw>&~vX4~rP z*qj+M{z?TY0naI^v62R^ZxvsIzLnMlY|xB48uN!qnjo_#^sc6q6D0(o+v8#{u%;-9u6 zEP>bo3C<9w4Y3N~b86Rfg`G{!GH(m`%+>D0lp1t4Qel_yCI z4atq>+L!T*cgxYHMv)lT7!u~zWGW@x;x+R#UI(qt8gscBBYM^`C{bxoi9S6abrd$- zmN(0+WJfk#VhzM%&#$qnl++8sRX$+*1sg{Z_67>VEiy#1g?Tlts??yL>>#HOZXHl>G~OGTHTC*dL)e$%B;=kq4F$hvrmKCU zn1a^BjBCyqet$EyWXiaV!*q=q7cPgJTtvsm$#DoC~uz4bS>k+TTA+q&7>5SWq%M_!ru~i3x+0?yM&c<771Qxcq>#tfeMq? zys=i?@?wkk5Hrhp_0%ser*S(~g~3EZtr<07{CxUCLoSDp+o4;uM_$h0jP`;e&1np%@wD$XL(TdHj9*PBt|v<>$Z@^ z^iT@UZCKz6d_5ULU##Y%x0m0^Y;*?d$=n~31hB+a#Q;1NU5S9PY94lVkH(dHmNJ)z zk>M76PvS85ychBxn*ySayzKJl>MxVWNGlpC-eoy@@rs0TME3kdq19?}`Cj-#Fyk~{ z94C~mk3##JzHE9wLo`iaLHPq1uk?1UM+YFWFO1ex5*r8k%t`=|b{0^hLu@M^b!)z_ z&9;_b{7o>~77;6GP7La+RglYQiwjnkKmYwa1hglUN_yb;F~uptY%=Fiad&caLrBJx z`71)BO}J@g>lYq_MRrQQkJRUp50DbCCAn-EnFk}Ljvia!N70Z@s)w-_C{-bGqcDm< z(F@d&UM?#FLqac(b@8P?!~MZ(-mb*G@kkpjtB~cPY?d65NcOkc52;>+Rrr@@j8zxm z>Wm@C+!v4kV2xj-JLtx6#oP4R%~QuFVC&~lrT=Hvh9!uTfv)9nR`k;0WzO_WWsk!k zIaxq?KFOM)FL@bwU{X1ZKW#X7qMqd@C}E8h=2@z-&guUOZDRsv;uhmFNa0YzTlQ8; zEea|?OvjAidP#e--NVqZ$PXw+{Pdo^w-y5tZP)8;dj02sBM8|@|Fzsf-tBSB(x~O5 zekoa>%b5sc2XT^r%4Wqu*Qe;-K?==-5R5q|FDG6g@LD~OyLkDh`A;IbFWWijm-jZgn=Nqn4E=8LF+0W9-o`;O_~b zJV8~F^SXB@sFoy|DeiEP%g`+hZ8_%NDYhrayR7|OBe|%Q1(dheYw!iU9%4G-51jblt zPK})`KxAARRYh3Xi9r^0MbXPy#?L?!Yy0Vg*9Q1Q3V)^~mH^*2f#-r_7eTn;Dh50u zB|htVk}sDVn!9wGN&Q;~TNcg~^Qcn3oI>W>%S1TS;pDb&iMPEmIDfMYeHc<6 zY^rV=ZXo{BNZ@f_TMjimm9#!FA6pBXX7j%nnGLdwSMoG; z5KVMuafoxQ6*|Yg`$T>7lM;>EV~H4!tJS0n;4DXeN3g1f?(3hnJBF1=UDq@^`kfB~ zpfUwJTsN2BpWVr5`pAsz35TC@*!&sB0xofe0m+Kq8^7+O6qta4(L{h8&4QMY6e&cp z`1YVc5VN4LnG?7vGBg;=4wwuKQ#>^I)kD7Z<-%LGpiX=Y3?b)V@e>)$n9u33E4Mty ztq*iLv*t3=?;LK>lMkd?DJlHF->Ec2w>sOJKap#1aT>4J2N79sb(E7~>Z4RSRqRyBc z*2Iue3CS09D9I|mgzUjSv%*S6nnqbNBj$?H=fyz;BV0c zv*FzmyjQ#0K?^II+TVGCw4I-1nCHnf#_6SBck)N5inWZUI%gHj3VagoD>BeXW!gjn-dBhDSjWh zZP)=i?>OuNn$KtRW*j3#jCXg9_*v1Qhd{`O`x%|7y3li(E)Hig>kZozyMP$sR8*{p z`4up9b*)!lS%oraY<=b)>tfNTaZB!%6KLO@Mjq)yigfS>jUqD(zC|6$2+zCu2NLs| zk#|ln8K~TSXVJ5Tkzp~4uc&I3?>y}TF=X9og%gWVBkx(P+oMZn2jRdp*Dh%%N+qls z3bKuGXD@yL;D)}cy}i4l&A6V!F0}zc=1$zPCWb?P-(bjKe1?=O?+%9IrzEuIQ=6g& zB;fJe+?PT#*b9hypBHh>KIc#c$(oYnI!29La^AOT@+!t6qcHsff+eT0ABF{J19>s; z#VCjMdMmK(M`;ymmV8V3zsN)r@au5!Oobac^&3b=SkUB z5!q@784&G5%nsP##yYKZAitMBO6I1DU5*M-pX165dyCL{gihi7#UA8v7Ybyv!x@`PVeYFh(^8uY@J*flO~8Hv-JoH##AA zzVNwVbcBmq^%RMt4l+ANt!s818PA&|rahtk220nI9MYGQ%vU0|%mT|h)m63c%M$7( z4hMonnn^`Y=$xKGYHbQqB6n_)c`L}FmlC#6Qp7WbrF#@j`|PN}owk`8#0#BxX3m3} zs9sAjF>n-KB`Z8g#mo8;&#h!~r2MXGQPx!k8U6a+bik#FCT#KVk)l3ojE(Hg+rat~ zoV6f7@DZNdKu}I5UbpH@fR}zdy3Cu0?yCnM;Y|4yEUZG^vyE$)@JSr%bFYv9R5dUM zF@1@*TVYc^(Wy$$5bAKOv^uOn8@NC+d_PBC|vA{bqeT6F! zHFmJni@QLs`1|O^Cy;v^YfL(RnzJaXm_A;tNhGS=CMlCk~z){isH%Kr=SyOdzwBzk*DfEImhv3cmm=4ZiTJ4 zf6Bv^@t;Ky4 z85)j-DA{77TiWsJVJqLy&r@%d9V(ww7Ijbvgpk8Z5OT(@eJ0$-ilWGO2;khQ7hLAW zm;8wn!xyK41@-5HZ^+%M3goL+*>LjA^Qw>R%eXiyH0!$lRADrs2^MD_4m@9v&TDi$nHjy}KUH0i*~E2PV1#Oz6dH!r1WypUmX8Tjd8lG zm#>+#wpF9=u0M)7+%OP)hn!|_d=8!pDQ`MoefX6$5V++0O-WV@si07|p+!1Rb9=B| zg=)0#<*^#9F3T?|f1E+^sFfVO2}7pWINv2crf7Aa@&brw{X`ww(_k*` zgyG@Lf$}G`vQ^6RE`K%WXv~}kXf1!Q9(so&JKX~wAO^hwVM!ogWekUM`lnq%UU`U@ z9X(A3CGRt*{o#!^0Ux6@{{_5^E<6SWov3!`G?w$k$D^XrI(PoZal&O@D6p|_o>BedSmMAD69G!_hYrYWAI`h;i^{j;(v0GqI=lL9bl5_lrm=a zQy16X5#f=ZF5~iGJ3(Z;b=q!pQx_E}F86A2D&@^Vss`?dRm@` zUA!cED9W)_{%GJa0PLeq;vq++c6Rfmk;|5=kesI&j};%g)+{#55;7F@z2TVQeijbE z!Y8>b+sA!PW)8vjPzr#SoJa86V1mYv61f_w-7{EqZLy@TZ!BG4#TE6xKc&E;5|hXp z^^h_5(BnR)4(i?N1UTKm^(E4C|N)q*D?L2yapu6Jm^_+?VM|I1($k*Ufzd#Hho}I*xK+y5H*2QQ!S#rK=K=BQoQ(Iq!top z-!27RrSzU3R%hihDWun3uky;04?Cdb_h#{i!+BC~7jl)N349#bgo+k z^agN`5t89x| zzwIH21K&W}=OSbpj0_6C+Sw!SO-$W`=_G&fIU-%$j3ZOrQc>|dKKaPu!8kIr?9@qXN z=g3oxi>?Z<_)QQWuKB+-dl23;8Khfn7AAJ3=IBRzQ_BRuLEAHXGwjXWaqTZQmSxu) z5tLt!4di#$3$8mLqI{j_9vjivDROcUjOI^O`<{-sgXC0EFqhx}()_?VOa3hz)kSkg z4upr#jOnPpzko@HTJ;7?*%~7P-LnyF*f}j3yr)vz60;>_J5yXd1Md~csvY*qiWTL{ zxNqA#zbX~+9t~YZuKVJ+j?Yd)ysk&lyQnENT^*4Rd?YlTBW;EXpwU=hL>ZIO`|vjI z2+MzP99SV}&>r*|z~=1d>|S5ze#K*_x!*{(ktxqYD(Sd($vQ8^GGgezaZ7h&+~_nL ztnMil6194<1f&Yx1WFh7iv{C3UX$g2;is;GG@^=m%{vbnqYP+E?R>T2@q3oYh7E?%&RKO8 zY661+HM72fv#D@eC!`h;sUO_t7WazV*0EIAuDA{k)Wh&O7bzP1D;yV4I?#*4(9=-C zzamx8xUA!u8NXLP`7=TX@N^)75q9nw3yRVFQOrrf@oQ;zxQpO_5j3)oV3b~WtE37D zC$=xHN3yd%1|V!|;DuUFTq@zT!de>#`e{m=g`AW>RsCx`w>{}ySMC>is7RO%^cSBX z6a~GFBcvemwBh=GU4%Y5$>OnVkTZQ3GrLm+e!J1(bTum`Q$_jw%|@Z0cMNeEXU`dk ze_E2EP^ltOe(%})47kW>AZr@q*$sxZbDLB=6=)mol&M_ho40zM3${~~SiLze5#@VC zf4w7qu= zmQL~T)|NgDWpat#bqDw2hm#~w4U+VAAjQH(E8zgt=!Co2W9#lo9twvg7P)%@^G8t@ zD4yy04v3OXWnL@l1a!)bstq}ze9bk5IjBUQ6}6N>+%L625Gx_(FRzrNOGu%ZkhvdK zc_fqFDl6RjXblI)Fw#a+pNaXO8&{QVKQ@;XIX&;V@$?00COLwzo?m%NHLmMKtB8)o z3psjt8^aR{(O|ph)45YMYRd8-1HFpZ*goDy;A`?0G;vw)3@pbUixrWx-J{>VP8X`SK zEFK&}G-%7|JnH-4XNZuoYlSyRo3=flP2)#h=9w0%_sAHI2|I7F)WYj9Ort@%4huc$ zLVRAe38(rqeEVR+-NzkWW10r@z_4VS|HDF-^j8}y)}PbsH+aqAA7=c3ww z1~!T07zt_G1LX;G5_$fE_&WS+_Hd^VeZFUhHO7`cOQA8Btj#xJa|s!yJAcpMfe&ob%x{c7zBKTtzh zytQ_p*RV-;eCAnK%o12QUW?o(F^G4-J+dBdcpX)vu)|S{U=OgNxycB`%;dl_@+A8% zQCAHdHi-tDa>MAd>)mqWVbldgcRz~M#?whELG+1Qz>A5|wKd7HF zCyXt4a)PZ<^+5Q`%$|j&i(v{wD#_5S7J6n8=xg0ZfZd4BQMt`WEz0U!LljEqC9M@H zlKG**$@-^l-j=McczPQMMkH^Esx0g8c=erK=wVxOBrkloD2Mj)bE2B2$x-iG;X9U$E4#J9X59T2IMkel0+R(@*k@fp&SiMT4nII>2wQ% zR90wMyH$!_F*1f?is@Muyj-q9Ti4~{$#uTd6fn0=ys>~>ur>GNHehu%v|d#qWD+pt zG-OpdKusLs%wLMrwF$Ci&mYW|-;etN(muQDj(2S}@LK zylotSYmpk`BQ)G>Xc18)pdJ5MVy1usfXlPE1-4dAN6h%!OS?)|BTw7rK_7uN%7(WS zE0#JYVJwlNT9~#^u&W!y!YPB8C@L5}TBZhHpWu33O9R)TJr${o=SBJhu?97IWn74z zLSOk%vOrruuk`jPCfp!gr6|nU$1e!ncg-C$PA=qW>y%W4shkZ^hm1bvUy!;;r$Agll{W|QAVQtU@S&M<%wf5|ZV={ChHX37#d z-bLk^IQeE-EIU-g{ybCB0PF>b)-|sG{wM@y7g!R$C%28fbVg`obx)-ReK~dZakR-) zdWPN&f%`S-Vmwog61xg5t!L_c)jzT&e`&+^z_YWlK_=h&hao!_#4fjKwG8?x*UFhI zSPhg3c{NUZ@(v6I#Pdj`i=ndC>wi^38fmq+bKcLndQYu%x7mT1zahf;GUCZ%tZVVQ zt1!-9iG}dQ`R3|oI7!CKXo{wHrV#9%-1M5EnvyGK(xRY9tW;keVy&K!)|2#}@JPF3 ztKit#jQ`u0G6-TKW5Vvn{-bYb8bH>HW+zuPJGkp-e`*Ckwy}T5c|4 zt!iJ*^luDFRjWjn<(Gv+>^$Q-3n31N-ZAmTT*AlH#bu;cPUx_UY)n%NbO90;7*T2; zPcMkWaC4IEr5W9!1dd|_MZ(1Lr&o|702x1H<~A!1{d!_TJ-^AXRo*kG5VUly9ph$1 z*8x&SkT&SeNtb=#&FG*5dh1_?7C-uF3)>SowCv%lI-MsK(0@6ZxW&e`#meCHv7X$|%;j%4 zNK!W&Ey!+^9wvL)7x6!z*T|9re5}GmP}H!|k72y_uKTwec>XWb5$~upfg~mC(iD^~ z8bk#p=&Ax6 zUBNGH;-zxeL8x$@u^}zHnI=}E)ws~iE1N~0mKf)<|D2&$ zO$j&r*)DjBSq!Rgm^k}Xy%t9-mGe6OAWN<+#Y zRur*9H^ljDZcek4_RowU*G8Rpat;&_D#>;BsXbF_H=aTPvWBfn9ZB=QhUHB9h(L>H zIDaWA1HlKU2tF4BKJ%C#0S*dSzoz^ek84k1R|wVsqCQ@$UXY0R7U1C^>GY$rM$*r?WMr4byMsv zbj*%6sLmwBI3KWW{bi#GG)95TJ7jN`NR8+EVnhRfFcFZel&@IJ0@W;Y_8cWUr@w)* zhGZW6Crs$NU8Cq8Y?|#js@hM%pY~bQxPw6H$G7T|V&X1dlM&eUDoxE$MJQ9xoD8O! zzy#z|DrOr&%L%|?EOYh?|bT;hYF?7l4?{Or^u7lMT!$teztJW5udT`TE~A;*8N## zJK+O|3KfjoKWa<+_8G_QY!s(ZU>Q8k`zg9o?TY?ffD8F4Tf+3C;bqn*I1s`QM@*JXoc= zxIfO8mpZeC;p%Evsxnn4_LJQ-nsG^@{@7|m$+@bq*($CuVM2A|PG%;&)n^B*D4lhE zQ9qZ^27XLX%Y5xUE#JN6S5P@xAm9T`2vK_@7GX;T?-_MG=%#8*bdRPHP(Hz1q2!<7 zk9TyP;HxG%D#jF!d`RQjPi(5OMJR2MQw$qV;UudYDJtl*f zgrN5X{|2-GML@d0Y&S@F?1Kpv8!*fQHn{VjHPj9tO|BLE4sv39aYWFT>ck!FCsHB` z$6nyUN)-q`UM@9RIyJG5&G9@KQzdI%?o7?0pZ_fA87gWzo-ojXADK=&((U4Sag?`; zSlvL%k?jlXMfvLbT%U}~bhYJQiAE$17lH+0y5=Ps1|i@RcMN+;nMy2~#Ix_l|0B3K zkx;eEaC*FzSSffU)Tk$xSw`Y_ZLc;SV|STL+7^rb70~0&K1Fdo@|#$1O$iQWS8g2P z0sc-$*aa_ufKa015i8!IKDsD6=L6&1=YeQDX=R;Mz$5%TfE^uQt$#Xnas0jD0nI`R8w&l9i0+uFgwBXQiODf1T^<^4fw(I|0R*__0}(4{N3Y_`pNJFt@W61kQ_b-5a&(BOU4 zQQ0f9T&+Sgb6}>6|4+{A%aIp72jF{8^`!qY+(nBiXRAv|Iqc0#*jI%%1hZLEhAC+U ze=m!$O8GM1H+Z{KDI!??SNYNNo#>NVGB+3(GVy?UBUMnBRGk#I9f9Q)Aqr80Z@LYu z2{B;TLQ{5VyjY(PgH6x+`j7Lko#yQKIB^8Ce-)pf+GLg^|LqLQh&IbWMts89UReKN zOij7R)$q=1Ztri5Srln(G~Y4EntyBbE2^k&DhkZhuBnC$F|1Q+UXm*MlyhQbUak9V zRJ>^`IEyj>uVArI-Qb;)N&o_)>I+rpX`X~{dIT5~#lvqPeUqbjb7a~`LKOO*5|=0C z6%T_Bg~0H|Ve>Q?29x;Bni^t?ZDGDHx+w7#!b2&ehC1M_FC{dzaFZ_L8?w|K7UK%O zP0N&Ge_sy$SbiMovez*_Zp2o3@v3e(oXZSt12N6Q6P@q*2&nU+h1Mi{gX5-ULT54w z5zPkJSU16$MVus)gz_g2mP_7+JD@e)rhUgMfNc@6u6AUjA-J0l6w~hx2oXfm4TP2J zgYfnun1u)tc59p&cYBox9-lKr;b_RgZFOu^%Iqdjx0OKm8q#(A1!Ly+6MA6Sy#e8v zh@+kJv#KS%?$VpteF+7;l~#ro&x^nC%xV24Yal6=gZN|Z2$_kxJ;}vJyTiU}+gk2l z+;u6ga-s?&Ve1;SI+|R!qVYQyRU!b10&;O7G|(V}Icr#BloP`VDQp9sy7!M<2N*A# z{vnigb6Bmx9>69Ii`hjOU3VP;W5bj|Br%p4dTBw2rczr(HP06~a!v%nL)ExiNksjB zf+!uUZxnOJQZr=IDw@N746 zV}8i`E8J&x64b(*$a@v{O=RN6eX~_H>l&S5ctm2xnC5uKi(hhJ1qqoB8;&XXfR8@6 zK4Sx^z?kh{WPfy-%0s>rjYWRPa~TBWruoUV>TN&-&WvIYJtOACZ z|BO!o$!Ee>UQ`7;D8Yp%+d$ zqw;-LPL2FS2&zib+mt`AQ=5al9DY6qvtjmda9cUk zNs*pTG&H=X_jPn30IdbDt+607%~O7h`s;&QP;v`+Q`am{|iAD_O2mJ`&OuUWWP!$Cwz$;V*5AJ>Z;A_11WNQhS zauedVnYj~E?vAhKsP(YxD;;ac`nLexWqxeAyQzY`pmk3Eh;k1P<<37rJ}nWBF9Z?3 zp&)?rataMn{^8u)J)t{>%&K5(tcwl+j;7yCW&&5{Z;#T?U<4h^swgY6#dw5zK;Ho1 zMQupS?{i8b=i)EN(uR=zgr$DL4lpj5Bnb0MT_H>WE&eVla(I%=ziAIAxhcr1x^=9@ z?DfHJh5F~zk>CUPh51g9X-2-qej;>We38zc*Jj`9VB$dRjFS)860s&OuHZ~S3lzA2 zvwhgWB+v=765$@9z(8AYJp-T{863W}C-8P=#v{*HD+!pQ7a%5{3D6@Pffigc{8!i> z9BiE>r2|71jKFTD#^TgFCi0Mmob|@1_C^E0yOa!@{h{H$cM8%I?a7diaQa$`)37Vp zhQ#3r4gk@{C17ADSJ9U{bC)uY1_>R%r1sTFix${~bcK}|Hl26cgDj%u@n>5- z{4qKE!y;MI5WHD6(aRj*u(NOSI&t+K0WAk}F*2t@$B)d@CU69LexjWY-|d<6q>BXV zVH7Q3i@;FzG2?8C3Pp>i5v3&>>>Tiyj`;Gll^x#)*r`W%8{-I&>iy5cDU$xt>~2@w zO+AIv*n!`|KE4v&{q;xl<>GJgd5M)`W0)%bxvB^MIaY@7Sr>vII@D{BbuPYMkuK^R zstxbfu)RF0$86z7Kch`roYki;BeC(M3wfp3{8q|=EFbyBB0Z8s>&@ZHlToNAq=v&? zLG7=trLXBm615$O@ z)xrgI0-OT8HPws9Ub%eEaUfjP&J_lM!!k<1d&uymjfNR;2<&i}r-I19PQ=-NC(OS% zml;d1mc8fv^AIHrGXOLRMK`iCe&RSBSW+0U*!nOgn%1$PM5ba=5eU2)P=W{zp|SHn zh-Wu>7^99XG?u<1m(-1`cN2ND?Plm@yj8M)V>pN-@O*gj|e(WZ?=Px*%mg8;>#eU^t z14v;st`TQ04k*oDN*M&fnJO4Ue6c8AU-nSezqq?z>YMrT0z-!WS*`FzC$aWz5Y$=E zX=CET8ulY%^sYAIm*-Sd%x+yd&Xib-LG?xf$0N{ErHME!B8bCVYSb|pb5xX6pfL9m^-qrC8gSPLo7G%W+0O?q0!mqNzN z-`T40Gs5r<)NnOqickKFyWDrs+tO+pM&==a8=QS&V0^9}coxpKAUSQPeVA|w^oY=z z)U7+kSNu0%ZIk(mtYlS|F(DxWy}wIJz_Xl78;qyyp!us#1MzYD{95C435_!7eu7aU z4^*v%ipr2>`(CGI}{pv@f3d0NZP3An82!DY2Ad;GA3&yUEssa$T(mK0Kr=RcpSg`~^-kVdxFJ z&KeSDXf5lo5w*-ICq;X6;xV%b!NdrnLMtQa_?yAi##XD6T||^L!Czt%vr@Lb4!b8E zF(Da$C@EAIn9r?J3b#WY|7=L+VvPN#JO_b+K3OMlQ9w7)MFS^sV1kzSfum8Qp-RE$ z{n|rRgQFTC#-;yJEYDxLfUhYRgWmA5_^gP+q0f6U3c;bkRWreeuZ@v;3fszvK_4ea zv6pUGF}C6l#Z=UDkCtlA1Uu-}{-wCrZC{S+leY96M2o=_knAR8^+#=>)NI-vA-FR^2^w5!7wU62nPHC}mBd_=LXvV2r`^&>scA%nC)Hn$L zky$Ba(-Q`f>g4&4$M8~OBspT%_m==3^G!y-Yf=a4`Uch(*e8O1CA8J@GlY3w&*CmK z#|Ft~?`5SLp$R3nHP_C=jDnBYLTtJ13-IZkuTp@vrHbvFM{OHb4PiR3m(Xu(m7#t>m#wpOMQ#85~Oq~i!Kjf z0vC92?bn0;4V@-wh3%$OI}C=53)bJP({MwZ#}i^5*_C68;|9b=XA_?&|67<`$Ez(o z8KfF~AbQfBO?jZ+CZip1v%e4%p%l(9rzlQSS!g)X_mwoV8WQ(`s?F+BvZL{@1s-N2myEJ^z7hz^3(D!C1giIi*mlv`;D;spE*uqLZOUaFazOk=-5kH`ZG&A zY=ZdzzswA2ST7{}RPll9rw3TjvnOp>xF3z5qe!JrugYr~M@T~Htm5Q)fm%tEfv}k5 ziOUQ*35eJO3Brm*G7`)f#UAogp#XyRCaNf$3=)nO3dfXi!6OB(w9{{-f?y!)}L~;5yHcayV(k9$te?tJN|NEv{ z#xh5L>!H`{5{bdw#d9ML$oXZk_(f@2k&0<6hzIW$m-IgDw>;F>h5kX z)OndMgQS3Q`wDQ{yF;_Y+!OL5kV}3nEa-VsV!pIm&v%3L%m4*iYU!nPiKyM#J#_1K zzEgQiF;Rb@#7)}HU9XI>g`n6`^py7DAPls5*9L#Ck!rS!We#002kujhD5;rK3jbOK zNacj66Tkdi1C-XVoQX_xan9|1dD`ZV5hdJY(btkx9s@B4Sbq}4`zKjrRmR5pfvO`y zvIIEa14F0D2}2RS`Oilg+OFJ|asw_O_Iqt>2__K;WGT{`Xouwi!M*@jD3Mzz`MCbj zqAq(eJ$44)mD{M|jwLu|Kh4p`i$h{N%V0T^~80(B9xIdaHTCDjH=u% z+(Txp!49xgq1ouyy!bt8#*Cw#EWWt10k2rvzVqFiH#IKQxQPq%$se$#E98wN0O*%W z)nGud!UH+}O36d3CR`eIk4M!B*Y5usuISY$;1i-vwIYoFO+Wa4pYyh6kx7a)+K)c7yh)2dO)OLj@pJg%YE!Wi8#8Y1uYxYLEZ*|<%4ST~PRs5z@B8a#qH0-}<^^+m^wn2=N$_OhYcM$(5zC5bq|*b8*JJ`MeHeV3q3aCjcIAObwaS1^Y)C z4|o070|q=@W!u&24F%76arf@hC^FOn`Zv2nv$**P=TUO5ppEb`D&`e&Q8+M>!L5NJ zn9QVk#JQ7+OF{S#k_zu+CX~F!TknrY0GXAHKzBRVSqK70kjZo$sjinpo;8__r>WKnkgBX7_LDczYU>mQzw z=lNeLe2|F&KN~PCgW^p^rTTuho|X}BKjtP?7Ls9A-$9zt<9buiTd(DTLmaw3s&>Y$ z^@2I;PeGO-(}W|g{5@_42s=DYHv62!qgYx1+cUGUpk(lTliGllU+JqdTTyUfA{#>K zQHdD95f%&;qp0mA%#5NL&eM@TKerd&{-8y!#&hep%;`mSa~%tJ0<~O8*cbQ`OAx8`Mkdo+06geL9-$V5D4kweX^V|B&&?);{{f7(p zsQzEjw(&JAWgSk5L;U+ygp|%wC6D@x2gf@DNv>?ma4a|XQ!-t9}2UY!#@dL^{Y8W!1Ab<}FG(T$l z0ET*fkl8<|Y8*>)BkDl2CGRY!&hAIAn7Jl*=8d2V z=bJ^dfK|`dnLANniFQJg6_abCug%CZ3hIpv80EQ3ND0l}DW%=Q=@_9(n;O|{BJ!7I z3#lEsSKb@BjJcC{ESG}BKlfXOoVs?CRUwC}dR6G^hsNw#bt{O9uWiXi7h+%=i;kzu z5U9D@L|0P%(b!fel5A?GG}AWn&A7;xO3zGpjuNk^vSi38=Roud4jw)U&jGT@%RWVs zZAr2vp8Owdx)KcKDIRpI6n`|>pV5U!SIwuHi5oV}X<>s9p4hKsjt6B}x+&Lw6z0Z` z?4a63pC<38Pn1T1HswG%9~Y104xBa?EbPF^}agrTLFV&NRLD#)2%{F{~AN z;@&OdZOVL#@h9FXuHeit!8m+DjKCvc=HR*_HB(wmd;(*C=cYkB7^=KafWbw@D3K1GCYS_vWVpdr~uAk`#GOC?ygh@ zn@K`-Y^yo{4PY{cZJHf7=XE%ueVOZp-obg=+z)Cy;vudgSM^^Uy;2rw=cWa_5K0V! zij`I!+ z#gF=gov0urEP%m9v)wCFw8%=vhLG_igl$;G^kdcG5m!9H#@yTUiw43cf?i5)V2<~x zZN7Zd$)cAZ+o>&eW&|QcSm---`kW}StX$%G_D_Zx|H*|slqa|HvO2yu7v@2vhQd`1X#h#9alr!XBu9#?X0s!_%sr$dxHB0TX3f5?T6F!;U~nPJn)U?5TEH82&T(CnIRWGfqX?xrjfc||r!$N3O23O=gy0?@xX zOfOgz&0Z2>1_DdbnX5hvh^gkFV#!8FWD2qN4t^VWhj4v6x-W6(6qn2>j4^Q7u890& z3KtLKp)b>QBv@dNk581DJ$K5BZm3E0#5?I@ku5|fu9xV_>BOL5=*pCZo|_82QS&WE zD&X;3CH0g{ z6hhSNsGCU(KJMNO?`p~+TJF3-(bEm4H5uyMl9-@b4O92WB|qR=Lgfmt?zCMgTO9== z{b%hM2+n_Q5X>@4(7pe|=XK-o$c;s`I4fY? zWK6>yI&4?GHc)B$M{zE)Slk_R7rNxk>1A~(D0TD3rV&v}4(p@Eay$7#0y)2t>Maf_ogJM~5U^$TA)ZJcXQY>l+p=~nAQ^oJTv=_NLyfZebzEcL_xy<1|}IS*6~QpQo`)Zjn05p_kQ@X;q=%6q!@GKBVMa^P1JQ(J0&xOQHats& z{+DwyGbfRJ7yy_Y-OxoFk>PK~qfMVCj8W*>m>pKgBB-W@gI+!;Jk_?kAbc*SBst~Z zX9kMsL0%DI`bYg^fCbSSfKF>73E<*MK3qz2Ue}|>yIa@Wm!ao7Yj)8L1jD{$^Ik_% z;}fU1I1(z_*?)Ab|KmYaKSW6c&8K}JQwLW@j6PZwPo(QEw#M^zpp=-hzh5#`G}A~n zZqyOT7*bFZB2q8!B$G9^9*RMzBiifU)qcd%WZq=x(y`r}5{nBfbwf95(`z3SWa14g z$es^h*I6;Z*Ehl-)y8vaj)_Jqc`?bH#KVyMDQywjQc@8w2~CwMh1#I|sO+JlVLF#p zrJMQ*zBCf^k}=3s2wn{Nim3e&&i9~-w}N&KtMeTNlT25L zzh1TfWeE0*1>i?08c*S3t%N-38Cy7pMtk#i18wUyen&}V)CUa8>T10w>J^p_gnqQb zQfM`n{uG)pW!&p#B&!i8WZ-%8Tde;{fx)r8qS-dHb%OI2%~{biSKw9fCMFT#QS^vO z^Wg+Jd&l=W9T%cX4CGj9^Yq>AmV-1wPQ+o()~IWhd+v^)h#ve_CtXzb=5>%)AwhG= zV?3eo$x$=4N*P2g^gCUzcn~0?BO>M1>DmjCXR+UDrQX(Ju~-++WMu3wD7oN6P^CiF z6|M3pR-IYfWv)u6Sr-outrig^Yj5O&uJM4kA_S^BpzYYuXtcr5UM5+{R2Bj zU}=xhR1rW;Kr;w1(%SX|g60#g9lG<@+$eC97m#}XM4Wb{&yZ49r|gPE>cAs2)0Bt* zq$FiZU%kcDxdOT^>f~&TYr58bSAWf!#5lEd8xwWaA#+s2@+Hwysw(G+^GE6|;nMn( zTHfG`l1}%)vp7w>p|N_Vn8K~#Aa{qu;sSf*eE`r|oa<)0bmmc8j|3q&&iLVZXua~D z@ir5lFc#tj?tkCQ6{x&&B#%-x2q43%K{z+NIK|{mzWkYIh8CYj!;P|OaUY>*;B=k5 z&s2fVGYV=TukpKitutm*aHV74TlH&y&KtH?;Q)>fbbZv9v5#+dGu&RngmJ|N<3sgS zF`}!@lhE~(T5jjBqlquJ0Yz9cUt+xLQ1R%wxxa3)4P72Hig>b+RR> z+dl2Zvq(c}JyZUcf6zu&5BHswviYoONc)9U*-q?_{(hVuded%jwiy zTf7oR4iaa+zIk&N#OLjtM)MLAI4aU=KbJx0|HCewwj(pi*Xq+#&14(&$*RaU`pdVl z`WC14lw2BQNc^_MG?H6ZW5{154hdikNR9w5KH{+YX2;M0w3tZT`gpX z5mXJZfZYS3(M7TIL?sqyT$b)i!D@p+ddU$S1V%QNp4bXyk8usJFNPzkM8EX^WwWKR zu~@>Zf}o*!tB7E?o#cG{4~^;@zR{io?mpr7Oh@zV^(tCYC!Rt_@2;l(yxSUS-7oamoBi|%wNiJcqICVp+i4)4^JF46dwY}Vs% ztYj5L<56xkVVD2xuYi zNbZ6rdMfc3X0jxI6BTcsTRni08{uWl;6I?A@`R|K{#a>91BX2`+z5qOr$`cWKE&!j z3H2t7qKf8(gY=JIta6HOzoacp7$*61MnR&yrGJqF0u?uGS`o9!AWNeVEDMUpA-jij z70CCK@4Q{Q6XRIM4GNS`W0*fANnPXEL6EEl6G@}6M~QvSDW^HBU!I8%^Q}wF-Jf&= zm*b}$O@P9x-H-@tD}X66>+ za1XYEC8^N0zx5<>geKzjC>|G;D5}eHMTa%##L;F^oyeX)Lm6%Sb+X4wgk3a>22;me zBlhu5a_m8}>CJ=hJFgMj2X&rSmt;u{cqPqj9>}JepLuJOb-EC=3NiRMEUf{Vf2hB& z%@FMQ5!K(;Mg)adHhGuwouIeKcc)r-|IN0bD1(&Z9ekcf@13VUhf>V~a~?sN#yE7y zG+yW9Gqf%J%jb~EL1OcmRLa9e%o5D^A4j~+J`nWw=}}`VA%j}CgndziCwX~>@p0}w z41lRNFZRD*JaEUJ1P$>WNB0?q5#L-s0_I=X|I%`%vOq9VwR-Zvku%C{eQ;XNe?QP0 zJ|5@Agy2g^8s1%bS7GM$xytf%ksHcCA%QkKkLBT62ZX>pm#c4#n{_E)Cb{|f9IEcg=+iX|HZd%NzeN@1ZikX_(y#q7D447m0Tn0*n zdc%%$-S1A15?Q2n;qMy8!w#uM(3IVWlDmW@S!g1i(hO!#ufV4mL8)N2J|$t%3DZAA)3rK*nubhnZM2r-(JDBV$CGA32C9wLV%I%5E9BvKAO6zXkS_ zHdyswej+Dyf5=qqd|$v~Ygm%`LYG{FFSDUMHi~RT#Inl&ci(U}UgMdCS)&Dz+n=3T(?0Z3 z5-S-IUGvu_|O z*pgmkRqa1&jT0T>0gj|(XPrpIvpCb6`~PuMLzwljD)nA%%kAyd#J-Re%4WnP8_~^q zoEb`Wh!*cWy6Y_fWj^OmBy1z^7X9^@Mn}_-)II}?i_NUHo)33KxeIFUT{kfrDIt%i zeaZl>vJW=3U$tGI)@_Wpd9%6W&-*cHA2!@YDEr1N5!*GVX|NtC72j25F;6?PN5Rzb z5FT&PLadM3ZhntbkjLONhNErRSgV|)|3K!7utSvu%UQEo9rx3p4DgUS=Mc2zJk_Bj z@m4~CS2Irq{tZ^1C?_JIehvQz3`_OS>dXkkuEnf2~S_5?kxAj7X)^;XZO6&^O9 zdh)eHDH;PZ1B6<5L{0^*6Ewwj3*;Pxi2bL`L2$A9Ef6eZmyyd1F0_CYEJ%HoG72to z-F2VJP(O@CyVF@A4|A-Zaw?-fXzOO`K-kypzv01gWgIj7F-P`fw+-cm=xQ5mqdm;`S5LBvOVo2l2D;|u8 z*wcS|2-^!>BF*T4ylPSpYiUSbZG-lOSLvQd%?xqFE0>vtIiX%nhU38>GtOph&qL|X zL@Es?(xc?y2`+AEFnDng3>_d6rOeW1sJU3NlyM0@M)oj5Ku5ejxJ4=PoB4X0WgD1h zS0wt|&t-GO&E8i^K9qe|fSMPU7|3pGuG`i|=wr!kLLe~5-LRn8?avn2<7PJ(WHIbY zlOQ)~fp|Wju&j!+LE=n-byqq0ca>ZGPBss1C;fj?H=98S?bY)plGlYDx14iv1>LM^ zdC7D*-^})k(U>Th`-Qf7T#}`it3xm3>R%H3CGA@BFP; zbkg&jneKdsyr5E}uW^z9K8Di@+YvJZPdBMbtmBdG%>@q=$gvv8pA|dY(rDqcxOgu= z2&YEYnYttq2Hm6~%W2e|J5#_CHQ8`Gs0M67c36=xojCFMx5BnlvtJO2NI5U4AX2)-7s;G{^*S*+hqO{xFyiO$t_A%$#j12A19q2w zXkfwPWXTW35cSr)i9Nz;E-7h)uZ?VV=aT_{dYfI;?66^ubW1FKTAz^QqfTOPsivoe zmB<8v?Xbe`89S!$kthZvKt<(Vx-`tz{ivr`ctsT9U zUyH}kn@2SRfuC5>5Km3`qHJxN7B-(I5vKqwK5%6v%9m`73#d1STX=E>prgm9sf&3T zff4!W;s`J-IA_S*y=j6ssZ&8tah9QJ{FmLEgvbN&l>OUx4g{+@NeQa4sjza0Q6=)g zGjk4+jGD3<18H`r1u;~>K~5m}D~aKj40+Y~tu%RW9v?$a$bRppkZOZC{uT}ZPE6H= zgW8ydKMPUfM5&OXc^{)b$R^0{5mF|xbB}IE^?(WCVy3H+bMhX8Nr%o)z{DTd6WPjZX^qhQAt(LDXyihd&JL(Bf*f+) zAv9^4tko0ez*tC(th(h|`NHO=tLC zKBUl$Jnb;h_|N)Ur$rt{SLZHKw;Aj%WCb`Gyq&=V5&r#5u5MlY!B;qM0DF zy6uS+52?0mKKhd!`k&e*10wk&o$8$as(J5w$2_diE;7O-V{|Q@V`y+WGlZE!uF_R^ zmkS<)yfr>^wSxfgMpV8!B&lPvOW@L>6$^~JVg*=@O&+mR`w(>lxB8HMPZ^7uJ1Jx<6wvcsH8D#MK( z75^^n`6S+~*^e9>oL?u5qSc*K5cvkI4Lc6RtCX`1ie8)u^jMEukL(sFjSGP3<>9E* zc}(hg*@`7u#IFbRq+8CgpS8Fu3oLQSp4LvuHqn%6fwO}K#)1fpb7;X%Cs|wxTqihr z$?3Zc&+~yV>!SK~SGyNkI$3!3cZjJ@&l&yL1q@W2#O#yUP^uiB73kJl8#BFIGV&aY&{`OwWJ~)v?qMS6Z<+Bmd^ncZN`!R9n?ZkY-7m>^7x-^Ef?hn~ z^MbItHC9PkpU)4TdW<3TXxvuuvNR@J63p7P@>Z1A64SeJqXv`>s0GL__ZxArX#FRs z>pkU}MRzU0xUOUDKUGn<#o+8?AeZ7w<|g5_OjWeBASO2s#Mq}o0hu_-7cQB1WO9tY zxufqHybEGe24Wf53v6;lRP*@@E_%c=K3bDJ>q76u{^a0w@fLN&n$M$@I{!OZtZ+Hi zhQ*<3eU;a*RLi;|I%284sdPt3f|j^5m%!P~>0DXuuQxuzI%xp`)6f25sTG|^NpN0& zH$AtyIm<2I3uiC1fMrVbZYYy(>$oSz^5)pe1J{S1*LYeoT^G)8BF6rV_Vw2x-bJU{ zA{<@bdhEQHc!+s5^`QZPkC3BwnmwnA*mQ;u5NDw3_IalIzjXnBJ@ns=LkpXU?<<%4 zl1!@AFwqLLOMWz?sid@c)PZjD}567 z8^{Fw?|RVX%sgq%sr&&Gi#tsrUJs5Y%pU@w3ZE29XYsW>?Q4mGO-cw>M{!&T^}E~h z4YQAOE0BC0Tra$fKq#f!B(M`Apv^`3 zE4;$qt{8kdqiM1V>8gs1gXx~SrOJabIUikk6F{~ilvI3T-bRbYtT^#X)+L4~y%^It zYivA)3rPa=Kr3TVXFPs9=2kG_ghYhOnzXNg{8E0o7{ok2RQu~OC>;M&&C8@2J3Mr% z7U0DuiB(7#p!|Zum}D6Fy#nq_D4^7XUKO#D;I~K}*vK)`qd@{lJnQ(^s2bevBOd#ho<^t*W}N5%4(|jqvIqyOO#P5seYjs`~C%)$mYjUa3Y1UJAueXI7`J7F{W^kJHKJL0vAsmE28-S1(h;f+LKA=kVa*7o7)Xft|AZHuL0;mn8K*9 zG$k(uKcfJ`F27$J1+{49nqW6zX7Y`LVxMsOWRnyecR@|p4cQ{pfvK?|R}0N(O&Or{ ztt(IGRmZ3RmfHBPwOC1JvfNLpNup83#wd~o$B&8V3z}Uv?vD9k@HSA872J#BEyUDx zW+<%Wt_{ZqgjKR%rzX4L);3oCY(_Evd_&o^n>!Q!JsP9k$=fM)cmeYVRP`!=#S{Tg z6E0r#Hy00*-zzzp3d#sx_JBYpKU0&&(b~WYdz7>VL*~(?dBz>Y zA@K@X2CAh+KfqrH{I{y(VK&oiZ_R!vKBkT9~P@QzPAU2cD@+`7cg?Hh=Wuh{9HABh{@ zNlLIf`dKM1zxDm7O?Vtoy~jF}Q!+nx0=68RX=G#mKS|NH7==5Vo9K2zm|Djd7P#Wc z4E}J!^zvR6v&m7lGVyU%p$J8Kj zy5=JAv;oKsxwy_o7h_z#5qo!a(i-m7!7r*VU02GGz&#W@yHR(wfO<0jr>WYa5PrVE zy(=8l9Jw=_w`TtHQbNDh3_33oeUgR!db=v=I0_(gUA$iQFIuji^=}z*ick5SO3T@A zp-Y8^|DtgWurO+)pz}$t>O!sZCzX+6QN8wg!0%oK~$q$niv0&^gQwHq%;xLLSRV$TPXn}U0gMl~I^&>|mx zGbU-oYOcd6v+@*rm1FmI_FO zNfy0nx)D3WAHn98N6X_Xb8D5vLiOyko{a%23^CARvU$PYnuMZm^Y()UQhf#QMITjT znF|pbC^S?OhUAPn{UbphyQws;SS9a3y~EhbmoeQXV)f!!yW1IP(ut?tb*X{VILAq4 z_W&HCOduuY{XUV_*(Lk^6ICgTZK^PC6ge)zkL^rqpGdBx=%3miI z8HgUWf`_Z*QeEw&w5oNc=9 zsMQa3Hm!RSQu_m7WiUl-R4nG_1CfHMQpev2O^(XBe;S`JIY}{U;z;Z}IEnvrf}1cR>hF+dKs7d&_rEpeWvr+A0~+ zNXmG|3BALSG*&dK-83@kaG1(Jp<^M;iU#KO5jd!|l(`>`Wj&|EA=UCSEiGd#nlBWH zwX{*Il~{|7gFKrkbB3Yhl$NzC0*?gE_ol3eot+c6XT}BCLce$y#u4&!j~y?Y-d-6J z+3^RZb>u#Mq1oX6+Wm+d%ylc^Pk(0rSdnVdHv@_CWZHPv&-yD`l0$%m_xrq1)b*{q zq(EM?vrNe5uO=FMr5Rt(8}wpane)z1?nob*?Zd>|3-Zc%`$`r{d(zx%Y?W+c32)9G zniKxtj+ozV%&WzX|K}lxY=VmjoAY~&gbo{=cPUvPvGMoUFhP=jJt6_)#ysx5VgT=Scx#s#Mz1snpI^75+490=F@y=asxBw|Y*1t@G-HPx|`LAtzTB$WW z)0@cav(a{k*-fJVD)RctB&F5mp#S=98pP11_ozkXj&Ai20*b9tt=N4NVB6%P`t&*Rh0|j zJEJ2u=n%7=AvWQkA*_wEvboe7G2cdnq24}3Ax+%}bj>qJ3vvgv{9VLVCAL9g5#9)6 zM%=|X6iu0I@NV`1<+a5Dv>lci6H~IqVT(l0nBvHMzx8sk0;Y^-DmiEu4a4(Pcrgc9 zv5BbE01jLB3o3T88elWBe4R@)>f5?^0w2O&7^e^TH2|G;5*ZXCp8;x9A?B90kM;a7kbcxu97jN{^Ye(p0eL(~DsBHphJRJ*J9%ZM8 zn8jJMAh_DQRcuWdG;|M(92Ir$*dY}sbCl#KjV9>YJV;sl)^ zG1qI?+r=FIO!eV+H?&CB_rn4EO;_vj_rZiCfjT&f&U9v@aO)*5jC`Gt@kzo_3xiTh z5pYOt$BjDNkzS*1yFsNZT9;;phQdP22Q9ZJzXc;-yX~yuYxXNgFW+~^x)TJSg$*}i zbm%v1;eLpwk&8zWgf?1A;3o!%{cDJG4Lg`ONx%eXL+BefLvWL1Q4xBS{`5`CNHiGC zhDkVQg3PcF1vbqR9Q1Ryzx$??ZI;Ml-bLM!frj&5RP9b@8*GJe!ihBC$j_C>97oAg zJcc8DIlw9{zI5$2nG_GqxzA+3L^6*KYB}NQM29K_&p-!_>`zTn`1$Sj;9`2;cD6Pc zhx)o-^at`IO~PrKhCfNUuaFy(oPQWize-DhVT|5w$*<7r72s5d%_Ku|ERzGZO%40J z9UMw|3V(+dKF6dM1#Nh(#xgT4c6{mg zJC)liCG1PjHxO&KTi#L)*4nsJf^6eh{DldIw%6af-_W92NOxJl%5^GH>M(QnuE`qJ z8RGaBqEE}j+x4#=THHV#ZY}^7CXx_+D~Me|i{O;7Hi(ui#Ak`{q@7z1R!~y)DYK!~ zep7m|ptV-twgER;na;QOqJ$cF{Odh_<{yYfkhY(MMeG40UnDb|5%4^^gz>G9kZKj7 z!eU~*-)J2&Sqq`Qvt&g^0dd)220^NK&!HNDW>|7NV*H7W1+q6m=>8r?!AyA~+D>n^8qfmk_9LGi+ziu9qJCHD3+11&gAMtOXYdZ}Zwc|&S|@$mIICnCQDnBT_DXUj z!g>$<;0%3s;&mu&r=Xz!9fr3XscC93ngTw=y9ISm%&0sID*GdqrH9Kp#cskNjvBrl zr_`g&do+DOIvO5P%PPb`-17t4I)D1HU4ksq@P#Nh^FN~Z!m@s9L*8$t|y_)(aU@nT*a>I@0kZjKQ5pxun0hLjZuHc7YMgcbn$kYF^l2p%79ZAq2 zVsPs?-IMmLoZ6>KmR%es{>_xlJ;lnJ9=vrDmpnsJzOrtBV;eHm_Byw`Lw=rAKTzR(_O-{12z0j#xBA81D(oRj z!ufMOVU+nc<~Corm`V2MD?g`Li;G#v4Z71Z<4?z0NKGM@{JG(@z%^6mi&uzTg;#S* ziUl%XGw{0?_;vdO5q_JNAUV;T-mOzQf_KbzYh|hxGpYud;bh6|5NZHrR~kF}uN4%a zi@p|@$8!5b&8`zZT3+Cdo5er@G&EP~dU#ZtJc(B5icsqY(T#f%IOV2i9omD5Rky0B zYWJ_5C=7pwwu=ewo63lzL;VE^?9>aehrEq131YBCEIEm>+{0t7RqLH(u5j>!w58hu zM^Va;Fu#gO#>MJe4;Zz$(EAh8tQg`b2ScQJCL~V$y{W1 zg%j(ob&32__9iTVnD-OlA}h*T;VHAPKD}_Oq>dgm7;?fsR+0pTrMUd_0|scX!OwZ# z-nr&ngu%~(2mO}^38kilK~A2D1(_jP&!mJa$)poqmfrJLn@g|TE`&cliWCLAi`^Ns zm~YFFqCl&dl2sjrMX7Tcgf*G`n5mBrXa3NF7FEc~mUlt{y6#4u$?AnAbz60c*wuops(SXcJjzrmG=U~-HV5PU?i!`}AM3ur#w{6n&iPCx zzZ%F;0A@578JRlts?DK!2n=W+uy-#nQ03DO4(qiQ_LaGqFw|~ zxExD%q#cf4_7M%RpWRAhg?>_%&*`sc|a2dZR)! zFaDF&$Tef}Q5Ii_d3j&jg`J3$-vYq!VNwT+kglqOc_xKOne?y5G%Sq83jHs8Y58_% z^3uv(y&`e@w%6d_j_YPxd-uJ|cWwX`p-(1+)2>#g|}?h!pr?lb@lNGdb#^lw}4hAWQSV35ne0-2|82z zw)V4DVOF-I8;gv_nl(_7b%12M#0azPB?dBM*A=VDq$00Xg$Y&9#=-lbt}Dn->xyrc zg2^gtbWnSki9Cm6+Yswyl~k+87?EInPizfb%yFU+iaq56NJTeHI7vySxWU1{4`E5? z1BpP#RBSn7!EGdE8+dGaFO@~somQ7K`XDftgB#t(gl}(`p0L&D&ilNS3Hh53PwFlo zZtWaYcERzeUpbQ(F8Pg{M z^PYdqevN#>%CxY4E(w^WB#u)>7FwEqpdjTfx%Iq!R^^U^t+f+IEEg$oP4QI?is@%U zl*@bFl||}pFdhzH=0di9u;xhZjRtCUcvX==Mm#KGXTm$2FCgf*LzWrPKA2+@#q^|g zwdV>M-chMHqun0p@^YjKhU7Ng2DA32gX`_TFSp=eu&Y~}R0{g8Af1i06d)LYPwhBn zeIk$$OAamMT7}Qd8ZVC1Xs)&@SZ%)Cx${QRF_x4+Puf^6!LVS)La?mJ5`_q}1VBpA z-CaZ?>-mVa-W?PX-0TP9b9a*VcTe2eon;V*>({bxIa}>NBYukp*FYfY0$jjq{^qE+ zdzCZ%5u>hQSe{8xqK5%PoK8I_fu4hVC?)T7y8yPILq8WlAK6j+i4X!5{Vd z`xY;a>j;Yc3tfmS7nJ$U(N{EmXO`J+yY%v#a%3_q4n-Ffrf7!eN)Sh9iuU}T#)29T z9+1y_9yo>-qi$8}m4JuJBFC%G+(Tv1P?%;8f7b##a2eFR!_GhR@&QI`pEUQ zr$9CAt`=`i!S6ZMC!})E->^`2{s$b}L8|XOQD;=d7{#nu3NibL5<=8fF?HOdr*`vt zm9yEh#$T|zC!_(s{Re{(yTxT-h;>pUEVwr}R4IptpZ39;)of)I;@7Y?k63aG06%wW zYK~%j*uI6?!ZDiaR~c<7@0f#Qa7-%WTCGimJ8S6Bq1n@&As0@kG?oMT6x1!9>|^sM}NWXGNNB50{5glJ{d&pMx%lTqi4J_EAjhSgvZ4b>@h5zTn_ zl1(0Kh{E9Ts!uni_#-D}7No{>8Db>5@MZD9VLT*A&7_=J1eQi?NBCb<7es!ON_SQH zaQY||lO9Dj(1z(Yl0`JfrbfE(M$E~BclI<|V!bQoTO2h#M8#6?$*S(3c|}I z+nS8Is*o9Q#N`ZPV=eir8$S*W1-cl+rcnY{|%@K4bjT$*7$VV49P4|p2DITDZ!%>m#^a7!3jsD8H5N>IjMI2Npk< zG@PhqY=aR%HFD<%0S^;`lY4AD{5ZewNRk$m3YXy?C-)k}Kk+(bZ0QEjw>1?{zZPb2X_?d&F??PZr#SR>@%#C;=x)W#rB!NT>esHN+|9z3*PHtC|6Dnc@>#zIX4rj2)? z=Pq4b?3<)duo;3VP2|+UpTKx^#rAFugIXmjbn{m!viC{?u+(&XJ-S3m*QgOSdu{2l z`32JtzKlb=tLQK$U}g;)puxL71%_-q?$e8;IN$Jhxtkqbsgd9eO}CNx|E#A=kZnaK zD~IljL3v@_;^L&3eHru4#$iDv3AT~lFRFRt>YltmH@K{Z>IVF^eO0Vot`&#GNGp6` z<{i_hbb!8Q^W)cYA(3vH($2UVC2m+Ud)AE2f9-_rCCx%5OekSrDPu~%6BUOa6c(<2 zshm2%pi~77BH^$viGg71G=|&is>-H1#p55Yk=F5>J(}5smHVg@_qIAM3iiWiNK}*Z zM)T>gNA}D=R)JjRli|l;g7q{+nZDweC3_j4$`rx5!_Y9@ha=in5-mdzfB@$9+q7#j%fjhLBMT;A^*%zasQTs=|u= zUD5|09T>8m@k{-Iga*Eh0_eec@67P70FfpvLwMOrneVhcg`*E5FO_y zzXik?E#Ed#9fmrZD*=fRsIr?zEUyQ|ayL;BHO}c4J!{tJyiI2{AQ?b_j8$?_U?VpP zj}5~SLqwb>1Emp8X7;j2sIU}yi8BC6NOmq74ncssCP3+%uR@yBvGzxd!LmU}yipxU zVu)uTgf%k>R-4d)(_*rrSUtLlwMql2KwVyUh>`h(UMv%y{tMB-P!i~)qq7Q?fdoJR z=gQsGpD8I$ncl%=QvgupaY4TJ!Gwyxn2H1eMu{tX9h``(# zf$p`6%3N^0e$8?(i}jdpPRA{so_zq=kh70z&}EeS)KfJ?g2(dwn+ z0r-}p5r`W(FM_;x%A=Xml8(vBg@6WwkYAxzP%I)0tWCpXH8jfXC?E>vE|X(>Kb8{X zY&RXRkYy9#d-F1x1P9klbKZYJ!!|Q*H1$69zlHri$=M2C-j}10e!sQ=^#{S~vT&Iu zeN`|iAQ?CG>8l*+2H?)^3IG!7OND!F>P38hmsGuS1ZTG6;IfRS!y0-h_leyuu6X)Q zXpxE1j?jpidJj4aoZL%>jc}%QvBD z{;K8fdhUjf`ZYeME7|>8zq=%*%#$Ih|1*h4cxE+60a$A zd7~o4{~O4#+K;*by*LlE#!s4_3ruHU#mB$g1-P48`benf4Hxu86Oz&)AtL5TvQI0w zYGcKnY~|P?de#vd+!&oPr`^<9J`SE`OcTCVPsBV2BdOjptxp6^B7Tv{BF zhKd-rQ9V~4WB(>0Hc|V#RAAT2+=a?j#wmHFpTDHIqO3Hy2VI1Aj`v0ME%ra~44SIl zr(K7X4EMB?zd~CwJ1qRgw&nz9M853lk%s$unQLJ#R_ya`AH@{mMya8#=GePS?$Cbo z#T5Z}k<|`CO4byJ|HVB^Mu*ouEkr?Ze+&Ckt&!Ym@$)_j772)FmVfd34$txX;z8m3 z5+7({INzw|K2z`WHHV?FtyC!8X+pfdDJe4F06|hL=3O{n0nvj>g-P0n;{ZO1&9qyA zo5YOkan(kf-u(6Ri?eL1s)Y7r!v?#l&C|O^$RTs%x1(9Kc>wrk2I*6BnAf@s*h5B3 zXU(?JoBK;_=(pBu*|!>BdD}>P^^@;>tC2K(ebK?{(n;~7tJ0cY#(H`g@Y71lRrl@R z&32lyMoTnINfQ&Y$DYu+7ap&jg&m-p0mgRCs!dvViTYfd2VN)~))&~8zb)39^}?=J zU#*<*th+66){Xx|;G6zHy|vC+%-tYn@6@G~UJA68l}g%YILcxH zy@vc?z@ava-QE>-QF)r9(@=<>pU0(V+4@O^pzA&PF5>r>84H-GeVQGGU2Fx~dDBK$ z9c=C1Cl-qf+Dd@&*xogPdaET3yVR#q+!BC({V{|E1+p3eYxVF`=w79#?Emq@WUiM~ z#0gr@gH$C5P0Qb4P?V2cakeIc6p2-o_^{8TIY$SN_Gusr>hEIX;M|+ojM23tr8n7s z9P7yWu~{s5WL5r}TrDDeI(S`dc>$g{cW{3bu8nc!3)tUAa)t@L($=gw%=a*v2>Kw>7oXI?e%p7&| zc+&Wfqqnt*m!!a1i@6Q8M!o-gg{~G^s61~ttzYL1#t*AZalC;BhJ?Y|va~ zjnY-87cI_PMo+*7n1akWMaqzp(O}pJsCI56w)exMYB!Sg)Yj^eN9A4O(hH z>mxK<1jI6$LIsqIG<_Hu{B(W$4SbRK#_sNd0j=^#J6s?BtgZ^Kt3+ zJm{${LO{ZPADow$%o$1J&=mCozv`9#GCc^-OQk@AxWt1Q+F;`~$?+>pI`I0M8bVok zDH_-Y*IT2Fw8=#7`LV@lBNV%6vUVV#9?7Nz5cf=MN2xZC<*jOv>Px$U_Xw8#t4H}&RXU-0l2 z*r7;&IwZM-z!Ln=_#@|cl=P-j{%FgL(nZji`+*w31sq;9@aD9b`rDHIcq>5jOnT1!Lp7;P=1sS| zoO2hRFp_}ZP&erL?^WBbP0v1%UzH1^9t(iH)r~Q`*z5*DdV2v>H-Um$YDM?e#>f*Q zs;2fJ_yLoxw{R|I?KbLR`JaoEb^3t6dHM`NKK!~Y?vj58ppics4m?|}7vdq$+0Ze9 z1WD|h!^%od3F0pNYw+!ds&mSI^ zoQN*Iszk9DIu(eY@?z-jL;3N6EsNp4low^+O08x;s)u7e7s8z zOSS!j3u+LGMvs`@eqNNgr_gff<_NMf9yoiZ8WQ=>1=GG?Yh+pCaf)5Vtiz!|mDp1s zwEhhhfnhs0PJ&~G0(%Ku`E6Kk=bGzCk7TIenux6*Ksy*$53GEvmBe!Pm0p2!yX$3U z%f>S!4{ZHem3m#$d!cQd39SnxbDlS`ZxH7=BR@iUqQ{bH7>Ecu+}g2MeN{Hc1mfCJ z8EQvLtVY+#A7fgC!B4mZa~X4Vu8qd6db}1P4R})V7JX9$&duDTxeZ`v;FMGe7-GuD z0p*a$y@-U5eA15k9zheo8z3TqibBpZADRr*314D-e;^TloK2`jqrW7FJ(`yGLIyh^ zVR9@2@fz#|l3o!aUTJh6PPX;;iGqOEslACtQEK4thBy%Vr-PiYXX)x?2UJ<5jSD<@%Q|_^sjghYE)`wIOQ9j!H|k{f>HTGj^CV3rLdSHaq(-R^JUfz!v@KxWauZT<6vrDGPS z{YtoEOlDBkxxaQD2wHtpPfLwMC$PKd`dL&e*F|(6e|is=F22c|14tL4!j+QtE7rtbb&(_YOUe?i|v`>+TpByI+FWZWhKfJQLFS1qrBOi-kW_x6wxq=aC$H1m>wH zcnCIUtafw00>u@|$CaYY10mNNbkd*e;vAq$Y}0ZD-g5VCMCfVkN+DJV4p{~`tSZgR z?<6^Sr|@#Hu`?M0k6phdwK`$b;@!hhAue9 zEx}Oo@v5Jc@y9T8y^z3dzp-ad?Bz*rr}%TnH-7!Y(Bhvh$tG`lZCnpuS4!r_j$7cl2NnWURh zo+koq4PwY*996aT9c8t0bWOr_TOkF8pXjoSR59be^Y^)-8E>-;GAG&s{4Nuj)7N@` z-1#opkWrlzWWD|W_|#v8vqpLpm3nK`n}`dA_C3ueoU6jlOp1CogA59KznRW|aX$Zs zrCZ@ zA^#ds0E_>zZC;A&RA{CQF>_=JQ%`j9^1ki4C>Zs2vrC&d9@)&PZv8| zB{amA932?cyOdH@GwG701U5r!D>Y|-KMRQ4!FM#V2J~+<6h@-hoj}WrG)nOW$CVAFy44N9A0)QuQVyMxQ0CBS0RZM_}e9) zg{@#-;6-Aa+AP6aW*XHz{^{~=TA}BQqg>e$Q+njZ3bPhNUP$?SS<6oQ1JUGcx;9mQ z)9y_L1dQ86l#b)E{jBK3xbbPwow=FnU;2#BRvv~MZ9zkdBl0fqD+`_&ygcD+ToEGU zpB1Cv0faLxah%Y@BxZYqb42u`N>lvZ*<1*>h16^gQ~5mnum(shQ=2*oKs^+7DCOA> zuME{bBN0yr&5twB+Z!`Qg}{sa`#=CsQai(QUkHiXQ(#`a^bLpL8!_z2a>ICP(xeCZ zS%uVM^*eXj$ibt@*2XnJApR=D^BtLxHH)?t)}nZ&s*din!)htB6n7l1f8Ao}Oueal z((@8%AqS?@SSr8id`fKO$U#=2NDHw6d||40A?j+qKjj@o5i_J}Ymnfw z2BVG)SKW@leb+TxG;@G=h^};5?lv9^zOt>d_n+4&^x4-7ZB7yqxAYHHX?9V-4>n>0 z2sgd!w`_(pLF_+3_E=D$7ZO_pBC#Q*>MO#=BlcB}=-sGLBtUd`?FM{Ho52tiwhTs8 zY2Wn4VAEs9t<+w8X_Njj{8fd7*A;tm_=QD)_nvQn9KMt=EUgwVTMPHQ^p0R(vvd}9 zB~KXYAwB^J*h}5!G$2g*Qfu+6C){y0JKAH49=L(KU>%(Qnva z;-W1uy~6Y}QPHC;v^Viyju!$qp)`}9z*%wxZ)7H!a#e`_&!9IpWOt$YraE~>J>mD0 z`ACxflujM|plbk9WTetqT5`)EL&lrS=l<=dRQC>Sn$<`1FvUoTkSkAFeKEsL>gbNg`2+?TamJER{q~4vTH2LEerSFUM0N3p@0rO6^*HxcWYPB z;_jwg^u`1_-L97HV9PLZ+fyi9a|vkSIikJ^x=Wz6k7LuRhmWPd_<#zlIKN4DYxOpv zAE(Lox)>Y4p939O-DQl>-<@$Cv}e<&21(Xk8X|84DXQX`QEqPeqXm>YMndv8IunZP zfC8Rw?|Y|@yYE2WLRK&Fu3X3%==1KX#lc82zd^h0c)bTZMMnl5uw*>0)lPQZw?y}i zVcQ=C?}MP$X)+c4zLzAK;*@Qt-of`HM)cD7mDoWwf!*V%U;BB+))sBSN#zob*(HGs z5h|McO6bfwAVb*ABG^^NWOlAbwcxlWWZLY(6z-&qd*Hfu1pSYvSfdpb3yoLOc3j`` zOBsy%$CZDTW_BiiL&?B(f;7E09gW8X3tohzSpl@zmaKgUVmw^H|apbP2 zo`H>B5{X}?N@yP45ycVaxxr3e{LKY|vpai;1QZ}|+!O7f6XM$SzxD&SYXbD_80)tO zA-zJ6l#4gfpT6N9R9ULeJoFT$I8Es4Wp9@c=a3(>SRUIY=5iOR0e!y^k8#Cu6D~Ic z)lPfUsO^^#DYjqZN77qqTT)zibSbDAGWnLA{e041b0n7tYmLp{+gu|8SOi@Y$K<*G zSe{ra;^{C%kvSm;-^dcg^ZTu1P~cgBR3%V*#GHm2UF^R16*(I8d4;yH8?j2`SGC#; z6xec?yNee#zWrI9JyM}1EJ}E0Frl*1T28R_Zxe{3?9GA^c`(ll*y%L$z=<0d&hQUSNs={6Jy+7f%yOmTshn?D#|mHRLd;^hOAx zDPYEaS?Tf^KS~>+mhdRdQ>#A*?E2QXPK+%l&crG*_ZE9w%BUtz5Rf|v9ziyp#a-}F z8qlJ#loU_+5Suua#c2&^VsPDA6j$gr1=?nOQ)Lr0pL-CAg&r4Trg{wD!i7{7k!l$1 zWhzYs!I>g+mZVAlWX}U1PwId1k&hc1yY%Xofn3D2GVsQBk(uy-^a9wB@f1lZx7I4` z=&@~q4kxW#PX&|**jXXqlAW8Zf7h-Rfviy9IXd^Zn~JAS%KwWq;)bt{+e#Y(>J!46 zNAHKSIXuQ+bw>4IH+%eC46i*dd7i>??^?)h`po?^mGJT(QzrS{39pv-MlYI*9f;>+ zsM-FVvLh7gJTlJaU}E~XRJAF$>3PzgX|+3$O7bXOGAwD$_Xw-*0q`82P$ilxzVY2A zBEnHGv<0gpI+N@-W-#>4 zMpnvxLPgddHt`}agsQoIzsk^s!^_EnXrLs*H61UljIy*hl@@h>Jlm68?>H71{g-E< zu>YIz0-AXbU@i=}Kw~j^7M#6U{*-oAi2UH!KGHbBc4gu(nA;rkpTt3TU|1zG9SP-j6%(*KZvdUs2=JOf4zw3nBAg1uF0h z-5C)A<%jjJ{+>A_&;0`dW+6P};^&%eqfHd*{?}a)4yLO-DX<<8l_!@q#6(1U!PPWM z4aNUdVb{czSK9dB-}X$;a|XU*;8t26JHL1pKcr)kgZAk^kvO_=Cta=Sb-1ab@nc~2(R66!s07pFf9awc+_4+}g02HKR zbwlAs)^|ay-E$eB9=%i>XsykMCELx3;I%RugV^Z0mZYB`H73XW+U2sRMXu!o3Oz}7 zw>?C&TSw|l^VxX_Zf4T#;X;cI_@f>*+8#oXemO^taAkQn1fjsTCNW++3KNaSKP`SB zV-2(a+GaG)KzTI}u6Nnl?TwK(f$scjgYV-uj-H3}A6?w<_ak++7zR~Ooc-DAoy~_@ z<$_nN@f@*M#wlTf+AFO!wHR0AV)|&#VpZA3>$Eo8X!Rm7 zWvH+{I}n)TCcax-G~O~F|2%&2lu67(ON#=U->KA(X+um~w&=qdlE*G8wIgY|$^gkz zhcis1*8$VyJOUy9NX~^434Vxx0-Doi4oHVVF`lhUjvygovEz=h<|Ds%JAgkF?45^n zd$SL$Bmk($%c|_uSkn$)v-;$;ih8RGQ>OhK`sujT0MFQ@Ie!BLVA-I)^~`$B8V2(A z(s8d0rD678kOJu@$hb+lF1v$#HPzeIQ_LB6_EyFK2E>WoPN$T(pe~lwh<{Nj3co}1I$z?Z%{hV|==d1Ug++2R04rt{m>~9ld9~&BV$%NP%h?sUd zqapZm>+p-Xa@br3?usrAs~<2t?^?KSCtSeYP?3O?DekAm8pPFxuE6L&4KIo=JYF`p zC3rJN?n#1z7`DNsC&qiG%}=yW1N;kI4ELgdnjNl1ft3~5$HkWdg4-O(^lmf0s%2NJ z5oGN9KTSviE+bbA<%B5017pi@A%7%HoR{G~$q*^_bmy=7?`4`&uDuMye zyF4$70H3lRxArvr9Li9%7&+x%78A5QrOqG3g?AikAdyWM4pjeW_P59;ogs8o_Qrun z|M=~-PEeR($PmZz>}!mz@)Q-vA-pLj1~OYiqehTIa12qn;?xOlN-^K-pVHc*1sM1D z!jXjLVVCHwa0BH4w1`+rGsK=eAQB91`ga!o`4LOqsOMbqM_%yDrSYi&Y2Ce5Z6R-I zvSPeKv!yXQ`=(vFPPZyJ&L}2@d9@ zOLduuhHlDQGXY%WG>r*c)i6J&SGt-*hoD}n3r8?O_|pwGL;yqhp00s0Cu_< zy?DKSi`C66sJJftRUcf<4~T3ZRdklo`+kAguVn~wE`9+?PU z$KPS)1T!GpcMwDslu;lXrSY2pf|IDb!jPIYz!hilH-lj6&3d+HFQ`o~JunLT9T98L;z3#^!*(#qNu|w_3$u zD9$6C=)R8BGcuCpEFGfKdbMscb;dQ|N!AVO4DfNcPszIZ-#Mk1EK#J9q{9>{OM9%x zMxYR51}nYVJnUY6O1~n+aL(EYozr@Em;5X4> zfOmxdN;X)+3DC}i<>~%~mhOdwMSJ1%ylLr7Uw9`h)v55zi$MkqZiFKt-w}7kHv~R$ zen9Ze=&u3rHfWA-;kJ2*3JYlK8|~Db)9u{0xPOUPFIImZ4{@C^v&`0Q{H{rM3ot1a zlO*F^-GCTAZulX+Dv7pX~gLU%FG9DQ|V}x^pQKnncoHMEkiYVWhr1X zCQL7x z2(}l|ueh@Vy#%stzo1SR!ibx5c(z_6W6r_quKuWqgiGE zOdskRrd?v|s>U;r1cXVIVB}l!(jf3(_M!o<%c#gUk$~my0>gU^W(}|SV8yUZddjRv z1ZNbiE^eA@a@%n#P5k3OprwQ1Fcvh=A~*BYqVY8_W>==N2m0!TU|zpNWOcK;Z*=Yy}%I+BCH?z&8z8x#jZ7q)h+Ag21ISF zu4a>gO54)u>JH#O&141)=Sm6~p~|9P=D67{P(9RV)HRp34cTj%qF9m;yJ#$4fyE#Z zDdi5sC>{9?kK_u>4 zL9Y}fnT)!J@M+I47FE(eodGWY4Nm?UBQ=jo!D)cqjt5T`Ey;S z#?~xXA(itX^#`yaLRa)JtzoO(#*Q~fWIV9is-jLUfGgoWeX$@j*9)y6w zz@%CKc)@D`FU@9*)8mpro@U{2j>U8VeVmR3O0DR5bwyNlfA2)?DE(Rldh!8y)N-qK zQ`wx$!Upfa2&z5e&c$JAx|d22O5~u<-?}NX$WMQW?z4n~4G(^|9d=dx_w2SHIelGg z3?RCfZsB1-rva*(BM770rR*}TW$&oVD`Q_X#Sal-e34~nNq4JiIOX|7WHslC{5dJpT5syV`P50tvs&>ekp}XvqZ!bc% zK5|etot+FRjV#i7!$MGR#$DjZ1%WHwxd5QeWchT2m>zEl2{(eug*yTaTwnK%70#pD z1MK)BQhxKN`!WBA0Azb6$cQ-QRIO~m1ozB(>pgSM)SJ?6{CF~qbDcW+ao~8K2Cwn;Gzt=7;C$rS)JAw(&F#G;#5uCm z6=AHcX0if_pFe;>;Un%2Jxg@#F&6`4;y7zZx0fTWo96H}jB!eIBEE;)iI?N+m*V~o z?%;kB>u?Zc*@hwV*^Lu5oGZ7(A=Zr9o8kBHs=L2k#<^Gg60IFWn4UmX9Ako4=lY14 za7Q>h`Xk#+wq!`wf;{l*a=D`+UT|Q`br6ba!)PlIFMNFHHT_XVz&ro{+tw$)BR+el z9{?v+M-cMu26(%skSF25UQe=Ge_bk!#30)G$RM!#7S2sOJY z^TticI|i1N^kmVxDM@!L3q_}v6SB0$yCkuYJL!oD3(a9DAjXZ%X^D*!5!HOaF=vVH zKoI6a12aqhiyOvZMp!iCPlbQ>L6;uswuz`KwAy@jY1T59razD-YOR@D8{ z1hNo9n7V|@PAJ_{6VrHJ(118L>o%w|!$S4wtlVe#`E6<$j)&)lYc`MENd$E&o%%Hd zyUlL~WqSy{ZbfB^s27Ro5o%Z?gNbHQ<5GfR`kX3=8jFQP#6^P-hpD#wHMHwol6@Hb zQjO?w$*#*C$Mx0NPUk6Z`st&@P`*HWtu5g%5g=c;r-!flYhd;c2v&3ctS%s7t+^~T z&cVj0z~IK|*J$-jB!(wCJXMdvy_|UIc3qA+t{6QP6|?A45DFKoe~jd_y7Xa6CQdu} z%=u5WmcJ;p*`gC9+YQ8Ger@ z%V1UVSe;fs@-?dPGr_Y43^h%EbazNR|8F(NNit_+9E5Cu+z$_&Ev?v#uebPfDdBi> zr1SDua;;ngI`VnRW3LdUxbdRoU!1Jz;b63#C)$(^!@BZUWXNfJlLXd(VEkUd8j60+ zZpTZhk!wKF`i{eZ0%}f3MW|Df8YUlJ*bfw`!=;yf2|er9rS7Qi1xx?c?GZ%^qF!z- zFl%cxe`QtXflU+&{dMuv7@}47F7q) z91p~$CwlxuCArHTJCJ`-A7?-Iw;fi0cL*D~b{gO?yYeyM4>}#y(!;k>4&k8xn7NRlRrV`B zI)pGg4;8~|=F)5Tl>Ffn`qlMI0kU>JZW1L=#@)&Cv&N~{`mVL|G8CG_JV5Idy4!oo z0}G(c9mQ@H8fsNJ29t1-KYIl3&6&f9Z!+n-LSq}baj1gy%;mBwvD(U)uk|w={S_UQ$?_zqq5;TK?~t}BE`No$%Uj9< zraDutd9S|9B6Bj_>D(4CFk>P|1Daoimn)Vh815wfDtwheV;BnvHPO8Cfvi^z#bZ}1 ztW{Wc#OUpO%d(kho-0SUlY|88K6&vUAF&4~F;tlixAEiH5;Aske0qr@iHTH2s&9Cq z5loibh%xE({saz|$1_vT|7a~1-O}W>#LueM9ip!yD+2v{WlMnT`;yjs^O)e-P1U$% zb>dUYn-DaAz&dv;@@X_ACbtqNs0m20i#<8?4Ro681&Z*}vihs4t;91K)+u-dB=%epMf z3k1>pdx1^0O-_tOgasVL=6On9-ni2+TG&J9Ot%VG`|v;P3T*wBkeh}TF5?1_{7~=&iCp#YGYIFKk~fFru#Z) z0Zl8@B}o>^VR1@n?C1lARt%0R&t=1p20`pq=8 z{lW)3d#bMid@_C&z>*;u2GX!NT{qGCl| zHi7Grz%;IQcs!9LJaQ|mlPF?1m~?FyxlM^>)YL+JMD(Bke>3=_%paPHF}X zlZPyd$jY~x9~{sO<0(zX!K!gf(H3m&k0q%ywzu3+w1*Ml%^XeibsDzKJOh9G>=m=a z-8ivOluw2)FWP?w1iqdN5j~e?o5R|G7^YDCaa7eaxr{=fG*`M_W1HM8h_}TMC%x3^ zx;nVR76$T4uM+lu9oUzvEFH{u4n#fek+lvnGh4>d>Sg;2U)#-9NtW)WiYI*n`7ZFr zBlToVMOfyar2)|@-NQ-JwU?0V1+zPl)q)>%JMz+tcvJT zmpX}&GBJviH;WbVlu^BK2b;L5w{i`_v<^254r_`g`m*tN$I&@Ha{rdLEj%(O3n6se z?b8$QBV}DmSLX^=0POhL>6R(Jy#oKKQ(O2eAEU0I%NH&dgcLhVFE6@ETIkExnI_r2 z`_lotqtkatm?BW@W=M!cU8+^>4n#_x-lgUeGx0n3sd9ER(C(rpmo|RcO*QJ3`rCbB zg3TVehbRIG*uU)@(9F9eFeMa@3l6FK7LT)>lp*1&V>k4Yi=&1d{*?PbEaJusgC%wM z`<6hhxW_7jpT9v`W-iL_Kmj;05-<}t+3sPhEM)&GBxoZr)m2wInXGk(99r1clsr>h z8!futBE~9{$+$N|{?SO!_T(PM`L~J$W1fgvkuGNC-lV1MVfLMelFBxy?SWzII&BeV zQlC+Wo{75FU0(aRni2e`NPHesAIlF1Bm?MeOYUkG%;`O0Fsyc;9`34l(xZImxW)o zaxFyE;Q4)&kk;@;`+n%`EO@@S65lF($)M{De6ROZSSMTN-Ir^`h8VfZ_ry2 z9L>6M1ED;o7ZlA;Ts2T?h(^F3bn=vij#@XBS#8>X(}e8*5Vj1CU}f{+YH5h0?I(>& z?r`AuEPF_IYCtC6T0<=EtyqE(S&E_J$t)sQbhm-H1eirVaXrj0P4qm;cpB()|5p#} z|3Cjg2GH2)8e&NuE`RtO+l6b6e9V1qn1eViAjicA(v33$sYqzl1^Th;#ieyuWQu1c zl*CYVxIt1c-xem$;^$`p6McXg4NAuU&o7|5g1rxcA`=^%Hgd#?Lzw&5lmW67N&As9 z!^Cl;U%w+OZEqixf(<#=*nLT&6vjKjsjHBI7->kQj|{Y|`B`SB6b+cwu3x~0dijN_ zJ2ITWZS@(5u=R0SCJ-^nt>=|jJxpwk%T!3Ko?j-W2rz=SGhGE$&bk!{UjE>c#9qixhpd%4C`do3ktWEfQ6NDXj++doIU4TPa)!GS1lcMRC1(n5`DpxW*=YyHz(hp*>Ynh% z&apDX62Q;9rr9w7(W0n9cP;o@Q=Gu+`;9?XI;7~AOrLSGW3bp_7Mu4;KB?gnO#L5P z;;&W!VQb_;Xn-NpUwl8W-ab_`U$@BT-#5ir8OKy_$Uk4e*B>2@e(1(b)Fp3YU= zINk^G3yU(f&l6Sk$Lz-NR$h_b9S&CstGA99%J@*X?qwc7CBw2FI&<>k=>bbu`DI`R zc%vT2Qq#Z@z}+|c0|gTVBlS8PT47IqhxIJ<(1syRQRwPI8b$8(a1v2ZXpo@Qw-!dO5Kcri)`vI_bDKLBTAa0)k%o|yg^ z=PHceTa!SGxWBZge)4SPASra?(Glk^w@g+6j~ zjOFpQ3rxZh0nChw+Sz#816er-N4JyAxo>9m^ysU#?!j{C8ExFkgtGW~7!#M;Uo>V@ zO(1N0xH?Hw@!SL-lIA?YkB3;*m0#@ZhP;_S$~@W3V-kfHmt4WWJ-9R>%(x|C9|nAa zoJAHR=z3VT>;c~SK=4(*AdL@EI3GUT;!h7mC6XO^A8xi3>mvG@+HG@UH>5X<+xrPLk*HNz|B`@5J6 zd}Ku)Mh&x~tKQ;@3k2l~DE-W9PIOSG=36sAIJUo?OcDOFj(!|YxIrpNMerjQR|NEY z1D8;Cs_4neIbBhvuQQ(hnJuFdzyQq{p;EsTD1rjS5#hL85?6_QOfDV$XY?su5uYgD z-1zM9g%=<(=8FNT=kYj15An8Ea#rx`^S0q*xW~K;D9zK1d92;D6n+i94n)>2_9W`StKd zVsc-wMiJ8Gbhw|5r5@9v_)x^!mtv_UM5_SRsI-g_+9X4HhNCT;L_gZ0R6!v<`Aur2 zSPbSVs-g*FXHLTIBpws%|05MWU67blyhN@*=Bm~h?3`E}gn}d;ixIQb*WRCV7sQVz z>;)s?+#+Fy%TrHDfmWN_0>VgKMp8TRAx{VZSu$b;$4{UbfD}=UBz4(ttPMGJPtO|@ z<)^CdB}HR05?LMKpx&0wJ!&54Lemsr@0wgLx-(cZrkt1!0{E2-(%w7| z1}EraMNCRLR+t)kw%uBTdc55?6hS6=-U?f%-hT~>fZ?g7;RF}t>tvk`gBMpvVt=wqOI1oS`Z=`$A zN56-e3GhU8iqQur-mr!gu9%tjbpKyQka2nTrm>^UHK|tzW@#BD(`_?J$rm%ar#hqh zq^!7xA%A^*ij(J+*0u_Kh{JGG)lFy^Cep4pVVkG7U$%NSST$$3j9mTSca-8ug^%(d zV^WimHj>-d04s1GzQ?+$_3_|C!=R>-?3J(ULu|wod^l=3(T+QJ_pN4>mcYm=u<|NO zVVxxVU@*8gk7WuKNgM{?Dp_XV=J=7R8hzUPA>D-jx^oBz)$qhd<+Rp*?yb5_V32Gr zWo1~Vx&g)TmFsO9l#Gz{l_b>5hkZJ#YJGAAoR`(zyk{h?BO!ZSbaSyiNFdH9nAmDh zqDgWKtg#|7W&dI6JEBsq*MwmCmr=9#1lE%+YFR?Yup$QiOu=A}k)<1?n0a1yi~O#e z4Y_sgL9TzRGk&VX1SvS1{WXop=K7{DUP*d>I!z$Zpa`hu&x=Wui@svZ?{#6SbeYH_ z^21mf7uwe%9Iecf&S!&;JU4+Ei5A1vB(g8lFml!#X{Nt6U4T_()S~e+S2!hjRSZ%F zoVq6Gt=VoJ_6uGg6bzy>Coo&ay*O2xCO5izia5xxR&b;KX35I)&+j^~snj`fnC7H4I?6R4<$_~VZB zxVPS=F$D^dME>{(2xttzz%!ha4U^dTU`LShv!=GESIcqJAjL%=vTD-JPe%?3e5%6r z|4PeZpBT!$Vc_u|4z9>X_r4$zY_DtN>%3->hn$aZ(`H9dnG45w=I{?F%$sw)%_mW! zwza)+lq~~%xj8j21TKAFzJO0%LaXr+0I3T^5?Yd$x*s9P<;n@Onay`}h*eX^F`VrW zp~!x*_f+UU8J3SD0{Rsq@{qR2mxiwfg%?n@_p5x3>gjH2a?Q4mOjkKP`^ysLzTRUL za=};>>B)NB0Ir$wd=C8pu?Zor(c6)e7{TwtFTs6goQ$4fSd8VO0(7q49%z??h2Er> zoK;Q)-?&1-cflFXsOEc*2&YS`Omk`$ddVN5Fd^u@rv!r_-Cv>u@wRL#)Q19u% zeX7urNQ(76a(e*qjv zz4pfNq9F)i&ez)6R0JxqhvbrPTL>y%_*X1l8cuEKSD)3A{x}=6q*Da9cFaF`1GMD$ z3G~B&FDAdvMH4h|aB2#Rj*0r*x#NkTNC}4&1OQrZBA)W{R1>0Bmw1%q8@oLVe}lOT zDTiPC>t*~2TULmLNnsscD{GtPFHomIo`;36Ox<5$-fG}TQhOuAQ*|Hk&fv32JNcoz zORV@Kp|=cxpBkCmMydE>#r{@;3tQs)T;U!}weo!GoHja#9kTE2qovh8k8dL+bh5ieClfDP^)(z^QVD(t zJ+BHAy-1?X%QGzNa=})v^JD`(%vkv!$4y&z9GX2k9R9dBOyJ1up>M85UF$r`Rli6+ zCt$m~H0DCC4HtfRKvtC=TqvAW+IlYp9uWAhQmJz+zYG*s7JTD{G9=2G(%Wg=srm1a zOHDM9n5rSuJIpdtZ*RRYd}!@Wo~v&i^fW2A|XAJN~u-I8hs5;pqYB6wEWymJpA3W4y=U8Ah*uY1|TY zjYOI9@_j*wAgmi792ocC=yA6d8>bL(*$vl|_3Q~oXQ|F#0&^l8 z*#U%o>Y;!PO|Y?euy7N`65cgzU?EstUXi2xrG=U8L0;_Rp`lxk<2ig!%OH{DQu5r8~%cC2pUM2qiSyh?8Z?vYYC$uYsWIK@BbLH%&vkpX@wSPWGFC6aj-{J1SP5thJ**1YUk*x$NIXYH@iJKY=F@j1`4gx|a6A zJO*hai>~x{mJB=CF=)-}%iG$)eQOarl++NOZmd=y^YHf)<=awOtk!&jeK1`rUI6P7It4L9x3e7VVX4xqIdtamNygwe_C-onQQ~sby8eyQhPky z-mRGGk#D~AajdLzBzO$^egS#+c_&x;{&pP_hC~+G=u1kje`Od5&>k&Py)5xwc(_tf zdLS*F66_#I{8e5zzXlG#AkY7}MAlNudayu71sFZCDN{tEZ?%p;Q-=~_ zsV^nbu0chQkQQtUtUtEy_^sJh<2-;kp(*LYxIg)6A_pL`#9JZ~@gC~2ekEgBqy+4B z9#~6HbH2U6?+6Hnmw;wpL~>giAurpXbLj$W@$EgaRJ(p?Zt9Z>ral!Ev9(SPqTlxd zo%4}aKW@%Cud*GH-WS2~Wq<~`>#YiR%|Y;b@YemR;?lO3EjR`Ts%Moo5N^|Jey$W^ z;8^;i0J)GzQd}qU5j*F$iZfO!=9*pbGhHY4!}~Z$>&pXk5s{LDK=t`onk|?dt6-#x zwfLDWhc>p2sc;g`isP6%8NUT3TNs9DkgyHX+e#5|{CxBEA51=_{yX-Zs)F_|h{wt& z(hasl`(A5FQPqOsc2VxCpdM?(o`UtJB$6>C)hL-67fx^-006Ry|VcB zYWkjfN_s;v2-?tsX0)!d`JCPRNMg!0uI^(Rl5bR+iX_>-L1DYU<)ZxUNu-`>MVIGQ zivQ{V6(9;J?hFhrIp^&eK%Wp8mmh&>CC|Mh-ZbA~N0!yyYLM3MP zWTak0xjeQ0;BTRI2Nd3}wZjKeeyzE@zW`_z;X@3yTZjT`%CYp4F6M^j$;QD)6+xL! zHml<4Z-{1&fhZNtNl=Z(tE;V!C0M(Rcp*7TVN10Y=-;h$mO)uC8*p(ghnnwM-7LPbx$ z#ug#TupDc~6;TtWRjos>TS)BTC;-=Ey(s002bGWAjz`-P;`a$#`Unw5LpKO26rp;q zh}tb&=YB9DQGI2f*zyW0p1~W~!<6LH${|3UzEjDd+KxECNkZ{f<+;9xsBQg9fi30` zjjS)HHiX9lbdl<+@THD`{+*xr#oPWYp`DqW093F~o&@Smg_+_1Aa~3c^ZG!?WeEff zb=I;a9d8#$#`;mg%1jUGOsphTaY>yeFyDEaa^SJB$JwF5?Q+_6?%38!QejWppz5zg zrlczZ;Tzma&TP3QJL`ek`tUH_x91Q4Rc$LX>vEekUj&NM ztrf=-GkxcEVt}rm;YmGXiPX!KhJURAcc!+|gZ!b5!hu`rAQKvPM=3^lIwO0G1BONP3|@jREoU&iCM|1HCJxj<*l z(R>K_xx2ZcyWXW|5JdpJ$M7DRrg!j|S7}fhUFh{xF6FG0d~<3n9(_?!#ZmX9D_*}? zpcLNsW74%9L1O%(qRQDuOyy7fT~`Wj!-R)dg(-Tu6ou~NXFo4E(-j|GLM0)qtI6{Z zDJxx3AuQIOAG{eGAvi&LopD2vQfLW#V8P?+S&mq+#PkDOZ_ZA~7z20XTx5&&hd+6paY5>A{5l+=HTJ#sn!Sh?OnA z219$il-C)Zn}8rqwKQB!Jq${gR2_i5l4`zM8y?#?s?o!GDw z2X&Z0;smB8gQhvF&4BbH(z+d?vrrjKD;b(2riqN^;7 z9~*uef`p0wYAMd|f#|Ep_{`lu(xC8sBv`kURcO*{B1wLkaJfdluum;eVnOl55k2qdkHd?@mda4|btUoC9K^bx#fhQmd18OqU6oyM{stPTf>#ioBR!cx*O@wKp25lb-a41 z6!c<7=W!zsVy>7Z!4$u>iWUYc*4d-lBEeWwC(USpmKuK%+Uddg`JLIo7x3Sd@KXy`kM`q=cA`mJr zqs#3~Rn*xpS;v)aVDqrt;wCk1r0c;jhVjzVF{E2*V4sfwikMisOIo9scJP{ucmFtm zx)?mRdQ!WpHht~9aH{Etgx(37X57a*a~2nU86^EjZiwQpw?pQ8PsiAsCaLNf%iB7% zw^rHny#bJuS7>B0DP_|UyQnE`Mgb}QUMhH=Nv6I!(g|$1%t$5pJhR>At~0U5p50Q+ zx+EIg3{>a?UceJyS#@Ba9$;p{%&1=pOy69_(i*BW+R!e`>LQ3=YOaj>KFAdT=5xjo z7;IOv!_nKMh~5o4sDe$JpPhX0?ujO){H&)v`hr*{Y`|AwLQn)q$WfT2I7(@G32DMl z=SDU{XH1598HM|QWuPY=Me8qW$7lk3=Cj*#n0q*{CC5>%*K?F2;M-}or!8`wLt9*4 z-Rd%b`eXiYvdR#YChlN3P+n6yPBn(mIpOJUL61a^6{^bM1}C)ZSH8 zSge5Zaz+2UCqsXG>^RQ!oY(XCZrhD6_cmD3XVKX&VgU-)bJo%Ut~0^?%S&` zZXe`SyCgW)e3c&2V}fiI%Mlu|vmt!Ya5E$zXjE(&o~C9e3QE)m7N%S#CYYDl_62Fm{Aq9Kl?c-+HW>ZCO*)*tum{0FxUxA5RO^8PZTvU_aWdyq(e_|3yyF zIpG&+Osw+r2}xKR2l@~a?*KUN!4>rfdK*mZ zo9tbQYC}s8c{+__0bFp32rn?zF8{v^` z9xCB5_af}0;vDLW!I)+D5Kcf>wk;zu3?f5gy&6bYuDi_G9j zr)}Vi4hSq!rw_?FyN<)=Q9ozDfiCtOO_Gi)1^i`a$uEnK$#0pD>lLmzuF%5RK>B$< zXHy=2ZK=zr*_UGN;d)6D){(PGD-DE@`7W1`fB=pwV@Y?u)i}^8-7QcOcTR$`6A<_QE}D6ifrtGoMje^BfxMT zAyl}SG!vcIm7JYi+A*4CT^c(y8;S_?Yj*NzB}}GG=)1*;GCjUWP3)O|{WlQ<-=jsd zv-vy^|6sWi(-gy068^5TSnT;%@TN&Z8FW03*l2(^&vklQ8VnV2}GN_EboF?mq??IsPv3 zJcd)kWHBclUL34yUNi$yVp*X1Y~p`;B9IsL9TjdG;G^rsvbk#pU(!-pO>;F3-Rgxf zofzd|R1*^cn150Xvi9wnz~30ijZDueM*lQB)`8VyjdROWq2;;byQ{>mP7lW7>OM?ugf zTdG%g&N}9xW`pWS6@8}=iwFf9{+1#(i&RwkYubFN>IfzW!P#Mlj=KL&xf;_xs0N$} zXLl!sU#Gnz1HI3Q-L3>8t5n3PvjVI$&eA^Z%Bh^VpQix7`8w<`Y7#}CDxAWgrej~|y!s@MmRU^D&)r zZD8B-p#&+|dC}Lt#Z)Ze+Lgqvry)^1#}Q-gX@OE}{)+%$^-;h!duEgt+;UB~fpQrg zCzufKrv}UxlSpH#&_=u+_q!c5h!7;~%OgIh5EyN~E{!WS1D^IcwFO~P`ZT}SbuLhvS#;M(#yc*$e zR~Zu`@EQ3-5f$ckpEjEaouA2@$eO_smt2R!2wN7z*G*#y;`B9qqCHlhCR$o7JSBpd zIu=VC@GrP1L5i6NXdS@yA5wu@g*J1D^8|P?Vn+=DXbfY97Le&mz~O9k!_P$XUFfiw z%>_B56hMRSuz^Q;h~q{EL6rx|qaH>p8n1Qs1|YQEy39!$;` z|JCbksIA%O+JQn9b8m*QM5K#5Q`wWAwf0p;Ij*cGUo>h;7Yx64vf2fYzu%%0r1FM3!zgok&n|t!to)&ml3>QI%i|pkrcU8W|u)#%d1|hd_$9H4Qr-hHM{%~DlSN+3@j29Pki*#Brk{Hc zyFt>ah>#qT0HdoBB4D0YMpnhIIo1Z*HF578Ia*RM#9Fs6#3r=c@4}OB_OsTJtLnyx zG8?$38;Pk=-2>^&bw9W37wcOtwfZi)D&@4%A|@c|==Hdus}O#jQJ@wp=1K7#x2jO3 zu3vlJ^!PFlZ!Kr(I9I)OnIc?SqL(qOUggO%70rMRQ2G@1@5QPNe}|!z*QREl%tNG+!UefX*gBHJEQjVXpHACY`>quO#l|>OgSJ7RO0Qo@jg0 zPPgo+_~qK%u`g$9T2|r{qB+uI>JiP+s|-mk3LG)4|5fkwhw(|Y6>qt?U@C=azN=N< z>XdzPmJMA7sCGy+V!SEY>9>1EN9XYr#c7ndvxEK0DYYPA5K zb5H<^J`9YFMHz5Q0^W4WQKtk&rTwj;uJE3$ z(1GdTaH5NPj>Gkb#SFa+Zhybc z-Ofz{T~adiT0F^SF@BeRVXmy|pPLnaVFz8{^#v@O;eD(uVjlA5Pzjm6JK26K^w>-z zJiZ?%++QaF`74v>Bzv1+y}!q+m7B6~Z-|cEn!9HxQdLv(@bI)xhiNCvS zHC(WTXvldqr34&jy83K%?C6+;WrHa@rPg$GBxFAt4fzt$6E~Ur^rJs&D3bTHNYN*v zv2eQZk!~h`gp}CYkQJ42#Ho48TK2TpX}r^@KK1Q|Q&P-{8f$c-)a9BzlvjMg%wy~J zWl(!;>ZneiEkmAv#v6y4Ap)@ck<@`>;@i}^i{)|_@O;=NHqL4aixrf zkoPI}h$3s*H)6tiHjlRfiFTwkCOhbcj??V(EFms+W-%S*Bx4dP|NFvgc~Y) zI!1LLlfp>ZMN>w-(y2u)#+WV6AAqxtA#v^gfeCe1FL^-oKcxI^^0ng4tsst+jLzVMK%lY3} z-vm|1V1*)Q0DGp1m*YY7=P7S}-!s;E;#sYXSIC$B5_{D))$l7tzR3HT5#VveiThC7 z&55JhKBLLEU^TA;Z&2ps9;uz*rDEw9AB>H?%9N#%7PeV5#77mjI2CPiVW=rwE?2YK z1QDu}9Xj9&!SL$DtyYg87k*OLHq>jHG>m2)?Eo-xhK7XpM$3f|DUa>3lMaN4e(p+X z*j**j;~fY|m6@wcG02=2<_n$)O*Q~2Fz}z$q@aB0Kgtw&I2V$<$$su(>U~I()_@FK zP(cI36wW0|bO7WL!{gS}w11@xlq5dCWUKQ6SE6Nx*3{6O3CW>J3c%-vDvO_2oe)tq zTD5d2NgpKz42`;$dSz^GaZ#$gkemcX;CSj-lq>`7;(=gho`Uy=2w_mKXut$EU}GM= zWsmw3F6U<-}o#iJK$$9yEgct0e;cl;Z_II5~2oS2B9H}f# z3BC+ei__adn*X%`S-jY?kh^$;!yK!9HpomYO{mFFWE>!Y!G?Teu5*pSugdsecTO1| zp*2)X0vkh`rmn_xlrk>7OMn;vHr^w*m$a9z6Ddx{X>BXQ_ zPX2%`6Ef1^kaMB)XtJN>j}TJ6iMT(Q)hWYY4$L*z!WD1jxU(zCghrcMrMvC2|LY%J z|EOq3v|UxlBJ52Ik5}E~BJ_&TK;*+Z{;~r09$O`}Q#thI32<6skRf}p>D9ToOzRq? zXe-?xBFUf$d(${BS74=*VN}Fs{Z?=xRITVTO(|ps_FambeUWF~h|-)yIpim5wR(oCoF zET4TkFP5MWNBylyX;NF{p(^al6VOAgEZG`V?8;TQy?BF6_cpqFN6n%6d#trs6x}&b z+X`)ysk5T=0hL5F{0-@7sL_9&-)CU!aot0W6}-m@O$$?(%Wx{h*=qXOupWKmdj}pU4f2*u4yRCV0-8l;ZAr$F^q*nxZLA)ZM6AmO7b_8EhrPNH_6O&C`mt| z)Cni=bBTkQUmyG4tV-(@8(LHp{?g~-4%_zQ>QkW>eIgS#V8m!BAglls0QCZJ8>lbU3UyiC+f#zkR z&0<9!$mXyTvND8=cs4Gh2WgSlQ4Na3oHkcnJt_~I$0MXv9t=36F|XcOwuR88-X3uK zCrT>TlQh^!r5!WIJjMevmtjT7He0c$6q>r=RvU>n$@rTDMq$IDA6`G)$_hzrU45{tE65d zIweYgv`#xUK^dT|`n<#_%43gsN6?3;urQv;P<5UKsQuEbo@GGEeH(Dj1t`rY3i53z zDZDrX`jiO#e0uWdqbdDNpW?6w&JMKvlH1{WM$I%e{)QHLP~X&Nctp3xrYU&S;u~+u zal%qPJSAeZ;B&k(Za=UON1ozo^TgCp5Y-309c7_xf$U9!X<0l^Ba}onn-gw#46DMZ z>H#^!f(*qO8&_YFL)8_8HW!%?&fZ|~r^(``X}P_?mB_29>kx%||A^QWgR)8C4x<1^ z?Vb)BZ>f%{0P-!g3^=>`roH92Y`@gn^O$p{=3*lL2N%hs5d(fy@M9uPOP8ATJ$TDz ztX(AV?t8XiUYT*VgdarIw%{i|sca=Ia93WP{vY#42Q4jFA!0*cE3XvR^^o+NH1v5m zA2=o}>bu%c1ZZ3D*5X@2S$AEofCGDTkvUtNz@W?dL&FK?l|q4mNmp9a<`R3wc6^pU z@`U^sZ6;AQwc*eN;<`&EWlL7>tHO2vF}VZ)bH-)81rj7?F2I!I!241smg+GQ+3M6A zMos9PfYejRhzV(6uaUE-8iMNk97MRG_nh#OQp;p_U42-AF=vMV2%wqfE!&{GgOy4ICf_raNeq}2?EoLDV|=8$+-31ofQWxcK!L@2T2|P0TMq8 z>rdY8woK!+;&sZkWj6Lm_;)29NNAM-6W2CnP+d^&tBUea@ z`L#Ck_R+k^mk&8ap~*Z32eNk5z!Zc_BcI~vQ{JsJ0LjB`BFLqeG6VGPe=bA5G=K^Z zEQhr)5STHXi{+s+nB|dx!CtY9(8c-J0Kd|0ubxYNhJ6z|J@g)Taw> zx-ZuyouYS!DER_jMEvW|-39T?-=wU*r=KaR0q56KjfGv1+ZgoA%D4?#w5hp=C70~j z?GKv#EV!AH%p{K7CK!-OrLfkvp;O)8jv<%uA&_R4spH{c_rokW-mBP%TuTD$$yHkA zM23gZL|hslZCWp_d`LZk^~B?EG`Yx$quN$3E{}MG+-rLgTJm^yuO63Iap+_^%Gpg= zcdDl*ozUbpb4FjV-;J!#=a~%pXd&@I9$Rb3$NkTpfd#f{;-!nLZ+`uNFfM5Z3VbFw zsv{|N9A|{qZy%ap!Xojt7%{x;LlHf`F8${31whlV= ziE!qhIBT|BE@cYoB+bq|t%5#Vr8{>q62cdq9;mrZ)Y11v17tl>YdtKBa@nWsH^V`sYz7!|XMU@x5yWZC3B(8eG0((zSq#agq)BzS0eo7) zxouZmJ;X_oJi4yjSN{{t@2=elrc96 zzlK7FQsCpi5DjmG7}^^#8Lbs z^VM7z*>(tE0qMq9a?YX}jwTXC)v`;6qd-FS1-rCUijm*1#+vn$i4wzVA}aU75m-)oVE-LYI`6-KBY zXatw<7KGHU&Z=J^`As5oL3r5&n#%(E3mMy%CiF0SCx-RC-zx;+K@8&?dEGieD%pfa zX1k&8c@NM$v9CBx3}o@c;NPLX=a-=n$?l!TVhcYc>Nnzcy^96q+-00oeNokjA!)rbfc$)yb!$wwIne7>|L+axYj{~I zVvkf^Jo4PuQ&lSos07lc>X%X40p)!yH1@Mpyh1Km!~t8C`srAw1mONPeqD|R+c(cj z&F!p?JlYUOikx&umQXUF*K;Tt56&!LW#8`Ye+#y_xPScusHs#lUbdJc0p_4m(Y_(_ zR36K}mT=CA$_(S@tRMgk{j=c2ppWNk^)(@KBP z5D`n%7urP`rG7d`%1P%NFrCRV@O}3pC-q6TF=>saNn_HhXq4-XQ-ne!wA~4!D9IVN z(q|ztg_Dl^Cw*6x_hdb6J#nEvX=fU>(VO_K@Lb{Xfu-*%Iq`k$3wU;OAUl2M=a3$v zD5ZlWAX+hG=_SM=Wc|z~Wc~4-({rD?u%9}?Y;ToBnqM0Jq8I}Dt+ErpHJqQ1)UCYP zCFQ*GF#lS+bRBR#%k`0)!sD_Jmb6KIP{07ny^e%bhVE;Q7Aw4;@QKHWkvM3 z-2~uu4*DB3mKA5asBo|xQEm77WyL97d?uFNopwr^#0P20(bZf}IU&49L~0M9H+Zvt-LiBtTvl#-!PGDCpMoz}YE&Zvu2i=(<+ns)NYfl#d359m zoh&&SiSmB8W!lfTzb}X3L6U8ZL_TMxhAR*j0kf6Wppd3y2)a#8Ej+aI7wvd2h@a{V z_67P~cBVNoR&jBFkueVZQrt8SR}2`SoT%~V`nj4?F#Hb_eT@zrSqyKk!htCZ%pdq= zinG3Mbw!R)Nv!Yc4yQjMZlno8J$FGCLgu{-cNKJKEbrZd>0iQZ6bh3v_HJh}P=YAl z-RPLSD~tD0Fp)>tsLO)JX^)`tr&-nKHFQ>%Vb{Q9@NsAJiYh5VwwhKBQ|X{mxB2^E z&Iy&odPe9@0!)wc6_ud)CGm!d#7*~r@0|BkC1N1Nf4Xb{m3-(}>J!nRt?z-T=rKb- zJaYz0i*gnSMDDyARj)&<>e>8H1rBQfKpCYWXeM{?PL_%W0#2q46!&G@WHh~Lp~n!S z^qt6D_@4hFAAh}Urg_fW{ID0|2PPjB^b9YZfB561`O35uz?_w*iV`v#HQOSv=6xkt zo1NmjBY#^Nl>L19 z!5#s+fA{i%n+~JC8&pPEN(s>{*X=M8cEalOV?`RI9?3~P9FAyhp!hVrp@!PyStF^+ zjFQe2RB+~VG{IAJnBFVdivXcE4c00e+?Iqplv#odcPxvDw)Md3uaaG4*8Z-U4zBJa4D9e%9d{p$t(n*<}t}7r2z>GvI z`Tq+zV#}m}4X634^ql z3u5dCKD^x=YWLye2SnR>uTOcZF5UK;+@@AjBxb*NR%3h5-V7I*6se!4g;orgD5XvW z55x~z%+5(j&8ygqH^l0ES7Gt^Rt@*lF*NtCKoIqqfEW;xUN%ob?>cyN5GGtvNpMl$ z!_X7A$o0Kb*zBNM)9?FG)kbGW;s6Fk|2vwvMR5(5)dRFK_@haspqQA9@lXL!QTjYa zNS~!xYkAamAk%No%e^s?dsS?p*R(^wHFKdpe6eAB1rCXGwzdy7?X4UXAGik%!Wmx$ zeujnXNhVJx$2RLI_%mSC!(t|4=3q|I=1#*46SV>nmfDWWVVIw z-Kera{J9&-$sqg8sGAOzLMKSdTm*;2OaxMJ+S2Q~C*0yLgwf9caNBp(-#|cXNPCBD z$}e|Q5Mle@)IJ`P4&*x*W1N78`Kl3Q z?P;9o=>T~8iyWIRvfN6; zG^h%dCsvIf80u?fWcHO>iF$1;Q21myfyt(#{C2{^^O=!z(ENG&9YyG$l&bUYjM_KL z=ajL-Q}9$<9v-4l4_ju23m(9uVJ&Z^#Ep%aG{O4+`INtaa!h%$;4@xN@%eI2eRT~t zZV&|*2IS7Yrl#?N{i;?fa79zduaK-=bMxqx!ix#?C$59#yehym%*^!2HzaIj&J8pp7c?tsWWcDxa#Ro~CK^oAWh ziZwnnJu|sW?W~~Ljw?CFGc9T#UPUq28?eFx=fK}FHhMmbo9C)L4wdl~1tM&?LxLuKukzH$|B}+hR4?ijQ&oAAPI#J90%fsS; zx}@$PFD6gGdxY6kaeYI4Zm2@&3PR!HA@AoDdS*xo9NX);X;{WX%j6NUDUoK7CiBS; z#+a&SM7q7>eoxeH_*OHzQf>FR)p`qU^s@{JJCg4n9U>+$v)@XhyWXfTt0F0{1t8nJ z1Dt)(n=e~M*kw=5HBgxnHM)Rbc98?8F=1NixZ0#w{(&s>jpD&jv&9T(l9L}WW~M0( zNrU%LSUYyt3H;yCHGty&LIeYU{iO6KBJ5IOvN^FtG}VbmCp97|cW=K39KGHiZIc#Cr%^PM&Jmm$F#EKvSnL#I>L;v;B7>&$HFf2an2oY0NL?Gl z^!Y^rPZ3kAJPCINATk4&;BJ6~?pz`fU7e40?Du$=^z*@w&<3%qCkle3n}i!HA4p_g z1v0`JGPZ~#tA>sMSPJM6n8OlS>5lwP{7WQO)`PCknORBW9vt=IY~1woHcTzmR%lDm z4Im@gc;yz2y{sVvFtdZ@3(XOL!Z%^6BSv}c8=uXOzBoNQ2_VJ|k+G>+V&L-U6B8W? z!*U>Wd1rj)gJzvb8tMB)3w90TyGk;L&xW=D43LukcE92|Z=RlS?wv`4UXKC%JuMe< zH0?U>_D3Q~Sk2Z6wm=I{ujE=kQ@bXnp9h(Rkwy+xzzk4Rix^WUA7_1=4dRG3KR9A0 zVKTR&0w!l}i-?`e6>MHn#|XbnWxG(}jDhonZ*bBYhMPy0$-Vi0lDD7^niM_x?Zu$B z)|mKLI@bXJ^dJ?^AZ-&o5^Aw5TZs8kSw)q$+rYY7<9P0_pHN>mF-D7VqyZUl5=0cu z(<)=V%deXfATx!$Ghpc{Ir^PUD4KAibmjnvM+uLHe7=c2olIWt9s#2wV5mr)PsC5V zJ7D3ym~>XD#+Nihx2Ln5Ex^al#(XbG&J%hjz+r6M1CKxi+sxk|G}7r5@vVmFWx2c2 zx;B%##7Fm?SY`K!h<$IEm8xy5;h}crWdmwsWJ~*9=!pumu5Lx?WBnlA zbU6&Eu$vk=Sd&*l|ArEdU;|gk>_uPljeB$q7?b;94wJ_x%m^BMF_W2xAUf(BYQv=5 zjCph(mm?{H!O%_xJ`XGFChq>Pd}&C!+CyXk&WzXgN!OuUTk%-73DdFlq>|96LHV%2Z`U;vzN+OB-64W|;q7F1UR55KPP1C-4$%bvsMII&39LUu zH6#=q$F5UYuVe+FJ2xEoe}7l}>kS1LfHksN5j-XCnvU_K*~a2?GcrTyF>cQzMFqBQ zV(eC&%E zT0%rCIo*qz?W1qO>mE*OVhD1MXJ4NZayl5w8?Gdtv+@&$)^UXpF>2s&HWgN#dkv7u z)HwxIbPTV^CNS>*D|{k0;Ij^yv0e^p?_oBQE+bL7Z6-sOd_eOVlt*WxmEB2cZ}=2% zIbfn#V&XB3d(g6P5mmY1t)4QgV=)$z(`+k*cSZ*ifI?#X19c-Q^s;m% zbbYRKX3z7|)rAVcK2K~rt^UIjgX%$*8kx<722*dsh;YeHkomn)V-rwj&=60NvDHBd z{c|fr7=cEf*S3zXWj|gel>z8G+*|z>NqniqttP6i@6d`?!{iO70klq(dtVUNfWG^U z&*X_755H8H+lAvffUci@s7SH^K~n7!!uSMR_4AC;)VEVkBFv3emDxj`%VLN7R`ZPU(;&Ym7lo`{y7R^ zVLN~C)1u`bdg#jYHoM*!PQTF>mKw*kN&@@+N%i*nEsYt3Brdu5GpF~jPx`jQ{C@&w zr|m9kHcnHXu#mqIhKD{6f)OAzNV3VM4sZbinNj@R*$&yK))1HP#i8rRm z>Jlw;3@ezLq=44>2j*O=0rO>&Q921}wS7_&O#bZDs&!M2DhCOLHEv}CT?(~X^^}hT z&u~3-*gO7vDqC6`b;*}*ag!0(XKh9Xq6 z=S2Y~$uTLNY znGs<8F}U1g?)SlD7AZ>cAvdVqF9D&rLHT}(>vkZfM2Bcpz;iE8#Ca>9@DQ_9oNly* zT==VdCC`NG+a};FsIViJGkiuIKozhN0WpL#{*`Nd8icYU{OsSKi{?*qnX)ZH(P_lcq4>FTaAPyw{^`Y4zo^e2s zqHmf*?JrA}2ZK24#YnO!L6Sh%#ro_h|5Y%1?h<~`#Szh>2`zK%r3XD0spZ=`WU z+AG*kej_3Kr!Y#*zDcV|8V_L+NI;73&!!`@HYc*}RSQL?gA3|MA=&l~QQySYYSD z-;_KB`5|e?h8HPs;RL~#B=*I2_M>N_y{T#J3j2kx0GgD(cD8;FeqDjiF)x?~2k}}J zH9kvz*3Mxd?o5kRliD)&tfCMKm}^*oR9Q(Q7H7O|PXv%oN$@P-q}&T-FOyo}eVN8d zfADk!=v3x^Y?XVGjwS6qH@qYUVGJv%^y7pcW_f1gAl?%cJ zJzr(_z757vA)D*E2uKqPc0@pZEo|S6yBicUHu3zeQyI|#o@)TP$qjwxD;J_DWJ^1e zhRd>uI)71e-6$ciOHhHuM)P{DI4k<42@H=& zg2N&0Ks9a$A(NgKcyzurN|g&+nzjFO`P&-p#dm`5@-n1K zqX1S77uKX02nGh`z#GxVYMe;xQ1LfRZ^FOagr`B%^l)TqC}kf|NPG@~R_`S6Z4x=~ zp$M1mBG^fJ#4FHL++o8b%XG%t!QwS_mUBThj!6of3?iWxXC6X?@-mgNdnB?hL#=w4KQe^y1De)pxlvSIYyDS|N2&a9L@_Q`M?s& zffLU~`L*z%IB<4$fsKjEL(uDi39#24hE$7)*C@xRWF3x3;<^{6 zcreKAj?|5?z9&0*77%S*qA{JpF94gML^GRHKykz8FUVvokSyo!V#UXzXQ?MYHSrQ9 zz*2ZcXwa4;Sp$s4miT^a3t$?Wjof4W;)p*_>`3^LAZkp5r3x?@@Zy-grH$OJYxgy< z^kj&I#$k38i9l0&PfpqBlqRo`4{S-F{lM(wV_=gUGbtSBJ@1)u{cq@^lvZs6)gQw))mI{3}1UmSUH_B`h>%^Q0IE-$yztz#GL)ZyZ&?9tN)!s>jIUyF@cvd`SU zG9Jf?2<_IEtH~01aq^OsR{*J`ESqb+vf`j`SjvY*)rUxPTCyE7ezu~H z*tsnC*j9&W674_EQ%Pkz$RQkOR#!77Gt09B9XRNi!>a`0)O(2yu;B5hbDg&bnPdW% zSdO-t=i5+%)_E&wBdu8;Q_iKUeOdF|@YqY|_DFzc<2yE`?NFd+_$>10;NWYBnG`F} z)ZdvX7g!r-SlDlQ~Ra~rE^D4j@Iq0^@yZO{&;R;81oQOi^h2UG@`UYclc*6ybA(GwxB-4ZCo_frfx69|ma(0| z&vjtgND-+YLL#^ncmJ$hBikrf_J$TZK6CnQa5501i0w_Lq2oJ7O7F*H?{H6vXKDTq zkb^J1xEXH|7}4xc4F6y=(7L`8BQG0D?V1@nJRw8AOVOv95dX#{R#!yH#auyMy5j)q zhGb$~^|{+5ghF|+RC%P1+(bjf2ZCpd2+3RHK~~WpPer(yumsItf9S42in~qv*1`6I za1D69PHDYfP+JEv9rett?JmMkx-dZiKcZcJMmREuwR!f06)K5~DOGhP>{f~}n4TIFY`OP8iYRlL5nW6f;6+ zO2B+$?o@;6Gi>DNq^qv*LGCKp9K7|U2HW~7*3X)>Qo*zlfo_8uAtT}*uiRYq+KsNj z)S05(&LSSd3o4}xGXO3Cjv%79WJ4oCSbkwkJf@$J2JSVcD@G<=g(#+E?62}fj}rsi zcy`QsO4y{{4TDvHrJ>H)_a`Qd4S;@-Z1E>>jvNs#v6NB@Bx4JL0^VS>|6kloQBP} z0EetZq24t6&wTAqr!g>Z$gpHZvozYX(Ad#_JvFJ#DZd$;RzY96V zpDF!=vLLPb?M(%){}nSJd^~yAInmbaUMr4wR@M{UE9_Z|#t89gh}7`dglFS&tYjxe zl*~19jX`^D%BzT_Wp7@VfZiEaL4w1YWfQVMC!Td|M%^mcBci*C`(XQxXB1jT$2@Rf zazzu{mA7PNsqagN)M`i^G#>cygC*`4+k!^}{t7K{hSJXYU`QpC5TB&cu(nMawPRe+ zH|weW1Kbv8jCqQE!z8`JGrFsuO2F8v`fH5OE$9c_ySPPg2J9wfcvfGf2E^GA|1!h; zp7>v(Z*XP$V+r3!I&xSq9|>xfN~Qx>;NNXc^N$+7Ar0Vi{``YB4@_%PH|4n-4=z7~ zSvOMn?lx#e_>EU|Y^^CX-ioWCYRyCKgGRhx5Y}m{V6?B0OQXpj_wTI4E0oJ;*%n}3 zZ!7isC;!Oxl*pjBSSN@?q(f!)#ZfW#rN<&{zH+u_i3QO=j zKWXoOxf7qtrLi^H`H^|$lD>0j|G8g?Om?V@#laYbM4^9Xsij5+h^gjzr2=yuTL@j& zqo{v(r8ofe7)9zV5%bK50vPmkvCD-wH*t2A1kOV%U}0~=o5gj1G-DYJT*KXQya zsSAhRDR2ud-p?ePDkSn_6juObLQ)umO}icbXDv(IlG1Kr&7yv5c_aHmi_eC*a>8R8 z3GUaPSthBZngpz3D(v&pfJt470?7OOyuBIN7~yK@HWy^hSddAGp1dy!7D1IVs@wfN zAwU=4$}pZ+C%W(2GSTY^5qBn6pN>SqBMQ%gbzX1! z9e|v#&w7))F;us25l=Kj)_N6oHnp?L9)M+|^Y8NLJshF5-qVwiCK4)a_r^~~Z~NhE zT3+IEKW7q?8oiqb^ehSk>4>C23fe+di`R7(AQVQ2BsNTK#Yl?=>cG9uAwd;GX}z+; z1aAfyM8+I1;-K)?dLF(WEQc^&CA>g{)MEqg4hZ*=vUA8(l5k5v15I=4nQ(e>r0@nRG#V=F}d{)tA&jGmmvaA zrz7q^{Ah``aXsojRGB{R)?RZGE!!AFB1}U^e_n2JY%@H!wL-l>m{35QZH_dtcFn%9 z+{2rUhcrCcJqXe@<~A7*^RG=pY3u5W$VPGN6Kk&FGhWsgLlQobEyumfI?b08c4<#){7ivmHt7(MtE z@CRm_HA{uX8Mo#JndNy9MiB=u@^2P6xe;R<{uwX3hY%Xb*0b9?j?@i>S36ID9OG<} z&q+-uHBbYKw@A^Rq$}C&7bixEN1%}y0+R%DneSHtYVa~9t!_SA3>@zfhTVRVBNxTb}ec7H#OSu_24 zjn5x$L`koB3pgN$W{>^9F1)ZP(neD`$oyR(f(NG#vbU|;&dB60RB@qQ(PPmEnn z^o0-n4sSWxDWLrfr&wjPjCWOCg0d!Cl(@xStVYESe{;dn4uP;sAoVmOfuhO1o;J;E z-Z!TiX@v`DBC>Ik2kg!*HM3D<7MH24mY;}o46D4kFJo$&Y);$94FqVQrKh9qi{#RmJv#A z;Cl*B@b=v8__=XQrkAmm$8?ta%>W>hv!3AQLkI|8RkGgvOw%yCgD&w6Wfu7TER@Ar zZWzVLK!kwGZeseUFD29^qQ0y%sNX4<5F|+}<%Jfzou%UNIH~On*HPqlIZfJ?bgQ-T z8$zk-;4PKGl%F0wn*-2?K>uZ2$!$aFOoTw=6~cRu{v#+ofY1@j?Mf3|gp#^uhLlvc zGO?ThM0#@B=Y#!sKNHkFTp)=;!h7`18G3q;t~7fcu@@3s7Ir?NWjdbR1Kc^sm}a4m z0tR_MZYhXv$VAF@VVj!ZdTEF?*V8W4#z{FJ3LL7!L##hPp&CsM!IlrMax%xGLk2Zd z@7We5|8~8T4Ct@EdP^zh9S=W`gA}!Y!6nfD9AMffyM>ytL08S?7oUPy-B|SRWAL~wsv*I_$|H1{9<1T>W=%q)`w>m#2t#({`+mW2Z=uJEmAKsREQ*{>`~`VvlA z2__crQPW~XmC7lts081pkCK|U^dymNrK3aMU*;0<(XrW<(aWfhB7Tlzu6JYtfBn^m~~%c5DY{IZU4fOzx!{zLR*Ob*OsGatj2S-7&+P)7|0i4Yuj}> zlE%P%HW24C<_GYVE&^pS7zYA<5f}}#TYEy!Chd?upt^bO`4MoBGEsqO=1AlSmlGG% zaj%uPxY-h@!h^A2;Fb+@1+sehE7NDG{AD7erTf%9jYOgRT2&0T{pP}I?|d_Q%_E~z zzH_wt!$mysx&#j@7HN$K_ISTJF}VDBK59Bng2_w;heRc!v8R&VY)Ct*r!nGSr8d`kb5*guFP{*=`eC(e*5U3;@8Jnu zCq&FNdhuENI^ks}N5jh-ysGVmvH_F%CJrLi1*XFd(vPl2{cYmI!fsA(_Msj=Sp=0Z zfWD2mx7+G5myj*#)#-~Y(0CPx=RqN3M8!>`@Raw>Bq4I?QeNVPC?;g$aRf6d0F?V{ zqjvgLKyg7n8?#?-z!)-vjR$e?v^OWm`84umRppJp%2F#A_{S&{piB~^W_nB^?)mFp z7KUsm0@BI07#Dp_GzvPJQhI$Su7m%+xxL~t+~rxEsU_<*_Q+Yyi$pT~6D5Dm6r@#- zS*Y#)cV+B#6nu=RdD0}~@}aUGOc;wAv9!{ci#}=dT7t9od0cV6LqP5BwaU9gSf!By z5JRAuYXAL&*II=Gy_!6^E(tP!w=tJ;591R4CYCS#fn7sNd51E7RQ)OOAe-z8vn`Vv!F?qXcJ9q0w&CNj7Qh->73bK4{At zU2pTJd3>MAe+c5mZcYWoNY`kC`-G#N*AZ|1ooEi7QtjigW{xM%ruoxk*)I08X+7zk z+!TqM^wXK!UvK2hL&8t27Y1UrBCC8Y>wX*+lrXY^9%>~Q=n;<&K_M|PufQP}GnOe8 zcZtBdR}TbJDt{0+Z$B5duYk?dH)n+wfKr-n#Wk%6ik6tTL2H~A%=kh|0mniH+Ctpl zGkBhA&(|)0o!?-N1vsE$e7$X9>{OU=R|ylX)80a}M{`wjKe!oT$HhT{g1e91LYpLK zV%@*QvjmP;U_R`IBcnBGB&%4y03cc+Se~@wicjK#4b8ow^x!=$1>)DqsW!4ut_$vy{Uy z-y5OOvPf`OXuQmOdKoqy`rnST$FtNV)K0Hd{34)6tQ@Df%M$o`8ufr_KWmozCWr0= z)k~#FNi_6c7<>@uEa>yk^B7=45@P~_Fw_H#3w6=ubtx%tu{3CuU3rFuW}e?!7O=10+4fGrY-pi8=PR1)9?sr_XUl%1fP4=U z_foFyZPU7gD_{CGD#P=%zc1Ah9CGkL{jwHY&KNOF_oI!dOvj^^C{|&M!Z8Ts?3l=% zsD_G)!Dse{Y1xz*gL<>f?Y8B-(`dAmdJ@l+e z2+>Ir%|8RF%r$0oMF~-21vamW6)hjWmWFPzNdG8Tiwp6Y^ew*4 zgv)Y{s$>O{!7$-J;p!d_=ebE^=|K0`?JZ@j*8I%`0aD=!QTKv~9$C6JbQ3qA-;HM@h% z<1mJ-Sgn#iAq7Y4(M;YdSO4}Jmzk~Vx0hNTW|kv9h2fD9*{<6nNAUOQ___H)>o?HO z2tpeF3}&CD3R%j5#5O9qhvG`j4m#0+mLRTn^z$|Z zLZ1)qGcY7>70Ucc>GEQ?F#2C#sduOM^;Dn?uapevcGEjb!d5)B(E~cX$?)UPzJOr@ zo^2KSms#7C8rxrxN$9)tDVo_^r5sL;hoYsuc_AI`&He6q*51L9MDVvgeBI&(Vy7mD zyO}a9-_q>p%#4Q)WyB3Fv|0Me{2sgNbO^}Q*f@$A?b8(Nvd&PdhFWRglp&*E+DLb` zk<*0&FXDM*p|Cz_ec9lOj(2P`LF^_jdK!zHd1#t(3xckNgXOU?CHr+vR4nh`zJit42<~A1^}8J%~BPo)4yp79@(uZQ>~km;1hO`HU8RI?X(nJwbvid@)}0*Ftk| z%3pZpA#U)R1<1F)Kqsi~5l^UYeu6^hC(`}Oy@`<=2mQOz1UnFB#>Z+fQ|pW%Rm32o;|(G~sg{mkeQ ztEFGVS5?X{?sNb>y@6O9%b zZEaba0-)s#>OgiaQj$(W1rk|8@jORSQjtH+wsynAqy$WmMVYYYYm&Apq%l6_Pk>X& z+>g#*!qOHNOplv9pbs4j5oolw%0z9ah+~F>x?EHsvMKkISBe3 zR{Xak;i7-sl))d- zi9jubQc_7)cJ1}_Bo??}TF!IK=UhX)OeJ*)P%8xvMbX#&G~c9}FC16TJqU;_aSeTh z#wld}Buyku>@PXpy>$k8EgbM9pEYy2=2hY~`<10n%#exT*1(5YrZ!4z&B`qGa> zanb=&Ar-N`^jQ;t6+rYRYvlX-G-swnvE1h@*ob_g!u7{0gS*I>b{Bl9V#4&7SPDw~ zN=E~+CsX~S&i}Ip!a*#-<-d;||!T)iE;YhcOGbzeBuK#LcgG@k~| z4S+m1rA{O*z8otjcDAajCp<3p`05bS?M2WPj9rOr72eb@srY!?7r24=pUv_2W(9OJ z|B0`f=J;Blr4nx6sw!yQBZokI{!+Yk#wuGjpprH6fq79oUiSM4r^`>9ei^pGm? zoHvx$3SKF@$)`!UmtdJ3*HCGS&H3wVD_(&s)LfHNlIB8!r&!Q0!W#K`)&&@@?Z(WJbY z(w_nvC~C$jX=t+e!kYQcx?T{~L{tSxKjoDBp!Y3Ss9Cs%?lJiXz%Gm`zMKj}f+yx9{f@R;03)VWF#oaTKA~HFu79(-Z*~F|HeHJMe7{ zq&8Gary6f{oA#*$lH3e)BXL4E4fGB6j`pU_GN;RW!+{V%nGGYsV{(59Qklv>uC*;J z8xgIVEyS=M9E$5$f-9%FY2=#)Veaocxzd{4Me1uZg3P2*Z#)9Y?@_wu?GKNQ86RmX zUXrH1K7t4)H4r&Wo%D}m74Lx}w>O>cszLzg;>e0|&q|$Lc0;M>?&fIj!R8pA_0)(C z%A8)QsFlD(Z$;royEsQGeU!O6`Zt~-otsqGgU!aGuDYOY+cP~MN}VPCK9hJ?A58je z%`lE4E6`DmWSEgE%eFdVQz~qep(gH{VU-Eh0P`d@N(g2uu-2v9PB~$=PuWWZH{xV3 z?hyWh9!MPP9@GVyla<^G$9FlOEo_y~=G{&+j5sEf7-H~#yQ{&&zp+_roYXA`+WjC! zN?9cuezz32-_y~58sswN@LhCrQi~H(`}zbEMKHVYqM73Na1X5c0n1-TOc!gFzC(uZ zcEBKGjU;v)n_@jaD7sNWCV6VQqz9L#y+~HVrL2?WG4^e+dkbqD-(w$jgfs;eYQ0I1 zbMX>}qS?W)w#J+d-yzTcPiTTxBaWKhbVv=rOz53zsjb&$o8hwvDI?>zlHUA1c(CiH zu+E+eDg{ONG1xD)4yW!N6FDn=K^1q11qeUrDaOH>_no_EUjKAgGhwLs;l{QgCOhia zqQFs84YqQL2!MGaJQFaNkS^Pm?e?4!<=OJ`x?V$sCt4EQjj?hx5vYkyowz&ESAQ8; zi&NnoU=ZeIoYl+NM`-f~dGRCcnN+gK45~IWb~M$9Ws&7DawbCyFrDB*=aogcCo>YE ziB9Td6lm~J=rwoHnECsUe)5X6cM8?Ya~$@7t5Dw2; zDdXirnBU~+=IE-JfZR3(0Ee7qtFo5M~;v7YU32YsRWl?{k)L9N$^n^qqD zn_Nn&*@r>T=w)&gs~?7Y(b>s;hz}HC#7s1(;<(?&mGLW)QA+xd6s)OWUS;;1wJq!+ z&n1)(G`6QJefE=52~K)*ENB@sj?E|{->V(iCBB+<^j0I4h4X+ApN)FX z)N*su1bSl&7n}?2ofoPItnJ2}wde(^sn2@N_efv;QnG>xR8KBG(F}0EeWomMs+`%} zN5NeE;2bk}o!bpR#j8^}RBIGA&nxd5lFE!0blJ#UTR{ZCkwl{b%DWPfuRrSCgPIoZ zceU{`%31$=*JKj`wos1dG}T078P`-mGgh0k&w;5i@z6x&S~*w-WbRUPT8`&#HufK3}qQh6yW2ru?H^CIm-|;{`uQKj|nL32sEQT0ibJyJyvoEs&TFFtcK>0WCQV{|Dxgt znR53gRXe#G5l~|1{icgF#MBJyw7$p&h89oC|K@X-0ISM{A@?h-{Id-Wh#WtH_M~d9 z_fKjV5KU}fYGjuDo}2wtOQI?<_uH7#K9<wcfAflnq^#X15_DuS0TB*11JtkIN77I1XRiS?h-04RWtN!^w+j(_S3`M99~cFzbtHbkFGjr770?#hESaNhhM9-|J)@rY z83P%+uaa`<0ReiT)B4AEL!+5$WhgHad_Rc}IHy>gOuQ<`PpT}93czCzi9KTOYvF-1 zzuBFKX9`Ves|*+`^(=>+y>9c5-H*yuWiiBi-6_hVqt|z~n5j*Q;h2|Oks*07HbF1F z*^E0pF#cMwEY~`XhwYnuBWE}vYH5|glDk2)7LcR?9&53-B_NS+<#zF)2&(Fo7Qo#F zm=k#70O`YIAY^97BLC=|)AR1HTVbN@`?X_~JRpBn?TJi>&rA=duSuZA$G!@@v5E^M zOZMNtTpfW0G9s+ko$32Nj^To0l5Y)cPc|qXDWAm0APhunfVpj(NW7)+!nk;U!TnX+ zy}v=IkC1B=z;m1O#CZ=Sf;!_NtQGB;XmKTXL@!KTPN=D8HDs5wOqatsNqvT^ zdt1E8l9osuXA0ao?wzP_DDJu%GS9(@?Tonpt&?d;@!sxV;V9AS=T7NkBVz<`A+9#o z0e5TvB~WH&PYgy0gxc@tV{Gu7GYmHJuIZjv`#`-Im-*RO0CpcqAhO$i0Cti7wY)pQ z(COxGSQvUOz^FsT-e1>nMKwrL=uq%Ab^j4LIC6%M!EhtKQ6MnO*XVa|8<+#ZFYzlL z^<01=YHyYE^cpS+E>rA{%v*WQqR)MTNn%PNz=$e+Y4e=H$4#>zIG8ec$$bXyaYL~D zJQc`}hzZ!yg)h}pwPDtzfoTOX|ImZY09gY^GDx%^4aaHSNgwU~`1+qP>&(YJ)@6t2 zQG4gJL%;;JiXRNCN{&q&_c!c}MpBQc1-Vgk#WHHULswf5=x;B7xz@*6BsVz393MpP z-?z&Ir>(GROx$eeqWnx_Ow}b)vhe@PHjS&ZBaWlVBbgtsrYrxFUSvCmP)?q`=uUp3fXh8+j*d^7ad|f% zu|Zlw@8&!!Vz@HD+N2$`u6YVfxxetpoz<1qZ@hil)_wm~J6C3wb_N>GH=+zWh}!)& z5^=#6^8fu{t5}p!G)m5!@N{u7tPAD>Bq$5#ldw$wR&vu8SwkQok`|>aPp1UD+A2x^ z`*qD{mvHjWpuF!5+cD3P*AVAMd@(FLmJQXg);M*DG?<1r`(L&Ruvi&R5EBE~u=7%W zzw;sm;SNOY#>IQOqA<@Uj^$=9Nxi!me=p%#%Pcd7O}I;RXCN^AzU4*5J#wpw8H(uQ z3NL=;iJ7the@_`%(9XX;5Z>hHXA5u2%ffz((?{lNYW-FFUKkJQQY_~$qg_LOTCDHq zrnouFz<0e_Y$@yYy|J>OvCSYAxXiVcRV?`efPLub8%nd+zD&*QdRz|=T{e@9Gg!rqfT!{bbYosQ>A>Q#C@``s~KFI8+1E zEv7yx3wKm5*pJ3>g?SBlGSMVyltQiEy^^rPY}c6*)DOR!)$6}BD=nnaut8Cu8c5}dW{Xs|TMY+x(5p@oCm_z%3ssq?ZM;3A>hsXv*N-Nfz{v>J^Sp!jRg}vd|Vm6Y}Tb;$;uUWq}$Z) zk|E({TLDf}lm09Ps`Qpm%=|X<5*)~7(B#;JQk|57e>40#iqvt}=3QiBC_hEp!ow9t zNUcu~F4Eq$GogY$29tN2CN^{X8)w#QRw_ZFs?4YY06QYD61*`ikE!^ZOa2d+@=0NW zWw%+Wy-={-m844(ij-C*4CE%#AHRpWsw{zO_YiF8RPw72>#_xrC;f|HZ9r8El&Sf~ zeE3%O6ck}weK-~!vqB#jJu>AiTgiFGEgNucDhQ8?kyJssSvs}|iZo%z0(Ny2L3+Cn ztn!9*H52B&^On?wrBb61^t6HIE?goX=>!ng2yL$U3wD{37`so15jPQIjHcgzGdad9kD6{$ep2 z;7?Qg91vC0RhaK+eQ33hj+1>Yh{#oOV>A_f?QA;~5a%(iN-2S3f@M$!OYV8tu%rqY zkw0r9IH~w1pOO5Q5oFDn#(EAk-hxPQAzE!UxWAZ>ynl&L=$;}@-Xj~m5YSf8Y5YYD z0FZI7!S5FRr4lWXPW!jowaMJ!4vSX*H zbFf0qLj{zG;cMeI!(&$FlV3tN4!W{M2)$0uKg1{hLzS$!^F-LBUOc?aOTU1}S2Xow z>B>ddtv|j;QwDQCM3g9k%#bi02iGDfIYbdcY+#0Eza;Fhxik-?MBj8diA9Q>qdS63#S( z@lLhDh-69MbsbCn=a+3sD~jZ#a(QvHdO%9X*W)A9(VZBHgbW-j&G`!iK;q+;0m-Jm zWJZYsn z5K$?MvaNP=1YjjhtRYoe(8G&cZWyfLBprBf9U6M+yA}n8wqU?J+LHs)b9k4rOq*$o z0smZ%tdM8`KS030nNp>1>s;FuZ|y4Yf!yYmZ-2|e<9taCraU8P?qN-jW@bS1YVzo51pi0^Dw~h;KS}* zIlI1Sm{k$Sx1beiQ%aGbmxVt>yX((Vf|->`rMfn(=qd>H>Ir~t2W3Y*|8syz^C|GB zQQnQputt-31}?d{e&MSCcR7M@uvp-%jWYQrMd@ngaP3sDN@w1w1tNLAiAB`N!ST1T z>rOR_Pg+z^e{STI2;PzA01;+9p7H^g6-qaCCZ}I#MN@Y=+uOq`N2oI4q){HOg|NQt zBKqN#pH%DO9r41DfM&p&&9_ z<)dCD*rF_7euJD4=3K0Ez$UnPJ{Dn3)wT=mzrhjc_)G_d#j$WJ*YCw>Rxc(40ga-D zS|RdiUapZ}ut+VPFz69 z`J^%OE{lPvywIH@OBmJIUIx2Dp}rTuUt<*UuJ}^^^XEc%4Vv|O@%<>t|Ry);(_e?&uxo&-+jLgA*; zl`DNQvLkMafIctL_K7t6>a*IooJa8)s5RT0*J`8j8!-E2iJCeAe5E3G%A1j_p`7iK zAa?iajRy0|`?Bv_v|0q#xnxt@WF7i!&|Y9(YIZl{3pT_(WM!5*gTYYGX<4-XTtE#> zR|!Wc7v-KGfpN}**aaUEcbI|X{kWVNGy<|W%{ICZZL1I+e9Wq}sB*$jHT!U=(INh7 zEw+^UsIdBrD3uM8>=@tpV`s8Oj9;NUC}l^7c%i0f;-e;>b1dWbRwRAGWPU-uUgjKn zJ#w^*_-c)ykx(ht5@}n}1Kf*&4{EnD*t(A6IW>Zk+?d|L=#mqSrA10WKVuq>_^e}4 z?S$D7lVCQs0##+x4~W6n56XGA;P@YaJ3DhyV@(L~K$1wltaOz4Z;1tck)!AYftCd0YpwxzIq%xcREGtZ)shj8GBJK2kEg9%r$J=_?{*nQ zce1(w+YQfq)!3~-HpQienDaH)6umcqAo=J-cRxJpSKt>Sf+%S|BF)lC zJDBt^UpmE!peyt55kycSn6?VM3~(P`O!K6z&cU>_{-FtgrHRTRT@)=U>5s=_+r0KkT8qN_o0-dTOESyF zw70DaM`FHfcuk**`RWwA9$U7w!?!}|^Aq9xh&C&q8ioia6-K#5Ww(=>3k>Mmx5L7+Is|w_<|zliPw#~&f|>H_Wl!JC$wE&o zVqo>z2*}xt=fdYg+~(29yLI)ZBz4^JARP*xF^;W+&7mnOsKe*t$^MpKDEJoSZ2~GWo z+>}HGwfpy5tk_p+y#j~sX2nxT<5F$q-s^GFP&}-~5R38uK6KW|qroNuuBj$UVW&I{ z+@QS}(2k$nuV;kHdQH0;*+eBHM|iE^6NOX^ZE5zC3+_xF&sr9=f(QP9=*hki2_J@;p|)Q27UyS zq_Z$2qi@sd%$|$9=9cb@U}7XIOy#howr-bMGI_IjIkNUjmbp{}0=sJje%Q>$Tt$sD zBLfy;4P%fY2Dl6mW8Om2MDLUA&VOlHDu%k&@*X&Qu59kRo4o zz0`KVc~7)tvWp5b6mZwz$t^XrN)pMzDylL+2Pu(Mws>k*DtGZQhs6#?wIgqTPe@6W70u6 zfokaO_}7Ri=wiJ;>U)di%`(P%f51)o0WuyotfJ8MR5XbV2`=hS(IW)ma>DkHiBO&z ztOL*#jUf^=4~bVVSnq@dT;CdqIIx|sfgUT3D9&|ejt#I*c!EE!eO74`6ZaBOqG)~F zEfMZekKrt=a$BXrk3+r4&lnkQjfY~D(v@1Eu~pv?o+s#vz<{p>(jO1}Rs#rgyaqb* zm0XWvZ}&H1c1`?g)ePimkSIY2Hkkn2NGdAS2>M;v7XjJ7QqwU#tfNPTVU5T*y-|6S zcj8jcqEq93IuyD9_EIti-`)~xrQBipOl=^(orh`ZtBp6FexV?9dxT@kJioJrh`e*I zcLXqhhlM3v5|&>y^AXkK zQ44y;6&;Jh8#m^O+d=F%=T6?*CfT1kK{sgV;gnFHSd=AaTARMh^6M~t^TRQ)HH}wi z*TW#+gH9h*t9Ci*+AhY%=YH-jj4@q)r7e7Wv}0buBC?7=SH!S9bDrW(_M>0Gh@8Mx z^tfG#WnaJUIutu(hN`%(K7CRJ4#QzBbgi#{X3nAqLI{0Q?yiP_DPF?;30}apvCFrm z5slAKSxG*({7?UrXKbL7&Pxn*;iU`V8>xw|cpw&qoRzIV7th?`kq@gz>V7Q@ZFm>e%GNV!d@|KIx7vft7~N^xx*OQpEEciOXRKTVJ%o)3CTA$kDT!|t zU!5CS3s^$YTgESds~x?=UjMP%bl7j#mzB94DiisK{reeB)X<>fqsO1*4y;HJgYTmRtmcxDEJ*+?0S`naDwWe101rf^w=Dy^@7tEEKhGAXmFkG>h? zj09dCBmWzH`vE8a=Ie6#JVI}Js3y>&mU7U?J96zha!6Fq|MFD!HK2}3KUPC%?Mfzq z+LS9??(A_F(bRa&B3ql0q5;6|egK^-g-O1Vxr^&?{cM4b`l{ZZDxN{Lp}~sn zo2H=g|3|SqA;hN>O548mD{GjmmTeUx6F@zHHxwLZFqFlk$M+ZNv||7Bxc4Ks*Mjh; zK0>5pOka2*dkgJHAu_1_T0=74<=#6 zsQwpRTaEpAT0B*1x!(@X>YZ1>Iqccg?{3j&?})FM2|n;WE9{wb_!&sJvsUmJ`91A4 z1nhE)N-Vi5>1vgs2TL}z?p=`Fp(2T4sXeeNAk`g_NRSd`iObC8PvTq;j;C2Y%x+_!vlwd>%t=tc1nkV@EI92uc`6bgK{DDLyZB z7xrg9&9mwKVT@FZ*QjOCYW|GSF2pAhdi^ zUlEEq@!AFD%0z;F+L{o_AHedqot@ly19S7CSJoO#DVno9=--Ywg*pTI?IlU-w`Z1_ znZ4m%9{LXL0|ckOd$8s6`#M9nn|Hw-hTL}x)qUoHu}>}Aw!{j?gYKL@x(~q>k>iC_ zMjN<72U2MCZO!gwGORL*-_}c?8X9q8@XutYhD3>fAWbAy5-K!=F$Ss9K6ILSM2kvh zk>-XUcr>NMTdgg)%Eof{hFfrZ$O@Pq7Q;aXSFGI{#3bg=FO$TycvDb8z~d-G_KzsG zBKg;19DgEsFG-75!NG@kyUHy1UsP}{Nn0sGXVJ@0#poHmhtR8lYGnC#trUxG?`gZa z6-LC8L3k{4=XUXPBRh&M+72(;R&DeEbHLunj29-vKt06E4y1)!Q1r{NM&}on`&(m6 zuB|pESnPm&2%vd6Z4TA&9P=myq(dvWD8FuYam#<;r0ORvr`e0-O9mYT5|3?)ZYR$6j8=hb$}L~gj?s9?)SFOU=+W$<>`cRubB+A znf6E~J&(xmld7A`AO3CpOb%m;bVB4&y$}U|Qa&9SE5!#=PD-~%{jW#vHm`xke--K8 zzhtCR!XibOY@IIBSZk1hUJ@t*aQYcGo#zULqY`u! zYa|uu)2vUuC#c=N_HG%C?86YU=u20wUTXYZfc0T!x3lQ4a%&;v%9 zoMJ!DYy!uO;E8}AMolgXo8Rd~jl;@@h7GDeG450NF8sOss@K71nf8zBH{}$6uQqoB z)2*DH>2x~%1s1#)#RE;bj^pwJHw=)om^1K{LVrAiymBxQi~dYsogS=O>m1pG(H5AM zC&i1L##3wT0=33X*d^IA!+dUWc%8HvV97;+M--Lqh_Z@{M^5E5x4ubCz#k>C3%Q)NvsogE4TERuRv&m(H38QuvybF~*3PW3(|&gaIhc4u=a zdCC@{+LPa9s7=_*b6|S$sKw7dW5LbVv)#CjpPLTT*3?>Io4Wxtpn!!~uL`lx!#9n? z^&-Nz(U|Eov?hJPFalSh3Y(U9$!#f_9&Ez^!%pD&h@JVlSWY z>$kpEVrqs;kpzp&hcN{fHEqF-uUjn>1t(zo$X7qhtO7IA2-TN1{eF|&PKp=7t@;$y z2JtYpgOgDt9{MH8&AbOSo;1k~BE||y0^j$UUJnIaodQ*Z(W zs;oOfuoIFNbsh7%$rB64IG7zgByZW ziX+x#w~n@a6(*DAg3yV1YOcwK?H|jxhf)vT#n|qN1Pid)#Y(R?4W+=6aoq)R_sh}v z@e;DB%0bKfmb7X=fZAUT`z-wr>3Vv}lH+sBF&X5vI$XuiPqfR#Ppc%O?-Wb#uVb?1 zvu9A-gg)|PN}frQz4;dtWNiaC3Fv#aOI!)a=prICMy_-%%dVDl+O#1N3ZtJXqo8Lq zFG{+KarX*p?X|(2F7h2Q+_JY6G5+lvu!UiRe8_PYZNFc0M>224S_(ClCU;2N!tX6` zV)X%ev_2Sh-;M|baR`qL5ISVbW>LzP9ntWGH-10_8g6&D0tXW52rv9&!|ve2eeU+G@#ww zyW^NAIqhqlgQd_LYIh&bx<7V2s$cKH>SJxzD;>)cF> zgyfri^79!yrfwjh8`us3&_Jmf9DL-dn2jUe03@;xdwF)l=(lW-2E1$Gio~mcV?i)) z`oJC@G;DbF*aR~Xj&zJMKKwfUd6}_+0U*_x$k9mH$c`v}0@l}g>OwkA5QfIF$y5Lx zBeN0U2@!4q20M=w?lXqp6g-(Vsnp70k(O71ya2Q8Sq*;`xc=T!^lPyvq-dDrv=7xT z^itWtGYX6Pe00A!6WEIMPr)9O_x&##9n8)Wq2)Sf;SfQa*HvRDolSGrAf)#hQvlVs`MlpXd9`*J&n@UMn!#&=>p?W1{i zu7wInrr_n%I{#F!vuO*&=*;MWx&Z)h*MDW1yknQ`k3tt1I@0pb_`L0Wt3KL6vKFh| zNA+Dsxo97blAuViEX#Roukxkh+tQ4Kmynf}KMQWqF(6x|Ig6`1unRjB<09#JlfInpFZp9>+K9+^hHleOZ z0A~x)GA%pb#7PI{#NLi80@yK)G3GK-voRkFx$VBjZRpM2aj<5B8N8VR?7?2mNpG zv86&td$eXU$}}kD{RkTfnG+#Z?TKqK^Uj&cR?d-*#yb;b;-pim=sX(gORs`)2Cm*i zgW)(MNWNM=IKM`%`{$zmBT>y!3sdSt)mVl-%pgd&nt)BgvIGp#vQ%jYRC&9=2wHi7 z(nN}BDUC7CPf~M>7x!pZ(3*FjbMGiNnQO*e;94$CISoXb{FQi-I+F&V2?Zjwxy1jV zOkY2WO$FNii_#WXF`*V6MQKHDc8T01bi(TmK_=HU^4~X{7R?)vcZYRf25cYw1TD2s zNM(cACfA5m;4X!NG5G!fP+5a8N_oB|X^d0r*_S)}| zpmL^d+{Of-$F&AOy7yG3*jO5n9`>w1OUU4Bf|?0UKk0KaW@wX*`qw8~=D(O*(z}Zf zPyLlX;ZlbfJ+^^A^YCX>xbQ7zktHFyyc5H!Mlt&DUb%>#qZ7ug+xo3XLOAJ0z5TFZ zEhpDmCae+J0gVLi=qT1kttGXMH?NE0h79?zR@LNj314!|(bT-<#<0#cNN~3%RFQnj zd{*B1&_OR_#`pvxOtOJ2Hz3?GPGxZKf9r6jG6kz@HyH7E!J!M;jyydkQAQTMc#+Iu z$9a;X@8QxP`w1`+Ek&zXAhPuC6vL&{|1qwB#S*Z4;TaAx%`C}nfUYTL8gT+7cH{*2 z2uTdOzHKdV1{bP%otUZQnKnNsp2?%jgp=bqB4U~}hCJp^iP$VRZ@$b3U6O<3HO@^6 zbE`h=7caZUaj#q6!~DXHUD@^ZyHp~ zQM~aZXRFUc*K?#{#Kpk?I7zh+xEHQc-H#Y>`_gx~M)9z9@{k1Vw7I2JbPZNiw_&QQ zkzTtsAl>DZL2@^A2W?Apu9H#(gnofEFH+s!7@xTXUbuOeP~NOXGKtG$8mOU^<&mSC z;R;0e(HF-(njbWt6{oc9#AfL7H~OxEz5(t3`g}@^wD@|R%Fw=GTJnM?ah1Q4w|8ow zg(V}-tcW-3(~cU(){A=~Oew2-+Vsf38RgITn6E8-UVT}1*R+vt)S85rZ?Q|sWmJ5F zH3?*MO$zUyN?n+P1z$k|(tXIrs(F#?+Oxi1`m#1lA>`iZ%78yIDo{EDthb0z4{IRv z!O*>@Ix~QBcm6Er$(HOfAaz%mlFlyP-RTIa3pql5-EtlwWGuGr$0!Bz5 zn$1JXzvHpmm%eU(eqXb87N8`f^P^8tr$?o481KdF2cXH8@bCGDrPd=%Ol}mm!X~ir^P)9hnSpeoH*P!4f@Rx_ru1*0qM+!RVrR6w}Y6*)KQpq#+e!j37cT9 z^e<+2Rwvj?fX0!Wsu{pRdr)9l9|o$aXep9%xRh@|1ObES!SoerS%P~0*DeM09&M?u zdBe1vY{-kuQkJllAJ>Y`%E1vjGKiVoRo(NXSB~0L(T0`*C0Z(E6|fe%{))dlB-W0_ z&FGogob=e~NoP2OVv-cRx-yhy;y704#H7`(qpZ$yYN^*$Z~%+Frc&~#XT;_{;aBTa z2_s|B8ru^^%%`d>>4*m@&KSPt`EflKHs;L2D|+`WR-r_}+Hu-WJOQ~Oj=&M>a+99+ zfxA(GJT-`x_X^B-eU1#>M+~{vcED&d#-UC;<~?>)HD>NSvrKeveyz*9S@u57-?qxO zsUu-LTaJRcn?a}<9#;~S!TFM-op3;97v+bS{EA%r-&K|rWyT7o&PV;Yb9^Hs*!e@7 zquaTaULE@Pz$|Er)Mq{;q5_^2C=o{^v5`4+@0w;(;wM}pDNyU=c2nI4&y3<6!bjqF-mq zl^pjH6qR8!iEnaHnB!q{k*jeFu4pTeN%hiL%ozWRMzJ61JUyJ0)Il;$F`T9@7dDL< zEVWweWRnxVbgEeqoSYbr_}7UE9v#@>_tf!S++KA`Nn7eM1ZS!o-<_~X&_KrlVsH@@ z%UXPU>_&eZAFjlL!mzJEUJlN@H+*q^GoH)Y&+&NiD=6P!Bbaz-PM<+Ae4My@5Jr5m z|6Lt_38){EE&H`rHZeiF!evHy=WRC*4H5>Bl=XkNzv`bbd`z%H0b`Ieq}IcNuV3c5 z>DBYm@DQmjb52F3&gy|i?~2R{NbI)fL$CJ_2}W!E;J9VLUf$>{BM1r-GD%d+s*YrPUn_yB(*KJNSTtDf^+Ed z=DSsI_mAmAvF<>+_^bp?W3>DGJa>L2`aKq`m&=|go>xJ7u;)mjqpUJFR&eL=`FW%4 zirjAQmNV%Fd}^v6FcDzCG*#%}45a-~r7|szEzSD1HG?ckT zXH^jc?}7Ac7<2l4P@>Bss!CKxqWYP7lfi|x)B|lC_TG&i!lVodRlnRQT$|umWzsmN zJvk9`zvHTT;e3lPw{EbO-jkb`(~L0_G| z_x!x}M3O|Jh+%Ng|F{`d89pO%VOZ)gq`7$;^?um)T{fV-)8u2%g`FReN5{pzN9>nd=W&x-y+TDMlE6Sd%APbjvl zxJ5^%3y$KPLMz@`p8?G~@920Et{r#KxE`=vUX&y7tO1vP2o|^KB5so}81$zj<|Gcv z3VltYI9+lDe0JE&a5H4P-z}tduu`QLu!egc*Y?R3L7W`_MKkPk#paNP&85izGOaE? zD63Vf$;ABBaiZB?X8p!nfX6u3a@m>+0eWce2%QVc!m}ke6RVVU{fTZy)Bcs`Xy$ZJ zUTi*v`O-c5G$pVHrv3k{;K}Wo7ho{0wvjU`dTI#SPjx<(WlQ_u?Pt_-XXgk%yf(gO zA!6KQB|5IIX{d{K>(y|t+#sk!TzL|7{^_B}0F5RnaxZp3zQ5x$fIz_~oz>0jsvRj; zPBjy|;DwjNKIm&4Aw8c=q;}+4De5(8GmL*&(~anjl%HWIBpFK{yEQt(4-Yy)QOCo6ziyYI2D97^T<;jxIbrEOHDGauR`VQCcx7<}_VUm0?nq|ppi90>L9KLM>G+hq=f^T# zq^*rPw+p_MUM%x`lm#uLfzDc9b!zr$rGvLoBPSGul>4OW$5qiGz}V0NJe>yJ)_3?b zReb-<%lEfhNf8dQSJZh&&qVawet?5w!ZA}^tr_s7UY_c01WO+~U3d{R?f>1qtp(}o zk)fR+=p^-}*;rD#lAp-e_cv}bnHBuZQ@raT{>Tm4RRVs2bk$NYED-+HV zLG+e|4U=rxJUbANTjm~OzYc8H2f}Hlv2=@g=bQ7VwY<8XS(bI&^V?%FxQSz9>Rfh* zfo1ii-yMcc6qi$+g7RbgEu7mct_NwKD*deZDeYMZS@zI2AGU3i|7q~$kHb0TUff^a2K%jSE4RjPqg}Z$17jFom zWKq!9k7p&y9>BhsNF^L`eL>54feBGhk;8@fy$cn5-B@33eZfR+t5L>>eeUiVIX?b) z$mg9TXAC=zElcdsb4@eKm6sT)+R%qkDn&89z)&2SwIzN={o35r zr1aLgsO|fRnzX_g@&i&VmBAWTU43|RG;AEmT59Q&xU%AZB~ZwOuUF0+CFH&1dUT{& z+^!jXakz7ZG3r9AL=zjhM|=dH6*A7&Gt~$yYt%zb6%H0?GaM^XScXF)vrDp5f%)7} z)6DiJnb0>LzH~6dN(4u1*ZVqEN1-VWRqT+hz2K$p$lUO5WBAeM7|!175>A6kqiQg;h|AlEou`78R_6_~WoRKyYdLdj?(- z!>nh&#@pqK$cycdvSx*!Qzx!uVWabdCO^Z(LgHp?E~XeWhP{j4RAsl>qT)UBr?}o6 zyKlZEc7XJ6Cg6~qt>@EhfuDs!!WmCWYKVOTeTRSA_~+|k72vxevB}(Fg5F;!HY;$! zP)Ry`ujTbal(WQfs2=^ZsO@8NRYyv%C|;zi{YLvhsYN$E9;lXDWu$BKKeOh}PYGPx znz`;Zysbs^sp6HsAq8h@c#+ocoR`wFlfhe*)@xSbQ7aZpHiMkK;Hi5IXd6 zv;oWNMMSrF;cp8lygy;g*{g$CnvuqGxyK-*BgW7d6xQFzu5~>D8)`@y=BNRVC}F4m zranAX)4ntyj%E_E9!7_|qsWb4_LM1kv%(KKIM`ypZ@k12mjkHq3-jSL?os-z~IN#ruwxqtG};Up=BhBLJK6{ce!K z#HZ#83f~LW88ZT`e^}E{_6vDAV9k!2n7FYR)I^n7%hFX1Hz%x%MsHR5b+QOijDPY z8NbC|l8n=*Va$DOdd^z3EU0dmegS$9SbWD#X7y{v!yLkS`9UFJ(D5Y%29LiSg2Vrf zFoyDZ+-#mD9OMf~&V2gYG*5PMI{hSI(eadmGCB#V6 zGJ+{(?4h%*YG{;~$9MpPL08}+vBJb;xr3_H>JT-?&z|0B4ZLp0;3OS4yiiq85=cT} zKcym4#}YKRBjHy_M;sEQ9{%4|vK!Ea)v;-l-`=cjH_2nJA=4?j6RH4ymi!xG{&f(f zIoSs<^9*#O&opPN4K2~&FCckkej#tFB$ta$9mR^s%114 zQQC&0y&XFLs*(ju-zfwH%!#s1nf78z_E6v@kqpEq3lv#$7({7Oksccb;?VbbOYT-d7GPZIM7nI9PCd9E~k}q^*Yk{*i8tJW;nQtO-;t1U>;sMD_8rH3< z9UuiNFFktY;pnT}AsXk&*X97)-(|X&XOlfojqZIuWzk^#qnD8(TBjoZE72T1QQJ>} zioPQ(zMk>bNpy7sE>_-cFoi9NH-_xCb$1%=R51%0V&i@ZLc*Br5lMbJD~GD!Sc{&~ zGON8pHf>JjYE~1?Hd1kVh`u=b z!afaoAgaa_KyHPdcvz2p*=47bnUDDPL@}RId5UAqT($MlDc38Tu;Nr~h*(S^tFJ8_ zZ;OPJVTD(7?rsc9c$OKlIDs@!X7#E4kMG;^PJ>L6cHK?p|5n*vr91g)D94Cvydmdu4S z!t8oto(Fl{1^6IT29{ADk(VA?!6tB2s;B0z64PlX>E-H15c!YJ6>=pAW)?-!&cv60 zyrfn04c*1lZYLCjF`AM+YFqF)s#3d7h2H~p?q^oU2RY_&Ka1`4kso!{)YUjJ`V5ua z<1AWcH2Cy3t6O}(%6Pa9#Fn`wrHK$BTtVr$e50janAVbS*$CD8nUs2>{!;Mc&!Bsc0 zeN<=;7$gVkr0e-uoaZSG+^m{Sm8TH<(%-0b=h1eY?>KjM-TPkffV_AQZAIZF=M1_Q z0?Q8+*Ou($^MUP0~w!x(JB6n^g`QZ}U}sFlV&$5O&%op`b4Bms z+ zpL=z#jvI=x6H8=CE0T%XFuFj&J_LOGHq|kP@b>hL$VKJ1&-pqI3raxVp>D0`JXqp< z)uf-wgo1U$f>&+(m~{-z#B=j5Yrbro4-pa+`WuVQY>bOu@Z>=_J^yFE_jnQ>N#OhN z^#l$UL^!q*ppx1MKVDQbp3YXn_5pg2{c(}7E}wR;K2THY>Qj8$`bEAKWsat%sUyU< zoAjWxg5f%J^)>?Z8FC0`ce*&+zsMw?U&*d+3>{1ivEl6;LxCb z2N{%j`g#UrTc1xv>yA~y3oHRwevS!*LE`~ZYsG7O^G~@E?%u3{WgH?Y16lxFqv$@j8%X#WrqkMilE;%(9M?M|ZZlgH!+|T1tnHKH;xiLu8TFz=9B;f(}mmxgt zhw=Wm2NEggR8FRp2=CR>>5`B$Ry@aHszt~fvLn9mC{p#BPp1dp?ImzVXwoe_#DeZO zTnY<-K2ZdaA6^-RqD}i~gcEQt^HWZs1gap$FUZqirAI1Ijnn&J^j?5UJgGOHd@x$R zoGIeEK%NX|fnMGrpQqwpQ8W477L^#DTI_a#hbKbsNxYkhm3zZ8*7IYhj^XYxxt0)w z{dTtLlzB2U+h-Ku+sMar#xZPrbK1ZTJeW^)rISJ&o+cMOji7A0_t?~u&TwXx)B;Xo zA}z;V);hS;frFFm-fsiZKw~kJeXXUiwVKSkS^QX2eF~`kaJe@k63nCMX5kAZ8#NK~ zcVp8MWl5k&Iagk5yGBi4Hz%#pjQ(JL1X&hlIZt9Vd`Gs0R3Ci(gsV*_XdFcyHbxV` zHtf0$7&3Pxxr@5B2fsp=Qa+m`p-A4@0(Y%UOY>94X`~j<6nd=71>^WxR_L`lt&=Oy zy)}cC-)n}rJPsRBnfmwXmbrAAK-;}^$lLqp_H?t3;&Qyh`)+_;LLQa?SxP7*Fhe9# zwcu$x&A?+YQz-W_)7v`a*aO?j^Jro2L9oy!9YK^_ugxlZwS2r*g^nnJ>urc0AVkc^ zs3$;@b1bjkcybQY~Ovt^5dHo|~%VBh0!38R*pBifCUe#dBWvL++t`TR>=c z-_KNZ4NL{gjB{CtmqsxEDg5iD+Z4M7NeQE0f@2&*iuqO9vaETO^b9Yo7zTu>j%>Dw z6cNNq{JYG#He+F>F)tJC_$1QKG(9a2h5}GI@eS$?b0Be-uQ8#}C@7Ok@Bpgmtc*Xj zaTYdPF?9$l%ubHz4A$fweKeHGdcg!kx5rThCCA~o zpKHptA|JCv{8UgbvOTlEpd`+npblz3iG=pC0~i+&9;vZ4j_V43mdJMVUrc_ct4t0M z4WFt#W3XL9MP%JgQE{J7cL94UElVDTCR$$wY`zZE+qALqFWFd&+yy1n5KHB@EyP|> zNQ|e}O>)qyi_G30``GS9f?7y>KMwIIx*8QN#b9b;NXgD_mg;pTrRfoiy zKod^LJ2~k5hD#n_LmUHrrMK!EU}0>m&J#EKhKDF7(&7?c2L66F@w_>IK?t>F%wHNd%V< z2$~DWT?#>|V{Q02<)qT9oR$mMX;O|7?PBF@$roDn*<`!>a=?pCR6u1R+%JW!n+7bgv%e>e`|p4JwNrf_#EE4^+)1ol}A_O+-Fx;j%&dQk$YoBrE4Q#BYX?$8K&|U4XY@D&FHH$$QxqIvj!#;{_X5?x-kRn>b)y z!8prp^WRcvzc<6idl`6NGI!!|MH-fTZVK*<$6xa{rqgMXx4ei~nBMZxv<-}r*=l_* zP$ThXDD>L61eEY2c~TYm8N-vdFId9rtN_>Hu!w%xKm2J6DK#aykjm$$6NrUi(_^06 z&FFLRBe7*yXE_B0m82Tta*W;i37J#`v)>?rzP2ArR@)>l)~y`mvt1;xY$qxACm{2) znkBj#jm?heD_)lK=jTk^iKv26YUD6pP8^1Cfb>>Vb;wn*vUg`+>G!0I@YGow_C_3$ zi>|^;Dr|z^&WYGueaL`b3i{+fyjtnNlmQv=X zlnUa`2k4=BeUbm5{~0%)2|G@zY){k==!;2;St%CC2S4X`e>Tq@NJT~0oPg-}{(g60 zR&%0lYu4BZ{`0rsYtvHm&)N-nK;JKiAF!yqP(ThxLiv?Yxyix|Cq~t1VXq!CY~hcV zyj+dvcjy$@^LID*H5}3EJ(m_~?cpy+=0Y}J!$(j`33=&oM#_9JKdB`>YRKZ^KA(Ci zX76DmZqg002Gn0vmmh?LLF3^Hem@anWprZZ_ob{!CfEX*@LBvV4LsGwbUs;7e}cVy ztWU)d$Uf>ki#4h-07rw|M>QZHSShZ{RL43w6v0R@>T_?U3PLr*CP zMFmPrkSYQneUf9(BAWRR1Yuj@kF+ZLMfk5UI1RH3?u!NES_`rXw6Zw%EIrDLZF1OXx=9g%mq#F$NYkud+tb3`X;`662H_q&VH%>Vo!xYbnO^6^BI(qX^x#eofke0>rX91-<6_;x4k zh~5Sc5x8zS!so9tqLq^+>b@ZW3yAz_3qI)UEi6GTlyTX1M7G29 zu`FXdrjO=YL8WM{-XIs-C&6Ke=@9=QctQK9vSpI zLSy`+44J36+NS%9=w27K5%d&?Sv-*Eks7L0124g8Hrxm?k~1MP=(RTAtw|uLsnQH> zDjKW5IKFE0sS=F~qZgrGs&~PovRHkvvXNKC+0}c7B{U0%)?KEGa`#=srF|ys$G{e3 zAc4y(mbchCK1Y$RuU8ie=&t!f&~Krp-^cpn#B-r{Vi43+E+%~kBU(`6Fdf%@lo*B> zh(=g44uJM8%BC!BafJ-OlspO zYj58*SWkSI8KHH{3tDY13$osTzD=)IM~4sPiNp6N1B0ENKibI9HENCTn9Z9_Y$vP( z7+p?Hm5wx0F^6`ax3)Ta5eDT~_2p*JU#$5Yc81ENLNFB@(S^)A0LjiH&~O^FA6R$* ziwg6bpTm*vm+XNMEb1n-M)g~zVauC0qG-Vkv>mkx{-)hQd|ON7bDi7GO4_4Q5vkZT_QAG;V9ZQ+=<+P{ z-+nxZm)(Cnl8={rCGp0Mt@gW_Kk@MVdIcg6HCd_B zX+vj0tpqU72R??-cBSQZP0OC_SKw8t_s^!5W=4nqd_!$AKdp{9SSClsdUXaEqE(ZI zvq$}NQ&Y|E=<7Pass?G|DXS%Uxt-mhi9;%&vkYaf?VZ0JcN(Ekq*|oXJd$R ztY5bD0;4}(zN~~`R_)1i^(7el$93jU(qe9x6Vb6`XFK$Ga4Ru5C++Yp@8;lF9Lmty z(yPbZi^!IR3$|)k1RquXLKgNi^V=u_j;vxC6(CvTEQt~K4^sT^S7tRC*OnI6Sni_&J&!B0+VG ztD9t$kBWWuTus%pd_xoS9y|#SO9#lbu=zKEF9DYr2vpV==qF#W6UKuVexlio;f6Yc zKRE+Eb+gk%w9RscI)qa#A8y$(`lq@GU8S8__VS0tz>5RWVxtKS030V*AxU3o5{`SS>35A=23YPmjfM zcATjpAvaQ zc)xyh%c2g`BIV#aQYVdw%cVeunM~nd0@<9;6{yP#aC^P_LlrV~_k^`SDt4msabt66 zF84M;QUmzNlbtg~@B8V4#ND*!C_HON%VXB5xbVC(7j&a*Sn{0(SGR1V6C_js21{P= zI7&r4`eZ3aX`;G>Il1E;fs^mWl5fTV4D?`}H|UUiUc%LgM8dDki-Z*#a-36L`?Sm$ ztl*f|PjA4=EHp<~_6 z5>*~rQ(V`y;}fLUz9N)IADI4A?8^hscHt_G>O1Qi@AA6s)4tK4E_w1ou8-x17}b-1;N9 zUHNKxl^sBcnbaZhZ}GZ1CT_7#uTWka1P`w3#6&30$QfOlAr4@DNrOYJ*1ChMlg@rX z3wkLMD(|1Rx3=PLOE{MN0<<`jPFKSh&kN0UnIG&hXDZ>lz#5VTev!6iQ;3O&U7xCkk}q-wX2M^vQXWOf6%~%d2O90R zuN&y+#L`s3JD95!F^HJ8VXjZjLGO13gILS|2yF`Dnlo%<(awFbGc@U0QS)t_Yt^KZ zW7qvrvAAQ3skuqPKw4FP>BWVBc_q7(!oZ7T!MMP5veu|$hFCHQ?9mJtaHqhYG$&6RV z;|9DcC8xEwDSot&t7v)x-T39T5Q{dupbS!ESoyulgot;jx7rgW=FE^D{x;+Y$_w(y z=$j`a#&wpob@7X3q%^?lH32p9W9u-_p?-GM@iMM&vpZe`ZnO1&)0K z*+t{FQn))VgK-fMWy#MPerb8BZUiiYcZ9SgifdX);Z_|vvzV>yV`T!tTAXq4Q@oD; zVx>D&<_=!iYX2w3(2I8dP*G$_fW8ak=;FDPQAaNyOoEs(^(JE#|L%}Degjqe8A_NM z0UO}Z273ZQ@ymVM#U!yWEqQ%GzxM+S`?CV1LIRlbE2J`-9#_dT&OH>-@6l<=L8FEv zXR#L<2|M@HW1v9{h2ygZOnNtzbl+6f7fq`<8SGgN+7}jjb2{J2%SxA56ehAO?RPt_ z&y-uCqQBa9Lglf-o>;)U!~}JoA-fU-*U}ju8aHv@uCD{{5zdST$CCphuD>Xk&pxpQ6i_9H&i}l|<+@S2@C(D}Tgr;o%6< zlBqKQ)0cT{&~y60lVSsI4e6SZz9C9gT;``^ZHVA7!cq~s70Ss7c6jgmEhf1s|H z0P0hN_7LHGk=wZOI$`chsz7CF(WoKnAd?;T66A^FSXHa>HCmQs|NEAdhUrWQ;KDe& zM792u)3u*lAfncAT{?4wYe+t6iVPGk^}<6$_w3+rAskVfj1zOm^ z7R$*_@LIGZ&FK!_dVDr0IprrNn*PTRaPrY9r%qY8x$6L_cnyDM%kH;!)YmFp*+seB>d1j}eO zZG`ldOJc`0E2Ntl7Q1VEmbdxsK|O(Y;^l0wbHy#QfL>@~o5a-DU3Q*_hKD#!OwA@= z?dKvbh&*^tFx4et8j=2XNEgaTEJ>3fk{5Dg=7INt9$46nRa&qG62hxH=ukx1O`lY> zjp+~hi)0MX%Tr|ErFWbZMBw+ISxQkc1y-_?1;z$fA^DJqQq>ETjfB=f!Ruaxt6O zhp<-bNTbiyn^A+_(lyw9~zcXp++vV5Ft04!p0>ldxpThn+Pl>!+r_EmDQZC%IQi_`MM}AJEzgy8Q;| zK(3?RDg?`@kKP&kfL%4P><+2^NX->N_pwv|6XwK`X(FeciBM|Pia@vD%AMCSG#>?C zdW=W?|BCcvcOWD9{)m>6Jyqo@OL5PlIX3+<6j7Am2^F9L+O|cOET%)MiOj?+iY<7tY7m*JHj%we6`y)LS@rh<^7z`)9UgPxJ2UNr-Z#! zXw)a3P+Heiiia`|1j_G%M;!*=@{y>(ts@U$J}xJzU|(uTUp#;608Sc=WJxD`mK}3~ zHoujw%CR2PuLK(xslz_=_T^^@K)lpbU63O{nXBR)0ZrFN=v#zQ;};?c7~_rkg=b@j ziA&QgNJESLOXPTj#a=TpB^T2}jyb8!M&vc%hCYUmh8V$l9<5_@6id9hy6n6SdK22( zv|v6F6^tB19X=cM>}-1-Gxz2IUMZiuo`q0lSb2s}wg*~i~xKvs<9z)KucagBOx=r_zg5)1U{x$3;DI@g{h|syQGcRZ+4B zvEvAZksU+ml-KsD(lP;+=66H5*+Z=QzN*L370ZknVb8LDUO1mZuwBkE&G2T}$c)T6 zL~)I?=m7zx$N-zGbQ48drC9<65Xp)1i=>CYrGvGQV?9HVs9NIL;_g9M-n`tmbN1E- zITr<}7)OJZ_|rGwS_YxkC$YXQ3_sh+N37jd2*&`TYxV+jEv>e5V_;f>eD681qWuD( zRfUG7CNY~rI#C!(pxm-Yb~a&qTAo5i{^5|na|=Wv#U*I^jbqP{X`5I)3NY}Ty`s~De!O0M{>{}`Nhh%E~lNHN5H(1XjDcmQ|3$qFA*X#GuSz z%xZe4ZXed++l%Q(=-fclPrCW88l^%6@)dEGvP>jB>>&J00H;PwJh?JzUM~`c-Ltu^ zaM87vNL(}$ExKex?%6HKGHsOXz?0u+rTWPLzYrJL$nXQph!d9znMqMYd3o_x zQmU!rsi(VBP)=?&rGy6@&-rj-l>0F9i)0%~{#BrZMTZkwbZ;^o;oFMtQ@y?6I<)Hv zpe%)gxpeEpAF|oLW3TJg+jopPQ++JFL%t)inZ7JHSY(TE8%0iI^!Vcep~jqPR(;njpy zCT2`xw`BU|fXBP^79s%&Wwjo*pvsDn8$zW23yv#QA-;N^Pici6tHJTcl6rQ`AjduW z{oab9mzRWo%L<1@PB}5SMV!kXA4FT}oQS|n>%5HYS>v|e5(7mhvX<$Ct7Q7d!LE|@ z<;Q83XclLf6r?VFF*>rX*N=*GW(bd zu}_RS^U2#rdd7c{Pf8~vcqO_;@hwNgp-IE$-+C629-_JFh?PMw(z0$n(MW-qi9I4_ zb58V|?$?|y1hX$370j zH)T2$yk4!&$Rg7Hm_FUA`eO~+)MJlxC<%PgH8ixn3QmOvJcobCsT7f`P=<>b@Y{%t~L)c zrC#}-h6ra`P@e{-;I$ zcE{vSYMOjqxMgv}!g3_M8$lD!bsYHU3#UKgOoAGAQN!Y6P{Yf#)W6?9Vb1lH#*bbz3*9evd;=#x)V*Dxu-qJEj3nleDIn{Uy{_V z6{F}ko+#gb&Bd_yEAwUi5DKv`?T4149xK)t;Y`9usZ&-RDl?crrmIf%uAPTlPSB!5MU z%(#1)_QfL zXgqao#`aMic0rJH(dYmZgoGmA8Ifju^+lQh`i=q>Y1T0$qshW~CWk_*D!$6{^g}EX zy?bR01DB+`*x*ivZimSi#~6-1Ju26hRppFudS122d<4t}wCL($oA&37AVpV)faO4v z*t<#b5U)k3s7(fKP=y0j3yTr)$7$@`e6#C{#MU!eDi>*=c~yg)&15`#+j_^g2bV+C z$LNxk)VBggE-Kh5%k^Q0sz?2UEVs&|Gm4H?=US`7Ta;8q`eYAk2g%YFi(IQhYzLm< z3&~A!&($tK+ugo?xIUwzPlUOLeN+^?E==P{x^noA3V0eMW>GKw&?ii&|7>L5Z5S2K zG5OeW1#tFj$Bs%k?`{0BQL)K;%q|G8mI;V`6so!~iC8o(s!!x0O%BA`^8y*t3sAgw zz(0ku0Cw5YHTz5hHr1b6JsbVKUZjyuSW=5xD?DA2Nj}E6nhS(xDtlLwRLy4spnLpM zoWG=tE@Pa)G29^`pdU|_0aSr_SsCUXr#>#v-m#!|b*R9zBB~ z=g0Wf@_Oprs&%>gya^Mu$l{w+ktu~&Kn(*?yEouvk%h`hZF02Yv)gHF9<1wyInrZ4 z$@x?EI`mqQU+Y5hUk6@&%mBOuKjc4lC-fiAWlN_(UN0M{#moa1_T!x17tucnKhuVCDJ?ZNq+K_NQfI*JRGd&_a!79v{x?An4Dp)obm zu(LXt(K5yZ!F6ZS=k(ETs%P$a!|b?mVw-rFYl})SQ`B#PYv@hfC?3{B2jgwZ^J+zN z7B9V*8HZfIv%twhRArF!XlV@UD8vuPEe2!x@MZh9NA`_;55eD&KQY1HX+}$#vO+(9 zEwyYHn##GK)ruV#MYO5?O?#X1UWnM|6{siY-y0n{1n8mvC?)ow2i3I#F(;Pj}~*pOP

4Dt0JQe>EZ}Pk-4{B$X9GnVaU@@p&eCG|%;}37Rs2yr^S;g0^bYz4_6_BW?OocqHFt^rB$)c!V6|zK)D2GD+D1* zH33Q&niDtoJVs5T`hb6RkUYcL z)1cmJ8bi}?T+z^jg|Wi=PI}vIth+dV;h&OZ50h6h2a0;8ebeX;8 z%+F5W*O+66m$aEHm|u>G)oM5`iYSfYf12+m;sj10;@TtaI*2JDNI13i;*c5*{f5b1 z#~n`87$bzFq8>S#_zhPOC2ahBc+xpM!L&Vp&YXXI7AUIl$95( z=i!+|&x5ZdBhjl|OoB#hSJFfpLbVtCXB{zypp|mtp)Wskhgs)yLOV*rb`pE(mFh3( zk@X@zG#`n_JYwzeHTDzfbFzJNYOZ!KCn@fz_NWZndKfl}C3It`DO%`}2#{Djrh8V_ zPbVL zPZ%P!hs_)zLUn&*RYZafe!#yk9#BwwDjBjNZH#bJu}En~Zr4+zV^bs1dV5dLfEdB{ z%HD#r(0!w@?G5e>>$eIetk{9CADe@M;CUh@0RCQi zQo^SGR+IhvB?jMQ-5E$DhEzgGy+=ts^OSp&m7GkT*)5rI>{Z{@oCBB4z{%@kh<9xr z!s&i*S7o``0lP-LS4?ouoyUZ7CH!r-l%+QSJk?yg0(tv>pqYR*T?*mJmOe|NJcV#T zR66KEIBHRM63c7Zk#Dr21j3~3WFFQ)8`j(*z)O4^3fgYoRG^xpE#K7X`-XHll-wq} z7E2+Ilzxfv!J6jZ?2!+P|jA09#T!}{QqX9kw{8@6-`Z6 z67dGFMuG)#5f+r$ATDGoD(t!B1?QSnrH?KhG%4#YMIbx2%`Ec@E^}x zkC}{@{8mF%u(Z0q*pTf5#KQSYo_|a^xl`Ws(8tUE<89p!C*$+#oCmrL>PmyW!(EW! zM;>QtbYx%QWL3mRLbW^eHY=hGF41;-E&4{BLZt53T;D|2CzWNK8XUX0)8h}(5~qR~ zEMw%VCfbwI*PKLi_KIfANPB6jgR?jq=wi^%7Y!h{ag+2eJQKRIpbTZVl#B-OXcbD# z;gZS{xchX+r^vHIPluxvnpLqMJDssybB zO_2hhQGl*#^0{f+Ho`owh8HsYDqKxUMI~57yv!T82f0Hu&sEmBLBToid_(fv*2zN{ z8Ew2UACX6y6l@7h|X z!S|4$>!pXbVlIyTAx&LUkE@|>5O&3N#I+t7%0EnBzQ9F%Uz+^9b^+Uj5g|D9cWU=5 z_Uc3;xmUCXH#bz^hUxJyklT4eRBlZ0Ir10`1nw=r;6T9G@zdrvUk?NCWjIt&&GxQP zcXS6}^~Urc5?@@spc7DtHz zO%c+xJG^;9qJU+P%#)`-x536j#$@B+>yOo@RU^0^rpv4tduZn5?Nm?*Wq>@WI)M3y z#u?kTVd+}Fqv3*A6$S$6qSpg4%Uuk^aLiZzqAYrfkGl;=xO7f z%dhFU?CaV4P64<7Vkyx#b;7F5-*)nCIc(C^Zo&X#|21$F_Of1Lp&HYILVL4^1sR)% zhLNQRWluI46t|PnuOM%nhnxMHZeISGxI!)VW1%Z+EqV|3FtZxk<*wG=SA@3i%VDCj zs*a!8uzDlZEw)LLnwzJ!Oj;=!QfFxo<4dLpqoBMmeDNAmk>ZTj1L6WSSZy1=mKyH6 zLnD-5fk@k30^>#pTvf(ecqZP)UwlsAA$yU}O{F6|1b{E-QFtaTk{zs*)(qX&0?_dl z#0K*{%fN1KqBGkl*hto#ceB2`{RnyZiP&SB`h}=C1dGgmapwvd2Wxw@ zDtAf)E?y)hYhG&{zQ$vEhg&c1{Zi`p=X)v3xnBhm=0LE4Ts8$S(pDk!T^F#$sp$DE zhYrFc{y^X^O~ea8bG-~Oq9mR#7YUFIf;G(o$Bo1cc5FEO`qD$KQF~6*PAnh=>eB@a)4HCG~z+BspN9fH_Rvvt~R29*B1 zGlYm>uFG9FQyO>1dv!$I@9KTWcSHts(`5!4=rvx}Idqk^+r2(p z-G|wyN$jo7F>Hz8Z}PXw3J{M1O7n4oJs~@0&5}o`-t47pytmF1=P1T->rJ$y38?cK zgUzU-6;UuO?&Q9hcap6CBGo}?d6K&y`)AtXZuJyut@ynqWig!_Rm;0Vf`5v@p^R0(N);=y-nIUiDU z?P8s0Qn$@#Ts6dB{45pL-p*&o7iGa!P6v8cO^qWOoh6^AsJzz{$`D@bNbE71&qoA) zAp+cf2A|sR<79STsBk@ejLIMG2CaF#Q22*q)C3EwKH1A&@DOpi4ZRpR{@unc{RApb zZHjJ#rB^TXGsz}4;MnXP{~e$Ileo~TmLa5<4q$6rfNhlstl3jTCmb=B(Crhb6`)>p zN9{ZS3gXqHtQP<&!;yOE0D!~zyrY<66sJGy3&{euZO(>43k^_w=3_G4LcU&M9S@(O z2YC@zf5o>lQr3^!uv#x-lYLfE|HF(9={PMmH|{@teaL?m_#jF>x&dKW9xLUp-8|}{ z&mn~9$RIM+2>>@cXMh_vFumb{42Oez_p?UZe#JdkTQ9jL%t(d!$06UhNpdl;Yz7z2 z+x`<(IypX=i15a7T{956BFiI4aQ2sorat+&%pgwx@5-a}q@$&h@X5fQkGTy=s18P~ zIkTOT{d?d$24^84K|rCU_Hv%M$A3`hqruvkT%$_h6wKN3p-@=MfML8F?Qox^UYnf2cQ!>X z*1{Mc5wJQV_tpdLF#DYOly*mdtKhqx+NYa&3A@%`q>OC2b(5|kp_{v|Fq%5hg(ziP z9s2Dt#m7fWQPsl55GSK%rFxUjIjGVqu%nLh#5X9k8fh95V^4Q>3CGG8a(j0Rr)DM? zaGmE%Pe!|-V`X=VPvV`*$rELrDu1cOtU-LejA7-j;C*@dsP|j;%HU{$hJOEpmoUH> zR!!%n#FEqX4e{yH$DGUUmNoQ&7B^toqC5BGco7$45T{F4c6^(Q~hmz5X0JD1F2)u z@3=+u3B)R_xaniX=R8elR#ihlOcWR5ywmCVxf@k%YdOvs`{_i26Ic+BYR{fg39VIs z`2YW{CuDqiOF!kBEN__M!{|=fHLqKUTCYQQEoYiBDE%DKDM~nyY&o-zfY%I3*0$o( zNtuoUkRrVomw%el>dIdE1=?QAm5nemWQYdb?R@31e0P{y>bCR2Z6hQ^sKhmj<{<%_ z5MW7GWoVKw?RUEq2=dlCiwjVz^=*2Ak3;lT^hcm-L9~{%548BUNK#{GTwjX~0dd7B z19d|cmxiY~+&J0f&mi6`7!7@O0X`YPho*XY*msay&J#7L?O}hjrW|}G`hk_tbR`~+ z$javty3v8~uu;?8SnR;3ZFaXwl6j|bM=|plHsU?|!VOZN%~VQ+@=Dq7FH~4Hr+T4} z*jZRPd6u8wp!S=JCDrJ!Eh1}$?_8b_Vm`!9CiVvHGU&0Q>LJ3Up&N^$#I^3W*7NPY z5UG7u0MFL-IumX$G`R^x5=p^FTQ_xS5xA%n^2!y5~zrJ97Ly`I+R zT#uCIBtKqWo+9R1E2^lN)o3IuVtYmW(b2}xVN;LzV$%elJW}j82jVMW-xG6)E!}QX zQY?$@)3oE?*U;`}DsSObSWzN4wUoFeo77sB-d`MactuMPeDX5`#Fv!i{RCh>LP@4kJ%rc#xa%9Bv)nM9=h~C1kvgLaej*w4t-4>2Oif9rn?zc@+ZRUxwo{$g zPQalOh4KDus(U-|Si(oXyO~)O0^{R;fIEJCGvIlFO5z-7hRs)jlNKL|4X*T6OnY2N zI|)T;|3o;R;n{(-&bejy%p7zcJchZ$e8+qCbkU?@Yot4tmwt0x-+6kw67R>BmA-}6 zv|_8#SakNb0(O%TSdbT^MpzDf>Q0t~-u3@_& z4zSgu>7{zHjSpe+6A`sUU;SBRr-knVpS$4EK(6;HboM%ivs$+={Tn9lR81rF{z9;m z@>fK~pKlm!ry%+?RTPS?HpZwIVE$D(UV{HGwd}J`<7$n8(P2&PSoU7wu1%Mckgdl?W6M> z!mq_wXt(-T-a_0qol48Lx?I{lE#xO+Yz!^Yk`1|AI4L^i-DEIhRL`NRkg5j zkgDUhN*OuFyS;=9<-q~vr#_=JKfU4*5{)`x^TBly-EOl@fJ_n^&3XiW#za*dWkQW} zyfgAE!uGMUb4|;Ev#w@uquEo)xK~80zC2UbFaE~QQ0+zCo@mLzZ%XRouq(!S5l5rx z&OK8z!I?rcNkkTyqPg565fs|&^R9@{WgGSW%57Ed;X3!CQ@}HaX-wIV@y*izS|yTl zy%oG-r>A8AOU_|i#lYHP1R_}G^{OI!^3{Q(X*>iLF-pH*-pjZvwTT9j-249 z*`Ew2q?OuJUB6R)S{i!hrPGEKszj{Ya?PT5f3v~Mo^5gH16FF^j%yJWoR!VBNpDYYmjhU4>|KR!QY9zF-0p; zjeFuEbLreY?Mg3FL7L8aC<>u~=O&m3po1>}SD)=XMIaZ9mbb1HCmBeoXUc6obBwY6 zoaMY^kasdzlCct5H~uBYpv^!TT1Hp)zc>%3!OFykNbEd{AuItO=S8hPo7*ooST9JfrYaj

5A#Z!-RR+tjcnXo7IiKsaG?&!jT2wa@&{QY57S14cJ__ZdeLMrdZi0ef@BaJSGBOqwkQp0))zZCxa~YkmleJke8B`dNOl7 zw9B;N`o2wgS<6>!on?xfcqex6)Kl2O`oPw)A=UcT+|hhCpQOVNFh;WZg)TZEiZ5>U0CIMvu*x@qCL9tTbJ<_r+Gf z*{+Dn>ElMib5}eYEX_?-8u!q7pBi89#o6N*%4xbcZdYN*dDLz6PdOti{bNOszNGnU z^wG5xE7#nO%l)1oLQYnkd~B!`*@JpO?SBrG785V6d8xRMHW(ODalfx`7vFoJi8EoU zcGtb7Bmv2K`~sDg0#voa(0@e-CDw~>LO(ang}sxMfm-DxGjn)RNX449)f1kYeL|TO zaQEP5k$XM8A;pYH^Paj^9?*lwLBSedA#P)jAkLB*%57j}?im z+b!S-Ix&V;3^&cMNH*D?Hc#>xssQdsD%}hy^$rwn5$9oX3a7;~9Cp0$V>?p7)*cTq zq6@`t3p}om?{VtG;EIM>7|6fytoZ}1Zqo${@y`DI1gr_J$wInUDk@#RrS5Q5VBB7r zci8!}c4mxW^Jo|iH8#agV*SDXp93NOgn#{?b0b6-xd(fF=pWE2saKhMlb9mE-SX0s zVkFR>uI}iD>8|-4#0rLv$aw~4*?^C*a}2PnW*B`QwXd7%O(IOD{uR;+Vw_Ngs>WYd zs7;Lr*Db4NAjO>Bv{PSYdu0h{%>mrnhr3Qtg_qy^4LR_D`vR|IA2!M?Y`!F}5e!Mj zTmDZ(wKy~$9#9KQh#e)v&?6lrQ;=%HH*Cfd7uv*wYcXH%y4)GIU@5#_2aIcpdQJWU z=*wpdkl_trERrKfa~GAJpKd%)aI`U`z2dAp7-qd)UV`s8t^iZl z3YU0HVbODfi)h2Q?xO z7-Q67a6_r?$#eZK?Gz7G<7JYI5ctRf|E%K2N?)-W(QUYHF=Rtt&`l8qsE=LrA(;l@ zzbNZwD)^9t@F%r(c%GqsB5*UxD|4aK{}NqF=+@l%$rlaj}JRkgY7uE<7f)udC?3TMnmYuN9OXgO+z+83mYi^Qfi?k#OZaOBxG@Ix#l zk&A^i!SD{}GcTCD9Yh?ZZ&xQ>$N?V^M#1Fkl`a)8v8@1k@TgB6ib%tHk|vWOT*0~X zgA>N$Pu;6D;LURIMdDsVzVd?G+TugcK+26}KIi|R zwF30?Ug67`BItToAE(;xGjY;+Isc`opYXh2yI(U8IgfPHZjH`q-vE-3jCn)!ICub{ zxw)+DxH^Lntg_>z2bqF-8`DIz{jA3YjQc}g1@F+@OW9#|LKt;3hxP*a%(94l{*9w~ z#mMvjUw|<9FS1;_L~mZrA$c#$_#eh%2EkI>k@7(~Zq%?MqNF!wg0P#&r;S5OoahG+ zfqX&LXG5YzW>i-z4hen)x$KNf4WO6Zuvw=80lu$CJNSyCHBeeQuCx@xjNJq$=cq>I zIv`#R*8^4t&$}=RcE*LHAvSVIzCg~H9^U$``%(fN5wk)ydqZtgRBIu-qhm?q(q%=L zpcc?84$piRaxv>9;S1d(m;s8fO4ey}I(78Wxgh&L^wj*EJS{pEqE)G%Jy!~HGkE3& z8R31{k7~%%?n&U&soOP zMqOtILvrviDS4Uxy8|*L9B3;#e*it^QaaZwOKqEsbeu#r&yzWkIr8ZOP_vF*S((5 zzzlO=N6vPv<4CNN5m77juefX0(lu}ZsjcP1(VG8f1pgghZEnX7BV?H-7u7Lp$y%ts zwo!&C(E&yXV$J?`+i}$z4vWz@76{Sk7_OGAJvT9qt1w1|adLgsBWe z#)-i)hr+Uy(A?4RBC@E-{M}-ql)Vg8gmAY-F{=wboZy#U;ucJpG8zy~?$EPJaDlrt zI)l1?%!Si&ml?Y6_9S%1>*(=MM@AsAW?G?2y06^d8GmIn@A^gKaLHHh#6Z~z|1La+ z`ZwVyn?xbBPNIVL;&!)fKJTB>3>E;9i2%WZ=x=(X`5^R6|KKSG!LX?BXbuq|SXHn2 zA1kAQD`OI|h{8;&oT09P&6k}e^(nsjN#+kdw)_H5L$7WqAB|0TLpg+j9fV^ZTC@zZLs%QxK?%83nW!mQ zhHDDKV^!jeT;077#s%wfR?!N8wt*-o-*q1AeUeyk;XNMrRohzeba+RW9U1IY-NkXo_@veRmp&ClZ`5|ZYEYGTjB>^ zh2h8{L8|fZsUx(M0ycp$=gyC~8kW?sngU-^-W5VRLZ1r98}=9dWbm2xXo8~(YS;TcWDtM%>|09yj8lxl^CjB?%N*uWYRqlLUgL%XS#)JZm!RwK`Vqo-$q zy7+DlFJ-m+-C*;+SBCci=W!ux#|bP%4T)3z{t*_?0TO3YoyYHB#9ZC~lu zU=l`%{gMgTH9SD4^a@X>o?XI4EhO1*o0XkwqR`1jkPX48?UwSaM+6*e_(pZw6a(=} zu+@l8lmRYDSeW%$Gm=axzK_NwWT&ni2mw;OUXZ%~R8Qm0suHO&v-vhxC?`VYy=z%2 z)?D2(m~t9t92S}ju_JrOsH235JQ|V@Lc4q>>61)-ZR9iI*p86FSje{)R9ToXy{iXK zNuefXeASr=E&5W)Z1J-Dv;vAYmck2&1uNNA&%%8Gn2yQ1O%+M)Qsvx5zIy?l{=}!0 z7N8799}j!BgG)oFQpMXmvv1l=lwOTvAFoQF4rKzDl5$K!Gp$ZUDQT@W!9^`ROItzt3zfiZrt zA**(iHi318N)}@MZ1vUFy5#k=Q56Dm*MYxwFxA9By_2kYN_5{KNrKku^ zg&I!0;gV9pT&!el3_$fYLce!WlM_ixG2^S=D)vB+k!Tf zwU?+5zwLc;EgPzxU$6mSw4ZneTsA9~-e)j*Vp6UlYqJBNSmj-wj#}T!a?&ZzODRPI zovT8+W6H>CNMYm`v}nPv)wwHyho_C{TXoC_Jog?;JqTD)@OytIkW;DvPRr0`8MGk< zo?59sF`Y8aMD<9T_t5p-{p5fH9HzUEKI1Ex`_27pP@s{@Fm|YB4LEd4ALR~MjDXR}2VZr-`9M+6{Iq0?K?qOLv zz{h=AQx-b5j&2~w?tS)Z!UvrFvqlgNYIH{Z6{R>=51l7$j>&O&$0ICiRIehSP8rTN zC5fEbLGvzu$&q#73dJf&eg?*I*nb&HJ7 z*8M^IA3qrpY|TPJ`?>0^7cB%8?8pR3O9*N)l_cbbs`ILQxIJUMau#b38hprK{{$zC z-#aLoeL#}8b=AGM9e|9VHEuV3`|lSdP+JJRszY)FC6?z;XwG%06wQvp+};;TP6Duh z2t?SEtWc`M2wIQN7Tzn9bLJ~Ze$|`c$_45~_SbSkw`8N=YR2Kd+qp1kp*UtI1Z`AW zSWM1>0Vz?8dX^F41p)10yfY!T{=(X#L}mof{&R-70fR_N0q}s^>F-;O6Ci61hLi`T z8Q*RfMTHf!NQexW9DC5K+Y1%*kC+r1xu>-|Y6SSZTPcSPu=xEG81V{Vg7QO_h_2->bu`1}Q$%QhvN$?EI~yw-r}m_D zA&L{`LiKn*o3fGK)uBYJE(*^dIHs0}JdeMYz=u*)V$nY}qrfMw=<{ggcS$1}f?y&w zAWa=-hQ89^<>2$y*Z6{fIniK&pX3Xd%YJwS;`2t`Nl2h!3smj1R?@kjB!x6lK43}s z7oUTQXvibQyX*jMUx;|DEM5s-pbw`08HOwKqU#VFAMA|nj<8`PO+^k6axi&?3pV5~ zPe8UyElu`1UUOD-m~FABp`pBg1)3K{vG#3?OV=>Gq6wLV)Isbcs5};sm42*GAUjO1PFp8-i%lP@tKdN%^&D& zJl7Pah}E<4K$#MIC?XAx(WbI~K=vvLF~$`Y*6DM1Azxg{_KIokLCp!lXCMjLg{2P; zYSAWbS!SL85Hu$>?Si#h-W3FrDyt}rvtC+}$}3i|$9eABsehpx4fk9~et8s<7JhOY zB#+d^aPWxfeFoT(v3HO-^;i{wKw{P_nb4pSaK7QoYU5Bif6g*3?5RS9Gh{`NH+Xs> zJFp!T+ZxTODa<{w%d3mRH>~<*FX~8GTLiAOZigJX=PI;pcLF!gLM5dKPz_3aX*&mmGHJfr zxB@WTn0`%lu?+|xSmQRhjHDer!!;}RiS;5WvS(C=!Am=0-PyGW+HAQm;mdX56jBcd ztm{k6k4`SXoMIY3P|Wb%dc33Se6#CeF6rET622iOqsPpx)l_41bGi>k2Av4@1zb@} z(m%H=P1V2@AmVeDzZhh<79|R%UNajGmee^jB5}53R$T%+~84n;KM^{INA)ZHk3~^1p zU~j+1KZWuc5ZC=B5VYlIl<0^Gd(VA zW`NqAEk#jg?Hf@#<-J+ej~63~aBy#@b-mMnpj~yphaFt9% zQcjhH8WDbTE$@^)w7FWR{8mC7kCpt$z27I{%-e=y>hL?QV@p7{6_U4oor?~Og?-L= zTtE$0SvM9dEa-P(n5(B6BxLspAT61^*LM%AhUolL5HgyQFcONStBDKSeyL?q z(2I-Dlj?@Zospe>;ht6)R#m^<#HiE829}q}9$hQ_%(ES^@@fs5$k>i)cN}Sk0cmL` z%0A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%0ARsHO8uQ6PU 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

CauDO>ZUdu{HOD7#kE>wB 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

BUE_LWy8?z(Wfu!YQJzD*2n#3(N}l9l&^akq)L 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 YE%Cp#|5W^8kNZ!E{~!CWvHQQ}Uzb%6wg3PC diff --git a/icecat/services/settings/dumps/blocklists/addons-bloomfilters/addons-mlbf.bin.meta.json b/icecat/services/settings/dumps/blocklists/addons-bloomfilters/addons-mlbf.bin.meta.json index c632a041cc..1d42c20829 100644 --- a/icecat/services/settings/dumps/blocklists/addons-bloomfilters/addons-mlbf.bin.meta.json +++ b/icecat/services/settings/dumps/blocklists/addons-bloomfilters/addons-mlbf.bin.meta.json @@ -1 +1 @@ -{"schema":1767854190545,"attachment":{"hash":"cd8e64bf49ba15970bcc52f3a561da888b9c3240ca783a16c129c790116a26d1","size":876445,"filename":"filter.bin","location":"staging/addons-bloomfilters/318bab3e-2840-4d3f-b1a9-49c76650c0cc.bin","mimetype":"application/octet-stream"},"key_format":"{guid}:{version}","attachment_type":"bloomfilter-base","generation_time":1767875706366,"id":"2f2d5105-a59b-4d36-91bf-aba0d17dfc24","last_modified":1767875945345} \ No newline at end of file +{"schema":1772562997137,"attachment":{"hash":"ee96783e3e744f929e69179eada1f1d1db54586c3ab2139198b557f06f12deca","size":882382,"filename":"filter.bin","location":"staging/addons-bloomfilters/dcd6006c-59c5-4924-9d61-671a4df6aafa.bin","mimetype":"application/octet-stream"},"key_format":"{guid}:{version}","attachment_type":"bloomfilter-base","generation_time":1772584506789,"id":"064d7fc5-9b6c-4ce4-81f4-9b0c74c7c32b","last_modified":1772584766600} \ No newline at end of file diff --git a/icecat/services/settings/dumps/blocklists/addons-bloomfilters/softblocks-addons-mlbf.bin b/icecat/services/settings/dumps/blocklists/addons-bloomfilters/softblocks-addons-mlbf.bin index c5f89dcf1cc63d858ea4bcb7721f4a934cda94ee..fac8454733728a63be09f83323e9e3ef0e9d89ef 100644 GIT binary patch literal 180796 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 o6)^q!l+DxD?hERjM02id${k;D*!qi`Nhd9T5}5 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

=On!y4i&Zb+o9C^bAw-`ECT?<9-C$3Km(b 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 GV*d-={k44n literal 174266 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%0ACG?Zsbfbh6Dkd$ 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 diff --git a/icecat/services/settings/dumps/blocklists/addons-bloomfilters/softblocks-addons-mlbf.bin.meta.json b/icecat/services/settings/dumps/blocklists/addons-bloomfilters/softblocks-addons-mlbf.bin.meta.json index bd5bf16b7a..359373841e 100644 --- a/icecat/services/settings/dumps/blocklists/addons-bloomfilters/softblocks-addons-mlbf.bin.meta.json +++ b/icecat/services/settings/dumps/blocklists/addons-bloomfilters/softblocks-addons-mlbf.bin.meta.json @@ -1 +1 @@ -{"schema":1767875911138,"attachment":{"hash":"128e4b64d915b1ce81719dc4e069128079bdc705873ffb250b8fda1a22af5657","size":174266,"filename":"filter.bin","location":"staging/addons-bloomfilters/c6d34303-4b8e-410a-9f30-58cd15c9eeb3.bin","mimetype":"application/octet-stream"},"key_format":"{guid}:{version}","attachment_type":"softblocks-bloomfilter-base","generation_time":1767875706366,"id":"4f0e30ab-8e4f-4973-9796-92048b656347","last_modified":1767875945351} \ No newline at end of file +{"schema":1772584712183,"attachment":{"hash":"ba518030bb058a7d14a3e1ac2218599992f3196aa6ea99199170289763e2ca84","size":180796,"filename":"filter.bin","location":"staging/addons-bloomfilters/261790b5-1813-4a25-9fe1-5b4c19cf1279.bin","mimetype":"application/octet-stream"},"key_format":"{guid}:{version}","attachment_type":"softblocks-bloomfilter-base","generation_time":1772584506789,"id":"9de13b9e-c148-4385-ad60-9c940536a3b2","last_modified":1772584766602} \ No newline at end of file diff --git a/icecat/services/settings/dumps/blocklists/gfx.json b/icecat/services/settings/dumps/blocklists/gfx.json index a1343115f6..411b8394f2 100644 --- a/icecat/services/settings/dumps/blocklists/gfx.json +++ b/icecat/services/settings/dumps/blocklists/gfx.json @@ -1,5 +1,31 @@ { "data": [ + { + "os": "Linux", + "schema": 1755909310311, + "vendor": "", + "details": { + "bug": "1979007", + "name": "Mesa crash compiling certain shaders" + }, + "devices": [], + "enabled": true, + "feature": "WEBGPU", + "hardware": "", + "driverVendor": "mesa/all", + "versionRange": { + "maxVersion": "143.0", + "minVersion": "" + }, + "driverVersion": "25.0.4", + "featureStatus": "BLOCKED_DRIVER_VERSION", + "windowProtocol": "", + "driverVersionMax": "", + "desktopEnvironment": "", + "driverVersionComparator": "LESS_THAN", + "id": "e3e5622a-0a29-4a73-bd49-c3c2de8ec1bc", + "last_modified": 1771613837993 + }, { "os": "WINNT 10.0", "schema": 1748268762353, @@ -1583,5 +1609,5 @@ "last_modified": 1480349134090 } ], - "timestamp": 1748485472559 + "timestamp": 1771613837993 } diff --git a/icecat/services/settings/dumps/main/devtools-compatibility-browsers.json b/icecat/services/settings/dumps/main/devtools-compatibility-browsers.json index 4e9f76fe39..6b09865cd9 100644 --- a/icecat/services/settings/dumps/main/devtools-compatibility-browsers.json +++ b/icecat/services/settings/dumps/main/devtools-compatibility-browsers.json @@ -1,292 +1,310 @@ { "data": [ { - "name": "WebView on iOS", - "schema": 1769817904477, - "status": "current", - "version": "26.2", - "browserid": "webview_ios", - "id": "a04f4e37-8564-4c6c-8d2c-f47c2ebcf8b6", - "last_modified": 1770021738368 - }, - { - "name": "Safari", - "schema": 1769817904187, - "status": "current", - "version": "26.2", - "browserid": "safari", - "id": "050425e8-38bd-4f94-ba06-b558672f10ce", - "last_modified": 1770021738364 - }, - { - "name": "Edge", - "schema": 1769817904122, + "name": "WebView Android", + "schema": 1773446704289, "status": "planned", - "version": "147", - "browserid": "edge", - "id": "08fe74cc-038a-4801-9f25-82fbd6468297", - "last_modified": 1770021738359 - }, - { - "name": "Bun", - "schema": 1769817903754, - "status": "current", - "version": "1.3.8", - "browserid": "bun", - "id": "babead5f-8df6-4b0b-8950-c1cdf60819c7", - "last_modified": 1770021738355 - }, - { - "name": "Safari on iOS", - "schema": 1769817904341, - "status": "current", - "version": "26.2", - "browserid": "safari_ios", - "id": "696b808e-20de-43f7-9b79-26116fb7badd", - "last_modified": 1770021738350 - }, - { - "name": "Edge", - "schema": 1769817904049, - "status": "nightly", - "version": "146", - "browserid": "edge", - "id": "71070e67-3067-4271-acef-cf0bd7a4f555", - "last_modified": 1770021738340 - }, - { - "name": "Edge", - "schema": 1769817903908, - "status": "current", - "version": "144", - "browserid": "edge", - "id": "64945ca2-8c7c-4d04-8a37-dd304f2e93ce", - "last_modified": 1770021738336 - }, - { - "name": "Safari", - "schema": 1769817904261, - "status": "beta", - "version": "26.3", - "browserid": "safari", - "id": "f7f0e108-c839-4036-94f6-1d77b172c85a", - "last_modified": 1770021738332 - }, - { - "name": "WebView on iOS", - "schema": 1769817904540, - "status": "beta", - "version": "26.3", - "browserid": "webview_ios", - "id": "8ac8569d-f6dc-41e4-b448-7c54f6923a36", - "last_modified": 1770021738327 - }, - { - "name": "Safari on iOS", - "schema": 1769817904409, - "status": "beta", - "version": "26.3", - "browserid": "safari_ios", - "id": "916681bd-04e0-4dbe-9c02-965181db1356", - "last_modified": 1770021738323 - }, - { - "name": "Edge", - "schema": 1769817903979, - "status": "beta", - "version": "145", - "browserid": "edge", - "id": "40684037-f3dc-4106-b1f7-91bd4fa18a32", - "last_modified": 1770021738318 + "version": "149", + "browserid": "webview_android", + "id": "ed3ff7b7-dfb0-4141-a35d-85d16c22ed86", + "last_modified": 1773641281301 }, { "name": "Opera Android", - "schema": 1768521904527, + "schema": 1773446703952, "status": "current", - "version": "94", + "version": "96", "browserid": "opera_android", - "id": "aa1e8dcd-0f41-4a37-8690-7aa466ce4b36", - "last_modified": 1768543743687 + "id": "dc01df05-453f-4d2f-b7d2-337a2670e91a", + "last_modified": 1773641281298 }, { - "name": "IceCat for Android", - "schema": 1768521904388, - "status": "planned", - "version": "150", - "browserid": "icecat_android", - "id": "dc9812c3-bdb8-4dcc-880f-67b25f794628", - "last_modified": 1768543743683 + "name": "Quest Browser", + "schema": 1773446703816, + "status": "current", + "version": "42.0", + "browserid": "oculus", + "id": "77a75ca3-9282-4e9d-8789-bb7d771ea350", + "last_modified": 1773641281295 }, { - "name": "IceCat", - "schema": 1768521904056, + "name": "Chrome Android", + "schema": 1773446703753, "status": "planned", - "version": "150", - "browserid": "icecat", - "id": "4f1039d1-5e0c-44de-9180-1f46dae6028c", - "last_modified": 1768543743679 - }, - { - "name": "WebView Android", - "schema": 1768521904868, - "status": "planned", - "version": "147", - "browserid": "webview_android", - "id": "18d9eac7-8ed6-40c8-a888-315758fbd983", - "last_modified": 1768543743674 + "version": "149", + "browserid": "chrome_android", + "id": "c583ee97-ecf9-4bd8-9f22-93d626c24fa0", + "last_modified": 1773641281293 }, { "name": "Chrome", - "schema": 1768521903366, + "schema": 1773446703422, "status": "planned", + "version": "149", + "browserid": "chrome", + "id": "dff5f94c-b1be-416a-91e6-f0fa2dbffb45", + "last_modified": 1773641281290 + }, + { + "name": "WebView Android", + "schema": 1773446704224, + "status": "nightly", + "version": "148", + "browserid": "webview_android", + "id": "cbf9e9ca-4167-4f09-981c-186bfba8ed1e", + "last_modified": 1773641281285 + }, + { + "name": "Chrome Android", + "schema": 1773446703690, + "status": "nightly", + "version": "148", + "browserid": "chrome_android", + "id": "1dc1d001-8ed2-43a5-b41d-589130d0ac7d", + "last_modified": 1773641281283 + }, + { + "name": "Chrome", + "schema": 1773446703354, + "status": "nightly", + "version": "148", + "browserid": "chrome", + "id": "a57c427c-57e9-4856-9dae-f515117478d7", + "last_modified": 1773641281281 + }, + { + "name": "Chrome", + "schema": 1773446703279, + "status": "beta", "version": "147", "browserid": "chrome", "id": "cddd3506-4f9c-42cf-b551-ca28c2533e9a", - "last_modified": 1768543743670 + "last_modified": 1773641281277 }, { "name": "Chrome Android", - "schema": 1768521903711, - "status": "planned", + "schema": 1773446703623, + "status": "beta", "version": "147", "browserid": "chrome_android", "id": "aa7ba8b7-3135-4450-ab5f-5f8d956f1f13", - "last_modified": 1768543743667 + "last_modified": 1773641281275 }, { "name": "WebView Android", - "schema": 1768521904797, - "status": "nightly", + "schema": 1773446704085, + "status": "current", "version": "146", "browserid": "webview_android", "id": "620f087d-d5c6-4b67-80f4-02358d8298e7", - "last_modified": 1768543743654 + "last_modified": 1773641281273 + }, + { + "name": "WebView Android", + "schema": 1773446704150, + "status": "beta", + "version": "147", + "browserid": "webview_android", + "id": "18d9eac7-8ed6-40c8-a888-315758fbd983", + "last_modified": 1773641281264 }, { "name": "Chrome Android", - "schema": 1768521903645, - "status": "nightly", + "schema": 1773446703559, + "status": "current", "version": "146", "browserid": "chrome_android", "id": "1b035778-10c7-4ea3-aeb4-3606fd3483e1", - "last_modified": 1768543743647 + "last_modified": 1773641281262 }, { "name": "Chrome", - "schema": 1768521903298, - "status": "nightly", + "schema": 1773446703216, + "status": "current", "version": "146", "browserid": "chrome", "id": "b9100141-3b96-44f6-89b5-2dd19d6dfba6", - "last_modified": 1768543743643 + "last_modified": 1773641281259 + }, + { + "name": "IceCat", + "schema": 1772237104541, + "status": "planned", + "version": "151", + "browserid": "icecat", + "id": "ca23dbaa-20c7-4027-9de8-63ec380b2f6e", + "last_modified": 1772548633069 + }, + { + "name": "Bun", + "schema": 1772094719613, + "status": "current", + "version": "1.3.10", + "browserid": "bun", + "id": "8c8475b8-52f3-488b-857b-8b39325285d9", + "last_modified": 1772548633066 }, { "name": "IceCat for Android", - "schema": 1768521904319, + "schema": 1772237104669, + "status": "planned", + "version": "151", + "browserid": "icecat_android", + "id": "cded3e3a-4e7e-4627-80fb-fae915ebc9a0", + "last_modified": 1772548633064 + }, + { + "name": "Deno", + "schema": 1772064304810, + "status": "current", + "version": "2.7", + "browserid": "deno", + "id": "34c49207-86e7-4cda-af22-c005f1dc2847", + "last_modified": 1772094719547 + }, + { + "name": "IceCat for Android", + "schema": 1772064305400, "status": "nightly", + "version": "150", + "browserid": "icecat_android", + "id": "dc9812c3-bdb8-4dcc-880f-67b25f794628", + "last_modified": 1772094719545 + }, + { + "name": "IceCat", + "schema": 1772064305105, + "status": "nightly", + "version": "150", + "browserid": "icecat", + "id": "4f1039d1-5e0c-44de-9180-1f46dae6028c", + "last_modified": 1772094719543 + }, + { + "name": "IceCat for Android", + "schema": 1772064305325, + "status": "beta", "version": "149", "browserid": "icecat_android", "id": "78dc5472-36f7-465d-92c2-3d2ff5d7c323", - "last_modified": 1768543743638 + "last_modified": 1772094719541 }, { "name": "IceCat", - "schema": 1768521903991, - "status": "nightly", + "schema": 1772064305036, + "status": "beta", "version": "149", "browserid": "icecat", "id": "2154c26d-3d7d-4ddc-a6ec-de10aeaba65f", - "last_modified": 1768543743635 + "last_modified": 1772094719534 }, { "name": "IceCat", - "schema": 1768521903925, - "status": "beta", + "schema": 1772064304967, + "status": "current", "version": "148", "browserid": "icecat", "id": "4ebdb515-56c0-4aae-bf80-631df396b3c5", - "last_modified": 1768543743631 + "last_modified": 1772094719532 }, { "name": "IceCat for Android", - "schema": 1768521904254, - "status": "beta", + "schema": 1772064305258, + "status": "current", "version": "148", "browserid": "icecat_android", "id": "5e1afc2d-b301-49b8-9052-0d0ceed8d7a3", - "last_modified": 1768543743627 + "last_modified": 1772094719530 }, { - "name": "IceCat for Android", - "schema": 1768521904189, - "status": "current", + "name": "WebView on iOS", + "schema": 1771718703666, + "status": "beta", + "version": "26.4", + "browserid": "webview_ios", + "id": "d3803d9b-d96b-4c3b-9ed9-1ef5d4639858", + "last_modified": 1771946254834 + }, + { + "name": "Safari", + "schema": 1771718703538, + "status": "beta", + "version": "26.4", + "browserid": "safari", + "id": "79285f6d-a28c-459d-8265-7044f2066d5b", + "last_modified": 1771946254829 + }, + { + "name": "Edge", + "schema": 1771718703469, + "status": "planned", + "version": "148", + "browserid": "edge", + "id": "25d5ebbc-8734-46b8-881c-949b2912533e", + "last_modified": 1771946254825 + }, + { + "name": "Safari on iOS", + "schema": 1771718703606, + "status": "beta", + "version": "26.4", + "browserid": "safari_ios", + "id": "0b19a21d-8494-4a35-8875-bf1905f5893a", + "last_modified": 1771946254821 + }, + { + "name": "Edge", + "schema": 1771718703401, + "status": "nightly", "version": "147", - "browserid": "icecat_android", - "id": "6d4ac1b5-fae6-4cf0-8966-3833c78d2d6d", - "last_modified": 1768543743623 + "browserid": "edge", + "id": "08fe74cc-038a-4801-9f25-82fbd6468297", + "last_modified": 1771946254814 }, { - "name": "IceCat", - "schema": 1768521903851, - "status": "current", - "version": "147", - "browserid": "icecat", - "id": "da813114-57b4-435c-831e-4fc28589a55c", - "last_modified": 1768543743619 - }, - { - "name": "WebView Android", - "schema": 1768521904728, + "name": "Edge", + "schema": 1771718703328, "status": "beta", - "version": "145", - "browserid": "webview_android", - "id": "51da2d32-d596-43de-8dea-bb19b07b2bf0", - "last_modified": 1768543743609 + "version": "146", + "browserid": "edge", + "id": "71070e67-3067-4271-acef-cf0bd7a4f555", + "last_modified": 1771946254810 }, { - "name": "Chrome", - "schema": 1768521903235, - "status": "beta", - "version": "145", - "browserid": "chrome", - "id": "1bcd114b-13e9-428b-9d54-bd2d993aa5bb", - "last_modified": 1768543743604 - }, - { - "name": "Chrome Android", - "schema": 1768521903586, - "status": "beta", - "version": "145", - "browserid": "chrome_android", - "id": "4363f23f-12a8-40d5-aedb-9c90514c368c", - "last_modified": 1768543743599 - }, - { - "name": "WebView Android", - "schema": 1768521904664, + "name": "Edge", + "schema": 1771718703259, "status": "current", - "version": "144", - "browserid": "webview_android", - "id": "336a5fe9-5846-4e9d-9039-be3d1d82f97f", - "last_modified": 1768543743595 + "version": "145", + "browserid": "edge", + "id": "40684037-f3dc-4106-b1f7-91bd4fa18a32", + "last_modified": 1771946254801 }, { - "name": "Chrome", - "schema": 1768521903164, + "name": "Safari", + "schema": 1771027506130, "status": "current", - "version": "144", - "browserid": "chrome", - "id": "445d8b56-0300-4c6b-8e1f-0d1ab3f45500", - "last_modified": 1768543743591 + "version": "26.3", + "browserid": "safari", + "id": "f7f0e108-c839-4036-94f6-1d77b172c85a", + "last_modified": 1771325515122 }, { - "name": "Chrome Android", - "schema": 1768521903518, + "name": "WebView on iOS", + "schema": 1771027506722, "status": "current", - "version": "144", - "browserid": "chrome_android", - "id": "196eb3bc-6b04-4a4e-875f-b46ff5d5e6da", - "last_modified": 1768543743587 + "version": "26.3", + "browserid": "webview_ios", + "id": "8ac8569d-f6dc-41e4-b448-7c54f6923a36", + "last_modified": 1771325515117 + }, + { + "name": "Safari on iOS", + "schema": 1771027506270, + "status": "current", + "version": "26.3", + "browserid": "safari_ios", + "id": "916681bd-04e0-4dbe-9c02-965181db1356", + "last_modified": 1771325515111 }, { "name": "Samsung Internet", @@ -333,15 +351,6 @@ "id": "847fc43b-579e-4b26-a1fa-cb978ec0438b", "last_modified": 1762424892945 }, - { - "name": "Deno", - "schema": 1759363503600, - "status": "current", - "version": "2.5.0", - "browserid": "deno", - "id": "a44dce57-9592-4b86-bd9c-cdf6223e7e75", - "last_modified": 1759390855835 - }, { "name": "IceCat for Android", "schema": 1753574703338, @@ -368,16 +377,7 @@ "browserid": "nodejs", "id": "5ba3aee3-2875-4a2c-938c-0f1f43e28488", "last_modified": 1735832995466 - }, - { - "name": "Quest Browser", - "schema": 1665650596430, - "status": "current", - "version": "23.0", - "browserid": "oculus", - "id": "371ced3b-8ff1-4540-a230-bc1827964bda", - "last_modified": 1665656484764 } ], - "timestamp": 1770021738368 + "timestamp": 1773641281301 } diff --git a/icecat/services/settings/dumps/main/devtools-devices.json b/icecat/services/settings/dumps/main/devtools-devices.json index 30b2362048..2de049b293 100644 --- a/icecat/services/settings/dumps/main/devtools-devices.json +++ b/icecat/services/settings/dumps/main/devtools-devices.json @@ -1,60 +1,251 @@ { "data": [ { - "os": "custom", - "name": "1080p Full HD Television", - "type": "televisions", - "touch": false, - "width": 1920, - "height": 1080, - "schema": 1653402055990, - "featured": false, - "userAgent": "", - "pixelRatio": "1", - "id": "fdc3221b-38e3-40a6-8497-6a9259a8d6b4", - "last_modified": 1653469171354 - }, - { - "os": "custom", - "name": "4K Ultra HD Television", - "type": "televisions", - "touch": false, - "width": 3840, - "height": 2160, - "schema": 1653402055166, - "featured": false, - "userAgent": "", - "pixelRatio": "1", - "id": "3c1e2dbc-a9c3-4302-9d14-5c01f56f8dba", - "last_modified": 1653469171351 - }, - { - "os": "", - "name": "Laptop with MDPI screen", - "type": "laptops", - "touch": false, - "width": 1280, - "height": 800, - "schema": 1653402054240, - "featured": false, - "userAgent": "", - "pixelRatio": "1", - "id": "77794a97-2c31-4a76-be20-897a1b91e534", - "last_modified": 1653469171347 - }, - { - "os": "", - "name": "Laptop with touch", - "type": "laptops", + "name": "iPhone 16 Pro Max", + "type": "phones", "touch": true, - "width": 1280, - "height": 950, - "schema": 1653402053431, + "width": 440, + "height": 956, + "schema": 1773213674077, "featured": false, - "userAgent": "", - "pixelRatio": "1", - "id": "9a1e862c-2cf0-493b-8755-9d8702b8cdbd", - "last_modified": 1653469171344 + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "60bf279b-4854-4399-8d4f-41c5f5ef4948", + "last_modified": 1773214792526 + }, + { + "name": "Pixel 8 / 9 (Chrome)", + "type": "phones", + "touch": true, + "width": 412, + "height": 915, + "schema": 1773213683874, + "featured": true, + "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 9) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Mobile Safari/537.36", + "pixelRatio": "2.625", + "id": "ab1be6d4-808a-4600-881d-0496509272f4", + "last_modified": 1773214792523 + }, + { + "name": "Pixel 8 / 9 (IceCat)", + "type": "phones", + "touch": true, + "width": 412, + "height": 915, + "schema": 1773213685943, + "featured": true, + "userAgent": "Mozilla/5.0 (Android 14; Mobile; rv:148.0) Gecko/148.0 IceCat/148.0", + "pixelRatio": "2.625", + "id": "8c93fab6-33b6-4e3a-97ed-ac4eb33292ce", + "last_modified": 1773214792520 + }, + { + "name": "iPhone 17 Pro Max", + "type": "phones", + "touch": true, + "width": 440, + "height": 956, + "schema": 1773213672208, + "featured": false, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "3b2953fc-dfff-4bfe-afbd-ca66fc02f481", + "last_modified": 1773214792517 + }, + { + "name": "iPhone Air", + "type": "phones", + "touch": true, + "width": 420, + "height": 921, + "schema": 1773213670567, + "featured": false, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "7c7d3a26-145f-48ae-b045-9c44c2851913", + "last_modified": 1773214792514 + }, + { + "name": "iPhone 15 / 16 Pro", + "type": "phones", + "touch": true, + "width": 402, + "height": 874, + "schema": 1773213676777, + "featured": false, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "a0fe6375-e30b-4e69-9897-5e03d356584e", + "last_modified": 1773214792512 + }, + { + "name": "iPhone 14 / 15 / 16 Plus", + "type": "phones", + "touch": true, + "width": 430, + "height": 932, + "schema": 1773213681352, + "featured": false, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "bbd54a2b-ff7f-4505-9c80-c6d07156857c", + "last_modified": 1773214792509 + }, + { + "name": "iPhone 14 / 15 / 16", + "type": "phones", + "touch": true, + "width": 393, + "height": 852, + "schema": 1773213648738, + "featured": true, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "fefcdce1-fd5f-4e91-adb8-afb426d4b381", + "last_modified": 1773214792506 + }, + { + "name": "iPad (10th / 11th gen)", + "type": "tablets", + "touch": true, + "width": 820, + "height": 1180, + "schema": 1773213632719, + "featured": true, + "userAgent": "Mozilla/5.0 (iPad; CPU OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "2", + "id": "995c3d3e-de30-4694-b0ad-ae168d7748b2", + "last_modified": 1773214792503 + }, + { + "name": "iPad Mini (6th gen)", + "type": "tablets", + "touch": true, + "width": 744, + "height": 1133, + "schema": 1773213591154, + "featured": true, + "userAgent": "Mozilla/5.0 (iPad; CPU OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "2", + "id": "d71215ba-1fd5-47a3-ac83-f207260cff5d", + "last_modified": 1773214792500 + }, + { + "name": "Galaxy S25 Ultra", + "type": "phones", + "touch": true, + "width": 412, + "height": 915, + "schema": 1773213687923, + "featured": true, + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-S938B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Mobile Safari/537.36", + "pixelRatio": "3", + "id": "55817bdf-9f22-43e9-9048-410223431c6c", + "last_modified": 1773214792497 + }, + { + "name": "iPad Pro 11-inch (M4)", + "type": "tablets", + "touch": true, + "width": 834, + "height": 1210, + "schema": 1773213627220, + "featured": true, + "userAgent": "Mozilla/5.0 (iPad; CPU OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "2", + "id": "4b0e448d-42ec-4649-b4ea-4a56201758f9", + "last_modified": 1773214792494 + }, + { + "name": "Galaxy Tab S9+", + "type": "tablets", + "touch": true, + "width": 800, + "height": 1280, + "schema": 1773213644124, + "featured": true, + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-X810) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36", + "pixelRatio": "2.5", + "id": "af961865-b68e-4744-9447-4377c86368c3", + "last_modified": 1773214792491 + }, + { + "name": "iPhone 17 / 17 Pro", + "type": "phones", + "touch": true, + "width": 402, + "height": 874, + "schema": 1773213668473, + "featured": true, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "7ec46e68-aa0a-4a35-9f6c-1d8b25feb51b", + "last_modified": 1773214792488 + }, + { + "name": "Galaxy S25", + "type": "phones", + "touch": true, + "width": 360, + "height": 780, + "schema": 1773213695712, + "featured": true, + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-S931B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Mobile Safari/537.36", + "pixelRatio": "3", + "id": "63fb2b49-1db5-4550-aa60-9d3ecf29f5b5", + "last_modified": 1773214792485 + }, + { + "name": "Galaxy S25+", + "type": "phones", + "touch": true, + "width": 384, + "height": 854, + "schema": 1773213690339, + "featured": false, + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-S936B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Mobile Safari/537.36", + "pixelRatio": "3", + "id": "d90048ce-5c16-4c32-a5e8-7d4425f2e351", + "last_modified": 1773214792482 + }, + { + "name": "Galaxy Tab S9", + "type": "tablets", + "touch": true, + "width": 712, + "height": 1138, + "schema": 1773213646393, + "featured": true, + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-X710) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36", + "pixelRatio": "2.5", + "id": "1ff6a27f-9076-4061-9a03-3b7c3b657fed", + "last_modified": 1773214792479 + }, + { + "name": "Galaxy Tab S9 Ultra", + "type": "tablets", + "touch": true, + "width": 960, + "height": 1848, + "schema": 1773213641275, + "featured": false, + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-X910) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36", + "pixelRatio": "2.5", + "id": "9b56a044-2986-47b2-a159-b0714e86a367", + "last_modified": 1773214792477 + }, + { + "name": "iPad Pro 13-inch (M4)", + "type": "tablets", + "touch": true, + "width": 1032, + "height": 1376, + "schema": 1773213629977, + "featured": false, + "userAgent": "Mozilla/5.0 (iPad; CPU OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1", + "pixelRatio": "2", + "id": "df12aa5d-5519-4954-b957-b8ed0815e9d0", + "last_modified": 1773214792474 }, { "os": "", @@ -63,12 +254,292 @@ "touch": false, "width": 1440, "height": 900, - "schema": 1653402052509, - "featured": false, + "schema": 1773152892018, + "featured": true, "userAgent": "", "pixelRatio": "2", "id": "194d32f6-88a8-451e-87a4-99e91b5426e0", - "last_modified": 1653469171341 + "last_modified": 1773214792470 + }, + { + "os": "custom", + "name": "1080p Full HD Television", + "type": "televisions", + "touch": false, + "width": 1920, + "height": 1080, + "schema": 1773152386973, + "featured": true, + "userAgent": "", + "pixelRatio": "1", + "id": "fdc3221b-38e3-40a6-8497-6a9259a8d6b4", + "last_modified": 1773214792468 + }, + { + "os": "iOS", + "name": "iPad Pro 11-inch (old)", + "type": "tablets", + "touch": true, + "width": 834, + "height": 1194, + "schema": 1773152937073, + "featured": false, + "userAgent": "Mozilla/5.0 (iPad; CPU OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1", + "pixelRatio": "2", + "id": "d3be568b-b9fb-4995-809e-9464b8e2a820", + "last_modified": 1773214792466 + }, + { + "os": "iOS", + "name": "iPad Pro 12.9-inch (old)", + "type": "tablets", + "touch": true, + "width": 1024, + "height": 1366, + "schema": 1773152935590, + "featured": false, + "userAgent": "Mozilla/5.0 (iPad; CPU OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1", + "pixelRatio": "2", + "id": "95a71660-3141-4bd0-ae24-d5b49504c3f7", + "last_modified": 1773214792464 + }, + { + "os": "custom", + "name": "4K Ultra HD Television", + "type": "televisions", + "touch": false, + "width": 3840, + "height": 2160, + "schema": 1773152793884, + "featured": true, + "userAgent": "", + "pixelRatio": "1", + "id": "3c1e2dbc-a9c3-4302-9d14-5c01f56f8dba", + "last_modified": 1773214792462 + }, + { + "os": "", + "name": "Laptop with MDPI screen", + "type": "laptops", + "touch": false, + "width": 1280, + "height": 800, + "schema": 1773152889465, + "featured": true, + "userAgent": "", + "pixelRatio": "1", + "id": "77794a97-2c31-4a76-be20-897a1b91e534", + "last_modified": 1773214792460 + }, + { + "os": "", + "name": "Laptop with touch", + "type": "laptops", + "touch": true, + "width": 1280, + "height": 950, + "schema": 1773152886133, + "featured": true, + "userAgent": "", + "pixelRatio": "1", + "id": "9a1e862c-2cf0-493b-8755-9d8702b8cdbd", + "last_modified": 1773214792456 + }, + { + "os": "", + "name": "iPad", + "type": "tablets", + "touch": true, + "width": 810, + "height": 1080, + "schema": 1773152834942, + "featured": false, + "userAgent": "Mozilla/5.0 (iPad; CPU OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1", + "pixelRatio": "2", + "id": "dc9416b1-958f-4711-8b13-ccc4871efba0", + "last_modified": 1773214792454 + }, + { + "os": "iOS", + "name": "iPhone 12/13 mini", + "type": "phones", + "touch": true, + "width": 375, + "height": 812, + "schema": 1773152929547, + "featured": false, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "1fdbcd95-65b2-407b-b289-38195d966295", + "last_modified": 1773214792452 + }, + { + "os": "iOS", + "name": "iPhone 12/13 + Pro", + "type": "phones", + "touch": true, + "width": 390, + "height": 844, + "schema": 1773152925787, + "featured": false, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "b00248a3-cb9c-47c6-ae45-b22462094974", + "last_modified": 1773214792447 + }, + { + "os": "iOS", + "name": "iPhone 12/13 Pro Max", + "type": "phones", + "touch": true, + "width": 428, + "height": 926, + "schema": 1773152924050, + "featured": false, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "2352b72f-c2bf-4cdf-9635-219c4b59414f", + "last_modified": 1773214792445 + }, + { + "os": "iOS", + "name": "iPhone 11 Pro Max", + "type": "phones", + "touch": true, + "width": 414, + "height": 896, + "schema": 1773152934160, + "featured": false, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "6cd66c7f-6dcb-4aeb-951a-52204be9b33d", + "last_modified": 1773214792443 + }, + { + "os": "iOS", + "name": "iPhone SE", + "type": "phones", + "touch": true, + "width": 375, + "height": 667, + "schema": 1773152908127, + "featured": true, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", + "pixelRatio": "2", + "id": "1a568a84-e52e-45f1-a30f-f66bec3f99f8", + "last_modified": 1773214792441 + }, + { + "os": "iOS", + "name": "iPhone 11 Pro", + "type": "phones", + "touch": true, + "width": 375, + "height": 812, + "schema": 1773152932330, + "featured": false, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", + "pixelRatio": "3", + "id": "c46bde65-07b8-41a0-98f7-bea4a3802074", + "last_modified": 1773214792439 + }, + { + "os": "iOS", + "name": "iPhone XR/11", + "type": "phones", + "touch": true, + "width": 414, + "height": 896, + "schema": 1773152905704, + "featured": true, + "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/12.0 Mobile/15A372 Safari/604.1", + "pixelRatio": "2", + "id": "e0fb4908-066e-4753-bfa8-9a70d6c61832", + "last_modified": 1773214792436 + }, + { + "os": "", + "name": "Pixel 5", + "type": "phones", + "touch": true, + "width": 393, + "height": 851, + "schema": 1773152844514, + "featured": true, + "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Mobile Safari/537.36", + "pixelRatio": "2.75", + "id": "8fb63fed-70f1-4be2-8630-00a3a3297ae1", + "last_modified": 1773214792432 + }, + { + "os": "Android", + "name": "Galaxy S20", + "type": "phones", + "touch": true, + "width": 360, + "height": 800, + "schema": 1773152807984, + "featured": false, + "userAgent": "Mozilla/5.0 (Linux; Android 11; SAMSUNG SM-G973U) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.2 Chrome/146.0.0.0 Mobile Safari/537.36", + "pixelRatio": "4", + "id": "fa90254c-1024-49a0-9ff5-5b7abcd1839a", + "last_modified": 1773214792409 + }, + { + "os": "Android", + "name": "Galaxy S9/S9+", + "type": "phones", + "touch": true, + "width": 360, + "height": 740, + "schema": 1773152820591, + "featured": false, + "userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/109.0.0.0 Mobile Safari/537.36", + "pixelRatio": "4", + "id": "c1202c45-5e1b-4210-83cc-f6ad0370ddc0", + "last_modified": 1773214792404 + }, + { + "os": "Android", + "name": "Galaxy S20+", + "type": "phones", + "touch": true, + "width": 384, + "height": 854, + "schema": 1773152811603, + "featured": false, + "userAgent": "Mozilla/5.0 (Linux; Android 11; SAMSUNG SM-G973U) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.2 Chrome/146.0.0.0 Mobile Safari/537.36", + "pixelRatio": "3.75", + "id": "952f7ed0-e9aa-452f-af8f-99409ef382cc", + "last_modified": 1773214792397 + }, + { + "os": "Android", + "name": "Galaxy S10/S10+", + "type": "phones", + "touch": true, + "width": 360, + "height": 760, + "schema": 1773152804867, + "featured": true, + "userAgent": "Mozilla/5.0 (Linux; Android 11; SAMSUNG SM-G973U) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.2 Chrome/146.0.0.0 Mobile Safari/537.36", + "pixelRatio": "4", + "id": "2ddff760-91c4-4983-ba9b-681fa36b69fb", + "last_modified": 1773214792395 + }, + { + "os": "Android", + "name": "Galaxy Note 9", + "type": "phones", + "touch": true, + "width": 414, + "height": 846, + "schema": 1773152800247, + "featured": true, + "userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/109.0.0.0 Mobile Safari/537.36", + "pixelRatio": "3.5", + "id": "cc89dcde-38dc-47cc-895d-6558b9d02f54", + "last_modified": 1773214792388 }, { "os": "iOS", @@ -112,146 +583,6 @@ "id": "0f41a7a2-6916-423a-b64a-047d0680a2a3", "last_modified": 1653469171331 }, - { - "os": "iOS", - "name": "iPad Pro (11-inch)", - "type": "tablets", - "touch": true, - "width": 834, - "height": 1194, - "schema": 1653402049176, - "featured": false, - "userAgent": "Mozilla/5.0 (iPad; CPU OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1", - "pixelRatio": "2", - "id": "d3be568b-b9fb-4995-809e-9464b8e2a820", - "last_modified": 1653469171328 - }, - { - "os": "iOS", - "name": "iPad Pro (12.9-inch)", - "type": "tablets", - "touch": true, - "width": 1024, - "height": 1366, - "schema": 1653402048304, - "featured": false, - "userAgent": "Mozilla/5.0 (iPad; CPU OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1", - "pixelRatio": "2", - "id": "95a71660-3141-4bd0-ae24-d5b49504c3f7", - "last_modified": 1653469171325 - }, - { - "os": "", - "name": "Nexus 10", - "type": "tablets", - "touch": true, - "width": 800, - "height": 1280, - "schema": 1653402047489, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 10 Build/MOB31T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36", - "pixelRatio": "2", - "id": "38fcf855-b796-4e11-9565-0cfc0e11d21e", - "last_modified": 1653469171322 - }, - { - "os": "", - "name": "iPad", - "type": "tablets", - "touch": true, - "width": 810, - "height": 1080, - "schema": 1653402046688, - "featured": true, - "userAgent": "Mozilla/5.0 (iPad; CPU OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1", - "pixelRatio": "2", - "id": "dc9416b1-958f-4711-8b13-ccc4871efba0", - "last_modified": 1653469171319 - }, - { - "os": "iOS", - "name": "iPhone 12/13 mini", - "type": "phones", - "touch": true, - "width": 375, - "height": 812, - "schema": 1653402045852, - "featured": true, - "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", - "pixelRatio": "3", - "id": "1fdbcd95-65b2-407b-b289-38195d966295", - "last_modified": 1653469171316 - }, - { - "os": "", - "name": "Kindle Fire HDX", - "type": "tablets", - "touch": true, - "width": 800, - "height": 1280, - "schema": 1653402045017, - "featured": true, - "userAgent": "Mozilla/5.0 (Linux; U; en-us; KFAPWI Build/JDQ39) AppleWebKit/535.19 (KHTML, like Gecko) Silk/3.13 Safari/535.19 Silk-Accelerated=true", - "pixelRatio": "2", - "id": "b1bd6309-985f-42b6-a52c-9a7bc1ed17db", - "last_modified": 1653469171313 - }, - { - "os": "iOS", - "name": "iPhone 12/13 + Pro", - "type": "phones", - "touch": true, - "width": 390, - "height": 844, - "schema": 1653402044074, - "featured": true, - "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", - "pixelRatio": "3", - "id": "b00248a3-cb9c-47c6-ae45-b22462094974", - "last_modified": 1653469171310 - }, - { - "os": "iOS", - "name": "iPhone 12/13 Pro Max", - "type": "phones", - "touch": true, - "width": 428, - "height": 926, - "schema": 1653402043230, - "featured": true, - "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", - "pixelRatio": "3", - "id": "2352b72f-c2bf-4cdf-9635-219c4b59414f", - "last_modified": 1653469171307 - }, - { - "os": "iOS", - "name": "iPhone 11 Pro Max", - "type": "phones", - "touch": true, - "width": 414, - "height": 896, - "schema": 1653402042024, - "featured": true, - "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", - "pixelRatio": "3", - "id": "6cd66c7f-6dcb-4aeb-951a-52204be9b33d", - "last_modified": 1653469171304 - }, - { - "os": "iOS", - "name": "iPhone SE 2nd gen", - "type": "phones", - "touch": true, - "width": 375, - "height": 667, - "schema": 1653402041203, - "featured": true, - "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", - "pixelRatio": "2", - "id": "1a568a84-e52e-45f1-a30f-f66bec3f99f8", - "last_modified": 1653469171301 - }, { "os": "iOS", "name": "iPhone XS Max", @@ -266,48 +597,6 @@ "id": "09f6a69f-7d40-469f-a052-dbee6f260889", "last_modified": 1653469171298 }, - { - "os": "iOS", - "name": "iPhone 11 Pro", - "type": "phones", - "touch": true, - "width": 375, - "height": 812, - "schema": 1653402039442, - "featured": true, - "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1", - "pixelRatio": "3", - "id": "c46bde65-07b8-41a0-98f7-bea4a3802074", - "last_modified": 1653469171295 - }, - { - "os": "iOS", - "name": "iPhone XR/11", - "type": "phones", - "touch": true, - "width": 414, - "height": 896, - "schema": 1653402038431, - "featured": false, - "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/12.0 Mobile/15A372 Safari/604.1", - "pixelRatio": "2", - "id": "e0fb4908-066e-4753-bfa8-9a70d6c61832", - "last_modified": 1653469171291 - }, - { - "os": "iOS", - "name": "iPhone 6/7/8 Plus", - "type": "phones", - "touch": true, - "width": 414, - "height": 736, - "schema": 1653402037544, - "featured": false, - "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1", - "pixelRatio": "3", - "id": "a163f231-2560-4e5e-b88c-e5b2aecb2944", - "last_modified": 1653469171288 - }, { "os": "iOS", "name": "iPhone X/XS", @@ -321,315 +610,7 @@ "pixelRatio": "3", "id": "2375f7f9-e2b0-42d1-8a97-e5fe2dbdc8f0", "last_modified": 1653469171285 - }, - { - "os": "", - "name": "Pixel 5", - "type": "phones", - "touch": true, - "width": 393, - "height": 851, - "schema": 1653402035842, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Mobile Safari/537.36", - "pixelRatio": "2.75", - "id": "8fb63fed-70f1-4be2-8630-00a3a3297ae1", - "last_modified": 1653469171282 - }, - { - "os": "iOS", - "name": "iPhone 6/7/8", - "type": "phones", - "touch": true, - "width": 375, - "height": 667, - "schema": 1653402034968, - "featured": false, - "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1", - "pixelRatio": "2", - "id": "fd20c21d-2cf7-45bb-89c2-123f123242b1", - "last_modified": 1653469171279 - }, - { - "os": "iOS", - "name": "iPhone 5/SE", - "type": "phones", - "touch": true, - "width": 320, - "height": 568, - "schema": 1653402034037, - "featured": false, - "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1", - "pixelRatio": "2", - "id": "8aa68ae4-1515-466a-86ca-a4b544189863", - "last_modified": 1653469171276 - }, - { - "os": "KaiOS", - "name": "Nokia 8110 4G", - "type": "phones", - "touch": true, - "width": 240, - "height": 320, - "schema": 1653402033208, - "featured": false, - "userAgent": "Mozilla/5.0 (Mobile; Nokia 8110 4G; rv:48.0) Gecko/48.0 IceCat/48.0 KAIOS/2.5", - "pixelRatio": "1", - "id": "50677b6f-ffb3-4714-b0d0-f5621dec5d51", - "last_modified": 1653469171273 - }, - { - "os": "", - "name": "Pixel 2", - "type": "phones", - "touch": true, - "width": 411, - "height": 731, - "schema": 1653402032349, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Mobile Safari/537.36", - "pixelRatio": "2.625", - "id": "9d07cebc-4d40-45cc-8e94-6385c1f24dd0", - "last_modified": 1653469171270 - }, - { - "os": "", - "name": "Pixel 2 XL", - "type": "phones", - "touch": true, - "width": 411, - "height": 823, - "schema": 1653402031510, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Pixel 2 XL Build/OPD1.170816.004) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Mobile Safari/537.36", - "pixelRatio": "3.5", - "id": "5cf20040-4d25-42e2-a4d8-c6b83927ec84", - "last_modified": 1653469171267 - }, - { - "os": "", - "name": "Nexus 5X", - "type": "phones", - "touch": true, - "width": 412, - "height": 732, - "schema": 1653402030677, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 5X Build/OPR4.170623.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Mobile Safari/537.36", - "pixelRatio": "2.625", - "id": "33c1bdd3-892b-441c-8168-dc2d82bc1c61", - "last_modified": 1653469171264 - }, - { - "os": "", - "name": "Nexus 6P", - "type": "phones", - "touch": true, - "width": 412, - "height": 732, - "schema": 1653402029836, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 6P Build/OPP3.170518.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Mobile Safari/537.36", - "pixelRatio": "3.5", - "id": "378c650b-331d-430d-bd13-d6fcab803bfe", - "last_modified": 1653469171261 - }, - { - "os": "", - "name": "LG Optimus L70", - "type": "phones", - "touch": true, - "width": 384, - "height": 640, - "schema": 1653402029013, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; LGMS323 Build/KOT49I.MS32310c) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/67.0.3396.87 Mobile Safari/537.36", - "pixelRatio": "1.25", - "id": "9d0f9ec1-5e69-489e-a1d9-27dbd4a7a583", - "last_modified": 1653469171258 - }, - { - "os": "", - "name": "Microsoft Lumia 950", - "type": "phones", - "touch": true, - "width": 360, - "height": 640, - "schema": 1653402028123, - "featured": false, - "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Mobile Safari/537.36 Edge/14.14263", - "pixelRatio": "4", - "id": "21498efe-cd28-40b9-85ce-7468d159d674", - "last_modified": 1653469171255 - }, - { - "os": "Android", - "name": "Galaxy Note 20 Ultra", - "type": "phones", - "touch": true, - "width": 412, - "height": 883, - "schema": 1653402027292, - "featured": true, - "userAgent": "Mozilla/5.0 (Linux; Android 11; SAMSUNG SM-G973U) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.2 Chrome/87.0.4280.141 Mobile Safari/537.36", - "pixelRatio": "3.5", - "id": "54044ca7-882c-4372-bd5b-250f746f558d", - "last_modified": 1653469171252 - }, - { - "os": "Android", - "name": "Galaxy S20", - "type": "phones", - "touch": true, - "width": 360, - "height": 800, - "schema": 1653402026421, - "featured": true, - "userAgent": "Mozilla/5.0 (Linux; Android 11; SAMSUNG SM-G973U) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.2 Chrome/87.0.4280.141 Mobile Safari/537.36", - "pixelRatio": "4", - "id": "fa90254c-1024-49a0-9ff5-5b7abcd1839a", - "last_modified": 1653469171248 - }, - { - "os": "Android", - "name": "Galaxy S20 Ultra", - "type": "phones", - "touch": true, - "width": 412, - "height": 915, - "schema": 1653402025526, - "featured": true, - "userAgent": "Mozilla/5.0 (Linux; Android 11; SAMSUNG SM-G973U) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.2 Chrome/87.0.4280.141 Mobile Safari/537.36", - "pixelRatio": "3.5", - "id": "74de352e-4de2-4df7-939b-44007425ceaa", - "last_modified": 1653469171245 - }, - { - "os": "Android", - "name": "Galaxy S20+", - "type": "phones", - "touch": true, - "width": 384, - "height": 854, - "schema": 1653402024581, - "featured": true, - "userAgent": "Mozilla/5.0 (Linux; Android 11; SAMSUNG SM-G973U) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.2 Chrome/87.0.4280.141 Mobile Safari/537.36", - "pixelRatio": "3.75", - "id": "952f7ed0-e9aa-452f-af8f-99409ef382cc", - "last_modified": 1653469171242 - }, - { - "os": "Android", - "name": "Galaxy S10/S10+", - "type": "phones", - "touch": false, - "width": 360, - "height": 760, - "schema": 1653402023695, - "featured": true, - "userAgent": "Mozilla/5.0 (Linux; Android 11; SAMSUNG SM-G973U) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.2 Chrome/87.0.4280.141 Mobile Safari/537.36", - "pixelRatio": "4", - "id": "2ddff760-91c4-4983-ba9b-681fa36b69fb", - "last_modified": 1653469171239 - }, - { - "os": "", - "name": "Galaxy S5", - "type": "phones", - "touch": true, - "width": 360, - "height": 640, - "schema": 1653402022022, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Mobile Safari/537.36", - "pixelRatio": "3", - "id": "8644e66e-6369-4470-84e6-8376622a7e4d", - "last_modified": 1653469171236 - }, - { - "os": "", - "name": "Galaxy Note 3", - "type": "phones", - "touch": true, - "width": 360, - "height": 640, - "schema": 1653402021138, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; U; Android 4.3; en-us; SM-N900T Build/JSS15J) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30", - "pixelRatio": "3", - "id": "185a17fe-82a5-45bb-b745-9b532e608baf", - "last_modified": 1653469171233 - }, - { - "os": "Android", - "name": "Galaxy Note 9", - "type": "phones", - "touch": true, - "width": 414, - "height": 846, - "schema": 1653402020220, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/67.0.3396.87 Mobile Safari/537.36", - "pixelRatio": "3.5", - "id": "cc89dcde-38dc-47cc-895d-6558b9d02f54", - "last_modified": 1653469171230 - }, - { - "os": "", - "name": "Microsoft Lumia 550", - "type": "phones", - "touch": true, - "width": 360, - "height": 640, - "schema": 1653402019422, - "featured": false, - "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 550) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Mobile Safari/537.36 Edge/14.14263", - "pixelRatio": "2", - "id": "b447bc92-6bef-4ac3-b56c-102a725d508c", - "last_modified": 1653469171227 - }, - { - "os": "Android", - "name": "Galaxy S9/S9+", - "type": "phones", - "touch": true, - "width": 360, - "height": 740, - "schema": 1653402018618, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/67.0.3396.87 Mobile Safari/537.36", - "pixelRatio": "4", - "id": "c1202c45-5e1b-4210-83cc-f6ad0370ddc0", - "last_modified": 1653469171224 - }, - { - "os": "Android", - "name": "Galaxy Note 20", - "type": "phones", - "touch": true, - "width": 412, - "height": 915, - "schema": 1653402017748, - "featured": true, - "userAgent": "Mozilla/5.0 (Linux; Android 11; SAMSUNG SM-G973U) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.2 Chrome/87.0.4280.141 Mobile Safari/537.36", - "pixelRatio": "2.625", - "id": "8f0f0507-ce41-40e8-b4bc-b569dd4fec13", - "last_modified": 1653469171221 - }, - { - "os": "", - "name": "Nexus 7", - "type": "tablets", - "touch": true, - "width": 600, - "height": 960, - "schema": 1653401612907, - "featured": false, - "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 7 Build/MOB30X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36", - "pixelRatio": "2", - "id": "470c91dc-2239-4718-a6e9-7c018cf870f1", - "last_modified": 1653469171218 } ], - "timestamp": 1653469171354 + "timestamp": 1773214792526 } diff --git a/icecat/services/settings/dumps/main/remote-permissions.json b/icecat/services/settings/dumps/main/remote-permissions.json index 7c18ac7c86..1f98763a8e 100644 --- a/icecat/services/settings/dumps/main/remote-permissions.json +++ b/icecat/services/settings/dumps/main/remote-permissions.json @@ -1,13 +1,4 @@ { - "data": [ - { - "type": "https-only-load-insecure", - "origin": "http://rough-subsequent-message.glitch.me", - "schema": 1733820446033, - "capability": 10, - "id": "9f6e573e-d615-4538-8d22-dcb9f33e5a06", - "last_modified": 1733839156202 - } - ], - "timestamp": 1733839156202 + "data": [], + "timestamp": 1771411876459 } diff --git a/icecat/services/settings/dumps/main/search-config-icons.json b/icecat/services/settings/dumps/main/search-config-icons.json index f5704dfaab..e0186a04cb 100644 --- a/icecat/services/settings/dumps/main/search-config-icons.json +++ b/icecat/services/settings/dumps/main/search-config-icons.json @@ -1,5 +1,56 @@ { "data": [ + { + "schema": 1771977606099, + "imageSize": 96, + "attachment": { + "hash": "04dc1979cf7b962c95ca5c2b009208035017f1fb4128eabd7c775f6f49fb96ca", + "size": 4488, + "filename": "logo_googleg_gradient_round_color_1x_web_96dp.png", + "location": "main-workspace/search-config-icons/32165abf-ea41-426e-be93-d5e408f06aae.png", + "mimetype": "image/png" + }, + "engineIdentifiers": [ + "google" + ], + "filter_expression": "env.appinfo.OS == \"iOS\" || env.appinfo.OS == \"Android\"", + "id": "7edaf4fe-a8a0-432b-86d2-bf75ebe80851", + "last_modified": 1772466505212 + }, + { + "schema": 1771342005440, + "imageSize": 16, + "attachment": { + "hash": "1658dba5cc1e8acdee34d58496f90e7473375a2012f3a6147bb16777add1c581", + "size": 6478, + "filename": "duckduckgo.pdf", + "location": "main-workspace/search-config-icons/b9f8a8d5-3086-4b98-90f5-a29f577e3014.pdf", + "mimetype": "application/pdf" + }, + "engineIdentifiers": [ + "ddg" + ], + "filter_expression": "env.appinfo.OS == \"iOS\"", + "id": "b50c3e3d-7bd0-4118-856f-19b26b21d01f", + "last_modified": 1771343611639 + }, + { + "schema": 1771200005877, + "imageSize": 16, + "attachment": { + "hash": "6df9691adea0a28299e4392ae2eeb9816182f3bcb2e1820700ab918a3b98bc0c", + "size": 3197, + "filename": "duckduckgo.svg", + "location": "main-workspace/search-config-icons/e668474b-ca25-49f8-b555-d32f7b57c0b7.svg", + "mimetype": "image/svg+xml" + }, + "engineIdentifiers": [ + "ddg" + ], + "filter_expression": "env.appinfo.OS != \"iOS\"", + "id": "a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3", + "last_modified": 1771343611635 + }, { "schema": 1762992360903, "imageSize": 16, @@ -440,23 +491,6 @@ "id": "71f41a0c-5b70-4116-b30f-e62089083522", "last_modified": 1744118264921 }, - { - "schema": 1743687930970, - "imageSize": 96, - "attachment": { - "hash": "27541cb376bdda829a6cf9cefd13da112728881e3daa4ac3c1178d4ce15f1e8b", - "size": 1571, - "filename": "google_mobile.png", - "location": "main-workspace/search-config-icons/d9917c97-4593-4596-8ef0-cf0635e8aa36.png", - "mimetype": "image/png" - }, - "engineIdentifiers": [ - "google" - ], - "filter_expression": "env.appinfo.OS == \"iOS\" || env.appinfo.OS == \"Android\"", - "id": "7edaf4fe-a8a0-432b-86d2-bf75ebe80851", - "last_modified": 1744118264918 - }, { "schema": 1743687923256, "imageSize": 96, @@ -1006,22 +1040,6 @@ "id": "70fdd651-6c50-b7bb-09ec-7e85da259173", "last_modified": 1744118264847 }, - { - "schema": 1743687735700, - "imageSize": 16, - "attachment": { - "hash": "d994f806b1e4225b50be5ab681b2cecf845cc216a19a432d878cea3cb815bafd", - "size": 2799, - "filename": "ddg-16-icecat.ico", - "location": "main-workspace/search-config-icons/c6ae7df5-0396-4892-b76a-b35a00044a13.ico", - "mimetype": "image/x-icon" - }, - "engineIdentifiers": [ - "ddg" - ], - "id": "a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3", - "last_modified": 1744118264845 - }, { "schema": 1743687839798, "imageSize": 16, @@ -1172,5 +1190,5 @@ "last_modified": 1744118264825 } ], - "timestamp": 1765918784979 + "timestamp": 1772466505212 } diff --git a/icecat/services/settings/dumps/main/search-config-icons/a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3 b/icecat/services/settings/dumps/main/search-config-icons/a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3 index 3ad20825c107dd0f0b544f840f3755d44cba8719..c0ef45f014c56996b87050d05c68d93f6ff9ec0b 100644 GIT binary patch literal 3197 zcma)<*>W5=3`O7l6u8-pXao44VyN zxwru6HxEzmm&>c`>(kxs-R;G0dAhoI{`KzD=`JpDNtM6d^6BRK_ThB*;qmeQmy?s{ z=jZU8!`;XCCl+HoLBsCtt7Um}zdn9A>Uw>CQF_k1`MCf1=k>+u?&9g<_U`r0mrKK!oRlg!HSZaG|E-G6cPr@qgju;q?)gj_8o?0Or)Mhnr54+>-KxUO>uHp3}Y zM*PbBqNX$tCO;$ZO$H*C*o>J^t)a-_lx)G6>wRe~y|-Wm3DYs0WM3~6)~W-?z@d%- z3%Qjghujk}mfjXr;!BIRAdxDPjrYwQwXrO|hB)}!AXwN^gyXMOmcqgd;e>nq$h00qmBR zgb>8!%d~QRk^H2?Mn=4$AdeDi76Y+?3!*U#e&K$ z21$9+sgXqn(E=`zU}|P49T5%<2t1?l&j}Pok{`ep5_?zPU5UmSmdP8-Gz5YQN1mEI zB_+Y-E^oR@E{+bQHA(<+xlm-j!Z~tzq&p|8bZzwID14@*!KETxDWB0Di#fL4*S%p< zb5G@KV5Ex5B(JD|J(JI@8FX$R?rg-(;Vtm%_Ix?2EcvLv7~{` zLcin%t1*NnG)W92qy=rFqK-?(gbKd80+{2;@Gz_Xy5E2&%^5!rM7K#$+eC(9N2mGh z&=_FX>7dL7^0`4-un`-Hp7f;n+Ejt#6Gq==!6cdJHllwcahHc5+y$T=Bcc6$AU;*hX+$JKZ)9M4OR?wV=_^C-ot*VA8j)6S=vQjK#fc2~(FjIRh zB!U4)y8=+)OSD)M(YPMa&@^9l59q1<-a_q_(L*UMVgk#SFp;@zka83iO@&s8!l!RP zyeGX}>|R5Z*tpx>-LHqM$G=W@q0bxJ%bjgr$mGvLCDck5=KYBNVh(~v^%mVfw6G?w zFwu062!+dni7=o{aKclZ7aBBjw`*2-92LbZta+ERIWCz1!8H_8v^5a*tYD2TfJsr< zMs=%~CK*NHZ60{N;cAvt={5bg__vzmBEV5_)kL1&s6tIiQaovDWd3i7HkI(!#k8dn zqv~>}QxOqH3Y9|4k^UK*>V`rgnF>`^N%NcS6>F{}W!oy?1>WzCAPPOh+%Z-bT!XT# z(8*9a=Ok?UcYhmG6h*tiN02Cu;jA3!K6f1WMrXy*|LrcMjok@YXIgt+2}nUnR_27U zY$}~E`}55VG1?7~0Ys`DgTSsEE$tRQFnMtG^QOFD6L)?v8&BT9ef38FX?XkU9|z&3 A^Z)<= literal 2799 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 BObGx0 diff --git a/icecat/services/settings/dumps/main/search-config-icons/a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3.meta.json b/icecat/services/settings/dumps/main/search-config-icons/a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3.meta.json index 6d03f86bca..df6fd5a975 100644 --- a/icecat/services/settings/dumps/main/search-config-icons/a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3.meta.json +++ b/icecat/services/settings/dumps/main/search-config-icons/a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3.meta.json @@ -1 +1 @@ -{"schema":1743687735700,"imageSize":16,"attachment":{"hash":"d994f806b1e4225b50be5ab681b2cecf845cc216a19a432d878cea3cb815bafd","size":2799,"filename":"ddg-16-icecat.ico","location":"main-workspace/search-config-icons/c6ae7df5-0396-4892-b76a-b35a00044a13.ico","mimetype":"image/x-icon"},"engineIdentifiers":["ddg"],"id":"a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3","last_modified":1744118264845} \ No newline at end of file +{"schema":1771200005877,"imageSize":16,"attachment":{"hash":"6df9691adea0a28299e4392ae2eeb9816182f3bcb2e1820700ab918a3b98bc0c","size":3197,"filename":"duckduckgo.svg","location":"main-workspace/search-config-icons/e668474b-ca25-49f8-b555-d32f7b57c0b7.svg","mimetype":"image/svg+xml"},"engineIdentifiers":["ddg"],"filter_expression":"env.appinfo.OS != \"iOS\"","id":"a06dc3fd-4bdb-41f3-2ebc-4cbed06a9bd3","last_modified":1771343611635} \ No newline at end of file diff --git a/icecat/services/settings/dumps/main/search-config-v2.json b/icecat/services/settings/dumps/main/search-config-v2.json index 5f97112ff6..4ad8715f6c 100644 --- a/icecat/services/settings/dumps/main/search-config-v2.json +++ b/icecat/services/settings/dumps/main/search-config-v2.json @@ -4287,7 +4287,7 @@ }, "id": "04e99a38-13ee-47d8-8aa4-64482b3dea99", "identifier": "ddg", - "last_modified": 1774, + "last_modified": 1776, "recordType": "engine", "schema": 1718698362015, "variants": [ @@ -4301,7 +4301,7 @@ { "globalDefault": "ddg", "id": "f3891684-2348-4e7a-9765-0c5d2d0ab1b9", - "last_modified": 1773, + "last_modified": 1775, "recordType": "defaultEngines", "schema": 1702901837584, "specificDefaults": [] diff --git a/icecat/services/settings/dumps/main/search-telemetry-v2.json b/icecat/services/settings/dumps/main/search-telemetry-v2.json index 01fe4ccc20..e5641a343a 100644 --- a/icecat/services/settings/dumps/main/search-telemetry-v2.json +++ b/icecat/services/settings/dumps/main/search-telemetry-v2.json @@ -1,138 +1,7 @@ { "data": [ { - "isSPA": true, - "schema": 1756952145762, - "subframes": [], - "components": [ - { - "type": "ad_image_row", - "included": { - "parent": { - "selector": "[data-testid='pam.container']" - }, - "children": [ - { - "selector": "[data-slide-index]", - "countChildren": true - } - ] - } - }, - { - "type": "ad_link", - "included": { - "parent": { - "selector": "[data-testid='adResult']" - } - } - }, - { - "type": "incontent_searchbox", - "topDown": true, - "included": { - "parent": { - "selector": "._1zdrb._1cR1n" - }, - "related": { - "selector": "#search-suggestions" - }, - "children": [ - { - "selector": "input[type='search']" - } - ] - } - }, - { - "type": "ad_link", - "default": true - } - ], - "shoppingTab": { - "regexp": "t=shopping", - "selector": "[data-testid='shoppingNavItem']", - "inspectRegexpInSERP": true - }, - "taggedCodes": [ - "ff_android", - "ff_ios", - "brz-moz", - "icecatqwant" - ], - "telemetryId": "qwant", - "organicCodes": [], - "codeParamName": "client", - "pageTypeParam": { - "keys": [ - "t" - ], - "pageTypes": [ - { - "name": "web", - "target": "default_tab", - "values": [ - "web" - ], - "enabled": true, - "isDefault": true - }, - { - "name": "images", - "values": [ - "images" - ], - "enabled": false - }, - { - "name": "videos", - "values": [ - "videos" - ], - "enabled": false - }, - { - "name": "news", - "values": [ - "news" - ], - "enabled": false - }, - { - "name": "shopping", - "target": "shopping_tab", - "values": [ - "shopping" - ], - "enabled": true - } - ], - "enableSPAHandling": true - }, - "queryParamName": "q", - "queryParamNames": [ - "q" - ], - "searchPageRegexp": "^https://www\\.qwant\\.com/", - "filter_expression": "env.version|versionCompare(\"124.0a1\")>=0", - "searchPageMatches": [ - "https://www.qwant.com/*" - ], - "followOnParamNames": [], - "defaultPageQueryParam": { - "key": "t", - "value": "web" - }, - "extraAdServersRegexps": [ - "^https://www\\.bing\\.com/acli?c?k", - "^https://api\\.qwant\\.com/v3/r/", - "^https://fdn\\.qwant\\.com/v3/r/" - ], - "id": "19c434a3-d173-4871-9743-290ac92a3f6b", - "last_modified": 1757010621729 - }, - { - "schema": 1754878540963, + "schema": 1771804812409, "subframes": [], "components": [ { @@ -201,6 +70,15 @@ ] } }, + { + "type": "refined_search_buttons", + "topDown": true, + "included": { + "parent": { + "selector": "a.nPDzT" + } + } + }, { "type": "ad_link", "excluded": { @@ -433,7 +311,138 @@ "url" ], "id": "635a3325-1995-42d6-be09-dbe4b2a95453", - "last_modified": 1754960964129 + "last_modified": 1772656186787 + }, + { + "isSPA": true, + "schema": 1756952145762, + "subframes": [], + "components": [ + { + "type": "ad_image_row", + "included": { + "parent": { + "selector": "[data-testid='pam.container']" + }, + "children": [ + { + "selector": "[data-slide-index]", + "countChildren": true + } + ] + } + }, + { + "type": "ad_link", + "included": { + "parent": { + "selector": "[data-testid='adResult']" + } + } + }, + { + "type": "incontent_searchbox", + "topDown": true, + "included": { + "parent": { + "selector": "._1zdrb._1cR1n" + }, + "related": { + "selector": "#search-suggestions" + }, + "children": [ + { + "selector": "input[type='search']" + } + ] + } + }, + { + "type": "ad_link", + "default": true + } + ], + "shoppingTab": { + "regexp": "t=shopping", + "selector": "[data-testid='shoppingNavItem']", + "inspectRegexpInSERP": true + }, + "taggedCodes": [ + "ff_android", + "ff_ios", + "brz-moz", + "icecatqwant" + ], + "telemetryId": "qwant", + "organicCodes": [], + "codeParamName": "client", + "pageTypeParam": { + "keys": [ + "t" + ], + "pageTypes": [ + { + "name": "web", + "target": "default_tab", + "values": [ + "web" + ], + "enabled": true, + "isDefault": true + }, + { + "name": "images", + "values": [ + "images" + ], + "enabled": false + }, + { + "name": "videos", + "values": [ + "videos" + ], + "enabled": false + }, + { + "name": "news", + "values": [ + "news" + ], + "enabled": false + }, + { + "name": "shopping", + "target": "shopping_tab", + "values": [ + "shopping" + ], + "enabled": true + } + ], + "enableSPAHandling": true + }, + "queryParamName": "q", + "queryParamNames": [ + "q" + ], + "searchPageRegexp": "^https://www\\.qwant\\.com/", + "filter_expression": "env.version|versionCompare(\"124.0a1\")>=0", + "searchPageMatches": [ + "https://www.qwant.com/*" + ], + "followOnParamNames": [], + "defaultPageQueryParam": { + "key": "t", + "value": "web" + }, + "extraAdServersRegexps": [ + "^https://www\\.bing\\.com/acli?c?k", + "^https://api\\.qwant\\.com/v3/r/", + "^https://fdn\\.qwant\\.com/v3/r/" + ], + "id": "19c434a3-d173-4871-9743-290ac92a3f6b", + "last_modified": 1757010621729 }, { "schema": 1753236937989, @@ -976,5 +985,5 @@ "last_modified": 1741781945955 } ], - "timestamp": 1757010621729 + "timestamp": 1772656186787 } diff --git a/icecat/services/settings/dumps/monitor/changes b/icecat/services/settings/dumps/monitor/changes index e3b92a7b30..02ebc6613a 100644 --- a/icecat/services/settings/dumps/monitor/changes +++ b/icecat/services/settings/dumps/monitor/changes @@ -1,14 +1,44 @@ { "changes": [ { - "last_modified": 1564511755134, + "last_modified": 1605801189258, "bucket": "main", - "collection": "anti-tracking-url-decoration" + "collection": "hijack-blocklists" }, { - "last_modified": 1633983928590, + "last_modified": 1761148716130, "bucket": "main", - "collection": "top-sites" + "collection": "translations-models" + }, + { + "last_modified": 1772466505212, + "bucket": "main", + "collection": "search-config-icons" + }, + { + "last_modified": 1772656186787, + "bucket": "main", + "collection": "search-telemetry-v2" + }, + { + "last_modified": 1739471652383, + "bucket": "main", + "collection": "url-classifier-skip-urls" + }, + { + "last_modified": 1674595048726, + "bucket": "main", + "collection": "password-recipes" + }, + { + "last_modified": 1744749743529, + "bucket": "main", + "collection": "search-default-override-allowlist" + }, + { + "last_modified": 0, + "bucket": "main", + "collection": "search-config-overrides-v2" }, { "last_modified": 1751018358372, @@ -16,20 +46,40 @@ "collection": "moz-essential-domain-fallbacks" }, { - "last_modified": 1763049497744, + "last_modified": 1719927826949, "bucket": "main", - "collection": "search-config-icons" + "collection": "urlbar-persisted-search-terms" }, { - "last_modified": 1733839156202, + "last_modified": 1726769128879, "bucket": "main", - "collection": "remote-permissions" + "collection": "url-parser-default-unknown-schemes-interventions" + }, + { + "last_modified": 1749069444811, + "bucket": "main", + "collection": "translations-wasm" + }, + { + "last_modified": 1564511755134, + "bucket": "main", + "collection": "anti-tracking-url-decoration" + }, + { + "last_modified": 1745933974542, + "bucket": "main", + "collection": "search-config-v2" }, { "last_modified": 1764684432032, "bucket": "main", "collection": "websites-with-shared-credential-backends" }, + { + "last_modified": 1773641281301, + "bucket": "main", + "collection": "devtools-compatibility-browsers" + }, { "last_modified": 1673270322227, "bucket": "main", @@ -40,40 +90,20 @@ "bucket": "main", "collection": "password-rules" }, - { - "last_modified": 1744749743529, - "bucket": "main", - "collection": "search-default-override-allowlist" - }, - { - "last_modified": 1726769128879, - "bucket": "main", - "collection": "url-parser-default-unknown-schemes-interventions" - }, - { - "last_modified": 1544035467383, - "bucket": "main", - "collection": "sites-classification" - }, - { - "last_modified": 1605801189258, - "bucket": "main", - "collection": "hijack-blocklists" - }, - { - "last_modified": 1770021738368, - "bucket": "main", - "collection": "devtools-compatibility-browsers" - }, - { - "last_modified": 1761148716130, - "bucket": "main", - "collection": "translations-models" - }, { "last_modified": 0, "bucket": "main", - "collection": "search-config-overrides-v2" + "collection": "remote-permissions" + }, + { + "last_modified": 1773214792526, + "bucket": "main", + "collection": "devtools-devices" + }, + { + "last_modified": 1633983928590, + "bucket": "main", + "collection": "top-sites" }, { "last_modified": 1725526980846, @@ -81,65 +111,35 @@ "collection": "cookie-banner-rules-list" }, { - "last_modified": 1674595048726, + "last_modified": 1544035467383, "bucket": "main", - "collection": "password-recipes" - }, - { - "last_modified": 1757010621729, - "bucket": "main", - "collection": "search-telemetry-v2" - }, - { - "last_modified": 1745933974542, - "bucket": "main", - "collection": "search-config-v2" - }, - { - "last_modified": 1719927826949, - "bucket": "main", - "collection": "urlbar-persisted-search-terms" - }, - { - "last_modified": 1749069444811, - "bucket": "main", - "collection": "translations-wasm" - }, - { - "last_modified": 1739471652383, - "bucket": "main", - "collection": "url-classifier-skip-urls" - }, - { - "last_modified": 1653469171354, - "bucket": "main", - "collection": "devtools-devices" - }, - { - "last_modified": 1765387587348, - "bucket": "security-state", - "collection": "onecrl" - }, - { - "last_modified": 1770955022893, - "bucket": "security-state", - "collection": "intermediates" - }, - { - "last_modified": 1748485472559, - "bucket": "blocklists", - "collection": "gfx" - }, - { - "last_modified": 1771223791639, - "bucket": "blocklists", - "collection": "addons-bloomfilters" + "collection": "sites-classification" }, { "last_modified": 1604940558744, "bucket": "blocklists", "collection": "addons" + }, + { + "last_modified": 1771613837993, + "bucket": "blocklists", + "collection": "gfx" + }, + { + "last_modified": 1773642980627, + "bucket": "blocklists", + "collection": "addons-bloomfilters" + }, + { + "last_modified": 1773370622277, + "bucket": "security-state", + "collection": "intermediates" + }, + { + "last_modified": 1773176482130, + "bucket": "security-state", + "collection": "onecrl" } ], - "timestamp": 1773 + "timestamp": 1775 } \ No newline at end of file diff --git a/icecat/services/settings/dumps/security-state/intermediates.json b/icecat/services/settings/dumps/security-state/intermediates.json index c10446c3ab..6c1ab1c411 100644 --- a/icecat/services/settings/dumps/security-state/intermediates.json +++ b/icecat/services/settings/dumps/security-state/intermediates.json @@ -1,5 +1,1695 @@ { "data": [ + { + "schema": 1773367181131, + "derHash": "O6M9yJ8SKjyt2VVQJiQFLjd88FnRwsUZgnD2lAB4aJE=", + "attachment": { + "hash": "ce44e01f9d42b3f07086f64fb49f81ab2504f8d64b76e5b1cc767fe4a53996a4", + "size": 2308, + "filename": "Vg5vaW2eCBdS_Akm21T2JDEWoJUPIC4sRA4M-C4GySM=.pem", + "location": "security-state-staging/intermediates/e9190052-a81e-4a3a-957d-c65ceb9d1aa8.pem", + "mimetype": "application/x-pem-file" + }, + "id": "47c925fd-f5fa-4abe-bea1-3d3de291ac00", + "last_modified": 1773370622277 + }, + { + "schema": 1772204356196, + "derHash": "L32O6rcRFs28V0stlD0iQD07iybjx6vbaPLYy0nC0N8=", + "attachment": { + "hash": "803ed7b182b12329c799b62cabd2eb36e41333356efdf6eb8641aed41d3da4ee", + "size": 2036, + "filename": "VkRKnOagK-3W_ofnoWZOo8bMC79g0KAY3Xf75t__Zrw=.pem", + "location": "security-state-staging/intermediates/7aa6b7cb-3605-49ed-a247-410ae98ae836.pem", + "mimetype": "application/x-pem-file" + }, + "id": "8960852e-3ca8-4d36-bb3e-3d8eea2a20b9", + "last_modified": 1772207822600 + }, + { + "schema": 1772204355378, + "derHash": "QilSwrxYpGca9eissm7/pVUy9AUe6I8/GtAZ/H8rhyI=", + "attachment": { + "hash": "ad486bc8e489167c806c2bdf389605f76ae8d86a306cf30f18589d053b0966e5", + "size": 2036, + "filename": "kBJcqqIaBGWVEKNjZF2uTYqwmmwbsHP162iQT_SCFXU=.pem", + "location": "security-state-staging/intermediates/b1b5ba33-fd79-4f2e-a21f-1a7853e5a13b.pem", + "mimetype": "application/x-pem-file" + }, + "id": "f7f3ab52-809a-4d83-886b-685c924f83c3", + "last_modified": 1772207822597 + }, + { + "schema": 1772204357009, + "derHash": "m2nG7NpVk8RVFhMHOh1WVj76NCut8+eUvQPV3P+XBXw=", + "attachment": { + "hash": "75d90a10d5acdca3d93926a340d4109ad44f1a459399d1dc084515e5bddda836", + "size": 2036, + "filename": "R3Jrcj-fmdhRjoJU-GsaLSrVeSQQS4IHoQWnjSeWatM=.pem", + "location": "security-state-staging/intermediates/62e30670-5d39-457b-a84d-cf9f8dcd8894.pem", + "mimetype": "application/x-pem-file" + }, + "id": "bedb829c-2982-407f-851a-a742f59e0e0e", + "last_modified": 1772207822594 + }, + { + "schema": 1772117600510, + "derHash": "+2QWQ7oguWOM7JmHkxQCCOd3DYcSXb9JrKcS7h5RZlI=", + "attachment": { + "hash": "ff306aa61efd4a1cc80b2852c7e8bf5611caf8ab147677a6f037852c33fa9df8", + "size": 1341, + "filename": "1DndgPHjvFyeXxPov_eoiH353Bw-Gddq9wyPjZhe7yI=.pem", + "location": "security-state-staging/intermediates/d0e61b22-7774-4acc-84bb-ddaa3b63d64e.pem", + "mimetype": "application/x-pem-file" + }, + "id": "aafeffbf-26f0-4dad-9050-e65b5a5f7f63", + "last_modified": 1772117822795 + }, + { + "schema": 1772117598957, + "derHash": "evK1ZEyf0NHnP1gEfc8PU0bGVRqE1hpJ+8ZLWVrOxy8=", + "attachment": { + "hash": "d6ee6304ee7f22592f8f3141604bb77be5d44f42c722035e019b1bf7b7456951", + "size": 1037, + "filename": "muxyP5uc2y-9UqKqr6vb6FY0Ua8xHVZ_kWbaHnVKP1g=.pem", + "location": "security-state-staging/intermediates/2ad630e3-48c5-4af3-93e4-43e98ae3685d.pem", + "mimetype": "application/x-pem-file" + }, + "id": "abb9b4a0-f78d-4325-a774-708ecb68e8f9", + "last_modified": 1772117822792 + }, + { + "schema": 1772117597370, + "derHash": "TZ1fUrvibbQZaYpMfdwmj77zoHkVpxLwlH+q6W+5LpM=", + "attachment": { + "hash": "a92222a5871e9d1ae46f5969a84e6d62ece3046880499d40fcf402496e8f7b56", + "size": 1028, + "filename": "VhkpYPIc6hzxBoJXf7ce0tr4mtJzcH-if3jwCKixZ6g=.pem", + "location": "security-state-staging/intermediates/65f1cde4-20cc-4582-b659-20654baf1190.pem", + "mimetype": "application/x-pem-file" + }, + "id": "f9aa80ce-db28-40a5-96f0-da7ce9de3a84", + "last_modified": 1772117822788 + }, + { + "schema": 1772117598155, + "derHash": "FpITkGSKwMvSvycCaZI2o587YEijXS8Ik92QRYg5EMg=", + "attachment": { + "hash": "815f62bc8d32b8c60378c1913fa0035657e203c3af9481c6796bdb16a7f645ad", + "size": 1922, + "filename": "uWThQdOlXK4YDqahqNSil94m8RgzxnNWnRlvtTOphxA=.pem", + "location": "security-state-staging/intermediates/0b042652-e9f9-4cba-b364-442c1f0efc8f.pem", + "mimetype": "application/x-pem-file" + }, + "id": "ad7e5f86-ee96-4374-bb97-21807d99e929", + "last_modified": 1772117822785 + }, + { + "schema": 1772117601594, + "derHash": "6vnfMtpYAKCjgE608BBnMwMMyMKu2+DlsOvQNKfOhAI=", + "attachment": { + "hash": "862c6c1c16268af8c86bd3aa500df2519e49c915106bc2cb2e16c028f5685ccc", + "size": 2223, + "filename": "7SbSm5tp-nv0elU7DurirLhezt3rqb8JMk4dhjv5SGA=.pem", + "location": "security-state-staging/intermediates/bc2bd4de-bafe-4bde-909c-6bf7403566a6.pem", + "mimetype": "application/x-pem-file" + }, + "id": "77fd2e6c-7902-4a33-8314-de405c09568c", + "last_modified": 1772117822781 + }, + { + "schema": 1772117599742, + "derHash": "5bAndcFDAJCmZFBQLDqRquEmTCWC/uV8nlz5zk2UwH0=", + "attachment": { + "hash": "b378118522deae61293b4e6996354f4911b80b8641ab3bd09203646f071c1d41", + "size": 2215, + "filename": "cjBeGGAKtsiP6OE7bsrFy5mG5g8DFxb8yONCo-0BCAo=.pem", + "location": "security-state-staging/intermediates/a82507cc-42ee-4bbf-9d90-26caa00de748.pem", + "mimetype": "application/x-pem-file" + }, + "id": "52d70d92-158c-457e-9683-ecff284c29d5", + "last_modified": 1772117822778 + }, + { + "schema": 1771768749930, + "derHash": "oYeK5ubQLuqhAZmSTew5itKFz+LjkEtfZo2SWiOkVhw=", + "attachment": { + "hash": "893a4d20222ae4567a894f680f4a8a467166ffb158619bab2d03392e41e7c93a", + "size": 1435, + "filename": "G_ANXI8TwJTdF-AFBM8IiIUPEv0Gf6H5LA_b9guG4yE=.pem", + "location": "security-state-staging/intermediates/fa48ee6c-24a6-4de1-b16d-3485ae61235f.pem", + "mimetype": "application/x-pem-file" + }, + "id": "35dffd53-6ce4-4895-92bb-7792543efc50", + "last_modified": 1771772222966 + }, + { + "schema": 1771768749532, + "derHash": "CNSGhe+Ex3C0QfY2XXB7HHqik64v16oVmiRFE4DGATQ=", + "attachment": { + "hash": "b5710b9fd19897b7b7e53eb516f56a40e69cd92cbd117618e75f9aafa5777f14", + "size": 1394, + "filename": "G_ANXI8TwJTdF-AFBM8IiIUPEv0Gf6H5LA_b9guG4yE=.pem", + "location": "security-state-staging/intermediates/7c07651c-3899-4ad5-92d2-a584c57b6ce2.pem", + "mimetype": "application/x-pem-file" + }, + "id": "087ae332-ea97-4552-a159-b91d16abeefb", + "last_modified": 1771772222963 + }, + { + "schema": 1771768749044, + "derHash": "Kiq7gbaiMYb5LVt+IftZMUZ6zh971K5Dlb9MS4wCZGg=", + "attachment": { + "hash": "eaec4fbe33c87de727b7117cefd947bafe6015ce3108359dd6f8e46afdd3027d", + "size": 2125, + "filename": "K89VOmb1cJAN3TK6bf4ezAbJGC1mLcG2Dh97dnwr3VQ=.pem", + "location": "security-state-staging/intermediates/2a0242bf-de50-4c50-95ee-f0dc490a89de.pem", + "mimetype": "application/x-pem-file" + }, + "id": "e58a2fdf-2322-4806-bc7b-c65a94b9f827", + "last_modified": 1771772222959 + }, + { + "schema": 1771768748599, + "derHash": "3B5O3ys1zIEelnRE+10TvAF9x+hlJ++KWjUQnsFKHPM=", + "attachment": { + "hash": "567b78b6fe938997e9cd01da9ff2e02d0ef2c19f317f3e127c7016a5ecfe9190", + "size": 2560, + "filename": "K89VOmb1cJAN3TK6bf4ezAbJGC1mLcG2Dh97dnwr3VQ=.pem", + "location": "security-state-staging/intermediates/931e3924-506f-4fc6-ab52-399480c2a20a.pem", + "mimetype": "application/x-pem-file" + }, + "id": "e12c2e9a-21d7-4c96-be95-0bcbf5059e82", + "last_modified": 1771772222955 + }, + { + "schema": 1771509557311, + "derHash": "wAO4yz8Ey2gNnidXfUl+PG/r4+KkALepKwml6zjJ+sc=", + "attachment": { + "hash": "bba6fee9c638fc0bb66f0aca6a04feb22f2437cc8810caafa472b61983865cc8", + "size": 2300, + "filename": "qEARbagEM4uxwIMf9T4As1lIb5Nh6EAgvw2YzeHYK7w=.pem", + "location": "security-state-staging/intermediates/cfc4f010-7021-4f72-bae1-e536cb9563a3.pem", + "mimetype": "application/x-pem-file" + }, + "id": "0dac995c-5c6c-4a1f-af61-1fa908290896", + "last_modified": 1771513022842 + }, + { + "schema": 1771509556805, + "derHash": "CDNRe9bX7gEhcyLLqHM8ETRoh/BlNATyTe0fjkhcK2s=", + "attachment": { + "hash": "0c4094f2c3726037de2909d5d0a0383023b486a974d1d9e84dabff44540c8754", + "size": 1772, + "filename": "9aRZ9FaploJqrFZWXeqoWgPs7XVI3lOweGuCzG9fKGQ=.pem", + "location": "security-state-staging/intermediates/ae47ea83-973b-4d3b-ab78-6537f2989259.pem", + "mimetype": "application/x-pem-file" + }, + "id": "276adda4-a8c0-4dd4-932d-9428d05875f5", + "last_modified": 1771513022838 + }, + { + "schema": 1771379968391, + "derHash": "WoTJQFTTQNZQopmF75e7OWNS4hWu1sCzPKf/3TvV0qI=", + "attachment": { + "hash": "f5c50b1eb05ddcd12e58d62bf14a7146c9ee6abac9c4e0a2212437d6fd8e8953", + "size": 2117, + "filename": "lscl7HdjRMUHcclcvnvcvSKZWwmFafcnrjiw69_1v34=.pem", + "location": "security-state-staging/intermediates/fddcb40d-f6ae-4904-8cb7-88b549e1dafa.pem", + "mimetype": "application/x-pem-file" + }, + "id": "ace4dd76-442c-4c76-974c-5ac891a58682", + "last_modified": 1771383422979 + }, + { + "schema": 1771379965723, + "derHash": "51aP5uEjMfT9feYdpMdVnQ+OsZKiGNR0GjunUYQzODg=", + "attachment": { + "hash": "f8c33bd58a32b518142cb47da0926304d2b8096ce761756c169ab85bd3d80f64", + "size": 1240, + "filename": "4CVMf83CZeLw-KQo2rt1q0rgObSHLWL17lfwh31aikE=.pem", + "location": "security-state-staging/intermediates/f24003fe-b187-4755-a466-458ebb0f836f.pem", + "mimetype": "application/x-pem-file" + }, + "id": "7edf4436-5892-4600-99fb-78b1a33970f1", + "last_modified": 1771383422976 + }, + { + "schema": 1771379965378, + "derHash": "3nZ3kuhwvTLzMQKfyJ3CTFP535cNxw8eowzynbP5S6k=", + "attachment": { + "hash": "c0b032efd97cd47e0efabd0f5d8bd4720a0fca0e37964e02ab742d864b3caf89", + "size": 2389, + "filename": "qkIW3ICnKZrm3ghES-osWI3Ic2MevFY8B3bYOhth484=.pem", + "location": "security-state-staging/intermediates/5a4f2508-a489-40d3-9f02-7f45d76118d3.pem", + "mimetype": "application/x-pem-file" + }, + "id": "dd409a00-a1af-4b42-8583-3c85cba072ea", + "last_modified": 1771383422973 + }, + { + "schema": 1771379964710, + "derHash": "rAq5Y7tfPaBfvIaH+YwrbqC7SZ5hGMGpE2sbx8PHGms=", + "attachment": { + "hash": "85c8ec5dd9e2aef22c301709411a40ca34de77ae66cdf3a22ea4e351f5965835", + "size": 2251, + "filename": "eXySzCsBWDIfmGF01cwDJgdAdt8Hj7D429qgL2aN-zU=.pem", + "location": "security-state-staging/intermediates/d9247ff2-7bc9-4ef6-8166-f5c67625e10e.pem", + "mimetype": "application/x-pem-file" + }, + "id": "1402c685-cdd6-44a6-8266-776c14665fca", + "last_modified": 1771383422970 + }, + { + "schema": 1771379964366, + "derHash": "xyxLWFIu4DS0mibugivE1nyNNIdWxbs3O2ote4Ial7A=", + "attachment": { + "hash": "a721f1048a1c36969e590a89b5cbb931052a3753f58f736d8b549c43c754d98b", + "size": 1589, + "filename": "cF3R63OIukWEa-CFv_Qt8-pZMFGw0GJvU8Eyyk5mZ5o=.pem", + "location": "security-state-staging/intermediates/b19ed43a-a60e-4451-a671-e3b0cef7fe27.pem", + "mimetype": "application/x-pem-file" + }, + "id": "3c27391f-4099-40b6-9e88-e14e8e5ca623", + "last_modified": 1771383422967 + }, + { + "schema": 1771379965044, + "derHash": "QvVuls2IsTwpJY/NwSEwQKvwxC6ilnKZGuw/NzTO0FY=", + "attachment": { + "hash": "992da64bc371d43747582630e5718b9feed9aab05de221c8937bc749a9b4d257", + "size": 1288, + "filename": "KaLohbfxUFEfj4AAh3ZqZy1OO8w6lhcloTTUbDlQ1_8=.pem", + "location": "security-state-staging/intermediates/6b38209e-11e5-495b-b201-88e4909f0f0b.pem", + "mimetype": "application/x-pem-file" + }, + "id": "59c65fd3-bcbe-4935-9656-288009ec3e42", + "last_modified": 1771383422964 + }, + { + "schema": 1771379963956, + "derHash": "bmLL4+QqQcUEBbPi8aRCV2gyZ4VhhK+cAhEgcKyDaTY=", + "attachment": { + "hash": "b720fd52f7eed374b2c5902c55a3d185a8cd84a9b4fada7958cae32b764e4368", + "size": 1358, + "filename": "3hiWxsgsNSgIwyt2ATwgEYbkxoaBEZb10lFKzoR0-ig=.pem", + "location": "security-state-staging/intermediates/8c53a125-d841-4456-a399-4ad32207f472.pem", + "mimetype": "application/x-pem-file" + }, + "id": "134cf729-a94f-4962-bc7c-52f5035d50b7", + "last_modified": 1771383422961 + }, + { + "schema": 1771379967393, + "derHash": "sqvoRnJUhpXBEf+anW2NVeq6vy/DEdAuz4apPNf842E=", + "attachment": { + "hash": "2e9bd11efa10a24c1f71b10974c425490c6cdde5b667e0404c370512ceba3f5f", + "size": 2735, + "filename": "2u51ydhEqPz47YDSUGLPhLr_3tztYtyPBoMwPRSn4oE=.pem", + "location": "security-state-staging/intermediates/2c62f714-6d74-4506-b31b-052ba9a512de.pem", + "mimetype": "application/x-pem-file" + }, + "id": "968e580c-33af-4783-85e8-7dfd0f74ee8b", + "last_modified": 1771383422958 + }, + { + "schema": 1771379963223, + "derHash": "grz8SCzBn3Hm+Y9KAnYW69ptRwltQIszYWDRwO+LmVo=", + "attachment": { + "hash": "be2855dfafa17fa34f957c9cd98474432312ca28992d830b04826c21f38436ed", + "size": 943, + "filename": "ppiiCCS-BOR6GjPE-kiHMb6SAR8jox6QDiyibJwqz84=.pem", + "location": "security-state-staging/intermediates/5d51f31f-d90b-433d-a8b1-bec382d5d6bb.pem", + "mimetype": "application/x-pem-file" + }, + "id": "49fc9288-5fe6-4e70-89f3-99dbfac3a942", + "last_modified": 1771383422955 + }, + { + "schema": 1771379967070, + "derHash": "PiRk1FYvtEEPIMXGbIEsUr+77zEFnOVe9b2zcDOGqnQ=", + "attachment": { + "hash": "88bf23c08ef982fb2b635d421cb8fb243d2256368f1538331134cb66a43a4c58", + "size": 2487, + "filename": "mb9PIWST2qCtIPFSyDuWAoIpd8kXC82e6Up-oC_dMEE=.pem", + "location": "security-state-staging/intermediates/791c65ba-7539-4ba2-bb51-59fdf054ca87.pem", + "mimetype": "application/x-pem-file" + }, + "id": "febfffdd-290d-4fb3-9e00-2fc97ebcced5", + "last_modified": 1771383422953 + }, + { + "schema": 1771379969418, + "derHash": "qonEZunQaILA2q9yvg8PvP58HvKqrRkGQMStRPVRfzQ=", + "attachment": { + "hash": "faa26183cd8190e64a0334a9d0bc1653de74cdfe0addd4bd510ee4563a0b2664", + "size": 1561, + "filename": "Am8KjiB_BfHxcttxPcItD0PI_w1pckqm-saoOT32JQg=.pem", + "location": "security-state-staging/intermediates/26d148b1-25f9-426d-86ac-552394e9054c.pem", + "mimetype": "application/x-pem-file" + }, + "id": "418173ef-88fe-4d97-958c-1e0da945563b", + "last_modified": 1771383422949 + }, + { + "schema": 1771379962907, + "derHash": "AntO7Di0a/1rXD4Cjwki0mjTZ2mL0V4B970IHsNsg2k=", + "attachment": { + "hash": "43815e0dd51ad3fed90f05972d041324bb9ac7f08a046b02ccaeca155efaeb2b", + "size": 2385, + "filename": "H5EVCD_uxlealMCAU1-wGF4zJArdCQoPKU6hLVSzqpc=.pem", + "location": "security-state-staging/intermediates/c20cb8ea-23ac-4b50-857d-1b277b556e29.pem", + "mimetype": "application/x-pem-file" + }, + "id": "877a531e-de20-41cd-9cfd-634fb6c00d08", + "last_modified": 1771383422946 + }, + { + "schema": 1771379963612, + "derHash": "QcWHprrAFDKX0O3F1SK1fNiy0aDUkTobU0qfmoZmhTY=", + "attachment": { + "hash": "24156b9598ad35535b0337940e471028d5b803e9cb36f193fef797f7809e61ed", + "size": 1240, + "filename": "uk4MGW5v2CSjKpfebWgba_KPHp3sM46cWd4ytRuFTcQ=.pem", + "location": "security-state-staging/intermediates/d9a4c4ea-07e8-4d7b-891d-6551622a0482.pem", + "mimetype": "application/x-pem-file" + }, + "id": "9a3dcc6c-c8a7-4e2a-8f52-9e5d4f5f8ae4", + "last_modified": 1771383422943 + }, + { + "schema": 1771379962557, + "derHash": "TY60k4Dscqyf3yH+HG2y6UkMdr6t0fe1KMPM0nLI/ig=", + "attachment": { + "hash": "b66664c300d9d856dd6eef13fa063334f34d358466c922d8c47b40ad0c0b0e44", + "size": 2024, + "filename": "49lIjSAnHwOuVWuOR-RTuElzQhgXaCC3y9iz_nrQN2I=.pem", + "location": "security-state-staging/intermediates/a1e1ab11-d197-4b36-98e1-2f6a6e99b177.pem", + "mimetype": "application/x-pem-file" + }, + "id": "4e872b26-5f8b-4e33-8f96-ff9df8c5859a", + "last_modified": 1771383422940 + }, + { + "schema": 1771379962211, + "derHash": "3gKeQPa7hR2kuATGUSHYU1CE/faztH3ffpS05GpsNDc=", + "attachment": { + "hash": "d0f2c8e9295eb4ea9792068f25164c00c9b913fcedb9db3ba134031bda6cb40a", + "size": 2365, + "filename": "iLwUAXho_6xcMDa1cMgLPi8TIgspLxA1PxRIpsxJt4s=.pem", + "location": "security-state-staging/intermediates/2274bdfb-9c77-4301-b638-98493655bb32.pem", + "mimetype": "application/x-pem-file" + }, + "id": "ad62ce47-53e1-4b53-959f-816ac126ac0a", + "last_modified": 1771383422937 + }, + { + "schema": 1771379966052, + "derHash": "ojctBkMelxY2Xu7UfsAgNRSX0YL8wDjkV+WBaKA8rAc=", + "attachment": { + "hash": "811b937bdd4efe14766de088a75aac2318834e7ed0ee67c1290ec555f140db87", + "size": 943, + "filename": "brzvtCELCIZUo4sD_qPX0ccRtPsd3DY6RfmxpOU9oB4=.pem", + "location": "security-state-staging/intermediates/2536f44b-4a3c-4e6a-a439-241cfc2f45e5.pem", + "mimetype": "application/x-pem-file" + }, + "id": "a746c5f1-d7e1-48e6-b0fe-c1b6fe3eb028", + "last_modified": 1771383422934 + }, + { + "schema": 1771379961819, + "derHash": "rXRxHjawTUBYhFAnhOQxs3AFaIbzjktMvIDcOnBSDmY=", + "attachment": { + "hash": "5f6db70c1c139d138f32546ecfa64d0ff883b7f7f50ebac7bc48402c5e661c3c", + "size": 1565, + "filename": "eNzAzWt9Of2amgClv4NtB_Yi23H4BoVIN0l2LkH2C3E=.pem", + "location": "security-state-staging/intermediates/b05ad0bf-feac-42d0-89c8-38749ed22b48.pem", + "mimetype": "application/x-pem-file" + }, + "id": "1e82b623-2e35-4076-b2b4-9066eeddf6de", + "last_modified": 1771383422931 + }, + { + "schema": 1771379960767, + "derHash": "3MTqZ+G0bC0AdFBG8/vzEVpOgZuSrue5Kg+NugeWz5o=", + "attachment": { + "hash": "bcfd5bae16b714413183943a3eea9c1171d5c14f5d2ac0f81a1c6c124caeef19", + "size": 2288, + "filename": "uNTFkYMpAkhXFadzPws2J6iLVX44ue38H6LKC6alh3A=.pem", + "location": "security-state-staging/intermediates/f98d0469-4125-4c86-b13c-e7b483b4f6b4.pem", + "mimetype": "application/x-pem-file" + }, + "id": "38347b31-124d-409a-87a7-38e518c0c4bf", + "last_modified": 1771383422928 + }, + { + "schema": 1771379968735, + "derHash": "DrvfFG5j9w+qWSfujlNG6clsXw2b3TISsE7WaHF5h00=", + "attachment": { + "hash": "bbdd4921a8930b33ba74748b849b85b781995c1df4ff5eb07b3e4a285a958904", + "size": 2093, + "filename": "B_ap-qAli0QgK_GmwkqkWS5Ta20el3pYN4MTgORZMjo=.pem", + "location": "security-state-staging/intermediates/50bab50b-b900-4a47-942f-669aeeba3991.pem", + "mimetype": "application/x-pem-file" + }, + "id": "8ce8ad40-50a5-4e6d-abb4-4723b903f756", + "last_modified": 1771383422925 + }, + { + "schema": 1771379960421, + "derHash": "oNFSOgv2Y1UOuQgem93toSgU+VcLdpfZXfLqU9T/deM=", + "attachment": { + "hash": "ee5666095b0adbea4d0fc0e22f86c954e59f68c2eb5a347a7c6c3eaf8db0a25f", + "size": 1410, + "filename": "zJax49jXNWVm12ouj-dVmlW_r0Zw4NbjfsoCxV3-blM=.pem", + "location": "security-state-staging/intermediates/d587e297-86e3-4e52-869a-c57abe4f63f6.pem", + "mimetype": "application/x-pem-file" + }, + "id": "324d9a22-f6f1-4344-ab91-3200e0d6ce0f", + "last_modified": 1771383422922 + }, + { + "schema": 1771379961444, + "derHash": "br/5Jyl6WzqvXq5nIlLDalFYRz+lu/DilQjVUoNY+Ds=", + "attachment": { + "hash": "5acc2bf7218df8cadd8d0ec9b02fccd5215c889fa33ab81589567f0ffc63db95", + "size": 2735, + "filename": "SbUYe80N5PUD3jhsoas-Cerx4jAWMp_rKd6dCI-gu5o=.pem", + "location": "security-state-staging/intermediates/cef62925-0c09-40b7-ab06-50de468f5186.pem", + "mimetype": "application/x-pem-file" + }, + "id": "dd108fda-2511-4d91-813c-fc2e18a3f77b", + "last_modified": 1771383422919 + }, + { + "schema": 1771379960049, + "derHash": "KgFVMaXzpM5Ym9hTxx3QaVhzIvV02Fycm5+d+PhsB14=", + "attachment": { + "hash": "55fd7cdb607d62d8b1e1502661056767eac9a992e199601d101161e96d67bbfd", + "size": 2272, + "filename": "MV3IyrkNFIBvx9PowOoHv2BarAqZ3RsECQExDLC8gdA=.pem", + "location": "security-state-staging/intermediates/e8becf1c-fdb6-4a1a-bd91-c1c5e0126731.pem", + "mimetype": "application/x-pem-file" + }, + "id": "e03fa1c0-c411-401b-a6bf-a12f0188413a", + "last_modified": 1771383422916 + }, + { + "schema": 1771379959702, + "derHash": "ekO8d0fQYz+9kP+QDJJCQXwCfb3KBa9y2ppw41GNvi4=", + "attachment": { + "hash": "e95dd2c507b22712af6f40859500a2ff8c8404bfbaeb26afe7fb02fc4ebf3aa3", + "size": 2247, + "filename": "Y1e_3DqsL_yWI4RIaJ4OfhLEW5JiJoNKFVF1AxFqkiA=.pem", + "location": "security-state-staging/intermediates/624914fd-9b4c-42b8-9d2e-dfca7c80eb40.pem", + "mimetype": "application/x-pem-file" + }, + "id": "c4738353-87a6-454e-ba2d-3f1409a4ec2b", + "last_modified": 1771383422912 + }, + { + "schema": 1771379961097, + "derHash": "AWTXzq5buQnCcq8VH/RLEXeum0fZQkuU8dlVjDCTTRk=", + "attachment": { + "hash": "00eab85c78a2098afd3ca8451d462b40b763b7267c9d126dd0b0e1cc7cece87a", + "size": 1240, + "filename": "Sd01PcK5GaN3BkURfQ5gwWEV59G8JZ7v5zSwDqQ0_l8=.pem", + "location": "security-state-staging/intermediates/4656f5d6-4de9-434e-9b9f-7b892bc84fa7.pem", + "mimetype": "application/x-pem-file" + }, + "id": "fe2f0eb0-0fbf-4434-9fb9-7fb1f42db2a2", + "last_modified": 1771383422909 + }, + { + "schema": 1771379959362, + "derHash": "tFq44HkCXfl4NTWnIIYhKcmy0iZyub6N/nzS7aM/YqM=", + "attachment": { + "hash": "241dd49681f820011509f861857c1b1f839342dae9b9f76cc64c2df4856a72fb", + "size": 2426, + "filename": "OvNIbrbxKMoTb8GYIG1BTn9lwQ0YYroiOhks5fB5qEw=.pem", + "location": "security-state-staging/intermediates/56650953-6928-4ef0-a8c1-13a6b550a2e5.pem", + "mimetype": "application/x-pem-file" + }, + "id": "36406b21-9d10-4554-a6ad-cd8fb0ea79bf", + "last_modified": 1771383422906 + }, + { + "schema": 1771379958610, + "derHash": "LOO+crv1btsXCVtgPtTYKAsIGzggQ0FUaALBQnuyQ18=", + "attachment": { + "hash": "afc258e86e09c37825e2de569bea1329869357e5f9cd9b08a2892c173479be8b", + "size": 1565, + "filename": "CWwJGEh4OA8IRMxg2K3Zt_qM9sJ80TjsA9B7YMpvutU=.pem", + "location": "security-state-staging/intermediates/5dd85422-3d67-4831-94bc-8c84060faf3f.pem", + "mimetype": "application/x-pem-file" + }, + "id": "32a9b3eb-fcc3-486f-b357-0b9f73397fa5", + "last_modified": 1771383422903 + }, + { + "schema": 1771379957758, + "derHash": "yZ9SrPkCKkSjf1s6bCcPjFRTY7MLgaByZJh857sb+GU=", + "attachment": { + "hash": "acd4d614b98e48d90dffa83a191e6f4ff1c64fc270e277fb8201f1b04bd14e54", + "size": 2223, + "filename": "DvsDTnebtr-qMNzm5ZKkdsj2njoPettzSoSoZ7KFFVU=.pem", + "location": "security-state-staging/intermediates/e8af9453-7607-4bf9-8cc3-c29c0c3d98b2.pem", + "mimetype": "application/x-pem-file" + }, + "id": "2d3690f9-c6df-470d-904a-f646155d6edf", + "last_modified": 1771383422900 + }, + { + "schema": 1771379958239, + "derHash": "2OJppusIy8M3rWV4xyE1eHSEyZ0vsIzO0CnoBr4QQPw=", + "attachment": { + "hash": "ed3ea6d09c5ea1ee4aff94776f7636c5caa4a1f898b7cf38a7a51186ce041b2e", + "size": 1362, + "filename": "A0W8sBH3jBrKa3ukj8kse0jYSSeQM5e5tb8obnMQvak=.pem", + "location": "security-state-staging/intermediates/0b176f29-4c30-4f89-899a-df7c0a33c89c.pem", + "mimetype": "application/x-pem-file" + }, + "id": "6de339fb-c8aa-46b2-8d3b-b0336aae52d9", + "last_modified": 1771383422896 + }, + { + "schema": 1771379958978, + "derHash": "qRqkXHm5nzq6ecxnfSvdRiO1Sj0DWzdoEQnX44ugLmw=", + "attachment": { + "hash": "ad3b03e3ad99c904a1f84f06c2bef0f7591df4e115471bc648803eda48bb2abf", + "size": 1114, + "filename": "CDlUKmOe_VJz-xHAWD4rTyxmJyTk6Ov6LaEobP-GgSc=.pem", + "location": "security-state-staging/intermediates/212cc45c-2d61-41a7-b295-baf70870c47f.pem", + "mimetype": "application/x-pem-file" + }, + "id": "06d56226-3393-41ee-9fef-1805be9015d2", + "last_modified": 1771383422893 + }, + { + "schema": 1771379995448, + "derHash": "jMNOEcFnBFgkreYcSQemRA7bLEOY6ZwRKoWdZh+OK8c=", + "attachment": { + "hash": "a013c9348417f4076dc717cab4baf557d42e0c77d49f5a42c13f09fafee4a167", + "size": 1634, + "filename": "zUIraRNo-4JoAYA7ROeWjARtIoN4rIEbCpfCRQT6N6A=.pem", + "location": "security-state-staging/intermediates/fb539179-3a9e-409c-b816-b1ff9c2e9fcb.pem", + "mimetype": "application/x-pem-file" + }, + "id": "b15c1982-02da-42fc-8b9e-f65441b163a5", + "last_modified": 1771383422890 + }, + { + "schema": 1771379995124, + "derHash": "JZ/wljoGZb9A2S4F6VuWDMtCPb0RdIKuZHvH/V9c5kQ=", + "attachment": { + "hash": "bf962f1cb23a7d0f480631f980003b0f8a4954d3fc8a536096b85009bf10f4f7", + "size": 1268, + "filename": "Sqfg55kB0nCelHUOmKAT5k3L3CGcI73qNrCvquxPEtk=.pem", + "location": "security-state-staging/intermediates/a7ebba07-aa5e-4e11-a3dd-8e3fe29c9913.pem", + "mimetype": "application/x-pem-file" + }, + "id": "9f9df346-b0fb-4675-8b3e-3e24e715a4c8", + "last_modified": 1771383422886 + }, + { + "schema": 1771379994810, + "derHash": "RtGy9G+VlBC9AgFwLLMwd6nDT1yyP5ds3Y0yiYmwSyc=", + "attachment": { + "hash": "3ea63dc4a507eb387f96400817f15526526c7689c329daa32bc3b7dbfe5e99e5", + "size": 1114, + "filename": "rIFtvsDVcqaV01KeZLiAe4bkDXjdYYIEA8JYpUI5ZSk=.pem", + "location": "security-state-staging/intermediates/1e0725c8-0d33-4925-8b1a-bcd9cb054609.pem", + "mimetype": "application/x-pem-file" + }, + "id": "a10f288b-d071-4599-a4d7-a3f580d70d8f", + "last_modified": 1771383422883 + }, + { + "schema": 1771379994492, + "derHash": "BObeomG4cg4FJenaIyghADUr3rwRnPw9vYEsPWiivN0=", + "attachment": { + "hash": "3d6e89e33678a67ec6eddaceb18b70cadc759bfe633e7ef09cb8626f20fb4fa9", + "size": 1219, + "filename": "7vXeSnRXvLXvl9B1zzN_yCCeS8JHPs9oESfufaAZTPo=.pem", + "location": "security-state-staging/intermediates/2fd11858-a029-4e16-af02-25b825af97f4.pem", + "mimetype": "application/x-pem-file" + }, + "id": "78063c24-1c04-47fa-a180-3a917548f47c", + "last_modified": 1771383422880 + }, + { + "schema": 1771379994137, + "derHash": "LAtV3z5vJrQTPNBK57emLx3O/Uwn59c6MMsl2RR4bpg=", + "attachment": { + "hash": "7d32a81b7be56d2a93def670e5276bf92d603edb237cdc7a5091e142b3945039", + "size": 1223, + "filename": "YmkZngLgE644SL3H_7nkRhQ7T-xLsXz5ZtXbk0Skr8c=.pem", + "location": "security-state-staging/intermediates/b1a32551-f394-4e3d-ac11-6d9e82429532.pem", + "mimetype": "application/x-pem-file" + }, + "id": "fe9c9028-3bb1-4f7c-b2e9-eda5a4f6aaaa", + "last_modified": 1771383422877 + }, + { + "schema": 1771379993828, + "derHash": "sm6zEPj68O9bDQtxqmXsBQ+jreKRNPtDirZEAoj6bmc=", + "attachment": { + "hash": "c9fd1a02e33e6fb6aa966212b051bc01d9763d43207f96cd14bd4d2ab77caf5e", + "size": 1666, + "filename": "3mc_12C2pwvtV5JjfcxLmbbWYQSbj9yqSWLXKfZcMUw=.pem", + "location": "security-state-staging/intermediates/3f6fcb85-590a-4394-a50b-fcd97767f005.pem", + "mimetype": "application/x-pem-file" + }, + "id": "c9c51e92-10a6-4cca-9541-da41d90ac859", + "last_modified": 1771383422874 + }, + { + "schema": 1771379995845, + "derHash": "F4Mtu0j2CbcionUH8dMn3gYtf3uFtxMl2N2ZsZ+1utQ=", + "attachment": { + "hash": "9ec9aad5d1e702532463d40db23f5be46e95a5ccaff14959865f2e44ccb6c9f0", + "size": 2402, + "filename": "Flwt639e1YxmeZ5xDPUdZ4HnKJP9cnEbsIwp5s3EQ24=.pem", + "location": "security-state-staging/intermediates/a3301551-1077-4f09-ae3b-ad23de390f2d.pem", + "mimetype": "application/x-pem-file" + }, + "id": "3d692efa-1190-491d-b508-0af0027cd69e", + "last_modified": 1771383422870 + }, + { + "schema": 1771379993506, + "derHash": "efH1q2l96/GV9bfaZflTmWgu2uuAEVudQqauXi+piAI=", + "attachment": { + "hash": "9c4047b27b1b439594f0eb24b088e1d1ed2f32b8eaf4ad49dd4d2745b8add3f5", + "size": 1683, + "filename": "jzqM6_58ozsPRvxUzg0hzjM-GcfwhTbU_G0TCDvL7hU=.pem", + "location": "security-state-staging/intermediates/16a959a4-49f3-4646-92e5-b802f00c45d8.pem", + "mimetype": "application/x-pem-file" + }, + "id": "6575940e-5533-4443-8372-8f2af2beef1a", + "last_modified": 1771383422867 + }, + { + "schema": 1771379993182, + "derHash": "TM8XwMjBwQ1YduxeMoD+jRNN82rt2ERCibmQvDdB508=", + "attachment": { + "hash": "b3e4e383491cfa05a6e5858dc73ac1a4018938ed5c15a0d37c708311bd252227", + "size": 2251, + "filename": "xpW9XED3U765P2UyAqPWNU7eDdISlf2JSghpvjZnU-Y=.pem", + "location": "security-state-staging/intermediates/68a64f82-d604-43b4-8026-02e02c53fce5.pem", + "mimetype": "application/x-pem-file" + }, + "id": "9bc7351a-ded3-4f2d-802b-a0d70173eaf0", + "last_modified": 1771383422828 + }, + { + "schema": 1771379992866, + "derHash": "48hVL2s5Nmtartt2CKc+P9aNEAwTCcsVcYFD6oaD8lQ=", + "attachment": { + "hash": "20e9f9718ba6acec1bbe1e8b095d4b53b35c79efe52994dec2244c04b49fc187", + "size": 1366, + "filename": "xC5Mppf2n30ntcbkf0_mu7qM2c8gkAWweKnBTAo1aZw=.pem", + "location": "security-state-staging/intermediates/b412deb9-2345-420d-9286-e781b68cbf1a.pem", + "mimetype": "application/x-pem-file" + }, + "id": "3fd60854-54de-441c-ba8a-5d145fb317e7", + "last_modified": 1771383422825 + }, + { + "schema": 1771379992530, + "derHash": "ekrZ4bot+wj3UqEkAy9wWIaAYumEF4ViPrQTZ4OlP/w=", + "attachment": { + "hash": "2a78aadf6f57056bfccf06216d6b005477a6b8793f3e6943e836155836bd973f", + "size": 2406, + "filename": "1H6MGjLPtFRyYFlSo4Ass0f3mCO8NV0eF1V3MxXc924=.pem", + "location": "security-state-staging/intermediates/80eb7e77-68b2-42be-bf4a-9acedbb841bc.pem", + "mimetype": "application/x-pem-file" + }, + "id": "35bcb1ea-2846-467b-b6cc-4cbcf281cf8b", + "last_modified": 1771383422822 + }, + { + "schema": 1771379992196, + "derHash": "Qy7CXw0o3pAG2Xv3UvF7uyzUH2aZM/ywctmhFI0CYfM=", + "attachment": { + "hash": "09abd3ce43cb10535c1dbf00e2d354e1b1e921828615c6982c1fa1db5a151f0a", + "size": 1240, + "filename": "XAZgorFkkQ2P9YnBjhRVLp4Owjfc7-LLc21BpIEfgaA=.pem", + "location": "security-state-staging/intermediates/1dd3c44c-9465-47c9-8bff-5e0f3d290f6b.pem", + "mimetype": "application/x-pem-file" + }, + "id": "e5c3997e-7d81-4ff8-82cd-a90511c6f3ff", + "last_modified": 1771383422818 + }, + { + "schema": 1771379991866, + "derHash": "M+ik7UiTB2DOGtei1E8HmyL2YAUnU5dhCeb8dHUlUr0=", + "attachment": { + "hash": "8f0250802a5effb55f9283f5becfe9736b17e0bdec2123b985d6c547798bc239", + "size": 1666, + "filename": "cJhQtqu9DZRLxNRS1bDaM1E3d1GuJZmxfwKcfb-Gx3Y=.pem", + "location": "security-state-staging/intermediates/f0bfd948-80b0-4d75-af2a-161c54c45eb5.pem", + "mimetype": "application/x-pem-file" + }, + "id": "20e07f1c-5ea2-48ac-bc5c-7ec23af00183", + "last_modified": 1771383422815 + }, + { + "schema": 1771379991526, + "derHash": "y1oYJ9VYOMBPnoyMFSyocRsCZ0WjJVQSowFz3KsqZho=", + "attachment": { + "hash": "ce5bd3e2951358c84a12dcf2bcd4e0d149f73cf46a70df65c66d76ae5ef3d0a2", + "size": 2296, + "filename": "yRmVmPrLlhj3dAnVv7nNCg1zdplb7nal2Hzc13XePY4=.pem", + "location": "security-state-staging/intermediates/132b7093-60c7-4ba5-a6a1-62834fa14ca7.pem", + "mimetype": "application/x-pem-file" + }, + "id": "6713e8ef-a26f-458a-a846-29ce2b707b6a", + "last_modified": 1771383422812 + }, + { + "schema": 1771379990558, + "derHash": "NVAMtjuNl2lSjWXYciD1HAaYB6WVrL8vtuyjj74KS9I=", + "attachment": { + "hash": "cc59ea718c21367a79aaa22728515f599df383a45bf89dbc219bca9d78633c41", + "size": 1743, + "filename": "UaqofZhLVZrGnpKfiIoCLYMuCJ_026CkErUQG8pLx5k=.pem", + "location": "security-state-staging/intermediates/dea02186-3609-4baa-b138-595090a0bfe3.pem", + "mimetype": "application/x-pem-file" + }, + "id": "f268c95b-86ca-4b2f-bff3-2e6bad53ae4b", + "last_modified": 1771383422809 + }, + { + "schema": 1771379991200, + "derHash": "j9FqF5lE1dHUIK8JQF7aer8qnHQog+jC+J4NkK+vdUs=", + "attachment": { + "hash": "fbb63f349bcc5868c551877141aadf4dc7c5f336ecd9ff3349ae89d79806d799", + "size": 2438, + "filename": "2ldsefSfkTU7GGXfz4iYiPnOUDkbKiYdUaPGd2du8EQ=.pem", + "location": "security-state-staging/intermediates/c0bb384e-20d2-43c2-be9b-9dfe230ff201.pem", + "mimetype": "application/x-pem-file" + }, + "id": "0477a59c-990e-4d35-9dc7-25ca046895fa", + "last_modified": 1771383422806 + }, + { + "schema": 1771379989556, + "derHash": "BCfqPLSntMsgXnensWbTMr7bjo70abxeiDFpyNCsh20=", + "attachment": { + "hash": "ddd283a64a05b7e4bbfe12c4be1dc2765fc1358bd6c784e4d0d23dbe17f8c3ab", + "size": 2389, + "filename": "NFVoOCgWiNHJZ9Q9E3Khu684knciLwPhAXsYs0ih8A4=.pem", + "location": "security-state-staging/intermediates/c4e7e68b-5acc-4857-8135-abba734afbdb.pem", + "mimetype": "application/x-pem-file" + }, + "id": "1f3cee53-6b61-4074-a232-ad53998ac104", + "last_modified": 1771383422803 + }, + { + "schema": 1771379990883, + "derHash": "D7bOgJCdGa/uaojJWenpqmRmcVvOBcZEn+tTCghtrxQ=", + "attachment": { + "hash": "384493a25bd899d9fdf55deb2a362135f4ec8be8dc34518f6004cef3e417556c", + "size": 1691, + "filename": "uG3aQXLPd55q_z1RlGHWJQcDYD5HzCoVUz8Q5eD3Rlw=.pem", + "location": "security-state-staging/intermediates/a2c31b74-0c89-4d4b-ae16-73e4bc598ad5.pem", + "mimetype": "application/x-pem-file" + }, + "id": "f9fdb1c5-6699-4177-a7be-7273ffc5abfe", + "last_modified": 1771383422800 + }, + { + "schema": 1771379988889, + "derHash": "mwZU8I35Amy7Q6LFi/9pDQ30+qormKPl8nQWaG/v42U=", + "attachment": { + "hash": "300318eb560f5419bd1da2eb245b196acb832c20b32c1f3b99d610ec399759b4", + "size": 2247, + "filename": "fX1V-PXAqi-aQpeuWycCLadcGJmTtllg0ag7g2tVQOI=.pem", + "location": "security-state-staging/intermediates/631a720b-b766-4af2-9417-9fd4192d0749.pem", + "mimetype": "application/x-pem-file" + }, + "id": "b2473971-e94b-4053-9653-c8854a0130c8", + "last_modified": 1771383422796 + }, + { + "schema": 1771379987559, + "derHash": "aEsR5Wq3JQK3XayhzQCePdS+qzrB/kSJAtJydmzKeX4=", + "attachment": { + "hash": "27b4c6b8a513f582f5dd6490f6ecdf6e32556438289ccc0aaea497c239797aa6", + "size": 2414, + "filename": "J2FvJRuRs99qJBtFhUpdsKexvt0Topb1ystnCurEYOU=.pem", + "location": "security-state-staging/intermediates/eb8f8922-d13d-43de-8853-a1f3ad96db33.pem", + "mimetype": "application/x-pem-file" + }, + "id": "be1a6f43-1879-4527-a14c-bb2a9b3d7dec", + "last_modified": 1771383422793 + }, + { + "schema": 1771379990219, + "derHash": "PxNZfTNV00G9CTKK7lZ9f04ALZkZuYb5li2v8ZfqddE=", + "attachment": { + "hash": "04c73ad51bafa758c3dbc488b0e8f6f0e0fa4e27b9bce09e183127000f900eaa", + "size": 2418, + "filename": "zrUpja649ZJ5SAtGACyJ93Vcw6FpUUsRuBC-_BlaANg=.pem", + "location": "security-state-staging/intermediates/63f39623-6fe4-4871-a38a-32ae174c9f79.pem", + "mimetype": "application/x-pem-file" + }, + "id": "4be71ce5-17e2-4f76-ab62-5c43e9851395", + "last_modified": 1771383422790 + }, + { + "schema": 1771379989883, + "derHash": "14SkMoBMLVN7moJrt4CmNiqeArvL4t24z6ARoLcLPDc=", + "attachment": { + "hash": "8da10f330ce7018b3031fc125fe995ba53883c147b91d640f7f5f26850356ab3", + "size": 1565, + "filename": "T3ywVO1SacoB2HDkbkO1ELzPMPsEd-2SkThhG3dSBqo=.pem", + "location": "security-state-staging/intermediates/2ff19f1a-5b1c-4547-ae09-f8acce13b57e.pem", + "mimetype": "application/x-pem-file" + }, + "id": "1de78446-2d59-4b8b-81ff-10c9fc2aa258", + "last_modified": 1771383422787 + }, + { + "schema": 1771379987227, + "derHash": "6nolJV0RH8POTLj6vjrfnCe75tsgP5VQZrq0xacfPQg=", + "attachment": { + "hash": "9568baefb8411a028dc05ec341faa71fcd221a891d9de47b93d8532aaf3928ed", + "size": 2735, + "filename": "X0Ebh9Ff3DxzDz3NGauSLFLiPe8BsycRjoZbV-sFQ8Q=.pem", + "location": "security-state-staging/intermediates/13d4a337-4685-403b-8b60-9371802510e7.pem", + "mimetype": "application/x-pem-file" + }, + "id": "791a80f8-e035-43ec-a7e9-cde05fe4bf00", + "last_modified": 1771383422784 + }, + { + "schema": 1771379989210, + "derHash": "iFRRMHpKvymLsordeT7HgmYpsFfsp55vUdxR9CzWSi0=", + "attachment": { + "hash": "930dc80a782fb09fe93279e40c917800babbd8d6be7fd0cdc9b11c7d6832db84", + "size": 2735, + "filename": "zfGiLN69N9BwX-PZGRinYY9IGrhN0lfxkStqQ1RATVo=.pem", + "location": "security-state-staging/intermediates/bf9f0f3c-f468-4b3f-a410-28d2da88c2ed.pem", + "mimetype": "application/x-pem-file" + }, + "id": "5263ae6b-9677-4bcb-8afc-f3536017c002", + "last_modified": 1771383422781 + }, + { + "schema": 1771379988262, + "derHash": "mLiWYlwMIwre7D6yz2qtUAHs+RVqaGROgjdM5YM7wls=", + "attachment": { + "hash": "5694e806638c951bddc8effc55278bb34d5dcd8b6e1dc5a775c1e5db895df054", + "size": 1240, + "filename": "Q7_6GdbvZRRR9oQeAZkx6W9vLq7_KKtLbxzkV23icXs=.pem", + "location": "security-state-staging/intermediates/8cced59b-0566-49d2-8269-3e494df436f6.pem", + "mimetype": "application/x-pem-file" + }, + "id": "4f8d6d85-5dec-40d5-916d-ad0920979940", + "last_modified": 1771383422778 + }, + { + "schema": 1771379988596, + "derHash": "aNCy6Mhb8Am02zmsi14vqOH9n9HlAocE6pKIx+Ryqus=", + "attachment": { + "hash": "7ee8d9739388c554cf3b1e8c694adbfcc8987281bc7d6e0e3f70e444d02785f6", + "size": 1406, + "filename": "x-B4VfwG1Q5TkeQLpvUFHvsaT9cd8FIf8sfKwgA4sCE=.pem", + "location": "security-state-staging/intermediates/2e947c12-379f-4679-bdc9-f1e34f485a29.pem", + "mimetype": "application/x-pem-file" + }, + "id": "c36e6c31-dc82-4aab-941d-2a1abccf4f1a", + "last_modified": 1771383422775 + }, + { + "schema": 1771379987930, + "derHash": "KRgE7IZoN81a9fTWUvHcx5vsYi1Pm/SHDl5NhjnfOtQ=", + "attachment": { + "hash": "26998de74e03fb8f528d539de9a5495eb28542a841efc18bc4b2b5868215ab7e", + "size": 2414, + "filename": "jHhw1-HFXQ8G1320mEPvrwFzcbfij0pxJB_xdG8Epfw=.pem", + "location": "security-state-staging/intermediates/527cb15e-ee0f-459c-99b2-c1eaef58a3cd.pem", + "mimetype": "application/x-pem-file" + }, + "id": "43a09a06-e0fa-4fdc-9dee-064f835033cb", + "last_modified": 1771383422771 + }, + { + "schema": 1771379986759, + "derHash": "w7wrSA+xoatNC6HtbHtT4JZEcEVzNiCZGjLWeY13qiA=", + "attachment": { + "hash": "8d922980c0e8472065e5cf39cdf3318b0317f82164d26f7bf0e59730f6ba6169", + "size": 2389, + "filename": "GpQuOSW4CYlrSykajNLnvF8dUzqlI7g1Oy3zd7Dwrb4=.pem", + "location": "security-state-staging/intermediates/e3ab3320-fcb1-458d-9604-8d96876c0dc3.pem", + "mimetype": "application/x-pem-file" + }, + "id": "ef0197a8-341e-41f0-9918-aafa42d1ef07", + "last_modified": 1771383422768 + }, + { + "schema": 1771379986451, + "derHash": "DhC93udRLb156/C09I/u18g8K9PdgXZVZfT/EQt7+kI=", + "attachment": { + "hash": "e3d590ab4b71fbd20183713733b3253b32ef24a73382153319f8916fc66d3c1d", + "size": 1678, + "filename": "VfKdH3KeIRG8iIljlHEf2ck5OXG4Z8_yf2AOohCgqgk=.pem", + "location": "security-state-staging/intermediates/993bd805-030a-4868-8cf6-e98571af36a9.pem", + "mimetype": "application/x-pem-file" + }, + "id": "1fed061a-dd83-418f-813d-b6118005d1d3", + "last_modified": 1771383422765 + }, + { + "schema": 1771379985774, + "derHash": "FlWjBPCA4FocubKekfmp0ZIuJxqGRetycPRjvDszIGM=", + "attachment": { + "hash": "c17b52d3f91072b235e9ccb8c1ebcb994df91e61083ea77a96b01db22df8d732", + "size": 2247, + "filename": "nHSwYpMcnfzgQILJAOh465gd_zOHDb3EjY8n6v7TfHU=.pem", + "location": "security-state-staging/intermediates/2709a165-4723-46f6-b2b4-b355575dc322.pem", + "mimetype": "application/x-pem-file" + }, + "id": "d9822534-f9b5-4ab6-bb1d-f00dfcb8024e", + "last_modified": 1771383422761 + }, + { + "schema": 1771379985105, + "derHash": "YBKTyiCwmgMpXRliVsaVP/nrqBHbjjzhQEE8G//pqGk=", + "attachment": { + "hash": "98c05c3829d90c10dc917b2cce8e171d89d2621e2a69fdf4104f2ca5c4e1d9b5", + "size": 2434, + "filename": "CyFyC5Hw5FxD8ufLGF9VLrfeftRrKsFy7jm1CEFxCm8=.pem", + "location": "security-state-staging/intermediates/4a0af95b-966a-4652-9c70-5ba2f0c72e5c.pem", + "mimetype": "application/x-pem-file" + }, + "id": "a9515604-48fb-4d4c-be99-c15d9bd21f9f", + "last_modified": 1771383422758 + }, + { + "schema": 1771379984472, + "derHash": "x5C0cShEfsC2DyK/y3ldccMm3ZEO4Sy7TMWoYZHrkbw=", + "attachment": { + "hash": "8d48a4abde2999b864fb9607b6e2b43144a92714cdf63de21b44d83e923ae297", + "size": 1687, + "filename": "nKWcsYrc-y5I8vLf1VGByjbt-Hnasjl-9h8lNKJytoE=.pem", + "location": "security-state-staging/intermediates/067c9a6a-f08a-4da6-891c-b0de7c14fce0.pem", + "mimetype": "application/x-pem-file" + }, + "id": "c52220a2-469c-41fe-a3ae-bfd56e105c37", + "last_modified": 1771383422755 + }, + { + "schema": 1771379986083, + "derHash": "2SgN2gH83+IIlVzH++8nw5CcCgXSwuJOJ9uzPDvliJw=", + "attachment": { + "hash": "a05c98d6ba1c4be9033691b6dd1760a89160635ef4b2d8c00f46c2258daa769b", + "size": 2735, + "filename": "3ZJfwY_ISI6EQzcyfKng-JukvwIBOzjzkcHvWQT0ZP8=.pem", + "location": "security-state-staging/intermediates/578acce7-fb1f-4051-82a1-33f3ba8c64c0.pem", + "mimetype": "application/x-pem-file" + }, + "id": "04226bf3-deff-48e3-affd-7c16f4defe83", + "last_modified": 1771383422751 + }, + { + "schema": 1771379984152, + "derHash": "z02Mk5M8CeFFdCnd3oFOiLzo25yuWvF1ZgpxQsMZ3ag=", + "attachment": { + "hash": "667f53cf14a7e43bae9795cd2627a976b76afe1412f4242f47d617cc91979f38", + "size": 1228, + "filename": "r9I3Mo-W78ewr2cC0pnZbFy-hU7rjjH7EYmZrNvHRO0=.pem", + "location": "security-state-staging/intermediates/429c3458-2d5b-4c02-9bf1-52535707f5ff.pem", + "mimetype": "application/x-pem-file" + }, + "id": "c16e3788-4462-49bd-b062-57558294a96c", + "last_modified": 1771383422748 + }, + { + "schema": 1771379985458, + "derHash": "E5SWNNmc1v1qqAvANP76zOsZaf7vmGWGcT7NuwV1jT8=", + "attachment": { + "hash": "7ee77869171db942343af7e2174cdfdff91ecb9e29b3b4b230f5922758d62ee8", + "size": 1743, + "filename": "LoMHBotttiDko50Gi13uXW71eIy7LAttI-rYT8wXF4w=.pem", + "location": "security-state-staging/intermediates/a79d8d26-4837-41c0-be36-65c5dc06e3e8.pem", + "mimetype": "application/x-pem-file" + }, + "id": "af7306fb-d9a1-466e-9915-d9cc4fa67e0a", + "last_modified": 1771383422745 + }, + { + "schema": 1771379983835, + "derHash": "fo+RQRm7EJDWIEkI5a4fQL4kwUkc19XPtqk2GMvAD9k=", + "attachment": { + "hash": "ac692c130dd61ad078ca128601e56417964e4f3c303740c7446aef653a0bf756", + "size": 2036, + "filename": "H92PKGXpuffyCKbwBGAY4e4XY990BbquJeNZ072shzw=.pem", + "location": "security-state-staging/intermediates/b3b15e04-4480-43b9-a9dc-2c328d58cfaf.pem", + "mimetype": "application/x-pem-file" + }, + "id": "972d9299-89a4-49bc-85c9-3f9503af5276", + "last_modified": 1771383422742 + }, + { + "schema": 1771379983499, + "derHash": "UjYaaryDXnrUs3XyFlBVMDFp3en760+q9YjtUy3cLcs=", + "attachment": { + "hash": "35b36a9618f2d048fa059e8588e2dbbc7d6fef31ac651d648efbd38794182522", + "size": 2418, + "filename": "kmBKIXcjXHoTMVlkFNqDMCKPx_0QGnujvMIlY8VhvsM=.pem", + "location": "security-state-staging/intermediates/d400bfd7-eccc-4c50-91e9-abb5ecb008d5.pem", + "mimetype": "application/x-pem-file" + }, + "id": "60c55d84-573d-42d3-acf8-c746ad8f6936", + "last_modified": 1771383422739 + }, + { + "schema": 1771379983155, + "derHash": "vDiZOqFLSZMYd2I9lek5T2wa4tMtxf7C6Lcln+2ZzSQ=", + "attachment": { + "hash": "8182d8576fdba44d232cfa5fc670ae228c0d69d1a2887df3ace7f7cba270263d", + "size": 1033, + "filename": "20csvVYyg5k6NOC9v8jgIhQ3dQ286VrYn2fYB1UFkKM=.pem", + "location": "security-state-staging/intermediates/cff5970e-c900-439d-802e-cf46c32ebbf7.pem", + "mimetype": "application/x-pem-file" + }, + "id": "c8349142-ad94-4ab5-a758-a90af1a89cd9", + "last_modified": 1771383422736 + }, + { + "schema": 1771379982833, + "derHash": "NSCr/FpMJVjIm/kO4pGB0ZUYzKbQpXptxWj08HyJ+N0=", + "attachment": { + "hash": "9201459b1d136a5af19b04e346805cbd45c445c23888ad0758fe032fe73233b9", + "size": 2434, + "filename": "MPznOZcyiDmZpfN4ptp5ESc6L5j4QTDQfDwltgjwahg=.pem", + "location": "security-state-staging/intermediates/902238bb-a6da-4029-b10e-7f81aa587954.pem", + "mimetype": "application/x-pem-file" + }, + "id": "e9d4a26c-70eb-4523-8db9-324a2537c83c", + "last_modified": 1771383422732 + }, + { + "schema": 1771379982506, + "derHash": "l2WN6MaN+pis4eUCimPVShqukRs+IUcQdsaFDNCMurQ=", + "attachment": { + "hash": "22f29dcd0b1b4fdc9ab1dc87dd80a29791a78c4a3eecefc52885d7aa5ac2d7ac", + "size": 943, + "filename": "s_tdAOmUzd8syaTuqfgGvFcn6DzA5Cmb-Vby1ST-U3Y=.pem", + "location": "security-state-staging/intermediates/647d94e0-f2cd-4ccc-87ab-a340952dfee5.pem", + "mimetype": "application/x-pem-file" + }, + "id": "27ce4ec9-faec-4da7-985e-342705f8c569", + "last_modified": 1771383422729 + }, + { + "schema": 1771379981512, + "derHash": "qcMif7HLvRdZk474cY/fg1wPi2pUaSi7C0eCpXDO1OU=", + "attachment": { + "hash": "03b7de7112e211867da0497964a9c25cf4720535d449f24f6043c5de7c34e65d", + "size": 1028, + "filename": "k-O0hWIR8ZPru-0NSbk93eqewSIKEq2fG_PSsKJWu9o=.pem", + "location": "security-state-staging/intermediates/5a53138e-e54b-4e82-bcaa-64fa84473ed6.pem", + "mimetype": "application/x-pem-file" + }, + "id": "db1cb90d-6b74-4c54-b3ad-4d79beddc907", + "last_modified": 1771383422726 + }, + { + "schema": 1771379984787, + "derHash": "FrdLM1xvmAHPxJnjnMKS9tE8UZG+hxJiJkA4GdpK0hM=", + "attachment": { + "hash": "56bc8cfcc0f90ffd2faafea6aeb09f0c397cd3475bdc32003dccb11be672234f", + "size": 2735, + "filename": "4Wb5rmDbKtG4UXE6N8Ba-D_3Tvmo-yey3MX92i7q9_g=.pem", + "location": "security-state-staging/intermediates/7da8c359-d05e-4844-aef7-b3c4cdc526b3.pem", + "mimetype": "application/x-pem-file" + }, + "id": "4ea2114f-e7e0-44ab-b435-d67cfd37a3eb", + "last_modified": 1771383422723 + }, + { + "schema": 1771379980861, + "derHash": "NqUrxaUcqQ3xihuv+SmCMBWCpUwrvk+NYY2W0ugwpQE=", + "attachment": { + "hash": "d53c4d844d6eed5385654e75a1641e4d35ea19089d443cedeb31ba9d0af33416", + "size": 1589, + "filename": "-lUwtVWZNBXYbXTU_w5L8kAuWjoL1vvnEnYfTdhaxLw=.pem", + "location": "security-state-staging/intermediates/1fa5966a-a20c-4036-ab46-eaa14b68e5db.pem", + "mimetype": "application/x-pem-file" + }, + "id": "6011c98f-2180-4f46-9250-ca108f680e08", + "last_modified": 1771383422720 + }, + { + "schema": 1771379981180, + "derHash": "FesKdcZzq/vc0vr8AoI8kf5svDbgB4hELIdU1yvsNxc=", + "attachment": { + "hash": "6e79684a22734ca75ec32f3adf0f864295161310bce94980a2608da91fbdd285", + "size": 1678, + "filename": "GI75anSEdkuHj05mreE0Sd9jE6dVqUIzzXRHHlZBVbI=.pem", + "location": "security-state-staging/intermediates/7b4e3ba4-11a8-4bc1-b911-398ac1b37b7f.pem", + "mimetype": "application/x-pem-file" + }, + "id": "16d3ee99-b6af-45e8-9618-e6a3f3f5f0dd", + "last_modified": 1771383422717 + }, + { + "schema": 1771379981847, + "derHash": "mkcWh0BPtcOqpbIYBHoyVaQZl8hbaqgAn0w9vv56kpk=", + "attachment": { + "hash": "b11733f10844b48f5d0b5ba52e491f75c212da2b32551f2fa8f07421fa61a706", + "size": 1114, + "filename": "dkqTHI0prqQCUR4E_lTiPK8i202FKVTJGAy6OdoQH38=.pem", + "location": "security-state-staging/intermediates/5b94a3ca-67a7-4ea6-bed1-b78818f3e1e3.pem", + "mimetype": "application/x-pem-file" + }, + "id": "1088447e-c2b9-4664-a5ed-a9e76668347e", + "last_modified": 1771383422714 + }, + { + "schema": 1771379980228, + "derHash": "4HKzDX9bi88AgOUdbMd2V2cHLbIxnpuxzT0CoIaJh1A=", + "attachment": { + "hash": "3e49cdaef402d06e6d76e1e8dad5e688adc3aa54b853d1fd3e757f71e43d40e6", + "size": 2385, + "filename": "wmkLa_Nak2Tml3NexjC_2dLNWQQOOQimZ2UWjjKCsE4=.pem", + "location": "security-state-staging/intermediates/6b5da76e-a192-4b31-aded-78170fdfa9c5.pem", + "mimetype": "application/x-pem-file" + }, + "id": "bb17ce7f-412e-4566-9353-9c40cfba1573", + "last_modified": 1771383422711 + }, + { + "schema": 1771379979901, + "derHash": "RbOUKVnXT4tUamq0dASvxKWDrV+m/9iagnoqeFIvZv0=", + "attachment": { + "hash": "af185f38466afb996869c18435f4d0d732d48159ee9b8921b868dd2cd2ad668c", + "size": 2385, + "filename": "n3t8p3z1tTr8J7q5sknewofsFtqfzhZMc9d1GeyAzdU=.pem", + "location": "security-state-staging/intermediates/2db2eb28-2cf9-4dab-892f-80808cb1a430.pem", + "mimetype": "application/x-pem-file" + }, + "id": "3136212b-5350-49c2-9e23-5487a349c16d", + "last_modified": 1771383422708 + }, + { + "schema": 1771379979578, + "derHash": "c4YY2dTDT53/lXICVe+QQP/HxMUgMwlDjhDm9JWUYrY=", + "attachment": { + "hash": "277b712342d44ee58974abdce73d8ac9784febb2fd95df6387cec93ea90fdf94", + "size": 1618, + "filename": "bBYnwvq00NUAq9ce-GxbeF2ObcNW4heyEn9_9e35fcs=.pem", + "location": "security-state-staging/intermediates/f81407bc-5a71-4e1c-8124-2df61e2886a8.pem", + "mimetype": "application/x-pem-file" + }, + "id": "eb785ee0-d99f-47dd-87e2-79eae00a15c8", + "last_modified": 1771383422705 + }, + { + "schema": 1771379982176, + "derHash": "ONiV9RBbwlRYIsF6JET0sOo9KY0sFaOClqpylaPYXOk=", + "attachment": { + "hash": "c36f0fa14c17094eeb82f3c5241cac4dd5d612da357ae70348ef0c070758237a", + "size": 2735, + "filename": "k8hnGa94Ch68AfKVLqnpxVyUQg-KzClS6foKRac9HI8=.pem", + "location": "security-state-staging/intermediates/65fd4f23-294f-4b6a-b409-534b6fb52077.pem", + "mimetype": "application/x-pem-file" + }, + "id": "0c40f1d4-e03a-4a07-82ce-4bd625d8f0c2", + "last_modified": 1771383422702 + }, + { + "schema": 1771379979246, + "derHash": "YcEGcIOuBE7x1knOWQu/CdnXOeAl2o0ZX3HPqtbrrmk=", + "attachment": { + "hash": "00f7896c16a21188e61de02a8277feaa52a4b1ce711c256892645e3a7a78fd28", + "size": 1479, + "filename": "6p1mBoam4p5pkVPKIbd2jwQWyu5AebEnipX-25eoiRg=.pem", + "location": "security-state-staging/intermediates/11ec07a6-c733-4ab7-b6fc-fa8be004d22b.pem", + "mimetype": "application/x-pem-file" + }, + "id": "9ba61080-1d78-4020-950d-24dafb131ccd", + "last_modified": 1771383422699 + }, + { + "schema": 1771379978874, + "derHash": "ml7s7px9iYvYHcO/Bm2vau+42xxZZ2IG0r/daCMSxvY=", + "attachment": { + "hash": "5ab0596aa7dd3f7d6cf1c6d2df754c46aa3f5872ff617e4f9336bde88379619b", + "size": 1634, + "filename": "S0mHTmqv2QhJEfy5vyPVERSnyMEliJzdC8RXduOjhAs=.pem", + "location": "security-state-staging/intermediates/2bc4bc0c-cb0d-4e84-b59e-7c7b2097a3d6.pem", + "mimetype": "application/x-pem-file" + }, + "id": "3ba4100b-f575-48f6-8db1-3dcffd501328", + "last_modified": 1771383422695 + }, + { + "schema": 1771379978236, + "derHash": "BokcNKLkaHxjCymFDMn21F3tOUkc+HfHJGtuxjNYeiw=", + "attachment": { + "hash": "8eb45318e303af3596eb97f9d325e40d6b4511597d531be9e67c274e69e63bfb", + "size": 2300, + "filename": "RLK-VYBqChLzg7iocWa8zHtEOxWqLPNruKmUxmDc240=.pem", + "location": "security-state-staging/intermediates/30a3eb5a-f22e-4953-a0fc-d59cf1bf9570.pem", + "mimetype": "application/x-pem-file" + }, + "id": "14b40b7e-6bca-4ee0-b86c-4356c41ea187", + "last_modified": 1771383422692 + }, + { + "schema": 1771379977885, + "derHash": "sMv6adjU9ljPdhwrDPc7hKkAIu9bl3sT4G7EK5E94fE=", + "attachment": { + "hash": "b4ee003eee3fc610e4835b003541bf3d65a3d3956ab387f4cfb116e9cd1fa2b8", + "size": 2198, + "filename": "MeWIGkdV9dZNGmIIdnBqg4b4KkKimFVeNe5D6hvgcag=.pem", + "location": "security-state-staging/intermediates/7c50286f-c82d-4163-a16f-95d0b66759da.pem", + "mimetype": "application/x-pem-file" + }, + "id": "81616b3d-a476-4199-beef-50c7789b7b52", + "last_modified": 1771383422689 + }, + { + "schema": 1771379975947, + "derHash": "R90oHd9cdBC29XIswWwRd3a++NUunqoitATsALU+dvs=", + "attachment": { + "hash": "dd79d22cb4f98cfce10bad9b7958ae63f26d9afadb8e29854a89db90c0f4668f", + "size": 1085, + "filename": "kMsL7-GflngfmtZwdcPM3VVUWDVVYJpH22quwb_yjIs=.pem", + "location": "security-state-staging/intermediates/6aad13cb-b473-4330-819d-49334c1ff0e5.pem", + "mimetype": "application/x-pem-file" + }, + "id": "1cf0139a-9757-4094-8921-48044ec6433d", + "last_modified": 1771383422686 + }, + { + "schema": 1771379978563, + "derHash": "q88RlomUQdZAcBRRiWOho/omsiotyRcQhEWFgZiQzEs=", + "attachment": { + "hash": "6b3c6686456a6fda4a2753437445c76e290d2deee622a5f5f560a9dcd0b40de1", + "size": 2198, + "filename": "EqXxmjkQSAcKwvb7qcJKH3gFGWWAYBrIKC4PmXpg_8I=.pem", + "location": "security-state-staging/intermediates/2cc3729a-5fa3-4feb-a526-97971fb06606.pem", + "mimetype": "application/x-pem-file" + }, + "id": "14d72c59-648b-43ef-a302-cb412fcf4eb3", + "last_modified": 1771383422683 + }, + { + "schema": 1771379976598, + "derHash": "aeSqLEKVitq8SxcaQcLZ57LrfJF3L71LXvschFzVL68=", + "attachment": { + "hash": "4d8f1483e951110155040c1dd6d210d47ce05994c9c6e270674663b8969f2225", + "size": 1134, + "filename": "NeN7Ibyh_EFluoZE27OfNSDLpVsqzCOtSIe0YDz2GSA=.pem", + "location": "security-state-staging/intermediates/6abbff79-df40-4e42-997e-abcc89f6b55e.pem", + "mimetype": "application/x-pem-file" + }, + "id": "19749e5b-7bbe-4982-9c36-5ce78eac1b14", + "last_modified": 1771383422681 + }, + { + "schema": 1771379976269, + "derHash": "sikuhyodhCeBpIIL3B9luDN4paQ62hfWFi+4Hc1mHBM=", + "attachment": { + "hash": "4c1ee1ca5a18db9ba14309f3624718e8ae21c2a520cfd1b7121eb11c151ca308", + "size": 2198, + "filename": "yFeATIFLAXx7ujs9W0scIAaSjghWb6PDB9fGZGY6QG4=.pem", + "location": "security-state-staging/intermediates/6f97c49f-f4a7-4c10-b6be-7618585b38f8.pem", + "mimetype": "application/x-pem-file" + }, + "id": "8d7cac36-b1a9-44e0-acdc-05ca53793003", + "last_modified": 1771383422678 + }, + { + "schema": 1771379980552, + "derHash": "NU/PxhYqDuIgXb72iTHngDPs6dEl4IJOSbrr+C390Wc=", + "attachment": { + "hash": "324604ce7c1feb1281d395804fd405d53c1027c74aaaa93ab18d05f841ca2630", + "size": 1707, + "filename": "SM-CBbHgVoJj8KYqNoXbUd-IGEbfvpomZR5lGHQ3qng=.pem", + "location": "security-state-staging/intermediates/1d700c47-4aae-4229-86ac-0a1e3c1e9975.pem", + "mimetype": "application/x-pem-file" + }, + "id": "a1037f56-a4be-469e-a78c-3a78bd51426b", + "last_modified": 1771383422675 + }, + { + "schema": 1771379977570, + "derHash": "73nIMnvrUeeztNvM3vI5/ONnseCdNaeEBwAKAnC8Iy4=", + "attachment": { + "hash": "60b58dfebaeb37d8282a5fe4c55f8ecc13194dce0468491fc66dca6426ed710b", + "size": 1033, + "filename": "DODYlOw1YgI8bPcnuXFI9i9QMRxVosSWM5aicSDVIts=.pem", + "location": "security-state-staging/intermediates/b99a777b-c766-4694-b807-89ec855f79cf.pem", + "mimetype": "application/x-pem-file" + }, + "id": "32109fb8-6e3d-4e95-bb9d-dc376434c2f8", + "last_modified": 1771383422671 + }, + { + "schema": 1771379977245, + "derHash": "anqThhmCtmQAFxCg79BMinL2oj4lKygJEXl+C/G9kBI=", + "attachment": { + "hash": "ae9efa40db4b71178bc0137964beb7be28798b717fe6dbb73d0cfdb7fa662747", + "size": 2389, + "filename": "hCk1EDW6kLoU7z9644yjVIBgWgKWqmwmPGqbJruaSOE=.pem", + "location": "security-state-staging/intermediates/305bcb88-6039-40bd-9ea4-2587e176fd28.pem", + "mimetype": "application/x-pem-file" + }, + "id": "88e27f21-fb6f-4c7b-b20d-e701c8e72f3b", + "last_modified": 1771383422668 + }, + { + "schema": 1771379975299, + "derHash": "L7qP6RVBUEmqlChXy1MTf/09nlpHsntXgtq5tNp9Yk0=", + "attachment": { + "hash": "41ecc5811611c2cca06c08009be39d0f651319e8cea2f6913a6d81897be776be", + "size": 1423, + "filename": "A97Lx6chFTH9FkG_Io5Uc5oemCnN0d8O2NjR9d-Pr0w=.pem", + "location": "security-state-staging/intermediates/931676aa-a10f-4d64-a829-dc7d47f76b01.pem", + "mimetype": "application/x-pem-file" + }, + "id": "5b8df835-4884-49de-bb53-a5fa73b758ce", + "last_modified": 1771383422666 + }, + { + "schema": 1771379973992, + "derHash": "I4uFoAmcZblwR31XJPGh1HXOUFjP/k76hzOJm9uGPEc=", + "attachment": { + "hash": "a0c5bb445d758ba24adbc4880ebe15d0f8c801569c22fbd765377d74700dcc61", + "size": 1743, + "filename": "nWN7PSep5XDQdge5zK24CnCRXHr3KvzhKEGxsdqCX9E=.pem", + "location": "security-state-staging/intermediates/776f2d9a-982d-4020-ba4b-3cb8e09531cf.pem", + "mimetype": "application/x-pem-file" + }, + "id": "845c9ac8-9afb-4027-ad0e-640b6e9b36bb", + "last_modified": 1771383422662 + }, + { + "schema": 1771379976919, + "derHash": "umoMEXDhxzI4YHSbXnsO02WXXY/JB0CxXXD4Q6I5SUI=", + "attachment": { + "hash": "66b49fd854d0f3af5d909f8ce76dcf4b94b573305dd98b683cde0582e3dfb8c4", + "size": 1674, + "filename": "yFzqzO6UfU8CG8Xw6hrhKs8Wc7kjwaPPHpMW5A4WT3k=.pem", + "location": "security-state-staging/intermediates/2129f6a6-ef75-46fd-9bb2-ef0bf8b4b7a7.pem", + "mimetype": "application/x-pem-file" + }, + "id": "ac240406-f5bf-4d10-abf2-b247a4bf30db", + "last_modified": 1771383422658 + }, + { + "schema": 1771379974974, + "derHash": "iC2ZJPxpoAV01UwrtAFIJaHBxx+h0COMrIZf4KpK1gs=", + "attachment": { + "hash": "ab53a1e5c27f5f6e4e2e49e2ac6388a33e0bc97bac2b42fe31df98e7d3e4a838", + "size": 1256, + "filename": "0OaRfyv9xBiWEH4CyltV9tyS3rru9FZZlGJ5tPMNyMU=.pem", + "location": "security-state-staging/intermediates/d3e94720-0c5c-44e0-8d4b-9502900c717c.pem", + "mimetype": "application/x-pem-file" + }, + "id": "c43d85dd-4164-4e39-804d-25c75966aae2", + "last_modified": 1771383422655 + }, + { + "schema": 1771379974656, + "derHash": "ins0yOgu+ztbQWZxIwcp+tLiYnk4P7KZPtKSC9biEkE=", + "attachment": { + "hash": "4fcd07b73d9c600826e9521c621bfae670c2ce714f8d47e6d4083f101addeced", + "size": 1589, + "filename": "JfqbRDsGVJr7ytdGMjljQQR_pDP4BPgzTMx9ECN2FqM=.pem", + "location": "security-state-staging/intermediates/d818592f-28c4-47b7-b8dc-35116c93268a.pem", + "mimetype": "application/x-pem-file" + }, + "id": "b0fc5eef-d836-4979-b7f2-313b85e20fe8", + "last_modified": 1771383422651 + }, + { + "schema": 1771379972677, + "derHash": "mbRlt9NouAB3d5YFBp+npO2ejruqJnHz1PDRUJeZbiY=", + "attachment": { + "hash": "76dd75324fc48fd22f541177fa561c38becd7c43413d4b6f94de97449054c9d5", + "size": 1167, + "filename": "RUk9ApNsf6_8MohPiGIlF8MTRna21nwTq07I50OayuI=.pem", + "location": "security-state-staging/intermediates/0c8113c9-10fb-4b61-a846-56c760740cd8.pem", + "mimetype": "application/x-pem-file" + }, + "id": "64d5a915-dcce-46a9-991c-52dc125fe7fb", + "last_modified": 1771383422648 + }, + { + "schema": 1771379973002, + "derHash": "2volTgFz8P15OpLs/fLHLFPqWnYac7ejOUxJGC6pCTM=", + "attachment": { + "hash": "32be25c955c428e18b0f8b2080848e278dd1b2b569c2423560a54d7cc5bf467c", + "size": 2418, + "filename": "9oTbeoyc51T5hpEYNExiDNg5jEig0O1YWRRLdwSH1Ww=.pem", + "location": "security-state-staging/intermediates/d41a9201-a6b1-4c7d-9011-d343d3becf59.pem", + "mimetype": "application/x-pem-file" + }, + "id": "afa46d13-8c9a-472d-b797-39b348596cd8", + "last_modified": 1771383422645 + }, + { + "schema": 1771379974329, + "derHash": "CQM/4jmW/kpZxMD1I9JWDjHf5MF9jqFAPUKalx9L1lo=", + "attachment": { + "hash": "0e6c76a6d70346ff239c0a9320d8ebda8b750ae57610ff62a44fb8e221319a31", + "size": 1861, + "filename": "zACNb3_D6r-GIH58_Q4EDalNSChXFVVFbUJICvq7SIQ=.pem", + "location": "security-state-staging/intermediates/90bc7209-b051-4ab2-8c2b-c51d485b4bba.pem", + "mimetype": "application/x-pem-file" + }, + "id": "0f66724e-98a9-44e7-8c94-dd60f9bb8825", + "last_modified": 1771383422642 + }, + { + "schema": 1771379973660, + "derHash": "rI6p8odP02ij53ixoLFl7omNublofBftzcdpCKtYyCw=", + "attachment": { + "hash": "cfbc344dba91ca1312e9772d692fb858c7f9dc0ea785479a2b7c953dde4db142", + "size": 2735, + "filename": "Cgcdqp4tWwaW_5zVT0SzM3JVarwR9qZzaApjgFqeVic=.pem", + "location": "security-state-staging/intermediates/6c3cf5fb-cc05-410d-99b4-fa2c6613ed9a.pem", + "mimetype": "application/x-pem-file" + }, + "id": "08e10a8b-d57a-4afe-8410-9447fff099e5", + "last_modified": 1771383422639 + }, + { + "schema": 1771379972015, + "derHash": "GglDxzSNzfAIwLlSpPZ2xu5AN9un+3BAuseVUPodpDk=", + "attachment": { + "hash": "5729ff035324c5b82c9e668bd47d780e1ee30d6ae2225a49cd678848bf1c3a86", + "size": 2223, + "filename": "V4IVjamHbgaAlsPpLjDvaYFU3O0cyg_yDYp5Gsu0FBU=.pem", + "location": "security-state-staging/intermediates/d417e95b-63cf-4157-9a6a-7385e445ee8e.pem", + "mimetype": "application/x-pem-file" + }, + "id": "8522554d-0be4-4c0e-a96b-4e8ad0c3628a", + "last_modified": 1771383422635 + }, + { + "schema": 1771379971011, + "derHash": "kV1miBHRlcx8lhTcP4KN87KRs15hCrsua0SThi9N43k=", + "attachment": { + "hash": "d1dfcd3b3f42e41a05f041c27d4909d19c9a46c54f7fc371e001a9d7bd0d47d3", + "size": 2463, + "filename": "PXOyA0uXo2z7W15EJ48em_wITc8eGkDuyCeMIUj31FA=.pem", + "location": "security-state-staging/intermediates/598d4331-9fed-442a-8685-ac3f0326bc29.pem", + "mimetype": "application/x-pem-file" + }, + "id": "37a059d7-c2b2-4bbf-80d3-41162a374908", + "last_modified": 1771383422632 + }, + { + "schema": 1771379973334, + "derHash": "J7EivB2+EsiLGsvrwzAwvbzPTeck7I6CJmUT0Hl8CXo=", + "attachment": { + "hash": "b338ce796179f7c9e1669f21db89ba38e6d802665c827f5477d4b6aa8bb02830", + "size": 1589, + "filename": "eme_r3vqgVcNCluW5G00Myp2ijiTqbC5G5BSf8yrYyQ=.pem", + "location": "security-state-staging/intermediates/16a1778d-5d7f-4777-96fd-9e6449437a9e.pem", + "mimetype": "application/x-pem-file" + }, + "id": "df52b22c-e692-4ee7-9448-ed69a003537f", + "last_modified": 1771383422629 + }, + { + "schema": 1771379970358, + "derHash": "9kJBjk0MY97Hhclg76aLp0XziFF0TvgfIly4kwUxTVA=", + "attachment": { + "hash": "a6ba61ac5f4cc0f9765d5d0f0def7f6c14969571829df90422bff82e1730c78b", + "size": 2259, + "filename": "bxL2hYprHPwXRcMzTOZMDGOgJ8V36UngBYWMNmpyTUA=.pem", + "location": "security-state-staging/intermediates/7622f33c-25b1-46df-bf9b-647608a8e145.pem", + "mimetype": "application/x-pem-file" + }, + "id": "09daf9f2-bea7-411f-ab3c-48d25cb13e50", + "last_modified": 1771383422625 + }, + { + "schema": 1771379971333, + "derHash": "0lzjSMBt/WXY11G7lPr3ETgg/VNf4UcaKC7HOPP8PL8=", + "attachment": { + "hash": "8c5fc1ffbcbe945c5bc9edf5c78af24196227fa4b3c38d342c024dea4c126a3a", + "size": 2296, + "filename": "XK8OIERzO3nVyMmHf2cJIqjdt5oqIvfnQjDOF2-l4Qg=.pem", + "location": "security-state-staging/intermediates/7f4c6ce3-5ec1-4134-a774-de3c49c912e4.pem", + "mimetype": "application/x-pem-file" + }, + "id": "ac752a5f-8df5-4b3e-b28b-020c806628da", + "last_modified": 1771383422622 + }, + { + "schema": 1771379971698, + "derHash": "SJbVH2U3pTJicsQSvHWZDhXU9ezcKUbBl3aSO44WnpM=", + "attachment": { + "hash": "ec2d1c00faf5ba5d5ab3bae323232abba2bece80686ba37834bd5ae51bbd7810", + "size": 1272, + "filename": "L_kLDivRAInBNQCoy4a-6QJ_enHxKhwHSqB7uKCOJyQ=.pem", + "location": "security-state-staging/intermediates/5c6c1b74-20c4-40f1-a8bf-737ec71c571b.pem", + "mimetype": "application/x-pem-file" + }, + "id": "4887edec-f03d-45c5-a644-eb6078ee119e", + "last_modified": 1771383422619 + }, + { + "schema": 1771379970048, + "derHash": "u6mP/GotWtJRs0vGYy09qIlVy0b0ofTfRDmApL+ShF8=", + "attachment": { + "hash": "20051b3ab7966ddc2160eee3a41f195c9d431a4dcf6625a1a019d134c37e1fff", + "size": 1240, + "filename": "JXw4MdzGvSa_0WGYWJU0Y2A1l_qMYDIqEV-nkd6oj7k=.pem", + "location": "security-state-staging/intermediates/7c61ecff-cd20-40bc-ac2f-af4c7d169e86.pem", + "mimetype": "application/x-pem-file" + }, + "id": "52ccd9e0-2708-47af-a222-32032e7fa96e", + "last_modified": 1771383422616 + }, + { + "schema": 1771379970682, + "derHash": "gswzaJMd/J7LOSfrvaz6BDZt1D2B8TQ/62G7jlnm69Y=", + "attachment": { + "hash": "b444c910bf3dd7b82e10b22a6e4c2ba75aa23ac94e67e7452c74e1c434e45d73", + "size": 1223, + "filename": "dycfMVcBMPrF2An0cognBEUprKzbPMXLRSanz5UqEFs=.pem", + "location": "security-state-staging/intermediates/592bcad7-f0e2-41b3-a37b-d37948d48833.pem", + "mimetype": "application/x-pem-file" + }, + "id": "edd995a1-1cb8-4551-a061-563a0e14a405", + "last_modified": 1771383422612 + }, + { + "schema": 1771379975634, + "derHash": "ugo9pwb0fawanDPE7h5Nhrcm70jnDUMZ88lJ7Gc6GXU=", + "attachment": { + "hash": "14fa0656ed370b4cceb3389f77c47cc8cfc4650ddefd837fe5edd795a7a81a29", + "size": 1268, + "filename": "-NsgwtB2JJlnvuqR7CfJVKXUBYY-DtEjHDuMfx-_x_8=.pem", + "location": "security-state-staging/intermediates/1d62eaa6-0b72-4c9a-bf44-0e12731535a2.pem", + "mimetype": "application/x-pem-file" + }, + "id": "0eac052b-9e2a-4bb9-a12a-ace76cce35f5", + "last_modified": 1771383422609 + }, + { + "schema": 1771379972344, + "derHash": "vwYuEsi78uZoWDH+AAyvZzQuIlqKJJGHzDlTs41A3gQ=", + "attachment": { + "hash": "928290e9ff0a6fdb13d69fd699a58726926ab613cf3bb6382755b63cf6c1a0a6", + "size": 2288, + "filename": "pbnDROwxL9imiYDtQcKHL4D07MvFyHJGsfaj_hTH-uw=.pem", + "location": "security-state-staging/intermediates/d5cb88f6-ab79-4a84-b6a1-acb9c2a27e7a.pem", + "mimetype": "application/x-pem-file" + }, + "id": "c744a8f0-1872-43fc-9015-05a049d85e4a", + "last_modified": 1771383422605 + }, + { + "schema": 1771379969742, + "derHash": "m/lJZ3fRRCXtAIbBuywHB7YqYcGUxRYuTwdjev8Wa3Y=", + "attachment": { + "hash": "ce3ed3382cfca8726ebcc664e631bed0756c90bb7140cddbdd109b12175fdab5", + "size": 1475, + "filename": "qNR-DwyanLNyMurMwcUpVijQXK6JlGydxz7b2CNJx5k=.pem", + "location": "security-state-staging/intermediates/64a9757f-6821-4998-8391-93e886bfc3d4.pem", + "mimetype": "application/x-pem-file" + }, + "id": "043673c0-2dcc-4d60-a0cb-72870654df47", + "last_modified": 1771383422601 + }, + { + "schema": 1771379969094, + "derHash": "BwUxODzNEA0+nNlk2weqXoRaBoby6uO8imJ7GCBXsfE=", + "attachment": { + "hash": "7be2ec04c8313dc05a7e0bef9687e9b6f04e6acceb8e83e4058ae0bf0657219d", + "size": 1845, + "filename": "rBTvvFbWGhKxAPrEAJ1x8vttBOVCvRznd5h2iXt2ATs=.pem", + "location": "security-state-staging/intermediates/3c662276-06ab-41fd-9e98-7f62e8a9292d.pem", + "mimetype": "application/x-pem-file" + }, + "id": "fac428bc-587e-4ff1-aa76-12cb56318c09", + "last_modified": 1771383422598 + }, + { + "schema": 1771379968064, + "derHash": "QsSszRLE9ZWXkl4aCKepAQJghUOAkwjVDsQn4Ri6FJM=", + "attachment": { + "hash": "72fea14b9ffcfa4f1e0441659c75e24b1009c989c12d803dafadfc564cc49d3c", + "size": 1240, + "filename": "6-1kdcLC2A_LGZ8_6N1uazzmC3frFdTkLD3sDG9bUQU=.pem", + "location": "security-state-staging/intermediates/7dd49628-5f8a-4bec-b990-7587dbca3652.pem", + "mimetype": "application/x-pem-file" + }, + "id": "837f320b-227e-428f-a9a3-5b0e0432e91d", + "last_modified": 1771383422594 + }, + { + "schema": 1771379967747, + "derHash": "gp7ERLi+Pf0tAwoNnnodDdKjwsMl05WJwnrJoGW655M=", + "attachment": { + "hash": "57a9f43ae4685ba6cd3340fc5df5d9cc62fc87d515002117e45655bcf89f48c5", + "size": 2389, + "filename": "BNs7fd9oOx1LW2T-dDo6jYw9cfDDOdfcJbND5mWp61s=.pem", + "location": "security-state-staging/intermediates/9c690d57-fbec-4576-8de3-8da555be5c6c.pem", + "mimetype": "application/x-pem-file" + }, + "id": "694f1fab-4ad0-4553-8b15-06ab37e5c43f", + "last_modified": 1771383422591 + }, + { + "schema": 1771379966734, + "derHash": "y24VFlrIAumz+ZPxbCXUH06Bwh695xrhsBKsAL+cfD8=", + "attachment": { + "hash": "459970883fc352239ad716d7d060fd5a51fa5c6074fa3159f2e04396c932a2f6", + "size": 1240, + "filename": "Y-zv7kMdSVI7wRNsTnLQIGpHcIbK9gbNXPAlaGwQnPg=.pem", + "location": "security-state-staging/intermediates/8dd8f3e0-c16d-4718-ad7a-6a4afce7cb66.pem", + "mimetype": "application/x-pem-file" + }, + "id": "4c6dc31b-440b-4e03-af78-fee3cff48334", + "last_modified": 1771383422588 + }, + { + "schema": 1771379966392, + "derHash": "CTAySz2BfTBrbgHGIFtWo6yFYUL9Wq4WbvZRYGYN7lw=", + "attachment": { + "hash": "aa93c5aa22b29ce0c7d808ca05f66df4d0d1aab0bcc4933aee5665d5fdad937e", + "size": 1341, + "filename": "_ncZ3HouvLRtNt5ZFDDcHwFPU_mYB2kGhIqRLifv6Hw=.pem", + "location": "security-state-staging/intermediates/fc89e283-33f9-4c1a-b8d1-7f04490f869a.pem", + "mimetype": "application/x-pem-file" + }, + "id": "a6620b67-80d5-410e-a8a6-1d2409e6e175", + "last_modified": 1771383422584 + }, { "schema": 1770951563706, "derHash": "J95m81UlB4lZnRgTfFShkZpZp3N/FjTOk13TyomMUQE=", @@ -4186,32 +5876,6 @@ "id": "b01d6f54-8501-4470-a2c4-9cc297d6c8a5", "last_modified": 1748789822362 }, - { - "schema": 1748613467301, - "derHash": "6RWMavVojPz5iQIGxDBhyB+n/AfQjiiifAaMWAc6aZo=", - "attachment": { - "hash": "1c1d5e8241267136da3705fd506b169c5463a9f343d488c2a0acdfa960cd309a", - "size": 2052, - "filename": "Wd8xe_qfTwq3ylFNd3IpaqLHZbh2ZNCLluVzmeNkcpw=.pem", - "location": "security-state-staging/intermediates/ca542134-7f2e-4fc9-87c9-eb7ee23cfafe.pem", - "mimetype": "application/x-pem-file" - }, - "id": "40452622-9d6c-48be-a106-e5d3ee4f391f", - "last_modified": 1748617022269 - }, - { - "schema": 1748613468135, - "derHash": "TJE9BPtJXcNhGVUtYGj3uYke/kA0Tp5cHpEy9luu/38=", - "attachment": { - "hash": "b47f4335ae3edbdca967deaae2958f757fb4beb22b0a4d4f432579ebf498efd3", - "size": 2032, - "filename": "Wd8xe_qfTwq3ylFNd3IpaqLHZbh2ZNCLluVzmeNkcpw=.pem", - "location": "security-state-staging/intermediates/e1622bfc-91ea-4673-97d1-1b831a7c362f.pem", - "mimetype": "application/x-pem-file" - }, - "id": "065468f3-9699-44a0-a94a-9dbe23482932", - "last_modified": 1748617022260 - }, { "schema": 1748570266149, "derHash": "QYuXFAxxBYoJ6TOwidDVaD4xM81fclSPbBWhdXm6J9s=", @@ -5629,175 +7293,6 @@ "id": "4d7b0ec7-5dd5-41b1-bd08-88a8d6ccf034", "last_modified": 1741186622485 }, - { - "schema": 1741140177817, - "derHash": "sSaq0cF87p7vDyztwGvGeG8Z5IoHmSn5PBOrSMow7GA=", - "attachment": { - "hash": "edf306f6f952343d543d0af41e661c584403f747999969bc18f8b1ccda6fb4c8", - "size": 2389, - "filename": "qN8rR_SrX_av7kFrTMVDVwaxjS_4hPqCLCRFxpTtb5Q=.pem", - "location": "security-state-staging/intermediates/59a611c9-4b83-4c5e-95ba-80a710a6b9ee.pem", - "mimetype": "application/x-pem-file" - }, - "id": "e56de645-0e77-4288-82dc-17779820850e", - "last_modified": 1741143422606 - }, - { - "schema": 1741140179009, - "derHash": "k7/3kSXwPzK6V6bx5e+vVwXSeKcsBXsqbGbh8QOrpRc=", - "attachment": { - "hash": "8dd471f03a5b4a597db1af1278bfc22154de935bb005541ea401904f526f488a", - "size": 1938, - "filename": "IcYSvmprje0VWfElFd6SUFdp4DNb-MCaGuOBZb_2KAQ=.pem", - "location": "security-state-staging/intermediates/a381c02a-aa81-40e9-95e2-d86ba088a792.pem", - "mimetype": "application/x-pem-file" - }, - "id": "a96ec436-97e9-4715-bc1b-f2c8039a7af1", - "last_modified": 1741143422566 - }, - { - "schema": 1741140178098, - "derHash": "U6GAjHWjF1U6HDsPCKGGpzhE8uljU9WKZmFnqixhRwA=", - "attachment": { - "hash": "eac15617652412a3c8acf7c69910838a0c31f631516be8a0ae52fd9f3cce4540", - "size": 1171, - "filename": "eU_y-se_vOLREyjkV6bagqYCfnm6kFtJKdJR5e1kLdE=.pem", - "location": "security-state-staging/intermediates/414c0875-aeca-4329-9da5-171d7446d986.pem", - "mimetype": "application/x-pem-file" - }, - "id": "a39f6bb6-8b20-4ccb-be95-b3545cf62aef", - "last_modified": 1741143422563 - }, - { - "schema": 1741140178670, - "derHash": "oEPk9znEb5gk4g8ESC8s5CpYFp5JTMzSwVtfVIcxWEc=", - "attachment": { - "hash": "0070ea144778d74a3ab9dc79a3bdc03c90782078637691dbd8b753775f0e97ab", - "size": 1256, - "filename": "-rZ-oHIli9vnhBFMFcYVGzPZZxsF4ERt7_lei07lDuw=.pem", - "location": "security-state-staging/intermediates/5258eee2-7414-4695-92c1-36d77fc9bbe1.pem", - "mimetype": "application/x-pem-file" - }, - "id": "4cde832a-8ec7-4f34-9fb0-cd7567f098d1", - "last_modified": 1741143422561 - }, - { - "schema": 1741140177210, - "derHash": "l3NoTNwz9YC6EyaiV9clzUfthLWCmxxYEU+BHDPWjxY=", - "attachment": { - "hash": "b61bc83974131c411ed8e86d3dfa472d5b91f66771ce7bf03ec015bce30ab9a7", - "size": 1272, - "filename": "DYR2DhKa5SMc14tHtLCWRtUvPpyyR_0pVTUVukSP8p0=.pem", - "location": "security-state-staging/intermediates/cbcb30f8-7506-44ce-8d24-96efe98807bf.pem", - "mimetype": "application/x-pem-file" - }, - "id": "cda85266-aef2-4a67-8c1d-b196a2fc22a6", - "last_modified": 1741143422558 - }, - { - "schema": 1741140177536, - "derHash": "anBOe/PbZ9vQp0vYEP6SLnei1FmyU9d89Lb4jqD25M8=", - "attachment": { - "hash": "4100ce66641fc8fc07c33da597304b54e51d4edf8e24155bd0a279a3870f93ff", - "size": 1268, - "filename": "MOwm_EBNdpPSyfQ09hchNe0-Z70aQEtVSPDJ_pnnM3o=.pem", - "location": "security-state-staging/intermediates/988b33a0-4184-47c2-8569-1652f8ab0052.pem", - "mimetype": "application/x-pem-file" - }, - "id": "fc924ceb-1596-4cd2-b7ea-0e35e045e0c2", - "last_modified": 1741143422555 - }, - { - "schema": 1741140176937, - "derHash": "V5xTuQYgRsPzmn1gMG46jhuhtujm6HhkRaJHkvxnG9g=", - "attachment": { - "hash": "4775ff17e0b7ab8e525df62af9f4d65a1c11db3ecafcc6626433e5ec96c9d980", - "size": 1175, - "filename": "sb30K4I7uzqo_QL-q4wvnJWAEF4-Gl6dBGBCCh8-HTQ=.pem", - "location": "security-state-staging/intermediates/17328567-ddb5-441d-b448-cd56d4ab948f.pem", - "mimetype": "application/x-pem-file" - }, - "id": "d92dd827-d6f8-4b5c-a9c4-8ce9b512d07a", - "last_modified": 1741143422552 - }, - { - "schema": 1741140178379, - "derHash": "VFqs1X/A8k6SGBhT+K2OUR2SYk/ag1k7iekx/O6C7Wo=", - "attachment": { - "hash": "13a26f578dc277483d7a6bfb72e73fd4a2d44ed2ef5b06a53f8ce2ae67884bf8", - "size": 2389, - "filename": "fyZyqtes4hr_Js-31ur7RaqtzKx_9XdFRhk-U5Q01xI=.pem", - "location": "security-state-staging/intermediates/b88a622d-5c25-4e3d-997b-66495864f3b5.pem", - "mimetype": "application/x-pem-file" - }, - "id": "6f32c998-6a1f-4c05-a86a-48d4b56724bc", - "last_modified": 1741143422549 - }, - { - "schema": 1741140179601, - "derHash": "A/wEwuLeNRcQRq1PSBsuFq9PAp5kg8azhF0fOD8tG7w=", - "attachment": { - "hash": "a29b6b53cac7f0166140e041a851a314d527b6de1b638e116a0f49684a2e194e", - "size": 1256, - "filename": "ape6p3oIAZVhR41FnMCWB2mnh-kr9fvHezQzpRikqnA=.pem", - "location": "security-state-staging/intermediates/86d0032b-9c67-4d1a-a79b-13c44106df50.pem", - "mimetype": "application/x-pem-file" - }, - "id": "cfdd4747-222e-408f-8b9c-4cb8663f969f", - "last_modified": 1741143422546 - }, - { - "schema": 1741140176210, - "derHash": "T4eTU/aYzoOctXtvMVvSJ4F7Eqrt+PrFcfJq/OAb5Ow=", - "attachment": { - "hash": "daa8decc88f6d02a73734cc8f87869a6842e616c51d102eb947075658190e965", - "size": 2377, - "filename": "0EOItVFXahnEajPdwY_-b7gAvody7qA8W4fGMjp4kSk=.pem", - "location": "security-state-staging/intermediates/503a00b8-4539-4b67-a7b5-c148ce41e24a.pem", - "mimetype": "application/x-pem-file" - }, - "id": "fa8cd2e7-de4a-46dd-b185-156b458de041", - "last_modified": 1741143422543 - }, - { - "schema": 1741140176544, - "derHash": "L8qd56Bla58mVcjJAwZLfupHhaQPsnB+HWOUaC63aZg=", - "attachment": { - "hash": "e8ad03247e7bcdd90146ff1554fdf388de994ef0eb4afdd54ca2fb14444a2fe1", - "size": 2377, - "filename": "U7HGgAgBh4Lofe8dGF4EgFNdDyu4HBUlE5wwOeXTL7c=.pem", - "location": "security-state-staging/intermediates/2b7f3a6b-17a3-48fb-9dae-0e4b928b1f15.pem", - "mimetype": "application/x-pem-file" - }, - "id": "c810fb90-6d7f-4520-9038-6f8e35a9e5de", - "last_modified": 1741143422541 - }, - { - "schema": 1741140175889, - "derHash": "p1DZhLzchvlRN97E8/coxN6QYVdM5+zTpUl4DDgUrmc=", - "attachment": { - "hash": "48ff891435d1f59042294ec99b526373df713216e849700742bd3a9934b28d59", - "size": 1187, - "filename": "eERytU_4t0FVL8cKrC9Me74LzTj0t2X_E3YndZfxiIU=.pem", - "location": "security-state-staging/intermediates/250f3d01-eb02-4d23-bc70-e5126f56318f.pem", - "mimetype": "application/x-pem-file" - }, - "id": "f4e28aa6-6ab9-4d68-8b97-81ce6555871d", - "last_modified": 1741143422538 - }, - { - "schema": 1741140175502, - "derHash": "eEvIWa2NYaUKkUw1fBS4KBTW9uPccT343Ri9nzfexAg=", - "attachment": { - "hash": "3b2da0067cd3b8eeb4ce30c3f1d3d7d8d620f3e7c5e7961832b47e9137f52c98", - "size": 1187, - "filename": "R4eNv-z6u0Kzayeo1NdZJIMfLbF1SaVPQfhNPQIDBD4=.pem", - "location": "security-state-staging/intermediates/3ec0c307-c7ce-4a40-bbb3-6b208467ea77.pem", - "mimetype": "application/x-pem-file" - }, - "id": "d7a83066-5695-4efe-94d9-3a1eb190c867", - "last_modified": 1741143422535 - }, { "schema": 1741010569850, "derHash": "yaXBqISMP+iV6jLbqkvt682r9oM0aebqnLkOFW7x8J0=", @@ -7830,24 +9325,6 @@ "id": "8936d1eb-6881-4dc1-9eb9-d51707108789", "last_modified": 1727449022563 }, - { - "schema": 1727359367325, - "derHash": "bM9Sdls7NbR2Aw8W7OJCedyH/BDMeEvA4EkZ6QTSVAc=", - "subject": "CN=Subordinate Advanced ECC CA G2,O=SECOM Trust Systems CO.\\,LTD.,C=JP", - "subjectDN": "MF0xCzAJBgNVBAYTAkpQMSUwIwYDVQQKExxTRUNPTSBUcnVzdCBTeXN0ZW1zIENPLixMVEQuMScwJQYDVQQDEx5TdWJvcmRpbmF0ZSBBZHZhbmNlZCBFQ0MgQ0EgRzI=", - "whitelist": false, - "attachment": { - "hash": "1f86e575d4badad207a0f3a6d945fd0a75f7001bf3b2eb598c09ffa897636816", - "size": 1589, - "filename": "1b-hdhDYKpJwO40m1GtAqNkn5luo7V8AYgKzz-dZ_YY=.pem", - "location": "security-state-staging/intermediates/103d1694-af42-4002-bb50-386dd04d3b97.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "1b+hdhDYKpJwO40m1GtAqNkn5luo7V8AYgKzz+dZ/YY=", - "crlite_enrolled": false, - "id": "51754853-e8ce-49b0-a434-0a99c06e12e2", - "last_modified": 1727362622546 - }, { "schema": 1727100175330, "derHash": "MJQCV5IDmmivblU2hkEL2rfA1KNrkITLpkIC411uu90=", @@ -8388,24 +9865,6 @@ "id": "42e65582-bc47-411f-8a83-18f6157fd458", "last_modified": 1724961422704 }, - { - "schema": 1724961272729, - "derHash": "lLlJaZt0Nosn+tFNHu8fKqKtasJDmaJDmTmLAT/7lgE=", - "subject": "CN=VikingCloud TWG TLS DV CA\\, Level 1,O=Viking Cloud\\, Inc.,C=US", - "subjectDN": "MFcxCzAJBgNVBAYTAlVTMRswGQYDVQQKExJWaWtpbmcgQ2xvdWQsIEluYy4xKzApBgNVBAMTIlZpa2luZ0Nsb3VkIFRXRyBUTFMgRFYgQ0EsIExldmVsIDE=", - "whitelist": false, - "attachment": { - "hash": "cedcb40a8be3992992b074e838425a2fda9bed4b7f8e6594ce2b0487e990cedb", - "size": 2438, - "filename": "9Am3q5dmFVqFOADU-ARAtYsn186LNjSE0aQ6FCm6v3E=.pem", - "location": "security-state-staging/intermediates/9e24dc77-f6e4-4d6c-a609-1f41c7c37c2b.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "9Am3q5dmFVqFOADU+ARAtYsn186LNjSE0aQ6FCm6v3E=", - "crlite_enrolled": false, - "id": "cc4a41d8-3987-460a-ae26-55f0b28d2dcb", - "last_modified": 1724961422702 - }, { "schema": 1724961268625, "derHash": "Q+37LHyT5j1lZtJA65xpz/XA1cmWxKybzJznWCjDub4=", @@ -15030,24 +16489,6 @@ "id": "d4028f7a-433e-4118-9af5-f556af86871c", "last_modified": 1666727875274 }, - { - "schema": 1666727409802, - "derHash": "Vtpu/vHVBBNMcu7cOuRKp/oRuEiCDb+qhsqONdYO2wQ=", - "subject": "CN=FujiSSL Public Validation Authority - G3,O=SECOM Trust Systems CO.\\,LTD.,C=JP", - "subjectDN": "MGcxCzAJBgNVBAYTAkpQMSUwIwYDVQQKExxTRUNPTSBUcnVzdCBTeXN0ZW1zIENPLixMVEQuMTEwLwYDVQQDEyhGdWppU1NMIFB1YmxpYyBWYWxpZGF0aW9uIEF1dGhvcml0eSAtIEcz", - "whitelist": false, - "attachment": { - "hash": "bbb89301ab3ea4fd79d1448f5c852927551328811eee186c33c831d20d5e0ae0", - "size": 1674, - "filename": "dzjq2willdWoAe9M1lz4AuLGmmFYgxAD2zYIXMhbzjo=.pem", - "location": "security-state-staging/intermediates/f2374571-0b80-42e0-8883-fda71075451e.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "dzjq2willdWoAe9M1lz4AuLGmmFYgxAD2zYIXMhbzjo=", - "crlite_enrolled": false, - "id": "77918a2e-3fdb-4dcf-8e32-cbe1b39f74f4", - "last_modified": 1666727875260 - }, { "schema": 1666727335669, "derHash": "NEe3S15QClSZg/os7XOlZC5qrseIKVRhWEN99m10Nbg=", @@ -17334,24 +18775,6 @@ "id": "1f394e59-5d02-4846-a6c1-db9ef28d0213", "last_modified": 1666727872042 }, - { - "schema": 1666727333802, - "derHash": "XEUjNNnJyaLqQsx3pxZeF5XunYTrcMt4S0fqnZKlgtk=", - "subject": "CN=Soluti CA - DV,O=SOLUTI - SOLUCOES EM NEGOCIOS INTELIGENTES S/A,C=BR", - "subjectDN": "MF8xCzAJBgNVBAYTAkJSMTcwNQYDVQQKEy5TT0xVVEkgLSBTT0xVQ09FUyBFTSBORUdPQ0lPUyBJTlRFTElHRU5URVMgUy9BMRcwFQYDVQQDEw5Tb2x1dGkgQ0EgLSBEVg==", - "whitelist": false, - "attachment": { - "hash": "8265936e7b87a7845ad3792c1bfbde5b8469f44276f048e773d7d306888e920a", - "size": 1756, - "filename": "kAzMeuwjUBWfPL5YEYfQG9qK_ABDxl0BMvPtzwEPN7E=.pem", - "location": "security-state-staging/intermediates/8d6429a5-772d-4666-be02-ba8282f7be70.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "kAzMeuwjUBWfPL5YEYfQG9qK/ABDxl0BMvPtzwEPN7E=", - "crlite_enrolled": false, - "id": "513590d9-2a18-481c-b691-bf785c25086b", - "last_modified": 1666727872015 - }, { "schema": 1666727379438, "derHash": "vLwYxGO2HzoDOxDHSXTtiiwyivzWejONmHFQajUVQZ8=", @@ -17568,24 +18991,6 @@ "id": "9bfb32bb-d95f-4440-a86b-01e4010249cf", "last_modified": 1666727871648 }, - { - "schema": 1666727391920, - "derHash": "Efukp+5XnHDh1X+fm2qMIJ4SGcTx04Rvg//OdOnl4s4=", - "subject": "CN=Soluti CA - EV,O=SOLUTI - SOLUCOES EM NEGOCIOS INTELIGENTES S/A,C=BR", - "subjectDN": "MF8xCzAJBgNVBAYTAkJSMTcwNQYDVQQKEy5TT0xVVEkgLSBTT0xVQ09FUyBFTSBORUdPQ0lPUyBJTlRFTElHRU5URVMgUy9BMRcwFQYDVQQDEw5Tb2x1dGkgQ0EgLSBFVg==", - "whitelist": false, - "attachment": { - "hash": "b45919819e02ad79724a514eaf858e77f666b1352e04efbd7b970ef878509a6a", - "size": 1776, - "filename": "Z6aApIGWlcMWZHFtBmP1FgZhyLKarTalSo0g5-EeG0U=.pem", - "location": "security-state-staging/intermediates/b2a82526-2d56-4d6f-82ed-ec715bf0fbe2.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "Z6aApIGWlcMWZHFtBmP1FgZhyLKarTalSo0g5+EeG0U=", - "crlite_enrolled": false, - "id": "2c989aad-c7f6-46c5-b0e4-6b645ccbe43f", - "last_modified": 1666727871621 - }, { "schema": 1666727333970, "derHash": "8RRGn7gHeBM6H3Dk2DOO2rl91CzrjswByvtw1rh98R4=", @@ -18306,24 +19711,6 @@ "id": "4a6655ab-9a9a-43db-bb34-1602419c8ed9", "last_modified": 1666727870728 }, - { - "schema": 1666727440773, - "derHash": "q3SxQRrSPiIn+4iiqTBKGkWlxIQLNjXxA2pG6DdCeaw=", - "subject": "CN=Soluti CA - OV,O=SOLUTI - SOLUCOES EM NEGOCIOS INTELIGENTES S/A,C=BR", - "subjectDN": "MF8xCzAJBgNVBAYTAkJSMTcwNQYDVQQKEy5TT0xVVEkgLSBTT0xVQ09FUyBFTSBORUdPQ0lPUyBJTlRFTElHRU5URVMgUy9BMRcwFQYDVQQDEw5Tb2x1dGkgQ0EgLSBPVg==", - "whitelist": false, - "attachment": { - "hash": "1289ff9c033377f8edc9f2ded9318205d7263d8c7040b70ff2db68630eaac699", - "size": 1776, - "filename": "rCbpz2JPbnICZtM69Lt2eclqdTss0Mj0Z4ejXMF1nD4=.pem", - "location": "security-state-staging/intermediates/1bbff038-8596-4d1c-aea4-d0a5730155a8.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "rCbpz2JPbnICZtM69Lt2eclqdTss0Mj0Z4ejXMF1nD4=", - "crlite_enrolled": false, - "id": "bd39f78d-03b0-4fc6-9992-3728009c0be9", - "last_modified": 1666727870647 - }, { "schema": 1666727420998, "derHash": "yAJfn8Zf38lbPKjMeGe5pYe1J3lzlXkXRj/IE9C2Jak=", @@ -24390,24 +25777,6 @@ "id": "261d2a7a-7e13-4ffd-bf3e-4dbe09c11bc8", "last_modified": 1663786626447 }, - { - "schema": 1663786372899, - "derHash": "a+fQTiD/wo8ZjKiPwMNkR4T9FWkDvweBMPuWTAJY26A=", - "subject": "CN=United Parcel Service\\, Inc. RSA OV CA,O=United Parcel Service\\, Inc.,L=Atlanta,ST=GA,C=US", - "subjectDN": "MIGCMQswCQYDVQQGEwJVUzELMAkGA1UECBMCR0ExEDAOBgNVBAcTB0F0bGFudGExJDAiBgNVBAoTG1VuaXRlZCBQYXJjZWwgU2VydmljZSwgSW5jLjEuMCwGA1UEAxMlVW5pdGVkIFBhcmNlbCBTZXJ2aWNlLCBJbmMuIFJTQSBPViBDQQ==", - "whitelist": false, - "attachment": { - "hash": "5f2f917f15eb321eb42931857ac7ab983a47c6ee7bd3ae860d471c9af6b89cb5", - "size": 2142, - "filename": "SwXmbcFTOEV-82sxJhAl0R-uGVTqV9eWCnYAM12xQYs=.pem", - "location": "security-state-staging/intermediates/4ae82de2-f623-4295-9237-d34d5d6630b1.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "SwXmbcFTOEV+82sxJhAl0R+uGVTqV9eWCnYAM12xQYs=", - "crlite_enrolled": false, - "id": "b2a58c9b-ce5d-4635-94ac-0b3d767ad225", - "last_modified": 1663786626419 - }, { "schema": 1663786379170, "derHash": "X6SbNsctA+QtqkMCUA1kbJSMh6w27TDMPb3bviTGRjM=", @@ -27198,60 +28567,6 @@ "id": "cc20f2ed-b23f-45b9-b4f9-1aaffc1a93b7", "last_modified": 1656032223524 }, - { - "schema": 1655189537975, - "derHash": "Du8FvaeELqhdHZgSSV78VhKDuqkNFDHFed1h9+2SaaE=", - "subject": "CN=Viking Cloud Organization Validation CA\\, Level 1,O=Viking Cloud\\, Inc.,C=US", - "subjectDN": "MGUxCzAJBgNVBAYTAlVTMRswGQYDVQQKExJWaWtpbmcgQ2xvdWQsIEluYy4xOTA3BgNVBAMTMFZpa2luZyBDbG91ZCBPcmdhbml6YXRpb24gVmFsaWRhdGlvbiBDQSwgTGV2ZWwgMQ==", - "whitelist": false, - "attachment": { - "hash": "006d8c79464234dbd24dd5a3685784e0002a510529a17a45c586e2ffdbfabd36", - "size": 1605, - "filename": "unLMj_QBNe_Q7to-eIcm3DJAgrMoPWPkEwFZMsbRY7k=.pem", - "location": "security-state-staging/intermediates/6745493c-4ee2-43be-b7a9-f05026fe3760.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "unLMj/QBNe/Q7to+eIcm3DJAgrMoPWPkEwFZMsbRY7k=", - "crlite_enrolled": false, - "id": "e59c2c37-90bb-440b-8396-b716e868dd84", - "last_modified": 1655189822967 - }, - { - "schema": 1655189537137, - "derHash": "OGrZZdokgSAW7T8BHyES39WRaT2r6z0OYbEUX1+dEhc=", - "subject": "CN=Viking Cloud Domain Validation CA\\, Level 1,O=Viking Cloud\\, Inc.,C=US", - "subjectDN": "MF8xCzAJBgNVBAYTAlVTMRswGQYDVQQKExJWaWtpbmcgQ2xvdWQsIEluYy4xMzAxBgNVBAMTKlZpa2luZyBDbG91ZCBEb21haW4gVmFsaWRhdGlvbiBDQSwgTGV2ZWwgMQ==", - "whitelist": false, - "attachment": { - "hash": "098935eae4896b90a68d29bc952ccfd67b8c3dd84203ffcb2ac77db9abae8adb", - "size": 1585, - "filename": "junHeKNTWfpbz93WVSLN_XeDp-DEZkJSqMzt00XxYBA=.pem", - "location": "security-state-staging/intermediates/482b11d7-dab4-4f06-8578-b1e78997ed3a.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "junHeKNTWfpbz93WVSLN/XeDp+DEZkJSqMzt00XxYBA=", - "crlite_enrolled": false, - "id": "459a3e96-9edd-4b67-a702-416676d676b7", - "last_modified": 1655189822960 - }, - { - "schema": 1655189536211, - "derHash": "ELYI5T4PP0RDKjK5Bs11MAFzasi/6Q7ToIR98oXi2Xc=", - "subject": "CN=Viking Cloud Extended Validation CA\\, Level 1,O=Viking Cloud\\, Inc.,C=US", - "subjectDN": "MGExCzAJBgNVBAYTAlVTMRswGQYDVQQKExJWaWtpbmcgQ2xvdWQsIEluYy4xNTAzBgNVBAMTLFZpa2luZyBDbG91ZCBFeHRlbmRlZCBWYWxpZGF0aW9uIENBLCBMZXZlbCAx", - "whitelist": false, - "attachment": { - "hash": "6ec99683dce9696b64633a066f22f6b0706a0ecb071f4e7b9410380d74da608c", - "size": 1601, - "filename": "iaX3F_DBxteIvZKYoTUXBd_2bVXGONmIkaeGjVNPR2w=.pem", - "location": "security-state-staging/intermediates/df82cc9d-4f57-40e8-af0e-c60132ffa421.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "iaX3F/DBxteIvZKYoTUXBd/2bVXGONmIkaeGjVNPR2w=", - "crlite_enrolled": false, - "id": "0f04579c-51bb-474a-b50c-f4fb19248d2b", - "last_modified": 1655189822953 - }, { "schema": 1654825724896, "derHash": "WVPN/qO+2zfjDeiJw/bQbgAHUqMF4OD8b1RP7iSLMlo=", @@ -27378,24 +28693,6 @@ "id": "90e8d1ea-a147-43dc-b502-164677314799", "last_modified": 1654804623143 }, - { - "schema": 1652539714356, - "derHash": "NyuPTOc77fyIcYxAe7az5tj5p5vpVxkNDnEBx7DvmjI=", - "subject": "CN=NetLock Expressz (Class C) Tanúsítványkiadó,OU=Tanúsítványkiadók (Certification Services),O=NetLock Kft.,L=Budapest,C=HU", - "subjectDN": "MIGqMQswCQYDVQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3MDUGA1UECwwuVGFuw7pzw610dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNlcnZpY2VzKTE4MDYGA1UEAwwvTmV0TG9jayBFeHByZXNzeiAoQ2xhc3MgQykgVGFuw7pzw610dsOhbnlraWFkw7M=", - "whitelist": false, - "attachment": { - "hash": "96ba448b3b21c633bd5e293f4383a8b88b67e802476a48d48ba20ffa8359a5ce", - "size": 2182, - "filename": "KS2adY6eMaWNhbLW6JREO3Oo34Qy_UvmA5f-f4ROpYw=.pem", - "location": "security-state-staging/intermediates/6380c544-10af-435b-ae2d-adad842694a3.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "KS2adY6eMaWNhbLW6JREO3Oo34Qy/UvmA5f+f4ROpYw=", - "crlite_enrolled": false, - "id": "522256d0-e9e9-44e9-b35d-221ddf453cad", - "last_modified": 1652540238996 - }, { "schema": 1651243731947, "derHash": "UscwCUvRr5jslRBbbVjwm78ICoZh/vA8Xn4xwccao54=", @@ -27594,24 +28891,6 @@ "id": "cfdbbcaf-8ad7-44df-988e-6b0c1d3a6ef0", "last_modified": 1650920239252 }, - { - "schema": 1650919756111, - "derHash": "uCIQzend6g4UvimvZH5LMvlu0qnvGqW6qcxks4tsAco=", - "subject": "OU=AC RAIZ FNMT-RCM,O=FNMT-RCM,C=ES", - "subjectDN": "MDsxCzAJBgNVBAYTAkVTMREwDwYDVQQKDAhGTk1ULVJDTTEZMBcGA1UECwwQQUMgUkFJWiBGTk1ULVJDTQ==", - "whitelist": false, - "attachment": { - "hash": "dda828b4a97c8a8f24d378bef318af5d144be4d873ff73ba3f07303c1c298e49", - "size": 1971, - "filename": "L8VmekuaJnjtasatJUZfy_YJS_zZUECXx6j6R63l6Ig=.pem", - "location": "security-state-staging/intermediates/c8065d4f-f7f0-4e26-aa22-7e982bf06bba.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "L8VmekuaJnjtasatJUZfy/YJS/zZUECXx6j6R63l6Ig=", - "crlite_enrolled": false, - "id": "752044c7-55ec-4fd9-a0fa-6bd6b3db2f27", - "last_modified": 1650920239183 - }, { "schema": 1650919749373, "derHash": "VD2bf8KmRxzYT8pSws9hWd+D6/zYjYsIta8/iHN/UuY=", @@ -27990,24 +29269,6 @@ "id": "2dea51d4-7fea-4eb2-a507-7fa4ef9b5e26", "last_modified": 1646513861656 }, - { - "schema": 1645577291579, - "derHash": "GKvW6cqQe7NnVNDARuu1Ddm5XVJ4JNlYGjG3UPz9uu8=", - "subject": "CN=Trustwave Global ECDSA P-256 Organization Validation CA\\, Level 1,O=Trustwave Holdings\\, Inc.,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MIGgMUkwRwYDVQQDE0BUcnVzdHdhdmUgR2xvYmFsIEVDRFNBIFAtMjU2IE9yZ2FuaXphdGlvbiBWYWxpZGF0aW9uIENBLCBMZXZlbCAxMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xEDAOBgNVBAcTB0NoaWNhZ28xETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJVUw==", - "whitelist": false, - "attachment": { - "hash": "f16bdfde574887cdf9b20fdd1a1ad5e789c2d8b5094a68dc63225d64c51f2d50", - "size": 1329, - "filename": "lZMwN7CwdUNqVdEULuLxoCtwEIC9qGjWWMelIDRtDNU=.pem", - "location": "security-state-staging/intermediates/f98637f3-11ed-494f-aad4-f51ad1b477b3.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "lZMwN7CwdUNqVdEULuLxoCtwEIC9qGjWWMelIDRtDNU=", - "crlite_enrolled": false, - "id": "016e2b15-da30-4cb5-bab8-4f10f76d1605", - "last_modified": 1645578269083 - }, { "schema": 1645577292935, "derHash": "fixTc5fnuNmyTYfzBMluoFekB84R0LZtmbpLiiK7EWc=", @@ -28044,24 +29305,6 @@ "id": "83e46e54-0c13-4858-814f-2640b229bd01", "last_modified": 1645578269031 }, - { - "schema": 1645577313138, - "derHash": "h9QhabJpNVHKIFzPF/BvbmZR9yGM1tJmB79bpN0vJvI=", - "subject": "CN=Trustwave Global ECDSA P-384 Organization Validation CA\\, Level 1,O=Trustwave Holdings\\, Inc.,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MIGgMUkwRwYDVQQDE0BUcnVzdHdhdmUgR2xvYmFsIEVDRFNBIFAtMzg0IE9yZ2FuaXphdGlvbiBWYWxpZGF0aW9uIENBLCBMZXZlbCAxMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xEDAOBgNVBAcTB0NoaWNhZ28xETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJVUw==", - "whitelist": false, - "attachment": { - "hash": "8cd0dbed89841d6b6854301f7eecbbdcd40ac73d8c8347c1ea8a577a05c10603", - "size": 1410, - "filename": "91i1mhKwhcz0SKoJ9CzM_9ohVagG6cKG9Z_i4Ts1FFk=.pem", - "location": "security-state-staging/intermediates/cff3b717-e049-4d5a-b487-ceec8ee7788d.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "91i1mhKwhcz0SKoJ9CzM/9ohVagG6cKG9Z/i4Ts1FFk=", - "crlite_enrolled": false, - "id": "d8f2f8d9-847b-449d-bb14-d59326e690d7", - "last_modified": 1645578268916 - }, { "schema": 1645577327799, "derHash": "kfGc5QPJ/n/5WH2O++9zFarud9wtFFJhJkk7Stb+gB8=", @@ -28080,24 +29323,6 @@ "id": "3a455bca-8194-4d00-928c-1fc33a8869f5", "last_modified": 1645578268786 }, - { - "schema": 1645577339845, - "derHash": "ttVvPdJqyETlfIv+kFT1cGE1CpCJS5nNmBHppUX8hMU=", - "subject": "CN=SwissSign RSA SMIME Root CA 2021 - 1,O=SwissSign AG,C=CH", - "subjectDN": "MFMxCzAJBgNVBAYTAkNIMRUwEwYDVQQKEwxTd2lzc1NpZ24gQUcxLTArBgNVBAMTJFN3aXNzU2lnbiBSU0EgU01JTUUgUm9vdCBDQSAyMDIxIC0gMQ==", - "whitelist": false, - "attachment": { - "hash": "7644498aff67a69e26a420c7e76e4649ead3a8bb2f20c592db5c9cd2b4412601", - "size": 1991, - "filename": "HKpRHDLoh8f2rEFEWyjA0ZeopKTbs4zV87Xess-HD4U=.pem", - "location": "security-state-staging/intermediates/d4bebbe8-5c5d-4a42-9a8c-6b64a9a76314.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "HKpRHDLoh8f2rEFEWyjA0ZeopKTbs4zV87Xess+HD4U=", - "crlite_enrolled": false, - "id": "303a3d11-64e5-4b50-83d5-660aa76829be", - "last_modified": 1645578268688 - }, { "schema": 1645577343844, "derHash": "2+LWPb33b3G6YxNU4W7JfBbgFnkqo7nMnSjFgsrUick=", @@ -28134,60 +29359,6 @@ "id": "33b42f4a-4bff-4abf-b03a-d77a07dfc454", "last_modified": 1645578268393 }, - { - "schema": 1645577379076, - "derHash": "LmPcG+z0J/mQK0neYzD9Po7r+IsU5lOzui431OSICWU=", - "subject": "CN=Trustwave Global Organization Validation CA\\, Level 1,O=Trustwave Holdings\\, Inc.,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MIGUMT0wOwYDVQQDEzRUcnVzdHdhdmUgR2xvYmFsIE9yZ2FuaXphdGlvbiBWYWxpZGF0aW9uIENBLCBMZXZlbCAxMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xEDAOBgNVBAcTB0NoaWNhZ28xETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJVUw==", - "whitelist": false, - "attachment": { - "hash": "9d9bb0ca6a8a59110e9ecd8714e94894e0be5886e46f9c4e5265ffa83dcece40", - "size": 2519, - "filename": "z4qrcPL95VQXuiBgseJjj0x2uKXj6NQcTxtcnoGWFyk=.pem", - "location": "security-state-staging/intermediates/8771cde1-4865-436b-bb56-6604a726f4bc.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "z4qrcPL95VQXuiBgseJjj0x2uKXj6NQcTxtcnoGWFyk=", - "crlite_enrolled": false, - "id": "42a123e8-d13a-40c4-8e1c-70f3ac954774", - "last_modified": 1645578268382 - }, - { - "schema": 1645577384467, - "derHash": "KfjhBN845hK/T1BTZbXQsLIN1OickIMGSE64N0weZtg=", - "subject": "CN=Trustwave Global ECDSA P-384 Extended Validation CA\\, Level 1,O=Trustwave Holdings\\, Inc.,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MIGcMUUwQwYDVQQDEzxUcnVzdHdhdmUgR2xvYmFsIEVDRFNBIFAtMzg0IEV4dGVuZGVkIFZhbGlkYXRpb24gQ0EsIExldmVsIDExITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjEQMA4GA1UEBxMHQ2hpY2FnbzERMA8GA1UECBMISWxsaW5vaXMxCzAJBgNVBAYTAlVT", - "whitelist": false, - "attachment": { - "hash": "53f8122b5a0fa5136d24ba312f1f8c41061bd774427e22f6d2a5e4fababcd5ea", - "size": 1406, - "filename": "dzssfumpi3rcJekwfVNUyE16SoxSUQ6SRbv3ubi21iE=.pem", - "location": "security-state-staging/intermediates/4704d8d9-40ac-48ab-a268-592fab67683c.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "dzssfumpi3rcJekwfVNUyE16SoxSUQ6SRbv3ubi21iE=", - "crlite_enrolled": false, - "id": "be725aa6-a968-4291-bcd7-93ee080e586d", - "last_modified": 1645578268342 - }, - { - "schema": 1645577387026, - "derHash": "Z4LG6a2/khbiaDBtRjM/vGdL3t+GtnvndweeLA42iI4=", - "subject": "CN=Trustwave Global Domain Validation CA\\, Level 1,O=Trustwave Holdings\\, Inc.,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MIGOMTcwNQYDVQQDEy5UcnVzdHdhdmUgR2xvYmFsIERvbWFpbiBWYWxpZGF0aW9uIENBLCBMZXZlbCAxMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xEDAOBgNVBAcTB0NoaWNhZ28xETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJVUw==", - "whitelist": false, - "attachment": { - "hash": "a1aae690e4bc653bc8dd049d0014c8bdf294c1327ae51c6f40d11e8b728cdee3", - "size": 2499, - "filename": "N8k0xQNnFdJBZpSXQ6W9OldaDSJ59X-kFQNRrNSN8Cw=.pem", - "location": "security-state-staging/intermediates/18b0f7cb-0da9-422a-b8b0-edf3ba36821b.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "N8k0xQNnFdJBZpSXQ6W9OldaDSJ59X+kFQNRrNSN8Cw=", - "crlite_enrolled": false, - "id": "d477a580-6e24-46a9-a2c7-4c09077650a5", - "last_modified": 1645578268322 - }, { "schema": 1645577388356, "derHash": "Nk3yXMiPb7AgLALNm46gLf6KwCNB7/Wp3/xb4VntWZE=", @@ -28224,24 +29395,6 @@ "id": "c84acf1d-eee2-4a4b-9797-e68042bc1ed6", "last_modified": 1645578268229 }, - { - "schema": 1645577412454, - "derHash": "GGJqO3IREo1WNGnGVFV9E8k2bX/OyLlNtPCqfgWUQEE=", - "subject": "CN=Trustwave Global Extended Validation CA\\, Level 1,O=Trustwave Holdings\\, Inc.,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MIGQMTkwNwYDVQQDEzBUcnVzdHdhdmUgR2xvYmFsIEV4dGVuZGVkIFZhbGlkYXRpb24gQ0EsIExldmVsIDExITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjEQMA4GA1UEBxMHQ2hpY2FnbzERMA8GA1UECBMISWxsaW5vaXMxCzAJBgNVBAYTAlVT", - "whitelist": false, - "attachment": { - "hash": "4e61dd89fb06d5da14f5a4b0f7a2328cd7ab2dea6544a50ea59b3e7d59167e32", - "size": 2515, - "filename": "V3f1xGezL0zYaRJqAhBzSKsvj3vEMlp9KGBwnV4be38=.pem", - "location": "security-state-staging/intermediates/01a8f648-ea7e-430b-a212-50aaa75a5e54.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "V3f1xGezL0zYaRJqAhBzSKsvj3vEMlp9KGBwnV4be38=", - "crlite_enrolled": false, - "id": "f5515d37-9357-413c-a858-036df41b70fd", - "last_modified": 1645578268128 - }, { "schema": 1645577420440, "derHash": "gpj8QnBMTtd0tNsxBSkmC1JKkHUlKh0Ks44G8bmoNJk=", @@ -28476,24 +29629,6 @@ "id": "ec1245af-ec52-405d-8a7f-67e52e819d5b", "last_modified": 1645578266982 }, - { - "schema": 1645577572043, - "derHash": "J1vwBG4CcBeLE7Z+TbFQoQGXy3H5oGH602s9dmOf4YY=", - "subject": "CN=Trustwave Global ECDSA P-256 Extended Validation CA\\, Level 1,O=Trustwave Holdings\\, Inc.,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MIGcMUUwQwYDVQQDEzxUcnVzdHdhdmUgR2xvYmFsIEVDRFNBIFAtMjU2IEV4dGVuZGVkIFZhbGlkYXRpb24gQ0EsIExldmVsIDExITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjEQMA4GA1UEBxMHQ2hpY2FnbzERMA8GA1UECBMISWxsaW5vaXMxCzAJBgNVBAYTAlVT", - "whitelist": false, - "attachment": { - "hash": "b39b1eb52f8d651482f3d14bd9a033de3982f3cc3fa825ba761d2fefa3a11981", - "size": 1325, - "filename": "YzpgcYxSKDnEVZ3T3h2obh9WsI9ICItWbAqh4SyCprA=.pem", - "location": "security-state-staging/intermediates/e8727b1e-db90-43a1-896d-acfa3849475f.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "YzpgcYxSKDnEVZ3T3h2obh9WsI9ICItWbAqh4SyCprA=", - "crlite_enrolled": false, - "id": "327d0c33-3441-43da-a81a-797c08caae1b", - "last_modified": 1645578266923 - }, { "schema": 1645577573413, "derHash": "UOJ/kOtq9JWw5u62VcyJREwn08lbaCP6AqvclfFjauE=", @@ -28512,24 +29647,6 @@ "id": "fcef12c5-b871-4941-ab0c-8348d333a4e4", "last_modified": 1645578266913 }, - { - "schema": 1645577577654, - "derHash": "9i41qtNF+yU4Y8/A5lgjrNPn8IRtGbgybXCceRmiLX4=", - "subject": "CN=Trustwave Global ECDSA P-256 Domain Validation CA\\, Level 1,O=Trustwave Holdings\\, Inc.,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MIGaMUMwQQYDVQQDEzpUcnVzdHdhdmUgR2xvYmFsIEVDRFNBIFAtMjU2IERvbWFpbiBWYWxpZGF0aW9uIENBLCBMZXZlbCAxMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xEDAOBgNVBAcTB0NoaWNhZ28xETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJVUw==", - "whitelist": false, - "attachment": { - "hash": "ce8879da72592af4bbeefb13d2c925ca1eed8e33ca17d960a29ad9ae0835124d", - "size": 1305, - "filename": "a-5FBlZcydYwIUikW5fVH6MjJzVRhdPbb586imNLagE=.pem", - "location": "security-state-staging/intermediates/62d82876-f314-4cd8-b5af-54a36e786129.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "a+5FBlZcydYwIUikW5fVH6MjJzVRhdPbb586imNLagE=", - "crlite_enrolled": false, - "id": "d5bf85e2-a4bf-45b9-9b11-ab887c49e96d", - "last_modified": 1645578266884 - }, { "schema": 1645577581818, "derHash": "BrtWd3HEJpFMGaY47cGACPWQG5KBSpd0v+iBW6t+puk=", @@ -28602,24 +29719,6 @@ "id": "d4e5f3f5-705e-4bbd-a60d-297d4ab5c2cd", "last_modified": 1645578266606 }, - { - "schema": 1645577615835, - "derHash": "xj35YY+69IZiuhKr6HshLPd3wnpEag+lVdep0ZEUjtc=", - "subject": "CN=Trustwave Global ECDSA P-384 Domain Validation CA\\, Level 1,O=Trustwave Holdings\\, Inc.,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MIGaMUMwQQYDVQQDEzpUcnVzdHdhdmUgR2xvYmFsIEVDRFNBIFAtMzg0IERvbWFpbiBWYWxpZGF0aW9uIENBLCBMZXZlbCAxMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xEDAOBgNVBAcTB0NoaWNhZ28xETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJVUw==", - "whitelist": false, - "attachment": { - "hash": "e81cc0a883e6e41a009a5d876bc62528cd6b26b1edd7421071b6ff434dca6265", - "size": 1390, - "filename": "NIbNiw79lRjCX7hAKe6oYePjjaaAQ9l_zvmwptYjCgg=.pem", - "location": "security-state-staging/intermediates/805d4e01-06d3-4cd4-9e90-5d413167243c.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "NIbNiw79lRjCX7hAKe6oYePjjaaAQ9l/zvmwptYjCgg=", - "crlite_enrolled": false, - "id": "15c61ec9-5b89-4812-8240-d6bf15fa38dd", - "last_modified": 1645578266596 - }, { "schema": 1645577625212, "derHash": "Euom9u7v7HarhZJUVAOriFFbAOJ12YiHE0B6hvxcf9c=", @@ -30348,24 +31447,6 @@ "id": "16682234-e483-4e72-9b5a-9a6efd36c796", "last_modified": 1562108393755 }, - { - "schema": 1562108349322, - "derHash": "XmCWWARGGTCsJ7bb40RWeerkExwir7iK96z2oZF7Wro=", - "subject": "CN=SecureTrust Domain Validation CA\\, Level 1,O=SecureTrust,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MHwxMjAwBgNVBAMTKVNlY3VyZVRydXN0IERvbWFpbiBWYWxpZGF0aW9uIENBLCBMZXZlbCAxMRQwEgYDVQQKEwtTZWN1cmVUcnVzdDEQMA4GA1UEBxMHQ2hpY2FnbzERMA8GA1UECBMISWxsaW5vaXMxCzAJBgNVBAYTAlVT", - "whitelist": false, - "attachment": { - "hash": "808680a0c2b3da12440074c2cecf8ba7b7a50796c469c901bf2bae7963658f5d", - "size": 1618, - "filename": "3MJ7kgH4AG-ip6CMzIBTeYe9X-9dSxFjCbnEIuYJlWA=.pem", - "location": "security-state-staging/intermediates/cfd0f4ac-b77c-4563-aeb5-243676326507.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "3MJ7kgH4AG+ip6CMzIBTeYe9X+9dSxFjCbnEIuYJlWA=", - "crlite_enrolled": false, - "id": "9bc337d9-2ebf-4b9a-a405-087a0a528af3", - "last_modified": 1562108350078 - }, { "schema": 1562108339272, "derHash": "GPzgkvo93kVUIjrnmwxJmiD0EUw2MHnSPY6v3JZzk2k=", @@ -31086,24 +32167,6 @@ "id": "b84bfc47-4590-4d6c-b85e-ceb5465f3c63", "last_modified": 1562023857605 }, - { - "schema": 1562023819546, - "derHash": "u2YddQxTFmGBgHpomP1GQGXOWSmJhq1m2db//LvUc4o=", - "subject": "CN=NetLock Expressz Eat. (Class C Legal) Tanúsítványkiadó,OU=Tanúsítványkiadók (Certification Services),O=NetLock Kft.,L=Budapest,C=HU", - "subjectDN": "MIG1MQswCQYDVQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3MDUGA1UECwwuVGFuw7pzw610dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNlcnZpY2VzKTFDMEEGA1UEAww6TmV0TG9jayBFeHByZXNzeiBFYXQuIChDbGFzcyBDIExlZ2FsKSBUYW7DunPDrXR2w6FueWtpYWTDsw==", - "whitelist": false, - "attachment": { - "hash": "cf7c4f8886152f1548287e1f1314115b3db7ea5a596a43daa585a1a0e2f9e79c", - "size": 2198, - "filename": "-QUSW1ozNhu9biYeUP4qycv4BLZu3JGAci7jNGIo4PI=.pem", - "location": "security-state-staging/intermediates/408172d6-6f39-4e21-9ed3-d79b6dd424a4.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "+QUSW1ozNhu9biYeUP4qycv4BLZu3JGAci7jNGIo4PI=", - "crlite_enrolled": false, - "id": "9ccfdb3e-9fe2-4d0c-a088-5e0ba1450d2e", - "last_modified": 1562023820285 - }, { "schema": 1559867684823, "derHash": "9nIr5ErNrltaizsLSvn0v15fvDlhz1JsvZdp0cbhSFk=", @@ -31158,42 +32221,6 @@ "id": "312fdb56-c1ae-466b-92aa-cce0b03303a3", "last_modified": 1559867029341 }, - { - "schema": 1559866984705, - "derHash": "EdkzDRojmFCN1Q0wlOsosbRJANmSj4wisl73p4G9tAM=", - "subject": "CN=SecureTrust Organization Validation CA\\, Level 1,O=SecureTrust,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MIGCMTgwNgYDVQQDEy9TZWN1cmVUcnVzdCBPcmdhbml6YXRpb24gVmFsaWRhdGlvbiBDQSwgTGV2ZWwgMTEUMBIGA1UEChMLU2VjdXJlVHJ1c3QxEDAOBgNVBAcTB0NoaWNhZ28xETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJVUw==", - "whitelist": false, - "attachment": { - "hash": "2fbb26d89a7df4499089ee4d2d7d54042f375261e865316c51caa6ea3d367c5f", - "size": 1642, - "filename": "naxobvdvRxrUbxomHwj81l5L4m0vZobqUIuxo5hwUQY=.pem", - "location": "security-state-staging/intermediates/db3a6f95-518e-4c87-a822-e3be67b873a0.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "naxobvdvRxrUbxomHwj81l5L4m0vZobqUIuxo5hwUQY=", - "crlite_enrolled": false, - "id": "0446d2af-40a8-49d1-b3fe-9e83881afe72", - "last_modified": 1559866985488 - }, - { - "schema": 1559866972593, - "derHash": "3SM1XGHVmXBCMARyl5XK73ev2zl2enlXQNTgTLYVipk=", - "subject": "CN=SecureTrust Extended Validation CA\\, Level 1,O=SecureTrust,L=Chicago,ST=Illinois,C=US", - "subjectDN": "MH4xNDAyBgNVBAMTK1NlY3VyZVRydXN0IEV4dGVuZGVkIFZhbGlkYXRpb24gQ0EsIExldmVsIDExFDASBgNVBAoTC1NlY3VyZVRydXN0MRAwDgYDVQQHEwdDaGljYWdvMREwDwYDVQQIEwhJbGxpbm9pczELMAkGA1UEBhMCVVM=", - "whitelist": false, - "attachment": { - "hash": "d0105c5ecad0b2ab41480518899e2653e240f06b4a8927ca3d5283c60f63c72e", - "size": 1634, - "filename": "DfrsmfuM5QjUozBeqZ75qybJwEDwRIG64DTyM3Kx5Wg=.pem", - "location": "security-state-staging/intermediates/b46f9bc3-cb55-4302-b52b-e519808c0128.pem", - "mimetype": "application/x-pem-file" - }, - "pubKeyHash": "DfrsmfuM5QjUozBeqZ75qybJwEDwRIG64DTyM3Kx5Wg=", - "crlite_enrolled": false, - "id": "110bade2-6494-40e6-869c-71f45a348718", - "last_modified": 1559866973381 - }, { "schema": 1559866925659, "derHash": "PUUR0KgKqUmm2ZslOhc0cXl8RFkYemMp5zbDfLVJPkY=", @@ -31249,5 +32276,5 @@ "last_modified": 1559865884636 } ], - "timestamp": 1770955022893 + "timestamp": 1773460622721 } diff --git a/icecat/services/settings/dumps/security-state/onecrl.json b/icecat/services/settings/dumps/security-state/onecrl.json index 28ed9b9107..8ddb841d88 100644 --- a/icecat/services/settings/dumps/security-state/onecrl.json +++ b/icecat/services/settings/dumps/security-state/onecrl.json @@ -1,5 +1,665 @@ { "data": [ + { + "schema": 1772730084371, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MEgxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdTZWN1cmVUcnVzdCBDb3Jwb3JhdGlvbjEXMBUGA1UEAxMOU2VjdXJlVHJ1c3QgQ0E=", + "serialNumber": "B2ucg6b4FtsH3oHvdda6+OqAPQ==", + "id": "3fa5d871-aa9d-46a7-899b-f82772627720", + "last_modified": 1773176482130 + }, + { + "schema": 1772730084235, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MEgxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdTZWN1cmVUcnVzdCBDb3Jwb3JhdGlvbjEXMBUGA1UEAxMOU2VjdXJlVHJ1c3QgQ0E=", + "serialNumber": "B2ucg6JA/oqzDY6JXR9EfRaZDg==", + "id": "28cefc70-9de5-4a09-831e-81729c16eaef", + "last_modified": 1773176482127 + }, + { + "schema": 1772730084172, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDI1NiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "Bs6C2ai1fBBIQ5lNrNeeKGM+Xw==", + "id": "29a2171a-a9fd-4402-9131-8ba059b838fe", + "last_modified": 1773176482124 + }, + { + "schema": 1772730083536, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcy", + "serialNumber": "AaZld+J1VXXU7dpfBudB0Q==", + "id": "e89735d3-60f0-4dad-a636-f8ac92c09447", + "last_modified": 1773176482121 + }, + { + "schema": 1772730083979, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDI1NiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7PRWyar3Jx5b6bomzyYxNQ==", + "id": "a7dca5ea-9f6c-46bf-beea-a5f8483c815a", + "last_modified": 1773176482118 + }, + { + "schema": 1772730084107, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MGExCzAJBgNVBAYTAkpQMSUwIwYDVQQKExxTRUNPTSBUcnVzdCBTeXN0ZW1zIENPLixMVEQuMSswKQYDVQQDEyJTZWN1cml0eSBDb21tdW5pY2F0aW9uIEVDQyBSb290Q0Ex", + "serialNumber": "Ha+qSSooDU1v+mrd/Ps6Gg==", + "id": "ba8531f9-89b2-4752-8cdd-e652ae13515f", + "last_modified": 1773176482115 + }, + { + "schema": 1772730083468, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MEgxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdTZWN1cmVUcnVzdCBDb3Jwb3JhdGlvbjEXMBUGA1UEAxMOU2VjdXJlVHJ1c3QgQ0E=", + "serialNumber": "B2ucg6SsqK9YHL7yMsrRQqc1GQ==", + "id": "37512d33-c7ee-4e76-842a-5cde60b43fbc", + "last_modified": 1773176482112 + }, + { + "schema": 1772730084043, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGIMQswCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28xITAfBgNVBAoMGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjExMC8GA1UEAwwoVHJ1c3R3YXZlIEdsb2JhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "Bs6C2Z+zsYDCgQIDFKLRx2QAFw==", + "id": "fe12c8a4-8b90-4ce5-9b4d-15edbf96968f", + "last_modified": 1773176482109 + }, + { + "schema": 1772730083400, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGIMQswCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28xITAfBgNVBAoMGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjExMC8GA1UEAwwoVHJ1c3R3YXZlIEdsb2JhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7O/uJ1d8GqOmKIhygAmWPg==", + "id": "888b9cf5-39f5-40f6-9cea-f5ebda9c85cd", + "last_modified": 1773176482106 + }, + { + "schema": 1772730083916, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MEgxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdTZWN1cmVUcnVzdCBDb3Jwb3JhdGlvbjEXMBUGA1UEAxMOU2VjdXJlVHJ1c3QgQ0E=", + "serialNumber": "BvHsAOMeRtNBsrJjPOSA2RX4HQ==", + "id": "cd5f9d79-2c1a-4b94-a911-db6d9bc22263", + "last_modified": 1773176482103 + }, + { + "schema": 1772730083274, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MEgxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdTZWN1cmVUcnVzdCBDb3Jwb3JhdGlvbjEXMBUGA1UEAxMOU2VjdXJlVHJ1c3QgQ0E=", + "serialNumber": "B86XxXooxXtcn/xT/mnoY524cg==", + "id": "4eb0fa0a-a4e7-45d2-8916-5c0127fd7a31", + "last_modified": 1773176482100 + }, + { + "schema": 1772730083852, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcy", + "serialNumber": "DEC5yVgiSzQckSw0xXQhNQ==", + "id": "5cb98242-a42f-4330-be2b-b823f4fae484", + "last_modified": 1773176482096 + }, + { + "schema": 1772730083209, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDI1NiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7Prm7+p972ff2sCVlVPUfA==", + "id": "89a9e73b-4a87-4893-abbc-4cd2e8c8a508", + "last_modified": 1773176482093 + }, + { + "schema": 1772730083787, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDI1NiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "Bs6C2a9TFCOEe4X7Z3kyqvgFCA==", + "id": "4907e686-3539-4055-9179-81bbafc03fbb", + "last_modified": 1773176482090 + }, + { + "schema": 1772730083144, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MEgxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdTZWN1cmVUcnVzdCBDb3Jwb3JhdGlvbjEXMBUGA1UEAxMOU2VjdXJlVHJ1c3QgQ0E=", + "serialNumber": "B+4kqcRFi595vPmAiJZZh4Kkcg==", + "id": "2cad0147-dec1-4262-9aba-dd6e3e48ad4b", + "last_modified": 1773176482087 + }, + { + "schema": 1772730083725, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGIMQswCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28xITAfBgNVBAoMGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjExMC8GA1UEAwwoVHJ1c3R3YXZlIEdsb2JhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7PjVv/k+7JORqA0kmUxDeg==", + "id": "f2f98999-bc8d-4f4a-97e8-16cd5150e81e", + "last_modified": 1773176482084 + }, + { + "schema": 1772730083077, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDM4NCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7PV/OGPYzIdBnLffScEImA==", + "id": "f60986ba-3fc7-467b-8256-4569b880603d", + "last_modified": 1773176482082 + }, + { + "schema": 1772730083663, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDM4NCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "Bs6C2bB6F8xTdhV4EziaKTCkSg==", + "id": "e2e8794a-865c-4291-9831-945b7ae1e9b9", + "last_modified": 1773176482079 + }, + { + "schema": 1772730083009, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGIMQswCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28xITAfBgNVBAoMGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjExMC8GA1UEAwwoVHJ1c3R3YXZlIEdsb2JhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7QVJ20Qy+V6LoDydeERuqQ==", + "id": "399bbccf-127e-4b3a-a2d2-90d570892b2f", + "last_modified": 1773176482076 + }, + { + "schema": 1772730083600, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MD0xCzAJBgNVBAYTAkNOMREwDwYDVQQKDAhVbmlUcnVzdDEbMBkGA1UEAwwSVUNBIEdsb2JhbCBHMiBSb290", + "serialNumber": "Ys78cA/jymCz1R/xYtykAA==", + "id": "30ef4ced-a185-41f5-b7cd-e3fbd3bb9f73", + "last_modified": 1773176482073 + }, + { + "schema": 1772730082942, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDM4NCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "Bs6C2anY4pg375C+r1ncZVG+1g==", + "id": "a85d7da0-0ef1-43fd-aa5f-7068bef78517", + "last_modified": 1773176482070 + }, + { + "schema": 1772730082881, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDI1NiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "Bs6C2aIKN5fNh46z2qQdCGgK9w==", + "id": "3912ff98-0da1-4ed0-b9a0-9c9198ff0a80", + "last_modified": 1773176482067 + }, + { + "schema": 1772730082813, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDM4NCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7QH6L6w4jtEcBFFJWRzYCQ==", + "id": "76ebc3a1-a492-436a-9667-0060417cb04e", + "last_modified": 1773176482065 + }, + { + "schema": 1772730082747, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MEoxCzAJBgNVBAYTAlVTMRIwEAYDVQQKEwlJZGVuVHJ1c3QxJzAlBgNVBAMTHklkZW5UcnVzdCBDb21tZXJjaWFsIFJvb3QgQ0EgMQ==", + "serialNumber": "QAGb/EhCgjTt7kyZ4DVwcw==", + "id": "5bfe446a-3b07-4528-9947-6c71309e0f77", + "last_modified": 1773176482062 + }, + { + "schema": 1772730082110, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGIMQswCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28xITAfBgNVBAoMGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjExMC8GA1UEAwwoVHJ1c3R3YXZlIEdsb2JhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "Bs6C2a0wRlzyJpfyRrEB7JKVOw==", + "id": "9e561212-efd1-49b4-bf0a-c2e3518726cc", + "last_modified": 1773176482059 + }, + { + "schema": 1772730083337, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MEoxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdTZWN1cmVUcnVzdCBDb3Jwb3JhdGlvbjEZMBcGA1UEAxMQU2VjdXJlIEdsb2JhbCBDQQ==", + "serialNumber": "B84Y7QvRKaXPdVB+mseTZiYMsQ==", + "id": "9f6a92d5-b5a5-4bad-8d18-d5724e3f2f70", + "last_modified": 1773176482057 + }, + { + "schema": 1772730082683, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDI1NiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7QDUWFev7Z5AOBgKway6Dw==", + "id": "60b74d69-6af4-46ce-af19-8fb738924bf0", + "last_modified": 1773176482054 + }, + { + "schema": 1772730082619, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MFExCzAJBgNVBAYTAkVTMUIwQAYDVQQDDDlBdXRvcmlkYWQgZGUgQ2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBBNjI2MzQwNjg=", + "serialNumber": "KVRY2r9KOuPj9KiZnUi1+w==", + "id": "63ba0051-999e-4c2b-97f3-2722e3edc251", + "last_modified": 1773176482051 + }, + { + "schema": 1772730081976, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcy", + "serialNumber": "DqtytilGRQxi3mksgmUEig==", + "id": "19d0daab-b90e-4c87-b58f-491329aa7a37", + "last_modified": 1773176482048 + }, + { + "schema": 1772730082555, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGIMQswCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28xITAfBgNVBAoMGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjExMC8GA1UEAwwoVHJ1c3R3YXZlIEdsb2JhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "Bs6C2aaXA67+XTfRiFjHQCawBA==", + "id": "2bdd7f09-b7dc-4330-889e-fbe14a40de0d", + "last_modified": 1773176482046 + }, + { + "schema": 1772730081912, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MEgxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdTZWN1cmVUcnVzdCBDb3Jwb3JhdGlvbjEXMBUGA1UEAxMOU2VjdXJlVHJ1c3QgQ0E=", + "serialNumber": "BvHsAOgLG6+YcKfEtsvkAaMtaA==", + "id": "4ff1a4c7-881a-4157-b174-2ca7572807dc", + "last_modified": 1773176482043 + }, + { + "schema": 1772730082432, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MD0xCzAJBgNVBAYTAkNOMREwDwYDVQQKDAhVbmlUcnVzdDEbMBkGA1UEAwwSVUNBIEdsb2JhbCBHMiBSb290", + "serialNumber": "Y4BRgr8jIN737Jqu+5ZMYQ==", + "id": "f9f97c1b-2599-45ae-864e-4466efaa0479", + "last_modified": 1773176482040 + }, + { + "schema": 1772730081783, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcy", + "serialNumber": "D1utO40+B9VZUpt8+2owsA==", + "id": "53d9308c-0df2-476a-95af-4f06e4b8d253", + "last_modified": 1773176482037 + }, + { + "schema": 1772730082368, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDM4NCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "Bs6C2aMxWUUwAGeBgpOH5A28tg==", + "id": "a628842e-a826-4f93-864c-99cd700c2244", + "last_modified": 1773176482035 + }, + { + "schema": 1772730081716, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcz", + "serialNumber": "DD0vCSCddtgbKfyz7qZsBg==", + "id": "014c42ba-912f-46df-8b5f-0278cc6a1c5a", + "last_modified": 1773176482032 + }, + { + "schema": 1772730082305, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcz", + "serialNumber": "BQIrjwl3Vp2CLLC0t01VVQ==", + "id": "aff9c1ef-c3a4-4bec-a095-a0b279c5bf28", + "last_modified": 1773176482030 + }, + { + "schema": 1772730084297, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MF0xCzAJBgNVBAYTAkpQMSUwIwYDVQQKExxTRUNPTSBUcnVzdCBTeXN0ZW1zIENPLixMVEQuMScwJQYDVQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTI=", + "serialNumber": "IrmxVPM8Xl4A", + "id": "e3dc6f6e-c52b-42eb-a471-c8f619ff5abc", + "last_modified": 1773176482027 + }, + { + "schema": 1772730084434, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcz", + "serialNumber": "CVC73isHuL+kTrA9gXTlqA==", + "id": "cde32e79-d7f8-4d47-893e-10fc2a6b937f", + "last_modified": 1773176482024 + }, + { + "schema": 1772730082495, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGIMQswCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28xITAfBgNVBAoMGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjExMC8GA1UEAwwoVHJ1c3R3YXZlIEdsb2JhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B7wLSv6C8BfbeWakWJpWCzmMoQ==", + "id": "d410d8bf-1ef7-482f-b9b7-4e3f2624513b", + "last_modified": 1773176482022 + }, + { + "schema": 1772730081848, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDM4NCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7Qh8cutTPgzaCEOnnNS/DA==", + "id": "9cf29ddd-d9e5-44c8-aac0-1d697e3f75e7", + "last_modified": 1773176482019 + }, + { + "schema": 1772730082045, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDM4NCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7PwLM3LzPhkGx78hhw6bOA==", + "id": "20027978-644e-4e59-a298-c77f1911910d", + "last_modified": 1773176482016 + }, + { + "schema": 1772730082241, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDI1NiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7QdaGAznKn40Rv6hc+HnSQ==", + "id": "5676b04e-a292-4580-b578-1579a88391e3", + "last_modified": 1773176482013 + }, + { + "schema": 1772668809487, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MEgxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdTZWN1cmVUcnVzdCBDb3Jwb3JhdGlvbjEXMBUGA1UEAxMOU2VjdXJlVHJ1c3QgQ0E=", + "serialNumber": "BvHsAOWOmt03LIcdJYQ/2rhS2Q==", + "id": "a04e78b9-e2c4-4ed3-9252-108866661ebe", + "last_modified": 1773176482010 + }, + { + "schema": 1772730082176, + "details": { + "bug": "https://bugzilla.mozilla.org/show_bug.cgi?id=2021383", + "who": "", + "why": "", + "name": "", + "created": "" + }, + "enabled": false, + "issuerName": "MIGIMQswCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28xITAfBgNVBAoMGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjExMC8GA1UEAwwoVHJ1c3R3YXZlIEdsb2JhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQ==", + "serialNumber": "B84Y7P7EGrNNMtTIcPGdoWOXsg==", + "id": "d6065aab-b2ef-461c-8fa2-403db738ebbd", + "last_modified": 1773176482007 + }, { "schema": 1764954051281, "details": { @@ -26234,5 +26894,5 @@ "last_modified": 1480349158647 } ], - "timestamp": 1765387587348 + "timestamp": 1773176482130 } diff --git a/icecat/sourcestamp.txt b/icecat/sourcestamp.txt index bc489092e2..e369d67f56 100644 --- a/icecat/sourcestamp.txt +++ b/icecat/sourcestamp.txt @@ -1,2 +1,2 @@ -20260217105505 -https://hg.mozilla.org/releases/mozilla-esr140/rev/b23aff4bbac16e44f2a9d3127c18616acfef6166 +20260317093326 +https://hg.mozilla.org/releases/mozilla-esr140/rev/ad4a5ceb5516151b4014e2af6c1565c68ab330cc diff --git a/icecat/taskcluster/gecko_taskgraph/transforms/mark_as_merged.py b/icecat/taskcluster/gecko_taskgraph/transforms/mark_as_merged.py index 2aee5c2c69..abc985ab7b 100644 --- a/icecat/taskcluster/gecko_taskgraph/transforms/mark_as_merged.py +++ b/icecat/taskcluster/gecko_taskgraph/transforms/mark_as_merged.py @@ -23,7 +23,7 @@ def make_task_description(config, jobs): job, "scopes", item_name=job["name"], - **{"release-level": release_level(config.params)}, + **{"release-level": release_level(config.params["project"])}, ) job["worker"]["merge-automation-id"] = merge_automation_id diff --git a/icecat/taskcluster/gecko_taskgraph/util/bugbug.py b/icecat/taskcluster/gecko_taskgraph/util/bugbug.py index bd9c2017d9..928857bbf2 100644 --- a/icecat/taskcluster/gecko_taskgraph/util/bugbug.py +++ b/icecat/taskcluster/gecko_taskgraph/util/bugbug.py @@ -19,7 +19,7 @@ try: except ImportError: from time import time as monotonic -BUGBUG_BASE_URL = "https://bugbug.herokuapp.com" +BUGBUG_BASE_URL = "https://bugbug.moz.tools" RETRY_TIMEOUT = 9 * 60 # seconds RETRY_INTERVAL = 10 # seconds diff --git a/icecat/taskcluster/kinds/fetch/toolchains.yml b/icecat/taskcluster/kinds/fetch/toolchains.yml index ce1277ef0d..ad2a52e2de 100644 --- a/icecat/taskcluster/kinds/fetch/toolchains.yml +++ b/icecat/taskcluster/kinds/fetch/toolchains.yml @@ -173,13 +173,13 @@ wix-3.14.0: sha256: 13f067f38969faf163d93a804b48ea0576790a202c8f10291f2000f0e356e934 size: 41282726 -zlib-1.3.1: - description: zlib 1.3.1 source code +zlib-1.3.2: + description: zlib 1.3.2 source code fetch: type: static-url - url: https://zlib.net/fossils/zlib-1.3.1.tar.gz - sha256: 9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23 - size: 1512791 + url: https://github.com/madler/zlib/releases/download/v1.3.2/zlib-1.3.2.tar.xz + sha256: d7a0654783a4da529d1bb793b7ad9c3318020af77667bcae35f95d0e42a792f3 + size: 1320064 nsis-3.07: description: nsis 3.07 source code diff --git a/icecat/taskcluster/kinds/mark-as-merged/kind.yml b/icecat/taskcluster/kinds/mark-as-merged/kind.yml index 0bbd1fd8e0..4345762c7c 100644 --- a/icecat/taskcluster/kinds/mark-as-merged/kind.yml +++ b/icecat/taskcluster/kinds/mark-as-merged/kind.yml @@ -13,7 +13,6 @@ kind-dependencies: - merge-automation task-defaults: - run-on-repo-type: [hg] description: mark merge automation as completed in shipit worker-type: shipit from-deps: diff --git a/icecat/taskcluster/kinds/toolchain/mingw.yml b/icecat/taskcluster/kinds/toolchain/mingw.yml index fea1c20763..c215028970 100644 --- a/icecat/taskcluster/kinds/toolchain/mingw.yml +++ b/icecat/taskcluster/kinds/toolchain/mingw.yml @@ -19,7 +19,7 @@ linux64-mingw32-nsis: fetches: fetch: - nsis-3.07 - - zlib-1.3.1 + - zlib-1.3.2 toolchain: - linux64-binutils - linux64-clang-mingw-x86 diff --git a/icecat/taskcluster/scripts/misc/build-mingw32-nsis.sh b/icecat/taskcluster/scripts/misc/build-mingw32-nsis.sh index 85b3bd61ce..738b699dc4 100755 --- a/icecat/taskcluster/scripts/misc/build-mingw32-nsis.sh +++ b/icecat/taskcluster/scripts/misc/build-mingw32-nsis.sh @@ -28,7 +28,7 @@ ln -s i686-w64-mingw32-clang++ $MOZ_FETCHES_DIR/clang/bin/i686-w64-mingw32-g++ # -------------- -cd zlib-1.3.1 +cd zlib-1.3.2 make -f win32/Makefile.gcc PREFIX=i686-w64-mingw32- cd ../nsis-3.07-src @@ -54,7 +54,7 @@ scons \ CC="clang --sysroot $MOZ_FETCHES_DIR/sysroot-x86_64-linux-gnu" \ CXX="clang++ --sysroot $MOZ_FETCHES_DIR/sysroot-x86_64-linux-gnu" \ XGCC_W32_PREFIX=i686-w64-mingw32- \ - ZLIB_W32=../zlib-1.3.1 \ + ZLIB_W32=../zlib-1.3.2 \ SKIPUTILS="NSIS Menu,Makensisw" \ PREFIX_DEST=$INSTALL_DIR/ \ PREFIX_BIN=bin \ diff --git a/icecat/testing/web-platform/meta/fetch/content-type/response.window.js.ini b/icecat/testing/web-platform/meta/fetch/content-type/response.window.js.ini index 08a51ab02a..9556f59f82 100644 --- a/icecat/testing/web-platform/meta/fetch/content-type/response.window.js.ini +++ b/icecat/testing/web-platform/meta/fetch/content-type/response.window.js.ini @@ -35,9 +35,6 @@ [fetch(): combined response Content-Type: text/html;x=" text/plain] expected: FAIL - [

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�%+HJ%$rV;~CC^*uL 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