From 3eb9c6ae9830a1ef51baddd7b947fb2b25c78f8f Mon Sep 17 00:00:00 2001 From: Davide De Rosa Date: Thu, 21 Mar 2019 00:24:17 +0100 Subject: [PATCH 1/5] Localize Pool via country code + area --- .../Scenes/ProviderPoolViewController.swift | 2 +- Passepartout.xcodeproj/project.pbxproj | 12 + .../Resources/en.lproj/Countries.strings | 275 ++++++++++++++++++ Passepartout/Sources/Services/Pool.swift | 30 ++ Passepartout/Sources/Utils.swift | 5 + 5 files changed, 323 insertions(+), 1 deletion(-) create mode 100644 Passepartout/Resources/en.lproj/Countries.strings diff --git a/Passepartout-iOS/Scenes/ProviderPoolViewController.swift b/Passepartout-iOS/Scenes/ProviderPoolViewController.swift index 066b9f1b..ee12618a 100644 --- a/Passepartout-iOS/Scenes/ProviderPoolViewController.swift +++ b/Passepartout-iOS/Scenes/ProviderPoolViewController.swift @@ -77,7 +77,7 @@ extension ProviderPoolViewController: UITableViewDataSource, UITableViewDelegate let cell = Cells.setting.dequeue(from: tableView, for: indexPath) cell.leftText = pool.name -// cell.rightText = pool.country +// cell.rightText = pool.area cell.applyChecked(pool.id == currentPoolId, Theme.current) cell.isTappable = true return cell diff --git a/Passepartout.xcodeproj/project.pbxproj b/Passepartout.xcodeproj/project.pbxproj index fb55c66a..28503f0d 100644 --- a/Passepartout.xcodeproj/project.pbxproj +++ b/Passepartout.xcodeproj/project.pbxproj @@ -73,6 +73,7 @@ 0E57F64620C83FC7008323CF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 0E57F64420C83FC7008323CF /* LaunchScreen.storyboard */; }; 0E58BD9322404EF1006FB157 /* Intents.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = 0E58BD9122404EF1006FB157 /* Intents.intentdefinition */; }; 0E58BF65224152F9006FB157 /* Intents.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = 0E58BD9122404EF1006FB157 /* Intents.intentdefinition */; settings = {ATTRIBUTES = (no_codegen, ); }; }; + 0E58BF68224305A8006FB157 /* Countries.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0E58BF6A224305A8006FB157 /* Countries.strings */; }; 0E6BE13F20CFBAB300A6DD36 /* DebugLogViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E6BE13E20CFBAB300A6DD36 /* DebugLogViewController.swift */; }; 0E89DFCE213EEDFA00741BA1 /* WizardProviderViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E89DFCD213EEDFA00741BA1 /* WizardProviderViewController.swift */; }; 0EA068F4218475F800C320AD /* ParsingResult+Alerts.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EA068F3218475F800C320AD /* ParsingResult+Alerts.swift */; }; @@ -195,6 +196,7 @@ 0E57F64220C83FC7008323CF /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 0E57F64720C83FC7008323CF /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 0E58BD9222404EF1006FB157 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.intentdefinition; name = en; path = en.lproj/Intents.intentdefinition; sourceTree = ""; }; + 0E58BF69224305A8006FB157 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Countries.strings; sourceTree = ""; }; 0E5E5DDE215119AF00E318A3 /* VPNStatus.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VPNStatus.swift; sourceTree = ""; }; 0E5E5DE1215119DD00E318A3 /* VPNConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VPNConfiguration.swift; sourceTree = ""; }; 0E5E5DE421511C5F00E318A3 /* GracefulVPN.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GracefulVPN.swift; sourceTree = ""; }; @@ -478,6 +480,7 @@ isa = PBXGroup; children = ( 0E0EABC721DF853C0069DAE7 /* Web */, + 0E58BF6A224305A8006FB157 /* Countries.strings */, 0E05C5DF20D198B9006EE732 /* Localizable.strings */, ); path = Resources; @@ -749,6 +752,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 0E58BF68224305A8006FB157 /* Countries.strings in Resources */, 0E3152DD223FA06100F61841 /* Localizable.strings in Resources */, 0E3152DE223FA06400F61841 /* Web in Resources */, ); @@ -1096,6 +1100,14 @@ name = Intents.intentdefinition; sourceTree = ""; }; + 0E58BF6A224305A8006FB157 /* Countries.strings */ = { + isa = PBXVariantGroup; + children = ( + 0E58BF69224305A8006FB157 /* en */, + ); + name = Countries.strings; + sourceTree = ""; + }; 0ED38ADC213F44D00004D387 /* Organizer.storyboard */ = { isa = PBXVariantGroup; children = ( diff --git a/Passepartout/Resources/en.lproj/Countries.strings b/Passepartout/Resources/en.lproj/Countries.strings new file mode 100644 index 00000000..fdd4695e --- /dev/null +++ b/Passepartout/Resources/en.lproj/Countries.strings @@ -0,0 +1,275 @@ +// +// Countries.strings +// Passepartout +// +// Created by Davide De Rosa on 3/21/19. +// Copyright (c) 2019 Davide De Rosa. All rights reserved. +// +// https://github.com/passepartoutvpn +// +// This file is part of Passepartout. +// +// Passepartout is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// Passepartout is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with Passepartout. If not, see . +// + +"BD" = "Bangladesh"; +"BE" = "Belgium"; +"BF" = "Burkina Faso"; +"BG" = "Bulgaria"; +"BA" = "Bosnia and Herzegovina"; +"BB" = "Barbados"; +"WF" = "Wallis and Futuna"; +"BL" = "Saint Barthelemy"; +"BM" = "Bermuda"; +"BN" = "Brunei"; +"BO" = "Bolivia"; +"BH" = "Bahrain"; +"BI" = "Burundi"; +"BJ" = "Benin"; +"BT" = "Bhutan"; +"JM" = "Jamaica"; +"BV" = "Bouvet Island"; +"BW" = "Botswana"; +"WS" = "Samoa"; +"BQ" = "Bonaire, Saint Eustatius and Saba "; +"BR" = "Brazil"; +"BS" = "Bahamas"; +"JE" = "Jersey"; +"BY" = "Belarus"; +"BZ" = "Belize"; +"RU" = "Russia"; +"RW" = "Rwanda"; +"RS" = "Serbia"; +"TL" = "East Timor"; +"RE" = "Reunion"; +"TM" = "Turkmenistan"; +"TJ" = "Tajikistan"; +"RO" = "Romania"; +"TK" = "Tokelau"; +"GW" = "Guinea-Bissau"; +"GU" = "Guam"; +"GT" = "Guatemala"; +"GS" = "South Georgia and the South Sandwich Islands"; +"GR" = "Greece"; +"GQ" = "Equatorial Guinea"; +"GP" = "Guadeloupe"; +"JP" = "Japan"; +"GY" = "Guyana"; +"GG" = "Guernsey"; +"GF" = "French Guiana"; +"GE" = "Georgia"; +"GD" = "Grenada"; +"GB" = "United Kingdom"; +"GA" = "Gabon"; +"SV" = "El Salvador"; +"GN" = "Guinea"; +"GM" = "Gambia"; +"GL" = "Greenland"; +"GI" = "Gibraltar"; +"GH" = "Ghana"; +"OM" = "Oman"; +"TN" = "Tunisia"; +"JO" = "Jordan"; +"HR" = "Croatia"; +"HT" = "Haiti"; +"HU" = "Hungary"; +"HK" = "Hong Kong"; +"HN" = "Honduras"; +"HM" = "Heard Island and McDonald Islands"; +"VE" = "Venezuela"; +"PR" = "Puerto Rico"; +"PS" = "Palestinian Territory"; +"PW" = "Palau"; +"PT" = "Portugal"; +"SJ" = "Svalbard and Jan Mayen"; +"PY" = "Paraguay"; +"IQ" = "Iraq"; +"PA" = "Panama"; +"PF" = "French Polynesia"; +"PG" = "Papua New Guinea"; +"PE" = "Peru"; +"PK" = "Pakistan"; +"PH" = "Philippines"; +"PN" = "Pitcairn"; +"PL" = "Poland"; +"PM" = "Saint Pierre and Miquelon"; +"ZM" = "Zambia"; +"EH" = "Western Sahara"; +"EE" = "Estonia"; +"EG" = "Egypt"; +"ZA" = "South Africa"; +"EC" = "Ecuador"; +"IT" = "Italy"; +"VN" = "Vietnam"; +"SB" = "Solomon Islands"; +"ET" = "Ethiopia"; +"SO" = "Somalia"; +"ZW" = "Zimbabwe"; +"SA" = "Saudi Arabia"; +"ES" = "Spain"; +"ER" = "Eritrea"; +"ME" = "Montenegro"; +"MD" = "Moldova"; +"MG" = "Madagascar"; +"MF" = "Saint Martin"; +"MA" = "Morocco"; +"MC" = "Monaco"; +"UZ" = "Uzbekistan"; +"MM" = "Myanmar"; +"ML" = "Mali"; +"MO" = "Macao"; +"MN" = "Mongolia"; +"MH" = "Marshall Islands"; +"MK" = "Macedonia"; +"MU" = "Mauritius"; +"MT" = "Malta"; +"MW" = "Malawi"; +"MV" = "Maldives"; +"MQ" = "Martinique"; +"MP" = "Northern Mariana Islands"; +"MS" = "Montserrat"; +"MR" = "Mauritania"; +"IM" = "Isle of Man"; +"UG" = "Uganda"; +"TZ" = "Tanzania"; +"MY" = "Malaysia"; +"MX" = "Mexico"; +"IL" = "Israel"; +"FR" = "France"; +"IO" = "British Indian Ocean Territory"; +"SH" = "Saint Helena"; +"FI" = "Finland"; +"FJ" = "Fiji"; +"FK" = "Falkland Islands"; +"FM" = "Micronesia"; +"FO" = "Faroe Islands"; +"NI" = "Nicaragua"; +"NL" = "Netherlands"; +"NO" = "Norway"; +"NA" = "Namibia"; +"VU" = "Vanuatu"; +"NC" = "New Caledonia"; +"NE" = "Niger"; +"NF" = "Norfolk Island"; +"NG" = "Nigeria"; +"NZ" = "New Zealand"; +"NP" = "Nepal"; +"NR" = "Nauru"; +"NU" = "Niue"; +"CK" = "Cook Islands"; +"XK" = "Kosovo"; +"CI" = "Ivory Coast"; +"CH" = "Switzerland"; +"CO" = "Colombia"; +"CN" = "China"; +"CM" = "Cameroon"; +"CL" = "Chile"; +"CC" = "Cocos Islands"; +"CA" = "Canada"; +"CG" = "Republic of the Congo"; +"CF" = "Central African Republic"; +"CD" = "Democratic Republic of the Congo"; +"CZ" = "Czech Republic"; +"CY" = "Cyprus"; +"CX" = "Christmas Island"; +"CR" = "Costa Rica"; +"CW" = "Curacao"; +"CV" = "Cape Verde"; +"CU" = "Cuba"; +"SZ" = "Swaziland"; +"SY" = "Syria"; +"SX" = "Sint Maarten"; +"KG" = "Kyrgyzstan"; +"KE" = "Kenya"; +"SS" = "South Sudan"; +"SR" = "Suriname"; +"KI" = "Kiribati"; +"KH" = "Cambodia"; +"KN" = "Saint Kitts and Nevis"; +"KM" = "Comoros"; +"ST" = "Sao Tome and Principe"; +"SK" = "Slovakia"; +"KR" = "South Korea"; +"SI" = "Slovenia"; +"KP" = "North Korea"; +"KW" = "Kuwait"; +"SN" = "Senegal"; +"SM" = "San Marino"; +"SL" = "Sierra Leone"; +"SC" = "Seychelles"; +"KZ" = "Kazakhstan"; +"KY" = "Cayman Islands"; +"SG" = "Singapore"; +"SE" = "Sweden"; +"SD" = "Sudan"; +"DO" = "Dominican Republic"; +"DM" = "Dominica"; +"DJ" = "Djibouti"; +"DK" = "Denmark"; +"VG" = "British Virgin Islands"; +"DE" = "Germany"; +"YE" = "Yemen"; +"DZ" = "Algeria"; +"US" = "United States"; +"UY" = "Uruguay"; +"YT" = "Mayotte"; +"UM" = "United States Minor Outlying Islands"; +"LB" = "Lebanon"; +"LC" = "Saint Lucia"; +"LA" = "Laos"; +"TV" = "Tuvalu"; +"TW" = "Taiwan"; +"TT" = "Trinidad and Tobago"; +"TR" = "Turkey"; +"LK" = "Sri Lanka"; +"LI" = "Liechtenstein"; +"LV" = "Latvia"; +"TO" = "Tonga"; +"LT" = "Lithuania"; +"LU" = "Luxembourg"; +"LR" = "Liberia"; +"LS" = "Lesotho"; +"TH" = "Thailand"; +"TF" = "French Southern Territories"; +"TG" = "Togo"; +"TD" = "Chad"; +"TC" = "Turks and Caicos Islands"; +"LY" = "Libya"; +"VA" = "Vatican"; +"VC" = "Saint Vincent and the Grenadines"; +"AE" = "United Arab Emirates"; +"AD" = "Andorra"; +"AG" = "Antigua and Barbuda"; +"AF" = "Afghanistan"; +"AI" = "Anguilla"; +"VI" = "U.S. Virgin Islands"; +"IS" = "Iceland"; +"IR" = "Iran"; +"AM" = "Armenia"; +"AL" = "Albania"; +"AO" = "Angola"; +"AQ" = "Antarctica"; +"AS" = "American Samoa"; +"AR" = "Argentina"; +"AU" = "Australia"; +"AT" = "Austria"; +"AW" = "Aruba"; +"IN" = "India"; +"AX" = "Aland Islands"; +"AZ" = "Azerbaijan"; +"IE" = "Ireland"; +"ID" = "Indonesia"; +"UA" = "Ukraine"; +"QA" = "Qatar"; +"MZ" = "Mozambique"; diff --git a/Passepartout/Sources/Services/Pool.swift b/Passepartout/Sources/Services/Pool.swift index e3265ea4..32de7874 100644 --- a/Passepartout/Sources/Services/Pool.swift +++ b/Passepartout/Sources/Services/Pool.swift @@ -34,6 +34,8 @@ public struct Pool: Codable, Comparable, CustomStringConvertible { case country + case area + // case location case hostname @@ -47,6 +49,8 @@ public struct Pool: Codable, Comparable, CustomStringConvertible { public let country: String + public let area: String? + // public let location: (Double, Double) public let hostname: String @@ -70,6 +74,15 @@ public struct Pool: Codable, Comparable, CustomStringConvertible { // MARK: Comparable public static func <(lhs: Pool, rhs: Pool) -> Bool { + if lhs.name == rhs.name { + guard let larea = lhs.area else { + return true + } + guard let rarea = rhs.area else { + return false + } + return larea < rarea + } return lhs.name < rhs.name } @@ -79,3 +92,20 @@ public struct Pool: Codable, Comparable, CustomStringConvertible { return "{[\(id)] \"\(name)\"}" } } + +extension Pool { + private static let localizedFormat = "%@ - %@" + + public var localizedCountry: String { + return Utils.localizedCountry(country) + } + + public var name: String { + let countryString = localizedCountry + guard let area = area else { + return countryString + } + return String.init(format: Pool.localizedFormat, countryString, area.uppercased()) +// return countryString + } +} diff --git a/Passepartout/Sources/Utils.swift b/Passepartout/Sources/Utils.swift index 3f442062..9ae670b7 100644 --- a/Passepartout/Sources/Utils.swift +++ b/Passepartout/Sources/Utils.swift @@ -133,6 +133,11 @@ public class Utils { }.resume() } + public static func localizedCountry(_ code: String) -> String { + let format = NSLocalizedString(code.uppercased(), tableName: "Countries", bundle: Bundle(for: Utils.self), comment: "") + return String(format: format, locale: Locale.current) + } + private init() { } } From 15f23dd4488e9399618f16955011d3e1a020a217 Mon Sep 17 00:00:00 2001 From: Davide De Rosa Date: Thu, 21 Mar 2019 10:42:51 +0100 Subject: [PATCH 2/5] Retain Pool.name internally but show .localizedName Use name from API if available (XXX: not localized). Make it private to avoid unintended use in app. --- .../ShortcutsConnectToViewController.swift | 2 +- .../Scenes/ProviderPoolViewController.swift | 2 +- .../Scenes/ServiceViewController.swift | 2 +- .../Sources/Intents/IntentDispatcher.swift | 2 +- Passepartout/Sources/Services/Pool.swift | 21 ++++++++----------- 5 files changed, 13 insertions(+), 16 deletions(-) diff --git a/Passepartout-iOS/Scenes/Organizer/ShortcutsConnectToViewController.swift b/Passepartout-iOS/Scenes/Organizer/ShortcutsConnectToViewController.swift index 301e1d3d..0d05eca2 100644 --- a/Passepartout-iOS/Scenes/Organizer/ShortcutsConnectToViewController.swift +++ b/Passepartout-iOS/Scenes/Organizer/ShortcutsConnectToViewController.swift @@ -166,7 +166,7 @@ extension ShortcutsConnectToViewController { let intent = MoveToLocationIntent() intent.providerId = provider.id intent.poolId = pool.id - intent.poolName = pool.name + intent.poolName = pool.localizedName addShortcut(with: intent) } diff --git a/Passepartout-iOS/Scenes/ProviderPoolViewController.swift b/Passepartout-iOS/Scenes/ProviderPoolViewController.swift index ee12618a..db03f6a8 100644 --- a/Passepartout-iOS/Scenes/ProviderPoolViewController.swift +++ b/Passepartout-iOS/Scenes/ProviderPoolViewController.swift @@ -76,7 +76,7 @@ extension ProviderPoolViewController: UITableViewDataSource, UITableViewDelegate let pool = pools[indexPath.row] let cell = Cells.setting.dequeue(from: tableView, for: indexPath) - cell.leftText = pool.name + cell.leftText = pool.localizedName // cell.rightText = pool.area cell.applyChecked(pool.id == currentPoolId, Theme.current) cell.isTappable = true diff --git a/Passepartout-iOS/Scenes/ServiceViewController.swift b/Passepartout-iOS/Scenes/ServiceViewController.swift index aa2d6762..79bfd05c 100644 --- a/Passepartout-iOS/Scenes/ServiceViewController.swift +++ b/Passepartout-iOS/Scenes/ServiceViewController.swift @@ -620,7 +620,7 @@ extension ServiceViewController: UITableViewDataSource, UITableViewDelegate, Tog case .providerPool: let cell = Cells.setting.dequeue(from: tableView, for: indexPath) cell.leftText = L10n.Service.Cells.Provider.Pool.caption - cell.rightText = uncheckedProviderProfile.pool?.name + cell.rightText = uncheckedProviderProfile.pool?.localizedName return cell case .providerPreset: diff --git a/Passepartout/Sources/Intents/IntentDispatcher.swift b/Passepartout/Sources/Intents/IntentDispatcher.swift index a611e311..8daaa826 100644 --- a/Passepartout/Sources/Intents/IntentDispatcher.swift +++ b/Passepartout/Sources/Intents/IntentDispatcher.swift @@ -49,7 +49,7 @@ public class IntentDispatcher { let intent = MoveToLocationIntent() intent.providerId = profile.id intent.poolId = pool.id - intent.poolName = pool.name + intent.poolName = pool.localizedName genericIntent = intent } else { let intent = ConnectVPNIntent() diff --git a/Passepartout/Sources/Services/Pool.swift b/Passepartout/Sources/Services/Pool.swift index 32de7874..0b6118fd 100644 --- a/Passepartout/Sources/Services/Pool.swift +++ b/Passepartout/Sources/Services/Pool.swift @@ -45,7 +45,7 @@ public struct Pool: Codable, Comparable, CustomStringConvertible { public let id: String - public let name: String + private let name: String public let country: String @@ -74,16 +74,7 @@ public struct Pool: Codable, Comparable, CustomStringConvertible { // MARK: Comparable public static func <(lhs: Pool, rhs: Pool) -> Bool { - if lhs.name == rhs.name { - guard let larea = lhs.area else { - return true - } - guard let rarea = rhs.area else { - return false - } - return larea < rarea - } - return lhs.name < rhs.name + return lhs.localizedName < rhs.localizedName } // MARK: CustomStringConvertible @@ -100,7 +91,13 @@ extension Pool { return Utils.localizedCountry(country) } - public var name: String { + public var localizedName: String { + + // XXX: name from API is not localized + if !name.isEmpty { + return name + } + let countryString = localizedCountry guard let area = area else { return countryString From 42f64db0b718422ec5bc774e6edd5373a2d4228a Mon Sep 17 00:00:00 2001 From: Davide De Rosa Date: Thu, 21 Mar 2019 10:55:50 +0100 Subject: [PATCH 3/5] Localize pools consistently --- Passepartout/Sources/Services/Pool.swift | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Passepartout/Sources/Services/Pool.swift b/Passepartout/Sources/Services/Pool.swift index 0b6118fd..3036054b 100644 --- a/Passepartout/Sources/Services/Pool.swift +++ b/Passepartout/Sources/Services/Pool.swift @@ -93,10 +93,10 @@ extension Pool { public var localizedName: String { - // XXX: name from API is not localized - if !name.isEmpty { - return name - } +// // XXX: name from API is not localized +// if !name.isEmpty { +// return name +// } let countryString = localizedCountry guard let area = area else { From dacd5653b42f70575cca6d474502753ddaa326b5 Mon Sep 17 00:00:00 2001 From: Davide De Rosa Date: Thu, 21 Mar 2019 11:04:01 +0100 Subject: [PATCH 4/5] Make localizedName a subordinate method To reuse localizedCountryArea for sorting regardless of display. --- Passepartout/Sources/Services/Pool.swift | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/Passepartout/Sources/Services/Pool.swift b/Passepartout/Sources/Services/Pool.swift index 3036054b..bb86faee 100644 --- a/Passepartout/Sources/Services/Pool.swift +++ b/Passepartout/Sources/Services/Pool.swift @@ -74,7 +74,7 @@ public struct Pool: Codable, Comparable, CustomStringConvertible { // MARK: Comparable public static func <(lhs: Pool, rhs: Pool) -> Bool { - return lhs.localizedName < rhs.localizedName + return lhs.localizedCountryArea < rhs.localizedCountryArea } // MARK: CustomStringConvertible @@ -91,6 +91,14 @@ extension Pool { return Utils.localizedCountry(country) } + public var localizedCountryArea: String { + let countryString = localizedCountry + guard let area = area else { + return countryString + } + return String.init(format: Pool.localizedFormat, countryString, area.uppercased()) + } + public var localizedName: String { // // XXX: name from API is not localized @@ -98,11 +106,7 @@ extension Pool { // return name // } - let countryString = localizedCountry - guard let area = area else { - return countryString - } - return String.init(format: Pool.localizedFormat, countryString, area.uppercased()) -// return countryString + return localizedCountryArea +// return localizedCountry } } From 9a788ae0c83044fd9d45c5a105a82bb1737a0575 Mon Sep 17 00:00:00 2001 From: Davide De Rosa Date: Thu, 21 Mar 2019 11:22:22 +0100 Subject: [PATCH 5/5] Update bundled infra with areas --- Passepartout/Resources/Web/net/pia.json | 2 +- Passepartout/Resources/Web/net/tunnelbear.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Passepartout/Resources/Web/net/pia.json b/Passepartout/Resources/Web/net/pia.json index 970057c5..76b4d30e 100644 --- a/Passepartout/Resources/Web/net/pia.json +++ b/Passepartout/Resources/Web/net/pia.json @@ -1 +1 @@ -{"pools":[{"id":"us-california","name":"US California","country":"US","hostname":"us-california.privateinternetaccess.com","addrs":[1540337591,1540337658,3119863747,1540337458,3119863734,1540337527,1540337511,1540337530,1540337583,1540337657,1540337463,3119863760,1540337518]},{"id":"us-east","name":"US East","country":"US","hostname":"us-east.privateinternetaccess.com","addrs":[3258711028,3258710954,3258711024,3258711004,3258710866,3240492343,3258710920,3240492354,3240492360,3258710853,3258710969,3240492359,3258710864]},{"id":"us-midwest","name":"US Midwest","country":"US","hostname":"us-midwest.privateinternetaccess.com","addrs":[3346297743,3346297749,3346297742,3346297734,1757976904,1757976910,3346297737,3346297730,1757976911,1757976945,3346297747,3346297744,3346297731]},{"id":"us-chicago","name":"US Chicago","country":"US","hostname":"us-chicago.privateinternetaccess.com","addrs":[3346297742,3346297745,3346297747,1757976909,3346297743,3346297730,1757976904,3346297736,3346297748,3346297746,3346297732,1757976907,3346297734]},{"id":"us-texas","name":"US Texas","country":"US","hostname":"us-texas.privateinternetaccess.com","addrs":[2732076551,2732076581,2732076547,2732076579,2732076563,2732076631,2732076666,2732076548,2732076609,2732076555,2732076635,2732076580,2732076571]},{"id":"us-florida","name":"US Florida","country":"US","hostname":"us-florida.privateinternetaccess.com","addrs":[3240492081,3240492154,3240492149,3240492056,3240492035,3240492146,3240492138,3240492109,3240492157,3240492041,3240492058,3240492087,3240492155]},{"id":"us-seattle","name":"US Seattle","country":"US","hostname":"us-seattle.privateinternetaccess.com","addrs":[1757977134,1757977140,1757977180,1757977103,1757977158,1757977145,1757977177,1757977167,1757977114,1757977144,1757977186,1757977184,1757977174]},{"id":"us-west","name":"US West","country":"US","hostname":"us-west.privateinternetaccess.com","addrs":[1757976363,1757976404,1757976322,1757976392,1757976333,1757976412,1757976365,1757976338,1757976410,1757976406,1757976327,1757976375,1757976378]},{"id":"us-siliconvalley","name":"US Silicon Valley","country":"US","hostname":"us-siliconvalley.privateinternetaccess.com","addrs":[3346298517,3346298573,3346298567,3346298570,3346298500,3346298524,3346298611,3346298530,3346298598,3346298554,3346298549,3346298518,3346298619]},{"id":"us-newyorkcity","name":"US New York City","country":"US","hostname":"us-newyorkcity.privateinternetaccess.com","addrs":[1807148825,3512676886,3512676885,3512677063,3512676954,3512677009,3512676877,3512676999,3512676932,1807148823,3512677010,3512676920,3512676960]},{"id":"us-atlanta","name":"US Atlanta","country":"US","hostname":"us-atlanta.privateinternetaccess.com","addrs":[1114875913,1114876401,1114875928,1114875914,1114876400,1114875931,1114876377,1114876358,1114876366,1114876372,1114876370,1114876364,1114876386]},{"id":"us-lasvegas","name":"US Las Vegas","country":"US","hostname":"us-lasvegas.privateinternetaccess.com","addrs":[3347003478,3347003513,3347003474,2734418953,3347003475,2734418946,3347003481,3347003477,3347003514,2734418947,3347003508,3347003506,3347003483]},{"id":"us-houston","name":"US Houston","country":"US","hostname":"us-houston.privateinternetaccess.com","addrs":[3455817490,3455816730,3455817370,3455817378,3455816882,3455816842,3455817514,3455817362,3455816850,3455816770,3455816794,3455816834,3455817410]},{"id":"uk-london","name":"UK London","country":"GB","hostname":"uk-london.privateinternetaccess.com","addrs":[1508808198,1508809453,1508809445,1508808216,1508809464,1508809338,1508809467,1508809238,1508808195,1508809335,1508809459,1508808196,1508809401]},{"id":"uk-southampton","name":"UK Southampton","country":"GB","hostname":"uk-southampton.privateinternetaccess.com","addrs":[521724602,521724640,521724639,521724637,521724625,521724636,521724623,521724619,521724653,521724620,521724655,521724552,521724647]},{"id":"uk-manchester","name":"UK Manchester","country":"GB","hostname":"uk-manchester.privateinternetaccess.com","addrs":[1508805389,1508805429,1508805387,1508804904,1508804902,1508805433,1508805432,1508805386,1508804905,1508805388,1508805434,1508805382,1508804906]},{"id":"ca-toronto","name":"CA Toronto","country":"CA","hostname":"ca-toronto.privateinternetaccess.com","addrs":[2892120925,2892120868,2892120862,2892120920,2892120834,2892120891,2892120857,2892120856,2892120859,2892120884,2892120907,2892120916,2892120853]},{"id":"ca-montreal","name":"CA Montreal","country":"CA","hostname":"ca-montreal.privateinternetaccess.com","addrs":[3353737624,3353737628,3353737660,3353737637,3353737652,3353737629,3353737645,3353737627,3353737636,3353737671,3353737648,3353737663,3353737621]},{"id":"ca-vancouver","name":"CA Vancouver","country":"CA","hostname":"ca-vancouver.privateinternetaccess.com","addrs":[1807072589,2891130991,2891130988,2891130985,2891130995,1807072586,1807072587,1807072584,2891130905,2891130987,1807072592,1807072595,2891130900]},{"id":"au-sydney","name":"AU Sydney","country":"AU","hostname":"au-sydney.privateinternetaccess.com","addrs":[2302409956,2302409877,2302409884,2302409925,2302409894,2302409954,2302409906,2302409909,2302409874,2302409916,2302409875,2302409871,2302409918]},{"id":"au-melbourne","name":"AU Melbourne","country":"AU","hostname":"au-melbourne.privateinternetaccess.com","addrs":[2818663373,2818657033,2818666580,2818663364,2818657062,2818657041,2818657071,2818657084,2818663369,2818657048,2818663408,2818657046,2818657066]},{"id":"de-berlin","name":"DE Berlin","country":"DE","hostname":"de-berlin.privateinternetaccess.com","addrs":[3249559162,3118890995,3118890986,3249559202,3249559182,3118890988,3118890981,3118890993,3118890980,3249559218,3249559198,3118890990,3249559190]},{"id":"de-frankfurt","name":"DE Frankfurt","country":"DE","hostname":"de-frankfurt.privateinternetaccess.com","addrs":[3118220966,3118220941,3118220962,3118220954,3118220952,3118220934,3118220937,3118220944,3118220965,3118220955,3118220945,3118220931,3118220948]},{"id":"nz","name":"New Zealand","country":"NZ","hostname":"nz.privateinternetaccess.com","addrs":[1743215426,1743215275,1743215274,1743215428,1743215277,1743215278,1743215427,1743215434,1743215398,1743215394,1743215430,1743215395,1743215429]},{"id":"nl","name":"Netherlands","country":"NL","hostname":"nl.privateinternetaccess.com","addrs":[1436544219,782679789,782666370,3110808610,1841928912,1841928880,782679786,782679784,1841928855,782678767,1841928430,1841928848,782666208]},{"id":"sweden","name":"Sweden","country":"SE","hostname":"sweden.privateinternetaccess.com","addrs":[787881391,787905347,787905298]},{"id":"no","name":"Norway","country":"NO","hostname":"no.privateinternetaccess.com","addrs":[3120390627,1382423413,1382423373,1382423421,1382423420,1382423350,1382423352,1382423351,1382423347,1382423410,1382423346,1382423370,1382423348]},{"id":"denmark","name":"Denmark","country":"DK","hostname":"denmark.privateinternetaccess.com","addrs":[1382421673,1382421683,1382421734,1382421680,1382421669,1382421674,1382421686,1382421685,1382421676,1382421667,1382421668,1382421682,1382421687]},{"id":"fi","name":"Finland","country":"FI","hostname":"fi.privateinternetaccess.com","addrs":[3223871247,3223871240,3223871241,3223871237,3223871234,3223871236,3223871244,3223871248,3223871246,3223871245,3223871250,3223871238]},{"id":"swiss","name":"Switzerland","country":"CH","hostname":"swiss.privateinternetaccess.com","addrs":[3117722295,3117722294,3117722293,1535412270,3118890292,3118890293,3117722291,3114053470,3118890285,3118890275,3118890323,3118890281,1382422691]},{"id":"france","name":"France","country":"FR","hostname":"france.privateinternetaccess.com","addrs":[3267099059,3267099060,3267098916,3267098924,3267098934,3267098925,3261295251,3261295254,3267098930,3267098919,3267098923,3267098920,3267099064]},{"id":"belgium","name":"Belgium","country":"BE","hostname":"belgium.privateinternetaccess.com","addrs":[3118994717,1307819795,3118994715,1307819799,1307819798,3118994714,1307819802,1307819797,1307819803,1307819794]},{"id":"austria","name":"Austria","country":"AT","hostname":"austria.privateinternetaccess.com","addrs":[3117949667,3117949676,3117949668,3117949669,3117949677,3117603739,3117603738,3117949678,3117949666,3117603731,3117603740,3117949670,3117949672]},{"id":"czech","name":"Czech Republic","country":"CZ","hostname":"czech.privateinternetaccess.com","addrs":[1508817635,1508817637,3117949763,3117949764,3119646237,3119646234,3119646236,1508817636,3117949766,3119646235,3119646238,3117949762,1508817638]},{"id":"ireland","name":"Ireland","country":"IE","hostname":"ireland.privateinternetaccess.com","addrs":[391937858,391937834,391937794,391937826,391937810,391937850]},{"id":"italy","name":"Italy","country":"IT","hostname":"italy.privateinternetaccess.com","addrs":[1382421976,1382421979,1382421973,1382421858,1382421971,1382421972,1382421975,1382421970]},{"id":"spain","name":"Spain","country":"ES","hostname":"spain.privateinternetaccess.com","addrs":[628659286,3261294619,3261294622,3118890035,3118890038,3118890034,3285085178]},{"id":"ro","name":"Romania","country":"RO","hostname":"ro.privateinternetaccess.com","addrs":[3117603431,1449728333,1449728324,1449728326,3117603426,3106737278,1588630562,1495336998,1449728323,1449728322,1449728325,3117603428,3117603433]},{"id":"hungary","name":"Hungary","country":"HU","hostname":"hungary.privateinternetaccess.com","addrs":[3112180245,3112180242,3112180243,3112180248,3116200546,3112180246,3112180244,3112180247]},{"id":"poland","name":"Poland","country":"PL","hostname":"poland.privateinternetaccess.com","addrs":[3119830725,3119830724,3119830722,3119830728,3119830726,3119830723,3119830542,3119830727]},{"id":"turkey","name":"Turkey","country":"TR","hostname":"turkey.privateinternetaccess.com","addrs":[2956269010,2956269013,2956269011,2956269012]},{"id":"hk","name":"Hong Kong","country":"HK","hostname":"hk.privateinternetaccess.com","addrs":[2001831709,2001862129,2001831708,2001831727,2001862130,2001862117,2001831698,2001831733,2001862102]},{"id":"sg","name":"Singapore","country":"SG","hostname":"sg.privateinternetaccess.com","addrs":[3636029320,3636029324,2001814267,2001805086,2001805081,2001814215,3636029326,2001814230,2001814240,2001805071,2001805118,3636029323,2001805074]},{"id":"japan","name":"Japan","country":"JP","hostname":"japan.privateinternetaccess.com","addrs":[1741741187,1741741190,1741741195,1741741191,1741741188,1741741189,1741741193,1741741192,1741741198,1741741196,1741741197]},{"id":"israel","name":"Israel","country":"IL","hostname":"israel.privateinternetaccess.com","addrs":[531147918,531147921,531147912,531147919,531147923,531147922]},{"id":"mexico","name":"Mexico","country":"MX","hostname":"mexico.privateinternetaccess.com","addrs":[2839085299,2839085271,2839085285,2839085268,2839085277,2839085266,2839085255,2839085292,2839085280,2839085256,2839085263,2839085259,2839085267]},{"id":"brazil","name":"Brazil","country":"BR","hostname":"brazil.privateinternetaccess.com","addrs":[2979696999,2979695558,2979695556,2979696996,2979695559,2979697001,2979695560,2979695562,2979695554,2979695557,2979696997,2979696994,2979696998]},{"id":"in","name":"India","country":"IN","hostname":"in.privateinternetaccess.com","addrs":[2323690570,2323690690,2323690634,2323690618,2323690562,2323690594,2323690578]}],"presets":[{"id":"recommended","name":"Recommended","comment":"128-bit encryption","cfg":{"ep":["UDP:1194","UDP:8080","UDP:9201","UDP:53","UDP:1198","UDP:1197","TCP:443","TCP:110","TCP:80","TCP:502","TCP:501"],"cipher":"AES-128-GCM","auth":"SHA1","ca":"-----BEGIN CERTIFICATE-----\nMIIFqzCCBJOgAwIBAgIJAKZ7D5Yv87qDMA0GCSqGSIb3DQEBDQUAMIHoMQswCQYD\nVQQGEwJVUzELMAkGA1UECBMCQ0ExEzARBgNVBAcTCkxvc0FuZ2VsZXMxIDAeBgNV\nBAoTF1ByaXZhdGUgSW50ZXJuZXQgQWNjZXNzMSAwHgYDVQQLExdQcml2YXRlIElu\ndGVybmV0IEFjY2VzczEgMB4GA1UEAxMXUHJpdmF0ZSBJbnRlcm5ldCBBY2Nlc3Mx\nIDAeBgNVBCkTF1ByaXZhdGUgSW50ZXJuZXQgQWNjZXNzMS8wLQYJKoZIhvcNAQkB\nFiBzZWN1cmVAcHJpdmF0ZWludGVybmV0YWNjZXNzLmNvbTAeFw0xNDA0MTcxNzM1\nMThaFw0zNDA0MTIxNzM1MThaMIHoMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0Ex\nEzARBgNVBAcTCkxvc0FuZ2VsZXMxIDAeBgNVBAoTF1ByaXZhdGUgSW50ZXJuZXQg\nQWNjZXNzMSAwHgYDVQQLExdQcml2YXRlIEludGVybmV0IEFjY2VzczEgMB4GA1UE\nAxMXUHJpdmF0ZSBJbnRlcm5ldCBBY2Nlc3MxIDAeBgNVBCkTF1ByaXZhdGUgSW50\nZXJuZXQgQWNjZXNzMS8wLQYJKoZIhvcNAQkBFiBzZWN1cmVAcHJpdmF0ZWludGVy\nbmV0YWNjZXNzLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPXD\nL1L9tX6DGf36liA7UBTy5I869z0UVo3lImfOs/GSiFKPtInlesP65577nd7UNzzX\nlH/P/CnFPdBWlLp5ze3HRBCc/Avgr5CdMRkEsySL5GHBZsx6w2cayQ2EcRhVTwWp\ncdldeNO+pPr9rIgPrtXqT4SWViTQRBeGM8CDxAyTopTsobjSiYZCF9Ta1gunl0G/\n8Vfp+SXfYCC+ZzWvP+L1pFhPRqzQQ8k+wMZIovObK1s+nlwPaLyayzw9a8sUnvWB\n/5rGPdIYnQWPgoNlLN9HpSmsAcw2z8DXI9pIxbr74cb3/HSfuYGOLkRqrOk6h4RC\nOfuWoTrZup1uEOn+fw8CAwEAAaOCAVQwggFQMB0GA1UdDgQWBBQv63nQ/pJAt5tL\ny8VJcbHe22ZOsjCCAR8GA1UdIwSCARYwggESgBQv63nQ/pJAt5tLy8VJcbHe22ZO\nsqGB7qSB6zCB6DELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRMwEQYDVQQHEwpM\nb3NBbmdlbGVzMSAwHgYDVQQKExdQcml2YXRlIEludGVybmV0IEFjY2VzczEgMB4G\nA1UECxMXUHJpdmF0ZSBJbnRlcm5ldCBBY2Nlc3MxIDAeBgNVBAMTF1ByaXZhdGUg\nSW50ZXJuZXQgQWNjZXNzMSAwHgYDVQQpExdQcml2YXRlIEludGVybmV0IEFjY2Vz\nczEvMC0GCSqGSIb3DQEJARYgc2VjdXJlQHByaXZhdGVpbnRlcm5ldGFjY2Vzcy5j\nb22CCQCmew+WL/O6gzAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBDQUAA4IBAQAn\na5PgrtxfwTumD4+3/SYvwoD66cB8IcK//h1mCzAduU8KgUXocLx7QgJWo9lnZ8xU\nryXvWab2usg4fqk7FPi00bED4f4qVQFVfGfPZIH9QQ7/48bPM9RyfzImZWUCenK3\n7pdw4Bvgoys2rHLHbGen7f28knT2j/cbMxd78tQc20TIObGjo8+ISTRclSTRBtyC\nGohseKYpTS9himFERpUgNtefvYHbn70mIOzfOJFTVqfrptf9jXa9N8Mpy3ayfodz\n1wiqdteqFXkTYoSDctgKMiZ6GdocK9nMroQipIQtpnwd4yBDWIyC6Bvlkrq5TQUt\nYDQ8z9v+DMO6iwyIDRiU\n-----END CERTIFICATE-----\n","frame":1,"ping":10,"reneg":3600,"pia":true}},{"id":"strong","name":"Strong","comment":"256-bit encryption (slower)","cfg":{"ep":["UDP:1194","UDP:8080","UDP:9201","UDP:53","UDP:1198","UDP:1197","TCP:443","TCP:110","TCP:80","TCP:502","TCP:501"],"cipher":"AES-256-GCM","auth":"SHA256","ca":"-----BEGIN CERTIFICATE-----\nMIIHqzCCBZOgAwIBAgIJAJ0u+vODZJntMA0GCSqGSIb3DQEBDQUAMIHoMQswCQYD\nVQQGEwJVUzELMAkGA1UECBMCQ0ExEzARBgNVBAcTCkxvc0FuZ2VsZXMxIDAeBgNV\nBAoTF1ByaXZhdGUgSW50ZXJuZXQgQWNjZXNzMSAwHgYDVQQLExdQcml2YXRlIElu\ndGVybmV0IEFjY2VzczEgMB4GA1UEAxMXUHJpdmF0ZSBJbnRlcm5ldCBBY2Nlc3Mx\nIDAeBgNVBCkTF1ByaXZhdGUgSW50ZXJuZXQgQWNjZXNzMS8wLQYJKoZIhvcNAQkB\nFiBzZWN1cmVAcHJpdmF0ZWludGVybmV0YWNjZXNzLmNvbTAeFw0xNDA0MTcxNzQw\nMzNaFw0zNDA0MTIxNzQwMzNaMIHoMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0Ex\nEzARBgNVBAcTCkxvc0FuZ2VsZXMxIDAeBgNVBAoTF1ByaXZhdGUgSW50ZXJuZXQg\nQWNjZXNzMSAwHgYDVQQLExdQcml2YXRlIEludGVybmV0IEFjY2VzczEgMB4GA1UE\nAxMXUHJpdmF0ZSBJbnRlcm5ldCBBY2Nlc3MxIDAeBgNVBCkTF1ByaXZhdGUgSW50\nZXJuZXQgQWNjZXNzMS8wLQYJKoZIhvcNAQkBFiBzZWN1cmVAcHJpdmF0ZWludGVy\nbmV0YWNjZXNzLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALVk\nhjumaqBbL8aSgj6xbX1QPTfTd1qHsAZd2B97m8Vw31c/2yQgZNf5qZY0+jOIHULN\nDe4R9TIvyBEbvnAg/OkPw8n/+ScgYOeH876VUXzjLDBnDb8DLr/+w9oVsuDeFJ9K\nV2UFM1OYX0SnkHnrYAN2QLF98ESK4NCSU01h5zkcgmQ+qKSfA9Ny0/UpsKPBFqsQ\n25NvjDWFhCpeqCHKUJ4Be27CDbSl7lAkBuHMPHJs8f8xPgAbHRXZOxVCpayZ2SND\nfCwsnGWpWFoMGvdMbygngCn6jA/W1VSFOlRlfLuuGe7QFfDwA0jaLCxuWt/BgZyl\np7tAzYKR8lnWmtUCPm4+BtjyVDYtDCiGBD9Z4P13RFWvJHw5aapx/5W/CuvVyI7p\nKwvc2IT+KPxCUhH1XI8ca5RN3C9NoPJJf6qpg4g0rJH3aaWkoMRrYvQ+5PXXYUzj\ntRHImghRGd/ydERYoAZXuGSbPkm9Y/p2X8unLcW+F0xpJD98+ZI+tzSsI99Zs5wi\njSUGYr9/j18KHFTMQ8n+1jauc5bCCegN27dPeKXNSZ5riXFL2XX6BkY68y58UaNz\nmeGMiUL9BOV1iV+PMb7B7PYs7oFLjAhh0EdyvfHkrh/ZV9BEhtFa7yXp8XR0J6vz\n1YV9R6DYJmLjOEbhU8N0gc3tZm4Qz39lIIG6w3FDAgMBAAGjggFUMIIBUDAdBgNV\nHQ4EFgQUrsRtyWJftjpdRM0+925Y6Cl08SUwggEfBgNVHSMEggEWMIIBEoAUrsRt\nyWJftjpdRM0+925Y6Cl08SWhge6kgeswgegxCzAJBgNVBAYTAlVTMQswCQYDVQQI\nEwJDQTETMBEGA1UEBxMKTG9zQW5nZWxlczEgMB4GA1UEChMXUHJpdmF0ZSBJbnRl\ncm5ldCBBY2Nlc3MxIDAeBgNVBAsTF1ByaXZhdGUgSW50ZXJuZXQgQWNjZXNzMSAw\nHgYDVQQDExdQcml2YXRlIEludGVybmV0IEFjY2VzczEgMB4GA1UEKRMXUHJpdmF0\nZSBJbnRlcm5ldCBBY2Nlc3MxLzAtBgkqhkiG9w0BCQEWIHNlY3VyZUBwcml2YXRl\naW50ZXJuZXRhY2Nlc3MuY29tggkAnS7684Nkme0wDAYDVR0TBAUwAwEB/zANBgkq\nhkiG9w0BAQ0FAAOCAgEAJsfhsPk3r8kLXLxY+v+vHzbr4ufNtqnL9/1Uuf8NrsCt\npXAoyZ0YqfbkWx3NHTZ7OE9ZRhdMP/RqHQE1p4N4Sa1nZKhTKasV6KhHDqSCt/dv\nEm89xWm2MVA7nyzQxVlHa9AkcBaemcXEiyT19XdpiXOP4Vhs+J1R5m8zQOxZlV1G\ntF9vsXmJqWZpOVPmZ8f35BCsYPvv4yMewnrtAC8PFEK/bOPeYcKN50bol22QYaZu\nLfpkHfNiFTnfMh8sl/ablPyNY7DUNiP5DRcMdIwmfGQxR5WEQoHL3yPJ42LkB5zs\n6jIm26DGNXfwura/mi105+ENH1CaROtRYwkiHb08U6qLXXJz80mWJkT90nr8Asj3\n5xN2cUppg74nG3YVav/38P48T56hG1NHbYF5uOCske19F6wi9maUoto/3vEr0rnX\nJUp2KODmKdvBI7co245lHBABWikk8VfejQSlCtDBXn644ZMtAdoxKNfR2WTFVEwJ\niyd1Fzx0yujuiXDROLhISLQDRjVVAvawrAtLZWYK31bY7KlezPlQnl/D9Asxe85l\n8jO5+0LdJ6VyOs/Hd4w52alDW/MFySDZSfQHMTIc30hLBJ8OnCEIvluVQQ2UQvoW\n+no177N9L2Y+M9TcTA62ZyMXShHQGeh20rb4kK8f+iFX8NxtdHVSkxMEFSfDDyQ=\n-----END CERTIFICATE-----\n","frame":1,"ping":10,"reneg":3600,"pia":true}}],"defaults":{"username":"p1234567","pool":"us-east","preset":"recommended"},"build":1281,"name":"PIA"} \ No newline at end of file +{"pools":[{"id":"us-california","name":"US California","country":"US","hostname":"us-california.privateinternetaccess.com","addrs":[1540337609,1540337656,1540337527,1540337585,3119863733,3119863761,3119863721,1540337452,1540337515,3119863734,1540337582,1540337464,3119863758],"area":"california"},{"id":"us-east","name":"US East","country":"US","hostname":"us-east.privateinternetaccess.com","addrs":[3258710791,3240492397,3240492423,3258711022,3240492309,3258710894,3258710961,3258710994,3258710861,3258710932,3240492425,3258710801,3258710871],"area":"east"},{"id":"us-midwest","name":"US Midwest","country":"US","hostname":"us-midwest.privateinternetaccess.com","addrs":[3346297749,1757976909,1757976921,1757976914,1757976920,1757976929,3346297734,1757976915,3346297744,1757976913,1757976912,1757976923,3346297736],"area":"midwest"},{"id":"us-chicago","name":"US Chicago","country":"US","hostname":"us-chicago.privateinternetaccess.com","addrs":[3346297736,1757976923,1757976912,1757976913,3346297744,1757976915,3346297734,1757976929,1757976920,1757976914,1757976921,1757976909,3346297749],"area":"chicago"},{"id":"us-texas","name":"US Texas","country":"US","hostname":"us-texas.privateinternetaccess.com","addrs":[2732076721,2732076629,2732076692,2732076638,2732076611,2732076704,2732076581,2732076578,2732076617,2732076655,2732076695,2732076612,2732076637],"area":"texas"},{"id":"us-florida","name":"US Florida","country":"US","hostname":"us-florida.privateinternetaccess.com","addrs":[3240492142,3240492082,3240492099,3240492093,3240492047,3240492034,3240492072,3240492154,3240492052,3240492157,3240492083,3240492146,3240492140],"area":"florida"},{"id":"us-seattle","name":"US Seattle","country":"US","hostname":"us-seattle.privateinternetaccess.com","addrs":[1757977177,1757977126,1757977098,1757977130,1757977128,1757977156,1757977108,1757977136,1757977096,1757977116,1757977141,1757977168,1757977171],"area":"seattle"},{"id":"us-west","name":"US West","country":"US","hostname":"us-west.privateinternetaccess.com","addrs":[1757976369,1757976376,1757976362,1757976326,1757976400,1757976395,1757976345,1757976398,1757976404,1757976361,1757976412,1757976408,1757976353],"area":"west"},{"id":"us-siliconvalley","name":"US Silicon Valley","country":"US","hostname":"us-siliconvalley.privateinternetaccess.com","addrs":[3346298501,3346298569,3346298604,3346298605,3346298522,3346298546,3346298611,3346298568,3346298548,3346298583,3346298570,3346298566,3346298554],"area":"siliconvalley"},{"id":"us-newyorkcity","name":"US New York City","country":"US","hostname":"us-newyorkcity.privateinternetaccess.com","addrs":[3512676928,3512677063,3512676917,1807148851,3512676932,3512676918,3512677013,3512676921,1807148821,3512676890,3512676930,1807148839,1807148812],"area":"newyorkcity"},{"id":"us-atlanta","name":"US Atlanta","country":"US","hostname":"us-atlanta.privateinternetaccess.com","addrs":[1114876360,1114876392,1114876381,1114875906,1114876383,1114876395,1114876367,1114875914,1114875923,1114875921,1114875925,1114876371,1114876399],"area":"atlanta"},{"id":"us-lasvegas","name":"US Las Vegas","country":"US","hostname":"us-lasvegas.privateinternetaccess.com","addrs":[3347003511,3347003506,3347003479,3347003477,3347003510,3347003515,3347003478,3347003483,3347003508,2734418947,3347003481,2734418950,3347003475],"area":"lasvegas"},{"id":"us-houston","name":"US Houston","country":"US","hostname":"us-houston.privateinternetaccess.com","addrs":[3455817434,3455817370,3455817450,3455816754,3455817498,3455816826,3455816858,3455817458,3455816746,3455817386,3455816770,3455816850,3455817418],"area":"houston"},{"id":"uk-london","name":"UK London","country":"GB","hostname":"uk-london.privateinternetaccess.com","addrs":[1508808201,1508809390,3120390750,1508809338,1508809399,1508809467,1508809447,1508808203,1508809239,1508809397,1508809395,1508809466,1508809334],"area":"london"},{"id":"uk-southampton","name":"UK Southampton","country":"GB","hostname":"uk-southampton.privateinternetaccess.com","addrs":[521724618,521724624,521725895,521724634,521724657,521724562,1489692534,521724620,521724661,521724633,521724662,521724648,521724604],"area":"southampton"},{"id":"uk-manchester","name":"UK Manchester","country":"GB","hostname":"uk-manchester.privateinternetaccess.com","addrs":[1508805380,1508804902,1508805382,1508805386,1508805430,1508804907,1508805388,1508804903,1508804906,1508805387,1508804901,1508805383,1508805381],"area":"manchester"},{"id":"ca-toronto","name":"CA Toronto","country":"CA","hostname":"ca-toronto.privateinternetaccess.com","addrs":[2892120940,2892120884,2892120925,2892120866,2892120941,2892120856,2892120871,2892120886,2892120841,2892120901,2892120893,2892120836,2892120864],"area":"toronto"},{"id":"ca-montreal","name":"CA Montreal","country":"CA","hostname":"ca-montreal.privateinternetaccess.com","addrs":[3353737671,3353737663,3353737656,3353737672,3353737652,3353737624,3353737661,3353737638,3353737650,3353737635,3353737642,3353737640,3353737643],"area":"montreal"},{"id":"ca-vancouver","name":"CA Vancouver","country":"CA","hostname":"ca-vancouver.privateinternetaccess.com","addrs":[2891130979,2891130904,1807072598,1807072587,2891130980,2891130989,1807072594,2891130994,2891130992,2891130899,2891130984,2891130907,2891130906],"area":"vancouver"},{"id":"au-sydney","name":"AU Sydney","country":"AU","hostname":"au-sydney.privateinternetaccess.com","addrs":[2302409953,2302409875,2302409873,2302409911,2302409896,2302409898,2302409918,2302409901,2302409912,2302409868,2302409864,2302409880,2302409958],"area":"sydney"},{"id":"au-melbourne","name":"AU Melbourne","country":"AU","hostname":"au-melbourne.privateinternetaccess.com","addrs":[2818657075,2818666570,2818663386,2818657068,2818657081,2818666580,2818657065,2818657086,2818657046,2818657064,2818663415,2818657074,2818657085],"area":"melbourne"},{"id":"de-berlin","name":"DE Berlin","country":"DE","hostname":"de-berlin.privateinternetaccess.com","addrs":[3118890982,3118890989,3118890980,3249559214,3118890988,3249559222,3249559163,3118890991,3257166854,3118890994,3249559182,3118890981,3249559210],"area":"berlin"},{"id":"de-frankfurt","name":"DE Frankfurt","country":"DE","hostname":"de-frankfurt.privateinternetaccess.com","addrs":[3118220974,3118220930,3118220973,3118220950,3118220943,3118220970,3118220941,3118220952,3118220944,3118220962,3118220942,3118220971,3118220969],"area":"frankfurt"},{"id":"nz","name":"New Zealand","country":"NZ","hostname":"nz.privateinternetaccess.com","addrs":[1743215276,1743215434,1743215395,1743215278,1743215398,1743215428,1743215429,1743215430,1743215277,1743215275,1743215426,1743215394,1743215274]},{"id":"nl","name":"Netherlands","country":"NL","hostname":"nl.privateinternetaccess.com","addrs":[782679759,782666228,782679281,782679751,1841928908,3110808608,782666386,782666216,1841928418,782666226,782679243,782679280,782666378]},{"id":"sweden","name":"Sweden","country":"SE","hostname":"sweden.privateinternetaccess.com","addrs":[787905416,787905353,787905434,787905316,787905425,787905347,787905483,787905289,787905440,787905365,787905428,787905413,787881391]},{"id":"no","name":"Norway","country":"NO","hostname":"no.privateinternetaccess.com","addrs":[1382423347,1382423353,1382423352,1382423421,1382423410,3120390627,1382423349,1382423370,3120390626,3120390628,1382423373,1382423413,1382423372]},{"id":"denmark","name":"Denmark","country":"DK","hostname":"denmark.privateinternetaccess.com","addrs":[1382421678,1382421674,1382421669,1382421683,1382421686,1382421734,1382421688,1382421679,1382421670,1382421671,1382421672,1382421682,1382421667]},{"id":"fi","name":"Finland","country":"FI","hostname":"fi.privateinternetaccess.com","addrs":[3223871250,3223871244,3223871237,3223871248,3223871247,3223871236,3223871240,3223871234,3223871238,3223871245,3223871239,3223871241,3223871246]},{"id":"swiss","name":"Switzerland","country":"CH","hostname":"swiss.privateinternetaccess.com","addrs":[3117722302,3114053464,1382422696,3118890334,3114053466,3118890285,3117722295,3118890282,3114053458,3118890323,3118890276,3118890291,1535412275]},{"id":"france","name":"France","country":"FR","hostname":"france.privateinternetaccess.com","addrs":[3267098939,3267099063,3267098930,3267098928,3267098920,3261295251,3267099064,3267098921,3267098942,3267098941,3267098924,3267099058,3267098933]},{"id":"belgium","name":"Belgium","country":"BE","hostname":"belgium.privateinternetaccess.com","addrs":[3110648346,1307819796,1307819795,3118994715,1307819797,3118994714,1307819799,1307819803,1307819798,3118994716,3118994717,1307819794,1307819802]},{"id":"austria","name":"Austria","country":"AT","hostname":"austria.privateinternetaccess.com","addrs":[3117949667,3117603739,3117949673,3117949671,3117603738,3117949670,3117949666,3117603731,3117949668,3117949672,3117603740,3117949676,3117949678]},{"id":"czech","name":"Czech Republic","country":"CZ","hostname":"czech.privateinternetaccess.com","addrs":[1508817637,3117949766,3119646237,1508817634,3119646236,3119646235,1508817635,1508817638,1508817636,3117949764,3117949763,3117949765,3117949762]},{"id":"ireland","name":"Ireland","country":"IE","hostname":"ireland.privateinternetaccess.com","addrs":[391937810,391937858,391937826,391937794,391937834,391937850,391937802,391937842]},{"id":"italy","name":"Italy","country":"IT","hostname":"italy.privateinternetaccess.com","addrs":[1382421858,1382421972,1382421978,1382421976,1382421975,1382421977,1382421974,1382421971,1382421973,1382421970,1382421979]},{"id":"spain","name":"Spain","country":"ES","hostname":"spain.privateinternetaccess.com","addrs":[3118890035,3118890037,3118890038,3118890034,3118890036,628659286,3261294619,3261294621,3261294622,3285085178]},{"id":"ro","name":"Romania","country":"RO","hostname":"ro.privateinternetaccess.com","addrs":[1449728334,1588630562,1449728332,1449728333,3117603427,3117603433,3117603432,3117603426,3117603431,1449728325,1449728326,1588630563,3117603428]},{"id":"hungary","name":"Hungary","country":"HU","hostname":"hungary.privateinternetaccess.com","addrs":[3112180246,3112180248,3112180244,3116200546,3112180245,3112180247,3112180243,3112180242]},{"id":"poland","name":"Poland","country":"PL","hostname":"poland.privateinternetaccess.com","addrs":[3119830723,3119830726,3119830542,3119830724,3119830725,3119830728,3119830727,3119830722]},{"id":"turkey","name":"Turkey","country":"TR","hostname":"turkey.privateinternetaccess.com","addrs":[2956269012,2956269013,2956269010,2956269011]},{"id":"hk","name":"Hong Kong","country":"HK","hostname":"hk.privateinternetaccess.com","addrs":[2001862129,2001831709,2001862117,2001862130,2001831727,2001862102,2001862118,2001831733,2001831698,2001831708,2001831685]},{"id":"sg","name":"Singapore","country":"SG","hostname":"sg.privateinternetaccess.com","addrs":[3636029356,3636029323,2001814223,2001814261,2001814230,2001805062,3636029326,2001805071,2001805118,2001805074,3636029320,2001805060,2001814210]},{"id":"japan","name":"Japan","country":"JP","hostname":"japan.privateinternetaccess.com","addrs":[1741741187,1741741190,1741741186,1741741192,1741741196,1741741189,1741741197,1741741199,1741741188,1741741198,1741741191,1741741193,1741741195]},{"id":"israel","name":"Israel","country":"IL","hostname":"israel.privateinternetaccess.com","addrs":[531147919,531147918,531147912,531147923,531147921,531147922]},{"id":"mexico","name":"Mexico","country":"MX","hostname":"mexico.privateinternetaccess.com","addrs":[2839085269,2839085270,2839085286,2839085255,2839085259,2839085285,2839085261,2839085258,2839085272,2839085289,2839085299,2839085291,2839085275]},{"id":"brazil","name":"Brazil","country":"BR","hostname":"brazil.privateinternetaccess.com","addrs":[2979696999,2979695558,2979696996,2979696997,2979695554,2979695557,2979695559,2979695562,2979697001,2979695560,2979695555,2979695556,2979696998]},{"id":"in","name":"India","country":"IN","hostname":"in.privateinternetaccess.com","addrs":[2323690634,2323690690,2323690618,2323690570,2323690578,2323690562,2323690594,2323690586]}],"presets":[{"id":"recommended","name":"Recommended","comment":"128-bit encryption","cfg":{"ep":["UDP:1194","UDP:8080","UDP:9201","UDP:53","UDP:1198","UDP:1197","TCP:443","TCP:110","TCP:80","TCP:502","TCP:501"],"cipher":"AES-128-GCM","auth":"SHA1","ca":"-----BEGIN CERTIFICATE-----\nMIIFqzCCBJOgAwIBAgIJAKZ7D5Yv87qDMA0GCSqGSIb3DQEBDQUAMIHoMQswCQYD\nVQQGEwJVUzELMAkGA1UECBMCQ0ExEzARBgNVBAcTCkxvc0FuZ2VsZXMxIDAeBgNV\nBAoTF1ByaXZhdGUgSW50ZXJuZXQgQWNjZXNzMSAwHgYDVQQLExdQcml2YXRlIElu\ndGVybmV0IEFjY2VzczEgMB4GA1UEAxMXUHJpdmF0ZSBJbnRlcm5ldCBBY2Nlc3Mx\nIDAeBgNVBCkTF1ByaXZhdGUgSW50ZXJuZXQgQWNjZXNzMS8wLQYJKoZIhvcNAQkB\nFiBzZWN1cmVAcHJpdmF0ZWludGVybmV0YWNjZXNzLmNvbTAeFw0xNDA0MTcxNzM1\nMThaFw0zNDA0MTIxNzM1MThaMIHoMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0Ex\nEzARBgNVBAcTCkxvc0FuZ2VsZXMxIDAeBgNVBAoTF1ByaXZhdGUgSW50ZXJuZXQg\nQWNjZXNzMSAwHgYDVQQLExdQcml2YXRlIEludGVybmV0IEFjY2VzczEgMB4GA1UE\nAxMXUHJpdmF0ZSBJbnRlcm5ldCBBY2Nlc3MxIDAeBgNVBCkTF1ByaXZhdGUgSW50\nZXJuZXQgQWNjZXNzMS8wLQYJKoZIhvcNAQkBFiBzZWN1cmVAcHJpdmF0ZWludGVy\nbmV0YWNjZXNzLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPXD\nL1L9tX6DGf36liA7UBTy5I869z0UVo3lImfOs/GSiFKPtInlesP65577nd7UNzzX\nlH/P/CnFPdBWlLp5ze3HRBCc/Avgr5CdMRkEsySL5GHBZsx6w2cayQ2EcRhVTwWp\ncdldeNO+pPr9rIgPrtXqT4SWViTQRBeGM8CDxAyTopTsobjSiYZCF9Ta1gunl0G/\n8Vfp+SXfYCC+ZzWvP+L1pFhPRqzQQ8k+wMZIovObK1s+nlwPaLyayzw9a8sUnvWB\n/5rGPdIYnQWPgoNlLN9HpSmsAcw2z8DXI9pIxbr74cb3/HSfuYGOLkRqrOk6h4RC\nOfuWoTrZup1uEOn+fw8CAwEAAaOCAVQwggFQMB0GA1UdDgQWBBQv63nQ/pJAt5tL\ny8VJcbHe22ZOsjCCAR8GA1UdIwSCARYwggESgBQv63nQ/pJAt5tLy8VJcbHe22ZO\nsqGB7qSB6zCB6DELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRMwEQYDVQQHEwpM\nb3NBbmdlbGVzMSAwHgYDVQQKExdQcml2YXRlIEludGVybmV0IEFjY2VzczEgMB4G\nA1UECxMXUHJpdmF0ZSBJbnRlcm5ldCBBY2Nlc3MxIDAeBgNVBAMTF1ByaXZhdGUg\nSW50ZXJuZXQgQWNjZXNzMSAwHgYDVQQpExdQcml2YXRlIEludGVybmV0IEFjY2Vz\nczEvMC0GCSqGSIb3DQEJARYgc2VjdXJlQHByaXZhdGVpbnRlcm5ldGFjY2Vzcy5j\nb22CCQCmew+WL/O6gzAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBDQUAA4IBAQAn\na5PgrtxfwTumD4+3/SYvwoD66cB8IcK//h1mCzAduU8KgUXocLx7QgJWo9lnZ8xU\nryXvWab2usg4fqk7FPi00bED4f4qVQFVfGfPZIH9QQ7/48bPM9RyfzImZWUCenK3\n7pdw4Bvgoys2rHLHbGen7f28knT2j/cbMxd78tQc20TIObGjo8+ISTRclSTRBtyC\nGohseKYpTS9himFERpUgNtefvYHbn70mIOzfOJFTVqfrptf9jXa9N8Mpy3ayfodz\n1wiqdteqFXkTYoSDctgKMiZ6GdocK9nMroQipIQtpnwd4yBDWIyC6Bvlkrq5TQUt\nYDQ8z9v+DMO6iwyIDRiU\n-----END CERTIFICATE-----\n","frame":1,"ping":10,"reneg":3600,"pia":true}},{"id":"strong","name":"Strong","comment":"256-bit encryption (slower)","cfg":{"ep":["UDP:1194","UDP:8080","UDP:9201","UDP:53","UDP:1198","UDP:1197","TCP:443","TCP:110","TCP:80","TCP:502","TCP:501"],"cipher":"AES-256-GCM","auth":"SHA256","ca":"-----BEGIN CERTIFICATE-----\nMIIHqzCCBZOgAwIBAgIJAJ0u+vODZJntMA0GCSqGSIb3DQEBDQUAMIHoMQswCQYD\nVQQGEwJVUzELMAkGA1UECBMCQ0ExEzARBgNVBAcTCkxvc0FuZ2VsZXMxIDAeBgNV\nBAoTF1ByaXZhdGUgSW50ZXJuZXQgQWNjZXNzMSAwHgYDVQQLExdQcml2YXRlIElu\ndGVybmV0IEFjY2VzczEgMB4GA1UEAxMXUHJpdmF0ZSBJbnRlcm5ldCBBY2Nlc3Mx\nIDAeBgNVBCkTF1ByaXZhdGUgSW50ZXJuZXQgQWNjZXNzMS8wLQYJKoZIhvcNAQkB\nFiBzZWN1cmVAcHJpdmF0ZWludGVybmV0YWNjZXNzLmNvbTAeFw0xNDA0MTcxNzQw\nMzNaFw0zNDA0MTIxNzQwMzNaMIHoMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0Ex\nEzARBgNVBAcTCkxvc0FuZ2VsZXMxIDAeBgNVBAoTF1ByaXZhdGUgSW50ZXJuZXQg\nQWNjZXNzMSAwHgYDVQQLExdQcml2YXRlIEludGVybmV0IEFjY2VzczEgMB4GA1UE\nAxMXUHJpdmF0ZSBJbnRlcm5ldCBBY2Nlc3MxIDAeBgNVBCkTF1ByaXZhdGUgSW50\nZXJuZXQgQWNjZXNzMS8wLQYJKoZIhvcNAQkBFiBzZWN1cmVAcHJpdmF0ZWludGVy\nbmV0YWNjZXNzLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALVk\nhjumaqBbL8aSgj6xbX1QPTfTd1qHsAZd2B97m8Vw31c/2yQgZNf5qZY0+jOIHULN\nDe4R9TIvyBEbvnAg/OkPw8n/+ScgYOeH876VUXzjLDBnDb8DLr/+w9oVsuDeFJ9K\nV2UFM1OYX0SnkHnrYAN2QLF98ESK4NCSU01h5zkcgmQ+qKSfA9Ny0/UpsKPBFqsQ\n25NvjDWFhCpeqCHKUJ4Be27CDbSl7lAkBuHMPHJs8f8xPgAbHRXZOxVCpayZ2SND\nfCwsnGWpWFoMGvdMbygngCn6jA/W1VSFOlRlfLuuGe7QFfDwA0jaLCxuWt/BgZyl\np7tAzYKR8lnWmtUCPm4+BtjyVDYtDCiGBD9Z4P13RFWvJHw5aapx/5W/CuvVyI7p\nKwvc2IT+KPxCUhH1XI8ca5RN3C9NoPJJf6qpg4g0rJH3aaWkoMRrYvQ+5PXXYUzj\ntRHImghRGd/ydERYoAZXuGSbPkm9Y/p2X8unLcW+F0xpJD98+ZI+tzSsI99Zs5wi\njSUGYr9/j18KHFTMQ8n+1jauc5bCCegN27dPeKXNSZ5riXFL2XX6BkY68y58UaNz\nmeGMiUL9BOV1iV+PMb7B7PYs7oFLjAhh0EdyvfHkrh/ZV9BEhtFa7yXp8XR0J6vz\n1YV9R6DYJmLjOEbhU8N0gc3tZm4Qz39lIIG6w3FDAgMBAAGjggFUMIIBUDAdBgNV\nHQ4EFgQUrsRtyWJftjpdRM0+925Y6Cl08SUwggEfBgNVHSMEggEWMIIBEoAUrsRt\nyWJftjpdRM0+925Y6Cl08SWhge6kgeswgegxCzAJBgNVBAYTAlVTMQswCQYDVQQI\nEwJDQTETMBEGA1UEBxMKTG9zQW5nZWxlczEgMB4GA1UEChMXUHJpdmF0ZSBJbnRl\ncm5ldCBBY2Nlc3MxIDAeBgNVBAsTF1ByaXZhdGUgSW50ZXJuZXQgQWNjZXNzMSAw\nHgYDVQQDExdQcml2YXRlIEludGVybmV0IEFjY2VzczEgMB4GA1UEKRMXUHJpdmF0\nZSBJbnRlcm5ldCBBY2Nlc3MxLzAtBgkqhkiG9w0BCQEWIHNlY3VyZUBwcml2YXRl\naW50ZXJuZXRhY2Nlc3MuY29tggkAnS7684Nkme0wDAYDVR0TBAUwAwEB/zANBgkq\nhkiG9w0BAQ0FAAOCAgEAJsfhsPk3r8kLXLxY+v+vHzbr4ufNtqnL9/1Uuf8NrsCt\npXAoyZ0YqfbkWx3NHTZ7OE9ZRhdMP/RqHQE1p4N4Sa1nZKhTKasV6KhHDqSCt/dv\nEm89xWm2MVA7nyzQxVlHa9AkcBaemcXEiyT19XdpiXOP4Vhs+J1R5m8zQOxZlV1G\ntF9vsXmJqWZpOVPmZ8f35BCsYPvv4yMewnrtAC8PFEK/bOPeYcKN50bol22QYaZu\nLfpkHfNiFTnfMh8sl/ablPyNY7DUNiP5DRcMdIwmfGQxR5WEQoHL3yPJ42LkB5zs\n6jIm26DGNXfwura/mi105+ENH1CaROtRYwkiHb08U6qLXXJz80mWJkT90nr8Asj3\n5xN2cUppg74nG3YVav/38P48T56hG1NHbYF5uOCske19F6wi9maUoto/3vEr0rnX\nJUp2KODmKdvBI7co245lHBABWikk8VfejQSlCtDBXn644ZMtAdoxKNfR2WTFVEwJ\niyd1Fzx0yujuiXDROLhISLQDRjVVAvawrAtLZWYK31bY7KlezPlQnl/D9Asxe85l\n8jO5+0LdJ6VyOs/Hd4w52alDW/MFySDZSfQHMTIc30hLBJ8OnCEIvluVQQ2UQvoW\n+no177N9L2Y+M9TcTA62ZyMXShHQGeh20rb4kK8f+iFX8NxtdHVSkxMEFSfDDyQ=\n-----END CERTIFICATE-----\n","frame":1,"ping":10,"reneg":3600,"pia":true}}],"defaults":{"username":"p1234567","pool":"us-east","preset":"recommended"},"build":1435,"name":"PIA"} diff --git a/Passepartout/Resources/Web/net/tunnelbear.json b/Passepartout/Resources/Web/net/tunnelbear.json index 7956f33f..4ab764a0 100644 --- a/Passepartout/Resources/Web/net/tunnelbear.json +++ b/Passepartout/Resources/Web/net/tunnelbear.json @@ -1 +1 @@ -{"pools":[{"id":"au","name":"Australia","country":"AU","hostname":"au.lazerpenguin.com","addrs":[759984655,760081843,2419074100,1729706861,1815991505,759986119,2419074098,771247475,1729706860,2501684924,2419074099,771247476,759110314,1729706859,1815961795,1730890649]},{"id":"br","name":"Brazil","country":"BR","hostname":"br.lazerpenguin.com","addrs":[2839139808,2973144555,2839139834,2839139830,2839139717,2839127404,2839139687,2839139649,3210757771,2839134177,2839134182,2839139659,2839133981,2839139642,2839139670,2973144547,2839134176,2973144602,2839139699,3210757987]},{"id":"ca","name":"Canada","country":"CA","hostname":"ca.lazerpenguin.com","addrs":[2673439655,2328203987,2808329477,2388500224,2388500230,2994793577,2994790702,2328204885,2673439873,2328210300,2673442608,2673439397,2994793595,2673442276,2808330638,2783129161,2808332037,2808330563,2388500265,2808328262]},{"id":"dk","name":"Denmark","country":"DK","hostname":"dk.lazerpenguin.com","addrs":[3119862988,3119863006,628658482,3119862992,628658475,628658468,628658476,3119863004,3119863002,3119863000,3119862980,628658435,628658438,628658436,3119862986,3119862990,3119862996,628658437,628658474,3119862978]},{"id":"fr","name":"France","country":"FR","hostname":"fr.lazerpenguin.com","addrs":[3562256446,1053975518,3281713943,1053975465,3281711823,3562256590,1053982180,3485270067,3281666044,3281710428,3281713840,3281695670,3281713707,1053975442,3281710486,3281711425,1053975447,1053975500,1053975511,1053975424]},{"id":"de","name":"Germany","country":"DE","hostname":"de.lazerpenguin.com","addrs":[2649125953,1210316649,2388501835,1210316615,1210316647,2649127935,2649102835,2649120972,1210316633,1210316643,2649104239,2649127699,2649125269,1210316614,2649127608,1210316616,1210316632,1210316648,1210316637,2649128187]},{"id":"hk","name":"Hong Kong","country":"HK","hostname":"hk.lazerpenguin.com","addrs":[1168229244,453044255,3485272822,1732998542,453044414,453044446,3510287873,453044406,1168229243,3485272818,453044289,453044429,3510287477,1168229245,1168229246]},{"id":"in","name":"India","country":"IN","hostname":"in.lazerpenguin.com","addrs":[1152867647,2388515296,2335921910,3468526372,1152864664,1152865889,2388515448]},{"id":"ie","name":"Ireland","country":"IE","hostname":"ie.lazerpenguin.com","addrs":[3110895896,3110895637,3648225069,3110895641,3110895636,3110895638,3110895642,3110895643,3110895897,3648221409,3110895939,3648221406,3648221405,3110895640,3110895639]},{"id":"it","name":"Italy","country":"IT","hostname":"it.lazerpenguin.com","addrs":[2961068950,2961068908,3230760716,2961068906,2961068921,2961068905,2961068989,3230760714,2961068907,3230760723,3230760724,3230760707,3230760730,3230760731,3230760726,3230760708,3230760709,3230760710,1382423115,1382423126]},{"id":"jp","name":"Japan","country":"JP","hostname":"jp.lazerpenguin.com","addrs":[1116032005,1732998669,1732998767,1116032004,1732998668,1732998815,1732998832,1732998871,1732998713,1116032003,1732998785,1116032008,1116032006,1116032007,1732998779,1116032009]},{"id":"mx","name":"Mexico","country":"MX","hostname":"mx.lazerpenguin.com","addrs":[2839085301,2839094095,2839108265,2839108286,2839108332,2839108298,2839108299,2839108283,2839108297,2839094108,2839108311,2839108290,2839094103,2839108313,2839108302,2839108309,2839108293,2839108267,2839108315,2839108232]},{"id":"nl","name":"Netherlands","country":"NL","hostname":"nl.lazerpenguin.com","addrs":[2928282822,629868346,3335747800,2671889629,3165005089,3104749579,3165018685,3165027271,3335747945,3165018434,3165018841,3165024822,3226590711,2671889632,2928282879,3335749480,3335747922,629871303,2671889627,629868371]},{"id":"nz","name":"New Zealand","country":"NZ","hostname":"nz.lazerpenguin.com","addrs":[1732999036,1732999029,1732999022,1732999012,1732999028,1732999038,1732999043,1732999027,1732998922,3029723109,3029723108,3029723107]},{"id":"no","name":"Norway","country":"NO","hostname":"no.lazerpenguin.com","addrs":[628659539,3120390610,3120390613,3120390608,1382423394,1382423396,3120390611,3120390612,3120390607,3120390614,3120390615,628659467,1382423397,628659538,3120390605,628659540,3120390606,628659470,3120390609,1382423395]},{"id":"ro","name":"Romania","country":"RO","hostname":"ro.lazerpenguin.com","addrs":[3116569433,1449728346,1588630756,2812311416,2812311370,2812311413,2812311414,1588630758,2812311417,2812311378,2812311362,3116569431,2812311411,2812311446,1449728347,1449728348,1588630755,2812311443,1588630757,3116569430]},{"id":"sg","name":"Singapore","country":"SG","hostname":"sg.lazerpenguin.com","addrs":[2338552209,2338552210,3468531338,2338552212,2338552449,2994763455,2338552211,2994755268,2994748755,1152901687]},{"id":"es","name":"Spain","country":"ES","hostname":"es.lazerpenguin.com","addrs":[3118890054,3118890191,3118890185,3272356605,3118890053,3118890169,3118890187,3118890168,3118890052,3118890051,3118890195,3261294597,628659267,3118890059,3261294596,3118890167,3272356603,3118890170,3285085147,3118890171]},{"id":"se","name":"Sweden","country":"SE","hostname":"se.lazerpenguin.com","addrs":[3258710556,520994603,3119939587,520994604,1603257255,3258710651,1603257292,3119940104,3119940102,3258710555,3118006382,3119939588,3119939589,520994605,520994606,628660684,1603257252,3119940100,3119940101,1603257294]},{"id":"ch","name":"Switzerland","country":"CH","hostname":"ch.lazerpenguin.com","addrs":[1382422740,1382422755,1382422739,1535412254,3287471492,1382422742,1382422744,1382422745,3287471495,1382422757,1382422758,1382422759,1382422760,1535412253,1535412260,1535412251,1535412330,3287471497,1535412261,1535412331]},{"id":"uk","name":"United Kingdom","country":"UK","hostname":"uk.lazerpenguin.com","addrs":[1836796608,1836796590,1836796610,1489679608,1836796595,1836796597,1836796576,1836796488,1836796611,1836796593,1836796588,1836796510,1836796513,1836796495,1836796498,1836796503,1836796490,1836796491,1836796514,1836796615]},{"id":"us","name":"United States","country":"US","hostname":"us.lazerpenguin.com","addrs":[2928293995,2673446249,2671855843,1806364467,2733834625,2673449169,3237062175,3237074031,3237071646,3237083200,2671855664,2673450249,3237071566,1806366969,2673431246,3237075262,2733836631,3334957889,758592301,1137541797]}],"presets":[{"id":"default","name":"Default","comment":"256-bit encryption","cfg":{"ep":["UDP:443","UDP:7011","TCP:443"],"cipher":"AES-256-CBC","auth":"SHA256","ca":"-----BEGIN CERTIFICATE-----\n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\n-----END CERTIFICATE-----\n","client":"-----BEGIN CERTIFICATE-----\n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\n-----END CERTIFICATE-----\n","key":"-----BEGIN PRIVATE KEY-----\n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\n1LXZrtjAB4U+/F7um6YyAavpHYq9hg==\n-----END PRIVATE KEY-----\n","frame":1,"ping":10}}],"defaults":{"username":"user@mail.com","pool":"us","preset":"default"},"build":1281,"name":"TunnelBear"} \ No newline at end of file +{"pools":[{"id":"au","name":"Australia","country":"AU","hostname":"au.lazerpenguin.com","addrs":[759110314,759986119,760081843,2419074100,2419074099,1815961795,1815991505,1729706860,1729706861,759984655,1730890649,1729706859,2419074098,771247475,771247476,2501684924]},{"id":"br","name":"Brazil","country":"BR","hostname":"br.lazerpenguin.com","addrs":[2839139834,3171002935,2973144749,2839139744,3210757987,2839139659,2839139717,2973144547,2839139670,2839127404,2839127365,3210757735,2839139699,2973144602,2839134182,2839139830,2839134177,2839134176,2839139649,2839139646]},{"id":"ca","name":"Canada","country":"CA","hostname":"ca.lazerpenguin.com","addrs":[2808328695,2994793577,2388499263,2808331068,2808328907,2673439655,2783127367,2808329477,2808329559,2328202404,2673442608,2808330563,2680892379,2673439676,2328201512,1152896000,2808329739,2808330638,2783127136,2673439397]},{"id":"dk","name":"Denmark","country":"DK","hostname":"dk.lazerpenguin.com","addrs":[628658469,628658436,628658474,628658467,628658437,628658438,628658435,3119862994,3119862990,3119862992,3119863004,3119862984,3119862986,3119862982,3119862996,628658475,3119862988,3119863006,3119862978,3119862998]},{"id":"fr","name":"France","country":"FR","hostname":"fr.lazerpenguin.com","addrs":[3281666044,3281713707,3281714011,1053975465,3485270072,1053975500,3281708745,1053982180,3281706616,3485270070,1053975459,3281692908,1053975483,3281695670,1053975518,3281711823,1053975434,1053975425,3485270073,3281711425]},{"id":"de","name":"Germany","country":"DE","hostname":"de.lazerpenguin.com","addrs":[2261902108,2261902106,1210316615,2261903781,1210316613,2261902812,1210316645,2649126153,1210316646,1210316648,1210316632,1210316616,1210316612,1210316614,2649126273,1210316634,2261903782,1210316636,1210316635,1210316649]},{"id":"hk","name":"Hong Kong","country":"HK","hostname":"hk.lazerpenguin.com","addrs":[1168229243,1168229244,1168229245,1168229246,453044255,453044446,3485272822,3510287477,3485272818,3510287873,453044414,453044429,453044406,1732998542,453044289]},{"id":"in","name":"India","country":"IN","hostname":"in.lazerpenguin.com","addrs":[1743034854,2388515296,1743034855,1743034852,1152865889,1743034853,3468526372,1152867647,2335921910,1743034857,2388515448,1743034856,1152864664]},{"id":"ie","name":"Ireland","country":"IE","hostname":"ie.lazerpenguin.com","addrs":[3648221405,3110895640,3110895643,3110895638,3110895639,3110895636,3110895641,3110895642,3110895637,3110895896,3110895897,3110895939,3648225069,3648221406,3648221409]},{"id":"it","name":"Italy","country":"IT","hostname":"it.lazerpenguin.com","addrs":[3230760707,3230760708,3230760709,2961068921,1382423126,3230760710,2961068907,3118024486,3230760725,3230760724,2961068908,3230760723,1603084448,2961068906,3230760726,3230760714,3230760731,2961068905,2961068989,3118024484]},{"id":"jp","name":"Japan","country":"JP","hostname":"jp.lazerpenguin.com","addrs":[1732998668,1732998713,1732998767,1116032003,1116032009,1116032004,1732998815,1732998785,1732998871,1116032005,1116032008,1116032007,1732998669,1732998779,1116032006,1732998832]},{"id":"mx","name":"Mexico","country":"MX","hostname":"mx.lazerpenguin.com","addrs":[2839108302,2839085301,2839094103,2839108297,2839094095,2839108309,2839108235,2839108315,2839108254,2839108299,2839108290,2839108311,2839108286,2839108265,2839108313,2839085257,2839094108,2839108267,2839108298,2839094090]},{"id":"nl","name":"Netherlands","country":"NL","hostname":"nl.lazerpenguin.com","addrs":[2928280628,2671889422,2928280086,2808295385,2671887610,3165016819,2928282879,2461635711,3165025908,2671889738,2461633841,2160537557,2928282815,3165000052,3165001711,3165013360,2160538389,629870047,629873656,629874171]},{"id":"nz","name":"New Zealand","country":"NZ","hostname":"nz.lazerpenguin.com","addrs":[1732999043,1732999028,1732998922,1732999038,1732999022,1732999029,3029723109,3029723108,1732999036,1732999027,1732999012,3029723107]},{"id":"no","name":"Norway","country":"NO","hostname":"no.lazerpenguin.com","addrs":[628659540,1382423396,3120390612,1382423394,3120390608,1382423395,3120390609,3120390611,1382423397,628659468,3120390617,3120390605,3120390607,3120390613,628659470,3120390610,628659467,3120390606,3120390615,628659539]},{"id":"ro","name":"Romania","country":"RO","hostname":"ro.lazerpenguin.com","addrs":[2812311412,3116569432,2812311415,3116569431,2812311370,2812311416,1449728348,2812311446,1588630756,1588630757,3116569433,1588630755,2812311413,2812311449,2812311362,2812311414,2812311447,2812311448,2812311444,3116569430]},{"id":"sg","name":"Singapore","country":"SG","hostname":"sg.lazerpenguin.com","addrs":[3512838309,3468516067,2160543129,2338552210,2338552211,2338552449,2338552212,2338552209]},{"id":"es","name":"Spain","country":"ES","hostname":"es.lazerpenguin.com","addrs":[3118890185,3118890195,3261294596,3285085148,3118890187,3118890051,3118890193,3118890170,3118890189,3118890058,3118890059,628659267,3261294597,3272356605,3285085139,3285085146,3118890169,3118890168,628659282,3118890171]},{"id":"se","name":"Sweden","country":"SE","hostname":"se.lazerpenguin.com","addrs":[3119940102,520994603,520994600,3119939586,3258710556,520994604,1603257294,628660684,628660686,3119939589,1603257250,520994606,1603257295,3258710652,3118006371,3258710651,1603257248,3258710548,520994602,3118006378]},{"id":"ch","name":"Switzerland","country":"CH","hostname":"ch.lazerpenguin.com","addrs":[1535412323,1382422755,3287471491,1535412331,1382422761,1535412330,1535412251,3287471493,3287471497,1382422743,1535412262,1382422744,1535412322,3287471492,3287471494,1535412332,1382422756,3287471495,1535412260,1382422757]},{"id":"uk","name":"United Kingdom","country":"UK","hostname":"uk.lazerpenguin.com","addrs":[1836796617,1836796621,1836796597,1836796595,1836796504,1836796512,1836796515,1836796590,1836796491,1836796607,1836796500,1836796616,1836796503,1836796599,1836796502,1836796585,1836796576,1836796602,1489679607,1836796598]},{"id":"us","name":"United States","country":"US","hostname":"us.lazerpenguin.com","addrs":[2783144356,2319720395,3237075743,2733842922,1137547747,1806362674,2680930232,2319774666,2673450249,3237062937,3334957697,2671879591,2673444460,2671855819,2673446057,2733839728,2319727613,2673446249,1806361431,2733843104]}],"presets":[{"id":"default","name":"Default","comment":"256-bit encryption","cfg":{"ep":["UDP:443","UDP:7011","TCP:443"],"cipher":"AES-256-CBC","auth":"SHA256","ca":"-----BEGIN CERTIFICATE-----\n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\n-----END CERTIFICATE-----\n","client":"-----BEGIN CERTIFICATE-----\n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\n-----END CERTIFICATE-----\n","key":"-----BEGIN PRIVATE KEY-----\n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\n1LXZrtjAB4U+/F7um6YyAavpHYq9hg==\n-----END PRIVATE KEY-----\n","frame":1,"ping":10}}],"defaults":{"username":"user@mail.com","pool":"us","preset":"default"},"build":1435,"name":"TunnelBear"}