diff --git a/Mac/AntiChinaCerts.sh b/Mac/AntiChinaCerts.sh
new file mode 100755
index 0000000000000000000000000000000000000000..a9ddb0173d99d57cc50de8755653ac34dca40cf9
--- /dev/null
+++ b/Mac/AntiChinaCerts.sh
@@ -0,0 +1,2 @@
+#!/usr/bin/env bash
+security trust-settings-import -d trust-settings.plist
diff --git a/Mac/trust-settings.plist b/Mac/trust-settings.plist
new file mode 100644
index 0000000000000000000000000000000000000000..f58fa863fd60af4928228a7967d8e52787c7a9e1
--- /dev/null
+++ b/Mac/trust-settings.plist
@@ -0,0 +1,585 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>trustList</key>
+	<dict>
+		<key>0B972C9EA6E7CC58D93B20BF71EC412E7209FABF</key>
+		<dict>
+			<key>issuerName</key>
+			<data>
+			MDoxCzAJBgNVBAYTAkNOMREwDwYDVQQKEwhVbmlUcnVzdDEYMBYG
+			A1UEAxMPVUNBIEdsb2JhbCBSb290
+			</data>
+			<key>modDate</key>
+			<date>2014-03-30T08:34:18Z</date>
+			<key>serialNumber</key>
+			<data>
+			CA==
+			</data>
+			<key>trustSettings</key>
+			<array>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAED
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147408896</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAED
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEI
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147408872</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEI
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEJ
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEL
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEM
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEO
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEP
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEQ
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEU
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEC
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+			</array>
+		</dict>
+		<key>4F99AA93FB2BD13726A1994ACE7FF005F2935D1E</key>
+		<dict>
+			<key>issuerName</key>
+			<data>
+			MIGKMQswCQYDVQQGEwJDTjEyMDAGA1UECgwpQ2hpbmEgSW50ZXJu
+			ZXQgTmV0d29yayBJbmZvcm1hdGlvbiBDZW50ZXIxRzBFBgNVBAMM
+			PkNoaW5hIEludGVybmV0IE5ldHdvcmsgSW5mb3JtYXRpb24gQ2Vu
+			dGVyIEVWIENlcnRpZmljYXRlcyBSb290
+			</data>
+			<key>modDate</key>
+			<date>2014-03-30T08:24:04Z</date>
+			<key>serialNumber</key>
+			<data>
+			SJ8AAQ==
+			</data>
+			<key>trustSettings</key>
+			<array>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAED
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147408896</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAED
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEI
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147408872</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEI
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEJ
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEL
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEM
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEO
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEP
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEQ
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEU
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEC
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+			</array>
+		</dict>
+		<key>8250BED5A214433A66377CBC10EF83F669DA3A67</key>
+		<dict>
+			<key>issuerName</key>
+			<data>
+			MDMxCzAJBgNVBAYTAkNOMREwDwYDVQQKEwhVbmlUcnVzdDERMA8G
+			A1UEAxMIVUNBIFJvb3Q=
+			</data>
+			<key>modDate</key>
+			<date>2014-03-30T08:34:39Z</date>
+			<key>serialNumber</key>
+			<data>
+			CQ==
+			</data>
+			<key>trustSettings</key>
+			<array>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAED
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147408896</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAED
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEI
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147408872</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEI
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEJ
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEL
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEM
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEO
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEP
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEQ
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEU
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEC
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+			</array>
+		</dict>
+		<key>8BAF4C9B1DF02A92F7DA128EB91BACF498604B6F</key>
+		<dict>
+			<key>issuerName</key>
+			<data>
+			MDIxCzAJBgNVBAYTAkNOMQ4wDAYDVQQKEwVDTk5JQzETMBEGA1UE
+			AxMKQ05OSUMgUk9PVA==
+			</data>
+			<key>modDate</key>
+			<date>2014-09-29T08:25:38Z</date>
+			<key>serialNumber</key>
+			<data>
+			STMAAQ==
+			</data>
+			<key>trustSettings</key>
+			<array>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAED
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147408896</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAED
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEI
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147408872</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEI
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEJ
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEL
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEM
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEO
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEP
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEQ
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEU
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsPolicy</key>
+					<data>
+					KoZIhvdjZAEC
+					</data>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+				<dict>
+					<key>kSecTrustSettingsAllowedError</key>
+					<integer>-2147409654</integer>
+					<key>kSecTrustSettingsResult</key>
+					<integer>3</integer>
+				</dict>
+			</array>
+		</dict>
+	</dict>
+	<key>trustVersion</key>
+	<integer>1</integer>
+</dict>
+</plist>