diff --git a/.github/workflows/end-to-end.yml b/.github/workflows/end-to-end.yml index eefa4e6035..3576b629c8 100644 --- a/.github/workflows/end-to-end.yml +++ b/.github/workflows/end-to-end.yml @@ -6,10 +6,11 @@ on: workflow_dispatch: jobs: - end-to-end-tests: - name: End to end Tests + build-end-to-end-tests: + name: Build End to End Tests runs-on: macos-14-xlarge - + timeout-minutes: 30 + steps: - name: Check out the code uses: actions/checkout@v3 @@ -48,26 +49,59 @@ jobs: ONLY_ACTIVE_ARCH=NO \ | tee xcodebuild.log - - name: Install Maestro - run: | - export MAESTRO_VERSION=1.36.0; curl -Ls "https://get.maestro.mobile.dev" | bash + - name: Store Binary + uses: actions/upload-artifact@v4 + with: + name: duckduckgo-ios-app + path: DerivedData/Build/Products/Debug-iphonesimulator/DuckDuckGo.app + + - name: Upload logs when workflow failed + uses: actions/upload-artifact@v4 + if: failure() || cancelled() + with: + name: BuildLogs + path: | + xcodebuild.log + DerivedData/Logs/Test/*.xcresult + retention-days: 7 - - name: Release tests - run: | - export PATH="$PATH":"$HOME/.maestro/bin"; maestro cloud --apiKey ${{ secrets.MAESTRO_CLOUD_API_KEY }} -e ONBOARDING_COMPLETED=true --fail-on-timeout=true --fail-on-cancellation=true --timeout=150 --ios-version=17 --include-tags=release DerivedData/Build/Products/Debug-iphonesimulator/DuckDuckGo.app .maestro/ + end-to-end-tests: + name: End to end Tests + needs: build-end-to-end-tests + runs-on: macos-14-xlarge + timeout-minutes: 90 + strategy: + matrix: + test-tag: [release, privacy, securityTest, adClick] + max-parallel: 1 # Uncomment this line to run tests sequentially. + fail-fast: false - - name: Privacy tests - run: | - export PATH="$PATH":"$HOME/.maestro/bin"; maestro cloud --apiKey ${{ secrets.MAESTRO_CLOUD_API_KEY }} -e ONBOARDING_COMPLETED=true --fail-on-timeout=true --fail-on-cancellation=true --timeout=150 --ios-version=17 --include-tags=privacy DerivedData/Build/Products/Debug-iphonesimulator/DuckDuckGo.app .maestro/ + steps: + + - name: Check out the code + uses: actions/checkout@v3 # Don't need submodules here as this is only for the tests folder + + - name: Retrieve Binary + uses: actions/download-artifact@v4 + with: + name: duckduckgo-ios-app + path: DerivedData/Build/Products/Debug-iphonesimulator/DuckDuckGo.app - - name: Security tests + - name: Install Maestro run: | - export PATH="$PATH":"$HOME/.maestro/bin"; maestro cloud --apiKey ${{ secrets.MAESTRO_CLOUD_API_KEY }} -e ONBOARDING_COMPLETED=true --fail-on-timeout=true --fail-on-cancellation=true --timeout=150 --ios-version=17 --include-tags=securityTest DerivedData/Build/Products/Debug-iphonesimulator/DuckDuckGo.app .maestro/ + export MAESTRO_VERSION=1.36.0; curl -Ls "https://get.maestro.mobile.dev" | bash - - name: Ad Click Detection Flow tests + - name: End to End tests run: | - export PATH="$PATH":"$HOME/.maestro/bin"; maestro cloud --apiKey ${{ secrets.MAESTRO_CLOUD_API_KEY }} -e ONBOARDING_COMPLETED=true --fail-on-timeout=true --fail-on-cancellation=true --timeout=150 --ios-version=17 --include-tags=adClick DerivedData/Build/Products/Debug-iphonesimulator/DuckDuckGo.app .maestro/ + export PATH="$PATH":"$HOME/.maestro/bin"; maestro cloud --apiKey ${{ secrets.MAESTRO_CLOUD_API_KEY }} -e ONBOARDING_COMPLETED=true --fail-on-timeout=true --fail-on-cancellation=true --timeout=150 --ios-version=17 --include-tags=${{ matrix.test-tag }} DerivedData/Build/Products/Debug-iphonesimulator/DuckDuckGo.app .maestro/ + notify-failure: + name: Notify on failure + if: ${{ always() && contains(join(needs.*.result, ','), 'failure') && github.ref_name == 'main' }} + needs: [build-end-to-end-tests, end-to-end-tests] + runs-on: ubuntu-latest + + steps: - name: Create Asana task when workflow failed if: ${{ failure() }} run: | @@ -76,13 +110,3 @@ jobs: --header "Authorization: Bearer ${{ secrets.ASANA_ACCESS_TOKEN }}" \ --header "Content-Type: application/json" \ --data ' { "data": { "name": "GH Workflow Failure - End to end tests", "workspace": "${{ vars.GH_ASANA_WORKSPACE_ID }}", "projects": [ "${{ vars.GH_ASANA_IOS_APP_PROJECT_ID }}" ], "notes" : "The end to end workflow has failed. See https://github.com/duckduckgo/iOS/actions/runs/${{ github.run_id }}. For instructions on how to handle the failure(s), check https://app.asana.com/0/0/1206423571874502/f" } }' - - - name: Upload logs when workflow failed - uses: actions/upload-artifact@v4 - if: failure() || cancelled() - with: - name: BuildLogs - path: | - xcodebuild.log - DerivedData/Logs/Test/*.xcresult - retention-days: 7 diff --git a/.github/workflows/sync-end-to-end.yml b/.github/workflows/sync-end-to-end.yml index 9807bceb90..5f9fdb2b87 100644 --- a/.github/workflows/sync-end-to-end.yml +++ b/.github/workflows/sync-end-to-end.yml @@ -102,8 +102,8 @@ jobs: - name: Sync e2e tests run: | - export PATH="$PATH":"$HOME/.maestro/bin"; maestro cloud --apiKey ${{ secrets.MAESTRO_CLOUD_API_KEY }} --env=CODE=${{ steps.sync-recovery-code.outputs.recovery-code }} --fail-on-timeout=true --fail-on-cancellation=true --timeout=150 --ios-version=${{ matrix.os-version }} --include-tags=sync DerivedData/Build/Products/Debug-iphonesimulator/DuckDuckGo.app .maestro/ - + export PATH="$PATH":"$HOME/.maestro/bin"; maestro cloud --apiKey ${{ secrets.MAESTRO_CLOUD_API_KEY }} -e ONBOARDING_COMPLETED=true --env=CODE=${{ steps.sync-recovery-code.outputs.recovery-code }} --fail-on-timeout=true --fail-on-cancellation=true --timeout=150 --ios-version=${{ matrix.os-version }} --include-tags=sync DerivedData/Build/Products/Debug-iphonesimulator/DuckDuckGo.app .maestro/ + - name: Reset config run: | git checkout .maestro/config.yaml diff --git a/.maestro/data_clearing_tests/02_duckduckgo_settings.yml b/.maestro/data_clearing_tests/02_duckduckgo_settings.yml index 07c4c7d616..1675e186c6 100644 --- a/.maestro/data_clearing_tests/02_duckduckgo_settings.yml +++ b/.maestro/data_clearing_tests/02_duckduckgo_settings.yml @@ -17,7 +17,7 @@ tags: - pressKey: Enter # Change settings -- tapOn: "Safe search: moderate" +- tapOn: "Safe search" - tapOn: "Off" # Fire Button - twice, just to be sure diff --git a/.maestro/release_tests/password-autofill.yaml b/.maestro/release_tests/password-autofill.yaml index 8a9978b477..c82d84b318 100644 --- a/.maestro/release_tests/password-autofill.yaml +++ b/.maestro/release_tests/password-autofill.yaml @@ -45,12 +45,8 @@ tags: - tapOn: "Close" # Validate standard form -- runFlow: - file: ../shared/delay.yaml - assertVisible: id: "searchEntry" -- runFlow: - file: ../shared/delay.yaml - tapOn: id: "searchEntry" - runFlow: @@ -71,11 +67,7 @@ tags: # Validate multistep form - tapOn: id: "searchEntry" -- runFlow: - file: ../shared/delay.yaml - inputText: "https://privacy-test-pages.site/autofill/autoprompt/3-multistep-form.html" -- runFlow: - file: ../shared/delay.yaml - pressKey: Enter - runFlow: file: ../shared/delay.yaml diff --git a/Configuration/Version.xcconfig b/Configuration/Version.xcconfig index 151d413f2f..c1d1d8788d 100644 --- a/Configuration/Version.xcconfig +++ b/Configuration/Version.xcconfig @@ -1 +1 @@ -MARKETING_VERSION = 7.133.0 +MARKETING_VERSION = 7.135.0 diff --git a/Core/AppPrivacyConfigurationDataProvider.swift b/Core/AppPrivacyConfigurationDataProvider.swift index 98e70b0e80..c20c2ac0a4 100644 --- a/Core/AppPrivacyConfigurationDataProvider.swift +++ b/Core/AppPrivacyConfigurationDataProvider.swift @@ -23,8 +23,8 @@ import BrowserServicesKit final public class AppPrivacyConfigurationDataProvider: EmbeddedDataProvider { public struct Constants { - public static let embeddedDataETag = "\"c2739bfb56babbdfb6c1bfaf2446ab76\"" - public static let embeddedDataSHA = "76782f36ca36d0eb14bd73944ab76f5fa718af4e099f5e6e00edcec5a7ee4a04" + public static let embeddedDataETag = "\"3310d00f227a02b53a16ed4af90afee5\"" + public static let embeddedDataSHA = "7371e7fd3293e42638aa3bd3905a205e70827b2fd980848af108c82cedabf8be" } public var embeddedDataEtag: String { diff --git a/Core/AppTrackerDataSetProvider.swift b/Core/AppTrackerDataSetProvider.swift index 5f0e7e35ae..cc21065b0b 100644 --- a/Core/AppTrackerDataSetProvider.swift +++ b/Core/AppTrackerDataSetProvider.swift @@ -23,8 +23,8 @@ import BrowserServicesKit final public class AppTrackerDataSetProvider: EmbeddedDataProvider { public struct Constants { - public static let embeddedDataETag = "\"077374b1c16cef9527d8bf11f59374a8\"" - public static let embeddedDataSHA = "6a9794936a6f569cc7c442a3b03802e220a7b194d6ab07e0459feb456fba92a1" + public static let embeddedDataETag = "\"4f9b48a36688eee92064578bc1aebe0a\"" + public static let embeddedDataSHA = "ee51cab5fd4b82e6751a3d94680c89d4e248e0d456650b443f115998e1d3bec3" } public var embeddedDataEtag: String { diff --git a/Core/BookmarksImporter.swift b/Core/BookmarksImporter.swift index b2398fa173..4996146f3e 100644 --- a/Core/BookmarksImporter.swift +++ b/Core/BookmarksImporter.swift @@ -22,6 +22,7 @@ import Common import Foundation import Persistence import SwiftSoup +import os.log public enum BookmarksImportError: Error { case invalidHtmlNoDLTag @@ -94,7 +95,7 @@ final public class BookmarksImporter { if isDocumentInSafariFormat(document) { guard let newDocument = try transformSafariDocument(document: document) else { - os_log("Safari format could not be handled", type: .debug) + Logger.bookmarks.debug("Safari format could not be handled") throw BookmarksImportError.safariTransformFailure } try parse(documentElement: newDocument, importedBookmark: nil) @@ -208,7 +209,7 @@ final public class BookmarksImporter { do { try await coreDataStorage.importBookmarks(bookmarks) } catch { - os_log("Failed to save imported bookmarks to core data %s", type: .debug, error.localizedDescription) + Logger.bookmarks.error("Failed to save imported bookmarks to core data: \(error.localizedDescription, privacy: .public)") throw BookmarksImportError.saveFailure } } diff --git a/Core/ContentBlocking.swift b/Core/ContentBlocking.swift index 48f172831b..c407713296 100644 --- a/Core/ContentBlocking.swift +++ b/Core/ContentBlocking.swift @@ -69,8 +69,7 @@ public final class ContentBlocking { contentBlockingManager = ContentBlockerRulesManager(rulesSource: contentBlockerRulesSource, exceptionsSource: exceptionsSource, lastCompiledRulesStore: lastCompiledRulesStore, - errorReporting: Self.debugEvents, - log: .contentBlockingLog) + errorReporting: Self.debugEvents) adClickAttributionRulesProvider = AdClickAttributionRulesProvider(config: adClickAttribution, compiledRulesSource: contentBlockingManager, @@ -139,8 +138,7 @@ public final class ContentBlocking { AdClickAttributionDetection(feature: adClickAttribution, tld: tld, eventReporting: attributionEvents, - errorReporting: attributionDebugEvents, - log: .adAttributionLog) + errorReporting: attributionDebugEvents) } public func makeAdClickAttributionLogic(tld: TLD) -> AdClickAttributionLogic { @@ -148,8 +146,7 @@ public final class ContentBlocking { rulesProvider: adClickAttributionRulesProvider, tld: tld, eventReporting: attributionEvents, - errorReporting: attributionDebugEvents, - log: .adAttributionLog) + errorReporting: attributionDebugEvents) } private let attributionEvents = EventMapping { event, _, parameters, _ in diff --git a/Core/CookieStorage.swift b/Core/CookieStorage.swift index 0cfc79c970..aca9ce7975 100644 --- a/Core/CookieStorage.swift +++ b/Core/CookieStorage.swift @@ -19,6 +19,7 @@ import Common import Foundation +import os.log /// Class for persisting cookies for fire proofed sites to work around a WKWebView / DataStore bug which does not let data get persisted until the webview has loaded. /// @@ -56,7 +57,7 @@ public class CookieStorage { }) if let cookie = HTTPCookie(properties: properties) { - os_log("read cookie %s %s %s", log: .generalLog, type: .debug, cookie.domain, cookie.name, cookie.value) + Logger.general.debug("read cookie \(cookie.domain) \(cookie.name) \(cookie.value)") storedCookies.append(cookie) } } diff --git a/Core/DailyPixelFiring.swift b/Core/DailyPixelFiring.swift new file mode 100644 index 0000000000..51b065e6e9 --- /dev/null +++ b/Core/DailyPixelFiring.swift @@ -0,0 +1,37 @@ +// +// DailyPixelFiring.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation + +public protocol DailyPixelFiring { + static func fireDaily(_ pixel: Pixel.Event, + withAdditionalParameters params: [String: String]) + + static func fireDaily(_ pixel: Pixel.Event) +} + +extension DailyPixel: DailyPixelFiring { + public static func fireDaily(_ pixel: Pixel.Event, withAdditionalParameters params: [String: String]) { + fire(pixel: pixel, withAdditionalParameters: params) + } + + public static func fireDaily(_ pixel: Pixel.Event) { + fire(pixel: pixel) + } +} diff --git a/Core/DateExtension.swift b/Core/DateExtension.swift index 0c507f7899..8b937bfce5 100644 --- a/Core/DateExtension.swift +++ b/Core/DateExtension.swift @@ -28,4 +28,8 @@ extension Date { public func isLessThan48HoursAgo() -> Bool { self > Date().addingTimeInterval(-48 * 60 * 60) } + + public func isLessThan(daysAgo days: Int) -> Bool { + self > Date().addingTimeInterval(Double(-days) * 24 * 60 * 60) + } } diff --git a/Core/DebugUserScript.swift b/Core/DebugUserScript.swift index 1c7ee0ea47..118ee72186 100644 --- a/Core/DebugUserScript.swift +++ b/Core/DebugUserScript.swift @@ -20,6 +20,7 @@ import Common import WebKit import UserScript +import os.log public class DebugUserScript: NSObject, UserScript { @@ -56,7 +57,7 @@ public class DebugUserScript: NSObject, UserScript { } private func handleLog(message: WKScriptMessage) { - os_log("%s", log: .generalLog, type: .debug, String(describing: message.body)) + Logger.general.debug("\(String(describing: message.body))") } private func handleSignpost(message: WKScriptMessage) { diff --git a/Core/DefaultVariantManager.swift b/Core/DefaultVariantManager.swift index cd483bda3d..5ce128d6ec 100644 --- a/Core/DefaultVariantManager.swift +++ b/Core/DefaultVariantManager.swift @@ -21,6 +21,7 @@ import Common import Foundation import Speech import BrowserServicesKit +import os.log extension FeatureName { // Define your feature e.g.: @@ -127,17 +128,17 @@ public class DefaultVariantManager: VariantManager { public func assignVariantIfNeeded(_ newInstallCompletion: (VariantManager) -> Void) { guard !storage.hasInstallStatistics else { - os_log("no new variant needed for existing user", log: .generalLog, type: .debug) + Logger.general.debug("no new variant needed for existing user") return } if let variant = currentVariant { - os_log("already assigned variant: %s", log: .generalLog, type: .debug, String(describing: variant)) + Logger.general.debug("already assigned variant: \(String(describing: variant))") return } guard let variant = selectVariant() else { - os_log("Failed to assign variant", log: .generalLog, type: .debug) + Logger.general.debug("Failed to assign variant") // it's possible this failed because there are none to assign, we should still let new install logic execute _ = newInstallCompletion(self) diff --git a/Core/EtagStorage.swift b/Core/EtagStorage.swift index 3b02fe96e7..7e0cc1fd29 100644 --- a/Core/EtagStorage.swift +++ b/Core/EtagStorage.swift @@ -20,6 +20,7 @@ import Common import Foundation import Configuration +import os.log public protocol BlockerListETagStorage { @@ -36,7 +37,7 @@ public struct UserDefaultsETagStorage: BlockerListETagStorage { public func loadEtag(for configuration: Configuration) -> String? { let etag = defaults?.string(forKey: configuration.storeKey) - os_log("stored etag for %s %s", log: .generalLog, type: .debug, configuration.storeKey, etag ?? "nil") + Logger.general.debug("Stored etag for \(configuration.storeKey) \(etag ?? "nil")") return etag } diff --git a/Core/HistoryManager.swift b/Core/HistoryManager.swift index 1923612682..272bee87dd 100644 --- a/Core/HistoryManager.swift +++ b/Core/HistoryManager.swift @@ -23,6 +23,7 @@ import BrowserServicesKit import History import Common import Persistence +import os.log public protocol HistoryManaging { @@ -152,7 +153,7 @@ public class HistoryDatabase { public static var defaultDBLocation: URL = { guard let url = FileManager.default.urls(for: .applicationSupportDirectory, in: .userDomainMask).first else { - os_log("HistoryDatabase.make - OUT, failed to get application support directory") + Logger.general.fault("HistoryDatabase.make - OUT, failed to get application support directory") fatalError("Failed to get location") } return url @@ -163,10 +164,10 @@ public class HistoryDatabase { }() public static func make(location: URL = defaultDBLocation, readOnly: Bool = false) -> CoreDataDatabase { - os_log("HistoryDatabase.make - IN - %s", location.absoluteString) + Logger.general.debug("HistoryDatabase.make - IN - \(location.absoluteString)") let bundle = History.bundle guard let model = CoreDataDatabase.loadModel(from: bundle, named: "BrowsingHistory") else { - os_log("HistoryDatabase.make - OUT, failed to loadModel") + Logger.general.debug("HistoryDatabase.make - OUT, failed to loadModel") fatalError("Failed to load model") } @@ -174,7 +175,7 @@ public class HistoryDatabase { containerLocation: location, model: model, readOnly: readOnly) - os_log("HistoryDatabase.make - OUT") + Logger.general.debug("HistoryDatabase.make - OUT") return db } } diff --git a/Core/Logger+Multiple.swift b/Core/Logger+Multiple.swift new file mode 100644 index 0000000000..937ee2c8f8 --- /dev/null +++ b/Core/Logger+Multiple.swift @@ -0,0 +1,28 @@ +// +// Logger+Multiple.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation +import os.log + +public extension Logger { + static var adAttribution = { Logger(subsystem: "AD Attribution", category: "") }() + static var lifecycle = { Logger(subsystem: "Lifecycle", category: "") }() + static var configuration = { Logger(subsystem: "Configuration", category: "") }() + static var duckPlayer = { Logger(subsystem: "DuckPlayer", category: "") }() +} diff --git a/Core/Logging.swift b/Core/Logging.swift deleted file mode 100644 index 9be20c9153..0000000000 --- a/Core/Logging.swift +++ /dev/null @@ -1,75 +0,0 @@ -// -// Logging.swift -// DuckDuckGo -// -// Copyright © 2017 DuckDuckGo. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -import Foundation -import BrowserServicesKit -import Common - -public extension OSLog { - - enum AppCategories: String, CaseIterable { - case generalLog = "DDG General" - case contentBlockingLog = "DDG Content Blocking" - case adAttributionLog = "DDG AdAttribution" - case lifecycleLog = "DDG Lifecycle" - case autoconsentLog = "DDG Autoconsent" - case configurationLog = "DDG Configuration" - case syncLog = "DDG Sync" - case duckPlayerLog = "Duck Player" - } - - @OSLogWrapper(.generalLog) static var generalLog - @OSLogWrapper(.contentBlockingLog) static var contentBlockingLog - @OSLogWrapper(.adAttributionLog) static var adAttributionLog - @OSLogWrapper(.lifecycleLog) static var lifecycleLog - @OSLogWrapper(.autoconsentLog) static var autoconsentLog - @OSLogWrapper(.configurationLog) static var configurationLog - @OSLogWrapper(.syncLog) static var syncLog - @OSLogWrapper(.duckPlayerLog) static var duckPlayerLog - - // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - // To activate Logging Categories add categories here: -#if DEBUG - static var enabledCategories: Set = [ - .generalLog, - .contentBlockingLog, - .adAttributionLog, - .lifecycleLog, - .configurationLog, - .syncLog, - .duckPlayerLog - ] -#endif - -} - -public extension OSLog.OSLogWrapper { - - private static let enableLoggingCategoriesOnce: Void = { -#if DEBUG - OSLog.enabledLoggingCategories = Set(OSLog.enabledCategories.map(\.rawValue)) -#endif - }() - - init(_ category: OSLog.AppCategories) { - _=Self.enableLoggingCategoriesOnce - self.init(rawValue: category.rawValue) - } - -} diff --git a/Core/Pixel.swift b/Core/Pixel.swift index c2ee1ee14c..9b50dae725 100644 --- a/Core/Pixel.swift +++ b/Core/Pixel.swift @@ -21,6 +21,7 @@ import Foundation import BrowserServicesKit import Common import Networking +import os.log public struct PixelParameters { public static let url = "url" @@ -83,6 +84,7 @@ public struct PixelParameters { public static let tabControllerCacheCount = "tab_controller_cache_count" public static let count = "count" + public static let source = "source" public static let textSizeInitial = "text_size_initial" public static let textSizeUpdated = "text_size_updated" @@ -146,6 +148,10 @@ public struct PixelParameters { // Privacy Dashboard public static let daysSinceInstall = "daysSinceInstall" public static let fromOnboarding = "from_onboarding" + + // Subscription + public static let privacyProKeychainAccessType = "access_type" + public static let privacyProKeychainError = "error" } public struct PixelValues { @@ -223,9 +229,7 @@ public class Pixel { } guard !isDryRun else { - os_log(.debug, log: .generalLog, "Pixel fired %{public}@ %{public}@", - pixelName.replacingOccurrences(of: "_", with: "."), - params.count > 0 ? "\(params)" : "") + Logger.general.debug("Pixel fired \(pixelName.replacingOccurrences(of: "_", with: "."), privacy: .public) \(params.count > 0 ? "\(params)" : "", privacy: .public)") // simulate server response time for Dry Run mode DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) { onComplete(nil) @@ -256,7 +260,7 @@ public class Pixel { headers: headers) let request = APIRequest(configuration: configuration, urlSession: .session(useMainThreadCallbackQueue: true)) request.fetch { _, error in - os_log("Pixel fired %{public}s %{public}s", log: .generalLog, type: .debug, pixelName, "\(params)") + Logger.general.debug("Pixel fired \(pixelName, privacy: .public) \(params, privacy: .public)") onComplete(error) } } diff --git a/Core/PixelEvent.swift b/Core/PixelEvent.swift index f5e289baa7..96368efcce 100644 --- a/Core/PixelEvent.swift +++ b/Core/PixelEvent.swift @@ -687,6 +687,7 @@ extension Pixel { case privacyProSubscriptionManagementRemoval case privacyProTransactionProgressNotHiddenAfter60s case privacyProSuccessfulSubscriptionAttribution + case privacyProKeychainAccessError // MARK: Pixel Experiment case pixelExperimentEnrollment @@ -739,6 +740,27 @@ extension Pixel { case bookmarkLaunchedDaily case newTabPageDisplayedDaily + // MARK: New Tab Page + case newTabPageMessageDisplayed + case newTabPageMessageDismissed + + case newTabPageFavoritesPlaceholderTapped + case newTabPageFavoritesInfoTooltip + + case newTabPageFavoritesSeeMore + case newTabPageFavoritesSeeLess + + case newTabPageCustomize + + case newTabPageShortcutClicked(_ shortcutName: String) + + case newTabPageCustomizeSectionOff(_ sectionName: String) + case newTabPageCustomizeSectionOn(_ sectionName: String) + case newTabPageSectionReordered + + case newTabPageCustomizeShortcutRemoved(_ shortcutName: String) + case newTabPageCustomizeShortcutAdded(_ shortcutName: String) + // MARK: DuckPlayer case duckPlayerDailyUniqueView case duckPlayerViewFromYoutubeViaMainOverlay @@ -757,6 +779,17 @@ extension Pixel { case duckPlayerSettingNeverOverlayYoutube case duckPlayerContingencySettingsDisplayed case duckPlayerContingencyLearnMoreClicked + + // MARK: Unified Feedback Form + case pproFeedbackFeatureRequest(description: String, source: String) + case pproFeedbackGeneralFeedback(description: String, source: String) + case pproFeedbackReportIssue(source: String, category: String, subcategory: String, description: String, metadata: String) + case pproFeedbackFormShow + case pproFeedbackActionsScreenShow(source: String) + case pproFeedbackCategoryScreenShow(source: String, reportType: String) + case pproFeedbackSubcategoryScreenShow(source: String, reportType: String, category: String) + case pproFeedbackSubmitScreenShow(source: String, reportType: String, category: String, subcategory: String) + case pproFeedbackSubmitScreenFAQClick(source: String, reportType: String, category: String, subcategory: String) } } @@ -1426,6 +1459,7 @@ extension Pixel.Event { case .privacyProSubscriptionManagementRemoval: return "m_privacy-pro_settings_remove-from-device_click" case .privacyProTransactionProgressNotHiddenAfter60s: return "m_privacy-pro_progress_not_hidden_after_60s" case .privacyProSuccessfulSubscriptionAttribution: return "m_subscribe" + case .privacyProKeychainAccessError: return "m_privacy-pro_keychain_access_error" // MARK: Pixel Experiment case .pixelExperimentEnrollment: return "pixel_experiment_enrollment" @@ -1483,7 +1517,33 @@ extension Pixel.Event { case .favoriteLaunchedNTPDaily: return "m_favorite_launched_ntp_daily" case .bookmarkLaunchedDaily: return "m_bookmark_launched_daily" case .newTabPageDisplayedDaily: return "m_new_tab_page_displayed_daily" - + + // MARK: New Tab Page + case .newTabPageMessageDisplayed: return "m_new_tab_page_message_displayed" + case .newTabPageMessageDismissed: return "m_new_tab_page_message_dismissed" + + case .newTabPageFavoritesPlaceholderTapped: return "m_new_tab_page_favorites_placeholder_click" + case .newTabPageFavoritesInfoTooltip: return "m_new_tab_page_favorites_info_tooltip" + + case .newTabPageFavoritesSeeMore: return "m_new_tab_page_favorites_see_more" + case .newTabPageFavoritesSeeLess: return "m_new_tab_page_favorites_see_less" + + case .newTabPageShortcutClicked(let name): + return "m_new_tab_page_shortcut_clicked_\(name)" + + case .newTabPageCustomize: return "m_new_tab_page_customize" + + case .newTabPageCustomizeSectionOff(let sectionName): + return "m_new_tab_page_customize_section_off_\(sectionName)" + case .newTabPageCustomizeSectionOn(let sectionName): + return "m_new_tab_page_customize_section_on_\(sectionName)" + case .newTabPageSectionReordered: return "m_new_tab_page_customize_section_reordered" + + case .newTabPageCustomizeShortcutRemoved(let shortcutName): + return "m_new_tab_page_customize_shortcut_removed_\(shortcutName)" + case .newTabPageCustomizeShortcutAdded(let shortcutName): + return "m_new_tab_page_customize_shortcut_added_\(shortcutName)" + // MARK: DuckPlayer case .duckPlayerDailyUniqueView: return "duckplayer_daily-unique-view" case .duckPlayerViewFromYoutubeViaMainOverlay: return "duckplayer_view-from_youtube_main-overlay" @@ -1502,6 +1562,17 @@ extension Pixel.Event { case .duckPlayerSettingNeverOverlayYoutube: return "duckplayer_setting_never_overlay_youtube" case .duckPlayerContingencySettingsDisplayed: return "duckplayer_ios_contingency_settings-displayed" case .duckPlayerContingencyLearnMoreClicked: return "duckplayer_ios_contingency_learn-more-clicked" + + // MARK: Unified Feedback Form + case .pproFeedbackFeatureRequest: return "m_ppro_feedback_feature-request" + case .pproFeedbackGeneralFeedback: return "m_ppro_feedback_general-feedback" + case .pproFeedbackReportIssue: return "m_ppro_feedback_report-issue" + case .pproFeedbackFormShow: return "m_ppro_feedback_general-screen_show" + case .pproFeedbackActionsScreenShow: return "m_ppro_feedback_actions-screen_show" + case .pproFeedbackCategoryScreenShow: return "m_ppro_feedback_category-screen_show" + case .pproFeedbackSubcategoryScreenShow: return "m_ppro_feedback_subcategory-screen_show" + case .pproFeedbackSubmitScreenShow: return "m_ppro_feedback_submit-screen_show" + case .pproFeedbackSubmitScreenFAQClick: return "m_ppro_feedback_submit-screen-faq_click" } } } diff --git a/Core/PrivacyFeatures.swift b/Core/PrivacyFeatures.swift index 422484ce5b..a4a7abd883 100644 --- a/Core/PrivacyFeatures.swift +++ b/Core/PrivacyFeatures.swift @@ -19,6 +19,7 @@ import BrowserServicesKit import Common +import os.log public final class PrivacyFeatures { @@ -54,9 +55,11 @@ public final class PrivacyFeatures { AppHTTPSUpgradeStore(database: Database.shared, bloomFilterDataURL: bloomFilterDataURL, embeddedResources: embeddedBloomFilterResources, - errorEvents: httpsUpgradeDebugEvents) + errorEvents: httpsUpgradeDebugEvents, + logger: Logger.general) } - public static let httpsUpgrade = HTTPSUpgrade(store: httpsUpgradeStore, privacyManager: ContentBlocking.shared.privacyConfigurationManager) + public static let httpsUpgrade = HTTPSUpgrade(store: httpsUpgradeStore, privacyManager: ContentBlocking.shared.privacyConfigurationManager, + logger: Logger.general) } diff --git a/Core/StatisticsLoader.swift b/Core/StatisticsLoader.swift index 60b5fe14dc..7d718b11ed 100644 --- a/Core/StatisticsLoader.swift +++ b/Core/StatisticsLoader.swift @@ -21,6 +21,7 @@ import Common import Foundation import BrowserServicesKit import Networking +import os.log public class StatisticsLoader { @@ -52,7 +53,7 @@ public class StatisticsLoader { request.fetch { response, error in if let error = error { - os_log("Initial atb request failed with error %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Initial atb request failed with error: \(error.localizedDescription, privacy: .public)") completion() return } @@ -74,7 +75,7 @@ public class StatisticsLoader { request.fetch { _, error in if let error = error { - os_log("Exti request failed with error %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Exit request failed with error: \(error.localizedDescription, privacy: .public)") completion() return } @@ -96,7 +97,7 @@ public class StatisticsLoader { request.fetch { response, error in if let error = error { - os_log("Search atb request failed with error %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Search atb request failed with error: \(error.localizedDescription, privacy: .public)") completion() return } @@ -121,7 +122,7 @@ public class StatisticsLoader { request.fetch { response, error in if let error = error { - os_log("App atb request failed with error %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("App atb request failed with error: \(error.localizedDescription, privacy: .public)") completion() return } diff --git a/Core/SyncBookmarksAdapter.swift b/Core/SyncBookmarksAdapter.swift index af82db7be1..a50d7315c8 100644 --- a/Core/SyncBookmarksAdapter.swift +++ b/Core/SyncBookmarksAdapter.swift @@ -25,6 +25,7 @@ import Foundation import Persistence import SyncDataProviders import WidgetKit +import os.log public protocol FavoritesDisplayModeStoring: AnyObject { var favoritesDisplayMode: FavoritesDisplayMode { get set } @@ -94,8 +95,7 @@ public final class SyncBookmarksAdapter { syncDidCompletePublisher = syncDidCompleteSubject.eraseToAnyPublisher() databaseCleaner = BookmarkDatabaseCleaner( bookmarkDatabase: database, - errorEvents: BookmarksCleanupErrorHandling(), - log: .generalLog + errorEvents: BookmarksCleanupErrorHandling() ) widgetRefreshCancellable = syncDidCompletePublisher.sink { _ in WidgetCenter.shared.reloadAllTimelines() @@ -164,7 +164,7 @@ public final class SyncBookmarksAdapter { stateStore = try BookmarksFaviconsFetcherStateStore(applicationSupportURL: url) } catch { Pixel.fire(pixel: .bookmarksFaviconsFetcherStateStoreInitializationFailed, error: error) - os_log(.error, log: .syncLog, "Failed to initialize BookmarksFaviconsFetcherStateStore: %{public}s", String(reflecting: error)) + Logger.sync.error("Failed to initialize BookmarksFaviconsFetcherStateStore:: \(error.localizedDescription, privacy: .public)") return nil } @@ -173,8 +173,7 @@ public final class SyncBookmarksAdapter { stateStore: stateStore, fetcher: FaviconFetcher(), faviconStore: Favicons.shared, - errorEvents: BookmarksFaviconsFetcherErrorHandler(), - log: .syncLog + errorEvents: BookmarksFaviconsFetcherErrorHandler() ) } @@ -190,11 +189,11 @@ public final class SyncBookmarksAdapter { return } if faviconsFetcher.isFetchingInProgress == true { - os_log(.debug, log: .syncLog, "Favicons Fetching is in progress. Starting background task to allow it to gracefully complete.") + Logger.sync.debug("Favicons Fetching is in progress. Starting background task to allow it to gracefully complete.") var taskID: UIBackgroundTaskIdentifier! taskID = application.beginBackgroundTask(withName: "Cancelled Favicons Fetching Completion Task") { - os_log(.debug, log: .syncLog, "Forcing background task completion") + Logger.sync.debug("Forcing background task completion") application.endBackgroundTask(taskID) } faviconsFetchingDidFinishCancellable?.cancel() @@ -202,7 +201,7 @@ public final class SyncBookmarksAdapter { .prefix(1) .receive(on: DispatchQueue.main) .sink { _ in - os_log(.debug, log: .syncLog, "Ending background task") + Logger.sync.debug("Ending background task") application.endBackgroundTask(taskID) } } diff --git a/Core/SyncCredentialsAdapter.swift b/Core/SyncCredentialsAdapter.swift index 39443a1296..7fa4b8c509 100644 --- a/Core/SyncCredentialsAdapter.swift +++ b/Core/SyncCredentialsAdapter.swift @@ -43,8 +43,7 @@ public final class SyncCredentialsAdapter { databaseCleaner = CredentialsDatabaseCleaner( secureVaultFactory: secureVaultFactory, secureVaultErrorReporter: secureVaultErrorReporter, - errorEvents: CredentialsCleanupErrorHandling(), - log: .generalLog + errorEvents: CredentialsCleanupErrorHandling() ) } diff --git a/Core/SyncErrorHandler.swift b/Core/SyncErrorHandler.swift index ec929c8fbd..3c29fb3a99 100644 --- a/Core/SyncErrorHandler.swift +++ b/Core/SyncErrorHandler.swift @@ -24,6 +24,7 @@ import Persistence import Foundation import SyncUI import SyncDataProviders +import os.log public enum AsyncErrorType: String { case bookmarksCountLimitExceeded @@ -176,7 +177,7 @@ extension SyncErrorHandler { } } let modelTypeString = modelType.rawValue.capitalized - os_log(.error, log: OSLog.syncLog, "%{public}@ Sync error: %{public}s", modelTypeString, String(reflecting: error)) + Logger.sync.error("\(modelTypeString, privacy: .public) Sync error: \(error.localizedDescription, privacy: .public)") } private func handleSyncError(_ syncError: SyncError, modelType: ModelType) { diff --git a/Core/SyncMetadataDatabase.swift b/Core/SyncMetadataDatabase.swift index a714176eab..afb105d753 100644 --- a/Core/SyncMetadataDatabase.swift +++ b/Core/SyncMetadataDatabase.swift @@ -22,6 +22,7 @@ import CoreData import DDGSync import Persistence import Common +import os.log public final class SyncMetadataDatabase { @@ -29,17 +30,17 @@ public final class SyncMetadataDatabase { public static var defaultDBLocation: URL = { guard let url = FileManager.default.urls(for: .applicationSupportDirectory, in: .userDomainMask).first else { - os_log("SyncMetadataDatabase.make - OUT, failed to get location") + Logger.sync.fault("SyncMetadataDatabase.make - OUT, failed to get location") fatalError("Failed to get location") } return url }() public static func make(location: URL = defaultDBLocation, readOnly: Bool = false) -> CoreDataDatabase { - os_log("SyncMetadataDatabase.make - IN - %s", location.absoluteString) + Logger.sync.debug("SyncMetadataDatabase.make - IN - \(location.absoluteString)") let bundle = DDGSync.bundle guard let model = CoreDataDatabase.loadModel(from: bundle, named: "SyncMetadata") else { - os_log("SyncMetadataDatabase.make - OUT, failed to loadModel") + Logger.sync.fault("SyncMetadataDatabase.make - OUT, failed to loadModel") fatalError("Failed to load model") } @@ -47,7 +48,7 @@ public final class SyncMetadataDatabase { containerLocation: location, model: model, readOnly: readOnly) - os_log("SyncMetadataDatabase.make - OUT") + Logger.sync.debug("SyncMetadataDatabase.make - OUT") return db } diff --git a/Core/TabInstrumentation.swift b/Core/TabInstrumentation.swift index 039623cb46..af156a4dc2 100644 --- a/Core/TabInstrumentation.swift +++ b/Core/TabInstrumentation.swift @@ -92,10 +92,7 @@ public class TabInstrumentation { // 0 is treated as 1ms let timeInNS: UInt64 = timeInMs.asNanos - - os_log(.debug, - log: type(of: self).tabsLog, - "[%@] Request: %@ - %@ - %@ (%@) in %llu", currentURL, url, requestType, status, reason, timeInNS) + Logger.general.debug("[\(currentURL)] Request: \(url) - \(requestType) - \(status) (\(reason)) in \(timeInNS)") } } @@ -104,10 +101,7 @@ public class TabInstrumentation { let currentURL = self.currentURL ?? "unknown" // 0 is treated as 1ms let timeInNS: UInt64 = timeInMs.asNanos - - os_log(.debug, - log: type(of: self).tabsLog, - "[%@] JSEvent: %@ executedIn: %llu", currentURL, name, timeInNS) + Logger.general.debug("[\(currentURL)] JSEvent: \(name) executedIn: \(timeInNS)") } } } diff --git a/Core/URLExtension.swift b/Core/URLExtension.swift index 573083a45f..f4d6fdf159 100644 --- a/Core/URLExtension.swift +++ b/Core/URLExtension.swift @@ -23,10 +23,6 @@ import BrowserServicesKit import Network import Common -public extension URL.NavigationalScheme { - static let duck = URL.NavigationalScheme(rawValue: "duck") -} - extension URL { enum Host: String { diff --git a/Core/UserDefaultsPropertyWrapper.swift b/Core/UserDefaultsPropertyWrapper.swift index cf48ae723a..5f4b8f1053 100644 --- a/Core/UserDefaultsPropertyWrapper.swift +++ b/Core/UserDefaultsPropertyWrapper.swift @@ -144,7 +144,8 @@ public struct UserDefaultsWrapper { case didRefreshTimestamp = "com.duckduckgo.ios.userBehavior.didRefreshTimestamp" case didDoubleRefreshTimestamp = "com.duckduckgo.ios.userBehavior.didDoubleRefreshTimestamp" case didRefreshCounter = "com.duckduckgo.ios.userBehavior.didRefreshCounter" - case userDidInteractWithBrokenSitePrompt = "com.duckduckgo.ios.userBehavior.userDidInteractWithBrokenSitePrompt" + case lastBrokenSiteToastShownDate = "com.duckduckgo.ios.userBehavior.lastBrokenSiteToastShownDate" + case toastDismissStreakCounter = "com.duckduckgo.ios.userBehavior.toastDismissStreakCounter" case pixelExperimentInstalled = "com.duckduckgo.ios.pixel.experiment.installed" case pixelExperimentCohort = "com.duckduckgo.ios.pixel.experiment.cohort" diff --git a/Core/WebCacheManager.swift b/Core/WebCacheManager.swift index a93c079020..356eac3c0d 100644 --- a/Core/WebCacheManager.swift +++ b/Core/WebCacheManager.swift @@ -20,6 +20,7 @@ import Common import WebKit import GRDB +import os.log extension WKWebsiteDataStore { @@ -161,7 +162,7 @@ extension WebCacheManager { if let pool = getValidDatabasePool() { removeObservationsData(from: pool) } else { - os_log("Could not find valid pool to clear observations data", log: .generalLog, type: .debug) + Logger.general.debug("Could not find valid pool to clear observations data") } } diff --git a/Core/ios-config.json b/Core/ios-config.json index 8e8f28ff67..7b80be3b74 100644 --- a/Core/ios-config.json +++ b/Core/ios-config.json @@ -1,6 +1,6 @@ { "readme": "https://github.com/duckduckgo/privacy-configuration", - "version": 1722878378366, + "version": 1724668148700, "features": { "adClickAttribution": { "readme": "https://help.duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/#3rd-party-tracker-loading-protection", @@ -83,6 +83,12 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } @@ -111,7 +117,7 @@ ] }, "state": "enabled", - "hash": "4efd0ce3e46f0b52aa919a6f80edcd00" + "hash": "f480c22abb392f288fbf2caf186ce082" }, "androidBrowserConfig": { "exceptions": [], @@ -143,6 +149,9 @@ { "domain": "eleconomista.es" }, + { + "domain": "eurostar.com" + }, { "domain": "ksta.de" }, @@ -332,6 +341,9 @@ { "domain": "newsforkids.net" }, + { + "domain": "dkb.de" + }, { "domain": "marvel.com" }, @@ -341,6 +353,12 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instagram.com" }, @@ -376,7 +394,7 @@ } } }, - "hash": "08df6c3e54da19c0005e0a281e6b9aa5" + "hash": "6ed8b1964ecfe94246ad3191db03b2ea" }, "autofillBreakageReporter": { "state": "enabled", @@ -444,6 +462,40 @@ }, "hash": "2408c5de35db50491d915a9c8f3c8388" }, + "breakageReporting": { + "state": "disabled", + "exceptions": [ + { + "domain": "marvel.com" + }, + { + "domain": "sundancecatalog.com" + }, + { + "domain": "noaprints.com" + }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, + { + "domain": "instructure.com" + } + ], + "hash": "1cc5be3534e326e74083566308e726f4" + }, + "brokenSitePrompt": { + "state": "enabled", + "exceptions": [], + "settings": { + "maxDismissStreak": 3, + "dismissStreakResetDays": 30, + "coolDownDays": 7 + }, + "hash": "7ff56afca8279353caaa7da24ab31e28" + }, "brokenSiteReportExperiment": { "exceptions": [], "state": "enabled", @@ -1126,6 +1178,12 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } @@ -1145,7 +1203,7 @@ } }, "state": "disabled", - "hash": "3bce6ceb48b813d3e3984394bf620b32" + "hash": "7ada7fa991eb882cb8af0e25dcfad795" }, "clickToPlay": { "exceptions": [ @@ -1158,6 +1216,12 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } @@ -1172,7 +1236,7 @@ } }, "state": "disabled", - "hash": "e1fb68a1bb559c709cf7fff97820654f" + "hash": "341206546d27661e0fbd9221e877c628" }, "clientBrandHint": { "exceptions": [], @@ -1212,11 +1276,17 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], - "hash": "42da678c1cc61b0d52986f536e05f416" + "hash": "51628b06bd28538540ce9e5262e42070" }, "cookie": { "settings": { @@ -1276,12 +1346,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "d23565fe73c051c53bff8a40396f705d" + "hash": "518de3f4cdd6f78e664c00ea2ec349cb" }, "customUserAgent": { "settings": { @@ -1334,10 +1410,13 @@ }, "waitlistBetaActive": { "state": "disabled" + }, + "freemium": { + "state": "disabled" } }, "exceptions": [], - "hash": "ba52a36920a4a76343fc3c44d98936f9" + "hash": "113933668f41d71c56316e5debf1fb5b" }, "duckPlayer": { "exceptions": [], @@ -1354,6 +1433,17 @@ }, "settings": { "tryDuckPlayerLink": "https://www.youtube.com/watch?v=yKWIA-Pys4c", + "duckPlayerDisabledHelpPageLink": null, + "youtubePath": "watch", + "youtubeEmbedUrl": "youtube-nocookie.com", + "youTubeUrl": "youtube.com", + "youTubeReferrerHeaders": [ + "Referer" + ], + "youTubeReferrerQueryParams": [ + "embeds_referring_euri" + ], + "youTubeVideoIDQueryParam": "v", "overlays": { "youtube": { "state": "disabled", @@ -1416,7 +1506,7 @@ ] }, "state": "disabled", - "hash": "454c014ddd259aaae2b8c30e51ddfbbc" + "hash": "9ae5b4d92ce6ba8a8c233a5c9aab93a6" }, "elementHiding": { "exceptions": [ @@ -1432,6 +1522,12 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } @@ -2999,6 +3095,22 @@ { "selector": "div:has(> iframe[src*='prid=19031496'])", "type": "hide" + }, + { + "selector": "div:has(> iframe[src*='prid=19043282'])", + "type": "hide" + }, + { + "selector": "div:has(> iframe[src*='prid=19043280'])", + "type": "hide" + }, + { + "selector": "div:has(> iframe[src*='prid=19031780'])", + "type": "hide" + }, + { + "selector": "[aria-labelledby='promo-header']", + "type": "hide" } ] }, @@ -4009,6 +4121,15 @@ } ] }, + { + "domain": "signupgenius.com", + "rules": [ + { + "selector": ".mktg", + "type": "hide" + } + ] + }, { "domain": "skysports.com", "rules": [ @@ -4676,7 +4797,7 @@ ] }, "state": "enabled", - "hash": "0f1079be6e20f32fa57b93891a52e6c8" + "hash": "0113a5d0bef9f1c96fa55eeb45a74521" }, "exceptionHandler": { "exceptions": [ @@ -4689,12 +4810,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "139d551fb343ef36567a2d35e7c4457a" + "hash": "4818e6983b16ddfdd078a2565bc69859" }, "extendedOnboarding": { "exceptions": [], @@ -4716,11 +4843,17 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], - "hash": "a05e98b812061f4362468b51c4951937" + "hash": "429a0ad38c859268f48d96c4c46864c6" }, "fingerprintingBattery": { "exceptions": [ @@ -4736,12 +4869,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "enabled", - "hash": "dd063c6747891b8c02fb75ddd7a7311c" + "hash": "90b6dc456856fdf817cb7432955cd5c6" }, "fingerprintingCanvas": { "settings": { @@ -4841,12 +4980,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "5a29a3dee399844c40b4b759b5fc524c" + "hash": "69e97b215250895325a279ae6203e6fe" }, "fingerprintingHardware": { "settings": { @@ -4904,12 +5049,21 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, + { + "domain": "target.com" + }, { "domain": "instructure.com" } ], "state": "enabled", - "hash": "2ad6d3cad9d44b1a3c6377f7fcb01311" + "hash": "cf1530a8c5c582d22af16b84bc7f7ced" }, "fingerprintingScreenSize": { "settings": { @@ -4958,12 +5112,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "enabled", - "hash": "6b21acb8f85cd519b39aba33b7c79487" + "hash": "5c2980807a1f9023ce99182ed38b0642" }, "fingerprintingTemporaryStorage": { "exceptions": [ @@ -4985,12 +5145,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "enabled", - "hash": "4b23979713e44735003fd2d3bc85d7ca" + "hash": "8630cb28f77d9598f61a908c5aa3f1ed" }, "googleRejected": { "exceptions": [ @@ -5003,12 +5169,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "139d551fb343ef36567a2d35e7c4457a" + "hash": "4818e6983b16ddfdd078a2565bc69859" }, "gpc": { "state": "enabled", @@ -5058,6 +5230,9 @@ { "domain": "npr.org" }, + { + "domain": "norton.com" + }, { "domain": "marvel.com" }, @@ -5067,6 +5242,12 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "oreillyauto.com" }, @@ -5083,7 +5264,7 @@ "privacy-test-pages.site" ] }, - "hash": "0a12141d483df3bea0e0fca5ccdc0159" + "hash": "9a262bdeaa03e8f693963d73d1b4028b" }, "harmfulApis": { "settings": { @@ -5194,12 +5375,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "d12818afbee58693fc60fd0be7cc90db" + "hash": "8cb27af67989404f1651e164f90b7940" }, "history": { "state": "enabled", @@ -5245,11 +5432,17 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], - "hash": "fd20e89d32343cf42c4b7f5101d5b900" + "hash": "8e60b4c39599560b0bea1030299fb3a7" }, "incontextSignup": { "exceptions": [], @@ -5293,6 +5486,12 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } @@ -5305,7 +5504,7 @@ ] }, "state": "enabled", - "hash": "68732c967df2ff5beb2d851378395cfd" + "hash": "4877b3fce635ba78a673e87943f53091" }, "networkProtection": { "state": "enabled", @@ -5339,12 +5538,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "4977063ee77c043c5ad51e3daeb188ca" + "hash": "596714c5b23bcdd1e0181ca2af22001d" }, "performanceMetrics": { "state": "enabled", @@ -5358,11 +5563,17 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], - "hash": "94113375ad83c83f79c508e5a6b4d204" + "hash": "a81619b928b99f1d21c9d513faf69b30" }, "phishingDetection": { "state": "disabled", @@ -5376,11 +5587,17 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], - "hash": "6c066c2a4006b44d8cb495402e993588" + "hash": "1cc5be3534e326e74083566308e726f4" }, "pluginPointFocusedViewPlugin": { "state": "disabled", @@ -5488,12 +5705,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "f2d162b61ce76263251dbea36b528cfe" + "hash": "9e37b1b1111a12703ba85b825a5ee6cf" }, "remoteMessaging": { "state": "enabled", @@ -5512,6 +5735,12 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } @@ -5519,7 +5748,7 @@ "settings": { "windowInMs": 0 }, - "hash": "d424b3a064dd4abfccbd145270b121cf" + "hash": "f37136d479956daf56bcd58e02eee96a" }, "runtimeChecks": { "state": "disabled", @@ -5533,12 +5762,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "settings": {}, - "hash": "7dd7a12bfb6c39e9fe94cc24a81c56fc" + "hash": "8b903028eea1ff475f6a25035e428558" }, "serviceworkerInitiatedRequests": { "exceptions": [ @@ -5551,18 +5786,37 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "139d551fb343ef36567a2d35e7c4457a" + "hash": "4818e6983b16ddfdd078a2565bc69859" }, "sslCertificates": { "state": "disabled", "exceptions": [], "hash": "c292bb627849854515cebbded288ef5a" }, + "syncPromotion": { + "state": "enabled", + "features": { + "bookmarks": { + "state": "enabled" + }, + "passwords": { + "state": "enabled" + } + }, + "exceptions": [], + "hash": "8081a0cf08f5bbda622df55361c72cfe" + }, "sync": { "state": "enabled", "features": { @@ -5784,8 +6038,7 @@ { "rule": "adserver.adtech.advertising.com/pubapi/3.0/1/", "domains": [ - "collider.com", - "si.com" + "" ] } ] @@ -5862,16 +6115,6 @@ } ] }, - "amazon.dev": { - "rules": [ - { - "rule": "prime.amazon.dev", - "domains": [ - "" - ] - } - ] - }, "amazonaws.com": { "rules": [ { @@ -7141,6 +7384,7 @@ "pointstreaksites.com", "post-gazette.com", "raleighcw.com", + "signupgenius.com", "siouxlandnews.com", "southernoregoncw.com", "star64.tv", @@ -7266,6 +7510,24 @@ "domains": [ "" ] + }, + { + "rule": "meetings.hubspot.com", + "domains": [ + "" + ] + }, + { + "rule": "app.hubspot.com/hubsettings", + "domains": [ + "" + ] + }, + { + "rule": "app.hubspot.com/userpreferences", + "domains": [ + "" + ] } ] }, @@ -7778,6 +8040,16 @@ } ] }, + "opecloud.com": { + "rules": [ + { + "rule": "opecloud.com/ope-asmi.js", + "domains": [ + "bild.de" + ] + } + ] + }, "openx.net": { "rules": [ { @@ -8061,8 +8333,15 @@ { "rule": "a.pub.network/core/prebid-universal-creative.js", "domains": [ + "signupgenius.com", "titantv.com" ] + }, + { + "rule": "a.pub.network/virtualpiano-net/pubfig.min.js", + "domains": [ + "virtualpiano.net" + ] } ] }, @@ -8554,6 +8833,16 @@ } ] }, + "tsyndicate.com": { + "rules": [ + { + "rule": "vacdn.tsyndicate.com", + "domains": [ + "pornhub.com" + ] + } + ] + }, "twitter.com": { "rules": [ { @@ -8816,6 +9105,22 @@ } ] }, + "scmp.com": { + "rules": [ + { + "rule": "profiles.ope.scmp.com/ope-asmi.js", + "domains": [ + "bild.de" + ] + }, + { + "rule": "tagger.ope.scmp.com/ope-asmi.js", + "domains": [ + "bild.de" + ] + } + ] + }, "canadapost-postescanada.ca": { "rules": [ { @@ -8858,11 +9163,17 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], - "hash": "b1fbd696fb61a13318c5593562ac8a29" + "hash": "f406d2cabddadaa502127f5f8a171370" }, "trackingCookies1p": { "settings": { @@ -8881,12 +9192,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "4e5efbd74ddcc8849735bfe590ed0d78" + "hash": "af648fa280cea7a9d0d10c90cd704b60" }, "trackingCookies3p": { "settings": { @@ -8902,12 +9219,18 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "4977063ee77c043c5ad51e3daeb188ca" + "hash": "596714c5b23bcdd1e0181ca2af22001d" }, "trackingParameters": { "exceptions": [ @@ -8923,6 +9246,12 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "theverge.com" }, @@ -8960,7 +9289,7 @@ ] }, "state": "enabled", - "hash": "844dfb71064b07234e16cda96cacf8c5" + "hash": "65b2886bc6717924eb0d272ab01d7e52" }, "userAgentRotation": { "settings": { @@ -8976,23 +9305,31 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "instructure.com" } ], "state": "disabled", - "hash": "8e86f07f09dcca5d1f327c31f8da38a6" + "hash": "66f96a6be1339c70b110cef3abd09a98" }, "voiceSearch": { "exceptions": [], "state": "disabled", "hash": "728493ef7a1488e4781656d3f9db84aa" }, + "webBrokenSiteForm": { + "state": "disabled", + "exceptions": [], + "hash": "c292bb627849854515cebbded288ef5a" + }, "webCompat": { "exceptions": [ - { - "domain": "crocs.com" - }, { "domain": "marvel.com" }, @@ -9002,6 +9339,12 @@ { "domain": "noaprints.com" }, + { + "domain": "flexmls.com" + }, + { + "domain": "capitalone.com" + }, { "domain": "wsj.com" }, @@ -9049,7 +9392,7 @@ } ] }, - "hash": "d92d107682e3678cfd1cbdd8660404c0" + "hash": "b6c4ad9d1a4cfd2314aac44bc37a43b8" }, "webViewBlobDownload": { "exceptions": [], diff --git a/Core/trackerData.json b/Core/trackerData.json index c402f15af3..aaa9d28111 100644 --- a/Core/trackerData.json +++ b/Core/trackerData.json @@ -1,6 +1,6 @@ { "_builtWith": { - "tracker-radar": "c1a08eeb146b1dc8cd87c026df746b567b36177d4eb7cff42d7724cf49d8a2b2-4013b4e91930c643394cb31c6c745356f133b04f", + "tracker-radar": "796a979fe89662994ef7577f805e6b92f87b483149091a0f09abc9789936c0ee-4013b4e91930c643394cb31c6c745356f133b04f", "tracker-surrogates": "0528e3226df15b1a3e319ad68ef76612a8f26623" }, "readme": "https://github.com/duckduckgo/tracker-blocklists", @@ -461,10 +461,10 @@ "absorbingband.com": { "domain": "absorbingband.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (absorbingband.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -472,10 +472,10 @@ "abstractedauthority.com": { "domain": "abstractedauthority.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (abstractedauthority.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -518,10 +518,10 @@ "acidpigs.com": { "domain": "acidpigs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (acidpigs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -2406,10 +2406,10 @@ "alikeaddition.com": { "domain": "alikeaddition.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (alikeaddition.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -2417,10 +2417,10 @@ "aliveachiever.com": { "domain": "aliveachiever.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aliveachiever.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -2461,10 +2461,10 @@ "alluringbucket.com": { "domain": "alluringbucket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (alluringbucket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -2472,10 +2472,10 @@ "aloofvest.com": { "domain": "aloofvest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aloofvest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -2587,10 +2587,10 @@ "ambiguousafternoon.com": { "domain": "ambiguousafternoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ambiguousafternoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -2721,10 +2721,10 @@ "annoyedairport.com": { "domain": "annoyedairport.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (annoyedairport.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -2732,10 +2732,10 @@ "annoyingclover.com": { "domain": "annoyingclover.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (annoyingclover.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3051,10 +3051,10 @@ "aspiringattempt.com": { "domain": "aspiringattempt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aspiringattempt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3178,10 +3178,10 @@ "attractionbanana.com": { "domain": "attractionbanana.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (attractionbanana.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3302,10 +3302,10 @@ "automaticside.com": { "domain": "automaticside.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (automaticside.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3686,10 +3686,10 @@ "badgevolcano.com": { "domain": "badgevolcano.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (badgevolcano.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3697,10 +3697,10 @@ "bagbeam.com": { "domain": "bagbeam.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bagbeam.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3708,10 +3708,10 @@ "ballsbanana.com": { "domain": "ballsbanana.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ballsbanana.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3719,10 +3719,10 @@ "bandborder.com": { "domain": "bandborder.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bandborder.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3785,10 +3785,10 @@ "bawdybalance.com": { "domain": "bawdybalance.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bawdybalance.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3837,10 +3837,10 @@ "bedsberry.com": { "domain": "bedsberry.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bedsberry.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3848,10 +3848,10 @@ "beginnerpancake.com": { "domain": "beginnerpancake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (beginnerpancake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -3985,10 +3985,10 @@ "billowybelief.com": { "domain": "billowybelief.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (billowybelief.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -4336,10 +4336,10 @@ "blushingbread.com": { "domain": "blushingbread.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (blushingbread.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -4371,10 +4371,10 @@ "boilingcredit.com": { "domain": "boilingcredit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (boilingcredit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -4817,10 +4817,10 @@ "butterbulb.com": { "domain": "butterbulb.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (butterbulb.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -4828,10 +4828,10 @@ "buttonladybug.com": { "domain": "buttonladybug.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (buttonladybug.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5030,10 +5030,10 @@ "calculatorstatement.com": { "domain": "calculatorstatement.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (calculatorstatement.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5072,10 +5072,10 @@ "capablecup.com": { "domain": "capablecup.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (capablecup.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5095,10 +5095,10 @@ "carpentercomparison.com": { "domain": "carpentercomparison.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (carpentercomparison.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5130,10 +5130,10 @@ "carvecakes.com": { "domain": "carvecakes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (carvecakes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5159,10 +5159,10 @@ "cattlecommittee.com": { "domain": "cattlecommittee.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cattlecommittee.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5447,10 +5447,10 @@ "chargecracker.com": { "domain": "chargecracker.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chargecracker.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5564,10 +5564,10 @@ "cherriescare.com": { "domain": "cherriescare.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cherriescare.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5575,10 +5575,10 @@ "chickensstation.com": { "domain": "chickensstation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chickensstation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5586,10 +5586,10 @@ "childlikecrowd.com": { "domain": "childlikecrowd.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (childlikecrowd.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5597,10 +5597,10 @@ "childlikeform.com": { "domain": "childlikeform.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (childlikeform.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5634,10 +5634,10 @@ "circlelevel.com": { "domain": "circlelevel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (circlelevel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -5689,10 +5689,10 @@ "cleanhaircut.com": { "domain": "cleanhaircut.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cleanhaircut.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -6225,10 +6225,10 @@ "combativecar.com": { "domain": "combativecar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (combativecar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -6379,10 +6379,10 @@ "confusedcart.com": { "domain": "confusedcart.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (confusedcart.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -6695,10 +6695,10 @@ "crabbychin.com": { "domain": "crabbychin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (crabbychin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -6706,10 +6706,10 @@ "cratecamera.com": { "domain": "cratecamera.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cratecamera.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -6826,10 +6826,10 @@ "crowdedmass.com": { "domain": "crowdedmass.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (crowdedmass.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7022,10 +7022,10 @@ "cumbersomecarpenter.com": { "domain": "cumbersomecarpenter.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cumbersomecarpenter.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7058,10 +7058,10 @@ "curvedhoney.com": { "domain": "curvedhoney.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (curvedhoney.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7069,10 +7069,10 @@ "cushiondrum.com": { "domain": "cushiondrum.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cushiondrum.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7080,10 +7080,10 @@ "cutechin.com": { "domain": "cutechin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cutechin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7663,10 +7663,10 @@ "damdoor.com": { "domain": "damdoor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (damdoor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7674,10 +7674,10 @@ "dampdock.com": { "domain": "dampdock.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dampdock.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7685,10 +7685,10 @@ "dapperfloor.com": { "domain": "dapperfloor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dapperfloor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7766,10 +7766,10 @@ "decisivebase.com": { "domain": "decisivebase.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (decisivebase.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7889,10 +7889,10 @@ "detectdiscovery.com": { "domain": "detectdiscovery.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (detectdiscovery.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7900,10 +7900,10 @@ "devilishdinner.com": { "domain": "devilishdinner.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (devilishdinner.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7978,10 +7978,10 @@ "disagreeabledrop.com": { "domain": "disagreeabledrop.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (disagreeabledrop.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -7989,10 +7989,10 @@ "discreetfield.com": { "domain": "discreetfield.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (discreetfield.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -8104,10 +8104,10 @@ "dockdigestion.com": { "domain": "dockdigestion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dockdigestion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -8255,10 +8255,10 @@ "drainpaste.com": { "domain": "drainpaste.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (drainpaste.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -8266,10 +8266,10 @@ "dramaticdirection.com": { "domain": "dramaticdirection.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dramaticdirection.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -8757,10 +8757,10 @@ "encouragingthread.com": { "domain": "encouragingthread.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (encouragingthread.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -8768,10 +8768,10 @@ "enormousearth.com": { "domain": "enormousearth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enormousearth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -8809,10 +8809,10 @@ "enviousshape.com": { "domain": "enviousshape.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enviousshape.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -9225,10 +9225,10 @@ "expansioneggnog.com": { "domain": "expansioneggnog.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (expansioneggnog.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -9830,10 +9830,10 @@ "fadewaves.com": { "domain": "fadewaves.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fadewaves.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -9841,10 +9841,10 @@ "fallaciousfifth.com": { "domain": "fallaciousfifth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fallaciousfifth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -9852,10 +9852,10 @@ "farmergoldfish.com": { "domain": "farmergoldfish.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (farmergoldfish.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -9892,10 +9892,10 @@ "fearlessfaucet.com": { "domain": "fearlessfaucet.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fearlessfaucet.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -9934,10 +9934,10 @@ "financefear.com": { "domain": "financefear.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (financefear.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -9988,10 +9988,10 @@ "fixedfold.com": { "domain": "fixedfold.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fixedfold.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -10056,10 +10056,10 @@ "flowerstreatment.com": { "domain": "flowerstreatment.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flowerstreatment.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -10067,10 +10067,10 @@ "floweryflavor.com": { "domain": "floweryflavor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (floweryflavor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -10115,10 +10115,10 @@ "flutteringfireman.com": { "domain": "flutteringfireman.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flutteringfireman.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -10241,10 +10241,10 @@ "fortunatemark.com": { "domain": "fortunatemark.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fortunatemark.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -10401,10 +10401,10 @@ "frailfruit.com": { "domain": "frailfruit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (frailfruit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -10412,10 +10412,10 @@ "freezingbuilding.com": { "domain": "freezingbuilding.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (freezingbuilding.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -10423,10 +10423,10 @@ "fronttoad.com": { "domain": "fronttoad.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fronttoad.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -10450,10 +10450,10 @@ "functionalfeather.com": { "domain": "functionalfeather.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (functionalfeather.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -10500,10 +10500,10 @@ "fuzzybasketball.com": { "domain": "fuzzybasketball.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fuzzybasketball.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -10547,10 +10547,10 @@ "gammamaximum.com": { "domain": "gammamaximum.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gammamaximum.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -11025,10 +11025,10 @@ "giraffepiano.com": { "domain": "giraffepiano.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (giraffepiano.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -11065,10 +11065,10 @@ "gloriousbeef.com": { "domain": "gloriousbeef.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gloriousbeef.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -11801,10 +11801,10 @@ "gorgeousedge.com": { "domain": "gorgeousedge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gorgeousedge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -11890,10 +11890,10 @@ "grainmass.com": { "domain": "grainmass.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (grainmass.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -11901,10 +11901,10 @@ "greasysquare.com": { "domain": "greasysquare.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (greasysquare.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -12123,10 +12123,10 @@ "guiltlessbasketball.com": { "domain": "guiltlessbasketball.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (guiltlessbasketball.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -12163,10 +12163,10 @@ "haltingbadge.com": { "domain": "haltingbadge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (haltingbadge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -12174,10 +12174,10 @@ "hammerhearing.com": { "domain": "hammerhearing.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hammerhearing.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -12185,10 +12185,10 @@ "handsomelyhealth.com": { "domain": "handsomelyhealth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (handsomelyhealth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -12196,10 +12196,10 @@ "harborcaption.com": { "domain": "harborcaption.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (harborcaption.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -12522,10 +12522,10 @@ "hocgeese.com": { "domain": "hocgeese.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hocgeese.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -12533,10 +12533,10 @@ "hollowafterthought.com": { "domain": "hollowafterthought.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hollowafterthought.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -12544,10 +12544,10 @@ "honorableland.com": { "domain": "honorableland.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (honorableland.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -14452,10 +14452,10 @@ "j93557g.com": { "domain": "j93557g.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (j93557g.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -15137,10 +15137,10 @@ "knottyswing.com": { "domain": "knottyswing.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (knottyswing.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -15212,10 +15212,10 @@ "laboredlocket.com": { "domain": "laboredlocket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (laboredlocket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -15263,10 +15263,10 @@ "laughablelizards.com": { "domain": "laughablelizards.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (laughablelizards.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -16122,10 +16122,10 @@ "looseloaf.com": { "domain": "looseloaf.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (looseloaf.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -16133,10 +16133,10 @@ "lovelydrum.com": { "domain": "lovelydrum.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lovelydrum.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -16162,10 +16162,10 @@ "lunchroomlock.com": { "domain": "lunchroomlock.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lunchroomlock.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -16381,10 +16381,10 @@ "maddeningpowder.com": { "domain": "maddeningpowder.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (maddeningpowder.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -16690,10 +16690,10 @@ "marriedbelief.com": { "domain": "marriedbelief.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (marriedbelief.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -16701,10 +16701,10 @@ "materialparcel.com": { "domain": "materialparcel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (materialparcel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -16886,10 +16886,10 @@ "measlymiddle.com": { "domain": "measlymiddle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (measlymiddle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -16935,10 +16935,10 @@ "meddleplant.com": { "domain": "meddleplant.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (meddleplant.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -17209,10 +17209,10 @@ "memorizematch.com": { "domain": "memorizematch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (memorizematch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -17220,10 +17220,10 @@ "mentorsticks.com": { "domain": "mentorsticks.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mentorsticks.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -17783,10 +17783,10 @@ "motionflowers.com": { "domain": "motionflowers.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (motionflowers.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -18131,10 +18131,10 @@ "nappyattack.com": { "domain": "nappyattack.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nappyattack.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -18270,10 +18270,10 @@ "nervoussummer.com": { "domain": "nervoussummer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nervoussummer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -18629,10 +18629,10 @@ "nondescriptnote.com": { "domain": "nondescriptnote.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nondescriptnote.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -18840,10 +18840,10 @@ "nutritiousbean.com": { "domain": "nutritiousbean.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nutritiousbean.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -20017,10 +20017,10 @@ "overconfidentfood.com": { "domain": "overconfidentfood.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (overconfidentfood.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -20238,10 +20238,10 @@ "pailpatch.com": { "domain": "pailpatch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pailpatch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -20249,10 +20249,10 @@ "panickypancake.com": { "domain": "panickypancake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (panickypancake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -20260,10 +20260,10 @@ "panoramicplane.com": { "domain": "panoramicplane.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (panoramicplane.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -20400,10 +20400,10 @@ "partplanes.com": { "domain": "partplanes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (partplanes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -20887,10 +20887,10 @@ "placidperson.com": { "domain": "placidperson.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (placidperson.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -20916,10 +20916,10 @@ "pleasantpump.com": { "domain": "pleasantpump.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pleasantpump.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -20927,10 +20927,10 @@ "plotrabbit.com": { "domain": "plotrabbit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (plotrabbit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -20938,10 +20938,10 @@ "pluckypocket.com": { "domain": "pluckypocket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pluckypocket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21002,10 +21002,10 @@ "pocketfaucet.com": { "domain": "pocketfaucet.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pocketfaucet.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21082,10 +21082,10 @@ "possibleboats.com": { "domain": "possibleboats.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (possibleboats.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21130,10 +21130,10 @@ "potatoinvention.com": { "domain": "potatoinvention.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (potatoinvention.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21141,10 +21141,10 @@ "powerfulcopper.com": { "domain": "powerfulcopper.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (powerfulcopper.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21181,10 +21181,10 @@ "predictplate.com": { "domain": "predictplate.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (predictplate.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21192,10 +21192,10 @@ "prepareplanes.com": { "domain": "prepareplanes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (prepareplanes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21227,10 +21227,10 @@ "priceypies.com": { "domain": "priceypies.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (priceypies.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21238,10 +21238,10 @@ "pricklydebt.com": { "domain": "pricklydebt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pricklydebt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21371,10 +21371,10 @@ "profusesupport.com": { "domain": "profusesupport.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (profusesupport.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21455,10 +21455,10 @@ "psychedelicarithmetic.com": { "domain": "psychedelicarithmetic.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (psychedelicarithmetic.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21926,10 +21926,10 @@ "quietknowledge.com": { "domain": "quietknowledge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quietknowledge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21937,10 +21937,10 @@ "quizzicalpartner.com": { "domain": "quizzicalpartner.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quizzicalpartner.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -21948,10 +21948,10 @@ "quizzicalzephyr.com": { "domain": "quizzicalzephyr.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quizzicalzephyr.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22018,10 +22018,10 @@ "radiateprose.com": { "domain": "radiateprose.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (radiateprose.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22029,10 +22029,10 @@ "railwayreason.com": { "domain": "railwayreason.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (railwayreason.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22182,10 +22182,10 @@ "rambunctiousflock.com": { "domain": "rambunctiousflock.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rambunctiousflock.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22193,10 +22193,10 @@ "rangeplayground.com": { "domain": "rangeplayground.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rangeplayground.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22235,10 +22235,10 @@ "rebelswing.com": { "domain": "rebelswing.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rebelswing.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22246,10 +22246,10 @@ "reconditerake.com": { "domain": "reconditerake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (reconditerake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22257,10 +22257,10 @@ "reconditerespect.com": { "domain": "reconditerespect.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (reconditerespect.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22527,10 +22527,10 @@ "rehabilitatereason.com": { "domain": "rehabilitatereason.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rehabilitatereason.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22538,10 +22538,10 @@ "repeatsweater.com": { "domain": "repeatsweater.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (repeatsweater.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22599,10 +22599,10 @@ "resonantrock.com": { "domain": "resonantrock.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (resonantrock.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22657,10 +22657,10 @@ "restrainstorm.com": { "domain": "restrainstorm.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (restrainstorm.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22668,10 +22668,10 @@ "restructureinvention.com": { "domain": "restructureinvention.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (restructureinvention.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22768,10 +22768,10 @@ "rhetoricalloss.com": { "domain": "rhetoricalloss.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rhetoricalloss.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22791,10 +22791,10 @@ "righteouscrayon.com": { "domain": "righteouscrayon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (righteouscrayon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -22802,10 +22802,10 @@ "rightfulfall.com": { "domain": "rightfulfall.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rightfulfall.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23159,10 +23159,10 @@ "ruralrobin.com": { "domain": "ruralrobin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ruralrobin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23263,10 +23263,10 @@ "sablesong.com": { "domain": "sablesong.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sablesong.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23399,10 +23399,10 @@ "samestretch.com": { "domain": "samestretch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (samestretch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23474,10 +23474,10 @@ "satisfycork.com": { "domain": "satisfycork.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (satisfycork.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23485,10 +23485,10 @@ "savoryorange.com": { "domain": "savoryorange.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (savoryorange.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23529,10 +23529,10 @@ "scaredsnakes.com": { "domain": "scaredsnakes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scaredsnakes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23540,10 +23540,10 @@ "scaredsong.com": { "domain": "scaredsong.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scaredsong.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23551,10 +23551,10 @@ "scaredstomach.com": { "domain": "scaredstomach.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scaredstomach.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23562,10 +23562,10 @@ "scarfsmash.com": { "domain": "scarfsmash.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scarfsmash.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23642,10 +23642,10 @@ "scintillatingsilver.com": { "domain": "scintillatingsilver.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scintillatingsilver.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23675,10 +23675,10 @@ "screechingstove.com": { "domain": "screechingstove.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (screechingstove.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23726,10 +23726,10 @@ "scribblestring.com": { "domain": "scribblestring.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scribblestring.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23862,10 +23862,10 @@ "seatsmoke.com": { "domain": "seatsmoke.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (seatsmoke.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -23991,10 +23991,10 @@ "selectivesummer.com": { "domain": "selectivesummer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (selectivesummer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24002,10 +24002,10 @@ "selfishsnake.com": { "domain": "selfishsnake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (selfishsnake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24249,10 +24249,10 @@ "shakegoldfish.com": { "domain": "shakegoldfish.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shakegoldfish.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24260,10 +24260,10 @@ "shamerain.com": { "domain": "shamerain.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shamerain.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24271,10 +24271,10 @@ "shapecomb.com": { "domain": "shapecomb.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shapecomb.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24552,10 +24552,10 @@ "shrillspoon.com": { "domain": "shrillspoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shrillspoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24587,10 +24587,10 @@ "sicksmash.com": { "domain": "sicksmash.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sicksmash.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24628,10 +24628,10 @@ "singroot.com": { "domain": "singroot.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (singroot.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24744,10 +24744,10 @@ "sixauthority.com": { "domain": "sixauthority.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sixauthority.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24755,10 +24755,10 @@ "skillfuldrop.com": { "domain": "skillfuldrop.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (skillfuldrop.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24784,10 +24784,10 @@ "skisofa.com": { "domain": "skisofa.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (skisofa.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24880,10 +24880,10 @@ "slopesoap.com": { "domain": "slopesoap.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (slopesoap.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24937,10 +24937,10 @@ "smashquartz.com": { "domain": "smashquartz.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smashquartz.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -24948,10 +24948,10 @@ "smashsurprise.com": { "domain": "smashsurprise.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smashsurprise.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25069,10 +25069,10 @@ "smoggysnakes.com": { "domain": "smoggysnakes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smoggysnakes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25226,10 +25226,10 @@ "songsterritory.com": { "domain": "songsterritory.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (songsterritory.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25252,10 +25252,10 @@ "soundstocking.com": { "domain": "soundstocking.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (soundstocking.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25263,10 +25263,10 @@ "spectacularstamp.com": { "domain": "spectacularstamp.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spectacularstamp.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25326,10 +25326,10 @@ "spookyexchange.com": { "domain": "spookyexchange.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spookyexchange.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25337,10 +25337,10 @@ "spookyskate.com": { "domain": "spookyskate.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spookyskate.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25348,10 +25348,10 @@ "spookysleet.com": { "domain": "spookysleet.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spookysleet.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25579,10 +25579,10 @@ "stakingsmile.com": { "domain": "stakingsmile.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stakingsmile.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25606,10 +25606,10 @@ "steadfastseat.com": { "domain": "steadfastseat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (steadfastseat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25617,10 +25617,10 @@ "steadfastsound.com": { "domain": "steadfastsound.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (steadfastsound.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25628,10 +25628,10 @@ "steadfastsystem.com": { "domain": "steadfastsystem.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (steadfastsystem.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25658,10 +25658,10 @@ "steepsquirrel.com": { "domain": "steepsquirrel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (steepsquirrel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25669,10 +25669,10 @@ "stereotypedsugar.com": { "domain": "stereotypedsugar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stereotypedsugar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25697,10 +25697,10 @@ "stiffgame.com": { "domain": "stiffgame.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stiffgame.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25708,10 +25708,10 @@ "stingycrush.com": { "domain": "stingycrush.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stingycrush.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25781,10 +25781,10 @@ "straightnest.com": { "domain": "straightnest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (straightnest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25829,10 +25829,10 @@ "strivesquirrel.com": { "domain": "strivesquirrel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (strivesquirrel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25840,10 +25840,10 @@ "strokesystem.com": { "domain": "strokesystem.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (strokesystem.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25851,10 +25851,10 @@ "stupendoussleet.com": { "domain": "stupendoussleet.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stupendoussleet.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25862,10 +25862,10 @@ "stupendoussnow.com": { "domain": "stupendoussnow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stupendoussnow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25873,10 +25873,10 @@ "stupidscene.com": { "domain": "stupidscene.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stupidscene.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25884,10 +25884,10 @@ "sulkycook.com": { "domain": "sulkycook.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sulkycook.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25956,10 +25956,10 @@ "superficialeyes.com": { "domain": "superficialeyes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (superficialeyes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -25967,10 +25967,10 @@ "superficialsquare.com": { "domain": "superficialsquare.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (superficialsquare.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -26021,10 +26021,10 @@ "swankysquare.com": { "domain": "swankysquare.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (swankysquare.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -26223,10 +26223,10 @@ "tangycover.com": { "domain": "tangycover.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tangycover.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -26531,10 +26531,10 @@ "tediousticket.com": { "domain": "tediousticket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tediousticket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -26542,10 +26542,10 @@ "teenytinyshirt.com": { "domain": "teenytinyshirt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (teenytinyshirt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -26553,10 +26553,10 @@ "tendertest.com": { "domain": "tendertest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tendertest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -26804,10 +26804,10 @@ "thinkitten.com": { "domain": "thinkitten.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thinkitten.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -26815,10 +26815,10 @@ "threetruck.com": { "domain": "threetruck.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (threetruck.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -27233,10 +27233,10 @@ "tiresomethunder.com": { "domain": "tiresomethunder.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tiresomethunder.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -28090,10 +28090,10 @@ "typicalteeth.com": { "domain": "typicalteeth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (typicalteeth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -28220,10 +28220,10 @@ "ultraoranges.com": { "domain": "ultraoranges.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ultraoranges.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -28231,10 +28231,10 @@ "unbecominglamp.com": { "domain": "unbecominglamp.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unbecominglamp.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -28364,10 +28364,10 @@ "uninterestedquarter.com": { "domain": "uninterestedquarter.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (uninterestedquarter.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -28447,10 +28447,10 @@ "unwieldyhealth.com": { "domain": "unwieldyhealth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unwieldyhealth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -28458,10 +28458,10 @@ "unwieldyplastic.com": { "domain": "unwieldyplastic.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unwieldyplastic.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -28819,10 +28819,10 @@ "vengefulgrass.com": { "domain": "vengefulgrass.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vengefulgrass.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -29126,10 +29126,10 @@ "volatilevessel.com": { "domain": "volatilevessel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (volatilevessel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -29137,10 +29137,10 @@ "voraciousgrip.com": { "domain": "voraciousgrip.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (voraciousgrip.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -29263,10 +29263,10 @@ "warmafterthought.com": { "domain": "warmafterthought.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (warmafterthought.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -29274,10 +29274,10 @@ "warmquiver.com": { "domain": "warmquiver.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (warmquiver.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -31016,10 +31016,10 @@ "zestycrime.com": { "domain": "zestycrime.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (zestycrime.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -31321,10 +31321,10 @@ "parchedsofa.com": { "domain": "parchedsofa.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (parchedsofa.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32481,10 +32481,10 @@ "2znp09oa.com": { "domain": "2znp09oa.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (2znp09oa.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32492,10 +32492,10 @@ "4jnzhl0d0.com": { "domain": "4jnzhl0d0.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (4jnzhl0d0.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32503,10 +32503,10 @@ "5mcwl.pw": { "domain": "5mcwl.pw", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (5mcwl.pw)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32514,10 +32514,10 @@ "6ldu6qa.com": { "domain": "6ldu6qa.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (6ldu6qa.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32525,10 +32525,10 @@ "82o9v830.com": { "domain": "82o9v830.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (82o9v830.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32536,10 +32536,21 @@ "abilityscale.com": { "domain": "abilityscale.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (abilityscale.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "abjectattempt.com": { + "domain": "abjectattempt.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (abjectattempt.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32547,10 +32558,10 @@ "aboardamusement.com": { "domain": "aboardamusement.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aboardamusement.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32558,10 +32569,10 @@ "aboardlevel.com": { "domain": "aboardlevel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aboardlevel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32569,10 +32580,10 @@ "abovechat.com": { "domain": "abovechat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (abovechat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32580,10 +32591,10 @@ "abruptroad.com": { "domain": "abruptroad.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (abruptroad.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32591,10 +32602,10 @@ "absentairport.com": { "domain": "absentairport.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (absentairport.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32602,10 +32613,10 @@ "absorbingcorn.com": { "domain": "absorbingcorn.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (absorbingcorn.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32613,10 +32624,10 @@ "absorbingprison.com": { "domain": "absorbingprison.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (absorbingprison.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32624,10 +32635,10 @@ "abstractedamount.com": { "domain": "abstractedamount.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (abstractedamount.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32635,10 +32646,10 @@ "absurdapple.com": { "domain": "absurdapple.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (absurdapple.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32646,10 +32657,10 @@ "abundantcoin.com": { "domain": "abundantcoin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (abundantcoin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32657,10 +32668,10 @@ "acceptableauthority.com": { "domain": "acceptableauthority.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (acceptableauthority.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32668,10 +32679,10 @@ "accurateanimal.com": { "domain": "accurateanimal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (accurateanimal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32679,10 +32690,10 @@ "accuratecoal.com": { "domain": "accuratecoal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (accuratecoal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32690,10 +32701,10 @@ "achieverknee.com": { "domain": "achieverknee.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (achieverknee.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32701,10 +32712,10 @@ "acidicstraw.com": { "domain": "acidicstraw.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (acidicstraw.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32712,10 +32723,10 @@ "acridangle.com": { "domain": "acridangle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (acridangle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32723,10 +32734,10 @@ "acridtwist.com": { "domain": "acridtwist.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (acridtwist.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32734,10 +32745,10 @@ "actoramusement.com": { "domain": "actoramusement.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (actoramusement.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32745,10 +32756,10 @@ "actuallysheep.com": { "domain": "actuallysheep.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (actuallysheep.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32756,10 +32767,10 @@ "actuallysnake.com": { "domain": "actuallysnake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (actuallysnake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32767,10 +32778,10 @@ "actuallything.com": { "domain": "actuallything.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (actuallything.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32778,10 +32789,10 @@ "adamantsnail.com": { "domain": "adamantsnail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (adamantsnail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32789,10 +32800,10 @@ "addictedattention.com": { "domain": "addictedattention.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (addictedattention.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32800,10 +32811,10 @@ "admiral.pub": { "domain": "admiral.pub", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (admiral.pub)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32811,10 +32822,10 @@ "adorableanger.com": { "domain": "adorableanger.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (adorableanger.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32822,10 +32833,10 @@ "adorableattention.com": { "domain": "adorableattention.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (adorableattention.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32833,10 +32844,10 @@ "adventurousamount.com": { "domain": "adventurousamount.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (adventurousamount.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32844,10 +32855,10 @@ "afraidlanguage.com": { "domain": "afraidlanguage.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (afraidlanguage.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32855,10 +32866,10 @@ "aftermathbrother.com": { "domain": "aftermathbrother.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aftermathbrother.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32866,10 +32877,10 @@ "agilebreeze.com": { "domain": "agilebreeze.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (agilebreeze.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32877,10 +32888,10 @@ "agreeablearch.com": { "domain": "agreeablearch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (agreeablearch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32888,10 +32899,10 @@ "agreeabletouch.com": { "domain": "agreeabletouch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (agreeabletouch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32899,10 +32910,10 @@ "aheadday.com": { "domain": "aheadday.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aheadday.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32910,10 +32921,10 @@ "aheadgrow.com": { "domain": "aheadgrow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aheadgrow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32921,10 +32932,10 @@ "aheadmachine.com": { "domain": "aheadmachine.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aheadmachine.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32932,10 +32943,10 @@ "ak0gsh40.com": { "domain": "ak0gsh40.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ak0gsh40.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32943,10 +32954,10 @@ "alertarithmetic.com": { "domain": "alertarithmetic.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (alertarithmetic.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32954,10 +32965,10 @@ "aliasanvil.com": { "domain": "aliasanvil.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aliasanvil.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32965,10 +32976,10 @@ "alleythecat.com": { "domain": "alleythecat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (alleythecat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32976,10 +32987,10 @@ "aloofmetal.com": { "domain": "aloofmetal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aloofmetal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32987,10 +32998,10 @@ "alpineactor.com": { "domain": "alpineactor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (alpineactor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -32998,10 +33009,10 @@ "ambientdusk.com": { "domain": "ambientdusk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ambientdusk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33009,10 +33020,10 @@ "ambientlagoon.com": { "domain": "ambientlagoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ambientlagoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33020,10 +33031,10 @@ "ambiguousanger.com": { "domain": "ambiguousanger.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ambiguousanger.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33031,10 +33042,10 @@ "ambiguousdinosaurs.com": { "domain": "ambiguousdinosaurs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ambiguousdinosaurs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33042,10 +33053,10 @@ "ambiguousincome.com": { "domain": "ambiguousincome.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ambiguousincome.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33053,10 +33064,10 @@ "ambrosialsummit.com": { "domain": "ambrosialsummit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ambrosialsummit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33064,10 +33075,10 @@ "amethystzenith.com": { "domain": "amethystzenith.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (amethystzenith.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33075,10 +33086,10 @@ "amuckafternoon.com": { "domain": "amuckafternoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (amuckafternoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33086,10 +33097,10 @@ "amusedbucket.com": { "domain": "amusedbucket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (amusedbucket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33097,10 +33108,10 @@ "analogwonder.com": { "domain": "analogwonder.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (analogwonder.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33108,10 +33119,10 @@ "analyzecorona.com": { "domain": "analyzecorona.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (analyzecorona.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33119,10 +33130,10 @@ "ancientact.com": { "domain": "ancientact.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ancientact.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33130,10 +33141,10 @@ "annoyingacoustics.com": { "domain": "annoyingacoustics.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (annoyingacoustics.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33141,10 +33152,10 @@ "anxiousapples.com": { "domain": "anxiousapples.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (anxiousapples.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33152,10 +33163,10 @@ "aquaticowl.com": { "domain": "aquaticowl.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aquaticowl.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33163,10 +33174,10 @@ "ar1nvz5.com": { "domain": "ar1nvz5.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ar1nvz5.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33174,10 +33185,10 @@ "archswimming.com": { "domain": "archswimming.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (archswimming.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33185,10 +33196,10 @@ "aromamirror.com": { "domain": "aromamirror.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aromamirror.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33196,10 +33207,10 @@ "arrivegrowth.com": { "domain": "arrivegrowth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (arrivegrowth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33207,10 +33218,10 @@ "artthevoid.com": { "domain": "artthevoid.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (artthevoid.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33218,10 +33229,10 @@ "aspiringapples.com": { "domain": "aspiringapples.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aspiringapples.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33229,10 +33240,10 @@ "aspiringtoy.com": { "domain": "aspiringtoy.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (aspiringtoy.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33240,10 +33251,10 @@ "astonishingfood.com": { "domain": "astonishingfood.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (astonishingfood.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33251,10 +33262,10 @@ "astralhustle.com": { "domain": "astralhustle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (astralhustle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33262,10 +33273,10 @@ "astrallullaby.com": { "domain": "astrallullaby.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (astrallullaby.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33273,10 +33284,10 @@ "attendchase.com": { "domain": "attendchase.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (attendchase.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33284,10 +33295,10 @@ "attractivecap.com": { "domain": "attractivecap.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (attractivecap.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33295,10 +33306,10 @@ "audioarctic.com": { "domain": "audioarctic.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (audioarctic.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33306,10 +33317,10 @@ "automaticturkey.com": { "domain": "automaticturkey.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (automaticturkey.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33317,10 +33328,10 @@ "availablerest.com": { "domain": "availablerest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (availablerest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33328,10 +33339,10 @@ "avalonalbum.com": { "domain": "avalonalbum.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (avalonalbum.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33339,10 +33350,10 @@ "averageactivity.com": { "domain": "averageactivity.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (averageactivity.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33350,10 +33361,10 @@ "awarealley.com": { "domain": "awarealley.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (awarealley.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33361,10 +33372,10 @@ "awesomeagreement.com": { "domain": "awesomeagreement.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (awesomeagreement.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33372,10 +33383,10 @@ "awzbijw.com": { "domain": "awzbijw.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (awzbijw.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33383,10 +33394,10 @@ "axiomaticalley.com": { "domain": "axiomaticalley.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (axiomaticalley.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33394,10 +33405,10 @@ "axiomaticanger.com": { "domain": "axiomaticanger.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (axiomaticanger.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33405,10 +33416,10 @@ "azuremystique.com": { "domain": "azuremystique.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (azuremystique.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33416,10 +33427,10 @@ "backupcat.com": { "domain": "backupcat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (backupcat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33427,10 +33438,10 @@ "badgeboat.com": { "domain": "badgeboat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (badgeboat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33438,10 +33449,10 @@ "badgerabbit.com": { "domain": "badgerabbit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (badgerabbit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33449,10 +33460,10 @@ "baitbaseball.com": { "domain": "baitbaseball.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (baitbaseball.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33460,10 +33471,10 @@ "balloonbelieve.com": { "domain": "balloonbelieve.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (balloonbelieve.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33471,10 +33482,10 @@ "bananabarrel.com": { "domain": "bananabarrel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bananabarrel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33482,10 +33493,10 @@ "barbarousbase.com": { "domain": "barbarousbase.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (barbarousbase.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33493,10 +33504,10 @@ "basilfish.com": { "domain": "basilfish.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (basilfish.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33504,10 +33515,10 @@ "basketballbelieve.com": { "domain": "basketballbelieve.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (basketballbelieve.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33515,10 +33526,10 @@ "baskettexture.com": { "domain": "baskettexture.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (baskettexture.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33526,10 +33537,10 @@ "bawdybeast.com": { "domain": "bawdybeast.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bawdybeast.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33537,10 +33548,10 @@ "beamvolcano.com": { "domain": "beamvolcano.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (beamvolcano.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33548,10 +33559,10 @@ "beancontrol.com": { "domain": "beancontrol.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (beancontrol.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33559,10 +33570,10 @@ "bearmoonlodge.com": { "domain": "bearmoonlodge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bearmoonlodge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33570,10 +33581,10 @@ "beetleend.com": { "domain": "beetleend.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (beetleend.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33581,10 +33592,10 @@ "begintrain.com": { "domain": "begintrain.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (begintrain.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33592,10 +33603,10 @@ "berserkhydrant.com": { "domain": "berserkhydrant.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (berserkhydrant.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33603,10 +33614,10 @@ "bespokesandals.com": { "domain": "bespokesandals.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bespokesandals.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33614,10 +33625,10 @@ "bestboundary.com": { "domain": "bestboundary.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bestboundary.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33625,10 +33636,10 @@ "bewilderedbattle.com": { "domain": "bewilderedbattle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bewilderedbattle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33636,10 +33647,10 @@ "bewilderedblade.com": { "domain": "bewilderedblade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bewilderedblade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33647,10 +33658,10 @@ "bhcumsc.com": { "domain": "bhcumsc.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bhcumsc.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33658,10 +33669,10 @@ "bikepaws.com": { "domain": "bikepaws.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bikepaws.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33669,10 +33680,10 @@ "bikesboard.com": { "domain": "bikesboard.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bikesboard.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33680,10 +33691,10 @@ "billowybead.com": { "domain": "billowybead.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (billowybead.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33691,10 +33702,10 @@ "binspiredtees.com": { "domain": "binspiredtees.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (binspiredtees.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33702,10 +33713,10 @@ "birthdaybelief.com": { "domain": "birthdaybelief.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (birthdaybelief.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33713,10 +33724,10 @@ "blackbrake.com": { "domain": "blackbrake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (blackbrake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33724,10 +33735,10 @@ "bleachbubble.com": { "domain": "bleachbubble.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bleachbubble.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33735,10 +33746,10 @@ "bleachscarecrow.com": { "domain": "bleachscarecrow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bleachscarecrow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33746,10 +33757,10 @@ "bleedlight.com": { "domain": "bleedlight.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bleedlight.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33757,10 +33768,10 @@ "blesspizzas.com": { "domain": "blesspizzas.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (blesspizzas.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33768,10 +33779,10 @@ "blissfulcrescendo.com": { "domain": "blissfulcrescendo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (blissfulcrescendo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33779,10 +33790,10 @@ "blissfullagoon.com": { "domain": "blissfullagoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (blissfullagoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33790,10 +33801,10 @@ "blueeyedblow.com": { "domain": "blueeyedblow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (blueeyedblow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33801,10 +33812,10 @@ "blushingbeast.com": { "domain": "blushingbeast.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (blushingbeast.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33812,10 +33823,10 @@ "boatsvest.com": { "domain": "boatsvest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (boatsvest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33823,10 +33834,10 @@ "boilingbeetle.com": { "domain": "boilingbeetle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (boilingbeetle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33834,10 +33845,10 @@ "boostbehavior.com": { "domain": "boostbehavior.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (boostbehavior.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33845,10 +33856,10 @@ "boredcrown.com": { "domain": "boredcrown.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (boredcrown.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33856,10 +33867,10 @@ "bouncyproperty.com": { "domain": "bouncyproperty.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bouncyproperty.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33867,10 +33878,10 @@ "boundarybusiness.com": { "domain": "boundarybusiness.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (boundarybusiness.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33878,10 +33889,10 @@ "boundlessargument.com": { "domain": "boundlessargument.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (boundlessargument.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33889,10 +33900,10 @@ "boundlessbrake.com": { "domain": "boundlessbrake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (boundlessbrake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33900,10 +33911,10 @@ "boundlessveil.com": { "domain": "boundlessveil.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (boundlessveil.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33911,10 +33922,10 @@ "brainybasin.com": { "domain": "brainybasin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (brainybasin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33922,10 +33933,10 @@ "brainynut.com": { "domain": "brainynut.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (brainynut.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33933,10 +33944,10 @@ "branchborder.com": { "domain": "branchborder.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (branchborder.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33944,10 +33955,10 @@ "brandsfive.com": { "domain": "brandsfive.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (brandsfive.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33955,10 +33966,10 @@ "brandybison.com": { "domain": "brandybison.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (brandybison.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33966,10 +33977,10 @@ "bravebone.com": { "domain": "bravebone.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bravebone.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33977,10 +33988,10 @@ "bravecalculator.com": { "domain": "bravecalculator.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bravecalculator.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33988,10 +33999,10 @@ "breadbalance.com": { "domain": "breadbalance.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (breadbalance.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -33999,10 +34010,10 @@ "breakableinsurance.com": { "domain": "breakableinsurance.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (breakableinsurance.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34010,10 +34021,10 @@ "breakfastboat.com": { "domain": "breakfastboat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (breakfastboat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34021,10 +34032,10 @@ "breezygrove.com": { "domain": "breezygrove.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (breezygrove.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34032,10 +34043,10 @@ "brianwould.com": { "domain": "brianwould.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (brianwould.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34043,10 +34054,10 @@ "brighttoe.com": { "domain": "brighttoe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (brighttoe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34054,10 +34065,10 @@ "briskstorm.com": { "domain": "briskstorm.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (briskstorm.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34065,10 +34076,10 @@ "broadborder.com": { "domain": "broadborder.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (broadborder.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34076,10 +34087,10 @@ "broadboundary.com": { "domain": "broadboundary.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (broadboundary.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34087,10 +34098,10 @@ "broadcastbed.com": { "domain": "broadcastbed.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (broadcastbed.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34098,10 +34109,10 @@ "broaddoor.com": { "domain": "broaddoor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (broaddoor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34109,10 +34120,10 @@ "brotherslocket.com": { "domain": "brotherslocket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (brotherslocket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34120,10 +34131,10 @@ "bruisebaseball.com": { "domain": "bruisebaseball.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bruisebaseball.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34131,10 +34142,10 @@ "brunchforher.com": { "domain": "brunchforher.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (brunchforher.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34142,10 +34153,10 @@ "buildingknife.com": { "domain": "buildingknife.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (buildingknife.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34153,10 +34164,10 @@ "bulbbait.com": { "domain": "bulbbait.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bulbbait.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34164,10 +34175,10 @@ "burgersalt.com": { "domain": "burgersalt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (burgersalt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34175,10 +34186,10 @@ "burlywhistle.com": { "domain": "burlywhistle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (burlywhistle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34186,10 +34197,10 @@ "burnbubble.com": { "domain": "burnbubble.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (burnbubble.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34197,10 +34208,10 @@ "bushesbag.com": { "domain": "bushesbag.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bushesbag.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34208,10 +34219,10 @@ "bustlingbath.com": { "domain": "bustlingbath.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bustlingbath.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34219,10 +34230,10 @@ "bustlingbook.com": { "domain": "bustlingbook.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (bustlingbook.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34230,10 +34241,10 @@ "butterburst.com": { "domain": "butterburst.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (butterburst.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34241,10 +34252,10 @@ "cakesdrum.com": { "domain": "cakesdrum.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cakesdrum.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34252,10 +34263,10 @@ "calculatingcircle.com": { "domain": "calculatingcircle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (calculatingcircle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34263,10 +34274,10 @@ "calculatingtoothbrush.com": { "domain": "calculatingtoothbrush.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (calculatingtoothbrush.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34274,10 +34285,10 @@ "callousbrake.com": { "domain": "callousbrake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (callousbrake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34285,10 +34296,10 @@ "calmcactus.com": { "domain": "calmcactus.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (calmcactus.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34296,10 +34307,10 @@ "calypsocapsule.com": { "domain": "calypsocapsule.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (calypsocapsule.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34307,10 +34318,10 @@ "cannonchange.com": { "domain": "cannonchange.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cannonchange.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34318,10 +34329,10 @@ "capablecows.com": { "domain": "capablecows.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (capablecows.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34329,10 +34340,10 @@ "capriciouscorn.com": { "domain": "capriciouscorn.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (capriciouscorn.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34340,10 +34351,10 @@ "captivatingcanyon.com": { "domain": "captivatingcanyon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (captivatingcanyon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34351,10 +34362,10 @@ "captivatingillusion.com": { "domain": "captivatingillusion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (captivatingillusion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34362,10 +34373,10 @@ "captivatingpanorama.com": { "domain": "captivatingpanorama.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (captivatingpanorama.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34373,10 +34384,10 @@ "captivatingperformance.com": { "domain": "captivatingperformance.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (captivatingperformance.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34384,10 +34395,10 @@ "carefuldolls.com": { "domain": "carefuldolls.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (carefuldolls.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34395,10 +34406,10 @@ "caringcast.com": { "domain": "caringcast.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (caringcast.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34406,10 +34417,10 @@ "caringzinc.com": { "domain": "caringzinc.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (caringzinc.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34417,10 +34428,10 @@ "carloforward.com": { "domain": "carloforward.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (carloforward.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34428,10 +34439,10 @@ "carscannon.com": { "domain": "carscannon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (carscannon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34439,10 +34450,10 @@ "cartkitten.com": { "domain": "cartkitten.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cartkitten.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34450,10 +34461,10 @@ "catalogcake.com": { "domain": "catalogcake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (catalogcake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34461,10 +34472,10 @@ "catschickens.com": { "domain": "catschickens.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (catschickens.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34472,10 +34483,10 @@ "causecherry.com": { "domain": "causecherry.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (causecherry.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34483,10 +34494,10 @@ "cautiouscamera.com": { "domain": "cautiouscamera.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cautiouscamera.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34494,10 +34505,10 @@ "cautiouscherries.com": { "domain": "cautiouscherries.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cautiouscherries.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34505,10 +34516,10 @@ "cautiouscrate.com": { "domain": "cautiouscrate.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cautiouscrate.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34516,10 +34527,10 @@ "cautiouscredit.com": { "domain": "cautiouscredit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cautiouscredit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34527,10 +34538,10 @@ "cavecurtain.com": { "domain": "cavecurtain.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cavecurtain.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34538,10 +34549,10 @@ "ceciliavenus.com": { "domain": "ceciliavenus.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ceciliavenus.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34549,10 +34560,10 @@ "celestialeuphony.com": { "domain": "celestialeuphony.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (celestialeuphony.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34560,10 +34571,10 @@ "celestialquasar.com": { "domain": "celestialquasar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (celestialquasar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34571,10 +34582,10 @@ "celestialspectra.com": { "domain": "celestialspectra.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (celestialspectra.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34582,10 +34593,10 @@ "chaireggnog.com": { "domain": "chaireggnog.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chaireggnog.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34593,10 +34604,10 @@ "chairscrack.com": { "domain": "chairscrack.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chairscrack.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34604,10 +34615,10 @@ "chairsdonkey.com": { "domain": "chairsdonkey.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chairsdonkey.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34615,10 +34626,10 @@ "chalkoil.com": { "domain": "chalkoil.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chalkoil.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34626,10 +34637,10 @@ "changeablecats.com": { "domain": "changeablecats.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (changeablecats.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34637,10 +34648,10 @@ "channelcamp.com": { "domain": "channelcamp.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (channelcamp.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34648,10 +34659,10 @@ "charmingplate.com": { "domain": "charmingplate.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (charmingplate.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34659,10 +34670,10 @@ "charscroll.com": { "domain": "charscroll.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (charscroll.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34670,10 +34681,10 @@ "cheerycraze.com": { "domain": "cheerycraze.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cheerycraze.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34681,10 +34692,10 @@ "chessbranch.com": { "domain": "chessbranch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chessbranch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34692,10 +34703,10 @@ "chesscolor.com": { "domain": "chesscolor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chesscolor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34703,10 +34714,10 @@ "chesscrowd.com": { "domain": "chesscrowd.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chesscrowd.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34714,10 +34725,10 @@ "childlikeexample.com": { "domain": "childlikeexample.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (childlikeexample.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34725,10 +34736,10 @@ "chilledliquid.com": { "domain": "chilledliquid.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chilledliquid.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34736,10 +34747,10 @@ "chingovernment.com": { "domain": "chingovernment.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chingovernment.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34747,10 +34758,10 @@ "chinsnakes.com": { "domain": "chinsnakes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chinsnakes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34758,10 +34769,10 @@ "chipperisle.com": { "domain": "chipperisle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chipperisle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34769,10 +34780,10 @@ "chivalrouscord.com": { "domain": "chivalrouscord.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chivalrouscord.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34780,10 +34791,10 @@ "chubbycreature.com": { "domain": "chubbycreature.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chubbycreature.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34791,10 +34802,10 @@ "chunkycactus.com": { "domain": "chunkycactus.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (chunkycactus.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34802,10 +34813,10 @@ "cicdserver.com": { "domain": "cicdserver.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cicdserver.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34813,10 +34824,10 @@ "cinemabonus.com": { "domain": "cinemabonus.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cinemabonus.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34824,10 +34835,10 @@ "clammychicken.com": { "domain": "clammychicken.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (clammychicken.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34835,10 +34846,10 @@ "cloisteredcord.com": { "domain": "cloisteredcord.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cloisteredcord.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34846,10 +34857,10 @@ "cloisteredcurve.com": { "domain": "cloisteredcurve.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cloisteredcurve.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34857,10 +34868,10 @@ "closedcows.com": { "domain": "closedcows.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (closedcows.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34868,10 +34879,10 @@ "closefriction.com": { "domain": "closefriction.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (closefriction.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34879,10 +34890,10 @@ "cloudhustles.com": { "domain": "cloudhustles.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cloudhustles.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34890,10 +34901,10 @@ "cloudjumbo.com": { "domain": "cloudjumbo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cloudjumbo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34901,10 +34912,10 @@ "clovercabbage.com": { "domain": "clovercabbage.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (clovercabbage.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34912,10 +34923,10 @@ "clumsycar.com": { "domain": "clumsycar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (clumsycar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34923,10 +34934,10 @@ "coatfood.com": { "domain": "coatfood.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (coatfood.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34934,10 +34945,10 @@ "cobaltoverture.com": { "domain": "cobaltoverture.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cobaltoverture.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34945,10 +34956,10 @@ "coffeesidehustle.com": { "domain": "coffeesidehustle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (coffeesidehustle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34956,10 +34967,10 @@ "coldbalance.com": { "domain": "coldbalance.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (coldbalance.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34967,10 +34978,10 @@ "coldcreatives.com": { "domain": "coldcreatives.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (coldcreatives.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34978,10 +34989,10 @@ "colorfulafterthought.com": { "domain": "colorfulafterthought.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (colorfulafterthought.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -34989,10 +35000,10 @@ "colossalclouds.com": { "domain": "colossalclouds.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (colossalclouds.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35000,10 +35011,10 @@ "colossalcoat.com": { "domain": "colossalcoat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (colossalcoat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35011,10 +35022,10 @@ "colossalcry.com": { "domain": "colossalcry.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (colossalcry.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35022,10 +35033,10 @@ "combativedetail.com": { "domain": "combativedetail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (combativedetail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35033,10 +35044,10 @@ "combbit.com": { "domain": "combbit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (combbit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35044,10 +35055,10 @@ "combcattle.com": { "domain": "combcattle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (combcattle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35055,10 +35066,10 @@ "combcompetition.com": { "domain": "combcompetition.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (combcompetition.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35066,10 +35077,10 @@ "cometquote.com": { "domain": "cometquote.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cometquote.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35077,10 +35088,10 @@ "comfortablecheese.com": { "domain": "comfortablecheese.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (comfortablecheese.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35088,10 +35099,10 @@ "comfygoodness.com": { "domain": "comfygoodness.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (comfygoodness.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35099,10 +35110,10 @@ "companyparcel.com": { "domain": "companyparcel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (companyparcel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35110,10 +35121,10 @@ "comparereaction.com": { "domain": "comparereaction.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (comparereaction.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35121,10 +35132,10 @@ "compiledoctor.com": { "domain": "compiledoctor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (compiledoctor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35132,10 +35143,10 @@ "concernedchange.com": { "domain": "concernedchange.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (concernedchange.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35143,10 +35154,10 @@ "concernedchickens.com": { "domain": "concernedchickens.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (concernedchickens.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35154,10 +35165,10 @@ "condemnedcomb.com": { "domain": "condemnedcomb.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (condemnedcomb.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35165,10 +35176,10 @@ "conditionchange.com": { "domain": "conditionchange.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (conditionchange.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35176,10 +35187,10 @@ "conditioncrush.com": { "domain": "conditioncrush.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (conditioncrush.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35187,10 +35198,10 @@ "confesschairs.com": { "domain": "confesschairs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (confesschairs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35198,10 +35209,10 @@ "configchain.com": { "domain": "configchain.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (configchain.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35209,10 +35220,10 @@ "connectashelf.com": { "domain": "connectashelf.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (connectashelf.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35220,10 +35231,10 @@ "consciouschairs.com": { "domain": "consciouschairs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (consciouschairs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35231,10 +35242,10 @@ "consciouscheese.com": { "domain": "consciouscheese.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (consciouscheese.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35242,10 +35253,10 @@ "consciousdirt.com": { "domain": "consciousdirt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (consciousdirt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35253,10 +35264,10 @@ "consumerzero.com": { "domain": "consumerzero.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (consumerzero.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35264,10 +35275,10 @@ "controlcola.com": { "domain": "controlcola.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (controlcola.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35275,10 +35286,10 @@ "controlhall.com": { "domain": "controlhall.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (controlhall.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35286,10 +35297,10 @@ "convertbatch.com": { "domain": "convertbatch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (convertbatch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35297,10 +35308,10 @@ "cooingcoal.com": { "domain": "cooingcoal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cooingcoal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35308,10 +35319,10 @@ "coordinatedbedroom.com": { "domain": "coordinatedbedroom.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (coordinatedbedroom.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35319,10 +35330,10 @@ "coordinatedcoat.com": { "domain": "coordinatedcoat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (coordinatedcoat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35330,10 +35341,10 @@ "copycarpenter.com": { "domain": "copycarpenter.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (copycarpenter.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35341,10 +35352,10 @@ "copyrightaccesscontrols.com": { "domain": "copyrightaccesscontrols.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (copyrightaccesscontrols.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35352,10 +35363,10 @@ "coralreverie.com": { "domain": "coralreverie.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (coralreverie.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35363,10 +35374,10 @@ "corgibeachday.com": { "domain": "corgibeachday.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (corgibeachday.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35374,10 +35385,10 @@ "cosmicsculptor.com": { "domain": "cosmicsculptor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cosmicsculptor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35385,10 +35396,10 @@ "cosmosjackson.com": { "domain": "cosmosjackson.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cosmosjackson.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35396,10 +35407,10 @@ "courageousbaby.com": { "domain": "courageousbaby.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (courageousbaby.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35407,10 +35418,10 @@ "coverapparatus.com": { "domain": "coverapparatus.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (coverapparatus.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35418,10 +35429,10 @@ "coverlayer.com": { "domain": "coverlayer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (coverlayer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35429,10 +35440,10 @@ "cozydusk.com": { "domain": "cozydusk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cozydusk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35440,10 +35451,10 @@ "cozyhillside.com": { "domain": "cozyhillside.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cozyhillside.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35451,10 +35462,10 @@ "cozytryst.com": { "domain": "cozytryst.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cozytryst.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35462,10 +35473,10 @@ "crackedsafe.com": { "domain": "crackedsafe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (crackedsafe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35473,10 +35484,10 @@ "crafthenry.com": { "domain": "crafthenry.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (crafthenry.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35484,10 +35495,10 @@ "crashchance.com": { "domain": "crashchance.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (crashchance.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35495,10 +35506,10 @@ "craterbox.com": { "domain": "craterbox.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (craterbox.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35506,10 +35517,10 @@ "creatorcherry.com": { "domain": "creatorcherry.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (creatorcherry.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35517,10 +35528,10 @@ "creatorpassenger.com": { "domain": "creatorpassenger.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (creatorpassenger.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35528,10 +35539,10 @@ "creaturecabbage.com": { "domain": "creaturecabbage.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (creaturecabbage.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35539,10 +35550,10 @@ "crimsonmeadow.com": { "domain": "crimsonmeadow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (crimsonmeadow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35550,10 +35561,10 @@ "critictruck.com": { "domain": "critictruck.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (critictruck.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35561,10 +35572,10 @@ "crookedcreature.com": { "domain": "crookedcreature.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (crookedcreature.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35572,10 +35583,10 @@ "cruisetourist.com": { "domain": "cruisetourist.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cruisetourist.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35583,10 +35594,10 @@ "cryptvalue.com": { "domain": "cryptvalue.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cryptvalue.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35594,10 +35605,10 @@ "crystalboulevard.com": { "domain": "crystalboulevard.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (crystalboulevard.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35605,10 +35616,10 @@ "crystalstatus.com": { "domain": "crystalstatus.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (crystalstatus.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35616,10 +35627,10 @@ "cubchannel.com": { "domain": "cubchannel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cubchannel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35627,10 +35638,10 @@ "cubepins.com": { "domain": "cubepins.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cubepins.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35638,10 +35649,10 @@ "cuddlycake.com": { "domain": "cuddlycake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cuddlycake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35649,10 +35660,10 @@ "cuddlylunchroom.com": { "domain": "cuddlylunchroom.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cuddlylunchroom.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35660,10 +35671,10 @@ "culturedcamera.com": { "domain": "culturedcamera.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (culturedcamera.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35671,10 +35682,10 @@ "culturedfeather.com": { "domain": "culturedfeather.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (culturedfeather.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35682,10 +35693,10 @@ "cumbersomecar.com": { "domain": "cumbersomecar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cumbersomecar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35693,10 +35704,10 @@ "cumbersomecloud.com": { "domain": "cumbersomecloud.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cumbersomecloud.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35704,10 +35715,10 @@ "curiouschalk.com": { "domain": "curiouschalk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (curiouschalk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35715,10 +35726,10 @@ "curioussuccess.com": { "domain": "curioussuccess.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (curioussuccess.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35726,10 +35737,10 @@ "curlycannon.com": { "domain": "curlycannon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (curlycannon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35737,10 +35748,10 @@ "currentcollar.com": { "domain": "currentcollar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (currentcollar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35748,10 +35759,10 @@ "curtaincows.com": { "domain": "curtaincows.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (curtaincows.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35759,10 +35770,10 @@ "curvycord.com": { "domain": "curvycord.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (curvycord.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35770,10 +35781,10 @@ "curvycry.com": { "domain": "curvycry.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (curvycry.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35781,10 +35792,10 @@ "cushionpig.com": { "domain": "cushionpig.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cushionpig.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35792,10 +35803,10 @@ "cutcurrent.com": { "domain": "cutcurrent.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cutcurrent.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35803,10 +35814,10 @@ "cyclopsdial.com": { "domain": "cyclopsdial.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (cyclopsdial.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35814,10 +35825,10 @@ "dailydivision.com": { "domain": "dailydivision.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dailydivision.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35825,10 +35836,10 @@ "damagedadvice.com": { "domain": "damagedadvice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (damagedadvice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35836,10 +35847,10 @@ "damageddistance.com": { "domain": "damageddistance.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (damageddistance.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35847,10 +35858,10 @@ "dancemistake.com": { "domain": "dancemistake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dancemistake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35858,10 +35869,10 @@ "dandydune.com": { "domain": "dandydune.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dandydune.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35869,10 +35880,10 @@ "dandyglow.com": { "domain": "dandyglow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dandyglow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35880,10 +35891,10 @@ "dapperdiscussion.com": { "domain": "dapperdiscussion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dapperdiscussion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35891,10 +35902,10 @@ "datastoried.com": { "domain": "datastoried.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (datastoried.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35902,10 +35913,10 @@ "daughterstone.com": { "domain": "daughterstone.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (daughterstone.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35913,10 +35924,10 @@ "daymodern.com": { "domain": "daymodern.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (daymodern.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35924,10 +35935,10 @@ "dazzlingbook.com": { "domain": "dazzlingbook.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dazzlingbook.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35935,10 +35946,10 @@ "deafeningdock.com": { "domain": "deafeningdock.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (deafeningdock.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35946,10 +35957,10 @@ "deafeningdowntown.com": { "domain": "deafeningdowntown.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (deafeningdowntown.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35957,10 +35968,10 @@ "debonairdust.com": { "domain": "debonairdust.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (debonairdust.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35968,10 +35979,10 @@ "debonairtree.com": { "domain": "debonairtree.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (debonairtree.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35979,10 +35990,10 @@ "debugentity.com": { "domain": "debugentity.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (debugentity.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -35990,10 +36001,10 @@ "decidedrum.com": { "domain": "decidedrum.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (decidedrum.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36001,10 +36012,10 @@ "decisivedrawer.com": { "domain": "decisivedrawer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (decisivedrawer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36012,10 +36023,10 @@ "decisiveducks.com": { "domain": "decisiveducks.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (decisiveducks.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36023,10 +36034,10 @@ "decoycreation.com": { "domain": "decoycreation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (decoycreation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36034,10 +36045,10 @@ "deerbeginner.com": { "domain": "deerbeginner.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (deerbeginner.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36045,10 +36056,10 @@ "defeatedbadge.com": { "domain": "defeatedbadge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (defeatedbadge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36056,10 +36067,10 @@ "defensevest.com": { "domain": "defensevest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (defensevest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36067,10 +36078,10 @@ "degreechariot.com": { "domain": "degreechariot.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (degreechariot.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36078,10 +36089,10 @@ "delegatediscussion.com": { "domain": "delegatediscussion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (delegatediscussion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36089,10 +36100,10 @@ "delicatecascade.com": { "domain": "delicatecascade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (delicatecascade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36100,10 +36111,10 @@ "deliciousducks.com": { "domain": "deliciousducks.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (deliciousducks.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36111,10 +36122,10 @@ "deltafault.com": { "domain": "deltafault.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (deltafault.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36122,10 +36133,10 @@ "deluxecrate.com": { "domain": "deluxecrate.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (deluxecrate.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36133,10 +36144,10 @@ "dependenttrip.com": { "domain": "dependenttrip.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dependenttrip.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36144,10 +36155,10 @@ "desirebucket.com": { "domain": "desirebucket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (desirebucket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36155,10 +36166,10 @@ "desiredirt.com": { "domain": "desiredirt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (desiredirt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36166,10 +36177,10 @@ "detailedgovernment.com": { "domain": "detailedgovernment.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (detailedgovernment.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36177,10 +36188,10 @@ "detailedkitten.com": { "domain": "detailedkitten.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (detailedkitten.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36188,10 +36199,10 @@ "detectdinner.com": { "domain": "detectdinner.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (detectdinner.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36199,10 +36210,10 @@ "detourgame.com": { "domain": "detourgame.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (detourgame.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36210,10 +36221,10 @@ "deviceseal.com": { "domain": "deviceseal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (deviceseal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36221,10 +36232,10 @@ "deviceworkshop.com": { "domain": "deviceworkshop.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (deviceworkshop.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36232,10 +36243,10 @@ "dewdroplagoon.com": { "domain": "dewdroplagoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dewdroplagoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36243,10 +36254,10 @@ "difficultfog.com": { "domain": "difficultfog.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (difficultfog.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36254,10 +36265,10 @@ "digestiondrawer.com": { "domain": "digestiondrawer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (digestiondrawer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36265,10 +36276,10 @@ "dinnerquartz.com": { "domain": "dinnerquartz.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dinnerquartz.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36276,10 +36287,10 @@ "diplomahawaii.com": { "domain": "diplomahawaii.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (diplomahawaii.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36287,10 +36298,10 @@ "direfuldesk.com": { "domain": "direfuldesk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (direfuldesk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36298,10 +36309,10 @@ "discreetquarter.com": { "domain": "discreetquarter.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (discreetquarter.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36309,10 +36320,10 @@ "distributionneck.com": { "domain": "distributionneck.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (distributionneck.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36320,10 +36331,10 @@ "distributionpocket.com": { "domain": "distributionpocket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (distributionpocket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36331,10 +36342,10 @@ "distributiontomatoes.com": { "domain": "distributiontomatoes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (distributiontomatoes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36342,10 +36353,10 @@ "disturbedquiet.com": { "domain": "disturbedquiet.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (disturbedquiet.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36353,10 +36364,10 @@ "divehope.com": { "domain": "divehope.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (divehope.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36364,10 +36375,10 @@ "dk4ywix.com": { "domain": "dk4ywix.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dk4ywix.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36375,10 +36386,10 @@ "dogsonclouds.com": { "domain": "dogsonclouds.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dogsonclouds.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36386,10 +36397,10 @@ "dollardelta.com": { "domain": "dollardelta.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dollardelta.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36397,10 +36408,10 @@ "doubledefend.com": { "domain": "doubledefend.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (doubledefend.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36408,10 +36419,10 @@ "doubtdrawer.com": { "domain": "doubtdrawer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (doubtdrawer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36419,10 +36430,10 @@ "dq95d35.com": { "domain": "dq95d35.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dq95d35.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36430,10 +36441,10 @@ "dreamycanyon.com": { "domain": "dreamycanyon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dreamycanyon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36441,10 +36452,10 @@ "driftpizza.com": { "domain": "driftpizza.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (driftpizza.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36452,10 +36463,10 @@ "drollwharf.com": { "domain": "drollwharf.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (drollwharf.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36463,10 +36474,10 @@ "drydrum.com": { "domain": "drydrum.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (drydrum.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36474,10 +36485,10 @@ "dustydime.com": { "domain": "dustydime.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dustydime.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36485,10 +36496,10 @@ "dustyhammer.com": { "domain": "dustyhammer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (dustyhammer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36496,10 +36507,10 @@ "eagereden.com": { "domain": "eagereden.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (eagereden.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36507,10 +36518,10 @@ "eagerflame.com": { "domain": "eagerflame.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (eagerflame.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36518,10 +36529,10 @@ "eagerknight.com": { "domain": "eagerknight.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (eagerknight.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36529,10 +36540,10 @@ "earthyfarm.com": { "domain": "earthyfarm.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (earthyfarm.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36540,10 +36551,10 @@ "eatablesquare.com": { "domain": "eatablesquare.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (eatablesquare.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36551,10 +36562,10 @@ "echochief.com": { "domain": "echochief.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (echochief.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36562,10 +36573,10 @@ "echoinghaven.com": { "domain": "echoinghaven.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (echoinghaven.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36573,10 +36584,10 @@ "effervescentcoral.com": { "domain": "effervescentcoral.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (effervescentcoral.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36584,10 +36595,10 @@ "effervescentvista.com": { "domain": "effervescentvista.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (effervescentvista.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36595,10 +36606,10 @@ "effulgentnook.com": { "domain": "effulgentnook.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (effulgentnook.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36606,10 +36617,10 @@ "effulgenttempest.com": { "domain": "effulgenttempest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (effulgenttempest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36617,10 +36628,10 @@ "ejyymghi.com": { "domain": "ejyymghi.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ejyymghi.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36628,10 +36639,10 @@ "elasticchange.com": { "domain": "elasticchange.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (elasticchange.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36639,10 +36650,10 @@ "elderlybean.com": { "domain": "elderlybean.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (elderlybean.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36650,10 +36661,10 @@ "elderlytown.com": { "domain": "elderlytown.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (elderlytown.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36661,10 +36672,10 @@ "elephantqueue.com": { "domain": "elephantqueue.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (elephantqueue.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36672,10 +36683,10 @@ "elusivebreeze.com": { "domain": "elusivebreeze.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (elusivebreeze.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36683,10 +36694,10 @@ "elusivecascade.com": { "domain": "elusivecascade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (elusivecascade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36694,10 +36705,10 @@ "elysiantraverse.com": { "domain": "elysiantraverse.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (elysiantraverse.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36705,10 +36716,10 @@ "embellishedmeadow.com": { "domain": "embellishedmeadow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (embellishedmeadow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36716,10 +36727,10 @@ "embermosaic.com": { "domain": "embermosaic.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (embermosaic.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36727,10 +36738,10 @@ "emberwhisper.com": { "domain": "emberwhisper.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (emberwhisper.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36738,10 +36749,10 @@ "eminentbubble.com": { "domain": "eminentbubble.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (eminentbubble.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36749,10 +36760,10 @@ "eminentend.com": { "domain": "eminentend.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (eminentend.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36760,10 +36771,10 @@ "emptyescort.com": { "domain": "emptyescort.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (emptyescort.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36771,10 +36782,10 @@ "enchantedskyline.com": { "domain": "enchantedskyline.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enchantedskyline.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36782,10 +36793,10 @@ "enchantingdiscovery.com": { "domain": "enchantingdiscovery.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enchantingdiscovery.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36793,10 +36804,10 @@ "enchantingenchantment.com": { "domain": "enchantingenchantment.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enchantingenchantment.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36804,10 +36815,10 @@ "enchantingmystique.com": { "domain": "enchantingmystique.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enchantingmystique.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36815,10 +36826,10 @@ "enchantingtundra.com": { "domain": "enchantingtundra.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enchantingtundra.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36826,10 +36837,10 @@ "enchantingvalley.com": { "domain": "enchantingvalley.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enchantingvalley.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36837,10 +36848,10 @@ "encourageshock.com": { "domain": "encourageshock.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (encourageshock.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36848,10 +36859,10 @@ "endlesstrust.com": { "domain": "endlesstrust.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (endlesstrust.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36859,10 +36870,10 @@ "endurablebulb.com": { "domain": "endurablebulb.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (endurablebulb.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36870,10 +36881,10 @@ "energeticexample.com": { "domain": "energeticexample.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (energeticexample.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36881,10 +36892,10 @@ "energeticladybug.com": { "domain": "energeticladybug.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (energeticladybug.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36892,10 +36903,10 @@ "engineergrape.com": { "domain": "engineergrape.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (engineergrape.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36903,10 +36914,10 @@ "engineertrick.com": { "domain": "engineertrick.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (engineertrick.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36914,10 +36925,10 @@ "enigmaticblossom.com": { "domain": "enigmaticblossom.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enigmaticblossom.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36925,10 +36936,10 @@ "enigmaticcanyon.com": { "domain": "enigmaticcanyon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enigmaticcanyon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36936,10 +36947,10 @@ "enigmaticvoyage.com": { "domain": "enigmaticvoyage.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enigmaticvoyage.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36947,10 +36958,10 @@ "enormousfoot.com": { "domain": "enormousfoot.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enormousfoot.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36958,10 +36969,10 @@ "enterdrama.com": { "domain": "enterdrama.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enterdrama.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36969,10 +36980,10 @@ "entertainskin.com": { "domain": "entertainskin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (entertainskin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36980,10 +36991,10 @@ "enthusiastictemper.com": { "domain": "enthusiastictemper.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enthusiastictemper.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -36991,10 +37002,10 @@ "enviousthread.com": { "domain": "enviousthread.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (enviousthread.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37002,10 +37013,10 @@ "equablekettle.com": { "domain": "equablekettle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (equablekettle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37013,10 +37024,10 @@ "etherealbamboo.com": { "domain": "etherealbamboo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (etherealbamboo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37024,10 +37035,10 @@ "ethereallagoon.com": { "domain": "ethereallagoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ethereallagoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37035,10 +37046,10 @@ "etherealpinnacle.com": { "domain": "etherealpinnacle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (etherealpinnacle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37046,10 +37057,10 @@ "etherealquasar.com": { "domain": "etherealquasar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (etherealquasar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37057,10 +37068,10 @@ "etherealripple.com": { "domain": "etherealripple.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (etherealripple.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37068,10 +37079,10 @@ "evanescentedge.com": { "domain": "evanescentedge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (evanescentedge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37079,10 +37090,10 @@ "evasivejar.com": { "domain": "evasivejar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (evasivejar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37090,10 +37101,10 @@ "eventexistence.com": { "domain": "eventexistence.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (eventexistence.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37101,10 +37112,10 @@ "exampleshake.com": { "domain": "exampleshake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (exampleshake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37112,10 +37123,10 @@ "excitingtub.com": { "domain": "excitingtub.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (excitingtub.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37123,10 +37134,10 @@ "exclusivebrass.com": { "domain": "exclusivebrass.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (exclusivebrass.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37134,10 +37145,10 @@ "executeknowledge.com": { "domain": "executeknowledge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (executeknowledge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37145,10 +37156,10 @@ "exhibitsneeze.com": { "domain": "exhibitsneeze.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (exhibitsneeze.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37156,10 +37167,10 @@ "exquisiteartisanship.com": { "domain": "exquisiteartisanship.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (exquisiteartisanship.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37167,10 +37178,10 @@ "extractobservation.com": { "domain": "extractobservation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (extractobservation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37178,10 +37189,10 @@ "extralocker.com": { "domain": "extralocker.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (extralocker.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37189,10 +37200,10 @@ "extramonies.com": { "domain": "extramonies.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (extramonies.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37200,10 +37211,10 @@ "exuberantedge.com": { "domain": "exuberantedge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (exuberantedge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37211,10 +37222,10 @@ "facilitatebreakfast.com": { "domain": "facilitatebreakfast.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (facilitatebreakfast.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37222,10 +37233,10 @@ "fadechildren.com": { "domain": "fadechildren.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fadechildren.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37233,10 +37244,10 @@ "fadedsnow.com": { "domain": "fadedsnow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fadedsnow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37244,10 +37255,10 @@ "fairfeeling.com": { "domain": "fairfeeling.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fairfeeling.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37255,10 +37266,21 @@ "fairiesbranch.com": { "domain": "fairiesbranch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fairiesbranch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "fairygaze.com": { + "domain": "fairygaze.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (fairygaze.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37266,10 +37288,10 @@ "fairytaleflame.com": { "domain": "fairytaleflame.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fairytaleflame.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37277,10 +37299,10 @@ "falseframe.com": { "domain": "falseframe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (falseframe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37288,10 +37310,10 @@ "familiarrod.com": { "domain": "familiarrod.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (familiarrod.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37299,10 +37321,10 @@ "fancyactivity.com": { "domain": "fancyactivity.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fancyactivity.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37310,10 +37332,10 @@ "fancydune.com": { "domain": "fancydune.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fancydune.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37321,10 +37343,10 @@ "fancygrove.com": { "domain": "fancygrove.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fancygrove.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37332,10 +37354,10 @@ "fangfeeling.com": { "domain": "fangfeeling.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fangfeeling.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37343,10 +37365,10 @@ "fantastictone.com": { "domain": "fantastictone.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fantastictone.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37354,10 +37376,10 @@ "farethief.com": { "domain": "farethief.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (farethief.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37365,10 +37387,10 @@ "farshake.com": { "domain": "farshake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (farshake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37376,10 +37398,10 @@ "farsnails.com": { "domain": "farsnails.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (farsnails.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37387,10 +37409,10 @@ "fastenfather.com": { "domain": "fastenfather.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fastenfather.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37398,10 +37420,10 @@ "fasterfineart.com": { "domain": "fasterfineart.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fasterfineart.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37409,10 +37431,10 @@ "fasterjson.com": { "domain": "fasterjson.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fasterjson.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37420,10 +37442,10 @@ "fatcoil.com": { "domain": "fatcoil.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fatcoil.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37431,10 +37453,10 @@ "faucetfoot.com": { "domain": "faucetfoot.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (faucetfoot.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37442,10 +37464,10 @@ "faultycanvas.com": { "domain": "faultycanvas.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (faultycanvas.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37453,10 +37475,10 @@ "fearfulfish.com": { "domain": "fearfulfish.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fearfulfish.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37464,10 +37486,10 @@ "fearfulmint.com": { "domain": "fearfulmint.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fearfulmint.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37475,10 +37497,10 @@ "fearlesstramp.com": { "domain": "fearlesstramp.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fearlesstramp.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37486,10 +37508,10 @@ "featherstage.com": { "domain": "featherstage.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (featherstage.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37497,10 +37519,10 @@ "feeblestamp.com": { "domain": "feeblestamp.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (feeblestamp.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37508,10 +37530,10 @@ "feignedfaucet.com": { "domain": "feignedfaucet.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (feignedfaucet.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37519,10 +37541,10 @@ "fernwaycloud.com": { "domain": "fernwaycloud.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fernwaycloud.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37530,10 +37552,10 @@ "fertilefeeling.com": { "domain": "fertilefeeling.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fertilefeeling.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37541,10 +37563,10 @@ "fewjuice.com": { "domain": "fewjuice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fewjuice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37552,10 +37574,10 @@ "fewkittens.com": { "domain": "fewkittens.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fewkittens.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37563,10 +37585,10 @@ "finalizeforce.com": { "domain": "finalizeforce.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (finalizeforce.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37574,10 +37596,10 @@ "finestpiece.com": { "domain": "finestpiece.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (finestpiece.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37585,10 +37607,10 @@ "finitecube.com": { "domain": "finitecube.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (finitecube.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37596,10 +37618,10 @@ "firecatfilms.com": { "domain": "firecatfilms.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (firecatfilms.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37607,10 +37629,10 @@ "fireworkcamp.com": { "domain": "fireworkcamp.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fireworkcamp.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37618,10 +37640,10 @@ "firstendpoint.com": { "domain": "firstendpoint.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (firstendpoint.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37629,10 +37651,10 @@ "firstfrogs.com": { "domain": "firstfrogs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (firstfrogs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37640,10 +37662,10 @@ "firsttexture.com": { "domain": "firsttexture.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (firsttexture.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37651,10 +37673,10 @@ "fitmessage.com": { "domain": "fitmessage.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fitmessage.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37662,10 +37684,10 @@ "fivesidedsquare.com": { "domain": "fivesidedsquare.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fivesidedsquare.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37673,10 +37695,10 @@ "flakyfeast.com": { "domain": "flakyfeast.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flakyfeast.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37684,10 +37706,10 @@ "flameuncle.com": { "domain": "flameuncle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flameuncle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37695,10 +37717,10 @@ "flimsycircle.com": { "domain": "flimsycircle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flimsycircle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37706,10 +37728,10 @@ "flimsythought.com": { "domain": "flimsythought.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flimsythought.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37717,10 +37739,10 @@ "flippedfunnel.com": { "domain": "flippedfunnel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flippedfunnel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37728,10 +37750,10 @@ "floodprincipal.com": { "domain": "floodprincipal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (floodprincipal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37739,10 +37761,10 @@ "flourishingcollaboration.com": { "domain": "flourishingcollaboration.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flourishingcollaboration.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37750,10 +37772,10 @@ "flourishingendeavor.com": { "domain": "flourishingendeavor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flourishingendeavor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37761,10 +37783,10 @@ "flourishinginnovation.com": { "domain": "flourishinginnovation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flourishinginnovation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37772,10 +37794,10 @@ "flourishingpartnership.com": { "domain": "flourishingpartnership.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flourishingpartnership.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37783,10 +37805,10 @@ "flowersornament.com": { "domain": "flowersornament.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flowersornament.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37794,10 +37816,10 @@ "flowerycreature.com": { "domain": "flowerycreature.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (flowerycreature.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37805,10 +37827,10 @@ "floweryfact.com": { "domain": "floweryfact.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (floweryfact.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37816,10 +37838,10 @@ "floweryoperation.com": { "domain": "floweryoperation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (floweryoperation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37827,10 +37849,10 @@ "foambench.com": { "domain": "foambench.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (foambench.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37838,10 +37860,10 @@ "followborder.com": { "domain": "followborder.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (followborder.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37849,10 +37871,10 @@ "forecasttiger.com": { "domain": "forecasttiger.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (forecasttiger.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37860,10 +37882,10 @@ "foretellfifth.com": { "domain": "foretellfifth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (foretellfifth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37871,10 +37893,10 @@ "forevergears.com": { "domain": "forevergears.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (forevergears.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37882,10 +37904,10 @@ "forgetfulflowers.com": { "domain": "forgetfulflowers.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (forgetfulflowers.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37893,10 +37915,10 @@ "forgetfulsnail.com": { "domain": "forgetfulsnail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (forgetfulsnail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37904,10 +37926,10 @@ "fractalcoast.com": { "domain": "fractalcoast.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fractalcoast.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37915,10 +37937,10 @@ "framebanana.com": { "domain": "framebanana.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (framebanana.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37926,10 +37948,10 @@ "franticroof.com": { "domain": "franticroof.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (franticroof.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37937,10 +37959,10 @@ "frantictrail.com": { "domain": "frantictrail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (frantictrail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37948,10 +37970,10 @@ "frazzleart.com": { "domain": "frazzleart.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (frazzleart.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37959,10 +37981,10 @@ "freakyglass.com": { "domain": "freakyglass.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (freakyglass.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37970,10 +37992,10 @@ "frequentflesh.com": { "domain": "frequentflesh.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (frequentflesh.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37981,10 +38003,10 @@ "friendlycrayon.com": { "domain": "friendlycrayon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (friendlycrayon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -37992,10 +38014,10 @@ "friendlyfold.com": { "domain": "friendlyfold.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (friendlyfold.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38003,10 +38025,10 @@ "friendwool.com": { "domain": "friendwool.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (friendwool.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38014,10 +38036,10 @@ "frightenedpotato.com": { "domain": "frightenedpotato.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (frightenedpotato.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38025,10 +38047,10 @@ "frogator.com": { "domain": "frogator.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (frogator.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38036,10 +38058,10 @@ "frogtray.com": { "domain": "frogtray.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (frogtray.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38047,10 +38069,10 @@ "frugalfiestas.com": { "domain": "frugalfiestas.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (frugalfiestas.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38058,10 +38080,10 @@ "fumblingform.com": { "domain": "fumblingform.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fumblingform.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38069,10 +38091,10 @@ "functionalcrown.com": { "domain": "functionalcrown.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (functionalcrown.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38080,10 +38102,10 @@ "funoverbored.com": { "domain": "funoverbored.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (funoverbored.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38091,10 +38113,10 @@ "funoverflow.com": { "domain": "funoverflow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (funoverflow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38102,10 +38124,10 @@ "furnstudio.com": { "domain": "furnstudio.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (furnstudio.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38113,10 +38135,10 @@ "furryfork.com": { "domain": "furryfork.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (furryfork.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38124,10 +38146,10 @@ "furryhorses.com": { "domain": "furryhorses.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (furryhorses.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38135,10 +38157,10 @@ "futuristicapparatus.com": { "domain": "futuristicapparatus.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (futuristicapparatus.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38146,10 +38168,10 @@ "futuristicfairies.com": { "domain": "futuristicfairies.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (futuristicfairies.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38157,10 +38179,10 @@ "futuristicfifth.com": { "domain": "futuristicfifth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (futuristicfifth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38168,10 +38190,10 @@ "futuristicframe.com": { "domain": "futuristicframe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (futuristicframe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38179,10 +38201,10 @@ "fuzzyaudio.com": { "domain": "fuzzyaudio.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fuzzyaudio.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38190,10 +38212,10 @@ "fuzzyerror.com": { "domain": "fuzzyerror.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fuzzyerror.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38201,10 +38223,10 @@ "fvl1f.pw": { "domain": "fvl1f.pw", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (fvl1f.pw)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38212,10 +38234,10 @@ "gardenovens.com": { "domain": "gardenovens.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gardenovens.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38223,10 +38245,10 @@ "gaudyairplane.com": { "domain": "gaudyairplane.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gaudyairplane.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38234,10 +38256,10 @@ "geekactive.com": { "domain": "geekactive.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (geekactive.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38245,10 +38267,10 @@ "generalprose.com": { "domain": "generalprose.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (generalprose.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38256,10 +38278,10 @@ "generateoffice.com": { "domain": "generateoffice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (generateoffice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38267,10 +38289,10 @@ "giantsvessel.com": { "domain": "giantsvessel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (giantsvessel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38278,10 +38300,10 @@ "giddycoat.com": { "domain": "giddycoat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (giddycoat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38289,10 +38311,10 @@ "gitcrumbs.com": { "domain": "gitcrumbs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gitcrumbs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38300,10 +38322,10 @@ "givevacation.com": { "domain": "givevacation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (givevacation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38311,10 +38333,10 @@ "gladglen.com": { "domain": "gladglen.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gladglen.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38322,10 +38344,10 @@ "gladysway.com": { "domain": "gladysway.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gladysway.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38333,10 +38355,10 @@ "glamhawk.com": { "domain": "glamhawk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (glamhawk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38344,10 +38366,10 @@ "gleamingcow.com": { "domain": "gleamingcow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gleamingcow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38355,10 +38377,10 @@ "gleaminghaven.com": { "domain": "gleaminghaven.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gleaminghaven.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38366,10 +38388,10 @@ "glisteningguide.com": { "domain": "glisteningguide.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (glisteningguide.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38377,10 +38399,10 @@ "glisteningsign.com": { "domain": "glisteningsign.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (glisteningsign.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38388,10 +38410,10 @@ "glitteringbrook.com": { "domain": "glitteringbrook.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (glitteringbrook.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38399,10 +38421,10 @@ "glowingmeadow.com": { "domain": "glowingmeadow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (glowingmeadow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38410,10 +38432,10 @@ "gluedpixel.com": { "domain": "gluedpixel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gluedpixel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38421,10 +38443,10 @@ "goldfishgrowth.com": { "domain": "goldfishgrowth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (goldfishgrowth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38432,10 +38454,10 @@ "gondolagnome.com": { "domain": "gondolagnome.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gondolagnome.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38443,10 +38465,10 @@ "goodbark.com": { "domain": "goodbark.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (goodbark.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38454,10 +38476,10 @@ "gracefulmilk.com": { "domain": "gracefulmilk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gracefulmilk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38465,10 +38487,10 @@ "grandfatherguitar.com": { "domain": "grandfatherguitar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (grandfatherguitar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38476,10 +38498,10 @@ "gravitygive.com": { "domain": "gravitygive.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gravitygive.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38487,10 +38509,10 @@ "gravitykick.com": { "domain": "gravitykick.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gravitykick.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38498,10 +38520,10 @@ "grayoranges.com": { "domain": "grayoranges.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (grayoranges.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38509,10 +38531,10 @@ "grayreceipt.com": { "domain": "grayreceipt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (grayreceipt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38520,10 +38542,10 @@ "greyinstrument.com": { "domain": "greyinstrument.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (greyinstrument.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38531,10 +38553,10 @@ "gripcorn.com": { "domain": "gripcorn.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gripcorn.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38542,10 +38564,10 @@ "groovyornament.com": { "domain": "groovyornament.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (groovyornament.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38553,10 +38575,10 @@ "grouchybrothers.com": { "domain": "grouchybrothers.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (grouchybrothers.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38564,10 +38586,10 @@ "grouchypush.com": { "domain": "grouchypush.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (grouchypush.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38575,10 +38597,10 @@ "grumpydime.com": { "domain": "grumpydime.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (grumpydime.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38586,10 +38608,10 @@ "grumpydrawer.com": { "domain": "grumpydrawer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (grumpydrawer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38597,10 +38619,10 @@ "guardeddirection.com": { "domain": "guardeddirection.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (guardeddirection.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38608,10 +38630,10 @@ "guardedschool.com": { "domain": "guardedschool.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (guardedschool.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38619,10 +38641,10 @@ "guessdetail.com": { "domain": "guessdetail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (guessdetail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38630,10 +38652,10 @@ "guidecent.com": { "domain": "guidecent.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (guidecent.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38641,10 +38663,10 @@ "guildalpha.com": { "domain": "guildalpha.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (guildalpha.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38652,10 +38674,10 @@ "gulliblegrip.com": { "domain": "gulliblegrip.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gulliblegrip.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38663,10 +38685,10 @@ "gustocooking.com": { "domain": "gustocooking.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gustocooking.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38674,10 +38696,10 @@ "gustygrandmother.com": { "domain": "gustygrandmother.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (gustygrandmother.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38685,10 +38707,10 @@ "h78xb.pw": { "domain": "h78xb.pw", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (h78xb.pw)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38696,10 +38718,10 @@ "habitualhumor.com": { "domain": "habitualhumor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (habitualhumor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38707,10 +38729,10 @@ "halcyoncanyon.com": { "domain": "halcyoncanyon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (halcyoncanyon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38718,10 +38740,10 @@ "halcyonsculpture.com": { "domain": "halcyonsculpture.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (halcyonsculpture.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38729,10 +38751,10 @@ "hallowedinvention.com": { "domain": "hallowedinvention.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hallowedinvention.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38740,10 +38762,10 @@ "haltingdivision.com": { "domain": "haltingdivision.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (haltingdivision.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38751,10 +38773,10 @@ "haltinggold.com": { "domain": "haltinggold.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (haltinggold.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38762,10 +38784,10 @@ "handleteeth.com": { "domain": "handleteeth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (handleteeth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38773,10 +38795,10 @@ "handnorth.com": { "domain": "handnorth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (handnorth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38784,10 +38806,10 @@ "handsomehose.com": { "domain": "handsomehose.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (handsomehose.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38795,10 +38817,10 @@ "handsomeindustry.com": { "domain": "handsomeindustry.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (handsomeindustry.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38806,10 +38828,10 @@ "handsomelythumb.com": { "domain": "handsomelythumb.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (handsomelythumb.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38817,10 +38839,10 @@ "handsomeyam.com": { "domain": "handsomeyam.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (handsomeyam.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38828,10 +38850,10 @@ "handyfield.com": { "domain": "handyfield.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (handyfield.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38839,10 +38861,10 @@ "handyfireman.com": { "domain": "handyfireman.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (handyfireman.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38850,10 +38872,10 @@ "handyincrease.com": { "domain": "handyincrease.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (handyincrease.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38861,10 +38883,10 @@ "haplesshydrant.com": { "domain": "haplesshydrant.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (haplesshydrant.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38872,10 +38894,10 @@ "haplessland.com": { "domain": "haplessland.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (haplessland.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38883,10 +38905,10 @@ "happysponge.com": { "domain": "happysponge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (happysponge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38894,10 +38916,10 @@ "harborcub.com": { "domain": "harborcub.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (harborcub.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38905,10 +38927,10 @@ "harmonicbamboo.com": { "domain": "harmonicbamboo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (harmonicbamboo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38916,21 +38938,10 @@ "harmonywing.com": { "domain": "harmonywing.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (harmonywing.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, - "fingerprinting": 1, - "cookies": 0.01, - "default": "block" - }, - "hatefulrequest.com": { - "domain": "hatefulrequest.com", - "owner": { - "name": "Leven Labs, Inc. DBA Admiral", - "displayName": "Admiral" - }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38938,10 +38949,10 @@ "headydegree.com": { "domain": "headydegree.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (headydegree.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38949,10 +38960,10 @@ "headyhook.com": { "domain": "headyhook.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (headyhook.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38960,10 +38971,10 @@ "healflowers.com": { "domain": "healflowers.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (healflowers.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38971,10 +38982,10 @@ "hearinglizards.com": { "domain": "hearinglizards.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hearinglizards.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38982,10 +38993,10 @@ "heartbreakingmind.com": { "domain": "heartbreakingmind.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (heartbreakingmind.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -38993,10 +39004,10 @@ "hearthorn.com": { "domain": "hearthorn.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hearthorn.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39004,10 +39015,10 @@ "heavydetail.com": { "domain": "heavydetail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (heavydetail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39015,10 +39026,10 @@ "heavyplayground.com": { "domain": "heavyplayground.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (heavyplayground.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39026,10 +39037,10 @@ "helpcollar.com": { "domain": "helpcollar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (helpcollar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39037,10 +39048,10 @@ "helpflame.com": { "domain": "helpflame.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (helpflame.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39048,10 +39059,10 @@ "hfc195b.com": { "domain": "hfc195b.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hfc195b.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39059,10 +39070,10 @@ "highfalutinbox.com": { "domain": "highfalutinbox.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (highfalutinbox.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39070,10 +39081,10 @@ "highfalutinhoney.com": { "domain": "highfalutinhoney.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (highfalutinhoney.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39081,10 +39092,10 @@ "hilariouszinc.com": { "domain": "hilariouszinc.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hilariouszinc.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39092,10 +39103,10 @@ "historicalbeam.com": { "domain": "historicalbeam.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (historicalbeam.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39103,10 +39114,21 @@ "homelycrown.com": { "domain": "homelycrown.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (homelycrown.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "homeslick.com": { + "domain": "homeslick.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (homeslick.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39114,10 +39136,10 @@ "honeybulb.com": { "domain": "honeybulb.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (honeybulb.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39125,10 +39147,10 @@ "honeywhipped.com": { "domain": "honeywhipped.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (honeywhipped.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39136,10 +39158,10 @@ "honorablehydrant.com": { "domain": "honorablehydrant.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (honorablehydrant.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39147,10 +39169,10 @@ "horsenectar.com": { "domain": "horsenectar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (horsenectar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39158,10 +39180,10 @@ "hospitablehall.com": { "domain": "hospitablehall.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hospitablehall.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39169,10 +39191,10 @@ "hospitablehat.com": { "domain": "hospitablehat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hospitablehat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39180,10 +39202,10 @@ "howdyinbox.com": { "domain": "howdyinbox.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (howdyinbox.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39191,10 +39213,10 @@ "humdrumhobbies.com": { "domain": "humdrumhobbies.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (humdrumhobbies.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39202,10 +39224,10 @@ "humdrumtouch.com": { "domain": "humdrumtouch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (humdrumtouch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39213,10 +39235,10 @@ "hurtgrape.com": { "domain": "hurtgrape.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hurtgrape.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39224,10 +39246,10 @@ "hypnoticwound.com": { "domain": "hypnoticwound.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hypnoticwound.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39235,10 +39257,10 @@ "hystericalcloth.com": { "domain": "hystericalcloth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hystericalcloth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39246,10 +39268,10 @@ "hystericalfinger.com": { "domain": "hystericalfinger.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (hystericalfinger.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39257,10 +39279,10 @@ "i9w8p.pw": { "domain": "i9w8p.pw", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (i9w8p.pw)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39268,10 +39290,10 @@ "idolscene.com": { "domain": "idolscene.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (idolscene.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39279,10 +39301,10 @@ "idyllicjazz.com": { "domain": "idyllicjazz.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (idyllicjazz.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39290,10 +39312,10 @@ "illinvention.com": { "domain": "illinvention.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (illinvention.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39301,10 +39323,10 @@ "illustriousoatmeal.com": { "domain": "illustriousoatmeal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (illustriousoatmeal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39312,10 +39334,10 @@ "immensehoney.com": { "domain": "immensehoney.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (immensehoney.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39323,10 +39345,10 @@ "imminentshake.com": { "domain": "imminentshake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (imminentshake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39334,10 +39356,10 @@ "importantmeat.com": { "domain": "importantmeat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (importantmeat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39345,10 +39367,10 @@ "importedincrease.com": { "domain": "importedincrease.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (importedincrease.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39356,10 +39378,10 @@ "importedinsect.com": { "domain": "importedinsect.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (importedinsect.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39367,10 +39389,10 @@ "importlocate.com": { "domain": "importlocate.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (importlocate.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39378,10 +39400,10 @@ "impossibleexpansion.com": { "domain": "impossibleexpansion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (impossibleexpansion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39389,10 +39411,10 @@ "impossiblemove.com": { "domain": "impossiblemove.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (impossiblemove.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39400,10 +39422,10 @@ "impulsejewel.com": { "domain": "impulsejewel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (impulsejewel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39411,10 +39433,10 @@ "impulselumber.com": { "domain": "impulselumber.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (impulselumber.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39422,10 +39444,10 @@ "incomehippo.com": { "domain": "incomehippo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (incomehippo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39433,10 +39455,10 @@ "incompetentjoke.com": { "domain": "incompetentjoke.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (incompetentjoke.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39444,10 +39466,10 @@ "inconclusiveaction.com": { "domain": "inconclusiveaction.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (inconclusiveaction.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39455,10 +39477,10 @@ "infamousstream.com": { "domain": "infamousstream.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (infamousstream.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39466,10 +39488,10 @@ "innocentlamp.com": { "domain": "innocentlamp.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (innocentlamp.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39477,10 +39499,10 @@ "innocentwax.com": { "domain": "innocentwax.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (innocentwax.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39488,10 +39510,10 @@ "inputicicle.com": { "domain": "inputicicle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (inputicicle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39499,10 +39521,10 @@ "inquisitiveice.com": { "domain": "inquisitiveice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (inquisitiveice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39510,10 +39532,10 @@ "inquisitiveinvention.com": { "domain": "inquisitiveinvention.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (inquisitiveinvention.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39521,10 +39543,10 @@ "intelligentscissors.com": { "domain": "intelligentscissors.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (intelligentscissors.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39532,10 +39554,10 @@ "intentlens.com": { "domain": "intentlens.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (intentlens.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39543,10 +39565,10 @@ "interestdust.com": { "domain": "interestdust.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (interestdust.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39554,10 +39576,10 @@ "internalcondition.com": { "domain": "internalcondition.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (internalcondition.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39565,10 +39587,10 @@ "internalsink.com": { "domain": "internalsink.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (internalsink.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39576,10 +39598,32 @@ "iotapool.com": { "domain": "iotapool.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (iotapool.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "iridescentdusk.com": { + "domain": "iridescentdusk.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (iridescentdusk.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "iridescentvista.com": { + "domain": "iridescentvista.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (iridescentvista.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39587,10 +39631,10 @@ "irritatingfog.com": { "domain": "irritatingfog.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (irritatingfog.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39598,10 +39642,10 @@ "itemslice.com": { "domain": "itemslice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (itemslice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39609,10 +39653,10 @@ "ivykiosk.com": { "domain": "ivykiosk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ivykiosk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39620,10 +39664,10 @@ "jadeitite.com": { "domain": "jadeitite.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (jadeitite.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39631,10 +39675,10 @@ "jaderooster.com": { "domain": "jaderooster.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (jaderooster.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39642,10 +39686,10 @@ "jailbulb.com": { "domain": "jailbulb.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (jailbulb.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39653,10 +39697,10 @@ "joblessdrum.com": { "domain": "joblessdrum.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (joblessdrum.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39664,10 +39708,10 @@ "jollylens.com": { "domain": "jollylens.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (jollylens.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39675,32 +39719,43 @@ "joyfulkeen.com": { "domain": "joyfulkeen.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (joyfulkeen.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" }, - "joyoussurprise.com": { - "domain": "joyoussurprise.com", + "joyfulvibe.com": { + "domain": "joyfulvibe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (joyfulvibe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" }, - "jubilantaura.com": { - "domain": "jubilantaura.com", + "joyoussurprise.com": { + "domain": "joyoussurprise.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (joyoussurprise.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "jubilantaura.com": { + "domain": "jubilantaura.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (jubilantaura.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39708,10 +39763,10 @@ "jubilantcanyon.com": { "domain": "jubilantcanyon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (jubilantcanyon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39719,10 +39774,10 @@ "jubilantcascade.com": { "domain": "jubilantcascade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (jubilantcascade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39730,10 +39785,43 @@ "jubilantglimmer.com": { "domain": "jubilantglimmer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (jubilantglimmer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "jubilanthush.com": { + "domain": "jubilanthush.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (jubilanthush.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "jubilantlagoon.com": { + "domain": "jubilantlagoon.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (jubilantlagoon.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "jubilantpinnacle.com": { + "domain": "jubilantpinnacle.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (jubilantpinnacle.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39741,10 +39829,21 @@ "jubilanttempest.com": { "domain": "jubilanttempest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (jubilanttempest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "jubilantvista.com": { + "domain": "jubilantvista.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (jubilantvista.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39752,10 +39851,32 @@ "jubilantwhisper.com": { "domain": "jubilantwhisper.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (jubilantwhisper.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "juicebard.com": { + "domain": "juicebard.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (juicebard.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "juiceblocks.com": { + "domain": "juiceblocks.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (juiceblocks.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39763,10 +39884,21 @@ "justicejudo.com": { "domain": "justicejudo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (justicejudo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "justwebcards.com": { + "domain": "justwebcards.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (justwebcards.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39774,10 +39906,10 @@ "k54nw.pw": { "domain": "k54nw.pw", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (k54nw.pw)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39785,10 +39917,10 @@ "kaputquill.com": { "domain": "kaputquill.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (kaputquill.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39796,10 +39928,21 @@ "keenquill.com": { "domain": "keenquill.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (keenquill.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "kibbleandbytes.com": { + "domain": "kibbleandbytes.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (kibbleandbytes.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39807,10 +39950,10 @@ "kindhush.com": { "domain": "kindhush.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (kindhush.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39818,10 +39961,10 @@ "kitesquirrel.com": { "domain": "kitesquirrel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (kitesquirrel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39829,10 +39972,10 @@ "knitstamp.com": { "domain": "knitstamp.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (knitstamp.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39840,10 +39983,10 @@ "laboredlight.com": { "domain": "laboredlight.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (laboredlight.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39851,10 +39994,10 @@ "lameletters.com": { "domain": "lameletters.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lameletters.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39862,10 +40005,10 @@ "lamplow.com": { "domain": "lamplow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lamplow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39873,10 +40016,10 @@ "largebrass.com": { "domain": "largebrass.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (largebrass.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39884,10 +40027,10 @@ "lasttaco.com": { "domain": "lasttaco.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lasttaco.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39895,10 +40038,21 @@ "leaplunchroom.com": { "domain": "leaplunchroom.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (leaplunchroom.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "ledlocket.com": { + "domain": "ledlocket.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (ledlocket.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39906,10 +40060,10 @@ "leftliquid.com": { "domain": "leftliquid.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (leftliquid.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39917,10 +40071,10 @@ "lemonpackage.com": { "domain": "lemonpackage.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lemonpackage.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39928,10 +40082,10 @@ "lemonsandjoy.com": { "domain": "lemonsandjoy.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lemonsandjoy.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39939,10 +40093,10 @@ "liftedknowledge.com": { "domain": "liftedknowledge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (liftedknowledge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39950,10 +40104,10 @@ "lightenafterthought.com": { "domain": "lightenafterthought.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lightenafterthought.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39961,10 +40115,10 @@ "lighttalon.com": { "domain": "lighttalon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lighttalon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39972,10 +40126,10 @@ "livelumber.com": { "domain": "livelumber.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (livelumber.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39983,10 +40137,10 @@ "livelylaugh.com": { "domain": "livelylaugh.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (livelylaugh.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -39994,10 +40148,10 @@ "livelyreward.com": { "domain": "livelyreward.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (livelyreward.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40005,10 +40159,10 @@ "livingsleet.com": { "domain": "livingsleet.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (livingsleet.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40016,10 +40170,10 @@ "lizardslaugh.com": { "domain": "lizardslaugh.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lizardslaugh.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40027,10 +40181,10 @@ "loadsurprise.com": { "domain": "loadsurprise.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (loadsurprise.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40038,10 +40192,10 @@ "lonelyflavor.com": { "domain": "lonelyflavor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lonelyflavor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40049,10 +40203,10 @@ "longingtrees.com": { "domain": "longingtrees.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (longingtrees.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40060,10 +40214,10 @@ "lorenzourban.com": { "domain": "lorenzourban.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lorenzourban.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40071,10 +40225,10 @@ "losslace.com": { "domain": "losslace.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (losslace.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40082,10 +40236,10 @@ "loudlunch.com": { "domain": "loudlunch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (loudlunch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40093,10 +40247,10 @@ "loveseashore.com": { "domain": "loveseashore.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (loveseashore.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40104,10 +40258,21 @@ "lp3tdqle.com": { "domain": "lp3tdqle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lp3tdqle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "luckyzombie.com": { + "domain": "luckyzombie.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (luckyzombie.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40115,10 +40280,10 @@ "ludicrousarch.com": { "domain": "ludicrousarch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ludicrousarch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40126,10 +40291,10 @@ "lumberamount.com": { "domain": "lumberamount.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lumberamount.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40137,10 +40302,10 @@ "luminousboulevard.com": { "domain": "luminousboulevard.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (luminousboulevard.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40148,10 +40313,10 @@ "luminouscatalyst.com": { "domain": "luminouscatalyst.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (luminouscatalyst.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40159,10 +40324,10 @@ "luminoussculptor.com": { "domain": "luminoussculptor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (luminoussculptor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40170,10 +40335,10 @@ "lumpygnome.com": { "domain": "lumpygnome.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lumpygnome.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40181,10 +40346,10 @@ "lumpylumber.com": { "domain": "lumpylumber.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lumpylumber.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40192,10 +40357,10 @@ "lustroushaven.com": { "domain": "lustroushaven.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lustroushaven.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40203,10 +40368,10 @@ "lyricshook.com": { "domain": "lyricshook.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (lyricshook.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40214,10 +40379,10 @@ "madebyintent.com": { "domain": "madebyintent.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (madebyintent.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40225,10 +40390,21 @@ "magicaljoin.com": { "domain": "magicaljoin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (magicaljoin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "magiczenith.com": { + "domain": "magiczenith.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (magiczenith.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40236,10 +40412,10 @@ "magnetairport.com": { "domain": "magnetairport.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (magnetairport.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40247,10 +40423,10 @@ "majesticmountainrange.com": { "domain": "majesticmountainrange.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (majesticmountainrange.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40258,10 +40434,10 @@ "majesticwaterscape.com": { "domain": "majesticwaterscape.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (majesticwaterscape.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40269,10 +40445,10 @@ "majesticwilderness.com": { "domain": "majesticwilderness.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (majesticwilderness.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40280,10 +40456,10 @@ "maliciousmusic.com": { "domain": "maliciousmusic.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (maliciousmusic.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40291,10 +40467,10 @@ "managedpush.com": { "domain": "managedpush.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (managedpush.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40302,10 +40478,21 @@ "mantrafox.com": { "domain": "mantrafox.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mantrafox.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "mapbasin.com": { + "domain": "mapbasin.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (mapbasin.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40313,10 +40500,10 @@ "marblediscussion.com": { "domain": "marblediscussion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (marblediscussion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40324,10 +40511,10 @@ "markahouse.com": { "domain": "markahouse.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (markahouse.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40335,10 +40522,10 @@ "markedmeasure.com": { "domain": "markedmeasure.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (markedmeasure.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40346,10 +40533,10 @@ "marketspiders.com": { "domain": "marketspiders.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (marketspiders.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40357,10 +40544,10 @@ "marriedmailbox.com": { "domain": "marriedmailbox.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (marriedmailbox.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40368,10 +40555,10 @@ "marriedvalue.com": { "domain": "marriedvalue.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (marriedvalue.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40379,10 +40566,10 @@ "massivemark.com": { "domain": "massivemark.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (massivemark.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40390,10 +40577,10 @@ "materialisticmoon.com": { "domain": "materialisticmoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (materialisticmoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40401,10 +40588,10 @@ "materialmilk.com": { "domain": "materialmilk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (materialmilk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40412,10 +40599,10 @@ "materialplayground.com": { "domain": "materialplayground.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (materialplayground.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40423,10 +40610,10 @@ "meadowlullaby.com": { "domain": "meadowlullaby.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (meadowlullaby.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40434,10 +40621,10 @@ "meatydime.com": { "domain": "meatydime.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (meatydime.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40445,10 +40632,10 @@ "mediatescarf.com": { "domain": "mediatescarf.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mediatescarf.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40456,10 +40643,10 @@ "mediumshort.com": { "domain": "mediumshort.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mediumshort.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40467,10 +40654,10 @@ "mellowhush.com": { "domain": "mellowhush.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mellowhush.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40478,10 +40665,10 @@ "mellowmailbox.com": { "domain": "mellowmailbox.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mellowmailbox.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40489,10 +40676,10 @@ "melodiouschorus.com": { "domain": "melodiouschorus.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (melodiouschorus.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40500,10 +40687,21 @@ "melodiouscomposition.com": { "domain": "melodiouscomposition.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (melodiouscomposition.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "melodioussymphony.com": { + "domain": "melodioussymphony.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (melodioussymphony.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40511,10 +40709,10 @@ "meltmilk.com": { "domain": "meltmilk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (meltmilk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40522,10 +40720,10 @@ "memopilot.com": { "domain": "memopilot.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (memopilot.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40533,10 +40731,10 @@ "memorizeneck.com": { "domain": "memorizeneck.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (memorizeneck.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40544,10 +40742,10 @@ "meremark.com": { "domain": "meremark.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (meremark.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40555,10 +40753,10 @@ "merequartz.com": { "domain": "merequartz.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (merequartz.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40566,10 +40764,10 @@ "merryopal.com": { "domain": "merryopal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (merryopal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40577,10 +40775,10 @@ "merryvault.com": { "domain": "merryvault.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (merryvault.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40588,10 +40786,10 @@ "messagenovice.com": { "domain": "messagenovice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (messagenovice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40599,10 +40797,21 @@ "messyoranges.com": { "domain": "messyoranges.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (messyoranges.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "metajaws.com": { + "domain": "metajaws.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (metajaws.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40610,10 +40819,10 @@ "mightyspiders.com": { "domain": "mightyspiders.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mightyspiders.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40621,10 +40830,10 @@ "mimosamajor.com": { "domain": "mimosamajor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mimosamajor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40632,10 +40841,10 @@ "mindfulgem.com": { "domain": "mindfulgem.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mindfulgem.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40643,10 +40852,10 @@ "minorcattle.com": { "domain": "minorcattle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (minorcattle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40654,10 +40863,10 @@ "minusmental.com": { "domain": "minusmental.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (minusmental.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40665,10 +40874,10 @@ "minuteburst.com": { "domain": "minuteburst.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (minuteburst.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40676,10 +40885,10 @@ "miscreantmoon.com": { "domain": "miscreantmoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (miscreantmoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40687,10 +40896,10 @@ "mistyhorizon.com": { "domain": "mistyhorizon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mistyhorizon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40698,10 +40907,10 @@ "mittencattle.com": { "domain": "mittencattle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mittencattle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40709,10 +40918,10 @@ "mixedreading.com": { "domain": "mixedreading.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mixedreading.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40720,10 +40929,10 @@ "modularmental.com": { "domain": "modularmental.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (modularmental.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40731,10 +40940,10 @@ "monacobeatles.com": { "domain": "monacobeatles.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (monacobeatles.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40742,10 +40951,21 @@ "moorshoes.com": { "domain": "moorshoes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (moorshoes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "morefriendly.com": { + "domain": "morefriendly.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (morefriendly.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40753,10 +40973,10 @@ "motionlessbag.com": { "domain": "motionlessbag.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (motionlessbag.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40764,10 +40984,10 @@ "motionlessbelief.com": { "domain": "motionlessbelief.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (motionlessbelief.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40775,10 +40995,10 @@ "motionlessmeeting.com": { "domain": "motionlessmeeting.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (motionlessmeeting.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40786,10 +41006,10 @@ "movemeal.com": { "domain": "movemeal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (movemeal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40797,10 +41017,10 @@ "muddledaftermath.com": { "domain": "muddledaftermath.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (muddledaftermath.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40808,10 +41028,10 @@ "muddledmemory.com": { "domain": "muddledmemory.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (muddledmemory.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40819,10 +41039,10 @@ "mundanenail.com": { "domain": "mundanenail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mundanenail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40830,10 +41050,10 @@ "mundanepollution.com": { "domain": "mundanepollution.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mundanepollution.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40841,10 +41061,10 @@ "mushywaste.com": { "domain": "mushywaste.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mushywaste.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40852,10 +41072,10 @@ "muteknife.com": { "domain": "muteknife.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (muteknife.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40863,10 +41083,10 @@ "mutemailbox.com": { "domain": "mutemailbox.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mutemailbox.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40874,10 +41094,10 @@ "mysticalagoon.com": { "domain": "mysticalagoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (mysticalagoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40885,10 +41105,10 @@ "naivestatement.com": { "domain": "naivestatement.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (naivestatement.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40896,10 +41116,10 @@ "nappyneck.com": { "domain": "nappyneck.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nappyneck.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40907,10 +41127,10 @@ "neatshade.com": { "domain": "neatshade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (neatshade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40918,10 +41138,10 @@ "nebulacrescent.com": { "domain": "nebulacrescent.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nebulacrescent.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40929,10 +41149,10 @@ "nebulajubilee.com": { "domain": "nebulajubilee.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nebulajubilee.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40940,10 +41160,10 @@ "nebulousamusement.com": { "domain": "nebulousamusement.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nebulousamusement.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40951,10 +41171,10 @@ "nebulousgarden.com": { "domain": "nebulousgarden.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nebulousgarden.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40962,10 +41182,10 @@ "nebulousquasar.com": { "domain": "nebulousquasar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nebulousquasar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40973,10 +41193,10 @@ "nebulousripple.com": { "domain": "nebulousripple.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nebulousripple.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40984,10 +41204,10 @@ "needlessnorth.com": { "domain": "needlessnorth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (needlessnorth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -40995,10 +41215,10 @@ "needyneedle.com": { "domain": "needyneedle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (needyneedle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41006,10 +41226,21 @@ "neighborlywatch.com": { "domain": "neighborlywatch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (neighborlywatch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "newsletterjet.com": { + "domain": "newsletterjet.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (newsletterjet.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41017,10 +41248,10 @@ "niftygraphs.com": { "domain": "niftygraphs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (niftygraphs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41028,10 +41259,10 @@ "niftyhospital.com": { "domain": "niftyhospital.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (niftyhospital.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41039,10 +41270,21 @@ "niftyjelly.com": { "domain": "niftyjelly.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (niftyjelly.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "niftyreports.com": { + "domain": "niftyreports.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (niftyreports.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41050,10 +41292,10 @@ "nightwound.com": { "domain": "nightwound.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nightwound.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41061,10 +41303,10 @@ "nimbleplot.com": { "domain": "nimbleplot.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nimbleplot.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41072,10 +41314,10 @@ "nocturnalloom.com": { "domain": "nocturnalloom.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nocturnalloom.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41083,10 +41325,10 @@ "nocturnalmystique.com": { "domain": "nocturnalmystique.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nocturnalmystique.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41094,10 +41336,10 @@ "noiselessplough.com": { "domain": "noiselessplough.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (noiselessplough.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41105,10 +41347,10 @@ "nonchalantnerve.com": { "domain": "nonchalantnerve.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nonchalantnerve.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41116,10 +41358,10 @@ "nondescriptcrowd.com": { "domain": "nondescriptcrowd.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nondescriptcrowd.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41127,10 +41369,10 @@ "nondescriptstocking.com": { "domain": "nondescriptstocking.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nondescriptstocking.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41138,10 +41380,10 @@ "nostalgicknot.com": { "domain": "nostalgicknot.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nostalgicknot.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41149,10 +41391,10 @@ "nostalgicneed.com": { "domain": "nostalgicneed.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nostalgicneed.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41160,10 +41402,10 @@ "notifyglass.com": { "domain": "notifyglass.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (notifyglass.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41171,10 +41413,10 @@ "nudgeduck.com": { "domain": "nudgeduck.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nudgeduck.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41182,10 +41424,10 @@ "nullnorth.com": { "domain": "nullnorth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nullnorth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41193,10 +41435,10 @@ "numberlessring.com": { "domain": "numberlessring.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (numberlessring.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41204,10 +41446,10 @@ "numerousnest.com": { "domain": "numerousnest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (numerousnest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41215,10 +41457,10 @@ "nuttyorganization.com": { "domain": "nuttyorganization.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (nuttyorganization.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41226,10 +41468,10 @@ "oafishchance.com": { "domain": "oafishchance.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (oafishchance.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41237,10 +41479,10 @@ "oafishobservation.com": { "domain": "oafishobservation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (oafishobservation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41248,10 +41490,10 @@ "obscenesidewalk.com": { "domain": "obscenesidewalk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (obscenesidewalk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41259,10 +41501,10 @@ "observantice.com": { "domain": "observantice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (observantice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41270,10 +41512,10 @@ "oldfashionedoffer.com": { "domain": "oldfashionedoffer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (oldfashionedoffer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41281,10 +41523,10 @@ "omgthink.com": { "domain": "omgthink.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (omgthink.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41292,10 +41534,10 @@ "omniscientfeeling.com": { "domain": "omniscientfeeling.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (omniscientfeeling.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41303,10 +41545,10 @@ "onlywoofs.com": { "domain": "onlywoofs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (onlywoofs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41314,10 +41556,10 @@ "opalquill.com": { "domain": "opalquill.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (opalquill.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41325,10 +41567,10 @@ "operationchicken.com": { "domain": "operationchicken.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (operationchicken.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41336,10 +41578,10 @@ "operationnail.com": { "domain": "operationnail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (operationnail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41347,10 +41589,10 @@ "oppositeoperation.com": { "domain": "oppositeoperation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (oppositeoperation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41358,10 +41600,10 @@ "optimallimit.com": { "domain": "optimallimit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (optimallimit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41369,10 +41611,10 @@ "opulentsylvan.com": { "domain": "opulentsylvan.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (opulentsylvan.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41380,10 +41622,10 @@ "orientedargument.com": { "domain": "orientedargument.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (orientedargument.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41391,10 +41633,10 @@ "orionember.com": { "domain": "orionember.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (orionember.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41402,10 +41644,21 @@ "ourblogthing.com": { "domain": "ourblogthing.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ourblogthing.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "outdoorthingy.com": { + "domain": "outdoorthingy.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (outdoorthingy.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41413,10 +41666,10 @@ "outgoinggiraffe.com": { "domain": "outgoinggiraffe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (outgoinggiraffe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41424,10 +41677,10 @@ "outsidevibe.com": { "domain": "outsidevibe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (outsidevibe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41435,10 +41688,10 @@ "outstandingincome.com": { "domain": "outstandingincome.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (outstandingincome.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41446,10 +41699,10 @@ "outstandingsnails.com": { "domain": "outstandingsnails.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (outstandingsnails.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41457,10 +41710,10 @@ "overkick.com": { "domain": "overkick.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (overkick.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41468,10 +41721,10 @@ "overratedchalk.com": { "domain": "overratedchalk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (overratedchalk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41479,10 +41732,10 @@ "owlsr.us": { "domain": "owlsr.us", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (owlsr.us)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41490,10 +41743,10 @@ "oxygenfuse.com": { "domain": "oxygenfuse.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (oxygenfuse.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41501,10 +41754,10 @@ "pailcrime.com": { "domain": "pailcrime.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pailcrime.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41512,10 +41765,10 @@ "painstakingpickle.com": { "domain": "painstakingpickle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (painstakingpickle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41523,10 +41776,10 @@ "paintpear.com": { "domain": "paintpear.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (paintpear.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41534,10 +41787,10 @@ "paleleaf.com": { "domain": "paleleaf.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (paleleaf.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41545,10 +41798,10 @@ "pamelarandom.com": { "domain": "pamelarandom.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pamelarandom.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41556,10 +41809,10 @@ "panickycurtain.com": { "domain": "panickycurtain.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (panickycurtain.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41567,10 +41820,10 @@ "parallelbulb.com": { "domain": "parallelbulb.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (parallelbulb.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41578,10 +41831,10 @@ "pardonpopular.com": { "domain": "pardonpopular.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pardonpopular.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41589,10 +41842,10 @@ "parentpicture.com": { "domain": "parentpicture.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (parentpicture.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41600,10 +41853,10 @@ "parsimoniouspolice.com": { "domain": "parsimoniouspolice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (parsimoniouspolice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41611,10 +41864,10 @@ "passivepolo.com": { "domain": "passivepolo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (passivepolo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41622,10 +41875,10 @@ "pastoralroad.com": { "domain": "pastoralroad.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pastoralroad.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41633,10 +41886,10 @@ "pawsnug.com": { "domain": "pawsnug.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pawsnug.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41644,10 +41897,10 @@ "peacefullimit.com": { "domain": "peacefullimit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (peacefullimit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41655,10 +41908,10 @@ "pedromister.com": { "domain": "pedromister.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pedromister.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41666,10 +41919,10 @@ "pedropanther.com": { "domain": "pedropanther.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pedropanther.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41677,10 +41930,10 @@ "perceivequarter.com": { "domain": "perceivequarter.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (perceivequarter.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41688,10 +41941,10 @@ "perkyjade.com": { "domain": "perkyjade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (perkyjade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41699,10 +41952,10 @@ "petiteumbrella.com": { "domain": "petiteumbrella.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (petiteumbrella.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41710,10 +41963,10 @@ "philippinch.com": { "domain": "philippinch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (philippinch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41721,10 +41974,10 @@ "photographpan.com": { "domain": "photographpan.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (photographpan.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41732,10 +41985,32 @@ "piespower.com": { "domain": "piespower.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (piespower.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "pinchsquirrel.com": { + "domain": "pinchsquirrel.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (pinchsquirrel.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "pinkbonanza.com": { + "domain": "pinkbonanza.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (pinkbonanza.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41743,10 +42018,10 @@ "piquantgrove.com": { "domain": "piquantgrove.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (piquantgrove.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41754,10 +42029,10 @@ "piquantmeadow.com": { "domain": "piquantmeadow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (piquantmeadow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41765,10 +42040,10 @@ "piquantpigs.com": { "domain": "piquantpigs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (piquantpigs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41776,10 +42051,10 @@ "piquantprice.com": { "domain": "piquantprice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (piquantprice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41787,10 +42062,10 @@ "piquantvortex.com": { "domain": "piquantvortex.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (piquantvortex.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41798,10 +42073,10 @@ "pixeledhub.com": { "domain": "pixeledhub.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pixeledhub.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41809,10 +42084,10 @@ "pizzasnut.com": { "domain": "pizzasnut.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pizzasnut.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41820,10 +42095,10 @@ "placeframe.com": { "domain": "placeframe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (placeframe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41831,10 +42106,10 @@ "placidactivity.com": { "domain": "placidactivity.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (placidactivity.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41842,10 +42117,10 @@ "planebasin.com": { "domain": "planebasin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (planebasin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41853,10 +42128,10 @@ "plantdigestion.com": { "domain": "plantdigestion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (plantdigestion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41864,10 +42139,10 @@ "playfulriver.com": { "domain": "playfulriver.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (playfulriver.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41875,10 +42150,10 @@ "plotparent.com": { "domain": "plotparent.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (plotparent.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41886,10 +42161,21 @@ "pluckyzone.com": { "domain": "pluckyzone.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pluckyzone.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "poemprompt.com": { + "domain": "poemprompt.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (poemprompt.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41897,10 +42183,10 @@ "poeticpackage.com": { "domain": "poeticpackage.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (poeticpackage.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41908,10 +42194,10 @@ "pointdigestion.com": { "domain": "pointdigestion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pointdigestion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41919,10 +42205,10 @@ "pointlesshour.com": { "domain": "pointlesshour.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pointlesshour.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41930,10 +42216,10 @@ "pointlesspocket.com": { "domain": "pointlesspocket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pointlesspocket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41941,10 +42227,10 @@ "pointlessprofit.com": { "domain": "pointlessprofit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pointlessprofit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41952,10 +42238,21 @@ "pointlessrifle.com": { "domain": "pointlessrifle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pointlessrifle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "poisedfuel.com": { + "domain": "poisedfuel.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (poisedfuel.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41963,10 +42260,10 @@ "polarismagnet.com": { "domain": "polarismagnet.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (polarismagnet.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41974,10 +42271,10 @@ "polishedcrescent.com": { "domain": "polishedcrescent.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (polishedcrescent.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41985,10 +42282,10 @@ "polishedfolly.com": { "domain": "polishedfolly.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (polishedfolly.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -41996,10 +42293,10 @@ "politeplanes.com": { "domain": "politeplanes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (politeplanes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42007,10 +42304,10 @@ "politicalflip.com": { "domain": "politicalflip.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (politicalflip.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42018,10 +42315,10 @@ "politicalporter.com": { "domain": "politicalporter.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (politicalporter.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42029,10 +42326,10 @@ "popplantation.com": { "domain": "popplantation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (popplantation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42040,10 +42337,10 @@ "possiblepencil.com": { "domain": "possiblepencil.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (possiblepencil.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42051,10 +42348,10 @@ "powderjourney.com": { "domain": "powderjourney.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (powderjourney.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42062,10 +42359,10 @@ "powerfulblends.com": { "domain": "powerfulblends.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (powerfulblends.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42073,10 +42370,10 @@ "preciousplanes.com": { "domain": "preciousplanes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (preciousplanes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42084,10 +42381,10 @@ "prefixpatriot.com": { "domain": "prefixpatriot.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (prefixpatriot.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42095,10 +42392,10 @@ "presetrabbits.com": { "domain": "presetrabbits.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (presetrabbits.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42106,10 +42403,10 @@ "previousplayground.com": { "domain": "previousplayground.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (previousplayground.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42117,10 +42414,10 @@ "previouspotato.com": { "domain": "previouspotato.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (previouspotato.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42128,10 +42425,10 @@ "pricklypollution.com": { "domain": "pricklypollution.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pricklypollution.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42139,10 +42436,10 @@ "pristinegale.com": { "domain": "pristinegale.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pristinegale.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42150,10 +42447,10 @@ "probablepartner.com": { "domain": "probablepartner.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (probablepartner.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42161,10 +42458,10 @@ "processplantation.com": { "domain": "processplantation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (processplantation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42172,10 +42469,10 @@ "producepickle.com": { "domain": "producepickle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (producepickle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42183,10 +42480,10 @@ "productsurfer.com": { "domain": "productsurfer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (productsurfer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42194,10 +42491,10 @@ "profitrumour.com": { "domain": "profitrumour.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (profitrumour.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42205,10 +42502,10 @@ "promiseair.com": { "domain": "promiseair.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (promiseair.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42216,10 +42513,10 @@ "proofconvert.com": { "domain": "proofconvert.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (proofconvert.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42227,10 +42524,10 @@ "propertypotato.com": { "domain": "propertypotato.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (propertypotato.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42238,10 +42535,10 @@ "protestcopy.com": { "domain": "protestcopy.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (protestcopy.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42249,10 +42546,10 @@ "psychedelicchess.com": { "domain": "psychedelicchess.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (psychedelicchess.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42260,10 +42557,10 @@ "publicsofa.com": { "domain": "publicsofa.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (publicsofa.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42271,10 +42568,10 @@ "puffyloss.com": { "domain": "puffyloss.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (puffyloss.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42282,10 +42579,10 @@ "puffypaste.com": { "domain": "puffypaste.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (puffypaste.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42293,10 +42590,10 @@ "puffypull.com": { "domain": "puffypull.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (puffypull.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42304,10 +42601,10 @@ "puffypurpose.com": { "domain": "puffypurpose.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (puffypurpose.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42315,10 +42612,10 @@ "pulsatingmeadow.com": { "domain": "pulsatingmeadow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pulsatingmeadow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42326,10 +42623,10 @@ "pumpedpancake.com": { "domain": "pumpedpancake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pumpedpancake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42337,10 +42634,10 @@ "pumpedpurpose.com": { "domain": "pumpedpurpose.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (pumpedpurpose.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42348,10 +42645,10 @@ "punyplant.com": { "domain": "punyplant.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (punyplant.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42359,10 +42656,10 @@ "puppytooth.com": { "domain": "puppytooth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (puppytooth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42370,10 +42667,10 @@ "purposepipe.com": { "domain": "purposepipe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (purposepipe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42381,10 +42678,10 @@ "quacksquirrel.com": { "domain": "quacksquirrel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quacksquirrel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42392,10 +42689,10 @@ "quaintcan.com": { "domain": "quaintcan.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quaintcan.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42403,10 +42700,10 @@ "quaintlake.com": { "domain": "quaintlake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quaintlake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42414,10 +42711,10 @@ "quantumlagoon.com": { "domain": "quantumlagoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quantumlagoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42425,10 +42722,10 @@ "quantumshine.com": { "domain": "quantumshine.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quantumshine.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42436,10 +42733,10 @@ "queenskart.com": { "domain": "queenskart.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (queenskart.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42447,10 +42744,10 @@ "quillkick.com": { "domain": "quillkick.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quillkick.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42458,10 +42755,10 @@ "quirkybliss.com": { "domain": "quirkybliss.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quirkybliss.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42469,10 +42766,10 @@ "quirkysugar.com": { "domain": "quirkysugar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quirkysugar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42480,10 +42777,10 @@ "quixoticnebula.com": { "domain": "quixoticnebula.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (quixoticnebula.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42491,10 +42788,10 @@ "rabbitbreath.com": { "domain": "rabbitbreath.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rabbitbreath.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42502,10 +42799,10 @@ "rabbitrifle.com": { "domain": "rabbitrifle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rabbitrifle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42513,10 +42810,10 @@ "radiantcanopy.com": { "domain": "radiantcanopy.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (radiantcanopy.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42524,10 +42821,10 @@ "radiantlullaby.com": { "domain": "radiantlullaby.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (radiantlullaby.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42535,10 +42832,10 @@ "railwaygiraffe.com": { "domain": "railwaygiraffe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (railwaygiraffe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42546,10 +42843,10 @@ "raintwig.com": { "domain": "raintwig.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (raintwig.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42557,10 +42854,10 @@ "rainyhand.com": { "domain": "rainyhand.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rainyhand.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42568,10 +42865,10 @@ "rainyrule.com": { "domain": "rainyrule.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rainyrule.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42579,10 +42876,10 @@ "rangecake.com": { "domain": "rangecake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rangecake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42590,10 +42887,10 @@ "raresummer.com": { "domain": "raresummer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (raresummer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42601,10 +42898,10 @@ "reactjspdf.com": { "domain": "reactjspdf.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (reactjspdf.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42612,10 +42909,10 @@ "readingguilt.com": { "domain": "readingguilt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (readingguilt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42623,10 +42920,10 @@ "readymoon.com": { "domain": "readymoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (readymoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42634,10 +42931,10 @@ "readysnails.com": { "domain": "readysnails.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (readysnails.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42645,10 +42942,10 @@ "realizedoor.com": { "domain": "realizedoor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (realizedoor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42656,10 +42953,10 @@ "realizerecess.com": { "domain": "realizerecess.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (realizerecess.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42667,10 +42964,10 @@ "rebelclover.com": { "domain": "rebelclover.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rebelclover.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42678,10 +42975,10 @@ "rebelhen.com": { "domain": "rebelhen.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rebelhen.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42689,10 +42986,10 @@ "rebelsubway.com": { "domain": "rebelsubway.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rebelsubway.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42700,10 +42997,10 @@ "receiptcent.com": { "domain": "receiptcent.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (receiptcent.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42711,10 +43008,10 @@ "receptiveink.com": { "domain": "receptiveink.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (receptiveink.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42722,10 +43019,10 @@ "receptivereaction.com": { "domain": "receptivereaction.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (receptivereaction.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42733,10 +43030,10 @@ "recessrain.com": { "domain": "recessrain.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (recessrain.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42744,10 +43041,10 @@ "reconditeprison.com": { "domain": "reconditeprison.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (reconditeprison.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42755,10 +43052,10 @@ "reflectivestatement.com": { "domain": "reflectivestatement.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (reflectivestatement.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42766,10 +43063,10 @@ "refundradar.com": { "domain": "refundradar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (refundradar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42777,10 +43074,10 @@ "regularplants.com": { "domain": "regularplants.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (regularplants.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42788,10 +43085,10 @@ "regulatesleet.com": { "domain": "regulatesleet.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (regulatesleet.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42799,10 +43096,21 @@ "relationrest.com": { "domain": "relationrest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (relationrest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "releasepath.com": { + "domain": "releasepath.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (releasepath.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42810,10 +43118,10 @@ "reloadphoto.com": { "domain": "reloadphoto.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (reloadphoto.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42821,10 +43129,10 @@ "rememberdiscussion.com": { "domain": "rememberdiscussion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rememberdiscussion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42832,10 +43140,10 @@ "rentinfinity.com": { "domain": "rentinfinity.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rentinfinity.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42843,10 +43151,10 @@ "replaceroute.com": { "domain": "replaceroute.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (replaceroute.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42854,10 +43162,10 @@ "resonantbrush.com": { "domain": "resonantbrush.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (resonantbrush.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42865,10 +43173,10 @@ "respectrain.com": { "domain": "respectrain.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (respectrain.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42876,10 +43184,10 @@ "resplendentecho.com": { "domain": "resplendentecho.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (resplendentecho.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42887,10 +43195,10 @@ "retrievemint.com": { "domain": "retrievemint.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (retrievemint.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42898,10 +43206,10 @@ "rhetoricalactivity.com": { "domain": "rhetoricalactivity.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rhetoricalactivity.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42909,10 +43217,10 @@ "rhetoricalveil.com": { "domain": "rhetoricalveil.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rhetoricalveil.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42920,10 +43228,10 @@ "rhymezebra.com": { "domain": "rhymezebra.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rhymezebra.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42931,10 +43239,10 @@ "rhythmrule.com": { "domain": "rhythmrule.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rhythmrule.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42942,10 +43250,10 @@ "richstring.com": { "domain": "richstring.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (richstring.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42953,10 +43261,10 @@ "rigidrobin.com": { "domain": "rigidrobin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rigidrobin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42964,10 +43272,10 @@ "rigidveil.com": { "domain": "rigidveil.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rigidveil.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42975,10 +43283,10 @@ "rigorlab.com": { "domain": "rigorlab.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rigorlab.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42986,10 +43294,10 @@ "ringplant.com": { "domain": "ringplant.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ringplant.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -42997,10 +43305,10 @@ "ringsrecord.com": { "domain": "ringsrecord.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ringsrecord.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43008,10 +43316,10 @@ "ritzykey.com": { "domain": "ritzykey.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ritzykey.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43019,10 +43327,10 @@ "ritzyrepresentative.com": { "domain": "ritzyrepresentative.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ritzyrepresentative.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43030,10 +43338,10 @@ "ritzyveil.com": { "domain": "ritzyveil.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ritzyveil.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43041,10 +43349,10 @@ "rockpebbles.com": { "domain": "rockpebbles.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rockpebbles.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43052,10 +43360,10 @@ "rollconnection.com": { "domain": "rollconnection.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rollconnection.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43063,10 +43371,10 @@ "roofrelation.com": { "domain": "roofrelation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (roofrelation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43074,10 +43382,10 @@ "roseincome.com": { "domain": "roseincome.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (roseincome.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43085,10 +43393,10 @@ "rottenray.com": { "domain": "rottenray.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rottenray.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43096,10 +43404,10 @@ "rusticprice.com": { "domain": "rusticprice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (rusticprice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43107,10 +43415,10 @@ "ruthlessdegree.com": { "domain": "ruthlessdegree.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ruthlessdegree.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43118,10 +43426,10 @@ "ruthlessmilk.com": { "domain": "ruthlessmilk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ruthlessmilk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43129,10 +43437,10 @@ "sableloss.com": { "domain": "sableloss.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sableloss.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43140,10 +43448,10 @@ "sablesmile.com": { "domain": "sablesmile.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sablesmile.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43151,10 +43459,21 @@ "sadloaf.com": { "domain": "sadloaf.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sadloaf.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "safetybrush.com": { + "domain": "safetybrush.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (safetybrush.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43162,10 +43481,10 @@ "saffronrefuge.com": { "domain": "saffronrefuge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (saffronrefuge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43173,10 +43492,10 @@ "sagargift.com": { "domain": "sagargift.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sagargift.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43184,10 +43503,10 @@ "saltsacademy.com": { "domain": "saltsacademy.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (saltsacademy.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43195,10 +43514,10 @@ "samesticks.com": { "domain": "samesticks.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (samesticks.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43206,10 +43525,21 @@ "samplesamba.com": { "domain": "samplesamba.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (samplesamba.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "sandstrophies.com": { + "domain": "sandstrophies.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (sandstrophies.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43217,10 +43547,10 @@ "scarcecard.com": { "domain": "scarcecard.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scarcecard.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43228,10 +43558,10 @@ "scarceshock.com": { "domain": "scarceshock.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scarceshock.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43239,10 +43569,10 @@ "scarcesign.com": { "domain": "scarcesign.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scarcesign.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43250,10 +43580,10 @@ "scarcestructure.com": { "domain": "scarcestructure.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scarcestructure.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43261,10 +43591,10 @@ "scarcesurprise.com": { "domain": "scarcesurprise.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scarcesurprise.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43272,10 +43602,10 @@ "scaredcomfort.com": { "domain": "scaredcomfort.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scaredcomfort.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43283,10 +43613,10 @@ "scaredsidewalk.com": { "domain": "scaredsidewalk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scaredsidewalk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43294,10 +43624,10 @@ "scaredslip.com": { "domain": "scaredslip.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scaredslip.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43305,10 +43635,10 @@ "scaredsnake.com": { "domain": "scaredsnake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scaredsnake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43316,10 +43646,10 @@ "scaredswing.com": { "domain": "scaredswing.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scaredswing.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43327,10 +43657,10 @@ "scarefowl.com": { "domain": "scarefowl.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scarefowl.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43338,10 +43668,10 @@ "scatteredheat.com": { "domain": "scatteredheat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scatteredheat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43349,10 +43679,10 @@ "scatteredquiver.com": { "domain": "scatteredquiver.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scatteredquiver.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43360,10 +43690,10 @@ "scatteredstream.com": { "domain": "scatteredstream.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scatteredstream.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43371,10 +43701,21 @@ "scenicapparel.com": { "domain": "scenicapparel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scenicapparel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "scenicdrops.com": { + "domain": "scenicdrops.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (scenicdrops.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43382,10 +43723,10 @@ "scientificshirt.com": { "domain": "scientificshirt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scientificshirt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43393,10 +43734,10 @@ "scintillatingscissors.com": { "domain": "scintillatingscissors.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scintillatingscissors.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43404,10 +43745,10 @@ "scissorsstatement.com": { "domain": "scissorsstatement.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scissorsstatement.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43415,10 +43756,10 @@ "scrapesleep.com": { "domain": "scrapesleep.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scrapesleep.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43426,10 +43767,10 @@ "scratchsofa.com": { "domain": "scratchsofa.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scratchsofa.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43437,10 +43778,10 @@ "screechingfurniture.com": { "domain": "screechingfurniture.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (screechingfurniture.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43448,10 +43789,10 @@ "screechingstocking.com": { "domain": "screechingstocking.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (screechingstocking.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43459,10 +43800,10 @@ "scribbleson.com": { "domain": "scribbleson.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scribbleson.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43470,10 +43811,10 @@ "scrollservice.com": { "domain": "scrollservice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scrollservice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43481,10 +43822,10 @@ "scrubswim.com": { "domain": "scrubswim.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (scrubswim.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43492,10 +43833,10 @@ "seashoresociety.com": { "domain": "seashoresociety.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (seashoresociety.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43503,10 +43844,10 @@ "secondhandfall.com": { "domain": "secondhandfall.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (secondhandfall.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43514,10 +43855,10 @@ "secretivesheep.com": { "domain": "secretivesheep.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (secretivesheep.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43525,10 +43866,10 @@ "secretspiders.com": { "domain": "secretspiders.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (secretspiders.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43536,10 +43877,10 @@ "secretturtle.com": { "domain": "secretturtle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (secretturtle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43547,10 +43888,10 @@ "seedscissors.com": { "domain": "seedscissors.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (seedscissors.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43558,10 +43899,10 @@ "seemlysuggestion.com": { "domain": "seemlysuggestion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (seemlysuggestion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43569,10 +43910,10 @@ "selfishsea.com": { "domain": "selfishsea.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (selfishsea.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43580,10 +43921,10 @@ "sendingspire.com": { "domain": "sendingspire.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sendingspire.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43591,10 +43932,10 @@ "sensorsmile.com": { "domain": "sensorsmile.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sensorsmile.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43602,10 +43943,10 @@ "separatesort.com": { "domain": "separatesort.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (separatesort.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43613,10 +43954,10 @@ "seraphichorizon.com": { "domain": "seraphichorizon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (seraphichorizon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43624,10 +43965,10 @@ "seraphicjubilee.com": { "domain": "seraphicjubilee.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (seraphicjubilee.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43635,10 +43976,10 @@ "serendipityecho.com": { "domain": "serendipityecho.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (serendipityecho.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43646,10 +43987,10 @@ "serenecascade.com": { "domain": "serenecascade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (serenecascade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43657,10 +43998,10 @@ "serenepebble.com": { "domain": "serenepebble.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (serenepebble.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43668,10 +44009,21 @@ "serenesurf.com": { "domain": "serenesurf.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (serenesurf.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "serenezenith.com": { + "domain": "serenezenith.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (serenezenith.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43679,10 +44031,10 @@ "serioussuit.com": { "domain": "serioussuit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (serioussuit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43690,10 +44042,21 @@ "serpentshampoo.com": { "domain": "serpentshampoo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (serpentshampoo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "serverracer.com": { + "domain": "serverracer.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (serverracer.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43701,10 +44064,10 @@ "settleshoes.com": { "domain": "settleshoes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (settleshoes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43712,10 +44075,10 @@ "shadeship.com": { "domain": "shadeship.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shadeship.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43723,10 +44086,10 @@ "shaggytank.com": { "domain": "shaggytank.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shaggytank.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43734,10 +44097,10 @@ "shakyseat.com": { "domain": "shakyseat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shakyseat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43745,10 +44108,10 @@ "shakysurprise.com": { "domain": "shakysurprise.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shakysurprise.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43756,10 +44119,10 @@ "shakytaste.com": { "domain": "shakytaste.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shakytaste.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43767,10 +44130,10 @@ "shallowblade.com": { "domain": "shallowblade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shallowblade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43778,10 +44141,10 @@ "sharkskids.com": { "domain": "sharkskids.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sharkskids.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43789,10 +44152,10 @@ "sheargovernor.com": { "domain": "sheargovernor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sheargovernor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43800,10 +44163,10 @@ "shesubscriptions.com": { "domain": "shesubscriptions.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shesubscriptions.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43811,10 +44174,10 @@ "shinypond.com": { "domain": "shinypond.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shinypond.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43822,10 +44185,10 @@ "shirtsidewalk.com": { "domain": "shirtsidewalk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shirtsidewalk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43833,10 +44196,10 @@ "shiveringspot.com": { "domain": "shiveringspot.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shiveringspot.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43844,10 +44207,10 @@ "shiverscissors.com": { "domain": "shiverscissors.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shiverscissors.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43855,10 +44218,10 @@ "shockinggrass.com": { "domain": "shockinggrass.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shockinggrass.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43866,10 +44229,10 @@ "shockingship.com": { "domain": "shockingship.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shockingship.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43877,10 +44240,10 @@ "shredquiz.com": { "domain": "shredquiz.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shredquiz.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43888,10 +44251,10 @@ "shydinosaurs.com": { "domain": "shydinosaurs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (shydinosaurs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43899,10 +44262,10 @@ "sierrakermit.com": { "domain": "sierrakermit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sierrakermit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43910,10 +44273,10 @@ "signaturepod.com": { "domain": "signaturepod.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (signaturepod.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43921,10 +44284,10 @@ "siliconslow.com": { "domain": "siliconslow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (siliconslow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43932,10 +44295,10 @@ "sillyscrew.com": { "domain": "sillyscrew.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sillyscrew.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43943,10 +44306,10 @@ "simplesidewalk.com": { "domain": "simplesidewalk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (simplesidewalk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43954,10 +44317,10 @@ "simulateswing.com": { "domain": "simulateswing.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (simulateswing.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43965,10 +44328,10 @@ "sincerebuffalo.com": { "domain": "sincerebuffalo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sincerebuffalo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43976,10 +44339,10 @@ "sincerepelican.com": { "domain": "sincerepelican.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sincerepelican.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43987,10 +44350,10 @@ "sinceresubstance.com": { "domain": "sinceresubstance.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sinceresubstance.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -43998,10 +44361,10 @@ "sinkbooks.com": { "domain": "sinkbooks.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sinkbooks.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44009,10 +44372,10 @@ "sixscissors.com": { "domain": "sixscissors.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sixscissors.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44020,10 +44383,10 @@ "sizzlingsmoke.com": { "domain": "sizzlingsmoke.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sizzlingsmoke.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44031,10 +44394,10 @@ "slaysweater.com": { "domain": "slaysweater.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (slaysweater.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44042,10 +44405,10 @@ "slimyscarf.com": { "domain": "slimyscarf.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (slimyscarf.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44053,10 +44416,10 @@ "slinksuggestion.com": { "domain": "slinksuggestion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (slinksuggestion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44064,10 +44427,10 @@ "smallershops.com": { "domain": "smallershops.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smallershops.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44075,10 +44438,10 @@ "smashshoe.com": { "domain": "smashshoe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smashshoe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44086,10 +44449,10 @@ "smilewound.com": { "domain": "smilewound.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smilewound.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44097,10 +44460,10 @@ "smilingcattle.com": { "domain": "smilingcattle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smilingcattle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44108,10 +44471,10 @@ "smilingswim.com": { "domain": "smilingswim.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smilingswim.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44119,10 +44482,10 @@ "smilingwaves.com": { "domain": "smilingwaves.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smilingwaves.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44130,10 +44493,10 @@ "smoggysongs.com": { "domain": "smoggysongs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smoggysongs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44141,10 +44504,10 @@ "smoggystation.com": { "domain": "smoggystation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (smoggystation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44152,10 +44515,10 @@ "snacktoken.com": { "domain": "snacktoken.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (snacktoken.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44163,10 +44526,10 @@ "snakemineral.com": { "domain": "snakemineral.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (snakemineral.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44174,10 +44537,21 @@ "snakeslang.com": { "domain": "snakeslang.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (snakeslang.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "snappyreport.com": { + "domain": "snappyreport.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (snappyreport.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44185,10 +44559,10 @@ "sneakwind.com": { "domain": "sneakwind.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sneakwind.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44196,10 +44570,10 @@ "sneakystew.com": { "domain": "sneakystew.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sneakystew.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44207,10 +44581,10 @@ "snoresmile.com": { "domain": "snoresmile.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (snoresmile.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44218,10 +44592,21 @@ "snowmentor.com": { "domain": "snowmentor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (snowmentor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "softwarerumble.com": { + "domain": "softwarerumble.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (softwarerumble.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44229,10 +44614,10 @@ "soggysponge.com": { "domain": "soggysponge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (soggysponge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44240,10 +44625,10 @@ "soggyzoo.com": { "domain": "soggyzoo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (soggyzoo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44251,10 +44636,10 @@ "solarislabyrinth.com": { "domain": "solarislabyrinth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (solarislabyrinth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44262,10 +44647,10 @@ "somberscarecrow.com": { "domain": "somberscarecrow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (somberscarecrow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44273,10 +44658,10 @@ "sombersea.com": { "domain": "sombersea.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sombersea.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44284,10 +44669,10 @@ "sombersquirrel.com": { "domain": "sombersquirrel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sombersquirrel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44295,10 +44680,10 @@ "sombersticks.com": { "domain": "sombersticks.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sombersticks.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44306,10 +44691,10 @@ "sombersurprise.com": { "domain": "sombersurprise.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sombersurprise.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44317,10 +44702,10 @@ "soothingglade.com": { "domain": "soothingglade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (soothingglade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44328,10 +44713,10 @@ "sophisticatedstove.com": { "domain": "sophisticatedstove.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sophisticatedstove.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44339,10 +44724,10 @@ "sordidsmile.com": { "domain": "sordidsmile.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sordidsmile.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44350,10 +44735,10 @@ "soresidewalk.com": { "domain": "soresidewalk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (soresidewalk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44361,10 +44746,10 @@ "soresneeze.com": { "domain": "soresneeze.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (soresneeze.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44372,10 +44757,10 @@ "sorethunder.com": { "domain": "sorethunder.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sorethunder.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44383,10 +44768,21 @@ "soretrain.com": { "domain": "soretrain.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (soretrain.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "sortanoisy.com": { + "domain": "sortanoisy.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (sortanoisy.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44394,10 +44790,10 @@ "sortsail.com": { "domain": "sortsail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sortsail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44405,10 +44801,10 @@ "sortsummer.com": { "domain": "sortsummer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sortsummer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44416,10 +44812,10 @@ "sowlettuce.com": { "domain": "sowlettuce.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sowlettuce.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44427,10 +44823,10 @@ "spadelocket.com": { "domain": "spadelocket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spadelocket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44438,10 +44834,10 @@ "sparkgoal.com": { "domain": "sparkgoal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sparkgoal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44449,10 +44845,10 @@ "sparklingshelf.com": { "domain": "sparklingshelf.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sparklingshelf.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44460,10 +44856,10 @@ "specialscissors.com": { "domain": "specialscissors.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (specialscissors.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44471,10 +44867,10 @@ "spellmist.com": { "domain": "spellmist.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spellmist.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44482,10 +44878,10 @@ "spellsalsa.com": { "domain": "spellsalsa.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spellsalsa.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44493,10 +44889,10 @@ "spiffymachine.com": { "domain": "spiffymachine.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spiffymachine.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44504,10 +44900,10 @@ "spirebaboon.com": { "domain": "spirebaboon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spirebaboon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44515,10 +44911,10 @@ "spookystitch.com": { "domain": "spookystitch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spookystitch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44526,10 +44922,10 @@ "spoonsilk.com": { "domain": "spoonsilk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spoonsilk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44537,10 +44933,10 @@ "spotlessstamp.com": { "domain": "spotlessstamp.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spotlessstamp.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44548,10 +44944,10 @@ "spottednoise.com": { "domain": "spottednoise.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spottednoise.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44559,10 +44955,10 @@ "springolive.com": { "domain": "springolive.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (springolive.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44570,10 +44966,10 @@ "springsister.com": { "domain": "springsister.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (springsister.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44581,10 +44977,10 @@ "springsnails.com": { "domain": "springsnails.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (springsnails.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44592,10 +44988,10 @@ "sproutingbag.com": { "domain": "sproutingbag.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sproutingbag.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44603,10 +44999,10 @@ "sprydelta.com": { "domain": "sprydelta.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sprydelta.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44614,10 +45010,10 @@ "sprysummit.com": { "domain": "sprysummit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sprysummit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44625,10 +45021,10 @@ "spuriousair.com": { "domain": "spuriousair.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spuriousair.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44636,10 +45032,10 @@ "spuriousbase.com": { "domain": "spuriousbase.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spuriousbase.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44647,10 +45043,10 @@ "spurioussquirrel.com": { "domain": "spurioussquirrel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spurioussquirrel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44658,10 +45054,10 @@ "spuriousstranger.com": { "domain": "spuriousstranger.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spuriousstranger.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44669,10 +45065,10 @@ "spysubstance.com": { "domain": "spysubstance.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (spysubstance.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44680,10 +45076,10 @@ "squalidscrew.com": { "domain": "squalidscrew.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (squalidscrew.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44691,10 +45087,10 @@ "squeakzinc.com": { "domain": "squeakzinc.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (squeakzinc.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44702,10 +45098,10 @@ "squealingturn.com": { "domain": "squealingturn.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (squealingturn.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44713,10 +45109,10 @@ "stakingbasket.com": { "domain": "stakingbasket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stakingbasket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44724,10 +45120,10 @@ "stakingshock.com": { "domain": "stakingshock.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stakingshock.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44735,10 +45131,10 @@ "staleshow.com": { "domain": "staleshow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (staleshow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44746,10 +45142,10 @@ "stalesummer.com": { "domain": "stalesummer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stalesummer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44757,10 +45153,10 @@ "starkscale.com": { "domain": "starkscale.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (starkscale.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44768,10 +45164,10 @@ "startingcars.com": { "domain": "startingcars.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (startingcars.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44779,10 +45175,10 @@ "statshunt.com": { "domain": "statshunt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (statshunt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44790,10 +45186,10 @@ "statuesqueship.com": { "domain": "statuesqueship.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (statuesqueship.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44801,10 +45197,10 @@ "stayaction.com": { "domain": "stayaction.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stayaction.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44812,10 +45208,10 @@ "steadycopper.com": { "domain": "steadycopper.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (steadycopper.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44823,10 +45219,10 @@ "stealsteel.com": { "domain": "stealsteel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stealsteel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44834,10 +45230,10 @@ "steepscale.com": { "domain": "steepscale.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (steepscale.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44845,10 +45241,10 @@ "steepsister.com": { "domain": "steepsister.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (steepsister.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44856,10 +45252,10 @@ "stepcattle.com": { "domain": "stepcattle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stepcattle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44867,10 +45263,10 @@ "stepplane.com": { "domain": "stepplane.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stepplane.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44878,10 +45274,10 @@ "stepwisevideo.com": { "domain": "stepwisevideo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stepwisevideo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44889,10 +45285,10 @@ "stereoproxy.com": { "domain": "stereoproxy.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stereoproxy.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44900,10 +45296,10 @@ "stewspiders.com": { "domain": "stewspiders.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stewspiders.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44911,10 +45307,10 @@ "stiffstem.com": { "domain": "stiffstem.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stiffstem.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44922,10 +45318,10 @@ "stimulatingsneeze.com": { "domain": "stimulatingsneeze.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stimulatingsneeze.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44933,10 +45329,10 @@ "stingsquirrel.com": { "domain": "stingsquirrel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stingsquirrel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44944,10 +45340,10 @@ "stingyshoe.com": { "domain": "stingyshoe.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stingyshoe.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44955,10 +45351,10 @@ "stingyspoon.com": { "domain": "stingyspoon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stingyspoon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44966,10 +45362,10 @@ "stockingsleet.com": { "domain": "stockingsleet.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stockingsleet.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44977,10 +45373,10 @@ "stockingsneeze.com": { "domain": "stockingsneeze.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stockingsneeze.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44988,10 +45384,10 @@ "stomachscience.com": { "domain": "stomachscience.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stomachscience.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -44999,10 +45395,10 @@ "stonechin.com": { "domain": "stonechin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stonechin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45010,10 +45406,10 @@ "stopstomach.com": { "domain": "stopstomach.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stopstomach.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45021,10 +45417,10 @@ "stormyachiever.com": { "domain": "stormyachiever.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stormyachiever.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45032,10 +45428,10 @@ "stormyfold.com": { "domain": "stormyfold.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stormyfold.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45043,10 +45439,10 @@ "strangeclocks.com": { "domain": "strangeclocks.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (strangeclocks.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45054,10 +45450,10 @@ "strangersponge.com": { "domain": "strangersponge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (strangersponge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45065,10 +45461,10 @@ "strangesink.com": { "domain": "strangesink.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (strangesink.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45076,10 +45472,10 @@ "streetsort.com": { "domain": "streetsort.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (streetsort.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45087,10 +45483,10 @@ "stretchsister.com": { "domain": "stretchsister.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stretchsister.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45098,10 +45494,10 @@ "stretchsneeze.com": { "domain": "stretchsneeze.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stretchsneeze.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45109,10 +45505,10 @@ "stretchsquirrel.com": { "domain": "stretchsquirrel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stretchsquirrel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45120,10 +45516,10 @@ "stripedbat.com": { "domain": "stripedbat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (stripedbat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45131,10 +45527,10 @@ "strivesidewalk.com": { "domain": "strivesidewalk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (strivesidewalk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45142,10 +45538,10 @@ "sturdysnail.com": { "domain": "sturdysnail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sturdysnail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45153,10 +45549,10 @@ "subletyoke.com": { "domain": "subletyoke.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (subletyoke.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45164,10 +45560,10 @@ "sublimequartz.com": { "domain": "sublimequartz.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sublimequartz.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45175,10 +45571,10 @@ "subsequentswim.com": { "domain": "subsequentswim.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (subsequentswim.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45186,10 +45582,10 @@ "substantialcarpenter.com": { "domain": "substantialcarpenter.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (substantialcarpenter.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45197,10 +45593,10 @@ "substantialgrade.com": { "domain": "substantialgrade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (substantialgrade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45208,10 +45604,10 @@ "succeedscene.com": { "domain": "succeedscene.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (succeedscene.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45219,10 +45615,10 @@ "successfulscent.com": { "domain": "successfulscent.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (successfulscent.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45230,10 +45626,10 @@ "suddensoda.com": { "domain": "suddensoda.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (suddensoda.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45241,10 +45637,10 @@ "sugarfriction.com": { "domain": "sugarfriction.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sugarfriction.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45252,10 +45648,10 @@ "suggestionbridge.com": { "domain": "suggestionbridge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (suggestionbridge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45263,10 +45659,10 @@ "summerobject.com": { "domain": "summerobject.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (summerobject.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45274,10 +45670,10 @@ "sunshinegates.com": { "domain": "sunshinegates.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (sunshinegates.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45285,10 +45681,10 @@ "superchichair.com": { "domain": "superchichair.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (superchichair.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45296,10 +45692,10 @@ "superficialspring.com": { "domain": "superficialspring.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (superficialspring.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45307,10 +45703,10 @@ "superviseshoes.com": { "domain": "superviseshoes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (superviseshoes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45318,10 +45714,10 @@ "supportwaves.com": { "domain": "supportwaves.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (supportwaves.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45329,10 +45725,10 @@ "suspectmark.com": { "domain": "suspectmark.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (suspectmark.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45340,10 +45736,10 @@ "swellstocking.com": { "domain": "swellstocking.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (swellstocking.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45351,10 +45747,21 @@ "swelteringsleep.com": { "domain": "swelteringsleep.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (swelteringsleep.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "swimfreely.com": { + "domain": "swimfreely.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (swimfreely.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45362,10 +45769,10 @@ "swingslip.com": { "domain": "swingslip.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (swingslip.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45373,10 +45780,10 @@ "swordgoose.com": { "domain": "swordgoose.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (swordgoose.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45384,10 +45791,10 @@ "syllablesight.com": { "domain": "syllablesight.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (syllablesight.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45395,10 +45802,10 @@ "synonymousrule.com": { "domain": "synonymousrule.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (synonymousrule.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45406,10 +45813,10 @@ "synonymoussticks.com": { "domain": "synonymoussticks.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (synonymoussticks.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45417,10 +45824,10 @@ "synthesizescarecrow.com": { "domain": "synthesizescarecrow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (synthesizescarecrow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45428,10 +45835,10 @@ "tackytrains.com": { "domain": "tackytrains.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tackytrains.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45439,10 +45846,10 @@ "tacojournal.com": { "domain": "tacojournal.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tacojournal.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45450,10 +45857,10 @@ "talltouch.com": { "domain": "talltouch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (talltouch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45461,43 +45868,43 @@ "tangibleteam.com": { "domain": "tangibleteam.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tangibleteam.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" }, - "tangyamount.com": { - "domain": "tangyamount.com", + "tangletrace.com": { + "domain": "tangletrace.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tangletrace.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" }, - "tastelesstrees.com": { - "domain": "tastelesstrees.com", + "tangyamount.com": { + "domain": "tangyamount.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tangyamount.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" }, - "tastelesstrucks.com": { - "domain": "tastelesstrucks.com", + "tastelesstrees.com": { + "domain": "tastelesstrees.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tastelesstrees.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45505,10 +45912,10 @@ "tastesnake.com": { "domain": "tastesnake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tastesnake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45516,10 +45923,10 @@ "tawdryson.com": { "domain": "tawdryson.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tawdryson.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45527,10 +45934,21 @@ "tdzvm.pw": { "domain": "tdzvm.pw", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tdzvm.pw)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "teacupbooks.com": { + "domain": "teacupbooks.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (teacupbooks.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45538,10 +45956,10 @@ "tearfulglass.com": { "domain": "tearfulglass.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tearfulglass.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45549,10 +45967,10 @@ "techconverter.com": { "domain": "techconverter.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (techconverter.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45560,10 +45978,10 @@ "tediousbear.com": { "domain": "tediousbear.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tediousbear.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45571,10 +45989,10 @@ "tedioustooth.com": { "domain": "tedioustooth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tedioustooth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45582,10 +46000,10 @@ "teenytinycellar.com": { "domain": "teenytinycellar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (teenytinycellar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45593,10 +46011,10 @@ "teenytinytongue.com": { "domain": "teenytinytongue.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (teenytinytongue.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45604,10 +46022,10 @@ "telephoneapparatus.com": { "domain": "telephoneapparatus.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (telephoneapparatus.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45615,10 +46033,10 @@ "tempertrick.com": { "domain": "tempertrick.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tempertrick.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45626,10 +46044,10 @@ "tempttalk.com": { "domain": "tempttalk.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tempttalk.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45637,10 +46055,10 @@ "temptteam.com": { "domain": "temptteam.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (temptteam.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45648,10 +46066,10 @@ "terriblethumb.com": { "domain": "terriblethumb.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (terriblethumb.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45659,10 +46077,10 @@ "terrifictooth.com": { "domain": "terrifictooth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (terrifictooth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45670,10 +46088,10 @@ "testadmiral.com": { "domain": "testadmiral.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (testadmiral.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45681,10 +46099,10 @@ "texturetrick.com": { "domain": "texturetrick.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (texturetrick.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45692,10 +46110,10 @@ "therapeuticcars.com": { "domain": "therapeuticcars.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (therapeuticcars.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45703,10 +46121,10 @@ "thickticket.com": { "domain": "thickticket.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thickticket.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45714,10 +46132,10 @@ "thicktrucks.com": { "domain": "thicktrucks.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thicktrucks.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45725,10 +46143,10 @@ "thingsafterthought.com": { "domain": "thingsafterthought.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thingsafterthought.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45736,10 +46154,10 @@ "thingstaste.com": { "domain": "thingstaste.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thingstaste.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45747,10 +46165,10 @@ "thinkitwice.com": { "domain": "thinkitwice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thinkitwice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45758,10 +46176,10 @@ "thirdrespect.com": { "domain": "thirdrespect.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thirdrespect.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45769,10 +46187,10 @@ "thirstytwig.com": { "domain": "thirstytwig.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thirstytwig.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45780,10 +46198,10 @@ "thomastorch.com": { "domain": "thomastorch.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thomastorch.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45791,10 +46209,10 @@ "thoughtlessknot.com": { "domain": "thoughtlessknot.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thoughtlessknot.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45802,10 +46220,10 @@ "thrivingmarketplace.com": { "domain": "thrivingmarketplace.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (thrivingmarketplace.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45813,10 +46231,10 @@ "ticketaunt.com": { "domain": "ticketaunt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ticketaunt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45824,10 +46242,10 @@ "ticklesign.com": { "domain": "ticklesign.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ticklesign.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45835,10 +46253,10 @@ "tidymitten.com": { "domain": "tidymitten.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tidymitten.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45846,10 +46264,10 @@ "tightpowder.com": { "domain": "tightpowder.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tightpowder.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45857,10 +46275,10 @@ "tinyswans.com": { "domain": "tinyswans.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tinyswans.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45868,10 +46286,10 @@ "tinytendency.com": { "domain": "tinytendency.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tinytendency.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45879,10 +46297,10 @@ "tiredthroat.com": { "domain": "tiredthroat.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tiredthroat.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45890,10 +46308,10 @@ "toolcapital.com": { "domain": "toolcapital.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (toolcapital.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45901,10 +46319,10 @@ "toomanyalts.com": { "domain": "toomanyalts.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (toomanyalts.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45912,54 +46330,54 @@ "torpidtongue.com": { "domain": "torpidtongue.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (torpidtongue.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" }, - "trackcaddie.com": { - "domain": "trackcaddie.com", + "touristfuel.com": { + "domain": "touristfuel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (touristfuel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" }, - "tradetooth.com": { - "domain": "tradetooth.com", + "trackcaddie.com": { + "domain": "trackcaddie.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (trackcaddie.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" }, - "trafficviews.com": { - "domain": "trafficviews.com", + "tradetooth.com": { + "domain": "tradetooth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tradetooth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" }, - "tranquilamulet.com": { - "domain": "tranquilamulet.com", + "trafficviews.com": { + "domain": "trafficviews.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (trafficviews.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45967,10 +46385,10 @@ "tranquilarchipelago.com": { "domain": "tranquilarchipelago.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tranquilarchipelago.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45978,10 +46396,10 @@ "tranquilcan.com": { "domain": "tranquilcan.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tranquilcan.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -45989,10 +46407,10 @@ "tranquilcanyon.com": { "domain": "tranquilcanyon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tranquilcanyon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46000,10 +46418,10 @@ "tranquilplume.com": { "domain": "tranquilplume.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tranquilplume.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46011,10 +46429,10 @@ "tranquilside.com": { "domain": "tranquilside.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tranquilside.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46022,10 +46440,10 @@ "tranquilveil.com": { "domain": "tranquilveil.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tranquilveil.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46033,10 +46451,10 @@ "tranquilveranda.com": { "domain": "tranquilveranda.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tranquilveranda.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46044,10 +46462,10 @@ "trappush.com": { "domain": "trappush.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (trappush.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46055,10 +46473,10 @@ "treadbun.com": { "domain": "treadbun.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (treadbun.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46066,10 +46484,10 @@ "tremendousearthquake.com": { "domain": "tremendousearthquake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tremendousearthquake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46077,10 +46495,10 @@ "tremendousplastic.com": { "domain": "tremendousplastic.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tremendousplastic.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46088,10 +46506,10 @@ "tremendoustime.com": { "domain": "tremendoustime.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tremendoustime.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46099,10 +46517,10 @@ "tritebadge.com": { "domain": "tritebadge.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tritebadge.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46110,10 +46528,10 @@ "tritethunder.com": { "domain": "tritethunder.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tritethunder.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46121,10 +46539,10 @@ "tritetongue.com": { "domain": "tritetongue.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tritetongue.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46132,10 +46550,10 @@ "troubledtail.com": { "domain": "troubledtail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (troubledtail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46143,10 +46561,10 @@ "troubleshade.com": { "domain": "troubleshade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (troubleshade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46154,10 +46572,10 @@ "truckstomatoes.com": { "domain": "truckstomatoes.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (truckstomatoes.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46165,10 +46583,21 @@ "truculentrate.com": { "domain": "truculentrate.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (truculentrate.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "truebackpack.com": { + "domain": "truebackpack.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (truebackpack.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46176,10 +46605,10 @@ "tumbleicicle.com": { "domain": "tumbleicicle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tumbleicicle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46187,10 +46616,10 @@ "tuneupcoffee.com": { "domain": "tuneupcoffee.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tuneupcoffee.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46198,10 +46627,10 @@ "twistloss.com": { "domain": "twistloss.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (twistloss.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46209,10 +46638,10 @@ "twistsweater.com": { "domain": "twistsweater.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (twistsweater.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46220,10 +46649,10 @@ "typicalairplane.com": { "domain": "typicalairplane.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (typicalairplane.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46231,10 +46660,10 @@ "tzwaw.pw": { "domain": "tzwaw.pw", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (tzwaw.pw)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46242,10 +46671,10 @@ "ubiquitoussea.com": { "domain": "ubiquitoussea.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ubiquitoussea.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46253,10 +46682,10 @@ "ubiquitousyard.com": { "domain": "ubiquitousyard.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ubiquitousyard.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46264,10 +46693,10 @@ "ultravalid.com": { "domain": "ultravalid.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (ultravalid.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46275,10 +46704,10 @@ "unablehope.com": { "domain": "unablehope.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unablehope.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46286,10 +46715,10 @@ "unaccountablecreator.com": { "domain": "unaccountablecreator.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unaccountablecreator.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46297,10 +46726,10 @@ "unaccountablepie.com": { "domain": "unaccountablepie.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unaccountablepie.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46308,10 +46737,10 @@ "unarmedindustry.com": { "domain": "unarmedindustry.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unarmedindustry.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46319,10 +46748,10 @@ "unbecominghall.com": { "domain": "unbecominghall.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unbecominghall.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46330,10 +46759,10 @@ "uncoveredexpert.com": { "domain": "uncoveredexpert.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (uncoveredexpert.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46341,10 +46770,10 @@ "understoodocean.com": { "domain": "understoodocean.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (understoodocean.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46352,10 +46781,10 @@ "unequalbrake.com": { "domain": "unequalbrake.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unequalbrake.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46363,10 +46792,10 @@ "unequaltrail.com": { "domain": "unequaltrail.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unequaltrail.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46374,10 +46803,10 @@ "unknowncontrol.com": { "domain": "unknowncontrol.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unknowncontrol.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46385,10 +46814,21 @@ "unknowncrate.com": { "domain": "unknowncrate.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unknowncrate.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "unknownidea.com": { + "domain": "unknownidea.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (unknownidea.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46396,10 +46836,10 @@ "unknowntray.com": { "domain": "unknowntray.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unknowntray.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46407,10 +46847,10 @@ "untidyquestion.com": { "domain": "untidyquestion.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (untidyquestion.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46418,10 +46858,10 @@ "untidyrice.com": { "domain": "untidyrice.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (untidyrice.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46429,10 +46869,10 @@ "unusedstone.com": { "domain": "unusedstone.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unusedstone.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46440,10 +46880,10 @@ "unusualtitle.com": { "domain": "unusualtitle.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unusualtitle.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46451,10 +46891,10 @@ "unwieldyimpulse.com": { "domain": "unwieldyimpulse.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (unwieldyimpulse.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46462,10 +46902,10 @@ "uppitytime.com": { "domain": "uppitytime.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (uppitytime.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46473,10 +46913,10 @@ "uselesslumber.com": { "domain": "uselesslumber.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (uselesslumber.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46484,10 +46924,10 @@ "validmemo.com": { "domain": "validmemo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (validmemo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46495,10 +46935,10 @@ "vanfireworks.com": { "domain": "vanfireworks.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vanfireworks.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46506,10 +46946,10 @@ "vanishmemory.com": { "domain": "vanishmemory.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vanishmemory.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46517,10 +46957,10 @@ "velvetnova.com": { "domain": "velvetnova.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (velvetnova.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46528,10 +46968,10 @@ "velvetquasar.com": { "domain": "velvetquasar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (velvetquasar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46539,10 +46979,10 @@ "venomousvessel.com": { "domain": "venomousvessel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (venomousvessel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46550,10 +46990,10 @@ "venusgloria.com": { "domain": "venusgloria.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (venusgloria.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46561,10 +47001,21 @@ "verdantanswer.com": { "domain": "verdantanswer.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (verdantanswer.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, + "fingerprinting": 1, + "cookies": 0.01, + "default": "block" + }, + "verdantcrescent.com": { + "domain": "verdantcrescent.com", + "owner": { + "name": "Leven Labs, Inc. DBA Admiral (verdantcrescent.com)", + "displayName": "Admiral" + }, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46572,10 +47023,10 @@ "verdantlabyrinth.com": { "domain": "verdantlabyrinth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (verdantlabyrinth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46583,10 +47034,10 @@ "verdantloom.com": { "domain": "verdantloom.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (verdantloom.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46594,10 +47045,10 @@ "verdantsculpture.com": { "domain": "verdantsculpture.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (verdantsculpture.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46605,10 +47056,10 @@ "verseballs.com": { "domain": "verseballs.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (verseballs.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46616,10 +47067,10 @@ "vibrantcelebration.com": { "domain": "vibrantcelebration.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vibrantcelebration.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46627,10 +47078,10 @@ "vibrantgale.com": { "domain": "vibrantgale.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vibrantgale.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46638,10 +47089,10 @@ "vibranthaven.com": { "domain": "vibranthaven.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vibranthaven.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46649,10 +47100,10 @@ "vibrantpact.com": { "domain": "vibrantpact.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vibrantpact.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46660,10 +47111,10 @@ "vibrantsundown.com": { "domain": "vibrantsundown.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vibrantsundown.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46671,10 +47122,10 @@ "vibranttalisman.com": { "domain": "vibranttalisman.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vibranttalisman.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46682,10 +47133,10 @@ "vibrantvale.com": { "domain": "vibrantvale.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vibrantvale.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46693,10 +47144,10 @@ "victoriousrequest.com": { "domain": "victoriousrequest.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (victoriousrequest.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46704,10 +47155,10 @@ "virtualvincent.com": { "domain": "virtualvincent.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (virtualvincent.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46715,10 +47166,10 @@ "vividcanopy.com": { "domain": "vividcanopy.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vividcanopy.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46726,10 +47177,10 @@ "vividfrost.com": { "domain": "vividfrost.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vividfrost.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46737,10 +47188,10 @@ "vividmeadow.com": { "domain": "vividmeadow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vividmeadow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46748,10 +47199,10 @@ "vividplume.com": { "domain": "vividplume.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vividplume.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46759,10 +47210,10 @@ "voicelessvein.com": { "domain": "voicelessvein.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (voicelessvein.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46770,10 +47221,10 @@ "voidgoo.com": { "domain": "voidgoo.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (voidgoo.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46781,10 +47232,10 @@ "volatileprofit.com": { "domain": "volatileprofit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (volatileprofit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46792,10 +47243,10 @@ "vq1qi.pw": { "domain": "vq1qi.pw", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (vq1qi.pw)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46803,10 +47254,10 @@ "waitingnumber.com": { "domain": "waitingnumber.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (waitingnumber.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46814,10 +47265,10 @@ "wantingwindow.com": { "domain": "wantingwindow.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wantingwindow.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46825,10 +47276,10 @@ "warnwing.com": { "domain": "warnwing.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (warnwing.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46836,10 +47287,10 @@ "washbanana.com": { "domain": "washbanana.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (washbanana.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46847,10 +47298,10 @@ "wateryvan.com": { "domain": "wateryvan.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wateryvan.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46858,10 +47309,10 @@ "waterywave.com": { "domain": "waterywave.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (waterywave.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46869,10 +47320,10 @@ "waterywrist.com": { "domain": "waterywrist.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (waterywrist.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46880,10 +47331,10 @@ "wearbasin.com": { "domain": "wearbasin.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wearbasin.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46891,10 +47342,10 @@ "websitesdude.com": { "domain": "websitesdude.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (websitesdude.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46902,10 +47353,10 @@ "wellgroomedapparel.com": { "domain": "wellgroomedapparel.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wellgroomedapparel.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46913,10 +47364,10 @@ "wellgroomedhydrant.com": { "domain": "wellgroomedhydrant.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wellgroomedhydrant.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46924,10 +47375,10 @@ "wellmadefrog.com": { "domain": "wellmadefrog.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wellmadefrog.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46935,10 +47386,10 @@ "westpalmweb.com": { "domain": "westpalmweb.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (westpalmweb.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46946,10 +47397,10 @@ "whimsicalcanyon.com": { "domain": "whimsicalcanyon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (whimsicalcanyon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46957,10 +47408,10 @@ "whimsicalgrove.com": { "domain": "whimsicalgrove.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (whimsicalgrove.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46968,10 +47419,10 @@ "whineattempt.com": { "domain": "whineattempt.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (whineattempt.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46979,10 +47430,10 @@ "whirlwealth.com": { "domain": "whirlwealth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (whirlwealth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -46990,10 +47441,10 @@ "whiskyqueue.com": { "domain": "whiskyqueue.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (whiskyqueue.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47001,10 +47452,10 @@ "whisperingcascade.com": { "domain": "whisperingcascade.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (whisperingcascade.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47012,10 +47463,10 @@ "whisperingcrib.com": { "domain": "whisperingcrib.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (whisperingcrib.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47023,10 +47474,10 @@ "whisperingquasar.com": { "domain": "whisperingquasar.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (whisperingquasar.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47034,10 +47485,10 @@ "whisperingsummit.com": { "domain": "whisperingsummit.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (whisperingsummit.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47045,10 +47496,10 @@ "whispermeeting.com": { "domain": "whispermeeting.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (whispermeeting.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47056,10 +47507,10 @@ "wildcommittee.com": { "domain": "wildcommittee.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wildcommittee.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47067,10 +47518,10 @@ "wirecomic.com": { "domain": "wirecomic.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wirecomic.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47078,10 +47529,10 @@ "wiredforcoffee.com": { "domain": "wiredforcoffee.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wiredforcoffee.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47089,10 +47540,10 @@ "wirypaste.com": { "domain": "wirypaste.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wirypaste.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47100,10 +47551,10 @@ "wistfulwaste.com": { "domain": "wistfulwaste.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wistfulwaste.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47111,10 +47562,10 @@ "wittypopcorn.com": { "domain": "wittypopcorn.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wittypopcorn.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47122,10 +47573,10 @@ "wittyshack.com": { "domain": "wittyshack.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wittyshack.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47133,10 +47584,10 @@ "workoperation.com": { "domain": "workoperation.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (workoperation.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47144,10 +47595,10 @@ "worldlever.com": { "domain": "worldlever.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (worldlever.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47155,10 +47606,10 @@ "worriednumber.com": { "domain": "worriednumber.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (worriednumber.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47166,10 +47617,10 @@ "worriedwine.com": { "domain": "worriedwine.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (worriedwine.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47177,10 +47628,10 @@ "wretchedfloor.com": { "domain": "wretchedfloor.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wretchedfloor.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47188,10 +47639,10 @@ "wrongpotato.com": { "domain": "wrongpotato.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wrongpotato.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47199,10 +47650,10 @@ "wrongwound.com": { "domain": "wrongwound.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wrongwound.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47210,10 +47661,10 @@ "wtaccesscontrol.com": { "domain": "wtaccesscontrol.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (wtaccesscontrol.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47221,10 +47672,10 @@ "xovq5nemr.com": { "domain": "xovq5nemr.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (xovq5nemr.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47232,10 +47683,10 @@ "yieldingwoman.com": { "domain": "yieldingwoman.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (yieldingwoman.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47243,10 +47694,10 @@ "zbwp6ghm.com": { "domain": "zbwp6ghm.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (zbwp6ghm.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47254,10 +47705,10 @@ "zephyrcatalyst.com": { "domain": "zephyrcatalyst.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (zephyrcatalyst.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47265,10 +47716,10 @@ "zephyrlabyrinth.com": { "domain": "zephyrlabyrinth.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (zephyrlabyrinth.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47276,10 +47727,10 @@ "zestyhorizon.com": { "domain": "zestyhorizon.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (zestyhorizon.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47287,10 +47738,10 @@ "zestyrover.com": { "domain": "zestyrover.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (zestyrover.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47298,10 +47749,10 @@ "zestywire.com": { "domain": "zestywire.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (zestywire.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47309,10 +47760,10 @@ "zipperxray.com": { "domain": "zipperxray.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (zipperxray.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47320,10 +47771,10 @@ "zlp6s.pw": { "domain": "zlp6s.pw", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (zlp6s.pw)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -47331,10 +47782,10 @@ "zonewedgeshaft.com": { "domain": "zonewedgeshaft.com", "owner": { - "name": "Leven Labs, Inc. DBA Admiral", + "name": "Leven Labs, Inc. DBA Admiral (zonewedgeshaft.com)", "displayName": "Admiral" }, - "prevalence": 0.0109, + "prevalence": 0.0111, "fingerprinting": 1, "cookies": 0.01, "default": "block" @@ -57332,1579 +57783,11274 @@ "ytimg.com" ] }, - "Leven Labs, Inc. DBA Admiral": { - "domains": [ - "2znp09oa.com", - "4jnzhl0d0.com", - "5mcwl.pw", - "6ldu6qa.com", - "82o9v830.com", - "abilityscale.com", - "aboardamusement.com", - "aboardlevel.com", - "abovechat.com", - "abruptroad.com", - "absentairport.com", - "absorbingband.com", - "absorbingcorn.com", - "absorbingprison.com", - "abstractedamount.com", - "abstractedauthority.com", - "absurdapple.com", - "abundantcoin.com", - "acceptableauthority.com", - "accurateanimal.com", - "accuratecoal.com", - "achieverknee.com", - "acidicstraw.com", - "acidpigs.com", - "acridangle.com", - "acridtwist.com", - "actoramusement.com", - "actuallysheep.com", - "actuallysnake.com", - "actuallything.com", - "adamantsnail.com", - "addictedattention.com", - "admiral.pub", - "adorableanger.com", - "adorableattention.com", - "adventurousamount.com", - "afraidlanguage.com", - "aftermathbrother.com", - "agilebreeze.com", - "agreeablearch.com", - "agreeabletouch.com", - "aheadday.com", - "aheadgrow.com", - "aheadmachine.com", - "ak0gsh40.com", - "alertarithmetic.com", - "aliasanvil.com", - "alikeaddition.com", - "aliveachiever.com", - "alleythecat.com", - "alluringbucket.com", - "aloofmetal.com", - "aloofvest.com", - "alpineactor.com", - "ambientdusk.com", - "ambientlagoon.com", - "ambiguousafternoon.com", - "ambiguousanger.com", - "ambiguousdinosaurs.com", - "ambiguousincome.com", - "ambrosialsummit.com", - "amethystzenith.com", - "amuckafternoon.com", - "amusedbucket.com", - "analogwonder.com", - "analyzecorona.com", - "ancientact.com", - "annoyedairport.com", - "annoyingacoustics.com", - "annoyingclover.com", - "anxiousapples.com", - "aquaticowl.com", - "ar1nvz5.com", - "archswimming.com", - "aromamirror.com", - "arrivegrowth.com", - "artthevoid.com", - "aspiringapples.com", - "aspiringattempt.com", - "aspiringtoy.com", - "astonishingfood.com", - "astralhustle.com", - "astrallullaby.com", - "attendchase.com", - "attractionbanana.com", - "attractivecap.com", - "audioarctic.com", - "automaticside.com", - "automaticturkey.com", - "availablerest.com", - "avalonalbum.com", - "averageactivity.com", - "awarealley.com", - "awesomeagreement.com", - "awzbijw.com", - "axiomaticalley.com", - "axiomaticanger.com", - "azuremystique.com", - "backupcat.com", - "badgeboat.com", - "badgerabbit.com", - "badgevolcano.com", - "bagbeam.com", - "baitbaseball.com", - "balloonbelieve.com", - "ballsbanana.com", - "bananabarrel.com", - "bandborder.com", - "barbarousbase.com", - "basilfish.com", - "basketballbelieve.com", - "baskettexture.com", - "bawdybalance.com", - "bawdybeast.com", - "beamvolcano.com", - "beancontrol.com", - "bearmoonlodge.com", - "bedsberry.com", - "beetleend.com", - "beginnerpancake.com", - "begintrain.com", - "berserkhydrant.com", - "bespokesandals.com", - "bestboundary.com", - "bewilderedbattle.com", - "bewilderedblade.com", - "bhcumsc.com", - "bikepaws.com", - "bikesboard.com", - "billowybead.com", - "billowybelief.com", - "binspiredtees.com", - "birthdaybelief.com", - "blackbrake.com", - "bleachbubble.com", - "bleachscarecrow.com", - "bleedlight.com", - "blesspizzas.com", - "blissfulcrescendo.com", - "blissfullagoon.com", - "blueeyedblow.com", - "blushingbeast.com", - "blushingbread.com", - "boatsvest.com", - "boilingbeetle.com", - "boilingcredit.com", - "boostbehavior.com", - "boredcrown.com", - "bouncyproperty.com", - "boundarybusiness.com", - "boundlessargument.com", - "boundlessbrake.com", - "boundlessveil.com", - "brainybasin.com", - "brainynut.com", - "branchborder.com", - "brandsfive.com", - "brandybison.com", - "bravebone.com", - "bravecalculator.com", - "breadbalance.com", - "breakableinsurance.com", - "breakfastboat.com", - "breezygrove.com", - "brianwould.com", - "brighttoe.com", - "briskstorm.com", - "broadborder.com", - "broadboundary.com", - "broadcastbed.com", - "broaddoor.com", - "brotherslocket.com", - "bruisebaseball.com", - "brunchforher.com", - "buildingknife.com", - "bulbbait.com", - "burgersalt.com", - "burlywhistle.com", - "burnbubble.com", - "bushesbag.com", - "bustlingbath.com", - "bustlingbook.com", - "butterbulb.com", - "butterburst.com", - "buttonladybug.com", - "cakesdrum.com", - "calculatingcircle.com", - "calculatingtoothbrush.com", - "calculatorstatement.com", - "callousbrake.com", - "calmcactus.com", - "calypsocapsule.com", - "cannonchange.com", - "capablecows.com", - "capablecup.com", - "capriciouscorn.com", - "captivatingcanyon.com", - "captivatingillusion.com", - "captivatingpanorama.com", - "captivatingperformance.com", - "carefuldolls.com", - "caringcast.com", - "caringzinc.com", - "carloforward.com", - "carpentercomparison.com", - "carscannon.com", - "cartkitten.com", - "carvecakes.com", - "catalogcake.com", - "catschickens.com", - "cattlecommittee.com", - "causecherry.com", - "cautiouscamera.com", - "cautiouscherries.com", - "cautiouscrate.com", - "cautiouscredit.com", - "cavecurtain.com", - "ceciliavenus.com", - "celestialeuphony.com", - "celestialquasar.com", - "celestialspectra.com", - "chaireggnog.com", - "chairscrack.com", - "chairsdonkey.com", - "chalkoil.com", - "changeablecats.com", - "channelcamp.com", - "chargecracker.com", - "charmingplate.com", - "charscroll.com", - "cheerycraze.com", - "cherriescare.com", - "chessbranch.com", - "chesscolor.com", - "chesscrowd.com", - "chickensstation.com", - "childlikecrowd.com", - "childlikeexample.com", - "childlikeform.com", - "chilledliquid.com", - "chingovernment.com", - "chinsnakes.com", - "chipperisle.com", - "chivalrouscord.com", - "chubbycreature.com", - "chunkycactus.com", - "cicdserver.com", - "cinemabonus.com", - "circlelevel.com", - "clammychicken.com", - "cleanhaircut.com", - "cloisteredcord.com", - "cloisteredcurve.com", - "closedcows.com", - "closefriction.com", - "cloudhustles.com", - "cloudjumbo.com", - "clovercabbage.com", - "clumsycar.com", - "coatfood.com", - "cobaltoverture.com", - "coffeesidehustle.com", - "coldbalance.com", - "coldcreatives.com", - "colorfulafterthought.com", - "colossalclouds.com", - "colossalcoat.com", - "colossalcry.com", - "combativecar.com", - "combativedetail.com", - "combbit.com", - "combcattle.com", - "combcompetition.com", - "cometquote.com", - "comfortablecheese.com", - "comfygoodness.com", - "companyparcel.com", - "comparereaction.com", - "compiledoctor.com", - "concernedchange.com", - "concernedchickens.com", - "condemnedcomb.com", - "conditionchange.com", - "conditioncrush.com", - "confesschairs.com", - "configchain.com", - "confusedcart.com", - "connectashelf.com", - "consciouschairs.com", - "consciouscheese.com", - "consciousdirt.com", - "consumerzero.com", - "controlcola.com", - "controlhall.com", - "convertbatch.com", - "cooingcoal.com", - "coordinatedbedroom.com", - "coordinatedcoat.com", - "copycarpenter.com", - "copyrightaccesscontrols.com", - "coralreverie.com", - "corgibeachday.com", - "cosmicsculptor.com", - "cosmosjackson.com", - "courageousbaby.com", - "coverapparatus.com", - "coverlayer.com", - "cozydusk.com", - "cozyhillside.com", - "cozytryst.com", - "crabbychin.com", - "crackedsafe.com", - "crafthenry.com", - "crashchance.com", - "cratecamera.com", - "craterbox.com", - "creatorcherry.com", - "creatorpassenger.com", - "creaturecabbage.com", - "crimsonmeadow.com", - "critictruck.com", - "crookedcreature.com", - "crowdedmass.com", - "cruisetourist.com", - "cryptvalue.com", - "crystalboulevard.com", - "crystalstatus.com", - "cubchannel.com", - "cubepins.com", - "cuddlycake.com", - "cuddlylunchroom.com", - "culturedcamera.com", - "culturedfeather.com", - "cumbersomecar.com", - "cumbersomecarpenter.com", - "cumbersomecloud.com", - "curiouschalk.com", - "curioussuccess.com", - "curlycannon.com", - "currentcollar.com", - "curtaincows.com", - "curvedhoney.com", - "curvycord.com", - "curvycry.com", - "cushiondrum.com", - "cushionpig.com", - "cutcurrent.com", - "cutechin.com", - "cyclopsdial.com", - "dailydivision.com", - "damagedadvice.com", - "damageddistance.com", - "damdoor.com", - "dampdock.com", - "dancemistake.com", - "dandydune.com", - "dandyglow.com", - "dapperdiscussion.com", - "dapperfloor.com", - "datastoried.com", - "daughterstone.com", - "daymodern.com", - "dazzlingbook.com", - "deafeningdock.com", - "deafeningdowntown.com", - "debonairdust.com", - "debonairtree.com", - "debugentity.com", - "decidedrum.com", - "decisivebase.com", - "decisivedrawer.com", - "decisiveducks.com", - "decoycreation.com", - "deerbeginner.com", - "defeatedbadge.com", - "defensevest.com", - "degreechariot.com", - "delegatediscussion.com", - "delicatecascade.com", - "deliciousducks.com", - "deltafault.com", - "deluxecrate.com", - "dependenttrip.com", - "desirebucket.com", - "desiredirt.com", - "detailedgovernment.com", - "detailedkitten.com", - "detectdinner.com", - "detectdiscovery.com", - "detourgame.com", - "deviceseal.com", - "deviceworkshop.com", - "devilishdinner.com", - "dewdroplagoon.com", - "difficultfog.com", - "digestiondrawer.com", - "dinnerquartz.com", - "diplomahawaii.com", - "direfuldesk.com", - "disagreeabledrop.com", - "discreetfield.com", - "discreetquarter.com", - "distributionneck.com", - "distributionpocket.com", - "distributiontomatoes.com", - "disturbedquiet.com", - "divehope.com", - "dk4ywix.com", - "dockdigestion.com", - "dogsonclouds.com", - "dollardelta.com", - "doubledefend.com", - "doubtdrawer.com", - "dq95d35.com", - "drainpaste.com", - "dramaticdirection.com", - "dreamycanyon.com", - "driftpizza.com", - "drollwharf.com", - "drydrum.com", - "dustydime.com", - "dustyhammer.com", - "eagereden.com", - "eagerflame.com", - "eagerknight.com", - "earthyfarm.com", - "eatablesquare.com", - "echochief.com", - "echoinghaven.com", - "effervescentcoral.com", - "effervescentvista.com", - "effulgentnook.com", - "effulgenttempest.com", - "ejyymghi.com", - "elasticchange.com", - "elderlybean.com", - "elderlytown.com", - "elephantqueue.com", - "elusivebreeze.com", - "elusivecascade.com", - "elysiantraverse.com", - "embellishedmeadow.com", - "embermosaic.com", - "emberwhisper.com", - "eminentbubble.com", - "eminentend.com", - "emptyescort.com", - "enchantedskyline.com", - "enchantingdiscovery.com", - "enchantingenchantment.com", - "enchantingmystique.com", - "enchantingtundra.com", - "enchantingvalley.com", - "encourageshock.com", - "encouragingthread.com", - "endlesstrust.com", - "endurablebulb.com", - "energeticexample.com", - "energeticladybug.com", - "engineergrape.com", - "engineertrick.com", - "enigmaticblossom.com", - "enigmaticcanyon.com", - "enigmaticvoyage.com", - "enormousearth.com", - "enormousfoot.com", - "enterdrama.com", - "entertainskin.com", - "enthusiastictemper.com", - "enviousshape.com", - "enviousthread.com", - "equablekettle.com", - "etherealbamboo.com", - "ethereallagoon.com", - "etherealpinnacle.com", - "etherealquasar.com", - "etherealripple.com", - "evanescentedge.com", - "evasivejar.com", - "eventexistence.com", - "exampleshake.com", - "excitingtub.com", - "exclusivebrass.com", - "executeknowledge.com", - "exhibitsneeze.com", - "expansioneggnog.com", - "exquisiteartisanship.com", - "extractobservation.com", - "extralocker.com", - "extramonies.com", - "exuberantedge.com", - "facilitatebreakfast.com", - "fadechildren.com", - "fadedsnow.com", - "fadewaves.com", - "fairfeeling.com", - "fairiesbranch.com", - "fairytaleflame.com", - "fallaciousfifth.com", - "falseframe.com", - "familiarrod.com", - "fancyactivity.com", - "fancydune.com", - "fancygrove.com", - "fangfeeling.com", - "fantastictone.com", - "farethief.com", - "farmergoldfish.com", - "farshake.com", - "farsnails.com", - "fastenfather.com", - "fasterfineart.com", - "fasterjson.com", - "fatcoil.com", - "faucetfoot.com", - "faultycanvas.com", - "fearfulfish.com", - "fearfulmint.com", - "fearlessfaucet.com", - "fearlesstramp.com", - "featherstage.com", - "feeblestamp.com", - "feignedfaucet.com", - "fernwaycloud.com", - "fertilefeeling.com", - "fewjuice.com", - "fewkittens.com", - "finalizeforce.com", - "financefear.com", - "finestpiece.com", - "finitecube.com", - "firecatfilms.com", - "fireworkcamp.com", - "firstendpoint.com", - "firstfrogs.com", - "firsttexture.com", - "fitmessage.com", - "fivesidedsquare.com", - "fixedfold.com", - "flakyfeast.com", - "flameuncle.com", - "flimsycircle.com", - "flimsythought.com", - "flippedfunnel.com", - "floodprincipal.com", - "flourishingcollaboration.com", - "flourishingendeavor.com", - "flourishinginnovation.com", - "flourishingpartnership.com", - "flowersornament.com", - "flowerstreatment.com", - "flowerycreature.com", - "floweryfact.com", - "floweryflavor.com", - "floweryoperation.com", - "flutteringfireman.com", - "foambench.com", - "followborder.com", - "forecasttiger.com", - "foretellfifth.com", - "forevergears.com", - "forgetfulflowers.com", - "forgetfulsnail.com", - "fortunatemark.com", - "fractalcoast.com", - "frailfruit.com", - "framebanana.com", - "franticroof.com", - "frantictrail.com", - "frazzleart.com", - "freakyglass.com", - "freezingbuilding.com", - "frequentflesh.com", - "friendlycrayon.com", - "friendlyfold.com", - "friendwool.com", - "frightenedpotato.com", - "frogator.com", - "frogtray.com", - "fronttoad.com", - "frugalfiestas.com", - "fumblingform.com", - "functionalcrown.com", - "functionalfeather.com", - "funoverbored.com", - "funoverflow.com", - "furnstudio.com", - "furryfork.com", - "furryhorses.com", - "futuristicapparatus.com", - "futuristicfairies.com", - "futuristicfifth.com", - "futuristicframe.com", - "fuzzyaudio.com", - "fuzzybasketball.com", - "fuzzyerror.com", - "fvl1f.pw", - "gammamaximum.com", - "gardenovens.com", - "gaudyairplane.com", - "geekactive.com", - "generalprose.com", - "generateoffice.com", - "giantsvessel.com", - "giddycoat.com", - "giraffepiano.com", - "gitcrumbs.com", - "givevacation.com", - "gladglen.com", - "gladysway.com", - "glamhawk.com", - "gleamingcow.com", - "gleaminghaven.com", - "glisteningguide.com", - "glisteningsign.com", - "glitteringbrook.com", - "gloriousbeef.com", - "glowingmeadow.com", - "gluedpixel.com", - "goldfishgrowth.com", - "gondolagnome.com", - "goodbark.com", - "gorgeousedge.com", - "gracefulmilk.com", - "grainmass.com", - "grandfatherguitar.com", - "gravitygive.com", - "gravitykick.com", - "grayoranges.com", - "grayreceipt.com", - "greasysquare.com", - "greyinstrument.com", - "gripcorn.com", - "groovyornament.com", - "grouchybrothers.com", - "grouchypush.com", - "grumpydime.com", - "grumpydrawer.com", - "guardeddirection.com", - "guardedschool.com", - "guessdetail.com", - "guidecent.com", - "guildalpha.com", - "guiltlessbasketball.com", - "gulliblegrip.com", - "gustocooking.com", - "gustygrandmother.com", - "h78xb.pw", - "habitualhumor.com", - "halcyoncanyon.com", - "halcyonsculpture.com", - "hallowedinvention.com", - "haltingbadge.com", - "haltingdivision.com", - "haltinggold.com", - "hammerhearing.com", - "handleteeth.com", - "handnorth.com", - "handsomehose.com", - "handsomeindustry.com", - "handsomelyhealth.com", - "handsomelythumb.com", - "handsomeyam.com", - "handyfield.com", - "handyfireman.com", - "handyincrease.com", - "haplesshydrant.com", - "haplessland.com", - "happysponge.com", - "harborcaption.com", - "harborcub.com", - "harmonicbamboo.com", - "harmonywing.com", - "hatefulrequest.com", - "headydegree.com", - "headyhook.com", - "healflowers.com", - "hearinglizards.com", - "heartbreakingmind.com", - "hearthorn.com", - "heavydetail.com", - "heavyplayground.com", - "helpcollar.com", - "helpflame.com", - "hfc195b.com", - "highfalutinbox.com", - "highfalutinhoney.com", - "hilariouszinc.com", - "historicalbeam.com", - "hocgeese.com", - "hollowafterthought.com", - "homelycrown.com", - "honeybulb.com", - "honeywhipped.com", - "honorablehydrant.com", - "honorableland.com", - "horsenectar.com", - "hospitablehall.com", - "hospitablehat.com", - "howdyinbox.com", - "humdrumhobbies.com", - "humdrumtouch.com", - "hurtgrape.com", - "hypnoticwound.com", - "hystericalcloth.com", - "hystericalfinger.com", - "i9w8p.pw", - "idolscene.com", - "idyllicjazz.com", - "illinvention.com", - "illustriousoatmeal.com", - "immensehoney.com", - "imminentshake.com", - "importantmeat.com", - "importedincrease.com", - "importedinsect.com", - "importlocate.com", - "impossibleexpansion.com", - "impossiblemove.com", - "impulsejewel.com", - "impulselumber.com", - "incomehippo.com", - "incompetentjoke.com", - "inconclusiveaction.com", - "infamousstream.com", - "innocentlamp.com", - "innocentwax.com", - "inputicicle.com", - "inquisitiveice.com", - "inquisitiveinvention.com", - "intelligentscissors.com", - "intentlens.com", - "interestdust.com", - "internalcondition.com", - "internalsink.com", - "iotapool.com", - "irritatingfog.com", - "itemslice.com", - "ivykiosk.com", - "j93557g.com", - "jadeitite.com", - "jaderooster.com", - "jailbulb.com", - "joblessdrum.com", - "jollylens.com", - "joyfulkeen.com", - "joyoussurprise.com", - "jubilantaura.com", - "jubilantcanyon.com", - "jubilantcascade.com", - "jubilantglimmer.com", - "jubilanttempest.com", - "jubilantwhisper.com", - "justicejudo.com", - "k54nw.pw", - "kaputquill.com", - "keenquill.com", - "kindhush.com", - "kitesquirrel.com", - "knitstamp.com", - "knottyswing.com", - "laboredlight.com", - "laboredlocket.com", - "lameletters.com", - "lamplow.com", - "largebrass.com", - "lasttaco.com", - "laughablelizards.com", - "leaplunchroom.com", - "leftliquid.com", - "lemonpackage.com", - "lemonsandjoy.com", - "liftedknowledge.com", - "lightenafterthought.com", - "lighttalon.com", - "livelumber.com", - "livelylaugh.com", - "livelyreward.com", - "livingsleet.com", - "lizardslaugh.com", - "loadsurprise.com", - "lonelyflavor.com", - "longingtrees.com", - "looseloaf.com", - "lorenzourban.com", - "losslace.com", - "loudlunch.com", - "lovelydrum.com", - "loveseashore.com", - "lp3tdqle.com", - "ludicrousarch.com", - "lumberamount.com", - "luminousboulevard.com", - "luminouscatalyst.com", - "luminoussculptor.com", - "lumpygnome.com", - "lumpylumber.com", - "lunchroomlock.com", - "lustroushaven.com", - "lyricshook.com", - "maddeningpowder.com", - "madebyintent.com", - "magicaljoin.com", - "magnetairport.com", - "majesticmountainrange.com", - "majesticwaterscape.com", - "majesticwilderness.com", - "maliciousmusic.com", - "managedpush.com", - "mantrafox.com", - "marblediscussion.com", - "markahouse.com", - "markedmeasure.com", - "marketspiders.com", - "marriedbelief.com", - "marriedmailbox.com", - "marriedvalue.com", - "massivemark.com", - "materialisticmoon.com", - "materialmilk.com", - "materialparcel.com", - "materialplayground.com", - "meadowlullaby.com", - "measlymiddle.com", - "meatydime.com", - "meddleplant.com", - "mediatescarf.com", - "mediumshort.com", - "mellowhush.com", - "mellowmailbox.com", - "melodiouschorus.com", - "melodiouscomposition.com", - "meltmilk.com", - "memopilot.com", - "memorizematch.com", - "memorizeneck.com", - "mentorsticks.com", - "meremark.com", - "merequartz.com", - "merryopal.com", - "merryvault.com", - "messagenovice.com", - "messyoranges.com", - "mightyspiders.com", - "mimosamajor.com", - "mindfulgem.com", - "minorcattle.com", - "minusmental.com", - "minuteburst.com", - "miscreantmoon.com", - "mistyhorizon.com", - "mittencattle.com", - "mixedreading.com", - "modularmental.com", - "monacobeatles.com", - "moorshoes.com", - "motionflowers.com", - "motionlessbag.com", - "motionlessbelief.com", - "motionlessmeeting.com", - "movemeal.com", - "muddledaftermath.com", - "muddledmemory.com", - "mundanenail.com", - "mundanepollution.com", - "mushywaste.com", - "muteknife.com", - "mutemailbox.com", - "mysticalagoon.com", - "naivestatement.com", - "nappyattack.com", - "nappyneck.com", - "neatshade.com", - "nebulacrescent.com", - "nebulajubilee.com", - "nebulousamusement.com", - "nebulousgarden.com", - "nebulousquasar.com", - "nebulousripple.com", - "needlessnorth.com", - "needyneedle.com", - "neighborlywatch.com", - "nervoussummer.com", - "niftygraphs.com", - "niftyhospital.com", - "niftyjelly.com", - "nightwound.com", - "nimbleplot.com", - "nocturnalloom.com", - "nocturnalmystique.com", - "noiselessplough.com", - "nonchalantnerve.com", - "nondescriptcrowd.com", - "nondescriptnote.com", - "nondescriptstocking.com", - "nostalgicknot.com", - "nostalgicneed.com", - "notifyglass.com", - "nudgeduck.com", - "nullnorth.com", - "numberlessring.com", - "numerousnest.com", - "nutritiousbean.com", - "nuttyorganization.com", - "oafishchance.com", - "oafishobservation.com", - "obscenesidewalk.com", - "observantice.com", - "oldfashionedoffer.com", - "omgthink.com", - "omniscientfeeling.com", - "onlywoofs.com", - "opalquill.com", - "operationchicken.com", - "operationnail.com", - "oppositeoperation.com", - "optimallimit.com", - "opulentsylvan.com", - "orientedargument.com", - "orionember.com", - "ourblogthing.com", - "outgoinggiraffe.com", - "outsidevibe.com", - "outstandingincome.com", - "outstandingsnails.com", - "overconfidentfood.com", - "overkick.com", - "overratedchalk.com", - "owlsr.us", - "oxygenfuse.com", - "pailcrime.com", - "pailpatch.com", - "painstakingpickle.com", - "paintpear.com", - "paleleaf.com", - "pamelarandom.com", - "panickycurtain.com", - "panickypancake.com", - "panoramicplane.com", - "parallelbulb.com", - "parchedsofa.com", - "pardonpopular.com", - "parentpicture.com", - "parsimoniouspolice.com", - "partplanes.com", - "passivepolo.com", - "pastoralroad.com", - "pawsnug.com", - "peacefullimit.com", - "pedromister.com", - "pedropanther.com", - "perceivequarter.com", - "perkyjade.com", - "petiteumbrella.com", - "philippinch.com", - "photographpan.com", - "piespower.com", - "piquantgrove.com", - "piquantmeadow.com", - "piquantpigs.com", - "piquantprice.com", - "piquantvortex.com", - "pixeledhub.com", - "pizzasnut.com", - "placeframe.com", - "placidactivity.com", - "placidperson.com", - "planebasin.com", - "plantdigestion.com", - "playfulriver.com", - "pleasantpump.com", - "plotparent.com", - "plotrabbit.com", - "pluckypocket.com", - "pluckyzone.com", - "pocketfaucet.com", - "poeticpackage.com", - "pointdigestion.com", - "pointlesshour.com", - "pointlesspocket.com", - "pointlessprofit.com", - "pointlessrifle.com", - "polarismagnet.com", - "polishedcrescent.com", - "polishedfolly.com", - "politeplanes.com", - "politicalflip.com", - "politicalporter.com", - "popplantation.com", - "possibleboats.com", - "possiblepencil.com", - "potatoinvention.com", - "powderjourney.com", - "powerfulblends.com", - "powerfulcopper.com", - "preciousplanes.com", - "predictplate.com", - "prefixpatriot.com", - "prepareplanes.com", - "presetrabbits.com", - "previousplayground.com", - "previouspotato.com", - "priceypies.com", - "pricklydebt.com", - "pricklypollution.com", - "pristinegale.com", - "probablepartner.com", - "processplantation.com", - "producepickle.com", - "productsurfer.com", - "profitrumour.com", - "profusesupport.com", - "promiseair.com", - "proofconvert.com", - "propertypotato.com", - "protestcopy.com", - "psychedelicarithmetic.com", - "psychedelicchess.com", - "publicsofa.com", - "puffyloss.com", - "puffypaste.com", - "puffypull.com", - "puffypurpose.com", - "pulsatingmeadow.com", - "pumpedpancake.com", - "pumpedpurpose.com", - "punyplant.com", - "puppytooth.com", - "purposepipe.com", - "quacksquirrel.com", - "quaintcan.com", - "quaintlake.com", - "quantumlagoon.com", - "quantumshine.com", - "queenskart.com", - "quietknowledge.com", - "quillkick.com", - "quirkybliss.com", - "quirkysugar.com", - "quixoticnebula.com", - "quizzicalpartner.com", - "quizzicalzephyr.com", - "rabbitbreath.com", - "rabbitrifle.com", - "radiantcanopy.com", - "radiantlullaby.com", - "radiateprose.com", - "railwaygiraffe.com", - "railwayreason.com", - "raintwig.com", - "rainyhand.com", - "rainyrule.com", - "rambunctiousflock.com", - "rangecake.com", - "rangeplayground.com", - "raresummer.com", - "reactjspdf.com", - "readingguilt.com", - "readymoon.com", - "readysnails.com", - "realizedoor.com", - "realizerecess.com", - "rebelclover.com", - "rebelhen.com", - "rebelsubway.com", - "rebelswing.com", - "receiptcent.com", - "receptiveink.com", - "receptivereaction.com", - "recessrain.com", - "reconditeprison.com", - "reconditerake.com", - "reconditerespect.com", - "reflectivestatement.com", - "refundradar.com", - "regularplants.com", - "regulatesleet.com", - "rehabilitatereason.com", - "relationrest.com", - "reloadphoto.com", - "rememberdiscussion.com", - "rentinfinity.com", - "repeatsweater.com", - "replaceroute.com", - "resonantbrush.com", - "resonantrock.com", - "respectrain.com", - "resplendentecho.com", - "restrainstorm.com", - "restructureinvention.com", - "retrievemint.com", - "rhetoricalactivity.com", - "rhetoricalloss.com", - "rhetoricalveil.com", - "rhymezebra.com", - "rhythmrule.com", - "richstring.com", - "righteouscrayon.com", - "rightfulfall.com", - "rigidrobin.com", - "rigidveil.com", - "rigorlab.com", - "ringplant.com", - "ringsrecord.com", - "ritzykey.com", - "ritzyrepresentative.com", - "ritzyveil.com", - "rockpebbles.com", - "rollconnection.com", - "roofrelation.com", - "roseincome.com", - "rottenray.com", - "ruralrobin.com", - "rusticprice.com", - "ruthlessdegree.com", - "ruthlessmilk.com", - "sableloss.com", - "sablesmile.com", - "sablesong.com", - "sadloaf.com", - "saffronrefuge.com", - "sagargift.com", - "saltsacademy.com", - "samesticks.com", - "samestretch.com", - "samplesamba.com", - "satisfycork.com", - "savoryorange.com", - "scarcecard.com", - "scarceshock.com", - "scarcesign.com", - "scarcestructure.com", - "scarcesurprise.com", - "scaredcomfort.com", - "scaredsidewalk.com", - "scaredslip.com", - "scaredsnake.com", - "scaredsnakes.com", - "scaredsong.com", - "scaredstomach.com", - "scaredswing.com", - "scarefowl.com", - "scarfsmash.com", - "scatteredheat.com", - "scatteredquiver.com", - "scatteredstream.com", - "scenicapparel.com", - "scientificshirt.com", - "scintillatingscissors.com", - "scintillatingsilver.com", - "scissorsstatement.com", - "scrapesleep.com", - "scratchsofa.com", - "screechingfurniture.com", - "screechingstocking.com", - "screechingstove.com", - "scribbleson.com", - "scribblestring.com", - "scrollservice.com", - "scrubswim.com", - "seashoresociety.com", - "seatsmoke.com", - "secondhandfall.com", - "secretivesheep.com", - "secretspiders.com", - "secretturtle.com", - "seedscissors.com", - "seemlysuggestion.com", - "selectivesummer.com", - "selfishsea.com", - "selfishsnake.com", - "sendingspire.com", - "sensorsmile.com", - "separatesort.com", - "seraphichorizon.com", - "seraphicjubilee.com", - "serendipityecho.com", - "serenecascade.com", - "serenepebble.com", - "serenesurf.com", - "serioussuit.com", - "serpentshampoo.com", - "settleshoes.com", - "shadeship.com", - "shaggytank.com", - "shakegoldfish.com", - "shakyseat.com", - "shakysurprise.com", - "shakytaste.com", - "shallowblade.com", - "shamerain.com", - "shapecomb.com", - "sharkskids.com", - "sheargovernor.com", - "shesubscriptions.com", - "shinypond.com", - "shirtsidewalk.com", - "shiveringspot.com", - "shiverscissors.com", - "shockinggrass.com", - "shockingship.com", - "shredquiz.com", - "shrillspoon.com", - "shydinosaurs.com", - "sicksmash.com", - "sierrakermit.com", - "signaturepod.com", - "siliconslow.com", - "sillyscrew.com", - "simplesidewalk.com", - "simulateswing.com", - "sincerebuffalo.com", - "sincerepelican.com", - "sinceresubstance.com", - "singroot.com", - "sinkbooks.com", - "sixauthority.com", - "sixscissors.com", - "sizzlingsmoke.com", - "skillfuldrop.com", - "skisofa.com", - "slaysweater.com", - "slimyscarf.com", - "slinksuggestion.com", - "slopesoap.com", - "smallershops.com", - "smashquartz.com", - "smashshoe.com", - "smashsurprise.com", - "smilewound.com", - "smilingcattle.com", - "smilingswim.com", - "smilingwaves.com", - "smoggysnakes.com", - "smoggysongs.com", - "smoggystation.com", - "snacktoken.com", - "snakemineral.com", - "snakeslang.com", - "sneakwind.com", - "sneakystew.com", - "snoresmile.com", - "snowmentor.com", - "soggysponge.com", - "soggyzoo.com", - "solarislabyrinth.com", - "somberscarecrow.com", - "sombersea.com", - "sombersquirrel.com", - "sombersticks.com", - "sombersurprise.com", - "songsterritory.com", - "soothingglade.com", - "sophisticatedstove.com", - "sordidsmile.com", - "soresidewalk.com", - "soresneeze.com", - "sorethunder.com", - "soretrain.com", - "sortsail.com", - "sortsummer.com", - "soundstocking.com", - "sowlettuce.com", - "spadelocket.com", - "sparkgoal.com", - "sparklingshelf.com", - "specialscissors.com", - "spectacularstamp.com", - "spellmist.com", - "spellsalsa.com", - "spiffymachine.com", - "spirebaboon.com", - "spookyexchange.com", - "spookyskate.com", - "spookysleet.com", - "spookystitch.com", - "spoonsilk.com", - "spotlessstamp.com", - "spottednoise.com", - "springolive.com", - "springsister.com", - "springsnails.com", - "sproutingbag.com", - "sprydelta.com", - "sprysummit.com", - "spuriousair.com", - "spuriousbase.com", - "spurioussquirrel.com", - "spuriousstranger.com", - "spysubstance.com", - "squalidscrew.com", - "squeakzinc.com", - "squealingturn.com", - "stakingbasket.com", - "stakingshock.com", - "stakingsmile.com", - "staleshow.com", - "stalesummer.com", - "starkscale.com", - "startingcars.com", - "statshunt.com", - "statuesqueship.com", - "stayaction.com", - "steadfastseat.com", - "steadfastsound.com", - "steadfastsystem.com", - "steadycopper.com", - "stealsteel.com", - "steepscale.com", - "steepsister.com", - "steepsquirrel.com", - "stepcattle.com", - "stepplane.com", - "stepwisevideo.com", - "stereoproxy.com", - "stereotypedsugar.com", - "stewspiders.com", - "stiffgame.com", - "stiffstem.com", - "stimulatingsneeze.com", - "stingsquirrel.com", - "stingycrush.com", - "stingyshoe.com", - "stingyspoon.com", - "stockingsleet.com", - "stockingsneeze.com", - "stomachscience.com", - "stonechin.com", - "stopstomach.com", - "stormyachiever.com", - "stormyfold.com", - "straightnest.com", - "strangeclocks.com", - "strangersponge.com", - "strangesink.com", - "streetsort.com", - "stretchsister.com", - "stretchsneeze.com", - "stretchsquirrel.com", - "stripedbat.com", - "strivesidewalk.com", - "strivesquirrel.com", - "strokesystem.com", - "stupendoussleet.com", - "stupendoussnow.com", - "stupidscene.com", - "sturdysnail.com", - "subletyoke.com", - "sublimequartz.com", - "subsequentswim.com", - "substantialcarpenter.com", - "substantialgrade.com", - "succeedscene.com", - "successfulscent.com", - "suddensoda.com", - "sugarfriction.com", - "suggestionbridge.com", - "sulkycook.com", - "summerobject.com", - "sunshinegates.com", - "superchichair.com", - "superficialeyes.com", - "superficialspring.com", - "superficialsquare.com", - "superviseshoes.com", - "supportwaves.com", - "suspectmark.com", - "swankysquare.com", - "swellstocking.com", - "swelteringsleep.com", - "swingslip.com", - "swordgoose.com", - "syllablesight.com", - "synonymousrule.com", - "synonymoussticks.com", - "synthesizescarecrow.com", - "tackytrains.com", - "tacojournal.com", - "talltouch.com", - "tangibleteam.com", - "tangyamount.com", - "tangycover.com", - "tastelesstrees.com", - "tastelesstrucks.com", - "tastesnake.com", - "tawdryson.com", - "tdzvm.pw", - "tearfulglass.com", - "techconverter.com", - "tediousbear.com", - "tediousticket.com", - "tedioustooth.com", - "teenytinycellar.com", - "teenytinyshirt.com", - "teenytinytongue.com", - "telephoneapparatus.com", - "tempertrick.com", - "tempttalk.com", - "temptteam.com", - "tendertest.com", - "terriblethumb.com", - "terrifictooth.com", - "testadmiral.com", - "texturetrick.com", - "therapeuticcars.com", - "thickticket.com", - "thicktrucks.com", - "thingsafterthought.com", - "thingstaste.com", - "thinkitten.com", - "thinkitwice.com", - "thirdrespect.com", - "thirstytwig.com", - "thomastorch.com", - "thoughtlessknot.com", - "threetruck.com", - "thrivingmarketplace.com", - "ticketaunt.com", - "ticklesign.com", - "tidymitten.com", - "tightpowder.com", - "tinyswans.com", - "tinytendency.com", - "tiredthroat.com", - "tiresomethunder.com", - "toolcapital.com", - "toomanyalts.com", - "torpidtongue.com", - "trackcaddie.com", - "tradetooth.com", - "trafficviews.com", - "tranquilamulet.com", - "tranquilarchipelago.com", - "tranquilcan.com", - "tranquilcanyon.com", - "tranquilplume.com", - "tranquilside.com", - "tranquilveil.com", - "tranquilveranda.com", - "trappush.com", - "treadbun.com", - "tremendousearthquake.com", - "tremendousplastic.com", - "tremendoustime.com", - "tritebadge.com", - "tritethunder.com", - "tritetongue.com", - "troubledtail.com", - "troubleshade.com", - "truckstomatoes.com", - "truculentrate.com", - "tumbleicicle.com", - "tuneupcoffee.com", - "twistloss.com", - "twistsweater.com", - "typicalairplane.com", - "typicalteeth.com", - "tzwaw.pw", - "ubiquitoussea.com", - "ubiquitousyard.com", - "ultraoranges.com", - "ultravalid.com", - "unablehope.com", - "unaccountablecreator.com", - "unaccountablepie.com", - "unarmedindustry.com", - "unbecominghall.com", - "unbecominglamp.com", - "uncoveredexpert.com", - "understoodocean.com", - "unequalbrake.com", - "unequaltrail.com", - "uninterestedquarter.com", - "unknowncontrol.com", - "unknowncrate.com", - "unknowntray.com", - "untidyquestion.com", - "untidyrice.com", - "unusedstone.com", - "unusualtitle.com", - "unwieldyhealth.com", - "unwieldyimpulse.com", - "unwieldyplastic.com", - "uppitytime.com", - "uselesslumber.com", - "validmemo.com", - "vanfireworks.com", - "vanishmemory.com", - "velvetnova.com", - "velvetquasar.com", - "vengefulgrass.com", - "venomousvessel.com", - "venusgloria.com", - "verdantanswer.com", - "verdantlabyrinth.com", - "verdantloom.com", - "verdantsculpture.com", - "verseballs.com", - "vibrantcelebration.com", - "vibrantgale.com", - "vibranthaven.com", - "vibrantpact.com", - "vibrantsundown.com", - "vibranttalisman.com", - "vibrantvale.com", - "victoriousrequest.com", - "virtualvincent.com", - "vividcanopy.com", - "vividfrost.com", - "vividmeadow.com", - "vividplume.com", - "voicelessvein.com", - "voidgoo.com", - "volatileprofit.com", - "volatilevessel.com", - "voraciousgrip.com", - "vq1qi.pw", - "waitingnumber.com", - "wantingwindow.com", - "warmafterthought.com", - "warmquiver.com", - "warnwing.com", - "washbanana.com", - "wateryvan.com", - "waterywave.com", - "waterywrist.com", - "wearbasin.com", - "websitesdude.com", - "wellgroomedapparel.com", - "wellgroomedhydrant.com", - "wellmadefrog.com", - "westpalmweb.com", - "whimsicalcanyon.com", - "whimsicalgrove.com", - "whineattempt.com", - "whirlwealth.com", - "whiskyqueue.com", - "whisperingcascade.com", - "whisperingcrib.com", - "whisperingquasar.com", - "whisperingsummit.com", - "whispermeeting.com", - "wildcommittee.com", - "wirecomic.com", - "wiredforcoffee.com", - "wirypaste.com", - "wistfulwaste.com", - "wittypopcorn.com", - "wittyshack.com", - "workoperation.com", - "worldlever.com", - "worriednumber.com", - "worriedwine.com", - "wretchedfloor.com", - "wrongpotato.com", - "wrongwound.com", - "wtaccesscontrol.com", - "xovq5nemr.com", - "yieldingwoman.com", - "zbwp6ghm.com", - "zephyrcatalyst.com", - "zephyrlabyrinth.com", - "zestycrime.com", - "zestyhorizon.com", - "zestyrover.com", - "zestywire.com", - "zipperxray.com", - "zlp6s.pw", - "zonewedgeshaft.com" + "Leven Labs, Inc. DBA Admiral (2znp09oa.com)": { + "domains": [ + "2znp09oa.com" ], - "prevalence": 0.0109, + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (4jnzhl0d0.com)": { + "domains": [ + "4jnzhl0d0.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (5mcwl.pw)": { + "domains": [ + "5mcwl.pw" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (6ldu6qa.com)": { + "domains": [ + "6ldu6qa.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (82o9v830.com)": { + "domains": [ + "82o9v830.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (abilityscale.com)": { + "domains": [ + "abilityscale.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (abjectattempt.com)": { + "domains": [ + "abjectattempt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aboardamusement.com)": { + "domains": [ + "aboardamusement.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aboardlevel.com)": { + "domains": [ + "aboardlevel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (abovechat.com)": { + "domains": [ + "abovechat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (abruptroad.com)": { + "domains": [ + "abruptroad.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (absentairport.com)": { + "domains": [ + "absentairport.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (absorbingband.com)": { + "domains": [ + "absorbingband.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (absorbingcorn.com)": { + "domains": [ + "absorbingcorn.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (absorbingprison.com)": { + "domains": [ + "absorbingprison.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (abstractedamount.com)": { + "domains": [ + "abstractedamount.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (abstractedauthority.com)": { + "domains": [ + "abstractedauthority.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (absurdapple.com)": { + "domains": [ + "absurdapple.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (abundantcoin.com)": { + "domains": [ + "abundantcoin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (acceptableauthority.com)": { + "domains": [ + "acceptableauthority.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (accurateanimal.com)": { + "domains": [ + "accurateanimal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (accuratecoal.com)": { + "domains": [ + "accuratecoal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (achieverknee.com)": { + "domains": [ + "achieverknee.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (acidicstraw.com)": { + "domains": [ + "acidicstraw.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (acidpigs.com)": { + "domains": [ + "acidpigs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (acridangle.com)": { + "domains": [ + "acridangle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (acridtwist.com)": { + "domains": [ + "acridtwist.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (actoramusement.com)": { + "domains": [ + "actoramusement.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (actuallysheep.com)": { + "domains": [ + "actuallysheep.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (actuallysnake.com)": { + "domains": [ + "actuallysnake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (actuallything.com)": { + "domains": [ + "actuallything.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (adamantsnail.com)": { + "domains": [ + "adamantsnail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (addictedattention.com)": { + "domains": [ + "addictedattention.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (admiral.pub)": { + "domains": [ + "admiral.pub" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (adorableanger.com)": { + "domains": [ + "adorableanger.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (adorableattention.com)": { + "domains": [ + "adorableattention.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (adventurousamount.com)": { + "domains": [ + "adventurousamount.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (afraidlanguage.com)": { + "domains": [ + "afraidlanguage.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aftermathbrother.com)": { + "domains": [ + "aftermathbrother.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (agilebreeze.com)": { + "domains": [ + "agilebreeze.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (agreeablearch.com)": { + "domains": [ + "agreeablearch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (agreeabletouch.com)": { + "domains": [ + "agreeabletouch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aheadday.com)": { + "domains": [ + "aheadday.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aheadgrow.com)": { + "domains": [ + "aheadgrow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aheadmachine.com)": { + "domains": [ + "aheadmachine.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ak0gsh40.com)": { + "domains": [ + "ak0gsh40.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (alertarithmetic.com)": { + "domains": [ + "alertarithmetic.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aliasanvil.com)": { + "domains": [ + "aliasanvil.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (alikeaddition.com)": { + "domains": [ + "alikeaddition.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aliveachiever.com)": { + "domains": [ + "aliveachiever.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (alleythecat.com)": { + "domains": [ + "alleythecat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (alluringbucket.com)": { + "domains": [ + "alluringbucket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aloofmetal.com)": { + "domains": [ + "aloofmetal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aloofvest.com)": { + "domains": [ + "aloofvest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (alpineactor.com)": { + "domains": [ + "alpineactor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ambientdusk.com)": { + "domains": [ + "ambientdusk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ambientlagoon.com)": { + "domains": [ + "ambientlagoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ambiguousafternoon.com)": { + "domains": [ + "ambiguousafternoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ambiguousanger.com)": { + "domains": [ + "ambiguousanger.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ambiguousdinosaurs.com)": { + "domains": [ + "ambiguousdinosaurs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ambiguousincome.com)": { + "domains": [ + "ambiguousincome.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ambrosialsummit.com)": { + "domains": [ + "ambrosialsummit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (amethystzenith.com)": { + "domains": [ + "amethystzenith.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (amuckafternoon.com)": { + "domains": [ + "amuckafternoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (amusedbucket.com)": { + "domains": [ + "amusedbucket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (analogwonder.com)": { + "domains": [ + "analogwonder.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (analyzecorona.com)": { + "domains": [ + "analyzecorona.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ancientact.com)": { + "domains": [ + "ancientact.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (annoyedairport.com)": { + "domains": [ + "annoyedairport.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (annoyingacoustics.com)": { + "domains": [ + "annoyingacoustics.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (annoyingclover.com)": { + "domains": [ + "annoyingclover.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (anxiousapples.com)": { + "domains": [ + "anxiousapples.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aquaticowl.com)": { + "domains": [ + "aquaticowl.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ar1nvz5.com)": { + "domains": [ + "ar1nvz5.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (archswimming.com)": { + "domains": [ + "archswimming.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aromamirror.com)": { + "domains": [ + "aromamirror.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (arrivegrowth.com)": { + "domains": [ + "arrivegrowth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (artthevoid.com)": { + "domains": [ + "artthevoid.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aspiringapples.com)": { + "domains": [ + "aspiringapples.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aspiringattempt.com)": { + "domains": [ + "aspiringattempt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (aspiringtoy.com)": { + "domains": [ + "aspiringtoy.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (astonishingfood.com)": { + "domains": [ + "astonishingfood.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (astralhustle.com)": { + "domains": [ + "astralhustle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (astrallullaby.com)": { + "domains": [ + "astrallullaby.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (attendchase.com)": { + "domains": [ + "attendchase.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (attractionbanana.com)": { + "domains": [ + "attractionbanana.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (attractivecap.com)": { + "domains": [ + "attractivecap.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (audioarctic.com)": { + "domains": [ + "audioarctic.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (automaticside.com)": { + "domains": [ + "automaticside.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (automaticturkey.com)": { + "domains": [ + "automaticturkey.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (availablerest.com)": { + "domains": [ + "availablerest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (avalonalbum.com)": { + "domains": [ + "avalonalbum.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (averageactivity.com)": { + "domains": [ + "averageactivity.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (awarealley.com)": { + "domains": [ + "awarealley.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (awesomeagreement.com)": { + "domains": [ + "awesomeagreement.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (awzbijw.com)": { + "domains": [ + "awzbijw.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (axiomaticalley.com)": { + "domains": [ + "axiomaticalley.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (axiomaticanger.com)": { + "domains": [ + "axiomaticanger.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (azuremystique.com)": { + "domains": [ + "azuremystique.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (backupcat.com)": { + "domains": [ + "backupcat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (badgeboat.com)": { + "domains": [ + "badgeboat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (badgerabbit.com)": { + "domains": [ + "badgerabbit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (badgevolcano.com)": { + "domains": [ + "badgevolcano.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bagbeam.com)": { + "domains": [ + "bagbeam.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (baitbaseball.com)": { + "domains": [ + "baitbaseball.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (balloonbelieve.com)": { + "domains": [ + "balloonbelieve.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ballsbanana.com)": { + "domains": [ + "ballsbanana.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bananabarrel.com)": { + "domains": [ + "bananabarrel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bandborder.com)": { + "domains": [ + "bandborder.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (barbarousbase.com)": { + "domains": [ + "barbarousbase.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (basilfish.com)": { + "domains": [ + "basilfish.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (basketballbelieve.com)": { + "domains": [ + "basketballbelieve.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (baskettexture.com)": { + "domains": [ + "baskettexture.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bawdybalance.com)": { + "domains": [ + "bawdybalance.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bawdybeast.com)": { + "domains": [ + "bawdybeast.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (beamvolcano.com)": { + "domains": [ + "beamvolcano.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (beancontrol.com)": { + "domains": [ + "beancontrol.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bearmoonlodge.com)": { + "domains": [ + "bearmoonlodge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bedsberry.com)": { + "domains": [ + "bedsberry.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (beetleend.com)": { + "domains": [ + "beetleend.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (beginnerpancake.com)": { + "domains": [ + "beginnerpancake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (begintrain.com)": { + "domains": [ + "begintrain.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (berserkhydrant.com)": { + "domains": [ + "berserkhydrant.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bespokesandals.com)": { + "domains": [ + "bespokesandals.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bestboundary.com)": { + "domains": [ + "bestboundary.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bewilderedbattle.com)": { + "domains": [ + "bewilderedbattle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bewilderedblade.com)": { + "domains": [ + "bewilderedblade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bhcumsc.com)": { + "domains": [ + "bhcumsc.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bikepaws.com)": { + "domains": [ + "bikepaws.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bikesboard.com)": { + "domains": [ + "bikesboard.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (billowybead.com)": { + "domains": [ + "billowybead.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (billowybelief.com)": { + "domains": [ + "billowybelief.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (binspiredtees.com)": { + "domains": [ + "binspiredtees.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (birthdaybelief.com)": { + "domains": [ + "birthdaybelief.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (blackbrake.com)": { + "domains": [ + "blackbrake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bleachbubble.com)": { + "domains": [ + "bleachbubble.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bleachscarecrow.com)": { + "domains": [ + "bleachscarecrow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bleedlight.com)": { + "domains": [ + "bleedlight.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (blesspizzas.com)": { + "domains": [ + "blesspizzas.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (blissfulcrescendo.com)": { + "domains": [ + "blissfulcrescendo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (blissfullagoon.com)": { + "domains": [ + "blissfullagoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (blueeyedblow.com)": { + "domains": [ + "blueeyedblow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (blushingbeast.com)": { + "domains": [ + "blushingbeast.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (blushingbread.com)": { + "domains": [ + "blushingbread.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (boatsvest.com)": { + "domains": [ + "boatsvest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (boilingbeetle.com)": { + "domains": [ + "boilingbeetle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (boilingcredit.com)": { + "domains": [ + "boilingcredit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (boostbehavior.com)": { + "domains": [ + "boostbehavior.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (boredcrown.com)": { + "domains": [ + "boredcrown.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bouncyproperty.com)": { + "domains": [ + "bouncyproperty.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (boundarybusiness.com)": { + "domains": [ + "boundarybusiness.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (boundlessargument.com)": { + "domains": [ + "boundlessargument.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (boundlessbrake.com)": { + "domains": [ + "boundlessbrake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (boundlessveil.com)": { + "domains": [ + "boundlessveil.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (brainybasin.com)": { + "domains": [ + "brainybasin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (brainynut.com)": { + "domains": [ + "brainynut.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (branchborder.com)": { + "domains": [ + "branchborder.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (brandsfive.com)": { + "domains": [ + "brandsfive.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (brandybison.com)": { + "domains": [ + "brandybison.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bravebone.com)": { + "domains": [ + "bravebone.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bravecalculator.com)": { + "domains": [ + "bravecalculator.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (breadbalance.com)": { + "domains": [ + "breadbalance.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (breakableinsurance.com)": { + "domains": [ + "breakableinsurance.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (breakfastboat.com)": { + "domains": [ + "breakfastboat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (breezygrove.com)": { + "domains": [ + "breezygrove.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (brianwould.com)": { + "domains": [ + "brianwould.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (brighttoe.com)": { + "domains": [ + "brighttoe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (briskstorm.com)": { + "domains": [ + "briskstorm.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (broadborder.com)": { + "domains": [ + "broadborder.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (broadboundary.com)": { + "domains": [ + "broadboundary.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (broadcastbed.com)": { + "domains": [ + "broadcastbed.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (broaddoor.com)": { + "domains": [ + "broaddoor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (brotherslocket.com)": { + "domains": [ + "brotherslocket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bruisebaseball.com)": { + "domains": [ + "bruisebaseball.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (brunchforher.com)": { + "domains": [ + "brunchforher.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (buildingknife.com)": { + "domains": [ + "buildingknife.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bulbbait.com)": { + "domains": [ + "bulbbait.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (burgersalt.com)": { + "domains": [ + "burgersalt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (burlywhistle.com)": { + "domains": [ + "burlywhistle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (burnbubble.com)": { + "domains": [ + "burnbubble.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bushesbag.com)": { + "domains": [ + "bushesbag.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bustlingbath.com)": { + "domains": [ + "bustlingbath.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (bustlingbook.com)": { + "domains": [ + "bustlingbook.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (butterbulb.com)": { + "domains": [ + "butterbulb.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (butterburst.com)": { + "domains": [ + "butterburst.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (buttonladybug.com)": { + "domains": [ + "buttonladybug.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cakesdrum.com)": { + "domains": [ + "cakesdrum.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (calculatingcircle.com)": { + "domains": [ + "calculatingcircle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (calculatingtoothbrush.com)": { + "domains": [ + "calculatingtoothbrush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (calculatorstatement.com)": { + "domains": [ + "calculatorstatement.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (callousbrake.com)": { + "domains": [ + "callousbrake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (calmcactus.com)": { + "domains": [ + "calmcactus.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (calypsocapsule.com)": { + "domains": [ + "calypsocapsule.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cannonchange.com)": { + "domains": [ + "cannonchange.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (capablecows.com)": { + "domains": [ + "capablecows.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (capablecup.com)": { + "domains": [ + "capablecup.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (capriciouscorn.com)": { + "domains": [ + "capriciouscorn.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (captivatingcanyon.com)": { + "domains": [ + "captivatingcanyon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (captivatingillusion.com)": { + "domains": [ + "captivatingillusion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (captivatingpanorama.com)": { + "domains": [ + "captivatingpanorama.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (captivatingperformance.com)": { + "domains": [ + "captivatingperformance.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (carefuldolls.com)": { + "domains": [ + "carefuldolls.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (caringcast.com)": { + "domains": [ + "caringcast.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (caringzinc.com)": { + "domains": [ + "caringzinc.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (carloforward.com)": { + "domains": [ + "carloforward.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (carpentercomparison.com)": { + "domains": [ + "carpentercomparison.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (carscannon.com)": { + "domains": [ + "carscannon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cartkitten.com)": { + "domains": [ + "cartkitten.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (carvecakes.com)": { + "domains": [ + "carvecakes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (catalogcake.com)": { + "domains": [ + "catalogcake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (catschickens.com)": { + "domains": [ + "catschickens.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cattlecommittee.com)": { + "domains": [ + "cattlecommittee.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (causecherry.com)": { + "domains": [ + "causecherry.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cautiouscamera.com)": { + "domains": [ + "cautiouscamera.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cautiouscherries.com)": { + "domains": [ + "cautiouscherries.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cautiouscrate.com)": { + "domains": [ + "cautiouscrate.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cautiouscredit.com)": { + "domains": [ + "cautiouscredit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cavecurtain.com)": { + "domains": [ + "cavecurtain.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ceciliavenus.com)": { + "domains": [ + "ceciliavenus.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (celestialeuphony.com)": { + "domains": [ + "celestialeuphony.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (celestialquasar.com)": { + "domains": [ + "celestialquasar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (celestialspectra.com)": { + "domains": [ + "celestialspectra.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chaireggnog.com)": { + "domains": [ + "chaireggnog.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chairscrack.com)": { + "domains": [ + "chairscrack.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chairsdonkey.com)": { + "domains": [ + "chairsdonkey.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chalkoil.com)": { + "domains": [ + "chalkoil.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (changeablecats.com)": { + "domains": [ + "changeablecats.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (channelcamp.com)": { + "domains": [ + "channelcamp.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chargecracker.com)": { + "domains": [ + "chargecracker.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (charmingplate.com)": { + "domains": [ + "charmingplate.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (charscroll.com)": { + "domains": [ + "charscroll.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cheerycraze.com)": { + "domains": [ + "cheerycraze.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cherriescare.com)": { + "domains": [ + "cherriescare.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chessbranch.com)": { + "domains": [ + "chessbranch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chesscolor.com)": { + "domains": [ + "chesscolor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chesscrowd.com)": { + "domains": [ + "chesscrowd.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chickensstation.com)": { + "domains": [ + "chickensstation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (childlikecrowd.com)": { + "domains": [ + "childlikecrowd.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (childlikeexample.com)": { + "domains": [ + "childlikeexample.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (childlikeform.com)": { + "domains": [ + "childlikeform.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chilledliquid.com)": { + "domains": [ + "chilledliquid.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chingovernment.com)": { + "domains": [ + "chingovernment.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chinsnakes.com)": { + "domains": [ + "chinsnakes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chipperisle.com)": { + "domains": [ + "chipperisle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chivalrouscord.com)": { + "domains": [ + "chivalrouscord.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chubbycreature.com)": { + "domains": [ + "chubbycreature.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (chunkycactus.com)": { + "domains": [ + "chunkycactus.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cicdserver.com)": { + "domains": [ + "cicdserver.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cinemabonus.com)": { + "domains": [ + "cinemabonus.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (circlelevel.com)": { + "domains": [ + "circlelevel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (clammychicken.com)": { + "domains": [ + "clammychicken.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cleanhaircut.com)": { + "domains": [ + "cleanhaircut.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cloisteredcord.com)": { + "domains": [ + "cloisteredcord.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cloisteredcurve.com)": { + "domains": [ + "cloisteredcurve.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (closedcows.com)": { + "domains": [ + "closedcows.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (closefriction.com)": { + "domains": [ + "closefriction.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cloudhustles.com)": { + "domains": [ + "cloudhustles.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cloudjumbo.com)": { + "domains": [ + "cloudjumbo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (clovercabbage.com)": { + "domains": [ + "clovercabbage.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (clumsycar.com)": { + "domains": [ + "clumsycar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (coatfood.com)": { + "domains": [ + "coatfood.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cobaltoverture.com)": { + "domains": [ + "cobaltoverture.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (coffeesidehustle.com)": { + "domains": [ + "coffeesidehustle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (coldbalance.com)": { + "domains": [ + "coldbalance.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (coldcreatives.com)": { + "domains": [ + "coldcreatives.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (colorfulafterthought.com)": { + "domains": [ + "colorfulafterthought.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (colossalclouds.com)": { + "domains": [ + "colossalclouds.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (colossalcoat.com)": { + "domains": [ + "colossalcoat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (colossalcry.com)": { + "domains": [ + "colossalcry.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (combativecar.com)": { + "domains": [ + "combativecar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (combativedetail.com)": { + "domains": [ + "combativedetail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (combbit.com)": { + "domains": [ + "combbit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (combcattle.com)": { + "domains": [ + "combcattle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (combcompetition.com)": { + "domains": [ + "combcompetition.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cometquote.com)": { + "domains": [ + "cometquote.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (comfortablecheese.com)": { + "domains": [ + "comfortablecheese.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (comfygoodness.com)": { + "domains": [ + "comfygoodness.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (companyparcel.com)": { + "domains": [ + "companyparcel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (comparereaction.com)": { + "domains": [ + "comparereaction.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (compiledoctor.com)": { + "domains": [ + "compiledoctor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (concernedchange.com)": { + "domains": [ + "concernedchange.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (concernedchickens.com)": { + "domains": [ + "concernedchickens.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (condemnedcomb.com)": { + "domains": [ + "condemnedcomb.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (conditionchange.com)": { + "domains": [ + "conditionchange.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (conditioncrush.com)": { + "domains": [ + "conditioncrush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (confesschairs.com)": { + "domains": [ + "confesschairs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (configchain.com)": { + "domains": [ + "configchain.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (confusedcart.com)": { + "domains": [ + "confusedcart.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (connectashelf.com)": { + "domains": [ + "connectashelf.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (consciouschairs.com)": { + "domains": [ + "consciouschairs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (consciouscheese.com)": { + "domains": [ + "consciouscheese.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (consciousdirt.com)": { + "domains": [ + "consciousdirt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (consumerzero.com)": { + "domains": [ + "consumerzero.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (controlcola.com)": { + "domains": [ + "controlcola.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (controlhall.com)": { + "domains": [ + "controlhall.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (convertbatch.com)": { + "domains": [ + "convertbatch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cooingcoal.com)": { + "domains": [ + "cooingcoal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (coordinatedbedroom.com)": { + "domains": [ + "coordinatedbedroom.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (coordinatedcoat.com)": { + "domains": [ + "coordinatedcoat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (copycarpenter.com)": { + "domains": [ + "copycarpenter.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (copyrightaccesscontrols.com)": { + "domains": [ + "copyrightaccesscontrols.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (coralreverie.com)": { + "domains": [ + "coralreverie.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (corgibeachday.com)": { + "domains": [ + "corgibeachday.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cosmicsculptor.com)": { + "domains": [ + "cosmicsculptor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cosmosjackson.com)": { + "domains": [ + "cosmosjackson.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (courageousbaby.com)": { + "domains": [ + "courageousbaby.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (coverapparatus.com)": { + "domains": [ + "coverapparatus.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (coverlayer.com)": { + "domains": [ + "coverlayer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cozydusk.com)": { + "domains": [ + "cozydusk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cozyhillside.com)": { + "domains": [ + "cozyhillside.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cozytryst.com)": { + "domains": [ + "cozytryst.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (crabbychin.com)": { + "domains": [ + "crabbychin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (crackedsafe.com)": { + "domains": [ + "crackedsafe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (crafthenry.com)": { + "domains": [ + "crafthenry.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (crashchance.com)": { + "domains": [ + "crashchance.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cratecamera.com)": { + "domains": [ + "cratecamera.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (craterbox.com)": { + "domains": [ + "craterbox.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (creatorcherry.com)": { + "domains": [ + "creatorcherry.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (creatorpassenger.com)": { + "domains": [ + "creatorpassenger.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (creaturecabbage.com)": { + "domains": [ + "creaturecabbage.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (crimsonmeadow.com)": { + "domains": [ + "crimsonmeadow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (critictruck.com)": { + "domains": [ + "critictruck.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (crookedcreature.com)": { + "domains": [ + "crookedcreature.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (crowdedmass.com)": { + "domains": [ + "crowdedmass.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cruisetourist.com)": { + "domains": [ + "cruisetourist.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cryptvalue.com)": { + "domains": [ + "cryptvalue.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (crystalboulevard.com)": { + "domains": [ + "crystalboulevard.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (crystalstatus.com)": { + "domains": [ + "crystalstatus.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cubchannel.com)": { + "domains": [ + "cubchannel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cubepins.com)": { + "domains": [ + "cubepins.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cuddlycake.com)": { + "domains": [ + "cuddlycake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cuddlylunchroom.com)": { + "domains": [ + "cuddlylunchroom.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (culturedcamera.com)": { + "domains": [ + "culturedcamera.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (culturedfeather.com)": { + "domains": [ + "culturedfeather.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cumbersomecar.com)": { + "domains": [ + "cumbersomecar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cumbersomecarpenter.com)": { + "domains": [ + "cumbersomecarpenter.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cumbersomecloud.com)": { + "domains": [ + "cumbersomecloud.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (curiouschalk.com)": { + "domains": [ + "curiouschalk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (curioussuccess.com)": { + "domains": [ + "curioussuccess.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (curlycannon.com)": { + "domains": [ + "curlycannon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (currentcollar.com)": { + "domains": [ + "currentcollar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (curtaincows.com)": { + "domains": [ + "curtaincows.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (curvedhoney.com)": { + "domains": [ + "curvedhoney.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (curvycord.com)": { + "domains": [ + "curvycord.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (curvycry.com)": { + "domains": [ + "curvycry.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cushiondrum.com)": { + "domains": [ + "cushiondrum.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cushionpig.com)": { + "domains": [ + "cushionpig.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cutcurrent.com)": { + "domains": [ + "cutcurrent.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cutechin.com)": { + "domains": [ + "cutechin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (cyclopsdial.com)": { + "domains": [ + "cyclopsdial.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dailydivision.com)": { + "domains": [ + "dailydivision.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (damagedadvice.com)": { + "domains": [ + "damagedadvice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (damageddistance.com)": { + "domains": [ + "damageddistance.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (damdoor.com)": { + "domains": [ + "damdoor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dampdock.com)": { + "domains": [ + "dampdock.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dancemistake.com)": { + "domains": [ + "dancemistake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dandydune.com)": { + "domains": [ + "dandydune.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dandyglow.com)": { + "domains": [ + "dandyglow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dapperdiscussion.com)": { + "domains": [ + "dapperdiscussion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dapperfloor.com)": { + "domains": [ + "dapperfloor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (datastoried.com)": { + "domains": [ + "datastoried.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (daughterstone.com)": { + "domains": [ + "daughterstone.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (daymodern.com)": { + "domains": [ + "daymodern.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dazzlingbook.com)": { + "domains": [ + "dazzlingbook.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (deafeningdock.com)": { + "domains": [ + "deafeningdock.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (deafeningdowntown.com)": { + "domains": [ + "deafeningdowntown.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (debonairdust.com)": { + "domains": [ + "debonairdust.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (debonairtree.com)": { + "domains": [ + "debonairtree.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (debugentity.com)": { + "domains": [ + "debugentity.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (decidedrum.com)": { + "domains": [ + "decidedrum.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (decisivebase.com)": { + "domains": [ + "decisivebase.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (decisivedrawer.com)": { + "domains": [ + "decisivedrawer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (decisiveducks.com)": { + "domains": [ + "decisiveducks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (decoycreation.com)": { + "domains": [ + "decoycreation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (deerbeginner.com)": { + "domains": [ + "deerbeginner.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (defeatedbadge.com)": { + "domains": [ + "defeatedbadge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (defensevest.com)": { + "domains": [ + "defensevest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (degreechariot.com)": { + "domains": [ + "degreechariot.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (delegatediscussion.com)": { + "domains": [ + "delegatediscussion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (delicatecascade.com)": { + "domains": [ + "delicatecascade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (deliciousducks.com)": { + "domains": [ + "deliciousducks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (deltafault.com)": { + "domains": [ + "deltafault.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (deluxecrate.com)": { + "domains": [ + "deluxecrate.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dependenttrip.com)": { + "domains": [ + "dependenttrip.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (desirebucket.com)": { + "domains": [ + "desirebucket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (desiredirt.com)": { + "domains": [ + "desiredirt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (detailedgovernment.com)": { + "domains": [ + "detailedgovernment.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (detailedkitten.com)": { + "domains": [ + "detailedkitten.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (detectdinner.com)": { + "domains": [ + "detectdinner.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (detectdiscovery.com)": { + "domains": [ + "detectdiscovery.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (detourgame.com)": { + "domains": [ + "detourgame.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (deviceseal.com)": { + "domains": [ + "deviceseal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (deviceworkshop.com)": { + "domains": [ + "deviceworkshop.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (devilishdinner.com)": { + "domains": [ + "devilishdinner.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dewdroplagoon.com)": { + "domains": [ + "dewdroplagoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (difficultfog.com)": { + "domains": [ + "difficultfog.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (digestiondrawer.com)": { + "domains": [ + "digestiondrawer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dinnerquartz.com)": { + "domains": [ + "dinnerquartz.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (diplomahawaii.com)": { + "domains": [ + "diplomahawaii.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (direfuldesk.com)": { + "domains": [ + "direfuldesk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (disagreeabledrop.com)": { + "domains": [ + "disagreeabledrop.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (discreetfield.com)": { + "domains": [ + "discreetfield.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (discreetquarter.com)": { + "domains": [ + "discreetquarter.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (distributionneck.com)": { + "domains": [ + "distributionneck.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (distributionpocket.com)": { + "domains": [ + "distributionpocket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (distributiontomatoes.com)": { + "domains": [ + "distributiontomatoes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (disturbedquiet.com)": { + "domains": [ + "disturbedquiet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (divehope.com)": { + "domains": [ + "divehope.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dk4ywix.com)": { + "domains": [ + "dk4ywix.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dockdigestion.com)": { + "domains": [ + "dockdigestion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dogsonclouds.com)": { + "domains": [ + "dogsonclouds.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dollardelta.com)": { + "domains": [ + "dollardelta.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (doubledefend.com)": { + "domains": [ + "doubledefend.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (doubtdrawer.com)": { + "domains": [ + "doubtdrawer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dq95d35.com)": { + "domains": [ + "dq95d35.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (drainpaste.com)": { + "domains": [ + "drainpaste.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dramaticdirection.com)": { + "domains": [ + "dramaticdirection.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dreamycanyon.com)": { + "domains": [ + "dreamycanyon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (driftpizza.com)": { + "domains": [ + "driftpizza.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (drollwharf.com)": { + "domains": [ + "drollwharf.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (drydrum.com)": { + "domains": [ + "drydrum.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dustydime.com)": { + "domains": [ + "dustydime.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (dustyhammer.com)": { + "domains": [ + "dustyhammer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (eagereden.com)": { + "domains": [ + "eagereden.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (eagerflame.com)": { + "domains": [ + "eagerflame.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (eagerknight.com)": { + "domains": [ + "eagerknight.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (earthyfarm.com)": { + "domains": [ + "earthyfarm.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (eatablesquare.com)": { + "domains": [ + "eatablesquare.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (echochief.com)": { + "domains": [ + "echochief.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (echoinghaven.com)": { + "domains": [ + "echoinghaven.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (effervescentcoral.com)": { + "domains": [ + "effervescentcoral.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (effervescentvista.com)": { + "domains": [ + "effervescentvista.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (effulgentnook.com)": { + "domains": [ + "effulgentnook.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (effulgenttempest.com)": { + "domains": [ + "effulgenttempest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ejyymghi.com)": { + "domains": [ + "ejyymghi.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (elasticchange.com)": { + "domains": [ + "elasticchange.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (elderlybean.com)": { + "domains": [ + "elderlybean.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (elderlytown.com)": { + "domains": [ + "elderlytown.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (elephantqueue.com)": { + "domains": [ + "elephantqueue.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (elusivebreeze.com)": { + "domains": [ + "elusivebreeze.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (elusivecascade.com)": { + "domains": [ + "elusivecascade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (elysiantraverse.com)": { + "domains": [ + "elysiantraverse.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (embellishedmeadow.com)": { + "domains": [ + "embellishedmeadow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (embermosaic.com)": { + "domains": [ + "embermosaic.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (emberwhisper.com)": { + "domains": [ + "emberwhisper.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (eminentbubble.com)": { + "domains": [ + "eminentbubble.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (eminentend.com)": { + "domains": [ + "eminentend.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (emptyescort.com)": { + "domains": [ + "emptyescort.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enchantedskyline.com)": { + "domains": [ + "enchantedskyline.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enchantingdiscovery.com)": { + "domains": [ + "enchantingdiscovery.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enchantingenchantment.com)": { + "domains": [ + "enchantingenchantment.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enchantingmystique.com)": { + "domains": [ + "enchantingmystique.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enchantingtundra.com)": { + "domains": [ + "enchantingtundra.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enchantingvalley.com)": { + "domains": [ + "enchantingvalley.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (encourageshock.com)": { + "domains": [ + "encourageshock.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (encouragingthread.com)": { + "domains": [ + "encouragingthread.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (endlesstrust.com)": { + "domains": [ + "endlesstrust.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (endurablebulb.com)": { + "domains": [ + "endurablebulb.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (energeticexample.com)": { + "domains": [ + "energeticexample.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (energeticladybug.com)": { + "domains": [ + "energeticladybug.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (engineergrape.com)": { + "domains": [ + "engineergrape.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (engineertrick.com)": { + "domains": [ + "engineertrick.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enigmaticblossom.com)": { + "domains": [ + "enigmaticblossom.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enigmaticcanyon.com)": { + "domains": [ + "enigmaticcanyon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enigmaticvoyage.com)": { + "domains": [ + "enigmaticvoyage.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enormousearth.com)": { + "domains": [ + "enormousearth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enormousfoot.com)": { + "domains": [ + "enormousfoot.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enterdrama.com)": { + "domains": [ + "enterdrama.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (entertainskin.com)": { + "domains": [ + "entertainskin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enthusiastictemper.com)": { + "domains": [ + "enthusiastictemper.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enviousshape.com)": { + "domains": [ + "enviousshape.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (enviousthread.com)": { + "domains": [ + "enviousthread.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (equablekettle.com)": { + "domains": [ + "equablekettle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (etherealbamboo.com)": { + "domains": [ + "etherealbamboo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ethereallagoon.com)": { + "domains": [ + "ethereallagoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (etherealpinnacle.com)": { + "domains": [ + "etherealpinnacle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (etherealquasar.com)": { + "domains": [ + "etherealquasar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (etherealripple.com)": { + "domains": [ + "etherealripple.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (evanescentedge.com)": { + "domains": [ + "evanescentedge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (evasivejar.com)": { + "domains": [ + "evasivejar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (eventexistence.com)": { + "domains": [ + "eventexistence.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (exampleshake.com)": { + "domains": [ + "exampleshake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (excitingtub.com)": { + "domains": [ + "excitingtub.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (exclusivebrass.com)": { + "domains": [ + "exclusivebrass.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (executeknowledge.com)": { + "domains": [ + "executeknowledge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (exhibitsneeze.com)": { + "domains": [ + "exhibitsneeze.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (expansioneggnog.com)": { + "domains": [ + "expansioneggnog.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (exquisiteartisanship.com)": { + "domains": [ + "exquisiteartisanship.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (extractobservation.com)": { + "domains": [ + "extractobservation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (extralocker.com)": { + "domains": [ + "extralocker.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (extramonies.com)": { + "domains": [ + "extramonies.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (exuberantedge.com)": { + "domains": [ + "exuberantedge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (facilitatebreakfast.com)": { + "domains": [ + "facilitatebreakfast.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fadechildren.com)": { + "domains": [ + "fadechildren.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fadedsnow.com)": { + "domains": [ + "fadedsnow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fadewaves.com)": { + "domains": [ + "fadewaves.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fairfeeling.com)": { + "domains": [ + "fairfeeling.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fairiesbranch.com)": { + "domains": [ + "fairiesbranch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fairygaze.com)": { + "domains": [ + "fairygaze.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fairytaleflame.com)": { + "domains": [ + "fairytaleflame.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fallaciousfifth.com)": { + "domains": [ + "fallaciousfifth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (falseframe.com)": { + "domains": [ + "falseframe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (familiarrod.com)": { + "domains": [ + "familiarrod.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fancyactivity.com)": { + "domains": [ + "fancyactivity.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fancydune.com)": { + "domains": [ + "fancydune.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fancygrove.com)": { + "domains": [ + "fancygrove.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fangfeeling.com)": { + "domains": [ + "fangfeeling.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fantastictone.com)": { + "domains": [ + "fantastictone.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (farethief.com)": { + "domains": [ + "farethief.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (farmergoldfish.com)": { + "domains": [ + "farmergoldfish.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (farshake.com)": { + "domains": [ + "farshake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (farsnails.com)": { + "domains": [ + "farsnails.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fastenfather.com)": { + "domains": [ + "fastenfather.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fasterfineart.com)": { + "domains": [ + "fasterfineart.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fasterjson.com)": { + "domains": [ + "fasterjson.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fatcoil.com)": { + "domains": [ + "fatcoil.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (faucetfoot.com)": { + "domains": [ + "faucetfoot.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (faultycanvas.com)": { + "domains": [ + "faultycanvas.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fearfulfish.com)": { + "domains": [ + "fearfulfish.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fearfulmint.com)": { + "domains": [ + "fearfulmint.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fearlessfaucet.com)": { + "domains": [ + "fearlessfaucet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fearlesstramp.com)": { + "domains": [ + "fearlesstramp.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (featherstage.com)": { + "domains": [ + "featherstage.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (feeblestamp.com)": { + "domains": [ + "feeblestamp.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (feignedfaucet.com)": { + "domains": [ + "feignedfaucet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fernwaycloud.com)": { + "domains": [ + "fernwaycloud.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fertilefeeling.com)": { + "domains": [ + "fertilefeeling.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fewjuice.com)": { + "domains": [ + "fewjuice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fewkittens.com)": { + "domains": [ + "fewkittens.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (finalizeforce.com)": { + "domains": [ + "finalizeforce.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (financefear.com)": { + "domains": [ + "financefear.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (finestpiece.com)": { + "domains": [ + "finestpiece.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (finitecube.com)": { + "domains": [ + "finitecube.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (firecatfilms.com)": { + "domains": [ + "firecatfilms.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fireworkcamp.com)": { + "domains": [ + "fireworkcamp.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (firstendpoint.com)": { + "domains": [ + "firstendpoint.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (firstfrogs.com)": { + "domains": [ + "firstfrogs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (firsttexture.com)": { + "domains": [ + "firsttexture.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fitmessage.com)": { + "domains": [ + "fitmessage.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fivesidedsquare.com)": { + "domains": [ + "fivesidedsquare.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fixedfold.com)": { + "domains": [ + "fixedfold.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flakyfeast.com)": { + "domains": [ + "flakyfeast.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flameuncle.com)": { + "domains": [ + "flameuncle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flimsycircle.com)": { + "domains": [ + "flimsycircle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flimsythought.com)": { + "domains": [ + "flimsythought.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flippedfunnel.com)": { + "domains": [ + "flippedfunnel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (floodprincipal.com)": { + "domains": [ + "floodprincipal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flourishingcollaboration.com)": { + "domains": [ + "flourishingcollaboration.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flourishingendeavor.com)": { + "domains": [ + "flourishingendeavor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flourishinginnovation.com)": { + "domains": [ + "flourishinginnovation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flourishingpartnership.com)": { + "domains": [ + "flourishingpartnership.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flowersornament.com)": { + "domains": [ + "flowersornament.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flowerstreatment.com)": { + "domains": [ + "flowerstreatment.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flowerycreature.com)": { + "domains": [ + "flowerycreature.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (floweryfact.com)": { + "domains": [ + "floweryfact.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (floweryflavor.com)": { + "domains": [ + "floweryflavor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (floweryoperation.com)": { + "domains": [ + "floweryoperation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (flutteringfireman.com)": { + "domains": [ + "flutteringfireman.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (foambench.com)": { + "domains": [ + "foambench.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (followborder.com)": { + "domains": [ + "followborder.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (forecasttiger.com)": { + "domains": [ + "forecasttiger.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (foretellfifth.com)": { + "domains": [ + "foretellfifth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (forevergears.com)": { + "domains": [ + "forevergears.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (forgetfulflowers.com)": { + "domains": [ + "forgetfulflowers.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (forgetfulsnail.com)": { + "domains": [ + "forgetfulsnail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fortunatemark.com)": { + "domains": [ + "fortunatemark.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fractalcoast.com)": { + "domains": [ + "fractalcoast.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (frailfruit.com)": { + "domains": [ + "frailfruit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (framebanana.com)": { + "domains": [ + "framebanana.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (franticroof.com)": { + "domains": [ + "franticroof.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (frantictrail.com)": { + "domains": [ + "frantictrail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (frazzleart.com)": { + "domains": [ + "frazzleart.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (freakyglass.com)": { + "domains": [ + "freakyglass.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (freezingbuilding.com)": { + "domains": [ + "freezingbuilding.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (frequentflesh.com)": { + "domains": [ + "frequentflesh.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (friendlycrayon.com)": { + "domains": [ + "friendlycrayon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (friendlyfold.com)": { + "domains": [ + "friendlyfold.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (friendwool.com)": { + "domains": [ + "friendwool.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (frightenedpotato.com)": { + "domains": [ + "frightenedpotato.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (frogator.com)": { + "domains": [ + "frogator.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (frogtray.com)": { + "domains": [ + "frogtray.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fronttoad.com)": { + "domains": [ + "fronttoad.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (frugalfiestas.com)": { + "domains": [ + "frugalfiestas.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fumblingform.com)": { + "domains": [ + "fumblingform.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (functionalcrown.com)": { + "domains": [ + "functionalcrown.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (functionalfeather.com)": { + "domains": [ + "functionalfeather.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (funoverbored.com)": { + "domains": [ + "funoverbored.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (funoverflow.com)": { + "domains": [ + "funoverflow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (furnstudio.com)": { + "domains": [ + "furnstudio.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (furryfork.com)": { + "domains": [ + "furryfork.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (furryhorses.com)": { + "domains": [ + "furryhorses.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (futuristicapparatus.com)": { + "domains": [ + "futuristicapparatus.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (futuristicfairies.com)": { + "domains": [ + "futuristicfairies.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (futuristicfifth.com)": { + "domains": [ + "futuristicfifth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (futuristicframe.com)": { + "domains": [ + "futuristicframe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fuzzyaudio.com)": { + "domains": [ + "fuzzyaudio.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fuzzybasketball.com)": { + "domains": [ + "fuzzybasketball.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fuzzyerror.com)": { + "domains": [ + "fuzzyerror.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (fvl1f.pw)": { + "domains": [ + "fvl1f.pw" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gammamaximum.com)": { + "domains": [ + "gammamaximum.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gardenovens.com)": { + "domains": [ + "gardenovens.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gaudyairplane.com)": { + "domains": [ + "gaudyairplane.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (geekactive.com)": { + "domains": [ + "geekactive.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (generalprose.com)": { + "domains": [ + "generalprose.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (generateoffice.com)": { + "domains": [ + "generateoffice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (giantsvessel.com)": { + "domains": [ + "giantsvessel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (giddycoat.com)": { + "domains": [ + "giddycoat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (giraffepiano.com)": { + "domains": [ + "giraffepiano.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gitcrumbs.com)": { + "domains": [ + "gitcrumbs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (givevacation.com)": { + "domains": [ + "givevacation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gladglen.com)": { + "domains": [ + "gladglen.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gladysway.com)": { + "domains": [ + "gladysway.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (glamhawk.com)": { + "domains": [ + "glamhawk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gleamingcow.com)": { + "domains": [ + "gleamingcow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gleaminghaven.com)": { + "domains": [ + "gleaminghaven.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (glisteningguide.com)": { + "domains": [ + "glisteningguide.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (glisteningsign.com)": { + "domains": [ + "glisteningsign.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (glitteringbrook.com)": { + "domains": [ + "glitteringbrook.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gloriousbeef.com)": { + "domains": [ + "gloriousbeef.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (glowingmeadow.com)": { + "domains": [ + "glowingmeadow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gluedpixel.com)": { + "domains": [ + "gluedpixel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (goldfishgrowth.com)": { + "domains": [ + "goldfishgrowth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gondolagnome.com)": { + "domains": [ + "gondolagnome.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (goodbark.com)": { + "domains": [ + "goodbark.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gorgeousedge.com)": { + "domains": [ + "gorgeousedge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gracefulmilk.com)": { + "domains": [ + "gracefulmilk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (grainmass.com)": { + "domains": [ + "grainmass.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (grandfatherguitar.com)": { + "domains": [ + "grandfatherguitar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gravitygive.com)": { + "domains": [ + "gravitygive.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gravitykick.com)": { + "domains": [ + "gravitykick.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (grayoranges.com)": { + "domains": [ + "grayoranges.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (grayreceipt.com)": { + "domains": [ + "grayreceipt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (greasysquare.com)": { + "domains": [ + "greasysquare.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (greyinstrument.com)": { + "domains": [ + "greyinstrument.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gripcorn.com)": { + "domains": [ + "gripcorn.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (groovyornament.com)": { + "domains": [ + "groovyornament.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (grouchybrothers.com)": { + "domains": [ + "grouchybrothers.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (grouchypush.com)": { + "domains": [ + "grouchypush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (grumpydime.com)": { + "domains": [ + "grumpydime.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (grumpydrawer.com)": { + "domains": [ + "grumpydrawer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (guardeddirection.com)": { + "domains": [ + "guardeddirection.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (guardedschool.com)": { + "domains": [ + "guardedschool.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (guessdetail.com)": { + "domains": [ + "guessdetail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (guidecent.com)": { + "domains": [ + "guidecent.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (guildalpha.com)": { + "domains": [ + "guildalpha.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (guiltlessbasketball.com)": { + "domains": [ + "guiltlessbasketball.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gulliblegrip.com)": { + "domains": [ + "gulliblegrip.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gustocooking.com)": { + "domains": [ + "gustocooking.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (gustygrandmother.com)": { + "domains": [ + "gustygrandmother.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (h78xb.pw)": { + "domains": [ + "h78xb.pw" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (habitualhumor.com)": { + "domains": [ + "habitualhumor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (halcyoncanyon.com)": { + "domains": [ + "halcyoncanyon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (halcyonsculpture.com)": { + "domains": [ + "halcyonsculpture.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hallowedinvention.com)": { + "domains": [ + "hallowedinvention.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (haltingbadge.com)": { + "domains": [ + "haltingbadge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (haltingdivision.com)": { + "domains": [ + "haltingdivision.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (haltinggold.com)": { + "domains": [ + "haltinggold.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hammerhearing.com)": { + "domains": [ + "hammerhearing.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (handleteeth.com)": { + "domains": [ + "handleteeth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (handnorth.com)": { + "domains": [ + "handnorth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (handsomehose.com)": { + "domains": [ + "handsomehose.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (handsomeindustry.com)": { + "domains": [ + "handsomeindustry.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (handsomelyhealth.com)": { + "domains": [ + "handsomelyhealth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (handsomelythumb.com)": { + "domains": [ + "handsomelythumb.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (handsomeyam.com)": { + "domains": [ + "handsomeyam.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (handyfield.com)": { + "domains": [ + "handyfield.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (handyfireman.com)": { + "domains": [ + "handyfireman.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (handyincrease.com)": { + "domains": [ + "handyincrease.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (haplesshydrant.com)": { + "domains": [ + "haplesshydrant.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (haplessland.com)": { + "domains": [ + "haplessland.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (happysponge.com)": { + "domains": [ + "happysponge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (harborcaption.com)": { + "domains": [ + "harborcaption.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (harborcub.com)": { + "domains": [ + "harborcub.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (harmonicbamboo.com)": { + "domains": [ + "harmonicbamboo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (harmonywing.com)": { + "domains": [ + "harmonywing.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (headydegree.com)": { + "domains": [ + "headydegree.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (headyhook.com)": { + "domains": [ + "headyhook.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (healflowers.com)": { + "domains": [ + "healflowers.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hearinglizards.com)": { + "domains": [ + "hearinglizards.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (heartbreakingmind.com)": { + "domains": [ + "heartbreakingmind.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hearthorn.com)": { + "domains": [ + "hearthorn.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (heavydetail.com)": { + "domains": [ + "heavydetail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (heavyplayground.com)": { + "domains": [ + "heavyplayground.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (helpcollar.com)": { + "domains": [ + "helpcollar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (helpflame.com)": { + "domains": [ + "helpflame.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hfc195b.com)": { + "domains": [ + "hfc195b.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (highfalutinbox.com)": { + "domains": [ + "highfalutinbox.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (highfalutinhoney.com)": { + "domains": [ + "highfalutinhoney.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hilariouszinc.com)": { + "domains": [ + "hilariouszinc.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (historicalbeam.com)": { + "domains": [ + "historicalbeam.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hocgeese.com)": { + "domains": [ + "hocgeese.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hollowafterthought.com)": { + "domains": [ + "hollowafterthought.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (homelycrown.com)": { + "domains": [ + "homelycrown.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (homeslick.com)": { + "domains": [ + "homeslick.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (honeybulb.com)": { + "domains": [ + "honeybulb.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (honeywhipped.com)": { + "domains": [ + "honeywhipped.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (honorablehydrant.com)": { + "domains": [ + "honorablehydrant.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (honorableland.com)": { + "domains": [ + "honorableland.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (horsenectar.com)": { + "domains": [ + "horsenectar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hospitablehall.com)": { + "domains": [ + "hospitablehall.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hospitablehat.com)": { + "domains": [ + "hospitablehat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (howdyinbox.com)": { + "domains": [ + "howdyinbox.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (humdrumhobbies.com)": { + "domains": [ + "humdrumhobbies.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (humdrumtouch.com)": { + "domains": [ + "humdrumtouch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hurtgrape.com)": { + "domains": [ + "hurtgrape.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hypnoticwound.com)": { + "domains": [ + "hypnoticwound.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hystericalcloth.com)": { + "domains": [ + "hystericalcloth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (hystericalfinger.com)": { + "domains": [ + "hystericalfinger.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (i9w8p.pw)": { + "domains": [ + "i9w8p.pw" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (idolscene.com)": { + "domains": [ + "idolscene.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (idyllicjazz.com)": { + "domains": [ + "idyllicjazz.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (illinvention.com)": { + "domains": [ + "illinvention.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (illustriousoatmeal.com)": { + "domains": [ + "illustriousoatmeal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (immensehoney.com)": { + "domains": [ + "immensehoney.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (imminentshake.com)": { + "domains": [ + "imminentshake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (importantmeat.com)": { + "domains": [ + "importantmeat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (importedincrease.com)": { + "domains": [ + "importedincrease.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (importedinsect.com)": { + "domains": [ + "importedinsect.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (importlocate.com)": { + "domains": [ + "importlocate.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (impossibleexpansion.com)": { + "domains": [ + "impossibleexpansion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (impossiblemove.com)": { + "domains": [ + "impossiblemove.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (impulsejewel.com)": { + "domains": [ + "impulsejewel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (impulselumber.com)": { + "domains": [ + "impulselumber.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (incomehippo.com)": { + "domains": [ + "incomehippo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (incompetentjoke.com)": { + "domains": [ + "incompetentjoke.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (inconclusiveaction.com)": { + "domains": [ + "inconclusiveaction.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (infamousstream.com)": { + "domains": [ + "infamousstream.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (innocentlamp.com)": { + "domains": [ + "innocentlamp.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (innocentwax.com)": { + "domains": [ + "innocentwax.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (inputicicle.com)": { + "domains": [ + "inputicicle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (inquisitiveice.com)": { + "domains": [ + "inquisitiveice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (inquisitiveinvention.com)": { + "domains": [ + "inquisitiveinvention.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (intelligentscissors.com)": { + "domains": [ + "intelligentscissors.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (intentlens.com)": { + "domains": [ + "intentlens.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (interestdust.com)": { + "domains": [ + "interestdust.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (internalcondition.com)": { + "domains": [ + "internalcondition.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (internalsink.com)": { + "domains": [ + "internalsink.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (iotapool.com)": { + "domains": [ + "iotapool.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (iridescentdusk.com)": { + "domains": [ + "iridescentdusk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (iridescentvista.com)": { + "domains": [ + "iridescentvista.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (irritatingfog.com)": { + "domains": [ + "irritatingfog.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (itemslice.com)": { + "domains": [ + "itemslice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ivykiosk.com)": { + "domains": [ + "ivykiosk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (j93557g.com)": { + "domains": [ + "j93557g.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jadeitite.com)": { + "domains": [ + "jadeitite.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jaderooster.com)": { + "domains": [ + "jaderooster.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jailbulb.com)": { + "domains": [ + "jailbulb.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (joblessdrum.com)": { + "domains": [ + "joblessdrum.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jollylens.com)": { + "domains": [ + "jollylens.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (joyfulkeen.com)": { + "domains": [ + "joyfulkeen.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (joyfulvibe.com)": { + "domains": [ + "joyfulvibe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (joyoussurprise.com)": { + "domains": [ + "joyoussurprise.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jubilantaura.com)": { + "domains": [ + "jubilantaura.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jubilantcanyon.com)": { + "domains": [ + "jubilantcanyon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jubilantcascade.com)": { + "domains": [ + "jubilantcascade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jubilantglimmer.com)": { + "domains": [ + "jubilantglimmer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jubilanthush.com)": { + "domains": [ + "jubilanthush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jubilantlagoon.com)": { + "domains": [ + "jubilantlagoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jubilantpinnacle.com)": { + "domains": [ + "jubilantpinnacle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jubilanttempest.com)": { + "domains": [ + "jubilanttempest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jubilantvista.com)": { + "domains": [ + "jubilantvista.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (jubilantwhisper.com)": { + "domains": [ + "jubilantwhisper.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (juicebard.com)": { + "domains": [ + "juicebard.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (juiceblocks.com)": { + "domains": [ + "juiceblocks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (justicejudo.com)": { + "domains": [ + "justicejudo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (justwebcards.com)": { + "domains": [ + "justwebcards.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (k54nw.pw)": { + "domains": [ + "k54nw.pw" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (kaputquill.com)": { + "domains": [ + "kaputquill.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (keenquill.com)": { + "domains": [ + "keenquill.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (kibbleandbytes.com)": { + "domains": [ + "kibbleandbytes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (kindhush.com)": { + "domains": [ + "kindhush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (kitesquirrel.com)": { + "domains": [ + "kitesquirrel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (knitstamp.com)": { + "domains": [ + "knitstamp.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (knottyswing.com)": { + "domains": [ + "knottyswing.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (laboredlight.com)": { + "domains": [ + "laboredlight.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (laboredlocket.com)": { + "domains": [ + "laboredlocket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lameletters.com)": { + "domains": [ + "lameletters.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lamplow.com)": { + "domains": [ + "lamplow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (largebrass.com)": { + "domains": [ + "largebrass.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lasttaco.com)": { + "domains": [ + "lasttaco.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (laughablelizards.com)": { + "domains": [ + "laughablelizards.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (leaplunchroom.com)": { + "domains": [ + "leaplunchroom.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ledlocket.com)": { + "domains": [ + "ledlocket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (leftliquid.com)": { + "domains": [ + "leftliquid.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lemonpackage.com)": { + "domains": [ + "lemonpackage.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lemonsandjoy.com)": { + "domains": [ + "lemonsandjoy.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (liftedknowledge.com)": { + "domains": [ + "liftedknowledge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lightenafterthought.com)": { + "domains": [ + "lightenafterthought.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lighttalon.com)": { + "domains": [ + "lighttalon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (livelumber.com)": { + "domains": [ + "livelumber.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (livelylaugh.com)": { + "domains": [ + "livelylaugh.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (livelyreward.com)": { + "domains": [ + "livelyreward.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (livingsleet.com)": { + "domains": [ + "livingsleet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lizardslaugh.com)": { + "domains": [ + "lizardslaugh.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (loadsurprise.com)": { + "domains": [ + "loadsurprise.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lonelyflavor.com)": { + "domains": [ + "lonelyflavor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (longingtrees.com)": { + "domains": [ + "longingtrees.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (looseloaf.com)": { + "domains": [ + "looseloaf.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lorenzourban.com)": { + "domains": [ + "lorenzourban.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (losslace.com)": { + "domains": [ + "losslace.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (loudlunch.com)": { + "domains": [ + "loudlunch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lovelydrum.com)": { + "domains": [ + "lovelydrum.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (loveseashore.com)": { + "domains": [ + "loveseashore.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lp3tdqle.com)": { + "domains": [ + "lp3tdqle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (luckyzombie.com)": { + "domains": [ + "luckyzombie.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ludicrousarch.com)": { + "domains": [ + "ludicrousarch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lumberamount.com)": { + "domains": [ + "lumberamount.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (luminousboulevard.com)": { + "domains": [ + "luminousboulevard.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (luminouscatalyst.com)": { + "domains": [ + "luminouscatalyst.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (luminoussculptor.com)": { + "domains": [ + "luminoussculptor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lumpygnome.com)": { + "domains": [ + "lumpygnome.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lumpylumber.com)": { + "domains": [ + "lumpylumber.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lunchroomlock.com)": { + "domains": [ + "lunchroomlock.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lustroushaven.com)": { + "domains": [ + "lustroushaven.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (lyricshook.com)": { + "domains": [ + "lyricshook.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (maddeningpowder.com)": { + "domains": [ + "maddeningpowder.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (madebyintent.com)": { + "domains": [ + "madebyintent.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (magicaljoin.com)": { + "domains": [ + "magicaljoin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (magiczenith.com)": { + "domains": [ + "magiczenith.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (magnetairport.com)": { + "domains": [ + "magnetairport.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (majesticmountainrange.com)": { + "domains": [ + "majesticmountainrange.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (majesticwaterscape.com)": { + "domains": [ + "majesticwaterscape.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (majesticwilderness.com)": { + "domains": [ + "majesticwilderness.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (maliciousmusic.com)": { + "domains": [ + "maliciousmusic.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (managedpush.com)": { + "domains": [ + "managedpush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mantrafox.com)": { + "domains": [ + "mantrafox.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mapbasin.com)": { + "domains": [ + "mapbasin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (marblediscussion.com)": { + "domains": [ + "marblediscussion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (markahouse.com)": { + "domains": [ + "markahouse.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (markedmeasure.com)": { + "domains": [ + "markedmeasure.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (marketspiders.com)": { + "domains": [ + "marketspiders.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (marriedbelief.com)": { + "domains": [ + "marriedbelief.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (marriedmailbox.com)": { + "domains": [ + "marriedmailbox.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (marriedvalue.com)": { + "domains": [ + "marriedvalue.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (massivemark.com)": { + "domains": [ + "massivemark.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (materialisticmoon.com)": { + "domains": [ + "materialisticmoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (materialmilk.com)": { + "domains": [ + "materialmilk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (materialparcel.com)": { + "domains": [ + "materialparcel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (materialplayground.com)": { + "domains": [ + "materialplayground.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (meadowlullaby.com)": { + "domains": [ + "meadowlullaby.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (measlymiddle.com)": { + "domains": [ + "measlymiddle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (meatydime.com)": { + "domains": [ + "meatydime.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (meddleplant.com)": { + "domains": [ + "meddleplant.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mediatescarf.com)": { + "domains": [ + "mediatescarf.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mediumshort.com)": { + "domains": [ + "mediumshort.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mellowhush.com)": { + "domains": [ + "mellowhush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mellowmailbox.com)": { + "domains": [ + "mellowmailbox.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (melodiouschorus.com)": { + "domains": [ + "melodiouschorus.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (melodiouscomposition.com)": { + "domains": [ + "melodiouscomposition.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (melodioussymphony.com)": { + "domains": [ + "melodioussymphony.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (meltmilk.com)": { + "domains": [ + "meltmilk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (memopilot.com)": { + "domains": [ + "memopilot.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (memorizematch.com)": { + "domains": [ + "memorizematch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (memorizeneck.com)": { + "domains": [ + "memorizeneck.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mentorsticks.com)": { + "domains": [ + "mentorsticks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (meremark.com)": { + "domains": [ + "meremark.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (merequartz.com)": { + "domains": [ + "merequartz.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (merryopal.com)": { + "domains": [ + "merryopal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (merryvault.com)": { + "domains": [ + "merryvault.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (messagenovice.com)": { + "domains": [ + "messagenovice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (messyoranges.com)": { + "domains": [ + "messyoranges.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (metajaws.com)": { + "domains": [ + "metajaws.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mightyspiders.com)": { + "domains": [ + "mightyspiders.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mimosamajor.com)": { + "domains": [ + "mimosamajor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mindfulgem.com)": { + "domains": [ + "mindfulgem.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (minorcattle.com)": { + "domains": [ + "minorcattle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (minusmental.com)": { + "domains": [ + "minusmental.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (minuteburst.com)": { + "domains": [ + "minuteburst.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (miscreantmoon.com)": { + "domains": [ + "miscreantmoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mistyhorizon.com)": { + "domains": [ + "mistyhorizon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mittencattle.com)": { + "domains": [ + "mittencattle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mixedreading.com)": { + "domains": [ + "mixedreading.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (modularmental.com)": { + "domains": [ + "modularmental.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (monacobeatles.com)": { + "domains": [ + "monacobeatles.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (moorshoes.com)": { + "domains": [ + "moorshoes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (morefriendly.com)": { + "domains": [ + "morefriendly.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (motionflowers.com)": { + "domains": [ + "motionflowers.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (motionlessbag.com)": { + "domains": [ + "motionlessbag.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (motionlessbelief.com)": { + "domains": [ + "motionlessbelief.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (motionlessmeeting.com)": { + "domains": [ + "motionlessmeeting.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (movemeal.com)": { + "domains": [ + "movemeal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (muddledaftermath.com)": { + "domains": [ + "muddledaftermath.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (muddledmemory.com)": { + "domains": [ + "muddledmemory.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mundanenail.com)": { + "domains": [ + "mundanenail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mundanepollution.com)": { + "domains": [ + "mundanepollution.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mushywaste.com)": { + "domains": [ + "mushywaste.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (muteknife.com)": { + "domains": [ + "muteknife.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mutemailbox.com)": { + "domains": [ + "mutemailbox.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (mysticalagoon.com)": { + "domains": [ + "mysticalagoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (naivestatement.com)": { + "domains": [ + "naivestatement.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nappyattack.com)": { + "domains": [ + "nappyattack.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nappyneck.com)": { + "domains": [ + "nappyneck.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (neatshade.com)": { + "domains": [ + "neatshade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nebulacrescent.com)": { + "domains": [ + "nebulacrescent.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nebulajubilee.com)": { + "domains": [ + "nebulajubilee.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nebulousamusement.com)": { + "domains": [ + "nebulousamusement.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nebulousgarden.com)": { + "domains": [ + "nebulousgarden.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nebulousquasar.com)": { + "domains": [ + "nebulousquasar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nebulousripple.com)": { + "domains": [ + "nebulousripple.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (needlessnorth.com)": { + "domains": [ + "needlessnorth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (needyneedle.com)": { + "domains": [ + "needyneedle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (neighborlywatch.com)": { + "domains": [ + "neighborlywatch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nervoussummer.com)": { + "domains": [ + "nervoussummer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (newsletterjet.com)": { + "domains": [ + "newsletterjet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (niftygraphs.com)": { + "domains": [ + "niftygraphs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (niftyhospital.com)": { + "domains": [ + "niftyhospital.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (niftyjelly.com)": { + "domains": [ + "niftyjelly.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (niftyreports.com)": { + "domains": [ + "niftyreports.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nightwound.com)": { + "domains": [ + "nightwound.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nimbleplot.com)": { + "domains": [ + "nimbleplot.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nocturnalloom.com)": { + "domains": [ + "nocturnalloom.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nocturnalmystique.com)": { + "domains": [ + "nocturnalmystique.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (noiselessplough.com)": { + "domains": [ + "noiselessplough.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nonchalantnerve.com)": { + "domains": [ + "nonchalantnerve.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nondescriptcrowd.com)": { + "domains": [ + "nondescriptcrowd.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nondescriptnote.com)": { + "domains": [ + "nondescriptnote.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nondescriptstocking.com)": { + "domains": [ + "nondescriptstocking.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nostalgicknot.com)": { + "domains": [ + "nostalgicknot.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nostalgicneed.com)": { + "domains": [ + "nostalgicneed.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (notifyglass.com)": { + "domains": [ + "notifyglass.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nudgeduck.com)": { + "domains": [ + "nudgeduck.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nullnorth.com)": { + "domains": [ + "nullnorth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (numberlessring.com)": { + "domains": [ + "numberlessring.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (numerousnest.com)": { + "domains": [ + "numerousnest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nutritiousbean.com)": { + "domains": [ + "nutritiousbean.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (nuttyorganization.com)": { + "domains": [ + "nuttyorganization.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (oafishchance.com)": { + "domains": [ + "oafishchance.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (oafishobservation.com)": { + "domains": [ + "oafishobservation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (obscenesidewalk.com)": { + "domains": [ + "obscenesidewalk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (observantice.com)": { + "domains": [ + "observantice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (oldfashionedoffer.com)": { + "domains": [ + "oldfashionedoffer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (omgthink.com)": { + "domains": [ + "omgthink.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (omniscientfeeling.com)": { + "domains": [ + "omniscientfeeling.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (onlywoofs.com)": { + "domains": [ + "onlywoofs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (opalquill.com)": { + "domains": [ + "opalquill.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (operationchicken.com)": { + "domains": [ + "operationchicken.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (operationnail.com)": { + "domains": [ + "operationnail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (oppositeoperation.com)": { + "domains": [ + "oppositeoperation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (optimallimit.com)": { + "domains": [ + "optimallimit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (opulentsylvan.com)": { + "domains": [ + "opulentsylvan.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (orientedargument.com)": { + "domains": [ + "orientedargument.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (orionember.com)": { + "domains": [ + "orionember.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ourblogthing.com)": { + "domains": [ + "ourblogthing.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (outdoorthingy.com)": { + "domains": [ + "outdoorthingy.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (outgoinggiraffe.com)": { + "domains": [ + "outgoinggiraffe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (outsidevibe.com)": { + "domains": [ + "outsidevibe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (outstandingincome.com)": { + "domains": [ + "outstandingincome.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (outstandingsnails.com)": { + "domains": [ + "outstandingsnails.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (overconfidentfood.com)": { + "domains": [ + "overconfidentfood.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (overkick.com)": { + "domains": [ + "overkick.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (overratedchalk.com)": { + "domains": [ + "overratedchalk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (owlsr.us)": { + "domains": [ + "owlsr.us" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (oxygenfuse.com)": { + "domains": [ + "oxygenfuse.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pailcrime.com)": { + "domains": [ + "pailcrime.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pailpatch.com)": { + "domains": [ + "pailpatch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (painstakingpickle.com)": { + "domains": [ + "painstakingpickle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (paintpear.com)": { + "domains": [ + "paintpear.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (paleleaf.com)": { + "domains": [ + "paleleaf.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pamelarandom.com)": { + "domains": [ + "pamelarandom.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (panickycurtain.com)": { + "domains": [ + "panickycurtain.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (panickypancake.com)": { + "domains": [ + "panickypancake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (panoramicplane.com)": { + "domains": [ + "panoramicplane.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (parallelbulb.com)": { + "domains": [ + "parallelbulb.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (parchedsofa.com)": { + "domains": [ + "parchedsofa.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pardonpopular.com)": { + "domains": [ + "pardonpopular.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (parentpicture.com)": { + "domains": [ + "parentpicture.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (parsimoniouspolice.com)": { + "domains": [ + "parsimoniouspolice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (partplanes.com)": { + "domains": [ + "partplanes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (passivepolo.com)": { + "domains": [ + "passivepolo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pastoralroad.com)": { + "domains": [ + "pastoralroad.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pawsnug.com)": { + "domains": [ + "pawsnug.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (peacefullimit.com)": { + "domains": [ + "peacefullimit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pedromister.com)": { + "domains": [ + "pedromister.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pedropanther.com)": { + "domains": [ + "pedropanther.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (perceivequarter.com)": { + "domains": [ + "perceivequarter.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (perkyjade.com)": { + "domains": [ + "perkyjade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (petiteumbrella.com)": { + "domains": [ + "petiteumbrella.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (philippinch.com)": { + "domains": [ + "philippinch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (photographpan.com)": { + "domains": [ + "photographpan.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (piespower.com)": { + "domains": [ + "piespower.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pinchsquirrel.com)": { + "domains": [ + "pinchsquirrel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pinkbonanza.com)": { + "domains": [ + "pinkbonanza.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (piquantgrove.com)": { + "domains": [ + "piquantgrove.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (piquantmeadow.com)": { + "domains": [ + "piquantmeadow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (piquantpigs.com)": { + "domains": [ + "piquantpigs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (piquantprice.com)": { + "domains": [ + "piquantprice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (piquantvortex.com)": { + "domains": [ + "piquantvortex.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pixeledhub.com)": { + "domains": [ + "pixeledhub.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pizzasnut.com)": { + "domains": [ + "pizzasnut.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (placeframe.com)": { + "domains": [ + "placeframe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (placidactivity.com)": { + "domains": [ + "placidactivity.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (placidperson.com)": { + "domains": [ + "placidperson.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (planebasin.com)": { + "domains": [ + "planebasin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (plantdigestion.com)": { + "domains": [ + "plantdigestion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (playfulriver.com)": { + "domains": [ + "playfulriver.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pleasantpump.com)": { + "domains": [ + "pleasantpump.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (plotparent.com)": { + "domains": [ + "plotparent.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (plotrabbit.com)": { + "domains": [ + "plotrabbit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pluckypocket.com)": { + "domains": [ + "pluckypocket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pluckyzone.com)": { + "domains": [ + "pluckyzone.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pocketfaucet.com)": { + "domains": [ + "pocketfaucet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (poemprompt.com)": { + "domains": [ + "poemprompt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (poeticpackage.com)": { + "domains": [ + "poeticpackage.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pointdigestion.com)": { + "domains": [ + "pointdigestion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pointlesshour.com)": { + "domains": [ + "pointlesshour.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pointlesspocket.com)": { + "domains": [ + "pointlesspocket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pointlessprofit.com)": { + "domains": [ + "pointlessprofit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pointlessrifle.com)": { + "domains": [ + "pointlessrifle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (poisedfuel.com)": { + "domains": [ + "poisedfuel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (polarismagnet.com)": { + "domains": [ + "polarismagnet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (polishedcrescent.com)": { + "domains": [ + "polishedcrescent.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (polishedfolly.com)": { + "domains": [ + "polishedfolly.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (politeplanes.com)": { + "domains": [ + "politeplanes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (politicalflip.com)": { + "domains": [ + "politicalflip.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (politicalporter.com)": { + "domains": [ + "politicalporter.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (popplantation.com)": { + "domains": [ + "popplantation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (possibleboats.com)": { + "domains": [ + "possibleboats.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (possiblepencil.com)": { + "domains": [ + "possiblepencil.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (potatoinvention.com)": { + "domains": [ + "potatoinvention.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (powderjourney.com)": { + "domains": [ + "powderjourney.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (powerfulblends.com)": { + "domains": [ + "powerfulblends.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (powerfulcopper.com)": { + "domains": [ + "powerfulcopper.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (preciousplanes.com)": { + "domains": [ + "preciousplanes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (predictplate.com)": { + "domains": [ + "predictplate.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (prefixpatriot.com)": { + "domains": [ + "prefixpatriot.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (prepareplanes.com)": { + "domains": [ + "prepareplanes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (presetrabbits.com)": { + "domains": [ + "presetrabbits.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (previousplayground.com)": { + "domains": [ + "previousplayground.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (previouspotato.com)": { + "domains": [ + "previouspotato.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (priceypies.com)": { + "domains": [ + "priceypies.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pricklydebt.com)": { + "domains": [ + "pricklydebt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pricklypollution.com)": { + "domains": [ + "pricklypollution.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pristinegale.com)": { + "domains": [ + "pristinegale.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (probablepartner.com)": { + "domains": [ + "probablepartner.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (processplantation.com)": { + "domains": [ + "processplantation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (producepickle.com)": { + "domains": [ + "producepickle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (productsurfer.com)": { + "domains": [ + "productsurfer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (profitrumour.com)": { + "domains": [ + "profitrumour.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (profusesupport.com)": { + "domains": [ + "profusesupport.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (promiseair.com)": { + "domains": [ + "promiseair.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (proofconvert.com)": { + "domains": [ + "proofconvert.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (propertypotato.com)": { + "domains": [ + "propertypotato.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (protestcopy.com)": { + "domains": [ + "protestcopy.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (psychedelicarithmetic.com)": { + "domains": [ + "psychedelicarithmetic.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (psychedelicchess.com)": { + "domains": [ + "psychedelicchess.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (publicsofa.com)": { + "domains": [ + "publicsofa.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (puffyloss.com)": { + "domains": [ + "puffyloss.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (puffypaste.com)": { + "domains": [ + "puffypaste.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (puffypull.com)": { + "domains": [ + "puffypull.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (puffypurpose.com)": { + "domains": [ + "puffypurpose.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pulsatingmeadow.com)": { + "domains": [ + "pulsatingmeadow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pumpedpancake.com)": { + "domains": [ + "pumpedpancake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (pumpedpurpose.com)": { + "domains": [ + "pumpedpurpose.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (punyplant.com)": { + "domains": [ + "punyplant.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (puppytooth.com)": { + "domains": [ + "puppytooth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (purposepipe.com)": { + "domains": [ + "purposepipe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quacksquirrel.com)": { + "domains": [ + "quacksquirrel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quaintcan.com)": { + "domains": [ + "quaintcan.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quaintlake.com)": { + "domains": [ + "quaintlake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quantumlagoon.com)": { + "domains": [ + "quantumlagoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quantumshine.com)": { + "domains": [ + "quantumshine.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (queenskart.com)": { + "domains": [ + "queenskart.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quietknowledge.com)": { + "domains": [ + "quietknowledge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quillkick.com)": { + "domains": [ + "quillkick.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quirkybliss.com)": { + "domains": [ + "quirkybliss.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quirkysugar.com)": { + "domains": [ + "quirkysugar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quixoticnebula.com)": { + "domains": [ + "quixoticnebula.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quizzicalpartner.com)": { + "domains": [ + "quizzicalpartner.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (quizzicalzephyr.com)": { + "domains": [ + "quizzicalzephyr.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rabbitbreath.com)": { + "domains": [ + "rabbitbreath.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rabbitrifle.com)": { + "domains": [ + "rabbitrifle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (radiantcanopy.com)": { + "domains": [ + "radiantcanopy.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (radiantlullaby.com)": { + "domains": [ + "radiantlullaby.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (radiateprose.com)": { + "domains": [ + "radiateprose.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (railwaygiraffe.com)": { + "domains": [ + "railwaygiraffe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (railwayreason.com)": { + "domains": [ + "railwayreason.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (raintwig.com)": { + "domains": [ + "raintwig.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rainyhand.com)": { + "domains": [ + "rainyhand.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rainyrule.com)": { + "domains": [ + "rainyrule.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rambunctiousflock.com)": { + "domains": [ + "rambunctiousflock.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rangecake.com)": { + "domains": [ + "rangecake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rangeplayground.com)": { + "domains": [ + "rangeplayground.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (raresummer.com)": { + "domains": [ + "raresummer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (reactjspdf.com)": { + "domains": [ + "reactjspdf.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (readingguilt.com)": { + "domains": [ + "readingguilt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (readymoon.com)": { + "domains": [ + "readymoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (readysnails.com)": { + "domains": [ + "readysnails.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (realizedoor.com)": { + "domains": [ + "realizedoor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (realizerecess.com)": { + "domains": [ + "realizerecess.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rebelclover.com)": { + "domains": [ + "rebelclover.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rebelhen.com)": { + "domains": [ + "rebelhen.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rebelsubway.com)": { + "domains": [ + "rebelsubway.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rebelswing.com)": { + "domains": [ + "rebelswing.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (receiptcent.com)": { + "domains": [ + "receiptcent.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (receptiveink.com)": { + "domains": [ + "receptiveink.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (receptivereaction.com)": { + "domains": [ + "receptivereaction.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (recessrain.com)": { + "domains": [ + "recessrain.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (reconditeprison.com)": { + "domains": [ + "reconditeprison.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (reconditerake.com)": { + "domains": [ + "reconditerake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (reconditerespect.com)": { + "domains": [ + "reconditerespect.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (reflectivestatement.com)": { + "domains": [ + "reflectivestatement.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (refundradar.com)": { + "domains": [ + "refundradar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (regularplants.com)": { + "domains": [ + "regularplants.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (regulatesleet.com)": { + "domains": [ + "regulatesleet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rehabilitatereason.com)": { + "domains": [ + "rehabilitatereason.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (relationrest.com)": { + "domains": [ + "relationrest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (releasepath.com)": { + "domains": [ + "releasepath.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (reloadphoto.com)": { + "domains": [ + "reloadphoto.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rememberdiscussion.com)": { + "domains": [ + "rememberdiscussion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rentinfinity.com)": { + "domains": [ + "rentinfinity.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (repeatsweater.com)": { + "domains": [ + "repeatsweater.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (replaceroute.com)": { + "domains": [ + "replaceroute.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (resonantbrush.com)": { + "domains": [ + "resonantbrush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (resonantrock.com)": { + "domains": [ + "resonantrock.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (respectrain.com)": { + "domains": [ + "respectrain.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (resplendentecho.com)": { + "domains": [ + "resplendentecho.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (restrainstorm.com)": { + "domains": [ + "restrainstorm.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (restructureinvention.com)": { + "domains": [ + "restructureinvention.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (retrievemint.com)": { + "domains": [ + "retrievemint.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rhetoricalactivity.com)": { + "domains": [ + "rhetoricalactivity.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rhetoricalloss.com)": { + "domains": [ + "rhetoricalloss.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rhetoricalveil.com)": { + "domains": [ + "rhetoricalveil.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rhymezebra.com)": { + "domains": [ + "rhymezebra.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rhythmrule.com)": { + "domains": [ + "rhythmrule.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (richstring.com)": { + "domains": [ + "richstring.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (righteouscrayon.com)": { + "domains": [ + "righteouscrayon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rightfulfall.com)": { + "domains": [ + "rightfulfall.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rigidrobin.com)": { + "domains": [ + "rigidrobin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rigidveil.com)": { + "domains": [ + "rigidveil.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rigorlab.com)": { + "domains": [ + "rigorlab.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ringplant.com)": { + "domains": [ + "ringplant.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ringsrecord.com)": { + "domains": [ + "ringsrecord.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ritzykey.com)": { + "domains": [ + "ritzykey.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ritzyrepresentative.com)": { + "domains": [ + "ritzyrepresentative.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ritzyveil.com)": { + "domains": [ + "ritzyveil.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rockpebbles.com)": { + "domains": [ + "rockpebbles.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rollconnection.com)": { + "domains": [ + "rollconnection.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (roofrelation.com)": { + "domains": [ + "roofrelation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (roseincome.com)": { + "domains": [ + "roseincome.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rottenray.com)": { + "domains": [ + "rottenray.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ruralrobin.com)": { + "domains": [ + "ruralrobin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (rusticprice.com)": { + "domains": [ + "rusticprice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ruthlessdegree.com)": { + "domains": [ + "ruthlessdegree.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ruthlessmilk.com)": { + "domains": [ + "ruthlessmilk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sableloss.com)": { + "domains": [ + "sableloss.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sablesmile.com)": { + "domains": [ + "sablesmile.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sablesong.com)": { + "domains": [ + "sablesong.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sadloaf.com)": { + "domains": [ + "sadloaf.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (safetybrush.com)": { + "domains": [ + "safetybrush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (saffronrefuge.com)": { + "domains": [ + "saffronrefuge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sagargift.com)": { + "domains": [ + "sagargift.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (saltsacademy.com)": { + "domains": [ + "saltsacademy.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (samesticks.com)": { + "domains": [ + "samesticks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (samestretch.com)": { + "domains": [ + "samestretch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (samplesamba.com)": { + "domains": [ + "samplesamba.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sandstrophies.com)": { + "domains": [ + "sandstrophies.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (satisfycork.com)": { + "domains": [ + "satisfycork.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (savoryorange.com)": { + "domains": [ + "savoryorange.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scarcecard.com)": { + "domains": [ + "scarcecard.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scarceshock.com)": { + "domains": [ + "scarceshock.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scarcesign.com)": { + "domains": [ + "scarcesign.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scarcestructure.com)": { + "domains": [ + "scarcestructure.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scarcesurprise.com)": { + "domains": [ + "scarcesurprise.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scaredcomfort.com)": { + "domains": [ + "scaredcomfort.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scaredsidewalk.com)": { + "domains": [ + "scaredsidewalk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scaredslip.com)": { + "domains": [ + "scaredslip.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scaredsnake.com)": { + "domains": [ + "scaredsnake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scaredsnakes.com)": { + "domains": [ + "scaredsnakes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scaredsong.com)": { + "domains": [ + "scaredsong.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scaredstomach.com)": { + "domains": [ + "scaredstomach.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scaredswing.com)": { + "domains": [ + "scaredswing.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scarefowl.com)": { + "domains": [ + "scarefowl.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scarfsmash.com)": { + "domains": [ + "scarfsmash.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scatteredheat.com)": { + "domains": [ + "scatteredheat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scatteredquiver.com)": { + "domains": [ + "scatteredquiver.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scatteredstream.com)": { + "domains": [ + "scatteredstream.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scenicapparel.com)": { + "domains": [ + "scenicapparel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scenicdrops.com)": { + "domains": [ + "scenicdrops.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scientificshirt.com)": { + "domains": [ + "scientificshirt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scintillatingscissors.com)": { + "domains": [ + "scintillatingscissors.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scintillatingsilver.com)": { + "domains": [ + "scintillatingsilver.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scissorsstatement.com)": { + "domains": [ + "scissorsstatement.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scrapesleep.com)": { + "domains": [ + "scrapesleep.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scratchsofa.com)": { + "domains": [ + "scratchsofa.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (screechingfurniture.com)": { + "domains": [ + "screechingfurniture.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (screechingstocking.com)": { + "domains": [ + "screechingstocking.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (screechingstove.com)": { + "domains": [ + "screechingstove.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scribbleson.com)": { + "domains": [ + "scribbleson.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scribblestring.com)": { + "domains": [ + "scribblestring.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scrollservice.com)": { + "domains": [ + "scrollservice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (scrubswim.com)": { + "domains": [ + "scrubswim.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (seashoresociety.com)": { + "domains": [ + "seashoresociety.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (seatsmoke.com)": { + "domains": [ + "seatsmoke.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (secondhandfall.com)": { + "domains": [ + "secondhandfall.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (secretivesheep.com)": { + "domains": [ + "secretivesheep.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (secretspiders.com)": { + "domains": [ + "secretspiders.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (secretturtle.com)": { + "domains": [ + "secretturtle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (seedscissors.com)": { + "domains": [ + "seedscissors.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (seemlysuggestion.com)": { + "domains": [ + "seemlysuggestion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (selectivesummer.com)": { + "domains": [ + "selectivesummer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (selfishsea.com)": { + "domains": [ + "selfishsea.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (selfishsnake.com)": { + "domains": [ + "selfishsnake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sendingspire.com)": { + "domains": [ + "sendingspire.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sensorsmile.com)": { + "domains": [ + "sensorsmile.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (separatesort.com)": { + "domains": [ + "separatesort.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (seraphichorizon.com)": { + "domains": [ + "seraphichorizon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (seraphicjubilee.com)": { + "domains": [ + "seraphicjubilee.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (serendipityecho.com)": { + "domains": [ + "serendipityecho.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (serenecascade.com)": { + "domains": [ + "serenecascade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (serenepebble.com)": { + "domains": [ + "serenepebble.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (serenesurf.com)": { + "domains": [ + "serenesurf.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (serenezenith.com)": { + "domains": [ + "serenezenith.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (serioussuit.com)": { + "domains": [ + "serioussuit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (serpentshampoo.com)": { + "domains": [ + "serpentshampoo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (serverracer.com)": { + "domains": [ + "serverracer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (settleshoes.com)": { + "domains": [ + "settleshoes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shadeship.com)": { + "domains": [ + "shadeship.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shaggytank.com)": { + "domains": [ + "shaggytank.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shakegoldfish.com)": { + "domains": [ + "shakegoldfish.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shakyseat.com)": { + "domains": [ + "shakyseat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shakysurprise.com)": { + "domains": [ + "shakysurprise.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shakytaste.com)": { + "domains": [ + "shakytaste.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shallowblade.com)": { + "domains": [ + "shallowblade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shamerain.com)": { + "domains": [ + "shamerain.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shapecomb.com)": { + "domains": [ + "shapecomb.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sharkskids.com)": { + "domains": [ + "sharkskids.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sheargovernor.com)": { + "domains": [ + "sheargovernor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shesubscriptions.com)": { + "domains": [ + "shesubscriptions.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shinypond.com)": { + "domains": [ + "shinypond.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shirtsidewalk.com)": { + "domains": [ + "shirtsidewalk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shiveringspot.com)": { + "domains": [ + "shiveringspot.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shiverscissors.com)": { + "domains": [ + "shiverscissors.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shockinggrass.com)": { + "domains": [ + "shockinggrass.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shockingship.com)": { + "domains": [ + "shockingship.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shredquiz.com)": { + "domains": [ + "shredquiz.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shrillspoon.com)": { + "domains": [ + "shrillspoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (shydinosaurs.com)": { + "domains": [ + "shydinosaurs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sicksmash.com)": { + "domains": [ + "sicksmash.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sierrakermit.com)": { + "domains": [ + "sierrakermit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (signaturepod.com)": { + "domains": [ + "signaturepod.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (siliconslow.com)": { + "domains": [ + "siliconslow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sillyscrew.com)": { + "domains": [ + "sillyscrew.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (simplesidewalk.com)": { + "domains": [ + "simplesidewalk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (simulateswing.com)": { + "domains": [ + "simulateswing.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sincerebuffalo.com)": { + "domains": [ + "sincerebuffalo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sincerepelican.com)": { + "domains": [ + "sincerepelican.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sinceresubstance.com)": { + "domains": [ + "sinceresubstance.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (singroot.com)": { + "domains": [ + "singroot.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sinkbooks.com)": { + "domains": [ + "sinkbooks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sixauthority.com)": { + "domains": [ + "sixauthority.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sixscissors.com)": { + "domains": [ + "sixscissors.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sizzlingsmoke.com)": { + "domains": [ + "sizzlingsmoke.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (skillfuldrop.com)": { + "domains": [ + "skillfuldrop.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (skisofa.com)": { + "domains": [ + "skisofa.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (slaysweater.com)": { + "domains": [ + "slaysweater.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (slimyscarf.com)": { + "domains": [ + "slimyscarf.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (slinksuggestion.com)": { + "domains": [ + "slinksuggestion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (slopesoap.com)": { + "domains": [ + "slopesoap.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smallershops.com)": { + "domains": [ + "smallershops.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smashquartz.com)": { + "domains": [ + "smashquartz.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smashshoe.com)": { + "domains": [ + "smashshoe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smashsurprise.com)": { + "domains": [ + "smashsurprise.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smilewound.com)": { + "domains": [ + "smilewound.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smilingcattle.com)": { + "domains": [ + "smilingcattle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smilingswim.com)": { + "domains": [ + "smilingswim.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smilingwaves.com)": { + "domains": [ + "smilingwaves.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smoggysnakes.com)": { + "domains": [ + "smoggysnakes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smoggysongs.com)": { + "domains": [ + "smoggysongs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (smoggystation.com)": { + "domains": [ + "smoggystation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (snacktoken.com)": { + "domains": [ + "snacktoken.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (snakemineral.com)": { + "domains": [ + "snakemineral.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (snakeslang.com)": { + "domains": [ + "snakeslang.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (snappyreport.com)": { + "domains": [ + "snappyreport.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sneakwind.com)": { + "domains": [ + "sneakwind.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sneakystew.com)": { + "domains": [ + "sneakystew.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (snoresmile.com)": { + "domains": [ + "snoresmile.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (snowmentor.com)": { + "domains": [ + "snowmentor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (softwarerumble.com)": { + "domains": [ + "softwarerumble.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (soggysponge.com)": { + "domains": [ + "soggysponge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (soggyzoo.com)": { + "domains": [ + "soggyzoo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (solarislabyrinth.com)": { + "domains": [ + "solarislabyrinth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (somberscarecrow.com)": { + "domains": [ + "somberscarecrow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sombersea.com)": { + "domains": [ + "sombersea.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sombersquirrel.com)": { + "domains": [ + "sombersquirrel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sombersticks.com)": { + "domains": [ + "sombersticks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sombersurprise.com)": { + "domains": [ + "sombersurprise.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (songsterritory.com)": { + "domains": [ + "songsterritory.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (soothingglade.com)": { + "domains": [ + "soothingglade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sophisticatedstove.com)": { + "domains": [ + "sophisticatedstove.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sordidsmile.com)": { + "domains": [ + "sordidsmile.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (soresidewalk.com)": { + "domains": [ + "soresidewalk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (soresneeze.com)": { + "domains": [ + "soresneeze.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sorethunder.com)": { + "domains": [ + "sorethunder.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (soretrain.com)": { + "domains": [ + "soretrain.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sortanoisy.com)": { + "domains": [ + "sortanoisy.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sortsail.com)": { + "domains": [ + "sortsail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sortsummer.com)": { + "domains": [ + "sortsummer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (soundstocking.com)": { + "domains": [ + "soundstocking.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sowlettuce.com)": { + "domains": [ + "sowlettuce.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spadelocket.com)": { + "domains": [ + "spadelocket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sparkgoal.com)": { + "domains": [ + "sparkgoal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sparklingshelf.com)": { + "domains": [ + "sparklingshelf.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (specialscissors.com)": { + "domains": [ + "specialscissors.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spectacularstamp.com)": { + "domains": [ + "spectacularstamp.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spellmist.com)": { + "domains": [ + "spellmist.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spellsalsa.com)": { + "domains": [ + "spellsalsa.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spiffymachine.com)": { + "domains": [ + "spiffymachine.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spirebaboon.com)": { + "domains": [ + "spirebaboon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spookyexchange.com)": { + "domains": [ + "spookyexchange.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spookyskate.com)": { + "domains": [ + "spookyskate.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spookysleet.com)": { + "domains": [ + "spookysleet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spookystitch.com)": { + "domains": [ + "spookystitch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spoonsilk.com)": { + "domains": [ + "spoonsilk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spotlessstamp.com)": { + "domains": [ + "spotlessstamp.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spottednoise.com)": { + "domains": [ + "spottednoise.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (springolive.com)": { + "domains": [ + "springolive.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (springsister.com)": { + "domains": [ + "springsister.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (springsnails.com)": { + "domains": [ + "springsnails.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sproutingbag.com)": { + "domains": [ + "sproutingbag.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sprydelta.com)": { + "domains": [ + "sprydelta.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sprysummit.com)": { + "domains": [ + "sprysummit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spuriousair.com)": { + "domains": [ + "spuriousair.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spuriousbase.com)": { + "domains": [ + "spuriousbase.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spurioussquirrel.com)": { + "domains": [ + "spurioussquirrel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spuriousstranger.com)": { + "domains": [ + "spuriousstranger.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (spysubstance.com)": { + "domains": [ + "spysubstance.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (squalidscrew.com)": { + "domains": [ + "squalidscrew.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (squeakzinc.com)": { + "domains": [ + "squeakzinc.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (squealingturn.com)": { + "domains": [ + "squealingturn.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stakingbasket.com)": { + "domains": [ + "stakingbasket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stakingshock.com)": { + "domains": [ + "stakingshock.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stakingsmile.com)": { + "domains": [ + "stakingsmile.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (staleshow.com)": { + "domains": [ + "staleshow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stalesummer.com)": { + "domains": [ + "stalesummer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (starkscale.com)": { + "domains": [ + "starkscale.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (startingcars.com)": { + "domains": [ + "startingcars.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (statshunt.com)": { + "domains": [ + "statshunt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (statuesqueship.com)": { + "domains": [ + "statuesqueship.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stayaction.com)": { + "domains": [ + "stayaction.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (steadfastseat.com)": { + "domains": [ + "steadfastseat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (steadfastsound.com)": { + "domains": [ + "steadfastsound.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (steadfastsystem.com)": { + "domains": [ + "steadfastsystem.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (steadycopper.com)": { + "domains": [ + "steadycopper.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stealsteel.com)": { + "domains": [ + "stealsteel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (steepscale.com)": { + "domains": [ + "steepscale.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (steepsister.com)": { + "domains": [ + "steepsister.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (steepsquirrel.com)": { + "domains": [ + "steepsquirrel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stepcattle.com)": { + "domains": [ + "stepcattle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stepplane.com)": { + "domains": [ + "stepplane.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stepwisevideo.com)": { + "domains": [ + "stepwisevideo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stereoproxy.com)": { + "domains": [ + "stereoproxy.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stereotypedsugar.com)": { + "domains": [ + "stereotypedsugar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stewspiders.com)": { + "domains": [ + "stewspiders.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stiffgame.com)": { + "domains": [ + "stiffgame.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stiffstem.com)": { + "domains": [ + "stiffstem.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stimulatingsneeze.com)": { + "domains": [ + "stimulatingsneeze.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stingsquirrel.com)": { + "domains": [ + "stingsquirrel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stingycrush.com)": { + "domains": [ + "stingycrush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stingyshoe.com)": { + "domains": [ + "stingyshoe.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stingyspoon.com)": { + "domains": [ + "stingyspoon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stockingsleet.com)": { + "domains": [ + "stockingsleet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stockingsneeze.com)": { + "domains": [ + "stockingsneeze.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stomachscience.com)": { + "domains": [ + "stomachscience.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stonechin.com)": { + "domains": [ + "stonechin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stopstomach.com)": { + "domains": [ + "stopstomach.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stormyachiever.com)": { + "domains": [ + "stormyachiever.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stormyfold.com)": { + "domains": [ + "stormyfold.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (straightnest.com)": { + "domains": [ + "straightnest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (strangeclocks.com)": { + "domains": [ + "strangeclocks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (strangersponge.com)": { + "domains": [ + "strangersponge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (strangesink.com)": { + "domains": [ + "strangesink.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (streetsort.com)": { + "domains": [ + "streetsort.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stretchsister.com)": { + "domains": [ + "stretchsister.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stretchsneeze.com)": { + "domains": [ + "stretchsneeze.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stretchsquirrel.com)": { + "domains": [ + "stretchsquirrel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stripedbat.com)": { + "domains": [ + "stripedbat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (strivesidewalk.com)": { + "domains": [ + "strivesidewalk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (strivesquirrel.com)": { + "domains": [ + "strivesquirrel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (strokesystem.com)": { + "domains": [ + "strokesystem.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stupendoussleet.com)": { + "domains": [ + "stupendoussleet.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stupendoussnow.com)": { + "domains": [ + "stupendoussnow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (stupidscene.com)": { + "domains": [ + "stupidscene.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sturdysnail.com)": { + "domains": [ + "sturdysnail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (subletyoke.com)": { + "domains": [ + "subletyoke.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sublimequartz.com)": { + "domains": [ + "sublimequartz.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (subsequentswim.com)": { + "domains": [ + "subsequentswim.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (substantialcarpenter.com)": { + "domains": [ + "substantialcarpenter.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (substantialgrade.com)": { + "domains": [ + "substantialgrade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (succeedscene.com)": { + "domains": [ + "succeedscene.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (successfulscent.com)": { + "domains": [ + "successfulscent.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (suddensoda.com)": { + "domains": [ + "suddensoda.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sugarfriction.com)": { + "domains": [ + "sugarfriction.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (suggestionbridge.com)": { + "domains": [ + "suggestionbridge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sulkycook.com)": { + "domains": [ + "sulkycook.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (summerobject.com)": { + "domains": [ + "summerobject.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (sunshinegates.com)": { + "domains": [ + "sunshinegates.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (superchichair.com)": { + "domains": [ + "superchichair.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (superficialeyes.com)": { + "domains": [ + "superficialeyes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (superficialspring.com)": { + "domains": [ + "superficialspring.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (superficialsquare.com)": { + "domains": [ + "superficialsquare.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (superviseshoes.com)": { + "domains": [ + "superviseshoes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (supportwaves.com)": { + "domains": [ + "supportwaves.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (suspectmark.com)": { + "domains": [ + "suspectmark.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (swankysquare.com)": { + "domains": [ + "swankysquare.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (swellstocking.com)": { + "domains": [ + "swellstocking.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (swelteringsleep.com)": { + "domains": [ + "swelteringsleep.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (swimfreely.com)": { + "domains": [ + "swimfreely.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (swingslip.com)": { + "domains": [ + "swingslip.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (swordgoose.com)": { + "domains": [ + "swordgoose.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (syllablesight.com)": { + "domains": [ + "syllablesight.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (synonymousrule.com)": { + "domains": [ + "synonymousrule.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (synonymoussticks.com)": { + "domains": [ + "synonymoussticks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (synthesizescarecrow.com)": { + "domains": [ + "synthesizescarecrow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tackytrains.com)": { + "domains": [ + "tackytrains.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tacojournal.com)": { + "domains": [ + "tacojournal.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (talltouch.com)": { + "domains": [ + "talltouch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tangibleteam.com)": { + "domains": [ + "tangibleteam.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tangletrace.com)": { + "domains": [ + "tangletrace.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tangyamount.com)": { + "domains": [ + "tangyamount.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tangycover.com)": { + "domains": [ + "tangycover.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tastelesstrees.com)": { + "domains": [ + "tastelesstrees.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tastesnake.com)": { + "domains": [ + "tastesnake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tawdryson.com)": { + "domains": [ + "tawdryson.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tdzvm.pw)": { + "domains": [ + "tdzvm.pw" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (teacupbooks.com)": { + "domains": [ + "teacupbooks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tearfulglass.com)": { + "domains": [ + "tearfulglass.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (techconverter.com)": { + "domains": [ + "techconverter.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tediousbear.com)": { + "domains": [ + "tediousbear.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tediousticket.com)": { + "domains": [ + "tediousticket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tedioustooth.com)": { + "domains": [ + "tedioustooth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (teenytinycellar.com)": { + "domains": [ + "teenytinycellar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (teenytinyshirt.com)": { + "domains": [ + "teenytinyshirt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (teenytinytongue.com)": { + "domains": [ + "teenytinytongue.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (telephoneapparatus.com)": { + "domains": [ + "telephoneapparatus.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tempertrick.com)": { + "domains": [ + "tempertrick.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tempttalk.com)": { + "domains": [ + "tempttalk.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (temptteam.com)": { + "domains": [ + "temptteam.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tendertest.com)": { + "domains": [ + "tendertest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (terriblethumb.com)": { + "domains": [ + "terriblethumb.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (terrifictooth.com)": { + "domains": [ + "terrifictooth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (testadmiral.com)": { + "domains": [ + "testadmiral.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (texturetrick.com)": { + "domains": [ + "texturetrick.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (therapeuticcars.com)": { + "domains": [ + "therapeuticcars.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thickticket.com)": { + "domains": [ + "thickticket.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thicktrucks.com)": { + "domains": [ + "thicktrucks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thingsafterthought.com)": { + "domains": [ + "thingsafterthought.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thingstaste.com)": { + "domains": [ + "thingstaste.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thinkitten.com)": { + "domains": [ + "thinkitten.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thinkitwice.com)": { + "domains": [ + "thinkitwice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thirdrespect.com)": { + "domains": [ + "thirdrespect.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thirstytwig.com)": { + "domains": [ + "thirstytwig.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thomastorch.com)": { + "domains": [ + "thomastorch.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thoughtlessknot.com)": { + "domains": [ + "thoughtlessknot.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (threetruck.com)": { + "domains": [ + "threetruck.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (thrivingmarketplace.com)": { + "domains": [ + "thrivingmarketplace.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ticketaunt.com)": { + "domains": [ + "ticketaunt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ticklesign.com)": { + "domains": [ + "ticklesign.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tidymitten.com)": { + "domains": [ + "tidymitten.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tightpowder.com)": { + "domains": [ + "tightpowder.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tinyswans.com)": { + "domains": [ + "tinyswans.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tinytendency.com)": { + "domains": [ + "tinytendency.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tiredthroat.com)": { + "domains": [ + "tiredthroat.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tiresomethunder.com)": { + "domains": [ + "tiresomethunder.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (toolcapital.com)": { + "domains": [ + "toolcapital.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (toomanyalts.com)": { + "domains": [ + "toomanyalts.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (torpidtongue.com)": { + "domains": [ + "torpidtongue.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (touristfuel.com)": { + "domains": [ + "touristfuel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (trackcaddie.com)": { + "domains": [ + "trackcaddie.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tradetooth.com)": { + "domains": [ + "tradetooth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (trafficviews.com)": { + "domains": [ + "trafficviews.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tranquilarchipelago.com)": { + "domains": [ + "tranquilarchipelago.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tranquilcan.com)": { + "domains": [ + "tranquilcan.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tranquilcanyon.com)": { + "domains": [ + "tranquilcanyon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tranquilplume.com)": { + "domains": [ + "tranquilplume.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tranquilside.com)": { + "domains": [ + "tranquilside.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tranquilveil.com)": { + "domains": [ + "tranquilveil.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tranquilveranda.com)": { + "domains": [ + "tranquilveranda.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (trappush.com)": { + "domains": [ + "trappush.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (treadbun.com)": { + "domains": [ + "treadbun.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tremendousearthquake.com)": { + "domains": [ + "tremendousearthquake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tremendousplastic.com)": { + "domains": [ + "tremendousplastic.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tremendoustime.com)": { + "domains": [ + "tremendoustime.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tritebadge.com)": { + "domains": [ + "tritebadge.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tritethunder.com)": { + "domains": [ + "tritethunder.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tritetongue.com)": { + "domains": [ + "tritetongue.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (troubledtail.com)": { + "domains": [ + "troubledtail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (troubleshade.com)": { + "domains": [ + "troubleshade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (truckstomatoes.com)": { + "domains": [ + "truckstomatoes.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (truculentrate.com)": { + "domains": [ + "truculentrate.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (truebackpack.com)": { + "domains": [ + "truebackpack.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tumbleicicle.com)": { + "domains": [ + "tumbleicicle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tuneupcoffee.com)": { + "domains": [ + "tuneupcoffee.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (twistloss.com)": { + "domains": [ + "twistloss.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (twistsweater.com)": { + "domains": [ + "twistsweater.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (typicalairplane.com)": { + "domains": [ + "typicalairplane.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (typicalteeth.com)": { + "domains": [ + "typicalteeth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (tzwaw.pw)": { + "domains": [ + "tzwaw.pw" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ubiquitoussea.com)": { + "domains": [ + "ubiquitoussea.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ubiquitousyard.com)": { + "domains": [ + "ubiquitousyard.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ultraoranges.com)": { + "domains": [ + "ultraoranges.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (ultravalid.com)": { + "domains": [ + "ultravalid.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unablehope.com)": { + "domains": [ + "unablehope.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unaccountablecreator.com)": { + "domains": [ + "unaccountablecreator.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unaccountablepie.com)": { + "domains": [ + "unaccountablepie.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unarmedindustry.com)": { + "domains": [ + "unarmedindustry.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unbecominghall.com)": { + "domains": [ + "unbecominghall.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unbecominglamp.com)": { + "domains": [ + "unbecominglamp.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (uncoveredexpert.com)": { + "domains": [ + "uncoveredexpert.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (understoodocean.com)": { + "domains": [ + "understoodocean.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unequalbrake.com)": { + "domains": [ + "unequalbrake.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unequaltrail.com)": { + "domains": [ + "unequaltrail.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (uninterestedquarter.com)": { + "domains": [ + "uninterestedquarter.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unknowncontrol.com)": { + "domains": [ + "unknowncontrol.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unknowncrate.com)": { + "domains": [ + "unknowncrate.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unknownidea.com)": { + "domains": [ + "unknownidea.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unknowntray.com)": { + "domains": [ + "unknowntray.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (untidyquestion.com)": { + "domains": [ + "untidyquestion.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (untidyrice.com)": { + "domains": [ + "untidyrice.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unusedstone.com)": { + "domains": [ + "unusedstone.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unusualtitle.com)": { + "domains": [ + "unusualtitle.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unwieldyhealth.com)": { + "domains": [ + "unwieldyhealth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unwieldyimpulse.com)": { + "domains": [ + "unwieldyimpulse.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (unwieldyplastic.com)": { + "domains": [ + "unwieldyplastic.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (uppitytime.com)": { + "domains": [ + "uppitytime.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (uselesslumber.com)": { + "domains": [ + "uselesslumber.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (validmemo.com)": { + "domains": [ + "validmemo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vanfireworks.com)": { + "domains": [ + "vanfireworks.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vanishmemory.com)": { + "domains": [ + "vanishmemory.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (velvetnova.com)": { + "domains": [ + "velvetnova.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (velvetquasar.com)": { + "domains": [ + "velvetquasar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vengefulgrass.com)": { + "domains": [ + "vengefulgrass.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (venomousvessel.com)": { + "domains": [ + "venomousvessel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (venusgloria.com)": { + "domains": [ + "venusgloria.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (verdantanswer.com)": { + "domains": [ + "verdantanswer.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (verdantcrescent.com)": { + "domains": [ + "verdantcrescent.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (verdantlabyrinth.com)": { + "domains": [ + "verdantlabyrinth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (verdantloom.com)": { + "domains": [ + "verdantloom.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (verdantsculpture.com)": { + "domains": [ + "verdantsculpture.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (verseballs.com)": { + "domains": [ + "verseballs.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vibrantcelebration.com)": { + "domains": [ + "vibrantcelebration.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vibrantgale.com)": { + "domains": [ + "vibrantgale.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vibranthaven.com)": { + "domains": [ + "vibranthaven.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vibrantpact.com)": { + "domains": [ + "vibrantpact.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vibrantsundown.com)": { + "domains": [ + "vibrantsundown.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vibranttalisman.com)": { + "domains": [ + "vibranttalisman.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vibrantvale.com)": { + "domains": [ + "vibrantvale.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (victoriousrequest.com)": { + "domains": [ + "victoriousrequest.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (virtualvincent.com)": { + "domains": [ + "virtualvincent.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vividcanopy.com)": { + "domains": [ + "vividcanopy.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vividfrost.com)": { + "domains": [ + "vividfrost.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vividmeadow.com)": { + "domains": [ + "vividmeadow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vividplume.com)": { + "domains": [ + "vividplume.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (voicelessvein.com)": { + "domains": [ + "voicelessvein.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (voidgoo.com)": { + "domains": [ + "voidgoo.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (volatileprofit.com)": { + "domains": [ + "volatileprofit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (volatilevessel.com)": { + "domains": [ + "volatilevessel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (voraciousgrip.com)": { + "domains": [ + "voraciousgrip.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (vq1qi.pw)": { + "domains": [ + "vq1qi.pw" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (waitingnumber.com)": { + "domains": [ + "waitingnumber.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wantingwindow.com)": { + "domains": [ + "wantingwindow.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (warmafterthought.com)": { + "domains": [ + "warmafterthought.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (warmquiver.com)": { + "domains": [ + "warmquiver.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (warnwing.com)": { + "domains": [ + "warnwing.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (washbanana.com)": { + "domains": [ + "washbanana.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wateryvan.com)": { + "domains": [ + "wateryvan.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (waterywave.com)": { + "domains": [ + "waterywave.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (waterywrist.com)": { + "domains": [ + "waterywrist.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wearbasin.com)": { + "domains": [ + "wearbasin.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (websitesdude.com)": { + "domains": [ + "websitesdude.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wellgroomedapparel.com)": { + "domains": [ + "wellgroomedapparel.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wellgroomedhydrant.com)": { + "domains": [ + "wellgroomedhydrant.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wellmadefrog.com)": { + "domains": [ + "wellmadefrog.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (westpalmweb.com)": { + "domains": [ + "westpalmweb.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (whimsicalcanyon.com)": { + "domains": [ + "whimsicalcanyon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (whimsicalgrove.com)": { + "domains": [ + "whimsicalgrove.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (whineattempt.com)": { + "domains": [ + "whineattempt.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (whirlwealth.com)": { + "domains": [ + "whirlwealth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (whiskyqueue.com)": { + "domains": [ + "whiskyqueue.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (whisperingcascade.com)": { + "domains": [ + "whisperingcascade.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (whisperingcrib.com)": { + "domains": [ + "whisperingcrib.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (whisperingquasar.com)": { + "domains": [ + "whisperingquasar.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (whisperingsummit.com)": { + "domains": [ + "whisperingsummit.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (whispermeeting.com)": { + "domains": [ + "whispermeeting.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wildcommittee.com)": { + "domains": [ + "wildcommittee.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wirecomic.com)": { + "domains": [ + "wirecomic.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wiredforcoffee.com)": { + "domains": [ + "wiredforcoffee.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wirypaste.com)": { + "domains": [ + "wirypaste.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wistfulwaste.com)": { + "domains": [ + "wistfulwaste.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wittypopcorn.com)": { + "domains": [ + "wittypopcorn.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wittyshack.com)": { + "domains": [ + "wittyshack.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (workoperation.com)": { + "domains": [ + "workoperation.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (worldlever.com)": { + "domains": [ + "worldlever.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (worriednumber.com)": { + "domains": [ + "worriednumber.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (worriedwine.com)": { + "domains": [ + "worriedwine.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wretchedfloor.com)": { + "domains": [ + "wretchedfloor.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wrongpotato.com)": { + "domains": [ + "wrongpotato.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wrongwound.com)": { + "domains": [ + "wrongwound.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (wtaccesscontrol.com)": { + "domains": [ + "wtaccesscontrol.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (xovq5nemr.com)": { + "domains": [ + "xovq5nemr.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (yieldingwoman.com)": { + "domains": [ + "yieldingwoman.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (zbwp6ghm.com)": { + "domains": [ + "zbwp6ghm.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (zephyrcatalyst.com)": { + "domains": [ + "zephyrcatalyst.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (zephyrlabyrinth.com)": { + "domains": [ + "zephyrlabyrinth.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (zestycrime.com)": { + "domains": [ + "zestycrime.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (zestyhorizon.com)": { + "domains": [ + "zestyhorizon.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (zestyrover.com)": { + "domains": [ + "zestyrover.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (zestywire.com)": { + "domains": [ + "zestywire.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (zipperxray.com)": { + "domains": [ + "zipperxray.com" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (zlp6s.pw)": { + "domains": [ + "zlp6s.pw" + ], + "prevalence": 0.0111, + "displayName": "Admiral" + }, + "Leven Labs, Inc. DBA Admiral (zonewedgeshaft.com)": { + "domains": [ + "zonewedgeshaft.com" + ], + "prevalence": 0.0111, "displayName": "Admiral" } }, @@ -59623,1575 +69769,1616 @@ "zapposcouture.com": "Amazon Technologies, Inc.", "aamapi.com": "Alliance for Audited Media", "aamsitecertifier.com": "Alliance for Audited Media", - "2znp09oa.com": "Leven Labs, Inc. DBA Admiral", - "4jnzhl0d0.com": "Leven Labs, Inc. DBA Admiral", - "5mcwl.pw": "Leven Labs, Inc. DBA Admiral", - "6ldu6qa.com": "Leven Labs, Inc. DBA Admiral", - "82o9v830.com": "Leven Labs, Inc. DBA Admiral", - "abilityscale.com": "Leven Labs, Inc. DBA Admiral", - "aboardamusement.com": "Leven Labs, Inc. DBA Admiral", - "aboardlevel.com": "Leven Labs, Inc. DBA Admiral", - "abovechat.com": "Leven Labs, Inc. DBA Admiral", - "abruptroad.com": "Leven Labs, Inc. DBA Admiral", - "absentairport.com": "Leven Labs, Inc. DBA Admiral", - "absorbingband.com": "Leven Labs, Inc. DBA Admiral", - "absorbingcorn.com": "Leven Labs, Inc. DBA Admiral", - "absorbingprison.com": "Leven Labs, Inc. DBA Admiral", - "abstractedamount.com": "Leven Labs, Inc. DBA Admiral", - "abstractedauthority.com": "Leven Labs, Inc. DBA Admiral", - "absurdapple.com": "Leven Labs, Inc. DBA Admiral", - "abundantcoin.com": "Leven Labs, Inc. DBA Admiral", - "acceptableauthority.com": "Leven Labs, Inc. DBA Admiral", - "accurateanimal.com": "Leven Labs, Inc. DBA Admiral", - "accuratecoal.com": "Leven Labs, Inc. DBA Admiral", - "achieverknee.com": "Leven Labs, Inc. DBA Admiral", - "acidicstraw.com": "Leven Labs, Inc. DBA Admiral", - "acidpigs.com": "Leven Labs, Inc. DBA Admiral", - "acridangle.com": "Leven Labs, Inc. DBA Admiral", - "acridtwist.com": "Leven Labs, Inc. DBA Admiral", - "actoramusement.com": "Leven Labs, Inc. DBA Admiral", - "actuallysheep.com": "Leven Labs, Inc. DBA Admiral", - "actuallysnake.com": "Leven Labs, Inc. DBA Admiral", - "actuallything.com": "Leven Labs, Inc. DBA Admiral", - "adamantsnail.com": "Leven Labs, Inc. DBA Admiral", - "addictedattention.com": "Leven Labs, Inc. DBA Admiral", - "admiral.pub": "Leven Labs, Inc. DBA Admiral", - "adorableanger.com": "Leven Labs, Inc. DBA Admiral", - "adorableattention.com": "Leven Labs, Inc. DBA Admiral", - "adventurousamount.com": "Leven Labs, Inc. DBA Admiral", - "afraidlanguage.com": "Leven Labs, Inc. DBA Admiral", - "aftermathbrother.com": "Leven Labs, Inc. DBA Admiral", - "agilebreeze.com": "Leven Labs, Inc. DBA Admiral", - "agreeablearch.com": "Leven Labs, Inc. DBA Admiral", - "agreeabletouch.com": "Leven Labs, Inc. DBA Admiral", - "aheadday.com": "Leven Labs, Inc. DBA Admiral", - "aheadgrow.com": "Leven Labs, Inc. DBA Admiral", - "aheadmachine.com": "Leven Labs, Inc. DBA Admiral", - "ak0gsh40.com": "Leven Labs, Inc. DBA Admiral", - "alertarithmetic.com": "Leven Labs, Inc. DBA Admiral", - "aliasanvil.com": "Leven Labs, Inc. DBA Admiral", - "alikeaddition.com": "Leven Labs, Inc. DBA Admiral", - "aliveachiever.com": "Leven Labs, Inc. DBA Admiral", - "alleythecat.com": "Leven Labs, Inc. DBA Admiral", - "alluringbucket.com": "Leven Labs, Inc. DBA Admiral", - "aloofmetal.com": "Leven Labs, Inc. DBA Admiral", - "aloofvest.com": "Leven Labs, Inc. DBA Admiral", - "alpineactor.com": "Leven Labs, Inc. DBA Admiral", - "ambientdusk.com": "Leven Labs, Inc. DBA Admiral", - "ambientlagoon.com": "Leven Labs, Inc. DBA Admiral", - "ambiguousafternoon.com": "Leven Labs, Inc. DBA Admiral", - "ambiguousanger.com": "Leven Labs, Inc. DBA Admiral", - "ambiguousdinosaurs.com": "Leven Labs, Inc. DBA Admiral", - "ambiguousincome.com": "Leven Labs, Inc. DBA Admiral", - "ambrosialsummit.com": "Leven Labs, Inc. DBA Admiral", - "amethystzenith.com": "Leven Labs, Inc. DBA Admiral", - "amuckafternoon.com": "Leven Labs, Inc. DBA Admiral", - "amusedbucket.com": "Leven Labs, Inc. DBA Admiral", - "analogwonder.com": "Leven Labs, Inc. DBA Admiral", - "analyzecorona.com": "Leven Labs, Inc. DBA Admiral", - "ancientact.com": "Leven Labs, Inc. DBA Admiral", - "annoyedairport.com": "Leven Labs, Inc. DBA Admiral", - "annoyingacoustics.com": "Leven Labs, Inc. DBA Admiral", - "annoyingclover.com": "Leven Labs, Inc. DBA Admiral", - "anxiousapples.com": "Leven Labs, Inc. DBA Admiral", - "aquaticowl.com": "Leven Labs, Inc. DBA Admiral", - "ar1nvz5.com": "Leven Labs, Inc. DBA Admiral", - "archswimming.com": "Leven Labs, Inc. DBA Admiral", - "aromamirror.com": "Leven Labs, Inc. DBA Admiral", - "arrivegrowth.com": "Leven Labs, Inc. DBA Admiral", - "artthevoid.com": "Leven Labs, Inc. DBA Admiral", - "aspiringapples.com": "Leven Labs, Inc. DBA Admiral", - "aspiringattempt.com": "Leven Labs, Inc. DBA Admiral", - "aspiringtoy.com": "Leven Labs, Inc. DBA Admiral", - "astonishingfood.com": "Leven Labs, Inc. DBA Admiral", - "astralhustle.com": "Leven Labs, Inc. DBA Admiral", - "astrallullaby.com": "Leven Labs, Inc. DBA Admiral", - "attendchase.com": "Leven Labs, Inc. DBA Admiral", - "attractionbanana.com": "Leven Labs, Inc. DBA Admiral", - "attractivecap.com": "Leven Labs, Inc. DBA Admiral", - "audioarctic.com": "Leven Labs, Inc. DBA Admiral", - "automaticside.com": "Leven Labs, Inc. DBA Admiral", - "automaticturkey.com": "Leven Labs, Inc. DBA Admiral", - "availablerest.com": "Leven Labs, Inc. DBA Admiral", - "avalonalbum.com": "Leven Labs, Inc. DBA Admiral", - "averageactivity.com": "Leven Labs, Inc. DBA Admiral", - "awarealley.com": "Leven Labs, Inc. DBA Admiral", - "awesomeagreement.com": "Leven Labs, Inc. DBA Admiral", - "awzbijw.com": "Leven Labs, Inc. DBA Admiral", - "axiomaticalley.com": "Leven Labs, Inc. DBA Admiral", - "axiomaticanger.com": "Leven Labs, Inc. DBA Admiral", - "azuremystique.com": "Leven Labs, Inc. DBA Admiral", - "backupcat.com": "Leven Labs, Inc. DBA Admiral", - "badgeboat.com": "Leven Labs, Inc. DBA Admiral", - "badgerabbit.com": "Leven Labs, Inc. DBA Admiral", - "badgevolcano.com": "Leven Labs, Inc. DBA Admiral", - "bagbeam.com": "Leven Labs, Inc. DBA Admiral", - "baitbaseball.com": "Leven Labs, Inc. DBA Admiral", - "balloonbelieve.com": "Leven Labs, Inc. DBA Admiral", - "ballsbanana.com": "Leven Labs, Inc. DBA Admiral", - "bananabarrel.com": "Leven Labs, Inc. DBA Admiral", - "bandborder.com": "Leven Labs, Inc. DBA Admiral", - "barbarousbase.com": "Leven Labs, Inc. DBA Admiral", - "basilfish.com": "Leven Labs, Inc. DBA Admiral", - "basketballbelieve.com": "Leven Labs, Inc. DBA Admiral", - "baskettexture.com": "Leven Labs, Inc. DBA Admiral", - "bawdybalance.com": "Leven Labs, Inc. DBA Admiral", - "bawdybeast.com": "Leven Labs, Inc. DBA Admiral", - "beamvolcano.com": "Leven Labs, Inc. DBA Admiral", - "beancontrol.com": "Leven Labs, Inc. DBA Admiral", - "bearmoonlodge.com": "Leven Labs, Inc. DBA Admiral", - "bedsberry.com": "Leven Labs, Inc. DBA Admiral", - "beetleend.com": "Leven Labs, Inc. DBA Admiral", - "beginnerpancake.com": "Leven Labs, Inc. DBA Admiral", - "begintrain.com": "Leven Labs, Inc. DBA Admiral", - "berserkhydrant.com": "Leven Labs, Inc. DBA Admiral", - "bespokesandals.com": "Leven Labs, Inc. DBA Admiral", - "bestboundary.com": "Leven Labs, Inc. DBA Admiral", - "bewilderedbattle.com": "Leven Labs, Inc. DBA Admiral", - "bewilderedblade.com": "Leven Labs, Inc. DBA Admiral", - "bhcumsc.com": "Leven Labs, Inc. DBA Admiral", - "bikepaws.com": "Leven Labs, Inc. DBA Admiral", - "bikesboard.com": "Leven Labs, Inc. DBA Admiral", - "billowybead.com": "Leven Labs, Inc. DBA Admiral", - "billowybelief.com": "Leven Labs, Inc. DBA Admiral", - "binspiredtees.com": "Leven Labs, Inc. DBA Admiral", - "birthdaybelief.com": "Leven Labs, Inc. DBA Admiral", - "blackbrake.com": "Leven Labs, Inc. DBA Admiral", - "bleachbubble.com": "Leven Labs, Inc. DBA Admiral", - "bleachscarecrow.com": "Leven Labs, Inc. DBA Admiral", - "bleedlight.com": "Leven Labs, Inc. DBA Admiral", - "blesspizzas.com": "Leven Labs, Inc. DBA Admiral", - "blissfulcrescendo.com": "Leven Labs, Inc. DBA Admiral", - "blissfullagoon.com": "Leven Labs, Inc. DBA Admiral", - "blueeyedblow.com": "Leven Labs, Inc. DBA Admiral", - "blushingbeast.com": "Leven Labs, Inc. DBA Admiral", - "blushingbread.com": "Leven Labs, Inc. DBA Admiral", - "boatsvest.com": "Leven Labs, Inc. DBA Admiral", - "boilingbeetle.com": "Leven Labs, Inc. DBA Admiral", - "boilingcredit.com": "Leven Labs, Inc. DBA Admiral", - "boostbehavior.com": "Leven Labs, Inc. DBA Admiral", - "boredcrown.com": "Leven Labs, Inc. DBA Admiral", - "bouncyproperty.com": "Leven Labs, Inc. DBA Admiral", - "boundarybusiness.com": "Leven Labs, Inc. DBA Admiral", - "boundlessargument.com": "Leven Labs, Inc. DBA Admiral", - "boundlessbrake.com": "Leven Labs, Inc. DBA Admiral", - "boundlessveil.com": "Leven Labs, Inc. DBA Admiral", - "brainybasin.com": "Leven Labs, Inc. DBA Admiral", - "brainynut.com": "Leven Labs, Inc. DBA Admiral", - "branchborder.com": "Leven Labs, Inc. DBA Admiral", - "brandsfive.com": "Leven Labs, Inc. DBA Admiral", - "brandybison.com": "Leven Labs, Inc. DBA Admiral", - "bravebone.com": "Leven Labs, Inc. DBA Admiral", - "bravecalculator.com": "Leven Labs, Inc. DBA Admiral", - "breadbalance.com": "Leven Labs, Inc. DBA Admiral", - "breakableinsurance.com": "Leven Labs, Inc. DBA Admiral", - "breakfastboat.com": "Leven Labs, Inc. DBA Admiral", - "breezygrove.com": "Leven Labs, Inc. DBA Admiral", - "brianwould.com": "Leven Labs, Inc. DBA Admiral", - "brighttoe.com": "Leven Labs, Inc. DBA Admiral", - "briskstorm.com": "Leven Labs, Inc. DBA Admiral", - "broadborder.com": "Leven Labs, Inc. DBA Admiral", - "broadboundary.com": "Leven Labs, Inc. DBA Admiral", - "broadcastbed.com": "Leven Labs, Inc. DBA Admiral", - "broaddoor.com": "Leven Labs, Inc. DBA Admiral", - "brotherslocket.com": "Leven Labs, Inc. DBA Admiral", - "bruisebaseball.com": "Leven Labs, Inc. DBA Admiral", - "brunchforher.com": "Leven Labs, Inc. DBA Admiral", - "buildingknife.com": "Leven Labs, Inc. DBA Admiral", - "bulbbait.com": "Leven Labs, Inc. DBA Admiral", - "burgersalt.com": "Leven Labs, Inc. DBA Admiral", - "burlywhistle.com": "Leven Labs, Inc. DBA Admiral", - "burnbubble.com": "Leven Labs, Inc. DBA Admiral", - "bushesbag.com": "Leven Labs, Inc. DBA Admiral", - "bustlingbath.com": "Leven Labs, Inc. DBA Admiral", - "bustlingbook.com": "Leven Labs, Inc. DBA Admiral", - "butterbulb.com": "Leven Labs, Inc. DBA Admiral", - "butterburst.com": "Leven Labs, Inc. DBA Admiral", - "buttonladybug.com": "Leven Labs, Inc. DBA Admiral", - "cakesdrum.com": "Leven Labs, Inc. DBA Admiral", - "calculatingcircle.com": "Leven Labs, Inc. DBA Admiral", - "calculatingtoothbrush.com": "Leven Labs, Inc. DBA Admiral", - "calculatorstatement.com": "Leven Labs, Inc. DBA Admiral", - "callousbrake.com": "Leven Labs, Inc. DBA Admiral", - "calmcactus.com": "Leven Labs, Inc. DBA Admiral", - "calypsocapsule.com": "Leven Labs, Inc. DBA Admiral", - "cannonchange.com": "Leven Labs, Inc. DBA Admiral", - "capablecows.com": "Leven Labs, Inc. DBA Admiral", - "capablecup.com": "Leven Labs, Inc. DBA Admiral", - "capriciouscorn.com": "Leven Labs, Inc. DBA Admiral", - "captivatingcanyon.com": "Leven Labs, Inc. DBA Admiral", - "captivatingillusion.com": "Leven Labs, Inc. DBA Admiral", - "captivatingpanorama.com": "Leven Labs, Inc. DBA Admiral", - "captivatingperformance.com": "Leven Labs, Inc. DBA Admiral", - "carefuldolls.com": "Leven Labs, Inc. DBA Admiral", - "caringcast.com": "Leven Labs, Inc. DBA Admiral", - "caringzinc.com": "Leven Labs, Inc. DBA Admiral", - "carloforward.com": "Leven Labs, Inc. DBA Admiral", - "carpentercomparison.com": "Leven Labs, Inc. DBA Admiral", - "carscannon.com": "Leven Labs, Inc. DBA Admiral", - "cartkitten.com": "Leven Labs, Inc. DBA Admiral", - "carvecakes.com": "Leven Labs, Inc. DBA Admiral", - "catalogcake.com": "Leven Labs, Inc. DBA Admiral", - "catschickens.com": "Leven Labs, Inc. DBA Admiral", - "cattlecommittee.com": "Leven Labs, Inc. DBA Admiral", - "causecherry.com": "Leven Labs, Inc. DBA Admiral", - "cautiouscamera.com": "Leven Labs, Inc. DBA Admiral", - "cautiouscherries.com": "Leven Labs, Inc. DBA Admiral", - "cautiouscrate.com": "Leven Labs, Inc. DBA Admiral", - "cautiouscredit.com": "Leven Labs, Inc. DBA Admiral", - "cavecurtain.com": "Leven Labs, Inc. DBA Admiral", - "ceciliavenus.com": "Leven Labs, Inc. DBA Admiral", - "celestialeuphony.com": "Leven Labs, Inc. DBA Admiral", - "celestialquasar.com": "Leven Labs, Inc. DBA Admiral", - "celestialspectra.com": "Leven Labs, Inc. DBA Admiral", - "chaireggnog.com": "Leven Labs, Inc. DBA Admiral", - "chairscrack.com": "Leven Labs, Inc. DBA Admiral", - "chairsdonkey.com": "Leven Labs, Inc. DBA Admiral", - "chalkoil.com": "Leven Labs, Inc. DBA Admiral", - "changeablecats.com": "Leven Labs, Inc. DBA Admiral", - "channelcamp.com": "Leven Labs, Inc. DBA Admiral", - "chargecracker.com": "Leven Labs, Inc. DBA Admiral", - "charmingplate.com": "Leven Labs, Inc. DBA Admiral", - "charscroll.com": "Leven Labs, Inc. DBA Admiral", - "cheerycraze.com": "Leven Labs, Inc. DBA Admiral", - "cherriescare.com": "Leven Labs, Inc. DBA Admiral", - "chessbranch.com": "Leven Labs, Inc. DBA Admiral", - "chesscolor.com": "Leven Labs, Inc. DBA Admiral", - "chesscrowd.com": "Leven Labs, Inc. DBA Admiral", - "chickensstation.com": "Leven Labs, Inc. DBA Admiral", - "childlikecrowd.com": "Leven Labs, Inc. DBA Admiral", - "childlikeexample.com": "Leven Labs, Inc. DBA Admiral", - "childlikeform.com": "Leven Labs, Inc. DBA Admiral", - "chilledliquid.com": "Leven Labs, Inc. DBA Admiral", - "chingovernment.com": "Leven Labs, Inc. DBA Admiral", - "chinsnakes.com": "Leven Labs, Inc. DBA Admiral", - "chipperisle.com": "Leven Labs, Inc. DBA Admiral", - "chivalrouscord.com": "Leven Labs, Inc. DBA Admiral", - "chubbycreature.com": "Leven Labs, Inc. DBA Admiral", - "chunkycactus.com": "Leven Labs, Inc. DBA Admiral", - "cicdserver.com": "Leven Labs, Inc. DBA Admiral", - "cinemabonus.com": "Leven Labs, Inc. DBA Admiral", - "circlelevel.com": "Leven Labs, Inc. DBA Admiral", - "clammychicken.com": "Leven Labs, Inc. DBA Admiral", - "cleanhaircut.com": "Leven Labs, Inc. DBA Admiral", - "cloisteredcord.com": "Leven Labs, Inc. DBA Admiral", - "cloisteredcurve.com": "Leven Labs, Inc. DBA Admiral", - "closedcows.com": "Leven Labs, Inc. DBA Admiral", - "closefriction.com": "Leven Labs, Inc. DBA Admiral", - "cloudhustles.com": "Leven Labs, Inc. DBA Admiral", - "cloudjumbo.com": "Leven Labs, Inc. DBA Admiral", - "clovercabbage.com": "Leven Labs, Inc. DBA Admiral", - "clumsycar.com": "Leven Labs, Inc. DBA Admiral", - "coatfood.com": "Leven Labs, Inc. DBA Admiral", - "cobaltoverture.com": "Leven Labs, Inc. DBA Admiral", - "coffeesidehustle.com": "Leven Labs, Inc. DBA Admiral", - "coldbalance.com": "Leven Labs, Inc. DBA Admiral", - "coldcreatives.com": "Leven Labs, Inc. DBA Admiral", - "colorfulafterthought.com": "Leven Labs, Inc. DBA Admiral", - "colossalclouds.com": "Leven Labs, Inc. DBA Admiral", - "colossalcoat.com": "Leven Labs, Inc. DBA Admiral", - "colossalcry.com": "Leven Labs, Inc. DBA Admiral", - "combativecar.com": "Leven Labs, Inc. DBA Admiral", - "combativedetail.com": "Leven Labs, Inc. DBA Admiral", - "combbit.com": "Leven Labs, Inc. DBA Admiral", - "combcattle.com": "Leven Labs, Inc. DBA Admiral", - "combcompetition.com": "Leven Labs, Inc. DBA Admiral", - "cometquote.com": "Leven Labs, Inc. DBA Admiral", - "comfortablecheese.com": "Leven Labs, Inc. DBA Admiral", - "comfygoodness.com": "Leven Labs, Inc. DBA Admiral", - "companyparcel.com": "Leven Labs, Inc. DBA Admiral", - "comparereaction.com": "Leven Labs, Inc. DBA Admiral", - "compiledoctor.com": "Leven Labs, Inc. DBA Admiral", - "concernedchange.com": "Leven Labs, Inc. DBA Admiral", - "concernedchickens.com": "Leven Labs, Inc. DBA Admiral", - "condemnedcomb.com": "Leven Labs, Inc. DBA Admiral", - "conditionchange.com": "Leven Labs, Inc. DBA Admiral", - "conditioncrush.com": "Leven Labs, Inc. DBA Admiral", - "confesschairs.com": "Leven Labs, Inc. DBA Admiral", - "configchain.com": "Leven Labs, Inc. DBA Admiral", - "confusedcart.com": "Leven Labs, Inc. DBA Admiral", - "connectashelf.com": "Leven Labs, Inc. DBA Admiral", - "consciouschairs.com": "Leven Labs, Inc. DBA Admiral", - "consciouscheese.com": "Leven Labs, Inc. DBA Admiral", - "consciousdirt.com": "Leven Labs, Inc. DBA Admiral", - "consumerzero.com": "Leven Labs, Inc. DBA Admiral", - "controlcola.com": "Leven Labs, Inc. DBA Admiral", - "controlhall.com": "Leven Labs, Inc. DBA Admiral", - "convertbatch.com": "Leven Labs, Inc. DBA Admiral", - "cooingcoal.com": "Leven Labs, Inc. DBA Admiral", - "coordinatedbedroom.com": "Leven Labs, Inc. DBA Admiral", - "coordinatedcoat.com": "Leven Labs, Inc. DBA Admiral", - "copycarpenter.com": "Leven Labs, Inc. DBA Admiral", - "copyrightaccesscontrols.com": "Leven Labs, Inc. DBA Admiral", - "coralreverie.com": "Leven Labs, Inc. DBA Admiral", - "corgibeachday.com": "Leven Labs, Inc. DBA Admiral", - "cosmicsculptor.com": "Leven Labs, Inc. DBA Admiral", - "cosmosjackson.com": "Leven Labs, Inc. DBA Admiral", - "courageousbaby.com": "Leven Labs, Inc. DBA Admiral", - "coverapparatus.com": "Leven Labs, Inc. DBA Admiral", - "coverlayer.com": "Leven Labs, Inc. DBA Admiral", - "cozydusk.com": "Leven Labs, Inc. DBA Admiral", - "cozyhillside.com": "Leven Labs, Inc. DBA Admiral", - "cozytryst.com": "Leven Labs, Inc. DBA Admiral", - "crabbychin.com": "Leven Labs, Inc. DBA Admiral", - "crackedsafe.com": "Leven Labs, Inc. DBA Admiral", - "crafthenry.com": "Leven Labs, Inc. DBA Admiral", - "crashchance.com": "Leven Labs, Inc. DBA Admiral", - "cratecamera.com": "Leven Labs, Inc. DBA Admiral", - "craterbox.com": "Leven Labs, Inc. DBA Admiral", - "creatorcherry.com": "Leven Labs, Inc. DBA Admiral", - "creatorpassenger.com": "Leven Labs, Inc. DBA Admiral", - "creaturecabbage.com": "Leven Labs, Inc. DBA Admiral", - "crimsonmeadow.com": "Leven Labs, Inc. DBA Admiral", - "critictruck.com": "Leven Labs, Inc. DBA Admiral", - "crookedcreature.com": "Leven Labs, Inc. DBA Admiral", - "crowdedmass.com": "Leven Labs, Inc. DBA Admiral", - "cruisetourist.com": "Leven Labs, Inc. DBA Admiral", - "cryptvalue.com": "Leven Labs, Inc. DBA Admiral", - "crystalboulevard.com": "Leven Labs, Inc. DBA Admiral", - "crystalstatus.com": "Leven Labs, Inc. DBA Admiral", - "cubchannel.com": "Leven Labs, Inc. DBA Admiral", - "cubepins.com": "Leven Labs, Inc. DBA Admiral", - "cuddlycake.com": "Leven Labs, Inc. DBA Admiral", - "cuddlylunchroom.com": "Leven Labs, Inc. DBA Admiral", - "culturedcamera.com": "Leven Labs, Inc. DBA Admiral", - "culturedfeather.com": "Leven Labs, Inc. DBA Admiral", - "cumbersomecar.com": "Leven Labs, Inc. DBA Admiral", - "cumbersomecarpenter.com": "Leven Labs, Inc. DBA Admiral", - "cumbersomecloud.com": "Leven Labs, Inc. DBA Admiral", - "curiouschalk.com": "Leven Labs, Inc. DBA Admiral", - "curioussuccess.com": "Leven Labs, Inc. DBA Admiral", - "curlycannon.com": "Leven Labs, Inc. DBA Admiral", - "currentcollar.com": "Leven Labs, Inc. DBA Admiral", - "curtaincows.com": "Leven Labs, Inc. DBA Admiral", - "curvedhoney.com": "Leven Labs, Inc. DBA Admiral", - "curvycord.com": "Leven Labs, Inc. DBA Admiral", - "curvycry.com": "Leven Labs, Inc. DBA Admiral", - "cushiondrum.com": "Leven Labs, Inc. DBA Admiral", - "cushionpig.com": "Leven Labs, Inc. DBA Admiral", - "cutcurrent.com": "Leven Labs, Inc. DBA Admiral", - "cutechin.com": "Leven Labs, Inc. DBA Admiral", - "cyclopsdial.com": "Leven Labs, Inc. DBA Admiral", - "dailydivision.com": "Leven Labs, Inc. DBA Admiral", - "damagedadvice.com": "Leven Labs, Inc. DBA Admiral", - "damageddistance.com": "Leven Labs, Inc. DBA Admiral", - "damdoor.com": "Leven Labs, Inc. DBA Admiral", - "dampdock.com": "Leven Labs, Inc. DBA Admiral", - "dancemistake.com": "Leven Labs, Inc. DBA Admiral", - "dandydune.com": "Leven Labs, Inc. DBA Admiral", - "dandyglow.com": "Leven Labs, Inc. DBA Admiral", - "dapperdiscussion.com": "Leven Labs, Inc. DBA Admiral", - "dapperfloor.com": "Leven Labs, Inc. DBA Admiral", - "datastoried.com": "Leven Labs, Inc. DBA Admiral", - "daughterstone.com": "Leven Labs, Inc. DBA Admiral", - "daymodern.com": "Leven Labs, Inc. DBA Admiral", - "dazzlingbook.com": "Leven Labs, Inc. DBA Admiral", - "deafeningdock.com": "Leven Labs, Inc. DBA Admiral", - "deafeningdowntown.com": "Leven Labs, Inc. DBA Admiral", - "debonairdust.com": "Leven Labs, Inc. DBA Admiral", - "debonairtree.com": "Leven Labs, Inc. DBA Admiral", - "debugentity.com": "Leven Labs, Inc. DBA Admiral", - "decidedrum.com": "Leven Labs, Inc. DBA Admiral", - "decisivebase.com": "Leven Labs, Inc. DBA Admiral", - "decisivedrawer.com": "Leven Labs, Inc. DBA Admiral", - "decisiveducks.com": "Leven Labs, Inc. DBA Admiral", - "decoycreation.com": "Leven Labs, Inc. DBA Admiral", - "deerbeginner.com": "Leven Labs, Inc. DBA Admiral", - "defeatedbadge.com": "Leven Labs, Inc. DBA Admiral", - "defensevest.com": "Leven Labs, Inc. DBA Admiral", - "degreechariot.com": "Leven Labs, Inc. DBA Admiral", - "delegatediscussion.com": "Leven Labs, Inc. DBA Admiral", - "delicatecascade.com": "Leven Labs, Inc. DBA Admiral", - "deliciousducks.com": "Leven Labs, Inc. DBA Admiral", - "deltafault.com": "Leven Labs, Inc. DBA Admiral", - "deluxecrate.com": "Leven Labs, Inc. DBA Admiral", - "dependenttrip.com": "Leven Labs, Inc. DBA Admiral", - "desirebucket.com": "Leven Labs, Inc. DBA Admiral", - "desiredirt.com": "Leven Labs, Inc. DBA Admiral", - "detailedgovernment.com": "Leven Labs, Inc. DBA Admiral", - "detailedkitten.com": "Leven Labs, Inc. DBA Admiral", - "detectdinner.com": "Leven Labs, Inc. DBA Admiral", - "detectdiscovery.com": "Leven Labs, Inc. DBA Admiral", - "detourgame.com": "Leven Labs, Inc. DBA Admiral", - "deviceseal.com": "Leven Labs, Inc. DBA Admiral", - "deviceworkshop.com": "Leven Labs, Inc. DBA Admiral", - "devilishdinner.com": "Leven Labs, Inc. DBA Admiral", - "dewdroplagoon.com": "Leven Labs, Inc. DBA Admiral", - "difficultfog.com": "Leven Labs, Inc. DBA Admiral", - "digestiondrawer.com": "Leven Labs, Inc. DBA Admiral", - "dinnerquartz.com": "Leven Labs, Inc. DBA Admiral", - "diplomahawaii.com": "Leven Labs, Inc. DBA Admiral", - "direfuldesk.com": "Leven Labs, Inc. DBA Admiral", - "disagreeabledrop.com": "Leven Labs, Inc. DBA Admiral", - "discreetfield.com": "Leven Labs, Inc. DBA Admiral", - "discreetquarter.com": "Leven Labs, Inc. DBA Admiral", - "distributionneck.com": "Leven Labs, Inc. DBA Admiral", - "distributionpocket.com": "Leven Labs, Inc. DBA Admiral", - "distributiontomatoes.com": "Leven Labs, Inc. DBA Admiral", - "disturbedquiet.com": "Leven Labs, Inc. DBA Admiral", - "divehope.com": "Leven Labs, Inc. DBA Admiral", - "dk4ywix.com": "Leven Labs, Inc. DBA Admiral", - "dockdigestion.com": "Leven Labs, Inc. DBA Admiral", - "dogsonclouds.com": "Leven Labs, Inc. DBA Admiral", - "dollardelta.com": "Leven Labs, Inc. DBA Admiral", - "doubledefend.com": "Leven Labs, Inc. DBA Admiral", - "doubtdrawer.com": "Leven Labs, Inc. DBA Admiral", - "dq95d35.com": "Leven Labs, Inc. DBA Admiral", - "drainpaste.com": "Leven Labs, Inc. DBA Admiral", - "dramaticdirection.com": "Leven Labs, Inc. DBA Admiral", - "dreamycanyon.com": "Leven Labs, Inc. DBA Admiral", - "driftpizza.com": "Leven Labs, Inc. DBA Admiral", - "drollwharf.com": "Leven Labs, Inc. DBA Admiral", - "drydrum.com": "Leven Labs, Inc. DBA Admiral", - "dustydime.com": "Leven Labs, Inc. DBA Admiral", - "dustyhammer.com": "Leven Labs, Inc. DBA Admiral", - "eagereden.com": "Leven Labs, Inc. DBA Admiral", - "eagerflame.com": "Leven Labs, Inc. DBA Admiral", - "eagerknight.com": "Leven Labs, Inc. DBA Admiral", - "earthyfarm.com": "Leven Labs, Inc. DBA Admiral", - "eatablesquare.com": "Leven Labs, Inc. DBA Admiral", - "echochief.com": "Leven Labs, Inc. DBA Admiral", - "echoinghaven.com": "Leven Labs, Inc. DBA Admiral", - "effervescentcoral.com": "Leven Labs, Inc. DBA Admiral", - "effervescentvista.com": "Leven Labs, Inc. DBA Admiral", - "effulgentnook.com": "Leven Labs, Inc. DBA Admiral", - "effulgenttempest.com": "Leven Labs, Inc. DBA Admiral", - "ejyymghi.com": "Leven Labs, Inc. DBA Admiral", - "elasticchange.com": "Leven Labs, Inc. DBA Admiral", - "elderlybean.com": "Leven Labs, Inc. DBA Admiral", - "elderlytown.com": "Leven Labs, Inc. DBA Admiral", - "elephantqueue.com": "Leven Labs, Inc. DBA Admiral", - "elusivebreeze.com": "Leven Labs, Inc. DBA Admiral", - "elusivecascade.com": "Leven Labs, Inc. DBA Admiral", - "elysiantraverse.com": "Leven Labs, Inc. DBA Admiral", - "embellishedmeadow.com": "Leven Labs, Inc. DBA Admiral", - "embermosaic.com": "Leven Labs, Inc. DBA Admiral", - "emberwhisper.com": "Leven Labs, Inc. DBA Admiral", - "eminentbubble.com": "Leven Labs, Inc. DBA Admiral", - "eminentend.com": "Leven Labs, Inc. DBA Admiral", - "emptyescort.com": "Leven Labs, Inc. DBA Admiral", - "enchantedskyline.com": "Leven Labs, Inc. DBA Admiral", - "enchantingdiscovery.com": "Leven Labs, Inc. DBA Admiral", - "enchantingenchantment.com": "Leven Labs, Inc. DBA Admiral", - "enchantingmystique.com": "Leven Labs, Inc. DBA Admiral", - "enchantingtundra.com": "Leven Labs, Inc. DBA Admiral", - "enchantingvalley.com": "Leven Labs, Inc. DBA Admiral", - "encourageshock.com": "Leven Labs, Inc. DBA Admiral", - "encouragingthread.com": "Leven Labs, Inc. DBA Admiral", - "endlesstrust.com": "Leven Labs, Inc. DBA Admiral", - "endurablebulb.com": "Leven Labs, Inc. DBA Admiral", - "energeticexample.com": "Leven Labs, Inc. DBA Admiral", - "energeticladybug.com": "Leven Labs, Inc. DBA Admiral", - "engineergrape.com": "Leven Labs, Inc. DBA Admiral", - "engineertrick.com": "Leven Labs, Inc. DBA Admiral", - "enigmaticblossom.com": "Leven Labs, Inc. DBA Admiral", - "enigmaticcanyon.com": "Leven Labs, Inc. DBA Admiral", - "enigmaticvoyage.com": "Leven Labs, Inc. DBA Admiral", - "enormousearth.com": "Leven Labs, Inc. DBA Admiral", - "enormousfoot.com": "Leven Labs, Inc. DBA Admiral", - "enterdrama.com": "Leven Labs, Inc. DBA Admiral", - "entertainskin.com": "Leven Labs, Inc. DBA Admiral", - "enthusiastictemper.com": "Leven Labs, Inc. DBA Admiral", - "enviousshape.com": "Leven Labs, Inc. DBA Admiral", - "enviousthread.com": "Leven Labs, Inc. DBA Admiral", - "equablekettle.com": "Leven Labs, Inc. DBA Admiral", - "etherealbamboo.com": "Leven Labs, Inc. DBA Admiral", - "ethereallagoon.com": "Leven Labs, Inc. DBA Admiral", - "etherealpinnacle.com": "Leven Labs, Inc. DBA Admiral", - "etherealquasar.com": "Leven Labs, Inc. DBA Admiral", - "etherealripple.com": "Leven Labs, Inc. DBA Admiral", - "evanescentedge.com": "Leven Labs, Inc. DBA Admiral", - "evasivejar.com": "Leven Labs, Inc. DBA Admiral", - "eventexistence.com": "Leven Labs, Inc. DBA Admiral", - "exampleshake.com": "Leven Labs, Inc. DBA Admiral", - "excitingtub.com": "Leven Labs, Inc. DBA Admiral", - "exclusivebrass.com": "Leven Labs, Inc. DBA Admiral", - "executeknowledge.com": "Leven Labs, Inc. DBA Admiral", - "exhibitsneeze.com": "Leven Labs, Inc. DBA Admiral", - "expansioneggnog.com": "Leven Labs, Inc. DBA Admiral", - "exquisiteartisanship.com": "Leven Labs, Inc. DBA Admiral", - "extractobservation.com": "Leven Labs, Inc. DBA Admiral", - "extralocker.com": "Leven Labs, Inc. DBA Admiral", - "extramonies.com": "Leven Labs, Inc. DBA Admiral", - "exuberantedge.com": "Leven Labs, Inc. DBA Admiral", - "facilitatebreakfast.com": "Leven Labs, Inc. DBA Admiral", - "fadechildren.com": "Leven Labs, Inc. DBA Admiral", - "fadedsnow.com": "Leven Labs, Inc. DBA Admiral", - "fadewaves.com": "Leven Labs, Inc. DBA Admiral", - "fairfeeling.com": "Leven Labs, Inc. DBA Admiral", - "fairiesbranch.com": "Leven Labs, Inc. DBA Admiral", - "fairytaleflame.com": "Leven Labs, Inc. DBA Admiral", - "fallaciousfifth.com": "Leven Labs, Inc. DBA Admiral", - "falseframe.com": "Leven Labs, Inc. DBA Admiral", - "familiarrod.com": "Leven Labs, Inc. DBA Admiral", - "fancyactivity.com": "Leven Labs, Inc. DBA Admiral", - "fancydune.com": "Leven Labs, Inc. DBA Admiral", - "fancygrove.com": "Leven Labs, Inc. DBA Admiral", - "fangfeeling.com": "Leven Labs, Inc. DBA Admiral", - "fantastictone.com": "Leven Labs, Inc. DBA Admiral", - "farethief.com": "Leven Labs, Inc. DBA Admiral", - "farmergoldfish.com": "Leven Labs, Inc. DBA Admiral", - "farshake.com": "Leven Labs, Inc. DBA Admiral", - "farsnails.com": "Leven Labs, Inc. DBA Admiral", - "fastenfather.com": "Leven Labs, Inc. DBA Admiral", - "fasterfineart.com": "Leven Labs, Inc. DBA Admiral", - "fasterjson.com": "Leven Labs, Inc. DBA Admiral", - "fatcoil.com": "Leven Labs, Inc. DBA Admiral", - "faucetfoot.com": "Leven Labs, Inc. DBA Admiral", - "faultycanvas.com": "Leven Labs, Inc. DBA Admiral", - "fearfulfish.com": "Leven Labs, Inc. DBA Admiral", - "fearfulmint.com": "Leven Labs, Inc. DBA Admiral", - "fearlessfaucet.com": "Leven Labs, Inc. DBA Admiral", - "fearlesstramp.com": "Leven Labs, Inc. DBA Admiral", - "featherstage.com": "Leven Labs, Inc. DBA Admiral", - "feeblestamp.com": "Leven Labs, Inc. DBA Admiral", - "feignedfaucet.com": "Leven Labs, Inc. DBA Admiral", - "fernwaycloud.com": "Leven Labs, Inc. DBA Admiral", - "fertilefeeling.com": "Leven Labs, Inc. DBA Admiral", - "fewjuice.com": "Leven Labs, Inc. DBA Admiral", - "fewkittens.com": "Leven Labs, Inc. DBA Admiral", - "finalizeforce.com": "Leven Labs, Inc. DBA Admiral", - "financefear.com": "Leven Labs, Inc. DBA Admiral", - "finestpiece.com": "Leven Labs, Inc. DBA Admiral", - "finitecube.com": "Leven Labs, Inc. DBA Admiral", - "firecatfilms.com": "Leven Labs, Inc. DBA Admiral", - "fireworkcamp.com": "Leven Labs, Inc. DBA Admiral", - "firstendpoint.com": "Leven Labs, Inc. DBA Admiral", - "firstfrogs.com": "Leven Labs, Inc. DBA Admiral", - "firsttexture.com": "Leven Labs, Inc. DBA Admiral", - "fitmessage.com": "Leven Labs, Inc. DBA Admiral", - "fivesidedsquare.com": "Leven Labs, Inc. DBA Admiral", - "fixedfold.com": "Leven Labs, Inc. DBA Admiral", - "flakyfeast.com": "Leven Labs, Inc. DBA Admiral", - "flameuncle.com": "Leven Labs, Inc. DBA Admiral", - "flimsycircle.com": "Leven Labs, Inc. DBA Admiral", - "flimsythought.com": "Leven Labs, Inc. DBA Admiral", - "flippedfunnel.com": "Leven Labs, Inc. DBA Admiral", - "floodprincipal.com": "Leven Labs, Inc. DBA Admiral", - "flourishingcollaboration.com": "Leven Labs, Inc. DBA Admiral", - "flourishingendeavor.com": "Leven Labs, Inc. DBA Admiral", - "flourishinginnovation.com": "Leven Labs, Inc. DBA Admiral", - "flourishingpartnership.com": "Leven Labs, Inc. DBA Admiral", - "flowersornament.com": "Leven Labs, Inc. DBA Admiral", - "flowerstreatment.com": "Leven Labs, Inc. DBA Admiral", - "flowerycreature.com": "Leven Labs, Inc. DBA Admiral", - "floweryfact.com": "Leven Labs, Inc. DBA Admiral", - "floweryflavor.com": "Leven Labs, Inc. DBA Admiral", - "floweryoperation.com": "Leven Labs, Inc. DBA Admiral", - "flutteringfireman.com": "Leven Labs, Inc. DBA Admiral", - "foambench.com": "Leven Labs, Inc. DBA Admiral", - "followborder.com": "Leven Labs, Inc. DBA Admiral", - "forecasttiger.com": "Leven Labs, Inc. DBA Admiral", - "foretellfifth.com": "Leven Labs, Inc. DBA Admiral", - "forevergears.com": "Leven Labs, Inc. DBA Admiral", - "forgetfulflowers.com": "Leven Labs, Inc. DBA Admiral", - "forgetfulsnail.com": "Leven Labs, Inc. DBA Admiral", - "fortunatemark.com": "Leven Labs, Inc. DBA Admiral", - "fractalcoast.com": "Leven Labs, Inc. DBA Admiral", - "frailfruit.com": "Leven Labs, Inc. DBA Admiral", - "framebanana.com": "Leven Labs, Inc. DBA Admiral", - "franticroof.com": "Leven Labs, Inc. DBA Admiral", - "frantictrail.com": "Leven Labs, Inc. DBA Admiral", - "frazzleart.com": "Leven Labs, Inc. DBA Admiral", - "freakyglass.com": "Leven Labs, Inc. DBA Admiral", - "freezingbuilding.com": "Leven Labs, Inc. DBA Admiral", - "frequentflesh.com": "Leven Labs, Inc. DBA Admiral", - "friendlycrayon.com": "Leven Labs, Inc. DBA Admiral", - "friendlyfold.com": "Leven Labs, Inc. DBA Admiral", - "friendwool.com": "Leven Labs, Inc. DBA Admiral", - "frightenedpotato.com": "Leven Labs, Inc. DBA Admiral", - "frogator.com": "Leven Labs, Inc. DBA Admiral", - "frogtray.com": "Leven Labs, Inc. DBA Admiral", - "fronttoad.com": "Leven Labs, Inc. DBA Admiral", - "frugalfiestas.com": "Leven Labs, Inc. DBA Admiral", - "fumblingform.com": "Leven Labs, Inc. DBA Admiral", - "functionalcrown.com": "Leven Labs, Inc. DBA Admiral", - "functionalfeather.com": "Leven Labs, Inc. DBA Admiral", - "funoverbored.com": "Leven Labs, Inc. DBA Admiral", - "funoverflow.com": "Leven Labs, Inc. DBA Admiral", - "furnstudio.com": "Leven Labs, Inc. DBA Admiral", - "furryfork.com": "Leven Labs, Inc. DBA Admiral", - "furryhorses.com": "Leven Labs, Inc. DBA Admiral", - "futuristicapparatus.com": "Leven Labs, Inc. DBA Admiral", - "futuristicfairies.com": "Leven Labs, Inc. DBA Admiral", - "futuristicfifth.com": "Leven Labs, Inc. DBA Admiral", - "futuristicframe.com": "Leven Labs, Inc. DBA Admiral", - "fuzzyaudio.com": "Leven Labs, Inc. DBA Admiral", - "fuzzybasketball.com": "Leven Labs, Inc. DBA Admiral", - "fuzzyerror.com": "Leven Labs, Inc. DBA Admiral", - "fvl1f.pw": "Leven Labs, Inc. DBA Admiral", - "gammamaximum.com": "Leven Labs, Inc. DBA Admiral", - "gardenovens.com": "Leven Labs, Inc. DBA Admiral", - "gaudyairplane.com": "Leven Labs, Inc. DBA Admiral", - "geekactive.com": "Leven Labs, Inc. DBA Admiral", - "generalprose.com": "Leven Labs, Inc. DBA Admiral", - "generateoffice.com": "Leven Labs, Inc. DBA Admiral", - "giantsvessel.com": "Leven Labs, Inc. DBA Admiral", - "giddycoat.com": "Leven Labs, Inc. DBA Admiral", - "giraffepiano.com": "Leven Labs, Inc. DBA Admiral", - "gitcrumbs.com": "Leven Labs, Inc. DBA Admiral", - "givevacation.com": "Leven Labs, Inc. DBA Admiral", - "gladglen.com": "Leven Labs, Inc. DBA Admiral", - "gladysway.com": "Leven Labs, Inc. DBA Admiral", - "glamhawk.com": "Leven Labs, Inc. DBA Admiral", - "gleamingcow.com": "Leven Labs, Inc. DBA Admiral", - "gleaminghaven.com": "Leven Labs, Inc. DBA Admiral", - "glisteningguide.com": "Leven Labs, Inc. DBA Admiral", - "glisteningsign.com": "Leven Labs, Inc. DBA Admiral", - "glitteringbrook.com": "Leven Labs, Inc. DBA Admiral", - "gloriousbeef.com": "Leven Labs, Inc. DBA Admiral", - "glowingmeadow.com": "Leven Labs, Inc. DBA Admiral", - "gluedpixel.com": "Leven Labs, Inc. DBA Admiral", - "goldfishgrowth.com": "Leven Labs, Inc. DBA Admiral", - "gondolagnome.com": "Leven Labs, Inc. DBA Admiral", - "goodbark.com": "Leven Labs, Inc. DBA Admiral", - "gorgeousedge.com": "Leven Labs, Inc. DBA Admiral", - "gracefulmilk.com": "Leven Labs, Inc. DBA Admiral", - "grainmass.com": "Leven Labs, Inc. DBA Admiral", - "grandfatherguitar.com": "Leven Labs, Inc. DBA Admiral", - "gravitygive.com": "Leven Labs, Inc. DBA Admiral", - "gravitykick.com": "Leven Labs, Inc. DBA Admiral", - "grayoranges.com": "Leven Labs, Inc. DBA Admiral", - "grayreceipt.com": "Leven Labs, Inc. DBA Admiral", - "greasysquare.com": "Leven Labs, Inc. DBA Admiral", - "greyinstrument.com": "Leven Labs, Inc. DBA Admiral", - "gripcorn.com": "Leven Labs, Inc. DBA Admiral", - "groovyornament.com": "Leven Labs, Inc. DBA Admiral", - "grouchybrothers.com": "Leven Labs, Inc. DBA Admiral", - "grouchypush.com": "Leven Labs, Inc. DBA Admiral", - "grumpydime.com": "Leven Labs, Inc. DBA Admiral", - "grumpydrawer.com": "Leven Labs, Inc. DBA Admiral", - "guardeddirection.com": "Leven Labs, Inc. DBA Admiral", - "guardedschool.com": "Leven Labs, Inc. DBA Admiral", - "guessdetail.com": "Leven Labs, Inc. DBA Admiral", - "guidecent.com": "Leven Labs, Inc. DBA Admiral", - "guildalpha.com": "Leven Labs, Inc. DBA Admiral", - "guiltlessbasketball.com": "Leven Labs, Inc. DBA Admiral", - "gulliblegrip.com": "Leven Labs, Inc. DBA Admiral", - "gustocooking.com": "Leven Labs, Inc. DBA Admiral", - "gustygrandmother.com": "Leven Labs, Inc. DBA Admiral", - "h78xb.pw": "Leven Labs, Inc. DBA Admiral", - "habitualhumor.com": "Leven Labs, Inc. DBA Admiral", - "halcyoncanyon.com": "Leven Labs, Inc. DBA Admiral", - "halcyonsculpture.com": "Leven Labs, Inc. DBA Admiral", - "hallowedinvention.com": "Leven Labs, Inc. DBA Admiral", - "haltingbadge.com": "Leven Labs, Inc. DBA Admiral", - "haltingdivision.com": "Leven Labs, Inc. DBA Admiral", - "haltinggold.com": "Leven Labs, Inc. DBA Admiral", - "hammerhearing.com": "Leven Labs, Inc. DBA Admiral", - "handleteeth.com": "Leven Labs, Inc. DBA Admiral", - "handnorth.com": "Leven Labs, Inc. DBA Admiral", - "handsomehose.com": "Leven Labs, Inc. DBA Admiral", - "handsomeindustry.com": "Leven Labs, Inc. DBA Admiral", - "handsomelyhealth.com": "Leven Labs, Inc. DBA Admiral", - "handsomelythumb.com": "Leven Labs, Inc. DBA Admiral", - "handsomeyam.com": "Leven Labs, Inc. DBA Admiral", - "handyfield.com": "Leven Labs, Inc. DBA Admiral", - "handyfireman.com": "Leven Labs, Inc. DBA Admiral", - "handyincrease.com": "Leven Labs, Inc. DBA Admiral", - "haplesshydrant.com": "Leven Labs, Inc. DBA Admiral", - "haplessland.com": "Leven Labs, Inc. DBA Admiral", - "happysponge.com": "Leven Labs, Inc. DBA Admiral", - "harborcaption.com": "Leven Labs, Inc. DBA Admiral", - "harborcub.com": "Leven Labs, Inc. DBA Admiral", - "harmonicbamboo.com": "Leven Labs, Inc. DBA Admiral", - "harmonywing.com": "Leven Labs, Inc. DBA Admiral", - "hatefulrequest.com": "Leven Labs, Inc. DBA Admiral", - "headydegree.com": "Leven Labs, Inc. DBA Admiral", - "headyhook.com": "Leven Labs, Inc. DBA Admiral", - "healflowers.com": "Leven Labs, Inc. DBA Admiral", - "hearinglizards.com": "Leven Labs, Inc. DBA Admiral", - "heartbreakingmind.com": "Leven Labs, Inc. DBA Admiral", - "hearthorn.com": "Leven Labs, Inc. DBA Admiral", - "heavydetail.com": "Leven Labs, Inc. DBA Admiral", - "heavyplayground.com": "Leven Labs, Inc. DBA Admiral", - "helpcollar.com": "Leven Labs, Inc. DBA Admiral", - "helpflame.com": "Leven Labs, Inc. DBA Admiral", - "hfc195b.com": "Leven Labs, Inc. DBA Admiral", - "highfalutinbox.com": "Leven Labs, Inc. DBA Admiral", - "highfalutinhoney.com": "Leven Labs, Inc. DBA Admiral", - "hilariouszinc.com": "Leven Labs, Inc. DBA Admiral", - "historicalbeam.com": "Leven Labs, Inc. DBA Admiral", - "hocgeese.com": "Leven Labs, Inc. DBA Admiral", - "hollowafterthought.com": "Leven Labs, Inc. DBA Admiral", - "homelycrown.com": "Leven Labs, Inc. DBA Admiral", - "honeybulb.com": "Leven Labs, Inc. DBA Admiral", - "honeywhipped.com": "Leven Labs, Inc. DBA Admiral", - "honorablehydrant.com": "Leven Labs, Inc. DBA Admiral", - "honorableland.com": "Leven Labs, Inc. DBA Admiral", - "horsenectar.com": "Leven Labs, Inc. DBA Admiral", - "hospitablehall.com": "Leven Labs, Inc. DBA Admiral", - "hospitablehat.com": "Leven Labs, Inc. DBA Admiral", - "howdyinbox.com": "Leven Labs, Inc. DBA Admiral", - "humdrumhobbies.com": "Leven Labs, Inc. DBA Admiral", - "humdrumtouch.com": "Leven Labs, Inc. DBA Admiral", - "hurtgrape.com": "Leven Labs, Inc. DBA Admiral", - "hypnoticwound.com": "Leven Labs, Inc. DBA Admiral", - "hystericalcloth.com": "Leven Labs, Inc. DBA Admiral", - "hystericalfinger.com": "Leven Labs, Inc. DBA Admiral", - "i9w8p.pw": "Leven Labs, Inc. DBA Admiral", - "idolscene.com": "Leven Labs, Inc. DBA Admiral", - "idyllicjazz.com": "Leven Labs, Inc. DBA Admiral", - "illinvention.com": "Leven Labs, Inc. DBA Admiral", - "illustriousoatmeal.com": "Leven Labs, Inc. DBA Admiral", - "immensehoney.com": "Leven Labs, Inc. DBA Admiral", - "imminentshake.com": "Leven Labs, Inc. DBA Admiral", - "importantmeat.com": "Leven Labs, Inc. DBA Admiral", - "importedincrease.com": "Leven Labs, Inc. DBA Admiral", - "importedinsect.com": "Leven Labs, Inc. DBA Admiral", - "importlocate.com": "Leven Labs, Inc. DBA Admiral", - "impossibleexpansion.com": "Leven Labs, Inc. DBA Admiral", - "impossiblemove.com": "Leven Labs, Inc. DBA Admiral", - "impulsejewel.com": "Leven Labs, Inc. DBA Admiral", - "impulselumber.com": "Leven Labs, Inc. DBA Admiral", - "incomehippo.com": "Leven Labs, Inc. DBA Admiral", - "incompetentjoke.com": "Leven Labs, Inc. DBA Admiral", - "inconclusiveaction.com": "Leven Labs, Inc. DBA Admiral", - "infamousstream.com": "Leven Labs, Inc. DBA Admiral", - "innocentlamp.com": "Leven Labs, Inc. DBA Admiral", - "innocentwax.com": "Leven Labs, Inc. DBA Admiral", - "inputicicle.com": "Leven Labs, Inc. DBA Admiral", - "inquisitiveice.com": "Leven Labs, Inc. DBA Admiral", - "inquisitiveinvention.com": "Leven Labs, Inc. DBA Admiral", - "intelligentscissors.com": "Leven Labs, Inc. DBA Admiral", - "intentlens.com": "Leven Labs, Inc. DBA Admiral", - "interestdust.com": "Leven Labs, Inc. DBA Admiral", - "internalcondition.com": "Leven Labs, Inc. DBA Admiral", - "internalsink.com": "Leven Labs, Inc. DBA Admiral", - "iotapool.com": "Leven Labs, Inc. DBA Admiral", - "irritatingfog.com": "Leven Labs, Inc. DBA Admiral", - "itemslice.com": "Leven Labs, Inc. DBA Admiral", - "ivykiosk.com": "Leven Labs, Inc. DBA Admiral", - "j93557g.com": "Leven Labs, Inc. DBA Admiral", - "jadeitite.com": "Leven Labs, Inc. DBA Admiral", - "jaderooster.com": "Leven Labs, Inc. DBA Admiral", - "jailbulb.com": "Leven Labs, Inc. DBA Admiral", - "joblessdrum.com": "Leven Labs, Inc. DBA Admiral", - "jollylens.com": "Leven Labs, Inc. DBA Admiral", - "joyfulkeen.com": "Leven Labs, Inc. DBA Admiral", - "joyoussurprise.com": "Leven Labs, Inc. DBA Admiral", - "jubilantaura.com": "Leven Labs, Inc. DBA Admiral", - "jubilantcanyon.com": "Leven Labs, Inc. DBA Admiral", - "jubilantcascade.com": "Leven Labs, Inc. DBA Admiral", - "jubilantglimmer.com": "Leven Labs, Inc. DBA Admiral", - "jubilanttempest.com": "Leven Labs, Inc. DBA Admiral", - "jubilantwhisper.com": "Leven Labs, Inc. DBA Admiral", - "justicejudo.com": "Leven Labs, Inc. DBA Admiral", - "k54nw.pw": "Leven Labs, Inc. DBA Admiral", - "kaputquill.com": "Leven Labs, Inc. DBA Admiral", - "keenquill.com": "Leven Labs, Inc. DBA Admiral", - "kindhush.com": "Leven Labs, Inc. DBA Admiral", - "kitesquirrel.com": "Leven Labs, Inc. DBA Admiral", - "knitstamp.com": "Leven Labs, Inc. DBA Admiral", - "knottyswing.com": "Leven Labs, Inc. DBA Admiral", - "laboredlight.com": "Leven Labs, Inc. DBA Admiral", - "laboredlocket.com": "Leven Labs, Inc. DBA Admiral", - "lameletters.com": "Leven Labs, Inc. DBA Admiral", - "lamplow.com": "Leven Labs, Inc. DBA Admiral", - "largebrass.com": "Leven Labs, Inc. DBA Admiral", - "lasttaco.com": "Leven Labs, Inc. DBA Admiral", - "laughablelizards.com": "Leven Labs, Inc. DBA Admiral", - "leaplunchroom.com": "Leven Labs, Inc. DBA Admiral", - "leftliquid.com": "Leven Labs, Inc. DBA Admiral", - "lemonpackage.com": "Leven Labs, Inc. DBA Admiral", - "lemonsandjoy.com": "Leven Labs, Inc. DBA Admiral", - "liftedknowledge.com": "Leven Labs, Inc. DBA Admiral", - "lightenafterthought.com": "Leven Labs, Inc. DBA Admiral", - "lighttalon.com": "Leven Labs, Inc. DBA Admiral", - "livelumber.com": "Leven Labs, Inc. DBA Admiral", - "livelylaugh.com": "Leven Labs, Inc. DBA Admiral", - "livelyreward.com": "Leven Labs, Inc. DBA Admiral", - "livingsleet.com": "Leven Labs, Inc. DBA Admiral", - "lizardslaugh.com": "Leven Labs, Inc. DBA Admiral", - "loadsurprise.com": "Leven Labs, Inc. DBA Admiral", - "lonelyflavor.com": "Leven Labs, Inc. DBA Admiral", - "longingtrees.com": "Leven Labs, Inc. DBA Admiral", - "looseloaf.com": "Leven Labs, Inc. DBA Admiral", - "lorenzourban.com": "Leven Labs, Inc. DBA Admiral", - "losslace.com": "Leven Labs, Inc. DBA Admiral", - "loudlunch.com": "Leven Labs, Inc. DBA Admiral", - "lovelydrum.com": "Leven Labs, Inc. DBA Admiral", - "loveseashore.com": "Leven Labs, Inc. DBA Admiral", - "lp3tdqle.com": "Leven Labs, Inc. DBA Admiral", - "ludicrousarch.com": "Leven Labs, Inc. DBA Admiral", - "lumberamount.com": "Leven Labs, Inc. DBA Admiral", - "luminousboulevard.com": "Leven Labs, Inc. DBA Admiral", - "luminouscatalyst.com": "Leven Labs, Inc. DBA Admiral", - "luminoussculptor.com": "Leven Labs, Inc. DBA Admiral", - "lumpygnome.com": "Leven Labs, Inc. DBA Admiral", - "lumpylumber.com": "Leven Labs, Inc. DBA Admiral", - "lunchroomlock.com": "Leven Labs, Inc. DBA Admiral", - "lustroushaven.com": "Leven Labs, Inc. DBA Admiral", - "lyricshook.com": "Leven Labs, Inc. DBA Admiral", - "maddeningpowder.com": "Leven Labs, Inc. DBA Admiral", - "madebyintent.com": "Leven Labs, Inc. DBA Admiral", - "magicaljoin.com": "Leven Labs, Inc. DBA Admiral", - "magnetairport.com": "Leven Labs, Inc. DBA Admiral", - "majesticmountainrange.com": "Leven Labs, Inc. DBA Admiral", - "majesticwaterscape.com": "Leven Labs, Inc. DBA Admiral", - "majesticwilderness.com": "Leven Labs, Inc. DBA Admiral", - "maliciousmusic.com": "Leven Labs, Inc. DBA Admiral", - "managedpush.com": "Leven Labs, Inc. DBA Admiral", - "mantrafox.com": "Leven Labs, Inc. DBA Admiral", - "marblediscussion.com": "Leven Labs, Inc. DBA Admiral", - "markahouse.com": "Leven Labs, Inc. DBA Admiral", - "markedmeasure.com": "Leven Labs, Inc. DBA Admiral", - "marketspiders.com": "Leven Labs, Inc. DBA Admiral", - "marriedbelief.com": "Leven Labs, Inc. DBA Admiral", - "marriedmailbox.com": "Leven Labs, Inc. DBA Admiral", - "marriedvalue.com": "Leven Labs, Inc. DBA Admiral", - "massivemark.com": "Leven Labs, Inc. DBA Admiral", - "materialisticmoon.com": "Leven Labs, Inc. DBA Admiral", - "materialmilk.com": "Leven Labs, Inc. DBA Admiral", - "materialparcel.com": "Leven Labs, Inc. DBA Admiral", - "materialplayground.com": "Leven Labs, Inc. DBA Admiral", - "meadowlullaby.com": "Leven Labs, Inc. DBA Admiral", - "measlymiddle.com": "Leven Labs, Inc. DBA Admiral", - "meatydime.com": "Leven Labs, Inc. DBA Admiral", - "meddleplant.com": "Leven Labs, Inc. DBA Admiral", - "mediatescarf.com": "Leven Labs, Inc. DBA Admiral", - "mediumshort.com": "Leven Labs, Inc. DBA Admiral", - "mellowhush.com": "Leven Labs, Inc. DBA Admiral", - "mellowmailbox.com": "Leven Labs, Inc. DBA Admiral", - "melodiouschorus.com": "Leven Labs, Inc. DBA Admiral", - "melodiouscomposition.com": "Leven Labs, Inc. DBA Admiral", - "meltmilk.com": "Leven Labs, Inc. DBA Admiral", - "memopilot.com": "Leven Labs, Inc. DBA Admiral", - "memorizematch.com": "Leven Labs, Inc. DBA Admiral", - "memorizeneck.com": "Leven Labs, Inc. DBA Admiral", - "mentorsticks.com": "Leven Labs, Inc. DBA Admiral", - "meremark.com": "Leven Labs, Inc. DBA Admiral", - "merequartz.com": "Leven Labs, Inc. DBA Admiral", - "merryopal.com": "Leven Labs, Inc. DBA Admiral", - "merryvault.com": "Leven Labs, Inc. DBA Admiral", - "messagenovice.com": "Leven Labs, Inc. DBA Admiral", - "messyoranges.com": "Leven Labs, Inc. DBA Admiral", - "mightyspiders.com": "Leven Labs, Inc. DBA Admiral", - "mimosamajor.com": "Leven Labs, Inc. DBA Admiral", - "mindfulgem.com": "Leven Labs, Inc. DBA Admiral", - "minorcattle.com": "Leven Labs, Inc. DBA Admiral", - "minusmental.com": "Leven Labs, Inc. DBA Admiral", - "minuteburst.com": "Leven Labs, Inc. DBA Admiral", - "miscreantmoon.com": "Leven Labs, Inc. DBA Admiral", - "mistyhorizon.com": "Leven Labs, Inc. DBA Admiral", - "mittencattle.com": "Leven Labs, Inc. DBA Admiral", - "mixedreading.com": "Leven Labs, Inc. DBA Admiral", - "modularmental.com": "Leven Labs, Inc. DBA Admiral", - "monacobeatles.com": "Leven Labs, Inc. DBA Admiral", - "moorshoes.com": "Leven Labs, Inc. DBA Admiral", - "motionflowers.com": "Leven Labs, Inc. DBA Admiral", - "motionlessbag.com": "Leven Labs, Inc. DBA Admiral", - "motionlessbelief.com": "Leven Labs, Inc. DBA Admiral", - "motionlessmeeting.com": "Leven Labs, Inc. DBA Admiral", - "movemeal.com": "Leven Labs, Inc. DBA Admiral", - "muddledaftermath.com": "Leven Labs, Inc. DBA Admiral", - "muddledmemory.com": "Leven Labs, Inc. DBA Admiral", - "mundanenail.com": "Leven Labs, Inc. DBA Admiral", - "mundanepollution.com": "Leven Labs, Inc. DBA Admiral", - "mushywaste.com": "Leven Labs, Inc. DBA Admiral", - "muteknife.com": "Leven Labs, Inc. DBA Admiral", - "mutemailbox.com": "Leven Labs, Inc. DBA Admiral", - "mysticalagoon.com": "Leven Labs, Inc. DBA Admiral", - "naivestatement.com": "Leven Labs, Inc. DBA Admiral", - "nappyattack.com": "Leven Labs, Inc. DBA Admiral", - "nappyneck.com": "Leven Labs, Inc. DBA Admiral", - "neatshade.com": "Leven Labs, Inc. DBA Admiral", - "nebulacrescent.com": "Leven Labs, Inc. DBA Admiral", - "nebulajubilee.com": "Leven Labs, Inc. DBA Admiral", - "nebulousamusement.com": "Leven Labs, Inc. DBA Admiral", - "nebulousgarden.com": "Leven Labs, Inc. DBA Admiral", - "nebulousquasar.com": "Leven Labs, Inc. DBA Admiral", - "nebulousripple.com": "Leven Labs, Inc. DBA Admiral", - "needlessnorth.com": "Leven Labs, Inc. DBA Admiral", - "needyneedle.com": "Leven Labs, Inc. DBA Admiral", - "neighborlywatch.com": "Leven Labs, Inc. DBA Admiral", - "nervoussummer.com": "Leven Labs, Inc. DBA Admiral", - "niftygraphs.com": "Leven Labs, Inc. DBA Admiral", - "niftyhospital.com": "Leven Labs, Inc. DBA Admiral", - "niftyjelly.com": "Leven Labs, Inc. DBA Admiral", - "nightwound.com": "Leven Labs, Inc. DBA Admiral", - "nimbleplot.com": "Leven Labs, Inc. DBA Admiral", - "nocturnalloom.com": "Leven Labs, Inc. DBA Admiral", - "nocturnalmystique.com": "Leven Labs, Inc. DBA Admiral", - "noiselessplough.com": "Leven Labs, Inc. DBA Admiral", - "nonchalantnerve.com": "Leven Labs, Inc. DBA Admiral", - "nondescriptcrowd.com": "Leven Labs, Inc. DBA Admiral", - "nondescriptnote.com": "Leven Labs, Inc. DBA Admiral", - "nondescriptstocking.com": "Leven Labs, Inc. DBA Admiral", - "nostalgicknot.com": "Leven Labs, Inc. DBA Admiral", - "nostalgicneed.com": "Leven Labs, Inc. DBA Admiral", - "notifyglass.com": "Leven Labs, Inc. DBA Admiral", - "nudgeduck.com": "Leven Labs, Inc. DBA Admiral", - "nullnorth.com": "Leven Labs, Inc. DBA Admiral", - "numberlessring.com": "Leven Labs, Inc. DBA Admiral", - "numerousnest.com": "Leven Labs, Inc. DBA Admiral", - "nutritiousbean.com": "Leven Labs, Inc. DBA Admiral", - "nuttyorganization.com": "Leven Labs, Inc. DBA Admiral", - "oafishchance.com": "Leven Labs, Inc. DBA Admiral", - "oafishobservation.com": "Leven Labs, Inc. DBA Admiral", - "obscenesidewalk.com": "Leven Labs, Inc. DBA Admiral", - "observantice.com": "Leven Labs, Inc. DBA Admiral", - "oldfashionedoffer.com": "Leven Labs, Inc. DBA Admiral", - "omgthink.com": "Leven Labs, Inc. DBA Admiral", - "omniscientfeeling.com": "Leven Labs, Inc. DBA Admiral", - "onlywoofs.com": "Leven Labs, Inc. DBA Admiral", - "opalquill.com": "Leven Labs, Inc. DBA Admiral", - "operationchicken.com": "Leven Labs, Inc. DBA Admiral", - "operationnail.com": "Leven Labs, Inc. DBA Admiral", - "oppositeoperation.com": "Leven Labs, Inc. DBA Admiral", - "optimallimit.com": "Leven Labs, Inc. DBA Admiral", - "opulentsylvan.com": "Leven Labs, Inc. DBA Admiral", - "orientedargument.com": "Leven Labs, Inc. DBA Admiral", - "orionember.com": "Leven Labs, Inc. DBA Admiral", - "ourblogthing.com": "Leven Labs, Inc. DBA Admiral", - "outgoinggiraffe.com": "Leven Labs, Inc. DBA Admiral", - "outsidevibe.com": "Leven Labs, Inc. DBA Admiral", - "outstandingincome.com": "Leven Labs, Inc. DBA Admiral", - "outstandingsnails.com": "Leven Labs, Inc. DBA Admiral", - "overconfidentfood.com": "Leven Labs, Inc. DBA Admiral", - "overkick.com": "Leven Labs, Inc. DBA Admiral", - "overratedchalk.com": "Leven Labs, Inc. DBA Admiral", - "owlsr.us": "Leven Labs, Inc. DBA Admiral", - "oxygenfuse.com": "Leven Labs, Inc. DBA Admiral", - "pailcrime.com": "Leven Labs, Inc. DBA Admiral", - "pailpatch.com": "Leven Labs, Inc. DBA Admiral", - "painstakingpickle.com": "Leven Labs, Inc. DBA Admiral", - "paintpear.com": "Leven Labs, Inc. DBA Admiral", - "paleleaf.com": "Leven Labs, Inc. DBA Admiral", - "pamelarandom.com": "Leven Labs, Inc. DBA Admiral", - "panickycurtain.com": "Leven Labs, Inc. DBA Admiral", - "panickypancake.com": "Leven Labs, Inc. DBA Admiral", - "panoramicplane.com": "Leven Labs, Inc. DBA Admiral", - "parallelbulb.com": "Leven Labs, Inc. DBA Admiral", - "parchedsofa.com": "Leven Labs, Inc. DBA Admiral", - "pardonpopular.com": "Leven Labs, Inc. DBA Admiral", - "parentpicture.com": "Leven Labs, Inc. DBA Admiral", - "parsimoniouspolice.com": "Leven Labs, Inc. DBA Admiral", - "partplanes.com": "Leven Labs, Inc. DBA Admiral", - "passivepolo.com": "Leven Labs, Inc. DBA Admiral", - "pastoralroad.com": "Leven Labs, Inc. DBA Admiral", - "pawsnug.com": "Leven Labs, Inc. DBA Admiral", - "peacefullimit.com": "Leven Labs, Inc. DBA Admiral", - "pedromister.com": "Leven Labs, Inc. DBA Admiral", - "pedropanther.com": "Leven Labs, Inc. DBA Admiral", - "perceivequarter.com": "Leven Labs, Inc. DBA Admiral", - "perkyjade.com": "Leven Labs, Inc. DBA Admiral", - "petiteumbrella.com": "Leven Labs, Inc. DBA Admiral", - "philippinch.com": "Leven Labs, Inc. DBA Admiral", - "photographpan.com": "Leven Labs, Inc. DBA Admiral", - "piespower.com": "Leven Labs, Inc. DBA Admiral", - "piquantgrove.com": "Leven Labs, Inc. DBA Admiral", - "piquantmeadow.com": "Leven Labs, Inc. DBA Admiral", - "piquantpigs.com": "Leven Labs, Inc. DBA Admiral", - "piquantprice.com": "Leven Labs, Inc. DBA Admiral", - "piquantvortex.com": "Leven Labs, Inc. DBA Admiral", - "pixeledhub.com": "Leven Labs, Inc. DBA Admiral", - "pizzasnut.com": "Leven Labs, Inc. DBA Admiral", - "placeframe.com": "Leven Labs, Inc. DBA Admiral", - "placidactivity.com": "Leven Labs, Inc. DBA Admiral", - "placidperson.com": "Leven Labs, Inc. DBA Admiral", - "planebasin.com": "Leven Labs, Inc. DBA Admiral", - "plantdigestion.com": "Leven Labs, Inc. DBA Admiral", - "playfulriver.com": "Leven Labs, Inc. DBA Admiral", - "pleasantpump.com": "Leven Labs, Inc. DBA Admiral", - "plotparent.com": "Leven Labs, Inc. DBA Admiral", - "plotrabbit.com": "Leven Labs, Inc. DBA Admiral", - "pluckypocket.com": "Leven Labs, Inc. DBA Admiral", - "pluckyzone.com": "Leven Labs, Inc. DBA Admiral", - "pocketfaucet.com": "Leven Labs, Inc. DBA Admiral", - "poeticpackage.com": "Leven Labs, Inc. DBA Admiral", - "pointdigestion.com": "Leven Labs, Inc. DBA Admiral", - "pointlesshour.com": "Leven Labs, Inc. DBA Admiral", - "pointlesspocket.com": "Leven Labs, Inc. DBA Admiral", - "pointlessprofit.com": "Leven Labs, Inc. DBA Admiral", - "pointlessrifle.com": "Leven Labs, Inc. DBA Admiral", - "polarismagnet.com": "Leven Labs, Inc. DBA Admiral", - "polishedcrescent.com": "Leven Labs, Inc. DBA Admiral", - "polishedfolly.com": "Leven Labs, Inc. DBA Admiral", - "politeplanes.com": "Leven Labs, Inc. DBA Admiral", - "politicalflip.com": "Leven Labs, Inc. DBA Admiral", - "politicalporter.com": "Leven Labs, Inc. DBA Admiral", - "popplantation.com": "Leven Labs, Inc. DBA Admiral", - "possibleboats.com": "Leven Labs, Inc. DBA Admiral", - "possiblepencil.com": "Leven Labs, Inc. DBA Admiral", - "potatoinvention.com": "Leven Labs, Inc. DBA Admiral", - "powderjourney.com": "Leven Labs, Inc. DBA Admiral", - "powerfulblends.com": "Leven Labs, Inc. DBA Admiral", - "powerfulcopper.com": "Leven Labs, Inc. DBA Admiral", - "preciousplanes.com": "Leven Labs, Inc. DBA Admiral", - "predictplate.com": "Leven Labs, Inc. DBA Admiral", - "prefixpatriot.com": "Leven Labs, Inc. DBA Admiral", - "prepareplanes.com": "Leven Labs, Inc. DBA Admiral", - "presetrabbits.com": "Leven Labs, Inc. DBA Admiral", - "previousplayground.com": "Leven Labs, Inc. DBA Admiral", - "previouspotato.com": "Leven Labs, Inc. DBA Admiral", - "priceypies.com": "Leven Labs, Inc. DBA Admiral", - "pricklydebt.com": "Leven Labs, Inc. DBA Admiral", - "pricklypollution.com": "Leven Labs, Inc. DBA Admiral", - "pristinegale.com": "Leven Labs, Inc. DBA Admiral", - "probablepartner.com": "Leven Labs, Inc. DBA Admiral", - "processplantation.com": "Leven Labs, Inc. DBA Admiral", - "producepickle.com": "Leven Labs, Inc. DBA Admiral", - "productsurfer.com": "Leven Labs, Inc. DBA Admiral", - "profitrumour.com": "Leven Labs, Inc. DBA Admiral", - "profusesupport.com": "Leven Labs, Inc. DBA Admiral", - "promiseair.com": "Leven Labs, Inc. DBA Admiral", - "proofconvert.com": "Leven Labs, Inc. DBA Admiral", - "propertypotato.com": "Leven Labs, Inc. DBA Admiral", - "protestcopy.com": "Leven Labs, Inc. DBA Admiral", - "psychedelicarithmetic.com": "Leven Labs, Inc. DBA Admiral", - "psychedelicchess.com": "Leven Labs, Inc. DBA Admiral", - "publicsofa.com": "Leven Labs, Inc. DBA Admiral", - "puffyloss.com": "Leven Labs, Inc. DBA Admiral", - "puffypaste.com": "Leven Labs, Inc. DBA Admiral", - "puffypull.com": "Leven Labs, Inc. DBA Admiral", - "puffypurpose.com": "Leven Labs, Inc. DBA Admiral", - "pulsatingmeadow.com": "Leven Labs, Inc. DBA Admiral", - "pumpedpancake.com": "Leven Labs, Inc. DBA Admiral", - "pumpedpurpose.com": "Leven Labs, Inc. DBA Admiral", - "punyplant.com": "Leven Labs, Inc. DBA Admiral", - "puppytooth.com": "Leven Labs, Inc. DBA Admiral", - "purposepipe.com": "Leven Labs, Inc. DBA Admiral", - "quacksquirrel.com": "Leven Labs, Inc. DBA Admiral", - "quaintcan.com": "Leven Labs, Inc. DBA Admiral", - "quaintlake.com": "Leven Labs, Inc. DBA Admiral", - "quantumlagoon.com": "Leven Labs, Inc. DBA Admiral", - "quantumshine.com": "Leven Labs, Inc. DBA Admiral", - "queenskart.com": "Leven Labs, Inc. DBA Admiral", - "quietknowledge.com": "Leven Labs, Inc. DBA Admiral", - "quillkick.com": "Leven Labs, Inc. DBA Admiral", - "quirkybliss.com": "Leven Labs, Inc. DBA Admiral", - "quirkysugar.com": "Leven Labs, Inc. DBA Admiral", - "quixoticnebula.com": "Leven Labs, Inc. DBA Admiral", - "quizzicalpartner.com": "Leven Labs, Inc. DBA Admiral", - "quizzicalzephyr.com": "Leven Labs, Inc. DBA Admiral", - "rabbitbreath.com": "Leven Labs, Inc. DBA Admiral", - "rabbitrifle.com": "Leven Labs, Inc. DBA Admiral", - "radiantcanopy.com": "Leven Labs, Inc. DBA Admiral", - "radiantlullaby.com": "Leven Labs, Inc. DBA Admiral", - "radiateprose.com": "Leven Labs, Inc. DBA Admiral", - "railwaygiraffe.com": "Leven Labs, Inc. DBA Admiral", - "railwayreason.com": "Leven Labs, Inc. DBA Admiral", - "raintwig.com": "Leven Labs, Inc. DBA Admiral", - "rainyhand.com": "Leven Labs, Inc. DBA Admiral", - "rainyrule.com": "Leven Labs, Inc. DBA Admiral", - "rambunctiousflock.com": "Leven Labs, Inc. DBA Admiral", - "rangecake.com": "Leven Labs, Inc. DBA Admiral", - "rangeplayground.com": "Leven Labs, Inc. DBA Admiral", - "raresummer.com": "Leven Labs, Inc. DBA Admiral", - "reactjspdf.com": "Leven Labs, Inc. DBA Admiral", - "readingguilt.com": "Leven Labs, Inc. DBA Admiral", - "readymoon.com": "Leven Labs, Inc. DBA Admiral", - "readysnails.com": "Leven Labs, Inc. DBA Admiral", - "realizedoor.com": "Leven Labs, Inc. DBA Admiral", - "realizerecess.com": "Leven Labs, Inc. DBA Admiral", - "rebelclover.com": "Leven Labs, Inc. DBA Admiral", - "rebelhen.com": "Leven Labs, Inc. DBA Admiral", - "rebelsubway.com": "Leven Labs, Inc. DBA Admiral", - "rebelswing.com": "Leven Labs, Inc. DBA Admiral", - "receiptcent.com": "Leven Labs, Inc. DBA Admiral", - "receptiveink.com": "Leven Labs, Inc. DBA Admiral", - "receptivereaction.com": "Leven Labs, Inc. DBA Admiral", - "recessrain.com": "Leven Labs, Inc. DBA Admiral", - "reconditeprison.com": "Leven Labs, Inc. DBA Admiral", - "reconditerake.com": "Leven Labs, Inc. DBA Admiral", - "reconditerespect.com": "Leven Labs, Inc. DBA Admiral", - "reflectivestatement.com": "Leven Labs, Inc. DBA Admiral", - "refundradar.com": "Leven Labs, Inc. DBA Admiral", - "regularplants.com": "Leven Labs, Inc. DBA Admiral", - "regulatesleet.com": "Leven Labs, Inc. DBA Admiral", - "rehabilitatereason.com": "Leven Labs, Inc. DBA Admiral", - "relationrest.com": "Leven Labs, Inc. DBA Admiral", - "reloadphoto.com": "Leven Labs, Inc. DBA Admiral", - "rememberdiscussion.com": "Leven Labs, Inc. DBA Admiral", - "rentinfinity.com": "Leven Labs, Inc. DBA Admiral", - "repeatsweater.com": "Leven Labs, Inc. DBA Admiral", - "replaceroute.com": "Leven Labs, Inc. DBA Admiral", - "resonantbrush.com": "Leven Labs, Inc. DBA Admiral", - "resonantrock.com": "Leven Labs, Inc. DBA Admiral", - "respectrain.com": "Leven Labs, Inc. DBA Admiral", - "resplendentecho.com": "Leven Labs, Inc. DBA Admiral", - "restrainstorm.com": "Leven Labs, Inc. DBA Admiral", - "restructureinvention.com": "Leven Labs, Inc. DBA Admiral", - "retrievemint.com": "Leven Labs, Inc. DBA Admiral", - "rhetoricalactivity.com": "Leven Labs, Inc. DBA Admiral", - "rhetoricalloss.com": "Leven Labs, Inc. DBA Admiral", - "rhetoricalveil.com": "Leven Labs, Inc. DBA Admiral", - "rhymezebra.com": "Leven Labs, Inc. DBA Admiral", - "rhythmrule.com": "Leven Labs, Inc. DBA Admiral", - "richstring.com": "Leven Labs, Inc. DBA Admiral", - "righteouscrayon.com": "Leven Labs, Inc. DBA Admiral", - "rightfulfall.com": "Leven Labs, Inc. DBA Admiral", - "rigidrobin.com": "Leven Labs, Inc. DBA Admiral", - "rigidveil.com": "Leven Labs, Inc. DBA Admiral", - "rigorlab.com": "Leven Labs, Inc. DBA Admiral", - "ringplant.com": "Leven Labs, Inc. DBA Admiral", - "ringsrecord.com": "Leven Labs, Inc. DBA Admiral", - "ritzykey.com": "Leven Labs, Inc. DBA Admiral", - "ritzyrepresentative.com": "Leven Labs, Inc. DBA Admiral", - "ritzyveil.com": "Leven Labs, Inc. DBA Admiral", - "rockpebbles.com": "Leven Labs, Inc. DBA Admiral", - "rollconnection.com": "Leven Labs, Inc. DBA Admiral", - "roofrelation.com": "Leven Labs, Inc. DBA Admiral", - "roseincome.com": "Leven Labs, Inc. DBA Admiral", - "rottenray.com": "Leven Labs, Inc. DBA Admiral", - "ruralrobin.com": "Leven Labs, Inc. DBA Admiral", - "rusticprice.com": "Leven Labs, Inc. DBA Admiral", - "ruthlessdegree.com": "Leven Labs, Inc. DBA Admiral", - "ruthlessmilk.com": "Leven Labs, Inc. DBA Admiral", - "sableloss.com": "Leven Labs, Inc. DBA Admiral", - "sablesmile.com": "Leven Labs, Inc. DBA Admiral", - "sablesong.com": "Leven Labs, Inc. DBA Admiral", - "sadloaf.com": "Leven Labs, Inc. DBA Admiral", - "saffronrefuge.com": "Leven Labs, Inc. DBA Admiral", - "sagargift.com": "Leven Labs, Inc. DBA Admiral", - "saltsacademy.com": "Leven Labs, Inc. DBA Admiral", - "samesticks.com": "Leven Labs, Inc. DBA Admiral", - "samestretch.com": "Leven Labs, Inc. DBA Admiral", - "samplesamba.com": "Leven Labs, Inc. DBA Admiral", - "satisfycork.com": "Leven Labs, Inc. DBA Admiral", - "savoryorange.com": "Leven Labs, Inc. DBA Admiral", - "scarcecard.com": "Leven Labs, Inc. DBA Admiral", - "scarceshock.com": "Leven Labs, Inc. DBA Admiral", - "scarcesign.com": "Leven Labs, Inc. DBA Admiral", - "scarcestructure.com": "Leven Labs, Inc. DBA Admiral", - "scarcesurprise.com": "Leven Labs, Inc. DBA Admiral", - "scaredcomfort.com": "Leven Labs, Inc. DBA Admiral", - "scaredsidewalk.com": "Leven Labs, Inc. DBA Admiral", - "scaredslip.com": "Leven Labs, Inc. DBA Admiral", - "scaredsnake.com": "Leven Labs, Inc. DBA Admiral", - "scaredsnakes.com": "Leven Labs, Inc. DBA Admiral", - "scaredsong.com": "Leven Labs, Inc. DBA Admiral", - "scaredstomach.com": "Leven Labs, Inc. DBA Admiral", - "scaredswing.com": "Leven Labs, Inc. DBA Admiral", - "scarefowl.com": "Leven Labs, Inc. DBA Admiral", - "scarfsmash.com": "Leven Labs, Inc. DBA Admiral", - "scatteredheat.com": "Leven Labs, Inc. DBA Admiral", - "scatteredquiver.com": "Leven Labs, Inc. DBA Admiral", - "scatteredstream.com": "Leven Labs, Inc. DBA Admiral", - "scenicapparel.com": "Leven Labs, Inc. DBA Admiral", - "scientificshirt.com": "Leven Labs, Inc. DBA Admiral", - "scintillatingscissors.com": "Leven Labs, Inc. DBA Admiral", - "scintillatingsilver.com": "Leven Labs, Inc. DBA Admiral", - "scissorsstatement.com": "Leven Labs, Inc. DBA Admiral", - "scrapesleep.com": "Leven Labs, Inc. DBA Admiral", - "scratchsofa.com": "Leven Labs, Inc. DBA Admiral", - "screechingfurniture.com": "Leven Labs, Inc. DBA Admiral", - "screechingstocking.com": "Leven Labs, Inc. DBA Admiral", - "screechingstove.com": "Leven Labs, Inc. DBA Admiral", - "scribbleson.com": "Leven Labs, Inc. DBA Admiral", - "scribblestring.com": "Leven Labs, Inc. DBA Admiral", - "scrollservice.com": "Leven Labs, Inc. DBA Admiral", - "scrubswim.com": "Leven Labs, Inc. DBA Admiral", - "seashoresociety.com": "Leven Labs, Inc. DBA Admiral", - "seatsmoke.com": "Leven Labs, Inc. DBA Admiral", - "secondhandfall.com": "Leven Labs, Inc. DBA Admiral", - "secretivesheep.com": "Leven Labs, Inc. DBA Admiral", - "secretspiders.com": "Leven Labs, Inc. DBA Admiral", - "secretturtle.com": "Leven Labs, Inc. DBA Admiral", - "seedscissors.com": "Leven Labs, Inc. DBA Admiral", - "seemlysuggestion.com": "Leven Labs, Inc. DBA Admiral", - "selectivesummer.com": "Leven Labs, Inc. DBA Admiral", - "selfishsea.com": "Leven Labs, Inc. DBA Admiral", - "selfishsnake.com": "Leven Labs, Inc. DBA Admiral", - "sendingspire.com": "Leven Labs, Inc. DBA Admiral", - "sensorsmile.com": "Leven Labs, Inc. DBA Admiral", - "separatesort.com": "Leven Labs, Inc. DBA Admiral", - "seraphichorizon.com": "Leven Labs, Inc. DBA Admiral", - "seraphicjubilee.com": "Leven Labs, Inc. DBA Admiral", - "serendipityecho.com": "Leven Labs, Inc. DBA Admiral", - "serenecascade.com": "Leven Labs, Inc. DBA Admiral", - "serenepebble.com": "Leven Labs, Inc. DBA Admiral", - "serenesurf.com": "Leven Labs, Inc. DBA Admiral", - "serioussuit.com": "Leven Labs, Inc. DBA Admiral", - "serpentshampoo.com": "Leven Labs, Inc. DBA Admiral", - "settleshoes.com": "Leven Labs, Inc. DBA Admiral", - "shadeship.com": "Leven Labs, Inc. DBA Admiral", - "shaggytank.com": "Leven Labs, Inc. DBA Admiral", - "shakegoldfish.com": "Leven Labs, Inc. DBA Admiral", - "shakyseat.com": "Leven Labs, Inc. DBA Admiral", - "shakysurprise.com": "Leven Labs, Inc. DBA Admiral", - "shakytaste.com": "Leven Labs, Inc. DBA Admiral", - "shallowblade.com": "Leven Labs, Inc. DBA Admiral", - "shamerain.com": "Leven Labs, Inc. DBA Admiral", - "shapecomb.com": "Leven Labs, Inc. DBA Admiral", - "sharkskids.com": "Leven Labs, Inc. DBA Admiral", - "sheargovernor.com": "Leven Labs, Inc. DBA Admiral", - "shesubscriptions.com": "Leven Labs, Inc. DBA Admiral", - "shinypond.com": "Leven Labs, Inc. DBA Admiral", - "shirtsidewalk.com": "Leven Labs, Inc. DBA Admiral", - "shiveringspot.com": "Leven Labs, Inc. DBA Admiral", - "shiverscissors.com": "Leven Labs, Inc. DBA Admiral", - "shockinggrass.com": "Leven Labs, Inc. DBA Admiral", - "shockingship.com": "Leven Labs, Inc. DBA Admiral", - "shredquiz.com": "Leven Labs, Inc. DBA Admiral", - "shrillspoon.com": "Leven Labs, Inc. DBA Admiral", - "shydinosaurs.com": "Leven Labs, Inc. DBA Admiral", - "sicksmash.com": "Leven Labs, Inc. DBA Admiral", - "sierrakermit.com": "Leven Labs, Inc. DBA Admiral", - "signaturepod.com": "Leven Labs, Inc. DBA Admiral", - "siliconslow.com": "Leven Labs, Inc. DBA Admiral", - "sillyscrew.com": "Leven Labs, Inc. DBA Admiral", - "simplesidewalk.com": "Leven Labs, Inc. DBA Admiral", - "simulateswing.com": "Leven Labs, Inc. DBA Admiral", - "sincerebuffalo.com": "Leven Labs, Inc. DBA Admiral", - "sincerepelican.com": "Leven Labs, Inc. DBA Admiral", - "sinceresubstance.com": "Leven Labs, Inc. DBA Admiral", - "singroot.com": "Leven Labs, Inc. DBA Admiral", - "sinkbooks.com": "Leven Labs, Inc. DBA Admiral", - "sixauthority.com": "Leven Labs, Inc. DBA Admiral", - "sixscissors.com": "Leven Labs, Inc. DBA Admiral", - "sizzlingsmoke.com": "Leven Labs, Inc. DBA Admiral", - "skillfuldrop.com": "Leven Labs, Inc. DBA Admiral", - "skisofa.com": "Leven Labs, Inc. DBA Admiral", - "slaysweater.com": "Leven Labs, Inc. DBA Admiral", - "slimyscarf.com": "Leven Labs, Inc. DBA Admiral", - "slinksuggestion.com": "Leven Labs, Inc. DBA Admiral", - "slopesoap.com": "Leven Labs, Inc. DBA Admiral", - "smallershops.com": "Leven Labs, Inc. DBA Admiral", - "smashquartz.com": "Leven Labs, Inc. DBA Admiral", - "smashshoe.com": "Leven Labs, Inc. DBA Admiral", - "smashsurprise.com": "Leven Labs, Inc. DBA Admiral", - "smilewound.com": "Leven Labs, Inc. DBA Admiral", - "smilingcattle.com": "Leven Labs, Inc. DBA Admiral", - "smilingswim.com": "Leven Labs, Inc. DBA Admiral", - "smilingwaves.com": "Leven Labs, Inc. DBA Admiral", - "smoggysnakes.com": "Leven Labs, Inc. DBA Admiral", - "smoggysongs.com": "Leven Labs, Inc. DBA Admiral", - "smoggystation.com": "Leven Labs, Inc. DBA Admiral", - "snacktoken.com": "Leven Labs, Inc. DBA Admiral", - "snakemineral.com": "Leven Labs, Inc. DBA Admiral", - "snakeslang.com": "Leven Labs, Inc. DBA Admiral", - "sneakwind.com": "Leven Labs, Inc. DBA Admiral", - "sneakystew.com": "Leven Labs, Inc. DBA Admiral", - "snoresmile.com": "Leven Labs, Inc. DBA Admiral", - "snowmentor.com": "Leven Labs, Inc. DBA Admiral", - "soggysponge.com": "Leven Labs, Inc. DBA Admiral", - "soggyzoo.com": "Leven Labs, Inc. DBA Admiral", - "solarislabyrinth.com": "Leven Labs, Inc. DBA Admiral", - "somberscarecrow.com": "Leven Labs, Inc. DBA Admiral", - "sombersea.com": "Leven Labs, Inc. DBA Admiral", - "sombersquirrel.com": "Leven Labs, Inc. DBA Admiral", - "sombersticks.com": "Leven Labs, Inc. DBA Admiral", - "sombersurprise.com": "Leven Labs, Inc. DBA Admiral", - "songsterritory.com": "Leven Labs, Inc. DBA Admiral", - "soothingglade.com": "Leven Labs, Inc. DBA Admiral", - "sophisticatedstove.com": "Leven Labs, Inc. DBA Admiral", - "sordidsmile.com": "Leven Labs, Inc. DBA Admiral", - "soresidewalk.com": "Leven Labs, Inc. DBA Admiral", - "soresneeze.com": "Leven Labs, Inc. DBA Admiral", - "sorethunder.com": "Leven Labs, Inc. DBA Admiral", - "soretrain.com": "Leven Labs, Inc. DBA Admiral", - "sortsail.com": "Leven Labs, Inc. DBA Admiral", - "sortsummer.com": "Leven Labs, Inc. DBA Admiral", - "soundstocking.com": "Leven Labs, Inc. DBA Admiral", - "sowlettuce.com": "Leven Labs, Inc. DBA Admiral", - "spadelocket.com": "Leven Labs, Inc. DBA Admiral", - "sparkgoal.com": "Leven Labs, Inc. DBA Admiral", - "sparklingshelf.com": "Leven Labs, Inc. DBA Admiral", - "specialscissors.com": "Leven Labs, Inc. DBA Admiral", - "spectacularstamp.com": "Leven Labs, Inc. DBA Admiral", - "spellmist.com": "Leven Labs, Inc. DBA Admiral", - "spellsalsa.com": "Leven Labs, Inc. DBA Admiral", - "spiffymachine.com": "Leven Labs, Inc. DBA Admiral", - "spirebaboon.com": "Leven Labs, Inc. DBA Admiral", - "spookyexchange.com": "Leven Labs, Inc. DBA Admiral", - "spookyskate.com": "Leven Labs, Inc. DBA Admiral", - "spookysleet.com": "Leven Labs, Inc. DBA Admiral", - "spookystitch.com": "Leven Labs, Inc. DBA Admiral", - "spoonsilk.com": "Leven Labs, Inc. DBA Admiral", - "spotlessstamp.com": "Leven Labs, Inc. DBA Admiral", - "spottednoise.com": "Leven Labs, Inc. DBA Admiral", - "springolive.com": "Leven Labs, Inc. DBA Admiral", - "springsister.com": "Leven Labs, Inc. DBA Admiral", - "springsnails.com": "Leven Labs, Inc. DBA Admiral", - "sproutingbag.com": "Leven Labs, Inc. DBA Admiral", - "sprydelta.com": "Leven Labs, Inc. DBA Admiral", - "sprysummit.com": "Leven Labs, Inc. DBA Admiral", - "spuriousair.com": "Leven Labs, Inc. DBA Admiral", - "spuriousbase.com": "Leven Labs, Inc. DBA Admiral", - "spurioussquirrel.com": "Leven Labs, Inc. DBA Admiral", - "spuriousstranger.com": "Leven Labs, Inc. DBA Admiral", - "spysubstance.com": "Leven Labs, Inc. DBA Admiral", - "squalidscrew.com": "Leven Labs, Inc. DBA Admiral", - "squeakzinc.com": "Leven Labs, Inc. DBA Admiral", - "squealingturn.com": "Leven Labs, Inc. DBA Admiral", - "stakingbasket.com": "Leven Labs, Inc. DBA Admiral", - "stakingshock.com": "Leven Labs, Inc. DBA Admiral", - "stakingsmile.com": "Leven Labs, Inc. DBA Admiral", - "staleshow.com": "Leven Labs, Inc. DBA Admiral", - "stalesummer.com": "Leven Labs, Inc. DBA Admiral", - "starkscale.com": "Leven Labs, Inc. DBA Admiral", - "startingcars.com": "Leven Labs, Inc. DBA Admiral", - "statshunt.com": "Leven Labs, Inc. DBA Admiral", - "statuesqueship.com": "Leven Labs, Inc. DBA Admiral", - "stayaction.com": "Leven Labs, Inc. DBA Admiral", - "steadfastseat.com": "Leven Labs, Inc. DBA Admiral", - "steadfastsound.com": "Leven Labs, Inc. DBA Admiral", - "steadfastsystem.com": "Leven Labs, Inc. DBA Admiral", - "steadycopper.com": "Leven Labs, Inc. DBA Admiral", - "stealsteel.com": "Leven Labs, Inc. DBA Admiral", - "steepscale.com": "Leven Labs, Inc. DBA Admiral", - "steepsister.com": "Leven Labs, Inc. DBA Admiral", - "steepsquirrel.com": "Leven Labs, Inc. DBA Admiral", - "stepcattle.com": "Leven Labs, Inc. DBA Admiral", - "stepplane.com": "Leven Labs, Inc. DBA Admiral", - "stepwisevideo.com": "Leven Labs, Inc. DBA Admiral", - "stereoproxy.com": "Leven Labs, Inc. DBA Admiral", - "stereotypedsugar.com": "Leven Labs, Inc. DBA Admiral", - "stewspiders.com": "Leven Labs, Inc. DBA Admiral", - "stiffgame.com": "Leven Labs, Inc. DBA Admiral", - "stiffstem.com": "Leven Labs, Inc. DBA Admiral", - "stimulatingsneeze.com": "Leven Labs, Inc. DBA Admiral", - "stingsquirrel.com": "Leven Labs, Inc. DBA Admiral", - "stingycrush.com": "Leven Labs, Inc. DBA Admiral", - "stingyshoe.com": "Leven Labs, Inc. DBA Admiral", - "stingyspoon.com": "Leven Labs, Inc. DBA Admiral", - "stockingsleet.com": "Leven Labs, Inc. DBA Admiral", - "stockingsneeze.com": "Leven Labs, Inc. DBA Admiral", - "stomachscience.com": "Leven Labs, Inc. DBA Admiral", - "stonechin.com": "Leven Labs, Inc. DBA Admiral", - "stopstomach.com": "Leven Labs, Inc. DBA Admiral", - "stormyachiever.com": "Leven Labs, Inc. DBA Admiral", - "stormyfold.com": "Leven Labs, Inc. DBA Admiral", - "straightnest.com": "Leven Labs, Inc. DBA Admiral", - "strangeclocks.com": "Leven Labs, Inc. DBA Admiral", - "strangersponge.com": "Leven Labs, Inc. DBA Admiral", - "strangesink.com": "Leven Labs, Inc. DBA Admiral", - "streetsort.com": "Leven Labs, Inc. DBA Admiral", - "stretchsister.com": "Leven Labs, Inc. DBA Admiral", - "stretchsneeze.com": "Leven Labs, Inc. DBA Admiral", - "stretchsquirrel.com": "Leven Labs, Inc. DBA Admiral", - "stripedbat.com": "Leven Labs, Inc. DBA Admiral", - "strivesidewalk.com": "Leven Labs, Inc. DBA Admiral", - "strivesquirrel.com": "Leven Labs, Inc. DBA Admiral", - "strokesystem.com": "Leven Labs, Inc. DBA Admiral", - "stupendoussleet.com": "Leven Labs, Inc. DBA Admiral", - "stupendoussnow.com": "Leven Labs, Inc. DBA Admiral", - "stupidscene.com": "Leven Labs, Inc. DBA Admiral", - "sturdysnail.com": "Leven Labs, Inc. DBA Admiral", - "subletyoke.com": "Leven Labs, Inc. DBA Admiral", - "sublimequartz.com": "Leven Labs, Inc. DBA Admiral", - "subsequentswim.com": "Leven Labs, Inc. DBA Admiral", - "substantialcarpenter.com": "Leven Labs, Inc. DBA Admiral", - "substantialgrade.com": "Leven Labs, Inc. DBA Admiral", - "succeedscene.com": "Leven Labs, Inc. DBA Admiral", - "successfulscent.com": "Leven Labs, Inc. DBA Admiral", - "suddensoda.com": "Leven Labs, Inc. DBA Admiral", - "sugarfriction.com": "Leven Labs, Inc. DBA Admiral", - "suggestionbridge.com": "Leven Labs, Inc. DBA Admiral", - "sulkycook.com": "Leven Labs, Inc. DBA Admiral", - "summerobject.com": "Leven Labs, Inc. DBA Admiral", - "sunshinegates.com": "Leven Labs, Inc. DBA Admiral", - "superchichair.com": "Leven Labs, Inc. DBA Admiral", - "superficialeyes.com": "Leven Labs, Inc. DBA Admiral", - "superficialspring.com": "Leven Labs, Inc. DBA Admiral", - "superficialsquare.com": "Leven Labs, Inc. DBA Admiral", - "superviseshoes.com": "Leven Labs, Inc. DBA Admiral", - "supportwaves.com": "Leven Labs, Inc. DBA Admiral", - "suspectmark.com": "Leven Labs, Inc. DBA Admiral", - "swankysquare.com": "Leven Labs, Inc. DBA Admiral", - "swellstocking.com": "Leven Labs, Inc. DBA Admiral", - "swelteringsleep.com": "Leven Labs, Inc. DBA Admiral", - "swingslip.com": "Leven Labs, Inc. DBA Admiral", - "swordgoose.com": "Leven Labs, Inc. DBA Admiral", - "syllablesight.com": "Leven Labs, Inc. DBA Admiral", - "synonymousrule.com": "Leven Labs, Inc. DBA Admiral", - "synonymoussticks.com": "Leven Labs, Inc. DBA Admiral", - "synthesizescarecrow.com": "Leven Labs, Inc. DBA Admiral", - "tackytrains.com": "Leven Labs, Inc. DBA Admiral", - "tacojournal.com": "Leven Labs, Inc. DBA Admiral", - "talltouch.com": "Leven Labs, Inc. DBA Admiral", - "tangibleteam.com": "Leven Labs, Inc. DBA Admiral", - "tangyamount.com": "Leven Labs, Inc. DBA Admiral", - "tangycover.com": "Leven Labs, Inc. DBA Admiral", - "tastelesstrees.com": "Leven Labs, Inc. DBA Admiral", - "tastelesstrucks.com": "Leven Labs, Inc. DBA Admiral", - "tastesnake.com": "Leven Labs, Inc. DBA Admiral", - "tawdryson.com": "Leven Labs, Inc. DBA Admiral", - "tdzvm.pw": "Leven Labs, Inc. DBA Admiral", - "tearfulglass.com": "Leven Labs, Inc. DBA Admiral", - "techconverter.com": "Leven Labs, Inc. DBA Admiral", - "tediousbear.com": "Leven Labs, Inc. DBA Admiral", - "tediousticket.com": "Leven Labs, Inc. DBA Admiral", - "tedioustooth.com": "Leven Labs, Inc. DBA Admiral", - "teenytinycellar.com": "Leven Labs, Inc. DBA Admiral", - "teenytinyshirt.com": "Leven Labs, Inc. DBA Admiral", - "teenytinytongue.com": "Leven Labs, Inc. DBA Admiral", - "telephoneapparatus.com": "Leven Labs, Inc. DBA Admiral", - "tempertrick.com": "Leven Labs, Inc. DBA Admiral", - "tempttalk.com": "Leven Labs, Inc. DBA Admiral", - "temptteam.com": "Leven Labs, Inc. DBA Admiral", - "tendertest.com": "Leven Labs, Inc. DBA Admiral", - "terriblethumb.com": "Leven Labs, Inc. DBA Admiral", - "terrifictooth.com": "Leven Labs, Inc. DBA Admiral", - "testadmiral.com": "Leven Labs, Inc. DBA Admiral", - "texturetrick.com": "Leven Labs, Inc. DBA Admiral", - "therapeuticcars.com": "Leven Labs, Inc. DBA Admiral", - "thickticket.com": "Leven Labs, Inc. DBA Admiral", - "thicktrucks.com": "Leven Labs, Inc. DBA Admiral", - "thingsafterthought.com": "Leven Labs, Inc. DBA Admiral", - "thingstaste.com": "Leven Labs, Inc. DBA Admiral", - "thinkitten.com": "Leven Labs, Inc. DBA Admiral", - "thinkitwice.com": "Leven Labs, Inc. DBA Admiral", - "thirdrespect.com": "Leven Labs, Inc. DBA Admiral", - "thirstytwig.com": "Leven Labs, Inc. DBA Admiral", - "thomastorch.com": "Leven Labs, Inc. DBA Admiral", - "thoughtlessknot.com": "Leven Labs, Inc. DBA Admiral", - "threetruck.com": "Leven Labs, Inc. DBA Admiral", - "thrivingmarketplace.com": "Leven Labs, Inc. DBA Admiral", - "ticketaunt.com": "Leven Labs, Inc. DBA Admiral", - "ticklesign.com": "Leven Labs, Inc. DBA Admiral", - "tidymitten.com": "Leven Labs, Inc. DBA Admiral", - "tightpowder.com": "Leven Labs, Inc. DBA Admiral", - "tinyswans.com": "Leven Labs, Inc. DBA Admiral", - "tinytendency.com": "Leven Labs, Inc. DBA Admiral", - "tiredthroat.com": "Leven Labs, Inc. DBA Admiral", - "tiresomethunder.com": "Leven Labs, Inc. DBA Admiral", - "toolcapital.com": "Leven Labs, Inc. DBA Admiral", - "toomanyalts.com": "Leven Labs, Inc. DBA Admiral", - "torpidtongue.com": "Leven Labs, Inc. DBA Admiral", - "trackcaddie.com": "Leven Labs, Inc. DBA Admiral", - "tradetooth.com": "Leven Labs, Inc. DBA Admiral", - "trafficviews.com": "Leven Labs, Inc. DBA Admiral", - "tranquilamulet.com": "Leven Labs, Inc. DBA Admiral", - "tranquilarchipelago.com": "Leven Labs, Inc. DBA Admiral", - "tranquilcan.com": "Leven Labs, Inc. DBA Admiral", - "tranquilcanyon.com": "Leven Labs, Inc. DBA Admiral", - "tranquilplume.com": "Leven Labs, Inc. DBA Admiral", - "tranquilside.com": "Leven Labs, Inc. DBA Admiral", - "tranquilveil.com": "Leven Labs, Inc. DBA Admiral", - "tranquilveranda.com": "Leven Labs, Inc. DBA Admiral", - "trappush.com": "Leven Labs, Inc. DBA Admiral", - "treadbun.com": "Leven Labs, Inc. DBA Admiral", - "tremendousearthquake.com": "Leven Labs, Inc. DBA Admiral", - "tremendousplastic.com": "Leven Labs, Inc. DBA Admiral", - "tremendoustime.com": "Leven Labs, Inc. DBA Admiral", - "tritebadge.com": "Leven Labs, Inc. DBA Admiral", - "tritethunder.com": "Leven Labs, Inc. DBA Admiral", - "tritetongue.com": "Leven Labs, Inc. DBA Admiral", - "troubledtail.com": "Leven Labs, Inc. DBA Admiral", - "troubleshade.com": "Leven Labs, Inc. DBA Admiral", - "truckstomatoes.com": "Leven Labs, Inc. DBA Admiral", - "truculentrate.com": "Leven Labs, Inc. DBA Admiral", - "tumbleicicle.com": "Leven Labs, Inc. DBA Admiral", - "tuneupcoffee.com": "Leven Labs, Inc. DBA Admiral", - "twistloss.com": "Leven Labs, Inc. DBA Admiral", - "twistsweater.com": "Leven Labs, Inc. DBA Admiral", - "typicalairplane.com": "Leven Labs, Inc. DBA Admiral", - "typicalteeth.com": "Leven Labs, Inc. DBA Admiral", - "tzwaw.pw": "Leven Labs, Inc. DBA Admiral", - "ubiquitoussea.com": "Leven Labs, Inc. DBA Admiral", - "ubiquitousyard.com": "Leven Labs, Inc. DBA Admiral", - "ultraoranges.com": "Leven Labs, Inc. DBA Admiral", - "ultravalid.com": "Leven Labs, Inc. DBA Admiral", - "unablehope.com": "Leven Labs, Inc. DBA Admiral", - "unaccountablecreator.com": "Leven Labs, Inc. DBA Admiral", - "unaccountablepie.com": "Leven Labs, Inc. DBA Admiral", - "unarmedindustry.com": "Leven Labs, Inc. DBA Admiral", - "unbecominghall.com": "Leven Labs, Inc. DBA Admiral", - "unbecominglamp.com": "Leven Labs, Inc. DBA Admiral", - "uncoveredexpert.com": "Leven Labs, Inc. DBA Admiral", - "understoodocean.com": "Leven Labs, Inc. DBA Admiral", - "unequalbrake.com": "Leven Labs, Inc. DBA Admiral", - "unequaltrail.com": "Leven Labs, Inc. DBA Admiral", - "uninterestedquarter.com": "Leven Labs, Inc. DBA Admiral", - "unknowncontrol.com": "Leven Labs, Inc. DBA Admiral", - "unknowncrate.com": "Leven Labs, Inc. DBA Admiral", - "unknowntray.com": "Leven Labs, Inc. DBA Admiral", - "untidyquestion.com": "Leven Labs, Inc. DBA Admiral", - "untidyrice.com": "Leven Labs, Inc. DBA Admiral", - "unusedstone.com": "Leven Labs, Inc. DBA Admiral", - "unusualtitle.com": "Leven Labs, Inc. DBA Admiral", - "unwieldyhealth.com": "Leven Labs, Inc. DBA Admiral", - "unwieldyimpulse.com": "Leven Labs, Inc. DBA Admiral", - "unwieldyplastic.com": "Leven Labs, Inc. DBA Admiral", - "uppitytime.com": "Leven Labs, Inc. DBA Admiral", - "uselesslumber.com": "Leven Labs, Inc. DBA Admiral", - "validmemo.com": "Leven Labs, Inc. DBA Admiral", - "vanfireworks.com": "Leven Labs, Inc. DBA Admiral", - "vanishmemory.com": "Leven Labs, Inc. DBA Admiral", - "velvetnova.com": "Leven Labs, Inc. DBA Admiral", - "velvetquasar.com": "Leven Labs, Inc. DBA Admiral", - "vengefulgrass.com": "Leven Labs, Inc. DBA Admiral", - "venomousvessel.com": "Leven Labs, Inc. DBA Admiral", - "venusgloria.com": "Leven Labs, Inc. DBA Admiral", - "verdantanswer.com": "Leven Labs, Inc. DBA Admiral", - "verdantlabyrinth.com": "Leven Labs, Inc. DBA Admiral", - "verdantloom.com": "Leven Labs, Inc. DBA Admiral", - "verdantsculpture.com": "Leven Labs, Inc. DBA Admiral", - "verseballs.com": "Leven Labs, Inc. DBA Admiral", - "vibrantcelebration.com": "Leven Labs, Inc. DBA Admiral", - "vibrantgale.com": "Leven Labs, Inc. DBA Admiral", - "vibranthaven.com": "Leven Labs, Inc. DBA Admiral", - "vibrantpact.com": "Leven Labs, Inc. DBA Admiral", - "vibrantsundown.com": "Leven Labs, Inc. DBA Admiral", - "vibranttalisman.com": "Leven Labs, Inc. DBA Admiral", - "vibrantvale.com": "Leven Labs, Inc. DBA Admiral", - "victoriousrequest.com": "Leven Labs, Inc. DBA Admiral", - "virtualvincent.com": "Leven Labs, Inc. DBA Admiral", - "vividcanopy.com": "Leven Labs, Inc. DBA Admiral", - "vividfrost.com": "Leven Labs, Inc. DBA Admiral", - "vividmeadow.com": "Leven Labs, Inc. DBA Admiral", - "vividplume.com": "Leven Labs, Inc. DBA Admiral", - "voicelessvein.com": "Leven Labs, Inc. DBA Admiral", - "voidgoo.com": "Leven Labs, Inc. DBA Admiral", - "volatileprofit.com": "Leven Labs, Inc. DBA Admiral", - "volatilevessel.com": "Leven Labs, Inc. DBA Admiral", - "voraciousgrip.com": "Leven Labs, Inc. DBA Admiral", - "vq1qi.pw": "Leven Labs, Inc. DBA Admiral", - "waitingnumber.com": "Leven Labs, Inc. DBA Admiral", - "wantingwindow.com": "Leven Labs, Inc. DBA Admiral", - "warmafterthought.com": "Leven Labs, Inc. DBA Admiral", - "warmquiver.com": "Leven Labs, Inc. DBA Admiral", - "warnwing.com": "Leven Labs, Inc. DBA Admiral", - "washbanana.com": "Leven Labs, Inc. DBA Admiral", - "wateryvan.com": "Leven Labs, Inc. DBA Admiral", - "waterywave.com": "Leven Labs, Inc. DBA Admiral", - "waterywrist.com": "Leven Labs, Inc. DBA Admiral", - "wearbasin.com": "Leven Labs, Inc. DBA Admiral", - "websitesdude.com": "Leven Labs, Inc. DBA Admiral", - "wellgroomedapparel.com": "Leven Labs, Inc. DBA Admiral", - "wellgroomedhydrant.com": "Leven Labs, Inc. DBA Admiral", - "wellmadefrog.com": "Leven Labs, Inc. DBA Admiral", - "westpalmweb.com": "Leven Labs, Inc. DBA Admiral", - "whimsicalcanyon.com": "Leven Labs, Inc. DBA Admiral", - "whimsicalgrove.com": "Leven Labs, Inc. DBA Admiral", - "whineattempt.com": "Leven Labs, Inc. DBA Admiral", - "whirlwealth.com": "Leven Labs, Inc. DBA Admiral", - "whiskyqueue.com": "Leven Labs, Inc. DBA Admiral", - "whisperingcascade.com": "Leven Labs, Inc. DBA Admiral", - "whisperingcrib.com": "Leven Labs, Inc. DBA Admiral", - "whisperingquasar.com": "Leven Labs, Inc. DBA Admiral", - "whisperingsummit.com": "Leven Labs, Inc. DBA Admiral", - "whispermeeting.com": "Leven Labs, Inc. DBA Admiral", - "wildcommittee.com": "Leven Labs, Inc. DBA Admiral", - "wirecomic.com": "Leven Labs, Inc. DBA Admiral", - "wiredforcoffee.com": "Leven Labs, Inc. DBA Admiral", - "wirypaste.com": "Leven Labs, Inc. DBA Admiral", - "wistfulwaste.com": "Leven Labs, Inc. DBA Admiral", - "wittypopcorn.com": "Leven Labs, Inc. DBA Admiral", - "wittyshack.com": "Leven Labs, Inc. DBA Admiral", - "workoperation.com": "Leven Labs, Inc. DBA Admiral", - "worldlever.com": "Leven Labs, Inc. DBA Admiral", - "worriednumber.com": "Leven Labs, Inc. DBA Admiral", - "worriedwine.com": "Leven Labs, Inc. DBA Admiral", - "wretchedfloor.com": "Leven Labs, Inc. DBA Admiral", - "wrongpotato.com": "Leven Labs, Inc. DBA Admiral", - "wrongwound.com": "Leven Labs, Inc. DBA Admiral", - "wtaccesscontrol.com": "Leven Labs, Inc. DBA Admiral", - "xovq5nemr.com": "Leven Labs, Inc. DBA Admiral", - "yieldingwoman.com": "Leven Labs, Inc. DBA Admiral", - "zbwp6ghm.com": "Leven Labs, Inc. DBA Admiral", - "zephyrcatalyst.com": "Leven Labs, Inc. DBA Admiral", - "zephyrlabyrinth.com": "Leven Labs, Inc. DBA Admiral", - "zestycrime.com": "Leven Labs, Inc. DBA Admiral", - "zestyhorizon.com": "Leven Labs, Inc. DBA Admiral", - "zestyrover.com": "Leven Labs, Inc. DBA Admiral", - "zestywire.com": "Leven Labs, Inc. DBA Admiral", - "zipperxray.com": "Leven Labs, Inc. DBA Admiral", - "zlp6s.pw": "Leven Labs, Inc. DBA Admiral", - "zonewedgeshaft.com": "Leven Labs, Inc. DBA Admiral", + "2znp09oa.com": "Leven Labs, Inc. DBA Admiral (2znp09oa.com)", + "4jnzhl0d0.com": "Leven Labs, Inc. DBA Admiral (4jnzhl0d0.com)", + "5mcwl.pw": "Leven Labs, Inc. DBA Admiral (5mcwl.pw)", + "6ldu6qa.com": "Leven Labs, Inc. DBA Admiral (6ldu6qa.com)", + "82o9v830.com": "Leven Labs, Inc. DBA Admiral (82o9v830.com)", + "abilityscale.com": "Leven Labs, Inc. DBA Admiral (abilityscale.com)", + "abjectattempt.com": "Leven Labs, Inc. DBA Admiral (abjectattempt.com)", + "aboardamusement.com": "Leven Labs, Inc. DBA Admiral (aboardamusement.com)", + "aboardlevel.com": "Leven Labs, Inc. DBA Admiral (aboardlevel.com)", + "abovechat.com": "Leven Labs, Inc. DBA Admiral (abovechat.com)", + "abruptroad.com": "Leven Labs, Inc. DBA Admiral (abruptroad.com)", + "absentairport.com": "Leven Labs, Inc. DBA Admiral (absentairport.com)", + "absorbingband.com": "Leven Labs, Inc. DBA Admiral (absorbingband.com)", + "absorbingcorn.com": "Leven Labs, Inc. DBA Admiral (absorbingcorn.com)", + "absorbingprison.com": "Leven Labs, Inc. DBA Admiral (absorbingprison.com)", + "abstractedamount.com": "Leven Labs, Inc. DBA Admiral (abstractedamount.com)", + "abstractedauthority.com": "Leven Labs, Inc. DBA Admiral (abstractedauthority.com)", + "absurdapple.com": "Leven Labs, Inc. DBA Admiral (absurdapple.com)", + "abundantcoin.com": "Leven Labs, Inc. DBA Admiral (abundantcoin.com)", + "acceptableauthority.com": "Leven Labs, Inc. DBA Admiral (acceptableauthority.com)", + "accurateanimal.com": "Leven Labs, Inc. DBA Admiral (accurateanimal.com)", + "accuratecoal.com": "Leven Labs, Inc. DBA Admiral (accuratecoal.com)", + "achieverknee.com": "Leven Labs, Inc. DBA Admiral (achieverknee.com)", + "acidicstraw.com": "Leven Labs, Inc. DBA Admiral (acidicstraw.com)", + "acidpigs.com": "Leven Labs, Inc. DBA Admiral (acidpigs.com)", + "acridangle.com": "Leven Labs, Inc. DBA Admiral (acridangle.com)", + "acridtwist.com": "Leven Labs, Inc. DBA Admiral (acridtwist.com)", + "actoramusement.com": "Leven Labs, Inc. DBA Admiral (actoramusement.com)", + "actuallysheep.com": "Leven Labs, Inc. DBA Admiral (actuallysheep.com)", + "actuallysnake.com": "Leven Labs, Inc. DBA Admiral (actuallysnake.com)", + "actuallything.com": "Leven Labs, Inc. DBA Admiral (actuallything.com)", + "adamantsnail.com": "Leven Labs, Inc. DBA Admiral (adamantsnail.com)", + "addictedattention.com": "Leven Labs, Inc. DBA Admiral (addictedattention.com)", + "admiral.pub": "Leven Labs, Inc. DBA Admiral (admiral.pub)", + "adorableanger.com": "Leven Labs, Inc. DBA Admiral (adorableanger.com)", + "adorableattention.com": "Leven Labs, Inc. DBA Admiral (adorableattention.com)", + "adventurousamount.com": "Leven Labs, Inc. DBA Admiral (adventurousamount.com)", + "afraidlanguage.com": "Leven Labs, Inc. DBA Admiral (afraidlanguage.com)", + "aftermathbrother.com": "Leven Labs, Inc. DBA Admiral (aftermathbrother.com)", + "agilebreeze.com": "Leven Labs, Inc. DBA Admiral (agilebreeze.com)", + "agreeablearch.com": "Leven Labs, Inc. DBA Admiral (agreeablearch.com)", + "agreeabletouch.com": "Leven Labs, Inc. DBA Admiral (agreeabletouch.com)", + "aheadday.com": "Leven Labs, Inc. DBA Admiral (aheadday.com)", + "aheadgrow.com": "Leven Labs, Inc. DBA Admiral (aheadgrow.com)", + "aheadmachine.com": "Leven Labs, Inc. DBA Admiral (aheadmachine.com)", + "ak0gsh40.com": "Leven Labs, Inc. DBA Admiral (ak0gsh40.com)", + "alertarithmetic.com": "Leven Labs, Inc. DBA Admiral (alertarithmetic.com)", + "aliasanvil.com": "Leven Labs, Inc. DBA Admiral (aliasanvil.com)", + "alikeaddition.com": "Leven Labs, Inc. DBA Admiral (alikeaddition.com)", + "aliveachiever.com": "Leven Labs, Inc. DBA Admiral (aliveachiever.com)", + "alleythecat.com": "Leven Labs, Inc. DBA Admiral (alleythecat.com)", + "alluringbucket.com": "Leven Labs, Inc. DBA Admiral (alluringbucket.com)", + "aloofmetal.com": "Leven Labs, Inc. DBA Admiral (aloofmetal.com)", + "aloofvest.com": "Leven Labs, Inc. DBA Admiral (aloofvest.com)", + "alpineactor.com": "Leven Labs, Inc. DBA Admiral (alpineactor.com)", + "ambientdusk.com": "Leven Labs, Inc. DBA Admiral (ambientdusk.com)", + "ambientlagoon.com": "Leven Labs, Inc. DBA Admiral (ambientlagoon.com)", + "ambiguousafternoon.com": "Leven Labs, Inc. DBA Admiral (ambiguousafternoon.com)", + "ambiguousanger.com": "Leven Labs, Inc. DBA Admiral (ambiguousanger.com)", + "ambiguousdinosaurs.com": "Leven Labs, Inc. DBA Admiral (ambiguousdinosaurs.com)", + "ambiguousincome.com": "Leven Labs, Inc. DBA Admiral (ambiguousincome.com)", + "ambrosialsummit.com": "Leven Labs, Inc. DBA Admiral (ambrosialsummit.com)", + "amethystzenith.com": "Leven Labs, Inc. DBA Admiral (amethystzenith.com)", + "amuckafternoon.com": "Leven Labs, Inc. DBA Admiral (amuckafternoon.com)", + "amusedbucket.com": "Leven Labs, Inc. DBA Admiral (amusedbucket.com)", + "analogwonder.com": "Leven Labs, Inc. DBA Admiral (analogwonder.com)", + "analyzecorona.com": "Leven Labs, Inc. DBA Admiral (analyzecorona.com)", + "ancientact.com": "Leven Labs, Inc. DBA Admiral (ancientact.com)", + "annoyedairport.com": "Leven Labs, Inc. DBA Admiral (annoyedairport.com)", + "annoyingacoustics.com": "Leven Labs, Inc. DBA Admiral (annoyingacoustics.com)", + "annoyingclover.com": "Leven Labs, Inc. DBA Admiral (annoyingclover.com)", + "anxiousapples.com": "Leven Labs, Inc. DBA Admiral (anxiousapples.com)", + "aquaticowl.com": "Leven Labs, Inc. DBA Admiral (aquaticowl.com)", + "ar1nvz5.com": "Leven Labs, Inc. DBA Admiral (ar1nvz5.com)", + "archswimming.com": "Leven Labs, Inc. DBA Admiral (archswimming.com)", + "aromamirror.com": "Leven Labs, Inc. DBA Admiral (aromamirror.com)", + "arrivegrowth.com": "Leven Labs, Inc. DBA Admiral (arrivegrowth.com)", + "artthevoid.com": "Leven Labs, Inc. DBA Admiral (artthevoid.com)", + "aspiringapples.com": "Leven Labs, Inc. DBA Admiral (aspiringapples.com)", + "aspiringattempt.com": "Leven Labs, Inc. DBA Admiral (aspiringattempt.com)", + "aspiringtoy.com": "Leven Labs, Inc. DBA Admiral (aspiringtoy.com)", + "astonishingfood.com": "Leven Labs, Inc. DBA Admiral (astonishingfood.com)", + "astralhustle.com": "Leven Labs, Inc. DBA Admiral (astralhustle.com)", + "astrallullaby.com": "Leven Labs, Inc. DBA Admiral (astrallullaby.com)", + "attendchase.com": "Leven Labs, Inc. DBA Admiral (attendchase.com)", + "attractionbanana.com": "Leven Labs, Inc. DBA Admiral (attractionbanana.com)", + "attractivecap.com": "Leven Labs, Inc. DBA Admiral (attractivecap.com)", + "audioarctic.com": "Leven Labs, Inc. DBA Admiral (audioarctic.com)", + "automaticside.com": "Leven Labs, Inc. DBA Admiral (automaticside.com)", + "automaticturkey.com": "Leven Labs, Inc. DBA Admiral (automaticturkey.com)", + "availablerest.com": "Leven Labs, Inc. DBA Admiral (availablerest.com)", + "avalonalbum.com": "Leven Labs, Inc. DBA Admiral (avalonalbum.com)", + "averageactivity.com": "Leven Labs, Inc. DBA Admiral (averageactivity.com)", + "awarealley.com": "Leven Labs, Inc. DBA Admiral (awarealley.com)", + "awesomeagreement.com": "Leven Labs, Inc. DBA Admiral (awesomeagreement.com)", + "awzbijw.com": "Leven Labs, Inc. DBA Admiral (awzbijw.com)", + "axiomaticalley.com": "Leven Labs, Inc. DBA Admiral (axiomaticalley.com)", + "axiomaticanger.com": "Leven Labs, Inc. DBA Admiral (axiomaticanger.com)", + "azuremystique.com": "Leven Labs, Inc. DBA Admiral (azuremystique.com)", + "backupcat.com": "Leven Labs, Inc. DBA Admiral (backupcat.com)", + "badgeboat.com": "Leven Labs, Inc. DBA Admiral (badgeboat.com)", + "badgerabbit.com": "Leven Labs, Inc. DBA Admiral (badgerabbit.com)", + "badgevolcano.com": "Leven Labs, Inc. DBA Admiral (badgevolcano.com)", + "bagbeam.com": "Leven Labs, Inc. DBA Admiral (bagbeam.com)", + "baitbaseball.com": "Leven Labs, Inc. DBA Admiral (baitbaseball.com)", + "balloonbelieve.com": "Leven Labs, Inc. DBA Admiral (balloonbelieve.com)", + "ballsbanana.com": "Leven Labs, Inc. DBA Admiral (ballsbanana.com)", + "bananabarrel.com": "Leven Labs, Inc. DBA Admiral (bananabarrel.com)", + "bandborder.com": "Leven Labs, Inc. DBA Admiral (bandborder.com)", + "barbarousbase.com": "Leven Labs, Inc. DBA Admiral (barbarousbase.com)", + "basilfish.com": "Leven Labs, Inc. DBA Admiral (basilfish.com)", + "basketballbelieve.com": "Leven Labs, Inc. DBA Admiral (basketballbelieve.com)", + "baskettexture.com": "Leven Labs, Inc. DBA Admiral (baskettexture.com)", + "bawdybalance.com": "Leven Labs, Inc. DBA Admiral (bawdybalance.com)", + "bawdybeast.com": "Leven Labs, Inc. DBA Admiral (bawdybeast.com)", + "beamvolcano.com": "Leven Labs, Inc. DBA Admiral (beamvolcano.com)", + "beancontrol.com": "Leven Labs, Inc. DBA Admiral (beancontrol.com)", + "bearmoonlodge.com": "Leven Labs, Inc. DBA Admiral (bearmoonlodge.com)", + "bedsberry.com": "Leven Labs, Inc. DBA Admiral (bedsberry.com)", + "beetleend.com": "Leven Labs, Inc. DBA Admiral (beetleend.com)", + "beginnerpancake.com": "Leven Labs, Inc. DBA Admiral (beginnerpancake.com)", + "begintrain.com": "Leven Labs, Inc. DBA Admiral (begintrain.com)", + "berserkhydrant.com": "Leven Labs, Inc. DBA Admiral (berserkhydrant.com)", + "bespokesandals.com": "Leven Labs, Inc. DBA Admiral (bespokesandals.com)", + "bestboundary.com": "Leven Labs, Inc. DBA Admiral (bestboundary.com)", + "bewilderedbattle.com": "Leven Labs, Inc. DBA Admiral (bewilderedbattle.com)", + "bewilderedblade.com": "Leven Labs, Inc. DBA Admiral (bewilderedblade.com)", + "bhcumsc.com": "Leven Labs, Inc. DBA Admiral (bhcumsc.com)", + "bikepaws.com": "Leven Labs, Inc. DBA Admiral (bikepaws.com)", + "bikesboard.com": "Leven Labs, Inc. DBA Admiral (bikesboard.com)", + "billowybead.com": "Leven Labs, Inc. DBA Admiral (billowybead.com)", + "billowybelief.com": "Leven Labs, Inc. DBA Admiral (billowybelief.com)", + "binspiredtees.com": "Leven Labs, Inc. DBA Admiral (binspiredtees.com)", + "birthdaybelief.com": "Leven Labs, Inc. DBA Admiral (birthdaybelief.com)", + "blackbrake.com": "Leven Labs, Inc. DBA Admiral (blackbrake.com)", + "bleachbubble.com": "Leven Labs, Inc. DBA Admiral (bleachbubble.com)", + "bleachscarecrow.com": "Leven Labs, Inc. DBA Admiral (bleachscarecrow.com)", + "bleedlight.com": "Leven Labs, Inc. DBA Admiral (bleedlight.com)", + "blesspizzas.com": "Leven Labs, Inc. DBA Admiral (blesspizzas.com)", + "blissfulcrescendo.com": "Leven Labs, Inc. DBA Admiral (blissfulcrescendo.com)", + "blissfullagoon.com": "Leven Labs, Inc. DBA Admiral (blissfullagoon.com)", + "blueeyedblow.com": "Leven Labs, Inc. DBA Admiral (blueeyedblow.com)", + "blushingbeast.com": "Leven Labs, Inc. DBA Admiral (blushingbeast.com)", + "blushingbread.com": "Leven Labs, Inc. DBA Admiral (blushingbread.com)", + "boatsvest.com": "Leven Labs, Inc. DBA Admiral (boatsvest.com)", + "boilingbeetle.com": "Leven Labs, Inc. DBA Admiral (boilingbeetle.com)", + "boilingcredit.com": "Leven Labs, Inc. DBA Admiral (boilingcredit.com)", + "boostbehavior.com": "Leven Labs, Inc. DBA Admiral (boostbehavior.com)", + "boredcrown.com": "Leven Labs, Inc. DBA Admiral (boredcrown.com)", + "bouncyproperty.com": "Leven Labs, Inc. DBA Admiral (bouncyproperty.com)", + "boundarybusiness.com": "Leven Labs, Inc. DBA Admiral (boundarybusiness.com)", + "boundlessargument.com": "Leven Labs, Inc. DBA Admiral (boundlessargument.com)", + "boundlessbrake.com": "Leven Labs, Inc. DBA Admiral (boundlessbrake.com)", + "boundlessveil.com": "Leven Labs, Inc. DBA Admiral (boundlessveil.com)", + "brainybasin.com": "Leven Labs, Inc. DBA Admiral (brainybasin.com)", + "brainynut.com": "Leven Labs, Inc. DBA Admiral (brainynut.com)", + "branchborder.com": "Leven Labs, Inc. DBA Admiral (branchborder.com)", + "brandsfive.com": "Leven Labs, Inc. DBA Admiral (brandsfive.com)", + "brandybison.com": "Leven Labs, Inc. DBA Admiral (brandybison.com)", + "bravebone.com": "Leven Labs, Inc. DBA Admiral (bravebone.com)", + "bravecalculator.com": "Leven Labs, Inc. DBA Admiral (bravecalculator.com)", + "breadbalance.com": "Leven Labs, Inc. DBA Admiral (breadbalance.com)", + "breakableinsurance.com": "Leven Labs, Inc. DBA Admiral (breakableinsurance.com)", + "breakfastboat.com": "Leven Labs, Inc. DBA Admiral (breakfastboat.com)", + "breezygrove.com": "Leven Labs, Inc. DBA Admiral (breezygrove.com)", + "brianwould.com": "Leven Labs, Inc. DBA Admiral (brianwould.com)", + "brighttoe.com": "Leven Labs, Inc. DBA Admiral (brighttoe.com)", + "briskstorm.com": "Leven Labs, Inc. DBA Admiral (briskstorm.com)", + "broadborder.com": "Leven Labs, Inc. DBA Admiral (broadborder.com)", + "broadboundary.com": "Leven Labs, Inc. DBA Admiral (broadboundary.com)", + "broadcastbed.com": "Leven Labs, Inc. DBA Admiral (broadcastbed.com)", + "broaddoor.com": "Leven Labs, Inc. DBA Admiral (broaddoor.com)", + "brotherslocket.com": "Leven Labs, Inc. DBA Admiral (brotherslocket.com)", + "bruisebaseball.com": "Leven Labs, Inc. DBA Admiral (bruisebaseball.com)", + "brunchforher.com": "Leven Labs, Inc. DBA Admiral (brunchforher.com)", + "buildingknife.com": "Leven Labs, Inc. DBA Admiral (buildingknife.com)", + "bulbbait.com": "Leven Labs, Inc. DBA Admiral (bulbbait.com)", + "burgersalt.com": "Leven Labs, Inc. DBA Admiral (burgersalt.com)", + "burlywhistle.com": "Leven Labs, Inc. DBA Admiral (burlywhistle.com)", + "burnbubble.com": "Leven Labs, Inc. DBA Admiral (burnbubble.com)", + "bushesbag.com": "Leven Labs, Inc. DBA Admiral (bushesbag.com)", + "bustlingbath.com": "Leven Labs, Inc. DBA Admiral (bustlingbath.com)", + "bustlingbook.com": "Leven Labs, Inc. DBA Admiral (bustlingbook.com)", + "butterbulb.com": "Leven Labs, Inc. DBA Admiral (butterbulb.com)", + "butterburst.com": "Leven Labs, Inc. DBA Admiral (butterburst.com)", + "buttonladybug.com": "Leven Labs, Inc. DBA Admiral (buttonladybug.com)", + "cakesdrum.com": "Leven Labs, Inc. DBA Admiral (cakesdrum.com)", + "calculatingcircle.com": "Leven Labs, Inc. DBA Admiral (calculatingcircle.com)", + "calculatingtoothbrush.com": "Leven Labs, Inc. DBA Admiral (calculatingtoothbrush.com)", + "calculatorstatement.com": "Leven Labs, Inc. DBA Admiral (calculatorstatement.com)", + "callousbrake.com": "Leven Labs, Inc. DBA Admiral (callousbrake.com)", + "calmcactus.com": "Leven Labs, Inc. DBA Admiral (calmcactus.com)", + "calypsocapsule.com": "Leven Labs, Inc. DBA Admiral (calypsocapsule.com)", + "cannonchange.com": "Leven Labs, Inc. DBA Admiral (cannonchange.com)", + "capablecows.com": "Leven Labs, Inc. DBA Admiral (capablecows.com)", + "capablecup.com": "Leven Labs, Inc. DBA Admiral (capablecup.com)", + "capriciouscorn.com": "Leven Labs, Inc. DBA Admiral (capriciouscorn.com)", + "captivatingcanyon.com": "Leven Labs, Inc. DBA Admiral (captivatingcanyon.com)", + "captivatingillusion.com": "Leven Labs, Inc. DBA Admiral (captivatingillusion.com)", + "captivatingpanorama.com": "Leven Labs, Inc. DBA Admiral (captivatingpanorama.com)", + "captivatingperformance.com": "Leven Labs, Inc. DBA Admiral (captivatingperformance.com)", + "carefuldolls.com": "Leven Labs, Inc. DBA Admiral (carefuldolls.com)", + "caringcast.com": "Leven Labs, Inc. DBA Admiral (caringcast.com)", + "caringzinc.com": "Leven Labs, Inc. DBA Admiral (caringzinc.com)", + "carloforward.com": "Leven Labs, Inc. DBA Admiral (carloforward.com)", + "carpentercomparison.com": "Leven Labs, Inc. DBA Admiral (carpentercomparison.com)", + "carscannon.com": "Leven Labs, Inc. DBA Admiral (carscannon.com)", + "cartkitten.com": "Leven Labs, Inc. DBA Admiral (cartkitten.com)", + "carvecakes.com": "Leven Labs, Inc. DBA Admiral (carvecakes.com)", + "catalogcake.com": "Leven Labs, Inc. DBA Admiral (catalogcake.com)", + "catschickens.com": "Leven Labs, Inc. DBA Admiral (catschickens.com)", + "cattlecommittee.com": "Leven Labs, Inc. DBA Admiral (cattlecommittee.com)", + "causecherry.com": "Leven Labs, Inc. DBA Admiral (causecherry.com)", + "cautiouscamera.com": "Leven Labs, Inc. DBA Admiral (cautiouscamera.com)", + "cautiouscherries.com": "Leven Labs, Inc. DBA Admiral (cautiouscherries.com)", + "cautiouscrate.com": "Leven Labs, Inc. DBA Admiral (cautiouscrate.com)", + "cautiouscredit.com": "Leven Labs, Inc. DBA Admiral (cautiouscredit.com)", + "cavecurtain.com": "Leven Labs, Inc. DBA Admiral (cavecurtain.com)", + "ceciliavenus.com": "Leven Labs, Inc. DBA Admiral (ceciliavenus.com)", + "celestialeuphony.com": "Leven Labs, Inc. DBA Admiral (celestialeuphony.com)", + "celestialquasar.com": "Leven Labs, Inc. DBA Admiral (celestialquasar.com)", + "celestialspectra.com": "Leven Labs, Inc. DBA Admiral (celestialspectra.com)", + "chaireggnog.com": "Leven Labs, Inc. DBA Admiral (chaireggnog.com)", + "chairscrack.com": "Leven Labs, Inc. DBA Admiral (chairscrack.com)", + "chairsdonkey.com": "Leven Labs, Inc. DBA Admiral (chairsdonkey.com)", + "chalkoil.com": "Leven Labs, Inc. DBA Admiral (chalkoil.com)", + "changeablecats.com": "Leven Labs, Inc. DBA Admiral (changeablecats.com)", + "channelcamp.com": "Leven Labs, Inc. DBA Admiral (channelcamp.com)", + "chargecracker.com": "Leven Labs, Inc. DBA Admiral (chargecracker.com)", + "charmingplate.com": "Leven Labs, Inc. DBA Admiral (charmingplate.com)", + "charscroll.com": "Leven Labs, Inc. DBA Admiral (charscroll.com)", + "cheerycraze.com": "Leven Labs, Inc. DBA Admiral (cheerycraze.com)", + "cherriescare.com": "Leven Labs, Inc. DBA Admiral (cherriescare.com)", + "chessbranch.com": "Leven Labs, Inc. DBA Admiral (chessbranch.com)", + "chesscolor.com": "Leven Labs, Inc. DBA Admiral (chesscolor.com)", + "chesscrowd.com": "Leven Labs, Inc. DBA Admiral (chesscrowd.com)", + "chickensstation.com": "Leven Labs, Inc. DBA Admiral (chickensstation.com)", + "childlikecrowd.com": "Leven Labs, Inc. DBA Admiral (childlikecrowd.com)", + "childlikeexample.com": "Leven Labs, Inc. DBA Admiral (childlikeexample.com)", + "childlikeform.com": "Leven Labs, Inc. DBA Admiral (childlikeform.com)", + "chilledliquid.com": "Leven Labs, Inc. DBA Admiral (chilledliquid.com)", + "chingovernment.com": "Leven Labs, Inc. DBA Admiral (chingovernment.com)", + "chinsnakes.com": "Leven Labs, Inc. DBA Admiral (chinsnakes.com)", + "chipperisle.com": "Leven Labs, Inc. DBA Admiral (chipperisle.com)", + "chivalrouscord.com": "Leven Labs, Inc. DBA Admiral (chivalrouscord.com)", + "chubbycreature.com": "Leven Labs, Inc. DBA Admiral (chubbycreature.com)", + "chunkycactus.com": "Leven Labs, Inc. DBA Admiral (chunkycactus.com)", + "cicdserver.com": "Leven Labs, Inc. DBA Admiral (cicdserver.com)", + "cinemabonus.com": "Leven Labs, Inc. DBA Admiral (cinemabonus.com)", + "circlelevel.com": "Leven Labs, Inc. DBA Admiral (circlelevel.com)", + "clammychicken.com": "Leven Labs, Inc. DBA Admiral (clammychicken.com)", + "cleanhaircut.com": "Leven Labs, Inc. DBA Admiral (cleanhaircut.com)", + "cloisteredcord.com": "Leven Labs, Inc. DBA Admiral (cloisteredcord.com)", + "cloisteredcurve.com": "Leven Labs, Inc. DBA Admiral (cloisteredcurve.com)", + "closedcows.com": "Leven Labs, Inc. DBA Admiral (closedcows.com)", + "closefriction.com": "Leven Labs, Inc. DBA Admiral (closefriction.com)", + "cloudhustles.com": "Leven Labs, Inc. DBA Admiral (cloudhustles.com)", + "cloudjumbo.com": "Leven Labs, Inc. DBA Admiral (cloudjumbo.com)", + "clovercabbage.com": "Leven Labs, Inc. DBA Admiral (clovercabbage.com)", + "clumsycar.com": "Leven Labs, Inc. DBA Admiral (clumsycar.com)", + "coatfood.com": "Leven Labs, Inc. DBA Admiral (coatfood.com)", + "cobaltoverture.com": "Leven Labs, Inc. DBA Admiral (cobaltoverture.com)", + "coffeesidehustle.com": "Leven Labs, Inc. DBA Admiral (coffeesidehustle.com)", + "coldbalance.com": "Leven Labs, Inc. DBA Admiral (coldbalance.com)", + "coldcreatives.com": "Leven Labs, Inc. DBA Admiral (coldcreatives.com)", + "colorfulafterthought.com": "Leven Labs, Inc. DBA Admiral (colorfulafterthought.com)", + "colossalclouds.com": "Leven Labs, Inc. DBA Admiral (colossalclouds.com)", + "colossalcoat.com": "Leven Labs, Inc. DBA Admiral (colossalcoat.com)", + "colossalcry.com": "Leven Labs, Inc. DBA Admiral (colossalcry.com)", + "combativecar.com": "Leven Labs, Inc. DBA Admiral (combativecar.com)", + "combativedetail.com": "Leven Labs, Inc. DBA Admiral (combativedetail.com)", + "combbit.com": "Leven Labs, Inc. DBA Admiral (combbit.com)", + "combcattle.com": "Leven Labs, Inc. DBA Admiral (combcattle.com)", + "combcompetition.com": "Leven Labs, Inc. DBA Admiral (combcompetition.com)", + "cometquote.com": "Leven Labs, Inc. DBA Admiral (cometquote.com)", + "comfortablecheese.com": "Leven Labs, Inc. DBA Admiral (comfortablecheese.com)", + "comfygoodness.com": "Leven Labs, Inc. DBA Admiral (comfygoodness.com)", + "companyparcel.com": "Leven Labs, Inc. DBA Admiral (companyparcel.com)", + "comparereaction.com": "Leven Labs, Inc. DBA Admiral (comparereaction.com)", + "compiledoctor.com": "Leven Labs, Inc. DBA Admiral (compiledoctor.com)", + "concernedchange.com": "Leven Labs, Inc. DBA Admiral (concernedchange.com)", + "concernedchickens.com": "Leven Labs, Inc. DBA Admiral (concernedchickens.com)", + "condemnedcomb.com": "Leven Labs, Inc. DBA Admiral (condemnedcomb.com)", + "conditionchange.com": "Leven Labs, Inc. DBA Admiral (conditionchange.com)", + "conditioncrush.com": "Leven Labs, Inc. DBA Admiral (conditioncrush.com)", + "confesschairs.com": "Leven Labs, Inc. DBA Admiral (confesschairs.com)", + "configchain.com": "Leven Labs, Inc. DBA Admiral (configchain.com)", + "confusedcart.com": "Leven Labs, Inc. DBA Admiral (confusedcart.com)", + "connectashelf.com": "Leven Labs, Inc. DBA Admiral (connectashelf.com)", + "consciouschairs.com": "Leven Labs, Inc. DBA Admiral (consciouschairs.com)", + "consciouscheese.com": "Leven Labs, Inc. DBA Admiral (consciouscheese.com)", + "consciousdirt.com": "Leven Labs, Inc. DBA Admiral (consciousdirt.com)", + "consumerzero.com": "Leven Labs, Inc. DBA Admiral (consumerzero.com)", + "controlcola.com": "Leven Labs, Inc. DBA Admiral (controlcola.com)", + "controlhall.com": "Leven Labs, Inc. DBA Admiral (controlhall.com)", + "convertbatch.com": "Leven Labs, Inc. DBA Admiral (convertbatch.com)", + "cooingcoal.com": "Leven Labs, Inc. DBA Admiral (cooingcoal.com)", + "coordinatedbedroom.com": "Leven Labs, Inc. DBA Admiral (coordinatedbedroom.com)", + "coordinatedcoat.com": "Leven Labs, Inc. DBA Admiral (coordinatedcoat.com)", + "copycarpenter.com": "Leven Labs, Inc. DBA Admiral (copycarpenter.com)", + "copyrightaccesscontrols.com": "Leven Labs, Inc. DBA Admiral (copyrightaccesscontrols.com)", + "coralreverie.com": "Leven Labs, Inc. DBA Admiral (coralreverie.com)", + "corgibeachday.com": "Leven Labs, Inc. DBA Admiral (corgibeachday.com)", + "cosmicsculptor.com": "Leven Labs, Inc. DBA Admiral (cosmicsculptor.com)", + "cosmosjackson.com": "Leven Labs, Inc. DBA Admiral (cosmosjackson.com)", + "courageousbaby.com": "Leven Labs, Inc. DBA Admiral (courageousbaby.com)", + "coverapparatus.com": "Leven Labs, Inc. DBA Admiral (coverapparatus.com)", + "coverlayer.com": "Leven Labs, Inc. DBA Admiral (coverlayer.com)", + "cozydusk.com": "Leven Labs, Inc. DBA Admiral (cozydusk.com)", + "cozyhillside.com": "Leven Labs, Inc. DBA Admiral (cozyhillside.com)", + "cozytryst.com": "Leven Labs, Inc. DBA Admiral (cozytryst.com)", + "crabbychin.com": "Leven Labs, Inc. DBA Admiral (crabbychin.com)", + "crackedsafe.com": "Leven Labs, Inc. DBA Admiral (crackedsafe.com)", + "crafthenry.com": "Leven Labs, Inc. DBA Admiral (crafthenry.com)", + "crashchance.com": "Leven Labs, Inc. DBA Admiral (crashchance.com)", + "cratecamera.com": "Leven Labs, Inc. DBA Admiral (cratecamera.com)", + "craterbox.com": "Leven Labs, Inc. DBA Admiral (craterbox.com)", + "creatorcherry.com": "Leven Labs, Inc. DBA Admiral (creatorcherry.com)", + "creatorpassenger.com": "Leven Labs, Inc. DBA Admiral (creatorpassenger.com)", + "creaturecabbage.com": "Leven Labs, Inc. DBA Admiral (creaturecabbage.com)", + "crimsonmeadow.com": "Leven Labs, Inc. DBA Admiral (crimsonmeadow.com)", + "critictruck.com": "Leven Labs, Inc. DBA Admiral (critictruck.com)", + "crookedcreature.com": "Leven Labs, Inc. DBA Admiral (crookedcreature.com)", + "crowdedmass.com": "Leven Labs, Inc. DBA Admiral (crowdedmass.com)", + "cruisetourist.com": "Leven Labs, Inc. DBA Admiral (cruisetourist.com)", + "cryptvalue.com": "Leven Labs, Inc. DBA Admiral (cryptvalue.com)", + "crystalboulevard.com": "Leven Labs, Inc. DBA Admiral (crystalboulevard.com)", + "crystalstatus.com": "Leven Labs, Inc. DBA Admiral (crystalstatus.com)", + "cubchannel.com": "Leven Labs, Inc. DBA Admiral (cubchannel.com)", + "cubepins.com": "Leven Labs, Inc. DBA Admiral (cubepins.com)", + "cuddlycake.com": "Leven Labs, Inc. DBA Admiral (cuddlycake.com)", + "cuddlylunchroom.com": "Leven Labs, Inc. DBA Admiral (cuddlylunchroom.com)", + "culturedcamera.com": "Leven Labs, Inc. DBA Admiral (culturedcamera.com)", + "culturedfeather.com": "Leven Labs, Inc. DBA Admiral (culturedfeather.com)", + "cumbersomecar.com": "Leven Labs, Inc. DBA Admiral (cumbersomecar.com)", + "cumbersomecarpenter.com": "Leven Labs, Inc. DBA Admiral (cumbersomecarpenter.com)", + "cumbersomecloud.com": "Leven Labs, Inc. DBA Admiral (cumbersomecloud.com)", + "curiouschalk.com": "Leven Labs, Inc. DBA Admiral (curiouschalk.com)", + "curioussuccess.com": "Leven Labs, Inc. DBA Admiral (curioussuccess.com)", + "curlycannon.com": "Leven Labs, Inc. DBA Admiral (curlycannon.com)", + "currentcollar.com": "Leven Labs, Inc. DBA Admiral (currentcollar.com)", + "curtaincows.com": "Leven Labs, Inc. DBA Admiral (curtaincows.com)", + "curvedhoney.com": "Leven Labs, Inc. DBA Admiral (curvedhoney.com)", + "curvycord.com": "Leven Labs, Inc. DBA Admiral (curvycord.com)", + "curvycry.com": "Leven Labs, Inc. DBA Admiral (curvycry.com)", + "cushiondrum.com": "Leven Labs, Inc. DBA Admiral (cushiondrum.com)", + "cushionpig.com": "Leven Labs, Inc. DBA Admiral (cushionpig.com)", + "cutcurrent.com": "Leven Labs, Inc. DBA Admiral (cutcurrent.com)", + "cutechin.com": "Leven Labs, Inc. DBA Admiral (cutechin.com)", + "cyclopsdial.com": "Leven Labs, Inc. DBA Admiral (cyclopsdial.com)", + "dailydivision.com": "Leven Labs, Inc. DBA Admiral (dailydivision.com)", + "damagedadvice.com": "Leven Labs, Inc. DBA Admiral (damagedadvice.com)", + "damageddistance.com": "Leven Labs, Inc. DBA Admiral (damageddistance.com)", + "damdoor.com": "Leven Labs, Inc. DBA Admiral (damdoor.com)", + "dampdock.com": "Leven Labs, Inc. DBA Admiral (dampdock.com)", + "dancemistake.com": "Leven Labs, Inc. DBA Admiral (dancemistake.com)", + "dandydune.com": "Leven Labs, Inc. DBA Admiral (dandydune.com)", + "dandyglow.com": "Leven Labs, Inc. DBA Admiral (dandyglow.com)", + "dapperdiscussion.com": "Leven Labs, Inc. DBA Admiral (dapperdiscussion.com)", + "dapperfloor.com": "Leven Labs, Inc. DBA Admiral (dapperfloor.com)", + "datastoried.com": "Leven Labs, Inc. DBA Admiral (datastoried.com)", + "daughterstone.com": "Leven Labs, Inc. DBA Admiral (daughterstone.com)", + "daymodern.com": "Leven Labs, Inc. DBA Admiral (daymodern.com)", + "dazzlingbook.com": "Leven Labs, Inc. DBA Admiral (dazzlingbook.com)", + "deafeningdock.com": "Leven Labs, Inc. DBA Admiral (deafeningdock.com)", + "deafeningdowntown.com": "Leven Labs, Inc. DBA Admiral (deafeningdowntown.com)", + "debonairdust.com": "Leven Labs, Inc. DBA Admiral (debonairdust.com)", + "debonairtree.com": "Leven Labs, Inc. DBA Admiral (debonairtree.com)", + "debugentity.com": "Leven Labs, Inc. DBA Admiral (debugentity.com)", + "decidedrum.com": "Leven Labs, Inc. DBA Admiral (decidedrum.com)", + "decisivebase.com": "Leven Labs, Inc. DBA Admiral (decisivebase.com)", + "decisivedrawer.com": "Leven Labs, Inc. DBA Admiral (decisivedrawer.com)", + "decisiveducks.com": "Leven Labs, Inc. DBA Admiral (decisiveducks.com)", + "decoycreation.com": "Leven Labs, Inc. DBA Admiral (decoycreation.com)", + "deerbeginner.com": "Leven Labs, Inc. DBA Admiral (deerbeginner.com)", + "defeatedbadge.com": "Leven Labs, Inc. DBA Admiral (defeatedbadge.com)", + "defensevest.com": "Leven Labs, Inc. DBA Admiral (defensevest.com)", + "degreechariot.com": "Leven Labs, Inc. DBA Admiral (degreechariot.com)", + "delegatediscussion.com": "Leven Labs, Inc. DBA Admiral (delegatediscussion.com)", + "delicatecascade.com": "Leven Labs, Inc. DBA Admiral (delicatecascade.com)", + "deliciousducks.com": "Leven Labs, Inc. DBA Admiral (deliciousducks.com)", + "deltafault.com": "Leven Labs, Inc. DBA Admiral (deltafault.com)", + "deluxecrate.com": "Leven Labs, Inc. DBA Admiral (deluxecrate.com)", + "dependenttrip.com": "Leven Labs, Inc. DBA Admiral (dependenttrip.com)", + "desirebucket.com": "Leven Labs, Inc. DBA Admiral (desirebucket.com)", + "desiredirt.com": "Leven Labs, Inc. DBA Admiral (desiredirt.com)", + "detailedgovernment.com": "Leven Labs, Inc. DBA Admiral (detailedgovernment.com)", + "detailedkitten.com": "Leven Labs, Inc. DBA Admiral (detailedkitten.com)", + "detectdinner.com": "Leven Labs, Inc. DBA Admiral (detectdinner.com)", + "detectdiscovery.com": "Leven Labs, Inc. DBA Admiral (detectdiscovery.com)", + "detourgame.com": "Leven Labs, Inc. DBA Admiral (detourgame.com)", + "deviceseal.com": "Leven Labs, Inc. DBA Admiral (deviceseal.com)", + "deviceworkshop.com": "Leven Labs, Inc. DBA Admiral (deviceworkshop.com)", + "devilishdinner.com": "Leven Labs, Inc. DBA Admiral (devilishdinner.com)", + "dewdroplagoon.com": "Leven Labs, Inc. DBA Admiral (dewdroplagoon.com)", + "difficultfog.com": "Leven Labs, Inc. DBA Admiral (difficultfog.com)", + "digestiondrawer.com": "Leven Labs, Inc. DBA Admiral (digestiondrawer.com)", + "dinnerquartz.com": "Leven Labs, Inc. DBA Admiral (dinnerquartz.com)", + "diplomahawaii.com": "Leven Labs, Inc. DBA Admiral (diplomahawaii.com)", + "direfuldesk.com": "Leven Labs, Inc. DBA Admiral (direfuldesk.com)", + "disagreeabledrop.com": "Leven Labs, Inc. DBA Admiral (disagreeabledrop.com)", + "discreetfield.com": "Leven Labs, Inc. DBA Admiral (discreetfield.com)", + "discreetquarter.com": "Leven Labs, Inc. DBA Admiral (discreetquarter.com)", + "distributionneck.com": "Leven Labs, Inc. DBA Admiral (distributionneck.com)", + "distributionpocket.com": "Leven Labs, Inc. DBA Admiral (distributionpocket.com)", + "distributiontomatoes.com": "Leven Labs, Inc. DBA Admiral (distributiontomatoes.com)", + "disturbedquiet.com": "Leven Labs, Inc. DBA Admiral (disturbedquiet.com)", + "divehope.com": "Leven Labs, Inc. DBA Admiral (divehope.com)", + "dk4ywix.com": "Leven Labs, Inc. DBA Admiral (dk4ywix.com)", + "dockdigestion.com": "Leven Labs, Inc. DBA Admiral (dockdigestion.com)", + "dogsonclouds.com": "Leven Labs, Inc. DBA Admiral (dogsonclouds.com)", + "dollardelta.com": "Leven Labs, Inc. DBA Admiral (dollardelta.com)", + "doubledefend.com": "Leven Labs, Inc. DBA Admiral (doubledefend.com)", + "doubtdrawer.com": "Leven Labs, Inc. DBA Admiral (doubtdrawer.com)", + "dq95d35.com": "Leven Labs, Inc. DBA Admiral (dq95d35.com)", + "drainpaste.com": "Leven Labs, Inc. DBA Admiral (drainpaste.com)", + "dramaticdirection.com": "Leven Labs, Inc. DBA Admiral (dramaticdirection.com)", + "dreamycanyon.com": "Leven Labs, Inc. DBA Admiral (dreamycanyon.com)", + "driftpizza.com": "Leven Labs, Inc. DBA Admiral (driftpizza.com)", + "drollwharf.com": "Leven Labs, Inc. DBA Admiral (drollwharf.com)", + "drydrum.com": "Leven Labs, Inc. DBA Admiral (drydrum.com)", + "dustydime.com": "Leven Labs, Inc. DBA Admiral (dustydime.com)", + "dustyhammer.com": "Leven Labs, Inc. DBA Admiral (dustyhammer.com)", + "eagereden.com": "Leven Labs, Inc. DBA Admiral (eagereden.com)", + "eagerflame.com": "Leven Labs, Inc. DBA Admiral (eagerflame.com)", + "eagerknight.com": "Leven Labs, Inc. DBA Admiral (eagerknight.com)", + "earthyfarm.com": "Leven Labs, Inc. DBA Admiral (earthyfarm.com)", + "eatablesquare.com": "Leven Labs, Inc. DBA Admiral (eatablesquare.com)", + "echochief.com": "Leven Labs, Inc. DBA Admiral (echochief.com)", + "echoinghaven.com": "Leven Labs, Inc. DBA Admiral (echoinghaven.com)", + "effervescentcoral.com": "Leven Labs, Inc. DBA Admiral (effervescentcoral.com)", + "effervescentvista.com": "Leven Labs, Inc. DBA Admiral (effervescentvista.com)", + "effulgentnook.com": "Leven Labs, Inc. DBA Admiral (effulgentnook.com)", + "effulgenttempest.com": "Leven Labs, Inc. DBA Admiral (effulgenttempest.com)", + "ejyymghi.com": "Leven Labs, Inc. DBA Admiral (ejyymghi.com)", + "elasticchange.com": "Leven Labs, Inc. DBA Admiral (elasticchange.com)", + "elderlybean.com": "Leven Labs, Inc. DBA Admiral (elderlybean.com)", + "elderlytown.com": "Leven Labs, Inc. DBA Admiral (elderlytown.com)", + "elephantqueue.com": "Leven Labs, Inc. DBA Admiral (elephantqueue.com)", + "elusivebreeze.com": "Leven Labs, Inc. DBA Admiral (elusivebreeze.com)", + "elusivecascade.com": "Leven Labs, Inc. DBA Admiral (elusivecascade.com)", + "elysiantraverse.com": "Leven Labs, Inc. DBA Admiral (elysiantraverse.com)", + "embellishedmeadow.com": "Leven Labs, Inc. DBA Admiral (embellishedmeadow.com)", + "embermosaic.com": "Leven Labs, Inc. DBA Admiral (embermosaic.com)", + "emberwhisper.com": "Leven Labs, Inc. DBA Admiral (emberwhisper.com)", + "eminentbubble.com": "Leven Labs, Inc. DBA Admiral (eminentbubble.com)", + "eminentend.com": "Leven Labs, Inc. DBA Admiral (eminentend.com)", + "emptyescort.com": "Leven Labs, Inc. DBA Admiral (emptyescort.com)", + "enchantedskyline.com": "Leven Labs, Inc. DBA Admiral (enchantedskyline.com)", + "enchantingdiscovery.com": "Leven Labs, Inc. DBA Admiral (enchantingdiscovery.com)", + "enchantingenchantment.com": "Leven Labs, Inc. DBA Admiral (enchantingenchantment.com)", + "enchantingmystique.com": "Leven Labs, Inc. DBA Admiral (enchantingmystique.com)", + "enchantingtundra.com": "Leven Labs, Inc. DBA Admiral (enchantingtundra.com)", + "enchantingvalley.com": "Leven Labs, Inc. DBA Admiral (enchantingvalley.com)", + "encourageshock.com": "Leven Labs, Inc. DBA Admiral (encourageshock.com)", + "encouragingthread.com": "Leven Labs, Inc. DBA Admiral (encouragingthread.com)", + "endlesstrust.com": "Leven Labs, Inc. DBA Admiral (endlesstrust.com)", + "endurablebulb.com": "Leven Labs, Inc. DBA Admiral (endurablebulb.com)", + "energeticexample.com": "Leven Labs, Inc. DBA Admiral (energeticexample.com)", + "energeticladybug.com": "Leven Labs, Inc. DBA Admiral (energeticladybug.com)", + "engineergrape.com": "Leven Labs, Inc. DBA Admiral (engineergrape.com)", + "engineertrick.com": "Leven Labs, Inc. DBA Admiral (engineertrick.com)", + "enigmaticblossom.com": "Leven Labs, Inc. DBA Admiral (enigmaticblossom.com)", + "enigmaticcanyon.com": "Leven Labs, Inc. DBA Admiral (enigmaticcanyon.com)", + "enigmaticvoyage.com": "Leven Labs, Inc. DBA Admiral (enigmaticvoyage.com)", + "enormousearth.com": "Leven Labs, Inc. DBA Admiral (enormousearth.com)", + "enormousfoot.com": "Leven Labs, Inc. DBA Admiral (enormousfoot.com)", + "enterdrama.com": "Leven Labs, Inc. DBA Admiral (enterdrama.com)", + "entertainskin.com": "Leven Labs, Inc. DBA Admiral (entertainskin.com)", + "enthusiastictemper.com": "Leven Labs, Inc. DBA Admiral (enthusiastictemper.com)", + "enviousshape.com": "Leven Labs, Inc. DBA Admiral (enviousshape.com)", + "enviousthread.com": "Leven Labs, Inc. DBA Admiral (enviousthread.com)", + "equablekettle.com": "Leven Labs, Inc. DBA Admiral (equablekettle.com)", + "etherealbamboo.com": "Leven Labs, Inc. DBA Admiral (etherealbamboo.com)", + "ethereallagoon.com": "Leven Labs, Inc. DBA Admiral (ethereallagoon.com)", + "etherealpinnacle.com": "Leven Labs, Inc. DBA Admiral (etherealpinnacle.com)", + "etherealquasar.com": "Leven Labs, Inc. DBA Admiral (etherealquasar.com)", + "etherealripple.com": "Leven Labs, Inc. DBA Admiral (etherealripple.com)", + "evanescentedge.com": "Leven Labs, Inc. DBA Admiral (evanescentedge.com)", + "evasivejar.com": "Leven Labs, Inc. DBA Admiral (evasivejar.com)", + "eventexistence.com": "Leven Labs, Inc. DBA Admiral (eventexistence.com)", + "exampleshake.com": "Leven Labs, Inc. DBA Admiral (exampleshake.com)", + "excitingtub.com": "Leven Labs, Inc. DBA Admiral (excitingtub.com)", + "exclusivebrass.com": "Leven Labs, Inc. DBA Admiral (exclusivebrass.com)", + "executeknowledge.com": "Leven Labs, Inc. DBA Admiral (executeknowledge.com)", + "exhibitsneeze.com": "Leven Labs, Inc. DBA Admiral (exhibitsneeze.com)", + "expansioneggnog.com": "Leven Labs, Inc. DBA Admiral (expansioneggnog.com)", + "exquisiteartisanship.com": "Leven Labs, Inc. DBA Admiral (exquisiteartisanship.com)", + "extractobservation.com": "Leven Labs, Inc. DBA Admiral (extractobservation.com)", + "extralocker.com": "Leven Labs, Inc. DBA Admiral (extralocker.com)", + "extramonies.com": "Leven Labs, Inc. DBA Admiral (extramonies.com)", + "exuberantedge.com": "Leven Labs, Inc. DBA Admiral (exuberantedge.com)", + "facilitatebreakfast.com": "Leven Labs, Inc. DBA Admiral (facilitatebreakfast.com)", + "fadechildren.com": "Leven Labs, Inc. DBA Admiral (fadechildren.com)", + "fadedsnow.com": "Leven Labs, Inc. DBA Admiral (fadedsnow.com)", + "fadewaves.com": "Leven Labs, Inc. DBA Admiral (fadewaves.com)", + "fairfeeling.com": "Leven Labs, Inc. DBA Admiral (fairfeeling.com)", + "fairiesbranch.com": "Leven Labs, Inc. DBA Admiral (fairiesbranch.com)", + "fairygaze.com": "Leven Labs, Inc. DBA Admiral (fairygaze.com)", + "fairytaleflame.com": "Leven Labs, Inc. DBA Admiral (fairytaleflame.com)", + "fallaciousfifth.com": "Leven Labs, Inc. DBA Admiral (fallaciousfifth.com)", + "falseframe.com": "Leven Labs, Inc. DBA Admiral (falseframe.com)", + "familiarrod.com": "Leven Labs, Inc. DBA Admiral (familiarrod.com)", + "fancyactivity.com": "Leven Labs, Inc. DBA Admiral (fancyactivity.com)", + "fancydune.com": "Leven Labs, Inc. DBA Admiral (fancydune.com)", + "fancygrove.com": "Leven Labs, Inc. DBA Admiral (fancygrove.com)", + "fangfeeling.com": "Leven Labs, Inc. DBA Admiral (fangfeeling.com)", + "fantastictone.com": "Leven Labs, Inc. DBA Admiral (fantastictone.com)", + "farethief.com": "Leven Labs, Inc. DBA Admiral (farethief.com)", + "farmergoldfish.com": "Leven Labs, Inc. DBA Admiral (farmergoldfish.com)", + "farshake.com": "Leven Labs, Inc. DBA Admiral (farshake.com)", + "farsnails.com": "Leven Labs, Inc. DBA Admiral (farsnails.com)", + "fastenfather.com": "Leven Labs, Inc. DBA Admiral (fastenfather.com)", + "fasterfineart.com": "Leven Labs, Inc. DBA Admiral (fasterfineart.com)", + "fasterjson.com": "Leven Labs, Inc. DBA Admiral (fasterjson.com)", + "fatcoil.com": "Leven Labs, Inc. DBA Admiral (fatcoil.com)", + "faucetfoot.com": "Leven Labs, Inc. DBA Admiral (faucetfoot.com)", + "faultycanvas.com": "Leven Labs, Inc. DBA Admiral (faultycanvas.com)", + "fearfulfish.com": "Leven Labs, Inc. DBA Admiral (fearfulfish.com)", + "fearfulmint.com": "Leven Labs, Inc. DBA Admiral (fearfulmint.com)", + "fearlessfaucet.com": "Leven Labs, Inc. DBA Admiral (fearlessfaucet.com)", + "fearlesstramp.com": "Leven Labs, Inc. DBA Admiral (fearlesstramp.com)", + "featherstage.com": "Leven Labs, Inc. DBA Admiral (featherstage.com)", + "feeblestamp.com": "Leven Labs, Inc. DBA Admiral (feeblestamp.com)", + "feignedfaucet.com": "Leven Labs, Inc. DBA Admiral (feignedfaucet.com)", + "fernwaycloud.com": "Leven Labs, Inc. DBA Admiral (fernwaycloud.com)", + "fertilefeeling.com": "Leven Labs, Inc. DBA Admiral (fertilefeeling.com)", + "fewjuice.com": "Leven Labs, Inc. DBA Admiral (fewjuice.com)", + "fewkittens.com": "Leven Labs, Inc. DBA Admiral (fewkittens.com)", + "finalizeforce.com": "Leven Labs, Inc. DBA Admiral (finalizeforce.com)", + "financefear.com": "Leven Labs, Inc. DBA Admiral (financefear.com)", + "finestpiece.com": "Leven Labs, Inc. DBA Admiral (finestpiece.com)", + "finitecube.com": "Leven Labs, Inc. DBA Admiral (finitecube.com)", + "firecatfilms.com": "Leven Labs, Inc. DBA Admiral (firecatfilms.com)", + "fireworkcamp.com": "Leven Labs, Inc. DBA Admiral (fireworkcamp.com)", + "firstendpoint.com": "Leven Labs, Inc. DBA Admiral (firstendpoint.com)", + "firstfrogs.com": "Leven Labs, Inc. DBA Admiral (firstfrogs.com)", + "firsttexture.com": "Leven Labs, Inc. DBA Admiral (firsttexture.com)", + "fitmessage.com": "Leven Labs, Inc. DBA Admiral (fitmessage.com)", + "fivesidedsquare.com": "Leven Labs, Inc. DBA Admiral (fivesidedsquare.com)", + "fixedfold.com": "Leven Labs, Inc. DBA Admiral (fixedfold.com)", + "flakyfeast.com": "Leven Labs, Inc. DBA Admiral (flakyfeast.com)", + "flameuncle.com": "Leven Labs, Inc. DBA Admiral (flameuncle.com)", + "flimsycircle.com": "Leven Labs, Inc. DBA Admiral (flimsycircle.com)", + "flimsythought.com": "Leven Labs, Inc. DBA Admiral (flimsythought.com)", + "flippedfunnel.com": "Leven Labs, Inc. DBA Admiral (flippedfunnel.com)", + "floodprincipal.com": "Leven Labs, Inc. DBA Admiral (floodprincipal.com)", + "flourishingcollaboration.com": "Leven Labs, Inc. DBA Admiral (flourishingcollaboration.com)", + "flourishingendeavor.com": "Leven Labs, Inc. DBA Admiral (flourishingendeavor.com)", + "flourishinginnovation.com": "Leven Labs, Inc. DBA Admiral (flourishinginnovation.com)", + "flourishingpartnership.com": "Leven Labs, Inc. DBA Admiral (flourishingpartnership.com)", + "flowersornament.com": "Leven Labs, Inc. DBA Admiral (flowersornament.com)", + "flowerstreatment.com": "Leven Labs, Inc. DBA Admiral (flowerstreatment.com)", + "flowerycreature.com": "Leven Labs, Inc. DBA Admiral (flowerycreature.com)", + "floweryfact.com": "Leven Labs, Inc. DBA Admiral (floweryfact.com)", + "floweryflavor.com": "Leven Labs, Inc. DBA Admiral (floweryflavor.com)", + "floweryoperation.com": "Leven Labs, Inc. DBA Admiral (floweryoperation.com)", + "flutteringfireman.com": "Leven Labs, Inc. DBA Admiral (flutteringfireman.com)", + "foambench.com": "Leven Labs, Inc. DBA Admiral (foambench.com)", + "followborder.com": "Leven Labs, Inc. DBA Admiral (followborder.com)", + "forecasttiger.com": "Leven Labs, Inc. DBA Admiral (forecasttiger.com)", + "foretellfifth.com": "Leven Labs, Inc. DBA Admiral (foretellfifth.com)", + "forevergears.com": "Leven Labs, Inc. DBA Admiral (forevergears.com)", + "forgetfulflowers.com": "Leven Labs, Inc. DBA Admiral (forgetfulflowers.com)", + "forgetfulsnail.com": "Leven Labs, Inc. DBA Admiral (forgetfulsnail.com)", + "fortunatemark.com": "Leven Labs, Inc. DBA Admiral (fortunatemark.com)", + "fractalcoast.com": "Leven Labs, Inc. DBA Admiral (fractalcoast.com)", + "frailfruit.com": "Leven Labs, Inc. DBA Admiral (frailfruit.com)", + "framebanana.com": "Leven Labs, Inc. DBA Admiral (framebanana.com)", + "franticroof.com": "Leven Labs, Inc. DBA Admiral (franticroof.com)", + "frantictrail.com": "Leven Labs, Inc. DBA Admiral (frantictrail.com)", + "frazzleart.com": "Leven Labs, Inc. DBA Admiral (frazzleart.com)", + "freakyglass.com": "Leven Labs, Inc. DBA Admiral (freakyglass.com)", + "freezingbuilding.com": "Leven Labs, Inc. DBA Admiral (freezingbuilding.com)", + "frequentflesh.com": "Leven Labs, Inc. DBA Admiral (frequentflesh.com)", + "friendlycrayon.com": "Leven Labs, Inc. DBA Admiral (friendlycrayon.com)", + "friendlyfold.com": "Leven Labs, Inc. DBA Admiral (friendlyfold.com)", + "friendwool.com": "Leven Labs, Inc. DBA Admiral (friendwool.com)", + "frightenedpotato.com": "Leven Labs, Inc. DBA Admiral (frightenedpotato.com)", + "frogator.com": "Leven Labs, Inc. DBA Admiral (frogator.com)", + "frogtray.com": "Leven Labs, Inc. DBA Admiral (frogtray.com)", + "fronttoad.com": "Leven Labs, Inc. DBA Admiral (fronttoad.com)", + "frugalfiestas.com": "Leven Labs, Inc. DBA Admiral (frugalfiestas.com)", + "fumblingform.com": "Leven Labs, Inc. DBA Admiral (fumblingform.com)", + "functionalcrown.com": "Leven Labs, Inc. DBA Admiral (functionalcrown.com)", + "functionalfeather.com": "Leven Labs, Inc. DBA Admiral (functionalfeather.com)", + "funoverbored.com": "Leven Labs, Inc. DBA Admiral (funoverbored.com)", + "funoverflow.com": "Leven Labs, Inc. DBA Admiral (funoverflow.com)", + "furnstudio.com": "Leven Labs, Inc. DBA Admiral (furnstudio.com)", + "furryfork.com": "Leven Labs, Inc. DBA Admiral (furryfork.com)", + "furryhorses.com": "Leven Labs, Inc. DBA Admiral (furryhorses.com)", + "futuristicapparatus.com": "Leven Labs, Inc. DBA Admiral (futuristicapparatus.com)", + "futuristicfairies.com": "Leven Labs, Inc. DBA Admiral (futuristicfairies.com)", + "futuristicfifth.com": "Leven Labs, Inc. DBA Admiral (futuristicfifth.com)", + "futuristicframe.com": "Leven Labs, Inc. DBA Admiral (futuristicframe.com)", + "fuzzyaudio.com": "Leven Labs, Inc. DBA Admiral (fuzzyaudio.com)", + "fuzzybasketball.com": "Leven Labs, Inc. DBA Admiral (fuzzybasketball.com)", + "fuzzyerror.com": "Leven Labs, Inc. DBA Admiral (fuzzyerror.com)", + "fvl1f.pw": "Leven Labs, Inc. DBA Admiral (fvl1f.pw)", + "gammamaximum.com": "Leven Labs, Inc. DBA Admiral (gammamaximum.com)", + "gardenovens.com": "Leven Labs, Inc. DBA Admiral (gardenovens.com)", + "gaudyairplane.com": "Leven Labs, Inc. DBA Admiral (gaudyairplane.com)", + "geekactive.com": "Leven Labs, Inc. DBA Admiral (geekactive.com)", + "generalprose.com": "Leven Labs, Inc. DBA Admiral (generalprose.com)", + "generateoffice.com": "Leven Labs, Inc. DBA Admiral (generateoffice.com)", + "giantsvessel.com": "Leven Labs, Inc. DBA Admiral (giantsvessel.com)", + "giddycoat.com": "Leven Labs, Inc. DBA Admiral (giddycoat.com)", + "giraffepiano.com": "Leven Labs, Inc. DBA Admiral (giraffepiano.com)", + "gitcrumbs.com": "Leven Labs, Inc. DBA Admiral (gitcrumbs.com)", + "givevacation.com": "Leven Labs, Inc. DBA Admiral (givevacation.com)", + "gladglen.com": "Leven Labs, Inc. DBA Admiral (gladglen.com)", + "gladysway.com": "Leven Labs, Inc. DBA Admiral (gladysway.com)", + "glamhawk.com": "Leven Labs, Inc. DBA Admiral (glamhawk.com)", + "gleamingcow.com": "Leven Labs, Inc. DBA Admiral (gleamingcow.com)", + "gleaminghaven.com": "Leven Labs, Inc. DBA Admiral (gleaminghaven.com)", + "glisteningguide.com": "Leven Labs, Inc. DBA Admiral (glisteningguide.com)", + "glisteningsign.com": "Leven Labs, Inc. DBA Admiral (glisteningsign.com)", + "glitteringbrook.com": "Leven Labs, Inc. DBA Admiral (glitteringbrook.com)", + "gloriousbeef.com": "Leven Labs, Inc. DBA Admiral (gloriousbeef.com)", + "glowingmeadow.com": "Leven Labs, Inc. DBA Admiral (glowingmeadow.com)", + "gluedpixel.com": "Leven Labs, Inc. DBA Admiral (gluedpixel.com)", + "goldfishgrowth.com": "Leven Labs, Inc. DBA Admiral (goldfishgrowth.com)", + "gondolagnome.com": "Leven Labs, Inc. DBA Admiral (gondolagnome.com)", + "goodbark.com": "Leven Labs, Inc. DBA Admiral (goodbark.com)", + "gorgeousedge.com": "Leven Labs, Inc. DBA Admiral (gorgeousedge.com)", + "gracefulmilk.com": "Leven Labs, Inc. DBA Admiral (gracefulmilk.com)", + "grainmass.com": "Leven Labs, Inc. DBA Admiral (grainmass.com)", + "grandfatherguitar.com": "Leven Labs, Inc. DBA Admiral (grandfatherguitar.com)", + "gravitygive.com": "Leven Labs, Inc. DBA Admiral (gravitygive.com)", + "gravitykick.com": "Leven Labs, Inc. DBA Admiral (gravitykick.com)", + "grayoranges.com": "Leven Labs, Inc. DBA Admiral (grayoranges.com)", + "grayreceipt.com": "Leven Labs, Inc. DBA Admiral (grayreceipt.com)", + "greasysquare.com": "Leven Labs, Inc. DBA Admiral (greasysquare.com)", + "greyinstrument.com": "Leven Labs, Inc. DBA Admiral (greyinstrument.com)", + "gripcorn.com": "Leven Labs, Inc. DBA Admiral (gripcorn.com)", + "groovyornament.com": "Leven Labs, Inc. DBA Admiral (groovyornament.com)", + "grouchybrothers.com": "Leven Labs, Inc. DBA Admiral (grouchybrothers.com)", + "grouchypush.com": "Leven Labs, Inc. DBA Admiral (grouchypush.com)", + "grumpydime.com": "Leven Labs, Inc. DBA Admiral (grumpydime.com)", + "grumpydrawer.com": "Leven Labs, Inc. DBA Admiral (grumpydrawer.com)", + "guardeddirection.com": "Leven Labs, Inc. DBA Admiral (guardeddirection.com)", + "guardedschool.com": "Leven Labs, Inc. DBA Admiral (guardedschool.com)", + "guessdetail.com": "Leven Labs, Inc. DBA Admiral (guessdetail.com)", + "guidecent.com": "Leven Labs, Inc. DBA Admiral (guidecent.com)", + "guildalpha.com": "Leven Labs, Inc. DBA Admiral (guildalpha.com)", + "guiltlessbasketball.com": "Leven Labs, Inc. DBA Admiral (guiltlessbasketball.com)", + "gulliblegrip.com": "Leven Labs, Inc. DBA Admiral (gulliblegrip.com)", + "gustocooking.com": "Leven Labs, Inc. DBA Admiral (gustocooking.com)", + "gustygrandmother.com": "Leven Labs, Inc. DBA Admiral (gustygrandmother.com)", + "h78xb.pw": "Leven Labs, Inc. DBA Admiral (h78xb.pw)", + "habitualhumor.com": "Leven Labs, Inc. DBA Admiral (habitualhumor.com)", + "halcyoncanyon.com": "Leven Labs, Inc. DBA Admiral (halcyoncanyon.com)", + "halcyonsculpture.com": "Leven Labs, Inc. DBA Admiral (halcyonsculpture.com)", + "hallowedinvention.com": "Leven Labs, Inc. DBA Admiral (hallowedinvention.com)", + "haltingbadge.com": "Leven Labs, Inc. DBA Admiral (haltingbadge.com)", + "haltingdivision.com": "Leven Labs, Inc. DBA Admiral (haltingdivision.com)", + "haltinggold.com": "Leven Labs, Inc. DBA Admiral (haltinggold.com)", + "hammerhearing.com": "Leven Labs, Inc. DBA Admiral (hammerhearing.com)", + "handleteeth.com": "Leven Labs, Inc. DBA Admiral (handleteeth.com)", + "handnorth.com": "Leven Labs, Inc. DBA Admiral (handnorth.com)", + "handsomehose.com": "Leven Labs, Inc. DBA Admiral (handsomehose.com)", + "handsomeindustry.com": "Leven Labs, Inc. DBA Admiral (handsomeindustry.com)", + "handsomelyhealth.com": "Leven Labs, Inc. DBA Admiral (handsomelyhealth.com)", + "handsomelythumb.com": "Leven Labs, Inc. DBA Admiral (handsomelythumb.com)", + "handsomeyam.com": "Leven Labs, Inc. DBA Admiral (handsomeyam.com)", + "handyfield.com": "Leven Labs, Inc. DBA Admiral (handyfield.com)", + "handyfireman.com": "Leven Labs, Inc. DBA Admiral (handyfireman.com)", + "handyincrease.com": "Leven Labs, Inc. DBA Admiral (handyincrease.com)", + "haplesshydrant.com": "Leven Labs, Inc. DBA Admiral (haplesshydrant.com)", + "haplessland.com": "Leven Labs, Inc. DBA Admiral (haplessland.com)", + "happysponge.com": "Leven Labs, Inc. DBA Admiral (happysponge.com)", + "harborcaption.com": "Leven Labs, Inc. DBA Admiral (harborcaption.com)", + "harborcub.com": "Leven Labs, Inc. DBA Admiral (harborcub.com)", + "harmonicbamboo.com": "Leven Labs, Inc. DBA Admiral (harmonicbamboo.com)", + "harmonywing.com": "Leven Labs, Inc. DBA Admiral (harmonywing.com)", + "headydegree.com": "Leven Labs, Inc. DBA Admiral (headydegree.com)", + "headyhook.com": "Leven Labs, Inc. DBA Admiral (headyhook.com)", + "healflowers.com": "Leven Labs, Inc. DBA Admiral (healflowers.com)", + "hearinglizards.com": "Leven Labs, Inc. DBA Admiral (hearinglizards.com)", + "heartbreakingmind.com": "Leven Labs, Inc. DBA Admiral (heartbreakingmind.com)", + "hearthorn.com": "Leven Labs, Inc. DBA Admiral (hearthorn.com)", + "heavydetail.com": "Leven Labs, Inc. DBA Admiral (heavydetail.com)", + "heavyplayground.com": "Leven Labs, Inc. DBA Admiral (heavyplayground.com)", + "helpcollar.com": "Leven Labs, Inc. DBA Admiral (helpcollar.com)", + "helpflame.com": "Leven Labs, Inc. DBA Admiral (helpflame.com)", + "hfc195b.com": "Leven Labs, Inc. DBA Admiral (hfc195b.com)", + "highfalutinbox.com": "Leven Labs, Inc. DBA Admiral (highfalutinbox.com)", + "highfalutinhoney.com": "Leven Labs, Inc. DBA Admiral (highfalutinhoney.com)", + "hilariouszinc.com": "Leven Labs, Inc. DBA Admiral (hilariouszinc.com)", + "historicalbeam.com": "Leven Labs, Inc. DBA Admiral (historicalbeam.com)", + "hocgeese.com": "Leven Labs, Inc. DBA Admiral (hocgeese.com)", + "hollowafterthought.com": "Leven Labs, Inc. DBA Admiral (hollowafterthought.com)", + "homelycrown.com": "Leven Labs, Inc. DBA Admiral (homelycrown.com)", + "homeslick.com": "Leven Labs, Inc. DBA Admiral (homeslick.com)", + "honeybulb.com": "Leven Labs, Inc. DBA Admiral (honeybulb.com)", + "honeywhipped.com": "Leven Labs, Inc. DBA Admiral (honeywhipped.com)", + "honorablehydrant.com": "Leven Labs, Inc. DBA Admiral (honorablehydrant.com)", + "honorableland.com": "Leven Labs, Inc. DBA Admiral (honorableland.com)", + "horsenectar.com": "Leven Labs, Inc. DBA Admiral (horsenectar.com)", + "hospitablehall.com": "Leven Labs, Inc. DBA Admiral (hospitablehall.com)", + "hospitablehat.com": "Leven Labs, Inc. DBA Admiral (hospitablehat.com)", + "howdyinbox.com": "Leven Labs, Inc. DBA Admiral (howdyinbox.com)", + "humdrumhobbies.com": "Leven Labs, Inc. DBA Admiral (humdrumhobbies.com)", + "humdrumtouch.com": "Leven Labs, Inc. DBA Admiral (humdrumtouch.com)", + "hurtgrape.com": "Leven Labs, Inc. DBA Admiral (hurtgrape.com)", + "hypnoticwound.com": "Leven Labs, Inc. DBA Admiral (hypnoticwound.com)", + "hystericalcloth.com": "Leven Labs, Inc. DBA Admiral (hystericalcloth.com)", + "hystericalfinger.com": "Leven Labs, Inc. DBA Admiral (hystericalfinger.com)", + "i9w8p.pw": "Leven Labs, Inc. DBA Admiral (i9w8p.pw)", + "idolscene.com": "Leven Labs, Inc. DBA Admiral (idolscene.com)", + "idyllicjazz.com": "Leven Labs, Inc. DBA Admiral (idyllicjazz.com)", + "illinvention.com": "Leven Labs, Inc. DBA Admiral (illinvention.com)", + "illustriousoatmeal.com": "Leven Labs, Inc. DBA Admiral (illustriousoatmeal.com)", + "immensehoney.com": "Leven Labs, Inc. DBA Admiral (immensehoney.com)", + "imminentshake.com": "Leven Labs, Inc. DBA Admiral (imminentshake.com)", + "importantmeat.com": "Leven Labs, Inc. DBA Admiral (importantmeat.com)", + "importedincrease.com": "Leven Labs, Inc. DBA Admiral (importedincrease.com)", + "importedinsect.com": "Leven Labs, Inc. DBA Admiral (importedinsect.com)", + "importlocate.com": "Leven Labs, Inc. DBA Admiral (importlocate.com)", + "impossibleexpansion.com": "Leven Labs, Inc. DBA Admiral (impossibleexpansion.com)", + "impossiblemove.com": "Leven Labs, Inc. DBA Admiral (impossiblemove.com)", + "impulsejewel.com": "Leven Labs, Inc. DBA Admiral (impulsejewel.com)", + "impulselumber.com": "Leven Labs, Inc. DBA Admiral (impulselumber.com)", + "incomehippo.com": "Leven Labs, Inc. DBA Admiral (incomehippo.com)", + "incompetentjoke.com": "Leven Labs, Inc. DBA Admiral (incompetentjoke.com)", + "inconclusiveaction.com": "Leven Labs, Inc. DBA Admiral (inconclusiveaction.com)", + "infamousstream.com": "Leven Labs, Inc. DBA Admiral (infamousstream.com)", + "innocentlamp.com": "Leven Labs, Inc. DBA Admiral (innocentlamp.com)", + "innocentwax.com": "Leven Labs, Inc. DBA Admiral (innocentwax.com)", + "inputicicle.com": "Leven Labs, Inc. DBA Admiral (inputicicle.com)", + "inquisitiveice.com": "Leven Labs, Inc. DBA Admiral (inquisitiveice.com)", + "inquisitiveinvention.com": "Leven Labs, Inc. DBA Admiral (inquisitiveinvention.com)", + "intelligentscissors.com": "Leven Labs, Inc. DBA Admiral (intelligentscissors.com)", + "intentlens.com": "Leven Labs, Inc. DBA Admiral (intentlens.com)", + "interestdust.com": "Leven Labs, Inc. DBA Admiral (interestdust.com)", + "internalcondition.com": "Leven Labs, Inc. DBA Admiral (internalcondition.com)", + "internalsink.com": "Leven Labs, Inc. DBA Admiral (internalsink.com)", + "iotapool.com": "Leven Labs, Inc. DBA Admiral (iotapool.com)", + "iridescentdusk.com": "Leven Labs, Inc. DBA Admiral (iridescentdusk.com)", + "iridescentvista.com": "Leven Labs, Inc. DBA Admiral (iridescentvista.com)", + "irritatingfog.com": "Leven Labs, Inc. DBA Admiral (irritatingfog.com)", + "itemslice.com": "Leven Labs, Inc. DBA Admiral (itemslice.com)", + "ivykiosk.com": "Leven Labs, Inc. DBA Admiral (ivykiosk.com)", + "j93557g.com": "Leven Labs, Inc. DBA Admiral (j93557g.com)", + "jadeitite.com": "Leven Labs, Inc. DBA Admiral (jadeitite.com)", + "jaderooster.com": "Leven Labs, Inc. DBA Admiral (jaderooster.com)", + "jailbulb.com": "Leven Labs, Inc. DBA Admiral (jailbulb.com)", + "joblessdrum.com": "Leven Labs, Inc. DBA Admiral (joblessdrum.com)", + "jollylens.com": "Leven Labs, Inc. DBA Admiral (jollylens.com)", + "joyfulkeen.com": "Leven Labs, Inc. DBA Admiral (joyfulkeen.com)", + "joyfulvibe.com": "Leven Labs, Inc. DBA Admiral (joyfulvibe.com)", + "joyoussurprise.com": "Leven Labs, Inc. DBA Admiral (joyoussurprise.com)", + "jubilantaura.com": "Leven Labs, Inc. DBA Admiral (jubilantaura.com)", + "jubilantcanyon.com": "Leven Labs, Inc. DBA Admiral (jubilantcanyon.com)", + "jubilantcascade.com": "Leven Labs, Inc. DBA Admiral (jubilantcascade.com)", + "jubilantglimmer.com": "Leven Labs, Inc. DBA Admiral (jubilantglimmer.com)", + "jubilanthush.com": "Leven Labs, Inc. DBA Admiral (jubilanthush.com)", + "jubilantlagoon.com": "Leven Labs, Inc. DBA Admiral (jubilantlagoon.com)", + "jubilantpinnacle.com": "Leven Labs, Inc. DBA Admiral (jubilantpinnacle.com)", + "jubilanttempest.com": "Leven Labs, Inc. DBA Admiral (jubilanttempest.com)", + "jubilantvista.com": "Leven Labs, Inc. DBA Admiral (jubilantvista.com)", + "jubilantwhisper.com": "Leven Labs, Inc. DBA Admiral (jubilantwhisper.com)", + "juicebard.com": "Leven Labs, Inc. DBA Admiral (juicebard.com)", + "juiceblocks.com": "Leven Labs, Inc. DBA Admiral (juiceblocks.com)", + "justicejudo.com": "Leven Labs, Inc. DBA Admiral (justicejudo.com)", + "justwebcards.com": "Leven Labs, Inc. DBA Admiral (justwebcards.com)", + "k54nw.pw": "Leven Labs, Inc. DBA Admiral (k54nw.pw)", + "kaputquill.com": "Leven Labs, Inc. DBA Admiral (kaputquill.com)", + "keenquill.com": "Leven Labs, Inc. DBA Admiral (keenquill.com)", + "kibbleandbytes.com": "Leven Labs, Inc. DBA Admiral (kibbleandbytes.com)", + "kindhush.com": "Leven Labs, Inc. DBA Admiral (kindhush.com)", + "kitesquirrel.com": "Leven Labs, Inc. DBA Admiral (kitesquirrel.com)", + "knitstamp.com": "Leven Labs, Inc. DBA Admiral (knitstamp.com)", + "knottyswing.com": "Leven Labs, Inc. DBA Admiral (knottyswing.com)", + "laboredlight.com": "Leven Labs, Inc. DBA Admiral (laboredlight.com)", + "laboredlocket.com": "Leven Labs, Inc. DBA Admiral (laboredlocket.com)", + "lameletters.com": "Leven Labs, Inc. DBA Admiral (lameletters.com)", + "lamplow.com": "Leven Labs, Inc. DBA Admiral (lamplow.com)", + "largebrass.com": "Leven Labs, Inc. DBA Admiral (largebrass.com)", + "lasttaco.com": "Leven Labs, Inc. DBA Admiral (lasttaco.com)", + "laughablelizards.com": "Leven Labs, Inc. DBA Admiral (laughablelizards.com)", + "leaplunchroom.com": "Leven Labs, Inc. DBA Admiral (leaplunchroom.com)", + "ledlocket.com": "Leven Labs, Inc. DBA Admiral (ledlocket.com)", + "leftliquid.com": "Leven Labs, Inc. DBA Admiral (leftliquid.com)", + "lemonpackage.com": "Leven Labs, Inc. DBA Admiral (lemonpackage.com)", + "lemonsandjoy.com": "Leven Labs, Inc. DBA Admiral (lemonsandjoy.com)", + "liftedknowledge.com": "Leven Labs, Inc. DBA Admiral (liftedknowledge.com)", + "lightenafterthought.com": "Leven Labs, Inc. DBA Admiral (lightenafterthought.com)", + "lighttalon.com": "Leven Labs, Inc. DBA Admiral (lighttalon.com)", + "livelumber.com": "Leven Labs, Inc. DBA Admiral (livelumber.com)", + "livelylaugh.com": "Leven Labs, Inc. DBA Admiral (livelylaugh.com)", + "livelyreward.com": "Leven Labs, Inc. DBA Admiral (livelyreward.com)", + "livingsleet.com": "Leven Labs, Inc. DBA Admiral (livingsleet.com)", + "lizardslaugh.com": "Leven Labs, Inc. DBA Admiral (lizardslaugh.com)", + "loadsurprise.com": "Leven Labs, Inc. DBA Admiral (loadsurprise.com)", + "lonelyflavor.com": "Leven Labs, Inc. DBA Admiral (lonelyflavor.com)", + "longingtrees.com": "Leven Labs, Inc. DBA Admiral (longingtrees.com)", + "looseloaf.com": "Leven Labs, Inc. DBA Admiral (looseloaf.com)", + "lorenzourban.com": "Leven Labs, Inc. DBA Admiral (lorenzourban.com)", + "losslace.com": "Leven Labs, Inc. DBA Admiral (losslace.com)", + "loudlunch.com": "Leven Labs, Inc. DBA Admiral (loudlunch.com)", + "lovelydrum.com": "Leven Labs, Inc. DBA Admiral (lovelydrum.com)", + "loveseashore.com": "Leven Labs, Inc. DBA Admiral (loveseashore.com)", + "lp3tdqle.com": "Leven Labs, Inc. DBA Admiral (lp3tdqle.com)", + "luckyzombie.com": "Leven Labs, Inc. DBA Admiral (luckyzombie.com)", + "ludicrousarch.com": "Leven Labs, Inc. DBA Admiral (ludicrousarch.com)", + "lumberamount.com": "Leven Labs, Inc. DBA Admiral (lumberamount.com)", + "luminousboulevard.com": "Leven Labs, Inc. DBA Admiral (luminousboulevard.com)", + "luminouscatalyst.com": "Leven Labs, Inc. DBA Admiral (luminouscatalyst.com)", + "luminoussculptor.com": "Leven Labs, Inc. DBA Admiral (luminoussculptor.com)", + "lumpygnome.com": "Leven Labs, Inc. DBA Admiral (lumpygnome.com)", + "lumpylumber.com": "Leven Labs, Inc. DBA Admiral (lumpylumber.com)", + "lunchroomlock.com": "Leven Labs, Inc. DBA Admiral (lunchroomlock.com)", + "lustroushaven.com": "Leven Labs, Inc. DBA Admiral (lustroushaven.com)", + "lyricshook.com": "Leven Labs, Inc. DBA Admiral (lyricshook.com)", + "maddeningpowder.com": "Leven Labs, Inc. DBA Admiral (maddeningpowder.com)", + "madebyintent.com": "Leven Labs, Inc. DBA Admiral (madebyintent.com)", + "magicaljoin.com": "Leven Labs, Inc. DBA Admiral (magicaljoin.com)", + "magiczenith.com": "Leven Labs, Inc. DBA Admiral (magiczenith.com)", + "magnetairport.com": "Leven Labs, Inc. DBA Admiral (magnetairport.com)", + "majesticmountainrange.com": "Leven Labs, Inc. DBA Admiral (majesticmountainrange.com)", + "majesticwaterscape.com": "Leven Labs, Inc. DBA Admiral (majesticwaterscape.com)", + "majesticwilderness.com": "Leven Labs, Inc. DBA Admiral (majesticwilderness.com)", + "maliciousmusic.com": "Leven Labs, Inc. DBA Admiral (maliciousmusic.com)", + "managedpush.com": "Leven Labs, Inc. DBA Admiral (managedpush.com)", + "mantrafox.com": "Leven Labs, Inc. DBA Admiral (mantrafox.com)", + "mapbasin.com": "Leven Labs, Inc. DBA Admiral (mapbasin.com)", + "marblediscussion.com": "Leven Labs, Inc. DBA Admiral (marblediscussion.com)", + "markahouse.com": "Leven Labs, Inc. DBA Admiral (markahouse.com)", + "markedmeasure.com": "Leven Labs, Inc. DBA Admiral (markedmeasure.com)", + "marketspiders.com": "Leven Labs, Inc. DBA Admiral (marketspiders.com)", + "marriedbelief.com": "Leven Labs, Inc. DBA Admiral (marriedbelief.com)", + "marriedmailbox.com": "Leven Labs, Inc. DBA Admiral (marriedmailbox.com)", + "marriedvalue.com": "Leven Labs, Inc. DBA Admiral (marriedvalue.com)", + "massivemark.com": "Leven Labs, Inc. DBA Admiral (massivemark.com)", + "materialisticmoon.com": "Leven Labs, Inc. DBA Admiral (materialisticmoon.com)", + "materialmilk.com": "Leven Labs, Inc. DBA Admiral (materialmilk.com)", + "materialparcel.com": "Leven Labs, Inc. DBA Admiral (materialparcel.com)", + "materialplayground.com": "Leven Labs, Inc. DBA Admiral (materialplayground.com)", + "meadowlullaby.com": "Leven Labs, Inc. DBA Admiral (meadowlullaby.com)", + "measlymiddle.com": "Leven Labs, Inc. DBA Admiral (measlymiddle.com)", + "meatydime.com": "Leven Labs, Inc. DBA Admiral (meatydime.com)", + "meddleplant.com": "Leven Labs, Inc. DBA Admiral (meddleplant.com)", + "mediatescarf.com": "Leven Labs, Inc. DBA Admiral (mediatescarf.com)", + "mediumshort.com": "Leven Labs, Inc. DBA Admiral (mediumshort.com)", + "mellowhush.com": "Leven Labs, Inc. DBA Admiral (mellowhush.com)", + "mellowmailbox.com": "Leven Labs, Inc. DBA Admiral (mellowmailbox.com)", + "melodiouschorus.com": "Leven Labs, Inc. DBA Admiral (melodiouschorus.com)", + "melodiouscomposition.com": "Leven Labs, Inc. DBA Admiral (melodiouscomposition.com)", + "melodioussymphony.com": "Leven Labs, Inc. DBA Admiral (melodioussymphony.com)", + "meltmilk.com": "Leven Labs, Inc. DBA Admiral (meltmilk.com)", + "memopilot.com": "Leven Labs, Inc. DBA Admiral (memopilot.com)", + "memorizematch.com": "Leven Labs, Inc. DBA Admiral (memorizematch.com)", + "memorizeneck.com": "Leven Labs, Inc. DBA Admiral (memorizeneck.com)", + "mentorsticks.com": "Leven Labs, Inc. DBA Admiral (mentorsticks.com)", + "meremark.com": "Leven Labs, Inc. DBA Admiral (meremark.com)", + "merequartz.com": "Leven Labs, Inc. DBA Admiral (merequartz.com)", + "merryopal.com": "Leven Labs, Inc. DBA Admiral (merryopal.com)", + "merryvault.com": "Leven Labs, Inc. DBA Admiral (merryvault.com)", + "messagenovice.com": "Leven Labs, Inc. DBA Admiral (messagenovice.com)", + "messyoranges.com": "Leven Labs, Inc. DBA Admiral (messyoranges.com)", + "metajaws.com": "Leven Labs, Inc. DBA Admiral (metajaws.com)", + "mightyspiders.com": "Leven Labs, Inc. DBA Admiral (mightyspiders.com)", + "mimosamajor.com": "Leven Labs, Inc. DBA Admiral (mimosamajor.com)", + "mindfulgem.com": "Leven Labs, Inc. DBA Admiral (mindfulgem.com)", + "minorcattle.com": "Leven Labs, Inc. DBA Admiral (minorcattle.com)", + "minusmental.com": "Leven Labs, Inc. DBA Admiral (minusmental.com)", + "minuteburst.com": "Leven Labs, Inc. DBA Admiral (minuteburst.com)", + "miscreantmoon.com": "Leven Labs, Inc. DBA Admiral (miscreantmoon.com)", + "mistyhorizon.com": "Leven Labs, Inc. DBA Admiral (mistyhorizon.com)", + "mittencattle.com": "Leven Labs, Inc. DBA Admiral (mittencattle.com)", + "mixedreading.com": "Leven Labs, Inc. DBA Admiral (mixedreading.com)", + "modularmental.com": "Leven Labs, Inc. DBA Admiral (modularmental.com)", + "monacobeatles.com": "Leven Labs, Inc. DBA Admiral (monacobeatles.com)", + "moorshoes.com": "Leven Labs, Inc. DBA Admiral (moorshoes.com)", + "morefriendly.com": "Leven Labs, Inc. DBA Admiral (morefriendly.com)", + "motionflowers.com": "Leven Labs, Inc. DBA Admiral (motionflowers.com)", + "motionlessbag.com": "Leven Labs, Inc. DBA Admiral (motionlessbag.com)", + "motionlessbelief.com": "Leven Labs, Inc. DBA Admiral (motionlessbelief.com)", + "motionlessmeeting.com": "Leven Labs, Inc. DBA Admiral (motionlessmeeting.com)", + "movemeal.com": "Leven Labs, Inc. DBA Admiral (movemeal.com)", + "muddledaftermath.com": "Leven Labs, Inc. DBA Admiral (muddledaftermath.com)", + "muddledmemory.com": "Leven Labs, Inc. DBA Admiral (muddledmemory.com)", + "mundanenail.com": "Leven Labs, Inc. DBA Admiral (mundanenail.com)", + "mundanepollution.com": "Leven Labs, Inc. DBA Admiral (mundanepollution.com)", + "mushywaste.com": "Leven Labs, Inc. DBA Admiral (mushywaste.com)", + "muteknife.com": "Leven Labs, Inc. DBA Admiral (muteknife.com)", + "mutemailbox.com": "Leven Labs, Inc. DBA Admiral (mutemailbox.com)", + "mysticalagoon.com": "Leven Labs, Inc. DBA Admiral (mysticalagoon.com)", + "naivestatement.com": "Leven Labs, Inc. DBA Admiral (naivestatement.com)", + "nappyattack.com": "Leven Labs, Inc. DBA Admiral (nappyattack.com)", + "nappyneck.com": "Leven Labs, Inc. DBA Admiral (nappyneck.com)", + "neatshade.com": "Leven Labs, Inc. DBA Admiral (neatshade.com)", + "nebulacrescent.com": "Leven Labs, Inc. DBA Admiral (nebulacrescent.com)", + "nebulajubilee.com": "Leven Labs, Inc. DBA Admiral (nebulajubilee.com)", + "nebulousamusement.com": "Leven Labs, Inc. DBA Admiral (nebulousamusement.com)", + "nebulousgarden.com": "Leven Labs, Inc. DBA Admiral (nebulousgarden.com)", + "nebulousquasar.com": "Leven Labs, Inc. DBA Admiral (nebulousquasar.com)", + "nebulousripple.com": "Leven Labs, Inc. DBA Admiral (nebulousripple.com)", + "needlessnorth.com": "Leven Labs, Inc. DBA Admiral (needlessnorth.com)", + "needyneedle.com": "Leven Labs, Inc. DBA Admiral (needyneedle.com)", + "neighborlywatch.com": "Leven Labs, Inc. DBA Admiral (neighborlywatch.com)", + "nervoussummer.com": "Leven Labs, Inc. DBA Admiral (nervoussummer.com)", + "newsletterjet.com": "Leven Labs, Inc. DBA Admiral (newsletterjet.com)", + "niftygraphs.com": "Leven Labs, Inc. DBA Admiral (niftygraphs.com)", + "niftyhospital.com": "Leven Labs, Inc. DBA Admiral (niftyhospital.com)", + "niftyjelly.com": "Leven Labs, Inc. DBA Admiral (niftyjelly.com)", + "niftyreports.com": "Leven Labs, Inc. DBA Admiral (niftyreports.com)", + "nightwound.com": "Leven Labs, Inc. DBA Admiral (nightwound.com)", + "nimbleplot.com": "Leven Labs, Inc. DBA Admiral (nimbleplot.com)", + "nocturnalloom.com": "Leven Labs, Inc. DBA Admiral (nocturnalloom.com)", + "nocturnalmystique.com": "Leven Labs, Inc. DBA Admiral (nocturnalmystique.com)", + "noiselessplough.com": "Leven Labs, Inc. DBA Admiral (noiselessplough.com)", + "nonchalantnerve.com": "Leven Labs, Inc. DBA Admiral (nonchalantnerve.com)", + "nondescriptcrowd.com": "Leven Labs, Inc. DBA Admiral (nondescriptcrowd.com)", + "nondescriptnote.com": "Leven Labs, Inc. DBA Admiral (nondescriptnote.com)", + "nondescriptstocking.com": "Leven Labs, Inc. DBA Admiral (nondescriptstocking.com)", + "nostalgicknot.com": "Leven Labs, Inc. DBA Admiral (nostalgicknot.com)", + "nostalgicneed.com": "Leven Labs, Inc. DBA Admiral (nostalgicneed.com)", + "notifyglass.com": "Leven Labs, Inc. DBA Admiral (notifyglass.com)", + "nudgeduck.com": "Leven Labs, Inc. DBA Admiral (nudgeduck.com)", + "nullnorth.com": "Leven Labs, Inc. DBA Admiral (nullnorth.com)", + "numberlessring.com": "Leven Labs, Inc. DBA Admiral (numberlessring.com)", + "numerousnest.com": "Leven Labs, Inc. DBA Admiral (numerousnest.com)", + "nutritiousbean.com": "Leven Labs, Inc. DBA Admiral (nutritiousbean.com)", + "nuttyorganization.com": "Leven Labs, Inc. DBA Admiral (nuttyorganization.com)", + "oafishchance.com": "Leven Labs, Inc. DBA Admiral (oafishchance.com)", + "oafishobservation.com": "Leven Labs, Inc. DBA Admiral (oafishobservation.com)", + "obscenesidewalk.com": "Leven Labs, Inc. DBA Admiral (obscenesidewalk.com)", + "observantice.com": "Leven Labs, Inc. DBA Admiral (observantice.com)", + "oldfashionedoffer.com": "Leven Labs, Inc. DBA Admiral (oldfashionedoffer.com)", + "omgthink.com": "Leven Labs, Inc. DBA Admiral (omgthink.com)", + "omniscientfeeling.com": "Leven Labs, Inc. DBA Admiral (omniscientfeeling.com)", + "onlywoofs.com": "Leven Labs, Inc. DBA Admiral (onlywoofs.com)", + "opalquill.com": "Leven Labs, Inc. DBA Admiral (opalquill.com)", + "operationchicken.com": "Leven Labs, Inc. DBA Admiral (operationchicken.com)", + "operationnail.com": "Leven Labs, Inc. DBA Admiral (operationnail.com)", + "oppositeoperation.com": "Leven Labs, Inc. DBA Admiral (oppositeoperation.com)", + "optimallimit.com": "Leven Labs, Inc. DBA Admiral (optimallimit.com)", + "opulentsylvan.com": "Leven Labs, Inc. DBA Admiral (opulentsylvan.com)", + "orientedargument.com": "Leven Labs, Inc. DBA Admiral (orientedargument.com)", + "orionember.com": "Leven Labs, Inc. DBA Admiral (orionember.com)", + "ourblogthing.com": "Leven Labs, Inc. DBA Admiral (ourblogthing.com)", + "outdoorthingy.com": "Leven Labs, Inc. DBA Admiral (outdoorthingy.com)", + "outgoinggiraffe.com": "Leven Labs, Inc. DBA Admiral (outgoinggiraffe.com)", + "outsidevibe.com": "Leven Labs, Inc. DBA Admiral (outsidevibe.com)", + "outstandingincome.com": "Leven Labs, Inc. DBA Admiral (outstandingincome.com)", + "outstandingsnails.com": "Leven Labs, Inc. DBA Admiral (outstandingsnails.com)", + "overconfidentfood.com": "Leven Labs, Inc. DBA Admiral (overconfidentfood.com)", + "overkick.com": "Leven Labs, Inc. DBA Admiral (overkick.com)", + "overratedchalk.com": "Leven Labs, Inc. DBA Admiral (overratedchalk.com)", + "owlsr.us": "Leven Labs, Inc. DBA Admiral (owlsr.us)", + "oxygenfuse.com": "Leven Labs, Inc. DBA Admiral (oxygenfuse.com)", + "pailcrime.com": "Leven Labs, Inc. DBA Admiral (pailcrime.com)", + "pailpatch.com": "Leven Labs, Inc. DBA Admiral (pailpatch.com)", + "painstakingpickle.com": "Leven Labs, Inc. DBA Admiral (painstakingpickle.com)", + "paintpear.com": "Leven Labs, Inc. DBA Admiral (paintpear.com)", + "paleleaf.com": "Leven Labs, Inc. DBA Admiral (paleleaf.com)", + "pamelarandom.com": "Leven Labs, Inc. DBA Admiral (pamelarandom.com)", + "panickycurtain.com": "Leven Labs, Inc. DBA Admiral (panickycurtain.com)", + "panickypancake.com": "Leven Labs, Inc. DBA Admiral (panickypancake.com)", + "panoramicplane.com": "Leven Labs, Inc. DBA Admiral (panoramicplane.com)", + "parallelbulb.com": "Leven Labs, Inc. DBA Admiral (parallelbulb.com)", + "parchedsofa.com": "Leven Labs, Inc. DBA Admiral (parchedsofa.com)", + "pardonpopular.com": "Leven Labs, Inc. DBA Admiral (pardonpopular.com)", + "parentpicture.com": "Leven Labs, Inc. DBA Admiral (parentpicture.com)", + "parsimoniouspolice.com": "Leven Labs, Inc. DBA Admiral (parsimoniouspolice.com)", + "partplanes.com": "Leven Labs, Inc. DBA Admiral (partplanes.com)", + "passivepolo.com": "Leven Labs, Inc. DBA Admiral (passivepolo.com)", + "pastoralroad.com": "Leven Labs, Inc. DBA Admiral (pastoralroad.com)", + "pawsnug.com": "Leven Labs, Inc. DBA Admiral (pawsnug.com)", + "peacefullimit.com": "Leven Labs, Inc. DBA Admiral (peacefullimit.com)", + "pedromister.com": "Leven Labs, Inc. DBA Admiral (pedromister.com)", + "pedropanther.com": "Leven Labs, Inc. DBA Admiral (pedropanther.com)", + "perceivequarter.com": "Leven Labs, Inc. DBA Admiral (perceivequarter.com)", + "perkyjade.com": "Leven Labs, Inc. DBA Admiral (perkyjade.com)", + "petiteumbrella.com": "Leven Labs, Inc. DBA Admiral (petiteumbrella.com)", + "philippinch.com": "Leven Labs, Inc. DBA Admiral (philippinch.com)", + "photographpan.com": "Leven Labs, Inc. DBA Admiral (photographpan.com)", + "piespower.com": "Leven Labs, Inc. DBA Admiral (piespower.com)", + "pinchsquirrel.com": "Leven Labs, Inc. DBA Admiral (pinchsquirrel.com)", + "pinkbonanza.com": "Leven Labs, Inc. DBA Admiral (pinkbonanza.com)", + "piquantgrove.com": "Leven Labs, Inc. DBA Admiral (piquantgrove.com)", + "piquantmeadow.com": "Leven Labs, Inc. DBA Admiral (piquantmeadow.com)", + "piquantpigs.com": "Leven Labs, Inc. DBA Admiral (piquantpigs.com)", + "piquantprice.com": "Leven Labs, Inc. DBA Admiral (piquantprice.com)", + "piquantvortex.com": "Leven Labs, Inc. DBA Admiral (piquantvortex.com)", + "pixeledhub.com": "Leven Labs, Inc. DBA Admiral (pixeledhub.com)", + "pizzasnut.com": "Leven Labs, Inc. DBA Admiral (pizzasnut.com)", + "placeframe.com": "Leven Labs, Inc. DBA Admiral (placeframe.com)", + "placidactivity.com": "Leven Labs, Inc. DBA Admiral (placidactivity.com)", + "placidperson.com": "Leven Labs, Inc. DBA Admiral (placidperson.com)", + "planebasin.com": "Leven Labs, Inc. DBA Admiral (planebasin.com)", + "plantdigestion.com": "Leven Labs, Inc. DBA Admiral (plantdigestion.com)", + "playfulriver.com": "Leven Labs, Inc. DBA Admiral (playfulriver.com)", + "pleasantpump.com": "Leven Labs, Inc. DBA Admiral (pleasantpump.com)", + "plotparent.com": "Leven Labs, Inc. DBA Admiral (plotparent.com)", + "plotrabbit.com": "Leven Labs, Inc. DBA Admiral (plotrabbit.com)", + "pluckypocket.com": "Leven Labs, Inc. DBA Admiral (pluckypocket.com)", + "pluckyzone.com": "Leven Labs, Inc. DBA Admiral (pluckyzone.com)", + "pocketfaucet.com": "Leven Labs, Inc. DBA Admiral (pocketfaucet.com)", + "poemprompt.com": "Leven Labs, Inc. DBA Admiral (poemprompt.com)", + "poeticpackage.com": "Leven Labs, Inc. DBA Admiral (poeticpackage.com)", + "pointdigestion.com": "Leven Labs, Inc. DBA Admiral (pointdigestion.com)", + "pointlesshour.com": "Leven Labs, Inc. DBA Admiral (pointlesshour.com)", + "pointlesspocket.com": "Leven Labs, Inc. DBA Admiral (pointlesspocket.com)", + "pointlessprofit.com": "Leven Labs, Inc. DBA Admiral (pointlessprofit.com)", + "pointlessrifle.com": "Leven Labs, Inc. DBA Admiral (pointlessrifle.com)", + "poisedfuel.com": "Leven Labs, Inc. DBA Admiral (poisedfuel.com)", + "polarismagnet.com": "Leven Labs, Inc. DBA Admiral (polarismagnet.com)", + "polishedcrescent.com": "Leven Labs, Inc. DBA Admiral (polishedcrescent.com)", + "polishedfolly.com": "Leven Labs, Inc. DBA Admiral (polishedfolly.com)", + "politeplanes.com": "Leven Labs, Inc. DBA Admiral (politeplanes.com)", + "politicalflip.com": "Leven Labs, Inc. DBA Admiral (politicalflip.com)", + "politicalporter.com": "Leven Labs, Inc. DBA Admiral (politicalporter.com)", + "popplantation.com": "Leven Labs, Inc. DBA Admiral (popplantation.com)", + "possibleboats.com": "Leven Labs, Inc. DBA Admiral (possibleboats.com)", + "possiblepencil.com": "Leven Labs, Inc. DBA Admiral (possiblepencil.com)", + "potatoinvention.com": "Leven Labs, Inc. DBA Admiral (potatoinvention.com)", + "powderjourney.com": "Leven Labs, Inc. DBA Admiral (powderjourney.com)", + "powerfulblends.com": "Leven Labs, Inc. DBA Admiral (powerfulblends.com)", + "powerfulcopper.com": "Leven Labs, Inc. DBA Admiral (powerfulcopper.com)", + "preciousplanes.com": "Leven Labs, Inc. DBA Admiral (preciousplanes.com)", + "predictplate.com": "Leven Labs, Inc. DBA Admiral (predictplate.com)", + "prefixpatriot.com": "Leven Labs, Inc. DBA Admiral (prefixpatriot.com)", + "prepareplanes.com": "Leven Labs, Inc. DBA Admiral (prepareplanes.com)", + "presetrabbits.com": "Leven Labs, Inc. DBA Admiral (presetrabbits.com)", + "previousplayground.com": "Leven Labs, Inc. DBA Admiral (previousplayground.com)", + "previouspotato.com": "Leven Labs, Inc. DBA Admiral (previouspotato.com)", + "priceypies.com": "Leven Labs, Inc. DBA Admiral (priceypies.com)", + "pricklydebt.com": "Leven Labs, Inc. DBA Admiral (pricklydebt.com)", + "pricklypollution.com": "Leven Labs, Inc. DBA Admiral (pricklypollution.com)", + "pristinegale.com": "Leven Labs, Inc. DBA Admiral (pristinegale.com)", + "probablepartner.com": "Leven Labs, Inc. DBA Admiral (probablepartner.com)", + "processplantation.com": "Leven Labs, Inc. DBA Admiral (processplantation.com)", + "producepickle.com": "Leven Labs, Inc. DBA Admiral (producepickle.com)", + "productsurfer.com": "Leven Labs, Inc. DBA Admiral (productsurfer.com)", + "profitrumour.com": "Leven Labs, Inc. DBA Admiral (profitrumour.com)", + "profusesupport.com": "Leven Labs, Inc. DBA Admiral (profusesupport.com)", + "promiseair.com": "Leven Labs, Inc. DBA Admiral (promiseair.com)", + "proofconvert.com": "Leven Labs, Inc. DBA Admiral (proofconvert.com)", + "propertypotato.com": "Leven Labs, Inc. DBA Admiral (propertypotato.com)", + "protestcopy.com": "Leven Labs, Inc. DBA Admiral (protestcopy.com)", + "psychedelicarithmetic.com": "Leven Labs, Inc. DBA Admiral (psychedelicarithmetic.com)", + "psychedelicchess.com": "Leven Labs, Inc. DBA Admiral (psychedelicchess.com)", + "publicsofa.com": "Leven Labs, Inc. DBA Admiral (publicsofa.com)", + "puffyloss.com": "Leven Labs, Inc. DBA Admiral (puffyloss.com)", + "puffypaste.com": "Leven Labs, Inc. DBA Admiral (puffypaste.com)", + "puffypull.com": "Leven Labs, Inc. DBA Admiral (puffypull.com)", + "puffypurpose.com": "Leven Labs, Inc. DBA Admiral (puffypurpose.com)", + "pulsatingmeadow.com": "Leven Labs, Inc. DBA Admiral (pulsatingmeadow.com)", + "pumpedpancake.com": "Leven Labs, Inc. DBA Admiral (pumpedpancake.com)", + "pumpedpurpose.com": "Leven Labs, Inc. DBA Admiral (pumpedpurpose.com)", + "punyplant.com": "Leven Labs, Inc. DBA Admiral (punyplant.com)", + "puppytooth.com": "Leven Labs, Inc. DBA Admiral (puppytooth.com)", + "purposepipe.com": "Leven Labs, Inc. DBA Admiral (purposepipe.com)", + "quacksquirrel.com": "Leven Labs, Inc. DBA Admiral (quacksquirrel.com)", + "quaintcan.com": "Leven Labs, Inc. DBA Admiral (quaintcan.com)", + "quaintlake.com": "Leven Labs, Inc. DBA Admiral (quaintlake.com)", + "quantumlagoon.com": "Leven Labs, Inc. DBA Admiral (quantumlagoon.com)", + "quantumshine.com": "Leven Labs, Inc. DBA Admiral (quantumshine.com)", + "queenskart.com": "Leven Labs, Inc. DBA Admiral (queenskart.com)", + "quietknowledge.com": "Leven Labs, Inc. DBA Admiral (quietknowledge.com)", + "quillkick.com": "Leven Labs, Inc. DBA Admiral (quillkick.com)", + "quirkybliss.com": "Leven Labs, Inc. DBA Admiral (quirkybliss.com)", + "quirkysugar.com": "Leven Labs, Inc. DBA Admiral (quirkysugar.com)", + "quixoticnebula.com": "Leven Labs, Inc. DBA Admiral (quixoticnebula.com)", + "quizzicalpartner.com": "Leven Labs, Inc. DBA Admiral (quizzicalpartner.com)", + "quizzicalzephyr.com": "Leven Labs, Inc. DBA Admiral (quizzicalzephyr.com)", + "rabbitbreath.com": "Leven Labs, Inc. DBA Admiral (rabbitbreath.com)", + "rabbitrifle.com": "Leven Labs, Inc. DBA Admiral (rabbitrifle.com)", + "radiantcanopy.com": "Leven Labs, Inc. DBA Admiral (radiantcanopy.com)", + "radiantlullaby.com": "Leven Labs, Inc. DBA Admiral (radiantlullaby.com)", + "radiateprose.com": "Leven Labs, Inc. DBA Admiral (radiateprose.com)", + "railwaygiraffe.com": "Leven Labs, Inc. DBA Admiral (railwaygiraffe.com)", + "railwayreason.com": "Leven Labs, Inc. DBA Admiral (railwayreason.com)", + "raintwig.com": "Leven Labs, Inc. DBA Admiral (raintwig.com)", + "rainyhand.com": "Leven Labs, Inc. DBA Admiral (rainyhand.com)", + "rainyrule.com": "Leven Labs, Inc. DBA Admiral (rainyrule.com)", + "rambunctiousflock.com": "Leven Labs, Inc. DBA Admiral (rambunctiousflock.com)", + "rangecake.com": "Leven Labs, Inc. DBA Admiral (rangecake.com)", + "rangeplayground.com": "Leven Labs, Inc. DBA Admiral (rangeplayground.com)", + "raresummer.com": "Leven Labs, Inc. DBA Admiral (raresummer.com)", + "reactjspdf.com": "Leven Labs, Inc. DBA Admiral (reactjspdf.com)", + "readingguilt.com": "Leven Labs, Inc. DBA Admiral (readingguilt.com)", + "readymoon.com": "Leven Labs, Inc. DBA Admiral (readymoon.com)", + "readysnails.com": "Leven Labs, Inc. DBA Admiral (readysnails.com)", + "realizedoor.com": "Leven Labs, Inc. DBA Admiral (realizedoor.com)", + "realizerecess.com": "Leven Labs, Inc. DBA Admiral (realizerecess.com)", + "rebelclover.com": "Leven Labs, Inc. DBA Admiral (rebelclover.com)", + "rebelhen.com": "Leven Labs, Inc. DBA Admiral (rebelhen.com)", + "rebelsubway.com": "Leven Labs, Inc. DBA Admiral (rebelsubway.com)", + "rebelswing.com": "Leven Labs, Inc. DBA Admiral (rebelswing.com)", + "receiptcent.com": "Leven Labs, Inc. DBA Admiral (receiptcent.com)", + "receptiveink.com": "Leven Labs, Inc. DBA Admiral (receptiveink.com)", + "receptivereaction.com": "Leven Labs, Inc. DBA Admiral (receptivereaction.com)", + "recessrain.com": "Leven Labs, Inc. DBA Admiral (recessrain.com)", + "reconditeprison.com": "Leven Labs, Inc. DBA Admiral (reconditeprison.com)", + "reconditerake.com": "Leven Labs, Inc. DBA Admiral (reconditerake.com)", + "reconditerespect.com": "Leven Labs, Inc. DBA Admiral (reconditerespect.com)", + "reflectivestatement.com": "Leven Labs, Inc. DBA Admiral (reflectivestatement.com)", + "refundradar.com": "Leven Labs, Inc. DBA Admiral (refundradar.com)", + "regularplants.com": "Leven Labs, Inc. DBA Admiral (regularplants.com)", + "regulatesleet.com": "Leven Labs, Inc. DBA Admiral (regulatesleet.com)", + "rehabilitatereason.com": "Leven Labs, Inc. DBA Admiral (rehabilitatereason.com)", + "relationrest.com": "Leven Labs, Inc. DBA Admiral (relationrest.com)", + "releasepath.com": "Leven Labs, Inc. DBA Admiral (releasepath.com)", + "reloadphoto.com": "Leven Labs, Inc. DBA Admiral (reloadphoto.com)", + "rememberdiscussion.com": "Leven Labs, Inc. DBA Admiral (rememberdiscussion.com)", + "rentinfinity.com": "Leven Labs, Inc. DBA Admiral (rentinfinity.com)", + "repeatsweater.com": "Leven Labs, Inc. DBA Admiral (repeatsweater.com)", + "replaceroute.com": "Leven Labs, Inc. DBA Admiral (replaceroute.com)", + "resonantbrush.com": "Leven Labs, Inc. DBA Admiral (resonantbrush.com)", + "resonantrock.com": "Leven Labs, Inc. DBA Admiral (resonantrock.com)", + "respectrain.com": "Leven Labs, Inc. DBA Admiral (respectrain.com)", + "resplendentecho.com": "Leven Labs, Inc. DBA Admiral (resplendentecho.com)", + "restrainstorm.com": "Leven Labs, Inc. DBA Admiral (restrainstorm.com)", + "restructureinvention.com": "Leven Labs, Inc. DBA Admiral (restructureinvention.com)", + "retrievemint.com": "Leven Labs, Inc. DBA Admiral (retrievemint.com)", + "rhetoricalactivity.com": "Leven Labs, Inc. DBA Admiral (rhetoricalactivity.com)", + "rhetoricalloss.com": "Leven Labs, Inc. DBA Admiral (rhetoricalloss.com)", + "rhetoricalveil.com": "Leven Labs, Inc. DBA Admiral (rhetoricalveil.com)", + "rhymezebra.com": "Leven Labs, Inc. DBA Admiral (rhymezebra.com)", + "rhythmrule.com": "Leven Labs, Inc. DBA Admiral (rhythmrule.com)", + "richstring.com": "Leven Labs, Inc. DBA Admiral (richstring.com)", + "righteouscrayon.com": "Leven Labs, Inc. DBA Admiral (righteouscrayon.com)", + "rightfulfall.com": "Leven Labs, Inc. DBA Admiral (rightfulfall.com)", + "rigidrobin.com": "Leven Labs, Inc. DBA Admiral (rigidrobin.com)", + "rigidveil.com": "Leven Labs, Inc. DBA Admiral (rigidveil.com)", + "rigorlab.com": "Leven Labs, Inc. DBA Admiral (rigorlab.com)", + "ringplant.com": "Leven Labs, Inc. DBA Admiral (ringplant.com)", + "ringsrecord.com": "Leven Labs, Inc. DBA Admiral (ringsrecord.com)", + "ritzykey.com": "Leven Labs, Inc. DBA Admiral (ritzykey.com)", + "ritzyrepresentative.com": "Leven Labs, Inc. DBA Admiral (ritzyrepresentative.com)", + "ritzyveil.com": "Leven Labs, Inc. DBA Admiral (ritzyveil.com)", + "rockpebbles.com": "Leven Labs, Inc. DBA Admiral (rockpebbles.com)", + "rollconnection.com": "Leven Labs, Inc. DBA Admiral (rollconnection.com)", + "roofrelation.com": "Leven Labs, Inc. DBA Admiral (roofrelation.com)", + "roseincome.com": "Leven Labs, Inc. DBA Admiral (roseincome.com)", + "rottenray.com": "Leven Labs, Inc. DBA Admiral (rottenray.com)", + "ruralrobin.com": "Leven Labs, Inc. DBA Admiral (ruralrobin.com)", + "rusticprice.com": "Leven Labs, Inc. DBA Admiral (rusticprice.com)", + "ruthlessdegree.com": "Leven Labs, Inc. DBA Admiral (ruthlessdegree.com)", + "ruthlessmilk.com": "Leven Labs, Inc. DBA Admiral (ruthlessmilk.com)", + "sableloss.com": "Leven Labs, Inc. DBA Admiral (sableloss.com)", + "sablesmile.com": "Leven Labs, Inc. DBA Admiral (sablesmile.com)", + "sablesong.com": "Leven Labs, Inc. DBA Admiral (sablesong.com)", + "sadloaf.com": "Leven Labs, Inc. DBA Admiral (sadloaf.com)", + "safetybrush.com": "Leven Labs, Inc. DBA Admiral (safetybrush.com)", + "saffronrefuge.com": "Leven Labs, Inc. DBA Admiral (saffronrefuge.com)", + "sagargift.com": "Leven Labs, Inc. DBA Admiral (sagargift.com)", + "saltsacademy.com": "Leven Labs, Inc. DBA Admiral (saltsacademy.com)", + "samesticks.com": "Leven Labs, Inc. DBA Admiral (samesticks.com)", + "samestretch.com": "Leven Labs, Inc. DBA Admiral (samestretch.com)", + "samplesamba.com": "Leven Labs, Inc. DBA Admiral (samplesamba.com)", + "sandstrophies.com": "Leven Labs, Inc. DBA Admiral (sandstrophies.com)", + "satisfycork.com": "Leven Labs, Inc. DBA Admiral (satisfycork.com)", + "savoryorange.com": "Leven Labs, Inc. DBA Admiral (savoryorange.com)", + "scarcecard.com": "Leven Labs, Inc. DBA Admiral (scarcecard.com)", + "scarceshock.com": "Leven Labs, Inc. DBA Admiral (scarceshock.com)", + "scarcesign.com": "Leven Labs, Inc. DBA Admiral (scarcesign.com)", + "scarcestructure.com": "Leven Labs, Inc. DBA Admiral (scarcestructure.com)", + "scarcesurprise.com": "Leven Labs, Inc. DBA Admiral (scarcesurprise.com)", + "scaredcomfort.com": "Leven Labs, Inc. DBA Admiral (scaredcomfort.com)", + "scaredsidewalk.com": "Leven Labs, Inc. DBA Admiral (scaredsidewalk.com)", + "scaredslip.com": "Leven Labs, Inc. DBA Admiral (scaredslip.com)", + "scaredsnake.com": "Leven Labs, Inc. DBA Admiral (scaredsnake.com)", + "scaredsnakes.com": "Leven Labs, Inc. DBA Admiral (scaredsnakes.com)", + "scaredsong.com": "Leven Labs, Inc. DBA Admiral (scaredsong.com)", + "scaredstomach.com": "Leven Labs, Inc. DBA Admiral (scaredstomach.com)", + "scaredswing.com": "Leven Labs, Inc. DBA Admiral (scaredswing.com)", + "scarefowl.com": "Leven Labs, Inc. DBA Admiral (scarefowl.com)", + "scarfsmash.com": "Leven Labs, Inc. DBA Admiral (scarfsmash.com)", + "scatteredheat.com": "Leven Labs, Inc. DBA Admiral (scatteredheat.com)", + "scatteredquiver.com": "Leven Labs, Inc. DBA Admiral (scatteredquiver.com)", + "scatteredstream.com": "Leven Labs, Inc. DBA Admiral (scatteredstream.com)", + "scenicapparel.com": "Leven Labs, Inc. DBA Admiral (scenicapparel.com)", + "scenicdrops.com": "Leven Labs, Inc. DBA Admiral (scenicdrops.com)", + "scientificshirt.com": "Leven Labs, Inc. DBA Admiral (scientificshirt.com)", + "scintillatingscissors.com": "Leven Labs, Inc. DBA Admiral (scintillatingscissors.com)", + "scintillatingsilver.com": "Leven Labs, Inc. DBA Admiral (scintillatingsilver.com)", + "scissorsstatement.com": "Leven Labs, Inc. DBA Admiral (scissorsstatement.com)", + "scrapesleep.com": "Leven Labs, Inc. DBA Admiral (scrapesleep.com)", + "scratchsofa.com": "Leven Labs, Inc. DBA Admiral (scratchsofa.com)", + "screechingfurniture.com": "Leven Labs, Inc. DBA Admiral (screechingfurniture.com)", + "screechingstocking.com": "Leven Labs, Inc. DBA Admiral (screechingstocking.com)", + "screechingstove.com": "Leven Labs, Inc. DBA Admiral (screechingstove.com)", + "scribbleson.com": "Leven Labs, Inc. DBA Admiral (scribbleson.com)", + "scribblestring.com": "Leven Labs, Inc. DBA Admiral (scribblestring.com)", + "scrollservice.com": "Leven Labs, Inc. DBA Admiral (scrollservice.com)", + "scrubswim.com": "Leven Labs, Inc. DBA Admiral (scrubswim.com)", + "seashoresociety.com": "Leven Labs, Inc. DBA Admiral (seashoresociety.com)", + "seatsmoke.com": "Leven Labs, Inc. DBA Admiral (seatsmoke.com)", + "secondhandfall.com": "Leven Labs, Inc. DBA Admiral (secondhandfall.com)", + "secretivesheep.com": "Leven Labs, Inc. DBA Admiral (secretivesheep.com)", + "secretspiders.com": "Leven Labs, Inc. DBA Admiral (secretspiders.com)", + "secretturtle.com": "Leven Labs, Inc. DBA Admiral (secretturtle.com)", + "seedscissors.com": "Leven Labs, Inc. DBA Admiral (seedscissors.com)", + "seemlysuggestion.com": "Leven Labs, Inc. DBA Admiral (seemlysuggestion.com)", + "selectivesummer.com": "Leven Labs, Inc. DBA Admiral (selectivesummer.com)", + "selfishsea.com": "Leven Labs, Inc. DBA Admiral (selfishsea.com)", + "selfishsnake.com": "Leven Labs, Inc. DBA Admiral (selfishsnake.com)", + "sendingspire.com": "Leven Labs, Inc. DBA Admiral (sendingspire.com)", + "sensorsmile.com": "Leven Labs, Inc. DBA Admiral (sensorsmile.com)", + "separatesort.com": "Leven Labs, Inc. DBA Admiral (separatesort.com)", + "seraphichorizon.com": "Leven Labs, Inc. DBA Admiral (seraphichorizon.com)", + "seraphicjubilee.com": "Leven Labs, Inc. DBA Admiral (seraphicjubilee.com)", + "serendipityecho.com": "Leven Labs, Inc. DBA Admiral (serendipityecho.com)", + "serenecascade.com": "Leven Labs, Inc. DBA Admiral (serenecascade.com)", + "serenepebble.com": "Leven Labs, Inc. DBA Admiral (serenepebble.com)", + "serenesurf.com": "Leven Labs, Inc. DBA Admiral (serenesurf.com)", + "serenezenith.com": "Leven Labs, Inc. DBA Admiral (serenezenith.com)", + "serioussuit.com": "Leven Labs, Inc. DBA Admiral (serioussuit.com)", + "serpentshampoo.com": "Leven Labs, Inc. DBA Admiral (serpentshampoo.com)", + "serverracer.com": "Leven Labs, Inc. DBA Admiral (serverracer.com)", + "settleshoes.com": "Leven Labs, Inc. DBA Admiral (settleshoes.com)", + "shadeship.com": "Leven Labs, Inc. DBA Admiral (shadeship.com)", + "shaggytank.com": "Leven Labs, Inc. DBA Admiral (shaggytank.com)", + "shakegoldfish.com": "Leven Labs, Inc. DBA Admiral (shakegoldfish.com)", + "shakyseat.com": "Leven Labs, Inc. DBA Admiral (shakyseat.com)", + "shakysurprise.com": "Leven Labs, Inc. DBA Admiral (shakysurprise.com)", + "shakytaste.com": "Leven Labs, Inc. DBA Admiral (shakytaste.com)", + "shallowblade.com": "Leven Labs, Inc. DBA Admiral (shallowblade.com)", + "shamerain.com": "Leven Labs, Inc. DBA Admiral (shamerain.com)", + "shapecomb.com": "Leven Labs, Inc. DBA Admiral (shapecomb.com)", + "sharkskids.com": "Leven Labs, Inc. DBA Admiral (sharkskids.com)", + "sheargovernor.com": "Leven Labs, Inc. DBA Admiral (sheargovernor.com)", + "shesubscriptions.com": "Leven Labs, Inc. DBA Admiral (shesubscriptions.com)", + "shinypond.com": "Leven Labs, Inc. DBA Admiral (shinypond.com)", + "shirtsidewalk.com": "Leven Labs, Inc. DBA Admiral (shirtsidewalk.com)", + "shiveringspot.com": "Leven Labs, Inc. DBA Admiral (shiveringspot.com)", + "shiverscissors.com": "Leven Labs, Inc. DBA Admiral (shiverscissors.com)", + "shockinggrass.com": "Leven Labs, Inc. DBA Admiral (shockinggrass.com)", + "shockingship.com": "Leven Labs, Inc. DBA Admiral (shockingship.com)", + "shredquiz.com": "Leven Labs, Inc. DBA Admiral (shredquiz.com)", + "shrillspoon.com": "Leven Labs, Inc. DBA Admiral (shrillspoon.com)", + "shydinosaurs.com": "Leven Labs, Inc. DBA Admiral (shydinosaurs.com)", + "sicksmash.com": "Leven Labs, Inc. DBA Admiral (sicksmash.com)", + "sierrakermit.com": "Leven Labs, Inc. DBA Admiral (sierrakermit.com)", + "signaturepod.com": "Leven Labs, Inc. DBA Admiral (signaturepod.com)", + "siliconslow.com": "Leven Labs, Inc. DBA Admiral (siliconslow.com)", + "sillyscrew.com": "Leven Labs, Inc. DBA Admiral (sillyscrew.com)", + "simplesidewalk.com": "Leven Labs, Inc. DBA Admiral (simplesidewalk.com)", + "simulateswing.com": "Leven Labs, Inc. DBA Admiral (simulateswing.com)", + "sincerebuffalo.com": "Leven Labs, Inc. DBA Admiral (sincerebuffalo.com)", + "sincerepelican.com": "Leven Labs, Inc. DBA Admiral (sincerepelican.com)", + "sinceresubstance.com": "Leven Labs, Inc. DBA Admiral (sinceresubstance.com)", + "singroot.com": "Leven Labs, Inc. DBA Admiral (singroot.com)", + "sinkbooks.com": "Leven Labs, Inc. DBA Admiral (sinkbooks.com)", + "sixauthority.com": "Leven Labs, Inc. DBA Admiral (sixauthority.com)", + "sixscissors.com": "Leven Labs, Inc. DBA Admiral (sixscissors.com)", + "sizzlingsmoke.com": "Leven Labs, Inc. DBA Admiral (sizzlingsmoke.com)", + "skillfuldrop.com": "Leven Labs, Inc. DBA Admiral (skillfuldrop.com)", + "skisofa.com": "Leven Labs, Inc. DBA Admiral (skisofa.com)", + "slaysweater.com": "Leven Labs, Inc. DBA Admiral (slaysweater.com)", + "slimyscarf.com": "Leven Labs, Inc. DBA Admiral (slimyscarf.com)", + "slinksuggestion.com": "Leven Labs, Inc. DBA Admiral (slinksuggestion.com)", + "slopesoap.com": "Leven Labs, Inc. DBA Admiral (slopesoap.com)", + "smallershops.com": "Leven Labs, Inc. DBA Admiral (smallershops.com)", + "smashquartz.com": "Leven Labs, Inc. DBA Admiral (smashquartz.com)", + "smashshoe.com": "Leven Labs, Inc. DBA Admiral (smashshoe.com)", + "smashsurprise.com": "Leven Labs, Inc. DBA Admiral (smashsurprise.com)", + "smilewound.com": "Leven Labs, Inc. DBA Admiral (smilewound.com)", + "smilingcattle.com": "Leven Labs, Inc. DBA Admiral (smilingcattle.com)", + "smilingswim.com": "Leven Labs, Inc. DBA Admiral (smilingswim.com)", + "smilingwaves.com": "Leven Labs, Inc. DBA Admiral (smilingwaves.com)", + "smoggysnakes.com": "Leven Labs, Inc. DBA Admiral (smoggysnakes.com)", + "smoggysongs.com": "Leven Labs, Inc. DBA Admiral (smoggysongs.com)", + "smoggystation.com": "Leven Labs, Inc. DBA Admiral (smoggystation.com)", + "snacktoken.com": "Leven Labs, Inc. DBA Admiral (snacktoken.com)", + "snakemineral.com": "Leven Labs, Inc. DBA Admiral (snakemineral.com)", + "snakeslang.com": "Leven Labs, Inc. DBA Admiral (snakeslang.com)", + "snappyreport.com": "Leven Labs, Inc. DBA Admiral (snappyreport.com)", + "sneakwind.com": "Leven Labs, Inc. DBA Admiral (sneakwind.com)", + "sneakystew.com": "Leven Labs, Inc. DBA Admiral (sneakystew.com)", + "snoresmile.com": "Leven Labs, Inc. DBA Admiral (snoresmile.com)", + "snowmentor.com": "Leven Labs, Inc. DBA Admiral (snowmentor.com)", + "softwarerumble.com": "Leven Labs, Inc. DBA Admiral (softwarerumble.com)", + "soggysponge.com": "Leven Labs, Inc. DBA Admiral (soggysponge.com)", + "soggyzoo.com": "Leven Labs, Inc. DBA Admiral (soggyzoo.com)", + "solarislabyrinth.com": "Leven Labs, Inc. DBA Admiral (solarislabyrinth.com)", + "somberscarecrow.com": "Leven Labs, Inc. DBA Admiral (somberscarecrow.com)", + "sombersea.com": "Leven Labs, Inc. DBA Admiral (sombersea.com)", + "sombersquirrel.com": "Leven Labs, Inc. DBA Admiral (sombersquirrel.com)", + "sombersticks.com": "Leven Labs, Inc. DBA Admiral (sombersticks.com)", + "sombersurprise.com": "Leven Labs, Inc. DBA Admiral (sombersurprise.com)", + "songsterritory.com": "Leven Labs, Inc. DBA Admiral (songsterritory.com)", + "soothingglade.com": "Leven Labs, Inc. DBA Admiral (soothingglade.com)", + "sophisticatedstove.com": "Leven Labs, Inc. DBA Admiral (sophisticatedstove.com)", + "sordidsmile.com": "Leven Labs, Inc. DBA Admiral (sordidsmile.com)", + "soresidewalk.com": "Leven Labs, Inc. DBA Admiral (soresidewalk.com)", + "soresneeze.com": "Leven Labs, Inc. DBA Admiral (soresneeze.com)", + "sorethunder.com": "Leven Labs, Inc. DBA Admiral (sorethunder.com)", + "soretrain.com": "Leven Labs, Inc. DBA Admiral (soretrain.com)", + "sortanoisy.com": "Leven Labs, Inc. DBA Admiral (sortanoisy.com)", + "sortsail.com": "Leven Labs, Inc. DBA Admiral (sortsail.com)", + "sortsummer.com": "Leven Labs, Inc. DBA Admiral (sortsummer.com)", + "soundstocking.com": "Leven Labs, Inc. DBA Admiral (soundstocking.com)", + "sowlettuce.com": "Leven Labs, Inc. DBA Admiral (sowlettuce.com)", + "spadelocket.com": "Leven Labs, Inc. DBA Admiral (spadelocket.com)", + "sparkgoal.com": "Leven Labs, Inc. DBA Admiral (sparkgoal.com)", + "sparklingshelf.com": "Leven Labs, Inc. DBA Admiral (sparklingshelf.com)", + "specialscissors.com": "Leven Labs, Inc. DBA Admiral (specialscissors.com)", + "spectacularstamp.com": "Leven Labs, Inc. DBA Admiral (spectacularstamp.com)", + "spellmist.com": "Leven Labs, Inc. DBA Admiral (spellmist.com)", + "spellsalsa.com": "Leven Labs, Inc. DBA Admiral (spellsalsa.com)", + "spiffymachine.com": "Leven Labs, Inc. DBA Admiral (spiffymachine.com)", + "spirebaboon.com": "Leven Labs, Inc. DBA Admiral (spirebaboon.com)", + "spookyexchange.com": "Leven Labs, Inc. DBA Admiral (spookyexchange.com)", + "spookyskate.com": "Leven Labs, Inc. DBA Admiral (spookyskate.com)", + "spookysleet.com": "Leven Labs, Inc. DBA Admiral (spookysleet.com)", + "spookystitch.com": "Leven Labs, Inc. DBA Admiral (spookystitch.com)", + "spoonsilk.com": "Leven Labs, Inc. DBA Admiral (spoonsilk.com)", + "spotlessstamp.com": "Leven Labs, Inc. DBA Admiral (spotlessstamp.com)", + "spottednoise.com": "Leven Labs, Inc. DBA Admiral (spottednoise.com)", + "springolive.com": "Leven Labs, Inc. DBA Admiral (springolive.com)", + "springsister.com": "Leven Labs, Inc. DBA Admiral (springsister.com)", + "springsnails.com": "Leven Labs, Inc. DBA Admiral (springsnails.com)", + "sproutingbag.com": "Leven Labs, Inc. DBA Admiral (sproutingbag.com)", + "sprydelta.com": "Leven Labs, Inc. DBA Admiral (sprydelta.com)", + "sprysummit.com": "Leven Labs, Inc. DBA Admiral (sprysummit.com)", + "spuriousair.com": "Leven Labs, Inc. DBA Admiral (spuriousair.com)", + "spuriousbase.com": "Leven Labs, Inc. DBA Admiral (spuriousbase.com)", + "spurioussquirrel.com": "Leven Labs, Inc. DBA Admiral (spurioussquirrel.com)", + "spuriousstranger.com": "Leven Labs, Inc. DBA Admiral (spuriousstranger.com)", + "spysubstance.com": "Leven Labs, Inc. DBA Admiral (spysubstance.com)", + "squalidscrew.com": "Leven Labs, Inc. DBA Admiral (squalidscrew.com)", + "squeakzinc.com": "Leven Labs, Inc. DBA Admiral (squeakzinc.com)", + "squealingturn.com": "Leven Labs, Inc. DBA Admiral (squealingturn.com)", + "stakingbasket.com": "Leven Labs, Inc. DBA Admiral (stakingbasket.com)", + "stakingshock.com": "Leven Labs, Inc. DBA Admiral (stakingshock.com)", + "stakingsmile.com": "Leven Labs, Inc. DBA Admiral (stakingsmile.com)", + "staleshow.com": "Leven Labs, Inc. DBA Admiral (staleshow.com)", + "stalesummer.com": "Leven Labs, Inc. DBA Admiral (stalesummer.com)", + "starkscale.com": "Leven Labs, Inc. DBA Admiral (starkscale.com)", + "startingcars.com": "Leven Labs, Inc. DBA Admiral (startingcars.com)", + "statshunt.com": "Leven Labs, Inc. DBA Admiral (statshunt.com)", + "statuesqueship.com": "Leven Labs, Inc. DBA Admiral (statuesqueship.com)", + "stayaction.com": "Leven Labs, Inc. DBA Admiral (stayaction.com)", + "steadfastseat.com": "Leven Labs, Inc. DBA Admiral (steadfastseat.com)", + "steadfastsound.com": "Leven Labs, Inc. DBA Admiral (steadfastsound.com)", + "steadfastsystem.com": "Leven Labs, Inc. DBA Admiral (steadfastsystem.com)", + "steadycopper.com": "Leven Labs, Inc. DBA Admiral (steadycopper.com)", + "stealsteel.com": "Leven Labs, Inc. DBA Admiral (stealsteel.com)", + "steepscale.com": "Leven Labs, Inc. DBA Admiral (steepscale.com)", + "steepsister.com": "Leven Labs, Inc. DBA Admiral (steepsister.com)", + "steepsquirrel.com": "Leven Labs, Inc. DBA Admiral (steepsquirrel.com)", + "stepcattle.com": "Leven Labs, Inc. DBA Admiral (stepcattle.com)", + "stepplane.com": "Leven Labs, Inc. DBA Admiral (stepplane.com)", + "stepwisevideo.com": "Leven Labs, Inc. DBA Admiral (stepwisevideo.com)", + "stereoproxy.com": "Leven Labs, Inc. DBA Admiral (stereoproxy.com)", + "stereotypedsugar.com": "Leven Labs, Inc. DBA Admiral (stereotypedsugar.com)", + "stewspiders.com": "Leven Labs, Inc. DBA Admiral (stewspiders.com)", + "stiffgame.com": "Leven Labs, Inc. DBA Admiral (stiffgame.com)", + "stiffstem.com": "Leven Labs, Inc. DBA Admiral (stiffstem.com)", + "stimulatingsneeze.com": "Leven Labs, Inc. DBA Admiral (stimulatingsneeze.com)", + "stingsquirrel.com": "Leven Labs, Inc. DBA Admiral (stingsquirrel.com)", + "stingycrush.com": "Leven Labs, Inc. DBA Admiral (stingycrush.com)", + "stingyshoe.com": "Leven Labs, Inc. DBA Admiral (stingyshoe.com)", + "stingyspoon.com": "Leven Labs, Inc. DBA Admiral (stingyspoon.com)", + "stockingsleet.com": "Leven Labs, Inc. DBA Admiral (stockingsleet.com)", + "stockingsneeze.com": "Leven Labs, Inc. DBA Admiral (stockingsneeze.com)", + "stomachscience.com": "Leven Labs, Inc. DBA Admiral (stomachscience.com)", + "stonechin.com": "Leven Labs, Inc. DBA Admiral (stonechin.com)", + "stopstomach.com": "Leven Labs, Inc. DBA Admiral (stopstomach.com)", + "stormyachiever.com": "Leven Labs, Inc. DBA Admiral (stormyachiever.com)", + "stormyfold.com": "Leven Labs, Inc. DBA Admiral (stormyfold.com)", + "straightnest.com": "Leven Labs, Inc. DBA Admiral (straightnest.com)", + "strangeclocks.com": "Leven Labs, Inc. DBA Admiral (strangeclocks.com)", + "strangersponge.com": "Leven Labs, Inc. DBA Admiral (strangersponge.com)", + "strangesink.com": "Leven Labs, Inc. DBA Admiral (strangesink.com)", + "streetsort.com": "Leven Labs, Inc. DBA Admiral (streetsort.com)", + "stretchsister.com": "Leven Labs, Inc. DBA Admiral (stretchsister.com)", + "stretchsneeze.com": "Leven Labs, Inc. DBA Admiral (stretchsneeze.com)", + "stretchsquirrel.com": "Leven Labs, Inc. DBA Admiral (stretchsquirrel.com)", + "stripedbat.com": "Leven Labs, Inc. DBA Admiral (stripedbat.com)", + "strivesidewalk.com": "Leven Labs, Inc. DBA Admiral (strivesidewalk.com)", + "strivesquirrel.com": "Leven Labs, Inc. DBA Admiral (strivesquirrel.com)", + "strokesystem.com": "Leven Labs, Inc. DBA Admiral (strokesystem.com)", + "stupendoussleet.com": "Leven Labs, Inc. DBA Admiral (stupendoussleet.com)", + "stupendoussnow.com": "Leven Labs, Inc. DBA Admiral (stupendoussnow.com)", + "stupidscene.com": "Leven Labs, Inc. DBA Admiral (stupidscene.com)", + "sturdysnail.com": "Leven Labs, Inc. DBA Admiral (sturdysnail.com)", + "subletyoke.com": "Leven Labs, Inc. DBA Admiral (subletyoke.com)", + "sublimequartz.com": "Leven Labs, Inc. DBA Admiral (sublimequartz.com)", + "subsequentswim.com": "Leven Labs, Inc. DBA Admiral (subsequentswim.com)", + "substantialcarpenter.com": "Leven Labs, Inc. DBA Admiral (substantialcarpenter.com)", + "substantialgrade.com": "Leven Labs, Inc. DBA Admiral (substantialgrade.com)", + "succeedscene.com": "Leven Labs, Inc. DBA Admiral (succeedscene.com)", + "successfulscent.com": "Leven Labs, Inc. DBA Admiral (successfulscent.com)", + "suddensoda.com": "Leven Labs, Inc. DBA Admiral (suddensoda.com)", + "sugarfriction.com": "Leven Labs, Inc. DBA Admiral (sugarfriction.com)", + "suggestionbridge.com": "Leven Labs, Inc. DBA Admiral (suggestionbridge.com)", + "sulkycook.com": "Leven Labs, Inc. DBA Admiral (sulkycook.com)", + "summerobject.com": "Leven Labs, Inc. DBA Admiral (summerobject.com)", + "sunshinegates.com": "Leven Labs, Inc. DBA Admiral (sunshinegates.com)", + "superchichair.com": "Leven Labs, Inc. DBA Admiral (superchichair.com)", + "superficialeyes.com": "Leven Labs, Inc. DBA Admiral (superficialeyes.com)", + "superficialspring.com": "Leven Labs, Inc. DBA Admiral (superficialspring.com)", + "superficialsquare.com": "Leven Labs, Inc. DBA Admiral (superficialsquare.com)", + "superviseshoes.com": "Leven Labs, Inc. DBA Admiral (superviseshoes.com)", + "supportwaves.com": "Leven Labs, Inc. DBA Admiral (supportwaves.com)", + "suspectmark.com": "Leven Labs, Inc. DBA Admiral (suspectmark.com)", + "swankysquare.com": "Leven Labs, Inc. DBA Admiral (swankysquare.com)", + "swellstocking.com": "Leven Labs, Inc. DBA Admiral (swellstocking.com)", + "swelteringsleep.com": "Leven Labs, Inc. DBA Admiral (swelteringsleep.com)", + "swimfreely.com": "Leven Labs, Inc. DBA Admiral (swimfreely.com)", + "swingslip.com": "Leven Labs, Inc. DBA Admiral (swingslip.com)", + "swordgoose.com": "Leven Labs, Inc. DBA Admiral (swordgoose.com)", + "syllablesight.com": "Leven Labs, Inc. DBA Admiral (syllablesight.com)", + "synonymousrule.com": "Leven Labs, Inc. DBA Admiral (synonymousrule.com)", + "synonymoussticks.com": "Leven Labs, Inc. DBA Admiral (synonymoussticks.com)", + "synthesizescarecrow.com": "Leven Labs, Inc. DBA Admiral (synthesizescarecrow.com)", + "tackytrains.com": "Leven Labs, Inc. DBA Admiral (tackytrains.com)", + "tacojournal.com": "Leven Labs, Inc. DBA Admiral (tacojournal.com)", + "talltouch.com": "Leven Labs, Inc. DBA Admiral (talltouch.com)", + "tangibleteam.com": "Leven Labs, Inc. DBA Admiral (tangibleteam.com)", + "tangletrace.com": "Leven Labs, Inc. DBA Admiral (tangletrace.com)", + "tangyamount.com": "Leven Labs, Inc. DBA Admiral (tangyamount.com)", + "tangycover.com": "Leven Labs, Inc. DBA Admiral (tangycover.com)", + "tastelesstrees.com": "Leven Labs, Inc. DBA Admiral (tastelesstrees.com)", + "tastesnake.com": "Leven Labs, Inc. DBA Admiral (tastesnake.com)", + "tawdryson.com": "Leven Labs, Inc. DBA Admiral (tawdryson.com)", + "tdzvm.pw": "Leven Labs, Inc. DBA Admiral (tdzvm.pw)", + "teacupbooks.com": "Leven Labs, Inc. DBA Admiral (teacupbooks.com)", + "tearfulglass.com": "Leven Labs, Inc. DBA Admiral (tearfulglass.com)", + "techconverter.com": "Leven Labs, Inc. DBA Admiral (techconverter.com)", + "tediousbear.com": "Leven Labs, Inc. DBA Admiral (tediousbear.com)", + "tediousticket.com": "Leven Labs, Inc. DBA Admiral (tediousticket.com)", + "tedioustooth.com": "Leven Labs, Inc. DBA Admiral (tedioustooth.com)", + "teenytinycellar.com": "Leven Labs, Inc. DBA Admiral (teenytinycellar.com)", + "teenytinyshirt.com": "Leven Labs, Inc. DBA Admiral (teenytinyshirt.com)", + "teenytinytongue.com": "Leven Labs, Inc. DBA Admiral (teenytinytongue.com)", + "telephoneapparatus.com": "Leven Labs, Inc. DBA Admiral (telephoneapparatus.com)", + "tempertrick.com": "Leven Labs, Inc. DBA Admiral (tempertrick.com)", + "tempttalk.com": "Leven Labs, Inc. DBA Admiral (tempttalk.com)", + "temptteam.com": "Leven Labs, Inc. DBA Admiral (temptteam.com)", + "tendertest.com": "Leven Labs, Inc. DBA Admiral (tendertest.com)", + "terriblethumb.com": "Leven Labs, Inc. DBA Admiral (terriblethumb.com)", + "terrifictooth.com": "Leven Labs, Inc. DBA Admiral (terrifictooth.com)", + "testadmiral.com": "Leven Labs, Inc. DBA Admiral (testadmiral.com)", + "texturetrick.com": "Leven Labs, Inc. DBA Admiral (texturetrick.com)", + "therapeuticcars.com": "Leven Labs, Inc. DBA Admiral (therapeuticcars.com)", + "thickticket.com": "Leven Labs, Inc. DBA Admiral (thickticket.com)", + "thicktrucks.com": "Leven Labs, Inc. DBA Admiral (thicktrucks.com)", + "thingsafterthought.com": "Leven Labs, Inc. DBA Admiral (thingsafterthought.com)", + "thingstaste.com": "Leven Labs, Inc. DBA Admiral (thingstaste.com)", + "thinkitten.com": "Leven Labs, Inc. DBA Admiral (thinkitten.com)", + "thinkitwice.com": "Leven Labs, Inc. DBA Admiral (thinkitwice.com)", + "thirdrespect.com": "Leven Labs, Inc. DBA Admiral (thirdrespect.com)", + "thirstytwig.com": "Leven Labs, Inc. DBA Admiral (thirstytwig.com)", + "thomastorch.com": "Leven Labs, Inc. DBA Admiral (thomastorch.com)", + "thoughtlessknot.com": "Leven Labs, Inc. DBA Admiral (thoughtlessknot.com)", + "threetruck.com": "Leven Labs, Inc. DBA Admiral (threetruck.com)", + "thrivingmarketplace.com": "Leven Labs, Inc. DBA Admiral (thrivingmarketplace.com)", + "ticketaunt.com": "Leven Labs, Inc. DBA Admiral (ticketaunt.com)", + "ticklesign.com": "Leven Labs, Inc. DBA Admiral (ticklesign.com)", + "tidymitten.com": "Leven Labs, Inc. DBA Admiral (tidymitten.com)", + "tightpowder.com": "Leven Labs, Inc. DBA Admiral (tightpowder.com)", + "tinyswans.com": "Leven Labs, Inc. DBA Admiral (tinyswans.com)", + "tinytendency.com": "Leven Labs, Inc. DBA Admiral (tinytendency.com)", + "tiredthroat.com": "Leven Labs, Inc. DBA Admiral (tiredthroat.com)", + "tiresomethunder.com": "Leven Labs, Inc. DBA Admiral (tiresomethunder.com)", + "toolcapital.com": "Leven Labs, Inc. DBA Admiral (toolcapital.com)", + "toomanyalts.com": "Leven Labs, Inc. DBA Admiral (toomanyalts.com)", + "torpidtongue.com": "Leven Labs, Inc. DBA Admiral (torpidtongue.com)", + "touristfuel.com": "Leven Labs, Inc. DBA Admiral (touristfuel.com)", + "trackcaddie.com": "Leven Labs, Inc. DBA Admiral (trackcaddie.com)", + "tradetooth.com": "Leven Labs, Inc. DBA Admiral (tradetooth.com)", + "trafficviews.com": "Leven Labs, Inc. DBA Admiral (trafficviews.com)", + "tranquilarchipelago.com": "Leven Labs, Inc. DBA Admiral (tranquilarchipelago.com)", + "tranquilcan.com": "Leven Labs, Inc. DBA Admiral (tranquilcan.com)", + "tranquilcanyon.com": "Leven Labs, Inc. DBA Admiral (tranquilcanyon.com)", + "tranquilplume.com": "Leven Labs, Inc. DBA Admiral (tranquilplume.com)", + "tranquilside.com": "Leven Labs, Inc. DBA Admiral (tranquilside.com)", + "tranquilveil.com": "Leven Labs, Inc. DBA Admiral (tranquilveil.com)", + "tranquilveranda.com": "Leven Labs, Inc. DBA Admiral (tranquilveranda.com)", + "trappush.com": "Leven Labs, Inc. DBA Admiral (trappush.com)", + "treadbun.com": "Leven Labs, Inc. DBA Admiral (treadbun.com)", + "tremendousearthquake.com": "Leven Labs, Inc. DBA Admiral (tremendousearthquake.com)", + "tremendousplastic.com": "Leven Labs, Inc. DBA Admiral (tremendousplastic.com)", + "tremendoustime.com": "Leven Labs, Inc. DBA Admiral (tremendoustime.com)", + "tritebadge.com": "Leven Labs, Inc. DBA Admiral (tritebadge.com)", + "tritethunder.com": "Leven Labs, Inc. DBA Admiral (tritethunder.com)", + "tritetongue.com": "Leven Labs, Inc. DBA Admiral (tritetongue.com)", + "troubledtail.com": "Leven Labs, Inc. DBA Admiral (troubledtail.com)", + "troubleshade.com": "Leven Labs, Inc. DBA Admiral (troubleshade.com)", + "truckstomatoes.com": "Leven Labs, Inc. DBA Admiral (truckstomatoes.com)", + "truculentrate.com": "Leven Labs, Inc. DBA Admiral (truculentrate.com)", + "truebackpack.com": "Leven Labs, Inc. DBA Admiral (truebackpack.com)", + "tumbleicicle.com": "Leven Labs, Inc. DBA Admiral (tumbleicicle.com)", + "tuneupcoffee.com": "Leven Labs, Inc. DBA Admiral (tuneupcoffee.com)", + "twistloss.com": "Leven Labs, Inc. DBA Admiral (twistloss.com)", + "twistsweater.com": "Leven Labs, Inc. DBA Admiral (twistsweater.com)", + "typicalairplane.com": "Leven Labs, Inc. DBA Admiral (typicalairplane.com)", + "typicalteeth.com": "Leven Labs, Inc. DBA Admiral (typicalteeth.com)", + "tzwaw.pw": "Leven Labs, Inc. DBA Admiral (tzwaw.pw)", + "ubiquitoussea.com": "Leven Labs, Inc. DBA Admiral (ubiquitoussea.com)", + "ubiquitousyard.com": "Leven Labs, Inc. DBA Admiral (ubiquitousyard.com)", + "ultraoranges.com": "Leven Labs, Inc. DBA Admiral (ultraoranges.com)", + "ultravalid.com": "Leven Labs, Inc. DBA Admiral (ultravalid.com)", + "unablehope.com": "Leven Labs, Inc. DBA Admiral (unablehope.com)", + "unaccountablecreator.com": "Leven Labs, Inc. DBA Admiral (unaccountablecreator.com)", + "unaccountablepie.com": "Leven Labs, Inc. DBA Admiral (unaccountablepie.com)", + "unarmedindustry.com": "Leven Labs, Inc. DBA Admiral (unarmedindustry.com)", + "unbecominghall.com": "Leven Labs, Inc. DBA Admiral (unbecominghall.com)", + "unbecominglamp.com": "Leven Labs, Inc. DBA Admiral (unbecominglamp.com)", + "uncoveredexpert.com": "Leven Labs, Inc. DBA Admiral (uncoveredexpert.com)", + "understoodocean.com": "Leven Labs, Inc. DBA Admiral (understoodocean.com)", + "unequalbrake.com": "Leven Labs, Inc. DBA Admiral (unequalbrake.com)", + "unequaltrail.com": "Leven Labs, Inc. DBA Admiral (unequaltrail.com)", + "uninterestedquarter.com": "Leven Labs, Inc. DBA Admiral (uninterestedquarter.com)", + "unknowncontrol.com": "Leven Labs, Inc. DBA Admiral (unknowncontrol.com)", + "unknowncrate.com": "Leven Labs, Inc. DBA Admiral (unknowncrate.com)", + "unknownidea.com": "Leven Labs, Inc. DBA Admiral (unknownidea.com)", + "unknowntray.com": "Leven Labs, Inc. DBA Admiral (unknowntray.com)", + "untidyquestion.com": "Leven Labs, Inc. DBA Admiral (untidyquestion.com)", + "untidyrice.com": "Leven Labs, Inc. DBA Admiral (untidyrice.com)", + "unusedstone.com": "Leven Labs, Inc. DBA Admiral (unusedstone.com)", + "unusualtitle.com": "Leven Labs, Inc. DBA Admiral (unusualtitle.com)", + "unwieldyhealth.com": "Leven Labs, Inc. DBA Admiral (unwieldyhealth.com)", + "unwieldyimpulse.com": "Leven Labs, Inc. DBA Admiral (unwieldyimpulse.com)", + "unwieldyplastic.com": "Leven Labs, Inc. DBA Admiral (unwieldyplastic.com)", + "uppitytime.com": "Leven Labs, Inc. DBA Admiral (uppitytime.com)", + "uselesslumber.com": "Leven Labs, Inc. DBA Admiral (uselesslumber.com)", + "validmemo.com": "Leven Labs, Inc. DBA Admiral (validmemo.com)", + "vanfireworks.com": "Leven Labs, Inc. DBA Admiral (vanfireworks.com)", + "vanishmemory.com": "Leven Labs, Inc. DBA Admiral (vanishmemory.com)", + "velvetnova.com": "Leven Labs, Inc. DBA Admiral (velvetnova.com)", + "velvetquasar.com": "Leven Labs, Inc. DBA Admiral (velvetquasar.com)", + "vengefulgrass.com": "Leven Labs, Inc. DBA Admiral (vengefulgrass.com)", + "venomousvessel.com": "Leven Labs, Inc. DBA Admiral (venomousvessel.com)", + "venusgloria.com": "Leven Labs, Inc. DBA Admiral (venusgloria.com)", + "verdantanswer.com": "Leven Labs, Inc. DBA Admiral (verdantanswer.com)", + "verdantcrescent.com": "Leven Labs, Inc. DBA Admiral (verdantcrescent.com)", + "verdantlabyrinth.com": "Leven Labs, Inc. DBA Admiral (verdantlabyrinth.com)", + "verdantloom.com": "Leven Labs, Inc. DBA Admiral (verdantloom.com)", + "verdantsculpture.com": "Leven Labs, Inc. DBA Admiral (verdantsculpture.com)", + "verseballs.com": "Leven Labs, Inc. DBA Admiral (verseballs.com)", + "vibrantcelebration.com": "Leven Labs, Inc. DBA Admiral (vibrantcelebration.com)", + "vibrantgale.com": "Leven Labs, Inc. DBA Admiral (vibrantgale.com)", + "vibranthaven.com": "Leven Labs, Inc. DBA Admiral (vibranthaven.com)", + "vibrantpact.com": "Leven Labs, Inc. DBA Admiral (vibrantpact.com)", + "vibrantsundown.com": "Leven Labs, Inc. DBA Admiral (vibrantsundown.com)", + "vibranttalisman.com": "Leven Labs, Inc. DBA Admiral (vibranttalisman.com)", + "vibrantvale.com": "Leven Labs, Inc. DBA Admiral (vibrantvale.com)", + "victoriousrequest.com": "Leven Labs, Inc. DBA Admiral (victoriousrequest.com)", + "virtualvincent.com": "Leven Labs, Inc. DBA Admiral (virtualvincent.com)", + "vividcanopy.com": "Leven Labs, Inc. DBA Admiral (vividcanopy.com)", + "vividfrost.com": "Leven Labs, Inc. DBA Admiral (vividfrost.com)", + "vividmeadow.com": "Leven Labs, Inc. DBA Admiral (vividmeadow.com)", + "vividplume.com": "Leven Labs, Inc. DBA Admiral (vividplume.com)", + "voicelessvein.com": "Leven Labs, Inc. DBA Admiral (voicelessvein.com)", + "voidgoo.com": "Leven Labs, Inc. DBA Admiral (voidgoo.com)", + "volatileprofit.com": "Leven Labs, Inc. DBA Admiral (volatileprofit.com)", + "volatilevessel.com": "Leven Labs, Inc. DBA Admiral (volatilevessel.com)", + "voraciousgrip.com": "Leven Labs, Inc. DBA Admiral (voraciousgrip.com)", + "vq1qi.pw": "Leven Labs, Inc. DBA Admiral (vq1qi.pw)", + "waitingnumber.com": "Leven Labs, Inc. DBA Admiral (waitingnumber.com)", + "wantingwindow.com": "Leven Labs, Inc. DBA Admiral (wantingwindow.com)", + "warmafterthought.com": "Leven Labs, Inc. DBA Admiral (warmafterthought.com)", + "warmquiver.com": "Leven Labs, Inc. DBA Admiral (warmquiver.com)", + "warnwing.com": "Leven Labs, Inc. DBA Admiral (warnwing.com)", + "washbanana.com": "Leven Labs, Inc. DBA Admiral (washbanana.com)", + "wateryvan.com": "Leven Labs, Inc. DBA Admiral (wateryvan.com)", + "waterywave.com": "Leven Labs, Inc. DBA Admiral (waterywave.com)", + "waterywrist.com": "Leven Labs, Inc. DBA Admiral (waterywrist.com)", + "wearbasin.com": "Leven Labs, Inc. DBA Admiral (wearbasin.com)", + "websitesdude.com": "Leven Labs, Inc. DBA Admiral (websitesdude.com)", + "wellgroomedapparel.com": "Leven Labs, Inc. DBA Admiral (wellgroomedapparel.com)", + "wellgroomedhydrant.com": "Leven Labs, Inc. DBA Admiral (wellgroomedhydrant.com)", + "wellmadefrog.com": "Leven Labs, Inc. DBA Admiral (wellmadefrog.com)", + "westpalmweb.com": "Leven Labs, Inc. DBA Admiral (westpalmweb.com)", + "whimsicalcanyon.com": "Leven Labs, Inc. DBA Admiral (whimsicalcanyon.com)", + "whimsicalgrove.com": "Leven Labs, Inc. DBA Admiral (whimsicalgrove.com)", + "whineattempt.com": "Leven Labs, Inc. DBA Admiral (whineattempt.com)", + "whirlwealth.com": "Leven Labs, Inc. DBA Admiral (whirlwealth.com)", + "whiskyqueue.com": "Leven Labs, Inc. DBA Admiral (whiskyqueue.com)", + "whisperingcascade.com": "Leven Labs, Inc. DBA Admiral (whisperingcascade.com)", + "whisperingcrib.com": "Leven Labs, Inc. DBA Admiral (whisperingcrib.com)", + "whisperingquasar.com": "Leven Labs, Inc. DBA Admiral (whisperingquasar.com)", + "whisperingsummit.com": "Leven Labs, Inc. DBA Admiral (whisperingsummit.com)", + "whispermeeting.com": "Leven Labs, Inc. DBA Admiral (whispermeeting.com)", + "wildcommittee.com": "Leven Labs, Inc. DBA Admiral (wildcommittee.com)", + "wirecomic.com": "Leven Labs, Inc. DBA Admiral (wirecomic.com)", + "wiredforcoffee.com": "Leven Labs, Inc. DBA Admiral (wiredforcoffee.com)", + "wirypaste.com": "Leven Labs, Inc. DBA Admiral (wirypaste.com)", + "wistfulwaste.com": "Leven Labs, Inc. DBA Admiral (wistfulwaste.com)", + "wittypopcorn.com": "Leven Labs, Inc. DBA Admiral (wittypopcorn.com)", + "wittyshack.com": "Leven Labs, Inc. DBA Admiral (wittyshack.com)", + "workoperation.com": "Leven Labs, Inc. DBA Admiral (workoperation.com)", + "worldlever.com": "Leven Labs, Inc. DBA Admiral (worldlever.com)", + "worriednumber.com": "Leven Labs, Inc. DBA Admiral (worriednumber.com)", + "worriedwine.com": "Leven Labs, Inc. DBA Admiral (worriedwine.com)", + "wretchedfloor.com": "Leven Labs, Inc. DBA Admiral (wretchedfloor.com)", + "wrongpotato.com": "Leven Labs, Inc. DBA Admiral (wrongpotato.com)", + "wrongwound.com": "Leven Labs, Inc. DBA Admiral (wrongwound.com)", + "wtaccesscontrol.com": "Leven Labs, Inc. DBA Admiral (wtaccesscontrol.com)", + "xovq5nemr.com": "Leven Labs, Inc. DBA Admiral (xovq5nemr.com)", + "yieldingwoman.com": "Leven Labs, Inc. DBA Admiral (yieldingwoman.com)", + "zbwp6ghm.com": "Leven Labs, Inc. DBA Admiral (zbwp6ghm.com)", + "zephyrcatalyst.com": "Leven Labs, Inc. DBA Admiral (zephyrcatalyst.com)", + "zephyrlabyrinth.com": "Leven Labs, Inc. DBA Admiral (zephyrlabyrinth.com)", + "zestycrime.com": "Leven Labs, Inc. DBA Admiral (zestycrime.com)", + "zestyhorizon.com": "Leven Labs, Inc. DBA Admiral (zestyhorizon.com)", + "zestyrover.com": "Leven Labs, Inc. DBA Admiral (zestyrover.com)", + "zestywire.com": "Leven Labs, Inc. DBA Admiral (zestywire.com)", + "zipperxray.com": "Leven Labs, Inc. DBA Admiral (zipperxray.com)", + "zlp6s.pw": "Leven Labs, Inc. DBA Admiral (zlp6s.pw)", + "zonewedgeshaft.com": "Leven Labs, Inc. DBA Admiral (zonewedgeshaft.com)", "abtasty.com": "AB Tasty", "flagship.io": "AB Tasty", "acexedge.com": "Human Security, Inc.", diff --git a/DuckDuckGo.xcodeproj/project.pbxproj b/DuckDuckGo.xcodeproj/project.pbxproj index 8797607903..4fa2e17d10 100644 --- a/DuckDuckGo.xcodeproj/project.pbxproj +++ b/DuckDuckGo.xcodeproj/project.pbxproj @@ -11,6 +11,10 @@ 0238E44F29C0FAA100615E30 /* FindInPageIOSJSSupport in Frameworks */ = {isa = PBXBuildFile; productRef = 0238E44E29C0FAA100615E30 /* FindInPageIOSJSSupport */; }; 025CD01025826035001CD5BB /* FingerprintUITest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 025CCF75257EAFAF001CD5BB /* FingerprintUITest.swift */; }; 026DABA428242BC80089E0B5 /* MockUserAgent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 026DABA328242BC80089E0B5 /* MockUserAgent.swift */; }; + 0283A1FC2C6E3D8100508FBD /* BrokenSitePromptView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0283A1FA2C6E3D8100508FBD /* BrokenSitePromptView.swift */; }; + 0283A1FE2C6E3E1B00508FBD /* BrokenSitePromptViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0283A1FB2C6E3D8100508FBD /* BrokenSitePromptViewModel.swift */; }; + 0283A2012C6E46E300508FBD /* BrokenSitePromptLimiter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0283A2002C6E46E300508FBD /* BrokenSitePromptLimiter.swift */; }; + 0283A2042C6E572F00508FBD /* BrokenSitePromptLimiterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0283A2032C6E572F00508FBD /* BrokenSitePromptLimiterTests.swift */; }; 02BA15B126A89ECA00472DD7 /* ios-config.json in Resources */ = {isa = PBXBuildFile; fileRef = 02BA15B026A89ECA00472DD7 /* ios-config.json */; }; 02CA904924F6BFE700D41DDF /* navigatorsharepatch.js in Resources */ = {isa = PBXBuildFile; fileRef = 02CA904824F6BFE700D41DDF /* navigatorsharepatch.js */; }; 02CA904B24F6C11A00D41DDF /* NavigatorSharePatchUserScript.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02CA904A24F6C11A00D41DDF /* NavigatorSharePatchUserScript.swift */; }; @@ -63,6 +67,7 @@ 1E4F4A5A297193DE00625985 /* MainViewController+CookiesManaged.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E4F4A59297193DE00625985 /* MainViewController+CookiesManaged.swift */; }; 1E4FAA6427D8DFB900ADC5B3 /* OngoingDownloadRowViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E4FAA6327D8DFB900ADC5B3 /* OngoingDownloadRowViewModel.swift */; }; 1E4FAA6627D8DFC800ADC5B3 /* CompleteDownloadRowViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E4FAA6527D8DFC800ADC5B3 /* CompleteDownloadRowViewModel.swift */; }; + 1E53508F2C7C9A1F00818DAA /* DefaultSubscriptionManager+AccountManagerKeychainAccessDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E53508E2C7C9A1F00818DAA /* DefaultSubscriptionManager+AccountManagerKeychainAccessDelegate.swift */; }; 1E60989B290009C700A508F9 /* Common in Frameworks */ = {isa = PBXBuildFile; productRef = 1E7060BD28F88EE200E4CCDB /* Common */; }; 1E60989D290011E600A508F9 /* ContentBlocking in Frameworks */ = {isa = PBXBuildFile; productRef = 1E60989C290011E600A508F9 /* ContentBlocking */; }; 1E6098A1290011E600A508F9 /* UserScript in Frameworks */ = {isa = PBXBuildFile; productRef = 1E6098A0290011E600A508F9 /* UserScript */; }; @@ -227,6 +232,7 @@ 4BBBBA872B02E85400D965DA /* DesignResourcesKit in Frameworks */ = {isa = PBXBuildFile; productRef = 4BBBBA862B02E85400D965DA /* DesignResourcesKit */; }; 4BBBBA922B03291700D965DA /* VPNWaitlistUserText.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BBBBA912B03291700D965DA /* VPNWaitlistUserText.swift */; }; 4BC21A2F27238B7500229F0E /* RunLoopExtensionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC21A2C272388BD00229F0E /* RunLoopExtensionTests.swift */; }; + 4BC8948C2C7902E6009AA141 /* WireGuard in Frameworks */ = {isa = PBXBuildFile; productRef = 4BC8948B2C7902E6009AA141 /* WireGuard */; }; 4BCBE45E2BA7E81F00FC75A1 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 4BCBE45D2BA7E81F00FC75A1 /* PrivacyInfo.xcprivacy */; }; 4BCBE4602BA7E87100FC75A1 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 4BCBE45F2BA7E87100FC75A1 /* PrivacyInfo.xcprivacy */; }; 4BCD14672B05B682000B1E4C /* NetworkProtectionTermsAndConditionsStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BCD14662B05B682000B1E4C /* NetworkProtectionTermsAndConditionsStore.swift */; }; @@ -297,6 +303,10 @@ 6F64AA5F2C49463C00CF4489 /* ShortcutsModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F64AA5E2C49463C00CF4489 /* ShortcutsModel.swift */; }; 6F655BE22BAB289E00AC3597 /* DefaultTheme.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F655BE12BAB289E00AC3597 /* DefaultTheme.swift */; }; 6F691CCA2C4979EC002E9553 /* FavoritesTooltip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F691CC92C4979EC002E9553 /* FavoritesTooltip.swift */; }; + 6F7FB8E12C660B3E00867DA7 /* NewTabPageFavoritesModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7FB8DF2C660B1A00867DA7 /* NewTabPageFavoritesModelTests.swift */; }; + 6F7FB8E32C660BF300867DA7 /* DailyPixelFiring.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7FB8E22C660BF300867DA7 /* DailyPixelFiring.swift */; }; + 6F7FB8E52C66158D00867DA7 /* NewTabPageShortcutsSettingsModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7FB8E42C66158D00867DA7 /* NewTabPageShortcutsSettingsModelTests.swift */; }; + 6F7FB8E72C66197E00867DA7 /* NewTabPageSectionsSettingsModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7FB8E62C66197E00867DA7 /* NewTabPageSectionsSettingsModelTests.swift */; }; 6F8496412BC3D8EE00ADA54E /* OnboardingButtonsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F8496402BC3D8EE00ADA54E /* OnboardingButtonsView.swift */; }; 6F934F862C58DB00008364E4 /* NewTabPageSettingsPersistentStorageTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F934F852C58DB00008364E4 /* NewTabPageSettingsPersistentStorageTests.swift */; }; 6F96FF102C2B128500162692 /* NewTabPageCustomizeButtonView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F96FF0F2C2B128500162692 /* NewTabPageCustomizeButtonView.swift */; }; @@ -339,7 +349,6 @@ 6FE127462C2054A900EB5724 /* NewTabPageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FE127452C2054A900EB5724 /* NewTabPageViewController.swift */; }; 6FE1274B2C20943500EB5724 /* ShortcutItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FE1274A2C20943500EB5724 /* ShortcutItemView.swift */; }; 6FF915822B88E07A0042AC87 /* AdAttributionFetcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FF915802B88E0750042AC87 /* AdAttributionFetcherTests.swift */; }; - 7B0D52352C35FEAD0035A60E /* VPNLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B0D52342C35FEAD0035A60E /* VPNLogger.swift */; }; 7BC571202BDBB877003B0CCE /* VPNActivationDateStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BC5711F2BDBB877003B0CCE /* VPNActivationDateStore.swift */; }; 7BC571212BDBB977003B0CCE /* VPNActivationDateStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BC5711F2BDBB877003B0CCE /* VPNActivationDateStore.swift */; }; 83004E802193BB8200DA013C /* WKNavigationExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83004E7F2193BB8200DA013C /* WKNavigationExtension.swift */; }; @@ -776,6 +785,8 @@ B6BA95C528894A28004ABA20 /* BrowsingMenuViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = B6BA95C428894A28004ABA20 /* BrowsingMenuViewController.storyboard */; }; B6BA95E828924730004ABA20 /* JSAlertController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = B6BA95E728924730004ABA20 /* JSAlertController.storyboard */; }; B6CB93E5286445AB0090FEB4 /* Base64DownloadSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6CB93E4286445AB0090FEB4 /* Base64DownloadSession.swift */; }; + BBFF18B12C76448100C48D7D /* QuerySubmittedTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBFF18B02C76448100C48D7D /* QuerySubmittedTests.swift */; }; + BD10B8AA2C7629740033115D /* Logger+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD10B8A92C7629740033115D /* Logger+Subscription.swift */; }; BD15DB852B959CFD00821457 /* BundleExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD15DB842B959CFD00821457 /* BundleExtension.swift */; }; BD2F39EB2C19F955005B19E7 /* NetworkProtectionDNSSettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD2F39EA2C19F955005B19E7 /* NetworkProtectionDNSSettingsView.swift */; }; BD862E032B30DA170073E2EE /* VPNFeedbackFormViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD862E022B30DA170073E2EE /* VPNFeedbackFormViewModel.swift */; }; @@ -787,6 +798,12 @@ BDD3B3552B8EF8DB005857A8 /* NetworkProtectionUNNotificationPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE3766DD2AC5945500AAB575 /* NetworkProtectionUNNotificationPresenter.swift */; }; BDE219E62C406D19005D5884 /* PrivacyProDataReporting.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDE219E52C406D19005D5884 /* PrivacyProDataReporting.swift */; }; BDE219EA2C457B46005D5884 /* PrivacyProDataReporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDE219E92C457B46005D5884 /* PrivacyProDataReporterTests.swift */; }; + BDE91CD62C6294020005CB74 /* FeedbackCategoryProviding.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDE91CD52C6294020005CB74 /* FeedbackCategoryProviding.swift */; }; + BDE91CD82C629A910005CB74 /* UnifiedFeedbackSender.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDE91CD72C629A910005CB74 /* UnifiedFeedbackSender.swift */; }; + BDE91CDA2C62A70B0005CB74 /* UnifiedMetadataCollector.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDE91CD92C62A70B0005CB74 /* UnifiedMetadataCollector.swift */; }; + BDE91CDC2C62AA3A0005CB74 /* DefaultMetadataCollector.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDE91CDB2C62AA3A0005CB74 /* DefaultMetadataCollector.swift */; }; + BDE91CDE2C62B90F0005CB74 /* UnifiedFeedbackRootView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDE91CDD2C62B90F0005CB74 /* UnifiedFeedbackRootView.swift */; }; + BDE91CE02C6515420005CB74 /* UnifiedFeedbackFormViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDE91CDF2C6515410005CB74 /* UnifiedFeedbackFormViewModel.swift */; }; BDF8D0022C1B87F4003E3B27 /* NetworkProtectionDNSSettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDF8D0012C1B87F4003E3B27 /* NetworkProtectionDNSSettingsViewModel.swift */; }; BDFF031D2BA3D2BD00F324C9 /* DefaultNetworkProtectionVisibility.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDFF031C2BA3D2BD00F324C9 /* DefaultNetworkProtectionVisibility.swift */; }; BDFF03212BA3D3CF00F324C9 /* NetworkProtectionVisibilityForTunnelProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDFF03202BA3D3CF00F324C9 /* NetworkProtectionVisibilityForTunnelProvider.swift */; }; @@ -947,7 +964,6 @@ EE01EB402AFBD0000096AAC9 /* NetworkProtectionVPNSettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE01EB3F2AFBD0000096AAC9 /* NetworkProtectionVPNSettingsViewModel.swift */; }; EE01EB432AFC1E0A0096AAC9 /* NetworkProtectionVPNLocationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE01EB422AFC1E0A0096AAC9 /* NetworkProtectionVPNLocationView.swift */; }; EE0798C52B179936000A4F64 /* NetworkProtectionVPNCountryLabelsModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE0798C42B179936000A4F64 /* NetworkProtectionVPNCountryLabelsModel.swift */; }; - EE276BEA2A77F823009167B6 /* NetworkProtectionRootViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE276BE92A77F823009167B6 /* NetworkProtectionRootViewController.swift */; }; EE3766DE2AC5945500AAB575 /* NetworkProtectionUNNotificationPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE3766DD2AC5945500AAB575 /* NetworkProtectionUNNotificationPresenter.swift */; }; EE3B226B29DE0F110082298A /* MockInternalUserStoring.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE3B226A29DE0F110082298A /* MockInternalUserStoring.swift */; }; EE3B226C29DE0FD30082298A /* MockInternalUserStoring.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE3B226A29DE0F110082298A /* MockInternalUserStoring.swift */; }; @@ -993,7 +1009,6 @@ F115ED9C2B4EFC8E001A0453 /* TestUtils in Frameworks */ = {isa = PBXBuildFile; productRef = F115ED9B2B4EFC8E001A0453 /* TestUtils */; }; F130D73A1E5776C500C45811 /* OmniBarDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F130D7391E5776C500C45811 /* OmniBarDelegate.swift */; }; F132D6A52C62239B00D85426 /* SubscriptionSettingsHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F132D6A42C62239B00D85426 /* SubscriptionSettingsHeaderView.swift */; }; - F132D6A82C6524B600D85426 /* Logger+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = F132D6A72C6524B600D85426 /* Logger+Subscription.swift */; }; F1386BA41E6846C40062FC3C /* TabDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1386BA31E6846C40062FC3C /* TabDelegate.swift */; }; F13B4BC01F180D8A00814661 /* TabsModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = F13B4BBF1F180D8A00814661 /* TabsModel.swift */; }; F13B4BD31F1822C700814661 /* Tab.swift in Sources */ = {isa = PBXBuildFile; fileRef = F13B4BD21F1822C700814661 /* Tab.swift */; }; @@ -1006,7 +1021,7 @@ F143C2EC1E4A4CD400CFDE3A /* Core.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = F143C2E41E4A4CD400CFDE3A /* Core.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; F143C3171E4A99D200CFDE3A /* AppURLs.swift in Sources */ = {isa = PBXBuildFile; fileRef = F143C3151E4A99D200CFDE3A /* AppURLs.swift */; }; F143C3181E4A99D200CFDE3A /* Link.swift in Sources */ = {isa = PBXBuildFile; fileRef = F143C3161E4A99D200CFDE3A /* Link.swift */; }; - F143C3271E4A9A0E00CFDE3A /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = F143C3231E4A9A0E00CFDE3A /* Logging.swift */; }; + F143C3271E4A9A0E00CFDE3A /* Logger+Multiple.swift in Sources */ = {isa = PBXBuildFile; fileRef = F143C3231E4A9A0E00CFDE3A /* Logger+Multiple.swift */; }; F143C3281E4A9A0E00CFDE3A /* StringExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = F143C3241E4A9A0E00CFDE3A /* StringExtension.swift */; }; F143C3291E4A9A0E00CFDE3A /* URLExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = F143C3251E4A9A0E00CFDE3A /* URLExtension.swift */; }; F14E491F1E391CE900DC037C /* URLExtensionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F14E491E1E391CE900DC037C /* URLExtensionTests.swift */; }; @@ -1014,7 +1029,7 @@ F15531922BF215ED0029ED04 /* SubscriptionTestingUtilities in Frameworks */ = {isa = PBXBuildFile; productRef = F15531912BF215ED0029ED04 /* SubscriptionTestingUtilities */; }; F15531942BF215F60029ED04 /* Subscription in Frameworks */ = {isa = PBXBuildFile; productRef = F15531932BF215F60029ED04 /* Subscription */; }; F15531962BF215F60029ED04 /* SubscriptionTestingUtilities in Frameworks */ = {isa = PBXBuildFile; productRef = F15531952BF215F60029ED04 /* SubscriptionTestingUtilities */; }; - F1564F032B7B915F00D454A6 /* AppDelegate+SKAD4.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1564F022B7B915F00D454A6 /* AppDelegate+SKAD4.swift */; }; + F1564F032B7B915F00D454A6 /* AppDelegate+Attribution.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1564F022B7B915F00D454A6 /* AppDelegate+Attribution.swift */; }; F15D43201E706CC500BF2CDC /* AutocompleteViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F15D431F1E706CC500BF2CDC /* AutocompleteViewController.swift */; }; F1617C131E572E0300DEDCAF /* TabSwitcherViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1617C121E572E0300DEDCAF /* TabSwitcherViewController.swift */; }; F1617C151E57336D00DEDCAF /* TabManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1617C141E57336D00DEDCAF /* TabManager.swift */; }; @@ -1243,6 +1258,10 @@ 025CCFE22582601C001CD5BB /* FingerprintingUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = FingerprintingUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 025CCFE62582601C001CD5BB /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 026DABA328242BC80089E0B5 /* MockUserAgent.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockUserAgent.swift; sourceTree = ""; }; + 0283A1FA2C6E3D8100508FBD /* BrokenSitePromptView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BrokenSitePromptView.swift; sourceTree = ""; }; + 0283A1FB2C6E3D8100508FBD /* BrokenSitePromptViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BrokenSitePromptViewModel.swift; sourceTree = ""; }; + 0283A2002C6E46E300508FBD /* BrokenSitePromptLimiter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BrokenSitePromptLimiter.swift; sourceTree = ""; }; + 0283A2032C6E572F00508FBD /* BrokenSitePromptLimiterTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BrokenSitePromptLimiterTests.swift; sourceTree = ""; }; 02BA15B026A89ECA00472DD7 /* ios-config.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "ios-config.json"; sourceTree = ""; }; 02C4BC3127C3F9B600C40026 /* AppPrivacyConfigurationTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppPrivacyConfigurationTests.swift; sourceTree = ""; }; 02CA904824F6BFE700D41DDF /* navigatorsharepatch.js */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.javascript; path = navigatorsharepatch.js; sourceTree = ""; }; @@ -1294,6 +1313,7 @@ 1E4F4A59297193DE00625985 /* MainViewController+CookiesManaged.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "MainViewController+CookiesManaged.swift"; sourceTree = ""; }; 1E4FAA6327D8DFB900ADC5B3 /* OngoingDownloadRowViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OngoingDownloadRowViewModel.swift; sourceTree = ""; }; 1E4FAA6527D8DFC800ADC5B3 /* CompleteDownloadRowViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CompleteDownloadRowViewModel.swift; sourceTree = ""; }; + 1E53508E2C7C9A1F00818DAA /* DefaultSubscriptionManager+AccountManagerKeychainAccessDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "DefaultSubscriptionManager+AccountManagerKeychainAccessDelegate.swift"; sourceTree = ""; }; 1E61BC2927074BED00B2854D /* TextSizeUserScript.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextSizeUserScript.swift; sourceTree = ""; }; 1E6A4D682984208800A371D3 /* LocaleExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocaleExtension.swift; sourceTree = ""; }; 1E7A71162934EB6400B7EA19 /* OmniBarNotificationAnimator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OmniBarNotificationAnimator.swift; sourceTree = ""; }; @@ -1511,6 +1531,10 @@ 6F64AA5E2C49463C00CF4489 /* ShortcutsModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShortcutsModel.swift; sourceTree = ""; }; 6F655BE12BAB289E00AC3597 /* DefaultTheme.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DefaultTheme.swift; sourceTree = ""; }; 6F691CC92C4979EC002E9553 /* FavoritesTooltip.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FavoritesTooltip.swift; sourceTree = ""; }; + 6F7FB8DF2C660B1A00867DA7 /* NewTabPageFavoritesModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewTabPageFavoritesModelTests.swift; sourceTree = ""; }; + 6F7FB8E22C660BF300867DA7 /* DailyPixelFiring.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DailyPixelFiring.swift; sourceTree = ""; }; + 6F7FB8E42C66158D00867DA7 /* NewTabPageShortcutsSettingsModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewTabPageShortcutsSettingsModelTests.swift; sourceTree = ""; }; + 6F7FB8E62C66197E00867DA7 /* NewTabPageSectionsSettingsModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewTabPageSectionsSettingsModelTests.swift; sourceTree = ""; }; 6F8496402BC3D8EE00ADA54E /* OnboardingButtonsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingButtonsView.swift; sourceTree = ""; }; 6F934F852C58DB00008364E4 /* NewTabPageSettingsPersistentStorageTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewTabPageSettingsPersistentStorageTests.swift; sourceTree = ""; }; 6F96FF0F2C2B128500162692 /* NewTabPageCustomizeButtonView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewTabPageCustomizeButtonView.swift; sourceTree = ""; }; @@ -1554,7 +1578,6 @@ 6FE127452C2054A900EB5724 /* NewTabPageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewTabPageViewController.swift; sourceTree = ""; }; 6FE1274A2C20943500EB5724 /* ShortcutItemView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShortcutItemView.swift; sourceTree = ""; }; 6FF915802B88E0750042AC87 /* AdAttributionFetcherTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdAttributionFetcherTests.swift; sourceTree = ""; }; - 7B0D52342C35FEAD0035A60E /* VPNLogger.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = VPNLogger.swift; sourceTree = ""; }; 7BC5711F2BDBB877003B0CCE /* VPNActivationDateStore.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = VPNActivationDateStore.swift; sourceTree = ""; }; 83004E7F2193BB8200DA013C /* WKNavigationExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WKNavigationExtension.swift; sourceTree = ""; }; 83004E832193E14C00DA013C /* UIAlertControllerExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = UIAlertControllerExtension.swift; path = ../Core/UIAlertControllerExtension.swift; sourceTree = ""; }; @@ -2518,6 +2541,8 @@ B6CB93E4286445AB0090FEB4 /* Base64DownloadSession.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Base64DownloadSession.swift; sourceTree = ""; }; B6DFE6CF2BC7E47500A9CE59 /* SwiftLintTool.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SwiftLintTool.bundle; sourceTree = BUILT_PRODUCTS_DIR; }; B6DFE6D92BC7E61B00A9CE59 /* SwiftLintToolBundleConfiguration.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = SwiftLintToolBundleConfiguration.xcconfig; sourceTree = ""; }; + BBFF18B02C76448100C48D7D /* QuerySubmittedTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = QuerySubmittedTests.swift; sourceTree = ""; }; + BD10B8A92C7629740033115D /* Logger+Subscription.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Logger+Subscription.swift"; sourceTree = ""; }; BD15DB842B959CFD00821457 /* BundleExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BundleExtension.swift; sourceTree = ""; }; BD2F39EA2C19F955005B19E7 /* NetworkProtectionDNSSettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkProtectionDNSSettingsView.swift; sourceTree = ""; }; BD862E022B30DA170073E2EE /* VPNFeedbackFormViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VPNFeedbackFormViewModel.swift; sourceTree = ""; }; @@ -2528,6 +2553,12 @@ BDC234F62B27F51100D3C798 /* UniquePixel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UniquePixel.swift; sourceTree = ""; }; BDE219E52C406D19005D5884 /* PrivacyProDataReporting.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrivacyProDataReporting.swift; sourceTree = ""; }; BDE219E92C457B46005D5884 /* PrivacyProDataReporterTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PrivacyProDataReporterTests.swift; sourceTree = ""; }; + BDE91CD52C6294020005CB74 /* FeedbackCategoryProviding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackCategoryProviding.swift; sourceTree = ""; }; + BDE91CD72C629A910005CB74 /* UnifiedFeedbackSender.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnifiedFeedbackSender.swift; sourceTree = ""; }; + BDE91CD92C62A70B0005CB74 /* UnifiedMetadataCollector.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnifiedMetadataCollector.swift; sourceTree = ""; }; + BDE91CDB2C62AA3A0005CB74 /* DefaultMetadataCollector.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DefaultMetadataCollector.swift; sourceTree = ""; }; + BDE91CDD2C62B90F0005CB74 /* UnifiedFeedbackRootView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnifiedFeedbackRootView.swift; sourceTree = ""; }; + BDE91CDF2C6515410005CB74 /* UnifiedFeedbackFormViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnifiedFeedbackFormViewModel.swift; sourceTree = ""; }; BDF8D0012C1B87F4003E3B27 /* NetworkProtectionDNSSettingsViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkProtectionDNSSettingsViewModel.swift; sourceTree = ""; }; BDFF03192BA39C5A00F324C9 /* NetworkProtectionFeatureVisibility.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkProtectionFeatureVisibility.swift; sourceTree = ""; }; BDFF031C2BA3D2BD00F324C9 /* DefaultNetworkProtectionVisibility.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DefaultNetworkProtectionVisibility.swift; sourceTree = ""; }; @@ -2589,6 +2620,7 @@ CB18F2712AF6D4E400A0F8FE /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/InfoPlist.strings; sourceTree = ""; }; CB1AEFB02799AA940031AE3D /* SwiftUICollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftUICollectionViewCell.swift; sourceTree = ""; }; CB1FAE472AF6D59B003F452F /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/InfoPlist.strings; sourceTree = ""; }; + CB2283F22BD79FC20057DD0A /* BrokenSitePromptView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BrokenSitePromptView.swift; sourceTree = ""; }; CB24F70E29A3EB15006DCC58 /* AppConfigurationURLProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = AppConfigurationURLProvider.swift; path = ../Core/AppConfigurationURLProvider.swift; sourceTree = ""; }; CB258D0C29A4CD0500DEBA24 /* Configuration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = ""; }; CB258D0F29A4D0FD00DEBA24 /* ConfigurationManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfigurationManager.swift; sourceTree = ""; }; @@ -2601,6 +2633,7 @@ CB48D3312B90CE9F00631D8B /* UserBehaviorMonitor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UserBehaviorMonitor.swift; sourceTree = ""; }; CB48D3352B90CECD00631D8B /* UserBehaviorMonitorTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserBehaviorMonitorTests.swift; sourceTree = ""; }; CB5038622AF6D563007FD69F /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/InfoPlist.strings; sourceTree = ""; }; + CB5418622BD90CD000C2CD26 /* BrokenSitePromptViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BrokenSitePromptViewModel.swift; sourceTree = ""; }; CB6ABD002AF6D52B004A8224 /* hu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = hu; path = hu.lproj/InfoPlist.strings; sourceTree = ""; }; CB6CE65B2AF6D4EE00119848 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = ""; }; CB7407BC2AF6D56D0090A41C /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/InfoPlist.strings; sourceTree = ""; }; @@ -2699,7 +2732,6 @@ EE01EB3F2AFBD0000096AAC9 /* NetworkProtectionVPNSettingsViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkProtectionVPNSettingsViewModel.swift; sourceTree = ""; }; EE01EB422AFC1E0A0096AAC9 /* NetworkProtectionVPNLocationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkProtectionVPNLocationView.swift; sourceTree = ""; }; EE0798C42B179936000A4F64 /* NetworkProtectionVPNCountryLabelsModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkProtectionVPNCountryLabelsModel.swift; sourceTree = ""; }; - EE276BE92A77F823009167B6 /* NetworkProtectionRootViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkProtectionRootViewController.swift; sourceTree = ""; }; EE3766DD2AC5945500AAB575 /* NetworkProtectionUNNotificationPresenter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkProtectionUNNotificationPresenter.swift; sourceTree = ""; }; EE3B226A29DE0F110082298A /* MockInternalUserStoring.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockInternalUserStoring.swift; sourceTree = ""; }; EE3B98EA2A9634CC002F63A0 /* DuckDuckGoAlpha.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DuckDuckGoAlpha.entitlements; sourceTree = ""; }; @@ -2769,7 +2801,6 @@ F114C55A1E66EB020018F95F /* NibLoading.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NibLoading.swift; sourceTree = ""; }; F130D7391E5776C500C45811 /* OmniBarDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OmniBarDelegate.swift; sourceTree = ""; }; F132D6A42C62239B00D85426 /* SubscriptionSettingsHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SubscriptionSettingsHeaderView.swift; sourceTree = ""; }; - F132D6A72C6524B600D85426 /* Logger+Subscription.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Logger+Subscription.swift"; sourceTree = ""; }; F1386BA31E6846C40062FC3C /* TabDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TabDelegate.swift; sourceTree = ""; }; F13B4BBF1F180D8A00814661 /* TabsModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TabsModel.swift; sourceTree = ""; }; F13B4BD21F1822C700814661 /* Tab.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Tab.swift; sourceTree = ""; }; @@ -2783,14 +2814,14 @@ F143C2E71E4A4CD400CFDE3A /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; F143C3151E4A99D200CFDE3A /* AppURLs.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppURLs.swift; sourceTree = ""; }; F143C3161E4A99D200CFDE3A /* Link.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Link.swift; sourceTree = ""; }; - F143C3231E4A9A0E00CFDE3A /* Logging.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Logging.swift; sourceTree = ""; }; + F143C3231E4A9A0E00CFDE3A /* Logger+Multiple.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Logger+Multiple.swift"; sourceTree = ""; }; F143C3241E4A9A0E00CFDE3A /* StringExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StringExtension.swift; sourceTree = ""; }; F143C3251E4A9A0E00CFDE3A /* URLExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = URLExtension.swift; sourceTree = ""; }; F143C32B1E4A9A4800CFDE3A /* RoundedRectangleView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = RoundedRectangleView.swift; path = ../Core/RoundedRectangleView.swift; sourceTree = ""; }; F143C32C1E4A9A4800CFDE3A /* UIViewControllerExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = UIViewControllerExtension.swift; path = ../Core/UIViewControllerExtension.swift; sourceTree = ""; }; F143C3451E4AA32D00CFDE3A /* SearchBarExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SearchBarExtension.swift; path = ../Core/SearchBarExtension.swift; sourceTree = ""; }; F14E491E1E391CE900DC037C /* URLExtensionTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = URLExtensionTests.swift; sourceTree = ""; }; - F1564F022B7B915F00D454A6 /* AppDelegate+SKAD4.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "AppDelegate+SKAD4.swift"; sourceTree = ""; }; + F1564F022B7B915F00D454A6 /* AppDelegate+Attribution.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "AppDelegate+Attribution.swift"; sourceTree = ""; }; F159BDA31F0BDB5A00B4A01D /* TabViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TabViewController.swift; sourceTree = ""; }; F15D431F1E706CC500BF2CDC /* AutocompleteViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AutocompleteViewController.swift; sourceTree = ""; }; F1617C121E572E0300DEDCAF /* TabSwitcherViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TabSwitcherViewController.swift; sourceTree = ""; }; @@ -2884,6 +2915,7 @@ 02025664298818B200E694E7 /* NetworkExtension.framework in Frameworks */, 4B45D85C2BE0B115006061B5 /* Subscription in Frameworks */, 4B470EE4299C6DFB0086EBDC /* Core.framework in Frameworks */, + 4BC8948C2C7902E6009AA141 /* WireGuard in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3046,6 +3078,33 @@ path = FingerprintingUITests; sourceTree = ""; }; + 0283A1F82C6E3C3100508FBD /* Recovered References */ = { + isa = PBXGroup; + children = ( + CB2283F22BD79FC20057DD0A /* BrokenSitePromptView.swift */, + CB5418622BD90CD000C2CD26 /* BrokenSitePromptViewModel.swift */, + ); + name = "Recovered References"; + sourceTree = ""; + }; + 0283A1F92C6E3D4200508FBD /* BrokenSitePrompt */ = { + isa = PBXGroup; + children = ( + 0283A1FA2C6E3D8100508FBD /* BrokenSitePromptView.swift */, + 0283A1FB2C6E3D8100508FBD /* BrokenSitePromptViewModel.swift */, + 0283A2002C6E46E300508FBD /* BrokenSitePromptLimiter.swift */, + ); + name = BrokenSitePrompt; + sourceTree = ""; + }; + 0283A2022C6E56F400508FBD /* BrokenSitePrompt */ = { + isa = PBXGroup; + children = ( + 0283A2032C6E572F00508FBD /* BrokenSitePromptLimiterTests.swift */, + ); + name = BrokenSitePrompt; + sourceTree = ""; + }; 02BA15AD26A89DE100472DD7 /* PrivacyConfiguration */ = { isa = PBXGroup; children = ( @@ -3653,6 +3712,9 @@ 6F934F852C58DB00008364E4 /* NewTabPageSettingsPersistentStorageTests.swift */, 6FD0C41E2C5BF097000561C9 /* NewTabPageIntroMessageSetupTests.swift */, 6FD0C4202C5BF774000561C9 /* NewTabPageModelTests.swift */, + 6F7FB8DF2C660B1A00867DA7 /* NewTabPageFavoritesModelTests.swift */, + 6F7FB8E42C66158D00867DA7 /* NewTabPageShortcutsSettingsModelTests.swift */, + 6F7FB8E62C66197E00867DA7 /* NewTabPageSectionsSettingsModelTests.swift */, 564DE4562C4150E600D23241 /* HomeViewControllerDaxDialogTests.swift */, 6FABAA682C6116FD003762EC /* NewTabPageShortcutsSettingsStorageTests.swift */, ); @@ -3983,6 +4045,7 @@ 83ED3B8D1FA8E63700B47556 /* README.md */, 83ED3B8C1FA8E61D00B47556 /* ManualTestsScript.md */, 85A313962028E78A00327D00 /* release_notes.txt */, + 0283A1F82C6E3C3100508FBD /* Recovered References */, ); sourceTree = ""; }; @@ -4017,6 +4080,7 @@ 1E908BED29827C480008C8F3 /* Autoconsent */, F44D279327F331930037F371 /* Autofill */, F1668BCC1E798025008CBA04 /* Bookmarks */, + 0283A1F92C6E3D4200508FBD /* BrokenSitePrompt */, 9830A05725ED0C5D00DB64DE /* BrowsingMenu */, CB258D1129A4F1BB00DEBA24 /* Configuration */, B652DF02287C01EE00C12A9C /* ContentBlocking */, @@ -4780,6 +4844,19 @@ path = Feedback; sourceTree = ""; }; + BDE91CD42C6292BF0005CB74 /* Feedback */ = { + isa = PBXGroup; + children = ( + BDE91CD52C6294020005CB74 /* FeedbackCategoryProviding.swift */, + BDE91CD72C629A910005CB74 /* UnifiedFeedbackSender.swift */, + BDE91CD92C62A70B0005CB74 /* UnifiedMetadataCollector.swift */, + BDE91CDB2C62AA3A0005CB74 /* DefaultMetadataCollector.swift */, + BDE91CDD2C62B90F0005CB74 /* UnifiedFeedbackRootView.swift */, + BDE91CDF2C6515410005CB74 /* UnifiedFeedbackFormViewModel.swift */, + ); + path = Feedback; + sourceTree = ""; + }; BDFF031F2BA3D3AD00F324C9 /* Feature Visibility */ = { isa = PBXGroup; children = ( @@ -5001,8 +5078,10 @@ D664C7922B289AA000CBFA76 /* Subscription */ = { isa = PBXGroup; children = ( + BDE91CD42C6292BF0005CB74 /* Feedback */, F1FDC92F2BF4E0B3006B1435 /* SubscriptionEnvironment+Default.swift */, D60170BB2BA32DD6001911B5 /* Subscription.swift */, + 1E53508E2C7C9A1F00818DAA /* DefaultSubscriptionManager+AccountManagerKeychainAccessDelegate.swift */, D6D95CE42B6DA3F200960317 /* AsyncHeadlessWebview */, D664C7952B289AA000CBFA76 /* Subscription.storekit */, D664C7932B289AA000CBFA76 /* ViewModel */, @@ -5033,8 +5112,8 @@ D664C7962B289AA000CBFA76 /* Extensions */ = { isa = PBXGroup; children = ( + BD10B8A92C7629740033115D /* Logger+Subscription.swift */, F1FDC9342BF51E41006B1435 /* VPNSettings+Environment.swift */, - F132D6A72C6524B600D85426 /* Logger+Subscription.swift */, D664C7982B289AA000CBFA76 /* WKUserContentController+Handler.swift */, ); path = Extensions; @@ -5147,7 +5226,6 @@ isa = PBXGroup; children = ( EE0153EC2A6FF9E6002A8B26 /* NetworkProtectionRootView.swift */, - EE276BE92A77F823009167B6 /* NetworkProtectionRootViewController.swift */, ); name = Root; sourceTree = ""; @@ -5165,7 +5243,6 @@ EE3766DC2AC5940A00AAB575 /* NetworkProtection */ = { isa = PBXGroup; children = ( - 7B0D52342C35FEAD0035A60E /* VPNLogger.swift */, EEEB80A22A421CE600386378 /* NetworkProtectionPacketTunnelProvider.swift */, EE3766DD2AC5945500AAB575 /* NetworkProtectionUNNotificationPresenter.swift */, ); @@ -5272,6 +5349,7 @@ 853A717520F62FE800FE60BC /* Pixel.swift */, 6F03CB062C32F173004179A8 /* PixelFiring.swift */, 6F03CB082C32F331004179A8 /* PixelFiringAsync.swift */, + 6F7FB8E22C660BF300867DA7 /* DailyPixelFiring.swift */, 1E05D1D729C46EDA00BF9A1F /* TimedPixel.swift */, 1E05D1D529C46EBB00BF9A1F /* DailyPixel.swift */, 85E242162AB1B54D000F3E28 /* ReturnUserMeasurement.swift */, @@ -5384,6 +5462,7 @@ 981FED7222045FFA008488D7 /* AutoClear */, 1E1D8B5B2994FF7800C96994 /* Autoconsent */, F40F843228C92B1C0081AE75 /* Autofill */, + 0283A2022C6E56F400508FBD /* BrokenSitePrompt */, 98559FD0267099F400A83094 /* ContentBlocker */, 31C138A127A334F600FFD4B2 /* Downloads */, D62EC3B72C24695800FC9D04 /* DuckPlayer */, @@ -5555,7 +5634,7 @@ 9887DC242354D2AA005C85F5 /* Database.swift */, 85200FA01FBC5BB5001AF290 /* DDGPersistenceContainer.swift */, F16393FE1ECCB9CC00DDD653 /* FileLoader.swift */, - F143C3231E4A9A0E00CFDE3A /* Logging.swift */, + F143C3231E4A9A0E00CFDE3A /* Logger+Multiple.swift */, F10E522C1E946F8800CE1253 /* NSAttributedStringExtension.swift */, F143C3241E4A9A0E00CFDE3A /* StringExtension.swift */, F1D477CA1F2149C40031ED49 /* Type.swift */, @@ -5833,7 +5912,7 @@ CB24F70E29A3EB15006DCC58 /* AppConfigurationURLProvider.swift */, 84E341951E2F7EFB00BDBA6F /* AppDelegate.swift */, 85DB12EC2A1FED0C000A4A72 /* AppDelegate+AppDeepLinks.swift */, - F1564F022B7B915F00D454A6 /* AppDelegate+SKAD4.swift */, + F1564F022B7B915F00D454A6 /* AppDelegate+Attribution.swift */, 98B31291218CCB8C00E54DE1 /* AppDependencyProvider.swift */, 85BA58591F3506AE00C6E8CA /* AppSettings.swift */, 85BA58541F34F49E00C6E8CA /* AppUserDefaults.swift */, @@ -5913,6 +5992,7 @@ F1D477C71F2139210031ED49 /* OmniBar */ = { isa = PBXGroup; children = ( + BBFF18B02C76448100C48D7D /* QuerySubmittedTests.swift */, 8588026424E4209900C24AB6 /* LargeOmniBarStateTests.swift */, 85F20005221702F7006BB258 /* AddressDisplayHelperTests.swift */, F1D477C81F2139410031ED49 /* SmallOmniBarStateTests.swift */, @@ -6106,6 +6186,7 @@ name = PacketTunnelProvider; packageProductDependencies = ( 4B45D85B2BE0B115006061B5 /* Subscription */, + 4BC8948B2C7902E6009AA141 /* WireGuard */, ); productName = PacketTunnelProvider; productReference = 02025662298818B100E694E7 /* PacketTunnelProvider.appex */; @@ -6519,6 +6600,7 @@ B6F997C22B8F374300476735 /* XCRemoteSwiftPackageReference "apple-toolbox" */, F1D43AF82B99C1D300BAB743 /* XCRemoteSwiftPackageReference "BareBonesBrowser" */, 9F8FE9472BAE50E50071E372 /* XCRemoteSwiftPackageReference "lottie-spm" */, + 4BC8948A2C7902E6009AA141 /* XCRemoteSwiftPackageReference "wireguard-apple" */, ); productRefGroup = 84E341931E2F7EFB00BDBA6F /* Products */; projectDirPath = ""; @@ -6927,7 +7009,6 @@ EEEB80A32A421CE600386378 /* NetworkProtectionPacketTunnelProvider.swift in Sources */, EE3766DE2AC5945500AAB575 /* NetworkProtectionUNNotificationPresenter.swift in Sources */, F1FDC9362BF51E41006B1435 /* VPNSettings+Environment.swift in Sources */, - 7B0D52352C35FEAD0035A60E /* VPNLogger.swift in Sources */, BDFF03212BA3D3CF00F324C9 /* NetworkProtectionVisibilityForTunnelProvider.swift in Sources */, EEFC6A602AC0F2F80065027D /* UserText.swift in Sources */, 7BC571212BDBB977003B0CCE /* VPNActivationDateStore.swift in Sources */, @@ -6956,6 +7037,7 @@ files = ( EE4FB1862A28CE7200E5CBA7 /* NetworkProtectionStatusView.swift in Sources */, C17B59592A03AAD30055F2D1 /* PasswordGenerationPromptViewModel.swift in Sources */, + BDE91CDE2C62B90F0005CB74 /* UnifiedFeedbackRootView.swift in Sources */, D65625A12C232F5E006EF297 /* SettingsDuckPlayerView.swift in Sources */, D6FEB8B52B74994000C3615F /* HeadlessWebViewCoordinator.swift in Sources */, 6FE1273D2C204C2500EB5724 /* FavoritesView.swift in Sources */, @@ -7006,6 +7088,7 @@ 1D200C992BA3176D00108701 /* SettingsOthersView.swift in Sources */, 31DD208427395A5A008FB313 /* VoiceSearchHelper.swift in Sources */, 9874F9EE2187AFCE00CAF33D /* Themable.swift in Sources */, + 0283A1FC2C6E3D8100508FBD /* BrokenSitePromptView.swift in Sources */, F44D279E27F331BB0037F371 /* AutofillLoginPromptViewModel.swift in Sources */, 3151F0F02735802800226F58 /* VoiceSearchViewController.swift in Sources */, D6FEB8B32B74990D00C3615F /* HeadlessWebViewNavCoordinator.swift in Sources */, @@ -7057,7 +7140,7 @@ 9F5E5AB02C3E4C6000165F54 /* ContextualOnboardingPresenter.swift in Sources */, 310D091B2799F54900DC0060 /* DownloadManager.swift in Sources */, 98D98A7425ED88D100D8E3DF /* BrowsingMenuEntryViewCell.swift in Sources */, - F1564F032B7B915F00D454A6 /* AppDelegate+SKAD4.swift in Sources */, + F1564F032B7B915F00D454A6 /* AppDelegate+Attribution.swift in Sources */, 98F3A1D8217B37010011A0D4 /* Theme.swift in Sources */, 4B2C79612C5B27AC00A240CC /* VPNSnoozeActivityAttributes.swift in Sources */, CB9B873C278C8FEA001F4906 /* WidgetEducationView.swift in Sources */, @@ -7089,8 +7172,8 @@ 6F691CCA2C4979EC002E9553 /* FavoritesTooltip.swift in Sources */, D65625952C22D382006EF297 /* TabViewController.swift in Sources */, 8C4838B5221C8F7F008A6739 /* GestureToolbarButton.swift in Sources */, - EE276BEA2A77F823009167B6 /* NetworkProtectionRootViewController.swift in Sources */, 310ECFDD282A8BB0005029B3 /* EnableAutofillSettingsTableViewCell.swift in Sources */, + BDE91CD62C6294020005CB74 /* FeedbackCategoryProviding.swift in Sources */, 6F9FFE2A2C57ADB100A238BE /* EditableShortcutsView.swift in Sources */, 1E908BF329827C480008C8F3 /* AutoconsentManagement.swift in Sources */, D6D95CE32B6D9F8800960317 /* AsyncHeadlessWebViewModel.swift in Sources */, @@ -7179,6 +7262,7 @@ 85F2FFCF2211F8E5006BB258 /* TabSwitcherViewController+KeyCommands.swift in Sources */, 3157B43327F497E90042D3D7 /* SaveLoginView.swift in Sources */, F17922E01E71BB59006E3D97 /* AutocompleteViewControllerDelegate.swift in Sources */, + BDE91CDC2C62AA3A0005CB74 /* DefaultMetadataCollector.swift in Sources */, D664C7C82B289AA200CBFA76 /* SubscriptionFlowView.swift in Sources */, EE458D142ABB652900FC651A /* NetworkProtectionDebugUtilities.swift in Sources */, 8528AE7C212EF4A200D0BD74 /* AppRatingPrompt.swift in Sources */, @@ -7267,6 +7351,7 @@ 85DDE0402AC6FF65006ABCA2 /* MainView.swift in Sources */, 980891A72237D5D800313A70 /* FeedbackPresenter.swift in Sources */, 989B337522D7EF2100437824 /* EmptyCollectionReusableView.swift in Sources */, + 0283A1FE2C6E3E1B00508FBD /* BrokenSitePromptViewModel.swift in Sources */, 8524CC94246C5C8900E59D45 /* DaxDialogViewController.swift in Sources */, 851672CF2BED1F9500592F24 /* HistoryMessageManager.swift in Sources */, F42EF9312614BABE00101FB9 /* ActionSheetDaxDialogViewController.swift in Sources */, @@ -7275,6 +7360,7 @@ F13B4BC01F180D8A00814661 /* TabsModel.swift in Sources */, BD862E052B30DB250073E2EE /* VPNFeedbackCategory.swift in Sources */, 85AE6690209724120014CF04 /* NotificationView.swift in Sources */, + BDE91CE02C6515420005CB74 /* UnifiedFeedbackFormViewModel.swift in Sources */, 1EA51376286596A000493C6A /* PrivacyIconLogic.swift in Sources */, 980891A92238504B00313A70 /* UILabelExtension.swift in Sources */, 6FD8E51E2C5B84DE00345670 /* NewTabPageIntroMessageView.swift in Sources */, @@ -7313,7 +7399,7 @@ 85C861E628FF1B5F00189466 /* HomeViewSectionRenderersExtension.swift in Sources */, CB825C922C071B1400BCC586 /* AlertView.swift in Sources */, 1DDF40292BA04FCD006850D9 /* SettingsPrivacyProtectionsView.swift in Sources */, - F132D6A82C6524B600D85426 /* Logger+Subscription.swift in Sources */, + BDE91CD82C629A910005CB74 /* UnifiedFeedbackSender.swift in Sources */, 6F64AA5F2C49463C00CF4489 /* ShortcutsModel.swift in Sources */, F1D477C61F2126CC0031ED49 /* OmniBarState.swift in Sources */, 85F2FFCD2211F615006BB258 /* MainViewController+KeyCommands.swift in Sources */, @@ -7374,6 +7460,7 @@ B6CB93E5286445AB0090FEB4 /* Base64DownloadSession.swift in Sources */, 1EEF387D285B1A1100383393 /* TrackerImageCache.swift in Sources */, 3151F0EC27357FEE00226F58 /* VoiceSearchFeedbackViewModel.swift in Sources */, + 1E53508F2C7C9A1F00818DAA /* DefaultSubscriptionManager+AccountManagerKeychainAccessDelegate.swift in Sources */, 1DDF402D2BA09482006850D9 /* SettingsMainSettingsView.swift in Sources */, 85010502292FB1000033978F /* FireproofFaviconUpdater.swift in Sources */, F1C4A70E1E57725800A6CA1B /* OmniBar.swift in Sources */, @@ -7395,6 +7482,7 @@ C13F3F6A2B7F883A0083BE40 /* AuthConfirmationPromptViewController.swift in Sources */, 851624C72B96389D002D5CD7 /* HistoryDebugViewController.swift in Sources */, 8540BBA22440857A00017FE4 /* PreserveLoginsWorker.swift in Sources */, + 0283A2012C6E46E300508FBD /* BrokenSitePromptLimiter.swift in Sources */, 85DFEDF924CF3D0E00973FE7 /* TabsBarCell.swift in Sources */, 851672D32BED23FE00592F24 /* AutocompleteViewModel.swift in Sources */, 8562CE152B9B645C00E1D399 /* CachedBookmarkSuggestions.swift in Sources */, @@ -7411,6 +7499,7 @@ 85F98F92296F32BD00742F4A /* SyncSettingsViewController.swift in Sources */, 84E341961E2F7EFB00BDBA6F /* AppDelegate.swift in Sources */, 310D091D2799F57200DC0060 /* Download.swift in Sources */, + BDE91CDA2C62A70B0005CB74 /* UnifiedMetadataCollector.swift in Sources */, C13F3F6C2B7F88470083BE40 /* AuthConfirmationPromptViewModel.swift in Sources */, 1EEF124E2850EADE003DDE57 /* PrivacyIconView.swift in Sources */, 9FB027122C2526DD009EA190 /* OnboardingView+IntroDialogContent.swift in Sources */, @@ -7482,6 +7571,7 @@ D664C7B92B289AA200CBFA76 /* WKUserContentController+Handler.swift in Sources */, 1E8AD1D727C2E24E00ABA377 /* DownloadsListRowViewModel.swift in Sources */, 9FEA222E2C324ECD006B03BF /* ViewVisibility.swift in Sources */, + BD10B8AA2C7629740033115D /* Logger+Subscription.swift in Sources */, 1E865AF0272042DB001C74F3 /* TextSizeSettingsViewController.swift in Sources */, D6E0C1892B7A2E0D00D5E1E9 /* DesktopDownloadViewModel.swift in Sources */, 8524CC9A246DA81700E59D45 /* FullscreenDaxDialogViewController.swift in Sources */, @@ -7559,6 +7649,7 @@ 85C11E4120904BBE00BFFEB4 /* VariantManagerTests.swift in Sources */, F1134ECE1F40EA9C00B73467 /* AtbParserTests.swift in Sources */, F189AEE41F18FDAF001EBAE1 /* LinkTests.swift in Sources */, + 6F7FB8E12C660B3E00867DA7 /* NewTabPageFavoritesModelTests.swift in Sources */, F1BDDBFE2C340D9C00459306 /* SubscriptionFlowViewModelTests.swift in Sources */, F1BDDC022C340DDF00459306 /* SyncManagementViewModelTests.swift in Sources */, D625AAEC2BBEF27600BC189A /* TabURLInterceptorTests.swift in Sources */, @@ -7584,6 +7675,7 @@ 98AAF8E4292EB46000DBDF06 /* BookmarksMigrationTests.swift in Sources */, 85D2187224BF24F2004373D2 /* NotFoundCachingDownloaderTests.swift in Sources */, C111B26927F579EF006558B1 /* BookmarkOrFolderTests.swift in Sources */, + 6F7FB8E72C66197E00867DA7 /* NewTabPageSectionsSettingsModelTests.swift in Sources */, 851CD674244D7E6000331B98 /* UserDefaultsExtension.swift in Sources */, 569437362BE5160600C0881B /* SyncSettingsViewControllerErrorTests.swift in Sources */, 850559D223CF710C0055C0D5 /* WebCacheManagerTests.swift in Sources */, @@ -7591,12 +7683,14 @@ 6F934F862C58DB00008364E4 /* NewTabPageSettingsPersistentStorageTests.swift in Sources */, 987130C5294AAB9F00AB05E0 /* BookmarkEditorViewModelTests.swift in Sources */, BDFF03262BA3DA4900F324C9 /* NetworkProtectionFeatureVisibilityTests.swift in Sources */, + 0283A2042C6E572F00508FBD /* BrokenSitePromptLimiterTests.swift in Sources */, D62EC3BA2C246A7000FC9D04 /* YoutublePlayerNavigationHandlerTests.swift in Sources */, 9FEA22302C325125006B03BF /* AnimatableTypingTextModelTests.swift in Sources */, 8341D807212D5E8D000514C2 /* HashExtensionTest.swift in Sources */, C1D21E2F293A599C006E5A05 /* AutofillLoginSessionTests.swift in Sources */, 85D2187924BF6B8B004373D2 /* FaviconSourcesProviderTests.swift in Sources */, 9F69331B2C5A16E200CD6A5D /* OnboardingDaxFavouritesTests.swift in Sources */, + 6F7FB8E52C66158D00867DA7 /* NewTabPageShortcutsSettingsModelTests.swift in Sources */, 983BD6B52B34760600AAC78E /* MockPrivacyConfiguration.swift in Sources */, 1E8146AD28C8ABF000D1AF63 /* TrackerAnimationLogicTests.swift in Sources */, C1CDA31E2AFBF811006D1476 /* AutofillNeverPromptWebsitesManagerTests.swift in Sources */, @@ -7615,6 +7709,7 @@ 56D0602F2C384F70003BAEB5 /* OnboardingSuggestedSitesProviderTests.swift in Sources */, 851B1283221FE65E004781BC /* ImproveOnboardingExperiment1Tests.swift in Sources */, F194FAFB1F14E622009B4DF8 /* UIFontExtensionTests.swift in Sources */, + BBFF18B12C76448100C48D7D /* QuerySubmittedTests.swift in Sources */, 9F23B8092C2BE9B700950875 /* MockURLOpener.swift in Sources */, 9F8007262C5261AF003EDAF4 /* MockPrivacyDataReporter.swift in Sources */, F40F843728C939760081AE75 /* AutofillLoginListViewModelTests.swift in Sources */, @@ -7804,11 +7899,12 @@ 85BDC3192436161C0053DB07 /* LoginFormDetectionUserScript.swift in Sources */, 37DF000A29F9C416002B7D3E /* SyncMetadataDatabase.swift in Sources */, F143C3291E4A9A0E00CFDE3A /* URLExtension.swift in Sources */, - F143C3271E4A9A0E00CFDE3A /* Logging.swift in Sources */, + F143C3271E4A9A0E00CFDE3A /* Logger+Multiple.swift in Sources */, 85372447220DD103009D09CD /* UIKeyCommandExtension.swift in Sources */, 85A1B3B220C6CD9900C18F15 /* CookieStorage.swift in Sources */, 9856A1992933D2EB00ACB44F /* BookmarksModelsErrorHandling.swift in Sources */, 850559D023CF647C0055C0D5 /* PreserveLogins.swift in Sources */, + 6F7FB8E32C660BF300867DA7 /* DailyPixelFiring.swift in Sources */, C1CCCBA7283E101500CF3791 /* FaviconsHelper.swift in Sources */, 9813F79822BA71AA00A80EDB /* StorageCache.swift in Sources */, B603974929C19F6F00902A34 /* Assertions.swift in Sources */, @@ -10514,6 +10610,14 @@ version = 2.0.0; }; }; + 4BC8948A2C7902E6009AA141 /* XCRemoteSwiftPackageReference "wireguard-apple" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/duckduckgo/wireguard-apple"; + requirement = { + kind = exactVersion; + version = 1.1.3; + }; + }; 854007E52B57FB020001BD98 /* XCRemoteSwiftPackageReference "ZIPFoundation" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/weichsel/ZIPFoundation.git"; @@ -10527,7 +10631,7 @@ repositoryURL = "https://github.com/DuckDuckGo/BrowserServicesKit"; requirement = { kind = exactVersion; - version = 184.0.2; + version = 188.1.0; }; }; 9F8FE9472BAE50E50071E372 /* XCRemoteSwiftPackageReference "lottie-spm" */ = { @@ -10663,6 +10767,11 @@ package = F42D541B29DCA40B004C4FF1 /* XCRemoteSwiftPackageReference "DesignResourcesKit" */; productName = DesignResourcesKit; }; + 4BC8948B2C7902E6009AA141 /* WireGuard */ = { + isa = XCSwiftPackageProductDependency; + package = 4BC8948A2C7902E6009AA141 /* XCRemoteSwiftPackageReference "wireguard-apple" */; + productName = WireGuard; + }; 4BE67B002B96B741007335F7 /* Common */ = { isa = XCSwiftPackageProductDependency; package = 98A16C2928A11BDE00A6C003 /* XCRemoteSwiftPackageReference "BrowserServicesKit" */; diff --git a/DuckDuckGo.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/DuckDuckGo.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index c23449b53a..a184ff8d6b 100644 --- a/DuckDuckGo.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/DuckDuckGo.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -32,8 +32,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/DuckDuckGo/BrowserServicesKit", "state" : { - "revision" : "9f1bedfffe7fa5e4a9e7dee9eeb3e554267c04d5", - "version" : "184.0.2" + "revision" : "ce1b7228a38d2b18525590256051a012109cfee6", + "version" : "188.1.0" } }, { @@ -122,8 +122,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/duckduckgo/privacy-dashboard", "state" : { - "revision" : "36dc07cba4bc1e7e0c1d1fb679c3cd077694a072", - "version" : "5.0.0" + "revision" : "665b23dc656c9f787494620494f8e56098a900b2", + "version" : "5.1.1" } }, { @@ -138,7 +138,7 @@ { "identity" : "swift-argument-parser", "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-argument-parser", + "location" : "https://github.com/apple/swift-argument-parser.git", "state" : { "revision" : "0fbc8848e389af3bb55c182bc19ca9d5dc2f255b", "version" : "1.4.0" diff --git a/DuckDuckGo.xcodeproj/xcshareddata/xcschemes/DuckDuckGo.xcscheme b/DuckDuckGo.xcodeproj/xcshareddata/xcschemes/DuckDuckGo.xcscheme index 821a6a6a5e..aa78a92807 100644 --- a/DuckDuckGo.xcodeproj/xcshareddata/xcschemes/DuckDuckGo.xcscheme +++ b/DuckDuckGo.xcodeproj/xcshareddata/xcschemes/DuckDuckGo.xcscheme @@ -67,6 +67,9 @@ + + AdServicesAttributionResponse? @@ -56,7 +56,7 @@ struct DefaultAdAttributionFetcher: AdAttributionFetcher { lastToken = token return try await fetchAttributionData(using: token) } catch let error as AdAttributionFetcherError { - os_log("AdAttributionFetcher failed to fetch attribution data: %@. Retrying.", log: .adAttributionLog, error.localizedDescription) + Logger.adAttribution.error("AdAttributionFetcher failed to fetch attribution data: \(error.localizedDescription, privacy: .public). Retrying.") if error == .invalidToken { lastToken = nil @@ -69,7 +69,7 @@ struct DefaultAdAttributionFetcher: AdAttributionFetcher { break } } catch { - os_log("AdAttributionFetcher failed to fetch attribution data: %@", log: .adAttributionLog, error.localizedDescription) + Logger.adAttribution.error("AdAttributionFetcher failed to fetch attribution data: \(error.localizedDescription, privacy: .public)") // Do not retry break diff --git a/DuckDuckGo/AppDelegate+Attribution.swift b/DuckDuckGo/AppDelegate+Attribution.swift new file mode 100644 index 0000000000..e82dd002e3 --- /dev/null +++ b/DuckDuckGo/AppDelegate+Attribution.swift @@ -0,0 +1,60 @@ +// +// AppDelegate+Attribution.swift +// DuckDuckGo +// +// Copyright © 2023 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation +import Common +import StoreKit +import AdAttributionKit +import os.log + +extension AppDelegate { + + func updateAttribution(conversionValue: Int) { + Task { + if #available(iOS 17.4, *) { + // https://developer.apple.com/documentation/adattributionkit/adattributionkit-skadnetwork-interoperability + await updateAdAttributionKitPostback(conversionValue: conversionValue) + await updateSKANPostback(conversionValue: conversionValue) + } else if #available(iOS 16.1, *) { + await updateSKANPostback(conversionValue: conversionValue) + } + } + } + + @available(iOS 17.4, *) + private func updateAdAttributionKitPostback(conversionValue: Int) async { + do { + try await AdAttributionKit.Postback.updateConversionValue(conversionValue, coarseConversionValue: .high, lockPostback: true) + Logger.general.debug("Attribution: AdAttributionKit postback succeeded") + } catch { + Logger.general.error("Attribution: AdAttributionKit postback failed \(error.localizedDescription, privacy: .public)") + } + } + + @available(iOS 16.1, *) + private func updateSKANPostback(conversionValue: Int) async { + do { + try await SKAdNetwork.updatePostbackConversionValue(conversionValue, coarseValue: .high, lockWindow: true) + Logger.general.debug("Attribution: SKAN 4 postback succeeded") + } catch { + Logger.general.error("Attribution: SKAN 4 postback failed \(error.localizedDescription, privacy: .public)") + } + } + +} diff --git a/DuckDuckGo/AppDelegate+SKAD4.swift b/DuckDuckGo/AppDelegate+SKAD4.swift deleted file mode 100644 index 9f65d0eac3..0000000000 --- a/DuckDuckGo/AppDelegate+SKAD4.swift +++ /dev/null @@ -1,40 +0,0 @@ -// -// AppDelegate+SKAD4.swift -// DuckDuckGo -// -// Copyright © 2023 DuckDuckGo. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -import Foundation -import StoreKit -import Common - -extension AppDelegate { - - func updateSKAd(conversionValue: Int) { - - if #available(iOS 16.1, *) { - SKAdNetwork.updatePostbackConversionValue(conversionValue, coarseValue: .high, lockWindow: true, completionHandler: { error in - if let error { - os_log("SKAD 4 postback failed %@", type: .error, error.localizedDescription) - } else { - os_log("SKAD 4 postback succeeded", type: .debug) - } - }) - } else { - os_log("SKAD 4 Not supported in this iOS version", type: .debug) - } - } -} diff --git a/DuckDuckGo/AppDelegate.swift b/DuckDuckGo/AppDelegate.swift index c596d18e6c..bbe5e3de71 100644 --- a/DuckDuckGo/AppDelegate.swift +++ b/DuckDuckGo/AppDelegate.swift @@ -37,6 +37,7 @@ import SyncDataProviders import Subscription import NetworkProtection import WebKit +import os.log @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { @@ -79,7 +80,7 @@ import WebKit private var syncStateCancellable: AnyCancellable? private var isSyncInProgressCancellable: AnyCancellable? - private let crashCollection = CrashCollection(platform: .iOS, log: .generalLog) + private let crashCollection = CrashCollection(platform: .iOS) private var crashReportUploaderOnboarding: CrashCollectionOnboarding? private var autofillPixelReporter: AutofillPixelReporter? @@ -100,6 +101,7 @@ import WebKit private var didCrashDuringCrashHandlersSetUp: Bool private let launchOptionsHandler = LaunchOptionsHandler() + private let onboardingPixelReporter = OnboardingPixelReporter() override init() { super.init() @@ -114,8 +116,8 @@ import WebKit // swiftlint:disable:next function_body_length func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { - // SKAD4 support - updateSKAd(conversionValue: 1) + // Attribution support + updateAttribution(conversionValue: 1) #if targetEnvironment(simulator) if ProcessInfo.processInfo.environment["UITESTING"] == "true" { @@ -271,7 +273,6 @@ import WebKit dataProvidersSource: syncDataProviders, errorEvents: SyncErrorHandler(), privacyConfigurationManager: ContentBlocking.shared.privacyConfigurationManager, - log: .syncLog, environment: environment ) syncService.initializeIfNeeded() @@ -322,6 +323,8 @@ import WebKit presentInsufficientDiskSpaceAlert() } else { + let daxDialogsFactory = ExperimentContextualDaxDialogsFactory(contextualOnboardingLogic: daxDialogs, contextualOnboardingPixelReporter: onboardingPixelReporter) + let contextualOnboardingPresenter = ContextualOnboardingPresenter(variantManager: variantManager, daxDialogsFactory: daxDialogsFactory) let main = MainViewController(bookmarksDatabase: bookmarksDatabase, bookmarksDatabaseCleaner: syncDataProviders.bookmarksAdapter.databaseCleaner, historyManager: historyManager, @@ -334,9 +337,9 @@ import WebKit syncPausedStateManager: syncErrorHandler, privacyProDataReporter: privacyProDataReporter, variantManager: variantManager, - contextualOnboardingPresenter: ContextualOnboardingPresenter(variantManager: variantManager), + contextualOnboardingPresenter: contextualOnboardingPresenter, contextualOnboardingLogic: daxDialogs, - contextualOnboardingPixelReporter: OnboardingPixelReporter()) + contextualOnboardingPixelReporter: onboardingPixelReporter) main.loadViewIfNeeded() syncErrorHandler.alertPresenter = main @@ -474,7 +477,7 @@ import WebKit do { try FileManager.default.removeItem(at: tmp) } catch { - os_log("Failed to delete tmp dir") + Logger.general.error("Failed to delete tmp dir") } } @@ -500,6 +503,7 @@ import WebKit StatisticsLoader.shared.refreshAppRetentionAtb() self.fireAppLaunchPixel() self.reportAdAttribution() + self.onboardingPixelReporter.fireEnqueuedPixelsIfNeeded() } if appIsLaunching { @@ -677,11 +681,11 @@ import WebKit private func suspendSync() { if syncService.isSyncInProgress { - os_log(.debug, log: .syncLog, "Sync is in progress. Starting background task to allow it to gracefully complete.") + Logger.sync.debug("Sync is in progress. Starting background task to allow it to gracefully complete.") var taskID: UIBackgroundTaskIdentifier! taskID = UIApplication.shared.beginBackgroundTask(withName: "Cancelled Sync Completion Task") { - os_log(.debug, log: .syncLog, "Forcing background task completion") + Logger.sync.debug("Forcing background task completion") UIApplication.shared.endBackgroundTask(taskID) } syncDidFinishCancellable?.cancel() @@ -689,7 +693,7 @@ import WebKit .prefix(1) .receive(on: DispatchQueue.main) .sink { _ in - os_log(.debug, log: .syncLog, "Ending background task") + Logger.sync.debug("Ending background task") UIApplication.shared.endBackgroundTask(taskID) } } @@ -704,7 +708,7 @@ import WebKit } func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) -> Bool { - os_log("App launched with url %s", log: .lifecycleLog, type: .debug, url.absoluteString) + Logger.sync.debug("App launched with url \(url.absoluteString)") // If showing the onboarding intro ignore deeplinks guard mainViewController?.needsToShowOnboardingIntro() == false else { @@ -736,7 +740,7 @@ import WebKit func application(_ application: UIApplication, performFetchWithCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) { - os_log(#function, log: .lifecycleLog, type: .debug) + Logger.lifecycle.debug(#function) AppConfigurationFetch().start(isBackgroundFetch: true) { result in switch result { @@ -854,7 +858,7 @@ import WebKit } private func handleShortCutItem(_ shortcutItem: UIApplicationShortcutItem) { - os_log("Handling shortcut item: %s", log: .generalLog, type: .debug, shortcutItem.type) + Logger.general.debug("Handling shortcut item: \(shortcutItem.type)") Task { @MainActor in @@ -1031,10 +1035,8 @@ extension AppDelegate: UNUserNotificationCenterDelegate { func presentNetworkProtectionStatusSettingsModal() { Task { - if case .success(let hasEntitlements) = await accountManager.hasEntitlement(forProductName: .networkProtection), - hasEntitlements { - let networkProtectionRoot = NetworkProtectionRootViewController() - presentSettings(with: networkProtectionRoot) + if case .success(let hasEntitlements) = await accountManager.hasEntitlement(forProductName: .networkProtection), hasEntitlements { + (window?.rootViewController as? MainViewController)?.segueToVPN() } else { (window?.rootViewController as? MainViewController)?.segueToPrivacyPro() } diff --git a/DuckDuckGo/AppDependencyProvider.swift b/DuckDuckGo/AppDependencyProvider.swift index 9fb8e62f7c..2577e88ea6 100644 --- a/DuckDuckGo/AppDependencyProvider.swift +++ b/DuckDuckGo/AppDependencyProvider.swift @@ -112,11 +112,14 @@ class AppDependencyProvider: DependencyProvider { subscriptionEndpointService: subscriptionService, authEndpointService: authService) - subscriptionManager = DefaultSubscriptionManager(storePurchaseManager: DefaultStorePurchaseManager(), - accountManager: accountManager, - subscriptionEndpointService: subscriptionService, - authEndpointService: authService, - subscriptionEnvironment: subscriptionEnvironment) + let subscriptionManager = DefaultSubscriptionManager(storePurchaseManager: DefaultStorePurchaseManager(), + accountManager: accountManager, + subscriptionEndpointService: subscriptionService, + authEndpointService: authService, + subscriptionEnvironment: subscriptionEnvironment) + accountManager.delegate = subscriptionManager + + self.subscriptionManager = subscriptionManager let subscriptionFeatureAvailability: SubscriptionFeatureAvailability = DefaultSubscriptionFeatureAvailability( privacyConfigurationManager: ContentBlocking.shared.privacyConfigurationManager, diff --git a/DuckDuckGo/AppIconManager.swift b/DuckDuckGo/AppIconManager.swift index dbee15c1c3..43b7494cb9 100644 --- a/DuckDuckGo/AppIconManager.swift +++ b/DuckDuckGo/AppIconManager.swift @@ -17,9 +17,10 @@ // limitations under the License. // -import Common +import Foundation import UIKit import Core +import os.log class AppIconManager { @@ -38,7 +39,7 @@ class AppIconManager { let alternateIconName = appIcon != AppIcon.defaultAppIcon ? appIcon.rawValue : nil UIApplication.shared.setAlternateIconName(alternateIconName) { error in if let error = error { - os_log("Error while changing app icon: %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Error while changing app icon: \(error.localizedDescription, privacy: .public)") completionHandler?(error) } else { completionHandler?(nil) diff --git a/DuckDuckGo/AppRatingPrompt.swift b/DuckDuckGo/AppRatingPrompt.swift index 9222d17dd2..b929572719 100644 --- a/DuckDuckGo/AppRatingPrompt.swift +++ b/DuckDuckGo/AppRatingPrompt.swift @@ -20,7 +20,7 @@ import Foundation import Core import CoreData -import Common +import os.log protocol AppRatingPromptStorage { @@ -141,7 +141,7 @@ class AppRatingPromptCoreDataStorage: AppRatingPromptStorage { do { results = try context.fetch(fetchRequest) } catch { - os_log("Error while fetching AppRatingPromptEntity: %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Error while fetching AppRatingPromptEntity: \(error.localizedDescription, privacy: .public)") return nil } diff --git a/DuckDuckGo/AppUserDefaults.swift b/DuckDuckGo/AppUserDefaults.swift index c2261b6d07..1b7b19024d 100644 --- a/DuckDuckGo/AppUserDefaults.swift +++ b/DuckDuckGo/AppUserDefaults.swift @@ -397,6 +397,8 @@ public class AppUserDefaults: AppSettings { } set { userDefaults?.set(newValue.stringValue, forKey: Keys.duckPlayerMode) + // Reset Hidden overlay setting when changing Mode + userDefaults?.set(false, forKey: Keys.duckPlayerAskModeOverlayHidden) NotificationCenter.default.post(name: AppUserDefaults.Notifications.duckPlayerSettingsUpdated, object: duckPlayerMode) } diff --git a/DuckDuckGo/Assets.xcassets/Wand-16.imageset/Contents.json b/DuckDuckGo/Assets.xcassets/Wand-16.imageset/Contents.json deleted file mode 100644 index 279c563708..0000000000 --- a/DuckDuckGo/Assets.xcassets/Wand-16.imageset/Contents.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "images" : [ - { - "filename" : "Wand-16.svg", - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - }, - "properties" : { - "preserves-vector-representation" : true - } -} diff --git a/DuckDuckGo/Assets.xcassets/Wand-16.imageset/Wand-16.svg b/DuckDuckGo/Assets.xcassets/Wand-16.imageset/Wand-16.svg deleted file mode 100644 index e812a04346..0000000000 --- a/DuckDuckGo/Assets.xcassets/Wand-16.imageset/Wand-16.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/DuckDuckGo/Autoconsent/AutoconsentUserScript.swift b/DuckDuckGo/Autoconsent/AutoconsentUserScript.swift index e071b9c58a..2a359b2748 100644 --- a/DuckDuckGo/Autoconsent/AutoconsentUserScript.swift +++ b/DuckDuckGo/Autoconsent/AutoconsentUserScript.swift @@ -23,6 +23,7 @@ import Core import BrowserServicesKit import UserScript import PrivacyDashboard +import os.log protocol AutoconsentPreferences { var autoconsentEnabled: Bool { get set } @@ -61,7 +62,7 @@ final class AutoconsentUserScript: NSObject, WKScriptMessageHandlerWithReply, Us weak var delegate: AutoconsentUserScriptDelegate? init(config: PrivacyConfiguration, preferences: AutoconsentPreferences = AppUserDefaults(), ignoreNonHTTPURLs: Bool = true) { - os_log("Initialising autoconsent userscript", log: .autoconsentLog, type: .debug) + Logger.autoconsent.debug("Initialising autoconsent userscript") source = Self.loadJS("autoconsent-bundle", from: .main, withReplacements: [:]) self.config = config self.preferences = preferences @@ -80,7 +81,7 @@ final class AutoconsentUserScript: NSObject, WKScriptMessageHandlerWithReply, Us optoutFailed: optoutFailed, selftestFailed: selftestFailed) - os_log("Refreshing dashboard state: %s", log: .autoconsentLog, type: .debug, String(describing: cookieConsentStatus)) + Logger.autoconsent.debug("Refreshing dashboard state: \(String(describing: cookieConsentStatus))") self.delegate?.autoconsentUserScript(self, didUpdateCookieConsentStatus: cookieConsentStatus) } @@ -88,12 +89,10 @@ final class AutoconsentUserScript: NSObject, WKScriptMessageHandlerWithReply, Us func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage, replyHandler: @escaping (Any?, String?) -> Void) { - os_log("Message received: %s", log: .autoconsentLog, type: .debug, String(describing: message.body)) return handleMessage(replyHandler: replyHandler, message: message) } } -// @available(macOS 11, *) extension AutoconsentUserScript { enum MessageName: String, CaseIterable { case `init` @@ -165,7 +164,7 @@ extension AutoconsentUserScript { let json = try JSONSerialization.data(withJSONObject: message) return try JSONDecoder().decode(Target.self, from: json) } catch { - os_log(.error, "Error decoding message body: %{public}@", error.localizedDescription) + Logger.autoconsent.error("Error decoding message body: \(error.localizedDescription, privacy: .public)") return nil } } @@ -192,7 +191,7 @@ extension AutoconsentUserScript { handleOptOutResult(message: message, replyHandler: replyHandler) case MessageName.optInResult: // this is not supported in browser - os_log("ignoring optInResult: %s", log: .autoconsentLog, type: .debug, String(describing: message.body)) + Logger.autoconsent.debug("ignoring optInResult: \(String(describing: message.body))") replyHandler(nil, "opt-in is not supported") case MessageName.cmpDetected: // no need to do anything here @@ -202,14 +201,14 @@ extension AutoconsentUserScript { case MessageName.autoconsentDone: handleAutoconsentDone(message: message, replyHandler: replyHandler) case MessageName.autoconsentError: - os_log("Autoconsent error: %s", log: .autoconsentLog, String(describing: message.body)) + Logger.autoconsent.debug("Autoconsent error: \(String(describing: message.body))") replyHandler([ "type": "ok" ], nil) // this is just to prevent a Promise rejection } } @MainActor func handlePopupFound(message: WKScriptMessage, replyHandler: @escaping (Any?, String?) -> Void) { - os_log("Autoconsent popup found", log: .autoconsentLog) + Logger.autoconsent.debug("Autoconsent popup found") replyHandler([ "type": "ok" ], nil) // this is just to prevent a Promise rejection } @@ -226,7 +225,7 @@ extension AutoconsentUserScript { if ignoreNonHTTPURLs && !url.isHttp && !url.isHttps { // ignore special schemes - os_log("Ignoring special URL scheme: %s", log: .autoconsentLog, type: .debug, messageData.url) + Logger.autoconsent.debug("Ignoring special URL scheme: \(messageData.url)") replyHandler([ "type": "ok" ], nil) // this is just to prevent a Promise rejection return } @@ -239,7 +238,7 @@ extension AutoconsentUserScript { let topURLDomain = message.webView?.url?.host guard config.isFeature(.autoconsent, enabledForDomain: topURLDomain) else { - os_log("disabled for site: %s", log: .autoconsentLog, type: .info, String(describing: url.absoluteString)) + Logger.autoconsent.info("disabled for site: \(String(describing: url.absoluteString))") replyHandler([ "type": "ok" ], nil) // this is just to prevent a Promise rejection return } @@ -316,7 +315,7 @@ extension AutoconsentUserScript { replyHandler(nil, "cannot decode message") return } - os_log("opt-out result: %s", log: .autoconsentLog, type: .debug, String(describing: messageData)) + Logger.autoconsent.debug("opt-out result: \(String(describing: messageData))") if !messageData.result { refreshDashboardState(consentManaged: true, cosmetic: nil, optoutFailed: true, selftestFailed: nil) @@ -336,8 +335,8 @@ extension AutoconsentUserScript { replyHandler(nil, "cannot decode message") return } - os_log("opt-out successful: %s", log: .autoconsentLog, type: .debug, String(describing: messageData)) - + Logger.autoconsent.debug("opt-out successful: \(String(describing: messageData))") + guard let url = URL(string: messageData.url), let host = url.host else { replyHandler(nil, "cannot decode message") @@ -348,7 +347,7 @@ extension AutoconsentUserScript { // trigger popup once per domain if !management.sitesNotifiedCache.contains(host) { - os_log("bragging that we closed a popup", log: .autoconsentLog, type: .debug) + Logger.autoconsent.debug("bragging that we closed a popup") management.sitesNotifiedCache.insert(host) // post popover notification on main thread DispatchQueue.main.async { @@ -363,7 +362,7 @@ extension AutoconsentUserScript { if let selfTestWebView = selfTestWebView, let selfTestFrameInfo = selfTestFrameInfo { - os_log("requesting self-test in: %s", log: .autoconsentLog, type: .debug, messageData.url) + Logger.autoconsent.debug("requesting self-test in: \(messageData.url)") selfTestWebView.evaluateJavaScript( "window.autoconsentMessageCallback({ type: 'selfTest' })", in: selfTestFrameInfo, @@ -371,14 +370,14 @@ extension AutoconsentUserScript { completionHandler: { (result) in switch result { case.failure(let error): - os_log("Error running self-test: %s", log: .autoconsentLog, type: .debug, String(describing: error)) + Logger.autoconsent.error("Error running self-test: \(error.localizedDescription, privacy: .public)") case.success: - os_log("self-test requested", log: .autoconsentLog, type: .debug) + Logger.autoconsent.debug("self-test requested") } } ) } else { - os_log("no self-test scheduled in this tab", log: .autoconsentLog, type: .debug) + Logger.autoconsent.debug("no self-test scheduled in this tab") } selfTestWebView = nil selfTestFrameInfo = nil @@ -391,7 +390,7 @@ extension AutoconsentUserScript { return } // store self-test result - os_log("self-test result: %s", log: .autoconsentLog, type: .debug, String(describing: messageData)) + Logger.autoconsent.debug("self-test result: \(String(describing: messageData))") refreshDashboardState(consentManaged: true, cosmetic: nil, optoutFailed: false, selftestFailed: messageData.result) replyHandler([ "type": "ok" ], nil) // this is just to prevent a Promise rejection } diff --git a/DuckDuckGo/Autoconsent/autoconsent-bundle.js b/DuckDuckGo/Autoconsent/autoconsent-bundle.js index 141e5977b9..5d453a5745 100644 --- a/DuckDuckGo/Autoconsent/autoconsent-bundle.js +++ b/DuckDuckGo/Autoconsent/autoconsent-bundle.js @@ -1 +1 @@ -!function(){"use strict";var e=class e{static setBase(t){e.base=t}static findElement(t,o=null,c=!1){let i=null;return i=null!=o?Array.from(o.querySelectorAll(t.selector)):null!=e.base?Array.from(e.base.querySelectorAll(t.selector)):Array.from(document.querySelectorAll(t.selector)),null!=t.textFilter&&(i=i.filter((e=>{const o=e.textContent.toLowerCase();if(Array.isArray(t.textFilter)){let e=!1;for(const c of t.textFilter)if(-1!==o.indexOf(c.toLowerCase())){e=!0;break}return e}if(null!=t.textFilter)return-1!==o.indexOf(t.textFilter.toLowerCase())}))),null!=t.styleFilters&&(i=i.filter((e=>{const o=window.getComputedStyle(e);let c=!0;for(const e of t.styleFilters){const t=o[e.option];c=e.negated?c&&t!==e.value:c&&t===e.value}return c}))),null!=t.displayFilter&&(i=i.filter((e=>t.displayFilter?0!==e.offsetHeight:0===e.offsetHeight))),null!=t.iframeFilter&&(i=i.filter((()=>t.iframeFilter?window.location!==window.parent.location:window.location===window.parent.location))),null!=t.childFilter&&(i=i.filter((o=>{const c=e.base;e.setBase(o);const i=e.find(t.childFilter);return e.setBase(c),null!=i.target}))),c?i:(i.length>1&&console.warn("Multiple possible targets: ",i,t,o),i[0])}static find(t,o=!1){const c=[];if(null!=t.parent){const i=e.findElement(t.parent,null,o);if(null!=i){if(i instanceof Array)return i.forEach((i=>{const n=e.findElement(t.target,i,o);n instanceof Array?n.forEach((e=>{c.push({parent:i,target:e})})):c.push({parent:i,target:n})})),c;{const n=e.findElement(t.target,i,o);n instanceof Array?n.forEach((e=>{c.push({parent:i,target:e})})):c.push({parent:i,target:n})}}}else{const i=e.findElement(t.target,null,o);i instanceof Array?i.forEach((e=>{c.push({parent:null,target:e})})):c.push({parent:null,target:i})}return 0===c.length&&c.push({parent:null,target:null}),o?c:(1!==c.length&&console.warn("Multiple results found, even though multiple false",c),c[0])}};e.base=null;var t=e;function o(e){const o=t.find(e);return"css"===e.type?!!o.target:"checkbox"===e.type?!!o.target&&o.target.checked:void 0}async function c(e,a){switch(e.type){case"click":return async function(e){const o=t.find(e);null!=o.target&&o.target.click();return n(i)}(e);case"list":return async function(e,t){for(const o of e.actions)await c(o,t)}(e,a);case"consent":return async function(e,t){for(const i of e.consents){const e=-1!==t.indexOf(i.type);if(i.matcher&&i.toggleAction){o(i.matcher)!==e&&await c(i.toggleAction)}else e?await c(i.trueAction):await c(i.falseAction)}}(e,a);case"ifcss":return async function(e,o){const i=t.find(e);i.target?e.falseAction&&await c(e.falseAction,o):e.trueAction&&await c(e.trueAction,o)}(e,a);case"waitcss":return async function(e){await new Promise((o=>{let c=e.retries||10;const i=e.waitTime||250,n=()=>{const a=t.find(e);(e.negated&&a.target||!e.negated&&!a.target)&&c>0?(c-=1,setTimeout(n,i)):o()};n()}))}(e);case"foreach":return async function(e,o){const i=t.find(e,!0),n=t.base;for(const n of i)n.target&&(t.setBase(n.target),await c(e.action,o));t.setBase(n)}(e,a);case"hide":return async function(e){const o=t.find(e);o.target&&o.target.classList.add("Autoconsent-Hidden")}(e);case"slide":return async function(e){const o=t.find(e),c=t.find(e.dragTarget);if(o.target){const e=o.target.getBoundingClientRect(),t=c.target.getBoundingClientRect();let i=t.top-e.top,n=t.left-e.left;"y"===this.config.axis.toLowerCase()&&(n=0),"x"===this.config.axis.toLowerCase()&&(i=0);const a=window.screenX+e.left+e.width/2,s=window.screenY+e.top+e.height/2,r=e.left+e.width/2,l=e.top+e.height/2,p=document.createEvent("MouseEvents");p.initMouseEvent("mousedown",!0,!0,window,0,a,s,r,l,!1,!1,!1,!1,0,o.target);const d=document.createEvent("MouseEvents");d.initMouseEvent("mousemove",!0,!0,window,0,a+n,s+i,r+n,l+i,!1,!1,!1,!1,0,o.target);const u=document.createEvent("MouseEvents");u.initMouseEvent("mouseup",!0,!0,window,0,a+n,s+i,r+n,l+i,!1,!1,!1,!1,0,o.target),o.target.dispatchEvent(p),await this.waitTimeout(10),o.target.dispatchEvent(d),await this.waitTimeout(10),o.target.dispatchEvent(u)}}(e);case"close":return async function(){window.close()}();case"wait":return async function(e){await n(e.waitTime)}(e);case"eval":return async function(e){return console.log("eval!",e.code),new Promise((t=>{try{e.async?(window.eval(e.code),setTimeout((()=>{t(window.eval("window.__consentCheckResult"))}),e.timeout||250)):t(window.eval(e.code))}catch(o){console.warn("eval error",o,e.code),t(!1)}}))}(e);default:throw"Unknown action type: "+e.type}}var i=0;function n(e){return new Promise((t=>{setTimeout((()=>{t()}),e)}))}function a(){return crypto&&void 0!==crypto.randomUUID?crypto.randomUUID():Math.random().toString()}var s=class{constructor(e,t=1e3){this.id=e,this.promise=new Promise(((e,t)=>{this.resolve=e,this.reject=t})),this.timer=window.setTimeout((()=>{this.reject(new Error("timeout"))}),t)}},r={pending:new Map,sendContentMessage:null};var l={EVAL_0:()=>console.log(1),EVAL_CONSENTMANAGER_1:()=>window.__cmp&&"object"==typeof __cmp("getCMPData"),EVAL_CONSENTMANAGER_2:()=>!__cmp("consentStatus").userChoiceExists,EVAL_CONSENTMANAGER_3:()=>__cmp("setConsent",0),EVAL_CONSENTMANAGER_4:()=>__cmp("setConsent",1),EVAL_CONSENTMANAGER_5:()=>__cmp("consentStatus").userChoiceExists,EVAL_COOKIEBOT_1:()=>!!window.Cookiebot,EVAL_COOKIEBOT_2:()=>!window.Cookiebot.hasResponse&&!0===window.Cookiebot.dialog?.visible,EVAL_COOKIEBOT_3:()=>window.Cookiebot.withdraw()||!0,EVAL_COOKIEBOT_4:()=>window.Cookiebot.hide()||!0,EVAL_COOKIEBOT_5:()=>!0===window.Cookiebot.declined,EVAL_KLARO_1:()=>{const e=globalThis.klaroConfig||globalThis.klaro?.getManager&&globalThis.klaro.getManager().config;if(!e)return!0;const t=(e.services||e.apps).filter((e=>!e.required)).map((e=>e.name));if(klaro&&klaro.getManager){const e=klaro.getManager();return t.every((t=>!e.consents[t]))}if(klaroConfig&&"cookie"===klaroConfig.storageMethod){const e=klaroConfig.cookieName||klaroConfig.storageName,o=JSON.parse(decodeURIComponent(document.cookie.split(";").find((t=>t.trim().startsWith(e))).split("=")[1]));return Object.keys(o).filter((e=>t.includes(e))).every((e=>!1===o[e]))}},EVAL_KLARO_OPEN_POPUP:()=>{klaro.show(void 0,!0)},EVAL_KLARO_TRY_API_OPT_OUT:()=>{if(window.klaro&&"function"==typeof klaro.show&&"function"==typeof klaro.getManager)try{return klaro.getManager().changeAll(!1),klaro.getManager().saveAndApplyConsents(),!0}catch(e){return console.warn(e),!1}return!1},EVAL_ONETRUST_1:()=>window.OnetrustActiveGroups.split(",").filter((e=>e.length>0)).length<=1,EVAL_TRUSTARC_TOP:()=>window&&window.truste&&"0"===window.truste.eu.bindMap.prefCookie,EVAL_TRUSTARC_FRAME_TEST:()=>window&&window.QueryString&&"0"===window.QueryString.preferences,EVAL_TRUSTARC_FRAME_GTM:()=>window&&window.QueryString&&"1"===window.QueryString.gtm,EVAL_ADROLL_0:()=>!document.cookie.includes("__adroll_fpc"),EVAL_ALMACMP_0:()=>document.cookie.includes('"name":"Google","consent":false'),EVAL_AFFINITY_SERIF_COM_0:()=>document.cookie.includes("serif_manage_cookies_viewed")&&!document.cookie.includes("serif_allow_analytics"),EVAL_ARBEITSAGENTUR_TEST:()=>document.cookie.includes("cookie_consent=denied"),EVAL_AXEPTIO_0:()=>document.cookie.includes("axeptio_authorized_vendors=%2C%2C"),EVAL_BAHN_TEST:()=>1===utag.gdpr.getSelectedCategories().length,EVAL_BING_0:()=>document.cookie.includes("AL=0")&&document.cookie.includes("AD=0")&&document.cookie.includes("SM=0"),EVAL_BLOCKSY_0:()=>document.cookie.includes("blocksy_cookies_consent_accepted=no"),EVAL_BORLABS_0:()=>!JSON.parse(decodeURIComponent(document.cookie.split(";").find((e=>-1!==e.indexOf("borlabs-cookie"))).split("=",2)[1])).consents.statistics,EVAL_BUNDESREGIERUNG_DE_0:()=>document.cookie.match("cookie-allow-tracking=0"),EVAL_CANVA_0:()=>!document.cookie.includes("gtm_fpc_engagement_event"),EVAL_CC_BANNER2_0:()=>!!document.cookie.match(/sncc=[^;]+D%3Dtrue/),EVAL_CLICKIO_0:()=>document.cookie.includes("__lxG__consent__v2_daisybit="),EVAL_CLINCH_0:()=>document.cookie.includes("ctc_rejected=1"),EVAL_COOKIECONSENT2_TEST:()=>document.cookie.includes("cc_cookie="),EVAL_COOKIECONSENT3_TEST:()=>document.cookie.includes("cc_cookie="),EVAL_COINBASE_0:()=>JSON.parse(decodeURIComponent(document.cookie.match(/cm_(eu|default)_preferences=([0-9a-zA-Z\\{\\}\\[\\]%:]*);?/)[2])).consent.length<=1,EVAL_COMPLIANZ_BANNER_0:()=>document.cookie.includes("cmplz_banner-status=dismissed"),EVAL_COOKIE_LAW_INFO_0:()=>CLI.disableAllCookies()||CLI.reject_close()||!0,EVAL_COOKIE_LAW_INFO_1:()=>-1===document.cookie.indexOf("cookielawinfo-checkbox-non-necessary=yes"),EVAL_COOKIE_LAW_INFO_DETECT:()=>!!window.CLI,EVAL_COOKIE_MANAGER_POPUP_0:()=>!1===JSON.parse(document.cookie.split(";").find((e=>e.trim().startsWith("CookieLevel"))).split("=")[1]).social,EVAL_COOKIEALERT_0:()=>document.querySelector("body").removeAttribute("style")||!0,EVAL_COOKIEALERT_1:()=>document.querySelector("body").removeAttribute("style")||!0,EVAL_COOKIEALERT_2:()=>!0===window.CookieConsent.declined,EVAL_COOKIEFIRST_0:()=>{return!1===(e=JSON.parse(decodeURIComponent(document.cookie.split(";").find((e=>-1!==e.indexOf("cookiefirst"))).trim()).split("=")[1])).performance&&!1===e.functional&&!1===e.advertising;var e},EVAL_COOKIEFIRST_1:()=>document.querySelectorAll("button[data-cookiefirst-accent-color=true][role=checkbox]:not([disabled])").forEach((e=>"true"==e.getAttribute("aria-checked")&&e.click()))||!0,EVAL_COOKIEINFORMATION_0:()=>CookieInformation.declineAllCategories()||!0,EVAL_COOKIEINFORMATION_1:()=>CookieInformation.submitAllCategories()||!0,EVAL_COOKIEINFORMATION_2:()=>document.cookie.includes("CookieInformationConsent="),EVAL_COOKIEYES_0:()=>document.cookie.includes("advertisement:no"),EVAL_DAILYMOTION_0:()=>!!document.cookie.match("dm-euconsent-v2"),EVAL_DNDBEYOND_TEST:()=>document.cookie.includes("cookie-consent=denied"),EVAL_DSGVO_0:()=>!document.cookie.includes("sp_dsgvo_cookie_settings"),EVAL_DUNELM_0:()=>document.cookie.includes("cc_functional=0")&&document.cookie.includes("cc_targeting=0"),EVAL_ETSY_0:()=>document.querySelectorAll(".gdpr-overlay-body input").forEach((e=>{e.checked=!1}))||!0,EVAL_ETSY_1:()=>document.querySelector(".gdpr-overlay-view button[data-wt-overlay-close]").click()||!0,EVAL_EU_COOKIE_COMPLIANCE_0:()=>-1===document.cookie.indexOf("cookie-agreed=2"),EVAL_EU_COOKIE_LAW_0:()=>!document.cookie.includes("euCookie"),EVAL_EZOIC_0:()=>ezCMP.handleAcceptAllClick(),EVAL_EZOIC_1:()=>!!document.cookie.match(/ez-consent-tcf/),EVAL_FIDES_DETECT_POPUP:()=>window.Fides?.initialized,EVAL_GOOGLE_0:()=>!!document.cookie.match(/SOCS=CAE/),EVAL_HEMA_TEST_0:()=>document.cookie.includes("cookies_rejected=1"),EVAL_IUBENDA_0:()=>document.querySelectorAll(".purposes-item input[type=checkbox]:not([disabled])").forEach((e=>{e.checked&&e.click()}))||!0,EVAL_IUBENDA_1:()=>!!document.cookie.match(/_iub_cs-\d+=/),EVAL_IWINK_TEST:()=>document.cookie.includes("cookie_permission_granted=no"),EVAL_JQUERY_COOKIEBAR_0:()=>!document.cookie.includes("cookies-state=accepted"),EVAL_KETCH_TEST:()=>document.cookie.includes("_ketch_consent_v1_"),EVAL_MEDIAVINE_0:()=>document.querySelectorAll('[data-name="mediavine-gdpr-cmp"] input[type=checkbox]').forEach((e=>e.checked&&e.click()))||!0,EVAL_MICROSOFT_0:()=>Array.from(document.querySelectorAll("div > button")).filter((e=>e.innerText.match("Reject|Ablehnen")))[0].click()||!0,EVAL_MICROSOFT_1:()=>Array.from(document.querySelectorAll("div > button")).filter((e=>e.innerText.match("Accept|Annehmen")))[0].click()||!0,EVAL_MICROSOFT_2:()=>!!document.cookie.match("MSCC|GHCC"),EVAL_MOOVE_0:()=>document.querySelectorAll("#moove_gdpr_cookie_modal input").forEach((e=>{e.disabled||(e.checked="moove_gdpr_strict_cookies"===e.name||"moove_gdpr_strict_cookies"===e.id)}))||!0,EVAL_ONENINETWO_0:()=>document.cookie.includes("CC_ADVERTISING=NO")&&document.cookie.includes("CC_ANALYTICS=NO"),EVAL_OPERA_0:()=>document.cookie.includes("cookie_consent_essential=true")&&!document.cookie.includes("cookie_consent_marketing=true"),EVAL_PAYPAL_0:()=>!0===document.cookie.includes("cookie_prefs"),EVAL_PRIMEBOX_0:()=>!document.cookie.includes("cb-enabled=accepted"),EVAL_PUBTECH_0:()=>document.cookie.includes("euconsent-v2")&&(document.cookie.match(/.YAAAAAAAAAAA/)||document.cookie.match(/.aAAAAAAAAAAA/)||document.cookie.match(/.YAAACFgAAAAA/)),EVAL_REDDIT_0:()=>document.cookie.includes("eu_cookie={%22opted%22:true%2C%22nonessential%22:false}"),EVAL_ROBLOX_TEST:()=>document.cookie.includes("RBXcb"),EVAL_SIRDATA_UNBLOCK_SCROLL:()=>(document.documentElement.classList.forEach((e=>{e.startsWith("sd-cmp-")&&document.documentElement.classList.remove(e)})),!0),EVAL_SNIGEL_0:()=>!!document.cookie.match("snconsent"),EVAL_STEAMPOWERED_0:()=>2===JSON.parse(decodeURIComponent(document.cookie.split(";").find((e=>e.trim().startsWith("cookieSettings"))).split("=")[1])).preference_state,EVAL_SVT_TEST:()=>document.cookie.includes('cookie-consent-1={"optedIn":true,"functionality":false,"statistics":false}'),EVAL_TAKEALOT_0:()=>document.body.classList.remove("freeze")||(document.body.style="")||!0,EVAL_TARTEAUCITRON_0:()=>tarteaucitron.userInterface.respondAll(!1)||!0,EVAL_TARTEAUCITRON_1:()=>tarteaucitron.userInterface.respondAll(!0)||!0,EVAL_TARTEAUCITRON_2:()=>document.cookie.match(/tarteaucitron=[^;]*/)?.[0].includes("false"),EVAL_TAUNTON_TEST:()=>document.cookie.includes("taunton_user_consent_submitted=true"),EVAL_TEALIUM_0:()=>void 0!==window.utag&&"object"==typeof utag.gdpr,EVAL_TEALIUM_1:()=>utag.gdpr.setConsentValue(!1)||!0,EVAL_TEALIUM_DONOTSELL:()=>utag.gdpr.dns?.setDnsState(!1)||!0,EVAL_TEALIUM_2:()=>utag.gdpr.setConsentValue(!0)||!0,EVAL_TEALIUM_3:()=>1!==utag.gdpr.getConsentState(),EVAL_TEALIUM_DONOTSELL_CHECK:()=>1!==utag.gdpr.dns?.getDnsState(),EVAL_TESTCMP_0:()=>"button_clicked"===window.results.results[0],EVAL_TESTCMP_COSMETIC_0:()=>"banner_hidden"===window.results.results[0],EVAL_THEFREEDICTIONARY_0:()=>cmpUi.showPurposes()||cmpUi.rejectAll()||!0,EVAL_THEFREEDICTIONARY_1:()=>cmpUi.allowAll()||!0,EVAL_THEVERGE_0:()=>document.cookie.includes("_duet_gdpr_acknowledged=1"),EVAL_UBUNTU_COM_0:()=>document.cookie.includes("_cookies_accepted=essential"),EVAL_UK_COOKIE_CONSENT_0:()=>!document.cookie.includes("catAccCookies"),EVAL_USERCENTRICS_API_0:()=>"object"==typeof UC_UI,EVAL_USERCENTRICS_API_1:()=>!!UC_UI.closeCMP(),EVAL_USERCENTRICS_API_2:()=>!!UC_UI.denyAllConsents(),EVAL_USERCENTRICS_API_3:()=>!!UC_UI.acceptAllConsents(),EVAL_USERCENTRICS_API_4:()=>!!UC_UI.closeCMP(),EVAL_USERCENTRICS_API_5:()=>!0===UC_UI.areAllConsentsAccepted(),EVAL_USERCENTRICS_API_6:()=>!1===UC_UI.areAllConsentsAccepted(),EVAL_USERCENTRICS_BUTTON_0:()=>JSON.parse(localStorage.getItem("usercentrics")).consents.every((e=>e.isEssential||!e.consentStatus)),EVAL_WAITROSE_0:()=>Array.from(document.querySelectorAll("label[id$=cookies-deny-label]")).forEach((e=>e.click()))||!0,EVAL_WAITROSE_1:()=>document.cookie.includes("wtr_cookies_advertising=0")&&document.cookie.includes("wtr_cookies_analytics=0"),EVAL_WP_COOKIE_NOTICE_0:()=>document.cookie.includes("wpl_viewed_cookie=no"),EVAL_XE_TEST:()=>document.cookie.includes("xeConsentState={%22performance%22:false%2C%22marketing%22:false%2C%22compliance%22:false}"),EVAL_XING_0:()=>document.cookie.includes("userConsent=%7B%22marketing%22%3Afalse"),EVAL_YOUTUBE_DESKTOP_0:()=>!!document.cookie.match(/SOCS=CAE/),EVAL_YOUTUBE_MOBILE_0:()=>!!document.cookie.match(/SOCS=CAE/)};var p={main:!0,frame:!1,urlPattern:""},d=class{constructor(e){this.runContext=p,this.autoconsent=e}get hasSelfTest(){throw new Error("Not Implemented")}get isIntermediate(){throw new Error("Not Implemented")}get isCosmetic(){throw new Error("Not Implemented")}mainWorldEval(e){const t=l[e];if(!t)return console.warn("Snippet not found",e),Promise.resolve(!1);const o=this.autoconsent.config.logs;if(this.autoconsent.config.isMainWorld){o.evals&&console.log("inline eval:",e,t);let c=!1;try{c=!!t.call(globalThis)}catch(t){o.evals&&console.error("error evaluating rule",e,t)}return Promise.resolve(c)}const c=`(${t.toString()})()`;return o.evals&&console.log("async eval:",e,c),function(e,t){const o=a();r.sendContentMessage({type:"eval",id:o,code:e,snippetId:t});const c=new s(o);return r.pending.set(c.id,c),c.promise}(c,e).catch((t=>(o.evals&&console.error("error evaluating rule",e,t),!1)))}checkRunContext(){const e={...p,...this.runContext},t=window.top===window;return!(t&&!e.main)&&(!(!t&&!e.frame)&&!(e.urlPattern&&!window.location.href.match(e.urlPattern)))}detectCmp(){throw new Error("Not Implemented")}async detectPopup(){return!1}optOut(){throw new Error("Not Implemented")}optIn(){throw new Error("Not Implemented")}openCmp(){throw new Error("Not Implemented")}async test(){return Promise.resolve(!0)}click(e,t=!1){return this.autoconsent.domActions.click(e,t)}elementExists(e){return this.autoconsent.domActions.elementExists(e)}elementVisible(e,t){return this.autoconsent.domActions.elementVisible(e,t)}waitForElement(e,t){return this.autoconsent.domActions.waitForElement(e,t)}waitForVisible(e,t,o){return this.autoconsent.domActions.waitForVisible(e,t,o)}waitForThenClick(e,t,o){return this.autoconsent.domActions.waitForThenClick(e,t,o)}wait(e){return this.autoconsent.domActions.wait(e)}hide(e,t){return this.autoconsent.domActions.hide(e,t)}prehide(e){return this.autoconsent.domActions.prehide(e)}undoPrehide(){return this.autoconsent.domActions.undoPrehide()}querySingleReplySelector(e,t){return this.autoconsent.domActions.querySingleReplySelector(e,t)}querySelectorChain(e){return this.autoconsent.domActions.querySelectorChain(e)}elementSelector(e){return this.autoconsent.domActions.elementSelector(e)}},u=class extends d{constructor(e,t){super(t),this.rule=e,this.name=e.name,this.runContext=e.runContext||p}get hasSelfTest(){return!!this.rule.test}get isIntermediate(){return!!this.rule.intermediate}get isCosmetic(){return!!this.rule.cosmetic}get prehideSelectors(){return this.rule.prehideSelectors}async detectCmp(){return!!this.rule.detectCmp&&this._runRulesParallel(this.rule.detectCmp)}async detectPopup(){return!!this.rule.detectPopup&&this._runRulesSequentially(this.rule.detectPopup)}async optOut(){const e=this.autoconsent.config.logs;return!!this.rule.optOut&&(e.lifecycle&&console.log("Initiated optOut()",this.rule.optOut),this._runRulesSequentially(this.rule.optOut))}async optIn(){const e=this.autoconsent.config.logs;return!!this.rule.optIn&&(e.lifecycle&&console.log("Initiated optIn()",this.rule.optIn),this._runRulesSequentially(this.rule.optIn))}async openCmp(){return!!this.rule.openCmp&&this._runRulesSequentially(this.rule.openCmp)}async test(){return this.hasSelfTest?this._runRulesSequentially(this.rule.test):super.test()}async evaluateRuleStep(e){const t=[],o=this.autoconsent.config.logs;if(e.exists&&t.push(this.elementExists(e.exists)),e.visible&&t.push(this.elementVisible(e.visible,e.check)),e.eval){const o=this.mainWorldEval(e.eval);t.push(o)}if(e.waitFor&&t.push(this.waitForElement(e.waitFor,e.timeout)),e.waitForVisible&&t.push(this.waitForVisible(e.waitForVisible,e.timeout,e.check)),e.click&&t.push(this.click(e.click,e.all)),e.waitForThenClick&&t.push(this.waitForThenClick(e.waitForThenClick,e.timeout,e.all)),e.wait&&t.push(this.wait(e.wait)),e.hide&&t.push(this.hide(e.hide,e.method)),e.if){if(!e.if.exists&&!e.if.visible)return console.error("invalid conditional rule",e.if),!1;const c=await this.evaluateRuleStep(e.if);o.rulesteps&&console.log("Condition is",c),c?t.push(this._runRulesSequentially(e.then)):e.else?t.push(this._runRulesSequentially(e.else)):t.push(!0)}if(e.any){for(const t of e.any)if(await this.evaluateRuleStep(t))return!0;return!1}if(0===t.length)return o.errors&&console.warn("Unrecognized rule",e),!1;return(await Promise.all(t)).reduce(((e,t)=>e&&t),!0)}async _runRulesParallel(e){const t=e.map((e=>this.evaluateRuleStep(e)));return(await Promise.all(t)).every((e=>!!e))}async _runRulesSequentially(e){const t=this.autoconsent.config.logs;for(const o of e){t.rulesteps&&console.log("Running rule...",o);const e=await this.evaluateRuleStep(o);if(t.rulesteps&&console.log("...rule result",e),!e&&!o.optional)return!1}return!0}},m=class{constructor(e,t){this.name=e,this.config=t,this.methods=new Map,this.runContext=p,this.isCosmetic=!1,t.methods.forEach((e=>{e.action&&this.methods.set(e.name,e.action)})),this.hasSelfTest=!1}get isIntermediate(){return!1}checkRunContext(){return!0}async detectCmp(){return this.config.detectors.map((e=>o(e.presentMatcher))).some((e=>!!e))}async detectPopup(){return this.config.detectors.map((e=>o(e.showingMatcher))).some((e=>!!e))}async executeAction(e,t){return!this.methods.has(e)||c(this.methods.get(e),t)}async optOut(){return await this.executeAction("HIDE_CMP"),await this.executeAction("OPEN_OPTIONS"),await this.executeAction("HIDE_CMP"),await this.executeAction("DO_CONSENT",[]),await this.executeAction("SAVE_CONSENT"),!0}async optIn(){return await this.executeAction("HIDE_CMP"),await this.executeAction("OPEN_OPTIONS"),await this.executeAction("HIDE_CMP"),await this.executeAction("DO_CONSENT",["D","A","B","E","F","X"]),await this.executeAction("SAVE_CONSENT"),!0}async openCmp(){return await this.executeAction("HIDE_CMP"),await this.executeAction("OPEN_OPTIONS"),!0}async test(){return!0}};function h(e="autoconsent-css-rules"){const t=`style#${e}`,o=document.querySelector(t);if(o&&o instanceof HTMLStyleElement)return o;{const t=document.head||document.getElementsByTagName("head")[0]||document.documentElement,o=document.createElement("style");return o.id=e,t.appendChild(o),o}}function k(e,t,o="display"){const c=`${t} { ${"opacity"===o?"opacity: 0":"display: none"} !important; z-index: -1 !important; pointer-events: none !important; } `;return e instanceof HTMLStyleElement&&(e.innerText+=c,t.length>0)}async function b(e,t,o){const c=await e();return!c&&t>0?new Promise((c=>{setTimeout((async()=>{c(b(e,t-1,o))}),o)})):Promise.resolve(c)}function _(e){if(!e)return!1;if(null!==e.offsetParent)return!0;{const t=window.getComputedStyle(e);if("fixed"===t.position&&"none"!==t.display)return!0}return!1}function g(e){const t={enabled:!0,autoAction:"optOut",disabledCmps:[],enablePrehide:!0,enableCosmeticRules:!0,detectRetries:20,isMainWorld:!1,prehideTimeout:2e3,logs:{lifecycle:!1,rulesteps:!1,evals:!1,errors:!0,messages:!1}},o=(c=t,globalThis.structuredClone?structuredClone(c):JSON.parse(JSON.stringify(c)));var c;for(const c of Object.keys(t))void 0!==e[c]&&(o[c]=e[c]);return o}var y="#truste-show-consent",w="#truste-consent-track",C=[class extends d{constructor(e){super(e),this.name="TrustArc-top",this.prehideSelectors=[".trustarc-banner-container",`.truste_popframe,.truste_overlay,.truste_box_overlay,${w}`],this.runContext={main:!0,frame:!1},this._shortcutButton=null,this._optInDone=!1}get hasSelfTest(){return!0}get isIntermediate(){return!this._optInDone&&!this._shortcutButton}get isCosmetic(){return!1}async detectCmp(){const e=this.elementExists(`${y},${w}`);return e&&(this._shortcutButton=document.querySelector("#truste-consent-required")),e}async detectPopup(){return this.elementVisible(`#truste-consent-content,#trustarc-banner-overlay,${w}`,"all")}openFrame(){this.click(y)}async optOut(){return this._shortcutButton?(this._shortcutButton.click(),!0):(k(h(),`.truste_popframe, .truste_overlay, .truste_box_overlay, ${w}`),this.click(y),setTimeout((()=>{h().remove()}),1e4),!0)}async optIn(){return this._optInDone=!0,this.click("#truste-consent-button")}async openCmp(){return!0}async test(){return await this.wait(500),await this.mainWorldEval("EVAL_TRUSTARC_TOP")}},class extends d{constructor(){super(...arguments),this.name="TrustArc-frame",this.runContext={main:!1,frame:!0,urlPattern:"^https://consent-pref\\.trustarc\\.com/\\?"}}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return!0}async detectPopup(){return this.elementVisible("#defaultpreferencemanager","any")&&this.elementVisible(".mainContent","any")}async navigateToSettings(){return await b((async()=>this.elementExists(".shp")||this.elementVisible(".advance","any")||this.elementExists(".switch span:first-child")),10,500),this.elementExists(".shp")&&this.click(".shp"),await this.waitForElement(".prefPanel",5e3),this.elementVisible(".advance","any")&&this.click(".advance"),await b((()=>this.elementVisible(".switch span:first-child","any")),5,1e3)}async optOut(){if(await this.mainWorldEval("EVAL_TRUSTARC_FRAME_TEST"))return!0;let e=3e3;return await this.mainWorldEval("EVAL_TRUSTARC_FRAME_GTM")&&(e=1500),await b((()=>"complete"===document.readyState),20,100),await this.waitForElement(".mainContent[aria-hidden=false]",e),!!this.click(".rejectAll")||(this.elementExists(".prefPanel")&&await this.waitForElement('.prefPanel[style="visibility: visible;"]',e),this.click("#catDetails0")?(this.click(".submit"),this.waitForThenClick("#gwt-debug-close_id",e),!0):this.click(".required")?(this.waitForThenClick("#gwt-debug-close_id",e),!0):(await this.navigateToSettings(),this.click(".switch span:nth-child(1):not(.active)",!0),this.click(".submit"),this.waitForThenClick("#gwt-debug-close_id",10*e),!0))}async optIn(){return this.click(".call")||(await this.navigateToSettings(),this.click(".switch span:nth-child(2)",!0),this.click(".submit"),this.waitForElement("#gwt-debug-close_id",3e5).then((()=>{this.click("#gwt-debug-close_id")}))),!0}async test(){return await this.wait(500),await this.mainWorldEval("EVAL_TRUSTARC_FRAME_TEST")}},class extends d{constructor(){super(...arguments),this.name="Cybotcookiebot",this.prehideSelectors=["#CybotCookiebotDialog,#CybotCookiebotDialogBodyUnderlay,#dtcookie-container,#cookiebanner,#cb-cookieoverlay,.modal--cookie-banner,#cookiebanner_outer,#CookieBanner"]}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return await this.mainWorldEval("EVAL_COOKIEBOT_1")}async detectPopup(){return this.mainWorldEval("EVAL_COOKIEBOT_2")}async optOut(){await this.wait(500);let e=await this.mainWorldEval("EVAL_COOKIEBOT_3");return await this.wait(500),e=e&&await this.mainWorldEval("EVAL_COOKIEBOT_4"),e}async optIn(){return this.elementExists("#dtcookie-container")?this.click(".h-dtcookie-accept"):(this.click(".CybotCookiebotDialogBodyLevelButton:not(:checked):enabled",!0),this.click("#CybotCookiebotDialogBodyLevelButtonAccept"),this.click("#CybotCookiebotDialogBodyButtonAccept"),!0)}async test(){return await this.wait(500),await this.mainWorldEval("EVAL_COOKIEBOT_5")}},class extends d{constructor(){super(...arguments),this.name="Sourcepoint-frame",this.prehideSelectors=["div[id^='sp_message_container_'],.message-overlay","#sp_privacy_manager_container"],this.ccpaNotice=!1,this.ccpaPopup=!1,this.runContext={main:!0,frame:!0}}get hasSelfTest(){return!1}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){const e=new URL(location.href);return e.searchParams.has("message_id")&&"ccpa-notice.sp-prod.net"===e.hostname?(this.ccpaNotice=!0,!0):"ccpa-pm.sp-prod.net"===e.hostname?(this.ccpaPopup=!0,!0):("/index.html"===e.pathname||"/privacy-manager/index.html"===e.pathname||"/ccpa_pm/index.html"===e.pathname)&&(e.searchParams.has("message_id")||e.searchParams.has("requestUUID")||e.searchParams.has("consentUUID"))}async detectPopup(){return!!this.ccpaNotice||(this.ccpaPopup?await this.waitForElement(".priv-save-btn",2e3):(await this.waitForElement(".sp_choice_type_11,.sp_choice_type_12,.sp_choice_type_13,.sp_choice_type_ACCEPT_ALL,.sp_choice_type_SAVE_AND_EXIT",2e3),!this.elementExists(".sp_choice_type_9")))}async optIn(){return await this.waitForElement(".sp_choice_type_11,.sp_choice_type_ACCEPT_ALL",2e3),!!this.click(".sp_choice_type_11")||!!this.click(".sp_choice_type_ACCEPT_ALL")}isManagerOpen(){return"/privacy-manager/index.html"===location.pathname||"/ccpa_pm/index.html"===location.pathname}async optOut(){const e=this.autoconsent.config.logs;if(this.ccpaPopup){const e=document.querySelectorAll(".priv-purpose-container .sp-switch-arrow-block a.neutral.on .right");for(const t of e)t.click();const t=document.querySelectorAll(".priv-purpose-container .sp-switch-arrow-block a.switch-bg.on");for(const e of t)e.click();return this.click(".priv-save-btn")}if(!this.isManagerOpen()){if(!await this.waitForElement(".sp_choice_type_12,.sp_choice_type_13"))return!1;if(!this.elementExists(".sp_choice_type_12"))return this.click(".sp_choice_type_13");this.click(".sp_choice_type_12"),await b((()=>this.isManagerOpen()),200,100)}await this.waitForElement(".type-modal",2e4),this.waitForThenClick(".ccpa-stack .pm-switch[aria-checked=true] .slider",500,!0);try{const e=".sp_choice_type_REJECT_ALL",t=".reject-toggle",o=await Promise.race([this.waitForElement(e,2e3).then((e=>e?0:-1)),this.waitForElement(t,2e3).then((e=>e?1:-1)),this.waitForElement(".pm-features",2e3).then((e=>e?2:-1))]);if(0===o)return await this.wait(1500),this.click(e);1===o?this.click(t):2===o&&(await this.waitForElement(".pm-features",1e4),this.click(".checked > span",!0),this.click(".chevron"))}catch(t){e.errors&&console.warn(t)}return this.click(".sp_choice_type_SAVE_AND_EXIT")}},class extends d{constructor(){super(...arguments),this.name="consentmanager.net",this.prehideSelectors=["#cmpbox,#cmpbox2"],this.apiAvailable=!1}get hasSelfTest(){return this.apiAvailable}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.apiAvailable=await this.mainWorldEval("EVAL_CONSENTMANAGER_1"),!!this.apiAvailable||this.elementExists("#cmpbox")}async detectPopup(){return this.apiAvailable?(await this.wait(500),await this.mainWorldEval("EVAL_CONSENTMANAGER_2")):this.elementVisible("#cmpbox .cmpmore","any")}async optOut(){return await this.wait(500),this.apiAvailable?await this.mainWorldEval("EVAL_CONSENTMANAGER_3"):!!this.click(".cmpboxbtnno")||(this.elementExists(".cmpwelcomeprpsbtn")?(this.click(".cmpwelcomeprpsbtn > a[aria-checked=true]",!0),this.click(".cmpboxbtnsave"),!0):(this.click(".cmpboxbtncustom"),await this.waitForElement(".cmptblbox",2e3),this.click(".cmptdchoice > a[aria-checked=true]",!0),this.click(".cmpboxbtnyescustomchoices"),this.hide("#cmpwrapper,#cmpbox","display"),!0))}async optIn(){return this.apiAvailable?await this.mainWorldEval("EVAL_CONSENTMANAGER_4"):this.click(".cmpboxbtnyes")}async test(){if(this.apiAvailable)return await this.mainWorldEval("EVAL_CONSENTMANAGER_5")}},class extends d{constructor(){super(...arguments),this.name="Evidon"}get hasSelfTest(){return!1}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists("#_evidon_banner")}async detectPopup(){return this.elementVisible("#_evidon_banner","any")}async optOut(){return this.click("#_evidon-decline-button")||(k(h(),"#evidon-prefdiag-overlay,#evidon-prefdiag-background,#_evidon-background"),await this.waitForThenClick("#_evidon-option-button"),await this.waitForElement("#evidon-prefdiag-overlay",5e3),await this.wait(500),await this.waitForThenClick("#evidon-prefdiag-decline")),!0}async optIn(){return this.click("#_evidon-accept-button")}},class extends d{constructor(){super(...arguments),this.name="Onetrust",this.prehideSelectors=["#onetrust-banner-sdk,#onetrust-consent-sdk,.onetrust-pc-dark-filter,.js-consent-banner"],this.runContext={urlPattern:"^(?!.*https://www\\.nba\\.com/)"}}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists("#onetrust-banner-sdk,#onetrust-pc-sdk")}async detectPopup(){return this.elementVisible("#onetrust-banner-sdk,#onetrust-pc-sdk","any")}async optOut(){return this.elementVisible("#onetrust-reject-all-handler,.ot-pc-refuse-all-handler,.js-reject-cookies","any")?this.click("#onetrust-reject-all-handler,.ot-pc-refuse-all-handler,.js-reject-cookies"):(this.elementExists("#onetrust-pc-btn-handler")?this.click("#onetrust-pc-btn-handler"):this.click(".ot-sdk-show-settings,button.js-cookie-settings"),await this.waitForElement("#onetrust-consent-sdk",2e3),await this.wait(1e3),this.click("#onetrust-consent-sdk input.category-switch-handler:checked,.js-editor-toggle-state:checked",!0),await this.wait(1e3),await this.waitForElement(".save-preference-btn-handler,.js-consent-save",2e3),this.click(".save-preference-btn-handler,.js-consent-save"),await this.waitForVisible("#onetrust-banner-sdk",5e3,"none"),!0)}async optIn(){return this.click("#onetrust-accept-btn-handler,#accept-recommended-btn-handler,.js-accept-cookies")}async test(){return await b((()=>this.mainWorldEval("EVAL_ONETRUST_1")),10,500)}},class extends d{constructor(){super(...arguments),this.name="Klaro",this.prehideSelectors=[".klaro"],this.settingsOpen=!1}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists(".klaro > .cookie-modal")?(this.settingsOpen=!0,!0):this.elementExists(".klaro > .cookie-notice")}async detectPopup(){return this.elementVisible(".klaro > .cookie-notice,.klaro > .cookie-modal","any")}async optOut(){return!!await this.mainWorldEval("EVAL_KLARO_TRY_API_OPT_OUT")||(!!this.click(".klaro .cn-decline")||(await this.mainWorldEval("EVAL_KLARO_OPEN_POPUP"),!!this.click(".klaro .cn-decline")||(this.click(".cm-purpose:not(.cm-toggle-all) > input:not(.half-checked,.required,.only-required),.cm-purpose:not(.cm-toggle-all) > div > input:not(.half-checked,.required,.only-required)",!0),this.click(".cm-btn-accept,.cm-button"))))}async optIn(){return!!this.click(".klaro .cm-btn-accept-all")||(this.settingsOpen?(this.click(".cm-purpose:not(.cm-toggle-all) > input.half-checked",!0),this.click(".cm-btn-accept")):this.click(".klaro .cookie-notice .cm-btn-success"))}async test(){return await this.mainWorldEval("EVAL_KLARO_1")}},class extends d{constructor(){super(...arguments),this.name="Uniconsent"}get prehideSelectors(){return[".unic",".modal:has(.unic)"]}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists(".unic .unic-box,.unic .unic-bar,.unic .unic-modal")}async detectPopup(){return this.elementVisible(".unic .unic-box,.unic .unic-bar,.unic .unic-modal","any")}async optOut(){if(await this.waitForElement(".unic button",1e3),document.querySelectorAll(".unic button").forEach((e=>{const t=e.textContent;(t.includes("Manage Options")||t.includes("Optionen verwalten"))&&e.click()})),await this.waitForElement(".unic input[type=checkbox]",1e3)){await this.waitForElement(".unic button",1e3),document.querySelectorAll(".unic input[type=checkbox]").forEach((e=>{e.checked&&e.click()}));for(const e of document.querySelectorAll(".unic button")){const t=e.textContent;for(const o of["Confirm Choices","Save Choices","Auswahl speichern"])if(t.includes(o))return e.click(),await this.wait(500),!0}}return!1}async optIn(){return this.waitForThenClick(".unic #unic-agree")}async test(){await this.wait(1e3);return!this.elementExists(".unic .unic-box,.unic .unic-bar")}},class extends d{constructor(){super(...arguments),this.prehideSelectors=[".cmp-root"],this.name="Conversant"}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists(".cmp-root .cmp-receptacle")}async detectPopup(){return this.elementVisible(".cmp-root .cmp-receptacle","any")}async optOut(){if(!await this.waitForThenClick(".cmp-main-button:not(.cmp-main-button--primary)"))return!1;if(!await this.waitForElement(".cmp-view-tab-tabs"))return!1;await this.waitForThenClick(".cmp-view-tab-tabs > :first-child"),await this.waitForThenClick(".cmp-view-tab-tabs > .cmp-view-tab--active:first-child");for(const e of Array.from(document.querySelectorAll(".cmp-accordion-item"))){e.querySelector(".cmp-accordion-item-title").click(),await b((()=>!!e.querySelector(".cmp-accordion-item-content.cmp-active")),10,50);const t=e.querySelector(".cmp-accordion-item-content.cmp-active");t.querySelectorAll(".cmp-toggle-actions .cmp-toggle-deny:not(.cmp-toggle-deny--active)").forEach((e=>e.click())),t.querySelectorAll(".cmp-toggle-actions .cmp-toggle-checkbox:not(.cmp-toggle-checkbox--active)").forEach((e=>e.click()))}return await this.click(".cmp-main-button:not(.cmp-main-button--primary)"),!0}async optIn(){return this.waitForThenClick(".cmp-main-button.cmp-main-button--primary")}async test(){return document.cookie.includes("cmp-data=0")}},class extends d{constructor(){super(...arguments),this.name="tiktok.com",this.runContext={urlPattern:"tiktok"}}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}getShadowRoot(){const e=document.querySelector("tiktok-cookie-banner");return e?e.shadowRoot:null}async detectCmp(){return this.elementExists("tiktok-cookie-banner")}async detectPopup(){return _(this.getShadowRoot().querySelector(".tiktok-cookie-banner"))}async optOut(){const e=this.autoconsent.config.logs,t=this.getShadowRoot().querySelector(".button-wrapper button:first-child");return t?(e.rulesteps&&console.log("[clicking]",t),t.click(),!0):(e.errors&&console.log("no decline button found"),!1)}async optIn(){const e=this.autoconsent.config.logs,t=this.getShadowRoot().querySelector(".button-wrapper button:last-child");return t?(e.rulesteps&&console.log("[clicking]",t),t.click(),!0):(e.errors&&console.log("no accept button found"),!1)}async test(){const e=document.cookie.match(/cookie-consent=([^;]+)/);if(!e)return!1;const t=JSON.parse(decodeURIComponent(e[1]));return Object.values(t).every((e=>"boolean"!=typeof e||!1===e))}},class extends d{constructor(){super(...arguments),this.runContext={urlPattern:"^https://(www\\.)?airbnb\\.[^/]+/"},this.prehideSelectors=["div[data-testid=main-cookies-banner-container]",'div:has(> div:first-child):has(> div:last-child):has(> section [data-testid="strictly-necessary-cookies"])']}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists("div[data-testid=main-cookies-banner-container]")}async detectPopup(){return this.elementVisible("div[data-testid=main-cookies-banner-container","any")}async optOut(){let e;for(await this.waitForThenClick("div[data-testid=main-cookies-banner-container] button._snbhip0");e=document.querySelector("[data-testid=modal-container] button[aria-checked=true]:not([disabled])");)e.click();return this.waitForThenClick("button[data-testid=save-btn]")}async optIn(){return this.waitForThenClick("div[data-testid=main-cookies-banner-container] button._148dgdpk")}async test(){return await b((()=>!!document.cookie.match("OptanonAlertBoxClosed")),20,200)}},class extends d{constructor(){super(...arguments),this.name="tumblr-com",this.runContext={urlPattern:"^https://(www\\.)?tumblr\\.com/"}}get hasSelfTest(){return!1}get isIntermediate(){return!1}get isCosmetic(){return!1}get prehideSelectors(){return["#cmp-app-container"]}async detectCmp(){return this.elementExists("#cmp-app-container")}async detectPopup(){return this.elementVisible("#cmp-app-container","any")}async optOut(){let e=document.querySelector("#cmp-app-container iframe"),t=e.contentDocument?.querySelector(".cmp-components-button.is-secondary");return!!t&&(t.click(),await b((()=>{const e=document.querySelector("#cmp-app-container iframe");return!!e.contentDocument?.querySelector(".cmp__dialog input")}),5,500),e=document.querySelector("#cmp-app-container iframe"),t=e.contentDocument?.querySelector(".cmp-components-button.is-secondary"),!!t&&(t.click(),!0))}async optIn(){const e=document.querySelector("#cmp-app-container iframe").contentDocument.querySelector(".cmp-components-button.is-primary");return!!e&&(e.click(),!0)}}],v=class{constructor(e){this.autoconsentInstance=e}click(e,t=!1){const o=this.elementSelector(e);return this.autoconsentInstance.config.logs.rulesteps&&console.log("[click]",e,t,o),o.length>0&&(t?o.forEach((e=>e.click())):o[0].click()),o.length>0}elementExists(e){return this.elementSelector(e).length>0}elementVisible(e,t){const o=this.elementSelector(e),c=new Array(o.length);return o.forEach(((e,t)=>{c[t]=_(e)})),"none"===t?c.every((e=>!e)):0!==c.length&&("any"===t?c.some((e=>e)):c.every((e=>e)))}waitForElement(e,t=1e4){const o=Math.ceil(t/200);return this.autoconsentInstance.config.logs.rulesteps&&console.log("[waitForElement]",e),b((()=>this.elementSelector(e).length>0),o,200)}waitForVisible(e,t=1e4,o="any"){return b((()=>this.elementVisible(e,o)),Math.ceil(t/200),200)}async waitForThenClick(e,t=1e4,o=!1){return await this.waitForElement(e,t),this.click(e,o)}wait(e){return new Promise((t=>{setTimeout((()=>{t(!0)}),e)}))}hide(e,t){return k(h(),e,t)}prehide(e){const t=h("autoconsent-prehide");return this.autoconsentInstance.config.logs.lifecycle&&console.log("[prehide]",t,location.href),k(t,e,"opacity")}undoPrehide(){const e=h("autoconsent-prehide");return this.autoconsentInstance.config.logs.lifecycle&&console.log("[undoprehide]",e,location.href),e&&e.remove(),!!e}querySingleReplySelector(e,t=document){if(e.startsWith("aria/"))return[];if(e.startsWith("xpath/")){const o=e.slice(6),c=document.evaluate(o,t,null,XPathResult.ANY_TYPE,null);let i=null;const n=[];for(;i=c.iterateNext();)n.push(i);return n}return e.startsWith("text/")||e.startsWith("pierce/")?[]:t.shadowRoot?Array.from(t.shadowRoot.querySelectorAll(e)):Array.from(t.querySelectorAll(e))}querySelectorChain(e){let t,o=document;for(const c of e){if(t=this.querySingleReplySelector(c,o),0===t.length)return[];o=t[0]}return t}elementSelector(e){return"string"==typeof e?this.querySingleReplySelector(e):this.querySelectorChain(e)}};var f=[{name:"192.com",detectCmp:[{exists:".ont-cookies"}],detectPopup:[{visible:".ont-cookies"}],optIn:[{click:".ont-btn-main.ont-cookies-btn.js-ont-btn-ok2"}],optOut:[{click:".ont-cookes-btn-manage"},{click:".ont-btn-main.ont-cookies-btn.js-ont-btn-choose"}],test:[{eval:"EVAL_ONENINETWO_0"}]},{name:"1password-com",cosmetic:!0,prehideSelectors:['footer #footer-root [aria-label="Cookie Consent"]'],detectCmp:[{exists:'footer #footer-root [aria-label="Cookie Consent"]'}],detectPopup:[{visible:'footer #footer-root [aria-label="Cookie Consent"]'}],optIn:[{click:'footer #footer-root [aria-label="Cookie Consent"] button'}],optOut:[{hide:'footer #footer-root [aria-label="Cookie Consent"]'}]},{name:"abconcerts.be",vendorUrl:"https://unknown",intermediate:!1,prehideSelectors:["dialog.cookie-consent"],detectCmp:[{exists:"dialog.cookie-consent form.cookie-consent__form"}],detectPopup:[{visible:"dialog.cookie-consent form.cookie-consent__form"}],optIn:[{waitForThenClick:"dialog.cookie-consent form.cookie-consent__form button[value=yes]"}],optOut:[{if:{exists:"dialog.cookie-consent form.cookie-consent__form button[value=no]"},then:[{click:"dialog.cookie-consent form.cookie-consent__form button[value=no]"}],else:[{click:"dialog.cookie-consent form.cookie-consent__form button.cookie-consent__options-toggle"},{waitForThenClick:'dialog.cookie-consent form.cookie-consent__form button[value="save_options"]'}]}]},{name:"acris",prehideSelectors:["div.acris-cookie-consent"],detectCmp:[{exists:"[data-acris-cookie-consent]"}],detectPopup:[{visible:".acris-cookie-consent.is--modal"}],optIn:[{waitForVisible:"#ccConsentAcceptAllButton",check:"any"},{wait:500},{waitForThenClick:"#ccConsentAcceptAllButton"}],optOut:[{waitForVisible:"#ccAcceptOnlyFunctional",check:"any"},{wait:500},{waitForThenClick:"#ccAcceptOnlyFunctional"}]},{name:"activobank.pt",runContext:{urlPattern:"^https://(www\\.)?activobank\\.pt"},prehideSelectors:["aside#cookies,.overlay-cookies"],detectCmp:[{exists:"#cookies .cookies-btn"}],detectPopup:[{visible:"#cookies #submitCookies"}],optIn:[{waitForThenClick:"#cookies #submitCookies"}],optOut:[{waitForThenClick:"#cookies #rejectCookies"}]},{name:"Adroll",prehideSelectors:["#adroll_consent_container"],detectCmp:[{exists:"#adroll_consent_container"}],detectPopup:[{visible:"#adroll_consent_container"}],optIn:[{waitForThenClick:"#adroll_consent_accept"}],optOut:[{waitForThenClick:"#adroll_consent_reject"}],test:[{eval:"EVAL_ADROLL_0"}]},{name:"affinity.serif.com",detectCmp:[{exists:".c-cookie-banner button[data-qa='allow-all-cookies']"}],detectPopup:[{visible:".c-cookie-banner"}],optIn:[{click:'button[data-qa="allow-all-cookies"]'}],optOut:[{click:'button[data-qa="manage-cookies"]'},{waitFor:'.c-cookie-banner ~ [role="dialog"]'},{waitForThenClick:'.c-cookie-banner ~ [role="dialog"] input[type="checkbox"][value="true"]',all:!0},{click:'.c-cookie-banner ~ [role="dialog"] .c-modal__action button'}],test:[{wait:500},{eval:"EVAL_AFFINITY_SERIF_COM_0"}]},{name:"agolde.com",cosmetic:!0,prehideSelectors:["#modal-1 div[data-micromodal-close]"],detectCmp:[{exists:"#modal-1 div[aria-labelledby=modal-1-title]"}],detectPopup:[{exists:"#modal-1 div[data-micromodal-close]"}],optIn:[{click:'button[aria-label="Close modal"]'}],optOut:[{hide:"#modal-1 div[data-micromodal-close]"}]},{name:"aliexpress",vendorUrl:"https://aliexpress.com/",runContext:{urlPattern:"^https://.*\\.aliexpress\\.com/"},prehideSelectors:["#gdpr-new-container"],detectCmp:[{exists:"#gdpr-new-container"}],detectPopup:[{visible:"#gdpr-new-container"}],optIn:[{waitForThenClick:"#gdpr-new-container .btn-accept"}],optOut:[{waitForThenClick:"#gdpr-new-container .btn-more"},{waitFor:"#gdpr-new-container .gdpr-dialog-switcher"},{click:"#gdpr-new-container .switcher-on",all:!0,optional:!0},{click:"#gdpr-new-container .btn-save"}]},{name:"almacmp",prehideSelectors:["#alma-cmpv2-container"],detectCmp:[{exists:"#alma-cmpv2-container"}],detectPopup:[{visible:"#alma-cmpv2-container #almacmp-modal-layer1"}],optIn:[{waitForThenClick:"#alma-cmpv2-container #almacmp-modal-layer1 #almacmp-modalConfirmBtn"}],optOut:[{waitForThenClick:"#alma-cmpv2-container #almacmp-modal-layer1 #almacmp-modalSettingBtn"},{waitFor:"#alma-cmpv2-container #almacmp-modal-layer2"},{waitForThenClick:"#alma-cmpv2-container #almacmp-modal-layer2 #almacmp-reject-all-layer2"}],test:[{eval:"EVAL_ALMACMP_0"}]},{name:"altium.com",cosmetic:!0,prehideSelectors:[".altium-privacy-bar"],detectCmp:[{exists:".altium-privacy-bar"}],detectPopup:[{exists:".altium-privacy-bar"}],optIn:[{click:"a.altium-privacy-bar__btn"}],optOut:[{hide:".altium-privacy-bar"}]},{name:"amazon.com",prehideSelectors:['span[data-action="sp-cc"][data-sp-cc*="rejectAllAction"]'],detectCmp:[{exists:'span[data-action="sp-cc"][data-sp-cc*="rejectAllAction"]'}],detectPopup:[{visible:'span[data-action="sp-cc"][data-sp-cc*="rejectAllAction"]'}],optIn:[{waitForVisible:"#sp-cc-accept"},{wait:500},{click:"#sp-cc-accept"}],optOut:[{waitForVisible:"#sp-cc-rejectall-link"},{wait:500},{click:"#sp-cc-rejectall-link"}]},{name:"aquasana.com",prehideSelectors:["#consent-tracking"],detectCmp:[{exists:"#consent-tracking"}],detectPopup:[{exists:"#consent-tracking"}],optIn:[{waitForThenClick:"#consent-tracking .affirm.btn"}],optOut:[{if:{exists:"#consent-tracking .decline.btn"},then:[{click:"#consent-tracking .decline.btn"}],else:[{hide:"#consent-tracking"}]}]},{name:"arbeitsagentur",vendorUrl:"https://www.arbeitsagentur.de/",prehideSelectors:[".modal-open bahf-cookie-disclaimer-dpl3"],detectCmp:[{exists:"bahf-cookie-disclaimer-dpl3"}],detectPopup:[{visible:"bahf-cookie-disclaimer-dpl3"}],optIn:[{waitForThenClick:["bahf-cookie-disclaimer-dpl3","bahf-cd-modal-dpl3 .ba-btn-primary"]}],optOut:[{waitForThenClick:["bahf-cookie-disclaimer-dpl3","bahf-cd-modal-dpl3 .ba-btn-contrast"]}],test:[{eval:"EVAL_ARBEITSAGENTUR_TEST"}]},{name:"asus",vendorUrl:"https://www.asus.com/",runContext:{urlPattern:"^https://www\\.asus\\.com/"},prehideSelectors:["#cookie-policy-info,#cookie-policy-info-bg"],detectCmp:[{exists:"#cookie-policy-info"}],detectPopup:[{visible:"#cookie-policy-info"}],optIn:[{waitForThenClick:'#cookie-policy-info [data-agree="Accept Cookies"]'}],optOut:[{if:{exists:"#cookie-policy-info .btn-reject"},then:[{waitForThenClick:"#cookie-policy-info .btn-reject"}],else:[{waitForThenClick:"#cookie-policy-info .btn-setting"},{waitForThenClick:'#cookie-policy-lightbox-wrapper [data-agree="Save Settings"]'}]}]},{name:"athlinks-com",runContext:{urlPattern:"^https://(www\\.)?athlinks\\.com/"},cosmetic:!0,prehideSelectors:["#footer-container ~ div"],detectCmp:[{exists:"#footer-container ~ div"}],detectPopup:[{visible:"#footer-container > div"}],optIn:[{click:"#footer-container ~ div button"}],optOut:[{hide:"#footer-container ~ div"}]},{name:"ausopen.com",cosmetic:!0,detectCmp:[{exists:".gdpr-popup__message"}],detectPopup:[{visible:".gdpr-popup__message"}],optOut:[{hide:".gdpr-popup__message"}],optIn:[{click:".gdpr-popup__message button"}]},{name:"automattic-cmp-optout",prehideSelectors:['form[class*="cookie-banner"][method="post"]'],detectCmp:[{exists:'form[class*="cookie-banner"][method="post"]'}],detectPopup:[{visible:'form[class*="cookie-banner"][method="post"]'}],optIn:[{click:'a[class*="accept-all-button"]'}],optOut:[{click:'form[class*="cookie-banner"] div[class*="simple-options"] a[class*="customize-button"]'},{waitForThenClick:"input[type=checkbox][checked]:not([disabled])",all:!0},{click:'a[class*="accept-selection-button"]'}]},{name:"aws.amazon.com",prehideSelectors:["#awsccc-cb-content","#awsccc-cs-container","#awsccc-cs-modalOverlay","#awsccc-cs-container-inner"],detectCmp:[{exists:"#awsccc-cb-content"}],detectPopup:[{visible:"#awsccc-cb-content"}],optIn:[{click:"button[data-id=awsccc-cb-btn-accept"}],optOut:[{click:"button[data-id=awsccc-cb-btn-customize]"},{waitFor:"input[aria-checked]"},{click:"input[aria-checked=true]",all:!0,optional:!0},{click:"button[data-id=awsccc-cs-btn-save]"}]},{name:"axeptio",prehideSelectors:[".axeptio_widget"],detectCmp:[{exists:".axeptio_widget"}],detectPopup:[{visible:".axeptio_widget"}],optIn:[{waitFor:".axeptio-widget--open"},{click:"button#axeptio_btn_acceptAll"}],optOut:[{waitFor:".axeptio-widget--open"},{click:"button#axeptio_btn_dismiss"}],test:[{eval:"EVAL_AXEPTIO_0"}]},{name:"baden-wuerttemberg.de",prehideSelectors:[".cookie-alert.t-dark"],cosmetic:!0,detectCmp:[{exists:".cookie-alert.t-dark"}],detectPopup:[{visible:".cookie-alert.t-dark"}],optIn:[{click:".cookie-alert__form input:not([disabled]):not([checked])"},{click:".cookie-alert__button button"}],optOut:[{hide:".cookie-alert.t-dark"}]},{name:"bahn-de",vendorUrl:"https://www.bahn.de/",cosmetic:!1,runContext:{main:!0,frame:!1,urlPattern:"^https://(www\\.)?bahn\\.de/"},intermediate:!1,prehideSelectors:[],detectCmp:[{exists:["body > div:first-child","#consent-layer"]}],detectPopup:[{visible:["body > div:first-child","#consent-layer"]}],optIn:[{waitForThenClick:["body > div:first-child","#consent-layer .js-accept-all-cookies"]}],optOut:[{waitForThenClick:["body > div:first-child","#consent-layer .js-accept-essential-cookies"]}],test:[{eval:"EVAL_BAHN_TEST"}]},{name:"bbb.org",runContext:{urlPattern:"^https://www\\.bbb\\.org/"},cosmetic:!0,prehideSelectors:['div[aria-label="use of cookies on bbb.org"]'],detectCmp:[{exists:'div[aria-label="use of cookies on bbb.org"]'}],detectPopup:[{visible:'div[aria-label="use of cookies on bbb.org"]'}],optIn:[{click:'div[aria-label="use of cookies on bbb.org"] button.bds-button-unstyled span.visually-hidden'}],optOut:[{hide:'div[aria-label="use of cookies on bbb.org"]'}]},{name:"bing.com",prehideSelectors:["#bnp_container"],detectCmp:[{exists:"#bnp_cookie_banner"}],detectPopup:[{visible:"#bnp_cookie_banner"}],optIn:[{click:"#bnp_btn_accept"}],optOut:[{click:"#bnp_btn_preference"},{click:"#mcp_savesettings"}],test:[{eval:"EVAL_BING_0"}]},{name:"blocksy",vendorUrl:"https://creativethemes.com/blocksy/docs/extensions/cookies-consent/",cosmetic:!1,runContext:{main:!0,frame:!1},intermediate:!1,prehideSelectors:[".cookie-notification"],detectCmp:[{exists:"#blocksy-ext-cookies-consent-styles-css"}],detectPopup:[{visible:".cookie-notification"}],optIn:[{click:".cookie-notification .ct-cookies-decline-button"}],optOut:[{waitForThenClick:".cookie-notification .ct-cookies-decline-button"}],test:[{eval:"EVAL_BLOCKSY_0"}]},{name:"borlabs",detectCmp:[{exists:"._brlbs-block-content"}],detectPopup:[{visible:"._brlbs-bar-wrap,._brlbs-box-wrap"}],optIn:[{click:"a[data-cookie-accept-all]"}],optOut:[{click:"a[data-cookie-individual]"},{waitForVisible:".cookie-preference"},{click:"input[data-borlabs-cookie-checkbox]:checked",all:!0,optional:!0},{click:"#CookiePrefSave"},{wait:500}],prehideSelectors:["#BorlabsCookieBox"],test:[{eval:"EVAL_BORLABS_0"}]},{name:"bundesregierung.de",prehideSelectors:[".bpa-cookie-banner"],detectCmp:[{exists:".bpa-cookie-banner"}],detectPopup:[{visible:".bpa-cookie-banner .bpa-module-full-hero"}],optIn:[{click:".bpa-accept-all-button"}],optOut:[{wait:500,comment:"click is not immediately recognized"},{waitForThenClick:".bpa-close-button"}],test:[{eval:"EVAL_BUNDESREGIERUNG_DE_0"}]},{name:"burpee.com",cosmetic:!0,prehideSelectors:["#notice-cookie-block"],detectCmp:[{exists:"#notice-cookie-block"}],detectPopup:[{exists:"#html-body #notice-cookie-block"}],optIn:[{click:"#btn-cookie-allow"}],optOut:[{hide:"#html-body #notice-cookie-block, #notice-cookie"}]},{name:"canva.com",prehideSelectors:['div[role="dialog"] a[data-anchor-id="cookie-policy"]'],detectCmp:[{exists:'div[role="dialog"] a[data-anchor-id="cookie-policy"]'}],detectPopup:[{exists:'div[role="dialog"] a[data-anchor-id="cookie-policy"]'}],optIn:[{click:'div[role="dialog"] button:nth-child(1)'}],optOut:[{if:{exists:'div[role="dialog"] button:nth-child(3)'},then:[{click:'div[role="dialog"] button:nth-child(2)'}],else:[{click:'div[role="dialog"] button:nth-child(2)'},{waitFor:'div[role="dialog"] a[data-anchor-id="cookie-policy"]'},{waitFor:'div[role="dialog"] button[role=switch]'},{click:'div[role="dialog"] button:nth-child(2):not([role])'},{click:'div[role="dialog"] div:last-child button:only-child'}]}],test:[{eval:"EVAL_CANVA_0"}]},{name:"canyon.com",runContext:{urlPattern:"^https://www\\.canyon\\.com/"},prehideSelectors:["div.modal.cookiesModal.is-open"],detectCmp:[{exists:"div.modal.cookiesModal.is-open"}],detectPopup:[{visible:"div.modal.cookiesModal.is-open"}],optIn:[{click:'div.cookiesModal__buttonWrapper > button[data-closecause="close-by-submit"]'}],optOut:[{click:'div.cookiesModal__buttonWrapper > button[data-closecause="close-by-manage-cookies"]'},{waitForThenClick:"button#js-manage-data-privacy-save-button"}]},{name:"cc-banner-springer",prehideSelectors:[".cc-banner[data-cc-banner]"],detectCmp:[{exists:".cc-banner[data-cc-banner]"}],detectPopup:[{visible:".cc-banner[data-cc-banner]"}],optIn:[{waitForThenClick:".cc-banner[data-cc-banner] button[data-cc-action=accept]"}],optOut:[{if:{exists:".cc-banner[data-cc-banner] button[data-cc-action=reject]"},then:[{click:".cc-banner[data-cc-banner] button[data-cc-action=reject]"}],else:[{waitForThenClick:".cc-banner[data-cc-banner] button[data-cc-action=preferences]"},{waitFor:".cc-preferences[data-cc-preferences]"},{click:".cc-preferences[data-cc-preferences] input[type=radio][data-cc-action=toggle-category][value=off]",all:!0,optional:!0},{if:{exists:".cc-preferences[data-cc-preferences] button[data-cc-action=reject]"},then:[{click:".cc-preferences[data-cc-preferences] button[data-cc-action=reject]"}],else:[{click:".cc-preferences[data-cc-preferences] button[data-cc-action=save]"}]}]}],test:[{eval:"EVAL_CC_BANNER2_0"}]},{name:"cc_banner",cosmetic:!0,prehideSelectors:[".cc_banner-wrapper"],detectCmp:[{exists:".cc_banner-wrapper"}],detectPopup:[{visible:".cc_banner"}],optIn:[{click:".cc_btn_accept_all"}],optOut:[{hide:".cc_banner-wrapper"}]},{name:"check24-partnerprogramm-de",prehideSelectors:["[data-modal-content]:has([data-toggle-target^='cookie'])"],detectCmp:[{exists:"[data-toggle-target^='cookie']"}],detectPopup:[{visible:"[data-toggle-target^='cookie']",check:"any"}],optIn:[{waitForThenClick:"[data-cookie-accept-all]"}],optOut:[{waitForThenClick:"[data-cookie-dismiss-all]"}]},{name:"ciaopeople.it",prehideSelectors:["#cp-gdpr-choices"],detectCmp:[{exists:"#cp-gdpr-choices"}],detectPopup:[{visible:"#cp-gdpr-choices"}],optIn:[{waitForThenClick:".gdpr-btm__right > button:nth-child(2)"}],optOut:[{waitForThenClick:".gdpr-top-content > button"},{waitFor:".gdpr-top-back"},{waitForThenClick:".gdpr-btm__right > button:nth-child(1)"}],test:[{visible:"#cp-gdpr-choices",check:"none"}]},{vendorUrl:"https://www.civicuk.com/cookie-control/",name:"civic-cookie-control",prehideSelectors:["#ccc-module,#ccc-overlay"],detectCmp:[{exists:"#ccc-module"}],detectPopup:[{visible:"#ccc"},{visible:"#ccc-module"}],optOut:[{click:"#ccc-reject-settings"}],optIn:[{click:"#ccc-recommended-settings"}]},{name:"click.io",prehideSelectors:["#cl-consent"],detectCmp:[{exists:"#cl-consent"}],detectPopup:[{visible:"#cl-consent"}],optIn:[{waitForThenClick:'#cl-consent [data-role="b_agree"]'}],optOut:[{waitFor:'#cl-consent [data-role="b_options"]'},{wait:500},{click:'#cl-consent [data-role="b_options"]'},{waitFor:'.cl-consent-popup.cl-consent-visible [data-role="alloff"]'},{click:'.cl-consent-popup.cl-consent-visible [data-role="alloff"]',all:!0},{click:'[data-role="b_save"]'}],test:[{eval:"EVAL_CLICKIO_0",comment:"TODO: this only checks if we interacted at all"}]},{name:"clinch",intermediate:!1,runContext:{frame:!1,main:!0},prehideSelectors:[".consent-modal[role=dialog]"],detectCmp:[{exists:".consent-modal[role=dialog]"}],detectPopup:[{visible:".consent-modal[role=dialog]"}],optIn:[{click:"#consent_agree"}],optOut:[{if:{exists:"#consent_reject"},then:[{click:"#consent_reject"}],else:[{click:"#manage_cookie_preferences"},{click:"#cookie_consent_preferences input:checked",all:!0,optional:!0},{click:"#consent_save"}]}],test:[{eval:"EVAL_CLINCH_0"}]},{name:"clustrmaps.com",runContext:{urlPattern:"^https://(www\\.)?clustrmaps\\.com/"},cosmetic:!0,prehideSelectors:["#gdpr-cookie-message"],detectCmp:[{exists:"#gdpr-cookie-message"}],detectPopup:[{visible:"#gdpr-cookie-message"}],optIn:[{click:"button#gdpr-cookie-accept"}],optOut:[{hide:"#gdpr-cookie-message"}]},{name:"coinbase",intermediate:!1,runContext:{frame:!0,main:!0,urlPattern:"^https://(www|help)\\.coinbase\\.com"},prehideSelectors:[],detectCmp:[{exists:"div[class^=CookieBannerContent__Container]"}],detectPopup:[{visible:"div[class^=CookieBannerContent__Container]"}],optIn:[{click:"div[class^=CookieBannerContent__CTA] :nth-last-child(1)"}],optOut:[{click:"button[class^=CookieBannerContent__Settings]"},{click:"div[class^=CookiePreferencesModal__CategoryContainer] input:checked",all:!0,optional:!0},{click:"div[class^=CookiePreferencesModal__ButtonContainer] > button"}],test:[{eval:"EVAL_COINBASE_0"}]},{name:"Complianz banner",prehideSelectors:["#cmplz-cookiebanner-container"],detectCmp:[{exists:"#cmplz-cookiebanner-container .cmplz-cookiebanner"}],detectPopup:[{visible:"#cmplz-cookiebanner-container .cmplz-cookiebanner",check:"any"}],optIn:[{waitForThenClick:".cmplz-cookiebanner .cmplz-accept"}],optOut:[{waitForThenClick:".cmplz-cookiebanner .cmplz-deny"}],test:[{eval:"EVAL_COMPLIANZ_BANNER_0"}]},{name:"Complianz categories",prehideSelectors:['.cc-type-categories[aria-describedby="cookieconsent:desc"]'],detectCmp:[{exists:'.cc-type-categories[aria-describedby="cookieconsent:desc"]'}],detectPopup:[{visible:'.cc-type-categories[aria-describedby="cookieconsent:desc"]'}],optIn:[{any:[{click:".cc-accept-all"},{click:".cc-allow-all"},{click:".cc-allow"},{click:".cc-dismiss"}]}],optOut:[{if:{exists:'.cc-type-categories[aria-describedby="cookieconsent:desc"] .cc-dismiss'},then:[{click:".cc-dismiss"}],else:[{click:".cc-type-categories input[type=checkbox]:not([disabled]):checked",all:!0,optional:!0},{click:".cc-save"}]}]},{name:"Complianz notice",prehideSelectors:['.cc-type-info[aria-describedby="cookieconsent:desc"]'],cosmetic:!0,detectCmp:[{exists:'.cc-type-info[aria-describedby="cookieconsent:desc"] .cc-compliance .cc-btn'}],detectPopup:[{visible:'.cc-type-info[aria-describedby="cookieconsent:desc"] .cc-compliance .cc-btn'}],optIn:[{click:".cc-accept-all",optional:!0},{click:".cc-allow",optional:!0},{click:".cc-dismiss",optional:!0}],optOut:[{if:{exists:".cc-deny"},then:[{click:".cc-deny"}],else:[{hide:'[aria-describedby="cookieconsent:desc"]'}]}]},{name:"Complianz opt-both",prehideSelectors:['[aria-describedby="cookieconsent:desc"] .cc-type-opt-both'],detectCmp:[{exists:'[aria-describedby="cookieconsent:desc"] .cc-type-opt-both'}],detectPopup:[{visible:'[aria-describedby="cookieconsent:desc"] .cc-type-opt-both'}],optIn:[{click:".cc-accept-all",optional:!0},{click:".cc-allow",optional:!0},{click:".cc-dismiss",optional:!0}],optOut:[{waitForThenClick:".cc-deny"}]},{name:"Complianz opt-out",prehideSelectors:['[aria-describedby="cookieconsent:desc"].cc-type-opt-out'],detectCmp:[{exists:'[aria-describedby="cookieconsent:desc"].cc-type-opt-out'}],detectPopup:[{visible:'[aria-describedby="cookieconsent:desc"].cc-type-opt-out'}],optIn:[{click:".cc-accept-all",optional:!0},{click:".cc-allow",optional:!0},{click:".cc-dismiss",optional:!0}],optOut:[{if:{exists:".cc-deny"},then:[{click:".cc-deny"}],else:[{if:{exists:".cmp-pref-link"},then:[{click:".cmp-pref-link"},{waitForThenClick:".cmp-body [id*=rejectAll]"},{waitForThenClick:".cmp-body .cmp-save-btn"}]}]}]},{name:"Complianz optin",prehideSelectors:['.cc-type-opt-in[aria-describedby="cookieconsent:desc"]'],detectCmp:[{exists:'.cc-type-opt-in[aria-describedby="cookieconsent:desc"]'}],detectPopup:[{visible:'.cc-type-opt-in[aria-describedby="cookieconsent:desc"]'}],optIn:[{any:[{click:".cc-accept-all"},{click:".cc-allow"},{click:".cc-dismiss"}]}],optOut:[{if:{visible:".cc-deny"},then:[{click:".cc-deny"}],else:[{if:{visible:".cc-settings"},then:[{waitForThenClick:".cc-settings"},{waitForVisible:".cc-settings-view"},{click:".cc-settings-view input[type=checkbox]:not([disabled]):checked",all:!0,optional:!0},{click:".cc-settings-view .cc-btn-accept-selected"}],else:[{click:".cc-dismiss"}]}]}]},{name:"cookie-law-info",prehideSelectors:["#cookie-law-info-bar"],detectCmp:[{exists:"#cookie-law-info-bar"},{eval:"EVAL_COOKIE_LAW_INFO_DETECT"}],detectPopup:[{visible:"#cookie-law-info-bar"}],optIn:[{click:'[data-cli_action="accept_all"]'}],optOut:[{hide:"#cookie-law-info-bar"},{eval:"EVAL_COOKIE_LAW_INFO_0"}],test:[{eval:"EVAL_COOKIE_LAW_INFO_1"}]},{name:"cookie-manager-popup",cosmetic:!1,runContext:{main:!0,frame:!1},intermediate:!1,detectCmp:[{exists:"#notice-cookie-block #allow-functional-cookies, #notice-cookie-block #btn-cookie-settings"}],detectPopup:[{visible:"#notice-cookie-block"}],optIn:[{click:"#btn-cookie-allow"}],optOut:[{if:{exists:"#allow-functional-cookies"},then:[{click:"#allow-functional-cookies"}],else:[{waitForThenClick:"#btn-cookie-settings"},{waitForVisible:".modal-body"},{click:'.modal-body input:checked, .switch[data-switch="on"]',all:!0,optional:!0},{click:'[role="dialog"] .modal-footer button'}]}],prehideSelectors:["#btn-cookie-settings"],test:[{eval:"EVAL_COOKIE_MANAGER_POPUP_0"}]},{name:"cookie-notice",prehideSelectors:["#cookie-notice"],cosmetic:!0,detectCmp:[{visible:"#cookie-notice .cookie-notice-container"}],detectPopup:[{visible:"#cookie-notice"}],optIn:[{click:"#cn-accept-cookie"}],optOut:[{hide:"#cookie-notice"}]},{name:"cookie-script",vendorUrl:"https://cookie-script.com/",prehideSelectors:["#cookiescript_injected"],detectCmp:[{exists:"#cookiescript_injected"}],detectPopup:[{visible:"#cookiescript_injected"}],optOut:[{if:{exists:"#cookiescript_reject"},then:[{wait:100},{click:"#cookiescript_reject"}],else:[{click:"#cookiescript_manage"},{waitForVisible:".cookiescript_fsd_main"},{waitForThenClick:"#cookiescript_reject"}]}],optIn:[{click:"#cookiescript_accept"}]},{name:"cookieacceptbar",vendorUrl:"https://unknown",cosmetic:!0,prehideSelectors:["#cookieAcceptBar.cookieAcceptBar"],detectCmp:[{exists:"#cookieAcceptBar.cookieAcceptBar"}],detectPopup:[{visible:"#cookieAcceptBar.cookieAcceptBar"}],optIn:[{waitForThenClick:"#cookieAcceptBarConfirm"}],optOut:[{hide:"#cookieAcceptBar.cookieAcceptBar"}]},{name:"cookiealert",intermediate:!1,prehideSelectors:[],runContext:{frame:!0,main:!0},detectCmp:[{exists:".cookie-alert-extended"}],detectPopup:[{visible:".cookie-alert-extended-modal"}],optIn:[{click:"button[data-controller='cookie-alert/extended/button/accept']"},{eval:"EVAL_COOKIEALERT_0"}],optOut:[{click:"a[data-controller='cookie-alert/extended/detail-link']"},{click:".cookie-alert-configuration-input:checked",all:!0,optional:!0},{click:"button[data-controller='cookie-alert/extended/button/configuration']"},{eval:"EVAL_COOKIEALERT_0"}],test:[{eval:"EVAL_COOKIEALERT_2"}]},{name:"cookieconsent2",vendorUrl:"https://www.github.com/orestbida/cookieconsent",comment:"supports v2.x.x of the library",prehideSelectors:["#cc--main"],detectCmp:[{exists:"#cc--main"}],detectPopup:[{visible:"#cm"},{exists:"#s-all-bn"}],optIn:[{waitForThenClick:"#s-all-bn"}],optOut:[{waitForThenClick:"#s-rall-bn"}],test:[{eval:"EVAL_COOKIECONSENT2_TEST"}]},{name:"cookieconsent3",vendorUrl:"https://www.github.com/orestbida/cookieconsent",comment:"supports v3.x.x of the library",prehideSelectors:["#cc-main"],detectCmp:[{exists:"#cc-main"}],detectPopup:[{visible:"#cc-main .cm-wrapper"}],optIn:[{waitForThenClick:".cm__btn[data-role=all]"}],optOut:[{waitForThenClick:".cm__btn[data-role=necessary]"}],test:[{eval:"EVAL_COOKIECONSENT3_TEST"}]},{name:"cookiecuttr",vendorUrl:"https://github.com/cdwharton/cookieCuttr",cosmetic:!1,runContext:{main:!0,frame:!1,urlPattern:""},prehideSelectors:[".cc-cookies"],detectCmp:[{exists:".cc-cookies .cc-cookie-accept"}],detectPopup:[{visible:".cc-cookies .cc-cookie-accept"}],optIn:[{waitForThenClick:".cc-cookies .cc-cookie-accept"}],optOut:[{if:{exists:".cc-cookies .cc-cookie-decline"},then:[{click:".cc-cookies .cc-cookie-decline"}],else:[{hide:".cc-cookies"}]}]},{name:"cookiefirst.com",prehideSelectors:["#cookiefirst-root,.cookiefirst-root,[aria-labelledby=cookie-preference-panel-title]"],detectCmp:[{exists:"#cookiefirst-root,.cookiefirst-root"}],detectPopup:[{visible:"#cookiefirst-root,.cookiefirst-root"}],optIn:[{click:"button[data-cookiefirst-action=accept]"}],optOut:[{if:{exists:"button[data-cookiefirst-action=adjust]"},then:[{click:"button[data-cookiefirst-action=adjust]"},{waitForVisible:"[data-cookiefirst-widget=modal]",timeout:1e3},{eval:"EVAL_COOKIEFIRST_1"},{wait:1e3},{click:"button[data-cookiefirst-action=save]"}],else:[{click:"button[data-cookiefirst-action=reject]"}]}],test:[{eval:"EVAL_COOKIEFIRST_0"}]},{name:"Cookie Information Banner",prehideSelectors:["#cookie-information-template-wrapper"],detectCmp:[{exists:"#cookie-information-template-wrapper"}],detectPopup:[{visible:"#cookie-information-template-wrapper"}],optIn:[{eval:"EVAL_COOKIEINFORMATION_1"}],optOut:[{hide:"#cookie-information-template-wrapper",comment:"some templates don't hide the banner automatically"},{eval:"EVAL_COOKIEINFORMATION_0"}],test:[{eval:"EVAL_COOKIEINFORMATION_2"}]},{name:"cookieyes",prehideSelectors:[".cky-overlay,.cky-consent-container"],detectCmp:[{exists:".cky-consent-container"}],detectPopup:[{visible:".cky-consent-container"}],optIn:[{waitForThenClick:".cky-consent-container [data-cky-tag=accept-button]"}],optOut:[{if:{exists:".cky-consent-container [data-cky-tag=reject-button]"},then:[{waitForThenClick:".cky-consent-container [data-cky-tag=reject-button]"}],else:[{if:{exists:".cky-consent-container [data-cky-tag=settings-button]"},then:[{click:".cky-consent-container [data-cky-tag=settings-button]"},{waitFor:".cky-modal-open input[type=checkbox]"},{click:".cky-modal-open input[type=checkbox]:checked",all:!0,optional:!0},{waitForThenClick:".cky-modal [data-cky-tag=detail-save-button]"}],else:[{hide:".cky-consent-container,.cky-overlay"}]}]}],test:[{eval:"EVAL_COOKIEYES_0"}]},{name:"corona-in-zahlen.de",prehideSelectors:[".cookiealert"],detectCmp:[{exists:".cookiealert"}],detectPopup:[{visible:".cookiealert"}],optOut:[{click:".configurecookies"},{click:".confirmcookies"}],optIn:[{click:".acceptcookies"}]},{name:"crossfit-com",cosmetic:!0,prehideSelectors:['body #modal > div > div[class^="_wrapper_"]'],detectCmp:[{exists:'body #modal > div > div[class^="_wrapper_"]'}],detectPopup:[{visible:'body #modal > div > div[class^="_wrapper_"]'}],optIn:[{click:'button[aria-label="accept cookie policy"]'}],optOut:[{hide:'body #modal > div > div[class^="_wrapper_"]'}]},{name:"csu-landtag-de",runContext:{urlPattern:"^https://(www\\.|)?csu-landtag\\.de"},prehideSelectors:["#cookie-disclaimer"],detectCmp:[{exists:"#cookie-disclaimer"}],detectPopup:[{visible:"#cookie-disclaimer"}],optIn:[{click:"#cookieall"}],optOut:[{click:"#cookiesel"}]},{name:"dailymotion-us",cosmetic:!0,prehideSelectors:['div[class*="CookiePopup__desktopContainer"]:has(div[class*="CookiePopup"])'],detectCmp:[{exists:'div[class*="CookiePopup__desktopContainer"]'}],detectPopup:[{visible:'div[class*="CookiePopup__desktopContainer"]'}],optIn:[{click:'div[class*="CookiePopup__desktopContainer"] > button > span'}],optOut:[{hide:'div[class*="CookiePopup__desktopContainer"]'}]},{name:"dailymotion.com",runContext:{urlPattern:"^https://(www\\.)?dailymotion\\.com/"},prehideSelectors:['div[class*="Overlay__container"]:has(div[class*="TCF2Popup"])'],detectCmp:[{exists:'div[class*="TCF2Popup"]'}],detectPopup:[{visible:'[class*="TCF2Popup"] a[href^="https://www.dailymotion.com/legal/cookiemanagement"]'}],optIn:[{waitForThenClick:'button[class*="TCF2Popup__button"]:not([class*="TCF2Popup__personalize"])'}],optOut:[{waitForThenClick:'button[class*="TCF2ContinueWithoutAcceptingButton"]'}],test:[{eval:"EVAL_DAILYMOTION_0"}]},{name:"deepl.com",prehideSelectors:[".dl_cookieBanner_container"],detectCmp:[{exists:".dl_cookieBanner_container"}],detectPopup:[{visible:".dl_cookieBanner_container"}],optOut:[{click:".dl_cookieBanner--buttonSelected"}],optIn:[{click:".dl_cookieBanner--buttonAll"}]},{name:"delta.com",runContext:{urlPattern:"^https://www\\.delta\\.com/"},cosmetic:!0,prehideSelectors:["ngc-cookie-banner"],detectCmp:[{exists:"div.cookie-footer-container"}],detectPopup:[{visible:"div.cookie-footer-container"}],optIn:[{click:" button.cookie-close-icon"}],optOut:[{hide:"div.cookie-footer-container"}]},{name:"dmgmedia-us",prehideSelectors:["#mol-ads-cmp-iframe, div.mol-ads-cmp > form > div"],detectCmp:[{exists:"div.mol-ads-cmp > form > div"}],detectPopup:[{waitForVisible:"div.mol-ads-cmp > form > div"}],optIn:[{waitForThenClick:"button.mol-ads-cmp--btn-primary"}],optOut:[{waitForThenClick:"div.mol-ads-ccpa--message > u > a"},{waitForVisible:".mol-ads-cmp--modal-dialog"},{waitForThenClick:"a.mol-ads-cmp-footer-privacy"},{waitForThenClick:"button.mol-ads-cmp--btn-secondary"}]},{name:"dmgmedia",prehideSelectors:['[data-project="mol-fe-cmp"]'],detectCmp:[{exists:'[data-project="mol-fe-cmp"]'}],detectPopup:[{visible:'[data-project="mol-fe-cmp"]'}],optIn:[{waitForThenClick:'[data-project="mol-fe-cmp"] button[class*=primary]'}],optOut:[{waitForThenClick:'[data-project="mol-fe-cmp"] button[class*=basic]'},{waitForVisible:'[data-project="mol-fe-cmp"] div[class*="tabContent"]'},{waitForThenClick:'[data-project="mol-fe-cmp"] div[class*="toggle"][class*="enabled"]',all:!0},{waitForThenClick:['[data-project="mol-fe-cmp"] [class*=footer]',"xpath///button[contains(., 'Save & Exit')]"]}]},{name:"dndbeyond",vendorUrl:"https://www.dndbeyond.com/",runContext:{urlPattern:"^https://(www\\.)?dndbeyond\\.com/"},prehideSelectors:["[id^=cookie-consent-banner]"],detectCmp:[{exists:"[id^=cookie-consent-banner]"}],detectPopup:[{visible:"[id^=cookie-consent-banner]"}],optIn:[{waitForThenClick:"#cookie-consent-granted"}],optOut:[{waitForThenClick:"#cookie-consent-denied"}],test:[{eval:"EVAL_DNDBEYOND_TEST"}]},{name:"dpgmedia-nl",prehideSelectors:["#pg-shadow-host"],detectCmp:[{exists:"#pg-shadow-host"}],detectPopup:[{visible:["#pg-shadow-host","#pg-modal"]}],optIn:[{waitForThenClick:["#pg-shadow-host","#pg-accept-btn"]}],optOut:[{waitForThenClick:["#pg-shadow-host","#pg-configure-btn"]},{waitForThenClick:["#pg-shadow-host","#pg-reject-btn"]}]},{name:"Drupal",detectCmp:[{exists:"#drupalorg-crosssite-gdpr"}],detectPopup:[{visible:"#drupalorg-crosssite-gdpr"}],optOut:[{click:".no"}],optIn:[{click:".yes"}]},{name:"WP DSGVO Tools",link:"https://wordpress.org/plugins/shapepress-dsgvo/",prehideSelectors:[".sp-dsgvo"],cosmetic:!0,detectCmp:[{exists:".sp-dsgvo.sp-dsgvo-popup-overlay"}],detectPopup:[{visible:".sp-dsgvo.sp-dsgvo-popup-overlay",check:"any"}],optIn:[{click:".sp-dsgvo-privacy-btn-accept-all",all:!0}],optOut:[{hide:".sp-dsgvo.sp-dsgvo-popup-overlay"}],test:[{eval:"EVAL_DSGVO_0"}]},{name:"dunelm.com",prehideSelectors:["div[data-testid=cookie-consent-modal-backdrop]"],detectCmp:[{exists:"div[data-testid=cookie-consent-message-contents]"}],detectPopup:[{visible:"div[data-testid=cookie-consent-message-contents]"}],optIn:[{click:'[data-testid="cookie-consent-allow-all"]'}],optOut:[{click:"button[data-testid=cookie-consent-adjust-settings]"},{click:"button[data-testid=cookie-consent-preferences-save]"}],test:[{eval:"EVAL_DUNELM_0"}]},{name:"ebay",vendorUrl:"https://ebay.com",cosmetic:!1,runContext:{main:!0,frame:!1,urlPattern:"^https://(www\\.)?ebay\\.([.a-z]+)/"},prehideSelectors:["#gdpr-banner"],detectCmp:[{exists:"#gdpr-banner"}],detectPopup:[{visible:"#gdpr-banner"}],optIn:[{waitForThenClick:"#gdpr-banner-accept"}],optOut:[{waitForThenClick:"#gdpr-banner-decline"}]},{name:"ecosia",vendorUrl:"https://www.ecosia.org/",runContext:{urlPattern:"^https://www\\.ecosia\\.org/"},prehideSelectors:[".cookie-wrapper"],detectCmp:[{exists:".cookie-wrapper > .cookie-notice"}],detectPopup:[{visible:".cookie-wrapper > .cookie-notice"}],optIn:[{waitForThenClick:"[data-test-id=cookie-notice-accept]"}],optOut:[{waitForThenClick:"[data-test-id=cookie-notice-reject]"}]},{name:"Ensighten ensModal",prehideSelectors:[".ensModal"],detectCmp:[{exists:".ensModal"}],detectPopup:[{visible:"#ensModalWrapper[style*=block]"}],optIn:[{waitForThenClick:"#modalAcceptButton"}],optOut:[{wait:500},{visible:"#ensModalWrapper[style*=block]"},{waitForThenClick:".ensCheckbox:checked",all:!0},{waitForThenClick:"#ensSave"}]},{name:"Ensighten ensNotifyBanner",prehideSelectors:["#ensNotifyBanner"],detectCmp:[{exists:"#ensNotifyBanner"}],detectPopup:[{visible:"#ensNotifyBanner[style*=block]"}],optIn:[{waitForThenClick:"#ensCloseBanner"}],optOut:[{wait:500},{visible:"#ensNotifyBanner[style*=block]"},{waitForThenClick:"#ensRejectAll,#rejectAll,#ensRejectBanner,.rejectAll"}]},{name:"espace-personnel.agirc-arrco.fr",runContext:{urlPattern:"^https://espace-personnel\\.agirc-arrco\\.fr/"},prehideSelectors:[".cdk-overlay-container"],detectCmp:[{exists:".cdk-overlay-container app-esaa-cookie-component"}],detectPopup:[{visible:".cdk-overlay-container app-esaa-cookie-component"}],optIn:[{waitForThenClick:".btn-cookie-accepter"}],optOut:[{waitForThenClick:".btn-cookie-refuser"}]},{name:"etsy",prehideSelectors:["#gdpr-single-choice-overlay","#gdpr-privacy-settings"],detectCmp:[{exists:"#gdpr-single-choice-overlay"}],detectPopup:[{visible:"#gdpr-single-choice-overlay"}],optOut:[{click:"button[data-gdpr-open-full-settings]"},{waitForVisible:".gdpr-overlay-body input",timeout:3e3},{wait:1e3},{eval:"EVAL_ETSY_0"},{eval:"EVAL_ETSY_1"}],optIn:[{click:"button[data-gdpr-single-choice-accept]"}]},{name:"eu-cookie-compliance-banner",detectCmp:[{exists:"body.eu-cookie-compliance-popup-open"}],detectPopup:[{exists:"body.eu-cookie-compliance-popup-open"}],optIn:[{click:".agree-button"}],optOut:[{if:{visible:".decline-button,.eu-cookie-compliance-save-preferences-button"},then:[{click:".decline-button,.eu-cookie-compliance-save-preferences-button"}]},{hide:".eu-cookie-compliance-banner-info, #sliding-popup"}],test:[{eval:"EVAL_EU_COOKIE_COMPLIANCE_0"}]},{name:"EU Cookie Law",prehideSelectors:[".pea_cook_wrapper,.pea_cook_more_info_popover"],cosmetic:!0,detectCmp:[{exists:".pea_cook_wrapper"}],detectPopup:[{wait:500},{visible:".pea_cook_wrapper"}],optIn:[{click:"#pea_cook_btn"}],optOut:[{hide:".pea_cook_wrapper"}],test:[{eval:"EVAL_EU_COOKIE_LAW_0"}]},{name:"europa-eu",vendorUrl:"https://ec.europa.eu/",runContext:{urlPattern:"^https://[^/]*europa\\.eu/"},prehideSelectors:["#cookie-consent-banner"],detectCmp:[{exists:".cck-container"}],detectPopup:[{visible:".cck-container"}],optIn:[{waitForThenClick:'.cck-actions-button[href="#accept"]'}],optOut:[{waitForThenClick:'.cck-actions-button[href="#refuse"]',hide:".cck-container"}]},{name:"EZoic",prehideSelectors:["#ez-cookie-dialog-wrapper"],detectCmp:[{exists:"#ez-cookie-dialog-wrapper"}],detectPopup:[{visible:"#ez-cookie-dialog-wrapper"}],optIn:[{click:"#ez-accept-all",optional:!0},{eval:"EVAL_EZOIC_0",optional:!0}],optOut:[{wait:500},{click:"#ez-manage-settings"},{waitFor:"#ez-cookie-dialog input[type=checkbox]"},{click:"#ez-cookie-dialog input[type=checkbox]:checked",all:!0},{click:"#ez-save-settings"}],test:[{eval:"EVAL_EZOIC_1"}]},{name:"facebook",runContext:{urlPattern:"^https://([a-z0-9-]+\\.)?facebook\\.com/"},prehideSelectors:['div[data-testid="cookie-policy-manage-dialog"]'],detectCmp:[{exists:'div[data-testid="cookie-policy-manage-dialog"]'}],detectPopup:[{visible:'div[data-testid="cookie-policy-manage-dialog"]'}],optIn:[{waitForThenClick:'button[data-cookiebanner="accept_button"]'},{waitForVisible:'div[data-testid="cookie-policy-manage-dialog"]',check:"none"}],optOut:[{waitForThenClick:'button[data-cookiebanner="accept_only_essential_button"]'},{waitForVisible:'div[data-testid="cookie-policy-manage-dialog"]',check:"none"}]},{name:"fides",vendorUrl:"https://github.com/ethyca/fides",prehideSelectors:["#fides-overlay"],detectCmp:[{exists:"#fides-overlay #fides-banner"}],detectPopup:[{visible:"#fides-overlay #fides-banner"},{eval:"EVAL_FIDES_DETECT_POPUP"}],optIn:[{waitForThenClick:"#fides-banner .fides-accept-all-button"}],optOut:[{waitForThenClick:"#fides-banner .fides-reject-all-button"}]},{name:"funding-choices",prehideSelectors:[".fc-consent-root,.fc-dialog-container,.fc-dialog-overlay,.fc-dialog-content"],detectCmp:[{exists:".fc-consent-root"}],detectPopup:[{exists:".fc-dialog-container"}],optOut:[{click:".fc-cta-do-not-consent,.fc-cta-manage-options"},{click:".fc-preference-consent:checked,.fc-preference-legitimate-interest:checked",all:!0,optional:!0},{click:".fc-confirm-choices",optional:!0}],optIn:[{click:".fc-cta-consent"}]},{name:"geeks-for-geeks",runContext:{urlPattern:"^https://www\\.geeksforgeeks\\.org/"},cosmetic:!0,prehideSelectors:[".cookie-consent"],detectCmp:[{exists:".cookie-consent"}],detectPopup:[{visible:".cookie-consent"}],optIn:[{click:".cookie-consent button.consent-btn"}],optOut:[{hide:".cookie-consent"}]},{name:"generic-cosmetic",cosmetic:!0,prehideSelectors:["#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner"],detectCmp:[{exists:"#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner"}],detectPopup:[{visible:"#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner"}],optIn:[],optOut:[{hide:"#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner"}]},{name:"google-consent-standalone",prehideSelectors:[],detectCmp:[{exists:'a[href^="https://policies.google.com/technologies/cookies"'},{exists:'form[action^="https://consent.google."][action$=".com/save"]'}],detectPopup:[{visible:'a[href^="https://policies.google.com/technologies/cookies"'}],optIn:[{waitForThenClick:'form[action^="https://consent.google."][action$=".com/save"]:has(input[name=set_eom][value=false]) button'}],optOut:[{waitForThenClick:'form[action^="https://consent.google."][action$=".com/save"]:has(input[name=set_eom][value=true]) button'}]},{name:"google.com",prehideSelectors:[".HTjtHe#xe7COe"],detectCmp:[{exists:".HTjtHe#xe7COe"},{exists:'.HTjtHe#xe7COe a[href^="https://policies.google.com/technologies/cookies"]'}],detectPopup:[{visible:".HTjtHe#xe7COe button#W0wltc"}],optIn:[{waitForThenClick:".HTjtHe#xe7COe button#L2AGLb"}],optOut:[{waitForThenClick:".HTjtHe#xe7COe button#W0wltc"}],test:[{eval:"EVAL_GOOGLE_0"}]},{name:"gov.uk",detectCmp:[{exists:"#global-cookie-message"}],detectPopup:[{exists:"#global-cookie-message"}],optIn:[{click:"button[data-accept-cookies=true]"}],optOut:[{click:"button[data-reject-cookies=true],#reject-cookies"},{click:"button[data-hide-cookie-banner=true],#hide-cookie-decision"}]},{name:"hashicorp",vendorUrl:"https://hashicorp.com/",runContext:{urlPattern:"^https://[^.]*\\.hashicorp\\.com/"},prehideSelectors:["[data-testid=consent-banner]"],detectCmp:[{exists:"[data-testid=consent-banner]"}],detectPopup:[{visible:"[data-testid=consent-banner]"}],optIn:[{waitForThenClick:"[data-testid=accept]"}],optOut:[{waitForThenClick:"[data-testid=manage-preferences]"},{waitForThenClick:"[data-testid=consent-mgr-dialog] [data-ga-button=save-preferences]"}]},{name:"healthline-media",prehideSelectors:["#modal-host > div.no-hash > div.window-wrapper"],detectCmp:[{exists:"#modal-host > div.no-hash > div.window-wrapper, div[data-testid=qualtrics-container]"}],detectPopup:[{exists:"#modal-host > div.no-hash > div.window-wrapper, div[data-testid=qualtrics-container]"}],optIn:[{click:"#modal-host > div.no-hash > div.window-wrapper > div:last-child button"}],optOut:[{if:{exists:'#modal-host > div.no-hash > div.window-wrapper > div:last-child a[href="/privacy-settings"]'},then:[{click:'#modal-host > div.no-hash > div.window-wrapper > div:last-child a[href="/privacy-settings"]'}],else:[{waitForVisible:"div#__next"},{click:"#__next div:nth-child(1) > button:first-child"}]}]},{name:"hema",prehideSelectors:[".cookie-modal"],detectCmp:[{visible:".cookie-modal .cookie-accept-btn"}],detectPopup:[{visible:".cookie-modal .cookie-accept-btn"}],optIn:[{waitForThenClick:".cookie-modal .cookie-accept-btn"}],optOut:[{waitForThenClick:".cookie-modal .js-cookie-reject-btn"}],test:[{eval:"EVAL_HEMA_TEST_0"}]},{name:"hetzner.com",runContext:{urlPattern:"^https://www\\.hetzner\\.com/"},prehideSelectors:["#CookieConsent"],detectCmp:[{exists:"#CookieConsent"}],detectPopup:[{visible:"#CookieConsent"}],optIn:[{click:"#CookieConsentGiven"}],optOut:[{click:"#CookieConsentDeclined"}]},{name:"hl.co.uk",prehideSelectors:[".cookieModalContent","#cookie-banner-overlay"],detectCmp:[{exists:"#cookie-banner-overlay"}],detectPopup:[{exists:"#cookie-banner-overlay"}],optIn:[{click:"#acceptCookieButton"}],optOut:[{click:"#manageCookie"},{hide:".cookieSettingsModal"},{waitFor:"#AOCookieToggle"},{click:"#AOCookieToggle[aria-pressed=true]",optional:!0},{waitFor:"#TPCookieToggle"},{click:"#TPCookieToggle[aria-pressed=true]",optional:!0},{click:"#updateCookieButton"}]},{name:"holidaymedia",vendorUrl:"https://holidaymedia.nl/",prehideSelectors:["dialog[data-cookie-consent]"],detectCmp:[{exists:"dialog[data-cookie-consent]"}],detectPopup:[{visible:"dialog[data-cookie-consent]"}],optIn:[{waitForThenClick:"button.cookie-consent__button--accept-all"}],optOut:[{waitForThenClick:'a[data-cookie-accept="functional"]',timeout:2e3}]},{name:"hu-manity",vendorUrl:"https://hu-manity.co/",prehideSelectors:["#hu.hu-wrapper"],detectCmp:[{exists:"#hu.hu-visible"}],detectPopup:[{visible:"#hu.hu-visible"}],optIn:[{waitForThenClick:"[data-hu-action=cookies-notice-consent-choices-3]"},{waitForThenClick:"#hu-cookies-save"}],optOut:[{waitForThenClick:"#hu-cookies-save"}]},{name:"hubspot",detectCmp:[{exists:"#hs-eu-cookie-confirmation"}],detectPopup:[{visible:"#hs-eu-cookie-confirmation"}],optIn:[{click:"#hs-eu-confirmation-button"}],optOut:[{click:"#hs-eu-decline-button"}]},{name:"indeed.com",cosmetic:!0,prehideSelectors:["#CookiePrivacyNotice"],detectCmp:[{exists:"#CookiePrivacyNotice"}],detectPopup:[{visible:"#CookiePrivacyNotice"}],optIn:[{click:"#CookiePrivacyNotice button[data-gnav-element-name=CookiePrivacyNoticeOk]"}],optOut:[{hide:"#CookiePrivacyNotice"}]},{name:"ing.de",runContext:{urlPattern:"^https://www\\.ing\\.de/"},cosmetic:!0,prehideSelectors:['div[slot="backdrop"]'],detectCmp:[{exists:'[data-tag-name="ing-cc-dialog-frame"]'}],detectPopup:[{visible:'[data-tag-name="ing-cc-dialog-frame"]'}],optIn:[{click:['[data-tag-name="ing-cc-dialog-level0"]','[data-tag-name="ing-cc-button"][class*="accept"]']}],optOut:[{click:['[data-tag-name="ing-cc-dialog-level0"]','[data-tag-name="ing-cc-button"][class*="more"]']}]},{name:"instagram",vendorUrl:"https://instagram.com",runContext:{urlPattern:"^https://www\\.instagram\\.com/"},prehideSelectors:[".x78zum5.xdt5ytf.xg6iff7.x1n2onr6:has(._a9--)"],detectCmp:[{exists:".x1qjc9v5.x9f619.x78zum5.xdt5ytf.x1iyjqo2.xl56j7k"}],detectPopup:[{visible:".x1qjc9v5.x9f619.x78zum5.xdt5ytf.x1iyjqo2.xl56j7k"}],optIn:[{waitForThenClick:"._a9--._a9_0"}],optOut:[{waitForThenClick:"._a9--._a9_1"},{wait:2e3}]},{name:"ionos.de",prehideSelectors:[".privacy-consent--backdrop",".privacy-consent--modal"],detectCmp:[{exists:".privacy-consent--modal"}],detectPopup:[{visible:".privacy-consent--modal"}],optIn:[{click:"#selectAll"}],optOut:[{click:".footer-config-link"},{click:"#confirmSelection"}]},{name:"itopvpn.com",cosmetic:!0,prehideSelectors:[".pop-cookie"],detectCmp:[{exists:".pop-cookie"}],detectPopup:[{exists:".pop-cookie"}],optIn:[{click:"#_pcookie"}],optOut:[{hide:".pop-cookie"}]},{name:"iubenda",prehideSelectors:["#iubenda-cs-banner"],detectCmp:[{exists:"#iubenda-cs-banner"}],detectPopup:[{visible:".iubenda-cs-accept-btn"}],optIn:[{waitForThenClick:".iubenda-cs-accept-btn"}],optOut:[{waitForThenClick:".iubenda-cs-customize-btn"},{eval:"EVAL_IUBENDA_0"},{waitForThenClick:"#iubFooterBtn"}],test:[{eval:"EVAL_IUBENDA_1"}]},{name:"iWink",prehideSelectors:["body.cookies-request #cookie-bar"],detectCmp:[{exists:"body.cookies-request #cookie-bar"}],detectPopup:[{visible:"body.cookies-request #cookie-bar"}],optIn:[{waitForThenClick:"body.cookies-request #cookie-bar .allow-cookies"}],optOut:[{waitForThenClick:"body.cookies-request #cookie-bar .disallow-cookies"}],test:[{eval:"EVAL_IWINK_TEST"}]},{name:"jdsports",vendorUrl:"https://www.jdsports.co.uk/",runContext:{urlPattern:"^https://(www|m)\\.jdsports\\."},prehideSelectors:[".miniConsent,#PrivacyPolicyBanner"],detectCmp:[{exists:".miniConsent,#PrivacyPolicyBanner"}],detectPopup:[{visible:".miniConsent,#PrivacyPolicyBanner"}],optIn:[{waitForThenClick:".miniConsent .accept-all-cookies"}],optOut:[{if:{exists:"#PrivacyPolicyBanner"},then:[{hide:"#PrivacyPolicyBanner"}],else:[{waitForThenClick:"#cookie-settings"},{waitForThenClick:"#reject-all-cookies"}]}]},{name:"johnlewis.com",prehideSelectors:["div[class^=pecr-cookie-banner-]"],detectCmp:[{exists:"div[class^=pecr-cookie-banner-]"}],detectPopup:[{exists:"div[class^=pecr-cookie-banner-]"}],optOut:[{click:"button[data-test^=manage-cookies]"},{wait:"500"},{click:"label[data-test^=toggle][class*=checked]:not([class*=disabled])",all:!0,optional:!0},{click:"button[data-test=save-preferences]"}],optIn:[{click:"button[data-test=allow-all]"}]},{name:"jquery.cookieBar",vendorUrl:"https://github.com/kovarp/jquery.cookieBar",prehideSelectors:[".cookie-bar"],cosmetic:!0,detectCmp:[{exists:".cookie-bar .cookie-bar__message,.cookie-bar .cookie-bar__buttons"}],detectPopup:[{visible:".cookie-bar .cookie-bar__message,.cookie-bar .cookie-bar__buttons",check:"any"}],optIn:[{click:".cookie-bar .cookie-bar__btn"}],optOut:[{hide:".cookie-bar"}],test:[{visible:".cookie-bar .cookie-bar__message,.cookie-bar .cookie-bar__buttons",check:"none"},{eval:"EVAL_JQUERY_COOKIEBAR_0"}]},{name:"justwatch.com",prehideSelectors:[".consent-banner"],detectCmp:[{exists:".consent-banner .consent-banner__actions"}],detectPopup:[{visible:".consent-banner .consent-banner__actions"}],optIn:[{click:".consent-banner__actions button.basic-button.primary"}],optOut:[{click:".consent-banner__actions button.basic-button.secondary"},{waitForThenClick:".consent-modal__footer button.basic-button.secondary"},{waitForThenClick:".consent-modal ion-content > div > a:nth-child(9)"},{click:"label.consent-switch input[type=checkbox]:checked",all:!0,optional:!0},{waitForVisible:".consent-modal__footer button.basic-button.primary"},{click:".consent-modal__footer button.basic-button.primary"}]},{name:"ketch",vendorUrl:"https://www.ketch.com",runContext:{frame:!1,main:!0},intermediate:!1,prehideSelectors:["#lanyard_root div[role='dialog']"],detectCmp:[{exists:"#lanyard_root div[role='dialog']"}],detectPopup:[{visible:"#lanyard_root div[role='dialog']"}],optIn:[{if:{exists:"#lanyard_root button[class='confirmButton']"},then:[{waitForThenClick:"#lanyard_root div[class*=buttons] > :nth-child(2)"},{click:"#lanyard_root button[class='confirmButton']"}],else:[{waitForThenClick:"#lanyard_root div[class*=buttons] > :nth-child(2)"}]}],optOut:[{if:{exists:"#lanyard_root [aria-describedby=banner-description]"},then:[{waitForThenClick:"#lanyard_root div[class*=buttons] > button[class*=secondaryButton], #lanyard_root button[class*=buttons-secondary]",comment:"can be either settings or reject button"}]},{waitFor:"#lanyard_root [aria-describedby=preference-description],#lanyard_root [aria-describedby=modal-description], #ketch-preferences",timeout:1e3,optional:!0},{if:{exists:"#lanyard_root [aria-describedby=preference-description],#lanyard_root [aria-describedby=modal-description], #ketch-preferences"},then:[{waitForThenClick:"#lanyard_root button[class*=rejectButton], #lanyard_root button[class*=rejectAllButton]"},{click:"#lanyard_root button[class*=confirmButton],#lanyard_root div[class*=actions_] > button:nth-child(1), #lanyard_root button[class*=actionButton]"}]}],test:[{eval:"EVAL_KETCH_TEST"}]},{name:"kleinanzeigen-de",runContext:{urlPattern:"^https?://(www\\.)?kleinanzeigen\\.de"},prehideSelectors:["#gdpr-banner-container"],detectCmp:[{any:[{exists:"#gdpr-banner-container #gdpr-banner [data-testid=gdpr-banner-cmp-button]"},{exists:"#ConsentManagementPage"}]}],detectPopup:[{any:[{visible:"#gdpr-banner-container #gdpr-banner [data-testid=gdpr-banner-cmp-button]"},{visible:"#ConsentManagementPage"}]}],optIn:[{if:{exists:"#gdpr-banner-container #gdpr-banner"},then:[{click:"#gdpr-banner-container #gdpr-banner [data-testid=gdpr-banner-accept]"}],else:[{click:"#ConsentManagementPage .Button-primary"}]}],optOut:[{if:{exists:"#gdpr-banner-container #gdpr-banner"},then:[{click:"#gdpr-banner-container #gdpr-banner [data-testid=gdpr-banner-cmp-button]"}],else:[{click:"#ConsentManagementPage .Button-secondary"}]}]},{name:"lightbox",prehideSelectors:[".darken-layer.open,.lightbox.lightbox--cookie-consent"],detectCmp:[{exists:"body.cookie-consent-is-active div.lightbox--cookie-consent > div.lightbox__content > div.cookie-consent[data-jsb]"}],detectPopup:[{visible:"body.cookie-consent-is-active div.lightbox--cookie-consent > div.lightbox__content > div.cookie-consent[data-jsb]"}],optOut:[{click:".cookie-consent__footer > button[type='submit']:not([data-button='selectAll'])"}],optIn:[{click:".cookie-consent__footer > button[type='submit'][data-button='selectAll']"}]},{name:"lineagrafica",vendorUrl:"https://addons.prestashop.com/en/legal/8734-eu-cookie-law-gdpr-banner-blocker.html",cosmetic:!0,prehideSelectors:["#lgcookieslaw_banner,#lgcookieslaw_modal,.lgcookieslaw-overlay"],detectCmp:[{exists:"#lgcookieslaw_banner,#lgcookieslaw_modal,.lgcookieslaw-overlay"}],detectPopup:[{exists:"#lgcookieslaw_banner,#lgcookieslaw_modal,.lgcookieslaw-overlay"}],optIn:[{waitForThenClick:"#lgcookieslaw_accept"}],optOut:[{hide:"#lgcookieslaw_banner,#lgcookieslaw_modal,.lgcookieslaw-overlay"}]},{name:"linkedin.com",prehideSelectors:[".artdeco-global-alert[type=COOKIE_CONSENT]"],detectCmp:[{exists:".artdeco-global-alert[type=COOKIE_CONSENT]"}],detectPopup:[{visible:".artdeco-global-alert[type=COOKIE_CONSENT]"}],optIn:[{waitForVisible:".artdeco-global-alert[type=COOKIE_CONSENT] button[action-type=ACCEPT]"},{wait:500},{waitForThenClick:".artdeco-global-alert[type=COOKIE_CONSENT] button[action-type=ACCEPT]"}],optOut:[{waitForVisible:".artdeco-global-alert[type=COOKIE_CONSENT] button[action-type=DENY]"},{wait:500},{waitForThenClick:".artdeco-global-alert[type=COOKIE_CONSENT] button[action-type=DENY]"}],test:[{waitForVisible:".artdeco-global-alert[type=COOKIE_CONSENT]",check:"none"}]},{name:"livejasmin",vendorUrl:"https://www.livejasmin.com/",runContext:{urlPattern:"^https://(m|www)\\.livejasmin\\.com/"},prehideSelectors:["#consent_modal"],detectCmp:[{exists:"#consent_modal"}],detectPopup:[{visible:"#consent_modal"}],optIn:[{waitForThenClick:"#consent_modal button[data-testid=ButtonStyledButton]:first-of-type"}],optOut:[{waitForThenClick:"#consent_modal button[data-testid=ButtonStyledButton]:nth-of-type(2)"},{waitForVisible:"[data-testid=PrivacyPreferenceCenterWithConsentCookieContent]"},{click:"[data-testid=PrivacyPreferenceCenterWithConsentCookieContent] input[data-testid=PrivacyPreferenceCenterWithConsentCookieSwitch]:checked",optional:!0,all:!0},{waitForThenClick:"[data-testid=PrivacyPreferenceCenterWithConsentCookieContent] button[data-testid=ButtonStyledButton]:last-child"}]},{name:"macpaw.com",cosmetic:!0,prehideSelectors:['div[data-banner="cookies"]'],detectCmp:[{exists:'div[data-banner="cookies"]'}],detectPopup:[{exists:'div[data-banner="cookies"]'}],optIn:[{click:'button[data-banner-close="cookies"]'}],optOut:[{hide:'div[data-banner="cookies"]'}]},{name:"marksandspencer.com",cosmetic:!0,detectCmp:[{exists:".navigation-cookiebbanner"}],detectPopup:[{visible:".navigation-cookiebbanner"}],optOut:[{hide:".navigation-cookiebbanner"}],optIn:[{click:".navigation-cookiebbanner__submit"}]},{name:"mediamarkt.de",prehideSelectors:["div[aria-labelledby=pwa-consent-layer-title]","div[class^=StyledConsentLayerWrapper-]"],detectCmp:[{exists:"div[aria-labelledby^=pwa-consent-layer-title]"}],detectPopup:[{exists:"div[aria-labelledby^=pwa-consent-layer-title]"}],optOut:[{click:"button[data-test^=pwa-consent-layer-deny-all]"}],optIn:[{click:"button[data-test^=pwa-consent-layer-accept-all"}]},{name:"Mediavine",prehideSelectors:['[data-name="mediavine-gdpr-cmp"]'],detectCmp:[{exists:'[data-name="mediavine-gdpr-cmp"]'}],detectPopup:[{wait:500},{visible:'[data-name="mediavine-gdpr-cmp"]'}],optIn:[{waitForThenClick:'[data-name="mediavine-gdpr-cmp"] [format="primary"]'}],optOut:[{waitForThenClick:'[data-name="mediavine-gdpr-cmp"] [data-view="manageSettings"]'},{waitFor:'[data-name="mediavine-gdpr-cmp"] input[type=checkbox]'},{eval:"EVAL_MEDIAVINE_0",optional:!0},{click:'[data-name="mediavine-gdpr-cmp"] [format="secondary"]'}]},{name:"microsoft.com",prehideSelectors:["#wcpConsentBannerCtrl"],detectCmp:[{exists:"#wcpConsentBannerCtrl"}],detectPopup:[{exists:"#wcpConsentBannerCtrl"}],optOut:[{eval:"EVAL_MICROSOFT_0"}],optIn:[{eval:"EVAL_MICROSOFT_1"}],test:[{eval:"EVAL_MICROSOFT_2"}]},{name:"midway-usa",runContext:{urlPattern:"^https://www\\.midwayusa\\.com/"},cosmetic:!0,prehideSelectors:["#cookie-container"],detectCmp:[{exists:['div[aria-label="Cookie Policy Banner"]']}],detectPopup:[{visible:"#cookie-container"}],optIn:[{click:"button#cookie-btn"}],optOut:[{hide:'div[aria-label="Cookie Policy Banner"]'}]},{name:"moneysavingexpert.com",detectCmp:[{exists:"dialog[data-testid=accept-our-cookies-dialog]"}],detectPopup:[{visible:"dialog[data-testid=accept-our-cookies-dialog]"}],optIn:[{click:"#banner-accept"}],optOut:[{click:"#banner-manage"},{click:"#pc-confirm"}]},{name:"monzo.com",prehideSelectors:[".cookie-alert, cookie-alert__content"],detectCmp:[{exists:'div.cookie-alert[role="dialog"]'},{exists:'a[href*="monzo"]'}],detectPopup:[{visible:".cookie-alert__content"}],optIn:[{click:".js-accept-cookie-policy"}],optOut:[{click:".js-decline-cookie-policy"}]},{name:"Moove",prehideSelectors:["#moove_gdpr_cookie_info_bar"],detectCmp:[{exists:"#moove_gdpr_cookie_info_bar"}],detectPopup:[{visible:"#moove_gdpr_cookie_info_bar:not(.moove-gdpr-info-bar-hidden)"}],optIn:[{waitForThenClick:".moove-gdpr-infobar-allow-all"}],optOut:[{if:{exists:"#moove_gdpr_cookie_info_bar .change-settings-button"},then:[{click:"#moove_gdpr_cookie_info_bar .change-settings-button"},{waitForVisible:"#moove_gdpr_cookie_modal"},{eval:"EVAL_MOOVE_0"},{click:".moove-gdpr-modal-save-settings"}],else:[{hide:"#moove_gdpr_cookie_info_bar"}]}],test:[{visible:"#moove_gdpr_cookie_info_bar",check:"none"}]},{name:"national-lottery.co.uk",detectCmp:[{exists:".cuk_cookie_consent"}],detectPopup:[{visible:".cuk_cookie_consent",check:"any"}],optOut:[{click:".cuk_cookie_consent_manage_pref"},{click:".cuk_cookie_consent_save_pref"},{click:".cuk_cookie_consent_close"}],optIn:[{click:".cuk_cookie_consent_accept_all"}]},{name:"nba.com",runContext:{urlPattern:"^https://(www\\.)?nba.com/"},cosmetic:!0,prehideSelectors:["#onetrust-banner-sdk"],detectCmp:[{exists:"#onetrust-banner-sdk"}],detectPopup:[{visible:"#onetrust-banner-sdk"}],optIn:[{click:"#onetrust-accept-btn-handler"}],optOut:[{hide:"#onetrust-banner-sdk"}]},{name:"netbeat.de",runContext:{urlPattern:"^https://(www\\.)?netbeat\\.de/"},prehideSelectors:["div#cookieWarning"],detectCmp:[{exists:"div#cookieWarning"}],detectPopup:[{visible:"div#cookieWarning"}],optIn:[{waitForThenClick:"a#btnCookiesAcceptAll"}],optOut:[{waitForThenClick:"a#btnCookiesDenyAll"}]},{name:"netflix.de",detectCmp:[{exists:"#cookie-disclosure"}],detectPopup:[{visible:".cookie-disclosure-message",check:"any"}],optIn:[{click:".btn-accept"}],optOut:[{hide:"#cookie-disclosure"},{click:".btn-reject"}]},{name:"nhs.uk",prehideSelectors:["#nhsuk-cookie-banner"],detectCmp:[{exists:"#nhsuk-cookie-banner"}],detectPopup:[{exists:"#nhsuk-cookie-banner"}],optOut:[{click:"#nhsuk-cookie-banner__link_accept"}],optIn:[{click:"#nhsuk-cookie-banner__link_accept_analytics"}]},{name:"notice-cookie",prehideSelectors:[".button--notice"],cosmetic:!0,detectCmp:[{exists:".notice--cookie"}],detectPopup:[{visible:".notice--cookie"}],optIn:[{click:".button--notice"}],optOut:[{hide:".notice--cookie"}]},{name:"nrk.no",cosmetic:!0,prehideSelectors:[".nrk-masthead__info-banner--cookie"],detectCmp:[{exists:".nrk-masthead__info-banner--cookie"}],detectPopup:[{exists:".nrk-masthead__info-banner--cookie"}],optIn:[{click:"div.nrk-masthead__info-banner--cookie button > span:has(+ svg.nrk-close)"}],optOut:[{hide:".nrk-masthead__info-banner--cookie"}]},{name:"obi.de",prehideSelectors:[".disc-cp--active"],detectCmp:[{exists:".disc-cp-modal__modal"}],detectPopup:[{visible:".disc-cp-modal__modal"}],optIn:[{click:".js-disc-cp-accept-all"}],optOut:[{click:".js-disc-cp-deny-all"}]},{name:"om",vendorUrl:"https://olli-machts.de/en/extension/cookie-manager",prehideSelectors:[".tx-om-cookie-consent"],detectCmp:[{exists:".tx-om-cookie-consent .active[data-omcookie-panel]"}],detectPopup:[{exists:".tx-om-cookie-consent .active[data-omcookie-panel]"}],optIn:[{waitForThenClick:"[data-omcookie-panel-save=all]"}],optOut:[{if:{exists:"[data-omcookie-panel-save=min]"},then:[{waitForThenClick:"[data-omcookie-panel-save=min]"}],else:[{click:"input[data-omcookie-panel-grp]:checked:not(:disabled)",all:!0,optional:!0},{waitForThenClick:"[data-omcookie-panel-save=save]"}]}]},{name:"onlyFans.com",runContext:{urlPattern:"^https://onlyfans\\.com/"},prehideSelectors:["div.b-cookies-informer"],detectCmp:[{exists:"div.b-cookies-informer"}],detectPopup:[{exists:"div.b-cookies-informer"}],optIn:[{click:"div.b-cookies-informer__nav > button:nth-child(2)"}],optOut:[{click:"div.b-cookies-informer__nav > button:nth-child(1)"},{if:{exists:"div.b-cookies-informer__switchers"},then:[{click:"div.b-cookies-informer__switchers input:not([disabled])",all:!0},{click:"div.b-cookies-informer__nav > button"}]}]},{name:"openli",vendorUrl:"https://openli.com",prehideSelectors:[".legalmonster-cleanslate"],detectCmp:[{exists:".legalmonster-cleanslate"}],detectPopup:[{visible:".legalmonster-cleanslate #lm-cookie-wall-container",check:"any"}],optIn:[{waitForThenClick:"#lm-accept-all"}],optOut:[{waitForThenClick:"#lm-accept-necessary"}]},{name:"opera.com",vendorUrl:"https://unknown",cosmetic:!1,runContext:{main:!0,frame:!1},intermediate:!1,prehideSelectors:[],detectCmp:[{exists:"#cookie-consent .manage-cookies__btn"}],detectPopup:[{visible:"#cookie-consent .cookie-basic-consent__btn"}],optIn:[{waitForThenClick:"#cookie-consent .cookie-basic-consent__btn"}],optOut:[{waitForThenClick:"#cookie-consent .manage-cookies__btn"},{waitForThenClick:"#cookie-consent .active.marketing_option_switch.cookie-consent__switch",all:!0},{waitForThenClick:"#cookie-consent .cookie-selection__btn"}],test:[{eval:"EVAL_OPERA_0"}]},{name:"osano",prehideSelectors:[".osano-cm-window,.osano-cm-dialog"],detectCmp:[{exists:".osano-cm-window"}],detectPopup:[{visible:".osano-cm-dialog"}],optIn:[{click:".osano-cm-accept-all",optional:!0}],optOut:[{waitForThenClick:".osano-cm-denyAll"}]},{name:"otto.de",prehideSelectors:[".cookieBanner--visibility"],detectCmp:[{exists:".cookieBanner--visibility"}],detectPopup:[{visible:".cookieBanner__wrapper"}],optIn:[{click:".js_cookieBannerPermissionButton"}],optOut:[{click:".js_cookieBannerProhibitionButton"}]},{name:"ourworldindata",vendorUrl:"https://ourworldindata.org/",runContext:{urlPattern:"^https://ourworldindata\\.org/"},prehideSelectors:[".cookie-manager"],detectCmp:[{exists:".cookie-manager"}],detectPopup:[{visible:".cookie-manager .cookie-notice.open"}],optIn:[{waitForThenClick:".cookie-notice [data-test=accept]"}],optOut:[{waitForThenClick:".cookie-notice [data-test=reject]"}]},{name:"pabcogypsum",vendorUrl:"https://unknown",prehideSelectors:[".js-cookie-notice:has(#cookie_settings-form)"],detectCmp:[{exists:".js-cookie-notice #cookie_settings-form"}],detectPopup:[{visible:".js-cookie-notice #cookie_settings-form"}],optIn:[{waitForThenClick:".js-cookie-notice button[value=allow]"}],optOut:[{waitForThenClick:".js-cookie-notice button[value=disable]"}]},{name:"paypal-us",prehideSelectors:["#ccpaCookieContent_wrapper, article.ppvx_modal--overpanel"],detectCmp:[{exists:"#ccpaCookieBanner, .privacy-sheet-content"}],detectPopup:[{exists:"#ccpaCookieBanner, .privacy-sheet-content"}],optIn:[{click:"#acceptAllButton"}],optOut:[{if:{exists:"a#manageCookiesLink"},then:[{click:"a#manageCookiesLink"}],else:[{waitForVisible:".privacy-sheet-content #formContent"},{click:"#formContent .cookiepref-11m2iee-checkbox_base input:checked",all:!0,optional:!0},{click:".confirmCookie #submitCookiesBtn"}]}]},{name:"paypal.com",prehideSelectors:["#gdprCookieBanner"],detectCmp:[{exists:"#gdprCookieBanner"}],detectPopup:[{visible:"#gdprCookieContent_wrapper"}],optIn:[{click:"#acceptAllButton"}],optOut:[{wait:200},{click:".gdprCookieBanner_decline-button"}],test:[{wait:500},{eval:"EVAL_PAYPAL_0"}]},{name:"pinetools.com",cosmetic:!0,prehideSelectors:["#aviso_cookies"],detectCmp:[{exists:"#aviso_cookies"}],detectPopup:[{exists:".lang_en #aviso_cookies"}],optIn:[{click:"#aviso_cookies .a_boton_cerrar"}],optOut:[{hide:"#aviso_cookies"}]},{name:"pmc",cosmetic:!0,prehideSelectors:["#pmc-pp-tou--notice"],detectCmp:[{exists:"#pmc-pp-tou--notice"}],detectPopup:[{visible:"#pmc-pp-tou--notice"}],optIn:[{click:"span.pmc-pp-tou--notice-close-btn"}],optOut:[{hide:"#pmc-pp-tou--notice"}]},{name:"pornhub.com",runContext:{urlPattern:"^https://(www\\.)?pornhub\\.com/"},cosmetic:!0,prehideSelectors:[".cookiesBanner"],detectCmp:[{exists:".cookiesBanner"}],detectPopup:[{visible:".cookiesBanner"}],optIn:[{click:".cookiesBanner .okButton"}],optOut:[{hide:".cookiesBanner"}]},{name:"pornpics.com",cosmetic:!0,prehideSelectors:["#cookie-contract"],detectCmp:[{exists:"#cookie-contract"}],detectPopup:[{visible:"#cookie-contract"}],optIn:[{click:"#cookie-contract .icon-cross"}],optOut:[{hide:"#cookie-contract"}]},{name:"PrimeBox CookieBar",prehideSelectors:["#cookie-bar"],detectCmp:[{exists:"#cookie-bar .cb-enable,#cookie-bar .cb-disable,#cookie-bar .cb-policy"}],detectPopup:[{visible:"#cookie-bar .cb-enable,#cookie-bar .cb-disable,#cookie-bar .cb-policy",check:"any"}],optIn:[{waitForThenClick:"#cookie-bar .cb-enable"}],optOut:[{click:"#cookie-bar .cb-disable",optional:!0},{hide:"#cookie-bar"}],test:[{eval:"EVAL_PRIMEBOX_0"}]},{name:"privacymanager.io",prehideSelectors:["#gdpr-consent-tool-wrapper",'iframe[src^="https://cmp-consent-tool.privacymanager.io"]'],runContext:{urlPattern:"^https://cmp-consent-tool\\.privacymanager\\.io/",main:!1,frame:!0},detectCmp:[{exists:"button#save"}],detectPopup:[{visible:"button#save"}],optIn:[{click:"button#save"}],optOut:[{if:{exists:"#denyAll"},then:[{click:"#denyAll"},{waitForThenClick:".okButton"}],else:[{waitForThenClick:"#manageSettings"},{waitFor:".purposes-overview-list"},{waitFor:"button#saveAndExit"},{click:"span[role=checkbox][aria-checked=true]",all:!0,optional:!0},{click:"button#saveAndExit"}]}]},{name:"productz.com",vendorUrl:"https://productz.com/",runContext:{urlPattern:"^https://productz\\.com/"},prehideSelectors:[],detectCmp:[{exists:".c-modal.is-active"}],detectPopup:[{visible:".c-modal.is-active"}],optIn:[{waitForThenClick:".c-modal.is-active .is-accept"}],optOut:[{waitForThenClick:".c-modal.is-active .is-dismiss"}]},{name:"pubtech",prehideSelectors:["#pubtech-cmp"],detectCmp:[{exists:"#pubtech-cmp"}],detectPopup:[{visible:"#pubtech-cmp #pt-actions"}],optIn:[{if:{exists:"#pt-accept-all"},then:[{click:"#pubtech-cmp #pt-actions #pt-accept-all"}],else:[{click:"#pubtech-cmp #pt-actions button:nth-of-type(2)"}]}],optOut:[{click:"#pubtech-cmp #pt-close"}],test:[{eval:"EVAL_PUBTECH_0"}]},{name:"quantcast",prehideSelectors:["#qc-cmp2-main,#qc-cmp2-container"],detectCmp:[{exists:"#qc-cmp2-container"}],detectPopup:[{visible:"#qc-cmp2-ui"}],optOut:[{click:'.qc-cmp2-summary-buttons > button[mode="secondary"]'},{waitFor:"#qc-cmp2-ui"},{click:'.qc-cmp2-toggle-switch > button[aria-checked="true"]',all:!0,optional:!0},{click:'.qc-cmp2-main button[aria-label="REJECT ALL"]',optional:!0},{waitForThenClick:'.qc-cmp2-main button[aria-label="SAVE & EXIT"],.qc-cmp2-buttons-desktop > button[mode="primary"]',timeout:5e3}],optIn:[{click:'.qc-cmp2-summary-buttons > button[mode="primary"]'}]},{name:"reddit.com",runContext:{urlPattern:"^https://www\\.reddit\\.com/"},prehideSelectors:["[bundlename=reddit_cookie_banner]"],detectCmp:[{exists:"reddit-cookie-banner"}],detectPopup:[{visible:"reddit-cookie-banner"}],optIn:[{waitForThenClick:["reddit-cookie-banner","#accept-all-cookies-button > button"]}],optOut:[{waitForThenClick:["reddit-cookie-banner","#reject-nonessential-cookies-button > button"]}],test:[{eval:"EVAL_REDDIT_0"}]},{name:"roblox",vendorUrl:"https://roblox.com",cosmetic:!1,runContext:{main:!0,frame:!1,urlPattern:"^https://(www\\.)?roblox\\.com/"},prehideSelectors:[],detectCmp:[{exists:".cookie-banner-wrapper"}],detectPopup:[{visible:".cookie-banner-wrapper .cookie-banner"}],optIn:[{waitForThenClick:".cookie-banner-wrapper button.btn-cta-lg"}],optOut:[{waitForThenClick:".cookie-banner-wrapper button.btn-secondary-lg"}],test:[{eval:"EVAL_ROBLOX_TEST"}]},{name:"rog-forum.asus.com",runContext:{urlPattern:"^https://rog-forum\\.asus\\.com/"},prehideSelectors:["#cookie-policy-info"],detectCmp:[{exists:"#cookie-policy-info"}],detectPopup:[{visible:"#cookie-policy-info"}],optIn:[{click:'div.cookie-btn-box > div[aria-label="Accept"]'}],optOut:[{click:'div.cookie-btn-box > div[aria-label="Reject"]'},{waitForThenClick:'.cookie-policy-lightbox-bottom > div[aria-label="Save Settings"]'}]},{name:"roofingmegastore.co.uk",runContext:{urlPattern:"^https://(www\\.)?roofingmegastore\\.co\\.uk"},prehideSelectors:["#m-cookienotice"],detectCmp:[{exists:"#m-cookienotice"}],detectPopup:[{visible:"#m-cookienotice"}],optIn:[{click:"#accept-cookies"}],optOut:[{click:"#manage-cookies"},{waitForThenClick:"#accept-selected"}]},{name:"samsung.com",runContext:{urlPattern:"^https://www\\.samsung\\.com/"},cosmetic:!0,prehideSelectors:["div.cookie-bar"],detectCmp:[{exists:"div.cookie-bar"}],detectPopup:[{visible:"div.cookie-bar"}],optIn:[{click:"div.cookie-bar__manage > a"}],optOut:[{hide:"div.cookie-bar"}]},{name:"setapp.com",vendorUrl:"https://setapp.com/",cosmetic:!0,runContext:{urlPattern:"^https://setapp\\.com/"},prehideSelectors:[],detectCmp:[{exists:".cookie-banner.js-cookie-banner"}],detectPopup:[{visible:".cookie-banner.js-cookie-banner"}],optIn:[{waitForThenClick:".cookie-banner.js-cookie-banner button"}],optOut:[{hide:".cookie-banner.js-cookie-banner"}]},{name:"sibbo",prehideSelectors:["sibbo-cmp-layout"],detectCmp:[{exists:"sibbo-cmp-layout"}],detectPopup:[{visible:"#rejectAllMain"}],optIn:[{click:"#acceptAllMain"}],optOut:[{click:"#rejectAllMain"}]},{name:"similarweb.com",cosmetic:!0,prehideSelectors:[".app-cookies-notification"],detectCmp:[{exists:".app-cookies-notification"}],detectPopup:[{exists:".app-layout .app-cookies-notification"}],optIn:[{click:"button.app-cookies-notification__dismiss"}],optOut:[{hide:".app-layout .app-cookies-notification"}]},{name:"Sirdata",cosmetic:!1,prehideSelectors:["#sd-cmp"],detectCmp:[{exists:"#sd-cmp"}],detectPopup:[{visible:"#sd-cmp"}],optIn:[{waitForThenClick:"#sd-cmp .sd-cmp-3cRQ2"}],optOut:[{waitForThenClick:["#sd-cmp","xpath///span[contains(., 'Do not accept') or contains(., 'Acceptera inte') or contains(., 'No aceptar') or contains(., 'Ikke acceptere') or contains(., 'Nicht akzeptieren') or contains(., 'Не приемам') or contains(., 'Να μην γίνει αποδοχή') or contains(., 'Niet accepteren') or contains(., 'Nepřijímat') or contains(., 'Nie akceptuj') or contains(., 'Nu acceptați') or contains(., 'Não aceitar') or contains(., 'Continuer sans accepter') or contains(., 'Non accettare') or contains(., 'Nem fogad el')]"]}]},{name:"snigel",detectCmp:[{exists:".snigel-cmp-framework"}],detectPopup:[{visible:".snigel-cmp-framework"}],optOut:[{click:"#sn-b-custom"},{click:"#sn-b-save"}],test:[{eval:"EVAL_SNIGEL_0"}],optIn:[{click:".snigel-cmp-framework #accept-choices"}]},{name:"steampowered.com",detectCmp:[{exists:".cookiepreferences_popup"},{visible:".cookiepreferences_popup"}],detectPopup:[{visible:".cookiepreferences_popup"}],optOut:[{click:"#rejectAllButton"}],optIn:[{click:"#acceptAllButton"}],test:[{wait:1e3},{eval:"EVAL_STEAMPOWERED_0"}]},{name:"strato.de",prehideSelectors:[".consent__wrapper"],runContext:{urlPattern:"^https://www\\.strato\\.de/"},detectCmp:[{exists:".consent"}],detectPopup:[{visible:".consent"}],optIn:[{click:"button.consentAgree"}],optOut:[{click:"button.consentSettings"},{waitForThenClick:"button#consentSubmit"}]},{name:"svt.se",vendorUrl:"https://www.svt.se/",runContext:{urlPattern:"^https://www\\.svt\\.se/"},prehideSelectors:["[class*=CookieConsent__root___]"],detectCmp:[{exists:"[class*=CookieConsent__root___]"}],detectPopup:[{visible:"[class*=CookieConsent__modal___]"}],optIn:[{waitForThenClick:"[class*=CookieConsent__modal___] > div > button[class*=primary]"}],optOut:[{waitForThenClick:"[class*=CookieConsent__modal___] > div > button[class*=secondary]:nth-child(2)"}],test:[{eval:"EVAL_SVT_TEST"}]},{name:"takealot.com",cosmetic:!0,prehideSelectors:['div[class^="cookies-banner-module_"]'],detectCmp:[{exists:'div[class^="cookies-banner-module_cookie-banner_"]'}],detectPopup:[{exists:'div[class^="cookies-banner-module_cookie-banner_"]'}],optIn:[{click:'button[class*="cookies-banner-module_dismiss-button_"]'}],optOut:[{hide:'div[class^="cookies-banner-module_"]'},{if:{exists:'div[class^="cookies-banner-module_small-cookie-banner_"]'},then:[{eval:"EVAL_TAKEALOT_0"}],else:[]}]},{name:"tarteaucitron.js",prehideSelectors:["#tarteaucitronRoot"],detectCmp:[{exists:"#tarteaucitronRoot"}],detectPopup:[{visible:"#tarteaucitronRoot #tarteaucitronAlertBig",check:"any"}],optIn:[{eval:"EVAL_TARTEAUCITRON_1"}],optOut:[{eval:"EVAL_TARTEAUCITRON_0"}],test:[{eval:"EVAL_TARTEAUCITRON_2",comment:"sometimes there are required categories, so we check that at least something is false"}]},{name:"taunton",vendorUrl:"https://www.taunton.com/",prehideSelectors:["#taunton-user-consent__overlay"],detectCmp:[{exists:"#taunton-user-consent__overlay"}],detectPopup:[{exists:"#taunton-user-consent__overlay:not([aria-hidden=true])"}],optIn:[{click:"#taunton-user-consent__toolbar input[type=checkbox]:not(:checked)"},{click:"#taunton-user-consent__toolbar button[type=submit]"}],optOut:[{click:"#taunton-user-consent__toolbar input[type=checkbox]:checked",optional:!0,all:!0},{click:"#taunton-user-consent__toolbar button[type=submit]"}],test:[{eval:"EVAL_TAUNTON_TEST"}]},{name:"Tealium",prehideSelectors:["#__tealiumGDPRecModal,#__tealiumGDPRcpPrefs,#__tealiumImplicitmodal,#consent-layer"],detectCmp:[{exists:"#__tealiumGDPRecModal *,#__tealiumGDPRcpPrefs *,#__tealiumImplicitmodal *"},{eval:"EVAL_TEALIUM_0"}],detectPopup:[{visible:"#__tealiumGDPRecModal *,#__tealiumGDPRcpPrefs *,#__tealiumImplicitmodal *",check:"any"}],optOut:[{eval:"EVAL_TEALIUM_1"},{eval:"EVAL_TEALIUM_DONOTSELL"},{hide:"#__tealiumGDPRecModal,#__tealiumGDPRcpPrefs,#__tealiumImplicitmodal"},{waitForThenClick:"#cm-acceptNone,.js-accept-essential-cookies",timeout:1e3,optional:!0}],optIn:[{hide:"#__tealiumGDPRecModal,#__tealiumGDPRcpPrefs"},{eval:"EVAL_TEALIUM_2"}],test:[{eval:"EVAL_TEALIUM_3"},{eval:"EVAL_TEALIUM_DONOTSELL_CHECK"},{visible:"#__tealiumGDPRecModal,#__tealiumGDPRcpPrefs",check:"none"}]},{name:"temu",vendorUrl:"https://temu.com",runContext:{urlPattern:"^https://[^/]*temu\\.com/"},prehideSelectors:["._2d-8vq-W,._1UdBUwni"],detectCmp:[{exists:"._3YCsmIaS"}],detectPopup:[{visible:"._3YCsmIaS"}],optIn:[{waitForThenClick:"._3fKiu5wx._3zN5SumS._3tAK973O.IYOfhWEs.VGNGF1pA"}],optOut:[{waitForThenClick:"._3fKiu5wx._1_XToJBF._3tAK973O.IYOfhWEs.VGNGF1pA"}]},{name:"Termly",prehideSelectors:["#termly-code-snippet-support"],detectCmp:[{exists:"#termly-code-snippet-support"}],detectPopup:[{visible:"#termly-code-snippet-support div"}],optIn:[{waitForThenClick:'[data-tid="banner-accept"]'}],optOut:[{if:{exists:'[data-tid="banner-decline"]'},then:[{click:'[data-tid="banner-decline"]'}],else:[{click:".t-preference-button"},{wait:500},{if:{exists:".t-declineAllButton"},then:[{click:".t-declineAllButton"}],else:[{waitForThenClick:".t-preference-modal input[type=checkbox][checked]:not([disabled])",all:!0},{waitForThenClick:".t-saveButton"}]}]}]},{name:"termsfeed",vendorUrl:"https://termsfeed.com",comment:"v4.x.x",prehideSelectors:[".termsfeed-com---nb"],detectCmp:[{exists:".termsfeed-com---nb"}],detectPopup:[{visible:".termsfeed-com---nb"}],optIn:[{waitForThenClick:".cc-nb-okagree"}],optOut:[{waitForThenClick:".cc-nb-reject"}]},{name:"termsfeed3",vendorUrl:"https://termsfeed.com",comment:"v3.x.x",prehideSelectors:[".cc_dialog.cc_css_reboot,.cc_overlay_lock"],detectCmp:[{exists:".cc_dialog.cc_css_reboot"}],detectPopup:[{visible:".cc_dialog.cc_css_reboot"}],optIn:[{waitForThenClick:".cc_dialog.cc_css_reboot .cc_b_ok"}],optOut:[{if:{exists:".cc_dialog.cc_css_reboot .cc_b_cp"},then:[{click:".cc_dialog.cc_css_reboot .cc_b_cp"},{waitForVisible:".cookie-consent-preferences-dialog .cc_cp_f_save button"},{waitForThenClick:".cookie-consent-preferences-dialog .cc_cp_f_save button"}],else:[{hide:".cc_dialog.cc_css_reboot,.cc_overlay_lock"}]}]},{name:"Test page cosmetic CMP",cosmetic:!0,prehideSelectors:["#privacy-test-page-cmp-test-prehide"],detectCmp:[{exists:"#privacy-test-page-cmp-test-banner"}],detectPopup:[{visible:"#privacy-test-page-cmp-test-banner"}],optIn:[{waitFor:"#accept-all"},{click:"#accept-all"}],optOut:[{hide:"#privacy-test-page-cmp-test-banner"}],test:[{wait:500},{eval:"EVAL_TESTCMP_COSMETIC_0"}]},{name:"Test page CMP",prehideSelectors:["#reject-all"],detectCmp:[{exists:"#privacy-test-page-cmp-test"}],detectPopup:[{visible:"#privacy-test-page-cmp-test"}],optIn:[{waitFor:"#accept-all"},{click:"#accept-all"}],optOut:[{waitFor:"#reject-all"},{click:"#reject-all"}],test:[{eval:"EVAL_TESTCMP_0"}]},{name:"thalia.de",prehideSelectors:[".consent-banner-box"],detectCmp:[{exists:"consent-banner[component=consent-banner]"}],detectPopup:[{visible:".consent-banner-box"}],optIn:[{click:".button-zustimmen"}],optOut:[{click:"button[data-consent=disagree]"}]},{name:"thefreedictionary.com",prehideSelectors:["#cmpBanner"],detectCmp:[{exists:"#cmpBanner"}],detectPopup:[{visible:"#cmpBanner"}],optIn:[{eval:"EVAL_THEFREEDICTIONARY_1"}],optOut:[{eval:"EVAL_THEFREEDICTIONARY_0"}]},{name:"theverge",runContext:{frame:!1,main:!0,urlPattern:"^https://(www)?\\.theverge\\.com"},intermediate:!1,prehideSelectors:[".duet--cta--cookie-banner"],detectCmp:[{exists:".duet--cta--cookie-banner"}],detectPopup:[{visible:".duet--cta--cookie-banner"}],optIn:[{click:".duet--cta--cookie-banner button.tracking-12",all:!1}],optOut:[{click:".duet--cta--cookie-banner button.tracking-12 > span"}],test:[{eval:"EVAL_THEVERGE_0"}]},{name:"tidbits-com",cosmetic:!0,prehideSelectors:["#eu_cookie_law_widget-2"],detectCmp:[{exists:"#eu_cookie_law_widget-2"}],detectPopup:[{visible:"#eu_cookie_law_widget-2"}],optIn:[{click:"#eu-cookie-law form > input.accept"}],optOut:[{hide:"#eu_cookie_law_widget-2"}]},{name:"tractor-supply",runContext:{urlPattern:"^https://www\\.tractorsupply\\.com/"},cosmetic:!0,prehideSelectors:[".tsc-cookie-banner"],detectCmp:[{exists:".tsc-cookie-banner"}],detectPopup:[{visible:".tsc-cookie-banner"}],optIn:[{click:"#cookie-banner-cancel"}],optOut:[{hide:".tsc-cookie-banner"}]},{name:"trader-joes-com",cosmetic:!0,prehideSelectors:['div.aem-page > div[class^="CookiesAlert_cookiesAlert__"]'],detectCmp:[{exists:'div.aem-page > div[class^="CookiesAlert_cookiesAlert__"]'}],detectPopup:[{visible:'div.aem-page > div[class^="CookiesAlert_cookiesAlert__"]'}],optIn:[{click:'div[class^="CookiesAlert_cookiesAlert__container__"] button'}],optOut:[{hide:'div.aem-page > div[class^="CookiesAlert_cookiesAlert__"]'}]},{name:"transcend",vendorUrl:"https://unknown",cosmetic:!0,prehideSelectors:["#transcend-consent-manager"],detectCmp:[{exists:"#transcend-consent-manager"}],detectPopup:[{visible:"#transcend-consent-manager"}],optIn:[{waitForThenClick:["#transcend-consent-manager","#consentManagerMainDialog .inner-container button"]}],optOut:[{hide:"#transcend-consent-manager"}]},{name:"transip-nl",runContext:{urlPattern:"^https://www\\.transip\\.nl/"},prehideSelectors:["#consent-modal"],detectCmp:[{any:[{exists:"#consent-modal"},{exists:"#privacy-settings-content"}]}],detectPopup:[{any:[{visible:"#consent-modal"},{visible:"#privacy-settings-content"}]}],optIn:[{click:'button[type="submit"]'}],optOut:[{if:{exists:"#privacy-settings-content"},then:[{click:'button[type="submit"]'}],else:[{click:"div.one-modal__action-footer-column--secondary > a"}]}]},{name:"tropicfeel-com",prehideSelectors:["#shopify-section-cookies-controller"],detectCmp:[{exists:"#shopify-section-cookies-controller"}],detectPopup:[{visible:"#shopify-section-cookies-controller #cookies-controller-main-pane",check:"any"}],optIn:[{waitForThenClick:"#cookies-controller-main-pane form[data-form-allow-all] button"}],optOut:[{click:"#cookies-controller-main-pane a[data-tab-target=manage-cookies]"},{waitFor:"#manage-cookies-pane.active"},{click:"#manage-cookies-pane.active input[type=checkbox][checked]:not([disabled])",all:!0},{click:"#manage-cookies-pane.active button[type=submit]"}],test:[]},{name:"true-car",runContext:{urlPattern:"^https://www\\.truecar\\.com/"},cosmetic:!0,prehideSelectors:[['div[aria-labelledby="cookie-banner-heading"]']],detectCmp:[{exists:'div[aria-labelledby="cookie-banner-heading"]'}],detectPopup:[{visible:'div[aria-labelledby="cookie-banner-heading"]'}],optIn:[{click:'div[aria-labelledby="cookie-banner-heading"] > button[aria-label="Close"]'}],optOut:[{hide:'div[aria-labelledby="cookie-banner-heading"]'}]},{name:"truyo",prehideSelectors:["#truyo-consent-module"],detectCmp:[{exists:"#truyo-cookieBarContent"}],detectPopup:[{visible:"#truyo-consent-module"}],optIn:[{click:"button#acceptAllCookieButton"}],optOut:[{click:"button#declineAllCookieButton"}]},{name:"twitch-mobile",vendorUrl:"https://m.twitch.tv/",cosmetic:!0,runContext:{urlPattern:"^https?://m\\.twitch\\.tv"},prehideSelectors:[],detectCmp:[{exists:'.ReactModal__Overlay [href="https://www.twitch.tv/p/cookie-policy"]'}],detectPopup:[{visible:'.ReactModal__Overlay [href="https://www.twitch.tv/p/cookie-policy"]'}],optIn:[{waitForThenClick:'.ReactModal__Overlay:has([href="https://www.twitch.tv/p/cookie-policy"]) button'}],optOut:[{hide:'.ReactModal__Overlay:has([href="https://www.twitch.tv/p/cookie-policy"])'}]},{name:"twitch.tv",runContext:{urlPattern:"^https?://(www\\.)?twitch\\.tv"},prehideSelectors:["div:has(> .consent-banner .consent-banner__content--gdpr-v2),.ReactModalPortal:has([data-a-target=consent-modal-save])"],detectCmp:[{exists:".consent-banner .consent-banner__content--gdpr-v2"}],detectPopup:[{visible:".consent-banner .consent-banner__content--gdpr-v2"}],optIn:[{click:'button[data-a-target="consent-banner-accept"]'}],optOut:[{hide:"div:has(> .consent-banner .consent-banner__content--gdpr-v2)"},{click:'button[data-a-target="consent-banner-manage-preferences"]'},{waitFor:"input[type=checkbox][data-a-target=tw-checkbox]"},{click:"input[type=checkbox][data-a-target=tw-checkbox][checked]:not([disabled])",all:!0,optional:!0},{waitForThenClick:"[data-a-target=consent-modal-save]"},{waitForVisible:".ReactModalPortal:has([data-a-target=consent-modal-save])",check:"none"}]},{name:"twitter",runContext:{urlPattern:"^https://([a-z0-9-]+\\.)?twitter\\.com/"},prehideSelectors:['[data-testid="BottomBar"]'],detectCmp:[{exists:'[data-testid="BottomBar"] div'}],detectPopup:[{visible:'[data-testid="BottomBar"] div'}],optIn:[{waitForThenClick:'[data-testid="BottomBar"] > div:has(>div:first-child>div:last-child>span[role=button]) > div:last-child > div[role=button]:first-child'}],optOut:[{waitForThenClick:'[data-testid="BottomBar"] > div:has(>div:first-child>div:last-child>span[role=button]) > div:last-child > div[role=button]:last-child'}],TODOtest:[{eval:"EVAL_document.cookie.includes('d_prefs=MjoxLGNvbnNlbnRfdmVyc2lvbjoy')"}]},{name:"ubuntu.com",prehideSelectors:["dialog.cookie-policy"],detectCmp:[{any:[{exists:"dialog.cookie-policy header"},{exists:'xpath///*[@id="modal"]/div/header'}]}],detectPopup:[{any:[{visible:"dialog header"},{visible:'xpath///*[@id="modal"]/div/header'}]}],optIn:[{any:[{waitForThenClick:"#cookie-policy-button-accept"},{waitForThenClick:'xpath///*[@id="cookie-policy-button-accept"]'}]}],optOut:[{any:[{waitForThenClick:"button.js-manage"},{waitForThenClick:'xpath///*[@id="cookie-policy-content"]/p[4]/button[2]'}]},{waitForThenClick:"dialog.cookie-policy .p-switch__input:checked",optional:!0,all:!0,timeout:500},{any:[{waitForThenClick:"dialog.cookie-policy .js-save-preferences"},{waitForThenClick:'xpath///*[@id="modal"]/div/button'}]}],test:[{eval:"EVAL_UBUNTU_COM_0"}]},{name:"UK Cookie Consent",prehideSelectors:["#catapult-cookie-bar"],cosmetic:!0,detectCmp:[{exists:"#catapult-cookie-bar"}],detectPopup:[{exists:".has-cookie-bar #catapult-cookie-bar"}],optIn:[{click:"#catapultCookie"}],optOut:[{hide:"#catapult-cookie-bar"}],test:[{eval:"EVAL_UK_COOKIE_CONSENT_0"}]},{name:"urbanarmorgear-com",cosmetic:!0,prehideSelectors:['div[class^="Layout__CookieBannerContainer-"]'],detectCmp:[{exists:'div[class^="Layout__CookieBannerContainer-"]'}],detectPopup:[{visible:'div[class^="Layout__CookieBannerContainer-"]'}],optIn:[{click:'button[class^="CookieBanner__AcceptButton"]'}],optOut:[{hide:'div[class^="Layout__CookieBannerContainer-"]'}]},{name:"usercentrics-api",detectCmp:[{exists:"#usercentrics-root,#usercentrics-cmp-ui"}],detectPopup:[{eval:"EVAL_USERCENTRICS_API_0"},{if:{exists:"#usercentrics-cmp-ui"},then:[{waitForVisible:"#usercentrics-cmp-ui",timeout:2e3}],else:[{exists:["#usercentrics-root","[data-testid=uc-container]"]},{waitForVisible:"#usercentrics-root",timeout:2e3}]}],optIn:[{eval:"EVAL_USERCENTRICS_API_3"},{eval:"EVAL_USERCENTRICS_API_1"},{eval:"EVAL_USERCENTRICS_API_5"}],optOut:[{eval:"EVAL_USERCENTRICS_API_1"},{eval:"EVAL_USERCENTRICS_API_2"}],test:[{eval:"EVAL_USERCENTRICS_API_6"}]},{name:"usercentrics-button",detectCmp:[{exists:"#usercentrics-button"}],detectPopup:[{visible:"#usercentrics-button #uc-btn-accept-banner"}],optIn:[{click:"#usercentrics-button #uc-btn-accept-banner"}],optOut:[{click:"#usercentrics-button #uc-btn-deny-banner"}],test:[{eval:"EVAL_USERCENTRICS_BUTTON_0"}]},{name:"uswitch.com",runContext:{main:!0,frame:!1,urlPattern:"^https://(www\\.)?uswitch\\.com/"},prehideSelectors:[".ucb"],detectCmp:[{exists:".ucb-banner"}],detectPopup:[{visible:".ucb-banner"}],optIn:[{waitForThenClick:".ucb-banner .ucb-btn-accept"}],optOut:[{waitForThenClick:".ucb-banner .ucb-btn-save"}]},{name:"vodafone.de",runContext:{urlPattern:"^https://www\\.vodafone\\.de/"},prehideSelectors:[".dip-consent,.dip-consent-container"],detectCmp:[{exists:".dip-consent-container"}],detectPopup:[{visible:".dip-consent-content"}],optOut:[{click:'.dip-consent-btn[tabindex="2"]'}],optIn:[{click:'.dip-consent-btn[tabindex="1"]'}]},{name:"waitrose.com",prehideSelectors:["div[aria-labelledby=CookieAlertModalHeading]","section[data-test=initial-waitrose-cookie-consent-banner]","section[data-test=cookie-consent-modal]"],detectCmp:[{exists:"section[data-test=initial-waitrose-cookie-consent-banner]"}],detectPopup:[{visible:"section[data-test=initial-waitrose-cookie-consent-banner]"}],optIn:[{click:"button[data-test=accept-all]"}],optOut:[{click:"button[data-test=manage-cookies]"},{wait:200},{eval:"EVAL_WAITROSE_0"},{click:"button[data-test=submit]"}],test:[{eval:"EVAL_WAITROSE_1"}]},{name:"webflow",vendorUrl:"https://webflow.com/",prehideSelectors:[".fs-cc-components"],detectCmp:[{exists:".fs-cc-components"}],detectPopup:[{visible:".fs-cc-components"},{visible:"[fs-cc=banner]"}],optIn:[{wait:500},{waitForThenClick:"[fs-cc=banner] [fs-cc=allow]"}],optOut:[{wait:500},{waitForThenClick:"[fs-cc=banner] [fs-cc=deny]"}]},{name:"wetransfer.com",detectCmp:[{exists:".welcome__cookie-notice"}],detectPopup:[{visible:".welcome__cookie-notice"}],optIn:[{click:".welcome__button--accept"}],optOut:[{click:".welcome__button--decline"}]},{name:"whitepages.com",runContext:{urlPattern:"^https://www\\.whitepages\\.com/"},cosmetic:!0,prehideSelectors:[".cookie-wrapper, .cookie-overlay"],detectCmp:[{exists:".cookie-wrapper"}],detectPopup:[{visible:".cookie-overlay"}],optIn:[{click:'button[aria-label="Got it"]'}],optOut:[{hide:".cookie-wrapper"}]},{name:"wolframalpha",vendorUrl:"https://www.wolframalpha.com",prehideSelectors:[],cosmetic:!0,runContext:{urlPattern:"^https://www\\.wolframalpha\\.com/"},detectCmp:[{exists:"section._a_yb"}],detectPopup:[{visible:"section._a_yb"}],optIn:[{waitForThenClick:"section._a_yb button"}],optOut:[{hide:"section._a_yb"}]},{name:"woo-commerce-com",prehideSelectors:[".wccom-comp-privacy-banner .wccom-privacy-banner"],detectCmp:[{exists:".wccom-comp-privacy-banner .wccom-privacy-banner"}],detectPopup:[{exists:".wccom-comp-privacy-banner .wccom-privacy-banner"}],optIn:[{click:".wccom-privacy-banner__content-buttons button.is-primary"}],optOut:[{click:".wccom-privacy-banner__content-buttons button.is-secondary"},{waitForThenClick:"input[type=checkbox][checked]:not([disabled])",all:!0},{click:"div.wccom-modal__footer > button"}]},{name:"WP Cookie Notice for GDPR",vendorUrl:"https://wordpress.org/plugins/gdpr-cookie-consent/",prehideSelectors:["#gdpr-cookie-consent-bar"],detectCmp:[{exists:"#gdpr-cookie-consent-bar"}],detectPopup:[{visible:"#gdpr-cookie-consent-bar"}],optIn:[{waitForThenClick:"#gdpr-cookie-consent-bar #cookie_action_accept"}],optOut:[{waitForThenClick:"#gdpr-cookie-consent-bar #cookie_action_reject"}],test:[{eval:"EVAL_WP_COOKIE_NOTICE_0"}]},{name:"wpcc",cosmetic:!0,prehideSelectors:[".wpcc-container"],detectCmp:[{exists:".wpcc-container"}],detectPopup:[{exists:".wpcc-container .wpcc-message"}],optIn:[{click:".wpcc-compliance .wpcc-btn"}],optOut:[{hide:".wpcc-container"}]},{name:"xe.com",vendorUrl:"https://www.xe.com/",runContext:{urlPattern:"^https://www\\.xe\\.com/"},prehideSelectors:["[class*=ConsentBanner]"],detectCmp:[{exists:"[class*=ConsentBanner]"}],detectPopup:[{visible:"[class*=ConsentBanner]"}],optIn:[{waitForThenClick:"[class*=ConsentBanner] .egnScw"}],optOut:[{wait:1e3},{waitForThenClick:"[class*=ConsentBanner] .frDWEu"},{waitForThenClick:"[class*=ConsentBanner] .hXIpFU"}],test:[{eval:"EVAL_XE_TEST"}]},{name:"xhamster-eu",prehideSelectors:[".cookies-modal"],detectCmp:[{exists:".cookies-modal"}],detectPopup:[{exists:".cookies-modal"}],optIn:[{click:"button.cmd-button-accept-all"}],optOut:[{click:"button.cmd-button-reject-all"}]},{name:"xhamster-us",runContext:{urlPattern:"^https://(www\\.)?xhamster\\d?\\.com"},cosmetic:!0,prehideSelectors:[".cookie-announce"],detectCmp:[{exists:".cookie-announce"}],detectPopup:[{visible:".cookie-announce .announce-text"}],optIn:[{click:".cookie-announce button.xh-button"}],optOut:[{hide:".cookie-announce"}]},{name:"xing.com",detectCmp:[{exists:"div[class^=cookie-consent-CookieConsent]"}],detectPopup:[{exists:"div[class^=cookie-consent-CookieConsent]"}],optIn:[{click:"#consent-accept-button"}],optOut:[{click:"#consent-settings-button"},{click:".consent-banner-button-accept-overlay"}],test:[{eval:"EVAL_XING_0"}]},{name:"xnxx-com",cosmetic:!0,prehideSelectors:["#cookies-use-alert"],detectCmp:[{exists:"#cookies-use-alert"}],detectPopup:[{visible:"#cookies-use-alert"}],optIn:[{click:"#cookies-use-alert .close"}],optOut:[{hide:"#cookies-use-alert"}]},{name:"xvideos",vendorUrl:"https://xvideos.com",runContext:{urlPattern:"^https://[^/]*xvideos\\.com/"},prehideSelectors:[],detectCmp:[{exists:".disclaimer-opened #disclaimer-cookies"}],detectPopup:[{visible:".disclaimer-opened #disclaimer-cookies"}],optIn:[{waitForThenClick:"#disclaimer-accept_cookies"}],optOut:[{waitForThenClick:"#disclaimer-reject_cookies"}]},{name:"Yahoo",runContext:{urlPattern:"^https://consent\\.yahoo\\.com/v2/"},prehideSelectors:["#reject-all"],detectCmp:[{exists:"#consent-page"}],detectPopup:[{visible:"#consent-page"}],optIn:[{waitForThenClick:"#consent-page button[value=agree]"}],optOut:[{waitForThenClick:"#consent-page button[value=reject]"}]},{name:"youporn.com",cosmetic:!0,prehideSelectors:[".euCookieModal, #js_euCookieModal"],detectCmp:[{exists:".euCookieModal"}],detectPopup:[{exists:".euCookieModal, #js_euCookieModal"}],optIn:[{click:'button[name="user_acceptCookie"]'}],optOut:[{hide:".euCookieModal"}]},{name:"youtube-desktop",prehideSelectors:["tp-yt-iron-overlay-backdrop.opened","ytd-consent-bump-v2-lightbox"],detectCmp:[{exists:"ytd-consent-bump-v2-lightbox tp-yt-paper-dialog"},{exists:'ytd-consent-bump-v2-lightbox tp-yt-paper-dialog a[href^="https://consent.youtube.com/"]'}],detectPopup:[{visible:"ytd-consent-bump-v2-lightbox tp-yt-paper-dialog"}],optIn:[{waitForThenClick:"ytd-consent-bump-v2-lightbox .eom-buttons .eom-button-row:first-child ytd-button-renderer:last-child #button,ytd-consent-bump-v2-lightbox .eom-buttons .eom-button-row:first-child ytd-button-renderer:last-child button"},{wait:500}],optOut:[{waitForThenClick:"ytd-consent-bump-v2-lightbox .eom-buttons .eom-button-row:first-child ytd-button-renderer:first-child #button,ytd-consent-bump-v2-lightbox .eom-buttons .eom-button-row:first-child ytd-button-renderer:first-child button"},{wait:500}],test:[{wait:500},{eval:"EVAL_YOUTUBE_DESKTOP_0"}]},{name:"youtube-mobile",prehideSelectors:[".consent-bump-v2-lightbox"],detectCmp:[{exists:"ytm-consent-bump-v2-renderer"}],detectPopup:[{visible:"ytm-consent-bump-v2-renderer"}],optIn:[{waitForThenClick:"ytm-consent-bump-v2-renderer .privacy-terms + .one-col-dialog-buttons c3-material-button:first-child button, ytm-consent-bump-v2-renderer .privacy-terms + .one-col-dialog-buttons ytm-button-renderer:first-child button"},{wait:500}],optOut:[{waitForThenClick:"ytm-consent-bump-v2-renderer .privacy-terms + .one-col-dialog-buttons c3-material-button:nth-child(2) button, ytm-consent-bump-v2-renderer .privacy-terms + .one-col-dialog-buttons ytm-button-renderer:nth-child(2) button"},{wait:500}],test:[{wait:500},{eval:"EVAL_YOUTUBE_MOBILE_0"}]},{name:"zdf",prehideSelectors:["#zdf-cmp-banner-sdk"],detectCmp:[{exists:"#zdf-cmp-banner-sdk"}],detectPopup:[{visible:"#zdf-cmp-main.zdf-cmp-show"}],optIn:[{waitForThenClick:"#zdf-cmp-main #zdf-cmp-accept-btn"}],optOut:[{waitForThenClick:"#zdf-cmp-main #zdf-cmp-deny-btn"}],test:[]},{name:"zentralruf-de",runContext:{urlPattern:"^https://(www\\.)?zentralruf\\.de"},prehideSelectors:["#cookie_modal_wrapper"],detectCmp:[{exists:"#cookie_modal_wrapper"}],detectPopup:[{visible:"#cookie_modal_wrapper"}],optIn:[{waitForThenClick:"#cookie_modal_wrapper #cookie_modal_button_consent_all"}],optOut:[{waitForThenClick:"#cookie_modal_wrapper #cookie_modal_button_choose"}]}],A={"didomi.io":{detectors:[{presentMatcher:{target:{selector:"#didomi-host, #didomi-notice"},type:"css"},showingMatcher:{target:{selector:"body.didomi-popup-open, .didomi-notice-banner"},type:"css"}}],methods:[{action:{target:{selector:".didomi-popup-notice-buttons .didomi-button:not(.didomi-button-highlight), .didomi-notice-banner .didomi-learn-more-button"},type:"click"},name:"OPEN_OPTIONS"},{action:{actions:[{retries:50,target:{selector:"#didomi-purpose-cookies"},type:"waitcss",waitTime:50},{consents:[{description:"Share (everything) with others",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-share_whith_others]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-share_whith_others]:last-child"},type:"click"},type:"X"},{description:"Information storage and access",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-cookies]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-cookies]:last-child"},type:"click"},type:"D"},{description:"Content selection, offers and marketing",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-CL-T1Rgm7]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-CL-T1Rgm7]:last-child"},type:"click"},type:"E"},{description:"Analytics",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-analytics]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-analytics]:last-child"},type:"click"},type:"B"},{description:"Analytics",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-M9NRHJe3G]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-M9NRHJe3G]:last-child"},type:"click"},type:"B"},{description:"Ad and content selection",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-advertising_personalization]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-advertising_personalization]:last-child"},type:"click"},type:"F"},{description:"Ad and content selection",falseAction:{parent:{childFilter:{target:{selector:"#didomi-purpose-pub-ciblee"}},selector:".didomi-consent-popup-data-processing, .didomi-components-accordion-label-container"},target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-pub-ciblee]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-pub-ciblee]:last-child"},type:"click"},type:"F"},{description:"Ad and content selection - basics",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-q4zlJqdcD]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-q4zlJqdcD]:last-child"},type:"click"},type:"F"},{description:"Ad and content selection - partners and subsidiaries",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-partenaire-cAsDe8jC]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-partenaire-cAsDe8jC]:last-child"},type:"click"},type:"F"},{description:"Ad and content selection - social networks",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-p4em9a8m]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-p4em9a8m]:last-child"},type:"click"},type:"F"},{description:"Ad and content selection - others",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-autres-pub]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-autres-pub]:last-child"},type:"click"},type:"F"},{description:"Social networks",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-reseauxsociaux]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-reseauxsociaux]:last-child"},type:"click"},type:"A"},{description:"Social networks",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-social_media]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-social_media]:last-child"},type:"click"},type:"A"},{description:"Content selection",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-content_personalization]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-content_personalization]:last-child"},type:"click"},type:"E"},{description:"Ad delivery",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-ad_delivery]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-ad_delivery]:last-child"},type:"click"},type:"F"}],type:"consent"},{action:{consents:[{matcher:{childFilter:{target:{selector:":not(.didomi-components-radio__option--selected)"}},type:"css"},trueAction:{target:{selector:":nth-child(2)"},type:"click"},falseAction:{target:{selector:":first-child"},type:"click"},type:"X"}],type:"consent"},target:{selector:".didomi-components-radio"},type:"foreach"}],type:"list"},name:"DO_CONSENT"},{action:{parent:{selector:".didomi-consent-popup-footer .didomi-consent-popup-actions"},target:{selector:".didomi-components-button:first-child"},type:"click"},name:"SAVE_CONSENT"}]},oil:{detectors:[{presentMatcher:{target:{selector:".as-oil-content-overlay"},type:"css"},showingMatcher:{target:{selector:".as-oil-content-overlay"},type:"css"}}],methods:[{action:{actions:[{target:{selector:".as-js-advanced-settings"},type:"click"},{retries:"10",target:{selector:".as-oil-cpc__purpose-container"},type:"waitcss",waitTime:"250"}],type:"list"},name:"OPEN_OPTIONS"},{action:{actions:[{consents:[{matcher:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Information storage and access","Opbevaring af og adgang til oplysninger på din enhed"]},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Information storage and access","Opbevaring af og adgang til oplysninger på din enhed"]},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"D"},{matcher:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Personlige annoncer","Personalisation"]},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Personlige annoncer","Personalisation"]},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"E"},{matcher:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Annoncevalg, levering og rapportering","Ad selection, delivery, reporting"]},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Annoncevalg, levering og rapportering","Ad selection, delivery, reporting"]},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"F"},{matcher:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Personalisering af indhold","Content selection, delivery, reporting"]},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Personalisering af indhold","Content selection, delivery, reporting"]},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"E"},{matcher:{parent:{childFilter:{target:{selector:".as-oil-cpc__purpose-header",textFilter:["Måling","Measurement"]}},selector:".as-oil-cpc__purpose-container"},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{childFilter:{target:{selector:".as-oil-cpc__purpose-header",textFilter:["Måling","Measurement"]}},selector:".as-oil-cpc__purpose-container"},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"B"},{matcher:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:"Google"},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:"Google"},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"F"}],type:"consent"}],type:"list"},name:"DO_CONSENT"},{action:{target:{selector:".as-oil__btn-optin"},type:"click"},name:"SAVE_CONSENT"},{action:{target:{selector:"div.as-oil"},type:"hide"},name:"HIDE_CMP"}]},optanon:{detectors:[{presentMatcher:{target:{selector:"#optanon-menu, .optanon-alert-box-wrapper"},type:"css"},showingMatcher:{target:{displayFilter:!0,selector:".optanon-alert-box-wrapper"},type:"css"}}],methods:[{action:{actions:[{target:{selector:".optanon-alert-box-wrapper .optanon-toggle-display, a[onclick*='OneTrust.ToggleInfoDisplay()'], a[onclick*='Optanon.ToggleInfoDisplay()']"},type:"click"}],type:"list"},name:"OPEN_OPTIONS"},{action:{actions:[{target:{selector:".preference-menu-item #Your-privacy"},type:"click"},{target:{selector:"#optanon-vendor-consent-text"},type:"click"},{action:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"X"}],type:"consent"},target:{selector:"#optanon-vendor-consent-list .vendor-item"},type:"foreach"},{target:{selector:".vendor-consent-back-link"},type:"click"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-performance"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-performance"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-functional"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-functional"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"E"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-advertising"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-advertising"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-social"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-social"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Social Media Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Social Media Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Personalisation"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Personalisation"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"E"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Site monitoring cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Site monitoring cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Third party privacy-enhanced content"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Third party privacy-enhanced content"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"X"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Performance & Advertising Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Performance & Advertising Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Information storage and access"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Information storage and access"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"D"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Ad selection, delivery, reporting"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Ad selection, delivery, reporting"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Content selection, delivery, reporting"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Content selection, delivery, reporting"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"E"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Measurement"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Measurement"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Recommended Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Recommended Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"X"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Unclassified Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Unclassified Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"X"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Analytical Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Analytical Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Marketing Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Marketing Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Personalization"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Personalization"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"E"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Ad Selection, Delivery & Reporting"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Ad Selection, Delivery & Reporting"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Content Selection, Delivery & Reporting"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Content Selection, Delivery & Reporting"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"E"}],type:"consent"}],type:"list"},type:"ifcss"}],type:"list"},name:"DO_CONSENT"},{action:{parent:{selector:".optanon-save-settings-button"},target:{selector:".optanon-white-button-middle"},type:"click"},name:"SAVE_CONSENT"},{action:{actions:[{target:{selector:"#optanon-popup-wrapper"},type:"hide"},{target:{selector:"#optanon-popup-bg"},type:"hide"},{target:{selector:".optanon-alert-box-wrapper"},type:"hide"}],type:"list"},name:"HIDE_CMP"}]},quantcast2:{detectors:[{presentMatcher:{target:{selector:"[data-tracking-opt-in-overlay]"},type:"css"},showingMatcher:{target:{selector:"[data-tracking-opt-in-overlay] [data-tracking-opt-in-learn-more]"},type:"css"}}],methods:[{action:{target:{selector:"[data-tracking-opt-in-overlay] [data-tracking-opt-in-learn-more]"},type:"click"},name:"OPEN_OPTIONS"},{action:{actions:[{type:"wait",waitTime:500},{action:{actions:[{target:{selector:"div",textFilter:["Information storage and access"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"D"}],type:"consent"},type:"ifcss"},{target:{selector:"div",textFilter:["Personalization"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"F"}],type:"consent"},type:"ifcss"},{target:{selector:"div",textFilter:["Ad selection, delivery, reporting"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"F"}],type:"consent"},type:"ifcss"},{target:{selector:"div",textFilter:["Content selection, delivery, reporting"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"E"}],type:"consent"},type:"ifcss"},{target:{selector:"div",textFilter:["Measurement"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"B"}],type:"consent"},type:"ifcss"},{target:{selector:"div",textFilter:["Other Partners"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"X"}],type:"consent"},type:"ifcss"}],type:"list"},parent:{childFilter:{target:{selector:"input"}},selector:"[data-tracking-opt-in-overlay] > div > div"},target:{childFilter:{target:{selector:"input"}},selector:":scope > div"},type:"foreach"}],type:"list"},name:"DO_CONSENT"},{action:{target:{selector:"[data-tracking-opt-in-overlay] [data-tracking-opt-in-save]"},type:"click"},name:"SAVE_CONSENT"}]},springer:{detectors:[{presentMatcher:{parent:null,target:{selector:".cmp-app_gdpr"},type:"css"},showingMatcher:{parent:null,target:{displayFilter:!0,selector:".cmp-popup_popup"},type:"css"}}],methods:[{action:{actions:[{target:{selector:".cmp-intro_rejectAll"},type:"click"},{type:"wait",waitTime:250},{target:{selector:".cmp-purposes_purposeItem:not(.cmp-purposes_selectedPurpose)"},type:"click"}],type:"list"},name:"OPEN_OPTIONS"},{action:{consents:[{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Przechowywanie informacji na urządzeniu lub dostęp do nich",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Przechowywanie informacji na urządzeniu lub dostęp do nich",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"D"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór podstawowych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór podstawowych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"F"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Tworzenie profilu spersonalizowanych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Tworzenie profilu spersonalizowanych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"F"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór spersonalizowanych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór spersonalizowanych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"E"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Tworzenie profilu spersonalizowanych treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Tworzenie profilu spersonalizowanych treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"E"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór spersonalizowanych treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór spersonalizowanych treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"B"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Pomiar wydajności reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Pomiar wydajności reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"B"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Pomiar wydajności treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Pomiar wydajności treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"B"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Stosowanie badań rynkowych w celu generowania opinii odbiorców",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Stosowanie badań rynkowych w celu generowania opinii odbiorców",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"X"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Opracowywanie i ulepszanie produktów",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Opracowywanie i ulepszanie produktów",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"X"}],type:"consent"},name:"DO_CONSENT"},{action:{target:{selector:".cmp-details_save"},type:"click"},name:"SAVE_CONSENT"}]},wordpressgdpr:{detectors:[{presentMatcher:{parent:null,target:{selector:".wpgdprc-consent-bar"},type:"css"},showingMatcher:{parent:null,target:{displayFilter:!0,selector:".wpgdprc-consent-bar"},type:"css"}}],methods:[{action:{parent:null,target:{selector:".wpgdprc-consent-bar .wpgdprc-consent-bar__settings",textFilter:null},type:"click"},name:"OPEN_OPTIONS"},{action:{actions:[{target:{selector:".wpgdprc-consent-modal .wpgdprc-button",textFilter:"Eyeota"},type:"click"},{consents:[{description:"Eyeota Cookies",matcher:{parent:{selector:".wpgdprc-consent-modal__description",textFilter:"Eyeota"},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".wpgdprc-consent-modal__description",textFilter:"Eyeota"},target:{selector:"label"},type:"click"},type:"X"}],type:"consent"},{target:{selector:".wpgdprc-consent-modal .wpgdprc-button",textFilter:"Advertising"},type:"click"},{consents:[{description:"Advertising Cookies",matcher:{parent:{selector:".wpgdprc-consent-modal__description",textFilter:"Advertising"},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".wpgdprc-consent-modal__description",textFilter:"Advertising"},target:{selector:"label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},name:"DO_CONSENT"},{action:{parent:null,target:{selector:".wpgdprc-button",textFilter:"Save my settings"},type:"click"},name:"SAVE_CONSENT"}]}},E={autoconsent:f,consentomatic:A},x=Object.freeze({__proto__:null,autoconsent:f,consentomatic:A,default:E});const O=new class{constructor(e,t=null,o=null){if(this.id=a(),this.rules=[],this.foundCmp=null,this.state={lifecycle:"loading",prehideOn:!1,findCmpAttempts:0,detectedCmps:[],detectedPopups:[],selfTest:null},r.sendContentMessage=e,this.sendContentMessage=e,this.rules=[],this.updateState({lifecycle:"loading"}),this.addDynamicRules(),t)this.initialize(t,o);else{o&&this.parseDeclarativeRules(o);e({type:"init",url:window.location.href}),this.updateState({lifecycle:"waitingForInitResponse"})}this.domActions=new v(this)}initialize(e,t){const o=g(e);if(o.logs.lifecycle&&console.log("autoconsent init",window.location.href),this.config=o,o.enabled){if(t&&this.parseDeclarativeRules(t),this.rules=function(e,t){return e.filter((e=>(!t.disabledCmps||!t.disabledCmps.includes(e.name))&&(t.enableCosmeticRules||!e.isCosmetic)))}(this.rules,o),e.enablePrehide)if(document.documentElement)this.prehideElements();else{const e=()=>{window.removeEventListener("DOMContentLoaded",e),this.prehideElements()};window.addEventListener("DOMContentLoaded",e)}if("loading"===document.readyState){const e=()=>{window.removeEventListener("DOMContentLoaded",e),this.start()};window.addEventListener("DOMContentLoaded",e)}else this.start();this.updateState({lifecycle:"initialized"})}else o.logs.lifecycle&&console.log("autoconsent is disabled")}addDynamicRules(){C.forEach((e=>{this.rules.push(new e(this))}))}parseDeclarativeRules(e){Object.keys(e.consentomatic).forEach((t=>{this.addConsentomaticCMP(t,e.consentomatic[t])})),e.autoconsent.forEach((e=>{this.addDeclarativeCMP(e)}))}addDeclarativeCMP(e){this.rules.push(new u(e,this))}addConsentomaticCMP(e,t){this.rules.push(new m(`com_${e}`,t))}start(){window.requestIdleCallback?window.requestIdleCallback((()=>this._start()),{timeout:500}):this._start()}async _start(){const e=this.config.logs;e.lifecycle&&console.log(`Detecting CMPs on ${window.location.href}`),this.updateState({lifecycle:"started"});const t=await this.findCmp(this.config.detectRetries);if(this.updateState({detectedCmps:t.map((e=>e.name))}),0===t.length)return e.lifecycle&&console.log("no CMP found",location.href),this.config.enablePrehide&&this.undoPrehide(),this.updateState({lifecycle:"nothingDetected"}),!1;this.updateState({lifecycle:"cmpDetected"});const o=[],c=[];for(const e of t)e.isCosmetic?c.push(e):o.push(e);let i=!1,n=await this.detectPopups(o,(async e=>{i=await this.handlePopup(e)}));if(0===n.length&&(n=await this.detectPopups(c,(async e=>{i=await this.handlePopup(e)}))),0===n.length)return e.lifecycle&&console.log("no popup found"),this.config.enablePrehide&&this.undoPrehide(),!1;if(n.length>1){const t={msg:"Found multiple CMPs, check the detection rules.",cmps:n.map((e=>e.name))};e.errors&&console.warn(t.msg,t.cmps),this.sendContentMessage({type:"autoconsentError",details:t})}return i}async findCmp(e){const t=this.config.logs;this.updateState({findCmpAttempts:this.state.findCmpAttempts+1});const o=[];for(const e of this.rules)try{if(!e.checkRunContext())continue;await e.detectCmp()&&(t.lifecycle&&console.log(`Found CMP: ${e.name} ${window.location.href}`),this.sendContentMessage({type:"cmpDetected",url:location.href,cmp:e.name}),o.push(e))}catch(o){t.errors&&console.warn(`error detecting ${e.name}`,o)}return 0===o.length&&e>0?(await this.domActions.wait(500),this.findCmp(e-1)):o}async detectPopup(e){if(await this.waitForPopup(e).catch((t=>(this.config.logs.errors&&console.warn(`error waiting for a popup for ${e.name}`,t),!1))))return this.updateState({detectedPopups:this.state.detectedPopups.concat([e.name])}),this.sendContentMessage({type:"popupFound",cmp:e.name,url:location.href}),e;throw new Error("Popup is not shown")}async detectPopups(e,t){const o=e.map((e=>this.detectPopup(e)));await Promise.any(o).then((e=>{t(e)})).catch((()=>null));const c=await Promise.allSettled(o),i=[];for(const e of c)"fulfilled"===e.status&&i.push(e.value);return i}async handlePopup(e){return this.updateState({lifecycle:"openPopupDetected"}),this.config.enablePrehide&&!this.state.prehideOn&&this.prehideElements(),this.foundCmp=e,"optOut"===this.config.autoAction?await this.doOptOut():"optIn"===this.config.autoAction?await this.doOptIn():(this.config.logs.lifecycle&&console.log("waiting for opt-out signal...",location.href),!0)}async doOptOut(){const e=this.config.logs;let t;return this.updateState({lifecycle:"runningOptOut"}),this.foundCmp?(e.lifecycle&&console.log(`CMP ${this.foundCmp.name}: opt out on ${window.location.href}`),t=await this.foundCmp.optOut(),e.lifecycle&&console.log(`${this.foundCmp.name}: opt out result ${t}`)):(e.errors&&console.log("no CMP to opt out"),t=!1),this.config.enablePrehide&&this.undoPrehide(),this.sendContentMessage({type:"optOutResult",cmp:this.foundCmp?this.foundCmp.name:"none",result:t,scheduleSelfTest:this.foundCmp&&this.foundCmp.hasSelfTest,url:location.href}),t&&!this.foundCmp.isIntermediate?(this.sendContentMessage({type:"autoconsentDone",cmp:this.foundCmp.name,isCosmetic:this.foundCmp.isCosmetic,url:location.href}),this.updateState({lifecycle:"done"})):this.updateState({lifecycle:t?"optOutSucceeded":"optOutFailed"}),t}async doOptIn(){const e=this.config.logs;let t;return this.updateState({lifecycle:"runningOptIn"}),this.foundCmp?(e.lifecycle&&console.log(`CMP ${this.foundCmp.name}: opt in on ${window.location.href}`),t=await this.foundCmp.optIn(),e.lifecycle&&console.log(`${this.foundCmp.name}: opt in result ${t}`)):(e.errors&&console.log("no CMP to opt in"),t=!1),this.config.enablePrehide&&this.undoPrehide(),this.sendContentMessage({type:"optInResult",cmp:this.foundCmp?this.foundCmp.name:"none",result:t,scheduleSelfTest:!1,url:location.href}),t&&!this.foundCmp.isIntermediate?(this.sendContentMessage({type:"autoconsentDone",cmp:this.foundCmp.name,isCosmetic:this.foundCmp.isCosmetic,url:location.href}),this.updateState({lifecycle:"done"})):this.updateState({lifecycle:t?"optInSucceeded":"optInFailed"}),t}async doSelfTest(){const e=this.config.logs;let t;return this.foundCmp?(e.lifecycle&&console.log(`CMP ${this.foundCmp.name}: self-test on ${window.location.href}`),t=await this.foundCmp.test()):(e.errors&&console.log("no CMP to self test"),t=!1),this.sendContentMessage({type:"selfTestResult",cmp:this.foundCmp?this.foundCmp.name:"none",result:t,url:location.href}),this.updateState({selfTest:t}),t}async waitForPopup(e,t=5,o=500){const c=this.config.logs;c.lifecycle&&console.log("checking if popup is open...",e.name);const i=await e.detectPopup().catch((t=>(c.errors&&console.warn(`error detecting popup for ${e.name}`,t),!1)));return!i&&t>0?(await this.domActions.wait(o),this.waitForPopup(e,t-1,o)):(c.lifecycle&&console.log(e.name,"popup is "+(i?"open":"not open")),i)}prehideElements(){const e=this.config.logs,t=this.rules.filter((e=>e.prehideSelectors&&e.checkRunContext())).reduce(((e,t)=>[...e,...t.prehideSelectors]),["#didomi-popup,.didomi-popup-container,.didomi-popup-notice,.didomi-consent-popup-preferences,#didomi-notice,.didomi-popup-backdrop,.didomi-screen-medium"]);return this.updateState({prehideOn:!0}),setTimeout((()=>{this.config.enablePrehide&&this.state.prehideOn&&!["runningOptOut","runningOptIn"].includes(this.state.lifecycle)&&(e.lifecycle&&console.log("Process is taking too long, unhiding elements"),this.undoPrehide())}),this.config.prehideTimeout||2e3),this.domActions.prehide(t.join(","))}undoPrehide(){return this.updateState({prehideOn:!1}),this.domActions.undoPrehide()}updateState(e){Object.assign(this.state,e),this.sendContentMessage({type:"report",instanceId:this.id,url:window.location.href,mainFrame:window.top===window.self,state:this.state})}async receiveMessageCallback(e){const t=this.config?.logs;switch(t?.messages&&console.log("received from background",e,window.location.href),e.type){case"initResp":this.initialize(e.config,e.rules);break;case"optIn":await this.doOptIn();break;case"optOut":await this.doOptOut();break;case"selfTest":await this.doSelfTest();break;case"evalResp":!function(e,t){const o=r.pending.get(e);o?(r.pending.delete(e),o.timer&&window.clearTimeout(o.timer),o.resolve(t)):console.warn("no eval #",e)}(e.id,e.result)}}}((e=>{window.webkit.messageHandlers[e.type]&&window.webkit.messageHandlers[e.type].postMessage(e).then((e=>{O.receiveMessageCallback(e)}))}),null,x);window.autoconsentMessageCallback=e=>{O.receiveMessageCallback(e)}}(); +!function(){"use strict";var e=class e{static setBase(t){e.base=t}static findElement(t,o=null,i=!1){let c=null;return c=null!=o?Array.from(o.querySelectorAll(t.selector)):null!=e.base?Array.from(e.base.querySelectorAll(t.selector)):Array.from(document.querySelectorAll(t.selector)),null!=t.textFilter&&(c=c.filter((e=>{const o=e.textContent.toLowerCase();if(Array.isArray(t.textFilter)){let e=!1;for(const i of t.textFilter)if(-1!==o.indexOf(i.toLowerCase())){e=!0;break}return e}if(null!=t.textFilter)return-1!==o.indexOf(t.textFilter.toLowerCase())}))),null!=t.styleFilters&&(c=c.filter((e=>{const o=window.getComputedStyle(e);let i=!0;for(const e of t.styleFilters){const t=o[e.option];i=e.negated?i&&t!==e.value:i&&t===e.value}return i}))),null!=t.displayFilter&&(c=c.filter((e=>t.displayFilter?0!==e.offsetHeight:0===e.offsetHeight))),null!=t.iframeFilter&&(c=c.filter((()=>t.iframeFilter?window.location!==window.parent.location:window.location===window.parent.location))),null!=t.childFilter&&(c=c.filter((o=>{const i=e.base;e.setBase(o);const c=e.find(t.childFilter);return e.setBase(i),null!=c.target}))),i?c:(c.length>1&&console.warn("Multiple possible targets: ",c,t,o),c[0])}static find(t,o=!1){const i=[];if(null!=t.parent){const c=e.findElement(t.parent,null,o);if(null!=c){if(c instanceof Array)return c.forEach((c=>{const n=e.findElement(t.target,c,o);n instanceof Array?n.forEach((e=>{i.push({parent:c,target:e})})):i.push({parent:c,target:n})})),i;{const n=e.findElement(t.target,c,o);n instanceof Array?n.forEach((e=>{i.push({parent:c,target:e})})):i.push({parent:c,target:n})}}}else{const c=e.findElement(t.target,null,o);c instanceof Array?c.forEach((e=>{i.push({parent:null,target:e})})):i.push({parent:null,target:c})}return 0===i.length&&i.push({parent:null,target:null}),o?i:(1!==i.length&&console.warn("Multiple results found, even though multiple false",i),i[0])}};e.base=null;var t=e;function o(e){const o=t.find(e);return"css"===e.type?!!o.target:"checkbox"===e.type?!!o.target&&o.target.checked:void 0}async function i(e,a){switch(e.type){case"click":return async function(e){const o=t.find(e);null!=o.target&&o.target.click();return n(c)}(e);case"list":return async function(e,t){for(const o of e.actions)await i(o,t)}(e,a);case"consent":return async function(e,t){for(const c of e.consents){const e=-1!==t.indexOf(c.type);if(c.matcher&&c.toggleAction){o(c.matcher)!==e&&await i(c.toggleAction)}else e?await i(c.trueAction):await i(c.falseAction)}}(e,a);case"ifcss":return async function(e,o){const c=t.find(e);c.target?e.falseAction&&await i(e.falseAction,o):e.trueAction&&await i(e.trueAction,o)}(e,a);case"waitcss":return async function(e){await new Promise((o=>{let i=e.retries||10;const c=e.waitTime||250,n=()=>{const a=t.find(e);(e.negated&&a.target||!e.negated&&!a.target)&&i>0?(i-=1,setTimeout(n,c)):o()};n()}))}(e);case"foreach":return async function(e,o){const c=t.find(e,!0),n=t.base;for(const n of c)n.target&&(t.setBase(n.target),await i(e.action,o));t.setBase(n)}(e,a);case"hide":return async function(e){const o=t.find(e);o.target&&o.target.classList.add("Autoconsent-Hidden")}(e);case"slide":return async function(e){const o=t.find(e),i=t.find(e.dragTarget);if(o.target){const e=o.target.getBoundingClientRect(),t=i.target.getBoundingClientRect();let c=t.top-e.top,n=t.left-e.left;"y"===this.config.axis.toLowerCase()&&(n=0),"x"===this.config.axis.toLowerCase()&&(c=0);const a=window.screenX+e.left+e.width/2,s=window.screenY+e.top+e.height/2,r=e.left+e.width/2,l=e.top+e.height/2,p=document.createEvent("MouseEvents");p.initMouseEvent("mousedown",!0,!0,window,0,a,s,r,l,!1,!1,!1,!1,0,o.target);const d=document.createEvent("MouseEvents");d.initMouseEvent("mousemove",!0,!0,window,0,a+n,s+c,r+n,l+c,!1,!1,!1,!1,0,o.target);const u=document.createEvent("MouseEvents");u.initMouseEvent("mouseup",!0,!0,window,0,a+n,s+c,r+n,l+c,!1,!1,!1,!1,0,o.target),o.target.dispatchEvent(p),await this.waitTimeout(10),o.target.dispatchEvent(d),await this.waitTimeout(10),o.target.dispatchEvent(u)}}(e);case"close":return async function(){window.close()}();case"wait":return async function(e){await n(e.waitTime)}(e);case"eval":return async function(e){return console.log("eval!",e.code),new Promise((t=>{try{e.async?(window.eval(e.code),setTimeout((()=>{t(window.eval("window.__consentCheckResult"))}),e.timeout||250)):t(window.eval(e.code))}catch(o){console.warn("eval error",o,e.code),t(!1)}}))}(e);default:throw"Unknown action type: "+e.type}}var c=0;function n(e){return new Promise((t=>{setTimeout((()=>{t()}),e)}))}function a(){return crypto&&void 0!==crypto.randomUUID?crypto.randomUUID():Math.random().toString()}var s=class{constructor(e,t=1e3){this.id=e,this.promise=new Promise(((e,t)=>{this.resolve=e,this.reject=t})),this.timer=window.setTimeout((()=>{this.reject(new Error("timeout"))}),t)}},r={pending:new Map,sendContentMessage:null};var l={EVAL_0:()=>console.log(1),EVAL_CONSENTMANAGER_1:()=>window.__cmp&&"object"==typeof __cmp("getCMPData"),EVAL_CONSENTMANAGER_2:()=>!__cmp("consentStatus").userChoiceExists,EVAL_CONSENTMANAGER_3:()=>__cmp("setConsent",0),EVAL_CONSENTMANAGER_4:()=>__cmp("setConsent",1),EVAL_CONSENTMANAGER_5:()=>__cmp("consentStatus").userChoiceExists,EVAL_COOKIEBOT_1:()=>!!window.Cookiebot,EVAL_COOKIEBOT_2:()=>!window.Cookiebot.hasResponse&&!0===window.Cookiebot.dialog?.visible,EVAL_COOKIEBOT_3:()=>window.Cookiebot.withdraw()||!0,EVAL_COOKIEBOT_4:()=>window.Cookiebot.hide()||!0,EVAL_COOKIEBOT_5:()=>!0===window.Cookiebot.declined,EVAL_KLARO_1:()=>{const e=globalThis.klaroConfig||globalThis.klaro?.getManager&&globalThis.klaro.getManager().config;if(!e)return!0;const t=(e.services||e.apps).filter((e=>!e.required)).map((e=>e.name));if(klaro&&klaro.getManager){const e=klaro.getManager();return t.every((t=>!e.consents[t]))}if(klaroConfig&&"cookie"===klaroConfig.storageMethod){const e=klaroConfig.cookieName||klaroConfig.storageName,o=JSON.parse(decodeURIComponent(document.cookie.split(";").find((t=>t.trim().startsWith(e))).split("=")[1]));return Object.keys(o).filter((e=>t.includes(e))).every((e=>!1===o[e]))}},EVAL_KLARO_OPEN_POPUP:()=>{klaro.show(void 0,!0)},EVAL_KLARO_TRY_API_OPT_OUT:()=>{if(window.klaro&&"function"==typeof klaro.show&&"function"==typeof klaro.getManager)try{return klaro.getManager().changeAll(!1),klaro.getManager().saveAndApplyConsents(),!0}catch(e){return console.warn(e),!1}return!1},EVAL_ONETRUST_1:()=>window.OnetrustActiveGroups.split(",").filter((e=>e.length>0)).length<=1,EVAL_TRUSTARC_TOP:()=>window&&window.truste&&"0"===window.truste.eu.bindMap.prefCookie,EVAL_TRUSTARC_FRAME_TEST:()=>window&&window.QueryString&&"0"===window.QueryString.preferences,EVAL_TRUSTARC_FRAME_GTM:()=>window&&window.QueryString&&"1"===window.QueryString.gtm,EVAL_ABC_TEST:()=>document.cookie.includes("trackingconsent"),EVAL_ADROLL_0:()=>!document.cookie.includes("__adroll_fpc"),EVAL_ALMACMP_0:()=>document.cookie.includes('"name":"Google","consent":false'),EVAL_AFFINITY_SERIF_COM_0:()=>document.cookie.includes("serif_manage_cookies_viewed")&&!document.cookie.includes("serif_allow_analytics"),EVAL_ARBEITSAGENTUR_TEST:()=>document.cookie.includes("cookie_consent=denied"),EVAL_AXEPTIO_0:()=>document.cookie.includes("axeptio_authorized_vendors=%2C%2C"),EVAL_BAHN_TEST:()=>1===utag.gdpr.getSelectedCategories().length,EVAL_BING_0:()=>document.cookie.includes("AL=0")&&document.cookie.includes("AD=0")&&document.cookie.includes("SM=0"),EVAL_BLOCKSY_0:()=>document.cookie.includes("blocksy_cookies_consent_accepted=no"),EVAL_BORLABS_0:()=>!JSON.parse(decodeURIComponent(document.cookie.split(";").find((e=>-1!==e.indexOf("borlabs-cookie"))).split("=",2)[1])).consents.statistics,EVAL_BUNDESREGIERUNG_DE_0:()=>document.cookie.match("cookie-allow-tracking=0"),EVAL_CANVA_0:()=>!document.cookie.includes("gtm_fpc_engagement_event"),EVAL_CC_BANNER2_0:()=>!!document.cookie.match(/sncc=[^;]+D%3Dtrue/),EVAL_CLICKIO_0:()=>document.cookie.includes("__lxG__consent__v2_daisybit="),EVAL_CLINCH_0:()=>document.cookie.includes("ctc_rejected=1"),EVAL_COOKIECONSENT2_TEST:()=>document.cookie.includes("cc_cookie="),EVAL_COOKIECONSENT3_TEST:()=>document.cookie.includes("cc_cookie="),EVAL_COINBASE_0:()=>JSON.parse(decodeURIComponent(document.cookie.match(/cm_(eu|default)_preferences=([0-9a-zA-Z\\{\\}\\[\\]%:]*);?/)[2])).consent.length<=1,EVAL_COMPLIANZ_BANNER_0:()=>document.cookie.includes("cmplz_banner-status=dismissed"),EVAL_COOKIE_LAW_INFO_0:()=>CLI.disableAllCookies()||CLI.reject_close()||!0,EVAL_COOKIE_LAW_INFO_1:()=>-1===document.cookie.indexOf("cookielawinfo-checkbox-non-necessary=yes"),EVAL_COOKIE_LAW_INFO_DETECT:()=>!!window.CLI,EVAL_COOKIE_MANAGER_POPUP_0:()=>!1===JSON.parse(document.cookie.split(";").find((e=>e.trim().startsWith("CookieLevel"))).split("=")[1]).social,EVAL_COOKIEALERT_0:()=>document.querySelector("body").removeAttribute("style")||!0,EVAL_COOKIEALERT_1:()=>document.querySelector("body").removeAttribute("style")||!0,EVAL_COOKIEALERT_2:()=>!0===window.CookieConsent.declined,EVAL_COOKIEFIRST_0:()=>{return!1===(e=JSON.parse(decodeURIComponent(document.cookie.split(";").find((e=>-1!==e.indexOf("cookiefirst"))).trim()).split("=")[1])).performance&&!1===e.functional&&!1===e.advertising;var e},EVAL_COOKIEFIRST_1:()=>document.querySelectorAll("button[data-cookiefirst-accent-color=true][role=checkbox]:not([disabled])").forEach((e=>"true"==e.getAttribute("aria-checked")&&e.click()))||!0,EVAL_COOKIEINFORMATION_0:()=>CookieInformation.declineAllCategories()||!0,EVAL_COOKIEINFORMATION_1:()=>CookieInformation.submitAllCategories()||!0,EVAL_COOKIEINFORMATION_2:()=>document.cookie.includes("CookieInformationConsent="),EVAL_COOKIEYES_0:()=>document.cookie.includes("advertisement:no"),EVAL_DAILYMOTION_0:()=>!!document.cookie.match("dm-euconsent-v2"),EVAL_DNDBEYOND_TEST:()=>document.cookie.includes("cookie-consent=denied"),EVAL_DSGVO_0:()=>!document.cookie.includes("sp_dsgvo_cookie_settings"),EVAL_DUNELM_0:()=>document.cookie.includes("cc_functional=0")&&document.cookie.includes("cc_targeting=0"),EVAL_ETSY_0:()=>document.querySelectorAll(".gdpr-overlay-body input").forEach((e=>{e.checked=!1}))||!0,EVAL_ETSY_1:()=>document.querySelector(".gdpr-overlay-view button[data-wt-overlay-close]").click()||!0,EVAL_EU_COOKIE_COMPLIANCE_0:()=>-1===document.cookie.indexOf("cookie-agreed=2"),EVAL_EU_COOKIE_LAW_0:()=>!document.cookie.includes("euCookie"),EVAL_EZOIC_0:()=>ezCMP.handleAcceptAllClick(),EVAL_EZOIC_1:()=>!!document.cookie.match(/ez-consent-tcf/),EVAL_FIDES_DETECT_POPUP:()=>window.Fides?.initialized,EVAL_GOOGLE_0:()=>!!document.cookie.match(/SOCS=CAE/),EVAL_HEMA_TEST_0:()=>document.cookie.includes("cookies_rejected=1"),EVAL_IUBENDA_0:()=>document.querySelectorAll(".purposes-item input[type=checkbox]:not([disabled])").forEach((e=>{e.checked&&e.click()}))||!0,EVAL_IUBENDA_1:()=>!!document.cookie.match(/_iub_cs-\d+=/),EVAL_IWINK_TEST:()=>document.cookie.includes("cookie_permission_granted=no"),EVAL_JQUERY_COOKIEBAR_0:()=>!document.cookie.includes("cookies-state=accepted"),EVAL_KETCH_TEST:()=>document.cookie.includes("_ketch_consent_v1_"),EVAL_MEDIAVINE_0:()=>document.querySelectorAll('[data-name="mediavine-gdpr-cmp"] input[type=checkbox]').forEach((e=>e.checked&&e.click()))||!0,EVAL_MICROSOFT_0:()=>Array.from(document.querySelectorAll("div > button")).filter((e=>e.innerText.match("Reject|Ablehnen")))[0].click()||!0,EVAL_MICROSOFT_1:()=>Array.from(document.querySelectorAll("div > button")).filter((e=>e.innerText.match("Accept|Annehmen")))[0].click()||!0,EVAL_MICROSOFT_2:()=>!!document.cookie.match("MSCC|GHCC"),EVAL_MOOVE_0:()=>document.querySelectorAll("#moove_gdpr_cookie_modal input").forEach((e=>{e.disabled||(e.checked="moove_gdpr_strict_cookies"===e.name||"moove_gdpr_strict_cookies"===e.id)}))||!0,EVAL_ONENINETWO_0:()=>document.cookie.includes("CC_ADVERTISING=NO")&&document.cookie.includes("CC_ANALYTICS=NO"),EVAL_OPERA_0:()=>document.cookie.includes("cookie_consent_essential=true")&&!document.cookie.includes("cookie_consent_marketing=true"),EVAL_PAYPAL_0:()=>!0===document.cookie.includes("cookie_prefs"),EVAL_PRIMEBOX_0:()=>!document.cookie.includes("cb-enabled=accepted"),EVAL_PUBTECH_0:()=>document.cookie.includes("euconsent-v2")&&(document.cookie.match(/.YAAAAAAAAAAA/)||document.cookie.match(/.aAAAAAAAAAAA/)||document.cookie.match(/.YAAACFgAAAAA/)),EVAL_REDDIT_0:()=>document.cookie.includes("eu_cookie={%22opted%22:true%2C%22nonessential%22:false}"),EVAL_ROBLOX_TEST:()=>document.cookie.includes("RBXcb"),EVAL_SIRDATA_UNBLOCK_SCROLL:()=>(document.documentElement.classList.forEach((e=>{e.startsWith("sd-cmp-")&&document.documentElement.classList.remove(e)})),!0),EVAL_SNIGEL_0:()=>!!document.cookie.match("snconsent"),EVAL_STEAMPOWERED_0:()=>2===JSON.parse(decodeURIComponent(document.cookie.split(";").find((e=>e.trim().startsWith("cookieSettings"))).split("=")[1])).preference_state,EVAL_SVT_TEST:()=>document.cookie.includes('cookie-consent-1={"optedIn":true,"functionality":false,"statistics":false}'),EVAL_TAKEALOT_0:()=>document.body.classList.remove("freeze")||(document.body.style="")||!0,EVAL_TARTEAUCITRON_0:()=>tarteaucitron.userInterface.respondAll(!1)||!0,EVAL_TARTEAUCITRON_1:()=>tarteaucitron.userInterface.respondAll(!0)||!0,EVAL_TARTEAUCITRON_2:()=>document.cookie.match(/tarteaucitron=[^;]*/)?.[0].includes("false"),EVAL_TAUNTON_TEST:()=>document.cookie.includes("taunton_user_consent_submitted=true"),EVAL_TEALIUM_0:()=>void 0!==window.utag&&"object"==typeof utag.gdpr,EVAL_TEALIUM_1:()=>utag.gdpr.setConsentValue(!1)||!0,EVAL_TEALIUM_DONOTSELL:()=>utag.gdpr.dns?.setDnsState(!1)||!0,EVAL_TEALIUM_2:()=>utag.gdpr.setConsentValue(!0)||!0,EVAL_TEALIUM_3:()=>1!==utag.gdpr.getConsentState(),EVAL_TEALIUM_DONOTSELL_CHECK:()=>1!==utag.gdpr.dns?.getDnsState(),EVAL_TESLA_TEST:()=>document.cookie.includes("tsla-cookie-consent=rejected"),EVAL_TESTCMP_0:()=>"button_clicked"===window.results.results[0],EVAL_TESTCMP_COSMETIC_0:()=>"banner_hidden"===window.results.results[0],EVAL_THEFREEDICTIONARY_0:()=>cmpUi.showPurposes()||cmpUi.rejectAll()||!0,EVAL_THEFREEDICTIONARY_1:()=>cmpUi.allowAll()||!0,EVAL_THEVERGE_0:()=>document.cookie.includes("_duet_gdpr_acknowledged=1"),EVAL_TWCC_TEST:()=>document.cookie.includes("twCookieConsent="),EVAL_UBUNTU_COM_0:()=>document.cookie.includes("_cookies_accepted=essential"),EVAL_UK_COOKIE_CONSENT_0:()=>!document.cookie.includes("catAccCookies"),EVAL_USERCENTRICS_API_0:()=>"object"==typeof UC_UI,EVAL_USERCENTRICS_API_1:()=>!!UC_UI.closeCMP(),EVAL_USERCENTRICS_API_2:()=>!!UC_UI.denyAllConsents(),EVAL_USERCENTRICS_API_3:()=>!!UC_UI.acceptAllConsents(),EVAL_USERCENTRICS_API_4:()=>!!UC_UI.closeCMP(),EVAL_USERCENTRICS_API_5:()=>!0===UC_UI.areAllConsentsAccepted(),EVAL_USERCENTRICS_API_6:()=>!1===UC_UI.areAllConsentsAccepted(),EVAL_USERCENTRICS_BUTTON_0:()=>JSON.parse(localStorage.getItem("usercentrics")).consents.every((e=>e.isEssential||!e.consentStatus)),EVAL_WAITROSE_0:()=>Array.from(document.querySelectorAll("label[id$=cookies-deny-label]")).forEach((e=>e.click()))||!0,EVAL_WAITROSE_1:()=>document.cookie.includes("wtr_cookies_advertising=0")&&document.cookie.includes("wtr_cookies_analytics=0"),EVAL_WP_COOKIE_NOTICE_0:()=>document.cookie.includes("wpl_viewed_cookie=no"),EVAL_XE_TEST:()=>document.cookie.includes("xeConsentState={%22performance%22:false%2C%22marketing%22:false%2C%22compliance%22:false}"),EVAL_XING_0:()=>document.cookie.includes("userConsent=%7B%22marketing%22%3Afalse"),EVAL_YOUTUBE_DESKTOP_0:()=>!!document.cookie.match(/SOCS=CAE/),EVAL_YOUTUBE_MOBILE_0:()=>!!document.cookie.match(/SOCS=CAE/)};var p={main:!0,frame:!1,urlPattern:""},d=class{constructor(e){this.runContext=p,this.autoconsent=e}get hasSelfTest(){throw new Error("Not Implemented")}get isIntermediate(){throw new Error("Not Implemented")}get isCosmetic(){throw new Error("Not Implemented")}mainWorldEval(e){const t=l[e];if(!t)return console.warn("Snippet not found",e),Promise.resolve(!1);const o=this.autoconsent.config.logs;if(this.autoconsent.config.isMainWorld){o.evals&&console.log("inline eval:",e,t);let i=!1;try{i=!!t.call(globalThis)}catch(t){o.evals&&console.error("error evaluating rule",e,t)}return Promise.resolve(i)}const i=`(${t.toString()})()`;return o.evals&&console.log("async eval:",e,i),function(e,t){const o=a();r.sendContentMessage({type:"eval",id:o,code:e,snippetId:t});const i=new s(o);return r.pending.set(i.id,i),i.promise}(i,e).catch((t=>(o.evals&&console.error("error evaluating rule",e,t),!1)))}checkRunContext(){const e={...p,...this.runContext},t=window.top===window;return!(t&&!e.main)&&(!(!t&&!e.frame)&&!(e.urlPattern&&!window.location.href.match(e.urlPattern)))}detectCmp(){throw new Error("Not Implemented")}async detectPopup(){return!1}optOut(){throw new Error("Not Implemented")}optIn(){throw new Error("Not Implemented")}openCmp(){throw new Error("Not Implemented")}async test(){return Promise.resolve(!0)}click(e,t=!1){return this.autoconsent.domActions.click(e,t)}elementExists(e){return this.autoconsent.domActions.elementExists(e)}elementVisible(e,t){return this.autoconsent.domActions.elementVisible(e,t)}waitForElement(e,t){return this.autoconsent.domActions.waitForElement(e,t)}waitForVisible(e,t,o){return this.autoconsent.domActions.waitForVisible(e,t,o)}waitForThenClick(e,t,o){return this.autoconsent.domActions.waitForThenClick(e,t,o)}wait(e){return this.autoconsent.domActions.wait(e)}hide(e,t){return this.autoconsent.domActions.hide(e,t)}prehide(e){return this.autoconsent.domActions.prehide(e)}undoPrehide(){return this.autoconsent.domActions.undoPrehide()}querySingleReplySelector(e,t){return this.autoconsent.domActions.querySingleReplySelector(e,t)}querySelectorChain(e){return this.autoconsent.domActions.querySelectorChain(e)}elementSelector(e){return this.autoconsent.domActions.elementSelector(e)}},u=class extends d{constructor(e,t){super(t),this.rule=e,this.name=e.name,this.runContext=e.runContext||p}get hasSelfTest(){return!!this.rule.test}get isIntermediate(){return!!this.rule.intermediate}get isCosmetic(){return!!this.rule.cosmetic}get prehideSelectors(){return this.rule.prehideSelectors}async detectCmp(){return!!this.rule.detectCmp&&this._runRulesParallel(this.rule.detectCmp)}async detectPopup(){return!!this.rule.detectPopup&&this._runRulesSequentially(this.rule.detectPopup)}async optOut(){const e=this.autoconsent.config.logs;return!!this.rule.optOut&&(e.lifecycle&&console.log("Initiated optOut()",this.rule.optOut),this._runRulesSequentially(this.rule.optOut))}async optIn(){const e=this.autoconsent.config.logs;return!!this.rule.optIn&&(e.lifecycle&&console.log("Initiated optIn()",this.rule.optIn),this._runRulesSequentially(this.rule.optIn))}async openCmp(){return!!this.rule.openCmp&&this._runRulesSequentially(this.rule.openCmp)}async test(){return this.hasSelfTest?this._runRulesSequentially(this.rule.test):super.test()}async evaluateRuleStep(e){const t=[],o=this.autoconsent.config.logs;if(e.exists&&t.push(this.elementExists(e.exists)),e.visible&&t.push(this.elementVisible(e.visible,e.check)),e.eval){const o=this.mainWorldEval(e.eval);t.push(o)}if(e.waitFor&&t.push(this.waitForElement(e.waitFor,e.timeout)),e.waitForVisible&&t.push(this.waitForVisible(e.waitForVisible,e.timeout,e.check)),e.click&&t.push(this.click(e.click,e.all)),e.waitForThenClick&&t.push(this.waitForThenClick(e.waitForThenClick,e.timeout,e.all)),e.wait&&t.push(this.wait(e.wait)),e.hide&&t.push(this.hide(e.hide,e.method)),e.if){if(!e.if.exists&&!e.if.visible)return console.error("invalid conditional rule",e.if),!1;const i=await this.evaluateRuleStep(e.if);o.rulesteps&&console.log("Condition is",i),i?t.push(this._runRulesSequentially(e.then)):e.else?t.push(this._runRulesSequentially(e.else)):t.push(!0)}if(e.any){for(const t of e.any)if(await this.evaluateRuleStep(t))return!0;return!1}if(0===t.length)return o.errors&&console.warn("Unrecognized rule",e),!1;return(await Promise.all(t)).reduce(((e,t)=>e&&t),!0)}async _runRulesParallel(e){const t=e.map((e=>this.evaluateRuleStep(e)));return(await Promise.all(t)).every((e=>!!e))}async _runRulesSequentially(e){const t=this.autoconsent.config.logs;for(const o of e){t.rulesteps&&console.log("Running rule...",o);const e=await this.evaluateRuleStep(o);if(t.rulesteps&&console.log("...rule result",e),!e&&!o.optional)return!1}return!0}},m=class{constructor(e,t){this.name=e,this.config=t,this.methods=new Map,this.runContext=p,this.isCosmetic=!1,t.methods.forEach((e=>{e.action&&this.methods.set(e.name,e.action)})),this.hasSelfTest=!1}get isIntermediate(){return!1}checkRunContext(){return!0}async detectCmp(){return this.config.detectors.map((e=>o(e.presentMatcher))).some((e=>!!e))}async detectPopup(){return this.config.detectors.map((e=>o(e.showingMatcher))).some((e=>!!e))}async executeAction(e,t){return!this.methods.has(e)||i(this.methods.get(e),t)}async optOut(){return await this.executeAction("HIDE_CMP"),await this.executeAction("OPEN_OPTIONS"),await this.executeAction("HIDE_CMP"),await this.executeAction("DO_CONSENT",[]),await this.executeAction("SAVE_CONSENT"),!0}async optIn(){return await this.executeAction("HIDE_CMP"),await this.executeAction("OPEN_OPTIONS"),await this.executeAction("HIDE_CMP"),await this.executeAction("DO_CONSENT",["D","A","B","E","F","X"]),await this.executeAction("SAVE_CONSENT"),!0}async openCmp(){return await this.executeAction("HIDE_CMP"),await this.executeAction("OPEN_OPTIONS"),!0}async test(){return!0}};function h(e="autoconsent-css-rules"){const t=`style#${e}`,o=document.querySelector(t);if(o&&o instanceof HTMLStyleElement)return o;{const t=document.head||document.getElementsByTagName("head")[0]||document.documentElement,o=document.createElement("style");return o.id=e,t.appendChild(o),o}}function k(e,t,o="display"){const i=`${t} { ${"opacity"===o?"opacity: 0":"display: none"} !important; z-index: -1 !important; pointer-events: none !important; } `;return e instanceof HTMLStyleElement&&(e.innerText+=i,t.length>0)}async function b(e,t,o){const i=await e();return!i&&t>0?new Promise((i=>{setTimeout((async()=>{i(b(e,t-1,o))}),o)})):Promise.resolve(i)}function _(e){if(!e)return!1;if(null!==e.offsetParent)return!0;{const t=window.getComputedStyle(e);if("fixed"===t.position&&"none"!==t.display)return!0}return!1}function g(e){const t={enabled:!0,autoAction:"optOut",disabledCmps:[],enablePrehide:!0,enableCosmeticRules:!0,detectRetries:20,isMainWorld:!1,prehideTimeout:2e3,logs:{lifecycle:!1,rulesteps:!1,evals:!1,errors:!0,messages:!1}},o=(i=t,globalThis.structuredClone?structuredClone(i):JSON.parse(JSON.stringify(i)));var i;for(const i of Object.keys(t))void 0!==e[i]&&(o[i]=e[i]);return o}var y="#truste-show-consent",w="#truste-consent-track",C=[class extends d{constructor(e){super(e),this.name="TrustArc-top",this.prehideSelectors=[".trustarc-banner-container",`.truste_popframe,.truste_overlay,.truste_box_overlay,${w}`],this.runContext={main:!0,frame:!1},this._shortcutButton=null,this._optInDone=!1}get hasSelfTest(){return!0}get isIntermediate(){return!this._optInDone&&!this._shortcutButton}get isCosmetic(){return!1}async detectCmp(){const e=this.elementExists(`${y},${w}`);return e&&(this._shortcutButton=document.querySelector("#truste-consent-required")),e}async detectPopup(){return this.elementVisible(`#truste-consent-content,#trustarc-banner-overlay,${w}`,"all")}openFrame(){this.click(y)}async optOut(){return this._shortcutButton?(this._shortcutButton.click(),!0):(k(h(),`.truste_popframe, .truste_overlay, .truste_box_overlay, ${w}`),this.click(y),setTimeout((()=>{h().remove()}),1e4),!0)}async optIn(){return this._optInDone=!0,this.click("#truste-consent-button")}async openCmp(){return!0}async test(){return await this.wait(500),await this.mainWorldEval("EVAL_TRUSTARC_TOP")}},class extends d{constructor(){super(...arguments),this.name="TrustArc-frame",this.runContext={main:!1,frame:!0,urlPattern:"^https://consent-pref\\.trustarc\\.com/\\?"}}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return!0}async detectPopup(){return this.elementVisible("#defaultpreferencemanager","any")&&this.elementVisible(".mainContent","any")}async navigateToSettings(){return await b((async()=>this.elementExists(".shp")||this.elementVisible(".advance","any")||this.elementExists(".switch span:first-child")),10,500),this.elementExists(".shp")&&this.click(".shp"),await this.waitForElement(".prefPanel",5e3),this.elementVisible(".advance","any")&&this.click(".advance"),await b((()=>this.elementVisible(".switch span:first-child","any")),5,1e3)}async optOut(){if(await this.mainWorldEval("EVAL_TRUSTARC_FRAME_TEST"))return!0;let e=3e3;return await this.mainWorldEval("EVAL_TRUSTARC_FRAME_GTM")&&(e=1500),await b((()=>"complete"===document.readyState),20,100),await this.waitForElement(".mainContent[aria-hidden=false]",e),!!this.click(".rejectAll")||(this.elementExists(".prefPanel")&&await this.waitForElement('.prefPanel[style="visibility: visible;"]',e),this.click("#catDetails0")?(this.click(".submit"),this.waitForThenClick("#gwt-debug-close_id",e),!0):this.click(".required")?(this.waitForThenClick("#gwt-debug-close_id",e),!0):(await this.navigateToSettings(),this.click(".switch span:nth-child(1):not(.active)",!0),this.click(".submit"),this.waitForThenClick("#gwt-debug-close_id",10*e),!0))}async optIn(){return this.click(".call")||(await this.navigateToSettings(),this.click(".switch span:nth-child(2)",!0),this.click(".submit"),this.waitForElement("#gwt-debug-close_id",3e5).then((()=>{this.click("#gwt-debug-close_id")}))),!0}async test(){return await this.wait(500),await this.mainWorldEval("EVAL_TRUSTARC_FRAME_TEST")}},class extends d{constructor(){super(...arguments),this.name="Cybotcookiebot",this.prehideSelectors=["#CybotCookiebotDialog,#CybotCookiebotDialogBodyUnderlay,#dtcookie-container,#cookiebanner,#cb-cookieoverlay,.modal--cookie-banner,#cookiebanner_outer,#CookieBanner"]}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return await this.mainWorldEval("EVAL_COOKIEBOT_1")}async detectPopup(){return this.mainWorldEval("EVAL_COOKIEBOT_2")}async optOut(){await this.wait(500);let e=await this.mainWorldEval("EVAL_COOKIEBOT_3");return await this.wait(500),e=e&&await this.mainWorldEval("EVAL_COOKIEBOT_4"),e}async optIn(){return this.elementExists("#dtcookie-container")?this.click(".h-dtcookie-accept"):(this.click(".CybotCookiebotDialogBodyLevelButton:not(:checked):enabled",!0),this.click("#CybotCookiebotDialogBodyLevelButtonAccept"),this.click("#CybotCookiebotDialogBodyButtonAccept"),!0)}async test(){return await this.wait(500),await this.mainWorldEval("EVAL_COOKIEBOT_5")}},class extends d{constructor(){super(...arguments),this.name="Sourcepoint-frame",this.prehideSelectors=["div[id^='sp_message_container_'],.message-overlay","#sp_privacy_manager_container"],this.ccpaNotice=!1,this.ccpaPopup=!1,this.runContext={main:!0,frame:!0}}get hasSelfTest(){return!1}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){const e=new URL(location.href);return e.searchParams.has("message_id")&&"ccpa-notice.sp-prod.net"===e.hostname?(this.ccpaNotice=!0,!0):"ccpa-pm.sp-prod.net"===e.hostname?(this.ccpaPopup=!0,!0):("/index.html"===e.pathname||"/privacy-manager/index.html"===e.pathname||"/ccpa_pm/index.html"===e.pathname)&&(e.searchParams.has("message_id")||e.searchParams.has("requestUUID")||e.searchParams.has("consentUUID"))}async detectPopup(){return!!this.ccpaNotice||(this.ccpaPopup?await this.waitForElement(".priv-save-btn",2e3):(await this.waitForElement(".sp_choice_type_11,.sp_choice_type_12,.sp_choice_type_13,.sp_choice_type_ACCEPT_ALL,.sp_choice_type_SAVE_AND_EXIT",2e3),!this.elementExists(".sp_choice_type_9")))}async optIn(){return await this.waitForElement(".sp_choice_type_11,.sp_choice_type_ACCEPT_ALL",2e3),!!this.click(".sp_choice_type_11")||!!this.click(".sp_choice_type_ACCEPT_ALL")}isManagerOpen(){return"/privacy-manager/index.html"===location.pathname||"/ccpa_pm/index.html"===location.pathname}async optOut(){const e=this.autoconsent.config.logs;if(this.ccpaPopup){const e=document.querySelectorAll(".priv-purpose-container .sp-switch-arrow-block a.neutral.on .right");for(const t of e)t.click();const t=document.querySelectorAll(".priv-purpose-container .sp-switch-arrow-block a.switch-bg.on");for(const e of t)e.click();return this.click(".priv-save-btn")}if(!this.isManagerOpen()){if(!await this.waitForElement(".sp_choice_type_12,.sp_choice_type_13"))return!1;if(!this.elementExists(".sp_choice_type_12"))return this.click(".sp_choice_type_13");this.click(".sp_choice_type_12"),await b((()=>this.isManagerOpen()),200,100)}await this.waitForElement(".type-modal",2e4),this.waitForThenClick(".ccpa-stack .pm-switch[aria-checked=true] .slider",500,!0);try{const e=".sp_choice_type_REJECT_ALL",t=".reject-toggle",o=await Promise.race([this.waitForElement(e,2e3).then((e=>e?0:-1)),this.waitForElement(t,2e3).then((e=>e?1:-1)),this.waitForElement(".pm-features",2e3).then((e=>e?2:-1))]);if(0===o)return await this.wait(1500),this.click(e);1===o?this.click(t):2===o&&(await this.waitForElement(".pm-features",1e4),this.click(".checked > span",!0),this.click(".chevron"))}catch(t){e.errors&&console.warn(t)}return this.click(".sp_choice_type_SAVE_AND_EXIT")}},class extends d{constructor(){super(...arguments),this.name="consentmanager.net",this.prehideSelectors=["#cmpbox,#cmpbox2"],this.apiAvailable=!1}get hasSelfTest(){return this.apiAvailable}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.apiAvailable=await this.mainWorldEval("EVAL_CONSENTMANAGER_1"),!!this.apiAvailable||this.elementExists("#cmpbox")}async detectPopup(){return this.apiAvailable?(await this.wait(500),await this.mainWorldEval("EVAL_CONSENTMANAGER_2")):this.elementVisible("#cmpbox .cmpmore","any")}async optOut(){return await this.wait(500),this.apiAvailable?await this.mainWorldEval("EVAL_CONSENTMANAGER_3"):!!this.click(".cmpboxbtnno")||(this.elementExists(".cmpwelcomeprpsbtn")?(this.click(".cmpwelcomeprpsbtn > a[aria-checked=true]",!0),this.click(".cmpboxbtnsave"),!0):(this.click(".cmpboxbtncustom"),await this.waitForElement(".cmptblbox",2e3),this.click(".cmptdchoice > a[aria-checked=true]",!0),this.click(".cmpboxbtnyescustomchoices"),this.hide("#cmpwrapper,#cmpbox","display"),!0))}async optIn(){return this.apiAvailable?await this.mainWorldEval("EVAL_CONSENTMANAGER_4"):this.click(".cmpboxbtnyes")}async test(){if(this.apiAvailable)return await this.mainWorldEval("EVAL_CONSENTMANAGER_5")}},class extends d{constructor(){super(...arguments),this.name="Evidon"}get hasSelfTest(){return!1}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists("#_evidon_banner")}async detectPopup(){return this.elementVisible("#_evidon_banner","any")}async optOut(){return this.click("#_evidon-decline-button")||(k(h(),"#evidon-prefdiag-overlay,#evidon-prefdiag-background,#_evidon-background"),await this.waitForThenClick("#_evidon-option-button"),await this.waitForElement("#evidon-prefdiag-overlay",5e3),await this.wait(500),await this.waitForThenClick("#evidon-prefdiag-decline")),!0}async optIn(){return this.click("#_evidon-accept-button")}},class extends d{constructor(){super(...arguments),this.name="Onetrust",this.prehideSelectors=["#onetrust-banner-sdk,#onetrust-consent-sdk,.onetrust-pc-dark-filter,.js-consent-banner"],this.runContext={urlPattern:"^(?!.*https://www\\.nba\\.com/)"}}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists("#onetrust-banner-sdk,#onetrust-pc-sdk")}async detectPopup(){return this.elementVisible("#onetrust-banner-sdk,#onetrust-pc-sdk","any")}async optOut(){return this.elementVisible("#onetrust-reject-all-handler,.ot-pc-refuse-all-handler,.js-reject-cookies","any")?this.click("#onetrust-reject-all-handler,.ot-pc-refuse-all-handler,.js-reject-cookies"):(this.elementExists("#onetrust-pc-btn-handler")?this.click("#onetrust-pc-btn-handler"):this.click(".ot-sdk-show-settings,button.js-cookie-settings"),await this.waitForElement("#onetrust-consent-sdk",2e3),await this.wait(1e3),this.click("#onetrust-consent-sdk input.category-switch-handler:checked,.js-editor-toggle-state:checked",!0),await this.wait(1e3),await this.waitForElement(".save-preference-btn-handler,.js-consent-save",2e3),this.click(".save-preference-btn-handler,.js-consent-save"),await this.waitForVisible("#onetrust-banner-sdk",5e3,"none"),!0)}async optIn(){return this.click("#onetrust-accept-btn-handler,#accept-recommended-btn-handler,.js-accept-cookies")}async test(){return await b((()=>this.mainWorldEval("EVAL_ONETRUST_1")),10,500)}},class extends d{constructor(){super(...arguments),this.name="Klaro",this.prehideSelectors=[".klaro"],this.settingsOpen=!1}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists(".klaro > .cookie-modal")?(this.settingsOpen=!0,!0):this.elementExists(".klaro > .cookie-notice")}async detectPopup(){return this.elementVisible(".klaro > .cookie-notice,.klaro > .cookie-modal","any")}async optOut(){return!!await this.mainWorldEval("EVAL_KLARO_TRY_API_OPT_OUT")||(!!this.click(".klaro .cn-decline")||(await this.mainWorldEval("EVAL_KLARO_OPEN_POPUP"),!!this.click(".klaro .cn-decline")||(this.click(".cm-purpose:not(.cm-toggle-all) > input:not(.half-checked,.required,.only-required),.cm-purpose:not(.cm-toggle-all) > div > input:not(.half-checked,.required,.only-required)",!0),this.click(".cm-btn-accept,.cm-button"))))}async optIn(){return!!this.click(".klaro .cm-btn-accept-all")||(this.settingsOpen?(this.click(".cm-purpose:not(.cm-toggle-all) > input.half-checked",!0),this.click(".cm-btn-accept")):this.click(".klaro .cookie-notice .cm-btn-success"))}async test(){return await this.mainWorldEval("EVAL_KLARO_1")}},class extends d{constructor(){super(...arguments),this.name="Uniconsent"}get prehideSelectors(){return[".unic",".modal:has(.unic)"]}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists(".unic .unic-box,.unic .unic-bar,.unic .unic-modal")}async detectPopup(){return this.elementVisible(".unic .unic-box,.unic .unic-bar,.unic .unic-modal","any")}async optOut(){if(await this.waitForElement(".unic button",1e3),document.querySelectorAll(".unic button").forEach((e=>{const t=e.textContent;(t.includes("Manage Options")||t.includes("Optionen verwalten"))&&e.click()})),await this.waitForElement(".unic input[type=checkbox]",1e3)){await this.waitForElement(".unic button",1e3),document.querySelectorAll(".unic input[type=checkbox]").forEach((e=>{e.checked&&e.click()}));for(const e of document.querySelectorAll(".unic button")){const t=e.textContent;for(const o of["Confirm Choices","Save Choices","Auswahl speichern"])if(t.includes(o))return e.click(),await this.wait(500),!0}}return!1}async optIn(){return this.waitForThenClick(".unic #unic-agree")}async test(){await this.wait(1e3);return!this.elementExists(".unic .unic-box,.unic .unic-bar")}},class extends d{constructor(){super(...arguments),this.prehideSelectors=[".cmp-root"],this.name="Conversant"}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists(".cmp-root .cmp-receptacle")}async detectPopup(){return this.elementVisible(".cmp-root .cmp-receptacle","any")}async optOut(){if(!await this.waitForThenClick(".cmp-main-button:not(.cmp-main-button--primary)"))return!1;if(!await this.waitForElement(".cmp-view-tab-tabs"))return!1;await this.waitForThenClick(".cmp-view-tab-tabs > :first-child"),await this.waitForThenClick(".cmp-view-tab-tabs > .cmp-view-tab--active:first-child");for(const e of Array.from(document.querySelectorAll(".cmp-accordion-item"))){e.querySelector(".cmp-accordion-item-title").click(),await b((()=>!!e.querySelector(".cmp-accordion-item-content.cmp-active")),10,50);const t=e.querySelector(".cmp-accordion-item-content.cmp-active");t.querySelectorAll(".cmp-toggle-actions .cmp-toggle-deny:not(.cmp-toggle-deny--active)").forEach((e=>e.click())),t.querySelectorAll(".cmp-toggle-actions .cmp-toggle-checkbox:not(.cmp-toggle-checkbox--active)").forEach((e=>e.click()))}return await this.click(".cmp-main-button:not(.cmp-main-button--primary)"),!0}async optIn(){return this.waitForThenClick(".cmp-main-button.cmp-main-button--primary")}async test(){return document.cookie.includes("cmp-data=0")}},class extends d{constructor(){super(...arguments),this.name="tiktok.com",this.runContext={urlPattern:"tiktok"}}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}getShadowRoot(){const e=document.querySelector("tiktok-cookie-banner");return e?e.shadowRoot:null}async detectCmp(){return this.elementExists("tiktok-cookie-banner")}async detectPopup(){return _(this.getShadowRoot().querySelector(".tiktok-cookie-banner"))}async optOut(){const e=this.autoconsent.config.logs,t=this.getShadowRoot().querySelector(".button-wrapper button:first-child");return t?(e.rulesteps&&console.log("[clicking]",t),t.click(),!0):(e.errors&&console.log("no decline button found"),!1)}async optIn(){const e=this.autoconsent.config.logs,t=this.getShadowRoot().querySelector(".button-wrapper button:last-child");return t?(e.rulesteps&&console.log("[clicking]",t),t.click(),!0):(e.errors&&console.log("no accept button found"),!1)}async test(){const e=document.cookie.match(/cookie-consent=([^;]+)/);if(!e)return!1;const t=JSON.parse(decodeURIComponent(e[1]));return Object.values(t).every((e=>"boolean"!=typeof e||!1===e))}},class extends d{constructor(){super(...arguments),this.runContext={urlPattern:"^https://(www\\.)?airbnb\\.[^/]+/"},this.prehideSelectors=["div[data-testid=main-cookies-banner-container]",'div:has(> div:first-child):has(> div:last-child):has(> section [data-testid="strictly-necessary-cookies"])']}get hasSelfTest(){return!0}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists("div[data-testid=main-cookies-banner-container]")}async detectPopup(){return this.elementVisible("div[data-testid=main-cookies-banner-container","any")}async optOut(){let e;for(await this.waitForThenClick("div[data-testid=main-cookies-banner-container] button._snbhip0");e=document.querySelector("[data-testid=modal-container] button[aria-checked=true]:not([disabled])");)e.click();return this.waitForThenClick("button[data-testid=save-btn]")}async optIn(){return this.waitForThenClick("div[data-testid=main-cookies-banner-container] button._148dgdpk")}async test(){return await b((()=>!!document.cookie.match("OptanonAlertBoxClosed")),20,200)}},class extends d{constructor(){super(...arguments),this.name="tumblr-com",this.runContext={urlPattern:"^https://(www\\.)?tumblr\\.com/"}}get hasSelfTest(){return!1}get isIntermediate(){return!1}get isCosmetic(){return!1}get prehideSelectors(){return["#cmp-app-container"]}async detectCmp(){return this.elementExists("#cmp-app-container")}async detectPopup(){return this.elementVisible("#cmp-app-container","any")}async optOut(){let e=document.querySelector("#cmp-app-container iframe"),t=e.contentDocument?.querySelector(".cmp-components-button.is-secondary");return!!t&&(t.click(),await b((()=>{const e=document.querySelector("#cmp-app-container iframe");return!!e.contentDocument?.querySelector(".cmp__dialog input")}),5,500),e=document.querySelector("#cmp-app-container iframe"),t=e.contentDocument?.querySelector(".cmp-components-button.is-secondary"),!!t&&(t.click(),!0))}async optIn(){const e=document.querySelector("#cmp-app-container iframe").contentDocument.querySelector(".cmp-components-button.is-primary");return!!e&&(e.click(),!0)}},class extends d{constructor(){super(...arguments),this.name="Admiral"}get hasSelfTest(){return!1}get isIntermediate(){return!1}get isCosmetic(){return!1}async detectCmp(){return this.elementExists("div > div[class*=Card] > div[class*=Frame] > div[class*=Pills] > button[class*=Pills__StyledPill]")}async detectPopup(){return this.elementVisible("div > div[class*=Card] > div[class*=Frame] > div[class*=Pills] > button[class*=Pills__StyledPill]","any")}async optOut(){const e="xpath///button[contains(., 'Afvis alle') or contains(., 'Reject all') or contains(., 'Odbaci sve') or contains(., 'Rechazar todo') or contains(., 'Atmesti visus') or contains(., 'Odmítnout vše') or contains(., 'Απόρριψη όλων') or contains(., 'Rejeitar tudo') or contains(., 'Tümünü reddet') or contains(., 'Отклонить все') or contains(., 'Noraidīt visu') or contains(., 'Avvisa alla') or contains(., 'Odrzuć wszystkie') or contains(., 'Alles afwijzen') or contains(., 'Отхвърляне на всички') or contains(., 'Rifiuta tutto') or contains(., 'Zavrni vse') or contains(., 'Az összes elutasítása') or contains(., 'Respingeți tot') or contains(., 'Alles ablehnen') or contains(., 'Tout rejeter') or contains(., 'Odmietnuť všetko') or contains(., 'Lükka kõik tagasi') or contains(., 'Hylkää kaikki')]";if(await this.waitForElement(e,500))return this.click(e);const t="xpath///button[contains(., 'Spara & avsluta') or contains(., 'Save & exit') or contains(., 'Uložit a ukončit') or contains(., 'Enregistrer et quitter') or contains(., 'Speichern & Verlassen') or contains(., 'Tallenna ja poistu') or contains(., 'Išsaugoti ir išeiti') or contains(., 'Opslaan & afsluiten') or contains(., 'Guardar y salir') or contains(., 'Shrani in zapri') or contains(., 'Uložiť a ukončiť') or contains(., 'Kaydet ve çıkış yap') or contains(., 'Сохранить и выйти') or contains(., 'Salvesta ja välju') or contains(., 'Salva ed esci') or contains(., 'Gem & afslut') or contains(., 'Αποθήκευση και έξοδος') or contains(., 'Saglabāt un iziet') or contains(., 'Mentés és kilépés') or contains(., 'Guardar e sair') or contains(., 'Zapisz & zakończ') or contains(., 'Salvare și ieșire') or contains(., 'Spremi i izađi') or contains(., 'Запазване и изход')]";if(await this.waitForThenClick("xpath///button[contains(., 'Zwecke') or contains(., 'Σκοποί') or contains(., 'Purposes') or contains(., 'Цели') or contains(., 'Eesmärgid') or contains(., 'Tikslai') or contains(., 'Svrhe') or contains(., 'Cele') or contains(., 'Účely') or contains(., 'Finalidades') or contains(., 'Mērķi') or contains(., 'Scopuri') or contains(., 'Fines') or contains(., 'Ändamål') or contains(., 'Finalités') or contains(., 'Doeleinden') or contains(., 'Tarkoitukset') or contains(., 'Scopi') or contains(., 'Amaçlar') or contains(., 'Nameni') or contains(., 'Célok') or contains(., 'Formål')]")&&await this.waitForVisible(t)){return this.elementSelector(t)[0].parentElement.parentElement.querySelectorAll("input[type=checkbox]:checked").forEach((e=>e.click())),this.click(t)}return!1}async optIn(){return this.click("xpath///button[contains(., 'Sprejmi vse') or contains(., 'Prihvati sve') or contains(., 'Godkänn alla') or contains(., 'Prijať všetko') or contains(., 'Принять все') or contains(., 'Aceptar todo') or contains(., 'Αποδοχή όλων') or contains(., 'Zaakceptuj wszystkie') or contains(., 'Accetta tutto') or contains(., 'Priimti visus') or contains(., 'Pieņemt visu') or contains(., 'Tümünü kabul et') or contains(., 'Az összes elfogadása') or contains(., 'Accept all') or contains(., 'Приемане на всички') or contains(., 'Accepter alle') or contains(., 'Hyväksy kaikki') or contains(., 'Tout accepter') or contains(., 'Alles accepteren') or contains(., 'Aktsepteeri kõik') or contains(., 'Přijmout vše') or contains(., 'Alles akzeptieren') or contains(., 'Aceitar tudo') or contains(., 'Acceptați tot')]")}}],v=class{constructor(e){this.autoconsentInstance=e}click(e,t=!1){const o=this.elementSelector(e);return this.autoconsentInstance.config.logs.rulesteps&&console.log("[click]",e,t,o),o.length>0&&(t?o.forEach((e=>e.click())):o[0].click()),o.length>0}elementExists(e){return this.elementSelector(e).length>0}elementVisible(e,t){const o=this.elementSelector(e),i=new Array(o.length);return o.forEach(((e,t)=>{i[t]=_(e)})),"none"===t?i.every((e=>!e)):0!==i.length&&("any"===t?i.some((e=>e)):i.every((e=>e)))}waitForElement(e,t=1e4){const o=Math.ceil(t/200);return this.autoconsentInstance.config.logs.rulesteps&&console.log("[waitForElement]",e),b((()=>this.elementSelector(e).length>0),o,200)}waitForVisible(e,t=1e4,o="any"){return b((()=>this.elementVisible(e,o)),Math.ceil(t/200),200)}async waitForThenClick(e,t=1e4,o=!1){return await this.waitForElement(e,t),this.click(e,o)}wait(e){return new Promise((t=>{setTimeout((()=>{t(!0)}),e)}))}hide(e,t){return k(h(),e,t)}prehide(e){const t=h("autoconsent-prehide");return this.autoconsentInstance.config.logs.lifecycle&&console.log("[prehide]",t,location.href),k(t,e,"opacity")}undoPrehide(){const e=h("autoconsent-prehide");return this.autoconsentInstance.config.logs.lifecycle&&console.log("[undoprehide]",e,location.href),e&&e.remove(),!!e}querySingleReplySelector(e,t=document){if(e.startsWith("aria/"))return[];if(e.startsWith("xpath/")){const o=e.slice(6),i=document.evaluate(o,t,null,XPathResult.ANY_TYPE,null);let c=null;const n=[];for(;c=i.iterateNext();)n.push(c);return n}return e.startsWith("text/")||e.startsWith("pierce/")?[]:t.shadowRoot?Array.from(t.shadowRoot.querySelectorAll(e)):Array.from(t.querySelectorAll(e))}querySelectorChain(e){let t,o=document;for(const i of e){if(t=this.querySingleReplySelector(i,o),0===t.length)return[];o=t[0]}return t}elementSelector(e){return"string"==typeof e?this.querySingleReplySelector(e):this.querySelectorChain(e)}};var f=[{name:"192.com",detectCmp:[{exists:".ont-cookies"}],detectPopup:[{visible:".ont-cookies"}],optIn:[{click:".ont-btn-main.ont-cookies-btn.js-ont-btn-ok2"}],optOut:[{click:".ont-cookes-btn-manage"},{click:".ont-btn-main.ont-cookies-btn.js-ont-btn-choose"}],test:[{eval:"EVAL_ONENINETWO_0"}]},{name:"1password-com",cosmetic:!0,prehideSelectors:['footer #footer-root [aria-label="Cookie Consent"]'],detectCmp:[{exists:'footer #footer-root [aria-label="Cookie Consent"]'}],detectPopup:[{visible:'footer #footer-root [aria-label="Cookie Consent"]'}],optIn:[{click:'footer #footer-root [aria-label="Cookie Consent"] button'}],optOut:[{hide:'footer #footer-root [aria-label="Cookie Consent"]'}]},{name:"aa",vendorUrl:"https://aa.com",prehideSelectors:[],cosmetic:!0,detectCmp:[{exists:"#aa_optoutmulti-Modal,#cookieBannerMessage"}],detectPopup:[{visible:"#aa_optoutmulti-Modal,#cookieBannerMessage"}],optIn:[{hide:"#aa_optoutmulti-Modal,#cookieBannerMessage"},{waitForThenClick:"#aa_optoutmulti_checkBox"},{waitForThenClick:"#aa_optoutmulti-Modal button.optoutmulti_button"}],optOut:[{hide:"#aa_optoutmulti-Modal,#cookieBannerMessage"}]},{name:"abc",vendorUrl:"https://abc.net.au",runContext:{urlPattern:"^https://([a-z0-9-]+\\.)?abc\\.net\\.au/"},prehideSelectors:[],detectCmp:[{exists:"[data-component=CookieBanner]"}],detectPopup:[{visible:"[data-component=CookieBanner] [data-component=CookieBanner_AcceptAll]"}],optIn:[{waitForThenClick:"[data-component=CookieBanner] [data-component=CookieBanner_AcceptAll]"}],optOut:[{waitForThenClick:"[data-component=CookieBanner] [data-component=CookieBanner_AcceptABCRequired]"}],test:[{eval:"EVAL_ABC_TEST"}]},{name:"abconcerts.be",vendorUrl:"https://unknown",intermediate:!1,prehideSelectors:["dialog.cookie-consent"],detectCmp:[{exists:"dialog.cookie-consent form.cookie-consent__form"}],detectPopup:[{visible:"dialog.cookie-consent form.cookie-consent__form"}],optIn:[{waitForThenClick:"dialog.cookie-consent form.cookie-consent__form button[value=yes]"}],optOut:[{if:{exists:"dialog.cookie-consent form.cookie-consent__form button[value=no]"},then:[{click:"dialog.cookie-consent form.cookie-consent__form button[value=no]"}],else:[{click:"dialog.cookie-consent form.cookie-consent__form button.cookie-consent__options-toggle"},{waitForThenClick:'dialog.cookie-consent form.cookie-consent__form button[value="save_options"]'}]}]},{name:"acris",prehideSelectors:["div.acris-cookie-consent"],detectCmp:[{exists:"[data-acris-cookie-consent]"}],detectPopup:[{visible:".acris-cookie-consent.is--modal"}],optIn:[{waitForVisible:"#ccConsentAcceptAllButton",check:"any"},{wait:500},{waitForThenClick:"#ccConsentAcceptAllButton"}],optOut:[{waitForVisible:"#ccAcceptOnlyFunctional",check:"any"},{wait:500},{waitForThenClick:"#ccAcceptOnlyFunctional"}]},{name:"activobank.pt",runContext:{urlPattern:"^https://(www\\.)?activobank\\.pt"},prehideSelectors:["aside#cookies,.overlay-cookies"],detectCmp:[{exists:"#cookies .cookies-btn"}],detectPopup:[{visible:"#cookies #submitCookies"}],optIn:[{waitForThenClick:"#cookies #submitCookies"}],optOut:[{waitForThenClick:"#cookies #rejectCookies"}]},{name:"Adroll",prehideSelectors:["#adroll_consent_container"],detectCmp:[{exists:"#adroll_consent_container"}],detectPopup:[{visible:"#adroll_consent_container"}],optIn:[{waitForThenClick:"#adroll_consent_accept"}],optOut:[{waitForThenClick:"#adroll_consent_reject"}],test:[{eval:"EVAL_ADROLL_0"}]},{name:"affinity.serif.com",detectCmp:[{exists:".c-cookie-banner button[data-qa='allow-all-cookies']"}],detectPopup:[{visible:".c-cookie-banner"}],optIn:[{click:'button[data-qa="allow-all-cookies"]'}],optOut:[{click:'button[data-qa="manage-cookies"]'},{waitFor:'.c-cookie-banner ~ [role="dialog"]'},{waitForThenClick:'.c-cookie-banner ~ [role="dialog"] input[type="checkbox"][value="true"]',all:!0},{click:'.c-cookie-banner ~ [role="dialog"] .c-modal__action button'}],test:[{wait:500},{eval:"EVAL_AFFINITY_SERIF_COM_0"}]},{name:"agolde.com",cosmetic:!0,prehideSelectors:["#modal-1 div[data-micromodal-close]"],detectCmp:[{exists:"#modal-1 div[aria-labelledby=modal-1-title]"}],detectPopup:[{exists:"#modal-1 div[data-micromodal-close]"}],optIn:[{click:'button[aria-label="Close modal"]'}],optOut:[{hide:"#modal-1 div[data-micromodal-close]"}]},{name:"aliexpress",vendorUrl:"https://aliexpress.com/",runContext:{urlPattern:"^https://.*\\.aliexpress\\.com/"},prehideSelectors:["#gdpr-new-container"],detectCmp:[{exists:"#gdpr-new-container,#voyager-gdpr > div"}],detectPopup:[{visible:"#gdpr-new-container,#voyager-gdpr > div"}],optIn:[{waitForThenClick:"#gdpr-new-container .btn-accept,#voyager-gdpr > div > div > button:nth-child(1)"}],optOut:[{if:{exists:"#voyager-gdpr > div"},then:[{waitForThenClick:"#voyager-gdpr > div > div > button:nth-child(2)"}],else:[{waitForThenClick:"#gdpr-new-container .btn-more"},{waitFor:"#gdpr-new-container .gdpr-dialog-switcher"},{click:"#gdpr-new-container .switcher-on",all:!0,optional:!0},{click:"#gdpr-new-container .btn-save"}]}]},{name:"almacmp",prehideSelectors:["#alma-cmpv2-container"],detectCmp:[{exists:"#alma-cmpv2-container"}],detectPopup:[{visible:"#alma-cmpv2-container #almacmp-modal-layer1"}],optIn:[{waitForThenClick:"#alma-cmpv2-container #almacmp-modal-layer1 #almacmp-modalConfirmBtn"}],optOut:[{waitForThenClick:"#alma-cmpv2-container #almacmp-modal-layer1 #almacmp-modalSettingBtn"},{waitFor:"#alma-cmpv2-container #almacmp-modal-layer2"},{waitForThenClick:"#alma-cmpv2-container #almacmp-modal-layer2 #almacmp-reject-all-layer2"}],test:[{eval:"EVAL_ALMACMP_0"}]},{name:"altium.com",cosmetic:!0,prehideSelectors:[".altium-privacy-bar"],detectCmp:[{exists:".altium-privacy-bar"}],detectPopup:[{exists:".altium-privacy-bar"}],optIn:[{click:"a.altium-privacy-bar__btn"}],optOut:[{hide:".altium-privacy-bar"}]},{name:"amazon.com",prehideSelectors:['span[data-action="sp-cc"][data-sp-cc*="rejectAllAction"]'],detectCmp:[{exists:'span[data-action="sp-cc"][data-sp-cc*="rejectAllAction"]'}],detectPopup:[{visible:'span[data-action="sp-cc"][data-sp-cc*="rejectAllAction"]'}],optIn:[{waitForVisible:"#sp-cc-accept"},{wait:500},{click:"#sp-cc-accept"}],optOut:[{waitForVisible:"#sp-cc-rejectall-link"},{wait:500},{click:"#sp-cc-rejectall-link"}]},{name:"aquasana.com",prehideSelectors:["#consent-tracking"],detectCmp:[{exists:"#consent-tracking"}],detectPopup:[{exists:"#consent-tracking"}],optIn:[{waitForThenClick:"#consent-tracking .affirm.btn"}],optOut:[{if:{exists:"#consent-tracking .decline.btn"},then:[{click:"#consent-tracking .decline.btn"}],else:[{hide:"#consent-tracking"}]}]},{name:"arbeitsagentur",vendorUrl:"https://www.arbeitsagentur.de/",prehideSelectors:[".modal-open bahf-cookie-disclaimer-dpl3"],detectCmp:[{exists:"bahf-cookie-disclaimer-dpl3"}],detectPopup:[{visible:"bahf-cookie-disclaimer-dpl3"}],optIn:[{waitForThenClick:["bahf-cookie-disclaimer-dpl3","bahf-cd-modal-dpl3 .ba-btn-primary"]}],optOut:[{waitForThenClick:["bahf-cookie-disclaimer-dpl3","bahf-cd-modal-dpl3 .ba-btn-contrast"]}],test:[{eval:"EVAL_ARBEITSAGENTUR_TEST"}]},{name:"asus",vendorUrl:"https://www.asus.com/",runContext:{urlPattern:"^https://www\\.asus\\.com/"},prehideSelectors:["#cookie-policy-info,#cookie-policy-info-bg"],detectCmp:[{exists:"#cookie-policy-info"}],detectPopup:[{visible:"#cookie-policy-info"}],optIn:[{waitForThenClick:'#cookie-policy-info [data-agree="Accept Cookies"]'}],optOut:[{if:{exists:"#cookie-policy-info .btn-reject"},then:[{waitForThenClick:"#cookie-policy-info .btn-reject"}],else:[{waitForThenClick:"#cookie-policy-info .btn-setting"},{waitForThenClick:'#cookie-policy-lightbox-wrapper [data-agree="Save Settings"]'}]}]},{name:"athlinks-com",runContext:{urlPattern:"^https://(www\\.)?athlinks\\.com/"},cosmetic:!0,prehideSelectors:["#footer-container ~ div"],detectCmp:[{exists:"#footer-container ~ div"}],detectPopup:[{visible:"#footer-container > div"}],optIn:[{click:"#footer-container ~ div button"}],optOut:[{hide:"#footer-container ~ div"}]},{name:"ausopen.com",cosmetic:!0,detectCmp:[{exists:".gdpr-popup__message"}],detectPopup:[{visible:".gdpr-popup__message"}],optOut:[{hide:".gdpr-popup__message"}],optIn:[{click:".gdpr-popup__message button"}]},{name:"automattic-cmp-optout",prehideSelectors:['form[class*="cookie-banner"][method="post"]'],detectCmp:[{exists:'form[class*="cookie-banner"][method="post"]'}],detectPopup:[{visible:'form[class*="cookie-banner"][method="post"]'}],optIn:[{click:'a[class*="accept-all-button"]'}],optOut:[{click:'form[class*="cookie-banner"] div[class*="simple-options"] a[class*="customize-button"]'},{waitForThenClick:"input[type=checkbox][checked]:not([disabled])",all:!0},{click:'a[class*="accept-selection-button"]'}]},{name:"aws.amazon.com",prehideSelectors:["#awsccc-cb-content","#awsccc-cs-container","#awsccc-cs-modalOverlay","#awsccc-cs-container-inner"],detectCmp:[{exists:"#awsccc-cb-content"}],detectPopup:[{visible:"#awsccc-cb-content"}],optIn:[{click:"button[data-id=awsccc-cb-btn-accept"}],optOut:[{click:"button[data-id=awsccc-cb-btn-customize]"},{waitFor:"input[aria-checked]"},{click:"input[aria-checked=true]",all:!0,optional:!0},{click:"button[data-id=awsccc-cs-btn-save]"}]},{name:"axeptio",prehideSelectors:[".axeptio_widget"],detectCmp:[{exists:".axeptio_widget"}],detectPopup:[{visible:".axeptio_widget"}],optIn:[{waitFor:".axeptio-widget--open"},{click:"button#axeptio_btn_acceptAll"}],optOut:[{waitFor:".axeptio-widget--open"},{click:"button#axeptio_btn_dismiss"}],test:[{eval:"EVAL_AXEPTIO_0"}]},{name:"baden-wuerttemberg.de",prehideSelectors:[".cookie-alert.t-dark"],cosmetic:!0,detectCmp:[{exists:".cookie-alert.t-dark"}],detectPopup:[{visible:".cookie-alert.t-dark"}],optIn:[{click:".cookie-alert__form input:not([disabled]):not([checked])"},{click:".cookie-alert__button button"}],optOut:[{hide:".cookie-alert.t-dark"}]},{name:"bahn-de",vendorUrl:"https://www.bahn.de/",cosmetic:!1,runContext:{main:!0,frame:!1,urlPattern:"^https://(www\\.)?bahn\\.de/"},intermediate:!1,prehideSelectors:[],detectCmp:[{exists:["body > div:first-child","#consent-layer"]}],detectPopup:[{visible:["body > div:first-child","#consent-layer"]}],optIn:[{waitForThenClick:["body > div:first-child","#consent-layer .js-accept-all-cookies"]}],optOut:[{waitForThenClick:["body > div:first-child","#consent-layer .js-accept-essential-cookies"]}],test:[{eval:"EVAL_BAHN_TEST"}]},{name:"bbb.org",runContext:{urlPattern:"^https://www\\.bbb\\.org/"},cosmetic:!0,prehideSelectors:['div[aria-label="use of cookies on bbb.org"]'],detectCmp:[{exists:'div[aria-label="use of cookies on bbb.org"]'}],detectPopup:[{visible:'div[aria-label="use of cookies on bbb.org"]'}],optIn:[{click:'div[aria-label="use of cookies on bbb.org"] button.bds-button-unstyled span.visually-hidden'}],optOut:[{hide:'div[aria-label="use of cookies on bbb.org"]'}]},{name:"bing.com",prehideSelectors:["#bnp_container"],detectCmp:[{exists:"#bnp_cookie_banner"}],detectPopup:[{visible:"#bnp_cookie_banner"}],optIn:[{click:"#bnp_btn_accept"}],optOut:[{click:"#bnp_btn_preference"},{click:"#mcp_savesettings"}],test:[{eval:"EVAL_BING_0"}]},{name:"blocksy",vendorUrl:"https://creativethemes.com/blocksy/docs/extensions/cookies-consent/",cosmetic:!1,runContext:{main:!0,frame:!1},intermediate:!1,prehideSelectors:[".cookie-notification"],detectCmp:[{exists:"#blocksy-ext-cookies-consent-styles-css"}],detectPopup:[{visible:".cookie-notification"}],optIn:[{click:".cookie-notification .ct-cookies-decline-button"}],optOut:[{waitForThenClick:".cookie-notification .ct-cookies-decline-button"}],test:[{eval:"EVAL_BLOCKSY_0"}]},{name:"borlabs",detectCmp:[{exists:"._brlbs-block-content"}],detectPopup:[{visible:"._brlbs-bar-wrap,._brlbs-box-wrap"}],optIn:[{click:"a[data-cookie-accept-all]"}],optOut:[{click:"a[data-cookie-individual]"},{waitForVisible:".cookie-preference"},{click:"input[data-borlabs-cookie-checkbox]:checked",all:!0,optional:!0},{click:"#CookiePrefSave"},{wait:500}],prehideSelectors:["#BorlabsCookieBox"],test:[{eval:"EVAL_BORLABS_0"}]},{name:"bundesregierung.de",prehideSelectors:[".bpa-cookie-banner"],detectCmp:[{exists:".bpa-cookie-banner"}],detectPopup:[{visible:".bpa-cookie-banner .bpa-module-full-hero"}],optIn:[{click:".bpa-accept-all-button"}],optOut:[{wait:500,comment:"click is not immediately recognized"},{waitForThenClick:".bpa-close-button"}],test:[{eval:"EVAL_BUNDESREGIERUNG_DE_0"}]},{name:"burpee.com",cosmetic:!0,prehideSelectors:["#notice-cookie-block"],detectCmp:[{exists:"#notice-cookie-block"}],detectPopup:[{exists:"#html-body #notice-cookie-block"}],optIn:[{click:"#btn-cookie-allow"}],optOut:[{hide:"#html-body #notice-cookie-block, #notice-cookie"}]},{name:"canva.com",prehideSelectors:['div[role="dialog"] a[data-anchor-id="cookie-policy"]'],detectCmp:[{exists:'div[role="dialog"] a[data-anchor-id="cookie-policy"]'}],detectPopup:[{exists:'div[role="dialog"] a[data-anchor-id="cookie-policy"]'}],optIn:[{click:'div[role="dialog"] button:nth-child(1)'}],optOut:[{if:{exists:'div[role="dialog"] button:nth-child(3)'},then:[{click:'div[role="dialog"] button:nth-child(2)'}],else:[{click:'div[role="dialog"] button:nth-child(2)'},{waitFor:'div[role="dialog"] a[data-anchor-id="cookie-policy"]'},{waitFor:'div[role="dialog"] button[role=switch]'},{click:'div[role="dialog"] button:nth-child(2):not([role])'},{click:'div[role="dialog"] div:last-child button:only-child'}]}],test:[{eval:"EVAL_CANVA_0"}]},{name:"canyon.com",runContext:{urlPattern:"^https://www\\.canyon\\.com/"},prehideSelectors:["div.modal.cookiesModal.is-open"],detectCmp:[{exists:"div.modal.cookiesModal.is-open"}],detectPopup:[{visible:"div.modal.cookiesModal.is-open"}],optIn:[{click:'div.cookiesModal__buttonWrapper > button[data-closecause="close-by-submit"]'}],optOut:[{click:'div.cookiesModal__buttonWrapper > button[data-closecause="close-by-manage-cookies"]'},{waitForThenClick:"button#js-manage-data-privacy-save-button"}]},{name:"cc-banner-springer",prehideSelectors:[".cc-banner[data-cc-banner]"],detectCmp:[{exists:".cc-banner[data-cc-banner]"}],detectPopup:[{visible:".cc-banner[data-cc-banner]"}],optIn:[{waitForThenClick:".cc-banner[data-cc-banner] button[data-cc-action=accept]"}],optOut:[{if:{exists:".cc-banner[data-cc-banner] button[data-cc-action=reject]"},then:[{click:".cc-banner[data-cc-banner] button[data-cc-action=reject]"}],else:[{waitForThenClick:".cc-banner[data-cc-banner] button[data-cc-action=preferences]"},{waitFor:".cc-preferences[data-cc-preferences]"},{click:".cc-preferences[data-cc-preferences] input[type=radio][data-cc-action=toggle-category][value=off]",all:!0,optional:!0},{if:{exists:".cc-preferences[data-cc-preferences] button[data-cc-action=reject]"},then:[{click:".cc-preferences[data-cc-preferences] button[data-cc-action=reject]"}],else:[{click:".cc-preferences[data-cc-preferences] button[data-cc-action=save]"}]}]}],test:[{eval:"EVAL_CC_BANNER2_0"}]},{name:"cc_banner",cosmetic:!0,prehideSelectors:[".cc_banner-wrapper"],detectCmp:[{exists:".cc_banner-wrapper"}],detectPopup:[{visible:".cc_banner"}],optIn:[{click:".cc_btn_accept_all"}],optOut:[{hide:".cc_banner-wrapper"}]},{name:"check24-partnerprogramm-de",prehideSelectors:["[data-modal-content]:has([data-toggle-target^='cookie'])"],detectCmp:[{exists:"[data-toggle-target^='cookie']"}],detectPopup:[{visible:"[data-toggle-target^='cookie']",check:"any"}],optIn:[{waitForThenClick:"[data-cookie-accept-all]"}],optOut:[{waitForThenClick:"[data-cookie-dismiss-all]"}]},{name:"ciaopeople.it",prehideSelectors:["#cp-gdpr-choices"],detectCmp:[{exists:"#cp-gdpr-choices"}],detectPopup:[{visible:"#cp-gdpr-choices"}],optIn:[{waitForThenClick:".gdpr-btm__right > button:nth-child(2)"}],optOut:[{waitForThenClick:".gdpr-top-content > button"},{waitFor:".gdpr-top-back"},{waitForThenClick:".gdpr-btm__right > button:nth-child(1)"}],test:[{visible:"#cp-gdpr-choices",check:"none"}]},{vendorUrl:"https://www.civicuk.com/cookie-control/",name:"civic-cookie-control",prehideSelectors:["#ccc-module,#ccc-overlay"],detectCmp:[{exists:"#ccc-module"}],detectPopup:[{visible:"#ccc"},{visible:"#ccc-module"}],optOut:[{click:"#ccc-reject-settings"}],optIn:[{click:"#ccc-recommended-settings"}]},{name:"click.io",prehideSelectors:["#cl-consent"],detectCmp:[{exists:"#cl-consent"}],detectPopup:[{visible:"#cl-consent"}],optIn:[{waitForThenClick:'#cl-consent [data-role="b_agree"]'}],optOut:[{waitFor:'#cl-consent [data-role="b_options"]'},{wait:500},{click:'#cl-consent [data-role="b_options"]'},{waitFor:'.cl-consent-popup.cl-consent-visible [data-role="alloff"]'},{click:'.cl-consent-popup.cl-consent-visible [data-role="alloff"]',all:!0},{click:'[data-role="b_save"]'}],test:[{eval:"EVAL_CLICKIO_0",comment:"TODO: this only checks if we interacted at all"}]},{name:"clinch",intermediate:!1,runContext:{frame:!1,main:!0},prehideSelectors:[".consent-modal[role=dialog]"],detectCmp:[{exists:".consent-modal[role=dialog]"}],detectPopup:[{visible:".consent-modal[role=dialog]"}],optIn:[{click:"#consent_agree"}],optOut:[{if:{exists:"#consent_reject"},then:[{click:"#consent_reject"}],else:[{click:"#manage_cookie_preferences"},{click:"#cookie_consent_preferences input:checked",all:!0,optional:!0},{click:"#consent_save"}]}],test:[{eval:"EVAL_CLINCH_0"}]},{name:"clustrmaps.com",runContext:{urlPattern:"^https://(www\\.)?clustrmaps\\.com/"},cosmetic:!0,prehideSelectors:["#gdpr-cookie-message"],detectCmp:[{exists:"#gdpr-cookie-message"}],detectPopup:[{visible:"#gdpr-cookie-message"}],optIn:[{click:"button#gdpr-cookie-accept"}],optOut:[{hide:"#gdpr-cookie-message"}]},{name:"coinbase",intermediate:!1,runContext:{frame:!0,main:!0,urlPattern:"^https://(www|help)\\.coinbase\\.com"},prehideSelectors:[],detectCmp:[{exists:"div[class^=CookieBannerContent__Container]"}],detectPopup:[{visible:"div[class^=CookieBannerContent__Container]"}],optIn:[{click:"div[class^=CookieBannerContent__CTA] :nth-last-child(1)"}],optOut:[{click:"button[class^=CookieBannerContent__Settings]"},{click:"div[class^=CookiePreferencesModal__CategoryContainer] input:checked",all:!0,optional:!0},{click:"div[class^=CookiePreferencesModal__ButtonContainer] > button"}],test:[{eval:"EVAL_COINBASE_0"}]},{name:"Complianz banner",prehideSelectors:["#cmplz-cookiebanner-container"],detectCmp:[{exists:"#cmplz-cookiebanner-container .cmplz-cookiebanner"}],detectPopup:[{visible:"#cmplz-cookiebanner-container .cmplz-cookiebanner",check:"any"}],optIn:[{waitForThenClick:".cmplz-cookiebanner .cmplz-accept"}],optOut:[{waitForThenClick:".cmplz-cookiebanner .cmplz-deny"}],test:[{eval:"EVAL_COMPLIANZ_BANNER_0"}]},{name:"Complianz categories",prehideSelectors:['.cc-type-categories[aria-describedby="cookieconsent:desc"]'],detectCmp:[{exists:'.cc-type-categories[aria-describedby="cookieconsent:desc"]'}],detectPopup:[{visible:'.cc-type-categories[aria-describedby="cookieconsent:desc"]'}],optIn:[{any:[{click:".cc-accept-all"},{click:".cc-allow-all"},{click:".cc-allow"},{click:".cc-dismiss"}]}],optOut:[{if:{exists:'.cc-type-categories[aria-describedby="cookieconsent:desc"] .cc-dismiss'},then:[{click:".cc-dismiss"}],else:[{click:".cc-type-categories input[type=checkbox]:not([disabled]):checked",all:!0,optional:!0},{click:".cc-save"}]}]},{name:"Complianz notice",prehideSelectors:['.cc-type-info[aria-describedby="cookieconsent:desc"]'],cosmetic:!0,detectCmp:[{exists:'.cc-type-info[aria-describedby="cookieconsent:desc"] .cc-compliance .cc-btn'}],detectPopup:[{visible:'.cc-type-info[aria-describedby="cookieconsent:desc"] .cc-compliance .cc-btn'}],optIn:[{click:".cc-accept-all",optional:!0},{click:".cc-allow",optional:!0},{click:".cc-dismiss",optional:!0}],optOut:[{if:{exists:".cc-deny"},then:[{click:".cc-deny"}],else:[{hide:'[aria-describedby="cookieconsent:desc"]'}]}]},{name:"Complianz opt-both",prehideSelectors:['[aria-describedby="cookieconsent:desc"] .cc-type-opt-both'],detectCmp:[{exists:'[aria-describedby="cookieconsent:desc"] .cc-type-opt-both'}],detectPopup:[{visible:'[aria-describedby="cookieconsent:desc"] .cc-type-opt-both'}],optIn:[{click:".cc-accept-all",optional:!0},{click:".cc-allow",optional:!0},{click:".cc-dismiss",optional:!0}],optOut:[{waitForThenClick:".cc-deny"}]},{name:"Complianz opt-out",prehideSelectors:['[aria-describedby="cookieconsent:desc"].cc-type-opt-out'],detectCmp:[{exists:'[aria-describedby="cookieconsent:desc"].cc-type-opt-out'}],detectPopup:[{visible:'[aria-describedby="cookieconsent:desc"].cc-type-opt-out'}],optIn:[{click:".cc-accept-all",optional:!0},{click:".cc-allow",optional:!0},{click:".cc-dismiss",optional:!0}],optOut:[{if:{exists:".cc-deny"},then:[{click:".cc-deny"}],else:[{if:{exists:".cmp-pref-link"},then:[{click:".cmp-pref-link"},{waitForThenClick:".cmp-body [id*=rejectAll]"},{waitForThenClick:".cmp-body .cmp-save-btn"}]}]}]},{name:"Complianz optin",prehideSelectors:['.cc-type-opt-in[aria-describedby="cookieconsent:desc"]'],detectCmp:[{exists:'.cc-type-opt-in[aria-describedby="cookieconsent:desc"]'}],detectPopup:[{visible:'.cc-type-opt-in[aria-describedby="cookieconsent:desc"]'}],optIn:[{any:[{click:".cc-accept-all"},{click:".cc-allow"},{click:".cc-dismiss"}]}],optOut:[{if:{visible:".cc-deny"},then:[{click:".cc-deny"}],else:[{if:{visible:".cc-settings"},then:[{waitForThenClick:".cc-settings"},{waitForVisible:".cc-settings-view"},{click:".cc-settings-view input[type=checkbox]:not([disabled]):checked",all:!0,optional:!0},{click:".cc-settings-view .cc-btn-accept-selected"}],else:[{click:".cc-dismiss"}]}]}]},{name:"cookie-law-info",prehideSelectors:["#cookie-law-info-bar"],detectCmp:[{exists:"#cookie-law-info-bar"},{eval:"EVAL_COOKIE_LAW_INFO_DETECT"}],detectPopup:[{visible:"#cookie-law-info-bar"}],optIn:[{click:'[data-cli_action="accept_all"]'}],optOut:[{hide:"#cookie-law-info-bar"},{eval:"EVAL_COOKIE_LAW_INFO_0"}],test:[{eval:"EVAL_COOKIE_LAW_INFO_1"}]},{name:"cookie-manager-popup",cosmetic:!1,runContext:{main:!0,frame:!1},intermediate:!1,detectCmp:[{exists:"#notice-cookie-block #allow-functional-cookies, #notice-cookie-block #btn-cookie-settings"}],detectPopup:[{visible:"#notice-cookie-block"}],optIn:[{click:"#btn-cookie-allow"}],optOut:[{if:{exists:"#allow-functional-cookies"},then:[{click:"#allow-functional-cookies"}],else:[{waitForThenClick:"#btn-cookie-settings"},{waitForVisible:".modal-body"},{click:'.modal-body input:checked, .switch[data-switch="on"]',all:!0,optional:!0},{click:'[role="dialog"] .modal-footer button'}]}],prehideSelectors:["#btn-cookie-settings"],test:[{eval:"EVAL_COOKIE_MANAGER_POPUP_0"}]},{name:"cookie-notice",prehideSelectors:["#cookie-notice"],cosmetic:!0,detectCmp:[{visible:"#cookie-notice .cookie-notice-container"}],detectPopup:[{visible:"#cookie-notice"}],optIn:[{click:"#cn-accept-cookie"}],optOut:[{hide:"#cookie-notice"}]},{name:"cookie-script",vendorUrl:"https://cookie-script.com/",prehideSelectors:["#cookiescript_injected"],detectCmp:[{exists:"#cookiescript_injected"}],detectPopup:[{visible:"#cookiescript_injected"}],optOut:[{if:{exists:"#cookiescript_reject"},then:[{wait:100},{click:"#cookiescript_reject"}],else:[{click:"#cookiescript_manage"},{waitForVisible:".cookiescript_fsd_main"},{waitForThenClick:"#cookiescript_reject"}]}],optIn:[{click:"#cookiescript_accept"}]},{name:"cookieacceptbar",vendorUrl:"https://unknown",cosmetic:!0,prehideSelectors:["#cookieAcceptBar.cookieAcceptBar"],detectCmp:[{exists:"#cookieAcceptBar.cookieAcceptBar"}],detectPopup:[{visible:"#cookieAcceptBar.cookieAcceptBar"}],optIn:[{waitForThenClick:"#cookieAcceptBarConfirm"}],optOut:[{hide:"#cookieAcceptBar.cookieAcceptBar"}]},{name:"cookiealert",intermediate:!1,prehideSelectors:[],runContext:{frame:!0,main:!0},detectCmp:[{exists:".cookie-alert-extended"}],detectPopup:[{visible:".cookie-alert-extended-modal"}],optIn:[{click:"button[data-controller='cookie-alert/extended/button/accept']"},{eval:"EVAL_COOKIEALERT_0"}],optOut:[{click:"a[data-controller='cookie-alert/extended/detail-link']"},{click:".cookie-alert-configuration-input:checked",all:!0,optional:!0},{click:"button[data-controller='cookie-alert/extended/button/configuration']"},{eval:"EVAL_COOKIEALERT_0"}],test:[{eval:"EVAL_COOKIEALERT_2"}]},{name:"cookieconsent2",vendorUrl:"https://www.github.com/orestbida/cookieconsent",comment:"supports v2.x.x of the library",prehideSelectors:["#cc--main"],detectCmp:[{exists:"#cc--main"}],detectPopup:[{visible:"#cm"},{exists:"#s-all-bn"}],optIn:[{waitForThenClick:"#s-all-bn"}],optOut:[{waitForThenClick:"#s-rall-bn"}],test:[{eval:"EVAL_COOKIECONSENT2_TEST"}]},{name:"cookieconsent3",vendorUrl:"https://www.github.com/orestbida/cookieconsent",comment:"supports v3.x.x of the library",prehideSelectors:["#cc-main"],detectCmp:[{exists:"#cc-main"}],detectPopup:[{visible:"#cc-main .cm-wrapper"}],optIn:[{waitForThenClick:".cm__btn[data-role=all]"}],optOut:[{waitForThenClick:".cm__btn[data-role=necessary]"}],test:[{eval:"EVAL_COOKIECONSENT3_TEST"}]},{name:"cookiecuttr",vendorUrl:"https://github.com/cdwharton/cookieCuttr",cosmetic:!1,runContext:{main:!0,frame:!1,urlPattern:""},prehideSelectors:[".cc-cookies"],detectCmp:[{exists:".cc-cookies .cc-cookie-accept"}],detectPopup:[{visible:".cc-cookies .cc-cookie-accept"}],optIn:[{waitForThenClick:".cc-cookies .cc-cookie-accept"}],optOut:[{if:{exists:".cc-cookies .cc-cookie-decline"},then:[{click:".cc-cookies .cc-cookie-decline"}],else:[{hide:".cc-cookies"}]}]},{name:"cookiefirst.com",prehideSelectors:["#cookiefirst-root,.cookiefirst-root,[aria-labelledby=cookie-preference-panel-title]"],detectCmp:[{exists:"#cookiefirst-root,.cookiefirst-root"}],detectPopup:[{visible:"#cookiefirst-root,.cookiefirst-root"}],optIn:[{click:"button[data-cookiefirst-action=accept]"}],optOut:[{if:{exists:"button[data-cookiefirst-action=adjust]"},then:[{click:"button[data-cookiefirst-action=adjust]"},{waitForVisible:"[data-cookiefirst-widget=modal]",timeout:1e3},{eval:"EVAL_COOKIEFIRST_1"},{wait:1e3},{click:"button[data-cookiefirst-action=save]"}],else:[{click:"button[data-cookiefirst-action=reject]"}]}],test:[{eval:"EVAL_COOKIEFIRST_0"}]},{name:"Cookie Information Banner",prehideSelectors:["#cookie-information-template-wrapper"],detectCmp:[{exists:"#cookie-information-template-wrapper"}],detectPopup:[{visible:"#cookie-information-template-wrapper"}],optIn:[{eval:"EVAL_COOKIEINFORMATION_1"}],optOut:[{hide:"#cookie-information-template-wrapper",comment:"some templates don't hide the banner automatically"},{eval:"EVAL_COOKIEINFORMATION_0"}],test:[{eval:"EVAL_COOKIEINFORMATION_2"}]},{name:"cookieyes",prehideSelectors:[".cky-overlay,.cky-consent-container"],detectCmp:[{exists:".cky-consent-container"}],detectPopup:[{visible:".cky-consent-container"}],optIn:[{waitForThenClick:".cky-consent-container [data-cky-tag=accept-button]"}],optOut:[{if:{exists:".cky-consent-container [data-cky-tag=reject-button]"},then:[{waitForThenClick:".cky-consent-container [data-cky-tag=reject-button]"}],else:[{if:{exists:".cky-consent-container [data-cky-tag=settings-button]"},then:[{click:".cky-consent-container [data-cky-tag=settings-button]"},{waitFor:".cky-modal-open input[type=checkbox]"},{click:".cky-modal-open input[type=checkbox]:checked",all:!0,optional:!0},{waitForThenClick:".cky-modal [data-cky-tag=detail-save-button]"}],else:[{hide:".cky-consent-container,.cky-overlay"}]}]}],test:[{eval:"EVAL_COOKIEYES_0"}]},{name:"corona-in-zahlen.de",prehideSelectors:[".cookiealert"],detectCmp:[{exists:".cookiealert"}],detectPopup:[{visible:".cookiealert"}],optOut:[{click:".configurecookies"},{click:".confirmcookies"}],optIn:[{click:".acceptcookies"}]},{name:"crossfit-com",cosmetic:!0,prehideSelectors:['body #modal > div > div[class^="_wrapper_"]'],detectCmp:[{exists:'body #modal > div > div[class^="_wrapper_"]'}],detectPopup:[{visible:'body #modal > div > div[class^="_wrapper_"]'}],optIn:[{click:'button[aria-label="accept cookie policy"]'}],optOut:[{hide:'body #modal > div > div[class^="_wrapper_"]'}]},{name:"csu-landtag-de",runContext:{urlPattern:"^https://(www\\.|)?csu-landtag\\.de"},prehideSelectors:["#cookie-disclaimer"],detectCmp:[{exists:"#cookie-disclaimer"}],detectPopup:[{visible:"#cookie-disclaimer"}],optIn:[{click:"#cookieall"}],optOut:[{click:"#cookiesel"}]},{name:"dailymotion-us",cosmetic:!0,prehideSelectors:['div[class*="CookiePopup__desktopContainer"]:has(div[class*="CookiePopup"])'],detectCmp:[{exists:'div[class*="CookiePopup__desktopContainer"]'}],detectPopup:[{visible:'div[class*="CookiePopup__desktopContainer"]'}],optIn:[{click:'div[class*="CookiePopup__desktopContainer"] > button > span'}],optOut:[{hide:'div[class*="CookiePopup__desktopContainer"]'}]},{name:"dailymotion.com",runContext:{urlPattern:"^https://(www\\.)?dailymotion\\.com/"},prehideSelectors:['div[class*="Overlay__container"]:has(div[class*="TCF2Popup"])'],detectCmp:[{exists:'div[class*="TCF2Popup"]'}],detectPopup:[{visible:'[class*="TCF2Popup"] a[href^="https://www.dailymotion.com/legal/cookiemanagement"]'}],optIn:[{waitForThenClick:'button[class*="TCF2Popup__button"]:not([class*="TCF2Popup__personalize"])'}],optOut:[{waitForThenClick:'button[class*="TCF2ContinueWithoutAcceptingButton"]'}],test:[{eval:"EVAL_DAILYMOTION_0"}]},{name:"dan-com",vendorUrl:"https://unknown",runContext:{main:!0,frame:!1},prehideSelectors:[],detectCmp:[{exists:".cookie-banner.show .cookie-banner__content-all-btn"}],detectPopup:[{visible:".cookie-banner.show .cookie-banner__content-all-btn"}],optIn:[{waitForThenClick:".cookie-banner__content-all-btn"}],optOut:[{waitForThenClick:".cookie-banner__content-essential-btn"}]},{name:"deepl.com",prehideSelectors:[".dl_cookieBanner_container"],detectCmp:[{exists:".dl_cookieBanner_container"}],detectPopup:[{visible:".dl_cookieBanner_container"}],optOut:[{click:".dl_cookieBanner--buttonSelected"}],optIn:[{click:".dl_cookieBanner--buttonAll"}]},{name:"delta.com",runContext:{urlPattern:"^https://www\\.delta\\.com/"},cosmetic:!0,prehideSelectors:["ngc-cookie-banner"],detectCmp:[{exists:"div.cookie-footer-container"}],detectPopup:[{visible:"div.cookie-footer-container"}],optIn:[{click:" button.cookie-close-icon"}],optOut:[{hide:"div.cookie-footer-container"}]},{name:"dmgmedia-us",prehideSelectors:["#mol-ads-cmp-iframe, div.mol-ads-cmp > form > div"],detectCmp:[{exists:"div.mol-ads-cmp > form > div"}],detectPopup:[{waitForVisible:"div.mol-ads-cmp > form > div"}],optIn:[{waitForThenClick:"button.mol-ads-cmp--btn-primary"}],optOut:[{waitForThenClick:"div.mol-ads-ccpa--message > u > a"},{waitForVisible:".mol-ads-cmp--modal-dialog"},{waitForThenClick:"a.mol-ads-cmp-footer-privacy"},{waitForThenClick:"button.mol-ads-cmp--btn-secondary"}]},{name:"dmgmedia",prehideSelectors:['[data-project="mol-fe-cmp"]'],detectCmp:[{exists:'[data-project="mol-fe-cmp"] [class*=footer]'}],detectPopup:[{visible:'[data-project="mol-fe-cmp"] [class*=footer]'}],optIn:[{waitForThenClick:'[data-project="mol-fe-cmp"] button[class*=primary]'}],optOut:[{waitForThenClick:'[data-project="mol-fe-cmp"] button[class*=basic]'},{waitForVisible:'[data-project="mol-fe-cmp"] div[class*="tabContent"]'},{waitForThenClick:'[data-project="mol-fe-cmp"] div[class*="toggle"][class*="enabled"]',all:!0},{waitForThenClick:['[data-project="mol-fe-cmp"] [class*=footer]',"xpath///button[contains(., 'Save & Exit')]"]}]},{name:"dndbeyond",vendorUrl:"https://www.dndbeyond.com/",runContext:{urlPattern:"^https://(www\\.)?dndbeyond\\.com/"},prehideSelectors:["[id^=cookie-consent-banner]"],detectCmp:[{exists:"[id^=cookie-consent-banner]"}],detectPopup:[{visible:"[id^=cookie-consent-banner]"}],optIn:[{waitForThenClick:"#cookie-consent-granted"}],optOut:[{waitForThenClick:"#cookie-consent-denied"}],test:[{eval:"EVAL_DNDBEYOND_TEST"}]},{name:"dpgmedia-nl",prehideSelectors:["#pg-shadow-host"],detectCmp:[{exists:"#pg-shadow-host"}],detectPopup:[{visible:["#pg-shadow-host","#pg-modal"]}],optIn:[{waitForThenClick:["#pg-shadow-host","#pg-accept-btn"]}],optOut:[{waitForThenClick:["#pg-shadow-host","#pg-configure-btn"]},{waitForThenClick:["#pg-shadow-host","#pg-reject-btn"]}]},{name:"Drupal",detectCmp:[{exists:"#drupalorg-crosssite-gdpr"}],detectPopup:[{visible:"#drupalorg-crosssite-gdpr"}],optOut:[{click:".no"}],optIn:[{click:".yes"}]},{name:"WP DSGVO Tools",link:"https://wordpress.org/plugins/shapepress-dsgvo/",prehideSelectors:[".sp-dsgvo"],cosmetic:!0,detectCmp:[{exists:".sp-dsgvo.sp-dsgvo-popup-overlay"}],detectPopup:[{visible:".sp-dsgvo.sp-dsgvo-popup-overlay",check:"any"}],optIn:[{click:".sp-dsgvo-privacy-btn-accept-all",all:!0}],optOut:[{hide:".sp-dsgvo.sp-dsgvo-popup-overlay"}],test:[{eval:"EVAL_DSGVO_0"}]},{name:"dunelm.com",prehideSelectors:["div[data-testid=cookie-consent-modal-backdrop]"],detectCmp:[{exists:"div[data-testid=cookie-consent-message-contents]"}],detectPopup:[{visible:"div[data-testid=cookie-consent-message-contents]"}],optIn:[{click:'[data-testid="cookie-consent-allow-all"]'}],optOut:[{click:"button[data-testid=cookie-consent-adjust-settings]"},{click:"button[data-testid=cookie-consent-preferences-save]"}],test:[{eval:"EVAL_DUNELM_0"}]},{name:"ebay",vendorUrl:"https://ebay.com",cosmetic:!1,runContext:{main:!0,frame:!1,urlPattern:"^https://(www\\.)?ebay\\.([.a-z]+)/"},prehideSelectors:["#gdpr-banner"],detectCmp:[{exists:"#gdpr-banner"}],detectPopup:[{visible:"#gdpr-banner"}],optIn:[{waitForThenClick:"#gdpr-banner-accept"}],optOut:[{waitForThenClick:"#gdpr-banner-decline"}]},{name:"ecosia",vendorUrl:"https://www.ecosia.org/",runContext:{urlPattern:"^https://www\\.ecosia\\.org/"},prehideSelectors:[".cookie-wrapper"],detectCmp:[{exists:".cookie-wrapper > .cookie-notice"}],detectPopup:[{visible:".cookie-wrapper > .cookie-notice"}],optIn:[{waitForThenClick:"[data-test-id=cookie-notice-accept]"}],optOut:[{waitForThenClick:"[data-test-id=cookie-notice-reject]"}]},{name:"Ensighten ensModal",prehideSelectors:[".ensModal"],detectCmp:[{exists:".ensModal"}],detectPopup:[{visible:"#ensModalWrapper[style*=block]"}],optIn:[{waitForThenClick:"#modalAcceptButton"}],optOut:[{wait:500},{visible:"#ensModalWrapper[style*=block]"},{waitForThenClick:".ensCheckbox:checked",all:!0},{waitForThenClick:"#ensSave"}]},{name:"Ensighten ensNotifyBanner",prehideSelectors:["#ensNotifyBanner"],detectCmp:[{exists:"#ensNotifyBanner"}],detectPopup:[{visible:"#ensNotifyBanner[style*=block]"}],optIn:[{waitForThenClick:"#ensCloseBanner"}],optOut:[{wait:500},{visible:"#ensNotifyBanner[style*=block]"},{waitForThenClick:"#ensRejectAll,#rejectAll,#ensRejectBanner,.rejectAll,#ensCloseBanner",timeout:2e3}]},{name:"espace-personnel.agirc-arrco.fr",runContext:{urlPattern:"^https://espace-personnel\\.agirc-arrco\\.fr/"},prehideSelectors:[".cdk-overlay-container"],detectCmp:[{exists:".cdk-overlay-container app-esaa-cookie-component"}],detectPopup:[{visible:".cdk-overlay-container app-esaa-cookie-component"}],optIn:[{waitForThenClick:".btn-cookie-accepter"}],optOut:[{waitForThenClick:".btn-cookie-refuser"}]},{name:"etsy",prehideSelectors:["#gdpr-single-choice-overlay","#gdpr-privacy-settings"],detectCmp:[{exists:"#gdpr-single-choice-overlay"}],detectPopup:[{visible:"#gdpr-single-choice-overlay"}],optOut:[{click:"button[data-gdpr-open-full-settings]"},{waitForVisible:".gdpr-overlay-body input",timeout:3e3},{wait:1e3},{eval:"EVAL_ETSY_0"},{eval:"EVAL_ETSY_1"}],optIn:[{click:"button[data-gdpr-single-choice-accept]"}]},{name:"eu-cookie-compliance-banner",detectCmp:[{exists:"body.eu-cookie-compliance-popup-open"}],detectPopup:[{exists:"body.eu-cookie-compliance-popup-open"}],optIn:[{click:".agree-button"}],optOut:[{if:{visible:".decline-button,.eu-cookie-compliance-save-preferences-button"},then:[{click:".decline-button,.eu-cookie-compliance-save-preferences-button"}]},{hide:".eu-cookie-compliance-banner-info, #sliding-popup"}],test:[{eval:"EVAL_EU_COOKIE_COMPLIANCE_0"}]},{name:"EU Cookie Law",prehideSelectors:[".pea_cook_wrapper,.pea_cook_more_info_popover"],cosmetic:!0,detectCmp:[{exists:".pea_cook_wrapper"}],detectPopup:[{wait:500},{visible:".pea_cook_wrapper"}],optIn:[{click:"#pea_cook_btn"}],optOut:[{hide:".pea_cook_wrapper"}],test:[{eval:"EVAL_EU_COOKIE_LAW_0"}]},{name:"europa-eu",vendorUrl:"https://ec.europa.eu/",runContext:{urlPattern:"^https://[^/]*europa\\.eu/"},prehideSelectors:["#cookie-consent-banner"],detectCmp:[{exists:".cck-container"}],detectPopup:[{visible:".cck-container"}],optIn:[{waitForThenClick:'.cck-actions-button[href="#accept"]'}],optOut:[{waitForThenClick:'.cck-actions-button[href="#refuse"]',hide:".cck-container"}]},{name:"EZoic",prehideSelectors:["#ez-cookie-dialog-wrapper"],detectCmp:[{exists:"#ez-cookie-dialog-wrapper"}],detectPopup:[{visible:"#ez-cookie-dialog-wrapper"}],optIn:[{click:"#ez-accept-all",optional:!0},{eval:"EVAL_EZOIC_0",optional:!0}],optOut:[{wait:500},{click:"#ez-manage-settings"},{waitFor:"#ez-cookie-dialog input[type=checkbox]"},{click:"#ez-cookie-dialog input[type=checkbox]:checked",all:!0},{click:"#ez-save-settings"}],test:[{eval:"EVAL_EZOIC_1"}]},{name:"facebook",runContext:{urlPattern:"^https://([a-z0-9-]+\\.)?facebook\\.com/"},prehideSelectors:['div[data-testid="cookie-policy-manage-dialog"]'],detectCmp:[{exists:'div[data-testid="cookie-policy-manage-dialog"]'}],detectPopup:[{visible:'div[data-testid="cookie-policy-manage-dialog"]'}],optIn:[{waitForThenClick:'button[data-cookiebanner="accept_button"]'},{waitForVisible:'div[data-testid="cookie-policy-manage-dialog"]',check:"none"}],optOut:[{waitForThenClick:'button[data-cookiebanner="accept_only_essential_button"]'},{waitForVisible:'div[data-testid="cookie-policy-manage-dialog"]',check:"none"}]},{name:"fides",vendorUrl:"https://github.com/ethyca/fides",prehideSelectors:["#fides-overlay"],detectCmp:[{exists:"#fides-overlay #fides-banner"}],detectPopup:[{visible:"#fides-overlay #fides-banner"},{eval:"EVAL_FIDES_DETECT_POPUP"}],optIn:[{waitForThenClick:"#fides-banner .fides-accept-all-button"}],optOut:[{waitForThenClick:"#fides-banner .fides-reject-all-button"}]},{name:"funding-choices",prehideSelectors:[".fc-consent-root,.fc-dialog-container,.fc-dialog-overlay,.fc-dialog-content"],detectCmp:[{exists:".fc-consent-root"}],detectPopup:[{exists:".fc-dialog-container"}],optOut:[{click:".fc-cta-do-not-consent,.fc-cta-manage-options"},{click:".fc-preference-consent:checked,.fc-preference-legitimate-interest:checked",all:!0,optional:!0},{click:".fc-confirm-choices",optional:!0}],optIn:[{click:".fc-cta-consent"}]},{name:"geeks-for-geeks",runContext:{urlPattern:"^https://www\\.geeksforgeeks\\.org/"},cosmetic:!0,prehideSelectors:[".cookie-consent"],detectCmp:[{exists:".cookie-consent"}],detectPopup:[{visible:".cookie-consent"}],optIn:[{click:".cookie-consent button.consent-btn"}],optOut:[{hide:".cookie-consent"}]},{name:"google-consent-standalone",prehideSelectors:[],detectCmp:[{exists:'a[href^="https://policies.google.com/technologies/cookies"'},{exists:'form[action^="https://consent.google."][action$=".com/save"]'}],detectPopup:[{visible:'a[href^="https://policies.google.com/technologies/cookies"'}],optIn:[{waitForThenClick:'form[action^="https://consent.google."][action$=".com/save"]:has(input[name=set_eom][value=false]) button'}],optOut:[{waitForThenClick:'form[action^="https://consent.google."][action$=".com/save"]:has(input[name=set_eom][value=true]) button'}]},{name:"google.com",prehideSelectors:[".HTjtHe#xe7COe"],detectCmp:[{exists:".HTjtHe#xe7COe"},{exists:'.HTjtHe#xe7COe a[href^="https://policies.google.com/technologies/cookies"]'}],detectPopup:[{visible:".HTjtHe#xe7COe button#W0wltc"}],optIn:[{waitForThenClick:".HTjtHe#xe7COe button#L2AGLb"}],optOut:[{waitForThenClick:".HTjtHe#xe7COe button#W0wltc"}],test:[{eval:"EVAL_GOOGLE_0"}]},{name:"gov.uk",detectCmp:[{exists:"#global-cookie-message"}],detectPopup:[{exists:"#global-cookie-message"}],optIn:[{click:"button[data-accept-cookies=true]"}],optOut:[{click:"button[data-reject-cookies=true],#reject-cookies"},{click:"button[data-hide-cookie-banner=true],#hide-cookie-decision"}]},{name:"hashicorp",vendorUrl:"https://hashicorp.com/",runContext:{urlPattern:"^https://[^.]*\\.hashicorp\\.com/"},prehideSelectors:["[data-testid=consent-banner]"],detectCmp:[{exists:"[data-testid=consent-banner]"}],detectPopup:[{visible:"[data-testid=consent-banner]"}],optIn:[{waitForThenClick:"[data-testid=accept]"}],optOut:[{waitForThenClick:"[data-testid=manage-preferences]"},{waitForThenClick:"[data-testid=consent-mgr-dialog] [data-ga-button=save-preferences]"}]},{name:"healthline-media",prehideSelectors:["#modal-host > div.no-hash > div.window-wrapper"],detectCmp:[{exists:"#modal-host > div.no-hash > div.window-wrapper, div[data-testid=qualtrics-container]"}],detectPopup:[{exists:"#modal-host > div.no-hash > div.window-wrapper, div[data-testid=qualtrics-container]"}],optIn:[{click:"#modal-host > div.no-hash > div.window-wrapper > div:last-child button"}],optOut:[{if:{exists:'#modal-host > div.no-hash > div.window-wrapper > div:last-child a[href="/privacy-settings"]'},then:[{click:'#modal-host > div.no-hash > div.window-wrapper > div:last-child a[href="/privacy-settings"]'}],else:[{waitForVisible:"div#__next"},{click:"#__next div:nth-child(1) > button:first-child"}]}]},{name:"hema",prehideSelectors:[".cookie-modal"],detectCmp:[{visible:".cookie-modal .cookie-accept-btn"}],detectPopup:[{visible:".cookie-modal .cookie-accept-btn"}],optIn:[{waitForThenClick:".cookie-modal .cookie-accept-btn"}],optOut:[{waitForThenClick:".cookie-modal .js-cookie-reject-btn"}],test:[{eval:"EVAL_HEMA_TEST_0"}]},{name:"hetzner.com",runContext:{urlPattern:"^https://www\\.hetzner\\.com/"},prehideSelectors:["#CookieConsent"],detectCmp:[{exists:"#CookieConsent"}],detectPopup:[{visible:"#CookieConsent"}],optIn:[{click:"#CookieConsentGiven"}],optOut:[{click:"#CookieConsentDeclined"}]},{name:"hl.co.uk",prehideSelectors:[".cookieModalContent","#cookie-banner-overlay"],detectCmp:[{exists:"#cookie-banner-overlay"}],detectPopup:[{exists:"#cookie-banner-overlay"}],optIn:[{click:"#acceptCookieButton"}],optOut:[{click:"#manageCookie"},{hide:".cookieSettingsModal"},{waitFor:"#AOCookieToggle"},{click:"#AOCookieToggle[aria-pressed=true]",optional:!0},{waitFor:"#TPCookieToggle"},{click:"#TPCookieToggle[aria-pressed=true]",optional:!0},{click:"#updateCookieButton"}]},{name:"holidaymedia",vendorUrl:"https://holidaymedia.nl/",prehideSelectors:["dialog[data-cookie-consent]"],detectCmp:[{exists:"dialog[data-cookie-consent]"}],detectPopup:[{visible:"dialog[data-cookie-consent]"}],optIn:[{waitForThenClick:"button.cookie-consent__button--accept-all"}],optOut:[{waitForThenClick:'a[data-cookie-accept="functional"]',timeout:2e3}]},{name:"hu-manity",vendorUrl:"https://hu-manity.co/",prehideSelectors:["#hu.hu-wrapper"],detectCmp:[{exists:"#hu.hu-visible"}],detectPopup:[{visible:"#hu.hu-visible"}],optIn:[{waitForThenClick:"[data-hu-action=cookies-notice-consent-choices-3]"},{waitForThenClick:"#hu-cookies-save"}],optOut:[{waitForThenClick:"#hu-cookies-save"}]},{name:"hubspot",detectCmp:[{exists:"#hs-eu-cookie-confirmation"}],detectPopup:[{visible:"#hs-eu-cookie-confirmation"}],optIn:[{click:"#hs-eu-confirmation-button"}],optOut:[{click:"#hs-eu-decline-button"}]},{name:"indeed.com",cosmetic:!0,prehideSelectors:["#CookiePrivacyNotice"],detectCmp:[{exists:"#CookiePrivacyNotice"}],detectPopup:[{visible:"#CookiePrivacyNotice"}],optIn:[{click:"#CookiePrivacyNotice button[data-gnav-element-name=CookiePrivacyNoticeOk]"}],optOut:[{hide:"#CookiePrivacyNotice"}]},{name:"ing.de",runContext:{urlPattern:"^https://www\\.ing\\.de/"},cosmetic:!0,prehideSelectors:['div[slot="backdrop"]'],detectCmp:[{exists:'[data-tag-name="ing-cc-dialog-frame"]'}],detectPopup:[{visible:'[data-tag-name="ing-cc-dialog-frame"]'}],optIn:[{click:['[data-tag-name="ing-cc-dialog-level0"]','[data-tag-name="ing-cc-button"][class*="accept"]']}],optOut:[{click:['[data-tag-name="ing-cc-dialog-level0"]','[data-tag-name="ing-cc-button"][class*="more"]']}]},{name:"instagram",vendorUrl:"https://instagram.com",runContext:{urlPattern:"^https://www\\.instagram\\.com/"},prehideSelectors:[],detectCmp:[{exists:'xpath///span[contains(., "Vill du tillåta användningen av cookies från Instagram i den här webbläsaren?") or contains(., "Allow the use of cookies from Instagram on this browser?") or contains(., "Povolit v prohlížeči použití souborů cookie z Instagramu?") or contains(., "Dopustiti upotrebu kolačića s Instagrama na ovom pregledniku?") or contains(., "Разрешить использование файлов cookie от Instagram в этом браузере?") or contains(., "Vuoi consentire l\'uso dei cookie di Instagram su questo browser?") or contains(., "Povoliť používanie cookies zo služby Instagram v tomto prehliadači?") or contains(., "Die Verwendung von Cookies durch Instagram in diesem Browser erlauben?") or contains(., "Sallitaanko Instagramin evästeiden käyttö tällä selaimella?") or contains(., "Engedélyezed az Instagram cookie-jainak használatát ebben a böngészőben?") or contains(., "Het gebruik van cookies van Instagram toestaan in deze browser?") or contains(., "Bu tarayıcıda Instagram\'dan çerez kullanımına izin verilsin mi?") or contains(., "Permitir o uso de cookies do Instagram neste navegador?") or contains(., "Permiţi folosirea modulelor cookie de la Instagram în acest browser?") or contains(., "Autoriser l’utilisation des cookies d’Instagram sur ce navigateur ?") or contains(., "¿Permitir el uso de cookies de Instagram en este navegador?") or contains(., "Zezwolić na użycie plików cookie z Instagramu w tej przeglądarce?") or contains(., "Να επιτρέπεται η χρήση cookies από τo Instagram σε αυτό το πρόγραμμα περιήγησης;") or contains(., "Разрешавате ли използването на бисквитки от Instagram на този браузър?") or contains(., "Vil du tillade brugen af cookies fra Instagram i denne browser?") or contains(., "Vil du tillate bruk av informasjonskapsler fra Instagram i denne nettleseren?")]'}],detectPopup:[{visible:'xpath///span[contains(., "Vill du tillåta användningen av cookies från Instagram i den här webbläsaren?") or contains(., "Allow the use of cookies from Instagram on this browser?") or contains(., "Povolit v prohlížeči použití souborů cookie z Instagramu?") or contains(., "Dopustiti upotrebu kolačića s Instagrama na ovom pregledniku?") or contains(., "Разрешить использование файлов cookie от Instagram в этом браузере?") or contains(., "Vuoi consentire l\'uso dei cookie di Instagram su questo browser?") or contains(., "Povoliť používanie cookies zo služby Instagram v tomto prehliadači?") or contains(., "Die Verwendung von Cookies durch Instagram in diesem Browser erlauben?") or contains(., "Sallitaanko Instagramin evästeiden käyttö tällä selaimella?") or contains(., "Engedélyezed az Instagram cookie-jainak használatát ebben a böngészőben?") or contains(., "Het gebruik van cookies van Instagram toestaan in deze browser?") or contains(., "Bu tarayıcıda Instagram\'dan çerez kullanımına izin verilsin mi?") or contains(., "Permitir o uso de cookies do Instagram neste navegador?") or contains(., "Permiţi folosirea modulelor cookie de la Instagram în acest browser?") or contains(., "Autoriser l’utilisation des cookies d’Instagram sur ce navigateur ?") or contains(., "¿Permitir el uso de cookies de Instagram en este navegador?") or contains(., "Zezwolić na użycie plików cookie z Instagramu w tej przeglądarce?") or contains(., "Να επιτρέπεται η χρήση cookies από τo Instagram σε αυτό το πρόγραμμα περιήγησης;") or contains(., "Разрешавате ли използването на бисквитки от Instagram на този браузър?") or contains(., "Vil du tillade brugen af cookies fra Instagram i denne browser?") or contains(., "Vil du tillate bruk av informasjonskapsler fra Instagram i denne nettleseren?")]'}],optIn:[{waitForThenClick:"xpath///button[contains(., 'Tillad alle cookies') or contains(., 'Alle Cookies erlauben') or contains(., 'Allow all cookies') or contains(., 'Разрешаване на всички бисквитки') or contains(., 'Tillåt alla cookies') or contains(., 'Povolit všechny soubory cookie') or contains(., 'Tüm çerezlere izin ver') or contains(., 'Permite toate modulele cookie') or contains(., 'Να επιτρέπονται όλα τα cookies') or contains(., 'Tillat alle informasjonskapsler') or contains(., 'Povoliť všetky cookies') or contains(., 'Permitir todas las cookies') or contains(., 'Permitir todos os cookies') or contains(., 'Alle cookies toestaan') or contains(., 'Salli kaikki evästeet') or contains(., 'Consenti tutti i cookie') or contains(., 'Az összes cookie engedélyezése') or contains(., 'Autoriser tous les cookies') or contains(., 'Zezwól na wszystkie pliki cookie') or contains(., 'Разрешить все cookie') or contains(., 'Dopusti sve kolačiće')]"}],optOut:[{waitForThenClick:"xpath///button[contains(., 'Отклонить необязательные файлы cookie') or contains(., 'Decline optional cookies') or contains(., 'Refuser les cookies optionnels') or contains(., 'Hylkää valinnaiset evästeet') or contains(., 'Afvis valgfrie cookies') or contains(., 'Odmietnuť nepovinné cookies') or contains(., 'Απόρριψη προαιρετικών cookies') or contains(., 'Neka valfria cookies') or contains(., 'Optionale Cookies ablehnen') or contains(., 'Rifiuta cookie facoltativi') or contains(., 'Odbij neobavezne kolačiće') or contains(., 'Avvis valgfrie informasjonskapsler') or contains(., 'İsteğe bağlı çerezleri reddet') or contains(., 'Recusar cookies opcionais') or contains(., 'Optionele cookies afwijzen') or contains(., 'Rechazar cookies opcionales') or contains(., 'Odrzuć opcjonalne pliki cookie') or contains(., 'Отхвърляне на бисквитките по избор') or contains(., 'Odmítnout volitelné soubory cookie') or contains(., 'Refuză modulele cookie opţionale') or contains(., 'A nem kötelező cookie-k elutasítása')]"},{wait:2e3}]},{name:"ionos.de",prehideSelectors:[".privacy-consent--backdrop",".privacy-consent--modal"],detectCmp:[{exists:".privacy-consent--modal"}],detectPopup:[{visible:".privacy-consent--modal"}],optIn:[{click:"#selectAll"}],optOut:[{click:".footer-config-link"},{click:"#confirmSelection"}]},{name:"itopvpn.com",cosmetic:!0,prehideSelectors:[".pop-cookie"],detectCmp:[{exists:".pop-cookie"}],detectPopup:[{exists:".pop-cookie"}],optIn:[{click:"#_pcookie"}],optOut:[{hide:".pop-cookie"}]},{name:"iubenda",prehideSelectors:["#iubenda-cs-banner"],detectCmp:[{exists:"#iubenda-cs-banner"}],detectPopup:[{visible:".iubenda-cs-accept-btn"}],optIn:[{waitForThenClick:".iubenda-cs-accept-btn"}],optOut:[{waitForThenClick:".iubenda-cs-customize-btn"},{eval:"EVAL_IUBENDA_0"},{waitForThenClick:"#iubFooterBtn"}],test:[{eval:"EVAL_IUBENDA_1"}]},{name:"iWink",prehideSelectors:["body.cookies-request #cookie-bar"],detectCmp:[{exists:"body.cookies-request #cookie-bar"}],detectPopup:[{visible:"body.cookies-request #cookie-bar"}],optIn:[{waitForThenClick:"body.cookies-request #cookie-bar .allow-cookies"}],optOut:[{waitForThenClick:"body.cookies-request #cookie-bar .disallow-cookies"}],test:[{eval:"EVAL_IWINK_TEST"}]},{name:"jdsports",vendorUrl:"https://www.jdsports.co.uk/",runContext:{urlPattern:"^https://(www|m)\\.jdsports\\."},prehideSelectors:[".miniConsent,#PrivacyPolicyBanner"],detectCmp:[{exists:".miniConsent,#PrivacyPolicyBanner"}],detectPopup:[{visible:".miniConsent,#PrivacyPolicyBanner"}],optIn:[{waitForThenClick:".miniConsent .accept-all-cookies"}],optOut:[{if:{exists:"#PrivacyPolicyBanner"},then:[{hide:"#PrivacyPolicyBanner"}],else:[{waitForThenClick:"#cookie-settings"},{waitForThenClick:"#reject-all-cookies"}]}]},{name:"johnlewis.com",prehideSelectors:["div[class^=pecr-cookie-banner-]"],detectCmp:[{exists:"div[class^=pecr-cookie-banner-]"}],detectPopup:[{exists:"div[class^=pecr-cookie-banner-]"}],optOut:[{click:"button[data-test^=manage-cookies]"},{wait:"500"},{click:"label[data-test^=toggle][class*=checked]:not([class*=disabled])",all:!0,optional:!0},{click:"button[data-test=save-preferences]"}],optIn:[{click:"button[data-test=allow-all]"}]},{name:"jquery.cookieBar",vendorUrl:"https://github.com/kovarp/jquery.cookieBar",prehideSelectors:[".cookie-bar"],cosmetic:!0,detectCmp:[{exists:".cookie-bar .cookie-bar__message,.cookie-bar .cookie-bar__buttons"}],detectPopup:[{visible:".cookie-bar .cookie-bar__message,.cookie-bar .cookie-bar__buttons",check:"any"}],optIn:[{click:".cookie-bar .cookie-bar__btn"}],optOut:[{hide:".cookie-bar"}],test:[{visible:".cookie-bar .cookie-bar__message,.cookie-bar .cookie-bar__buttons",check:"none"},{eval:"EVAL_JQUERY_COOKIEBAR_0"}]},{name:"justwatch.com",prehideSelectors:[".consent-banner"],detectCmp:[{exists:".consent-banner .consent-banner__actions"}],detectPopup:[{visible:".consent-banner .consent-banner__actions"}],optIn:[{click:".consent-banner__actions button.basic-button.primary"}],optOut:[{click:".consent-banner__actions button.basic-button.secondary"},{waitForThenClick:".consent-modal__footer button.basic-button.secondary"},{waitForThenClick:".consent-modal ion-content > div > a:nth-child(9)"},{click:"label.consent-switch input[type=checkbox]:checked",all:!0,optional:!0},{waitForVisible:".consent-modal__footer button.basic-button.primary"},{click:".consent-modal__footer button.basic-button.primary"}]},{name:"ketch",vendorUrl:"https://www.ketch.com",runContext:{frame:!1,main:!0},intermediate:!1,prehideSelectors:["#lanyard_root div[role='dialog']"],detectCmp:[{exists:"#lanyard_root div[role='dialog']"}],detectPopup:[{visible:"#lanyard_root div[role='dialog']"}],optIn:[{if:{exists:"#lanyard_root button[class='confirmButton']"},then:[{waitForThenClick:"#lanyard_root div[class*=buttons] > :nth-child(2)"},{click:"#lanyard_root button[class='confirmButton']"}],else:[{waitForThenClick:"#lanyard_root div[class*=buttons] > :nth-child(2)"}]}],optOut:[{if:{exists:"#lanyard_root [aria-describedby=banner-description]"},then:[{waitForThenClick:"#lanyard_root div[class*=buttons] > button[class*=secondaryButton], #lanyard_root button[class*=buttons-secondary]",comment:"can be either settings or reject button"}]},{waitFor:"#lanyard_root [aria-describedby=preference-description],#lanyard_root [aria-describedby=modal-description], #ketch-preferences",timeout:1e3,optional:!0},{if:{exists:"#lanyard_root [aria-describedby=preference-description],#lanyard_root [aria-describedby=modal-description], #ketch-preferences"},then:[{waitForThenClick:"#lanyard_root button[class*=rejectButton], #lanyard_root button[class*=rejectAllButton]"},{click:"#lanyard_root button[class*=confirmButton],#lanyard_root div[class*=actions_] > button:nth-child(1), #lanyard_root button[class*=actionButton]"}]}],test:[{eval:"EVAL_KETCH_TEST"}]},{name:"kleinanzeigen-de",runContext:{urlPattern:"^https?://(www\\.)?kleinanzeigen\\.de"},prehideSelectors:["#gdpr-banner-container"],detectCmp:[{any:[{exists:"#gdpr-banner-container #gdpr-banner [data-testid=gdpr-banner-cmp-button]"},{exists:"#ConsentManagementPage"}]}],detectPopup:[{any:[{visible:"#gdpr-banner-container #gdpr-banner [data-testid=gdpr-banner-cmp-button]"},{visible:"#ConsentManagementPage"}]}],optIn:[{if:{exists:"#gdpr-banner-container #gdpr-banner"},then:[{click:"#gdpr-banner-container #gdpr-banner [data-testid=gdpr-banner-accept]"}],else:[{click:"#ConsentManagementPage .Button-primary"}]}],optOut:[{if:{exists:"#gdpr-banner-container #gdpr-banner"},then:[{click:"#gdpr-banner-container #gdpr-banner [data-testid=gdpr-banner-cmp-button]"}],else:[{click:"#ConsentManagementPage .Button-secondary"}]}]},{name:"lightbox",prehideSelectors:[".darken-layer.open,.lightbox.lightbox--cookie-consent"],detectCmp:[{exists:"body.cookie-consent-is-active div.lightbox--cookie-consent > div.lightbox__content > div.cookie-consent[data-jsb]"}],detectPopup:[{visible:"body.cookie-consent-is-active div.lightbox--cookie-consent > div.lightbox__content > div.cookie-consent[data-jsb]"}],optOut:[{click:".cookie-consent__footer > button[type='submit']:not([data-button='selectAll'])"}],optIn:[{click:".cookie-consent__footer > button[type='submit'][data-button='selectAll']"}]},{name:"lineagrafica",vendorUrl:"https://addons.prestashop.com/en/legal/8734-eu-cookie-law-gdpr-banner-blocker.html",cosmetic:!0,prehideSelectors:["#lgcookieslaw_banner,#lgcookieslaw_modal,.lgcookieslaw-overlay"],detectCmp:[{exists:"#lgcookieslaw_banner,#lgcookieslaw_modal,.lgcookieslaw-overlay"}],detectPopup:[{exists:"#lgcookieslaw_banner,#lgcookieslaw_modal,.lgcookieslaw-overlay"}],optIn:[{waitForThenClick:"#lgcookieslaw_accept"}],optOut:[{hide:"#lgcookieslaw_banner,#lgcookieslaw_modal,.lgcookieslaw-overlay"}]},{name:"linkedin.com",prehideSelectors:[".artdeco-global-alert[type=COOKIE_CONSENT]"],detectCmp:[{exists:".artdeco-global-alert[type=COOKIE_CONSENT]"}],detectPopup:[{visible:".artdeco-global-alert[type=COOKIE_CONSENT]"}],optIn:[{waitForVisible:".artdeco-global-alert[type=COOKIE_CONSENT] button[action-type=ACCEPT]"},{wait:500},{waitForThenClick:".artdeco-global-alert[type=COOKIE_CONSENT] button[action-type=ACCEPT]"}],optOut:[{waitForVisible:".artdeco-global-alert[type=COOKIE_CONSENT] button[action-type=DENY]"},{wait:500},{waitForThenClick:".artdeco-global-alert[type=COOKIE_CONSENT] button[action-type=DENY]"}],test:[{waitForVisible:".artdeco-global-alert[type=COOKIE_CONSENT]",check:"none"}]},{name:"livejasmin",vendorUrl:"https://www.livejasmin.com/",runContext:{urlPattern:"^https://(m|www)\\.livejasmin\\.com/"},prehideSelectors:["#consent_modal"],detectCmp:[{exists:"#consent_modal"}],detectPopup:[{visible:"#consent_modal"}],optIn:[{waitForThenClick:"#consent_modal button[data-testid=ButtonStyledButton]:first-of-type"}],optOut:[{waitForThenClick:"#consent_modal button[data-testid=ButtonStyledButton]:nth-of-type(2)"},{waitForVisible:"[data-testid=PrivacyPreferenceCenterWithConsentCookieContent]"},{click:"[data-testid=PrivacyPreferenceCenterWithConsentCookieContent] input[data-testid=PrivacyPreferenceCenterWithConsentCookieSwitch]:checked",optional:!0,all:!0},{waitForThenClick:"[data-testid=PrivacyPreferenceCenterWithConsentCookieContent] button[data-testid=ButtonStyledButton]:last-child"}]},{name:"macpaw.com",cosmetic:!0,prehideSelectors:['div[data-banner="cookies"]'],detectCmp:[{exists:'div[data-banner="cookies"]'}],detectPopup:[{exists:'div[data-banner="cookies"]'}],optIn:[{click:'button[data-banner-close="cookies"]'}],optOut:[{hide:'div[data-banner="cookies"]'}]},{name:"marksandspencer.com",cosmetic:!0,detectCmp:[{exists:".navigation-cookiebbanner"}],detectPopup:[{visible:".navigation-cookiebbanner"}],optOut:[{hide:".navigation-cookiebbanner"}],optIn:[{click:".navigation-cookiebbanner__submit"}]},{name:"mediamarkt.de",prehideSelectors:["div[aria-labelledby=pwa-consent-layer-title]","div[class^=StyledConsentLayerWrapper-]"],detectCmp:[{exists:"div[aria-labelledby^=pwa-consent-layer-title]"}],detectPopup:[{exists:"div[aria-labelledby^=pwa-consent-layer-title]"}],optOut:[{click:"button[data-test^=pwa-consent-layer-deny-all]"}],optIn:[{click:"button[data-test^=pwa-consent-layer-accept-all"}]},{name:"Mediavine",prehideSelectors:['[data-name="mediavine-gdpr-cmp"]'],detectCmp:[{exists:'[data-name="mediavine-gdpr-cmp"]'}],detectPopup:[{wait:500},{visible:'[data-name="mediavine-gdpr-cmp"]'}],optIn:[{waitForThenClick:'[data-name="mediavine-gdpr-cmp"] [format="primary"]'}],optOut:[{waitForThenClick:'[data-name="mediavine-gdpr-cmp"] [data-view="manageSettings"]'},{waitFor:'[data-name="mediavine-gdpr-cmp"] input[type=checkbox]'},{eval:"EVAL_MEDIAVINE_0",optional:!0},{click:'[data-name="mediavine-gdpr-cmp"] [format="secondary"]'}]},{name:"medium",vendorUrl:"https://medium.com",cosmetic:!0,runContext:{main:!0,frame:!1,urlPattern:"^https://([a-z0-9-]+\\.)?medium\\.com/"},prehideSelectors:[],detectCmp:[{exists:'div:has(> div > div > div[role=alert] > a[href^="https://policy.medium.com/medium-privacy-policy-"])'}],detectPopup:[{visible:'div:has(> div > div > div[role=alert] > a[href^="https://policy.medium.com/medium-privacy-policy-"])'}],optIn:[{waitForThenClick:"[data-testid=close-button]"}],optOut:[{hide:'div:has(> div > div > div[role=alert] > a[href^="https://policy.medium.com/medium-privacy-policy-"])'}]},{name:"microsoft.com",prehideSelectors:["#wcpConsentBannerCtrl"],detectCmp:[{exists:"#wcpConsentBannerCtrl"}],detectPopup:[{exists:"#wcpConsentBannerCtrl"}],optOut:[{eval:"EVAL_MICROSOFT_0"}],optIn:[{eval:"EVAL_MICROSOFT_1"}],test:[{eval:"EVAL_MICROSOFT_2"}]},{name:"midway-usa",runContext:{urlPattern:"^https://www\\.midwayusa\\.com/"},cosmetic:!0,prehideSelectors:["#cookie-container"],detectCmp:[{exists:['div[aria-label="Cookie Policy Banner"]']}],detectPopup:[{visible:"#cookie-container"}],optIn:[{click:"button#cookie-btn"}],optOut:[{hide:'div[aria-label="Cookie Policy Banner"]'}]},{name:"moneysavingexpert.com",detectCmp:[{exists:"dialog[data-testid=accept-our-cookies-dialog]"}],detectPopup:[{visible:"dialog[data-testid=accept-our-cookies-dialog]"}],optIn:[{click:"#banner-accept"}],optOut:[{click:"#banner-manage"},{click:"#pc-confirm"}]},{name:"monzo.com",prehideSelectors:[".cookie-alert, cookie-alert__content"],detectCmp:[{exists:'div.cookie-alert[role="dialog"]'},{exists:'a[href*="monzo"]'}],detectPopup:[{visible:".cookie-alert__content"}],optIn:[{click:".js-accept-cookie-policy"}],optOut:[{click:".js-decline-cookie-policy"}]},{name:"Moove",prehideSelectors:["#moove_gdpr_cookie_info_bar"],detectCmp:[{exists:"#moove_gdpr_cookie_info_bar"}],detectPopup:[{visible:"#moove_gdpr_cookie_info_bar:not(.moove-gdpr-info-bar-hidden)"}],optIn:[{waitForThenClick:".moove-gdpr-infobar-allow-all"}],optOut:[{if:{exists:"#moove_gdpr_cookie_info_bar .change-settings-button"},then:[{click:"#moove_gdpr_cookie_info_bar .change-settings-button"},{waitForVisible:"#moove_gdpr_cookie_modal"},{eval:"EVAL_MOOVE_0"},{click:".moove-gdpr-modal-save-settings"}],else:[{hide:"#moove_gdpr_cookie_info_bar"}]}],test:[{visible:"#moove_gdpr_cookie_info_bar",check:"none"}]},{name:"national-lottery.co.uk",detectCmp:[{exists:".cuk_cookie_consent"}],detectPopup:[{visible:".cuk_cookie_consent",check:"any"}],optOut:[{click:".cuk_cookie_consent_manage_pref"},{click:".cuk_cookie_consent_save_pref"},{click:".cuk_cookie_consent_close"}],optIn:[{click:".cuk_cookie_consent_accept_all"}]},{name:"nba.com",runContext:{urlPattern:"^https://(www\\.)?nba.com/"},cosmetic:!0,prehideSelectors:["#onetrust-banner-sdk"],detectCmp:[{exists:"#onetrust-banner-sdk"}],detectPopup:[{visible:"#onetrust-banner-sdk"}],optIn:[{click:"#onetrust-accept-btn-handler"}],optOut:[{hide:"#onetrust-banner-sdk"}]},{name:"netbeat.de",runContext:{urlPattern:"^https://(www\\.)?netbeat\\.de/"},prehideSelectors:["div#cookieWarning"],detectCmp:[{exists:"div#cookieWarning"}],detectPopup:[{visible:"div#cookieWarning"}],optIn:[{waitForThenClick:"a#btnCookiesAcceptAll"}],optOut:[{waitForThenClick:"a#btnCookiesDenyAll"}]},{name:"netflix.de",detectCmp:[{exists:"#cookie-disclosure"}],detectPopup:[{visible:".cookie-disclosure-message",check:"any"}],optIn:[{click:".btn-accept"}],optOut:[{hide:"#cookie-disclosure"},{click:".btn-reject"}]},{name:"nhs.uk",prehideSelectors:["#nhsuk-cookie-banner"],detectCmp:[{exists:"#nhsuk-cookie-banner"}],detectPopup:[{exists:"#nhsuk-cookie-banner"}],optOut:[{click:"#nhsuk-cookie-banner__link_accept"}],optIn:[{click:"#nhsuk-cookie-banner__link_accept_analytics"}]},{name:"nike",vendorUrl:"https://nike.com",runContext:{urlPattern:"^https://(www\\.)?nike\\.com/"},prehideSelectors:[],detectCmp:[{exists:"[data-testid=cookie-dialog-root]"}],detectPopup:[{visible:"[data-testid=cookie-dialog-root]"}],optIn:[{waitForThenClick:"[data-testid=dialog-accept-button]"}],optOut:[{waitForThenClick:"input[type=radio][id$=-declineLabel]",all:!0},{waitForThenClick:"[data-testid=confirm-choice-button]"}]},{name:"notice-cookie",prehideSelectors:[".button--notice"],cosmetic:!0,detectCmp:[{exists:".notice--cookie"}],detectPopup:[{visible:".notice--cookie"}],optIn:[{click:".button--notice"}],optOut:[{hide:".notice--cookie"}]},{name:"nrk.no",cosmetic:!0,prehideSelectors:[".nrk-masthead__info-banner--cookie"],detectCmp:[{exists:".nrk-masthead__info-banner--cookie"}],detectPopup:[{exists:".nrk-masthead__info-banner--cookie"}],optIn:[{click:"div.nrk-masthead__info-banner--cookie button > span:has(+ svg.nrk-close)"}],optOut:[{hide:".nrk-masthead__info-banner--cookie"}]},{name:"obi.de",prehideSelectors:[".disc-cp--active"],detectCmp:[{exists:".disc-cp-modal__modal"}],detectPopup:[{visible:".disc-cp-modal__modal"}],optIn:[{click:".js-disc-cp-accept-all"}],optOut:[{click:".js-disc-cp-deny-all"}]},{name:"om",vendorUrl:"https://olli-machts.de/en/extension/cookie-manager",prehideSelectors:[".tx-om-cookie-consent"],detectCmp:[{exists:".tx-om-cookie-consent .active[data-omcookie-panel]"}],detectPopup:[{exists:".tx-om-cookie-consent .active[data-omcookie-panel]"}],optIn:[{waitForThenClick:"[data-omcookie-panel-save=all]"}],optOut:[{if:{exists:"[data-omcookie-panel-save=min]"},then:[{waitForThenClick:"[data-omcookie-panel-save=min]"}],else:[{click:"input[data-omcookie-panel-grp]:checked:not(:disabled)",all:!0,optional:!0},{waitForThenClick:"[data-omcookie-panel-save=save]"}]}]},{name:"onlyFans.com",runContext:{urlPattern:"^https://onlyfans\\.com/"},prehideSelectors:["div.b-cookies-informer"],detectCmp:[{exists:"div.b-cookies-informer"}],detectPopup:[{exists:"div.b-cookies-informer"}],optIn:[{click:"div.b-cookies-informer__nav > button:nth-child(2)"}],optOut:[{click:"div.b-cookies-informer__nav > button:nth-child(1)"},{if:{exists:"div.b-cookies-informer__switchers"},then:[{click:"div.b-cookies-informer__switchers input:not([disabled])",all:!0},{click:"div.b-cookies-informer__nav > button"}]}]},{name:"openli",vendorUrl:"https://openli.com",prehideSelectors:[".legalmonster-cleanslate"],detectCmp:[{exists:".legalmonster-cleanslate"}],detectPopup:[{visible:".legalmonster-cleanslate #lm-cookie-wall-container",check:"any"}],optIn:[{waitForThenClick:"#lm-accept-all"}],optOut:[{waitForThenClick:"#lm-accept-necessary"}]},{name:"opera.com",vendorUrl:"https://unknown",cosmetic:!1,runContext:{main:!0,frame:!1},intermediate:!1,prehideSelectors:[],detectCmp:[{exists:"#cookie-consent .manage-cookies__btn"}],detectPopup:[{visible:"#cookie-consent .cookie-basic-consent__btn"}],optIn:[{waitForThenClick:"#cookie-consent .cookie-basic-consent__btn"}],optOut:[{waitForThenClick:"#cookie-consent .manage-cookies__btn"},{waitForThenClick:"#cookie-consent .active.marketing_option_switch.cookie-consent__switch",all:!0},{waitForThenClick:"#cookie-consent .cookie-selection__btn"}],test:[{eval:"EVAL_OPERA_0"}]},{name:"osano",prehideSelectors:[".osano-cm-window,.osano-cm-dialog"],detectCmp:[{exists:".osano-cm-window"}],detectPopup:[{visible:".osano-cm-dialog"}],optIn:[{click:".osano-cm-accept-all",optional:!0}],optOut:[{waitForThenClick:".osano-cm-denyAll"}]},{name:"otto.de",prehideSelectors:[".cookieBanner--visibility"],detectCmp:[{exists:".cookieBanner--visibility"}],detectPopup:[{visible:".cookieBanner__wrapper"}],optIn:[{click:".js_cookieBannerPermissionButton"}],optOut:[{click:".js_cookieBannerProhibitionButton"}]},{name:"ourworldindata",vendorUrl:"https://ourworldindata.org/",runContext:{urlPattern:"^https://ourworldindata\\.org/"},prehideSelectors:[".cookie-manager"],detectCmp:[{exists:".cookie-manager"}],detectPopup:[{visible:".cookie-manager .cookie-notice.open"}],optIn:[{waitForThenClick:".cookie-notice [data-test=accept]"}],optOut:[{waitForThenClick:".cookie-notice [data-test=reject]"}]},{name:"pabcogypsum",vendorUrl:"https://unknown",prehideSelectors:[".js-cookie-notice:has(#cookie_settings-form)"],detectCmp:[{exists:".js-cookie-notice #cookie_settings-form"}],detectPopup:[{visible:".js-cookie-notice #cookie_settings-form"}],optIn:[{waitForThenClick:".js-cookie-notice button[value=allow]"}],optOut:[{waitForThenClick:".js-cookie-notice button[value=disable]"}]},{name:"paypal-us",prehideSelectors:["#ccpaCookieContent_wrapper, article.ppvx_modal--overpanel"],detectCmp:[{exists:"#ccpaCookieBanner, .privacy-sheet-content"}],detectPopup:[{exists:"#ccpaCookieBanner, .privacy-sheet-content"}],optIn:[{click:"#acceptAllButton"}],optOut:[{if:{exists:"#bannerDeclineButton"},then:[{click:"#bannerDeclineButton"}],else:[{if:{exists:"a#manageCookiesLink"},then:[{click:"a#manageCookiesLink"}],else:[{waitForVisible:".privacy-sheet-content #formContent"},{click:"#formContent .cookiepref-11m2iee-checkbox_base input:checked",all:!0,optional:!0},{click:".confirmCookie #submitCookiesBtn"}]}]}]},{name:"paypal.com",prehideSelectors:["#gdprCookieBanner"],detectCmp:[{exists:"#gdprCookieBanner"}],detectPopup:[{visible:"#gdprCookieContent_wrapper"}],optIn:[{click:"#acceptAllButton"}],optOut:[{wait:200},{click:".gdprCookieBanner_decline-button"}],test:[{wait:500},{eval:"EVAL_PAYPAL_0"}]},{name:"pinetools.com",cosmetic:!0,prehideSelectors:["#aviso_cookies"],detectCmp:[{exists:"#aviso_cookies"}],detectPopup:[{exists:".lang_en #aviso_cookies"}],optIn:[{click:"#aviso_cookies .a_boton_cerrar"}],optOut:[{hide:"#aviso_cookies"}]},{name:"pinterest-business",vendorUrl:"https://business.pinterest.com/",runContext:{urlPattern:"^https://.*\\.pinterest\\.com/"},prehideSelectors:[".BusinessCookieConsent"],detectCmp:[{exists:".BusinessCookieConsent"}],detectPopup:[{visible:".BusinessCookieConsent [data-id=cookie-consent-banner-buttons]"}],optIn:[{waitForThenClick:"[data-id=cookie-consent-banner-buttons] > div:nth-child(1) button"}],optOut:[{waitForThenClick:"[data-id=cookie-consent-banner-buttons] > div:nth-child(2) button"}]},{name:"pmc",cosmetic:!0,prehideSelectors:["#pmc-pp-tou--notice"],detectCmp:[{exists:"#pmc-pp-tou--notice"}],detectPopup:[{visible:"#pmc-pp-tou--notice"}],optIn:[{click:"span.pmc-pp-tou--notice-close-btn"}],optOut:[{hide:"#pmc-pp-tou--notice"}]},{name:"pornhub.com",runContext:{urlPattern:"^https://(www\\.)?pornhub\\.com/"},cosmetic:!0,prehideSelectors:[".cookiesBanner"],detectCmp:[{exists:".cookiesBanner"}],detectPopup:[{visible:".cookiesBanner"}],optIn:[{click:".cookiesBanner .okButton"}],optOut:[{hide:".cookiesBanner"}]},{name:"pornpics.com",cosmetic:!0,prehideSelectors:["#cookie-contract"],detectCmp:[{exists:"#cookie-contract"}],detectPopup:[{visible:"#cookie-contract"}],optIn:[{click:"#cookie-contract .icon-cross"}],optOut:[{hide:"#cookie-contract"}]},{name:"PrimeBox CookieBar",prehideSelectors:["#cookie-bar"],detectCmp:[{exists:"#cookie-bar .cb-enable,#cookie-bar .cb-disable,#cookie-bar .cb-policy"}],detectPopup:[{visible:"#cookie-bar .cb-enable,#cookie-bar .cb-disable,#cookie-bar .cb-policy",check:"any"}],optIn:[{waitForThenClick:"#cookie-bar .cb-enable"}],optOut:[{click:"#cookie-bar .cb-disable",optional:!0},{hide:"#cookie-bar"}],test:[{eval:"EVAL_PRIMEBOX_0"}]},{name:"privacymanager.io",prehideSelectors:["#gdpr-consent-tool-wrapper",'iframe[src^="https://cmp-consent-tool.privacymanager.io"]'],runContext:{urlPattern:"^https://cmp-consent-tool\\.privacymanager\\.io/",main:!1,frame:!0},detectCmp:[{exists:"button#save"}],detectPopup:[{visible:"button#save"}],optIn:[{click:"button#save"}],optOut:[{if:{exists:"#denyAll"},then:[{click:"#denyAll"},{waitForThenClick:".okButton"}],else:[{waitForThenClick:"#manageSettings"},{waitFor:".purposes-overview-list"},{waitFor:"button#saveAndExit"},{click:"span[role=checkbox][aria-checked=true]",all:!0,optional:!0},{click:"button#saveAndExit"}]}]},{name:"productz.com",vendorUrl:"https://productz.com/",runContext:{urlPattern:"^https://productz\\.com/"},prehideSelectors:[],detectCmp:[{exists:".c-modal.is-active"}],detectPopup:[{visible:".c-modal.is-active"}],optIn:[{waitForThenClick:".c-modal.is-active .is-accept"}],optOut:[{waitForThenClick:".c-modal.is-active .is-dismiss"}]},{name:"pubtech",prehideSelectors:["#pubtech-cmp"],detectCmp:[{exists:"#pubtech-cmp"}],detectPopup:[{visible:"#pubtech-cmp #pt-actions"}],optIn:[{if:{exists:"#pt-accept-all"},then:[{click:"#pubtech-cmp #pt-actions #pt-accept-all"}],else:[{click:"#pubtech-cmp #pt-actions button:nth-of-type(2)"}]}],optOut:[{click:"#pubtech-cmp #pt-close"}],test:[{eval:"EVAL_PUBTECH_0"}]},{name:"quantcast",prehideSelectors:["#qc-cmp2-main,#qc-cmp2-container"],detectCmp:[{exists:"#qc-cmp2-container"}],detectPopup:[{visible:"#qc-cmp2-ui"}],optOut:[{waitFor:'.qc-cmp2-summary-buttons > button[mode="secondary"]',timeout:2e3},{if:{exists:'.qc-cmp2-summary-buttons > button[mode="secondary"]:nth-of-type(2)'},then:[{click:'.qc-cmp2-summary-buttons > button[mode="secondary"]:nth-of-type(2)'}],else:[{click:'.qc-cmp2-summary-buttons > button[mode="secondary"]:nth-of-type(1)'},{waitFor:"#qc-cmp2-ui"},{click:'.qc-cmp2-toggle-switch > button[aria-checked="true"]',all:!0,optional:!0},{click:'.qc-cmp2-main button[aria-label="REJECT ALL"]',optional:!0},{waitForThenClick:'.qc-cmp2-main button[aria-label="SAVE & EXIT"],.qc-cmp2-buttons-desktop > button[mode="primary"]',timeout:5e3}]}],optIn:[{click:'.qc-cmp2-summary-buttons > button[mode="primary"]'}]},{name:"reddit.com",runContext:{urlPattern:"^https://www\\.reddit\\.com/"},prehideSelectors:["[bundlename=reddit_cookie_banner]"],detectCmp:[{exists:"reddit-cookie-banner"}],detectPopup:[{visible:"reddit-cookie-banner"}],optIn:[{waitForThenClick:["reddit-cookie-banner","#accept-all-cookies-button > button"]}],optOut:[{waitForThenClick:["reddit-cookie-banner","#reject-nonessential-cookies-button > button"]}],test:[{eval:"EVAL_REDDIT_0"}]},{name:"roblox",vendorUrl:"https://roblox.com",cosmetic:!1,runContext:{main:!0,frame:!1,urlPattern:"^https://(www\\.)?roblox\\.com/"},prehideSelectors:[],detectCmp:[{exists:".cookie-banner-wrapper"}],detectPopup:[{visible:".cookie-banner-wrapper .cookie-banner"}],optIn:[{waitForThenClick:".cookie-banner-wrapper button.btn-cta-lg"}],optOut:[{waitForThenClick:".cookie-banner-wrapper button.btn-secondary-lg"}],test:[{eval:"EVAL_ROBLOX_TEST"}]},{name:"rog-forum.asus.com",runContext:{urlPattern:"^https://rog-forum\\.asus\\.com/"},prehideSelectors:["#cookie-policy-info"],detectCmp:[{exists:"#cookie-policy-info"}],detectPopup:[{visible:"#cookie-policy-info"}],optIn:[{click:'div.cookie-btn-box > div[aria-label="Accept"]'}],optOut:[{click:'div.cookie-btn-box > div[aria-label="Reject"]'},{waitForThenClick:'.cookie-policy-lightbox-bottom > div[aria-label="Save Settings"]'}]},{name:"roofingmegastore.co.uk",runContext:{urlPattern:"^https://(www\\.)?roofingmegastore\\.co\\.uk"},prehideSelectors:["#m-cookienotice"],detectCmp:[{exists:"#m-cookienotice"}],detectPopup:[{visible:"#m-cookienotice"}],optIn:[{click:"#accept-cookies"}],optOut:[{click:"#manage-cookies"},{waitForThenClick:"#accept-selected"}]},{name:"samsung.com",runContext:{urlPattern:"^https://www\\.samsung\\.com/"},cosmetic:!0,prehideSelectors:["div.cookie-bar"],detectCmp:[{exists:"div.cookie-bar"}],detectPopup:[{visible:"div.cookie-bar"}],optIn:[{click:"div.cookie-bar__manage > a"}],optOut:[{hide:"div.cookie-bar"}]},{name:"setapp.com",vendorUrl:"https://setapp.com/",cosmetic:!0,runContext:{urlPattern:"^https://setapp\\.com/"},prehideSelectors:[],detectCmp:[{exists:".cookie-banner.js-cookie-banner"}],detectPopup:[{visible:".cookie-banner.js-cookie-banner"}],optIn:[{waitForThenClick:".cookie-banner.js-cookie-banner button"}],optOut:[{hide:".cookie-banner.js-cookie-banner"}]},{name:"sibbo",prehideSelectors:["sibbo-cmp-layout"],detectCmp:[{exists:"sibbo-cmp-layout"}],detectPopup:[{visible:"#rejectAllMain"}],optIn:[{click:"#acceptAllMain"}],optOut:[{click:"#rejectAllMain"}]},{name:"similarweb.com",cosmetic:!0,prehideSelectors:[".app-cookies-notification"],detectCmp:[{exists:".app-cookies-notification"}],detectPopup:[{exists:".app-layout .app-cookies-notification"}],optIn:[{click:"button.app-cookies-notification__dismiss"}],optOut:[{hide:".app-layout .app-cookies-notification"}]},{name:"Sirdata",cosmetic:!1,prehideSelectors:["#sd-cmp"],detectCmp:[{exists:"#sd-cmp"}],detectPopup:[{visible:"#sd-cmp"}],optIn:[{waitForThenClick:"#sd-cmp .sd-cmp-3cRQ2"}],optOut:[{waitForThenClick:["#sd-cmp","xpath///span[contains(., 'Do not accept') or contains(., 'Acceptera inte') or contains(., 'No aceptar') or contains(., 'Ikke acceptere') or contains(., 'Nicht akzeptieren') or contains(., 'Не приемам') or contains(., 'Να μην γίνει αποδοχή') or contains(., 'Niet accepteren') or contains(., 'Nepřijímat') or contains(., 'Nie akceptuj') or contains(., 'Nu acceptați') or contains(., 'Não aceitar') or contains(., 'Continuer sans accepter') or contains(., 'Non accettare') or contains(., 'Nem fogad el')]"]}]},{name:"snigel",detectCmp:[{exists:".snigel-cmp-framework"}],detectPopup:[{visible:".snigel-cmp-framework"}],optOut:[{click:"#sn-b-custom"},{click:"#sn-b-save"}],test:[{eval:"EVAL_SNIGEL_0"}],optIn:[{click:".snigel-cmp-framework #accept-choices"}]},{name:"steampowered.com",detectCmp:[{exists:".cookiepreferences_popup"},{visible:".cookiepreferences_popup"}],detectPopup:[{visible:".cookiepreferences_popup"}],optOut:[{click:"#rejectAllButton"}],optIn:[{click:"#acceptAllButton"}],test:[{wait:1e3},{eval:"EVAL_STEAMPOWERED_0"}]},{name:"strato.de",prehideSelectors:[".consent__wrapper"],runContext:{urlPattern:"^https://www\\.strato\\.de/"},detectCmp:[{exists:".consent"}],detectPopup:[{visible:".consent"}],optIn:[{click:"button.consentAgree"}],optOut:[{click:"button.consentSettings"},{waitForThenClick:"button#consentSubmit"}]},{name:"svt.se",vendorUrl:"https://www.svt.se/",runContext:{urlPattern:"^https://www\\.svt\\.se/"},prehideSelectors:["[class*=CookieConsent__root___]"],detectCmp:[{exists:"[class*=CookieConsent__root___]"}],detectPopup:[{visible:"[class*=CookieConsent__modal___]"}],optIn:[{waitForThenClick:"[class*=CookieConsent__modal___] > div > button[class*=primary]"}],optOut:[{waitForThenClick:"[class*=CookieConsent__modal___] > div > button[class*=secondary]:nth-child(2)"}],test:[{eval:"EVAL_SVT_TEST"}]},{name:"takealot.com",cosmetic:!0,prehideSelectors:['div[class^="cookies-banner-module_"]'],detectCmp:[{exists:'div[class^="cookies-banner-module_cookie-banner_"]'}],detectPopup:[{exists:'div[class^="cookies-banner-module_cookie-banner_"]'}],optIn:[{click:'button[class*="cookies-banner-module_dismiss-button_"]'}],optOut:[{hide:'div[class^="cookies-banner-module_"]'},{if:{exists:'div[class^="cookies-banner-module_small-cookie-banner_"]'},then:[{eval:"EVAL_TAKEALOT_0"}],else:[]}]},{name:"tarteaucitron.js",prehideSelectors:["#tarteaucitronRoot"],detectCmp:[{exists:"#tarteaucitronRoot"}],detectPopup:[{visible:"#tarteaucitronRoot #tarteaucitronAlertBig",check:"any"}],optIn:[{eval:"EVAL_TARTEAUCITRON_1"}],optOut:[{eval:"EVAL_TARTEAUCITRON_0"}],test:[{eval:"EVAL_TARTEAUCITRON_2",comment:"sometimes there are required categories, so we check that at least something is false"}]},{name:"taunton",vendorUrl:"https://www.taunton.com/",prehideSelectors:["#taunton-user-consent__overlay"],detectCmp:[{exists:"#taunton-user-consent__overlay"}],detectPopup:[{exists:"#taunton-user-consent__overlay:not([aria-hidden=true])"}],optIn:[{click:"#taunton-user-consent__toolbar input[type=checkbox]:not(:checked)"},{click:"#taunton-user-consent__toolbar button[type=submit]"}],optOut:[{click:"#taunton-user-consent__toolbar input[type=checkbox]:checked",optional:!0,all:!0},{click:"#taunton-user-consent__toolbar button[type=submit]"}],test:[{eval:"EVAL_TAUNTON_TEST"}]},{name:"Tealium",prehideSelectors:["#__tealiumGDPRecModal,#__tealiumGDPRcpPrefs,#__tealiumImplicitmodal,#consent-layer"],detectCmp:[{exists:"#__tealiumGDPRecModal *,#__tealiumGDPRcpPrefs *,#__tealiumImplicitmodal *"},{eval:"EVAL_TEALIUM_0"}],detectPopup:[{visible:"#__tealiumGDPRecModal *,#__tealiumGDPRcpPrefs *,#__tealiumImplicitmodal *",check:"any"}],optOut:[{eval:"EVAL_TEALIUM_1"},{eval:"EVAL_TEALIUM_DONOTSELL"},{hide:"#__tealiumGDPRecModal,#__tealiumGDPRcpPrefs,#__tealiumImplicitmodal"},{waitForThenClick:"#cm-acceptNone,.js-accept-essential-cookies",timeout:1e3,optional:!0}],optIn:[{hide:"#__tealiumGDPRecModal,#__tealiumGDPRcpPrefs"},{eval:"EVAL_TEALIUM_2"}],test:[{eval:"EVAL_TEALIUM_3"},{eval:"EVAL_TEALIUM_DONOTSELL_CHECK"},{visible:"#__tealiumGDPRecModal,#__tealiumGDPRcpPrefs",check:"none"}]},{name:"temu",vendorUrl:"https://temu.com",runContext:{urlPattern:"^https://([a-z0-9-]+\\.)?temu\\.com/"},prehideSelectors:[],detectCmp:[{exists:'div > div > div > div > span[href*="/cookie-and-similar-technologies-policy.html"]'}],detectPopup:[{visible:'div > div > div > div > span[href*="/cookie-and-similar-technologies-policy.html"]'}],optIn:[{waitForThenClick:'div > div > div:has(> div > span[href*="/cookie-and-similar-technologies-policy.html"]) > [role=button]:nth-child(3)'}],optOut:[{if:{exists:"xpath///span[contains(., 'Alle afwijzen') or contains(., 'Reject all') or contains(., 'Tümünü reddet') or contains(., 'Odrzuć wszystko')]"},then:[{waitForThenClick:"xpath///span[contains(., 'Alle afwijzen') or contains(., 'Reject all') or contains(., 'Tümünü reddet') or contains(., 'Odrzuć wszystko')]"}],else:[{waitForThenClick:'div > div > div:has(> div > span[href*="/cookie-and-similar-technologies-policy.html"]) > [role=button]:nth-child(2)'}]}]},{name:"Termly",prehideSelectors:["#termly-code-snippet-support"],detectCmp:[{exists:"#termly-code-snippet-support"}],detectPopup:[{visible:"#termly-code-snippet-support div"}],optIn:[{waitForThenClick:'[data-tid="banner-accept"]'}],optOut:[{if:{exists:'[data-tid="banner-decline"]'},then:[{click:'[data-tid="banner-decline"]'}],else:[{click:".t-preference-button"},{wait:500},{if:{exists:".t-declineAllButton"},then:[{click:".t-declineAllButton"}],else:[{waitForThenClick:".t-preference-modal input[type=checkbox][checked]:not([disabled])",all:!0},{waitForThenClick:".t-saveButton"}]}]}]},{name:"termsfeed",vendorUrl:"https://termsfeed.com",comment:"v4.x.x",prehideSelectors:[".termsfeed-com---nb"],detectCmp:[{exists:".termsfeed-com---nb"}],detectPopup:[{visible:".termsfeed-com---nb"}],optIn:[{waitForThenClick:".cc-nb-okagree"}],optOut:[{waitForThenClick:".cc-nb-reject"}]},{name:"termsfeed3",vendorUrl:"https://termsfeed.com",comment:"v3.x.x",prehideSelectors:[".cc_dialog.cc_css_reboot,.cc_overlay_lock"],detectCmp:[{exists:".cc_dialog.cc_css_reboot"}],detectPopup:[{visible:".cc_dialog.cc_css_reboot"}],optIn:[{waitForThenClick:".cc_dialog.cc_css_reboot .cc_b_ok"}],optOut:[{if:{exists:".cc_dialog.cc_css_reboot .cc_b_cp"},then:[{click:".cc_dialog.cc_css_reboot .cc_b_cp"},{waitForVisible:".cookie-consent-preferences-dialog .cc_cp_f_save button"},{waitForThenClick:".cookie-consent-preferences-dialog .cc_cp_f_save button"}],else:[{hide:".cc_dialog.cc_css_reboot,.cc_overlay_lock"}]}]},{name:"tesla",vendorUrl:"https://tesla.com/",runContext:{main:!0,frame:!1,urlPattern:"^https://(www\\.)?tesla\\.com/"},prehideSelectors:[],detectCmp:[{exists:"#cookie_banner"}],detectPopup:[{visible:"#cookie_banner"}],optIn:[{waitForThenClick:"#tsla-accept-cookie"}],optOut:[{waitForThenClick:"#tsla-reject-cookie"}],test:[{eval:"EVAL_TESLA_TEST"}]},{name:"Test page cosmetic CMP",cosmetic:!0,prehideSelectors:["#privacy-test-page-cmp-test-prehide"],detectCmp:[{exists:"#privacy-test-page-cmp-test-banner"}],detectPopup:[{visible:"#privacy-test-page-cmp-test-banner"}],optIn:[{waitFor:"#accept-all"},{click:"#accept-all"}],optOut:[{hide:"#privacy-test-page-cmp-test-banner"}],test:[{wait:500},{eval:"EVAL_TESTCMP_COSMETIC_0"}]},{name:"Test page CMP",prehideSelectors:["#reject-all"],detectCmp:[{exists:"#privacy-test-page-cmp-test"}],detectPopup:[{visible:"#privacy-test-page-cmp-test"}],optIn:[{waitFor:"#accept-all"},{click:"#accept-all"}],optOut:[{waitFor:"#reject-all"},{click:"#reject-all"}],test:[{eval:"EVAL_TESTCMP_0"}]},{name:"thalia.de",prehideSelectors:[".consent-banner-box"],detectCmp:[{exists:"consent-banner[component=consent-banner]"}],detectPopup:[{visible:".consent-banner-box"}],optIn:[{click:".button-zustimmen"}],optOut:[{click:"button[data-consent=disagree]"}]},{name:"thefreedictionary.com",prehideSelectors:["#cmpBanner"],detectCmp:[{exists:"#cmpBanner"}],detectPopup:[{visible:"#cmpBanner"}],optIn:[{eval:"EVAL_THEFREEDICTIONARY_1"}],optOut:[{eval:"EVAL_THEFREEDICTIONARY_0"}]},{name:"theverge",runContext:{frame:!1,main:!0,urlPattern:"^https://(www)?\\.theverge\\.com"},intermediate:!1,prehideSelectors:[".duet--cta--cookie-banner"],detectCmp:[{exists:".duet--cta--cookie-banner"}],detectPopup:[{visible:".duet--cta--cookie-banner"}],optIn:[{click:".duet--cta--cookie-banner button.tracking-12",all:!1}],optOut:[{click:".duet--cta--cookie-banner button.tracking-12 > span"}],test:[{eval:"EVAL_THEVERGE_0"}]},{name:"tidbits-com",cosmetic:!0,prehideSelectors:["#eu_cookie_law_widget-2"],detectCmp:[{exists:"#eu_cookie_law_widget-2"}],detectPopup:[{visible:"#eu_cookie_law_widget-2"}],optIn:[{click:"#eu-cookie-law form > input.accept"}],optOut:[{hide:"#eu_cookie_law_widget-2"}]},{name:"tractor-supply",runContext:{urlPattern:"^https://www\\.tractorsupply\\.com/"},cosmetic:!0,prehideSelectors:[".tsc-cookie-banner"],detectCmp:[{exists:".tsc-cookie-banner"}],detectPopup:[{visible:".tsc-cookie-banner"}],optIn:[{click:"#cookie-banner-cancel"}],optOut:[{hide:".tsc-cookie-banner"}]},{name:"trader-joes-com",cosmetic:!0,prehideSelectors:['div.aem-page > div[class^="CookiesAlert_cookiesAlert__"]'],detectCmp:[{exists:'div.aem-page > div[class^="CookiesAlert_cookiesAlert__"]'}],detectPopup:[{visible:'div.aem-page > div[class^="CookiesAlert_cookiesAlert__"]'}],optIn:[{click:'div[class^="CookiesAlert_cookiesAlert__container__"] button'}],optOut:[{hide:'div.aem-page > div[class^="CookiesAlert_cookiesAlert__"]'}]},{name:"transcend",vendorUrl:"https://unknown",cosmetic:!0,prehideSelectors:["#transcend-consent-manager"],detectCmp:[{exists:"#transcend-consent-manager"}],detectPopup:[{visible:"#transcend-consent-manager"}],optIn:[{waitForThenClick:["#transcend-consent-manager","#consentManagerMainDialog .inner-container button"]}],optOut:[{hide:"#transcend-consent-manager"}]},{name:"transip-nl",runContext:{urlPattern:"^https://www\\.transip\\.nl/"},prehideSelectors:["#consent-modal"],detectCmp:[{any:[{exists:"#consent-modal"},{exists:"#privacy-settings-content"}]}],detectPopup:[{any:[{visible:"#consent-modal"},{visible:"#privacy-settings-content"}]}],optIn:[{click:'button[type="submit"]'}],optOut:[{if:{exists:"#privacy-settings-content"},then:[{click:'button[type="submit"]'}],else:[{click:"div.one-modal__action-footer-column--secondary > a"}]}]},{name:"tropicfeel-com",prehideSelectors:["#shopify-section-cookies-controller"],detectCmp:[{exists:"#shopify-section-cookies-controller"}],detectPopup:[{visible:"#shopify-section-cookies-controller #cookies-controller-main-pane",check:"any"}],optIn:[{waitForThenClick:"#cookies-controller-main-pane form[data-form-allow-all] button"}],optOut:[{click:"#cookies-controller-main-pane a[data-tab-target=manage-cookies]"},{waitFor:"#manage-cookies-pane.active"},{click:"#manage-cookies-pane.active input[type=checkbox][checked]:not([disabled])",all:!0},{click:"#manage-cookies-pane.active button[type=submit]"}],test:[]},{name:"true-car",runContext:{urlPattern:"^https://www\\.truecar\\.com/"},cosmetic:!0,prehideSelectors:[['div[aria-labelledby="cookie-banner-heading"]']],detectCmp:[{exists:'div[aria-labelledby="cookie-banner-heading"]'}],detectPopup:[{visible:'div[aria-labelledby="cookie-banner-heading"]'}],optIn:[{click:'div[aria-labelledby="cookie-banner-heading"] > button[aria-label="Close"]'}],optOut:[{hide:'div[aria-labelledby="cookie-banner-heading"]'}]},{name:"truyo",prehideSelectors:["#truyo-consent-module"],detectCmp:[{exists:"#truyo-cookieBarContent"}],detectPopup:[{visible:"#truyo-consent-module"}],optIn:[{click:"button#acceptAllCookieButton"}],optOut:[{click:"button#declineAllCookieButton"}]},{name:"twcc",vendorUrl:"https://unknown",cosmetic:!1,runContext:{main:!0,frame:!1,urlPattern:""},prehideSelectors:["#twcc__mechanism"],detectCmp:[{exists:"#twcc__mechanism .twcc__notice"}],detectPopup:[{visible:"#twcc__mechanism .twcc__notice"}],optIn:[{waitForThenClick:"#twcc__accept-button"}],optOut:[{waitForThenClick:"#twcc__decline-button"}],test:[{eval:"EVAL_TWCC_TEST"}]},{name:"twitch-mobile",vendorUrl:"https://m.twitch.tv/",cosmetic:!0,runContext:{urlPattern:"^https?://m\\.twitch\\.tv"},prehideSelectors:[],detectCmp:[{exists:'.ReactModal__Overlay [href="https://www.twitch.tv/p/cookie-policy"]'}],detectPopup:[{visible:'.ReactModal__Overlay [href="https://www.twitch.tv/p/cookie-policy"]'}],optIn:[{waitForThenClick:'.ReactModal__Overlay:has([href="https://www.twitch.tv/p/cookie-policy"]) button'}],optOut:[{hide:'.ReactModal__Overlay:has([href="https://www.twitch.tv/p/cookie-policy"])'}]},{name:"twitch.tv",runContext:{urlPattern:"^https?://(www\\.)?twitch\\.tv"},prehideSelectors:["div:has(> .consent-banner .consent-banner__content--gdpr-v2),.ReactModalPortal:has([data-a-target=consent-modal-save])"],detectCmp:[{exists:".consent-banner .consent-banner__content--gdpr-v2"}],detectPopup:[{visible:".consent-banner .consent-banner__content--gdpr-v2"}],optIn:[{click:'button[data-a-target="consent-banner-accept"]'}],optOut:[{hide:"div:has(> .consent-banner .consent-banner__content--gdpr-v2)"},{click:'button[data-a-target="consent-banner-manage-preferences"]'},{waitFor:"input[type=checkbox][data-a-target=tw-checkbox]"},{click:"input[type=checkbox][data-a-target=tw-checkbox][checked]:not([disabled])",all:!0,optional:!0},{waitForThenClick:"[data-a-target=consent-modal-save]"},{waitForVisible:".ReactModalPortal:has([data-a-target=consent-modal-save])",check:"none"}]},{name:"twitter",runContext:{urlPattern:"^https://([a-z0-9-]+\\.)?(twitter|x)\\.com/"},prehideSelectors:['[data-testid="BottomBar"]'],detectCmp:[{exists:'[data-testid="BottomBar"] div'}],detectPopup:[{visible:'[data-testid="BottomBar"] div'}],optIn:[{waitForThenClick:'[data-testid="BottomBar"] > div:has(>div:first-child>div:last-child>button[role=button]>span) > div:last-child > button[role=button]:first-child'}],optOut:[{waitForThenClick:'[data-testid="BottomBar"] > div:has(>div:first-child>div:last-child>button[role=button]>span) > div:last-child > button[role=button]:last-child'}],TODOtest:[{eval:"EVAL_document.cookie.includes('d_prefs=MjoxLGNvbnNlbnRfdmVyc2lvbjoy')"}]},{name:"ubuntu.com",prehideSelectors:["dialog.cookie-policy"],detectCmp:[{any:[{exists:"dialog.cookie-policy header"},{exists:'xpath///*[@id="modal"]/div/header'}]}],detectPopup:[{any:[{visible:"dialog header"},{visible:'xpath///*[@id="modal"]/div/header'}]}],optIn:[{any:[{waitForThenClick:"#cookie-policy-button-accept"},{waitForThenClick:'xpath///*[@id="cookie-policy-button-accept"]'}]}],optOut:[{any:[{waitForThenClick:"button.js-manage"},{waitForThenClick:'xpath///*[@id="cookie-policy-content"]/p[4]/button[2]'}]},{waitForThenClick:"dialog.cookie-policy .p-switch__input:checked",optional:!0,all:!0,timeout:500},{any:[{waitForThenClick:"dialog.cookie-policy .js-save-preferences"},{waitForThenClick:'xpath///*[@id="modal"]/div/button'}]}],test:[{eval:"EVAL_UBUNTU_COM_0"}]},{name:"UK Cookie Consent",prehideSelectors:["#catapult-cookie-bar"],cosmetic:!0,detectCmp:[{exists:"#catapult-cookie-bar"}],detectPopup:[{exists:".has-cookie-bar #catapult-cookie-bar"}],optIn:[{click:"#catapultCookie"}],optOut:[{hide:"#catapult-cookie-bar"}],test:[{eval:"EVAL_UK_COOKIE_CONSENT_0"}]},{name:"urbanarmorgear-com",cosmetic:!0,prehideSelectors:['div[class^="Layout__CookieBannerContainer-"]'],detectCmp:[{exists:'div[class^="Layout__CookieBannerContainer-"]'}],detectPopup:[{visible:'div[class^="Layout__CookieBannerContainer-"]'}],optIn:[{click:'button[class^="CookieBanner__AcceptButton"]'}],optOut:[{hide:'div[class^="Layout__CookieBannerContainer-"]'}]},{name:"usercentrics-api",detectCmp:[{exists:"#usercentrics-root,#usercentrics-cmp-ui"}],detectPopup:[{eval:"EVAL_USERCENTRICS_API_0"},{if:{exists:"#usercentrics-cmp-ui"},then:[{waitForVisible:"#usercentrics-cmp-ui",timeout:2e3}],else:[{exists:["#usercentrics-root","[data-testid=uc-container]"]},{waitForVisible:"#usercentrics-root",timeout:2e3}]}],optIn:[{eval:"EVAL_USERCENTRICS_API_3"},{eval:"EVAL_USERCENTRICS_API_1"},{eval:"EVAL_USERCENTRICS_API_5"}],optOut:[{eval:"EVAL_USERCENTRICS_API_1"},{eval:"EVAL_USERCENTRICS_API_2"}],test:[{eval:"EVAL_USERCENTRICS_API_6"}]},{name:"usercentrics-button",detectCmp:[{exists:"#usercentrics-button"}],detectPopup:[{visible:"#usercentrics-button #uc-btn-accept-banner"}],optIn:[{click:"#usercentrics-button #uc-btn-accept-banner"}],optOut:[{click:"#usercentrics-button #uc-btn-deny-banner"}],test:[{eval:"EVAL_USERCENTRICS_BUTTON_0"}]},{name:"uswitch.com",runContext:{main:!0,frame:!1,urlPattern:"^https://(www\\.)?uswitch\\.com/"},prehideSelectors:[".ucb"],detectCmp:[{exists:".ucb-banner"}],detectPopup:[{visible:".ucb-banner"}],optIn:[{waitForThenClick:".ucb-banner .ucb-btn-accept"}],optOut:[{waitForThenClick:".ucb-banner .ucb-btn-save"}]},{name:"vodafone.de",runContext:{urlPattern:"^https://www\\.vodafone\\.de/"},prehideSelectors:[".dip-consent,.dip-consent-container"],detectCmp:[{exists:".dip-consent-container"}],detectPopup:[{visible:".dip-consent-content"}],optOut:[{click:'.dip-consent-btn[tabindex="2"]'}],optIn:[{click:'.dip-consent-btn[tabindex="1"]'}]},{name:"waitrose.com",prehideSelectors:["div[aria-labelledby=CookieAlertModalHeading]","section[data-test=initial-waitrose-cookie-consent-banner]","section[data-test=cookie-consent-modal]"],detectCmp:[{exists:"section[data-test=initial-waitrose-cookie-consent-banner]"}],detectPopup:[{visible:"section[data-test=initial-waitrose-cookie-consent-banner]"}],optIn:[{click:"button[data-test=accept-all]"}],optOut:[{click:"button[data-test=manage-cookies]"},{wait:200},{eval:"EVAL_WAITROSE_0"},{click:"button[data-test=submit]"}],test:[{eval:"EVAL_WAITROSE_1"}]},{name:"webflow",vendorUrl:"https://webflow.com/",prehideSelectors:[".fs-cc-components"],detectCmp:[{exists:".fs-cc-components"}],detectPopup:[{visible:".fs-cc-components"},{visible:"[fs-cc=banner]"}],optIn:[{wait:500},{waitForThenClick:"[fs-cc=banner] [fs-cc=allow]"}],optOut:[{wait:500},{waitForThenClick:"[fs-cc=banner] [fs-cc=deny]"}]},{name:"wetransfer.com",detectCmp:[{exists:".welcome__cookie-notice"}],detectPopup:[{visible:".welcome__cookie-notice"}],optIn:[{click:".welcome__button--accept"}],optOut:[{click:".welcome__button--decline"}]},{name:"whitepages.com",runContext:{urlPattern:"^https://www\\.whitepages\\.com/"},cosmetic:!0,prehideSelectors:[".cookie-wrapper, .cookie-overlay"],detectCmp:[{exists:".cookie-wrapper"}],detectPopup:[{visible:".cookie-overlay"}],optIn:[{click:'button[aria-label="Got it"]'}],optOut:[{hide:".cookie-wrapper"}]},{name:"wolframalpha",vendorUrl:"https://www.wolframalpha.com",prehideSelectors:[],cosmetic:!0,runContext:{urlPattern:"^https://www\\.wolframalpha\\.com/"},detectCmp:[{exists:"section._a_yb"}],detectPopup:[{visible:"section._a_yb"}],optIn:[{waitForThenClick:"section._a_yb button"}],optOut:[{hide:"section._a_yb"}]},{name:"woo-commerce-com",prehideSelectors:[".wccom-comp-privacy-banner .wccom-privacy-banner"],detectCmp:[{exists:".wccom-comp-privacy-banner .wccom-privacy-banner"}],detectPopup:[{exists:".wccom-comp-privacy-banner .wccom-privacy-banner"}],optIn:[{click:".wccom-privacy-banner__content-buttons button.is-primary"}],optOut:[{click:".wccom-privacy-banner__content-buttons button.is-secondary"},{waitForThenClick:"input[type=checkbox][checked]:not([disabled])",all:!0},{click:"div.wccom-modal__footer > button"}]},{name:"WP Cookie Notice for GDPR",vendorUrl:"https://wordpress.org/plugins/gdpr-cookie-consent/",prehideSelectors:["#gdpr-cookie-consent-bar"],detectCmp:[{exists:"#gdpr-cookie-consent-bar"}],detectPopup:[{visible:"#gdpr-cookie-consent-bar"}],optIn:[{waitForThenClick:"#gdpr-cookie-consent-bar #cookie_action_accept"}],optOut:[{waitForThenClick:"#gdpr-cookie-consent-bar #cookie_action_reject"}],test:[{eval:"EVAL_WP_COOKIE_NOTICE_0"}]},{name:"wpcc",cosmetic:!0,prehideSelectors:[".wpcc-container"],detectCmp:[{exists:".wpcc-container"}],detectPopup:[{exists:".wpcc-container .wpcc-message"}],optIn:[{click:".wpcc-compliance .wpcc-btn"}],optOut:[{hide:".wpcc-container"}]},{name:"xe.com",vendorUrl:"https://www.xe.com/",runContext:{urlPattern:"^https://www\\.xe\\.com/"},prehideSelectors:["[class*=ConsentBanner]"],detectCmp:[{exists:"[class*=ConsentBanner]"}],detectPopup:[{visible:"[class*=ConsentBanner]"}],optIn:[{waitForThenClick:"[class*=ConsentBanner] .egnScw"}],optOut:[{wait:1e3},{waitForThenClick:"[class*=ConsentBanner] .frDWEu"},{waitForThenClick:"[class*=ConsentBanner] .hXIpFU"}],test:[{eval:"EVAL_XE_TEST"}]},{name:"xhamster-eu",prehideSelectors:[".cookies-modal"],detectCmp:[{exists:".cookies-modal"}],detectPopup:[{exists:".cookies-modal"}],optIn:[{click:"button.cmd-button-accept-all"}],optOut:[{click:"button.cmd-button-reject-all"}]},{name:"xhamster-us",runContext:{urlPattern:"^https://(www\\.)?xhamster\\d?\\.com"},cosmetic:!0,prehideSelectors:[".cookie-announce"],detectCmp:[{exists:".cookie-announce"}],detectPopup:[{visible:".cookie-announce .announce-text"}],optIn:[{click:".cookie-announce button.xh-button"}],optOut:[{hide:".cookie-announce"}]},{name:"xing.com",detectCmp:[{exists:"div[class^=cookie-consent-CookieConsent]"}],detectPopup:[{exists:"div[class^=cookie-consent-CookieConsent]"}],optIn:[{click:"#consent-accept-button"}],optOut:[{click:"#consent-settings-button"},{click:".consent-banner-button-accept-overlay"}],test:[{eval:"EVAL_XING_0"}]},{name:"xnxx-com",cosmetic:!0,prehideSelectors:["#cookies-use-alert"],detectCmp:[{exists:"#cookies-use-alert"}],detectPopup:[{visible:"#cookies-use-alert"}],optIn:[{click:"#cookies-use-alert .close"}],optOut:[{hide:"#cookies-use-alert"}]},{name:"xvideos",vendorUrl:"https://xvideos.com",runContext:{urlPattern:"^https://[^/]*xvideos\\.com/"},prehideSelectors:[],detectCmp:[{exists:".disclaimer-opened #disclaimer-cookies"}],detectPopup:[{visible:".disclaimer-opened #disclaimer-cookies"}],optIn:[{waitForThenClick:"#disclaimer-accept_cookies"}],optOut:[{waitForThenClick:"#disclaimer-reject_cookies"}]},{name:"Yahoo",runContext:{urlPattern:"^https://consent\\.yahoo\\.com/v2/"},prehideSelectors:["#reject-all"],detectCmp:[{exists:"#consent-page"}],detectPopup:[{visible:"#consent-page"}],optIn:[{waitForThenClick:"#consent-page button[value=agree]"}],optOut:[{waitForThenClick:"#consent-page button[value=reject]"}]},{name:"youporn.com",cosmetic:!0,prehideSelectors:[".euCookieModal, #js_euCookieModal"],detectCmp:[{exists:".euCookieModal"}],detectPopup:[{exists:".euCookieModal, #js_euCookieModal"}],optIn:[{click:'button[name="user_acceptCookie"]'}],optOut:[{hide:".euCookieModal"}]},{name:"youtube-desktop",prehideSelectors:["tp-yt-iron-overlay-backdrop.opened","ytd-consent-bump-v2-lightbox"],detectCmp:[{exists:"ytd-consent-bump-v2-lightbox tp-yt-paper-dialog"},{exists:'ytd-consent-bump-v2-lightbox tp-yt-paper-dialog a[href^="https://consent.youtube.com/"]'}],detectPopup:[{visible:"ytd-consent-bump-v2-lightbox tp-yt-paper-dialog"}],optIn:[{waitForThenClick:"ytd-consent-bump-v2-lightbox .eom-buttons .eom-button-row:first-child ytd-button-renderer:last-child #button,ytd-consent-bump-v2-lightbox .eom-buttons .eom-button-row:first-child ytd-button-renderer:last-child button"},{wait:500}],optOut:[{waitForThenClick:"ytd-consent-bump-v2-lightbox .eom-buttons .eom-button-row:first-child ytd-button-renderer:first-child #button,ytd-consent-bump-v2-lightbox .eom-buttons .eom-button-row:first-child ytd-button-renderer:first-child button"},{wait:500}],test:[{wait:500},{eval:"EVAL_YOUTUBE_DESKTOP_0"}]},{name:"youtube-mobile",prehideSelectors:[".consent-bump-v2-lightbox"],detectCmp:[{exists:"ytm-consent-bump-v2-renderer"}],detectPopup:[{visible:"ytm-consent-bump-v2-renderer"}],optIn:[{waitForThenClick:"ytm-consent-bump-v2-renderer .privacy-terms + .one-col-dialog-buttons c3-material-button:first-child button, ytm-consent-bump-v2-renderer .privacy-terms + .one-col-dialog-buttons ytm-button-renderer:first-child button"},{wait:500}],optOut:[{waitForThenClick:"ytm-consent-bump-v2-renderer .privacy-terms + .one-col-dialog-buttons c3-material-button:nth-child(2) button, ytm-consent-bump-v2-renderer .privacy-terms + .one-col-dialog-buttons ytm-button-renderer:nth-child(2) button"},{wait:500}],test:[{wait:500},{eval:"EVAL_YOUTUBE_MOBILE_0"}]},{name:"zdf",prehideSelectors:["#zdf-cmp-banner-sdk"],detectCmp:[{exists:"#zdf-cmp-banner-sdk"}],detectPopup:[{visible:"#zdf-cmp-main.zdf-cmp-show"}],optIn:[{waitForThenClick:"#zdf-cmp-main #zdf-cmp-accept-btn"}],optOut:[{waitForThenClick:"#zdf-cmp-main #zdf-cmp-deny-btn"}],test:[]},{name:"zentralruf-de",runContext:{urlPattern:"^https://(www\\.)?zentralruf\\.de"},prehideSelectors:["#cookie_modal_wrapper"],detectCmp:[{exists:"#cookie_modal_wrapper"}],detectPopup:[{visible:"#cookie_modal_wrapper"}],optIn:[{waitForThenClick:"#cookie_modal_wrapper #cookie_modal_button_consent_all"}],optOut:[{waitForThenClick:"#cookie_modal_wrapper #cookie_modal_button_choose"}]}],A={"didomi.io":{detectors:[{presentMatcher:{target:{selector:"#didomi-host, #didomi-notice"},type:"css"},showingMatcher:{target:{selector:"body.didomi-popup-open, .didomi-notice-banner"},type:"css"}}],methods:[{action:{target:{selector:".didomi-popup-notice-buttons .didomi-button:not(.didomi-button-highlight), .didomi-notice-banner .didomi-learn-more-button"},type:"click"},name:"OPEN_OPTIONS"},{action:{actions:[{retries:50,target:{selector:"#didomi-purpose-cookies"},type:"waitcss",waitTime:50},{consents:[{description:"Share (everything) with others",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-share_whith_others]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-share_whith_others]:last-child"},type:"click"},type:"X"},{description:"Information storage and access",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-cookies]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-cookies]:last-child"},type:"click"},type:"D"},{description:"Content selection, offers and marketing",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-CL-T1Rgm7]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-CL-T1Rgm7]:last-child"},type:"click"},type:"E"},{description:"Analytics",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-analytics]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-analytics]:last-child"},type:"click"},type:"B"},{description:"Analytics",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-M9NRHJe3G]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-M9NRHJe3G]:last-child"},type:"click"},type:"B"},{description:"Ad and content selection",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-advertising_personalization]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-advertising_personalization]:last-child"},type:"click"},type:"F"},{description:"Ad and content selection",falseAction:{parent:{childFilter:{target:{selector:"#didomi-purpose-pub-ciblee"}},selector:".didomi-consent-popup-data-processing, .didomi-components-accordion-label-container"},target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-pub-ciblee]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-pub-ciblee]:last-child"},type:"click"},type:"F"},{description:"Ad and content selection - basics",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-q4zlJqdcD]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-q4zlJqdcD]:last-child"},type:"click"},type:"F"},{description:"Ad and content selection - partners and subsidiaries",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-partenaire-cAsDe8jC]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-partenaire-cAsDe8jC]:last-child"},type:"click"},type:"F"},{description:"Ad and content selection - social networks",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-p4em9a8m]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-p4em9a8m]:last-child"},type:"click"},type:"F"},{description:"Ad and content selection - others",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-autres-pub]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-autres-pub]:last-child"},type:"click"},type:"F"},{description:"Social networks",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-reseauxsociaux]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-reseauxsociaux]:last-child"},type:"click"},type:"A"},{description:"Social networks",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-social_media]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-social_media]:last-child"},type:"click"},type:"A"},{description:"Content selection",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-content_personalization]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-content_personalization]:last-child"},type:"click"},type:"E"},{description:"Ad delivery",falseAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-ad_delivery]:first-child"},type:"click"},trueAction:{target:{selector:".didomi-components-radio__option[aria-describedby=didomi-purpose-ad_delivery]:last-child"},type:"click"},type:"F"}],type:"consent"},{action:{consents:[{matcher:{childFilter:{target:{selector:":not(.didomi-components-radio__option--selected)"}},type:"css"},trueAction:{target:{selector:":nth-child(2)"},type:"click"},falseAction:{target:{selector:":first-child"},type:"click"},type:"X"}],type:"consent"},target:{selector:".didomi-components-radio"},type:"foreach"}],type:"list"},name:"DO_CONSENT"},{action:{parent:{selector:".didomi-consent-popup-footer .didomi-consent-popup-actions"},target:{selector:".didomi-components-button:first-child"},type:"click"},name:"SAVE_CONSENT"}]},oil:{detectors:[{presentMatcher:{target:{selector:".as-oil-content-overlay"},type:"css"},showingMatcher:{target:{selector:".as-oil-content-overlay"},type:"css"}}],methods:[{action:{actions:[{target:{selector:".as-js-advanced-settings"},type:"click"},{retries:"10",target:{selector:".as-oil-cpc__purpose-container"},type:"waitcss",waitTime:"250"}],type:"list"},name:"OPEN_OPTIONS"},{action:{actions:[{consents:[{matcher:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Information storage and access","Opbevaring af og adgang til oplysninger på din enhed"]},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Information storage and access","Opbevaring af og adgang til oplysninger på din enhed"]},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"D"},{matcher:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Personlige annoncer","Personalisation"]},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Personlige annoncer","Personalisation"]},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"E"},{matcher:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Annoncevalg, levering og rapportering","Ad selection, delivery, reporting"]},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Annoncevalg, levering og rapportering","Ad selection, delivery, reporting"]},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"F"},{matcher:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Personalisering af indhold","Content selection, delivery, reporting"]},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:["Personalisering af indhold","Content selection, delivery, reporting"]},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"E"},{matcher:{parent:{childFilter:{target:{selector:".as-oil-cpc__purpose-header",textFilter:["Måling","Measurement"]}},selector:".as-oil-cpc__purpose-container"},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{childFilter:{target:{selector:".as-oil-cpc__purpose-header",textFilter:["Måling","Measurement"]}},selector:".as-oil-cpc__purpose-container"},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"B"},{matcher:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:"Google"},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".as-oil-cpc__purpose-container",textFilter:"Google"},target:{selector:".as-oil-cpc__switch"},type:"click"},type:"F"}],type:"consent"}],type:"list"},name:"DO_CONSENT"},{action:{target:{selector:".as-oil__btn-optin"},type:"click"},name:"SAVE_CONSENT"},{action:{target:{selector:"div.as-oil"},type:"hide"},name:"HIDE_CMP"}]},optanon:{detectors:[{presentMatcher:{target:{selector:"#optanon-menu, .optanon-alert-box-wrapper"},type:"css"},showingMatcher:{target:{displayFilter:!0,selector:".optanon-alert-box-wrapper"},type:"css"}}],methods:[{action:{actions:[{target:{selector:".optanon-alert-box-wrapper .optanon-toggle-display, a[onclick*='OneTrust.ToggleInfoDisplay()'], a[onclick*='Optanon.ToggleInfoDisplay()']"},type:"click"}],type:"list"},name:"OPEN_OPTIONS"},{action:{actions:[{target:{selector:".preference-menu-item #Your-privacy"},type:"click"},{target:{selector:"#optanon-vendor-consent-text"},type:"click"},{action:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"X"}],type:"consent"},target:{selector:"#optanon-vendor-consent-list .vendor-item"},type:"foreach"},{target:{selector:".vendor-consent-back-link"},type:"click"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-performance"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-performance"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-functional"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-functional"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"E"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-advertising"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-advertising"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-social"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-social"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Social Media Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Social Media Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Personalisation"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Personalisation"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"E"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Site monitoring cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Site monitoring cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Third party privacy-enhanced content"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Third party privacy-enhanced content"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"X"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Performance & Advertising Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Performance & Advertising Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Information storage and access"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Information storage and access"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"D"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Ad selection, delivery, reporting"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Ad selection, delivery, reporting"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Content selection, delivery, reporting"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Content selection, delivery, reporting"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"E"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Measurement"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Measurement"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Recommended Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Recommended Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"X"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Unclassified Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Unclassified Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"X"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Analytical Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Analytical Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"B"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Marketing Cookies"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Marketing Cookies"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Personalization"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Personalization"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"E"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Ad Selection, Delivery & Reporting"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Ad Selection, Delivery & Reporting"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},type:"ifcss"},{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Content Selection, Delivery & Reporting"},trueAction:{actions:[{parent:{selector:"#optanon-menu, .optanon-menu"},target:{selector:".menu-item-necessary",textFilter:"Content Selection, Delivery & Reporting"},type:"click"},{consents:[{matcher:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status input"},type:"checkbox"},toggleAction:{parent:{selector:"#optanon-popup-body-right"},target:{selector:".optanon-status label"},type:"click"},type:"E"}],type:"consent"}],type:"list"},type:"ifcss"}],type:"list"},name:"DO_CONSENT"},{action:{parent:{selector:".optanon-save-settings-button"},target:{selector:".optanon-white-button-middle"},type:"click"},name:"SAVE_CONSENT"},{action:{actions:[{target:{selector:"#optanon-popup-wrapper"},type:"hide"},{target:{selector:"#optanon-popup-bg"},type:"hide"},{target:{selector:".optanon-alert-box-wrapper"},type:"hide"}],type:"list"},name:"HIDE_CMP"}]},quantcast2:{detectors:[{presentMatcher:{target:{selector:"[data-tracking-opt-in-overlay]"},type:"css"},showingMatcher:{target:{selector:"[data-tracking-opt-in-overlay] [data-tracking-opt-in-learn-more]"},type:"css"}}],methods:[{action:{target:{selector:"[data-tracking-opt-in-overlay] [data-tracking-opt-in-learn-more]"},type:"click"},name:"OPEN_OPTIONS"},{action:{actions:[{type:"wait",waitTime:500},{action:{actions:[{target:{selector:"div",textFilter:["Information storage and access"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"D"}],type:"consent"},type:"ifcss"},{target:{selector:"div",textFilter:["Personalization"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"F"}],type:"consent"},type:"ifcss"},{target:{selector:"div",textFilter:["Ad selection, delivery, reporting"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"F"}],type:"consent"},type:"ifcss"},{target:{selector:"div",textFilter:["Content selection, delivery, reporting"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"E"}],type:"consent"},type:"ifcss"},{target:{selector:"div",textFilter:["Measurement"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"B"}],type:"consent"},type:"ifcss"},{target:{selector:"div",textFilter:["Other Partners"]},trueAction:{consents:[{matcher:{target:{selector:"input"},type:"checkbox"},toggleAction:{target:{selector:"label"},type:"click"},type:"X"}],type:"consent"},type:"ifcss"}],type:"list"},parent:{childFilter:{target:{selector:"input"}},selector:"[data-tracking-opt-in-overlay] > div > div"},target:{childFilter:{target:{selector:"input"}},selector:":scope > div"},type:"foreach"}],type:"list"},name:"DO_CONSENT"},{action:{target:{selector:"[data-tracking-opt-in-overlay] [data-tracking-opt-in-save]"},type:"click"},name:"SAVE_CONSENT"}]},springer:{detectors:[{presentMatcher:{parent:null,target:{selector:".cmp-app_gdpr"},type:"css"},showingMatcher:{parent:null,target:{displayFilter:!0,selector:".cmp-popup_popup"},type:"css"}}],methods:[{action:{actions:[{target:{selector:".cmp-intro_rejectAll"},type:"click"},{type:"wait",waitTime:250},{target:{selector:".cmp-purposes_purposeItem:not(.cmp-purposes_selectedPurpose)"},type:"click"}],type:"list"},name:"OPEN_OPTIONS"},{action:{consents:[{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Przechowywanie informacji na urządzeniu lub dostęp do nich",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Przechowywanie informacji na urządzeniu lub dostęp do nich",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"D"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór podstawowych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór podstawowych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"F"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Tworzenie profilu spersonalizowanych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Tworzenie profilu spersonalizowanych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"F"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór spersonalizowanych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór spersonalizowanych reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"E"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Tworzenie profilu spersonalizowanych treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Tworzenie profilu spersonalizowanych treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"E"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór spersonalizowanych treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Wybór spersonalizowanych treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"B"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Pomiar wydajności reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Pomiar wydajności reklam",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"B"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Pomiar wydajności treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Pomiar wydajności treści",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"B"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Stosowanie badań rynkowych w celu generowania opinii odbiorców",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Stosowanie badań rynkowych w celu generowania opinii odbiorców",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"X"},{matcher:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Opracowywanie i ulepszanie produktów",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch .cmp-switch_isSelected"},type:"css"},toggleAction:{parent:{selector:".cmp-purposes_detailHeader",textFilter:"Opracowywanie i ulepszanie produktów",childFilter:{target:{selector:".cmp-switch_switch"}}},target:{selector:".cmp-switch_switch:not(.cmp-switch_isSelected)"},type:"click"},type:"X"}],type:"consent"},name:"DO_CONSENT"},{action:{target:{selector:".cmp-details_save"},type:"click"},name:"SAVE_CONSENT"}]},wordpressgdpr:{detectors:[{presentMatcher:{parent:null,target:{selector:".wpgdprc-consent-bar"},type:"css"},showingMatcher:{parent:null,target:{displayFilter:!0,selector:".wpgdprc-consent-bar"},type:"css"}}],methods:[{action:{parent:null,target:{selector:".wpgdprc-consent-bar .wpgdprc-consent-bar__settings",textFilter:null},type:"click"},name:"OPEN_OPTIONS"},{action:{actions:[{target:{selector:".wpgdprc-consent-modal .wpgdprc-button",textFilter:"Eyeota"},type:"click"},{consents:[{description:"Eyeota Cookies",matcher:{parent:{selector:".wpgdprc-consent-modal__description",textFilter:"Eyeota"},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".wpgdprc-consent-modal__description",textFilter:"Eyeota"},target:{selector:"label"},type:"click"},type:"X"}],type:"consent"},{target:{selector:".wpgdprc-consent-modal .wpgdprc-button",textFilter:"Advertising"},type:"click"},{consents:[{description:"Advertising Cookies",matcher:{parent:{selector:".wpgdprc-consent-modal__description",textFilter:"Advertising"},target:{selector:"input"},type:"checkbox"},toggleAction:{parent:{selector:".wpgdprc-consent-modal__description",textFilter:"Advertising"},target:{selector:"label"},type:"click"},type:"F"}],type:"consent"}],type:"list"},name:"DO_CONSENT"},{action:{parent:null,target:{selector:".wpgdprc-button",textFilter:"Save my settings"},type:"click"},name:"SAVE_CONSENT"}]}},E={autoconsent:f,consentomatic:A},x=Object.freeze({__proto__:null,autoconsent:f,consentomatic:A,default:E});const O=new class{constructor(e,t=null,o=null){if(this.id=a(),this.rules=[],this.foundCmp=null,this.state={lifecycle:"loading",prehideOn:!1,findCmpAttempts:0,detectedCmps:[],detectedPopups:[],selfTest:null},r.sendContentMessage=e,this.sendContentMessage=e,this.rules=[],this.updateState({lifecycle:"loading"}),this.addDynamicRules(),t)this.initialize(t,o);else{o&&this.parseDeclarativeRules(o);e({type:"init",url:window.location.href}),this.updateState({lifecycle:"waitingForInitResponse"})}this.domActions=new v(this)}initialize(e,t){const o=g(e);if(o.logs.lifecycle&&console.log("autoconsent init",window.location.href),this.config=o,o.enabled){if(t&&this.parseDeclarativeRules(t),this.rules=function(e,t){return e.filter((e=>(!t.disabledCmps||!t.disabledCmps.includes(e.name))&&(t.enableCosmeticRules||!e.isCosmetic)))}(this.rules,o),e.enablePrehide)if(document.documentElement)this.prehideElements();else{const e=()=>{window.removeEventListener("DOMContentLoaded",e),this.prehideElements()};window.addEventListener("DOMContentLoaded",e)}if("loading"===document.readyState){const e=()=>{window.removeEventListener("DOMContentLoaded",e),this.start()};window.addEventListener("DOMContentLoaded",e)}else this.start();this.updateState({lifecycle:"initialized"})}else o.logs.lifecycle&&console.log("autoconsent is disabled")}addDynamicRules(){C.forEach((e=>{this.rules.push(new e(this))}))}parseDeclarativeRules(e){Object.keys(e.consentomatic).forEach((t=>{this.addConsentomaticCMP(t,e.consentomatic[t])})),e.autoconsent.forEach((e=>{this.addDeclarativeCMP(e)}))}addDeclarativeCMP(e){this.rules.push(new u(e,this))}addConsentomaticCMP(e,t){this.rules.push(new m(`com_${e}`,t))}start(){window.requestIdleCallback?window.requestIdleCallback((()=>this._start()),{timeout:500}):this._start()}async _start(){const e=this.config.logs;e.lifecycle&&console.log(`Detecting CMPs on ${window.location.href}`),this.updateState({lifecycle:"started"});const t=await this.findCmp(this.config.detectRetries);if(this.updateState({detectedCmps:t.map((e=>e.name))}),0===t.length)return e.lifecycle&&console.log("no CMP found",location.href),this.config.enablePrehide&&this.undoPrehide(),this.updateState({lifecycle:"nothingDetected"}),!1;this.updateState({lifecycle:"cmpDetected"});const o=[],i=[];for(const e of t)e.isCosmetic?i.push(e):o.push(e);let c=!1,n=await this.detectPopups(o,(async e=>{c=await this.handlePopup(e)}));if(0===n.length&&(n=await this.detectPopups(i,(async e=>{c=await this.handlePopup(e)}))),0===n.length)return e.lifecycle&&console.log("no popup found"),this.config.enablePrehide&&this.undoPrehide(),!1;if(n.length>1){const t={msg:"Found multiple CMPs, check the detection rules.",cmps:n.map((e=>e.name))};e.errors&&console.warn(t.msg,t.cmps),this.sendContentMessage({type:"autoconsentError",details:t})}return c}async findCmp(e){const t=this.config.logs;this.updateState({findCmpAttempts:this.state.findCmpAttempts+1});const o=[];for(const e of this.rules)try{if(!e.checkRunContext())continue;await e.detectCmp()&&(t.lifecycle&&console.log(`Found CMP: ${e.name} ${window.location.href}`),this.sendContentMessage({type:"cmpDetected",url:location.href,cmp:e.name}),o.push(e))}catch(o){t.errors&&console.warn(`error detecting ${e.name}`,o)}return 0===o.length&&e>0?(await this.domActions.wait(500),this.findCmp(e-1)):o}async detectPopup(e){if(await this.waitForPopup(e).catch((t=>(this.config.logs.errors&&console.warn(`error waiting for a popup for ${e.name}`,t),!1))))return this.updateState({detectedPopups:this.state.detectedPopups.concat([e.name])}),this.sendContentMessage({type:"popupFound",cmp:e.name,url:location.href}),e;throw new Error("Popup is not shown")}async detectPopups(e,t){const o=e.map((e=>this.detectPopup(e)));await Promise.any(o).then((e=>{t(e)})).catch((()=>null));const i=await Promise.allSettled(o),c=[];for(const e of i)"fulfilled"===e.status&&c.push(e.value);return c}async handlePopup(e){return this.updateState({lifecycle:"openPopupDetected"}),this.config.enablePrehide&&!this.state.prehideOn&&this.prehideElements(),this.foundCmp=e,"optOut"===this.config.autoAction?await this.doOptOut():"optIn"===this.config.autoAction?await this.doOptIn():(this.config.logs.lifecycle&&console.log("waiting for opt-out signal...",location.href),!0)}async doOptOut(){const e=this.config.logs;let t;return this.updateState({lifecycle:"runningOptOut"}),this.foundCmp?(e.lifecycle&&console.log(`CMP ${this.foundCmp.name}: opt out on ${window.location.href}`),t=await this.foundCmp.optOut(),e.lifecycle&&console.log(`${this.foundCmp.name}: opt out result ${t}`)):(e.errors&&console.log("no CMP to opt out"),t=!1),this.config.enablePrehide&&this.undoPrehide(),this.sendContentMessage({type:"optOutResult",cmp:this.foundCmp?this.foundCmp.name:"none",result:t,scheduleSelfTest:this.foundCmp&&this.foundCmp.hasSelfTest,url:location.href}),t&&!this.foundCmp.isIntermediate?(this.sendContentMessage({type:"autoconsentDone",cmp:this.foundCmp.name,isCosmetic:this.foundCmp.isCosmetic,url:location.href}),this.updateState({lifecycle:"done"})):this.updateState({lifecycle:t?"optOutSucceeded":"optOutFailed"}),t}async doOptIn(){const e=this.config.logs;let t;return this.updateState({lifecycle:"runningOptIn"}),this.foundCmp?(e.lifecycle&&console.log(`CMP ${this.foundCmp.name}: opt in on ${window.location.href}`),t=await this.foundCmp.optIn(),e.lifecycle&&console.log(`${this.foundCmp.name}: opt in result ${t}`)):(e.errors&&console.log("no CMP to opt in"),t=!1),this.config.enablePrehide&&this.undoPrehide(),this.sendContentMessage({type:"optInResult",cmp:this.foundCmp?this.foundCmp.name:"none",result:t,scheduleSelfTest:!1,url:location.href}),t&&!this.foundCmp.isIntermediate?(this.sendContentMessage({type:"autoconsentDone",cmp:this.foundCmp.name,isCosmetic:this.foundCmp.isCosmetic,url:location.href}),this.updateState({lifecycle:"done"})):this.updateState({lifecycle:t?"optInSucceeded":"optInFailed"}),t}async doSelfTest(){const e=this.config.logs;let t;return this.foundCmp?(e.lifecycle&&console.log(`CMP ${this.foundCmp.name}: self-test on ${window.location.href}`),t=await this.foundCmp.test()):(e.errors&&console.log("no CMP to self test"),t=!1),this.sendContentMessage({type:"selfTestResult",cmp:this.foundCmp?this.foundCmp.name:"none",result:t,url:location.href}),this.updateState({selfTest:t}),t}async waitForPopup(e,t=5,o=500){const i=this.config.logs;i.lifecycle&&console.log("checking if popup is open...",e.name);const c=await e.detectPopup().catch((t=>(i.errors&&console.warn(`error detecting popup for ${e.name}`,t),!1)));return!c&&t>0?(await this.domActions.wait(o),this.waitForPopup(e,t-1,o)):(i.lifecycle&&console.log(e.name,"popup is "+(c?"open":"not open")),c)}prehideElements(){const e=this.config.logs,t=this.rules.filter((e=>e.prehideSelectors&&e.checkRunContext())).reduce(((e,t)=>[...e,...t.prehideSelectors]),["#didomi-popup,.didomi-popup-container,.didomi-popup-notice,.didomi-consent-popup-preferences,#didomi-notice,.didomi-popup-backdrop,.didomi-screen-medium"]);return this.updateState({prehideOn:!0}),setTimeout((()=>{this.config.enablePrehide&&this.state.prehideOn&&!["runningOptOut","runningOptIn"].includes(this.state.lifecycle)&&(e.lifecycle&&console.log("Process is taking too long, unhiding elements"),this.undoPrehide())}),this.config.prehideTimeout||2e3),this.domActions.prehide(t.join(","))}undoPrehide(){return this.updateState({prehideOn:!1}),this.domActions.undoPrehide()}updateState(e){Object.assign(this.state,e),this.sendContentMessage({type:"report",instanceId:this.id,url:window.location.href,mainFrame:window.top===window.self,state:this.state})}async receiveMessageCallback(e){const t=this.config?.logs;switch(t?.messages&&console.log("received from background",e,window.location.href),e.type){case"initResp":this.initialize(e.config,e.rules);break;case"optIn":await this.doOptIn();break;case"optOut":await this.doOptOut();break;case"selfTest":await this.doSelfTest();break;case"evalResp":!function(e,t){const o=r.pending.get(e);o?(r.pending.delete(e),o.timer&&window.clearTimeout(o.timer),o.resolve(t)):console.warn("no eval #",e)}(e.id,e.result)}}}((e=>{window.webkit.messageHandlers[e.type]&&window.webkit.messageHandlers[e.type].postMessage(e).then((e=>{O.receiveMessageCallback(e)}))}),null,x);window.autoconsentMessageCallback=e=>{O.receiveMessageCallback(e)}}(); diff --git a/DuckDuckGo/AutofillDebugViewController.swift b/DuckDuckGo/AutofillDebugViewController.swift index f194928580..78ebb76778 100644 --- a/DuckDuckGo/AutofillDebugViewController.swift +++ b/DuckDuckGo/AutofillDebugViewController.swift @@ -22,6 +22,7 @@ import BrowserServicesKit import Core import Common import PrivacyDashboard +import os.log class AutofillDebugViewController: UITableViewController { @@ -118,9 +119,8 @@ class AutofillDebugViewController: UITableViewController { do { _ = try secureVault?.storeWebsiteCredentials(credentials) } catch let error { - os_log(.debug, "Error inserting credential \(error.localizedDescription)") + Logger.general.error("Error inserting credential \(error.localizedDescription, privacy: .public)") } - } ActionMessageView.present(message: "Autofill Data added") diff --git a/DuckDuckGo/AutofillLoginListViewModel.swift b/DuckDuckGo/AutofillLoginListViewModel.swift index 31557e9284..d4d507ee89 100644 --- a/DuckDuckGo/AutofillLoginListViewModel.swift +++ b/DuckDuckGo/AutofillLoginListViewModel.swift @@ -24,6 +24,7 @@ import UIKit import Combine import Core import PrivacyDashboard +import os.log internal enum AutofillLoginListSectionType: Comparable { case enableAutofill @@ -362,7 +363,7 @@ final class AutofillLoginListViewModel: ObservableObject { do { return try secureVault.accounts() } catch { - os_log("Failed to fetch accounts") + Logger.autofill.error("Failed to fetch accounts \(error.localizedDescription, privacy: .public)") return [] } } diff --git a/DuckDuckGo/AutofillLoginSettingsListViewController.swift b/DuckDuckGo/AutofillLoginSettingsListViewController.swift index 92f1aa5264..2ea37e102d 100644 --- a/DuckDuckGo/AutofillLoginSettingsListViewController.swift +++ b/DuckDuckGo/AutofillLoginSettingsListViewController.swift @@ -25,6 +25,7 @@ import Common import DDGSync import DesignResourcesKit import SwiftUI +import os.log enum AutofillSettingsSource: String { case settings @@ -182,7 +183,7 @@ final class AutofillLoginSettingsListViewController: UIViewController { source: AutofillSettingsSource) { let secureVault = try? AutofillSecureVaultFactory.makeVault(reporter: SecureVaultReporter()) if secureVault == nil { - os_log("Failed to make vault") + Logger.autofill.fault("Failed to make vault") } self.viewModel = AutofillLoginListViewModel(appSettings: appSettings, tld: tld, secureVault: secureVault, currentTabUrl: currentTabUrl, currentTabUid: currentTabUid) self.syncService = syncService diff --git a/DuckDuckGo/Base.lproj/Tab.storyboard b/DuckDuckGo/Base.lproj/Tab.storyboard index 63df68b5cf..d3d7bf7937 100644 --- a/DuckDuckGo/Base.lproj/Tab.storyboard +++ b/DuckDuckGo/Base.lproj/Tab.storyboard @@ -1,9 +1,9 @@ - + - + @@ -123,13 +123,13 @@ - + - + diff --git a/DuckDuckGo/BookmarksDatabase.swift b/DuckDuckGo/BookmarksDatabase.swift index 962c552516..2b868b0d61 100644 --- a/DuckDuckGo/BookmarksDatabase.swift +++ b/DuckDuckGo/BookmarksDatabase.swift @@ -22,6 +22,7 @@ import Foundation import CoreData import Persistence import Bookmarks +import os.log public class BookmarksDatabase { @@ -33,7 +34,7 @@ public class BookmarksDatabase { public static var defaultDBLocation: URL = { guard let url = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: Constants.bookmarksGroupID) else { - os_log("BookmarksDatabase.make - OUT, failed to get location %{public}s", Constants.bookmarksGroupID) + Logger.bookmarks.fault("BookmarksDatabase.make - OUT, failed to get location \(Constants.bookmarksGroupID, privacy: .public)") fatalError("Failed to get location") } return url @@ -44,10 +45,10 @@ public class BookmarksDatabase { }() public static func make(location: URL = defaultDBLocation, readOnly: Bool = false) -> CoreDataDatabase { - os_log("BookmarksDatabase.make - IN - %s", location.absoluteString) + Logger.bookmarks.debug("BookmarksDatabase.make - IN - \(location.absoluteString, privacy: .public)") let bundle = Bookmarks.bundle guard let model = CoreDataDatabase.loadModel(from: bundle, named: "BookmarksModel") else { - os_log("BookmarksDatabase.make - OUT, failed to loadModel") + Logger.bookmarks.error("BookmarksDatabase.make - OUT, failed to loadModel") fatalError("Failed to load model") } @@ -55,7 +56,7 @@ public class BookmarksDatabase { containerLocation: location, model: model, readOnly: readOnly) - os_log("BookmarksDatabase.make - OUT") + Logger.bookmarks.debug("BookmarksDatabase.make - OUT") return db } } diff --git a/DuckDuckGo/BookmarksViewController.swift b/DuckDuckGo/BookmarksViewController.swift index b5034b411f..6dd701b5bc 100644 --- a/DuckDuckGo/BookmarksViewController.swift +++ b/DuckDuckGo/BookmarksViewController.swift @@ -28,6 +28,7 @@ import CoreData import Combine import Persistence import WidgetKit +import os.log class BookmarksViewController: UIViewController, UITableViewDelegate { @@ -632,7 +633,7 @@ class BookmarksViewController: UIViewController, UITableViewDelegate { let result = await BookmarksImporter( coreDataStore: bookmarksDatabase, - favoritesDisplayMode: appSettings.favoritesDisplayMode + favoritesDisplayMode: self.appSettings.favoritesDisplayMode ).parseAndSave(html: html) switch result { case .success: @@ -645,7 +646,7 @@ class BookmarksViewController: UIViewController, UITableViewDelegate { ActionMessageView.present(message: UserText.importBookmarksSuccessMessage) } case .failure(let bookmarksImportError): - os_log("Bookmarks import error %s", type: .debug, bookmarksImportError.localizedDescription) + Logger.bookmarks.error("Bookmarks import error \(bookmarksImportError.localizedDescription, privacy: .public)") Pixel.fire(pixel: .bookmarkImportFailure) DispatchQueue.main.async { ActionMessageView.present(message: UserText.importBookmarksFailedMessage) @@ -671,7 +672,7 @@ class BookmarksViewController: UIViewController, UITableViewDelegate { try BookmarksExporter(coreDataStore: bookmarksDatabase, favoritesDisplayMode: viewModel.favoritesDisplayMode) .exportBookmarksTo(url: tempFileUrl) } catch { - os_log("bookmarks failed to export %s", type: .debug, error.localizedDescription) + Logger.general.error("bookmarks failed to export: \(error.localizedDescription, privacy: .public)") ActionMessageView.present(message: UserText.exportBookmarksFailedMessage) return } diff --git a/DuckDuckGo/BrokenSitePromptLimiter.swift b/DuckDuckGo/BrokenSitePromptLimiter.swift new file mode 100644 index 0000000000..69b962ab13 --- /dev/null +++ b/DuckDuckGo/BrokenSitePromptLimiter.swift @@ -0,0 +1,106 @@ +// +// BrokenSitePromptLimiter.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation +import Core +import BrowserServicesKit + +protocol BrokenSitePromptLimiterStoring { + var lastToastShownDate: Date { get set } + var toastDismissStreakCounter: Int { get set } +} + +final class BrokenSitePromptLimiterStore: BrokenSitePromptLimiterStoring { + @UserDefaultsWrapper(key: .lastBrokenSiteToastShownDate, defaultValue: .distantPast) + var lastToastShownDate: Date + + @UserDefaultsWrapper(key: .toastDismissStreakCounter, defaultValue: 0) + var toastDismissStreakCounter: Int +} + +final class BrokenSitePromptLimiter { + + struct BrokenSitePromptLimiterSettings: Codable { + let maxDismissStreak: Int + let dismissStreakResetDays: Int + let coolDownDays: Int + } + + private var lastToastShownDate: Date { + get { store.lastToastShownDate } + set { store.lastToastShownDate = newValue } + } + + private var toastDismissStreakCounter: Int { + get { store.toastDismissStreakCounter } + set { store.toastDismissStreakCounter = newValue } + } + + private var privacyConfigManager: PrivacyConfigurationManaging + private var store: BrokenSitePromptLimiterStoring + + init(privacyConfigManager: PrivacyConfigurationManaging = ContentBlocking.shared.privacyConfigurationManager, + store: BrokenSitePromptLimiterStoring = BrokenSitePromptLimiterStore()) { + self.privacyConfigManager = privacyConfigManager + self.store = store + } + + private func getSettingsFromConfig() -> BrokenSitePromptLimiterSettings { + let settings = privacyConfigManager.privacyConfig.settings(for: .brokenSitePrompt) + + // Get settings from config or fallback to standard defaults + return BrokenSitePromptLimiterSettings( + maxDismissStreak: settings["maxDismissStreak"] as? Int ?? 3, + dismissStreakResetDays: settings["dismissStreakResetDays"] as? Int ?? 30, + coolDownDays: settings["coolDownDays"] as? Int ?? 7 + ) + } + + /// If it has been `dismissStreakResetDays` or more since the last time we showed the prompt, reset the dismiss counter to 0 + private func resetDismissStreakIfNeeded(dismissStreakResetDays: Int) { + if !lastToastShownDate.isLessThan(daysAgo: dismissStreakResetDays) { + toastDismissStreakCounter = 0 + } + } + + public func shouldShowToast() -> Bool { + guard privacyConfigManager.privacyConfig.isEnabled(featureKey: .brokenSitePrompt) else { return false } + + let settings = getSettingsFromConfig() + + resetDismissStreakIfNeeded(dismissStreakResetDays: settings.dismissStreakResetDays) + guard toastDismissStreakCounter < settings.maxDismissStreak else { return false } // Don't show the toast if the user dismissed it more than `maxDismissStreak` times in a row + guard !lastToastShownDate.isLessThan(daysAgo: settings.coolDownDays) else { return false } // Only show the toast once per `coolDownDays` days + + return true + } + + public func didShowToast() { + lastToastShownDate = Date() + } + + public func didDismissToast() { + toastDismissStreakCounter += 1 + } + + public func didOpenReport() { + toastDismissStreakCounter = 0 + } + +} diff --git a/DuckDuckGo/BrokenSitePromptView.swift b/DuckDuckGo/BrokenSitePromptView.swift new file mode 100644 index 0000000000..b04b06a778 --- /dev/null +++ b/DuckDuckGo/BrokenSitePromptView.swift @@ -0,0 +1,61 @@ +// +// BrokenSitePromptView.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import SwiftUI +import DuckUI +import DesignResourcesKit + +struct BrokenSitePromptView: View { + + let viewModel: BrokenSitePromptViewModel + + var body: some View { + VStack { + VStack(alignment: .leading, spacing: 8) { + VStack(alignment: .leading) { + Text(UserText.siteNotWorkingTitle) + .font(Font(uiFont: .daxSubheadSemibold())) + Text(UserText.siteNotWorkingSubtitle) + .font(Font(uiFont: .daxSubheadRegular())) + } + HStack { + Spacer() + Button(UserText.siteNotWorkingDismiss, action: viewModel.onDidDismiss) + .buttonStyle(GhostButtonStyle()) + .fixedSize() + Button(UserText.siteNotWorkingWebsiteIsBroken, action: viewModel.onDidSubmit) + .buttonStyle(PrimaryButtonStyle(compact: true)) + .fixedSize() + } + } + .padding(EdgeInsets(top: 12, leading: 16, bottom: 4, trailing: 16)) + Color(designSystemColor: .lines).frame(height: 1 / UIScreen.main.scale) + } + .background(Color(designSystemColor: .panel)) + } + +} + +#Preview { + + let viewModel = BrokenSitePromptViewModel(onDidDismiss: {}, + onDidSubmit: {}) + return BrokenSitePromptView(viewModel: viewModel) + +} diff --git a/DuckDuckGo/BrokenSitePromptViewModel.swift b/DuckDuckGo/BrokenSitePromptViewModel.swift new file mode 100644 index 0000000000..93d586f12e --- /dev/null +++ b/DuckDuckGo/BrokenSitePromptViewModel.swift @@ -0,0 +1,32 @@ +// +// BrokenSitePromptViewModel.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation + +final class BrokenSitePromptViewModel { + + let onDidDismiss: () -> Void + let onDidSubmit: () -> Void + + init(onDidDismiss: @escaping () -> Void, onDidSubmit: @escaping () -> Void) { + self.onDidDismiss = onDidDismiss + self.onDidSubmit = onDidSubmit + } + +} diff --git a/DuckDuckGo/Configuration/ConfigurationManager.swift b/DuckDuckGo/Configuration/ConfigurationManager.swift index f0a148adcd..cf33235503 100644 --- a/DuckDuckGo/Configuration/ConfigurationManager.swift +++ b/DuckDuckGo/Configuration/ConfigurationManager.swift @@ -22,6 +22,7 @@ import Core import Configuration import BrowserServicesKit import Common +import os.log struct ConfigurationManager { @@ -50,7 +51,7 @@ struct ConfigurationManager { } public static let didUpdateTrackerDependencies = NSNotification.Name(rawValue: "com.duckduckgo.configurationManager.didUpdateTrackerDependencies") - private let fetcher = ConfigurationFetcher(store: ConfigurationStore.shared, log: .configurationLog, eventMapping: Self.configurationDebugEvents) + private let fetcher = ConfigurationFetcher(store: ConfigurationStore.shared, eventMapping: Self.configurationDebugEvents) private static let configurationDebugEvents = EventMapping { event, error, _, _ in let domainEvent: Pixel.Event @@ -101,7 +102,7 @@ struct ConfigurationManager { try await task.value didFetchAnyTrackerBlockingDependencies = true } catch { - os_log("Did not apply update to %@: %@", log: .generalLog, type: .debug, configuration.rawValue, error.localizedDescription) + Logger.general.error("Did not apply update to \(configuration.rawValue, privacy: .public): \(error.localizedDescription, privacy: .public)") } } @@ -123,7 +124,7 @@ struct ConfigurationManager { try await updateBloomFilterExclusions() return true } catch { - os_log("Failed to apply update to bloom filter exclusions: %@", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Failed to apply update to bloom filter exclusions: \(error.localizedDescription, privacy: .public)") return false } } @@ -135,7 +136,7 @@ struct ConfigurationManager { try await updateBloomFilter() return true } catch { - os_log("Failed to apply update to bloom filter: %@", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Failed to apply update to bloom filter: \(error.localizedDescription, privacy: .public)") return false } } diff --git a/DuckDuckGo/DatabaseMigration.swift b/DuckDuckGo/DatabaseMigration.swift index aeba28e958..f83b1d6ceb 100644 --- a/DuckDuckGo/DatabaseMigration.swift +++ b/DuckDuckGo/DatabaseMigration.swift @@ -22,6 +22,7 @@ import Common import Foundation import CoreData import Core +import os.log class DatabaseMigration { @@ -105,7 +106,7 @@ class DatabaseMigration { try stack.persistenceStoreCoordinator.remove(store) } catch { Pixel.fire(pixel: .dbRemovalError, error: error) - os_log("Error removing store: %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Error removing store: \(error.localizedDescription, privacy: .public)") } } } @@ -154,15 +155,15 @@ class DatabaseMigration { concurrencyType: .privateQueueConcurrencyType), let storeURL = oldStack.persistenceStoreCoordinator.persistentStores.last?.url else { return } - os_log("Destroying store: %s", log: .generalLog, type: .debug, dbName) - + Logger.general.debug("Destroying store: \(dbName)") + do { try oldStack.persistenceStoreCoordinator.destroyPersistentStore(at: storeURL, ofType: NSSQLiteStoreType, options: nil) } catch { Pixel.fire(pixel: .dbDestroyError, error: error) - os_log("Error destroying store: %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Error destroying store: \(error.localizedDescription, privacy: .public)") } removeFile(at: storeURL) @@ -181,7 +182,7 @@ class DatabaseMigration { if nserror.domain != NSCocoaErrorDomain || nserror.code != NSFileNoSuchFileError { Pixel.fire(pixel: .dbDestroyFileError, error: error) } - os_log("Error removing file: %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Error removing file: \(error.localizedDescription, privacy: .public)") } } } diff --git a/DuckDuckGo/DaxDialogs.swift b/DuckDuckGo/DaxDialogs.swift index c6acc16d2b..649ccbeb7c 100644 --- a/DuckDuckGo/DaxDialogs.swift +++ b/DuckDuckGo/DaxDialogs.swift @@ -300,7 +300,7 @@ final class DaxDialogs: NewTabDialogSpecProvider, ContextualOnboardingLogic { var shouldShowPrivacyButtonPulse: Bool { guard isNewOnboarding else { return false } - return settings.browsingWithTrackersShown && !settings.privacyButtonPulseShown && isEnabled + return settings.browsingWithTrackersShown && !settings.privacyButtonPulseShown && fireButtonPulseTimer == nil && isEnabled } func isStillOnboarding() -> Bool { @@ -365,6 +365,10 @@ final class DaxDialogs: NewTabDialogSpecProvider, ContextualOnboardingLogic { return settings.lastShownContextualOnboardingDialogType } + private var shouldShowNetworkTrackerDialog: Bool { + !settings.browsingMajorTrackingSiteShown && !settings.browsingWithTrackersShown + } + private func saveLastShownDaxDialog(specType: BrowsingSpec.SpecType) { guard isNewOnboarding else { return } settings.lastShownContextualOnboardingDialogType = specType.rawValue @@ -515,10 +519,10 @@ final class DaxDialogs: NewTabDialogSpecProvider, ContextualOnboardingLogic { if privacyInfo.url.isDuckDuckGoSearch && !settings.browsingAfterSearchShown { spec = searchMessage() - } else if isFacebookOrGoogle(privacyInfo.url) && !settings.browsingMajorTrackingSiteShown { + } else if isFacebookOrGoogle(privacyInfo.url) && shouldShowNetworkTrackerDialog { // won't be shown if owned by major tracker message has already been shown spec = majorTrackerMessage(host) - } else if let owner = isOwnedByFacebookOrGoogle(host), !settings.browsingMajorTrackingSiteShown { + } else if let owner = isOwnedByFacebookOrGoogle(host), shouldShowNetworkTrackerDialog { // won't be shown if major tracker message has already been shown spec = majorTrackerOwnerMessage(host, owner) } else if let entityNames = blockedEntityNames(privacyInfo.trackerInfo), !settings.browsingWithTrackersShown { diff --git a/DuckDuckGo/DaxOnboardingViewController.swift b/DuckDuckGo/DaxOnboardingViewController.swift index 2d3817929e..9fda073b4e 100644 --- a/DuckDuckGo/DaxOnboardingViewController.swift +++ b/DuckDuckGo/DaxOnboardingViewController.swift @@ -54,7 +54,7 @@ class DaxOnboardingViewController: UIViewController, Onboarding { private let pixelReporting: OnboardingIntroImpressionReporting - init?(coder: NSCoder, pixelReporting: OnboardingIntroImpressionReporting = OnboardingPixelReporter()) { + init?(coder: NSCoder, pixelReporting: OnboardingIntroImpressionReporting) { self.pixelReporting = pixelReporting super.init(coder: coder) } diff --git a/DuckDuckGo/DebugEtagStorage.swift b/DuckDuckGo/DebugEtagStorage.swift index 09dce123a1..a58595a61d 100644 --- a/DuckDuckGo/DebugEtagStorage.swift +++ b/DuckDuckGo/DebugEtagStorage.swift @@ -20,6 +20,7 @@ import Common import Core import Configuration +import os.log /// Only intended for use via Debug screens. class DebugEtagStorage { @@ -28,7 +29,7 @@ class DebugEtagStorage { func loadEtag(for storeKey: String) -> String? { let etag = defaults?.string(forKey: storeKey) - os_log("stored etag for %s %s", log: .generalLog, type: .debug, storeKey, etag ?? "nil") + Logger.general.debug("stored etag for \(storeKey) \(etag ?? "nil")") return etag } diff --git a/DuckDuckGo/DownloadManager.swift b/DuckDuckGo/DownloadManager.swift index 130cfbfd59..abab2937aa 100644 --- a/DuckDuckGo/DownloadManager.swift +++ b/DuckDuckGo/DownloadManager.swift @@ -22,6 +22,7 @@ import Foundation import Core import WebKit import UniformTypeIdentifiers +import os.log class DownloadManager { @@ -46,7 +47,7 @@ class DownloadManager { let documentsDirectory = try FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false) return documentsDirectory.appendingPathComponent(Constants.downloadsDirectoryName, isDirectory: true) } catch { - os_log("Failed to create downloads directory: %s", type: .debug, error.localizedDescription) + Logger.general.error("Failed to create downloads directory: \(error.localizedDescription, privacy: .public)") let temporaryDirectory = FileManager.default.temporaryDirectory return temporaryDirectory.appendingPathComponent(Constants.downloadsDirectoryName, isDirectory: true) } @@ -62,7 +63,7 @@ class DownloadManager { init(_ notificationCenter: NotificationCenter = NotificationCenter.default) { self.notificationCenter = notificationCenter createDownloadsDirectoryIfNeeded() - os_log("Downloads directory location %s", type: .debug, downloadsDirectory.absoluteString) + Logger.general.debug("Downloads directory location \(self.downloadsDirectory.absoluteString)") } private func createDownloadsDirectoryIfNeeded() { @@ -157,7 +158,7 @@ class DownloadManager { try FileManager.default.moveItem(at: location, to: newPath) download.location = newPath } catch { - os_log("Error moving file to downloads directory: %s", type: .debug, error.localizedDescription) + Logger.general.error("Error moving file to downloads directory: \(error.localizedDescription, privacy: .public)") } } diff --git a/DuckDuckGo/DownloadsListViewModel.swift b/DuckDuckGo/DownloadsListViewModel.swift index 2e9ab7b75a..4bb8d04896 100644 --- a/DuckDuckGo/DownloadsListViewModel.swift +++ b/DuckDuckGo/DownloadsListViewModel.swift @@ -21,6 +21,7 @@ import SwiftUI import Combine import Common import Core +import os.log class DownloadsListViewModel: ObservableObject { @@ -31,25 +32,21 @@ class DownloadsListViewModel: ObservableObject { private var subscribers: Set = [] init(dataSource: DownloadsListDataSource) { - os_log("DownloadsListViewModel init", log: .generalLog, type: .debug) - + Logger.general.debug("DownloadsListViewModel init") + self.dataSource = dataSource dataSource.$model .sink { [weak self] in - os_log("DownloadsListViewModel changed - ongoing:%d complete:%d", - log: .generalLog, - type: .debug, - $0.ongoingDownloads.count, - $0.completeDownloads.count) - + Logger.general.debug("DownloadsListViewModel changed - ongoing:\($0.ongoingDownloads.count) complete:\($0.completeDownloads.count)") + self?.sections = DownloadsListSectioningHelper().makeSections(from: $0.ongoingDownloads + $0.completeDownloads) } .store(in: &subscribers) } deinit { - os_log("DownloadsListViewModel deinit", log: .generalLog, type: .debug) + Logger.general.debug("DownloadsListViewModel deinit") } // MARK: - Intents @@ -72,7 +69,7 @@ class DownloadsListViewModel: ObservableObject { presentDeleteConfirmation(message: message, undoHandler: undoHandler) case .failure(let error): - os_log("Error deleting a download %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Error deleting a download: \(error.localizedDescription, privacy: .public)") } } } @@ -85,7 +82,7 @@ class DownloadsListViewModel: ObservableObject { presentDeleteConfirmation(message: UserText.messageAllFilesDeleted, undoHandler: undoHandler) case .failure(let error): - os_log("Error deleting all downloads %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Error deleting all downloads: \(error.localizedDescription, privacy: .public)") } } } diff --git a/DuckDuckGo/DuckPlayer/DuckNavigationHandling.swift b/DuckDuckGo/DuckPlayer/DuckNavigationHandling.swift index 6bb9af7d13..4f41efb297 100644 --- a/DuckDuckGo/DuckPlayer/DuckNavigationHandling.swift +++ b/DuckDuckGo/DuckPlayer/DuckNavigationHandling.swift @@ -30,4 +30,5 @@ protocol DuckNavigationHandling: AnyObject { func handleGoBack(webView: WKWebView) func handleReload(webView: WKWebView) func handleAttach(webView: WKWebView) + func getDuckURLFor(_ url: URL) -> URL } diff --git a/DuckDuckGo/DuckPlayer/DuckPlayer.swift b/DuckDuckGo/DuckPlayer/DuckPlayer.swift index 261e748064..a861d7b478 100644 --- a/DuckDuckGo/DuckPlayer/DuckPlayer.swift +++ b/DuckDuckGo/DuckPlayer/DuckPlayer.swift @@ -24,6 +24,7 @@ import Foundation import WebKit import UserScript import Core +import ContentScopeScripts /// Values that the Frontend can use to determine the current state. struct InitialPlayerSettings: Codable { @@ -48,22 +49,15 @@ struct InitialPlayerSettings: Codable { case development case production } - - enum Locale: String, Codable { - case en - } let userValues: UserValues + let ui: UIValues let settings: PlayerSettings let platform: Platform - let locale: Locale -} - -struct InitialOverlaySettings: Codable { - let userValues: UserValues + let locale: String + let localeStrings: String? } - /// Values that the Frontend can use to determine user settings public struct UserValues: Codable { enum CodingKeys: String, CodingKey { @@ -74,6 +68,13 @@ public struct UserValues: Codable { let askModeOverlayHidden: Bool } +public struct UIValues: Codable { + enum CodingKeys: String, CodingKey { + case allowFirstVideo + } + let allowFirstVideo: Bool +} + public enum DuckPlayerReferrer { case youtube, other } @@ -102,11 +103,25 @@ final class DuckPlayer: DuckPlayerProtocol { struct Constants { static let duckPlayerHost: String = "player" static let commonName = "Duck Player" + static let translationFile = "duckplayer" + static let translationFileExtension = "json" + static let defaultLocale = "en" + static let translationPath = "pages/duckplayer/locales/" } private(set) var settings: DuckPlayerSettingsProtocol private(set) weak var hostView: UIViewController? + private lazy var localeStrings: String? = { + let languageCode = Locale.current.languageCode ?? Constants.defaultLocale + if let localizedFile = ContentScopeScripts.Bundle.path(forResource: Constants.translationFile, + ofType: Constants.translationFileExtension, + inDirectory: "\(Constants.translationPath)\(languageCode)") { + return try? String(contentsOfFile: localizedFile) + } + return nil + }() + private struct WKMessageData: Codable { var context: String? var featureName: String? @@ -148,7 +163,7 @@ final class DuckPlayer: DuckPlayerProtocol { private func updateSettings(userValues: UserValues) async { settings.setMode(userValues.duckPlayerMode) - settings.setOverlayHidden(userValues.askModeOverlayHidden) + settings.setAskModeOverlayHidden(userValues.askModeOverlayHidden) } public func getUserValues(params: Any, message: WKScriptMessage) -> Encodable? { @@ -198,25 +213,31 @@ final class DuckPlayer: DuckPlayerProtocol { askModeOverlayHidden: settings.askModeOverlayHidden ) } + + private func encodeUIValues() -> UIValues { + UIValues( + allowFirstVideo: settings.allowFirstVideo + ) + } @MainActor private func encodedPlayerSettings(with webView: WKWebView?) async -> InitialPlayerSettings { let isPiPEnabled = webView?.configuration.allowsPictureInPictureMediaPlayback == true let pip = InitialPlayerSettings.PIP(status: isPiPEnabled ? .enabled : .disabled) let platform = InitialPlayerSettings.Platform(name: "ios") - let environment = InitialPlayerSettings.Environment.development - let locale = InitialPlayerSettings.Locale.en + let locale = Locale.current.languageCode ?? "en" let playerSettings = InitialPlayerSettings.PlayerSettings(pip: pip) let userValues = encodeUserValues() - return InitialPlayerSettings(userValues: userValues, settings: playerSettings, platform: platform, locale: locale) + let uiValues = encodeUIValues() + let settings = InitialPlayerSettings(userValues: userValues, + ui: uiValues, + settings: playerSettings, + platform: platform, + locale: locale, + localeStrings: localeStrings) + return settings } - - @MainActor - private func encodedOverlaySettings(with webView: WKWebView?) async -> InitialOverlaySettings { - let userValues = encodeUserValues() - return InitialOverlaySettings(userValues: userValues) - } - + // Accessing WKMessage needs main thread @MainActor private func firePixels(message: WKScriptMessage, userValues: UserValues) { diff --git a/DuckDuckGo/DuckPlayer/DuckPlayerNavigationHandler.swift b/DuckDuckGo/DuckPlayer/DuckPlayerNavigationHandler.swift index 86e3109d35..68fc1ba6e4 100644 --- a/DuckDuckGo/DuckPlayer/DuckPlayerNavigationHandler.swift +++ b/DuckDuckGo/DuckPlayer/DuckPlayerNavigationHandler.swift @@ -24,6 +24,7 @@ import Core import Common import BrowserServicesKit import DuckPlayer +import os.log final class DuckPlayerNavigationHandler { @@ -31,9 +32,10 @@ final class DuckPlayerNavigationHandler { var referrer: DuckPlayerReferrer = .other var lastHandledVideoID: String? var featureFlagger: FeatureFlagger + var appSettings: AppSettings private struct Constants { - static let SERPURL = "https://duckduckgo.com/" + static let SERPURL = "duckduckgo.com/" static let refererHeader = "Referer" static let templateDirectory = "pages/duckplayer" static let templateName = "index" @@ -46,12 +48,16 @@ final class DuckPlayerNavigationHandler { static let watchInYoutubePath = "openInYoutube" static let watchInYoutubeVideoParameter = "v" static let urlInternalReferrer = "embeds_referring_euri" + static let youtubeScheme = "youtube://" + static let duckPlayerScheme = URL.NavigationalScheme.duck.rawValue } init(duckPlayer: DuckPlayerProtocol = DuckPlayer(), - featureFlagger: FeatureFlagger = AppDependencyProvider.shared.featureFlagger) { + featureFlagger: FeatureFlagger = AppDependencyProvider.shared.featureFlagger, + appSettings: AppSettings) { self.duckPlayer = duckPlayer self.featureFlagger = featureFlagger + self.appSettings = appSettings } static var htmlTemplatePath: String { @@ -108,9 +114,12 @@ final class DuckPlayerNavigationHandler { return } + // This is passed to the FE overlay at init to disable the overlay for one video + duckPlayer.settings.allowFirstVideo = false + if let (videoID, _) = url.youtubeVideoParams, videoID == lastHandledVideoID { - os_log("DP: URL (%s) already handled, skipping", log: .duckPlayerLog, type: .debug, url.absoluteString) + Logger.duckPlayer.debug("URL (\(url.absoluteString) already handled, skipping") return } @@ -118,7 +127,8 @@ final class DuckPlayerNavigationHandler { // These should not be handled by DuckPlayer if url.isYoutubeVideo, url.hasWatchInYoutubeQueryParameter { - return + duckPlayer.settings.allowFirstVideo = true + return } if url.isYoutubeVideo, @@ -126,12 +136,41 @@ final class DuckPlayerNavigationHandler { let (videoID, timestamp) = url.youtubeVideoParams, duckPlayer.settings.mode == .enabled || duckPlayer.settings.mode == .alwaysAsk { - os_log("DP: Handling URL change: %s", log: .duckPlayerLog, type: .debug, url.absoluteString) + Logger.duckPlayer.debug("Handling URL change: \(url.absoluteString)") webView.load(URLRequest(url: URL.duckPlayer(videoID, timestamp: timestamp))) lastHandledVideoID = videoID } } + // Get the duck:// URL youtube-no-cookie URL + func getDuckURLFor(_ url: URL) -> URL { + guard let (youtubeVideoID, timestamp) = url.youtubeVideoParams, + url.isDuckPlayer, + !url.isDuckURLScheme, + duckPlayer.settings.mode != .disabled + else { + return url + } + return URL.duckPlayer(youtubeVideoID, timestamp: timestamp) + } + + private var isYouTubeAppInstalled: Bool { + if let youtubeURL = URL(string: Constants.youtubeScheme) { + return UIApplication.shared.canOpenURL(youtubeURL) + } + return false + } + + private func isSERPLink(navigationAction: WKNavigationAction) -> Bool { + guard let referrer = navigationAction.request.allHTTPHeaderFields?[Constants.refererHeader] else { + return false + } + if referrer.contains(Constants.SERPURL) { + return true + } + return false + } + } extension DuckPlayerNavigationHandler: DuckNavigationHandling { @@ -141,8 +180,11 @@ extension DuckPlayerNavigationHandler: DuckNavigationHandling { @MainActor func handleNavigation(_ navigationAction: WKNavigationAction, webView: WKWebView) { - os_log("DP: Handling DuckPlayer Player Navigation for %s", log: .duckPlayerLog, type: .debug, navigationAction.request.url?.absoluteString ?? "") - + Logger.duckPlayer.debug("Handling DuckPlayer Player Navigation for \(navigationAction.request.url?.absoluteString ?? "")") + + // This is passed to the FE overlay at init to disable the overlay for one video + duckPlayer.settings.allowFirstVideo = false + guard let url = navigationAction.request.url else { return } guard featureFlagger.isFeatureOn(.duckPlayer) else { @@ -158,20 +200,28 @@ extension DuckPlayerNavigationHandler: DuckNavigationHandling { // Handle Open in Youtube Links // duck://player/openInYoutube?v=12345 - if url.scheme == "duck" { - let urlComponents = URLComponents(url: url, resolvingAgainstBaseURL: false) - - if urlComponents?.path == "/\(Constants.watchInYoutubePath)", - let queryItems = urlComponents?.queryItems { - - if let videoParameterItem = queryItems.first(where: { $0.name == Constants.watchInYoutubeVideoParameter }), - let id = videoParameterItem.value, - let newURL = URL.youtube(id, timestamp: nil).addingWatchInYoutubeQueryParameter() { - Pixel.fire(pixel: Pixel.Event.duckPlayerWatchOnYoutube) - webView.load(URLRequest(url: newURL)) - return - } + if url.scheme == Constants.duckPlayerScheme, + let urlComponents = URLComponents(url: url, resolvingAgainstBaseURL: false), + urlComponents.path == "/\(Constants.watchInYoutubePath)", + let videoParameterItem = urlComponents.queryItems?.first(where: { $0.name == Constants.watchInYoutubeVideoParameter }), + let id = videoParameterItem.value, + let newURL = URL.youtube(id, timestamp: nil).addingWatchInYoutubeQueryParameter() { + + Pixel.fire(pixel: Pixel.Event.duckPlayerWatchOnYoutube) + + // These links should always skip the overlay + duckPlayer.settings.allowFirstVideo = true + + // Attempt to open in YouTube app (if installed) or load in webView + if isSERPLink(navigationAction: navigationAction), + appSettings.allowUniversalLinks, + isYouTubeAppInstalled, + let url = URL(string: "\(Constants.youtubeScheme)\(id)") { + UIApplication.shared.open(url) + } else { + webView.load(URLRequest(url: newURL)) } + return } // Daily Unique View Pixel @@ -193,7 +243,7 @@ extension DuckPlayerNavigationHandler: DuckNavigationHandling { !url.hasWatchInYoutubeQueryParameter { let newRequest = Self.makeDuckPlayerRequest(from: URLRequest(url: url)) - os_log("DP: Loading Simulated Request for %s", log: .duckPlayerLog, type: .debug, navigationAction.request.url?.absoluteString ?? "") + Logger.duckPlayer.debug("DP: Loading Simulated Request for \(navigationAction.request.url?.absoluteString ?? "")") DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) { self.performRequest(request: newRequest, webView: webView) @@ -220,34 +270,39 @@ extension DuckPlayerNavigationHandler: DuckNavigationHandling { return } + // This is passed to the FE overlay at init to disable the overlay for one video + duckPlayer.settings.allowFirstVideo = false + if let (videoID, _) = url.youtubeVideoParams, videoID == lastHandledVideoID, !url.hasWatchInYoutubeQueryParameter { - os_log("DP: DecidePolicy: URL (%s) already handled, skipping", log: .duckPlayerLog, type: .debug, url.absoluteString) + Logger.duckPlayer.debug("DP: DecidePolicy: URL (\(url.absoluteString)) already handled, skipping") completion(.cancel) return } // Handle Youtube internal links like "Age restricted" and "Copyright restricted" videos - // These should not be handled by DuckPlayer + // These should not be handled by DuckPlayer and not include overlays if url.isYoutubeVideo, url.hasWatchInYoutubeQueryParameter { + duckPlayer.settings.allowFirstVideo = true completion(.allow) return } // Pixel for Views From SERP - if navigationAction.request.allHTTPHeaderFields?[Constants.refererHeader] == Constants.SERPURL, - duckPlayer.settings.mode == .enabled, !url.isDuckPlayer { + if isSERPLink(navigationAction: navigationAction), + duckPlayer.settings.mode == .enabled, !url.isDuckPlayer { Pixel.fire(pixel: Pixel.Event.duckPlayerViewFromSERP, debounce: 2) } else { Pixel.fire(pixel: Pixel.Event.duckPlayerViewFromOther, debounce: 2) } + if url.isYoutubeVideo, !url.isDuckPlayer, duckPlayer.settings.mode == .enabled || duckPlayer.settings.mode == .alwaysAsk { - os_log("DP: Handling decidePolicy for Duck Player with %s", log: .duckPlayerLog, type: .debug, url.absoluteString) + Logger.duckPlayer.debug("DP: Handling decidePolicy for Duck Player with \(url.absoluteString)") completion(.cancel) handleURLChange(url: url, webView: webView) return @@ -269,7 +324,7 @@ extension DuckPlayerNavigationHandler: DuckNavigationHandling { @MainActor func handleGoBack(webView: WKWebView) { - os_log("DP: Handling Back Navigation", log: .duckPlayerLog, type: .debug) + Logger.duckPlayer.debug("DP: Handling Back Navigation") guard featureFlagger.isFeatureOn(.duckPlayer) else { webView.goBack() @@ -295,11 +350,11 @@ extension DuckPlayerNavigationHandler: DuckNavigationHandling { break } - if let nonYoutubeItem = nonYoutubeItem { - os_log("DP: Navigating back to %s", log: .duckPlayerLog, type: .debug, nonYoutubeItem.url.absoluteString) + if let nonYoutubeItem = nonYoutubeItem, duckPlayer.settings.mode == .enabled { + Logger.duckPlayer.debug("DP: Navigating back to \(nonYoutubeItem.url.absoluteString)") webView.go(to: nonYoutubeItem) } else { - os_log("DP: Navigating back to previous page", log: .duckPlayerLog, type: .debug) + Logger.duckPlayer.debug("DP: Navigating back to previous page") webView.goBack() } } @@ -319,7 +374,7 @@ extension DuckPlayerNavigationHandler: DuckNavigationHandling { !url.isDuckURLScheme, let (videoID, timestamp) = url.youtubeVideoParams, duckPlayer.settings.mode == .enabled || duckPlayer.settings.mode == .alwaysAsk { - os_log("DP: Handling DuckPlayer Reload for %s", log: .duckPlayerLog, type: .debug, url.absoluteString) + Logger.duckPlayer.debug("DP: Handling DuckPlayer Reload for \(url.absoluteString)") webView.load(URLRequest(url: .duckPlayer(videoID, timestamp: timestamp))) } else { webView.reload() @@ -336,9 +391,10 @@ extension DuckPlayerNavigationHandler: DuckNavigationHandling { if let url = webView.url, url.isDuckPlayer, !url.isDuckURLScheme, duckPlayer.settings.mode == .enabled || duckPlayer.settings.mode == .alwaysAsk { - os_log("DP: Handling Initial Load of a video for %s", log: .duckPlayerLog, type: .debug, url.absoluteString) + Logger.duckPlayer.debug("DP: Handling Initial Load of a video for \(url.absoluteString)") handleReload(webView: webView) } } + } diff --git a/DuckDuckGo/DuckPlayer/DuckPlayerSettings.swift b/DuckDuckGo/DuckPlayer/DuckPlayerSettings.swift index b187b2cb1e..2f0ac79ea0 100644 --- a/DuckDuckGo/DuckPlayer/DuckPlayerSettings.swift +++ b/DuckDuckGo/DuckPlayer/DuckPlayerSettings.swift @@ -69,11 +69,12 @@ protocol DuckPlayerSettingsProtocol: AnyObject { var duckPlayerSettingsPublisher: AnyPublisher { get } var mode: DuckPlayerMode { get } var askModeOverlayHidden: Bool { get } + var allowFirstVideo: Bool { get set } init(appSettings: AppSettings, privacyConfigManager: PrivacyConfigurationManaging) func setMode(_ mode: DuckPlayerMode) - func setOverlayHidden(_ overlayHidden: Bool) + func setAskModeOverlayHidden(_ overlayHidden: Bool) func triggerNotification() } @@ -125,7 +126,7 @@ final class DuckPlayerSettings: DuckPlayerSettingsProtocol { } } - var overlayHidden: Bool { + var askModeOverlayHidden: Bool { if isFeatureEnabled { return appSettings.duckPlayerAskModeOverlayHidden } else { @@ -133,8 +134,7 @@ final class DuckPlayerSettings: DuckPlayerSettingsProtocol { } } - @UserDefaultsWrapper(key: .duckPlayerAskModeOverlayHidden, defaultValue: false) - var askModeOverlayHidden: Bool + var allowFirstVideo: Bool = false private func registerConfigPublisher() { isFeatureEnabledCancellable = privacyConfigManager.updatesPublisher @@ -161,7 +161,7 @@ final class DuckPlayerSettings: DuckPlayerSettingsProtocol { } } - func setOverlayHidden(_ overlayHidden: Bool) { + func setAskModeOverlayHidden(_ overlayHidden: Bool) { if overlayHidden != appSettings.duckPlayerAskModeOverlayHidden { appSettings.duckPlayerAskModeOverlayHidden = overlayHidden triggerNotification() diff --git a/DuckDuckGo/DuckPlayer/DuckPlayerStorage.swift b/DuckDuckGo/DuckPlayer/DuckPlayerStorage.swift index 3e83f3ea24..16b74312bb 100644 --- a/DuckDuckGo/DuckPlayer/DuckPlayerStorage.swift +++ b/DuckDuckGo/DuckPlayer/DuckPlayerStorage.swift @@ -20,6 +20,7 @@ import Core import Foundation import Common +import os.log protocol DuckPlayerStorage { /// Description: Checks whether the user has seen and interacted with (i.e. clicked any button) the Duck Player overlay on a YouTube video. @@ -30,8 +31,8 @@ protocol DuckPlayerStorage { struct DefaultDuckPlayerStorage: DuckPlayerStorage { @UserDefaultsWrapper(key: .userInteractedWithDuckPlayer, defaultValue: false) var userInteractedWithDuckPlayer: Bool { - didSet { - os_log("DP: Flagging userInteractedWithDuckPlayer [%@]", log: .duckPlayerLog, type: .debug, userInteractedWithDuckPlayer ? "true" : "false") + didSet(newValue) { + Logger.duckPlayer.debug("Flagging userInteractedWithDuckPlayer [\(newValue ? "true" : "false")]") } } } diff --git a/DuckDuckGo/DuckPlayer/Resources/DuckPlayer.xcassets/DuckPlayer.imageset/Contents.json b/DuckDuckGo/DuckPlayer/Resources/DuckPlayer.xcassets/DuckPlayer.imageset/Contents.json new file mode 100644 index 0000000000..bca56c2cf3 --- /dev/null +++ b/DuckDuckGo/DuckPlayer/Resources/DuckPlayer.xcassets/DuckPlayer.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "filename" : "PrivatePlayer.pdf", + "idiom" : "universal" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "PrivatePlayerDarkMode.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/DuckDuckGo/DuckPlayer/Resources/DuckPlayer.xcassets/DuckPlayer.imageset/PrivatePlayer.pdf b/DuckDuckGo/DuckPlayer/Resources/DuckPlayer.xcassets/DuckPlayer.imageset/PrivatePlayer.pdf new file mode 100644 index 0000000000..4ab20ee821 Binary files /dev/null and b/DuckDuckGo/DuckPlayer/Resources/DuckPlayer.xcassets/DuckPlayer.imageset/PrivatePlayer.pdf differ diff --git a/DuckDuckGo/DuckPlayer/Resources/DuckPlayer.xcassets/DuckPlayer.imageset/PrivatePlayerDarkMode.pdf b/DuckDuckGo/DuckPlayer/Resources/DuckPlayer.xcassets/DuckPlayer.imageset/PrivatePlayerDarkMode.pdf new file mode 100644 index 0000000000..5a158ccaa3 Binary files /dev/null and b/DuckDuckGo/DuckPlayer/Resources/DuckPlayer.xcassets/DuckPlayer.imageset/PrivatePlayerDarkMode.pdf differ diff --git a/DuckDuckGo/DuckPlayer/YoutubeOverlayUserScript.swift b/DuckDuckGo/DuckPlayer/YoutubeOverlayUserScript.swift index a0343e88b6..f5dfac7248 100644 --- a/DuckDuckGo/DuckPlayer/YoutubeOverlayUserScript.swift +++ b/DuckDuckGo/DuckPlayer/YoutubeOverlayUserScript.swift @@ -87,6 +87,8 @@ final class YoutubeOverlayUserScript: NSObject, Subfeature { weak var webView: WKWebView? let messageOriginPolicy: MessageOriginPolicy = .only(rules: [ + .exact(hostname: "sosbourne.duckduckgo.com"), + .exact(hostname: "use-devtesting18.duckduckgo.com"), .exact(hostname: DuckPlayerSettings.OriginDomains.duckduckgo), .exact(hostname: DuckPlayerSettings.OriginDomains.youtube), .exact(hostname: DuckPlayerSettings.OriginDomains.youtubeMobile) @@ -166,10 +168,7 @@ extension YoutubeOverlayUserScript { case "play.use": Pixel.fire(pixel: Pixel.Event.duckPlayerViewFromYoutubeViaMainOverlay, debounce: 2) duckPlayerStorage.userInteractedWithDuckPlayer = true - - case "play.use.thumbnail": - Pixel.fire(pixel: Pixel.Event.duckPlayerViewFromYoutubeViaHoverButton, debounce: 2) - + case "play.do_not_use": Pixel.fire(pixel: Pixel.Event.duckPlayerOverlayYoutubeWatchHere, debounce: 2) duckPlayerStorage.userInteractedWithDuckPlayer = true diff --git a/DuckDuckGo/Favicons.swift b/DuckDuckGo/Favicons.swift index 567a617e5b..ba17101c97 100644 --- a/DuckDuckGo/Favicons.swift +++ b/DuckDuckGo/Favicons.swift @@ -23,6 +23,7 @@ import Kingfisher import UIKit import LinkPresentation import WidgetKit +import os.log public class Favicons { @@ -84,7 +85,7 @@ public class Favicons { try? url.setResourceValues(resourceValues) } - os_log("favicons %s location %s", type: .debug, rawValue, url.absoluteString) + Logger.general.debug("favicons \(rawValue) location \(url.absoluteString)") return try? ImageCache(name: self.rawValue, cacheDirectoryURL: url) } @@ -116,7 +117,7 @@ public class Favicons { do { try FileManager.default.removeItem(at: bookmarksCache) } catch { - os_log("Failed to remove favicon bookmarks cache: %s", type: .error, error.localizedDescription) + Logger.general.error("Failed to remove favicon bookmarks cache: \(error.localizedDescription, privacy: .public)") } } } diff --git a/DuckDuckGo/FaviconsHelper.swift b/DuckDuckGo/FaviconsHelper.swift index c37364fc42..4f64181e46 100644 --- a/DuckDuckGo/FaviconsHelper.swift +++ b/DuckDuckGo/FaviconsHelper.swift @@ -47,6 +47,11 @@ struct FaviconsHelper { completion?(resultImage, fake) } + if domain == "player" { + complete(UIImage(named: "DuckPlayer")) + return + } + if URL.isDuckDuckGo(domain: domain) { complete(UIImage(named: "Logo")) return diff --git a/DuckDuckGo/FavoritesDefaultModel.swift b/DuckDuckGo/FavoritesDefaultModel.swift index eae3da8301..794bb34d1a 100644 --- a/DuckDuckGo/FavoritesDefaultModel.swift +++ b/DuckDuckGo/FavoritesDefaultModel.swift @@ -24,11 +24,12 @@ import SwiftUI import Core import WidgetKit -final class FavoritesDefaultModel: FavoritesModel { +final class FavoritesDefaultModel: FavoritesModel, FavoritesEmptyStateModel { @Published private(set) var allFavorites: [Favorite] = [] @Published private(set) var isCollapsed: Bool = true - + @Published private(set) var isShowingTooltip: Bool = false + private(set) lazy var faviconLoader: FavoritesFaviconLoading? = { FavoritesFaviconLoader(onFaviconMissing: { [weak self] in guard let self else { return } @@ -42,13 +43,19 @@ final class FavoritesDefaultModel: FavoritesModel { private var cancellables = Set() private let interactionModel: FavoritesListInteracting + private let pixelFiring: PixelFiring.Type + private let dailyPixelFiring: DailyPixelFiring.Type var isEmpty: Bool { allFavorites.isEmpty } - init(interactionModel: FavoritesListInteracting) { + init(interactionModel: FavoritesListInteracting, + pixelFiring: PixelFiring.Type = Pixel.self, + dailyPixelFiring: DailyPixelFiring.Type = DailyPixel.self) { self.interactionModel = interactionModel + self.pixelFiring = pixelFiring + self.dailyPixelFiring = dailyPixelFiring interactionModel.externalUpdates.sink { [weak self] _ in try? self?.updateData() @@ -63,6 +70,12 @@ final class FavoritesDefaultModel: FavoritesModel { func toggleCollapse() { isCollapsed.toggle() + + if isCollapsed { + pixelFiring.fire(.newTabPageFavoritesSeeLess, withAdditionalParameters: [:]) + } else { + pixelFiring.fire(.newTabPageFavoritesSeeMore, withAdditionalParameters: [:]) + } } func prefixedFavorites(for columnsCount: Int) -> FavoritesSlice { @@ -84,8 +97,8 @@ final class FavoritesDefaultModel: FavoritesModel { func favoriteSelected(_ favorite: Favorite) { guard let url = favorite.urlObject else { return } - Pixel.fire(pixel: .favoriteLaunchedNTP) - DailyPixel.fire(pixel: .favoriteLaunchedNTPDaily) + pixelFiring.fire(.favoriteLaunchedNTP, withAdditionalParameters: [:]) + dailyPixelFiring.fireDaily(.favoriteLaunchedNTPDaily) Favicons.shared.loadFavicon(forDomain: url.host, intoCache: .fireproof, fromCache: .tabs) onFavoriteURLSelected?(url) @@ -95,8 +108,8 @@ final class FavoritesDefaultModel: FavoritesModel { func deleteFavorite(_ favorite: Favorite) { guard let entity = lookupEntity(for: favorite) else { return } - Pixel.fire(pixel: .homeScreenDeleteFavorite) - + pixelFiring.fire(.homeScreenDeleteFavorite, withAdditionalParameters: [:]) + interactionModel.removeFavorite(entity) WidgetCenter.shared.reloadAllTimelines() @@ -109,7 +122,7 @@ final class FavoritesDefaultModel: FavoritesModel { func editFavorite(_ favorite: Favorite) { guard let entity = lookupEntity(for: favorite) else { return } - Pixel.fire(pixel: .homeScreenEditFavorite) + pixelFiring.fire(.homeScreenEditFavorite, withAdditionalParameters: [:]) onFavoriteEdit?(entity) } @@ -127,6 +140,21 @@ final class FavoritesDefaultModel: FavoritesModel { allFavorites.move(fromOffsets: IndexSet(integer: fromIndex), toOffset: index) } + // MARK: - Empty state model + + func placeholderTapped() { + pixelFiring.fire(.newTabPageFavoritesPlaceholderTapped, withAdditionalParameters: [:]) + } + + func toggleTooltip() { + isShowingTooltip.toggle() + if isShowingTooltip { + pixelFiring.fire(.newTabPageFavoritesInfoTooltip, withAdditionalParameters: [:]) + } + } + + // MARK: - + private func lookupEntity(for favorite: Favorite) -> BookmarkEntity? { interactionModel.favorites.first { $0.uuid == favorite.id diff --git a/DuckDuckGo/FavoritesEmptyStateView.swift b/DuckDuckGo/FavoritesEmptyStateView.swift index 02c2beae1b..60d528104c 100644 --- a/DuckDuckGo/FavoritesEmptyStateView.swift +++ b/DuckDuckGo/FavoritesEmptyStateView.swift @@ -19,18 +19,18 @@ import SwiftUI -struct FavoritesEmptyStateView: View { +struct FavoritesEmptyStateView: View { @Environment(\.horizontalSizeClass) var horizontalSizeClass @Environment(\.isLandscapeOrientation) var isLandscape - @State private var headerPadding: CGFloat = 10 + @ObservedObject var model: Model - @Binding var isShowingTooltip: Bool + @State private var headerPadding: CGFloat = 10 var body: some View { ZStack(alignment: .topTrailing) { VStack(spacing: 16) { - FavoritesSectionHeader(isShowingTooltip: $isShowingTooltip) + FavoritesSectionHeader(model: model) .padding(.horizontal, headerPadding) NewTabPageGridView { placeholdersCount in @@ -38,6 +38,10 @@ struct FavoritesEmptyStateView: View { ForEach(placeholders, id: \.self) { _ in FavoriteEmptyStateItem() .frame(width: NewTabPageGrid.Item.edgeSize, height: NewTabPageGrid.Item.edgeSize) + .contentShape(.capsule) + .onTapGesture { + model.placeholderTapped() + } } }.overlay( GeometryReader(content: { geometry in @@ -53,7 +57,7 @@ struct FavoritesEmptyStateView: View { }) } - if isShowingTooltip { + if model.isShowingTooltip { FavoritesTooltip() .offset(x: -headerPadding + 18, y: 24) .frame(maxWidth: .infinity, alignment: .bottomTrailing) @@ -63,8 +67,7 @@ struct FavoritesEmptyStateView: View { } #Preview { - @State var isShowingTooltip = false - return FavoritesEmptyStateView(isShowingTooltip: $isShowingTooltip) + return FavoritesEmptyStateView(model: FavoritesPreviewModel()) } private struct WidthKey: PreferenceKey { @@ -73,3 +76,13 @@ private struct WidthKey: PreferenceKey { } static var defaultValue: CGFloat = .zero } + +private final class PreviewEmptyStateModel: FavoritesEmptyStateModel { + @Published var isShowingTooltip: Bool = true + + func toggleTooltip() { + } + + func placeholderTapped() { + } +} diff --git a/DuckDuckGo/FavoritesModel.swift b/DuckDuckGo/FavoritesModel.swift index 427df29d1a..ce1804fce2 100644 --- a/DuckDuckGo/FavoritesModel.swift +++ b/DuckDuckGo/FavoritesModel.swift @@ -40,6 +40,14 @@ protocol FavoritesModel: AnyObject, ObservableObject { func moveFavorites(from indexSet: IndexSet, to index: Int) } +protocol FavoritesEmptyStateModel: AnyObject, ObservableObject { + + var isShowingTooltip: Bool { get } + + func placeholderTapped() + func toggleTooltip() +} + struct FavoritesSlice { let items: [Favorite] let isCollapsible: Bool diff --git a/DuckDuckGo/FavoritesPreviewModel.swift b/DuckDuckGo/FavoritesPreviewModel.swift index 4e59572887..fc17ec9c60 100644 --- a/DuckDuckGo/FavoritesPreviewModel.swift +++ b/DuckDuckGo/FavoritesPreviewModel.swift @@ -20,7 +20,9 @@ import Bookmarks import Foundation -final class FavoritesPreviewModel: FavoritesModel { +final class FavoritesPreviewModel: FavoritesModel, FavoritesEmptyStateModel { + + @Published var isShowingTooltip: Bool = false var isCollapsed: Bool = true @Published var allFavorites: [Favorite] @@ -78,6 +80,14 @@ final class FavoritesPreviewModel: FavoritesModel { func loadFavicon(for favorite: Favorite, size: CGFloat) async { } + + func placeholderTapped() { + + } + + func toggleTooltip() { + + } } struct EmptyFaviconLoading: FavoritesFaviconLoading { diff --git a/DuckDuckGo/FavoritesSectionHeader.swift b/DuckDuckGo/FavoritesSectionHeader.swift index ce13182c1c..10a0779460 100644 --- a/DuckDuckGo/FavoritesSectionHeader.swift +++ b/DuckDuckGo/FavoritesSectionHeader.swift @@ -19,10 +19,11 @@ import SwiftUI import DesignResourcesKit +import Core struct FavoritesSectionHeader: View { - @Binding var isShowingTooltip: Bool + let model: any FavoritesEmptyStateModel var body: some View { HStack(spacing: 16, content: { @@ -34,7 +35,7 @@ struct FavoritesSectionHeader: View { Spacer() Button(action: { - isShowingTooltip.toggle() + model.toggleTooltip() }, label: { Image(.info12) .foregroundStyle(Color(designSystemColor: .textPrimary)) @@ -44,6 +45,5 @@ struct FavoritesSectionHeader: View { } #Preview { - @State var isShowingTooltip = true - return FavoritesSectionHeader(isShowingTooltip: $isShowingTooltip) + return FavoritesSectionHeader(model: FavoritesPreviewModel()) } diff --git a/DuckDuckGo/Feedback/VPNFeedbackFormViewModel.swift b/DuckDuckGo/Feedback/VPNFeedbackFormViewModel.swift index 7f79dd674e..5efcd86a22 100644 --- a/DuckDuckGo/Feedback/VPNFeedbackFormViewModel.swift +++ b/DuckDuckGo/Feedback/VPNFeedbackFormViewModel.swift @@ -72,7 +72,7 @@ final class VPNFeedbackFormViewModel: ObservableObject { viewState = .feedbackSending do { - let metadata = await metadataCollector.collectMetadata() + let metadata = await metadataCollector.collectVPNMetadata() try await feedbackSender.send(metadata: metadata, category: category, userText: feedbackFormText) viewState = .feedbackSent return true diff --git a/DuckDuckGo/Feedback/VPNMetadataCollector.swift b/DuckDuckGo/Feedback/VPNMetadataCollector.swift index 8345ec44b5..a2f6b69669 100644 --- a/DuckDuckGo/Feedback/VPNMetadataCollector.swift +++ b/DuckDuckGo/Feedback/VPNMetadataCollector.swift @@ -93,22 +93,10 @@ struct VPNMetadata: Encodable { return String(data: encodedMetadata, encoding: .utf8) } - - func toBase64() -> String { - let encoder = JSONEncoder() - encoder.outputFormatting = [.sortedKeys] - - do { - let encodedMetadata = try encoder.encode(self) - return encodedMetadata.base64EncodedString() - } catch { - return "Failed to encode metadata to JSON, error message: \(error.localizedDescription)" - } - } } protocol VPNMetadataCollector { - func collectMetadata() async -> VPNMetadata + func collectVPNMetadata() async -> VPNMetadata } final class DefaultVPNMetadataCollector: VPNMetadataCollector { @@ -130,7 +118,7 @@ final class DefaultVPNMetadataCollector: VPNMetadataCollector { self.defaults = defaults } - func collectMetadata() async -> VPNMetadata { + func collectVPNMetadata() async -> VPNMetadata { let appInfoMetadata = collectAppInfoMetadata() let deviceInfoMetadata = collectDeviceInfoMetadata() let networkInfoMetadata = await collectNetworkInformation() @@ -282,3 +270,17 @@ private extension NSError { } } + +// MARK: - Unified feedback form support + +extension VPNMetadata: UnifiedFeedbackMetadata {} + +extension DefaultVPNMetadataCollector: UnifiedMetadataCollector { + convenience init() { + self.init(statusObserver: AppDependencyProvider.shared.connectionObserver) + } + + func collectMetadata() async -> VPNMetadata? { + await collectVPNMetadata() + } +} diff --git a/DuckDuckGo/FeedbackSender.swift b/DuckDuckGo/FeedbackSender.swift index 370d21185a..1572232174 100644 --- a/DuckDuckGo/FeedbackSender.swift +++ b/DuckDuckGo/FeedbackSender.swift @@ -20,8 +20,9 @@ import Foundation import Core import BrowserServicesKit -import Common +import os.log import Networking +import Common /// Represents single component that is being sent to the server. /// Feedback as a whole can consist of multiple components. These components are included both in @@ -94,9 +95,9 @@ struct FeedbackSubmitter: FeedbackSender { request.fetch { _, error in if let error = error { - os_log("Feedback request failed, %s", log: .generalLog, type: .debug, error.localizedDescription) + Logger.general.error("Feedback request failed: \(error.localizedDescription, privacy: .public)") } else { - os_log("Feedback response successful", log: .generalLog, type: .debug) + Logger.general.debug("Feedback response successful") } } } diff --git a/DuckDuckGo/HomePageConfiguration.swift b/DuckDuckGo/HomePageConfiguration.swift index 8ddbd84440..bdec04070c 100644 --- a/DuckDuckGo/HomePageConfiguration.swift +++ b/DuckDuckGo/HomePageConfiguration.swift @@ -23,6 +23,7 @@ import RemoteMessaging import Common import Core import Bookmarks +import os.log final class HomePageConfiguration: HomePageMessagesConfiguration { @@ -79,14 +80,14 @@ final class HomePageConfiguration: HomePageMessagesConfiguration { private func remoteMessageToShow() -> HomeMessage? { guard let remoteMessageToPresent = remoteMessagingClient.store.fetchScheduledRemoteMessage() else { return nil } - os_log("Remote message to show: %s", log: .remoteMessaging, type: .info, remoteMessageToPresent.id) + Logger.remoteMessaging.info("Remote message to show: \(remoteMessageToPresent.id)") return .remoteMessage(remoteMessage: remoteMessageToPresent) } func dismissHomeMessage(_ homeMessage: HomeMessage) { switch homeMessage { case .remoteMessage(let remoteMessage): - os_log("Home message dismissed: %s", log: .remoteMessaging, type: .info, remoteMessage.id) + Logger.remoteMessaging.info("Home message dismissed: \(remoteMessage.id)") remoteMessagingClient.store.dismissRemoteMessage(withID: remoteMessage.id) if let index = homeMessages.firstIndex(of: homeMessage) { @@ -100,14 +101,14 @@ final class HomePageConfiguration: HomePageMessagesConfiguration { func didAppear(_ homeMessage: HomeMessage) { switch homeMessage { case .remoteMessage(let remoteMessage): - os_log("Remote message shown: %s", log: .remoteMessaging, type: .info, remoteMessage.id) + Logger.remoteMessaging.info("Remote message shown: \(remoteMessage.id)") if remoteMessage.isMetricsEnabled { Pixel.fire(pixel: .remoteMessageShown, withAdditionalParameters: additionalParameters(for: remoteMessage.id)) } if !remoteMessagingClient.store.hasShownRemoteMessage(withID: remoteMessage.id) { - os_log("Remote message shown for first time: %s", log: .remoteMessaging, type: .info, remoteMessage.id) + Logger.remoteMessaging.info("Remote message shown for first time: \(remoteMessage.id)") if remoteMessage.isMetricsEnabled { Pixel.fire(pixel: .remoteMessageShownUnique, withAdditionalParameters: additionalParameters(for: remoteMessage.id)) diff --git a/DuckDuckGo/HomeViewController.swift b/DuckDuckGo/HomeViewController.swift index 41cb06953a..4cffd017af 100644 --- a/DuckDuckGo/HomeViewController.swift +++ b/DuckDuckGo/HomeViewController.swift @@ -27,6 +27,7 @@ import Persistence import RemoteMessaging import SwiftUI import BrowserServicesKit +import os.log class HomeViewController: UIViewController, NewTabPage { @@ -183,7 +184,7 @@ class HomeViewController: UIViewController, NewTabPage { @objc func remoteMessagesDidChange() { DispatchQueue.main.async { - os_log("Remote messages did change", log: .remoteMessaging, type: .info) + Logger.remoteMessaging.info("Remote messages did change") self.collectionView.refreshHomeConfiguration() self.refresh() } diff --git a/DuckDuckGo/ImageCacheDebugViewController.swift b/DuckDuckGo/ImageCacheDebugViewController.swift index 49743b47b6..1c6cd52b1c 100644 --- a/DuckDuckGo/ImageCacheDebugViewController.swift +++ b/DuckDuckGo/ImageCacheDebugViewController.swift @@ -26,6 +26,7 @@ import Persistence import BrowserServicesKit import Common import Kingfisher +import os.log class ImageCacheDebugViewController: UITableViewController { @@ -135,7 +136,7 @@ class ImageCacheDebugViewController: UITableViewController { } } } catch { - os_log("Failed to fetch accounts") + Logger.general.error("Failed to fetch accounts: \(error.localizedDescription)") } } diff --git a/DuckDuckGo/Info.plist b/DuckDuckGo/Info.plist index bd6d42fb7c..a19b12c025 100644 --- a/DuckDuckGo/Info.plist +++ b/DuckDuckGo/Info.plist @@ -2,6 +2,10 @@ + LSApplicationQueriesSchemes + + youtube + BGTaskSchedulerPermittedIdentifiers com.duckduckgo.app.configurationRefresh diff --git a/DuckDuckGo/MainViewController+Segues.swift b/DuckDuckGo/MainViewController+Segues.swift index 47ff957de8..d8855e560a 100644 --- a/DuckDuckGo/MainViewController+Segues.swift +++ b/DuckDuckGo/MainViewController+Segues.swift @@ -25,21 +25,22 @@ import BrowserServicesKit import SwiftUI import PrivacyDashboard import Subscription +import os.log extension MainViewController { func segueToDaxOnboarding() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() var controller: (Onboarding & UIViewController)? if DefaultVariantManager().isSupported(feature: .newOnboardingIntro) { - controller = OnboardingIntroViewController() + controller = OnboardingIntroViewController(onboardingPixelReporter: contextualOnboardingPixelReporter) } else { let storyboard = UIStoryboard(name: "DaxOnboarding", bundle: nil) controller = storyboard.instantiateInitialViewController(creator: { coder in - DaxOnboardingViewController(coder: coder) + DaxOnboardingViewController(coder: coder, pixelReporting: self.contextualOnboardingPixelReporter) }) } @@ -50,7 +51,7 @@ extension MainViewController { } func segueToHomeRow() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() let storyboard = UIStoryboard(name: "HomeRow", bundle: nil) guard let controller = storyboard.instantiateInitialViewController() else { @@ -62,13 +63,13 @@ extension MainViewController { } func segueToBookmarks() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() launchBookmarksViewController() } func segueToEditCurrentBookmark() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() guard let link = currentTab?.link, let bookmark = menuBookmarksViewModel.favorite(for: link.url) ?? @@ -80,7 +81,7 @@ extension MainViewController { } func segueToEditBookmark(_ bookmark: BookmarkEntity) { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() launchBookmarksViewController { $0.openEditFormForBookmark(bookmark) @@ -88,7 +89,7 @@ extension MainViewController { } private func launchBookmarksViewController(completion: ((BookmarksViewController) -> Void)? = nil) { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) let storyboard = UIStoryboard(name: "Bookmarks", bundle: nil) let bookmarks = storyboard.instantiateViewController(identifier: "BookmarksViewController") { coder in @@ -109,7 +110,7 @@ extension MainViewController { } func segueToActionSheetDaxDialogWithSpec(_ spec: DaxDialogs.ActionSheetSpec) { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() if spec == DaxDialogs.ActionSheetSpec.fireButtonEducation { @@ -128,7 +129,7 @@ extension MainViewController { } func segueToReportBrokenSite(entryPoint: PrivacyDashboardEntryPoint = .report) { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() guard let currentURL = currentTab?.url, @@ -181,7 +182,7 @@ extension MainViewController { } func segueToNegativeFeedbackForm(isFromBrokenSiteReportFlow: Bool = false) { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() let feedbackPicker = FeedbackPickerViewController.loadFromStoryboard() @@ -196,7 +197,7 @@ extension MainViewController { } func segueToDownloads() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() let storyboard = UIStoryboard(name: "Downloads", bundle: nil) @@ -208,7 +209,7 @@ extension MainViewController { } func segueToTabSwitcher() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() let storyboard = UIStoryboard(name: "TabSwitcher", bundle: nil) @@ -233,13 +234,13 @@ extension MainViewController { } func segueToSettings() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() launchSettings() } func segueToPrivacyPro() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() launchSettings { $0.triggerDeepLinkNavigation(to: .subscriptionFlow()) @@ -247,21 +248,29 @@ extension MainViewController { } func segueToSubscriptionRestoreFlow() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() launchSettings { $0.triggerDeepLinkNavigation(to: .restoreFlow) } } + func segueToVPN() { + Logger.lifecycle.debug(#function) + hideAllHighlightsIfNeeded() + launchSettings { + $0.triggerDeepLinkNavigation(to: .netP) + } + } + func segueToDebugSettings() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() launchDebugSettings() } func segueToSettingsCookiePopupManagement() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() launchSettings { $0.openCookiePopupManagement() @@ -269,7 +278,7 @@ extension MainViewController { } func segueToSettingsLoginsWithAccount(_ account: SecureVaultModels.WebsiteAccount) { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() launchSettings { $0.shouldPresentLoginsViewWithAccount(accountDetails: account) @@ -277,7 +286,7 @@ extension MainViewController { } func segueToSettingsSync() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) hideAllHighlightsIfNeeded() launchSettings { $0.presentLegacyView(.sync) @@ -319,7 +328,7 @@ extension MainViewController { } private func launchDebugSettings(completion: ((RootDebugViewController) -> Void)? = nil) { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) let storyboard = UIStoryboard(name: "Debug", bundle: nil) let settings = storyboard.instantiateViewController(identifier: "DebugMenu") { coder in @@ -338,7 +347,7 @@ extension MainViewController { } private func hideAllHighlightsIfNeeded() { - os_log(#function, log: .generalLog, type: .debug) + Logger.lifecycle.debug(#function) if !DaxDialogs.shared.shouldShowFireButtonPulse { ViewHighlighter.hideAll() } diff --git a/DuckDuckGo/MainViewController.swift b/DuckDuckGo/MainViewController.swift index 13697f4d82..8d14048ec4 100644 --- a/DuckDuckGo/MainViewController.swift +++ b/DuckDuckGo/MainViewController.swift @@ -34,6 +34,7 @@ import Suggestions import Subscription import SwiftUI import NetworkProtection +import os.log class MainViewController: UIViewController { @@ -106,7 +107,7 @@ class MainViewController: UIViewController { private let variantManager: VariantManager private let tutorialSettings: TutorialSettings private let contextualOnboardingLogic: ContextualOnboardingLogic - private let contextualOnboardingPixelReporter: OnboardingCustomInteractionPixelReporting + let contextualOnboardingPixelReporter: OnboardingPixelReporting private let statisticsStore: StatisticsStore @UserDefaultsWrapper(key: .syncDidShowSyncPausedByFeatureFlagAlert, defaultValue: false) @@ -121,6 +122,7 @@ class MainViewController: UIViewController { private var settingsDeepLinkcancellables = Set() private let tunnelDefaults = UserDefaults.networkProtectionGroupDefaults private var vpnCancellables = Set() + private var feedbackCancellable: AnyCancellable? let privacyProDataReporter: PrivacyProDataReporting @@ -189,7 +191,7 @@ class MainViewController: UIViewController { variantManager: VariantManager, contextualOnboardingPresenter: ContextualOnboardingPresenting, contextualOnboardingLogic: ContextualOnboardingLogic, - contextualOnboardingPixelReporter: OnboardingCustomInteractionPixelReporting, + contextualOnboardingPixelReporter: OnboardingPixelReporting, tutorialSettings: TutorialSettings = DefaultTutorialSettings(), statisticsStore: StatisticsStore = StatisticsUserDefaults() ) { @@ -212,7 +214,8 @@ class MainViewController: UIViewController { syncService: syncService, privacyProDataReporter: privacyProDataReporter, contextualOnboardingPresenter: contextualOnboardingPresenter, - contextualOnboardingLogic: contextualOnboardingLogic) + contextualOnboardingLogic: contextualOnboardingLogic, + onboardingPixelReporter: contextualOnboardingPixelReporter) self.syncPausedStateManager = syncPausedStateManager self.privacyProDataReporter = privacyProDataReporter self.homeTabManager = NewTabPageManager() @@ -284,10 +287,12 @@ class MainViewController: UIViewController { subscribeToURLInterceptorNotifications() subscribeToSettingsDeeplinkNotifications() subscribeToNetworkProtectionEvents() + subscribeToUnifiedFeedbackNotifications() findInPageView.delegate = self findInPageBottomLayoutConstraint.constant = 0 registerForKeyboardNotifications() + registerForUserBehaviorEvents() registerForSyncFeatureFlagsUpdates() decorate() @@ -480,6 +485,14 @@ class MainViewController: UIViewController { keyboardShowing = false } + private func registerForUserBehaviorEvents() { + NotificationCenter.default.addObserver( + self, + selector: #selector(attemptToShowBrokenSitePrompt(_:)), + name: .userBehaviorDidMatchBrokenSiteCriteria, + object: nil) + } + private func registerForSyncFeatureFlagsUpdates() { syncFeatureFlagsCancellable = syncService.featureFlagsPublisher .dropFirst() @@ -769,7 +782,7 @@ class MainViewController: UIViewController { fatalError("No tab model") } - let newTabDaxDialogFactory = NewTabDaxDialogFactory(delegate: self, contextualOnboardingLogic: DaxDialogs.shared) + let newTabDaxDialogFactory = NewTabDaxDialogFactory(delegate: self, contextualOnboardingLogic: DaxDialogs.shared, onboardingPixelReporter: contextualOnboardingPixelReporter) if homeTabManager.isNewTabPageSectionsEnabled { let controller = NewTabPageViewController(tab: tabModel, interactionModel: favoritesViewModel, @@ -829,6 +842,7 @@ class MainViewController: UIViewController { } Pixel.fire(pixel: .forgetAllPressedBrowsing) + hideNotificationBarIfBrokenSitePromptShown() wakeLazyFireButtonAnimator() if DefaultVariantManager().isSupported(feature: .newOnboardingIntro) { @@ -866,6 +880,7 @@ class MainViewController: UIViewController { Pixel.fire(pixel: .tabBarBackPressed) performCancel() hideSuggestionTray() + hideNotificationBarIfBrokenSitePromptShown() currentTab?.goBack() } @@ -873,6 +888,7 @@ class MainViewController: UIViewController { Pixel.fire(pixel: .tabBarForwardPressed) performCancel() hideSuggestionTray() + hideNotificationBarIfBrokenSitePromptShown() currentTab?.goForward() } @@ -888,7 +904,7 @@ class MainViewController: UIViewController { func loadQueryInNewTab(_ query: String, reuseExisting: Bool = false) { dismissOmniBar() guard let url = URL.makeSearchURL(query: query) else { - os_log("Couldn‘t form URL for query “%s”", log: .lifecycleLog, type: .error, query) + Logger.lifecycle.error("Couldn‘t form URL for query: \(query, privacy: .public)") return } loadUrlInNewTab(url, reuseExisting: reuseExisting, inheritedAttribution: nil) @@ -934,11 +950,7 @@ class MainViewController: UIViewController { fileprivate func loadQuery(_ query: String) { guard let url = URL.makeSearchURL(query: query, queryContext: currentTab?.url) else { - os_log("Couldn‘t form URL for query “%s” with context “%s”", - log: .lifecycleLog, - type: .error, - query, - currentTab?.url?.absoluteString ?? "") + Logger.general.error("Couldn‘t form URL for query “\(query, privacy: .public)” with context “\(self.currentTab?.url?.absoluteString ?? "", privacy: .public)”") return } // Make sure that once query is submitted, we don't trigger the non-SERP flow @@ -1004,6 +1016,7 @@ class MainViewController: UIViewController { } fileprivate func select(tab: TabViewController) { + hideNotificationBarIfBrokenSitePromptShown() if tab.link == nil { attachHomeScreen() } else { @@ -1020,6 +1033,7 @@ class MainViewController: UIViewController { private func attachTab(tab: TabViewController) { removeHomeScreen() updateFindInPage() + hideNotificationBarIfBrokenSitePromptShown() currentTab?.progressWorker.progressBar = nil currentTab?.chromeDelegate = nil @@ -1090,6 +1104,13 @@ class MainViewController: UIViewController { refreshOmniBar() } + private func hideNotificationBarIfBrokenSitePromptShown(afterRefresh: Bool = false) { + guard brokenSitePromptViewHostingController != nil, + let event = brokenSitePromptEvent?.rawValue else { return } + brokenSitePromptViewHostingController = nil + hideNotification() + } + fileprivate func refreshBackForwardButtons() { viewCoordinator.toolbarBackButton.isEnabled = currentTab?.canGoBack ?? false viewCoordinator.toolbarForwardButton.isEnabled = currentTab?.canGoForward ?? false @@ -1116,6 +1137,8 @@ class MainViewController: UIViewController { } completion: { _ in ViewHighlighter.updatePositions() } + + hideNotificationBarIfBrokenSitePromptShown() } private func deferredFireOrientationPixel() { @@ -1327,6 +1350,47 @@ class MainViewController: UIViewController { } } + private var brokenSitePromptViewHostingController: UIHostingController? + private var brokenSitePromptEvent: UserBehaviorEvent? + lazy private var brokenSitePromptLimiter = BrokenSitePromptLimiter() + + @objc func attemptToShowBrokenSitePrompt(_ notification: Notification) { + guard brokenSitePromptLimiter.shouldShowToast(), + let event = notification.userInfo?[UserBehaviorEvent.Key.event] as? UserBehaviorEvent, + let url = currentTab?.url, !url.isDuckDuckGo, + notificationView == nil, + !isPad, + DefaultTutorialSettings().hasSeenOnboarding, + !DaxDialogs.shared.isStillOnboarding(), + isPortrait else { return } + // We're using async to ensure the view dismissal happens on the first runloop after a refresh. This prevents the scenario where the view briefly appears and then immediately disappears after a refresh. + brokenSitePromptLimiter.didShowToast() + DispatchQueue.main.async { + self.showBrokenSitePrompt(after: event) + } + } + + private func showBrokenSitePrompt(after event: UserBehaviorEvent) { + let host = makeBrokenSitePromptViewHostingController(event: event) + brokenSitePromptViewHostingController = host + brokenSitePromptEvent = event + showNotification(with: host.view) + } + + private func makeBrokenSitePromptViewHostingController(event: UserBehaviorEvent) -> UIHostingController { + let viewModel = BrokenSitePromptViewModel(onDidDismiss: { [weak self] in + self?.hideNotification() + self?.brokenSitePromptLimiter.didDismissToast() + self?.brokenSitePromptViewHostingController = nil + }, onDidSubmit: { [weak self] in + self?.segueToReportBrokenSite(entryPoint: .prompt(event.rawValue)) + self?.hideNotification() + self?.brokenSitePromptLimiter.didOpenReport() + self?.brokenSitePromptViewHostingController = nil + }) + return UIHostingController(rootView: BrokenSitePromptView(viewModel: viewModel), ignoreSafeArea: true) + } + func animateBackgroundTab() { showBars() tabSwitcherButton.incrementAnimated() @@ -1339,6 +1403,7 @@ class MainViewController: UIViewController { } DaxDialogs.shared.fireButtonPulseCancelled() hideSuggestionTray() + hideNotificationBarIfBrokenSitePromptShown() currentTab?.dismiss() if reuseExisting, let existing = tabManager.firstHomeTab() { @@ -1482,6 +1547,19 @@ class MainViewController: UIViewController { nil, .deliverImmediately) } + private func subscribeToUnifiedFeedbackNotifications() { + feedbackCancellable = NotificationCenter.default.publisher(for: .unifiedFeedbackNotification) + .receive(on: DispatchQueue.main) + .sink { _ in + DispatchQueue.main.async { [weak self] in + guard let navigationController = self?.presentedViewController as? UINavigationController else { return } + navigationController.popToRootViewController(animated: true) + ActionMessageView.present(message: UserText.vpnFeedbackFormSubmittedMessage, + presentationLocation: .withoutBottomBar) + } + } + } + private func onNetworkProtectionEntitlementMessagingChange() { if tunnelDefaults.showEntitlementAlert { presentExpiredEntitlementAlert() @@ -1512,7 +1590,7 @@ class MainViewController: UIViewController { @objc private func onNetworkProtectionAccountSignIn(_ notification: Notification) { tunnelDefaults.resetEntitlementMessaging() - os_log("[NetP Subscription] Reset expired entitlement messaging", log: .networkProtection, type: .info) + Logger.networkProtection.info("[NetP Subscription] Reset expired entitlement messaging") } var networkProtectionTunnelController: NetworkProtectionTunnelController { @@ -1747,6 +1825,7 @@ extension MainViewController: OmniBarDelegate { omniBar.cancel() loadQuery(query) hideSuggestionTray() + hideNotificationBarIfBrokenSitePromptShown() showHomeRowReminder() fireOnboardingCustomSearchPixelIfNeeded(query: query) } @@ -1934,6 +2013,7 @@ extension MainViewController: OmniBarDelegate { func onRefreshPressed() { hideSuggestionTray() currentTab?.refresh() + hideNotificationBarIfBrokenSitePromptShown(afterRefresh: true) } func onSharePressed() { @@ -1997,7 +2077,7 @@ extension MainViewController: AutocompleteViewControllerDelegate { if let url = URL.makeSearchURL(text: phrase) { loadUrl(url) } else { - os_log("Couldn‘t form URL for suggestion “%s”", log: .lifecycleLog, type: .error, phrase) + Logger.lifecycle.error("Couldn‘t form URL for suggestion: \(phrase, privacy: .public)") } case .website(url: let url): if url.isBookmarklet() { @@ -2172,6 +2252,7 @@ extension MainViewController: TabDelegate { didRequestNewWebViewWithConfiguration configuration: WKWebViewConfiguration, for navigationAction: WKNavigationAction, inheritingAttribution: AdClickAttributionLogic.State?) -> WKWebView? { + hideNotificationBarIfBrokenSitePromptShown() showBars() currentTab?.dismiss() @@ -2232,6 +2313,7 @@ extension MainViewController: TabDelegate { openedByPage: Bool, inheritingAttribution attribution: AdClickAttributionLogic.State?) { _ = findInPageView.resignFirstResponder() + hideNotificationBarIfBrokenSitePromptShown() if openedByPage { showBars() newTabAnimation { @@ -2390,6 +2472,14 @@ extension MainViewController: TabDelegate { func tab(_ tab: TabViewController, didRequestLoadQuery query: String) { loadQuery(query) } + + func tabDidRequestRefresh(tab: TabViewController) { + hideNotificationBarIfBrokenSitePromptShown(afterRefresh: true) + } + + func tabDidRequestNavigationToDifferentSite(tab: TabViewController) { + hideNotificationBarIfBrokenSitePromptShown() + } } @@ -2437,6 +2527,7 @@ extension MainViewController: TabSwitcherDelegate { func closeTab(_ tab: Tab) { guard let index = tabManager.model.indexOf(tab: tab) else { return } hideSuggestionTray() + hideNotificationBarIfBrokenSitePromptShown() tabManager.remove(at: index) updateCurrentTab() tabsBarController?.refresh(tabsModel: tabManager.model) @@ -2480,6 +2571,7 @@ extension MainViewController: TabSwitcherButtonDelegate { guard currentTab ?? tabManager.current(createIfNeeded: true) != nil else { fatalError("Unable to get current tab") } + hideNotificationBarIfBrokenSitePromptShown() updatePreviewForCurrentTab { ViewHighlighter.hideAll() self.segueToTabSwitcher() diff --git a/DuckDuckGo/NetworkProtectionRootView.swift b/DuckDuckGo/NetworkProtectionRootView.swift index 70a936e10f..267be495cf 100644 --- a/DuckDuckGo/NetworkProtectionRootView.swift +++ b/DuckDuckGo/NetworkProtectionRootView.swift @@ -20,24 +20,30 @@ import SwiftUI import NetworkProtection import Subscription +import Core struct NetworkProtectionRootView: View { + let statusViewModel: NetworkProtectionStatusViewModel init() { let accountManager = AppDependencyProvider.shared.subscriptionManager.accountManager + let subscriptionFeatureAvailability = AppDependencyProvider.shared.subscriptionFeatureAvailability let locationListRepository = NetworkProtectionLocationListCompositeRepository(accountManager: accountManager) + let usesUnifiedFeedbackForm = accountManager.isUserAuthenticated && subscriptionFeatureAvailability.usesUnifiedFeedbackForm statusViewModel = NetworkProtectionStatusViewModel(tunnelController: AppDependencyProvider.shared.networkProtectionTunnelController, settings: AppDependencyProvider.shared.vpnSettings, statusObserver: AppDependencyProvider.shared.connectionObserver, serverInfoObserver: AppDependencyProvider.shared.serverInfoObserver, - locationListRepository: locationListRepository) + locationListRepository: locationListRepository, + usesUnifiedFeedbackForm: usesUnifiedFeedbackForm) } + var body: some View { - if AppDependencyProvider.shared.vpnFeatureVisibility.isPrivacyProLaunched() { - NetworkProtectionStatusView( - statusModel: statusViewModel - ) - } + NetworkProtectionStatusView(statusModel: statusViewModel) + .navigationTitle(UserText.netPNavTitle) + .onFirstAppear { + Pixel.fire(pixel: .privacyProVPNSettings) + } } } diff --git a/DuckDuckGo/NetworkProtectionRootViewController.swift b/DuckDuckGo/NetworkProtectionRootViewController.swift deleted file mode 100644 index 07467a8bf1..0000000000 --- a/DuckDuckGo/NetworkProtectionRootViewController.swift +++ /dev/null @@ -1,50 +0,0 @@ -// -// NetworkProtectionRootViewController.swift -// DuckDuckGo -// -// Copyright © 2023 DuckDuckGo. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -import SwiftUI - -final class NetworkProtectionRootViewController: UIHostingController { - - init() { - let rootView = NetworkProtectionRootView() - super.init(rootView: rootView) - } - - override func viewDidLoad() { - super.viewDidLoad() - decorate() - self.title = UserText.netPNavTitle - } - - @MainActor required dynamic init?(coder aDecoder: NSCoder) { - fatalError("init(coder:) has not been implemented") - } -} - -extension NetworkProtectionRootViewController { - - private func decorate() { - let theme = ThemeManager.shared.currentTheme - view.backgroundColor = theme.backgroundColor - - navigationController?.navigationBar.barTintColor = theme.barBackgroundColor - navigationController?.navigationBar.tintColor = theme.navigationBarTintColor - } - -} diff --git a/DuckDuckGo/NetworkProtectionStatusView.swift b/DuckDuckGo/NetworkProtectionStatusView.swift index 5223aee773..f8508a2482 100644 --- a/DuckDuckGo/NetworkProtectionStatusView.swift +++ b/DuckDuckGo/NetworkProtectionStatusView.swift @@ -228,14 +228,22 @@ struct NetworkProtectionStatusView: View { @ViewBuilder private func about() -> some View { + let viewModel = UnifiedFeedbackFormViewModel(vpnMetadataCollector: DefaultVPNMetadataCollector(), source: .vpn) + Section { NavigationLink(UserText.netPVPNSettingsFAQ, destination: LazyView(NetworkProtectionFAQView())) .daxBodyRegular() .foregroundColor(.init(designSystemColor: .textPrimary)) - NavigationLink(UserText.netPVPNSettingsShareFeedback, destination: VPNFeedbackFormCategoryView()) - .daxBodyRegular() - .foregroundColor(.init(designSystemColor: .textPrimary)) + if statusModel.usesUnifiedFeedbackForm { + NavigationLink(UserText.subscriptionFeedback, destination: UnifiedFeedbackRootView(viewModel: viewModel)) + .daxBodyRegular() + .foregroundColor(.init(designSystemColor: .textPrimary)) + } else { + NavigationLink(UserText.netPVPNSettingsShareFeedback, destination: VPNFeedbackFormCategoryView()) + .daxBodyRegular() + .foregroundColor(.init(designSystemColor: .textPrimary)) + } } header: { Text(UserText.vpnAbout).foregroundColor(.init(designSystemColor: .textSecondary)) } diff --git a/DuckDuckGo/NetworkProtectionStatusViewModel.swift b/DuckDuckGo/NetworkProtectionStatusViewModel.swift index 53a444aabf..7e7e5dc51f 100644 --- a/DuckDuckGo/NetworkProtectionStatusViewModel.swift +++ b/DuckDuckGo/NetworkProtectionStatusViewModel.swift @@ -23,6 +23,7 @@ import NetworkProtection import WidgetKit import BrowserServicesKit import Core +import Subscription struct NetworkProtectionLocationStatusModel { enum LocationIcon { @@ -149,17 +150,22 @@ final class NetworkProtectionStatusViewModel: ObservableObject { @Published public var animationsOn: Bool = false + public let usesUnifiedFeedbackForm: Bool + public init(tunnelController: (TunnelController & TunnelSessionProvider), settings: VPNSettings, statusObserver: ConnectionStatusObserver, serverInfoObserver: ConnectionServerInfoObserver, errorObserver: ConnectionErrorObserver = ConnectionErrorObserverThroughSession(), - locationListRepository: NetworkProtectionLocationListRepository) { + locationListRepository: NetworkProtectionLocationListRepository, + usesUnifiedFeedbackForm: Bool) { self.tunnelController = tunnelController self.settings = settings self.statusObserver = statusObserver self.serverInfoObserver = serverInfoObserver self.errorObserver = errorObserver + self.usesUnifiedFeedbackForm = usesUnifiedFeedbackForm + statusMessage = Self.message(for: statusObserver.recentValue) self.headerTitle = Self.titleText(status: statusObserver.recentValue) self.statusImageID = Self.statusImageID(connected: statusObserver.recentValue.isConnected) diff --git a/DuckDuckGo/NewTabPageModel.swift b/DuckDuckGo/NewTabPageModel.swift index fc002768d5..f9d826133b 100644 --- a/DuckDuckGo/NewTabPageModel.swift +++ b/DuckDuckGo/NewTabPageModel.swift @@ -18,22 +18,30 @@ // import Foundation +import Core final class NewTabPageModel: ObservableObject { @Published private(set) var isIntroMessageVisible: Bool @Published private(set) var isOnboarding: Bool + @Published var isShowingSettings: Bool private let appSettings: AppSettings + private let pixelFiring: PixelFiring.Type - init(appSettings: AppSettings = AppDependencyProvider.shared.appSettings) { + init(appSettings: AppSettings = AppDependencyProvider.shared.appSettings, + pixelFiring: PixelFiring.Type = Pixel.self) { self.appSettings = appSettings - + self.pixelFiring = pixelFiring + isIntroMessageVisible = appSettings.newTabPageIntroMessageEnabled ?? false isOnboarding = false + isShowingSettings = false } - func increaseIntroMessageCounter() { + func introMessageDisplayed() { + pixelFiring.fire(.newTabPageMessageDisplayed, withAdditionalParameters: [:]) + appSettings.newTabPageIntroMessageSeenCount += 1 if appSettings.newTabPageIntroMessageSeenCount >= 3 { appSettings.newTabPageIntroMessageEnabled = false @@ -41,10 +49,17 @@ final class NewTabPageModel: ObservableObject { } func dismissIntroMessage() { + pixelFiring.fire(.newTabPageMessageDismissed, withAdditionalParameters: [:]) + appSettings.newTabPageIntroMessageEnabled = false isIntroMessageVisible = false } + func customizeNewTabPage() { + pixelFiring.fire(.newTabPageCustomize, withAdditionalParameters: [:]) + isShowingSettings = true + } + func startOnboarding() { isOnboarding = true } diff --git a/DuckDuckGo/NewTabPageSectionsSettingsModel.swift b/DuckDuckGo/NewTabPageSectionsSettingsModel.swift index 37f27339ef..9f7d3d4a56 100644 --- a/DuckDuckGo/NewTabPageSectionsSettingsModel.swift +++ b/DuckDuckGo/NewTabPageSectionsSettingsModel.swift @@ -18,11 +18,36 @@ // import Foundation +import Core typealias NewTabPageSectionsSettingsModel = NewTabPageSettingsModel extension NewTabPageSectionsSettingsModel { - convenience init(storage: NewTabPageSectionsSettingsStorage = NewTabPageSectionsSettingsStorage()) { - self.init(settingsStorage: storage) + convenience init(storage: NewTabPageSectionsSettingsStorage = NewTabPageSectionsSettingsStorage(), + pixelFiring: PixelFiring.Type = Pixel.self) { + self.init(settingsStorage: storage, + onItemEnabled: { Self.onEnabled($0, isEnabled: $1, pixelFiring: pixelFiring) }, + onItemReordered: { Self.onReordered(pixelFiring: pixelFiring) }) + } + + private static func onEnabled(_ section: SettingItem, isEnabled: Bool, pixelFiring: PixelFiring.Type) { + if isEnabled { + pixelFiring.fire(.newTabPageCustomizeSectionOn(section.nameForPixel), withAdditionalParameters: [:]) + } else { + pixelFiring.fire(.newTabPageCustomizeSectionOff(section.nameForPixel), withAdditionalParameters: [:]) + } + } + + private static func onReordered(pixelFiring: PixelFiring.Type) { + pixelFiring.fire(.newTabPageSectionReordered, withAdditionalParameters: [:]) + } +} + +private extension NewTabPageSection { + var nameForPixel: String { + switch self { + case .favorites: return "favorites" + case .shortcuts: return "shortcuts" + } } } diff --git a/DuckDuckGo/NewTabPageSettingsModel.swift b/DuckDuckGo/NewTabPageSettingsModel.swift index dad394bd4f..9c36910613 100644 --- a/DuckDuckGo/NewTabPageSettingsModel.swift +++ b/DuckDuckGo/NewTabPageSettingsModel.swift @@ -18,8 +18,11 @@ // import Foundation +import Core import SwiftUI +typealias SettingItemEnabledFunction = (_ item: I, _ isEnabled: Bool) -> Void + final class NewTabPageSettingsModel: ObservableObject where Storage.SettingItem == SettingItem { /// Settings page settings collection with bindings @@ -34,10 +37,17 @@ final class NewTabPageSettingsModel Bool) + private let onItemEnabled: SettingItemEnabledFunction? + private let onItemReordered: (() -> Void)? - init(settingsStorage: Storage, visibilityFilter: @escaping ((SettingItem) -> Bool) = { _ in true }) { + init(settingsStorage: Storage, + onItemEnabled: SettingItemEnabledFunction? = nil, + onItemReordered: (() -> Void)? = nil, + visibilityFilter: @escaping ((SettingItem) -> Bool) = { _ in true }) { self.settingsStorage = settingsStorage self.visibilityFilter = visibilityFilter + self.onItemEnabled = onItemEnabled + self.onItemReordered = onItemReordered updatePublishedValues() } @@ -51,6 +61,8 @@ final class NewTabPageSettingsModel extension NewTabPageShortcutsSettingsModel { convenience init(storage: NewTabPageShortcutsSettingsStorage = NewTabPageShortcutsSettingsStorage(), - featureFlagger: FeatureFlagger = AppDependencyProvider.shared.featureFlagger) { - self.init(settingsStorage: storage) { shortcut in + featureFlagger: FeatureFlagger = AppDependencyProvider.shared.featureFlagger, + pixelFiring: PixelFiring.Type = Pixel.self) { + self.init(settingsStorage: storage, + onItemEnabled: { Self.onEnabled($0, isEnabled: $1, pixelFiring: pixelFiring) }, + onItemReordered: nil, + visibilityFilter: { shortcut in switch shortcut { case .aiChat, .bookmarks, .downloads, .settings: return true case .passwords: return featureFlagger.isFeatureOn(.autofillAccessCredentialManagement) } + }) + } + + private static func onEnabled(_ shortcut: SettingItem, isEnabled: Bool, pixelFiring: PixelFiring.Type) { + if isEnabled { + pixelFiring.fire(.newTabPageCustomizeShortcutAdded(shortcut.nameForPixel), withAdditionalParameters: [:]) + } else { + pixelFiring.fire( .newTabPageCustomizeShortcutRemoved(shortcut.nameForPixel), withAdditionalParameters: [:]) } } } diff --git a/DuckDuckGo/NewTabPageView.swift b/DuckDuckGo/NewTabPageView.swift index 90d6ea6331..ccf007ff5c 100644 --- a/DuckDuckGo/NewTabPageView.swift +++ b/DuckDuckGo/NewTabPageView.swift @@ -21,7 +21,7 @@ import SwiftUI import DuckUI import RemoteMessaging -struct NewTabPageView: View { +struct NewTabPageView: View { @Environment(\.horizontalSizeClass) var horizontalSizeClass @ObservedObject private var newTabPageModel: NewTabPageModel @@ -30,9 +30,6 @@ struct NewTabPageView: View { @ObservedObject private var shortcutsModel: ShortcutsModel @ObservedObject private var shortcutsSettingsModel: NewTabPageShortcutsSettingsModel @ObservedObject private var sectionsSettingsModel: NewTabPageSectionsSettingsModel - - @State var isShowingTooltip: Bool = false - @State private var isShowingSettings: Bool = false init(newTabPageModel: NewTabPageModel, messagesModel: NewTabPageMessagesModel, @@ -61,7 +58,7 @@ struct NewTabPageView: View { private var favoritesSectionView: some View { Group { if favoritesModel.isEmpty { - FavoritesEmptyStateView(isShowingTooltip: $isShowingTooltip) + FavoritesEmptyStateView(model: favoritesModel) } else { FavoritesView(model: favoritesModel) } @@ -82,7 +79,7 @@ struct NewTabPageView: View { Spacer() Button(action: { - isShowingSettings = true + newTabPageModel.customizeNewTabPage() }, label: { NewTabPageCustomizeButtonView() // Needed to reduce default button margins @@ -102,7 +99,7 @@ struct NewTabPageView: View { }) .sectionPadding() .onFirstAppear { - newTabPageModel.increaseIntroMessageCounter() + newTabPageModel.introMessageDisplayed() } } } @@ -147,12 +144,12 @@ struct NewTabPageView: View { } } .background(Color(designSystemColor: .background)) - .if(isShowingTooltip) { + .if(favoritesModel.isShowingTooltip) { $0.highPriorityGesture(DragGesture(minimumDistance: 0, coordinateSpace: .global).onEnded { _ in - isShowingTooltip = false + favoritesModel.toggleTooltip() }) } - .sheet(isPresented: $isShowingSettings, onDismiss: { + .sheet(isPresented: $newTabPageModel.isShowingSettings, onDismiss: { shortcutsSettingsModel.save() sectionsSettingsModel.save() }, content: { diff --git a/DuckDuckGo/NewTabPageViewController.swift b/DuckDuckGo/NewTabPageViewController.swift index a7a490ef64..1a71aeacd6 100644 --- a/DuckDuckGo/NewTabPageViewController.swift +++ b/DuckDuckGo/NewTabPageViewController.swift @@ -85,6 +85,9 @@ final class NewTabPageViewController: UIHostingController some View { - let viewModel = OnboardingSearchSuggestionsViewModel(delegate: delegate) + let viewModel = OnboardingSearchSuggestionsViewModel(pixelReporter: onboardingPixelReporter, delegate: delegate) return FadeInView { OnboardingTrySearchDialog(viewModel: viewModel) .onboardingDaxDialogStyle() @@ -70,7 +70,7 @@ final class NewTabDaxDialogFactory: NewTabDaxDialogProvider { } private func createSubsequentDialog() -> some View { - let viewModel = OnboardingSiteSuggestionsViewModel(title: UserText.DaxOnboardingExperiment.ContextualOnboarding.onboardingTryASiteNTPTitle, delegate: delegate) + let viewModel = OnboardingSiteSuggestionsViewModel(title: UserText.DaxOnboardingExperiment.ContextualOnboarding.onboardingTryASiteNTPTitle, pixelReporter: onboardingPixelReporter, delegate: delegate) return FadeInView { OnboardingTryVisitingSiteDialog(logoPosition: .top, viewModel: viewModel) .onboardingDaxDialogStyle() diff --git a/DuckDuckGo/OnboardingExperiment/ContextualDaxDialogs/OnboardingSuggestionsViewModel.swift b/DuckDuckGo/OnboardingExperiment/ContextualDaxDialogs/OnboardingSuggestionsViewModel.swift index 2a4e631a65..e04544e136 100644 --- a/DuckDuckGo/OnboardingExperiment/ContextualDaxDialogs/OnboardingSuggestionsViewModel.swift +++ b/DuckDuckGo/OnboardingExperiment/ContextualDaxDialogs/OnboardingSuggestionsViewModel.swift @@ -30,9 +30,9 @@ struct OnboardingSearchSuggestionsViewModel { private let pixelReporter: OnboardingSearchSuggestionsPixelReporting init( + pixelReporter: OnboardingSearchSuggestionsPixelReporting, suggestedSearchesProvider: OnboardingSuggestionsItemsProviding = OnboardingSuggestedSearchesProvider(), - delegate: OnboardingNavigationDelegate? = nil, - pixelReporter: OnboardingSearchSuggestionsPixelReporting = OnboardingPixelReporter() + delegate: OnboardingNavigationDelegate? = nil ) { self.suggestedSearchesProvider = suggestedSearchesProvider self.delegate = delegate @@ -56,9 +56,9 @@ struct OnboardingSiteSuggestionsViewModel { init( title: String, + pixelReporter: OnboardingSiteSuggestionsPixelReporting, suggestedSitesProvider: OnboardingSuggestionsItemsProviding = OnboardingSuggestedSitesProvider(), - delegate: OnboardingNavigationDelegate? = nil, - pixelReporter: OnboardingSiteSuggestionsPixelReporting = OnboardingPixelReporter() + delegate: OnboardingNavigationDelegate? = nil ) { self.title = title self.suggestedSitesProvider = suggestedSitesProvider diff --git a/DuckDuckGo/OnboardingExperiment/ContextualOnboarding/ContextualDaxDialogsFactory.swift b/DuckDuckGo/OnboardingExperiment/ContextualOnboarding/ContextualDaxDialogsFactory.swift index 1f71c8b4d1..97b6aac0bc 100644 --- a/DuckDuckGo/OnboardingExperiment/ContextualOnboarding/ContextualDaxDialogsFactory.swift +++ b/DuckDuckGo/OnboardingExperiment/ContextualOnboarding/ContextualDaxDialogsFactory.swift @@ -45,12 +45,12 @@ protocol ContextualDaxDialogsFactory { final class ExperimentContextualDaxDialogsFactory: ContextualDaxDialogsFactory { private let contextualOnboardingLogic: ContextualOnboardingLogic private let contextualOnboardingSettings: ContextualOnboardingSettings - private let contextualOnboardingPixelReporter: OnboardingScreenImpressionReporting + private let contextualOnboardingPixelReporter: OnboardingPixelReporting init( contextualOnboardingLogic: ContextualOnboardingLogic, contextualOnboardingSettings: ContextualOnboardingSettings = DefaultDaxDialogsSettings(), - contextualOnboardingPixelReporter: OnboardingScreenImpressionReporting = OnboardingPixelReporter() + contextualOnboardingPixelReporter: OnboardingPixelReporting ) { self.contextualOnboardingSettings = contextualOnboardingSettings self.contextualOnboardingLogic = contextualOnboardingLogic @@ -103,8 +103,8 @@ final class ExperimentContextualDaxDialogsFactory: ContextualDaxDialogsFactory { afterSearchPixelEvent: Pixel.Event, onSizeUpdate: @escaping () -> Void ) -> some View { - let viewModel = OnboardingSiteSuggestionsViewModel(title: UserText.DaxOnboardingExperiment.ContextualOnboarding.onboardingTryASiteTitle, delegate: delegate) - + let viewModel = OnboardingSiteSuggestionsViewModel(title: UserText.DaxOnboardingExperiment.ContextualOnboarding.onboardingTryASiteTitle, pixelReporter: contextualOnboardingPixelReporter, delegate: delegate) + // If should not show websites search after searching inform the delegate that the user dimissed the dialog, otherwise let the dialog handle it. let gotItAction: () -> Void = if shouldFollowUpToWebsiteSearch { { [weak delegate, weak self] in @@ -125,7 +125,7 @@ final class ExperimentContextualDaxDialogsFactory: ContextualDaxDialogsFactory { } private func tryVisitingSiteDialog(delegate: ContextualOnboardingDelegate) -> some View { - let viewModel = OnboardingSiteSuggestionsViewModel(title: UserText.DaxOnboardingExperiment.ContextualOnboarding.onboardingTryASiteTitle, delegate: delegate) + let viewModel = OnboardingSiteSuggestionsViewModel(title: UserText.DaxOnboardingExperiment.ContextualOnboarding.onboardingTryASiteTitle, pixelReporter: contextualOnboardingPixelReporter, delegate: delegate) return OnboardingTryVisitingSiteDialog(logoPosition: .left, viewModel: viewModel) .onFirstAppear { [weak self] in self?.contextualOnboardingPixelReporter.trackScreenImpression(event: .onboardingContextualTryVisitSiteUnique) diff --git a/DuckDuckGo/OnboardingExperiment/ContextualOnboarding/ContextualOnboardingPresenter.swift b/DuckDuckGo/OnboardingExperiment/ContextualOnboarding/ContextualOnboardingPresenter.swift index 1d1e8d1153..c6d5542b78 100644 --- a/DuckDuckGo/OnboardingExperiment/ContextualOnboarding/ContextualOnboardingPresenter.swift +++ b/DuckDuckGo/OnboardingExperiment/ContextualOnboarding/ContextualOnboardingPresenter.swift @@ -38,7 +38,7 @@ final class ContextualOnboardingPresenter: ContextualOnboardingPresenting { init( variantManager: VariantManager, - daxDialogsFactory: ContextualDaxDialogsFactory = ExperimentContextualDaxDialogsFactory(contextualOnboardingLogic: DaxDialogs.shared), + daxDialogsFactory: ContextualDaxDialogsFactory, appSettings: AppSettings = AppUserDefaults() ) { self.variantManager = variantManager diff --git a/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingIntroViewController.swift b/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingIntroViewController.swift index 2b78cc51d6..5b1d4d9b6d 100644 --- a/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingIntroViewController.swift +++ b/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingIntroViewController.swift @@ -23,8 +23,8 @@ final class OnboardingIntroViewController: UIHostingController, weak var delegate: OnboardingDelegate? private let viewModel: OnboardingIntroViewModel - init() { - viewModel = OnboardingIntroViewModel() + init(onboardingPixelReporter: OnboardingPixelReporting) { + viewModel = OnboardingIntroViewModel(pixelReporter: onboardingPixelReporter) let rootView = OnboardingView(model: viewModel) super.init(rootView: rootView) diff --git a/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingIntroViewModel.swift b/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingIntroViewModel.swift index 376366ec60..3eb768d2d7 100644 --- a/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingIntroViewModel.swift +++ b/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingIntroViewModel.swift @@ -28,7 +28,7 @@ final class OnboardingIntroViewModel: ObservableObject { private let pixelReporter: OnboardingIntroPixelReporting private let urlOpener: URLOpener - init(pixelReporter: OnboardingIntroPixelReporting = OnboardingPixelReporter(), urlOpener: URLOpener = UIApplication.shared) { + init(pixelReporter: OnboardingIntroPixelReporting, urlOpener: URLOpener = UIApplication.shared) { self.pixelReporter = pixelReporter self.urlOpener = urlOpener } diff --git a/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingView.swift b/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingView.swift index c4c3487cab..ffecbee296 100644 --- a/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingView.swift +++ b/DuckDuckGo/OnboardingExperiment/OnboardingIntro/OnboardingView.swift @@ -191,11 +191,11 @@ private enum Metrics { // MARK: - Preview #Preview("Onboarding - Light") { - OnboardingView(model: .init()) + OnboardingView(model: .init(pixelReporter: OnboardingPixelReporter())) .preferredColorScheme(.light) } #Preview("Onboarding - Dark") { - OnboardingView(model: .init()) + OnboardingView(model: .init(pixelReporter: OnboardingPixelReporter())) .preferredColorScheme(.dark) } diff --git a/DuckDuckGo/OnboardingExperiment/Pixels/OnboardingPixelReporter.swift b/DuckDuckGo/OnboardingExperiment/Pixels/OnboardingPixelReporter.swift index ab9f2b6144..8f38efe332 100644 --- a/DuckDuckGo/OnboardingExperiment/Pixels/OnboardingPixelReporter.swift +++ b/DuckDuckGo/OnboardingExperiment/Pixels/OnboardingPixelReporter.swift @@ -69,6 +69,8 @@ protocol OnboardingScreenImpressionReporting { func trackScreenImpression(event: Pixel.Event) } +typealias OnboardingPixelReporting = OnboardingIntroImpressionReporting & OnboardingIntroPixelReporting & OnboardingSearchSuggestionsPixelReporting & OnboardingSiteSuggestionsPixelReporting & OnboardingCustomInteractionPixelReporting & OnboardingScreenImpressionReporting + // MARK: - Implementation final class OnboardingPixelReporter { @@ -80,6 +82,8 @@ final class OnboardingPixelReporter { private let userDefaults: UserDefaults private let siteVisitedUserDefaultsKey = "com.duckduckgo.ios.site-visited" + private(set) var enqueuedPixels: [EnqueuedPixel] = [] + init( pixel: OnboardingPixelFiring.Type = Pixel.self, uniquePixel: OnboardingPixelFiring.Type = UniquePixel.self, @@ -97,6 +101,21 @@ final class OnboardingPixelReporter { } private func fire(event: Pixel.Event, unique: Bool, additionalParameters: [String: String] = [:], includedParameters: [Pixel.QueryParameters] = [.appVersion, .atb]) { + + func enqueue(event: Pixel.Event, unique: Bool, additionalParameters: [String: String], includedParameters: [Pixel.QueryParameters]) { + enqueuedPixels.append(.init(event: event, unique: unique, additionalParameters: additionalParameters, includedParameters: includedParameters)) + } + + // If the Pixel needs the ATB and ATB is available, fire the Pixel immediately. Otherwise enqueue the pixel and process it once the ATB is available. + // If the Pixel does not need the ATB there's no need to wait for the ATB to become available. + if includedParameters.contains(.atb) && statisticsStore.atb == nil { + enqueue(event: event, unique: unique, additionalParameters: additionalParameters, includedParameters: includedParameters) + } else { + performFire(event: event, unique: unique, additionalParameters: additionalParameters, includedParameters: includedParameters) + } + } + + private func performFire(event: Pixel.Event, unique: Bool, additionalParameters: [String: String], includedParameters: [Pixel.QueryParameters]) { if unique { uniquePixel.fire(pixel: event, withAdditionalParameters: additionalParameters, includedParameters: includedParameters) } else { @@ -106,6 +125,18 @@ final class OnboardingPixelReporter { } +// MARK: - Fire Enqueued Pixels + +extension OnboardingPixelReporter { + + func fireEnqueuedPixelsIfNeeded() { + while !enqueuedPixels.isEmpty { + let event = enqueuedPixels.removeFirst() + performFire(event: event.event, unique: event.unique, additionalParameters: event.additionalParameters, includedParameters: event.includedParameters) + } + } +} + // MARK: - OnboardingPixelReporter + Intro extension OnboardingPixelReporter: OnboardingIntroPixelReporting { @@ -182,3 +213,10 @@ extension OnboardingPixelReporter: OnboardingScreenImpressionReporting { } } + +struct EnqueuedPixel { + let event: Pixel.Event + let unique: Bool + let additionalParameters: [String: String] + let includedParameters: [Pixel.QueryParameters] +} diff --git a/DuckDuckGo/OnboardingHelpers/OnboardingSuggestedSitesProvider.swift b/DuckDuckGo/OnboardingHelpers/OnboardingSuggestedSitesProvider.swift index ab7a120bce..e44efd682b 100644 --- a/DuckDuckGo/OnboardingHelpers/OnboardingSuggestedSitesProvider.swift +++ b/DuckDuckGo/OnboardingHelpers/OnboardingSuggestedSitesProvider.swift @@ -30,7 +30,7 @@ struct OnboardingSuggestedSitesProvider: OnboardingSuggestionsItemsProviding { self.countryProvider = countryProvider } - private let scheme = "https:" + private let scheme = "https://" enum Countries: String { case indonesia = "ID" @@ -105,11 +105,11 @@ struct OnboardingSuggestedSitesProvider: OnboardingSuggestionsItemsProviding { private var surpriseMe: ContextualOnboardingListItem { let site: String switch Countries(rawValue: country) { - case .germany: site = "https://duden.de" - case .netherlands: site = "https://www.woorden.org/woord/eend" - case .sweden: site = "https://www.synonymer.se/sv-syn/anka" - default: site = "https:britannica.com/animal/duck" + case .germany: site = "duden.de" + case .netherlands: site = "www.woorden.org/woord/eend" + case .sweden: site = "www.synonymer.se/sv-syn/anka" + default: site = "britannica.com/animal/duck" } - return ContextualOnboardingListItem.surprise(title: site) + return ContextualOnboardingListItem.surprise(title: scheme + site) } } diff --git a/DuckDuckGo/PassKitPreviewHelper.swift b/DuckDuckGo/PassKitPreviewHelper.swift index 588f355d54..81ba8ef725 100644 --- a/DuckDuckGo/PassKitPreviewHelper.swift +++ b/DuckDuckGo/PassKitPreviewHelper.swift @@ -20,6 +20,7 @@ import Common import UIKit import PassKit +import os.log class PassKitPreviewHelper: FilePreview { private weak var viewController: UIViewController? @@ -38,7 +39,7 @@ class PassKitPreviewHelper: FilePreview { viewController?.present(controller, animated: true) } } catch { - os_log("Can't present passkit: %{public}s", type: .error, error.localizedDescription) + Logger.general.error("Can't present passkit: \(error.localizedDescription, privacy: .public)") } } } diff --git a/DuckDuckGo/PrivacyDashboard/PrivacyDashboardViewController.swift b/DuckDuckGo/PrivacyDashboard/PrivacyDashboardViewController.swift index 7bcaa5299f..fd759ebd1a 100644 --- a/DuckDuckGo/PrivacyDashboard/PrivacyDashboardViewController.swift +++ b/DuckDuckGo/PrivacyDashboard/PrivacyDashboardViewController.swift @@ -24,6 +24,7 @@ import Core import BrowserServicesKit import PrivacyDashboard import Common +import os.log extension PixelExperiment { @@ -250,7 +251,7 @@ extension PrivacyDashboardViewController: PrivacyDashboardControllerDelegate { let report = try await makeBrokenSiteReport(category: category, description: description, source: privacyDashboardController.source) try brokenSiteReporter.report(report, reportMode: .regular) } catch { - os_log("Failed to generate or send the broken site report: %@", type: .error, error.localizedDescription) + Logger.privacyDashboard.error("Failed to generate or send the broken site report: \(error.localizedDescription, privacy: .public)") } let message = PixelExperiment.cohort == .control ? UserText.feedbackSumbittedConfirmation : UserText.brokenSiteReportSuccessToast ActionMessageView.present(message: message) @@ -280,7 +281,7 @@ extension PrivacyDashboardViewController: PrivacyDashboardControllerDelegate { let report = try await makeBrokenSiteReport(source: source) try toggleProtectionsOffReporter.report(report, reportMode: .toggle) } catch { - os_log("Failed to generate or send the broken site report: %@", type: .error, error.localizedDescription) + Logger.general.error("Failed to generate or send the broken site report: \(error.localizedDescription, privacy: .public)") } privacyDashboardCloseHandler() diff --git a/DuckDuckGo/ProgressView.swift b/DuckDuckGo/ProgressView.swift index f43e416b00..4a29b897ff 100644 --- a/DuckDuckGo/ProgressView.swift +++ b/DuckDuckGo/ProgressView.swift @@ -83,7 +83,6 @@ class ProgressView: UIView, CAAnimationDelegate { progressMask.bounds = calculateProgressMaskRect() progressMask.opacity = 1 CATransaction.commit() - CATransaction.flush() startGradientAnimation() } diff --git a/DuckDuckGo/RemoteMessagingClient.swift b/DuckDuckGo/RemoteMessagingClient.swift index 494da7d3c6..5425931ff8 100644 --- a/DuckDuckGo/RemoteMessagingClient.swift +++ b/DuckDuckGo/RemoteMessagingClient.swift @@ -26,6 +26,7 @@ import BrowserServicesKit import Persistence import Bookmarks import RemoteMessaging +import os.log final class RemoteMessagingClient: RemoteMessagingProcessing { @@ -65,15 +66,14 @@ final class RemoteMessagingClient: RemoteMessagingProcessing { duckPlayerStorage: duckPlayerStorage ) let configFetcher = RemoteMessagingConfigFetcher( - configurationFetcher: ConfigurationFetcher(store: configurationStore, urlSession: .session(), log: .remoteMessaging, eventMapping: nil), + configurationFetcher: ConfigurationFetcher(store: configurationStore, urlSession: .session(), eventMapping: nil), configurationStore: configurationStore ) let remoteMessagingStore = RemoteMessagingStore( database: database, notificationCenter: notificationCenter, errorEvents: errorEvents, - remoteMessagingAvailabilityProvider: remoteMessagingAvailabilityProvider, - log: .remoteMessaging + remoteMessagingAvailabilityProvider: remoteMessagingAvailabilityProvider ) self.init( configMatcherProvider: provider, @@ -146,7 +146,7 @@ extension RemoteMessagingClient { do { try BGTaskScheduler.shared.submit(task) } catch { - os_log("Failed to schedule background task: %@", log: OSLog.remoteMessaging, type: .error, error.localizedDescription) + Logger.remoteMessaging.error("Failed to schedule background task: \(error.localizedDescription, privacy: .public)") } #endif } diff --git a/DuckDuckGo/RootDebugViewController+Onboarding.swift b/DuckDuckGo/RootDebugViewController+Onboarding.swift index c25df3aa50..550c251023 100644 --- a/DuckDuckGo/RootDebugViewController+Onboarding.swift +++ b/DuckDuckGo/RootDebugViewController+Onboarding.swift @@ -22,7 +22,7 @@ import UIKit extension RootDebugViewController { func showOnboardingIntro() { - let controller = OnboardingIntroViewController() + let controller = OnboardingIntroViewController(onboardingPixelReporter: OnboardingPixelReporter()) controller.delegate = self controller.modalPresentationStyle = .overFullScreen present(controller: controller, fromView: self.view) diff --git a/DuckDuckGo/RootDebugViewController+VanillaBrowser.swift b/DuckDuckGo/RootDebugViewController+VanillaBrowser.swift index 58c6c2c5d6..c2900f153e 100644 --- a/DuckDuckGo/RootDebugViewController+VanillaBrowser.swift +++ b/DuckDuckGo/RootDebugViewController+VanillaBrowser.swift @@ -23,6 +23,7 @@ import SwiftUI import WebKit import Core import Common +import os.log extension RootDebugViewController { @@ -40,7 +41,7 @@ extension RootDebugViewController { }() fileprivate func openVanillaBrowser(url: URL) { - os_log(.debug, "Vanilla Browser open URL %s", url.absoluteString) + Logger.lifecycle.debug("Vanilla Browser open URL \(url.absoluteString)") let browserView = BareBonesBrowserView(initialURL: url, homeURL: RootDebugViewController.ddgURL, uiDelegate: nil, diff --git a/DuckDuckGo/SecureVaultReporter.swift b/DuckDuckGo/SecureVaultReporter.swift index d1339acbce..40d94c8b94 100644 --- a/DuckDuckGo/SecureVaultReporter.swift +++ b/DuckDuckGo/SecureVaultReporter.swift @@ -22,6 +22,7 @@ import BrowserServicesKit import Core import Common import SecureStorage +import os.log final class SecureVaultKeyStoreEventMapper: EventMapping { public init() { @@ -70,10 +71,7 @@ final class SecureVaultReporter: SecureVaultReporting { let secureVaultError = error as? SecureStorageError, let userInfo = secureVaultError.errorUserInfo["NSUnderlyingError"] as? NSError, userInfo.code == -25308 { - os_log("SecureVault attempt to access keystore while device is locked: %@", - log: .generalLog, - type: .debug, - error.localizedDescription) + Logger.general.error("SecureVault attempt to access keystore while device is locked: \(error.localizedDescription, privacy: .public)") return } DailyPixel.fire(pixel: .secureVaultInitFailedError, error: error, withAdditionalParameters: pixelParams) diff --git a/DuckDuckGo/Settings.bundle/Root.plist b/DuckDuckGo/Settings.bundle/Root.plist index 003e30599f..c1463cbf2e 100644 --- a/DuckDuckGo/Settings.bundle/Root.plist +++ b/DuckDuckGo/Settings.bundle/Root.plist @@ -6,7 +6,7 @@ DefaultValue - 7.132.0 + 7.135.0 Key version Title diff --git a/DuckDuckGo/SettingsDuckPlayerView.swift b/DuckDuckGo/SettingsDuckPlayerView.swift index d9ef668ad1..8df6eb7678 100644 --- a/DuckDuckGo/SettingsDuckPlayerView.swift +++ b/DuckDuckGo/SettingsDuckPlayerView.swift @@ -72,10 +72,6 @@ struct SettingsDuckPlayerView: View { options: DuckPlayerMode.allCases, selectedOption: viewModel.duckPlayerModeBinding) .disabled(viewModel.shouldDisplayDuckPlayerContingencyMessage) - } footer: { - Text(UserText.settingsDuckPlayerFooter) - .daxFootnoteRegular() - .multilineTextAlignment(.center) } } .applySettingsListModifiers(title: UserText.duckPlayerFeatureName, diff --git a/DuckDuckGo/SettingsLegacyViewProvider.swift b/DuckDuckGo/SettingsLegacyViewProvider.swift index 9ebab1a8f3..af40a39ab6 100644 --- a/DuckDuckGo/SettingsLegacyViewProvider.swift +++ b/DuckDuckGo/SettingsLegacyViewProvider.swift @@ -61,8 +61,8 @@ class SettingsLegacyViewProvider: ObservableObject { fireproofSites, autoclearData, keyboard, - netP, - feedback, debug + feedback, + debug } private func instantiate(_ identifier: String, fromStoryboard name: String) -> UIViewController { @@ -81,7 +81,6 @@ class SettingsLegacyViewProvider: ObservableObject { var autoclearData: UIViewController { instantiate("AutoClearSettingsViewController", fromStoryboard: "Settings") } var keyboard: UIViewController { instantiate("Keyboard", fromStoryboard: "Settings") } var feedback: UIViewController { instantiate("Feedback", fromStoryboard: "Feedback") } - var netP: UIViewController { NetworkProtectionRootViewController() } @MainActor var syncSettings: UIViewController { diff --git a/DuckDuckGo/SettingsOthersView.swift b/DuckDuckGo/SettingsOthersView.swift index 9194cef3c5..96f3cab8d1 100644 --- a/DuckDuckGo/SettingsOthersView.swift +++ b/DuckDuckGo/SettingsOthersView.swift @@ -33,10 +33,36 @@ struct SettingsOthersView: View { } // Share Feedback - SettingsCellView(label: UserText.settingsFeedback, - image: Image("SettingsFeedback"), - action: { viewModel.presentLegacyView(.feedback) }, - isButton: true) + if viewModel.usesUnifiedFeedbackForm { + let formViewModel = UnifiedFeedbackFormViewModel(vpnMetadataCollector: DefaultVPNMetadataCollector(), source: .settings) + NavigationLink { + UnifiedFeedbackCategoryView(UserText.subscriptionFeedback, sources: UnifiedFeedbackFlowCategory.self, selection: $viewModel.selectedFeedbackFlow) { + if let selectedFeedbackFlow = viewModel.selectedFeedbackFlow { + switch UnifiedFeedbackFlowCategory(rawValue: selectedFeedbackFlow) { + case nil: + EmptyView() + case .browserFeedback: + LegacyFeedbackView() + case .ppro: + UnifiedFeedbackRootView(viewModel: formViewModel) + } + } + } + .onFirstAppear { + Task { + await formViewModel.process(action: .reportShow) + } + } + } label: { + SettingsCellView(label: UserText.subscriptionFeedback, + image: Image("SettingsFeedback")) + } + } else { + SettingsCellView(label: UserText.settingsFeedback, + image: Image("SettingsFeedback"), + action: { viewModel.presentLegacyView(.feedback) }, + isButton: true) + } // DuckDuckGo on Other Platforms SettingsCellView(label: UserText.duckduckgoOnOtherPlatforms, @@ -45,7 +71,25 @@ struct SettingsOthersView: View { webLinkIndicator: true, isButton: true) } + } + +} +private struct LegacyFeedbackView: View { + var body: some View { + LegacyFeedbackViewRepresentable() } +} +// swiftlint:disable force_cast +private struct LegacyFeedbackViewRepresentable: UIViewControllerRepresentable { + func makeUIViewController(context: Context) -> some UIViewController { + let storyboard = UIStoryboard(name: "Feedback", bundle: nil) + let navigationController = storyboard.instantiateViewController(withIdentifier: "Feedback") as! UINavigationController + return navigationController.viewControllers.first! + } + + func updateUIViewController(_ uiViewController: UIViewControllerType, context: Context) { + } } +// swiftlint:enable force_cast diff --git a/DuckDuckGo/SettingsRootView.swift b/DuckDuckGo/SettingsRootView.swift index 83c9f1acf9..7bb093b578 100644 --- a/DuckDuckGo/SettingsRootView.swift +++ b/DuckDuckGo/SettingsRootView.swift @@ -91,10 +91,6 @@ struct SettingsRootView: View { DispatchQueue.main.async { self.shouldDisplayDeepLinkPush = true } - case.UIKitView: - DispatchQueue.main.async { - triggerLegacyLink(link) - } } }) @@ -129,19 +125,11 @@ struct SettingsRootView: View { onDisappear: {}) case .duckPlayer: SettingsDuckPlayerView().environmentObject(viewModel) - default: - EmptyView() - } - } - - private func triggerLegacyLink(_ link: SettingsViewModel.SettingsDeepLinkSection) { - switch link { case .netP: - viewModel.presentLegacyView(.netP) - default: - return + NetworkProtectionRootView() } } + } struct InsetGroupedListStyleModifier: ViewModifier { diff --git a/DuckDuckGo/SettingsSubscriptionView.swift b/DuckDuckGo/SettingsSubscriptionView.swift index af39a0cc0a..67fa9f4faa 100644 --- a/DuckDuckGo/SettingsSubscriptionView.swift +++ b/DuckDuckGo/SettingsSubscriptionView.swift @@ -38,6 +38,7 @@ struct SettingsSubscriptionView: View { @EnvironmentObject var subscriptionNavigationCoordinator: SubscriptionNavigationCoordinator @State var isShowingDBP = false @State var isShowingITP = false + @State var isShowingVPN = false @State var isShowingRestoreFlow = false @State var isShowingGoogleView = false @State var isShowingStripeView = false @@ -155,12 +156,13 @@ struct SettingsSubscriptionView: View { private var subscriptionDetailsView: some View { if viewModel.state.subscription.entitlements.contains(.networkProtection) { - SettingsCellView(label: UserText.settingsPProVPNTitle, - image: Image("SettingsPrivacyProVPN"), - action: { viewModel.presentLegacyView(.netP) }, - statusIndicator: StatusIndicatorView(status: viewModel.state.networkProtectionConnected ? .on : .off), - disclosureIndicator: true, - isButton: true) + NavigationLink(destination: NetworkProtectionRootView(), isActive: $isShowingVPN) { + SettingsCellView( + label: UserText.settingsPProVPNTitle, + image: Image("SettingsPrivacyProVPN"), + statusIndicator: StatusIndicatorView(status: viewModel.state.networkProtectionConnected ? .on : .off) + ) + } } if viewModel.state.subscription.entitlements.contains(.dataBrokerProtection) { diff --git a/DuckDuckGo/SettingsViewModel.swift b/DuckDuckGo/SettingsViewModel.swift index 2de260a871..66f6fcf195 100644 --- a/DuckDuckGo/SettingsViewModel.swift +++ b/DuckDuckGo/SettingsViewModel.swift @@ -39,6 +39,7 @@ final class SettingsViewModel: ObservableObject { private var legacyViewProvider: SettingsLegacyViewProvider private lazy var versionProvider: AppVersion = AppVersion.shared private let voiceSearchHelper: VoiceSearchHelperProtocol + private let subscriptionFeatureAvailability: SubscriptionFeatureAvailability private let syncPausedStateManager: any SyncPausedStateManaging var emailManager: EmailManager { EmailManager() } private let historyManager: HistoryManaging @@ -90,6 +91,8 @@ final class SettingsViewModel: ObservableObject { @Published var isInternalUser: Bool = AppDependencyProvider.shared.internalUserDecider.isInternalUser + @Published var selectedFeedbackFlow: String? + // MARK: - Deep linking // Used to automatically navigate to a specific section // immediately after loading the Settings View @@ -335,11 +338,16 @@ final class SettingsViewModel: ObservableObject { var syncStatus: StatusIndicator { legacyViewProvider.syncService.authState != .inactive ? .on : .off } - + + var usesUnifiedFeedbackForm: Bool { + subscriptionManager.accountManager.isUserAuthenticated && subscriptionFeatureAvailability.usesUnifiedFeedbackForm + } + // MARK: Default Init init(state: SettingsState? = nil, legacyViewProvider: SettingsLegacyViewProvider, subscriptionManager: SubscriptionManager, + subscriptionFeatureAvailability: SubscriptionFeatureAvailability = AppDependencyProvider.shared.subscriptionFeatureAvailability, voiceSearchHelper: VoiceSearchHelperProtocol = AppDependencyProvider.shared.voiceSearchHelper, variantManager: VariantManager = AppDependencyProvider.shared.variantManager, deepLink: SettingsDeepLinkSection? = nil, @@ -350,6 +358,7 @@ final class SettingsViewModel: ObservableObject { self.state = SettingsState.defaults self.legacyViewProvider = legacyViewProvider self.subscriptionManager = subscriptionManager + self.subscriptionFeatureAvailability = subscriptionFeatureAvailability self.voiceSearchHelper = voiceSearchHelper self.deepLinkTarget = deepLink self.historyManager = historyManager @@ -598,10 +607,6 @@ extension SettingsViewModel { case .autoconsent: pushViewController(legacyViewProvider.autoConsent) - - case .netP: - firePixel(.privacyProVPNSettings) - pushViewController(legacyViewProvider.netP) } } @@ -654,13 +659,7 @@ extension SettingsViewModel { // Default to .sheet, specify .push where needed var type: DeepLinkType { switch self { - // Specify cases that require .push presentation - // Example: - // case .dbp: - // return .sheet - case .netP: - return .UIKitView - default: + case .netP, .dbp, .itr, .subscriptionFlow, .restoreFlow, .duckPlayer: return .navigationLink } } @@ -670,7 +669,6 @@ extension SettingsViewModel { enum DeepLinkType { case sheet case navigationLink - case UIKitView } // Navigate to a section in settings diff --git a/DuckDuckGo/ShortcutItemView.swift b/DuckDuckGo/ShortcutItemView.swift index b7f9b4da19..deb085d0b0 100644 --- a/DuckDuckGo/ShortcutItemView.swift +++ b/DuckDuckGo/ShortcutItemView.swift @@ -101,7 +101,7 @@ private extension NewTabPageShortcut { private extension ShortcutAccessoryView { @ViewBuilder func alignedForOverlay(edgeSize: CGFloat) -> some View { let offset = CGSize(width: edgeSize/4.0, height: -edgeSize/4.0) - let size = CGSize(width: edgeSize, height: edgeSize) +// let size = CGSize(width: edgeSize, height: edgeSize) if #available(iOS 16, *) { frame(width: edgeSize) diff --git a/DuckDuckGo/ShortcutsModel.swift b/DuckDuckGo/ShortcutsModel.swift index 5492ff39ed..3692e58607 100644 --- a/DuckDuckGo/ShortcutsModel.swift +++ b/DuckDuckGo/ShortcutsModel.swift @@ -18,12 +18,19 @@ // import Foundation +import Core final class ShortcutsModel: ObservableObject { var onShortcutOpened: ((NewTabPageShortcut) -> Void)? + let pixelFiring: PixelFiring.Type + + init(pixelFiring: PixelFiring.Type = Pixel.self) { + self.pixelFiring = pixelFiring + } func openShortcut(_ shortcut: NewTabPageShortcut) { + pixelFiring.fire(.newTabPageShortcutClicked(shortcut.nameForPixel), withAdditionalParameters: [:]) onShortcutOpened?(shortcut) } } diff --git a/DuckDuckGo/Subscription/DefaultSubscriptionManager+AccountManagerKeychainAccessDelegate.swift b/DuckDuckGo/Subscription/DefaultSubscriptionManager+AccountManagerKeychainAccessDelegate.swift new file mode 100644 index 0000000000..dbd2042c86 --- /dev/null +++ b/DuckDuckGo/Subscription/DefaultSubscriptionManager+AccountManagerKeychainAccessDelegate.swift @@ -0,0 +1,36 @@ +// +// DefaultSubscriptionManager+AccountManagerKeychainAccessDelegate.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation +import Core +import Subscription + +extension DefaultSubscriptionManager: AccountManagerKeychainAccessDelegate { + + public func accountManagerKeychainAccessFailed(accessType: AccountKeychainAccessType, error: AccountKeychainAccessError) { + let parameters = [ + PixelParameters.privacyProKeychainAccessType: accessType.rawValue, + PixelParameters.privacyProKeychainError: error.errorDescription, + PixelParameters.source: "browser" + ] + + DailyPixel.fireDailyAndCount(pixel: .privacyProKeychainAccessError, + withAdditionalParameters: parameters) + } +} diff --git a/DuckDuckGo/Subscription/Feedback/DefaultMetadataCollector.swift b/DuckDuckGo/Subscription/Feedback/DefaultMetadataCollector.swift new file mode 100644 index 0000000000..4df0487239 --- /dev/null +++ b/DuckDuckGo/Subscription/Feedback/DefaultMetadataCollector.swift @@ -0,0 +1,31 @@ +// +// DefaultMetadataCollector.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation + +struct DefaultFeedbackMetadata: UnifiedFeedbackMetadata {} + +/// Default implementation for Privacy Pro metadata collector +/// Intentionally left blank as we currently don't collect any metadata for PIR and ITR +/// See `DefaultVPNMetadataCollector` for a reference implementation +final class DefaultMetadataCollector: UnifiedMetadataCollector { + func collectMetadata() async -> DefaultFeedbackMetadata? { + nil + } +} diff --git a/DuckDuckGo/Subscription/Feedback/FeedbackCategoryProviding.swift b/DuckDuckGo/Subscription/Feedback/FeedbackCategoryProviding.swift new file mode 100644 index 0000000000..a478ba3dcd --- /dev/null +++ b/DuckDuckGo/Subscription/Feedback/FeedbackCategoryProviding.swift @@ -0,0 +1,182 @@ +// +// FeedbackCategoryProviding.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation + +protocol FeedbackCategoryProviding: Hashable, CaseIterable, Identifiable, RawRepresentable { + var displayName: String { get } +} + +protocol FeedbackFAQProviding { + var url: URL { get } +} + +extension FeedbackCategoryProviding where RawValue == String { + var id: String { + rawValue + } +} + +enum UnifiedFeedbackFlowCategory: String, FeedbackCategoryProviding { + case browserFeedback + case ppro + + var displayName: String { + switch self { + case .browserFeedback: return UserText.settingsBrowserFeedback + case .ppro: return UserText.subscriptionTitle + } + } +} + +enum UnifiedFeedbackReportType: String, FeedbackCategoryProviding { + case reportIssue + case requestFeature + case general + + var displayName: String { + switch self { + case .reportIssue: return UserText.pproFeedbackFormReportProblemTitle + case .requestFeature: return UserText.pproFeedbackFormRequestFeatureTitle + case .general: return UserText.pproFeedbackFormGeneralFeedbackTitle + } + } +} + +enum UnifiedFeedbackCategory: String, FeedbackCategoryProviding { + case subscription + case vpn + case pir + case itr + + var displayName: String { + switch self { + case .subscription: return UserText.generalFeedbackFormCategoryPPro + case .vpn: return UserText.generalFeedbackFormCategoryVPN + case .pir: return UserText.generalFeedbackFormCategoryPIR + case .itr: return UserText.generalFeedbackFormCategoryITR + } + } +} + +enum PrivacyProFeedbackSubcategory: String, FeedbackCategoryProviding, FeedbackFAQProviding { + case otp + case somethingElse + + var displayName: String { + switch self { + case .otp: return UserText.pproFeedbackFormCategoryOTP + case .somethingElse: return UserText.pproFeedbackFormCategoryOther + } + } + + var url: URL { + switch self { + case .otp: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/payments/")! + case .somethingElse: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/payments/")! + } + } +} + +enum VPNFeedbackSubcategory: String, FeedbackCategoryProviding, FeedbackFAQProviding { + case unableToInstall + case failsToConnect + case tooSlow + case issueWithAppOrWebsite + case appCrashesOrFreezes + case cantConnectToLocalDevice + case somethingElse + + var displayName: String { + switch self { + case .unableToInstall: return UserText.vpnFeedbackFormCategoryUnableToInstall + case .failsToConnect: return UserText.vpnFeedbackFormCategoryFailsToConnect + case .tooSlow: return UserText.vpnFeedbackFormCategoryTooSlow + case .issueWithAppOrWebsite: return UserText.vpnFeedbackFormCategoryIssuesWithApps + case .appCrashesOrFreezes: return UserText.vpnFeedbackFormCategoryBrowserCrashOrFreeze + case .cantConnectToLocalDevice: return UserText.vpnFeedbackFormCategoryLocalDeviceConnectivity + case .somethingElse: return UserText.vpnFeedbackFormCategoryOther + } + } + + var url: URL { + switch self { + case .unableToInstall: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/vpn/troubleshooting/")! + case .failsToConnect: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/vpn/troubleshooting/")! + case .tooSlow: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/vpn/troubleshooting/")! + case .issueWithAppOrWebsite: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/vpn/troubleshooting/")! + case .appCrashesOrFreezes: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/vpn/troubleshooting/")! + case .cantConnectToLocalDevice: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/vpn/troubleshooting/")! + case .somethingElse: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/vpn/")! + } + } +} + +enum PIRFeedbackSubcategory: String, FeedbackCategoryProviding, FeedbackFAQProviding { + case nothingOnSpecificSite + case notMe + case scanStuck + case removalStuck + case somethingElse + + var displayName: String { + switch self { + case .nothingOnSpecificSite: return UserText.pirFeedbackFormCategoryNothingOnSpecificSite + case .notMe: return UserText.pirFeedbackFormCategoryNotMe + case .scanStuck: return UserText.pirFeedbackFormCategoryScanStuck + case .removalStuck: return UserText.pirFeedbackFormCategoryRemovalStuck + case .somethingElse: return UserText.pirFeedbackFormCategoryOther + } + } + + var url: URL { + switch self { + case .nothingOnSpecificSite: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/personal-information-removal/removal-process/")! + case .notMe: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/personal-information-removal/removal-process/")! + case .scanStuck: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/personal-information-removal/removal-process/")! + case .removalStuck: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/personal-information-removal/removal-process/")! + case .somethingElse: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/personal-information-removal/")! + } + } +} + +enum ITRFeedbackSubcategory: String, FeedbackCategoryProviding, FeedbackFAQProviding { + case accessCode + case cantContactAdvisor + case advisorUnhelpful + case somethingElse + + var displayName: String { + switch self { + case .accessCode: return UserText.itrFeedbackFormCategoryAccessCode + case .cantContactAdvisor: return UserText.itrFeedbackFormCategoryCantContactAdvisor + case .advisorUnhelpful: return UserText.itrFeedbackFormCategoryUnhelpful + case .somethingElse: return UserText.itrFeedbackFormCategorySomethingElse + } + } + + var url: URL { + switch self { + case .accessCode: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/identity-theft-restoration/")! + case .cantContactAdvisor: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/identity-theft-restoration/iris/")! + case .advisorUnhelpful: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/identity-theft-restoration/")! + case .somethingElse: return URL(string: "https://duckduckgo.com/duckduckgo-help-pages/privacy-pro/identity-theft-restoration/")! + } + } +} diff --git a/DuckDuckGo/Subscription/Feedback/UnifiedFeedbackFormViewModel.swift b/DuckDuckGo/Subscription/Feedback/UnifiedFeedbackFormViewModel.swift new file mode 100644 index 0000000000..6ecfd2aa63 --- /dev/null +++ b/DuckDuckGo/Subscription/Feedback/UnifiedFeedbackFormViewModel.swift @@ -0,0 +1,228 @@ +// +// UnifiedFeedbackFormViewModel.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Combine +import SwiftUI + +final class UnifiedFeedbackFormViewModel: ObservableObject { + enum Source: String { + case settings + case ppro + case vpn + case pir + case itr + case unknown + } + + enum ViewState { + case feedbackPending + case feedbackSending + case feedbackSendingFailed + case feedbackSent + case feedbackCanceled + + var canSubmit: Bool { + switch self { + case .feedbackPending: return true + case .feedbackSending: return false + case .feedbackSendingFailed: return true + case .feedbackSent: return false + case .feedbackCanceled: return false + } + } + } + + enum ViewAction { + case submit + case faqClick + case reportShow + case reportActions + case reportCategory + case reportSubcategory + case reportFAQClick + case reportSubmitShow + } + + @Published var viewState: ViewState { + didSet { + updateSubmitButtonStatus() + } + } + + @Published var feedbackFormText: String = "" { + didSet { + updateSubmitButtonStatus() + } + } + + @Published private(set) var submitButtonEnabled: Bool = false + @Published var selectedReportType: String? { + didSet { + selectedCategory = "" + } + } + @Published var selectedCategory: String? { + didSet { + selectedSubcategory = "" + } + } + @Published var selectedSubcategory: String? { + didSet { + feedbackFormText = "" + } + } + + var usesCompactForm: Bool { + guard let selectedReportType else { return false } + switch UnifiedFeedbackReportType(rawValue: selectedReportType) { + case .reportIssue: + return false + default: + return true + } + } + + private let vpnMetadataCollector: any UnifiedMetadataCollector + private let defaultMetadataCollector: any UnifiedMetadataCollector + private let feedbackSender: any UnifiedFeedbackSender + + let source: String + + init(vpnMetadataCollector: any UnifiedMetadataCollector, + defaultMetadatCollector: any UnifiedMetadataCollector = DefaultMetadataCollector(), + feedbackSender: any UnifiedFeedbackSender = DefaultFeedbackSender(), + source: Source = .unknown) { + self.viewState = .feedbackPending + + self.vpnMetadataCollector = vpnMetadataCollector + self.defaultMetadataCollector = defaultMetadatCollector + self.feedbackSender = feedbackSender + self.source = source.rawValue + } + + @MainActor + func process(action: ViewAction) async { + switch action { + case .submit: + self.viewState = .feedbackSending + + do { + try await sendFeedback() + self.viewState = .feedbackSent + } catch { + self.viewState = .feedbackSendingFailed + } + + NotificationCenter.default.post(name: .unifiedFeedbackNotification, object: nil) + case .faqClick: + await openFAQ() + case .reportShow: + await feedbackSender.sendFormShowPixel() + case .reportActions: + await feedbackSender.sendActionsScreenShowPixel(source: source) + case .reportCategory: + if let selectedReportType { + await feedbackSender.sendCategoryScreenShow(source: source, + reportType: selectedReportType) + } + case .reportSubcategory: + if let selectedReportType, let selectedCategory { + await feedbackSender.sendSubcategoryScreenShow(source: source, + reportType: selectedReportType, + category: selectedCategory) + } + case .reportFAQClick: + if let selectedReportType, let selectedCategory, let selectedSubcategory { + await feedbackSender.sendSubmitScreenFAQClickPixel(source: source, + reportType: selectedReportType, + category: selectedCategory, + subcategory: selectedSubcategory) + } + case .reportSubmitShow: + if let selectedReportType, let selectedCategory, let selectedSubcategory { + await feedbackSender.sendSubmitScreenShowPixel(source: source, + reportType: selectedReportType, + category: selectedCategory, + subcategory: selectedSubcategory) + } + } + } + + private func openFAQ() async { + guard let selectedReportType, UnifiedFeedbackReportType(rawValue: selectedReportType) == .reportIssue, + let selectedCategory, let category = UnifiedFeedbackCategory(rawValue: selectedCategory), + let selectedSubcategory else { + return + } + + let url: URL? = { + switch category { + case .subscription: return PrivacyProFeedbackSubcategory(rawValue: selectedSubcategory)?.url + case .vpn: return VPNFeedbackSubcategory(rawValue: selectedSubcategory)?.url + case .pir: return PIRFeedbackSubcategory(rawValue: selectedSubcategory)?.url + case .itr: return ITRFeedbackSubcategory(rawValue: selectedSubcategory)?.url + } + }() + + if let url { + await UIApplication.shared.open(url) + } + } + + private func sendFeedback() async throws { + guard let selectedReportType else { return } + switch UnifiedFeedbackReportType(rawValue: selectedReportType) { + case nil: + return + case .requestFeature: + try await feedbackSender.sendFeatureRequestPixel(description: feedbackFormText, + source: source) + case .general: + try await feedbackSender.sendGeneralFeedbackPixel(description: feedbackFormText, + source: source) + case .reportIssue: + try await reportProblem() + } + } + + private func reportProblem() async throws { + guard let selectedCategory, let selectedSubcategory else { return } + switch UnifiedFeedbackCategory(rawValue: selectedCategory) { + case .vpn: + let metadata = await vpnMetadataCollector.collectMetadata() + try await feedbackSender.sendReportIssuePixel(source: source, + category: selectedCategory, + subcategory: selectedSubcategory, + description: feedbackFormText, + metadata: metadata as? VPNMetadata) + default: + let metadata = await defaultMetadataCollector.collectMetadata() + try await feedbackSender.sendReportIssuePixel(source: source, + category: selectedCategory, + subcategory: selectedSubcategory, + description: feedbackFormText, + metadata: metadata as? DefaultFeedbackMetadata) + } + } + + private func updateSubmitButtonStatus() { + self.submitButtonEnabled = viewState.canSubmit && !feedbackFormText.isEmpty + } + +} diff --git a/DuckDuckGo/Subscription/Feedback/UnifiedFeedbackRootView.swift b/DuckDuckGo/Subscription/Feedback/UnifiedFeedbackRootView.swift new file mode 100644 index 0000000000..58b43f15d7 --- /dev/null +++ b/DuckDuckGo/Subscription/Feedback/UnifiedFeedbackRootView.swift @@ -0,0 +1,399 @@ +// +// UnifiedFeedbackRootView.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import SwiftUI +import NetworkProtection + +struct UnifiedFeedbackRootView: View { + @StateObject var viewModel: UnifiedFeedbackFormViewModel + + var body: some View { + UnifiedFeedbackCategoryView(UserText.pproFeedbackFormTitle, sources: UnifiedFeedbackReportType.self, selection: $viewModel.selectedReportType) { + if let selectedReportType = viewModel.selectedReportType { + switch UnifiedFeedbackReportType(rawValue: selectedReportType) { + case nil: + EmptyView() + case .general: + CompactIssueDescriptionFormView(viewModel: viewModel, + navigationTitle: UserText.pproFeedbackFormGeneralFeedbackTitle, + label: UserText.pproFeedbackFormGeneralFeedbackTitle, + placeholder: UserText.pproFeedbackFormGeneralFeedbackPlaceholder) + case .requestFeature: + CompactIssueDescriptionFormView(viewModel: viewModel, + navigationTitle: UserText.pproFeedbackFormRequestFeatureTitle, + label: UserText.pproFeedbackFormRequestFeatureTitle, + placeholder: UserText.pproFeedbackFormRequestFeaturePlaceholder) + case .reportIssue: + reportProblemView() + } + } + } + .onFirstAppear { + Task { + await viewModel.process(action: .reportActions) + } + } + } + + @ViewBuilder + func reportProblemView() -> some View { + UnifiedFeedbackCategoryView(UserText.pproFeedbackFormReportProblemTitle, + sources: UnifiedFeedbackCategory.self, + selection: $viewModel.selectedCategory) { + Group { + if let selectedCategory = viewModel.selectedCategory { + switch UnifiedFeedbackCategory(rawValue: selectedCategory) { + case nil: + EmptyView() + case .subscription: + UnifiedFeedbackCategoryView(UserText.pproFeedbackFormReportPProProblemTitle, + sources: PrivacyProFeedbackSubcategory.self, + selection: $viewModel.selectedSubcategory) { + IssueDescriptionFormView(viewModel: viewModel, + placeholder: UserText.pproFeedbackFormReportProblemPlaceholder) + } + case .vpn: + UnifiedFeedbackCategoryView(UserText.pproFeedbackFormReportVPNProblemTitle, + sources: VPNFeedbackSubcategory.self, + selection: $viewModel.selectedSubcategory) { + IssueDescriptionFormView(viewModel: viewModel, + placeholder: UserText.pproFeedbackFormReportProblemPlaceholder) + } + case .pir: + UnifiedFeedbackCategoryView(UserText.pproFeedbackFormReportPIRProblemTitle, + sources: PIRFeedbackSubcategory.self, + selection: $viewModel.selectedSubcategory) { + IssueDescriptionFormView(viewModel: viewModel, + placeholder: UserText.pproFeedbackFormReportProblemPlaceholder) + } + case .itr: + UnifiedFeedbackCategoryView(UserText.pproFeedbackFormReportITRProblemTitle, + sources: ITRFeedbackSubcategory.self, + selection: $viewModel.selectedSubcategory) { + IssueDescriptionFormView(viewModel: viewModel, + placeholder: UserText.pproFeedbackFormReportProblemPlaceholder) + } + } + } + } + .onFirstAppear { + Task { + await viewModel.process(action: .reportSubcategory) + } + } + } + .onFirstAppear { + Task { + await viewModel.process(action: .reportCategory) + } + } + } +} + +struct UnifiedFeedbackCategoryView: View where Category.AllCases == [Category], Category.RawValue == String { + let title: String + let prompt: String + let sources: Category.Type + let selection: Binding + let destination: () -> Destination + + init(_ title: String, + prompt: String = UserText.pproFeedbackFormSelectCategoryTitle, + sources: Category.Type, + selection: Binding, + @ViewBuilder destination: @escaping () -> Destination) { + self.title = title + self.prompt = prompt + self.sources = sources + self.selection = selection + self.destination = destination + } + + var body: some View { + VStack { + List(selection: selection) { + Section { + ForEach(sources.allCases) { option in + NavigationLink { + destination() + } label: { + Text(option.displayName) + .daxBodyRegular() + .foregroundColor(.init(designSystemColor: .textPrimary)) + } + .tag(option.rawValue) + .listRowBackground(Color(designSystemColor: .surface)) + } + } header: { + Text(prompt) + } + } + .listRowBackground(Color(designSystemColor: .surface)) + } + .applyInsetGroupedListStyle() + .navigationTitle(title) + } +} + +private struct CompactIssueDescriptionFormView: View { + @ObservedObject var viewModel: UnifiedFeedbackFormViewModel + @FocusState private var isTextEditorFocused: Bool + + let navigationTitle: String + let label: String + let placeholder: String + + var body: some View { + configuredForm() + .applyBackground() + .navigationTitle(navigationTitle) + .onFirstAppear { + Task { + await viewModel.process(action: .reportSubmitShow) + } + } + } + + @ViewBuilder + private func form() -> some View { + ScrollView { + ScrollViewReader { scrollView in + VStack { + VStack(alignment: .leading, spacing: 10) { + IssueDescriptionTextEditor(label: label, + placeholder: placeholder, + text: $viewModel.feedbackFormText, + focusState: $isTextEditorFocused, + scrollViewProxy: scrollView) + } + .foregroundColor(.secondary) + .background(Color(designSystemColor: .background)) + .padding(16) + .daxFootnoteRegular() + submitButton() + .disabled(!viewModel.submitButtonEnabled) + } + } + } + } + + @ViewBuilder + private func configuredForm() -> some View { + if #available(iOS 16, *) { + form().scrollDismissesKeyboard(.interactively) + } else { + form() + } + } + + @ViewBuilder + private func submitButton() -> some View { + Button { + Task { + _ = await viewModel.process(action: .submit) + } + } label: { + Text(UserText.vpnFeedbackFormButtonSubmit) + } + .buttonStyle(UnifiedFeedbackFormButtonStyle()) + .padding(16) + } +} + +private struct IssueDescriptionFormView: View { + @ObservedObject var viewModel: UnifiedFeedbackFormViewModel + @FocusState private var isTextEditorFocused: Bool + + let placeholder: String + + var body: some View { + configuredForm() + .applyBackground() + .navigationTitle(UserText.pproFeedbackFormReportProblemTitle) + .onFirstAppear { + Task { + await viewModel.process(action: .reportSubmitShow) + } + } + } + + @ViewBuilder + private func form() -> some View { + ScrollView { + ScrollViewReader { scrollView in + VStack { + VStack(alignment: .leading, spacing: 10) { + header() + .padding(.horizontal, 4) + IssueDescriptionTextEditor(label: UserText.pproFeedbackFormTextBoxTitle, + placeholder: placeholder, + text: $viewModel.feedbackFormText, + focusState: $isTextEditorFocused, + scrollViewProxy: scrollView) + footer() + .padding(.horizontal, 4) + } + .foregroundColor(.secondary) + .background(Color(designSystemColor: .background)) + .padding(16) + .daxFootnoteRegular() + submitButton() + .disabled(!viewModel.submitButtonEnabled) + } + } + } + } + + @ViewBuilder + private func configuredForm() -> some View { + if #available(iOS 16, *) { + form().scrollDismissesKeyboard(.interactively) + } else { + form() + } + } + + @ViewBuilder + private func header() -> some View { + Text(LocalizedStringKey(UserText.pproFeedbackFormText1)) + .multilineTextAlignment(.leading) + .lineLimit(nil) + .fixedSize(horizontal: false, vertical: true) + .environment(\.openURL, OpenURLAction { _ in + Task { + await viewModel.process(action: .reportFAQClick) + await viewModel.process(action: .faqClick) + } + return .handled + }) + + Spacer() + .frame(height: 1) + .id(1) + } + + @ViewBuilder + private func footer() -> some View { + Text(UserText.pproFeedbackFormText2) + .multilineTextAlignment(.leading) + .lineLimit(nil) + .fixedSize(horizontal: false, vertical: true) + + VStack(alignment: .leading) { + Text(UserText.pproFeedbackFormText3) + Text(UserText.pproFeedbackFormText4) + } + + Text(UserText.pproFeedbackFormText5) + .multilineTextAlignment(.leading) + .lineLimit(nil) + .fixedSize(horizontal: false, vertical: true) + } + + @ViewBuilder + private func submitButton() -> some View { + Button { + Task { + _ = await viewModel.process(action: .submit) + } + } label: { + Text(UserText.vpnFeedbackFormButtonSubmit) + } + .buttonStyle(UnifiedFeedbackFormButtonStyle()) + .padding(16) + } +} + +private struct IssueDescriptionTextEditor: View { + let label: String + let placeholder: String + let text: Binding + let focusState: FocusState.Binding + let scrollViewProxy: ScrollViewProxy + + var body: some View { + VStack(alignment: .leading, spacing: 4) { + Text(label) + .font(.caption) + .textCase(.uppercase) + .foregroundColor(.secondary) + .padding(.horizontal, 4) + TextEditorWithPlaceholder(text: text, placeholder: placeholder) + .font(.body) + .foregroundColor(.primary) + .background(Color(designSystemColor: .panel)) + .clipShape(RoundedRectangle(cornerRadius: 8.0, style: .continuous)) + .frame(height: 100) + .fixedSize(horizontal: false, vertical: true) + .onChange(of: text.wrappedValue) { value in + text.wrappedValue = String(value.prefix(1000)) + } + } + .focused(focusState) + .onChange(of: focusState.wrappedValue) { isFocused in + guard isFocused else { return } + DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) { + withAnimation { + scrollViewProxy.scrollTo(1, anchor: .top) + } + } + } + } +} + +private struct UnifiedFeedbackFormButtonStyle: ButtonStyle { + + @Environment(\.isEnabled) private var isEnabled: Bool + + func makeBody(configuration: Configuration) -> some View { + configuration.label + .foregroundColor(Color.white) + .frame(maxWidth: .infinity) + .padding(.horizontal) + .frame(height: 50) + .background(Color(designSystemColor: .accent)) + .cornerRadius(8) + .daxButton() + .opacity(isEnabled ? 1.0 : 0.4) + + } + +} + +private struct TextEditorWithPlaceholder: View { + let text: Binding + let placeholder: String + + var body: some View { + ZStack(alignment: .topLeading) { + TextEditor(text: text) + if text.wrappedValue.isEmpty { + Text(placeholder) + .foregroundColor(.secondary) + .opacity(0.5) + .padding(.top, 8) + .padding(.leading, 5) + } + } + } +} + +extension NSNotification.Name { + static let unifiedFeedbackNotification: NSNotification.Name = Notification.Name(rawValue: "com.duckduckgo.notification.unifiedFeedback") +} diff --git a/DuckDuckGo/Subscription/Feedback/UnifiedFeedbackSender.swift b/DuckDuckGo/Subscription/Feedback/UnifiedFeedbackSender.swift new file mode 100644 index 0000000000..76f7a03590 --- /dev/null +++ b/DuckDuckGo/Subscription/Feedback/UnifiedFeedbackSender.swift @@ -0,0 +1,220 @@ +// +// UnifiedFeedbackSender.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation +import Core + +protocol UnifiedFeedbackSender { + func sendFeatureRequestPixel(description: String, source: String) async throws + func sendGeneralFeedbackPixel(description: String, source: String) async throws + func sendReportIssuePixel(source: String, category: String, subcategory: String, description: String, metadata: T?) async throws + + func sendFormShowPixel() async + func sendSubmitScreenShowPixel(source: String, reportType: String, category: String, subcategory: String) async + func sendActionsScreenShowPixel(source: String) async + func sendCategoryScreenShow(source: String, reportType: String) async + func sendSubcategoryScreenShow(source: String, reportType: String, category: String) async + func sendSubmitScreenFAQClickPixel(source: String, reportType: String, category: String, subcategory: String) async + + static func additionalParameters(for pixel: Pixel.Event) -> [String: String] +} + +enum UnifiedFeedbackSenderFrequency { + case regular + case dailyAndCount +} + +extension UnifiedFeedbackSender { + static func additionalParameters(for pixel: Pixel.Event) -> [String: String] { + [:] + } + + func sendPixel(_ pixel: Pixel.Event, frequency: UnifiedFeedbackSenderFrequency) async throws { + try await withCheckedThrowingContinuation { (continuation: CheckedContinuation) in + let completionHandler: (Error?) -> Void = { error in + if let error { + continuation.resume(throwing: error) + } else { + continuation.resume() + } + } + + switch frequency { + case .regular: + Pixel.fire(pixel: pixel, + withAdditionalParameters: Self.additionalParameters(for: pixel), + onComplete: completionHandler) + case .dailyAndCount: + DailyPixel.fireDailyAndCount(pixel: pixel, + withAdditionalParameters: Self.additionalParameters(for: pixel), + onDailyComplete: { _ in }, + onCountComplete: completionHandler) + } + } + } +} + +protocol StringRepresentable: RawRepresentable { + static var `default`: Self { get } +} + +extension StringRepresentable where RawValue == String { + static func from(_ text: String) -> String { + (Self(rawValue: text) ?? .default).rawValue + } +} + +struct DefaultFeedbackSender: UnifiedFeedbackSender { + enum Source: String, StringRepresentable { + case settings, ppro, vpn, pir, itr, unknown + static var `default` = Source.unknown + } + + enum ReportType: String, StringRepresentable { + case general, reportIssue, requestFeature + static var `default` = ReportType.general + } + + enum Category: String, StringRepresentable { + case subscription, vpn, pir, itr, unknown + static var `default` = Category.unknown + } + + enum Subcategory: String, StringRepresentable { + case otp + case unableToInstall, failsToConnect, tooSlow, issueWithAppOrWebsite, appCrashesOrFreezes, cantConnectToLocalDevice + case nothingOnSpecificSite, notMe, scanStuck, removalStuck + case accessCode, cantContactAdvisor, advisorUnhelpful + case somethingElse + static var `default` = Subcategory.somethingElse + } + + func sendFeatureRequestPixel(description: String, source: String) async throws { + try await sendPixel(.pproFeedbackFeatureRequest(description: description, + source: Source.from(source)), + frequency: .regular) + } + + func sendGeneralFeedbackPixel(description: String, source: String) async throws { + try await sendPixel(.pproFeedbackGeneralFeedback(description: description, + source: Source.from(source)), + frequency: .regular) + } + + func sendReportIssuePixel(source: String, category: String, subcategory: String, description: String, metadata: T?) async throws { + try await sendPixel(.pproFeedbackReportIssue(source: Source.from(source), + category: Category.from(category), + subcategory: Subcategory.from(subcategory), + description: description, + metadata: metadata?.toBase64() ?? ""), + frequency: .regular) + } + + func sendFormShowPixel() async { + try? await sendPixel(.pproFeedbackFormShow, frequency: .regular) + } + + func sendSubmitScreenShowPixel(source: String, reportType: String, category: String, subcategory: String) async { + try? await sendPixel(.pproFeedbackSubmitScreenShow(source: source, + reportType: ReportType.from(reportType), + category: Category.from(category), + subcategory: Subcategory.from(subcategory)), + frequency: .dailyAndCount) + } + + func sendActionsScreenShowPixel(source: String) async { + try? await sendPixel(.pproFeedbackActionsScreenShow(source: source), + frequency: .dailyAndCount) + } + + func sendCategoryScreenShow(source: String, reportType: String) async { + try? await sendPixel(.pproFeedbackCategoryScreenShow(source: source, + reportType: ReportType.from(reportType)), + frequency: .dailyAndCount) + } + + func sendSubcategoryScreenShow(source: String, reportType: String, category: String) async { + try? await sendPixel(.pproFeedbackSubcategoryScreenShow(source: source, + reportType: ReportType.from(reportType), + category: Category.from(category)), + frequency: .dailyAndCount) + } + + func sendSubmitScreenFAQClickPixel(source: String, reportType: String, category: String, subcategory: String) async { + try? await sendPixel(.pproFeedbackSubmitScreenShow(source: source, + reportType: ReportType.from(reportType), + category: Category.from(category), + subcategory: Subcategory.from(subcategory)), + frequency: .dailyAndCount) + } + + static func additionalParameters(for pixel: Pixel.Event) -> [String: String] { + switch pixel { + case .pproFeedbackFeatureRequest(let description, let source): + return [ + "description": description, + "source": source, + ] + case .pproFeedbackGeneralFeedback(let description, let source): + return [ + "description": description, + "source": source, + ] + case .pproFeedbackReportIssue(let source, let category, let subcategory, let description, let metadata): + return [ + "description": description, + "source": source, + "category": category, + "subcategory": subcategory, + "customMetadata": metadata, + ] + case .pproFeedbackActionsScreenShow(let source): + return [ + "source": source, + ] + case .pproFeedbackCategoryScreenShow(let source, let reportType): + return [ + "source": source, + "reportType": reportType, + ] + case .pproFeedbackSubcategoryScreenShow(let source, let reportType, let category): + return [ + "source": source, + "reportType": reportType, + "category": category, + ] + case .pproFeedbackSubmitScreenShow(let source, let reportType, let category, let subcategory): + return [ + "source": source, + "reportType": reportType, + "category": category, + "subcategory": subcategory, + ] + case .pproFeedbackSubmitScreenFAQClick(let source, let reportType, let category, let subcategory): + return [ + "source": source, + "reportType": reportType, + "category": category, + "subcategory": subcategory, + ] + default: + return [:] + } + } +} diff --git a/DuckDuckGo/Subscription/Feedback/UnifiedMetadataCollector.swift b/DuckDuckGo/Subscription/Feedback/UnifiedMetadataCollector.swift new file mode 100644 index 0000000000..e6a0c25161 --- /dev/null +++ b/DuckDuckGo/Subscription/Feedback/UnifiedMetadataCollector.swift @@ -0,0 +1,43 @@ +// +// UnifiedMetadataCollector.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Foundation + +protocol UnifiedMetadataCollector { + associatedtype Metadata: UnifiedFeedbackMetadata + + func collectMetadata() async -> Metadata? +} + +protocol UnifiedFeedbackMetadata: Encodable { + func toBase64() -> String +} + +extension UnifiedFeedbackMetadata { + func toBase64() -> String { + let encoder = JSONEncoder() + + do { + let encodedMetadata = try encoder.encode(self) + return encodedMetadata.base64EncodedString() + } catch { + return "Failed to encode metadata to JSON, error message: \(error.localizedDescription)" + } + } +} diff --git a/DuckDuckGo/Subscription/ViewModel/SubscriptionSettingsViewModel.swift b/DuckDuckGo/Subscription/ViewModel/SubscriptionSettingsViewModel.swift index fd1669a311..55d1fdbd25 100644 --- a/DuckDuckGo/Subscription/ViewModel/SubscriptionSettingsViewModel.swift +++ b/DuckDuckGo/Subscription/ViewModel/SubscriptionSettingsViewModel.swift @@ -23,6 +23,7 @@ import StoreKit import Subscription import Core import os.log +import BrowserServicesKit final class SubscriptionSettingsViewModel: ObservableObject { @@ -66,12 +67,15 @@ final class SubscriptionSettingsViewModel: ObservableObject { // Read only View State - Should only be modified from the VM @Published private(set) var state: State - - init(subscriptionManager: SubscriptionManager = AppDependencyProvider.shared.subscriptionManager) { + public let usesUnifiedFeedbackForm: Bool + + init(subscriptionManager: SubscriptionManager = AppDependencyProvider.shared.subscriptionManager, + subscriptionFeatureAvailability: SubscriptionFeatureAvailability = AppDependencyProvider.shared.subscriptionFeatureAvailability) { self.subscriptionManager = subscriptionManager let subscriptionFAQURL = subscriptionManager.url(for: .faq) let learnMoreURL = subscriptionFAQURL.appendingPathComponent("adding-email") self.state = State(faqURL: subscriptionFAQURL, learnMoreURL: learnMoreURL) + self.usesUnifiedFeedbackForm = subscriptionManager.accountManager.isUserAuthenticated && subscriptionFeatureAvailability.usesUnifiedFeedbackForm setupNotificationObservers() } diff --git a/DuckDuckGo/Subscription/Views/SubscriptionSettingsView.swift b/DuckDuckGo/Subscription/Views/SubscriptionSettingsView.swift index 328fd45455..149456cee1 100644 --- a/DuckDuckGo/Subscription/Views/SubscriptionSettingsView.swift +++ b/DuckDuckGo/Subscription/Views/SubscriptionSettingsView.swift @@ -195,18 +195,18 @@ struct SubscriptionSettingsView: View { } @ViewBuilder var helpSection: some View { - Section(header: Text(UserText.subscriptionHelpAndSupport), - footer: Text(UserText.subscriptionFAQFooter)) { - - SettingsCustomCell(content: { - Text(UserText.subscriptionFAQ) - .daxBodyRegular() - .foregroundColor(Color(designSystemColor: .accent)) - }, - action: { viewModel.displayFAQView(true) }, - disclosureIndicator: false, - isButton: true) - + if viewModel.usesUnifiedFeedbackForm { + Section { + faqButton + supportButton + } header: { + Text(UserText.subscriptionHelpAndSupport) + } + } else { + Section(header: Text(UserText.subscriptionHelpAndSupport), + footer: Text(UserText.subscriptionFAQFooter)) { + faqButton + } } } @@ -221,6 +221,27 @@ struct SubscriptionSettingsView: View { disclosureIndicator: false, isButton: true) } + + } + + @ViewBuilder + private var faqButton: some View { + SettingsCustomCell(content: { + Text(UserText.subscriptionFAQ) + .daxBodyRegular() + .foregroundColor(Color(designSystemColor: .accent)) + }, + action: { viewModel.displayFAQView(true) }, + disclosureIndicator: false, + isButton: true) + } + + @ViewBuilder + private var supportButton: some View { + let viewModel = UnifiedFeedbackFormViewModel(vpnMetadataCollector: DefaultVPNMetadataCollector(), source: .ppro) + NavigationLink(UserText.subscriptionFeedback, destination: UnifiedFeedbackRootView(viewModel: viewModel)) + .daxBodyRegular() + .foregroundColor(.init(designSystemColor: .textPrimary)) } @ViewBuilder diff --git a/DuckDuckGo/SyncSettingsViewController.swift b/DuckDuckGo/SyncSettingsViewController.swift index 25ff94a2ed..69b5a6b4a0 100644 --- a/DuckDuckGo/SyncSettingsViewController.swift +++ b/DuckDuckGo/SyncSettingsViewController.swift @@ -23,6 +23,7 @@ import Combine import SyncUI import DDGSync import Common +import os.log @MainActor class SyncSettingsViewController: UIHostingController { @@ -273,7 +274,7 @@ class SyncSettingsViewController: UIHostingController { mapDevices(devices) } catch { // Not displaying error since there is the spinner and it is called every few seconds - os_log(error.localizedDescription, log: .syncLog, type: .error) + Logger.sync.error("Error: \(error.localizedDescription, privacy: .public)") } } } diff --git a/DuckDuckGo/TabDelegate.swift b/DuckDuckGo/TabDelegate.swift index ccc15e1ebe..701386d5e6 100644 --- a/DuckDuckGo/TabDelegate.swift +++ b/DuckDuckGo/TabDelegate.swift @@ -93,4 +93,7 @@ protocol TabDelegate: AnyObject { func tab(_ tab: TabViewController, didRequestLoadURL url: URL) func tab(_ tab: TabViewController, didRequestLoadQuery query: String) + + func tabDidRequestRefresh(tab: TabViewController) + func tabDidRequestNavigationToDifferentSite(tab: TabViewController) } diff --git a/DuckDuckGo/TabManager.swift b/DuckDuckGo/TabManager.swift index 3b1b0f2568..41f5f695b6 100644 --- a/DuckDuckGo/TabManager.swift +++ b/DuckDuckGo/TabManager.swift @@ -24,6 +24,7 @@ import WebKit import BrowserServicesKit import Persistence import History +import os.log class TabManager { @@ -39,6 +40,7 @@ class TabManager { private var privacyProDataReporter: PrivacyProDataReporting private let contextualOnboardingPresenter: ContextualOnboardingPresenting private let contextualOnboardingLogic: ContextualOnboardingLogic + private let onboardingPixelReporter: OnboardingPixelReporting weak var delegate: TabDelegate? @@ -54,7 +56,8 @@ class TabManager { duckPlayer: DuckPlayer = DuckPlayer(), privacyProDataReporter: PrivacyProDataReporting, contextualOnboardingPresenter: ContextualOnboardingPresenting, - contextualOnboardingLogic: ContextualOnboardingLogic) { + contextualOnboardingLogic: ContextualOnboardingLogic, + onboardingPixelReporter: OnboardingPixelReporting) { self.model = model self.previewsSource = previewsSource self.bookmarksDatabase = bookmarksDatabase @@ -64,6 +67,7 @@ class TabManager { self.privacyProDataReporter = privacyProDataReporter self.contextualOnboardingPresenter = contextualOnboardingPresenter self.contextualOnboardingLogic = contextualOnboardingLogic + self.onboardingPixelReporter = onboardingPixelReporter registerForNotifications() } @@ -83,7 +87,8 @@ class TabManager { duckPlayer: duckPlayer, privacyProDataReporter: privacyProDataReporter, contextualOnboardingPresenter: contextualOnboardingPresenter, - contextualOnboardingLogic: contextualOnboardingLogic) + contextualOnboardingLogic: contextualOnboardingLogic, + onboardingPixelReporter: onboardingPixelReporter) controller.applyInheritedAttribution(inheritedAttribution) controller.attachWebView(configuration: configuration, andLoadRequest: url == nil ? nil : URLRequest.userInitiated(url!), @@ -101,7 +106,7 @@ class TabManager { if let controller = controller(for: tab) { return controller } else if createIfNeeded { - os_log("Tab not in cache, creating", log: .generalLog, type: .debug) + Logger.general.debug("Tab not in cache, creating") let controller = buildController(forTab: tab, inheritedAttribution: nil) tabControllerCache.append(controller) return controller @@ -159,7 +164,8 @@ class TabManager { duckPlayer: duckPlayer, privacyProDataReporter: privacyProDataReporter, contextualOnboardingPresenter: contextualOnboardingPresenter, - contextualOnboardingLogic: contextualOnboardingLogic) + contextualOnboardingLogic: contextualOnboardingLogic, + onboardingPixelReporter: onboardingPixelReporter) controller.attachWebView(configuration: configCopy, andLoadRequest: request, consumeCookies: !model.hasActiveTabs, diff --git a/DuckDuckGo/TabSwitcherViewController.swift b/DuckDuckGo/TabSwitcherViewController.swift index 733612070e..5256e21bc9 100644 --- a/DuckDuckGo/TabSwitcherViewController.swift +++ b/DuckDuckGo/TabSwitcherViewController.swift @@ -24,6 +24,7 @@ import DDGSync import WebKit import Bookmarks import Persistence +import os.log class TabSwitcherViewController: UIViewController { @@ -223,7 +224,7 @@ class TabSwitcherViewController: UIViewController { ActionMessageView.present(message: UserText.bookmarkAllTabsSaved) } else { let failedToSaveCount = openTabsCount - results.newCount - results.existingCount - os_log("Failed to save %d tabs", log: .generalLog, type: .debug, failedToSaveCount) + Logger.general.debug("Failed to save \(failedToSaveCount) tabs") ActionMessageView.present(message: UserText.bookmarkAllTabsFailedToSave) } } diff --git a/DuckDuckGo/TabViewController.swift b/DuckDuckGo/TabViewController.swift index 8275e7d1e2..340294715f 100644 --- a/DuckDuckGo/TabViewController.swift +++ b/DuckDuckGo/TabViewController.swift @@ -37,6 +37,7 @@ import SecureStorage import History import ContentScopeScripts import NetworkProtection +import os.log class TabViewController: UIViewController { @@ -192,7 +193,10 @@ class TabViewController: UIViewController { didSet { updateTabModel() delegate?.tabLoadingStateDidChange(tab: self) - historyCapture.titleDidChange(title, forURL: url) + if let url { + let finalURL = duckPlayerNavigationHandler?.getDuckURLFor(url) + historyCapture.titleDidChange(title, forURL: finalURL) + } } } @@ -225,8 +229,9 @@ class TabViewController: UIViewController { guard let url = url else { return tabModel.link } - - let activeLink = Link(title: title, url: url) + + let finalURL = duckPlayerNavigationHandler?.getDuckURLFor(url) ?? url + let activeLink = Link(title: title, url: finalURL) guard let storedLink = tabModel.link else { return activeLink } @@ -298,7 +303,7 @@ class TabViewController: UIViewController { privacyProDataReporter: PrivacyProDataReporting, contextualOnboardingPresenter: ContextualOnboardingPresenting, contextualOnboardingLogic: ContextualOnboardingLogic, - onboardingPixelReporter: OnboardingCustomInteractionPixelReporting = OnboardingPixelReporter()) -> TabViewController { + onboardingPixelReporter: OnboardingCustomInteractionPixelReporting) -> TabViewController { let storyboard = UIStoryboard(name: "Tab", bundle: nil) let controller = storyboard.instantiateViewController(identifier: "TabViewController", creator: { coder in TabViewController(coder: coder, @@ -349,7 +354,8 @@ class TabViewController: UIViewController { self.syncService = syncService self.duckPlayer = duckPlayer if let duckPlayer { - self.duckPlayerNavigationHandler = DuckPlayerNavigationHandler(duckPlayer: duckPlayer) + self.duckPlayerNavigationHandler = DuckPlayerNavigationHandler(duckPlayer: duckPlayer, + appSettings: appSettings) } self.privacyProDataReporter = privacyProDataReporter self.contextualOnboardingPresenter = contextualOnboardingPresenter @@ -571,6 +577,7 @@ class TabViewController: UIViewController { refreshControl.addAction(UIAction { [weak self] _ in guard let self else { return } reload() + delegate?.tabDidRequestRefresh(tab: self) Pixel.fire(pixel: .pullToRefresh) AppDependencyProvider.shared.userBehaviorMonitor.handleRefreshAction() }, for: .valueChanged) @@ -700,7 +707,7 @@ class TabViewController: UIViewController { title = webView.title default: - os_log("Unhandled keyPath %s", log: .generalLog, type: .debug, keyPath) + Logger.general.debug("Unhandled keyPath \(keyPath)") } } @@ -796,9 +803,15 @@ class TabViewController: UIViewController { if let url = url, url.isDuckPlayer { webView.stopLoading() - duckPlayerNavigationHandler?.handleGoBack(webView: webView) - chromeDelegate?.omniBar.resignFirstResponder() - return + if webView.canGoBack { + duckPlayerNavigationHandler?.handleGoBack(webView: webView) + chromeDelegate?.omniBar.resignFirstResponder() + return + } + if openingTab != nil { + delegate?.tabDidRequestClose(self) + return + } } if isError { @@ -1200,7 +1213,8 @@ extension TabViewController: WKNavigationDelegate { func webView(_ webView: WKWebView, didCommit navigation: WKNavigation!) { if let url = webView.url { - historyCapture.webViewDidCommit(url: url) + let finalURL = duckPlayerNavigationHandler?.getDuckURLFor(url) ?? url + historyCapture.webViewDidCommit(url: finalURL) instrumentation.willLoad(url: url) } @@ -1211,7 +1225,7 @@ extension TabViewController: WKNavigationDelegate { } private func onWebpageDidStartLoading(httpsForced: Bool) { - os_log("webpageLoading started", log: .generalLog, type: .debug) + Logger.general.debug("webpageLoading started") // Only fire when on the same page that the without trackers Dax Dialog was shown self.fireWoFollowUp = false @@ -1361,7 +1375,7 @@ extension TabViewController: WKNavigationDelegate { } private func onWebpageDidFinishLoading() { - os_log("webpageLoading finished", log: .generalLog, type: .debug) + Logger.general.debug("webpageLoading finished") tabModel.link = link delegate?.tabLoadingStateDidChange(tab: self) @@ -1482,7 +1496,7 @@ extension TabViewController: WKNavigationDelegate { } private func webpageDidFailToLoad() { - os_log("webpageLoading failed", log: .generalLog, type: .debug) + Logger.general.debug("webpageLoading failed") if isError { showBars(animated: true) privacyInfo = nil @@ -1600,6 +1614,10 @@ extension TabViewController: WKNavigationDelegate { refreshCountSinceLoad = 0 } + if navigationAction.navigationType != .reload, webView.url != navigationAction.request.mainDocumentURL { + delegate?.tabDidRequestNavigationToDifferentSite(tab: self) + } + // This check needs to happen before GPC checks. Otherwise the navigation type may be rewritten to `.other` // which would skip link rewrites. if navigationAction.navigationType != .backForward, @@ -2787,7 +2805,7 @@ extension TabViewController: SaveLoginViewControllerDelegate { NotificationCenter.default.post(name: .autofillSaveEvent, object: nil) } catch { - os_log("%: failed to store credentials %s", type: .error, #function, error.localizedDescription) + Logger.general.error("failed to store credentials: \(error.localizedDescription, privacy: .public)") } } @@ -2809,7 +2827,7 @@ extension TabViewController: SaveLoginViewControllerDelegate { } } } catch { - os_log("%: failed to fetch credentials %s", type: .error, #function, error.localizedDescription) + Logger.general.error("failed to fetch credentials: \(error.localizedDescription, privacy: .public)") } } @@ -2837,7 +2855,7 @@ extension TabViewController: SaveLoginViewControllerDelegate { do { _ = try autofillNeverPromptWebsitesManager.saveNeverPromptWebsite(domain) } catch { - os_log("%: failed to save never prompt for website %s", type: .error, #function, error.localizedDescription) + Logger.general.error("failed to save never prompt for website: \(error.localizedDescription, privacy: .public)") } } diff --git a/DuckDuckGo/TabViewControllerLongPressMenuExtension.swift b/DuckDuckGo/TabViewControllerLongPressMenuExtension.swift index ca74e93fa2..cfaea37efb 100644 --- a/DuckDuckGo/TabViewControllerLongPressMenuExtension.swift +++ b/DuckDuckGo/TabViewControllerLongPressMenuExtension.swift @@ -109,7 +109,8 @@ extension TabViewController { duckPlayer: duckPlayer, privacyProDataReporter: privacyProDataReporter, contextualOnboardingPresenter: contextualOnboardingPresenter, - contextualOnboardingLogic: contextualOnboardingLogic) + contextualOnboardingLogic: contextualOnboardingLogic, + onboardingPixelReporter: onboardingPixelReporter) tabController.isLinkPreview = true let configuration = WKWebViewConfiguration.nonPersistent() tabController.attachWebView(configuration: configuration, andLoadRequest: URLRequest.userInitiated(url), consumeCookies: false) diff --git a/DuckDuckGo/TabsModelPersistenceExtension.swift b/DuckDuckGo/TabsModelPersistenceExtension.swift index a7a046b890..df815e5fce 100644 --- a/DuckDuckGo/TabsModelPersistenceExtension.swift +++ b/DuckDuckGo/TabsModelPersistenceExtension.swift @@ -19,7 +19,7 @@ import Foundation import Core -import Common +import os.log extension TabsModel { @@ -40,7 +40,7 @@ extension TabsModel { throw error } } catch { - os_log("Something went wrong unarchiving TabsModel %@", log: .generalLog, type: .error, error.localizedDescription) + Logger.general.error("Something went wrong unarchiving TabsModel \(error.localizedDescription, privacy: .public)") } return tabsModel } @@ -54,7 +54,7 @@ extension TabsModel { let data = try NSKeyedArchiver.archivedData(withRootObject: self, requiringSecureCoding: false) UserDefaults.app.set(data, forKey: Constants.key) } catch { - os_log("Something went wrong archiving TabsModel %@", log: .generalLog, type: .error, error.localizedDescription) + Logger.general.error("Something went wrong archiving TabsModel: \(error.localizedDescription, privacy: .public)") } } } diff --git a/DuckDuckGo/UserAuthenticator.swift b/DuckDuckGo/UserAuthenticator.swift index 2c29616776..b49310c02c 100644 --- a/DuckDuckGo/UserAuthenticator.swift +++ b/DuckDuckGo/UserAuthenticator.swift @@ -21,6 +21,7 @@ import Common import Foundation import LocalAuthentication import Core +import os.log class UserAuthenticator { enum AuthError: Error, Equatable { @@ -75,7 +76,7 @@ class UserAuthenticator { self?.state = .loggedIn completion?(nil) } else { - os_log("Failed to authenticate: %s", log: .generalLog, type: .debug, error?.localizedDescription ?? "nil error") + Logger.general.error("Failed to authenticate: \(error?.localizedDescription ?? "nil", privacy: .public)") completion?(.failedToAuthenticate) } } diff --git a/DuckDuckGo/UserBehaviorMonitor.swift b/DuckDuckGo/UserBehaviorMonitor.swift index a2edd56c7c..4d905cbdd5 100644 --- a/DuckDuckGo/UserBehaviorMonitor.swift +++ b/DuckDuckGo/UserBehaviorMonitor.swift @@ -21,6 +21,25 @@ import Foundation import Common import Core +public extension Notification.Name { + + static let userBehaviorDidMatchBrokenSiteCriteria = Notification.Name("com.duckduckgo.app.userBehaviorDidMatchBrokenSiteCriteria") + +} + +public enum UserBehaviorEvent: String { + + public enum Key { + + static let event = "com.duckduckgo.com.userBehaviorEvent.key" + + } + + case reloadTwiceWithin12Seconds = "reload-twice-within-12-seconds" + case reloadThreeTimesWithin20Seconds = "reload-three-times-within-20-seconds" + +} + protocol UserBehaviorStoring { var didRefreshTimestamp: Date? { get set } @@ -42,13 +61,6 @@ final class UserBehaviorStore: UserBehaviorStoring { } -public enum UserBehaviorEvent: String { - - case reloadTwiceWithin12Seconds = "reload-twice-within-12-seconds" - case reloadThreeTimesWithin20Seconds = "reload-three-times-within-20-seconds" - -} - final class UserBehaviorMonitor { enum Action: Equatable { @@ -97,6 +109,9 @@ final class UserBehaviorMonitor { func fireEventIfActionOccurredRecently(within interval: Double = 30.0, since timestamp: Date?, eventToFire: UserBehaviorEvent) { if let timestamp = timestamp, date.timeIntervalSince(timestamp) < interval { eventMapping.fire(eventToFire) + NotificationCenter.default.post(name: .userBehaviorDidMatchBrokenSiteCriteria, + object: self, + userInfo: [UserBehaviorEvent.Key.event: eventToFire]) } } } diff --git a/DuckDuckGo/UserText.swift b/DuckDuckGo/UserText.swift index 6890fb7b30..31e83f13d1 100644 --- a/DuckDuckGo/UserText.swift +++ b/DuckDuckGo/UserText.swift @@ -565,6 +565,27 @@ public struct UserText { static let inviteDialogErrorAlertOKButton = NSLocalizedString("invite.alert.ok.button", value: "OK", comment: "OK title for invite screen alert dismissal button") // MARK: - Feedback Form + static let pproFeedbackFormTitle = NSLocalizedString("ppro.feedback-form.title", value: "Send Feedback", comment: "Title for the Privacy Pro feedback form") + static let pproFeedbackFormReportProblemTitle = NSLocalizedString("ppro.feedback-form.report-problem.title", value: "Report a Problem", comment: "Title for the Report a Problem step in the Privacy Pro feedback form") + static let pproFeedbackFormGeneralFeedbackTitle = NSLocalizedString("ppro.feedback-form.general-feedback.title", value: "General Feedback", comment: "Title for the General Feedback step in the Privacy Pro feedback form") + static let pproFeedbackFormRequestFeatureTitle = NSLocalizedString("ppro.feedback-form.request-feature.title", value: "Feature Request", comment: "Title for the Feature Request step in the Privacy Pro feedback form") + static let pproFeedbackFormSelectCategoryTitle = NSLocalizedString("ppro.feedback-form.select-category.title", value: "Select a category", comment: "Title for the category selection section in the Privacy Pro feedback form") + static let pproFeedbackFormTextBoxTitle = NSLocalizedString("ppro.feedback-form.text-box.title", value: "Feedback", comment: "Title for the text box in the Privacy Pro feedback form") + static let pproFeedbackFormReportPProProblemTitle = NSLocalizedString("ppro.feedback-form.report-ppro-problem.title", value: "Subscriptions and Payments", comment: "Title for the Subscriptions and Payments category in the Privacy Pro feedback form") + static let pproFeedbackFormReportVPNProblemTitle = NSLocalizedString("ppro.feedback-form.report-vpn-problem.title", value: "VPN", comment: "Title for the VPN category in the Privacy Pro feedback form") + static let pproFeedbackFormReportPIRProblemTitle = NSLocalizedString("ppro.feedback-form.report-pir-problem.title", value: "Personal Information Removal", comment: "Title for the PIR category in the Privacy Pro feedback form") + static let pproFeedbackFormReportITRProblemTitle = NSLocalizedString("ppro.feedback-form.report-itr-problem.title", value: "Identity Theft Restoration", comment: "Title for the ITR category in the Privacy Pro feedback form") + + static let pproFeedbackFormReportProblemPlaceholder = NSLocalizedString("ppro.feedback-form.report-problem.placeholder", value: "Tell us what's going on…", comment: "Placeholder for the Report a Problem step in the Privacy Pro feedback form") + static let pproFeedbackFormGeneralFeedbackPlaceholder = NSLocalizedString("ppro.feedback-form.general-feedback.placeholder", value: "Please give us your feedback…", comment: "Placeholder for the General Feedback step in the Privacy Pro feedback form") + static let pproFeedbackFormRequestFeaturePlaceholder = NSLocalizedString("ppro.feedback-form.request-feature.placeholder", value: "What feature would you like to see?", comment: "Placeholder for the Feature Request step in the Privacy Pro feedback form") + + static let pproFeedbackFormText1 = NSLocalizedString("ppro.feedback-form.text-1", value: "Found an issue not covered in our [help center](duck://)? We definitely want to know about it.", comment: "Text for the body of the PPro feedback form") + static let pproFeedbackFormText2 = NSLocalizedString("ppro.feedback-form.text-2", value: "In addition to the details entered above, we send some anonymized info with your feedback:", comment: "Text for the body of the PPro feedback form") + static let pproFeedbackFormText3 = NSLocalizedString("ppro.feedback-form.text-3", value: "• Whether some browser features are active", comment: "Bullet text for the body of the PPro feedback form") + static let pproFeedbackFormText4 = NSLocalizedString("ppro.feedback-form.text-4", value: "• Aggregate app diagnostics (e.g., error codes)", comment: "Bullet text for the body of the PPro feedback form") + static let pproFeedbackFormText5 = NSLocalizedString("ppro.feedback-form.text-5", value: "By tapping \"Submit\" you agree that DuckDuckGo may use information submitted to improve the app.", comment: "Text for the body of the PPro feedback form") + static let vpnFeedbackFormTitle = NSLocalizedString("vpn.feedback-form.title", value: "Help Improve the DuckDuckGo VPN", comment: "Title for each screen of the VPN feedback form") static let vpnFeedbackFormCategorySelect = NSLocalizedString("vpn.feedback-form.category.select-category", value: "Select a category", comment: "Title for the category selection state of the VPN feedback form") static let vpnFeedbackFormCategoryUnableToInstall = NSLocalizedString("vpn.feedback-form.category.unable-to-install", value: "Unable to install VPN", comment: "Title for the 'unable to install' category of the VPN feedback form") @@ -598,6 +619,32 @@ public struct UserText { static let vpnAccessRevokedAlertActionSubscribe = NSLocalizedString("vpn.access-revoked.alert.action.subscribe", value: "Subscribe", comment: "Primary action for the alert when the subscription expires") static let vpnAccessRevokedAlertActionCancel = NSLocalizedString("vpn.access-revoked.alert.action.cancel", value: "Dismiss", comment: "Cancel action for the alert when the subscription expires") + // MARK: Unified Feedback Form + static let browserFeedbackReportProblem = NSLocalizedString("send.browser.feedback.report-problem", value: "Report a problem", comment: "Name of the option the user can chose to give browser feedback about a problem they enountered") + static let browserFeedbackRequestFeature = NSLocalizedString("send.browser.feedback.request-feature", value: "Request a feature", comment: "Name of the option the user can chose to give browser feedback about a feature they would like") + static let browserFeedbackGeneralFeedback = NSLocalizedString("send.browser.feedback.general-feedback", value: "General feedback", comment: "Name of the option the user can chose to give general browser feedback") + static let browserFeedbackSelectCategory = NSLocalizedString("send.browser.feedback.select-category", value: "Select a category", comment: "Title of the picker where the user can chose the category of the feedback they want ot send.") + static let feedbackFormTitle = NSLocalizedString("feedback.form.title", value: "Help Improve Privacy Pro", comment: "Title of the feedback form") + static let generalFeedbackFormCategorySelect = NSLocalizedString("feedback.general.category.select", value: "Select a category", comment: "Prompt to select a category for general feedback") + static let generalFeedbackFormCategoryPPro = NSLocalizedString("feedback.general.category.ppro", value: "Subscription and Payments", comment: "Category for subscription and payments feedback") + static let generalFeedbackFormCategoryVPN = NSLocalizedString("feedback.general.category.vpn", value: "VPN", comment: "Category for VPN feedback") + static let generalFeedbackFormCategoryPIR = NSLocalizedString("feedback.general.category.pir", value: "Personal Info Removal", comment: "Category for Personal Info Removal feedback") + static let generalFeedbackFormCategoryITR = NSLocalizedString("feedback.general.category.itr", value: "Identity Theft Restoration", comment: "Category for Identity Theft Restoration feedback") + static let pproFeedbackFormCategorySelect = NSLocalizedString("feedback.ppro.category.select", value: "Select a category", comment: "Prompt to select a category for Privacy Pro feedback") + static let pproFeedbackFormCategoryOTP = NSLocalizedString("feedback.ppro.category.otp", value: "Issue with one-time password", comment: "Category for one-time password issues") + static let pproFeedbackFormCategoryOther = NSLocalizedString("feedback.ppro.category.other", value: "Something else", comment: "Category for other Privacy Pro issues") + static let pirFeedbackFormCategorySelect = NSLocalizedString("feedback.pir.category.select", value: "Select a category", comment: "Prompt to select a category for Personal Info Removal feedback") + static let pirFeedbackFormCategoryNothingOnSpecificSite = NSLocalizedString("feedback.pir.category.nothing-on-site", value: "The scan didn't find my info on a specific site", comment: "Category for when scan doesn't find info on a specific site") + static let pirFeedbackFormCategoryNotMe = NSLocalizedString("feedback.pir.category.not-me", value: "The scan found records which aren't me", comment: "Category for when scan finds incorrect records") + static let pirFeedbackFormCategoryScanStuck = NSLocalizedString("feedback.pir.category.scan-stuck", value: "The scan for records is stuck", comment: "Category for when the scan is stuck") + static let pirFeedbackFormCategoryRemovalStuck = NSLocalizedString("feedback.pir.category.removal-stuck", value: "The removal process is stuck", comment: "Category for when the removal process is stuck") + static let pirFeedbackFormCategoryOther = NSLocalizedString("feedback.pir.category.other", value: "Something else", comment: "Category for other Personal Info Removal issues") + static let itrFeedbackFormCategorySelect = NSLocalizedString("feedback.itr.category.select", value: "Select a category", comment: "Prompt to select a category for Identity Theft Restoration feedback") + static let itrFeedbackFormCategoryAccessCode = NSLocalizedString("feedback.itr.category.access-code", value: "Issue with access code", comment: "Category for access code issues") + static let itrFeedbackFormCategoryCantContactAdvisor = NSLocalizedString("feedback.itr.category.cant-contact-advisor", value: "Unable to contact advisor", comment: "Category for issues contacting an advisor") + static let itrFeedbackFormCategoryUnhelpful = NSLocalizedString("feedback.itr.category.unhelpful", value: "Call to Advisor was unhelpful", comment: "Category for unhelpful advisor calls") + static let itrFeedbackFormCategorySomethingElse = NSLocalizedString("feedback.itr.category.something-else", value: "Something else", comment: "Category for other Identity Theft Restoration issues") + // MARK: VPN Widget public static let vpnSettingsAddWidget = NSLocalizedString("vpn.settings.add.widget", value: "Add VPN Widget to Home Screen", comment: "VPN settings screen cell text for adding the VPN widget to the home screen") @@ -982,6 +1029,7 @@ But if you *do* want a peek under the hood, you can find more information about // Others public static let settingsAboutSection = NSLocalizedString("settings.about.section", value: "About", comment: "Settings section title for About DuckDuckGo") public static let settingsFeedback = NSLocalizedString("settings.feedback", value: "Share Feedback", comment: "Settings cell for Feedback") + public static let settingsBrowserFeedback = NSLocalizedString("settings.browser.feedback", value: "Browser Feedback", comment: "Settings cell for Browser Feedback") public static let duckduckgoOnOtherPlatforms = NSLocalizedString("settings.duckduckgo.on.other.platforms", value: "DuckDuckGo on Other Platforms", comment: "Settings cell to link users to other products by DuckDuckGo") // General Section @@ -1110,6 +1158,7 @@ But if you *do* want a peek under the hood, you can find more information about public static let subscriptionChangePlan = NSLocalizedString("subscription.change.plan", value: "Update Plan or Cancel", comment: "Change plan or cancel title") public static let subscriptionHelpAndSupport = NSLocalizedString("subscription.help", value: "Help and support", comment: "Help and support Section header") public static let subscriptionFAQ = NSLocalizedString("subscription.faq", value: "FAQs and Support", comment: "FAQ Button") + public static let subscriptionFeedback = NSLocalizedString("subscription.feedback", value: "Send Feedback", comment: "Send Feedback Button") public static let subscriptionFAQFooter = NSLocalizedString("subscription.faq.description", value: "Get answers to frequently asked questions or contact Privacy Pro support from our help pages.", comment: "FAQ Description") // Remove subscription confirmation @@ -1190,6 +1239,13 @@ But if you *do* want a peek under the hood, you can find more information about public static let autocompleteHistoryWarningDescription = NSLocalizedString("autocomplete.history.warning.message", value: "Search suggestions now include your recently visited sites. Turn off in Settings, or clear anytime with the 🔥 Fire Button.", comment: "The message text shown in suggestions") public static let autocompleteSearchDuckDuckGo = NSLocalizedString("autocomplete.history.search.duckduckgo", value: "Search DuckDuckGo", comment: "Subtitle for search history items") + // Site not working + public static let siteNotWorkingTitle = NSLocalizedString("site.not.working.title", value: "Site not working? Let DuckDuckGo know.", comment: "Prompt asking user to send report to us if we suspect site may be broken") + public static let siteNotWorkingSubtitle = NSLocalizedString("site.not.working.subtitle", value: "This helps us improve the browser.", comment: "Prompt asking user to send report to us if we suspect site may be broken") + public static let siteNotWorkingDismiss = NSLocalizedString("site.not.working.dismiss", value: "Dismiss", comment: "Dismiss button") + public static let siteNotWorkingWebsiteIsBroken = NSLocalizedString("site.not.working.website.is.broken", value: "Website Is Broken", comment: "Button that triggers flow to report broken site") + public static let siteNotWorkingDescription = NSLocalizedString("site.not.working.description", value: "Select the option that best describes the problem you experienced.", comment: "Description on a report broken site page.") + // Broken site report experiment public static let brokenSiteReportMenuTitle = NSLocalizedString("broken.site.report.menu.title", value: "Report Problem With This Site", comment: "Button to open report form") public static let brokenSiteReportSuccessToast = NSLocalizedString("broken.site.report.success.toast", value: "Your report helps make DuckDuckGo better for everyone!", comment: "Message that appears after submitting report") @@ -1211,10 +1267,10 @@ But if you *do* want a peek under the hood, you can find more information about public static let settingsOpenVideosInDuckPlayerTitle = NSLocalizedString("duckplayer.settings.title", value: "Duck Player", comment: "Settings screen cell text for DuckPlayer settings") public static let settingsDuckPlayerFooter = NSLocalizedString("duckplayer.settings.footer", value: "DuckDuckGo provides all the privacy essentials you need to protect yourself as you browse the web.", comment: "Footer label in the settings screen for Duck Player") public static let settingsDuckPlayerLearnMore = NSLocalizedString("duckplayer.settings.learn-more", value: "Learn More", comment: "Button that takes the user to learn more about Duck Player.") - public static let settingsDuckPlayerInfoText = NSLocalizedString("duckplayer.settings.info-text", value: "Duck Player provides a clean viewing experience without personalized ads and prevents viewing activity from influencing your YouTube recommendations.", comment: "Text explaining what Duck Player is in the settings screen.") + public static let settingsDuckPlayerInfoText = NSLocalizedString("duckplayer.settings.info-text", value: "Duck Player lets you watch YouTube without targeted ads in DuckDuckGo and what you watch won’t influence your recommendations.", comment: "Text explaining what Duck Player is in the settings screen.") - public static let duckPlayerPresentationModalTitle = NSLocalizedString("duckplayer.presentation.modal.title", value: "Drowning in ads on YouTube? Try Duck Player!", comment: "Two line title (separated by \n) for the feature explanation") - public static let duckPlayerPresentationModalBody = NSLocalizedString("duckplayer.presentation.modal.body", value: "Duck Player lets you watch YouTube without targeted ads in a theater-like experience in DuckDuckGo and what you watch won’t influence your recommendations.", comment: "Body text for the modal feature explanation") + public static let duckPlayerPresentationModalTitle = NSLocalizedString("duckplayer.presentation.modal.title", value: "Drowning in ads on YouTube? Not with Duck Player!", comment: "Two line title (separated by \n) for the feature explanation") + public static let duckPlayerPresentationModalBody = NSLocalizedString("duckplayer.presentation.modal.body", value: "Duck Player lets you watch YouTube without targeted ads in DuckDuckGo and what you watch won’t influence your recommendations.", comment: "Body text for the modal feature explanation") public static let duckPlayerPresentationModalDismissButton = NSLocalizedString("duckplayer.presentation.modal.dismiss-button", value: "Got it!", comment: "Button that will dismiss the modal") static let duckPlayerContingencyMessageTitle = NSLocalizedString("duck-player.contingency-title", value: "Duck Player Unavailable", comment: "Title for message explaining to the user that Duck Player is not available") diff --git a/DuckDuckGo/WebContainerViewController.swift b/DuckDuckGo/WebContainerViewController.swift index 439bf07385..28718b15b7 100644 --- a/DuckDuckGo/WebContainerViewController.swift +++ b/DuckDuckGo/WebContainerViewController.swift @@ -22,6 +22,7 @@ import Core import UIKit import WebKit import Networking +import os.log /// Use title property to set the displayed title class WebContainerViewController: UIViewController { @@ -85,7 +86,7 @@ class WebContainerViewController: UIViewController { progress = Float(webView?.estimatedProgress ?? 0.0) default: - os_log("Unhandled keyPath %s", log: .generalLog, type: .debug, keyPath) + Logger.general.debug("Unhandled keyPath \(keyPath)") } } diff --git a/DuckDuckGo/ZippedPassKitPreviewHelper.swift b/DuckDuckGo/ZippedPassKitPreviewHelper.swift index 0213ccc7d2..781f3e0a7a 100644 --- a/DuckDuckGo/ZippedPassKitPreviewHelper.swift +++ b/DuckDuckGo/ZippedPassKitPreviewHelper.swift @@ -22,6 +22,7 @@ import Foundation import UIKit import PassKit import ZIPFoundation +import os.log class ZippedPassKitPreviewHelper: FilePreview { private weak var viewController: UIViewController? @@ -39,10 +40,10 @@ class ZippedPassKitPreviewHelper: FilePreview { let controller = PKAddPassesViewController(passes: passes) { viewController?.present(controller, animated: true) } else { - os_log("Can't present passkit: No valid passes in passes file", type: .error) + Logger.general.error("Can't present passkit: No valid passes in passes file") } } catch { - os_log("Can't present passkit: %{public}s", type: .error, error.localizedDescription) + Logger.general.error("Can't present passkit: \(error.localizedDescription, privacy: .public)") } } diff --git a/DuckDuckGo/bg.lproj/Localizable.strings b/DuckDuckGo/bg.lproj/Localizable.strings index e6cd0d01ee..b24d3fad03 100644 --- a/DuckDuckGo/bg.lproj/Localizable.strings +++ b/DuckDuckGo/bg.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo автоматично блокира скритите тракери, докато сърфирате в мрежата.\n[Научете повече](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Изберете опцията, която най-добре описва възникналия проблем."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Отказване"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Това ни помага да подобрим браузъра."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Сайтът не работи ли? Уведомете DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Уебсайтът е повреден"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Изпращане на доклад"; diff --git a/DuckDuckGo/cs.lproj/Localizable.strings b/DuckDuckGo/cs.lproj/Localizable.strings index 2d36449518..c88c8a9ee1 100644 --- a/DuckDuckGo/cs.lproj/Localizable.strings +++ b/DuckDuckGo/cs.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo automaticky blokuje skryté trackery při procházení webu.\n[Více informací](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Vyber možnost, která nejlíp popisuje tvůj problém."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Odmítnout"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Pomáhá nám to vylepšovat prohlížeč."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Stránka nefunguje? Dej DuckDuckGo vědět."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Web nefunguje"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Odešlete zprávu"; diff --git a/DuckDuckGo/da.lproj/Localizable.strings b/DuckDuckGo/da.lproj/Localizable.strings index f2a2a102ab..9723f628c3 100644 --- a/DuckDuckGo/da.lproj/Localizable.strings +++ b/DuckDuckGo/da.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo blokerer automatisk skjulte trackere, når du surfer på nettet.\n[Læs mere](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Vælg den mulighed, der bedst beskriver det problem, du oplevede."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Afvis"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Det hjælper os med at forbedre browseren."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Virker webstedet ikke? Fortæl DuckDuckGo det."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Hvilket websted er ødelagt?"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Indsend rapport"; diff --git a/DuckDuckGo/de.lproj/Localizable.strings b/DuckDuckGo/de.lproj/Localizable.strings index 9c0995d1fa..1869fadf16 100644 --- a/DuckDuckGo/de.lproj/Localizable.strings +++ b/DuckDuckGo/de.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo blockiert beim Durchsuchen des Internets automatisch ausgeblendete Tracker.[Mehr erfahren](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Wähle die Option, die dein Problem am besten beschreibt."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Verwerfen"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Das hilft uns, den Browser zu verbessern."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Webseite funktioniert nicht? Sag DuckDuckGo Bescheid."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Website ist fehlerhaft"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Bericht senden"; diff --git a/DuckDuckGo/el.lproj/Localizable.strings b/DuckDuckGo/el.lproj/Localizable.strings index b57547101d..2f054dbab8 100644 --- a/DuckDuckGo/el.lproj/Localizable.strings +++ b/DuckDuckGo/el.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "Το DuckDuckGo αποκλείει αυτόματα κρυφές εφαρμογές παρακολούθησης καθώς περιηγείστε στο διαδίκτυο.\n[Μάθετε περισσότερα](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Επιλέξτε αυτό που περιγράφει καλύτερα το πρόβλημα που αντιμετωπίσατε."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Απόρριψη"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Αυτό μας βοηθά να βελτιώνουμε το πρόγραμμα περιήγησης."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Ο ιστότοπος δεν λειτουργεί; Ενημερώστε σχετικά το DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Ο ιστότοπος δεν λειτουργεί"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Υποβολή αναφοράς"; diff --git a/DuckDuckGo/en.lproj/Localizable.strings b/DuckDuckGo/en.lproj/Localizable.strings index b8e7ba707d..1ff95f6617 100644 --- a/DuckDuckGo/en.lproj/Localizable.strings +++ b/DuckDuckGo/en.lproj/Localizable.strings @@ -1002,19 +1002,19 @@ "duckPlayer.never.label" = "Never"; /* Body text for the modal feature explanation */ -"duckplayer.presentation.modal.body" = "Duck Player lets you watch YouTube without targeted ads in a theater-like experience in DuckDuckGo and what you watch won’t influence your recommendations."; +"duckplayer.presentation.modal.body" = "Duck Player lets you watch YouTube without targeted ads in DuckDuckGo and what you watch won’t influence your recommendations."; /* Button that will dismiss the modal */ "duckplayer.presentation.modal.dismiss-button" = "Got it!"; /* Two line title (separated by \n) for the feature explanation */ -"duckplayer.presentation.modal.title" = "Drowning in ads on YouTube? Try Duck Player!"; +"duckplayer.presentation.modal.title" = "Drowning in ads on YouTube? Not with Duck Player!"; /* Footer label in the settings screen for Duck Player */ "duckplayer.settings.footer" = "DuckDuckGo provides all the privacy essentials you need to protect yourself as you browse the web."; /* Text explaining what Duck Player is in the settings screen. */ -"duckplayer.settings.info-text" = "Duck Player provides a clean viewing experience without personalized ads and prevents viewing activity from influencing your YouTube recommendations."; +"duckplayer.settings.info-text" = "Duck Player lets you watch YouTube without targeted ads in DuckDuckGo and what you watch won’t influence your recommendations."; /* Button that takes the user to learn more about Duck Player. */ "duckplayer.settings.learn-more" = "Learn More"; @@ -1241,6 +1241,39 @@ /* Confirmation button */ "feedback.form.submit" = "Submit"; +/* Title of the feedback form */ +"feedback.form.title" = "Help Improve Privacy Pro"; + +/* Category for Identity Theft Restoration feedback */ +"feedback.general.category.itr" = "Identity Theft Restoration"; + +/* Category for Personal Info Removal feedback */ +"feedback.general.category.pir" = "Personal Info Removal"; + +/* Category for subscription and payments feedback */ +"feedback.general.category.ppro" = "Subscription and Payments"; + +/* Prompt to select a category for general feedback */ +"feedback.general.category.select" = "Select a category"; + +/* Category for VPN feedback */ +"feedback.general.category.vpn" = "VPN"; + +/* Category for access code issues */ +"feedback.itr.category.access-code" = "Issue with access code"; + +/* Category for issues contacting an advisor */ +"feedback.itr.category.cant-contact-advisor" = "Unable to contact advisor"; + +/* Prompt to select a category for Identity Theft Restoration feedback */ +"feedback.itr.category.select" = "Select a category"; + +/* Category for other Identity Theft Restoration issues */ +"feedback.itr.category.something-else" = "Something else"; + +/* Category for unhelpful advisor calls */ +"feedback.itr.category.unhelpful" = "Call to Advisor was unhelpful"; + /* No comment provided by engineer. */ "feedback.negative.form.genericPlaceholder" = "Please be as specific as possible"; @@ -1280,6 +1313,24 @@ /* No comment provided by engineer. */ "feedback.performance.slowLoading" = "Web pages or search results load slowly"; +/* Category for when scan finds incorrect records */ +"feedback.pir.category.not-me" = "The scan found records which aren't me"; + +/* Category for when scan doesn't find info on a specific site */ +"feedback.pir.category.nothing-on-site" = "The scan didn't find my info on a specific site"; + +/* Category for other Personal Info Removal issues */ +"feedback.pir.category.other" = "Something else"; + +/* Category for when the removal process is stuck */ +"feedback.pir.category.removal-stuck" = "The removal process is stuck"; + +/* Category for when the scan is stuck */ +"feedback.pir.category.scan-stuck" = "The scan for records is stuck"; + +/* Prompt to select a category for Personal Info Removal feedback */ +"feedback.pir.category.select" = "Select a category"; + /* Header above input field */ "feedback.positive.form.header" = "Share Details"; @@ -1298,6 +1349,15 @@ /* Button encouraging uses to share details aboout their feedback */ "feedback.positive.submit" = "Share Details"; +/* Category for other Privacy Pro issues */ +"feedback.ppro.category.other" = "Something else"; + +/* Category for one-time password issues */ +"feedback.ppro.category.otp" = "Issue with one-time password"; + +/* Prompt to select a category for Privacy Pro feedback */ +"feedback.ppro.category.select" = "Select a category"; + /* No comment provided by engineer. */ "feedback.start.footer" = "Your anonymous feedback is important to us."; @@ -1811,6 +1871,60 @@ https://duckduckgo.com/mac"; /* Deactivate button */ "pm.deactivate" = "Deactivate"; +/* Placeholder for the General Feedback step in the Privacy Pro feedback form */ +"ppro.feedback-form.general-feedback.placeholder" = "Please give us your feedback…"; + +/* Title for the General Feedback step in the Privacy Pro feedback form */ +"ppro.feedback-form.general-feedback.title" = "General Feedback"; + +/* Title for the ITR category in the Privacy Pro feedback form */ +"ppro.feedback-form.report-itr-problem.title" = "Identity Theft Restoration"; + +/* Title for the PIR category in the Privacy Pro feedback form */ +"ppro.feedback-form.report-pir-problem.title" = "Personal Information Removal"; + +/* Title for the Subscriptions and Payments category in the Privacy Pro feedback form */ +"ppro.feedback-form.report-ppro-problem.title" = "Subscriptions and Payments"; + +/* Placeholder for the Report a Problem step in the Privacy Pro feedback form */ +"ppro.feedback-form.report-problem.placeholder" = "Tell us what's going on…"; + +/* Title for the Report a Problem step in the Privacy Pro feedback form */ +"ppro.feedback-form.report-problem.title" = "Report a Problem"; + +/* Title for the VPN category in the Privacy Pro feedback form */ +"ppro.feedback-form.report-vpn-problem.title" = "VPN"; + +/* Placeholder for the Feature Request step in the Privacy Pro feedback form */ +"ppro.feedback-form.request-feature.placeholder" = "What feature would you like to see?"; + +/* Title for the Feature Request step in the Privacy Pro feedback form */ +"ppro.feedback-form.request-feature.title" = "Feature Request"; + +/* Title for the category selection section in the Privacy Pro feedback form */ +"ppro.feedback-form.select-category.title" = "Select a category"; + +/* Text for the body of the PPro feedback form */ +"ppro.feedback-form.text-1" = "Found an issue not covered in our [help center](duck://)? We definitely want to know about it."; + +/* Text for the body of the PPro feedback form */ +"ppro.feedback-form.text-2" = "In addition to the details entered above, we send some anonymized info with your feedback:"; + +/* Bullet text for the body of the PPro feedback form */ +"ppro.feedback-form.text-3" = "• Whether some browser features are active"; + +/* Bullet text for the body of the PPro feedback form */ +"ppro.feedback-form.text-4" = "• Aggregate app diagnostics (e.g., error codes)"; + +/* Text for the body of the PPro feedback form */ +"ppro.feedback-form.text-5" = "By tapping \"Submit\" you agree that DuckDuckGo may use information submitted to improve the app."; + +/* Title for the text box in the Privacy Pro feedback form */ +"ppro.feedback-form.text-box.title" = "Feedback"; + +/* Title for the Privacy Pro feedback form */ +"ppro.feedback-form.title" = "Send Feedback"; + /* Button title for sync bookmarks limits exceeded warning to go to manage bookmarks */ "prefrences.sync.bookmarks-limit-exceeded-action" = "Manage Bookmarks"; @@ -1897,6 +2011,18 @@ https://duckduckgo.com/mac"; /* No comment provided by engineer. */ "section.title.favorites" = "Favorites"; +/* Name of the option the user can chose to give general browser feedback */ +"send.browser.feedback.general-feedback" = "General feedback"; + +/* Name of the option the user can chose to give browser feedback about a problem they enountered */ +"send.browser.feedback.report-problem" = "Report a problem"; + +/* Name of the option the user can chose to give browser feedback about a feature they would like */ +"send.browser.feedback.request-feature" = "Request a feature"; + +/* Title of the picker where the user can chose the category of the feedback they want ot send. */ +"send.browser.feedback.select-category" = "Select a category"; + /* Settings cell for About DDG */ "settings.about.ddg" = "About DuckDuckGo"; @@ -1958,6 +2084,9 @@ But if you *do* want a peek under the hood, you can find more information about /* Section footer Autolock description */ "settings.autolock.description" = "If Touch ID, Face ID, or a system passcode is enabled, you'll be asked to unlock the app when opening it."; +/* Settings cell for Browser Feedback */ +"settings.browser.feedback" = "Browser Feedback"; + /* Settings screen cell text for Automatically Clearing Data */ "settings.clear.data" = "Automatically Clear Data"; @@ -2154,6 +2283,21 @@ But if you *do* want a peek under the hood, you can find more information about /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo automatically blocks hidden trackers as you browse the web.\n[Learn More](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Select the option that best describes the problem you experienced."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Dismiss"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "This helps us improve the browser."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Site not working? Let DuckDuckGo know."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Website Is Broken"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Submit Report"; @@ -2283,6 +2427,9 @@ But if you *do* want a peek under the hood, you can find more information about /* FAQ Description */ "subscription.faq.description" = "Get answers to frequently asked questions or contact Privacy Pro support from our help pages."; +/* Send Feedback Button */ +"subscription.feedback" = "Send Feedback"; + /* Cancel action for the existing subscription dialog */ "subscription.found.cancel" = "Cancel"; diff --git a/DuckDuckGo/es.lproj/Localizable.strings b/DuckDuckGo/es.lproj/Localizable.strings index 5203e6a4c2..cb64fdf438 100644 --- a/DuckDuckGo/es.lproj/Localizable.strings +++ b/DuckDuckGo/es.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo bloquea automáticamente los rastreadores ocultos mientras navegas por la web.\n[Más información](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Selecciona la opción que describa mejor el problema que has encontrado."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Descartar"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Esto nos ayuda a mejorar el navegador."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "¿El sitio no funciona? Házselo saber a DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "El sitio web no funciona"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Enviar informe"; diff --git a/DuckDuckGo/et.lproj/Localizable.strings b/DuckDuckGo/et.lproj/Localizable.strings index 5f848fe642..4a8183511d 100644 --- a/DuckDuckGo/et.lproj/Localizable.strings +++ b/DuckDuckGo/et.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo blokeerib automaatselt peidetud jälgijaid, kui sa veebis sirvid.\n[Lisateave](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Vali suvand, mis kirjeldab sinu probleemi kõige paremini."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Loobu"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "See aitab meil brauserit täiustada."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Kas sait ei tööta? Anna DuckDuckGole teada."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Veebisait ei toimi"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Saada aruanne"; diff --git a/DuckDuckGo/fi.lproj/Localizable.strings b/DuckDuckGo/fi.lproj/Localizable.strings index e01c98ffd8..0aa47d5962 100644 --- a/DuckDuckGo/fi.lproj/Localizable.strings +++ b/DuckDuckGo/fi.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo estää piilotetut seurantalaitteet automaattisesti, kun selaat verkkoa.\n[Lue lisää] (ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Valitse vaihtoehto, joka parhaiten kuvaa ongelmaa."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Hylkää"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Tämä auttaa meitä parantamaan selainta."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Eikö sivusto toimi? Kerro siitä DuckDuckGolle."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Verkkosivusto on viallinen"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Lähetä raportti"; diff --git a/DuckDuckGo/fr.lproj/Localizable.strings b/DuckDuckGo/fr.lproj/Localizable.strings index 2351b0185f..dc87903d43 100644 --- a/DuckDuckGo/fr.lproj/Localizable.strings +++ b/DuckDuckGo/fr.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo bloque automatiquement les traqueurs cachés lorsque vous naviguez sur le Web.\n[En savoir plus](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Sélectionnez l'option qui décrit le mieux le problème rencontré."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Ignorer"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Cela nous aide à améliorer le navigateur."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Le site ne fonctionne pas ? Faites-le savoir à DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Le site Web pose problème"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Envoyer le rapport"; diff --git a/DuckDuckGo/hr.lproj/Localizable.strings b/DuckDuckGo/hr.lproj/Localizable.strings index 993cc4fb5f..1620b236b5 100644 --- a/DuckDuckGo/hr.lproj/Localizable.strings +++ b/DuckDuckGo/hr.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo automatski blokira skrivene alate za praćenje dok pregledavaš web.\n[Saznaj više](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Odaberi opciju koja najbolje opisuje nastali problem."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Odbaci"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Ovo nam pomaže da poboljšamo preglednik."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Web-mjesto ne funkcionira? Javi DuckDuckGou."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Web-mjesto nije ispravno"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Pošalji izvješće"; diff --git a/DuckDuckGo/hu.lproj/Localizable.strings b/DuckDuckGo/hu.lproj/Localizable.strings index 8266a89f6b..3ccce65ff3 100644 --- a/DuckDuckGo/hu.lproj/Localizable.strings +++ b/DuckDuckGo/hu.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "A DuckDuckGo böngészés közben automatikusan blokkolja a rejtett nyomkövetőket.\n[További információ](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Válaszd ki azt a lehetőséget, amelyik a legjobban leírja a tapasztalt problémát."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Elutasítás"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Ez segít minket a böngésző tökéletesítésében."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Nem működik a webhely? Jelezd a DuckDuckGo felé."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Nem működik a webhely"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Jelentés beküldése"; diff --git a/DuckDuckGo/it.lproj/Localizable.strings b/DuckDuckGo/it.lproj/Localizable.strings index 87a6a0f375..f4d783f0a7 100644 --- a/DuckDuckGo/it.lproj/Localizable.strings +++ b/DuckDuckGo/it.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo blocca automaticamente i sistemi di tracciamento nascosti mentre navighi sul web.\n[Scopri di più](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Seleziona l'opzione che meglio descrive il problema riscontrato."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Ignora"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Questo ci aiuta a migliorare il browser."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Il sito non funziona? Comunicalo a DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Il sito web è danneggiato"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Invia segnalazione"; diff --git a/DuckDuckGo/lt.lproj/Localizable.strings b/DuckDuckGo/lt.lproj/Localizable.strings index df70502477..f03e569093 100644 --- a/DuckDuckGo/lt.lproj/Localizable.strings +++ b/DuckDuckGo/lt.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "„DuckDuckGo“ automatiškai blokuoja paslėptas stebėjimo priemones naršant internete.\n[Sužinokite daugiau](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Pasirinkite parinktį, kuri geriausiai apibūdina iškilusią problemą."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Atmesti"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Tai padeda mums tobulinti naršyklę."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Svetainė neveikia? Praneškite „DuckDuckGo“."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Svetainė neveikia"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Pateikti ataskaitą"; diff --git a/DuckDuckGo/lv.lproj/Localizable.strings b/DuckDuckGo/lv.lproj/Localizable.strings index 530cfcfd22..f39c616388 100644 --- a/DuckDuckGo/lv.lproj/Localizable.strings +++ b/DuckDuckGo/lv.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo automātiski bloķē slēptos izsekotājus, kad tu pārlūko tīmekli.\n[Uzzini vairāk](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Izvēlies atbilstošāko problēmas raksturojumu."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Nerādīt"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Tas mums palīdz uzlabot pārlūkprogrammu."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Vai vietne nedarbojas? Informē DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Vietne ir bojāta"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Iesniegt ziņojumu"; diff --git a/DuckDuckGo/nb.lproj/Localizable.strings b/DuckDuckGo/nb.lproj/Localizable.strings index b091a87a6c..f51e8f2186 100644 --- a/DuckDuckGo/nb.lproj/Localizable.strings +++ b/DuckDuckGo/nb.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo blokkerer automatisk skjulte sporere når du surfer på nettet.\n[Finn ut mer](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Velg alternativet som best beskriver problemet du opplevde."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Avvis"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Dette hjelper oss med å forbedre nettleseren."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Fungerer ikke nettstedet? Gi beskjed til DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Nettstedet fungerer ikke"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Send inn rapport"; diff --git a/DuckDuckGo/nl.lproj/Localizable.strings b/DuckDuckGo/nl.lproj/Localizable.strings index d94b9f99d2..6d251e0325 100644 --- a/DuckDuckGo/nl.lproj/Localizable.strings +++ b/DuckDuckGo/nl.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo blokkeert automatisch verborgen trackers terwijl je op het web surft.\n[Meer informatie](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Selecteer de optie die het beste je probleem beschrijft."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Negeren"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Hiermee kunnen we de browser verbeteren."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Werkt de site niet? Laat het DuckDuckGo weten."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "De website werkt niet"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Rapport versturen"; diff --git a/DuckDuckGo/pl.lproj/Localizable.strings b/DuckDuckGo/pl.lproj/Localizable.strings index 1aceb82edf..c0da19a27e 100644 --- a/DuckDuckGo/pl.lproj/Localizable.strings +++ b/DuckDuckGo/pl.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "Podczas przeglądania stron internetowych DuckDuckGo automatycznie blokuje ukryte mechanizmy śledzące.\n[Więcej informacji](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Wybierz opcję, która najlepiej opisuje napotkany problem."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Odrzuć"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "To pomaga nam ulepszyć przeglądarkę."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Witryna nie działa? Poinformuj DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Witryna nie działa poprawnie"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Prześlij raport"; diff --git a/DuckDuckGo/pt.lproj/Localizable.strings b/DuckDuckGo/pt.lproj/Localizable.strings index c1259e70c2..d1af80fe6c 100644 --- a/DuckDuckGo/pt.lproj/Localizable.strings +++ b/DuckDuckGo/pt.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "O DuckDuckGo bloqueia automaticamente os rastreadores ocultos enquanto navegas na Internet.\n[Sabe Mais](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Seleciona a opção que melhor descreve o problema que enfrentaste."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Ignorar"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Isto ajuda-nos a melhorar o navegador."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "O site não funciona? Informa o DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "O site não funciona"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Submeter relatório"; diff --git a/DuckDuckGo/ro.lproj/Localizable.strings b/DuckDuckGo/ro.lproj/Localizable.strings index 89150ebf85..afe11d9134 100644 --- a/DuckDuckGo/ro.lproj/Localizable.strings +++ b/DuckDuckGo/ro.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo blochează automat tehnologiile de urmărire ascunse în timp ce navighezi pe web.\n[Află mai multe](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Selectează opțiunea care descrie cel mai bine problema cu care te-ai confruntat."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Renunță"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Acest lucru ne ajută să îmbunătățim browserul."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Site-ul nu funcționează? Anunță DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Site-ul este nefuncțional"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Trimite raportul"; diff --git a/DuckDuckGo/ru.lproj/Localizable.strings b/DuckDuckGo/ru.lproj/Localizable.strings index 7db8e05c56..4edde8327d 100644 --- a/DuckDuckGo/ru.lproj/Localizable.strings +++ b/DuckDuckGo/ru.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo автоматически блокирует скрытые трекеры, пока вы посещаете сайты.\n[Подробнее...](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Выберите наиболее точное описание проблемы, с которой вы столкнулись."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Отклонить"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Ваш ответ поможет нам улучшить работу браузера."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Сайт не работает? Сообщите в DuckDuckGo!"; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Проблема на сайте"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Отправить жалобу"; diff --git a/DuckDuckGo/sk.lproj/Localizable.strings b/DuckDuckGo/sk.lproj/Localizable.strings index 000ddccf8c..381ca14e91 100644 --- a/DuckDuckGo/sk.lproj/Localizable.strings +++ b/DuckDuckGo/sk.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo automaticky blokuje skryté sledovacie zariadenia pri prehliadaní webu.\n[Viac informácií](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Vyberte možnosť, ktorá najlepšie opisuje problém, ktorý ste zaznamenali."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Odmietnuť"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Toto nám pomáha vylepšiť prehliadač."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Stránka nefunguje? Oznámte to DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Webová stránka je nefunkčná"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Odoslať správu"; diff --git a/DuckDuckGo/sl.lproj/Localizable.strings b/DuckDuckGo/sl.lproj/Localizable.strings index 542813fc2d..57f52491dc 100644 --- a/DuckDuckGo/sl.lproj/Localizable.strings +++ b/DuckDuckGo/sl.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo samodejno blokira skrite sledilnike med brskanjem po spletu.\n[Več o tem](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Izberite možnost, ki najbolje opisuje težavo, na katero ste naleteli."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Opusti"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "To nam pomaga izboljšati brskalnik."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Stran ne deluje? Sporočite DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Spletna stran je nedelujoča"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Pošlji poročilo"; diff --git a/DuckDuckGo/sv.lproj/Localizable.strings b/DuckDuckGo/sv.lproj/Localizable.strings index ab80647dfa..a9ba80de93 100644 --- a/DuckDuckGo/sv.lproj/Localizable.strings +++ b/DuckDuckGo/sv.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo blockerar automatiskt dolda spårare när du surfar på webben.\n[Läs mer](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Välj det alternativ som bäst beskriver det problem som du har stött på."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Avvisa"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Det hjälper oss att förbättra webbläsaren."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Fungerar inte webbplatsen? Informera DuckDuckGo."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Webbplatsen fungerar inte"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Skicka in rapport"; diff --git a/DuckDuckGo/tr.lproj/Localizable.strings b/DuckDuckGo/tr.lproj/Localizable.strings index e6a3cd7bc5..8b8d2f53a7 100644 --- a/DuckDuckGo/tr.lproj/Localizable.strings +++ b/DuckDuckGo/tr.lproj/Localizable.strings @@ -2170,6 +2170,21 @@ /* Explanation in Settings how the web tracking protection feature works */ "settings.web.tracking.protection.explanation" = "DuckDuckGo, web'de gezinirken gizli izleyicileri otomatik olarak engeller.\n[Daha Fazla Bilgi](ddgQuickLink://duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/)"; +/* Description on a report broken site page. */ +"site.not.working.description" = "Karşılaştığınız sorunu en iyi tanımlayan seçeneği seçin."; + +/* Dismiss button */ +"site.not.working.dismiss" = "Reddet"; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.subtitle" = "Bu gibi bildirimler tarayıcıyı geliştirmemize yardımcı olur."; + +/* Prompt asking user to send report to us if we suspect site may be broken */ +"site.not.working.title" = "Site çalışmıyor mu? DuckDuckGo'ya bildirin."; + +/* Button that triggers flow to report broken site */ +"site.not.working.website.is.broken" = "Web Sitesi Bozuk"; + /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Rapor Gönder"; diff --git a/DuckDuckGoTests/AutofillLoginListViewModelTests.swift b/DuckDuckGoTests/AutofillLoginListViewModelTests.swift index b32d8bcbe9..e3debfceef 100644 --- a/DuckDuckGoTests/AutofillLoginListViewModelTests.swift +++ b/DuckDuckGoTests/AutofillLoginListViewModelTests.swift @@ -448,7 +448,9 @@ class AutofillLoginListViewModelTests: XCTestCase { XCTAssertFalse(model.shouldShowBreakageReporter()) } - func testWhenBreakageReporterConfigEnabledAndReportAlreadyRecentlySavedThenShowBreakageReporterIsFalse() { + func testWhenBreakageReporterConfigEnabledAndReportAlreadyRecentlySavedThenShowBreakageReporterIsFalse() throws { + throw XCTSkip("Flakey test") + let testDomain = "testDomain.com" let currentTabUrl = URL(string: "https://\(testDomain)") diff --git a/DuckDuckGoTests/BrokenSitePromptLimiterTests.swift b/DuckDuckGoTests/BrokenSitePromptLimiterTests.swift new file mode 100644 index 0000000000..c83836915c --- /dev/null +++ b/DuckDuckGoTests/BrokenSitePromptLimiterTests.swift @@ -0,0 +1,82 @@ +// +// BrokenSitePromptLimiterTests.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import XCTest +import BrowserServicesKit +@testable import DuckDuckGo +@testable import Core + +final class MockBrokenSitePromptLimiterStore: BrokenSitePromptLimiterStoring { + var lastToastShownDate: Date = .distantPast + var toastDismissStreakCounter: Int = 0 +} + +final class BrokenSitePromptLimiterTests: XCTestCase { + + let configManager = PrivacyConfigurationManagerMock() + var brokenSiteLimiter: BrokenSitePromptLimiter! + var mockStore: MockBrokenSitePromptLimiterStore! + + override func setUp() { + super.setUp() + + (configManager.privacyConfig as? PrivacyConfigurationMock)?.enabledFeaturesForVersions[.brokenSitePrompt] = [AppVersionProvider().appVersion() ?? ""] + + mockStore = MockBrokenSitePromptLimiterStore() + brokenSiteLimiter = BrokenSitePromptLimiter(privacyConfigManager: configManager, store: mockStore) + } + + func testShouldNotShowPromptIfConfigDisabled() throws { + (configManager.privacyConfig as? PrivacyConfigurationMock)?.enabledFeaturesForVersions[.brokenSitePrompt] = [] + XCTAssertFalse(brokenSiteLimiter.shouldShowToast(), "Toast should not show if disabled via config") + } + + func testShouldShowPromptOnFirstActivationThenLimit() throws { + XCTAssertTrue(brokenSiteLimiter.shouldShowToast(), "Toast should show on first activation") + brokenSiteLimiter.didShowToast() + XCTAssertFalse(brokenSiteLimiter.shouldShowToast(), "Subsequent call should not show toast due to limiting logic") + } + + func testShouldShowPromptAgainAfter7days() throws { + XCTAssertTrue(brokenSiteLimiter.shouldShowToast(), "Toast should show on first activation") + brokenSiteLimiter.didShowToast() + XCTAssertFalse(brokenSiteLimiter.shouldShowToast(), "Subsequent call should not show toast due to limiting logic") + mockStore.lastToastShownDate = Date().addingTimeInterval(-7 * 24 * 60 * 60 - 1) + XCTAssertTrue(brokenSiteLimiter.shouldShowToast(), "Toast should show again after 7 days") + } + + func testShouldNotShowPromptAfter3Dismissals() throws { + brokenSiteLimiter.didDismissToast() + brokenSiteLimiter.didDismissToast() + brokenSiteLimiter.didDismissToast() + // Set last date 7 days back so the toast shows but doesn't reset dismiss counter + mockStore.lastToastShownDate = Date().addingTimeInterval(-7 * 24 * 60 * 60 - 1) + XCTAssertFalse(brokenSiteLimiter.shouldShowToast(), "Toast should not show again after 3 dismissals") + } + + func testShouldResetDismissCounterAfter30Days() throws { + brokenSiteLimiter.didDismissToast() + brokenSiteLimiter.didDismissToast() + brokenSiteLimiter.didDismissToast() + XCTAssert(mockStore.toastDismissStreakCounter == 3, "Dismiss count should be equal to 3 after 3 dismiss calls") + XCTAssertTrue(brokenSiteLimiter.shouldShowToast(), "Toast should show after resetting counter") + XCTAssert(mockStore.toastDismissStreakCounter == 0, "Dismiss count should be reset to 0 after 30 days") + } + +} diff --git a/DuckDuckGoTests/BrokenSiteReportingTests.swift b/DuckDuckGoTests/BrokenSiteReportingTests.swift index 3c515cf373..a99c8b8f1f 100644 --- a/DuckDuckGoTests/BrokenSiteReportingTests.swift +++ b/DuckDuckGoTests/BrokenSiteReportingTests.swift @@ -88,7 +88,7 @@ final class BrokenSiteReportingTests: XCTestCase { return } - os_log("Testing [%s]", type: .info, test.name) + print("Testing [%s]", test.name) var errors: [Error]? if let errs = test.errorDescriptions { diff --git a/DuckDuckGoTests/ContextualOnboardingPresenterTests.swift b/DuckDuckGoTests/ContextualOnboardingPresenterTests.swift index 31780c5876..ff95a620aa 100644 --- a/DuckDuckGoTests/ContextualOnboardingPresenterTests.swift +++ b/DuckDuckGoTests/ContextualOnboardingPresenterTests.swift @@ -22,6 +22,18 @@ import SwiftUI @testable import DuckDuckGo final class ContextualOnboardingPresenterTests: XCTestCase { + private var contextualDaxDialogsFactory: ExperimentContextualDaxDialogsFactory! + + override func setUpWithError() throws { + contextualDaxDialogsFactory = ExperimentContextualDaxDialogsFactory(contextualOnboardingLogic: DaxDialogs.shared, contextualOnboardingPixelReporter: OnboardingPixelReporterMock()) + try super.setUpWithError() + } + + override func tearDownWithError() throws { + contextualDaxDialogsFactory = nil + try super.tearDownWithError() + } + func testWhenPresentContextualOnboardingAndVariantDoesNotSupportOnboardingIntroThenOldContextualOnboardingIsPresented() throws { // GIVEN @@ -29,7 +41,7 @@ final class ContextualOnboardingPresenterTests: XCTestCase { variantManagerMock.isSupportedBlock = { feature in feature != .newOnboardingIntro } - let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock) + let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock, daxDialogsFactory: contextualDaxDialogsFactory) let parent = TabViewControllerMock() XCTAssertFalse(parent.didCallPerformSegue) XCTAssertNil(parent.capturedSegueIdentifier) @@ -51,7 +63,7 @@ final class ContextualOnboardingPresenterTests: XCTestCase { variantManagerMock.isSupportedBlock = { feature in feature == .newOnboardingIntro } - let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock) + let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock, daxDialogsFactory: contextualDaxDialogsFactory) let parent = TabViewControllerMock() XCTAssertFalse(parent.didCallAddChild) XCTAssertNil(parent.capturedChild) @@ -71,7 +83,7 @@ final class ContextualOnboardingPresenterTests: XCTestCase { feature == .newOnboardingIntro } let appSettings = AppSettingsMock() - let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock, appSettings: appSettings) + let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock, daxDialogsFactory: contextualDaxDialogsFactory, appSettings: appSettings) let parent = TabViewControllerMock() // WHEN @@ -90,7 +102,7 @@ final class ContextualOnboardingPresenterTests: XCTestCase { } let appSettings = AppSettingsMock() appSettings.currentAddressBarPosition = .bottom - let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock, appSettings: appSettings) + let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock, daxDialogsFactory: contextualDaxDialogsFactory, appSettings: appSettings) let parent = TabViewControllerMock() // WHEN @@ -108,7 +120,7 @@ final class ContextualOnboardingPresenterTests: XCTestCase { variantManagerMock.isSupportedBlock = { feature in feature == .newOnboardingIntro } - let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock) + let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock, daxDialogsFactory: contextualDaxDialogsFactory) let parent = TabViewControllerMock() let daxController = DaxContextualOnboardingControllerMock() daxController.removeFromParentExpectation = expectation @@ -136,7 +148,7 @@ final class ContextualOnboardingPresenterTests: XCTestCase { variantManagerMock.isSupportedBlock = { feature in feature != .newOnboardingIntro } - let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock) + let sut = ContextualOnboardingPresenter(variantManager: variantManagerMock, daxDialogsFactory: contextualDaxDialogsFactory) let parent = TabViewControllerMock() let daxController = DaxContextualOnboardingControllerMock() daxController.removeFromParentExpectation = expectation diff --git a/DuckDuckGoTests/DaxDialogTests.swift b/DuckDuckGoTests/DaxDialogTests.swift index 3f112a8db7..5e1a3e2e73 100644 --- a/DuckDuckGoTests/DaxDialogTests.swift +++ b/DuckDuckGoTests/DaxDialogTests.swift @@ -819,6 +819,21 @@ final class DaxDialog: XCTestCase { XCTAssertFalse(result) } + func testWhenExperimentGroup_AndBrowserWithTrackersShown_AndFireButtonPulseActive_ThenDoNotShowPrivacyAnimationPulse() { + // GIVEN + let settings = InMemoryDaxDialogsSettings() + settings.browsingWithTrackersShown = true + settings.privacyButtonPulseShown = false + let sut = makeExperimentSUT(settings: settings) + sut.fireButtonPulseStarted() + + // WHEN + let result = sut.shouldShowPrivacyButtonPulse + + // THEN + XCTAssertFalse(result) + } + func testWhenExperimentGroup_AndCallSetPrivacyButtonPulseSeen_ThenSetPrivacyButtonPulseShownFlagToTrue() { // GIVEN let settings = InMemoryDaxDialogsSettings() @@ -931,6 +946,62 @@ final class DaxDialog: XCTestCase { XCTAssertFalse(sut.isAddFavoriteFlow) } + func testWhenExperimentGroup_AndBlockedTrackersDialogSeen_AndMajorTrackerNotSeen_ThenReturnNilSpec() { + // GIVEN + let settings = InMemoryDaxDialogsSettings() + settings.browsingWithTrackersShown = true + settings.browsingMajorTrackingSiteShown = false + let sut = makeExperimentSUT(settings: settings) + + // WHEN + let result = sut.nextBrowsingMessageIfShouldShow(for: makePrivacyInfo(url: URLs.facebook)) + + // THEN + XCTAssertNil(result) + } + + func testWhenExperimentGroup_AndBlockedTrackersDialogNotSeen_AndMajorTrackerNotSeen_ThenReturnMajorNetworkSpec() { + // GIVEN + let settings = InMemoryDaxDialogsSettings() + settings.browsingWithTrackersShown = false + settings.browsingMajorTrackingSiteShown = false + let sut = makeExperimentSUT(settings: settings) + + // WHEN + let result = sut.nextBrowsingMessageIfShouldShow(for: makePrivacyInfo(url: URLs.facebook)) + + // THEN + XCTAssertEqual(result?.type, .siteIsMajorTracker) + } + + func testWhenExperimentGroup_AndBlockedTrackersDialogSeen_AndOwnedByMajorTrackerNotSeen_ThenReturnNilSpec() { + // GIVEN + let settings = InMemoryDaxDialogsSettings() + settings.browsingWithTrackersShown = true + settings.browsingMajorTrackingSiteShown = false + let sut = makeExperimentSUT(settings: settings) + + // WHEN + let result = sut.nextBrowsingMessageIfShouldShow(for: makePrivacyInfo(url: URLs.ownedByFacebook)) + + // THEN + XCTAssertNil(result) + } + + func testWhenExperimentGroup_AndBlockedTrackersDialogNotSeen_AndOwnedByMajorTrackerNotSeen_ThenReturnOwnedByMajorNetworkSpec() { + // GIVEN + let settings = InMemoryDaxDialogsSettings() + settings.browsingWithTrackersShown = false + settings.browsingMajorTrackingSiteShown = false + let sut = makeExperimentSUT(settings: settings) + + // WHEN + let result = sut.nextBrowsingMessageIfShouldShow(for: makePrivacyInfo(url: URLs.ownedByFacebook)) + + // THEN + XCTAssertEqual(result?.type, .siteOwnedByMajorTracker) + } + private func detectedTrackerFrom(_ url: URL, pageUrl: String) -> DetectedRequest { let entity = entityProvider.entity(forHost: url.host!) return DetectedRequest(url: url.absoluteString, diff --git a/DuckDuckGoTests/DomainMatchingReportTests.swift b/DuckDuckGoTests/DomainMatchingReportTests.swift index bc2fa040af..3e1a04ec09 100644 --- a/DuckDuckGoTests/DomainMatchingReportTests.swift +++ b/DuckDuckGoTests/DomainMatchingReportTests.swift @@ -23,6 +23,7 @@ import XCTest import Foundation import BrowserServicesKit import Common +import os.log class DomainMatchingReportTests: XCTestCase { private var data = JsonTestDataLoader() @@ -41,10 +42,10 @@ class DomainMatchingReportTests: XCTestCase { for test in tests { let skip = test.exceptPlatforms?.contains("ios-browser") if skip == true { - os_log("!!SKIPPING TEST: %s", test.name) + print("!!SKIPPING TEST: %s", test.name) continue } - os_log("TEST: %s", test.name) + print("TEST: %s", test.name) let tracker = resolver.trackerFromUrl(test.requestURL, pageUrlString: test.siteURL, diff --git a/DuckDuckGoTests/DomainMatchingTests.swift b/DuckDuckGoTests/DomainMatchingTests.swift index 7a797fb43e..7587895b26 100644 --- a/DuckDuckGoTests/DomainMatchingTests.swift +++ b/DuckDuckGoTests/DomainMatchingTests.swift @@ -65,10 +65,10 @@ class DomainMatchingTests: XCTestCase { for test in tests { let skip = test.exceptPlatforms?.contains("ios-browser") if skip == true { - os_log("!!SKIPPING TEST: %s", test.name) + print("!!SKIPPING TEST: %s", test.name) continue } - os_log("TEST: %s", test.name) + print("TEST: %s", test.name) let requestURL = URL(string: test.requestURL) let siteURL = URL(string: test.siteURL) let requestType = ContentBlockerRulesBuilder.resourceMapping[test.requestType] diff --git a/DuckDuckGoTests/DuckPlayerMocks.swift b/DuckDuckGoTests/DuckPlayerMocks.swift index 10946ef060..38da508d06 100644 --- a/DuckDuckGoTests/DuckPlayerMocks.swift +++ b/DuckDuckGoTests/DuckPlayerMocks.swift @@ -95,6 +95,7 @@ final class MockDuckPlayerSettings: DuckPlayerSettingsProtocol { var mode: DuckPlayerMode = .disabled var askModeOverlayHidden: Bool = false + var allowFirstVideo: Bool = false init(appSettings: AppSettings = AppSettingsMock(), privacyConfigManager: any BrowserServicesKit.PrivacyConfigurationManaging) {} func triggerNotification() {} @@ -103,7 +104,7 @@ final class MockDuckPlayerSettings: DuckPlayerSettingsProtocol { self.mode = mode } - func setOverlayHidden(_ overlayHidden: Bool) { + func setAskModeOverlayHidden(_ overlayHidden: Bool) { self.askModeOverlayHidden = overlayHidden } diff --git a/DuckDuckGoTests/FireButtonReferenceTests.swift b/DuckDuckGoTests/FireButtonReferenceTests.swift index e37c970d27..95fe1ea718 100644 --- a/DuckDuckGoTests/FireButtonReferenceTests.swift +++ b/DuckDuckGoTests/FireButtonReferenceTests.swift @@ -52,7 +52,7 @@ final class FireButtonReferenceTests: XCTestCase { for site in testData.fireButtonFireproofing.fireproofedSites { let sanitizedSite = sanitizedSite(site) - os_log("Adding %s to fireproofed sites", sanitizedSite) + print("Adding %s to fireproofed sites", sanitizedSite) preservedLogins.addToAllowed(domain: sanitizedSite) } @@ -96,7 +96,7 @@ final class FireButtonReferenceTests: XCTestCase { for site in testData.fireButtonFireproofing.fireproofedSites { let sanitizedSite = sanitizedSite(site) - os_log("Adding %s to fireproofed sites", sanitizedSite) + print("Adding %s to fireproofed sites", sanitizedSite) preservedLogins.addToAllowed(domain: sanitizedSite) } diff --git a/DuckDuckGoTests/MockPixelFiring.swift b/DuckDuckGoTests/MockPixelFiring.swift index ca37898710..5794dbe0b5 100644 --- a/DuckDuckGoTests/MockPixelFiring.swift +++ b/DuckDuckGoTests/MockPixelFiring.swift @@ -20,19 +20,26 @@ import Foundation import Core -final actor PixelFiringMock: PixelFiring, PixelFiringAsync { +struct PixelInfo { + let pixel: Pixel.Event? + let params: [String: String]? + let includedParams: [Pixel.QueryParameters]? +} + +final actor PixelFiringMock: PixelFiring, PixelFiringAsync, DailyPixelFiring { static var expectedFireError: Error? - static var lastParams: [String: String]? - static var lastPixel: Pixel.Event? - static var lastIncludedParams: [Pixel.QueryParameters]? - + static var lastPixelInfo: PixelInfo? + static var lastDailyPixelInfo: PixelInfo? + + static var lastParams: [String: String]? { lastPixelInfo?.params } + static var lastPixel: Pixel.Event? { lastPixelInfo?.pixel } + static var lastIncludedParams: [Pixel.QueryParameters]? { lastPixelInfo?.includedParams } + static func fire(pixel: Pixel.Event, withAdditionalParameters params: [String: String], includedParameters: [Pixel.QueryParameters]) async throws { - lastParams = params - lastPixel = pixel - lastIncludedParams = includedParameters + lastPixelInfo = PixelInfo(pixel: pixel, params: params, includedParams: includedParameters) if let expectedFireError { throw expectedFireError @@ -43,9 +50,7 @@ final actor PixelFiringMock: PixelFiring, PixelFiringAsync { withAdditionalParameters params: [String: String], includedParameters: [Pixel.QueryParameters], onComplete: @escaping (Error?) -> Void) { - lastParams = params - lastPixel = pixel - lastIncludedParams = includedParameters + lastPixelInfo = PixelInfo(pixel: pixel, params: params, includedParams: includedParameters) if let expectedFireError { onComplete(expectedFireError) @@ -54,14 +59,20 @@ final actor PixelFiringMock: PixelFiring, PixelFiringAsync { static func fire(_ pixel: Pixel.Event, withAdditionalParameters params: [String: String]) { - lastParams = params - lastPixel = pixel + lastPixelInfo = PixelInfo(pixel: pixel, params: params, includedParams: nil) + } + + static func fireDaily(_ pixel: Pixel.Event) { + lastDailyPixelInfo = PixelInfo(pixel: pixel, params: nil, includedParams: nil) + } + + static func fireDaily(_ pixel: Pixel.Event, withAdditionalParameters params: [String: String]) { + lastDailyPixelInfo = PixelInfo(pixel: pixel, params: params, includedParams: nil) } static func tearDown() { - lastParams = nil - lastPixel = nil - lastIncludedParams = nil + lastPixelInfo = nil + lastDailyPixelInfo = nil expectedFireError = nil } diff --git a/DuckDuckGoTests/MockTabDelegate.swift b/DuckDuckGoTests/MockTabDelegate.swift index e271e41a6c..0c87db3e7b 100644 --- a/DuckDuckGoTests/MockTabDelegate.swift +++ b/DuckDuckGoTests/MockTabDelegate.swift @@ -109,6 +109,10 @@ final class MockTabDelegate: TabDelegate { capturedQuery = query } + func tabDidRequestRefresh(tab: DuckDuckGo.TabViewController) {} + + func tabDidRequestNavigationToDifferentSite(tab: DuckDuckGo.TabViewController) {} + } extension TabViewController { diff --git a/DuckDuckGoTests/NetworkProtectionStatusViewModelTests.swift b/DuckDuckGoTests/NetworkProtectionStatusViewModelTests.swift index fda6f82929..47428ed53d 100644 --- a/DuckDuckGoTests/NetworkProtectionStatusViewModelTests.swift +++ b/DuckDuckGoTests/NetworkProtectionStatusViewModelTests.swift @@ -44,7 +44,8 @@ final class NetworkProtectionStatusViewModelTests: XCTestCase { settings: VPNSettings(defaults: .networkProtectionGroupDefaults), statusObserver: statusObserver, serverInfoObserver: serverInfoObserver, - locationListRepository: MockNetworkProtectionLocationListRepository()) + locationListRepository: MockNetworkProtectionLocationListRepository(), + usesUnifiedFeedbackForm: false) } override func tearDown() { diff --git a/DuckDuckGoTests/NewTabPageFavoritesModelTests.swift b/DuckDuckGoTests/NewTabPageFavoritesModelTests.swift new file mode 100644 index 0000000000..8e4aff669b --- /dev/null +++ b/DuckDuckGoTests/NewTabPageFavoritesModelTests.swift @@ -0,0 +1,112 @@ +// +// NewTabPageFavoritesModelTests.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import XCTest +import Bookmarks +import BrowserServicesKit +@testable import DuckDuckGo + +final class NewTabPageFavoritesModelTests: XCTestCase { + private let favoritesListInteracting = MockFavoritesListInteracting() + + override func tearDown() { + PixelFiringMock.tearDown() + } + + func testFiresPixelWhenExpandingList() { + let sut = createSUT() + + XCTAssertTrue(sut.isCollapsed) + sut.toggleCollapse() + + XCTAssertEqual(PixelFiringMock.lastPixel, .newTabPageFavoritesSeeMore) + } + + func testFiresPixelWhenCollapsingList() { + let sut = createSUT() + + sut.toggleCollapse() + + XCTAssertFalse(sut.isCollapsed) + sut.toggleCollapse() + + XCTAssertEqual(PixelFiringMock.lastPixel, .newTabPageFavoritesSeeLess) + } + + func testFiresPixelsOnFavoriteSelected() { + let sut = createSUT() + + sut.favoriteSelected(Favorite(id: "", title: "", domain: "", urlObject: URL(string: "https://foo.bar"))) + + XCTAssertEqual(PixelFiringMock.lastPixel, .favoriteLaunchedNTP) + XCTAssertEqual(PixelFiringMock.lastDailyPixelInfo?.pixel, .favoriteLaunchedNTPDaily) + } + + func testFiresPixelOnFavoriteDeleted() { + let bookmark = createStubBookmark() + favoritesListInteracting.favorites = [bookmark] + + let sut = createSUT() + + sut.deleteFavorite(Favorite(id: bookmark.uuid!, title: "", domain: "")) + + XCTAssertEqual(PixelFiringMock.lastPixel, .homeScreenDeleteFavorite) + } + + func testFiresPixelOnFavoriteEdited() { + let bookmark = createStubBookmark() + favoritesListInteracting.favorites = [bookmark] + + let sut = createSUT() + + sut.editFavorite(Favorite(id: bookmark.uuid!, title: "", domain: "")) + + XCTAssertEqual(PixelFiringMock.lastPixel, .homeScreenEditFavorite) + } + + func testFiresPixelOnTappingPlaceholder() { + let sut = createSUT() + + sut.placeholderTapped() + + XCTAssertEqual(PixelFiringMock.lastPixel, .newTabPageFavoritesPlaceholderTapped) + } + + func testFiresPixelOnShowingTooltip() { + let sut = createSUT() + + XCTAssertFalse(sut.isShowingTooltip) + sut.toggleTooltip() + + XCTAssertEqual(PixelFiringMock.lastPixel, .newTabPageFavoritesInfoTooltip) + } + + private func createStubBookmark() -> BookmarkEntity { + let bookmarksDB = MockBookmarksDatabase.make() + let context = bookmarksDB.makeContext(concurrencyType: .mainQueueConcurrencyType) + let root = BookmarkUtils.fetchRootFolder(context)! + return BookmarkEntity.makeBookmark(title: "foo", url: "", parent: root, context: context) + } + + private func createSUT() -> FavoritesDefaultModel { + FavoritesDefaultModel(interactionModel: favoritesListInteracting, + pixelFiring: PixelFiringMock.self, + dailyPixelFiring: PixelFiringMock.self) + } +} diff --git a/DuckDuckGoTests/NewTabPageModelTests.swift b/DuckDuckGoTests/NewTabPageModelTests.swift index 283cca4dd4..bf71f38f22 100644 --- a/DuckDuckGoTests/NewTabPageModelTests.swift +++ b/DuckDuckGoTests/NewTabPageModelTests.swift @@ -24,6 +24,10 @@ final class NewTabPageModelTests: XCTestCase { let appSettings = AppSettingsMock() + override func tearDown() { + PixelFiringMock.tearDown() + } + func testDoesNotShowIntroIfSettingUndefined() { let sut = NewTabPageModel(appSettings: appSettings) @@ -51,11 +55,35 @@ final class NewTabPageModelTests: XCTestCase { appSettings.newTabPageIntroMessageEnabled = true let sut = NewTabPageModel(appSettings: appSettings) - for i in 1...3 { - sut.increaseIntroMessageCounter() + for _ in 1...3 { + sut.introMessageDisplayed() } XCTAssertTrue(sut.isIntroMessageVisible) // We want to keep the message visible on last occurence XCTAssertEqual(appSettings.newTabPageIntroMessageEnabled, false) } + + func testFiresPixelWhenIntroMessageDismissed() { + let sut = NewTabPageModel(pixelFiring: PixelFiringMock.self) + + sut.dismissIntroMessage() + + XCTAssertEqual(.newTabPageMessageDismissed, PixelFiringMock.lastPixel) + } + + func testFiresPixelWhenIntroMessageDisplayed() { + let sut = NewTabPageModel(pixelFiring: PixelFiringMock.self) + + sut.introMessageDisplayed() + + XCTAssertEqual(.newTabPageMessageDisplayed, PixelFiringMock.lastPixel) + } + + func testFiresPixelOnNewTabPageCustomize() { + let sut = NewTabPageModel(pixelFiring: PixelFiringMock.self) + + sut.customizeNewTabPage() + + XCTAssertEqual(.newTabPageCustomize, PixelFiringMock.lastPixel) + } } diff --git a/DuckDuckGoTests/NewTabPageSectionsSettingsModelTests.swift b/DuckDuckGoTests/NewTabPageSectionsSettingsModelTests.swift new file mode 100644 index 0000000000..4a7fa31fae --- /dev/null +++ b/DuckDuckGoTests/NewTabPageSectionsSettingsModelTests.swift @@ -0,0 +1,71 @@ +// +// NewTabPageSectionsSettingsModelTests.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import XCTest +@testable import DuckDuckGo + +final class NewTabPageSectionsSettingsModelTests: XCTestCase { + + override func tearDown() { + PixelFiringMock.tearDown() + } + + func testFiresPixelWhenItemEnabled() { + let sut = createSUT() + + let setting = sut.itemsSettings.first { setting in + setting.item == .favorites + } + + setting?.isEnabled.wrappedValue = true + + XCTAssertEqual(PixelFiringMock.lastPixel, .newTabPageCustomizeSectionOn("favorites")) + } + + func testFiresPixelWhenItemDisabled() { + let sut = createSUT() + + let setting = sut.itemsSettings.first { setting in + setting.item == .favorites + } + + setting?.isEnabled.wrappedValue = false + + XCTAssertEqual(PixelFiringMock.lastPixel, .newTabPageCustomizeSectionOff("favorites")) + } + + func testFiresPixelWhenItemReordered() { + let sut = createSUT() + + sut.moveItems(from: IndexSet(integer: 0), to: 1) + + XCTAssertEqual(PixelFiringMock.lastPixel, .newTabPageSectionReordered) + } + + private func createSUT() -> NewTabPageSectionsSettingsModel { + let storage = NewTabPageSectionsSettingsStorage( + appSettings: AppSettingsMock(), + keyPath: \.newTabPageSectionsSettings, + defaultOrder: NewTabPageSection.allCases, + defaultEnabledItems: NewTabPageSection.allCases + ) + + return NewTabPageSectionsSettingsModel(storage: storage, pixelFiring: PixelFiringMock.self) + } +} diff --git a/DuckDuckGoTests/NewTabPageShortcutsSettingsModelTests.swift b/DuckDuckGoTests/NewTabPageShortcutsSettingsModelTests.swift new file mode 100644 index 0000000000..463dc48c07 --- /dev/null +++ b/DuckDuckGoTests/NewTabPageShortcutsSettingsModelTests.swift @@ -0,0 +1,73 @@ +// +// NewTabPageShortcutsSettingsModelTests.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import XCTest +import BrowserServicesKit + +@testable import DuckDuckGo + +final class NewTabPageShortcutsSettingsModelTests: XCTestCase { + + override func tearDown() { + PixelFiringMock.tearDown() + } + + func testFiresPixelWhenItemEnabled() throws { + let sut = createSUT() + + let passwordsSettings = try XCTUnwrap(sut.itemsSettings.first { setting in + setting.item == .passwords + }) + + passwordsSettings.isEnabled.wrappedValue = true + + XCTAssertEqual(PixelFiringMock.lastPixel, .newTabPageCustomizeShortcutAdded("passwords")) + } + + func testFiresPixelWhenItemDisabled() throws { + let sut = createSUT() + + let passwordsSettings = try XCTUnwrap(sut.itemsSettings.first { setting in + setting.item == .passwords + }) + + passwordsSettings.isEnabled.wrappedValue = false + + XCTAssertEqual(PixelFiringMock.lastPixel, .newTabPageCustomizeShortcutRemoved("passwords")) + } + + private func createSUT() -> NewTabPageShortcutsSettingsModel { + let storage = NewTabPageShortcutsSettingsStorage( + appSettings: AppSettingsMock(), + keyPath: \.newTabPageShortcutsSettings, + defaultOrder: NewTabPageShortcut.allCases, + defaultEnabledItems: NewTabPageShortcut.allCases + ) + + return NewTabPageShortcutsSettingsModel(storage: storage, + featureFlagger: AlwaysTrueFeatureFlagger(), + pixelFiring: PixelFiringMock.self) + } +} + +private final class AlwaysTrueFeatureFlagger: FeatureFlagger { + func isFeatureOn(forProvider: F) -> Bool where F: FeatureFlagSourceProviding { + true + } +} diff --git a/DuckDuckGoTests/OnboardingFirePixelMock.swift b/DuckDuckGoTests/OnboardingFirePixelMock.swift index 1c790f3f82..d277ee6bec 100644 --- a/DuckDuckGoTests/OnboardingFirePixelMock.swift +++ b/DuckDuckGoTests/OnboardingFirePixelMock.swift @@ -48,11 +48,14 @@ final class OnboardingUniquePixelFireMock: OnboardingPixelFiring { static private(set) var capturedParams: [String: String] = [:] static private(set) var capturedIncludeParameters: [Pixel.QueryParameters] = [] + static private(set) var capturedPixelEventHistory: [Pixel.Event] = [] + static func fire(pixel: Pixel.Event, withAdditionalParameters params: [String: String], includedParameters: [Pixel.QueryParameters]) { didCallFire = true capturedPixelEvent = pixel capturedParams = params capturedIncludeParameters = includedParameters + capturedPixelEventHistory.append(pixel) } static func tearDown() { @@ -60,5 +63,6 @@ final class OnboardingUniquePixelFireMock: OnboardingPixelFiring { capturedPixelEvent = nil capturedParams = [:] capturedIncludeParameters = [] + capturedPixelEventHistory = [] } } diff --git a/DuckDuckGoTests/OnboardingIntroViewModelTests.swift b/DuckDuckGoTests/OnboardingIntroViewModelTests.swift index 52342a9bb4..f3ad300002 100644 --- a/DuckDuckGoTests/OnboardingIntroViewModelTests.swift +++ b/DuckDuckGoTests/OnboardingIntroViewModelTests.swift @@ -26,7 +26,7 @@ final class OnboardingIntroViewModelTests: XCTestCase { func testWhenSubscribeToViewStateThenShouldSendLanding() { // GIVEN - let sut = OnboardingIntroViewModel(urlOpener: MockURLOpener()) + let sut = OnboardingIntroViewModel(pixelReporter: OnboardingIntroPixelReporterMock(), urlOpener: MockURLOpener()) // WHEN let result = sut.state @@ -37,7 +37,7 @@ final class OnboardingIntroViewModelTests: XCTestCase { func testWhenOnAppearIsCalledThenViewStateChangesToStartOnboardingDialog() { // GIVEN - let sut = OnboardingIntroViewModel(urlOpener: MockURLOpener()) + let sut = OnboardingIntroViewModel(pixelReporter: OnboardingIntroPixelReporterMock(), urlOpener: MockURLOpener()) XCTAssertEqual(sut.state, .landing) // WHEN @@ -49,7 +49,7 @@ final class OnboardingIntroViewModelTests: XCTestCase { func testWhenStartOnboardingActionIsCalledThenViewStateChangesToBrowsersComparisonDialog() { // GIVEN - let sut = OnboardingIntroViewModel() + let sut = OnboardingIntroViewModel(pixelReporter: OnboardingIntroPixelReporterMock()) XCTAssertEqual(sut.state, .landing) // WHEN @@ -62,7 +62,7 @@ final class OnboardingIntroViewModelTests: XCTestCase { func testWhenSetDefaultBrowserActionIsCalledThenURLOpenerOpensSettingsURL() { // GIVEN let urlOpenerMock = MockURLOpener() - let sut = OnboardingIntroViewModel(urlOpener: urlOpenerMock) + let sut = OnboardingIntroViewModel(pixelReporter: OnboardingIntroPixelReporterMock(), urlOpener: urlOpenerMock) XCTAssertFalse(urlOpenerMock.didCallOpenURL) XCTAssertNil(urlOpenerMock.capturedURL) @@ -77,7 +77,7 @@ final class OnboardingIntroViewModelTests: XCTestCase { func testWhenSetDefaultBrowserActionIsCalledThenOnCompletingOnboardingIntroIsCalled() { // GIVEN var didCallOnCompletingOnboardingIntro = false - let sut = OnboardingIntroViewModel(urlOpener: MockURLOpener()) + let sut = OnboardingIntroViewModel(pixelReporter: OnboardingIntroPixelReporterMock(), urlOpener: MockURLOpener()) sut.onCompletingOnboardingIntro = { didCallOnCompletingOnboardingIntro = true } @@ -93,7 +93,7 @@ final class OnboardingIntroViewModelTests: XCTestCase { func testWhenCancelSetDefaultBrowserActionIsCalledThenOnCompletingOnboardingIntroIsCalled() { // GIVEN var didCallOnCompletingOnboardingIntro = false - let sut = OnboardingIntroViewModel(urlOpener: MockURLOpener()) + let sut = OnboardingIntroViewModel(pixelReporter: OnboardingIntroPixelReporterMock(), urlOpener: MockURLOpener()) sut.onCompletingOnboardingIntro = { didCallOnCompletingOnboardingIntro = true } diff --git a/DuckDuckGoTests/OnboardingPixelReporterMock.swift b/DuckDuckGoTests/OnboardingPixelReporterMock.swift index fcfe097b50..23a1c93da5 100644 --- a/DuckDuckGoTests/OnboardingPixelReporterMock.swift +++ b/DuckDuckGoTests/OnboardingPixelReporterMock.swift @@ -21,7 +21,11 @@ import Foundation import Core @testable import DuckDuckGo -final class OnboardingPixelReporterMock: OnboardingSiteSuggestionsPixelReporting, OnboardingSearchSuggestionsPixelReporting, OnboardingCustomInteractionPixelReporting, OnboardingScreenImpressionReporting { +final class OnboardingPixelReporterMock: OnboardingIntroPixelReporting, OnboardingSiteSuggestionsPixelReporting, OnboardingSearchSuggestionsPixelReporting, OnboardingCustomInteractionPixelReporting, OnboardingScreenImpressionReporting { + + private(set) var didCallTrackOnboardingIntroImpression = false + private(set) var didCallTrackBrowserComparisonImpression = false + private(set) var didCallChooseBrowserCTAAction = false private(set) var didCallTrackSearchOptionTapped = false private(set) var didCallTrackSiteOptionTapped = false private(set) var didCallTrackCustomSearch = false @@ -36,6 +40,18 @@ final class OnboardingPixelReporterMock: OnboardingSiteSuggestionsPixelReporting private(set) var capturedScreenImpression: Pixel.Event? private(set) var didCallTrackPrivacyDashboardOpenedForFirstTime = false + func trackOnboardingIntroImpression() { + didCallTrackOnboardingIntroImpression = true + } + + func trackBrowserComparisonImpression() { + didCallTrackBrowserComparisonImpression = true + } + + func trackChooseBrowserCTAAction() { + didCallChooseBrowserCTAAction = true + } + func trackSiteSuggetionOptionTapped() { didCallTrackSiteOptionTapped = true } diff --git a/DuckDuckGoTests/OnboardingPixelReporterTests.swift b/DuckDuckGoTests/OnboardingPixelReporterTests.swift index 6eaa415171..09994eb9ce 100644 --- a/DuckDuckGoTests/OnboardingPixelReporterTests.swift +++ b/DuckDuckGoTests/OnboardingPixelReporterTests.swift @@ -30,6 +30,7 @@ final class OnboardingPixelReporterTests: XCTestCase { override func setUpWithError() throws { statisticsStoreMock = MockStatisticsStore() + statisticsStoreMock.atb = "TESTATB" now = Date() var calendar = Calendar(identifier: .gregorian) calendar.timeZone = try XCTUnwrap(TimeZone(secondsFromGMT: 0)) @@ -286,4 +287,70 @@ final class OnboardingPixelReporterTests: XCTestCase { XCTAssertEqual(expectedPixel.name, expectedPixel.name) XCTAssertEqual(OnboardingUniquePixelFireMock.capturedIncludeParameters, [.appVersion, .atb]) } + + // Enqueuing / Dequeuing Pixels + + func testWhenPixelIsFiredAndAndATBIsNotAvailableAndPixelNeedsATBThenEnqueuePixel() throws { + // GIVEN + statisticsStoreMock.atb = nil + XCTAssertFalse(OnboardingUniquePixelFireMock.didCallFire) + XCTAssertNil(OnboardingUniquePixelFireMock.capturedPixelEvent) + XCTAssertEqual(OnboardingUniquePixelFireMock.capturedParams, [:]) + XCTAssertEqual(OnboardingUniquePixelFireMock.capturedIncludeParameters, []) + XCTAssertTrue(sut.enqueuedPixels.isEmpty) + + // WHEN + sut.trackOnboardingIntroImpression() + + // THEN + XCTAssertFalse(OnboardingUniquePixelFireMock.didCallFire) + XCTAssertNil(OnboardingUniquePixelFireMock.capturedPixelEvent) + XCTAssertEqual(OnboardingUniquePixelFireMock.capturedParams, [:]) + XCTAssertEqual(OnboardingUniquePixelFireMock.capturedIncludeParameters, []) + XCTAssertEqual(sut.enqueuedPixels.count, 1) + let enqueuedPixel = try XCTUnwrap(sut.enqueuedPixels.first) + XCTAssertEqual(enqueuedPixel.event, .onboardingIntroShownUnique) + XCTAssertTrue(enqueuedPixel.unique) + XCTAssertTrue(enqueuedPixel.additionalParameters.isEmpty) + XCTAssertEqual(enqueuedPixel.includedParameters, [.appVersion, .atb]) + + } + + func testWhenPixelIsFiredAndAndATBIsNotAvailableAndPixelDoesNotNeedATBThenFirePixel() { + // GIVEN + statisticsStoreMock.atb = nil + XCTAssertFalse(OnboardingUniquePixelFireMock.didCallFire) + XCTAssertNil(OnboardingUniquePixelFireMock.capturedPixelEvent) + XCTAssertEqual(OnboardingUniquePixelFireMock.capturedParams, [:]) + XCTAssertEqual(OnboardingUniquePixelFireMock.capturedIncludeParameters, []) + XCTAssertTrue(sut.enqueuedPixels.isEmpty) + + // WHEN + sut.trackPrivacyDashboardOpenedForFirstTime() + + // THEN + XCTAssertTrue(OnboardingUniquePixelFireMock.didCallFire) + XCTAssertEqual(OnboardingUniquePixelFireMock.capturedPixelEvent, .privacyDashboardFirstTimeOpenedUnique) + XCTAssertNotNil(OnboardingUniquePixelFireMock.capturedParams) + XCTAssertNotNil(OnboardingUniquePixelFireMock.capturedIncludeParameters) + XCTAssertTrue(sut.enqueuedPixels.isEmpty) + } + + func testWhenFireEnqueuedPixelIsCalledThenFireEnqueuedPixels() { + // GIVEN + statisticsStoreMock.atb = nil + sut.trackOnboardingIntroImpression() + sut.trackBrowserComparisonImpression() + XCTAssertEqual(sut.enqueuedPixels.count, 2) + XCTAssertTrue(OnboardingUniquePixelFireMock.capturedPixelEventHistory.isEmpty) + + // WHEN + sut.fireEnqueuedPixelsIfNeeded() + + // THEN + XCTAssertEqual(sut.enqueuedPixels.count, 0) + XCTAssertEqual(OnboardingUniquePixelFireMock.capturedPixelEventHistory.count, 2) + XCTAssertEqual(OnboardingUniquePixelFireMock.capturedPixelEventHistory[0], .onboardingIntroShownUnique) + XCTAssertEqual(OnboardingUniquePixelFireMock.capturedPixelEventHistory[1], .onboardingIntroComparisonChartShownUnique) + } } diff --git a/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift b/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift index 019cf2104b..41224fbaa5 100644 --- a/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift +++ b/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift @@ -21,7 +21,7 @@ import XCTest @testable import DuckDuckGo class OnboardingSuggestedSitesProviderTests: XCTestCase { - let scheme = "https:" + let scheme = "https://" func testSuggestedSitesForIndonesia() { // GIVEN @@ -65,7 +65,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "bundesliga.de")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "tagesschau.de")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "galeria.de")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "https://duden.de")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: scheme + "duden.de")) } func testSuggestedSitesForCanada() { @@ -95,7 +95,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "voetbalprimeur.nl")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "nu.nl")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "bol.com")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "https://www.woorden.org/woord/eend")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: scheme + "www.woorden.org/woord/eend")) } func testSuggestedSitesForAustralia() { @@ -125,7 +125,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "svenskafans.com")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "dn.se")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "tradera.com")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "https://www.synonymer.se/sv-syn/anka")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: scheme + "www.synonymer.se/sv-syn/anka")) } func testSuggestedSitesForIreland() { diff --git a/DuckDuckGoTests/OnboardingSuggestionsViewModelsTests.swift b/DuckDuckGoTests/OnboardingSuggestionsViewModelsTests.swift index 2ce7ad24cc..0e206b7a70 100644 --- a/DuckDuckGoTests/OnboardingSuggestionsViewModelsTests.swift +++ b/DuckDuckGoTests/OnboardingSuggestionsViewModelsTests.swift @@ -32,8 +32,8 @@ final class OnboardingSuggestionsViewModelsTests: XCTestCase { suggestionsProvider = MockOnboardingSuggestionsProvider() navigationDelegate = CapturingOnboardingNavigationDelegate() pixelReporterMock = OnboardingPixelReporterMock() - searchSuggestionsVM = OnboardingSearchSuggestionsViewModel(suggestedSearchesProvider: suggestionsProvider, delegate: navigationDelegate, pixelReporter: pixelReporterMock) - siteSuggestionsVM = OnboardingSiteSuggestionsViewModel(title: "", suggestedSitesProvider: suggestionsProvider, delegate: navigationDelegate, pixelReporter: pixelReporterMock) + searchSuggestionsVM = OnboardingSearchSuggestionsViewModel(pixelReporter: pixelReporterMock, suggestedSearchesProvider: suggestionsProvider, delegate: navigationDelegate) + siteSuggestionsVM = OnboardingSiteSuggestionsViewModel(title: "", pixelReporter: pixelReporterMock, suggestedSitesProvider: suggestionsProvider, delegate: navigationDelegate) } override func tearDown() { diff --git a/DuckDuckGoTests/QuerySubmittedTests.swift b/DuckDuckGoTests/QuerySubmittedTests.swift new file mode 100644 index 0000000000..e46b9fe8cc --- /dev/null +++ b/DuckDuckGoTests/QuerySubmittedTests.swift @@ -0,0 +1,147 @@ +// +// QuerySubmittedTests.swift +// DuckDuckGo +// +// Copyright © 2024 DuckDuckGo. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import XCTest +import Suggestions + +@testable import DuckDuckGo + +class QuerySubmittedTests: XCTestCase { + let mock = MockOmniBarDelegate() + let sut = OmniBar.loadFromXib() + + override func setUp() { + super.setUp() + sut.omniDelegate = mock + } + + override func tearDown() { + mock.clear() + super.tearDown() + } + + func testValidAddressSubmissions() { + let validQueries = [ + ("www.test.com", "http://www.test.com"), + ("http://example.com/path?query=123", "http://example.com/path?query=123"), + (" www.test.com ", "http://www.test.com") + ] + + for (query, expected) in validQueries { + assertQuerySubmission(query: query, expected: expected) + } + } + + func testInvalidAddressSubmissions() { + let invalidQueries = [ + "16385-12228.75", + "invalid-url", + "http://[::1]:80", + "12345" + ] + + for query in invalidQueries { + assertQuerySubmission(query: query, expected: query) + } + } + + func testSuggestionSelectionCallsDelegate() { + mock.suggestion = .website(url: URL(string: "www.testing.com")!) + + sut.onQuerySubmitted() + + XCTAssertTrue(mock.wasOnOmniSuggestionSelectedCalled) + XCTAssertFalse(mock.wasOnOmniQuerySubmittedCalled) + } + + func testEmptyQueryDoesNotCallDelegate() { + sut.textField.text = "" + sut.onQuerySubmitted() + + XCTAssertFalse(mock.wasOnOmniQuerySubmittedCalled) + XCTAssertFalse(mock.wasOnOmniSuggestionSelectedCalled) + } + + func testBlankQueryDoesNotCallDelegate() { + sut.textField.text = " " + sut.onQuerySubmitted() + + XCTAssertFalse(mock.wasOnOmniQuerySubmittedCalled) + XCTAssertFalse(mock.wasOnOmniSuggestionSelectedCalled) + } + + // MARK: - Helper Methods + + private func assertQuerySubmission(query: String, expected: String) { + sut.textField.text = query + sut.onQuerySubmitted() + + XCTAssertEqual(mock.query, expected) + XCTAssertFalse(mock.wasOnOmniSuggestionSelectedCalled) + } +} + +final class MockOmniBarDelegate: OmniBarDelegate { + var query: String = "" + var suggestion: Suggestion? + var wasOnOmniQuerySubmittedCalled = false + var wasOnOmniSuggestionSelectedCalled = false + + func onOmniQuerySubmitted(_ query: String) { + wasOnOmniQuerySubmittedCalled = true + self.query = query + } + + func onOmniSuggestionSelected(_ suggestion: Suggestion) { + wasOnOmniSuggestionSelectedCalled = true + } + + func clear() { + query = "" + suggestion = nil + wasOnOmniQuerySubmittedCalled = false + wasOnOmniSuggestionSelectedCalled = false + } + + func selectedSuggestion() -> Suggestion? { + return suggestion + } + + // MARK: - Unused methods + + func onEditingEnd() -> OmniBarEditingEndResult { + return .dismissed + } + + func onClearPressed() { + } + + func onEnterPressed() { + } + + func onVoiceSearchPressed() { + } + + func onTextFieldWillBeginEditing(_ omniBar: DuckDuckGo.OmniBar, tapped: Bool) { + } + + func onTextFieldDidBeginEditing(_ omniBar: DuckDuckGo.OmniBar) -> Bool { + return false + } +} diff --git a/DuckDuckGoTests/YoutublePlayerNavigationHandlerTests.swift b/DuckDuckGoTests/YoutublePlayerNavigationHandlerTests.swift index 1bf0672f35..78f006ddd4 100644 --- a/DuckDuckGoTests/YoutublePlayerNavigationHandlerTests.swift +++ b/DuckDuckGoTests/YoutublePlayerNavigationHandlerTests.swift @@ -109,7 +109,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let expectation = self.expectation(description: "Completion handler called") let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) var navigationPolicy: WKNavigationActionPolicy? handler.lastHandledVideoID = "abc123" @@ -133,7 +133,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let expectation = self.expectation(description: "Completion handler called") let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) var navigationPolicy: WKNavigationActionPolicy? handler.handleDecidePolicyFor(navigationAction, completion: { policy in @@ -156,7 +156,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) playerSettings.mode = .enabled let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) var navigationPolicy: WKNavigationActionPolicy? handler.handleDecidePolicyFor(navigationAction, completion: { policy in @@ -179,7 +179,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) playerSettings.mode = .enabled let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) var navigationPolicy: WKNavigationActionPolicy? handler.handleDecidePolicyFor(navigationAction, completion: { policy in @@ -204,7 +204,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) handler.lastHandledVideoID = "abc123" handler.handleJSNavigation(url: youtubeURL, webView: webView) @@ -221,7 +221,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) handler.handleJSNavigation(url: youtubeURL, webView: webView) @@ -237,7 +237,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) playerSettings.mode = .enabled let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) handler.handleJSNavigation(url: youtubeURL, webView: webView) @@ -254,7 +254,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) playerSettings.mode = .enabled let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) handler.handleNavigation(navigationAction, webView: webView) XCTAssertEqual(webView.url, nil) @@ -269,7 +269,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) playerSettings.mode = .enabled let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) handler.handleNavigation(navigationAction, webView: webView) @@ -291,7 +291,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) playerSettings.mode = .enabled let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) handler.handleReload(webView: mockWebView) if let loadedRequest = mockWebView.lastLoadedRequest { @@ -309,7 +309,7 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) playerSettings.mode = .enabled let player = MockDuckPlayer(settings: playerSettings) - let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) handler.handleAttach(webView: mockWebView) if let loadedRequest = mockWebView.lastLoadedRequest { @@ -320,5 +320,53 @@ class DuckPlayerNavigationHandlerTests: XCTestCase { } } + func testGetURLForYoutubeNoCookieWithDuckPlayerEnabled() { + let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) + playerSettings.mode = .enabled + + let player = MockDuckPlayer(settings: playerSettings) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) + var url = URL(string: "https://www.youtube-nocookie.com/embed/abc123?t=10s")! + var duckURL = handler.getDuckURLFor(url).absoluteString + XCTAssertEqual(duckURL, "duck://player/abc123?t=10s") + + url = URL(string: "https://www.youtube.com/watch?v=I9J120SZT14")! + duckURL = handler.getDuckURLFor(url).absoluteString + XCTAssertEqual(duckURL, url.absoluteString) + + } + + func testGetURLForYoutubeNoCookieWithDuckPlayerAskMode() { + let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) + playerSettings.mode = .alwaysAsk + + let player = MockDuckPlayer(settings: playerSettings) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) + var url = URL(string: "https://www.youtube-nocookie.com/embed/abc123?t=10s")! + var duckURL = handler.getDuckURLFor(url).absoluteString + XCTAssertEqual(duckURL, "duck://player/abc123?t=10s") + + url = URL(string: "https://www.youtube.com/watch?v=I9J120SZT14")! + duckURL = handler.getDuckURLFor(url).absoluteString + XCTAssertEqual(duckURL, url.absoluteString) + + } + + func testGetURLForYoutubeNoCookieWithDuckPlayerDisabled() { + let playerSettings = MockDuckPlayerSettings(appSettings: mockAppSettings, privacyConfigManager: mockPrivacyConfig) + playerSettings.mode = .disabled + + let player = MockDuckPlayer(settings: playerSettings) + let handler = DuckPlayerNavigationHandler(duckPlayer: player, featureFlagger: featureFlagger, appSettings: mockAppSettings) + var url = URL(string: "https://www.youtube-nocookie.com/embed/abc123?t=10s")! + var duckURL = handler.getDuckURLFor(url).absoluteString + XCTAssertEqual(duckURL, url.absoluteString) + + url = URL(string: "https://www.youtube.com/watch?v=I9J120SZT14")! + duckURL = handler.getDuckURLFor(url).absoluteString + XCTAssertEqual(duckURL, url.absoluteString) + + } + } diff --git a/OpenAction/ActionViewController.swift b/OpenAction/ActionViewController.swift index 3aaae8e55d..2a4c493ebf 100644 --- a/OpenAction/ActionViewController.swift +++ b/OpenAction/ActionViewController.swift @@ -22,6 +22,7 @@ import UIKit import MobileCoreServices import Core import UniformTypeIdentifiers +import os.log class ActionViewController: UIViewController { @@ -35,7 +36,7 @@ class ActionViewController: UIViewController { provider.loadItem(forTypeIdentifier: UTType.text.identifier, options: nil) { text, _ in guard let text = text as? String else { return } guard let url = URL.makeSearchURL(text: text) else { - os_log("Couldn‘t for URL for query “%s”", log: .lifecycleLog, type: .error, text) + Logger.lifecycle.error("Couldn‘t form URL for query “\(text, privacy: .public)”") return } self.launchBrowser(withUrl: url) diff --git a/PacketTunnelProvider/NetworkProtection/NetworkProtectionPacketTunnelProvider.swift b/PacketTunnelProvider/NetworkProtection/NetworkProtectionPacketTunnelProvider.swift index 5e59a8d3d8..eefd3111af 100644 --- a/PacketTunnelProvider/NetworkProtection/NetworkProtectionPacketTunnelProvider.swift +++ b/PacketTunnelProvider/NetworkProtection/NetworkProtectionPacketTunnelProvider.swift @@ -26,6 +26,7 @@ import NetworkExtension import NetworkProtection import Subscription import WidgetKit +import WireGuard // Initial implementation for initial Network Protection tests. Will be fleshed out with https://app.asana.com/0/1203137811378537/1204630829332227/f final class NetworkProtectionPacketTunnelProvider: PacketTunnelProvider { @@ -365,6 +366,7 @@ final class NetworkProtectionPacketTunnelProvider: PacketTunnelProvider { tunnelHealthStore: NetworkProtectionTunnelHealthStore(), controllerErrorStore: errorStore, snoozeTimingStore: NetworkProtectionSnoozeTimingStore(userDefaults: .networkProtectionGroupDefaults), + wireGuardInterface: DefaultWireGuardInterface(), keychainType: .dataProtection(.unspecified), tokenStore: tokenStore, debugEvents: Self.networkProtectionDebugEvents(controllerErrorStore: errorStore), @@ -373,6 +375,8 @@ final class NetworkProtectionPacketTunnelProvider: PacketTunnelProvider { defaults: .networkProtectionGroupDefaults, isSubscriptionEnabled: true, entitlementCheck: { return await Self.entitlementCheck(accountManager: accountManager) }) + + accountManager.delegate = self startMonitoringMemoryPressureEvents() observeServerChanges() APIRequest.Headers.setUserAgent(DefaultUserAgentManager.duckDuckGoUserAgent) @@ -435,3 +439,47 @@ final class NetworkProtectionPacketTunnelProvider: PacketTunnelProvider { } } } + +final class DefaultWireGuardInterface: WireGuardInterface { + func turnOn(settings: UnsafePointer, handle: Int32) -> Int32 { + wgTurnOn(settings, handle) + } + + func turnOff(handle: Int32) { + wgTurnOff(handle) + } + + func getConfig(handle: Int32) -> UnsafeMutablePointer? { + return wgGetConfig(handle) + } + + func setConfig(handle: Int32, config: String) -> Int64 { + return wgSetConfig(handle, config) + } + + func bumpSockets(handle: Int32) { + wgBumpSockets(handle) + } + + func disableSomeRoamingForBrokenMobileSemantics(handle: Int32) { + wgDisableSomeRoamingForBrokenMobileSemantics(handle) + } + + func setLogger(context: UnsafeMutableRawPointer?, logFunction: (@convention(c) (UnsafeMutableRawPointer?, Int32, UnsafePointer?) -> Void)?) { + wgSetLogger(context, logFunction) + } +} + +extension NetworkProtectionPacketTunnelProvider: AccountManagerKeychainAccessDelegate { + + public func accountManagerKeychainAccessFailed(accessType: AccountKeychainAccessType, error: AccountKeychainAccessError) { + let parameters = [ + PixelParameters.privacyProKeychainAccessType: accessType.rawValue, + PixelParameters.privacyProKeychainError: error.errorDescription, + PixelParameters.source: "vpn" + ] + + DailyPixel.fireDailyAndCount(pixel: .privacyProKeychainAccessError, + withAdditionalParameters: parameters) + } +} diff --git a/PacketTunnelProvider/NetworkProtection/VPNLogger.swift b/PacketTunnelProvider/NetworkProtection/VPNLogger.swift deleted file mode 100644 index 2fa2a2b26f..0000000000 --- a/PacketTunnelProvider/NetworkProtection/VPNLogger.swift +++ /dev/null @@ -1,124 +0,0 @@ -// -// VPNLogger.swift -// DuckDuckGo -// -// Copyright © 2023 DuckDuckGo. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -import Foundation -import NetworkProtection - -import OSLog - -/// Logger for the VPN -/// -/// Since we'll want to ensure this adheres to our privacy standards, grouping the logging logic to be mostly -/// handled by a single class sounds like a good approach to be able to review what's being logged.. -/// -public final class VPNLogger { - public typealias AttemptStep = PacketTunnelProvider.AttemptStep - public typealias ConnectionAttempt = PacketTunnelProvider.ConnectionAttempt - public typealias ConnectionTesterStatus = PacketTunnelProvider.ConnectionTesterStatus - public typealias LogCallback = (OSLogType, OSLogMessage) -> Void - - public init() {} - - public func logStartingWithoutAuthToken() { - os_log("🔴 Starting tunnel without an auth token", log: .networkProtection, type: .error) - } - - public func log(_ step: AttemptStep, named name: String) { - let log = OSLog.networkProtection - - switch step { - case .begin: - os_log("🔵 %{public}@ attempt begins", log: log, name) - case .failure(let error): - os_log("🔴 %{public}@ attempt failed with error: %{public}@", log: log, type: .error, name, error.localizedDescription) - case .success: - os_log("🟢 %{public}@ attempt succeeded", log: log, name) - } - } - - public func log(_ step: ConnectionAttempt) { - let log = OSLog.networkProtection - - switch step { - case .connecting: - os_log("🔵 Connection attempt detected", log: log) - case .failure: - os_log("🔴 Connection attempt failed", log: log, type: .error) - case .success: - os_log("🟢 Connection attempt successful", log: log) - } - } - - public func log(_ status: ConnectionTesterStatus, server: String) { - let log = OSLog.networkProtectionConnectionTesterLog - - switch status { - case .failed(let duration): - os_log("🔴 Connection tester (%{public}@ - %{public}@) failure", log: log, type: .error, duration.rawValue, server) - case .recovered(let duration, let failureCount): - os_log("🟢 Connection tester (%{public}@ - %{public}@) recovery (after %{public}@ failures)", - log: log, - duration.rawValue, - server, - String(failureCount)) - } - } - - public func log(_ step: FailureRecoveryStep) { - let log = OSLog.networkProtectionTunnelFailureMonitorLog - - switch step { - case .started: - os_log("🔵 Failure Recovery attempt started", log: log) - case .failed(let error): - os_log("🔴 Failure Recovery attempt failed with error: %{public}@", log: log, type: .error, error.localizedDescription) - case .completed(let health): - switch health { - case .healthy: - os_log("🟢 Failure Recovery attempt completed", log: log) - case .unhealthy: - os_log("🔴 Failure Recovery attempt ended as unhealthy", log: log, type: .error) - } - } - } - - public func log(_ step: NetworkProtectionTunnelFailureMonitor.Result) { - let log = OSLog.networkProtectionTunnelFailureMonitorLog - - switch step { - case .failureDetected: - os_log("🔴 Tunnel failure detected", log: log, type: .error) - case .failureRecovered: - os_log("🟢 Tunnel failure recovered", log: log) - case .networkPathChanged: - os_log("🔵 Tunnel recovery detected path change", log: log) - } - } - - public func log(_ result: NetworkProtectionLatencyMonitor.Result) { - let log = OSLog.networkProtectionLatencyMonitorLog - - switch result { - case .error: - os_log("🔴 There was an error logging the latency", log: log, type: .error) - case .quality(let quality): - os_log("Connection quality is: %{public}@", log: log, quality.rawValue) - } - } -} diff --git a/ShareExtension/ShareViewController.swift b/ShareExtension/ShareViewController.swift index e75d501857..98829b4cbe 100644 --- a/ShareExtension/ShareViewController.swift +++ b/ShareExtension/ShareViewController.swift @@ -21,6 +21,7 @@ import Common import UIKit import Social import Core +import os.log class ShareViewController: SLComposeServiceViewController { @@ -71,7 +72,7 @@ class ShareViewController: SLComposeServiceViewController { textProvider.loadItem(forTypeIdentifier: Identifier.text, options: nil) { [weak self] (item, _) in guard let query = item as? String else { return } guard let url = URL.makeSearchURL(query: query) else { - os_log("Couldn‘t form URL for query “%s”", log: .lifecycleLog, type: .error, query) + Logger.lifecycle.error("Couldn‘t form URL for query “\(query, privacy: .public)”") return } self?.open(url: url) diff --git a/Widgets/Widgets.swift b/Widgets/Widgets.swift index 0e9f995ed9..4972055a03 100644 --- a/Widgets/Widgets.swift +++ b/Widgets/Widgets.swift @@ -26,6 +26,7 @@ import Kingfisher import Bookmarks import Persistence import NetworkExtension +import os.log struct Favorite { @@ -103,24 +104,24 @@ class Provider: TimelineProvider { if bookmarksDB == nil { let db = BookmarksDatabase.make(readOnly: true) - os_log("BookmarksDatabase load store started") + Logger.general.debug("BookmarksDatabase load store started") db.loadStore { _, error in guard error == nil else { return } self.bookmarksDB = db } - os_log("BookmarksDatabase store loaded") + Logger.general.debug("BookmarksDatabase store loaded") } if maxFavorites > 0, let db = bookmarksDB { let model = FavoritesListViewModel(bookmarksDatabase: db, favoritesDisplayMode: fetchFavoritesDisplayMode()) - os_log("model created") + Logger.general.debug("model created") let dbFavorites = model.favorites - os_log("dbFavorites loaded %d", dbFavorites.count) + Logger.general.debug("dbFavorites loaded \(dbFavorites.count)") let favorites = coreDataFavoritesToFavorites(dbFavorites, returningNoMoreThan: maxFavorites) - os_log("favorites converted %d", favorites.count) + Logger.general.debug("favorites converted \(favorites.count)") let entry = FavoritesEntry(date: Date(), favorites: favorites, isPreview: favorites.isEmpty && context.isPreview) - os_log("entry created") + Logger.general.debug("entry created") completion(entry) } else { let entry = FavoritesEntry(date: Date(), favorites: [], isPreview: context.isPreview) diff --git a/fastlane/metadata/default/release_notes.txt b/fastlane/metadata/default/release_notes.txt index 95b0a3599b..098fd1666f 100644 --- a/fastlane/metadata/default/release_notes.txt +++ b/fastlane/metadata/default/release_notes.txt @@ -1 +1 @@ -- New! VPN snooze lets you pause the VPN for 20 minutes at a time. Use snooze to briefly connect through your regular IP when signing in to banking apps (or similar) without triggering their understandably thorough fraud prevention alerts. \ No newline at end of file +- Bug fixes and other improvements. \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index f5a2c8ef73..66486dc5ed 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "ios", "version": "1.0.0", "dependencies": { - "@duckduckgo/autoconsent": "^10.13.0" + "@duckduckgo/autoconsent": "^10.15.0" }, "devDependencies": { "@rollup/plugin-json": "^4.1.0", @@ -135,9 +135,9 @@ } }, "node_modules/@duckduckgo/autoconsent": { - "version": "10.13.0", - "resolved": "https://registry.npmjs.org/@duckduckgo/autoconsent/-/autoconsent-10.13.0.tgz", - "integrity": "sha512-tR2XpSjA0Y4IC+Ql0J1e9B29Bz3qMEQW/+6gxJ6DRmvu0D8MsKvw0pST2rD/Q3+Mp9rL/FCklB/2X73hLK17LA==", + "version": "10.15.0", + "resolved": "https://registry.npmjs.org/@duckduckgo/autoconsent/-/autoconsent-10.15.0.tgz", + "integrity": "sha512-Jxaogy2IuZEEV1+xPyo3c3PnZJmBO6ima/MapF2VolI/IKxXnL+9yYqyydPhSk0ahx42YINA6uIK6zexlKDIkQ==", "license": "MPL-2.0", "dependencies": { "tldts-experimental": "^6.1.37" diff --git a/package.json b/package.json index b38aa513a3..ca87850735 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,6 @@ "rollup-plugin-terser": "^7.0.2" }, "dependencies": { - "@duckduckgo/autoconsent": "^10.13.0" + "@duckduckgo/autoconsent": "^10.15.0" } }