diff --git a/index.js b/index.js index b0d09bb9..dba638e5 100755 --- a/index.js +++ b/index.js @@ -42,7 +42,6 @@ const DEVICE_PARSER_LIST = require('./parser/const/device-parser'); const CLIENT_PARSER_LIST = require('./parser/const/client-parser'); const FORM_FACTORS_MAPPING = require('./parser/const/form-factor-mapping'); const MOBILE_BROWSER_LIST = require('./parser/client/browser-short-mobile'); -const { hasUserAgentClientHintsFragment, hasDeviceModelByClientHints } = require('./parser/helper'); const VENDOR_FRAGMENT_PARSER = 'VendorFragment'; const OS_PARSER = 'Os'; const BOT_PARSER = 'Bot'; @@ -696,38 +695,6 @@ class DeviceDetector { return aliasDevice.parse(userAgent); } - /** - * restore original userAgent from clientHints object - * @param {string} userAgent - * @param {ResultClientHints} clientHints - */ - restoreUserAgentFromClientHints( - userAgent, - clientHints - ) { - if (!helper.hasDeviceModelByClientHints(clientHints)) { - return userAgent; - } - - const deviceModel = clientHints.device.model; - - if (deviceModel !== '' && helper.hasUserAgentClientHintsFragment(userAgent)) { - const osHints = attr(clientHints, 'os', {}); - const osVersion = attr(osHints, 'version', ''); - return userAgent.replace(/(Android (?:10[.\d]*; K|1[1-5]))/, - `Android ${osVersion !== '' ? osVersion : '10'}; ${deviceModel}` - ); - } - - if (deviceModel !== '' && helper.hasDesktopFragment(userAgent)) { - return userAgent.replace(/(X11; Linux x86_64)/, - `X11; Linux x86_64; ${deviceModel}` - ); - } - - return userAgent; - } - /** * parse device * @param {string} userAgent @@ -735,7 +702,6 @@ class DeviceDetector { * @return {ResultDevice} */ parseDevice(userAgent, clientHints) { - let ua = this.restoreUserAgentFromClientHints(userAgent, clientHints); let brandIndexes = []; let result = { @@ -748,6 +714,7 @@ class DeviceDetector { trusted: null }; + let ua = helper.restoreUserAgentFromClientHints(userAgent, clientHints); // skip all parse is client-hints useragent and model not exist if (!helper.hasDeviceModelByClientHints(clientHints) && helper.hasUserAgentClientHintsFragment(userAgent)) { return Object.assign({}, result); @@ -805,8 +772,7 @@ class DeviceDetector { * @return {ResultVendor|null} */ parseVendor(userAgent) { - let parser = this.getParseVendor(VENDOR_FRAGMENT_PARSER); - return parser.parse(userAgent); + return this.getParseVendor(VENDOR_FRAGMENT_PARSER).parse(userAgent); } /** @@ -823,8 +789,7 @@ class DeviceDetector { } for (let name in this.botParserList) { - let parser = this.botParserList[name]; - let resultMerge = parser.parse(userAgent); + let resultMerge = this.botParserList[name].parse(userAgent); if (resultMerge) { result = Object.assign(result, resultMerge); break; @@ -842,19 +807,19 @@ class DeviceDetector { parseClient(userAgent, clientHints) { const extendParsers = [CLIENT_PARSER_LIST.MOBILE_APP, CLIENT_PARSER_LIST.BROWSER]; for (let name in this.clientParserList) { - let parser = this.clientParserList[name]; - - if (this.clientIndexes && extendParsers.includes(name)) { - let hash = parser.parseFromHashHintsApp(clientHints); - let hint = parser.parseFromClientHints(clientHints); - let data = parser.parseUserAgentByPositions(userAgent); - let result = parser.prepareParseResult(userAgent, data, hint, hash); - if (result !== null && result.name) { + const parser = this.clientParserList[name]; + + if (this.clientIndexes && extendParsers.includes(name) && userAgent) { + const hash = parser.parseFromHashHintsApp(clientHints); + const hint = parser.parseFromClientHints(clientHints); + const data = parser.parseUserAgentByPositions(userAgent); + const result = parser.prepareParseResult(userAgent, data, hint, hash); + if (result && result.name) { return Object.assign({}, result); } } - let result = parser.parse(userAgent, clientHints); + const result = parser.parse(userAgent, clientHints); if (result && result.name) { return Object.assign({}, result); } @@ -897,7 +862,6 @@ class DeviceDetector { deviceData = Object.assign(deviceData, deviceDataType); - if (this.deviceTrusted) { deviceData.trusted = DeviceTrusted.check(osData, clientData, deviceData, clientHints); } else { diff --git a/parser/client-abstract-parser.js b/parser/client-abstract-parser.js index 6ef49439..5afcd32b 100755 --- a/parser/client-abstract-parser.js +++ b/parser/client-abstract-parser.js @@ -45,11 +45,12 @@ class ClientAbstractParser extends ParserAbstract { return result; } } + return null; } parseUserAgentByPositions(userAgent) { - let positions = IndexerClient.findClientRegexPositionsForUserAgent( + const positions = IndexerClient.findClientRegexPositionsForUserAgent( userAgent, String(this.type), ); diff --git a/parser/client/browser-families.js b/parser/client/browser-families.js index 0aa408ff..3581b4a8 100644 --- a/parser/client/browser-families.js +++ b/parser/client/browser-families.js @@ -36,7 +36,8 @@ module.exports = { 'K4', 'WK', 'T3', 'K5', 'MU', '9P', 'K6', 'VR', 'N9', 'M9', 'F9', '0P', '0A', 'JR', 'D3', 'TK', 'BP', '2F', '2M', 'K7', '1N', '8A', 'H7', 'X3', 'T4', 'X4', '5O', - '8C', '3M', '6I', '2P', 'PU', '7I', 'X5', 'AL', + '8C', '3M', '6I', '2P', 'PU', '7I', 'X5', 'AL', '3P', + 'W2', 'ZB', ], 'Firefox': [ 'FF', 'BI', 'BF', 'BH', 'BN', 'C0', 'CU', 'EI', 'F1', diff --git a/parser/client/browser-short-mobile.js b/parser/client/browser-short-mobile.js index d0192a67..6d07a856 100644 --- a/parser/client/browser-short-mobile.js +++ b/parser/client/browser-short-mobile.js @@ -23,6 +23,6 @@ module.exports = [ 'DP', 'KL', 'K4', 'N6', 'KU', 'WK', 'M8', 'UP', 'ZT', '9P', 'N8', 'VR', 'N9', 'M9', 'F9', '0P', '0A', '2F', '2M', 'K7', '1N', '8A', 'H7', 'X3', 'X4', '5O', '6I', - '7I', 'X5', + '7I', 'X5', '3P', ]; diff --git a/parser/client/browser-short.js b/parser/client/browser-short.js index 0afa8133..08089772 100755 --- a/parser/client/browser-short.js +++ b/parser/client/browser-short.js @@ -62,7 +62,7 @@ module.exports = { 'AW': 'Amiga Aweb', 'PN': 'APN Browser', '6A': 'Arachne', - 'RA': 'Arc', + 'RA': 'Arc Search', 'R5': 'Armorfly Browser', 'AI': 'Arvin', 'AK': 'Ask.com', @@ -531,6 +531,7 @@ module.exports = { 'K1': 'Sidekick', 'S1': 'SimpleBrowser', '3S': 'SilverMob US', + 'ZB': 'Singlebox', 'SY': 'Sizzy', 'K3': 'Skye', 'SK': 'Skyfire', @@ -638,6 +639,7 @@ module.exports = { 'WB': 'Wave Browser', 'WA': 'Wavebox', 'WH': 'Whale Browser', + 'W2': 'Whale TV Browser', 'WO': 'wOSBrowser', '3W': 'w3m', 'WT': 'WeTab Browser', diff --git a/parser/client/browser.js b/parser/client/browser.js index cea4e68a..075608ee 100755 --- a/parser/client/browser.js +++ b/parser/client/browser.js @@ -58,11 +58,11 @@ class Browser extends ClientAbstractParser { /** * Generates the result for the parse method * - * @param userAgent - * @param data - * @param hint - * @param hash - * @returns {null|{engine: string, name: string, short_name: string, type: string, engine_version: string, family: string, version: string}} + * @param {string} userAgent + * @param {{}} data + * @param {{}} hint + * @param {{}} hash + * @returns {null|ResultClient} */ prepareParseResult( userAgent, @@ -78,24 +78,23 @@ class Browser extends ClientAbstractParser { let engineVersion = ''; let short = ''; let family = ''; - // client-hint+user-agent + + // use client hints in favor of user agent data if possible if (hint && hint.name && hint.version) { name = hint.name; version = hint.version; short = hint.short_name; family = this.buildFamily(short); - if (data) { - // If the version reported from the client hints is YYYY or YYYY.MM (e.g., 2022 or 2022.04), - // then it is the Iridium browser - // https://iridiumbrowser.de/news/ - if (/^202[0-4]/.test(version)) { - name = 'Iridium'; - short = 'I1'; - engine = data.engine; - engineVersion = data.engine_version; - } + // If the version reported from the client hints is YYYY or YYYY.MM (e.g., 2022 or 2022.04), + // then it is the Iridium browser + // https://iridiumbrowser.de/news/ + if (/^202[0-4]/.test(version)) { + name = 'Iridium'; + short = 'I1'; + } + if (data) { // https://bbs.360.cn/thread-16096544-1-1.html if (/^15/.test(version) && /^114/.test(data.version)) { name = '360 Secure Browser'; @@ -113,13 +112,10 @@ class Browser extends ClientAbstractParser { engine = data.engine; engineVersion = data.engine_version; } - // If client hints report Chromium, but user agent detects a Chromium based browser, we favor this instead - if ( - ('Chromium' === name || 'Chrome Webview' === name) && - data.name !== ''&& - ['CR', 'CV', 'AN'].indexOf(data.short_name) === -1 - ) { + const hasChromeBased = ('Chromium' === name || 'Chrome Webview' === name) && data.name + && ['CR', 'CV', 'AN'].indexOf(data.short_name) === -1; + if (hasChromeBased) { name = data.name; short = data.short_name; version = data.version; @@ -144,22 +140,30 @@ class Browser extends ClientAbstractParser { if (data.version && data.version.indexOf(version) === 0 && helper.versionCompare(version, data.version) < 0) { version = data.version; } - // If DDG Private browser then set version empty string - if ('DuckDuckGo Privacy Browser' === name) { - version = ''; - } } + + + // If DDG Private browser then set version empty string + if ('DuckDuckGo Privacy Browser' === name) { + version = ''; + } + + // In case client hints report a more detailed engine version, we try to use this instead + if ('Blink' === engine && 'Iridium' !== name && helper.versionCompare(engineVersion, hint.version) < 0) { + engineVersion = hint.version; + } + } else if (data !== null) { name = data.name; version = data.version; short = data.short_name; engine = data.engine; engineVersion = data.engine_version; - } family = this.buildFamily(short); + // is app id if (hash !== null && name !== hash.name) { name = hash.name; version = ''; @@ -198,10 +202,6 @@ class Browser extends ClientAbstractParser { } } - if (name === '') { - return null; - } - return { type: String(type), name: String(name), @@ -217,22 +217,22 @@ class Browser extends ClientAbstractParser { * General method for parsing user-agent and client-hints * * @param {string} userAgent - * @param {*} clientHints - * @returns {{engine: string, name: (string|*), short_name: string, type: string, engine_version: string, family: (string|string), version: string}|null} + * @param {} clientHints + * @returns {ResultClient|null} */ parse(userAgent, clientHints) { userAgent = this.prepareUserAgent(userAgent); const hash = this.parseFromHashHintsApp(clientHints); const hint = this.parseFromClientHints(clientHints); - const data = this.parseFromUserAgent(userAgent); + const data = this.parseFromUserAgent(userAgent, clientHints); return this.prepareParseResult(userAgent, data, hint, hash); } /** * Parses client-hints for getting the browser name from the application ID (clientHints.app) * - * @param {*} clientHints - * @return {{name: *}} + * @param {ResultClientHints} clientHints + * @return {{name: string}} */ parseFromHashHintsApp(clientHints) { return browserHints.parse(clientHints); @@ -241,7 +241,7 @@ class Browser extends ClientAbstractParser { /** * Parses client-hints for getting browser name, version, short name * - * @param {*} clientHints + * @param {ResultClientHints} clientHints * @return {{name: string, short_name: string, version: string}} */ parseFromClientHints(clientHints) { @@ -250,7 +250,7 @@ class Browser extends ClientAbstractParser { let version = ''; if (clientHints && clientHints.client) { - let brands = ArrayPath.get(clientHints, 'client.brands', []); + const brands = ArrayPath.get(clientHints, 'client.brands', []); for (let brandItem of brands) { let brand = compareBrandForClientHints(brandItem.brand); for (let browserName in this.getCollectionBrowsers()) { @@ -283,7 +283,7 @@ class Browser extends ClientAbstractParser { return { name: name, short_name: short, - version: version + version: this.buildVersion(version, []) }; } @@ -465,7 +465,7 @@ class Browser extends ClientAbstractParser { let engineToken = '' + engine; if ('Blink' === engine) { - engineToken = 'Chr[o0]me|Cronet'; + engineToken = 'Chr[o0]me|Chromium|Cronet'; } if ('LibWeb' === engine) { @@ -478,7 +478,7 @@ class Browser extends ClientAbstractParser { let regexp = new RegExp( '(?:' + engineToken + ')' + - '\\s*\\/?\\s*(((?=\\d+\\.\\d)\\d+[.\\d]*|\\d{1,7}(?=(?:\\D|$))))', + '\\s*[/_]?\\s*(((?=\\d+\\.\\d)\\d+[.\\d]*|\\d{1,7}(?=(?:\\D|$))))', 'i' ); diff --git a/parser/client/mobile-app.js b/parser/client/mobile-app.js index aecfc95e..16a1cb36 100755 --- a/parser/client/mobile-app.js +++ b/parser/client/mobile-app.js @@ -19,8 +19,8 @@ class MobileApp extends ClientAbstractParser { } parseFromClientHints(clientHints) { - let name = ''; - let version = ''; + const name = ''; + const version = ''; return {name, version} } @@ -56,9 +56,9 @@ class MobileApp extends ClientAbstractParser { * @returns {({name: string, type: string, version: string})|null} */ parse(userAgent, clientHints) { - let hash = this.parseFromHashHintsApp(clientHints); - let hint = this.parseFromClientHints(clientHints); - let data = super.parse(userAgent, clientHints); + const hash = this.parseFromHashHintsApp(clientHints); + const hint = this.parseFromClientHints(clientHints); + const data = super.parse(userAgent, clientHints); return this.prepareParseResult(userAgent, data, hint, hash); } } diff --git a/parser/device/alias-device.js b/parser/device/alias-device.js index 2fbf4df3..4db9f869 100644 --- a/parser/device/alias-device.js +++ b/parser/device/alias-device.js @@ -32,19 +32,25 @@ const normalizationUserAgent = (userAgent) => { const REPLACE_BRAND_REGEXP = createReplaceBrandRegexp(); class AliasDevice extends AbstractParser { + #replaceBrand = true; constructor() { super(); this.fixtureFile = 'device/alias-device.yml'; - this.__replaceBrand = true; this.loadCollection(); } + /** + * @return {boolean} + */ hasReplaceBrand() { - return Boolean(this.__replaceBrand); + return Boolean(this.#replaceBrand); } + /** + * @param {boolean} replace + */ setReplaceBrand(replace) { - this.__replaceBrand = replace; + this.#replaceBrand = replace; } getBaseRegExp(str) { @@ -61,11 +67,11 @@ class AliasDevice extends AbstractParser { parse(userAgent) { userAgent = this.prepareUserAgent(userAgent); userAgent = normalizationUserAgent(userAgent); - let result = { + const result = { name: '', }; + const isDecodeUA = /%[2-4][0-6A-F]/i.test(userAgent); let decodeUserAgent = ''; - let isDecodeUA = /%[2-4][0-6A-F]/i.test(userAgent); try { decodeUserAgent = isDecodeUA ? decodeURIComponent(userAgent) : userAgent; } catch (err) {} @@ -81,7 +87,9 @@ class AliasDevice extends AbstractParser { break; } } + result.name = result.name.trim(); + return result; } diff --git a/parser/device/brand-short.js b/parser/device/brand-short.js index 06f5c3b0..6ef31737 100755 --- a/parser/device/brand-short.js +++ b/parser/device/brand-short.js @@ -141,6 +141,7 @@ module.exports = { 'AM': 'Azumi Mobile', 'AZE': 'Azeyou', 'AZU': 'Azupik', + 'AZO': 'AZOM', 'WW': 'Awow', 'AWO': 'AWOX', 'XU': 'AUX', @@ -325,6 +326,7 @@ module.exports = { 'CU': 'Cube', 'CB': 'CUBOT', 'CUI': 'Cuiud', + 'CUL': 'Cultraview', 'CV': 'CVTE', 'CWO': 'Cwowdefu', 'CX0': 'CX', @@ -410,6 +412,7 @@ module.exports = { 'UD': 'DUNNS Mobile', 'DUU': 'Duubee', 'DUR': 'Durabook', + 'DUD': 'DUDU AUTO', 'DYO': 'Dyon', 'DYM': 'Dykemann', 'DTE': 'D-Tech', @@ -494,6 +497,7 @@ module.exports = { 'EO': 'Evolveo', '0Q': 'Evoo', '5U': 'EVPAD', + 'EVV': 'evvoli', 'E0': 'EvroMedia', 'XE': 'ExMobile', '4Z': 'Exmart', @@ -1448,7 +1452,7 @@ module.exports = { 'SY': 'Sanyo', 'SAN': 'SANY', 'S9': 'Savio', - 'Y4': 'SCBC', + 'Y4': 'TCL SCBC', 'CZ': 'Schneider', 'SCO': 'Scosmos', 'SC1': 'Scoole', @@ -1658,6 +1662,7 @@ module.exports = { 'TY': 'Tooky', 'TYD': 'TYD', 'TOO': 'TOOGO', + 'TPT': 'Top-Tech', 'T9': 'Top House', 'DK': 'Topelotek', '42': 'Topway', diff --git a/parser/device/shell-tv.js b/parser/device/shell-tv.js index 1e7b3645..568032c2 100644 --- a/parser/device/shell-tv.js +++ b/parser/device/shell-tv.js @@ -43,8 +43,8 @@ class ShellTv extends DeviceAbstractParser { * @return {Boolean} */ isShellTv(userAgent) { - let regex = '[a-z]+[ _]Shell[ _]\\w{6}|tclwebkit\\d+[\\.\\d]*'; - let match = this.getBaseRegExp(regex).exec(userAgent); + const regex = '[a-z]+[ _]Shell[ _]\\w{6}|tclwebkit(\\d+[.\\d]*)'; + const match = this.getBaseRegExp(regex).exec(userAgent); return match !== null; } } diff --git a/parser/helper.js b/parser/helper.js index b6342c05..202b3cc5 100755 --- a/parser/helper.js +++ b/parser/helper.js @@ -1,6 +1,42 @@ const YAML = require('js-yaml'); const fs = require('fs'); +/** + * restore original userAgent from clientHints object + * @param {string} userAgent + * @param {ResultClientHints} clientHints + */ +function restoreUserAgentFromClientHints(userAgent, clientHints) { + if (!hasDeviceModelByClientHints(clientHints)) { + return userAgent; + } + + const deviceModel = clientHints.device.model; + if (deviceModel === '') { + return userAgent; + } + + let newUserAgent = '' + userAgent; + if (hasUserAgentClientHintsFragment(newUserAgent)) { + const osHints = attr(clientHints, 'os', {}); + const osVersion = attr(osHints, 'version', ''); + newUserAgent = newUserAgent.replace(/(Android (?:10[.\d]*; K|1[1-5]))/, + `Android ${osVersion !== '' ? osVersion : '10'}; ${deviceModel}` + ); + } + + if (!hasDesktopFragment(newUserAgent)) { + return newUserAgent; + } + + newUserAgent = newUserAgent.replace(/(X11; Linux x86_64)/, + `X11; Linux x86_64; ${deviceModel}` + ); + + return newUserAgent; +} + + /** * match for base regex rule * @param str @@ -252,6 +288,14 @@ function hasDeviceModelByClientHints(clientHints) { return clientHints && clientHints.device && clientHints.device.model; } +/** + * @param {string} name + * @return {boolean} + */ +function hasDeviceModelWrong (name) { + return !!(name === '' || ['LeafOS on ARM64'].includes(name)); +} + /** * Get value by attribute for object or default value * @param {object} options @@ -373,10 +417,6 @@ function splitUserAgent(userAgent) { } let hash = createHash(parts.join('.')).replace('-', ''); let path = parts.join('.'); - - // console.log({tokens, groups, hash, path}); - - return {tokens, groups, hash, path}; } @@ -408,5 +448,7 @@ module.exports = { matchReplace, hasPuffinDesktopFragment, hasPuffinSmartphoneFragment, - hasPuffinTabletFragment + hasPuffinTabletFragment, + hasDeviceModelWrong, + restoreUserAgentFromClientHints }; \ No newline at end of file diff --git a/parser/os-abstract-parser.js b/parser/os-abstract-parser.js index 7f7fa1e0..6c7ac930 100755 --- a/parser/os-abstract-parser.js +++ b/parser/os-abstract-parser.js @@ -21,7 +21,7 @@ const LINEAGE_OS_VERSION_MAPPING = require('./os/lineage-os-version-map'); const getVersionForMapping = (version, map) => { - const majorVersion = ~~version.split('.', 1)[0]; + const majorVersion = '' + version.split('.', 1)[0]; if (map[version]) { return map[version]; } @@ -32,9 +32,10 @@ const getVersionForMapping = (version, map) => { } const compareOsForClientHints = (brand) => { + const lowerName = brand.toLowerCase(); for (let mapName in CLIENTHINT_MAPPING) { for (let mapBrand of CLIENTHINT_MAPPING[mapName]) { - if (brand.toLowerCase() === mapBrand.toLowerCase()) { + if (lowerName === mapBrand.toLowerCase()) { return mapName; } } @@ -106,8 +107,8 @@ class OsAbstractParser extends ParserAbstract { return { name, short }; } - parseFromClientHints(clientHintsData) { - if (!clientHintsData) { + parseFromClientHints(hint) { + if (!hint) { return null; } @@ -115,12 +116,14 @@ class OsAbstractParser extends ParserAbstract { let short = ''; let version = ''; let platform = ''; + let hintName = ''; - if (clientHintsData.os) { - platform = clientHintsData.os.platform; - version = clientHintsData.os.version; - let hintName = clientHintsData.os.name; - platform = comparePlatform(platform.toLowerCase(), clientHintsData.os.bitness); + if (hint.os && hint.os.name) { + platform = hint.os.platform; + version = hint.os.version; + hintName = hint.os.name; + + platform = comparePlatform(platform.toLowerCase(), hint.os.bitness); hintName = compareOsForClientHints(hintName); for (let osShort in OS_SYSTEMS) { @@ -133,18 +136,22 @@ class OsAbstractParser extends ParserAbstract { } } - if (name === 'Windows' && version !== '') { + if ('Windows' === name && '' !== version) { let majorVersion = ~~version.split('.', 1)[0]; + let minorVersion = ~~version.split('.', 2)[1]; if (majorVersion === 0) { - version = ''; - } - if (majorVersion > 0 && majorVersion < 11) { + let minorVersionMapping = {1: '7', 2 :'8', 3 :'8.1'}; + version = minorVersionMapping[minorVersion] ?? version; + } else if (majorVersion > 0 && majorVersion < 11) { version = '10'; } else if (majorVersion > 10) { version = '11'; } } - + // On Windows, version 0.0.0 can be either 7, 8 or 8.1, so we return 0.0.0 + if ('Windows' !== name && '0.0.0' !== version && 0 === parseInt(version)) { + version = ''; + } return { name: name, short_name: short, @@ -198,15 +205,18 @@ class OsAbstractParser extends ParserAbstract { /** * * @param {string} userAgent - * @param clientHints + * @param {ClientHintsResult} clientHints * @returns {null|{name: (string|*), short_name: string, family: string, version: string, platform: string}} */ parse(userAgent, clientHints) { - userAgent = this.prepareUserAgent(userAgent); + let ua = helper.restoreUserAgentFromClientHints(this.prepareUserAgent(userAgent), clientHints); let hint = this.parseFromClientHints(clientHints); - let data = this.parseFromUserAgent(userAgent); - - let name = '', version = '', platform = '', short = '', family = ''; + let data = this.parseFromUserAgent(ua); + let name = ''; + let version = ''; + let platform = ''; + let short = ''; + let family = ''; if (hint && hint.name) { name = hint.name; @@ -215,42 +225,59 @@ class OsAbstractParser extends ParserAbstract { short = hint.short_name; // use version from user agent if non was provided in client hints, but os family from useragent matches - if (version === '' && data && this.parseOsFamily(short) === data.family) { + if (data && '' === version && data && this.parseOsFamily(short) === data.family) { version = data.version; } - //If the OS name detected from client hints matches the OS family from user agent + // On Windows, version 0.0.0 can be either 7, 8 or 8.1 + if (data && 'Windows' === name && '0.0.0' === version) { + version = '10' === data.version ? '' : data.version; + } + + // If the OS name detected from client hints matches the OS family from user agent // but the os name is another, we use the one from user agent, as it might be more detailed if (data && data.family === name && data.name !== name) { name = data.name; - } + if ('LeafOS' === name) { + version = ''; + short = 'LEA'; + } - if ('HarmonyOS' === name) { - version = ''; - short = 'HAR'; - } + if ('HarmonyOS' === name) { + version = ''; + short = 'HAR'; + } - if ('PICO OS' === name) { - version = data.version; - short = 'PIC'; + if ('PICO OS' === name) { + version = data.version; + short = 'PIC'; + } + + if ('Fire OS' === name && '' !== hint.version) { + version = getVersionForMapping(hint.version, FIRE_OS_VERSION_MAPPING); + short = 'FIR'; + } } - if (data && data.name === 'Fire OS') { + // Chrome OS is in some cases reported as Linux in client hints, we fix this only if the version matches + if ( + data && + 'GNU/Linux' === name && + 'Chrome OS' === data.name && + hint.version === data.version + ) { + name = data.name; short = data.short_name; - version = getVersionForMapping(version, FIRE_OS_VERSION_MAPPING); } - if ('GNU/Linux' === name - && data - && 'Chrome OS' === data.name - && version === data.version - ) { + // Chrome OS is in some cases reported as Android in client hints + if (data && 'Android' === name && 'Chrome OS' === data.name) { name = data.name; + version = ''; short = data.short_name; } - family = this.parseOsFamily(short); - } else if (data && data.name) { + } else if (data) { name = data.name; version = data.version; short = data.short_name; @@ -259,24 +286,21 @@ class OsAbstractParser extends ParserAbstract { } if (clientHints && data && clientHints.app) { - if (ANDROID_APP_LIST.indexOf(clientHints.app) !== -1 && data.name !== 'Android') { + if (ANDROID_APP_LIST.indexOf(clientHints.app) !== -1 && 'Android' !== data.name) { name = 'Android'; short = 'ADR'; - family = 'Android'; version = ''; } - if (clientHints.app === 'org.mozilla.tv.firefox' && name !== 'Fire OS') { - name = 'Fire OS'; - family = 'Android'; - short = 'FIR'; - version = getVersionForMapping(version, FIRE_OS_VERSION_MAPPING); - } - if (clientHints.app === 'org.lineageos.jelly' && name !== 'Lineage OS') { + if ('org.lineageos.jelly' === clientHints.app && 'Lineage OS' !== name) { name = 'Lineage OS'; - family = 'Android'; short = 'LEN'; version = getVersionForMapping(data.version, LINEAGE_OS_VERSION_MAPPING); } + if ('org.mozilla.tv.firefox' === clientHints.app && 'Fire OS' !== name) { + name = 'Fire OS'; + short = 'FIR'; + version = getVersionForMapping(version, FIRE_OS_VERSION_MAPPING); + } } if (platform === '' && data) { @@ -287,6 +311,11 @@ class OsAbstractParser extends ParserAbstract { return data; } + family = this.parseOsFamily(short); + if (data === null || data.short_name !== short) { + short = this.getOsDataByName(name).short; + } + return { name: String(name), version: String(version), @@ -317,7 +346,7 @@ class OsAbstractParser extends ParserAbstract { if (this.getBaseRegExp('sparc64').test(userAgent)) { return 'SPARC64'; } - if (this.getBaseRegExp('64-?bit|WOW64|(?:Intel)?x64|WINDOWS_64|win64|amd64|x86_?64').test(userAgent)) { + if (this.getBaseRegExp('64-?bit|WOW64|(?:Intel)?x64|WINDOWS_64|win64|.*amd64|x86_?64').test(userAgent)) { return 'x64'; } if (this.getBaseRegExp('.+32bit|.+win32|(?:i[0-9]|x)86|i86pc').test(userAgent)) { diff --git a/parser/os/fire-os-version-map.js b/parser/os/fire-os-version-map.js index 1b5991c4..ad939667 100644 --- a/parser/os/fire-os-version-map.js +++ b/parser/os/fire-os-version-map.js @@ -12,5 +12,4 @@ module.exports = { '4.0.2': '3', '4': '2', '2': '1', - }; diff --git a/parser/os/lineage-os-version-map.js b/parser/os/lineage-os-version-map.js index 9c5d36be..1c2d7528 100644 --- a/parser/os/lineage-os-version-map.js +++ b/parser/os/lineage-os-version-map.js @@ -1,5 +1,6 @@ // prettier-ignore module.exports = { + '15': '22', '14': '21', '13': '20.0', '12.1': '19.1', diff --git a/regexes/bots.yml b/regexes/bots.yml index 73d09981..86694604 100644 --- a/regexes/bots.yml +++ b/regexes/bots.yml @@ -805,6 +805,38 @@ name: 'Google Inc.' url: 'https://www.google.com/' +- regex: 'Google-Document-Conversion' + name: 'Google-Document-Conversion' + category: 'Service Agent' + url: 'https://support.google.com/drive/answer/176692?hl=en' + producer: + name: 'Google Inc.' + url: 'https://www.google.com/' + +- regex: 'GoogleDocs; apps-spreadsheets' + name: 'Google Sheets' + category: 'Service Agent' + url: 'https://workspace.google.com/products/sheets/' + producer: + name: 'Google Inc.' + url: 'https://www.google.com/' + +- regex: 'GoogleDocs; apps-presentations' + name: 'Google Slides' + category: 'Service Agent' + url: 'https://workspace.google.com/products/slides/' + producer: + name: 'Google Inc.' + url: 'https://www.google.com/' + +- regex: 'GoogleDocs;' + name: 'Google Docs' + category: 'Service Agent' + url: 'https://docs.google.com/' + producer: + name: 'Google Inc.' + url: 'https://www.google.com/' + - regex: 'SeznamEmailProxy' name: 'Seznam Email Proxy' category: 'Crawler' @@ -949,7 +981,7 @@ name: '' url: 'https://ip-guide.com' -- regex: 'k6/[0-9\.]+' +- regex: 'k6/[0-9.]+' name: 'K6' url: 'https://k6.io/' @@ -4854,6 +4886,19 @@ name: 'Peer39 Tech, LLC' url: 'https://www.peer39.com/' +- regex: 'Pandalytics' + name: 'Pandalytics' + category: 'Crawler' + url: 'https://www.domainsbot.com/business-intelligence/' + producer: + name: 'DomainsBot, Inc.' + url: 'https://www.domainsbot.com/' + +- regex: 'CloudServerMarketSpider' + name: 'CloudServerMarketSpider' + category: 'Crawler' + url: 'https://web.archive.org/web/20151228225429/https://cloudservermarket.com/spider.html' + # Generic bots - regex: 'nuhk|grub-client|Download Demon|SearchExpress|Microsoft URL Control|borg|altavista|dataminr\.com|teoma|oegp|http%20client|htdig|mogimogi|larbin|scrubby|searchsight|semanticdiscovery|snappy|vortex(?!(?: Build|Plus| CM62| HD65))|zeal(?!ot)|dataparksearch|findlinks|BrowserMob|URL2PNG|ZooShot|GomezA|Google SketchUp|Read%20Later|7Siters|centuryb\.o\.t9|InterNaetBoten|EasyBib AutoCite|Bidtellect|tomnomnom/meg|cortex|Re-re Studio|adreview|AHC/|NameOfAgent|Request-Promise|ALittle Client|Hello,? world|wp_is_mobile|0xAbyssalDoesntExist|Anarchy99|^revolt|nvd0rz|xfa1|Hakai|gbrmss|fuck-your-hp|IDBTE4M CODE87|Antoine|Insomania|Hells-Net|b3astmode|Linux Gnu \(cow\)|Test Certificate Info|iplabel|Magellan|TheSafex?Internetx?Search|Searcherx?web|kirkland-signature|LinkChain|survey-security-dot-txt|infrawatch|Time/|r00ts3c-owned-you|nvdorz|Root Slut|NiggaBalls|BotPoke|GlobalWebSearch|xx032_bo9vs83_2a|sslshed|geckotrail|Wordup|Keydrop|^xenu|^(?:chrome|firefox|Abcd|Dark|KvshClient|Node.js|Report Runner|url|Zeus|ZmEu)$' name: 'Generic Bot' diff --git a/regexes/client-index-hash.yml b/regexes/client-index-hash.yml index 867a337e..da9a53ac 100644 --- a/regexes/client-index-hash.yml +++ b/regexes/client-index-hash.yml @@ -1,93 +1,93 @@ '0': - - - 2 - - 86 - - 301 - - 338 - - 360 - - 417 - - 452 - - 470 - - 473 - - 478 - - 549 + - - 3 + - 87 + - 303 + - 340 + - 362 + - 419 + - 454 + - 472 + - 475 + - 480 + - 551 - - 18 - 69 - 86 - - 217 - - 226 - - 270 - - 297 + - 218 + - 227 + - 271 - 298 - - 334 - - 338 - - 414 - - 433 - - 479 + - 299 + - 335 + - 339 + - 415 + - 434 + - 480 '19826': - [] - - - 295 + - - 296 '308060': - [] - - - 390 + - - 391 '1382250': - - - 159 + - - 160 - [] '2437038': - - - 321 + - - 323 - [] '2439163': - - - 79 + - - 80 - [] '4352225': - - - 557 + - - 559 - [] '4669617': - - - 337 + - - 339 - [] '5660145': - - - 348 + - - 350 - [] '6322786': - - - 473 + - - 475 - [] '6468087': - [] - - - 403 + - - 404 '6999762': - - - 337 + - - 339 - [] '7095382': - - - 295 + - - 297 - [] '8046990': - [] - - - 344 + - - 345 '9139662': - [] - - 176 '9690313': - - - 473 + - - 475 - [] '10764936': - [] - - - 553 + - - 554 '11322577': - - - 177 + - - 178 - [] '11869884': - [] - - - 553 + - - 554 '11878147': - [] - - - 447 + - - 448 '14890961': - - - 473 + - - 475 - [] '15942024': - - - 367 + - - 369 - [] '17124302': - - - 270 + - - 272 - [] '17144731': - [] @@ -96,121 +96,121 @@ - [] - - 58 '18884351': - - - 397 + - - 399 - [] '20389582': - [] - - 31 '21505618': - [] - - - 553 + - - 554 '21931179': - [] - [] '22035597': - - - 56 + - - 57 - [] '22180864': - - - 549 + - - 551 - [] '22967125': - [] - - 83 '23057062': - [] - - - 447 + - - 448 '24743942': - [] - - - 535 + - - 536 '24821779': - - - 88 + - - 89 - [] '25011263': - - - 378 + - - 380 - [] '26627776': - - - 478 + - - 480 - [] '26994829': - - - 473 + - - 475 - [] '27464470': - - - 520 + - - 522 - [] '27810946': - [] - - - 233 + - - 234 '27877385': - - - 363 + - - 365 - [] '28292465': - - - 417 + - - 419 - [] '29511629': - - - 549 + - - 551 - [] '31389569': - [] - - - 408 + - - 409 '31950925': - - - 549 + - - 551 - [] '32238535': - [] - - 28 '34722479': - - - 221 + - - 223 - [] '34840759': - - - 437 + - - 439 - [] '35003179': - - - 361 + - - 363 - [] '36506516': - [] - [] '37109863': - - - 200 + - - 202 - [] '38322915': - - - 449 + - - 451 - [] '38400403': - - - 473 + - - 475 - [] '39027585': - - - 470 + - - 472 - [] '39438938': - - - 470 + - - 472 - [] '41575166': - - - 473 + - - 475 - [] '41872849': - [] - - 58 '42408242': - - - 549 + - - 551 - [] '42872667': - [] - - - 509 + - - 510 '43533439': - - - 473 + - - 475 - [] '44195986': - [] - - - 223 + - - 224 '44546204': - - - 337 + - - 339 - [] '45729317': - - - 549 + - - 551 - [] '45960742': - - - 449 + - - 451 - [] '47720741': - [] @@ -219,22 +219,22 @@ - [] - - 13 '48849052': - - - 186 + - - 188 - [] '48990983': - [] - - - 419 + - - 420 '49689089': - - - 449 + - - 451 - [] '50174643': - - - 181 + - - 182 - [] '51216994': - [] - [] '51533858': - - - 517 + - - 519 - [] '52370160': - [] @@ -243,31 +243,31 @@ - [] - - 44 '52753270': - - - 549 + - - 551 - [] '52948980': - - - 473 + - - 475 - [] '53711528': - [] - - 107 '54535766': - [] - - - 533 + - - 534 '55059779': - - - 473 + - - 475 - [] '55107418': - - - 337 + - - 339 - [] '55211138': - - - 533 + - - 535 - [] '55363670': - - - 549 + - - 551 - [] '55517460': - - - 391 + - - 393 - [] '56366875': - [] @@ -277,40 +277,40 @@ - [] '58364015': - [] - - - 430 + - - 431 '58864371': - - - 478 + - - 480 - [] '58975892': - - - 549 + - - 551 - [] '59153330': - - - 395 + - - 397 - [] '59341277': - [] - - - 381 + - - 382 '59625102': - - - 566 + - - 568 - [] '59937590': - - - 549 + - - 551 - [] '60912286': - - - 78 + - - 79 - [] '61995893': - - - 402 + - - 404 - [] '63847241': - - - 85 + - - 86 - [] '63876706': - - - 347 + - - 349 - [] '63963087': - [] - - - 239 + - - 240 '65107365': - [] - [] @@ -318,74 +318,74 @@ - [] - - 20 '67833893': - - - 79 + - - 80 - [] '68233211': - [] - - - 560 + - - 565 '68346369': - [] - - - 540 + - - 541 '68416500': - - - 378 + - - 380 - [] '69069605': - - - 470 + - - 472 - [] '70305296': - - - 461 + - - 463 - [] '71098192': - [] - - - 553 + - - 554 '71335209': - - - 549 + - - 551 - [] '73526992': - [] - - 42 '73668773': - - - 1 + - - 2 - [] '74363495': - [] - - - 303 + - - 304 '75472901': - - - 549 + - - 551 - [] '75640236': - - - 337 + - - 339 - [] '75654507': - [] - - 154 '75696646': - [] - - - 379 + - - 380 '76021087': - - - 378 + - - 380 - [] '76532769': - [] - - - 360 + - - 361 '76542198': - - - 392 + - - 394 - [] '76975216': - [] - - 132 '77507853': - - - 365 + - - 367 - [] '77750263': - - - 449 + - - 451 - [] '79491136': - - - 557 + - - 559 - [] 6611b99: - [] - - - 562 + - - 567 64f06218: - [] - - 29 @@ -409,7 +409,7 @@ - - 52 129cddef: - [] - - - 344 + - - 345 344cb1b0: - [] - - 53 @@ -417,45 +417,46 @@ - [] - - 53 4a59b8f0: - - - 22 - - 65 - - 175 - - 193 - - 212 - - 219 - - 302 - - 318 - - 349 - - 389 - - 403 - - 414 - - 448 - - 454 - - 458 - - 474 - - 482 - - 485 - - 499 - - 515 + - - 23 + - 66 + - 176 + - 195 + - 214 + - 221 + - 304 + - 320 + - 351 + - 391 + - 405 + - 416 + - 450 + - 456 + - 460 + - 476 + - 484 + - 487 + - 501 - 517 - - 518 - 519 - 520 - 521 - 522 - 523 - - 533 - - 534 + - 524 + - 525 - 535 - - 549 - - 556 + - 536 + - 537 + - 551 + - 558 - - 55 - 115 - 210 - - 245 + - 246 + - 297 7f5c31e: - [] - - - 338 + - - 339 1f902e13: - [] - - 56 @@ -488,7 +489,7 @@ - - 73 39f54364: - [] - - - 261 + - - 262 1e92efad: - [] - - 74 @@ -644,7 +645,7 @@ dd4: - - 160 6e6497c7: - [] - - - 500 + - - 501 2030b3cb: - [] - - 161 @@ -721,10 +722,10 @@ df840ea: - [] - - 34 af7a0f9: - - - 279 + - - 281 - - 215 650a3d3: - - - 378 + - - 380 - - 216 b2ad7d9: - [] @@ -737,7 +738,7 @@ b2ad7d9: - - 41 62cee77: - [] - - - 218 + - - 219 5a0a66af: - [] - - 212 @@ -746,71 +747,71 @@ b2ad7d9: - - 212 5505b4e3: - [] - - - 219 + - - 220 4bac6dfa: - [] - - - 220 + - - 221 430d79d4: - [] - - - 221 + - - 222 5e5287c9: - [] - - - 222 + - - 223 7a57c767: - [] - - - 224 + - - 225 5b3b3f3c: - [] - - - 225 + - - 226 23bba26d: - [] - - - 227 + - - 228 407c15e6: - [] - - - 228 + - - 229 499c17c9: - [] - - - 229 + - - 230 3d7ad7e: - [] - - - 230 + - - 231 5f1cd89a: - [] - - - 231 + - - 232 5c0c55d8: - [] - - - 232 + - - 233 6ed9b25c: - [] - - 175 143c92fb: - [] - - - 234 + - - 235 4cf86625: - [] - - - 235 + - - 236 2274a3c7: - [] - - - 236 + - - 237 77ec3dc1: - [] - - - 240 + - - 241 '326261e0': - [] - - - 241 + - - 242 1f035d2c: - [] - - - 242 + - - 243 32b55ff7: - [] - - - 236 + - - 237 6d90123e: - - - 55 - - 218 - - 251 - - 252 - - 418 - - 470 + - - 56 + - 220 + - 253 + - 254 + - 420 + - 472 - - 6 - 12 - 14 @@ -819,97 +820,100 @@ b2ad7d9: - 88 - 119 - 135 - - 548 + - 549 + - 562 + - 563 + - 564 6dd99392: - [] - - - 243 + - - 244 777919cc: - [] - - - 244 + - - 245 73c2d5b7: - [] - - - 233 + - - 234 30a95a: - [] - - 36 - - 246 + - 247 74411e1d: - [] - - - 246 + - - 247 357f4990: - [] - - - 247 + - - 248 5e263ca3: - [] - - - 248 + - - 249 1033edaa: - [] - - - 249 + - - 250 605a11aa: - [] - - 106 62f7b1a8: - [] - - - 251 + - - 252 8d003e2: - [] - - - 252 + - - 253 4cbdbc14: - [] - - - 253 + - - 254 253a96ae: - [] - - - 255 + - - 256 67b30281: - [] - - - 254 + - - 255 50c7b3c: - [] - - - 256 + - - 257 1b8db1d9: - [] - - - 257 + - - 258 38e2f340: - [] - - 123 4143d20c: - [] - - - 258 + - - 259 ca85836: - [] - - - 259 + - - 260 6e8a34f0: - - - 428 - - 470 + - - 430 + - 472 - - 16 - - 264 + - 265 61a29ab2: - [] - - - 260 + - - 261 5db7bc82: - [] - - - 265 + - - 266 808d9a: - - - 534 - - 547 + - - 536 - 549 - - 557 + - 551 + - 559 - - 3 - 18 - 78 - - 266 + - 267 ae60a22: - [] - - - 267 + - - 268 232c9817: - [] - - - 268 + - - 269 7886acd2: - [] - - 30 5338e7e2: - [] - - - 269 + - - 270 1797bd82: - [] - - 27 @@ -917,90 +921,91 @@ b56770f: - [] - - 13 4fd199d7: - - - 549 + - - 551 - - 13 - - 311 - - 500 + - 312 + - 501 67e3c952: - [] - - - 271 + - - 272 '316e6128': - [] - - - 272 + - - 273 447fd81d: - [] - - - 273 + - - 274 473a529f: - [] - - - 274 + - - 275 13df7338: - [] - - - 276 + - - 277 3435305f: - [] - - - 277 + - - 278 778bec83: - [] - - - 277 + - - 278 322f463: - [] - - - 275 + - - 276 5df44960: - [] - - - 275 + - - 276 35f587b5: - [] - - - 278 + - - 279 6a3d132b: - [] - - - 279 + - - 280 374f66ab: - [] - - - 280 + - - 281 728db14a: - [] - - - 281 + - - 282 687a6aee: - [] - - - 282 + - - 283 '71056e58': - [] - - - 283 + - - 284 5b8a6c2a: - [] - - - 284 + - - 285 1557403f: - [] - - 126 bec1db2: - - - 73 - - 428 - - 438 - - 556 + - - 74 + - 430 + - 440 + - 558 - - 5 - 14 - 15 - 17 - 18 - 19 + - 562 '23e64330': - [] - - - 285 + - - 286 40afd6bd: - [] - - - 286 + - - 287 61f64276: - [] - - - 287 + - - 288 5efa2e3d: - [] - - - 288 + - - 289 b5f02d: - [] - - - 289 + - - 290 7035c518: - [] - - - 290 + - - 291 482f27b1: - [] - - 134 @@ -1009,61 +1014,61 @@ b5f02d: - - 175 7b1ed138: - [] - - - 291 + - - 292 51212d86: - [] - - 8 1f237de5: - [] - - - 292 + - - 293 1f538420: - [] - - - 293 + - - 294 1dee3693: - [] - - - 294 + - - 295 21e603d6: - [] - - 24 43ecf3ab: - [] - - - 296 + - - 297 6d68d251: - [] - - - 302 + - - 303 614e91c0: - [] - - - 292 + - - 293 117e6d44: - [] - - - 304 + - - 305 7e755cfb: - [] - - - 305 + - - 306 7f2651e2: - [] - - - 306 + - - 307 ecfbf23: - [] - - - 262 + - - 263 358fed6e: - [] - - - 307 + - - 308 6b28c92d: - [] - - - 261 + - - 262 1bb20664: - [] - - - 308 + - - 309 6b00cfc: - [] - - 97 1d079209: - [] - - - 312 + - - 313 76c8dec0: - [] - - - 313 + - - 314 7a90caba: - [] - - 176 @@ -1072,37 +1077,37 @@ ecfbf23: - - 176 7a318527: - [] - - - 314 + - - 315 14223a44: - [] - - - 315 + - - 316 12b09dbf: - [] - - - 316 + - - 317 2f095817: - [] - - 45 1b1f6: - [] - - - 317 + - - 318 7e27d3d2: - [] - - 121 4e39735d: - [] - - - 562 + - - 567 4abd423a: - [] - - - 318 + - - 319 4328bcf9: - [] - - - 319 + - - 320 2fb2d23f: - [] - - - 319 + - - 320 9c59076: - [] - - - 319 + - - 320 5662fd91: - [] - - 184 @@ -1114,13 +1119,13 @@ ecfbf23: - - 186 5aeb839d: - [] - - - 321 + - - 322 644a20: - [] - - 47 6d594a38: - [] - - - 325 + - - 326 28f5d91b: - [] - - 145 @@ -1128,69 +1133,69 @@ ecfbf23: - [] - - 11 61a3c2de: - - - 188 - - 243 - - 491 - - 534 - - 549 - - - 562 + - - 190 + - 245 + - 493 + - 536 + - 551 + - - 567 7a316e20: - [] - - - 314 + - - 315 6c32d913: - [] - - - 506 + - - 507 22c1fbd9: - [] - - - 507 + - - 508 79cf3b53: - [] - - - 316 + - - 317 15903b19: - [] - - - 515 + - - 516 2066a337: - [] - - 128 bab3566: - [] - - - 266 + - - 267 e5c73d7: - [] - - - 516 + - - 517 '47570e72': - [] - - - 260 + - - 261 6b7005f1: - [] - - - 517 + - - 518 3357c991: - [] - - - 518 + - - 519 88ee080: - [] - - - 519 + - - 520 48d83466: - [] - - - 508 + - - 509 411c133a: - [] - - - 520 + - - 521 18b54701: - [] - - - 521 + - - 522 13f212ee: - [] - - - 522 + - - 523 15b84346: - [] - - - 523 + - - 524 3c127317: - [] - - - 524 + - - 525 47390d7a: - [] - - - 525 + - - 526 17a1acf3: - [] - - 44 @@ -1214,10 +1219,10 @@ e5c73d7: - - 43 2988a378: - [] - - - 526 + - - 527 4aa7ef85: - [] - - - 526 + - - 527 17f6021f: - [] - - 75 @@ -1229,64 +1234,64 @@ e5c73d7: - - 76 11f77aba: - [] - - - 263 + - - 264 3fcab9a8: - [] - - - 527 + - - 528 55fe38a4: - [] - - - 515 + - - 516 5f0b131c: - [] - - - 528 + - - 529 60d6f4cc: - [] - - - 529 + - - 530 6aa2a447: - [] - - - 530 + - - 531 9fa0c78: - - - 72 - - 114 - - 165 - - 188 - - 337 - - 338 - - 549 + - - 73 + - 115 + - 166 + - 190 + - 339 + - 340 + - 551 - - 16 - 19 - - 531 + - 532 3d78834f: - [] - - - 532 - - 534 + - - 533 + - 535 2cdfa059: - [] - - - 533 + - - 534 300b4166: - [] - - - 534 + - - 535 54975a62: - [] - - - 536 + - - 537 75641bdf: - [] - - - 537 + - - 538 6c8b1d55: - [] - - 68 2458104d: - [] - - - 309 + - - 310 2a467107: - [] - - - 261 + - - 262 2cfa571c: - [] - - - 538 + - - 539 6ba9d24: - [] - - - 539 + - - 540 7a8eacfd: - [] - - 147 @@ -1295,7 +1300,7 @@ e5c73d7: - - 147 7229ca2f: - [] - - - 541 + - - 542 ac9ab57: - [] - - 7 @@ -1310,51 +1315,51 @@ ac9ab57: - - 118 2c2a1a3b: - [] - - - 542 + - - 543 238b9601: - [] - - - 543 + - - 544 486a1d91: - [] - - - 410 + - - 411 77b73efb: - [] - - - 410 + - - 411 2460167c: - [] - - - 544 + - - 545 41c3ed84: - [] - - - 544 + - - 545 25ad0c38: - [] - - - 560 + - - 565 2ea1c973: - [] - - - 545 + - - 546 4315ff0f: - [] - - - 560 + - - 565 1c6c16c: - [] - - - 560 + - - 565 5727f664: - [] - - - 560 + - - 565 77acea5f: - [] - - - 546 + - - 547 60a7f679: - [] - - - 547 + - - 548 7fe80084: - [] - - 21 4f76725f: - [] - - - 549 + - - 550 6b00451e: - - - 282 + - - 284 - - 174 5c638706: - [] @@ -1367,1953 +1372,1980 @@ ac9ab57: - - 128 39341bd0: - [] - - - 551 + - - 552 521bf748: - [] - - - 552 + - - 553 1b84ee51: - [] - - - 553 + - - 554 79c4af7b: - [] - - - 554 + - - 555 3f77a896: - [] - - - 555 + - - 556 1d086cf1: - [] - - - 237 + - - 238 29ff4c2a: - [] - - - 238 + - - 239 5ca49e95: - [] - - - 239 + - - 240 7d35f3e9: - [] - - - 556 + - - 557 2ad6f018: - [] - - - 557 + - - 558 '151e3377': - [] - - - 558 + - - 559 1ea986e9: - [] - - - 559 + - - 560 +3020e9d6: + - [] + - - 196 +18fd2: + - [] + - - 190 + - 200 +2385c977: + - [] + - - 217 +334518a2: + - [] + - - 217 +3367454a: + - [] + - - 561 +62b538a6: + - - 420 + - 483 + - 503 + - 549 + - 551 + - 556 + - 557 + - - 5 + - 6 + - 18 + - 78 + - 563 + - 564 6e309bc8: - - - 271 + - - 273 - [] 56eb4e2f: - - - 285 + - - 287 - [] af21991: - - - 283 + - - 285 - [] 4d15443d: - - - 350 + - - 352 - [] 7031df7d: - - - 492 + - - 494 - [] 76af7357: - - - 304 + - - 306 - [] 15659c90: - - - 478 - - 549 + - - 480 + - 551 - [] -62b538a6: - - - 418 - - 481 - - 501 - - 547 - - 549 - - 554 - - 555 - - - 5 - - 6 - - 18 - - 78 3dd4f491: - - - 495 + - - 497 - [] 53f62b04: - - - 493 + - - 495 - [] 69fbf1c2: - - - 494 + - - 496 - [] 965963b: - - - 305 + - - 307 - [] 7f28a744: - - - 547 + - - 549 - [] 56106e0e: - - - 388 + - - 390 - [] 1b275251: - - - 389 + - - 391 - [] 6ca1e808: - - - 496 + - - 498 - [] 4e8b34ae: - - - 306 + - - 308 - [] 7eca0f9e: - - - 158 + - - 159 - [] 473507d6: - - - 308 + - - 310 - [] 7fcdae16: - - - 498 + - - 500 - [] 6b2667e2: - - - 289 + - - 291 - [] 25eb4113: - - - 322 + - - 324 - [] 6216a88e: - - - 419 + - - 421 - [] 7c303dd1: - - - 383 + - - 385 - [] 5f24e38b: - - - 477 + - - 479 - [] 2a494854: - - - 478 + - - 480 - [] 99bd518: - - - 164 - - 169 - - 218 - - 279 - - 308 - - 418 - - 438 - - 470 - - 473 - - 478 + - - 165 + - 170 + - 220 + - 281 + - 310 + - 420 + - 440 + - 472 + - 475 + - 480 - [] faba664: - - - 143 - - 223 - - 311 - - 418 - - 478 + - - 144 + - 225 + - 313 + - 420 + - 480 - [] 7a6d6e8c: - - - 472 + - - 474 - [] 54c7b064: - - - 385 + - - 387 - [] f7d30b3: - - - 382 + - - 384 - [] 76bff86f: - - - 314 + - - 316 - [] 5ec11b22: - - - 384 + - - 386 - [] 6eac16f3: - - - 475 + - - 477 - [] 5740c8e5: - - - 500 + - - 502 - [] 6431d3e6: - - - 497 + - - 499 - [] 2fe6ab0a: - - - 497 + - - 499 - [] 7a18517f: - - - 503 + - - 505 - [] 5b28c4a: - - - 502 + - - 504 - [] 38c184d8: - - - 558 + - - 560 - [] 424720f6: - - - 420 + - - 422 - [] 58e43cda: - - - 505 + - - 507 - [] 4d83398c: - - - 504 + - - 506 - [] 585fc3c7: - - - 411 + - - 413 - [] ea11d9: - - - 411 + - - 413 - [] 5fb3a7eb: - - - 351 + - - 353 - [] 540c366e: - - - 507 + - - 509 - [] 5e1abacc: - - - 508 + - - 510 - [] 2131004b: - - - 298 + - - 300 - [] 4d08972a: - - - 200 - - 227 - - 330 - - 344 - - 347 + - - 202 + - 229 + - 332 + - 346 + - 349 - [] 169cda9d: - - - 348 + - - 350 - [] 24a89c04: - - - 348 + - - 350 - [] d03b344: - - - 348 + - - 350 - [] 2c640643: - - - 348 + - - 350 - [] 3bd7620b: - - - 348 + - - 350 - [] 7ed7e089: - - - 345 + - - 347 - [] 34308fb2: - - - 328 + - - 330 - [] 58b992ec: - - - 328 + - - 330 - [] 728dff79: - - - 316 + - - 318 - [] 4fa269ee: - - - 353 + - - 355 - [] a1149b2: - - - 354 + - - 356 - [] 645388ab: - - - 509 + - - 511 - [] 28bc3429: - - - 512 + - - 514 - [] 750534d7: - - - 513 + - - 515 - [] 6023f433: - - - 448 + - - 450 - [] 4f141f03: - - - 515 + - - 517 - [] 7b492946: - - - 315 + - - 317 - [] 70c776d1: - - - 310 + - - 312 - [] 71bcae57: - - - 280 + - - 282 - [] 5dbdf301: - - - 281 + - - 283 - [] 7f652bde: - - - 410 + - - 412 - [] 1f7718fe: - - - 409 + - - 411 - [] 5ae2a92c: - - - 487 + - - 489 - [] 2ca1376f: - - - 525 + - - 527 - [] 44e007f5: - - - 526 + - - 528 - [] 3564f3e8: - - - 386 + - - 388 - [] 18e04c75: - - - 319 + - - 321 - [] 7b82d98c: - - - 324 + - - 326 - [] 77515d89: - - - 320 + - - 322 - [] 6a6d79e8: - - - 413 + - - 415 - [] 6234fb9: - - - 527 + - - 529 - [] 9608acd: - - - 528 + - - 530 - [] 4baf1578: - - - 488 + - - 490 - [] 7161d192: - - - 299 + - - 301 - [] 542cc1dd: - - - 295 + - - 297 - [] 36ba7aed: - - - 300 + - - 302 - [] 19357bf1: - - - 300 + - - 302 - [] 7cd8d423: - - - 489 + - - 491 - [] eaff85f: - - - 400 + - - 402 - [] 21e300d6: - - - 554 + - - 556 - [] 1da73598: - - - 399 + - - 401 - [] 1e2778f7: - - - 445 + - - 447 - [] 51fdf893: - - - 403 + - - 405 - [] 54f512f4: - - - 453 + - - 455 - [] 21bf8e0b: - - - 455 + - - 457 - [] 39243b6: - - - 531 + - - 533 - [] 22e55ace: - - - 456 + - - 458 - [] 6e72df1e: - - - 533 + - - 535 - [] 56dee9ca: - - - 355 + - - 357 - [] 1b9393ec: - - - 355 + - - 357 - [] 70c212d1: - - - 459 + - - 461 - [] 1d6dd896: - - - 468 + - - 470 - [] 3df20d84: - - - 536 + - - 538 - [] 785a52d2: - - - 537 + - - 539 - [] 82cceba: - - - 451 - - 549 + - - 453 + - 551 - [] 746ead4d: - - - 370 + - - 372 - [] 2e2e2a10: - - - 365 - - 372 - - 373 - - 376 + - - 367 + - 374 + - 375 - 378 + - 380 - [] 6cf54841: - - - 337 + - - 339 - [] 7ee4f155: - - - 365 + - - 367 - [] 1e6fc7dc: - - - 372 + - - 374 - [] 3a1182c: - - - 378 + - - 380 - [] f1764aa: - - - 378 + - - 380 - [] 6b006c27: - - - 377 - - 378 - - 478 + - - 379 + - 380 + - 480 - [] 22c88329: - - - 485 - - 538 + - - 487 + - 540 - [] 3a09285c: - - - 449 + - - 451 - [] 6abb16e1: - - - 450 + - - 452 - [] 844b6ed: - - - 529 + - - 531 - [] 52898bd8: - - - 303 + - - 305 - [] 8c33d0c: - - - 163 + - - 164 - [] 61a3ecbd: - - - 313 + - - 315 - [] 742a6b1b: - - - 483 + - - 485 - [] 17decbcc: - - - 406 - - 407 + - - 408 + - 409 - [] 188cdfa5: - - - 486 + - - 488 - [] 3de94874: - - - 530 + - - 532 - [] 4f75e1a: - - - 539 + - - 541 - [] 52d5be04: - - - 381 + - - 383 - [] 65c69a5b: - - - 352 + - - 354 - [] 5105b97c: - - - 422 + - - 424 - [] 7c5b66c8: - - - 422 + - - 424 - [] 551a9e70: - - - 286 + - - 288 - [] 4b7f7351: - - - 57 + - - 58 - [] 3c1327b8: - - - 557 + - - 559 - [] 7b3c2abe: - - - 186 + - - 188 - [] 1ea4871f: - - - 540 + - - 542 - [] 47ea967a: - - - 541 + - - 543 - [] 377c08b1: - - - 542 + - - 544 - [] bdcff70: - - - 543 + - - 545 - [] 5c9990f9: - - - 427 + - - 429 - [] 7b9dd6ce: - - - 427 + - - 429 - [] 9912c7d: - - - 544 + - - 546 - [] 310df7a4: - - - 466 + - - 468 - [] 68c6428d: - - - 480 + - - 482 - [] 6dafc0cf: - - - 337 + - - 339 - [] 45cfcb09: - - - 396 + - - 398 - [] f92f964: - - - 545 + - - 547 - [] 1122d932: - - - 484 + - - 486 - [] 655b680e: - - - 394 + - - 396 - [] 68e4780e: - - - 546 + - - 548 - [] 65f545fe: - - - 417 + - - 419 - [] 58de233b: - - - 416 + - - 418 - [] 1f923fea: - - - 356 + - - 358 - [] 2eb36d58: - - - 357 + - - 359 - [] 795ceca7: - - - 358 + - - 360 - [] 178b6913: - - - 297 + - - 299 - [] 7803b3ce: - - - 470 + - - 472 - - 14 - 18 - 135 7874461c: - - - 550 + - - 552 - [] 43935ceb: - - - 154 + - - 155 - [] 775ceccd: - - - 293 + - - 295 - [] 2f6f1de6: - - - 290 + - - 292 - [] 72f4d459: - - - 309 + - - 311 - [] 3c7407ee: - - - 329 + - - 331 - [] 3c4a182d: - - - 514 + - - 516 - [] 6ddf9f33: - - - 559 + - - 561 - [] 7a642848: - - - 430 + - - 432 - [] 31cd6f4c: - - - 274 + - - 276 - [] 5dbc10bc: - - - 276 + - - 278 - [] 37491da4: - - - 278 + - - 280 - [] 3051658c: - - - 431 + - - 433 - [] bb741c: - - - 432 + - - 434 - [] 63fdf457: - - - 443 + - - 445 - [] 4c609d24: - - - 439 + - - 441 - [] '314005e2': - - - 408 + - - 410 - [] 60d0e032: - - - 287 + - - 289 - [] 6f6d2146: - - - 442 + - - 444 - [] 5b079a94: - - - 412 + - - 414 - [] 12ebd5e5: - - - 288 + - - 290 - [] 7cc3c6a5: - - - 437 + - - 439 - [] 6b006449: - - - 366 + - - 368 - [] 5df38145: - - - 367 + - - 369 - [] 57ff5ad3: - - - 274 + - - 276 - [] 6ab9c0a6: - - - 374 + - - 376 - [] 5fe29b7b: - - - 469 + - - 471 - [] faa4cd5: - - - 436 + - - 438 - [] e1ed5c3: - - - 434 + - - 436 - [] 48f707e2: - - - 332 + - - 334 - [] 749473c9: - - - 359 + - - 361 - [] 2d0bf7a3: - - - 254 + - - 256 - [] 59ebfefd: - - - 253 + - - 255 - [] 3b25ae02: - - - 255 + - - 257 - [] '694633e4': - - - 256 + - - 258 - [] 23d7256b: - - - 257 + - - 259 - [] 57cec7b9: - - - 258 + - - 260 - [] 61b52838: - - - 259 + - - 261 - [] af619fa: - - - 261 + - - 263 - [] 46cf990f: - - - 266 + - - 268 - [] 392aa50a: - - - 269 + - - 271 - [] 5e1c3170: - - - 392 + - - 394 - [] 3e90fd9a: - - - 394 + - - 396 - [] '21324e55': - - - 233 + - - 235 - [] 45f81015: - - - 233 + - - 235 - [] 353de659: - - - 249 + - - 251 - [] 1f0c9ab5: - - - 250 + - - 252 - [] 501dcd25: - - - 362 + - - 364 - [] 1b2da8c: - - - 335 + - - 337 - [] 1beda657: - - - 426 + - - 428 - [] 2b8406ab: - - - 506 + - - 508 - [] 4cab510a: - - - 425 + - - 427 - [] 22040b2f: - - - 423 + - - 425 - [] 377a507f: - - - 424 + - - 426 - [] 3df765ee: - - - 323 + - - 325 - [] 7a175b94: - - - 458 + - - 460 - [] 23ef0d36: - - - 561 + - - 563 - [] 3705af: - - - 560 + - - 562 - [] 7030eb3d: - - - 234 + - - 236 - [] e5a59de: - - - 235 + - - 237 - [] 3ccd243c: - - - 236 + - - 238 - [] 30b7302f: - - - 237 + - - 239 - [] 59902af1: - - - 238 + - - 240 - [] 5e05953c: - - - 239 + - - 241 - [] 32e1b4c9: - - - 240 + - - 242 - [] 59a4c164: - - - 241 + - - 243 - [] 11e64d9e: - - - 242 + - - 244 - [] 53a58e13: - - - 244 + - - 246 - [] 4c252a0e: - - - 245 + - - 247 - [] 6ddfb72e: - - - 245 + - - 247 - [] 235501a6: - - - 246 + - - 248 - [] '7e516753': - - - 247 + - - 249 - [] 33e34e: - - - 248 + - - 250 - [] 6b003848: - - - 228 + - - 230 - [] 5933f224: - - - 230 + - - 232 - [] 3f106904: - - - 231 + - - 233 - [] 427f2abe: - - - 232 + - - 234 - [] 2401ebad: - - - 460 + - - 462 - [] 1124629e: - - - 552 + - - 554 - [] 2e90d1b0: - - - 220 + - - 222 - [] 72e111fe: - - - 222 + - - 224 - [] 776059cb: - - - 327 + - - 329 - [] 6b0037fb: - - - 295 + - - 297 - [] 3f74083b: - - - 325 + - - 327 - [] 7780a157: - - - 326 + - - 328 - [] 45eaf9a7: - - - 225 + - - 227 - [] 570d52c3: - - - 224 + - - 226 - [] 24e1b338: - - - 204 + - - 206 - [] 12457c3a: - - - 205 + - - 207 - [] 3b277632: - - - 206 + - - 208 - [] 307c56a6: - - - 207 + - - 209 - [] 7f8193cd: - - - 208 + - - 210 - [] 8e510dd: - - - 209 + - - 211 - [] 3ede4d42: - - - 209 + - - 211 - [] 211cda0d: - - - 212 + - - 214 - [] 33a45adf: - - - 210 + - - 212 - [] 144877e: - - - 213 + - - 215 - [] 70729fe5: - - - 214 + - - 216 - [] 1a89cb8a: - - - 317 + - - 319 - [] 59bc7ec8: - - - 273 + - - 275 - [] 305669d3: - - - 215 + - - 217 - [] 21c1de8a: - - - 216 + - - 218 - [] 418c6eed: - - - 295 + - - 297 - [] 6448c544: - - - 217 + - - 219 - [] 21de60f6: - - - 388 + - - 390 - [] 5fa09aca: - - - 562 + - - 564 - [] 46f5e286: - - - 461 + - - 463 - [] 37aee222: - - - 463 + - - 465 - [] 17af7a6a: - - - 203 + - - 205 - [] 2ea6d4da: - - - 563 + - - 565 - [] 683fa6: - - - 462 + - - 464 - [] 3b608c54: - - - 464 + - - 466 - [] 78192fba: - - - 395 + - - 397 - [] 3e292efb: - - - 564 + - - 566 - [] 69e78bbc: - - - 202 + - - 204 - [] 5476214e: - - - 263 + - - 265 - [] 90f4e17: - - - 264 + - - 266 - [] 36d8d2ff: - - - 265 + - - 267 - [] 17e09e10: - - - 516 - - 517 - - 522 + - - 518 + - 519 + - 524 - [] 1f2770cf: - - - 199 + - - 201 - [] 2aaf4c5: - - - 200 + - - 202 - [] 359eef15: - - - 188 + - - 190 - [] 27dab218: - - - 188 + - - 190 - [] 78a2c30d: - - - 188 + - - 190 - [] 214980fd: - - - 323 + - - 325 - [] 1dcabeed: - - - 196 + - - 198 - [] 7ee4ee86: - - - 198 + - - 200 - [] 3d89898d: - - - 132 + - - 133 - [] 1f5bfd8b: - - - 147 + - - 148 - [] 7488addb: - - - 183 + - - 185 - [] 9ebb596: - - - 185 + - - 187 - [] 7892b1a7: - - - 187 + - - 189 - [] 15028f0d: - - - 189 + - - 191 - [] 5b3b07a2: - - - 194 + - - 196 - [] 46d98529: - - - 195 + - - 197 - [] 5d58e91: - - - 197 + - - 199 - [] 78e7bc5b: - - - 191 + - - 193 - [] 438c2942: - - - 192 + - - 194 - [] 4b0f358c: - - - 180 + - - 181 - [] 6184a561: - - - 183 + - - 185 - [] 31e7c291: - - - 184 + - - 186 - [] 1c8e0a1c: - - - 181 + - - 182 - [] 550312de: - - - 171 + - - 172 - [] 11c8f44: - - - 171 + - - 172 - [] 742cb490: - - - 170 + - - 171 - [] 4039a95a: - - - 538 + - - 540 - [] 5a009914: - - - 538 + - - 540 - [] a4c3a90: - - - 176 + - - 177 - [] 595f3c71: - - - 176 + - - 177 - [] 79fe76fa: - - - 174 + - - 175 - [] cb6622d: - - - 174 + - - 175 - [] 3051617b: - - - 174 + - - 175 - [] fb24b26: - - - 174 + - - 175 - [] 52c4aad6: - - - 173 + - - 174 - [] 38b33f66: - - - 172 + - - 173 - [] 14b3037d: - - - 403 + - - 405 - [] 18408bd3: - - - 403 + - - 405 - [] 79fe4c1c: - - - 403 + - - 405 - [] 61289ea2: - - - 331 + - - 333 - [] 1f143bbe: - - - 415 + - - 417 - [] 30f87476: - - - 178 + - - 179 - [] 1bc54a04: - - - 179 + - - 180 - [] 1441d7cd: - - - 179 + - - 180 - [] 176a7b31: - - - 458 + - - 460 - [] 4aa3374a: - - - 565 + - - 567 - [] 3bd72951: - - - 375 + - - 377 - [] 794cc2fe: - - - 136 + - - 137 - [] 752cefd9: - - - 168 + - - 169 - [] 26a7b746: - - - 167 + - - 168 - [] 3c39851e: - - - 133 + - - 134 - [] 53d1af95: - - - 137 + - - 138 - [] 3bfb90e0: - - - 138 + - - 139 - [] 6a5fbf3a: - - - 144 + - - 145 - [] ef0236a: - - - 144 + - - 145 - [] 5c5edd87: - - - 272 + - - 274 - [] 1a17a918: - - - 145 + - - 146 - [] 5f0dff6b: - - - 148 + - - 149 - [] 4943ec8d: - - - 150 + - - 151 - [] 204e28f8: - - - 159 + - - 160 - [] 4788895b: - - - 160 + - - 161 - [] 4314dbd7: - - - 395 + - - 397 - [] '231831e5': - - - 388 + - - 390 - [] 7269395b: - - - 423 + - - 425 - [] 788e7acb: - - - 161 + - - 162 - [] 636aa8b8: - - - 162 + - - 163 - [] 6e6dc2a8: - - - 157 + - - 158 - [] 134cad6: - - - 141 + - - 142 - [] 26ee4c68: - - - 146 + - - 147 - [] 841bb33: - - - 149 + - - 150 - [] 53b23277: - - - 151 + - - 152 - [] 6868d1c2: - - - 259 + - - 261 - [] 4a3efb3c: - - - 156 + - - 157 - [] 17972d7e: - - - 419 + - - 421 - [] 748120b2: - - - 153 + - - 154 - [] 47dc4c0e: - - - 155 + - - 156 - [] 2ee2db60: - - - 302 + - - 304 - [] 621f9a60: - - - 419 + - - 421 - [] 6188a7e8: - - - 389 + - - 391 - [] 4d8a3306: - - - 139 + - - 140 - [] 7c0c5199: - - - 402 + - - 404 - [] 5c35b52d: - - - 402 + - - 404 - [] 76823f0: - - - 135 + - - 136 - [] 3bb720c3: - - - 140 + - - 141 - [] 3ba83501: - - - 142 + - - 143 - [] 14d51e65: - - - 388 + - - 390 - [] 7281f249: - - - 368 - - 369 + - - 370 + - 371 - [] 1e1ac528: - - - 398 + - - 400 - [] 32a36174: - - - 190 + - - 192 - [] 35499bc6: - - - 481 + - - 483 - [] c0aa48f: - - - 465 + - - 467 - [] 4fd0b481: - - - 134 + - - 135 - [] 3d8b9222: - - - 466 + - - 468 - [] 267a15c6: - - - 260 + - - 262 - [] 760b3174: - - - 429 + - - 431 - [] 2b177c02: - - - 131 + - - 132 - [] 5d395e0f: - - - 130 + - - 131 - [] 6ecd25c1: - - - 129 + - - 130 - [] 7453c7ec: - - - 128 + - - 129 - [] 79bac35d: - - - 127 + - - 128 - [] 5ef5136e: - - - 126 + - - 127 - [] 4a5ad3b6: - - - 125 + - - 126 - [] 63a34972: - - - 124 + - - 125 - [] 480967a0: - - - 123 + - - 124 - [] 4fc3da0e: - - - 362 + - - 364 - [] af64a49: - - - 267 + - - 269 - [] 14db1b3f: - - - 447 + - - 449 - [] 735fe9: - - - 447 + - - 449 - [] 5ba56d61: - - - 446 + - - 448 - [] 340d29b1: - - - 211 + - - 213 - [] 27d1141d: - - - 433 + - - 435 - [] 44cfb1f9: - - - 120 + - - 121 - [] 4ea123d8: - - - 122 + - - 123 - [] 3a1348c6: - - - 403 + - - 405 - [] 63f3be0a: - - - 510 + - - 512 - [] 4e2b8ad2: - - - 512 + - - 514 - [] 1896950b: - - - 512 + - - 514 - [] 776ef960: - - - 511 + - - 513 - [] af5d8ba: - - - 511 + - - 513 - [] 7c7883d2: - - - 550 + - - 552 - [] 32a0ce1b: - - - 340 + - - 342 - [] 7f9fe38e: - - - 510 + - - 512 - [] 6075bfbc: - - - 553 + - - 555 - [] cc5f00: - - - 557 + - - 559 - [] c577aa3: - - - 557 + - - 559 - [] 36753bb7: - - - 468 + - - 470 - [] 6f308faa: - - - 119 + - - 120 - [] 67167a8f: - - - 117 + - - 118 - [] 3b0d63c5: - - - 379 + - - 381 - [] 4efc18c5: - - - 294 + - - 296 - [] 20c739ea: - - - 480 + - - 482 - [] 48ddec04: - - - 296 + - - 298 - [] 447a5ac6: - - - 116 + - - 117 - [] 331f2a39: - - - 380 + - - 382 - [] 5b0126e9: - - - 115 + - - 116 - [] 173d43e5: - - - 95 + - - 96 - [] 6d94bc2e: - - - 334 + - - 336 - [] 759144c4: - - - 101 - - 337 + - - 102 + - 339 - [] 7ee527a5: - - - 113 + - - 114 - [] 2b2b4ce0: - - - 111 + - - 112 - [] 7194c7e2: - - - 112 + - - 113 - [] 551fd809: - - - 110 + - - 111 - [] 7bfb9a8f: - - - 479 + - - 481 - [] 426141aa: - - - 337 + - - 339 - [] 7b3a5116: - - - 420 + - - 422 - [] 251b5c40: - - - 431 + - - 433 - [] 72c5a707: - - - 401 + - - 403 - [] 7ee4f14f: - - - 362 + - - 364 - [] 1b7e903e: - - - 232 + - - 234 - [] 12d6295e: - - - 109 + - - 110 - [] 5f858a25: - - - 467 + - - 469 - [] 4fca2c5d: - - - 467 + - - 469 - [] 7826dfe3: - - - 467 + - - 469 - [] 20cde204: - - - 108 + - - 109 - [] 5bb60a76: - - - 107 + - - 108 - [] 677fe668: - - - 105 + - - 106 - [] 3c84a3cf: - - - 292 + - - 294 - [] 4e1115be: - - - 103 + - - 104 - [] 1de87f14: - - - 104 + - - 105 - [] 4ec22847: - - - 441 + - - 443 - [] 546be3df: - - - 440 + - - 442 - [] 5bad4a7d: - - - 440 + - - 442 - [] 26b75b01: - - - 365 + - - 367 - [] 5e8d5dcf: - - - 121 + - - 122 - [] 6435efdd: - - - 277 + - - 279 - [] 30f8b285: - - - 102 + - - 103 - [] 4f676bf7: - - - 364 + - - 366 - [] 4502535f: - - - 152 + - - 153 - [] 1548d09b: - - - 100 + - - 101 - [] 49662f78: - - - 95 - - 99 + - - 96 + - 100 - [] 6cddfc29: - - - 434 + - - 436 - [] 2c565d24: - - - 98 + - - 99 - [] 45da1015: - - - 435 + - - 437 - [] 645c785c: - - - 97 + - - 98 - [] 42b0013f: - - - 283 + - - 285 - [] 76aa7c64: - - - 261 + - - 263 - [] 6bfd8d4e: - - - 191 + - - 193 - [] 6bc9acb: - - - 421 + - - 423 - [] 3ca1f66: - - - 348 + - - 350 - [] 32a19d27: - - - 347 + - - 349 - [] 4008fc62: - - - 399 + - - 401 - [] 26b75323: - - - 470 + - - 472 - [] 5db4e6d0: - - - 96 + - - 97 - [] 61ec01de: - - - 95 + - - 96 - [] 4f5adb27: - - - 417 + - - 419 - [] 2ce17a16: - - - 548 + - - 550 - [] 597ffed5: - - - 166 + - - 167 - [] 7caf0e1b: - - - 266 + - - 268 - [] 3536ef3f: - - - 258 + - - 260 - [] 484076a1: - - - 226 + - - 228 - [] 4197ab56: - - - 293 + - - 295 - [] 587275d8: - - - 391 + - - 393 - [] 22126d31: - - - 390 + - - 392 - [] '693975e9': - - - 421 + - - 423 - [] 745c2669: - - - 94 + - - 95 - [] 785a8b98: - - - 470 + - - 472 - [] 6b377e5c: - - - 470 + - - 472 - [] 2ffad74e: - - - 422 + - - 424 - [] 542ca407: - - - 160 + - - 161 - [] 1b976054: - - - 93 + - - 94 - [] 4f71e24: - - - 92 + - - 93 - [] 66e69efd: - - - 393 - - 394 + - - 395 + - 396 - [] 6787634a: - - - 91 + - - 92 - [] 3d043150: - - - 372 + - - 374 - [] 30ea32d6: - - - 182 + - - 183 - [] 7476455d: - - - 90 + - - 91 - [] 7fa04ef: - - - 291 + - - 293 - [] 2538a6aa: - - - 291 + - - 293 - [] b09cbc2: - - - 89 + - - 90 - [] 5eb81ca9: - - - 89 + - - 90 - [] 69a2a973: - - - 476 + - - 478 - [] 2c857b23: - - - 383 + - - 385 - [] 2c08a841: - - - 478 + - - 480 - [] 6b006bc1: - - - 367 + - - 369 - [] 59119acd: - - - 229 + - - 231 - [] 396fe46: - - - 88 + - - 89 - [] 41310f78: - - - 106 + - - 107 - [] 1e85a525: - - - 87 + - - 88 - [] 6f117542: - - - 80 + - - 81 - [] 4f1081e7: - - - 86 + - - 87 - [] 5d886008: - - - 84 + - - 85 - [] fa1457c: - - - 83 + - - 84 - [] 5fa66421: - - - 83 + - - 84 - [] 3b80f03a: - - - 76 + - - 77 - [] 13fbd910: - - - 80 - - 82 + - - 81 + - 83 - [] 6f11744a: - - - 82 + - - 83 - [] 6f117531: - - - 81 + - - 82 - [] 7a6e8059: - - - 77 + - - 78 - [] 46b6bd48: - - - 77 + - - 78 - [] 31e45aec: - - - 34 + - - 35 - [] 2dd7286b: - - - 33 + - - 34 - [] 3abb3a41: - - - 32 + - - 33 - [] 763f4a27: - - - 31 + - - 32 - [] 64648c1e: - - - 75 + - - 76 - [] 15b366a7: - - - 259 + - - 261 - [] 57fa076: - - - 284 - - 478 + - - 286 + - 480 - [] '492078e6': - - - 74 + - - 75 - [] 7c4cfe6f: - - - 72 + - - 73 - [] 404be749: - - - 470 + - - 472 - [] 61df2d3a: - - - 70 + - - 71 - [] '435758e2': - - - 71 + - - 72 - [] 4be02f88: - - - 71 + - - 72 - [] 654455f9: - - - 69 + - - 70 - [] 1ca881e9: - - - 453 + - - 455 - [] 77df3f9b: - - - 72 + - - 73 - [] 3c82c59d: - - - 68 + - - 69 - [] 2185ff6f: - - - 67 + - - 68 - [] 4165a34f: - - - 66 + - - 67 - [] 5621f9ff: - - - 64 + - - 65 - [] 57de42bd: - - - 218 + - - 220 - [] 725c9c59: - - - 63 + - - 64 - [] 4fd21c18: - - - 62 + - - 63 - [] 7e63eebc: - - - 61 + - - 62 - [] 7c09296c: - - - 200 + - - 202 - [] 788a1412: - - - 60 + - - 61 - [] 3aa5a7ff: - - - 201 + - - 203 - [] c935e78: - - - 59 + - - 60 - [] 3c67dbab: - - - 58 + - - 59 - [] 547b9e60: - - - 470 + - - 472 - [] 6b008599: - - - 396 + - - 398 - [] 54207b8a: - - - 307 + - - 309 - [] 6e5d4552: - - - 54 + - - 55 - [] 3a66284a: - - - 53 + - - 54 - [] 6fdd0c3b: - - - 52 + - - 53 - [] 3696f014: - - - 51 + - - 52 - [] f5c4fae: - - - 50 + - - 51 - [] 410de7ee: - - - 49 + - - 50 - [] 2bbf694d: - - - 48 + - - 49 - [] af21782: - - - 47 + - - 48 - [] 6e50a801: - - - 46 + - - 47 - [] 2bc7313c: - - - 45 + - - 46 - [] 54dd5ca5: - - - 44 + - - 45 - [] 4e619e2a: - - - 566 + - - 568 - [] 7d6af43f: - - - 43 - - 523 + - - 44 + - 525 - [] 65edfdb6: - - - 42 + - - 43 - [] af45e42: - - - 41 + - - 42 - [] 1980d29: - - - 262 + - - 264 - [] 7756d3af: - - - 40 + - - 41 - [] 60eea429: - - - 39 + - - 40 - [] 7836bb95: - - - 38 + - - 39 - [] 5cce58cb: - - - 37 + - - 38 - [] 1c551: - - - 36 + - - 37 - [] 76cc6a5f: - - - 35 + - - 36 - [] 4ac3572d: - - - 30 + - - 31 - [] 7e4f42be: - - - 29 + - - 30 - [] 5a2d4c4: - - - 28 - - 453 - - 478 - - 549 + - - 29 + - 455 + - 480 + - 551 - [] 6f243db8: - - - 328 + - - 330 - [] 5888d756: - - - 470 + - - 472 - [] 2e2b513a: - - - 26 + - - 27 - [] 4ac7fa4a: - - - 342 + - - 344 - [] 721b180b: - - - 25 + - - 26 - [] 4bf287c1: - - - 27 + - - 28 - [] 47ac57d6: - - - 27 + - - 28 - [] 36f71f7: - - - 417 + - - 419 - [] 75663d97: - - - 24 + - - 25 - [] 545e75fa: - - - 23 + - - 24 - [] 6dbe4190: - - - 198 + - - 200 - [] 7fb0c7ee: - - - 420 + - - 422 - [] 22a3b624: - - - 21 + - - 22 - [] 3345af77: - - - 20 + - - 21 - [] 1474b560: - - - 19 + - - 20 - [] 30b1eae4: - - - 264 + - - 266 - [] '31583e35': - - - 18 + - - 19 - [] 58c147e: - - - 17 + - - 18 - [] 783c440c: - - - 16 + - - 17 - [] 3e80f6c1: - - - 15 + - - 16 - [] 2849308f: - - - 14 + - - 15 - [] 5931b8d: - - - 490 + - - 492 - [] 4a6f0185: - - - 453 + - - 455 - [] 550fd924: - - - 558 + - - 560 - [] 5d4f72fe: - - - 532 + - - 534 - [] 52632bdd: - - - 532 + - - 534 - [] 746ba5c3: - - - 532 + - - 534 - [] 285071b3: - - - 268 + - - 270 - [] 742a3c5f: - - - 420 + - - 422 - [] 76fb464c: - - - 554 + - - 556 - [] 654f8347: - - - 393 + - - 395 - [] 66cbe888: - - - 13 + - - 14 - [] 6c324e85: - - - 12 + - - 13 - [] af29bc8: - - - 11 + - - 12 - [] 41816f6a: - - - 10 + - - 11 - [] 1f6b2b37: - - - 10 + - - 11 - [] '59106e41': - - - 9 + - - 10 - [] cf62bb5: - - - 387 + - - 389 - [] 2d6238f6: - - - 473 + - - 475 - [] 7cb575bb: - - - 8 + - - 9 - [] 6429bcdb: - - - 7 + - - 8 - [] 7395bf96: - - - 308 + - - 310 - [] 634b7ee6: - - - 6 + - - 7 - [] 441a1b8c: - - - 365 + - - 367 - [] '1e772076': - - - 5 + - - 6 - [] 269f8160: - - - 4 + - - 5 - [] 5658c291: - - - 3 + - - 4 - [] 2ce16a35: - - - 292 + - - 294 - [] 62ca149a: - - - 98 + - - 99 - [] 4305ac4e: - - - 0 + - - 1 - [] 2da75330: - - - 405 - - 407 + - - 407 + - 409 - [] 7a8ef3a4: - - - 407 + - - 409 - [] 6bd6064: - - - 407 + - - 409 + - [] +d52b556: + - - 184 + - [] +6eafb7ae: + - - 79 + - [] +77acc473: + - - 0 - [] 2624d0d5: - - - 475 + - - 477 - [] 7f28fc39: - - - 557 + - - 559 - [] 53287af3: - - - 478 + - - 480 - [] 1a792b62: - - - 394 + - - 396 - [] 5ba04b6f: - - - 378 + - - 380 - [] 28af4f7a: - - - 444 + - - 446 - [] 244b4560: - - - 395 + - - 397 - [] 54d54800: - - - 417 + - - 419 - [] 6c705ed9: - [] @@ -3335,72 +3367,72 @@ db172ba: - - 78 1b1c54be: - [] - - - 310 + - - 311 4fd1fe02: - [] - - 2 2f4b0a26: - - - 534 + - - 536 - [] 4ab232d: - - - 534 + - - 536 - [] 4f6340c1: - - - 534 + - - 536 - [] 4a08909b: - - - 445 + - - 447 - [] 42b910bc: - - - 534 + - - 536 - [] 7f9b9165: - - - 534 + - - 536 - [] 24df9f73: - - - 51 + - - 52 - [] 45908b9f: - [] - [] 290cce07: - - - 347 + - - 349 - [] 40b84e79: - - - 347 + - - 349 - [] 6d785826: - - - 347 + - - 349 - [] 5cb97baf: - - - 411 + - - 413 - [] 671d97ed: - - - 411 + - - 413 - [] 72c59687: - - - 347 + - - 349 - [] 5e98f831: - - - 386 + - - 388 - [] 7ef42f41: - - - 386 + - - 388 - [] 573614fa: - - - 324 + - - 326 - [] 76e1c425: - - - 347 + - - 349 - [] 3712edae: - - - 347 + - - 349 - [] 6501c8a6: - - - 310 + - - 312 - [] 301327b0: - - - 386 + - - 388 - [] 6bcb545a: - [] @@ -3412,61 +3444,61 @@ db172ba: - [] - [] 5f807a40: - - - 347 + - - 349 - [] 37f5bf6d: - - - 347 + - - 349 - [] 1ec9b293: - - - 386 + - - 388 - [] 5123edb5: - - - 347 + - - 349 - [] 4da0c63a: - - - 566 + - - 568 - [] 1f213b42: - - - 347 + - - 349 - [] af10282: - - - 478 + - - 480 - [] 4f0e2a35: - - - 347 + - - 349 - [] 19c44dcb: - - - 411 + - - 413 - [] 17515ed5: - [] - [] 4b46b42b: - - - 478 + - - 480 - [] 17521c9c: - [] - [] 17eac4ca: - - - 414 + - - 416 - [] 1a2ae46b: - - - 389 + - - 391 - [] 137d6b89: - - - 469 + - - 471 - [] 515639ca: - [] - [] 691aa86e: - - - 378 + - - 380 - [] 4d627cc6: - - - 212 + - - 214 - [] 6aa9b87d: - - - 519 + - - 521 - [] 4d96ba3a: - [] @@ -3475,16 +3507,16 @@ af10282: - [] - [] 5cab6702: - - - 389 + - - 391 - [] 35292aab: - - - 378 + - - 380 - [] 142cae87: - - - 378 + - - 380 - [] 22b39dbd: - - - 312 + - - 314 - [] 1cc2f390: - [] @@ -3493,23 +3525,23 @@ af10282: - [] - - 18 2c76f011: - - - 549 + - - 551 - [] 2c76f013: - - - 549 + - - 551 - [] 4ea9d826: - - - 399 + - - 401 - [] 730e80bb: - - - 378 + - - 380 - [] d7cad4e: - - - 544 + - - 546 - [] 19aa0c86: - - - 343 - - 346 + - - 345 + - 348 - [] 4c968639: - [] @@ -3548,64 +3580,64 @@ d7cad4e: - [] - - 18 462ba7a0: - - - 286 + - - 288 - [] 2ecb5e41: - - - 437 + - - 439 - [] 2dbf02d9: - [] - [] 49180d00: - - - 557 + - - 559 - [] 33a75d4: - - - 458 + - - 460 - [] 1018809f: - [] - [] 6e46ff7f: - - - 292 + - - 294 - [] 571dbb26: - [] - - 114 6ece12e5: - - - 557 + - - 559 - [] 74fabcc2: - - - 557 + - - 559 - [] 7c33dc1c: - - - 557 + - - 559 - [] 5923e7dc: - - - 557 + - - 559 - [] 5a068661: - [] - [] 1f550b01: - - - 529 + - - 531 - [] 4ad86c4b: - - - 394 + - - 396 - [] cafc9d6: - - - 378 + - - 380 - [] 7ad5aca4: - - - 378 + - - 380 - [] afff8b2: - [] - - 74 181783a8: - - - 396 + - - 398 - [] 5f332956: - - - 396 + - - 398 - [] 51cc7784: - [] @@ -3614,202 +3646,202 @@ afff8b2: - [] - - 18 30a8c29e: - - - 361 + - - 363 - [] 38a863c9: - - - 449 + - - 451 - [] 14f52da8: - - - 449 + - - 451 - [] ba8f2d9: - - - 564 + - - 566 - [] 6ed2ae22: - - - 564 + - - 566 - [] 647b6763: - - - 449 + - - 451 - [] 7b8d7bb2: - - - 365 + - - 367 - [] 6f7bdec8: - - - 449 + - - 451 - [] 1699cb73: - - - 449 + - - 451 - [] 4ec96a6e: - - - 533 + - - 535 - [] 308eb53c: - - - 558 + - - 560 - [] '6391e308': - - - 558 + - - 560 - [] 5bfc9216: - - - 539 + - - 541 - [] 6ef49e49: - - - 533 + - - 535 - [] 7ed40479: - - - 533 + - - 535 - [] 8bcb960: - - - 533 + - - 535 - [] 184e042d: - - - 533 + - - 535 - [] 4ec3a4e5: - - - 533 + - - 535 - [] 3b91c84e: - - - 533 + - - 535 - [] 120463b1: - - - 533 + - - 535 - [] 286f5d8e: - - - 361 + - - 363 - [] 53457eb0: - - - 533 + - - 535 - [] 6bc50689: - - - 540 + - - 542 - [] 63c48614: - - - 454 + - - 456 - [] 725af83b: - - - 361 + - - 363 - [] 6d880334: - - - 361 + - - 363 - [] 5f56c169: - - - 449 + - - 451 - [] 1cee4b5f: - - - 449 + - - 451 - [] 688f6f2d: - - - 449 + - - 451 - [] 7ef47d92: - - - 533 + - - 535 - [] 7ef47dd0: - - - 533 + - - 535 - [] 27f37f34: - - - 533 + - - 535 - [] 7abf641e: - - - 517 + - - 519 - [] e3c05e5: - - - 449 + - - 451 - [] 7ae7be59: - - - 449 + - - 451 - [] 4f03725c: - - - 365 + - - 367 - [] 165dc09f: - - - 564 + - - 566 - [] 2a0f8da6: - - - 564 + - - 566 - [] 39cddfc4: - - - 564 + - - 566 - [] 4cb65b2a: - - - 564 + - - 566 - [] 6f93d99a: - - - 564 + - - 566 - [] 61e80b46: - - - 564 + - - 566 - [] 210ba16: - - - 564 + - - 566 - [] 56fc6163: - - - 564 + - - 566 - [] 7863846c: - - - 564 + - - 566 - [] 6a9173ea: - - - 564 + - - 566 - [] 295cf167: - - - 564 + - - 566 - [] 40104b76: - - - 564 + - - 566 - [] 52c39a11: - - - 564 + - - 566 - [] 2a8674ae: - - - 564 + - - 566 - [] 456d568e: - - - 86 + - - 87 - [] 2878fe9c: - - - 449 + - - 451 - [] 4edda591: - - - 449 + - - 451 - [] eb41fb3: - - - 449 + - - 451 - [] 2197cb34: - - - 449 + - - 451 - [] 18b32774: - - - 449 + - - 451 - [] 315f651e: - - - 564 + - - 566 - [] 67ae608d: - - - 517 + - - 519 - [] 72cf5fdf: - - - 344 + - - 346 - [] 501a928: - - - 558 + - - 560 - [] 32098f80: - - - 449 + - - 451 - [] 1ea04e81: - - - 449 + - - 451 - [] '49e26001': - - - 449 + - - 451 - [] 72fa3446: - - - 564 + - - 566 - [] 304965a7: - - - 449 + - - 451 - [] 4d5baeac: - - - 533 + - - 535 - [] 3f25a42: - [] @@ -4077,7 +4109,7 @@ aa66fd8: - - 153 770a9985: - [] - - - 344 + - - 345 1578b8e6: - [] - - 155 @@ -4120,7 +4152,7 @@ d256fa0: - - 127 55167ee1: - [] - - - 562 + - - 567 3d692ea3: - [] - - 190 @@ -4154,9 +4186,6 @@ a8d9c1c: 739d2cc0: - [] - - 170 -18fd2: - - [] - - - 200 76f87285: - [] - - 201 @@ -4192,20 +4221,20 @@ a8d9c1c: - - 213 56afc97e: - [] - - - 250 + - - 251 4c69b254: - [] - - 80 68fce97: - [] - - - 299 + - - 300 d19f499: - [] - - 89 20cf3963: - [] - - - 300 - - 301 + - - 301 + - 302 1a9a7598: - [] - - 74 @@ -4220,54 +4249,54 @@ d19f499: - - 114 686a8a39: - [] - - - 322 + - - 323 '2e851375': - [] - - - 322 + - - 323 399174da: - [] - - - 562 + - - 567 32c7d614: - [] - - - 323 + - - 324 47d4fd11: - [] - - - 324 + - - 325 6e09c04d: - - - 395 + - - 397 - [] '42526e59': - - - 417 + - - 419 - [] 71bb82cd: - - - 395 + - - 397 - [] 7827f064: - - - 470 + - - 472 - [] 4a44e4b7: - [] - - 78 2583b0c1: - - - 395 + - - 397 - [] 389736b6: - - - 395 + - - 397 - [] 7a8c5abf: - - - 115 + - - 116 - [] 6b1b8276: - [] - - 20 5eb94628: - - - 473 + - - 475 - [] 6f6e514b: - [] - - - 235 + - - 236 76bc090d: - - - 418 + - - 420 - [] 40b8a56f: - [] @@ -4276,7 +4305,7 @@ d19f499: - [] - [] 5dbdf2fd: - - - 279 + - - 281 - - 215 36539c41: - [] @@ -4285,223 +4314,226 @@ d19f499: - [] - - 19 5d903ef8: - - - 556 + - - 558 - [] 150e18a4: - - - 556 + - - 558 - [] 77dd0786: - - - 556 + - - 558 - [] 5d8fca99: - - - 556 + - - 558 - [] 1fd8229d: - - - 556 + - - 558 - [] 77dd0787: - - - 556 + - - 558 - [] 5d8f563a: - - - 556 + - - 558 - [] 54be5dde: - - - 556 + - - 558 - [] 77dd0788: - - - 556 + - - 558 - [] 544d6ede: - - - 556 + - - 558 - [] 5d8ee1db: - - - 556 + - - 558 - [] 765b66e1: - - - 556 + - - 558 - [] 77dd0789: - - - 556 + - - 558 - [] 543f575d: - - - 556 + - - 558 - [] 5d8e6d7c: - - - 556 + - - 558 - [] 41752ba0: - - - 556 + - - 558 - [] 777abe73: - - - 556 + - - 558 - [] 5989c6fc: - - - 556 + - - 558 - [] 5d1105b3: - - - 556 + - - 558 - [] 5d1f1d34: - - - 556 + - - 558 - [] 7b9975f: - - - 556 + - - 558 - [] 96e6ffe: - - - 556 + - - 558 - [] 551ab4da: - [] - - - 239 + - - 240 74eaab79: - [] - - - 239 + - - 240 7b036166: - [] - - - 239 + - - 240 52502d8c: - [] - - - 239 + - - 240 5be760a9: - [] - - - 239 + - - 240 7dd3bc59: - [] - - - 239 + - - 240 389a33d5: - [] - - - 239 + - - 240 62b375bf: - [] - - - 239 + - - 240 c642f70: - - - 556 + - - 558 - [] 11f7ac6d: - [] - - - 239 + - - 240 26e723be: - [] - - - 239 + - - 240 1e43864e: - [] - - - 239 + - - 240 662378ec: - [] - - 78 77dd078a: - - - 556 + - - 558 - [] 54313fdc: - - - 556 + - - 558 - [] 5d8df91d: - - - 556 + - - 558 - [] c8ef05f: - - - 556 + - - 558 - [] cc5a337: - - - 337 + - - 339 - [] 48b51487: - - - 337 + - - 339 - [] 7f4c97a: - - - 337 + - - 339 - [] 4311bbaa: - - - 337 + - - 339 - [] 16c9ae97: - - - 337 + - - 339 - [] 357f7ce7: - - - 337 + - - 339 - [] 7505cb5b: - - - 337 + - - 339 - [] '47e29567': - - - 337 + - - 339 - [] 6bd43f1b: - - - 337 + - - 339 - [] 79667dde: - - - 337 + - - 339 - [] 8c7489a: - - - 337 + - - 339 - [] 62a2b2db: - - - 337 + - - 339 - [] 6a43a6: - - - 337 + - - 339 - [] 5971269b: - - - 337 + - - 339 - [] d27fb1d: - - - 337 + - - 339 - [] 3f213061: - - - 337 + - - 339 - [] 1aba39e0: - - - 337 + - - 339 - [] 503f9a5b: - - - 337 + - - 339 - [] 55e4fb64: - - - 337 + - - 339 - [] 3f66edd: - - - 337 + - - 339 - [] 5dd1d91e: - - - 337 + - - 339 + - [] +6d87787e: + - - 339 - [] 78f1bc6c: - [] - - 78 49607d36: - - - 337 + - - 339 - [] 3b6633c8: - - - 478 + - - 480 - [] 2e29a703: - [] - - 29 791f97c: - - - 422 + - - 424 - [] 29831f8c: - - - 335 + - - 337 - [] 33355b80: - - - 549 + - - 551 - [] 7d1f6e5a: - - - 549 + - - 551 - [] 1bd2201d: - - - 549 + - - 551 - [] 742fc25: - - - 473 + - - 475 - [] 238a8468: - - - 473 + - - 475 - [] 6042228f: - - - 473 + - - 475 - [] 21b98a06: - - - 417 + - - 419 - [] 6c2c9717: - [] @@ -4510,76 +4542,73 @@ d27fb1d: - [] - [] 725e0a14: - - - 549 + - - 551 - [] 34d3cff4: - - - 549 + - - 551 - [] 3cb9666e: - - - 365 + - - 367 - [] 360e1d9e: - - - 549 + - - 551 - [] 277a506f: - - - 365 + - - 367 - [] b2df8b3: - - - 337 + - - 339 - [] 20a2a735: - - - 365 + - - 367 - [] 507ec28: - - - 365 + - - 367 - [] 97f1bf5: - - - 337 + - - 339 - [] 3898116a: - - - 337 + - - 339 - [] 7e814cb0: - - - 549 + - - 551 - [] 4b22d889: - - - 549 + - - 551 - [] 4024115f: - [] - - 78 75e5aede: - - - 549 - - [] -6d87787e: - - - 337 + - - 551 - [] 4d161859: - - - 337 + - - 339 - [] 26b73d45: - [] - - 74 742a6729: - - - 378 + - - 380 - [] 3763ba13: - [] - - 20 19030d3e: - - - 418 + - - 420 - [] 6d83beb: - - - 248 + - - 250 - [] 245bed5a: - - - 337 + - - 339 - [] 511421a7: - - - 337 + - - 339 - [] 4859d732: - - - 556 + - - 558 - [] 2119d1c3: - [] @@ -4604,9 +4633,9 @@ b2df8b3: - [] 126ea89a: - [] - - - 449 + - - 450 7c5c7c14: - - - 549 + - - 551 - [] 5ab07188: - [] @@ -4694,640 +4723,640 @@ b380dcd: - - 156 7ebce5bb: - [] - - - 500 + - - 501 40b22b64: - [] - - - 314 + - - 315 13a223a9: - [] - - - 314 + - - 315 3115f55f: - [] - - - 315 + - - 316 5d08d1f1: - [] - - - 315 + - - 316 2df013c0: - [] - - - 315 + - - 316 '64752e69': - [] - - - 315 + - - 316 33d839c: - [] - - - 315 + - - 316 2eb2d78f: - [] - - - 327 + - - 328 79731db5: - [] - - - 328 + - - 329 338b476d: - [] - - - 328 + - - 329 2310f56f: - [] - - - 328 + - - 329 7330ef99: - [] - - - 328 + - - 329 7aaeed40: - [] - - - 329 + - - 330 29ad8c30: - [] - - - 330 + - - 331 66c25a6d: - [] - - - 330 + - - 331 2db068: - [] - - - 330 + - - 331 282e8cde: - [] - - - 331 + - - 332 6437d696: - [] - - - 332 + - - 333 3d30bc80: - [] - - - 332 + - - 333 55b1b090: - [] - - - 333 + - - 334 76db5add: - [] - - - 335 + - - 336 43365bda: - [] - - - 336 + - - 337 1cb9cc62: - [] - - - 337 + - - 338 14316f92: - [] - - - 337 + - - 338 7e4d5217: - [] - - - 337 + - - 338 593c0043: - [] - - - 337 + - - 338 fd2ff34: - [] - - - 338 + - - 339 62fa84eb: - [] - - - 338 + - - 339 3415fb47: - [] - - - 339 + - - 340 554adb7: - [] - - - 340 + - - 341 539d5bff: - [] - - - 341 + - - 342 152e2a49: - [] - - - 342 + - - 343 3157abec: - [] - - - 343 + - - 344 2e7d7894: - [] - - - 343 + - - 344 aabcf56: - [] - - - 343 + - - 344 2dd41db0: - [] - - - 343 + - - 344 5d712529: - [] - - - 344 + - - 345 75dc80a7: - [] - - - 344 + - - 345 6dd54b4b: - [] - - - 344 + - - 345 75501b37: - [] - - - 344 + - - 345 484a03d0: - [] - - - 344 + - - 345 30cce032: - [] - - - 344 + - - 345 3f9ca174: - [] - - - 344 + - - 345 573726d9: - [] - - - 344 + - - 345 '1e872358': - [] - - - 344 + - - 345 1ddecdcd: - [] - - - 344 + - - 345 e542ce1: - [] - - - 344 + - - 345 7edb398e: - [] - - - 345 + - - 346 20e4d291: - [] - - - 346 + - - 347 4e0cb70e: - [] - - - 347 + - - 348 43eaedde: - [] - - - 348 + - - 349 6662c0f0: - [] - - - 349 + - - 350 58e7a8d: - [] - - - 350 + - - 351 63ec6dfc: - [] - - - 351 + - - 352 688811fc: - [] - - - 352 + - - 353 7dbe943: - [] - - - 353 + - - 354 647a5dcd: - [] - - - 354 + - - 355 10dddfad: - [] - - - 355 + - - 356 77a5589f: - [] - - - 356 + - - 357 2e3b5f: - [] - - - 357 + - - 358 2e3ea3: - [] - - - 358 + - - 359 400cf2ee: - [] - - - 359 + - - 360 2d1fbd17: - [] - - - 361 + - - 362 5ccdd110: - [] - - - 362 + - - 363 30a1c14a: - [] - - - 363 + - - 364 314d3f40: - [] - - - 364 + - - 365 50257aea: - [] - - - 364 + - - 365 5e8fd0e2: - [] - - - 364 + - - 365 20eac168: - [] - - - 365 + - - 366 573982d0: - [] - - - 365 + - - 366 43cf7ff0: - [] - - - 366 + - - 367 '333e1131': - [] - - - 366 + - - 367 '216e3080': - [] - - - 367 + - - 368 2cb5e038: - [] - - - 367 + - - 368 1cfe302b: - [] - - - 368 + - - 369 '48510e16': - [] - - 57 10c9205d: - [] - - - 370 + - - 371 5f779608: - [] - - - 370 + - - 371 2f73be0b: - [] - - - 370 + - - 371 60a602cd: - [] - - - 371 + - - 372 9eb5456: - [] - - - 372 + - - 373 2eb302: - [] - - - 373 + - - 374 2ea7baca: - [] - - - 374 + - - 375 4f73b9cd: - [] - - - 375 + - - 376 6f30fb8f: - [] - - - 376 + - - 377 1389495e: - [] - - - 377 + - - 378 5772fd88: - [] - - - 377 + - - 378 692e948a: - [] - - - 378 + - - 379 43a22cc1: - [] - - - 378 + - - 379 6b6fa4a3: - [] - - - 380 + - - 381 299588a7: - [] - - - 381 + - - 382 59ddf729: - [] - - - 381 + - - 382 4dd8907a: - [] - - - 382 + - - 383 5f2ed70a: - [] - - - 383 + - - 384 26a10c4b: - [] - - - 384 + - - 385 55fa2dd6: - [] - - - 385 + - - 386 21cd165f: - [] - - - 386 + - - 387 2d488d0b: - [] - - - 387 + - - 388 2e7ff86d: - [] - - - 387 + - - 388 56c51ab: - [] - - - 387 + - - 388 81ed582: - [] - - - 388 + - - 389 '16e17869': - [] - - - 389 + - - 390 305cfd6a: - [] - - - 389 + - - 390 498ee86c: - [] - - - 389 + - - 390 2456d28: - [] - - - 390 + - - 391 7424bb73: - [] - - - 391 + - - 392 5a5a9dc2: - [] - - - 392 + - - 393 3d9a7c8c: - [] - - - 393 + - - 394 6e628b56: - [] - - - 393 + - - 394 4dd15273: - [] - - - 393 + - - 394 663ed888: - [] - - - 394 + - - 395 67895d44: - [] - - - 394 + - - 395 33131ed2: - [] - - - 394 -5412407a: - - - 478 - - 395 +5412407a: + - - 480 + - - 396 5cd6f5cc: - [] - - - 396 + - - 397 1bc50478: - [] - - - 397 + - - 398 '30329e32': - [] - - - 398 + - - 399 6e8ab77a: - [] - - - 399 + - - 400 5e8f046: - [] - - - 400 + - - 401 1f4a11ed: - [] - - - 400 + - - 401 4e0d44e: - [] - - - 400 + - - 401 50500cf2: - [] - - - 401 + - - 402 5a439f78: - [] - - - 402 + - - 403 5a8dc0ee: - [] - - - 403 + - - 404 42cb28bc: - [] - - - 404 + - - 405 63322dfc: - [] - - - 404 + - - 405 7a1e4f62: - [] - - - 405 + - - 406 743da6c: - [] - - - 405 + - - 406 65e4265a: - [] - - - 405 + - - 406 '4e003309': - [] - - - 406 + - - 407 3ec7240a: - [] - - - 407 + - - 408 5fef64b: - [] - - - 407 + - - 408 3c8f0b9d: - [] - - - 407 + - - 408 6d0edfcb: - [] - - - 408 + - - 409 27fcda74: - [] - - - 409 + - - 410 4fcd6b9c: - [] - - - 409 + - - 410 16faaa70: - [] - - - 410 + - - 411 7cce0d7: - [] - - - 411 + - - 412 2f5c4fd0: - [] - - - 412 + - - 413 40453fb: - [] - - - 412 + - - 413 5d98f233: - [] - - - 413 + - - 414 3e79d53d: - [] - - - 415 + - - 416 1440c5fa: - [] - - - 415 + - - 416 1a1ad: - [] - - - 416 + - - 417 344807cd: - [] - - - 416 + - - 417 6810952b: - [] - - - 416 + - - 417 549d22ea: - [] - - - 417 + - - 418 4bdb777: - [] - - - 417 + - - 418 5d205faf: - [] - - - 418 + - - 419 77e88b02: - [] - - - 418 + - - 419 43dc3733: - [] - - - 418 + - - 419 6236a1b: - [] - - - 419 + - - 420 e2debdb: - [] - - - 419 + - - 420 3b52d432: - [] - - - 420 + - - 421 46cbe1aa: - [] - - - 420 + - - 421 78faddf4: - [] - - - 421 + - - 422 3fcca261: - [] - - - 421 + - - 422 564c9163: - [] - - - 421 + - - 422 5213fb79: - [] - - - 421 + - - 422 300adfb9: - [] - - - 422 + - - 423 1ae01dda: - [] - - - 423 + - - 424 3a7f4b7b: - [] - - - 424 + - - 425 1a6b80c2: - [] - - - 425 + - - 426 357c3f20: - [] - - - 425 + - - 426 68e44d5f: - [] - - - 426 + - - 427 7d1d3cb0: - [] - - - 427 + - - 428 49c012d4: - [] - - - 427 + - - 428 '44333e65': - [] - - - 428 + - - 429 b8de416: - [] - - - 428 + - - 429 12c97e14: - [] - - - 428 + - - 429 7a176b51: - [] - - - 428 + - - 429 3aa56c08: - [] - - - 428 + - - 429 5b1b1d4e: - [] - - - 428 + - - 429 3e83d060: - [] - - - 429 + - - 430 505f633a: - [] - - - 430 + - - 431 6d5a684f: - [] - - - 431 + - - 432 77958aaf: - [] - - - 431 + - - 432 5db6df75: - [] - - - 431 + - - 432 2b345f4b: - [] - - - 432 + - - 433 3b91e0cb: - [] - - - 432 + - - 433 41f42c73: - - [] - - - 432 -c7a0e13: - [] - - 433 -21c9486d: +c7a0e13: - [] - - 434 -296739b5: +21c9486d: - [] - - 435 -6f95d90c: +296739b5: - [] - - 436 +6f95d90c: + - [] + - - 437 773c3975: - [] - - - 436 + - - 437 706c0e13: - [] - - - 436 + - - 437 788abf02: - [] - - - 436 + - - 437 18396b6f: - [] - - - 436 + - - 437 1982156b: - [] - - - 436 + - - 437 280c2023: - [] - - - 437 + - - 438 33d074b: - [] - - - 438 + - - 439 1dd72f23: - [] - - - 438 + - - 439 54e5110b: - [] - - - 439 + - - 440 223e896b: - [] - - - 439 + - - 440 49a002f5: - [] - - - 439 + - - 440 40fedf91: - [] - - - 441 + - - 442 415950c9: - [] - - - 442 + - - 443 377c91a3: - [] - - - 442 + - - 443 4a2b6898: - [] - - - 443 + - - 444 7da35715: - [] - - - 443 + - - 444 17005db0: - [] - - - 443 + - - 444 6dc5d747: - [] - - - 444 + - - 445 5ab77cb9: - [] - - - 445 + - - 446 58c96d0: - [] - - - 445 + - - 446 450e534e: - [] - - - 445 + - - 446 1babb969: - [] - - - 445 + - - 446 39662fbe: - [] - - - 446 + - - 447 6fe96cc2: - [] - - - 446 + - - 447 2f314737: - [] - - - 447 + - - 448 182a2841: - [] - - - 447 + - - 448 79370ce4: - [] - - 157 @@ -5336,256 +5365,256 @@ c7a0e13: - - 157 52ea46ed: - [] - - - 449 + - - 450 4b091446: - [] - - - 451 + - - 452 7904a41b: - [] - - - 452 + - - 453 24b40dc5: - [] - - - 452 + - - 453 65e42a6: - [] - - - 453 + - - 454 8f382d5: - [] - - - 454 + - - 455 4a8a572c: - [] - - - 455 + - - 456 456ae5c3: - [] - - - 456 + - - 457 79ab99d6: - [] - - - 457 + - - 458 124b133b: - [] - - - 458 + - - 459 7e29f8eb: - [] - - - 459 + - - 460 1823bc91: - [] - - - 460 + - - 461 360d2aee: - [] - - - 461 + - - 462 57c4da62: - [] - - - 461 + - - 462 2a459d73: - [] - - - 461 + - - 462 167b3f28: - [] - - - 461 + - - 462 59c705bd: - [] - - - 461 + - - 462 13db0fe8: - [] - - - 462 + - - 463 '5e200450': - [] - - - 462 + - - 463 9e9dfec: - [] - - 104 6abce7f4: - [] - - - 463 + - - 464 3d97d912: - [] - - - 465 + - - 466 3afef9c2: - [] - - - 464 + - - 465 460acab0: - [] - - - 466 + - - 467 7acf5c68: - [] - - - 465 + - - 466 1de2061: - [] - - - 464 + - - 465 6bfc7a64: - [] - - - 464 + - - 465 39c9b191: - [] - - - 467 + - - 468 5eb07c9a: - [] - - - 467 + - - 468 6f0a7d7a: - [] - - - 468 + - - 469 6a46975: - [] - - - 469 + - - 470 1c5f3730: - [] - - - 470 + - - 471 f1816c: - [] - - - 470 + - - 471 21326b95: - [] - - - 471 + - - 472 7a75c126: - [] - - - 471 + - - 472 677f069d: - [] - - - 471 + - - 472 6ff9829: - [] - - - 472 + - - 473 2a5b44b1: - [] - - - 472 + - - 473 4760cde8: - [] - - - 473 + - - 474 7e6c45c4: - [] - - - 474 + - - 475 30fd2368: - [] - - - 475 + - - 476 1e987e34: - [] - - - 475 + - - 476 7325606a: - [] - - - 476 + - - 477 3e7b8e3e: - [] - - - 477 + - - 478 3572d535: - [] - - - 478 + - - 479 324f6f2f: - [] - - - 478 + - - 479 3f7772f4: - [] - - - 479 + - - 480 788530d2: - [] - - - 480 + - - 481 53f9f9ca: - [] - - - 480 + - - 481 1b28eb8f: - [] - - - 481 + - - 482 57ce3c0f: - [] - - - 482 + - - 483 30126c3: - [] - - - 483 + - - 484 746cae26: - [] - - - 483 + - - 484 335d1940: - [] - - - 483 + - - 484 55bc8632: - [] - - - 484 + - - 485 3f4a4254: - [] - - - 485 + - - 486 e1eed01: - [] - - - 486 + - - 487 3397f9ac: - [] - - - 487 + - - 488 6d2ff67b: - [] - - - 488 + - - 489 6afc31f1: - [] - - - 489 + - - 490 616c91f5: - [] - - - 492 + - - 493 6c4962d2: - [] - - - 490 + - - 491 6af9f83f: - [] - - - 491 + - - 492 4360969d: - [] - - - 492 + - - 493 333a7527: - [] - - - 490 + - - 491 645fb27f: - [] - - - 493 + - - 494 303fd6a3: - [] - - - 493 + - - 494 3e5908f0: - [] - - - 494 + - - 495 '46050e30': - [] - - - 495 + - - 496 73c86a4f: - [] - - - 495 + - - 496 7b80c8fa: - [] - - - 495 + - - 496 c6131e8: - [] - - - 496 + - - 497 796083bf: - [] - - - 496 + - - 497 5650cdc3: - [] - - - 497 + - - 498 1e95fd5f: - [] - - - 497 + - - 498 393a32: - [] - - - 498 + - - 499 7b9de37c: - [] - - - 499 + - - 500 1b59a394: - [] - - - 501 + - - 502 1980d: - [] - - - 502 + - - 503 e361074: - [] - - - 503 + - - 504 78168a59: - [] - - - 503 + - - 504 6046971c: - [] - - - 503 + - - 504 228ffedd: - [] - - - 504 + - - 505 24c648d0: - [] - - - 505 + - - 506 6620eaa5: - [] - - 50 @@ -5594,584 +5623,584 @@ e361074: - - 50 3efba918: - [] - - - 375 + - - 376 6f2841a: - [] - - - 431 + - - 432 733d9184: - [] - - - 509 + - - 510 68c010b6: - [] - - - 510 + - - 511 559720f4: - [] - - - 511 + - - 512 4a8ca8fa: - [] - - - 512 + - - 513 719c4c9b: - [] - - - 513 + - - 514 5d25343: - [] - - - 514 + - - 515 4415290f: - [] - - - 550 + - - 551 5f3f60bc: - [] - - - 550 + - - 551 4bcfdcfb: - [] - - - 550 + - - 551 7342d6c9: - [] - - - 550 + - - 551 4d7e5fab: - [] - - 20 3dc0c565: - [] - - - 261 + - - 262 20ae2f9c: - - - 461 + - - 463 - [] 6f1966ec: - - - 556 + - - 558 - [] 7df9d60c: - [] - - 32 40313a0a: - - - 470 + - - 472 - [] f0821f8: - - - 478 + - - 480 - [] 3408be22: - - - 517 + - - 519 - [] 34082bbb: - - - 517 + - - 519 - [] 4228e24b: - - - 549 + - - 551 - [] 3403b2ca: - - - 517 + - - 519 - [] 34025d2f: - - - 517 + - - 519 - [] 2fd061c1: - - - 449 + - - 451 - [] a50d6e6: - - - 549 + - - 551 - [] 457a4cb7: - - - 337 + - - 339 - [] 26b76abb: - - - 470 + - - 472 - [] 7199b99b: - - - 473 + - - 475 - [] 7faac8f3: - - - 473 + - - 475 - [] 29f61294: - - - 470 + - - 472 - [] 7fa26f10: - - - 394 + - - 396 - [] 52bd70b8: - - - 549 + - - 551 - [] 1c2e628f: - - - 360 + - - 362 - [] 19c8248e: - - - 549 + - - 551 - [] 291f8d27: - - - 457 + - - 459 - [] 74358fc4: - - - 457 + - - 459 - [] 245c9fa7: - - - 337 + - - 339 - [] e57ab9f: - - - 449 + - - 451 - [] 2188e8bc: - - - 457 + - - 459 - [] 212f2ea8: - - - 449 + - - 451 - [] 57242b5e: - - - 449 + - - 451 - [] 270cb85c: - - - 457 + - - 459 - [] 519adff7: - - - 449 + - - 451 - [] 36e1dc5b: - - - 449 + - - 451 - [] 59ea61fe: - - - 451 + - - 453 - [] 5b14bb61: - - - 457 + - - 459 - [] 221dc6c3: - - - 337 + - - 339 - [] 60c505c5: - - - 453 + - - 455 - [] 56b27b34: - - - 453 + - - 455 - [] 36551c00: - - - 417 + - - 419 - [] 1932e7c2: - - - 337 + - - 339 - [] 60f8d398: - - - 339 + - - 341 - [] 7db2b909: - [] - - 78 19f7996: - - - 549 + - - 551 - [] 2b0ee9be: - - - 417 + - - 419 - [] 771ee41e: - [] - - 29 79948ac8: - - - 549 + - - 551 - [] 73445ad9: - - - 549 + - - 551 - [] 7d9fa03c: - - - 417 + - - 419 - [] 75a97230: - - - 549 + - - 551 - [] 29611aa9: - [] - - 29 1912cd07: - - - 337 + - - 339 - [] 6f80ee69: - - - 285 + - - 287 - [] 16de0c9e: - [] - - 29 567503cf: - - - 436 + - - 438 - [] 6642c7a1: - - - 388 + - - 390 - [] 38ce987a: - - - 360 + - - 362 - [] 2a067496: - - - 517 + - - 519 - [] 57040f7e: - - - 473 + - - 475 - [] 248c0a9a: - - - 337 + - - 339 - [] 5a6c10f6: - - - 549 + - - 551 - [] 4ec2a6f2: - - - 549 + - - 551 - [] 6fa22f9d: - - - 549 + - - 551 - [] 3ff0bcea: - - - 372 + - - 374 - [] 9ee867: - - - 372 + - - 374 - [] 46b6e18c: - - - 439 + - - 441 - [] 16d7672a: - - - 549 + - - 551 - [] 5bfa8f3b: - - - 470 + - - 472 - [] 7a81a2a5: - - - 473 + - - 475 - [] 1f5860bf: - - - 473 + - - 475 - [] 5972718c: - - - 473 + - - 475 - [] 548d6168: - - - 473 + - - 475 - [] 3995be4c: - - - 451 + - - 453 - [] 6a6e1814: - - - 449 + - - 451 - [] 655728ab: - - - 549 + - - 551 - [] 3d4e28f5: - - - 388 + - - 390 - [] 155345c2: - [] - - 29 6f67987a: - - - 417 + - - 419 - [] 1219b4f: - [] - - 29 4611d70f: - - - 517 + - - 519 - [] 4c39c578: - - - 395 + - - 397 - [] 764da1b: - - - 470 + - - 472 - [] 122af6aa: - - - 473 + - - 475 - [] '5503e712': - - - 473 + - - 475 - [] 2909a5c8: - - - 422 + - - 424 - [] 44383d04: - - - 473 + - - 475 - [] 4902747d: - - - 473 + - - 475 - [] 586d4ec: - - - 549 + - - 551 - [] 75947b75: - - - 473 + - - 475 - [] 400a832b: - - - 473 + - - 475 - [] 21bdd9f7: - - - 337 + - - 339 - [] 45fa81cc: - - - 549 + - - 551 - [] 38bdccb: - - - 473 + - - 475 - [] 2b47803c: - - - 337 + - - 339 - [] 68ff1c8d: - - - 549 + - - 551 - [] 15b076a0: - - - 549 + - - 551 - [] 24ad3a4f: - - - 549 + - - 551 - [] 4ba821e0: - - - 473 + - - 475 - [] 665a11a0: - - - 337 + - - 339 - [] 6ed4e6ec: - - - 394 + - - 396 - [] 522fabb2: - - - 549 + - - 551 - [] 6ec7fe1a: - - - 332 + - - 334 - [] 19cf3662: - - - 549 + - - 551 - [] df14300: - - - 417 - - 470 + - - 419 + - 472 - [] 421f81dc: - - - 417 - - 549 + - - 419 + - 551 - [] 58fdd306: - - - 549 + - - 551 - [] 2b61935b: - - - 549 + - - 551 - [] 1cae9f42: - - - 365 + - - 367 - [] 3bb9dbad: - - - 549 + - - 551 - [] 7256b6f9: - - - 549 + - - 551 - [] 26b250d3: - - - 549 + - - 551 - [] 2f56e815: - - - 549 + - - 551 - [] 2717c553: - - - 365 + - - 367 - [] 2ea0d0a7: - - - 365 + - - 367 - [] 6c0d7df6: - - - 549 + - - 551 - [] 568d1e84: - - - 549 + - - 551 - [] 44b37c32: - - - 473 + - - 475 - [] b78a184: - - - 473 + - - 475 - [] 65de19e: - - - 549 + - - 551 - [] 7e0167b0: - - - 335 + - - 337 - [] 29a223af: - - - 473 + - - 475 - [] 514c523a: - - - 422 + - - 424 - [] 73fc8e49: - - - 473 + - - 475 - [] 7a94ca08: - - - 549 + - - 551 - [] 48ce3eee: - - - 549 + - - 551 - [] 1ca0e9c: - - - 549 + - - 551 - [] 52767bb3: - - - 549 + - - 551 - [] 52b13aa1: - - - 549 + - - 551 - [] 4deb4661: - - - 365 + - - 367 - [] 2c278bc2: - - - 337 + - - 339 - [] 4cf855a1: - - - 337 + - - 339 - [] 3f02dfb2: - - - 337 + - - 339 - [] 3803bca9: - - - 337 + - - 339 - [] 343a35d3: - - - 335 + - - 337 - [] 7c1cf0eb: - - - 337 + - - 339 - [] 3d401a13: - - - 337 + - - 339 - [] 677f70e8: - - - 549 + - - 551 - [] 6b08e178: - - - 337 + - - 339 - [] 52dff129: - - - 337 + - - 339 - [] 28ce1a91: - - - 403 + - - 405 - [] 46c3d5d5: - - - 549 + - - 551 - [] 4a4e6f1e: - - - 549 + - - 551 - [] 1936600e: - - - 549 + - - 551 - [] 1ff50bea: - - - 337 + - - 339 - [] '4315e06': - - - 549 + - - 551 - [] 5d518e74: - - - 549 + - - 551 - [] aa8922: - - - 470 + - - 472 - [] 16c91c13: - - - 549 + - - 551 - [] 510a3254: - - - 408 + - - 410 - [] 2c7d7481: - - - 549 + - - 551 - [] 3f841c03: - - - 549 + - - 551 - [] 60dfcbe8: - - - 473 + - - 475 - [] 609cdc28: - - - 412 + - - 414 - [] 3a04960f: - - - 549 + - - 551 - [] 2ae8b1e6: - - - 549 + - - 551 - [] 9bcd820: - - - 549 + - - 551 - [] 2477138a: - - - 470 + - - 472 - [] 7bce00c4: - - - 549 + - - 551 - [] 18f7140c: - - - 365 + - - 367 - [] 1ce074a4: - - - 422 + - - 424 - [] 9f695dc: - - - 449 + - - 451 - [] 2491e40d: - - - 372 + - - 374 - [] 757a8795: - - - 533 + - - 535 - [] 57e64a07: - - - 533 + - - 535 - [] 3e6f98b5: - - - 487 + - - 489 - [] 1436422f: - - - 487 + - - 489 - [] 139cae3f: - - - 487 + - - 489 - [] 7380ba08: - - - 487 + - - 489 - [] 232fbb5a: - - - 549 + - - 551 - [] 523d4da: - - - 549 + - - 551 - [] 28b09a99: - - - 378 + - - 380 - [] 4e8a9cfc: - - - 517 + - - 519 - [] 606a158c: - - - 517 + - - 519 - [] 64df2c27: - - - 378 + - - 380 - [] 4170547d: - - - 487 + - - 489 - [] 1a72c0a6: - - - 449 + - - 451 - [] 37ea875a: - - - 533 + - - 535 - [] 3f4fbc79: - - - 533 + - - 535 - [] 2fbb9a0c: - - - 533 + - - 535 - [] 15b6eb0: - - - 503 + - - 505 - [] 1eca8e67: - [] - [] 2a14701d: - - - 503 + - - 505 - [] 56fc06cc: - [] @@ -6180,257 +6209,257 @@ aa8922: - [] - [] 42a2d9b6: - - - 388 + - - 390 - [] 63a8561c: - - - 388 + - - 390 - [] 502dd6e: - - - 523 + - - 525 - [] '94080e9': - - - 517 + - - 519 - [] f697ba8: - - - 517 + - - 519 - [] f7e9c79: - - - 473 + - - 475 - [] 7f9b84d0: - - - 549 + - - 551 - [] 17ba57f1: - - - 549 + - - 551 - [] 102f8fbb: - - - 372 + - - 374 - [] 5a02ee88: - - - 473 + - - 475 - [] 4d698992: - - - 549 + - - 551 - [] 7d7b976c: - - - 473 + - - 475 - [] 5cd2dd4f: - - - 337 + - - 339 - [] 53b7ca26: - - - 209 + - - 211 - [] 3a7b1577: - - - 470 + - - 472 - [] 59c34717: - - - 470 + - - 472 - [] 711f5534: - - - 473 + - - 475 - [] 5caafafd: - - - 473 + - - 475 - [] 7ee4f153: - - - 370 + - - 372 - [] 184a073e: - - - 473 + - - 475 - [] 1479d9dd: - - - 473 + - - 475 - [] 2caf0439: - - - 388 + - - 390 - [] 5bea4b92: - - - 473 + - - 475 - [] 7a546e48: - - - 549 + - - 551 - [] 733cae99: - - - 388 + - - 390 - [] 18694dec: - - - 473 + - - 475 - [] 4821c280: - [] - - 29 677b8519: - - - 365 + - - 367 - [] 67c641b9: - - - 517 + - - 519 - [] 3cf61430: - - - 517 + - - 519 - [] 7a9493a: - - - 470 + - - 472 - [] 627ef426: - - - 549 + - - 551 - [] 85f5b12: - - - 549 + - - 551 - [] 5caa3d26: - - - 473 + - - 475 - [] 221f46b2: - - - 549 + - - 551 - [] 29f36585: - - - 473 + - - 475 - [] 2f45551e: - - - 473 + - - 475 - [] 28601a2b: - - - 337 + - - 339 - [] e026170: - - - 549 + - - 551 - [] 231ba26e: - - - 337 + - - 339 - [] 18eb9a: - - - 549 + - - 551 - [] aa3cc5c: - - - 473 + - - 475 - [] 6105c2ba: - - - 549 + - - 551 - [] 596fddc7: - - - 549 + - - 551 - [] 6bab5320: - - - 473 + - - 475 - [] 26bda69b: - - - 337 + - - 339 - [] 16dd2648: - - - 473 + - - 475 - [] 437ae360: - - - 407 + - - 409 - [] 22154fc0: - - - 470 + - - 472 - [] 68611bbc: - - - 470 + - - 472 - [] 2961ba07: - - - 365 + - - 367 - [] 42e89cb1: - - - 549 + - - 551 - [] 7a7a7ea2: - - - 473 + - - 475 - [] 14d48160: - - - 549 + - - 551 - [] 15365c74: - - - 473 + - - 475 - [] 1c4cfb19: - - - 473 + - - 475 - [] 6abd5b2c: - - - 549 + - - 551 - [] 39a9f2d5: - - - 473 + - - 475 - [] 77ced7f2: - - - 549 + - - 551 - [] 1b68a07e: - - - 473 + - - 475 - [] 1d5ac7fb: - - - 473 + - - 475 - [] 8d4320e: - - - 473 + - - 475 - [] 5b54eaa5: - - - 459 + - - 461 - [] 7bcc490: - [] - - 78 5ffcd198: - - - 549 + - - 551 - [] 3a03506d: - - - 549 + - - 551 - [] 2001842c: - - - 549 + - - 551 - [] 3969b180: - [] - - 29 5838600c: - - - 473 + - - 475 - [] 5a740d9c: - - - 473 + - - 475 - [] 1e931d23: - - - 549 + - - 551 - [] 26b76ae2: - - - 470 + - - 472 - [] 1f7261b: - - - 473 + - - 475 - [] dc78a5a: - [] - - 78 1b65caa0: - - - 188 - - 470 + - - 190 + - 472 - [] 47fda490: - - - 549 + - - 551 - [] 3062f14c: - - - 269 + - - 271 - [] 473f479f: - - - 394 + - - 396 - [] 3e82832e: - - - 473 + - - 475 - [] 3533fa29: - - - 394 + - - 396 - [] 3b19c779: - - - 473 + - - 475 - [] 14f24eba: - - - 473 + - - 475 - [] 71be2e16: - - - 473 + - - 475 - [] 1a06e07c: - - - 473 + - - 475 - [] 12638eed: - [] @@ -6442,55 +6471,55 @@ dc78a5a: - [] - [] 6b6ddcfd: - - - 418 + - - 420 - [] 1fcab601: - - - 418 + - - 420 - [] 45d0759b: - - - 418 + - - 420 - [] 1f1faf8: - - - 418 + - - 420 - [] 31c93dce: - - - 417 + - - 419 - [] 3fc4bac2: - - - 470 + - - 472 - [] 1ca5591b: - [] - [] 2b49a82c: - - - 470 + - - 472 - [] 1bbd2e38: - - - 473 + - - 475 - [] 462c3223: - - - 549 + - - 551 - [] 63293c23: - - - 372 + - - 374 - [] 729cd341: - [] - - 81 548a6272: - - - 549 + - - 551 - [] b199bc1: - - - 473 + - - 475 - [] 6ebd28de: - - - 360 + - - 362 - [] 668fcec8: - - - 388 + - - 390 - [] 404ba65d: - - - 388 + - - 390 - [] 2e15835b: - [] @@ -6505,34 +6534,34 @@ b199bc1: - [] - [] 2c90ca4a: - - - 473 + - - 475 - [] 46ae5b9b: - - - 473 + - - 475 - [] 21e53a13: - - - 473 + - - 475 - [] 5c3b5a5: - - - 365 + - - 367 - [] 55e03f43: - - - 549 + - - 551 - [] 4d0b28e5: - [] - - 78 120c53d5: - - - 473 + - - 475 - [] 15cd32d9: - - - 473 + - - 475 - [] 131dda12: - - - 484 + - - 486 - [] 5df75797: - - - 338 + - - 340 - [] 7e85788b: - [] @@ -6547,195 +6576,195 @@ b199bc1: - [] - [] e1fda3f: - - - 417 + - - 419 - [] 630d1654: - [] - - 33 126402b7: - - - 417 + - - 419 - [] 1c2da514: - - - 556 + - - 558 - [] 5ec17e2e: - [] - - - 544 + - - 545 46a93254: - - - 365 + - - 367 - [] 75f69776: - - - 365 + - - 367 - [] 5806c54c: - - - 365 + - - 367 - [] 24589a8b: - - - 365 + - - 367 - [] 4777b0d5: - - - 365 + - - 367 - [] 48b31981: - [] - [] 57168c0b: - - - 365 + - - 367 - [] 3bae64a7: - - - 365 + - - 367 - [] '205e4944': - - - 365 + - - 367 - [] 1fa21001: - - - 443 + - - 445 - [] f1e117c: - - - 473 + - - 475 - [] 61c3481a: - - - 394 + - - 396 - [] 6e829f39: - - - 473 + - - 475 - [] 49049a8: - - - 473 + - - 475 - [] 2c0229da: - - - 473 + - - 475 - [] 581abc89: - - - 394 + - - 396 - [] 7622b6c6: - - - 394 + - - 396 - [] 603dab49: - - - 473 + - - 475 - [] 5cc88cb4: - - - 473 + - - 475 - [] 74e55f48: - - - 549 + - - 551 - [] 7b4acb14: - - - 549 + - - 551 - [] 723a653f: - - - 549 + - - 551 - [] 3e28fc4a: - - - 470 + - - 472 - [] 35de2b6e: - - - 337 + - - 339 - [] 6a7da964: - - - 337 + - - 339 - [] 4b8d2cc0: - - - 470 + - - 472 - [] '5754e975': - - - 549 + - - 551 - [] 1797ca2b: - - - 422 + - - 424 - [] 4485798c: - - - 422 + - - 424 - [] 7d79928b: - - - 422 + - - 424 - [] 5ad5f1e6: - - - 449 + - - 451 - [] 4e30b504: - - - 449 + - - 451 - [] 3a413b8c: - - - 449 + - - 451 - [] 37dbfee8: - - - 449 + - - 451 - [] 2b36c206: - - - 449 + - - 451 - [] 39d1aa5a: - - - 449 + - - 451 - [] 5fc6dfe6: - - - 470 + - - 472 - [] 5be7755f: - - - 473 + - - 475 - [] 35729ac3: - - - 549 + - - 551 - [] 5bab0733: - - - 473 + - - 475 - [] 17a29fb2: - - - 473 + - - 475 - [] 5aafeeb8: - - - 549 + - - 551 - [] 5d82c022: - - - 417 + - - 419 - [] 6fc9a360: - - - 470 + - - 472 - [] 4b586e00: - - - 473 + - - 475 - [] 10c9fc78: - - - 473 + - - 475 - [] 482ba59: - - - 473 + - - 475 - [] 7fa6bb12: - - - 473 + - - 475 - [] 13d9367f: - - - 418 + - - 420 - [] 74bd94f3: - - - 549 + - - 551 - [] 23758d3e: - - - 419 + - - 421 - [] 47cfe533: - - - 549 + - - 551 - [] 60873cd8: - - - 549 + - - 551 - [] 503a9d38: - - - 549 + - - 551 - [] 16ab75b4: - - - 470 - - 478 - - 549 + - - 472 + - 480 + - 551 - [] 5db0cbfb: - - - 473 + - - 475 - [] 28a633a3: - - - 395 + - - 397 - [] ebd7: - - - 478 + - - 480 - [] 398b4d31: - [] @@ -6744,124 +6773,124 @@ ebd7: - [] - - 14 c3b2224: - - - 481 + - - 483 - [] 5c1a96bd: - [] - - 20 7f2a6f82: - - - 473 + - - 475 - [] 2e27ac6: - - - 473 + - - 475 - [] 67953a7c: - - - 473 + - - 475 - [] '51e16783': - - - 549 + - - 551 - [] 25090f77: - - - 417 + - - 419 - [] bca9a83: - - - 473 + - - 475 - [] 3a7988ba: - - - 473 + - - 475 - [] 9b4d33b: - - - 473 + - - 475 - [] 27112bf1: - - - 473 + - - 475 - [] 5d3b17c3: - - - 395 + - - 397 - [] 61c92fbc: - - - 473 + - - 475 - [] 4e215c3b: - - - 473 + - - 475 - [] 55a2b0f5: - - - 473 + - - 475 - [] 1329e1b8: - - - 473 + - - 475 - [] 5dae8384: - - - 473 + - - 475 - [] 7a5bf26: - - - 147 + - - 148 - [] 35fe370b: - - - 473 + - - 475 - [] 6fdf7d5d: - - - 473 + - - 475 - [] 996d06c: - - - 473 + - - 475 - [] 7df1c9: - - - 473 + - - 475 - [] 7e7f0fb5: - - - 549 + - - 551 - [] 20d0058c: - - - 549 + - - 551 - [] d9f4e0c: - - - 470 + - - 472 - [] 15db6ec8: - - - 473 + - - 475 - [] 5441f76a: - - - 549 + - - 551 - [] 4412598c: - - - 473 + - - 475 - [] 301fa328: - - - 473 + - - 475 - [] 437464c4: - - - 470 + - - 472 - [] ed77680: - - - 473 + - - 475 - [] ee74a30: - - - 549 + - - 551 - [] 4a527aac: - - - 470 + - - 472 - [] 34cfa03c: - - - 470 + - - 472 - [] 142db543: - - - 417 + - - 419 - [] 134a596f: - - - 266 + - - 268 - [] 4c5dfa9e: - - - 337 + - - 339 - [] fc5e240: - - - 303 + - - 305 - [] 3fccaa3c: - - - 418 + - - 420 - [] 7f9e8e6d: - - - 436 + - - 438 - [] 7074732a: - [] @@ -6870,13 +6899,13 @@ fc5e240: - [] - - 78 30933ce9: - - - 470 + - - 472 - [] 11ac0863: - - - 470 + - - 472 - [] 1a59dd68: - - - 473 + - - 475 - [] 7d5b51fa: - [] @@ -6885,10 +6914,10 @@ fc5e240: - [] - - 78 7155a4d7: - - - 378 + - - 380 - [] 2fc31689: - - - 549 + - - 551 - [] 325bc8cc: - [] @@ -6903,313 +6932,313 @@ fc5e240: - [] - - 70 7485b130: - - - 473 + - - 475 - [] c8182cf: - - - 473 + - - 475 - [] 24f83bdc: - - - 473 + - - 475 - [] 6fb0de41: - - - 549 + - - 551 - [] 6c8b6699: - - - 470 + - - 472 - [] fdddd5d: - - - 394 + - - 396 - [] 975a13a: - - - 394 + - - 396 - [] 19381c09: - - - 470 + - - 472 - [] 22a937ce: - - - 394 + - - 396 - [] 4e98f027: - - - 470 + - - 472 - [] c8d8b94: - - - 473 + - - 475 - [] 3e280e59: - - - 470 + - - 472 - [] 66c22681: - - - 394 + - - 396 - [] 49815a53: - - - 473 + - - 475 - [] 190a935a: - - - 470 + - - 472 - [] 3157a84d: - - - 394 + - - 396 - [] 3163893a: - - - 365 + - - 367 - [] ffb397c: - - - 337 + - - 339 - [] 6a9a4667: - - - 394 + - - 396 - [] 38d8576b: - - - 394 + - - 396 - [] 4d5793b0: - - - 473 + - - 475 - [] 3275de54: - - - 470 + - - 472 - [] 714bc7d9: - - - 394 + - - 396 - [] 6383d29f: - - - 395 + - - 397 - [] 4af93dbd: - - - 473 + - - 475 - [] 49deed11: - - - 473 + - - 475 - [] 3782fc18: - - - 407 + - - 409 - [] 5490ee73: - - - 473 + - - 475 - [] e5e3c7a: - - - 337 + - - 339 - [] 5a4741ab: - - - 473 + - - 475 - [] 27a436a7: - - - 470 + - - 472 - [] 68bf61d3: - - - 473 + - - 475 - [] 5d24ee89: - - - 470 + - - 472 - [] 3a0ca6b7: - - - 470 + - - 472 - [] 14fc1448: - - - 394 + - - 396 - [] 75bd5302: - - - 365 + - - 367 - [] 40f0f1ba: - - - 337 + - - 339 - [] 46ed864e: - - - 394 + - - 396 - [] 391830b5: - - - 394 + - - 396 - [] 7660f30f: - - - 394 + - - 396 - [] '72398e51': - - - 470 + - - 472 - [] 273132d1: - - - 473 + - - 475 - [] 15eefff4: - - - 395 + - - 397 - [] 64c3e9e7: - [] - - 51 494c857a: - - - 473 + - - 475 - [] 1aa08861: - - - 473 + - - 475 - [] 5337462f: - - - 337 + - - 339 - [] 2c4cd1: - - - 337 + - - 339 - [] 38dbac5d: - - - 337 + - - 339 - [] c78148d: - - - 470 + - - 472 - [] 376f770a: - - - 470 + - - 472 - [] 533c515d: - - - 473 + - - 475 - [] 2c684c12: - - - 470 + - - 472 - [] 6678f12c: - - - 365 + - - 367 - [] 1cb3299: - - - 337 + - - 339 - [] 23eebeaf: - - - 470 + - - 472 - [] 79bd9bc9: - - - 394 + - - 396 - [] 6c26556a: - - - 470 + - - 472 - [] 4fcb5049: - - - 394 + - - 396 - [] 20e84d98: - - - 470 + - - 472 - [] 3f9c118c: - - - 473 + - - 475 - [] 2217043d: - - - 473 + - - 475 - [] 2228d9e0: - - - 473 + - - 475 - [] 4da6209b: - - - 470 + - - 472 - [] 370d292f: - - - 365 + - - 367 - [] 352eebfd: - - - 395 + - - 397 - [] 130f4fb7: - - - 473 + - - 475 - [] 2d84c997: - - - 549 + - - 551 - [] a263f32: - - - 470 + - - 472 - [] 4e1cdbf: - - - 470 + - - 472 - [] 3d32b112: - - - 470 + - - 472 - [] 7700ff38: - - - 337 + - - 339 - [] 40cf9f6e: - - - 470 + - - 472 - [] 285cdbae: - - - 549 + - - 551 - [] e68f8e6: - - - 549 + - - 551 - [] 4d430b55: - - - 549 + - - 551 - [] 369c53ca: - - - 549 + - - 551 - [] 6bcc6d76: - - - 549 + - - 551 - [] 6a3a474f: - [] - - 34 2c8112d1: - - - 473 + - - 475 - [] 71a0630a: - - - 556 + - - 558 - [] 1a5a8635: - - - 473 + - - 475 - [] 133c513f: - - - 470 + - - 472 - [] 1e81d03b: - [] - - - 249 + - - 250 47adb7a6: - - - 549 + - - 551 - [] 7897aae2: - - - 411 + - - 413 - [] 333c4ec5: - - - 549 + - - 551 - [] 6e01dd53: - - - 225 + - - 227 - [] 3a23ab96: - - - 470 + - - 472 - [] 6d910609: - - - 470 + - - 472 - [] 29cefa43: - - - 417 + - - 419 - [] 4af073b6: - [] - - 78 7288a316: - - - 417 + - - 419 - [] 88541fc: - - - 418 + - - 420 - [] 50da3fa6: - - - 473 + - - 475 - [] 666359f1: - - - 549 + - - 551 - [] 51fea6d4: - - - 470 + - - 472 - [] 333a5bcd: - - - 470 + - - 472 - [] 60169cbf: - - - 337 + - - 339 - [] 3762fcaa: - - - 337 + - - 339 - [] 7c9dc77f: - - - 422 + - - 424 - [] 5a88b8c8: - - - 473 + - - 475 - [] 436663a9: - - - 418 + - - 420 - [] 558a2d58: - [] @@ -7218,154 +7247,154 @@ e68f8e6: - [] - - 78 52cb293: - - - 549 + - - 551 - [] 1c300f31: - - - 473 + - - 475 - [] 5f54a22e: - - - 473 + - - 475 - [] 79738eb9: - - - 473 + - - 475 - [] 5b595245: - [] - - 95 3dbfc91: - - - 473 + - - 475 - [] 130cb2ea: - - - 473 + - - 475 - [] 4712cc13: - - - 473 + - - 475 - [] 21091c94: - - - 473 + - - 475 - [] 36b717d8: - - - 392 + - - 394 - [] 2c832ac1: - - - 337 + - - 339 - [] 1ac80934: - - - 337 + - - 339 - [] 3ab2ae8a: - - - 337 + - - 339 - [] 1f28bbb7: - - - 337 + - - 339 - [] 790425f8: - - - 337 + - - 339 - [] 43e43aca: - - - 337 + - - 339 - [] 15f72f77: - - - 337 + - - 339 - [] 66a10d78: - - - 337 + - - 339 - [] 5d6f8138: - - - 337 + - - 339 - [] 51e6a0c7: - - - 337 + - - 339 - [] 61d033bb: - - - 337 + - - 339 - [] 6312da15: - - - 337 + - - 339 - [] 70a518d8: - - - 337 + - - 339 - [] 28bc9fdd: - - - 337 + - - 339 - [] 4cb36f24: - - - 337 + - - 339 - [] 744d1fda: - [] - - - 235 + - - 236 1ac74b0: - [] - - - 235 + - - 236 6b852078: - [] - - - 235 + - - 236 150efd21: - [] - - - 326 + - - 327 164dbdb: - [] - - 18 577e5f76: - - - 392 + - - 394 - [] 9e19d54: - - - 407 + - - 409 - [] 77dd0785: - - - 556 + - - 558 - [] 546b0723: - - - 556 + - - 558 - [] 545cefa2: - - - 556 + - - 558 - [] 77dd105f: - - - 556 + - - 558 - [] 77dd1060: - - - 556 + - - 558 - [] 777abe33: - - - 556 + - - 558 - [] 777abe32: - - - 556 + - - 558 - [] 77dd0862: - - - 556 + - - 558 - [] 77dd0fb7: - - - 556 + - - 558 - [] 5234f3e8: - [] - - - 239 + - - 240 296c0139: - [] - - - 239 + - - 240 3ac6115b: - [] - - - 239 + - - 240 127fd11a: - [] - - - 239 + - - 240 '59e81123': - [] - - - 239 + - - 240 7f494dc7: - [] - - - 239 + - - 240 1973d17: - [] - - 18 3fce512b: - - - 362 + - - 364 - [] 7a1ec9fd: - - - 470 + - - 472 - [] 664a08b0: - [] @@ -7378,207 +7407,207 @@ e68f8e6: - - 29 6f113624: - [] - - - 252 + - - 253 969a304: - - - 549 + - - 551 - [] 19e9f765: - - - 549 + - - 551 - [] 4a02d6d6: - - - 549 + - - 551 - [] 35569f79: - - - 549 + - - 551 - [] 5d8f9306: - [] - - 29 3afcd282: - - - 549 + - - 551 - [] 1fb86073: - - - 549 + - - 551 - [] 214a0449: - - - 549 + - - 551 - [] de8502a: - - - 473 + - - 475 - [] 5111ac9d: - - - 470 + - - 472 - [] 5c20096c: - - - 549 + - - 551 - [] 2c1f018a: - - - 549 + - - 551 - [] 150af27e: - - - 292 + - - 294 - [] 3d52c175: - - - 470 + - - 472 - [] 13867f56: - - - 473 + - - 475 - [] 22c5bd31: - - - 473 + - - 475 - [] 6b86d1b0: - - - 473 + - - 475 - [] 316634ca: - - - 473 + - - 475 - [] 5aafa273: - - - 470 + - - 472 - [] 1e2bc56d: - - - 473 + - - 475 - [] 4399a01a: - - - 549 + - - 551 - [] 7ce9e5d1: - - - 549 + - - 551 - [] 3dae3751: - - - 473 + - - 475 - [] 79b4322b: - - - 473 + - - 475 - [] 780c8371: - - - 470 + - - 472 - [] 7dbef8f2: - - - 473 + - - 475 - [] 7db4adb2: - - - 473 + - - 475 - [] 54686caf: - - - 473 + - - 475 - [] 268fd250: - - - 473 + - - 475 - [] 3521626e: - - - 473 + - - 475 - [] ab0f422: - - - 470 + - - 472 - [] 38c7f992: - - - 473 + - - 475 - [] 1e02fd6d: - - - 473 + - - 475 - [] 3e3124ef: - - - 470 + - - 472 - [] 67d5ef4c: - - - 473 + - - 475 - [] aef5f33: - - - 473 + - - 475 - [] 204bafb2: - - - 470 + - - 472 - [] 169548fe: - - - 478 + - - 480 - [] 76986c51: - - - 347 + - - 349 - [] 241a6417: - - - 473 + - - 475 - [] 2aa68471: - [] - - 20 2a92d0c8: - - - 473 + - - 475 - [] 347561f7: - - - 473 + - - 475 - [] 6f2febc5: - - - 473 + - - 475 - [] 219a1ec7: - - - 517 + - - 519 - [] 12fc1124: - - - 549 + - - 551 - [] 68f71001: - - - 549 + - - 551 - [] 6596fdf: - - - 549 + - - 551 - [] 69d85154: - - - 549 + - - 551 - [] 18aef751: - - - 549 + - - 551 - [] 62909d25: - - - 549 + - - 551 - [] 7b513f7b: - - - 549 + - - 551 - [] ba41adc: - [] - - 97 6bfa56df: - - - 473 + - - 475 - [] 4a9ab573: - - - 470 + - - 472 - [] 6007072e: - - - 473 + - - 475 - [] d982257: - - - 337 + - - 339 - [] 7c0ba487: - - - 473 + - - 475 - [] 6bf99b93: - - - 473 + - - 475 - [] 6b640517: - - - 473 + - - 475 - [] 617f04de: - - - 473 + - - 475 - [] 28ab79b0: - - - 473 + - - 475 - [] 7833b407: - - - 473 + - - 475 - [] 54d141ec: - - - 473 + - - 475 - [] 8b99ef9: - - - 473 + - - 475 - [] 63d995a7: - - - 473 + - - 475 - [] 569a5b63: - - - 387 + - - 389 - [] 1c7db9b6: - [] @@ -7587,58 +7616,58 @@ d982257: - [] - - 84 64a180b9: - - - 473 + - - 475 - [] 4b379dc7: - - - 473 + - - 475 - [] 1076e8b0: - - - 473 + - - 475 - [] 18680a52: - - - 365 + - - 367 - [] 2ee6ca7f: - - - 473 + - - 475 - [] 6d35d73: - - - 473 + - - 475 - [] 2f859093: - - - 470 + - - 472 - [] 2c55e551: - - - 337 + - - 339 - [] 77f66914: - - - 549 + - - 551 - [] 4f3923b7: - - - 549 + - - 551 - [] 231cdd1c: - - - 549 + - - 551 - [] 742a496d: - [] - - 74 9afb73: - - - 470 + - - 472 - [] a34b131: - - - 549 + - - 551 - [] 3c53c130: - - - 549 + - - 551 - [] 2a5f771: - - - 549 + - - 551 - [] 3f2cc90e: - - - 549 + - - 551 - [] 2e123bb2: - - - 549 + - - 551 - [] cbb8af3: - [] @@ -7647,741 +7676,741 @@ cbb8af3: - [] - - 33 3528ec5c: - - - 517 + - - 519 - [] 4c359e88: - - - 549 + - - 551 - [] 7e1da890: - - - 549 + - - 551 - [] 12c496d0: - - - 517 + - - 519 - [] 6a07bf82: - - - 549 + - - 551 - [] 6c236571: - - - 517 + - - 519 - [] 4bf92032: - - - 517 + - - 519 - [] 70a1c1d1: - - - 517 + - - 519 - [] 38e93a46: - - - 549 + - - 551 - [] 131ce373: - - - 451 + - - 453 - [] 3311cb50: - - - 360 + - - 362 - [] 213123ee: - - - 365 + - - 367 - [] 7df27c13: - - - 378 + - - 380 - [] f44680d: - - - 470 + - - 472 - [] 521879bc: - - - 549 + - - 551 - [] 1b871722: - - - 473 + - - 475 - [] 47db9cab: - - - 473 + - - 475 - [] 5f686e40: - - - 473 + - - 475 - [] 24dbaf59: - - - 417 + - - 419 - [] 5be21418: - - - 473 + - - 475 - [] 761ee2ba: - - - 473 + - - 475 - [] 1bf5fd9e: - [] - - 29 2ec1f5b2: - - - 360 + - - 362 - [] 49951dbd: - - - 473 + - - 475 - [] 4d2fa061: - - - 473 + - - 475 - [] 64d209ae: - - - 549 + - - 551 - [] 5f7f2451: - - - 549 + - - 551 - [] 2ba75abd: - - - 549 + - - 551 - [] 7fa05910: - - - 239 + - - 241 - [] 6fc4579a: - - - 473 + - - 475 - [] 7e8d33e0: - - - 549 + - - 551 - [] 2f2e21a2: - - - 549 + - - 551 - [] 3751c74e: - - - 549 + - - 551 - [] 51802a8: - - - 549 + - - 551 - [] 19c78: - - - 338 + - - 340 - [] 655916f0: - - - 473 + - - 475 - [] 7ef762de: - - - 394 + - - 396 - [] 2fb30e44: - - - 473 + - - 475 - [] 6f9fddd1: - - - 473 + - - 475 - [] 52faa1d2: - - - 394 + - - 396 - [] 5a9ff083: - - - 470 + - - 472 - [] 115162b5: - - - 473 + - - 475 - [] 7b3b049b: - - - 549 + - - 551 - [] 63f1a1d: - - - 407 + - - 409 - [] 433f68a2: - - - 365 + - - 367 - [] f3d21bc: - - - 549 + - - 551 - [] 2ab71a5b: - - - 473 + - - 475 - [] 56de4e22: - - - 549 + - - 551 - [] 153099c3: - - - 394 + - - 396 - [] 5671b915: - - - 473 + - - 475 - [] 75a6d97d: - - - 473 + - - 475 - [] a035d74: - - - 407 + - - 409 - [] '11244e63': - - - 473 + - - 475 - [] 38f0a721: - - - 365 + - - 367 - [] 551c7c24: - - - 473 + - - 475 - [] a21793f: - - - 473 + - - 475 - [] 6a4188fd: - - - 470 + - - 472 - [] 7de581f4: - - - 394 + - - 396 - [] 7a723f68: - - - 473 + - - 475 - [] 4a984a6e: - - - 337 + - - 339 - [] 46d059a5: - - - 549 + - - 551 - [] 121b3daa: - - - 473 + - - 475 - [] 1f080de: - - - 549 + - - 551 - [] 4f210648: - - - 473 + - - 475 - [] 5e4b3854: - - - 549 + - - 551 - [] 1b430069: - - - 549 + - - 551 - [] d9a9e7a: - [] - - 78 7870ca03: - - - 549 + - - 551 - [] 1c2afa68: - - - 473 + - - 475 - [] 874ebea: - - - 473 + - - 475 - [] 279ae465: - - - 417 + - - 419 - [] 387b0363: - - - 470 + - - 472 - [] 54d4fb7e: - - - 470 + - - 472 - [] 47625dcc: - - - 473 + - - 475 - [] aaafff2: - - - 470 + - - 472 - [] 7cf673a1: - - - 394 + - - 396 - [] 214a37f2: - - - 473 + - - 475 - [] 176d89: - - - 473 + - - 475 - [] 5bb527e5: - - - 549 + - - 551 - [] 7e305d77: - - - 473 + - - 475 - [] 24b571de: - - - 549 + - - 551 - [] 349d85c: - - - 549 + - - 551 - [] 1e28948e: - - - 473 + - - 475 - [] 77f99d8c: - - - 473 + - - 475 - [] 1d22fab9: - - - 473 + - - 475 - [] 66b7b047: - - - 549 + - - 551 - [] 69137c0c: - - - 473 + - - 475 - [] 64ba2cf: - - - 549 + - - 551 - [] 5ea93374: - - - 549 + - - 551 - [] 73cd250f: - - - 549 + - - 551 - [] 541c445b: - - - 549 + - - 551 - [] 77cf4801: - - - 549 + - - 551 - [] 4a75a297: - - - 549 + - - 551 - [] 7508adde: - - - 549 + - - 551 - [] 5c2976f6: - - - 533 + - - 535 - [] c57: - [] - - 18 2ef292e8: - - - 473 + - - 475 - [] '7e289626': - - - 549 + - - 551 - [] 1e93058b: - - - 549 + - - 551 - [] 6a24009c: - - - 549 + - - 551 - [] 66bb8993: - - - 337 + - - 339 - [] 103a1fe: - [] - - 6 427dbe29: - - - 549 + - - 551 - [] 183b7af: - - - 473 + - - 475 - [] 14e62ed6: - - - 470 + - - 472 - [] 1d13abb5: - - - 549 + - - 551 - [] 5ae7727a: - - - 473 + - - 475 - [] 2455afbd: - - - 473 + - - 475 - [] 748acd63: - - - 549 + - - 551 - [] 364a515: - - - 549 + - - 551 - [] 5f65db26: - - - 549 + - - 551 - [] 7683d868: - - - 473 + - - 475 - [] 5c43eb60: - - - 549 + - - 551 - [] 2e91557a: - - - 549 + - - 551 - [] 3a546568: - - - 549 + - - 551 - [] 41ba45c3: - - - 549 + - - 551 - [] 6f3aa0a9: - - - 549 + - - 551 - [] 76a08104: - - - 549 + - - 551 - [] '1713e035': - - - 549 + - - 551 - [] 2e9dd687: - - - 549 + - - 551 - [] 638411c8: - - - 549 + - - 551 - [] 2a304f71: - - - 549 + - - 551 - [] 540c2e47: - - - 549 + - - 551 - [] 2ffd9639: - - - 473 + - - 475 - [] 57bf2492: - - - 473 + - - 475 - [] 78fe1608: - - - 470 + - - 472 - [] 45cab512: - - - 549 + - - 551 - [] 5dc578cc: - - - 473 + - - 475 - [] 453543f0: - - - 549 + - - 551 - [] 53f1fc4f: - - - 549 + - - 551 - [] 6743142b: - - - 403 + - - 405 - [] 7cddd20a: - - - 549 + - - 551 - [] 3d169694: - - - 549 + - - 551 - [] 16ea7a45: - - - 473 + - - 475 - [] 6ecec822: - - - 478 + - - 480 - [] 56dadb58: - - - 473 + - - 475 - [] 5f2ffd57: - - - 473 + - - 475 - [] 550d7867: - - - 549 + - - 551 - [] d75bb7f: - - - 473 + - - 475 - [] 5ace913: - - - 549 + - - 551 - [] '4e314396': - - - 549 + - - 551 - [] 48a4ff80: - - - 549 + - - 551 - [] 7e98da4c: - - - 549 + - - 551 - [] 6da48067: - - - 432 + - - 434 - [] 2ea068be: - - - 288 + - - 290 - [] 3a10e792: - - - 275 + - - 277 - [] 1e930d69: - - - 365 + - - 367 - [] 818511a: - - - 473 + - - 475 - [] 42c166f1: - - - 549 + - - 551 - [] 149f7ebf: - - - 549 + - - 551 - [] 65d86d67: - - - 549 + - - 551 - [] 1a84df99: - - - 549 + - - 551 - [] 21bb67bc: - - - 473 + - - 475 - [] 68024f27: - - - 549 + - - 551 - [] 7eb0a283: - - - 549 + - - 551 - [] 4de9301d: - - - 549 + - - 551 - [] 503f335d: - - - 549 + - - 551 - [] 77299c30: - - - 473 + - - 475 - [] 7bba294: - - - 473 + - - 475 - [] 12a1a1ff: - - - 473 + - - 475 - [] 5ba0692b: - [] - - 74 6fe5da26: - - - 478 + - - 480 - [] 597942c2: - - - 549 + - - 551 - [] 6dbf4f8b: - - - 549 + - - 551 - [] 1f8838df: - - - 470 + - - 472 - [] 2189506c: - - - 473 + - - 475 - [] 38ee312d: - - - 478 + - - 480 - [] 3a00ea11: - - - 478 + - - 480 - [] 3c3811eb: - - - 549 + - - 551 - [] 1cac7664: - - - 378 + - - 380 - [] 24c29d80: - - - 470 + - - 472 - [] 2036cd9e: - - - 478 + - - 480 - [] 9fc9ac5: - - - 395 + - - 397 - [] 2319a5c4: - - - 395 + - - 397 - [] 58ca52c5: - - - 470 + - - 472 - [] 405fb966: - - - 478 + - - 480 - [] 54c3dc62: - - - 549 + - - 551 - [] 715b1489: - - - 394 + - - 396 - [] 27464eef: - - - 549 + - - 551 - [] '40e57376': - - - 394 + - - 396 - [] 3a692a31: - - - 394 + - - 396 - [] 2cf03a3e: - - - 478 + - - 480 - [] 59ebfb28: - - - 549 + - - 551 - [] 78b647a1: - - - 394 + - - 396 - [] 204ef60a: - - - 478 + - - 480 - [] 8bf95bc: - - - 407 + - - 409 - [] 64d6c14b: - - - 470 + - - 472 - [] 623939bf: - - - 470 + - - 472 - [] 2dc77a41: - - - 478 + - - 480 - [] 3b86812d: - - - 470 + - - 472 - [] 3aff0cc7: - - - 365 + - - 367 - [] 2cbbe6fc: - - - 478 + - - 480 - [] 504d5904: - - - 470 + - - 472 - [] 42d74a2d: - - - 473 + - - 475 - [] 7ffd5f97: - - - 470 + - - 472 - [] 738ce3d8: - - - 470 + - - 472 - [] 7cf63377: - - - 470 + - - 472 - [] 10801d54: - - - 473 + - - 475 - [] 6881e71d: - - - 470 + - - 472 - [] 24b5e682: - - - 478 + - - 480 - [] 47cb72d8: - - - 478 + - - 480 - [] 5f087002: - - - 478 + - - 480 - [] 4656c8c1: - - - 470 + - - 472 - [] 64a88ffd: - - - 478 + - - 480 - [] 5d1302f4: - - - 470 + - - 472 - [] 560373af: - - - 478 + - - 480 - [] 506d104e: - - - 395 + - - 397 - [] bf94bc0: - - - 470 + - - 472 - [] 75f4bb6e: - - - 470 + - - 472 - [] 79ac14b4: - - - 439 + - - 441 - [] 363bf080: - - - 470 - - 478 + - - 472 + - 480 - [] 2cefa352: - - - 378 + - - 380 - [] 25bb7472: - - - 252 + - - 254 - [] 35c50704: - - - 478 + - - 480 - [] 255646e: - - - 478 + - - 480 - [] 64914e2b: - - - 337 + - - 339 - [] 58d504b4: - - - 470 + - - 472 - [] 34f47574: - - - 478 + - - 480 - [] 44080f3a: - - - 394 + - - 396 - [] 7cf770ef: - - - 478 + - - 480 - [] 22daea4c: - - - 478 + - - 480 - [] 3e6970b5: - - - 478 + - - 480 - [] 78c630d2: - - - 549 + - - 551 - [] 70a5e752: - - - 395 + - - 397 - [] 759ca0a0: - - - 478 + - - 480 - [] 5f7e116c: - - - 412 + - - 414 - [] 4a24baf1: - - - 484 + - - 486 - [] 4a3452c9: - [] - - 78 af7a0fd: - - - 281 + - - 283 - [] 18a557bb: - - - 473 + - - 475 - [] 7547fd1f: - - - 394 + - - 396 - [] 2ac3300a: - [] - - 172 388dacc5: - - - 478 + - - 480 - [] 1a787c04: - - - 458 + - - 460 - [] 1667a5ed: - - - 395 + - - 397 - [] 51bdda56: - [] - - 20 331cc1f1: - - - 395 + - - 397 - [] 1cd70b7f: - - - 549 + - - 551 - [] 359b116c: - - - 549 + - - 551 - [] 6c329fc9: - [] - - - 239 + - - 240 4627a07f: - [] - - - 239 + - - 240 74416f82: - [] - - - 239 + - - 240 5b41fa8: - [] - - - 239 + - - 240 4a0b70c0: - [] - - - 239 + - - 240 65c6c48e: - [] - - - 239 + - - 240 32b41c8e: - [] - - 153 @@ -8389,514 +8418,514 @@ af7a0fd: - [] - - 152 14aa59ec: - - - 337 + - - 339 - [] 1e99b528: - - - 337 + - - 339 - [] 1ca58c66: - - - 556 + - - 558 - [] ae73616: - [] - - - 239 + - - 240 6b006c2d: - - - 362 + - - 364 - [] 4a5c1f16: - [] - - - 533 + - - 534 d541d24: - [] - - 29 41ccd5ac: - - - 395 + - - 397 - [] cdf4ee0: - - - 470 + - - 472 - [] 49bb5d46: - [] - - - 552 + - - 553 6b0035d7: - - - 113 + - - 114 + - [] +473d9724: + - - 394 - [] 344192af: - - - 478 + - - 480 - [] 2faf473d: - - - 436 + - - 438 - [] 3d815a23: - - - 549 + - - 551 - [] 4fb9575e: - - - 549 + - - 551 - [] 3a95f0b2: - - - 549 + - - 551 - [] 55e7d1da: - - - 337 + - - 339 - [] 44b499f9: - - - 549 + - - 551 - [] 2497f5fc: - - - 549 + - - 551 - [] 5a65d2d9: - - - 470 + - - 472 - [] 30f0d939: - - - 478 + - - 480 - [] 786b91cc: - - - 337 + - - 339 - [] 6ccbec6e: - - - 470 + - - 472 - [] 61670d3b: - - - 470 + - - 472 - [] 276cda9c: - - - 478 + - - 480 - [] 5f4a9017: - - - 549 + - - 551 - [] 3d8531c8: - - - 549 + - - 551 - [] 6570aa8c: - - - 445 + - - 447 - [] 60f2ebb4: - - - 445 + - - 447 - [] 13b75ed1: - - - 445 + - - 447 - [] 6bd343f: - - - 478 + - - 480 - [] 2a4c125b: - - - 478 + - - 480 - [] 6c0a871e: - - - 478 + - - 480 - [] 42a57ca9: - - - 478 + - - 480 - [] 23a50fc4: - - - 478 + - - 480 - [] 3090d17c: - - - 549 + - - 551 - [] 1d6c76e5: - - - 549 + - - 551 - [] 1c7063fd: - - - 478 + - - 480 - [] f873517: - - - 549 + - - 551 - [] 1754bd61: - - - 478 + - - 480 - [] 140a096e: - - - 478 + - - 480 - [] '37e85488': - - - 478 + - - 480 - [] 1791b69f: - - - 478 + - - 480 - [] 2db5e315: - - - 549 + - - 551 - [] 6a3769f7: - - - 478 + - - 480 - [] 13b5c5ea: - - - 549 + - - 551 - [] 36a4a4d4: - - - 549 + - - 551 - [] 3cd402f8: - - - 473 + - - 475 - [] 3408c110: - - - 337 + - - 339 - [] 659a792f: - [] - - 9 62ab92bb: - - - 478 + - - 480 - [] 354785c5: - - - 549 + - - 551 - [] '729370e8': - - - 549 + - - 551 - [] 749fdd7f: - - - 549 + - - 551 - [] 24e2339c: - - - 478 + - - 480 - [] 64b77653: - - - 478 + - - 480 - [] 1d1c912e: - - - 478 + - - 480 - [] 1fb162e0: - - - 478 + - - 480 - [] 5a49e340: - - - 478 + - - 480 - [] 3d7892df: - - - 549 + - - 551 - [] 32469d37: - - - 470 + - - 472 - [] b51a391: - - - 285 + - - 287 - [] 6b70819e: - - - 556 + - - 558 - [] 1eeb931f: - - - 479 - - [] -473d9724: - - - 392 + - - 481 - [] 4a34893b: - - - 549 + - - 551 - [] 61341f8d: - - - 478 + - - 480 - [] 431aabb5: - - - 478 + - - 480 - [] 6509df06: - - - 549 + - - 551 - [] 28c1f7ca: - - - 549 + - - 551 - [] 2dad181e: - - - 549 + - - 551 - [] 48c918c5: - - - 549 + - - 551 - [] 99b56c9: - - - 337 + - - 339 - [] 624169d1: - - - 549 + - - 551 - [] 4f3b4a5c: - - - 337 + - - 339 - [] 5e6a182c: - - - 549 + - - 551 - [] 5b2ef68a: - - - 478 + - - 480 - [] 394ca6ea: - - - 422 + - - 424 - [] 70db8139: - - - 478 + - - 480 - [] 21ff0453: - - - 478 + - - 480 - [] 521cbcd0: - - - 478 + - - 480 - [] 78a1be2e: - - - 478 + - - 480 - [] 20598c4e: - - - 378 + - - 380 - [] 7f4ef52d: - - - 378 + - - 380 - [] 5ae87e18: - - - 378 + - - 380 - [] 4c11708f: - - - 478 + - - 480 - [] 14fb7ca2: - - - 478 + - - 480 - [] 523f48ad: - - - 478 + - - 480 - [] 27af26e6: - - - 478 + - - 480 - [] 4c23a712: - - - 378 + - - 380 - [] d6bd243: - - - 422 + - - 424 - [] 69e92a95: - - - 422 + - - 424 - [] 3bace0ce: - - - 378 + - - 380 - [] 1991b89b: - - - 470 + - - 472 - [] 5c76679: - - - 478 + - - 480 - [] 4b3f0343: - - - 378 + - - 380 - [] 1b2ac236: - - - 549 + - - 551 - [] 23d81d7c: - - - 549 + - - 551 - [] 163cee5d: - - - 478 + - - 480 - [] 1ca23b2b: - - - 549 + - - 551 - [] 5a7e7448: - - - 470 + - - 472 - [] 2c5074eb: - - - 478 + - - 480 - [] 4eeab553: - - - 337 + - - 339 - [] 2a4933c2: - - - 470 + - - 472 - [] 659d8f3c: - - - 549 + - - 551 - [] 389324de: - - - 549 + - - 551 - [] ab26eae: - - - 337 + - - 339 - [] 2c535327: - - - 478 + - - 480 - [] 46f48822: - - - 478 + - - 480 - [] 11fe209b: - - - 549 + - - 551 - [] 29c5ebad: - - - 478 + - - 480 - [] 4a75a151: - - - 337 + - - 339 - [] 4138b717: - [] - - 81 5fc702e6: - - - 407 + - - 409 - [] 845c027: - - - 470 + - - 472 - [] 730cc682: - - - 478 + - - 480 - [] 5dd48f27: - - - 470 + - - 472 - [] d7bcf8d: - - - 478 + - - 480 - [] 1dcee2c9: - - - 549 + - - 551 - [] 4a8482cd: - - - 478 + - - 480 - [] 7aa4bfd0: - - - 549 + - - 551 - [] 792aa06d: - - - 549 + - - 551 - [] 2bc53284: - - - 478 + - - 480 - [] 26af3611: - - - 478 + - - 480 - [] 457f68e6: - - - 478 + - - 480 - [] 275ae267: - - - 478 + - - 480 - [] d914372: - - - 378 + - - 380 - [] 36b624d1: - - - 478 + - - 480 - [] 470a6027: - - - 478 + - - 480 - [] 345d75ee: - - - 470 + - - 472 - [] ef6fc3d: - - - 478 + - - 480 - [] 6ab27916: - - - 470 + - - 472 - [] 5c6cb178: - - - 478 + - - 480 - [] 6cb779c3: - - - 478 + - - 480 - [] 1d7b49e2: - - - 478 + - - 480 - [] 3ec58023: - - - 478 + - - 480 - [] 26da5519: - - - 478 + - - 480 - [] 7fc3e877: - - - 478 + - - 480 - [] '77110e01': - - - 549 + - - 551 - [] 39d0e567: - - - 478 + - - 480 - [] 5ba03bb5: - - - 470 + - - 472 - [] 27cb398a: - - - 470 + - - 472 - [] 3d91a702: - - - 470 + - - 472 - [] 4a1255ed: - - - 549 + - - 551 - [] 59f4c479: - - - 478 + - - 480 - [] 75f0e5df: - - - 403 + - - 405 - [] 7829fd55: - [] - - 20 70fa1108: - - - 478 + - - 480 - [] '78e41272': - - - 478 + - - 480 - [] 2f174afa: - - - 478 + - - 480 - [] 306114da: - - - 478 + - - 480 - [] 30f46f72: - - - 395 + - - 397 - [] 4c4e3ff5: - - - 470 + - - 472 - [] 40b960ea: - - - 470 + - - 472 - [] 2fb2707c: - - - 256 + - - 258 - [] 7d5c5237: - - - 478 + - - 480 - [] 737cae50: - - - 478 + - - 480 - [] 3974cad3: - - - 470 + - - 472 - [] 7716f4c3: - - - 470 + - - 472 - [] 2b3c47ba: - - - 470 + - - 472 - [] 228ee7c4: - - - 478 + - - 480 - [] f458f13: - [] - - 78 70de08d8: - - - 473 + - - 475 - [] b384817: - - - 436 + - - 438 - [] '77750e46': - - - 473 + - - 475 - [] 4169dad: - - - 436 + - - 438 - [] 41d2e3dc: - - - 478 + - - 480 - [] 79a29cd8: - [] - - 74 2f313a37: - - - 467 + - - 469 - [] 55cc1c21: - - - 378 + - - 380 - [] 3d7781ba: - [] @@ -8908,64 +8937,64 @@ b384817: - [] - - 32 32a38743: - - - 417 + - - 419 - [] 340c7831: - - - 549 + - - 551 - [] 34bb2fad: - - - 337 + - - 339 - [] 799c11a1: - - - 407 + - - 409 - [] 77070b15: - - - 478 + - - 480 - [] 2e327f6a: - - - 470 + - - 472 - [] 138ab454: - - - 549 + - - 551 - [] 2af7c7f6: - - - 549 + - - 551 - [] 22789fb1: - - - 549 + - - 551 - [] 7937ea02: - - - 549 + - - 551 - [] 5cfc32ce: - - - 470 + - - 472 - [] 51669cfb: - - - 549 + - - 551 - [] 6004d8c2: - - - 478 + - - 480 - [] 1c12b8d0: - - - 478 + - - 480 - [] 27eaee8d: - - - 478 + - - 480 - [] 6d5869b7: - - - 478 + - - 480 - [] 4ef43857: - - - 478 + - - 480 - [] 1078131e: - - - 478 + - - 480 - [] 1fec8ae: - - - 337 + - - 339 - [] 47f1212b: - - - 549 + - - 551 - [] 31252c3b: - [] @@ -8974,28 +9003,28 @@ b384817: - [] - - 74 47834d4a: - - - 478 + - - 480 - [] 30075a93: - - - 557 + - - 559 - [] '21e87592': - - - 469 + - - 471 - [] 3dc7413d: - - - 469 + - - 471 - [] 1c92c2c3: - - - 475 + - - 477 - [] fb24fe8: - - - 469 + - - 471 - [] 3f24970: - - - 470 + - - 472 - [] 1d3fd2c7: - - - 378 + - - 380 - [] '91430e5': - [] @@ -9004,185 +9033,185 @@ fb24fe8: - [] - - 181 4fc897f8: - - - 378 + - - 380 - [] 5b4bebce: - - - 378 + - - 380 - [] 2f13469c: - - - 378 + - - 380 - [] 4824dc8f: - - - 378 + - - 380 - [] 23ce944a: - - - 367 - - 378 + - - 369 + - 380 - [] 4824dc8c: - - - 378 + - - 380 - [] 1598bd6c: - - - 378 + - - 380 - [] 7d64f9f8: - - - 378 + - - 380 - [] 564cafe8: - - - 378 + - - 380 - [] 7a398b6e: - - - 181 + - - 182 - [] 7b162a82: - - - 181 + - - 182 - [] 7ff3b4f3: - - - 468 + - - 470 - [] 3dfcd853: - - - 378 + - - 380 - [] 7f7bc347: - - - 378 + - - 380 - [] 2243b712: - - - 378 + - - 380 - [] 690e3bc5: - - - 378 + - - 380 - [] 1049f04d: - - - 378 + - - 380 - [] 399ac44: - - - 378 + - - 380 - [] 3c77d65f: - - - 557 + - - 559 - [] 5287336b: - - - 468 + - - 470 - [] 2c18abae: - - - 468 + - - 470 - [] 7b18aae0: - - - 378 + - - 380 - [] 4733f984: - - - 378 + - - 380 - [] 46206cbf: - - - 367 + - - 369 - [] 20d967fc: - - - 367 + - - 369 - [] 79273ca7: - - - 367 + - - 369 - [] fd0d12b: - - - 367 + - - 369 - [] 730d01e9: - - - 77 + - - 78 - [] 650a88ba: - [] - [] 60e4515b: - - - 77 + - - 78 - [] 73ef3023: - - - 181 + - - 182 - [] 12c462b0: - - - 478 + - - 480 - [] 4d61fcde: - [] - - - 260 + - - 261 9014f4e: - - - 347 + - - 349 - [] 55f65322: - - - 478 + - - 480 - [] 4cd08990: - - - 392 + - - 394 - [] 5856ab2c: - - - 392 + - - 394 - [] 737a0747: - [] - - 37 4b5b998b: - - - 180 + - - 181 - [] 57a8ff3a: - - - 367 + - - 369 - [] 49e1f6c4: - - - 367 + - - 369 - [] 707610ba: - - - 367 + - - 369 - [] 541bd165: - - - 367 + - - 369 - [] 438e5fc: - - - 186 + - - 188 - [] 5d5be1e1: - - - 186 + - - 188 - [] 31e529dc: - - - 186 + - - 188 - [] 53d330e0: - - - 478 + - - 480 - [] 75d8fd9a: - - - 367 + - - 369 - [] 59af678a: - [] - [] 22b7153a: - - - 186 + - - 188 - [] 879dc5e: - - - 367 + - - 369 - [] 1d06b5c5: - - - 478 + - - 480 - [] 2ba87c88: - - - 181 + - - 182 - [] 4e61ea89: - - - 186 + - - 188 - [] 22281af7: - - - 367 + - - 369 - [] 3ed5477d: - - - 367 + - - 369 - [] 240794d9: - - - 367 + - - 369 - [] 464b064: - - - 367 + - - 369 - [] a7c97a1: - - - 367 + - - 369 - [] 52839cfe: - - - 392 + - - 394 - [] d95328c: - [] @@ -9194,226 +9223,262 @@ d95328c: - [] - [] 48c7e09b: - - - 367 + - - 369 - [] b75a855: - - - 367 + - - 369 - [] 232253fa: - - - 367 + - - 369 - [] 39d3bac8: - - - 181 + - - 182 - [] 505828ca: - - - 470 + - - 472 - [] 8da01fd: - - - 367 + - - 369 - [] 789fc754: - - - 186 + - - 188 - [] 42daa64d: - - - 367 + - - 369 - [] 5e4dd513: - - - 478 + - - 480 - [] 3576bb01: - - - 367 + - - 369 - [] 353e36ad: - - - 367 + - - 369 - [] 428aff22: - - - 478 + - - 480 - [] 7c2a8e28: - - - 549 + - - 551 - [] 2590ec1f: - - - 549 + - - 551 - [] 8c6d065: - - - 549 + - - 551 - [] 19d8e45c: - - - 549 + - - 551 - [] 49e104aa: - - - 549 + - - 551 - [] 1c1e15a: - - - 549 + - - 551 - [] 58924a79: - - - 478 + - - 480 - [] 6025a80: - - - 180 + - - 181 - [] 87b893a: - - - 468 + - - 470 - [] 7356da8d: - - - 468 + - - 470 - [] 3e2d7def: - - - 468 + - - 470 - [] 1e3d2940: - - - 478 + - - 480 - [] 3e756d8: - - - 478 + - - 480 - [] 4e59269e: - - - 478 + - - 480 - [] 7f60e7ed: - - - 478 + - - 480 - [] 7f60e7eb: - - - 478 + - - 480 - [] 7439de14: - - - 367 + - - 369 - [] 11ee7aae: - - - 478 + - - 480 - [] 7b098617: - - - 557 + - - 559 - [] 5a7693c3: - - - 478 + - - 480 - [] 4c5e4a52: - - - 469 + - - 471 - [] 25d66f59: - - - 469 + - - 471 - [] 7a104527: - - - 557 + - - 559 - [] 8a4fb05: - - - 378 + - - 380 - [] 4993aa2c: - - - 367 + - - 369 - [] 473c1dce: - - - 478 + - - 480 - [] f47daac: - - - 378 + - - 380 - [] 3fd83be1: - - - 378 + - - 380 - [] 61efeaf5: - - - 378 + - - 380 - [] 62f3cbef: - - - 367 + - - 369 - [] 78a81f1f: - - - 367 + - - 369 - [] 79ff4fa3: - [] - [] 2bb3de3f: - - - 557 + - - 559 - [] 25ca2ebd: - - - 476 + - - 478 - [] 26a569f5: - - - 476 + - - 478 - [] bed9b6b: - - - 476 + - - 478 - [] 1f2fc2f2: - - - 476 + - - 478 - [] 7aaa7434: - - - 476 + - - 478 - [] 349824af: - - - 476 + - - 478 - [] 707808f5: - - - 476 + - - 478 - [] 11ee7aac: - - - 478 + - - 480 - [] 44038a60: - - - 367 + - - 369 - [] 1da9b0ec: - - - 367 + - - 369 - [] 3c3c6bc7: - - - 181 + - - 182 - [] '191677e2': - [] - - - 553 + - - 554 677fad7b: - [] - - - 553 + - - 554 3598b2d4: - [] - - - 553 + - - 554 36f20a12: - [] - - - 553 -f1cf1f8: + - - 554 +f1cf1f8: + - [] + - - 554 +5d812aaa: + - [] + - - 554 +60e084c5: + - [] + - - 554 +5b0529a2: + - [] + - - 554 +28da3fff: + - [] + - - 554 +26a13a0a: + - [] + - - 554 +5f1f3db8: + - [] + - - 554 +1aba3bce: + - - 470 + - [] +20e77aa2: + - - 182 + - [] +6b92b8d4: + - - 369 + - [] +44f57b45: + - - 369 + - [] +37fedfbc: + - - 369 - [] - - - 553 -5d812aaa: +2c00615c: + - - 369 - [] - - - 553 -60e084c5: +2c006161: + - - 369 - [] - - - 553 -5b0529a2: +1338117e: + - - 369 - [] - - - 553 -28da3fff: +5505e5a: + - - 472 - [] - - - 553 -26a13a0a: +5b49c76f: + - - 557 - [] - - - 553 -5f1f3db8: +4f8eca16: + - - 559 - [] - - - 553 -1aba3bce: - - - 468 +430cfcc1: + - - 557 + - [] +72e6b970: + - - 181 - [] 17bed5e: - - - 351 + - - 353 - [] 2b9569d4: - - - 350 + - - 352 - [] 7c2acf99: - - - 378 + - - 380 - [] 34bd79a8: - - - 523 + - - 525 - [] 99c2795: - - - 378 + - - 380 - [] 7f1c7f3f: - - - 351 + - - 353 - [] 44d08d41: - [] @@ -9422,304 +9487,304 @@ f1cf1f8: - [] - [] 5d72ca65: - - - 367 + - - 369 - [] bdd23db: - - - 378 + - - 380 - [] 246bcf80: - - - 378 + - - 380 - [] 4382ba35: - - - 378 + - - 380 - [] 711292ac: - - - 186 + - - 188 - [] ad267e9: - - - 378 + - - 380 - [] 3cc296ec: - - - 378 + - - 380 - [] 5136b404: - - - 378 + - - 380 - [] 7a065f2f: - - - 403 + - - 405 - [] 1b61b462: - - - 478 + - - 480 - [] 473e5fb5: - - - 378 + - - 380 - [] 7a423f52: - - - 350 + - - 352 - [] 14100ae3: - - - 350 + - - 352 - [] 3ce79839: - - - 378 + - - 380 - [] 597d2a86: - - - 473 + - - 475 - [] 17a8744c: - - - 557 + - - 559 - [] 4b7c69ed: - - - 478 + - - 480 - [] 420a2c2: - - - 468 + - - 470 - [] 12c411a2: - - - 557 + - - 559 - [] 1dcf4b28: - - - 378 + - - 380 - [] 64ea67cb: - - - 350 + - - 352 - [] 2358e8df: - - - 378 + - - 380 - [] 51f1f09: - - - 478 + - - 480 - [] 4c115529: - - - 378 + - - 380 - [] 7b327cda: - - - 378 + - - 380 - [] 526dc96b: - - - 378 + - - 380 - [] 2bb91813: - - - 478 + - - 480 - [] 4987a87c: - - - 478 + - - 480 - [] 17a29fb5: - - - 478 + - - 480 - [] 5776c771: - - - 478 + - - 480 - [] 203cdfb3: - - - 470 + - - 472 - [] 3e7375dd: - - - 566 + - - 568 - [] 1b20a242: - - - 478 + - - 480 - [] 7415ea0a: - - - 557 + - - 559 - [] 6b9301ef: - - - 378 + - - 380 - [] '6e257023': - - - 351 + - - 353 - [] 2c9d7698: - - - 351 + - - 353 - [] 4c3e8e13: - - - 351 + - - 353 - [] 404ec948: - - - 378 + - - 380 - [] 6209b112: - - - 378 + - - 380 - [] 1db2a339: - - - 378 + - - 380 - [] 37b225bf: - - - 378 + - - 380 - [] 209d4ba4: - - - 378 + - - 380 - [] 4993a22e: - - - 367 + - - 369 - [] 4993a5ef: - - - 367 + - - 369 - [] 6e053dd9: - - - 378 + - - 380 - [] 148420b7: - - - 378 + - - 380 - [] 76da451b: - - - 378 + - - 380 - [] 6f18082d: - - - 378 + - - 380 - [] de5f774: - - - 378 + - - 380 - [] 585d6a55: - - - 378 + - - 380 - [] 4b3b4037: - - - 378 + - - 380 - [] 220c354: - - - 378 + - - 380 - [] 191b181: - - - 378 + - - 380 - [] 6febc98e: - - - 378 + - - 380 - [] 598e9a7e: - - - 378 + - - 380 - [] 22029a6d: - - - 378 + - - 380 - [] 3f9df1b9: - - - 378 + - - 380 - [] 64cbd38f: - - - 533 + - - 535 - [] 60c59e6b: - - - 378 + - - 380 - [] 56678f0: - - - 533 + - - 535 - [] 690b032f: - - - 470 + - - 472 - [] 181144b3: - - - 470 + - - 472 - [] cc27531: - - - 478 + - - 480 - [] 5b22e479: - - - 395 + - - 397 - [] '125e2062': - - - 478 + - - 480 - [] 6f817bd8: - - - 470 + - - 472 - [] 2a6bd938: - - - 478 + - - 480 - [] 394a75ac: - - - 475 + - - 477 - [] 4a4d2461: - - - 478 + - - 480 - [] 2baff5cf: - - - 478 + - - 480 - [] 7baabf37: - - - 186 + - - 188 - [] 7af7c576: - - - 367 + - - 369 - [] 2eb10690: - - - 367 + - - 369 - [] 188f0c48: - - - 181 + - - 182 - [] '349398e4': - - - 367 + - - 369 - [] 40210a29: - - - 367 + - - 369 - [] 363ea259: - - - 181 + - - 182 - [] 3ad9727c: - - - 181 + - - 182 - [] 52f4916: - - - 367 + - - 369 - [] 2074f618: - - - 378 + - - 380 - [] 742d3ac5: - - - 367 + - - 369 - [] 2dc6413c: - - - 533 + - - 535 - [] 19dc9e6e: - - - 186 + - - 188 - [] 523db43a: - - - 186 + - - 188 - [] 885431e: - - - 186 + - - 188 - [] 70668ea9: - - - 186 + - - 188 - [] 72b56242: - - - 367 + - - 369 - [] 512b716a: - - - 367 + - - 369 - [] 45d408c0: - - - 367 + - - 369 - [] 4ff1e9f2: - - - 367 + - - 369 - [] 6e9e4f69: - - - 478 + - - 480 - [] 677d219b: - - - 478 + - - 480 - [] 6e9e4f52: - - - 478 + - - 480 - [] 1b293647: - - - 367 + - - 369 - [] 7f9b8a91: - - - 470 + - - 472 - [] 4e5cc4f4: - [] - [] 60be36e: - - - 557 + - - 559 - [] 51d7663c: - - - 378 + - - 380 - [] 82e0c07: - - - 478 + - - 480 - [] 60db7880: - [] @@ -9728,62 +9793,62 @@ e0bc6d3: - [] - [] 1b2da6ac: - - - 449 + - - 451 - [] 3ea01e09: - [] - [] 35eca178: - - - 549 + - - 551 - [] 9de91c2: - - - 338 + - - 340 - [] 7c2ec858: - - - 328 + - - 330 - [] 70e536df: - - - 557 + - - 559 - [] 7f79bddd: - - - 469 + - - 471 - [] 347c9de9: - - - 470 + - - 472 - [] 54e3dd74: - - - 407 + - - 409 - [] 3f1d1e28: - - - 407 + - - 409 - [] 293bf45f: - - - 478 + - - 480 - [] 780356f4: - - - 473 + - - 475 - [] 51cbe47d: - - - 478 + - - 480 - [] 55f30ae: - - - 478 + - - 480 - [] 4b77dde1: - - - 417 + - - 419 - [] 1c8ce5e5: - - - 422 + - - 424 - [] 429bdf47: - - - 91 + - - 92 - [] 371ab823: - - - 258 + - - 260 - [] 98ec041: - - - 91 + - - 92 - [] 29571d94: - - - 226 + - - 228 - [] diff --git a/regexes/client/browsers.yml b/regexes/client/browsers.yml index 77cd1ada..aeedaec1 100644 --- a/regexes/client/browsers.yml +++ b/regexes/client/browsers.yml @@ -5,6 +5,13 @@ # @license http://www.gnu.org/licenses/lgpl.html LGPL v3 or later ############### +# Singlebox (https://singlebox.app/en/) +- regex: 'Singlebox/(\d+\.[\.\d]+)' + name: 'Singlebox' + version: '$1' + engine: + default: 'Blink' + # RCA Tor Explorer - regex: 'RCATorExplorer' name: 'RCA Tor Explorer' @@ -35,39 +42,39 @@ default: 'Blink' # TUSK (https://tuskbrowser.com/) -- regex: 'TUSK/(\d+[\.\d]+)' +- regex: 'TUSK/(\d+[.\d]+)' name: 'TUSK' version: '$1' # Dezor (https://www.dezor.net/) -- regex: 'Dezor/(\d+[\.\d]+)' +- regex: 'Dezor/(\d+[.\d]+)' name: 'Dezor' version: '$1' # OJR Browser (https://play.google.com/store/apps/details?id=com.ojr.browser.anti.blokir) -- regex: 'OJR Browser/([\d\.]+)' +- regex: 'OJR Browser/([\d.]+)' name: 'OJR Browser' version: '$1' # AppTec Secure Browser (https://www.apptec360.com/secure-browser/) -- regex: 'SecureBrowser/([\d\.]+)' +- regex: 'SecureBrowser/([\d.]+)' name: 'AppTec Secure Browser' version: '$1' # Veera (https://www.veera.com/) -- regex: 'Veera/([\d\.]+)' +- regex: 'Veera/([\d.]+)' name: 'Veera' version: '$1' # Ninesky (https://web.archive.org/web/20120615040938/http://www.ninesky.com/index_en.html) -- regex: 'Ninesky(?:-android-mobile)?/([\d\.]+)' +- regex: 'Ninesky(?:-android-mobile)?/([\d.]+)' name: 'Ninesky' version: '$1' engine: default: 'WebKit' # Perk (https://web.archive.org/web/20130724161928/http://www.perk.com/) -- regex: 'Perk/([\d\.]+)' +- regex: 'Perk/([\d.]+)' name: 'Perk' version: '$1' @@ -77,94 +84,94 @@ version: '' # QtWeb (https://www.qtweb.net/) -- regex: 'QtWeb Internet Browser(?:/(\d+[\.\d]+))?' +- regex: 'QtWeb Internet Browser(?:/(\d+[.\d]+))?' name: 'QtWeb' version: '$1' engine: default: 'WebKit' # UPhone Browser -- regex: 'UPhoneWebBrowser(\d+[\.\d]+)' +- regex: 'UPhoneWebBrowser(\d+[.\d]+)' name: 'UPhone Browser' version: '$1' # Motorola Internet Browser -- regex: 'MIB/(\d+[\.\d]+)' +- regex: 'MIB/(\d+[.\d]+)' name: 'Motorola Internet Browser' version: '$1' # iNet Browser -- regex: 'iNet Browser(?: (\d+[\.\d]+))?' +- regex: 'iNet Browser(?: (\d+[.\d]+))?' name: 'iNet Browser' version: '$1' # Prism (https://wiki.mozilla.org/Prism/FAQ) -- regex: 'Prism/([\d\.]+)' +- regex: 'Prism/([\d.]+)' name: 'Prism' version: '$1' engine: default: 'Gecko' # Awesomium (https://web.archive.org/web/20150205230848/http://awesomium.com/) -- regex: 'Awesomium/([\d\.]+)' +- regex: 'Awesomium/([\d.]+)' name: 'Awesomium' version: '$1' engine: default: 'WebKit' # Roccat (https://runecats.com/roccat-browser-for-mac/) -- regex: 'Roccat(?:/(\d+[\.\d]+))?' +- regex: 'Roccat(?:/(\d+[.\d]+))?' name: 'Roccat' version: '$1' # Swiftweasel (https://swiftweasel.tuxfamily.org/) -- regex: 'Swiftweasel(?:/(\d+[\.\d]+))?' +- regex: 'Swiftweasel(?:/(\d+[.\d]+))?' name: 'Swiftweasel' version: '$1' engine: default: 'Gecko' # Wukong Browser (https://www.wkbrowser.com/) -- regex: 'wkbrowser (\d+[\.\d]+)' +- regex: 'wkbrowser (\d+[.\d]+)' name: 'Wukong Browser' version: '$1' # KUN (https://api.dcmys.kr/etc/historical/kun_3.0.1_cp_개발자_가이드_v1.1.pdf) -- regex: 'KUN/(\d+[\.\d]+)' +- regex: 'KUN/(\d+[.\d]+)' name: 'KUN' version: '$1' # Naenara Browser (https://en.wikipedia.org/wiki/Naenara_(browser)) -- regex: 'NaenaraBrowser(?:/(\d+[\.\d]+))?' +- regex: 'NaenaraBrowser(?:/(\d+[.\d]+))?' name: 'Naenara Browser' version: '$1' engine: default: 'Gecko' # NOOK Browser -- regex: 'nook browser(?:/(\d+[\.\d]+))?' +- regex: 'nook browser(?:/(\d+[.\d]+))?' name: 'NOOK Browser' version: '$1' # Arachne (https://www.glennmcc.org/) -- regex: 'xChaos_Arachne/5\.(\d+\.[\.\d]+)' +- regex: 'xChaos_Arachne/5\.(\d+\.[.\d]+)' name: 'Arachne' version: '$1' # Weltweitimnetz Browser (https://sourceforge.net/projects/weltweitimnetz/ | https://web.archive.org/web/20111108155328/http://www.weltweitimnetz.de/browser_en.htm) -- regex: 'WeltweitimnetzBrowser/(\d+\.[\.\d]+)' +- regex: 'WeltweitimnetzBrowser/(\d+\.[.\d]+)' name: 'Weltweitimnetz Browser' version: '$1' # Ladybird (https://www.ladybird.dev/) -- regex: '(?:Ladybird|LibWeb\+LibJS/.*Browser)/(\d+\.[\.\d]+)' +- regex: '(?:Ladybird|LibWeb\+LibJS/.*Browser)/(\d+\.[.\d]+)' name: 'Ladybird' version: '$1' engine: default: 'LibWeb' # Kitt (https://github.com/kitt-browser | https://web.archive.org/web/20141014085455/http://www.kitt.com/) -- regex: 'Kitt/(\d+\.[\.\d]+)' +- regex: 'Kitt/(\d+\.[.\d]+)' name: 'Kitt' version: '$1' @@ -174,17 +181,17 @@ version: '' # SkyLeap (https://sky-leap.jp/) -- regex: 'SkyLeap/(\d+\.[\.\d]+)' +- regex: 'SkyLeap/(\d+\.[.\d]+)' name: 'SkyLeap' version: '$1' # MaxBrowser -- regex: 'MaxBrowser/(\d+\.[\.\d]+)' +- regex: 'MaxBrowser/(\d+\.[.\d]+)' name: 'MaxBrowser' version: '$1' # YouBrowser -- regex: 'YouBrowser/(\d+\.[\.\d]+)' +- regex: 'YouBrowser/(\d+\.[.\d]+)' name: 'YouBrowser' version: '$1' @@ -194,7 +201,7 @@ version: '' # EudoraWeb (https://palmdb.net/app/eudora-eis) -- regex: 'EudoraWeb (\d+[\.\d]+)' +- regex: 'EudoraWeb (\d+[.\d]+)' name: 'EudoraWeb' version: '$1' @@ -204,7 +211,7 @@ version: '' # w3m (https://w3m.sourceforge.net/) -- regex: '^w3m/(\d+[\.\d]+)' +- regex: '^w3m/(\d+[.\d]+)' name: 'w3m' version: '$1' engine: @@ -218,31 +225,31 @@ default: 'Clecko' # Webian Shell (https://www.webian.org/) -- regex: 'WebianShell/(\d+[\.\d]+)' +- regex: 'WebianShell/(\d+[.\d]+)' name: 'Webian Shell' version: '$1' engine: default: 'Gecko' # Vonkeror -- regex: 'Vonkeror(?:/(\d+[\.\d]+))?' +- regex: 'Vonkeror(?:/(\d+[.\d]+))?' name: 'Vonkeror' version: '$1' engine: default: 'Gecko' # Wyzo (https://web.archive.org/web/20140225213818/http://www.wyzo.com/) -- regex: 'Wyzo/(\d+\.[\.\d]+)' +- regex: 'Wyzo/(\d+\.[.\d]+)' name: 'Wyzo' version: '$1' # Liri Browser (https://liri.io/apps/browser/ | https://github.com/lirios/browser) -- regex: 'Liri/(\d+\.[\.\d]+)' +- regex: 'Liri/(\d+\.[.\d]+)' name: 'Liri Browser' version: '$1' # Columbus Browser (https://web.archive.org/web/20140825160020/http://www.columbus-browser.com/screenshot.html) -- regex: 'Columbus/(\d+\.[\.\d]+)' +- regex: 'Columbus/(\d+\.[.\d]+)' name: 'Columbus Browser' version: '$1' @@ -254,32 +261,32 @@ default: 'Trident' # K-Ninja (https://web.archive.org/web/20070305170639/https://www.headbanging-sasquatches.com/download.html) -- regex: 'K-Ninja/(\d+\.[\.\d]+)' +- regex: 'K-Ninja/(\d+\.[.\d]+)' name: 'K-Ninja' version: '$1' # PirateBrowser (https://web.archive.org/web/20150331033357/http://piratebrowser.com/) -- regex: '^PB(\d+\.[\.\d]+)' +- regex: '^PB(\d+\.[.\d]+)' name: 'PirateBrowser' version: '$1' # East Browser (https://web.archive.org/web/20180322162708/http://www.eastbrowser.com/) -- regex: 'EastBrowser/(\d+\.[\.\d]+)' +- regex: 'EastBrowser/(\d+\.[.\d]+)' name: 'East Browser' version: '$1' # Qiyu (https://web.archive.org/web/20200904043500/https://qiyu.ruanmei.com/) -- regex: 'Qiyu/(\d+\.[\.\d]+)' +- regex: 'Qiyu/(\d+\.[.\d]+)' name: 'Qiyu' version: '$1' # WebDiscover (https://www.getwebdiscover.com/) -- regex: 'WebDiscover/(\d+\.[\.\d]+)' +- regex: 'WebDiscover/(\d+\.[.\d]+)' name: 'WebDiscover' version: '$1' # Legan Browser (https://www.legan.com/) -- regex: 'LeganBrowser/(\d+\.[\.\d]+)' +- regex: 'LeganBrowser/(\d+\.[.\d]+)' name: 'Legan Browser' version: '$1' @@ -291,17 +298,17 @@ default: 'Trident' # Aplix (https://www.aplix.co.jp/) -- regex: 'Aplix_.*_browser/(\d+\.[\.\d]+)' +- regex: 'Aplix_.*_browser/(\d+\.[.\d]+)' name: 'Aplix' version: '$1' # Mogok Browser (https://apps.apple.com/gb/app/mogok-browser-2/id1439011302) -- regex: 'Mogok/(\d+\.[\.\d]+)' +- regex: 'Mogok/(\d+\.[.\d]+)' name: 'Mogok Browser' version: '$1' # TrueLocation Browser (https://apps.apple.com/us/app/truelocation-browser/id1463071203) -- regex: '(?:IOS)?TrueLocationBrowser/(\d+\.[\.\d]+)' +- regex: '(?:IOS)?TrueLocationBrowser/(\d+\.[.\d]+)' name: 'TrueLocation Browser' version: '$1' @@ -311,32 +318,32 @@ version: '' # OnBrowser Lite (on.browser) -- regex: '.*OnBrowserLite(\d+\.[\.\d]+)' +- regex: '.*OnBrowserLite(\d+\.[.\d]+)' name: 'OnBrowser Lite' version: '$1' # Bluefy (https://apps.apple.com/us/app/bluefy-web-ble-browser/id1492822055) -- regex: 'Bluefy/(\d+\.[\.\d]+)' +- regex: 'Bluefy/(\d+\.[.\d]+)' name: 'Bluefy' version: '$1' # Vision Mobile Browser (https://en.wikipedia.org/wiki/Vision_Mobile_Browser) -- regex: '(?:Novarra-Vision|Vision-Browser)(?:/(\d+[\.\d]+))?' +- regex: '(?:Novarra-Vision|Vision-Browser)(?:/(\d+[.\d]+))?' name: 'Vision Mobile Browser' version: '$1' # Surfy Browser (https://outcoder.com/apps/surfy/) -- regex: 'SurfyBrowser/(\d+[\.\d]+)' +- regex: 'SurfyBrowser/(\d+[.\d]+)' name: 'Surfy Browser' version: '$1' # 18+ Privacy Browser (https://play.google.com/store/apps/details?id=org.plus18.android) -- regex: '18\+/([\d\.]+)' +- regex: '18\+/([\d.]+)' name: '18+ Privacy Browser' version: '$1' # GoKu (https://sites.google.com/view/goku-browser) -- regex: 'GoKu-iOS/(\d+[\.\d]+)' +- regex: 'GoKu-iOS/(\d+[.\d]+)' name: 'GoKu' version: '$1' engine: @@ -348,17 +355,17 @@ version: '' # Bang (com.tencent.bang) -- regex: 'Bang/(\d+[\.\d]+)' +- regex: 'Bang/(\d+[.\d]+)' name: 'Bang' version: '$1' # Intune Managed Browser (https://learn.microsoft.com/en-us/mem/intune/apps/manage-microsoft-edge) -- regex: 'ManagedBrowser(?:/(\d+[\.\d]+))?' +- regex: 'ManagedBrowser(?:/(\d+[.\d]+))?' name: 'Intune Managed Browser' version: '$1' # Lotus (https://play.google.com/store/apps/details?id=dev.sect.lotus.browser.videoapp) -- regex: 'Lotus/(\d+[\.\d]+)' +- regex: 'Lotus/(\d+[.\d]+)' name: 'Lotus' version: '$1' @@ -368,39 +375,39 @@ version: '' # Ninetails (https://github.com/MystPi/ninetails) -- regex: 'Ninetails(?:/(\d+[\.\d]+))?' +- regex: 'Ninetails(?:/(\d+[.\d]+))?' name: 'Ninetails' version: '$1' # Wexond (https://github.com/wexond/browser-base) -- regex: 'Wexond(?:/(\d+[\.\d]+))?' +- regex: 'Wexond(?:/(\d+[.\d]+))?' name: 'Wexond' version: '$1' # Catalyst (https://github.com/CatalystDevOrg/Catalyst) -- regex: 'catalyst(?:/(\d+[\.\d]+))?' +- regex: 'catalyst(?:/(\d+[.\d]+))?' name: 'Catalyst' version: '$1' # Impervious Browser (https://www.impervious.ai/) -- regex: 'Impervious(?:/(\d+[\.\d]+))?' +- regex: 'Impervious(?:/(\d+[.\d]+))?' name: 'Impervious Browser' version: '$1' engine: default: 'Gecko' # Rakuten Browser (https://play.google.com/store/apps/details?id=jp.co.rakuten.mobile.browser) -- regex: 'RakutenBrowser(?:/(\d+[\.\d]+))?' +- regex: 'RakutenBrowser(?:/(\d+[.\d]+))?' name: 'Rakuten Browser' version: '$1' # Rakuten Web Search (https://play.google.com/store/apps/details?id=jp.co.rakuten.toolbar.raws) -- regex: 'RakutenWebSearch(?:/(\d+[\.\d]+))?' +- regex: 'RakutenWebSearch(?:/(\d+[.\d]+))?' name: 'Rakuten Web Search' version: '$1' # VibeMate (https://www.vibemate.com/) -- regex: 'VibeMate(?:/(\d+[\.\d]+))?' +- regex: 'VibeMate(?:/(\d+[.\d]+))?' name: 'VibeMate' version: '$1' @@ -410,29 +417,29 @@ version: '' # tararia (https://apps.apple.com/us/app/tararia-multi-tab-webbrowser/id1599928209) -- regex: 'tararia/(\d+\.[\.\d]+)' +- regex: 'tararia/(\d+\.[.\d]+)' name: 'tararia' version: '$1' # SberBrowser -- regex: 'SberBrowser/(\d+\.[\.\d]+)' +- regex: 'SberBrowser/(\d+\.[.\d]+)' name: 'SberBrowser' version: '$1' engine: default: 'Blink' # Raspbian Chromium (https://www.raspbian.org/) -- regex: 'Raspbian Chromium/(?:(\d+[\.\d]+))?' +- regex: 'Raspbian Chromium/(?:(\d+[.\d]+))?' name: 'Raspbian Chromium' version: '$1' # Quick Search TV (https://play.google.com/store/apps/details?id=com.aospstudio.tvsearch) -- regex: 'Quick Search TV(?:/(?:Wild Moon Edition )?(\d+[\.\d]+))?' +- regex: 'Quick Search TV(?:/(?:Wild Moon Edition )?(\d+[.\d]+))?' name: 'Quick Search TV' version: '$1' # Skye (https://innatical.com/) -- regex: 'Skye/(\d+\.[\.\d]+)' +- regex: 'Skye/(\d+\.[.\d]+)' name: 'Skye' version: '$1' engine: @@ -479,66 +486,66 @@ version: '' # Nuviu (https://www.nuviu-browser.com/) -- regex: 'Nuviu/(?:(\d+[\.\d]+))?' +- regex: 'Nuviu/(?:(\d+[.\d]+))?' name: 'Nuviu' version: '$1' # DoCoMo (https://play.google.com/store/apps/details?id=com.airfind.browser) -- regex: 'DoCoMo/(?:(\d+[\.\d]+))?' +- regex: 'DoCoMo/(?:(\d+[.\d]+))?' name: 'DoCoMo' version: '$1' # Airfind Secure Browser (https://play.google.com/store/apps/details?id=com.airfind.browser) -- regex: 'com\.airfind\.browser/(?:(\d+[\.\d]+))?' +- regex: 'com\.airfind\.browser/(?:(\d+[.\d]+))?' name: 'Airfind Secure Browser' version: '$1' engine: default: 'Blink' -# Arc (https://arc.net/) -- regex: 'ArcMobile2(?:/(\d+\.[\.\d]+);)?' - name: 'Arc' +# Arc Search (https://arc.net/ | https://arc.net/search) +- regex: 'ArcMobile2(?:/(\d+\.[.\d]+);)?' + name: 'Arc Search' version: '$1' engine: default: 'WebKit' # Nuanti Meta (http://meta.nuanti.com/) -- regex: 'Nuanti(?:Meta)?/(\d+\.[\.\d]+)' +- regex: 'Nuanti(?:Meta)?/(\d+\.[.\d]+)' name: 'Nuanti Meta' version: '$1' engine: default: 'WebKit' # Roku Browser (https://www.roku.com/) -- regex: 'RokuBrowser/(\d+\.[\.\d]+)' +- regex: 'RokuBrowser/(\d+\.[.\d]+)' name: 'Roku Browser' version: '$1' engine: default: 'Blink' # PICO Browser (https://www.picoxr.com/) -- regex: 'PicoBrowser/(\d+\.[\.\d]+)' +- regex: 'PicoBrowser/(\d+\.[.\d]+)' name: 'PICO Browser' version: '$1' engine: default: 'Blink' # ALVA (https://oyealva.com/) -- regex: 'Alva/(\d+\.[\.\d]+)' +- regex: 'Alva/(\d+\.[.\d]+)' name: 'ALVA' version: '$1' engine: default: 'Blink' # Norton Private Browser (https://norton.com/products/norton-private-browser) -- regex: 'Norton/(\d+\.[\.\d]+)' +- regex: 'Norton/(\d+\.[.\d]+)' name: 'Norton Private Browser' version: '$1' engine: default: 'Blink' # Odd Browser (https://play.google.com/store/apps/details?id=com.corproxy.browser) -- regex: 'Odd/(\d+\.[\.\d]+)' +- regex: 'Odd/(\d+\.[.\d]+)' name: 'Odd Browser' version: '$1' engine: @@ -552,7 +559,7 @@ default: 'Blink' # YAGI (https://play.google.com/store/apps/details?id=in.nismah.yagi) -- regex: 'YAGI/(\d+\.[\.\d]+)' +- regex: 'YAGI/(\d+\.[.\d]+)' name: 'YAGI' version: '$1' engine: @@ -564,12 +571,12 @@ version: '' # Keepsafe Browser (https://www.getkeepsafe.com/products/browser/) -- regex: 'Keepsafe Browser(?:/(\d+[\.\d]+))?' +- regex: 'Keepsafe Browser(?:/(\d+[.\d]+))?' name: 'Keepsafe Browser' version: '$1' # Vast Browser (https://play.google.com/store/apps/details?id=com.vast.vpn.proxy.unblock) -- regex: '(.*)Vast Browser/(\d+\.[\.\d]+)' +- regex: '(.*)Vast Browser/(\d+\.[.\d]+)' name: 'Vast Browser' version: '$2' engine: @@ -583,21 +590,21 @@ default: 'Blink' # U Browser (https://play.google.com/store/apps/details?id=com.u_browser) -- regex: '(.*)U Browser(\d+\.[\.\d]+)' +- regex: '(.*)U Browser(\d+\.[.\d]+)' name: 'U Browser' version: '$2' engine: default: 'Blink' # Tesla Browser (https://www.teslabrowser.com/) -- regex: 'Chrome/(\d+\.[\.\d]+).+TeslaBrowser/' +- regex: 'Chrome/(\d+\.[.\d]+).+TeslaBrowser/' name: 'Tesla Browser' version: '$1' engine: default: 'Blink' # Viasat Browser (https://browser.viasat.com/) -- regex: 'Chrome/(\d+\.[\.\d]+).+Sparrow' +- regex: 'Chrome/(\d+\.[.\d]+).+Sparrow' name: 'Viasat Browser' version: '$1' engine: @@ -611,7 +618,7 @@ default: 'WebKit' # Lilo (https://play.google.com/store/apps/details?id=org.lilo.mobile.android2020) -- regex: 'Lilo/(\d+\.[\.\d]+)' +- regex: 'Lilo/(\d+\.[.\d]+)' name: 'Lilo' version: '$1' engine: @@ -623,21 +630,21 @@ default: 'WebKit' # Lexi Browser (https://play.google.com/store/apps/details?id=com.lexi.browser) -- regex: 'lexi/(\d+[\.\d]+)' +- regex: 'lexi/(\d+[.\d]+)' name: 'Lexi Browser' version: '$1' engine: default: 'Blink' # Floorp (https://floorp.ablaze.one/) -- regex: 'Floorp/(\d+[\.\d]+)' +- regex: 'Floorp/(\d+[.\d]+)' name: 'Floorp' version: '$1' engine: default: 'Gecko' # Surf Browser (https://play.google.com/store/apps/details?id=com.gl9.cloudBrowser) -- regex: 'SurfBrowser/(\d+[\.\d]+)' +- regex: 'SurfBrowser/(\d+[.\d]+)' name: 'Surf Browser' version: '$1' engine: @@ -663,207 +670,207 @@ default: 'WebKit' # AdBlock Browser (https://play.google.com/store/apps/details?id=org.adblockplus.browser) -- regex: 'ABB/(\d+[\.\d]+)' +- regex: 'ABB/(\d+[.\d]+)' name: 'AdBlock Browser' version: '$1' engine: default: 'Blink' # BrowseHere -- regex: '\d+/tclwebkit(?:\d+[\.\d]*)' +- regex: '\d+/tclwebkit(?:\d+[.\d]*)' name: 'BrowseHere' version: "" # Hi Browser (https://play.google.com/store/apps/details?id=com.talpa.hibrowser) -- regex: 'HiBrowser/v?(\d+[\.\d]+)' +- regex: 'HiBrowser/v?(\d+[.\d]+)' name: 'Hi Browser' version: '$1' engine: default: 'Blink' # CYBrowser (https://www.cgl.ucsf.edu/cytoscape/utilities3/cybrowser.shtml) -- regex: 'CYBrowser/(\d+[\.\d]+)' +- regex: 'CYBrowser/(\d+[.\d]+)' name: 'CyBrowser' version: '$1' # SiteKiosk (https://www.sitekiosk.com/) -- regex: 'Chrome/.+ SiteKiosk (\d+[\.\d]+)' +- regex: 'Chrome/.+ SiteKiosk (\d+[.\d]+)' name: 'SiteKiosk' version: '$1' engine: default: 'Blink' -- regex: 'SiteKiosk (\d+[\.\d]+)' +- regex: 'SiteKiosk (\d+[.\d]+)' name: 'SiteKiosk' version: '$1' # Reqwireless WebViewer -- regex: 'ReqwirelessWeb/(\d+[\.\d]+)' +- regex: 'ReqwirelessWeb/(\d+[.\d]+)' name: 'Reqwireless WebViewer' version: '$1' # T+Browser (https://t.chanjet.com/tplus/view/login/downloadBrowser.html | https://dad.chanapp.chanjet.com/tplusapp/TPlusBrowser.exe) -- regex: 'T\+Browser/(\d+[\.\d]+)' +- regex: 'T\+Browser/(\d+[.\d]+)' name: 'T+Browser' version: '$1' engine: default: 'Blink' # SP Browser (https://play.google.com/store/apps/details?id=privatebrowser.securebrowser.com.klar) -- regex: 'Private Browser/(\d+[\.\d]+) Chrome/' +- regex: 'Private Browser/(\d+[.\d]+) Chrome/' name: 'Secure Private Browser' version: '$1' engine: default: 'Blink' # ChanjetCloud (https://dad.chanapp.chanjet.com/tplusapp/HsySetup.exe) -- regex: 'ChanjetCloud/(\d+[\.\d]+)' +- regex: 'ChanjetCloud/(\d+[.\d]+)' name: 'ChanjetCloud' version: '$1' engine: default: 'Blink' # Sushi Browser (https://sushi-browser.com/) -- regex: 'SushiBrowser/(\d+[\.\d]+)' +- regex: 'SushiBrowser/(\d+[.\d]+)' name: 'Sushi Browser' version: '$1' engine: default: 'Blink' # Peeps dBrowser (https://peepsx.com/dbrowser.html) -- regex: 'dBrowser/(\d+[\.\d]+)' +- regex: 'dBrowser/(\d+[.\d]+)' name: 'Peeps dBrowser' version: '$1' engine: default: 'Blink' # LT Browser (https://www.lambdatest.com/lt-browser) -- regex: 'LTBrowser/(\d+[\.\d]+)' +- regex: 'LTBrowser/(\d+[.\d]+)' name: 'LT Browser' version: '$1' engine: default: 'Blink' # Lagatos Browser (https://lagatos.com/) -- regex: 'lagatos-browser/(\d+[\.\d]+)' +- regex: 'lagatos-browser/(\d+[.\d]+)' name: 'Lagatos Browser' version: '$1' engine: default: 'Blink' # PSI Secure Browser (https://tca.psiexams.com/portal/testdelivery/sb_rpnow_download.jsp?) -- regex: 'psi-secure-browser/(\d+[\.\d]+)' +- regex: 'psi-secure-browser/(\d+[.\d]+)' name: 'PSI Secure Browser' version: '$1' engine: default: 'Blink' # Harman Browser (https://www.harman.com/) -- regex: 'Harman_Browser/(\d+[\.\d]+)' +- regex: 'Harman_Browser/(\d+[.\d]+)' name: 'Harman Browser' version: '$1' engine: default: 'Blink' # Bonsai (https://bonsaibrowser.com/) -- regex: 'bonsai-browser/(\d+[\.\d]+)' +- regex: 'bonsai-browser/(\d+[.\d]+)' name: 'Bonsai' version: '$1' engine: default: 'Blink' # Spectre Browser (https://spectrebots.com/products/spectre-desktop-browser) -- regex: 'spectre-browser/(\d+[\.\d]+)' +- regex: 'spectre-browser/(\d+[.\d]+)' name: 'Spectre Browser' version: '$1' engine: default: 'Blink' # Flash Browser (https://github.com/asteroid-dev/FlashBrowser or https://github.com/radubirsan/FlashBrowser) -- regex: 'FlashBrowser/(\d+[\.\d]+)' +- regex: 'FlashBrowser/(\d+[.\d]+)' name: 'Flash Browser' version: '$1' engine: default: 'Blink' # Secure Browser (https://safertechnologies.io/) -- regex: 'Secure/(?:(\d+[\.\d]+))?' +- regex: 'Secure/(?:(\d+[.\d]+))?' name: 'Secure Browser' version: '$1' engine: default: 'Blink' # Arvin (https://play.google.com/store/apps/details?id=com.browser.arvin.anti.blokir&hl=sv&gl=US) -- regex: 'Arvin/(\d+[\.\d]+)' +- regex: 'Arvin/(\d+[.\d]+)' name: 'Arvin' version: '$1' engine: default: 'Blink' # Edge Webview (https://docs.microsoft.com/en-us/microsoft-edge/webview2/) -- regex: 'Version/.+Chrome/.+EdgW/(\d+[\.\d]+)' +- regex: 'Version/.+Chrome/.+EdgW/(\d+[.\d]+)' name: 'Edge WebView' version: '$1' engine: default: 'Blink' # Mandarin (https://mandarin-browser.com/) -- regex: 'Mandarin Browser/(\d+[\.\d]+)' +- regex: 'Mandarin Browser/(\d+[.\d]+)' name: 'Mandarin' version: '$1' engine: default: 'Blink' # Maelstrom (https://www.bittorrent.com/) -- regex: 'Torrent/(\d+[\.\d]+)' +- regex: 'Torrent/(\d+[.\d]+)' name: 'Maelstrom' version: '$1' engine: default: 'Blink' # Helio (https://developer.magicleap.com/en-us/learn/guides/lumin-os-release-notes-summary) -- regex: 'Helio/(\d+[\.\d]+)' +- regex: 'Helio/(\d+[.\d]+)' name: 'Helio' version: '$1' engine: default: 'Blink' # 7654 Browser (http://7654browser.shzhanmeng.com/) -- regex: '7654Browser/(\d+[\.\d]+)' +- regex: '7654Browser/(\d+[.\d]+)' name: '7654 Browser' version: '$1' engine: default: 'Blink' # Qazweb (http://www.qazweb.com/) -- regex: 'Qazweb/(\d+[\.\d]+)' +- regex: 'Qazweb/(\d+[.\d]+)' name: 'Qazweb' version: '$1' engine: default: 'Gecko' # deg-degan (https://degdegan.com/) -- regex: 'Degdegan/(\d+[\.\d]+)' +- regex: 'Degdegan/(\d+[.\d]+)' name: 'deg-degan' version: '$1' engine: default: 'Blink' # JavaFX (https://docs.oracle.com/javase/8/javafx/embedded-browser-tutorial/overview.htm) -- regex: 'JavaFX/(\d+[\.\d]+)' +- regex: 'JavaFX/(\d+[.\d]+)' name: 'JavaFX' version: '$1' engine: default: 'WebKit' # Chedot (https://landing.chedot.com/) -- regex: 'Chedot/(\d+[\.\d]+)' +- regex: 'Chedot/(\d+[.\d]+)' name: 'Chedot' version: '$1' engine: default: 'Blink' # Chromium GOST (https://github.com/deemru/chromium-gost) -- regex: 'Chrome/(\d+\.[\.\d]+) .*\(Chromium GOST\)' +- regex: 'Chrome/(\d+\.[.\d]+) .*\(Chromium GOST\)' name: 'Chromium GOST' version: '$1' engine: @@ -872,136 +879,136 @@ 28: 'Blink' # Deledao (https://www.deledao.com/) -- regex: '(?:DeledaoPersonal|DeledaoFamily)/(\d+[\.\d]+)' +- regex: '(?:DeledaoPersonal|DeledaoFamily)/(\d+[.\d]+)' name: 'Deledao' version: '$1' engine: default: 'Blink' # HasBrowser (https://browser.hascoding.com) -- regex: 'HasBrowser/(\d+[\.\d]+)' +- regex: 'HasBrowser/(\d+[.\d]+)' name: 'HasBrowser' version: '$1' engine: default: 'Blink' # Byffox (https://byffox.sourceforge.io/index.php) -- regex: 'Byffox/(\d+[\.\d]+)' +- regex: 'Byffox/(\d+[.\d]+)' name: 'Byffox' version: '$1' engine: default: 'Gecko' # CoolBrowser (https://play.google.com/store/apps/details?id=com.easybrowser.browser.coolbrowser) -- regex: 'Chrome/(\d+\.[\.\d]+) .*AgentWeb.+UCBrowser' +- regex: 'Chrome/(\d+\.[.\d]+) .*AgentWeb.+UCBrowser' name: 'CoolBrowser' version: '$1' engine: default: 'Blink' # Dot Browser (https://dothq.co/) -- regex: 'DotBrowser/(\d+[\.\d]+)' +- regex: 'DotBrowser/(\d+[.\d]+)' name: 'Dot Browser' version: '$1' engine: default: 'Blink' # Craving Explorer (https://www.crav-ing.com/) -- regex: 'CravingExplorer/(\d+[\.\d]+)' +- regex: 'CravingExplorer/(\d+[.\d]+)' name: 'Craving Explorer' version: '$1' engine: default: 'Blink' # DeskBrowse (https://web.archive.org/web/20170614060014/http://deskbrowse.org/) -- regex: 'DeskBrowse/(\d+[\.\d]+)' +- regex: 'DeskBrowse/(\d+[.\d]+)' name: 'DeskBrowse' version: '$1' # Lolifox -- regex: 'Lolifox/(\d+[\.\d]+)' +- regex: 'Lolifox/(\d+[.\d]+)' name: 'Lolifox' version: '$1' # PiBrowser (https://play.google.com/store/apps/details?id=pi.browser) -- regex: 'PiBrowser/(\d+[\.\d]+)' +- regex: 'PiBrowser/(\d+[.\d]+)' name: 'Pi Browser' version: '$1' engine: default: 'Blink' # Qutebrowser (https://qutebrowser.org/) -- regex: 'qutebrowser/(\d+\.[\.\d]+) .*Chrome' +- regex: 'qutebrowser/(\d+\.[.\d]+) .*Chrome' name: 'Qutebrowser' version: '$1' engine: default: 'Blink' -- regex: 'qutebrowser(?:/(\d+[\.\d]+))?' +- regex: 'qutebrowser(?:/(\d+[.\d]+))?' name: 'Qutebrowser' version: '$1' # Flast (https://github.com/FascodeNet/Flast) -- regex: 'flast/(\d+[\.\d]+)' +- regex: 'flast/(\d+[.\d]+)' name: 'Flast' version: '$1' engine: default: 'Blink' # PolyBrowser (https://github.com/PolySuite/PolyBrowser) -- regex: 'PolyBrowser/(\d+[\.\d]+)' +- regex: 'PolyBrowser/(\d+[.\d]+)' name: 'PolyBrowser' version: '$1' engine: default: 'Gecko' # BriskBard (https://www.briskbard.com/) -- regex: 'Chrome.+BriskBard/(\d+[\.\d]+)' +- regex: 'Chrome.+BriskBard/(\d+[.\d]+)' name: 'BriskBard' version: '$1' engine: default: 'Blink' -- regex: 'BriskBard(?:/(\d+[\.\d]+))?' +- regex: 'BriskBard(?:/(\d+[.\d]+))?' name: 'BriskBard' version: '$1' # GinxDroid Browser (https://play.google.com/store/apps/details?id=ginxdroid.gdm) -- regex: 'GinxDroid(?:Browser)?/(\d+[\.\d]+)' +- regex: 'GinxDroid(?:Browser)?/(\d+[.\d]+)' name: 'GinxDroid Browser' version: '$1' engine: default: 'Blink' # Avira Secure Browser (https://www.avira.com/en/avira-secure-browser) -- regex: 'Avira(?:Scout)?/(\d+[\.\d]+)' +- regex: 'Avira(?:Scout)?/(\d+[.\d]+)' name: 'Avira Secure Browser' version: '$1' engine: default: 'Blink' # Venus Browser (https://play.google.com/store/apps/details?id=com.venus.browser) -- regex: 'VenusBrowser/(\d+[\.\d]+)' +- regex: 'VenusBrowser/(\d+[.\d]+)' name: 'Venus Browser' version: '$1' engine: default: 'Blink' # Otter Browser (https://github.com/OtterBrowser/otter-browser) -- regex: 'Chrome.+Otter(?:[ /](\d+[\.\d]+))?' +- regex: 'Chrome.+Otter(?:[ /](\d+[.\d]+))?' name: 'Otter Browser' version: '$1' engine: default: 'Blink' -- regex: 'Otter(?:[ /](\d+[\.\d]+))?' +- regex: 'Otter(?:[ /](\d+[.\d]+))?' name: 'Otter Browser' version: '$1' # Smooz (https://smoozapp.com/) -- regex: 'Chrome.+Smooz/(\d+[\.\d]+)' +- regex: 'Chrome.+Smooz/(\d+[.\d]+)' name: 'Smooz' version: '$1' engine: default: 'Blink' -- regex: 'Smooz/(\d+[\.\d]+)' +- regex: 'Smooz/(\d+[.\d]+)' name: 'Smooz' version: '$1' @@ -1013,92 +1020,92 @@ default: 'Blink' # Cornowser (https://github.com/xdevs23/Cornowser) -- regex: 'Cornowser/(\d+[\.\d]+)' +- regex: 'Cornowser/(\d+[.\d]+)' name: 'Cornowser' version: '$1' engine: default: 'Blink' # Orca (http://www.orcabrowser.com) -- regex: 'Orca/(\d+[\.\d]+)' +- regex: 'Orca/(\d+[.\d]+)' name: 'Orca' version: '$1' # Flow Browser (https://play.google.com/store/apps/details?id=org.flow.browser) -- regex: 'Android (?:[\d\.]+;) ?(?:[^;]+;)? Flow\) AppleWebKit/537.+Chrome/\d{3}' +- regex: 'Android (?:[\d.]+;) ?(?:[^;]+;)? Flow\) AppleWebKit/537.+Chrome/\d{3}' name: 'Flow Browser' version: '' engine: default: 'Blink' # Flow (https://www.ekioh.com/) -- regex: 'Flow/(?:(\d+[\.\d]+))' +- regex: 'Flow/(?:(\d+[.\d]+))' name: 'Flow' version: '$1' engine: default: 'EkiohFlow' -- regex: 'Ekioh/(?:(\d+[\.\d]+))' +- regex: 'Ekioh/(?:(\d+[.\d]+))' name: 'Flow' version: '$1' engine: default: 'EkiohFlow' # xStand (https://www.adnx.com/) -- regex: 'xStand/(\d+[\.\d]+)' +- regex: 'xStand/(\d+[.\d]+)' name: 'xStand' version: '$1' engine: default: 'WebKit' # Biyubi (http://www.biyubi.com/) -- regex: 'Biyubi/(\d+[\.\d]+)' +- regex: 'Biyubi/(\d+[.\d]+)' name: 'Biyubi' version: '$1' # Perfect Browser (http://www.perfectbrowser.com/) -- regex: '(?:Perfect%20Browser(?:-iPad)?|Perfect(?:BrowserPro)?)/(\d+[\.\d]+)' +- regex: '(?:Perfect%20Browser(?:-iPad)?|Perfect(?:BrowserPro)?)/(\d+[.\d]+)' name: 'Perfect Browser' version: '$1' engine: default: 'WebKit' # Phantom Browser (https://www.lg.com/) -- regex: 'Browser/Phantom/V(\d+[\.\d]+)' +- regex: 'Browser/Phantom/V(\d+[.\d]+)' name: 'Phantom Browser' version: '$1' # AwoX (https://www.awox.com.tr/) -- regex: 'AwoX(?:/(\d+[\.\d]+))? Browser' +- regex: 'AwoX(?:/(\d+[.\d]+))? Browser' name: 'AwoX' version: '$1' # Zetakey (https://www.zetakey.com/) -- regex: 'Zetakey/(\d+[\.\d]+)' +- regex: 'Zetakey/(\d+[.\d]+)' name: 'Zetakey' version: '$1' engine: default: 'WebKit' # PlayFree Browser -- regex: 'PlayFreeBrowser/(?:(\d+[\.\d]+))?' +- regex: 'PlayFreeBrowser/(?:(\d+[.\d]+))?' name: 'PlayFree Browser' version: '$1' # Chim Lac (https://chimlac.com.vn/) -- regex: '(?:chimlac_browser|chimlac)/(?:(\d+[\.\d]+))' +- regex: '(?:chimlac_browser|chimlac)/(?:(\d+[.\d]+))' name: 'Chim Lac' version: '$1' engine: default: 'Blink' # Odin (https://www.hisense.com/) -- regex: 'Odin/(?:(\d+[\.\d]+))' +- regex: 'Odin/(?:(\d+[.\d]+))' name: 'Odin' version: '$1' engine: default: 'Blink' # T-Browser and new BrowseHere (https://play.google.com/store/apps/details?id=com.tcl.browser) -- regex: 'Tbrowser/(\d+[\.\d]+)' +- regex: 'Tbrowser/(\d+[.\d]+)' name: 'T-Browser' version: '$1' engine: @@ -1109,61 +1116,68 @@ engine: default: 'Blink' +# Whale TV Browser (https://partner.zeasn.com/partnerportal/TestingTools/index.jhtml) +- regex: 'WhaleBrowser/(\d+[.\d]+)' + name: 'Whale TV Browser' + version: '$1' + engine: + default: 'Blink' + # SFive (https://sfive.vn/) -- regex: 'SFive(?:_Android)?/.+ Chrome/(\d+[\.\d]+)' +- regex: 'SFive(?:_Android)?/.+ Chrome/(\d+[.\d]+)' name: 'SFive' version: '$1' engine: default: 'Blink' -- regex: 'SFive_IOS/(\d+[\.\d]+)' +- regex: 'SFive_IOS/(\d+[.\d]+)' name: 'SFive' version: '$1' # Navigateur Web -- regex: 'Navigateur web/(?:(\d+[\.\d]+))?' +- regex: 'Navigateur web/(?:(\d+[.\d]+))?' name: 'Navigateur Web' version: '$1' #Seraphic Sraf (https://www.seraphic-corp.com/) -- regex: 'Sraf(?:[/ ](\d+[\.\d]+))?' +- regex: 'Sraf(?:[/ ](\d+[.\d]+))?' name: 'Seraphic Sraf' version: '$1' engine: default: 'Blink' # Seewo Browser (http://e.seewo.com/) -- regex: 'SeewoBrowser/(?:(\d+[\.\d]+))?' +- regex: 'SeewoBrowser/(?:(\d+[.\d]+))?' name: 'Seewo Browser' version: '$1' engine: default: 'Blink' # Kode Browser (https://www.kodebrowser.com/ | https://play.google.com/store/apps/details?id=com.app.downloadmanager | https://apps.apple.com/us/app/kode-browser-fast-private/id625458492) -- regex: '(?:Kode(?:iOS)?/(?:(\d+[\.\d]+))?|TansoDL)' +- regex: '(?:Kode(?:iOS)?/(?:(\d+[.\d]+))?|TansoDL)' name: 'Kode Browser' version: '$1' # UR Browser (https://www.ur-browser.com/) -- regex: 'UR/(?:(\d+[\.\d]+))' +- regex: 'UR/(?:(\d+[.\d]+))' name: 'UR Browser' version: '$1' engine: default: 'Blink' # OceanHero (https://oceanhero.today) -- regex: 'OceanHero/([\.\d]+)' +- regex: 'OceanHero/([.\d]+)' name: 'OceanHero' version: '$1' engine: default: 'Blink' # Smart Lenovo Browser (https://www.lenovo.com.cn/) -- regex: 'Chrome/.+ SLBrowser/(?:(\d+[\.\d]+))?' +- regex: 'Chrome/.+ SLBrowser/(?:(\d+[.\d]+))?' name: 'Smart Lenovo Browser' version: '$1' engine: default: 'Blink' -- regex: 'SLBrowser/(?:(\d+[\.\d]+))?' +- regex: 'SLBrowser/(?:(\d+[.\d]+))?' name: 'Smart Lenovo Browser' version: '$1' @@ -1173,43 +1187,43 @@ version: '' # Stargon (http://www.stargon.org/ | https://play.google.com/store/apps/details?id=net.onecook.browser) -- regex: 'Stargon/(?:(\d+[\.\d]+))?' +- regex: 'Stargon/(?:(\d+[.\d]+))?' name: 'Stargon' version: '$1' engine: default: 'Blink' # NFS Browser (https://github.com/nfschina/nfs-browser) -- regex: 'NFSBrowser/(?:(\d+[\.\d]+))?' +- regex: 'NFSBrowser/(?:(\d+[.\d]+))?' name: 'NFS Browser' version: '$1' engine: default: 'Blink' # Borealis Navigator (https://binaryoutcast.com/projects/borealis/) -- regex: 'Borealis/(\d+[\.\d]+)' +- regex: 'Borealis/(\d+[.\d]+)' name: 'Borealis Navigator' version: '$1' # Yolo Browser -- regex: 'YoloBrowser/(?:(\d+[\.\d]+))?' +- regex: 'YoloBrowser/(?:(\d+[.\d]+))?' name: 'Yolo Browser' version: '$1' engine: default: 'Blink' # Phoenix Browser (http://phoenix-browser.com/ | https://play.google.com/store/apps/details?id=com.transsion.phoenix) -- regex: 'PHX/(?:(\d+[\.\d]+))?' +- regex: 'PHX/(?:(\d+[.\d]+))?' name: 'Phoenix Browser' version: '$1' # PrivacyWall (https://play.google.com/store/apps/details?id=org.privacywall.browser) -- regex: 'PrivacyWall/(?:(\d+[\.\d]+))?' +- regex: 'PrivacyWall/(?:(\d+[.\d]+))?' name: 'PrivacyWall' version: '$1' # Ghostery Privacy Browser (https://www.ghostery.com/) -- regex: 'Ghostery:?(\d+[\.\d]+)?' +- regex: 'Ghostery:?(\d+[.\d]+)?' name: 'Ghostery Privacy Browser' version: '$1' @@ -1219,44 +1233,44 @@ version: '' # Yaani Browser -- regex: 'Firefox/.*(?:Turkcell-)?YaaniBrowser(?:/(\d+[\.\d]+))?' +- regex: 'Firefox/.*(?:Turkcell-)?YaaniBrowser(?:/(\d+[.\d]+))?' name: 'Yaani Browser' version: '$1' engine: default: 'Gecko' -- regex: '(?:Turkcell-)?YaaniBrowser(?:/(\d+[\.\d]+))?' +- regex: '(?:Turkcell-)?YaaniBrowser(?:/(\d+[.\d]+))?' name: 'Yaani Browser' version: '$1' engine: default: 'Blink' # Safe Exam Browser (https://safeexambrowser.org/) -- regex: 'SEB/(?:(\d+[\.\d]+))?' +- regex: 'SEB/(?:(\d+[.\d]+))?' name: 'Safe Exam Browser' version: '$1' # Colibri (https://colibri.opqr.co/) -- regex: 'Colibri/(?:(\d+[\.\d]+))?' +- regex: 'Colibri/(?:(\d+[.\d]+))?' name: 'Colibri' version: '$1' # Xvast (https://www.xvast.com/) -- regex: 'Xvast/(?:(\d+[\.\d]+))?' +- regex: 'Xvast/(?:(\d+[.\d]+))?' name: 'Xvast' version: '$1' # Tungsten (https://en.tungsten-start.net/) -- regex: 'TungstenBrowser/(?:(\d+[\.\d]+))?' +- regex: 'TungstenBrowser/(?:(\d+[.\d]+))?' name: 'Tungsten' version: '$1' # Lulumi (https://github.com/LulumiProject/lulumi-browser) -- regex: 'Lulumi-browser/(?:(\d+[\.\d]+))?' +- regex: 'Lulumi-browser/(?:(\d+[.\d]+))?' name: 'Lulumi' version: '$1' # Yahoo! Japan Browser (https://promo-ybrowser.yahoo.co.jp/) -- regex: 'ybrowser/(?:(\d+[\.\d]+))?' +- regex: 'ybrowser/(?:(\d+[.\d]+))?' name: 'Yahoo! Japan Browser' version: '$1' @@ -1278,27 +1292,27 @@ default: '' # multi engine # Polypane (https://polypane.app/) -- regex: 'Polypane/(?:(\d+[\.\d]+))?' +- regex: 'Polypane/(?:(\d+[.\d]+))?' name: 'Polypane' version: '$1' # OhHai Browser (https://ohhaibrowser.com/) -- regex: 'OhHaiBrowser/(?:(\d+[\.\d]+))?' +- regex: 'OhHaiBrowser/(?:(\d+[.\d]+))?' name: 'OhHai Browser' version: '$1' # Sizzy (https://sizzy.co/) -- regex: 'Sizzy/(?:(\d+[\.\d]+))?' +- regex: 'Sizzy/(?:(\d+[.\d]+))?' name: 'Sizzy' version: '$1' # Glass Browser (https://github.com/mitchas/glass-browser) -- regex: 'GlassBrowser/(?:(\d+[\.\d]+))?' +- regex: 'GlassBrowser/(?:(\d+[.\d]+))?' name: 'Glass Browser' version: '$1' # ToGate (https://tmaxanc.com/#!/product-introduce/ToGate) -- regex: 'ToGate/(?:(\d+[\.\d]+))?' +- regex: 'ToGate/(?:(\d+[.\d]+))?' name: 'ToGate' version: '$1' engine: @@ -1307,44 +1321,44 @@ 28: 'Blink' # VMware AirWatch (https://www.air-watch.com/) -- regex: '(?:AirWatch Browser v|AirWatchBrowser/)(?:(\d+[\.\d]+))?' +- regex: '(?:AirWatch Browser v|AirWatchBrowser/)(?:(\d+[.\d]+))?' name: 'VMware AirWatch' version: '$1' # AOL Explorer -- regex: 'AOL (\d+[\.\d]+)' +- regex: 'AOL (\d+[.\d]+)' name: 'AOL Explorer' version: '$1' engine: default: 'Trident' # AOL Desktop (https://beta.aol.com/projects/desktop/windows) -- regex: 'ADG/(?:(\d+[\.\d]+))?' +- regex: 'ADG/(?:(\d+[.\d]+))?' name: 'AOL Desktop' version: '$1' # Elements Browser (https://elementsbrowser.com/) -- regex: 'Elements Browser/(?:(\d+[\.\d]+))?' +- regex: 'Elements Browser/(?:(\d+[.\d]+))?' name: 'Elements Browser' version: '$1' # Light (https://sourceforge.net/projects/lightfirefox/) -- regex: 'Light/(\d+[\.\d]+)' +- regex: 'Light/(\d+[.\d]+)' name: 'Light' version: '$1' # Steam (https://www.valvesoftware.com/) -- regex: 'Valve Steam GameOverlay/(?:(\d+[\.\d]+))?' +- regex: 'Valve Steam GameOverlay/(?:(\d+[.\d]+))?' name: 'Steam In-Game Overlay' version: '$1' # 115 Browser (https://pc.115.com/) -- regex: '115Browser/(?:(\d+[\.\d]+))?' +- regex: '115Browser/(?:(\d+[.\d]+))?' name: '115 Browser' version: '$1' # Atom (https://browser.ru/) -- regex: 'Atom/(?:(\d+[\.\d]+))?' +- regex: 'Atom/(?:(\d+[.\d]+))?' name: 'Atom' version: '$1' engine: @@ -1361,43 +1375,43 @@ version: '' # AVG Secure Browser (https://www.avg.com/en-us/secure-browser | https://play.google.com/store/apps/details?id=com.avg.android.secure.browser) -- regex: 'AVG(?:/(\d+[\.\d]+))?' +- regex: 'AVG(?:/(\d+[.\d]+))?' name: 'AVG Secure Browser' version: '$1' engine: default: 'WebKit' versions: 28: 'Blink' -- regex: 'AT/(\d+[\.\d]+)' +- regex: 'AT/(\d+[.\d]+)' name: 'AVG Secure Browser' version: '$1' engine: default: 'Blink' # START Internet Browser (https://play.google.com/store/apps/details?id=fyi.start.web.browser) -- regex: 'Start/(?:(\d+[\.\d]+))?' +- regex: 'Start/(?:(\d+[.\d]+))?' name: 'START Internet Browser' version: '$1' # Lovense Browser (https://www.lovense.com/cam-model/download) -- regex: 'Lovense(?:/(\d+[\.\d]+))?' +- regex: 'Lovense(?:/(\d+[.\d]+))?' name: 'Lovense Browser' version: '$1' # Delta Browser (https://play.google.com/store/apps/details?id=com.airfind.deltabrowser) -- regex: '(?:com\.airfind\.deltabrowser|AirSearch)(?:/(\d+[\.\d]+))?' +- regex: '(?:com\.airfind\.deltabrowser|AirSearch)(?:/(\d+[.\d]+))?' name: 'Delta Browser' version: '$1' engine: default: 'Blink' # Ordissimo (https://www.ordissimo.fr/) -- regex: '(?:Ordissimo|webissimo3)(?:/(\d+[\.\d]+))?' +- regex: '(?:Ordissimo|webissimo3)(?:/(\d+[.\d]+))?' name: 'Ordissimo' version: '$1' # CCleaner (https://www.ccleaner.com/ccleaner/browser) -- regex: 'CCleaner(?:/(\d+[\.\d]+))?' +- regex: 'CCleaner(?:/(\d+[.\d]+))?' name: 'CCleaner' version: '$1' engine: @@ -1406,44 +1420,44 @@ 28: 'Blink' # Aloha Browser Lite (https://play.google.com/store/apps/details?id=com.alohamobile.browser.lite) -- regex: 'AlohaLite(?:/(\d+[\.\d]+))?' +- regex: 'AlohaLite(?:/(\d+[.\d]+))?' name: 'Aloha Browser Lite' version: '$1' engine: default: 'Blink' # Tao Browser (https://browser.taobao.com/) -- regex: 'TaoBrowser(?:/(\d+[\.\d]+))?' +- regex: 'TaoBrowser(?:/(\d+[.\d]+))?' name: 'Tao Browser' version: '$1' # Falkon (https://www.falkon.org/) -- regex: 'Falkon(?:/(\d+[\.\d]+))?' +- regex: 'Falkon(?:/(\d+[.\d]+))?' name: 'Falkon' version: '$1' # mCent (http://mcentbrowser.com/) -- regex: 'mCent(?:/(\d+[\.\d]+))?' +- regex: 'mCent(?:/(\d+[.\d]+))?' name: 'mCent' version: '$1' # SalamWeb (https://salamweb.com/) -- regex: 'SalamWeb(?:/(\d+[\.\d]+))?' +- regex: 'SalamWeb(?:/(\d+[.\d]+))?' name: 'SalamWeb' version: '$1' # BlackHawk (http://www.netgate.sk/blackhawk/) -- regex: 'BlackHawk(?:/(\d+[\.\d]+))?' +- regex: 'BlackHawk(?:/(\d+[.\d]+))?' name: 'BlackHawk' version: '$1' # Minimo (https://www-archive.mozilla.org/projects/minimo/) -- regex: 'Minimo(?:/(\d+[\.\d]+))?' +- regex: 'Minimo(?:/(\d+[.\d]+))?' name: 'Minimo' version: '$1' # Wear Internet Browser (https://play.google.com/store/apps/details?id=com.appfour.wearbrowser) -- regex: 'WIB(?:/(\d+[\.\d]+))?' +- regex: 'WIB(?:/(\d+[.\d]+))?' name: 'Wear Internet Browser' version: '$1' @@ -1453,12 +1467,12 @@ version: '' # Kinza (https://www.kinza.jp/en/) -- regex: 'Kinza(?:/(\d+[\.\d]+))?' +- regex: 'Kinza(?:/(\d+[.\d]+))?' name: 'Kinza' version: '$1' # Beamrise (https://web.archive.org/web/20170520043839/http://beamrise.com/) -- regex: 'Beamrise(?:/(\d+[\.\d]+))?' +- regex: 'Beamrise(?:/(\d+[.\d]+))?' name: 'Beamrise' version: '$1' engine: @@ -1467,144 +1481,144 @@ 28: 'Blink' # Faux Browser (https://apps.apple.com/us/app/faux-browser/id472250940) -- regex: 'Faux(?:/(\d+[\.\d]+))?' +- regex: 'Faux(?:/(\d+[.\d]+))?' name: 'Faux Browser' version: '$1' # Splash (https://www.zyte.com/splash/) -- regex: 'splash Version(?:/(\d+[\.\d]+))?' +- regex: 'splash Version(?:/(\d+[.\d]+))?' name: 'Splash' version: '$1' # Meizu Browser (https://www.meizu.com/) -- regex: 'MZBrowser(?:/(\d+[\.\d]+))?' +- regex: 'MZBrowser(?:/(\d+[.\d]+))?' name: 'Meizu Browser' version: '$1' # COS Browser (https://sj.qq.com/myapp/detail.htm?apkName=com.qcloud.cos.client) -- regex: 'COSBrowser(?:/(\d+[\.\d]+))?' +- regex: 'COSBrowser(?:/(\d+[.\d]+))?' name: 'COS Browser' version: '$1' # Crusta (https://github.com/Crusta/CrustaBrowser) -- regex: 'Crusta(?:/(\d+[\.\d]+))?' +- regex: 'Crusta(?:/(\d+[.\d]+))?' name: 'Crusta' version: '$1' # Hawk Turbo Browser -- regex: 'Hawk/TurboBrowser(?:/v?(\d+[\.\d]+))?' +- regex: 'Hawk/TurboBrowser(?:/v?(\d+[.\d]+))?' name: 'Hawk Turbo Browser' version: '$1' engine: default: 'Blink' # Hawk Quick Browser -- regex: 'Hawk/QuickBrowser(?:/v?(\d+[\.\d]+))?' +- regex: 'Hawk/QuickBrowser(?:/v?(\d+[.\d]+))?' name: 'Hawk Quick Browser' version: '$1' engine: default: 'Blink' # FreeU (https://freeu.online/) -- regex: 'FreeU(?:/(\d+[\.\d]+))?' +- regex: 'FreeU(?:/(\d+[.\d]+))?' name: 'FreeU' version: '$1' engine: default: 'Blink' # Nox Browser (https://play.google.com/store/apps/details?id=com.noxgroup.app.browser) -- regex: 'NoxBrowser(?:/(\d+[\.\d]+))?' +- regex: 'NoxBrowser(?:/(\d+[.\d]+))?' name: 'Nox Browser' version: '$1' engine: default: 'Blink' # Basilisk (https://www.basilisk-browser.org/) -- regex: 'Basilisk(?:/(\d+[\.\d]+))?' +- regex: 'Basilisk(?:/(\d+[.\d]+))?' name: 'Basilisk' version: '$1' engine: default: 'Goanna' # Sputnik Browser (https://play.google.com/store/apps/details?id=ru.sputnik.browser) -- regex: 'SputnikBrowser(?:/(\d+[\.\d]+))?' +- regex: 'SputnikBrowser(?:/(\d+[.\d]+))?' name: 'Sputnik Browser' version: '$1' engine: default: 'Blink' # K.Browser (https://play.google.com/store/apps/details?id=com.tnsua.browser) -- regex: 'TNSBrowser(?:/(\d+[\.\d]+))?' +- regex: 'TNSBrowser(?:/(\d+[.\d]+))?' name: 'K.Browser' version: '$1' engine: default: 'Blink' # Oculus Browser (https://developer.oculus.com/documentation/oculus-browser/latest/concepts/) -- regex: 'OculusBrowser(?:/(\d+[\.\d]+))?' +- regex: 'OculusBrowser(?:/(\d+[.\d]+))?' name: 'Oculus Browser' version: '$1' engine: default: 'Blink' # JioSphere (https://www.jio.com/jcms/apps/jiosphere/ | https://play.google.com/store/apps/details?id=com.jio.web) -- regex: 'Jio(?:Browser|Pages|Sphere)(?:/(\d+[\.\d]+))?' +- regex: 'Jio(?:Browser|Pages|Sphere)(?:/(\d+[.\d]+))?' name: 'JioSphere' version: '$1' engine: default: 'Blink' # https://play.google.com/store/apps/details?id=app.stampy.browser -- regex: 'SY/(\d+[\.\d]+) Chrome/' +- regex: 'SY/(\d+[.\d]+) Chrome/' name: 'Stampy Browser' version: '$1' engine: default: 'Blink' # hola! Browser (https://hola.org/browser) -- regex: 'Chrome/.+ Hola(?:/(\d+[\.\d]+))?' +- regex: 'Chrome/.+ Hola(?:/(\d+[.\d]+))?' name: 'hola! Browser' version: '$1' engine: default: 'Blink' # SlimBoat (https://web.archive.org/web/20160308081217/https://www.slimboat.com/en/) -- regex: 'SlimBoat/(?:(\d+[\.\d]+))' +- regex: 'SlimBoat/(?:(\d+[.\d]+))' name: 'SlimBoat' version: '$1' engine: default: 'Blink' # Slimjet (https://slimjet.com) -- regex: 'Slimjet/(?:(\d+[\.\d]+))' +- regex: 'Slimjet/(?:(\d+[.\d]+))' name: 'Slimjet' version: '$1' engine: default: 'Blink' # 7Star or 7 Star or Kuaiso (https://web.archive.org/web/20210614112514/http://browser.kuaiso.com/) -- regex: '(?:7Star|Kuaiso)/(?:(\d+[\.\d]+))' +- regex: '(?:7Star|Kuaiso)/(?:(\d+[.\d]+))' name: '7Star' version: '$1' engine: default: 'Blink' # MxNitro -- regex: 'MxNitro/(?:(\d+[\.\d]+))' +- regex: 'MxNitro/(?:(\d+[.\d]+))' name: 'MxNitro' version: '$1' engine: default: 'Blink' # Huawei Browser Mobile -- regex: 'HuaweiBrowser(?:/(\d+[\.\d]+))?' +- regex: 'HuaweiBrowser(?:/(\d+[.\d]+))?' name: 'Huawei Browser Mobile' version: '$1' engine: default: 'Blink' # Huawei Browser -- regex: 'HBPC/(\d+[\.\d]+)' +- regex: 'HBPC/(\d+[.\d]+)' name: 'Huawei Browser' version: '$1' engine: @@ -1616,88 +1630,88 @@ version: '$1' # vivo Browser -- regex: 'VivoBrowser(?:/(\d+[\.\d]+))?' +- regex: 'VivoBrowser(?:/(\d+[.\d]+))?' name: 'vivo Browser' version: '$1' # Realme Browser -- regex: 'RealmeBrowser(?:/(\d+[\.\d]+))?' +- regex: 'RealmeBrowser(?:/(\d+[.\d]+))?' name: 'Realme Browser' version: '$1' # Beaker distributed web browser (https://beakerbrowser.com/) -- regex: 'Beaker ?Browser(?:[/ ](\d+[\.\d]+))?' +- regex: 'Beaker ?Browser(?:[/ ](\d+[.\d]+))?' name: 'Beaker Browser' version: '$1' engine: default: 'Blink' # Qwant Mobile -- regex: 'QwantiOS/(\d+[\.\d]+)' +- regex: 'QwantiOS/(\d+[.\d]+)' name: 'Qwant Mobile' version: '$1' engine: default: 'WebKit' -- regex: 'Chrome/.*QwantMobile(?:/(\d+[\.\d]+))?' +- regex: 'Chrome/.*QwantMobile(?:/(\d+[.\d]+))?' name: 'Qwant Mobile' version: '$1' engine: default: 'Blink' -- regex: 'QwantMobile(?:/(\d+[\.\d]+))?' +- regex: 'QwantMobile(?:/(\d+[.\d]+))?' name: 'Qwant Mobile' version: '$1' engine: default: '' # multiple (Gecko on Android, WebKit on iOS) -- regex: 'Qwant/(\d+[\.\d]+)' +- regex: 'Qwant/(\d+[.\d]+)' name: 'Qwant Mobile' version: '$1' engine: default: 'Gecko' # TenFourFox -- regex: 'TenFourFox(?:/(\d+[\.\d]+))?' +- regex: 'TenFourFox(?:/(\d+[.\d]+))?' name: 'TenFourFox' version: '$1' engine: default: 'Gecko' # AOL Shield Pro -- regex: 'Chrome/.+ AOLShield(?:/(\d+[\.\d]+))?' +- regex: 'Chrome/.+ AOLShield(?:/(\d+[.\d]+))?' name: 'AOL Shield Pro' version: '$1' engine: default: 'Blink' # AOL Shield -- regex: 'AOLShield(?:/(\d+[\.\d]+))?' +- regex: 'AOLShield(?:/(\d+[.\d]+))?' name: 'AOL Shield' version: '$1' engine: default: 'Gecko' # Microsoft Edge (Spartan Edge) -- regex: '(?